@jumio/websdk 0.6.1 → 0.6.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 (90) hide show
  1. package/LICENSE +3 -3
  2. package/README.md +17 -3
  3. package/assets/icons/error.svg +3 -0
  4. package/assets/icons/success.svg +3 -0
  5. package/assets/ml/dac.wasm +0 -0
  6. package/assets/ml/dac_simd.wasm +0 -0
  7. package/assets/style.css +1 -1
  8. package/index.html +2 -2
  9. package/index.js +799 -24
  10. package/index2.d.ts +1321 -2669
  11. package/js/da-system.CF4xYrOs.js +3311 -0
  12. package/js/i18n/{ar.DJCGXB2w.js → ar.G4YO_Y_p.js} +24 -4
  13. package/js/i18n/{az.COAR442z.js → az.-zT6np34.js} +24 -4
  14. package/js/i18n/{bg.BnAcaGp-.js → bg.DxM_GEeK.js} +24 -4
  15. package/js/i18n/{bn.D5TmwFpa.js → bn.CKeY4G7p.js} +24 -4
  16. package/js/i18n/{ca.BjwMAKvc.js → ca.BKTY9yUg.js} +24 -4
  17. package/js/i18n/{ceb.DVKMwSKX.js → ceb.JLohZjii.js} +24 -4
  18. package/js/i18n/{cs.D5cCPRuY.js → cs.BA2Vep8y.js} +24 -4
  19. package/js/i18n/{da.BuJNuhnR.js → da.B9agaK9h.js} +24 -4
  20. package/js/i18n/{de.rKIf4fAw.js → de.vUPfn2Oo.js} +24 -4
  21. package/js/i18n/{el.Bn--4b86.js → el.CZhNQ18R.js} +24 -4
  22. package/js/i18n/{en.D6Xcuaob.js → en.B9cSV95A.js} +24 -4
  23. package/js/i18n/{en_GB.uaf19-ht.js → en_GB.DjNAh_2o.js} +24 -4
  24. package/js/i18n/{es.Bh_iETUQ.js → es.Ch5DzQZa.js} +24 -4
  25. package/js/i18n/{es_MX.D2NQorYq.js → es_MX.DmW4rnyT.js} +24 -4
  26. package/js/i18n/{et.D2Q9r-3y.js → et.F6IvljwK.js} +24 -4
  27. package/js/i18n/{fi.CNjEK5fc.js → fi.CUS8RexX.js} +24 -4
  28. package/js/i18n/{fil.CLDV-3cS.js → fil.Z-e4hm0l.js} +24 -4
  29. package/js/i18n/{fr.CA8X8em9.js → fr.DwdzaTwF.js} +24 -4
  30. package/js/i18n/{fr_CA.CXGgnoAY.js → fr_CA.Bq8FNlJo.js} +24 -4
  31. package/js/i18n/{ga.C1hmAiav.js → ga.DBpKAZUR.js} +24 -4
  32. package/js/i18n/{he.-XKz2lD2.js → he.DMmA1ZqA.js} +24 -4
  33. package/js/i18n/{hi.C0KBwhQk.js → hi.Cy8wi17L.js} +24 -4
  34. package/js/i18n/{hr.uxoIGptt.js → hr.BZ6ug-jc.js} +24 -4
  35. package/js/i18n/{hu.BWv0c70l.js → hu.o-xDRGsO.js} +24 -4
  36. package/js/i18n/{hy.BXjLEn-o.js → hy.D32BUH4n.js} +24 -4
  37. package/js/i18n/{id.CAU6yYSa.js → id.C-UnIn3z.js} +24 -4
  38. package/js/i18n/{is.Dy4_ecmW.js → is.eMAflTw8.js} +24 -4
  39. package/js/i18n/{it.B3KUcD4q.js → it.CIBQ3ml4.js} +24 -4
  40. package/js/i18n/{ja.CaZYxC9B.js → ja.Bin9p7ZD.js} +24 -4
  41. package/js/i18n/{jv.CR72tAaT.js → jv.DSROGovC.js} +24 -4
  42. package/js/i18n/{ka_GE.Cr-1NYDP.js → ka_GE.CaM7IMJX.js} +24 -4
  43. package/js/i18n/{kk.Ca7tjmtN.js → kk.DcskzbbK.js} +24 -4
  44. package/js/i18n/{km_KH.5bzfX4fH.js → km_KH.DRNO5fkq.js} +24 -4
  45. package/js/i18n/{ko.BR7WjEVs.js → ko.DKRNCmSz.js} +24 -4
  46. package/js/i18n/{lt.DLxW84xt.js → lt.bPIia0iM.js} +24 -4
  47. package/js/i18n/{lv.CtzfObfK.js → lv.DIlk3g7N.js} +24 -4
  48. package/js/i18n/{ms.Bp0STOr5.js → ms.DEJX56Wa.js} +24 -4
  49. package/js/i18n/{my.-ro5sNON.js → my.DQY-gdZl.js} +24 -4
  50. package/js/i18n/{nl.D0LLWo_Y.js → nl.DqBWUrWI.js} +24 -4
  51. package/js/i18n/{no.BYKxbI4x.js → no.DIknVO0F.js} +24 -4
  52. package/js/i18n/{pl.DgKQ2UVD.js → pl.uacFwjGK.js} +24 -4
  53. package/js/i18n/{pt.BTA2Pv7x.js → pt.DnHAjNgx.js} +24 -4
  54. package/js/i18n/{pt_BR.BRF7M-ts.js → pt_BR.BzDKzZSl.js} +24 -4
  55. package/js/i18n/{ro.BPwxxMAK.js → ro.C_ugDPjB.js} +24 -4
  56. package/js/i18n/{ru.wspWsIPg.js → ru.CbHdcVyw.js} +24 -4
  57. package/js/i18n/{sk.CXAGCXtS.js → sk.DPjBeKJf.js} +24 -4
  58. package/js/i18n/{sl.DW87OtC8.js → sl.CXVM3eQd.js} +24 -4
  59. package/js/i18n/{sq.6JBP37Rr.js → sq.BwOb4h9N.js} +24 -4
  60. package/js/i18n/{sr_Cyrl.02dFN3jq.js → sr_Cyrl.BO2hYmw9.js} +24 -4
  61. package/js/i18n/{sr_Latn.BTAmz9Gv.js → sr_Latn.iMeB6lsy.js} +24 -4
  62. package/js/i18n/{sv.S9SZiw5h.js → sv.BElOZUsc.js} +24 -4
  63. package/js/i18n/{sw.VnsOTYda.js → sw.CzFrkmbC.js} +24 -4
  64. package/js/i18n/{th.BtdkMYDs.js → th.B8CnAYHf.js} +24 -4
  65. package/js/i18n/{tr.Bn9WaSgB.js → tr.CZbsef6a.js} +24 -4
  66. package/js/i18n/{uk.BWteiLoJ.js → uk.Di9VzU09.js} +24 -4
  67. package/js/i18n/{ur.Bvf95gqk.js → ur.F2L7rh71.js} +24 -4
  68. package/js/i18n/{uz.D8_cEsZg.js → uz.s6qLauh_.js} +25 -5
  69. package/js/i18n/{vi.BMi-BwuI.js → vi.vMJPCM9t.js} +24 -4
  70. package/js/i18n/{zh_CN.Dipv9Pqc.js → zh_CN.ConQ8v4P.js} +24 -4
  71. package/js/i18n/{zh_HK.DkyVCxyR.js → zh_HK.Ba4wmp5J.js} +24 -4
  72. package/js/logging/datadog.DrMNEV3y.js +10147 -0
  73. package/js/{loader.BMK4_g6C.js → pages/data.DhS_CSrV.js} +80 -3
  74. package/js/pages/document.CQ_B9GTj.js +1522 -0
  75. package/js/pages/facemap.C8DMARoY.js +3060 -0
  76. package/js/pages/id.CPQIHmLw.js +9485 -0
  77. package/js/pdfjs/{pdf-U_mH0bJO.js → pdf.U_mH0bJO.js} +1 -1
  78. package/js/pdfjs/{pdf.worker.min-DFxVranA.js → pdf.worker.DFxVranA.js} +1 -1
  79. package/js/runtime.BjZbWNSZ.js +47296 -0
  80. package/package.json +4 -4
  81. package/third-party-licenses.txt +0 -3546
  82. package/index2.js +0 -906
  83. package/js/BRAZILIAN_ID.BxztzOl2.js +0 -5
  84. package/js/assets_da_web_id_1_1_6.tar.B0wlC5WP.js +0 -5
  85. package/js/assets_da_web_liveness_1_1_6.tar.BMW6psZZ.js +0 -5
  86. package/js/dac.DkgyVAg0.js +0 -5
  87. package/js/dac_simd.CUDgtSoV.js +0 -5
  88. package/js/dd/datadogProfiler-5-Pwxhm7.js +0 -408
  89. package/js/dd/datadogRecorder-CexR-8pQ.js +0 -1218
  90. package/js/index.D9DhPHsY.js +0 -67358
