@pensasystems/pensa-react-native 0.1.0-beta-5 → 0.1.0-beta-7

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.
@@ -21,5 +21,5 @@ Pod::Spec.new do |s|
21
21
  s.dependency "React-Core"
22
22
  end
23
23
 
24
- s.dependency "PensaSdk", "~> 1.0.6"
24
+ s.dependency "PensaSdk", "~> 1.0.8"
25
25
  end
@@ -99,7 +99,7 @@ def kotlin_version = getExtOrDefault("kotlinVersion")
99
99
 
100
100
  dependencies {
101
101
  coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.1.5'
102
- implementation "com.pensasystems:pensasdk:1.0.13"
102
+ implementation "com.pensasystems:pensasdk:1.0.14"
103
103
  implementation "com.facebook.react:react-android"
104
104
  implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
105
105
  }
@@ -9,8 +9,7 @@ import com.facebook.react.bridge.ReadableArray
9
9
  import com.facebook.react.bridge.ReadableMap
10
10
  import com.pensasystems.pensasdk.PensaSdk
11
11
  import com.pensasystems.pensasdk.PensaSdkConfiguration
12
- import com.pensasystems.pensasdk.listener.CantScanEventListener
13
- import com.pensasystems.pensasdk.listener.ScanUploadListener
12
+ import com.pensasystems.pensasdk.model.PensaReportType
14
13
 
15
14
  class PensaSdkReactNativeModule(reactContext: ReactApplicationContext) :
16
15
  ReactContextBaseJavaModule(reactContext) {
@@ -215,12 +214,20 @@ class PensaSdkReactNativeModule(reactContext: ReactApplicationContext) :
215
214
  }
216
215
 
217
216
  @ReactMethod
