@qore-id/react-native-qoreid-sdk 1.2.5 → 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 (60) 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 +9 -9
  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/typescript/package.json +1 -0
  22. package/lib/typescript/src/NativeRNQoreIdSdk.d.ts +8 -0
  23. package/lib/typescript/src/NativeRNQoreIdSdk.d.ts.map +1 -0
  24. package/lib/typescript/src/index.d.ts +1 -0
  25. package/lib/typescript/src/index.d.ts.map +1 -1
  26. package/lib/typescript/src/qoreIdSdk.d.ts +4 -4
  27. package/lib/typescript/src/qoreIdSdk.d.ts.map +1 -1
  28. package/lib/typescript/src/types.d.ts +51 -0
  29. package/lib/typescript/src/types.d.ts.map +1 -0
  30. package/lib/typescript/src/utils.d.ts +1 -0
  31. package/lib/typescript/src/utils.d.ts.map +1 -1
  32. package/package.json +42 -71
  33. package/src/NativeRNQoreIdSdk.ts +12 -0
  34. package/src/index.tsx +1 -0
  35. package/src/qoreIdSdk.tsx +11 -19
  36. package/src/{types.d.ts → types.ts} +16 -31
  37. package/src/utils.ts +2 -0
  38. package/android/src/main/java/com/qoreidsdk/QoreidSdkModule.kt +0 -241
  39. package/android/src/main/java/com/qoreidsdk/QoreidSdkPackage.kt +0 -17
  40. package/ios/QoreidSdk-Bridging-Header.h +0 -7
  41. package/ios/QoreidSdk.m +0 -12
  42. package/ios/QoreidSdk.xcodeproj/project.pbxproj +0 -292
  43. package/lib/commonjs/QoreIDSDKSpec.js +0 -9
  44. package/lib/commonjs/QoreIDSDKSpec.js.map +0 -1
  45. package/lib/commonjs/index.js +0 -28
  46. package/lib/commonjs/index.js.map +0 -1
  47. package/lib/commonjs/qoreIdSdk.js +0 -93
  48. package/lib/commonjs/qoreIdSdk.js.map +0 -1
  49. package/lib/commonjs/types.d.js +0 -13
  50. package/lib/commonjs/types.d.js.map +0 -1
  51. package/lib/commonjs/utils.js +0 -19
  52. package/lib/commonjs/utils.js.map +0 -1
  53. package/lib/module/QoreIDSDKSpec.js +0 -5
  54. package/lib/module/QoreIDSDKSpec.js.map +0 -1
  55. package/lib/module/types.d.js +0 -4
  56. package/lib/module/types.d.js.map +0 -1
  57. package/lib/typescript/src/QoreIDSDKSpec.d.ts +0 -7
  58. package/lib/typescript/src/QoreIDSDKSpec.d.ts.map +0 -1
  59. package/qore-id-react-native-qoreid-sdk.podspec +0 -42
  60. package/src/QoreIDSDKSpec.ts +0 -8
