react-native-unit-components 1.0.1 → 1.0.3
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/README.md +75 -6
- package/android/src/main/AndroidManifest.xml +12 -1
- package/android/src/main/java/com/unitreactnativecomponents/UnitReactNativeComponentsPackage.kt +2 -1
- package/android/src/main/java/com/unitreactnativecomponents/sharepdf/UNSharePDF.kt +75 -0
- package/android/src/main/res/layout/un_black_add_to_googlepay_button.xml +2 -2
- package/android/src/main/res/layout/un_view_google_push_provisioning.xml +1 -13
- package/android/src/main/res/layout/un_white_add_to_googlepay_button.xml +1 -1
- package/android/src/main/res/layout/un_white_add_to_googlepay_button_no_shadow.xml +1 -1
- package/android/src/main/res/xml/file_paths.xml +4 -0
- package/ios/UnitReactNativeComponentsViewManager.m +0 -1
- package/ios/UnitReactNativeComponentsViewManager.swift +6 -2
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.js +103 -0
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.js.map +1 -0
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.utils.js +47 -0
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.utils.js.map +1 -0
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.js +63 -8
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.utils.js +18 -3
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.utils.js.map +1 -1
- package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.js +56 -13
- package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
- package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js +4 -3
- package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js.map +1 -1
- package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.js +3 -3
- package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.js.map +1 -1
- package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.js +114 -46
- package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.js.map +1 -1
- package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.js +4 -8
- package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.js.map +1 -1
- package/lib/commonjs/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.js +95 -0
- package/lib/commonjs/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.js.map +1 -0
- package/lib/commonjs/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.js +31 -0
- package/lib/commonjs/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.js.map +1 -0
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.js +65 -7
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.js.map +1 -1
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.utils.js +56 -10
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.utils.js.map +1 -1
- package/lib/commonjs/components/UNCardComponent/networking/common/UNNetworkConstants.js +20 -0
- package/lib/commonjs/components/UNCardComponent/networking/common/UNNetworkConstants.js.map +1 -0
- package/lib/commonjs/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.js +44 -0
- package/lib/commonjs/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.js.map +1 -0
- package/lib/commonjs/components/index.js +13 -0
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/helpers/BottomSheet/BottomSheet.js +32 -12
- package/lib/commonjs/helpers/BottomSheet/BottomSheet.js.map +1 -1
- package/lib/commonjs/helpers/BottomSheet/BottomSheet.styles.js +1 -1
- package/lib/commonjs/helpers/BottomSheet/BottomSheet.styles.js.map +1 -1
- package/lib/commonjs/helpers/EventBus.js.map +1 -1
- package/lib/commonjs/messages/nativeMessages/cardMessage.js +36 -0
- package/lib/commonjs/messages/nativeMessages/cardMessage.js.map +1 -0
- package/lib/commonjs/messages/nativeMessages/index.js +0 -7
- package/lib/commonjs/messages/nativeMessages/index.js.map +1 -1
- package/lib/commonjs/messages/nativeMessages/sdkMessage.js +14 -0
- package/lib/commonjs/messages/nativeMessages/sdkMessage.js.map +1 -0
- package/lib/commonjs/messages/webMessages/unitMessages.js +1 -0
- package/lib/commonjs/messages/webMessages/unitMessages.js.map +1 -1
- package/lib/commonjs/nativeComponent/{UNNativeAddToWalletButton.js → UnitAddToWalletButton.js} +1 -1
- package/lib/commonjs/nativeComponent/UnitAddToWalletButton.js.map +1 -0
- package/lib/commonjs/scripts/html/bodyHtml.js +1 -1
- package/lib/commonjs/scripts/html/bodyHtml.js.map +1 -1
- package/lib/commonjs/scripts/html/bodyScript.js +22 -5
- package/lib/commonjs/scripts/html/bodyScript.js.map +1 -1
- package/lib/commonjs/sharedTypes/bookPayment.types.js.map +1 -1
- package/lib/commonjs/sharedTypes/card.types.js.map +1 -1
- package/lib/commonjs/sharedTypes/index.js +13 -0
- package/lib/commonjs/sharedTypes/index.js.map +1 -1
- package/lib/commonjs/sharedTypes/onLoadResponse.types.js +6 -0
- package/lib/commonjs/sharedTypes/onLoadResponse.types.js.map +1 -0
- package/lib/commonjs/sharedTypes/wallet.types.js +22 -0
- package/lib/commonjs/sharedTypes/wallet.types.js.map +1 -0
- package/lib/commonjs/unitSdkManager/UnitSdk.api.js +5 -3
- package/lib/commonjs/unitSdkManager/UnitSdk.api.js.map +1 -1
- package/lib/commonjs/unitSdkManager/UnitSdkManager.js +18 -0
- package/lib/commonjs/unitSdkManager/UnitSdkManager.js.map +1 -1
- package/lib/commonjs/webComponent/WebComponent.js +35 -10
- package/lib/commonjs/webComponent/WebComponent.js.map +1 -1
- package/lib/commonjs/webComponent/WebComponent.utils.js +41 -0
- package/lib/commonjs/webComponent/WebComponent.utils.js.map +1 -0
- package/lib/commonjs/webComponent/html.js +9 -1
- package/lib/commonjs/webComponent/html.js.map +1 -1
- package/lib/module/components/UNAccountComponent/UNAccountComponent.js +74 -0
- package/lib/module/components/UNAccountComponent/UNAccountComponent.js.map +1 -0
- package/lib/module/components/UNAccountComponent/UNAccountComponent.utils.js +26 -0
- package/lib/module/components/UNAccountComponent/UNAccountComponent.utils.js.map +1 -0
- package/lib/module/components/UNActivityComponent/UNActivityComponent.js +56 -8
- package/lib/module/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
- package/lib/module/components/UNActivityComponent/UNActivityComponent.utils.js +10 -2
- package/lib/module/components/UNActivityComponent/UNActivityComponent.utils.js.map +1 -1
- package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.js +50 -12
- package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
- package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js +3 -2
- package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js.map +1 -1
- package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.js +1 -1
- package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.js.map +1 -1
- package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.js +111 -46
- package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.js.map +1 -1
- package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.js +5 -9
- package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.js.map +1 -1
- package/lib/module/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.js +68 -0
- package/lib/module/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.js.map +1 -0
- package/lib/module/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.js +21 -0
- package/lib/module/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.js.map +1 -0
- package/lib/module/components/UNCardComponent/UNCardComponent.js +65 -9
- package/lib/module/components/UNCardComponent/UNCardComponent.js.map +1 -1
- package/lib/module/components/UNCardComponent/UNCardComponent.utils.js +48 -9
- package/lib/module/components/UNCardComponent/UNCardComponent.utils.js.map +1 -1
- package/lib/module/components/UNCardComponent/networking/common/UNNetworkConstants.js +10 -0
- package/lib/module/components/UNCardComponent/networking/common/UNNetworkConstants.js.map +1 -0
- package/lib/module/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.js +29 -0
- package/lib/module/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.js.map +1 -0
- package/lib/module/components/index.js +1 -0
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/helpers/BottomSheet/BottomSheet.js +30 -13
- package/lib/module/helpers/BottomSheet/BottomSheet.js.map +1 -1
- package/lib/module/helpers/BottomSheet/BottomSheet.styles.js +2 -2
- package/lib/module/helpers/BottomSheet/BottomSheet.styles.js.map +1 -1
- package/lib/module/helpers/EventBus.js.map +1 -1
- package/lib/module/messages/nativeMessages/cardMessage.js +27 -0
- package/lib/module/messages/nativeMessages/cardMessage.js.map +1 -0
- package/lib/module/messages/nativeMessages/index.js +1 -5
- package/lib/module/messages/nativeMessages/index.js.map +1 -1
- package/lib/module/messages/nativeMessages/sdkMessage.js +7 -0
- package/lib/module/messages/nativeMessages/sdkMessage.js.map +1 -0
- package/lib/module/messages/webMessages/unitMessages.js +1 -0
- package/lib/module/messages/webMessages/unitMessages.js.map +1 -1
- package/lib/module/nativeComponent/{UNNativeAddToWalletButton.js → UnitAddToWalletButton.js} +1 -1
- package/lib/module/nativeComponent/UnitAddToWalletButton.js.map +1 -0
- package/lib/module/scripts/html/bodyHtml.js +1 -1
- package/lib/module/scripts/html/bodyHtml.js.map +1 -1
- package/lib/module/scripts/html/bodyScript.js +19 -3
- package/lib/module/scripts/html/bodyScript.js.map +1 -1
- package/lib/module/sharedTypes/bookPayment.types.js.map +1 -1
- package/lib/module/sharedTypes/card.types.js.map +1 -1
- package/lib/module/sharedTypes/index.js +1 -0
- package/lib/module/sharedTypes/index.js.map +1 -1
- package/lib/module/sharedTypes/onLoadResponse.types.js +2 -0
- package/lib/module/sharedTypes/onLoadResponse.types.js.map +1 -0
- package/lib/module/sharedTypes/wallet.types.js +14 -0
- package/lib/module/sharedTypes/wallet.types.js.map +1 -0
- package/lib/module/unitSdkManager/UnitSdk.api.js +4 -3
- package/lib/module/unitSdkManager/UnitSdk.api.js.map +1 -1
- package/lib/module/unitSdkManager/UnitSdkManager.js +13 -0
- package/lib/module/unitSdkManager/UnitSdkManager.js.map +1 -1
- package/lib/module/webComponent/WebComponent.js +32 -10
- package/lib/module/webComponent/WebComponent.js.map +1 -1
- package/lib/module/webComponent/WebComponent.utils.js +27 -0
- package/lib/module/webComponent/WebComponent.utils.js.map +1 -0
- package/lib/module/webComponent/html.js +9 -2
- package/lib/module/webComponent/html.js.map +1 -1
- package/lib/typescript/components/UNAccountComponent/UNAccountComponent.d.ts +12 -0
- package/lib/typescript/components/UNAccountComponent/UNAccountComponent.utils.d.ts +7 -0
- package/lib/typescript/components/UNActivityComponent/UNActivityComponent.d.ts +2 -0
- package/lib/typescript/components/UNActivityComponent/UNActivityComponent.utils.d.ts +4 -0
- package/lib/typescript/components/UNBookPaymentComponent/UNBookPaymentComponent.d.ts +2 -1
- package/lib/typescript/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.d.ts +1 -1
- package/lib/typescript/components/UNBottomSheetComponent/UNBottomSheetComponent.d.ts +9 -2
- package/lib/typescript/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.d.ts +2 -1
- package/lib/typescript/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.d.ts +6 -0
- package/lib/typescript/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.d.ts +17 -0
- package/lib/typescript/components/UNCardComponent/UNCardComponent.d.ts +4 -1
- package/lib/typescript/components/UNCardComponent/UNCardComponent.utils.d.ts +9 -1
- package/lib/typescript/components/UNCardComponent/networking/common/UNNetworkConstants.d.ts +8 -0
- package/lib/typescript/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.d.ts +1 -0
- package/lib/typescript/components/index.d.ts +1 -0
- package/lib/typescript/helpers/EventBus.d.ts +3 -3
- package/lib/typescript/messages/nativeMessages/cardMessage.d.ts +28 -0
- package/lib/typescript/messages/nativeMessages/index.d.ts +7 -2
- package/lib/typescript/messages/nativeMessages/sdkMessage.d.ts +8 -0
- package/lib/typescript/messages/webMessages/unitMessages.d.ts +16 -6
- package/lib/typescript/scripts/html/bodyScript.d.ts +4 -1
- package/lib/typescript/sharedTypes/bookPayment.types.d.ts +3 -3
- package/lib/typescript/sharedTypes/card.types.d.ts +6 -6
- package/lib/typescript/sharedTypes/index.d.ts +1 -0
- package/lib/typescript/sharedTypes/onLoadResponse.types.d.ts +18 -0
- package/lib/typescript/sharedTypes/wallet.types.d.ts +14 -0
- package/lib/typescript/unitSdkManager/UnitSdkManager.d.ts +3 -0
- package/lib/typescript/webComponent/WebComponent.d.ts +4 -1
- package/lib/typescript/webComponent/WebComponent.utils.d.ts +2 -0
- package/package.json +2 -1
- package/src/components/UNAccountComponent/UNAccountComponent.tsx +82 -0
- package/src/components/UNAccountComponent/UNAccountComponent.utils.ts +30 -0
- package/src/components/UNActivityComponent/UNActivityComponent.tsx +57 -8
- package/src/components/UNActivityComponent/UNActivityComponent.utils.ts +14 -2
- package/src/components/UNBookPaymentComponent/UNBookPaymentComponent.tsx +47 -13
- package/src/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.ts +3 -2
- package/src/components/UNBottomSheetComponent/UNBottomSheetComponent.constants.ts +1 -1
- package/src/components/UNBottomSheetComponent/UNBottomSheetComponent.tsx +120 -44
- package/src/components/UNBottomSheetComponent/UNBottomSheetComponent.utils.ts +7 -10
- package/src/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.styles.ts +21 -0
- package/src/components/UNBottomSheetComponent/components/UNAddToWalletBottomSheetItem.tsx +74 -0
- package/src/components/UNCardComponent/UNCardComponent.tsx +68 -13
- package/src/components/UNCardComponent/UNCardComponent.utils.ts +47 -9
- package/src/components/UNCardComponent/networking/common/UNNetworkConstants.ts +11 -0
- package/src/components/UNCardComponent/networking/requests/UNWalletPayloadRequest.ts +34 -0
- package/src/components/index.ts +1 -0
- package/src/helpers/BottomSheet/BottomSheet.styles.ts +2 -2
- package/src/helpers/BottomSheet/BottomSheet.tsx +28 -12
- package/src/helpers/EventBus.ts +3 -3
- package/src/messages/nativeMessages/cardMessage.ts +37 -0
- package/src/messages/nativeMessages/index.ts +14 -2
- package/src/messages/nativeMessages/sdkMessage.ts +11 -0
- package/src/messages/webMessages/unitMessages.ts +20 -7
- package/src/scripts/html/bodyHtml.ts +1 -1
- package/src/scripts/html/bodyScript.ts +21 -4
- package/src/sharedTypes/bookPayment.types.ts +3 -3
- package/src/sharedTypes/card.types.ts +6 -6
- package/src/sharedTypes/index.ts +1 -0
- package/src/sharedTypes/onLoadResponse.types.ts +27 -0
- package/src/sharedTypes/wallet.types.ts +17 -0
- package/src/unitSdkManager/UnitSdk.api.ts +3 -2
- package/src/unitSdkManager/UnitSdkManager.ts +12 -0
- package/src/webComponent/WebComponent.tsx +35 -12
- package/src/webComponent/WebComponent.utils.ts +26 -0
- package/src/webComponent/html.ts +9 -2
- package/lib/commonjs/nativeComponent/UNNativeAddToWalletButton.js.map +0 -1
- package/lib/module/nativeComponent/UNNativeAddToWalletButton.js.map +0 -1
- /package/lib/typescript/nativeComponent/{UNNativeAddToWalletButton.d.ts → UnitAddToWalletButton.d.ts} +0 -0
- /package/src/nativeComponent/{UNNativeAddToWalletButton.tsx → UnitAddToWalletButton.tsx} +0 -0
|
@@ -3,20 +3,24 @@ import React, { useEffect, useState } from 'react';
|
|
|
3
3
|
import { WebView, WebViewMessageEvent } from 'react-native-webview';
|
|
4
4
|
import EventBus from '../helpers/EventBus';
|
|
5
5
|
import html, { HTML_PLACEHOLDER } from './html';
|
|
6
|
-
import { RequestRefreshEvent, UnitMessage } from '../messages/webMessages/unitMessages';
|
|
6
|
+
import { RequestRefreshEvent, UnitMessage, RequestDownloadEvent } from '../messages/webMessages/unitMessages';
|
|
7
7
|
import { useListenerToBus } from '../hooks/listenerToBus';
|
|
8
8
|
import { getHtmlBody, PresentationMode } from '../scripts/html/bodyHtml';
|
|
9
9
|
import { fetchUnitScript, globalUnitScript } from '../unitSdkManager/UnitSdk.api';
|
|
10
|
-
import {
|
|
10
|
+
import { UnitSDK } from '../unitSdkManager/UnitSdkManager';
|
|
11
11
|
import type { WebViewMessage } from '../messages/webMessages';
|
|
12
|
+
import { SDKMessage, SdkScriptFetched } from '../messages/nativeMessages/sdkMessage';
|
|
13
|
+
import { handleRequestDownload } from './WebComponent.utils';
|
|
12
14
|
|
|
13
15
|
export interface WebComponentProps {
|
|
14
16
|
type: WebComponentType;
|
|
15
17
|
presentationMode?: PresentationMode,
|
|
16
18
|
params?: string;
|
|
19
|
+
theme?: string;
|
|
17
20
|
onMessage?: (message: WebViewMessage) => void;
|
|
18
21
|
script?: string;
|
|
19
22
|
isScrollable?: boolean,
|
|
23
|
+
nestedScrollEnabled?: boolean,
|
|
20
24
|
handleScroll?: (event: any) => void,
|
|
21
25
|
width?: number;
|
|
22
26
|
}
|
|
@@ -25,19 +29,28 @@ export enum WebComponentType {
|
|
|
25
29
|
card = 'unit-elements-card',
|
|
26
30
|
bookPayment = 'unit-elements-book-payment',
|
|
27
31
|
activity = 'unit-elements-activity',
|
|
28
|
-
slot = 'unit-elements-sdk-slot'
|
|
32
|
+
slot = 'unit-elements-sdk-slot',
|
|
33
|
+
account = 'unit-elements-account',
|
|
29
34
|
}
|
|
30
35
|
|
|
31
36
|
export const WebComponent = React.forwardRef<WebView, WebComponentProps>(function WebComponent(props, webRef) {
|
|
32
37
|
const [unitScript, setUnitScript] = useState<string | undefined>(globalUnitScript);
|
|
33
38
|
const [sourceHtml, setSourceHtml] = useState<string | null>(null);
|
|
39
|
+
const [componentCurrentTheme, setComponentCurrentTheme] = useState<string | undefined>(props.theme ?? UnitSDK.getTheme());
|
|
34
40
|
const width = props.width ?? '100%';
|
|
35
41
|
|
|
36
|
-
const
|
|
42
|
+
const updateUnitScript = (data: SdkScriptFetched) => {
|
|
37
43
|
setUnitScript(data.unitScript);
|
|
38
44
|
};
|
|
39
45
|
|
|
40
|
-
|
|
46
|
+
const updateInitializedParams = () => {
|
|
47
|
+
setComponentCurrentTheme(props.theme ?? UnitSDK.getTheme());
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
useListenerToBus([
|
|
51
|
+
{ busEventKey: SDKMessage.IS_SCRIPT_FETCHED, action: updateUnitScript },
|
|
52
|
+
{ busEventKey: SDKMessage.IS_SDK_INITIALIZED, action: updateInitializedParams },
|
|
53
|
+
]);
|
|
41
54
|
|
|
42
55
|
useEffect(() => {
|
|
43
56
|
if (!unitScript) {
|
|
@@ -45,18 +58,27 @@ export const WebComponent = React.forwardRef<WebView, WebComponentProps>(functio
|
|
|
45
58
|
return;
|
|
46
59
|
}
|
|
47
60
|
|
|
48
|
-
|
|
61
|
+
const componentParams = (props.params || '') + (componentCurrentTheme ? ` theme="${componentCurrentTheme}"` : '');
|
|
62
|
+
let newHtml = html.replace(HTML_PLACEHOLDER.BODY, getHtmlBody(props.type.valueOf(), componentParams, props.presentationMode));
|
|
49
63
|
newHtml = newHtml.replace(HTML_PLACEHOLDER.SCRIPT_FROM_NATIVE, props.script || '');
|
|
50
64
|
setSourceHtml(newHtml);
|
|
51
|
-
|
|
52
|
-
}, [props.params, unitScript]);
|
|
65
|
+
}, [props.params, unitScript, props.presentationMode, componentCurrentTheme]);
|
|
53
66
|
|
|
54
67
|
const onMessage = (e: WebViewMessageEvent) => {
|
|
55
68
|
const message = JSON.parse(e.nativeEvent.data) as WebViewMessage;
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
69
|
+
switch (message.type) {
|
|
70
|
+
case UnitMessage.UNIT_REQUEST_REFRESH:
|
|
71
|
+
message.details &&
|
|
72
|
+
EventBus.Instance.event(UnitMessage.UNIT_REQUEST_REFRESH, message.details as RequestRefreshEvent);
|
|
73
|
+
break;
|
|
74
|
+
case UnitMessage.UNIT_REQUEST_DOWNLOAD:
|
|
75
|
+
message.details &&
|
|
76
|
+
handleRequestDownload(message.details as RequestDownloadEvent, () => {
|
|
77
|
+
EventBus.Instance.event(UnitMessage.UNIT_REQUEST_CLOSE_FLOW);
|
|
78
|
+
});
|
|
79
|
+
break;
|
|
80
|
+
default:
|
|
81
|
+
props.onMessage && props.onMessage(message);
|
|
60
82
|
}
|
|
61
83
|
};
|
|
62
84
|
|
|
@@ -75,6 +97,7 @@ export const WebComponent = React.forwardRef<WebView, WebComponentProps>(functio
|
|
|
75
97
|
ref={webRef}
|
|
76
98
|
cacheEnabled={false}
|
|
77
99
|
scrollEnabled={props.isScrollable}
|
|
100
|
+
nestedScrollEnabled={props.nestedScrollEnabled}
|
|
78
101
|
onScroll={_onScroll}
|
|
79
102
|
overScrollMode="never"
|
|
80
103
|
injectedJavaScript={unitScript}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import axios from 'axios';
|
|
2
|
+
import { Share, NativeModules, Platform } from 'react-native';
|
|
3
|
+
import type { RequestDownloadEvent } from '../messages/webMessages/unitMessages';
|
|
4
|
+
const { RNShareFile } = NativeModules;
|
|
5
|
+
|
|
6
|
+
export const handleRequestDownload = async (details: RequestDownloadEvent, onReadyToShare: () => void) => {
|
|
7
|
+
if (details.fileType === 'application/pdf') {
|
|
8
|
+
const res = await axios.get(details.url, {
|
|
9
|
+
headers: {
|
|
10
|
+
'Authorization': `Bearer ${details.accessToken}`
|
|
11
|
+
},
|
|
12
|
+
responseEncoding: 'base64',
|
|
13
|
+
responseType: 'arraybuffer'
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
const base64Data = res.request._response;
|
|
17
|
+
|
|
18
|
+
onReadyToShare();
|
|
19
|
+
|
|
20
|
+
if (Platform.OS === 'ios') {
|
|
21
|
+
Share.share({ url: `data:application/pdf;base64,${base64Data}` });
|
|
22
|
+
} else {
|
|
23
|
+
RNShareFile.share(base64Data, details.fileName);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
};
|
package/src/webComponent/html.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Platform } from 'react-native';
|
|
2
|
+
import { DISPATCH_RENDERING_EVENT, LISTENERS, POST_MESSAGE_TO_SDK, POST_PAGE_HEIGHT } from '../scripts/html/bodyScript';
|
|
2
3
|
|
|
3
4
|
export const HTML_PLACEHOLDER = {
|
|
4
5
|
SCRIPT_UNIT: '<SCRIPT_UNIT>',
|
|
@@ -14,6 +15,10 @@ const htmlText = `
|
|
|
14
15
|
<title>Unit Web SDK Demo</title>
|
|
15
16
|
<script>
|
|
16
17
|
window.UnitMobileSDK = true
|
|
18
|
+
window.UnitMobileSDKConfig = {
|
|
19
|
+
os: "${Platform.OS}",
|
|
20
|
+
walletName: "${Platform.OS === 'ios' ? 'Apple' : 'Google'}"
|
|
21
|
+
}
|
|
17
22
|
</script>
|
|
18
23
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0">
|
|
19
24
|
</html>
|
|
@@ -30,6 +35,8 @@ const htmlText = `
|
|
|
30
35
|
|
|
31
36
|
${LISTENERS.onLoad}
|
|
32
37
|
|
|
38
|
+
${LISTENERS.unitRequestDownload}
|
|
39
|
+
|
|
33
40
|
${LISTENERS.requestRendering}
|
|
34
41
|
|
|
35
42
|
${LISTENERS.requestOpenLink}
|
|
@@ -38,7 +45,7 @@ const htmlText = `
|
|
|
38
45
|
|
|
39
46
|
${LISTENERS.cardStatusChange}
|
|
40
47
|
|
|
41
|
-
${
|
|
48
|
+
${DISPATCH_RENDERING_EVENT}
|
|
42
49
|
|
|
43
50
|
${HTML_PLACEHOLDER.SCRIPT_FROM_NATIVE}
|
|
44
51
|
</script>
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["UnitAddToWalletButtonView","requireNativeComponent"],"sources":["UNNativeAddToWalletButton.tsx"],"sourcesContent":["import {\n requireNativeComponent,\n} from 'react-native';\n\ntype UnitAddToWalletButtonViewProps = {\n style: object;\n onAddToWalletClicked: () => void;\n};\n\nconst UnitAddToWalletButtonView = requireNativeComponent<UnitAddToWalletButtonViewProps>('UnitAddToWalletButtonView');\n\nexport default UnitAddToWalletButtonView;\n"],"mappings":";;;;;;;AAAA;;AASA,MAAMA,yBAAyB,GAAG,IAAAC,mCAAA,EAAuD,2BAAvD,CAAlC;eAEeD,yB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["requireNativeComponent","UnitAddToWalletButtonView"],"sources":["UNNativeAddToWalletButton.tsx"],"sourcesContent":["import {\n requireNativeComponent,\n} from 'react-native';\n\ntype UnitAddToWalletButtonViewProps = {\n style: object;\n onAddToWalletClicked: () => void;\n};\n\nconst UnitAddToWalletButtonView = requireNativeComponent<UnitAddToWalletButtonViewProps>('UnitAddToWalletButtonView');\n\nexport default UnitAddToWalletButtonView;\n"],"mappings":"AAAA,SACEA,sBADF,QAEO,cAFP;AASA,MAAMC,yBAAyB,GAAGD,sBAAsB,CAAiC,2BAAjC,CAAxD;AAEA,eAAeC,yBAAf"}
|
|
File without changes
|
|
File without changes
|