@deuna/react-native-sdk 1.0.1 → 1.0.2

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 (53) hide show
  1. package/lib/module/DeunaSDK.js +19 -3
  2. package/lib/module/DeunaSDK.js.map +1 -1
  3. package/lib/module/components/DeunaWidget.js +3 -0
  4. package/lib/module/components/DeunaWidget.js.map +1 -1
  5. package/lib/module/components/DeviceFingerprintWebView.js +44 -0
  6. package/lib/module/components/DeviceFingerprintWebView.js.map +1 -0
  7. package/lib/module/controllers/BaseWebViewController.js +9 -9
  8. package/lib/module/controllers/BaseWebViewController.js.map +1 -1
  9. package/lib/module/controllers/DeviceFingerprintController.js +69 -0
  10. package/lib/module/controllers/DeviceFingerprintController.js.map +1 -0
  11. package/lib/module/controllers/OpenInNewTabController.js +3 -3
  12. package/lib/module/controllers/OpenInNewTabController.js.map +1 -1
  13. package/lib/module/interfaces/constants.js +1 -0
  14. package/lib/module/interfaces/constants.js.map +1 -1
  15. package/lib/module/types/helpers/buildElementsLink.js +13 -15
  16. package/lib/module/types/helpers/buildElementsLink.js.map +1 -1
  17. package/lib/module/types/helpers/buildNextActionLink.js +1 -2
  18. package/lib/module/types/helpers/buildNextActionLink.js.map +1 -1
  19. package/lib/module/types/helpers/buildPaymentLink.js +1 -2
  20. package/lib/module/types/helpers/buildPaymentLink.js.map +1 -1
  21. package/lib/module/types/helpers/buildVoucherLink.js +1 -2
  22. package/lib/module/types/helpers/buildVoucherLink.js.map +1 -1
  23. package/lib/typescript/deuna-sdk-react-native/src/DeunaSDK.d.ts +8 -1
  24. package/lib/typescript/deuna-sdk-react-native/src/DeunaSDK.d.ts.map +1 -1
  25. package/lib/typescript/deuna-sdk-react-native/src/components/DeunaWidget.d.ts.map +1 -1
  26. package/lib/typescript/deuna-sdk-react-native/src/components/DeviceFingerprintWebView.d.ts +7 -0
  27. package/lib/typescript/deuna-sdk-react-native/src/components/DeviceFingerprintWebView.d.ts.map +1 -0
  28. package/lib/typescript/deuna-sdk-react-native/src/controllers/BaseWebViewController.d.ts +2 -3
  29. package/lib/typescript/deuna-sdk-react-native/src/controllers/BaseWebViewController.d.ts.map +1 -1
  30. package/lib/typescript/deuna-sdk-react-native/src/controllers/DeviceFingerprintController.d.ts +15 -0
  31. package/lib/typescript/deuna-sdk-react-native/src/controllers/DeviceFingerprintController.d.ts.map +1 -0
  32. package/lib/typescript/deuna-sdk-react-native/src/controllers/OpenInNewTabController.d.ts +1 -2
  33. package/lib/typescript/deuna-sdk-react-native/src/controllers/OpenInNewTabController.d.ts.map +1 -1
  34. package/lib/typescript/deuna-sdk-react-native/src/interfaces/constants.d.ts +1 -0
  35. package/lib/typescript/deuna-sdk-react-native/src/interfaces/constants.d.ts.map +1 -1
  36. package/lib/typescript/deuna-sdk-react-native/src/types/base.d.ts +2 -2
  37. package/lib/typescript/deuna-sdk-react-native/src/types/helpers/buildElementsLink.d.ts +1 -1
  38. package/lib/typescript/deuna-sdk-react-native/src/types/helpers/buildElementsLink.d.ts.map +1 -1
  39. package/lib/typescript/deuna-sdk-react-native/src/types/helpers/buildNextActionLink.d.ts.map +1 -1
  40. package/lib/typescript/deuna-sdk-react-native/src/types/helpers/buildPaymentLink.d.ts.map +1 -1
  41. package/lib/typescript/deuna-sdk-react-native/src/types/helpers/buildVoucherLink.d.ts.map +1 -1
  42. package/package.json +1 -1
  43. package/src/DeunaSDK.ts +25 -3
  44. package/src/components/DeunaWidget.tsx +2 -0
  45. package/src/components/DeviceFingerprintWebView.tsx +58 -0
  46. package/src/controllers/BaseWebViewController.ts +11 -11
  47. package/src/controllers/DeviceFingerprintController.ts +86 -0
  48. package/src/controllers/OpenInNewTabController.ts +4 -5
  49. package/src/interfaces/constants.ts +3 -0
  50. package/src/types/helpers/buildElementsLink.ts +16 -19
  51. package/src/types/helpers/buildNextActionLink.ts +1 -2
  52. package/src/types/helpers/buildPaymentLink.ts +1 -2
  53. package/src/types/helpers/buildVoucherLink.ts +1 -2
@@ -8,6 +8,8 @@ import { Completer } from "./helpers/Completer.js";
8
8
  import { ElementsWidgetController } from "./controllers/ElementsWidgetController.js";
9
9
  import { DownloadType, Mode } from "./interfaces/types.js";
10
10
  import { Platform } from 'react-native';
