@wavemaker/app-rn-runtime 11.12.0-rc.219 → 11.12.1-next.28204

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 (61) hide show
  1. package/components/basic/audio/audio.component.js +47 -52
  2. package/components/basic/audio/audio.component.js.map +1 -1
  3. package/components/basic/video/video.component.js +64 -89
  4. package/components/basic/video/video.component.js.map +1 -1
  5. package/components/device/barcodescanner/barcodescanner.component.js +18 -26
  6. package/components/device/barcodescanner/barcodescanner.component.js.map +1 -1
  7. package/components/device/camera/camera.component.js +19 -28
  8. package/components/device/camera/camera.component.js.map +1 -1
  9. package/components/input/fileupload/fileupload.component.js +13 -17
  10. package/components/input/fileupload/fileupload.component.js.map +1 -1
  11. package/core/device/calendar-service.js +1 -7
  12. package/core/device/calendar-service.js.map +1 -1
  13. package/core/device/camera-service.js +0 -6
  14. package/core/device/camera-service.js.map +1 -1
  15. package/core/device/contacts-service.js +1 -7
  16. package/core/device/contacts-service.js.map +1 -1
  17. package/core/device/location-service.js +1 -7
  18. package/core/device/location-service.js.map +1 -1
  19. package/core/device/scan-service.js +0 -6
  20. package/core/device/scan-service.js.map +1 -1
  21. package/core/utils.js +6 -0
  22. package/core/utils.js.map +1 -1
  23. package/npm-shrinkwrap.json +27 -27
  24. package/package-lock.json +27 -27
  25. package/package.json +2 -2
  26. package/runtime/services/device/calendar-service.js +5 -9
  27. package/runtime/services/device/calendar-service.js.map +1 -1
  28. package/runtime/services/device/camera-service.js +22 -39
  29. package/runtime/services/device/camera-service.js.map +1 -1
  30. package/runtime/services/device/contacts-service.js +5 -6
  31. package/runtime/services/device/contacts-service.js.map +1 -1
  32. package/runtime/services/device/location-service.js +4 -4
  33. package/runtime/services/device/location-service.js.map +1 -1
  34. package/runtime/services/device/permissions.js +39 -34
  35. package/runtime/services/device/permissions.js.map +1 -1
  36. package/runtime/services/device/scan-service.js +3 -4
  37. package/runtime/services/device/scan-service.js.map +1 -1
  38. package/variables/device/calendar/create-event.operation.js +1 -12
  39. package/variables/device/calendar/create-event.operation.js.map +1 -1
  40. package/variables/device/calendar/delete-event.operation.js +1 -12
  41. package/variables/device/calendar/delete-event.operation.js.map +1 -1
  42. package/variables/device/calendar/get-events.operation.js +1 -12
  43. package/variables/device/calendar/get-events.operation.js.map +1 -1
  44. package/variables/device/camera/capture-image.operation.js +1 -8
  45. package/variables/device/camera/capture-image.operation.js.map +1 -1
  46. package/variables/device/camera/capture-video.operation.js +1 -7
  47. package/variables/device/camera/capture-video.operation.js.map +1 -1
  48. package/variables/device/contacts/get-contacts.operation.js +1 -12
  49. package/variables/device/contacts/get-contacts.operation.js.map +1 -1
  50. package/variables/device/device/current-geo-position.operation.js +1 -12
  51. package/variables/device/device/current-geo-position.operation.js.map +1 -1
  52. package/variables/device/file/upload-file.operation.js +3 -17
  53. package/variables/device/file/upload-file.operation.js.map +1 -1
  54. package/variables/device/scan/scan.operation.js +1 -12
  55. package/variables/device/scan/scan.operation.js.map +1 -1
  56. package/core/device/av-service.js +0 -8
  57. package/core/device/av-service.js.map +0 -1
  58. package/core/device/fileupload-service.js +0 -8
  59. package/core/device/fileupload-service.js.map +0 -1
  60. package/runtime/services/device/permission-service.js +0 -5
  61. package/runtime/services/device/permission-service.js.map +0 -1
@@ -1,3 +1,8 @@
1
+ import * as Location from 'expo-location';
2
+ import * as Contacts from 'expo-contacts';
3
+ import * as Calendar from 'expo-calendar';
4
+ import * as Camera from 'expo-camera';
5
+ import { Platform } from 'react-native';
1
6
  const rejectionMsgMap = new Map();
2
7
  rejectionMsgMap.set('camera', 'camera permission is required to capture image');
3
8
  rejectionMsgMap.set('video', 'camera and audio permissions are required to capture video');
