@qore-id/react-native-qoreid-sdk 1.2.5-rc → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +6 -2
  3. package/RNQoreIdSdk.podspec +22 -0
  4. package/android/build.gradle +25 -46
  5. package/android/gradle.properties +5 -5
  6. package/android/src/main/AndroidManifest.xml +1 -2
  7. package/android/src/main/java/com/qoreid/reactnativeqoreidsdk/RNQoreIdSdkModule.kt +220 -0
  8. package/android/src/main/java/com/qoreid/reactnativeqoreidsdk/RNQoreIdSdkPackage.kt +33 -0
  9. package/ios/{QoreidSdk.swift → RCTRNQoreIdSdk.swift} +28 -15
  10. package/ios/RNQoreIdSdk.h +6 -0
  11. package/ios/RNQoreIdSdk.mm +41 -0
  12. package/lib/module/NativeRNQoreIdSdk.js +5 -0
  13. package/lib/module/NativeRNQoreIdSdk.js.map +1 -0
  14. package/lib/module/index.js +1 -0
  15. package/lib/module/index.js.map +1 -1
  16. package/lib/module/package.json +1 -0
  17. package/lib/module/qoreIdSdk.js +46 -28
  18. package/lib/module/qoreIdSdk.js.map +1 -1
  19. package/lib/module/types.js +2 -0
  20. package/lib/module/types.js.map +1 -0
  21. package/lib/module/utils.js.map +1 -1
  22. package/lib/typescript/package.json +1 -0
  23. package/lib/typescript/src/NativeRNQoreIdSdk.d.ts +8 -0
  24. package/lib/typescript/src/NativeRNQoreIdSdk.d.ts.map +1 -0
  25. package/lib/typescript/src/index.d.ts +1 -0
  26. package/lib/typescript/src/index.d.ts.map +1 -1
  27. package/lib/typescript/src/qoreIdSdk.d.ts +9 -4
  28. package/lib/typescript/src/qoreIdSdk.d.ts.map +1 -1
  29. package/lib/typescript/src/types.d.ts +51 -0
  30. package/lib/typescript/src/types.d.ts.map +1 -0
  31. package/lib/typescript/src/utils.d.ts +5 -4
  32. package/lib/typescript/src/utils.d.ts.map +1 -1
  33. package/package.json +48 -66
  34. package/src/NativeRNQoreIdSdk.ts +12 -0
  35. package/src/index.tsx +1 -0
  36. package/src/qoreIdSdk.tsx +53 -45
  37. package/src/types.ts +60 -0
  38. package/src/utils.ts +7 -5
  39. package/android/src/main/java/com/qoreidsdk/QoreidSdkModule.kt +0 -241
  40. package/android/src/main/java/com/qoreidsdk/QoreidSdkPackage.kt +0 -17
  41. package/ios/QoreidSdk-Bridging-Header.h +0 -7
  42. package/ios/QoreidSdk.m +0 -12
  43. package/ios/QoreidSdk.xcodeproj/project.pbxproj +0 -292
  44. package/lib/commonjs/index.js +0 -28
  45. package/lib/commonjs/index.js.map +0 -1
  46. package/lib/commonjs/qoreIdSdk.js +0 -74
  47. package/lib/commonjs/qoreIdSdk.js.map +0 -1
  48. package/lib/commonjs/types.d.js +0 -13
  49. package/lib/commonjs/types.d.js.map +0 -1
  50. package/lib/commonjs/utils.js +0 -19
  51. package/lib/commonjs/utils.js.map +0 -1
  52. package/lib/module/types.d.js +0 -4
  53. package/lib/module/types.d.js.map +0 -1
  54. package/qore-id-react-native-qoreid-sdk.podspec +0 -42
  55. package/src/types.d.ts +0 -76
