react-native-okhi 1.2.31 → 1.2.32-beta.2

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 (151) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +34 -4
  3. package/ReactNativeOkhi.podspec +21 -0
  4. package/android/build.gradle +38 -99
  5. package/android/gradle.properties +3 -3
  6. package/android/src/main/AndroidManifest.xml +1 -3
  7. package/android/src/main/java/com/okhi/OkhiModule.kt +336 -0
  8. package/android/src/main/java/com/okhi/OkhiPackage.kt +33 -0
  9. package/ios/OkHiWrapper.swift +348 -0
  10. package/ios/Okhi.h +5 -0
  11. package/ios/Okhi.mm +170 -0
  12. package/lib/commonjs/NativeOkhi.js +9 -0
  13. package/lib/commonjs/NativeOkhi.js.map +1 -0
  14. package/lib/commonjs/index.js +234 -28
  15. package/lib/commonjs/index.js.map +1 -1
  16. package/lib/commonjs/package.json +1 -0
  17. package/lib/commonjs/types.js.map +1 -0
  18. package/lib/module/NativeOkhi.js +5 -0
  19. package/lib/module/NativeOkhi.js.map +1 -0
  20. package/lib/module/index.js +221 -3
  21. package/lib/module/index.js.map +1 -1
  22. package/lib/module/package.json +1 -0
  23. package/lib/module/types.js +2 -0
  24. package/lib/module/types.js.map +1 -0
  25. package/lib/typescript/commonjs/package.json +1 -0
  26. package/lib/typescript/commonjs/src/NativeOkhi.d.ts +25 -0
  27. package/lib/typescript/commonjs/src/NativeOkhi.d.ts.map +1 -0
  28. package/lib/typescript/commonjs/src/index.d.ts +22 -0
  29. package/lib/typescript/commonjs/src/index.d.ts.map +1 -0
  30. package/lib/typescript/commonjs/src/types.d.ts +81 -0
  31. package/lib/typescript/commonjs/src/types.d.ts.map +1 -0
  32. package/lib/typescript/module/package.json +1 -0
  33. package/lib/typescript/module/src/NativeOkhi.d.ts +25 -0
  34. package/lib/typescript/module/src/NativeOkhi.d.ts.map +1 -0
  35. package/lib/typescript/module/src/index.d.ts +22 -0
  36. package/lib/typescript/module/src/index.d.ts.map +1 -0
  37. package/lib/typescript/module/src/types.d.ts +81 -0
  38. package/lib/typescript/module/src/types.d.ts.map +1 -0
  39. package/package.json +91 -112
  40. package/src/NativeOkhi.ts +68 -0
  41. package/src/index.tsx +271 -3
  42. package/src/types.ts +90 -0
  43. package/android/src/main/java/com/reactnativeokhi/OkhiModule.java +0 -389
  44. package/android/src/main/java/com/reactnativeokhi/OkhiPackage.java +0 -28
  45. package/ios/OkHiExtension.swift +0 -27
  46. package/ios/OkHiStruct.swift +0 -29
  47. package/ios/Okhi-Bridging-Header.h +0 -3
  48. package/ios/Okhi.m +0 -62
  49. package/ios/Okhi.swift +0 -325
  50. package/ios/Okhi.xcodeproj/project.pbxproj +0 -283
  51. package/lib/commonjs/OkCollect/Helpers.js +0 -40
  52. package/lib/commonjs/OkCollect/Helpers.js.map +0 -1
  53. package/lib/commonjs/OkCollect/OkHiLocationManager.js +0 -305
  54. package/lib/commonjs/OkCollect/OkHiLocationManager.js.map +0 -1
  55. package/lib/commonjs/OkCollect/Spinner.js +0 -27
  56. package/lib/commonjs/OkCollect/Spinner.js.map +0 -1
  57. package/lib/commonjs/OkCollect/Util.js +0 -226
  58. package/lib/commonjs/OkCollect/Util.js.map +0 -1
  59. package/lib/commonjs/OkCollect/app.json +0 -4
  60. package/lib/commonjs/OkCollect/index.js +0 -47
  61. package/lib/commonjs/OkCollect/index.js.map +0 -1
  62. package/lib/commonjs/OkCollect/types.js +0 -6
  63. package/lib/commonjs/OkCollect/types.js.map +0 -1
  64. package/lib/commonjs/OkCore/Helpers.js +0 -386
  65. package/lib/commonjs/OkCore/Helpers.js.map +0 -1
  66. package/lib/commonjs/OkCore/OkHiException.js +0 -96
  67. package/lib/commonjs/OkCore/OkHiException.js.map +0 -1
  68. package/lib/commonjs/OkCore/OkHiMode.js +0 -14
  69. package/lib/commonjs/OkCore/OkHiMode.js.map +0 -1
  70. package/lib/commonjs/OkCore/_helpers.js +0 -41
  71. package/lib/commonjs/OkCore/_helpers.js.map +0 -1
  72. package/lib/commonjs/OkCore/_types.js +0 -2
  73. package/lib/commonjs/OkCore/_types.js.map +0 -1
  74. package/lib/commonjs/OkCore/index.js +0 -119
  75. package/lib/commonjs/OkCore/index.js.map +0 -1
  76. package/lib/commonjs/OkCore/types.js +0 -6
  77. package/lib/commonjs/OkCore/types.js.map +0 -1
  78. package/lib/commonjs/OkHiNativeModule/index.js +0 -19
  79. package/lib/commonjs/OkHiNativeModule/index.js.map +0 -1
  80. package/lib/commonjs/OkVerify/index.js +0 -211
  81. package/lib/commonjs/OkVerify/index.js.map +0 -1
  82. package/lib/commonjs/OkVerify/types.js.map +0 -1
  83. package/lib/module/OkCollect/Helpers.js +0 -34
  84. package/lib/module/OkCollect/Helpers.js.map +0 -1
  85. package/lib/module/OkCollect/OkHiLocationManager.js +0 -298
  86. package/lib/module/OkCollect/OkHiLocationManager.js.map +0 -1
  87. package/lib/module/OkCollect/Spinner.js +0 -20
  88. package/lib/module/OkCollect/Spinner.js.map +0 -1
  89. package/lib/module/OkCollect/Util.js +0 -214
  90. package/lib/module/OkCollect/Util.js.map +0 -1
  91. package/lib/module/OkCollect/app.json +0 -4
  92. package/lib/module/OkCollect/index.js +0 -4
  93. package/lib/module/OkCollect/index.js.map +0 -1
  94. package/lib/module/OkCollect/types.js +0 -2
  95. package/lib/module/OkCollect/types.js.map +0 -1
  96. package/lib/module/OkCore/Helpers.js +0 -363
  97. package/lib/module/OkCore/Helpers.js.map +0 -1
  98. package/lib/module/OkCore/OkHiException.js +0 -89
  99. package/lib/module/OkCore/OkHiException.js.map +0 -1
  100. package/lib/module/OkCore/OkHiMode.js +0 -8
  101. package/lib/module/OkCore/OkHiMode.js.map +0 -1
  102. package/lib/module/OkCore/_helpers.js +0 -34
  103. package/lib/module/OkCore/_helpers.js.map +0 -1
  104. package/lib/module/OkCore/_types.js +0 -2
  105. package/lib/module/OkCore/_types.js.map +0 -1
  106. package/lib/module/OkCore/index.js +0 -65
  107. package/lib/module/OkCore/index.js.map +0 -1
  108. package/lib/module/OkCore/types.js +0 -2
  109. package/lib/module/OkCore/types.js.map +0 -1
  110. package/lib/module/OkHiNativeModule/index.js +0 -13
  111. package/lib/module/OkHiNativeModule/index.js.map +0 -1
  112. package/lib/module/OkVerify/index.js +0 -195
  113. package/lib/module/OkVerify/index.js.map +0 -1
  114. package/lib/module/OkVerify/types.js +0 -2
  115. package/lib/module/OkVerify/types.js.map +0 -1
  116. package/lib/typescript/OkCollect/Helpers.d.ts +0 -9
  117. package/lib/typescript/OkCollect/OkHiLocationManager.d.ts +0 -7
  118. package/lib/typescript/OkCollect/Spinner.d.ts +0 -5
  119. package/lib/typescript/OkCollect/Util.d.ts +0 -31
  120. package/lib/typescript/OkCollect/index.d.ts +0 -3
  121. package/lib/typescript/OkCollect/types.d.ts +0 -139
  122. package/lib/typescript/OkCore/Helpers.d.ts +0 -95
  123. package/lib/typescript/OkCore/OkHiException.d.ts +0 -81
  124. package/lib/typescript/OkCore/OkHiMode.d.ts +0 -7
  125. package/lib/typescript/OkCore/_helpers.d.ts +0 -3
  126. package/lib/typescript/OkCore/_types.d.ts +0 -38
  127. package/lib/typescript/OkCore/index.d.ts +0 -17
  128. package/lib/typescript/OkCore/types.d.ts +0 -203
  129. package/lib/typescript/OkHiNativeModule/index.d.ts +0 -48
  130. package/lib/typescript/OkVerify/index.d.ts +0 -65
  131. package/lib/typescript/OkVerify/types.d.ts +0 -0
  132. package/lib/typescript/index.d.ts +0 -3
  133. package/react-native-okhi.podspec +0 -35
  134. package/src/OkCollect/Helpers.ts +0 -53
  135. package/src/OkCollect/OkHiLocationManager.tsx +0 -391
  136. package/src/OkCollect/Spinner.tsx +0 -18
  137. package/src/OkCollect/Util.ts +0 -270
  138. package/src/OkCollect/app.json +0 -4
  139. package/src/OkCollect/index.ts +0 -3
  140. package/src/OkCollect/types.ts +0 -154
  141. package/src/OkCore/Helpers.ts +0 -477
  142. package/src/OkCore/OkHiException.ts +0 -93
  143. package/src/OkCore/OkHiMode.ts +0 -7
  144. package/src/OkCore/_helpers.ts +0 -47
  145. package/src/OkCore/_types.ts +0 -37
  146. package/src/OkCore/index.ts +0 -87
  147. package/src/OkCore/types.ts +0 -235
  148. package/src/OkHiNativeModule/index.ts +0 -92
  149. package/src/OkVerify/index.ts +0 -259
  150. package/src/OkVerify/types.ts +0 -0
  151. /package/lib/commonjs/{OkVerify/types.js → types.js} +0 -0
