@incodetech/core 0.0.0-dev-20260723-e73d5099 → 0.0.0-dev-20260723-397b76d8
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.
- package/dist/ae-signature.d.ts +2 -1
- package/dist/ae-signature.esm.js +1 -1
- package/dist/authentication.d.ts +3 -2
- package/dist/authentication.esm.js +2 -2
- package/dist/{authenticationManager-BCm7eGoK.d.ts → authenticationManager-Ce1nLm5y.d.ts} +1 -1
- package/dist/{authenticationManager-Cmio9w7i.esm.js → authenticationManager-DW449fW3.esm.js} +2 -2
- package/dist/{authenticationStateMachine-CrkXvIhE.esm.js → authenticationStateMachine-CrvxMmoJ.esm.js} +2 -2
- package/dist/consent.d.ts +1 -1
- package/dist/{consentManager-3Pbtj-RV.d.ts → consentManager-uhDPdU6i.d.ts} +4 -4
- package/dist/{deepsightLoader-Be2xONxN.esm.js → deepsightLoader-BCxEZjuI.esm.js} +1 -1
- package/dist/document-capture.d.ts +2 -1
- package/dist/document-upload.d.ts +4 -4
- package/dist/{documentCaptureManager-CBP2DkPr.d.ts → documentCaptureManager-pEqMY_Oo.d.ts} +2 -104
- package/dist/dynamic-forms.d.ts +2 -1
- package/dist/dynamic-forms.esm.js +2 -2
- package/dist/{dynamicFormsManager-Dposae2l.d.ts → dynamicFormsManager-BYac2uEY.d.ts} +2 -48
- package/dist/{dynamicFormsManager-Fi2O2RUM.esm.js → dynamicFormsManager-DI0sCyVB.esm.js} +1 -1
- package/dist/ekyb.d.ts +2 -1
- package/dist/ekyb.esm.js +3 -2
- package/dist/{ekybManager-CObZ7foB.esm.js → ekybManager-D46NN7cx.esm.js} +1 -1
- package/dist/{ekybManager-CBX0tM04.d.ts → ekybManager-Dzswb_b8.d.ts} +3 -48
- package/dist/{ekybStateMachine-Cw4pz_hf.esm.js → ekybStateMachine-DX7KeqlM.esm.js} +2 -170
- package/dist/ekyc.esm.js +3 -2
- package/dist/{ekycManager-CI7sN4Ln.esm.js → ekycManager-DRrG5I6e.esm.js} +1 -1
- package/dist/{ekycStateMachine-DFQdmBXl.esm.js → ekycStateMachine-DRbbavZy.esm.js} +2 -223
- package/dist/ekycUtils-Dew1rBG0.esm.js +223 -0
- package/dist/electronic-signature.d.ts +2 -1
- package/dist/electronic-signature.esm.js +1 -1
- package/dist/extensibility.d.ts +12 -11
- package/dist/extensibility.esm.js +9 -9
- package/dist/{faceCaptureManagerFactory-DPf1rRsd.d.ts → faceCaptureManagerFactory-BUE6z9iY.d.ts} +2 -4
- package/dist/{faceCaptureManagerFactory-CeUzH_6U.esm.js → faceCaptureManagerFactory-BcntOvvC.esm.js} +1 -1
- package/dist/{faceCaptureSetup-CtiVwaPe.esm.js → faceCaptureSetup-BUAw6zY_.esm.js} +2 -2
- package/dist/flow.d.ts +44 -1
- package/dist/flow.esm.js +4 -11
- package/dist/flowServices-BU1mMxoQ.esm.js +596 -0
- package/dist/geolocation.esm.js +2 -2
- package/dist/{geolocationManager-bZDyI0gy.esm.js → geolocationManager-zeqAcVHC.esm.js} +1 -1
- package/dist/id-ocr.d.ts +2 -1
- package/dist/id.d.ts +2 -1
- package/dist/id.esm.js +2 -2
- package/dist/{idCaptureManager-Dqn6U25Q.esm.js → idCaptureManager-BqmmPXFm.esm.js} +3 -4
- package/dist/idCaptureManager-CtsYvX-Z.d.ts +405 -0
- package/dist/{idCaptureStateMachine-B7atraNp.esm.js → idCaptureStateMachine-CnKkMNrI.esm.js} +8 -50
- package/dist/{idOcrManager-B-JyjyPb.d.ts → idOcrManager-DlYG277_.d.ts} +2 -163
- package/dist/{index-CKbmDFNq.d.ts → index-DGcdhk8Y.d.ts} +2 -64
- package/dist/index.d.ts +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/mandatory-consent.d.ts +2 -1
- package/dist/{mandatoryConsentManager-Bc9AKBft.d.ts → mandatoryConsentManager-Ck2e2W4o.d.ts} +6 -25
- package/dist/{onDeviceFaceResults-CbO3AqMC.esm.js → onDeviceFaceResults-CWMT6JTR.esm.js} +1 -1
- package/dist/personhood.esm.js +2 -2
- package/dist/qe-signature.d.ts +2 -1
- package/dist/qe-signature.esm.js +1 -1
- package/dist/{recordingService-YhyXG0Ch.esm.js → recordingService-CfT3nmFO.esm.js} +1 -1
- package/dist/redirect-to-mobile.d.ts +2 -1
- package/dist/{redirectToMobileManager-NVQM3o5P.d.ts → redirectToMobileManager-DZlJhqvq.d.ts} +2 -40
- package/dist/selfie.d.ts +2 -2
- package/dist/selfie.esm.js +4 -4
- package/dist/{selfieManager-CgmJu62N.esm.js → selfieManager-D-QJUh3X.esm.js} +2 -2
- package/dist/{selfieManager-Dq9wNlcg.d.ts → selfieManager-LabfZln4.d.ts} +1 -1
- package/dist/{selfieStateMachine-C_piZ4gb.esm.js → selfieStateMachine-BH-U-y6R.esm.js} +2 -2
- package/dist/session-BU4MkUEc.esm.js +1 -0
- package/dist/session.d.ts +2 -0
- package/dist/session.esm.js +2 -2
- package/dist/{sessionInitializer-B5tU3IQv.esm.js → sessionInitializer-DT7IYwRx.esm.js} +58 -11
- package/dist/{setup-BBfVpTog.d.ts → setup-B1WTXTQV.d.ts} +15 -0
- package/dist/{setup-Cx9IY17e.esm.js → setup-DXdKnXXf.esm.js} +21 -7
- package/dist/types-B4BObr_7.d.ts +105 -0
- package/dist/types-BAvkiv6L.d.ts +6 -0
- package/dist/types-BQgIv5p8.d.ts +21 -0
- package/dist/types-BfHiko5D.d.ts +48 -0
- package/dist/types-CBJI9n6h.d.ts +163 -0
- package/dist/{idCaptureManager-DTe_5dcI.d.ts → types-D0ohdBDu.d.ts} +2 -407
- package/dist/types-DPIDuhut2.d.ts +40 -0
- package/dist/types-DWaEoU0I.d.ts +64 -0
- package/dist/types-xIEGXWk8.d.ts +48 -0
- package/dist/video-selfie.esm.js +3 -3
- package/dist/wasm.d.ts +1 -1
- package/dist/wasm.esm.js +1 -1
- package/dist/workflow.d.ts +4 -4
- package/dist/workflow.esm.js +16 -11
- package/package.json +1 -1
- package/dist/flowServices-Caz-Bdol.esm.js +0 -209
- package/dist/session-CoL4WBRi.esm.js +0 -1
- package/dist/videoSelfieSteps-DHcibfYH.esm.js +0 -57
- package/dist/{dynamicFormsStateMachine-DiPpuHgF.esm.js → dynamicFormsStateMachine-BQqAwNQ-.esm.js} +1 -1
- package/dist/{electronicSignatureManager-DGFwHdro.esm.js → electronicSignatureManager-BXIpAJ5m.esm.js} +1 -1
- package/dist/{geolocationStateMachine-ByU6-nbM.esm.js → geolocationStateMachine-DxSETS9_.esm.js} +1 -1
|
@@ -78,6 +78,10 @@ type EncryptionOptions = {
|
|
|
78
78
|
*/
|
|
79
79
|
mgf1?: 'sha1' | 'sha256';
|
|
80
80
|
};
|
|
81
|
+
type FlowSetup = false | {
|
|
82
|
+
preload?: boolean;
|
|
83
|
+
mergeConfig?: boolean;
|
|
84
|
+
};
|
|
81
85
|
/**
|
|
82
86
|
* Configuration options for the SDK setup.
|
|
83
87
|
*/
|
|
@@ -191,6 +195,17 @@ type SetupOptions = {
|
|
|
191
195
|
* Default: `true` (fingerprint submission enabled).
|
|
192
196
|
*/
|
|
193
197
|
fingerprint?: boolean;
|
|
198
|
+
/**
|
|
199
|
+
* Controls Flow-backed standalone module configuration.
|
|
200
|
+
* - Omit or `{}`: supplied config is used verbatim; omitted config resolves
|
|
201
|
+
* from Flow when the module mounts.
|
|
202
|
+
* - `{ preload: true }`: await Flow prefetch during setup without changing
|
|
203
|
+
* how supplied config is handled.
|
|
204
|
+
* - `{ mergeConfig: true }`: merge supplied partial config over Flow config
|
|
205
|
+
* when the module mounts.
|
|
206
|
+
* - `false`: never resolve standalone module config from Flow.
|
|
207
|
+
*/
|
|
208
|
+
flow?: FlowSetup;
|
|
194
209
|
/**
|
|
195
210
|
* Disables the browser devtools detector for local development. When `true`,
|
|
196
211
|
* the detector is **not** started, so devtools no longer gets repeatedly
|
|
@@ -7,8 +7,9 @@ import { i as upgradeToWasmHttpClient$1, n as installFreshHttpClient, r as reset
|
|
|
7
7
|
import { _ as setAnalyticsBatcher, g as resetAnalyticsBatcher, h as getAnalyticsBatcher } from "./events-Dy8PyVO5.esm.js";
|
|
8
8
|
import { t as endpoints } from "./endpoints-CfRg7iAr.esm.js";
|
|
9
9
|
import { r as resetDeviceStatsQueue, t as addDeviceStats } from "./stats-4DAk7TYl.esm.js";
|
|
10
|
-
import { a as resetSessionInit, i as initializeSession, o as setClientFingerprintEnabled, s as setClientIpLookupEnabled } from "./sessionInitializer-
|
|
10
|
+
import { a as resetSessionInit, d as resolveStandaloneFlowPolicy, f as setStandaloneFlowPolicy, i as initializeSession, l as registerFlowPreloader, o as setClientFingerprintEnabled, s as setClientIpLookupEnabled, u as resetStandaloneFlowPolicy } from "./sessionInitializer-DT7IYwRx.esm.js";
|
|
11
11
|
import { a as resetTRI, n as initializeTRI, o as resetTRIProviderInstance } from "./tri-4RsGrIt6.esm.js";
|
|
12
|
+
import { n as preloadDashboardFlow, r as resetDashboardFlowCache } from "./flowServices-BU1mMxoQ.esm.js";
|
|
12
13
|
//#region ../infra/src/providers/browser/BrowserPageLifecycleProvider.ts
|
|
13
14
|
var BrowserPageLifecycleProvider = class {
|
|
14
15
|
sendBeacon(url, body, contentType = "application/json") {
|
|
@@ -423,6 +424,11 @@ let configured = false;
|
|
|
423
424
|
* ```
|
|
424
425
|
*/
|
|
425
426
|
async function setup(options) {
|
|
427
|
+
const standaloneFlowPolicy = resolveStandaloneFlowPolicy(options.flow);
|
|
428
|
+
const flowOptions = typeof options.flow === "object" ? options.flow : {};
|
|
429
|
+
const shouldPreloadFlow = options.flow !== false && flowOptions.preload === true;
|
|
430
|
+
setStandaloneFlowPolicy(standaloneFlowPolicy);
|
|
431
|
+
registerFlowPreloader(preloadDashboardFlow);
|
|
426
432
|
if (options.ipLookup !== void 0) setClientIpLookupEnabled(options.ipLookup);
|
|
427
433
|
if (options.fingerprint !== void 0) {
|
|
428
434
|
setClientFingerprintEnabled(options.fingerprint);
|
|
@@ -448,12 +454,18 @@ async function setup(options) {
|
|
|
448
454
|
};
|
|
449
455
|
const effectiveWasm = options.wasm || requestedEncryption?.enabled ? resolveWasmConfig(options.wasm || {}) : void 0;
|
|
450
456
|
if (options.apiURL) await installFreshHttpClient(options.apiURL, options, effectiveWasm, effectiveEncryption);
|
|
451
|
-
if (options.token && isApiConfigured())
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
+
if (options.token && isApiConfigured()) {
|
|
458
|
+
const sessionOptions = {
|
|
459
|
+
token: options.token,
|
|
460
|
+
hostingApp: options.hostingApp
|
|
461
|
+
};
|
|
462
|
+
if (shouldPreloadFlow) sessionOptions.preloadFlow = true;
|
|
463
|
+
const sessionPromise = initializeSession(sessionOptions);
|
|
464
|
+
if (shouldPreloadFlow) await sessionPromise;
|
|
465
|
+
else sessionPromise.catch((error) => {
|
|
466
|
+
console.warn("Session initialization failed:", error);
|
|
467
|
+
});
|
|
468
|
+
}
|
|
457
469
|
configured = true;
|
|
458
470
|
applyEnvironment(options.environment);
|
|
459
471
|
if (effectiveWasm) {
|
|
@@ -566,6 +578,8 @@ function reset() {
|
|
|
566
578
|
resetDeviceStatsQueue();
|
|
567
579
|
resetApi();
|
|
568
580
|
resetSessionInit();
|
|
581
|
+
resetDashboardFlowCache();
|
|
582
|
+
resetStandaloneFlowPolicy();
|
|
569
583
|
setClientIpLookupEnabled(true);
|
|
570
584
|
setClientFingerprintEnabled(true);
|
|
571
585
|
setWasmOnDeviceMode(false);
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { t as CameraStream } from "./camera-9wWD-pwg.js";
|
|
2
|
+
import { t as PermissionResult } from "./types-BT-aiBYV.js";
|
|
3
|
+
//#region src/modules/document-capture/types.d.ts
|
|
4
|
+
type DocumentType = 'addressStatement' | 'otherDocument1' | 'otherDocument2' | 'otherDocument3' | 'v5cMultiPageLogbook' | 'circulationCard' | 'financeSettlement' | 'carInvoice' | 'capture' | 'processPoaOcr' | 'processLoaOcr' | 'processAsylumSeekerVisaZaf' | 'processBankStatementOCR' | 'processBankCheck' | 'processV5CLogbook' | 'processCarInvoice' | 'processCirculationCard' | 'processFinanceSettlement';
|
|
5
|
+
declare const DOCUMENT_CAPTURE_ERROR_CODES: {
|
|
6
|
+
readonly FILE_TOO_LARGE: "FILE_TOO_LARGE";
|
|
7
|
+
readonly UPLOAD_FAILED: "UPLOAD_FAILED";
|
|
8
|
+
};
|
|
9
|
+
declare const DOCUMENT_CAPTURE_FINALIZE_ERROR_CODES: {
|
|
10
|
+
readonly UNEXPECTED_ERROR: "UNEXPECTED_ERROR";
|
|
11
|
+
};
|
|
12
|
+
type DocumentCaptureErrorCode = (typeof DOCUMENT_CAPTURE_ERROR_CODES)[keyof typeof DOCUMENT_CAPTURE_ERROR_CODES];
|
|
13
|
+
type DocumentCaptureFinalizeErrorCode = (typeof DOCUMENT_CAPTURE_FINALIZE_ERROR_CODES)[keyof typeof DOCUMENT_CAPTURE_FINALIZE_ERROR_CODES];
|
|
14
|
+
/**
|
|
15
|
+
* Configuration for the document capture module.
|
|
16
|
+
* Parameterized to support both DOCUMENT_CAPTURE and ADDRESS flows.
|
|
17
|
+
*/
|
|
18
|
+
type DocumentCaptureConfig = {
|
|
19
|
+
/** Processing type for API endpoint routing. @default 'addressStatement' */
|
|
20
|
+
processingType?: DocumentType;
|
|
21
|
+
/**
|
|
22
|
+
* Restricts the capture method, selecting the Figma "3 cases" flow:
|
|
23
|
+
* - `'camera'` → capture only (upload hidden)
|
|
24
|
+
* - `'file'` → upload only (camera hidden)
|
|
25
|
+
* - absent → capture + upload (method selection) — the default
|
|
26
|
+
*/
|
|
27
|
+
captureMode?: 'file' | 'camera';
|
|
28
|
+
/** Allow user to skip this step. @default false */
|
|
29
|
+
allowSkipDocumentCapture?: boolean;
|
|
30
|
+
/** Backend ADDRESS config field. Inverted: `disableSkipPoa: true` → skip disabled. If both are set, `allowSkipDocumentCapture` takes precedence. */
|
|
31
|
+
disableSkipPoa?: boolean;
|
|
32
|
+
/** Tutorial screen title override */
|
|
33
|
+
title?: string;
|
|
34
|
+
/** Tutorial screen text override */
|
|
35
|
+
text?: string;
|
|
36
|
+
/** Title override for the second-page tutorial (multi-page flows). Falls back to `title`. */
|
|
37
|
+
step2Title?: string;
|
|
38
|
+
/** Text override for the second-page tutorial (multi-page flows). Falls back to `text`. */
|
|
39
|
+
step2Text?: string;
|
|
40
|
+
/** Number of capture/upload attempts before auto-advancing. @default 3 */
|
|
41
|
+
captureAttempts?: number;
|
|
42
|
+
/** Send image as base64 instead of raw file. @default false */
|
|
43
|
+
sendBase64?: boolean;
|
|
44
|
+
/** Maximum file size in bytes. @default 10485760 (10MB) */
|
|
45
|
+
maxFileSize?: number;
|
|
46
|
+
/** Restrict uploads to PDF files only (camera capture is unaffected). @default false */
|
|
47
|
+
onlyPdf?: boolean;
|
|
48
|
+
};
|
|
49
|
+
type CapturedDocument = {
|
|
50
|
+
imageBase64: string;
|
|
51
|
+
file: File;
|
|
52
|
+
fileType: string;
|
|
53
|
+
};
|
|
54
|
+
type DocumentUploadResponse = {
|
|
55
|
+
success: boolean;
|
|
56
|
+
status?: 'ADD_NEXT_PAGE' | 'OPTIONAL_PAGE_CAPTURE' | 'SUCCESS';
|
|
57
|
+
};
|
|
58
|
+
type FinalizeDocumentResponse = {
|
|
59
|
+
status?: string;
|
|
60
|
+
success?: boolean;
|
|
61
|
+
};
|
|
62
|
+
type DocumentCaptureResolvedConfig = {
|
|
63
|
+
processingType: DocumentType;
|
|
64
|
+
/** Resolved: restrict to camera capture only (upload hidden). */
|
|
65
|
+
onlyCapture: boolean;
|
|
66
|
+
/** Resolved: restrict to file / photo-library upload only (camera hidden). */
|
|
67
|
+
onlyUpload: boolean;
|
|
68
|
+
allowSkipDocumentCapture: boolean;
|
|
69
|
+
captureAttempts: number;
|
|
70
|
+
sendBase64: boolean;
|
|
71
|
+
maxFileSize: number;
|
|
72
|
+
/** Resolved: restrict uploads to PDF files only. */
|
|
73
|
+
onlyPdf: boolean;
|
|
74
|
+
title: string | undefined;
|
|
75
|
+
text: string | undefined;
|
|
76
|
+
step2Title: string | undefined;
|
|
77
|
+
step2Text: string | undefined;
|
|
78
|
+
};
|
|
79
|
+
type DocumentCaptureNextPageType = 'none' | 'required' | 'optional';
|
|
80
|
+
type DocumentCaptureContext = {
|
|
81
|
+
config: DocumentCaptureResolvedConfig;
|
|
82
|
+
stream: CameraStream | undefined;
|
|
83
|
+
permissionResult: PermissionResult | 'refresh' | undefined;
|
|
84
|
+
capturedDocument: CapturedDocument | undefined;
|
|
85
|
+
captureMethod: 'camera' | 'file' | 'gallery' | undefined;
|
|
86
|
+
/**
|
|
87
|
+
* Whether the capture-method selection surface (bottom sheet on mobile web,
|
|
88
|
+
* modal on desktop, upload-only selector) is open. Modeled in context — not
|
|
89
|
+
* as a discrete state — so the analytics mapper can name the selector screen
|
|
90
|
+
* while the machine stays in `tutorial`.
|
|
91
|
+
*/
|
|
92
|
+
methodSelectionOpen: boolean;
|
|
93
|
+
/** Whether the "common issues" help overlay is open over the camera view. */
|
|
94
|
+
helpOpen: boolean;
|
|
95
|
+
progress: number;
|
|
96
|
+
error: DocumentCaptureErrorCode | DocumentCaptureFinalizeErrorCode | undefined;
|
|
97
|
+
attemptsRemaining: number;
|
|
98
|
+
pageNumber: number;
|
|
99
|
+
nextPageType: DocumentCaptureNextPageType;
|
|
100
|
+
};
|
|
101
|
+
type DocumentCaptureInput = {
|
|
102
|
+
config: DocumentCaptureConfig;
|
|
103
|
+
};
|
|
104
|
+
//#endregion
|
|
105
|
+
export { DocumentCaptureErrorCode as a, DocumentType as c, DocumentCaptureContext as i, DocumentUploadResponse as l, DOCUMENT_CAPTURE_ERROR_CODES as n, DocumentCaptureInput as o, DocumentCaptureConfig as r, DocumentCaptureNextPageType as s, CapturedDocument as t, FinalizeDocumentResponse as u };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { i as FlowModuleConfig } from "./types-BjTTkLmd.js";
|
|
2
|
+
import { t as BaseFaceCaptureConfig } from "./types-DMMk51Ec.js";
|
|
3
|
+
//#region src/modules/authentication/types.d.ts
|
|
4
|
+
type AuthenticationConfig = FlowModuleConfig['AUTHENTICATION'] & BaseFaceCaptureConfig;
|
|
5
|
+
//#endregion
|
|
6
|
+
export { AuthenticationConfig as t };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { a as RegulationTypes } from "./types-BjTTkLmd.js";
|
|
2
|
+
//#region src/modules/mandatory-consent/types.d.ts
|
|
3
|
+
type RegulatoryConsentType = 'MANDATORY' | 'ML';
|
|
4
|
+
type MandatoryConsentConfig = {
|
|
5
|
+
consentType: RegulationTypes;
|
|
6
|
+
language?: string;
|
|
7
|
+
/** 'MANDATORY' (default) for MANDATORY_CONSENT, 'ML' for ML_CONSENT. */
|
|
8
|
+
type?: RegulatoryConsentType;
|
|
9
|
+
};
|
|
10
|
+
type MandatoryConsent = {
|
|
11
|
+
id: string;
|
|
12
|
+
title: string;
|
|
13
|
+
text: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
consentType: string;
|
|
16
|
+
};
|
|
17
|
+
type FetchMandatoryConsentResponse = {
|
|
18
|
+
consents: MandatoryConsent[];
|
|
19
|
+
};
|
|
20
|
+
//#endregion
|
|
21
|
+
export { MandatoryConsent as n, MandatoryConsentConfig as r, FetchMandatoryConsentResponse as t };
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { l as FieldDef } from "./types-Bk_6dmDa.js";
|
|
2
|
+
//#region src/modules/ekyb/types.d.ts
|
|
3
|
+
type UboEntry = {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
surname: string;
|
|
7
|
+
};
|
|
8
|
+
type EkybFormValues = {
|
|
9
|
+
country: string;
|
|
10
|
+
businessName?: string;
|
|
11
|
+
street?: string;
|
|
12
|
+
houseNo?: string;
|
|
13
|
+
addressLine2?: string;
|
|
14
|
+
city?: string;
|
|
15
|
+
state?: string;
|
|
16
|
+
postalCode?: string;
|
|
17
|
+
taxId?: string;
|
|
18
|
+
};
|
|
19
|
+
type EkybConfig = {
|
|
20
|
+
flowId?: string;
|
|
21
|
+
verificationFields?: string[];
|
|
22
|
+
checkBusinessName?: boolean;
|
|
23
|
+
checkAddress?: boolean;
|
|
24
|
+
checkTaxId?: boolean;
|
|
25
|
+
checkUniqueBeneficialOwner?: boolean;
|
|
26
|
+
};
|
|
27
|
+
type EkybValidationRule = {
|
|
28
|
+
type: 'required';
|
|
29
|
+
} | {
|
|
30
|
+
type: 'streetLevelRequired';
|
|
31
|
+
} | {
|
|
32
|
+
type: 'cnpj';
|
|
33
|
+
} | {
|
|
34
|
+
type: 'postalCodeFormat';
|
|
35
|
+
country: string;
|
|
36
|
+
};
|
|
37
|
+
type EkybValidationError = {
|
|
38
|
+
key: string;
|
|
39
|
+
params?: Record<string, string | number>;
|
|
40
|
+
};
|
|
41
|
+
type EkybValidationErrors = Partial<Record<string, EkybValidationError>>;
|
|
42
|
+
type EkybFieldDef = FieldDef & {
|
|
43
|
+
optionalForCountries?: string[];
|
|
44
|
+
validation?: EkybValidationRule[];
|
|
45
|
+
};
|
|
46
|
+
type EkybCountry = 'BR' | 'US' | 'GB' | 'ES' | 'IT' | 'FR' | 'DE' | 'IL' | 'MX' | 'CN' | 'NG' | 'CM' | 'KE';
|
|
47
|
+
//#endregion
|
|
48
|
+
export { EkybValidationError as a, EkybFormValues as i, EkybCountry as n, EkybValidationErrors as o, EkybFieldDef as r, UboEntry as s, EkybConfig as t };
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
//#region src/modules/id-ocr/types.d.ts
|
|
2
|
+
type IdOcrConfig = {
|
|
3
|
+
/** Allows user to edit OCR information @default false */
|
|
4
|
+
editableOcr?: boolean;
|
|
5
|
+
/**
|
|
6
|
+
* When true (from flow/onboarding), after the first ID OCR step completes the
|
|
7
|
+
* machine loads and optionally edits OCR for the second captured ID.
|
|
8
|
+
*/
|
|
9
|
+
secondId?: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Session flow id (injected by orchestrated flow UI). When listed in `CPFFlowIds`
|
|
12
|
+
* (`idOcrConsts`), only the CPF field is shown and validated; it maps to `documentNumber` on OCR.
|
|
13
|
+
*/
|
|
14
|
+
flowId?: string;
|
|
15
|
+
};
|
|
16
|
+
type NameBean = {
|
|
17
|
+
fullName?: string;
|
|
18
|
+
firstName?: string;
|
|
19
|
+
middleName?: string;
|
|
20
|
+
givenName?: string;
|
|
21
|
+
nameSuffix?: string;
|
|
22
|
+
paternalLastName?: string;
|
|
23
|
+
maternalLastName?: string;
|
|
24
|
+
lastNameMrz?: string;
|
|
25
|
+
};
|
|
26
|
+
type AddressBean = {
|
|
27
|
+
street?: string;
|
|
28
|
+
colony?: string;
|
|
29
|
+
postalCode?: string;
|
|
30
|
+
city?: string;
|
|
31
|
+
state?: string;
|
|
32
|
+
label?: string;
|
|
33
|
+
confidentGeolocation?: boolean;
|
|
34
|
+
};
|
|
35
|
+
type AddressStatements = {
|
|
36
|
+
_id: string;
|
|
37
|
+
dateType: string;
|
|
38
|
+
addressStatementTimestamp: number;
|
|
39
|
+
};
|
|
40
|
+
type OcrData = {
|
|
41
|
+
name: NameBean;
|
|
42
|
+
givenName?: string;
|
|
43
|
+
firstName?: string;
|
|
44
|
+
middleName?: string;
|
|
45
|
+
nameSuffix?: string;
|
|
46
|
+
mothersSurname?: string;
|
|
47
|
+
fathersSurname?: string;
|
|
48
|
+
nickName?: string;
|
|
49
|
+
address?: string;
|
|
50
|
+
street?: string;
|
|
51
|
+
colony?: string;
|
|
52
|
+
postalCode?: string;
|
|
53
|
+
city?: string;
|
|
54
|
+
state?: string;
|
|
55
|
+
stateCode?: string;
|
|
56
|
+
countryCode?: string;
|
|
57
|
+
addressFields?: AddressBean;
|
|
58
|
+
fullAddress?: boolean;
|
|
59
|
+
invalidAddress?: boolean;
|
|
60
|
+
checkedAddress?: string;
|
|
61
|
+
checkedAddressBean?: AddressBean;
|
|
62
|
+
exteriorNumber?: string;
|
|
63
|
+
interiorNumber?: string;
|
|
64
|
+
addressFromStatement?: string;
|
|
65
|
+
addressFieldsFromStatement?: AddressBean;
|
|
66
|
+
invalidAddressFromStatement?: boolean;
|
|
67
|
+
addressStatementEmissionDate?: number;
|
|
68
|
+
documentType?: string;
|
|
69
|
+
addressStatementTimestamps?: AddressStatements[];
|
|
70
|
+
poaName?: string;
|
|
71
|
+
typeOfId?: string;
|
|
72
|
+
documentFrontSubtype?: string;
|
|
73
|
+
documentBackSubtype?: string;
|
|
74
|
+
birthDate?: number | string;
|
|
75
|
+
gender?: string;
|
|
76
|
+
claveDeElector?: string;
|
|
77
|
+
curp?: string;
|
|
78
|
+
numeroEmisionCredencial?: string;
|
|
79
|
+
cic?: string;
|
|
80
|
+
ocr?: string;
|
|
81
|
+
documentNumber?: string;
|
|
82
|
+
personalNumber?: string;
|
|
83
|
+
refNumber?: string;
|
|
84
|
+
nue?: string;
|
|
85
|
+
externalId?: string;
|
|
86
|
+
issuedAt?: string;
|
|
87
|
+
expireAt?: string;
|
|
88
|
+
expirationDate?: number;
|
|
89
|
+
issueDate?: number;
|
|
90
|
+
registrationDate?: number;
|
|
91
|
+
issuingCountry?: string;
|
|
92
|
+
issuingState?: string;
|
|
93
|
+
birthPlace?: string;
|
|
94
|
+
issuingAuthority?: string;
|
|
95
|
+
height?: string;
|
|
96
|
+
weight?: string;
|
|
97
|
+
eyeColor?: string;
|
|
98
|
+
hairColor?: string;
|
|
99
|
+
bloodType?: string;
|
|
100
|
+
maritalStatus?: string;
|
|
101
|
+
nationality?: string;
|
|
102
|
+
nationalityMrz?: string;
|
|
103
|
+
classes?: string;
|
|
104
|
+
cond?: string;
|
|
105
|
+
mentions?: string;
|
|
106
|
+
restrictions?: string;
|
|
107
|
+
mrz1?: string;
|
|
108
|
+
mrz2?: string;
|
|
109
|
+
mrz3?: string;
|
|
110
|
+
fullNameMrz?: string;
|
|
111
|
+
documentNumberCheckDigit?: string;
|
|
112
|
+
dateOfBirthCheckDigit?: string;
|
|
113
|
+
expirationDateCheckDigit?: string;
|
|
114
|
+
fathersName?: string;
|
|
115
|
+
mothersName?: string;
|
|
116
|
+
federalRevenueNumber?: string;
|
|
117
|
+
originDocumentId?: string;
|
|
118
|
+
driversLicenseCategory?: string;
|
|
119
|
+
controlNumber?: string;
|
|
120
|
+
renach?: string;
|
|
121
|
+
ocrReliabilityConfidence?: number;
|
|
122
|
+
ocrDataConfidence?: unknown;
|
|
123
|
+
};
|
|
124
|
+
type UpdateOcrDataParams = {
|
|
125
|
+
address?: string;
|
|
126
|
+
documentNumber?: string;
|
|
127
|
+
name?: string;
|
|
128
|
+
firstName?: string;
|
|
129
|
+
lastName?: string;
|
|
130
|
+
paternalLastName?: string;
|
|
131
|
+
maternalLastName?: string;
|
|
132
|
+
personalNumber?: string;
|
|
133
|
+
curp?: string;
|
|
134
|
+
email?: string;
|
|
135
|
+
birthDate?: string;
|
|
136
|
+
expireAt?: string;
|
|
137
|
+
gender?: string;
|
|
138
|
+
issuingCountry?: string;
|
|
139
|
+
};
|
|
140
|
+
type ValidationRule = {
|
|
141
|
+
type: 'required';
|
|
142
|
+
} | {
|
|
143
|
+
type: 'minAge';
|
|
144
|
+
years: number;
|
|
145
|
+
} | {
|
|
146
|
+
type: 'cpf';
|
|
147
|
+
};
|
|
148
|
+
type OcrFieldConfig = {
|
|
149
|
+
key: keyof UpdateOcrDataParams;
|
|
150
|
+
labelKey: string;
|
|
151
|
+
type: 'text' | 'date' | 'radio';
|
|
152
|
+
options?: {
|
|
153
|
+
label: string;
|
|
154
|
+
value: string;
|
|
155
|
+
}[];
|
|
156
|
+
validation?: ValidationRule[];
|
|
157
|
+
required: boolean;
|
|
158
|
+
};
|
|
159
|
+
type UpdateOcrResponse = {
|
|
160
|
+
success: boolean;
|
|
161
|
+
};
|
|
162
|
+
//#endregion
|
|
163
|
+
export { UpdateOcrResponse as a, UpdateOcrDataParams as i, OcrData as n, ValidationRule as o, OcrFieldConfig as r, IdOcrConfig as t };
|