11
+ import { DeviceFingerprintController } from "./controllers/DeviceFingerprintController.js";
12
+ import { DEVICE_FINGERPRINT_URL } from "./interfaces/constants.js";
11
13
  export class DeunaSDK extends BaseDeuna {
12
14
  constructor(config) {
13
15
  super();
@@ -17,6 +19,7 @@ export class DeunaSDK extends BaseDeuna {
17
19
  listeners = new Set();
18
20
  webViewController = null;
19
21
  newTabWebViewController = null;
22
+ deviceFingerprintController = null;
20
23
  modalDismissPromise = null;
21
24
  newTabModalDismissPromise = null;
22
25
  get safeWebViewController() {
@@ -27,9 +30,22 @@ export class DeunaSDK extends BaseDeuna {
27
30
  }
28
31
  return this.webViewController;
29
32
  }
30
- getSessionId() {
31
- throw new Error('Method not implemented.');
32
- }
33
+
34
+ /**
35
+ * Generates a device fingerprint, creates a invisible webview to get the device fingerprint
36
+ * and returns the device fingerprint
37
+ * @returns The device fingerprint
38
+ */
39
+ getSessionId = async params => {
40
+ this.deviceFingerprintController = new DeviceFingerprintController(this.config.publicApiKey, this.config.environment ?? 'production');
41
+ this.deviceFingerprintController.url = DEVICE_FINGERPRINT_URL;
42
+ this.notifyListeners();
43
+ const deviceFingerprint = await this.deviceFingerprintController.generateDeviceFingerprint(params ?? {});
44
+ this.deviceFingerprintController?.dispose();
45
+ this.deviceFingerprintController = null;
46
+ this.notifyListeners();
47
+ return deviceFingerprint ?? '';
48
+ };
33
49
  static initialize(config) {
34
50
  return new DeunaSDK(config);
35
51
  }
@@ -1 +1 @@
1
- {"version":3,"names":["BaseDeuna","PaymentWidgetController","OpenInNewTabController","getWidgetController","Completer","ElementsWidgetController","DownloadType","Mode","Platform","DeunaSDK","constructor","config","mode","listeners","Set","webViewController","newTabWebViewController","modalDismissPromise","newTabModalDismissPromise","safeWebViewController","errorMessage","console","error","Error","getSessionId","initialize","setWidgetController","params","controller","MODAL","OS","delegate","buildDelegate","notifyListeners","initPaymentWidget","props","widget","initElements","initNextAction","initVoucherWidget","isValid","submit","setCustomStyle","style","refetchOrder","getWidgetState","close","callbacks","onClosed","closedAction","onCloseNewTab","wait","dispose","onModalDismissed","complete","onNewTabDismissed","addListener","listener","add","removeListener","delete","forEach","notifyDownloadFile","url","onDownloadFile","type","URL","data","redirectUrl","onOpenInNewTab","onFileDownload","onNewTabWindowClose","onCloseButtonPressed","onCloseSubWebView"],"sourceRoot":"../../src","sources":["DeunaSDK.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["BaseDeuna","PaymentWidgetController","OpenInNewTabController","getWidgetController","Completer","ElementsWidgetController","DownloadType","Mode","Platform","DeviceFingerprintController","DEVICE_FINGERPRINT_URL","DeunaSDK","constructor","config","mode","listeners","Set","webViewController","newTabWebViewController","deviceFingerprintController","modalDismissPromise","newTabModalDismissPromise","safeWebViewController","errorMessage","console","error","Error","getSessionId","params","publicApiKey","environment","url","notifyListeners","deviceFingerprint","generateDeviceFingerprint","dispose","initialize","setWidgetController","controller","MODAL","OS","delegate","buildDelegate","initPaymentWidget","props","widget","initElements","initNextAction","initVoucherWidget","isValid","submit","setCustomStyle","style","refetchOrder","getWidgetState","close","callbacks","onClosed","closedAction","onCloseNewTab","wait","onModalDismissed","complete","onNewTabDismissed","addListener","listener","add","removeListener","delete","forEach","notifyDownloadFile","onDownloadFile","type","URL","data","redirectUrl","onOpenInNewTab","onFileDownload","onNewTabWindowClose","onCloseButtonPressed","onCloseSubWebView"],"sourceRoot":"../../src","sources":["DeunaSDK.ts"],"mappings":"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","ignoreList":[]}
@@ -5,6 +5,7 @@ import { useEffect, useRef, useState } from 'react';
5
5
  import { DeunaWebView } from "./DeunaWebView.js";
6
6
  import { NewTabWebView } from "./NewTabWebView.js";
7
7
  import { Mode } from "../interfaces/types.js";
8
+ import { DeviceFingerprintWebView } from "./DeviceFingerprintWebView.js";
8
9
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
9
10
  export const DeunaWidget = props => {
10
11
  const {
@@ -73,6 +74,8 @@ export const DeunaWidget = props => {
73
74
  onLoad: instanceRef.current.webViewController?.onLoad,
74
75
  onError: instanceRef.current.webViewController?.onError,
75
76
  onShouldStartLoadWithRequest: instanceRef.current.webViewController?.onShouldStartLoadWithRequest
77
+ }), /*#__PURE__*/_jsx(DeviceFingerprintWebView, {
78
+ instance: instanceRef.current
76
79
  })]
77
80
  });
78
81
  };
@@ -1 +1 @@
1
- {"version":3,"names":["Modal","SafeAreaView","StyleSheet","View","useEffect","useRef","useState","DeunaWebView","NewTabWebView","Mode","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","DeunaWidget","props","instance","instanceRef","mode","setMode","current","listener","addListener","removeListener","webViewController","dispose","isModal","MODAL","isEmbedded","EMBEDDED","onClose","controller","closedAction","close","children","presentationStyle","animationType","onRequestClose","onDismiss","onModalDismissed","visible","style","styles","container","url","onWebView","setWebView","onMessage","onLoad","onError","onShouldStartLoadWithRequest","create","flex"],"sourceRoot":"../../../src","sources":["components/DeunaWidget.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Modal","SafeAreaView","StyleSheet","View","useEffect","useRef","useState","DeunaWebView","NewTabWebView","Mode","DeviceFingerprintWebView","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","DeunaWidget","props","instance","instanceRef","mode","setMode","current","listener","addListener","removeListener","webViewController","dispose","isModal","MODAL","isEmbedded","EMBEDDED","onClose","controller","closedAction","close","children","presentationStyle","animationType","onRequestClose","onDismiss","onModalDismissed","visible","style","styles","container","url","onWebView","setWebView","onMessage","onLoad","onError","onShouldStartLoadWithRequest","create","flex"],"sourceRoot":"../../../src","sources":["components/DeunaWidget.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ import { useEffect, useRef, useState } from 'react';
4
+ import { DeunaWebView } from "./DeunaWebView.js";
5
+ import { View } from 'react-native';
6
+ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
7
+ export const DeviceFingerprintWebView = props => {
8
+ const {
9
+ instance
10
+ } = props;
11
+ const instanceRef = useRef(instance);
12
+ const [visible, setVisible] = useState(false);
13
+ useEffect(() => {
14
+ instanceRef.current = instance;
15
+ }, [instance]);
16
+
17
+ // Listen when the DeunaSDK instance configuration
18
+ // has changed
19
+ useEffect(() => {
20
+ const ref = instanceRef.current;
21
+ const listener = () => {
22
+ const isVisible = !!ref.deviceFingerprintController;
23
+ setVisible(isVisible);
24
+ };
25
+ instanceRef.current.addListener(listener);
26
+ return () => {
27
+ ref.removeListener(listener);
28
+ };
29
+ }, []);
30
+ const deviceFingerprintController = instanceRef.current.deviceFingerprintController;
31
+ return /*#__PURE__*/_jsx(_Fragment, {
32
+ children: visible && /*#__PURE__*/_jsx(View, {
33
+ children: /*#__PURE__*/_jsx(DeunaWebView, {
34
+ url: deviceFingerprintController?.url ?? '',
35
+ onWebView: deviceFingerprintController?.setWebView,
36
+ onMessage: deviceFingerprintController?.onMessage,
37
+ onLoad: deviceFingerprintController?.onLoad,
38
+ onError: deviceFingerprintController?.onError,
39
+ onShouldStartLoadWithRequest: deviceFingerprintController?.onShouldStartLoadWithRequest
40
+ })
41
+ })
42
+ });
43
+ };
44
+ //# sourceMappingURL=DeviceFingerprintWebView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useEffect","useRef","useState","DeunaWebView","View","jsx","_jsx","Fragment","_Fragment","DeviceFingerprintWebView","props","instance","instanceRef","visible","setVisible","current","ref","listener","isVisible","deviceFingerprintController","addListener","removeListener","children","url","onWebView","setWebView","onMessage","onLoad","onError","onShouldStartLoadWithRequest"],"sourceRoot":"../../../src","sources":["components/DeviceFingerprintWebView.tsx"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAEnD,SAASC,YAAY,QAAQ,mBAAgB;AAC7C,SAASC,IAAI,QAAQ,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA;AAMpC,OAAO,MAAMC,wBAAwB,GACnCC,KAAoC,IACjC;EACH,MAAM;IAAEC;EAAS,CAAC,GAAGD,KAAK;EAC1B,MAAME,WAAW,GAAGX,MAAM,CAAWU,QAAQ,CAAC;EAC9C,MAAM,CAACE,OAAO,EAAEC,UAAU,CAAC,GAAGZ,QAAQ,CAAC,KAAK,CAAC;EAE7CF,SAAS,CAAC,MAAM;IACdY,WAAW,CAACG,OAAO,GAAGJ,QAAQ;EAChC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;;EAEd;EACA;EACAX,SAAS,CAAC,MAAM;IACd,MAAMgB,GAAG,GAAGJ,WAAW,CAACG,OAAO;IAC/B,MAAME,QAAQ,GAAGA,CAAA,KAAM;MACrB,MAAMC,SAAS,GAAG,CAAC,CAACF,GAAG,CAACG,2BAA2B;MACnDL,UAAU,CAACI,SAAS,CAAC;IACvB,CAAC;IAEDN,WAAW,CAACG,OAAO,CAACK,WAAW,CAACH,QAAQ,CAAC;IAEzC,OAAO,MAAM;MACXD,GAAG,CAACK,cAAc,CAACJ,QAAQ,CAAC;IAC9B,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAME,2BAA2B,GAC/BP,WAAW,CAACG,OAAO,CAACI,2BAA2B;EAEjD,oBACEb,IAAA,CAAAE,SAAA;IAAAc,QAAA,EACGT,OAAO,iBACNP,IAAA,CAACF,IAAI;MAAAkB,QAAA,eACHhB,IAAA,CAACH,YAAY;QACXoB,GAAG,EAAEJ,2BAA2B,EAAEI,GAAG,IAAI,EAAG;QAC5CC,SAAS,EAAEL,2BAA2B,EAAEM,UAAW;QACnDC,SAAS,EAAEP,2BAA2B,EAAEO,SAAU;QAClDC,MAAM,EAAER,2BAA2B,EAAEQ,MAAO;QAC5CC,OAAO,EAAET,2BAA2B,EAAES,OAAQ;QAC9CC,4BAA4B,EAC1BV,2BAA2B,EAAEU;MAC9B,CACF;IAAC,CACE;EACP,CACD,CAAC;AAEP,CAAC","ignoreList":[]}
@@ -19,6 +19,11 @@ export class BaseWebViewController {
19
19
  webView = null;
20
20
  url = null;
21
21
  delegate = null;
22
+ jsExecutor = new JsExecutor();
23
+ setWebView = webView => {
24
+ this.webView = webView;
25
+ this.jsExecutor.webView = webView;
26
+ };
22
27
 
23
28
  /**
24
29
  * Called when the web view url is loaded successfully
@@ -77,11 +82,6 @@ export class DeunaWebViewController extends BaseWebViewController {
77
82
  hidePayButton = false;
78
83
  redirectUrl = null;
79
84
  closedAction = 'systemAction';
80
- jsExecutor = new JsExecutor();
81
- setWebView = webView => {
82
- this.webView = webView;
83
- this.jsExecutor.webView = webView;
84
- };
85
85
  onLoad = () => {
86
86
  this.setXprops();
87
87
  };
@@ -90,7 +90,6 @@ export class DeunaWebViewController extends BaseWebViewController {
90
90
  this.delegate?.onFileDownload?.(url);
91
91
  } else {
92
92
  this.redirectUrl = url;
93
- this.delegate?.onOpenInNewTab?.(url);
94
93
  }
95
94
  return false;
96
95
  };
@@ -128,8 +127,10 @@ export class DeunaWebViewController extends BaseWebViewController {
128
127
  mapper[eventData.type]?.();
129
128
  };
130
129
  setXprops = () => {
131
- // this.detectDownloadsAndRedirects(true);
132
130
  this.webView?.injectJavaScript(`
131
+ console.log = function(message) {
132
+ window.ReactNativeWebView.postMessage(JSON.stringify({ type: '${WebViewEventType.consoleLog}', message }));
133
+ };
133
134
  window.xprops = {
134
135
  hidePayButton: ${this.hidePayButton},
135
136
  onEventDispatch: function (event) {
@@ -174,8 +175,7 @@ export class DeunaWebViewController extends BaseWebViewController {
174
175
  * @returns The order data | returns null if the order is not found or an error occurs
175
176
  */
176
177
  refetchOrder = async () => {
177
- const result = await this.jsExecutor.execute(`
178
- if(typeof window.deunaRefetchOrder !== 'function'){
178
+ const result = await this.jsExecutor.execute(` if(typeof window.deunaRefetchOrder !== 'function'){
179
179
  sendResult({order: null});
180
180
  return;
181
181
  }
@@ -1 +1 @@
1
- {"version":3,"names":["DeunaLogs","submitError","Platform","WebViewEventType","DOWNLOAD_FILE_REGEX","BaseWebViewController","initialized","redirectUrl","webView","url","delegate","isDownloadUrl","test","onShouldStartLoadWithRequest","request","isNewNavigation","isTopFrame","isClickNavigation","navigationType","shouldHandleInNewTab","urlMustBeLoadedInTheSameWebView","shouldOpenInNewTab","OS","onOpenInNewTab","dispose","stopLoading","DeunaWebViewController","hidePayButton","closedAction","jsExecutor","JsExecutor","setWebView","onLoad","setXprops","onFileDownload","onMessage","event","eventData","JSON","parse","nativeEvent","data","mapper","consoleLog","info","stringify","message","eventDispatch","onEventDispatch","requestId","requests","get","delete","openInNewTab","redirect","newTabWindowClose","onNewTabWindowClose","type","injectJavaScript","getWidgetState","result","execute","deunaWidgetState","refetchOrder","order","setCustomStyle","style","isValid","submit","status","code","takeScreenshot","imgData","Map","jsCode","Promise","resolve","set"],"sourceRoot":"../../../src","sources":["controllers/BaseWebViewController.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["DeunaLogs","submitError","Platform","WebViewEventType","DOWNLOAD_FILE_REGEX","BaseWebViewController","initialized","redirectUrl","webView","url","delegate","jsExecutor","JsExecutor","setWebView","isDownloadUrl","test","onShouldStartLoadWithRequest","request","isNewNavigation","isTopFrame","isClickNavigation","navigationType","shouldHandleInNewTab","urlMustBeLoadedInTheSameWebView","shouldOpenInNewTab","OS","onOpenInNewTab","dispose","stopLoading","DeunaWebViewController","hidePayButton","closedAction","onLoad","setXprops","onFileDownload","onMessage","event","eventData","JSON","parse","nativeEvent","data","mapper","consoleLog","info","stringify","message","eventDispatch","onEventDispatch","requestId","requests","get","delete","openInNewTab","redirect","newTabWindowClose","onNewTabWindowClose","type","injectJavaScript","getWidgetState","result","execute","deunaWidgetState","refetchOrder","order","setCustomStyle","style","isValid","submit","status","code","takeScreenshot","imgData","Map","jsCode","Promise","resolve","set"],"sourceRoot":"../../../src","sources":["controllers/BaseWebViewController.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ import { BaseWebViewController, WebViewEventType } from "./BaseWebViewController.js";
4
+ import { Completer } from "../helpers/Completer.js";
5
+ import { DeunaLogs } from "../DeunaLogs.js";
6
+ export class DeviceFingerprintController extends BaseWebViewController {
7
+ constructor(publicApiKey, environment) {
8
+ super();
9
+ this.publicApiKey = publicApiKey;
10
+ this.environment = environment;
11
+ }
12
+ completer = new Completer();
13
+ onMessage = event => {
14
+ const eventData = JSON.parse(event.nativeEvent.data);
15
+ const mapper = {
16
+ [WebViewEventType.consoleLog]: () => {
17
+ DeunaLogs.info(`CONSOLE LOG`, JSON.stringify(eventData.message, null, 2));
18
+ },
19
+ [WebViewEventType.jsExecutor]: () => {
20
+ const {
21
+ data,
22
+ requestId
23
+ } = eventData;
24
+ this.jsExecutor.requests.get(requestId)?.(data);
25
+ this.jsExecutor.requests.delete(requestId);
26
+ }
27
+ };
28
+ mapper[eventData.type]?.();
29
+ };
30
+ onLoad = () => {
31
+ this.webView?.injectJavaScript(`
32
+ console.log = function(message) {
33
+ window.ReactNativeWebView.postMessage(JSON.stringify({ type: '${WebViewEventType.consoleLog}', message:message }));
34
+ };
35
+ `);
36
+ this.completer.complete(true);
37
+ };
38
+ onError = _ => {
39
+ this.completer.complete(false);
40
+ };
41
+ urlMustBeLoadedInTheSameWebView = _ => true;
42
+ generateDeviceFingerprint = async params => {
43
+ const isLoaded = await this.completer.wait;
44
+ if (!isLoaded) {
45
+ return null;
46
+ }
47
+ const data = await this.jsExecutor.execute(`
48
+ if (typeof window.generateFraudId !== 'function') {
49
+ console.log('❌ window.generateFraudId is not a function');
50
+ sendResult({fraudId: null});
51
+ return;
52
+ }
53
+
54
+ window.generateFraudId({
55
+ publicApiKey: "${this.publicApiKey}",
56
+ env: "${this.environment}",
57
+ params: ${JSON.stringify(params)}
58
+ })
59
+ .then((fraudId) => {
60
+ sendResult({ fraudId: fraudId });
61
+ })
62
+ .catch((error) => {
63
+ sendResult({ fraudId: null });
64
+ });
65
+ `);
66
+ return data?.fraudId ?? null;
67
+ };
68
+ }
69
+ //# sourceMappingURL=DeviceFingerprintController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["BaseWebViewController","WebViewEventType","Completer","DeunaLogs","DeviceFingerprintController","constructor","publicApiKey","environment","completer","onMessage","event","eventData","JSON","parse","nativeEvent","data","mapper","consoleLog","info","stringify","message","jsExecutor","requestId","requests","get","delete","type","onLoad","webView","injectJavaScript","complete","onError","_","urlMustBeLoadedInTheSameWebView","generateDeviceFingerprint","params","isLoaded","wait","execute","fraudId"],"sourceRoot":"../../../src","sources":["controllers/DeviceFingerprintController.ts"],"mappings":";;AACA,SACEA,qBAAqB,EACrBC,gBAAgB,QACX,4BAAyB;AAChC,SAASC,SAAS,QAAQ,yBAAsB;AAEhD,SAASC,SAAS,QAAQ,iBAAc;AAExC,OAAO,MAAMC,2BAA2B,SAASJ,qBAAqB,CAAC;EACrEK,WAAWA,CACQC,YAAoB,EACpBC,WAAwB,EACzC;IACA,KAAK,CAAC,CAAC;IAAC,KAHSD,YAAoB,GAApBA,YAAoB;IAAA,KACpBC,WAAwB,GAAxBA,WAAwB;EAG3C;EAEQC,SAAS,GAAG,IAAIN,SAAS,CAAU,CAAC;EAE5CO,SAAS,GAAIC,KAA0B,IAAK;IAC1C,MAAMC,SAAS,GAAGC,IAAI,CAACC,KAAK,CAACH,KAAK,CAACI,WAAW,CAACC,IAAI,CAAC;IAEpD,MAAMC,MAAM,GAAG;MACb,CAACf,gBAAgB,CAACgB,UAAU,GAAG,MAAM;QACnCd,SAAS,CAACe,IAAI,CACZ,aAAa,EACbN,IAAI,CAACO,SAAS,CAACR,SAAS,CAACS,OAAO,EAAE,IAAI,EAAE,CAAC,CAC3C,CAAC;MACH,CAAC;MACD,CAACnB,gBAAgB,CAACoB,UAAU,GAAG,MAAM;QACnC,MAAM;UAAEN,IAAI;UAAEO;QAAU,CAAC,GAAGX,SAG3B;QACD,IAAI,CAACU,UAAU,CAACE,QAAQ,CAACC,GAAG,CAACF,SAAS,CAAC,GAAGP,IAAI,CAAC;QAC/C,IAAI,CAACM,UAAU,CAACE,QAAQ,CAACE,MAAM,CAACH,SAAS,CAAC;MAC5C;IACF,CAAC;IACDN,MAAM,CAACL,SAAS,CAACe,IAAI,CAAwB,GAAG,CAAC;EACnD,CAAC;EAEDC,MAAM,GAAGA,CAAA,KAAM;IACb,IAAI,CAACC,OAAO,EAAEC,gBAAgB,CAAC;AACnC;AACA,0EAA0E5B,gBAAgB,CAACgB,UAAU;AACrG;AACA,KAAK,CAAC;IACF,IAAI,CAACT,SAAS,CAACsB,QAAQ,CAAC,IAAI,CAAC;EAC/B,CAAC;EAEDC,OAAO,GAAIC,CAAM,IAAK;IACpB,IAAI,CAACxB,SAAS,CAACsB,QAAQ,CAAC,KAAK,CAAC;EAChC,CAAC;EAEDG,+BAA+B,GAAID,CAAS,IAAK,IAAI;EAErDE,yBAAyB,GAAG,MAC1BC,MAA2B,IACA;IAC3B,MAAMC,QAAQ,GAAG,MAAM,IAAI,CAAC5B,SAAS,CAAC6B,IAAI;IAC1C,IAAI,CAACD,QAAQ,EAAE;MACb,OAAO,IAAI;IACb;IAEA,MAAMrB,IAAI,GAAG,MAAM,IAAI,CAACM,UAAU,CAACiB,OAAO,CAAC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,IAAI,CAAChC,YAAY;AAC5C,kBAAkB,IAAI,CAACC,WAAW;AAClC,oBAAoBK,IAAI,CAACO,SAAS,CAACgB,MAAM,CAAC;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,CAAC;IACJ,OAAOpB,IAAI,EAAEwB,OAAO,IAAI,IAAI;EAC9B,CAAC;AACH","ignoreList":[]}
@@ -8,9 +8,6 @@ export class OpenInNewTabController extends BaseWebViewController {
8
8
  this.url = url;
9
9
  this.url = url;
10
10
  }
11
- setWebView = webView => {
12
- this.webView = webView;
13
- };
14
11
  onLoad = () => {
15
12
  this.setXprops();
16
13
  };
@@ -33,6 +30,9 @@ export class OpenInNewTabController extends BaseWebViewController {
33
30
  setXprops = () => {
34
31
  // Hide the print button on the Efecty page
35
32
  this.webView?.injectJavaScript(`
33
+ console.log = function(message) {
34
+ window.ReactNativeWebView.postMessage(JSON.stringify({ type: '${WebViewEventType.consoleLog}', message }));
35
+ };
36
36
  window.close = function() {
37
37
  window.ReactNativeWebView.postMessage(JSON.stringify({ type: '${WebViewEventType.newTabWindowClose}', data: '' }));
38
38
  };
@@ -1 +1 @@
1
- {"version":3,"names":["BaseWebViewController","WebViewEventType","DeunaLogs","OpenInNewTabController","constructor","url","setWebView","webView","onLoad","setXprops","onError","event","console","warn","urlMustBeLoadedInTheSameWebView","isDownloadUrl","delegate","onFileDownload","onMessage","eventData","JSON","parse","nativeEvent","data","type","info","message","injectJavaScript","newTabWindowClose"],"sourceRoot":"../../../src","sources":["controllers/OpenInNewTabController.ts"],"mappings":";;AACA,SACEA,qBAAqB,EACrBC,gBAAgB,QACX,4BAAyB;AAChC,SAASC,SAAS,QAAQ,iBAAc;AAExC,OAAO,MAAMC,sBAAsB,SAASH,qBAAqB,CAAC;EAChEI,WAAWA,CAAUC,GAAW,EAAE;IAChC,KAAK,CAAC,CAAC;IAAC,KADWA,GAAW,GAAXA,GAAW;IAE9B,IAAI,CAACA,GAAG,GAAGA,GAAG;EAChB;EAEAC,UAAU,GAAIC,OAAgB,IAAK;IACjC,IAAI,CAACA,OAAO,GAAGA,OAAO;EACxB,CAAC;EAEDC,MAAM,GAAGA,CAAA,KAAM;IACb,IAAI,CAACC,SAAS,CAAC,CAAC;EAClB,CAAC;EAEDC,OAAO,GAAIC,KAAU,IAAK;IACxBC,OAAO,CAACC,IAAI,CAACF,KAAK,CAAC;EACrB,CAAC;EAEDG,+BAA+B,GAAIT,GAAW,IAAK;IACjD,IAAI,IAAI,CAACU,aAAa,CAACV,GAAG,CAAC,EAAE;MAC3B,IAAI,CAACW,QAAQ,EAAEC,cAAc,GAAGZ,GAAG,CAAC;MACpC,OAAO,KAAK;IACd;IACA,OAAO,IAAI;EACb,CAAC;EAEDa,SAAS,GAAIP,KAA0B,IAAK;IAC1C,MAAMQ,SAAS,GAAGC,IAAI,CAACC,KAAK,CAACV,KAAK,CAACW,WAAW,CAACC,IAAI,CAAC;IACpD,IAAIJ,SAAS,CAACK,IAAI,KAAK,aAAa,EAAE;MACpCtB,SAAS,CAACuB,IAAI,CAAC,aAAa,EAAEN,SAAS,CAACO,OAAO,CAAC;IAClD;EACF,CAAC;EAEDjB,SAAS,GAAGA,CAAA,KAAM;IAChB;IACA,IAAI,CAACF,OAAO,EAAEoB,gBAAgB,CAAC;AACnC;AACA,wEAAwE1B,gBAAgB,CAAC2B,iBAAiB;AAC1G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,CAAC;EACJ,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["BaseWebViewController","WebViewEventType","DeunaLogs","OpenInNewTabController","constructor","url","onLoad","setXprops","onError","event","console","warn","urlMustBeLoadedInTheSameWebView","isDownloadUrl","delegate","onFileDownload","onMessage","eventData","JSON","parse","nativeEvent","data","type","info","message","webView","injectJavaScript","consoleLog","newTabWindowClose"],"sourceRoot":"../../../src","sources":["controllers/OpenInNewTabController.ts"],"mappings":";;AACA,SACEA,qBAAqB,EACrBC,gBAAgB,QACX,4BAAyB;AAChC,SAASC,SAAS,QAAQ,iBAAc;AAExC,OAAO,MAAMC,sBAAsB,SAASH,qBAAqB,CAAC;EAChEI,WAAWA,CAAUC,GAAW,EAAE;IAChC,KAAK,CAAC,CAAC;IAAC,KADWA,GAAW,GAAXA,GAAW;IAE9B,IAAI,CAACA,GAAG,GAAGA,GAAG;EAChB;EAEAC,MAAM,GAAGA,CAAA,KAAM;IACb,IAAI,CAACC,SAAS,CAAC,CAAC;EAClB,CAAC;EAEDC,OAAO,GAAIC,KAAU,IAAK;IACxBC,OAAO,CAACC,IAAI,CAACF,KAAK,CAAC;EACrB,CAAC;EAEDG,+BAA+B,GAAIP,GAAW,IAAK;IACjD,IAAI,IAAI,CAACQ,aAAa,CAACR,GAAG,CAAC,EAAE;MAC3B,IAAI,CAACS,QAAQ,EAAEC,cAAc,GAAGV,GAAG,CAAC;MACpC,OAAO,KAAK;IACd;IACA,OAAO,IAAI;EACb,CAAC;EAEDW,SAAS,GAAIP,KAA0B,IAAK;IAC1C,MAAMQ,SAAS,GAAGC,IAAI,CAACC,KAAK,CAACV,KAAK,CAACW,WAAW,CAACC,IAAI,CAAC;IACpD,IAAIJ,SAAS,CAACK,IAAI,KAAK,aAAa,EAAE;MACpCpB,SAAS,CAACqB,IAAI,CAAC,aAAa,EAAEN,SAAS,CAACO,OAAO,CAAC;IAClD;EACF,CAAC;EAEDjB,SAAS,GAAGA,CAAA,KAAM;IAChB;IACA,IAAI,CAACkB,OAAO,EAAEC,gBAAgB,CAAC;AACnC;AACA,wEAAwEzB,gBAAgB,CAAC0B,UAAU;AACnG;AACA;AACA,wEAAwE1B,gBAAgB,CAAC2B,iBAAiB;AAC1G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,CAAC;EACJ,CAAC;AACH","ignoreList":[]}
@@ -5,4 +5,5 @@ export const constants = {
5
5
  metadata: 'metadata',
6
6
  voucherPdfDownloadUrl: 'voucherPdfDownloadUrl'
7
7
  };
8
+ export const DEVICE_FINGERPRINT_URL = 'https://cdn.stg.deuna.io/mobile-sdks/get_fraud_id.html';
8
9
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["constants","apmSaveId","metadata","voucherPdfDownloadUrl"],"sourceRoot":"../../../src","sources":["interfaces/constants.ts"],"mappings":";;AAAA,OAAO,MAAMA,SAAS,GAAG;EACvBC,SAAS,EAAE,WAAW;EACtBC,QAAQ,EAAE,UAAU;EACpBC,qBAAqB,EAAE;AACzB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["constants","apmSaveId","metadata","voucherPdfDownloadUrl","DEVICE_FINGERPRINT_URL"],"sourceRoot":"../../../src","sources":["interfaces/constants.ts"],"mappings":";;AAAA,OAAO,MAAMA,SAAS,GAAG;EACvBC,SAAS,EAAE,WAAW;EACtBC,QAAQ,EAAE,UAAU;EACpBC,qBAAqB,EAAE;AACzB,CAAC;AAGD,OAAO,MAAMC,sBAAsB,GAAG,wDAAwD","ignoreList":[]}
@@ -3,14 +3,14 @@
3
3
  import { hasKey } from "../utils/hasKey.js";
4
4
  import { getIntegrationType } from "./urlConfig.js";
5
5
  const ELEMENTS_URLS = {
6
- production: 'https://elements.deuna.io',
7
- sandbox: 'https://elements.sandbox.deuna.io',
8
- staging: 'https://elements.stg.deuna.io',
9
- develop: 'https://elements.dev.deuna.io'
6
+ production: "https://elements.deuna.io",
7
+ sandbox: "https://elements.sandbox.deuna.io",
8
+ staging: "https://elements.stg.deuna.io",
9
+ develop: "https://elements.dev.deuna.io"
10
10
  };
11
11
  const WIDGET_PATHS = {
12
- click_to_pay: '/click_to_pay',
13
- vault: '/vault'
12
+ click_to_pay: "/click_to_pay",
13
+ vault: "/vault"
14
14
  };
15
15
  /**
16
16
  * Builds the base URL for the Elements widget based on environment and domain configuration
@@ -37,9 +37,9 @@ const buildSearchParams = config => {
37
37
  const searchParams = {
38
38
  publicApiKey: config.publicApiKey,
39
39
  orderToken: config.orderToken,
40
- email: userInfo?.email || '',
41
- firstName: userInfo?.firstName || '',
42
- lastName: userInfo?.lastName || '',
40
+ email: userInfo?.email || "",
41
+ firstName: userInfo?.firstName || "",
42
+ lastName: userInfo?.lastName || "",
43
43
  int: getIntegrationType(mode),
44
44
  language
45
45
  };
@@ -63,7 +63,7 @@ const buildSearchParams = config => {
63
63
  */
64
64
  const getWidgetPath = types => {
65
65
  if (types && types.length > 0) {
66
- const firstPath = types[0].name;
66
+ const firstPath = types[0]?.name;
67
67
  return hasKey(WIDGET_PATHS, firstPath) ? WIDGET_PATHS[firstPath] : WIDGET_PATHS.vault;
68
68
  }
69
69
  return WIDGET_PATHS.vault;
@@ -81,12 +81,10 @@ export const buildElementsLink = config => {
81
81
  id: config.id,
82
82
  behavior: config.behavior || {}
83
83
  };
84
- searchParams.append('xpropsB64', btoa(JSON.stringify(xpropsB64)));
84
+ searchParams.append("xpropsB64", btoa(JSON.stringify(xpropsB64)));
85
85
  const widgetPath = getWidgetPath(config.types);
86
- const normalizedPath = widgetPath.startsWith('/') ? widgetPath : `/${widgetPath}`;
87
- const url = new URL(normalizedPath, baseUrl);
88
- url.search = searchParams.toString();
89
- console.log('url', url.toString());
86
+ const normalizedPath = widgetPath.startsWith("/") ? widgetPath : `/${widgetPath}`;
87
+ const url = new URL(`${baseUrl}${normalizedPath}?${searchParams.toString()}`);
90
88
  return url.toString();
91
89
  };
92
90
  //# sourceMappingURL=buildElementsLink.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["hasKey","getIntegrationType","ELEMENTS_URLS","production","sandbox","staging","develop","WIDGET_PATHS","click_to_pay","vault","buildBaseUrl","config","domain","env","buildSearchParams","userInfo","userToken","widgetExperience","styleFile","mode","language","searchParams","publicApiKey","orderToken","email","firstName","lastName","int","cssFile","userExperience","showSavedCardsFlow","String","defaultCardFlow","showDefaultCardFlow","URLSearchParams","getWidgetPath","types","length","firstPath","name","buildElementsLink","baseUrl","xpropsB64","id","behavior","append","btoa","JSON","stringify","widgetPath","normalizedPath","startsWith","url","URL","search","toString","console","log"],"sourceRoot":"../../../../src","sources":["types/helpers/buildElementsLink.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["hasKey","getIntegrationType","ELEMENTS_URLS","production","sandbox","staging","develop","WIDGET_PATHS","click_to_pay","vault","buildBaseUrl","config","domain","env","buildSearchParams","userInfo","userToken","widgetExperience","styleFile","mode","language","searchParams","publicApiKey","orderToken","email","firstName","lastName","int","cssFile","userExperience","showSavedCardsFlow","String","defaultCardFlow","showDefaultCardFlow","URLSearchParams","getWidgetPath","types","length","firstPath","name","buildElementsLink","baseUrl","xpropsB64","id","behavior","append","btoa","JSON","stringify","widgetPath","normalizedPath","startsWith","url","URL","toString"],"sourceRoot":"../../../../src","sources":["types/helpers/buildElementsLink.ts"],"mappings":"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","ignoreList":[]}
@@ -31,8 +31,7 @@ export const buildNextActionLink = config => {
31
31
  if (config.domain) {
32
32
  baseUrl = config.domain;
33
33
  }
34
- const url = new URL(`/next-action-purchase/${orderToken}`, baseUrl);
35
- url.search = searchParams.toString();
34
+ const url = new URL(`${baseUrl}/next-action-purchase/${orderToken}?${searchParams.toString()}`);
36
35
  return url.toString();
37
36
  };
38
37
  //# sourceMappingURL=buildNextActionLink.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["configToQueryParams","getIntegrationType","urls","production","sandbox","staging","develop","buildNextActionLink","config","env","orderToken","baseUrl","xpropsB64","id","searchParams","URLSearchParams","mode","int","language","append","btoa","JSON","stringify","domain","url","URL","search","toString"],"sourceRoot":"../../../../src","sources":["types/helpers/buildNextActionLink.ts"],"mappings":";;AACA,SACEA,mBAAmB,EACnBC,kBAAkB,QAEb,gBAAa;AAEpB,MAAMC,IAAiC,GAAG;EACxCC,UAAU,EAAE,sBAAsB;EAClCC,OAAO,EAAE,8BAA8B;EACvCC,OAAO,EAAE,2BAA2B;EACpCC,OAAO,EAAE;AACX,CAAC;AAED,OAAO,MAAMC,mBAAmB,GAAIC,MAAiB,IAAa;EAChE,MAAM;IAAEC,GAAG;IAAEC;EAAW,CAAC,GAAGF,MAAM;EAElC,IAAIG,OAAO,GAAGT,IAAI,CAACC,UAAU;EAE7B,IAAIM,GAAG,EAAE;IACPE,OAAO,GAAGT,IAAI,CAACO,GAAG,CAAC;EACrB;EAEA,MAAMG,SAAS,GAAG;IAChBC,EAAE,EAAEL,MAAM,CAACK;EACb,CAAC;EAED,MAAMC,YAAY,GAAG,IAAIC,eAAe,CAAC;IACvCC,IAAI,EAAE,QAAQ;IACdC,GAAG,EAAEhB,kBAAkB,CAACO,MAAM,CAACQ,IAAI,CAAC;IACpCE,QAAQ,EAAEV,MAAM,CAACU;EACnB,CAAC,CAAC;;EAEF;EACAJ,YAAY,CAACK,MAAM,CAAC,WAAW,EAAEC,IAAI,CAACC,IAAI,CAACC,SAAS,CAACV,SAAS,CAAC,CAAC,CAAC;EAEjEZ,mBAAmB,CAACQ,MAAM,EAAEM,YAAY,CAAC;EAEzC,IAAIN,MAAM,CAACe,MAAM,EAAE;IACjBZ,OAAO,GAAGH,MAAM,CAACe,MAAM;EACzB;EAEA,MAAMC,GAAG,GAAG,IAAIC,GAAG,CAAC,yBAAyBf,UAAU,EAAE,EAAEC,OAAO,CAAC;EACnEa,GAAG,CAACE,MAAM,GAAGZ,YAAY,CAACa,QAAQ,CAAC,CAAC;EAEpC,OAAOH,GAAG,CAACG,QAAQ,CAAC,CAAC;AACvB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["configToQueryParams","getIntegrationType","urls","production","sandbox","staging","develop","buildNextActionLink","config","env","orderToken","baseUrl","xpropsB64","id","searchParams","URLSearchParams","mode","int","language","append","btoa","JSON","stringify","domain","url","URL","toString"],"sourceRoot":"../../../../src","sources":["types/helpers/buildNextActionLink.ts"],"mappings":";;AACA,SACEA,mBAAmB,EACnBC,kBAAkB,QAEb,gBAAa;AAEpB,MAAMC,IAAiC,GAAG;EACxCC,UAAU,EAAE,sBAAsB;EAClCC,OAAO,EAAE,8BAA8B;EACvCC,OAAO,EAAE,2BAA2B;EACpCC,OAAO,EAAE;AACX,CAAC;AAED,OAAO,MAAMC,mBAAmB,GAAIC,MAAiB,IAAa;EAChE,MAAM;IAAEC,GAAG;IAAEC;EAAW,CAAC,GAAGF,MAAM;EAElC,IAAIG,OAAO,GAAGT,IAAI,CAACC,UAAU;EAE7B,IAAIM,GAAG,EAAE;IACPE,OAAO,GAAGT,IAAI,CAACO,GAAG,CAAC;EACrB;EAEA,MAAMG,SAAS,GAAG;IAChBC,EAAE,EAAEL,MAAM,CAACK;EACb,CAAC;EAED,MAAMC,YAAY,GAAG,IAAIC,eAAe,CAAC;IACvCC,IAAI,EAAE,QAAQ;IACdC,GAAG,EAAEhB,kBAAkB,CAACO,MAAM,CAACQ,IAAI,CAAC;IACpCE,QAAQ,EAAEV,MAAM,CAACU;EACnB,CAAC,CAAC;;EAEF;EACAJ,YAAY,CAACK,MAAM,CAAC,WAAW,EAAEC,IAAI,CAACC,IAAI,CAACC,SAAS,CAACV,SAAS,CAAC,CAAC,CAAC;EAEjEZ,mBAAmB,CAACQ,MAAM,EAAEM,YAAY,CAAC;EAEzC,IAAIN,MAAM,CAACe,MAAM,EAAE;IACjBZ,OAAO,GAAGH,MAAM,CAACe,MAAM;EACzB;EAEA,MAAMC,GAAG,GAAG,IAAIC,GAAG,CAAC,GAAGd,OAAO,yBAAyBD,UAAU,IAAII,YAAY,CAACY,QAAQ,CAAC,CAAC,EAAE,CAAC;EAE/F,OAAOF,GAAG,CAACE,QAAQ,CAAC,CAAC;AACvB,CAAC","ignoreList":[]}
@@ -46,8 +46,7 @@ export const buildPaymentLink = config => {
46
46
 
47
47
  //encode to base64
48
48
  searchParams.append("xpropsB64", btoa(JSON.stringify(xpropsB64)));
49
- const url = new URL(`/now/${orderToken}`, baseUrl);
50
- url.search = searchParams.toString();
49
+ const url = new URL(`${baseUrl}/now/${orderToken}?${searchParams.toString()}`);
51
50
  return url.toString();
52
51
  };
53
52
  //# sourceMappingURL=buildPaymentLink.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["configToQueryParams","getIntegrationType","urls","production","sandbox","staging","develop","buildPaymentLink","config","env","orderToken","baseUrl","searchParams","URLSearchParams","mode","int","language","xpropsB64","id","paymentMethods","publicApiKey","behavior","cdl","sessionId","domain","append","btoa","JSON","stringify","url","URL","search","toString"],"sourceRoot":"../../../../src","sources":["types/helpers/buildPaymentLink.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;;AAGA,SACEA,mBAAmB,EACnBC,kBAAkB,QAEb,gBAAa;AAEpB,MAAMC,IAAiC,GAAG;EACxCC,UAAU,EAAE,sBAAsB;EAClCC,OAAO,EAAE,8BAA8B;EACvCC,OAAO,EAAE,2BAA2B;EACpCC,OAAO,EAAE;AACX,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAIC,MAAiB,IAAa;EAC7D,MAAM;IAAEC,GAAG;IAAEC;EAAW,CAAC,GAAGF,MAAM;EAElC,IAAIG,OAAO,GAAGT,IAAI,CAACC,UAAU;EAE7B,IAAIM,GAAG,EAAE;IACPE,OAAO,GAAGT,IAAI,CAACO,GAAG,CAAC;EACrB;EAEA,MAAMG,YAAY,GAAG,IAAIC,eAAe,CAAC;IACvCC,IAAI,EAAE,QAAQ;IACdC,GAAG,EAAEd,kBAAkB,CAACO,MAAM,CAACM,IAAI,CAAC;IACpCE,QAAQ,EAAER,MAAM,CAACQ;EACnB,CAAC,CAAC;;EAEF;;EAEA,MAAMC,SAAS,GAAG;IAChBC,EAAE,EAAEV,MAAM,CAACU,EAAE;IACbC,cAAc,EAAEX,MAAM,CAACW,cAAc;IACrCC,YAAY,EAAEZ,MAAM,CAACY,YAAY;IACjCC,QAAQ,EAAEb,MAAM,CAACa,QAAQ;IACzBC,GAAG,EAAE;MACHC,SAAS,EAAEf,MAAM,CAACe;IACpB;EACF,CAAC;EAEDvB,mBAAmB,CAACQ,MAAM,EAAEI,YAAY,CAAC;EAEzC,IAAIJ,MAAM,CAACgB,MAAM,EAAE;IACjBb,OAAO,GAAGH,MAAM,CAACgB,MAAM;EACzB;;EAEA;EACAZ,YAAY,CAACa,MAAM,CAAC,WAAW,EAAEC,IAAI,CAACC,IAAI,CAACC,SAAS,CAACX,SAAS,CAAC,CAAC,CAAC;EAEjE,MAAMY,GAAG,GAAG,IAAIC,GAAG,CAAC,QAAQpB,UAAU,EAAE,EAAEC,OAAO,CAAC;EAClDkB,GAAG,CAACE,MAAM,GAAGnB,YAAY,CAACoB,QAAQ,CAAC,CAAC;EAEpC,OAAOH,GAAG,CAACG,QAAQ,CAAC,CAAC;AACvB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["configToQueryParams","getIntegrationType","urls","production","sandbox","staging","develop","buildPaymentLink","config","env","orderToken","baseUrl","searchParams","URLSearchParams","mode","int","language","xpropsB64","id","paymentMethods","publicApiKey","behavior","cdl","sessionId","domain","append","btoa","JSON","stringify","url","URL","toString"],"sourceRoot":"../../../../src","sources":["types/helpers/buildPaymentLink.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;;AAGA,SACEA,mBAAmB,EACnBC,kBAAkB,QAEb,gBAAa;AAEpB,MAAMC,IAAiC,GAAG;EACxCC,UAAU,EAAE,sBAAsB;EAClCC,OAAO,EAAE,8BAA8B;EACvCC,OAAO,EAAE,2BAA2B;EACpCC,OAAO,EAAE;AACX,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAIC,MAAiB,IAAa;EAC7D,MAAM;IAAEC,GAAG;IAAEC;EAAW,CAAC,GAAGF,MAAM;EAElC,IAAIG,OAAO,GAAGT,IAAI,CAACC,UAAU;EAE7B,IAAIM,GAAG,EAAE;IACPE,OAAO,GAAGT,IAAI,CAACO,GAAG,CAAC;EACrB;EAEA,MAAMG,YAAY,GAAG,IAAIC,eAAe,CAAC;IACvCC,IAAI,EAAE,QAAQ;IACdC,GAAG,EAAEd,kBAAkB,CAACO,MAAM,CAACM,IAAI,CAAC;IACpCE,QAAQ,EAAER,MAAM,CAACQ;EACnB,CAAC,CAAC;;EAEF;;EAEA,MAAMC,SAAS,GAAG;IAChBC,EAAE,EAAEV,MAAM,CAACU,EAAE;IACbC,cAAc,EAAEX,MAAM,CAACW,cAAc;IACrCC,YAAY,EAAEZ,MAAM,CAACY,YAAY;IACjCC,QAAQ,EAAEb,MAAM,CAACa,QAAQ;IACzBC,GAAG,EAAE;MACHC,SAAS,EAAEf,MAAM,CAACe;IACpB;EACF,CAAC;EAEDvB,mBAAmB,CAACQ,MAAM,EAAEI,YAAY,CAAC;EAEzC,IAAIJ,MAAM,CAACgB,MAAM,EAAE;IACjBb,OAAO,GAAGH,MAAM,CAACgB,MAAM;EACzB;;EAEA;EACAZ,YAAY,CAACa,MAAM,CAAC,WAAW,EAAEC,IAAI,CAACC,IAAI,CAACC,SAAS,CAACX,SAAS,CAAC,CAAC,CAAC;EAEjE,MAAMY,GAAG,GAAG,IAAIC,GAAG,CAAC,GAAGnB,OAAO,QAAQD,UAAU,IAAIE,YAAY,CAACmB,QAAQ,CAAC,CAAC,EAAE,CAAC;EAE9E,OAAOF,GAAG,CAACE,QAAQ,CAAC,CAAC;AACvB,CAAC","ignoreList":[]}
@@ -40,8 +40,7 @@ export const buildVoucherLink = config => {
40
40
 
41
41
  //encode to base64
42
42
  searchParams.append("xpropsB64", btoa(JSON.stringify(xpropsB64)));
43
- const url = new URL("/voucher", baseUrl);
44
- url.search = searchParams.toString();
43
+ const url = new URL(`${baseUrl}/voucher?${searchParams.toString()}`);
45
44
  return url.toString();
46
45
  };
47
46
  //# sourceMappingURL=buildVoucherLink.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getIntegrationType","urls","production","sandbox","staging","develop","buildVoucherLink","config","env","orderToken","baseUrl","searchParams","URLSearchParams","mode","int","language","xpropsB64","id","cdl","sessionId","domain","append","btoa","JSON","stringify","url","URL","search","toString"],"sourceRoot":"../../../../src","sources":["types/helpers/buildVoucherLink.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;;AAGA,SAASA,kBAAkB,QAAmB,gBAAa;AAE3D,MAAMC,IAAiC,GAAG;EACxCC,UAAU,EAAE,sBAAsB;EAClCC,OAAO,EAAE,8BAA8B;EACvCC,OAAO,EAAE,2BAA2B;EACpCC,OAAO,EAAE;AACX,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAIC,MAAiB,IAAa;EAC7D,MAAM;IAAEC,GAAG;IAAEC;EAAW,CAAC,GAAGF,MAAM;EAElC,IAAIG,OAAO,GAAGT,IAAI,CAACC,UAAU;EAE7B,IAAIM,GAAG,EAAE;IACPE,OAAO,GAAGT,IAAI,CAACO,GAAG,CAAC;EACrB;EAEA,MAAMG,YAAY,GAAG,IAAIC,eAAe,CAAC;IACvCC,IAAI,EAAE,QAAQ;IACdC,GAAG,EAAEd,kBAAkB,CAACO,MAAM,CAACM,IAAI,CAAC;IACpCE,QAAQ,EAAER,MAAM,CAACQ,QAAQ;IACzBN;EACF,CAAC,CAAC;EAEF,MAAMO,SAAS,GAAG;IAChBC,EAAE,EAAEV,MAAM,CAACU,EAAE;IACbC,GAAG,EAAE;MACHC,SAAS,EAAEZ,MAAM,CAACY;IACpB;EACF,CAAC;EAED,IAAIZ,MAAM,CAACa,MAAM,EAAE;IACjBV,OAAO,GAAGH,MAAM,CAACa,MAAM;EACzB;;EAEA;EACAT,YAAY,CAACU,MAAM,CAAC,WAAW,EAAEC,IAAI,CAACC,IAAI,CAACC,SAAS,CAACR,SAAS,CAAC,CAAC,CAAC;EAEjE,MAAMS,GAAG,GAAG,IAAIC,GAAG,CAAC,UAAU,EAAEhB,OAAO,CAAC;EACxCe,GAAG,CAACE,MAAM,GAAGhB,YAAY,CAACiB,QAAQ,CAAC,CAAC;EAEpC,OAAOH,GAAG,CAACG,QAAQ,CAAC,CAAC;AACvB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["getIntegrationType","urls","production","sandbox","staging","develop","buildVoucherLink","config","env","orderToken","baseUrl","searchParams","URLSearchParams","mode","int","language","xpropsB64","id","cdl","sessionId","domain","append","btoa","JSON","stringify","url","URL","toString"],"sourceRoot":"../../../../src","sources":["types/helpers/buildVoucherLink.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;;AAGA,SAASA,kBAAkB,QAAmB,gBAAa;AAE3D,MAAMC,IAAiC,GAAG;EACxCC,UAAU,EAAE,sBAAsB;EAClCC,OAAO,EAAE,8BAA8B;EACvCC,OAAO,EAAE,2BAA2B;EACpCC,OAAO,EAAE;AACX,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAIC,MAAiB,IAAa;EAC7D,MAAM;IAAEC,GAAG;IAAEC;EAAW,CAAC,GAAGF,MAAM;EAElC,IAAIG,OAAO,GAAGT,IAAI,CAACC,UAAU;EAE7B,IAAIM,GAAG,EAAE;IACPE,OAAO,GAAGT,IAAI,CAACO,GAAG,CAAC;EACrB;EAEA,MAAMG,YAAY,GAAG,IAAIC,eAAe,CAAC;IACvCC,IAAI,EAAE,QAAQ;IACdC,GAAG,EAAEd,kBAAkB,CAACO,MAAM,CAACM,IAAI,CAAC;IACpCE,QAAQ,EAAER,MAAM,CAACQ,QAAQ;IACzBN;EACF,CAAC,CAAC;EAEF,MAAMO,SAAS,GAAG;IAChBC,EAAE,EAAEV,MAAM,CAACU,EAAE;IACbC,GAAG,EAAE;MACHC,SAAS,EAAEZ,MAAM,CAACY;IACpB;EACF,CAAC;EAED,IAAIZ,MAAM,CAACa,MAAM,EAAE;IACjBV,OAAO,GAAGH,MAAM,CAACa,MAAM;EACzB;;EAEA;EACAT,YAAY,CAACU,MAAM,CAAC,WAAW,EAAEC,IAAI,CAACC,IAAI,CAACC,SAAS,CAACR,SAAS,CAAC,CAAC,CAAC;EAEjE,MAAMS,GAAG,GAAG,IAAIC,GAAG,CAAC,GAAGhB,OAAO,YAAYC,YAAY,CAACgB,QAAQ,CAAC,CAAC,EAAE,CAAC;EAEpE,OAAOF,GAAG,CAACE,QAAQ,CAAC,CAAC;AACvB,CAAC","ignoreList":[]}
@@ -2,6 +2,7 @@ import { BaseDeuna, CustomStyles, GetStateFn, InitElementsWidgetParams, Initiali
2
2
  import { BaseWebViewController, DeunaWebViewController, WebViewDelegate } from './controllers/BaseWebViewController';
3
3
  import { Completer } from './helpers/Completer';
4
4
  import { Mode, OnDownloadFile } from './interfaces/types';
5
+ import { DeviceFingerprintController } from './controllers/DeviceFingerprintController';
5
6
  export declare class DeunaSDK extends BaseDeuna {
6
7
  private readonly config;
7
8
  constructor(config: InitializeParams);
@@ -15,10 +16,16 @@ export declare class DeunaSDK extends BaseDeuna {
15
16
  private listeners;
16
17
  webViewController: DeunaWebViewController | null;
17
18
  newTabWebViewController: BaseWebViewController | null;
19
+ deviceFingerprintController: DeviceFingerprintController | null;
18
20
  modalDismissPromise: Completer<void> | null;
19
21
  newTabModalDismissPromise: Completer<void> | null;
20
22
  private get safeWebViewController();
21
- getSessionId(): Promise<string>;
23
+ /**
24
+ * Generates a device fingerprint, creates a invisible webview to get the device fingerprint
25
+ * and returns the device fingerprint
26
+ * @returns The device fingerprint
27
+ */
28
+ getSessionId: (params?: Record<string, any>) => Promise<string>;
22
29
  static initialize(config: InitializeParams): DeunaSDK;
23
30
  /**
24
31
  * Sets the DEUNA widget controller
@@ -1 +1 @@
1
- {"version":3,"file":"DeunaSDK.d.ts","sourceRoot":"","sources":["../../../../src/DeunaSDK.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,YAAY,EACZ,UAAU,EACV,wBAAwB,EACxB,gBAAgB,EAChB,0BAA0B,EAC1B,uBAAuB,EACvB,uBAAuB,EACvB,OAAO,EACP,IAAI,EACJ,sBAAsB,EACtB,YAAY,EACZ,cAAc,EACd,KAAK,EACL,MAAM,EACN,YAAY,EACZ,sBAAsB,EACvB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EAChB,MAAM,qCAAqC,CAAC;AAI7C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAgB,IAAI,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGxE,qBAAa,QAAS,SAAQ,SAAS;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,gBAAgB;IAIrD,IAAI,EAAE,IAAI,GAAG,IAAI,CAAQ;IAEzB,gBAAgB,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;IAC9C,cAAc,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IAC1C,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAChC,OAAO,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IAEnC,OAAO,CAAC,SAAS,CAA8B;IAC/C,iBAAiB,EAAE,sBAAsB,GAAG,IAAI,CAAQ;IACxD,uBAAuB,EAAE,qBAAqB,GAAG,IAAI,CAAQ;IAE7D,mBAAmB,EAAE,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAQ;IACnD,yBAAyB,EAAE,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAQ;IAEzD,OAAO,KAAK,qBAAqB,GAQhC;IAED,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAI/B,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,QAAQ;IAIrD;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB,CAYzB;IAEF;;;;OAIG;IACG,iBAAiB,CACrB,KAAK,EAAE,IAAI,CAAC,uBAAuB,EAAE,WAAW,CAAC,GAAG;QAClD,IAAI,CAAC,EAAE,IAAI,CAAC;QACZ,SAAS,EAAE,sBAAsB,GAAG,cAAc,CAAC;KACpD;IAWH;;;;OAIG;IACG,YAAY,CAChB,KAAK,EAAE,wBAAwB,GAAG;QAAE,IAAI,CAAC,EAAE,IAAI,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE;IAWvE;;;;OAIG;IACG,cAAc,CAAC,KAAK,EAAE,0BAA0B,GAAG;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE;IAUvE;;;;OAIG;IACG,iBAAiB,CACrB,KAAK,EAAE,IAAI,CAAC,uBAAuB,EAAE,WAAW,CAAC,GAAG;QAClD,IAAI,EAAE,IAAI,CAAC;QACX,SAAS,EAAE,sBAAsB,GAAG,cAAc,CAAC;KACpD;IAWH,OAAO,QAAa,OAAO,CAAC,OAAO,CAAC,CAElC;IAEF,MAAM,QAAa,OAAO,CAAC,YAAY,CAAC,CAEtC;IAEF,cAAc,GAAU,OAAO,OAAO,CAAC,YAAY,CAAC,KAAG,OAAO,CAAC,IAAI,CAAC,CAElE;IAEF,YAAY,QAAa,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAE3C;IAEF,cAAc,QAAa,OAAO,CAAC,KAAK,CAAC,CAEvC;IAEF;;OAEG;IACH,KAAK,QAAa,OAAO,CAAC,IAAI,CAAC,CAwB7B;IAEF,gBAAgB,aAEd;IAEF,iBAAiB,aAEf;IAEF,WAAW,GAAI,UAAU,MAAM,IAAI,UAEjC;IAEF,cAAc,GAAI,UAAU,MAAM,IAAI,UAEpC;IAEF,eAAe,aAEb;IAEF,OAAO,CAAC,kBAAkB,CAOxB;IAEF,aAAa,aAOX;IAEF;;;;;OAKG;IACH,aAAa,QAAO,eAAe,CAiBjC;CACH"}
1
+ {"version":3,"file":"DeunaSDK.d.ts","sourceRoot":"","sources":["../../../../src/DeunaSDK.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DeunaWidget.d.ts","sourceRoot":"","sources":["../../../../../src/components/DeunaWidget.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAMvC,UAAU,gBAAgB;IACxB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,eAAO,MAAM,WAAW,GAAI,OAAO,gBAAgB,4CAmFlD,CAAC"}
1
+ {"version":3,"file":"DeunaWidget.d.ts","sourceRoot":"","sources":["../../../../../src/components/DeunaWidget.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAOvC,UAAU,gBAAgB;IACxB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,eAAO,MAAM,WAAW,GAAI,OAAO,gBAAgB,4CAoFlD,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { DeunaSDK } from '../DeunaSDK';
2
+ interface DeviceFingerprintWebViewProps {
3
+ instance: DeunaSDK;
4
+ }
5
+ export declare const DeviceFingerprintWebView: (props: DeviceFingerprintWebViewProps) => import("react/jsx-runtime").JSX.Element;
6
+ export {};
7
+ //# sourceMappingURL=DeviceFingerprintWebView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeviceFingerprintWebView.d.ts","sourceRoot":"","sources":["../../../../../src/components/DeviceFingerprintWebView.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAIvC,UAAU,6BAA6B;IACrC,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,eAAO,MAAM,wBAAwB,GACnC,OAAO,6BAA6B,4CA+CrC,CAAC"}
@@ -23,7 +23,8 @@ export declare abstract class BaseWebViewController {
23
23
  webView: WebView | null;
24
24
  url: string | null;
25
25
  delegate: WebViewDelegate | null;
26
- abstract setWebView: (webView: WebView) => void;
26
+ jsExecutor: JsExecutor;
27
+ setWebView: (webView: WebView) => void;
27
28
  abstract onMessage: (event: WebViewMessageEvent) => void;
28
29
  /**
29
30
  * Called when the web view url is loaded successfully
@@ -58,9 +59,7 @@ export declare abstract class DeunaWebViewController extends BaseWebViewControll
58
59
  hidePayButton: boolean;
59
60
  redirectUrl: string | null;
60
61
  closedAction: ClosedAction;
61
- jsExecutor: JsExecutor;
62
62
  abstract onEventDispatch: (event: Record<string, any>) => void;
63
- setWebView: (webView: WebView) => void;
64
63
  onLoad: () => void;
65
64
  urlMustBeLoadedInTheSameWebView: (url: string) => boolean;
66
65
  onMessage: (event: WebViewMessageEvent) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"BaseWebViewController.d.ts","sourceRoot":"","sources":["../../../../../src/controllers/BaseWebViewController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseWebViewController.d.ts","sourceRoot":"","sources":["../../../../../src/controllers/BaseWebViewController.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { WebViewMessageEvent } from 'react-native-webview';
2
+ import { BaseWebViewController } from './BaseWebViewController';
3
+ import { Environment } from '../types';
4
+ export declare class DeviceFingerprintController extends BaseWebViewController {
5
+ private readonly publicApiKey;
6
+ private readonly environment;
7
+ constructor(publicApiKey: string, environment: Environment);
8
+ private completer;
9
+ onMessage: (event: WebViewMessageEvent) => void;
10
+ onLoad: () => void;
11
+ onError: (_: any) => void;
12
+ urlMustBeLoadedInTheSameWebView: (_: string) => boolean;
13
+ generateDeviceFingerprint: (params: Record<string, any>) => Promise<string | null>;
14
+ }
15
+ //# sourceMappingURL=DeviceFingerprintController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeviceFingerprintController.d.ts","sourceRoot":"","sources":["../../../../../src/controllers/DeviceFingerprintController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EACL,qBAAqB,EAEtB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,qBAAa,2BAA4B,SAAQ,qBAAqB;IAElE,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,WAAW;gBADX,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,WAAW;IAK3C,OAAO,CAAC,SAAS,CAA4B;IAE7C,SAAS,GAAI,OAAO,mBAAmB,UAoBrC;IAEF,MAAM,aAOJ;IAEF,OAAO,GAAI,GAAG,GAAG,UAEf;IAEF,+BAA+B,GAAI,GAAG,MAAM,aAAU;IAEtD,yBAAyB,GACvB,QAAQ,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAC1B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA0BvB;CACH"}
@@ -1,9 +1,8 @@
1
- import WebView, { WebViewMessageEvent } from 'react-native-webview';
1
+ import { WebViewMessageEvent } from 'react-native-webview';
2
2
  import { BaseWebViewController } from './BaseWebViewController';
3
3
  export declare class OpenInNewTabController extends BaseWebViewController {
4
4
  readonly url: string;
5
5
  constructor(url: string);
6
- setWebView: (webView: WebView) => void;
7
6
  onLoad: () => void;
8
7
  onError: (event: any) => void;
9
8
  urlMustBeLoadedInTheSameWebView: (url: string) => boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"OpenInNewTabController.d.ts","sourceRoot":"","sources":["../../../../../src/controllers/OpenInNewTabController.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EACL,qBAAqB,EAEtB,MAAM,yBAAyB,CAAC;AAGjC,qBAAa,sBAAuB,SAAQ,qBAAqB;IACnD,QAAQ,CAAC,GAAG,EAAE,MAAM;gBAAX,GAAG,EAAE,MAAM;IAKhC,UAAU,GAAI,SAAS,OAAO,UAE5B;IAEF,MAAM,aAEJ;IAEF,OAAO,GAAI,OAAO,GAAG,UAEnB;IAEF,+BAA+B,GAAI,KAAK,MAAM,aAM5C;IAEF,SAAS,GAAI,OAAO,mBAAmB,UAKrC;IAEF,SAAS,aAeP;CACH"}
1
+ {"version":3,"file":"OpenInNewTabController.d.ts","sourceRoot":"","sources":["../../../../../src/controllers/OpenInNewTabController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EACL,qBAAqB,EAEtB,MAAM,yBAAyB,CAAC;AAGjC,qBAAa,sBAAuB,SAAQ,qBAAqB;IACnD,QAAQ,CAAC,GAAG,EAAE,MAAM;gBAAX,GAAG,EAAE,MAAM;IAKhC,MAAM,aAEJ;IAEF,OAAO,GAAI,OAAO,GAAG,UAEnB;IAEF,+BAA+B,GAAI,KAAK,MAAM,aAM5C;IAEF,SAAS,GAAI,OAAO,mBAAmB,UAKrC;IAEF,SAAS,aAkBP;CACH"}
@@ -3,4 +3,5 @@ export declare const constants: {
3
3
  metadata: string;
4
4
  voucherPdfDownloadUrl: string;
5
5
  };
6
+ export declare const DEVICE_FINGERPRINT_URL = "https://cdn.stg.deuna.io/mobile-sdks/get_fraud_id.html";
6
7
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/interfaces/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS;;;;CAIrB,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/interfaces/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS;;;;CAIrB,CAAC;AAGF,eAAO,MAAM,sBAAsB,2DAA2D,CAAC"}
@@ -73,7 +73,7 @@ export declare abstract class BaseDeuna {
73
73
  abstract close(): Promise<void>;
74
74
  setCustomStyles(customStyles: CustomStyles): Promise<void>;
75
75
  refetchOrder(): Promise<Order | null>;
76
- getWidgetState(): Promise<State>;
76
+ getWidgetState(): Promise<State | undefined>;
77
77
  isValid(): Promise<boolean>;
78
78
  getSelectedPaymentMethod(): Promise<{
79
79
  method_type: PaymentMethodTypes;
@@ -82,7 +82,7 @@ export declare abstract class BaseDeuna {
82
82
  express?: boolean;
83
83
  flowType?: PaymentMethodConfigurationFlow;
84
84
  };
85
- }>;
85
+ } | null>;
86
86
  abstract initPaymentWidget(params: InitPaymentWidgetParams): Promise<void>;
87
87
  abstract initElements(params: InitElementsWidgetParams): Promise<void>;
88
88
  abstract initNextAction(params: InitNextActionWidgetParams): Promise<void>;
@@ -1,4 +1,4 @@
1
- import { UrlConfig } from './urlConfig';
1
+ import { UrlConfig } from "./urlConfig";
2
2
  /**
3
3
  * Builds a complete Elements widget URL with all necessary parameters
4
4
  * @param config - Configuration object for building the Elements URL
@@ -1 +1 @@
1
- {"version":3,"file":"buildElementsLink.d.ts","sourceRoot":"","sources":["../../../../../../src/types/helpers/buildElementsLink.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,SAAS,EAAE,MAAM,aAAa,CAAC;AA6F5D;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,QAAQ,SAAS,KAAG,MAsBrD,CAAC"}
1
+ {"version":3,"file":"buildElementsLink.d.ts","sourceRoot":"","sources":["../../../../../../src/types/helpers/buildElementsLink.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,SAAS,EAAE,MAAM,aAAa,CAAC;AA6F5D;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,QAAQ,SAAS,KAAG,MAmBrD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildNextActionLink.d.ts","sourceRoot":"","sources":["../../../../../../src/types/helpers/buildNextActionLink.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,SAAS,EACV,MAAM,aAAa,CAAC;AASrB,eAAO,MAAM,mBAAmB,GAAI,QAAQ,SAAS,KAAG,MAgCvD,CAAC"}
1
+ {"version":3,"file":"buildNextActionLink.d.ts","sourceRoot":"","sources":["../../../../../../src/types/helpers/buildNextActionLink.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,SAAS,EACV,MAAM,aAAa,CAAC;AASrB,eAAO,MAAM,mBAAmB,GAAI,QAAQ,SAAS,KAAG,MA+BvD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildPaymentLink.d.ts","sourceRoot":"","sources":["../../../../../../src/types/helpers/buildPaymentLink.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAGL,SAAS,EACV,MAAM,aAAa,CAAC;AASrB,eAAO,MAAM,gBAAgB,GAAI,QAAQ,SAAS,KAAG,MAwCpD,CAAC"}
1
+ {"version":3,"file":"buildPaymentLink.d.ts","sourceRoot":"","sources":["../../../../../../src/types/helpers/buildPaymentLink.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAGL,SAAS,EACV,MAAM,aAAa,CAAC;AASrB,eAAO,MAAM,gBAAgB,GAAI,QAAQ,SAAS,KAAG,MAuCpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildVoucherLink.d.ts","sourceRoot":"","sources":["../../../../../../src/types/helpers/buildVoucherLink.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAsB,SAAS,EAAE,MAAM,aAAa,CAAC;AAS5D,eAAO,MAAM,gBAAgB,GAAI,QAAQ,SAAS,KAAG,MAkCpD,CAAC"}
1
+ {"version":3,"file":"buildVoucherLink.d.ts","sourceRoot":"","sources":["../../../../../../src/types/helpers/buildVoucherLink.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAsB,SAAS,EAAE,MAAM,aAAa,CAAC;AAS5D,eAAO,MAAM,gBAAgB,GAAI,QAAQ,SAAS,KAAG,MAiCpD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deuna/react-native-sdk",
3
- "version": "1.0.1",
3
+ "version": "1.0.2",
4
4
  "description": "React Native SDK",
5
5
  "source": "./src/index.tsx",
6
6
  "main": "./lib/module/index.js",
package/src/DeunaSDK.ts CHANGED
@@ -29,6 +29,8 @@ import { Completer } from './helpers/Completer';
29
29
  import { ElementsWidgetController } from './controllers/ElementsWidgetController';
30
30
  import { DownloadType, Mode, OnDownloadFile } from './interfaces/types';
31
31
  import { Platform } from 'react-native';
32
+ import { DeviceFingerprintController } from './controllers/DeviceFingerprintController';
33
+ import { DEVICE_FINGERPRINT_URL } from './interfaces/constants';
32
34
 
33
35
  export class DeunaSDK extends BaseDeuna {
34
36
  constructor(private readonly config: InitializeParams) {
@@ -47,6 +49,7 @@ export class DeunaSDK extends BaseDeuna {
47
49
  private listeners: Set<() => void> = new Set();
48
50
  webViewController: DeunaWebViewController | null = null;
49
51
  newTabWebViewController: BaseWebViewController | null = null;
52
+ deviceFingerprintController: DeviceFingerprintController | null = null;
50
53
 
51
54
  modalDismissPromise: Completer<void> | null = null;
52
55
  newTabModalDismissPromise: Completer<void> | null = null;
@@ -61,9 +64,28 @@ export class DeunaSDK extends BaseDeuna {
61
64
  return this.webViewController;
62
65
  }
63
66
 
64
- getSessionId(): Promise<string> {
65
- throw new Error('Method not implemented.');
66
- }
67
+ /**
68
+ * Generates a device fingerprint, creates a invisible webview to get the device fingerprint
69
+ * and returns the device fingerprint
70
+ * @returns The device fingerprint
71
+ */
72
+ getSessionId = async (params?: Record<string, any>): Promise<string> => {
73
+ this.deviceFingerprintController = new DeviceFingerprintController(
74
+ this.config.publicApiKey,
75
+ this.config.environment ?? 'production'
76
+ );
77
+ this.deviceFingerprintController.url = DEVICE_FINGERPRINT_URL;
78
+ this.notifyListeners();
79
+
80
+ const deviceFingerprint =
81
+ await this.deviceFingerprintController.generateDeviceFingerprint(
82
+ params ?? {}
83
+ );
84
+ this.deviceFingerprintController?.dispose();
85
+ this.deviceFingerprintController = null;
86
+ this.notifyListeners();
87
+ return deviceFingerprint ?? '';
88
+ };
67
89
 
68
90
  static initialize(config: InitializeParams): DeunaSDK {
69
91
  return new DeunaSDK(config);
@@ -6,6 +6,7 @@ import { DeunaWebView } from './DeunaWebView';
6
6
  import { NewTabWebView } from './NewTabWebView';
7
7
  import { DeunaWebViewController } from '../controllers/BaseWebViewController';
8
8
  import { Mode } from '../interfaces/types';
9
+ import { DeviceFingerprintWebView } from './DeviceFingerprintWebView';
9
10
 
10
11
  interface DeunaWidgetProps {
11
12
  instance: DeunaSDK;
@@ -92,6 +93,7 @@ export const DeunaWidget = (props: DeunaWidgetProps) => {
92
93
  }
93
94
  />
94
95
  )}
96
+ <DeviceFingerprintWebView instance={instanceRef.current} />
95
97
  </>
96
98
  );
97
99
  };
@@ -0,0 +1,58 @@
1
+ import { useEffect, useRef, useState } from 'react';
2
+ import { DeunaSDK } from '../DeunaSDK';
3
+ import { DeunaWebView } from './DeunaWebView';
4
+ import { View } from 'react-native';
5
+
6
+ interface DeviceFingerprintWebViewProps {
7
+ instance: DeunaSDK;
8
+ }
9
+
10
+ export const DeviceFingerprintWebView = (
11
+ props: DeviceFingerprintWebViewProps
12
+ ) => {
13
+ const { instance } = props;
14
+ const instanceRef = useRef<DeunaSDK>(instance);
15
+ const [visible, setVisible] = useState(false);
16
+
17
+ useEffect(() => {
18
+ instanceRef.current = instance;
19
+ }, [instance]);
20
+
21
+ // Listen when the DeunaSDK instance configuration
22
+ // has changed
23
+ useEffect(() => {
24
+ const ref = instanceRef.current;
25
+ const listener = () => {
26
+ const isVisible = !!ref.deviceFingerprintController;
27
+ setVisible(isVisible);
28
+ };
29
+
30
+ instanceRef.current.addListener(listener);
31
+
32
+ return () => {
33
+ ref.removeListener(listener);
34
+ };
35
+ }, []);
36
+
37
+ const deviceFingerprintController =
38
+ instanceRef.current.deviceFingerprintController;
39
+
40
+ return (
41
+ <>
42
+ {visible && (
43
+ <View>
44
+ <DeunaWebView
45
+ url={deviceFingerprintController?.url ?? ''}
46
+ onWebView={deviceFingerprintController?.setWebView}
47
+ onMessage={deviceFingerprintController?.onMessage}
48
+ onLoad={deviceFingerprintController?.onLoad}
49
+ onError={deviceFingerprintController?.onError}
50
+ onShouldStartLoadWithRequest={
51
+ deviceFingerprintController?.onShouldStartLoadWithRequest
52
+ }
53
+ />
54
+ </View>
55
+ )}
56
+ </>
57
+ );
58
+ };
@@ -39,8 +39,13 @@ export abstract class BaseWebViewController {
39
39
  url: string | null = null;
40
40
 
41
41
  delegate: WebViewDelegate | null = null;
42
+ jsExecutor = new JsExecutor();
43
+
44
+ setWebView = (webView: WebView) => {
45
+ this.webView = webView;
46
+ this.jsExecutor.webView = webView;
47
+ };
42
48
 
43
- abstract setWebView: (webView: WebView) => void;
44
49
  abstract onMessage: (event: WebViewMessageEvent) => void;
45
50
 
46
51
  /**
@@ -112,15 +117,9 @@ export abstract class DeunaWebViewController extends BaseWebViewController {
112
117
  hidePayButton = false;
113
118
  redirectUrl: string | null = null;
114
119
  closedAction: ClosedAction = 'systemAction';
115
- jsExecutor = new JsExecutor();
116
120
 
117
121
  abstract onEventDispatch: (event: Record<string, any>) => void;
118
122
 
119
- setWebView = (webView: WebView) => {
120
- this.webView = webView;
121
- this.jsExecutor.webView = webView;
122
- };
123
-
124
123
  onLoad = () => {
125
124
  this.setXprops();
126
125
  };
@@ -130,7 +129,6 @@ export abstract class DeunaWebViewController extends BaseWebViewController {
130
129
  this.delegate?.onFileDownload?.(url);
131
130
  } else {
132
131
  this.redirectUrl = url;
133
- this.delegate?.onOpenInNewTab?.(url);
134
132
  }
135
133
  return false;
136
134
  };
@@ -175,9 +173,11 @@ export abstract class DeunaWebViewController extends BaseWebViewController {
175
173
  };
176
174
 
177
175
  setXprops = () => {
178
- // this.detectDownloadsAndRedirects(true);
179
176
  this.webView?.injectJavaScript(
180
177
  `
178
+ console.log = function(message) {
179
+ window.ReactNativeWebView.postMessage(JSON.stringify({ type: '${WebViewEventType.consoleLog}', message }));
180
+ };
181
181
  window.xprops = {
182
182
  hidePayButton: ${this.hidePayButton},
183
183
  onEventDispatch: function (event) {
@@ -223,8 +223,8 @@ export abstract class DeunaWebViewController extends BaseWebViewController {
223
223
  * @returns The order data | returns null if the order is not found or an error occurs
224
224
  */
225
225
  refetchOrder = async (): Promise<Json | null> => {
226
- const result = await this.jsExecutor.execute(`
227
- if(typeof window.deunaRefetchOrder !== 'function'){
226
+ const result = await this.jsExecutor
227
+ .execute(` if(typeof window.deunaRefetchOrder !== 'function'){
228
228
  sendResult({order: null});
229
229
  return;
230
230
  }
@@ -0,0 +1,86 @@
1
+ import { WebViewMessageEvent } from 'react-native-webview';
2
+ import {
3
+ BaseWebViewController,
4
+ WebViewEventType,
5
+ } from './BaseWebViewController';
6
+ import { Completer } from '../helpers/Completer';
7
+ import { Environment } from '../types';
8
+ import { DeunaLogs } from '../DeunaLogs';
9
+
10
+ export class DeviceFingerprintController extends BaseWebViewController {
11
+ constructor(
12
+ private readonly publicApiKey: string,
13
+ private readonly environment: Environment
14
+ ) {
15
+ super();
16
+ }
17
+
18
+ private completer = new Completer<boolean>();
19
+
20
+ onMessage = (event: WebViewMessageEvent) => {
21
+ const eventData = JSON.parse(event.nativeEvent.data);
22
+
23
+ const mapper = {
24
+ [WebViewEventType.consoleLog]: () => {
25
+ DeunaLogs.info(
26
+ `CONSOLE LOG`,
27
+ JSON.stringify(eventData.message, null, 2)
28
+ );
29
+ },
30
+ [WebViewEventType.jsExecutor]: () => {
31
+ const { data, requestId } = eventData as {
32
+ requestId: number;
33
+ data: Record<string, any> | null;
34
+ };
35
+ this.jsExecutor.requests.get(requestId)?.(data);
36
+ this.jsExecutor.requests.delete(requestId);
37
+ },
38
+ };
39
+ mapper[eventData.type as keyof typeof mapper]?.();
40
+ };
41
+
42
+ onLoad = () => {
43
+ this.webView?.injectJavaScript(`
44
+ console.log = function(message) {
45
+ window.ReactNativeWebView.postMessage(JSON.stringify({ type: '${WebViewEventType.consoleLog}', message:message }));
46
+ };
47
+ `);
48
+ this.completer.complete(true);
49
+ };
50
+
51
+ onError = (_: any) => {
52
+ this.completer.complete(false);
53
+ };
54
+
55
+ urlMustBeLoadedInTheSameWebView = (_: string) => true;
56
+
57
+ generateDeviceFingerprint = async (
58
+ params: Record<string, any>
59
+ ): Promise<string | null> => {
60
+ const isLoaded = await this.completer.wait;
61
+ if (!isLoaded) {
62
+ return null;
63
+ }
64
+
65
+ const data = await this.jsExecutor.execute(`
66
+ if (typeof window.generateFraudId !== 'function') {
67
+ console.log('❌ window.generateFraudId is not a function');
68
+ sendResult({fraudId: null});
69
+ return;
70
+ }
71
+
72
+ window.generateFraudId({
73
+ publicApiKey: "${this.publicApiKey}",
74
+ env: "${this.environment}",
75
+ params: ${JSON.stringify(params)}
76
+ })
77
+ .then((fraudId) => {
78
+ sendResult({ fraudId: fraudId });
79
+ })
80
+ .catch((error) => {
81
+ sendResult({ fraudId: null });
82
+ });
83
+ `);
84
+ return data?.fraudId ?? null;
85
+ };
86
+ }
@@ -1,4 +1,4 @@
1
- import WebView, { WebViewMessageEvent } from 'react-native-webview';
1
+ import { WebViewMessageEvent } from 'react-native-webview';
2
2
  import {
3
3
  BaseWebViewController,
4
4
  WebViewEventType,
@@ -11,10 +11,6 @@ export class OpenInNewTabController extends BaseWebViewController {
11
11
  this.url = url;
12
12
  }
13
13
 
14
- setWebView = (webView: WebView) => {
15
- this.webView = webView;
16
- };
17
-
18
14
  onLoad = () => {
19
15
  this.setXprops();
20
16
  };
@@ -41,6 +37,9 @@ export class OpenInNewTabController extends BaseWebViewController {
41
37
  setXprops = () => {
42
38
  // Hide the print button on the Efecty page
43
39
  this.webView?.injectJavaScript(`
40
+ console.log = function(message) {
41
+ window.ReactNativeWebView.postMessage(JSON.stringify({ type: '${WebViewEventType.consoleLog}', message }));
42
+ };
44
43
  window.close = function() {
45
44
  window.ReactNativeWebView.postMessage(JSON.stringify({ type: '${WebViewEventType.newTabWindowClose}', data: '' }));
46
45
  };
@@ -3,3 +3,6 @@ export const constants = {
3
3
  metadata: 'metadata',
4
4
  voucherPdfDownloadUrl: 'voucherPdfDownloadUrl',
5
5
  };
6
+
7
+
8
+ export const DEVICE_FINGERPRINT_URL = 'https://cdn.stg.deuna.io/mobile-sdks/get_fraud_id.html';
@@ -1,17 +1,17 @@
1
- import { Environment } from '../base';
2
- import { hasKey } from '../utils/hasKey';
3
- import { getIntegrationType, UrlConfig } from './urlConfig';
1
+ import { Environment } from "../base";
2
+ import { hasKey } from "../utils/hasKey";
3
+ import { getIntegrationType, UrlConfig } from "./urlConfig";
4
4
 
5
5
  const ELEMENTS_URLS: Record<Environment, string> = {
6
- production: 'https://elements.deuna.io',
7
- sandbox: 'https://elements.sandbox.deuna.io',
8
- staging: 'https://elements.stg.deuna.io',
9
- develop: 'https://elements.dev.deuna.io',
6
+ production: "https://elements.deuna.io",
7
+ sandbox: "https://elements.sandbox.deuna.io",
8
+ staging: "https://elements.stg.deuna.io",
9
+ develop: "https://elements.dev.deuna.io",
10
10
  } as const;
11
11
 
12
12
  const WIDGET_PATHS = {
13
- click_to_pay: '/click_to_pay',
14
- vault: '/vault',
13
+ click_to_pay: "/click_to_pay",
14
+ vault: "/vault",
15
15
  } as const;
16
16
 
17
17
  type WidgetPath = keyof typeof WIDGET_PATHS;
@@ -50,9 +50,9 @@ const buildSearchParams = (config: UrlConfig): URLSearchParams => {
50
50
  const searchParams: SearchParams = {
51
51
  publicApiKey: config.publicApiKey,
52
52
  orderToken: config.orderToken,
53
- email: userInfo?.email || '',
54
- firstName: userInfo?.firstName || '',
55
- lastName: userInfo?.lastName || '',
53
+ email: userInfo?.email || "",
54
+ firstName: userInfo?.firstName || "",
55
+ lastName: userInfo?.lastName || "",
56
56
  int: getIntegrationType(mode),
57
57
  language,
58
58
  };
@@ -85,7 +85,7 @@ const buildSearchParams = (config: UrlConfig): URLSearchParams => {
85
85
  */
86
86
  const getWidgetPath = (types?: Array<{ name: string }>): string => {
87
87
  if (types && types.length > 0) {
88
- const firstPath = types[0].name as WidgetPath;
88
+ const firstPath = types[0]?.name as WidgetPath;
89
89
  return hasKey(WIDGET_PATHS, firstPath)
90
90
  ? WIDGET_PATHS[firstPath]
91
91
  : WIDGET_PATHS.vault;
@@ -107,17 +107,14 @@ export const buildElementsLink = (config: UrlConfig): string => {
107
107
  behavior: config.behavior || {},
108
108
  };
109
109
 
110
- searchParams.append('xpropsB64', btoa(JSON.stringify(xpropsB64)));
110
+ searchParams.append("xpropsB64", btoa(JSON.stringify(xpropsB64)));
111
111
 
112
112
  const widgetPath = getWidgetPath(config.types);
113
- const normalizedPath = widgetPath.startsWith('/')
113
+ const normalizedPath = widgetPath.startsWith("/")
114
114
  ? widgetPath
115
115
  : `/${widgetPath}`;
116
116
 
117
- const url = new URL(normalizedPath, baseUrl);
118
- url.search = searchParams.toString();
119
-
120
- console.log('url', url.toString());
117
+ const url = new URL(`${baseUrl}${normalizedPath}?${searchParams.toString()}`);
121
118
 
122
119
  return url.toString();
123
120
  };
@@ -40,8 +40,7 @@ export const buildNextActionLink = (config: UrlConfig): string => {
40
40
  baseUrl = config.domain;
41
41
  }
42
42
 
43
- const url = new URL(`/next-action-purchase/${orderToken}`, baseUrl);
44
- url.search = searchParams.toString();
43
+ const url = new URL(`${baseUrl}/next-action-purchase/${orderToken}?${searchParams.toString()}`);
45
44
 
46
45
  return url.toString();
47
46
  };
@@ -54,8 +54,7 @@ export const buildPaymentLink = (config: UrlConfig): string => {
54
54
  //encode to base64
55
55
  searchParams.append("xpropsB64", btoa(JSON.stringify(xpropsB64)));
56
56
 
57
- const url = new URL(`/now/${orderToken}`, baseUrl);
58
- url.search = searchParams.toString();
57
+ const url = new URL(`${baseUrl}/now/${orderToken}?${searchParams.toString()}`);
59
58
 
60
59
  return url.toString();
61
60
  };
@@ -44,8 +44,7 @@ export const buildVoucherLink = (config: UrlConfig): string => {
44
44
  //encode to base64
45
45
  searchParams.append("xpropsB64", btoa(JSON.stringify(xpropsB64)));
46
46
 
47
- const url = new URL("/voucher", baseUrl);
48
- url.search = searchParams.toString();
47
+ const url = new URL(`${baseUrl}/voucher?${searchParams.toString()}`);
49
48
 
50
49
  return url.toString();
51
50
  };