package/ios/Okhi.swift DELETED
@@ -1,325 +0,0 @@
1
- import UIKit
2
- import OkHi
3
- import CoreLocation
4
-
5
- @objc(Okhi)
6
- class Okhi: RCTEventEmitter {
7
- private enum LocationPermissionRequestType: String {
8
- case whenInUse = "whenInUse"
9
- case always = "always"
10
- }
11
- private var currentLocationPermissionRequestType: LocationPermissionRequestType = .always
12
- private var resolve: RCTPromiseResolveBlock?
13
- private var reject: RCTPromiseRejectBlock?
14
- private var initResolve: RCTPromiseResolveBlock?
15
- private var initReject: RCTPromiseRejectBlock?
16
- private var didChangeLocationPermissionStatusResolve: RCTPromiseResolveBlock?
17
- private var didChangeLocationPermissionStatusReject: RCTPromiseRejectBlock?
18
- private var okVerify: OkVerify
19
- private var okhiLocationManager: OkHiLocationManager
20
-
21
- override init() {
22
- okVerify = OkVerify()
23
- okhiLocationManager = OkHiLocationManager()
24
- super.init()
25
- okVerify.delegate = self
26
- }
27
-
28
- override static func requiresMainQueueSetup() -> Bool {
29
- return false
30
- }
31
-
32
- @objc(multiply:withB:withResolver:withRejecter:)
33
- func multiply(a: Float, b: Float, resolve:RCTPromiseResolveBlock,reject:RCTPromiseRejectBlock) -> Void {
34
- resolve(a*b)
35
- }
36
-
37
- @objc func isLocationServicesEnabled(_ resolve:RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
38
- resolve(okVerify.isLocationServicesEnabled())
39
- }
40
-
41
- @objc func isLocationPermissionGranted(_ resolve:RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
42
- resolve(okVerify.isLocationPermissionGranted())
43
- }
44
-
45
- @objc func isBackgroundLocationPermissionGranted(_ resolve: RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
46
- resolve(okVerify.isBackgroundLocationPermissionGranted())
47
- }
48
-
49
- @objc func getSystemVersion(_ resolve: RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
50
- resolve(UIDevice.current.systemVersion)
51
- }
52
-
53
- @objc func requestLocationPermission(_ resolve:@escaping RCTPromiseResolveBlock, reject:@escaping RCTPromiseRejectBlock) {
54
- self.didChangeLocationPermissionStatusResolve = resolve
55
- self.didChangeLocationPermissionStatusReject = reject
56
- currentLocationPermissionRequestType = .whenInUse
57
- okVerify.requestLocationPermission()
58
- }
59
-
60
- @objc func requestBackgroundLocationPermission(_ resolve:@escaping RCTPromiseResolveBlock, reject:@escaping RCTPromiseRejectBlock) {
61
- self.didChangeLocationPermissionStatusResolve = resolve
62
- self.didChangeLocationPermissionStatusReject = reject
63
- currentLocationPermissionRequestType = .always
64
- okVerify.requestBackgroundLocationPermission()
65
- }
66
-
67
- @objc func requestEnableLocationServices(_ resolve: RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
68
- if let url = URL.init(string: UIApplication.openSettingsURLString) {
69
- UIApplication.shared.open(url, options: [:], completionHandler: nil)
70
- }
71
- resolve(NSNull())
72
- }
73
-
74
- @objc func openAppSettings(_ resolve: RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
75
- OkVerify.openAppSettings()
76
- resolve(NSNull())
77
- }
78
-
79
- @objc func getAuthToken(_ branchId: String, clientKey: String, resolve:RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
80
- resolve("Token " + "\(branchId):\(clientKey)".toBase64())
81
- }
82
-
83
- @objc func initializeIOS(_ branchId: String, clientKey: String, environment: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
84
- self.initResolve = resolve
85
- self.initReject = reject
86
- let appDetails = getAppDetails()
87
- let okHiAppContext = OkHiAppContext().withAppMeta(name: appDetails.name, version: appDetails.version, build: appDetails.version)
88
- let okHiAuth = OkHiAuth(
89
- branchId: branchId,
90
- clientKey: clientKey,
91
- environment: environment == "prod" ? .prod : .sandbox,
92
- appContext: okHiAppContext
93
- )
94
- OkCollect.initialize(with: okHiAuth)
95
- OkVerify.initialize(with: okHiAuth, launchOptions: nil)
96
- resolve(true)
97
- }
98
-
99
- @objc func startAddressVerification(_ token: String, phoneNumber: String, userId: String, locationId: String, lat: Double, lon: Double, usageTypes: [String], resolve:@escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
100
- self.resolve = resolve
101
- self.reject = reject
102
- var enumUsageTypes: [OkHiUsageType] = []
103
- for usageType in usageTypes {
104
- if usageType == OkHiUsageType.physicalVerification.rawValue {
105
- enumUsageTypes.append(.physicalVerification)
106
- } else if usageType == OkHiUsageType.digitalVerification.rawValue {
107
- enumUsageTypes.append(.digitalVerification)
108
- } else if usageType == OkHiUsageType.addressBook.rawValue {
109
- enumUsageTypes.append(.addressBook)
110
- }
111
- }
112
- let user = OkHiUser(phoneNumber: phoneNumber).with(token: token).with(okHiId: userId)
113
- let location = OkHiLocation(identifier: locationId, lat: lat, lon: lon, usageTypes: enumUsageTypes)
114
- let response = OkCollectSuccessResponse(user: user, location: location)
115
- okVerify.startAddressVerification(response: response)
116
- }
117
-
118
- @objc func stopAddressVerification(_ phoneNumber: String, locationId: String, resolve:@escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
119
- self.resolve = resolve
120
- self.reject = reject
121
- okVerify.stopAddressVerification(locationId: locationId)
122
- }
123
-
124
- @objc func retriveLocationPermissionStatus(_ resolve: RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
125
- let manager = CLLocationManager()
126
- let status = fetchLocationPermissionStatus(status: getLocationAuthorizationStatus(manager: manager))
127
- resolve(status)
128
- }
129
-
130
- @objc func requestTrackingAuthorization(_ resolve:@escaping RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
131
- if #available(iOS 14.0, *) {
132
- OkAnalytics.requestTrackingAuthorization { trackingId in
133
- if let id = trackingId {
134
- resolve(id)
135
- } else {
136
- resolve(NSNull())
137
- }
138
- }
139
- } else {
140
- resolve(NSNull())
141
- }
142
- }
143
-
144
- @objc func isNotificationPermissionGranted(_ resolve:@escaping RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
145
- OkVerify.isNotificationPermissionGranted { result in
146
- resolve(result)
147
- }
148
- }
149
-
150
- @objc func requestNotificationPermission(_ resolve:@escaping RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
151
- OkVerify.requestNotificationPermission(registerForRemoteNotifications: false) { result in
152
- resolve(result)
153
- }
154
- }
155
-
156
- @objc func fetchCurrentLocation(_ resolve:@escaping RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
157
- okhiLocationManager.getCurrentLocation { result in
158
- if let location = result {
159
- let locationDict: NSDictionary = [
160
- "lat": location.coordinate.latitude,
161
- "lng": location.coordinate.longitude,
162
- "accuracy": location.horizontalAccuracy
163
- ]
164
- resolve(locationDict)
165
- } else {
166
- resolve(NSNull())
167
- }
168
- }
169
- }
170
-
171
- @objc func retrieveDeviceInfo(_ resolve:@escaping RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
172
- let deviceInfoDict: NSDictionary = [
173
- "manufacturer": "Apple",
174
- "model": UIDevice.current.modelName,
175
- "osVersion": UIDevice.current.systemVersion,
176
- "platform": "ios"
177
- ]
178
- resolve(deviceInfoDict)
179
- }
180
-
181
- override func supportedEvents() -> [String]! {
182
- return ["onLocationPermissionStatusUpdate"]
183
- }
184
-
185
- private func fetchLocationPermissionStatus(status: CLAuthorizationStatus) -> String {
186
- var str: String = ""
187
- switch status {
188
- case .notDetermined:
189
- str = "notDetermined"
190
- case .restricted:
191
- str = "restricted"
192
- case .denied:
193
- str = "denied"
194
- case .authorizedAlways:
195
- str = "authorizedAlways"
196
- case .authorizedWhenInUse:
197
- str = "authorizedWhenInUse"
198
- case .authorized:
199
- str = "authorized"
200
- @unknown default:
201
- str = "unknown"
202
- }
203
- return str
204
- }
205
-
206
- @objc public func fetchIOSLocationPermissionStatus(_ resolve:@escaping RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
207
- let manager = CLLocationManager()
208
- resolve(fetchLocationPermissionStatus(status: getLocationAuthorizationStatus(manager: manager)))
209
- }
210
-
211
- @objc public func onStart(_ resolve:@escaping RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
212
- OkVerify.onStart { result in
213
- resolve(result)
214
- }
215
- }
216
-
217
- @objc public func fetchRegisteredGeofences(_ resolve: RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
218
- do {
219
- let geofences: [[String: Any]] = OkVerify.fetchRegisteredGeofences()
220
- let jsonData = try JSONSerialization.data(withJSONObject: geofences, options: [])
221
- guard let jsonString = String(data: jsonData, encoding: .utf8) else {
222
- resolve(NSNull())
223
- return
224
- }
225
- resolve(jsonString)
226
- } catch {
227
- resolve(NSNull())
228
- }
229
- }
230
-
231
- @objc public func getLocationAccuracyLevel(_ resolve:@escaping RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) {
232
- let level = OkVerify.getLocationAccuracyLevel()
233
- resolve(level)
234
- }
235
- }
236
-
237
- // MARK: - OkHi Utils
238
- extension Okhi {
239
- func getLocationAuthorizationStatus(manager: CLLocationManager) -> CLAuthorizationStatus {
240
- if #available(iOS 14.0, *) {
241
- return manager.authorizationStatus
242
- } else {
243
- return CLLocationManager.authorizationStatus()
244
- }
245
- }
246
-
247
- func getAppDetails() -> (name: String, version: String, build: String) {
248
- let bundle = Bundle.main
249
- let appName = bundle.object(forInfoDictionaryKey: "CFBundleDisplayName") as? String ??
250
- bundle.object(forInfoDictionaryKey: "CFBundleName") as? String ?? "Unknown App Name"
251
- let version = bundle.object(forInfoDictionaryKey: "CFBundleShortVersionString") as? String ?? "Unknown Version"
252
- let build = bundle.object(forInfoDictionaryKey: "CFBundleVersion") as? String ?? "Unknown Build"
253
- return (name: appName, version: version, build: build)
254
- }
255
- }
256
-
257
- // MARK: - OkVerify Delegates
258
- extension Okhi: OkVerifyDelegate {
259
- func verify(_ okverify: OkVerify, didUpdateLocationPermissionStatus status: CLAuthorizationStatus) {
260
- sendEvent(withName: "onLocationPermissionStatusUpdate", body: fetchLocationPermissionStatus(status: status))
261
- }
262
-
263
- func verify(_ okverify: OkVerify, didChangeLocationPermissionStatus requestType: OkVerifyLocationPermissionRequestType, status: Bool) {
264
- if let resolve = self.didChangeLocationPermissionStatusResolve {
265
- if currentLocationPermissionRequestType == .whenInUse && requestType == .whenInUse {
266
- resolve(status)
267
- } else if currentLocationPermissionRequestType == .always && requestType == .always {
268
- resolve(status)
269
- } else {
270
- resolve(false)
271
- }
272
- self.didChangeLocationPermissionStatusResolve = nil
273
- self.didChangeLocationPermissionStatusReject = nil
274
- }
275
- }
276
-
277
- func verify(_ okverify: OkVerify, didInitialize result: Bool) {
278
- guard let resolve = initResolve else { return }
279
- resolve(result)
280
- self.initResolve = nil
281
- self.initReject = nil
282
- }
283
-
284
- func verify(_ okverify: OkVerify, didEncounterError error: OkVerifyError) {
285
- if let initReject = initReject {
286
- initReject(error.code, error.message, error)
287
- self.initResolve = nil
288
- self.initReject = nil
289
- } else {
290
- guard let reject = reject else { return }
291
- reject(error.code, error.message, error)
292
- self.reject = nil
293
- }
294
- }
295
-
296
- func verify(_ okverify: OkVerify, didStartAddressVerificationFor locationId: String) {
297
- guard let resolve = resolve else { return }
298
- resolve(locationId)
299
- self.resolve = nil
300
- }
301
-
302
- func verify(_ okverify: OkVerify, didStopVerificationFor locationId: String) {
303
- guard let resolve = resolve else { return }
304
- resolve(locationId)
305
- self.resolve = nil
306
- }
307
-
308
- func verify(_ okverify: OkVerify, didUpdateNotificationPermissionStatus status: Bool) {
309
-
310
- }
311
- }
312
-
313
- extension UIDevice {
314
- var modelName: String {
315
- var systemInfo = utsname()
316
- uname(&systemInfo)
317
- let machineMirror = Mirror(reflecting: systemInfo.machine)
318
- let identifier = machineMirror.children.reduce("") { identifier, element in
319
- guard let value = element.value as? Int8, value != 0 else { return identifier }
320
- return identifier + String(UnicodeScalar(UInt8(value)))
321
- }
322
- return identifier
323
- }
324
- }
325
-
@@ -1,283 +0,0 @@
1
- // !$*UTF8*$!
2
- {
3
- archiveVersion = 1;
4
- classes = {
5
- };
6
- objectVersion = 46;
7
- objects = {
8
-
9
- /* Begin PBXBuildFile section */
10
- 5E555C0D2413F4C50049A1A2 /* Okhi.m in Sources */ = {isa = PBXBuildFile; fileRef = B3E7B5891CC2AC0600A0062D /* Okhi.m */; };
11
- F4FF95D7245B92E800C19C63 /* Okhi.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4FF95D6245B92E800C19C63 /* Okhi.swift */; };
12
- /* End PBXBuildFile section */
13
-
14
- /* Begin PBXCopyFilesBuildPhase section */
15
- 58B511D91A9E6C8500147676 /* CopyFiles */ = {
16
- isa = PBXCopyFilesBuildPhase;
17
- buildActionMask = 2147483647;
18
- dstPath = "include/$(PRODUCT_NAME)";
19
- dstSubfolderSpec = 16;
20
- files = (
21
- );
22
- runOnlyForDeploymentPostprocessing = 0;
23
- };
24
- /* End PBXCopyFilesBuildPhase section */
25
-
26
- /* Begin PBXFileReference section */
27
- 134814201AA4EA6300B7C361 /* libOkhi.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libOkhi.a; sourceTree = BUILT_PRODUCTS_DIR; };
28
- B3E7B5891CC2AC0600A0062D /* Okhi.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Okhi.m; sourceTree = "<group>"; };
29
- F4FF95D5245B92E700C19C63 /* Okhi-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Okhi-Bridging-Header.h"; sourceTree = "<group>"; };
30
- F4FF95D6245B92E800C19C63 /* Okhi.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Okhi.swift; sourceTree = "<group>"; };
31
- /* End PBXFileReference section */
32
-
33
- /* Begin PBXFrameworksBuildPhase section */
34
- 58B511D81A9E6C8500147676 /* Frameworks */ = {
35
- isa = PBXFrameworksBuildPhase;
36
- buildActionMask = 2147483647;
37
- files = (
38
- );
39
- runOnlyForDeploymentPostprocessing = 0;
40
- };
41
- /* End PBXFrameworksBuildPhase section */
42
-
43
- /* Begin PBXGroup section */
44
- 134814211AA4EA7D00B7C361 /* Products */ = {
45
- isa = PBXGroup;
46
- children = (
47
- 134814201AA4EA6300B7C361 /* libOkhi.a */,
48
- );
49
- name = Products;
50
- sourceTree = "<group>";
51
- };
52
- 58B511D21A9E6C8500147676 = {
53
- isa = PBXGroup;
54
- children = (
55
- F4FF95D6245B92E800C19C63 /* Okhi.swift */,
56
- B3E7B5891CC2AC0600A0062D /* Okhi.m */,
57
- F4FF95D5245B92E700C19C63 /* Okhi-Bridging-Header.h */,
58
- 134814211AA4EA7D00B7C361 /* Products */,
59
- );
60
- sourceTree = "<group>";
61
- };
62
- /* End PBXGroup section */
63
-
64
- /* Begin PBXNativeTarget section */
65
- 58B511DA1A9E6C8500147676 /* Okhi */ = {
66
- isa = PBXNativeTarget;
67
- buildConfigurationList = 58B511EF1A9E6C8500147676 /* Build configuration list for PBXNativeTarget "Okhi" */;
68
- buildPhases = (
69
- 58B511D71A9E6C8500147676 /* Sources */,
70
- 58B511D81A9E6C8500147676 /* Frameworks */,
71
- 58B511D91A9E6C8500147676 /* CopyFiles */,
72
- );
73
- buildRules = (
74
- );
75
- dependencies = (
76
- );
77
- name = Okhi;
78
- productName = RCTDataManager;
79
- productReference = 134814201AA4EA6300B7C361 /* libOkhi.a */;
80
- productType = "com.apple.product-type.library.static";
81
- };
82
- /* End PBXNativeTarget section */
83
-
84
- /* Begin PBXProject section */
85
- 58B511D31A9E6C8500147676 /* Project object */ = {
86
- isa = PBXProject;
87
- attributes = {
88
- LastUpgradeCheck = 0920;
89
- ORGANIZATIONNAME = Facebook;
90
- TargetAttributes = {
91
- 58B511DA1A9E6C8500147676 = {
92
- CreatedOnToolsVersion = 6.1.1;
93
- };
94
- };
95
- };
96
- buildConfigurationList = 58B511D61A9E6C8500147676 /* Build configuration list for PBXProject "Okhi" */;
97
- compatibilityVersion = "Xcode 3.2";
98
- developmentRegion = English;
99
- hasScannedForEncodings = 0;
100
- knownRegions = (
101
- English,
102
- en,
103
- );
104
- mainGroup = 58B511D21A9E6C8500147676;
105
- productRefGroup = 58B511D21A9E6C8500147676;
106
- projectDirPath = "";
107
- projectRoot = "";
108
- targets = (
109
- 58B511DA1A9E6C8500147676 /* Okhi */,
110
- );
111
- };
112
- /* End PBXProject section */
113
-
114
- /* Begin PBXSourcesBuildPhase section */
115
- 58B511D71A9E6C8500147676 /* Sources */ = {
116
- isa = PBXSourcesBuildPhase;
117
- buildActionMask = 2147483647;
118
- files = (
119
- F4FF95D7245B92E800C19C63 /* Okhi.swift in Sources */,
120
- B3E7B58A1CC2AC0600A0062D /* Okhi.m in Sources */,
121
- );
122
- runOnlyForDeploymentPostprocessing = 0;
123
- };
124
- /* End PBXSourcesBuildPhase section */
125
-
126
- /* Begin XCBuildConfiguration section */
127
- 58B511ED1A9E6C8500147676 /* Debug */ = {
128
- isa = XCBuildConfiguration;
129
- buildSettings = {
130
- ALWAYS_SEARCH_USER_PATHS = NO;
131
- CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
132
- CLANG_CXX_LIBRARY = "libc++";
133
- CLANG_ENABLE_MODULES = YES;
134
- CLANG_ENABLE_OBJC_ARC = YES;
135
- CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
136
- CLANG_WARN_BOOL_CONVERSION = YES;
137
- CLANG_WARN_COMMA = YES;
138
- CLANG_WARN_CONSTANT_CONVERSION = YES;
139
- CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
140
- CLANG_WARN_EMPTY_BODY = YES;
141
- CLANG_WARN_ENUM_CONVERSION = YES;
142
- CLANG_WARN_INFINITE_RECURSION = YES;
143
- CLANG_WARN_INT_CONVERSION = YES;
144
- CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
145
- CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
146
- CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
147
- CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
148
- CLANG_WARN_STRICT_PROTOTYPES = YES;
149
- CLANG_WARN_SUSPICIOUS_MOVE = YES;
150
- CLANG_WARN_UNREACHABLE_CODE = YES;
151
- CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
152
- COPY_PHASE_STRIP = NO;
153
- ENABLE_STRICT_OBJC_MSGSEND = YES;
154
- ENABLE_TESTABILITY = YES;
155
- "EXCLUDED_ARCHS[sdk=*]" = arm64;
156
- GCC_C_LANGUAGE_STANDARD = gnu99;
157
- GCC_DYNAMIC_NO_PIC = NO;
158
- GCC_NO_COMMON_BLOCKS = YES;
159
- GCC_OPTIMIZATION_LEVEL = 0;
160
- GCC_PREPROCESSOR_DEFINITIONS = (
161
- "DEBUG=1",
162
- "$(inherited)",
163
- );
164
- GCC_SYMBOLS_PRIVATE_EXTERN = NO;
165
- GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
166
- GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
167
- GCC_WARN_UNDECLARED_SELECTOR = YES;
168
- GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
169
- GCC_WARN_UNUSED_FUNCTION = YES;
170
- GCC_WARN_UNUSED_VARIABLE = YES;
171
- IPHONEOS_DEPLOYMENT_TARGET = 8.0;
172
- MTL_ENABLE_DEBUG_INFO = YES;
173
- ONLY_ACTIVE_ARCH = YES;
174
- SDKROOT = iphoneos;
175
- };
176
- name = Debug;
177
- };
178
- 58B511EE1A9E6C8500147676 /* Release */ = {
179
- isa = XCBuildConfiguration;
180
- buildSettings = {
181
- ALWAYS_SEARCH_USER_PATHS = NO;
182
- CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
183
- CLANG_CXX_LIBRARY = "libc++";
184
- CLANG_ENABLE_MODULES = YES;
185
- CLANG_ENABLE_OBJC_ARC = YES;
186
- CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
187
- CLANG_WARN_BOOL_CONVERSION = YES;
188
- CLANG_WARN_COMMA = YES;
189
- CLANG_WARN_CONSTANT_CONVERSION = YES;
190
- CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
191
- CLANG_WARN_EMPTY_BODY = YES;
192
- CLANG_WARN_ENUM_CONVERSION = YES;
193
- CLANG_WARN_INFINITE_RECURSION = YES;
194
- CLANG_WARN_INT_CONVERSION = YES;
195
- CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
196
- CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
197
- CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
198
- CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
199
- CLANG_WARN_STRICT_PROTOTYPES = YES;
200
- CLANG_WARN_SUSPICIOUS_MOVE = YES;
201
- CLANG_WARN_UNREACHABLE_CODE = YES;
202
- CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
203
- COPY_PHASE_STRIP = YES;
204
- ENABLE_NS_ASSERTIONS = NO;
205
- ENABLE_STRICT_OBJC_MSGSEND = YES;
206
- "EXCLUDED_ARCHS[sdk=*]" = arm64;
207
- GCC_C_LANGUAGE_STANDARD = gnu99;
208
- GCC_NO_COMMON_BLOCKS = YES;
209
- GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
210
- GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
211
- GCC_WARN_UNDECLARED_SELECTOR = YES;
212
- GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
213
- GCC_WARN_UNUSED_FUNCTION = YES;
214
- GCC_WARN_UNUSED_VARIABLE = YES;
215
- IPHONEOS_DEPLOYMENT_TARGET = 8.0;
216
- MTL_ENABLE_DEBUG_INFO = NO;
217
- SDKROOT = iphoneos;
218
- VALIDATE_PRODUCT = YES;
219
- };
220
- name = Release;
221
- };
222
- 58B511F01A9E6C8500147676 /* Debug */ = {
223
- isa = XCBuildConfiguration;
224
- buildSettings = {
225
- HEADER_SEARCH_PATHS = (
226
- "$(inherited)",
227
- /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
228
- "$(SRCROOT)/../../../React/**",
229
- "$(SRCROOT)/../../react-native/React/**",
230
- );
231
- LIBRARY_SEARCH_PATHS = "$(inherited)";
232
- OTHER_LDFLAGS = "-ObjC";
233
- PRODUCT_NAME = Okhi;
234
- SKIP_INSTALL = YES;
235
- SWIFT_OBJC_BRIDGING_HEADER = "Okhi-Bridging-Header.h";
236
- SWIFT_OPTIMIZATION_LEVEL = "-Onone";
237
- SWIFT_VERSION = 5.0;
238
- };
239
- name = Debug;
240
- };
241
- 58B511F11A9E6C8500147676 /* Release */ = {
242
- isa = XCBuildConfiguration;
243
- buildSettings = {
244
- HEADER_SEARCH_PATHS = (
245
- "$(inherited)",
246
- /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
247
- "$(SRCROOT)/../../../React/**",
248
- "$(SRCROOT)/../../react-native/React/**",
249
- );
250
- LIBRARY_SEARCH_PATHS = "$(inherited)";
251
- OTHER_LDFLAGS = "-ObjC";
252
- PRODUCT_NAME = Okhi;
253
- SKIP_INSTALL = YES;
254
- SWIFT_OBJC_BRIDGING_HEADER = "Okhi-Bridging-Header.h";
255
- SWIFT_VERSION = 5.0;
256
- };
257
- name = Release;
258
- };
259
- /* End XCBuildConfiguration section */
260
-
261
- /* Begin XCConfigurationList section */
262
- 58B511D61A9E6C8500147676 /* Build configuration list for PBXProject "Okhi" */ = {
263
- isa = XCConfigurationList;
264
- buildConfigurations = (
265
- 58B511ED1A9E6C8500147676 /* Debug */,
266
- 58B511EE1A9E6C8500147676 /* Release */,
267
- );
268
- defaultConfigurationIsVisible = 0;
269
- defaultConfigurationName = Release;
270
- };
271
- 58B511EF1A9E6C8500147676 /* Build configuration list for PBXNativeTarget "Okhi" */ = {
272
- isa = XCConfigurationList;
273
- buildConfigurations = (
274
- 58B511F01A9E6C8500147676 /* Debug */,
275
- 58B511F11A9E6C8500147676 /* Release */,
276
- );
277
- defaultConfigurationIsVisible = 0;
278
- defaultConfigurationName = Release;
279
- };
280
- /* End XCConfigurationList section */
281
- };
282
- rootObject = 58B511D31A9E6C8500147676 /* Project object */;
283
- }
@@ -1,40 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.canStartAddressCreation = void 0;
7
- var _reactNative = require("react-native");
8
- var _Helpers = require("../OkCore/Helpers");
9
- var _OkHiException = require("../OkCore/OkHiException");
10
- /**
11
- * Checks whether all necessary permissions and services are available in order to start the address creation process.
12
- * @param {Object} configuration Object that determines whether or not to request these permissions and services from the user.
13
- * @param {boolean} configuration.requestServices Flag that determines whether to request the services from the user.
14
- * @returns {Promise<boolean>} A promise that resolves to a boolean value indicating whether or not all conditions are met to start the address creation process.
15
- */
16
- const canStartAddressCreation = configuration => {
17
- return new Promise(async (resolve, reject) => {
18
- const requestServices = configuration && configuration.requestServices;
19
- const locationServicesStatus = await (0, _Helpers.isLocationServicesEnabled)();
20
- const googlePlayServices = _reactNative.Platform.OS === 'android' ? await (0, _Helpers.isGooglePlayServicesAvailable)() : true;
21
- const locationPerm = await (0, _Helpers.isLocationPermissionGranted)();
22
- if (!requestServices) {
23
- resolve(locationServicesStatus && googlePlayServices && locationPerm);
24
- return;
25
- }
26
- if (!locationServicesStatus && _reactNative.Platform.OS === 'ios') {
27
- reject(new _OkHiException.OkHiException({
28
- code: _OkHiException.OkHiException.SERVICE_UNAVAILABLE_CODE,
29
- message: 'Location services is unavailable'
30
- }));
31
- } else {
32
- const locationServicesRequestStatus = _reactNative.Platform.OS === 'ios' ? true : await (0, _Helpers.requestEnableLocationServices)();
33
- const gPlayServices = _reactNative.Platform.OS === 'android' ? await (0, _Helpers.requestEnableGooglePlayServices)() : true;
34
- const locationPermStatus = await (0, _Helpers.requestLocationPermission)();
35
- resolve(locationServicesRequestStatus && gPlayServices && locationPermStatus);
36
- }
37
- });
38
- };
39
- exports.canStartAddressCreation = canStartAddressCreation;
40
- //# sourceMappingURL=Helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_reactNative","require","_Helpers","_OkHiException","canStartAddressCreation","configuration","Promise","resolve","reject","requestServices","locationServicesStatus","isLocationServicesEnabled","googlePlayServices","Platform","OS","isGooglePlayServicesAvailable","locationPerm","isLocationPermissionGranted","OkHiException","code","SERVICE_UNAVAILABLE_CODE","message","locationServicesRequestStatus","requestEnableLocationServices","gPlayServices","requestEnableGooglePlayServices","locationPermStatus","requestLocationPermission","exports"],"sources":["Helpers.ts"],"sourcesContent":["import { Platform } from 'react-native';\nimport {\n isLocationServicesEnabled,\n isLocationPermissionGranted,\n isGooglePlayServicesAvailable,\n requestEnableLocationServices,\n requestEnableGooglePlayServices,\n requestLocationPermission,\n} from '../OkCore/Helpers';\nimport { OkHiException } from '../OkCore/OkHiException';\n\n/**\n * Checks whether all necessary permissions and services are available in order to start the address creation process.\n * @param {Object} configuration Object that determines whether or not to request these permissions and services from the user.\n * @param {boolean} configuration.requestServices Flag that determines whether to request the services from the user.\n * @returns {Promise<boolean>} A promise that resolves to a boolean value indicating whether or not all conditions are met to start the address creation process.\n */\nexport const canStartAddressCreation = (configuration?: {\n requestServices?: boolean;\n}): Promise<boolean> => {\n return new Promise(async (resolve, reject) => {\n const requestServices = configuration && configuration.requestServices;\n const locationServicesStatus = await isLocationServicesEnabled();\n const googlePlayServices =\n Platform.OS === 'android' ? await isGooglePlayServicesAvailable() : true;\n const locationPerm = await isLocationPermissionGranted();\n if (!requestServices) {\n resolve(locationServicesStatus && googlePlayServices && locationPerm);\n return;\n }\n if (!locationServicesStatus && Platform.OS === 'ios') {\n reject(\n new OkHiException({\n code: OkHiException.SERVICE_UNAVAILABLE_CODE,\n message: 'Location services is unavailable',\n })\n );\n } else {\n const locationServicesRequestStatus =\n Platform.OS === 'ios'\n ? true\n : ((await requestEnableLocationServices()) as boolean);\n const gPlayServices =\n Platform.OS === 'android'\n ? await requestEnableGooglePlayServices()\n : true;\n const locationPermStatus = await requestLocationPermission();\n resolve(\n locationServicesRequestStatus && gPlayServices && locationPermStatus\n );\n }\n });\n};\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAQA,IAAAE,cAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMG,uBAAuB,GAAIC,aAEvC,IAAuB;EACtB,OAAO,IAAIC,OAAO,CAAC,OAAOC,OAAO,EAAEC,MAAM,KAAK;IAC5C,MAAMC,eAAe,GAAGJ,aAAa,IAAIA,aAAa,CAACI,eAAe;IACtE,MAAMC,sBAAsB,GAAG,MAAM,IAAAC,kCAAyB,EAAC,CAAC;IAChE,MAAMC,kBAAkB,GACtBC,qBAAQ,CAACC,EAAE,KAAK,SAAS,GAAG,MAAM,IAAAC,sCAA6B,EAAC,CAAC,GAAG,IAAI;IAC1E,MAAMC,YAAY,GAAG,MAAM,IAAAC,oCAA2B,EAAC,CAAC;IACxD,IAAI,CAACR,eAAe,EAAE;MACpBF,OAAO,CAACG,sBAAsB,IAAIE,kBAAkB,IAAII,YAAY,CAAC;MACrE;IACF;IACA,IAAI,CAACN,sBAAsB,IAAIG,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;MACpDN,MAAM,CACJ,IAAIU,4BAAa,CAAC;QAChBC,IAAI,EAAED,4BAAa,CAACE,wBAAwB;QAC5CC,OAAO,EAAE;MACX,CAAC,CACH,CAAC;IACH,CAAC,MAAM;MACL,MAAMC,6BAA6B,GACjCT,qBAAQ,CAACC,EAAE,KAAK,KAAK,GACjB,IAAI,GACF,MAAM,IAAAS,sCAA6B,EAAC,CAAc;MAC1D,MAAMC,aAAa,GACjBX,qBAAQ,CAACC,EAAE,KAAK,SAAS,GACrB,MAAM,IAAAW,wCAA+B,EAAC,CAAC,GACvC,IAAI;MACV,MAAMC,kBAAkB,GAAG,MAAM,IAAAC,kCAAyB,EAAC,CAAC;MAC5DpB,OAAO,CACLe,6BAA6B,IAAIE,aAAa,IAAIE,kBACpD,CAAC;IACH;EACF,CAAC,CAAC;AACJ,CAAC;AAACE,OAAA,CAAAxB,uBAAA,GAAAA,uBAAA","ignoreList":[]}