@smile_identity/react-native 10.2.2 → 10.2.4-beta.1
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/README.md +4 -28
- package/android/build.gradle +4 -1
- package/android/gradle.properties +3 -3
- package/android/src/main/java/com/smileidentity/react/Mapper.kt +21 -5
- package/android/src/main/java/com/smileidentity/react/SmileIdModule.kt +37 -39
- package/android/src/main/java/com/smileidentity/react/SmileIdPackage.kt +4 -0
- package/android/src/main/java/com/smileidentity/react/fragments/SmileCaptureFragment.kt +56 -0
- package/android/src/main/java/com/smileidentity/react/results/BiometricKycCaptureResult.kt +9 -0
- package/android/src/main/java/com/smileidentity/react/results/SmartSelfieCaptureResult.kt +3 -2
- package/android/src/main/java/com/smileidentity/react/utils/BiometricKycCaptureResultAdapter.kt +69 -0
- package/android/src/main/java/com/smileidentity/react/utils/ReactUtils.kt +16 -0
- package/android/src/main/java/com/smileidentity/react/utils/SelfieCaptureResultAdapter.kt +0 -2
- package/android/src/main/java/com/smileidentity/react/viewmanagers/BaseSmileIDViewManager.kt +130 -0
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDBiometricKYCViewManager.kt +22 -46
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDConsentViewManager.kt +27 -52
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDDocumentCaptureViewManager.kt +15 -40
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDDocumentVerificationViewManager.kt +23 -49
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDEnhancedDocumentVerificationViewManager.kt +28 -47
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDSmartSelfieAuthenticationEnhancedViewManager.kt +39 -0
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDSmartSelfieAuthenticationViewManager.kt +16 -40
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDSmartSelfieCaptureViewManager.kt +15 -38
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDSmartSelfieEnrollmentEnhancedViewManager.kt +39 -0
- package/android/src/main/java/com/smileidentity/react/viewmanagers/SmileIDSmartSelfieEnrollmentViewManager.kt +15 -44
- package/android/src/main/java/com/smileidentity/react/views/SmileIDBiometricKYCView.kt +14 -7
- package/android/src/main/java/com/smileidentity/react/views/SmileIDDocumentCaptureView.kt +9 -0
- package/android/src/main/java/com/smileidentity/react/views/SmileIDDocumentVerificationView.kt +2 -4
- package/android/src/main/java/com/smileidentity/react/views/SmileIDEnhancedDocumentVerificationView.kt +11 -5
- package/android/src/main/java/com/smileidentity/react/views/SmileIDSmartSelfieAuthenticationEnhancedView.kt +61 -0
- package/android/src/main/java/com/smileidentity/react/views/SmileIDSmartSelfieAuthenticationView.kt +0 -2
- package/android/src/main/java/com/smileidentity/react/views/SmileIDSmartSelfieCaptureView.kt +38 -25
- package/android/src/main/java/com/smileidentity/react/views/SmileIDSmartSelfieEnrollmentEnhancedView.kt +68 -0
- package/android/src/main/java/com/smileidentity/react/views/SmileIDSmartSelfieEnrollmentView.kt +35 -30
- package/android/src/main/java/com/smileidentity/react/views/SmileIDView.kt +11 -10
- package/android/src/main/res/values/colors.xml +14 -0
- package/android/src/main/res/values/strings.xml +91 -0
- package/android/src/oldarch/SmileIdSpec.kt +3 -12
- package/ios/RNSmileID.mm +6 -3
- package/ios/RNSmileID.swift +470 -477
- package/ios/View/SmileIDSmartSelfieAuthEnhancedView.swift +44 -0
- package/ios/View/SmileIDSmartSelfieAuthView.swift +2 -3
- package/ios/View/SmileIDSmartSelfieCaptureView.swift +2 -2
- package/ios/View/SmileIDSmartSelfieEnrollmentEnhancedView.swift +44 -0
- package/ios/ViewManagers/SmileIDBaseViewManager.swift +24 -20
- package/ios/ViewManagers/SmileIDBiometricKYCViewManager.m +4 -1
- package/ios/ViewManagers/SmileIDBiometricKYCViewManager.swift +24 -24
- package/ios/ViewManagers/SmileIDConsentViewManager.m +4 -1
- package/ios/ViewManagers/SmileIDConsentViewManager.swift +1 -1
- package/ios/ViewManagers/SmileIDDocumentCaptureViewManager.m +4 -1
- package/ios/ViewManagers/SmileIDDocumentCaptureViewManager.swift +1 -1
- package/ios/ViewManagers/SmileIDDocumentVerificationViewManager.m +4 -1
- package/ios/ViewManagers/SmileIDDocumentVerificationViewManager.swift +1 -1
- package/ios/ViewManagers/SmileIDEnhancedDocumentVerificationViewManager.m +4 -1
- package/ios/ViewManagers/SmileIDEnhancedDocumentVerificationViewManager.swift +1 -1
- package/ios/ViewManagers/SmileIDSmartSelfieAuthenticationEnhancedViewManager.m +10 -0
- package/ios/ViewManagers/SmileIDSmartSelfieAuthenticationEnhancedViewManager.swift +25 -0
- package/ios/ViewManagers/SmileIDSmartSelfieAuthenticationViewManager.m +4 -1
- package/ios/ViewManagers/SmileIDSmartSelfieAuthenticationViewManager.swift +1 -1
- package/ios/ViewManagers/SmileIDSmartSelfieCaptureViewManager.m +4 -1
- package/ios/ViewManagers/SmileIDSmartSelfieCaptureViewManager.swift +1 -1
- package/ios/ViewManagers/SmileIDSmartSelfieEnrollmentEnhancedViewManager.m +10 -0
- package/ios/ViewManagers/SmileIDSmartSelfieEnrollmentEnhancedViewManager.swift +25 -0
- package/ios/ViewManagers/SmileIDSmartSelfieEnrollmentViewManager.m +4 -1
- package/ios/ViewManagers/SmileIDSmartSelfieEnrollmentViewManager.swift +1 -1
- package/lib/commonjs/NativeSmileId.js.map +1 -1
- package/lib/commonjs/SmileIDBiometricKYCView.js +18 -29
- package/lib/commonjs/SmileIDBiometricKYCView.js.map +1 -1
- package/lib/commonjs/SmileIDConsentView.js +9 -29
- package/lib/commonjs/SmileIDConsentView.js.map +1 -1
- package/lib/commonjs/SmileIDDocumentCaptureView.js +9 -29
- package/lib/commonjs/SmileIDDocumentCaptureView.js.map +1 -1
- package/lib/commonjs/SmileIDDocumentVerificationView.js +9 -29
- package/lib/commonjs/SmileIDDocumentVerificationView.js.map +1 -1
- package/lib/commonjs/SmileIDEnhancedDocumentVerificationView.js +17 -28
- package/lib/commonjs/SmileIDEnhancedDocumentVerificationView.js.map +1 -1
- package/lib/commonjs/SmileIDSmartSelfieAuthenticationEnhancedView.js +20 -0
- package/lib/commonjs/SmileIDSmartSelfieAuthenticationEnhancedView.js.map +1 -0
- package/lib/commonjs/SmileIDSmartSelfieAuthenticationView.js +9 -29
- package/lib/commonjs/SmileIDSmartSelfieAuthenticationView.js.map +1 -1
- package/lib/commonjs/SmileIDSmartSelfieCaptureView.js +9 -29
- package/lib/commonjs/SmileIDSmartSelfieCaptureView.js.map +1 -1
- package/lib/commonjs/SmileIDSmartSelfieEnrollmentEnhancedView.js +20 -0
- package/lib/commonjs/SmileIDSmartSelfieEnrollmentEnhancedView.js.map +1 -0
- package/lib/commonjs/SmileIDSmartSelfieEnrollmentView.js +9 -29
- package/lib/commonjs/SmileIDSmartSelfieEnrollmentView.js.map +1 -1
- package/lib/commonjs/index.js +26 -2
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/types.js.map +1 -1
- package/lib/commonjs/useSmileIDView.js +55 -0
- package/lib/commonjs/useSmileIDView.js.map +1 -0
- package/lib/module/NativeSmileId.js.map +1 -1
- package/lib/module/SmileIDBiometricKYCView.js +18 -26
- package/lib/module/SmileIDBiometricKYCView.js.map +1 -1
- package/lib/module/SmileIDConsentView.js +9 -26
- package/lib/module/SmileIDConsentView.js.map +1 -1
- package/lib/module/SmileIDDocumentCaptureView.js +9 -26
- package/lib/module/SmileIDDocumentCaptureView.js.map +1 -1
- package/lib/module/SmileIDDocumentVerificationView.js +9 -26
- package/lib/module/SmileIDDocumentVerificationView.js.map +1 -1
- package/lib/module/SmileIDEnhancedDocumentVerificationView.js +17 -25
- package/lib/module/SmileIDEnhancedDocumentVerificationView.js.map +1 -1
- package/lib/module/SmileIDSmartSelfieAuthenticationEnhancedView.js +13 -0
- package/lib/module/SmileIDSmartSelfieAuthenticationEnhancedView.js.map +1 -0
- package/lib/module/SmileIDSmartSelfieAuthenticationView.js +9 -26
- package/lib/module/SmileIDSmartSelfieAuthenticationView.js.map +1 -1
- package/lib/module/SmileIDSmartSelfieCaptureView.js +9 -26
- package/lib/module/SmileIDSmartSelfieCaptureView.js.map +1 -1
- package/lib/module/SmileIDSmartSelfieEnrollmentEnhancedView.js +13 -0
- package/lib/module/SmileIDSmartSelfieEnrollmentEnhancedView.js.map +1 -0
- package/lib/module/SmileIDSmartSelfieEnrollmentView.js +9 -26
- package/lib/module/SmileIDSmartSelfieEnrollmentView.js.map +1 -1
- package/lib/module/index.js +10 -4
- package/lib/module/index.js.map +1 -1
- package/lib/module/types.js.map +1 -1
- package/lib/module/useSmileIDView.js +48 -0
- package/lib/module/useSmileIDView.js.map +1 -0
- package/lib/typescript/NativeSmileId.d.ts +6 -4
- package/lib/typescript/NativeSmileId.d.ts.map +1 -1
- package/lib/typescript/SmileIDBiometricKYCView.d.ts +3 -6
- package/lib/typescript/SmileIDBiometricKYCView.d.ts.map +1 -1
- package/lib/typescript/SmileIDConsentView.d.ts +3 -6
- package/lib/typescript/SmileIDConsentView.d.ts.map +1 -1
- package/lib/typescript/SmileIDDocumentCaptureView.d.ts +4 -7
- package/lib/typescript/SmileIDDocumentCaptureView.d.ts.map +1 -1
- package/lib/typescript/SmileIDDocumentVerificationView.d.ts +3 -6
- package/lib/typescript/SmileIDDocumentVerificationView.d.ts.map +1 -1
- package/lib/typescript/SmileIDEnhancedDocumentVerificationView.d.ts +3 -6
- package/lib/typescript/SmileIDEnhancedDocumentVerificationView.d.ts.map +1 -1
- package/lib/typescript/SmileIDSmartSelfieAuthenticationEnhancedView.d.ts +5 -0
- package/lib/typescript/SmileIDSmartSelfieAuthenticationEnhancedView.d.ts.map +1 -0
- package/lib/typescript/SmileIDSmartSelfieAuthenticationView.d.ts +3 -6
- package/lib/typescript/SmileIDSmartSelfieAuthenticationView.d.ts.map +1 -1
- package/lib/typescript/SmileIDSmartSelfieCaptureView.d.ts +3 -6
- package/lib/typescript/SmileIDSmartSelfieCaptureView.d.ts.map +1 -1
- package/lib/typescript/SmileIDSmartSelfieEnrollmentEnhancedView.d.ts +5 -0
- package/lib/typescript/SmileIDSmartSelfieEnrollmentEnhancedView.d.ts.map +1 -0
- package/lib/typescript/SmileIDSmartSelfieEnrollmentView.d.ts +3 -6
- package/lib/typescript/SmileIDSmartSelfieEnrollmentView.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +12 -6
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/types.d.ts +2 -0
- package/lib/typescript/types.d.ts.map +1 -1
- package/lib/typescript/useSmileIDView.d.ts +12 -0
- package/lib/typescript/useSmileIDView.d.ts.map +1 -0
- package/package.json +1 -1
- package/react-native-smile-id.podspec +1 -1
- package/src/NativeSmileId.ts +10 -14
- package/src/SmileIDBiometricKYCView.tsx +14 -30
- package/src/SmileIDConsentView.tsx +7 -30
- package/src/SmileIDDocumentCaptureView.tsx +12 -36
- package/src/SmileIDDocumentVerificationView.tsx +9 -36
- package/src/SmileIDEnhancedDocumentVerificationView.tsx +23 -35
- package/src/SmileIDSmartSelfieAuthenticationEnhancedView.tsx +28 -0
- package/src/SmileIDSmartSelfieAuthenticationView.tsx +10 -37
- package/src/SmileIDSmartSelfieCaptureView.tsx +9 -33
- package/src/SmileIDSmartSelfieEnrollmentEnhancedView.tsx +25 -0
- package/src/SmileIDSmartSelfieEnrollmentView.tsx +10 -37
- package/src/index.tsx +21 -2
- package/src/types.ts +8 -0
- package/src/useSmileIDView.tsx +80 -0
|
@@ -1,47 +1,20 @@
|
|
|
1
|
-
import React
|
|
2
|
-
import type
|
|
3
|
-
import { UIManager, findNodeHandle, Platform } from 'react-native';
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type HostComponent } from 'react-native';
|
|
4
3
|
import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
|
|
5
4
|
import type { SmartSelfieEnrollmentRequest } from './index';
|
|
5
|
+
import { useSmileIDView } from './useSmileIDView';
|
|
6
6
|
|
|
7
7
|
const SmileIDSmartSelfieEnrollmentComponent =
|
|
8
8
|
codegenNativeComponent<SmartSelfieEnrollmentRequest>(
|
|
9
9
|
'SmileIDSmartSelfieEnrollmentView'
|
|
10
10
|
) as HostComponent<SmartSelfieEnrollmentRequest>;
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
const SmileIDSmartSelfieEnrollmentView: React.FC<
|
|
13
|
+
SmartSelfieEnrollmentRequest
|
|
14
|
+
> = (props) => {
|
|
15
|
+
const viewRef = useSmileIDView('SmileIDSmartSelfieEnrollmentView', props);
|
|
14
16
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
...this.props,
|
|
18
|
-
};
|
|
17
|
+
return <SmileIDSmartSelfieEnrollmentComponent ref={viewRef} {...props} />;
|
|
18
|
+
};
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
const commandId = UIManager.getViewManagerConfig(
|
|
22
|
-
'SmileIDSmartSelfieEnrollmentView'
|
|
23
|
-
).Commands.setParams;
|
|
24
|
-
|
|
25
|
-
// Ensure the commandId is defined and is a number
|
|
26
|
-
if (typeof commandId !== 'undefined') {
|
|
27
|
-
UIManager.dispatchViewManagerCommand(
|
|
28
|
-
findNodeHandle(this.viewRef.current),
|
|
29
|
-
Platform.OS === 'android' ? commandId.toString() : commandId,
|
|
30
|
-
[parameters]
|
|
31
|
-
);
|
|
32
|
-
} else {
|
|
33
|
-
throw new Error(
|
|
34
|
-
'Command "setParams" is not defined for MyNativeComponent'
|
|
35
|
-
);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
render() {
|
|
40
|
-
return (
|
|
41
|
-
<SmileIDSmartSelfieEnrollmentComponent
|
|
42
|
-
ref={this.viewRef}
|
|
43
|
-
{...this.props}
|
|
44
|
-
/>
|
|
45
|
-
);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
20
|
+
export default SmileIDSmartSelfieEnrollmentView;
|
package/src/index.tsx
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { NativeModules, Platform } from 'react-native';
|
|
2
2
|
import SmileIDSmartSelfieEnrollmentView from './SmileIDSmartSelfieEnrollmentView';
|
|
3
3
|
import SmileIDSmartSelfieAuthenticationView from './SmileIDSmartSelfieAuthenticationView';
|
|
4
|
+
import SmileIDSmartSelfieEnrollmentEnhancedView from './SmileIDSmartSelfieEnrollmentEnhancedView';
|
|
5
|
+
import SmileIDSmartSelfieAuthenticationEnhancedView from './SmileIDSmartSelfieAuthenticationEnhancedView';
|
|
4
6
|
import SmileIDDocumentVerificationView from './SmileIDDocumentVerificationView';
|
|
5
7
|
import SmileIDBiometricKYCView from './SmileIDBiometricKYCView';
|
|
6
8
|
import SmileIDEnhancedDocumentVerificationView from './SmileIDEnhancedDocumentVerificationView';
|
|
@@ -27,6 +29,7 @@ import {
|
|
|
27
29
|
ValidDocumentsResponse,
|
|
28
30
|
JobType,
|
|
29
31
|
IdInfo,
|
|
32
|
+
Config,
|
|
30
33
|
} from './types';
|
|
31
34
|
import type {
|
|
32
35
|
DocumentVerificationRequest,
|
|
@@ -35,6 +38,8 @@ import type {
|
|
|
35
38
|
BiometricKYCRequest,
|
|
36
39
|
SmileIDViewProps,
|
|
37
40
|
ConsentRequest,
|
|
41
|
+
SmartSelfieEnrollmentEnhancedRequest,
|
|
42
|
+
SmartSelfieAuthenticationEnhancedRequest,
|
|
38
43
|
} from './types';
|
|
39
44
|
import type { Spec } from './NativeSmileId';
|
|
40
45
|
|
|
@@ -64,9 +69,18 @@ const _SmileID: Spec = SmileIdModule
|
|
|
64
69
|
|
|
65
70
|
const SmileID = {
|
|
66
71
|
/**
|
|
67
|
-
*
|
|
72
|
+
* Initialize SmileID SDK with configuration
|
|
73
|
+
* @param useSandBox - Configuration object for the SDK
|
|
74
|
+
* @param config - Configuration object for the SDK
|
|
75
|
+
* @param apiKey - api key specific to the partner and also environment
|
|
76
|
+
* @param enableCrashReporting - Whether to enable crash reporting
|
|
68
77
|
*/
|
|
69
|
-
initialize: (
|
|
78
|
+
initialize: (
|
|
79
|
+
useSandBox: boolean = false,
|
|
80
|
+
enableCrashReporting: boolean = false,
|
|
81
|
+
config?: Config,
|
|
82
|
+
apiKey?: string
|
|
83
|
+
) => _SmileID.initialize(useSandBox, enableCrashReporting, config, apiKey),
|
|
70
84
|
|
|
71
85
|
/**
|
|
72
86
|
* Sets allow offline mode which enables
|
|
@@ -260,8 +274,11 @@ export {
|
|
|
260
274
|
//module
|
|
261
275
|
SmileID,
|
|
262
276
|
//views
|
|
277
|
+
Config,
|
|
263
278
|
SmileIDSmartSelfieEnrollmentView,
|
|
264
279
|
SmileIDSmartSelfieAuthenticationView,
|
|
280
|
+
SmileIDSmartSelfieEnrollmentEnhancedView,
|
|
281
|
+
SmileIDSmartSelfieAuthenticationEnhancedView,
|
|
265
282
|
SmileIDDocumentVerificationView,
|
|
266
283
|
SmileIDBiometricKYCView,
|
|
267
284
|
SmileIDEnhancedDocumentVerificationView,
|
|
@@ -297,4 +314,6 @@ export type {
|
|
|
297
314
|
SmartSelfieAuthenticationRequest,
|
|
298
315
|
BiometricKYCRequest,
|
|
299
316
|
ConsentRequest,
|
|
317
|
+
SmartSelfieEnrollmentEnhancedRequest,
|
|
318
|
+
SmartSelfieAuthenticationEnhancedRequest,
|
|
300
319
|
};
|
package/src/types.ts
CHANGED
|
@@ -78,6 +78,14 @@ type SmartSelfieRequest = SmileIDViewProps & {
|
|
|
78
78
|
};
|
|
79
79
|
|
|
80
80
|
export type SmartSelfieEnrollmentRequest = Omit<SmartSelfieRequest, 'jobId'>;
|
|
81
|
+
export type SmartSelfieEnrollmentEnhancedRequest = Omit<
|
|
82
|
+
SmartSelfieRequest,
|
|
83
|
+
'jobId'
|
|
84
|
+
>;
|
|
85
|
+
export type SmartSelfieAuthenticationEnhancedRequest = Omit<
|
|
86
|
+
SmartSelfieRequest,
|
|
87
|
+
'jobId'
|
|
88
|
+
>;
|
|
81
89
|
export type SmartSelfieAuthenticationRequest = Omit<
|
|
82
90
|
SmartSelfieRequest,
|
|
83
91
|
'jobId'
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { useEffect, useRef } from 'react';
|
|
2
|
+
import {
|
|
3
|
+
DeviceEventEmitter,
|
|
4
|
+
Platform,
|
|
5
|
+
UIManager,
|
|
6
|
+
findNodeHandle,
|
|
7
|
+
} from 'react-native';
|
|
8
|
+
|
|
9
|
+
interface SmileIDProps {
|
|
10
|
+
onResult?: (event: { nativeEvent: { error: any; result: any } }) => void;
|
|
11
|
+
[key: string]: any;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export const useSmileIDView = (viewName: string, props: SmileIDProps) => {
|
|
15
|
+
const viewRef = useRef<any>(null);
|
|
16
|
+
|
|
17
|
+
useEffect(() => {
|
|
18
|
+
const eventListener = DeviceEventEmitter.addListener(
|
|
19
|
+
'onSmileResult',
|
|
20
|
+
(event) => {
|
|
21
|
+
if (props.onResult) {
|
|
22
|
+
const nativeEvent = {
|
|
23
|
+
nativeEvent: {
|
|
24
|
+
error: event.error,
|
|
25
|
+
result: event.result,
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
props.onResult(nativeEvent);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
);
|
|
32
|
+
|
|
33
|
+
return () => {
|
|
34
|
+
eventListener.remove();
|
|
35
|
+
};
|
|
36
|
+
}, [props]);
|
|
37
|
+
|
|
38
|
+
useEffect(() => {
|
|
39
|
+
const viewId = findNodeHandle(viewRef.current);
|
|
40
|
+
const commandId = UIManager.getViewManagerConfig(viewName).Commands.create;
|
|
41
|
+
|
|
42
|
+
// Ensure the commandId is defined and is a number
|
|
43
|
+
if (typeof commandId !== 'undefined') {
|
|
44
|
+
UIManager.dispatchViewManagerCommand(
|
|
45
|
+
findNodeHandle(viewRef.current),
|
|
46
|
+
Platform.OS === 'android' ? commandId.toString() : commandId,
|
|
47
|
+
[viewId]
|
|
48
|
+
);
|
|
49
|
+
} else {
|
|
50
|
+
throw new Error(
|
|
51
|
+
'Command "setParams" is not defined for MyNativeComponent'
|
|
52
|
+
);
|
|
53
|
+
}
|
|
54
|
+
}, [viewName]);
|
|
55
|
+
|
|
56
|
+
useEffect(() => {
|
|
57
|
+
const parameters = {
|
|
58
|
+
...props,
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
const viewId = findNodeHandle(viewRef.current);
|
|
62
|
+
const commandId =
|
|
63
|
+
UIManager.getViewManagerConfig(viewName).Commands.setParams;
|
|
64
|
+
|
|
65
|
+
// Ensure the commandId is defined and is a number
|
|
66
|
+
if (typeof commandId !== 'undefined') {
|
|
67
|
+
UIManager.dispatchViewManagerCommand(
|
|
68
|
+
findNodeHandle(viewRef.current),
|
|
69
|
+
Platform.OS === 'android' ? commandId.toString() : commandId,
|
|
70
|
+
[viewId, parameters]
|
|
71
|
+
);
|
|
72
|
+
} else {
|
|
73
|
+
throw new Error(
|
|
74
|
+
'Command "setParams" is not defined for MyNativeComponent'
|
|
75
|
+
);
|
|
76
|
+
}
|
|
77
|
+
}, [props, viewName]);
|
|
78
|
+
|
|
79
|
+
return viewRef;
|
|
80
|
+
};
|