@trustchex/react-native-sdk 1.484.0 → 1.485.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.
@@ -442,10 +442,15 @@ const ResultScreen = () => {
442
442
  }, [appContext.identificationInfo, appContext.isDemoSession, appContext.isTestVideoSession, submit]);
443
443
  useEffect(() => {
444
444
  if (progress === 100 && !appContext.isDemoSession && !appContext.isTestVideoSession) {
445
- setTimeout(() => {
445
+ if (appContext.skipSuccessScreen) {
446
446
  appContext.onCompleted?.();
447
447
  navigationManagerRef.current?.reset();
448
- }, 3000);
448
+ } else {
449
+ setTimeout(() => {
450
+ appContext.onCompleted?.();
451
+ navigationManagerRef.current?.reset();
452
+ }, 3000);
453
+ }
449
454
  }
450
455
  }, [appContext, progress]);
451
456
  return /*#__PURE__*/_jsx(SafeAreaView, {
@@ -534,30 +539,18 @@ const ResultScreen = () => {
534
539
  children: [/*#__PURE__*/_jsxs(Text, {
535
540
  style: styles.mrzInfoLabel,
536
541
  children: [t('eidScannerScreen.name'), ":"]
537
- }), /*#__PURE__*/_jsxs(View, {
538
- style: styles.mrzInfoValueGroup,
539
- children: [/*#__PURE__*/_jsx(Text, {
540
- style: styles.mrzInfoText,
541
- children: appContext.lastDocumentRead?.name.source === 'dg11' ? appContext.lastDocumentRead.name.displayFirst : appContext.identificationInfo.scannedDocument.mrzFields?.firstName
542
- }), appContext.lastDocumentRead?.name.source === 'dg11' && /*#__PURE__*/_jsx(Text, {
543
- style: styles.mrzInfoSubText,
544
- children: appContext.identificationInfo.scannedDocument.mrzFields?.firstName
545
- })]
542
+ }), /*#__PURE__*/_jsx(Text, {
543
+ style: styles.mrzInfoText,
544
+ children: appContext.lastDocumentRead?.name.displayFirst ?? appContext.identificationInfo.scannedDocument.mrzFields?.firstName
546
545
  })]
547
546
  }), /*#__PURE__*/_jsxs(View, {
548
547
  style: styles.mrzInfoItem,
549
548
  children: [/*#__PURE__*/_jsxs(Text, {
550
549
  style: styles.mrzInfoLabel,
551
550
  children: [t('eidScannerScreen.surname'), ":"]
552
- }), /*#__PURE__*/_jsxs(View, {
553
- style: styles.mrzInfoValueGroup,
554
- children: [/*#__PURE__*/_jsx(Text, {
555
- style: styles.mrzInfoText,
556
- children: appContext.lastDocumentRead?.name.source === 'dg11' ? appContext.lastDocumentRead.name.displayLast : appContext.identificationInfo.scannedDocument.mrzFields?.lastName
557
- }), appContext.lastDocumentRead?.name.source === 'dg11' && /*#__PURE__*/_jsx(Text, {
558
- style: styles.mrzInfoSubText,
559
- children: appContext.identificationInfo.scannedDocument.mrzFields?.lastName
560
- })]
551
+ }), /*#__PURE__*/_jsx(Text, {
552
+ style: styles.mrzInfoText,
553
+ children: appContext.lastDocumentRead?.name.displayLast ?? appContext.identificationInfo.scannedDocument.mrzFields?.lastName
561
554
  })]
562
555
  }), /*#__PURE__*/_jsxs(View, {
563
556
  style: styles.mrzInfoItem,
@@ -195,6 +195,9 @@ const EIDScanner = ({
195
195
  };
196
196
  appContext.setLastDocumentRead?.(documentReadResult);
197
197
  appContext.onDocumentRead?.(documentReadResult);
198
+ if (appContext.skipNfcResultScreen && onScanSuccess) {
199
+ onScanSuccess(getFieldsFromMRZ(passportData.mrz), passportData.faceImage, passportData.mimeType);
200
+ }
198
201
  }
199
202
  await trackEIDScanComplete(docType, scanDuration, currentAttempt).catch(() => {});
200
203
  }
@@ -29,6 +29,8 @@ export default /*#__PURE__*/createContext({
29
29
  onError: undefined,
30
30
  onDocumentRead: undefined,
31
31
  setLastDocumentRead: undefined,
32
+ skipNfcResultScreen: false,
33
+ skipSuccessScreen: false,
32
34
  setSessionId: undefined,
33
35
  setBaseUrl: undefined
34
36
  });
@@ -47,7 +47,9 @@ const Trustchex = ({
47
47
  onDocumentRead,
48
48
  enableAnalytics = true,
49
49
  debug = false,
50
- logLevel = 'trace'
50
+ logLevel = 'trace',
51
+ skipNfcResultScreen = false,
52
+ skipSuccessScreen = false
51
53
  }) => {
52
54
  const [baseUrl, setBaseUrl] = useState(null);
53
55
  const [sessionId, setSessionId] = useState(null);
@@ -119,7 +121,9 @@ const Trustchex = ({
119
121
  setLastDocumentRead,
120
122
  setSessionId,
121
123
  setBaseUrl,
122
- setIsDemoSession: setIsDemoSessionAndPersist
124
+ setIsDemoSession: setIsDemoSessionAndPersist,
125
+ skipNfcResultScreen,
126
+ skipSuccessScreen
123
127
  };
124
128
 
125
129
  // Update state-derived identificationInfo fields without replacing
@@ -130,7 +134,7 @@ const Trustchex = ({
130
134
  value.identificationInfo.locale = propLocale || i18n.language;
131
135
  contextRef.current = value;
132
136
  return value;
133
- }, [baseUrl, locale, branding, sessionId, propLocale, onCompleted, onError, isDemoSession, lastDocumentRead, setIsDemoSessionAndPersist]);
137
+ }, [baseUrl, locale, branding, sessionId, propLocale, onCompleted, onError, isDemoSession, lastDocumentRead, setIsDemoSessionAndPersist, skipNfcResultScreen, skipSuccessScreen]);
134
138
 
135
139
  // Initialize analytics when SDK mounts with valid session
136
140
  useEffect(() => {
@@ -2,4 +2,4 @@
2
2
 
3
3
  // This file is auto-generated. Do not edit manually.
4
4
  // Version is synced from package.json during build.
5
- export const SDK_VERSION = '1.484.0';
5
+ export const SDK_VERSION = '1.485.0';
@@ -1 +1 @@
1
- {"version":3,"file":"ResultScreen.d.ts","sourceRoot":"","sources":["../../../../../src/Screens/Static/ResultScreen.tsx"],"names":[],"mappings":"AA8EA,QAAA,MAAM,YAAY,+CAoiCjB,CAAC;AA+IF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"ResultScreen.d.ts","sourceRoot":"","sources":["../../../../../src/Screens/Static/ResultScreen.tsx"],"names":[],"mappings":"AA8EA,QAAA,MAAM,YAAY,+CAyhCjB,CAAC;AA+IF,eAAe,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"EIDScanner.d.ts","sourceRoot":"","sources":["../../../../../src/Shared/Components/EIDScanner.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAgBpD,UAAU,eAAe;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,CACd,OAAO,EAAE,SAAS,EAClB,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,MAAM,KACtB,IAAI,CAAC;IACV,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;CAC/C;AAED,QAAA,MAAM,UAAU,GAAI,6FAOjB,eAAe,4CAkrBjB,CAAC;AA4NF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"EIDScanner.d.ts","sourceRoot":"","sources":["../../../../../src/Shared/Components/EIDScanner.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAgBpD,UAAU,eAAe;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,CACd,OAAO,EAAE,SAAS,EAClB,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,MAAM,KACtB,IAAI,CAAC;IACV,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;CAC/C;AAED,QAAA,MAAM,UAAU,GAAI,6FAOjB,eAAe,4CA0rBjB,CAAC;AA4NF,eAAe,UAAU,CAAC"}
@@ -21,6 +21,8 @@ export type AppContextType = {
21
21
  onError?: (error: string) => void;
22
22
  onDocumentRead?: (result: DocumentReadResult) => void;
23
23
  setLastDocumentRead?: (result: DocumentReadResult) => void;
24
+ skipNfcResultScreen?: boolean;
25
+ skipSuccessScreen?: boolean;
24
26
  setSessionId?: (id: string) => void;
25
27
  setBaseUrl?: (url: string) => void;
26
28
  setIsDemoSession?: (isDemoSession: boolean) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"AppContext.d.ts","sourceRoot":"","sources":["../../../../../src/Shared/Contexts/AppContext.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kBAAkB,EAClB,YAAY,EACb,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEtE,MAAM,MAAM,cAAc,GAAG;IAC3B,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,mBAAmB,CAAC,EAAE,YAAY,CAAC;IACnC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,kBAAkB,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACtD,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC3D,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,gBAAgB,CAAC,EAAE,CAAC,aAAa,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD,CAAC;;AAEF,wBA8BG"}
1
+ {"version":3,"file":"AppContext.d.ts","sourceRoot":"","sources":["../../../../../src/Shared/Contexts/AppContext.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kBAAkB,EAClB,YAAY,EACb,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEtE,MAAM,MAAM,cAAc,GAAG;IAC3B,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,mBAAmB,CAAC,EAAE,YAAY,CAAC;IACnC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,kBAAkB,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACtD,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC3D,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,gBAAgB,CAAC,EAAE,CAAC,aAAa,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD,CAAC;;AAEF,wBAgCG"}
@@ -25,6 +25,10 @@ interface TrustchexProps {
25
25
  enableAnalytics?: boolean;
26
26
  debug?: boolean;
27
27
  logLevel?: 'trace' | 'debug' | 'info' | 'warn' | 'error' | 'silent';
28
+ /** Skip the NFC document review screen and proceed automatically after a successful NFC scan. */
29
+ skipNfcResultScreen?: boolean;
30
+ /** Skip the final success screen and call onCompleted immediately when the process finishes. */
31
+ skipSuccessScreen?: boolean;
28
32
  }
29
33
  declare const Trustchex: React.FC<TrustchexProps>;
30
34
  export default Trustchex;
@@ -1 +1 @@
1
- {"version":3,"file":"Trustchex.d.ts","sourceRoot":"","sources":["../../../src/Trustchex.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AAKf,OAAO,gCAAgC,CAAC;AAmBxC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAc5E,UAAU,iBAAiB;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACtD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;CACrE;AASD,QAAA,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CA8PvC,CAAC;AAWF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"Trustchex.d.ts","sourceRoot":"","sources":["../../../src/Trustchex.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AAKf,OAAO,gCAAgC,CAAC;AAmBxC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAc5E,UAAU,iBAAiB;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACtD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;IACpE,iGAAiG;IACjG,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,gGAAgG;IAChG,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AASD,QAAA,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAoQvC,CAAC;AAWF,eAAe,SAAS,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const SDK_VERSION = "1.484.0";
1
+ export declare const SDK_VERSION = "1.485.0";
2
2
  //# sourceMappingURL=version.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trustchex/react-native-sdk",
3
- "version": "1.484.0",
3
+ "version": "1.485.0",
4
4
  "description": "Trustchex mobile app react native SDK for android or ios devices",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -686,10 +686,15 @@ const ResultScreen = () => {
686
686
  !appContext.isDemoSession &&
687
687
  !appContext.isTestVideoSession
688
688
  ) {
689
- setTimeout(() => {
689
+ if (appContext.skipSuccessScreen) {
690
690
  appContext.onCompleted?.();
691
691
  navigationManagerRef.current?.reset();
692
- }, 3000);
692
+ } else {
693
+ setTimeout(() => {
694
+ appContext.onCompleted?.();
695
+ navigationManagerRef.current?.reset();
696
+ }, 3000);
697
+ }
693
698
  }
694
699
  }, [appContext, progress]);
695
700
 
@@ -792,35 +797,19 @@ const ResultScreen = () => {
792
797
  <Text style={styles.mrzInfoLabel}>
793
798
  {t('eidScannerScreen.name')}:
794
799
  </Text>
795
- <View style={styles.mrzInfoValueGroup}>
796
- <Text style={styles.mrzInfoText}>
797
- {appContext.lastDocumentRead?.name.source === 'dg11'
798
- ? appContext.lastDocumentRead.name.displayFirst
799
- : appContext.identificationInfo.scannedDocument.mrzFields?.firstName}
800
- </Text>
801
- {appContext.lastDocumentRead?.name.source === 'dg11' && (
802
- <Text style={styles.mrzInfoSubText}>
803
- {appContext.identificationInfo.scannedDocument.mrzFields?.firstName}
804
- </Text>
805
- )}
806
- </View>
800
+ <Text style={styles.mrzInfoText}>
801
+ {appContext.lastDocumentRead?.name.displayFirst
802
+ ?? appContext.identificationInfo.scannedDocument.mrzFields?.firstName}
803
+ </Text>
807
804
  </View>
808
805
  <View style={styles.mrzInfoItem}>
809
806
  <Text style={styles.mrzInfoLabel}>
810
807
  {t('eidScannerScreen.surname')}:
811
808
  </Text>
812
- <View style={styles.mrzInfoValueGroup}>
813
- <Text style={styles.mrzInfoText}>
814
- {appContext.lastDocumentRead?.name.source === 'dg11'
815
- ? appContext.lastDocumentRead.name.displayLast
816
- : appContext.identificationInfo.scannedDocument.mrzFields?.lastName}
817
- </Text>
818
- {appContext.lastDocumentRead?.name.source === 'dg11' && (
819
- <Text style={styles.mrzInfoSubText}>
820
- {appContext.identificationInfo.scannedDocument.mrzFields?.lastName}
821
- </Text>
822
- )}
823
- </View>
809
+ <Text style={styles.mrzInfoText}>
810
+ {appContext.lastDocumentRead?.name.displayLast
811
+ ?? appContext.identificationInfo.scannedDocument.mrzFields?.lastName}
812
+ </Text>
824
813
  </View>
825
814
  <View style={styles.mrzInfoItem}>
826
815
  <Text style={styles.mrzInfoLabel}>
@@ -271,6 +271,14 @@ const EIDScanner = ({
271
271
  };
272
272
  appContext.setLastDocumentRead?.(documentReadResult);
273
273
  appContext.onDocumentRead?.(documentReadResult);
274
+
275
+ if (appContext.skipNfcResultScreen && onScanSuccess) {
276
+ onScanSuccess(
277
+ getFieldsFromMRZ(passportData.mrz),
278
+ passportData.faceImage,
279
+ passportData.mimeType
280
+ );
281
+ }
274
282
  }
275
283
  await trackEIDScanComplete(
276
284
  docType,
@@ -26,6 +26,8 @@ export type AppContextType = {
26
26
  onError?: (error: string) => void;
27
27
  onDocumentRead?: (result: DocumentReadResult) => void;
28
28
  setLastDocumentRead?: (result: DocumentReadResult) => void;
29
+ skipNfcResultScreen?: boolean;
30
+ skipSuccessScreen?: boolean;
29
31
  setSessionId?: (id: string) => void;
30
32
  setBaseUrl?: (url: string) => void;
31
33
  setIsDemoSession?: (isDemoSession: boolean) => void;
@@ -59,6 +61,8 @@ export default createContext<AppContextType>({
59
61
  onError: undefined,
60
62
  onDocumentRead: undefined,
61
63
  setLastDocumentRead: undefined,
64
+ skipNfcResultScreen: false,
65
+ skipSuccessScreen: false,
62
66
  setSessionId: undefined,
63
67
  setBaseUrl: undefined,
64
68
  });
package/src/Trustchex.tsx CHANGED
@@ -67,6 +67,10 @@ interface TrustchexProps {
67
67
  enableAnalytics?: boolean;
68
68
  debug?: boolean;
69
69
  logLevel?: 'trace' | 'debug' | 'info' | 'warn' | 'error' | 'silent';
70
+ /** Skip the NFC document review screen and proceed automatically after a successful NFC scan. */
71
+ skipNfcResultScreen?: boolean;
72
+ /** Skip the final success screen and call onCompleted immediately when the process finishes. */
73
+ skipSuccessScreen?: boolean;
70
74
  }
71
75
 
72
76
  const DEFAULT_BRANDING: TrustchexBranding = {
@@ -87,6 +91,8 @@ const Trustchex: React.FC<TrustchexProps> = ({
87
91
  enableAnalytics = true,
88
92
  debug = false,
89
93
  logLevel = 'trace',
94
+ skipNfcResultScreen = false,
95
+ skipSuccessScreen = false,
90
96
  }) => {
91
97
  const [baseUrl, setBaseUrl] = useState<string | null>(null);
92
98
  const [sessionId, setSessionId] = useState<string | null>(null);
@@ -168,6 +174,8 @@ const Trustchex: React.FC<TrustchexProps> = ({
168
174
  setSessionId,
169
175
  setBaseUrl,
170
176
  setIsDemoSession: setIsDemoSessionAndPersist,
177
+ skipNfcResultScreen,
178
+ skipSuccessScreen,
171
179
  };
172
180
 
173
181
  // Update state-derived identificationInfo fields without replacing
@@ -191,6 +199,8 @@ const Trustchex: React.FC<TrustchexProps> = ({
191
199
  isDemoSession,
192
200
  lastDocumentRead,
193
201
  setIsDemoSessionAndPersist,
202
+ skipNfcResultScreen,
203
+ skipSuccessScreen,
194
204
  ]);
195
205
 
196
206
  // Initialize analytics when SDK mounts with valid session
package/src/version.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  // This file is auto-generated. Do not edit manually.
2
2
  // Version is synced from package.json during build.
3
- export const SDK_VERSION = '1.484.0';
3
+ export const SDK_VERSION = '1.485.0';