react-native-unit-components 1.4.0 → 1.6.1
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 +5 -57
- package/ios/UNAppInfo/UNAppInfo.swift +5 -1
- package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.js +46 -3
- package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.js.map +1 -1
- package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.utils.js +18 -11
- package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.utils.js.map +1 -1
- package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.js +5 -6
- package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.js.map +1 -1
- package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.utils.js +2 -23
- package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.utils.js.map +1 -1
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.js +1 -0
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.js.map +1 -1
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.utils.js +2 -1
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.utils.js.map +1 -1
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.js +1 -0
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.utils.js +2 -1
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.utils.js.map +1 -1
- package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.js +2 -1
- package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
- package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js +1 -0
- package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js.map +1 -1
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.js +1 -0
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.js.map +1 -1
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.utils.js +1 -0
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.utils.js.map +1 -1
- package/lib/commonjs/components/UNCheckDepositComponent/UNCheckDepositComponent.js +1 -0
- package/lib/commonjs/components/UNCheckDepositComponent/UNCheckDepositComponent.js.map +1 -1
- package/lib/commonjs/components/utils/nativeModulesInfo.js +20 -0
- package/lib/commonjs/components/utils/nativeModulesInfo.js.map +1 -0
- package/lib/commonjs/scripts/html/bodyScript.js +13 -2
- package/lib/commonjs/scripts/html/bodyScript.js.map +1 -1
- package/lib/commonjs/unitSdkManager/UnitSdkManager.js +6 -1
- package/lib/commonjs/unitSdkManager/UnitSdkManager.js.map +1 -1
- package/lib/commonjs/webComponent/WebComponent.js +8 -3
- package/lib/commonjs/webComponent/WebComponent.js.map +1 -1
- package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.js +49 -6
- package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.js.map +1 -1
- package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.utils.js +16 -10
- package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.utils.js.map +1 -1
- package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.js +5 -6
- package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.js.map +1 -1
- package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.utils.js +1 -21
- package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.utils.js.map +1 -1
- package/lib/module/components/UNAccountComponent/UNAccountComponent.js +1 -0
- package/lib/module/components/UNAccountComponent/UNAccountComponent.js.map +1 -1
- package/lib/module/components/UNAccountComponent/UNAccountComponent.utils.js +2 -1
- package/lib/module/components/UNAccountComponent/UNAccountComponent.utils.js.map +1 -1
- package/lib/module/components/UNActivityComponent/UNActivityComponent.js +1 -0
- package/lib/module/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
- package/lib/module/components/UNActivityComponent/UNActivityComponent.utils.js +2 -1
- package/lib/module/components/UNActivityComponent/UNActivityComponent.utils.js.map +1 -1
- package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.js +2 -1
- package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
- package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js +1 -0
- package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js.map +1 -1
- package/lib/module/components/UNCardComponent/UNCardComponent.js +1 -0
- package/lib/module/components/UNCardComponent/UNCardComponent.js.map +1 -1
- package/lib/module/components/UNCardComponent/UNCardComponent.utils.js +1 -0
- package/lib/module/components/UNCardComponent/UNCardComponent.utils.js.map +1 -1
- package/lib/module/components/UNCheckDepositComponent/UNCheckDepositComponent.js +1 -0
- package/lib/module/components/UNCheckDepositComponent/UNCheckDepositComponent.js.map +1 -1
- package/lib/module/components/utils/nativeModulesInfo.js +13 -0
- package/lib/module/components/utils/nativeModulesInfo.js.map +1 -0
- package/lib/module/scripts/html/bodyScript.js +13 -2
- package/lib/module/scripts/html/bodyScript.js.map +1 -1
- package/lib/module/unitSdkManager/UnitSdkManager.js +6 -1
- package/lib/module/unitSdkManager/UnitSdkManager.js.map +1 -1
- package/lib/module/webComponent/WebComponent.js +8 -3
- package/lib/module/webComponent/WebComponent.js.map +1 -1
- package/lib/typescript/components/UNACHCreditComponent/UNACHCreditComponent.d.ts +2 -0
- package/lib/typescript/components/UNACHCreditComponent/UNACHCreditComponent.utils.d.ts +4 -1
- package/lib/typescript/components/UNACHDebitComponent/UNACHDebitComponent.d.ts +1 -0
- package/lib/typescript/components/UNACHDebitComponent/UNACHDebitComponent.utils.d.ts +0 -1
- package/lib/typescript/components/UNAccountComponent/UNAccountComponent.d.ts +1 -0
- package/lib/typescript/components/UNActivityComponent/UNActivityComponent.d.ts +2 -1
- package/lib/typescript/components/UNBookPaymentComponent/UNBookPaymentComponent.d.ts +2 -0
- package/lib/typescript/components/UNCardComponent/UNCardComponent.d.ts +2 -0
- package/lib/typescript/components/UNCheckDepositComponent/UNCheckDepositComponent.d.ts +1 -0
- package/lib/typescript/components/utils/nativeModulesInfo.d.ts +1 -0
- package/lib/typescript/scripts/html/bodyScript.d.ts +1 -0
- package/lib/typescript/unitSdkManager/UnitSdkManager.d.ts +3 -1
- package/lib/typescript/webComponent/WebComponent.d.ts +1 -0
- package/package.json +1 -1
- package/src/components/UNACHCreditComponent/UNACHCreditComponent.tsx +46 -5
- package/src/components/UNACHCreditComponent/UNACHCreditComponent.utils.ts +14 -11
- package/src/components/UNACHDebitComponent/UNACHDebitComponent.tsx +7 -9
- package/src/components/UNACHDebitComponent/UNACHDebitComponent.utils.ts +1 -20
- package/src/components/UNAccountComponent/UNAccountComponent.tsx +2 -0
- package/src/components/UNAccountComponent/UNAccountComponent.utils.ts +2 -1
- package/src/components/UNActivityComponent/UNActivityComponent.tsx +4 -2
- package/src/components/UNActivityComponent/UNActivityComponent.utils.ts +3 -1
- package/src/components/UNBookPaymentComponent/UNBookPaymentComponent.tsx +8 -0
- package/src/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.ts +1 -0
- package/src/components/UNCardComponent/UNCardComponent.tsx +5 -2
- package/src/components/UNCardComponent/UNCardComponent.utils.ts +1 -0
- package/src/components/UNCheckDepositComponent/UNCheckDepositComponent.tsx +3 -1
- package/src/components/utils/nativeModulesInfo.ts +11 -0
- package/src/scripts/html/bodyScript.ts +13 -3
- package/src/unitSdkManager/UnitSdkManager.ts +7 -1
- package/src/webComponent/WebComponent.tsx +9 -3
- package/ios/UnitReactNativeComponents.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -4
- package/ios/UnitReactNativeComponents.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
- package/ios/UnitReactNativeComponents.xcodeproj/project.xcworkspace/xcuserdata/alonshprung.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/UnitReactNativeComponents.xcodeproj/xcuserdata/alonshprung.xcuserdatad/xcschemes/xcschememanagement.plist +0 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","WebComponent","WebComponentType","PresentationMode","getBookPaymentParams","getBookPaymentScript","PageMessage","View","UnitMessage","PaymentMessage","RESPONSE_KEYS","UNBookPaymentComponent","props","height","setHeight","presentationMode","setPresentationMode","Inherit","handleUnitOnLoad","response","onLoad","errors","account","console","error","handleWebViewMessage","message","details","type","PAYMENT_CREATED","onPaymentCreated","data","UNIT_ON_LOAD","PAGE_HEIGHT","currentHeight","Default","renderBookPaymentWebView","createElement","bookPayment","params","script","onMessage","isScrollable","theme","style"],"sources":["UNBookPaymentComponent.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport { getBookPaymentParams, getBookPaymentScript } from './UNBookPaymentComponent.utils';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport type { UNOnLoadResponse, UNBookPaymentData, UNError, UNAccountData, UNOnLoadResponseData } from '../../sharedTypes';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { View } from 'react-native';\nimport { UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\nimport type { BookPaymentEvent } from '../../messages/webMessages/bookPaymentMessage';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\n\nexport interface UNBookPaymentComponentProps {\n accountId: string;\n customerToken: string;\n isSameCustomer: boolean;\n counterPartyAccountId: string;\n counterPartyName: string;\n theme?: string;\n onPaymentCreated?: (data: UNBookPaymentData) => void;\n onLoad?: (response: UNOnLoadResponse<UNAccountData>) => void;\n}\n\nexport const UNBookPaymentComponent = (props: UNBookPaymentComponentProps) => {\n const [height, setHeight] = useState<number>(0);\n const [presentationMode, setPresentationMode] = useState<PresentationMode>(PresentationMode.Inherit);\n\n const handleUnitOnLoad = (response: UnitOnLoadResponseEvent) => {\n if (!props.onLoad) {\n return;\n }\n\n if (RESPONSE_KEYS.errors in response) {\n props.onLoad(response as UNError);\n return;\n }\n\n if (RESPONSE_KEYS.account in response) {\n // AccountOnLoadResponse;\n props.onLoad(response[RESPONSE_KEYS.account] as UNOnLoadResponseData<UNAccountData>);\n return;\n }\n\n console.error('On Load Error: unexpected response type');\n return;\n };\n\n const handleWebViewMessage = (message: WebViewMessage) => {\n if (!message || !message.details) return;\n\n switch (message.type) {\n case PaymentMessage.PAYMENT_CREATED:\n props.onPaymentCreated && props.onPaymentCreated((message.details as BookPaymentEvent).data);\n break;\n case UnitMessage.UNIT_ON_LOAD:\n handleUnitOnLoad(message.details as UnitOnLoadResponseEvent);\n break;\n case PageMessage.PAGE_HEIGHT: {\n const currentHeight = (message.details as HeightEvent).height;\n setHeight(currentHeight);\n if (presentationMode === PresentationMode.Inherit && currentHeight === 0) {\n setPresentationMode(PresentationMode.Default);\n }\n break;\n }\n }\n };\n\n const renderBookPaymentWebView = () => {\n return (\n <WebComponent\n type={WebComponentType.bookPayment}\n presentationMode={presentationMode}\n params={getBookPaymentParams(props)}\n script={getBookPaymentScript()}\n onMessage={(message: WebViewMessage) => handleWebViewMessage(message)}\n isScrollable={false}\n theme={props.theme}\n />\n );\n };\n\n if (presentationMode === PresentationMode.Inherit) {\n return renderBookPaymentWebView();\n }\n\n return (\n <View style={{ height: height }}>\n {renderBookPaymentWebView()}\n </View>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,SAASC,YAAY,EAAEC,gBAAgB,QAAQ,iCAAiC;AAChF,SAASC,gBAAgB,QAAQ,6BAA6B;AAC9D,SAASC,oBAAoB,EAAEC,oBAAoB,QAAQ,gCAAgC;AAG3F,SAAsBC,WAAW,QAAQ,wCAAwC;AACjF,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,WAAW,QAAQ,yCAAyC;AACrE,SAASC,cAAc,QAAQ,4CAA4C;AAE3E,SAASC,aAAa,QAAiC,0CAA0C;
|
|
1
|
+
{"version":3,"names":["React","useState","WebComponent","WebComponentType","PresentationMode","getBookPaymentParams","getBookPaymentScript","PageMessage","View","UnitMessage","PaymentMessage","RESPONSE_KEYS","UNBookPaymentComponent","props","height","setHeight","presentationMode","setPresentationMode","Inherit","handleUnitOnLoad","response","onLoad","errors","account","console","error","handleWebViewMessage","message","details","type","PAYMENT_CREATED","onPaymentCreated","data","UNIT_ON_LOAD","PAGE_HEIGHT","currentHeight","Default","renderBookPaymentWebView","createElement","bookPayment","params","script","onMessage","isScrollable","theme","language","style"],"sources":["UNBookPaymentComponent.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport { getBookPaymentParams, getBookPaymentScript } from './UNBookPaymentComponent.utils';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport type { UNOnLoadResponse, UNBookPaymentData, UNError, UNAccountData, UNOnLoadResponseData } from '../../sharedTypes';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { View } from 'react-native';\nimport { UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\nimport type { BookPaymentEvent } from '../../messages/webMessages/bookPaymentMessage';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\n\nexport interface UNBookPaymentComponentProps {\n //inputs\n accountId: string;\n customerToken: string;\n isSameCustomer: boolean;\n counterPartyAccountId: string;\n counterPartyName: string;\n\n // ui\n theme?: string;\n language?: string;\n isAutoFocus?: boolean;\n\n // events\n onPaymentCreated?: (data: UNBookPaymentData) => void;\n onLoad?: (response: UNOnLoadResponse<UNAccountData>) => void;\n}\n\nexport const UNBookPaymentComponent = (props: UNBookPaymentComponentProps) => {\n const [height, setHeight] = useState<number>(0);\n const [presentationMode, setPresentationMode] = useState<PresentationMode>(PresentationMode.Inherit);\n\n const handleUnitOnLoad = (response: UnitOnLoadResponseEvent) => {\n if (!props.onLoad) {\n return;\n }\n\n if (RESPONSE_KEYS.errors in response) {\n props.onLoad(response as UNError);\n return;\n }\n\n if (RESPONSE_KEYS.account in response) {\n // AccountOnLoadResponse;\n props.onLoad(response[RESPONSE_KEYS.account] as UNOnLoadResponseData<UNAccountData>);\n return;\n }\n\n console.error('On Load Error: unexpected response type');\n return;\n };\n\n const handleWebViewMessage = (message: WebViewMessage) => {\n if (!message || !message.details) return;\n\n switch (message.type) {\n case PaymentMessage.PAYMENT_CREATED:\n props.onPaymentCreated && props.onPaymentCreated((message.details as BookPaymentEvent).data);\n break;\n case UnitMessage.UNIT_ON_LOAD:\n handleUnitOnLoad(message.details as UnitOnLoadResponseEvent);\n break;\n case PageMessage.PAGE_HEIGHT: {\n const currentHeight = (message.details as HeightEvent).height;\n setHeight(currentHeight);\n if (presentationMode === PresentationMode.Inherit && currentHeight === 0) {\n setPresentationMode(PresentationMode.Default);\n }\n break;\n }\n }\n };\n\n const renderBookPaymentWebView = () => {\n return (\n <WebComponent\n type={WebComponentType.bookPayment}\n presentationMode={presentationMode}\n params={getBookPaymentParams(props)}\n script={getBookPaymentScript()}\n onMessage={(message: WebViewMessage) => handleWebViewMessage(message)}\n isScrollable={false}\n theme={props.theme}\n language={props.language}\n />\n );\n };\n\n if (presentationMode === PresentationMode.Inherit) {\n return renderBookPaymentWebView();\n }\n\n return (\n <View style={{ height: height }}>\n {renderBookPaymentWebView()}\n </View>\n );\n};\n"],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ export const getBookPaymentParams = props => {
|
|
|
7
7
|
is-same-customer="${props.isSameCustomer}"
|
|
8
8
|
counterparty-account-id="${props.counterPartyAccountId}"
|
|
9
9
|
counterparty-name="${props.counterPartyName}"
|
|
10
|
+
is-auto-focus="${props.isAutoFocus || false}"
|
|
10
11
|
style="height: 100%"
|
|
11
12
|
`;
|
|
12
13
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["LISTENERS","PaymentMessage","getBookPaymentParams","props","accountId","customerToken","isSameCustomer","counterPartyAccountId","counterPartyName","getBookPaymentScript","PAYMENT_CREATED","requestRefresh"],"sources":["UNBookPaymentComponent.utils.ts"],"sourcesContent":["import { LISTENERS } from './../../scripts/html/bodyScript';\nimport type { UNBookPaymentComponentProps } from './UNBookPaymentComponent';\n\nimport { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\n\nexport const getBookPaymentParams = (props: UNBookPaymentComponentProps) => {\n return `\n account-id=\"${props.accountId}\"\n customer-token=\"${props.customerToken}\"\n is-same-customer=\"${props.isSameCustomer}\"\n counterparty-account-id=\"${props.counterPartyAccountId}\"\n counterparty-name=\"${props.counterPartyName}\"\n style=\"height: 100%\"\n `;\n};\n\nexport const getBookPaymentScript = () => {\n return `\n window.addEventListener(\"${PaymentMessage.PAYMENT_CREATED}\", (e) => {\n const response = e.detail\n response.then((data) => {\n postMessageToSDK({ type: \"${PaymentMessage.PAYMENT_CREATED}\", details: { data: JSON.stringify(data.data) }})\n }).catch((e) => {\n console.log(e)\n })\n });\n\n ${LISTENERS.requestRefresh}\n `;\n};\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,iCAAiC;AAG3D,SAASC,cAAc,QAAQ,4CAA4C;AAE3E,OAAO,MAAMC,oBAAoB,GAAIC,KAAkC,IAAK;EAC1E,OAAQ;AACV,kBAAkBA,KAAK,CAACC,SAAU;AAClC,sBAAsBD,KAAK,CAACE,aAAc;AAC1C,wBAAwBF,KAAK,CAACG,cAAe;AAC7C,+BAA+BH,KAAK,CAACI,qBAAsB;AAC3D,yBAAyBJ,KAAK,CAACK,gBAAiB;AAChD;AACA,GAAG;AACH,CAAC;AAED,OAAO,MAAMC,oBAAoB,GAAGA,CAAA,KAAM;EACxC,OAAQ;AACV,+BAA+
|
|
1
|
+
{"version":3,"names":["LISTENERS","PaymentMessage","getBookPaymentParams","props","accountId","customerToken","isSameCustomer","counterPartyAccountId","counterPartyName","isAutoFocus","getBookPaymentScript","PAYMENT_CREATED","requestRefresh"],"sources":["UNBookPaymentComponent.utils.ts"],"sourcesContent":["import { LISTENERS } from './../../scripts/html/bodyScript';\nimport type { UNBookPaymentComponentProps } from './UNBookPaymentComponent';\n\nimport { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\n\nexport const getBookPaymentParams = (props: UNBookPaymentComponentProps) => {\n return `\n account-id=\"${props.accountId}\"\n customer-token=\"${props.customerToken}\"\n is-same-customer=\"${props.isSameCustomer}\"\n counterparty-account-id=\"${props.counterPartyAccountId}\"\n counterparty-name=\"${props.counterPartyName}\"\n is-auto-focus=\"${props.isAutoFocus || false}\"\n style=\"height: 100%\"\n `;\n};\n\nexport const getBookPaymentScript = () => {\n return `\n window.addEventListener(\"${PaymentMessage.PAYMENT_CREATED}\", (e) => {\n const response = e.detail\n response.then((data) => {\n postMessageToSDK({ type: \"${PaymentMessage.PAYMENT_CREATED}\", details: { data: JSON.stringify(data.data) }})\n }).catch((e) => {\n console.log(e)\n })\n });\n\n ${LISTENERS.requestRefresh}\n `;\n};\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,iCAAiC;AAG3D,SAASC,cAAc,QAAQ,4CAA4C;AAE3E,OAAO,MAAMC,oBAAoB,GAAIC,KAAkC,IAAK;EAC1E,OAAQ;AACV,kBAAkBA,KAAK,CAACC,SAAU;AAClC,sBAAsBD,KAAK,CAACE,aAAc;AAC1C,wBAAwBF,KAAK,CAACG,cAAe;AAC7C,+BAA+BH,KAAK,CAACI,qBAAsB;AAC3D,yBAAyBJ,KAAK,CAACK,gBAAiB;AAChD,qBAAqBL,KAAK,CAACM,WAAW,IAAI,KAAM;AAChD;AACA,GAAG;AACH,CAAC;AAED,OAAO,MAAMC,oBAAoB,GAAGA,CAAA,KAAM;EACxC,OAAQ;AACV,+BAA+BT,cAAc,CAACU,eAAgB;AAC9D;AACA;AACA,sCAAsCV,cAAc,CAACU,eAAgB;AACrE;AACA;AACA;AACA;AACA;AACA,MAAMX,SAAS,CAACY,cAAe;AAC/B,GAAG;AACH,CAAC"}
|
|
@@ -139,6 +139,7 @@ export const UNCardComponent = /*#__PURE__*/React.forwardRef(function UNCardComp
|
|
|
139
139
|
presentationMode: PresentationMode.Default,
|
|
140
140
|
params: getCardParams(props),
|
|
141
141
|
theme: props.theme,
|
|
142
|
+
language: props.language,
|
|
142
143
|
script: getCardScript(),
|
|
143
144
|
onMessage: message => handleMessage(message),
|
|
144
145
|
width: windowWidth,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useImperativeHandle","useRef","useState","Dimensions","View","PageMessage","UnitMessage","EventBus","WebComponent","WebComponentType","useListenerToBus","getCardParams","getCardScript","injectRefreshEventIfNeeded","launchStartCardProvisioning","injectOpenActionsMenuScript","injectRequestCardActionScript","PresentationMode","CardMessage","launchGetWallets","CardAddToWalletErrors","CardNativeMessage","RESPONSE_KEYS","UNCardComponent","forwardRef","props","cardRef","height","setHeight","windowWidth","get","width","walletRef","webRef","openActionsMenu","current","openAction","action","cardStatusChanged","card","onStatusChanged","cardActivated","onCardActivated","requestRefresh","data","cardId","startPushProvisioning","onAddToWalletClicked","getAddToWalletStatus","getWallets","handleUnitOnLoad","response","onLoad","errors","console","error","busEventKey","UNIT_REQUEST_REFRESH","CARD_STATUS_CHANGED","CARD_ACTIVATED","CARD_START_PUSH_PROVISIONING","CARD_GET_ADD_TO_WALLET_STATUS","handleMessage","message","details","type","UNIT_REQUEST_RENDERING","event","componentName","componentResourceId","requestRenderingEvent","Instance","PAGE_HEIGHT","UNIT_ON_LOAD","walletResponse","customerToken","pushProvisioningModule","walletStatus","status","CARD_UPDATE_ADD_TO_WALLET_STATUS","Error","parsedError","JSON","parse","code","closedNativeWalletScreen","log","createElement","style","ref","presentationMode","Default","params","theme","script","onMessage","isScrollable"],"sources":["UNCardComponent.tsx"],"sourcesContent":["import React, { useImperativeHandle, useRef, useState } from 'react';\nimport { Dimensions, NativeModule, View } from 'react-native';\nimport type WebView from 'react-native-webview';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { RequestRefreshEvent, RequestRenderingEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport EventBus from '../../helpers/EventBus';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { useListenerToBus } from '../../hooks/listenerToBus';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport { getCardParams, getCardScript, injectRefreshEventIfNeeded, launchStartCardProvisioning, injectOpenActionsMenuScript, injectRequestCardActionScript } from './UNCardComponent.utils';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { UNOnLoadResponse, UNCardData, UNError, UNCardMenuAction } from '../../sharedTypes';\nimport { CardMessage } from '../../messages/webMessages/cardMessage';\nimport { launchGetWallets } from './UNCardComponent.utils';\nimport type { NativeModules } from 'react-native';\nimport type { UNWallet } from 'src/sharedTypes/wallet.types';\nimport { CardAddToWalletErrors, UNCardAddToWalletStatusEvent, CardGetAddToWalletStatusEvent, CardNativeMessage, CardStartPushProvisioningEvent } from '../../messages/nativeMessages/cardMessage';\nimport type { BottomSheetSlotData } from '../UNBottomSheetComponent/UNBottomSheetComponent';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\nexport interface UNCardComponentProps {\n // inputs\n cardId: string;\n customerToken: string;\n\n // ui\n theme?: string;\n hideActionsMenuButton?: boolean;\n hideCardTitle?: boolean;\n hideSensitiveDataButton?: boolean;\n\n // events\n onLoad?: (response: UNOnLoadResponse<UNCardData>) => void\n onStatusChanged?: (card: UNCardData) => void;\n onCardActivated?: (card: UNCardData) => void;\n pushProvisioningModule?: typeof NativeModules;\n}\nexport interface CardRef {\n openActionsMenu: () => void;\n openAction:(action: UNCardMenuAction) => void;\n}\n\nexport const UNCardComponent = React.forwardRef<CardRef, UNCardComponentProps>(function UNCardComponent (props, cardRef) {\n const [height, setHeight] = useState(0);\n const windowWidth = Dimensions.get('window').width;\n\n const walletRef = useRef<UNWallet | null>(null);\n // walletRef can be changed to a state. (After the change of the listener hook)\n // TODO: walletState and checks it works. =)\n\n const webRef = useRef<WebView>(null);\n\n useImperativeHandle(cardRef, () => ({\n openActionsMenu() {\n injectOpenActionsMenuScript(webRef.current);\n },\n openAction(action: UNCardMenuAction) {\n injectRequestCardActionScript(webRef.current, action);\n }\n }));\n\n const cardStatusChanged = (card: UNCardData) => {\n if (props.onStatusChanged) {\n props.onStatusChanged(card);\n }\n };\n\n const cardActivated = (card: UNCardData) => {\n if (props.onCardActivated) {\n props.onCardActivated(card);\n }\n };\n\n const requestRefresh = (data: RequestRefreshEvent) => {\n injectRefreshEventIfNeeded(webRef.current, data, props.cardId);\n };\n\n const startPushProvisioning = async (data: CardStartPushProvisioningEvent) => {\n if (data.cardId !== props.cardId) return;\n onAddToWalletClicked();\n };\n\n const getAddToWalletStatus = (data: CardGetAddToWalletStatusEvent) => {\n if (data.cardId !== props.cardId) return;\n getWallets();\n };\n\n const handleUnitOnLoad = (response: UnitOnLoadResponseEvent) => {\n if (!props.onLoad) {\n return;\n }\n\n if (RESPONSE_KEYS.errors in response) {\n props.onLoad(response as UNError);\n return;\n }\n\n if (RESPONSE_KEYS.card in response) {\n // CardOnLoadResponse\n props.onLoad(response[RESPONSE_KEYS.card] as UNOnLoadResponse<UNCardData>);\n return;\n }\n\n console.error('On Load Error: unexpected response type');\n return;\n };\n\n useListenerToBus({ busEventKey: UnitMessage.UNIT_REQUEST_REFRESH, action: requestRefresh });\n useListenerToBus({ busEventKey: CardMessage.CARD_STATUS_CHANGED, action: cardStatusChanged });\n useListenerToBus({ busEventKey: CardMessage.CARD_ACTIVATED, action: cardActivated });\n useListenerToBus({ busEventKey: CardNativeMessage.CARD_START_PUSH_PROVISIONING, action: startPushProvisioning });\n useListenerToBus({ busEventKey: CardNativeMessage.CARD_GET_ADD_TO_WALLET_STATUS, action: getAddToWalletStatus });\n\n const handleMessage = (message: WebViewMessage) => {\n if (!message || !message.details) return;\n\n switch (message.type) {\n case UnitMessage.UNIT_REQUEST_RENDERING: {\n const event: BottomSheetSlotData = {\n componentName: WebComponentType.card,\n componentResourceId: props.cardId,\n requestRenderingEvent: message.details as RequestRenderingEvent\n };\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_RENDERING, event);\n break;\n }\n case PageMessage.PAGE_HEIGHT:\n setHeight((message.details as HeightEvent).height);\n break;\n case UnitMessage.UNIT_ON_LOAD:\n handleUnitOnLoad(message.details as UnitOnLoadResponseEvent);\n break;\n }\n };\n\n const getWallets = async () => {\n\n try {\n\n const walletResponse = await launchGetWallets(props.customerToken, props.cardId, props.pushProvisioningModule as NativeModule);\n\n if (!walletResponse) return;\n\n walletRef.current = walletResponse;\n\n const walletStatus: UNCardAddToWalletStatusEvent = { status: walletResponse.status };\n EventBus.Instance.event(CardNativeMessage.CARD_UPDATE_ADD_TO_WALLET_STATUS, walletStatus);\n } catch (error) {\n console.error(error);\n }\n };\n\n const onAddToWalletClicked = async () => {\n try {\n await launchStartCardProvisioning(props.pushProvisioningModule as NativeModule, walletRef.current);\n } catch (error) {\n if (error instanceof Error) {\n const parsedError = JSON.parse(error.message);\n if (parsedError.code === CardAddToWalletErrors.closedNativeWalletScreen) return;\n }\n console.log(error);\n }\n };\n\n return (\n <View style={{ height }}>\n <WebComponent\n ref={webRef}\n type={WebComponentType.card}\n presentationMode={PresentationMode.Default}\n params={getCardParams(props)}\n theme={props.theme}\n script={getCardScript()}\n onMessage={message => handleMessage(message)}\n width={windowWidth}\n isScrollable={false}\n />\n </View>\n );\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","useImperativeHandle","useRef","useState","Dimensions","View","PageMessage","UnitMessage","EventBus","WebComponent","WebComponentType","useListenerToBus","getCardParams","getCardScript","injectRefreshEventIfNeeded","launchStartCardProvisioning","injectOpenActionsMenuScript","injectRequestCardActionScript","PresentationMode","CardMessage","launchGetWallets","CardAddToWalletErrors","CardNativeMessage","RESPONSE_KEYS","UNCardComponent","forwardRef","props","cardRef","height","setHeight","windowWidth","get","width","walletRef","webRef","openActionsMenu","current","openAction","action","cardStatusChanged","card","onStatusChanged","cardActivated","onCardActivated","requestRefresh","data","cardId","startPushProvisioning","onAddToWalletClicked","getAddToWalletStatus","getWallets","handleUnitOnLoad","response","onLoad","errors","console","error","busEventKey","UNIT_REQUEST_REFRESH","CARD_STATUS_CHANGED","CARD_ACTIVATED","CARD_START_PUSH_PROVISIONING","CARD_GET_ADD_TO_WALLET_STATUS","handleMessage","message","details","type","UNIT_REQUEST_RENDERING","event","componentName","componentResourceId","requestRenderingEvent","Instance","PAGE_HEIGHT","UNIT_ON_LOAD","walletResponse","customerToken","pushProvisioningModule","walletStatus","status","CARD_UPDATE_ADD_TO_WALLET_STATUS","Error","parsedError","JSON","parse","code","closedNativeWalletScreen","log","createElement","style","ref","presentationMode","Default","params","theme","language","script","onMessage","isScrollable"],"sources":["UNCardComponent.tsx"],"sourcesContent":["import React, { useImperativeHandle, useRef, useState } from 'react';\nimport { Dimensions, NativeModule, View } from 'react-native';\nimport type WebView from 'react-native-webview';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { RequestRefreshEvent, RequestRenderingEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport EventBus from '../../helpers/EventBus';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { useListenerToBus } from '../../hooks/listenerToBus';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport { getCardParams, getCardScript, injectRefreshEventIfNeeded, launchStartCardProvisioning, injectOpenActionsMenuScript, injectRequestCardActionScript } from './UNCardComponent.utils';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { UNOnLoadResponse, UNCardData, UNError, UNCardMenuAction } from '../../sharedTypes';\nimport { CardMessage } from '../../messages/webMessages/cardMessage';\nimport { launchGetWallets } from './UNCardComponent.utils';\nimport type { NativeModules } from 'react-native';\nimport type { UNWallet } from 'src/sharedTypes/wallet.types';\nimport { CardAddToWalletErrors, UNCardAddToWalletStatusEvent, CardGetAddToWalletStatusEvent, CardNativeMessage, CardStartPushProvisioningEvent } from '../../messages/nativeMessages/cardMessage';\nimport type { BottomSheetSlotData } from '../UNBottomSheetComponent/UNBottomSheetComponent';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\nexport interface UNCardComponentProps {\n // inputs\n cardId: string;\n customerToken: string;\n learnMoreUrl?: string;\n\n // ui\n theme?: string;\n language?: string;\n hideActionsMenuButton?: boolean;\n hideCardTitle?: boolean;\n hideSensitiveDataButton?: boolean;\n\n // events\n onLoad?: (response: UNOnLoadResponse<UNCardData>) => void\n onStatusChanged?: (card: UNCardData) => void;\n onCardActivated?: (card: UNCardData) => void;\n pushProvisioningModule?: typeof NativeModules;\n}\nexport interface CardRef {\n openActionsMenu: () => void;\n openAction: (action: UNCardMenuAction) => void;\n}\n\nexport const UNCardComponent = React.forwardRef<CardRef, UNCardComponentProps>(function UNCardComponent(props, cardRef) {\n const [height, setHeight] = useState(0);\n const windowWidth = Dimensions.get('window').width;\n\n const walletRef = useRef<UNWallet | null>(null);\n // walletRef can be changed to a state. (After the change of the listener hook)\n // TODO: walletState and checks it works. =)\n\n const webRef = useRef<WebView>(null);\n\n useImperativeHandle(cardRef, () => ({\n openActionsMenu() {\n injectOpenActionsMenuScript(webRef.current);\n },\n openAction(action: UNCardMenuAction) {\n injectRequestCardActionScript(webRef.current, action);\n }\n }));\n\n const cardStatusChanged = (card: UNCardData) => {\n if (props.onStatusChanged) {\n props.onStatusChanged(card);\n }\n };\n\n const cardActivated = (card: UNCardData) => {\n if (props.onCardActivated) {\n props.onCardActivated(card);\n }\n };\n\n const requestRefresh = (data: RequestRefreshEvent) => {\n injectRefreshEventIfNeeded(webRef.current, data, props.cardId);\n };\n\n const startPushProvisioning = async (data: CardStartPushProvisioningEvent) => {\n if (data.cardId !== props.cardId) return;\n onAddToWalletClicked();\n };\n\n const getAddToWalletStatus = (data: CardGetAddToWalletStatusEvent) => {\n if (data.cardId !== props.cardId) return;\n getWallets();\n };\n\n const handleUnitOnLoad = (response: UnitOnLoadResponseEvent) => {\n if (!props.onLoad) {\n return;\n }\n\n if (RESPONSE_KEYS.errors in response) {\n props.onLoad(response as UNError);\n return;\n }\n\n if (RESPONSE_KEYS.card in response) {\n // CardOnLoadResponse\n props.onLoad(response[RESPONSE_KEYS.card] as UNOnLoadResponse<UNCardData>);\n return;\n }\n\n console.error('On Load Error: unexpected response type');\n return;\n };\n\n useListenerToBus({ busEventKey: UnitMessage.UNIT_REQUEST_REFRESH, action: requestRefresh });\n useListenerToBus({ busEventKey: CardMessage.CARD_STATUS_CHANGED, action: cardStatusChanged });\n useListenerToBus({ busEventKey: CardMessage.CARD_ACTIVATED, action: cardActivated });\n useListenerToBus({ busEventKey: CardNativeMessage.CARD_START_PUSH_PROVISIONING, action: startPushProvisioning });\n useListenerToBus({ busEventKey: CardNativeMessage.CARD_GET_ADD_TO_WALLET_STATUS, action: getAddToWalletStatus });\n\n const handleMessage = (message: WebViewMessage) => {\n if (!message || !message.details) return;\n\n switch (message.type) {\n case UnitMessage.UNIT_REQUEST_RENDERING: {\n const event: BottomSheetSlotData = {\n componentName: WebComponentType.card,\n componentResourceId: props.cardId,\n requestRenderingEvent: message.details as RequestRenderingEvent\n };\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_RENDERING, event);\n break;\n }\n case PageMessage.PAGE_HEIGHT:\n setHeight((message.details as HeightEvent).height);\n break;\n case UnitMessage.UNIT_ON_LOAD:\n handleUnitOnLoad(message.details as UnitOnLoadResponseEvent);\n break;\n }\n };\n\n const getWallets = async () => {\n\n try {\n\n const walletResponse = await launchGetWallets(props.customerToken, props.cardId, props.pushProvisioningModule as NativeModule);\n\n if (!walletResponse) return;\n\n walletRef.current = walletResponse;\n\n const walletStatus: UNCardAddToWalletStatusEvent = { status: walletResponse.status };\n EventBus.Instance.event(CardNativeMessage.CARD_UPDATE_ADD_TO_WALLET_STATUS, walletStatus);\n } catch (error) {\n console.error(error);\n }\n };\n\n const onAddToWalletClicked = async () => {\n try {\n await launchStartCardProvisioning(props.pushProvisioningModule as NativeModule, walletRef.current);\n } catch (error) {\n if (error instanceof Error) {\n const parsedError = JSON.parse(error.message);\n if (parsedError.code === CardAddToWalletErrors.closedNativeWalletScreen) return;\n }\n console.log(error);\n }\n };\n\n return (\n <View style={{ height }}>\n <WebComponent\n ref={webRef}\n type={WebComponentType.card}\n presentationMode={PresentationMode.Default}\n params={getCardParams(props)}\n theme={props.theme}\n language={props.language}\n script={getCardScript()}\n onMessage={message => handleMessage(message)}\n width={windowWidth}\n isScrollable={false}\n />\n </View>\n );\n});\n"],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ export const getCardParams = props => {
|
|
|
11
11
|
hide-actions-menu-button="${props.hideActionsMenuButton || false}"
|
|
12
12
|
hide-card-title="${props.hideCardTitle || false}"
|
|
13
13
|
hide-sensitive-data-button="${props.hideSensitiveDataButton || false}"
|
|
14
|
+
learn-more-url="${props.learnMoreUrl || ''}"
|
|
14
15
|
`;
|
|
15
16
|
};
|
|
16
17
|
export const getCardScript = () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DISPATCH_REQUEST_REFRESH","WebComponentType","getMobileWalletPayload","UNWalletCode","UNWalletName","UnitSDK","getCardParams","props","cardId","customerToken","pushProvisioningModule","hideActionsMenuButton","hideCardTitle","hideSensitiveDataButton","getCardScript","injectOpenActionsMenuScript","currentWeb","injectJavaScript","card","injectRequestCardActionScript","action","injectRefreshEventIfNeeded","requestRefreshEvent","dependencies","includes","valueOf","resourceId","JSON","stringify","launchGetWallets","env","getEnv","encryptedPayload","walletsResponse","encPayload","parsedWalletsResponse","parse","wallets","code","Apple","name","status","googleWallet","filter","wallet","Google","error","Promise","reject","launchStartCardProvisioning","response","walletCode","walletName"],"sources":["UNCardComponent.utils.ts"],"sourcesContent":["import { DISPATCH_REQUEST_REFRESH } from './../../scripts/html/bodyScript';\nimport type WebView from 'react-native-webview';\nimport type { UNCardComponentProps } from './UNCardComponent';\nimport { WebComponentType } from '../../webComponent/WebComponent';\nimport type { NativeModules } from 'react-native';\nimport { getMobileWalletPayload } from './networking/requests/UNWalletPayloadRequest';\nimport { UNWallet, UNWalletCode, UNWalletName } from '../../../src/sharedTypes/wallet.types';\nimport type { RequestRefreshEvent } from '../../messages/webMessages/unitMessages';\nimport { UnitSDK } from '../../unitSdkManager/UnitSdkManager';\nimport type { UNCardMenuAction } from '../../sharedTypes';\n\nexport const getCardParams = (props: UNCardComponentProps) => {\n return `\n card-id=\"${props.cardId}\"\n customer-token=\"${props.customerToken}\"\n enable-mobile-wallet=\"${!!props.pushProvisioningModule}\"\n hide-actions-menu-button=\"${props.hideActionsMenuButton || false}\"\n hide-card-title=\"${props.hideCardTitle || false}\"\n hide-sensitive-data-button=\"${props.hideSensitiveDataButton || false}\"\n `;\n};\n\nexport const getCardScript = () => {\n return DISPATCH_REQUEST_REFRESH;\n};\n\nexport const injectOpenActionsMenuScript = (currentWeb: WebView | null) => {\n currentWeb?.injectJavaScript(`dispatchOpenActionsMenu('${WebComponentType.card}')`);\n};\n\nexport const injectRequestCardActionScript = (currentWeb: WebView | null, action: UNCardMenuAction) => {\n currentWeb?.injectJavaScript(`dispatchRequestCardAction('${action}')`);\n};\n\nexport const injectRefreshEventIfNeeded = (currentWeb: WebView | null, requestRefreshEvent: RequestRefreshEvent | null, cardId: string) => {\n if (requestRefreshEvent && requestRefreshEvent.dependencies.includes(WebComponentType.card.valueOf()) && requestRefreshEvent.resourceId == cardId) {\n currentWeb?.injectJavaScript(`dispatchRefreshEvent('${JSON.stringify(requestRefreshEvent)}')`);\n }\n};\n\nexport const launchGetWallets = async (customerToken: string, cardId: string, pushProvisioningModule: typeof NativeModules) => {\n try {\n const env = UnitSDK.getEnv();\n if (!env) return null;\n\n const encryptedPayload = await getMobileWalletPayload(customerToken, cardId, env);\n if (!encryptedPayload) return null;\n\n const walletsResponse = await pushProvisioningModule.launchGetWallets(JSON.stringify({ encPayload: encryptedPayload }));\n const parsedWalletsResponse = JSON.parse(walletsResponse);\n const wallets = parsedWalletsResponse.wallets;\n\n if (!wallets) return null;\n if (wallets[0].code === UNWalletCode.Apple) {\n return ({ name: UNWalletName.Apple, code: UNWalletCode.Apple, status: wallets[0].status });\n } else {\n const googleWallet = wallets.filter((wallet: { name: UNWalletName }) => {\n return wallet.name === UNWalletName.Google;\n });\n if (!googleWallet) return;\n return ({ name: UNWalletName.Google, code: UNWalletCode.Google, status: googleWallet[0].status });\n }\n } catch (error) {\n return Promise.reject(error);\n }\n\n};\n\nexport const launchStartCardProvisioning = async (pushProvisioningModule: typeof NativeModules, wallet: UNWallet | null) => {\n try {\n const response = await pushProvisioningModule.launchStartCardProvisioning(\n JSON.stringify({\n walletCode: wallet?.code,\n walletName: wallet?.name\n }));\n return response;\n }\n\n catch (error) {\n return Promise.reject(error);\n }\n};\n"],"mappings":"AAAA,SAASA,wBAAwB,QAAQ,iCAAiC;AAG1E,SAASC,gBAAgB,QAAQ,iCAAiC;AAElE,SAASC,sBAAsB,QAAQ,8CAA8C;AACrF,SAAmBC,YAAY,EAAEC,YAAY,QAAQ,uCAAuC;AAE5F,SAASC,OAAO,QAAQ,qCAAqC;AAG7D,OAAO,MAAMC,aAAa,GAAIC,KAA2B,IAAK;EAC5D,OAAQ;AACV,eAAeA,KAAK,CAACC,MAAO;AAC5B,sBAAsBD,KAAK,CAACE,aAAc;AAC1C,4BAA4B,CAAC,CAACF,KAAK,CAACG,sBAAuB;AAC3D,gCAAgCH,KAAK,CAACI,qBAAqB,IAAI,KAAM;AACrE,uBAAuBJ,KAAK,CAACK,aAAa,IAAI,KAAM;AACpD,kCAAkCL,KAAK,CAACM,uBAAuB,IAAI,KAAM;AACzE,GAAG;AACH,CAAC;AAED,OAAO,MAAMC,aAAa,GAAGA,CAAA,KAAM;EACjC,
|
|
1
|
+
{"version":3,"names":["DISPATCH_REQUEST_REFRESH","WebComponentType","getMobileWalletPayload","UNWalletCode","UNWalletName","UnitSDK","getCardParams","props","cardId","customerToken","pushProvisioningModule","hideActionsMenuButton","hideCardTitle","hideSensitiveDataButton","learnMoreUrl","getCardScript","injectOpenActionsMenuScript","currentWeb","injectJavaScript","card","injectRequestCardActionScript","action","injectRefreshEventIfNeeded","requestRefreshEvent","dependencies","includes","valueOf","resourceId","JSON","stringify","launchGetWallets","env","getEnv","encryptedPayload","walletsResponse","encPayload","parsedWalletsResponse","parse","wallets","code","Apple","name","status","googleWallet","filter","wallet","Google","error","Promise","reject","launchStartCardProvisioning","response","walletCode","walletName"],"sources":["UNCardComponent.utils.ts"],"sourcesContent":["import { DISPATCH_REQUEST_REFRESH } from './../../scripts/html/bodyScript';\nimport type WebView from 'react-native-webview';\nimport type { UNCardComponentProps } from './UNCardComponent';\nimport { WebComponentType } from '../../webComponent/WebComponent';\nimport type { NativeModules } from 'react-native';\nimport { getMobileWalletPayload } from './networking/requests/UNWalletPayloadRequest';\nimport { UNWallet, UNWalletCode, UNWalletName } from '../../../src/sharedTypes/wallet.types';\nimport type { RequestRefreshEvent } from '../../messages/webMessages/unitMessages';\nimport { UnitSDK } from '../../unitSdkManager/UnitSdkManager';\nimport type { UNCardMenuAction } from '../../sharedTypes';\n\nexport const getCardParams = (props: UNCardComponentProps) => {\n return `\n card-id=\"${props.cardId}\"\n customer-token=\"${props.customerToken}\"\n enable-mobile-wallet=\"${!!props.pushProvisioningModule}\"\n hide-actions-menu-button=\"${props.hideActionsMenuButton || false}\"\n hide-card-title=\"${props.hideCardTitle || false}\"\n hide-sensitive-data-button=\"${props.hideSensitiveDataButton || false}\"\n learn-more-url=\"${props.learnMoreUrl || ''}\"\n `;\n};\n\nexport const getCardScript = () => {\n return DISPATCH_REQUEST_REFRESH;\n};\n\nexport const injectOpenActionsMenuScript = (currentWeb: WebView | null) => {\n currentWeb?.injectJavaScript(`dispatchOpenActionsMenu('${WebComponentType.card}')`);\n};\n\nexport const injectRequestCardActionScript = (currentWeb: WebView | null, action: UNCardMenuAction) => {\n currentWeb?.injectJavaScript(`dispatchRequestCardAction('${action}')`);\n};\n\nexport const injectRefreshEventIfNeeded = (currentWeb: WebView | null, requestRefreshEvent: RequestRefreshEvent | null, cardId: string) => {\n if (requestRefreshEvent && requestRefreshEvent.dependencies.includes(WebComponentType.card.valueOf()) && requestRefreshEvent.resourceId == cardId) {\n currentWeb?.injectJavaScript(`dispatchRefreshEvent('${JSON.stringify(requestRefreshEvent)}')`);\n }\n};\n\nexport const launchGetWallets = async (customerToken: string, cardId: string, pushProvisioningModule: typeof NativeModules) => {\n try {\n const env = UnitSDK.getEnv();\n if (!env) return null;\n\n const encryptedPayload = await getMobileWalletPayload(customerToken, cardId, env);\n if (!encryptedPayload) return null;\n\n const walletsResponse = await pushProvisioningModule.launchGetWallets(JSON.stringify({ encPayload: encryptedPayload }));\n const parsedWalletsResponse = JSON.parse(walletsResponse);\n const wallets = parsedWalletsResponse.wallets;\n\n if (!wallets) return null;\n if (wallets[0].code === UNWalletCode.Apple) {\n return ({ name: UNWalletName.Apple, code: UNWalletCode.Apple, status: wallets[0].status });\n } else {\n const googleWallet = wallets.filter((wallet: { name: UNWalletName }) => {\n return wallet.name === UNWalletName.Google;\n });\n if (!googleWallet) return;\n return ({ name: UNWalletName.Google, code: UNWalletCode.Google, status: googleWallet[0].status });\n }\n } catch (error) {\n return Promise.reject(error);\n }\n\n};\n\nexport const launchStartCardProvisioning = async (pushProvisioningModule: typeof NativeModules, wallet: UNWallet | null) => {\n try {\n const response = await pushProvisioningModule.launchStartCardProvisioning(\n JSON.stringify({\n walletCode: wallet?.code,\n walletName: wallet?.name\n }));\n return response;\n }\n\n catch (error) {\n return Promise.reject(error);\n }\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","useState","View","NativeModules","Platform","WebComponent","WebComponentType","PresentationMode","PageMessage","UnitMessage","getCheckDepositParams","getCheckDepositScript","CheckMessage","RESPONSE_KEYS","Camera","UNCheckDepositComponent","props","height","setHeight","presentationMode","setPresentationMode","Inherit","requestCameraAccess","requestAccess","error","console","OS","handleUnitOnLoad","response","onLoad","errors","account","handleWebViewMessage","message","details","type","CHECK_DEPOSIT_CREATED","onDepositCreated","CHECK_DEPOSIT_RESTART_REQUEST","onRestartRequest","UNIT_ON_LOAD","PAGE_HEIGHT","currentHeight","Default","renderBookPaymentWebView","createElement","checkDeposit","params","script","onMessage","theme","isScrollable","style"],"sources":["UNCheckDepositComponent.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { View, NativeModules, Platform } from 'react-native';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { getCheckDepositParams, getCheckDepositScript } from './UNCheckDepositComponent.utils';\nimport { CheckMessage } from '../../messages/webMessages/checkMessage';\nimport type { UNCheckDepositData } from '../../sharedTypes/checkDeposit.types';\nimport type { UNAccountData, UNError, UNOnLoadResponse, UNOnLoadResponseData } from '../../sharedTypes';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\n\nconst { Camera } = NativeModules;\n\nexport interface UNCheckDepositComponentProps {\n accountId: string;\n fee: number;\n customerToken: string;\n theme?: string;\n onLoad?: (response: UNOnLoadResponse<UNAccountData>) => void;\n onDepositCreated?: (checkData: UNCheckDepositData) => void\n onRestartRequest?: (checkData: UNCheckDepositData) => void\n}\n\nexport const UNCheckDepositComponent = (props: UNCheckDepositComponentProps) => {\n const [height, setHeight] = useState<number>(0);\n const [presentationMode, setPresentationMode] = useState<PresentationMode>(PresentationMode.Inherit);\n\n useEffect(() => {\n const requestCameraAccess = async () => {\n try {\n await Camera.requestAccess();\n
|
|
1
|
+
{"version":3,"names":["React","useEffect","useState","View","NativeModules","Platform","WebComponent","WebComponentType","PresentationMode","PageMessage","UnitMessage","getCheckDepositParams","getCheckDepositScript","CheckMessage","RESPONSE_KEYS","Camera","UNCheckDepositComponent","props","height","setHeight","presentationMode","setPresentationMode","Inherit","requestCameraAccess","requestAccess","error","console","OS","handleUnitOnLoad","response","onLoad","errors","account","handleWebViewMessage","message","details","type","CHECK_DEPOSIT_CREATED","onDepositCreated","CHECK_DEPOSIT_RESTART_REQUEST","onRestartRequest","UNIT_ON_LOAD","PAGE_HEIGHT","currentHeight","Default","renderBookPaymentWebView","createElement","checkDeposit","params","script","onMessage","theme","language","isScrollable","style"],"sources":["UNCheckDepositComponent.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { View, NativeModules, Platform } from 'react-native';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { getCheckDepositParams, getCheckDepositScript } from './UNCheckDepositComponent.utils';\nimport { CheckMessage } from '../../messages/webMessages/checkMessage';\nimport type { UNCheckDepositData } from '../../sharedTypes/checkDeposit.types';\nimport type { UNAccountData, UNError, UNOnLoadResponse, UNOnLoadResponseData } from '../../sharedTypes';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\n\nconst { Camera } = NativeModules;\n\nexport interface UNCheckDepositComponentProps {\n accountId: string;\n fee: number;\n customerToken: string;\n theme?: string;\n language?: string;\n onLoad?: (response: UNOnLoadResponse<UNAccountData>) => void;\n onDepositCreated?: (checkData: UNCheckDepositData) => void\n onRestartRequest?: (checkData: UNCheckDepositData) => void\n}\n\nexport const UNCheckDepositComponent = (props: UNCheckDepositComponentProps) => {\n const [height, setHeight] = useState<number>(0);\n const [presentationMode, setPresentationMode] = useState<PresentationMode>(PresentationMode.Inherit);\n\n useEffect(() => {\n const requestCameraAccess = async () => {\n try {\n await Camera.requestAccess();\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (error: any) {\n console.error(error);\n }\n };\n\n if (Platform.OS == 'ios') {\n requestCameraAccess();\n }\n }, []);\n\n const handleUnitOnLoad = (response: UnitOnLoadResponseEvent) => {\n if (!props.onLoad) {\n return;\n }\n\n if (RESPONSE_KEYS.errors in response) {\n props.onLoad(response as UNError);\n return;\n }\n\n if (RESPONSE_KEYS.account in response) {\n // AccountOnLoadResponse;\n props.onLoad(response[RESPONSE_KEYS.account] as UNOnLoadResponseData<UNAccountData>);\n return;\n }\n\n console.error('On Load Error: unexpected response type');\n return;\n };\n\n const handleWebViewMessage = (message: WebViewMessage) => {\n if (!message || !message.details) return;\n\n switch (message.type) {\n case CheckMessage.CHECK_DEPOSIT_CREATED:\n props.onDepositCreated && props.onDepositCreated(message.details as UNCheckDepositData);\n break;\n case CheckMessage.CHECK_DEPOSIT_RESTART_REQUEST:\n props.onRestartRequest && props.onRestartRequest(message.details as UNCheckDepositData);\n break;\n case UnitMessage.UNIT_ON_LOAD:\n handleUnitOnLoad(message.details as UnitOnLoadResponseEvent);\n break;\n case PageMessage.PAGE_HEIGHT: {\n const currentHeight = (message.details as HeightEvent).height;\n setHeight(currentHeight);\n if (presentationMode === PresentationMode.Inherit && currentHeight === 0) {\n setPresentationMode(PresentationMode.Default);\n }\n break;\n }\n }\n };\n\n const renderBookPaymentWebView = () => {\n return (\n <WebComponent\n type={WebComponentType.checkDeposit}\n presentationMode={presentationMode}\n params={getCheckDepositParams(props)}\n script={getCheckDepositScript()}\n onMessage={(message: WebViewMessage) => handleWebViewMessage(message)}\n theme={props.theme}\n language={props.language}\n isScrollable={true}\n />\n );\n };\n\n if (presentationMode === PresentationMode.Inherit) {\n return renderBookPaymentWebView();\n }\n\n return (\n <View style={{ height: height }}>\n {renderBookPaymentWebView()}\n </View>\n );\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { NativeModules } from 'react-native';
|
|
2
|
+
const {
|
|
3
|
+
RNAppInfoModule
|
|
4
|
+
} = NativeModules;
|
|
5
|
+
export const getAndroidPackageName = async () => {
|
|
6
|
+
try {
|
|
7
|
+
const response = await RNAppInfoModule.getAppPackageName();
|
|
8
|
+
return response;
|
|
9
|
+
} catch (error) {
|
|
10
|
+
console.error(error);
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=nativeModulesInfo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["NativeModules","RNAppInfoModule","getAndroidPackageName","response","getAppPackageName","error","console"],"sources":["nativeModulesInfo.ts"],"sourcesContent":["import { NativeModules } from 'react-native';\nconst { RNAppInfoModule } = NativeModules;\n\nexport const getAndroidPackageName = async () => {\n try {\n const response = await RNAppInfoModule.getAppPackageName();\n return response;\n } catch (error) {\n console.error(error);\n }\n};\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,cAAc;AAC5C,MAAM;EAAEC;AAAgB,CAAC,GAAGD,aAAa;AAEzC,OAAO,MAAME,qBAAqB,GAAG,MAAAA,CAAA,KAAY;EAC/C,IAAI;IACF,MAAMC,QAAQ,GAAG,MAAMF,eAAe,CAACG,iBAAiB,EAAE;IAC1D,OAAOD,QAAQ;EACjB,CAAC,CAAC,OAAOE,KAAK,EAAE;IACdC,OAAO,CAACD,KAAK,CAACA,KAAK,CAAC;EACtB;AACF,CAAC"}
|
|
@@ -81,7 +81,7 @@ export const LISTENERS = {
|
|
|
81
81
|
window.addEventListener("${UnitMessage.UNIT_REQUEST_EXTERNAL_SDK}", (e) => {
|
|
82
82
|
postMessageToSDK({ type: "${UnitMessage.UNIT_REQUEST_EXTERNAL_SDK}", details: e.detail })
|
|
83
83
|
});
|
|
84
|
-
`,
|
|
84
|
+
`,
|
|
85
85
|
unitPaymentCreated: `
|
|
86
86
|
window.addEventListener("${PaymentMessage.PAYMENT_CREATED}", (e) => {
|
|
87
87
|
const response = e.detail
|
|
@@ -90,7 +90,18 @@ export const LISTENERS = {
|
|
|
90
90
|
}).catch((e) => {
|
|
91
91
|
console.log(e)
|
|
92
92
|
})
|
|
93
|
-
})
|
|
93
|
+
});
|
|
94
|
+
`,
|
|
95
|
+
unitPlaidTokenCreated: `
|
|
96
|
+
window.addEventListener("${UnitMessage.UNIT_PLAID_TOKEN_CREATED}", (e) => {
|
|
97
|
+
const response = e.detail
|
|
98
|
+
response.then((data) => {
|
|
99
|
+
postMessageToSDK({ type: "${UnitMessage.UNIT_PLAID_TOKEN_CREATED}", details: { linkToken: data.data }})
|
|
100
|
+
}).catch((e) => {
|
|
101
|
+
console.log(e)
|
|
102
|
+
})
|
|
103
|
+
});
|
|
104
|
+
`,
|
|
94
105
|
unitAccountChanged: `
|
|
95
106
|
window.addEventListener("${AccountMessage.UNIT_ACCOUNT_CHANGED}", (e) => {
|
|
96
107
|
const response = e.detail
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PaymentMessage","CardMessage","PageMessage","UnitMessage","AccountMessage","ActivityMessage","POST_MESSAGE_TO_SDK","POST_PAGE_HEIGHT","PAGE_HEIGHT","LISTENERS","isPageLoaded","PAGE_LOADED","requestRendering","UNIT_REQUEST_RENDERING","requestRefresh","UNIT_REQUEST_REFRESH","onLoad","UNIT_ON_LOAD","requestCloseFlow","UNIT_REQUEST_CLOSE_FLOW","requestOpenLink","UNIT_REQUEST_OPEN_LINK","unitRequestDownload","UNIT_REQUEST_DOWNLOAD","cardActivated","CARD_ACTIVATED","cardStatusChange","CARD_STATUS_CHANGED","unitRequestExternalSdk","UNIT_REQUEST_EXTERNAL_SDK","unitPaymentCreated","PAYMENT_CREATED","unitAccountChanged","UNIT_ACCOUNT_CHANGED","unitActivityFiltersChanged","UNIT_ACTIVITY_FILTERS_CHANGED","DISPATCH_RENDERING_EVENT","DISPATCH_REQUEST_REFRESH","DISPATCH_ACTIVITY_FILTER_CHANGED_EVENT","DISPATCH_PLAID_RESPONSE","UNIT_PLAID_RESPONSE","DISPATCH_OPEN_ACTIONS_MENU","DISPATCH_REQUEST_CARD_ACTION","DISPATCH_REQUEST_ACCOUNT_ACTION"],"sources":["bodyScript.ts"],"sourcesContent":["import { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\nimport { CardMessage } from '../../messages/webMessages/cardMessage';\nimport { PageMessage } from '../../messages/webMessages/pageMessage';\nimport { UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { AccountMessage } from '../../messages/webMessages/accountMessage';\nimport { ActivityMessage } from '../../messages/webMessages/activityMessage';\n\nexport const POST_MESSAGE_TO_SDK = `\n const postMessageToSDK = (message) => {\n if ('ReactNativeWebView' in window) {\n const messageString = JSON.stringify(message)\n window['ReactNativeWebView'].postMessage(messageString)\n }\n }\n`;\n\nexport const POST_PAGE_HEIGHT = `\n const postHeight = () => {\n setTimeout(() => {\n const height = window.document.documentElement.getBoundingClientRect().height\n postMessageToSDK({ type: \"${PageMessage.PAGE_HEIGHT}\", details: { height } })\n })\n }\n`;\n\nexport const LISTENERS = {\n isPageLoaded: `\n window.addEventListener('DOMContentLoaded', e => {\n postMessageToSDK({ type: \"${PageMessage.PAGE_LOADED}\" })\n });\n `,\n requestRendering: `\n window.addEventListener(\"${UnitMessage.UNIT_REQUEST_RENDERING}\", (e) => {\n postMessageToSDK({ type: \"${UnitMessage.UNIT_REQUEST_RENDERING}\", details: { data: e.detail }})\n });\n `,\n requestRefresh: `\n window.addEventListener(\"${UnitMessage.UNIT_REQUEST_REFRESH}\", (e) => {\n postMessageToSDK({ type: \"${UnitMessage.UNIT_REQUEST_REFRESH}\", details: e.detail })\n });\n `,\n onLoad: `\n window.addEventListener(\"${UnitMessage.UNIT_ON_LOAD}\", (e) => {\n postHeight()\n postMessageToSDK({ type: \"${UnitMessage.UNIT_ON_LOAD}\", details: e.detail })\n });\n `,\n requestCloseFlow: `\n window.addEventListener(\"${UnitMessage.UNIT_REQUEST_CLOSE_FLOW}\", (e) => {\n postMessageToSDK({ type: \"${UnitMessage.UNIT_REQUEST_CLOSE_FLOW}\" })\n });\n `,\n requestOpenLink: `\n window.addEventListener(\"${UnitMessage.UNIT_REQUEST_OPEN_LINK}\", (e) => {\n postMessageToSDK({ type: \"${UnitMessage.UNIT_REQUEST_OPEN_LINK}\", details: e.detail })\n });\n `,\n unitRequestDownload: `\n window.addEventListener(\"${UnitMessage.UNIT_REQUEST_DOWNLOAD}\", (e) => {\n postMessageToSDK({ type: \"${UnitMessage.UNIT_REQUEST_DOWNLOAD}\", details: e.detail })\n });\n `,\n cardActivated: `\n window.addEventListener(\"${CardMessage.CARD_ACTIVATED}\", (e) => {\n const response = e.detail\n response.then((data) => {\n postMessageToSDK({ type: \"${CardMessage.CARD_ACTIVATED}\", details: { card: data.data }})\n }).catch((e) => {\n console.log(e)\n })\n });\n `,\n cardStatusChange: `\n window.addEventListener(\"${CardMessage.CARD_STATUS_CHANGED}\", (e) => {\n const response = e.detail\n response.then((data) => {\n postMessageToSDK({ type: \"${CardMessage.CARD_STATUS_CHANGED}\", details: { card: data.data }})\n }).catch((e) => {\n console.log(e)\n })\n });\n `,\n unitRequestExternalSdk: `\n window.addEventListener(\"${UnitMessage.UNIT_REQUEST_EXTERNAL_SDK}\", (e) => {\n postMessageToSDK({ type: \"${UnitMessage.UNIT_REQUEST_EXTERNAL_SDK}\", details: e.detail })\n });\n`,\n unitPaymentCreated: `\n window.addEventListener(\"${PaymentMessage.PAYMENT_CREATED}\", (e) => {\n const response = e.detail\n response.then((data) => {\n postMessageToSDK({ type: \"${PaymentMessage.PAYMENT_CREATED}\", details: { data: data.data }})\n }).catch((e) => {\n console.log(e)\n })\n })
|
|
1
|
+
{"version":3,"names":["PaymentMessage","CardMessage","PageMessage","UnitMessage","AccountMessage","ActivityMessage","POST_MESSAGE_TO_SDK","POST_PAGE_HEIGHT","PAGE_HEIGHT","LISTENERS","isPageLoaded","PAGE_LOADED","requestRendering","UNIT_REQUEST_RENDERING","requestRefresh","UNIT_REQUEST_REFRESH","onLoad","UNIT_ON_LOAD","requestCloseFlow","UNIT_REQUEST_CLOSE_FLOW","requestOpenLink","UNIT_REQUEST_OPEN_LINK","unitRequestDownload","UNIT_REQUEST_DOWNLOAD","cardActivated","CARD_ACTIVATED","cardStatusChange","CARD_STATUS_CHANGED","unitRequestExternalSdk","UNIT_REQUEST_EXTERNAL_SDK","unitPaymentCreated","PAYMENT_CREATED","unitPlaidTokenCreated","UNIT_PLAID_TOKEN_CREATED","unitAccountChanged","UNIT_ACCOUNT_CHANGED","unitActivityFiltersChanged","UNIT_ACTIVITY_FILTERS_CHANGED","DISPATCH_RENDERING_EVENT","DISPATCH_REQUEST_REFRESH","DISPATCH_ACTIVITY_FILTER_CHANGED_EVENT","DISPATCH_PLAID_RESPONSE","UNIT_PLAID_RESPONSE","DISPATCH_OPEN_ACTIONS_MENU","DISPATCH_REQUEST_CARD_ACTION","DISPATCH_REQUEST_ACCOUNT_ACTION"],"sources":["bodyScript.ts"],"sourcesContent":["import { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\nimport { CardMessage } from '../../messages/webMessages/cardMessage';\nimport { PageMessage } from '../../messages/webMessages/pageMessage';\nimport { UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { AccountMessage } from '../../messages/webMessages/accountMessage';\nimport { ActivityMessage } from '../../messages/webMessages/activityMessage';\n\nexport const POST_MESSAGE_TO_SDK = `\n const postMessageToSDK = (message) => {\n if ('ReactNativeWebView' in window) {\n const messageString = JSON.stringify(message)\n window['ReactNativeWebView'].postMessage(messageString)\n }\n }\n`;\n\nexport const POST_PAGE_HEIGHT = `\n const postHeight = () => {\n setTimeout(() => {\n const height = window.document.documentElement.getBoundingClientRect().height\n postMessageToSDK({ type: \"${PageMessage.PAGE_HEIGHT}\", details: { height } })\n })\n }\n`;\n\nexport const LISTENERS = {\n isPageLoaded: `\n window.addEventListener('DOMContentLoaded', e => {\n postMessageToSDK({ type: \"${PageMessage.PAGE_LOADED}\" })\n });\n `,\n requestRendering: `\n window.addEventListener(\"${UnitMessage.UNIT_REQUEST_RENDERING}\", (e) => {\n postMessageToSDK({ type: \"${UnitMessage.UNIT_REQUEST_RENDERING}\", details: { data: e.detail }})\n });\n `,\n requestRefresh: `\n window.addEventListener(\"${UnitMessage.UNIT_REQUEST_REFRESH}\", (e) => {\n postMessageToSDK({ type: \"${UnitMessage.UNIT_REQUEST_REFRESH}\", details: e.detail })\n });\n `,\n onLoad: `\n window.addEventListener(\"${UnitMessage.UNIT_ON_LOAD}\", (e) => {\n postHeight()\n postMessageToSDK({ type: \"${UnitMessage.UNIT_ON_LOAD}\", details: e.detail })\n });\n `,\n requestCloseFlow: `\n window.addEventListener(\"${UnitMessage.UNIT_REQUEST_CLOSE_FLOW}\", (e) => {\n postMessageToSDK({ type: \"${UnitMessage.UNIT_REQUEST_CLOSE_FLOW}\" })\n });\n `,\n requestOpenLink: `\n window.addEventListener(\"${UnitMessage.UNIT_REQUEST_OPEN_LINK}\", (e) => {\n postMessageToSDK({ type: \"${UnitMessage.UNIT_REQUEST_OPEN_LINK}\", details: e.detail })\n });\n `,\n unitRequestDownload: `\n window.addEventListener(\"${UnitMessage.UNIT_REQUEST_DOWNLOAD}\", (e) => {\n postMessageToSDK({ type: \"${UnitMessage.UNIT_REQUEST_DOWNLOAD}\", details: e.detail })\n });\n `,\n cardActivated: `\n window.addEventListener(\"${CardMessage.CARD_ACTIVATED}\", (e) => {\n const response = e.detail\n response.then((data) => {\n postMessageToSDK({ type: \"${CardMessage.CARD_ACTIVATED}\", details: { card: data.data }})\n }).catch((e) => {\n console.log(e)\n })\n });\n `,\n cardStatusChange: `\n window.addEventListener(\"${CardMessage.CARD_STATUS_CHANGED}\", (e) => {\n const response = e.detail\n response.then((data) => {\n postMessageToSDK({ type: \"${CardMessage.CARD_STATUS_CHANGED}\", details: { card: data.data }})\n }).catch((e) => {\n console.log(e)\n })\n });\n `,\n unitRequestExternalSdk: `\n window.addEventListener(\"${UnitMessage.UNIT_REQUEST_EXTERNAL_SDK}\", (e) => {\n postMessageToSDK({ type: \"${UnitMessage.UNIT_REQUEST_EXTERNAL_SDK}\", details: e.detail })\n });\n `,\n unitPaymentCreated: `\n window.addEventListener(\"${PaymentMessage.PAYMENT_CREATED}\", (e) => {\n const response = e.detail\n response.then((data) => {\n postMessageToSDK({ type: \"${PaymentMessage.PAYMENT_CREATED}\", details: { data: data.data }})\n }).catch((e) => {\n console.log(e)\n })\n });\n `,\n unitPlaidTokenCreated: `\n window.addEventListener(\"${UnitMessage.UNIT_PLAID_TOKEN_CREATED}\", (e) => {\n const response = e.detail\n response.then((data) => {\n postMessageToSDK({ type: \"${UnitMessage.UNIT_PLAID_TOKEN_CREATED}\", details: { linkToken: data.data }})\n }).catch((e) => {\n console.log(e)\n })\n });\n `,\n unitAccountChanged: `\n window.addEventListener(\"${AccountMessage.UNIT_ACCOUNT_CHANGED}\", (e) => {\n const response = e.detail\n response.then((data) => {\n postMessageToSDK({ type: \"${AccountMessage.UNIT_ACCOUNT_CHANGED}\", details: { account: data.data }})\n }).catch((e) => {\n console.log(e)\n })\n });\n `,\n unitActivityFiltersChanged: `\n window.addEventListener(\"${ActivityMessage.UNIT_ACTIVITY_FILTERS_CHANGED}\", (e) => {\n postMessageToSDK({ type: \"${ActivityMessage.UNIT_ACTIVITY_FILTERS_CHANGED}\", details: e.detail })\n });\n `\n};\n\nexport const DISPATCH_RENDERING_EVENT = `\n const dispatchRenderingEvent = (details) => {\n const event = new CustomEvent(\"${UnitMessage.UNIT_REQUEST_RENDERING}\",{ detail: JSON.parse(details) })\n window.dispatchEvent(event)\n }\n`;\n\nexport const DISPATCH_REQUEST_REFRESH = `\n const dispatchRefreshEvent = (details) => {\n const event = new CustomEvent(\"${UnitMessage.UNIT_REQUEST_REFRESH}\",{ detail: JSON.parse(details) })\n window.dispatchEvent(event)\n }\n`;\n\nexport const DISPATCH_ACTIVITY_FILTER_CHANGED_EVENT = `\n const dispatchActivityFilterChangedEvent = (details) => {\n const event = new CustomEvent(\"${ActivityMessage.UNIT_ACTIVITY_FILTERS_CHANGED}\",{ detail: details });\n window.dispatchEvent(event);\n }\n`;\n\nexport const DISPATCH_PLAID_RESPONSE = `\n const dispatchPlaidEvent = (details) => {\n const event = new CustomEvent(\"${UnitMessage.UNIT_PLAID_RESPONSE}\",{ detail: details })\n window.dispatchEvent(event)\n }\n`;\n\nexport const DISPATCH_OPEN_ACTIONS_MENU = `\n const dispatchOpenActionsMenu = (componentName) => {\n document.querySelector(componentName).dispatchEvent(new CustomEvent(\"unitRequestOpenActionsMenu\"))\n }\n`;\n\nexport const DISPATCH_REQUEST_CARD_ACTION = `\n const dispatchRequestCardAction = (action) => {\n document.querySelector(\"unit-elements-card\").dispatchEvent(new CustomEvent(\"unitRequestCardAction\", {detail: {action: action}}))\n }\n`;\n\nexport const DISPATCH_REQUEST_ACCOUNT_ACTION = `\n const dispatchRequestAccountAction = (action) => {\n document.querySelector(\"unit-elements-account\").dispatchEvent(new CustomEvent(\"unitRequestAccountAction\", {detail: {action: action}}))\n }\n`;\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,4CAA4C;AAC3E,SAASC,WAAW,QAAQ,wCAAwC;AACpE,SAASC,WAAW,QAAQ,wCAAwC;AACpE,SAASC,WAAW,QAAQ,yCAAyC;AACrE,SAASC,cAAc,QAAQ,2CAA2C;AAC1E,SAASC,eAAe,QAAQ,4CAA4C;AAE5E,OAAO,MAAMC,mBAAmB,GAAI;AACpC;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAI;AACjC;AACA;AACA;AACA,kCAAkCL,WAAW,CAACM,WAAY;AAC1D;AACA;AACA,CAAC;AAED,OAAO,MAAMC,SAAS,GAAG;EACvBC,YAAY,EAAG;AACjB;AACA,kCAAkCR,WAAW,CAACS,WAAY;AAC1D;AACA,GAAG;EACDC,gBAAgB,EAAG;AACrB,+BAA+BT,WAAW,CAACU,sBAAuB;AAClE,kCAAkCV,WAAW,CAACU,sBAAuB;AACrE;AACA,GAAG;EACDC,cAAc,EAAG;AACnB,+BAA+BX,WAAW,CAACY,oBAAqB;AAChE,kCAAkCZ,WAAW,CAACY,oBAAqB;AACnE;AACA,GAAG;EACDC,MAAM,EAAG;AACX,+BAA+Bb,WAAW,CAACc,YAAa;AACxD;AACA,kCAAkCd,WAAW,CAACc,YAAa;AAC3D;AACA,GAAG;EACDC,gBAAgB,EAAG;AACrB,+BAA+Bf,WAAW,CAACgB,uBAAwB;AACnE,kCAAkChB,WAAW,CAACgB,uBAAwB;AACtE;AACA,GAAG;EACDC,eAAe,EAAG;AACpB,+BAA+BjB,WAAW,CAACkB,sBAAuB;AAClE,kCAAkClB,WAAW,CAACkB,sBAAuB;AACrE;AACA,GAAG;EACDC,mBAAmB,EAAG;AACxB,+BAA+BnB,WAAW,CAACoB,qBAAsB;AACjE,kCAAkCpB,WAAW,CAACoB,qBAAsB;AACpE;AACA,GAAG;EACDC,aAAa,EAAG;AAClB,+BAA+BvB,WAAW,CAACwB,cAAe;AAC1D;AACA;AACA,sCAAsCxB,WAAW,CAACwB,cAAe;AACjE;AACA;AACA;AACA;AACA,GAAG;EACDC,gBAAgB,EAAG;AACrB,+BAA+BzB,WAAW,CAAC0B,mBAAoB;AAC/D;AACA;AACA,oCAAoC1B,WAAW,CAAC0B,mBAAoB;AACpE;AACA;AACA;AACA;AACA,GAAG;EACDC,sBAAsB,EAAG;AAC3B,6BAA6BzB,WAAW,CAAC0B,yBAA0B;AACnE,gCAAgC1B,WAAW,CAAC0B,yBAA0B;AACtE;AACA,GAAG;EACDC,kBAAkB,EAAG;AACvB,6BAA6B9B,cAAc,CAAC+B,eAAgB;AAC5D;AACA;AACA,oCAAoC/B,cAAc,CAAC+B,eAAgB;AACnE;AACA;AACA;AACA;AACA,GAAG;EACDC,qBAAqB,EAAG;AAC1B,6BAA6B7B,WAAW,CAAC8B,wBAAyB;AAClE;AACA;AACA,kCAAkC9B,WAAW,CAAC8B,wBAAyB;AACvE;AACA;AACA;AACA;AACA,GAAG;EACDC,kBAAkB,EAAG;AACvB,+BAA+B9B,cAAc,CAAC+B,oBAAqB;AACnE;AACA;AACA,oCAAoC/B,cAAc,CAAC+B,oBAAqB;AACxE;AACA;AACA;AACA;AACA,GAAG;EACDC,0BAA0B,EAAG;AAC/B,+BAA+B/B,eAAe,CAACgC,6BAA8B;AAC7E,kCAAkChC,eAAe,CAACgC,6BAA8B;AAChF;AACA;AACA,CAAC;AAED,OAAO,MAAMC,wBAAwB,GAAI;AACzC;AACA,qCAAqCnC,WAAW,CAACU,sBAAuB;AACxE;AACA;AACA,CAAC;AAED,OAAO,MAAM0B,wBAAwB,GAAI;AACzC;AACA,qCAAqCpC,WAAW,CAACY,oBAAqB;AACtE;AACA;AACA,CAAC;AAED,OAAO,MAAMyB,sCAAsC,GAAI;AACvD;AACA,uCAAuCnC,eAAe,CAACgC,6BAA8B;AACrF;AACA;AACA,CAAC;AAED,OAAO,MAAMI,uBAAuB,GAAI;AACxC;AACA,qCAAqCtC,WAAW,CAACuC,mBAAoB;AACrE;AACA;AACA,CAAC;AAED,OAAO,MAAMC,0BAA0B,GAAI;AAC3C;AACA;AACA;AACA,CAAC;AAED,OAAO,MAAMC,4BAA4B,GAAI;AAC7C;AACA;AACA;AACA,CAAC;AAED,OAAO,MAAMC,+BAA+B,GAAI;AAChD;AACA;AACA;AACA,CAAC"}
|
|
@@ -16,11 +16,13 @@ export const UNIT_SCRIPT_URL = {
|
|
|
16
16
|
export class UnitSDK {}
|
|
17
17
|
_defineProperty(UnitSDK, "env", void 0);
|
|
18
18
|
_defineProperty(UnitSDK, "theme", void 0);
|
|
19
|
+
_defineProperty(UnitSDK, "language", void 0);
|
|
19
20
|
_defineProperty(UnitSDK, "signedNonce", void 0);
|
|
20
|
-
_defineProperty(UnitSDK, "init", async (env, theme) => {
|
|
21
|
+
_defineProperty(UnitSDK, "init", async (env, theme, language) => {
|
|
21
22
|
try {
|
|
22
23
|
UnitSDK.env = env;
|
|
23
24
|
UnitSDK.theme = theme;
|
|
25
|
+
UnitSDK.language = language;
|
|
24
26
|
await fetchUnitScript();
|
|
25
27
|
EventBus.Instance.event(SDKMessage.IS_SDK_INITIALIZED, {});
|
|
26
28
|
} catch (e) {
|
|
@@ -36,6 +38,9 @@ _defineProperty(UnitSDK, "getEnv", () => {
|
|
|
36
38
|
_defineProperty(UnitSDK, "getTheme", () => {
|
|
37
39
|
return UnitSDK.theme;
|
|
38
40
|
});
|
|
41
|
+
_defineProperty(UnitSDK, "getLanguage", () => {
|
|
42
|
+
return UnitSDK.language;
|
|
43
|
+
});
|
|
39
44
|
_defineProperty(UnitSDK, "getSignedNonce", () => {
|
|
40
45
|
return UnitSDK.signedNonce;
|
|
41
46
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["EventBus","SDKMessage","fetchUnitScript","UNEnvironment","UNIT_SCRIPT_URL","sandbox","production","UnitSDK","_defineProperty","env","theme","Instance","event","IS_SDK_INITIALIZED","e","console","log","signedNonce"],"sources":["UnitSdkManager.ts"],"sourcesContent":["import EventBus from '../helpers/EventBus';\nimport { SDKMessage } from '../messages/nativeMessages/sdkMessage';\nimport { fetchUnitScript } from './UnitSdk.api';\n\nexport enum UNEnvironment {\n sandbox = 'sandbox',\n production = 'production'\n}\n\nexport const UNIT_SCRIPT_URL = {\n [UNEnvironment.sandbox]: 'https://ui.s.unit.sh/components.js',\n [UNEnvironment.production]: 'https://ui.unit.co/components.js'\n};\nexport class UnitSDK {\n protected static env?: UNEnvironment;\n protected static theme?: string;\n protected static signedNonce?: string;\n\n public static init = async (env: UNEnvironment, theme?: string) => {\n try {\n this.env = env;\n this.theme = theme;\n await fetchUnitScript();\n EventBus.Instance.event(SDKMessage.IS_SDK_INITIALIZED, {});\n } catch (e) {\n console.log(e);\n }\n };\n\n public static setSignedNonce = (signedNonce: string) => {\n this.signedNonce = signedNonce;\n };\n\n public static getEnv = () => {\n return this.env;\n };\n\n public static getTheme = () => {\n return this.theme;\n };\n\n public static getSignedNonce = () => {\n return this.signedNonce;\n };\n}\n"],"mappings":";;;AAAA,OAAOA,QAAQ,MAAM,qBAAqB;AAC1C,SAASC,UAAU,QAAQ,uCAAuC;AAClE,SAASC,eAAe,QAAQ,eAAe;AAE/C,WAAYC,aAAa;AAGxB,WAHWA,aAAa;EAAbA,aAAa;EAAbA,aAAa;AAAA,GAAbA,aAAa,KAAbA,aAAa;AAKzB,OAAO,MAAMC,eAAe,GAAG;EAC7B,CAACD,aAAa,CAACE,OAAO,GAAG,oCAAoC;EAC7D,CAACF,aAAa,CAACG,UAAU,GAAG;AAC9B,CAAC;AACD,OAAO,MAAMC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"names":["EventBus","SDKMessage","fetchUnitScript","UNEnvironment","UNIT_SCRIPT_URL","sandbox","production","UnitSDK","_defineProperty","env","theme","language","Instance","event","IS_SDK_INITIALIZED","e","console","log","signedNonce"],"sources":["UnitSdkManager.ts"],"sourcesContent":["import EventBus from '../helpers/EventBus';\nimport { SDKMessage } from '../messages/nativeMessages/sdkMessage';\nimport { fetchUnitScript } from './UnitSdk.api';\n\nexport enum UNEnvironment {\n sandbox = 'sandbox',\n production = 'production'\n}\n\nexport const UNIT_SCRIPT_URL = {\n [UNEnvironment.sandbox]: 'https://ui.s.unit.sh/components.js',\n [UNEnvironment.production]: 'https://ui.unit.co/components.js'\n};\nexport class UnitSDK {\n protected static env?: UNEnvironment;\n protected static theme?: string;\n protected static language?: string;\n protected static signedNonce?: string;\n\n public static init = async (env: UNEnvironment, theme?: string, language?: string) => {\n try {\n this.env = env;\n this.theme = theme;\n this.language = language;\n await fetchUnitScript();\n EventBus.Instance.event(SDKMessage.IS_SDK_INITIALIZED, {});\n } catch (e) {\n console.log(e);\n }\n };\n\n public static setSignedNonce = (signedNonce: string) => {\n this.signedNonce = signedNonce;\n };\n\n public static getEnv = () => {\n return this.env;\n };\n\n public static getTheme = () => {\n return this.theme;\n };\n\n public static getLanguage = () => {\n return this.language;\n };\n\n public static getSignedNonce = () => {\n return this.signedNonce;\n };\n}\n"],"mappings":";;;AAAA,OAAOA,QAAQ,MAAM,qBAAqB;AAC1C,SAASC,UAAU,QAAQ,uCAAuC;AAClE,SAASC,eAAe,QAAQ,eAAe;AAE/C,WAAYC,aAAa;AAGxB,WAHWA,aAAa;EAAbA,aAAa;EAAbA,aAAa;AAAA,GAAbA,aAAa,KAAbA,aAAa;AAKzB,OAAO,MAAMC,eAAe,GAAG;EAC7B,CAACD,aAAa,CAACE,OAAO,GAAG,oCAAoC;EAC7D,CAACF,aAAa,CAACG,UAAU,GAAG;AAC9B,CAAC;AACD,OAAO,MAAMC,OAAO,CAAC;AAqCpBC,eAAA,CArCYD,OAAO;AAAAC,eAAA,CAAPD,OAAO;AAAAC,eAAA,CAAPD,OAAO;AAAAC,eAAA,CAAPD,OAAO;AAAAC,eAAA,CAAPD,OAAO,UAMG,OAAOE,GAAkB,EAAEC,KAAc,EAAEC,QAAiB,KAAK;EACpF,IAAI;IAPKJ,OAAO,CAQTE,GAAG,GAAGA,GAAG;IARPF,OAAO,CASTG,KAAK,GAAGA,KAAK;IATXH,OAAO,CAUTI,QAAQ,GAAGA,QAAQ;IACxB,MAAMT,eAAe,EAAE;IACvBF,QAAQ,CAACY,QAAQ,CAACC,KAAK,CAACZ,UAAU,CAACa,kBAAkB,EAAE,CAAC,CAAC,CAAC;EAC5D,CAAC,CAAC,OAAOC,CAAC,EAAE;IACVC,OAAO,CAACC,GAAG,CAACF,CAAC,CAAC;EAChB;AACF,CAAC;AAAAP,eAAA,CAhBUD,OAAO,oBAkBcW,WAAmB,IAAK;EAlB7CX,OAAO,CAmBXW,WAAW,GAAGA,WAAW;AAChC,CAAC;AAAAV,eAAA,CApBUD,OAAO,YAsBK,MAAM;EAC3B,OAvBSA,OAAO,CAuBJE,GAAG;AACjB,CAAC;AAAAD,eAAA,CAxBUD,OAAO,cA0BO,MAAM;EAC7B,OA3BSA,OAAO,CA2BJG,KAAK;AACnB,CAAC;AAAAF,eAAA,CA5BUD,OAAO,iBA8BU,MAAM;EAChC,OA/BSA,OAAO,CA+BJI,QAAQ;AACtB,CAAC;AAAAH,eAAA,CAhCUD,OAAO,oBAkCa,MAAM;EACnC,OAnCSA,OAAO,CAmCJW,WAAW;AACzB,CAAC"}
|
|
@@ -29,6 +29,7 @@ export const WebComponent = /*#__PURE__*/React.forwardRef(function WebComponent(
|
|
|
29
29
|
const [unitScript, setUnitScript] = useState(globalUnitScript);
|
|
30
30
|
const [sourceHtml, setSourceHtml] = useState(null);
|
|
31
31
|
const [componentCurrentTheme, setComponentCurrentTheme] = useState(props.theme ?? UnitSDK.getTheme());
|
|
32
|
+
const [componentCurrentLanguage, setComponentCurrentLanguage] = useState(props.language ?? UnitSDK.getLanguage());
|
|
32
33
|
const [baseName, setBaseName] = useState();
|
|
33
34
|
const width = props.width ?? '100%';
|
|
34
35
|
const updateUnitScript = data => {
|
|
@@ -36,6 +37,7 @@ export const WebComponent = /*#__PURE__*/React.forwardRef(function WebComponent(
|
|
|
36
37
|
};
|
|
37
38
|
const updateInitializedParams = () => {
|
|
38
39
|
setComponentCurrentTheme(props.theme ?? UnitSDK.getTheme());
|
|
40
|
+
setComponentCurrentLanguage(props.language ?? UnitSDK.getLanguage());
|
|
39
41
|
};
|
|
40
42
|
useListenerToBus({
|
|
41
43
|
busEventKey: SDKMessage.IS_SCRIPT_FETCHED,
|
|
@@ -68,11 +70,13 @@ export const WebComponent = /*#__PURE__*/React.forwardRef(function WebComponent(
|
|
|
68
70
|
fetchUnitScript();
|
|
69
71
|
return;
|
|
70
72
|
}
|
|
71
|
-
const
|
|
73
|
+
const themeParam = componentCurrentTheme ? ` theme="${componentCurrentTheme}"` : '';
|
|
74
|
+
const languageParam = componentCurrentLanguage ? ` language="${componentCurrentLanguage}"` : '';
|
|
75
|
+
const componentParams = (props.params || '') + themeParam + languageParam;
|
|
72
76
|
let newHtml = html.replace(HTML_PLACEHOLDER.BODY, getHtmlBody(props.type.valueOf(), componentParams, props.presentationMode));
|
|
73
77
|
newHtml = newHtml.replace(HTML_PLACEHOLDER.SCRIPT_FROM_NATIVE, props.script || '');
|
|
74
78
|
setSourceHtml(newHtml);
|
|
75
|
-
}, [props.params, unitScript, props.presentationMode, componentCurrentTheme, props.script]);
|
|
79
|
+
}, [props.params, unitScript, props.presentationMode, componentCurrentTheme, componentCurrentLanguage, props.script]);
|
|
76
80
|
const onMessage = e => {
|
|
77
81
|
const message = JSON.parse(e.nativeEvent.data);
|
|
78
82
|
switch (message.type) {
|
|
@@ -112,7 +116,8 @@ export const WebComponent = /*#__PURE__*/React.forwardRef(function WebComponent(
|
|
|
112
116
|
style: {
|
|
113
117
|
width: width,
|
|
114
118
|
flex: 1,
|
|
115
|
-
opacity: 0.99
|
|
119
|
+
opacity: 0.99,
|
|
120
|
+
backgroundColor: "transparent"
|
|
116
121
|
},
|
|
117
122
|
source: {
|
|
118
123
|
html: sourceHtml,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","useState","NativeModules","Platform","WebView","EventBus","html","HTML_PLACEHOLDER","UnitMessage","useListenerToBus","getHtmlBody","fetchUnitScript","globalUnitScript","UnitSDK","SDKMessage","handleRequestDownload","UNAppInfo","WebComponentType","WebComponent","forwardRef","props","webRef","unitScript","setUnitScript","sourceHtml","setSourceHtml","componentCurrentTheme","setComponentCurrentTheme","theme","getTheme","baseName","setBaseName","width","updateUnitScript","data","updateInitializedParams","busEventKey","IS_SCRIPT_FETCHED","action","IS_SDK_INITIALIZED","getAppName","OS","name","getBundleName","replace","error","console","componentParams","params","newHtml","BODY","type","valueOf","presentationMode","SCRIPT_FROM_NATIVE","script","onMessage","e","message","JSON","parse","nativeEvent","UNIT_REQUEST_REFRESH","details","Instance","event","UNIT_REQUEST_DOWNLOAD","UNIT_REQUEST_CLOSE_FLOW","_onScroll","handleScroll","createElement","ref","originWhitelist","mediaPlaybackRequiresUserAction","allowsInlineMediaPlayback","cacheEnabled","scrollEnabled","isScrollable","nestedScrollEnabled","onScroll","overScrollMode","injectedJavaScript","style","flex","opacity","source","baseUrl","androidHardwareAccelerationDisabled"],"sources":["WebComponent.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useEffect, useState } from 'react';\nimport { NativeModules, Platform } from 'react-native';\nimport { WebView, WebViewMessageEvent } from 'react-native-webview';\nimport EventBus from '../helpers/EventBus';\nimport html, { HTML_PLACEHOLDER } from './html';\nimport { RequestRefreshEvent, UnitMessage, RequestDownloadEvent } from '../messages/webMessages/unitMessages';\nimport { useListenerToBus } from '../hooks/listenerToBus';\nimport { getHtmlBody, PresentationMode } from '../scripts/html/bodyHtml';\nimport { fetchUnitScript, globalUnitScript } from '../unitSdkManager/UnitSdk.api';\nimport { UnitSDK } from '../unitSdkManager/UnitSdkManager';\nimport type { WebViewMessage } from '../messages/webMessages';\nimport { SDKMessage, SdkScriptFetched } from '../messages/nativeMessages/sdkMessage';\nimport { handleRequestDownload } from './WebComponent.utils';\n\nconst { UNAppInfo } = NativeModules;\n\nexport interface WebComponentProps {\n type: WebComponentType;\n presentationMode?: PresentationMode,\n params?: string;\n theme?: string;\n onMessage?: (message: WebViewMessage) => void;\n script?: string;\n isScrollable?: boolean,\n nestedScrollEnabled?: boolean,\n handleScroll?: (event: any) => void,\n width?: number;\n}\n\nexport enum WebComponentType {\n card = 'unit-elements-card',\n bookPayment = 'unit-elements-book-payment',\n activity = 'unit-elements-activity',\n slot = 'unit-elements-sdk-slot',\n account = 'unit-elements-account',\n checkDeposit = 'unit-elements-check-deposit',\n achDebitPayment = 'unit-elements-ach-debit-payment',\n achCreditPayment = 'unit-elements-ach-credit-payment'\n}\n\nexport const WebComponent = React.forwardRef<WebView, WebComponentProps>(function WebComponent(props, webRef) {\n const [unitScript, setUnitScript] = useState<string | undefined>(globalUnitScript);\n const [sourceHtml, setSourceHtml] = useState<string | null>(null);\n const [componentCurrentTheme, setComponentCurrentTheme] = useState<string | undefined>(props.theme ?? UnitSDK.getTheme());\n const [baseName, setBaseName] = useState<string>();\n const width = props.width ?? '100%';\n\n const updateUnitScript = (data: SdkScriptFetched) => {\n setUnitScript(data.unitScript);\n };\n\n const updateInitializedParams = () => {\n setComponentCurrentTheme(props.theme ?? UnitSDK.getTheme());\n };\n\n useListenerToBus({ busEventKey: SDKMessage.IS_SCRIPT_FETCHED, action: updateUnitScript });\n useListenerToBus({ busEventKey: SDKMessage.IS_SDK_INITIALIZED, action: updateInitializedParams });\n\n useEffect(() => {\n\n const getAppName = async () => {\n // For iOS, we extend the app name from the HTML to display a prettier access request message.\n // On Android, there is no request message sent from HTML.\n try {\n if (Platform.OS == 'ios') {\n const name = await UNAppInfo.getBundleName();\n setBaseName(name.replace(/ /g, '-'));\n } else { // android\n setBaseName('unit');\n }\n } catch (error: any) {\n console.error(error);\n }\n };\n\n getAppName();\n }, []);\n\n useEffect(() => {\n if (!unitScript) {\n fetchUnitScript();\n return;\n }\n\n const componentParams = (props.params || '') + (componentCurrentTheme ? ` theme=\"${componentCurrentTheme}\"` : '');\n let newHtml = html.replace(HTML_PLACEHOLDER.BODY, getHtmlBody(props.type.valueOf(), componentParams, props.presentationMode));\n newHtml = newHtml.replace(HTML_PLACEHOLDER.SCRIPT_FROM_NATIVE, props.script || '');\n setSourceHtml(newHtml);\n }, [props.params, unitScript, props.presentationMode, componentCurrentTheme, props.script]);\n\n const onMessage = (e: WebViewMessageEvent) => {\n const message = JSON.parse(e.nativeEvent.data) as WebViewMessage;\n switch (message.type) {\n case UnitMessage.UNIT_REQUEST_REFRESH:\n message.details &&\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_REFRESH, message.details as RequestRefreshEvent);\n break;\n case UnitMessage.UNIT_REQUEST_DOWNLOAD:\n message.details &&\n handleRequestDownload(message.details as RequestDownloadEvent, () => {\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_CLOSE_FLOW);\n });\n break;\n default:\n props.onMessage && props.onMessage(message);\n }\n };\n\n if (!sourceHtml) return null;\n\n const _onScroll = (event: any) => {\n if (props.handleScroll) {\n props.handleScroll(event);\n }\n\n return null;\n };\n\n if (!baseName) {\n return null;\n }\n\n return (\n <WebView\n ref={webRef}\n originWhitelist={['*']}\n mediaPlaybackRequiresUserAction={false}\n allowsInlineMediaPlayback={true}\n cacheEnabled={false}\n scrollEnabled={props.isScrollable}\n nestedScrollEnabled={props.nestedScrollEnabled}\n onScroll={_onScroll}\n overScrollMode=\"never\"\n injectedJavaScript={unitScript}\n style={{ width: width, flex: 1, opacity: 0.99}}\n source={{ html: sourceHtml, baseUrl: `https://${baseName}` }}\n onMessage={onMessage}\n androidHardwareAccelerationDisabled\n />\n );\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","useEffect","useState","NativeModules","Platform","WebView","EventBus","html","HTML_PLACEHOLDER","UnitMessage","useListenerToBus","getHtmlBody","fetchUnitScript","globalUnitScript","UnitSDK","SDKMessage","handleRequestDownload","UNAppInfo","WebComponentType","WebComponent","forwardRef","props","webRef","unitScript","setUnitScript","sourceHtml","setSourceHtml","componentCurrentTheme","setComponentCurrentTheme","theme","getTheme","componentCurrentLanguage","setComponentCurrentLanguage","language","getLanguage","baseName","setBaseName","width","updateUnitScript","data","updateInitializedParams","busEventKey","IS_SCRIPT_FETCHED","action","IS_SDK_INITIALIZED","getAppName","OS","name","getBundleName","replace","error","console","themeParam","languageParam","componentParams","params","newHtml","BODY","type","valueOf","presentationMode","SCRIPT_FROM_NATIVE","script","onMessage","e","message","JSON","parse","nativeEvent","UNIT_REQUEST_REFRESH","details","Instance","event","UNIT_REQUEST_DOWNLOAD","UNIT_REQUEST_CLOSE_FLOW","_onScroll","handleScroll","createElement","ref","originWhitelist","mediaPlaybackRequiresUserAction","allowsInlineMediaPlayback","cacheEnabled","scrollEnabled","isScrollable","nestedScrollEnabled","onScroll","overScrollMode","injectedJavaScript","style","flex","opacity","backgroundColor","source","baseUrl","androidHardwareAccelerationDisabled"],"sources":["WebComponent.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useEffect, useState } from 'react';\nimport { NativeModules, Platform } from 'react-native';\nimport { WebView, WebViewMessageEvent } from 'react-native-webview';\nimport EventBus from '../helpers/EventBus';\nimport html, { HTML_PLACEHOLDER } from './html';\nimport { RequestRefreshEvent, UnitMessage, RequestDownloadEvent } from '../messages/webMessages/unitMessages';\nimport { useListenerToBus } from '../hooks/listenerToBus';\nimport { getHtmlBody, PresentationMode } from '../scripts/html/bodyHtml';\nimport { fetchUnitScript, globalUnitScript } from '../unitSdkManager/UnitSdk.api';\nimport { UnitSDK } from '../unitSdkManager/UnitSdkManager';\nimport type { WebViewMessage } from '../messages/webMessages';\nimport { SDKMessage, SdkScriptFetched } from '../messages/nativeMessages/sdkMessage';\nimport { handleRequestDownload } from './WebComponent.utils';\n\nconst { UNAppInfo } = NativeModules;\n\nexport interface WebComponentProps {\n type: WebComponentType;\n presentationMode?: PresentationMode,\n params?: string;\n theme?: string;\n language?: string;\n onMessage?: (message: WebViewMessage) => void;\n script?: string;\n isScrollable?: boolean,\n nestedScrollEnabled?: boolean,\n handleScroll?: (event: any) => void,\n width?: number;\n}\n\nexport enum WebComponentType {\n card = 'unit-elements-card',\n bookPayment = 'unit-elements-book-payment',\n activity = 'unit-elements-activity',\n slot = 'unit-elements-sdk-slot',\n account = 'unit-elements-account',\n checkDeposit = 'unit-elements-check-deposit',\n achDebitPayment = 'unit-elements-ach-debit-payment',\n achCreditPayment = 'unit-elements-ach-credit-payment'\n}\n\nexport const WebComponent = React.forwardRef<WebView, WebComponentProps>(function WebComponent(props, webRef) {\n const [unitScript, setUnitScript] = useState<string | undefined>(globalUnitScript);\n const [sourceHtml, setSourceHtml] = useState<string | null>(null);\n const [componentCurrentTheme, setComponentCurrentTheme] = useState<string | undefined>(props.theme ?? UnitSDK.getTheme());\n const [componentCurrentLanguage, setComponentCurrentLanguage] = useState<string | undefined>(props.language ?? UnitSDK.getLanguage());\n const [baseName, setBaseName] = useState<string>();\n const width = props.width ?? '100%';\n\n const updateUnitScript = (data: SdkScriptFetched) => {\n setUnitScript(data.unitScript);\n };\n\n const updateInitializedParams = () => {\n setComponentCurrentTheme(props.theme ?? UnitSDK.getTheme());\n setComponentCurrentLanguage(props.language ?? UnitSDK.getLanguage());\n };\n\n useListenerToBus({ busEventKey: SDKMessage.IS_SCRIPT_FETCHED, action: updateUnitScript });\n useListenerToBus({ busEventKey: SDKMessage.IS_SDK_INITIALIZED, action: updateInitializedParams });\n\n useEffect(() => {\n\n const getAppName = async () => {\n // For iOS, we extend the app name from the HTML to display a prettier access request message.\n // On Android, there is no request message sent from HTML.\n try {\n if (Platform.OS == 'ios') {\n const name = await UNAppInfo.getBundleName();\n setBaseName(name.replace(/ /g, '-'));\n } else { // android\n setBaseName('unit');\n }\n } catch (error: any) {\n console.error(error);\n }\n };\n\n getAppName();\n }, []);\n\n useEffect(() => {\n if (!unitScript) {\n fetchUnitScript();\n return;\n }\n\n const themeParam = componentCurrentTheme ? ` theme=\"${componentCurrentTheme}\"` : '';\n const languageParam = componentCurrentLanguage ? ` language=\"${componentCurrentLanguage}\"` : '';\n\n const componentParams = (props.params || '') + themeParam + languageParam;\n let newHtml = html.replace(HTML_PLACEHOLDER.BODY, getHtmlBody(props.type.valueOf(), componentParams, props.presentationMode));\n newHtml = newHtml.replace(HTML_PLACEHOLDER.SCRIPT_FROM_NATIVE, props.script || '');\n setSourceHtml(newHtml);\n }, [props.params, unitScript, props.presentationMode, componentCurrentTheme, componentCurrentLanguage, props.script]);\n\n const onMessage = (e: WebViewMessageEvent) => {\n const message = JSON.parse(e.nativeEvent.data) as WebViewMessage;\n switch (message.type) {\n case UnitMessage.UNIT_REQUEST_REFRESH:\n message.details &&\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_REFRESH, message.details as RequestRefreshEvent);\n break;\n case UnitMessage.UNIT_REQUEST_DOWNLOAD:\n message.details &&\n handleRequestDownload(message.details as RequestDownloadEvent, () => {\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_CLOSE_FLOW);\n });\n break;\n default:\n props.onMessage && props.onMessage(message);\n }\n };\n\n if (!sourceHtml) return null;\n\n const _onScroll = (event: any) => {\n if (props.handleScroll) {\n props.handleScroll(event);\n }\n\n return null;\n };\n\n if (!baseName) {\n return null;\n }\n\n return (\n <WebView\n ref={webRef}\n originWhitelist={['*']}\n mediaPlaybackRequiresUserAction={false}\n allowsInlineMediaPlayback={true}\n cacheEnabled={false}\n scrollEnabled={props.isScrollable}\n nestedScrollEnabled={props.nestedScrollEnabled}\n onScroll={_onScroll}\n overScrollMode=\"never\"\n injectedJavaScript={unitScript}\n style={{ width: width, flex: 1, opacity: 0.99, backgroundColor: \"transparent\" }}\n source={{ html: sourceHtml, baseUrl: `https://${baseName}` }}\n onMessage={onMessage}\n androidHardwareAccelerationDisabled\n />\n );\n});\n"],"mappings":"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"}
|
|
@@ -3,8 +3,10 @@ export interface UNACHCreditComponentProps {
|
|
|
3
3
|
accountId: string;
|
|
4
4
|
customerToken: string;
|
|
5
5
|
theme?: string;
|
|
6
|
+
language?: string;
|
|
6
7
|
isAutoFocus?: boolean;
|
|
7
8
|
fee?: number;
|
|
9
|
+
withPlaid?: boolean;
|
|
8
10
|
onPaymentCreated?: (data: UNACHData) => void;
|
|
9
11
|
onLoad?: (response: UNOnLoadResponse<UNACHOnLoadData>) => void;
|
|
10
12
|
}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
1
|
import type { UNACHCreditComponentProps } from './UNACHCreditComponent';
|
|
2
|
+
import type WebView from 'react-native-webview';
|
|
3
|
+
import type { LinkSuccess } from 'react-native-plaid-link-sdk';
|
|
2
4
|
export declare const getACHCreditParams: (props: UNACHCreditComponentProps) => string;
|
|
3
|
-
export declare const getACHCreditScript: () => string;
|
|
5
|
+
export declare const getACHCreditScript: (appPackageName?: string) => string;
|
|
6
|
+
export declare const injectUnitPlaidResponse: (currentWeb: WebView | null, success: LinkSuccess) => void;
|
|
@@ -2,6 +2,5 @@ import type { UNACHDebitComponentProps } from './UNACHDebitComponent';
|
|
|
2
2
|
import type WebView from 'react-native-webview';
|
|
3
3
|
import type { LinkSuccess } from 'react-native-plaid-link-sdk';
|
|
4
4
|
export declare const getACHDebitParams: (props: UNACHDebitComponentProps) => string;
|
|
5
|
-
export declare const getAndroidPackageName: () => Promise<any>;
|
|
6
5
|
export declare const getACHDebitScript: (androidPackageName?: string) => string;
|
|
7
6
|
export declare const injectUnitPlaidResponse: (currentWeb: WebView | null, success: LinkSuccess) => void;
|
|
@@ -6,6 +6,7 @@ export interface UNAccountComponentProps {
|
|
|
6
6
|
accountId?: string;
|
|
7
7
|
customerToken: string;
|
|
8
8
|
theme?: string;
|
|
9
|
+
language?: string;
|
|
9
10
|
hideActionsMenuButton?: boolean;
|
|
10
11
|
hideSelectionMenuButton?: boolean;
|
|
11
12
|
onLoad?: (response: UNOnLoadResponse<[UNAccountData]>) => void;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import type { UNOnLoadResponse } from '../../sharedTypes';
|
|
2
2
|
import type { UNActivityOnLoadData } from '../../sharedTypes/activity.types';
|
|
3
3
|
export interface UNActivityComponentProps {
|
|
4
|
-
accountId: string;
|
|
5
4
|
customerToken: string;
|
|
5
|
+
accountId?: string;
|
|
6
6
|
queryFilter?: string;
|
|
7
7
|
theme?: string;
|
|
8
|
+
language?: string;
|
|
8
9
|
hideFilterButton?: boolean;
|
|
9
10
|
onLoad?: (response: UNOnLoadResponse<UNActivityOnLoadData>) => void;
|
|
10
11
|
}
|
|
@@ -6,6 +6,8 @@ export interface UNBookPaymentComponentProps {
|
|
|
6
6
|
counterPartyAccountId: string;
|
|
7
7
|
counterPartyName: string;
|
|
8
8
|
theme?: string;
|
|
9
|
+
language?: string;
|
|
10
|
+
isAutoFocus?: boolean;
|
|
9
11
|
onPaymentCreated?: (data: UNBookPaymentData) => void;
|
|
10
12
|
onLoad?: (response: UNOnLoadResponse<UNAccountData>) => void;
|
|
11
13
|
}
|
|
@@ -4,7 +4,9 @@ import type { NativeModules } from 'react-native';
|
|
|
4
4
|
export interface UNCardComponentProps {
|
|
5
5
|
cardId: string;
|
|
6
6
|
customerToken: string;
|
|
7
|
+
learnMoreUrl?: string;
|
|
7
8
|
theme?: string;
|
|
9
|
+
language?: string;
|
|
8
10
|
hideActionsMenuButton?: boolean;
|
|
9
11
|
hideCardTitle?: boolean;
|
|
10
12
|
hideSensitiveDataButton?: boolean;
|
|
@@ -5,6 +5,7 @@ export interface UNCheckDepositComponentProps {
|
|
|
5
5
|
fee: number;
|
|
6
6
|
customerToken: string;
|
|
7
7
|
theme?: string;
|
|
8
|
+
language?: string;
|
|
8
9
|
onLoad?: (response: UNOnLoadResponse<UNAccountData>) => void;
|
|
9
10
|
onDepositCreated?: (checkData: UNCheckDepositData) => void;
|
|
10
11
|
onRestartRequest?: (checkData: UNCheckDepositData) => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getAndroidPackageName: () => Promise<any>;
|