@pensasystems/pensa-react-native 0.1.0-beta-6 → 0.1.0-beta-8
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.
- package/PensaSdkReactNative.podspec +1 -1
- package/android/build.gradle +1 -1
- package/android/src/main/java/com/pensasdkreactnative/PensaSdkReactNativeModule.kt +77 -13
- package/ios/PensaSdkReactNative.mm +2 -0
- package/ios/PensaSdkReactNative.swift +39 -17
- package/lib/module/index.js +2 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/reportTypes.js +8 -0
- package/lib/module/reportTypes.js.map +1 -0
- package/lib/typescript/src/index.d.ts +2 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/reportTypes.d.ts +5 -0
- package/lib/typescript/src/reportTypes.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +1 -0
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/index.tsx +5 -2
- package/src/reportTypes.ts +4 -0
- package/src/types.ts +1 -0
package/android/build.gradle
CHANGED
|
@@ -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.
|
|
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.
|
|
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
|
-
|
|
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
|
-
|
|
234
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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)
|
|
@@ -41,8 +41,10 @@ RCT_EXTERN_METHOD(fetchScanStatuses:(NSArray *)scanIds
|
|
|
41
41
|
withResolver:(RCTPromiseResolveBlock)resolve
|
|
42
42
|
withRejecter:(RCTPromiseRejectBlock)reject)
|
|
43
43
|
|
|
44
|
+
|
|
44
45
|
RCT_EXTERN_METHOD(fetchOnDemandReports:(nonnull NSNumber *)scanId
|
|
45
46
|
projectId:(nullable NSNumber *)projectId
|
|
47
|
+
reportType:(nullable NSString *)reportType
|
|
46
48
|
withResolver:(RCTPromiseResolveBlock)resolve
|
|
47
49
|
withRejecter:(RCTPromiseRejectBlock)reject)
|
|
48
50
|
|
|
@@ -161,17 +161,22 @@ 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
|
+
reportType: NSString?,
|
|
168
169
|
resolve: @escaping RCTPromiseResolveBlock,
|
|
169
170
|
reject: @escaping RCTPromiseRejectBlock
|
|
170
171
|
) {
|
|
171
172
|
|
|
173
|
+
let typeString = reportType as String? ?? "ITEMS_SEEN"
|
|
174
|
+
let type = PensaReportType(rawValue: typeString) ?? .itemsSeen
|
|
175
|
+
|
|
172
176
|
Pensa.shared.fetchOnDemandReports(
|
|
173
177
|
scanId: scanId.intValue,
|
|
174
178
|
projectId: projectId?.intValue,
|
|
179
|
+
reportType: type,
|
|
175
180
|
onSuccess: { report in
|
|
176
181
|
|
|
177
182
|
func rn(_ value: Any?) -> Any { value ?? NSNull() }
|
|
@@ -186,28 +191,45 @@ func fetchOnDemandReports(
|
|
|
186
191
|
]
|
|
187
192
|
|
|
188
193
|
if let bucket = report.facingsSeen?.report {
|
|
189
|
-
let products
|
|
190
|
-
|
|
191
|
-
"brand": rn(
|
|
192
|
-
"brandId": rn(
|
|
193
|
-
"category": rn(
|
|
194
|
-
"categoryId": rn(
|
|
195
|
-
"facings": rn(
|
|
196
|
-
"manufacturer": rn(
|
|
197
|
-
"manufacturerId": rn(
|
|
198
|
-
"product": rn(
|
|
199
|
-
"productId": rn(
|
|
200
|
-
"upc": rn(
|
|
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)
|
|
201
206
|
]
|
|
202
207
|
}
|
|
203
|
-
|
|
204
|
-
result["facingsSeen"] = [
|
|
205
|
-
"productList": products
|
|
206
|
-
]
|
|
208
|
+
result["facingsSeen"] = ["productList": products]
|
|
207
209
|
} else {
|
|
208
210
|
result["facingsSeen"] = NSNull()
|
|
209
211
|
}
|
|
210
212
|
|
|
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()
|
|
231
|
+
}
|
|
232
|
+
|
|
211
233
|
resolve(result)
|
|
212
234
|
},
|
|
213
235
|
onError: { error in
|
package/lib/module/index.js
CHANGED
|
@@ -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);
|
package/lib/module/index.js.map
CHANGED
|
@@ -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;
|
|
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 @@
|
|
|
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;
|
|
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 @@
|
|
|
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-
|
|
3
|
+
"version": "0.1.0-beta-8",
|
|
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
|
|
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;
|