react-native-unit-components 3.5.1 → 3.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/lib/commonjs/components/UNCheckDepositComponent/UNCheckDepositComponent.js +3 -0
  2. package/lib/commonjs/components/UNCheckDepositComponent/UNCheckDepositComponent.js.map +1 -1
  3. package/lib/commonjs/components/UNCheckDepositComponent/UNCheckDepositComponent.utils.js +7 -0
  4. package/lib/commonjs/components/UNCheckDepositComponent/UNCheckDepositComponent.utils.js.map +1 -1
  5. package/lib/commonjs/messages/webMessages/unitComponentsMessages.js +1 -0
  6. package/lib/commonjs/messages/webMessages/unitComponentsMessages.js.map +1 -1
  7. package/lib/commonjs/services/veryfiService.js +68 -12
  8. package/lib/commonjs/services/veryfiService.js.map +1 -1
  9. package/lib/commonjs/services/veryfiService.utils.js +87 -0
  10. package/lib/commonjs/services/veryfiService.utils.js.map +1 -0
  11. package/lib/commonjs/types/shared/error.types.js.map +1 -1
  12. package/lib/commonjs/unitComponentsSdkManager/UnitComponentsSdkManager.js +19 -19
  13. package/lib/commonjs/unitComponentsSdkManager/UnitComponentsSdkManager.js.map +1 -1
  14. package/lib/module/components/UNCheckDepositComponent/UNCheckDepositComponent.js +3 -0
  15. package/lib/module/components/UNCheckDepositComponent/UNCheckDepositComponent.js.map +1 -1
  16. package/lib/module/components/UNCheckDepositComponent/UNCheckDepositComponent.utils.js +7 -0
  17. package/lib/module/components/UNCheckDepositComponent/UNCheckDepositComponent.utils.js.map +1 -1
  18. package/lib/module/messages/webMessages/unitComponentsMessages.js +1 -0
  19. package/lib/module/messages/webMessages/unitComponentsMessages.js.map +1 -1
  20. package/lib/module/services/veryfiService.js +68 -12
  21. package/lib/module/services/veryfiService.js.map +1 -1
  22. package/lib/module/services/veryfiService.utils.js +79 -0
  23. package/lib/module/services/veryfiService.utils.js.map +1 -0
  24. package/lib/module/types/shared/error.types.js.map +1 -1
  25. package/lib/module/unitComponentsSdkManager/UnitComponentsSdkManager.js +19 -19
  26. package/lib/module/unitComponentsSdkManager/UnitComponentsSdkManager.js.map +1 -1
  27. package/lib/typescript/src/components/UNCheckDepositComponent/UNCheckDepositComponent.d.ts +2 -1
  28. package/lib/typescript/src/components/UNCheckDepositComponent/UNCheckDepositComponent.d.ts.map +1 -1
  29. package/lib/typescript/src/components/UNCheckDepositComponent/UNCheckDepositComponent.utils.d.ts.map +1 -1
  30. package/lib/typescript/src/messages/webMessages/unitComponentsMessages.d.ts +3 -1
  31. package/lib/typescript/src/messages/webMessages/unitComponentsMessages.d.ts.map +1 -1
  32. package/lib/typescript/src/services/veryfiService.d.ts +2 -4
  33. package/lib/typescript/src/services/veryfiService.d.ts.map +1 -1
  34. package/lib/typescript/src/services/veryfiService.utils.d.ts +10 -0
  35. package/lib/typescript/src/services/veryfiService.utils.d.ts.map +1 -0
  36. package/lib/typescript/src/types/shared/error.types.d.ts +4 -0
  37. package/lib/typescript/src/types/shared/error.types.d.ts.map +1 -1
  38. package/package.json +1 -1
  39. package/src/components/UNCheckDepositComponent/UNCheckDepositComponent.tsx +5 -1
  40. package/src/components/UNCheckDepositComponent/UNCheckDepositComponent.utils.ts +7 -0
  41. package/src/messages/webMessages/unitComponentsMessages.ts +3 -0
  42. package/src/services/veryfiService.ts +76 -16
  43. package/src/services/veryfiService.utils.ts +87 -0
  44. package/src/types/shared/error.types.ts +5 -0
  45. package/src/unitComponentsSdkManager/UnitComponentsSdkManager.ts +19 -19
@@ -1,4 +1,5 @@
1
1
  import { NativeEventEmitter } from 'react-native';
2
+ import { labelSidesFromPages } from './veryfiService.utils';
2
3
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
3
4
  let VeryfiLens = null;