218
- fun fetchOnDemandReports(scanId: Int, projectId: Int?, promise: Promise) {
217
+ fun fetchOnDemandReports(scanId: Int, projectId: Int?, reportType: String?, promise: Promise) {
219
218
  try {
219
+ val reportTypeEnum = try {
220
+ if (reportType != null) PensaReportType.valueOf(reportType) else PensaReportType.ITEMS_SEEN
221
+ } catch (e: Exception) {
222
+ PensaReportType.ITEMS_SEEN
223
+ }
224
+
220
225
  PensaSdk.fetchOnDemandReports(
221
226
  scanId = scanId,
222
227
  projectId = projectId,
228
+ reportType = reportTypeEnum,
223
229
  onSuccess = { report ->
230
+
224
231
  val result = Arguments.createMap()
225
232
 
226
233
  report.facingsSeen?.let { bucket ->
@@ -228,29 +235,86 @@ class PensaSdkReactNativeModule(reactContext: ReactApplicationContext) :
228
235
  bucket.productList.forEach { product ->
229
236
  val p = Arguments.createMap()
230
237
  p.putString("brand", product.brand)
231
- p.putInt("brandId", product.brandId ?: 0)
238
+
239
+ val brandId = product.brandId
240
+ if (brandId != null) p.putInt("brandId", brandId) else p.putNull("brandId")
241
+
232
242
  p.putString("category", product.category)
233
- p.putInt("categoryId", product.categoryId ?: 0)
234
- p.putInt("facings", product.facings ?: 0)
243
+
244
+ val categoryId = product.categoryId
245
+ if (categoryId != null) p.putInt("categoryId", categoryId) else p.putNull("categoryId")
246
+
247
+ val facings = product.facings
248
+ if (facings != null) p.putInt("facings", facings) else p.putNull("facings")
249
+
235
250
  p.putString("manufacturer", product.manufacturer)
236
- p.putInt("manufacturerId", product.manufacturerId ?: 0)
251
+
252
+ val manufacturerId = product.manufacturerId
253
+ if (manufacturerId != null) p.putInt("manufacturerId", manufacturerId) else p.putNull("manufacturerId")
254
+
237
255
  p.putString("product", product.product)
238
- p.putInt("productId", product.productId ?: 0)
256
+
257
+ val productId = product.productId
258
+ if (productId != null) p.putInt("productId", productId) else p.putNull("productId")
259
+
239
260
  p.putString("upc", product.upc)
261
+
240
262
  productsArray.pushMap(p)
241
263
  }
242
-
243
264
  val bucketMap = Arguments.createMap()
244
265
  bucketMap.putArray("productList", productsArray)
245
266
  result.putMap("facingsSeen", bucketMap)
246
-
247
267
  } ?: result.putNull("facingsSeen")
248
268
 
249
- result.putInt("projectId", report.projectId ?: 0)
269
+ report.itemsSeen?.let { bucket ->
270
+ val productsArray = Arguments.createArray()
271
+ bucket.productList.forEach { product ->
272
+ val p = Arguments.createMap()
273
+ p.putString("brand", product.brand)
274
+
275
+ val brandId = product.brandId
276
+ if (brandId != null) p.putInt("brandId", brandId) else p.putNull("brandId")
277
+
278
+ p.putString("category", product.category)
279
+
280
+ val categoryId = product.categoryId
281
+ if (categoryId != null) p.putInt("categoryId", categoryId) else p.putNull("categoryId")
282
+
283
+ val facings = product.facings
284
+ if (facings != null) p.putInt("facings", facings) else p.putNull("facings")
285
+
286
+ p.putString("manufacturer", product.manufacturer)
287
+
288
+ val manufacturerId = product.manufacturerId
289
+ if (manufacturerId != null) p.putInt("manufacturerId", manufacturerId) else p.putNull("manufacturerId")
290
+
291
+ p.putString("product", product.product)
292
+
293
+ val productId = product.productId
294
+ if (productId != null) p.putInt("productId", productId) else p.putNull("productId")
295
+
296
+ p.putString("upc", product.upc)
297
+
298
+ productsArray.pushMap(p)
299
+ }
300
+ val bucketMap = Arguments.createMap()
301
+ bucketMap.putArray("productList", productsArray)
302
+ result.putMap("itemsSeen", bucketMap)
303
+ } ?: result.putNull("itemsSeen")
304
+
305
+ val projectIdVal = report.projectId
306
+ if (projectIdVal != null) result.putInt("projectId", projectIdVal) else result.putNull("projectId")
307
+
250
308
  result.putString("projectName", report.projectName)
251
- result.putInt("projectReportId", report.projectReportId ?: 0)
309
+
310
+ val projectReportIdVal = report.projectReportId
311
+ if (projectReportIdVal != null) result.putInt("projectReportId", projectReportIdVal) else result.putNull("projectReportId")
312
+
252
313
  result.putString("projectReportName", report.projectReportName)
253
- result.putInt("shelfId", report.shelfId ?: 0)
314
+
315
+ val shelfIdVal = report.shelfId
316
+ if (shelfIdVal != null) result.putInt("shelfId", shelfIdVal) else result.putNull("shelfId")
317
+
254
318
  result.putString("shelfName", report.shelfName)
255
319
 
256
320
  promise.resolve(result)
@@ -161,69 +161,82 @@ class PensaSdkReactNative: NSObject {
161
161
  )
162
162
  }
163
163
 
164
- @objc(fetchOnDemandReports:projectId:withResolver:withRejecter:)
164
+ @objc(fetchOnDemandReports:projectId:reportType:withResolver:withRejecter:)
165
165
  func fetchOnDemandReports(
166
166
  scanId: NSNumber,
167
167
  projectId: NSNumber?,
168
- resolve: @escaping RCTPromiseResolveBlock,
169
- reject: @escaping RCTPromiseRejectBlock
168
+ reportType: NSString?,
169
+ withResolver resolve: @escaping RCTPromiseResolveBlock,
170
+ withRejecter reject: @escaping RCTPromiseRejectBlock
170
171
  ) {
171
172
 
172
- Pensa.shared.fetchOnDemandReports(
173
- scanId: scanId.intValue,
174
- projectId: projectId?.intValue,
175
- onSuccess: { report in
176
-
177
- func rn(_ value: Any?) -> Any { value ?? NSNull() }
178
-
179
- var result: [String: Any] = [
180
- "shelfId": rn(report.shelfId),
181
- "shelfName": rn(report.shelfName)
182
- ]
183
-
184
- if let item = report.facingsSeen {
185
- var itemDict: [String: Any] = [
186
- "projectId": rn(item.projectId),
187
- "projectName": rn(item.projectName),
188
- "projectReportId": rn(item.projectReportId),
189
- "projectReportName": rn(item.projectReportName)
173
+ let typeString = reportType as String? ?? "ITEMS_SEEN"
174
+ let type = PensaReportType(rawValue: typeString) ?? .itemsSeen
175
+
176
+ Pensa.shared.fetchOnDemandReports(
177
+ scanId: scanId.intValue,
178
+ projectId: projectId?.intValue,
179
+ reportType: type,
180
+ onSuccess: { report in
181
+
182
+ func rn(_ value: Any?) -> Any { value ?? NSNull() }
183
+
184
+ var result: [String: Any] = [
185
+ "shelfId": rn(report.shelfId),
186
+ "shelfName": rn(report.shelfName),
187
+ "projectId": rn(report.projectId),
188
+ "projectName": rn(report.projectName),
189
+ "projectReportId": rn(report.projectReportId),
190
+ "projectReportName": rn(report.projectReportName)
191
+ ]
192
+
193
+ if let bucket = report.facingsSeen?.report {
194
+ let products = bucket.productList.map { p in
195
+ [
196
+ "brand": rn(p.brand),
197
+ "brandId": rn(p.brandId),
198
+ "category": rn(p.category),
199
+ "categoryId": rn(p.categoryId),
200
+ "facings": rn(p.facings),
201
+ "manufacturer": rn(p.manufacturer),
202
+ "manufacturerId": rn(p.manufacturerId),
203
+ "product": rn(p.product),
204
+ "productId": rn(p.productId),
205
+ "upc": rn(p.upc)
190
206
  ]
191
-
192
- if let bucket = item.report {
193
- let products: [[String: Any]] = bucket.productList.map { product in
194
- return [
195
- "brand": rn(product.brand),
196
- "brandId": rn(product.brandId),
197
- "category": rn(product.category),
198
- "categoryId": rn(product.categoryId),
199
- "facings": rn(product.facings),
200
- "manufacturer": rn(product.manufacturer),
201
- "manufacturerId": rn(product.manufacturerId),
202
- "product": rn(product.product),
203
- "productId": rn(product.productId),
204
- "upc": rn(product.upc)
205
- ]
206
- }
207
-
208
- itemDict["report"] = [
209
- "productList": products
210
- ]
211
- } else {
212
- itemDict["report"] = NSNull()
213
- }
214
-
215
- result["facingsSeen"] = itemDict
216
- } else {
217
- result["facingsSeen"] = NSNull()
218
207
  }
208
+ result["facingsSeen"] = ["productList": products]
209
+ } else {
210
+ result["facingsSeen"] = NSNull()
211
+ }
219
212
 
220
- resolve(result)
221
- },
222
- onError: { error in
223
- reject("FETCH_ON_DEMAND_REPORTS_FAILED", error.localizedDescription, error)
213
+ if let bucket = report.itemsSeen?.report {
214
+ let products = bucket.productList.map { p in
215
+ [
216
+ "brand": rn(p.brand),
217
+ "brandId": rn(p.brandId),
218
+ "category": rn(p.category),
219
+ "categoryId": rn(p.categoryId),
220
+ "facings": rn(p.facings),
221
+ "manufacturer": rn(p.manufacturer),
222
+ "manufacturerId": rn(p.manufacturerId),
223
+ "product": rn(p.product),
224
+ "productId": rn(p.productId),
225
+ "upc": rn(p.upc)
226
+ ]
227
+ }
228
+ result["itemsSeen"] = ["productList": products]
229
+ } else {
230
+ result["itemsSeen"] = NSNull()
224
231
  }
225
- )
226
- }
232
+
233
+ resolve(result)
234
+ },
235
+ onError: { error in
236
+ reject("FETCH_ON_DEMAND_REPORTS_FAILED", error.localizedDescription, error)
237
+ }
238
+ )
239
+ }
227
240
 
228
241
  @objc(fetchProductImageBase64:withResolver:withRejecter:)
229
242
  func fetchProductImageBase64(productId: NSNumber,
@@ -40,8 +40,8 @@ export const showStoreChecklist = (globalStoreId, guid, sectionKey) => {
40
40
  export const fetchScanStatuses = scanIds => {
41
41
  return PensaSdkReactNative.fetchScanStatuses(scanIds);
42
42
  };
43
- export const fetchOnDemandReports = (scanId, projectId) => {
44
- return PensaSdkReactNative.fetchOnDemandReports(scanId, projectId ?? null);
43
+ export const fetchOnDemandReports = (scanId, projectId, reportType) => {
44
+ return PensaSdkReactNative.fetchOnDemandReports(scanId, projectId ?? null, reportType ?? 'ITEMS_SEEN');
45
45
  };
46
46
  export const fetchProductImageBase64 = productId => {
47
47
  return PensaSdkReactNative.fetchProductImageBase64(productId);
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","Platform","LINKING_ERROR","select","ios","default","PensaSdkReactNative","Proxy","get","Error","initPensa","config","isPensaStarted","showShelfScans","showProductScans","showStoreSearchView","showStoresScreen","showScanArea","scanId","storeId","globalStoreId","showStockingScreen","showStoreChecklist","guid","sectionKey","fetchScanStatuses","scanIds","fetchOnDemandReports","projectId","fetchProductImageBase64","productId"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AAGtD,MAAMC,aAAa,GACjB,iFAAiF,GACjFD,QAAQ,CAACE,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,mBAAmB,GAAGN,aAAa,CAACM,mBAAmB,GACzDN,aAAa,CAACM,mBAAmB,GACjC,IAAIC,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACP,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAEL,OAAO,MAAMQ,SAAS,GAAIC,MAIzB,IAAoB;EACnB,OAAOL,mBAAmB,CAACI,SAAS,CAACC,MAAM,CAAC;AAC9C,CAAC;AAED,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAwB;EACpD,OAAON,mBAAmB,CAACM,cAAc,CAAC,CAAC;AAC7C,CAAC;AAED,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAqB;EACjD,OAAOP,mBAAmB,CAACO,cAAc,CAAC,CAAC;AAC7C,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAqB;EACnD,OAAOR,mBAAmB,CAACQ,gBAAgB,CAAC,CAAC;AAC/C,CAAC;AAED,OAAO,MAAMC,mBAAmB,GAAGA,CAAA,KAAqB;EACtD,OAAOT,mBAAmB,CAACS,mBAAmB,CAAC,CAAC;AAClD,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAqB;EACnD,OAAOV,mBAAmB,CAACU,gBAAgB,CAAC,CAAC;AAC/C,CAAC;AAED,OAAO,MAAMC,YAAY,GAAGA,CAC1BC,MAAc,EACdC,OAAgB,EAChBC,aAAsB,KACJ;EAClB,OAAOd,mBAAmB,CAACW,YAAY,CACrCC,MAAM,EACNC,OAAO,IAAI,IAAI,EACfC,aAAa,IAAI,IACnB,CAAC;AACH,CAAC;AAED,OAAO,MAAMC,kBAAkB,GAAGA,CAAA,KAAqB;EACrD,OAAOf,mBAAmB,CAACe,kBAAkB,CAAC,CAAC;AACjD,CAAC;AAED,OAAO,MAAMC,kBAAkB,GAAGA,CAChCF,aAAqB,EACrBG,IAAa,EACbC,UAAmB,KACD;EAClB,OAAOlB,mBAAmB,CAACgB,kBAAkB,CAC3CF,aAAa,EACbG,IAAI,EACJC,UACF,CAAC;AACH,CAAC;AAED,OAAO,MAAMC,iBAAiB,GAC5BC,OAAiB,IACc;EAC/B,OAAOpB,mBAAmB,CAACmB,iBAAiB,CAACC,OAAO,CAAC;AACvD,CAAC;AAED,OAAO,MAAMC,oBAAoB,GAAGA,CAClCT,MAAc,EACdU,SAAkB,KACe;EACjC,OAAOtB,mBAAmB,CAACqB,oBAAoB,CAC7CT,MAAM,EACNU,SAAS,IAAI,IACf,CAAC;AACH,CAAC;AAED,OAAO,MAAMC,uBAAuB,GAClCC,SAAiB,IACG;EACpB,OAAOxB,mBAAmB,CAACuB,uBAAuB,CAACC,SAAS,CAAC;AAC/D,CAAC;AAED,cAAc,aAAU;AACxB,cAAc,YAAS","ignoreList":[]}
1
+ {"version":3,"names":["NativeModules","Platform","LINKING_ERROR","select","ios","default","PensaSdkReactNative","Proxy","get","Error","initPensa","config","isPensaStarted","showShelfScans","showProductScans","showStoreSearchView","showStoresScreen","showScanArea","scanId","storeId","globalStoreId","showStockingScreen","showStoreChecklist","guid","sectionKey","fetchScanStatuses","scanIds","fetchOnDemandReports","projectId","reportType","fetchProductImageBase64","productId"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AAItD,MAAMC,aAAa,GACjB,iFAAiF,GACjFD,QAAQ,CAACE,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,mBAAmB,GAAGN,aAAa,CAACM,mBAAmB,GACzDN,aAAa,CAACM,mBAAmB,GACjC,IAAIC,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACP,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAEL,OAAO,MAAMQ,SAAS,GAAIC,MAIzB,IAAoB;EACnB,OAAOL,mBAAmB,CAACI,SAAS,CAACC,MAAM,CAAC;AAC9C,CAAC;AAED,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAwB;EACpD,OAAON,mBAAmB,CAACM,cAAc,CAAC,CAAC;AAC7C,CAAC;AAED,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAqB;EACjD,OAAOP,mBAAmB,CAACO,cAAc,CAAC,CAAC;AAC7C,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAqB;EACnD,OAAOR,mBAAmB,CAACQ,gBAAgB,CAAC,CAAC;AAC/C,CAAC;AAED,OAAO,MAAMC,mBAAmB,GAAGA,CAAA,KAAqB;EACtD,OAAOT,mBAAmB,CAACS,mBAAmB,CAAC,CAAC;AAClD,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAqB;EACnD,OAAOV,mBAAmB,CAACU,gBAAgB,CAAC,CAAC;AAC/C,CAAC;AAED,OAAO,MAAMC,YAAY,GAAGA,CAC1BC,MAAc,EACdC,OAAgB,EAChBC,aAAsB,KACJ;EAClB,OAAOd,mBAAmB,CAACW,YAAY,CACrCC,MAAM,EACNC,OAAO,IAAI,IAAI,EACfC,aAAa,IAAI,IACnB,CAAC;AACH,CAAC;AAED,OAAO,MAAMC,kBAAkB,GAAGA,CAAA,KAAqB;EACrD,OAAOf,mBAAmB,CAACe,kBAAkB,CAAC,CAAC;AACjD,CAAC;AAED,OAAO,MAAMC,kBAAkB,GAAGA,CAChCF,aAAqB,EACrBG,IAAa,EACbC,UAAmB,KACD;EAClB,OAAOlB,mBAAmB,CAACgB,kBAAkB,CAC3CF,aAAa,EACbG,IAAI,EACJC,UACF,CAAC;AACH,CAAC;AAED,OAAO,MAAMC,iBAAiB,GAC5BC,OAAiB,IACc;EAC/B,OAAOpB,mBAAmB,CAACmB,iBAAiB,CAACC,OAAO,CAAC;AACvD,CAAC;AAED,OAAO,MAAMC,oBAAoB,GAAGA,CAClCT,MAAc,EACdU,SAAkB,EAClBC,UAA4B,KACK;EACjC,OAAOvB,mBAAmB,CAACqB,oBAAoB,CAC7CT,MAAM,EACNU,SAAS,IAAI,IAAI,EACjBC,UAAU,IAAI,YAChB,CAAC;AACH,CAAC;AAED,OAAO,MAAMC,uBAAuB,GAClCC,SAAiB,IACG;EACpB,OAAOzB,mBAAmB,CAACwB,uBAAuB,CAACC,SAAS,CAAC;AAC/D,CAAC;AAED,cAAc,aAAU;AACxB,cAAc,YAAS","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ export let PensaReportType = /*#__PURE__*/function (PensaReportType) {
4
+ PensaReportType["FACINGS_SEEN"] = "FACINGS_SEEN";
5
+ PensaReportType["ITEMS_SEEN"] = "ITEMS_SEEN";
6
+ return PensaReportType;
7
+ }({});
8
+ //# sourceMappingURL=reportTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PensaReportType"],"sourceRoot":"../../src","sources":["reportTypes.ts"],"mappings":";;AAAA,WAAYA,eAAe,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA","ignoreList":[]}
@@ -1,4 +1,5 @@
1
1
  import type { PensaOnDemandReport, PensaScanStatus } from './types';
2
+ import type { PensaReportType } from './reportTypes';
2
3
  export declare const initPensa: (config: {
3
4
  clientId: string;
4
5
  clientSecret: string;
@@ -13,7 +14,7 @@ export declare const showScanArea: (scanId: number, storeId?: number, globalStor
13
14
  export declare const showStockingScreen: () => Promise<void>;
14
15
  export declare const showStoreChecklist: (globalStoreId: string, guid?: string, sectionKey?: string) => Promise<void>;
15
16
  export declare const fetchScanStatuses: (scanIds: number[]) => Promise<PensaScanStatus[]>;
16
- export declare const fetchOnDemandReports: (scanId: number, projectId?: number) => Promise<PensaOnDemandReport>;
17
+ export declare const fetchOnDemandReports: (scanId: number, projectId?: number, reportType?: PensaReportType) => Promise<PensaOnDemandReport>;
17
18
  export declare const fetchProductImageBase64: (productId: number) => Promise<string>;
18
19
  export * from './events';
19
20
  export * from './types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAmBpE,eAAO,MAAM,SAAS,GAAI,QAAQ;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,KAAG,OAAO,CAAC,IAAI,CAEf,CAAC;AAEF,eAAO,MAAM,cAAc,QAAO,OAAO,CAAC,OAAO,CAEhD,CAAC;AAEF,eAAO,MAAM,cAAc,QAAO,OAAO,CAAC,IAAI,CAE7C,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAO,OAAO,CAAC,IAAI,CAE/C,CAAC;AAEF,eAAO,MAAM,mBAAmB,QAAO,OAAO,CAAC,IAAI,CAElD,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAO,OAAO,CAAC,IAAI,CAE/C,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,QAAQ,MAAM,EACd,UAAU,MAAM,EAChB,gBAAgB,MAAM,KACrB,OAAO,CAAC,IAAI,CAMd,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAAO,OAAO,CAAC,IAAI,CAEjD,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,eAAe,MAAM,EACrB,OAAO,MAAM,EACb,aAAa,MAAM,KAClB,OAAO,CAAC,IAAI,CAMd,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,SAAS,MAAM,EAAE,KAChB,OAAO,CAAC,eAAe,EAAE,CAE3B,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,MAAM,EACd,YAAY,MAAM,KACjB,OAAO,CAAC,mBAAmB,CAK7B,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,WAAW,MAAM,KAChB,OAAO,CAAC,MAAM,CAEhB,CAAC;AAEF,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAmBrD,eAAO,MAAM,SAAS,GAAI,QAAQ;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,KAAG,OAAO,CAAC,IAAI,CAEf,CAAC;AAEF,eAAO,MAAM,cAAc,QAAO,OAAO,CAAC,OAAO,CAEhD,CAAC;AAEF,eAAO,MAAM,cAAc,QAAO,OAAO,CAAC,IAAI,CAE7C,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAO,OAAO,CAAC,IAAI,CAE/C,CAAC;AAEF,eAAO,MAAM,mBAAmB,QAAO,OAAO,CAAC,IAAI,CAElD,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAO,OAAO,CAAC,IAAI,CAE/C,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,QAAQ,MAAM,EACd,UAAU,MAAM,EAChB,gBAAgB,MAAM,KACrB,OAAO,CAAC,IAAI,CAMd,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAAO,OAAO,CAAC,IAAI,CAEjD,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,eAAe,MAAM,EACrB,OAAO,MAAM,EACb,aAAa,MAAM,KAClB,OAAO,CAAC,IAAI,CAMd,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,SAAS,MAAM,EAAE,KAChB,OAAO,CAAC,eAAe,EAAE,CAE3B,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,MAAM,EACd,YAAY,MAAM,EAClB,aAAa,eAAe,KAC3B,OAAO,CAAC,mBAAmB,CAM7B,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,WAAW,MAAM,KAChB,OAAO,CAAC,MAAM,CAEhB,CAAC;AAEF,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare enum PensaReportType {
2
+ FACINGS_SEEN = "FACINGS_SEEN",
3
+ ITEMS_SEEN = "ITEMS_SEEN"
4
+ }
5
+ //# sourceMappingURL=reportTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reportTypes.d.ts","sourceRoot":"","sources":["../../../src/reportTypes.ts"],"names":[],"mappings":"AAAA,oBAAY,eAAe;IACzB,YAAY,iBAAiB;IAC7B,UAAU,eAAe;CAC1B"}
@@ -53,6 +53,7 @@ export type PensaOnDemandReportBucket = {
53
53
  };
54
54
  export type PensaOnDemandReport = {
55
55
  facingsSeen: PensaOnDemandReportBucket | null;
56
+ itemsSeen: PensaOnDemandReportBucket | null;
56
57
  projectId: number | null;
57
58
  projectName: string | null;
58
59
  projectReportId: number | null;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,0BAA0B,EAAE,0BAA0B,CAAC;IACvD,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACnC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,WAAW,EAAE,oBAAoB,EAAE,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAC9C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,0BAA0B,EAAE,0BAA0B,CAAC;IACvD,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACnC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,WAAW,EAAE,oBAAoB,EAAE,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAC9C,SAAS,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAC5C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pensasystems/pensa-react-native",
3
- "version": "0.1.0-beta-5",
3
+ "version": "0.1.0-beta-7",
4
4
  "description": "The Pensa Mobile App SDK is a developer toolkit designed to simplify adding Pensa’s capabilities to your mobile applications. It provides pre-built libraries, tools, and APIs to accelerate development and integration, offering streamlined SDK integration, easy initialization, and comprehensive functionality. With the Pensa SDK, you can enhance your app’s features or seamlessly integrate with other services for a cohesive user experience.",
5
5
  "source": "./src/index.tsx",
6
6
  "main": "./lib/module/index.js",
package/src/index.tsx CHANGED
@@ -1,5 +1,6 @@
1
1
  import { NativeModules, Platform } from 'react-native';
2
2
  import type { PensaOnDemandReport, PensaScanStatus } from './types';
3
+ import type { PensaReportType } from './reportTypes';
3
4
 
4
5
  const LINKING_ERROR =
5
6
  `The package 'pensa-sdk-react-native' doesn't seem to be linked. Make sure: \n\n` +
@@ -82,11 +83,13 @@ export const fetchScanStatuses = (
82
83
 
83
84
  export const fetchOnDemandReports = (
84
85
  scanId: number,
85
- projectId?: number
86
+ projectId?: number,
87
+ reportType?: PensaReportType
86
88
  ): Promise<PensaOnDemandReport> => {
87
89
  return PensaSdkReactNative.fetchOnDemandReports(
88
90
  scanId,
89
- projectId ?? null
91
+ projectId ?? null,
92
+ reportType ?? 'ITEMS_SEEN'
90
93
  );
91
94
  };
92
95
 
@@ -0,0 +1,4 @@
1
+ export enum PensaReportType {
2
+ FACINGS_SEEN = 'FACINGS_SEEN',
3
+ ITEMS_SEEN = 'ITEMS_SEEN',
4
+ }
package/src/types.ts CHANGED
@@ -62,6 +62,7 @@ export type PensaOnDemandReportBucket = {
62
62
 
63
63
  export type PensaOnDemandReport = {
64
64
  facingsSeen: PensaOnDemandReportBucket | null;
65
+ itemsSeen: PensaOnDemandReportBucket | null;
65
66
  projectId: number | null;
66
67
  projectName: string | null;
67
68
  projectReportId: number | null;