Skip to content

Commit 16411ee

Browse files
authored
fix: update app bridge (#44)
1 parent 9dff610 commit 16411ee

File tree

1 file changed

+13
-11
lines changed

1 file changed

+13
-11
lines changed

src/shared/lib/postAppMessage.ts

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,33 @@
11
declare global {
22
interface Window {
3-
BRIDGE: {
4-
sendMessage: (message: string) => void;
3+
Android: {
4+
showToast: (message: string) => void;
55
};
66
webkit: {
77
messageHandlers: {
88
weski: {
9-
showToast: (message: string) => void;
9+
postMessage: ({ method, message }: { method: "showToast", message: string }) => void;
1010
};
1111
};
1212
};
1313
}
1414
}
1515

1616
const postAppMessage = (message: string) => {
17-
const userAgent = navigator.userAgent;
18-
const android = userAgent.match(/Android/i);
19-
const iphone = userAgent.match(/iPhone/i);
20-
17+
const userAgent = navigator.userAgent.toLowerCase();
18+
const android = userAgent.match(/android/i);
19+
const iphone = userAgent.match(/iphone/i);
20+
2121
if (android !== null) {
2222
console.log("Android");
23-
return window.BRIDGE.sendMessage(message);
24-
23+
return window.Android.showToast(message);
2524
} else if (iphone !== null) {
2625
console.log("iOS");
27-
return window.webkit.messageHandlers.weski.showToast(message);
28-
26+
if (window.webkit.messageHandlers.weski) {
27+
window.webkit.messageHandlers.weski.postMessage({ method: "showToast", message: message });
28+
} else {
29+
console.error("Weski bridge is not available.");
30+
}
2931
} else {
3032
return window.opener.postMessage(message);
3133
}

0 commit comments

Comments
 (0)