4
5
  try {
@@ -13,8 +14,12 @@ export const isVeryfiAvailable = () => {
13
14
  const CHECK_SETTINGS = {
14
15
  documentTypes: ['check'],
15
16
  checksBackIsOn: true,
17
+ checksBackIsRequired: true,
16
18
  blurDetectionIsOn: true,
17
19
  autoDocDetectionAndCropIsOn: true,
20
+ // Without this, a no-document capture is kept in the package and the user
21
+ // lands on the submit screen with an image that can only fail.
22
+ allowSubmitUndetectedDocsIsOn: false,
18
23
  dataExtractionEngine: true,
19
24
  returnStitchedPDF: true,
20
25
  originalImageMaxSizeInMB: 1.4
@@ -27,6 +32,10 @@ const buildEndorsement = bankName => {
27
32
  // Bank-agnostic fallback when the bank name is absent, so the copy never reads "...deposit at ".
28
33
  return `Please make sure to sign the back and write “For mobile deposit ${bank ? `at ${bank}` : 'only'}”`;
29
34
  };
35
+
36
+ // How long to hold delivery waiting for Veryfi's parsed result before falling
37
+ // back to positional labeling.
38
+ const VERDICT_WAIT_MS = 10000;
30
39
  export const configureAndShowVeryfiCamera = (credentials, bankName, onImages, onError) => {
31
40
  if (!VeryfiLens) {
32
41
  onError('Veryfi SDK is not available');
@@ -35,13 +44,45 @@ export const configureAndShowVeryfiCamera = (credentials, bankName, onImages, on
35
44
  const emitter = new NativeEventEmitter(VeryfiLens.NativeModule);
36
45
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
37
46
  const subscriptions = [];
38
- let delivered = false;
47
+ let capturing = false;
48
+ let dispatched = false;
49
+ let convertedImages = null;
50
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
51
+ let verdictPages = null;
52
+ let fallbackTimer = null;
39
53
  const cleanup = () => {
40
54
  subscriptions.forEach(sub => sub.remove());
55
+ if (fallbackTimer != null) {
56
+ clearTimeout(fallbackTimer);
57
+ fallbackTimer = null;
58
+ }
59
+ };
60
+ const dispatchToWeb = images => {
61
+ if (dispatched) return;
62
+ dispatched = true;
63
+ cleanup();
64
+ onImages(images);
65
+ };
66
+
67
+ // Delivery is held briefly so Veryfi's parsed result — the authoritative
68
+ // source for which image is the front — can label the pair before the web
69
+ // renders it. The positional fallback covers slow or failed uploads;
70
+ // position is unreliable across Veryfi versions (the order reversed in
71
+ // Android lens 2.4.0.0), which is exactly why the verdict is preferred.
72
+ const dispatchWhenReady = () => {
73
+ if (dispatched || !convertedImages) return;
74
+ if (verdictPages) {
75
+ const labeled = labelSidesFromPages(convertedImages, verdictPages);
76
+ dispatchToWeb(labeled ?? convertedImages);
77
+ return;
78
+ }
79
+ if (fallbackTimer == null) {
80
+ fallbackTimer = setTimeout(() => dispatchToWeb(convertedImages), VERDICT_WAIT_MS);
81
+ }
41
82
  };
42
- const deliverImages = imagePaths => {
43
- if (delivered) return;
44
- delivered = true;
83
+ const convertImages = imagePaths => {
84
+ if (capturing) return;
85
+ capturing = true;
45
86
  let converted = 0;
46
87
  const images = [];
47
88
  imagePaths.forEach((filePath, index) => {
@@ -50,10 +91,11 @@ export const configureAndShowVeryfiCamera = (credentials, bankName, onImages, on
50
91
  () => {
51
92
  converted++;
52
93
  if (converted === imagePaths.length) {
53
- cleanup();
54
94
  if (images.length > 0) {
55
- onImages(images);
95
+ convertedImages = images;
96
+ dispatchWhenReady();
56
97
  } else {
98
+ cleanup();
57
99
  onError('Failed to convert check images');
58
100
  }
59
101
  }
@@ -66,8 +108,8 @@ export const configureAndShowVeryfiCamera = (credentials, bankName, onImages, on
66
108
  });
67
109
  converted++;
68
110
  if (converted === imagePaths.length) {
69
- cleanup();
70
- onImages(images);
111
+ convertedImages = images;
112
+ dispatchWhenReady();
71
113
  }
72
114
  });
73
115
  });
@@ -80,14 +122,28 @@ export const configureAndShowVeryfiCamera = (credentials, bankName, onImages, on
80
122
  if (event.status === 'inprogress' && event.msg === 'img_stitched_pdf_path') {
81
123
  const paths = event.img_original_paths || [];
82
124
  if (paths.length > 0) {
83
- deliverImages(paths);
125
+ convertImages(paths);
84
126
  }
85
127
  }
86
128
  }));
129
+ subscriptions.push(
130
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
131
+ emitter.addListener(VeryfiLens.Events.onVeryfiLensSuccess, event => {
132
+ verdictPages = event?.data?.meta?.pages ?? null;
133
+ dispatchWhenReady();
134
+ }));
87
135
 
88
- // No onClose listener — if the user cancels, we simply don't dispatch
89
- // unitVeryfiResponse, and the web SDK's polling handles the timeout.
90
-
136
+ // User cancelled (X button) without submitting: the web side never resets its
137
+ // loading state on its own, so deliver an empty response to move it off the
138
+ // stuck Continue. Grace period covers a close event racing the stitched event.
139
+ subscriptions.push(emitter.addListener(VeryfiLens.Events.onVeryfiLensClose, () => {
140
+ setTimeout(() => {
141
+ if (capturing || dispatched) return;
142
+ dispatched = true;
143
+ cleanup();
144
+ onImages([]);
145
+ }, 1500);
146
+ }));
91
147
  subscriptions.push(
92
148
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
93
149
  emitter.addListener(VeryfiLens.Events.onVeryfiLensError, event => {
@@ -1 +1 @@
1
- {"version":3,"names":["NativeEventEmitter","VeryfiLens","require","default","isVeryfiAvailable","CHECK_SETTINGS","documentTypes","checksBackIsOn","blurDetectionIsOn","autoDocDetectionAndCropIsOn","dataExtractionEngine","returnStitchedPDF","originalImageMaxSizeInMB","BACK_CAPTURE_MODAL_KEY","buildEndorsement","bankName","bank","trim","configureAndShowVeryfiCamera","credentials","onImages","onError","emitter","NativeModule","subscriptions","delivered","cleanup","forEach","sub","remove","deliverImages","imagePaths","converted","images","filePath","index","getFileBase64","length","base64Data","push","base64Img","isFront","addListener","Events","onVeryfiLensUpdate","event","status","msg","paths","img_original_paths","onVeryfiLensError","veryfiCredentials","clientId","userName","apiKey","url","endorsement","settings","customLensStrings","en","configureWithCredentials","showCamera"],"sourceRoot":"../../../src","sources":["services/veryfiService.ts"],"mappings":"AAAA,SAASA,kBAAkB,QAAQ,cAAc;AAGjD;AACA,IAAIC,UAAe,GAAG,IAAI;AAC1B,IAAI;EACF;EACAA,UAAU,GAAGC,OAAO,CAAC,kCAAkC,CAAC,CAACC,OAAO;AAClE,CAAC,CAAC,MAAM;EACN;AAAA;AAGF,OAAO,MAAMC,iBAAiB,GAAGA,CAAA,KAAe;EAC9C,OAAOH,UAAU,IAAI,IAAI;AAC3B,CAAC;AAOD,MAAMI,cAAc,GAAG;EACrBC,aAAa,EAAE,CAAC,OAAO,CAAC;EACxBC,cAAc,EAAE,IAAI;EACpBC,iBAAiB,EAAE,IAAI;EACvBC,2BAA2B,EAAE,IAAI;EACjCC,oBAAoB,EAAE,IAAI;EAC1BC,iBAAiB,EAAE,IAAI;EACvBC,wBAAwB,EAAE;AAC5B,CAAC;;AAED;AACA,MAAMC,sBAAsB,GAAG,qCAAqC;AAEpE,MAAMC,gBAAgB,GAAIC,QAAiB,IAAa;EACtD,MAAMC,IAAI,GAAGD,QAAQ,EAAEE,IAAI,CAAC,CAAC;EAC7B;EACA,OAAO,mEAAmED,IAAI,GAAG,MAAMA,IAAI,EAAE,GAAG,MAAM,GAAG;AAC3G,CAAC;AAED,OAAO,MAAME,4BAA4B,GAAGA,CAC1CC,WAAgC,EAChCJ,QAA4B,EAC5BK,QAA2C,EAC3CC,OAAgC,KACvB;EACT,IAAI,CAACpB,UAAU,EAAE;IACfoB,OAAO,CAAC,6BAA6B,CAAC;IACtC;EACF;EAEA,MAAMC,OAAO,GAAG,IAAItB,kBAAkB,CAACC,UAAU,CAACsB,YAAY,CAAC;EAC/D;EACA,MAAMC,aAAoB,GAAG,EAAE;EAC/B,IAAIC,SAAS,GAAG,KAAK;EAErB,MAAMC,OAAO,GAAGA,CAAA,KAAM;IACpBF,aAAa,CAACG,OAAO,CAAEC,GAAG,IAAKA,GAAG,CAACC,MAAM,CAAC,CAAC,CAAC;EAC9C,CAAC;EAED,MAAMC,aAAa,GAAIC,UAAoB,IAAK;IAC9C,IAAIN,SAAS,EAAE;IACfA,SAAS,GAAG,IAAI;IAEhB,IAAIO,SAAS,GAAG,CAAC;IACjB,MAAMC,MAAuB,GAAG,EAAE;IAElCF,UAAU,CAACJ,OAAO,CAAC,CAACO,QAAQ,EAAEC,KAAK,KAAK;MACtClC,UAAU,CAACmC,aAAa,CACtBF,QAAQ;MACR;MACA,MAAM;QACJF,SAAS,EAAE;QACX,IAAIA,SAAS,KAAKD,UAAU,CAACM,MAAM,EAAE;UACnCX,OAAO,CAAC,CAAC;UACT,IAAIO,MAAM,CAACI,MAAM,GAAG,CAAC,EAAE;YACrBjB,QAAQ,CAACa,MAAM,CAAC;UAClB,CAAC,MAAM;YACLZ,OAAO,CAAC,gCAAgC,CAAC;UAC3C;QACF;MACF,CAAC;MACD;MACCiB,UAAkB,IAAK;QACtBL,MAAM,CAACM,IAAI,CAAC;UACVC,SAAS,EAAEF,UAAU;UACrBG,OAAO,EAAEN,KAAK,KAAK;QACrB,CAAC,CAAC;QACFH,SAAS,EAAE;QACX,IAAIA,SAAS,KAAKD,UAAU,CAACM,MAAM,EAAE;UACnCX,OAAO,CAAC,CAAC;UACTN,QAAQ,CAACa,MAAM,CAAC;QAClB;MACF,CACF,CAAC;IACH,CAAC,CAAC;EACJ,CAAC;;EAED;EACAT,aAAa,CAACe,IAAI;EAChB;EACAjB,OAAO,CAACoB,WAAW,CAACzC,UAAU,CAAC0C,MAAM,CAACC,kBAAkB,EAAGC,KAAU,IAAK;IACxE,IAAIA,KAAK,CAACC,MAAM,KAAK,YAAY,IAAID,KAAK,CAACE,GAAG,KAAK,uBAAuB,EAAE;MAC1E,MAAMC,KAAK,GAAGH,KAAK,CAACI,kBAAkB,IAAI,EAAE;MAC5C,IAAID,KAAK,CAACX,MAAM,GAAG,CAAC,EAAE;QACpBP,aAAa,CAACkB,KAAK,CAAC;MACtB;IACF;EACF,CAAC,CACH,CAAC;;EAED;EACA;;EAEAxB,aAAa,CAACe,IAAI;EAChB;EACAjB,OAAO,CAACoB,WAAW,CAACzC,UAAU,CAAC0C,MAAM,CAACO,iBAAiB,EAAGL,KAAU,IAAK;IACvEnB,OAAO,CAAC,CAAC;IACTL,OAAO,CAACwB,KAAK,CAACE,GAAG,IAAI,cAAc,CAAC;EACtC,CAAC,CACH,CAAC;EAED,MAAMI,iBAAiB,GAAG;IACxBC,QAAQ,EAAEjC,WAAW,CAACiC,QAAQ;IAC9BC,QAAQ,EAAElC,WAAW,CAACkC,QAAQ;IAC9BC,MAAM,EAAEnC,WAAW,CAACmC,MAAM;IAC1BC,GAAG,EAAEpC,WAAW,CAACoC;EACnB,CAAC;EAED,MAAMC,WAAW,GAAG1C,gBAAgB,CAACC,QAAQ,CAAC;EAC9C,MAAM0C,QAAQ,GAAG;IACf,GAAGpD,cAAc;IACjBqD,iBAAiB,EAAE;MACjBC,EAAE,EAAE;QACF,CAAC9C,sBAAsB,GAAG,GAAGA,sBAAsB,OAAO2C,WAAW;MACvE;IACF;EACF,CAAC;EAEDvD,UAAU,CAAC2D,wBAAwB,CAACT,iBAAiB,EAAEM,QAAQ,EAAE,MAAM;IACrExD,UAAU,CAAC4D,UAAU,CAAC,CAAC;EACzB,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["NativeEventEmitter","labelSidesFromPages","VeryfiLens","require","default","isVeryfiAvailable","CHECK_SETTINGS","documentTypes","checksBackIsOn","checksBackIsRequired","blurDetectionIsOn","autoDocDetectionAndCropIsOn","allowSubmitUndetectedDocsIsOn","dataExtractionEngine","returnStitchedPDF","originalImageMaxSizeInMB","BACK_CAPTURE_MODAL_KEY","buildEndorsement","bankName","bank","trim","VERDICT_WAIT_MS","configureAndShowVeryfiCamera","credentials","onImages","onError","emitter","NativeModule","subscriptions","capturing","dispatched","convertedImages","verdictPages","fallbackTimer","cleanup","forEach","sub","remove","clearTimeout","dispatchToWeb","images","dispatchWhenReady","labeled","setTimeout","convertImages","imagePaths","converted","filePath","index","getFileBase64","length","base64Data","push","base64Img","isFront","addListener","Events","onVeryfiLensUpdate","event","status","msg","paths","img_original_paths","onVeryfiLensSuccess","data","meta","pages","onVeryfiLensClose","onVeryfiLensError","veryfiCredentials","clientId","userName","apiKey","url","endorsement","settings","customLensStrings","en","configureWithCredentials","showCamera"],"sourceRoot":"../../../src","sources":["services/veryfiService.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,79 @@
1
+ const JPEG_SOF_MARKERS = [0xc0, 0xc1, 0xc2, 0xc3, 0xc5, 0xc6, 0xc7, 0xc9, 0xca, 0xcb, 0xcd, 0xce, 0xcf];
2
+ export const readJpegDimensions = base64 => {
3
+ try {
4
+ // SOF sits near the file start; a 4-aligned prefix keeps atob happy and cheap.
5
+ const prefix = base64.length > 786432 ? base64.slice(0, 786432) : base64;
6
+ const bytes = atob(prefix);
7
+ if (bytes.charCodeAt(0) !== 0xff || bytes.charCodeAt(1) !== 0xd8) return null;
8
+ let i = 2;
9
+ while (i + 9 < bytes.length) {
10
+ if (bytes.charCodeAt(i) !== 0xff) {
11
+ i++;
12
+ continue;
13
+ }
14
+ const marker = bytes.charCodeAt(i + 1);
15
+ if (marker === 0xff) {
16
+ i++;
17
+ continue;
18
+ }
19
+ if (marker === 0x01 || marker >= 0xd0 && marker <= 0xd9) {
20
+ i += 2;
21
+ continue;
22
+ }
23
+ if (JPEG_SOF_MARKERS.includes(marker)) {
24
+ return {
25
+ height: bytes.charCodeAt(i + 5) * 256 + bytes.charCodeAt(i + 6),
26
+ width: bytes.charCodeAt(i + 7) * 256 + bytes.charCodeAt(i + 8)
27
+ };
28
+ }
29
+ i += 2 + bytes.charCodeAt(i + 2) * 256 + bytes.charCodeAt(i + 3);
30
+ }
31
+ return null;
32
+ } catch {
33
+ return null;
34
+ }
35
+ };
36
+
37
+ // Veryfi's parsed result is the authority on which image is the front
38
+ // (their meta.pages[].is_front); page order does not correspond to the
39
+ // delivery array's order, so pages are matched to our images by exact
40
+ // pixel dimensions. Returns null whenever the verdict is not unambiguous.
41
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
42
+ export const labelSidesFromPages = (images, pages) => {
43
+ if (!Array.isArray(pages) || pages.length !== 2 || images.length !== 2) return null;
44
+ const fronts = pages.filter(p => p && p.is_front === true);
45
+ const backs = pages.filter(p => p && p.is_front === false);
46
+ const frontPage = fronts[0];
47
+ const backPage = backs[0];
48
+ if (fronts.length !== 1 || backs.length !== 1 || !frontPage || !backPage) return null;
49
+ if (typeof frontPage.width !== 'number' || typeof frontPage.height !== 'number') return null;
50
+ const dims = [];
51
+ for (const img of images) {
52
+ const d = readJpegDimensions(img.base64Img);
53
+ if (!d) return null;
54
+ dims.push(d);
55
+ }
56
+
57
+ // Veryfi may auto-rotate pages in the parsed result, so dimensions are
58
+ // compared as an unordered pair.
59
+ const sameDims = (d, w, h) => d.width === w && d.height === h || d.width === h && d.height === w;
60
+ const matchesFront = dims.map(d => sameDims(d, frontPage.width, frontPage.height));
61
+ if (matchesFront.filter(Boolean).length !== 1) return null;
62
+ const frontIdx = matchesFront.indexOf(true);
63
+ const backIdx = 1 - frontIdx;
64
+ const frontImage = images[frontIdx];
65
+ const backImage = images[backIdx];
66
+ const backDims = dims[backIdx];
67
+ if (!frontImage || !backImage || !backDims) return null;
68
+ if (typeof backPage.width === 'number' && typeof backPage.height === 'number') {
69
+ if (!sameDims(backDims, backPage.width, backPage.height)) return null;
70
+ }
71
+ return [{
72
+ base64Img: frontImage.base64Img,
73
+ isFront: true
74
+ }, {
75
+ base64Img: backImage.base64Img,
76
+ isFront: false
77
+ }];
78
+ };
79
+ //# sourceMappingURL=veryfiService.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["JPEG_SOF_MARKERS","readJpegDimensions","base64","prefix","length","slice","bytes","atob","charCodeAt","i","marker","includes","height","width","labelSidesFromPages","images","pages","Array","isArray","fronts","filter","p","is_front","backs","frontPage","backPage","dims","img","d","base64Img","push","sameDims","w","h","matchesFront","map","Boolean","frontIdx","indexOf","backIdx","frontImage","backImage","backDims","isFront"],"sourceRoot":"../../../src","sources":["services/veryfiService.utils.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["UNComponentsErrorCodes"],"sourceRoot":"../../../../src","sources":["types/shared/error.types.ts"],"mappings":"AAkBA,WAAYA,sBAAsB,0BAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAA,OAAtBA,sBAAsB;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["UNComponentsErrorCodes"],"sourceRoot":"../../../../src","sources":["types/shared/error.types.ts"],"mappings":"AAuBA,WAAYA,sBAAsB,0BAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAA,OAAtBA,sBAAsB;AAAA","ignoreList":[]}
@@ -14,26 +14,26 @@ import UNSnapshotProtectionHelper from '../nativeModulesHelpers/UNSanpshotProtec
14
14
  import { loadIosFontBase64 } from '../nativeModulesHelpers/UNFontFileHelper/UNFontFileHelper';
15
15
  export class UnitComponentsSDK {
16
16
  static securitySettings = UNComponentsSDKConstants.securitySettings;
17
- static sdkVersion = '3.5.1';
17
+ static sdkVersion = '3.5.3';
18
18
  static iosFontBase64Map = {};
19
19
  static init = async (env, theme, language, fonts, webVersioningStrategy = UNComponentsSDKConstants.webSDKRecommendedStrategy, securitySettings = UNComponentsSDKConstants.securitySettings) => {
20
20
  try {
21
- this.webVersioningStrategy = webVersioningStrategy;
22
- this.ui = new UnitComponentsUiManager();
23
- this.helpers = new UnitComponentsHelpersManager();
21
+ UnitComponentsSDK.webVersioningStrategy = webVersioningStrategy;
22
+ UnitComponentsSDK.ui = new UnitComponentsUiManager();
23
+ UnitComponentsSDK.helpers = new UnitComponentsHelpersManager();
24
24
  const isJailbroke = await UNSecurityManagerHelper.isDeviceJailbroke();
25
25
  if (isJailbroke) {
26
26
  throw Error('Device is jailbroke');
27
27
  }
28
- this.env = env;
29
- this.securitySettings = securitySettings;
30
- this.fonts = fonts;
28
+ UnitComponentsSDK.env = env;
29
+ UnitComponentsSDK.securitySettings = securitySettings;
30
+ UnitComponentsSDK.fonts = fonts;
31
31
  if (Platform.OS === 'ios' && fonts) {
32
- this.iosFontBase64Map = await loadIosFontBase64(fonts);
32
+ UnitComponentsSDK.iosFontBase64Map = await loadIosFontBase64(fonts);
33
33
  }
34
34
  store.dispatch(setTheme(theme));
35
35
  store.dispatch(setLanguage(language));
36
- warnClientIfNeeded(this.webVersioningStrategy);
36
+ warnClientIfNeeded(UnitComponentsSDK.webVersioningStrategy);
37
37
  const shouldProtectFromSnapshot = securitySettings.snapshotProtectionStrategy != UNComponentsSnapshotProtectionStrategy.None;
38
38
  if (Platform.OS === 'ios') {
39
39
  UNSnapshotProtectionHelper.setIosSecurity(shouldProtectFromSnapshot, 'light');
@@ -44,45 +44,45 @@ export class UnitComponentsSDK {
44
44
  }
45
45
  };
46
46
  static isInitialized = () => {
47
- return this.env != undefined;
47
+ return UnitComponentsSDK.env != undefined;
48
48
  };
49
49
  static setPushProvisioningModule = pushProvisionModule => {
50
- this.pushProvisionModule = pushProvisionModule;
50
+ UnitComponentsSDK.pushProvisionModule = pushProvisionModule;
51
51
  };
52
52
  static getPushProvisionModule = () => {
53
- return this.pushProvisionModule;
53
+ return UnitComponentsSDK.pushProvisionModule;
54
54
  };
55
55
  static getSecuritySettings = () => {
56
- return this.securitySettings;
56
+ return UnitComponentsSDK.securitySettings;
57
57
  };
58
58
 
59
59
  /**
60
60
  * @deprecated - Unit SDK is managing the signedNonce, no need to provide it
61
61
  */
62
62
  static setSignedNonce = signedNonce => {
63
- this.signedNonce = signedNonce;
63
+ UnitComponentsSDK.signedNonce = signedNonce;
64
64
  };
65
65
  static getEnv = () => {
66
- return this.env;
66
+ return UnitComponentsSDK.env;
67
67
  };
68
68
  static getWebVersioningStrategy = () => {
69
- return this.webVersioningStrategy;
69
+ return UnitComponentsSDK.webVersioningStrategy;
70
70
  };
71
71
  static getFonts = () => {
72
- return this.fonts;
72
+ return UnitComponentsSDK.fonts;
73
73
  };
74
74
 
75
75
  /**
76
76
  * @deprecated - Unit SDK is managing the signedNonce, no need to provide it
77
77
  */
78
78
  static getSignedNonce = () => {
79
- return this.signedNonce;
79
+ return UnitComponentsSDK.signedNonce;
80
80
  };
81
81
  static setCustomerToken = customerToken => {
82
82
  store.dispatch(setCustomerToken(customerToken));
83
83
  };
84
84
  static getSdkVersion = () => {
85
- return this.sdkVersion;
85
+ return UnitComponentsSDK.sdkVersion;
86
86
  };
87
87
  static setVeryfiCredentials = credentials => {
88
88
  store.dispatch(setVeryfiCredentials(credentials));
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","fetchUnitScript","UnitComponentsUiManager","warnClientIfNeeded","UNComponentsSDKConstants","setTheme","setLanguage","setCustomerToken","setVeryfiCredentials","store","UserDataKeys","UNStoreManagerHelper","UnitComponentsHelpersManager","UNSecurityManagerHelper","UNComponentsSnapshotProtectionStrategy","UNSnapshotProtectionHelper","loadIosFontBase64","UnitComponentsSDK","securitySettings","sdkVersion","iosFontBase64Map","init","env","theme","language","fonts","webVersioningStrategy","webSDKRecommendedStrategy","ui","helpers","isJailbroke","isDeviceJailbroke","Error","OS","dispatch","shouldProtectFromSnapshot","snapshotProtectionStrategy","None","setIosSecurity","e","console","log","isInitialized","undefined","setPushProvisioningModule","pushProvisionModule","getPushProvisionModule","getSecuritySettings","setSignedNonce","signedNonce","getEnv","getWebVersioningStrategy","getFonts","getSignedNonce","customerToken","getSdkVersion","credentials","cleanUserData","cleanValue","unitCustomerToken","unitVerifiedCustomerToken","unitApplicationFormVerifiedToken"],"sourceRoot":"../../../src","sources":["unitComponentsSdkManager/UnitComponentsSdkManager.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Platform","fetchUnitScript","UnitComponentsUiManager","warnClientIfNeeded","UNComponentsSDKConstants","setTheme","setLanguage","setCustomerToken","setVeryfiCredentials","store","UserDataKeys","UNStoreManagerHelper","UnitComponentsHelpersManager","UNSecurityManagerHelper","UNComponentsSnapshotProtectionStrategy","UNSnapshotProtectionHelper","loadIosFontBase64","UnitComponentsSDK","securitySettings","sdkVersion","iosFontBase64Map","init","env","theme","language","fonts","webVersioningStrategy","webSDKRecommendedStrategy","ui","helpers","isJailbroke","isDeviceJailbroke","Error","OS","dispatch","shouldProtectFromSnapshot","snapshotProtectionStrategy","None","setIosSecurity","e","console","log","isInitialized","undefined","setPushProvisioningModule","pushProvisionModule","getPushProvisionModule","getSecuritySettings","setSignedNonce","signedNonce","getEnv","getWebVersioningStrategy","getFonts","getSignedNonce","customerToken","getSdkVersion","credentials","cleanUserData","cleanValue","unitCustomerToken","unitVerifiedCustomerToken","unitApplicationFormVerifiedToken"],"sourceRoot":"../../../src","sources":["unitComponentsSdkManager/UnitComponentsSdkManager.ts"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import type { UNCheckDeposit, UNAccount, UNComponentsOnLoadResponse } from '../../types/shared';
2
+ import type { UNCheckDeposit, UNAccount, UNComponentsFlowError, UNComponentsOnLoadResponse } from '../../types/shared';
3
3
  export interface UNCheckDepositComponentProps {
4
4
  accountId?: string;
5
5
  fee?: number;
@@ -8,6 +8,7 @@ export interface UNCheckDepositComponentProps {
8
8
  initialStageBackButton?: boolean;
9
9
  finalStageDoneButton?: boolean;
10
10
  onLoad?: (response: UNComponentsOnLoadResponse<UNAccount>) => void;
11
+ onError?: (error: UNComponentsFlowError) => void;
11
12
  onDepositCreated?: (checkData: UNCheckDeposit) => void;
12
13
  onRestartRequest?: (checkData: UNCheckDeposit) => void;
13
14
  onInitialStageBackButtonClicked?: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"UNCheckDepositComponent.d.ts","sourceRoot":"","sources":["../../../../../src/components/UNCheckDepositComponent/UNCheckDepositComponent.tsx"],"names":[],"mappings":";AASA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAqB,0BAA0B,EAAkC,MAAM,oBAAoB,CAAC;AAWnJ,MAAM,WAAW,4BAA4B;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,0BAA0B,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC;IACnE,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,KAAK,IAAI,CAAC;IACvD,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,KAAK,IAAI,CAAC;IACvD,+BAA+B,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7C,6BAA6B,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5C;;AAqHD,wBAAqF"}
1
+ {"version":3,"file":"UNCheckDepositComponent.d.ts","sourceRoot":"","sources":["../../../../../src/components/UNCheckDepositComponent/UNCheckDepositComponent.tsx"],"names":[],"mappings":";AASA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAqB,qBAAqB,EAAE,0BAA0B,EAAkC,MAAM,oBAAoB,CAAC;AAW1K,MAAM,WAAW,4BAA4B;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,0BAA0B,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC;IACnE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACjD,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,KAAK,IAAI,CAAC;IACvD,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,KAAK,IAAI,CAAC;IACvD,+BAA+B,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7C,6BAA6B,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5C;;AAwHD,wBAAqF"}
@@ -1 +1 @@
1
- {"version":3,"file":"UNCheckDepositComponent.utils.d.ts","sourceRoot":"","sources":["../../../../../src/components/UNCheckDepositComponent/UNCheckDepositComponent.utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAE9E,OAAO,EAAqB,KAAK,aAAa,EAAE,MAAM,8BAA8B,CAAC;AACrF,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,eAAO,MAAM,qBAAqB,UAAW,4BAA4B,sBAAsB,mBAAmB,GAAG,IAAI,WAYxH,CAAC;AAyBF,eAAO,MAAM,qBAAqB,cAQjC,CAAC;AAEF,eAAO,MAAM,wBAAwB,eAAgB,OAAO,GAAG,IAAI,UAAU,aAAa,EAAE,SAG3F,CAAC"}
1
+ {"version":3,"file":"UNCheckDepositComponent.utils.d.ts","sourceRoot":"","sources":["../../../../../src/components/UNCheckDepositComponent/UNCheckDepositComponent.utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAE9E,OAAO,EAAqB,KAAK,aAAa,EAAE,MAAM,8BAA8B,CAAC;AACrF,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,eAAO,MAAM,qBAAqB,UAAW,4BAA4B,sBAAsB,mBAAmB,GAAG,IAAI,WAYxH,CAAC;AA8BF,eAAO,MAAM,qBAAqB,cASjC,CAAC;AAEF,eAAO,MAAM,wBAAwB,eAAgB,OAAO,GAAG,IAAI,UAAU,aAAa,EAAE,SAG3F,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { UnitOnLoadResponseEvent } from './onLoadMessage';
2
+ import type { UNComponentsFlowError } from '../../types/shared/error.types';
2
3
  import { BottomSheetNativePlaceType } from '../../types/internal/bottomSheet.types';
3
4
  import { WebComponentType } from '../../types/internal/webComponent.types';
4
5
  export declare enum UnitComponentsMessage {
@@ -7,6 +8,7 @@ export declare enum UnitComponentsMessage {
7
8
  UNIT_REQUEST_CLOSE_FLOW = "unitRequestCloseFlow",
8
9
  UNIT_REQUEST_OPEN_LINK = "unitRequestOpenLink",
9
10
  UNIT_ON_LOAD = "unitOnLoad",
11
+ UNIT_ON_ERROR = "unitOnError",
10
12
  UNIT_REQUEST_DOWNLOAD = "unitRequestDownload",
11
13
  UNIT_REQUEST_EXTERNAL_SDK = "unitRequestExternalSdk",
12
14
  UNIT_REQUEST_LEFT_TO_SPEND_DETAILS = "unitRequestLeftToSpendDetails",
@@ -77,6 +79,6 @@ export interface RequestExternalSdkEvent {
77
79
  type: string;
78
80
  bankName?: string;
79
81
  }
80
- export type UnitEvent = RequestRenderingEvent | RequestRefreshEvent | RequestOpenLinkEvent | UnitOnLoadResponseEvent | RequestDownloadEvent | PlaidTokenCreatedEvent | RequestExternalSdkEvent | UnitWhiteLabelAppEvent;
82
+ export type UnitEvent = RequestRenderingEvent | RequestRefreshEvent | RequestOpenLinkEvent | UnitOnLoadResponseEvent | RequestDownloadEvent | PlaidTokenCreatedEvent | RequestExternalSdkEvent | UnitWhiteLabelAppEvent | UNComponentsFlowError;
81
83
  export {};
82
84
  //# sourceMappingURL=unitComponentsMessages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"unitComponentsMessages.d.ts","sourceRoot":"","sources":["../../../../../src/messages/webMessages/unitComponentsMessages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAE3E,oBAAY,qBAAqB;IAC/B,sBAAsB,yBAAyB;IAC/C,oBAAoB,uBAAuB;IAC3C,uBAAuB,yBAAyB;IAChD,sBAAsB,wBAAwB;IAC9C,YAAY,eAAe;IAC3B,qBAAqB,wBAAwB;IAC7C,yBAAyB,2BAA2B;IACpD,kCAAkC,kCAAkC;IACpE,+BAA+B,gCAAgC;IAC/D,4BAA4B,4BAA4B;IACxD,uBAAuB,0BAA0B;IACjD,sBAAsB,wBAAwB;CAC/C;AAED,oBAAY,4BAA4B;IACtC,qBAAqB,wBAAwB;CAC9C;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,yBAAyB,CAAC;CACjC;AAED,MAAM,WAAW,yBAAyB;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,gBAAgB,CAAC;IACvC,WAAW,EAAE,0BAA0B,CAAC;IACxC,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,OAAO,CAAA;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,4BAA4B,CAAC,qBAAqB,CAAC;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,sCAAsC;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,2BAA2B,GAAG,mBAAmB,CAAC;IACjE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,kBAAkB,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,wBAAwB,CAAA;CACrC;AAED,UAAU,wBAAwB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,MAAM,oCAAoC,GAAG;IACjD,IAAI,EAAE,eAAe,CAAC;IACtB,UAAU,EAAE;QACV,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;CACH,CAAA;AAED,MAAM,MAAM,sBAAsB,GAC9B,oCAAoC,CAAA;AAExC,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IAEb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,SAAS,GACjB,qBAAqB,GACrB,mBAAmB,GACnB,oBAAoB,GACpB,uBAAuB,GACvB,oBAAoB,GACpB,sBAAsB,GACtB,uBAAuB,GACvB,sBAAsB,CAAA"}
1
+ {"version":3,"file":"unitComponentsMessages.d.ts","sourceRoot":"","sources":["../../../../../src/messages/webMessages/unitComponentsMessages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAE3E,oBAAY,qBAAqB;IAC/B,sBAAsB,yBAAyB;IAC/C,oBAAoB,uBAAuB;IAC3C,uBAAuB,yBAAyB;IAChD,sBAAsB,wBAAwB;IAC9C,YAAY,eAAe;IAC3B,aAAa,gBAAgB;IAC7B,qBAAqB,wBAAwB;IAC7C,yBAAyB,2BAA2B;IACpD,kCAAkC,kCAAkC;IACpE,+BAA+B,gCAAgC;IAC/D,4BAA4B,4BAA4B;IACxD,uBAAuB,0BAA0B;IACjD,sBAAsB,wBAAwB;CAC/C;AAED,oBAAY,4BAA4B;IACtC,qBAAqB,wBAAwB;CAC9C;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,yBAAyB,CAAC;CACjC;AAED,MAAM,WAAW,yBAAyB;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,gBAAgB,CAAC;IACvC,WAAW,EAAE,0BAA0B,CAAC;IACxC,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,OAAO,CAAA;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,4BAA4B,CAAC,qBAAqB,CAAC;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,sCAAsC;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,2BAA2B,GAAG,mBAAmB,CAAC;IACjE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,kBAAkB,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,wBAAwB,CAAA;CACrC;AAED,UAAU,wBAAwB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,MAAM,oCAAoC,GAAG;IACjD,IAAI,EAAE,eAAe,CAAC;IACtB,UAAU,EAAE;QACV,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;CACH,CAAA;AAED,MAAM,MAAM,sBAAsB,GAC9B,oCAAoC,CAAA;AAExC,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IAEb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,SAAS,GACjB,qBAAqB,GACrB,mBAAmB,GACnB,oBAAoB,GACpB,uBAAuB,GACvB,oBAAoB,GACpB,sBAAsB,GACtB,uBAAuB,GACvB,sBAAsB,GACtB,qBAAqB,CAAA"}
@@ -1,8 +1,6 @@
1
1
  import type { UNVeryfiCredentials } from '../types/shared/veryfi.types';
2
+ import type { UNVeryfiImage } from './veryfiService.utils';
3
+ export type { UNVeryfiImage } from './veryfiService.utils';
2
4
  export declare const isVeryfiAvailable: () => boolean;
3
- export interface UNVeryfiImage {
4
- base64Img: string;
5
- isFront: boolean;
6
- }
7
5
  export declare const configureAndShowVeryfiCamera: (credentials: UNVeryfiCredentials, bankName: string | undefined, onImages: (images: UNVeryfiImage[]) => void, onError: (error: string) => void) => void;
8
6
  //# sourceMappingURL=veryfiService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"veryfiService.d.ts","sourceRoot":"","sources":["../../../../src/services/veryfiService.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAWxE,eAAO,MAAM,iBAAiB,QAAO,OAEpC,CAAC;AAEF,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CAClB;AAqBD,eAAO,MAAM,4BAA4B,gBAC1B,mBAAmB,YACtB,MAAM,GAAG,SAAS,qBACT,aAAa,EAAE,KAAK,IAAI,mBAC1B,MAAM,KAAK,IAAI,KAC/B,IAiGF,CAAC"}
1
+ {"version":3,"file":"veryfiService.d.ts","sourceRoot":"","sources":["../../../../src/services/veryfiService.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAExE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAW3D,eAAO,MAAM,iBAAiB,QAAO,OAEpC,CAAC;AA6BF,eAAO,MAAM,4BAA4B,gBAC1B,mBAAmB,YACtB,MAAM,GAAG,SAAS,qBACT,aAAa,EAAE,KAAK,IAAI,mBAC1B,MAAM,KAAK,IAAI,KAC/B,IAsJF,CAAC"}
@@ -0,0 +1,10 @@
1
+ export interface UNVeryfiImage {
2
+ base64Img: string;
3
+ isFront: boolean;
4
+ }
5
+ export declare const readJpegDimensions: (base64: string) => {
6
+ width: number;
7
+ height: number;
8
+ } | null;
9
+ export declare const labelSidesFromPages: (images: UNVeryfiImage[], pages: any) => UNVeryfiImage[] | null;
10
+ //# sourceMappingURL=veryfiService.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"veryfiService.utils.d.ts","sourceRoot":"","sources":["../../../../src/services/veryfiService.utils.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CAClB;AAID,eAAO,MAAM,kBAAkB,WAAY,MAAM,KAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAiCvF,CAAC;AAOF,eAAO,MAAM,mBAAmB,WAAY,aAAa,EAAE,SAAS,GAAG,KAAG,aAAa,EAAE,GAAG,IAuC3F,CAAC"}
@@ -1,6 +1,10 @@
1
1
  export type UNComponentsError = {
2
2
  errors: UNComponentsErrorData[];
3
3
  };
4
+ export type UNComponentsFlowError = {
5
+ title?: string;
6
+ message: string;
7
+ };
4
8
  export type UNComponentsErrorData = {
5
9
  status?: string;
6
10
  title: string;
@@ -1 +1 @@
1
- {"version":3,"file":"error.types.d.ts","sourceRoot":"","sources":["../../../../../src/types/shared/error.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,qBAAqB,EAAE,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,qBAAqB,CAAA;IAC5B,IAAI,CAAC,EAAE,sBAAsB,CAAC;IAC9B,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,UAAU,qBAAqB;IAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,oBAAY,sBAAsB;IAChC,gBAAgB,qBAAqB;IACrC,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;IACnC,SAAS,cAAc;IACvB,yBAAyB,8BAA8B;IACvD,gCAAgC,qCAAqC;IACrE,8BAA8B,mCAAmC;IACjE,sBAAsB,2BAA2B;IACjD,6BAA6B,kCAAkC;IAC/D,2BAA2B,gCAAgC;IAC3D,aAAa,kBAAkB;IAC/B,8BAA8B,mCAAmC;IACjE,eAAe,oBAAoB;IACnC,YAAY,iBAAiB;IAC7B,SAAS,cAAc;IACvB,cAAc,mBAAmB;IACjC,2BAA2B,gCAAgC;IAC3D,8BAA8B,mCAAmC;IACjE,aAAa,kBAAkB;CAChC"}
1
+ {"version":3,"file":"error.types.d.ts","sourceRoot":"","sources":["../../../../../src/types/shared/error.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,qBAAqB,EAAE,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,qBAAqB,CAAA;IAC5B,IAAI,CAAC,EAAE,sBAAsB,CAAC;IAC9B,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,UAAU,qBAAqB;IAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,oBAAY,sBAAsB;IAChC,gBAAgB,qBAAqB;IACrC,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;IACnC,SAAS,cAAc;IACvB,yBAAyB,8BAA8B;IACvD,gCAAgC,qCAAqC;IACrE,8BAA8B,mCAAmC;IACjE,sBAAsB,2BAA2B;IACjD,6BAA6B,kCAAkC;IAC/D,2BAA2B,gCAAgC;IAC3D,aAAa,kBAAkB;IAC/B,8BAA8B,mCAAmC;IACjE,eAAe,oBAAoB;IACnC,YAAY,iBAAiB;IAC7B,SAAS,cAAc;IACvB,cAAc,mBAAmB;IACjC,2BAA2B,gCAAgC;IAC3D,8BAA8B,mCAAmC;IACjE,aAAa,kBAAkB;CAChC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-unit-components",
3
- "version": "3.5.1",
3
+ "version": "3.5.3",
4
4
  "description": "Unit React Native components",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -7,7 +7,7 @@ import { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage
7
7
  import { RequestExternalSdkEvent, UnitComponentsMessage } from '../../messages/webMessages/unitComponentsMessages';
8
8
  import { getCheckDepositParams, getCheckDepositScript, injectUnitVeryfiResponse } from './UNCheckDepositComponent.utils';
9
9
  import { CheckMessage } from '../../messages/webMessages/checkMessage';
10
- import type { UNCheckDeposit, UNAccount, UNComponentsError, UNComponentsOnLoadResponse, UNComponentsOnLoadResponseData } from '../../types/shared';
10
+ import type { UNCheckDeposit, UNAccount, UNComponentsError, UNComponentsFlowError, UNComponentsOnLoadResponse, UNComponentsOnLoadResponseData } from '../../types/shared';
11
11
  import { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';
12
12
  import { PresentationMode, WebComponentType } from '../../types/internal/webComponent.types';
13
13
  import { withReduxStore } from '../../helpers/store/helpers';
@@ -26,6 +26,7 @@ export interface UNCheckDepositComponentProps {
26
26
  initialStageBackButton?: boolean;
27
27
  finalStageDoneButton?: boolean;
28
28
  onLoad?: (response: UNComponentsOnLoadResponse<UNAccount>) => void;
29
+ onError?: (error: UNComponentsFlowError) => void;
29
30
  onDepositCreated?: (checkData: UNCheckDeposit) => void;
30
31
  onRestartRequest?: (checkData: UNCheckDeposit) => void;
31
32
  onInitialStageBackButtonClicked?: () => void;
@@ -91,6 +92,9 @@ const UNCheckDepositComponent = (props: UNCheckDepositComponentProps) => {
91
92
  case CheckMessage.CHECK_DEPOSIT_RESTART_REQUEST:
92
93
  props.onRestartRequest && props.onRestartRequest(message.details as UNCheckDeposit);
93
94
  break;
95
+ case UnitComponentsMessage.UNIT_ON_ERROR:
96
+ props.onError && props.onError(message.details as UNComponentsFlowError);
97
+ break;
94
98
  case UnitComponentsMessage.UNIT_ON_LOAD:
95
99
  handleUnitOnLoad(message.details as UnitOnLoadResponseEvent);
96
100
  break;
@@ -1,4 +1,5 @@
1
1
  import { CheckMessage } from '../../messages/webMessages/checkMessage';
2
+ import { UnitComponentsMessage } from '../../messages/webMessages/unitComponentsMessages';
2
3
  import type { UNCheckDepositComponentProps } from './UNCheckDepositComponent';
3
4
  import { DISPATCH_VERYFI_RESPONSE, LISTENERS } from '../../scripts/html/bodyScript';
4
5
  import { isVeryfiAvailable, type UNVeryfiImage } from '../../services/veryfiService';
@@ -30,6 +31,11 @@ const CHECK_DEPOSIT_LISTENERS = {
30
31
  })
31
32
  });
32
33
  `,
34
+ onError: `
35
+ window.addEventListener("${UnitComponentsMessage.UNIT_ON_ERROR}", (e) => {
36
+ postMessageToSDK({ type: "${UnitComponentsMessage.UNIT_ON_ERROR}", details: e.detail })
37
+ });
38
+ `,
33
39
  restartRequest: `
34
40
  window.addEventListener("${CheckMessage.CHECK_DEPOSIT_RESTART_REQUEST}", (e) => {
35
41
  const response = e.detail
@@ -48,6 +54,7 @@ export const getCheckDepositScript = () => {
48
54
  ${LISTENERS.unitPaymentInitialStageBackButtonClicked}
49
55
  ${LISTENERS.unitPaymentFinalStageDoneButtonClicked}
50
56
  ${CHECK_DEPOSIT_LISTENERS.restartRequest}
57
+ ${CHECK_DEPOSIT_LISTENERS.onError}
51
58
  ${DISPATCH_VERYFI_RESPONSE}
52
59
  `;
53
60
  };
@@ -1,4 +1,5 @@
1
1
  import type { UnitOnLoadResponseEvent } from './onLoadMessage';
2
+ import type { UNComponentsFlowError } from '../../types/shared/error.types';
2
3
  import { BottomSheetNativePlaceType } from '../../types/internal/bottomSheet.types';
3
4
  import { WebComponentType } from '../../types/internal/webComponent.types';
4
5
 
@@ -8,6 +9,7 @@ export enum UnitComponentsMessage {
8
9
  UNIT_REQUEST_CLOSE_FLOW = 'unitRequestCloseFlow',
9
10
  UNIT_REQUEST_OPEN_LINK = 'unitRequestOpenLink',
10
11
  UNIT_ON_LOAD = 'unitOnLoad',
12
+ UNIT_ON_ERROR = 'unitOnError',
11
13
  UNIT_REQUEST_DOWNLOAD = 'unitRequestDownload',
12
14
  UNIT_REQUEST_EXTERNAL_SDK = 'unitRequestExternalSdk',
13
15
  UNIT_REQUEST_LEFT_TO_SPEND_DETAILS = 'unitRequestLeftToSpendDetails',
@@ -104,3 +106,4 @@ export type UnitEvent =
104
106
  | PlaidTokenCreatedEvent
105
107
  | RequestExternalSdkEvent
106
108
  | UnitWhiteLabelAppEvent
109
+ | UNComponentsFlowError