@infilectorg/infiviz-shots-react-sdk 1.0.21 → 1.0.26

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 (22) hide show
  1. package/android/src/main/java/com/infilect/infivizshotsreactsdk/InfivizShotsReactSdkModule.kt +65 -3
  2. package/ios/InfivizShotSDK.xcframework/Info.plist +5 -5
  3. package/ios/InfivizShotSDK.xcframework/ios-arm64/InfivizShotSDK.framework/Assets.car +0 -0
  4. package/ios/InfivizShotSDK.xcframework/ios-arm64/InfivizShotSDK.framework/InfivizShotSDK +0 -0
  5. package/ios/InfivizShotSDK.xcframework/ios-arm64/InfivizShotSDK.framework/Modules/InfivizShotSDK.swiftmodule/arm64-apple-ios.abi.json +44 -44
  6. package/ios/InfivizShotSDK.xcframework/ios-arm64/InfivizShotSDK.framework/Modules/InfivizShotSDK.swiftmodule/arm64-apple-ios.swiftmodule +0 -0
  7. package/ios/InfivizShotSDK.xcframework/ios-arm64/InfivizShotSDK.framework/shotsSDK.storyboardc/xUL-ol-gRQ-view-6A8-mO-Rhi.nib +0 -0
  8. package/ios/InfivizShotSDK.xcframework/ios-arm64_x86_64-simulator/InfivizShotSDK.framework/Assets.car +0 -0
  9. package/ios/InfivizShotSDK.xcframework/ios-arm64_x86_64-simulator/InfivizShotSDK.framework/InfivizShotSDK +0 -0
  10. package/ios/InfivizShotSDK.xcframework/ios-arm64_x86_64-simulator/InfivizShotSDK.framework/Modules/InfivizShotSDK.swiftmodule/arm64-apple-ios-simulator.abi.json +44 -44
  11. package/ios/InfivizShotSDK.xcframework/ios-arm64_x86_64-simulator/InfivizShotSDK.framework/Modules/InfivizShotSDK.swiftmodule/arm64-apple-ios-simulator.swiftmodule +0 -0
  12. package/ios/InfivizShotSDK.xcframework/ios-arm64_x86_64-simulator/InfivizShotSDK.framework/Modules/InfivizShotSDK.swiftmodule/x86_64-apple-ios-simulator.abi.json +44 -44
  13. package/ios/InfivizShotSDK.xcframework/ios-arm64_x86_64-simulator/InfivizShotSDK.framework/Modules/InfivizShotSDK.swiftmodule/x86_64-apple-ios-simulator.swiftmodule +0 -0
  14. package/ios/InfivizShotSDK.xcframework/ios-arm64_x86_64-simulator/InfivizShotSDK.framework/shotsSDK.storyboardc/xUL-ol-gRQ-view-6A8-mO-Rhi.nib +0 -0
  15. package/ios/InfivizShotsReactSdk.m +3 -1
  16. package/ios/InfivizShotsReactSdk.swift +163 -108
  17. package/lib/module/NativeInfivizShotsReactSdk.js.map +1 -1
  18. package/lib/module/index.js +10 -12
  19. package/lib/module/index.js.map +1 -1
  20. package/package.json +1 -1
  21. package/src/NativeInfivizShotsReactSdk.tsx +6 -3
  22. package/src/index.tsx +13 -14