@@ -0,0 +1,1522 @@
1
+ var mt = (e) => {
2
+ throw TypeError(e);
3
+ };
4
+ var Se = (e, t, a) => t.has(e) || mt("Cannot " + a);
5
+ var m = (e, t, a) => (Se(e, t, "read from private field"), a ? a.call(e) : t.get(e)), A = (e, t, a) => t.has(e) ? mt("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), X = (e, t, a, o) => (Se(e, t, "write to private field"), o ? o.call(e, a) : t.set(e, a), a), be = (e, t, a) => (Se(e, t, "access private method"), a);
6
+ import { x as n, y as Pt, z as Dt, A as Ft, D as Mt, F as je, G as Ma, H as _e, I as z, C as O, q as $, J as Ea, K as Ia, M as G, N as Et, O as Ua, P as c, Q as l, E as D, U as We, V as qe, W as M, X as Y, v as Q, Y as Ba, Z as Ta, _ as La, $ as $e, a0 as ne, k as Ne, S as Va, a1 as Oa, p as B, t as Aa, a2 as ja, i as Wa, a3 as It, a4 as se, a5 as Ut, o as R, a6 as E, a7 as qa, a8 as Na, a9 as za, aa as S, ab as Bt, ac as Tt, ad as Lt, ae as Vt, af as H, ag as Ha, ah as Ja, ai as ft, aj as gt, l as ze, ak as He, al as Ra, am as Ot, an as At, ao as jt, u as Wt, ap as Ga, aq as Ya, ar as Qa, as as Xa, at as Ka, au as Za, av as ei, aw as qt, ax as Nt, ay as zt, az as ti, aA as Ht, aB as ai, aC as ii, aD as Jt, aE as Rt, aF as Gt, B as oi, aG as K, aH as ni, aI as si, aJ as ri, aK as Yt, aL as li, aM as ci, aN as ke, aO as di, aP as ui, aQ as pi, aR as Je, aS as hi, aT as Z, aU as vt, aV as mi, aW as fi, aX as gi, aY as Re, aZ as vi, a_ as wt, a$ as wi, b0 as Ci } from "../runtime.BjZbWNSZ.js";
7
+ const yi = n.Object(
8
+ {
9
+ visible: n.Boolean(),
10
+ label: n.String()
11
+ },
12
+ { additionalProperties: !0 }
13
+ ), Si = n.Object(
14
+ {
15
+ visible: n.Boolean(),
16
+ modalTitleId: n.String(),
17
+ tips: n.Array(n.String(), { maxItems: 32 }),
18
+ secondaryAction: yi,
19
+ crossDevice: Pt
20
+ },
21
+ { additionalProperties: !0 }
22
+ ), bi = n.Object(
23
+ {
24
+ navigationButton: Dt,
25
+ captureHints: Si,
26
+ crossDevice: Pt,
27
+ captureButton: n.Object({ disabled: n.Boolean() }, { additionalProperties: !0 }),
28
+ staticMedia: n.Object(
29
+ {
30
+ visible: n.Boolean(),
31
+ label: n.String()
32
+ },
33
+ { additionalProperties: !0 }
34
+ )
35
+ },
36
+ { additionalProperties: !0 }
37
+ ), _i = (e) => typeof e == "object" && e !== null && !Array.isArray(e), Ct = (e) => typeof e == "function" ? e : () => {
38
+ }, De = () => ({
39
+ navigationButton: je({
40
+ ...z,
41
+ localeSelection: {
42
+ ...z.localeSelection,
43
+ locales: []
44
+ }
45
+ }).config,
46
+ captureHints: Mt({
47
+ ..._e,
48
+ tips: [],
49
+ secondaryAction: {
50
+ ..._e.secondaryAction
51
+ },
52
+ crossDevice: {
53
+ ..._e.crossDevice
54
+ }
55
+ }),
56
+ crossDevice: Ft({
57
+ ...Ma
58
+ }).config,
59
+ captureButton: {
60
+ disabled: !0,
61
+ onCapture: () => {
62
+ }
63
+ },
64
+ staticMedia: {
65
+ visible: !0,
66
+ label: ""
67
+ },
68
+ onHelp: () => {
69
+ }
70
+ });
71
+ De();
72
+ const yt = (e) => {
73
+ if (e === void 0)
74
+ return { config: De(), valid: !0 };
75
+ if (!_i(e) || !O(bi, e))
76
+ return { config: De(), valid: !1 };
77
+ const t = je(e.navigationButton), a = Ft(e.crossDevice), o = e, i = e.captureButton;
78
+ return {
79
+ config: {
80
+ navigationButton: t.config,
81
+ captureHints: Mt(e.captureHints),
82
+ crossDevice: a.config,
83
+ captureButton: {
84
+ disabled: i.disabled === !0,
85
+ onCapture: Ct(i.onCapture)
86
+ },
87
+ staticMedia: {
88
+ visible: e.staticMedia.visible,
89
+ label: e.staticMedia.label.slice(0, 512)
90
+ },
91
+ onHelp: Ct(o.onHelp)
92
+ },
93
+ valid: t.valid && a.valid
94
+ };
95
+ };
96
+ var $i = Object.defineProperty, ki = Object.getOwnPropertyDescriptor, Qt = (e) => {
97
+ throw TypeError(e);
98
+ }, Xt = (e, t, a, o) => {
99
+ for (var i = o > 1 ? void 0 : o ? ki(t, a) : t, s = e.length - 1, r; s >= 0; s--)
100
+ (r = e[s]) && (i = (o ? r(t, a, i) : r(i)) || i);
101
+ return o && i && $i(t, a, i), i;
102
+ }, Ge = (e, t, a) => t.has(e) || Qt("Cannot " + a), U = (e, t, a) => (Ge(e, t, "read from private field"), a ? a.call(e) : t.get(e)), j = (e, t, a) => t.has(e) ? Qt("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), St = (e, t, a, o) => (Ge(e, t, "write to private field"), t.set(e, a), a), ee = (e, t, a) => (Ge(e, t, "access private method"), a), W, te, I, Kt, Zt, ea, ta, Fe, we;
103
+ const bt = {
104
+ layoutType: Ua.CaptureScreen,
105
+ headerVisible: !0
106
+ };
107
+ let re = class extends $ {
108
+ constructor() {
109
+ super(...arguments), j(this, I), j(this, W, yt(void 0).config), j(this, te, !1), j(this, Fe, () => {
110
+ this.config.captureButton.onCapture();
111
+ }), j(this, we, () => {
112
+ this.config.onHelp();
113
+ });
114
+ }
115
+ get config() {
116
+ return U(this, W);
117
+ }
118
+ set config(e) {
119
+ const t = U(this, W), a = yt(e);
120
+ St(this, W, a.config), St(this, te, !a.valid), this.requestUpdate("config", t);
121
+ }
122
+ render() {
123
+ return U(this, te) ? l`
124
+ <x-app-container .config="${bt}">
125
+ <div slot="main" role="alert" aria-live="assertive" aria-atomic="true" data-qa-id="invalid-config">
126
+ ${c("Sorry, there was an unexpected error.", { id: "error.unexpected_error" })}
127
+ </div>
128
+ </x-app-container>
129
+ ` : l`
130
+ <x-app-container data-qa-id="document-capture-view" .config="${bt}">
131
+ <jumio-sdk-navigation-button-view
132
+ slot="top-left"
133
+ data-qa-id="navigation-button-view"
134
+ .config="${this.config.navigationButton}"
135
+ ></jumio-sdk-navigation-button-view>
136
+ <x-ds-color-scheme slot="top-middle" data-color-scheme="dark">
137
+ <x-ds-watermark></x-ds-watermark>
138
+ </x-ds-color-scheme>
139
+ ${ee(this, I, Zt).call(this)} ${ee(this, I, ea).call(this)}
140
+ <div slot="background" class="capture-media" data-qa-id="capture-media">
141
+ <slot name="live-media">${ee(this, I, Kt).call(this)}</slot>
142
+ </div>
143
+ <x-ds-capture-button
144
+ slot="capture-button"
145
+ data-qa-id="capture-button"
146
+ .config="${{
147
+ disabled: this.config.captureButton.disabled
148
+ }}"
149
+ @jcaptureclick="${U(this, Fe)}"
150
+ ></x-ds-capture-button>
151
+ <div slot="bottom-left" class="cross-device-container">
152
+ <jumio-sdk-cross-device-button-view
153
+ data-qa-id="cross-device-button-view"
154
+ .config="${this.config.crossDevice}"
155
+ ></jumio-sdk-cross-device-button-view>
156
+ </div>
157
+ <div class="overlay" slot="overlay" data-qa-id="capture-hints-overlay">
158
+ <jumio-sdk-capture-hints-view
159
+ data-qa-id="capture-hints-view"
160
+ .config="${{
161
+ ...this.config.captureHints,
162
+ secondaryAction: {
163
+ visible: !1,
164
+ label: "",
165
+ onAction: () => {
166
+ }
167
+ }
168
+ }}"
169
+ >
170
+ ${ee(this, I, ta).call(this)}
171
+ </jumio-sdk-capture-hints-view>
172
+ </div>
173
+ </x-app-container>
174
+ `;
175
+ }
176
+ };
177
+ W = /* @__PURE__ */ new WeakMap();
178
+ te = /* @__PURE__ */ new WeakMap();
179
+ I = /* @__PURE__ */ new WeakSet();
180
+ Kt = function() {
181
+ if (!this.config.staticMedia.visible)
182
+ return D;
183
+ const e = this.config.staticMedia.label || c("Starting camera…", { id: "camera.message.initializing_camera" });
184
+ return l`
185
+ <div class="static-media" data-qa-id="static-media-fallback" role="img" aria-label="${e}">
186
+ <span class="static-media__icon icon-camera-video" aria-hidden="true"></span>
187
+ <span>${e}</span>
188
+ </div>
189
+ `;
190
+ };
191
+ Zt = function() {
192
+ return l`
193
+ <x-ds-button
194
+ class="mobile-only"
195
+ slot="top-right"
196
+ data-qa-id="mobile-help-button"
197
+ data-size="${We.Medium}"
198
+ data-shape="${qe.Round}"
199
+ data-type="${M.Tertiary}"
200
+ data-padding="false"
201
+ data-aria-label="${c("Help", { id: "cta.help" })}"
202
+ @jclick="${U(this, we)}"
203
+ >
204
+ <span class="icon-help" aria-hidden="true"></span>
205
+ </x-ds-button>
206
+ `;
207
+ };
208
+ ea = function() {
209
+ return l`
210
+ <x-ds-button
211
+ class="desktop-only"
212
+ slot="top-right"
213
+ data-qa-id="desktop-help-button"
214
+ data-type="${M.Tertiary}"
215
+ @jclick="${U(this, we)}"
216
+ >
217
+ <span>${c("Help", { id: "cta.help" })}</span>
218
+ </x-ds-button>
219
+ `;
220
+ };
221
+ ta = function() {
222
+ const { secondaryAction: e } = this.config.captureHints;
223
+ return e.visible ? l`
224
+ <jumio-sdk-upload-button-view
225
+ slot="secondary-action-button"
226
+ data-qa-id="upload-button-view"
227
+ .config="${{
228
+ visible: !0,
229
+ fluid: !0,
230
+ type: M.Secondary,
231
+ size: We.Medium,
232
+ onUpload: e.onAction
233
+ }}"
234
+ ></jumio-sdk-upload-button-view>
235
+ ` : D;
236
+ };
237
+ Fe = /* @__PURE__ */ new WeakMap();
238
+ we = /* @__PURE__ */ new WeakMap();
239
+ re.styles = [
240
+ ...$.styles,
241
+ Ea(Ia),
242
+ G`
243
+ :host {
244
+ display: contents;
245
+ }
246
+
247
+ .capture-media {
248
+ position: relative;
249
+ width: 100%;
250
+ height: 100%;
251
+ overflow: hidden;
252
+ background: #101010;
253
+ }
254
+
255
+ .static-media {
256
+ display: flex;
257
+ box-sizing: border-box;
258
+ width: 100%;
259
+ height: 100%;
260
+ align-items: center;
261
+ justify-content: center;
262
+ flex-direction: column;
263
+ gap: 0.75em;
264
+ color: #fff;
265
+ background: radial-gradient(circle at center, #3a3a3a 0%, #101010 70%);
266
+ }
267
+
268
+ .static-media__icon {
269
+ font-size: 3rem;
270
+ }
271
+
272
+ ::slotted([slot='live-media']) {
273
+ display: block;
274
+ width: 100%;
275
+ height: 100%;
276
+ }
277
+
278
+ .cross-device-container {
279
+ display: flex;
280
+ align-items: flex-end;
281
+ height: 100%;
282
+ }
283
+
284
+ .mobile-only {
285
+ display: flex;
286
+ }
287
+
288
+ .desktop-only {
289
+ display: none;
290
+ }
291
+
292
+ @media only screen and (min-width: 40em) {
293
+ .mobile-only {
294
+ display: none;
295
+ }
296
+
297
+ .desktop-only {
298
+ display: flex;
299
+ }
300
+ }
301
+ `
302
+ ];
303
+ Xt([
304
+ Et({ attribute: !1 })
305
+ ], re.prototype, "config", 1);
306
+ re = Xt([
307
+ Y(),
308
+ Q("jumio-sdk-step-document-capture-view")
309
+ ], re);
310
+ const g = {
311
+ Missing: "missing",
312
+ NotStarted: "not-started",
313
+ Progress: "progress",
314
+ Success: "success",
315
+ Error: "error"
316
+ }, _ = {
317
+ NotStarted: "not-started",
318
+ Progress: "progress",
319
+ Success: "success",
320
+ Error: "error"
321
+ }, xi = n.Union([
322
+ n.Literal(g.Missing),
323
+ n.Literal(g.NotStarted),
324
+ n.Literal(g.Progress),
325
+ n.Literal(g.Success),
326
+ n.Literal(g.Error)
327
+ ]), Pi = n.Union([
328
+ n.Literal(_.NotStarted),
329
+ n.Literal(_.Progress),
330
+ n.Literal(_.Success),
331
+ n.Literal(_.Error)
332
+ ]), Di = n.Object(
333
+ {
334
+ state: Pi,
335
+ src: n.Optional(n.String()),
336
+ width: n.Optional(n.Number()),
337
+ height: n.Optional(n.Number())
338
+ },
339
+ { additionalProperties: !1 }
340
+ ), Fi = n.Object(
341
+ {
342
+ id: n.String(),
343
+ fileName: n.String(),
344
+ state: xi,
345
+ thumbnail: n.Optional(Di),
346
+ processingProgress: n.Optional(n.Number({ minimum: 0, maximum: 100 }))
347
+ },
348
+ { additionalProperties: !1 }
349
+ ), Mi = n.Object(
350
+ {
351
+ label: n.String(),
352
+ value: n.Union([n.Literal("new"), n.Literal("old")]),
353
+ selected: n.Boolean()
354
+ },
355
+ { additionalProperties: !1 }
356
+ ), Ei = n.Object(
357
+ {
358
+ title: n.String(),
359
+ instructions: n.String(),
360
+ accept: n.Optional(n.String()),
361
+ mobile: n.Boolean(),
362
+ files: n.Array(Fi),
363
+ continueEnabled: n.Boolean(),
364
+ imageViewerIndex: n.Number(),
365
+ uploadErrorVisible: n.Boolean(),
366
+ pdfOptions: n.Array(Mi),
367
+ navigationButton: Dt,
368
+ logotype: Ba
369
+ },
370
+ { additionalProperties: !0 }
371
+ ), k = () => {
372
+ }, y = {
373
+ onContinue: k,
374
+ onFileRemove: k,
375
+ onFilePreview: k,
376
+ onImageViewerClose: k,
377
+ onImageViewerRemove: k,
378
+ onUploadErrorDismiss: k,
379
+ onPdfOptionSelect: k,
380
+ onPdfConfirm: k,
381
+ onPdfCancel: k
382
+ }, Ii = () => ({
383
+ ...z,
384
+ localeSelection: {
385
+ ...z.localeSelection,
386
+ locales: z.localeSelection.locales.map(({ keys: e, label: t }) => ({
387
+ keys: [...e],
388
+ label: t
389
+ }))
390
+ }
391
+ }), q = () => ({
392
+ title: "",
393
+ instructions: "",
394
+ accept: "",
395
+ mobile: !1,
396
+ files: [],
397
+ continueEnabled: !1,
398
+ imageViewerIndex: -1,
399
+ uploadErrorVisible: !1,
400
+ pdfOptions: [],
401
+ navigationButton: Ii(),
402
+ logotype: { ...Ta },
403
+ ...y
404
+ });
405
+ q();
406
+ const Ui = (e) => {
407
+ const t = e?.trim();
408
+ if (!t)
409
+ return { valid: !0 };
410
+ if (t.toLowerCase().startsWith("data:"))
411
+ return /^data:image\/[a-z0-9.+-]+(?:;[^,]*)?,/iu.test(t) ? { src: t, valid: !0 } : { valid: !1 };
412
+ try {
413
+ const a = new URL(t);
414
+ return (a.protocol === "http:" || a.protocol === "https:") && a.hostname ? { src: a.href, valid: !0 } : { valid: !1 };
415
+ } catch {
416
+ return { valid: !1 };
417
+ }
418
+ }, Bi = (e) => {
419
+ const t = Ui(e.thumbnail?.src);
420
+ return {
421
+ file: {
422
+ id: e.id,
423
+ fileName: e.fileName,
424
+ state: e.state,
425
+ ...e.thumbnail === void 0 ? {} : {
426
+ thumbnail: {
427
+ state: e.thumbnail.state,
428
+ ...t.src === void 0 ? {} : { src: t.src },
429
+ ...e.thumbnail.width === void 0 ? {} : { width: e.thumbnail.width },
430
+ ...e.thumbnail.height === void 0 ? {} : { height: e.thumbnail.height }
431
+ }
432
+ },
433
+ ...e.processingProgress === void 0 ? {} : { processingProgress: Math.min(100, Math.max(0, e.processingProgress)) }
434
+ },
435
+ valid: t.valid
436
+ };
437
+ }, x = (e, t) => typeof e == "function" ? e : t, _t = (e) => {
438
+ if (e === void 0)
439
+ return { config: q(), valid: !0 };
440
+ if (!O(Ei, e))
441
+ return { config: q(), valid: !1 };
442
+ const t = je(e.navigationButton), a = La(e.logotype);
443
+ if (!t.valid || !a.valid)
444
+ return { config: q(), valid: !1 };
445
+ const o = e, i = e.files.map((p) => Bi(p));
446
+ if (i.some(({ valid: p }) => !p))
447
+ return { config: q(), valid: !1 };
448
+ const s = /* @__PURE__ */ new Set(), r = i.flatMap(({ file: p }) => s.has(p.id) ? [] : (s.add(p.id), [p]));
449
+ return {
450
+ config: {
451
+ title: e.title,
452
+ instructions: e.instructions,
453
+ mobile: e.mobile,
454
+ accept: e.accept,
455
+ files: r,
456
+ continueEnabled: e.continueEnabled && r.length > 0,
457
+ imageViewerIndex: r.length === 0 ? -1 : Math.min(r.length - 1, Math.max(-1, Math.trunc(e.imageViewerIndex))),
458
+ uploadErrorVisible: e.uploadErrorVisible,
459
+ pdfOptions: e.pdfOptions.map((p) => ({
460
+ label: p.label,
461
+ value: p.value,
462
+ selected: p.selected
463
+ })),
464
+ navigationButton: t.config,
465
+ logotype: a.config,
466
+ onContinue: x(o.onContinue, y.onContinue),
467
+ onFileRemove: x(o.onFileRemove, y.onFileRemove),
468
+ onFilePreview: x(o.onFilePreview, y.onFilePreview),
469
+ onImageViewerClose: x(
470
+ o.onImageViewerClose,
471
+ y.onImageViewerClose
472
+ ),
473
+ onImageViewerRemove: x(
474
+ o.onImageViewerRemove,
475
+ y.onImageViewerRemove
476
+ ),
477
+ onUploadErrorDismiss: x(
478
+ o.onUploadErrorDismiss,
479
+ y.onUploadErrorDismiss
480
+ ),
481
+ onPdfOptionSelect: x(o.onPdfOptionSelect, y.onPdfOptionSelect),
482
+ onPdfConfirm: x(o.onPdfConfirm, y.onPdfConfirm),
483
+ onPdfCancel: x(o.onPdfCancel, y.onPdfCancel)
484
+ },
485
+ valid: !0
486
+ };
487
+ };
488
+ var Ti = Object.defineProperty, Li = Object.getOwnPropertyDescriptor, aa = (e) => {
489
+ throw TypeError(e);
490
+ }, ia = (e, t, a, o) => {
491
+ for (var i = o > 1 ? void 0 : o ? Li(t, a) : t, s = e.length - 1, r; s >= 0; s--)
492
+ (r = e[s]) && (i = (o ? r(t, a, i) : r(i)) || i);
493
+ return o && i && Ti(t, a, i), i;
494
+ }, Ye = (e, t, a) => t.has(e) || aa("Cannot " + a), xe = (e, t, a) => (Ye(e, t, "read from private field"), a ? a.call(e) : t.get(e)), Pe = (e, t, a) => t.has(e) ? aa("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), $t = (e, t, a, o) => (Ye(e, t, "write to private field"), t.set(e, a), a), b = (e, t, a) => (Ye(e, t, "access private method"), a), N, ae, f, oa, na, sa, ra, la, ca, da, ua, Qe;
495
+ let le = class extends $ {
496
+ constructor() {
497
+ super(...arguments), Pe(this, f), Pe(this, N, _t(void 0).config), Pe(this, ae, !1);
498
+ }
499
+ get config() {
500
+ return xe(this, N);
501
+ }
502
+ set config(e) {
503
+ const t = xe(this, N), a = _t(e);
504
+ $t(this, N, a.config), $t(this, ae, !a.valid), this.requestUpdate("config", t);
505
+ }
506
+ render() {
507
+ return xe(this, ae) ? l`
508
+ <x-app-container data-qa-id="document-upload-view">
509
+ <div slot="main" role="alert" aria-live="assertive" aria-atomic="true" data-qa-id="invalid-config">
510
+ ${c("Sorry, there was an unexpected error.", { id: "error.unexpected_error" })}
511
+ </div>
512
+ </x-app-container>
513
+ ` : l`
514
+ <x-app-container data-qa-id="document-upload-view">
515
+ ${$e(
516
+ "jumio-document-upload-backward-button",
517
+ l`
518
+ <jumio-sdk-navigation-button-view
519
+ slot="top-left"
520
+ data-qa-id="navigation-button-view"
521
+ .config="${this.config.navigationButton}"
522
+ ></jumio-sdk-navigation-button-view>
523
+ `
524
+ )}
525
+ <jumio-sdk-logotype-view
526
+ slot="top-middle"
527
+ data-qa-id="logotype-view"
528
+ .config="${this.config.logotype}"
529
+ ></jumio-sdk-logotype-view>
530
+ <div slot="main" class="main">
531
+ ${$e("jumio-document-upload-before")}
532
+ <div class="step-document-upload">
533
+ <h1 data-qa-id="upload-title" tabindex="-1" class="title no-outline">${this.config.title}</h1>
534
+ <p class="upload-instructions">${this.config.instructions}</p>
535
+ ${this.config.mobile && this.config.files.length === 0 ? b(this, f, ra).call(this) : b(this, f, oa).call(this)}
536
+ <div class="step-document-upload-footer ${this.config.files.length === 0 ? "no-pages" : ""}">
537
+ ${b(this, f, na).call(this)}
538
+ <span></span>
539
+ <x-ds-button
540
+ data-qa-id="continue-button"
541
+ data-disabled="${!this.config.continueEnabled}"
542
+ data-fluid="true"
543
+ @jclick="${this.config.onContinue}"
544
+ >
545
+ ${c("Continue", { id: "cta.continue" })}
546
+ </x-ds-button>
547
+ </div>
548
+ ${$e("jumio-document-upload-after")}
549
+ </div>
550
+ </div>
551
+ ${b(this, f, la).call(this)} ${b(this, f, ca).call(this)} ${b(this, f, da).call(this)}
552
+ </x-app-container>
553
+ `;
554
+ }
555
+ };
556
+ N = /* @__PURE__ */ new WeakMap();
557
+ ae = /* @__PURE__ */ new WeakMap();
558
+ f = /* @__PURE__ */ new WeakSet();
559
+ oa = function() {
560
+ const { accept: e, files: t, onFilePreview: a, onFileRemove: o } = this.config;
561
+ return l`
562
+ <div class="upload-box-container">
563
+ <x-file-multi-upload class="upload-box" data-qa-id="file-multi-upload" data-file-input-accept="${e}">
564
+ ${t.map(
565
+ (i, s) => l`
566
+ <x-file-picker-item
567
+ slot="file"
568
+ data-qa-entry-id="${i.id}"
569
+ data-delete-aria-label="${i.fileName ? `${c("Delete", { id: "cta.delete" })}: ${i.fileName}` : c("Delete", { id: "cta.delete" })}"
570
+ .file="${b(this, f, ua).call(this, i)}"
571
+ @dropimagerequest="${() => {
572
+ o(i.id);
573
+ }}"
574
+ @previewimagerequest="${() => {
575
+ a(s);
576
+ }}"
577
+ >
578
+ ${i.processingProgress === void 0 ? D : l`
579
+ <x-ds-circular-progress-indicator
580
+ data-qa-id="docv-processing"
581
+ data-qa-entry-id="${i.id}"
582
+ .config="${{
583
+ size: 75,
584
+ progress: i.processingProgress
585
+ }}"
586
+ class="thumbnail-progress"
587
+ slot="thumbnail-progress"
588
+ ></x-ds-circular-progress-indicator>
589
+ `}
590
+ </x-file-picker-item>
591
+ `
592
+ )}
593
+ ${t.length > 0 ? b(this, f, sa).call(this) : D}
594
+ </x-file-multi-upload>
595
+ </div>
596
+ `;
597
+ };
598
+ na = function() {
599
+ const e = this.config.files.length, t = e === 1 ? c("1 page uploaded", { id: "dv.preview.page1" }) : ne(
600
+ c("{{pageCount}} pages uploaded", {
601
+ id: "dv.preview.pages"
602
+ }),
603
+ { interpolate: /{{([\s\S]+?)}}/g }
604
+ )({ pageCount: e });
605
+ return l`<p data-qa-id="paging">${t}</p>`;
606
+ };
607
+ sa = function() {
608
+ const { accept: e, mobile: t } = this.config, a = b(this, f, Qe).call(this, e);
609
+ return l`
610
+ <x-file-picker-add-file
611
+ slot="file-add-inline"
612
+ data-qa-id="choose-file-inline"
613
+ .captureButton="${t && !a}"
614
+ ></x-file-picker-add-file>
615
+ `;
616
+ };
617
+ ra = function() {
618
+ const { accept: e } = this.config, t = b(this, f, Qe).call(this, e) ? l`
619
+ <x-file-empty-list-placeholder
620
+ slot="empty-list-placeholder"
621
+ data-mobile="${!0}"
622
+ ></x-file-empty-list-placeholder>
623
+ ` : l`
624
+ <x-file-picker-add-file
625
+ slot="empty-list-placeholder"
626
+ data-qa-id="mobile-empty-add-file"
627
+ .emptyStateButton="${!0}"
628
+ .captureButton="${!0}"
629
+ ></x-file-picker-add-file>
630
+ `;
631
+ return l`
632
+ <x-file-multi-upload data-qa-id="mobile-empty-file-multi-upload" data-file-input-accept="${e}">
633
+ ${t}
634
+ </x-file-multi-upload>
635
+ `;
636
+ };
637
+ la = function() {
638
+ return this.config.imageViewerIndex === -1 ? D : l`
639
+ <div slot="overlay" class="overlay">
640
+ <x-ds-image-viewer
641
+ data-index="${this.config.imageViewerIndex}"
642
+ @imageviewertoggle="${this.config.onImageViewerClose}"
643
+ @imageviewerremove="${(e) => {
644
+ this.config.onImageViewerRemove(e.detail.name);
645
+ }}"
646
+ >
647
+ ${this.config.files.map(
648
+ (e) => e.state === g.Success && e.thumbnail?.state === _.Success && e.thumbnail.src ? l`
649
+ <img
650
+ slot="image"
651
+ src="${e.thumbnail.src}"
652
+ width="${e.thumbnail.width ?? 0}"
653
+ height="${e.thumbnail.height ?? 0}"
654
+ alt="${e.fileName}"
655
+ data-dd-privacy="hidden"
656
+ data-id="${e.id}"
657
+ />
658
+ ` : D
659
+ )}
660
+ </x-ds-image-viewer>
661
+ </div>
662
+ `;
663
+ };
664
+ ca = function() {
665
+ return this.config.uploadErrorVisible ? l`
666
+ <x-ds-modal slot="overlay" class="overlay">
667
+ <x-ds-error-message
668
+ data-qa-id="error-message"
669
+ data-title="${c("Upload error", { id: "error.file_upload_error.title" })}"
670
+ data-message="${c("Sorry, this file type is not supported.", {
671
+ id: "error.file_type_not_supported.description"
672
+ })}"
673
+ data-show-date="false"
674
+ >
675
+ <x-ds-button slot="button" data-fluid="true" @jclick="${this.config.onUploadErrorDismiss}"
676
+ >${c("Try again", {
677
+ id: "cta.try_again"
678
+ })}
679
+ </x-ds-button>
680
+ </x-ds-error-message>
681
+ </x-ds-modal>
682
+ ` : D;
683
+ };
684
+ da = function() {
685
+ return this.config.pdfOptions.length > 0 ? l`
686
+ <x-ds-modal slot="overlay" class="overlay" data-qa-id="replace-pdf-file-dialog">
687
+ <div>
688
+ <h1>${c("Select a PDF file", { id: "dv.instruction.select_pdf_file" })}</h1>
689
+ <p>
690
+ ${c("Only one PDF file can be uploaded. Please select one.", {
691
+ id: "dv.instruction.only_one_pdf_file_can_be_uploaded"
692
+ })}
693
+ </p>
694
+ <div class="pdf-selector-content">
695
+ <x-ds-radio-list
696
+ .items="${this.config.pdfOptions}"
697
+ @radiolistselection="${(e) => {
698
+ (e.detail.name === "new" || e.detail.name === "old") && this.config.onPdfOptionSelect(e.detail.name), this.requestUpdate();
699
+ }}"
700
+ ></x-ds-radio-list>
701
+ <div class="pdf-selector-buttons">
702
+ <x-ds-button
703
+ data-type="${M.Primary}"
704
+ data-fluid="true"
705
+ data-disabled="${!this.config.pdfOptions.some((e) => e.selected)}"
706
+ data-qa-id="select-button"
707
+ @jclick="${this.config.onPdfConfirm}"
708
+ >
709
+ ${c("Select", { id: "cta.select" })}
710
+ </x-ds-button>
711
+ <x-ds-button
712
+ data-type="${M.Secondary}"
713
+ data-fluid="true"
714
+ data-qa-id="close-button"
715
+ @jclick="${this.config.onPdfCancel}"
716
+ >
717
+ ${c("Close", { id: "cta.close" })}
718
+ </x-ds-button>
719
+ </div>
720
+ </div>
721
+ </div>
722
+ </x-ds-modal>
723
+ ` : D;
724
+ };
725
+ ua = function(e) {
726
+ const t = e.state === g.Missing ? void 0 : {
727
+ id: e.id,
728
+ state: e.state
729
+ }, a = e.thumbnail ? {
730
+ id: e.id,
731
+ state: e.thumbnail.state,
732
+ ...e.thumbnail.state === _.Success && e.thumbnail.src ? {
733
+ thumbnail: {
734
+ base64: e.thumbnail.src,
735
+ width: e.thumbnail.width ?? 0,
736
+ height: e.thumbnail.height ?? 0
737
+ }
738
+ } : {}
739
+ } : void 0;
740
+ return {
741
+ ...t === void 0 ? {} : { upload: t },
742
+ ...a === void 0 ? {} : { thumbnail: a }
743
+ };
744
+ };
745
+ Qe = function(e = "") {
746
+ if (!e.length)
747
+ return !1;
748
+ const t = e.split(",");
749
+ return t.length === 1 && t[0] === "application/pdf";
750
+ };
751
+ le.styles = [
752
+ ...$.styles,
753
+ G`
754
+ :host {
755
+ display: contents;
756
+ }
757
+
758
+ .main {
759
+ height: 100%;
760
+ }
761
+
762
+ .step-document-upload {
763
+ display: flex;
764
+ flex-direction: column;
765
+ height: 100%;
766
+ max-width: 64em;
767
+ margin: 0 auto;
768
+ row-gap: 1em;
769
+ }
770
+
771
+ .upload-box-container {
772
+ position: relative;
773
+ flex: 1 0 auto;
774
+ }
775
+
776
+ .upload-box {
777
+ position: absolute;
778
+ inset: 0;
779
+ }
780
+
781
+ .upload-instructions {
782
+ margin: 0;
783
+
784
+ @media (max-height: 40em) {
785
+ display: none;
786
+ }
787
+ }
788
+
789
+ .step-document-upload-footer {
790
+ display: grid;
791
+ grid-template-columns: repeat(3, minmax(0, 1fr));
792
+
793
+ @media (max-width: 32em) {
794
+ display: flex;
795
+ flex-direction: column;
796
+ align-items: center;
797
+ margin: 0;
798
+ }
799
+ }
800
+
801
+ .overlay {
802
+ pointer-events: unset;
803
+ }
804
+
805
+ .pdf-selector-content {
806
+ display: flex;
807
+ flex-direction: column;
808
+ margin: 1.5em 0;
809
+ gap: 1.5em;
810
+ }
811
+
812
+ .pdf-selector-buttons {
813
+ display: flex;
814
+ flex-direction: column;
815
+ gap: 1em;
816
+ }
817
+
818
+ .no-pages {
819
+ @media (max-width: 32em) {
820
+ display: none;
821
+ }
822
+ }
823
+ `
824
+ ];
825
+ ia([
826
+ Et({ attribute: !1 })
827
+ ], le.prototype, "config", 1);
828
+ le = ia([
829
+ Y(),
830
+ Q("jumio-sdk-step-document-upload-view")
831
+ ], le);
832
+ class Vi {
833
+ #e;
834
+ constructor(t) {
835
+ this.workflowController = Ne(), this.stepController = this.getStepController(), this.#e = new Va(), t.addController(this);
836
+ }
837
+ hostConnected() {
838
+ Oa(B.Document).pipe(
839
+ Aa((t) => {
840
+ ja({
841
+ timeoutMs: t
842
+ });
843
+ }),
844
+ Wa(this.#e)
845
+ ).subscribe();
846
+ }
847
+ hostDisconnected() {
848
+ this.#e.next();
849
+ }
850
+ async upload(t) {
851
+ const [a] = t.uploadFilesMetadata?.files ?? [];
852
+ return It({
853
+ id: a.multipartName,
854
+ category: B.Document,
855
+ state: E.NotStarted,
856
+ blob: a.file,
857
+ credentialId: R(),
858
+ source: Ut.Camera,
859
+ classifier: se.Document,
860
+ batchBytesToUpload: a.file.size,
861
+ batchBytesUploaded: 0,
862
+ batchUploadProgress: 0
863
+ }), this.stepController.uploadDataAsync(t);
864
+ }
865
+ getStepController() {
866
+ return this.workflowController.getControllerById(B.Document);
867
+ }
868
+ }
869
+ var Oi = Object.defineProperty, Ai = Object.getOwnPropertyDescriptor, pa = (e) => {
870
+ throw TypeError(e);
871
+ }, ha = (e, t, a, o) => {
872
+ for (var i = o > 1 ? void 0 : o ? Ai(t, a) : t, s = e.length - 1, r; s >= 0; s--)
873
+ (r = e[s]) && (i = (o ? r(t, a, i) : r(i)) || i);
874
+ return o && i && Oi(t, a, i), i;
875
+ }, Xe = (e, t, a) => t.has(e) || pa("Cannot " + a), P = (e, t, a) => (Xe(e, t, "read from private field"), a ? a.call(e) : t.get(e)), C = (e, t, a) => t.has(e) ? pa("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), Ke = (e, t, a, o) => (Xe(e, t, "write to private field"), t.set(e, a), a), ce = (e, t, a) => (Xe(e, t, "access private method"), a), Ze, et, tt, at, it, ot, de, ue, pe, T, ma, fa, Me;
876
+ let he = class extends $ {
877
+ constructor() {
878
+ super(), C(this, T), this.cameraRef = qa(), C(this, Ze, new Na(this)), C(this, et, new za(this)), C(this, tt, ei({
879
+ width: 1920,
880
+ height: 1080,
881
+ aspectRatio: 16 / 9
882
+ })), C(this, at, new S(this, Bt())), C(this, it, new S(this, Tt())), C(this, ot, Lt(
883
+ this,
884
+ Vt(),
885
+ !0
886
+ )), C(this, de), C(this, ue), C(this, pe), this.logImageCapturedEvent = async () => {
887
+ const e = await H(Ha(), {
888
+ defaultValue: void 0
889
+ });
890
+ e && Ja(this, {
891
+ metadata: {
892
+ ...e,
893
+ cls: gt(),
894
+ clsm: ft()
895
+ }
896
+ });
897
+ }, this.uploadImage = async (e) => {
898
+ const t = ze(), a = He(R()), o = Ra();
899
+ Ot("MANUAL_CAPTURE"), await this.logImageCapturedEvent(), this.componentController.upload({
900
+ uploadFilesMetadata: {
901
+ files: [
902
+ {
903
+ multipartName: Wt(),
904
+ fileType: jt[e.detail.blob.type],
905
+ uploadType: se.Document,
906
+ usabilityExpected: !1,
907
+ file: e.detail.blob,
908
+ captureMethod: At.ManualCapture,
909
+ riskSignals: {
910
+ deviceId: o?.deviceId ?? "",
911
+ deviceLabel: o?.label ?? "",
912
+ groupId: o?.groupId ?? ""
913
+ },
914
+ cls: gt(),
915
+ clsm: ft()
916
+ }
917
+ ]
918
+ }
919
+ }).catch(Ga), t.send({
920
+ type: a.UploadScreen
921
+ });
922
+ }, this.componentController = new Vi(this), Ke(this, de, new S(this, Ya()));
923
+ }
924
+ connectedCallback() {
925
+ super.connectedCallback(), Qa(
926
+ new Xa({
927
+ constraints: {
928
+ video: {
929
+ ...Za(),
930
+ facingMode: {
931
+ ideal: Ka.Environment
932
+ }
933
+ },
934
+ audio: !1
935
+ }
936
+ })
937
+ );
938
+ }
939
+ render() {
940
+ return l`
941
+ <jumio-sdk-step-document-capture-view data-qa-id="document-capture-view" .config="${ce(this, T, ma).call(this)}">
942
+ ${ce(this, T, fa).call(this)}
943
+ </jumio-sdk-step-document-capture-view>
944
+ `;
945
+ }
946
+ };
947
+ Ze = /* @__PURE__ */ new WeakMap();
948
+ et = /* @__PURE__ */ new WeakMap();
949
+ tt = /* @__PURE__ */ new WeakMap();
950
+ at = /* @__PURE__ */ new WeakMap();
951
+ it = /* @__PURE__ */ new WeakMap();
952
+ ot = /* @__PURE__ */ new WeakMap();
953
+ de = /* @__PURE__ */ new WeakMap();
954
+ ue = /* @__PURE__ */ new WeakMap();
955
+ pe = /* @__PURE__ */ new WeakMap();
956
+ T = /* @__PURE__ */ new WeakSet();
957
+ ma = function() {
958
+ const e = P(this, at).value, t = qt({
959
+ hasHistoryItems: this.navigationService?.hasHistoryItems() ?? !1,
960
+ isCrossDeviceScreen: e?.activeScreen === zt.CrossDevice,
961
+ forceCrossDeviceDisplay: Nt()
962
+ }), a = t ? void 0 : ce(this, T, Me).call(this);
963
+ return {
964
+ navigationButton: {
965
+ hasBackNavigation: t,
966
+ showBackButton: P(this, it).value ?? !0,
967
+ type: M.Tertiary,
968
+ shape: qe.Round,
969
+ localeSelection: {
970
+ visible: !t && P(this, ot).value,
971
+ locales: a?.getLocales() ?? [],
972
+ selectedLocale: P(this, pe) ?? a?.getSelectedLocale(),
973
+ selectType: Ht.Default,
974
+ onLocaleSelect: (o) => {
975
+ Ke(this, pe, o), ce(this, T, Me).call(this).updateLocale(o), this.requestUpdate();
976
+ }
977
+ },
978
+ onBack: () => {
979
+ this.navigationService?.back();
980
+ }
981
+ },
982
+ captureHints: P(this, Ze).createViewConfig(),
983
+ crossDevice: {
984
+ visible: P(this, et).value,
985
+ fluid: !1,
986
+ type: M.Tertiary,
987
+ size: We.Medium,
988
+ onCrossDeviceStart: () => {
989
+ ai(this);
990
+ }
991
+ },
992
+ captureButton: {
993
+ disabled: !P(this, de).value,
994
+ onCapture: () => {
995
+ this.cameraRef.value?.captureImage();
996
+ }
997
+ },
998
+ staticMedia: {
999
+ visible: !0,
1000
+ label: c("Camera preview", { id: "camera.message.initializing_camera" })
1001
+ },
1002
+ onHelp: ti
1003
+ };
1004
+ };
1005
+ fa = function() {
1006
+ return l`
1007
+ <x-camera
1008
+ ${ii(this.cameraRef)}
1009
+ slot="live-media"
1010
+ class="camera"
1011
+ .applyConstraintCallback="${P(this, tt)}"
1012
+ @imagecaptured="${(e) => this.uploadImage(e)}"
1013
+ >
1014
+ <jumio-sdk-camera-permissions-screen></jumio-sdk-camera-permissions-screen>
1015
+ </x-camera>
1016
+ `;
1017
+ };
1018
+ Me = function() {
1019
+ return P(this, ue) ?? Ke(this, ue, new Jt(this));
1020
+ };
1021
+ he.styles = [
1022
+ ...$.styles,
1023
+ G`
1024
+ :host {
1025
+ display: contents;
1026
+ }
1027
+ `
1028
+ ];
1029
+ ha([
1030
+ Rt({ context: Gt, subscribe: !0 })
1031
+ ], he.prototype, "navigationService", 2);
1032
+ he = ha([
1033
+ Y(),
1034
+ Q("jumio-sdk-step-document-capture")
1035
+ ], he);
1036
+ var ve, F, w, V, ga, va;
1037
+ const J = class J {
1038
+ constructor(t) {
1039
+ A(this, V);
1040
+ A(this, ve);
1041
+ A(this, F);
1042
+ A(this, w);
1043
+ X(this, ve, t), X(this, F, Ne()), X(this, w, be(this, V, va).call(this)), this.document$ = m(this, w).selectDocument$(), this.maxFileUploadSize$ = m(this, w).selectMaxFileUploadSize$(), this.pdfFiles$ = new oi(void 0);
1044
+ }
1045
+ hostConnected() {
1046
+ }
1047
+ async uploadFile(t) {
1048
+ K(t) && this.dropFilesByCriteria((i) => {
1049
+ const s = i.upload?.blob;
1050
+ return !!(s && K(s));
1051
+ });
1052
+ const a = Wt(), o = {
1053
+ id: a,
1054
+ category: B.Id,
1055
+ state: E.NotStarted,
1056
+ blob: t,
1057
+ credentialId: R(),
1058
+ source: Ut.Upload,
1059
+ classifier: se.Document,
1060
+ batchBytesToUpload: t.size,
1061
+ batchUploadProgress: 0,
1062
+ batchBytesUploaded: 0
1063
+ };
1064
+ It(o);
1065
+ try {
1066
+ return await m(this, w).uploadDataAsync({
1067
+ uploadFilesMetadata: {
1068
+ files: [
1069
+ {
1070
+ multipartName: a,
1071
+ captureMethod: At.Upload,
1072
+ fileType: jt[t.type],
1073
+ uploadType: se.Document,
1074
+ usabilityExpected: !1,
1075
+ file: t
1076
+ }
1077
+ ]
1078
+ }
1079
+ });
1080
+ } catch (i) {
1081
+ throw this.dropFilesByCriteria((s) => s.upload?.blob === t && s.upload?.state === E.Error), i;
1082
+ }
1083
+ }
1084
+ softDeletePdfPage(t) {
1085
+ m(this, w).deletePart(t);
1086
+ }
1087
+ async confirmSelection() {
1088
+ await H(m(this, w).updateMetadataWithPageSelection$());
1089
+ const t = ze(), a = He(R());
1090
+ t.send({
1091
+ type: a.Finish
1092
+ });
1093
+ }
1094
+ selectUploadedPdfFile() {
1095
+ return H(m(this, w).selectUploadedPdfFile$());
1096
+ }
1097
+ getLocale() {
1098
+ return m(this, F).getWorkflowState().locale;
1099
+ }
1100
+ getSupportedDocumentTranslationsFromSettings(t) {
1101
+ const { supportedDocumentTypes: a } = m(this, F).getConfiguration().getSettings();
1102
+ return ni(a, t);
1103
+ }
1104
+ getDocProofFileTypes() {
1105
+ const { merchantSettings: { docProofFileType: t = "ALL" } = {} } = m(this, F).getConfiguration().getSettings();
1106
+ return t?.trim() ? Array.from(
1107
+ new Set(
1108
+ t.split(",").map((a) => a.trim().toUpperCase()).filter(Boolean)
1109
+ )
1110
+ ) : [];
1111
+ }
1112
+ getInputFileAcceptValue() {
1113
+ const t = this.getDocProofFileTypes();
1114
+ if (t.length === 0 || t.includes("ALL"))
1115
+ return "";
1116
+ const a = [];
1117
+ for (const o of t) {
1118
+ const i = J.ALLOWED_FILE_TYPE_CONFIG[o];
1119
+ i && i.mimeTypes.forEach((s) => a.push(s));
1120
+ }
1121
+ return a.join(", ");
1122
+ }
1123
+ isFileTypeAllowed(t) {
1124
+ const a = this.getDocProofFileTypes();
1125
+ return a.length === 0 || a.includes("ALL") ? !0 : a.some(
1126
+ (o) => J.ALLOWED_FILE_TYPE_CONFIG[o]?.validate(t) ?? !1
1127
+ );
1128
+ }
1129
+ async checkPdfUpload(t) {
1130
+ if (K(t)) {
1131
+ const a = await H(m(this, w).selectUploadedPdfFile$());
1132
+ if (be(this, V, ga).call(this, a))
1133
+ return this.pdfFiles$.next([
1134
+ { label: t.name, value: "new", selected: !1, file: t },
1135
+ { label: a.name, value: "old", selected: !1, file: a }
1136
+ ]), !0;
1137
+ }
1138
+ return !1;
1139
+ }
1140
+ cancelPdfSelection() {
1141
+ this.pdfFiles$.next(void 0);
1142
+ }
1143
+ dropFilesByCriteria(t) {
1144
+ const a = si(t).map((o) => o.upload?.id).filter((o) => O(ri, o));
1145
+ Yt(...a);
1146
+ }
1147
+ };
1148
+ ve = new WeakMap(), F = new WeakMap(), w = new WeakMap(), V = new WeakSet(), ga = function(t) {
1149
+ return t instanceof File;
1150
+ }, va = function() {
1151
+ return m(this, F).getControllerById(B.Document);
1152
+ }, J.ALLOWED_FILE_TYPE_CONFIG = {
1153
+ PDF: {
1154
+ mimeTypes: ["application/pdf"],
1155
+ validate: (t) => K(t)
1156
+ },
1157
+ JPEG: {
1158
+ mimeTypes: ["image/jpeg"],
1159
+ validate: (t) => ["image/jpeg", "image/jpg"].includes(t.type.toLowerCase())
1160
+ },
1161
+ JPG: {
1162
+ mimeTypes: ["image/jpeg"],
1163
+ validate: (t) => ["image/jpeg", "image/jpg"].includes(t.type.toLowerCase())
1164
+ },
1165
+ PNG: {
1166
+ mimeTypes: ["image/png"],
1167
+ validate: (t) => t.type.toLowerCase() === "image/png"
1168
+ }
1169
+ };
1170
+ let Ee = J;
1171
+ var ji = Object.defineProperty, Wi = Object.getOwnPropertyDescriptor, wa = (e) => {
1172
+ throw TypeError(e);
1173
+ }, Ce = (e, t, a, o) => {
1174
+ for (var i = o > 1 ? void 0 : o ? Wi(t, a) : t, s = e.length - 1, r; s >= 0; s--)
1175
+ (r = e[s]) && (i = (o ? r(t, a, i) : r(i)) || i);
1176
+ return o && i && ji(t, a, i), i;
1177
+ }, nt = (e, t, a) => t.has(e) || wa("Cannot " + a), v = (e, t, a) => (nt(e, t, "read from private field"), a ? a.call(e) : t.get(e)), h = (e, t, a) => t.has(e) ? wa("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), st = (e, t, a, o) => (nt(e, t, "write to private field"), t.set(e, a), a), u = (e, t, a) => (nt(e, t, "access private method"), a), rt, lt, ct, dt, me, fe, ye, d, Ca, ya, ut, Ie, Sa, Ue, ba, _a, $a, ka, Be, Te, Le, Ve, Oe, pt, Ae;
1178
+ let L = class extends $ {
1179
+ constructor() {
1180
+ super(), h(this, d), h(this, rt, new S(this, Bt())), h(this, lt, new S(this, Tt())), h(this, ct, Lt(
1181
+ this,
1182
+ Vt(),
1183
+ !0
1184
+ )), h(this, dt, new li(this)), h(this, me), h(this, fe), this.imageViewerIndex = -1, this.hasUploadError = !1, h(this, ye, /* @__PURE__ */ new Map()), h(this, Be, async (e) => {
1185
+ const [t] = e.detail.files;
1186
+ if (!this.componentController.isFileTypeAllowed(t)) {
1187
+ this.hasUploadError = !0;
1188
+ return;
1189
+ }
1190
+ const a = await this.componentController.checkPdfUpload(t);
1191
+ Ot("UPLOAD"), a || await u(this, d, Ve).call(this, t);
1192
+ }), h(this, Te, (e) => {
1193
+ const t = u(this, d, Ie).call(this, e);
1194
+ t && (e.stopPropagation(), this.dispatchEvent(new di(t)));
1195
+ }), h(this, Le, (e) => {
1196
+ const t = u(this, d, Ie).call(this, e);
1197
+ t && (e.stopPropagation(), this.dispatchEvent(new ui(t)));
1198
+ }), h(this, pt, () => (pi.clickedContinueUploadButton(this, {
1199
+ metadata: {
1200
+ documentType: this.documentCodeController.value?.code,
1201
+ pageCount: this.fileEntitiesController.value?.length
1202
+ }
1203
+ }), this.componentController.confirmSelection())), h(this, Ae, () => {
1204
+ const e = ze(), t = He(R());
1205
+ e.send({
1206
+ type: t.MobileCapture
1207
+ });
1208
+ }), this.componentController = new Ee(this), this.documentCodeController = new S(this, this.componentController.document$), this.maxFileUploadSizeController = new S(this, this.componentController.maxFileUploadSize$), this.fileEntitiesController = new S(this, ci()), this.pdfFilesController = new S(this, this.componentController.pdfFiles$);
1209
+ }
1210
+ async handlePdfSelection() {
1211
+ const e = await H(this.componentController.pdfFiles$, {
1212
+ defaultValue: void 0
1213
+ });
1214
+ if (e) {
1215
+ const t = e.find((a) => a.selected);
1216
+ t?.value === "new" && (this.componentController.pdfFiles$.next(void 0), await u(this, d, Ve).call(this, t.file));
1217
+ }
1218
+ this.componentController.pdfFiles$.next(void 0);
1219
+ }
1220
+ render() {
1221
+ return ke("jumio-document-upload-backward-button"), ke("jumio-document-upload-before"), ke("jumio-document-upload-after"), l`
1222
+ <jumio-sdk-step-document-upload-view
1223
+ data-qa-id="document-upload-view"
1224
+ @dropimagerequest="${v(this, Te)}"
1225
+ @previewimagerequest="${v(this, Le)}"
1226
+ @filesuploaded="${v(this, Be)}"
1227
+ @capturefile="${v(this, Ae)}"
1228
+ .config="${u(this, d, Ca).call(this)}"
1229
+ ></jumio-sdk-step-document-upload-view>
1230
+ `;
1231
+ }
1232
+ willUpdate(e) {
1233
+ super.willUpdate(e), this.imageViewerIndex >= 0 && (this.fileEntitiesController.value ?? []).length === 0 && (this.imageViewerIndex = -1);
1234
+ }
1235
+ };
1236
+ rt = /* @__PURE__ */ new WeakMap();
1237
+ lt = /* @__PURE__ */ new WeakMap();
1238
+ ct = /* @__PURE__ */ new WeakMap();
1239
+ dt = /* @__PURE__ */ new WeakMap();
1240
+ me = /* @__PURE__ */ new WeakMap();
1241
+ fe = /* @__PURE__ */ new WeakMap();
1242
+ ye = /* @__PURE__ */ new WeakMap();
1243
+ d = /* @__PURE__ */ new WeakSet();
1244
+ Ca = function() {
1245
+ const e = this.fileEntitiesController.value ?? [];
1246
+ st(this, ye, new Map(e.map((i, s) => [u(this, d, ut).call(this, i, s), i])));
1247
+ const t = e.map((i) => i.upload).filter((i) => O(Je, i)), a = t.filter((i) => i.docvProcessed).length, o = t.length === 0 ? 0 : a / t.length * 100;
1248
+ return {
1249
+ title: u(this, d, $a).call(this),
1250
+ instructions: u(this, d, ba).call(this, this.componentController.getDocProofFileTypes()),
1251
+ accept: this.componentController.getInputFileAcceptValue(),
1252
+ mobile: hi(),
1253
+ files: e.map((i, s) => u(this, d, ya).call(this, i, s, o)),
1254
+ continueEnabled: u(this, d, ka).call(this, e),
1255
+ imageViewerIndex: this.imageViewerIndex,
1256
+ uploadErrorVisible: this.hasUploadError,
1257
+ pdfOptions: (this.pdfFilesController.value ?? []).flatMap(
1258
+ (i) => i.value === "new" || i.value === "old" ? [
1259
+ {
1260
+ label: i.label,
1261
+ value: i.value,
1262
+ selected: i.selected
1263
+ }
1264
+ ] : []
1265
+ ),
1266
+ navigationButton: u(this, d, Sa).call(this),
1267
+ logotype: {
1268
+ logoFromSettings: v(this, dt).getLogoFromSettings()
1269
+ },
1270
+ onContinue: v(this, pt),
1271
+ onFileRemove: (i) => {
1272
+ Yt(i);
1273
+ },
1274
+ onFilePreview: (i) => {
1275
+ u(this, d, Oe).call(this, i);
1276
+ },
1277
+ onImageViewerClose: () => {
1278
+ u(this, d, Oe).call(this, -1);
1279
+ },
1280
+ onImageViewerRemove: (i) => {
1281
+ this.componentController.softDeletePdfPage(i);
1282
+ },
1283
+ onUploadErrorDismiss: () => {
1284
+ this.hasUploadError = !1;
1285
+ },
1286
+ onPdfOptionSelect: (i) => {
1287
+ const s = this.pdfFilesController.value;
1288
+ s && this.componentController.pdfFiles$.next(
1289
+ s.map((r) => ({
1290
+ ...r,
1291
+ selected: r.value === i
1292
+ }))
1293
+ );
1294
+ },
1295
+ onPdfConfirm: () => {
1296
+ this.handlePdfSelection();
1297
+ },
1298
+ onPdfCancel: () => {
1299
+ this.componentController.cancelPdfSelection();
1300
+ }
1301
+ };
1302
+ };
1303
+ ya = function(e, t, a) {
1304
+ const o = u(this, d, ut).call(this, e, t), i = e.upload?.blob instanceof File ? e.upload.blob.name : "", s = (() => {
1305
+ switch (e.upload?.state) {
1306
+ case E.NotStarted:
1307
+ return g.NotStarted;
1308
+ case E.Progress:
1309
+ return g.Progress;
1310
+ case E.Success:
1311
+ return g.Success;
1312
+ case E.Error:
1313
+ return g.Error;
1314
+ case void 0:
1315
+ return g.Missing;
1316
+ }
1317
+ })(), r = (() => {
1318
+ switch (e.thumbnail?.state) {
1319
+ case Z.NotStarted:
1320
+ return { state: _.NotStarted };
1321
+ case Z.Progress:
1322
+ return { state: _.Progress };
1323
+ case Z.Success:
1324
+ return {
1325
+ state: _.Success,
1326
+ src: e.thumbnail.thumbnail.base64,
1327
+ width: e.thumbnail.thumbnail.width,
1328
+ height: e.thumbnail.thumbnail.height
1329
+ };
1330
+ case Z.Error:
1331
+ return { state: _.Error };
1332
+ case void 0:
1333
+ return;
1334
+ }
1335
+ })(), p = O(Je, e.upload) && e.upload.docvProcessed === !1;
1336
+ return {
1337
+ id: o,
1338
+ fileName: i,
1339
+ state: s,
1340
+ ...r === void 0 ? {} : { thumbnail: r },
1341
+ ...a < 100 && p ? { processingProgress: a } : {}
1342
+ };
1343
+ };
1344
+ ut = function(e, t) {
1345
+ return e.upload?.id ?? e.thumbnail?.id ?? `pending-${t}`;
1346
+ };
1347
+ Ie = function(e) {
1348
+ const { detail: t } = e, a = t?.upload?.id ?? t?.thumbnail?.id;
1349
+ return typeof a == "string" ? v(this, ye).get(a) : void 0;
1350
+ };
1351
+ Sa = function() {
1352
+ const e = v(this, rt).value, t = qt({
1353
+ hasHistoryItems: this.navigationService?.hasHistoryItems() ?? !1,
1354
+ isCrossDeviceScreen: e?.activeScreen === zt.CrossDevice,
1355
+ forceCrossDeviceDisplay: Nt()
1356
+ }), a = t ? void 0 : u(this, d, Ue).call(this);
1357
+ return {
1358
+ hasBackNavigation: t,
1359
+ showBackButton: v(this, lt).value ?? !0,
1360
+ type: M.Quiet,
1361
+ shape: qe.Round,
1362
+ localeSelection: {
1363
+ visible: !t && v(this, ct).value,
1364
+ locales: a?.getLocales() ?? [],
1365
+ selectedLocale: v(this, fe) ?? a?.getSelectedLocale(),
1366
+ selectType: Ht.Default,
1367
+ onLocaleSelect: (o) => {
1368
+ st(this, fe, o), u(this, d, Ue).call(this).updateLocale(o), this.requestUpdate();
1369
+ }
1370
+ },
1371
+ onBack: () => {
1372
+ this.navigationService?.back();
1373
+ }
1374
+ };
1375
+ };
1376
+ Ue = function() {
1377
+ return v(this, me) ?? st(this, me, new Jt(this));
1378
+ };
1379
+ ba = function(e) {
1380
+ return e.length === 0 || e.includes("ALL") ? ne(
1381
+ c(
1382
+ "Upload a color image of the whole document. Max. size: {{pageLimit}} images or {{uploadFileSizeMax}} MB.",
1383
+ {
1384
+ id: "dv.instruction.upload_colour_image_full_document_size_limit"
1385
+ }
1386
+ )
1387
+ )({
1388
+ pageLimit: this.documentCodeController.value?.maxPages,
1389
+ uploadFileSizeMax: vt(this.maxFileUploadSizeController.value ?? 0)
1390
+ }) : ne(
1391
+ c(
1392
+ "Upload a color image of the whole document. {{fileType}} format only. Max. size: {{pageLimit}} images or {{uploadFileSizeMax}} MB.",
1393
+ {
1394
+ id: "dv.instruction.upload_colour_image_full_document_size_limit_and_file_type"
1395
+ }
1396
+ )
1397
+ )({
1398
+ fileType: u(this, d, _a).call(this, e),
1399
+ pageLimit: this.documentCodeController.value?.maxPages,
1400
+ uploadFileSizeMax: vt(this.maxFileUploadSizeController.value ?? 0)
1401
+ });
1402
+ };
1403
+ _a = function(e) {
1404
+ const t = this.componentController.getLocale(), a = Intl;
1405
+ if (typeof a.ListFormat != "function")
1406
+ return e.join(", ");
1407
+ const o = t.replace(/_/g, "-");
1408
+ try {
1409
+ return new a.ListFormat(o, { type: "disjunction" }).format(e);
1410
+ } catch {
1411
+ return e.join(", ");
1412
+ }
1413
+ };
1414
+ $a = function() {
1415
+ const { code: e } = this.documentCodeController.value ?? {}, t = e ? mi[e] : void 0;
1416
+ if (t)
1417
+ return c(t.label, { id: t.id });
1418
+ const a = fi(
1419
+ this.componentController.getLocale(),
1420
+ this.componentController.getSupportedDocumentTranslationsFromSettings(e)
1421
+ );
1422
+ return ne(
1423
+ gi(c('Upload your "{{customTitle}}"', { id: "dv.instruction.upload_your_document" }))
1424
+ )({
1425
+ customTitle: a ?? ""
1426
+ });
1427
+ };
1428
+ ka = function(e) {
1429
+ const t = this.documentCodeController.value?.maxPages ?? Number.MAX_VALUE;
1430
+ return e.length > 0 && e.length <= t && e.every((a) => O(Je, a.upload) && a.upload.docvProcessed);
1431
+ };
1432
+ Be = /* @__PURE__ */ new WeakMap();
1433
+ Te = /* @__PURE__ */ new WeakMap();
1434
+ Le = /* @__PURE__ */ new WeakMap();
1435
+ Ve = async function(e) {
1436
+ try {
1437
+ await this.componentController.uploadFile(e);
1438
+ } catch (t) {
1439
+ this.hasUploadError = !!t;
1440
+ }
1441
+ };
1442
+ Oe = function(e) {
1443
+ this.imageViewerIndex = e;
1444
+ };
1445
+ pt = /* @__PURE__ */ new WeakMap();
1446
+ Ae = /* @__PURE__ */ new WeakMap();
1447
+ L.styles = [
1448
+ ...$.styles,
1449
+ G`
1450
+ :host {
1451
+ display: contents;
1452
+ }
1453
+ `
1454
+ ];
1455
+ Ce([
1456
+ Rt({ context: Gt, subscribe: !0 })
1457
+ ], L.prototype, "navigationService", 2);
1458
+ Ce([
1459
+ Re()
1460
+ ], L.prototype, "imageViewerIndex", 2);
1461
+ Ce([
1462
+ Re()
1463
+ ], L.prototype, "hasUploadError", 2);
1464
+ L = Ce([
1465
+ Y(),
1466
+ Q("jumio-sdk-step-document-upload")
1467
+ ], L);
1468
+ var qi = Object.defineProperty, Ni = Object.getOwnPropertyDescriptor, xa = (e) => {
1469
+ throw TypeError(e);
1470
+ }, Pa = (e, t, a, o) => {
1471
+ for (var i = o > 1 ? void 0 : o ? Ni(t, a) : t, s = e.length - 1, r; s >= 0; s--)
1472
+ (r = e[s]) && (i = (o ? r(t, a, i) : r(i)) || i);
1473
+ return o && i && qi(t, a, i), i;
1474
+ }, ht = (e, t, a) => t.has(e) || xa("Cannot " + a), zi = (e, t, a) => (ht(e, t, "read from private field"), a ? a.call(e) : t.get(e)), kt = (e, t, a) => t.has(e) ? xa("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), Hi = (e, t, a, o) => (ht(e, t, "write to private field"), t.set(e, a), a), xt = (e, t, a) => (ht(e, t, "access private method"), a), ie, oe, Da, Fa;
1475
+ let ge = class extends $ {
1476
+ constructor() {
1477
+ super(), kt(this, oe), kt(this, ie), Hi(this, ie, new S(this, vi()));
1478
+ }
1479
+ get workflowStepController() {
1480
+ return Ne().getControllerById(B.Document);
1481
+ }
1482
+ render() {
1483
+ switch (zi(this, ie).value) {
1484
+ case wt.UploadScreen:
1485
+ return xt(this, oe, Da).call(this);
1486
+ case wt.MobileCapture:
1487
+ return xt(this, oe, Fa).call(this);
1488
+ default:
1489
+ return D;
1490
+ }
1491
+ }
1492
+ };
1493
+ ie = /* @__PURE__ */ new WeakMap();
1494
+ oe = /* @__PURE__ */ new WeakSet();
1495
+ Da = function() {
1496
+ return l`<jumio-sdk-step-document-upload data-qa-id="document-upload"></jumio-sdk-step-document-upload>`;
1497
+ };
1498
+ Fa = function() {
1499
+ return l`<jumio-sdk-step-document-capture data-qa-id="document-capture"></jumio-sdk-step-document-capture>`;
1500
+ };
1501
+ ge.styles = [
1502
+ ...$.styles,
1503
+ G`
1504
+ :host {
1505
+ display: contents;
1506
+ }
1507
+ `
1508
+ ];
1509
+ Pa([
1510
+ wi({ context: Ci }),
1511
+ Re()
1512
+ ], ge.prototype, "workflowStepController", 1);
1513
+ ge = Pa([
1514
+ Y(),
1515
+ Q("jumio-sdk-step-document")
1516
+ ], ge);
1517
+ export {
1518
+ he as JumioSdkStepDocumentCaptureComponent,
1519
+ ge as JumioSdkStepDocumentComponent,
1520
+ L as JumioSdkStepDocumentUploadComponent
1521
+ };
1522
+ //# sourceMappingURL=document.CQ_B9GTj.js.map