@@ -1,93 +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
- var _QoreIDSDKSpec = _interopRequireDefault(require("./QoreIDSDKSpec.js"));
11
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
- /**
13
- * @name validateLaunchData
14
- * @description QoreIdSDK validation and launch module
15
- * @module QoreIdSdk
16
- * @requires QoreIdSdk native module installed
17
- *
18
- */
19
- function validateLaunchData(data, module) {
20
- // check that QoreIdSdk is installed
21
- if (!module) {
22
- throw new Error('QoreIdSdk native module is not installed');
23
- }
24
- if (!data) {
25
- throw new Error('Data is required');
26
- }
27
- if (!data.customerReference) {
28
- throw new Error('Customer reference is required');
29
- }
30
- if (!data.productCode && !data.flowId) {
31
- throw new Error('Product code or flow ID is required');
32
- }
33
- if (!data.clientId) {
34
- throw new Error('Client ID is required');
35
- }
36
- }
37
- const QoreIdSdk = exports.QoreIdSdk = {
38
- /**
39
- * lauches QoreID SDK
40
- * @param data - data to launch Qore ID SDK
41
- * @requires QoreIdSdk native module installed
42
- */
43
- launch(data) {
44
- // Validate the initial data
45
- validateLaunchData(data, _QoreIDSDKSpec.default);
46
- const payload = {
47
- config: {
48
- flowId: data.flowId || 0,
49
- customerReference: data.customerReference,
50
- productCode: data.productCode,
51
- clientId: data.clientId,
52
- defaultIdType: data?.defaultIdType ?? ''
53
- },
54
- applicantData: {
55
- ...data.applicantData
56
- },
57
- addressData: {
58
- ...data.addressData
59
- },
60
- acceptedDocuments: data?.ocrAcceptedDocuments ?? [],
61
- identityData: {
62
- ...data.identityData
63
- },
64
- extraData: data.extraData
65
- };
66
- _QoreIDSDKSpec.default.launchQoreidSdk(payload);
67
- },
68
- /**
69
- * QoreIdSdk events listener. It takes callbacks to handle success and error events
70
- * @param callback(data: OnResultType) Handles various events from QoreID SDK
71
- */
72
- events(callback) {
73
- const eventEmitter = _reactNative.Platform.OS !== 'ios' ? new _reactNative.NativeEventEmitter() : new _reactNative.NativeEventEmitter(_reactNative.NativeModules.QoreidSdk);
74
- let eventListener = eventEmitter?.addListener('onResult', callback);
75
- return () => {
76
- eventListener.remove();
77
- };
78
- }
79
- };
80
- function useQoreIdSdk({
81
- onResult
82
- }) {
83
- (0, _react.useEffect)(() => {
84
- const unsubscribed = QoreIdSdk.events(onResult);
85
- return () => {
86
- unsubscribed();
87
- };
88
- }, [onResult]);
89
- return {
90
- launchQoreId: QoreIdSdk.launch
91
- };
92
- }
93
- //# sourceMappingURL=qoreIdSdk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_reactNative","require","_react","_QoreIDSDKSpec","_interopRequireDefault","e","__esModule","default","validateLaunchData","data","module","Error","customerReference","productCode","flowId","clientId","QoreIdSdk","exports","launch","QoreIDSDKSpec","payload","config","defaultIdType","applicantData","addressData","acceptedDocuments","ocrAcceptedDocuments","identityData","extraData","launchQoreidSdk","events","callback","eventEmitter","Platform","OS","NativeEventEmitter","NativeModules","QoreidSdk","eventListener","addListener","remove","useQoreIdSdk","onResult","useEffect","unsubscribed","launchQoreId"],"sourceRoot":"../../src","sources":["qoreIdSdk.tsx"],"mappings":";;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA,IAAAE,cAAA,GAAAC,sBAAA,CAAAH,OAAA;AAA4C,SAAAG,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAG5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASG,kBAAkBA,CAACC,IAAgB,EAAEC,MAAW,EAAE;EACzD;EACA,IAAI,CAACA,MAAM,EAAE;IACX,MAAM,IAAIC,KAAK,CAAC,0CAA0C,CAAC;EAC7D;EAEA,IAAI,CAACF,IAAI,EAAE;IACT,MAAM,IAAIE,KAAK,CAAC,kBAAkB,CAAC;EACrC;EAEA,IAAI,CAACF,IAAI,CAACG,iBAAiB,EAAE;IAC3B,MAAM,IAAID,KAAK,CAAC,gCAAgC,CAAC;EACnD;EAEA,IAAI,CAACF,IAAI,CAACI,WAAW,IAAI,CAACJ,IAAI,CAACK,MAAM,EAAE;IACrC,MAAM,IAAIH,KAAK,CAAC,qCAAqC,CAAC;EACxD;EAEA,IAAI,CAACF,IAAI,CAACM,QAAQ,EAAE;IAClB,MAAM,IAAIJ,KAAK,CAAC,uBAAuB,CAAC;EAC1C;AACF;AAEO,MAAMK,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG;EACvB;AACF;AACA;AACA;AACA;EACEE,MAAMA,CAACT,IAAgB,EAAE;IACvB;IACAD,kBAAkB,CAACC,IAAI,EAAEU,sBAAa,CAAC;IAEvC,MAAMC,OAAO,GAAG;MACdC,MAAM,EAAE;QACNP,MAAM,EAAEL,IAAI,CAACK,MAAM,IAAI,CAAC;QACxBF,iBAAiB,EAAEH,IAAI,CAACG,iBAAiB;QACzCC,WAAW,EAAEJ,IAAI,CAACI,WAAW;QAC7BE,QAAQ,EAAEN,IAAI,CAACM,QAAQ;QACvBO,aAAa,EAAEb,IAAI,EAAEa,aAAa,IAAI;MACxC,CAAC;MACDC,aAAa,EAAE;QACb,GAAGd,IAAI,CAACc;MACV,CAAC;MACDC,WAAW,EAAE;QACX,GAAGf,IAAI,CAACe;MACV,CAAC;MACDC,iBAAiB,EAAEhB,IAAI,EAAEiB,oBAAoB,IAAI,EAAE;MACnDC,YAAY,EAAE;QAAE,GAAGlB,IAAI,CAACkB;MAAa,CAAC;MACtCC,SAAS,EAAEnB,IAAI,CAACmB;IAClB,CAAC;IACDT,sBAAa,CAACU,eAAe,CAACT,OAAO,CAAC;EACxC,CAAC;EAED;AACF;AACA;AACA;EACEU,MAAMA,CAACC,QAAkC,EAAE;IACzC,MAAMC,YAAY,GAChBC,qBAAQ,CAACC,EAAE,KAAK,KAAK,GACjB,IAAIC,+BAAkB,CAAC,CAAC,GACxB,IAAIA,+BAAkB,CAACC,0BAAa,CAACC,SAAS,CAAC;IACrD,IAAIC,aAAa,GAAGN,YAAY,EAAEO,WAAW,CAAC,UAAU,EAAER,QAAQ,CAAC;IAEnE,OAAO,MAAM;MACXO,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,GAAG5B,SAAS,CAACc,MAAM,CAACY,QAAQ,CAAC;IAC/C,OAAO,MAAM;MACXE,YAAY,CAAC,CAAC;IAChB,CAAC;EACH,CAAC,EAAE,CAACF,QAAQ,CAAC,CAAC;EAEd,OAAO;IAAEG,YAAY,EAAE7B,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,CACN;EACVC,KAAK,EAAE,CACL,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,CACR;EACVC,KAAK,EAAE,CACL,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,cAAc;AAElB,CAAU;AAEV,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,CACL;AAEH,MAAMC,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAG;EACnBD,YAAY;EACZJ;AACF,CAAC","ignoreList":[]}
@@ -1,5 +0,0 @@
1
- "use strict";
2
-
3
- import { TurboModuleRegistry } from 'react-native';
4
- export default TurboModuleRegistry.getEnforcing('QoreidSdk');
5
- //# sourceMappingURL=QoreIDSDKSpec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["QoreIDSDKSpec.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;AAMlD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,WAAW,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,7 +0,0 @@
1
- import type { TurboModule } from 'react-native';
2
- export interface Spec extends TurboModule {
3
- launchQoreidSdk: (arg: Record<string, unknown>) => void;
4
- }
5
- declare const _default: Spec;
6
- export default _default;
7
- //# sourceMappingURL=QoreIDSDKSpec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"QoreIDSDKSpec.d.ts","sourceRoot":"","sources":["../../../src/QoreIDSDKSpec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,eAAe,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;CACzD;;AAED,wBAAmE"}
@@ -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
@@ -1,8 +0,0 @@
1
- import type { TurboModule } from 'react-native';
2
- import { TurboModuleRegistry } from 'react-native';
3
-
4
- export interface Spec extends TurboModule {
5
- launchQoreidSdk: (arg: Record<string, unknown>) => void;
6
- }
7
-
8
- export default TurboModuleRegistry.getEnforcing<Spec>('QoreidSdk');