@@ -88,8 +88,8 @@ class InfivizShotsReactSdk: RCTEventEmitter {
88
88
  if self.hasListeners {
89
89
  let payload: [String: Any] = [
90
90
  "status": "200",
91
- "message": response,
92
- "sessionId": sessionId as String
91
+ "universalSessionID": response,
92
+ "temporarySessionID": sessionId as String
93
93
  ]
94
94
  self.sendEvent(withName: "SyncEvent", body: payload)
95
95
  }
@@ -126,8 +126,8 @@ class InfivizShotsReactSdk: RCTEventEmitter {
126
126
  if self.hasListeners {
127
127
  let payload: [String: Any] = [
128
128
  "status": "200",
129
- "message": message,
130
- "sessionId": sessionId
129
+ "universalSessionID": message,
130
+ "temporarySessionID": sessionId
131
131
  ]
132
132
  self.sendEvent(withName: "SyncEvent", body: payload)
133
133
  }
@@ -135,8 +135,8 @@ class InfivizShotsReactSdk: RCTEventEmitter {
135
135
  if self.hasListeners {
136
136
  let payload: [String: Any] = [
137
137
  "status": "400",
138
- "message": error.localizedDescription,
139
- "sessionId": sessionId
138
+ "universalSessionID": error,
139
+ "temporarySessionID": sessionId
140
140
  ]
141
141
  self.sendEvent(withName: "SyncEvent", body: payload)
142
142
  }
@@ -146,9 +146,6 @@ class InfivizShotsReactSdk: RCTEventEmitter {
146
146
 
147
147
  // MARK: - Get Session Result
148
148
 
149
-
150
-
151
-
152
149
  @objc
153
150
  func getSessionStatus(
154
151
  _ temporarySessionID: NSString,
@@ -189,15 +186,58 @@ class InfivizShotsReactSdk: RCTEventEmitter {
189
186
  }
190
187
  }
191
188
 
192
-
193
-
194
- // MARK: - Fetch Session Details
189
+ // MARK: - Fetch Session Details
195
190
  @objc
196
191
  func fetchSessionDetails(_ temporarySessionID: NSString, resolver resolve: @escaping RCTPromiseResolveBlock, rejecter reject: @escaping RCTPromiseRejectBlock) {
197
192
  InfivizShotsSDK.shared.fetchSessionDetails(temporarySessionID: temporarySessionID as String) { result in
198
193
  switch result {
199
194
  case .success(let value):
200
- resolve(value)
195
+
196
+ // Handle InfiSessions struct specifically
197
+ if let infiSession = value as? InfiSessions {
198
+ do {
199
+ // Convert InfiSessions to dictionary using JSON encoding/decoding
200
+ let jsonData = try JSONEncoder().encode(infiSession)
201
+ let jsonObject = try JSONSerialization.jsonObject(with: jsonData, options: [])
202
+
203
+ if let dict = jsonObject as? [String: Any] {
204
+ // Convert dictionary back to JSON string for consistency with TypeScript interface
205
+ let jsonString = String(data: jsonData, encoding: .utf8) ?? ""
206
+ resolve(jsonString)
207
+ } else {
208
+ print("InfivizShotsReactSdk: failed to convert InfiSessions to dictionary")
209
+ reject("SERIALIZATION_FAILED", "Failed to serialize InfiSessions", nil)
210
+ }
211
+ } catch {
212
+ print("InfivizShotsReactSdk: JSON encoding error: \(error)")
213
+ reject("SERIALIZATION_FAILED", "Failed to encode InfiSessions: \(error)", nil)
214
+ }
215
+ }
216
+ // Fallback for other types
217
+ else if let dict = value as? [String: Any] {
218
+ // Convert dictionary to JSON string for consistency with TypeScript interface
219
+ do {
220
+ let jsonData = try JSONSerialization.data(withJSONObject: dict, options: [])
221
+ let jsonString = String(data: jsonData, encoding: .utf8) ?? ""
222
+ resolve(jsonString)
223
+ } catch {
224
+ print("InfivizShotsReactSdk: failed to serialize dictionary to JSON: \(error)")
225
+ reject("SERIALIZATION_FAILED", "Failed to serialize dictionary: \(error)", nil)
226
+ }
227
+ } else if let jsonData = try? JSONSerialization.data(withJSONObject: value, options: []),
228
+ let jsonString = String(data: jsonData, encoding: .utf8) {
229
+ resolve(jsonString)
230
+ } else {
231
+ // If we can't serialize it, try to convert to string and then to JSON
232
+ do {
233
+ let jsonData = try JSONSerialization.data(withJSONObject: ["value": value], options: [])
234
+ let jsonString = String(data: jsonData, encoding: .utf8) ?? ""
235
+ resolve(jsonString)
236
+ } catch {
237
+ print("InfivizShotsReactSdk: failed to serialize fallback value: \(error)")
238
+ reject("SERIALIZATION_FAILED", "Failed to serialize value: \(error)", nil)
239
+ }
240
+ }
201
241
  case .failure(let error):
202
242
  reject("RESULT_FAILED", "Failed to get result: \(error)", nil)
203
243
  }
@@ -244,7 +284,7 @@ class InfivizShotsReactSdk: RCTEventEmitter {
244
284
  }
245
285
 
246
286
  // MARK: - Start Camera
247
- @objc(startCamera:storeTitle:storeId:photoType:category:maxPhoto:maxPhotoOneGo:resolver:rejecter:)
287
+ @objc(startCamera:storeTitle:storeId:photoType:category:maxPhoto:maxPhotoOneGo:metaData:resolver:rejecter:)
248
288
  func startCamera(_ taskName: NSString,
249
289
  storeTitle: NSString,
250
290
  storeId: NSString,
@@ -252,26 +292,32 @@ class InfivizShotsReactSdk: RCTEventEmitter {
252
292
  category: NSString,
253
293
  maxPhoto: NSNumber,
254
294
  maxPhotoOneGo: NSNumber,
295
+ metaData: NSDictionary,
255
296
  resolver resolve: @escaping RCTPromiseResolveBlock,
256
297
  rejecter reject: @escaping RCTPromiseRejectBlock) {
298
+
257
299
  DispatchQueue.main.async {
258
300
  // 1️⃣ Build the CameraContext just like before
301
+ let metadataDict: [String: Any]? = metaData as? [String: Any]
259
302
  let context = CameraContext(
260
- taskName: taskName as String,
261
- storeTitle: storeTitle as String,
262
- storeId: storeId as String,
263
- photoType: photoType as String,
264
- category: category as String,
265
- maxPhoto: maxPhoto.intValue,
303
+ taskName: taskName as String,
304
+ storeTitle: storeTitle as String,
305
+ storeId: storeId as String,
306
+ photoType: photoType as String,
307
+ category: category as String,
308
+ maxPhoto: maxPhoto.intValue,
266
309
  maxPhotoOneGo: maxPhotoOneGo.intValue,
267
- navigationController: nil
310
+ tempSessionId: nil,
311
+ imageURI: nil,
312
+ navigationController: nil,
313
+ retake: false,
314
+ metaData: metadataDict
268
315
  )
269
316
 
270
317
  // 2️⃣ Instantiate the SDK activity
271
318
  let activity = InfilectSDKCameraActivityForResult(cameraContext: context)
272
319
 
273
320
  // 3️⃣ Call its existing `start(completion:)` which will handle validation,
274
- // session lookup, pushing/presenting the VC, and return your sessionID.
275
321
  activity.start { result in
276
322
  switch result {
277
323
  case .success(let sessionID):
@@ -283,7 +329,6 @@ class InfivizShotsReactSdk: RCTEventEmitter {
283
329
  }
284
330
  }
285
331
 
286
-
287
332
  @objc
288
333
  func initialize(_ appID: NSString,
289
334
  authSecret: NSString,
@@ -355,7 +400,15 @@ class InfivizShotsReactSdk: RCTEventEmitter {
355
400
  navigationController: navigationController)
356
401
  realTimeView.viewIRResults(sessionID: sessionID as String) { result in
357
402
  switch result {
358
- case .success(let value): resolve(value)
403
+ case .success(let value):
404
+ do {
405
+ let jsonData = try JSONSerialization.data(withJSONObject: value, options: [])
406
+ let jsonString = String(data: jsonData, encoding: .utf8) ?? ""
407
+ resolve(jsonString)
408
+ } catch {
409
+ print("InfivizShotsReactSdk: failed to serialize viewIRResults value: \(error)")
410
+ reject("SERIALIZATION_FAILED", "Failed to serialize viewIRResults: \(error)", nil)
411
+ }
359
412
  case .failure(let error): reject("VIEW_IR_FAILED", error.localizedDescription, nil)
360
413
  }
361
414
  }
@@ -388,7 +441,7 @@ class InfivizShotsReactSdk: RCTEventEmitter {
388
441
  longitude: longitude as String,
389
442
  dateTimeStamp: dateTimeStamp as String) { result in
390
443
  switch result {
391
- case .success(let value): resolve(value)
444
+ case .success: resolve(())
392
445
  case .failure(let error): reject("ACTIONS_WORKFLOW_FAILED", error.localizedDescription, nil)
393
446
  }
394
447
  }
@@ -396,58 +449,58 @@ class InfivizShotsReactSdk: RCTEventEmitter {
396
449
  }
397
450
 
398
451
  @objc(resumeCamera:metaData:resolver:rejecter:)
399
- func resumeCamera(
400
- _ temporarySessionID: NSString,
401
- metaData: NSDictionary?,
402
- resolver resolve: @escaping RCTPromiseResolveBlock,
403
- rejecter reject: @escaping RCTPromiseRejectBlock
404
- ) {
405
- // Build whatever CameraContext your SDK needs. In your original UI code,
406
- // you were reading from text fields (e.g. shelfTextField.text, traderTextField.text, etc.).
407
- // In a module method you typically won't have those outlets available, so you'll
408
- // need to pass any required "taskName", "storeTitle" etc. from JS into this call
409
- // or hard‐code defaults here. For now, I'll show a minimal example:
410
-
411
- let context = CameraContext(
412
- taskName: "", // ← pass in from JS if you really need it
413
- storeTitle: "",
414
- storeId: "",
415
- photoType: "",
416
- category: "",
417
- maxPhoto: 0,
418
- maxPhotoOneGo: 0,
419
- navigationController: nil // ← no UIKit nav controller in RN module
420
- )
421
-
422
- // Instantiate your SDK's camera controller just like before:
423
- let controller = InfilectSDKCameraActivityForResult(cameraContext: context)
424
-
425
- // Convert NSDictionary to [String: Any] if provided
426
- let metadataDict: [String: Any]? = metaData as? [String: Any]
452
+ func resumeCamera(
453
+ _ temporarySessionID: NSString,
454
+ metaData: NSDictionary,
455
+ resolver resolve: @escaping RCTPromiseResolveBlock,
456
+ rejecter reject: @escaping RCTPromiseRejectBlock
457
+ ) {
458
+ // Build whatever CameraContext your SDK needs. In your original UI code,
459
+ // you were reading from text fields (e.g. shelfTextField.text, traderTextField.text, etc.).
460
+ // In a module method you typically won't have those outlets available, so you'll
461
+ // need to pass any required "taskName", "storeTitle" etc. from JS into this call
462
+ // or hard‐code defaults here. For now, I'll show a minimal example:
463
+
464
+ let context = CameraContext(
465
+ taskName: "", // ← pass in from JS if you really need it
466
+ storeTitle: "",
467
+ storeId: "",
468
+ photoType: "",
469
+ category: "",
470
+ maxPhoto: 0,
471
+ maxPhotoOneGo: 0,
472
+ navigationController: nil // ← no UIKit nav controller in RN module
473
+ )
474
+
475
+ // Instantiate your SDK's camera controller just like before:
476
+ let controller = InfilectSDKCameraActivityForResult(cameraContext: context)
477
+
478
+ // Convert NSDictionary to [String: Any]
479
+ let metadataDict: [String: Any]? = metaData as? [String: Any]
480
+
481
+ // Call the updated `resumeCamera(sessionID:metaData:completion:)` API with metadata
482
+ controller.resumeCamera(sessionID: temporarySessionID as String, metaData: metadataDict) { result in
483
+ switch result {
484
+ case .success(let successString):
485
+ // fulfill the JS promise with the returned string
486
+ resolve(successString)
427
487
 
428
- // Call the updated `resumeCamera(sessionID:metaData:completion:)` API with metadata
429
- controller.resumeCamera(sessionID: temporarySessionID as String, metaData: metadataDict) { result in
430
- switch result {
431
- case .success(let successString):
432
- // fulfill the JS promise with the returned string
433
- resolve(successString)
434
-
435
- case .failure(let sdkError):
436
- // reject the JS promise
437
- let nsError = sdkError as NSError
438
- reject(
439
- "ResumeCameraError",
440
- "Failed to resume camera: \(nsError.localizedDescription)",
441
- nsError
442
- )
443
- }
444
- }
445
- }
488
+ case .failure(let sdkError):
489
+ // reject the JS promise
490
+ let nsError = sdkError as NSError
491
+ reject(
492
+ "ResumeCameraError",
493
+ "Failed to resume camera: \(nsError.localizedDescription)",
494
+ nsError
495
+ )
496
+ }
497
+ }
498
+ }
446
499
 
447
500
  @objc
448
501
  func deletePhoto(
449
502
  _ imageURI: NSString,
450
- sessionID: NSString,
503
+ temporarySessionId: NSString,
451
504
  resolver resolve: @escaping RCTPromiseResolveBlock,
452
505
  rejecter reject: @escaping RCTPromiseRejectBlock
453
506
  ) {
@@ -462,7 +515,7 @@ class InfivizShotsReactSdk: RCTEventEmitter {
462
515
  navigationController: nil
463
516
  )
464
517
  let controller = InfilectSDKCameraActivityForResult(cameraContext: context)
465
- controller.deleteImage(imageID: imageURI as String, sessionID: sessionID as String) { result in
518
+ controller.deleteImage(imageID: imageURI as String, sessionID: temporarySessionId as String) { result in
466
519
  switch result {
467
520
  case .success(let successMessage):
468
521
  resolve(successMessage)
@@ -472,41 +525,43 @@ class InfivizShotsReactSdk: RCTEventEmitter {
472
525
  }
473
526
  }
474
527
 
475
- @objc
476
- func retakeImage(
477
- _ temporarySessionId: NSString,
478
- imageURL: String,
479
- resolver resolve: @escaping RCTPromiseResolveBlock,
480
- rejecter reject: @escaping RCTPromiseRejectBlock
481
- ) {
482
- // Build a minimal CameraContext. If your SDK truly needs values like
483
- // taskName, storeTitle, etc., pass them in from JS or hard‐code defaults here.
484
- let context = CameraContext(
485
- taskName: "",
486
- storeTitle: "",
487
- storeId: "",
488
- photoType: "",
489
- category: "",
490
- maxPhoto: 0,
491
- maxPhotoOneGo: 0,
492
- navigationController: nil
493
- )
494
-
495
- let controller = InfilectSDKCameraActivityForResult(cameraContext: context)
496
- controller.retakeImage(imageURL: imageURL, sessionID: temporarySessionId as String) { result in
497
- switch result {
498
- case .success(let newImageId):
499
- resolve(newImageId)
500
- case .failure(let sdkError):
501
- let nsError = sdkError as NSError
502
- reject(
503
- "RetakeImageError",
504
- "Failed to retake image: \(nsError.localizedDescription)",
505
- nsError
506
- )
507
- }
508
- }
509
- }
528
+ @objc(retakeImage:imageURL:metaData:resolver:rejecter:)
529
+ func retakeImage(
530
+ _ temporarySessionId: NSString,
531
+ imageURL: String,
532
+ metaData: NSDictionary,
533
+ resolver resolve: @escaping RCTPromiseResolveBlock,
534
+ rejecter reject: @escaping RCTPromiseRejectBlock
535
+ ) {
536
+ // Build a minimal CameraContext. If your SDK truly needs values like
537
+ // taskName, storeTitle, etc., pass them in from JS or hard‐code defaults here.
538
+ let context = CameraContext(
539
+ taskName: "",
540
+ storeTitle: "",
541
+ storeId: "",
542
+ photoType: "",
543
+ category: "",
544
+ maxPhoto: 0,
545
+ maxPhotoOneGo: 0,
546
+ navigationController: nil,
547
+ metaData: metaData as? [String: Any]
548
+ )
549
+
550
+ let controller = InfilectSDKCameraActivityForResult(cameraContext: context)
551
+ controller.retakeImage(imageURL: imageURL, sessionID: temporarySessionId as String, metaData: metaData as? [String: Any]) { result in
552
+ switch result {
553
+ case .success(let newImageId):
554
+ resolve(newImageId)
555
+ case .failure(let sdkError):
556
+ let nsError = sdkError as NSError
557
+ reject(
558
+ "RetakeImageError",
559
+ "Failed to retake image: \(nsError.localizedDescription)",
560
+ nsError
561
+ )
562
+ }
563
+ }
564
+ }
510
565
 
511
566
  // MARK: – React Native Promise Exposures for OutputAPI
512
567
 
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","NativeModules","NativeEventEmitter","LINKING_ERROR","select","ios","default","InfivizShotsReactSdk","Proxy","get","Error","InfivizShotsReactSdkEmitter"],"sourceRoot":"../../src","sources":["NativeInfivizShotsReactSdk.tsx"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,aAAa,EAAEC,kBAAkB,QAAQ,cAAc;AAE1E,MAAMC,aAAa,GACjB,qEAAqE,GACrEH,QAAQ,CAACI,MAAM,CAAC;EACdC,GAAG,EAAE,gCAAgC;EACrCC,OAAO,EAAE;AACX,CAAC,CAAC,GACF,sDAAsD,GACtD,sEAAsE;AAExE,MAAMC,oBAAoB,GAAGN,aAAa,CAACM,oBAAoB,GAC3DN,aAAa,CAACM,oBAAoB,GAClC,IAAIC,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACP,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAyEL,OAAO,MAAMQ,2BAA2B,GAAG,IAAIT,kBAAkB,CAACK,oBAAoB,CAAC;AAEvF,eAAeA,oBAAoB","ignoreList":[]}
1
+ {"version":3,"names":["Platform","NativeModules","NativeEventEmitter","LINKING_ERROR","select","ios","default","InfivizShotsReactSdk","Proxy","get","Error","InfivizShotsReactSdkEmitter"],"sourceRoot":"../../src","sources":["NativeInfivizShotsReactSdk.tsx"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,aAAa,EAAEC,kBAAkB,QAAQ,cAAc;AAE1E,MAAMC,aAAa,GACjB,qEAAqE,GACrEH,QAAQ,CAACI,MAAM,CAAC;EACdC,GAAG,EAAE,gCAAgC;EACrCC,OAAO,EAAE;AACX,CAAC,CAAC,GACF,sDAAsD,GACtD,sEAAsE;AAExE,MAAMC,oBAAoB,GAAGN,aAAa,CAACM,oBAAoB,GAC3DN,aAAa,CAACM,oBAAoB,GAClC,IAAIC,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACP,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AA4EL,OAAO,MAAMQ,2BAA2B,GAAG,IAAIT,kBAAkB,CAACK,oBAAoB,CAAC;AAEvF,eAAeA,oBAAoB","ignoreList":[]}
@@ -9,25 +9,24 @@ export async function initialize(appID, authSecret, accountKey, userID, clientID
9
9
  export function syncSession(sessionId) {
10
10
  InfivizShotsReactSdk.syncSession(sessionId);
11
11
  }
12
- export async function startCamera(taskName, storeTitle, storeId, photoType, category, maxPhoto, maxPhotoOneGo) {
13
- return InfivizShotsReactSdk.startCamera(taskName, storeTitle, storeId, photoType, category, maxPhoto, maxPhotoOneGo);
12
+ export async function startCamera(taskName, storeTitle, storeId, photoType, category, maxPhoto, maxPhotoOneGo, metaData) {
13
+ return InfivizShotsReactSdk.startCamera(taskName, storeTitle, storeId, photoType, category, maxPhoto, maxPhotoOneGo, metaData);
14
14
  }
15
15
  export async function fetchSessionDetails(temporarySessionID) {
16
- const jsonString = await InfivizShotsReactSdk.fetchSessionDetails(temporarySessionID);
17
- const session = JSON.parse(jsonString);
16
+ const session = await InfivizShotsReactSdk.fetchSessionDetails(temporarySessionID);
18
17
  return session;
19
18
  }
20
- export async function deletePhoto(temporarySessionID, imageURI) {
21
- return InfivizShotsReactSdk.deletePhoto(temporarySessionID, imageURI);
19
+ export async function deletePhoto(imageURI, temporarySessionId) {
20
+ return InfivizShotsReactSdk.deletePhoto(imageURI, temporarySessionId);
22
21
  }
23
- export async function retakeImage(temporarySessionID, imageURI) {
24
- return InfivizShotsReactSdk.retakeImage(temporarySessionID, imageURI);
22
+ export async function retakeImage(temporarySessionID, imageURI, metaData) {
23
+ return InfivizShotsReactSdk.retakeImage(temporarySessionID, imageURI, metaData);
25
24
  }
26
25
  export async function fetchUniversalSessionId(temporarySessionID) {
27
26
  return InfivizShotsReactSdk.fetchUniversalSessionId(temporarySessionID);
28
27
  }
29
- export async function resumeCamera(temporarySessionID) {
30
- return InfivizShotsReactSdk.resumeCamera(temporarySessionID);
28
+ export async function resumeCamera(temporarySessionID, metaData) {
29
+ return InfivizShotsReactSdk.resumeCamera(temporarySessionID, metaData);
31
30
  }
32
31
  export async function logout() {
33
32
  return InfivizShotsReactSdk.logout();
@@ -39,8 +38,7 @@ export async function getActionsResults(sessionId) {
39
38
  return InfivizShotsReactSdk.getActionsResult(sessionId);
40
39
  }
41
40
  export async function getSessionStatus(sessionId) {
42
- const sessionStatusJson = await InfivizShotsReactSdk.getSessionStatus(sessionId);
43
- const sessionStatus = JSON.parse(sessionStatusJson);
41
+ const sessionStatus = await InfivizShotsReactSdk.getSessionStatus(sessionId);
44
42
  return sessionStatus;
45
43
  }
46
44
  export async function viewIrResult(sessionId) {
@@ -1 +1 @@
1
- {"version":3,"names":["InfivizShotsReactSdk","InfivizShotsReactSdkEmitter","InfivizShotsReactSdkEvents","addListener","eventName","callback","removeAllListeners","initialize","appID","authSecret","accountKey","userID","clientID","apiToken","env","syncSession","sessionId","startCamera","taskName","storeTitle","storeId","photoType","category","maxPhoto","maxPhotoOneGo","fetchSessionDetails","temporarySessionID","jsonString","session","JSON","parse","deletePhoto","imageURI","retakeImage","fetchUniversalSessionId","resumeCamera","logout","getIrResults","getIrResult","getActionsResults","getActionsResult","getSessionStatus","sessionStatusJson","sessionStatus","viewIrResult","viewIRResults","startActionsWorkflow","latitude","longitude","dateInMMDDYYYY","startActionsWorkFlow","uploadSessions","uploadSession","Environment"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["InfivizShotsReactSdk","InfivizShotsReactSdkEmitter","InfivizShotsReactSdkEvents","addListener","eventName","callback","removeAllListeners","initialize","appID","authSecret","accountKey","userID","clientID","apiToken","env","syncSession","sessionId","startCamera","taskName","storeTitle","storeId","photoType","category","maxPhoto","maxPhotoOneGo","metaData","fetchSessionDetails","temporarySessionID","session","deletePhoto","imageURI","temporarySessionId","retakeImage","fetchUniversalSessionId","resumeCamera","logout","getIrResults","getIrResult","getActionsResults","getActionsResult","getSessionStatus","sessionStatus","viewIrResult","viewIRResults","startActionsWorkflow","latitude","longitude","dateInMMDDYYYY","startActionsWorkFlow","uploadSessions","uploadSession","Environment"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@infilectorg/infiviz-shots-react-sdk",
3
- "version": "1.0.21",
3
+ "version": "1.0.26",
4
4
  "description": "React Native package for native libraries",
5
5
  "source": "./src/index.tsx",
6
6
  "main": "./lib/module/index.js",
@@ -40,21 +40,24 @@ interface InfivizShotsReactSdkType {
40
40
  photoType: string,
41
41
  category: string,
42
42
  maxPhoto: number,
43
- maxPhotoOneGo: number
43
+ maxPhotoOneGo: number,
44
+ metaData: Record<string, any>
44
45
  ): Promise<string>;
45
46
 
46
47
  retakeImage(
47
48
  temporarySessionId: string,
48
49
  imageURI: string,
50
+ metaData: Record<string, any>,
49
51
  ): Promise<string>;
50
52
 
51
53
  deletePhoto(
52
- temporarySessionId: string,
53
54
  imageURI: string,
55
+ temporarySessionId: string,
54
56
  ): Promise<string>;
55
57
 
56
58
  resumeCamera(
57
- tempSessionId: string
59
+ tempSessionId: string,
60
+ metaData: Record<string, any>
58
61
  ): Promise<void>;
59
62
 
60
63
  uploadSession(
package/src/index.tsx CHANGED
@@ -35,23 +35,23 @@ export async function startCamera(
35
35
  photoType: string,
36
36
  category: string,
37
37
  maxPhoto: number,
38
- maxPhotoOneGo: number
38
+ maxPhotoOneGo: number,
39
+ metaData: Record<string, any>
39
40
  ): Promise<string> {
40
- return InfivizShotsReactSdk.startCamera(taskName, storeTitle, storeId, photoType, category, maxPhoto, maxPhotoOneGo);
41
+ return InfivizShotsReactSdk.startCamera(taskName, storeTitle, storeId, photoType, category, maxPhoto, maxPhotoOneGo, metaData);
41
42
  }
42
43
 
43
44
  export async function fetchSessionDetails(temporarySessionID: string): Promise<InfiSession> {
44
- const jsonString = await InfivizShotsReactSdk.fetchSessionDetails(temporarySessionID);
45
- const session: InfiSession = JSON.parse(jsonString);
46
- return session;
45
+ const session = await InfivizShotsReactSdk.fetchSessionDetails(temporarySessionID);
46
+ return session as unknown as InfiSession;
47
47
  }
48
48
 
49
- export async function deletePhoto(temporarySessionID: string, imageURI: string): Promise<string> {
50
- return InfivizShotsReactSdk.deletePhoto(temporarySessionID, imageURI);
49
+ export async function deletePhoto(imageURI: string, temporarySessionId: string): Promise<string> {
50
+ return InfivizShotsReactSdk.deletePhoto(imageURI, temporarySessionId);
51
51
  }
52
52
 
53
- export async function retakeImage(temporarySessionID: string, imageURI: string): Promise<string> {
54
- return InfivizShotsReactSdk.retakeImage(temporarySessionID, imageURI);
53
+ export async function retakeImage(temporarySessionID: string, imageURI: string, metaData: Record<string, any>): Promise<string> {
54
+ return InfivizShotsReactSdk.retakeImage(temporarySessionID, imageURI, metaData);
55
55
  }
56
56
 
57
57
  export async function fetchUniversalSessionId(temporarySessionID: string): Promise<string> {
@@ -59,8 +59,8 @@ export async function fetchUniversalSessionId(temporarySessionID: string): Promi
59
59
  }
60
60
 
61
61
 
62
- export async function resumeCamera(temporarySessionID: string): Promise<void> {
63
- return InfivizShotsReactSdk.resumeCamera(temporarySessionID);
62
+ export async function resumeCamera(temporarySessionID: string, metaData: Record<string, any>): Promise<void> {
63
+ return InfivizShotsReactSdk.resumeCamera(temporarySessionID, metaData);
64
64
  }
65
65
 
66
66
  export async function logout(): Promise<void> {
@@ -76,9 +76,8 @@ export async function getActionsResults(sessionId: string): Promise<string> {
76
76
  }
77
77
 
78
78
  export async function getSessionStatus(sessionId: string): Promise<SessionStatus> {
79
- const sessionStatusJson = await InfivizShotsReactSdk.getSessionStatus(sessionId);
80
- const sessionStatus: SessionStatus = JSON.parse(sessionStatusJson);
81
- return sessionStatus;
79
+ const sessionStatus = await InfivizShotsReactSdk.getSessionStatus(sessionId);
80
+ return sessionStatus as unknown as SessionStatus;
82
81
  }
83
82
 
84
83
  export async function viewIrResult(sessionId: string): Promise<string> {