@incodetech/web 0.0.0-dev-20260625-3bdec399 → 0.0.0-dev-20260625-138639f4

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 (37) hide show
  1. package/dist/authentication/authentication.es.js +1 -1
  2. package/dist/certificate-issuance/certificate-issuance.es.js +1 -1
  3. package/dist/document-capture/document-capture.es.js +1 -1
  4. package/dist/documentCapture-BGsf51is.js +2 -0
  5. package/dist/{documentCapture-d_CAQrmN.js → documentCapture-BvC0ik8G.js} +2 -2
  6. package/dist/{dynamicForms-1jsIpiZj.js → dynamicForms-BQv-wsBl.js} +1 -1
  7. package/dist/ekyb/ekyb.es.js +1 -1
  8. package/dist/{ekybModule-BOeHZIR1.js → ekybModule-CEb7KvEp.js} +1 -1
  9. package/dist/ekybModule-UEW1CfUF.js +2 -0
  10. package/dist/email/email.es.js +1 -1
  11. package/dist/{emailInput-CHOHVqsB.js → emailInput-DAuSH3Cg.js} +1 -1
  12. package/dist/{expiredId-D17oN5K2.js → expiredId-0GUaIbV1.js} +2 -2
  13. package/dist/{extensibility-Bt4hEE1l.js → extensibility-BAAGWrEk.js} +8 -4
  14. package/dist/extensibility.es.js +2 -2
  15. package/dist/field-comparison/field-comparison.es.js +1 -1
  16. package/dist/{fieldComparison-yU6ip42J.js → fieldComparison-CS_pL3oH.js} +1 -1
  17. package/dist/fieldComparison-DwbYI5GV.js +2 -0
  18. package/dist/fiscal-qr/fiscal-qr.es.js +1 -1
  19. package/dist/flow/flow.es.js +1 -1
  20. package/dist/flow/styles.css +27 -0
  21. package/dist/governmentValidation/governmentValidation.es.js +1 -1
  22. package/dist/id/id.es.js +4 -3
  23. package/dist/id-verification/id-verification.es.js +1 -1
  24. package/dist/{idOcr-CYEi5DcV.js → idOcr-XA2Xs3h-.js} +1 -1
  25. package/dist/redirect-to-mobile/redirect-to-mobile.es.js +1 -1
  26. package/dist/selfie/selfie.es.js +1 -1
  27. package/dist/selfie/styles.css +27 -0
  28. package/dist/signature/signature.es.js +1 -1
  29. package/dist/{tutorial-Cap8qKvM.js → tutorial-lK0cKQhw.js} +33 -3
  30. package/dist/types/extensibility.d.ts +4 -0
  31. package/dist/{useModuleLoader-D7FX3BIR.js → useModuleLoader-DzErWZma.js} +6 -6
  32. package/dist/workflow/styles.css +27 -0
  33. package/dist/workflow/workflow.es.js +1 -1
  34. package/package.json +2 -2
  35. package/dist/documentCapture-CILVX8q1.js +0 -2
  36. package/dist/ekybModule-DrIG76ZS.js +0 -2
  37. package/dist/fieldComparison-nJQ_OLEV.js +0 -2
@@ -1,7 +1,7 @@
1
1
  import { v as u } from "../vendor-preact-DThS2ZQ_.js";
2
2
  import { a as isTerminalModuleState, c as useManager, o as useModuleTerminalCallbacks } from "../hooks-Da_yP_Dr.js";
3
3
  import { t as IncodeComponent } from "../incodeComponent-Cmi1rlWs.js";
4
- import { n as Capture, r as Permissions, t as Tutorial } from "../tutorial-Cap8qKvM.js";
4
+ import { n as Capture, r as Permissions, t as Tutorial } from "../tutorial-lK0cKQhw.js";
5
5
  import { t as registerIncodeModuleElement } from "../incodeModule-M8DszCee.js";
6
6
  import { createAuthenticationManager } from "@incodetech/core/authentication";
7
7
  //#region src/modules/authentication/authentication.tsx
@@ -4,7 +4,7 @@ import { c as useManager, o as useModuleTerminalCallbacks } from "../hooks-Da_yP
4
4
  import { t as IncodeComponent } from "../incodeComponent-Cmi1rlWs.js";
5
5
  import { r as Spacer } from "../loadingIcon-B0ysgiNq.js";
6
6
  import { t as Page } from "../page-DidH_RkX.js";
7
- import "../extensibility-Bt4hEE1l.js";
7
+ import "../extensibility-BAAGWrEk.js";
8
8
  import { a as TypographyH5, o as TypographyP } from "../typography-BZIpjo97.js";
9
9
  import { t as Button } from "../button-Ch5-QgHB.js";
10
10
  import "../icons-CJJbIpBq.js";
@@ -1,2 +1,2 @@
1
- import { t as DocumentCapture } from "../documentCapture-d_CAQrmN.js";
1
+ import { t as DocumentCapture } from "../documentCapture-BvC0ik8G.js";
2
2
  export { DocumentCapture };
