@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,3060 @@
1
+ var ss = (e) => {
2
+ throw TypeError(e);
3
+ };
4
+ var wa = (e, t, a) => t.has(e) || ss("Cannot " + a);
5
+ var v = (e, t, a) => (wa(e, t, "read from private field"), a ? a.call(e) : t.get(e)), q = (e, t, a) => t.has(e) ? ss("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), T = (e, t, a, s) => (wa(e, t, "write to private field"), s ? s.call(e, a) : t.set(e, a), a), Ee = (e, t, a) => (wa(e, t, "access private method"), a);
6
+ import { k as Br, u as Ir, K as V, T as Tr, X as zr, x as ns, a as Wr, e as rs, z as k } from "../da-system.CF4xYrOs.js";
7
+ import { k as S, p as w, S as J, i as g, aZ as de, w as ma, t as m, l as D, b1 as j, o as _, b2 as u, x as o, C as ee, q as p, M as O, N as te, E as b, Q as d, v as F, J as xe, y as ht, z as ni, A as ye, D as Ps, F as je, Y as Js, _ as fa, b3 as Or, K as Ur, a7 as bt, P as c, aC as va, O as Ar, b4 as Vr, U as ga, V as Sa, W as le, X as E, $ as X, a9 as ri, aL as js, aa as $, ab as oi, ac as ci, ad as ge, ae as li, aw as di, ax as ui, ay as pi, aA as hi, aB as mi, aD as fi, b5 as ae, aN as ie, aE as vi, aF as gi, at as ba, b6 as st, b7 as Pa, b8 as Ut, b9 as Ds, ba as Rr, bb as qr, bc as Nr, af as Si, bd as Hr, b as nt, be as os, a1 as Gr, a2 as Es, bf as _e, bg as cs, am as Kr, ap as rt, bh as Bs, bi as Xr, bj as Yr, bk as Is, bl as De, bm as Ts, bn as et, bo as _i, f as ce, bp as zs, bq as Pe, br as Ca, bs as Qr, bt as Zr, bu as eo, bv as to, bw as Ct, bx as Ws, aq as yi, d as Os, by as ao, bz as io, bA as so, bB as no, bC as ro, bD as oo, B as tt, bE as Us, a as _a, g as wi, bF as As, bG as co, ai as At, aj as Vt, bH as lo, bI as uo, bJ as Je, al as Y, u as bi, a4 as kt, bK as B, bL as Vs, bM as Rs, bN as ls, bO as po, bP as ho, bQ as ka, bR as mo, bS as fo, bT as vo, bU as go, bV as So, bW as _o, bX as qs, a3 as Ns, a5 as Hs, a6 as Gs, bY as yo, bZ as Ks, b_ as wo, b$ as bo, a8 as Co, c0 as ko, c1 as $o, c2 as Mo, c3 as Fo, ag as Lo, ah as xo, c4 as Po, c5 as Jo, aK as jo, ao as Do, c6 as Eo, c7 as Bo, c8 as Io, c9 as To, ca as zo, cb as Wo, ar as Oo, as as Uo, cc as Xs, cd as Ao, az as Vo, ce as Ro, cf as qo, aS as Ci, cg as No, ch as Ho, ci as Go, cj as ds, ck as Ko, cl as Xo, cm as Yo, cn as Qo, co as Zo, cp as ec, cq as se, cr as tc, a$ as ac, aY as ic, cs as sc } from "../runtime.BjZbWNSZ.js";
8
+ class nc {
9
+ #t;
10
+ #e;
11
+ #a;
12
+ constructor(t) {
13
+ this.#t = S(), this.#e = this.#t.getControllerById(w.Facemap), this.#a = new J(), t.addController(this);
14
+ }
15
+ hostConnected() {
16
+ this.getStepChange$().pipe(g(this.#a)).subscribe();
17
+ }
18
+ hostDisconnected() {
19
+ this.#a.next();
20
+ }
21
+ selectVerificationMethods$() {
22
+ return this.#e.selectVerificationMethods$();
23
+ }
24
+ selectActiveVerificationMethod$() {
25
+ return this.#i().selectActiveFaceVerificationMethod$();
26
+ }
27
+ selectFacemapStepInformation$() {
28
+ return de();
29
+ }
30
+ getStepChange$() {
31
+ return this.selectFacemapStepInformation$().pipe(
32
+ ma(this.selectVerificationMethods$(), this.selectActiveVerificationMethod$()),
33
+ m(([t]) => {
34
+ const a = D(), s = j(_());
35
+ if (t === u.Start) {
36
+ a.send({
37
+ type: s.JumioStandard
38
+ });
39
+ return;
40
+ }
41
+ })
42
+ );
43
+ }
44
+ #i() {
45
+ return S().getControllerById(w.Facemap);
46
+ }
47
+ }
48
+ const rc = o.Object(
49
+ {
50
+ message: o.Optional(
51
+ o.Object(
52
+ {
53
+ text: o.String(),
54
+ progress: o.Number()
55
+ },
56
+ { additionalProperties: !1 }
57
+ )
58
+ )
59
+ },
60
+ { additionalProperties: !1 }
61
+ ), oc = () => ({}), cc = (e) => Math.round(Math.min(100, Math.max(0, e))), Rt = (e) => ee(rc, e) ? {
62
+ config: {
63
+ ...e.message ? {
64
+ message: {
65
+ text: e.message.text,
66
+ progress: cc(e.message.progress)
67
+ }
68
+ } : {}
69
+ },
70
+ valid: !0
71
+ } : { config: oc(), valid: !1 };
72
+ var lc = Object.defineProperty, dc = Object.getOwnPropertyDescriptor, Ys = (e) => {
73
+ throw TypeError(e);
74
+ }, Qs = (e, t, a, s) => {
75
+ for (var i = s > 1 ? void 0 : s ? dc(t, a) : t, n = e.length - 1, r; n >= 0; n--)
76
+ (r = e[n]) && (i = (s ? r(t, a, i) : r(i)) || i);
77
+ return s && i && lc(t, a, i), i;
78
+ }, Zs = (e, t, a) => t.has(e) || Ys("Cannot " + a), us = (e, t, a) => (Zs(e, t, "read from private field"), a ? a.call(e) : t.get(e)), uc = (e, t, a) => t.has(e) ? Ys("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), pc = (e, t, a, s) => (Zs(e, t, "write to private field"), t.set(e, a), a), ze;
79
+ let qt = class extends p {
80
+ constructor() {
81
+ super(...arguments), uc(this, ze, Rt(void 0).config);
82
+ }
83
+ get config() {
84
+ return us(this, ze);
85
+ }
86
+ set config(e) {
87
+ const t = us(this, ze);
88
+ pc(this, ze, Rt(e).config), this.requestUpdate("config", t);
89
+ }
90
+ render() {
91
+ const { message: e } = this.config;
92
+ return e?.text ? d`
93
+ <x-ds-capture-label
94
+ class="capture-state-message"
95
+ data-qa-id="capture-state-message"
96
+ .config="${{
97
+ progress: {
98
+ value: e.progress
99
+ },
100
+ ariaLive: "assertive"
101
+ }}"
102
+ data-text="${e.text}"
103
+ >
104
+ ${e.text}
105
+ </x-ds-capture-label>
106
+ ` : b;
107
+ }
108
+ };
109
+ ze = /* @__PURE__ */ new WeakMap();
110
+ qt.styles = [
111
+ ...p.styles,
112
+ O`
113
+ :host {
114
+ display: contents;
115
+ }
116
+
117
+ .capture-state-message {
118
+ width: 100%;
119
+ }
120
+ `
121
+ ];
122
+ Qs([
123
+ te({ attribute: !1 })
124
+ ], qt.prototype, "config", 1);
125
+ qt = Qs([
126
+ F("jumio-sdk-liveness-capture-state-view")
127
+ ], qt);
128
+ const hc = o.Object(
129
+ {
130
+ size: o.Optional(o.Number()),
131
+ fillRadius: o.Optional(o.Number()),
132
+ fillWidth: o.Optional(o.Number()),
133
+ fillColor: o.Optional(o.String()),
134
+ trackRadius: o.Optional(o.Number()),
135
+ trackWidth: o.Optional(o.Number()),
136
+ trackColor: o.Optional(o.String()),
137
+ underlayRadius: o.Optional(o.Number()),
138
+ underlayColor: o.Optional(o.String())
139
+ },
140
+ { additionalProperties: !1 }
141
+ ), mc = o.Object(
142
+ {
143
+ visible: o.Boolean(),
144
+ progress: o.Number(),
145
+ indicator: hc
146
+ },
147
+ { additionalProperties: !1 }
148
+ ), fc = () => ({
149
+ visible: !1,
150
+ progress: 0,
151
+ indicator: {}
152
+ }), vc = (e) => Math.min(100, Math.max(0, e)), ps = (e) => ee(mc, e) ? {
153
+ config: {
154
+ visible: e.visible,
155
+ progress: vc(e.progress),
156
+ indicator: { ...e.indicator }
157
+ },
158
+ valid: !0
159
+ } : { config: fc(), valid: !1 }, gc = ":host{display:contents}.loading-indicator{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}";
160
+ var Sc = Object.defineProperty, _c = Object.getOwnPropertyDescriptor, en = (e) => {
161
+ throw TypeError(e);
162
+ }, tn = (e, t, a, s) => {
163
+ for (var i = s > 1 ? void 0 : s ? _c(t, a) : t, n = e.length - 1, r; n >= 0; n--)
164
+ (r = e[n]) && (i = (s ? r(t, a, i) : r(i)) || i);
165
+ return s && i && Sc(t, a, i), i;
166
+ }, an = (e, t, a) => t.has(e) || en("Cannot " + a), hs = (e, t, a) => (an(e, t, "read from private field"), a ? a.call(e) : t.get(e)), yc = (e, t, a) => t.has(e) ? en("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), wc = (e, t, a, s) => (an(e, t, "write to private field"), t.set(e, a), a), We;
167
+ let Nt = class extends p {
168
+ constructor() {
169
+ super(...arguments), yc(this, We, ps(void 0).config);
170
+ }
171
+ get config() {
172
+ return hs(this, We);
173
+ }
174
+ set config(e) {
175
+ const t = hs(this, We);
176
+ wc(this, We, ps(e).config), this.requestUpdate("config", t);
177
+ }
178
+ render() {
179
+ return this.config.visible ? d`
180
+ <x-ds-circular-progress-indicator
181
+ slot="middle"
182
+ class="loading-indicator"
183
+ data-qa-id="loading-indicator"
184
+ .config="${{
185
+ ...this.config.indicator,
186
+ progress: this.config.progress
187
+ }}"
188
+ ></x-ds-circular-progress-indicator>
189
+ ` : b;
190
+ }
191
+ };
192
+ We = /* @__PURE__ */ new WeakMap();
193
+ Nt.styles = [...p.styles, xe(gc)];
194
+ tn([
195
+ te({ attribute: !1 })
196
+ ], Nt.prototype, "config", 1);
197
+ Nt = tn([
198
+ F("jumio-sdk-liveness-progress-view")
199
+ ], Nt);
200
+ const sn = o.Object(
201
+ {
202
+ feedback: o.Object(
203
+ {
204
+ message: o.Optional(
205
+ o.Object(
206
+ {
207
+ text: o.String(),
208
+ progress: o.Number()
209
+ },
210
+ { additionalProperties: !1 }
211
+ )
212
+ )
213
+ },
214
+ { additionalProperties: !1 }
215
+ )
216
+ },
217
+ { additionalProperties: !1 }
218
+ ), $t = () => ({
219
+ feedback: Rt({}).config
220
+ });
221
+ $t();
222
+ const Ht = (e) => {
223
+ if (e === void 0)
224
+ return { config: $t(), valid: !0 };
225
+ if (!ee(sn, e))
226
+ return { config: $t(), valid: !1 };
227
+ const t = Rt(e.feedback);
228
+ return t.valid ? {
229
+ config: {
230
+ feedback: t.config
231
+ },
232
+ valid: !0
233
+ } : { config: $t(), valid: !1 };
234
+ }, bc = o.Object(
235
+ {
236
+ visible: o.Boolean(),
237
+ modalTitleId: o.String(),
238
+ tips: o.Array(o.String(), { maxItems: 32 }),
239
+ secondaryAction: o.Object(
240
+ {
241
+ visible: o.Boolean(),
242
+ label: o.String()
243
+ },
244
+ { additionalProperties: !0 }
245
+ ),
246
+ crossDevice: ht
247
+ },
248
+ { additionalProperties: !0 }
249
+ ), nn = o.Object(
250
+ {
251
+ navigationButton: ni,
252
+ captureHints: bc,
253
+ crossDevice: ht,
254
+ captureButton: o.Object(
255
+ {
256
+ visible: o.Boolean(),
257
+ disabled: o.Boolean()
258
+ },
259
+ { additionalProperties: !0 }
260
+ ),
261
+ media: o.Object(
262
+ {
263
+ fallbackVisible: o.Boolean(),
264
+ fallbackLabel: o.String()
265
+ },
266
+ { additionalProperties: !0 }
267
+ ),
268
+ captureState: sn,
269
+ fullscreenButtonVisible: o.Boolean()
270
+ },
271
+ { additionalProperties: !0 }
272
+ ), ms = (e) => typeof e == "function" ? e : () => {
273
+ }, Mt = () => ({
274
+ navigationButton: je(void 0).config,
275
+ captureHints: Ps(),
276
+ crossDevice: ye(void 0).config,
277
+ captureButton: {
278
+ visible: !1,
279
+ disabled: !0,
280
+ onCapture: () => {
281
+ }
282
+ },
283
+ media: {
284
+ fallbackVisible: !0,
285
+ fallbackLabel: "",
286
+ cameraFilterFn: void 0
287
+ },
288
+ captureState: Ht(void 0).config,
289
+ fullscreenButtonVisible: !1,
290
+ onHelp: () => {
291
+ }
292
+ });
293
+ Mt();
294
+ const Ja = (e) => {
295
+ if (e === void 0)
296
+ return { config: Mt(), valid: !0 };
297
+ if (!ee(nn, e))
298
+ return { config: Mt(), valid: !1 };
299
+ const t = je(e.navigationButton), a = ye(e.crossDevice), s = Ht(e.captureState);
300
+ if (![t, a, s].every(({ valid: L }) => L))
301
+ return { config: Mt(), valid: !1 };
302
+ const i = e, n = e.captureButton, r = e.media;
303
+ return {
304
+ config: {
305
+ navigationButton: t.config,
306
+ captureHints: Ps(e.captureHints),
307
+ crossDevice: a.config,
308
+ captureButton: {
309
+ visible: e.captureButton.visible,
310
+ disabled: e.captureButton.disabled,
311
+ onCapture: ms(n.onCapture)
312
+ },
313
+ media: {
314
+ fallbackVisible: e.media.fallbackVisible,
315
+ fallbackLabel: e.media.fallbackLabel.slice(0, 512),
316
+ cameraFilterFn: typeof r.cameraFilterFn == "function" ? r.cameraFilterFn : void 0
317
+ },
318
+ captureState: s.config,
319
+ fullscreenButtonVisible: e.fullscreenButtonVisible,
320
+ onHelp: ms(i.onHelp)
321
+ },
322
+ valid: !0
323
+ };
324
+ }, rn = o.Object(
325
+ {
326
+ premium: o.Boolean(),
327
+ navigationButton: ni,
328
+ logotype: Js,
329
+ crossDevice: ht
330
+ },
331
+ { additionalProperties: !0 }
332
+ ), Ft = () => ({
333
+ premium: !1,
334
+ navigationButton: je(void 0).config,
335
+ logotype: fa(void 0).config,
336
+ crossDevice: ye(void 0).config,
337
+ onContinue: () => {
338
+ }
339
+ });
340
+ Ft();
341
+ const ja = (e) => {
342
+ if (e === void 0)
343
+ return { config: Ft(), valid: !0 };
344
+ if (!ee(rn, e))
345
+ return { config: Ft(), valid: !1 };
346
+ const t = je(e.navigationButton), a = fa(e.logotype), s = ye(e.crossDevice);
347
+ if (![t, a, s].every(({ valid: n }) => n))
348
+ return { config: Ft(), valid: !1 };
349
+ const i = e;
350
+ return {
351
+ config: {
352
+ premium: e.premium,
353
+ navigationButton: t.config,
354
+ logotype: a.config,
355
+ crossDevice: s.config,
356
+ onContinue: typeof i.onContinue == "function" ? i.onContinue : () => {
357
+ }
358
+ },
359
+ valid: !0
360
+ };
361
+ }, Cc = o.Union([
362
+ o.Literal("face-obscured"),
363
+ o.Literal("face-verification-failed"),
364
+ o.Literal("multiple-people-detected"),
365
+ o.Literal("too-dark"),
366
+ o.Literal("too-much-light"),
367
+ o.Literal("too-much-movement")
368
+ ]), on = o.Object(
369
+ {
370
+ state: o.Literal("rejection"),
371
+ navigationButton: ni,
372
+ logotype: Js,
373
+ title: o.String(),
374
+ illustration: Cc,
375
+ instructions: o.Array(o.String(), { maxItems: 16 }),
376
+ retryLabel: o.String(),
377
+ crossDevice: ht
378
+ },
379
+ { additionalProperties: !0 }
380
+ ), Lt = () => ({
381
+ state: "rejection",
382
+ navigationButton: je(void 0).config,
383
+ logotype: fa(void 0).config,
384
+ title: "",
385
+ illustration: "face-verification-failed",
386
+ instructions: [],
387
+ retryLabel: "",
388
+ crossDevice: ye(void 0).config,
389
+ onRetry: () => {
390
+ }
391
+ });
392
+ Lt();
393
+ const kc = (e) => typeof e == "function" ? e : () => {
394
+ }, Da = (e) => {
395
+ if (e === void 0)
396
+ return { config: Lt(), valid: !0 };
397
+ if (!ee(on, e))
398
+ return { config: Lt(), valid: !1 };
399
+ const t = je(e.navigationButton), a = fa(e.logotype), s = ye(e.crossDevice);
400
+ if (![t, a, s].every(({ valid: n }) => n))
401
+ return { config: Lt(), valid: !1 };
402
+ const i = e;
403
+ return {
404
+ config: {
405
+ state: "rejection",
406
+ navigationButton: t.config,
407
+ logotype: a.config,
408
+ title: e.title.slice(0, 512),
409
+ illustration: e.illustration,
410
+ instructions: e.instructions.map((n) => n.slice(0, 1024)),
411
+ retryLabel: e.retryLabel.slice(0, 256),
412
+ crossDevice: s.config,
413
+ onRetry: kc(i.onRetry)
414
+ },
415
+ valid: !0
416
+ };
417
+ }, $c = o.Object(
418
+ {
419
+ retry: o.Object(
420
+ {
421
+ visible: o.Boolean(),
422
+ errorCode: o.String(),
423
+ transactionId: o.String()
424
+ },
425
+ { additionalProperties: !0 }
426
+ ),
427
+ crossDevice: ht
428
+ },
429
+ { additionalProperties: !0 }
430
+ ), cn = o.Union([
431
+ o.Object({ state: o.Literal("empty") }),
432
+ o.Object(
433
+ {
434
+ state: o.Literal("introduction"),
435
+ introduction: rn
436
+ },
437
+ { additionalProperties: !0 }
438
+ ),
439
+ o.Object(
440
+ {
441
+ state: o.Literal("capture"),
442
+ capture: nn
443
+ },
444
+ { additionalProperties: !0 }
445
+ ),
446
+ o.Object(
447
+ {
448
+ state: o.Literal("usability"),
449
+ usability: on
450
+ },
451
+ { additionalProperties: !0 }
452
+ ),
453
+ o.Object(
454
+ {
455
+ state: o.Literal("upload-failure"),
456
+ uploadFailure: $c
457
+ },
458
+ { additionalProperties: !0 }
459
+ )
460
+ ]), ue = () => ({
461
+ state: "empty"
462
+ }), Ea = (e) => {
463
+ if (e === void 0)
464
+ return { config: ue(), valid: !0 };
465
+ if (!ee(cn, e))
466
+ return { config: ue(), valid: !1 };
467
+ switch (e.state) {
468
+ case "empty":
469
+ return { config: ue(), valid: !0 };
470
+ case "introduction": {
471
+ const t = ja(e.introduction);
472
+ return t.valid ? {
473
+ config: {
474
+ state: "introduction",
475
+ introduction: t.config
476
+ },
477
+ valid: !0
478
+ } : { config: ue(), valid: !1 };
479
+ }
480
+ case "capture": {
481
+ const t = Ja(e.capture);
482
+ return t.valid ? {
483
+ config: {
484
+ state: "capture",
485
+ capture: t.config
486
+ },
487
+ valid: !0
488
+ } : { config: ue(), valid: !1 };
489
+ }
490
+ case "usability": {
491
+ const t = Da(e.usability);
492
+ return t.valid ? {
493
+ config: {
494
+ state: "usability",
495
+ usability: t.config
496
+ },
497
+ valid: !0
498
+ } : { config: ue(), valid: !1 };
499
+ }
500
+ case "upload-failure": {
501
+ const t = ye(e.uploadFailure.crossDevice);
502
+ return t.valid ? {
503
+ config: {
504
+ state: "upload-failure",
505
+ uploadFailure: {
506
+ retry: Or(e.uploadFailure.retry),
507
+ crossDevice: t.config
508
+ }
509
+ },
510
+ valid: !0
511
+ } : { config: ue(), valid: !1 };
512
+ }
513
+ }
514
+ }, Mc = o.Union([
515
+ o.Object({ state: o.Literal("empty") }),
516
+ o.Object(
517
+ {
518
+ state: o.Literal("jumio-standard"),
519
+ jumioStandard: cn
520
+ },
521
+ { additionalProperties: !0 }
522
+ )
523
+ ]), ft = () => ({
524
+ state: "empty"
525
+ }), fs = (e) => {
526
+ if (e === void 0)
527
+ return { config: ft(), valid: !0 };
528
+ if (!ee(Mc, e))
529
+ return { config: ft(), valid: !1 };
530
+ switch (e.state) {
531
+ case "empty":
532
+ return { config: ft(), valid: !0 };
533
+ case "jumio-standard": {
534
+ const t = Ea(e.jumioStandard);
535
+ return t.valid ? {
536
+ config: {
537
+ state: "jumio-standard",
538
+ jumioStandard: t.config
539
+ },
540
+ valid: !0
541
+ } : { config: ft(), valid: !1 };
542
+ }
543
+ }
544
+ };
545
+ var Fc = Object.defineProperty, Lc = Object.getOwnPropertyDescriptor, ln = (e) => {
546
+ throw TypeError(e);
547
+ }, dn = (e, t, a, s) => {
548
+ for (var i = s > 1 ? void 0 : s ? Lc(t, a) : t, n = e.length - 1, r; n >= 0; n--)
549
+ (r = e[n]) && (i = (s ? r(t, a, i) : r(i)) || i);
550
+ return s && i && Fc(t, a, i), i;
551
+ }, un = (e, t, a) => t.has(e) || ln("Cannot " + a), vs = (e, t, a) => (un(e, t, "read from private field"), a ? a.call(e) : t.get(e)), xc = (e, t, a) => t.has(e) ? ln("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), Pc = (e, t, a, s) => (un(e, t, "write to private field"), t.set(e, a), a), Oe;
552
+ let Gt = class extends p {
553
+ constructor() {
554
+ super(...arguments), xc(this, Oe, Ht(void 0).config);
555
+ }
556
+ get config() {
557
+ return vs(this, Oe);
558
+ }
559
+ set config(e) {
560
+ const t = vs(this, Oe);
561
+ Pc(this, Oe, Ht(e).config), this.requestUpdate("config", t);
562
+ }
563
+ render() {
564
+ return this.config.feedback.message ? d`
565
+ <jumio-sdk-liveness-capture-state-view
566
+ data-qa-id="facemap-capture-state-view"
567
+ .config="${this.config.feedback}"
568
+ ></jumio-sdk-liveness-capture-state-view>
569
+ ` : b;
570
+ }
571
+ };
572
+ Oe = /* @__PURE__ */ new WeakMap();
573
+ Gt.styles = [
574
+ ...p.styles,
575
+ O`
576
+ :host {
577
+ display: contents;
578
+ }
579
+ `
580
+ ];
581
+ dn([
582
+ te({ attribute: !1 })
583
+ ], Gt.prototype, "config", 1);
584
+ Gt = dn([
585
+ F("jumio-sdk-step-facemap-capture-state-view")
586
+ ], Gt);
587
+ const Jc = ':host{display:contents}.capture-media{position:relative;width:100%;height:100%;overflow:hidden;background:#101010}.static-media{display:flex;box-sizing:border-box;width:100%;height:100%;align-items:center;justify-content:center;flex-direction:column;gap:.75em;color:#fff;background:radial-gradient(circle at center,#3a3a3a,#101010 70%)}.static-media__icon{font-size:3rem}::slotted([slot="live-media"]){display:block;width:100%;height:100%}.cross-device-container{display:flex;align-items:flex-end;height:100%}.mobile-only{display:flex}.desktop-only{display:none}@media only screen and (min-width:40em){.mobile-only{display:none}.desktop-only{display:flex}}';
588
+ var jc = Object.defineProperty, Dc = Object.getOwnPropertyDescriptor, pn = (e) => {
589
+ throw TypeError(e);
590
+ }, ki = (e, t, a, s) => {
591
+ for (var i = s > 1 ? void 0 : s ? Dc(t, a) : t, n = e.length - 1, r; n >= 0; n--)
592
+ (r = e[n]) && (i = (s ? r(t, a, i) : r(i)) || i);
593
+ return s && i && jc(t, a, i), i;
594
+ }, $i = (e, t, a) => t.has(e) || pn("Cannot " + a), Me = (e, t, a) => ($i(e, t, "read from private field"), a ? a.call(e) : t.get(e)), Be = (e, t, a) => t.has(e) ? pn("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), gs = (e, t, a, s) => ($i(e, t, "write to private field"), t.set(e, a), a), Ie = (e, t, a) => ($i(e, t, "access private method"), a), Ue, xt, pe, hn, mn, fn, vn, gn, Ba, ya;
595
+ let ot = class extends p {
596
+ constructor() {
597
+ super(...arguments), Be(this, pe), this.appContainerRef = bt(), this.enableCameraSelector = !1, Be(this, Ue, Ja(void 0).config), Be(this, xt, !1), Be(this, Ba, () => {
598
+ this.config.captureButton.onCapture();
599
+ }), Be(this, ya, () => {
600
+ this.config.onHelp();
601
+ });
602
+ }
603
+ get config() {
604
+ return Me(this, Ue);
605
+ }
606
+ set config(e) {
607
+ const t = Me(this, Ue), a = Ja(e);
608
+ gs(this, Ue, a.config), gs(this, xt, !a.valid), this.requestUpdate("config", t);
609
+ }
610
+ render() {
611
+ return Me(this, xt) ? d`
612
+ <x-app-container>
613
+ <div slot="main" role="alert" aria-live="assertive" aria-atomic="true" data-qa-id="invalid-config">
614
+ ${c("Sorry, there was an unexpected error.", { id: "error.unexpected_error" })}
615
+ </div>
616
+ </x-app-container>
617
+ ` : d`
618
+ <x-app-container
619
+ ${va(this.appContainerRef)}
620
+ data-qa-id="facemap-capture-view"
621
+ .config="${{
622
+ layoutType: Ar.CaptureScreen,
623
+ headerVisible: !0,
624
+ cameraFilterFn: this.config.media.cameraFilterFn
625
+ }}"
626
+ >
627
+ <jumio-sdk-navigation-button-view
628
+ slot="top-left"
629
+ data-qa-id="navigation-button-view"
630
+ .config="${this.config.navigationButton}"
631
+ ></jumio-sdk-navigation-button-view>
632
+ <x-ds-color-scheme slot="top-middle" data-color-scheme="dark">
633
+ <x-ds-watermark></x-ds-watermark>
634
+ </x-ds-color-scheme>
635
+ ${Ie(this, pe, mn).call(this)} ${Ie(this, pe, fn).call(this)} ${Ie(this, pe, vn).call(this)}
636
+ <x-ds-orientation-lock></x-ds-orientation-lock>
637
+ <div slot="background" class="capture-media" data-qa-id="capture-media">
638
+ <slot name="live-media">${Ie(this, pe, hn).call(this)}</slot>
639
+ </div>
640
+ <x-ds-capture-button
641
+ slot="capture-button"
642
+ data-qa-id="capture-button"
643
+ class="${Vr({ hidden: !this.config.captureButton.visible })}"
644
+ .config="${{
645
+ disabled: this.config.captureButton.disabled
646
+ }}"
647
+ @jcaptureclick="${Me(this, Ba)}"
648
+ ></x-ds-capture-button>
649
+ <div slot="bottom-left" class="cross-device-container">
650
+ <jumio-sdk-cross-device-button-view
651
+ data-qa-id="cross-device-button-view"
652
+ .config="${this.config.crossDevice}"
653
+ ></jumio-sdk-cross-device-button-view>
654
+ </div>
655
+ ${this.enableCameraSelector ? d`<slot name="camera-selector" slot="camera-selector"></slot>` : b}
656
+ ${Ie(this, pe, gn).call(this)}
657
+ <div class="overlay" slot="overlay" data-qa-id="capture-hints-overlay">
658
+ <jumio-sdk-capture-hints-view
659
+ data-qa-id="capture-hints-view"
660
+ .config="${this.config.captureHints}"
661
+ ></jumio-sdk-capture-hints-view>
662
+ </div>
663
+ </x-app-container>
664
+ `;
665
+ }
666
+ };
667
+ Ue = /* @__PURE__ */ new WeakMap();
668
+ xt = /* @__PURE__ */ new WeakMap();
669
+ pe = /* @__PURE__ */ new WeakSet();
670
+ hn = function() {
671
+ if (!this.config.media.fallbackVisible)
672
+ return b;
673
+ const e = this.config.media.fallbackLabel || c("Starting camera…", {
674
+ id: "camera.message.initializing_camera"
675
+ });
676
+ return d`
677
+ <div class="static-media" data-qa-id="static-media-fallback" role="img" aria-label="${e}">
678
+ <span class="static-media__icon icon-camera-video" aria-hidden="true"></span>
679
+ <span>${e}</span>
680
+ </div>
681
+ `;
682
+ };
683
+ mn = function() {
684
+ return d`
685
+ <x-ds-button
686
+ class="mobile-only"
687
+ slot="top-right"
688
+ data-qa-id="mobile-help-button"
689
+ data-size="${ga.Medium}"
690
+ data-shape="${Sa.Round}"
691
+ data-type="${le.Tertiary}"
692
+ data-padding="false"
693
+ data-aria-label="${c("Help", { id: "cta.help" })}"
694
+ @jclick="${Me(this, ya)}"
695
+ >
696
+ <span class="icon-help" aria-hidden="true"></span>
697
+ </x-ds-button>
698
+ `;
699
+ };
700
+ fn = function() {
701
+ return d`
702
+ <x-ds-button
703
+ class="desktop-only"
704
+ slot="top-right"
705
+ data-qa-id="desktop-help-button"
706
+ data-type="${le.Tertiary}"
707
+ @jclick="${Me(this, ya)}"
708
+ >
709
+ <span>${c("Help", { id: "cta.help" })}</span>
710
+ </x-ds-button>
711
+ `;
712
+ };
713
+ vn = function() {
714
+ return this.config.fullscreenButtonVisible ? d`
715
+ <x-ds-fullscreen-mode-button
716
+ slot="top-right"
717
+ data-qa-id="fullscreen-button"
718
+ .elRef="${this.appContainerRef}"
719
+ ></x-ds-fullscreen-mode-button>
720
+ ` : b;
721
+ };
722
+ gn = function() {
723
+ return this.config.captureState.feedback.message ? d`
724
+ <x-ds-top-message-container slot="overlay" class="capture-state">
725
+ <jumio-sdk-step-facemap-capture-state-view
726
+ data-qa-id="capture-state-view"
727
+ .config="${this.config.captureState}"
728
+ ></jumio-sdk-step-facemap-capture-state-view>
729
+ </x-ds-top-message-container>
730
+ ` : b;
731
+ };
732
+ Ba = /* @__PURE__ */ new WeakMap();
733
+ ya = /* @__PURE__ */ new WeakMap();
734
+ ot.styles = [...p.styles, xe(Jc), xe(Ur)];
735
+ ki([
736
+ te({ type: Boolean })
737
+ ], ot.prototype, "enableCameraSelector", 2);
738
+ ki([
739
+ te({ attribute: !1 })
740
+ ], ot.prototype, "config", 1);
741
+ ot = ki([
742
+ E(),
743
+ F("jumio-sdk-step-facemap-jumio-standard-capture-view")
744
+ ], ot);
745
+ const Ec = ":host{display:contents}.container{max-width:32em;height:100%;margin:0 auto}.container__inner{display:flex;position:relative;height:100%;flex-flow:column nowrap;gap:1em}.illustration{width:8em;height:10em;align-self:center}p{margin:0}.button-container{display:flex;width:100%;max-width:32em;flex-direction:column;align-items:center;justify-content:center;padding-block:1em;gap:1em}.start-btn{display:block;width:100%}";
746
+ var Bc = Object.defineProperty, Ic = Object.getOwnPropertyDescriptor, Sn = (e) => {
747
+ throw TypeError(e);
748
+ }, _n = (e, t, a, s) => {
749
+ for (var i = s > 1 ? void 0 : s ? Ic(t, a) : t, n = e.length - 1, r; n >= 0; n--)
750
+ (r = e[n]) && (i = (s ? r(t, a, i) : r(i)) || i);
751
+ return s && i && Bc(t, a, i), i;
752
+ }, Mi = (e, t, a) => t.has(e) || Sn("Cannot " + a), vt = (e, t, a) => (Mi(e, t, "read from private field"), a ? a.call(e) : t.get(e)), gt = (e, t, a) => t.has(e) ? Sn("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), Ss = (e, t, a, s) => (Mi(e, t, "write to private field"), t.set(e, a), a), Ae = (e, t, a) => (Mi(e, t, "access private method"), a), Ve, Pt, me, yn, wn, bn, Cn, kn, Ia;
753
+ let Kt = class extends p {
754
+ constructor() {
755
+ super(...arguments), gt(this, me), gt(this, Ve, ja(void 0).config), gt(this, Pt, !1), gt(this, Ia, () => {
756
+ this.config.onContinue();
757
+ });
758
+ }
759
+ get config() {
760
+ return vt(this, Ve);
761
+ }
762
+ set config(e) {
763
+ const t = vt(this, Ve), a = ja(e);
764
+ Ss(this, Ve, a.config), Ss(this, Pt, !a.valid), this.requestUpdate("config", t);
765
+ }
766
+ render() {
767
+ return vt(this, Pt) ? d`
768
+ <x-app-container data-qa-id="facemap-introduction-view">
769
+ <div slot="main" role="alert" aria-live="assertive" aria-atomic="true" data-qa-id="invalid-config">
770
+ ${c("Sorry, there was an unexpected error.", { id: "error.unexpected_error" })}
771
+ </div>
772
+ </x-app-container>
773
+ ` : d`
774
+ <x-app-container data-qa-id="facemap-introduction-view">
775
+ ${X(
776
+ "jumio-biometric-guidance-backward-button",
777
+ d`
778
+ <jumio-sdk-navigation-button-view
779
+ slot="top-left"
780
+ data-qa-id="navigation-button-view"
781
+ .config="${this.config.navigationButton}"
782
+ ></jumio-sdk-navigation-button-view>
783
+ `
784
+ )}
785
+ <jumio-sdk-logotype-view
786
+ slot="top-middle"
787
+ data-qa-id="logotype-view"
788
+ .config="${this.config.logotype}"
789
+ ></jumio-sdk-logotype-view>
790
+ <div slot="main" class="container">
791
+ <div class="container__inner">
792
+ ${X("jumio-biometric-guidance-before")} ${Ae(this, me, yn).call(this)}
793
+ ${X("jumio-biometric-guidance-after")}
794
+ <div class="button-container" data-sticky-footer="true">
795
+ <x-ds-button
796
+ class="start-btn"
797
+ data-fluid="true"
798
+ data-qa-id="continue-button"
799
+ @jclick="${vt(this, Ia)}"
800
+ >
801
+ ${c("Continue", {
802
+ id: "cta.continue"
803
+ })}
804
+ </x-ds-button>
805
+ <jumio-sdk-cross-device-button-view
806
+ data-qa-id="cross-device-button-view"
807
+ .config="${this.config.crossDevice}"
808
+ ></jumio-sdk-cross-device-button-view>
809
+ </div>
810
+ </div>
811
+ </div>
812
+ </x-app-container>
813
+ `;
814
+ }
815
+ };
816
+ Ve = /* @__PURE__ */ new WeakMap();
817
+ Pt = /* @__PURE__ */ new WeakMap();
818
+ me = /* @__PURE__ */ new WeakSet();
819
+ yn = function() {
820
+ return X(
821
+ "jumio-biometric-guidance",
822
+ d`${Ae(this, me, wn).call(this)}${Ae(this, me, bn).call(this)}${Ae(this, me, Cn).call(this)}${Ae(this, me, kn).call(this)}`
823
+ );
824
+ };
825
+ wn = function() {
826
+ return X(
827
+ "jumio-biometric-guidance-title",
828
+ d`<h1 tabindex="-1" class="title no-outline">
829
+ ${c("Face Verification", { id: "liveness.face_verification" })}
830
+ </h1>`
831
+ );
832
+ };
833
+ bn = function() {
834
+ return X(
835
+ "jumio-biometric-guidance-explanation",
836
+ d`
837
+ <p class="text-center" data-qa-id="explanation">
838
+ ${c("We need to take a scan of your face to verify your identity and that you are a real person.", {
839
+ id: "instruction.face_scan_required_for_verification"
840
+ })}
841
+ </p>
842
+ `
843
+ );
844
+ };
845
+ Cn = function() {
846
+ return X(
847
+ "jumio-biometric-guidance-illustration",
848
+ d`
849
+ <x-ds-guidance-face-animation
850
+ class="illustration"
851
+ data-qa-id="face-image"
852
+ data-jumio-premium="${this.config.premium}"
853
+ ></x-ds-guidance-face-animation>
854
+ `
855
+ );
856
+ };
857
+ kn = function() {
858
+ return X(
859
+ "jumio-biometric-guidance-checklist",
860
+ d`
861
+ <x-ds-shield-list data-qa-id="checklist">
862
+ <x-ds-shield-list-item slot="item">
863
+ ${c("Your face must be evenly lit and stand out from the background.", {
864
+ id: "instruction.ensure_face_evenly_lit_and_clearly_separated_from_background"
865
+ })}
866
+ </x-ds-shield-list-item>
867
+ <x-ds-shield-list-item slot="item">
868
+ ${c("Look straight into the camera", { id: "instruction.look_straight_into_camera" })}
869
+ </x-ds-shield-list-item>
870
+ ${this.config.premium ? d`
871
+ <x-ds-shield-list-item slot="item">
872
+ ${c("Make sure the screen brightness is set to maximum", {
873
+ id: "instruction.ensure_screen_brightness_set_to_maximum"
874
+ })}
875
+ </x-ds-shield-list-item>
876
+ ` : b}
877
+ </x-ds-shield-list>
878
+ `
879
+ );
880
+ };
881
+ Ia = /* @__PURE__ */ new WeakMap();
882
+ Kt.styles = [...p.styles, xe(Ec)];
883
+ _n([
884
+ te({ attribute: !1 })
885
+ ], Kt.prototype, "config", 1);
886
+ Kt = _n([
887
+ E(),
888
+ F("jumio-sdk-step-facemap-jumio-standard-introduction-view")
889
+ ], Kt);
890
+ const Tc = `:host{display:flex;height:100%;flex-direction:column;justify-content:center}.usability-check{display:flex;height:100%;flex-direction:column;justify-content:center}.title{margin-block:0}.error-icon{width:8em;height:10em;background-position:center center;background-repeat:no-repeat;background-size:contain}.error-icon--eyes-closed,.error-icon--face-obscured{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='128'%20height='160'%20fill='none'%3e%3cmask%20id='A'%20maskUnits='userSpaceOnUse'%20x='0'%20y='-1'%20width='128'%20height='161'%3e%3cpath%20d='M127.111%2080c0%2044.183-28.455%2080.001-63.555%2080.001S0%20124.182%200%2080%2028.455%200%2063.556%200s63.555%2035.817%2063.555%2080z'%20fill='%23f5f7fa'/%3e%3c/mask%3e%3cg%20mask='url(%23A)'%3e%3cpath%20fill-rule='evenodd'%20d='M50.595%20125.35l-.287%204.301c-.257%203.849-.94%207.788-3.219%2010.9-.88%201.202-1.852%202.142-2.74%202.142-1.086%200%20.281%203.111.281%203.111s6.465%203.685%2019.501%203.685%2019.728-3.402%2019.728-3.402%201.042-1.867-1.477-3.394-3.042-4.336-3.042-4.336l-.341-1.598a33.01%2033.01%200%200%201-.656-4.721l-.44-6.688H50.595z'%20fill='%23dfe5ec'/%3e%3cpath%20opacity='.402'%20fill-rule='evenodd'%20d='M50.513%20129.651l.287-4.301h6.935%2020.373l.44%206.688a33.01%2033.01%200%200%200%20.656%204.721l.341%201.598s.483%202.596%202.759%204.154c-.823.207-2.085.192-2.748.184l-.262-.002c-17.205%200-22.484-5.757-25.607-9.163-1.233-1.345-2.13-2.323-3.293-2.436.048-.481.086-.963.119-1.443z'%20fill='%239aa4af'/%3e%3cpath%20d='M98.238%2081.902c0%205.998-1.297%2015.872%203.609%2015.872s14.16-9.874%2014.16-15.872-3.978-10.859-8.885-10.859-8.884%204.862-8.884%2010.859zm-67.345%200c0%205.998%201.298%2015.872-3.609%2015.872s-14.16-9.874-14.16-15.872%203.978-10.859%208.885-10.859%208.885%204.862%208.885%2010.859z'%20fill='%23dfe5ec'/%3e%3cpath%20d='M100.009%2082.407c0%204.123-.884%2010.912%202.46%2010.912s9.651-6.788%209.651-10.912-2.711-7.466-6.056-7.466-6.055%203.343-6.055%207.466zm-70.887%200c0%204.123.884%2010.912-2.46%2010.912s-9.651-6.788-9.651-10.912%202.711-7.466%206.055-7.466%206.055%203.343%206.055%207.466z'%20fill='%23c6cdd5'/%3e%3cpath%20fill-rule='evenodd'%20d='M64.488%2023.149c22.541%200%2040.813%2016.017%2040.813%2035.775v11.005h-.097v5.874c0%20.217.01.579.024%201.07.184%206.58%201.012%2036.174-13.378%2045.481-9.152%205.92-11.972%207.117-13.478%207.757-1.038.441-1.452.616-2.886%201.892-2.907%202.585-4.794%202.563-8.955%202.515l-1.995-.015-1.995.015c-4.139.048-5.953.069-8.859-2.515-1.42-1.263-1.871-1.448-2.925-1.879-1.554-.637-4.418-1.81-13.633-7.77-14.39-9.307-13.562-38.901-13.378-45.481l.024-1.07v-5.874h-.097V58.924c0-19.758%2018.273-35.774%2040.813-35.774z'%20fill='%23dfe5ec'/%3e%3cpath%20fill-rule='evenodd'%20d='M124.764%20172.958H.723c.114-25.609%2024.066-27.457%2045.307-31.164%202.372%203.283%2012.769%205.555%2018.701%205.555%206.037%200%2013.78-2.352%2016.095-5.729%2021.712%203.498%2043.902%205.729%2043.938%2031.338z'%20fill='%23757f8a'/%3e%3crect%20x='7.5'%20y='59'%20width='112'%20height='40'%20rx='18'%20fill='%23c6cdd5'/%3e%3c/g%3e%3cpath%20fill-rule='evenodd'%20d='M5.415%2053.214a.95.95%200%200%201-.913-1.216c5.858-19.73%2017.726-35.769%2032.801-44.587.642-.375%201.437.094%201.437.838%200%20.351-.188.674-.49.851C23.663%2017.643%2012.07%2033.209%206.338%2052.521c-.121.409-.496.693-.923.693zm.106%2053.925a.95.95%200%200%200-.912%201.22c5.894%2019.566%2017.71%2035.464%2032.694%2044.229.642.375%201.437-.095%201.437-.838%200-.351-.188-.674-.491-.851-14.498-8.492-26.038-23.921-31.806-43.071-.123-.407-.497-.689-.922-.689zm117.069%200c-.425%200-.799.282-.922.689-5.767%2019.15-17.308%2034.579-31.806%2043.071-.303.177-.49.5-.49.851%200%20.743.795%201.213%201.437.838%2014.984-8.765%2026.8-24.663%2032.694-44.229a.95.95%200%200%200-.912-1.22zm.106-53.925a.95.95%200%200%200%20.913-1.216c-5.857-19.73-17.726-35.769-32.801-44.587-.642-.375-1.437.094-1.437.838%200%20.351.188.674.49.851%2014.586%208.543%2026.179%2024.109%2031.911%2043.421.122.409.497.693.923.693z'%20fill='%233e4753'/%3e%3c/svg%3e")}.error-icon--face-verification-failed{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='128'%20height='160'%20fill='none'%3e%3cmask%20id='A'%20maskUnits='userSpaceOnUse'%20x='0'%20y='-1'%20width='128'%20height='161'%3e%3cpath%20d='M127.111%2080c0%2044.183-28.455%2080.001-63.555%2080.001S0%20124.182%200%2080%2028.455%200%2063.556%200s63.555%2035.817%2063.555%2080z'%20fill='%23f5f7fa'/%3e%3c/mask%3e%3cg%20mask='url(%23A)'%3e%3cpath%20fill-rule='evenodd'%20d='M50.595%20125.35l-.287%204.301c-.257%203.849-.94%207.788-3.22%2010.9-.88%201.202-1.852%202.142-2.74%202.142-1.086%200%20.28%203.111.28%203.111s6.465%203.685%2019.501%203.685%2019.728-3.402%2019.728-3.402%201.042-1.867-1.477-3.394-3.041-4.336-3.041-4.336l-.341-1.598a33.01%2033.01%200%200%201-.656-4.721l-.44-6.688H50.595z'%20fill='%23dfe5ec'/%3e%3cpath%20opacity='.402'%20fill-rule='evenodd'%20d='M50.513%20129.651l.287-4.301h6.935%2020.373l.44%206.688a33.01%2033.01%200%200%200%20.656%204.721l.341%201.598s.483%202.596%202.759%204.154c-.823.207-2.085.192-2.748.184l-.262-.002c-17.205%200-22.484-5.757-25.607-9.163-1.233-1.345-2.13-2.323-3.293-2.436.048-.481.086-.963.118-1.443z'%20fill='%239aa4af'/%3e%3cpath%20d='M98.238%2081.902c0%205.998-1.297%2015.872%203.609%2015.872s14.16-9.874%2014.16-15.872-3.978-10.859-8.885-10.859-8.884%204.862-8.884%2010.859zm-67.345%200c0%205.998%201.297%2015.872-3.609%2015.872s-14.16-9.874-14.16-15.872%203.978-10.859%208.885-10.859%208.885%204.862%208.885%2010.859z'%20fill='%23dfe5ec'/%3e%3cpath%20d='M100.009%2082.407c0%204.123-.884%2010.912%202.46%2010.912s9.651-6.788%209.651-10.912-2.711-7.466-6.056-7.466-6.055%203.343-6.055%207.466zm-70.887%200c0%204.123.884%2010.912-2.46%2010.912s-9.651-6.788-9.651-10.912%202.711-7.466%206.055-7.466%206.055%203.343%206.055%207.466z'%20fill='%23c6cdd5'/%3e%3cpath%20fill-rule='evenodd'%20d='M64.488%2023.149c22.541%200%2040.813%2016.017%2040.813%2035.775v11.005h-.097v5.874c0%20.217.01.579.024%201.07.184%206.58%201.012%2036.174-13.378%2045.481-9.152%205.92-11.972%207.117-13.477%207.757-1.038.441-1.452.616-2.886%201.892-2.907%202.585-4.794%202.563-8.955%202.515l-1.996-.015-1.995.015c-4.139.048-5.953.069-8.859-2.515-1.42-1.263-1.871-1.448-2.925-1.879-1.554-.637-4.418-1.81-13.633-7.77-14.39-9.307-13.562-38.901-13.378-45.481l.024-1.07v-5.874h-.097V58.924c0-19.758%2018.273-35.774%2040.813-35.774z'%20fill='%23dfe5ec'/%3e%3cpath%20fill-rule='evenodd'%20d='M124.764%20172.958H.723c.114-25.609%2024.066-27.457%2045.307-31.164%202.372%203.283%2012.769%205.555%2018.701%205.555%206.037%200%2013.78-2.352%2016.095-5.729%2021.712%203.498%2043.901%205.729%2043.938%2031.338z'%20fill='%23757f8a'/%3e%3c/g%3e%3cpath%20fill-rule='evenodd'%20d='M4.915%2053.215a.95.95%200%200%201-.913-1.216C9.86%2032.268%2021.728%2016.229%2036.803%207.411c.642-.375%201.437.094%201.437.838%200%20.351-.188.674-.491.851C23.163%2017.644%2011.57%2033.209%205.838%2052.522c-.121.409-.496.693-.923.693zm.106%2053.924a.95.95%200%200%200-.912%201.22c5.894%2019.566%2017.71%2035.465%2032.694%2044.229.642.375%201.437-.094%201.437-.838%200-.351-.188-.674-.491-.851-14.498-8.492-26.038-23.921-31.806-43.071-.123-.407-.497-.689-.922-.689zm117.069%200c-.425%200-.799.282-.922.689-5.767%2019.15-17.308%2034.58-31.806%2043.071-.303.177-.49.5-.49.851%200%20.744.795%201.213%201.437.838%2014.984-8.764%2026.8-24.663%2032.694-44.229a.95.95%200%200%200-.912-1.22zm.106-53.924a.95.95%200%200%200%20.913-1.216c-5.857-19.73-17.726-35.769-32.801-44.587-.642-.375-1.437.094-1.437.838%200%20.351.188.674.49.851%2014.586%208.543%2026.179%2024.109%2031.911%2043.421.122.409.497.693.923.693z'%20fill='%233e4753'/%3e%3c/svg%3e")}.error-icon--multiple-people-detected{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='128'%20height='160'%20fill='none'%3e%3cstyle%3e%3c![CDATA[.B{fill-rule:evenodd}.C{fill:%23c6cdd5}.D{fill:%23dfe5ec}]]%3e%3c/style%3e%3cmask%20id='A'%20maskUnits='userSpaceOnUse'%20x='0'%20y='-1'%20width='128'%20height='161'%3e%3cpath%20d='M127.111%2080c0%2044.183-28.455%2080.001-63.555%2080.001S0%20124.182%200%2080%2028.455%200%2063.556%200s63.555%2035.817%2063.555%2080z'%20fill='%23f5f7fa'/%3e%3c/mask%3e%3cg%20mask='url(%23A)'%3e%3cpath%20d='M73.63%20123.838l-.183%202.765c-.253%203.819-.773%207.864-3.291%2010.745-.58.663-1.184%201.12-1.747%201.12-.908%200%20.234%202.625.234%202.625s5.405%203.109%2016.302%203.109%2016.492-2.871%2016.492-2.871.871-1.574-1.235-2.863-2.543-3.657-2.543-3.657l-.212-1.003c-.326-1.542-.542-3.107-.644-4.68l-.345-5.29H73.63z'%20class='B%20C'/%3e%3cpath%20opacity='.402'%20d='M73.619%20126.603l.183-2.765h5.797%2017.03l.345%205.29c.103%201.573.318%203.138.644%204.68l.212%201.003s.403%202.189%202.306%203.503c-.688.175-1.743.163-2.297.156l-.219-.002c-14.383%200-18.795-4.856-21.406-7.729-1.037-1.141-1.789-1.97-2.769-2.057a53.92%2053.92%200%200%200%20.173-2.079z'%20fill='%239aa4af'%20class='B'/%3e%3cpath%20d='M113.457%2087.186c0%205.059-1.085%2013.389%203.017%2013.389s11.837-8.33%2011.837-13.389-3.326-9.161-7.427-9.161-7.427%204.102-7.427%209.161zm-56.296%200c0%205.059%201.085%2013.389-3.017%2013.389s-11.837-8.33-11.837-13.389%203.325-9.161%207.427-9.161%207.427%204.102%207.427%209.161z'%20class='C'/%3e%3cpath%20d='M114.938%2087.612c0%203.478-.739%209.205%202.056%209.205s8.068-5.727%208.068-9.205-2.267-6.298-5.062-6.298-5.062%202.82-5.062%206.298zm-59.258%200c0%203.478.739%209.205-2.056%209.205s-8.067-5.727-8.067-9.205%202.266-6.298%205.062-6.298%205.062%202.82%205.062%206.298z'%20class='C'/%3e%3cpath%20d='M85.244%2037.623c18.842%200%2034.117%2013.511%2034.117%2030.179v9.284h-.081v4.955c0%20.183.009.489.02.902.154%205.551.846%2030.515-11.183%2038.367-7.65%204.993-10.007%206.004-11.266%206.543-.868.372-1.214.52-2.413%201.596-2.43%202.181-4.008%202.163-7.486%202.122l-1.668-.012-1.667.012c-3.46.041-4.976.059-7.406-2.122-1.187-1.065-1.564-1.221-2.445-1.585-1.299-.537-3.693-1.526-11.396-6.554-12.029-7.852-11.337-32.817-11.183-38.367l.02-.902v-4.955h-.081v-9.284c0-16.667%2015.275-30.179%2034.117-30.179z'%20class='B%20C'/%3e%3cpath%20d='M135.632%20163.999H31.941c.096-21.603%2020.118-23.162%2037.874-26.289%201.982%202.77%2010.674%204.686%2015.633%204.686%205.046%200%2011.519-1.984%2013.454-4.833%2018.151%202.951%2036.698%204.833%2036.731%2026.436z'%20fill='%235c6570'%20class='B'/%3e%3cpath%20d='M38.595%20127.35l-.287%204.301c-.257%203.849-.94%207.788-3.219%2010.9-.88%201.202-1.852%202.142-2.74%202.142-1.086%200%20.281%203.111.281%203.111s6.465%203.685%2019.501%203.685%2019.728-3.402%2019.728-3.402%201.042-1.867-1.477-3.394-3.042-4.336-3.042-4.336l-.341-1.598a33.01%2033.01%200%200%201-.656-4.721l-.44-6.688H38.595z'%20class='B%20D'/%3e%3cpath%20opacity='.402'%20d='M38.513%20131.651l.287-4.301h6.935%2020.373l.44%206.688a33.01%2033.01%200%200%200%20.656%204.721l.341%201.598s.483%202.596%202.759%204.154c-.823.207-2.085.192-2.748.184l-.262-.002c-17.205%200-22.484-5.757-25.607-9.163-1.233-1.345-2.13-2.323-3.293-2.436.048-.481.086-.963.119-1.443z'%20fill='%239aa4af'%20class='B'/%3e%3cpath%20d='M86.238%2083.902c0%205.998-1.297%2015.872%203.609%2015.872s14.16-9.874%2014.16-15.872-3.978-10.859-8.885-10.859-8.885%204.862-8.885%2010.859zm-67.345%200c0%205.998%201.297%2015.872-3.609%2015.872S1.124%2089.9%201.124%2083.902s3.978-10.859%208.885-10.859%208.885%204.862%208.885%2010.859z'%20class='D'/%3e%3cpath%20d='M88.009%2084.407c0%204.123-.884%2010.912%202.46%2010.912s9.651-6.788%209.651-10.912-2.711-7.466-6.056-7.466-6.055%203.343-6.055%207.466zm-70.887%200c0%204.123.884%2010.912-2.46%2010.912s-9.65-6.788-9.65-10.912%202.711-7.466%206.055-7.466%206.055%203.343%206.055%207.466z'%20class='C'/%3e%3cpath%20d='M52.488%2025.149c22.541%200%2040.813%2016.017%2040.813%2035.775v11.005h-.097v5.874c0%20.217.01.579.024%201.07.184%206.58%201.012%2036.174-13.378%2045.481-9.152%205.92-11.972%207.117-13.478%207.757-1.038.441-1.452.616-2.886%201.892-2.907%202.585-4.794%202.563-8.955%202.515l-1.995-.015-1.995.015c-4.139.048-5.953.069-8.859-2.515-1.42-1.263-1.871-1.448-2.925-1.879-1.554-.637-4.418-1.81-13.633-7.77-14.39-9.307-13.562-38.901-13.378-45.481l.024-1.07v-5.874h-.097V60.924c0-19.758%2018.273-35.774%2040.813-35.774z'%20class='B%20D'/%3e%3cpath%20d='M112.764%20174.958H-11.277c.114-25.609%2024.066-27.457%2045.307-31.164%202.372%203.283%2012.769%205.555%2018.701%205.555%206.037%200%2013.78-2.352%2016.095-5.729%2021.713%203.498%2043.902%205.729%2043.938%2031.338z'%20fill='%23757f8a'%20class='B'/%3e%3c/g%3e%3cpath%20d='M4.915%2053.214a.95.95%200%200%201-.913-1.216C9.86%2032.268%2021.728%2016.229%2036.803%207.411c.642-.375%201.437.094%201.437.838%200%20.351-.188.674-.49.851C23.163%2017.643%2011.57%2033.209%205.838%2052.521c-.121.409-.496.693-.923.693zm.106%2053.925a.95.95%200%200%200-.912%201.22c5.894%2019.566%2017.71%2035.464%2032.694%2044.229.642.375%201.437-.095%201.437-.838%200-.351-.188-.674-.491-.851-14.498-8.492-26.038-23.921-31.806-43.071-.123-.407-.497-.689-.922-.689zm117.069%200c-.425%200-.799.282-.922.689-5.767%2019.15-17.308%2034.579-31.806%2043.071-.303.177-.49.5-.49.851%200%20.743.795%201.213%201.437.838%2014.984-8.765%2026.8-24.663%2032.694-44.229a.95.95%200%200%200-.912-1.22zm.106-53.925a.95.95%200%200%200%20.913-1.216c-5.857-19.73-17.726-35.769-32.801-44.587-.642-.375-1.437.094-1.437.838%200%20.351.188.674.49.851%2014.586%208.543%2026.179%2024.109%2031.911%2043.421.122.409.497.693.923.693z'%20fill='%233e4753'%20class='B'/%3e%3c/svg%3e")}.error-icon--too-dark{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='128'%20height='160'%20fill='none'%3e%3cmask%20id='A'%20maskUnits='userSpaceOnUse'%20x='0'%20y='-1'%20width='128'%20height='161'%3e%3cpath%20d='M127.111%2080c0%2044.183-28.455%2080.001-63.555%2080.001S0%20124.182%200%2080%2028.455%200%2063.556%200s63.555%2035.817%2063.555%2080z'%20fill='%23f5f7fa'/%3e%3c/mask%3e%3cg%20mask='url(%23A)'%3e%3cg%20opacity='.6'%3e%3cpath%20fill-rule='evenodd'%20d='M50.595%20125.35l-.287%204.301c-.257%203.849-.94%207.788-3.219%2010.9-.88%201.202-1.852%202.142-2.74%202.142-1.086%200%20.281%203.111.281%203.111s6.465%203.685%2019.501%203.685%2019.728-3.402%2019.728-3.402%201.042-1.867-1.477-3.394-3.041-4.336-3.041-4.336l-.341-1.598a33.01%2033.01%200%200%201-.656-4.721l-.44-6.688H50.595z'%20fill='%23dfe5ec'/%3e%3cpath%20opacity='.402'%20fill-rule='evenodd'%20d='M50.513%20129.651l.287-4.301h6.935%2020.373l.44%206.688a33.01%2033.01%200%200%200%20.656%204.721l.341%201.598s.483%202.596%202.759%204.154c-.823.207-2.085.192-2.748.184l-.262-.002c-17.205%200-22.484-5.757-25.607-9.163-1.233-1.345-2.13-2.323-3.293-2.436.048-.481.086-.963.119-1.443z'%20fill='%239aa4af'/%3e%3cpath%20d='M98.238%2081.902c0%205.998-1.297%2015.872%203.609%2015.872s14.16-9.874%2014.16-15.872-3.978-10.859-8.885-10.859-8.885%204.862-8.885%2010.859zm-67.345%200c0%205.998%201.298%2015.872-3.609%2015.872s-14.16-9.874-14.16-15.872%203.978-10.859%208.885-10.859%208.885%204.862%208.885%2010.859z'%20fill='%23dfe5ec'/%3e%3cpath%20d='M100.009%2082.407c0%204.123-.884%2010.912%202.46%2010.912s9.651-6.788%209.651-10.912-2.711-7.466-6.056-7.466-6.055%203.343-6.055%207.466zm-70.888%200c0%204.123.884%2010.912-2.46%2010.912s-9.651-6.788-9.651-10.912%202.711-7.466%206.055-7.466%206.055%203.343%206.055%207.466z'%20fill='%23c6cdd5'/%3e%3cpath%20fill-rule='evenodd'%20d='M64.487%2023.149c22.541%200%2040.814%2016.017%2040.814%2035.775v11.005h-.097v5.874c0%20.217.01.579.024%201.07.184%206.58%201.012%2036.174-13.378%2045.481-9.152%205.92-11.972%207.117-13.477%207.757-1.038.441-1.452.616-2.886%201.892-2.907%202.585-4.794%202.563-8.955%202.515l-1.996-.015-1.995.015c-4.139.048-5.953.069-8.859-2.515-1.42-1.263-1.871-1.448-2.925-1.879-1.554-.637-4.418-1.81-13.633-7.77-14.39-9.307-13.562-38.901-13.378-45.481l.024-1.07v-5.874h-.097V58.924c0-19.758%2018.273-35.774%2040.813-35.774z'%20fill='%23dfe5ec'/%3e%3cpath%20fill-rule='evenodd'%20d='M124.765%20172.958H.723c.114-25.609%2024.066-27.457%2045.307-31.164%202.372%203.283%2012.769%205.555%2018.701%205.555%206.037%200%2013.78-2.352%2016.095-5.729%2021.712%203.498%2043.901%205.729%2043.939%2031.338z'%20fill='%23757f8a'/%3e%3c/g%3e%3cellipse%20opacity='.6'%20cx='63.556'%20cy='80'%20rx='63.556'%20ry='80'%20fill='%23757f8a'/%3e%3c/g%3e%3cpath%20fill-rule='evenodd'%20d='M4.915%2053.215a.95.95%200%200%201-.913-1.217c5.858-19.73%2017.726-35.769%2032.801-44.587.642-.375%201.437.094%201.437.838%200%20.351-.188.674-.491.851C23.163%2017.644%2011.57%2033.209%205.838%2052.522c-.121.409-.496.693-.923.693zm.106%2053.924a.95.95%200%200%200-.912%201.22c5.894%2019.566%2017.71%2035.465%2032.694%2044.229.642.375%201.437-.094%201.437-.838%200-.351-.188-.674-.491-.851-14.498-8.492-26.038-23.921-31.806-43.071-.123-.407-.497-.689-.922-.689zm117.069%200c-.425%200-.799.282-.922.689-5.768%2019.15-17.308%2034.58-31.806%2043.071-.303.177-.491.5-.491.851%200%20.744.795%201.213%201.437.838%2014.984-8.764%2026.8-24.663%2032.694-44.229a.95.95%200%200%200-.912-1.22zm.106-53.924a.95.95%200%200%200%20.913-1.217c-5.858-19.73-17.726-35.769-32.801-44.587-.642-.375-1.437.094-1.437.838%200%20.351.188.674.491.851%2014.586%208.543%2026.179%2024.109%2031.911%2043.421.121.409.497.693.923.693z'%20fill='%233e4753'/%3e%3c/svg%3e")}.error-icon--too-much-light{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='128'%20height='160'%20fill='none'%3e%3cstyle%3e%3c![CDATA[.B{fill-rule:evenodd}.C{fill:%23dfe5ec}]]%3e%3c/style%3e%3cmask%20id='A'%20maskUnits='userSpaceOnUse'%20x='0'%20y='-1'%20width='128'%20height='161'%3e%3cpath%20d='M127.111%2080c0%2044.183-28.455%2080.001-63.555%2080.001S0%20124.182%200%2080%2028.455%200%2063.556%200s63.555%2035.817%2063.555%2080z'%20fill='%23f5f7fa'/%3e%3c/mask%3e%3cg%20mask='url(%23A)'%3e%3cellipse%20cx='63.556'%20cy='80'%20rx='63.556'%20ry='80'%20fill='%23f5f7fa'/%3e%3cg%20opacity='.6'%3e%3cpath%20d='M50.595%20125.35l-.287%204.301c-.257%203.849-.94%207.788-3.219%2010.9-.88%201.202-1.852%202.142-2.74%202.142-1.086%200%20.281%203.111.281%203.111s6.465%203.685%2019.501%203.685%2019.728-3.402%2019.728-3.402%201.042-1.867-1.477-3.394-3.041-4.336-3.041-4.336l-.341-1.598a33.01%2033.01%200%200%201-.656-4.721l-.44-6.688H50.595z'%20class='B%20C'/%3e%3cpath%20opacity='.402'%20d='M50.513%20129.651l.287-4.301h6.935%2020.373l.44%206.688a33.01%2033.01%200%200%200%20.656%204.721l.341%201.598s.483%202.596%202.759%204.154c-.823.207-2.085.192-2.748.184l-.262-.002c-17.205%200-22.484-5.757-25.607-9.163-1.233-1.345-2.13-2.323-3.293-2.436.048-.481.086-.963.119-1.443z'%20fill='%239aa4af'%20class='B'/%3e%3cpath%20d='M98.238%2081.902c0%205.998-1.297%2015.872%203.609%2015.872s14.16-9.874%2014.16-15.872-3.978-10.859-8.885-10.859-8.885%204.862-8.885%2010.859zm-67.345%200c0%205.998%201.298%2015.872-3.609%2015.872s-14.16-9.874-14.16-15.872%203.978-10.859%208.885-10.859%208.885%204.862%208.885%2010.859z'%20class='C'/%3e%3cpath%20d='M100.009%2082.407c0%204.123-.884%2010.912%202.46%2010.912s9.651-6.788%209.651-10.912-2.711-7.466-6.056-7.466-6.055%203.343-6.055%207.466zm-70.888%200c0%204.123.884%2010.912-2.46%2010.912s-9.651-6.788-9.651-10.912%202.711-7.466%206.055-7.466%206.055%203.343%206.055%207.466z'%20fill='%23c6cdd5'/%3e%3cpath%20d='M64.487%2023.149c22.541%200%2040.814%2016.017%2040.814%2035.775v11.005h-.097v5.874c0%20.217.01.579.024%201.07.184%206.58%201.012%2036.174-13.378%2045.481-9.152%205.92-11.972%207.117-13.477%207.757-1.038.441-1.452.616-2.886%201.892-2.907%202.585-4.794%202.563-8.955%202.515l-1.996-.015-1.995.015c-4.139.048-5.953.069-8.859-2.515-1.42-1.263-1.871-1.448-2.925-1.879-1.554-.637-4.418-1.81-13.633-7.77-14.39-9.307-13.562-38.901-13.378-45.481l.024-1.07v-5.874h-.097V58.924c0-19.758%2018.273-35.774%2040.813-35.774z'%20class='B%20C'/%3e%3cpath%20d='M124.765%20172.958H.723c.114-25.609%2024.066-27.457%2045.307-31.164%202.372%203.283%2012.769%205.555%2018.701%205.555%206.037%200%2013.78-2.352%2016.095-5.729%2021.712%203.498%2043.901%205.729%2043.939%2031.338z'%20fill='%23757f8a'%20class='B'/%3e%3c/g%3e%3cellipse%20opacity='.2'%20cx='63.556'%20cy='80'%20rx='63.556'%20ry='80'%20class='C'/%3e%3cg%20style='mix-blend-mode:lighten'%3e%3cellipse%20cx='63.556'%20cy='80'%20rx='63.556'%20ry='80'%20fill='url(%23B)'/%3e%3c/g%3e%3c/g%3e%3cpath%20d='M4.915%2053.215a.95.95%200%200%201-.913-1.216c5.858-19.73%2017.726-35.769%2032.801-44.587.642-.375%201.437.094%201.437.838%200%20.351-.188.674-.491.851C23.163%2017.644%2011.57%2033.209%205.838%2052.522c-.121.409-.496.693-.923.693zm.106%2053.924a.95.95%200%200%200-.912%201.22c5.894%2019.566%2017.71%2035.465%2032.694%2044.229.642.375%201.437-.094%201.437-.838%200-.351-.188-.674-.491-.851-14.498-8.492-26.038-23.921-31.806-43.071-.123-.407-.497-.689-.922-.689zm117.069%200c-.425%200-.799.282-.922.689-5.768%2019.15-17.308%2034.58-31.806%2043.071-.303.177-.491.5-.491.851%200%20.744.795%201.213%201.437.838%2014.984-8.764%2026.8-24.663%2032.694-44.229a.95.95%200%200%200-.912-1.22zm.106-53.924a.95.95%200%200%200%20.913-1.216c-5.858-19.73-17.726-35.769-32.801-44.587-.642-.375-1.437.094-1.437.838%200%20.351.188.674.491.851%2014.586%208.543%2026.179%2024.109%2031.911%2043.421.121.409.497.693.923.693z'%20fill='%233e4753'%20class='B'/%3e%3cdefs%3e%3cradialGradient%20id='B'%20cx='0'%20cy='0'%20r='1'%20gradientUnits='userSpaceOnUse'%20gradientTransform='translate(63.5556%2079.9995)%20rotate(90)%20scale(80%2063.5556)'%3e%3cstop%20stop-color='%23fff'/%3e%3cstop%20offset='1'%20stop-color='%23fff'%20stop-opacity='0'/%3e%3c/radialGradient%3e%3c/defs%3e%3c/svg%3e")}.error-icon--too-much-movement{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='128'%20height='160'%20fill='none'%3e%3cmask%20id='A'%20maskUnits='userSpaceOnUse'%20x='0'%20y='-1'%20width='128'%20height='161'%3e%3cpath%20d='M127.111%2080c0%2044.183-28.455%2080.001-63.555%2080.001S0%20124.182%200%2080%2028.455%200%2063.556%200s63.555%2035.817%2063.555%2080z'%20fill='%23f5f7fa'/%3e%3c/mask%3e%3cg%20mask='url(%23A)'%3e%3cpath%20fill-rule='evenodd'%20d='M43.974%20133.845l.389%204.293c.348%203.842.289%207.839-1.475%2011.27-.681%201.325-1.494%202.405-2.371%202.544-1.073.17.764%203.029.764%203.029s6.962%202.628%2019.838.589%2018.953-6.447%2018.953-6.447.737-2.006-1.99-3.121-3.682-3.806-3.682-3.806l-.587-1.526c-.571-1.484-1.035-3.009-1.386-4.56l-1.481-6.537-26.972%204.272z'%20fill='%23dfe5ec'/%3e%3cpath%20opacity='.402'%20fill-rule='evenodd'%20d='M44.565%20138.106l-.389-4.293%206.85-1.085%2020.122-3.187%201.481%206.537c.352%201.551.815%203.076%201.386%204.56l.587%201.525s.883%202.489%203.374%203.671c-.78.333-2.029.516-2.685.612l-.259.039c-16.994%202.692-23.108-2.169-26.725-5.044-1.428-1.135-2.467-1.961-3.633-1.891-.028-.483-.065-.964-.109-1.444z'%20fill='%239aa4af'/%3e%3cpath%20d='M84.233%2083.479c.938%205.924%201.201%2015.879%206.048%2015.111s12.441-11.968%2011.503-17.891-5.628-10.103-10.474-9.336-8.015%206.192-7.076%2012.116zM17.718%2094.014c.938%205.924%203.764%2015.473-1.082%2016.241S1.106%20102.718.168%2096.794s2.23-11.348%207.076-12.116%209.536%203.412%2010.474%209.336z'%20fill='%23dfe5ec'/%3e%3cpath%20d='M86.062%2083.701c.645%204.073.834%2010.916%204.137%2010.393s8.47-8.215%207.825-12.287-3.846-6.95-7.149-6.427-5.458%204.249-4.813%208.321zM16.047%2094.79c.645%204.073%202.58%2010.639-.723%2011.162S4.73%20100.757%204.085%2096.684s1.51-7.798%204.813-8.321%206.504%202.354%207.149%206.427z'%20fill='%23c6cdd5'/%3e%3cpath%20fill-rule='evenodd'%20d='M41.708%2030.73c22.263-3.526%2042.817%209.435%2045.907%2028.949l1.722%2010.869-.096.015.919%205.801c.034.214.101.571.191%201.053%201.211%206.47%206.658%2035.57-6.098%2047.014-8.113%207.278-10.711%208.902-12.098%209.769-.957.598-1.338.836-2.555%202.32-2.466%203.008-4.334%203.282-8.451%203.885l-1.973.298-1.968.327c-4.081.695-5.869.999-9.143-1.099-1.6-1.025-2.075-1.137-3.183-1.398-1.634-.386-4.646-1.096-14.68-5.542-15.669-6.941-19.481-36.3-20.328-42.828l-.144-1.06-.919-5.801-.096.015-1.722-10.869C3.903%2052.934%2019.445%2034.256%2041.708%2030.73z'%20fill='%23dfe5ec'/%3e%3cpath%20fill-rule='evenodd'%20d='M124.678%20169.264L2.164%20188.669c-3.893-25.312%2019.475-30.884%2039.874-37.868%202.856%202.871%2013.481%203.489%2019.34%202.561%205.962-.944%2013.243-4.479%2015-8.176%2021.993.058%2044.258-1.209%2048.301%2024.078z'%20fill='%23757f8a'/%3e%3c/g%3e%3cpath%20fill-rule='evenodd'%20d='M4.915%2053.214a.95.95%200%200%201-.913-1.216C9.86%2032.268%2021.728%2016.229%2036.803%207.411c.642-.375%201.437.094%201.437.838%200%20.351-.188.674-.49.851C23.163%2017.643%2011.57%2033.209%205.838%2052.522c-.121.409-.496.693-.923.693zm.106%2053.925a.95.95%200%200%200-.912%201.22c5.894%2019.566%2017.71%2035.464%2032.694%2044.229.642.375%201.437-.095%201.437-.838%200-.351-.188-.674-.49-.851-14.498-8.492-26.038-23.921-31.806-43.071-.123-.407-.497-.689-.922-.689zm117.069%200c-.425%200-.799.282-.922.689-5.768%2019.15-17.308%2034.579-31.806%2043.071-.303.177-.49.5-.49.851%200%20.743.795%201.213%201.437.838%2014.984-8.765%2026.8-24.663%2032.694-44.229a.95.95%200%200%200-.912-1.22zm.106-53.925a.95.95%200%200%200%20.913-1.216c-5.857-19.73-17.726-35.769-32.801-44.587-.642-.375-1.437.094-1.437.838%200%20.351.188.674.49.851%2014.586%208.543%2026.179%2024.109%2031.911%2043.421.122.409.497.693.923.693z'%20fill='%233e4753'/%3e%3c/svg%3e")}.button{display:block;width:100%}`;
891
+ var zc = Object.defineProperty, Wc = Object.getOwnPropertyDescriptor, $n = (e) => {
892
+ throw TypeError(e);
893
+ }, Mn = (e, t, a, s) => {
894
+ for (var i = s > 1 ? void 0 : s ? Wc(t, a) : t, n = e.length - 1, r; n >= 0; n--)
895
+ (r = e[n]) && (i = (s ? r(t, a, i) : r(i)) || i);
896
+ return s && i && zc(t, a, i), i;
897
+ }, Fi = (e, t, a) => t.has(e) || $n("Cannot " + a), St = (e, t, a) => (Fi(e, t, "read from private field"), a ? a.call(e) : t.get(e)), _t = (e, t, a) => t.has(e) ? $n("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), _s = (e, t, a, s) => (Fi(e, t, "write to private field"), t.set(e, a), a), Oc = (e, t, a) => (Fi(e, t, "access private method"), a), Re, Jt, Ta, Fn, za;
898
+ let Xt = class extends p {
899
+ constructor() {
900
+ super(...arguments), _t(this, Ta), _t(this, Re, Da(void 0).config), _t(this, Jt, !1), _t(this, za, () => {
901
+ this.config.onRetry();
902
+ });
903
+ }
904
+ get config() {
905
+ return St(this, Re);
906
+ }
907
+ set config(e) {
908
+ const t = St(this, Re), a = Da(e);
909
+ _s(this, Re, a.config), _s(this, Jt, !a.valid), this.requestUpdate("config", t);
910
+ }
911
+ render() {
912
+ return St(this, Jt) ? d`
913
+ <x-app-container data-qa-id="facemap-usability-view">
914
+ <div slot="main" role="alert" aria-live="assertive" aria-atomic="true" data-qa-id="invalid-config">
915
+ ${c("Sorry, there was an unexpected error.", { id: "error.unexpected_error" })}
916
+ </div>
917
+ </x-app-container>
918
+ ` : d`
919
+ <x-app-container data-qa-id="facemap-usability-view">
920
+ <jumio-sdk-navigation-button-view
921
+ slot="top-left"
922
+ data-qa-id="navigation-button-view"
923
+ .config="${this.config.navigationButton}"
924
+ ></jumio-sdk-navigation-button-view>
925
+ <jumio-sdk-logotype-view
926
+ slot="top-middle"
927
+ data-qa-id="logotype-view"
928
+ .config="${this.config.logotype}"
929
+ ></jumio-sdk-logotype-view>
930
+ <x-ds-usability-check slot="main" class="usability-check">
931
+ <h1 slot="title" class="title no-outline" data-qa-id="title" tabindex="-1">${this.config.title}</h1>
932
+ <div slot="item" data-qa-id="error-icon" class="error-icon error-icon--${this.config.illustration}"></div>
933
+ <x-ds-card-list slot="item" data-qa-id="items">
934
+ ${this.config.instructions.map((e) => d`<li slot="item">${e}</li>`)}
935
+ </x-ds-card-list>
936
+ <x-ds-button slot="button" class="button" data-qa-id="retry-button" @jclick="${St(this, za)}">
937
+ ${this.config.retryLabel}
938
+ </x-ds-button>
939
+ ${Oc(this, Ta, Fn).call(this, this.config.crossDevice, "button")}
940
+ </x-ds-usability-check>
941
+ </x-app-container>
942
+ `;
943
+ }
944
+ };
945
+ Re = /* @__PURE__ */ new WeakMap();
946
+ Jt = /* @__PURE__ */ new WeakMap();
947
+ Ta = /* @__PURE__ */ new WeakSet();
948
+ Fn = function(e, t) {
949
+ return d`
950
+ <jumio-sdk-cross-device-button
951
+ slot="${t ?? b}"
952
+ class="${t ? "button" : b}"
953
+ data-qa-id="cross-device-button"
954
+ data-compatibility-projection
955
+ data-fluid="${e.fluid}"
956
+ data-type="${e.type}"
957
+ data-size="${e.size}"
958
+ >
959
+ <jumio-sdk-cross-device-button-view
960
+ data-qa-id="cross-device-button-view"
961
+ data-compatibility-projection
962
+ .config="${e}"
963
+ ></jumio-sdk-cross-device-button-view>
964
+ </jumio-sdk-cross-device-button>
965
+ `;
966
+ };
967
+ za = /* @__PURE__ */ new WeakMap();
968
+ Xt.styles = [...p.styles, xe(Tc)];
969
+ Mn([
970
+ te({ attribute: !1 })
971
+ ], Xt.prototype, "config", 1);
972
+ Xt = Mn([
973
+ E(),
974
+ F("jumio-sdk-step-facemap-usability-check-view")
975
+ ], Xt);
976
+ var Uc = Object.defineProperty, Ac = Object.getOwnPropertyDescriptor, Ln = (e) => {
977
+ throw TypeError(e);
978
+ }, xn = (e, t, a, s) => {
979
+ for (var i = s > 1 ? void 0 : s ? Ac(t, a) : t, n = e.length - 1, r; n >= 0; n--)
980
+ (r = e[n]) && (i = (s ? r(t, a, i) : r(i)) || i);
981
+ return s && i && Uc(t, a, i), i;
982
+ }, Li = (e, t, a) => t.has(e) || Ln("Cannot " + a), $a = (e, t, a) => (Li(e, t, "read from private field"), a ? a.call(e) : t.get(e)), Ma = (e, t, a) => t.has(e) ? Ln("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), ys = (e, t, a, s) => (Li(e, t, "write to private field"), t.set(e, a), a), Vc = (e, t, a) => (Li(e, t, "access private method"), a), qe, jt, Wa, Pn;
983
+ let Yt = class extends p {
984
+ constructor() {
985
+ super(...arguments), Ma(this, Wa), Ma(this, qe, Ea(void 0).config), Ma(this, jt, !1);
986
+ }
987
+ get config() {
988
+ return $a(this, qe);
989
+ }
990
+ set config(e) {
991
+ const t = $a(this, qe), a = Ea(e);
992
+ ys(this, qe, a.config), ys(this, jt, !a.valid), this.requestUpdate("config", t);
993
+ }
994
+ render() {
995
+ if ($a(this, jt))
996
+ return d`
997
+ <x-app-container data-qa-id="facemap-jumio-standard-view">
998
+ <div slot="main" role="alert" aria-live="assertive" aria-atomic="true" data-qa-id="invalid-config">
999
+ ${c("Sorry, there was an unexpected error.", { id: "error.unexpected_error" })}
1000
+ </div>
1001
+ </x-app-container>
1002
+ `;
1003
+ switch (this.config.state) {
1004
+ case "empty":
1005
+ return b;
1006
+ case "introduction":
1007
+ return d`
1008
+ <jumio-sdk-step-facemap-jumio-standard-introduction-view
1009
+ data-qa-id="facemap-introduction-view"
1010
+ .config="${this.config.introduction}"
1011
+ ></jumio-sdk-step-facemap-jumio-standard-introduction-view>
1012
+ `;
1013
+ case "capture":
1014
+ return d`
1015
+ <jumio-sdk-step-facemap-jumio-standard-capture-view
1016
+ data-qa-id="facemap-capture-view"
1017
+ .config="${this.config.capture}"
1018
+ ></jumio-sdk-step-facemap-jumio-standard-capture-view>
1019
+ `;
1020
+ case "usability":
1021
+ return d`
1022
+ <jumio-sdk-step-facemap-usability-check-view
1023
+ data-qa-id="facemap-usability-view"
1024
+ .config="${this.config.usability}"
1025
+ ></jumio-sdk-step-facemap-usability-check-view>
1026
+ `;
1027
+ case "upload-failure":
1028
+ return Vc(this, Wa, Pn).call(this);
1029
+ }
1030
+ }
1031
+ };
1032
+ qe = /* @__PURE__ */ new WeakMap();
1033
+ jt = /* @__PURE__ */ new WeakMap();
1034
+ Wa = /* @__PURE__ */ new WeakSet();
1035
+ Pn = function() {
1036
+ return this.config.state !== "upload-failure" ? b : d`
1037
+ <x-app-container data-qa-id="facemap-jumio-standard-view">
1038
+ <jumio-sdk-file-upload-retry-view
1039
+ slot="main"
1040
+ data-qa-id="file-upload-failed-step"
1041
+ role="alert"
1042
+ aria-live="assertive"
1043
+ aria-atomic="true"
1044
+ .config="${this.config.uploadFailure.retry}"
1045
+ ></jumio-sdk-file-upload-retry-view>
1046
+ <jumio-sdk-cross-device-button-view
1047
+ slot="bottom-left"
1048
+ data-qa-id="cross-device-button-view"
1049
+ .config="${this.config.uploadFailure.crossDevice}"
1050
+ ></jumio-sdk-cross-device-button-view>
1051
+ </x-app-container>
1052
+ `;
1053
+ };
1054
+ Yt.styles = [
1055
+ ...p.styles,
1056
+ O`
1057
+ :host {
1058
+ display: contents;
1059
+ }
1060
+ `
1061
+ ];
1062
+ xn([
1063
+ te({ attribute: !1 })
1064
+ ], Yt.prototype, "config", 1);
1065
+ Yt = xn([
1066
+ E(),
1067
+ F("jumio-sdk-step-facemap-jumio-standard-view")
1068
+ ], Yt);
1069
+ var Rc = Object.defineProperty, qc = Object.getOwnPropertyDescriptor, Jn = (e) => {
1070
+ throw TypeError(e);
1071
+ }, jn = (e, t, a, s) => {
1072
+ for (var i = s > 1 ? void 0 : s ? qc(t, a) : t, n = e.length - 1, r; n >= 0; n--)
1073
+ (r = e[n]) && (i = (s ? r(t, a, i) : r(i)) || i);
1074
+ return s && i && Rc(t, a, i), i;
1075
+ }, Dn = (e, t, a) => t.has(e) || Jn("Cannot " + a), Fa = (e, t, a) => (Dn(e, t, "read from private field"), a ? a.call(e) : t.get(e)), ws = (e, t, a) => t.has(e) ? Jn("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), bs = (e, t, a, s) => (Dn(e, t, "write to private field"), t.set(e, a), a), Ne, Dt;
1076
+ let Qt = class extends p {
1077
+ constructor() {
1078
+ super(...arguments), ws(this, Ne, fs(void 0).config), ws(this, Dt, !1);
1079
+ }
1080
+ get config() {
1081
+ return Fa(this, Ne);
1082
+ }
1083
+ set config(e) {
1084
+ const t = Fa(this, Ne), a = fs(e);
1085
+ bs(this, Ne, a.config), bs(this, Dt, !a.valid), this.requestUpdate("config", t);
1086
+ }
1087
+ // TODO: remove this component as this is not reachable once the non-standard `face_standard` template is gone
1088
+ render() {
1089
+ if (Fa(this, Dt))
1090
+ return d`
1091
+ <x-app-container data-qa-id="facemap-view">
1092
+ <div slot="main" role="alert" aria-live="assertive" aria-atomic="true" data-qa-id="invalid-config">
1093
+ ${c("Sorry, there was an unexpected error.", { id: "error.unexpected_error" })}
1094
+ </div>
1095
+ </x-app-container>
1096
+ `;
1097
+ switch (this.config.state) {
1098
+ case "empty":
1099
+ return b;
1100
+ case "jumio-standard":
1101
+ return X(
1102
+ "face_standard",
1103
+ d`
1104
+ <jumio-sdk-step-facemap-jumio-standard-view
1105
+ data-qa-id="jumio-standard-view"
1106
+ .config="${this.config.jumioStandard}"
1107
+ ></jumio-sdk-step-facemap-jumio-standard-view>
1108
+ `
1109
+ );
1110
+ }
1111
+ }
1112
+ };
1113
+ Ne = /* @__PURE__ */ new WeakMap();
1114
+ Dt = /* @__PURE__ */ new WeakMap();
1115
+ Qt.styles = [
1116
+ ...p.styles,
1117
+ O`
1118
+ :host {
1119
+ display: contents;
1120
+ }
1121
+ `
1122
+ ];
1123
+ jn([
1124
+ te({ attribute: !1 })
1125
+ ], Qt.prototype, "config", 1);
1126
+ Qt = jn([
1127
+ E(),
1128
+ F("jumio-sdk-step-facemap-view")
1129
+ ], Qt);
1130
+ class Nc {
1131
+ #t;
1132
+ #e = new J();
1133
+ constructor(t) {
1134
+ this.#t = t, this.#t.addController(this);
1135
+ }
1136
+ hostConnected() {
1137
+ this.#a().pipe(g(this.#e)).subscribe();
1138
+ }
1139
+ hostDisconnected() {
1140
+ this.#e.next();
1141
+ }
1142
+ #a() {
1143
+ return de().pipe(
1144
+ ma(S().getConfiguration().selectSettings$()),
1145
+ m(([t, { merchantSettings: a }]) => {
1146
+ const s = D(), i = j(_());
1147
+ switch (t) {
1148
+ case u.JumioStandard:
1149
+ s.send({
1150
+ type: a?.skipLivenessGuidancePage ? i.JumioStandardCaptureScreen : i.JumioStandardGuidance
1151
+ });
1152
+ break;
1153
+ case u.JumioStandardFinish:
1154
+ s.send({ type: i.Finish });
1155
+ break;
1156
+ }
1157
+ })
1158
+ );
1159
+ }
1160
+ }
1161
+ var Hc = Object.defineProperty, Gc = Object.getOwnPropertyDescriptor, En = (e) => {
1162
+ throw TypeError(e);
1163
+ }, Bn = (e, t, a, s) => {
1164
+ for (var i = s > 1 ? void 0 : s ? Gc(t, a) : t, n = e.length - 1, r; n >= 0; n--)
1165
+ (r = e[n]) && (i = (s ? r(t, a, i) : r(i)) || i);
1166
+ return s && i && Hc(t, a, i), i;
1167
+ }, xi = (e, t, a) => t.has(e) || En("Cannot " + a), he = (e, t, a) => (xi(e, t, "read from private field"), a ? a.call(e) : t.get(e)), ne = (e, t, a) => t.has(e) ? En("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), In = (e, t, a, s) => (xi(e, t, "write to private field"), t.set(e, a), a), fe = (e, t, a) => (xi(e, t, "access private method"), a), Pi, Ji, ji, Di, Ei, Zt, ea, K, Tn, zn, Wn, Oa, On, Un;
1168
+ let ta = class extends p {
1169
+ constructor() {
1170
+ super(...arguments), ne(this, K), ne(this, Pi, new ri(this)), ne(this, Ji, new js(this)), ne(this, ji, new $(this, oi())), ne(this, Di, new $(this, ci())), ne(this, Ei, ge(
1171
+ this,
1172
+ li(),
1173
+ !0
1174
+ )), ne(this, Zt), ne(this, ea);
1175
+ }
1176
+ render() {
1177
+ return fe(this, K, Un).call(this), d`
1178
+ <jumio-sdk-step-facemap-jumio-standard-introduction-view
1179
+ data-qa-id="facemap-introduction-view"
1180
+ .config="${fe(this, K, Tn).call(this)}"
1181
+ ></jumio-sdk-step-facemap-jumio-standard-introduction-view>
1182
+ `;
1183
+ }
1184
+ };
1185
+ Pi = /* @__PURE__ */ new WeakMap();
1186
+ Ji = /* @__PURE__ */ new WeakMap();
1187
+ ji = /* @__PURE__ */ new WeakMap();
1188
+ Di = /* @__PURE__ */ new WeakMap();
1189
+ Ei = /* @__PURE__ */ new WeakMap();
1190
+ Zt = /* @__PURE__ */ new WeakMap();
1191
+ ea = /* @__PURE__ */ new WeakMap();
1192
+ K = /* @__PURE__ */ new WeakSet();
1193
+ Tn = function() {
1194
+ const e = he(this, ji).value, t = di({
1195
+ hasHistoryItems: this.navigationService?.hasHistoryItems() ?? !1,
1196
+ isCrossDeviceScreen: e?.activeScreen === pi.CrossDevice,
1197
+ forceCrossDeviceDisplay: ui()
1198
+ }), a = t ? void 0 : fe(this, K, Oa).call(this);
1199
+ return {
1200
+ premium: fe(this, K, On).call(this),
1201
+ navigationButton: {
1202
+ hasBackNavigation: t,
1203
+ showBackButton: he(this, Di).value ?? !0,
1204
+ type: le.Quiet,
1205
+ shape: Sa.Round,
1206
+ localeSelection: {
1207
+ visible: !t && he(this, Ei).value,
1208
+ locales: a?.getLocales() ?? [],
1209
+ selectedLocale: he(this, ea) ?? a?.getSelectedLocale(),
1210
+ selectType: hi.Default,
1211
+ onLocaleSelect: (s) => {
1212
+ In(this, ea, s), fe(this, K, Oa).call(this).updateLocale(s), this.requestUpdate();
1213
+ }
1214
+ },
1215
+ onBack: () => {
1216
+ this.navigationService?.back();
1217
+ }
1218
+ },
1219
+ logotype: {
1220
+ logoFromSettings: he(this, Ji).getLogoFromSettings()
1221
+ },
1222
+ crossDevice: {
1223
+ visible: he(this, Pi).value,
1224
+ fluid: !0,
1225
+ type: le.Quiet,
1226
+ size: ga.Medium,
1227
+ onCrossDeviceStart: () => {
1228
+ mi(this);
1229
+ }
1230
+ },
1231
+ onContinue: () => {
1232
+ fe(this, K, zn).call(this);
1233
+ }
1234
+ };
1235
+ };
1236
+ zn = function() {
1237
+ const e = D(), t = j(_());
1238
+ e.send({
1239
+ type: t.JumioStandardCaptureScreen
1240
+ });
1241
+ };
1242
+ Wn = function() {
1243
+ return S().getControllerById(w.Facemap);
1244
+ };
1245
+ Oa = function() {
1246
+ return he(this, Zt) ?? In(this, Zt, new fi(this));
1247
+ };
1248
+ On = function() {
1249
+ return fe(this, K, Wn).call(this).getActiveFaceVerificationMethod() === ae.JumioPremium;
1250
+ };
1251
+ Un = function() {
1252
+ ie("jumio-biometric-guidance-backward-button"), ie("jumio-biometric-guidance-before"), ie("jumio-biometric-guidance"), ie("jumio-biometric-guidance-title"), ie("jumio-biometric-guidance-explanation"), ie("jumio-biometric-guidance-illustration"), ie("jumio-biometric-guidance-checklist"), ie("jumio-biometric-guidance-after");
1253
+ };
1254
+ ta.styles = [
1255
+ ...p.styles,
1256
+ O`
1257
+ :host {
1258
+ display: contents;
1259
+ }
1260
+ `
1261
+ ];
1262
+ Bn([
1263
+ vi({ context: gi, subscribe: !0 })
1264
+ ], ta.prototype, "navigationService", 2);
1265
+ ta = Bn([
1266
+ E(),
1267
+ F("jumio-sdk-step-facemap-jumio-standard-introduction")
1268
+ ], ta);
1269
+ const An = (e) => e === u.JumioStandardCaptureScreenSelfie, Kc = (e) => An(e), Xc = (e) => {
1270
+ const t = {
1271
+ [u.JumioStandardCaptureScreenLivenessLoading]: {
1272
+ text: c("Loading", { id: "status.loading" }),
1273
+ progress: 0
1274
+ },
1275
+ [u.JumioStandardCaptureScreenSelfie]: {
1276
+ text: c("Face Verification", { id: "liveness.face_verification" }),
1277
+ progress: 0
1278
+ },
1279
+ [u.JumioStandardCaptureScreenCaptureFinish]: {
1280
+ text: c("Scanning completed", { id: "liveness.prompt.scanning_completed" }),
1281
+ progress: 100
1282
+ }
1283
+ }, a = e ? t[e] : void 0;
1284
+ return {
1285
+ feedback: {
1286
+ ...a ? { message: a } : {}
1287
+ }
1288
+ };
1289
+ }, Yc = (e) => Si(
1290
+ Hr().pipe(
1291
+ ma(e),
1292
+ nt(([t, a]) => a > t)
1293
+ )
1294
+ ), Qc = async (e) => {
1295
+ const t = S(), a = D(), s = j(_());
1296
+ return a.send({ type: s.JumioStandardCaptureScreenUpload }), await t.getControllerById(w.Facemap).uploadDataAsync(e);
1297
+ }, Zc = async ({
1298
+ uploadResponse: e,
1299
+ workflowStepFacemapController: t,
1300
+ stateManager: a
1301
+ }) => {
1302
+ const s = j(_()), i = S().getControllerById(w.Facemap);
1303
+ try {
1304
+ Pa.showMessageIfPossible({
1305
+ type: Ds.Progress,
1306
+ id: Ut.UsabilityCheck,
1307
+ message: c("Working on it…", { id: "feedback.loading.message1" }),
1308
+ overlay: !0,
1309
+ closable: !0
1310
+ }), a.send({ type: s.JumioStandardUsabilityCheck });
1311
+ const [n] = Object.entries(e?.usabilityResultKeys ?? {}), [r, L = ""] = n ?? [], R = await S().getControllerById(w.Facemap).checkUsabilityAsync({
1312
+ id: r,
1313
+ usability: {
1314
+ resultKey: L
1315
+ }
1316
+ });
1317
+ return R.decisionType === Rr.PASS || await Yc(i.selectLivenessAttempt$()) ? a.send({ type: s.JumioStandardUsabilityCheckSuccess }) : (t.setLivenessStoreToNextAttempt(), a.send({ type: s.JumioStandardUsabilityCheckFailure })), R;
1318
+ } catch {
1319
+ a.send({ type: s.JumioStandardUsabilityCheckSuccess });
1320
+ return;
1321
+ } finally {
1322
+ await qr(() => {
1323
+ }, Math.max(Nr, 2e3)), Pa.closeActiveClosableMessageById(Ut.UsabilityCheck);
1324
+ }
1325
+ }, e2 = (e) => {
1326
+ switch (e) {
1327
+ case st.Front:
1328
+ return os;
1329
+ case st.Back:
1330
+ return;
1331
+ default:
1332
+ return os;
1333
+ }
1334
+ }, t2 = (e) => {
1335
+ switch (e) {
1336
+ case st.Front:
1337
+ return ba.User;
1338
+ case st.Back:
1339
+ return ba.Environment;
1340
+ default:
1341
+ return ba.User;
1342
+ }
1343
+ };
1344
+ class a2 {
1345
+ #t;
1346
+ #e;
1347
+ #a;
1348
+ #i;
1349
+ #s;
1350
+ #n;
1351
+ #r;
1352
+ #o;
1353
+ constructor(t) {
1354
+ this.#t = t, this.#a = new J(), this.#e = S(), this.#i = S().getControllerById(w.Facemap), this.#t.addController(this);
1355
+ }
1356
+ hostConnected() {
1357
+ this.#l().pipe(g(this.#a)).subscribe(), Gr(w.Facemap).pipe(
1358
+ m((t) => {
1359
+ Es({
1360
+ timeoutMs: t
1361
+ });
1362
+ }),
1363
+ g(this.#a)
1364
+ ).subscribe(), _e.getInstance().fullscreenChange$.pipe(
1365
+ m((t) => {
1366
+ cs.next(!t);
1367
+ }),
1368
+ g(this.#a)
1369
+ ).subscribe();
1370
+ }
1371
+ hostDisconnected() {
1372
+ this.#c(), this.#o?.unsubscribe(), this.#o = void 0, this.#a.next(), cs.next(!0);
1373
+ }
1374
+ requestUpload(t) {
1375
+ const { captureType: a, ...s } = t.detail;
1376
+ Kr(a), this.#n = s;
1377
+ const i = D(), n = j(_());
1378
+ i.send({ type: n.JumioStandardCaptureScreenUpload });
1379
+ }
1380
+ async upload() {
1381
+ if (!this.#n)
1382
+ throw new Error("Upload request is not defined");
1383
+ return Qc(this.#n);
1384
+ }
1385
+ #c() {
1386
+ window.clearTimeout(this.#s), this.#s = void 0;
1387
+ }
1388
+ #l() {
1389
+ return de().pipe(
1390
+ m((t) => {
1391
+ const a = D(), s = j(_());
1392
+ switch (t) {
1393
+ case u.JumioStandardCaptureScreenLiveness:
1394
+ const i = this.#d();
1395
+ this.#c(), this.#s = window.setTimeout(() => {
1396
+ this.#i.setJLiveManualCaptureFallbackReason(De.Timeout);
1397
+ }, i);
1398
+ break;
1399
+ case u.JumioStandardCaptureScreen:
1400
+ Is(_()), a.send({ type: s.JumioStandardCaptureScreenLivenessLoading });
1401
+ break;
1402
+ case u.JumioStandardCaptureScreenUpload:
1403
+ this.#t.cameraRef?.value?.controller.stopStream({ resetBusyState: !0 }), this.#o?.unsubscribe(), this.#o = Yr().pipe(g(this.#a)).subscribe(), this.upload().then(
1404
+ (L) => {
1405
+ this.#r = L, a.send({ type: s.JumioStandardUsabilityCheck });
1406
+ },
1407
+ () => {
1408
+ this.#r = void 0, a.send({ type: s.JumioStandardCaptureScreenUploadFailed });
1409
+ }
1410
+ );
1411
+ break;
1412
+ case u.JumioStandardCaptureScreenLivenessLoading:
1413
+ const { merchantSettings: { jLiveEnabled: n, faceCaptureMode: r } = {} } = this.#e.getConfiguration().getSettings();
1414
+ n && Xr(r) || a.send({ type: s.JumioStandardCaptureScreenSelfie });
1415
+ break;
1416
+ case u.JumioStandardCaptureScreenSelfie:
1417
+ Bs("near");
1418
+ break;
1419
+ case u.JumioStandardUsabilityCheck:
1420
+ this.#r && this.#e && Zc({
1421
+ uploadResponse: this.#r,
1422
+ stateManager: a,
1423
+ workflowStepFacemapController: this.#i
1424
+ }).catch(rt);
1425
+ break;
1426
+ case u.JumioStandardCaptureScreenCaptureFinish:
1427
+ _e.getInstance().exitFullscreen().catch(rt), this.#c();
1428
+ break;
1429
+ }
1430
+ })
1431
+ );
1432
+ }
1433
+ #d() {
1434
+ const { jumioLiveness: t } = this.#e.getConfiguration().getSettings().configurations, { fallbackTimeInMs: a = 9e4 } = t ?? {};
1435
+ return a;
1436
+ }
1437
+ }
1438
+ const i2 = (e) => ({
1439
+ normalizedNearFarCutOffPoint: Ts,
1440
+ initialPoseCheckFaceWidthRatioMin: 0.7,
1441
+ initialPoseCheckFaceWidthRatioMax: 0.9,
1442
+ requiredDistanceMovementRatio: 0.85,
1443
+ // profile picture mode is only enabled on mobile devices
1444
+ targetFaceWidthRatioForProfilePicture: e.targetFaceWidthRatioForProfilePicture,
1445
+ poseCheck: {
1446
+ pseudoPitchMin: 105,
1447
+ pseudoPitchMax: 170,
1448
+ pseudoYawMin: 65,
1449
+ pseudoYawMax: 135,
1450
+ normalizedOffCenterThreshold: 0.1,
1451
+ landscapeResolutionScaleForDistance: 1.22
1452
+ },
1453
+ delayMillisecondsBetweenDistance: 1e3,
1454
+ ...e.isPhotinus && {
1455
+ nearPhotinus: {
1456
+ nonce: e.nonce,
1457
+ hardwareLatency: e.photinusPhaseLock ? -1 : 4
1458
+ }
1459
+ }
1460
+ }), s2 = ({
1461
+ inputMessage$: e,
1462
+ uxCommand$: t
1463
+ }) => ({
1464
+ onEventForForwarding: (a) => {
1465
+ e.next(a);
1466
+ },
1467
+ onResponse: (a) => {
1468
+ t.next(a);
1469
+ }
1470
+ }), n2 = (e) => e.pipe(ce((t) => t.event === V.InitializeSuccess)), r2 = async (e, t) => {
1471
+ const a = await Tr(), s = a.addFunction(() => BigInt(et()), "j"), i = "nearPhotinus" in t ? a.LivenessUX.createPremium(t) : a.LivenessUX.createStandard(t);
1472
+ i.setTimestampProvider(s);
1473
+ const n = a.LivenessUXDelegate.implement(s2(e));
1474
+ return i.setDelegate(n), i;
1475
+ }, o2 = async ({ workerData: e, error$: t, outputMessage$: a, overrideConfig: s }) => {
1476
+ const i = await Br();
1477
+ i.onmessage = (r) => {
1478
+ Ir(r.data) && a.next(r.data);
1479
+ }, i.onerror = (r) => {
1480
+ r instanceof ErrorEvent && (r.stopPropagation(), r.stopImmediatePropagation(), r.preventDefault()), t.next(r);
1481
+ };
1482
+ const n = Si(n2(a), {
1483
+ defaultValue: {
1484
+ event: V.InitializeSuccess,
1485
+ timestamp: et().toString(),
1486
+ objectName: "da-system"
1487
+ }
1488
+ });
1489
+ return i.postMessage({
1490
+ assets: e.assets,
1491
+ config_name: e.configName,
1492
+ event: V.InitializeWasm,
1493
+ timestamp: et().toString(),
1494
+ wasm_module: e.wasmModule,
1495
+ ...typeof s == "string" ? { override_config: s } : {}
1496
+ }), await n, i.postMessage({
1497
+ event: V.StartSession,
1498
+ timestamp: et().toString()
1499
+ }), i;
1500
+ }, c2 = () => new _i((e) => {
1501
+ let t = -1;
1502
+ const a = (s) => {
1503
+ e.next(s), t = window.requestAnimationFrame(a);
1504
+ };
1505
+ return t = window.requestAnimationFrame(a), () => {
1506
+ window.cancelAnimationFrame(t);
1507
+ };
1508
+ }), Cs = new J(), Ua = new J(), Aa = new J(), Se = new J(), Vn = new J();
1509
+ class l2 {
1510
+ #t;
1511
+ #e;
1512
+ #a;
1513
+ #i;
1514
+ #s;
1515
+ #n;
1516
+ #r = !1;
1517
+ #o = new J();
1518
+ constructor(t) {
1519
+ const { workerData: a, outputMessage$: s, error$: i, timeoutMs: n, initializationSuccess: r, getConfiguration: L, overrideConfig: R } = t;
1520
+ s.pipe(
1521
+ m((we) => {
1522
+ this.#e?.onLowerLevelEvent(we);
1523
+ }),
1524
+ g(this.#o)
1525
+ ).subscribe();
1526
+ const mt = o2({ workerData: a, error$: i, outputMessage$: s, overrideConfig: R });
1527
+ this.#a = mt;
1528
+ const is = r2(t, L());
1529
+ this.#i = is;
1530
+ const Jr = zs(
1531
+ n,
1532
+ new Pe(De.ModuleInitializationError)
1533
+ ), jr = Promise.all([is, mt]);
1534
+ Promise.race([jr, Jr]).then(([we, Dr]) => {
1535
+ this.#r || (this.#t = Dr, this.#e = we, this.#s = c2().pipe(
1536
+ m((Er) => {
1537
+ this.#e?.onVSync(Er);
1538
+ })
1539
+ ).subscribe(), this.#n = we.run().then(() => {
1540
+ this.#s?.unsubscribe(), Vn.next();
1541
+ }, Ca), r());
1542
+ }).catch((we) => {
1543
+ this.#s?.unsubscribe(), i.next(we);
1544
+ });
1545
+ }
1546
+ postMessage(t, a = []) {
1547
+ if (this.#t && this.#e) {
1548
+ if (t.event === V.Image) {
1549
+ zr(this.#e, this.#t, t, a);
1550
+ return;
1551
+ }
1552
+ this.#t.postMessage(t);
1553
+ }
1554
+ }
1555
+ confirmColorChange() {
1556
+ this.#e?.confirmColorChange();
1557
+ }
1558
+ terminate() {
1559
+ if (this.#r = !0, this.#e) {
1560
+ this.#s?.unsubscribe(), this.#e.cancel();
1561
+ const t = this.#e;
1562
+ (this.#n ?? Promise.resolve()).finally(() => {
1563
+ t.delete();
1564
+ });
1565
+ } else
1566
+ this.#i?.then((t) => {
1567
+ this.#s?.unsubscribe(), t.delete();
1568
+ }).catch(Ca);
1569
+ this.#e = void 0, this.#i = void 0, this.#n = void 0, this.#t ? this.#t.terminate() : this.#a?.then((t) => {
1570
+ t.terminate();
1571
+ }).catch(Ca), this.#t = void 0, this.#a = void 0, this.#o.next();
1572
+ }
1573
+ }
1574
+ var A, z, W, Le, Z, Rn, qn, Ra, dt, ut, pt;
1575
+ const ha = class ha {
1576
+ constructor(t) {
1577
+ q(this, Z);
1578
+ q(this, A);
1579
+ q(this, z);
1580
+ q(this, W);
1581
+ q(this, Le);
1582
+ q(this, dt);
1583
+ q(this, ut);
1584
+ q(this, pt);
1585
+ T(this, Le, !1), this.postMessage = (a, s = []) => {
1586
+ try {
1587
+ v(this, A)?.postMessage(a, s);
1588
+ } catch {
1589
+ Se.next(new Pe(De.PostMessageError));
1590
+ }
1591
+ }, this.initializationSuccess = () => {
1592
+ const a = D(), s = j(_()), { substep: i } = Qr();
1593
+ Zr(), eo(this.postMessage), this.getLogger().log(
1594
+ to({
1595
+ metadata: {
1596
+ step: i ?? ""
1597
+ }
1598
+ })
1599
+ ), a.send({
1600
+ type: s.JumioStandardCaptureScreenLiveness
1601
+ }), T(this, Le, !0);
1602
+ }, this.initializationFailure = (a) => {
1603
+ this.getWorkerService()?.terminate(), Se.next(new Pe(a));
1604
+ }, this.handleUxCommand = (a) => {
1605
+ if ("camera_command" in a && v(this, W).setLivenessStoreCameraCommand(a.camera_command), "display_message" in a && v(this, W).setLivenessStoreDisplayMessage(a.display_message), "photinus_color" in a) {
1606
+ v(this, W).setLivenessStorePhotinusColor(a.photinus_color);
1607
+ const { merchantSettings: { photinusPhaseLock: s = !1 } = {} } = Ct();
1608
+ s && this.getWorkerService()?.confirmColorChange();
1609
+ }
1610
+ "progress_bar_value" in a && v(this, W).setLivenessStoreProgressBarValue(Number(a.progress_bar_value)), "ui_command" in a && (v(this, W).setLivenessStoreUiCommand(a.ui_command), a.ui_command === ns.HintMoveAway && v(this, W).setLivenessVisibleFaceFinder("far"), a.ui_command === ns.HintMoveCloser && v(this, W).setLivenessVisibleFaceFinder("near"));
1611
+ }, T(this, dt, () => {
1612
+ const { merchantSettings: { photinusHDEnabled: a = !1 } = {} } = Ct(), i = [a ? "PhotinusDA.mode: hd" : void 0].filter(Boolean);
1613
+ return i.length ? i.join(`
1614
+ `) : void 0;
1615
+ }), T(this, ut, () => {
1616
+ const a = S(), i = a.getControllerById(w.Facemap).getActiveFaceVerificationMethod() === ae.JumioPremium, { merchantSettings: { jLiveIod: n = -1, photinusPhaseLock: r = !1 } = {} } = Ct(), L = i ? {
1617
+ isPhotinus: !0,
1618
+ targetFaceWidthRatioForProfilePicture: n,
1619
+ nonce: a.getWorkflowState().parsedToken?.wfeId ?? "",
1620
+ photinusPhaseLock: r
1621
+ } : {
1622
+ isPhotinus: !1,
1623
+ targetFaceWidthRatioForProfilePicture: n
1624
+ };
1625
+ return i2(L);
1626
+ }), T(this, pt, (a) => Ws().pipe(
1627
+ ma(yi()),
1628
+ nt(([s, i]) => ({ resolution: s, playing: i })),
1629
+ ce(({ playing: s }) => s),
1630
+ Os(1e3),
1631
+ ao((s, i) => io(s, i)),
1632
+ so(1),
1633
+ m(() => {
1634
+ v(this, A)?.terminate(), T(this, A, Ee(this, Z, Ra).call(this, a));
1635
+ })
1636
+ )), T(this, z, new J()), this.livenessSettings$ = Ee(this, Z, qn).call(this), this.cls$ = Ee(this, Z, Rn).call(this), T(this, W, S().getControllerById(w.Facemap)), T(this, A, Ee(this, Z, Ra).call(this, t)), v(this, pt).call(this, t).pipe(g(v(this, z))).subscribe(), no(this.postMessage).pipe(g(v(this, z))).subscribe(), ro(this.postMessage).pipe(g(v(this, z))).subscribe(), Aa.pipe(m(this.handleUxCommand), g(v(this, z))).subscribe(), Cs.pipe(m(this.postMessage), g(v(this, z))).subscribe(), this.cls$.pipe(g(v(this, z))).subscribe();
1637
+ }
1638
+ destroy() {
1639
+ v(this, A)?.terminate(), T(this, A, void 0), v(this, z).next();
1640
+ }
1641
+ getWorkerService() {
1642
+ return v(this, A);
1643
+ }
1644
+ getLogger() {
1645
+ return S().getLoggerManager();
1646
+ }
1647
+ isInitializedSuccessfully() {
1648
+ return v(this, Le);
1649
+ }
1650
+ };
1651
+ A = new WeakMap(), z = new WeakMap(), W = new WeakMap(), Le = new WeakMap(), Z = new WeakSet(), Rn = function() {
1652
+ return Ua.pipe(
1653
+ ce((t) => t.event === V.CameraLivenessStatus),
1654
+ m((t) => {
1655
+ oo(t);
1656
+ })
1657
+ );
1658
+ }, qn = function() {
1659
+ return S().getConfiguration().selectSettings$().pipe(
1660
+ nt((t) => t.configurations.jumioLiveness),
1661
+ ce((t) => !!t)
1662
+ );
1663
+ }, Ra = function(t) {
1664
+ return new l2({
1665
+ getConfiguration: v(this, ut),
1666
+ timeoutMs: ha.WASM_MODULE_INIT_FALLBACK_MS,
1667
+ workerData: t,
1668
+ initializationSuccess: this.initializationSuccess,
1669
+ inputMessage$: Cs,
1670
+ outputMessage$: Ua,
1671
+ uxCommand$: Aa,
1672
+ error$: Se,
1673
+ overrideConfig: v(this, dt).call(this)
1674
+ });
1675
+ }, dt = new WeakMap(), ut = new WeakMap(), pt = new WeakMap(), ha.WASM_MODULE_INIT_FALLBACK_MS = 1e4;
1676
+ let Va = ha;
1677
+ const Nn = new tt(void 0), be = {
1678
+ Locked: "locked",
1679
+ LockFailed: "lock-failed",
1680
+ Released: "released",
1681
+ ReleaseFailed: "release-failed",
1682
+ Unsupported: "unsupported"
1683
+ };
1684
+ o.Union(Us(be));
1685
+ function d2(e, t) {
1686
+ let a;
1687
+ const s = async (n) => {
1688
+ if (navigator.wakeLock)
1689
+ try {
1690
+ a = await navigator.wakeLock.request("screen"), n.next(be.Locked);
1691
+ } catch {
1692
+ n.next(be.LockFailed);
1693
+ }
1694
+ }, i = async (n) => {
1695
+ if (a)
1696
+ try {
1697
+ await a.release(), n.next(be.Released);
1698
+ } catch {
1699
+ n.next(be.ReleaseFailed);
1700
+ }
1701
+ };
1702
+ return new _i((n) => {
1703
+ if (!navigator.wakeLock?.request) {
1704
+ n.next(be.Unsupported), n.complete();
1705
+ return;
1706
+ }
1707
+ const r = e.pipe(
1708
+ _a(t),
1709
+ wi(([L, R]) => L && R === "visible" ? s(n) : i(n))
1710
+ ).subscribe();
1711
+ return () => {
1712
+ i(n), As(() => {
1713
+ r.unsubscribe();
1714
+ });
1715
+ };
1716
+ });
1717
+ }
1718
+ const Bi = {
1719
+ ServerData: "server_data",
1720
+ LivenessBlob: "liveness_blob"
1721
+ };
1722
+ o.Union(Us(Bi));
1723
+ const u2 = ":host{display:contents}", p2 = 500, h2 = (e) => Math.min(100, Math.max(0, Math.round(e * 100))), m2 = (e) => {
1724
+ let t;
1725
+ if ("liveness_blob" in e) {
1726
+ const a = {};
1727
+ let s = 0;
1728
+ for (; ; ) {
1729
+ s++;
1730
+ const i = e[`liveness_${s}`], n = e[`liveness_${s}_type`], r = e[`liveness_${s}_timestamp`];
1731
+ if (i && n) {
1732
+ const L = v2(n);
1733
+ a[`liveness_${s}`] = new File([i], `liveness_${s + 1}.${L}`, {
1734
+ type: n,
1735
+ lastModified: Number.parseInt(r ?? Date.now().toString())
1736
+ });
1737
+ } else
1738
+ break;
1739
+ }
1740
+ t = {
1741
+ type: Bi.LivenessBlob,
1742
+ blobs: a,
1743
+ best_image: e.best_image,
1744
+ liveness_blob: e.liveness_blob
1745
+ };
1746
+ }
1747
+ return t;
1748
+ }, f2 = (e) => ({
1749
+ "image/webp": B.WebP,
1750
+ "image/png": B.Png,
1751
+ "image/jpg": B.Jpg,
1752
+ "image/jpeg": B.Jpeg,
1753
+ "image/jp2": B.Jpeg2000,
1754
+ "image/jpx": B.Jpeg2000,
1755
+ "image/jpc": B.Jpeg2000,
1756
+ "image/j2c": B.Jpeg2000,
1757
+ "application/pdf": B.Pdf,
1758
+ "application/octet-stream": B.Dat
1759
+ })[e] ?? B.Jpeg, v2 = (e) => ({
1760
+ "image/webp": "webp",
1761
+ "image/png": "png",
1762
+ "image/jpg": "jpg",
1763
+ "image/jpeg": "jpeg",
1764
+ "image/jp2": "jpeg",
1765
+ "image/jpx": "jpeg",
1766
+ "image/jpc": "jpeg",
1767
+ "image/j2c": "jpeg",
1768
+ "application/pdf": "pdf",
1769
+ "application/octet-stream": "dat"
1770
+ })[e] ?? "jpeg", g2 = (e) => Object.entries(e.blobs).map(([t, a], s) => ({
1771
+ multipartName: bi(),
1772
+ fileType: f2(a.type),
1773
+ uploadType: `JUMIO_LIVENESS_${s + 1}`,
1774
+ captureMethod: e.captureMethod,
1775
+ usabilityExpected: !0,
1776
+ fileMetaData: {
1777
+ bestSelfieShot: t === e.best_image
1778
+ },
1779
+ file: a,
1780
+ riskSignals: {
1781
+ deviceId: Y()?.deviceId ?? "",
1782
+ deviceLabel: Y()?.label ?? "",
1783
+ groupId: Y()?.groupId ?? ""
1784
+ },
1785
+ cls: Vt(a.lastModified),
1786
+ clsm: At(a.lastModified)
1787
+ })), S2 = (e, t) => ({
1788
+ multipartName: bi(),
1789
+ fileType: B.Dat,
1790
+ uploadType: kt.JumioLivenessBlob,
1791
+ usabilityExpected: !1,
1792
+ captureMethod: t.captureMethod,
1793
+ fileMetaData: {
1794
+ bestSelfieShot: !1
1795
+ },
1796
+ riskSignals: {
1797
+ deviceId: Y()?.deviceId ?? "",
1798
+ deviceLabel: Y()?.label ?? "",
1799
+ groupId: Y()?.groupId ?? ""
1800
+ },
1801
+ file: new Blob([t.liveness_blob], {
1802
+ type: "application/octet-stream"
1803
+ })
1804
+ }), _2 = (e, t) => {
1805
+ const a = S().getControllerById(w.Facemap).getActiveFaceVerificationMethod(), s = {
1806
+ ...t,
1807
+ captureMethod: a === ae.JumioPremium ? Je.JumioPremium : Je.JumioStandard
1808
+ };
1809
+ return [
1810
+ ...g2(s),
1811
+ S2(e, s)
1812
+ ];
1813
+ }, y2 = (e) => e.pipe(
1814
+ ce((t) => t.event === V.ServerDataBlob),
1815
+ wi((t) => {
1816
+ const a = m2(t);
1817
+ if (a?.type === Bi.LivenessBlob) {
1818
+ const s = _2(_(), a);
1819
+ return uo({
1820
+ uploadFilesMetadata: {
1821
+ files: s
1822
+ }
1823
+ });
1824
+ }
1825
+ return lo;
1826
+ })
1827
+ ), w2 = ({
1828
+ jLiveActivationTime$: e,
1829
+ progressChangeTime$: t,
1830
+ loggerManager: a = S().getLoggerManager(),
1831
+ progress$: s
1832
+ }) => s.pipe(
1833
+ Os(p2),
1834
+ m((i) => {
1835
+ const n = h2(i), r = Date.now() - e.getValue();
1836
+ a.log(
1837
+ co({
1838
+ metadata: {
1839
+ jLiveProgress: n,
1840
+ jLiveStepDuration: Date.now() - t.getValue(),
1841
+ isFullscreen: _e.getInstance().isFullscreen(),
1842
+ jLiveDuration: r,
1843
+ cls: Vt(),
1844
+ clsm: At()
1845
+ },
1846
+ tags: {
1847
+ jLiveDuration: r,
1848
+ jLiveProgress: n
1849
+ }
1850
+ })
1851
+ ), t.next(Date.now());
1852
+ })
1853
+ ), b2 = ({ acceleration: e, rotationRate: t, accelerationIncludingGravity: a }, s) => {
1854
+ const i = et().toString(), n = Math.PI / 180, r = e && e.x !== null && e.y !== null && e.z !== null, L = t && t.beta !== null && t.gamma !== null && t.alpha !== null, R = a && a.x !== null && a.y !== null && a.z !== null;
1855
+ if (r || L || R) {
1856
+ const mt = {
1857
+ event: V.Sensor,
1858
+ timestamp: i,
1859
+ ...r && {
1860
+ accel_x: `${e.x}`,
1861
+ accel_y: `${e.y}`,
1862
+ accel_z: `${e.z}`
1863
+ },
1864
+ ...L && {
1865
+ gyro_x: `${t.beta * n}`,
1866
+ gyro_y: `${t.gamma * n}`,
1867
+ gyro_z: `${t.alpha * n}`
1868
+ },
1869
+ ...R && {
1870
+ accel_with_gravity_x: `${a.x}`,
1871
+ accel_with_gravity_y: `${a.y}`,
1872
+ accel_with_gravity_z: `${a.z}`
1873
+ }
1874
+ };
1875
+ s?.postMessage(mt);
1876
+ }
1877
+ };
1878
+ var C2 = Object.getOwnPropertyDescriptor, Hn = (e) => {
1879
+ throw TypeError(e);
1880
+ }, k2 = (e, t, a, s) => {
1881
+ for (var i = s > 1 ? void 0 : s ? C2(t, a) : t, n = e.length - 1, r; n >= 0; n--)
1882
+ (r = e[n]) && (i = r(i) || i);
1883
+ return i;
1884
+ }, Ii = (e, t, a) => t.has(e) || Hn("Cannot " + a), h = (e, t, a) => (Ii(e, t, "read from private field"), t.get(e)), x = (e, t, a) => t.has(e) ? Hn("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), P = (e, t, a, s) => (Ii(e, t, "write to private field"), t.set(e, a), a), yt = (e, t, a) => (Ii(e, t, "access private method"), a), Et, He, Ge, Bt, at, Ke, H, it, Ce, U, qa, Na, Ha, ke, Gn, It, Kn, Xn, Yn;
1885
+ const [, ks] = Vs({
1886
+ eventType: "trace",
1887
+ eventName: "liveness error",
1888
+ code: 517,
1889
+ level: Rs.Info
1890
+ });
1891
+ let Ga = class extends p {
1892
+ constructor() {
1893
+ super(), x(this, ke), this.getBlob = ls({
1894
+ message: "JumioLivenessComponent: Please set getBlob callback from the outside"
1895
+ }), this.getImageData = ls({
1896
+ message: "JumioLivenessComponent: Please set getImageData callback from the outside"
1897
+ }), x(this, Et), x(this, He), x(this, Ge), x(this, Bt), x(this, at), x(this, Ke, new tt(0)), x(this, H), x(this, it, !1), x(this, Ce, !1), x(this, U), this.sendLivenessMessageHandler = (e) => {
1898
+ this.livenessServiceController.value && b2(e, this.livenessServiceController.value);
1899
+ }, this.onVideoTick = async (e) => {
1900
+ const t = this.livenessServiceController.value;
1901
+ if (h(this, it) || !t?.isInitializedSuccessfully())
1902
+ return;
1903
+ const a = Nn.getValue();
1904
+ if ((!!h(this, H) || typeof VideoFrame == "function") && t && !h(this, Ce)) {
1905
+ if (!(e.videoElement.readyState >= e.videoElement.HAVE_CURRENT_DATA))
1906
+ return;
1907
+ let i;
1908
+ try {
1909
+ if (i = h(this, H) ? await po({ reader: h(this, H), timeoutMs: 1e3 }) : (() => {
1910
+ const n = new VideoFrame(e.videoElement);
1911
+ return {
1912
+ result: n,
1913
+ cleanUp: () => {
1914
+ n.close();
1915
+ }
1916
+ };
1917
+ })(), !i.result.format) {
1918
+ i.cleanUp(), P(this, Ce, !0);
1919
+ return;
1920
+ }
1921
+ t.postMessage(
1922
+ {
1923
+ event: V.Image,
1924
+ format: "videoframe",
1925
+ timestamp: e.dateNowHighResolution.toString(),
1926
+ image: i.result,
1927
+ rotation: `${Wr(i.result, e.videoElement)}`,
1928
+ ...typeof a == "number" && { lux: `${a}` }
1929
+ },
1930
+ [i.result]
1931
+ );
1932
+ } catch (n) {
1933
+ if (i?.cleanUp(), n instanceof ho)
1934
+ return;
1935
+ n instanceof ka ? P(this, Ce, !0) : Se.next(n);
1936
+ }
1937
+ return;
1938
+ }
1939
+ try {
1940
+ const i = zs(
1941
+ 2e3,
1942
+ new ka("JumioLivenessComponent - onVideoTick: getImageData timeout")
1943
+ ), { imageData: n } = await Promise.race([this.getImageData(), i]);
1944
+ t && t.postMessage({
1945
+ event: V.Image,
1946
+ timestamp: e.dateNowHighResolution.toString(),
1947
+ image: n,
1948
+ format: "rgba",
1949
+ ...typeof a == "number" && { lux: `${a}` }
1950
+ });
1951
+ } catch (i) {
1952
+ i instanceof ka || Se.next(i);
1953
+ }
1954
+ }, this.onYuvProcessorAvailable = async (e) => (await h(this, It).call(this), P(this, H, e.processor && typeof VideoFrame == "function" && typeof e.processor.readable.getReader == "function" ? e.processor.readable.getReader() : void 0), Promise.resolve(void 0)), x(this, qa, async () => fo(vo.Liveness, (e) => {
1955
+ h(this, Ke).next(e.progress);
1956
+ }).catch(
1957
+ () => Promise.reject(new Pe(De.ModuleLoadingError))
1958
+ )), x(this, Na, (e) => new _i((t) => {
1959
+ const a = new Va({
1960
+ ...e,
1961
+ configName: yt(this, ke, Gn).call(this)
1962
+ });
1963
+ return t.next(a), () => {
1964
+ a.destroy();
1965
+ };
1966
+ })), x(this, Ha, () => go(() => h(this, qa).call(this)).pipe(
1967
+ wi((e) => h(this, Na).call(this, e)),
1968
+ So((e) => (Se.next(e), _o(() => e)))
1969
+ )), x(this, It, async () => {
1970
+ h(this, H) && await h(this, H).cancel("JumioLivenessComponent - #cleanupReader"), P(this, H, void 0);
1971
+ }), P(this, He, new tt(Date.now())), P(this, Ge, new tt(Date.now())), P(this, at, S().getControllerById(w.Facemap)), this.livenessServiceController = new $(this, h(this, Ha).call(this)), P(this, Bt, new $(this, de())), P(this, Et, w2({
1972
+ progressChangeTime$: h(this, Ge),
1973
+ jLiveActivationTime$: h(this, He),
1974
+ progress$: h(this, at).selectLivenessStoreProgressBarValue$()
1975
+ })), this.downloadProgressController = ge(this, h(this, Ke), 0);
1976
+ }
1977
+ connectedCallback() {
1978
+ super.connectedCallback(), P(this, it, !1), P(this, Ce, !1), h(this, Ke).next(0), h(this, He).next(Date.now()), h(this, Ge).next(Date.now()), h(this, U)?.unsubscribe(), P(this, U, new mo()), h(this, U).add(h(this, Et).subscribe()), h(this, U).add(yt(this, ke, Kn).call(this).subscribe()), h(this, U).add(yt(this, ke, Xn).call(this).subscribe()), h(this, U).add(yt(this, ke, Yn).call(this).subscribe()), window.addEventListener("devicemotion", this.sendLivenessMessageHandler);
1979
+ }
1980
+ disconnectedCallback() {
1981
+ super.disconnectedCallback(), window.removeEventListener("devicemotion", this.sendLivenessMessageHandler), h(this, It).call(this), h(this, U)?.unsubscribe(), P(this, U, void 0);
1982
+ }
1983
+ render() {
1984
+ const e = h(this, Bt).value;
1985
+ return d`
1986
+ <jumio-sdk-liveness-progress-view
1987
+ data-qa-id="liveness-progress-view"
1988
+ .config="${{
1989
+ visible: e === u.JumioStandardCaptureScreenLivenessLoading,
1990
+ progress: this.downloadProgressController.value * 100,
1991
+ indicator: {}
1992
+ }}"
1993
+ ></jumio-sdk-liveness-progress-view>
1994
+ `;
1995
+ }
1996
+ };
1997
+ Et = /* @__PURE__ */ new WeakMap();
1998
+ He = /* @__PURE__ */ new WeakMap();
1999
+ Ge = /* @__PURE__ */ new WeakMap();
2000
+ Bt = /* @__PURE__ */ new WeakMap();
2001
+ at = /* @__PURE__ */ new WeakMap();
2002
+ Ke = /* @__PURE__ */ new WeakMap();
2003
+ H = /* @__PURE__ */ new WeakMap();
2004
+ it = /* @__PURE__ */ new WeakMap();
2005
+ Ce = /* @__PURE__ */ new WeakMap();
2006
+ U = /* @__PURE__ */ new WeakMap();
2007
+ qa = /* @__PURE__ */ new WeakMap();
2008
+ Na = /* @__PURE__ */ new WeakMap();
2009
+ Ha = /* @__PURE__ */ new WeakMap();
2010
+ ke = /* @__PURE__ */ new WeakSet();
2011
+ Gn = function() {
2012
+ return h(this, at).getActiveFaceVerificationMethod() === ae.JumioPremium ? rs.PremiumWeb : rs.StandardWeb;
2013
+ };
2014
+ It = /* @__PURE__ */ new WeakMap();
2015
+ Kn = function() {
2016
+ return Aa.pipe(
2017
+ ce(
2018
+ (e) => qs(
2019
+ e,
2020
+ ["event", "display_message"],
2021
+ (t) => t.display_message === k.Finish
2022
+ )
2023
+ ),
2024
+ m(() => {
2025
+ P(this, it, !0);
2026
+ })
2027
+ );
2028
+ };
2029
+ Xn = function() {
2030
+ return y2(Ua).pipe(
2031
+ m((e) => {
2032
+ Is(_()), e.uploadFilesMetadata?.files.forEach((t) => {
2033
+ Ns({
2034
+ id: t.multipartName,
2035
+ category: w.Facemap,
2036
+ state: Gs.NotStarted,
2037
+ source: Hs.Camera,
2038
+ credentialId: _(),
2039
+ classifier: t.uploadType,
2040
+ blob: t.file,
2041
+ batchBytesToUpload: t.file.size,
2042
+ batchBytesUploaded: 0,
2043
+ batchUploadProgress: 0
2044
+ });
2045
+ });
2046
+ }),
2047
+ yo(Vn),
2048
+ nt(([e]) => e),
2049
+ m((e) => {
2050
+ const a = S().getControllerById(w.Facemap).getActiveFaceVerificationMethod() === ae.JumioPremium;
2051
+ this.dispatchEvent(
2052
+ new Ks({
2053
+ ...e,
2054
+ captureType: a ? Je.JumioPremium : Je.JumioStandard
2055
+ })
2056
+ );
2057
+ })
2058
+ );
2059
+ };
2060
+ Yn = function() {
2061
+ return Se.pipe(
2062
+ m((e) => {
2063
+ const t = this.livenessServiceController.value, a = S().getControllerById(w.Facemap);
2064
+ e instanceof Error ? ks(this, {
2065
+ metadata: {
2066
+ name: e.name,
2067
+ description: e.message,
2068
+ stack: e.stack,
2069
+ reason: e instanceof Pe ? e.reason : ""
2070
+ }
2071
+ }) : typeof e == "string" && ks(this, { metadata: { name: e, description: e } }), e instanceof Pe ? a.setJLiveManualCaptureFallbackReason(e.reason) : a.setJLiveManualCaptureFallbackReason(De.WorkerError), t?.destroy();
2072
+ })
2073
+ );
2074
+ };
2075
+ Ga.styles = [...p.styles, xe(u2)];
2076
+ Ga = k2([
2077
+ F("jumio-sdk-liveness"),
2078
+ E()
2079
+ ], Ga);
2080
+ var $2 = Object.getOwnPropertyDescriptor, Qn = (e) => {
2081
+ throw TypeError(e);
2082
+ }, M2 = (e, t, a, s) => {
2083
+ for (var i = s > 1 ? void 0 : s ? $2(t, a) : t, n = e.length - 1, r; n >= 0; n--)
2084
+ (r = e[n]) && (i = r(i) || i);
2085
+ return i;
2086
+ }, Ti = (e, t, a) => t.has(e) || Qn("Cannot " + a), aa = (e, t, a) => (Ti(e, t, "read from private field"), a ? a.call(e) : t.get(e)), La = (e, t, a) => t.has(e) ? Qn("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), $s = (e, t, a, s) => (Ti(e, t, "write to private field"), t.set(e, a), a), F2 = (e, t, a) => (Ti(e, t, "access private method"), a), Xe, ct, Ka, Zn;
2087
+ const L2 = (e) => {
2088
+ const t = {
2089
+ [k.FaceHoldStillInitial]: c("Hold still…", { id: "instruction.hold_still_dots" }),
2090
+ [k.FaceHoldStill]: c("Keep still", { id: "instruction.keep_still" }),
2091
+ [k.FaceKeepCenterSevere]: c("Put your face in the frame", {
2092
+ id: "liveness.prompt.no_target"
2093
+ }),
2094
+ [k.FaceMoveAway]: c("Move away", { id: "instruction.move_away" }),
2095
+ [k.FaceMoveCloser]: c("Move closer", { id: "instruction.move_closer" }),
2096
+ [k.FaceNoneDetected]: c("Put your face in the frame", { id: "liveness.prompt.no_target" }),
2097
+ [k.FaceNotUpright]: c("Keep upright", { id: "liveness.prompt.keep_upright" }),
2098
+ [k.FaceStopMovement]: c("Keep still", { id: "instruction.keep_still" }),
2099
+ [k.FaceTiltDown]: c("Tilt down", { id: "liveness.prompt.tilt_down" }),
2100
+ [k.FaceTiltLeft]: c("Tilt left", { id: "liveness.prompt.tilt_left" }),
2101
+ [k.FaceTiltRight]: c("Tilt right", { id: "liveness.prompt.tilt_right" }),
2102
+ [k.FaceTiltUp]: c("Tilt up", { id: "liveness.prompt.tilt_up" }),
2103
+ [k.Finish]: c("Scanning completed", { id: "liveness.prompt.scanning_completed" }),
2104
+ [k.KeepFaceCenter]: c("Keep centered", { id: "liveness.prompt.keep_centered" }),
2105
+ [k.MoreCapturesNeeded]: c("Let's take another scan", {
2106
+ id: "liveness.prompt.success_another_scan"
2107
+ }),
2108
+ [k.Start]: c("Put your face in the frame", { id: "liveness.prompt.no_target" })
2109
+ };
2110
+ return e === void 0 ? void 0 : t[e];
2111
+ };
2112
+ let Xa = class extends p {
2113
+ constructor() {
2114
+ super(), La(this, Ka), La(this, Xe), La(this, ct), $s(this, ct, S().getControllerById(w.Facemap)), $s(this, Xe, ge(this, F2(this, Ka, Zn).call(this), {
2115
+ message: k.Start,
2116
+ progress: 0
2117
+ }));
2118
+ }
2119
+ render() {
2120
+ const e = L2(aa(this, Xe).value.message);
2121
+ return d`
2122
+ <jumio-sdk-liveness-capture-state-view
2123
+ data-qa-id="liveness-capture-state-view"
2124
+ .config="${{
2125
+ ...e === void 0 ? {} : {
2126
+ message: {
2127
+ text: e,
2128
+ progress: aa(this, Xe).value.progress * 100
2129
+ }
2130
+ }
2131
+ }}"
2132
+ ></jumio-sdk-liveness-capture-state-view>
2133
+ `;
2134
+ }
2135
+ };
2136
+ Xe = /* @__PURE__ */ new WeakMap();
2137
+ ct = /* @__PURE__ */ new WeakMap();
2138
+ Ka = /* @__PURE__ */ new WeakSet();
2139
+ Zn = function() {
2140
+ return aa(this, ct).selectLivenessFeedbackMessage$().pipe(
2141
+ _a(aa(this, ct).selectLivenessStoreProgressBarValue$()),
2142
+ nt(([e, t]) => ({
2143
+ message: e,
2144
+ progress: t
2145
+ }))
2146
+ );
2147
+ };
2148
+ Xa.styles = [
2149
+ ...p.styles,
2150
+ O`
2151
+ :host {
2152
+ display: contents;
2153
+ }
2154
+ `
2155
+ ];
2156
+ Xa = M2([
2157
+ E(),
2158
+ F("jumio-sdk-liveness-capture-state")
2159
+ ], Xa);
2160
+ var x2 = Object.getOwnPropertyDescriptor, er = (e) => {
2161
+ throw TypeError(e);
2162
+ }, P2 = (e, t, a, s) => {
2163
+ for (var i = s > 1 ? void 0 : s ? x2(t, a) : t, n = e.length - 1, r; n >= 0; n--)
2164
+ (r = e[n]) && (i = r(i) || i);
2165
+ return i;
2166
+ }, J2 = (e, t, a) => t.has(e) || er("Cannot " + a), Ms = (e, t, a) => (J2(e, t, "read from private field"), t.get(e)), j2 = (e, t, a) => t.has(e) ? er("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), Tt;
2167
+ let Fs = class extends p {
2168
+ constructor() {
2169
+ super(...arguments), j2(this, Tt, ({ data: e }) => {
2170
+ try {
2171
+ const t = typeof e == "string" ? JSON.parse(e) : e;
2172
+ qs(t, ["type", "value"], (a) => a.type === "LIVENESS_SETTINGS_LUX") && Nn.next(t.value);
2173
+ } catch {
2174
+ }
2175
+ });
2176
+ }
2177
+ connectedCallback() {
2178
+ super.connectedCallback(), window.addEventListener("message", Ms(this, Tt));
2179
+ }
2180
+ disconnectedCallback() {
2181
+ super.disconnectedCallback(), window.removeEventListener("message", Ms(this, Tt));
2182
+ }
2183
+ };
2184
+ Tt = /* @__PURE__ */ new WeakMap();
2185
+ Fs = P2([
2186
+ F("jumio-sdk-light-sensor")
2187
+ ], Fs);
2188
+ var D2 = Object.getOwnPropertyDescriptor, tr = (e) => {
2189
+ throw TypeError(e);
2190
+ }, E2 = (e, t, a, s) => {
2191
+ for (var i = s > 1 ? void 0 : s ? D2(t, a) : t, n = e.length - 1, r; n >= 0; n--)
2192
+ (r = e[n]) && (i = r(i) || i);
2193
+ return i;
2194
+ }, ar = (e, t, a) => t.has(e) || tr("Cannot " + a), Te = (e, t, a) => (ar(e, t, "read from private field"), a ? a.call(e) : t.get(e)), xa = (e, t, a) => t.has(e) ? tr("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), B2 = (e, t, a) => (ar(e, t, "access private method"), a), zt, Ye, Ya, ir;
2195
+ const [I2] = Vs({
2196
+ eventType: "trace",
2197
+ eventName: "liveness - screen wake lock",
2198
+ code: 517,
2199
+ level: Rs.Trace
2200
+ });
2201
+ let Ls = class extends p {
2202
+ constructor() {
2203
+ super(...arguments), xa(this, Ya), xa(this, zt, new J()), xa(this, Ye, new tt(!1));
2204
+ }
2205
+ connectedCallback() {
2206
+ super.connectedCallback(), this.closest("x-camera") && (Te(this, Ye).next(!0), d2(Te(this, Ye), wo).pipe(B2(this, Ya, ir).call(this), g(Te(this, zt))).subscribe());
2207
+ }
2208
+ disconnectedCallback() {
2209
+ super.disconnectedCallback(), Te(this, Ye).next(!1), As(() => {
2210
+ Te(this, zt).next();
2211
+ });
2212
+ }
2213
+ };
2214
+ zt = /* @__PURE__ */ new WeakMap();
2215
+ Ye = /* @__PURE__ */ new WeakMap();
2216
+ Ya = /* @__PURE__ */ new WeakSet();
2217
+ ir = function() {
2218
+ const e = S().getLoggerManager();
2219
+ return bo(
2220
+ m((t) => {
2221
+ e.log(
2222
+ I2({
2223
+ metadata: {
2224
+ status: t
2225
+ }
2226
+ })
2227
+ );
2228
+ })
2229
+ );
2230
+ };
2231
+ Ls = E2([
2232
+ F("jumio-sdk-liveness-screen-wake-lock")
2233
+ ], Ls);
2234
+ var T2 = Object.defineProperty, z2 = Object.getOwnPropertyDescriptor, sr = (e) => {
2235
+ throw TypeError(e);
2236
+ }, nr = (e, t, a, s) => {
2237
+ for (var i = s > 1 ? void 0 : s ? z2(t, a) : t, n = e.length - 1, r; n >= 0; n--)
2238
+ (r = e[n]) && (i = (s ? r(t, a, i) : r(i)) || i);
2239
+ return s && i && T2(t, a, i), i;
2240
+ }, zi = (e, t, a) => t.has(e) || sr("Cannot " + a), l = (e, t, a) => (zi(e, t, "read from private field"), a ? a.call(e) : t.get(e)), f = (e, t, a) => t.has(e) ? sr("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), G = (e, t, a, s) => (zi(e, t, "write to private field"), t.set(e, a), a), M = (e, t, a) => (zi(e, t, "access private method"), a), Q, Wt, oe, ia, sa, Wi, Oi, Ui, Ai, Vi, Fe, Qa, Qe, I, C, Ot, lt, na, ra, Ri, oa, y, rr, or, Za, cr, lr, dr, ur, pr, hr, qi, Ni, mr, Hi, fr, Gi, Ki;
2241
+ let ca = class extends p {
2242
+ constructor() {
2243
+ super(), f(this, y), this.cameraRef = bt(), f(this, Q), f(this, Wt), f(this, oe, bt()), f(this, ia, bt()), f(this, sa), f(this, Wi, new Co(this)), f(this, Oi, new ri(this)), f(this, Ui, new $(this, oi())), f(this, Ai, new $(this, ci())), f(this, Vi, ge(
2244
+ this,
2245
+ li(),
2246
+ !0
2247
+ )), f(this, Fe), f(this, Qa, new J()), f(this, Qe, new J()), f(this, I, new J()), f(this, C), f(this, Ot), f(this, lt), f(this, na), f(this, ra), f(this, Ri, ge(this, Mo(), [
2248
+ ko($o)
2249
+ ])), f(this, oa, ge(
2250
+ this,
2251
+ Fo(),
2252
+ st.Front
2253
+ )), this.logImageCapturedEvent = async () => {
2254
+ const e = await Si(Lo(), {
2255
+ defaultValue: void 0
2256
+ });
2257
+ e && xo(this, {
2258
+ metadata: {
2259
+ ...e,
2260
+ cls: Vt(),
2261
+ clsm: At()
2262
+ },
2263
+ tags: {
2264
+ ...l(this, oe).value && {
2265
+ supplementalImageFpsFacemap: l(this, oe).value.getFps()
2266
+ }
2267
+ }
2268
+ });
2269
+ }, this.onImageCapture = async (e) => {
2270
+ const t = D(), a = j(_()), s = l(this, oe).value;
2271
+ t.send({ type: a.JumioStandardCaptureScreenCaptureFinish }), await this.logImageCapturedEvent();
2272
+ const i = Po(Jo(kt.Face));
2273
+ i?.upload?.id && jo(i.upload.id);
2274
+ const n = Ns({
2275
+ id: bi(),
2276
+ category: w.Facemap,
2277
+ state: Gs.NotStarted,
2278
+ source: Hs.Camera,
2279
+ credentialId: _(),
2280
+ classifier: kt.Face,
2281
+ blob: e.detail.blob,
2282
+ batchBytesToUpload: e.detail.blob.size,
2283
+ batchBytesUploaded: 0,
2284
+ batchUploadProgress: 0
2285
+ });
2286
+ this.requestUpload(
2287
+ new Ks({
2288
+ captureType: Je.ManualSelfie,
2289
+ uploadFilesMetadata: {
2290
+ applyUsabilityFilter: !0,
2291
+ files: [
2292
+ {
2293
+ multipartName: n.id,
2294
+ fileType: Do[e.detail.blob.type],
2295
+ uploadType: kt.Face,
2296
+ captureMethod: Je.ManualSelfie,
2297
+ usabilityExpected: !0,
2298
+ file: e.detail.blob,
2299
+ riskSignals: {
2300
+ deviceId: Y()?.deviceId ?? "",
2301
+ deviceLabel: Y()?.label ?? "",
2302
+ groupId: Y()?.groupId ?? ""
2303
+ },
2304
+ cls: Vt(),
2305
+ clsm: At()
2306
+ },
2307
+ ...s ? s.getImages() : []
2308
+ ]
2309
+ }
2310
+ })
2311
+ );
2312
+ }, this.requestUpload = (e) => {
2313
+ const t = D(), a = j(_());
2314
+ t.send({ type: a.JumioStandardCaptureScreenCaptureFinish }), this.componentController.requestUpload(e);
2315
+ }, f(this, qi, () => {
2316
+ const e = l(this, Fe).value;
2317
+ if (ee(Ao, e)) {
2318
+ const t = e.minBufferAge ?? 0, a = l(this, oe).value?.getBufferAge();
2319
+ return typeof a == "number" ? a >= t : !0;
2320
+ }
2321
+ return !0;
2322
+ }), f(this, Ni, () => {
2323
+ l(this, Qe) && l(this, Ot) && l(this, Qe).next();
2324
+ }), G(this, C, S().getControllerById(w.Facemap)), this.componentController = new a2(this), G(this, Wt, new $(this, l(this, C).selectLivenessState$())), G(this, Q, new $(this, de())), G(this, sa, new $(this, yi())), G(this, Fe, new $(this, Eo("SELFIE_SEQUENCE"))), G(this, lt, new $(
2325
+ this,
2326
+ l(this, C).selectJLiveManualCaptureFallbackReason$()
2327
+ )), G(this, Ot, new $(this, l(this, Qe))), l(this, C).selectLivenessVisibleFaceFinder$().pipe(m(Bs), g(l(this, I))).subscribe(), l(this, C).selectLivenessBackgroundColor$().pipe(m(Bo), g(l(this, I))).subscribe(), l(this, C).selectLivenessScanning$().pipe(m(Io), g(l(this, I))).subscribe(), Ws().pipe(m(To), g(l(this, I))).subscribe(), M(this, y, pr).call(this).pipe(g(l(this, I))).subscribe(), M(this, y, hr).call(this).pipe(g(l(this, I))).subscribe(), zo().pipe(
2328
+ Wo(),
2329
+ m(([e, t]) => {
2330
+ if (e?.id === Ut.LivenessFailed && !t) {
2331
+ const a = j(_());
2332
+ D().send({
2333
+ type: a.JumioStandardCaptureScreenLivenessRetry
2334
+ }), l(this, C).resetJLiveFallbackError();
2335
+ }
2336
+ }),
2337
+ g(l(this, I))
2338
+ ).subscribe(), M(this, y, ur).call(this).pipe(g(l(this, I))).subscribe(), M(this, y, mr).call(this).pipe(g(l(this, I))).subscribe(), l(this, C).resetJLiveFallbackError();
2339
+ }
2340
+ connectedCallback() {
2341
+ super.connectedCallback(), Oo(
2342
+ new Uo({
2343
+ constraints: {
2344
+ video: {
2345
+ ...Xs(),
2346
+ facingMode: {
2347
+ ideal: t2(l(this, oa).value)
2348
+ }
2349
+ },
2350
+ audio: !1
2351
+ }
2352
+ })
2353
+ );
2354
+ }
2355
+ firstUpdated(e) {
2356
+ super.firstUpdated(e), l(this, Qa).next();
2357
+ }
2358
+ disconnectedCallback() {
2359
+ super.disconnectedCallback(), l(this, I).next(), _e.getInstance().exitFullscreen().catch(rt);
2360
+ }
2361
+ render() {
2362
+ return l(this, Wt).value ? l(this, Q).value === u.JumioStandardUsabilityCheck ? b : d`
2363
+ <jumio-sdk-step-facemap-jumio-standard-capture-view
2364
+ ${va(l(this, ia))}
2365
+ data-qa-id="facemap-capture-view"
2366
+ .config="${M(this, y, rr).call(this)}"
2367
+ >
2368
+ ${M(this, y, or).call(this)}
2369
+ </jumio-sdk-step-facemap-jumio-standard-capture-view>
2370
+ ` : b;
2371
+ }
2372
+ };
2373
+ Q = /* @__PURE__ */ new WeakMap();
2374
+ Wt = /* @__PURE__ */ new WeakMap();
2375
+ oe = /* @__PURE__ */ new WeakMap();
2376
+ ia = /* @__PURE__ */ new WeakMap();
2377
+ sa = /* @__PURE__ */ new WeakMap();
2378
+ Wi = /* @__PURE__ */ new WeakMap();
2379
+ Oi = /* @__PURE__ */ new WeakMap();
2380
+ Ui = /* @__PURE__ */ new WeakMap();
2381
+ Ai = /* @__PURE__ */ new WeakMap();
2382
+ Vi = /* @__PURE__ */ new WeakMap();
2383
+ Fe = /* @__PURE__ */ new WeakMap();
2384
+ Qa = /* @__PURE__ */ new WeakMap();
2385
+ Qe = /* @__PURE__ */ new WeakMap();
2386
+ I = /* @__PURE__ */ new WeakMap();
2387
+ C = /* @__PURE__ */ new WeakMap();
2388
+ Ot = /* @__PURE__ */ new WeakMap();
2389
+ lt = /* @__PURE__ */ new WeakMap();
2390
+ na = /* @__PURE__ */ new WeakMap();
2391
+ ra = /* @__PURE__ */ new WeakMap();
2392
+ Ri = /* @__PURE__ */ new WeakMap();
2393
+ oa = /* @__PURE__ */ new WeakMap();
2394
+ y = /* @__PURE__ */ new WeakSet();
2395
+ rr = function() {
2396
+ const e = l(this, Ui).value, t = di({
2397
+ hasHistoryItems: this.navigationService?.hasHistoryItems() ?? !1,
2398
+ isCrossDeviceScreen: e?.activeScreen === pi.CrossDevice,
2399
+ forceCrossDeviceDisplay: ui()
2400
+ }), a = t ? void 0 : M(this, y, Za).call(this), s = l(this, Wi).createViewConfig(), i = An(l(this, Q).value) && l(this, qi).call(this), n = l(this, C).getActiveFaceVerificationMethod();
2401
+ return {
2402
+ navigationButton: {
2403
+ hasBackNavigation: t,
2404
+ showBackButton: l(this, Ai).value ?? !0,
2405
+ type: le.Tertiary,
2406
+ shape: Sa.Round,
2407
+ localeSelection: {
2408
+ visible: !t && l(this, Vi).value,
2409
+ locales: a?.getLocales() ?? [],
2410
+ selectedLocale: l(this, ra) ?? a?.getSelectedLocale(),
2411
+ selectType: hi.CaptureScreen,
2412
+ onLocaleSelect: (r) => {
2413
+ G(this, ra, r), M(this, y, Za).call(this).updateLocale(r), this.requestUpdate();
2414
+ }
2415
+ },
2416
+ onBack: () => {
2417
+ this.navigationService?.back();
2418
+ }
2419
+ },
2420
+ captureHints: {
2421
+ ...s,
2422
+ tips: [
2423
+ c("Make sure you are in a well-lit environment", {
2424
+ id: "instruction.ensure_well_lit_environment"
2425
+ }),
2426
+ c("Look straight into the camera", {
2427
+ id: "instruction.look_straight_into_camera"
2428
+ })
2429
+ ],
2430
+ secondaryAction: {
2431
+ visible: Ro(),
2432
+ label: c("Take photo manually", { id: "cta.take_photo_manually" }),
2433
+ onAction: () => {
2434
+ l(this, C).setJLiveManualCaptureFallbackReason(De.UserSelection), Es({ visible: !1 });
2435
+ }
2436
+ }
2437
+ },
2438
+ crossDevice: {
2439
+ visible: l(this, Oi).value,
2440
+ fluid: !1,
2441
+ type: le.Tertiary,
2442
+ size: ga.Medium,
2443
+ onCrossDeviceStart: () => {
2444
+ mi(this);
2445
+ }
2446
+ },
2447
+ captureButton: {
2448
+ visible: i,
2449
+ disabled: !(i && M(this, y, cr).call(this)),
2450
+ onCapture: () => {
2451
+ this.cameraRef.value?.captureImage();
2452
+ }
2453
+ },
2454
+ media: {
2455
+ fallbackVisible: !0,
2456
+ fallbackLabel: c("Starting camera…", { id: "camera.message.initializing_camera" }),
2457
+ cameraFilterFn: e2(l(this, oa).value)
2458
+ },
2459
+ captureState: Xc(l(this, Q).value),
2460
+ fullscreenButtonVisible: !!n && M(this, y, Hi).call(this, n),
2461
+ onHelp: Vo
2462
+ };
2463
+ };
2464
+ or = function() {
2465
+ return d`
2466
+ <x-camera
2467
+ ${va(this.cameraRef)}
2468
+ slot="live-media"
2469
+ class="camera"
2470
+ .applyConstraintCallback="${qo(l(this, Ri).value)}"
2471
+ .videoConstraints="${Xs}"
2472
+ @imagecaptured="${(e) => {
2473
+ this.onImageCapture(e);
2474
+ }}"
2475
+ @uploadrequest="${(e) => {
2476
+ this.requestUpload(e);
2477
+ }}"
2478
+ >
2479
+ <div slot="backdrop" class="backdrop"></div>
2480
+ ${M(this, y, lr).call(this)}
2481
+ <jumio-sdk-camera-permissions-screen></jumio-sdk-camera-permissions-screen>
2482
+ </x-camera>
2483
+ `;
2484
+ };
2485
+ Za = function() {
2486
+ return l(this, na) ?? G(this, na, new fi(this));
2487
+ };
2488
+ cr = function() {
2489
+ return !!l(this, sa).value && l(this, Q).value === u.JumioStandardCaptureScreenSelfie;
2490
+ };
2491
+ lr = function() {
2492
+ if (Kc(l(this, Q).value))
2493
+ return d`
2494
+ <x-ds-face-finder slot="overlay"></x-ds-face-finder>
2495
+ ${M(this, y, dr).call(this)}
2496
+ `;
2497
+ if (!this.cameraRef.value)
2498
+ return b;
2499
+ const { merchantSettings: { jLiveIod: e = -1 } = {} } = Ct(), {
2500
+ initial: { fillRatio: t }
2501
+ } = Zo;
2502
+ return d`
2503
+ <x-ds-face-finder
2504
+ slot="overlay"
2505
+ .customOvalConfigurations="${e > 0 && Ci() ? {
2506
+ far: {
2507
+ fillRatio: t * (e / Ts)
2508
+ }
2509
+ } : void 0}"
2510
+ ></x-ds-face-finder>
2511
+ <jumio-sdk-liveness
2512
+ slot="overlay"
2513
+ .getImageData="${this.cameraRef.value.getImageData}"
2514
+ .getBlob="${this.cameraRef.value.getBlob}"
2515
+ ></jumio-sdk-liveness>
2516
+ <jumio-sdk-liveness-screen-wake-lock slot="semantic"></jumio-sdk-liveness-screen-wake-lock>
2517
+ ${l(this, Q).value === u.JumioStandardCaptureScreenLiveness ? d`
2518
+ <x-ds-top-message-container slot="overlay">
2519
+ <jumio-sdk-liveness-capture-state></jumio-sdk-liveness-capture-state>
2520
+ </x-ds-top-message-container>
2521
+ ` : b}
2522
+ `;
2523
+ };
2524
+ dr = function() {
2525
+ return l(this, Fe).value ? d`
2526
+ <jumio-sdk-supplemental-images
2527
+ ${va(l(this, oe))}
2528
+ slot="semantic"
2529
+ .category="${w.Facemap}"
2530
+ .uploadType="${"LIVENESS_SERIES_"}"
2531
+ .config="${l(this, Fe).value}"
2532
+ .updateNotifier="${l(this, Ni)}"
2533
+ ></jumio-sdk-supplemental-images>
2534
+ ` : b;
2535
+ };
2536
+ ur = function() {
2537
+ return l(this, C).selectActiveFaceVerificationMethod$().pipe(
2538
+ _a(yi()),
2539
+ m(([e, t]) => {
2540
+ e && M(this, y, Hi).call(this, e) && t ? _e.getInstance().enterFullscreen(l(this, ia).value?.appContainerRef.value).catch(rt) : _e.getInstance().exitFullscreen().catch(rt);
2541
+ })
2542
+ );
2543
+ };
2544
+ pr = function() {
2545
+ return l(this, C).selectJLiveManualCaptureFallbackReason$().pipe(
2546
+ ce((e) => !!e),
2547
+ m((e) => {
2548
+ const t = S(), a = D(), s = j(_()), { step: i } = No();
2549
+ t.getLoggerManager().log(
2550
+ Ho({
2551
+ metadata: {
2552
+ reason: e,
2553
+ step: i
2554
+ }
2555
+ })
2556
+ ), l(this, oe).value?.updateActivationTime(), l(this, C).setActiveFaceVerificationMethod(ae.JumioStandard), l(this, C).setLivenessVisibleFaceFinder("near"), a.send({
2557
+ type: s.JumioStandardCaptureScreenSelfie
2558
+ });
2559
+ })
2560
+ );
2561
+ };
2562
+ hr = function() {
2563
+ return l(this, C).selectJLiveFallbackError$().pipe(
2564
+ ce((e) => !!e),
2565
+ m(() => {
2566
+ const { title: e, message: t } = Ko[ds.UsabilityError];
2567
+ Pa.showMessageIfPossible({
2568
+ id: Ut.LivenessFailed,
2569
+ type: Ds.Error,
2570
+ title: c(e.label, { id: e.id }),
2571
+ message: c(t.label, { id: t.id }),
2572
+ errorCode: `${ds.UsabilityError}`,
2573
+ closable: !0,
2574
+ date: /* @__PURE__ */ new Date(),
2575
+ transactionId: Go()
2576
+ });
2577
+ })
2578
+ );
2579
+ };
2580
+ qi = /* @__PURE__ */ new WeakMap();
2581
+ Ni = /* @__PURE__ */ new WeakMap();
2582
+ mr = function() {
2583
+ return _e.getInstance().fullscreenChange$.pipe(
2584
+ _a(
2585
+ l(this, C).selectActiveFaceVerificationMethod$(),
2586
+ // We should keep this line, because we would like to be notified when we fall back to Manual Selfie
2587
+ l(this, C).selectJLiveManualCaptureFallbackReason$()
2588
+ ),
2589
+ m(([e, t]) => {
2590
+ e && M(this, y, fr).call(this, t) ? Xo() : Yo();
2591
+ })
2592
+ );
2593
+ };
2594
+ Hi = function(e) {
2595
+ return !Ci() && e === ae.JumioStandard ? !1 : !Qo(["ios", "ipad"]) && (M(this, y, Ki).call(this, e) || M(this, y, Gi).call(this, e));
2596
+ };
2597
+ fr = function(e) {
2598
+ return Ci() && (M(this, y, Gi).call(this, e) || M(this, y, Ki).call(this, e));
2599
+ };
2600
+ Gi = function(e) {
2601
+ return e === ae.JumioPremium && !l(this, lt).value;
2602
+ };
2603
+ Ki = function(e) {
2604
+ return e === ae.JumioStandard && !l(this, lt).value;
2605
+ };
2606
+ ca.styles = [
2607
+ ...p.styles,
2608
+ O`
2609
+ :host {
2610
+ display: contents;
2611
+ }
2612
+ `
2613
+ ];
2614
+ nr([
2615
+ vi({ context: gi, subscribe: !0 })
2616
+ ], ca.prototype, "navigationService", 2);
2617
+ ca = nr([
2618
+ E(),
2619
+ F("jumio-sdk-step-facemap-jumio-standard-capture")
2620
+ ], ca);
2621
+ var W2 = Object.defineProperty, O2 = Object.getOwnPropertyDescriptor, vr = (e) => {
2622
+ throw TypeError(e);
2623
+ }, gr = (e, t, a, s) => {
2624
+ for (var i = s > 1 ? void 0 : s ? O2(t, a) : t, n = e.length - 1, r; n >= 0; n--)
2625
+ (r = e[n]) && (i = (s ? r(t, a, i) : r(i)) || i);
2626
+ return s && i && W2(t, a, i), i;
2627
+ }, Xi = (e, t, a) => t.has(e) || vr("Cannot " + a), re = (e, t, a) => (Xi(e, t, "read from private field"), a ? a.call(e) : t.get(e)), N = (e, t, a) => t.has(e) ? vr("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), Sr = (e, t, a, s) => (Xi(e, t, "write to private field"), t.set(e, a), a), Ze = (e, t, a) => (Xi(e, t, "access private method"), a), Yi, Qi, Zi, es, ts, as, la, da, ve, _r, yr, wr, ei;
2628
+ let ua = class extends p {
2629
+ constructor() {
2630
+ super(...arguments), N(this, ve), N(this, Yi, new $(
2631
+ this,
2632
+ ec(_())
2633
+ )), N(this, Qi, new ri(this)), N(this, Zi, new js(this)), N(this, es, new $(this, oi())), N(this, ts, new $(this, ci())), N(this, as, ge(
2634
+ this,
2635
+ li(),
2636
+ !0
2637
+ )), N(this, la), N(this, da);
2638
+ }
2639
+ render() {
2640
+ return d`
2641
+ <jumio-sdk-step-facemap-usability-check-view
2642
+ data-qa-id="facemap-usability-view"
2643
+ .config="${Ze(this, ve, _r).call(this)}"
2644
+ ></jumio-sdk-step-facemap-usability-check-view>
2645
+ `;
2646
+ }
2647
+ };
2648
+ Yi = /* @__PURE__ */ new WeakMap();
2649
+ Qi = /* @__PURE__ */ new WeakMap();
2650
+ Zi = /* @__PURE__ */ new WeakMap();
2651
+ es = /* @__PURE__ */ new WeakMap();
2652
+ ts = /* @__PURE__ */ new WeakMap();
2653
+ as = /* @__PURE__ */ new WeakMap();
2654
+ la = /* @__PURE__ */ new WeakMap();
2655
+ da = /* @__PURE__ */ new WeakMap();
2656
+ ve = /* @__PURE__ */ new WeakSet();
2657
+ _r = function() {
2658
+ const e = re(this, es).value, t = di({
2659
+ hasHistoryItems: this.navigationService?.hasHistoryItems() ?? !1,
2660
+ isCrossDeviceScreen: e?.activeScreen === pi.CrossDevice,
2661
+ forceCrossDeviceDisplay: ui()
2662
+ }), a = t ? void 0 : Ze(this, ve, ei).call(this), s = Ze(this, ve, yr).call(this, Ze(this, ve, wr).call(this));
2663
+ return {
2664
+ state: "rejection",
2665
+ navigationButton: {
2666
+ hasBackNavigation: t,
2667
+ showBackButton: re(this, ts).value ?? !0,
2668
+ type: le.Quiet,
2669
+ shape: Sa.Round,
2670
+ localeSelection: {
2671
+ visible: !t && re(this, as).value,
2672
+ locales: a?.getLocales() ?? [],
2673
+ selectedLocale: re(this, da) ?? a?.getSelectedLocale(),
2674
+ selectType: hi.Default,
2675
+ onLocaleSelect: (i) => {
2676
+ Sr(this, da, i), Ze(this, ve, ei).call(this).updateLocale(i), this.requestUpdate();
2677
+ }
2678
+ },
2679
+ onBack: () => {
2680
+ this.navigationService?.back();
2681
+ }
2682
+ },
2683
+ logotype: {
2684
+ logoFromSettings: re(this, Zi).getLogoFromSettings()
2685
+ },
2686
+ ...s,
2687
+ retryLabel: c("Try again", { id: "cta.try_again" }),
2688
+ crossDevice: {
2689
+ visible: re(this, Qi).value,
2690
+ fluid: !0,
2691
+ type: le.Quiet,
2692
+ size: ga.Medium,
2693
+ onCrossDeviceStart: () => {
2694
+ mi(this);
2695
+ }
2696
+ },
2697
+ onRetry: () => {
2698
+ const i = D(), n = j(_());
2699
+ i.send({ type: n.JumioStandardCaptureScreen });
2700
+ }
2701
+ };
2702
+ };
2703
+ yr = function(e) {
2704
+ const t = c("Look straight into the camera", {
2705
+ id: "instruction.look_straight_into_camera"
2706
+ }), a = c("Center your face in the frame and follow the on-screen instructions.", {
2707
+ id: "instruction.center_your_face_and_follow_instructions"
2708
+ }), s = c("Your face must be evenly lit and stand out from the background.", {
2709
+ id: "instruction.ensure_face_evenly_lit_and_clearly_separated_from_background"
2710
+ });
2711
+ switch (e) {
2712
+ case se.TOO_MUCH_MOVEMENT:
2713
+ return {
2714
+ title: c("Too much movement", {
2715
+ id: "liveness.error.title_too_much_movement"
2716
+ }),
2717
+ illustration: "too-much-movement",
2718
+ instructions: [c("Keep still", { id: "instruction.keep_still" }), t, a]
2719
+ };
2720
+ case se.TOO_DARK:
2721
+ return {
2722
+ title: c("Too dark", { id: "liveness.error.title_too_dark" }),
2723
+ illustration: "too-dark",
2724
+ instructions: [
2725
+ c("Move somewhere brighter", {
2726
+ id: "instruction.move_somewhere_brighter"
2727
+ }),
2728
+ s
2729
+ ]
2730
+ };
2731
+ case se.TOO_BRIGHT:
2732
+ return {
2733
+ title: c("Too much light", {
2734
+ id: "liveness.error.title_too_much_light"
2735
+ }),
2736
+ illustration: "too-much-light",
2737
+ instructions: [
2738
+ c("Move somewhere darker", {
2739
+ id: "instruction.move_somewhere_darker"
2740
+ }),
2741
+ s
2742
+ ]
2743
+ };
2744
+ case se.EYES_CLOSED:
2745
+ return {
2746
+ title: c("Eyes are closed", {
2747
+ id: "liveness.error.title_eyes_closed"
2748
+ }),
2749
+ illustration: "face-obscured",
2750
+ instructions: [
2751
+ c("Keep your eyes open", {
2752
+ id: "instruction.keep_your_eyes_open"
2753
+ }),
2754
+ a
2755
+ ]
2756
+ };
2757
+ case se.SUNGLASSES:
2758
+ return {
2759
+ title: c("Sunglasses detected", {
2760
+ id: "liveness.error.sunglasses_detected"
2761
+ }),
2762
+ illustration: "face-obscured",
2763
+ instructions: [
2764
+ c("Remove sunglasses", {
2765
+ id: "instruction.remove_sunglasses"
2766
+ }),
2767
+ c("Hold device at eye level", {
2768
+ id: "instruction.hold_device_at_eye_level"
2769
+ }),
2770
+ a
2771
+ ]
2772
+ };
2773
+ case se.NOT_MAX_BRIGHTNESS:
2774
+ return {
2775
+ title: c("Screen too dim", {
2776
+ id: "liveness.error.title_screen_brightness"
2777
+ }),
2778
+ illustration: "too-dark",
2779
+ instructions: [
2780
+ c("Make sure the screen brightness is set to maximum", {
2781
+ id: "instruction.ensure_screen_brightness_set_to_maximum"
2782
+ }),
2783
+ a
2784
+ ]
2785
+ };
2786
+ case se.FACE_OBSCURED:
2787
+ return {
2788
+ title: c("Face is obscured", {
2789
+ id: "liveness.error.title_face_obscured"
2790
+ }),
2791
+ illustration: "face-obscured",
2792
+ instructions: [
2793
+ c("Remove any face coverings", {
2794
+ id: "instruction.remove_face_coverings"
2795
+ }),
2796
+ t,
2797
+ a
2798
+ ]
2799
+ };
2800
+ case se.MULTIPLE_FACES:
2801
+ return {
2802
+ title: c("Multiple people detected", {
2803
+ id: "liveness.error.multiple_people_detected"
2804
+ }),
2805
+ illustration: "multiple-people-detected",
2806
+ instructions: [
2807
+ c("Be the only person in the frame", {
2808
+ id: "instruction.be_the_only_person_in_frame"
2809
+ }),
2810
+ t,
2811
+ a
2812
+ ]
2813
+ };
2814
+ default:
2815
+ return {
2816
+ title: c("Face verification failed", {
2817
+ id: "liveness.error.title_generic_error"
2818
+ }),
2819
+ illustration: "face-verification-failed",
2820
+ instructions: [s, t, a]
2821
+ };
2822
+ }
2823
+ };
2824
+ wr = function() {
2825
+ const [e] = re(this, Yi).value ?? [];
2826
+ return e?.usability.result.rejectReason.reasonCode;
2827
+ };
2828
+ ei = function() {
2829
+ return re(this, la) ?? Sr(this, la, new fi(this));
2830
+ };
2831
+ ua.styles = [
2832
+ ...p.styles,
2833
+ O`
2834
+ :host {
2835
+ display: contents;
2836
+ }
2837
+ `
2838
+ ];
2839
+ gr([
2840
+ vi({ context: gi, subscribe: !0 })
2841
+ ], ua.prototype, "navigationService", 2);
2842
+ ua = gr([
2843
+ E(),
2844
+ F("jumio-sdk-step-facemap-usability-check")
2845
+ ], ua);
2846
+ var U2 = Object.getOwnPropertyDescriptor, br = (e) => {
2847
+ throw TypeError(e);
2848
+ }, A2 = (e, t, a, s) => {
2849
+ for (var i = s > 1 ? void 0 : s ? U2(t, a) : t, n = e.length - 1, r; n >= 0; n--)
2850
+ (r = e[n]) && (i = r(i) || i);
2851
+ return i;
2852
+ }, Cr = (e, t, a) => t.has(e) || br("Cannot " + a), V2 = (e, t, a) => (Cr(e, t, "read from private field"), a ? a.call(e) : t.get(e)), xs = (e, t, a) => t.has(e) ? br("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), wt = (e, t, a) => (Cr(e, t, "access private method"), a), ti, $e, kr, $r, Mr, Fr;
2853
+ let ai = class extends p {
2854
+ constructor() {
2855
+ super(...arguments), xs(this, $e), this.componentController = new Nc(this), xs(this, ti, new $(this, de()));
2856
+ }
2857
+ getActiveStep() {
2858
+ return V2(this, ti).value;
2859
+ }
2860
+ render() {
2861
+ switch (this.getActiveStep()) {
2862
+ case u.JumioStandardGuidance:
2863
+ return wt(this, $e, kr).call(this);
2864
+ case u.JumioStandardCaptureScreen:
2865
+ case u.JumioStandardCaptureScreenSelfie:
2866
+ case u.JumioStandardCaptureScreenLiveness:
2867
+ case u.JumioStandardCaptureScreenLivenessLoading:
2868
+ case u.JumioStandardCaptureScreenCaptureFinish:
2869
+ case u.JumioStandardCaptureScreenUpload:
2870
+ case u.JumioStandardUsabilityCheck:
2871
+ return wt(this, $e, $r).call(this);
2872
+ case u.JumioStandardCaptureScreenUploadFailed:
2873
+ return wt(this, $e, Fr).call(this);
2874
+ case u.JumioStandardUsabilityCheckFailure:
2875
+ return wt(this, $e, Mr).call(this);
2876
+ default:
2877
+ return b;
2878
+ }
2879
+ }
2880
+ };
2881
+ ti = /* @__PURE__ */ new WeakMap();
2882
+ $e = /* @__PURE__ */ new WeakSet();
2883
+ kr = function() {
2884
+ return d`<jumio-sdk-step-facemap-jumio-standard-introduction></jumio-sdk-step-facemap-jumio-standard-introduction>`;
2885
+ };
2886
+ $r = function() {
2887
+ return d`<jumio-sdk-step-facemap-jumio-standard-capture></jumio-sdk-step-facemap-jumio-standard-capture>`;
2888
+ };
2889
+ Mr = function() {
2890
+ return d`<jumio-sdk-step-facemap-usability-check></jumio-sdk-step-facemap-usability-check>`;
2891
+ };
2892
+ Fr = function() {
2893
+ const e = j(_());
2894
+ return d`
2895
+ <x-app-container>
2896
+ <jumio-sdk-file-upload-retry
2897
+ slot="main"
2898
+ role="alert"
2899
+ aria-live="assertive"
2900
+ aria-atomic="true"
2901
+ .retryAction="${() => {
2902
+ const t = _();
2903
+ tc(t), D().send({ type: e.JumioStandardCaptureScreen });
2904
+ }}"
2905
+ data-qa-id="file-upload-failed-step"
2906
+ ></jumio-sdk-file-upload-retry>
2907
+ <jumio-sdk-cross-device-button slot="bottom-left" data-fluid="false"></jumio-sdk-cross-device-button>
2908
+ </x-app-container>
2909
+ `;
2910
+ };
2911
+ ai.styles = [
2912
+ ...p.styles,
2913
+ O`
2914
+ :host {
2915
+ display: contents;
2916
+ }
2917
+ `
2918
+ ];
2919
+ ai = A2([
2920
+ E(),
2921
+ F("jumio-sdk-step-facemap-jumio-standard")
2922
+ ], ai);
2923
+ var R2 = Object.defineProperty, q2 = Object.getOwnPropertyDescriptor, Lr = (e) => {
2924
+ throw TypeError(e);
2925
+ }, xr = (e, t, a, s) => {
2926
+ for (var i = s > 1 ? void 0 : s ? q2(t, a) : t, n = e.length - 1, r; n >= 0; n--)
2927
+ (r = e[n]) && (i = (s ? r(t, a, i) : r(i)) || i);
2928
+ return s && i && R2(t, a, i), i;
2929
+ }, N2 = (e, t, a) => t.has(e) || Lr("Cannot " + a), H2 = (e, t, a) => t.has(e) ? Lr("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, a), G2 = (e, t, a) => (N2(e, t, "access private method"), a), ii, Pr;
2930
+ let pa = class extends p {
2931
+ constructor() {
2932
+ super(...arguments), H2(this, ii), this.stepInformationController = new $(this, de()), this.componentController = new nc(this);
2933
+ }
2934
+ get workflowStepController() {
2935
+ return S().getControllerById(w.Facemap);
2936
+ }
2937
+ render() {
2938
+ const { value: e = u.Start } = this.stepInformationController;
2939
+ switch (e) {
2940
+ case u.JumioStandard:
2941
+ case u.JumioStandardGuidance:
2942
+ case u.JumioStandardCaptureScreen:
2943
+ case u.JumioStandardCaptureScreenSelfie:
2944
+ case u.JumioStandardCaptureScreenLiveness:
2945
+ case u.JumioStandardCaptureScreenLivenessLoading:
2946
+ case u.JumioStandardCaptureScreenCaptureFinish:
2947
+ case u.JumioStandardCaptureScreenUpload:
2948
+ case u.JumioStandardCaptureScreenUploadFailed:
2949
+ case u.JumioStandardUsabilityCheck:
2950
+ case u.JumioStandardUsabilityCheckFailure:
2951
+ case u.JumioStandardFinish:
2952
+ return G2(this, ii, Pr).call(this);
2953
+ case u.Start:
2954
+ case u.Finish:
2955
+ default:
2956
+ return b;
2957
+ }
2958
+ }
2959
+ };
2960
+ ii = /* @__PURE__ */ new WeakSet();
2961
+ Pr = function() {
2962
+ return document.querySelector("template#face_standard") ? d`
2963
+ <jumio-sdk-step-facemap-view
2964
+ data-qa-id="facemap-view"
2965
+ .config="${{
2966
+ state: "jumio-standard",
2967
+ jumioStandard: { state: "empty" }
2968
+ }}"
2969
+ ></jumio-sdk-step-facemap-view>
2970
+ ` : d`
2971
+ <jumio-sdk-step-facemap-jumio-standard data-qa-id="jumio-standard"></jumio-sdk-step-facemap-jumio-standard>
2972
+ `;
2973
+ };
2974
+ pa.styles = [
2975
+ ...p.styles,
2976
+ O`
2977
+ :host {
2978
+ display: contents;
2979
+ }
2980
+ `
2981
+ ];
2982
+ xr([
2983
+ ac({ context: sc }),
2984
+ ic()
2985
+ ], pa.prototype, "workflowStepController", 1);
2986
+ pa = xr([
2987
+ E(),
2988
+ F("jumio-sdk-step-facemap")
2989
+ ], pa);
2990
+ var K2 = Object.getOwnPropertyDescriptor, X2 = (e, t, a, s) => {
2991
+ for (var i = s > 1 ? void 0 : s ? K2(t, a) : t, n = e.length - 1, r; n >= 0; n--)
2992
+ (r = e[n]) && (i = r(i) || i);
2993
+ return i;
2994
+ };
2995
+ const Y2 = (e) => {
2996
+ const t = {
2997
+ [u.JumioStandardCaptureScreenLivenessLoading]: {
2998
+ text: c("Loading", {
2999
+ id: "status.loading"
3000
+ }),
3001
+ progress: 0
3002
+ },
3003
+ [u.JumioStandardCaptureScreenSelfie]: {
3004
+ text: c("Face Verification", {
3005
+ id: "liveness.face_verification"
3006
+ }),
3007
+ progress: 0
3008
+ },
3009
+ [u.JumioStandardCaptureScreenCaptureFinish]: {
3010
+ text: c("Scanning completed", {
3011
+ id: "liveness.prompt.scanning_completed"
3012
+ }),
3013
+ progress: 100
3014
+ }
3015
+ }, a = e ? t[e] : void 0;
3016
+ return {
3017
+ feedback: {
3018
+ ...a ? { message: a } : {}
3019
+ }
3020
+ };
3021
+ };
3022
+ let si = class extends p {
3023
+ constructor() {
3024
+ super(...arguments), this.captureStateController = new $(this, de());
3025
+ }
3026
+ render() {
3027
+ const e = this.captureStateController?.value, t = Y2(e);
3028
+ return e && t.feedback.message ? d`
3029
+ <jumio-sdk-step-facemap-capture-state-view
3030
+ data-qa-id="facemap-capture-state-view"
3031
+ .config="${t}"
3032
+ ></jumio-sdk-step-facemap-capture-state-view>
3033
+ ` : d`<slot></slot>`;
3034
+ }
3035
+ };
3036
+ si.styles = [
3037
+ ...p.styles,
3038
+ O`
3039
+ :host {
3040
+ display: contents;
3041
+ }
3042
+
3043
+ .progress-bar {
3044
+ width: 100%;
3045
+ }
3046
+ `
3047
+ ];
3048
+ si = X2([
3049
+ E(),
3050
+ F("jumio-sdk-step-facemap-capture-state")
3051
+ ], si);
3052
+ export {
3053
+ si as JumioSdkStepFacemapCaptureStateComponent,
3054
+ pa as JumioSdkStepFacemapComponent,
3055
+ ca as JumioSdkStepFacemapJumioStandardCaptureComponent,
3056
+ ai as JumioSdkStepFacemapJumioStandardComponent,
3057
+ ta as JumioSdkStepFacemapJumioStandardIntroductionComponent,
3058
+ ua as JumioSdkStepFacemapUsabilityCheckComponent
3059
+ };
3060
+ //# sourceMappingURL=facemap.C8DMARoY.js.map