@btsd/aitu-bridge 0.2.16 → 0.2.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +5 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +1 -1
- package/dist/index.modern.js.map +1 -1
- package/dist/index.module.js +1 -1
- package/dist/index.module.js.map +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/index.umd.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/package.json +1 -1
- package/src/index.ts +72 -4
- package/src/version.ts +1 -1
package/src/index.ts
CHANGED
|
@@ -18,6 +18,7 @@ type GetItemType = (keyName: string) => Promise<string | null>;
|
|
|
18
18
|
type ClearType = () => Promise<void>;
|
|
19
19
|
|
|
20
20
|
type HeaderMenuItemClickHandlerType = (id: string) => Promise<void>;
|
|
21
|
+
type BackArrowClickHandlerType = () => Promise<void>;
|
|
21
22
|
|
|
22
23
|
interface GetPhoneResponse {
|
|
23
24
|
phone: string;
|
|
@@ -134,6 +135,10 @@ interface AituBridge {
|
|
|
134
135
|
disableScreenCapture: () => Promise<{}>;
|
|
135
136
|
setHeaderMenuItems: (items: Array<HeaderMenuItem>) => Promise<ResponseType>;
|
|
136
137
|
setHeaderMenuItemClickHandler: (handler: HeaderMenuItemClickHandlerType) => void;
|
|
138
|
+
setCustomBackArrowMode: (enabled: boolean) => Promise<ResponseType>;
|
|
139
|
+
getCustomBackArrowMode: () => Promise<boolean>;
|
|
140
|
+
setCustomBackArrowVisible: (visible: boolean) => Promise<ResponseType>;
|
|
141
|
+
setCustomBackArrowOnClickHandler: (handler: BackArrowClickHandlerType) => void;
|
|
137
142
|
}
|
|
138
143
|
|
|
139
144
|
const invokeMethod = 'invoke';
|
|
@@ -156,6 +161,10 @@ const disableScreenCaptureMethod = 'disableScreenCapture';
|
|
|
156
161
|
const setTabActiveHandlerMethod = 'setTabActiveHandler';
|
|
157
162
|
const setHeaderMenuItemsMethod = 'setHeaderMenuItems';
|
|
158
163
|
const setHeaderMenuItemClickHandlerMethod = 'setHeaderMenuItemClickHandler';
|
|
164
|
+
const setCustomBackArrowModeMethod = 'setCustomBackArrowMode';
|
|
165
|
+
const getCustomBackArrowModeMethod = 'getCustomBackArrowMode';
|
|
166
|
+
const setCustomBackArrowVisibleMethod = 'setCustomBackArrowVisible';
|
|
167
|
+
const setCustomBackArrowOnClickHandlerMethod = 'setCustomBackArrowOnClickHandler';
|
|
159
168
|
|
|
160
169
|
const android = typeof window !== 'undefined' && (window as any).AndroidBridge;
|
|
161
170
|
const ios = typeof window !== 'undefined' && (window as any).webkit && (window as any).webkit.messageHandlers;
|
|
@@ -477,7 +486,7 @@ const buildBridge = (): AituBridge => {
|
|
|
477
486
|
subs.push(listener);
|
|
478
487
|
}
|
|
479
488
|
|
|
480
|
-
const setHeaderMenuItems = (items: Array<HeaderMenuItem>) => {
|
|
489
|
+
const setHeaderMenuItems = (reqId, items: Array<HeaderMenuItem>) => {
|
|
481
490
|
if (items.length > MAX_HEADER_MENU_ITEMS_COUNT) {
|
|
482
491
|
console.error('SetHeaderMenuItems: items count should not be more than ' + MAX_HEADER_MENU_ITEMS_COUNT);
|
|
483
492
|
return;
|
|
@@ -486,10 +495,12 @@ const buildBridge = (): AituBridge => {
|
|
|
486
495
|
const isAndroid = android && android[setHeaderMenuItemsMethod];
|
|
487
496
|
const isIos = ios && ios[setHeaderMenuItemsMethod];
|
|
488
497
|
|
|
498
|
+
const itemsJsonArray = JSON.stringify(items);
|
|
499
|
+
|
|
489
500
|
if (isAndroid) {
|
|
490
|
-
android[setHeaderMenuItemsMethod](
|
|
501
|
+
android[setHeaderMenuItemsMethod](reqId, itemsJsonArray);
|
|
491
502
|
} else if (isIos) {
|
|
492
|
-
ios[setHeaderMenuItemsMethod].postMessage({
|
|
503
|
+
ios[setHeaderMenuItemsMethod].postMessage({ reqId, itemsJsonArray });
|
|
493
504
|
} else if (typeof window !== 'undefined') {
|
|
494
505
|
console.log('--setHeaderMenuItems-isWeb');
|
|
495
506
|
}
|
|
@@ -506,6 +517,56 @@ const buildBridge = (): AituBridge => {
|
|
|
506
517
|
}
|
|
507
518
|
}
|
|
508
519
|
|
|
520
|
+
const setCustomBackArrowMode = (reqId, enabled: boolean) => {
|
|
521
|
+
const isAndroid = android && android[setCustomBackArrowModeMethod];
|
|
522
|
+
const isIos = ios && ios[setCustomBackArrowModeMethod];
|
|
523
|
+
|
|
524
|
+
if (isAndroid) {
|
|
525
|
+
android[setCustomBackArrowModeMethod](reqId, enabled);
|
|
526
|
+
} else if (isIos) {
|
|
527
|
+
ios[setCustomBackArrowModeMethod].postMessage({ reqId, enabled });
|
|
528
|
+
} else if (typeof window !== 'undefined') {
|
|
529
|
+
console.log('--setCustomBackArrowMode-isWeb');
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
const getCustomBackArrowMode = (reqId) => {
|
|
534
|
+
const isAndroid = android && android[getCustomBackArrowModeMethod];
|
|
535
|
+
const isIos = ios && ios[getCustomBackArrowModeMethod];
|
|
536
|
+
|
|
537
|
+
if (isAndroid) {
|
|
538
|
+
android[getCustomBackArrowModeMethod](reqId);
|
|
539
|
+
} else if (isIos) {
|
|
540
|
+
ios[getCustomBackArrowModeMethod].postMessage({ reqId });
|
|
541
|
+
} else if (typeof window !== 'undefined') {
|
|
542
|
+
console.log('--getCustomBackArrowMode-isWeb');
|
|
543
|
+
}
|
|
544
|
+
}
|
|
545
|
+
|
|
546
|
+
const setCustomBackArrowVisible = (reqId, visible: boolean) => {
|
|
547
|
+
const isAndroid = android && android[setCustomBackArrowVisibleMethod];
|
|
548
|
+
const isIos = ios && ios[setCustomBackArrowVisibleMethod];
|
|
549
|
+
|
|
550
|
+
if (isAndroid) {
|
|
551
|
+
android[setCustomBackArrowVisibleMethod](reqId, visible);
|
|
552
|
+
} else if (isIos) {
|
|
553
|
+
ios[setCustomBackArrowVisibleMethod].postMessage({ reqId, visible });
|
|
554
|
+
} else if (typeof window !== 'undefined') {
|
|
555
|
+
console.log('--setCustomBackArrowVisible-isWeb');
|
|
556
|
+
}
|
|
557
|
+
}
|
|
558
|
+
|
|
559
|
+
const setCustomBackArrowOnClickHandler = (handler: BackArrowClickHandlerType) => {
|
|
560
|
+
const isAndroid = android && android[setCustomBackArrowOnClickHandlerMethod];
|
|
561
|
+
const isIos = ios && ios[setCustomBackArrowOnClickHandlerMethod];
|
|
562
|
+
|
|
563
|
+
if (isAndroid || isIos) {
|
|
564
|
+
(window as any).onAituBridgeBackArrowClick = handler;
|
|
565
|
+
} else if (typeof window !== 'undefined') {
|
|
566
|
+
console.log('--setCustomBackArrowOnClickHandler-isWeb');
|
|
567
|
+
}
|
|
568
|
+
}
|
|
569
|
+
|
|
509
570
|
const invokePromise = promisifyInvoke(invoke, sub);
|
|
510
571
|
const storagePromise = promisifyStorage(storage, sub);
|
|
511
572
|
const getGeoPromise = promisifyMethod(getGeo, sub);
|
|
@@ -523,6 +584,9 @@ const buildBridge = (): AituBridge => {
|
|
|
523
584
|
const enableScreenCapturePromise = promisifyMethod(enableScreenCapture, sub);
|
|
524
585
|
const disableScreenCapturePromise = promisifyMethod(disableScreenCapture, sub);
|
|
525
586
|
const setHeaderMenuItemsPromise = promisifyMethod(setHeaderMenuItems, sub);
|
|
587
|
+
const setCustomBackArrowModePromise = promisifyMethod(setCustomBackArrowMode, sub);
|
|
588
|
+
const getCustomBackArrowModePromise = promisifyMethod(getCustomBackArrowMode, sub);
|
|
589
|
+
const setCustomBackArrowVisiblePromise = promisifyMethod(setCustomBackArrowVisible, sub);
|
|
526
590
|
|
|
527
591
|
return {
|
|
528
592
|
version: String(LIB_VERSION),
|
|
@@ -554,7 +618,11 @@ const buildBridge = (): AituBridge => {
|
|
|
554
618
|
enableScreenCapture: enableScreenCapturePromise,
|
|
555
619
|
disableScreenCapture: disableScreenCapturePromise,
|
|
556
620
|
setHeaderMenuItems: setHeaderMenuItemsPromise,
|
|
557
|
-
setHeaderMenuItemClickHandler
|
|
621
|
+
setHeaderMenuItemClickHandler,
|
|
622
|
+
setCustomBackArrowMode: setCustomBackArrowModePromise,
|
|
623
|
+
getCustomBackArrowMode: getCustomBackArrowModePromise,
|
|
624
|
+
setCustomBackArrowVisible: setCustomBackArrowVisiblePromise,
|
|
625
|
+
setCustomBackArrowOnClickHandler,
|
|
558
626
|
}
|
|
559
627
|
}
|
|
560
628
|
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const LIB_VERSION = "0.2.
|
|
1
|
+
export const LIB_VERSION = "0.2.19";
|