@@ -0,0 +1,2 @@
1
+ import { t as DocumentCapture } from "./documentCapture-BvC0ik8G.js";
2
+ export { DocumentCapture };
@@ -4,12 +4,12 @@ import { c as useManager, o as useModuleTerminalCallbacks, r as useIsMobileDevic
4
4
  import { t as IncodeComponent } from "./incodeComponent-Cmi1rlWs.js";
5
5
  import { n as cn, r as Spacer } from "./loadingIcon-B0ysgiNq.js";
6
6
  import { t as Page } from "./page-DidH_RkX.js";
7
- import { b as Overlay, d as CameraOverlayHeader, f as CameraOverlay, l as CaptureFooter, p as CameraFrame, u as CameraView, y as ProgressBar } from "./extensibility-Bt4hEE1l.js";
7
+ import { b as Overlay, d as CameraOverlayHeader, f as CameraOverlay, l as CaptureFooter, p as CameraFrame, u as CameraView, y as ProgressBar } from "./extensibility-BAAGWrEk.js";
8
8
  import { t as Spinner } from "./spinner-BRNNKqPN.js";
9
9
  import { t as Button } from "./button-Ch5-QgHB.js";
10
10
  import { a as FileIcon, p as CameraIcon, r as LockIcon } from "./icons-CJJbIpBq.js";
11
11
  import { t as SuccessIcon } from "./successIcon-B5mGvdx1.js";
12
- import { o as ErrorContent, r as Permissions } from "./tutorial-Cap8qKvM.js";
12
+ import { o as ErrorContent, r as Permissions } from "./tutorial-lK0cKQhw.js";
13
13
  import { t as BottomSheet } from "./bottomSheet-CnWbbUAM.js";
14
14
  import { t as registerIncodeModuleElement } from "./incodeModule-M8DszCee.js";
15
15
  import { createDocumentCaptureManager } from "@incodetech/core/document-capture";
@@ -12,7 +12,7 @@ import { t as DropdownComposed } from "./dropdownComposed-CoU0enG6.js";
12
12
  import { t as DateInputComposed } from "./dateInputComposed-DuaofcBl.js";
13
13
  import { t as registerIncodeModuleElement } from "./incodeModule-M8DszCee.js";
14
14
  import { n as getRequiredHintMode, t as getFieldHint } from "./requiredLabelHint-DX3oVNtu.js";
15
- import { t as EmailInput } from "./emailInput-CHOHVqsB.js";
15
+ import { t as EmailInput } from "./emailInput-DAuSH3Cg.js";
16
16
  import { formatCPF, isValidCPF } from "@incodetech/core/cpf-ocr";
17
17
  import { createDynamicFormsManager } from "@incodetech/core/dynamic-forms";
18
18
  //#region src/modules/dynamic-forms/dynamicForms.tsx
@@ -1,2 +1,2 @@
1
- import { t as EkybModule } from "../ekybModule-BOeHZIR1.js";
1
+ import { t as EkybModule } from "../ekybModule-CEb7KvEp.js";
2
2
  export { EkybModule };
@@ -4,7 +4,7 @@ import { c as useManager, i as useFormScrollable, o as useModuleTerminalCallback
4
4
  import { t as IncodeComponent } from "./incodeComponent-Cmi1rlWs.js";
5
5
  import { r as Spacer } from "./loadingIcon-B0ysgiNq.js";
6
6
  import { t as Page } from "./page-DidH_RkX.js";
7
- import "./extensibility-Bt4hEE1l.js";
7
+ import "./extensibility-BAAGWrEk.js";
8
8
  import { t as Spinner } from "./spinner-BRNNKqPN.js";
9
9
  import { t as Button } from "./button-Ch5-QgHB.js";
10
10
  import { t as VerificationResult } from "./verificationResult-B6PBXbp9.js";
@@ -0,0 +1,2 @@
1
+ import { t as EkybModule } from "./ekybModule-CEb7KvEp.js";
2
+ export { EkybModule };
@@ -7,7 +7,7 @@ import { t as Page } from "../page-DidH_RkX.js";
7
7
  import { t as Button } from "../button-Ch5-QgHB.js";
8
8
  import { t as OtpInput } from "../otpInput-Q_kzSZeD.js";
9
9
  import { t as registerIncodeModuleElement } from "../incodeModule-M8DszCee.js";
10
- import { t as EmailInput } from "../emailInput-CHOHVqsB.js";
10
+ import { t as EmailInput } from "../emailInput-DAuSH3Cg.js";
11
11
  import { createEmailManager } from "@incodetech/core/email";
12
12
  //#region src/modules/email/email.tsx
13
13
  /**
@@ -1,6 +1,6 @@
1
1
  import { n as useTranslation } from "./i18n-DoP1NB7u.js";
2
2
  import { v as u } from "./vendor-preact-DThS2ZQ_.js";
3
- import "./extensibility-Bt4hEE1l.js";
3
+ import "./extensibility-BAAGWrEk.js";
4
4
  import { t as InputComposed } from "./inputComposed-C1R2LAa3.js";
5
5
  //#region src/modules/email/emailInput.tsx
6
6
  var EMAIL_REGEX = /^[^\s@]+@[^\s@]+\.[^\s@]{2,}$/;
@@ -31,7 +31,7 @@ var RedStrikeIcon = ({ className, ...rest }) => /* @__PURE__ */ u("svg", {
31
31
  * bottom). The optional attempts counter (added by core PR #439 / SDK 1
32
32
  * `IdError` parity) renders only when `attemptsRemaining` is supplied.
33
33
  */
34
- var ExpiredId = ({ onRetry, onContinue, attemptsRemaining }) => {
34
+ var ExpiredId = ({ onRetry, onContinue, attemptsRemaining, isBackSide }) => {
35
35
  const { t } = useTranslation();
36
36
  const titleRef = A(null);
37
37
  y(() => {
@@ -56,7 +56,7 @@ var ExpiredId = ({ onRetry, onContinue, attemptsRemaining }) => {
56
56
  /* @__PURE__ */ u(Spacer, { size: 12 }),
57
57
  /* @__PURE__ */ u("p", {
58
58
  class: "IncodeIdExpiredSubtitle",
59
- children: t("idv2.capture.expiredId.pleaseTryWithADifferentId")
59
+ children: isBackSide ? t("idv2.digitalIdUpload.wrongDocumentTypeScreen.errorSubtitle") : t("idv2.capture.expiredId.pleaseTryWithADifferentId")
60
60
  }),
61
61
  /* @__PURE__ */ u(Spacer, { size: 80 }),
62
62
  attemptsRemaining !== void 0 ? /* @__PURE__ */ u("p", {
@@ -14,7 +14,7 @@ import { t as ErrorIcon } from "./errorIcon-BA4T6iy-.js";
14
14
  import { f as CaptureButtonIcon, i as HelpIcon, m as CalendarIcon, r as LockIcon, s as ChevronRightIcon, t as SvgLightningIcon } from "./icons-CJJbIpBq.js";
15
15
  import { t as SuccessIcon } from "./successIcon-B5mGvdx1.js";
16
16
  import { t as Modal } from "./modal-OxkFuuiR.js";
17
- import { a as Lottie, i as BaseTutorial } from "./tutorial-Cap8qKvM.js";
17
+ import { a as Lottie, i as BaseTutorial } from "./tutorial-lK0cKQhw.js";
18
18
  import "./verificationResult-B6PBXbp9.js";
19
19
  import "./inputComposed-C1R2LAa3.js";
20
20
  import "./inputComposed-BaY5q9WM.js";
@@ -25,7 +25,7 @@ import "./phoneInputComposed-DMiXfF-1.js";
25
25
  import "./dropdownComposed-BAoxIIsE.js";
26
26
  import "./dateInputComposed-DRzZi6uy.js";
27
27
  import "./bottomSheet-CnWbbUAM.js";
28
- import { n as RedStrikeIcon, t as ExpiredId } from "./expiredId-D17oN5K2.js";
28
+ import { n as RedStrikeIcon, t as ExpiredId } from "./expiredId-0GUaIbV1.js";
29
29
  import { getDeviceClass } from "@incodetech/core/device";
30
30
  import "@incodetech/core/id";
31
31
  //#region src/shared/overlay/overlay.tsx
@@ -1336,14 +1336,18 @@ var IdError = ({ manager, state, blurImage, ..._rest }) => {
1336
1336
  * wires `idCaptureManager.retryCapture()` and forwards the
1337
1337
  * `attemptsRemaining` counter into the shared `<ExpiredId>` primitive.
1338
1338
  *
1339
+ * `isBackSide` triggers the Figma `1-9-11-id-documenterror` subtitle
1340
+ * ("Use a different ID from the accepted list") when the back side expired.
1341
+ *
1339
1342
  * Workflow's verify-side node uses its own wrapper in the `id-verification`
1340
1343
  * module that passes only `onContinue` (no attempts concept), matching the
1341
1344
  * legacy SDK 1 `Workflow.tsx → ProcessId.jsx → ExpiredId` one-shot Continue
1342
1345
  * behavior.
1343
1346
  */
1344
- var IdExpired = ({ manager, attemptsRemaining }) => /* @__PURE__ */ u(ExpiredId, {
1347
+ var IdExpired = ({ manager, attemptsRemaining, isBackSide }) => /* @__PURE__ */ u(ExpiredId, {
1345
1348
  onRetry: () => manager.retryCapture(),
1346
- attemptsRemaining
1349
+ attemptsRemaining,
1350
+ isBackSide
1347
1351
  });
1348
1352
  //#endregion
1349
1353
  //#region src/modules/id/processing/idNoAttempts.tsx
@@ -4,7 +4,7 @@ import { c as useManager, s as useScreenOrientation } from "./hooks-Da_yP_Dr.js"
4
4
  import { n as LandscapeBlocker, t as IncodeComponent } from "./incodeComponent-Cmi1rlWs.js";
5
5
  import { r as Spacer } from "./loadingIcon-B0ysgiNq.js";
6
6
  import { t as Page } from "./page-DidH_RkX.js";
7
- import { _ as TextArea, b as Overlay, c as ManualCapture, d as CameraOverlayHeader, f as CameraOverlay, g as TextAreaComposed, h as VerificationOptionCardList, i as Capture, l as CaptureFooter, m as VerificationOptionCard, n as Chooser, o as IdExpired, p as CameraFrame, r as Tutorial, s as IdError, t as FlipAnimation, u as CameraView, v as SegmentedDateInput, y as ProgressBar } from "./extensibility-Bt4hEE1l.js";
7
+ import { _ as TextArea, b as Overlay, c as ManualCapture, d as CameraOverlayHeader, f as CameraOverlay, g as TextAreaComposed, h as VerificationOptionCardList, i as Capture, l as CaptureFooter, m as VerificationOptionCard, n as Chooser, o as IdExpired, p as CameraFrame, r as Tutorial, s as IdError, t as FlipAnimation, u as CameraView, v as SegmentedDateInput, y as ProgressBar } from "./extensibility-BAAGWrEk.js";
8
8
  import { a as TypographyH5, i as TypographyH4, n as TypographyH1, o as TypographyP, r as TypographyH3, t as Title } from "./typography-BZIpjo97.js";
9
9
  import { t as Spinner } from "./spinner-BRNNKqPN.js";
10
10
  import { t as Processing } from "./processing-Boki1Z8j.js";
@@ -13,7 +13,7 @@ import { t as ErrorIcon } from "./errorIcon-BA4T6iy-.js";
13
13
  import { a as FileIcon, c as ChevronLeftIcon, d as CheckmarkIcon, f as CaptureButtonIcon, h as WarningIcon, i as HelpIcon, l as ChevronDown, m as CalendarIcon, n as SearchIcon, o as CloseIcon, p as CameraIcon, r as LockIcon, s as ChevronRightIcon, t as SvgLightningIcon, u as CheckmarkCompactIcon } from "./icons-CJJbIpBq.js";
14
14
  import { t as SuccessIcon } from "./successIcon-B5mGvdx1.js";
15
15
  import { t as Modal } from "./modal-OxkFuuiR.js";
16
- import { a as Lottie, i as BaseTutorial, n as Capture$1, o as ErrorContent, r as Permissions, t as Tutorial$1 } from "./tutorial-Cap8qKvM.js";
16
+ import { a as Lottie, i as BaseTutorial, n as Capture$1, o as ErrorContent, r as Permissions, t as Tutorial$1 } from "./tutorial-lK0cKQhw.js";
17
17
  import { t as VerificationResult } from "./verificationResult-B6PBXbp9.js";
18
18
  import { n as Input, t as InputComposed } from "./inputComposed-C1R2LAa3.js";
19
19
  import { t as OtpInput } from "./otpInput-Q_kzSZeD.js";
@@ -1,2 +1,2 @@
1
- import { t as FieldComparison } from "../fieldComparison-yU6ip42J.js";
1
+ import { t as FieldComparison } from "../fieldComparison-CS_pL3oH.js";
2
2
  export { FieldComparison };
@@ -4,7 +4,7 @@ import { c as useManager, o as useModuleTerminalCallbacks } from "./hooks-Da_yP_
4
4
  import { t as IncodeComponent } from "./incodeComponent-Cmi1rlWs.js";
5
5
  import { r as Spacer } from "./loadingIcon-B0ysgiNq.js";
6
6
  import { t as Page } from "./page-DidH_RkX.js";
7
- import "./extensibility-Bt4hEE1l.js";
7
+ import "./extensibility-BAAGWrEk.js";
8
8
  import { t as Button } from "./button-Ch5-QgHB.js";
9
9
  import { t as VerificationResult } from "./verificationResult-B6PBXbp9.js";
10
10
  import { t as InputComposed } from "./inputComposed-C1R2LAa3.js";
@@ -0,0 +1,2 @@
1
+ import { t as FieldComparison } from "./fieldComparison-CS_pL3oH.js";
2
+ export { FieldComparison };
@@ -4,7 +4,7 @@ import { c as useManager, o as useModuleTerminalCallbacks } from "../hooks-Da_yP
4
4
  import { t as IncodeComponent } from "../incodeComponent-Cmi1rlWs.js";
5
5
  import { r as Spacer } from "../loadingIcon-B0ysgiNq.js";
6
6
  import { t as Page } from "../page-DidH_RkX.js";
7
- import { d as CameraOverlayHeader, f as CameraOverlay, p as CameraFrame, u as CameraView } from "../extensibility-Bt4hEE1l.js";
7
+ import { d as CameraOverlayHeader, f as CameraOverlay, p as CameraFrame, u as CameraView } from "../extensibility-BAAGWrEk.js";
8
8
  import { t as Button } from "../button-Ch5-QgHB.js";
9
9
  import { t as VerificationResult } from "../verificationResult-B6PBXbp9.js";
10
10
  import { t as registerIncodeModuleElement } from "../incodeModule-M8DszCee.js";
@@ -5,7 +5,7 @@ import { c as useManager } from "../hooks-Da_yP_Dr.js";
5
5
  import { t as IncodeComponent } from "../incodeComponent-Cmi1rlWs.js";
6
6
  import { t as TransitionSpinner } from "../transitionSpinner-4rPkt-KM.js";
7
7
  import { t as registerIncodeModuleElement } from "../incodeModule-M8DszCee.js";
8
- import { _ as warmupWasmIfNeeded, a as resolveApiKey, c as HEADLESS_FLOW_MODULE_KEYS, d as fetchTheme, f as initializeFlowManager, h as preloadRedirectToMobile, l as LAZY_UI_MODULES, m as preloadHomeScreen, n as useModulePreloader, o as extractIncodeStatus, p as preloadFirstModule, r as usePrefetchNextModule, s as UnsupportedModule, t as useModuleLoader, u as createFlowManager, y as TerminalErrorPage } from "../useModuleLoader-D7FX3BIR.js";
8
+ import { _ as warmupWasmIfNeeded, a as resolveApiKey, c as HEADLESS_FLOW_MODULE_KEYS, d as fetchTheme, f as initializeFlowManager, h as preloadRedirectToMobile, l as LAZY_UI_MODULES, m as preloadHomeScreen, n as useModulePreloader, o as extractIncodeStatus, p as preloadFirstModule, r as usePrefetchNextModule, s as UnsupportedModule, t as useModuleLoader, u as createFlowManager, y as TerminalErrorPage } from "../useModuleLoader-DzErWZma.js";
9
9
  import { getDeviceClass } from "@incodetech/core/device";
10
10
  import { getRequiredWasmPipelines } from "@incodetech/core/flow";
11
11
  import { bootstrapSession, refreshQrUrlUuid } from "@incodetech/core/session";
@@ -4108,6 +4108,23 @@
4108
4108
  transform: scaleX(-1);
4109
4109
  }
4110
4110
 
4111
+ .IncodeCaptureContainer .IncodeCaptureAvatarHost {
4112
+ width: 100%;
4113
+ height: 100%;
4114
+ position: absolute;
4115
+ }
4116
+
4117
+ .IncodeCaptureContainer .IncodeCaptureAvatarElement {
4118
+ object-fit: cover;
4119
+ width: 100%;
4120
+ height: 100%;
4121
+ position: absolute;
4122
+ }
4123
+
4124
+ .IncodeCaptureContainer .IncodeCaptureAvatarElement.IncodeCaptureAvatarMirrored {
4125
+ transform: scaleX(-1);
4126
+ }
4127
+
4111
4128
  .IncodeCaptureCapturingPage .IncodeCaptureCapturingActions {
4112
4129
  justify-content: center;
4113
4130
  margin-top: auto;
@@ -4126,6 +4143,16 @@
4126
4143
  overflow: hidden;
4127
4144
  }
4128
4145
 
4146
+ .IncodePrivacyLensBanner {
4147
+ text-align: center;
4148
+ color: #4a5568;
4149
+ max-width: 320px;
4150
+ margin-inline: auto;
4151
+ padding: 0 1rem 1rem;
4152
+ font-size: .95rem;
4153
+ line-height: 1.4;
4154
+ }
4155
+
4129
4156
  .IncodeCaptureStatusPage .IncodeCaptureStatusContainer {
4130
4157
  flex-direction: column;
4131
4158
  flex: 1;
@@ -4,7 +4,7 @@ import { c as useManager, o as useModuleTerminalCallbacks } from "../hooks-Da_yP
4
4
  import { t as IncodeComponent } from "../incodeComponent-Cmi1rlWs.js";
5
5
  import { r as Spacer } from "../loadingIcon-B0ysgiNq.js";
6
6
  import { t as Page } from "../page-DidH_RkX.js";
7
- import "../extensibility-Bt4hEE1l.js";
7
+ import "../extensibility-BAAGWrEk.js";
8
8
  import { t as AutoFocusTitle } from "../autoFocusTitle-CuRu2lPg.js";
9
9
  import { t as VerificationResult } from "../verificationResult-B6PBXbp9.js";
10
10
  import { t as OtpInput } from "../otpInput-Q_kzSZeD.js";
package/dist/id/id.es.js CHANGED
@@ -4,7 +4,7 @@ import { c as useManager, o as useModuleTerminalCallbacks } from "../hooks-Da_yP
4
4
  import { t as IncodeComponent } from "../incodeComponent-Cmi1rlWs.js";
5
5
  import { n as cn } from "../loadingIcon-B0ysgiNq.js";
6
6
  import { t as Page } from "../page-DidH_RkX.js";
7
- import { a as IdNoAttempts, i as Capture, n as Chooser, o as IdExpired, r as Tutorial, s as IdError, t as FlipAnimation, y as ProgressBar } from "../extensibility-Bt4hEE1l.js";
7
+ import { a as IdNoAttempts, i as Capture, n as Chooser, o as IdExpired, r as Tutorial, s as IdError, t as FlipAnimation, y as ProgressBar } from "../extensibility-BAAGWrEk.js";
8
8
  import { t as Spinner } from "../spinner-BRNNKqPN.js";
9
9
  import "../spinner-zRaUjXtH.js";
10
10
  import { t as TransitionSpinner } from "../transitionSpinner-4rPkt-KM.js";
@@ -13,7 +13,7 @@ import { t as Button } from "../button-Ch5-QgHB.js";
13
13
  import { t as ErrorIcon } from "../errorIcon-BA4T6iy-.js";
14
14
  import { s as ChevronRightIcon } from "../icons-CJJbIpBq.js";
15
15
  import { t as SuccessIcon } from "../successIcon-B5mGvdx1.js";
16
- import { a as Lottie, o as ErrorContent, r as Permissions } from "../tutorial-Cap8qKvM.js";
16
+ import { a as Lottie, o as ErrorContent, r as Permissions } from "../tutorial-lK0cKQhw.js";
17
17
  import { t as PdfViewer } from "../pdfViewer-BewML6eg.js";
18
18
  import { t as registerIncodeModuleElement } from "../incodeModule-M8DszCee.js";
19
19
  import { t as id_laser_v_default } from "../id-laser-v-Dj_RN_s9.js";
@@ -969,7 +969,8 @@ var IdContent = ({ config, manager: externalManager, onFinish, onError }) => {
969
969
  if (state.status === "processing") return /* @__PURE__ */ u(Processing, {});
970
970
  if (state.status === "expired") return /* @__PURE__ */ u(IdExpired, {
971
971
  manager,
972
- attemptsRemaining: state.attemptsRemaining
972
+ attemptsRemaining: state.attemptsRemaining,
973
+ isBackSide: state.currentMode === "back"
973
974
  });
974
975
  if (state.status === "expiredExhausted") return /* @__PURE__ */ u(IdNoAttempts, { manager });
975
976
  if (state.status === "finished" || state.status === "closed") return null;
@@ -2,7 +2,7 @@ import { v as u } from "../vendor-preact-DThS2ZQ_.js";
2
2
  import { c as useManager, o as useModuleTerminalCallbacks } from "../hooks-Da_yP_Dr.js";
3
3
  import { t as IncodeComponent } from "../incodeComponent-Cmi1rlWs.js";
4
4
  import { t as Spinner } from "../spinner-BRNNKqPN.js";
5
- import { t as ExpiredId } from "../expiredId-D17oN5K2.js";
5
+ import { t as ExpiredId } from "../expiredId-0GUaIbV1.js";
6
6
  import { t as registerIncodeModuleElement } from "../incodeModule-M8DszCee.js";
7
7
  import { createIdVerificationManager } from "@incodetech/core/id-verification";
8
8
  //#region src/modules/id-verification/id-verification.tsx
@@ -3,7 +3,7 @@ import { d as T, v as u } from "./vendor-preact-DThS2ZQ_.js";
3
3
  import { c as useManager, o as useModuleTerminalCallbacks } from "./hooks-Da_yP_Dr.js";
4
4
  import { t as IncodeComponent } from "./incodeComponent-Cmi1rlWs.js";
5
5
  import { t as Page } from "./page-DidH_RkX.js";
6
- import "./extensibility-Bt4hEE1l.js";
6
+ import "./extensibility-BAAGWrEk.js";
7
7
  import { t as Button } from "./button-Ch5-QgHB.js";
8
8
  import { t as VerificationResult } from "./verificationResult-B6PBXbp9.js";
9
9
  import { t as InputComposed } from "./inputComposed-C1R2LAa3.js";
@@ -6,7 +6,7 @@ import { t as IncodeComponent } from "../incodeComponent-Cmi1rlWs.js";
6
6
  import { r as Spacer } from "../loadingIcon-B0ysgiNq.js";
7
7
  import { t as incode_logo_default } from "../incode-logo-57XFniXU.js";
8
8
  import { n as VerifiedByIncodeLogo, r as usePageUiConfig } from "../page-DidH_RkX.js";
9
- import "../extensibility-Bt4hEE1l.js";
9
+ import "../extensibility-BAAGWrEk.js";
10
10
  import { t as TransitionSpinner } from "../transitionSpinner-4rPkt-KM.js";
11
11
  import { t as Button } from "../button-Ch5-QgHB.js";
12
12
  import "../icons-CJJbIpBq.js";
@@ -3,7 +3,7 @@ import { a as isTerminalModuleState, c as useManager, o as useModuleTerminalCall
3
3
  import { t as IncodeComponent } from "../incodeComponent-Cmi1rlWs.js";
4
4
  import { t as TransitionSpinner } from "../transitionSpinner-4rPkt-KM.js";
5
5
  import { t as Processing } from "../processing-Boki1Z8j.js";
6
- import { n as Capture, r as Permissions, t as Tutorial } from "../tutorial-Cap8qKvM.js";
6
+ import { n as Capture, r as Permissions, t as Tutorial } from "../tutorial-lK0cKQhw.js";
7
7
  import { t as registerIncodeModuleElement } from "../incodeModule-M8DszCee.js";
8
8
  import { createSelfieManager } from "@incodetech/core/selfie";
9
9
  //#region src/modules/selfie/preloadTutorialAssets.ts
@@ -805,6 +805,23 @@
805
805
  transform: scaleX(-1);
806
806
  }
807
807
 
808
+ .IncodeCaptureContainer .IncodeCaptureAvatarHost {
809
+ width: 100%;
810
+ height: 100%;
811
+ position: absolute;
812
+ }
813
+
814
+ .IncodeCaptureContainer .IncodeCaptureAvatarElement {
815
+ object-fit: cover;
816
+ width: 100%;
817
+ height: 100%;
818
+ position: absolute;
819
+ }
820
+
821
+ .IncodeCaptureContainer .IncodeCaptureAvatarElement.IncodeCaptureAvatarMirrored {
822
+ transform: scaleX(-1);
823
+ }
824
+
808
825
  .IncodeCaptureCapturingPage .IncodeCaptureCapturingActions {
809
826
  justify-content: center;
810
827
  margin-top: auto;
@@ -823,6 +840,16 @@
823
840
  overflow: hidden;
824
841
  }
825
842
 
843
+ .IncodePrivacyLensBanner {
844
+ text-align: center;
845
+ color: #4a5568;
846
+ max-width: 320px;
847
+ margin-inline: auto;
848
+ padding: 0 1rem 1rem;
849
+ font-size: .95rem;
850
+ line-height: 1.4;
851
+ }
852
+
826
853
  .IncodeCaptureStatusPage .IncodeCaptureStatusContainer {
827
854
  flex-direction: column;
828
855
  flex: 1;
@@ -4,7 +4,7 @@ import { c as useManager, o as useModuleTerminalCallbacks } from "../hooks-Da_yP
4
4
  import { t as IncodeComponent } from "../incodeComponent-Cmi1rlWs.js";
5
5
  import { r as Spacer } from "../loadingIcon-B0ysgiNq.js";
6
6
  import { t as Page } from "../page-DidH_RkX.js";
7
- import "../extensibility-Bt4hEE1l.js";
7
+ import "../extensibility-BAAGWrEk.js";
8
8
  import { t as Button } from "../button-Ch5-QgHB.js";
9
9
  import { t as VerificationResult } from "../verificationResult-B6PBXbp9.js";
10
10
  import { t as registerIncodeModuleElement } from "../incodeModule-M8DszCee.js";
@@ -2267,6 +2267,33 @@ var Permissions = ({ manager, permissionStatus }) => {
2267
2267
  });
2268
2268
  };
2269
2269
  //#endregion
2270
+ //#region src/modules/selfie/avatarCanvas.tsx
2271
+ /**
2272
+ * Mounts the avatar `<canvas>` in place of the live selfie video. The element
2273
+ * is created and rendered to in the infra layer; the UI only hosts it and
2274
+ * applies layout + mirror classes (the latter parallels the video's
2275
+ * `.IncodeCaptureVideoMirrored`, keeping handedness in one place). Cosmetic
2276
+ * only — the capture pipeline runs on the real frames regardless.
2277
+ */
2278
+ var AvatarCanvas = ({ canvas, mirrored }) => {
2279
+ const hostRef = A(null);
2280
+ y(() => {
2281
+ const host = hostRef.current;
2282
+ if (!host || !canvas) return void 0;
2283
+ canvas.classList.add("IncodeCaptureAvatarElement");
2284
+ canvas.classList.toggle("IncodeCaptureAvatarMirrored", mirrored);
2285
+ host.appendChild(canvas);
2286
+ return () => {
2287
+ if (canvas.parentElement === host) host.removeChild(canvas);
2288
+ };
2289
+ }, [canvas, mirrored]);
2290
+ return /* @__PURE__ */ u("div", {
2291
+ ref: hostRef,
2292
+ class: "IncodeCaptureAvatarHost",
2293
+ "aria-hidden": "true"
2294
+ });
2295
+ };
2296
+ //#endregion
2270
2297
  //#region src/modules/selfie/captureStatusPage.tsx
2271
2298
  var CaptureStatusPage = ({ icon, title, className, isLoading }) => {
2272
2299
  const titleRef = A(null);
@@ -2688,7 +2715,7 @@ var Notification = ({ detectionState, disabled }) => {
2688
2715
  //#endregion
2689
2716
  //#region src/modules/selfie/capture.tsx
2690
2717
  var Capture = ({ manager, state }) => {
2691
- const { captureStatus, stream, detectionStatus, attemptsRemaining, uploadError, assistedOnboarding, ageAssurance, onDeviceMode } = state;
2718
+ const { captureStatus, stream, detectionStatus, attemptsRemaining, uploadError, assistedOnboarding, ageAssurance, onDeviceMode, obfuscateWithAvatar, avatarCanvas, avatarVariant } = state;
2692
2719
  const [isManualCapturing, setIsManualCapturing] = d(false);
2693
2720
  const { t } = useTranslation();
2694
2721
  const manualCaptureRef = A(null);
@@ -2724,10 +2751,13 @@ var Capture = ({ manager, state }) => {
2724
2751
  children: /* @__PURE__ */ u("div", {
2725
2752
  class: "IncodeCaptureVideoWrapper",
2726
2753
  "aria-hidden": "true",
2727
- children: stream ? /* @__PURE__ */ u(k, { children: [/* @__PURE__ */ u(Video, {
2754
+ children: stream ? /* @__PURE__ */ u(k, { children: [obfuscateWithAvatar ? /* @__PURE__ */ u(AvatarCanvas, {
2755
+ canvas: avatarCanvas,
2756
+ mirrored: !assistedOnboarding
2757
+ }) : /* @__PURE__ */ u(Video, {
2728
2758
  stream,
2729
2759
  mirrored: !assistedOnboarding
2730
- }), /* @__PURE__ */ u("div", {
2760
+ }), obfuscateWithAvatar && avatarVariant !== "privacy-lens" ? null : /* @__PURE__ */ u("div", {
2731
2761
  class: "IncodeCaptureVideo",
2732
2762
  children: /* @__PURE__ */ u(FaceOutline, {})
2733
2763
  })] }) : null
@@ -403,6 +403,9 @@ declare type IdErrorProps = {
403
403
  * wires `idCaptureManager.retryCapture()` and forwards the
404
404
  * `attemptsRemaining` counter into the shared `<ExpiredId>` primitive.
405
405
  *
406
+ * `isBackSide` triggers the Figma `1-9-11-id-documenterror` subtitle
407
+ * ("Use a different ID from the accepted list") when the back side expired.
408
+ *
406
409
  * Workflow's verify-side node uses its own wrapper in the `id-verification`
407
410
  * module that passes only `onContinue` (no attempts concept), matching the
408
411
  * legacy SDK 1 `Workflow.tsx → ProcessId.jsx → ExpiredId` one-shot Continue
@@ -413,6 +416,7 @@ export declare const IdExpired: FC<IdExpiredProps>;
413
416
  declare type IdExpiredProps = {
414
417
  manager: IdCaptureManager;
415
418
  attemptsRemaining: number;
419
+ isBackSide?: boolean;
416
420
  };
417
421
 
418
422
  export declare const IdFlipAnimation: FC<FlipAnimationProps>;
@@ -295,14 +295,14 @@ var LAZY_UI_MODULES = {
295
295
  INE_VALIDATION: () => import("./governmentValidation/governmentValidation.es.js").then((m) => m.GovernmentValidation),
296
296
  GEOLOCATION: () => import("./geolocation/geolocation.es.js").then((m) => m.Geolocation),
297
297
  EXTERNAL_VERIFICATION: () => import("./ekycModule-BIbj7hr1.js").then((m) => m.EkycModule),
298
- EKYB: () => import("./ekybModule-DrIG76ZS.js").then((m) => m.EkybModule),
299
- DOCUMENT_CAPTURE: () => import("./documentCapture-CILVX8q1.js").then((m) => m.DocumentCapture),
300
- ADDRESS: () => import("./documentCapture-CILVX8q1.js").then((m) => m.DocumentCapture),
298
+ EKYB: () => import("./ekybModule-UEW1CfUF.js").then((m) => m.EkybModule),
299
+ DOCUMENT_CAPTURE: () => import("./documentCapture-BGsf51is.js").then((m) => m.DocumentCapture),
300
+ ADDRESS: () => import("./documentCapture-BGsf51is.js").then((m) => m.DocumentCapture),
301
301
  COMBINED_CONSENT: () => import("./consent/consent.es.js").then((m) => m.Consent),
302
302
  MANDATORY_CONSENT: () => import("./mandatoryConsent-DOQ0DKgM.js").then((m) => m.MandatoryConsent),
303
303
  ML_CONSENT: () => import("./mandatoryConsent-DOQ0DKgM.js").then((m) => m.MandatoryConsent),
304
304
  SIGNATURE: () => import("./signature/signature.es.js").then((m) => m.Signature),
305
- ID_OCR: () => import("./idOcr-CYEi5DcV.js").then((m) => m.IdOcr),
305
+ ID_OCR: () => import("./idOcr-XA2Xs3h-.js").then((m) => m.IdOcr),
306
306
  CPF_OCR: () => import("./cpfOcr-BJOYoITy.js").then((m) => m.CpfOcr),
307
307
  ANTIFRAUD: () => import("./antifraud/antifraud.es.js").then((m) => m.Antifraud),
308
308
  CUSTOM_FIELDS: () => import("./customFields-BQ4scZfL.js").then((m) => m.CustomFields),
@@ -312,9 +312,9 @@ var LAZY_UI_MODULES = {
312
312
  AE_SIGNATURE: () => import("./ae-signature/ae-signature.es.js").then((m) => m.AeSignature),
313
313
  QE_SIGNATURE: () => import("./qe-signature/qe-signature.es.js").then((m) => m.QeSignature),
314
314
  CROSS_DOCUMENT_DATA_MATCH: () => import("./cross-document-data-match/cross-document-data-match.es.js").then((m) => m.CrossDocumentDataMatch),
315
- DYNAMIC_FORMS: () => import("./dynamicForms-1jsIpiZj.js").then((m) => m.DynamicForms),
315
+ DYNAMIC_FORMS: () => import("./dynamicForms-BQv-wsBl.js").then((m) => m.DynamicForms),
316
316
  CERTIFICATE_ISSUANCE: () => import("./certificate-issuance/certificate-issuance.es.js").then((m) => m.CertificateIssuance),
317
- FIELD_COMPARISON: () => import("./fieldComparison-nJQ_OLEV.js").then((m) => m.FieldComparison),
317
+ FIELD_COMPARISON: () => import("./fieldComparison-DwbYI5GV.js").then((m) => m.FieldComparison),
318
318
  FISCAL_QR: () => import("./fiscal-qr/fiscal-qr.es.js").then((m) => m.FiscalQr)
319
319
  };
320
320
  function loadHomeScreen() {
@@ -3608,6 +3608,23 @@
3608
3608
  transform: scaleX(-1);
3609
3609
  }
3610
3610
 
3611
+ .IncodeCaptureContainer .IncodeCaptureAvatarHost {
3612
+ width: 100%;
3613
+ height: 100%;
3614
+ position: absolute;
3615
+ }
3616
+
3617
+ .IncodeCaptureContainer .IncodeCaptureAvatarElement {
3618
+ object-fit: cover;
3619
+ width: 100%;
3620
+ height: 100%;
3621
+ position: absolute;
3622
+ }
3623
+
3624
+ .IncodeCaptureContainer .IncodeCaptureAvatarElement.IncodeCaptureAvatarMirrored {
3625
+ transform: scaleX(-1);
3626
+ }
3627
+
3611
3628
  .IncodeCaptureCapturingPage .IncodeCaptureCapturingActions {
3612
3629
  justify-content: center;
3613
3630
  margin-top: auto;
@@ -3626,6 +3643,16 @@
3626
3643
  overflow: hidden;
3627
3644
  }
3628
3645
 
3646
+ .IncodePrivacyLensBanner {
3647
+ text-align: center;
3648
+ color: #4a5568;
3649
+ max-width: 320px;
3650
+ margin-inline: auto;
3651
+ padding: 0 1rem 1rem;
3652
+ font-size: .95rem;
3653
+ line-height: 1.4;
3654
+ }
3655
+
3629
3656
  .IncodeCaptureStatusPage .IncodeCaptureStatusContainer {
3630
3657
  flex-direction: column;
3631
3658
  flex: 1;
@@ -7,7 +7,7 @@ import { t as Page } from "../page-DidH_RkX.js";
7
7
  import { t as TransitionSpinner } from "../transitionSpinner-4rPkt-KM.js";
8
8
  import { t as AutoFocusTitle } from "../autoFocusTitle-CuRu2lPg.js";
9
9
  import { t as registerIncodeModuleElement } from "../incodeModule-M8DszCee.js";
10
- import { a as resolveApiKey, g as setupSDK, i as HEADLESS_WORKFLOW_MODULE_KEYS, l as LAZY_UI_MODULES, o as extractIncodeStatus, s as UnsupportedModule, t as useModuleLoader, v as fetchAndApplyTheme, y as TerminalErrorPage } from "../useModuleLoader-D7FX3BIR.js";
10
+ import { a as resolveApiKey, g as setupSDK, i as HEADLESS_WORKFLOW_MODULE_KEYS, l as LAZY_UI_MODULES, o as extractIncodeStatus, s as UnsupportedModule, t as useModuleLoader, v as fetchAndApplyTheme, y as TerminalErrorPage } from "../useModuleLoader-DzErWZma.js";
11
11
  import { resolveWasmConfig, upgradeToWasmHttpClient, warmupWasm } from "@incodetech/core/wasm";
12
12
  import { getDeviceClass } from "@incodetech/core/device";
13
13
  import { classifyScoreStatus } from "@incodetech/core/flow";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@incodetech/web",
3
- "version": "0.0.0-dev-20260625-3bdec399",
3
+ "version": "0.0.0-dev-20260625-138639f4",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/IncodeTechnologies/incode-web-sdk.git"
@@ -264,7 +264,7 @@
264
264
  "qrcode": "^1.5.4",
265
265
  "signature_pad": "^5.1.3",
266
266
  "tailwindcss": "^4.1.17",
267
- "@incodetech/core": "0.0.0-dev-20260625-3bdec399"
267
+ "@incodetech/core": "0.0.0-dev-20260625-138639f4"
268
268
  },
269
269
  "devDependencies": {
270
270
  "@microsoft/api-extractor": "^7.53.3",
@@ -1,2 +0,0 @@
1
- import { t as DocumentCapture } from "./documentCapture-d_CAQrmN.js";
2
- export { DocumentCapture };
@@ -1,2 +0,0 @@
1
- import { t as EkybModule } from "./ekybModule-BOeHZIR1.js";
2
- export { EkybModule };
@@ -1,2 +0,0 @@
1
- import { t as FieldComparison } from "./fieldComparison-yU6ip42J.js";
2
- export { FieldComparison };