react-native-unit-components 1.5.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.
Files changed (74) hide show
  1. package/ios/UNAppInfo/UNAppInfo.swift +5 -1
  2. package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.js +44 -2
  3. package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.js.map +1 -1
  4. package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.utils.js +18 -11
  5. package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.utils.js.map +1 -1
  6. package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.js +3 -5
  7. package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.js.map +1 -1
  8. package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.utils.js +2 -23
  9. package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.utils.js.map +1 -1
  10. package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.utils.js +2 -1
  11. package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.utils.js.map +1 -1
  12. package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
  13. package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.utils.js +2 -1
  14. package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.utils.js.map +1 -1
  15. package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
  16. package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js +1 -0
  17. package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js.map +1 -1
  18. package/lib/commonjs/components/UNCardComponent/UNCardComponent.js.map +1 -1
  19. package/lib/commonjs/components/UNCardComponent/UNCardComponent.utils.js +1 -0
  20. package/lib/commonjs/components/UNCardComponent/UNCardComponent.utils.js.map +1 -1
  21. package/lib/commonjs/components/utils/nativeModulesInfo.js +20 -0
  22. package/lib/commonjs/components/utils/nativeModulesInfo.js.map +1 -0
  23. package/lib/commonjs/scripts/html/bodyScript.js +13 -2
  24. package/lib/commonjs/scripts/html/bodyScript.js.map +1 -1
  25. package/lib/commonjs/webComponent/WebComponent.js +2 -1
  26. package/lib/commonjs/webComponent/WebComponent.js.map +1 -1
  27. package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.js +47 -5
  28. package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.js.map +1 -1
  29. package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.utils.js +16 -10
  30. package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.utils.js.map +1 -1
  31. package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.js +3 -5
  32. package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.js.map +1 -1
  33. package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.utils.js +1 -21
  34. package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.utils.js.map +1 -1
  35. package/lib/module/components/UNAccountComponent/UNAccountComponent.utils.js +2 -1
  36. package/lib/module/components/UNAccountComponent/UNAccountComponent.utils.js.map +1 -1
  37. package/lib/module/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
  38. package/lib/module/components/UNActivityComponent/UNActivityComponent.utils.js +2 -1
  39. package/lib/module/components/UNActivityComponent/UNActivityComponent.utils.js.map +1 -1
  40. package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
  41. package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js +1 -0
  42. package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.js.map +1 -1
  43. package/lib/module/components/UNCardComponent/UNCardComponent.js.map +1 -1
  44. package/lib/module/components/UNCardComponent/UNCardComponent.utils.js +1 -0
  45. package/lib/module/components/UNCardComponent/UNCardComponent.utils.js.map +1 -1
  46. package/lib/module/components/utils/nativeModulesInfo.js +13 -0
  47. package/lib/module/components/utils/nativeModulesInfo.js.map +1 -0
  48. package/lib/module/scripts/html/bodyScript.js +13 -2
  49. package/lib/module/scripts/html/bodyScript.js.map +1 -1
  50. package/lib/module/webComponent/WebComponent.js +2 -1
  51. package/lib/module/webComponent/WebComponent.js.map +1 -1
  52. package/lib/typescript/components/UNACHCreditComponent/UNACHCreditComponent.d.ts +1 -0
  53. package/lib/typescript/components/UNACHCreditComponent/UNACHCreditComponent.utils.d.ts +4 -1
  54. package/lib/typescript/components/UNACHDebitComponent/UNACHDebitComponent.utils.d.ts +0 -1
  55. package/lib/typescript/components/UNActivityComponent/UNActivityComponent.d.ts +1 -1
  56. package/lib/typescript/components/UNBookPaymentComponent/UNBookPaymentComponent.d.ts +1 -0
  57. package/lib/typescript/components/UNCardComponent/UNCardComponent.d.ts +1 -0
  58. package/lib/typescript/components/utils/nativeModulesInfo.d.ts +1 -0
  59. package/lib/typescript/scripts/html/bodyScript.d.ts +1 -0
  60. package/package.json +1 -1
  61. package/src/components/UNACHCreditComponent/UNACHCreditComponent.tsx +44 -5
  62. package/src/components/UNACHCreditComponent/UNACHCreditComponent.utils.ts +14 -11
  63. package/src/components/UNACHDebitComponent/UNACHDebitComponent.tsx +4 -8
  64. package/src/components/UNACHDebitComponent/UNACHDebitComponent.utils.ts +1 -20
  65. package/src/components/UNAccountComponent/UNAccountComponent.utils.ts +2 -1
  66. package/src/components/UNActivityComponent/UNActivityComponent.tsx +1 -1
  67. package/src/components/UNActivityComponent/UNActivityComponent.utils.ts +3 -1
  68. package/src/components/UNBookPaymentComponent/UNBookPaymentComponent.tsx +6 -0
  69. package/src/components/UNBookPaymentComponent/UNBookPaymentComponent.utils.ts +1 -0
  70. package/src/components/UNCardComponent/UNCardComponent.tsx +1 -0
  71. package/src/components/UNCardComponent/UNCardComponent.utils.ts +1 -0
  72. package/src/components/utils/nativeModulesInfo.ts +11 -0
  73. package/src/scripts/html/bodyScript.ts +13 -3
  74. package/src/webComponent/WebComponent.tsx +1 -1
