@smileid/web-components 11.4.5 → 11.6.0

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 (132) hide show
  1. package/dist/esm/DocumentCaptureScreens-DjSTdVP-.js +5398 -0
  2. package/dist/esm/DocumentCaptureScreens-DjSTdVP-.js.map +1 -0
  3. package/dist/esm/{Navigation-Bb7MPLE8.js → Navigation-6DH3vF4-.js} +28 -22
  4. package/dist/esm/Navigation-6DH3vF4-.js.map +1 -0
  5. package/dist/esm/{PoweredBySmileId-CxbaihMu.js → PoweredBySmileId-DoKwoPUd.js} +424 -6
  6. package/dist/esm/PoweredBySmileId-DoKwoPUd.js.map +1 -0
  7. package/dist/esm/SelfieCaptureScreens-CtX-4Tco.js +11470 -0
  8. package/dist/esm/SelfieCaptureScreens-CtX-4Tco.js.map +1 -0
  9. package/dist/esm/combobox.js +1 -1
  10. package/dist/esm/document.js +1 -1
  11. package/dist/esm/end-user-consent.js +713 -2
  12. package/dist/esm/end-user-consent.js.map +1 -1
  13. package/dist/esm/index-BqyuTk9f.js +1366 -0
  14. package/dist/esm/{index-C4RTMbgw.js.map → index-BqyuTk9f.js.map} +1 -1
  15. package/dist/esm/localisation.js +1 -1
  16. package/dist/esm/main.js +14 -14
  17. package/dist/esm/navigation.js +1 -1
  18. package/dist/esm/package-CjZI-cNQ.js +2540 -0
  19. package/dist/esm/package-CjZI-cNQ.js.map +1 -0
  20. package/dist/esm/selfie.js +1 -1
  21. package/dist/esm/smart-camera-web.js +81 -37
  22. package/dist/esm/smart-camera-web.js.map +1 -1
  23. package/dist/esm/totp-consent.js +731 -2
  24. package/dist/esm/totp-consent.js.map +1 -1
  25. package/dist/esm/validate.js +31 -0
  26. package/dist/esm/validate.js.map +1 -0
  27. package/dist/smart-camera-web.js +1513 -383
  28. package/dist/smart-camera-web.js.map +1 -1
  29. package/dist/types/main.d.ts +18 -1
  30. package/dist/types/validate.d.ts +21 -0
  31. package/lib/components/document/src/DocumentCaptureScreens.js +97 -18
  32. package/lib/components/document/src/assets/lottie.d.ts +12 -0
  33. package/lib/components/document/src/assets/svg-inline.d.ts +8 -0
  34. package/lib/components/document/src/document-auto-capture/DocumentAutoCapture.stories.js +75 -0
  35. package/lib/components/document/src/document-auto-capture/DocumentAutoCapture.tsx +1458 -0
  36. package/lib/components/document/src/document-auto-capture/README.md +73 -0
  37. package/lib/components/document/src/document-auto-capture/assets/Greenbook_Shimmer.svg +42 -0
  38. package/lib/components/document/src/document-auto-capture/assets/ID_Back_Shimmer.svg +8 -0
  39. package/lib/components/document/src/document-auto-capture/assets/ID_Front_Shimmer.svg +20 -0
  40. package/lib/components/document/src/document-auto-capture/assets/Passport-Shimmer.svg +143 -0
  41. package/lib/components/document/src/document-auto-capture/assets/shimmers.ts +21 -0
  42. package/lib/components/document/src/document-auto-capture/assets/svg-raw.d.ts +4 -0
  43. package/lib/components/document/src/document-auto-capture/components/CaptureButton.tsx +122 -0
  44. package/lib/components/document/src/document-auto-capture/components/Overlay.tsx +167 -0
  45. package/lib/components/document/src/document-auto-capture/components/TuningPanel.tsx +856 -0
  46. package/lib/components/document/src/document-auto-capture/constants/captureLayout.ts +58 -0
  47. package/lib/components/document/src/document-auto-capture/detection/cvErrorRecovery.ts +40 -0
  48. package/lib/components/document/src/document-auto-capture/detection/documentAspect.ts +20 -0
  49. package/lib/components/document/src/document-auto-capture/detection/qualityScoring.ts +35 -0
  50. package/lib/components/document/src/document-auto-capture/detection/seamRejection.ts +209 -0
  51. package/lib/components/document/src/document-auto-capture/detection/synthesisTiming.ts +10 -0
  52. package/lib/components/document/src/document-auto-capture/hooks/useCamera.ts +117 -0
  53. package/lib/components/document/src/document-auto-capture/hooks/useCardDetection.ts +3059 -0
  54. package/lib/components/document/src/document-auto-capture/index.ts +4 -0
  55. package/lib/components/document/src/document-auto-capture/theme.ts +40 -0
  56. package/lib/components/document/src/document-auto-capture/utils/debug.ts +25 -0
  57. package/lib/components/document/src/document-auto-capture/utils/opencvLoader.ts +86 -0
  58. package/lib/components/document/src/document-capture-instructions/DocumentCaptureInstructions.tsx +327 -244
  59. package/lib/components/document/src/document-capture-review/DocumentCaptureReview.js +153 -189
  60. package/lib/components/document/src/document-capture-submission/DocumentCaptureSubmission.tsx +432 -0
  61. package/lib/components/document/src/document-capture-submission/index.js +3 -0
  62. package/lib/components/navigation/src/Navigation.js +27 -8
  63. package/lib/components/selfie/README.md +13 -0
  64. package/lib/components/selfie/src/SelfieCaptureScreens.js +56 -8
  65. package/lib/components/selfie/src/enhanced-smartselfie-capture/EnhancedSmartSelfieCapture.tsx +684 -0
  66. package/lib/components/selfie/src/enhanced-smartselfie-capture/EnhancedSmartSelfieConsent.tsx +71 -0
  67. package/lib/components/selfie/src/enhanced-smartselfie-capture/EnhancedSmartSelfieSubmission.tsx +181 -0
  68. package/lib/components/selfie/src/enhanced-smartselfie-capture/OvalProgress.tsx +87 -0
  69. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/Icon.svg +8 -0
  70. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/accessories.svg +77 -0
  71. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/active_liveness_animation.lottie +0 -0
  72. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/device.svg +12 -0
  73. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/device_orientation.lottie +0 -0
  74. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/good.svg +52 -0
  75. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/id-card.svg +9 -0
  76. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/illustrations.tsx +852 -0
  77. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/instructions-img.svg +3 -0
  78. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/multiple-faces.svg +69 -0
  79. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/person.svg +6 -0
  80. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/phone.svg +8 -0
  81. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/poor-lighting.svg +53 -0
  82. package/lib/components/selfie/src/enhanced-smartselfie-capture/assets/too_dark_animation.lottie +0 -0
  83. package/lib/components/selfie/src/enhanced-smartselfie-capture/components/ActiveLivenessOverlay.tsx +226 -0
  84. package/lib/components/selfie/src/enhanced-smartselfie-capture/components/AlertDisplay.tsx +38 -0
  85. package/lib/components/selfie/src/enhanced-smartselfie-capture/components/BackNavigation.tsx +45 -0
  86. package/lib/components/selfie/src/enhanced-smartselfie-capture/components/CameraPreview.tsx +96 -0
  87. package/lib/components/selfie/src/enhanced-smartselfie-capture/components/CaptureControls.tsx +97 -0
  88. package/lib/components/selfie/src/enhanced-smartselfie-capture/components/CaptureGuidelines.tsx +374 -0
  89. package/lib/components/selfie/src/enhanced-smartselfie-capture/components/ConsentView.tsx +460 -0
  90. package/lib/components/selfie/src/enhanced-smartselfie-capture/components/SubmissionView.tsx +426 -0
  91. package/lib/components/selfie/src/enhanced-smartselfie-capture/components/index.ts +3 -0
  92. package/lib/components/selfie/src/enhanced-smartselfie-capture/constants.ts +23 -0
  93. package/lib/components/selfie/src/enhanced-smartselfie-capture/hooks/index.ts +2 -0
  94. package/lib/components/selfie/src/enhanced-smartselfie-capture/hooks/useCamera.ts +238 -0
  95. package/lib/components/selfie/src/enhanced-smartselfie-capture/hooks/useFaceCapture.ts +1075 -0
  96. package/lib/components/selfie/src/enhanced-smartselfie-capture/index.ts +1 -0
  97. package/lib/components/selfie/src/enhanced-smartselfie-capture/utils/alertMessages.ts +20 -0
  98. package/lib/components/selfie/src/enhanced-smartselfie-capture/utils/canvas.ts +108 -0
  99. package/lib/components/selfie/src/enhanced-smartselfie-capture/utils/faceDetection.ts +545 -0
  100. package/lib/components/selfie/src/enhanced-smartselfie-capture/utils/imageCapture.ts +66 -0
  101. package/lib/components/selfie/src/enhanced-smartselfie-capture/utils/imageQuality.ts +151 -0
  102. package/lib/components/selfie/src/enhanced-smartselfie-capture/utils/index.ts +5 -0
  103. package/lib/components/selfie/src/enhanced-smartselfie-capture/utils/mediapipeManager.ts +215 -0
  104. package/lib/components/selfie/src/selfie-capture-wrapper/SelfieCaptureWrapper.tsx +24 -1
  105. package/lib/components/selfie/src/smartselfie-capture/SmartSelfieCapture.tsx +2 -2
  106. package/lib/components/selfie/src/smartselfie-capture/hooks/useFaceCapture.ts +15 -7
  107. package/lib/components/selfie/src/smartselfie-capture/utils/canvas.ts +4 -6
  108. package/lib/components/signature-pad/package.json +1 -1
  109. package/lib/components/smart-camera-web/src/README.md +11 -0
  110. package/lib/components/smart-camera-web/src/SmartCameraWeb.js +89 -8
  111. package/lib/components/totp-consent/src/TotpConsent.js +1 -1
  112. package/lib/domain/localisation/index.js +2 -2
  113. package/package.json +9 -5
  114. package/dist/esm/DocumentCaptureScreens-D2G0NOQr.js +0 -4147
  115. package/dist/esm/DocumentCaptureScreens-D2G0NOQr.js.map +0 -1
  116. package/dist/esm/EndUserConsent-uHfA3txP.js +0 -717
  117. package/dist/esm/EndUserConsent-uHfA3txP.js.map +0 -1
  118. package/dist/esm/Navigation-Bb7MPLE8.js.map +0 -1
  119. package/dist/esm/PoweredBySmileId-CxbaihMu.js.map +0 -1
  120. package/dist/esm/SelfieCaptureScreens-Dr7VzON7.js +0 -7651
  121. package/dist/esm/SelfieCaptureScreens-Dr7VzON7.js.map +0 -1
  122. package/dist/esm/TotpConsent-Depzg0ti.js +0 -734
  123. package/dist/esm/TotpConsent-Depzg0ti.js.map +0 -1
  124. package/dist/esm/index-C4RTMbgw.js +0 -1360
  125. package/dist/esm/package-D6YrpMcO.js +0 -565
  126. package/dist/esm/package-D6YrpMcO.js.map +0 -1
  127. package/dist/esm/styles-BTEClL7R.js +0 -419
  128. package/dist/esm/styles-BTEClL7R.js.map +0 -1
  129. /package/lib/components/document/src/assets/lottie/{taking photo of green book passport.lottie → greenbook.lottie} +0 -0
  130. /package/lib/components/document/src/assets/lottie/{taking photo of ID FLIP 2D.lottie → id-card-flip.lottie} +0 -0
  131. /package/lib/components/document/src/assets/lottie/{taking photo of ID.lottie → id-card.lottie} +0 -0
  132. /package/lib/components/document/src/assets/lottie/{taking photo of passport 2.lottie → passport.lottie} +0 -0