@@ -1 +0,0 @@
1
- {"version":3,"names":["_qoreIdSdk","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_utils"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,UAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,UAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,UAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,MAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,MAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,MAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,MAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -1,74 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.QoreIdSdk = void 0;
7
- exports.useQoreIdSdk = useQoreIdSdk;
8
- var _reactNative = require("react-native");
9
- var _react = require("react");
10
- const LINKING_ERROR = `The package '@qoreid/react-native-qoreid-sdk' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
11
- ios: "- You have run 'pod install'\n",
12
- default: ''
13
- }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
14
- const QoreidRNModule = _reactNative.NativeModules.QoreidSdk;
15
- const ReactNativeQoreidSdkModule = QoreidRNModule ?? new Proxy({}, {
16
- get() {
17
- throw new Error(LINKING_ERROR);
18
- }
19
- });
20
- const QoreIdSdk = exports.QoreIdSdk = {
21
- /**
22
- * lauches QoreID SDK
23
- * @param initialData - data to launch Qore ID SDK
24
- * @requires QoreIdSdk native module installed
25
- */
26
- launch(initialData) {
27
- const payload = {
28
- config: {
29
- flowId: initialData.flowId || 0,
30
- customerReference: initialData.customerReference,
31
- productCode: initialData.productCode,
32
- clientId: initialData.clientId,
33
- defaultIdType: initialData?.defaultIdType ?? ''
34
- },
35
- applicantData: {
36
- ...initialData.applicantData
37
- },
38
- addressData: {
39
- ...initialData.addressData
40
- },
41
- acceptedDocuments: initialData?.ocrAcceptedDocuments ?? [],
42
- identityData: {
43
- ...initialData.identityData
44
- },
45
- extraData: initialData.extraData
46
- };
47
- ReactNativeQoreidSdkModule.launchQoreidSdk(payload);
48
- },
49
- /**
50
- * QoreIdSdk events listener. It takes callbacks to handle success and error events
51
- * @param callback(data: OnResultType) Handles various events from QoreID SDK
52
- */
53
- events(callback) {
54
- const eventEmitter = _reactNative.Platform.OS === 'android' ? new _reactNative.NativeEventEmitter() : new _reactNative.NativeEventEmitter(ReactNativeQoreidSdkModule);
55
- let eventListener = eventEmitter?.addListener('onResult', callback);
56
- return () => {
57
- eventListener.remove();
58
- };
59
- }
60
- };
61
- function useQoreIdSdk({
62
- onResult
63
- }) {
64
- (0, _react.useEffect)(() => {
65
- const unsubscribed = QoreIdSdk.events(onResult);
66
- return () => {
67
- unsubscribed();
68
- };
69
- }, [onResult]);
70
- return {
71
- launchQoreId: QoreIdSdk.launch
72
- };
73
- }
74
- //# sourceMappingURL=qoreIdSdk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_reactNative","require","_react","LINKING_ERROR","Platform","select","ios","default","QoreidRNModule","NativeModules","QoreidSdk","ReactNativeQoreidSdkModule","Proxy","get","Error","QoreIdSdk","exports","launch","initialData","payload","config","flowId","customerReference","productCode","clientId","defaultIdType","applicantData","addressData","acceptedDocuments","ocrAcceptedDocuments","identityData","extraData","launchQoreidSdk","events","callback","eventEmitter","OS","NativeEventEmitter","eventListener","addListener","remove","useQoreIdSdk","onResult","useEffect","unsubscribed","launchQoreId"],"sourceRoot":"../../src","sources":["qoreIdSdk.tsx"],"mappings":";;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAGA,MAAME,aAAa,GACjB,0FAA0F,GAC1FC,qBAAQ,CAACC,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,cAAc,GAAGC,0BAAa,CAACC,SAAS;AAE9C,MAAMC,0BAA0B,GAC9BH,cAAc,IACd,IAAII,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACX,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAEI,MAAMY,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG;EACvB;AACF;AACA;AACA;AACA;EACEE,MAAMA,CAACC,WAAuB,EAAE;IAC9B,MAAMC,OAAO,GAAG;MACdC,MAAM,EAAE;QACNC,MAAM,EAAEH,WAAW,CAACG,MAAM,IAAI,CAAC;QAC/BC,iBAAiB,EAAEJ,WAAW,CAACI,iBAAiB;QAChDC,WAAW,EAAEL,WAAW,CAACK,WAAW;QACpCC,QAAQ,EAAEN,WAAW,CAACM,QAAQ;QAC9BC,aAAa,EAAEP,WAAW,EAAEO,aAAa,IAAI;MAC/C,CAAC;MACDC,aAAa,EAAE;QACb,GAAGR,WAAW,CAACQ;MACjB,CAAC;MACDC,WAAW,EAAE;QACX,GAAGT,WAAW,CAACS;MACjB,CAAC;MACDC,iBAAiB,EAAEV,WAAW,EAAEW,oBAAoB,IAAI,EAAE;MAC1DC,YAAY,EAAE;QAAE,GAAGZ,WAAW,CAACY;MAAa,CAAC;MAC7CC,SAAS,EAAEb,WAAW,CAACa;IACzB,CAAC;IACDpB,0BAA0B,CAACqB,eAAe,CAACb,OAAO,CAAC;EACrD,CAAC;EAED;AACF;AACA;AACA;EACEc,MAAMA,CAACC,QAAkC,EAAE;IACzC,MAAMC,YAAY,GAChB/B,qBAAQ,CAACgC,EAAE,KAAK,SAAS,GACrB,IAAIC,+BAAkB,CAAC,CAAC,GACxB,IAAIA,+BAAkB,CAAC1B,0BAA0B,CAAC;IACxD,IAAI2B,aAAa,GAAGH,YAAY,EAAEI,WAAW,CAAC,UAAU,EAAEL,QAAQ,CAAC;IAEnE,OAAO,MAAM;MACXI,aAAa,CAACE,MAAM,CAAC,CAAC;IACxB,CAAC;EACH;AACF,CAAC;AAEM,SAASC,YAAYA,CAAC;EAC3BC;AAGF,CAAC,EAAE;EACD,IAAAC,gBAAS,EAAC,MAAM;IACd,MAAMC,YAAY,GAAG7B,SAAS,CAACkB,MAAM,CAACS,QAAQ,CAAC;IAC/C,OAAO,MAAM;MACXE,YAAY,CAAC,CAAC;IAChB,CAAC;EACH,CAAC,EAAE,CAACF,QAAQ,CAAC,CAAC;EAEd,OAAO;IAAEG,YAAY,EAAE9B,SAAS,CAACE;EAAO,CAAC;AAC3C","ignoreList":[]}
@@ -1,13 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "utils", {
7
- enumerable: true,
8
- get: function () {
9
- return _utils.utils;
10
- }
11
- });
12
- var _utils = require("./utils.js");
13
- //# sourceMappingURL=types.d.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_utils","require"],"sourceRoot":"../../src","sources":["types.d.ts"],"mappings":";;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA","ignoreList":[]}
@@ -1,19 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.utils = void 0;
7
- const acceptedDocuments = {
8
- Nigeria: ['DRIVERS_LICENSE_NGA', 'VOTERS_CARD_NGA', 'NIN_SLIP_NGA', 'PASSPORT_NGA'],
9
- Ghana: ['DRIVERS_LICENSE_GHA', 'NHIS_CARD_GHA', 'ECOWAS_CARD_GHA', 'SOCIAL_SECURITY_GHA', 'VOTERS_CARD_GHA', 'PASSPORT_GHA', 'GHANA_CARD_GHA'],
10
- Kenya: ['DRIVERS_LICENSE_KEN', 'NATIONAL_ID_KEN', 'REFUGEE_ID_KEN', 'PASSPORT_KEN']
11
- };
12
- const productCodes = ['alien_card', 'brs', 'business_address', 'bvn_basic', 'bvn_boolean', 'bvn_nuban', 'bvn_premium', 'cac_basic', 'cac_premium', 'drivers_license', 'employment', 'guarantor', 'face_verification_bvn', 'face_verification_drivers_license', 'face_verification_nin', 'face_verification_passport_ng', 'face_verification_passport_ke', 'face_verification_vnin', 'individual_address', 'kenya_id', 'license_plate_basic', 'license_plate_premium', 'liveness', 'liveness_bvn', 'liveness_drivers_license', 'liveness_nin', 'liveness_ocr', 'liveness_passport_ng', 'liveness_vnin', 'nin', 'nin_phone', 'nuban', 'ocr', 'passport_ng', 'passport_ke', 'property', 'tin',
13
- // "vehicle",
14
- 'verifind', 'verifind_4d', 'vin', 'virtual_nin'];
15
- const utils = exports.utils = {
16
- productCodes,
17
- acceptedDocuments
18
- };
19
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["acceptedDocuments","Nigeria","Ghana","Kenya","productCodes","utils","exports"],"sourceRoot":"../../src","sources":["utils.ts"],"mappings":";;;;;;AAAA,MAAMA,iBAAiB,GAAG;EACxBC,OAAO,EAAE,CACP,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,cAAc,CACf;EACDC,KAAK,EAAE,CACL,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,CACjB;EACDC,KAAK,EAAE,CACL,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,cAAc;AAElB,CAAC;AAED,MAAMC,YAAY,GAAG,CACnB,YAAY,EACZ,KAAK,EACL,kBAAkB,EAClB,WAAW,EACX,aAAa,EACb,WAAW,EACX,aAAa,EACb,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,uBAAuB,EACvB,mCAAmC,EACnC,uBAAuB,EACvB,+BAA+B,EAC/B,+BAA+B,EAC/B,wBAAwB,EACxB,oBAAoB,EACpB,UAAU,EACV,qBAAqB,EACrB,uBAAuB,EACvB,UAAU,EACV,cAAc,EACd,0BAA0B,EAC1B,cAAc,EACd,cAAc,EACd,sBAAsB,EACtB,eAAe,EACf,KAAK,EACL,WAAW,EACX,OAAO,EACP,KAAK,EACL,aAAa,EACb,aAAa,EACb,UAAU,EACV,KAAK;AACL;AACA,UAAU,EACV,aAAa,EACb,KAAK,EACL,aAAa,CACd;AAEM,MAAMC,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAG;EACnBD,YAAY;EACZJ;AACF,CAAC","ignoreList":[]}
@@ -1,4 +0,0 @@
1
- "use strict";
2
-
3
- export { utils } from "./utils.js";
4
- //# sourceMappingURL=types.d.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["utils"],"sourceRoot":"../../src","sources":["types.d.ts"],"mappings":";;AAAA,SAASA,KAAK,QAAQ,YAAS","ignoreList":[]}
@@ -1,42 +0,0 @@
1
- require "json"
2
-
3
- package = JSON.parse(File.read(File.join(__dir__, "package.json")))
4
- folly_compiler_flags = '-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32'
5
-
6
- Pod::Spec.new do |s|
7
- s.name = "qore-id-react-native-qoreid-sdk"
8
- s.version = package["version"]
9
- s.summary = package["description"]
10
- s.homepage = package["homepage"]
11
- s.license = package["license"]
12
- s.authors = package["author"]
13
-
14
- s.platforms = { :ios => min_ios_version_supported }
15
- s.source = { :git => "https://.git", :tag => "#{s.version}" }
16
-
17
- s.source_files = "ios/**/*.{h,m,mm,swift}"
18
- s.dependency 'QoreIDSDK'
19
-
20
- # Use install_modules_dependencies helper to install the dependencies if React Native version >=0.71.0.
21
- # See https://github.com/facebook/react-native/blob/febf6b7f33fdb4904669f99d795eba4c0f95d7bf/scripts/cocoapods/new_architecture.rb#L79.
22
- if respond_to?(:install_modules_dependencies, true)
23
- install_modules_dependencies(s)
24
- else
25
- s.dependency "React-Core"
26
-
27
- # Don't install the dependencies when we run `pod install` in the old architecture.
28
- if ENV['RCT_NEW_ARCH_ENABLED'] == '1' then
29
- s.compiler_flags = folly_compiler_flags + " -DRCT_NEW_ARCH_ENABLED=1"
30
- s.pod_target_xcconfig = {
31
- "HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\"",
32
- "OTHER_CPLUSPLUSFLAGS" => "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1",
33
- "CLANG_CXX_LANGUAGE_STANDARD" => "c++17"
34
- }
35
- s.dependency "React-Codegen"
36
- s.dependency "RCT-Folly"
37
- s.dependency "RCTRequired"
38
- s.dependency "RCTTypeSafety"
39
- s.dependency "ReactCommon/turbomodule/core"
40
- end
41
- end
42
- end
package/src/types.d.ts DELETED
@@ -1,76 +0,0 @@
1
- export { utils } from './utils';
2
- declare module '@qore-id/react-native-qoreid-sdk' {
3
- export interface QoreIdData {
4
- flowId?: number;
5
- customerReference: string;
6
- productCode: string;
7
- clientId: string;
8
- defaultIdType?: string;
9
- applicantData?: ApplicantData;
10
- addressData?: AddressData;
11
- ocrAcceptedDocuments?: string[];
12
- identityData?: IdentityData;
13
- /** extra property is only usable for internal use only */
14
- extraData?: {
15
- organisationId: string;
16
- organisationName: string;
17
- requestSource: string;
18
- internalReferenceId: string;
19
- };
20
- }
21
-
22
- interface IConfig {
23
- flowId?: number;
24
- customerRef: string;
25
- productCode: string;
26
- clientId: string;
27
- }
28
-
29
- interface ApplicantData {
30
- firstName?: string;
31
- lastName?: string;
32
- phoneNumber?: string;
33
- email?: string;
34
- dob?: string;
35
- gender?: string;
36
- middleName?: string;
37
- }
38
-
39
- interface IdentityData {
40
- idType?: string;
41
- idNumber?: string;
42
- }
43
-
44
- interface AddressData {
45
- address?: string;
46
- town?: string;
47
- lga?: string;
48
- city?: string;
49
- state?: string;
50
- region?: string;
51
- district?: string;
52
- virAddress?: string;
53
- }
54
-
55
- export interface OnResult {
56
- code: string;
57
- data: Record<string, unknown> | string | number | null;
58
- event: 'SESSION_RESULT' | 'SUCCESS_RESULT' | 'ERROR_RESULT';
59
- message: string;
60
- }
61
-
62
- export type QoreIdSdk = {
63
- launchQoreId: (initialData: QoreIdData) => void;
64
- events: (OnResult: (data: OnResult) => void) => void;
65
- };
66
-
67
- export function useQoreIdSdk({
68
- onResult,
69
- }: {
70
- onResult: (data: OnResult) => void;
71
- }): {
72
- launchQoreId: (initialData: QoreIdData) => void;
73
- };
74
-
75
- export type Utils = typeof utils;
76
- }