@@ -12,7 +12,11 @@ class UNAppInfo: NSObject {
12
12
  @objc func getBundleName(_ resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
13
13
  if let bundleName = Bundle.main.object(forInfoDictionaryKey: "CFBundleDisplayName") as? String {
14
14
  resolve(bundleName)
15
- } else {
15
+ }
16
+ else if let bundleName = Bundle.main.object(forInfoDictionaryKey: "CFBundleName") as? String {
17
+ resolve(bundleName)
18
+ }
19
+ else {
16
20
  reject("ERROR", "Could not get bundle name", nil)
17
21
  }
18
22
  }
@@ -9,15 +9,29 @@ var _WebComponent = require("../../webComponent/WebComponent");
9
9
  var _bodyHtml = require("../../scripts/html/bodyHtml");
10
10
  var _pageMessage = require("../../messages/webMessages/pageMessage");
11
11
  var _reactNative = require("react-native");
12
- var _unitMessages = require("../../messages/webMessages/unitMessages");
13
12
  var _UNACHCreditComponent = require("./UNACHCreditComponent.utils");
14
13
  var _paymentsMessage = require("../../messages/webMessages/paymentsMessage");
15
14
  var _onLoadMessage = require("../../messages/webMessages/onLoadMessage");
15
+ var _unitMessages = require("../../messages/webMessages/unitMessages");
16
+ var _reactNativePlaidLinkSdk = require("react-native-plaid-link-sdk");
17
+ var _nativeModulesInfo = require("../utils/nativeModulesInfo");
16
18
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
19
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
18
20
  const UNACHCreditComponent = props => {
19
21
  const [height, setHeight] = (0, _react.useState)(0);
20
22
  const [presentationMode, setPresentationMode] = (0, _react.useState)(_bodyHtml.PresentationMode.Inherit);
23
+ const [linkToken, setLinkToken] = (0, _react.useState)();
24
+ const [appPackageName, setAppPackageName] = (0, _react.useState)();
25
+ const webRef = (0, _react.useRef)(null);
26
+ (0, _react.useEffect)(() => {
27
+ const setPackageNameForAndroid = async () => {
28
+ if (_reactNative.Platform.OS === 'android') {
29
+ const packageName = await (0, _nativeModulesInfo.getAndroidPackageName)();
30
+ setAppPackageName(packageName);
31
+ }
32
+ };
33
+ setPackageNameForAndroid();
34
+ }, []);
21
35
  const handleUnitOnLoad = response => {
22
36
  if (!props.onLoad) {
23
37
  return;
@@ -61,14 +75,42 @@ const UNACHCreditComponent = props => {
61
75
  }
62
76
  break;
63
77
  }
78
+ case _unitMessages.UnitMessage.UNIT_PLAID_TOKEN_CREATED:
79
+ {
80
+ const linkTokenEvent = message.details;
81
+ const linkTokenData = linkTokenEvent.linkToken;
82
+ setLinkToken(linkTokenData.attributes.linkToken);
83
+ break;
84
+ }
85
+ case _unitMessages.UnitMessage.UNIT_REQUEST_EXTERNAL_SDK:
86
+ {
87
+ const externalSdkType = message.details.type;
88
+ if (externalSdkType !== 'plaid') return;
89
+ linkToken && (0, _reactNativePlaidLinkSdk.openLink)({
90
+ tokenConfig: {
91
+ noLoadingState: false,
92
+ token: linkToken
93
+ },
94
+ onSuccess: success => {
95
+ (0, _UNACHCreditComponent.injectUnitPlaidResponse)(webRef.current, success);
96
+ },
97
+ onExit: exit => {
98
+ console.log(exit);
99
+ }
100
+ }).catch(e => {
101
+ console.error(e);
102
+ });
103
+ break;
104
+ }
64
105
  }
65
106
  };
66
107
  const renderACHCreditWebView = () => {
67
108
  return /*#__PURE__*/_react.default.createElement(_WebComponent.WebComponent, {
109
+ ref: webRef,
68
110
  type: _WebComponent.WebComponentType.achCreditPayment,
69
111
  presentationMode: presentationMode,
70
112
  params: (0, _UNACHCreditComponent.getACHCreditParams)(props),
71
- script: (0, _UNACHCreditComponent.getACHCreditScript)(),
113
+ script: (0, _UNACHCreditComponent.getACHCreditScript)(appPackageName),
72
114
  onMessage: message => handleWebViewMessage(message),
73
115
  isScrollable: false,
74
116
  theme: props.theme,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_WebComponent","_bodyHtml","_pageMessage","_reactNative","_unitMessages","_UNACHCreditComponent","_paymentsMessage","_onLoadMessage","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UNACHCreditComponent","props","height","setHeight","useState","presentationMode","setPresentationMode","PresentationMode","Inherit","handleUnitOnLoad","response","onLoad","RESPONSE_KEYS","errors","account","counterpartyAccount","achOnload","data","console","error","handleWebViewMessage","message","details","type","PaymentMessage","PAYMENT_CREATED","achCreditEvent","onPaymentCreated","UnitMessage","UNIT_ON_LOAD","PageMessage","PAGE_HEIGHT","currentHeight","Default","renderACHCreditWebView","createElement","WebComponent","WebComponentType","achCreditPayment","params","getACHCreditParams","script","getACHCreditScript","onMessage","isScrollable","theme","language","View","style","exports"],"sources":["UNACHCreditComponent.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport type { UNOnLoadResponse, UNACHData, UNACHOnLoadData, UNError, UNOnLoadResponseData } from '../../sharedTypes';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { View } from 'react-native';\nimport { UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { getACHCreditParams, getACHCreditScript } from './UNACHCreditComponent.utils';\nimport { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\nimport type { ACHEvent } from '../../messages/webMessages/achCreditMessage';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\n\nexport interface UNACHCreditComponentProps {\n accountId: string;\n customerToken: string;\n theme?: string;\n language?: string;\n isAutoFocus?: boolean;\n fee?: number;\n onPaymentCreated?: (data: UNACHData) => void;\n onLoad?: (response: UNOnLoadResponse<UNACHOnLoadData>) => void;\n}\n\nexport const UNACHCreditComponent = (props: UNACHCreditComponentProps) => {\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 && RESPONSE_KEYS.counterpartyAccount in response) {\n // ACHOnLoadResponse;\n const achOnload: UNOnLoadResponseData<UNACHOnLoadData> = {\n data: {\n [RESPONSE_KEYS.account]: response[RESPONSE_KEYS.account].data,\n [RESPONSE_KEYS.counterpartyAccount]: response[RESPONSE_KEYS.counterpartyAccount].data,\n }\n };\n props.onLoad(achOnload);\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 const achCreditEvent = message.details as ACHEvent;\n props.onPaymentCreated && props.onPaymentCreated(achCreditEvent.data as UNACHData);\n break;\n }\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 renderACHCreditWebView = () => {\n return (\n <WebComponent\n type={WebComponentType.achCreditPayment}\n presentationMode={presentationMode}\n params={getACHCreditParams(props)}\n script={getACHCreditScript()}\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 renderACHCreditWebView();\n }\n\n return (\n <View style={{ height: height }}>\n {renderACHCreditWebView()}\n </View>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_WebComponent","_bodyHtml","_pageMessage","_reactNative","_UNACHCreditComponent","_paymentsMessage","_onLoadMessage","_unitMessages","_reactNativePlaidLinkSdk","_nativeModulesInfo","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UNACHCreditComponent","props","height","setHeight","useState","presentationMode","setPresentationMode","PresentationMode","Inherit","linkToken","setLinkToken","appPackageName","setAppPackageName","webRef","useRef","useEffect","setPackageNameForAndroid","Platform","OS","packageName","getAndroidPackageName","handleUnitOnLoad","response","onLoad","RESPONSE_KEYS","errors","account","counterpartyAccount","achOnload","data","console","error","handleWebViewMessage","message","details","type","PaymentMessage","PAYMENT_CREATED","achCreditEvent","onPaymentCreated","UnitMessage","UNIT_ON_LOAD","PageMessage","PAGE_HEIGHT","currentHeight","Default","UNIT_PLAID_TOKEN_CREATED","linkTokenEvent","linkTokenData","attributes","UNIT_REQUEST_EXTERNAL_SDK","externalSdkType","openLink","tokenConfig","noLoadingState","token","onSuccess","success","injectUnitPlaidResponse","current","onExit","exit","log","catch","e","renderACHCreditWebView","createElement","WebComponent","ref","WebComponentType","achCreditPayment","params","getACHCreditParams","script","getACHCreditScript","onMessage","isScrollable","theme","language","View","style","exports"],"sources":["UNACHCreditComponent.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport type { UNOnLoadResponse, UNACHData, UNACHOnLoadData, UNError, UNOnLoadResponseData } from '../../sharedTypes';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { Platform, View } from 'react-native';\nimport { getACHCreditParams, getACHCreditScript, injectUnitPlaidResponse } from './UNACHCreditComponent.utils';\nimport { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\nimport type { ACHEvent } from '../../messages/webMessages/achCreditMessage';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\nimport { PlaidLinkTokenData, PlaidTokenCreatedEvent, RequestExternalSdkEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { LinkSuccess, openLink } from 'react-native-plaid-link-sdk';\nimport type WebView from 'react-native-webview';\nimport { getAndroidPackageName } from '../utils/nativeModulesInfo';\n\nexport interface UNACHCreditComponentProps {\n accountId: string;\n customerToken: string;\n theme?: string;\n language?: string;\n isAutoFocus?: boolean;\n fee?: number;\n withPlaid?: boolean;\n onPaymentCreated?: (data: UNACHData) => void;\n onLoad?: (response: UNOnLoadResponse<UNACHOnLoadData>) => void;\n}\n\nexport const UNACHCreditComponent = (props: UNACHCreditComponentProps) => {\n const [height, setHeight] = useState<number>(0);\n const [presentationMode, setPresentationMode] = useState<PresentationMode>(PresentationMode.Inherit);\n const [linkToken, setLinkToken] = useState<string>();\n const [appPackageName, setAppPackageName] = useState<string>();\n const webRef = useRef<WebView>(null);\n\n useEffect(() => {\n const setPackageNameForAndroid = async () => {\n if (Platform.OS === 'android') {\n const packageName = await getAndroidPackageName();\n setAppPackageName(packageName);\n }\n };\n setPackageNameForAndroid();\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 && RESPONSE_KEYS.counterpartyAccount in response) {\n // ACHOnLoadResponse;\n const achOnload: UNOnLoadResponseData<UNACHOnLoadData> = {\n data: {\n [RESPONSE_KEYS.account]: response[RESPONSE_KEYS.account].data,\n [RESPONSE_KEYS.counterpartyAccount]: response[RESPONSE_KEYS.counterpartyAccount].data,\n }\n };\n props.onLoad(achOnload);\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 const achCreditEvent = message.details as ACHEvent;\n props.onPaymentCreated && props.onPaymentCreated(achCreditEvent.data as UNACHData);\n break;\n }\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 case UnitMessage.UNIT_PLAID_TOKEN_CREATED: {\n const linkTokenEvent = message.details as PlaidTokenCreatedEvent;\n const linkTokenData = linkTokenEvent.linkToken as PlaidLinkTokenData;\n setLinkToken(linkTokenData.attributes.linkToken);\n break;\n }\n\n case UnitMessage.UNIT_REQUEST_EXTERNAL_SDK: {\n const externalSdkType = (message.details as RequestExternalSdkEvent).type;\n if (externalSdkType !== 'plaid') return;\n linkToken && openLink({\n tokenConfig: { noLoadingState: false, token: linkToken },\n onSuccess: (success: LinkSuccess) => {\n injectUnitPlaidResponse(webRef.current, success);\n },\n onExit: exit => { console.log(exit); }\n }).catch(e => {\n console.error(e);\n });\n break;\n }\n }\n };\n\n const renderACHCreditWebView = () => {\n return (\n <WebComponent\n ref={webRef}\n type={WebComponentType.achCreditPayment}\n presentationMode={presentationMode}\n params={getACHCreditParams(props)}\n script={getACHCreditScript(appPackageName)}\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 renderACHCreditWebView();\n }\n\n return (\n <View style={{ height: height }}>\n {renderACHCreditWebView()}\n </View>\n );\n};\n"],"mappings":"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"}
@@ -3,29 +3,36 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.getACHCreditScript = exports.getACHCreditParams = void 0;
7
- var _paymentsMessage = require("../../messages/webMessages/paymentsMessage");
6
+ exports.injectUnitPlaidResponse = exports.getACHCreditScript = exports.getACHCreditParams = void 0;
7
+ var _bodyScript = require("../../scripts/html/bodyScript");
8
8
  const getACHCreditParams = props => {
9
9
  return `
10
10
  account-id="${props.accountId}"
11
11
  customer-token="${props.customerToken}"
12
+ with-plaid="${props.withPlaid ?? false}"
12
13
  is-auto-focus="${props.isAutoFocus ?? false}"
13
14
  ${props.fee ? `fee="${props.fee}"` : ''}
14
15
  style="height: 100%"
15
16
  `;
16
17
  };
17
18
  exports.getACHCreditParams = getACHCreditParams;
18
- const getACHCreditScript = () => {
19
+ const getACHCreditScript = appPackageName => {
19
20
  return `
20
- window.addEventListener("${_paymentsMessage.PaymentMessage.PAYMENT_CREATED}", (e) => {
21
- const response = e.detail
22
- response.then((data) => {
23
- postMessageToSDK({ type: "${_paymentsMessage.PaymentMessage.PAYMENT_CREATED}", details: { data: JSON.stringify(data.data) }})
24
- }).catch((e) => {
25
- console.log(e)
26
- })
27
- });
21
+ ${_bodyScript.LISTENERS.unitPlaidTokenCreated}
22
+ ${appPackageName && `window.UnitMobileSDKConfig.androidPackageName='${appPackageName}'`}
23
+ ${_bodyScript.LISTENERS.unitPaymentCreated}
24
+ ${_bodyScript.DISPATCH_PLAID_RESPONSE}
28
25
  `;
29
26
  };
30
27
  exports.getACHCreditScript = getACHCreditScript;
28
+ const injectUnitPlaidResponse = (currentWeb, success) => {
29
+ const successObj = {
30
+ data: {
31
+ publicToken: success.publicToken,
32
+ metadata: success.metadata
33
+ }
34
+ };
35
+ currentWeb === null || currentWeb === void 0 ? void 0 : currentWeb.injectJavaScript(`dispatchPlaidEvent(${JSON.stringify(successObj)})`);
36
+ };
37
+ exports.injectUnitPlaidResponse = injectUnitPlaidResponse;
31
38
  //# sourceMappingURL=UNACHCreditComponent.utils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_paymentsMessage","require","getACHCreditParams","props","accountId","customerToken","isAutoFocus","fee","exports","getACHCreditScript","PaymentMessage","PAYMENT_CREATED"],"sources":["UNACHCreditComponent.utils.ts"],"sourcesContent":["import type { UNACHCreditComponentProps } from './UNACHCreditComponent';\n\nimport { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\n\nexport const getACHCreditParams = (props: UNACHCreditComponentProps) => {\n return `\n account-id=\"${props.accountId}\"\n customer-token=\"${props.customerToken}\"\n is-auto-focus=\"${props.isAutoFocus ?? false}\"\n ${props.fee ? `fee=\"${props.fee}\"` : ''}\n style=\"height: 100%\"\n `;\n};\n\nexport const getACHCreditScript = () => {\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};\n"],"mappings":";;;;;;AAEA,IAAAA,gBAAA,GAAAC,OAAA;AAEO,MAAMC,kBAAkB,GAAIC,KAAgC,IAAK;EACtE,OAAQ;AACV,kBAAkBA,KAAK,CAACC,SAAU;AAClC,sBAAsBD,KAAK,CAACE,aAAc;AAC1C,qBAAqBF,KAAK,CAACG,WAAW,IAAI,KAAM;AAChD,MAAMH,KAAK,CAACI,GAAG,GAAI,QAAOJ,KAAK,CAACI,GAAI,GAAE,GAAG,EAAG;AAC5C;AACA,GAAG;AACH,CAAC;AAACC,OAAA,CAAAN,kBAAA,GAAAA,kBAAA;AAEK,MAAMO,kBAAkB,GAAGA,CAAA,KAAM;EACtC,OAAQ;AACV,+BAA+BC,+BAAc,CAACC,eAAgB;AAC9D;AACA;AACA,sCAAsCD,+BAAc,CAACC,eAAgB;AACrE;AACA;AACA;AACA;AACA,GAAG;AACH,CAAC;AAACH,OAAA,CAAAC,kBAAA,GAAAA,kBAAA"}
1
+ {"version":3,"names":["_bodyScript","require","getACHCreditParams","props","accountId","customerToken","withPlaid","isAutoFocus","fee","exports","getACHCreditScript","appPackageName","LISTENERS","unitPlaidTokenCreated","unitPaymentCreated","DISPATCH_PLAID_RESPONSE","injectUnitPlaidResponse","currentWeb","success","successObj","data","publicToken","metadata","injectJavaScript","JSON","stringify"],"sources":["UNACHCreditComponent.utils.ts"],"sourcesContent":["import type { UNACHCreditComponentProps } from './UNACHCreditComponent';\nimport type WebView from 'react-native-webview';\nimport type { LinkSuccess } from 'react-native-plaid-link-sdk';\nimport { DISPATCH_PLAID_RESPONSE, LISTENERS } from '../../scripts/html/bodyScript';\n\nexport const getACHCreditParams = (props: UNACHCreditComponentProps) => {\n return `\n account-id=\"${props.accountId}\"\n customer-token=\"${props.customerToken}\"\n with-plaid=\"${props.withPlaid ?? false}\"\n is-auto-focus=\"${props.isAutoFocus ?? false}\"\n ${props.fee ? `fee=\"${props.fee}\"` : ''}\n style=\"height: 100%\"\n `;\n};\n\nexport const getACHCreditScript = (appPackageName?: string) => {\n return `\n ${LISTENERS.unitPlaidTokenCreated}\n ${appPackageName && `window.UnitMobileSDKConfig.androidPackageName='${appPackageName}'`}\n ${LISTENERS.unitPaymentCreated}\n ${DISPATCH_PLAID_RESPONSE}\n `;\n};\n\nexport const injectUnitPlaidResponse = (currentWeb: WebView | null, success: LinkSuccess) => {\n const successObj = {data: { publicToken: success.publicToken, metadata: success.metadata}};\n currentWeb?.injectJavaScript(`dispatchPlaidEvent(${JSON.stringify(successObj)})`);\n};\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAEO,MAAMC,kBAAkB,GAAIC,KAAgC,IAAK;EACtE,OAAQ;AACV,kBAAkBA,KAAK,CAACC,SAAU;AAClC,sBAAsBD,KAAK,CAACE,aAAc;AAC1C,kBAAkBF,KAAK,CAACG,SAAS,IAAI,KAAM;AAC3C,qBAAqBH,KAAK,CAACI,WAAW,IAAI,KAAM;AAChD,MAAMJ,KAAK,CAACK,GAAG,GAAI,QAAOL,KAAK,CAACK,GAAI,GAAE,GAAG,EAAG;AAC5C;AACA,GAAG;AACH,CAAC;AAACC,OAAA,CAAAP,kBAAA,GAAAA,kBAAA;AAEK,MAAMQ,kBAAkB,GAAIC,cAAuB,IAAK;EAC7D,OAAQ;AACV,MAAMC,qBAAS,CAACC,qBAAsB;AACtC,MAAMF,cAAc,IAAK,kDAAiDA,cAAe,GAAG;AAC5F,MAAMC,qBAAS,CAACE,kBAAmB;AACnC,MAAMC,mCAAwB;AAC9B,GAAG;AACH,CAAC;AAACN,OAAA,CAAAC,kBAAA,GAAAA,kBAAA;AAEK,MAAMM,uBAAuB,GAAGA,CAACC,UAA0B,EAAEC,OAAoB,KAAK;EAC3F,MAAMC,UAAU,GAAG;IAACC,IAAI,EAAE;MAAEC,WAAW,EAAEH,OAAO,CAACG,WAAW;MAAEC,QAAQ,EAAEJ,OAAO,CAACI;IAAQ;EAAC,CAAC;EAC1FL,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEM,gBAAgB,CAAE,sBAAqBC,IAAI,CAACC,SAAS,CAACN,UAAU,CAAE,GAAE,CAAC;AACnF,CAAC;AAACV,OAAA,CAAAO,uBAAA,GAAAA,uBAAA"}
@@ -14,6 +14,7 @@ var _UNACHDebitComponent = require("./UNACHDebitComponent.utils");
14
14
  var _reactNativePlaidLinkSdk = require("react-native-plaid-link-sdk");
15
15
  var _paymentsMessage = require("../../messages/webMessages/paymentsMessage");
16
16
  var _onLoadMessage = require("../../messages/webMessages/onLoadMessage");
17
+ var _nativeModulesInfo = require("../utils/nativeModulesInfo");
17
18
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
19
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
20
  const UNACHDebitComponent = props => {
@@ -25,15 +26,12 @@ const UNACHDebitComponent = props => {
25
26
  (0, _react.useEffect)(() => {
26
27
  const setPackageNameForAndroid = async () => {
27
28
  if (_reactNative.Platform.OS === 'android') {
28
- const packageName = await (0, _UNACHDebitComponent.getAndroidPackageName)();
29
+ const packageName = await (0, _nativeModulesInfo.getAndroidPackageName)();
29
30
  setAppPackageName(packageName);
30
31
  }
31
32
  };
32
33
  setPackageNameForAndroid();
33
34
  }, []);
34
- const dispatchUnitPlaidResponse = success => {
35
- (0, _UNACHDebitComponent.injectUnitPlaidResponse)(webRef.current, success);
36
- };
37
35
  const handleUnitOnLoad = response => {
38
36
  if (!props.onLoad) {
39
37
  return;
@@ -94,7 +92,7 @@ const UNACHDebitComponent = props => {
94
92
  token: linkToken
95
93
  },
96
94
  onSuccess: success => {
97
- dispatchUnitPlaidResponse(success);
95
+ (0, _UNACHDebitComponent.injectUnitPlaidResponse)(webRef.current, success);
98
96
  },
99
97
  onExit: exit => {
100
98
  console.log(exit);
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_WebComponent","_bodyHtml","_pageMessage","_reactNative","_unitMessages","_UNACHDebitComponent","_reactNativePlaidLinkSdk","_paymentsMessage","_onLoadMessage","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UNACHDebitComponent","props","height","setHeight","useState","appPackageName","setAppPackageName","linkToken","setLinkToken","webRef","useRef","presentationMode","setPresentationMode","PresentationMode","Inherit","useEffect","setPackageNameForAndroid","Platform","OS","packageName","getAndroidPackageName","dispatchUnitPlaidResponse","success","injectUnitPlaidResponse","current","handleUnitOnLoad","response","onLoad","RESPONSE_KEYS","errors","account","counterpartyAccount","achOnload","data","console","error","handleWebViewMessage","message","details","type","PaymentMessage","PAYMENT_CREATED","achDebitEvent","onPaymentCreated","UnitMessage","UNIT_ON_LOAD","PageMessage","PAGE_HEIGHT","currentHeight","Default","UNIT_PLAID_TOKEN_CREATED","linkTokenEvent","linkTokenData","attributes","UNIT_REQUEST_EXTERNAL_SDK","externalSdkType","openLink","tokenConfig","noLoadingState","token","onSuccess","onExit","exit","log","catch","e","renderACHDebitWebView","createElement","WebComponent","ref","WebComponentType","achDebitPayment","params","getACHDebitParams","script","getACHDebitScript","onMessage","isScrollable","theme","language","View","style","exports"],"sources":["UNACHDebitComponent.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport type { UNOnLoadResponse, UNACHData, UNError, UNOnLoadResponseData, UNACHOnLoadData } from '../../sharedTypes';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { Platform, View } from 'react-native';\nimport { PlaidLinkTokenData, PlaidTokenCreatedEvent, RequestExternalSdkEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { getACHDebitParams, getACHDebitScript, getAndroidPackageName, injectUnitPlaidResponse } from './UNACHDebitComponent.utils';\n\nimport { LinkSuccess, openLink } from 'react-native-plaid-link-sdk';\nimport type WebView from 'react-native-webview';\n\nimport { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\nimport type { ACHEvent } from '../../messages/webMessages/achCreditMessage';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\n\nexport interface UNACHDebitComponentProps {\n accountId: string;\n customerToken: string;\n theme?: string;\n language?: string;\n isAutoFocus?: boolean;\n fee?: number;\n onPaymentCreated?: (data: UNACHData) => void;\n onLoad?: (response: UNOnLoadResponse<UNACHOnLoadData>) => void;\n}\n\nexport const UNACHDebitComponent = (props: UNACHDebitComponentProps) => {\n const [height, setHeight] = useState<number>(0);\n const [appPackageName, setAppPackageName] = useState<string>('');\n const [linkToken, setLinkToken] = useState<string>('');\n const webRef = useRef<WebView>(null);\n const [presentationMode, setPresentationMode] = useState<PresentationMode>(PresentationMode.Inherit);\n\n useEffect(() => {\n const setPackageNameForAndroid = async () => {\n if (Platform.OS === 'android') {\n const packageName = await getAndroidPackageName();\n setAppPackageName(packageName);\n }\n };\n setPackageNameForAndroid();\n }, []);\n\n const dispatchUnitPlaidResponse = (success: LinkSuccess) => {\n injectUnitPlaidResponse(webRef.current, success);\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 && RESPONSE_KEYS.counterpartyAccount in response) {\n // ACHOnLoadResponse;\n const achOnload: UNOnLoadResponseData<UNACHOnLoadData> = {\n data: {\n [RESPONSE_KEYS.account]: response[RESPONSE_KEYS.account].data,\n [RESPONSE_KEYS.counterpartyAccount]: response[RESPONSE_KEYS.counterpartyAccount].data,\n }\n };\n props.onLoad(achOnload);\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 const achDebitEvent = message.details as ACHEvent;\n props.onPaymentCreated && props.onPaymentCreated(achDebitEvent.data as UNACHData);\n break;\n }\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 case UnitMessage.UNIT_PLAID_TOKEN_CREATED: {\n const linkTokenEvent = message.details as PlaidTokenCreatedEvent;\n const linkTokenData = linkTokenEvent.linkToken as PlaidLinkTokenData;\n setLinkToken(linkTokenData.attributes.linkToken);\n break;\n }\n\n case UnitMessage.UNIT_REQUEST_EXTERNAL_SDK: {\n const externalSdkType = (message.details as RequestExternalSdkEvent).type;\n if (externalSdkType !== 'plaid') return;\n linkToken && openLink({\n tokenConfig: { noLoadingState: false, token: linkToken },\n onSuccess: (success) => {\n dispatchUnitPlaidResponse(success);\n },\n onExit: exit => { console.log(exit); }\n }).catch(e => {\n console.error(e);\n });\n break;\n }\n }\n };\n\n const renderACHDebitWebView = () => {\n return (\n <WebComponent\n ref={webRef}\n type={WebComponentType.achDebitPayment}\n presentationMode={presentationMode}\n params={getACHDebitParams(props)}\n script={getACHDebitScript(appPackageName)}\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 renderACHDebitWebView();\n }\n\n return (\n <View style={{ height: height }}>\n {renderACHDebitWebView()}\n </View>\n\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_WebComponent","_bodyHtml","_pageMessage","_reactNative","_unitMessages","_UNACHDebitComponent","_reactNativePlaidLinkSdk","_paymentsMessage","_onLoadMessage","_nativeModulesInfo","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UNACHDebitComponent","props","height","setHeight","useState","appPackageName","setAppPackageName","linkToken","setLinkToken","webRef","useRef","presentationMode","setPresentationMode","PresentationMode","Inherit","useEffect","setPackageNameForAndroid","Platform","OS","packageName","getAndroidPackageName","handleUnitOnLoad","response","onLoad","RESPONSE_KEYS","errors","account","counterpartyAccount","achOnload","data","console","error","handleWebViewMessage","message","details","type","PaymentMessage","PAYMENT_CREATED","achDebitEvent","onPaymentCreated","UnitMessage","UNIT_ON_LOAD","PageMessage","PAGE_HEIGHT","currentHeight","Default","UNIT_PLAID_TOKEN_CREATED","linkTokenEvent","linkTokenData","attributes","UNIT_REQUEST_EXTERNAL_SDK","externalSdkType","openLink","tokenConfig","noLoadingState","token","onSuccess","success","injectUnitPlaidResponse","current","onExit","exit","log","catch","e","renderACHDebitWebView","createElement","WebComponent","ref","WebComponentType","achDebitPayment","params","getACHDebitParams","script","getACHDebitScript","onMessage","isScrollable","theme","language","View","style","exports"],"sources":["UNACHDebitComponent.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport type { UNOnLoadResponse, UNACHData, UNError, UNOnLoadResponseData, UNACHOnLoadData } from '../../sharedTypes';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { Platform, View } from 'react-native';\nimport { PlaidLinkTokenData, PlaidTokenCreatedEvent, RequestExternalSdkEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { getACHDebitParams, getACHDebitScript, injectUnitPlaidResponse } from './UNACHDebitComponent.utils';\nimport { LinkSuccess, openLink } from 'react-native-plaid-link-sdk';\nimport type WebView from 'react-native-webview';\n\nimport { PaymentMessage } from '../../messages/webMessages/paymentsMessage';\nimport type { ACHEvent } from '../../messages/webMessages/achCreditMessage';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\nimport { getAndroidPackageName } from '../utils/nativeModulesInfo';\n\nexport interface UNACHDebitComponentProps {\n accountId: string;\n customerToken: string;\n theme?: string;\n language?: string;\n isAutoFocus?: boolean;\n fee?: number;\n onPaymentCreated?: (data: UNACHData) => void;\n onLoad?: (response: UNOnLoadResponse<UNACHOnLoadData>) => void;\n}\n\nexport const UNACHDebitComponent = (props: UNACHDebitComponentProps) => {\n const [height, setHeight] = useState<number>(0);\n const [appPackageName, setAppPackageName] = useState<string>('');\n const [linkToken, setLinkToken] = useState<string>('');\n const webRef = useRef<WebView>(null);\n const [presentationMode, setPresentationMode] = useState<PresentationMode>(PresentationMode.Inherit);\n\n useEffect(() => {\n const setPackageNameForAndroid = async () => {\n if (Platform.OS === 'android') {\n const packageName = await getAndroidPackageName();\n setAppPackageName(packageName);\n }\n };\n setPackageNameForAndroid();\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 && RESPONSE_KEYS.counterpartyAccount in response) {\n // ACHOnLoadResponse;\n const achOnload: UNOnLoadResponseData<UNACHOnLoadData> = {\n data: {\n [RESPONSE_KEYS.account]: response[RESPONSE_KEYS.account].data,\n [RESPONSE_KEYS.counterpartyAccount]: response[RESPONSE_KEYS.counterpartyAccount].data,\n }\n };\n props.onLoad(achOnload);\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 const achDebitEvent = message.details as ACHEvent;\n props.onPaymentCreated && props.onPaymentCreated(achDebitEvent.data as UNACHData);\n break;\n }\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 case UnitMessage.UNIT_PLAID_TOKEN_CREATED: {\n const linkTokenEvent = message.details as PlaidTokenCreatedEvent;\n const linkTokenData = linkTokenEvent.linkToken as PlaidLinkTokenData;\n setLinkToken(linkTokenData.attributes.linkToken);\n break;\n }\n\n case UnitMessage.UNIT_REQUEST_EXTERNAL_SDK: {\n const externalSdkType = (message.details as RequestExternalSdkEvent).type;\n if (externalSdkType !== 'plaid') return;\n linkToken && openLink({\n tokenConfig: { noLoadingState: false, token: linkToken },\n onSuccess: (success: LinkSuccess) => {\n injectUnitPlaidResponse(webRef.current, success);\n },\n onExit: exit => { console.log(exit); }\n }).catch(e => {\n console.error(e);\n });\n break;\n }\n }\n };\n\n const renderACHDebitWebView = () => {\n return (\n <WebComponent\n ref={webRef}\n type={WebComponentType.achDebitPayment}\n presentationMode={presentationMode}\n params={getACHDebitParams(props)}\n script={getACHDebitScript(appPackageName)}\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 renderACHDebitWebView();\n }\n\n return (\n <View style={{ height: height }}>\n {renderACHDebitWebView()}\n </View>\n\n );\n};\n"],"mappings":"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"}
@@ -3,13 +3,8 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.injectUnitPlaidResponse = exports.getAndroidPackageName = exports.getACHDebitScript = exports.getACHDebitParams = void 0;
6
+ exports.injectUnitPlaidResponse = exports.getACHDebitScript = exports.getACHDebitParams = void 0;
7
7
  var _bodyScript = require("./../../scripts/html/bodyScript");
8
- var _reactNative = require("react-native");
9
- var _unitMessages = require("../../messages/webMessages/unitMessages");
10
- const {
11
- RNAppInfoModule
12
- } = _reactNative.NativeModules;
13
8
  const getACHDebitParams = props => {
14
9
  return `
15
10
  account-id="${props.accountId}"
@@ -20,25 +15,9 @@ const getACHDebitParams = props => {
20
15
  `;
21
16
  };
22
17
  exports.getACHDebitParams = getACHDebitParams;
23
- const getAndroidPackageName = async () => {
24
- try {
25
- const response = await RNAppInfoModule.getAppPackageName();
26
- return response;
27
- } catch (error) {
28
- console.error(error);
29
- }
30
- };
31
- exports.getAndroidPackageName = getAndroidPackageName;
32
18
  const getACHDebitScript = androidPackageName => {
33
19
  return `
34
- window.addEventListener("${_unitMessages.UnitMessage.UNIT_PLAID_TOKEN_CREATED}", (e) => {
35
- const response = e.detail
36
- response.then((data) => {
37
- postMessageToSDK({ type: "${_unitMessages.UnitMessage.UNIT_PLAID_TOKEN_CREATED}", details: { linkToken: data.data }})
38
- }).catch((e) => {
39
- console.log(e)
40
- })
41
- });
20
+ ${_bodyScript.LISTENERS.unitPlaidTokenCreated}
42
21
  ${androidPackageName && `window.UnitMobileSDKConfig.androidPackageName='${androidPackageName}'`}
43
22
  ${_bodyScript.LISTENERS.unitPaymentCreated}
44
23
  ${_bodyScript.DISPATCH_PLAID_RESPONSE}
@@ -1 +1 @@
1
- {"version":3,"names":["_bodyScript","require","_reactNative","_unitMessages","RNAppInfoModule","NativeModules","getACHDebitParams","props","accountId","customerToken","isAutoFocus","fee","exports","getAndroidPackageName","response","getAppPackageName","error","console","getACHDebitScript","androidPackageName","UnitMessage","UNIT_PLAID_TOKEN_CREATED","LISTENERS","unitPaymentCreated","DISPATCH_PLAID_RESPONSE","injectUnitPlaidResponse","currentWeb","success","successObj","data","publicToken","metadata","injectJavaScript","JSON","stringify"],"sources":["UNACHDebitComponent.utils.ts"],"sourcesContent":["import { DISPATCH_PLAID_RESPONSE, LISTENERS } from './../../scripts/html/bodyScript';\nimport type { UNACHDebitComponentProps } from './UNACHDebitComponent';\n\nimport type WebView from 'react-native-webview';\nimport type { LinkSuccess } from 'react-native-plaid-link-sdk';\nimport { NativeModules } from 'react-native';\nconst { RNAppInfoModule } = NativeModules;\nimport { UnitMessage } from '../../messages/webMessages/unitMessages';\n\nexport const getACHDebitParams = (props: UNACHDebitComponentProps) => {\n return `\n account-id=\"${props.accountId}\"\n customer-token=\"${props.customerToken}\"\n is-auto-focus=\"${props.isAutoFocus ?? false}\"\n ${props.fee ? `fee=\"${props.fee}\"` : ''}\n style=\"height: 100%\"\n `;\n};\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\nexport const getACHDebitScript = (androidPackageName?: string) => {\n return `\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 ${androidPackageName && `window.UnitMobileSDKConfig.androidPackageName='${androidPackageName}'`}\n ${LISTENERS.unitPaymentCreated}\n ${DISPATCH_PLAID_RESPONSE}\n `;\n};\n\nexport const injectUnitPlaidResponse = (currentWeb: WebView | null, success: LinkSuccess) => {\n const successObj = {data: { publicToken: success.publicToken, metadata: success.metadata}};\n currentWeb?.injectJavaScript(`dispatchPlaidEvent(${JSON.stringify(successObj)})`);\n};\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAKA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,aAAA,GAAAF,OAAA;AADA,MAAM;EAAEG;AAAgB,CAAC,GAAGC,0BAAa;AAGlC,MAAMC,iBAAiB,GAAIC,KAA+B,IAAK;EACpE,OAAQ;AACV,kBAAkBA,KAAK,CAACC,SAAU;AAClC,sBAAsBD,KAAK,CAACE,aAAc;AAC1C,qBAAqBF,KAAK,CAACG,WAAW,IAAI,KAAM;AAChD,MAAMH,KAAK,CAACI,GAAG,GAAI,QAAOJ,KAAK,CAACI,GAAI,GAAE,GAAG,EAAG;AAC5C;AACA,GAAG;AACH,CAAC;AAACC,OAAA,CAAAN,iBAAA,GAAAA,iBAAA;AAEK,MAAMO,qBAAqB,GAAG,MAAAA,CAAA,KAAY;EAC/C,IAAI;IACF,MAAMC,QAAQ,GAAG,MAAMV,eAAe,CAACW,iBAAiB,EAAE;IAC1D,OAAOD,QAAQ;EACjB,CAAC,CAAC,OAAOE,KAAK,EAAE;IACdC,OAAO,CAACD,KAAK,CAACA,KAAK,CAAC;EACtB;AACF,CAAC;AAACJ,OAAA,CAAAC,qBAAA,GAAAA,qBAAA;AAEK,MAAMK,iBAAiB,GAAIC,kBAA2B,IAAK;EAChE,OAAQ;AACV,iCAAiCC,yBAAW,CAACC,wBAAyB;AACtE;AACA;AACA,sCAAsCD,yBAAW,CAACC,wBAAyB;AAC3E;AACA;AACA;AACA;AACA,MAAMF,kBAAkB,IAAK,kDAAiDA,kBAAmB,GAAG;AACpG,MAAMG,qBAAS,CAACC,kBAAmB;AACnC,MAAMC,mCAAwB;AAC9B,KAAK;AACL,CAAC;AAACZ,OAAA,CAAAM,iBAAA,GAAAA,iBAAA;AAEK,MAAMO,uBAAuB,GAAGA,CAACC,UAA0B,EAAEC,OAAoB,KAAK;EAC3F,MAAMC,UAAU,GAAG;IAACC,IAAI,EAAE;MAAEC,WAAW,EAAEH,OAAO,CAACG,WAAW;MAAEC,QAAQ,EAAEJ,OAAO,CAACI;IAAQ;EAAC,CAAC;EAC1FL,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEM,gBAAgB,CAAE,sBAAqBC,IAAI,CAACC,SAAS,CAACN,UAAU,CAAE,GAAE,CAAC;AACnF,CAAC;AAAChB,OAAA,CAAAa,uBAAA,GAAAA,uBAAA"}
1
+ {"version":3,"names":["_bodyScript","require","getACHDebitParams","props","accountId","customerToken","isAutoFocus","fee","exports","getACHDebitScript","androidPackageName","LISTENERS","unitPlaidTokenCreated","unitPaymentCreated","DISPATCH_PLAID_RESPONSE","injectUnitPlaidResponse","currentWeb","success","successObj","data","publicToken","metadata","injectJavaScript","JSON","stringify"],"sources":["UNACHDebitComponent.utils.ts"],"sourcesContent":["import { DISPATCH_PLAID_RESPONSE, LISTENERS } from './../../scripts/html/bodyScript';\nimport type { UNACHDebitComponentProps } from './UNACHDebitComponent';\n\nimport type WebView from 'react-native-webview';\nimport type { LinkSuccess } from 'react-native-plaid-link-sdk';\n\nexport const getACHDebitParams = (props: UNACHDebitComponentProps) => {\n return `\n account-id=\"${props.accountId}\"\n customer-token=\"${props.customerToken}\"\n is-auto-focus=\"${props.isAutoFocus ?? false}\"\n ${props.fee ? `fee=\"${props.fee}\"` : ''}\n style=\"height: 100%\"\n `;\n};\n\nexport const getACHDebitScript = (androidPackageName?: string) => {\n return `\n ${LISTENERS.unitPlaidTokenCreated}\n ${androidPackageName && `window.UnitMobileSDKConfig.androidPackageName='${androidPackageName}'`}\n ${LISTENERS.unitPaymentCreated}\n ${DISPATCH_PLAID_RESPONSE}\n `;\n};\n\nexport const injectUnitPlaidResponse = (currentWeb: WebView | null, success: LinkSuccess) => {\n const successObj = {data: { publicToken: success.publicToken, metadata: success.metadata}};\n currentWeb?.injectJavaScript(`dispatchPlaidEvent(${JSON.stringify(successObj)})`);\n};\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAMO,MAAMC,iBAAiB,GAAIC,KAA+B,IAAK;EACpE,OAAQ;AACV,kBAAkBA,KAAK,CAACC,SAAU;AAClC,sBAAsBD,KAAK,CAACE,aAAc;AAC1C,qBAAqBF,KAAK,CAACG,WAAW,IAAI,KAAM;AAChD,MAAMH,KAAK,CAACI,GAAG,GAAI,QAAOJ,KAAK,CAACI,GAAI,GAAE,GAAG,EAAG;AAC5C;AACA,GAAG;AACH,CAAC;AAACC,OAAA,CAAAN,iBAAA,GAAAA,iBAAA;AAEK,MAAMO,iBAAiB,GAAIC,kBAA2B,IAAK;EAChE,OAAQ;AACV,MAAMC,qBAAS,CAACC,qBAAsB;AACtC,MAAMF,kBAAkB,IAAK,kDAAiDA,kBAAmB,GAAG;AACpG,MAAMC,qBAAS,CAACE,kBAAmB;AACnC,MAAMC,mCAAwB;AAC9B,KAAK;AACL,CAAC;AAACN,OAAA,CAAAC,iBAAA,GAAAA,iBAAA;AAEK,MAAMM,uBAAuB,GAAGA,CAACC,UAA0B,EAAEC,OAAoB,KAAK;EAC3F,MAAMC,UAAU,GAAG;IAACC,IAAI,EAAE;MAAEC,WAAW,EAAEH,OAAO,CAACG,WAAW;MAAEC,QAAQ,EAAEJ,OAAO,CAACI;IAAQ;EAAC,CAAC;EAC1FL,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEM,gBAAgB,CAAE,sBAAqBC,IAAI,CAACC,SAAS,CAACN,UAAU,CAAE,GAAE,CAAC;AACnF,CAAC;AAACV,OAAA,CAAAO,uBAAA,GAAAA,uBAAA"}
@@ -8,9 +8,10 @@ var _UNAccountComponent = require("./UNAccountComponent");
8
8
  var _unitMessages = require("../../messages/webMessages/unitMessages");
9
9
  var _WebComponent = require("../../webComponent/WebComponent");
10
10
  const getAccountParams = props => {
11
+ const accountIdParam = props.accountId ? `account-id="${props.accountId}"` : '';
11
12
  return `
12
- account-id="${props.accountId}"
13
13
  customer-token="${props.customerToken}"
14
+ ${accountIdParam}
14
15
  hide-actions-menu-button="${props.hideActionsMenuButton || false}"
15
16
  hide-selection-menu-button="${props.hideSelectionMenuButton || false}"
16
17
  `;
@@ -1 +1 @@
1
- {"version":3,"names":["_UNAccountComponent","require","_unitMessages","_WebComponent","getAccountParams","props","accountId","customerToken","hideActionsMenuButton","hideSelectionMenuButton","exports","getAccountScript","UnitMessage","UNIT_REQUEST_REFRESH","injectOpenActionsMenuScript","currentWeb","injectJavaScript","WebComponentType","account","injectRequestAccountActionScript","action","injectRefreshEventIfNeeded","requestRefreshEvent","dependencies","includes","valueOf","JSON","stringify","getAccountActionType","requestRendering","data","nativeComponent","AccountAction","List","Menu"],"sources":["UNAccountComponent.utils.ts"],"sourcesContent":["import { AccountAction, UNAccountComponentProps } from './UNAccountComponent';\nimport { RequestRefreshEvent, RequestRenderingEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport type WebView from 'react-native-webview';\nimport { WebComponentType } from '../../webComponent/WebComponent';\nimport type { UNAccountMenuAction } from 'src/sharedTypes';\n\nexport const getAccountParams = (props: UNAccountComponentProps) => {\n return `\n account-id=\"${props.accountId}\"\n customer-token=\"${props.customerToken}\"\n hide-actions-menu-button=\"${props.hideActionsMenuButton || false}\"\n hide-selection-menu-button=\"${props.hideSelectionMenuButton || false}\"\n `;\n};\n\nexport const getAccountScript = () => {\n return `\n const dispatchRefreshEvent = (details) => {\n const event = new CustomEvent(\"${UnitMessage.UNIT_REQUEST_REFRESH}\",{ detail: JSON.parse(details) })\n window.dispatchEvent(event)\n }\n `;\n};\n\nexport const injectOpenActionsMenuScript = (currentWeb: WebView | null) => {\n currentWeb?.injectJavaScript(`dispatchOpenActionsMenu('${WebComponentType.account}')`);\n};\n\nexport const injectRequestAccountActionScript = (currentWeb: WebView | null, action: UNAccountMenuAction) => {\n currentWeb?.injectJavaScript(`dispatchRequestAccountAction('${action}')`);\n};\n\nexport const injectRefreshEventIfNeeded = (currentWeb: WebView | null, requestRefreshEvent: RequestRefreshEvent | null) => {\n if (requestRefreshEvent && requestRefreshEvent.dependencies.includes(WebComponentType.account.valueOf())) {\n currentWeb?.injectJavaScript(`dispatchRefreshEvent('${JSON.stringify(requestRefreshEvent)}')`);\n }\n};\n\nexport const getAccountActionType = (requestRendering: RequestRenderingEvent) => {\n return requestRendering.data.nativeComponent.includes(AccountAction.List) ? AccountAction.List : AccountAction.Menu;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AAEA,IAAAE,aAAA,GAAAF,OAAA;AAGO,MAAMG,gBAAgB,GAAIC,KAA8B,IAAK;EAClE,OAAQ;AACV,kBAAkBA,KAAK,CAACC,SAAU;AAClC,sBAAsBD,KAAK,CAACE,aAAc;AAC1C,gCAAgCF,KAAK,CAACG,qBAAqB,IAAI,KAAM;AACrE,kCAAkCH,KAAK,CAACI,uBAAuB,IAAI,KAAM;AACzE,GAAG;AACH,CAAC;AAACC,OAAA,CAAAN,gBAAA,GAAAA,gBAAA;AAEK,MAAMO,gBAAgB,GAAGA,CAAA,KAAM;EACpC,OAAQ;AACV;AACA,qCAAqCC,yBAAW,CAACC,oBAAqB;AACtE;AACA;AACA,GAAG;AACH,CAAC;AAACH,OAAA,CAAAC,gBAAA,GAAAA,gBAAA;AAEK,MAAMG,2BAA2B,GAAIC,UAA0B,IAAK;EACzEA,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEC,gBAAgB,CAAE,4BAA2BC,8BAAgB,CAACC,OAAQ,IAAG,CAAC;AACxF,CAAC;AAACR,OAAA,CAAAI,2BAAA,GAAAA,2BAAA;AAEK,MAAMK,gCAAgC,GAAGA,CAACJ,UAA0B,EAAEK,MAA2B,KAAK;EAC3GL,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEC,gBAAgB,CAAE,iCAAgCI,MAAO,IAAG,CAAC;AAC3E,CAAC;AAACV,OAAA,CAAAS,gCAAA,GAAAA,gCAAA;AAEK,MAAME,0BAA0B,GAAGA,CAACN,UAA0B,EAAEO,mBAA+C,KAAK;EACzH,IAAIA,mBAAmB,IAAIA,mBAAmB,CAACC,YAAY,CAACC,QAAQ,CAACP,8BAAgB,CAACC,OAAO,CAACO,OAAO,EAAE,CAAC,EAAE;IACxGV,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEC,gBAAgB,CAAE,yBAAwBU,IAAI,CAACC,SAAS,CAACL,mBAAmB,CAAE,IAAG,CAAC;EAChG;AACF,CAAC;AAACZ,OAAA,CAAAW,0BAAA,GAAAA,0BAAA;AAEK,MAAMO,oBAAoB,GAAIC,gBAAuC,IAAK;EAC/E,OAAOA,gBAAgB,CAACC,IAAI,CAACC,eAAe,CAACP,QAAQ,CAACQ,iCAAa,CAACC,IAAI,CAAC,GAAGD,iCAAa,CAACC,IAAI,GAAGD,iCAAa,CAACE,IAAI;AACrH,CAAC;AAACxB,OAAA,CAAAkB,oBAAA,GAAAA,oBAAA"}
1
+ {"version":3,"names":["_UNAccountComponent","require","_unitMessages","_WebComponent","getAccountParams","props","accountIdParam","accountId","customerToken","hideActionsMenuButton","hideSelectionMenuButton","exports","getAccountScript","UnitMessage","UNIT_REQUEST_REFRESH","injectOpenActionsMenuScript","currentWeb","injectJavaScript","WebComponentType","account","injectRequestAccountActionScript","action","injectRefreshEventIfNeeded","requestRefreshEvent","dependencies","includes","valueOf","JSON","stringify","getAccountActionType","requestRendering","data","nativeComponent","AccountAction","List","Menu"],"sources":["UNAccountComponent.utils.ts"],"sourcesContent":["import { AccountAction, UNAccountComponentProps } from './UNAccountComponent';\nimport { RequestRefreshEvent, RequestRenderingEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport type WebView from 'react-native-webview';\nimport { WebComponentType } from '../../webComponent/WebComponent';\nimport type { UNAccountMenuAction } from 'src/sharedTypes';\n\nexport const getAccountParams = (props: UNAccountComponentProps) => {\n const accountIdParam = props.accountId ? `account-id=\"${props.accountId}\"` : '';\n return `\n customer-token=\"${props.customerToken}\"\n ${accountIdParam}\n hide-actions-menu-button=\"${props.hideActionsMenuButton || false}\"\n hide-selection-menu-button=\"${props.hideSelectionMenuButton || false}\"\n `;\n};\n\nexport const getAccountScript = () => {\n return `\n const dispatchRefreshEvent = (details) => {\n const event = new CustomEvent(\"${UnitMessage.UNIT_REQUEST_REFRESH}\",{ detail: JSON.parse(details) })\n window.dispatchEvent(event)\n }\n `;\n};\n\nexport const injectOpenActionsMenuScript = (currentWeb: WebView | null) => {\n currentWeb?.injectJavaScript(`dispatchOpenActionsMenu('${WebComponentType.account}')`);\n};\n\nexport const injectRequestAccountActionScript = (currentWeb: WebView | null, action: UNAccountMenuAction) => {\n currentWeb?.injectJavaScript(`dispatchRequestAccountAction('${action}')`);\n};\n\nexport const injectRefreshEventIfNeeded = (currentWeb: WebView | null, requestRefreshEvent: RequestRefreshEvent | null) => {\n if (requestRefreshEvent && requestRefreshEvent.dependencies.includes(WebComponentType.account.valueOf())) {\n currentWeb?.injectJavaScript(`dispatchRefreshEvent('${JSON.stringify(requestRefreshEvent)}')`);\n }\n};\n\nexport const getAccountActionType = (requestRendering: RequestRenderingEvent) => {\n return requestRendering.data.nativeComponent.includes(AccountAction.List) ? AccountAction.List : AccountAction.Menu;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AAEA,IAAAE,aAAA,GAAAF,OAAA;AAGO,MAAMG,gBAAgB,GAAIC,KAA8B,IAAK;EAClE,MAAMC,cAAc,GAAGD,KAAK,CAACE,SAAS,GAAI,eAAcF,KAAK,CAACE,SAAU,GAAE,GAAG,EAAE;EAC/E,OAAQ;AACV,sBAAsBF,KAAK,CAACG,aAAc;AAC1C,MAAMF,cAAe;AACrB,gCAAgCD,KAAK,CAACI,qBAAqB,IAAI,KAAM;AACrE,kCAAkCJ,KAAK,CAACK,uBAAuB,IAAI,KAAM;AACzE,GAAG;AACH,CAAC;AAACC,OAAA,CAAAP,gBAAA,GAAAA,gBAAA;AAEK,MAAMQ,gBAAgB,GAAGA,CAAA,KAAM;EACpC,OAAQ;AACV;AACA,qCAAqCC,yBAAW,CAACC,oBAAqB;AACtE;AACA;AACA,GAAG;AACH,CAAC;AAACH,OAAA,CAAAC,gBAAA,GAAAA,gBAAA;AAEK,MAAMG,2BAA2B,GAAIC,UAA0B,IAAK;EACzEA,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEC,gBAAgB,CAAE,4BAA2BC,8BAAgB,CAACC,OAAQ,IAAG,CAAC;AACxF,CAAC;AAACR,OAAA,CAAAI,2BAAA,GAAAA,2BAAA;AAEK,MAAMK,gCAAgC,GAAGA,CAACJ,UAA0B,EAAEK,MAA2B,KAAK;EAC3GL,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEC,gBAAgB,CAAE,iCAAgCI,MAAO,IAAG,CAAC;AAC3E,CAAC;AAACV,OAAA,CAAAS,gCAAA,GAAAA,gCAAA;AAEK,MAAME,0BAA0B,GAAGA,CAACN,UAA0B,EAAEO,mBAA+C,KAAK;EACzH,IAAIA,mBAAmB,IAAIA,mBAAmB,CAACC,YAAY,CAACC,QAAQ,CAACP,8BAAgB,CAACC,OAAO,CAACO,OAAO,EAAE,CAAC,EAAE;IACxGV,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEC,gBAAgB,CAAE,yBAAwBU,IAAI,CAACC,SAAS,CAACL,mBAAmB,CAAE,IAAG,CAAC;EAChG;AACF,CAAC;AAACZ,OAAA,CAAAW,0BAAA,GAAAA,0BAAA;AAEK,MAAMO,oBAAoB,GAAIC,gBAAuC,IAAK;EAC/E,OAAOA,gBAAgB,CAACC,IAAI,CAACC,eAAe,CAACP,QAAQ,CAACQ,iCAAa,CAACC,IAAI,CAAC,GAAGD,iCAAa,CAACC,IAAI,GAAGD,iCAAa,CAACE,IAAI;AACrH,CAAC;AAACxB,OAAA,CAAAkB,oBAAA,GAAAA,oBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_unitMessages","_listenerToBus","_pageMessage","_bodyHtml","_WebComponent","_UNActivityComponent","_EventBus","_interopRequireDefault","_onLoadMessage","_activityMessage","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","DEFAULT_HEIGHT","Dimensions","height","UNActivityComponent","props","webRef","useRef","defaultHeight","setDefaultHeight","useState","requestRefresh","data","injectRefreshEventIfNeeded","current","dispatchActivityFiltersChanged","query","injectFiltersChanged","useListenerToBus","busEventKey","UnitMessage","UNIT_REQUEST_REFRESH","action","ActivityMessage","UNIT_ACTIVITY_FILTERS_CHANGED","handleUnitOnLoad","response","onLoad","RESPONSE_KEYS","errors","authorization","transactions","activityOnLoad","console","error","handleWebViewMessage","message","type","UNIT_REQUEST_RENDERING","event","componentName","WebComponentType","activity","componentResourceId","accountId","requestRenderingEvent","details","EventBus","Instance","UNIT_ON_LOAD","PageMessage","PAGE_HEIGHT","currentHeight","renderActivityWebView","createElement","WebComponent","ref","presentationMode","PresentationMode","Inherit","params","getActivityParams","onMessage","nestedScrollEnabled","theme","language","script","getActivityScript","View","style","exports"],"sources":["UNActivityComponent.tsx"],"sourcesContent":["import React, { useRef, useState } from 'react';\nimport { Dimensions, View } from 'react-native';\nimport { RequestRefreshEvent, RequestRenderingEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { useListenerToBus } from '../../hooks/listenerToBus';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { UNError, UNOnLoadResponse, UNOnLoadResponseData } from '../../sharedTypes';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { getActivityParams, getActivityScript, injectFiltersChanged, injectRefreshEventIfNeeded } from './UNActivityComponent.utils';\nimport type WebView from 'react-native-webview';\nimport type { BottomSheetSlotData } from '../UNBottomSheetComponent/UNBottomSheetComponent';\nimport EventBus from '../../helpers/EventBus';\nimport type { UNActivityOnLoadData } from '../../sharedTypes/activity.types';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\nimport { ActivityMessage } from '../../messages/webMessages/activityMessage';\n\nconst DEFAULT_HEIGHT = Dimensions.get('window').height * 0.5;\nexport interface UNActivityComponentProps {\n // inputs\n accountId: string;\n customerToken: string;\n queryFilter?: string\n\n // ui\n theme?: string;\n language?: string;\n hideFilterButton?: boolean;\n\n // event\n onLoad?: (response: UNOnLoadResponse<UNActivityOnLoadData>) => void;\n}\n\nexport const UNActivityComponent = (props: UNActivityComponentProps) => {\n const webRef = useRef<WebView>(null);\n const [defaultHeight, setDefaultHeight] = useState<number>();\n\n const requestRefresh = (data: RequestRefreshEvent) => {\n injectRefreshEventIfNeeded(webRef.current, data);\n };\n\n const dispatchActivityFiltersChanged = (query: string) => {\n injectFiltersChanged(webRef.current, query);\n };\n\n useListenerToBus({ busEventKey: UnitMessage.UNIT_REQUEST_REFRESH, action: requestRefresh });\n useListenerToBus({ busEventKey: ActivityMessage.UNIT_ACTIVITY_FILTERS_CHANGED, action: dispatchActivityFiltersChanged });\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.authorization in response && RESPONSE_KEYS.transactions in response) {\n // ActivityOnLoadResponse;\n const activityOnLoad: UNOnLoadResponseData<UNActivityOnLoadData> = {\n data: {\n [RESPONSE_KEYS.authorization]: response[RESPONSE_KEYS.authorization].data,\n [RESPONSE_KEYS.transactions]: response[RESPONSE_KEYS.transactions].data\n }\n };\n props.onLoad(activityOnLoad);\n return;\n }\n\n console.error('On Load Error: unexpected response type');\n return;\n };\n\n const handleWebViewMessage = (message: WebViewMessage) => {\n switch (message.type) {\n case UnitMessage.UNIT_REQUEST_RENDERING: {\n const event: BottomSheetSlotData = {\n componentName: WebComponentType.activity,\n componentResourceId: props.accountId,\n requestRenderingEvent: message.details as RequestRenderingEvent\n };\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_RENDERING, event);\n break;\n }\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 currentHeight === 0 && setDefaultHeight(DEFAULT_HEIGHT);\n break;\n }\n }\n };\n\n const renderActivityWebView = () => {\n return (\n <WebComponent\n ref={webRef}\n type={WebComponentType.activity}\n presentationMode={PresentationMode.Inherit}\n params={getActivityParams(props)}\n onMessage={(message: WebViewMessage) => handleWebViewMessage(message)}\n nestedScrollEnabled={true}\n theme={props.theme}\n language={props.language}\n script={getActivityScript()}\n />\n );\n };\n\n if (!defaultHeight) {\n return renderActivityWebView();\n }\n\n return (\n <View style={{ height: defaultHeight }}>\n {renderActivityWebView()}\n </View>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_unitMessages","_listenerToBus","_pageMessage","_bodyHtml","_WebComponent","_UNActivityComponent","_EventBus","_interopRequireDefault","_onLoadMessage","_activityMessage","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","DEFAULT_HEIGHT","Dimensions","height","UNActivityComponent","props","webRef","useRef","defaultHeight","setDefaultHeight","useState","requestRefresh","data","injectRefreshEventIfNeeded","current","dispatchActivityFiltersChanged","query","injectFiltersChanged","useListenerToBus","busEventKey","UnitMessage","UNIT_REQUEST_REFRESH","action","ActivityMessage","UNIT_ACTIVITY_FILTERS_CHANGED","handleUnitOnLoad","response","onLoad","RESPONSE_KEYS","errors","authorization","transactions","activityOnLoad","console","error","handleWebViewMessage","message","type","UNIT_REQUEST_RENDERING","event","componentName","WebComponentType","activity","componentResourceId","accountId","requestRenderingEvent","details","EventBus","Instance","UNIT_ON_LOAD","PageMessage","PAGE_HEIGHT","currentHeight","renderActivityWebView","createElement","WebComponent","ref","presentationMode","PresentationMode","Inherit","params","getActivityParams","onMessage","nestedScrollEnabled","theme","language","script","getActivityScript","View","style","exports"],"sources":["UNActivityComponent.tsx"],"sourcesContent":["import React, { useRef, useState } from 'react';\nimport { Dimensions, View } from 'react-native';\nimport { RequestRefreshEvent, RequestRenderingEvent, UnitMessage } from '../../messages/webMessages/unitMessages';\nimport { useListenerToBus } from '../../hooks/listenerToBus';\nimport type { WebViewMessage } from '../../messages/webMessages';\nimport { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';\nimport { PresentationMode } from '../../scripts/html/bodyHtml';\nimport type { UNError, UNOnLoadResponse, UNOnLoadResponseData } from '../../sharedTypes';\nimport { WebComponent, WebComponentType } from '../../webComponent/WebComponent';\nimport { getActivityParams, getActivityScript, injectFiltersChanged, injectRefreshEventIfNeeded } from './UNActivityComponent.utils';\nimport type WebView from 'react-native-webview';\nimport type { BottomSheetSlotData } from '../UNBottomSheetComponent/UNBottomSheetComponent';\nimport EventBus from '../../helpers/EventBus';\nimport type { UNActivityOnLoadData } from '../../sharedTypes/activity.types';\nimport { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';\nimport { ActivityMessage } from '../../messages/webMessages/activityMessage';\n\nconst DEFAULT_HEIGHT = Dimensions.get('window').height * 0.5;\nexport interface UNActivityComponentProps {\n // inputs\n customerToken: string;\n accountId?: string;\n queryFilter?: string\n\n // ui\n theme?: string;\n language?: string;\n hideFilterButton?: boolean;\n\n // event\n onLoad?: (response: UNOnLoadResponse<UNActivityOnLoadData>) => void;\n}\n\nexport const UNActivityComponent = (props: UNActivityComponentProps) => {\n const webRef = useRef<WebView>(null);\n const [defaultHeight, setDefaultHeight] = useState<number>();\n\n const requestRefresh = (data: RequestRefreshEvent) => {\n injectRefreshEventIfNeeded(webRef.current, data);\n };\n\n const dispatchActivityFiltersChanged = (query: string) => {\n injectFiltersChanged(webRef.current, query);\n };\n\n useListenerToBus({ busEventKey: UnitMessage.UNIT_REQUEST_REFRESH, action: requestRefresh });\n useListenerToBus({ busEventKey: ActivityMessage.UNIT_ACTIVITY_FILTERS_CHANGED, action: dispatchActivityFiltersChanged });\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.authorization in response && RESPONSE_KEYS.transactions in response) {\n // ActivityOnLoadResponse;\n const activityOnLoad: UNOnLoadResponseData<UNActivityOnLoadData> = {\n data: {\n [RESPONSE_KEYS.authorization]: response[RESPONSE_KEYS.authorization].data,\n [RESPONSE_KEYS.transactions]: response[RESPONSE_KEYS.transactions].data\n }\n };\n props.onLoad(activityOnLoad);\n return;\n }\n\n console.error('On Load Error: unexpected response type');\n return;\n };\n\n const handleWebViewMessage = (message: WebViewMessage) => {\n switch (message.type) {\n case UnitMessage.UNIT_REQUEST_RENDERING: {\n const event: BottomSheetSlotData = {\n componentName: WebComponentType.activity,\n componentResourceId: props.accountId,\n requestRenderingEvent: message.details as RequestRenderingEvent\n };\n EventBus.Instance.event(UnitMessage.UNIT_REQUEST_RENDERING, event);\n break;\n }\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 currentHeight === 0 && setDefaultHeight(DEFAULT_HEIGHT);\n break;\n }\n }\n };\n\n const renderActivityWebView = () => {\n return (\n <WebComponent\n ref={webRef}\n type={WebComponentType.activity}\n presentationMode={PresentationMode.Inherit}\n params={getActivityParams(props)}\n onMessage={(message: WebViewMessage) => handleWebViewMessage(message)}\n nestedScrollEnabled={true}\n theme={props.theme}\n language={props.language}\n script={getActivityScript()}\n />\n );\n };\n\n if (!defaultHeight) {\n return renderActivityWebView();\n }\n\n return (\n <View style={{ height: defaultHeight }}>\n {renderActivityWebView()}\n </View>\n );\n};\n"],"mappings":"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"}
@@ -7,10 +7,11 @@ exports.injectRefreshEventIfNeeded = exports.injectFiltersChanged = exports.getA
7
7
  var _WebComponent = require("./../../webComponent/WebComponent");
8
8
  var _bodyScript = require("./../../scripts/html/bodyScript");
9
9
  const getActivityParams = props => {
10
+ const accountIdParam = props.accountId ? `account-id="${props.accountId}"` : '';
10
11
  const queryFilterParam = props.queryFilter ? `query-filter="${props.queryFilter}"` : '';
11
12
  return `
12
- account-id="${props.accountId}"
13
13
  customer-token="${props.customerToken}"
14
+ ${accountIdParam}
14
15
  hide-filter-button="${props.hideFilterButton || false}"
15
16
  ${queryFilterParam}
16
17
  style="height: 100%"
@@ -1 +1 @@
1
- {"version":3,"names":["_WebComponent","require","_bodyScript","getActivityParams","props","queryFilterParam","queryFilter","accountId","customerToken","hideFilterButton","exports","getActivityScript","DISPATCH_REQUEST_REFRESH","injectRefreshEventIfNeeded","currentWeb","requestRefreshEvent","dependencies","includes","WebComponentType","activity","valueOf","injectJavaScript","JSON","stringify","injectFiltersChanged","query"],"sources":["UNActivityComponent.utils.ts"],"sourcesContent":["import { WebComponentType } from './../../webComponent/WebComponent';\nimport type { RequestRefreshEvent } from './../../messages/webMessages/unitMessages';\nimport type { WebView } from 'react-native-webview';\nimport { DISPATCH_REQUEST_REFRESH } from './../../scripts/html/bodyScript';\nimport type { UNActivityComponentProps } from './UNActivityComponent';\n\nexport const getActivityParams = (props: UNActivityComponentProps) => {\n const queryFilterParam = props.queryFilter ? `query-filter=\"${props.queryFilter}\"` : '';\n return `\n account-id=\"${props.accountId}\"\n customer-token=\"${props.customerToken}\"\n hide-filter-button=\"${props.hideFilterButton || false}\"\n ${queryFilterParam}\n style=\"height: 100%\"\n `;\n};\n\nexport const getActivityScript = () => {\n return DISPATCH_REQUEST_REFRESH;\n};\n\nexport const injectRefreshEventIfNeeded = (currentWeb: WebView | null, requestRefreshEvent: RequestRefreshEvent | null) => {\n if (requestRefreshEvent && requestRefreshEvent.dependencies.includes(WebComponentType.activity.valueOf())) {\n currentWeb?.injectJavaScript(`dispatchRefreshEvent('${JSON.stringify(requestRefreshEvent)}')`);\n }\n};\n\nexport const injectFiltersChanged = (currentWeb: WebView | null, query: string) => {\n currentWeb?.injectJavaScript(`dispatchActivityFilterChangedEvent('${query}')`);\n};\n"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAGA,IAAAC,WAAA,GAAAD,OAAA;AAGO,MAAME,iBAAiB,GAAIC,KAA+B,IAAK;EACpE,MAAMC,gBAAgB,GAAGD,KAAK,CAACE,WAAW,GAAI,iBAAgBF,KAAK,CAACE,WAAY,GAAE,GAAG,EAAE;EACvF,OAAQ;AACV,kBAAkBF,KAAK,CAACG,SAAU;AAClC,sBAAsBH,KAAK,CAACI,aAAc;AAC1C,0BAA0BJ,KAAK,CAACK,gBAAgB,IAAI,KAAM;AAC1D,MAAMJ,gBAAiB;AACvB;AACA,GAAG;AACH,CAAC;AAACK,OAAA,CAAAP,iBAAA,GAAAA,iBAAA;AAEK,MAAMQ,iBAAiB,GAAGA,CAAA,KAAM;EACrC,OAAOC,oCAAwB;AACjC,CAAC;AAACF,OAAA,CAAAC,iBAAA,GAAAA,iBAAA;AAEK,MAAME,0BAA0B,GAAGA,CAACC,UAA0B,EAAEC,mBAA+C,KAAK;EACzH,IAAIA,mBAAmB,IAAIA,mBAAmB,CAACC,YAAY,CAACC,QAAQ,CAACC,8BAAgB,CAACC,QAAQ,CAACC,OAAO,EAAE,CAAC,EAAE;IACzGN,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEO,gBAAgB,CAAE,yBAAwBC,IAAI,CAACC,SAAS,CAACR,mBAAmB,CAAE,IAAG,CAAC;EAChG;AACF,CAAC;AAACL,OAAA,CAAAG,0BAAA,GAAAA,0BAAA;AAEK,MAAMW,oBAAoB,GAAGA,CAACV,UAA0B,EAAEW,KAAa,KAAK;EACjFX,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEO,gBAAgB,CAAE,uCAAsCI,KAAM,IAAG,CAAC;AAChF,CAAC;AAACf,OAAA,CAAAc,oBAAA,GAAAA,oBAAA"}
1
+ {"version":3,"names":["_WebComponent","require","_bodyScript","getActivityParams","props","accountIdParam","accountId","queryFilterParam","queryFilter","customerToken","hideFilterButton","exports","getActivityScript","DISPATCH_REQUEST_REFRESH","injectRefreshEventIfNeeded","currentWeb","requestRefreshEvent","dependencies","includes","WebComponentType","activity","valueOf","injectJavaScript","JSON","stringify","injectFiltersChanged","query"],"sources":["UNActivityComponent.utils.ts"],"sourcesContent":["import { WebComponentType } from './../../webComponent/WebComponent';\nimport type { RequestRefreshEvent } from './../../messages/webMessages/unitMessages';\nimport type { WebView } from 'react-native-webview';\nimport { DISPATCH_REQUEST_REFRESH } from './../../scripts/html/bodyScript';\nimport type { UNActivityComponentProps } from './UNActivityComponent';\n\nexport const getActivityParams = (props: UNActivityComponentProps) => {\n const accountIdParam = props.accountId ? `account-id=\"${props.accountId}\"` : '';\n const queryFilterParam = props.queryFilter ? `query-filter=\"${props.queryFilter}\"` : '';\n\n return `\n customer-token=\"${props.customerToken}\"\n ${accountIdParam}\n hide-filter-button=\"${props.hideFilterButton || false}\"\n ${queryFilterParam}\n style=\"height: 100%\"\n `;\n};\n\nexport const getActivityScript = () => {\n return DISPATCH_REQUEST_REFRESH;\n};\n\nexport const injectRefreshEventIfNeeded = (currentWeb: WebView | null, requestRefreshEvent: RequestRefreshEvent | null) => {\n if (requestRefreshEvent && requestRefreshEvent.dependencies.includes(WebComponentType.activity.valueOf())) {\n currentWeb?.injectJavaScript(`dispatchRefreshEvent('${JSON.stringify(requestRefreshEvent)}')`);\n }\n};\n\nexport const injectFiltersChanged = (currentWeb: WebView | null, query: string) => {\n currentWeb?.injectJavaScript(`dispatchActivityFilterChangedEvent('${query}')`);\n};\n"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAGA,IAAAC,WAAA,GAAAD,OAAA;AAGO,MAAME,iBAAiB,GAAIC,KAA+B,IAAK;EACpE,MAAMC,cAAc,GAAGD,KAAK,CAACE,SAAS,GAAI,eAAcF,KAAK,CAACE,SAAU,GAAE,GAAG,EAAE;EAC/E,MAAMC,gBAAgB,GAAGH,KAAK,CAACI,WAAW,GAAI,iBAAgBJ,KAAK,CAACI,WAAY,GAAE,GAAG,EAAE;EAEvF,OAAQ;AACV,sBAAsBJ,KAAK,CAACK,aAAc;AAC1C,MAAMJ,cAAe;AACrB,0BAA0BD,KAAK,CAACM,gBAAgB,IAAI,KAAM;AAC1D,MAAMH,gBAAiB;AACvB;AACA,GAAG;AACH,CAAC;AAACI,OAAA,CAAAR,iBAAA,GAAAA,iBAAA;AAEK,MAAMS,iBAAiB,GAAGA,CAAA,KAAM;EACrC,OAAOC,oCAAwB;AACjC,CAAC;AAACF,OAAA,CAAAC,iBAAA,GAAAA,iBAAA;AAEK,MAAME,0BAA0B,GAAGA,CAACC,UAA0B,EAAEC,mBAA+C,KAAK;EACzH,IAAIA,mBAAmB,IAAIA,mBAAmB,CAACC,YAAY,CAACC,QAAQ,CAACC,8BAAgB,CAACC,QAAQ,CAACC,OAAO,EAAE,CAAC,EAAE;IACzGN,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEO,gBAAgB,CAAE,yBAAwBC,IAAI,CAACC,SAAS,CAACR,mBAAmB,CAAE,IAAG,CAAC;EAChG;AACF,CAAC;AAACL,OAAA,CAAAG,0BAAA,GAAAA,0BAAA;AAEK,MAAMW,oBAAoB,GAAGA,CAACV,UAA0B,EAAEW,KAAa,KAAK;EACjFX,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEO,gBAAgB,CAAE,uCAAsCI,KAAM,IAAG,CAAC;AAChF,CAAC;AAACf,OAAA,CAAAc,oBAAA,GAAAA,oBAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_WebComponent","_bodyHtml","_UNBookPaymentComponent","_pageMessage","_reactNative","_unitMessages","_paymentsMessage","_onLoadMessage","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UNBookPaymentComponent","props","height","setHeight","useState","presentationMode","setPresentationMode","PresentationMode","Inherit","handleUnitOnLoad","response","onLoad","RESPONSE_KEYS","errors","account","console","error","handleWebViewMessage","message","details","type","PaymentMessage","PAYMENT_CREATED","onPaymentCreated","data","UnitMessage","UNIT_ON_LOAD","PageMessage","PAGE_HEIGHT","currentHeight","Default","renderBookPaymentWebView","createElement","WebComponent","WebComponentType","bookPayment","params","getBookPaymentParams","script","getBookPaymentScript","onMessage","isScrollable","theme","language","View","style","exports"],"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 language?: 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 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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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_WebComponent","_bodyHtml","_UNBookPaymentComponent","_pageMessage","_reactNative","_unitMessages","_paymentsMessage","_onLoadMessage","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UNBookPaymentComponent","props","height","setHeight","useState","presentationMode","setPresentationMode","PresentationMode","Inherit","handleUnitOnLoad","response","onLoad","RESPONSE_KEYS","errors","account","console","error","handleWebViewMessage","message","details","type","PaymentMessage","PAYMENT_CREATED","onPaymentCreated","data","UnitMessage","UNIT_ON_LOAD","PageMessage","PAGE_HEIGHT","currentHeight","Default","renderBookPaymentWebView","createElement","WebComponent","WebComponentType","bookPayment","params","getBookPaymentParams","script","getBookPaymentScript","onMessage","isScrollable","theme","language","View","style","exports"],"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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"}
@@ -13,6 +13,7 @@ const getBookPaymentParams = props => {
13
13
  is-same-customer="${props.isSameCustomer}"
14
14
  counterparty-account-id="${props.counterPartyAccountId}"
15
15
  counterparty-name="${props.counterPartyName}"
16
+ is-auto-focus="${props.isAutoFocus || false}"
16
17
  style="height: 100%"
17
18
  `;
18
19
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_bodyScript","require","_paymentsMessage","getBookPaymentParams","props","accountId","customerToken","isSameCustomer","counterPartyAccountId","counterPartyName","exports","getBookPaymentScript","PaymentMessage","PAYMENT_CREATED","LISTENERS","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,IAAAA,WAAA,GAAAC,OAAA;AAGA,IAAAC,gBAAA,GAAAD,OAAA;AAEO,MAAME,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;AAACC,OAAA,CAAAP,oBAAA,GAAAA,oBAAA;AAEK,MAAMQ,oBAAoB,GAAGA,CAAA,KAAM;EACxC,OAAQ;AACV,+BAA+BC,+BAAc,CAACC,eAAgB;AAC9D;AACA;AACA,sCAAsCD,+BAAc,CAACC,eAAgB;AACrE;AACA;AACA;AACA;AACA;AACA,MAAMC,qBAAS,CAACC,cAAe;AAC/B,GAAG;AACH,CAAC;AAACL,OAAA,CAAAC,oBAAA,GAAAA,oBAAA"}
1
+ {"version":3,"names":["_bodyScript","require","_paymentsMessage","getBookPaymentParams","props","accountId","customerToken","isSameCustomer","counterPartyAccountId","counterPartyName","isAutoFocus","exports","getBookPaymentScript","PaymentMessage","PAYMENT_CREATED","LISTENERS","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,IAAAA,WAAA,GAAAC,OAAA;AAGA,IAAAC,gBAAA,GAAAD,OAAA;AAEO,MAAME,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;AAACC,OAAA,CAAAR,oBAAA,GAAAA,oBAAA;AAEK,MAAMS,oBAAoB,GAAGA,CAAA,KAAM;EACxC,OAAQ;AACV,+BAA+BC,+BAAc,CAACC,eAAgB;AAC9D;AACA;AACA,sCAAsCD,+BAAc,CAACC,eAAgB;AACrE;AACA;AACA;AACA;AACA;AACA,MAAMC,qBAAS,CAACC,cAAe;AAC/B,GAAG;AACH,CAAC;AAACL,OAAA,CAAAC,oBAAA,GAAAA,oBAAA"}