@@ -6,40 +11,40 @@ rejectionMsgMap.set('contacts', 'enable contacts permission to access the contac
6
11
  rejectionMsgMap.set('calendar', 'enable calendar permission to access the calendar events');
7
12
  export default {
8
13
  requestPermissions: type => {
9
- // let query;
10
- // if (type === 'location') {
11
- // // requestPermissionsAsync is deprecated and requestForegroundPermissionsAsync is available only in sdk 41+
12
- // query = Location.requestForegroundPermissionsAsync();
13
- // } else if (type === 'video') {
14
- // query = Promise.all([Camera.Camera.requestCameraPermissionsAsync(), Camera.Camera.requestMicrophonePermissionsAsync()]);
15
- // } else if (type === 'image' || type === 'camera') {
16
- // query = Camera.Camera.requestCameraPermissionsAsync();
17
- // } else if (type === 'contacts') {
18
- // query = Contacts.requestPermissionsAsync();
19
- // } else if (type === 'calendar') {
20
- // if (Platform.OS === 'ios') {
21
- // query = Promise.all([Calendar.requestCalendarPermissionsAsync(), Calendar.requestRemindersPermissionsAsync()]);
22
- // } else {
23
- // query = Calendar.requestCalendarPermissionsAsync();
24
- // }
25
- // }
26
- // if (!query) {
27
- // return Promise.reject('no supported permission type.');
28
- // }
29
- // return (query as any).then((response: any) => {
30
- // if (Array.isArray(response)) {
31
- // const isRejected = response.find(o => o.status !== 'granted');
32
- // if (isRejected) {
33
- // return Promise.reject(rejectionMsgMap.get(type));
34
- // }
35
- // } else if (response && response.status !== 'granted') {
36
- // return Promise.reject(rejectionMsgMap.get(type));
37
- // }
38
- // return Promise.resolve();
39
- // }, (error: any) => {
40
- // console.log('permission is not enabled ', error);
41
- // return Promise.reject();
42
- // });
14
+ let query;
15
+ if (type === 'location') {
16
+ // requestPermissionsAsync is deprecated and requestForegroundPermissionsAsync is available only in sdk 41+
17
+ query = Location.requestForegroundPermissionsAsync();
18
+ } else if (type === 'video') {
19
+ query = Promise.all([Camera.Camera.requestCameraPermissionsAsync(), Camera.Camera.requestMicrophonePermissionsAsync()]);
20
+ } else if (type === 'image' || type === 'camera') {
21
+ query = Camera.Camera.requestCameraPermissionsAsync();
22
+ } else if (type === 'contacts') {
23
+ query = Contacts.requestPermissionsAsync();
24
+ } else if (type === 'calendar') {
25
+ if (Platform.OS === 'ios') {
26
+ query = Promise.all([Calendar.requestCalendarPermissionsAsync(), Calendar.requestRemindersPermissionsAsync()]);
27
+ } else {
28
+ query = Calendar.requestCalendarPermissionsAsync();
29
+ }
30
+ }
31
+ if (!query) {
32
+ return Promise.reject('no supported permission type.');
33
+ }
34
+ return query.then(response => {
35
+ if (Array.isArray(response)) {
36
+ const isRejected = response.find(o => o.status !== 'granted');
37
+ if (isRejected) {
38
+ return Promise.reject(rejectionMsgMap.get(type));
39
+ }
40
+ } else if (response && response.status !== 'granted') {
41
+ return Promise.reject(rejectionMsgMap.get(type));
42
+ }
43
+ return Promise.resolve();
44
+ }, error => {
45
+ console.log('permission is not enabled ', error);
46
+ return Promise.reject();
47
+ });
43
48
  }
44
49
  };
45
50
  //# sourceMappingURL=permissions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["rejectionMsgMap","Map","set","requestPermissions","type"],"sources":["permissions.ts"],"sourcesContent":["const rejectionMsgMap = new Map<string, string>();\n\nrejectionMsgMap.set('camera', 'camera permission is required to capture image');\nrejectionMsgMap.set('video', 'camera and audio permissions are required to capture video');\nrejectionMsgMap.set('location', 'enable geolocation permission to access the location');\nrejectionMsgMap.set('contacts', 'enable contacts permission to access the contacts');\nrejectionMsgMap.set('calendar', 'enable calendar permission to access the calendar events');\n\ninterface objectMap {\n [key: string]: Array<string>\n}\n\nexport default {\n requestPermissions: (type: string) => {\n // let query;\n // if (type === 'location') {\n // // requestPermissionsAsync is deprecated and requestForegroundPermissionsAsync is available only in sdk 41+\n // query = Location.requestForegroundPermissionsAsync();\n // } else if (type === 'video') {\n // query = Promise.all([Camera.Camera.requestCameraPermissionsAsync(), Camera.Camera.requestMicrophonePermissionsAsync()]);\n // } else if (type === 'image' || type === 'camera') {\n // query = Camera.Camera.requestCameraPermissionsAsync();\n // } else if (type === 'contacts') {\n // query = Contacts.requestPermissionsAsync();\n // } else if (type === 'calendar') {\n // if (Platform.OS === 'ios') {\n // query = Promise.all([Calendar.requestCalendarPermissionsAsync(), Calendar.requestRemindersPermissionsAsync()]);\n // } else {\n // query = Calendar.requestCalendarPermissionsAsync();\n // }\n // }\n // if (!query) {\n // return Promise.reject('no supported permission type.');\n // }\n // return (query as any).then((response: any) => {\n // if (Array.isArray(response)) {\n // const isRejected = response.find(o => o.status !== 'granted');\n // if (isRejected) {\n // return Promise.reject(rejectionMsgMap.get(type));\n // }\n // } else if (response && response.status !== 'granted') {\n // return Promise.reject(rejectionMsgMap.get(type));\n // }\n // return Promise.resolve();\n // }, (error: any) => {\n // console.log('permission is not enabled ', error);\n // return Promise.reject();\n // });\n }\n}"],"mappings":"AAAA,MAAMA,eAAe,GAAG,IAAIC,GAAG,CAAiB,CAAC;AAEjDD,eAAe,CAACE,GAAG,CAAC,QAAQ,EAAE,gDAAgD,CAAC;AAC/EF,eAAe,CAACE,GAAG,CAAC,OAAO,EAAE,4DAA4D,CAAC;AAC1FF,eAAe,CAACE,GAAG,CAAC,UAAU,EAAE,sDAAsD,CAAC;AACvFF,eAAe,CAACE,GAAG,CAAC,UAAU,EAAE,mDAAmD,CAAC;AACpFF,eAAe,CAACE,GAAG,CAAC,UAAU,EAAE,0DAA0D,CAAC;AAM3F,eAAe;EACbC,kBAAkB,EAAGC,IAAY,IAAK;IACpC;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;EAAA;AAEJ,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Location","Contacts","Calendar","Camera","Platform","rejectionMsgMap","Map","set","requestPermissions","type","query","requestForegroundPermissionsAsync","Promise","all","requestCameraPermissionsAsync","requestMicrophonePermissionsAsync","requestPermissionsAsync","OS","requestCalendarPermissionsAsync","requestRemindersPermissionsAsync","reject","then","response","Array","isArray","isRejected","find","o","status","get","resolve","error","console","log"],"sources":["permissions.ts"],"sourcesContent":["import * as Location from 'expo-location';\nimport * as Contacts from 'expo-contacts';\nimport * as Calendar from 'expo-calendar';\nimport * as Camera from 'expo-camera';\nimport { Platform } from 'react-native';\n\nconst rejectionMsgMap = new Map<string, string>();\n\nrejectionMsgMap.set('camera', 'camera permission is required to capture image');\nrejectionMsgMap.set('video', 'camera and audio permissions are required to capture video');\nrejectionMsgMap.set('location', 'enable geolocation permission to access the location');\nrejectionMsgMap.set('contacts', 'enable contacts permission to access the contacts');\nrejectionMsgMap.set('calendar', 'enable calendar permission to access the calendar events');\n\ninterface objectMap {\n [key: string]: Array<string>\n}\n\nexport default {\n requestPermissions: (type: string) => {\n let query;\n if (type === 'location') {\n // requestPermissionsAsync is deprecated and requestForegroundPermissionsAsync is available only in sdk 41+\n query = Location.requestForegroundPermissionsAsync();\n } else if (type === 'video') {\n query = Promise.all([Camera.Camera.requestCameraPermissionsAsync(), Camera.Camera.requestMicrophonePermissionsAsync()]);\n } else if (type === 'image' || type === 'camera') {\n query = Camera.Camera.requestCameraPermissionsAsync();\n } else if (type === 'contacts') {\n query = Contacts.requestPermissionsAsync();\n } else if (type === 'calendar') {\n if (Platform.OS === 'ios') {\n query = Promise.all([Calendar.requestCalendarPermissionsAsync(), Calendar.requestRemindersPermissionsAsync()]);\n } else {\n query = Calendar.requestCalendarPermissionsAsync();\n }\n }\n if (!query) {\n return Promise.reject('no supported permission type.');\n }\n return (query as any).then((response: any) => {\n if (Array.isArray(response)) {\n const isRejected = response.find(o => o.status !== 'granted');\n if (isRejected) {\n return Promise.reject(rejectionMsgMap.get(type));\n }\n } else if (response && response.status !== 'granted') {\n return Promise.reject(rejectionMsgMap.get(type));\n }\n return Promise.resolve();\n }, (error: any) => {\n console.log('permission is not enabled ', error);\n return Promise.reject();\n });\n }\n}"],"mappings":"AAAA,OAAO,KAAKA,QAAQ,MAAM,eAAe;AACzC,OAAO,KAAKC,QAAQ,MAAM,eAAe;AACzC,OAAO,KAAKC,QAAQ,MAAM,eAAe;AACzC,OAAO,KAAKC,MAAM,MAAM,aAAa;AACrC,SAASC,QAAQ,QAAQ,cAAc;AAEvC,MAAMC,eAAe,GAAG,IAAIC,GAAG,CAAiB,CAAC;AAEjDD,eAAe,CAACE,GAAG,CAAC,QAAQ,EAAE,gDAAgD,CAAC;AAC/EF,eAAe,CAACE,GAAG,CAAC,OAAO,EAAE,4DAA4D,CAAC;AAC1FF,eAAe,CAACE,GAAG,CAAC,UAAU,EAAE,sDAAsD,CAAC;AACvFF,eAAe,CAACE,GAAG,CAAC,UAAU,EAAE,mDAAmD,CAAC;AACpFF,eAAe,CAACE,GAAG,CAAC,UAAU,EAAE,0DAA0D,CAAC;AAM3F,eAAe;EACbC,kBAAkB,EAAGC,IAAY,IAAK;IACpC,IAAIC,KAAK;IACT,IAAID,IAAI,KAAK,UAAU,EAAE;MACvB;MACAC,KAAK,GAAGV,QAAQ,CAACW,iCAAiC,CAAC,CAAC;IACtD,CAAC,MAAM,IAAIF,IAAI,KAAK,OAAO,EAAE;MAC3BC,KAAK,GAAGE,OAAO,CAACC,GAAG,CAAC,CAACV,MAAM,CAACA,MAAM,CAACW,6BAA6B,CAAC,CAAC,EAAEX,MAAM,CAACA,MAAM,CAACY,iCAAiC,CAAC,CAAC,CAAC,CAAC;IACzH,CAAC,MAAM,IAAIN,IAAI,KAAK,OAAO,IAAIA,IAAI,KAAK,QAAQ,EAAE;MAChDC,KAAK,GAAGP,MAAM,CAACA,MAAM,CAACW,6BAA6B,CAAC,CAAC;IACvD,CAAC,MAAM,IAAIL,IAAI,KAAK,UAAU,EAAE;MAC9BC,KAAK,GAAGT,QAAQ,CAACe,uBAAuB,CAAC,CAAC;IAC5C,CAAC,MAAM,IAAIP,IAAI,KAAK,UAAU,EAAE;MAC9B,IAAIL,QAAQ,CAACa,EAAE,KAAK,KAAK,EAAE;QACzBP,KAAK,GAAGE,OAAO,CAACC,GAAG,CAAC,CAACX,QAAQ,CAACgB,+BAA+B,CAAC,CAAC,EAAEhB,QAAQ,CAACiB,gCAAgC,CAAC,CAAC,CAAC,CAAC;MAChH,CAAC,MAAM;QACLT,KAAK,GAAGR,QAAQ,CAACgB,+BAA+B,CAAC,CAAC;MACpD;IACF;IACA,IAAI,CAACR,KAAK,EAAE;MACV,OAAOE,OAAO,CAACQ,MAAM,CAAC,+BAA+B,CAAC;IACxD;IACA,OAAQV,KAAK,CAASW,IAAI,CAAEC,QAAa,IAAK;MAC5C,IAAIC,KAAK,CAACC,OAAO,CAACF,QAAQ,CAAC,EAAE;QAC3B,MAAMG,UAAU,GAAGH,QAAQ,CAACI,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACC,MAAM,KAAK,SAAS,CAAC;QAC7D,IAAIH,UAAU,EAAE;UACd,OAAOb,OAAO,CAACQ,MAAM,CAACf,eAAe,CAACwB,GAAG,CAACpB,IAAI,CAAC,CAAC;QAClD;MACF,CAAC,MAAM,IAAIa,QAAQ,IAAIA,QAAQ,CAACM,MAAM,KAAK,SAAS,EAAE;QACpD,OAAOhB,OAAO,CAACQ,MAAM,CAACf,eAAe,CAACwB,GAAG,CAACpB,IAAI,CAAC,CAAC;MAClD;MACA,OAAOG,OAAO,CAACkB,OAAO,CAAC,CAAC;IAC1B,CAAC,EAAGC,KAAU,IAAK;MACjBC,OAAO,CAACC,GAAG,CAAC,4BAA4B,EAAEF,KAAK,CAAC;MAChD,OAAOnB,OAAO,CAACQ,MAAM,CAAC,CAAC;IACzB,CAAC,CAAC;EACJ;AACF,CAAC","ignoreList":[]}
@@ -1,7 +1,9 @@
1
1
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
+ import { CameraView } from 'expo-camera';
2
3
  import { Ionicons } from '@expo/vector-icons';
3
4
  import { Platform, StyleSheet, TouchableOpacity, View } from 'react-native';
4
5
  import React from 'react';
6
+ import permissionManager from '@wavemaker/app-rn-runtime/runtime/services/device/permissions';
5
7
  import appDisplayManagerService from '@wavemaker/app-rn-runtime/runtime/services/app-display-manager.service';
6
8
  const barcodeFormatOptions = {
7
9
  'ALL': 'ALL',
@@ -101,13 +103,10 @@ export class ScanService {
101
103
  };
102
104
  }
103
105
  scanBarcode(params) {
104
- var _params$scanPluginSer;
105
106
  const format = (params === null || params === void 0 ? void 0 : params.barcodeFormat) || 'ALL';
106
107
  const barcodeFormat = Platform.OS === 'ios' ? undefined : barcodeFormatOptions[format];
107
- const CameraView = params === null || params === void 0 || (_params$scanPluginSer = params.scanPluginService) === null || _params$scanPluginSer === void 0 ? void 0 : _params$scanPluginSer.CameraView;
108
108
  return new Promise((resolve, reject) => {
109
- var _params$permissionSer;
110
- (params === null || params === void 0 || (_params$permissionSer = params.permissionService) === null || _params$permissionSer === void 0 ? void 0 : _params$permissionSer.requestPermissions) && params.permissionService.requestPermissions('camera').then(() => {
109
+ permissionManager.requestPermissions('camera').then(() => {
111
110
  const destroy = this.displayManager.show({
112
111
  content: /*#__PURE__*/React.createElement(CameraView, {
113
112
  barcodeScannerSettings: barcodeFormat ? {
@@ -1 +1 @@
1
- {"version":3,"names":["Ionicons","Platform","StyleSheet","TouchableOpacity","View","React","appDisplayManagerService","barcodeFormatOptions","opacity","styles","create","container","flex","flexDirection","closeWrapper","justifyContent","alignItems","paddingBottom","topWrapper","backgroundColor","centerWrapper","leftWrapper","focused","rightWrapper","bottomWrapper","BarCodeType","ScanService","constructor","displayManager","getTestProps","suffix","id","OS","accessibilityLabel","testID","accessible","scanBarcode","params","_params$scanPluginSer","format","barcodeFormat","undefined","CameraView","scanPluginService","Promise","resolve","reject","_params$permissionSer","permissionService","requestPermissions","then","destroy","show","content","createElement","barcodeScannerSettings","barcodeTypes","onBarcodeScanned","result","call","style","absoluteFillObject","_extends","onPress","name","size","color","response","type","values","Object","index","indexOf","keys","text","data","cancelled","scanService"],"sources":["scan-service.tsx"],"sourcesContent":["import { Ionicons } from '@expo/vector-icons';\nimport { Platform, StyleSheet, TouchableOpacity, View } from 'react-native';\nimport React from 'react';\nimport { ScanInput, ScanOutput } from '@wavemaker/app-rn-runtime/variables/device/scan/scan.operation';\nimport { DisplayManager } from '@wavemaker/app-rn-runtime/core/display.manager';\nimport appDisplayManagerService from '@wavemaker/app-rn-runtime/runtime/services/app-display-manager.service';\n\ninterface objectMap {\n [key: string]: string\n}\n\nconst barcodeFormatOptions: objectMap = {\n 'ALL': 'ALL',\n 'CODABAR': 'codabar',\n 'CODE_39': 'code39',\n 'CODE_93': 'code93',\n 'CODE_128': 'code128',\n 'DATA_MATRIX': 'datamatrix',\n 'EAN_8': 'ean8',\n 'EAN_13': 'ean13',\n 'ITF': 'itf14',\n 'PDF_417': 'pdf417',\n 'QR_CODE': 'qr',\n 'RSS14': 'rss14',\n 'RSS_EXPANDED': 'rssexpanded',\n 'UPC_E': 'upc_e',\n 'UPC_A': 'upc_a'\n};\nconst opacity = 'rgba(0, 0, 0, 0.6)';\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n flexDirection: 'column'\n },\n closeWrapper: {\n flex: 1,\n justifyContent: 'flex-end',\n alignItems: 'center',\n paddingBottom: 32\n },\n topWrapper: {\n flex: 2,\n backgroundColor: opacity\n },\n centerWrapper: {\n flex: 2,\n flexDirection: 'row'\n },\n leftWrapper: {\n flex: 2,\n backgroundColor: opacity\n },\n focused: {\n flex: 10\n },\n rightWrapper: {\n flex: 2,\n backgroundColor: opacity\n },\n bottomWrapper: {\n flex: 2,\n backgroundColor: opacity\n },\n});\n\nconst BarCodeType: any = [\n { 0: 'aztec' },\n { 1: 'ean13' },\n { 2: 'ean8' },\n { 3: 'qr' },\n { 4: 'pdf417' },\n { 5: 'upc_e' },\n { 6: 'datamatrix' },\n { 7: 'code39' },\n { 8: 'code93' },\n { 9: 'itf14' },\n { 10: 'codabar' },\n { 11: 'code128' },\n { 12: 'upc_a' }\n];\n\n\nexport class ScanService {\n\n constructor(private displayManager: DisplayManager) {}\n\n getTestProps(suffix: string) {\n const id = \"scan\" + (suffix ? '_' + suffix : '');\n if (Platform.OS === 'android' || Platform.OS === 'web') {\n return {\n accessibilityLabel: id,\n testID: id\n };\n }\n return {\n accessible: false,\n testID: id\n };\n }\n\n public scanBarcode(params: ScanInput): Promise<ScanOutput> {\n const format = params?.barcodeFormat || 'ALL';\n const barcodeFormat: string | undefined = Platform.OS === 'ios' ? undefined : barcodeFormatOptions[format];\n const CameraView = params?.scanPluginService?.CameraView;\n return new Promise((resolve, reject) => {\n params?.permissionService?.requestPermissions && params.permissionService.requestPermissions('camera').then(() => {\n const destroy = this.displayManager.show({\n content: (<CameraView\n barcodeScannerSettings={barcodeFormat ? {\n barcodeTypes: [BarCodeType[barcodeFormat]],\n }: undefined}\n onBarcodeScanned={(result: any) => {\n destroy.call(this.displayManager);\n resolve(result);\n }}\n style={StyleSheet.absoluteFillObject}\n >\n <View style={styles.topWrapper}>\n </View>\n <View style={styles.centerWrapper}>\n <View style={styles.leftWrapper}/>\n <View style={styles.focused}/>\n <View style={styles.rightWrapper}/>\n </View>\n <View style={styles.bottomWrapper}>\n \n <View style={styles.closeWrapper}>\n <TouchableOpacity\n {... this.getTestProps('close_button')}\n onPress={() => {\n destroy.call(this.displayManager);\n }}>\n <Ionicons name='close-circle' size={48} color='white' />\n </TouchableOpacity>\n </View>\n </View>\n </CameraView>)\n });\n }, reject)\n }).then((response: any) => {\n let format;\n if (response.type) {\n const values = Object.values(BarCodeType);\n const index = values.indexOf(response.type);\n format = index > -1 ? Object.keys(BarCodeType)[index] : '';\n }\n return Promise.resolve({\n text: response.data,\n format : format || response.type,\n cancelled : false\n });\n });\n }\n}\nconst scanService = new ScanService(appDisplayManagerService);\nexport default scanService;"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["CameraView","Ionicons","Platform","StyleSheet","TouchableOpacity","View","React","permissionManager","appDisplayManagerService","barcodeFormatOptions","opacity","styles","create","container","flex","flexDirection","closeWrapper","justifyContent","alignItems","paddingBottom","topWrapper","backgroundColor","centerWrapper","leftWrapper","focused","rightWrapper","bottomWrapper","BarCodeType","ScanService","constructor","displayManager","getTestProps","suffix","id","OS","accessibilityLabel","testID","accessible","scanBarcode","params","format","barcodeFormat","undefined","Promise","resolve","reject","requestPermissions","then","destroy","show","content","createElement","barcodeScannerSettings","barcodeTypes","onBarcodeScanned","result","call","style","absoluteFillObject","_extends","onPress","name","size","color","response","type","values","Object","index","indexOf","keys","text","data","cancelled","scanService"],"sources":["scan-service.tsx"],"sourcesContent":["import { CameraView } from 'expo-camera';\nimport { Ionicons } from '@expo/vector-icons';\nimport * as Application from 'expo-application';\nimport { Platform, StyleSheet, TouchableOpacity, View } from 'react-native';\nimport React from 'react';\nimport { ScanInput, ScanOutput } from '@wavemaker/app-rn-runtime/variables/device/scan/scan.operation';\nimport { DisplayManager } from '@wavemaker/app-rn-runtime/core/display.manager';\nimport permissionManager from '@wavemaker/app-rn-runtime/runtime/services/device/permissions';\nimport appDisplayManagerService from '@wavemaker/app-rn-runtime/runtime/services/app-display-manager.service';\n\ninterface objectMap {\n [key: string]: string\n}\n\nconst barcodeFormatOptions: objectMap = {\n 'ALL': 'ALL',\n 'CODABAR': 'codabar',\n 'CODE_39': 'code39',\n 'CODE_93': 'code93',\n 'CODE_128': 'code128',\n 'DATA_MATRIX': 'datamatrix',\n 'EAN_8': 'ean8',\n 'EAN_13': 'ean13',\n 'ITF': 'itf14',\n 'PDF_417': 'pdf417',\n 'QR_CODE': 'qr',\n 'RSS14': 'rss14',\n 'RSS_EXPANDED': 'rssexpanded',\n 'UPC_E': 'upc_e',\n 'UPC_A': 'upc_a'\n};\nconst opacity = 'rgba(0, 0, 0, 0.6)';\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n flexDirection: 'column'\n },\n closeWrapper: {\n flex: 1,\n justifyContent: 'flex-end',\n alignItems: 'center',\n paddingBottom: 32\n },\n topWrapper: {\n flex: 2,\n backgroundColor: opacity\n },\n centerWrapper: {\n flex: 2,\n flexDirection: 'row'\n },\n leftWrapper: {\n flex: 2,\n backgroundColor: opacity\n },\n focused: {\n flex: 10\n },\n rightWrapper: {\n flex: 2,\n backgroundColor: opacity\n },\n bottomWrapper: {\n flex: 2,\n backgroundColor: opacity\n },\n});\n\nconst BarCodeType: any = [\n { 0: 'aztec' },\n { 1: 'ean13' },\n { 2: 'ean8' },\n { 3: 'qr' },\n { 4: 'pdf417' },\n { 5: 'upc_e' },\n { 6: 'datamatrix' },\n { 7: 'code39' },\n { 8: 'code93' },\n { 9: 'itf14' },\n { 10: 'codabar' },\n { 11: 'code128' },\n { 12: 'upc_a' }\n];\n\n\nexport class ScanService {\n\n constructor(private displayManager: DisplayManager) {}\n\n getTestProps(suffix: string) {\n const id = \"scan\" + (suffix ? '_' + suffix : '');\n if (Platform.OS === 'android' || Platform.OS === 'web') {\n return {\n accessibilityLabel: id,\n testID: id\n };\n }\n return {\n accessible: false,\n testID: id\n };\n }\n\n public scanBarcode(params: ScanInput): Promise<ScanOutput> {\n const format = params?.barcodeFormat || 'ALL';\n const barcodeFormat: string | undefined = Platform.OS === 'ios' ? undefined : barcodeFormatOptions[format];\n return new Promise((resolve, reject) => {\n permissionManager.requestPermissions('camera').then(() => {\n const destroy = this.displayManager.show({\n content: (<CameraView\n barcodeScannerSettings={barcodeFormat ? {\n barcodeTypes: [BarCodeType[barcodeFormat]],\n }: undefined}\n onBarcodeScanned={(result) => {\n destroy.call(this.displayManager);\n resolve(result);\n }}\n style={StyleSheet.absoluteFillObject}\n >\n <View style={styles.topWrapper}>\n </View>\n <View style={styles.centerWrapper}>\n <View style={styles.leftWrapper}/>\n <View style={styles.focused}/>\n <View style={styles.rightWrapper}/>\n </View>\n <View style={styles.bottomWrapper}>\n \n <View style={styles.closeWrapper}>\n <TouchableOpacity\n {... this.getTestProps('close_button')}\n onPress={() => {\n destroy.call(this.displayManager);\n }}>\n <Ionicons name='close-circle' size={48} color='white' />\n </TouchableOpacity>\n </View>\n </View>\n </CameraView>)\n });\n }, reject)\n }).then((response: any) => {\n let format;\n if (response.type) {\n const values = Object.values(BarCodeType);\n const index = values.indexOf(response.type);\n format = index > -1 ? Object.keys(BarCodeType)[index] : '';\n }\n return Promise.resolve({\n text: response.data,\n format : format || response.type,\n cancelled : false\n });\n });\n }\n}\nconst scanService = new ScanService(appDisplayManagerService);\nexport default scanService;"],"mappings":"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","ignoreList":[]}
@@ -1,8 +1,5 @@
1
- import React from 'react';
2
1
  import { isDate, isString } from 'lodash';
3
2
  import moment from 'moment';
4
- import { CalendarPluginConsumer } from "@wavemaker/app-rn-runtime/core/device/calendar-service";
5
- import { PermissionConsumer } from '@wavemaker/app-rn-runtime/runtime/services/device/permission-service';
6
3
  /**
7
4
  * method to get the date object from the input received
8
5
  */
@@ -44,15 +41,7 @@ export class CreateEventOperation {
44
41
  this.calendar = calendar;
45
42
  }
46
43
  invoke(params) {
47
- return /*#__PURE__*/React.createElement(PermissionConsumer, null, permissionService => {
48
- return /*#__PURE__*/React.createElement(CalendarPluginConsumer, null, calendarPluginService => {
49
- return this.calendar.createEvent({
50
- ...params,
51
- calendarPluginService,
52
- permissionService
53
- });
54
- });
55
- });
44
+ return this.calendar.createEvent(params);
56
45
  }
57
46
  }
58
47
  //# sourceMappingURL=create-event.operation.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","isDate","isString","moment","CalendarPluginConsumer","PermissionConsumer","getDateObj","value","isNaN","parseInt","isValid","undefined","dateObj","Date","format","valueOf","getDay","CreateEventOperation","constructor","calendar","invoke","params","createElement","permissionService","calendarPluginService","createEvent"],"sources":["create-event.operation.tsx"],"sourcesContent":["import React from 'react';\nimport { Operation, Output } from '../operation.provider';\nimport { isDate, isString } from 'lodash';\nimport moment from 'moment';\nimport { CalendarInput, CalendarPluginConsumer, CalendarPluginService, CalendarService } from \"@wavemaker/app-rn-runtime/core/device/calendar-service\";\nimport { PermissionConsumer, PermissionService } from '@wavemaker/app-rn-runtime/runtime/services/device/permission-service';\n\nexport interface CreateEventOutput extends Output {\n dataValue: string;\n}\n\n/**\n * method to get the date object from the input received\n */\nexport const getDateObj = (value: any): any => {\n\n /*if the value is a date object, no need to covert it*/\n if (isDate(value)) {\n return value;\n }\n\n /*if the value is a timestamp string, convert it to a number*/\n if (!isNaN(value)) {\n value = parseInt(value, 10);\n }\n\n if (!moment(value).isValid() || value === '' || value === null || value === undefined) {\n return undefined;\n }\n let dateObj = new Date(value);\n /**\n * if date value is string \"20-05-2019\" then new Date(value) return 20May2019 with current time in India,\n * whereas this will return 19May2019 with time lagging for few hours.\n * This is because it returns UTC time i.e. Coordinated Universal Time (UTC).\n * To create date in local time use moment\n */\n if (isString(value)) {\n /*\n * If selected locale is Arabic, moment(value).format() is giving date in Arabic language\n * (Ex: If date value is \"1990-11-23\" and moment(value).format() is \"١٩٩٠-١١-٢٣T٠٠:٠٠:٠٠+٠٥:٣٠\")\n * and new Date(moment(value).format()) is giving Invalid Date. So frst converting it to timestamp value.\n */\n dateObj = new Date(moment(moment(value).format()).valueOf());\n }\n\n if (isNaN(dateObj.getDay())) {\n return new Date();\n }\n return dateObj;\n};\n\nexport class CreateEventOperation implements Operation {\n constructor(private calendar: CalendarService) {}\n\n public invoke(params: CalendarInput): any {\n return (\n <PermissionConsumer>\n {(permissionService: PermissionService) => {\n return (\n <CalendarPluginConsumer>\n {(calendarPluginService: CalendarPluginService) => {\n return this.calendar.createEvent({ ...params, calendarPluginService, permissionService });\n }}\n </CalendarPluginConsumer>\n );\n }}\n </PermissionConsumer>\n );\n }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,MAAM,EAAEC,QAAQ,QAAQ,QAAQ;AACzC,OAAOC,MAAM,MAAM,QAAQ;AAC3B,SAAwBC,sBAAsB,QAAgD,wDAAwD;AACtJ,SAASC,kBAAkB,QAA2B,sEAAsE;AAM5H;AACA;AACA;AACA,OAAO,MAAMC,UAAU,GAAIC,KAAU,IAAU;EAE7C;EACA,IAAIN,MAAM,CAACM,KAAK,CAAC,EAAE;IACjB,OAAOA,KAAK;EACd;;EAEA;EACA,IAAI,CAACC,KAAK,CAACD,KAAK,CAAC,EAAE;IACjBA,KAAK,GAAGE,QAAQ,CAACF,KAAK,EAAE,EAAE,CAAC;EAC7B;EAEA,IAAI,CAACJ,MAAM,CAACI,KAAK,CAAC,CAACG,OAAO,CAAC,CAAC,IAAIH,KAAK,KAAK,EAAE,IAAIA,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKI,SAAS,EAAE;IACrF,OAAOA,SAAS;EAClB;EACA,IAAIC,OAAO,GAAG,IAAIC,IAAI,CAACN,KAAK,CAAC;EAC7B;AACF;AACA;AACA;AACA;AACA;EACE,IAAIL,QAAQ,CAACK,KAAK,CAAC,EAAE;IACnB;AACJ;AACA;AACA;AACA;IACIK,OAAO,GAAG,IAAIC,IAAI,CAACV,MAAM,CAACA,MAAM,CAACI,KAAK,CAAC,CAACO,MAAM,CAAC,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC,CAAC;EAC9D;EAEA,IAAIP,KAAK,CAACI,OAAO,CAACI,MAAM,CAAC,CAAC,CAAC,EAAE;IAC3B,OAAO,IAAIH,IAAI,CAAC,CAAC;EACnB;EACA,OAAOD,OAAO;AAChB,CAAC;AAED,OAAO,MAAMK,oBAAoB,CAAsB;EACrDC,WAAWA,CAASC,QAAyB,EAAE;IAAA,KAA3BA,QAAyB,GAAzBA,QAAyB;EAAG;EAEzCC,MAAMA,CAACC,MAAqB,EAAO;IACxC,oBACErB,KAAA,CAAAsB,aAAA,CAACjB,kBAAkB,QACfkB,iBAAoC,IAAK;MACzC,oBACEvB,KAAA,CAAAsB,aAAA,CAAClB,sBAAsB,QACnBoB,qBAA4C,IAAK;QACjD,OAAO,IAAI,CAACL,QAAQ,CAACM,WAAW,CAAC;UAAE,GAAGJ,MAAM;UAAEG,qBAAqB;UAAED;QAAkB,CAAC,CAAC;MAC3F,CACsB,CAAC;IAE7B,CACkB,CAAC;EAEzB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["isDate","isString","moment","getDateObj","value","isNaN","parseInt","isValid","undefined","dateObj","Date","format","valueOf","getDay","CreateEventOperation","constructor","calendar","invoke","params","createEvent"],"sources":["create-event.operation.tsx"],"sourcesContent":["import { Operation, Output } from '../operation.provider';\nimport { isDate, isString } from 'lodash';\nimport moment from 'moment';\nimport { CalendarInput, CalendarService } from \"@wavemaker/app-rn-runtime/core/device/calendar-service\";\n\nexport interface CreateEventOutput extends Output {\n dataValue: string;\n}\n\n/**\n * method to get the date object from the input received\n */\nexport const getDateObj = (value: any): any => {\n\n /*if the value is a date object, no need to covert it*/\n if (isDate(value)) {\n return value;\n }\n\n /*if the value is a timestamp string, convert it to a number*/\n if (!isNaN(value)) {\n value = parseInt(value, 10);\n }\n\n if (!moment(value).isValid() || value === '' || value === null || value === undefined) {\n return undefined;\n }\n let dateObj = new Date(value);\n /**\n * if date value is string \"20-05-2019\" then new Date(value) return 20May2019 with current time in India,\n * whereas this will return 19May2019 with time lagging for few hours.\n * This is because it returns UTC time i.e. Coordinated Universal Time (UTC).\n * To create date in local time use moment\n */\n if (isString(value)) {\n /*\n * If selected locale is Arabic, moment(value).format() is giving date in Arabic language\n * (Ex: If date value is \"1990-11-23\" and moment(value).format() is \"١٩٩٠-١١-٢٣T٠٠:٠٠:٠٠+٠٥:٣٠\")\n * and new Date(moment(value).format()) is giving Invalid Date. So frst converting it to timestamp value.\n */\n dateObj = new Date(moment(moment(value).format()).valueOf());\n }\n\n if (isNaN(dateObj.getDay())) {\n return new Date();\n }\n return dateObj;\n};\n\nexport class CreateEventOperation implements Operation {\n constructor(private calendar: CalendarService) {}\n\n public invoke(params: CalendarInput): Promise<CreateEventOutput> {\n return this.calendar.createEvent(params);\n }\n}\n"],"mappings":"AACA,SAASA,MAAM,EAAEC,QAAQ,QAAQ,QAAQ;AACzC,OAAOC,MAAM,MAAM,QAAQ;AAO3B;AACA;AACA;AACA,OAAO,MAAMC,UAAU,GAAIC,KAAU,IAAU;EAE7C;EACA,IAAIJ,MAAM,CAACI,KAAK,CAAC,EAAE;IACjB,OAAOA,KAAK;EACd;;EAEA;EACA,IAAI,CAACC,KAAK,CAACD,KAAK,CAAC,EAAE;IACjBA,KAAK,GAAGE,QAAQ,CAACF,KAAK,EAAE,EAAE,CAAC;EAC7B;EAEA,IAAI,CAACF,MAAM,CAACE,KAAK,CAAC,CAACG,OAAO,CAAC,CAAC,IAAIH,KAAK,KAAK,EAAE,IAAIA,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKI,SAAS,EAAE;IACrF,OAAOA,SAAS;EAClB;EACA,IAAIC,OAAO,GAAG,IAAIC,IAAI,CAACN,KAAK,CAAC;EAC7B;AACF;AACA;AACA;AACA;AACA;EACE,IAAIH,QAAQ,CAACG,KAAK,CAAC,EAAE;IACnB;AACJ;AACA;AACA;AACA;IACIK,OAAO,GAAG,IAAIC,IAAI,CAACR,MAAM,CAACA,MAAM,CAACE,KAAK,CAAC,CAACO,MAAM,CAAC,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC,CAAC;EAC9D;EAEA,IAAIP,KAAK,CAACI,OAAO,CAACI,MAAM,CAAC,CAAC,CAAC,EAAE;IAC3B,OAAO,IAAIH,IAAI,CAAC,CAAC;EACnB;EACA,OAAOD,OAAO;AAChB,CAAC;AAED,OAAO,MAAMK,oBAAoB,CAAsB;EACrDC,WAAWA,CAASC,QAAyB,EAAE;IAAA,KAA3BA,QAAyB,GAAzBA,QAAyB;EAAG;EAEzCC,MAAMA,CAACC,MAAqB,EAA8B;IAC/D,OAAO,IAAI,CAACF,QAAQ,CAACG,WAAW,CAACD,MAAM,CAAC;EAC1C;AACF","ignoreList":[]}
@@ -1,20 +1,9 @@
1
- import React from 'react';
2
- import { CalendarPluginConsumer } from "@wavemaker/app-rn-runtime/core/device/calendar-service";
3
- import { PermissionConsumer } from '@wavemaker/app-rn-runtime/runtime/services/device/permission-service';
4
1
  export class DeleteEventOperation {
5
2
  constructor(calendar) {
6
3
  this.calendar = calendar;
7
4
  }
8
5
  invoke(params) {
9
- return /*#__PURE__*/React.createElement(PermissionConsumer, null, permissionService => {
10
- return /*#__PURE__*/React.createElement(CalendarPluginConsumer, null, calendarPluginService => {
11
- return this.calendar.deleteEvent({
12
- ...params,
13
- calendarPluginService,
14
- permissionService
15
- });
16
- });
17
- });
6
+ return this.calendar.deleteEvent(params);
18
7
  }
19
8
  }
20
9
  //# sourceMappingURL=delete-event.operation.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","CalendarPluginConsumer","PermissionConsumer","DeleteEventOperation","constructor","calendar","invoke","params","createElement","permissionService","calendarPluginService","deleteEvent"],"sources":["delete-event.operation.tsx"],"sourcesContent":["import React from 'react';\nimport { Operation, Output } from '../operation.provider';\nimport { CalendarInput, CalendarPluginConsumer, CalendarPluginService, CalendarService } from \"@wavemaker/app-rn-runtime/core/device/calendar-service\";\nimport { PermissionConsumer, PermissionService } from '@wavemaker/app-rn-runtime/runtime/services/device/permission-service';\n\nexport interface DeleteEventOutput extends Output {\n dataValue: boolean;\n}\n\nexport class DeleteEventOperation implements Operation {\n constructor(private calendar: CalendarService) {}\n\n public invoke(params: CalendarInput): any {\n return (\n <PermissionConsumer>\n {(permissionService: PermissionService) => {\n return (\n <CalendarPluginConsumer>\n {(calendarPluginService: CalendarPluginService) => {\n return this.calendar.deleteEvent({ ...params, calendarPluginService, permissionService });\n }}\n </CalendarPluginConsumer>\n );\n }}\n </PermissionConsumer>\n );\n }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAAwBC,sBAAsB,QAAgD,wDAAwD;AACtJ,SAASC,kBAAkB,QAA2B,sEAAsE;AAM5H,OAAO,MAAMC,oBAAoB,CAAsB;EACrDC,WAAWA,CAASC,QAAyB,EAAE;IAAA,KAA3BA,QAAyB,GAAzBA,QAAyB;EAAG;EAEzCC,MAAMA,CAACC,MAAqB,EAAO;IACxC,oBACEP,KAAA,CAAAQ,aAAA,CAACN,kBAAkB,QACfO,iBAAoC,IAAK;MACzC,oBACET,KAAA,CAAAQ,aAAA,CAACP,sBAAsB,QACnBS,qBAA4C,IAAK;QACjD,OAAO,IAAI,CAACL,QAAQ,CAACM,WAAW,CAAC;UAAE,GAAGJ,MAAM;UAAEG,qBAAqB;UAAED;QAAkB,CAAC,CAAC;MAC3F,CACsB,CAAC;IAE7B,CACkB,CAAC;EAEzB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["DeleteEventOperation","constructor","calendar","invoke","params","deleteEvent"],"sources":["delete-event.operation.tsx"],"sourcesContent":["import { Operation, Output } from '../operation.provider';\nimport { CalendarInput, CalendarService } from \"@wavemaker/app-rn-runtime/core/device/calendar-service\";\n\nexport interface DeleteEventOutput extends Output {\n dataValue: boolean;\n}\n\nexport class DeleteEventOperation implements Operation {\n constructor(private calendar: CalendarService) {}\n\n public invoke(params: CalendarInput): Promise<DeleteEventOutput> {\n return this.calendar.deleteEvent(params);\n }\n}\n"],"mappings":"AAOA,OAAO,MAAMA,oBAAoB,CAAsB;EACrDC,WAAWA,CAASC,QAAyB,EAAE;IAAA,KAA3BA,QAAyB,GAAzBA,QAAyB;EAAG;EAEzCC,MAAMA,CAACC,MAAqB,EAA8B;IAC/D,OAAO,IAAI,CAACF,QAAQ,CAACG,WAAW,CAACD,MAAM,CAAC;EAC1C;AACF","ignoreList":[]}
@@ -1,20 +1,9 @@
1
- import React from 'react';
2
- import { PermissionConsumer } from '@wavemaker/app-rn-runtime/runtime/services/device/permission-service';
3
- import { CalendarPluginConsumer } from "@wavemaker/app-rn-runtime/core/device/calendar-service";
4
1
  export class GetEventsOperation {
5
2
  constructor(calendar) {
6
3
  this.calendar = calendar;
7
4
  }
8
5
  invoke(params) {
9
- return /*#__PURE__*/React.createElement(PermissionConsumer, null, permissionService => {
10
- return /*#__PURE__*/React.createElement(CalendarPluginConsumer, null, calendarPluginService => {
11
- return this.calendar.getEvents({
12
- ...params,
13
- calendarPluginService,
14
- permissionService
15
- });
16
- });
17
- });
6
+ return this.calendar.getEvents(params);
18
7
  }
19
8
  }
20
9
  //# sourceMappingURL=get-events.operation.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","PermissionConsumer","CalendarPluginConsumer","GetEventsOperation","constructor","calendar","invoke","params","createElement","permissionService","calendarPluginService","getEvents"],"sources":["get-events.operation.tsx"],"sourcesContent":["import React from 'react';\nimport { PermissionConsumer, PermissionService } from '@wavemaker/app-rn-runtime/runtime/services/device/permission-service';\nimport { Operation, Output } from '../operation.provider';\nimport { CalendarInput, CalendarPluginConsumer, CalendarPluginService, CalendarService } from \"@wavemaker/app-rn-runtime/core/device/calendar-service\";\n\nexport interface CalendarEvent extends Output {\n title: string;\n message: string;\n location: string;\n startDate: string | Date;\n endDate: string | Date;\n}\n\nexport class GetEventsOperation implements Operation {\n constructor(private calendar: CalendarService) {}\n\n public invoke(params: CalendarInput): any {\n return (\n <PermissionConsumer>\n {(permissionService: PermissionService) => {\n return (\n <CalendarPluginConsumer>\n {(calendarPluginService: CalendarPluginService) => {\n return this.calendar.getEvents({ ...params, calendarPluginService, permissionService });\n }}\n </CalendarPluginConsumer>\n );\n }}\n </PermissionConsumer>\n );\n }\n}\n\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,kBAAkB,QAA2B,sEAAsE;AAE5H,SAAwBC,sBAAsB,QAAgD,wDAAwD;AAUtJ,OAAO,MAAMC,kBAAkB,CAAsB;EACnDC,WAAWA,CAASC,QAAyB,EAAE;IAAA,KAA3BA,QAAyB,GAAzBA,QAAyB;EAAG;EAEzCC,MAAMA,CAACC,MAAqB,EAAO;IACxC,oBACEP,KAAA,CAAAQ,aAAA,CAACP,kBAAkB,QACfQ,iBAAoC,IAAK;MACzC,oBACET,KAAA,CAAAQ,aAAA,CAACN,sBAAsB,QACnBQ,qBAA4C,IAAK;QACjD,OAAO,IAAI,CAACL,QAAQ,CAACM,SAAS,CAAC;UAAE,GAAGJ,MAAM;UAAEG,qBAAqB;UAAED;QAAkB,CAAC,CAAC;MACzF,CACsB,CAAC;IAE7B,CACkB,CAAC;EAEzB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["GetEventsOperation","constructor","calendar","invoke","params","getEvents"],"sources":["get-events.operation.tsx"],"sourcesContent":["import { Operation, Output } from '../operation.provider';\nimport { CalendarInput, CalendarService } from \"@wavemaker/app-rn-runtime/core/device/calendar-service\";\n\nexport interface CalendarEvent extends Output {\n title: string;\n message: string;\n location: string;\n startDate: string | Date;\n endDate: string | Date;\n}\n\nexport class GetEventsOperation implements Operation {\n constructor(private calendar: CalendarService) {}\n\n public invoke(params: CalendarInput): Promise<Array<CalendarEvent>> {\n return this.calendar.getEvents(params);\n }\n}\n\n"],"mappings":"AAWA,OAAO,MAAMA,kBAAkB,CAAsB;EACnDC,WAAWA,CAASC,QAAyB,EAAE;IAAA,KAA3BA,QAAyB,GAAzBA,QAAyB;EAAG;EAEzCC,MAAMA,CAACC,MAAqB,EAAiC;IAClE,OAAO,IAAI,CAACF,QAAQ,CAACG,SAAS,CAACD,MAAM,CAAC;EACxC;AACF","ignoreList":[]}
@@ -1,16 +1,9 @@
1
- import React from 'react';
2
- import { PermissionConsumer } from "@wavemaker/app-rn-runtime/runtime/services/device/permission-service";
3
1
  export class CaptureImageOperation {
4
2
  constructor(camera) {
5
3
  this.camera = camera;
6
4
  }
7
5
  invoke(params) {
8
- return /*#__PURE__*/React.createElement(PermissionConsumer, null, permissionService => {
9
- return this.camera.captureImage({
10
- ...params,
11
- permissionService
12
- });
13
- });
6
+ return this.camera.captureImage(params);
14
7
  }
15
8
  }
16
9
  //# sourceMappingURL=capture-image.operation.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","PermissionConsumer","CaptureImageOperation","constructor","camera","invoke","params","createElement","permissionService","captureImage"],"sources":["capture-image.operation.tsx"],"sourcesContent":["import React from 'react';\nimport {CameraInput, CameraService} from \"@wavemaker/app-rn-runtime/core/device/camera-service\";\nimport { Operation, Output } from '../operation.provider';\nimport { PermissionConsumer, PermissionService } from \"@wavemaker/app-rn-runtime/runtime/services/device/permission-service\";\n\nexport interface CaptureImageOutput extends Output {\n imagePath: string;\n content: string;\n}\n\nexport class CaptureImageOperation implements Operation {\n constructor(private camera: CameraService) {}\n\n public invoke(params: CameraInput): any {\n return (\n <PermissionConsumer>\n {(permissionService: PermissionService) => {\n return this.camera.captureImage({...params, permissionService});\n }}\n </PermissionConsumer>\n )\n }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAGzB,SAASC,kBAAkB,QAA2B,sEAAsE;AAO5H,OAAO,MAAMC,qBAAqB,CAAsB;EACtDC,WAAWA,CAASC,MAAqB,EAAE;IAAA,KAAvBA,MAAqB,GAArBA,MAAqB;EAAG;EAErCC,MAAMA,CAACC,MAAmB,EAAO;IACtC,oBACEN,KAAA,CAAAO,aAAA,CAACN,kBAAkB,QACfO,iBAAoC,IAAK;MACzC,OAAO,IAAI,CAACJ,MAAM,CAACK,YAAY,CAAC;QAAC,GAAGH,MAAM;QAAEE;MAAiB,CAAC,CAAC;IACjE,CACkB,CAAC;EAEzB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["CaptureImageOperation","constructor","camera","invoke","params","captureImage"],"sources":["capture-image.operation.tsx"],"sourcesContent":["import {CameraInput, CameraService} from \"@wavemaker/app-rn-runtime/core/device/camera-service\";\nimport { Operation, Output } from '../operation.provider';\n\nexport interface CaptureImageOutput extends Output {\n imagePath: string;\n content: string;\n}\n\nexport class CaptureImageOperation implements Operation {\n constructor(private camera: CameraService) {}\n\n public invoke(params: CameraInput): Promise<CaptureImageOutput> {\n return this.camera.captureImage(params);\n }\n}\n"],"mappings":"AAQA,OAAO,MAAMA,qBAAqB,CAAsB;EACtDC,WAAWA,CAASC,MAAqB,EAAE;IAAA,KAAvBA,MAAqB,GAArBA,MAAqB;EAAG;EAErCC,MAAMA,CAACC,MAAmB,EAA+B;IAC9D,OAAO,IAAI,CAACF,MAAM,CAACG,YAAY,CAACD,MAAM,CAAC;EACzC;AACF","ignoreList":[]}
@@ -1,15 +1,9 @@
1
- import React from 'react';
2
- import { PermissionConsumer } from "@wavemaker/app-rn-runtime/runtime/services/device/permission-service";
3
1
  export class CaptureVideoOperation {
4
2
  constructor(camera) {
5
3
  this.camera = camera;
6
4
  }
7
5
  invoke() {
8
- return /*#__PURE__*/React.createElement(PermissionConsumer, null, permissionService => {
9
- return this.camera.captureVideo({
10
- permissionService
11
- });
12
- });
6
+ return this.camera.captureVideo();
13
7
  }
14
8
  }
15
9
  //# sourceMappingURL=capture-video.operation.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","PermissionConsumer","CaptureVideoOperation","constructor","camera","invoke","createElement","permissionService","captureVideo"],"sources":["capture-video.operation.tsx"],"sourcesContent":["import React from 'react';\nimport { CameraService } from \"@wavemaker/app-rn-runtime/core/device/camera-service\";\nimport { Operation, Output } from '../operation.provider';\nimport { PermissionConsumer, PermissionService } from \"@wavemaker/app-rn-runtime/runtime/services/device/permission-service\";\n\nexport interface CaptureVideoOutput extends Output {\n videoPath: string;\n content: string;\n}\n\nexport class CaptureVideoOperation implements Operation {\n constructor(private camera: CameraService) {\n }\n\n public invoke(): any {\n return (\n <PermissionConsumer>\n {(permissionService: PermissionService) => {\n return this.camera.captureVideo({permissionService});\n }}\n </PermissionConsumer>\n )\n }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAGzB,SAASC,kBAAkB,QAA2B,sEAAsE;AAO5H,OAAO,MAAMC,qBAAqB,CAAsB;EACtDC,WAAWA,CAASC,MAAqB,EAAE;IAAA,KAAvBA,MAAqB,GAArBA,MAAqB;EACzC;EAEOC,MAAMA,CAAA,EAAQ;IACnB,oBACEL,KAAA,CAAAM,aAAA,CAACL,kBAAkB,QACfM,iBAAoC,IAAK;MACzC,OAAO,IAAI,CAACH,MAAM,CAACI,YAAY,CAAC;QAACD;MAAiB,CAAC,CAAC;IACtD,CACkB,CAAC;EAEzB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["CaptureVideoOperation","constructor","camera","invoke","captureVideo"],"sources":["capture-video.operation.tsx"],"sourcesContent":["import { CameraService } from \"@wavemaker/app-rn-runtime/core/device/camera-service\";\nimport { Operation, Output } from '../operation.provider';\n\nexport interface CaptureVideoOutput extends Output {\n videoPath: string;\n content: string;\n}\n\nexport class CaptureVideoOperation implements Operation {\n constructor(private camera: CameraService) {\n }\n\n public invoke(): Promise<CaptureVideoOutput> {\n return this.camera.captureVideo();\n }\n}\n"],"mappings":"AAQA,OAAO,MAAMA,qBAAqB,CAAsB;EACtDC,WAAWA,CAASC,MAAqB,EAAE;IAAA,KAAvBA,MAAqB,GAArBA,MAAqB;EACzC;EAEOC,MAAMA,CAAA,EAAgC;IAC3C,OAAO,IAAI,CAACD,MAAM,CAACE,YAAY,CAAC,CAAC;EACnC;AACF","ignoreList":[]}
@@ -1,20 +1,9 @@
1
- import React from 'react';
2
- import { ContactsPluginConsumer } from "@wavemaker/app-rn-runtime/core/device/contacts-service";
3
- import { PermissionConsumer } from "@wavemaker/app-rn-runtime/runtime/services/device/permission-service";
4
1
  export class GetContactsOperation {
5
2
  constructor(contacts) {
6
3
  this.contacts = contacts;
7
4
  }
8
5
  invoke(params) {
9
- /*#__PURE__*/React.createElement(PermissionConsumer, null, permissionService => {
10
- return /*#__PURE__*/React.createElement(ContactsPluginConsumer, null, contactsPluginService => {
11
- return this.contacts.getContacts({
12
- ...params,
13
- contactsPluginService,
14
- permissionService
15
- });
16
- });
17
- });
6
+ return this.contacts.getContacts(params);
18
7
  }
19
8
  }
20
9
  //# sourceMappingURL=get-contacts.operation.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","ContactsPluginConsumer","PermissionConsumer","GetContactsOperation","constructor","contacts","invoke","params","createElement","permissionService","contactsPluginService","getContacts"],"sources":["get-contacts.operation.tsx"],"sourcesContent":["import React from 'react';\nimport { Output, Operation } from '../operation.provider';\nimport { ContactsInput, ContactsPluginConsumer, ContactsPluginService, ContactsService } from \"@wavemaker/app-rn-runtime/core/device/contacts-service\";\nimport { PermissionConsumer, PermissionService } from \"@wavemaker/app-rn-runtime/runtime/services/device/permission-service\";\n\nexport interface PhoneNumber {\n value: string;\n}\n\nexport interface ContactsOutput extends Output{\n id: number;\n displayName: string;\n phoneNumbers: Array<PhoneNumber>;\n}\n\nexport class GetContactsOperation implements Operation {\n constructor(private contacts: ContactsService) {}\n\n public invoke(params: ContactsInput): any {\n <PermissionConsumer>\n {(permissionService: PermissionService) => {\n return (\n <ContactsPluginConsumer>\n {(contactsPluginService: ContactsPluginService) => {\n return this.contacts.getContacts({ ...params, contactsPluginService, permissionService });\n }}\n </ContactsPluginConsumer>\n )\n }}\n </PermissionConsumer>\n }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAAwBC,sBAAsB,QAAgD,wDAAwD;AACtJ,SAASC,kBAAkB,QAA2B,sEAAsE;AAY5H,OAAO,MAAMC,oBAAoB,CAAsB;EACrDC,WAAWA,CAASC,QAAyB,EAAE;IAAA,KAA3BA,QAAyB,GAAzBA,QAAyB;EAAG;EAEzCC,MAAMA,CAACC,MAAqB,EAAO;IACxC,aAAAP,KAAA,CAAAQ,aAAA,CAACN,kBAAkB,QACfO,iBAAoC,IAAK;MACzC,oBACET,KAAA,CAAAQ,aAAA,CAACP,sBAAsB,QACnBS,qBAA4C,IAAK;QACjD,OAAO,IAAI,CAACL,QAAQ,CAACM,WAAW,CAAC;UAAE,GAAGJ,MAAM;UAAEG,qBAAqB;UAAED;QAAkB,CAAC,CAAC;MAC3F,CACsB,CAAC;IAE7B,CACkB,CAAC;EACvB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["GetContactsOperation","constructor","contacts","invoke","params","getContacts"],"sources":["get-contacts.operation.ts"],"sourcesContent":["import { Output, Operation } from '../operation.provider';\nimport { ContactsInput, ContactsService } from \"@wavemaker/app-rn-runtime/core/device/contacts-service\";\n\nexport interface PhoneNumber {\n value: string;\n}\n\nexport interface ContactsOutput extends Output{\n id: number;\n displayName: string;\n phoneNumbers: Array<PhoneNumber>;\n}\n\nexport class GetContactsOperation implements Operation {\n constructor(private contacts: ContactsService) {}\n\n public invoke(params: ContactsInput): Promise<Array<ContactsOutput>> {\n return this.contacts.getContacts(params);\n }\n}\n"],"mappings":"AAaA,OAAO,MAAMA,oBAAoB,CAAsB;EACrDC,WAAWA,CAASC,QAAyB,EAAE;IAAA,KAA3BA,QAAyB,GAAzBA,QAAyB;EAAG;EAEzCC,MAAMA,CAACC,MAAqB,EAAkC;IACnE,OAAO,IAAI,CAACF,QAAQ,CAACG,WAAW,CAACD,MAAM,CAAC;EAC1C;AACF","ignoreList":[]}
@@ -1,20 +1,9 @@
1
- import React from 'react';
2
- import { LocationPluginConsumer } from "@wavemaker/app-rn-runtime/core/device/location-service";
3
- import { PermissionConsumer } from "@wavemaker/app-rn-runtime/runtime/services/device/permission-service";
4
1
  export class CurrentGeoPositionOperation {
5
2
  constructor(location) {
6
3
  this.location = location;
7
4
  }
8
5
  invoke(params) {
9
- return /*#__PURE__*/React.createElement(PermissionConsumer, null, permissionService => {
10
- return /*#__PURE__*/React.createElement(LocationPluginConsumer, null, locationPluginService => {
11
- return this.location.getCurrentGeoPosition({
12
- ...params,
13
- locationPluginService,
14
- permissionService
15
- });
16
- });
17
- });
6
+ return this.location.getCurrentGeoPosition(params);
18
7
  }
19
8
  }
20
9
  //# sourceMappingURL=current-geo-position.operation.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","LocationPluginConsumer","PermissionConsumer","CurrentGeoPositionOperation","constructor","location","invoke","params","createElement","permissionService","locationPluginService","getCurrentGeoPosition"],"sources":["current-geo-position.operation.tsx"],"sourcesContent":["import React from 'react';\nimport { Input, Operation, Output } from \"@wavemaker/app-rn-runtime/variables/device/operation.provider\";\nimport { LocationPluginConsumer, LocationPluginService, LocationService } from \"@wavemaker/app-rn-runtime/core/device/location-service\";\nimport { PermissionConsumer, PermissionService } from \"@wavemaker/app-rn-runtime/runtime/services/device/permission-service\";\n\nexport interface coordsOutput {\n latitude: number | null;\n longitude: number | null;\n altitude: number | null;\n accuracy: number | null;\n altitudeAccuracy: number | null;\n heading: number | null;\n speed: number | null;\n}\n\nexport interface GeoPositionOutput extends Output {\n coords: coordsOutput;\n timestamp: number | null;\n}\n\nexport interface GeoPositionInput extends Input {\n maximumAge: number;\n timeout: number;\n enableHighAccuracy: boolean;\n permissionService: any;\n locationPluginService: any;\n}\n\nexport class CurrentGeoPositionOperation implements Operation {\n constructor(private location: LocationService) {\n }\n\n public invoke(params: GeoPositionInput): any {\n return (\n <PermissionConsumer>\n {(permissionService: PermissionService) => {\n return (\n <LocationPluginConsumer>\n {(locationPluginService: LocationPluginService) => {\n return this.location.getCurrentGeoPosition({...params, locationPluginService, permissionService});\n }}\n </LocationPluginConsumer>\n );\n }}\n </PermissionConsumer>\n )\n }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,sBAAsB,QAAgD,wDAAwD;AACvI,SAASC,kBAAkB,QAA2B,sEAAsE;AAyB5H,OAAO,MAAMC,2BAA2B,CAAsB;EAC5DC,WAAWA,CAASC,QAAyB,EAAE;IAAA,KAA3BA,QAAyB,GAAzBA,QAAyB;EAC7C;EAEOC,MAAMA,CAACC,MAAwB,EAAO;IAC3C,oBACEP,KAAA,CAAAQ,aAAA,CAACN,kBAAkB,QACfO,iBAAoC,IAAK;MACzC,oBACET,KAAA,CAAAQ,aAAA,CAACP,sBAAsB,QACnBS,qBAA4C,IAAK;QACjD,OAAO,IAAI,CAACL,QAAQ,CAACM,qBAAqB,CAAC;UAAC,GAAGJ,MAAM;UAAEG,qBAAqB;UAAED;QAAiB,CAAC,CAAC;MACnG,CACoB,CAAC;IAE3B,CACkB,CAAC;EAEzB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["CurrentGeoPositionOperation","constructor","location","invoke","params","getCurrentGeoPosition"],"sources":["current-geo-position.operation.ts"],"sourcesContent":["import { Input, Operation, Output } from \"@wavemaker/app-rn-runtime/variables/device/operation.provider\";\nimport { LocationService } from \"@wavemaker/app-rn-runtime/core/device/location-service\";\n\nexport interface coordsOutput {\n latitude: number | null;\n longitude: number | null;\n altitude: number | null;\n accuracy: number | null;\n altitudeAccuracy: number | null;\n heading: number | null;\n speed: number | null;\n}\n\nexport interface GeoPositionOutput extends Output {\n coords: coordsOutput;\n timestamp: number | null;\n}\n\nexport interface GeoPositionInput extends Input {\n maximumAge: number;\n timeout: number;\n enableHighAccuracy: boolean;\n}\n\nexport class CurrentGeoPositionOperation implements Operation {\n constructor(private location: LocationService) {\n }\n\n public invoke(params: GeoPositionInput): Promise<GeoPositionOutput> {\n return this.location.getCurrentGeoPosition(params);\n }\n}\n"],"mappings":"AAwBA,OAAO,MAAMA,2BAA2B,CAAsB;EAC5DC,WAAWA,CAASC,QAAyB,EAAE;IAAA,KAA3BA,QAAyB,GAAzBA,QAAyB;EAC7C;EAEOC,MAAMA,CAACC,MAAwB,EAA8B;IAClE,OAAO,IAAI,CAACF,QAAQ,CAACG,qBAAqB,CAACD,MAAM,CAAC;EACpD;AACF","ignoreList":[]}
@@ -1,26 +1,15 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
2
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
- import React from 'react';
5
1
  import axios from 'axios';
6
2
  import { endsWith } from 'lodash-es';
3
+ import * as DocumentPicker from 'expo-document-picker';
7
4
  import { FileExtensionTypesMap } from '@wavemaker/app-rn-runtime/core/file-extension-types';
8
- import { FileUploadPluginConsumer } from '@wavemaker/app-rn-runtime/core/device/fileupload-service';
9
5
  const namedParameters = {
10
6
  copyToCacheDirectory: false,
11
7
  multiple: false,
12
8
  type: '*/*'
13
9
  };
14
10
  export class UploadFileOperation {
15
- constructor() {
16
- _defineProperty(this, "fileUploadService", null);
17
- }
18
- setFileUploadService(service) {
19
- this.fileUploadService = service;
20
- }
21
11
  chooseFile() {
22
- var _this$fileUploadServi;
23
- return (_this$fileUploadServi = this.fileUploadService) === null || _this$fileUploadServi === void 0 ? void 0 : _this$fileUploadServi.getDocumentAsync(namedParameters).then(response => {
12
+ return DocumentPicker.getDocumentAsync(namedParameters).then(response => {
24
13
  const assets = response === null || response === void 0 ? void 0 : response.assets[0];
25
14
  return {
26
15
  uri: assets.uri,
@@ -36,10 +25,7 @@ export class UploadFileOperation {
36
25
  }
37
26
  return Promise.resolve().then(() => {
38
27
  if (!params.localFile && params.browse) {
39
- return /*#__PURE__*/React.createElement(FileUploadPluginConsumer, null, fileUploadPluginService => {
40
- this.fileUploadService = fileUploadPluginService;
41
- return this.chooseFile();
42
- });
28
+ return this.chooseFile();
43
29
  } else {
44
30
  const name = params.localFile.split('/').pop() || '';
45
31
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["React","axios","endsWith","FileExtensionTypesMap","FileUploadPluginConsumer","namedParameters","copyToCacheDirectory","multiple","type","UploadFileOperation","constructor","_defineProperty","setFileUploadService","service","fileUploadService","chooseFile","_this$fileUploadServi","getDocumentAsync","then","response","assets","uri","name","invoke","params","serverUrl","remoteFolder","Promise","resolve","localFile","browse","createElement","fileUploadPluginService","split","pop","data","fileName","arr","fileExtension","length","toLocaleLowerCase","fileObj","formData","FormData","append","url","method","headers","error"],"sources":["upload-file.operation.tsx"],"sourcesContent":["import React from 'react';\nimport axios from 'axios';\nimport { Platform } from 'react-native';\nimport { endsWith } from 'lodash-es';\n\nimport { Operation } from '@wavemaker/app-rn-runtime/variables/device/operation.provider';\nimport { FileExtensionTypesMap } from '@wavemaker/app-rn-runtime/core/file-extension-types';\nimport { FileUploadPluginConsumer, FileUploadPluginService } from '@wavemaker/app-rn-runtime/core/device/fileupload-service';\n\nexport interface UploadFileInput {\n localFile: string;\n remoteFolder: string;\n serverUrl: string;\n browse: boolean;\n}\n\nexport interface UploadFileOutput {\n fileName: string;\n path: string;\n length: number;\n success: boolean;\n inlinePath: string;\n errorMessage: string;\n}\n\nconst namedParameters = {\n copyToCacheDirectory: false,\n multiple: false,\n type: '*/*'\n};\n\nexport class UploadFileOperation implements Operation {\n public fileUploadService: any = null as any;\n\n public setFileUploadService(service: FileUploadPluginService) {\n this.fileUploadService = service;\n }\n\n public chooseFile() {\n return this.fileUploadService?.getDocumentAsync(namedParameters).then((response: any) => {\n const assets = response?.assets[0];\n return { uri: assets.uri, name: assets.name };\n });\n }\n\n public invoke(params: UploadFileInput): any {\n params.serverUrl = endsWith(params.serverUrl, '/') ? params.serverUrl : params.serverUrl + '/';\n let serverUrl = params.serverUrl + 'services/file/uploadFile';\n if (params.remoteFolder) {\n serverUrl = serverUrl + '?relativePath=' + params.remoteFolder\n }\n return Promise.resolve().then(() => {\n if (!params.localFile && params.browse) {\n return (\n <FileUploadPluginConsumer>\n {(fileUploadPluginService: FileUploadPluginService) => {\n this.fileUploadService = fileUploadPluginService;\n return this.chooseFile();\n }}\n </FileUploadPluginConsumer>\n ) as any;\n } else {\n const name: string | undefined = params.localFile.split('/').pop() || '';\n return { uri: params.localFile, name: name };\n }\n }).then((data: { uri: string | undefined, name: string }) => {\n if (!data || !data?.uri) {\n return;\n }\n const fileName: string | undefined = data.name;\n const arr: any = fileName.split('.');\n const fileExtension: string = ('.' + arr[arr.length - 1]).toLocaleLowerCase();\n let fileObj = {\n uri: data.uri,\n type: FileExtensionTypesMap[fileExtension],\n name: fileName,\n };\n\n let formData = new FormData();\n formData.append('files', fileObj as any);\n return axios({\n url: serverUrl,\n method: 'POST',\n headers: {\n 'Content-Type': 'multipart/form-data'\n },\n data: formData\n }).then(\n (response) => {\n return response.data[0];\n }, error => error);\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["axios","endsWith","DocumentPicker","FileExtensionTypesMap","namedParameters","copyToCacheDirectory","multiple","type","UploadFileOperation","chooseFile","getDocumentAsync","then","response","assets","uri","name","invoke","params","serverUrl","remoteFolder","Promise","resolve","localFile","browse","split","pop","data","fileName","arr","fileExtension","length","toLocaleLowerCase","fileObj","formData","FormData","append","url","method","headers","error"],"sources":["upload-file.operation.tsx"],"sourcesContent":["import axios from 'axios';\nimport { Platform } from 'react-native';\nimport { endsWith } from 'lodash-es';\nimport * as DocumentPicker from 'expo-document-picker';\n\nimport { Operation } from '@wavemaker/app-rn-runtime/variables/device/operation.provider';\nimport { FileExtensionTypesMap } from '@wavemaker/app-rn-runtime/core/file-extension-types';\n\nexport interface UploadFileInput {\n localFile: string;\n remoteFolder: string;\n serverUrl: string;\n browse: boolean;\n}\n\nexport interface UploadFileOutput {\n fileName: string;\n path: string;\n length: number;\n success: boolean;\n inlinePath: string;\n errorMessage: string;\n}\n\nconst namedParameters = {\n copyToCacheDirectory: false,\n multiple: false,\n type: '*/*'\n};\n\nexport class UploadFileOperation implements Operation {\n\n public chooseFile() {\n return DocumentPicker.getDocumentAsync(namedParameters).then((response: any) => {\n const assets = response?.assets[0];\n return { uri: assets.uri, name: assets.name };\n });\n }\n\n public invoke(params: UploadFileInput): Promise<UploadFileOutput> {\n params.serverUrl = endsWith(params.serverUrl, '/') ? params.serverUrl : params.serverUrl + '/';\n let serverUrl = params.serverUrl + 'services/file/uploadFile';\n if (params.remoteFolder) {\n serverUrl = serverUrl + '?relativePath=' + params.remoteFolder\n }\n return Promise.resolve().then(() => {\n if (!params.localFile && params.browse) {\n return this.chooseFile();\n } else {\n const name: string | undefined = params.localFile.split('/').pop() || '';\n return { uri: params.localFile, name: name };\n }\n }).then((data: { uri: string | undefined, name: string }) => {\n if (!data || !data?.uri) {\n return;\n }\n const fileName: string | undefined = data.name;\n const arr: any = fileName.split('.');\n const fileExtension: string = ('.' + arr[arr.length - 1]).toLocaleLowerCase();\n let fileObj = {\n uri: data.uri,\n type: FileExtensionTypesMap[fileExtension],\n name: fileName,\n };\n\n let formData = new FormData();\n formData.append('files', fileObj as any);\n return axios({\n url: serverUrl,\n method: 'POST',\n headers: {\n 'Content-Type': 'multipart/form-data'\n },\n data: formData\n }).then(\n (response) => {\n return response.data[0];\n }, error => error);\n });\n }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,QAAQ,QAAQ,WAAW;AACpC,OAAO,KAAKC,cAAc,MAAM,sBAAsB;AAGtD,SAASC,qBAAqB,QAAQ,qDAAqD;AAkB3F,MAAMC,eAAe,GAAG;EACtBC,oBAAoB,EAAE,KAAK;EAC3BC,QAAQ,EAAE,KAAK;EACfC,IAAI,EAAE;AACR,CAAC;AAED,OAAO,MAAMC,mBAAmB,CAAsB;EAE7CC,UAAUA,CAAA,EAAG;IAClB,OAAOP,cAAc,CAACQ,gBAAgB,CAACN,eAAe,CAAC,CAACO,IAAI,CAAEC,QAAa,IAAK;MAC9E,MAAMC,MAAM,GAAGD,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEC,MAAM,CAAC,CAAC,CAAC;MAClC,OAAO;QAAEC,GAAG,EAAED,MAAM,CAACC,GAAG;QAAEC,IAAI,EAAEF,MAAM,CAACE;MAAK,CAAC;IAC/C,CAAC,CAAC;EACJ;EAEOC,MAAMA,CAACC,MAAuB,EAA6B;IAChEA,MAAM,CAACC,SAAS,GAAGjB,QAAQ,CAACgB,MAAM,CAACC,SAAS,EAAE,GAAG,CAAC,GAAGD,MAAM,CAACC,SAAS,GAAGD,MAAM,CAACC,SAAS,GAAG,GAAG;IAC9F,IAAIA,SAAS,GAAGD,MAAM,CAACC,SAAS,GAAG,0BAA0B;IAC7D,IAAID,MAAM,CAACE,YAAY,EAAE;MACvBD,SAAS,GAAGA,SAAS,GAAG,gBAAgB,GAAGD,MAAM,CAACE,YAAY;IAChE;IACA,OAAOC,OAAO,CAACC,OAAO,CAAC,CAAC,CAACV,IAAI,CAAC,MAAM;MAClC,IAAI,CAACM,MAAM,CAACK,SAAS,IAAIL,MAAM,CAACM,MAAM,EAAE;QACtC,OAAO,IAAI,CAACd,UAAU,CAAC,CAAC;MAC1B,CAAC,MAAM;QACL,MAAMM,IAAwB,GAAGE,MAAM,CAACK,SAAS,CAACE,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,CAAC,CAAC,IAAI,EAAE;QACxE,OAAO;UAAEX,GAAG,EAAEG,MAAM,CAACK,SAAS;UAAEP,IAAI,EAAEA;QAAK,CAAC;MAC9C;IACF,CAAC,CAAC,CAACJ,IAAI,CAAEe,IAA+C,IAAK;MAC3D,IAAI,CAACA,IAAI,IAAI,EAACA,IAAI,aAAJA,IAAI,eAAJA,IAAI,CAAEZ,GAAG,GAAE;QACvB;MACF;MACA,MAAMa,QAA4B,GAAGD,IAAI,CAACX,IAAI;MAC9C,MAAMa,GAAQ,GAAGD,QAAQ,CAACH,KAAK,CAAC,GAAG,CAAC;MACpC,MAAMK,aAAqB,GAAG,CAAC,GAAG,GAAGD,GAAG,CAACA,GAAG,CAACE,MAAM,GAAG,CAAC,CAAC,EAAEC,iBAAiB,CAAC,CAAC;MAC7E,IAAIC,OAAO,GAAG;QACZlB,GAAG,EAAEY,IAAI,CAACZ,GAAG;QACbP,IAAI,EAAEJ,qBAAqB,CAAC0B,aAAa,CAAC;QAC1Cd,IAAI,EAAEY;MACR,CAAC;MAED,IAAIM,QAAQ,GAAG,IAAIC,QAAQ,CAAC,CAAC;MAC7BD,QAAQ,CAACE,MAAM,CAAC,OAAO,EAAEH,OAAc,CAAC;MACxC,OAAOhC,KAAK,CAAC;QACXoC,GAAG,EAAElB,SAAS;QACdmB,MAAM,EAAE,MAAM;QACdC,OAAO,EAAE;UACP,cAAc,EAAE;QAClB,CAAC;QACDZ,IAAI,EAAEO;MACR,CAAC,CAAC,CAACtB,IAAI,CACJC,QAAQ,IAAK;QACd,OAAOA,QAAQ,CAACc,IAAI,CAAC,CAAC,CAAC;MACzB,CAAC,EAAEa,KAAK,IAAIA,KAAK,CAAC;IACpB,CAAC,CAAC;EACJ;AACF","ignoreList":[]}
@@ -1,20 +1,9 @@
1
- import React from 'react';
2
- import { ScanPluginConsumer } from "@wavemaker/app-rn-runtime/core/device/scan-service";
3
- import { PermissionConsumer } from "@wavemaker/app-rn-runtime/runtime/services/device/permission-service";
4
1
  export class ScanOperation {
5
2
  constructor(scan) {
6
3
  this.scan = scan;
7
4
  }
8
5
  invoke(params) {
9
- return /*#__PURE__*/React.createElement(PermissionConsumer, null, permissionService => {
10
- return /*#__PURE__*/React.createElement(ScanPluginConsumer, null, scanPluginService => {
11
- return this.scan.scanBarcode({
12
- ...params,
13
- scanPluginService,
14
- permissionService
15
- });
16
- });
17
- });
6
+ return this.scan.scanBarcode(params);
18
7
  }
19
8
  }
20
9
  //# sourceMappingURL=scan.operation.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","ScanPluginConsumer","PermissionConsumer","ScanOperation","constructor","scan","invoke","params","createElement","permissionService","scanPluginService","scanBarcode"],"sources":["scan.operation.tsx"],"sourcesContent":["import React from 'react';\nimport { ScanPluginConsumer, ScanPluginService, ScanService } from \"@wavemaker/app-rn-runtime/core/device/scan-service\";\nimport { Operation, Input, Output } from '../operation.provider';\nimport { PermissionConsumer, PermissionService } from \"@wavemaker/app-rn-runtime/runtime/services/device/permission-service\";\n\nexport interface ScanInput extends Input {\n barcodeFormat: string;\n scanPluginService: any;\n permissionService: any;\n}\n\nexport interface ScanOutput extends Output {\n text : string;\n format : string;\n cancelled : boolean;\n}\n\nexport class ScanOperation implements Operation {\n\n constructor(private scan: ScanService) {}\n\n public invoke(params: ScanInput): any {\n return (\n <PermissionConsumer>\n {(permissionService: PermissionService) => {\n return (\n <ScanPluginConsumer>\n {(scanPluginService: ScanPluginService) => {\n return this.scan.scanBarcode({ ...params, scanPluginService, permissionService });\n }}\n </ScanPluginConsumer>\n );\n }}\n </PermissionConsumer>\n );\n }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,kBAAkB,QAAwC,oDAAoD;AAEvH,SAASC,kBAAkB,QAA2B,sEAAsE;AAc5H,OAAO,MAAMC,aAAa,CAAsB;EAE9CC,WAAWA,CAASC,IAAiB,EAAE;IAAA,KAAnBA,IAAiB,GAAjBA,IAAiB;EAAG;EAEjCC,MAAMA,CAACC,MAAiB,EAAO;IACpC,oBACEP,KAAA,CAAAQ,aAAA,CAACN,kBAAkB,QACfO,iBAAoC,IAAK;MACzC,oBACET,KAAA,CAAAQ,aAAA,CAACP,kBAAkB,QACfS,iBAAoC,IAAK;QACzC,OAAO,IAAI,CAACL,IAAI,CAACM,WAAW,CAAC;UAAE,GAAGJ,MAAM;UAAEG,iBAAiB;UAAED;QAAkB,CAAC,CAAC;MACnF,CACkB,CAAC;IAEzB,CACkB,CAAC;EAEzB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["ScanOperation","constructor","scan","invoke","params","scanBarcode"],"sources":["scan.operation.tsx"],"sourcesContent":["import { ScanService } from \"@wavemaker/app-rn-runtime/core/device/scan-service\";\nimport { Operation, Input, Output } from '../operation.provider';\n\nexport interface ScanInput extends Input {\n barcodeFormat: string;\n}\n\nexport interface ScanOutput extends Output {\n text : string;\n format : string;\n cancelled : boolean;\n}\n\nexport class ScanOperation implements Operation {\n\n constructor(private scan: ScanService) {}\n\n public invoke(params: ScanInput): Promise<ScanOutput> {\n return this.scan.scanBarcode(params);\n }\n}\n"],"mappings":"AAaA,OAAO,MAAMA,aAAa,CAAsB;EAE9CC,WAAWA,CAASC,IAAiB,EAAE;IAAA,KAAnBA,IAAiB,GAAjBA,IAAiB;EAAG;EAEjCC,MAAMA,CAACC,MAAiB,EAAuB;IACpD,OAAO,IAAI,CAACF,IAAI,CAACG,WAAW,CAACD,MAAM,CAAC;EACtC;AACF","ignoreList":[]}
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
- const AudioContext = /*#__PURE__*/React.createContext(null);
3
- const VideoContext = /*#__PURE__*/React.createContext(null);
4
- export const AudioProvider = AudioContext.Provider;
5
- export const AudioConsumer = AudioContext.Consumer;
6
- export const VideoProvider = VideoContext.Provider;
7
- export const VideoConsumer = VideoContext.Consumer;
8
- //# sourceMappingURL=av-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","AudioContext","createContext","VideoContext","AudioProvider","Provider","AudioConsumer","Consumer","VideoProvider","VideoConsumer"],"sources":["av-service.ts"],"sourcesContent":["import React from 'react';\n\nexport interface AudioService {\n createAudio: (source: any, params: any) => any\n}\nexport interface VideoService {\n VideoView: any;\n createVideoPlayer: (source: any) => any;\n}\nconst AudioContext = React.createContext<AudioService>(null as any);\nconst VideoContext = React.createContext<VideoService>(null as any);\n\nexport const AudioProvider = AudioContext.Provider;\nexport const AudioConsumer = AudioContext.Consumer;\nexport const VideoProvider = VideoContext.Provider;\nexport const VideoConsumer = VideoContext.Consumer;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AASzB,MAAMC,YAAY,gBAAGD,KAAK,CAACE,aAAa,CAAe,IAAW,CAAC;AACnE,MAAMC,YAAY,gBAAGH,KAAK,CAACE,aAAa,CAAe,IAAW,CAAC;AAEnE,OAAO,MAAME,aAAa,GAAGH,YAAY,CAACI,QAAQ;AAClD,OAAO,MAAMC,aAAa,GAAGL,YAAY,CAACM,QAAQ;AAClD,OAAO,MAAMC,aAAa,GAAGL,YAAY,CAACE,QAAQ;AAClD,OAAO,MAAMI,aAAa,GAAGN,YAAY,CAACI,QAAQ","ignoreList":[]}
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
-
3
- // * expo-document-picker plugin
4
-
5
- const FileUploadPluginContext = /*#__PURE__*/React.createContext(null);
6
- export const FileUploadPluginProvider = FileUploadPluginContext.Provider;
7
- export const FileUploadPluginConsumer = FileUploadPluginContext.Consumer;
8
- //# sourceMappingURL=fileupload-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","FileUploadPluginContext","createContext","FileUploadPluginProvider","Provider","FileUploadPluginConsumer","Consumer"],"sources":["fileupload-service.ts"],"sourcesContent":["import React from 'react';\n\n// * expo-document-picker plugin\nexport interface FileUploadPluginService {\n getDocumentAsync: any;\n}\nconst FileUploadPluginContext = React.createContext<FileUploadPluginService>(null as any);\n\nexport const FileUploadPluginProvider = FileUploadPluginContext.Provider;\nexport const FileUploadPluginConsumer = FileUploadPluginContext.Consumer;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;;AAEzB;;AAIA,MAAMC,uBAAuB,gBAAGD,KAAK,CAACE,aAAa,CAA0B,IAAW,CAAC;AAEzF,OAAO,MAAMC,wBAAwB,GAAGF,uBAAuB,CAACG,QAAQ;AACxE,OAAO,MAAMC,wBAAwB,GAAGJ,uBAAuB,CAACK,QAAQ","ignoreList":[]}
@@ -1,5 +0,0 @@
1
- import React from 'react';
2
- const PermissionContext = /*#__PURE__*/React.createContext(null);
3
- export const PermissionProvider = PermissionContext.Provider;
4
- export const PermissionConsumer = PermissionContext.Consumer;
5
- //# sourceMappingURL=permission-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","PermissionContext","createContext","PermissionProvider","Provider","PermissionConsumer","Consumer"],"sources":["permission-service.ts"],"sourcesContent":["import React from 'react';\n\nexport interface PermissionService {\n requestPermissions: (type: string) => Promise<void>;\n}\n\nconst PermissionContext = React.createContext<PermissionService>(null as any);\n\nexport const PermissionProvider = PermissionContext.Provider;\nexport const PermissionConsumer = PermissionContext.Consumer;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAMzB,MAAMC,iBAAiB,gBAAGD,KAAK,CAACE,aAAa,CAAoB,IAAW,CAAC;AAE7E,OAAO,MAAMC,kBAAkB,GAAGF,iBAAiB,CAACG,QAAQ;AAC5D,OAAO,MAAMC,kBAAkB,GAAGJ,iBAAiB,CAACK,QAAQ","ignoreList":[]}