@@ -0,0 +1,1366 @@
1
+ var x = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
2
+ function Zn(e) {
3
+ return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
4
+ }
5
+ var J, Et;
6
+ function ei() {
7
+ if (Et) return J;
8
+ Et = 1;
9
+ function e() {
10
+ this.__data__ = [], this.size = 0;
11
+ }
12
+ return J = e, J;
13
+ }
14
+ var Y, Ut;
15
+ function E() {
16
+ if (Ut) return Y;
17
+ Ut = 1;
18
+ function e(t, r) {
19
+ return t === r || t !== t && r !== r;
20
+ }
21
+ return Y = e, Y;
22
+ }
23
+ var Q, Gt;
24
+ function U() {
25
+ if (Gt) return Q;
26
+ Gt = 1;
27
+ var e = E();
28
+ function t(r, n) {
29
+ for (var i = r.length; i--; )
30
+ if (e(r[i][0], n))
31
+ return i;
32
+ return -1;
33
+ }
34
+ return Q = t, Q;
35
+ }
36
+ var X, Ht;
37
+ function ti() {
38
+ if (Ht) return X;
39
+ Ht = 1;
40
+ var e = U(), t = Array.prototype, r = t.splice;
41
+ function n(i) {
42
+ var a = this.__data__, o = e(a, i);
43
+ if (o < 0)
44
+ return !1;
45
+ var s = a.length - 1;
46
+ return o == s ? a.pop() : r.call(a, o, 1), --this.size, !0;
47
+ }
48
+ return X = n, X;
49
+ }
50
+ var Z, Vt;
51
+ function ri() {
52
+ if (Vt) return Z;
53
+ Vt = 1;
54
+ var e = U();
55
+ function t(r) {
56
+ var n = this.__data__, i = e(n, r);
57
+ return i < 0 ? void 0 : n[i][1];
58
+ }
59
+ return Z = t, Z;
60
+ }
61
+ var ee, $t;
62
+ function ni() {
63
+ if ($t) return ee;
64
+ $t = 1;
65
+ var e = U();
66
+ function t(r) {
67
+ return e(this.__data__, r) > -1;
68
+ }
69
+ return ee = t, ee;
70
+ }
71
+ var te, Kt;
72
+ function ii() {
73
+ if (Kt) return te;
74
+ Kt = 1;
75
+ var e = U();
76
+ function t(r, n) {
77
+ var i = this.__data__, a = e(i, r);
78
+ return a < 0 ? (++this.size, i.push([r, n])) : i[a][1] = n, this;
79
+ }
80
+ return te = t, te;
81
+ }
82
+ var re, Wt;
83
+ function G() {
84
+ if (Wt) return re;
85
+ Wt = 1;
86
+ var e = ei(), t = ti(), r = ri(), n = ni(), i = ii();
87
+ function a(o) {
88
+ var s = -1, u = o == null ? 0 : o.length;
89
+ for (this.clear(); ++s < u; ) {
90
+ var c = o[s];
91
+ this.set(c[0], c[1]);
92
+ }
93
+ }
94
+ return a.prototype.clear = e, a.prototype.delete = t, a.prototype.get = r, a.prototype.has = n, a.prototype.set = i, re = a, re;
95
+ }
96
+ var ne, Jt;
97
+ function ai() {
98
+ if (Jt) return ne;
99
+ Jt = 1;
100
+ var e = G();
101
+ function t() {
102
+ this.__data__ = new e(), this.size = 0;
103
+ }
104
+ return ne = t, ne;
105
+ }
106
+ var ie, Yt;
107
+ function oi() {
108
+ if (Yt) return ie;
109
+ Yt = 1;
110
+ function e(t) {
111
+ var r = this.__data__, n = r.delete(t);
112
+ return this.size = r.size, n;
113
+ }
114
+ return ie = e, ie;
115
+ }
116
+ var ae, Qt;
117
+ function si() {
118
+ if (Qt) return ae;
119
+ Qt = 1;
120
+ function e(t) {
121
+ return this.__data__.get(t);
122
+ }
123
+ return ae = e, ae;
124
+ }
125
+ var oe, Xt;
126
+ function ui() {
127
+ if (Xt) return oe;
128
+ Xt = 1;
129
+ function e(t) {
130
+ return this.__data__.has(t);
131
+ }
132
+ return oe = e, oe;
133
+ }
134
+ var se, Zt;
135
+ function kn() {
136
+ if (Zt) return se;
137
+ Zt = 1;
138
+ var e = typeof x == "object" && x && x.Object === Object && x;
139
+ return se = e, se;
140
+ }
141
+ var ue, er;
142
+ function P() {
143
+ if (er) return ue;
144
+ er = 1;
145
+ var e = kn(), t = typeof self == "object" && self && self.Object === Object && self, r = e || t || Function("return this")();
146
+ return ue = r, ue;
147
+ }
148
+ var ce, tr;
149
+ function zn() {
150
+ if (tr) return ce;
151
+ tr = 1;
152
+ var e = P(), t = e.Symbol;
153
+ return ce = t, ce;
154
+ }
155
+ var le, rr;
156
+ function ci() {
157
+ if (rr) return le;
158
+ rr = 1;
159
+ var e = zn(), t = Object.prototype, r = t.hasOwnProperty, n = t.toString, i = e ? e.toStringTag : void 0;
160
+ function a(o) {
161
+ var s = r.call(o, i), u = o[i];
162
+ try {
163
+ o[i] = void 0;
164
+ var c = !0;
165
+ } catch {
166
+ }
167
+ var l = n.call(o);
168
+ return c && (s ? o[i] = u : delete o[i]), l;
169
+ }
170
+ return le = a, le;
171
+ }
172
+ var de, nr;
173
+ function li() {
174
+ if (nr) return de;
175
+ nr = 1;
176
+ var e = Object.prototype, t = e.toString;
177
+ function r(n) {
178
+ return t.call(n);
179
+ }
180
+ return de = r, de;
181
+ }
182
+ var fe, ir;
183
+ function H() {
184
+ if (ir) return fe;
185
+ ir = 1;
186
+ var e = zn(), t = ci(), r = li(), n = "[object Null]", i = "[object Undefined]", a = e ? e.toStringTag : void 0;
187
+ function o(s) {
188
+ return s == null ? s === void 0 ? i : n : a && a in Object(s) ? t(s) : r(s);
189
+ }
190
+ return fe = o, fe;
191
+ }
192
+ var pe, ar;
193
+ function I() {
194
+ if (ar) return pe;
195
+ ar = 1;
196
+ function e(t) {
197
+ var r = typeof t;
198
+ return t != null && (r == "object" || r == "function");
199
+ }
200
+ return pe = e, pe;
201
+ }
202
+ var ve, or;
203
+ function Bt() {
204
+ if (or) return ve;
205
+ or = 1;
206
+ var e = H(), t = I(), r = "[object AsyncFunction]", n = "[object Function]", i = "[object GeneratorFunction]", a = "[object Proxy]";
207
+ function o(s) {
208
+ if (!t(s))
209
+ return !1;
210
+ var u = e(s);
211
+ return u == n || u == i || u == r || u == a;
212
+ }
213
+ return ve = o, ve;
214
+ }
215
+ var me, sr;
216
+ function di() {
217
+ if (sr) return me;
218
+ sr = 1;
219
+ var e = P(), t = e["__core-js_shared__"];
220
+ return me = t, me;
221
+ }
222
+ var he, ur;
223
+ function fi() {
224
+ if (ur) return he;
225
+ ur = 1;
226
+ var e = di(), t = (function() {
227
+ var n = /[^.]+$/.exec(e && e.keys && e.keys.IE_PROTO || "");
228
+ return n ? "Symbol(src)_1." + n : "";
229
+ })();
230
+ function r(n) {
231
+ return !!t && t in n;
232
+ }
233
+ return he = r, he;
234
+ }
235
+ var ge, cr;
236
+ function pi() {
237
+ if (cr) return ge;
238
+ cr = 1;
239
+ var e = Function.prototype, t = e.toString;
240
+ function r(n) {
241
+ if (n != null) {
242
+ try {
243
+ return t.call(n);
244
+ } catch {
245
+ }
246
+ try {
247
+ return n + "";
248
+ } catch {
249
+ }
250
+ }
251
+ return "";
252
+ }
253
+ return ge = r, ge;
254
+ }
255
+ var ye, lr;
256
+ function vi() {
257
+ if (lr) return ye;
258
+ lr = 1;
259
+ var e = Bt(), t = fi(), r = I(), n = pi(), i = /[\\^$.*+?()[\]{}|]/g, a = /^\[object .+?Constructor\]$/, o = Function.prototype, s = Object.prototype, u = o.toString, c = s.hasOwnProperty, l = RegExp(
260
+ "^" + u.call(c).replace(i, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"
261
+ );
262
+ function f(p) {
263
+ if (!r(p) || t(p))
264
+ return !1;
265
+ var y = e(p) ? l : a;
266
+ return y.test(n(p));
267
+ }
268
+ return ye = f, ye;
269
+ }
270
+ var be, dr;
271
+ function mi() {
272
+ if (dr) return be;
273
+ dr = 1;
274
+ function e(t, r) {
275
+ return t?.[r];
276
+ }
277
+ return be = e, be;
278
+ }
279
+ var _e, fr;
280
+ function Ft() {
281
+ if (fr) return _e;
282
+ fr = 1;
283
+ var e = vi(), t = mi();
284
+ function r(n, i) {
285
+ var a = t(n, i);
286
+ return e(a) ? a : void 0;
287
+ }
288
+ return _e = r, _e;
289
+ }
290
+ var qe, pr;
291
+ function Ln() {
292
+ if (pr) return qe;
293
+ pr = 1;
294
+ var e = Ft(), t = P(), r = e(t, "Map");
295
+ return qe = r, qe;
296
+ }
297
+ var Ce, vr;
298
+ function V() {
299
+ if (vr) return Ce;
300
+ vr = 1;
301
+ var e = Ft(), t = e(Object, "create");
302
+ return Ce = t, Ce;
303
+ }
304
+ var Se, mr;
305
+ function hi() {
306
+ if (mr) return Se;
307
+ mr = 1;
308
+ var e = V();
309
+ function t() {
310
+ this.__data__ = e ? e(null) : {}, this.size = 0;
311
+ }
312
+ return Se = t, Se;
313
+ }
314
+ var Te, hr;
315
+ function gi() {
316
+ if (hr) return Te;
317
+ hr = 1;
318
+ function e(t) {
319
+ var r = this.has(t) && delete this.__data__[t];
320
+ return this.size -= r ? 1 : 0, r;
321
+ }
322
+ return Te = e, Te;
323
+ }
324
+ var Re, gr;
325
+ function yi() {
326
+ if (gr) return Re;
327
+ gr = 1;
328
+ var e = V(), t = "__lodash_hash_undefined__", r = Object.prototype, n = r.hasOwnProperty;
329
+ function i(a) {
330
+ var o = this.__data__;
331
+ if (e) {
332
+ var s = o[a];
333
+ return s === t ? void 0 : s;
334
+ }
335
+ return n.call(o, a) ? o[a] : void 0;
336
+ }
337
+ return Re = i, Re;
338
+ }
339
+ var Ae, yr;
340
+ function bi() {
341
+ if (yr) return Ae;
342
+ yr = 1;
343
+ var e = V(), t = Object.prototype, r = t.hasOwnProperty;
344
+ function n(i) {
345
+ var a = this.__data__;
346
+ return e ? a[i] !== void 0 : r.call(a, i);
347
+ }
348
+ return Ae = n, Ae;
349
+ }
350
+ var Ie, br;
351
+ function _i() {
352
+ if (br) return Ie;
353
+ br = 1;
354
+ var e = V(), t = "__lodash_hash_undefined__";
355
+ function r(n, i) {
356
+ var a = this.__data__;
357
+ return this.size += this.has(n) ? 0 : 1, a[n] = e && i === void 0 ? t : i, this;
358
+ }
359
+ return Ie = r, Ie;
360
+ }
361
+ var we, _r;
362
+ function qi() {
363
+ if (_r) return we;
364
+ _r = 1;
365
+ var e = hi(), t = gi(), r = yi(), n = bi(), i = _i();
366
+ function a(o) {
367
+ var s = -1, u = o == null ? 0 : o.length;
368
+ for (this.clear(); ++s < u; ) {
369
+ var c = o[s];
370
+ this.set(c[0], c[1]);
371
+ }
372
+ }
373
+ return a.prototype.clear = e, a.prototype.delete = t, a.prototype.get = r, a.prototype.has = n, a.prototype.set = i, we = a, we;
374
+ }
375
+ var Pe, qr;
376
+ function Ci() {
377
+ if (qr) return Pe;
378
+ qr = 1;
379
+ var e = qi(), t = G(), r = Ln();
380
+ function n() {
381
+ this.size = 0, this.__data__ = {
382
+ hash: new e(),
383
+ map: new (r || t)(),
384
+ string: new e()
385
+ };
386
+ }
387
+ return Pe = n, Pe;
388
+ }
389
+ var De, Cr;
390
+ function Si() {
391
+ if (Cr) return De;
392
+ Cr = 1;
393
+ function e(t) {
394
+ var r = typeof t;
395
+ return r == "string" || r == "number" || r == "symbol" || r == "boolean" ? t !== "__proto__" : t === null;
396
+ }
397
+ return De = e, De;
398
+ }
399
+ var ke, Sr;
400
+ function $() {
401
+ if (Sr) return ke;
402
+ Sr = 1;
403
+ var e = Si();
404
+ function t(r, n) {
405
+ var i = r.__data__;
406
+ return e(n) ? i[typeof n == "string" ? "string" : "hash"] : i.map;
407
+ }
408
+ return ke = t, ke;
409
+ }
410
+ var ze, Tr;
411
+ function Ti() {
412
+ if (Tr) return ze;
413
+ Tr = 1;
414
+ var e = $();
415
+ function t(r) {
416
+ var n = e(this, r).delete(r);
417
+ return this.size -= n ? 1 : 0, n;
418
+ }
419
+ return ze = t, ze;
420
+ }
421
+ var Le, Rr;
422
+ function Ri() {
423
+ if (Rr) return Le;
424
+ Rr = 1;
425
+ var e = $();
426
+ function t(r) {
427
+ return e(this, r).get(r);
428
+ }
429
+ return Le = t, Le;
430
+ }
431
+ var Oe, Ar;
432
+ function Ai() {
433
+ if (Ar) return Oe;
434
+ Ar = 1;
435
+ var e = $();
436
+ function t(r) {
437
+ return e(this, r).has(r);
438
+ }
439
+ return Oe = t, Oe;
440
+ }
441
+ var Be, Ir;
442
+ function Ii() {
443
+ if (Ir) return Be;
444
+ Ir = 1;
445
+ var e = $();
446
+ function t(r, n) {
447
+ var i = e(this, r), a = i.size;
448
+ return i.set(r, n), this.size += i.size == a ? 0 : 1, this;
449
+ }
450
+ return Be = t, Be;
451
+ }
452
+ var Fe, wr;
453
+ function wi() {
454
+ if (wr) return Fe;
455
+ wr = 1;
456
+ var e = Ci(), t = Ti(), r = Ri(), n = Ai(), i = Ii();
457
+ function a(o) {
458
+ var s = -1, u = o == null ? 0 : o.length;
459
+ for (this.clear(); ++s < u; ) {
460
+ var c = o[s];
461
+ this.set(c[0], c[1]);
462
+ }
463
+ }
464
+ return a.prototype.clear = e, a.prototype.delete = t, a.prototype.get = r, a.prototype.has = n, a.prototype.set = i, Fe = a, Fe;
465
+ }
466
+ var je, Pr;
467
+ function Pi() {
468
+ if (Pr) return je;
469
+ Pr = 1;
470
+ var e = G(), t = Ln(), r = wi(), n = 200;
471
+ function i(a, o) {
472
+ var s = this.__data__;
473
+ if (s instanceof e) {
474
+ var u = s.__data__;
475
+ if (!t || u.length < n - 1)
476
+ return u.push([a, o]), this.size = ++s.size, this;
477
+ s = this.__data__ = new r(u);
478
+ }
479
+ return s.set(a, o), this.size = s.size, this;
480
+ }
481
+ return je = i, je;
482
+ }
483
+ var xe, Dr;
484
+ function Di() {
485
+ if (Dr) return xe;
486
+ Dr = 1;
487
+ var e = G(), t = ai(), r = oi(), n = si(), i = ui(), a = Pi();
488
+ function o(s) {
489
+ var u = this.__data__ = new e(s);
490
+ this.size = u.size;
491
+ }
492
+ return o.prototype.clear = t, o.prototype.delete = r, o.prototype.get = n, o.prototype.has = i, o.prototype.set = a, xe = o, xe;
493
+ }
494
+ var Me, kr;
495
+ function On() {
496
+ if (kr) return Me;
497
+ kr = 1;
498
+ var e = Ft(), t = (function() {
499
+ try {
500
+ var r = e(Object, "defineProperty");
501
+ return r({}, "", {}), r;
502
+ } catch {
503
+ }
504
+ })();
505
+ return Me = t, Me;
506
+ }
507
+ var Ne, zr;
508
+ function jt() {
509
+ if (zr) return Ne;
510
+ zr = 1;
511
+ var e = On();
512
+ function t(r, n, i) {
513
+ n == "__proto__" && e ? e(r, n, {
514
+ configurable: !0,
515
+ enumerable: !0,
516
+ value: i,
517
+ writable: !0
518
+ }) : r[n] = i;
519
+ }
520
+ return Ne = t, Ne;
521
+ }
522
+ var Ee, Lr;
523
+ function Bn() {
524
+ if (Lr) return Ee;
525
+ Lr = 1;
526
+ var e = jt(), t = E();
527
+ function r(n, i, a) {
528
+ (a !== void 0 && !t(n[i], a) || a === void 0 && !(i in n)) && e(n, i, a);
529
+ }
530
+ return Ee = r, Ee;
531
+ }
532
+ var Ue, Or;
533
+ function ki() {
534
+ if (Or) return Ue;
535
+ Or = 1;
536
+ function e(t) {
537
+ return function(r, n, i) {
538
+ for (var a = -1, o = Object(r), s = i(r), u = s.length; u--; ) {
539
+ var c = s[t ? u : ++a];
540
+ if (n(o[c], c, o) === !1)
541
+ break;
542
+ }
543
+ return r;
544
+ };
545
+ }
546
+ return Ue = e, Ue;
547
+ }
548
+ var Ge, Br;
549
+ function zi() {
550
+ if (Br) return Ge;
551
+ Br = 1;
552
+ var e = ki(), t = e();
553
+ return Ge = t, Ge;
554
+ }
555
+ var z = { exports: {} };
556
+ z.exports;
557
+ var Fr;
558
+ function Li() {
559
+ return Fr || (Fr = 1, (function(e, t) {
560
+ var r = P(), n = t && !t.nodeType && t, i = n && !0 && e && !e.nodeType && e, a = i && i.exports === n, o = a ? r.Buffer : void 0, s = o ? o.allocUnsafe : void 0;
561
+ function u(c, l) {
562
+ if (l)
563
+ return c.slice();
564
+ var f = c.length, p = s ? s(f) : new c.constructor(f);
565
+ return c.copy(p), p;
566
+ }
567
+ e.exports = u;
568
+ })(z, z.exports)), z.exports;
569
+ }
570
+ var He, jr;
571
+ function Oi() {
572
+ if (jr) return He;
573
+ jr = 1;
574
+ var e = P(), t = e.Uint8Array;
575
+ return He = t, He;
576
+ }
577
+ var Ve, xr;
578
+ function Bi() {
579
+ if (xr) return Ve;
580
+ xr = 1;
581
+ var e = Oi();
582
+ function t(r) {
583
+ var n = new r.constructor(r.byteLength);
584
+ return new e(n).set(new e(r)), n;
585
+ }
586
+ return Ve = t, Ve;
587
+ }
588
+ var $e, Mr;
589
+ function Fi() {
590
+ if (Mr) return $e;
591
+ Mr = 1;
592
+ var e = Bi();
593
+ function t(r, n) {
594
+ var i = n ? e(r.buffer) : r.buffer;
595
+ return new r.constructor(i, r.byteOffset, r.length);
596
+ }
597
+ return $e = t, $e;
598
+ }
599
+ var Ke, Nr;
600
+ function ji() {
601
+ if (Nr) return Ke;
602
+ Nr = 1;
603
+ function e(t, r) {
604
+ var n = -1, i = t.length;
605
+ for (r || (r = Array(i)); ++n < i; )
606
+ r[n] = t[n];
607
+ return r;
608
+ }
609
+ return Ke = e, Ke;
610
+ }
611
+ var We, Er;
612
+ function xi() {
613
+ if (Er) return We;
614
+ Er = 1;
615
+ var e = I(), t = Object.create, r = /* @__PURE__ */ (function() {
616
+ function n() {
617
+ }
618
+ return function(i) {
619
+ if (!e(i))
620
+ return {};
621
+ if (t)
622
+ return t(i);
623
+ n.prototype = i;
624
+ var a = new n();
625
+ return n.prototype = void 0, a;
626
+ };
627
+ })();
628
+ return We = r, We;
629
+ }
630
+ var Je, Ur;
631
+ function Mi() {
632
+ if (Ur) return Je;
633
+ Ur = 1;
634
+ function e(t, r) {
635
+ return function(n) {
636
+ return t(r(n));
637
+ };
638
+ }
639
+ return Je = e, Je;
640
+ }
641
+ var Ye, Gr;
642
+ function Fn() {
643
+ if (Gr) return Ye;
644
+ Gr = 1;
645
+ var e = Mi(), t = e(Object.getPrototypeOf, Object);
646
+ return Ye = t, Ye;
647
+ }
648
+ var Qe, Hr;
649
+ function jn() {
650
+ if (Hr) return Qe;
651
+ Hr = 1;
652
+ var e = Object.prototype;
653
+ function t(r) {
654
+ var n = r && r.constructor, i = typeof n == "function" && n.prototype || e;
655
+ return r === i;
656
+ }
657
+ return Qe = t, Qe;
658
+ }
659
+ var Xe, Vr;
660
+ function Ni() {
661
+ if (Vr) return Xe;
662
+ Vr = 1;
663
+ var e = xi(), t = Fn(), r = jn();
664
+ function n(i) {
665
+ return typeof i.constructor == "function" && !r(i) ? e(t(i)) : {};
666
+ }
667
+ return Xe = n, Xe;
668
+ }
669
+ var Ze, $r;
670
+ function F() {
671
+ if ($r) return Ze;
672
+ $r = 1;
673
+ function e(t) {
674
+ return t != null && typeof t == "object";
675
+ }
676
+ return Ze = e, Ze;
677
+ }
678
+ var et, Kr;
679
+ function Ei() {
680
+ if (Kr) return et;
681
+ Kr = 1;
682
+ var e = H(), t = F(), r = "[object Arguments]";
683
+ function n(i) {
684
+ return t(i) && e(i) == r;
685
+ }
686
+ return et = n, et;
687
+ }
688
+ var tt, Wr;
689
+ function xn() {
690
+ if (Wr) return tt;
691
+ Wr = 1;
692
+ var e = Ei(), t = F(), r = Object.prototype, n = r.hasOwnProperty, i = r.propertyIsEnumerable, a = e(/* @__PURE__ */ (function() {
693
+ return arguments;
694
+ })()) ? e : function(o) {
695
+ return t(o) && n.call(o, "callee") && !i.call(o, "callee");
696
+ };
697
+ return tt = a, tt;
698
+ }
699
+ var rt, Jr;
700
+ function Mn() {
701
+ if (Jr) return rt;
702
+ Jr = 1;
703
+ var e = Array.isArray;
704
+ return rt = e, rt;
705
+ }
706
+ var nt, Yr;
707
+ function Nn() {
708
+ if (Yr) return nt;
709
+ Yr = 1;
710
+ var e = 9007199254740991;
711
+ function t(r) {
712
+ return typeof r == "number" && r > -1 && r % 1 == 0 && r <= e;
713
+ }
714
+ return nt = t, nt;
715
+ }
716
+ var it, Qr;
717
+ function xt() {
718
+ if (Qr) return it;
719
+ Qr = 1;
720
+ var e = Bt(), t = Nn();
721
+ function r(n) {
722
+ return n != null && t(n.length) && !e(n);
723
+ }
724
+ return it = r, it;
725
+ }
726
+ var at, Xr;
727
+ function Ui() {
728
+ if (Xr) return at;
729
+ Xr = 1;
730
+ var e = xt(), t = F();
731
+ function r(n) {
732
+ return t(n) && e(n);
733
+ }
734
+ return at = r, at;
735
+ }
736
+ var L = { exports: {} }, ot, Zr;
737
+ function Gi() {
738
+ if (Zr) return ot;
739
+ Zr = 1;
740
+ function e() {
741
+ return !1;
742
+ }
743
+ return ot = e, ot;
744
+ }
745
+ L.exports;
746
+ var en;
747
+ function En() {
748
+ return en || (en = 1, (function(e, t) {
749
+ var r = P(), n = Gi(), i = t && !t.nodeType && t, a = i && !0 && e && !e.nodeType && e, o = a && a.exports === i, s = o ? r.Buffer : void 0, u = s ? s.isBuffer : void 0, c = u || n;
750
+ e.exports = c;
751
+ })(L, L.exports)), L.exports;
752
+ }
753
+ var st, tn;
754
+ function Hi() {
755
+ if (tn) return st;
756
+ tn = 1;
757
+ var e = H(), t = Fn(), r = F(), n = "[object Object]", i = Function.prototype, a = Object.prototype, o = i.toString, s = a.hasOwnProperty, u = o.call(Object);
758
+ function c(l) {
759
+ if (!r(l) || e(l) != n)
760
+ return !1;
761
+ var f = t(l);
762
+ if (f === null)
763
+ return !0;
764
+ var p = s.call(f, "constructor") && f.constructor;
765
+ return typeof p == "function" && p instanceof p && o.call(p) == u;
766
+ }
767
+ return st = c, st;
768
+ }
769
+ var ut, rn;
770
+ function Vi() {
771
+ if (rn) return ut;
772
+ rn = 1;
773
+ var e = H(), t = Nn(), r = F(), n = "[object Arguments]", i = "[object Array]", a = "[object Boolean]", o = "[object Date]", s = "[object Error]", u = "[object Function]", c = "[object Map]", l = "[object Number]", f = "[object Object]", p = "[object RegExp]", y = "[object Set]", _ = "[object String]", C = "[object WeakMap]", S = "[object ArrayBuffer]", w = "[object DataView]", m = "[object Float32Array]", K = "[object Float64Array]", W = "[object Int8Array]", D = "[object Int16Array]", R = "[object Int32Array]", b = "[object Uint8Array]", h = "[object Uint8ClampedArray]", j = "[object Uint16Array]", g = "[object Uint32Array]", d = {};
774
+ d[m] = d[K] = d[W] = d[D] = d[R] = d[b] = d[h] = d[j] = d[g] = !0, d[n] = d[i] = d[S] = d[a] = d[w] = d[o] = d[s] = d[u] = d[c] = d[l] = d[f] = d[p] = d[y] = d[_] = d[C] = !1;
775
+ function k(A) {
776
+ return r(A) && t(A.length) && !!d[e(A)];
777
+ }
778
+ return ut = k, ut;
779
+ }
780
+ var ct, nn;
781
+ function $i() {
782
+ if (nn) return ct;
783
+ nn = 1;
784
+ function e(t) {
785
+ return function(r) {
786
+ return t(r);
787
+ };
788
+ }
789
+ return ct = e, ct;
790
+ }
791
+ var O = { exports: {} };
792
+ O.exports;
793
+ var an;
794
+ function Ki() {
795
+ return an || (an = 1, (function(e, t) {
796
+ var r = kn(), n = t && !t.nodeType && t, i = n && !0 && e && !e.nodeType && e, a = i && i.exports === n, o = a && r.process, s = (function() {
797
+ try {
798
+ var u = i && i.require && i.require("util").types;
799
+ return u || o && o.binding && o.binding("util");
800
+ } catch {
801
+ }
802
+ })();
803
+ e.exports = s;
804
+ })(O, O.exports)), O.exports;
805
+ }
806
+ var lt, on;
807
+ function Un() {
808
+ if (on) return lt;
809
+ on = 1;
810
+ var e = Vi(), t = $i(), r = Ki(), n = r && r.isTypedArray, i = n ? t(n) : e;
811
+ return lt = i, lt;
812
+ }
813
+ var dt, sn;
814
+ function Gn() {
815
+ if (sn) return dt;
816
+ sn = 1;
817
+ function e(t, r) {
818
+ if (!(r === "constructor" && typeof t[r] == "function") && r != "__proto__")
819
+ return t[r];
820
+ }
821
+ return dt = e, dt;
822
+ }
823
+ var ft, un;
824
+ function Wi() {
825
+ if (un) return ft;
826
+ un = 1;
827
+ var e = jt(), t = E(), r = Object.prototype, n = r.hasOwnProperty;
828
+ function i(a, o, s) {
829
+ var u = a[o];
830
+ (!(n.call(a, o) && t(u, s)) || s === void 0 && !(o in a)) && e(a, o, s);
831
+ }
832
+ return ft = i, ft;
833
+ }
834
+ var pt, cn;
835
+ function Ji() {
836
+ if (cn) return pt;
837
+ cn = 1;
838
+ var e = Wi(), t = jt();
839
+ function r(n, i, a, o) {
840
+ var s = !a;
841
+ a || (a = {});
842
+ for (var u = -1, c = i.length; ++u < c; ) {
843
+ var l = i[u], f = o ? o(a[l], n[l], l, a, n) : void 0;
844
+ f === void 0 && (f = n[l]), s ? t(a, l, f) : e(a, l, f);
845
+ }
846
+ return a;
847
+ }
848
+ return pt = r, pt;
849
+ }
850
+ var vt, ln;
851
+ function Yi() {
852
+ if (ln) return vt;
853
+ ln = 1;
854
+ function e(t, r) {
855
+ for (var n = -1, i = Array(t); ++n < t; )
856
+ i[n] = r(n);
857
+ return i;
858
+ }
859
+ return vt = e, vt;
860
+ }
861
+ var mt, dn;
862
+ function Hn() {
863
+ if (dn) return mt;
864
+ dn = 1;
865
+ var e = 9007199254740991, t = /^(?:0|[1-9]\d*)$/;
866
+ function r(n, i) {
867
+ var a = typeof n;
868
+ return i = i ?? e, !!i && (a == "number" || a != "symbol" && t.test(n)) && n > -1 && n % 1 == 0 && n < i;
869
+ }
870
+ return mt = r, mt;
871
+ }
872
+ var ht, fn;
873
+ function Qi() {
874
+ if (fn) return ht;
875
+ fn = 1;
876
+ var e = Yi(), t = xn(), r = Mn(), n = En(), i = Hn(), a = Un(), o = Object.prototype, s = o.hasOwnProperty;
877
+ function u(c, l) {
878
+ var f = r(c), p = !f && t(c), y = !f && !p && n(c), _ = !f && !p && !y && a(c), C = f || p || y || _, S = C ? e(c.length, String) : [], w = S.length;
879
+ for (var m in c)
880
+ (l || s.call(c, m)) && !(C && // Safari 9 has enumerable `arguments.length` in strict mode.
881
+ (m == "length" || // Node.js 0.10 has enumerable non-index properties on buffers.
882
+ y && (m == "offset" || m == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays.
883
+ _ && (m == "buffer" || m == "byteLength" || m == "byteOffset") || // Skip index properties.
884
+ i(m, w))) && S.push(m);
885
+ return S;
886
+ }
887
+ return ht = u, ht;
888
+ }
889
+ var gt, pn;
890
+ function Xi() {
891
+ if (pn) return gt;
892
+ pn = 1;
893
+ function e(t) {
894
+ var r = [];
895
+ if (t != null)
896
+ for (var n in Object(t))
897
+ r.push(n);
898
+ return r;
899
+ }
900
+ return gt = e, gt;
901
+ }
902
+ var yt, vn;
903
+ function Zi() {
904
+ if (vn) return yt;
905
+ vn = 1;
906
+ var e = I(), t = jn(), r = Xi(), n = Object.prototype, i = n.hasOwnProperty;
907
+ function a(o) {
908
+ if (!e(o))
909
+ return r(o);
910
+ var s = t(o), u = [];
911
+ for (var c in o)
912
+ c == "constructor" && (s || !i.call(o, c)) || u.push(c);
913
+ return u;
914
+ }
915
+ return yt = a, yt;
916
+ }
917
+ var bt, mn;
918
+ function Vn() {
919
+ if (mn) return bt;
920
+ mn = 1;
921
+ var e = Qi(), t = Zi(), r = xt();
922
+ function n(i) {
923
+ return r(i) ? e(i, !0) : t(i);
924
+ }
925
+ return bt = n, bt;
926
+ }
927
+ var _t, hn;
928
+ function ea() {
929
+ if (hn) return _t;
930
+ hn = 1;
931
+ var e = Ji(), t = Vn();
932
+ function r(n) {
933
+ return e(n, t(n));
934
+ }
935
+ return _t = r, _t;
936
+ }
937
+ var qt, gn;
938
+ function ta() {
939
+ if (gn) return qt;
940
+ gn = 1;
941
+ var e = Bn(), t = Li(), r = Fi(), n = ji(), i = Ni(), a = xn(), o = Mn(), s = Ui(), u = En(), c = Bt(), l = I(), f = Hi(), p = Un(), y = Gn(), _ = ea();
942
+ function C(S, w, m, K, W, D, R) {
943
+ var b = y(S, m), h = y(w, m), j = R.get(h);
944
+ if (j) {
945
+ e(S, m, j);
946
+ return;
947
+ }
948
+ var g = D ? D(b, h, m + "", S, w, R) : void 0, d = g === void 0;
949
+ if (d) {
950
+ var k = o(h), A = !k && u(h), Nt = !k && !A && p(h);
951
+ g = h, k || A || Nt ? o(b) ? g = b : s(b) ? g = n(b) : A ? (d = !1, g = t(h, !0)) : Nt ? (d = !1, g = r(h, !0)) : g = [] : f(h) || a(h) ? (g = b, a(b) ? g = _(b) : (!l(b) || c(b)) && (g = i(h))) : d = !1;
952
+ }
953
+ d && (R.set(h, g), W(g, h, K, D, R), R.delete(h)), e(S, m, g);
954
+ }
955
+ return qt = C, qt;
956
+ }
957
+ var Ct, yn;
958
+ function ra() {
959
+ if (yn) return Ct;
960
+ yn = 1;
961
+ var e = Di(), t = Bn(), r = zi(), n = ta(), i = I(), a = Vn(), o = Gn();
962
+ function s(u, c, l, f, p) {
963
+ u !== c && r(c, function(y, _) {
964
+ if (p || (p = new e()), i(y))
965
+ n(u, c, _, l, s, f, p);
966
+ else {
967
+ var C = f ? f(o(u, _), y, _ + "", u, c, p) : void 0;
968
+ C === void 0 && (C = y), t(u, _, C);
969
+ }
970
+ }, a);
971
+ }
972
+ return Ct = s, Ct;
973
+ }
974
+ var St, bn;
975
+ function $n() {
976
+ if (bn) return St;
977
+ bn = 1;
978
+ function e(t) {
979
+ return t;
980
+ }
981
+ return St = e, St;
982
+ }
983
+ var Tt, _n;
984
+ function na() {
985
+ if (_n) return Tt;
986
+ _n = 1;
987
+ function e(t, r, n) {
988
+ switch (n.length) {
989
+ case 0:
990
+ return t.call(r);
991
+ case 1:
992
+ return t.call(r, n[0]);
993
+ case 2:
994
+ return t.call(r, n[0], n[1]);
995
+ case 3:
996
+ return t.call(r, n[0], n[1], n[2]);
997
+ }
998
+ return t.apply(r, n);
999
+ }
1000
+ return Tt = e, Tt;
1001
+ }
1002
+ var Rt, qn;
1003
+ function ia() {
1004
+ if (qn) return Rt;
1005
+ qn = 1;
1006
+ var e = na(), t = Math.max;
1007
+ function r(n, i, a) {
1008
+ return i = t(i === void 0 ? n.length - 1 : i, 0), function() {
1009
+ for (var o = arguments, s = -1, u = t(o.length - i, 0), c = Array(u); ++s < u; )
1010
+ c[s] = o[i + s];
1011
+ s = -1;
1012
+ for (var l = Array(i + 1); ++s < i; )
1013
+ l[s] = o[s];
1014
+ return l[i] = a(c), e(n, this, l);
1015
+ };
1016
+ }
1017
+ return Rt = r, Rt;
1018
+ }
1019
+ var At, Cn;
1020
+ function aa() {
1021
+ if (Cn) return At;
1022
+ Cn = 1;
1023
+ function e(t) {
1024
+ return function() {
1025
+ return t;
1026
+ };
1027
+ }
1028
+ return At = e, At;
1029
+ }
1030
+ var It, Sn;
1031
+ function oa() {
1032
+ if (Sn) return It;
1033
+ Sn = 1;
1034
+ var e = aa(), t = On(), r = $n(), n = t ? function(i, a) {
1035
+ return t(i, "toString", {
1036
+ configurable: !0,
1037
+ enumerable: !1,
1038
+ value: e(a),
1039
+ writable: !0
1040
+ });
1041
+ } : r;
1042
+ return It = n, It;
1043
+ }
1044
+ var wt, Tn;
1045
+ function sa() {
1046
+ if (Tn) return wt;
1047
+ Tn = 1;
1048
+ var e = 800, t = 16, r = Date.now;
1049
+ function n(i) {
1050
+ var a = 0, o = 0;
1051
+ return function() {
1052
+ var s = r(), u = t - (s - o);
1053
+ if (o = s, u > 0) {
1054
+ if (++a >= e)
1055
+ return arguments[0];
1056
+ } else
1057
+ a = 0;
1058
+ return i.apply(void 0, arguments);
1059
+ };
1060
+ }
1061
+ return wt = n, wt;
1062
+ }
1063
+ var Pt, Rn;
1064
+ function ua() {
1065
+ if (Rn) return Pt;
1066
+ Rn = 1;
1067
+ var e = oa(), t = sa(), r = t(e);
1068
+ return Pt = r, Pt;
1069
+ }
1070
+ var Dt, An;
1071
+ function ca() {
1072
+ if (An) return Dt;
1073
+ An = 1;
1074
+ var e = $n(), t = ia(), r = ua();
1075
+ function n(i, a) {
1076
+ return r(t(i, a, e), i + "");
1077
+ }
1078
+ return Dt = n, Dt;
1079
+ }
1080
+ var kt, In;
1081
+ function la() {
1082
+ if (In) return kt;
1083
+ In = 1;
1084
+ var e = E(), t = xt(), r = Hn(), n = I();
1085
+ function i(a, o, s) {
1086
+ if (!n(s))
1087
+ return !1;
1088
+ var u = typeof o;
1089
+ return (u == "number" ? t(s) && r(o, s.length) : u == "string" && o in s) ? e(s[o], a) : !1;
1090
+ }
1091
+ return kt = i, kt;
1092
+ }
1093
+ var zt, wn;
1094
+ function da() {
1095
+ if (wn) return zt;
1096
+ wn = 1;
1097
+ var e = ca(), t = la();
1098
+ function r(n) {
1099
+ return e(function(i, a) {
1100
+ var o = -1, s = a.length, u = s > 1 ? a[s - 1] : void 0, c = s > 2 ? a[2] : void 0;
1101
+ for (u = n.length > 3 && typeof u == "function" ? (s--, u) : void 0, c && t(a[0], a[1], c) && (u = s < 3 ? void 0 : u, s = 1), i = Object(i); ++o < s; ) {
1102
+ var l = a[o];
1103
+ l && n(i, l, o, u);
1104
+ }
1105
+ return i;
1106
+ });
1107
+ }
1108
+ return zt = r, zt;
1109
+ }
1110
+ var Lt, Pn;
1111
+ function fa() {
1112
+ if (Pn) return Lt;
1113
+ Pn = 1;
1114
+ var e = ra(), t = da(), r = t(function(n, i, a) {
1115
+ e(n, i, a);
1116
+ });
1117
+ return Lt = r, Lt;
1118
+ }
1119
+ var pa = fa();
1120
+ const va = /* @__PURE__ */ Zn(pa), ma = "rtl", ha = { back: "رجوع", close: "إغلاق", closeVerificationFrame: "إغلاق التحقق من الهوية (Smile ID)", allow: "اسمح", cancel: "إلغاء", continue: "استمر", or: "أو", toggle: "تبديل" }, ga = { noItems: "لا توجد عناصر" }, ya = { back: "رجوع", closeVerificationFrame: "إغلاق التحقق من الهوية (Smile ID)" }, ba = { permission: { description: "اسمح بالوصول إلى الكاميرا للتحقق من بياناتك", requestButton: "طلب الوصول إلى الكاميرا" }, error: { notAllowed: "لم يتم منح إذن الكاميرا لهذه الخدمة. قم بتمكين الوصول إلى الكاميرا في جهازك أو متصفحك/إضافتك للمتابعة. قد تحتاج إلى إعادة تحميل الصفحة.", abort: "حدث خطأ ما، وفقدنا الوصول إلى كاميرتك. يرجى إعادة تحميل الصفحة.", notReadable: "يبدو أن هناك مشكلة في الكاميرا. قم بإصلاحها وحاول مرة أخرى، أو حاول استخدام الجهاز.", notFound: "لا نستطيع العثور على الكاميرا الخاصة بك. يرجى التحديث.", insecure: "يلزم اتصال آمن. الوصول إلى الكاميرا معطل على المواقع غير الآمنة. يرجى الانتقال إلى الصفحة الآمنة أو الاتصال بمالك التطبيق.", retry: "حاول مرة أخرى" } }, _a = { instructions: { title: "بعد ذلك، سنأخذ صورة سيلفي سريعة", allowButton: "اسمح", tips: { goodLight: { header: "إضاءة جيدة", body: "تأكد من أنك في بيئة جيدة الإضاءة." }, clearImage: { header: "صورة واضحة", body: "امسك هاتفك بثبات لتكون صورة السيلفي واضحة وحادة." }, removeObstructions: { header: "إزالة العوائق", body: "أزل أي شيء يغطي وجهك، مثل النظارات والأقنعة والقبعات." }, wideSmile: { header: "ابتسامة كبيرة", body: "عندما يُطلب منك الابتسام، ابتسم ابتسامة عريضة تظهر أسنانك." } } }, capture: { tip: { fitHead: "ضع رأسك داخل الإطار البيضاوي" }, cta: { smile: "ابتسم", widerSmile: "ابتسامة أوسع" }, button: { takeSelfie: "التقط سيلفي", startCapture: "بدء التسجيل" }, agentMode: { on: "وضع الوكيل قيد التشغيل", off: "وضع الوكيل معطل" }, error: { minFrames: "كاميرا ويب الذكية: الحد الأدنى المطلوب لعدد الإطارات هو {{count}}", webcamCapture: "تعذر التقاط صور كاميرا الويب - يرجى تجربة جهاز آخر" }, loading: { progress: "جارٍ إعداد الكاميرا... {{progress}}%", slowConnection: "ما زلنا نُجهّز الأمور — قد يستغرق ذلك لحظة في المرة الأولى.", connectionError: "خطأ في الاتصال بالإنترنت، تحقق من اتصالك وأعد المحاولة", setupError: "تعذّر علينا إكمال إعداد التقاط الوجه على هذا الجهاز. يُرجى المحاولة مرة أخرى.", offlineError: "يبدو أنك غير متصل بالإنترنت. تحقق من اتصالك وحاول مرة أخرى.", retry: "حاول مرة أخرى" } }, smart: { alert: { noFace: "ضع وجهك في الشكل البيضاوي", outOfBounds: "ضع وجهك في الشكل البيضاوي", tooClose: "ابتعد أكثر", tooFar: "اقترب", neutralExpression: "تعبير محايد", smileRequired: "يبتسم!", openMouthSmile: "ابتسامة أوسع - أسنان ظاهرة", tooDark: "الإضاءة منخفضة جدًا - جرّب مكانًا أفضل", tooBlurry: "ثبّت الكاميرا - الصورة غير واضحة", faceNotCentered: "ضع وجهك في منتصف الشكل البيضاوي", turnHeadLeft: "أدِر رأسك ببطء إلى اليسار", turnHeadRight: "أدِر رأسك ببطء إلى اليمين", lookStraight: "انظر مباشرة إلى الكاميرا", tiltHeadUp: "أمِل رأسك قليلاً إلى الأعلى", initializing: "جارٍ التهيئة..." }, status: { capturing: "جارٍ التقاط...", keepSmiling: "حافظ على ابتسامتك!", readyToCapture: "جاهز للتصوير", poseCaptured: "رائع! ثبّت رأسك", sessionTimeout: "انتهت مدة الجلسة — يُرجى المحاولة مرة أخرى" }, instructions: { title: "فحص الحيوية النشط", description: "سيُطلب منك تحريك رأسك ببطء لاتباع التعليمات على الشاشة. احرص على بقاء وجهك داخل الشكل البيضاوي.", continueButton: "ابدأ" } }, review: { title: "مراجعة صورة سيلفي", question: "هل وجهك كله صافي؟", acceptButton: "نعم، استخدم هذا", retakeButton: "لا، أعد التقاط صورة السيلفي" }, ess: { back: "رجوع", consent: { titleSuffix: "يرغب في التحقق من هويتك باستخدام", bodyPrefix: 'بتحديد "السماح"، فإنك توافق على قيام ', bodyMiddle: " بجمع ومعالجة بياناتك الشخصية لغرض تقديم خدمات التحقق من الهوية ومكافحة الاحتيال، ومشاركة النتائج بشكل آمن مع ", bodySuffix: ". قد يشمل ذلك معالجة:", items: { contact: "معلومات الاتصال", personal: "المعلومات الشخصية", biometric: "البيانات البيومترية ووثائق الهوية", device: "معلومات الجهاز" }, consentCheckbox: "أوافق على مشاركة معلومات هويتي والبيانات ذات الصلة مع مزودي الخدمة لمنع الاحتيال ومعالجة هذه المعاملة بأمان.", learnMore: "اعرف المزيد", learnMoreBodyPrefix: "تقوم ", learnMoreBodyAnd: " و ", learnMoreBodySuffix: " بمعالجة بياناتك الشخصية والبيومترية للتحقق من هويتك ومنع الاحتيال. نحتفظ ببياناتك لمدة 5 سنوات للوفاء بالالتزامات القانونية.", learnMoreShare: "قد نشارك البيانات مع شركاء محددين لإكمال هذا الفحص.", learnMoreRightsPrefix: "يمكنك سحب الموافقة أو الوصول إلى بياناتك أو ممارسة حقوقك على صفحة", dsarLink: "DSAR", learnMoreRightsMiddle: "الخاصة بنا. تتوفر التفاصيل الكاملة في سياسات الخصوصية لـ", smileIdPrivacyLink: "Smile ID", partnerPrivacyTail: "و {{partnerName}}.", partnerPrivacyTailLinked: "و", partnerPrivacyTailEnd: ".", allow: "السماح", deny: "رفض" }, instructions: { titlePrefix: "استعد لالتقاط", titleAccent: "صورة السيلفي", guidelinesHeader: "إرشادات الالتقاط", tile: { good: "جيد", accessories: "إكسسوارات", multipleFaces: "وجوه متعددة", poorLighting: "إضاءة سيئة" }, continue: "التالي", settingUpCamera: "جارٍ إعداد الكاميرا…" }, submission: { review: { title: "تأكيد جودة الصورة", body: "تأكد من وضوح الصورة.", retake: "إعادة الالتقاط", confirm: "تأكيد" }, submitting: { title: "جارٍ الإرسال…", body: `قد يستغرق ذلك لحظة…
1121
+ لا تغلق هذه الصفحة أو تعيد تحميلها` }, success: { title: "اكتمل الإرسال", body: "شكرًا لإرسالك. نقوم حاليًا بالتحقق من بياناتك." }, error: { title: "فشل الإرسال" }, continue: "متابعة", exit: "خروج", imageAlt: "صورة السيلفي الملتقطة" }, alert: { centerFace: "ضع وجهك داخل الإطار البيضاوي", holdStill: "لا تتحرك…", tooDark: "انتقل إلى بيئة جيدة الإضاءة", tooClose: "أبعد جهازك عن وجهك", tooFar: "قرّب جهازك من وجهك", moveDeviceUp: "ارفع جهازك للأعلى", moveDeviceDown: "اخفض جهازك للأسفل", moveDeviceLeft: "حرّك جهازك إلى اليسار", moveDeviceRight: "حرّك جهازك إلى اليمين", turnHeadLeft: "أدر رأسك إلى اليسار", turnHeadRight: "أدر رأسك إلى اليمين", tiltHeadUp: "أمل رأسك قليلاً للأعلى" }, failure: { sessionTimedOut: "انتهت صلاحية جلستك. يرجى المحاولة مرة أخرى." } } }, qa = { name: { default: "وثيقة" }, title: { front: "تقديم صورة أمامية لبطاقة الهوية", back: "تقديم ظهر الهوية" }, capture: { checkingPermissions: "جارٍ التحقق من الأذونات...", instructionText: "تأكد من أن جميع الزوايا مرئية ولا يوجد وهج.", captureButton: "التقاط وثيقة" }, autoCapture: { galleryButtonLabel: "اختيار صورة من المعرض", capturePhotoButton: "التقاط صورة", error: { cameraUnavailable: { title: "تم رفض الوصول إلى الكاميرا أو أنها غير متاحة", body: "يرجى السماح بالوصول إلى الكاميرا وإعادة تحميل الصفحة." }, cvLoadFailed: "الالتقاط التلقائي غير متاح. يرجى إعادة تحميل الصفحة أو تجربة متصفح آخر." }, feedback: { positionDocument: "ضع مستندك داخل الإطار", alignDocument: "قم بمحاذاة المستند داخل الإطار", placeDocument: "ضع المستند داخل الإطار", ensureDocumentVisible: "تأكد من ظهور المستند بالكامل", moveDocumentCloser: "قرّب المستند", moveDocumentFurtherAway: "أبعد المستند", holdSteady: "ثبّت المستند", detectingDocumentType: "جارٍ تحديد نوع المستند…", tooBlurry: "ضبابي جدًا", glareDetectedAdjustLighting: "تم اكتشاف انعكاس — اضبط الإضاءة", holdStill: "لا تتحرك...", capturingDocument: "جارٍ التقاط المستند...", processingFailed: "فشلت المعالجة — يرجى المحاولة مرة أخرى", autoDetectionUnavailableRetry: "الالتقاط التلقائي غير متاح — يرجى المحاولة مرة أخرى", autoDetectionUnavailableManual: "الالتقاط التلقائي غير متاح — التقط يدويًا", captured: "تم الالتقاط!", captureFailed: "فشل الالتقاط — يرجى المحاولة مرة أخرى" } }, instructions: { captureTitlePrefix: "استعد لالتقاط", captureGuidelines: "إرشادات الالتقاط", description: "سنستخدمه للتحقق من هويتك.", followInstructions: "يرجى اتباع التعليمات أدناه.", guidelines: { good: "جيد", notCropped: "غير مقصوص", notBlurry: "غير ضبابي", notReflective: "بدون انعكاس" }, goodLight: { header: "إضاءة جيدة", body: "تأكد من التقاط الصورة في بيئة مضاءة جيداً حيث يسهل قراءة وثيقة الهوية." }, clearImage: { header: "صورة واضحة", body: "اجعل الكاميرا ثابتة حتى لا تكون الكلمات الموجودة على الهوية ضبابية." }, startCapture: "بدء الالتقاط", takePhotoButton: "التقط صورة", uploadPhotoButton: "تحميل صورة", flipTitlePrefix: "اقلب", captureBackButton: "التقط ظهر البطاقة", skipButton: "تخطّي" }, review: { question: "هل الوثيقة واضحة ومقروءة؟", description: "تأكد من أن جميع زوايا المستند مرئية ولا يوجد توهج", acceptButton: "نعم، بطاقة هويتي واضحة و مقروءة", retakeButton: "لا، أعد التقاط الصورة", confirmTitle: "تأكد من جودة الصورة", confirmBody: "تأكد من أن جميع المعلومات مقروءة.", retake: "إعادة الالتقاط", confirm: "تأكيد" }, submission: { imageAlt: "المستند الملتقَط", submitting: { title: "جارٍ الإرسال…", body: `قد يستغرق هذا لحظة…
1122
+ لا تغلق الصفحة أو تعيد تحميلها` }, success: { title: "اكتمل الإرسال" }, error: { title: "فشل الإرسال" } } }, Ca = { error: { readingFile: "حدث خطأ أثناء قراءة الملف. يرجى التحقق من الملف والمحاولة مرة أخرى.", multipleFiles: "يُسمح بتحميل ملف واحد فقط في كل مرة", unsupportedFormat: "تنسيق ملف غير مدعوم. يرجى التأكد من توفير صورة بتنسيق JPG أو PNG", fileTooLarge: "{{filename}} كبير جدًا. يُرجى التأكد من أن الملف أقل من {{size}}." } }, Sa = { demoTip: "شاشة الموافقة هذه لأغراض توضيحية فقط. لا يقوم التطبيق التجريبي بجمع بيانات الهوية السيلفي.", accessRequest: "{{partnerName}} يرغب في الوصول إلى معلوماتك {{idTypeLabel}}", allowPartner: "هذا سيسمح لـ {{partnerName}} بـ:", processing: { personalDetails: { title: "معالجة بياناتك السيلفي", description: "بإمكان الشريك معالجة اسمك وتاريخ ميلادك وجنسك" }, contactInfo: { title: "معالجة معلومات الاتصال الخاصة بك", description: "يمكن للشريك معالجة أرقام هواتفك وعنوانك" }, documentInfo: { title: "معالجة معلومات مستندك", description: "يمكن للشريك معالجة صورتك وتاريخ انتهاء صلاحية هويتك وبلد الإصدار ورقم الوثيقة" } }, privacyPolicy: "يمكنك الاطلاع على سياسة الخصوصية الخاصة بـ {{partnerName}}", privacyPolicyLink: "هنا.", grantConsent: 'باختيارك "السماح"، فإنك تمنح {{partnerName}} الموافقة على معالجة بياناتك السيلفي لتقديم هذه الخدمة لك.', denied: { title: "تم رفض الموافقة", message: "لا يمكننا التحقق من هويتك بدون موافقتك", prompt: "هل ترغب في تصحيح ذلك؟", goBack: "عُد", confirmCancel: "لا، إلغاء التحقق" } }, Ta = { loading: { title: "إنشاء", subtitle: "بضع ثوانٍ أخرى فقط", description: "نحن نجهز عملية التحقق الخاصة بك" }, idSelection: { title: "حدد نوع المستند", selectCountry: "اختر البلد", selectIdType: "حدد نوع المستند", selectDocument: "حدد المستند", searchCountry: "البحث عن بلد", placeholder: "الرجاء الاختيار", selectCountryFirst: "--اختر البلد أولاً--", noCountryFound: "لا يوجد بلد", noIdTypeFound: "لم يتم العثور على نوع هوية" }, upload: { title: "جاري تحميل", subtitle: "بضع ثوانٍ أخرى فقط", description: "نحن بصدد معالجة طلبك" }, complete: { title: "تم الإرسال بنجاح", subtitle: "هذا كل ما تحتاجه للتحقق من هويتك", processingInfo: "سنقوم بمعالجة معلوماتك {{country}} - {{idType}} للتحقق من هويتك" }, smartSelfie: { authentication: { title: "مصادقة SmartSelfie™", upload: "مصادقة المستخدم" }, registration: { title: "تسجيل SmartSelfie™", upload: "تسجيل المستخدم" } }, eSignature: { fullName: "الاسم الكامل", loading: { description: "نحن بصدد التأسيس" }, upload: { description: "نحن بصدد معالجة طلبك" }, entry: { title: "تقديم التوقيع", subtitle: "اقرأ واقبل الاتفاقيات التي ستراها في الصفحة التالية" }, tips: { read: { title: "اقرأ المستند", description: "اقرأ المستند (المستندات) المقدمة بعناية" }, name: { title: "أضف اسمك الكامل", description: "اكتب اسمك الكامل بعد موافقتك على المستند (المستندات) التي تمت مشاركتها معك." }, signature: { title: "أضف توقيعك", description: "وقّع أو حمّل توقيعك لتوثيق المستندات" } }, getStarted: "ابدأ الآن", review: { title: "مراجعة الوثائق", subtitle: "قبل القبول، يُرجى قراءة المستند(ات) بعناية", consent: "بتحديد هذا المربع، فإنك توافق على الشروط الواردة في المستند (المستندات)." }, personalInfo: { title: "أضف اسمك الكامل", subtitle: "يرجى إضافة اسمك بالكامل للتحقق من قراءتك للوثيقة (الوثائق) المقدمة مسبقاً.", placeholder: "جيمس دو" }, signature: { title: "أضف توقيعك", subtitle: "وقّع أو حمّل توقيعك أدناه" }, confirmDetails: { title: "تأكيد التفاصيل", subtitle: "تأكد من أن اسمك مكتوب بشكل صحيح، وأن التوقيع يشبه التوقيع الموجود في هويتك", yes: "نعم، هذا صحيح", no: "لا، غيّرهم" }, error: { uploadFailed: "لم نتمكن من تحميل توقيعك" } }, idInfo: { title: "أدخل معلومات الهوية", idNumber: "رقم الهوية", firstName: "الاسم الأول", lastName: "اسم العائلة", dateOfBirth: "تاريخ الميلاد", day: "يوم", month: "شهر", year: "سنة", bank: "بنك", selectBank: "--حدد البنك--", searchBank: "البحث عن بنك", noBankFound: "لم يتم العثور على بنك", citizenship: "الجنسية", selectCitizenship: "اختر نوع الجنسية", dob: "تاريخ الميلاد" }, error: { title: "حدث خطأ", generic: "حدث خطأ ما", uploadFailed: "لم نتمكن من تحميل معلوماتك", checkInternet: "يرجى التأكد من وجود اتصال إنترنت مستقر. ثم حاول مرة أخرى!", tryAgain: "أعد المحاولة", countryNotSupported: "{{country}} غير مدعوم" }, validation: { isRequired: "{{field}} مطلوب", invalidFormat: "{{field}} غير صالح" } }, Ra = {
1123
+ direction: ma,
1124
+ common: ha,
1125
+ combobox: ga,
1126
+ navigation: ya,
1127
+ camera: ba,
1128
+ selfie: _a,
1129
+ document: qa,
1130
+ fileUpload: Ca,
1131
+ consent: Sa,
1132
+ pages: Ta
1133
+ }, Aa = "ltr", Ia = { back: "Back", close: "Close", closeVerificationFrame: "Close Smile ID Verification", allow: "Allow", cancel: "Cancel", continue: "Continue", or: "or", toggle: "Toggle" }, wa = { noItems: "No items" }, Pa = { back: "Back", closeVerificationFrame: "Close Smile ID Verification" }, Da = { permission: { description: "Allow camera access to verify your details", requestButton: "Request Camera Access" }, error: { notAllowed: "Camera permission not granted for this service. Enable access to your camera in your device settings or browser/extension to continue. You may need to refresh.", abort: "Something happened, and we lost access to your camera. Please refresh.", notReadable: "There seems to be a problem with your camera connection. Please check and try again or try using device.", notFound: "We are unable to find your camera. Please refresh.", insecure: "Secure connection required. Camera access is disabled on insecure sites. Please switch to the secure page or contact the app owner.", retry: "Try again" } }, ka = { instructions: { title: "Next, we'll take a quick selfie", allowButton: "Allow", tips: { goodLight: { header: "Good Light", body: "Make sure you are in a well-lit environment." }, clearImage: { header: "Clear Image", body: "Hold your device steady so the selfie is clear and sharp." }, removeObstructions: { header: "Remove Obstructions", body: "Remove anything that covers your face, such as glasses, masks, and hats." }, wideSmile: { header: "Wide Smile", body: "When asked to smile, give a wide smile, showing your teeth." } } }, capture: { tip: { fitHead: "Fit your head inside the oval frame" }, cta: { smile: "SMILE", widerSmile: "WIDER SMILE" }, button: { takeSelfie: "Capture Selfie", startCapture: "Start Capture" }, agentMode: { on: "Agent Mode On", off: "Agent Mode Off" }, error: { minFrames: "SmartCameraWeb: The minimum no of frames required is {{count}}", webcamCapture: "Unable to capture webcam images - Please try another device" }, loading: { progress: "Setting up the camera... {{progress}}%", slowConnection: "Still setting things up — this can take a moment the first time.", connectionError: "Internet connection error, check your connection and retry", setupError: "We couldn’t finish setting up face capture on this device. Please try again.", offlineError: "You appear to be offline. Check your connection and try again.", retry: "Try again" } }, smart: { alert: { noFace: "Position your face in the oval", outOfBounds: "Position your face in the oval", tooClose: "Move farther away", tooFar: "Move closer", neutralExpression: "Neutral expression", smileRequired: "Smile!", openMouthSmile: "Wider smile - teeth visible", tooDark: "Too dark - find better lighting", tooBlurry: "Hold steady - too blurry", faceNotCentered: "Centre your face in the oval", turnHeadLeft: "Slowly turn your head to the left", turnHeadRight: "Slowly turn your head to the right", lookStraight: "Look straight at the camera", tiltHeadUp: "Tilt your head slightly up", initializing: "Initialising..." }, status: { capturing: "Capturing...", keepSmiling: "Keep smiling!", readyToCapture: "Ready to capture", poseCaptured: "Great! Hold still", sessionTimeout: "Session timed out — please try again" }, instructions: { title: "Active liveness check", description: "You'll be asked to slowly turn your head to follow on-screen prompts. Keep your face inside the oval at all times.", continueButton: "Start" } }, review: { title: "Review Selfie", question: "Is your whole face clear?", acceptButton: "Yes, use this", retakeButton: "No, Retake Selfie" }, ess: { back: "Back", consent: { titleSuffix: "would like to verify your identity using", bodyPrefix: "By selecting Allow, you consent to ", bodyMiddle: " collecting and processing your personal data for the purpose of providing identity verification and fraud prevention services, and securely sharing the results with ", bodySuffix: ". This may include processing:", items: { contact: "Contact Information", personal: "Personal Information", biometric: "Biometric data and Identification documents", device: "Device Information" }, consentCheckbox: "I consent to my identity information and related data being shared with service providers to prevent fraud and securely process this transaction.", learnMore: "Learn more", learnMoreBodyPrefix: "", learnMoreBodyAnd: " and ", learnMoreBodySuffix: " process your personal and biometric data to verify your identity and prevent fraud. We retain your data for 5 years to meet legal obligations.", learnMoreShare: "We may share data with specific partners to complete this check.", learnMoreRightsPrefix: "You can withdraw consent, access your data, or exercise your rights at our", dsarLink: "DSAR", learnMoreRightsMiddle: "page. Full details are in the", smileIdPrivacyLink: "Smile ID", partnerPrivacyTail: "and {{partnerName}} Privacy Policies.", partnerPrivacyTailLinked: "and", partnerPrivacyTailEnd: "Privacy Policies.", allow: "Allow", deny: "Deny" }, instructions: { titlePrefix: "Get ready to capture your", titleAccent: "selfie", guidelinesHeader: "CAPTURE GUIDELINES", tile: { good: "Good", accessories: "Accessories", multipleFaces: "Multiple Faces", poorLighting: "Poor Lighting" }, continue: "Next", settingUpCamera: "Setting up camera…" }, submission: { review: { title: "Confirm image quality", body: "Make sure that the image is clear.", retake: "Retake", confirm: "Confirm" }, submitting: { title: "Submitting…", body: `This might take a moment…
1134
+ Do not close or refresh this page` }, success: { title: "Submission Complete", body: "Thank you for your submission. We are currently verifying your details." }, error: { title: "Submission Failed" }, continue: "Continue", exit: "Exit", imageAlt: "Captured selfie" }, alert: { centerFace: "Centre your face within the oval frame", holdStill: "Hold still…", tooDark: "Move to a well lit environment", tooClose: "Move your device away from your face", tooFar: "Move your device closer to your face", moveDeviceUp: "Move your device higher", moveDeviceDown: "Move your device lower", moveDeviceLeft: "Move your device to the left", moveDeviceRight: "Move your device to the right", turnHeadLeft: "Turn your head to the left", turnHeadRight: "Turn your head to the right", tiltHeadUp: "Turn your head slightly upwards" }, failure: { sessionTimedOut: "Your session timed out. Please try again." } } }, za = { name: { default: "Document" }, title: { front: "Submit Front of ID", back: "Submit Back of ID" }, capture: { checkingPermissions: "Checking permissions...", instructionText: "Make sure all corners are visible and there is no glare.", captureButton: "Capture Document" }, autoCapture: { galleryButtonLabel: "Select image from gallery", capturePhotoButton: "Capture photo", error: { cameraUnavailable: { title: "Camera access denied or unavailable", body: "Please allow camera access and reload the page." }, cvLoadFailed: "Auto-detection unavailable. Please reload or try another browser." }, feedback: { positionDocument: "Position your document in the frame", alignDocument: "Align document in frame", placeDocument: "Place document in frame", ensureDocumentVisible: "Ensure document is fully visible", moveDocumentCloser: "Move document closer", moveDocumentFurtherAway: "Move document further away", holdSteady: "Hold steady", detectingDocumentType: "Detecting document type…", tooBlurry: "Too Blurry", glareDetectedAdjustLighting: "Glare detected — adjust lighting", holdStill: "Hold Still...", capturingDocument: "Capturing document...", processingFailed: "Processing failed — please try again", autoDetectionUnavailableRetry: "Auto-detection unavailable — please try again", autoDetectionUnavailableManual: "Auto-detection unavailable — capture manually", captured: "Captured!", captureFailed: "Capture failed — please try again" } }, instructions: { captureTitlePrefix: "Get ready to capture your", captureGuidelines: "Capture Guidelines", description: "We'll use it to verify your identity.", followInstructions: "Please follow the instructions below.", guidelines: { good: "Good", notCropped: "Not cropped", notBlurry: "Not blurry", notReflective: "Not reflective" }, goodLight: { header: "Good Light", body: "Make sure the image is taken in a well-lit environment where the ID document is easy to read." }, clearImage: { header: "Clear Image", body: "Hold your device steady so the information on the ID are not blurry." }, startCapture: "Start Capture", takePhotoButton: "Take Photo", uploadPhotoButton: "Upload Photo", flipTitlePrefix: "Flip your", captureBackButton: "Capture Back of ID", skipButton: "Skip" }, review: { question: "Is the document clear and readable?", description: "Make sure all corners of the document are visible and there is no glare", acceptButton: "Yes, my ID is readable", retakeButton: "No, retake photo", confirmTitle: "Confirm image quality", confirmBody: "Make sure that all the information is readable.", retake: "Retake", confirm: "Confirm" }, submission: { imageAlt: "Captured document", submitting: { title: "Submitting…", body: `This might take a moment…
1135
+ Do not close or refresh this page` }, success: { title: "Submission Complete" }, error: { title: "Submission Failed" } } }, La = { error: { readingFile: "An error occurred reading the file. Please check the file, and try again", multipleFiles: "Only one file upload is permitted at a time", unsupportedFormat: "Unsupported file format. Please ensure that you are providing a JPG or PNG image", fileTooLarge: "{{filename}} is too large. Please ensure that the file is less than {{size}}." } }, Oa = { demoTip: "This consent screen is for illustrative purposes only. Demo App does not collect personal ID data.", accessRequest: "{{partnerName}} wants to access your {{idTypeLabel}} information", allowPartner: "This will allow {{partnerName}} to:", processing: { personalDetails: { title: "Process your personal information", description: "Partner can process your names, DoB and gender" }, contactInfo: { title: "Process your contact information", description: "Partner can process your phone numbers and address" }, documentInfo: { title: "Process your document information", description: "Partner can process your photo, ID expiration date, country of issuance and document number" } }, privacyPolicy: "You can view {{partnerName}}'s privacy policy", privacyPolicyLink: "here.", grantConsent: 'By choosing "Allow", you grant {{partnerName}} consent to process your personal data to offer you this service', denied: { title: "Consent Denied", message: "We cannot verify you without your consent", prompt: "Wish to correct that?", goBack: "Go Back", confirmCancel: "No, Cancel Verification" } }, Ba = { loading: { title: "Setting up", subtitle: "Just a few more seconds", description: "We are setting up your verification flow" }, idSelection: { title: "Select ID Type", selectCountry: "Select Country", selectIdType: "Select ID Type", selectDocument: "Select Document", searchCountry: "Search Country", placeholder: "--Please Select--", selectCountryFirst: "--Select Country First--", noCountryFound: "No country found", noIdTypeFound: "No ID type found" }, upload: { title: "Uploading", subtitle: "Just a few more seconds", description: "We are processing your request" }, complete: { title: "Submission Complete", subtitle: "That's all you need to verify your identity", processingInfo: "We will process your {{country}} - {{idType}} information to verify your identity" }, smartSelfie: { authentication: { title: "SmartSelfie™ Authentication", upload: "Authenticating User" }, registration: { title: "SmartSelfie™ Registration", upload: "Registering User" } }, eSignature: { fullName: "Full Name", loading: { description: "We are setting up" }, upload: { description: "We are processing your request" }, entry: { title: "Provide Signature", subtitle: "Read and accept the agreements you would see in the next page" }, tips: { read: { title: "Read document", description: "Read the document(s) provided carefully" }, name: { title: "Add your full names", description: "Type your full names once you agree with the document(s) shared with you" }, signature: { title: "Append your signature", description: "Sign or upload your signature to certify the documents" } }, getStarted: "Get started", review: { title: "Review documents", subtitle: "Before accepting, carefully read through the document(s)", consent: "By ticking this checkbox, you agree to the conditions in the document(s)" }, personalInfo: { title: "Add your full names", subtitle: "Kindly add your full names to verify that you read the document(s) provided earlier.", placeholder: "James Doe" }, signature: { title: "Add your signature", subtitle: "Sign or upload your signature below" }, confirmDetails: { title: "Confirm details", subtitle: "Make sure your name is correctly spelled, and the signature matches the one on your ID", yes: "Yes, it's correct", no: "No, change them" }, error: { uploadFailed: "We could not upload your signature" } }, idInfo: { title: "Enter ID Information", idNumber: "ID Number", firstName: "First Name", lastName: "Last Name", dateOfBirth: "Date of Birth", day: "Day", month: "Month", year: "Year", bank: "Bank", selectBank: "--Select Bank--", searchBank: "Search Bank", noBankFound: "No bank found", citizenship: "Citizenship", selectCitizenship: "Select Citizenship Type", dob: "Date of Birth" }, error: { title: "An error occurred", generic: "Something went wrong", uploadFailed: "We could not upload your information", checkInternet: "Please check that you have a stable internet connection. Then try again!", tryAgain: "Try again", countryNotSupported: "{{country}} is not supported" }, validation: { isRequired: "{{field}} is required", invalidFormat: "{{field}} is invalid" } }, Fa = {
1136
+ direction: Aa,
1137
+ common: Ia,
1138
+ combobox: wa,
1139
+ navigation: Pa,
1140
+ camera: Da,
1141
+ selfie: ka,
1142
+ document: za,
1143
+ fileUpload: La,
1144
+ consent: Oa,
1145
+ pages: Ba
1146
+ }, ja = "ltr", xa = { back: "Retour", close: "Fermer", closeVerificationFrame: "Fermer la vérification Smile ID", allow: "Autoriser", cancel: "Annuler", continue: "Continuer", or: "ou", toggle: "Basculer" }, Ma = { noItems: "Aucun article" }, Na = { back: "Retour", closeVerificationFrame: "Fermer la vérification d'identité Smile ID" }, Ea = { permission: { description: "Autorisez l'accès à la caméra pour vérifier vos informations.", requestButton: "Demander l'accès à la caméra" }, error: { notAllowed: "L'autorisation d'accès à la caméra n'a pas été accordée pour ce service. Activez l'accès à votre caméra dans votre appareil ou navigateur/extension pour continuer. Il se peut que vous deviez actualiser la page.", abort: "Un problème est survenu et nous avons perdu l'accès à votre caméra. Veuillez actualiser.", notReadable: "Il semble y avoir un problème avec la connexion de votre caméra. Veuillez vérifier et réessayer, ou essayez d'utiliser un autre appareil.", notFound: "Nous ne parvenons pas à trouver votre caméra. Veuillez actualiser.", insecure: "Connexion sécurisée requise. L'accès à la caméra est désactivé sur les sites non sécurisés. Veuillez vous rendre sur la page sécurisée ou contacter le propriétaire de l'application.", retry: "Réessayer" } }, Ua = { instructions: { title: "Ensuite, nous allons prendre un selfie rapide", allowButton: "Autoriser", tips: { goodLight: { header: "Bonne lumière", body: "Assurez-vous d'être dans un environnement bien éclairé." }, clearImage: { header: "Image Claire", body: "Tenez votre téléphone stable pour que le selfie soit net et clair." }, removeObstructions: { header: "Retirer les Obstructions", body: "Retirez tout ce qui vous couvre le visage, comme les lunettes, masques et chapeaux." }, wideSmile: { header: "large sourire", body: "Lorsque l'on vous demande de sourire, faites un large sourire, en montrant vos dents." } } }, capture: { tip: { fitHead: "Placez votre visage dans le cadre ovale" }, cta: { smile: "SOURIRE", widerSmile: "UN SOURIRE PLUS LARGE" }, button: { takeSelfie: "Prendre un selfie", startCapture: "Démarrer la capture" }, agentMode: { on: "Mode Agent Activé", off: "Mode Agent Désactivé" }, error: { minFrames: "SmartCameraWeb : Le nombre minimum d'images requis est de {{count}}", webcamCapture: "Impossible de capturer les images de la webcam - Veuillez essayer un autre appareil" }, loading: { progress: "Configuration de la caméra... {{progress}}%", slowConnection: "Configuration en cours — cela peut prendre un instant la première fois.", connectionError: "Erreur de connexion Internet, vérifiez votre connexion et réessayez", setupError: "Nous n’avons pas pu terminer la configuration de la capture du visage sur cet appareil. Veuillez réessayer.", offlineError: "Vous semblez être hors ligne. Vérifiez votre connexion et réessayez.", retry: "Réessayer" } }, smart: { alert: { noFace: "Positionnez votre visage dans l'ovale", outOfBounds: "Positionnez votre visage dans l'ovale", tooClose: "Éloignez-vous", tooFar: "Rapprochez-vous", neutralExpression: "Expression neutre", smileRequired: "Souriez !", openMouthSmile: "Sourire plus large - dents visibles", tooDark: "Trop sombre - améliorez l'éclairage", tooBlurry: "Restez immobile - image floue", faceNotCentered: "Centrez votre visage dans l'ovale", turnHeadLeft: "Tournez lentement la tête vers la gauche", turnHeadRight: "Tournez lentement la tête vers la droite", lookStraight: "Regardez droit vers la caméra", tiltHeadUp: "Inclinez légèrement la tête vers le haut", initializing: "Initialisation en cours..." }, status: { capturing: "Capture en cours...", keepSmiling: "Continuez de sourire!", readyToCapture: "Prêt à enregistrer", poseCaptured: "Parfait ! Ne bougez plus", sessionTimeout: "Session expirée — veuillez réessayer" }, instructions: { title: "Contrôle de vivacité actif", description: "Vous devrez tourner lentement la tête en suivant les indications à l'écran. Gardez votre visage dans l'ovale.", continueButton: "Commencer" } }, review: { title: "Vérification du selfie", question: "Votre visage est-il entièrement net ?", acceptButton: "Oui, utiliser ceci", retakeButton: "Non, refaire le selfie" }, ess: { back: "Retour", consent: { titleSuffix: "souhaite vérifier votre identité avec", bodyPrefix: "En sélectionnant Autoriser, vous consentez à ce que ", bodyMiddle: " collecte et traite vos données personnelles afin de fournir des services de vérification d'identité et de prévention de la fraude, et partage les résultats en toute sécurité avec ", bodySuffix: ". Cela peut inclure le traitement des :", items: { contact: "Informations de contact", personal: "Informations personnelles", biometric: "Données biométriques et documents d'identité", device: "Informations sur l'appareil" }, consentCheckbox: "Je consens au partage de mes informations d'identité et données associées avec les prestataires afin de prévenir la fraude et de traiter cette transaction en toute sécurité.", learnMore: "En savoir plus", learnMoreBodyPrefix: "", learnMoreBodyAnd: " et ", learnMoreBodySuffix: " traitent vos données personnelles et biométriques pour vérifier votre identité et prévenir la fraude. Nous conservons vos données pendant 5 ans afin de respecter nos obligations légales.", learnMoreShare: "Nous pouvons partager des données avec certains partenaires pour réaliser cette vérification.", learnMoreRightsPrefix: "Vous pouvez retirer votre consentement, accéder à vos données ou exercer vos droits sur notre page", dsarLink: "DSAR", learnMoreRightsMiddle: ". Les détails complets sont disponibles dans les politiques de confidentialité de", smileIdPrivacyLink: "Smile ID", partnerPrivacyTail: "et de {{partnerName}}.", partnerPrivacyTailLinked: "et de", partnerPrivacyTailEnd: ".", allow: "Autoriser", deny: "Refuser" }, instructions: { titlePrefix: "Préparez-vous à capturer votre", titleAccent: "selfie", guidelinesHeader: "CONSIGNES DE CAPTURE", tile: { good: "Bien", accessories: "Accessoires", multipleFaces: "Plusieurs visages", poorLighting: "Mauvais éclairage" }, continue: "Suivant", settingUpCamera: "Configuration de la caméra…" }, submission: { review: { title: "Vérifier la qualité de l'image", body: "Assurez-vous que l'image est nette.", retake: "Reprendre", confirm: "Confirmer" }, submitting: { title: "Envoi en cours…", body: `Cela peut prendre un instant…
1147
+ Ne fermez pas et n'actualisez pas cette page` }, success: { title: "Envoi terminé", body: "Merci pour votre soumission. Nous vérifions actuellement vos informations." }, error: { title: "Échec de la soumission" }, continue: "Continuer", exit: "Quitter", imageAlt: "Selfie capturé" }, alert: { centerFace: "Centrez votre visage dans le cadre ovale", holdStill: "Ne bougez plus…", tooDark: "Placez-vous dans un environnement bien éclairé", tooClose: "Éloignez l'appareil de votre visage", tooFar: "Rapprochez l'appareil de votre visage", moveDeviceUp: "Levez votre appareil", moveDeviceDown: "Baissez votre appareil", moveDeviceLeft: "Déplacez votre appareil vers la gauche", moveDeviceRight: "Déplacez votre appareil vers la droite", turnHeadLeft: "Tournez la tête vers la gauche", turnHeadRight: "Tournez la tête vers la droite", tiltHeadUp: "Inclinez légèrement la tête vers le haut" }, failure: { sessionTimedOut: "Votre session a expiré. Veuillez réessayer." } } }, Ga = { name: { default: "Document" }, title: { front: "Soumettre le recto de la pièce d'identité", back: "Soumettre le verso de la pièce d'identité" }, capture: { checkingPermissions: "Vérification des autorisations...", instructionText: "Assurez-vous que tous les coins sont visibles et qu'il n'y a pas de reflet.", captureButton: "Capturez le document" }, autoCapture: { galleryButtonLabel: "Sélectionner une image dans la galerie", capturePhotoButton: "Prendre une photo", error: { cameraUnavailable: { title: "Accès à la caméra refusé ou indisponible", body: "Autorisez l'accès à la caméra et rechargez la page." }, cvLoadFailed: "La détection automatique est indisponible. Rechargez la page ou essayez un autre navigateur." }, feedback: { positionDocument: "Placez votre document dans le cadre", alignDocument: "Alignez le document dans le cadre", placeDocument: "Placez le document dans le cadre", ensureDocumentVisible: "Assurez-vous que le document est entièrement visible", moveDocumentCloser: "Rapprochez le document", moveDocumentFurtherAway: "Éloignez le document", holdSteady: "Restez immobile", detectingDocumentType: "Détection du type de document…", tooBlurry: "Trop flou", glareDetectedAdjustLighting: "Reflet détecté — ajustez l'éclairage", holdStill: "Ne bougez plus...", capturingDocument: "Capture du document...", processingFailed: "Le traitement a échoué — veuillez réessayer", autoDetectionUnavailableRetry: "La détection automatique est indisponible — veuillez réessayer", autoDetectionUnavailableManual: "La détection automatique est indisponible — capturez manuellement", captured: "Capturé !", captureFailed: "La capture a échoué — veuillez réessayer" } }, instructions: { captureTitlePrefix: "Préparez-vous à capturer votre", captureGuidelines: "Consignes de capture", description: "Nous l'utiliserons pour vérifier votre identité.", followInstructions: "Veuillez suivre les instructions ci-dessous.", guidelines: { good: "Correct", notCropped: "Non recadré", notBlurry: "Non flou", notReflective: "Sans reflets" }, goodLight: { header: "Bonne lumière", body: "Assurez-vous que l'image est prise dans un environnement bien éclairé où le document d'identité est facile à lire." }, clearImage: { header: "Image Claire", body: "Tenez votre appareil photo fermement pour que les mots sur la pièce d'identité ne soient pas flous." }, startCapture: "Démarrer la capture", takePhotoButton: "Prendre une photo", uploadPhotoButton: "Télécharger une photo", flipTitlePrefix: "Retournez votre", captureBackButton: "Capturer le verso", skipButton: "Ignorer" }, review: { question: "Le document est-il clair et lisible ?", description: "Assurez-vous que tous les coins du document sont visibles et qu'il n'y a pas de reflet.", acceptButton: "Oui, ma pièce d'identité est lisible", retakeButton: "Non, reprendre la photo", confirmTitle: "Vérifiez la qualité de l'image", confirmBody: "Assurez-vous que toutes les informations sont lisibles.", retake: "Reprendre", confirm: "Confirmer" }, submission: { imageAlt: "Document capturé", submitting: { title: "Envoi en cours…", body: `Cela peut prendre un moment…
1148
+ Ne fermez pas et n'actualisez pas cette page` }, success: { title: "Envoi terminé" }, error: { title: "Échec de l'envoi" } } }, Ha = { error: { readingFile: "Une erreur s'est produite lors de la lecture du fichier. Veuillez vérifier le fichier et réessayer.", multipleFiles: "Seulement un téléchargement de fichier est autorisé à la fois", unsupportedFormat: "Format de fichier non pris en charge. Veuillez vous assurer que vous fournissez une image JPG ou PNG", fileTooLarge: "{{filename}} est trop volumineux. Veuillez vous assurer que la taille du fichier est inférieure à {{size}}." } }, Va = { demoTip: "Cet écran de consentement est présenté à titre indicatif uniquement. L'application de démonstration ne collecte pas de données d'identification personnelle.", accessRequest: "{{partnerName}} veut accéder à vos informations {{idTypeLabel}}", allowPartner: "Ceci permettra à {{partnerName}} de :", processing: { personalDetails: { title: "Traiter vos informations personnelles", description: "Le partenaire peut traiter votre nom, date de naissance et sexe" }, contactInfo: { title: "Traiter vos coordonnées", description: "Le partenaire peut traiter vos numéros de téléphone et votre adresse" }, documentInfo: { title: "Traitez les informations de votre document", description: "Le partenaire peut traiter votre photo, la date d'expiration de votre pièce d'identité, le pays d'émission et le numéro de document" } }, privacyPolicy: "Vous pouvez consulter la politique de confidentialité de {{partnerName}}", privacyPolicyLink: "ici.", grantConsent: 'En choisissant "Autoriser", vous accordez à {{partnerName}} le consentement de traiter vos données personnelles pour permettre ce service', denied: { title: "Consentement refusé", message: "Nous ne pouvons pas vous vérifier sans votre consentement", prompt: "Souhaitez-vous corriger cela?", goBack: "Retour", confirmCancel: "Non, Annuler la vérification" } }, $a = { loading: { title: "Configuration", subtitle: "Juste quelques secondes de plus", description: "Nous mettons en place votre processus de vérification" }, idSelection: { title: "Sélectionner le type de pièce d'identité", selectCountry: "Sélectionnez le pays", selectIdType: "Sélectionnez le type de pièce d'identité", selectDocument: "Sélectionner le document", searchCountry: "Rechercher un pays", placeholder: "--Veuillez sélectionner--", selectCountryFirst: "--Sélectionnez le pays d'abord--", noCountryFound: "Aucun pays trouvé", noIdTypeFound: "Aucun type de pièce d'identité trouvé" }, upload: { title: "Téléchargement en cours", subtitle: "Plus que quelques secondes", description: "Nous traitons votre demande" }, complete: { title: "Envoie terminée", subtitle: "C'est tout ce dont vous avez besoin pour vérifier votre identité.", processingInfo: "Nous traiterons vos informations {{country}} - {{idType}} pour vérifier votre identité" }, smartSelfie: { authentication: { title: "Authentification SmartSelfie™", upload: "Authentification de l'utilisateur" }, registration: { title: "Inscription SmartSelfie™", upload: "Inscription de l'utilisateur" } }, eSignature: { fullName: "Nom complet", loading: { description: "Nous mettons en place" }, upload: { description: "Nous traitons votre demande" }, entry: { title: "Fournir une signature", subtitle: "Lisez et acceptez les accords que vous verrez à la page suivante" }, tips: { read: { title: "Lire le document", description: "Lisez attentivement le(s) document(s) fourni(s)" }, name: { title: "Ajouter votre nom complet", description: "Tapez votre nom complet une fois que vous êtes d'accord avec le(s) document(s) partagé(s) avec vous" }, signature: { title: "Ajouter votre signature", description: "Signez ou téléchargez votre signature pour certifier les documents" } }, getStarted: "Commencer", review: { title: "Examiner les documents", subtitle: "Veuillez lire attentivement le(s) document(s) avant d'accepter.", consent: "En cochant cette case, vous acceptez les conditions contenues dans le(s) document(s)" }, personalInfo: { title: "Ajoutez votre nom complet", subtitle: "Veuillez ajouter votre nom complet pour confirmer que vous avez lu le(s) document(s) fourni(s) précédemment.", placeholder: "James Doe" }, signature: { title: "Ajoutez votre signature", subtitle: "Signez ou téléchargez votre signature ci-dessous" }, confirmDetails: { title: "Confirmer les détails", subtitle: "Assurez-vous que votre nom est correctement orthographié et que la signature ressemble à celle de votre pièce d'identité", yes: "Oui, c'est exact", no: "Non, les changer" }, error: { uploadFailed: "Nous n'avons pas pu télécharger votre signature" } }, idInfo: { title: "Saisir les informations d'identité", idNumber: "Numéro d'identification", firstName: "Prénom", lastName: "Nom de famille", dateOfBirth: "Date de Naissance", day: "Jour", month: "Mois", year: "Année", bank: "Banque", selectBank: "--Sélectionner la banque--", searchBank: "Rechercher une banque", noBankFound: "Aucune banque trouvée", citizenship: "Citoyenneté", selectCitizenship: "Sélectionner le type de citoyenneté", dob: "Date de naissance" }, error: { title: "Une erreur est survenue", generic: "Quelque chose s'est mal passé", uploadFailed: "Nous n'avons pas pu télécharger vos informations", checkInternet: "Veuillez vérifier que vous disposez d'une connexion Internet stable. Ensuite, veuillez réessayer !", tryAgain: "Essayez à nouveau", countryNotSupported: "{{country}} n'est pas pris en charge" }, validation: { isRequired: "{{field}} est obligatoire", invalidFormat: "{{field}} n'est pas valide" } }, Ka = {
1149
+ direction: ja,
1150
+ common: xa,
1151
+ combobox: Ma,
1152
+ navigation: Na,
1153
+ camera: Ea,
1154
+ selfie: Ua,
1155
+ document: Ga,
1156
+ fileUpload: Ha,
1157
+ consent: Va,
1158
+ pages: $a
1159
+ }, Kn = {
1160
+ ar: "ar-EG",
1161
+ en: "en-GB",
1162
+ fr: "fr-FR"
1163
+ };
1164
+ function B(e) {
1165
+ return Kn[e] || e;
1166
+ }
1167
+ const T = "en-GB", Wa = 5e3;
1168
+ let q = T;
1169
+ const v = {
1170
+ "ar-EG": Ra,
1171
+ "en-GB": Fa,
1172
+ "fr-FR": Ka
1173
+ };
1174
+ function N(e, t) {
1175
+ v[e] = t;
1176
+ }
1177
+ function Wn(e, t) {
1178
+ return !t || typeof t != "object" ? e : !e || typeof e != "object" ? t : va({}, e, t);
1179
+ }
1180
+ const Dn = [
1181
+ "direction",
1182
+ "common.back",
1183
+ "common.close",
1184
+ "common.continue",
1185
+ "common.cancel",
1186
+ "camera.permission.description",
1187
+ "camera.permission.requestButton",
1188
+ "camera.error.notAllowed",
1189
+ "selfie.instructions.title",
1190
+ "selfie.capture.button.takeSelfie",
1191
+ "selfie.review.title",
1192
+ "selfie.review.acceptButton",
1193
+ "selfie.review.retakeButton",
1194
+ "document.capture.captureButton",
1195
+ "document.review.acceptButton",
1196
+ "document.review.retakeButton"
1197
+ ];
1198
+ async function Ja(e, t = Wa) {
1199
+ const r = new AbortController(), n = setTimeout(() => r.abort(), t);
1200
+ try {
1201
+ return await fetch(e, { signal: r.signal });
1202
+ } finally {
1203
+ clearTimeout(n);
1204
+ }
1205
+ }
1206
+ async function Jn(e, t) {
1207
+ try {
1208
+ const r = await Ja(t);
1209
+ if (!r.ok)
1210
+ throw new Error(`Failed to load locale from ${t}: ${r.status}`);
1211
+ const n = await r.json();
1212
+ return N(e, n), n;
1213
+ } catch (r) {
1214
+ const n = r.name === "AbortError" ? `Timeout loading locale '${e}' from ${t}` : `Error loading locale '${e}' from ${t}: ${r.message}`;
1215
+ if (console.error(n), e !== T && v[T])
1216
+ return console.warn(`Falling back to default locale '${T}'`), v[T];
1217
+ throw r;
1218
+ }
1219
+ }
1220
+ async function Yn(e, t) {
1221
+ const r = B(e);
1222
+ return v[r] ? v[r] : t ? Jn(e, t) : (console.warn(
1223
+ `Locale '${e}' not found and no URL provided, using default '${T}'`
1224
+ ), v[T] || {});
1225
+ }
1226
+ function Ot(e, t) {
1227
+ if (!e) return;
1228
+ const r = t.split(".").reduce((n, i) => {
1229
+ if (n && typeof n == "object" && i in n)
1230
+ return n[i];
1231
+ }, e);
1232
+ return typeof r == "string" ? r : void 0;
1233
+ }
1234
+ function Qn(e) {
1235
+ if (!e || typeof e != "object")
1236
+ return { missingKeys: Dn, valid: !1 };
1237
+ const t = Dn.filter((r) => r === "direction" ? !e.direction : !Ot(e, r));
1238
+ return {
1239
+ missingKeys: t,
1240
+ valid: t.length === 0
1241
+ };
1242
+ }
1243
+ function Mt(e) {
1244
+ const t = B(q), r = v[t], n = Ot(r, e);
1245
+ if (typeof n == "string")
1246
+ return n;
1247
+ const i = B(T);
1248
+ if (t !== i) {
1249
+ const a = Ot(v[i], e);
1250
+ if (typeof a == "string")
1251
+ return a;
1252
+ }
1253
+ return console.warn(`Translation key '${e}' not found in any locale`), e;
1254
+ }
1255
+ const Ya = Mt, Qa = {
1256
+ '"': "&quot;",
1257
+ "&": "&amp;",
1258
+ "'": "&#39;",
1259
+ "<": "&lt;",
1260
+ ">": "&gt;"
1261
+ };
1262
+ function M(e) {
1263
+ return e.replace(/[&<>"']/g, (t) => Qa[t]);
1264
+ }
1265
+ function Xn(e, t = {}) {
1266
+ let r = Mt(e);
1267
+ return Object.keys(t).forEach((n) => {
1268
+ const i = t[n], a = `{{${n}}}`;
1269
+ if (i && typeof i == "object" && "value" in i) {
1270
+ const o = M(String(i.value || "")), s = M(String(i.className || ""));
1271
+ r = r.split(a).join(
1272
+ s ? `<span class="${s}">${o}</span>` : o
1273
+ );
1274
+ } else
1275
+ r = r.split(a).join(M(String(i)));
1276
+ }), r;
1277
+ }
1278
+ const Xa = Xn;
1279
+ async function Za(e, { url: t, translation: r, locales: n, validate: i = !1 } = {}) {
1280
+ if (q = B(e), n && typeof n == "object" && Object.entries(n).forEach(([o, s]) => {
1281
+ if (!s || typeof s != "object")
1282
+ return;
1283
+ const u = B(o);
1284
+ v[u] ? v[u] = Wn(v[u], s) : (N(u, s), o !== u && (Kn[o] = u));
1285
+ }), !v[q])
1286
+ if (r)
1287
+ N(q, r);
1288
+ else if (t)
1289
+ try {
1290
+ await Yn(q, t);
1291
+ } catch {
1292
+ return console.error(
1293
+ `Failed to load locale '${e}', keeping current locale '${q}'`
1294
+ ), !1;
1295
+ }
1296
+ else
1297
+ return console.warn(`Locale '${e}' not registered and no URL provided`), !1;
1298
+ if (i && v[q]) {
1299
+ const o = Qn(v[q]);
1300
+ o.valid || console.warn(
1301
+ `Locale '${e}' is missing required keys:`,
1302
+ o.missingKeys
1303
+ );
1304
+ }
1305
+ const a = v[q];
1306
+ return a && a.direction && document?.documentElement && (document.documentElement.dir = a.direction), !0;
1307
+ }
1308
+ function eo() {
1309
+ return q;
1310
+ }
1311
+ function to() {
1312
+ return T;
1313
+ }
1314
+ function ro(e) {
1315
+ return e in v;
1316
+ }
1317
+ function no(e) {
1318
+ const t = v[e];
1319
+ t && t.direction && (document.documentElement.dir = t.direction);
1320
+ }
1321
+ function io() {
1322
+ return v[q]?.direction || "ltr";
1323
+ }
1324
+ const ao = {
1325
+ deepMerge: Wn,
1326
+ escapeHtml: M,
1327
+ getCurrentLocale: eo,
1328
+ getDefaultLocale: to,
1329
+ getDirection: io,
1330
+ hasLocale: ro,
1331
+ loadLocale: Yn,
1332
+ registerLocale: N,
1333
+ registerLocaleUrl: Jn,
1334
+ setCurrentLocale: Za,
1335
+ setDocumentDir: no,
1336
+ t: Mt,
1337
+ tHtml: Xn,
1338
+ translate: Ya,
1339
+ translateHtml: Xa,
1340
+ validateLocale: Qn
1341
+ };
1342
+ export {
1343
+ to as a,
1344
+ io as b,
1345
+ Jn as c,
1346
+ Wn as d,
1347
+ M as e,
1348
+ no as f,
1349
+ eo as g,
1350
+ ro as h,
1351
+ Xn as i,
1352
+ Ya as j,
1353
+ Xa as k,
1354
+ Yn as l,
1355
+ P as m,
1356
+ H as n,
1357
+ F as o,
1358
+ I as p,
1359
+ Zn as q,
1360
+ N as r,
1361
+ Za as s,
1362
+ Mt as t,
1363
+ ao as u,
1364
+ Qn as v
1365
+ };
1366
+ //# sourceMappingURL=index-BqyuTk9f.js.map