@wavemaker/app-rn-runtime 11.9.4-rc.5977 → 11.9.5-rc.6003

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 (259) hide show
  1. app-rn-runtime/actions/notification-action.js +1 -1
  2. app-rn-runtime/actions/timer-action.js +1 -1
  3. app-rn-runtime/components/advanced/carousel/carousel-content/carousel-content.props.js +1 -1
  4. app-rn-runtime/components/advanced/carousel/carousel-template/carousel-template.props.js +1 -1
  5. app-rn-runtime/components/advanced/carousel/carousel.component.js +2 -2
  6. app-rn-runtime/components/advanced/carousel/carousel.props.js +1 -1
  7. app-rn-runtime/components/advanced/login/login.component.js +2 -2
  8. app-rn-runtime/components/advanced/login/login.props.js +1 -1
  9. app-rn-runtime/components/advanced/network-info-toaster/network-info-toaster.component.js +2 -2
  10. app-rn-runtime/components/advanced/network-info-toaster/network-info-toaster.props.js +1 -1
  11. app-rn-runtime/components/advanced/webview/webview.component.js +2 -2
  12. app-rn-runtime/components/advanced/webview/webview.props.js +1 -1
  13. app-rn-runtime/components/basic/anchor/anchor.component.js +1 -1
  14. app-rn-runtime/components/basic/anchor/anchor.props.js +1 -1
  15. app-rn-runtime/components/basic/animatedview.component.js +2 -2
  16. app-rn-runtime/components/basic/audio/audio.component.js +1 -1
  17. app-rn-runtime/components/basic/audio/audio.props.js +1 -1
  18. app-rn-runtime/components/basic/button/button.component.js +1 -1
  19. app-rn-runtime/components/basic/button/button.props.js +1 -1
  20. app-rn-runtime/components/basic/buttongroup/buttongroup.props.js +1 -1
  21. app-rn-runtime/components/basic/custom/custom.props.js +1 -1
  22. app-rn-runtime/components/basic/icon/icon.component.js +2 -2
  23. app-rn-runtime/components/basic/icon/icon.props.js +1 -1
  24. app-rn-runtime/components/basic/label/label.component.js +2 -2
  25. app-rn-runtime/components/basic/label/label.props.js +1 -1
  26. app-rn-runtime/components/basic/lottie/lottie.component.js +1 -1
  27. app-rn-runtime/components/basic/lottie/lottie.props.js +1 -1
  28. app-rn-runtime/components/basic/message/message.component.js +2 -2
  29. app-rn-runtime/components/basic/message/message.props.js +1 -1
  30. app-rn-runtime/components/basic/modal/modal.props.js +1 -1
  31. app-rn-runtime/components/basic/picture/picture.component.js +2 -2
  32. app-rn-runtime/components/basic/picture/picture.props.js +1 -1
  33. app-rn-runtime/components/basic/progress-bar/progress-bar.component.js +2 -2
  34. app-rn-runtime/components/basic/progress-bar/progress-bar.component.js.map +1 -1
  35. app-rn-runtime/components/basic/progress-bar/progress-bar.props.js +1 -1
  36. app-rn-runtime/components/basic/progress-bar/progress-bar.styles.js +8 -0
  37. app-rn-runtime/components/basic/progress-bar/progress-bar.styles.js.map +1 -1
  38. app-rn-runtime/components/basic/progress-circle/progress-circle.component.js +2 -2
  39. app-rn-runtime/components/basic/progress-circle/progress-circle.props.js +1 -1
  40. app-rn-runtime/components/basic/search/local-data-provider.js +1 -1
  41. app-rn-runtime/components/basic/search/search.component.js +3 -3
  42. app-rn-runtime/components/basic/search/search.component.js.map +1 -1
  43. app-rn-runtime/components/basic/search/search.props.js +1 -1
  44. app-rn-runtime/components/basic/skeleton/skeleton.component.js +1 -1
  45. app-rn-runtime/components/basic/skeleton/skeleton.props.js +1 -1
  46. app-rn-runtime/components/basic/spinner/spinner.component.js +2 -2
  47. app-rn-runtime/components/basic/spinner/spinner.props.js +1 -1
  48. app-rn-runtime/components/basic/tooltip/tooltip.props.js +1 -1
  49. app-rn-runtime/components/basic/video/video.component.js +105 -29
  50. app-rn-runtime/components/basic/video/video.component.js.map +1 -1
  51. app-rn-runtime/components/basic/video/video.props.js +8 -1
  52. app-rn-runtime/components/basic/video/video.props.js.map +1 -1
  53. app-rn-runtime/components/chart/area-chart/area-chart.component.js +2 -2
  54. app-rn-runtime/components/chart/area-chart/area-chart.props.js +1 -1
  55. app-rn-runtime/components/chart/bar-chart/bar-chart.component.js +1 -1
  56. app-rn-runtime/components/chart/bar-chart/bar-chart.props.js +1 -1
  57. app-rn-runtime/components/chart/basechart.component.js +1 -1
  58. app-rn-runtime/components/chart/basechart.props.js +1 -1
  59. app-rn-runtime/components/chart/bubble-chart/bubble-chart.component.js +1 -1
  60. app-rn-runtime/components/chart/bubble-chart/bubble-chart.props.js +1 -1
  61. app-rn-runtime/components/chart/donut-chart/donut-chart.props.js +1 -1
  62. app-rn-runtime/components/chart/line-chart/line-chart.component.js +1 -1
  63. app-rn-runtime/components/chart/line-chart/line-chart.props.js +1 -1
  64. app-rn-runtime/components/chart/pie-chart/pie-chart.component.js +2 -2
  65. app-rn-runtime/components/chart/pie-chart/pie-chart.props.js +1 -1
  66. app-rn-runtime/components/chart/stack-chart/stack-chart.component.js +2 -2
  67. app-rn-runtime/components/chart/stack-chart/stack-chart.props.js +1 -1
  68. app-rn-runtime/components/container/accordion/accordion.component.js +2 -2
  69. app-rn-runtime/components/container/accordion/accordion.props.js +1 -1
  70. app-rn-runtime/components/container/accordion/accordionpane/accordionpane.component.js +1 -1
  71. app-rn-runtime/components/container/accordion/accordionpane/accordionpane.props.js +1 -1
  72. app-rn-runtime/components/container/container.component.js +2 -2
  73. app-rn-runtime/components/container/container.props.js +1 -1
  74. app-rn-runtime/components/container/layoutgrid/gridcolumn/gridcolumn.props.js +1 -1
  75. app-rn-runtime/components/container/layoutgrid/gridrow/gridrow.props.js +1 -1
  76. app-rn-runtime/components/container/layoutgrid/layoutgrid.props.js +1 -1
  77. app-rn-runtime/components/container/linearlayout/linearlayout.props.js +1 -1
  78. app-rn-runtime/components/container/linearlayout/linearlayoutitem/linearlayoutitem.props.js +1 -1
  79. app-rn-runtime/components/container/panel/panel-content/panel-content.props.js +1 -1
  80. app-rn-runtime/components/container/panel/panel-footer/panel-footer.props.js +1 -1
  81. app-rn-runtime/components/container/panel/panel.component.js +4 -4
  82. app-rn-runtime/components/container/panel/panel.component.js.map +1 -1
  83. app-rn-runtime/components/container/panel/panel.props.js +1 -1
  84. app-rn-runtime/components/container/partial-host.component.js +1 -1
  85. app-rn-runtime/components/container/tabs/tabheader/tabheader.component.js +2 -2
  86. app-rn-runtime/components/container/tabs/tabheader/tabheader.props.js +1 -1
  87. app-rn-runtime/components/container/tabs/tabpane/tabpane.component.js +1 -1
  88. app-rn-runtime/components/container/tabs/tabpane/tabpane.props.js +1 -1
  89. app-rn-runtime/components/container/tabs/tabs.component.js +1 -1
  90. app-rn-runtime/components/container/tabs/tabs.props.js +1 -1
  91. app-rn-runtime/components/container/tabs/tabs.styles.js.map +1 -1
  92. app-rn-runtime/components/container/tile/tile.component.js +1 -1
  93. app-rn-runtime/components/container/tile/tile.props.js +1 -1
  94. app-rn-runtime/components/container/wizard/wizard.component.js +2 -2
  95. app-rn-runtime/components/container/wizard/wizard.props.js +1 -1
  96. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.component.js +1 -1
  97. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.props.js +1 -1
  98. app-rn-runtime/components/data/card/card-content/card-content.component.js +1 -1
  99. app-rn-runtime/components/data/card/card-content/card-content.props.js +1 -1
  100. app-rn-runtime/components/data/card/card-footer/card-footer.props.js +1 -1
  101. app-rn-runtime/components/data/card/card.component.js +1 -1
  102. app-rn-runtime/components/data/card/card.props.js +1 -1
  103. app-rn-runtime/components/data/form/form-action/form-action.component.js +1 -1
  104. app-rn-runtime/components/data/form/form-action/form-action.props.js +1 -1
  105. app-rn-runtime/components/data/form/form-body/form-body.props.js +1 -1
  106. app-rn-runtime/components/data/form/form-field/form-field.component.js +2 -2
  107. app-rn-runtime/components/data/form/form-field/form-field.props.js +1 -1
  108. app-rn-runtime/components/data/form/form-footer/form-footer.props.js +1 -1
  109. app-rn-runtime/components/data/form/form.component.js +1 -1
  110. app-rn-runtime/components/data/form/form.props.js +1 -1
  111. app-rn-runtime/components/data/list/list-action-template/list-action-template.props.js +1 -1
  112. app-rn-runtime/components/data/list/list-template/list-template.props.js +1 -1
  113. app-rn-runtime/components/data/list/list.component.js +2 -2
  114. app-rn-runtime/components/data/list/list.props.js +1 -1
  115. app-rn-runtime/components/data/liveform/liveform.component.js +1 -1
  116. app-rn-runtime/components/device/barcodescanner/barcodescanner.component.js +1 -1
  117. app-rn-runtime/components/device/barcodescanner/barcodescanner.props.js +1 -1
  118. app-rn-runtime/components/device/camera/camera.component.js +1 -1
  119. app-rn-runtime/components/device/camera/camera.props.js +1 -1
  120. app-rn-runtime/components/dialogs/alertdialog/alertdialog.component.js +1 -1
  121. app-rn-runtime/components/dialogs/alertdialog/alertdialog.props.js +1 -1
  122. app-rn-runtime/components/dialogs/confirmdialog/confirmdialog.component.js +1 -1
  123. app-rn-runtime/components/dialogs/confirmdialog/confirmdialog.props.js +1 -1
  124. app-rn-runtime/components/dialogs/dialog/dialog.component.js +2 -2
  125. app-rn-runtime/components/dialogs/dialog/dialog.component.js.map +1 -1
  126. app-rn-runtime/components/dialogs/dialog/dialog.props.js +1 -1
  127. app-rn-runtime/components/dialogs/dialogactions/dialogactions.component.js +1 -1
  128. app-rn-runtime/components/dialogs/dialogactions/dialogactions.props.js +1 -1
  129. app-rn-runtime/components/dialogs/dialogcontent/dialogcontent.props.js +1 -1
  130. app-rn-runtime/components/input/basedataset/basedataset.component.js +1 -1
  131. app-rn-runtime/components/input/basedataset/basedataset.props.js +1 -1
  132. app-rn-runtime/components/input/baseinput/baseinput.component.js +1 -1
  133. app-rn-runtime/components/input/baseinput/baseinput.props.js +1 -1
  134. app-rn-runtime/components/input/basenumber/basenumber.component.js +1 -1
  135. app-rn-runtime/components/input/basenumber/basenumber.props.js +1 -1
  136. app-rn-runtime/components/input/calendar/calendar.component.js +1 -1
  137. app-rn-runtime/components/input/calendar/calendar.props.js +1 -1
  138. app-rn-runtime/components/input/calendar/calendar.styles.js.map +1 -1
  139. app-rn-runtime/components/input/calendar/views/month-view.js +2 -2
  140. app-rn-runtime/components/input/calendar/views/month-view.js.map +1 -1
  141. app-rn-runtime/components/input/checkbox/checkbox.component.js +2 -2
  142. app-rn-runtime/components/input/checkbox/checkbox.props.js +1 -1
  143. app-rn-runtime/components/input/checkboxset/checkboxset.component.js +2 -2
  144. app-rn-runtime/components/input/checkboxset/checkboxset.props.js +1 -1
  145. app-rn-runtime/components/input/chips/chips.component.js +2 -2
  146. app-rn-runtime/components/input/chips/chips.props.js +1 -1
  147. app-rn-runtime/components/input/composite/composite.props.js +1 -1
  148. app-rn-runtime/components/input/currency/currency.component.js +2 -2
  149. app-rn-runtime/components/input/currency/currency.props.js +1 -1
  150. app-rn-runtime/components/input/epoch/base-datetime.component.js +2 -2
  151. app-rn-runtime/components/input/epoch/date-picker.component.js +2 -2
  152. app-rn-runtime/components/input/epoch/date-picker.component.js.map +1 -1
  153. app-rn-runtime/components/input/epoch/datetime/datetime.props.js +1 -1
  154. app-rn-runtime/components/input/epoch/time/time.props.js +1 -1
  155. app-rn-runtime/components/input/epoch/wheel-date-picker.component.js +1 -1
  156. app-rn-runtime/components/input/epoch/wheel-time-picker.component.js +1 -1
  157. app-rn-runtime/components/input/epoch/wheelpicker/wheelpicker.component.js +1 -1
  158. app-rn-runtime/components/input/epoch/wheelpicker/wheelpicker.props.js +1 -1
  159. app-rn-runtime/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js +1 -1
  160. app-rn-runtime/components/input/epoch/wheelpickermodal/date/date-picker-modal.props.js +1 -1
  161. app-rn-runtime/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js +1 -1
  162. app-rn-runtime/components/input/epoch/wheelpickermodal/time/time-picker-modal.props.js +1 -1
  163. app-rn-runtime/components/input/fileupload/fileupload.component.js +1 -1
  164. app-rn-runtime/components/input/fileupload/fileupload.props.js +1 -1
  165. app-rn-runtime/components/input/number/number.component.js +2 -2
  166. app-rn-runtime/components/input/number/number.props.js +1 -1
  167. app-rn-runtime/components/input/radioset/radioset.component.js +2 -2
  168. app-rn-runtime/components/input/radioset/radioset.props.js +1 -1
  169. app-rn-runtime/components/input/rating/rating.component.js +1 -1
  170. app-rn-runtime/components/input/rating/rating.props.js +1 -1
  171. app-rn-runtime/components/input/select/select.component.js +3 -3
  172. app-rn-runtime/components/input/select/select.component.js.map +1 -1
  173. app-rn-runtime/components/input/select/select.props.js +1 -1
  174. app-rn-runtime/components/input/slider/slider.component.js +2 -2
  175. app-rn-runtime/components/input/slider/slider.props.js +1 -1
  176. app-rn-runtime/components/input/switch/switch.component.js +1 -1
  177. app-rn-runtime/components/input/switch/switch.props.js +1 -1
  178. app-rn-runtime/components/input/text/text.component.js +1 -1
  179. app-rn-runtime/components/input/text/text.props.js +1 -1
  180. app-rn-runtime/components/input/textarea/textarea.component.js +1 -1
  181. app-rn-runtime/components/input/textarea/textarea.props.js +1 -1
  182. app-rn-runtime/components/input/toggle/toggle.component.js +4 -3
  183. app-rn-runtime/components/input/toggle/toggle.component.js.map +1 -1
  184. app-rn-runtime/components/input/toggle/toggle.props.js +1 -1
  185. app-rn-runtime/components/navigation/appnavbar/appnavbar.component.js +2 -2
  186. app-rn-runtime/components/navigation/appnavbar/appnavbar.props.js +1 -1
  187. app-rn-runtime/components/navigation/basenav/basenav.component.js +1 -1
  188. app-rn-runtime/components/navigation/basenav/basenav.props.js +1 -1
  189. app-rn-runtime/components/navigation/menu/menu.component.js +1 -1
  190. app-rn-runtime/components/navigation/menu/menu.props.js +1 -1
  191. app-rn-runtime/components/navigation/navbar/navbar.props.js +1 -1
  192. app-rn-runtime/components/navigation/navitem/navitem.component.js +2 -2
  193. app-rn-runtime/components/navigation/navitem/navitem.props.js +1 -1
  194. app-rn-runtime/components/navigation/popover/popover.component.js +2 -2
  195. app-rn-runtime/components/navigation/popover/popover.props.js +1 -1
  196. app-rn-runtime/components/page/left-panel/left-panel.component.js +1 -1
  197. app-rn-runtime/components/page/left-panel/left-panel.props.js +1 -1
  198. app-rn-runtime/components/page/page-content/page-content.props.js +1 -1
  199. app-rn-runtime/components/page/page.component.js +2 -2
  200. app-rn-runtime/components/page/partial-container/partial-container.props.js +1 -1
  201. app-rn-runtime/components/page/tabbar/tabbar.component.js +3 -3
  202. app-rn-runtime/components/page/tabbar/tabbar.component.js.map +1 -1
  203. app-rn-runtime/components/page/tabbar/tabbar.props.js +1 -1
  204. app-rn-runtime/core/AppConfig.js.map +1 -1
  205. app-rn-runtime/core/accessibility.js +10 -5
  206. app-rn-runtime/core/accessibility.js.map +1 -1
  207. app-rn-runtime/core/base.component.js +2 -2
  208. app-rn-runtime/core/components/textinput.component.js +1 -1
  209. app-rn-runtime/core/constant.service.js +1 -1
  210. app-rn-runtime/core/event-notifier.js +1 -1
  211. app-rn-runtime/core/fixed-view.component.js +1 -1
  212. app-rn-runtime/core/imageSizeEstimator.js +1 -1
  213. app-rn-runtime/core/key.extractor.js +1 -1
  214. app-rn-runtime/core/logger.js +1 -1
  215. app-rn-runtime/core/network.service.js +1 -1
  216. app-rn-runtime/core/props.provider.js +1 -1
  217. app-rn-runtime/core/scroll-view.component.js +2 -2
  218. app-rn-runtime/core/storage.service.js +1 -1
  219. app-rn-runtime/core/tappable.component.js +2 -2
  220. app-rn-runtime/core/viewport.js +1 -1
  221. app-rn-runtime/core/wm-component-tree.js +1 -1
  222. app-rn-runtime/gestures/swipe.animation.js +1 -1
  223. app-rn-runtime/package.json +45 -46
  224. app-rn-runtime/runtime/App.js +3 -3
  225. app-rn-runtime/runtime/App.js.map +1 -1
  226. app-rn-runtime/runtime/base-fragment.component.js +7 -1
  227. app-rn-runtime/runtime/base-fragment.component.js.map +1 -1
  228. app-rn-runtime/runtime/base-page.component.js +2 -2
  229. app-rn-runtime/runtime/base-page.component.js.map +1 -1
  230. app-rn-runtime/runtime/base-partial.component.js +1 -1
  231. app-rn-runtime/runtime/base-prefab.component.js +1 -1
  232. app-rn-runtime/runtime/memo.component.js +1 -1
  233. app-rn-runtime/runtime/navigator/stack.navigator.js +1 -1
  234. app-rn-runtime/runtime/services/app-display-manager.service.js +1 -1
  235. app-rn-runtime/runtime/services/app-i18n.service.js +1 -1
  236. app-rn-runtime/runtime/services/app-modal.service.js +1 -1
  237. app-rn-runtime/runtime/services/app-security.service.js +1 -1
  238. app-rn-runtime/runtime/services/app-spinner.service.js +1 -1
  239. app-rn-runtime/runtime/services/app-toast.service.js +1 -1
  240. app-rn-runtime/runtime/services/device/camera-service.js +10 -10
  241. app-rn-runtime/runtime/services/device/camera-service.js.map +1 -1
  242. app-rn-runtime/runtime/services/device/permissions.js +2 -2
  243. app-rn-runtime/runtime/services/device/permissions.js.map +1 -1
  244. app-rn-runtime/runtime/services/device/scan-service.js +35 -9
  245. app-rn-runtime/runtime/services/device/scan-service.js.map +1 -1
  246. app-rn-runtime/runtime/services/webprocess.service.js +1 -1
  247. app-rn-runtime/runtime/watcher.js +1 -1
  248. app-rn-runtime/styles/background.component.js +2 -2
  249. app-rn-runtime/styles/background.component.js.map +1 -1
  250. app-rn-runtime/styles/style-props.js +1 -1
  251. app-rn-runtime/styles/theme.js +42 -2
  252. app-rn-runtime/styles/theme.js.map +1 -1
  253. app-rn-runtime/styles/theme.variables.js +1 -1
  254. app-rn-runtime/variables/base-variable.js +1 -1
  255. app-rn-runtime/variables/device/device/network-info.operation.js +1 -1
  256. app-rn-runtime/variables/live-variable.js +1 -1
  257. app-rn-runtime/variables/model-variable.js +1 -1
  258. app-rn-runtime/variables/service-variable.js +1 -1
  259. app-rn-runtime/variables/utils/inflight-queue.js +1 -1
@@ -1 +1 @@
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.requestCameraPermissionsAsync(), Camera.requestMicrophonePermissionsAsync()]);\n } else if (type === 'image' || type === 'camera') {\n query = 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.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}\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,CAACW,6BAA6B,CAAC,CAAC,EAAEX,MAAM,CAACY,iCAAiC,CAAC,CAAC,CAAC,CAAC;IAC3G,CAAC,MAAM,IAAIN,IAAI,KAAK,OAAO,IAAIA,IAAI,KAAK,QAAQ,EAAE;MAChDC,KAAK,GAAGP,MAAM,CAACW,6BAA6B,CAAC,CAAC;IAChD,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,OAAOV,KAAK,CAACW,IAAI,CAAEC,QAAa,IAAK;MACnC,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
+ {"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,6 @@
1
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
- import { Camera } from 'expo-camera';
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';
3
3
  import { Ionicons } from '@expo/vector-icons';
4
- import { BarCodeScanner } from 'expo-barcode-scanner';
5
4
  import { Platform, StyleSheet, TouchableOpacity, View } from 'react-native';
6
5
  import React from 'react';
7
6
  import permissionManager from '@wavemaker/app-rn-runtime/runtime/services/device/permissions';
@@ -59,6 +58,33 @@ const styles = StyleSheet.create({
59
58
  backgroundColor: opacity
60
59
  }
61
60
  });
61
+ const BarCodeType = [{
62
+ 0: 'aztec'
63
+ }, {
64
+ 1: 'ean13'
65
+ }, {
66
+ 2: 'ean8'
67
+ }, {
68
+ 3: 'qr'
69
+ }, {
70
+ 4: 'pdf417'
71
+ }, {
72
+ 5: 'upc_e'
73
+ }, {
74
+ 6: 'datamatrix'
75
+ }, {
76
+ 7: 'code39'
77
+ }, {
78
+ 8: 'code93'
79
+ }, {
80
+ 9: 'itf14'
81
+ }, {
82
+ 10: 'codabar'
83
+ }, {
84
+ 11: 'code128'
85
+ }, {
86
+ 12: 'upc_a'
87
+ }];
62
88
  export class ScanService {
63
89
  constructor(displayManager) {
64
90
  this.displayManager = displayManager;
@@ -82,11 +108,11 @@ export class ScanService {
82
108
  return new Promise((resolve, reject) => {
83
109
  permissionManager.requestPermissions('camera').then(() => {
84
110
  const destroy = this.displayManager.show({
85
- content: /*#__PURE__*/React.createElement(Camera, {
86
- barCodeScannerSettings: barcodeFormat ? {
87
- barCodeTypes: [BarCodeScanner.Constants.BarCodeType[barcodeFormat]]
111
+ content: /*#__PURE__*/React.createElement(CameraView, {
112
+ barcodeScannerSettings: barcodeFormat ? {
113
+ barcodeTypes: [BarCodeType[barcodeFormat]]
88
114
  } : undefined,
89
- onBarCodeScanned: result => {
115
+ onBarcodeScanned: result => {
90
116
  destroy.call(this.displayManager);
91
117
  resolve(result);
92
118
  },
@@ -119,9 +145,9 @@ export class ScanService {
119
145
  }).then(response => {
120
146
  let format;
121
147
  if (response.type) {
122
- const values = Object.values(BarCodeScanner.Constants.BarCodeType);
148
+ const values = Object.values(BarCodeType);
123
149
  const index = values.indexOf(response.type);
124
- format = index > -1 ? Object.keys(BarCodeScanner.Constants.BarCodeType)[index] : '';
150
+ format = index > -1 ? Object.keys(BarCodeType)[index] : '';
125
151
  }
126
152
  return Promise.resolve({
127
153
  text: response.data,
@@ -1 +1 @@
1
- {"version":3,"names":["Camera","Ionicons","BarCodeScanner","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","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","Constants","BarCodeType","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 { Camera } from 'expo-camera';\nimport { Ionicons } from '@expo/vector-icons';\nimport { BarCodeScanner } from 'expo-barcode-scanner';\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\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: (<Camera\n barCodeScannerSettings={barcodeFormat ? {\n barCodeTypes: [BarCodeScanner.Constants.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 </Camera>)\n });\n }, reject)\n }).then((response: any) => {\n let format;\n if (response.type) {\n const values = Object.values(BarCodeScanner.Constants.BarCodeType);\n const index = values.indexOf(response.type);\n format = index > -1 ? Object.keys(BarCodeScanner.Constants.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;\n"],"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,4 +1,4 @@
1
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
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
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
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
4
  import axios from "axios";
@@ -1,5 +1,5 @@
1
1
  var _Watcher;
2
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+ 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; }
3
3
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
4
4
  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); }
5
5
  import { isArray, clone } from 'lodash';
@@ -1,4 +1,4 @@
1
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
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
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
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
4
  import * as React from 'react';
@@ -237,7 +237,7 @@ export class BackgroundComponent extends React.Component {
237
237
  }
238
238
  if ((_source = source) !== null && _source !== void 0 && _source.startsWith('url')) {
239
239
  var _this$props$image2;
240
- source = (_this$props$image2 = this.props.image) === null || _this$props$image2 === void 0 ? void 0 : _this$props$image2.matchAll(IMAGE_URL_REGEX).next().value[1];
240
+ source = (_this$props$image2 = this.props.image) === null || _this$props$image2 === void 0 || (_this$props$image2 = _this$props$image2.matchAll(IMAGE_URL_REGEX)) === null || _this$props$image2 === void 0 || (_this$props$image2 = _this$props$image2.next()) === null || _this$props$image2 === void 0 || (_this$props$image2 = _this$props$image2.value) === null || _this$props$image2 === void 0 ? void 0 : _this$props$image2[1];
241
241
  }
242
242
  if (this.loadAsset) {
243
243
  source = this.loadAsset(source);
@@ -1 +1 @@
1
- {"version":3,"names":["React","LinearGradient","ExpoLinearGradient","Image","StyleSheet","View","isEmpty","isNil","isNumber","imageSizeEstimator","AssetConsumer","isFullPathUrl","IMAGE_URL_REGEX","LINEAT_GRADIENT_REGEX","DIMENSION_REGEX","BACKGROUND_POSITION_REGEX","BACKGROUND_SIZE_REGEX","ASSET_CACHE","Component","constructor","props","state","parse","val","value","splits","split","map","v","trim","angle","locations","endsWith","parseInt","shift","delta","Math","round","tan","PI","abs","end","x","y","start","colors","s","_s$matchAll$next","p","matchAll","next","push","replace","componentDidUpdate","prevProps","prevState","snapshot","setState","render","_this$props$size","_this$props$style","createElement","style","borderWidth","overflow","absoluteFill","middle","flexDirection","justifyContent","alignItems","testID","size","width","position","borderRadius","children","BackgroundComponent","_defineProperty","imageSrc","image","undefined","caluculateSize","height","resolveAssetSource","naturalImageWidth","naturalImageHeight","getSize","uri","getDimension","dim","getPosition","result","top","bottom","left","right","getPositionAndSize","_this$props$size2","_this$getGradient","resizeMode","getGradient","length","repeat","renderLinearGradient","data","psresult","Fragment","setImage","componentDidMount","setTimeout","_this$props$image","_source","source","startsWith","_this$props$image2","loadAsset","_this$props$image3","renderImage","_psresult$position","_psresult$position2","loadImage","minWidth","minHeight","_gradientData$value","gradientData"],"sources":["background.component.tsx"],"sourcesContent":["import * as React from 'react';\nimport { LinearGradient as ExpoLinearGradient, LinearGradientPoint } from 'expo-linear-gradient';\nimport { Image, StyleSheet, View, ViewStyle } from 'react-native';\nimport { isEmpty, isNil, isNumber, isString } from 'lodash-es';\nimport imageSizeEstimator from '@wavemaker/app-rn-runtime/core/imageSizeEstimator';\nimport { AssetConsumer } from '@wavemaker/app-rn-runtime/core/asset.provider';\nimport { isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport interface LinearGradientProps {\n value: string;\n children: any;\n style?: ViewStyle;\n size?: ViewStyle;\n position?: ViewStyle;\n middle?: boolean;\n}\n\nexport interface LinearGradientState {\n colors: string[];\n locations: number[];\n start: LinearGradientPoint;\n end: LinearGradientPoint;\n}\n\nconst IMAGE_URL_REGEX = /url\\(['|\"]?(.+)['|\"]?\\)$/gi;\nconst LINEAT_GRADIENT_REGEX = /linear-gradient\\((.+)\\)$/gi;\nconst DIMENSION_REGEX = /([0-9%]+)[a-z]*/g;\nconst BACKGROUND_POSITION_REGEX = /([0-9%]+)[a-z]*\\s*([0-9%]+)[a-z]*/g;\nconst BACKGROUND_SIZE_REGEX = /([0-9%]+)[a-z]*\\s*([0-9%]+)[a-z]*/g;\n\nconst ASSET_CACHE = {} as any;\n\nexport class LinearGradient extends React.Component<LinearGradientProps, LinearGradientState> {\n\n constructor(props: LinearGradientProps) {\n super(props);\n this.state = this.parse();\n }\n\n parse(val = this.props.value) {\n let state = {} as LinearGradientState;\n const splits = val.split(',').map(v => v.trim());\n let angle = 0;\n const locations: LinearGradientPoint[] = [];\n if (splits[0].endsWith('deg')) {\n angle = (parseInt(splits[0].split('deg')[0]))%360;\n angle = angle < 0 ? (360 + angle) : angle;\n splits.shift();\n }\n angle += 90;\n const delta = Math.round(Math.tan((angle * Math.PI) / 180) * 100)/100;\n if (Math.abs(delta) > 1) {\n state = {\n end: {\n x: -0.5 / delta + 0.5,\n y: 0\n },\n start: {\n x: 0.5 / delta + 0.5,\n y: 1\n }\n } as LinearGradientState;\n } else {\n state = {\n start: {\n x: 0,\n y: -0.5 * delta + 0.5\n },\n end: {\n x: 1,\n y: 0.5 * delta + 0.5\n }\n } as LinearGradientState;\n }\n if (angle >= 270 && angle <= 450) {\n state = {\n start : state.end,\n end: state.start\n } as LinearGradientState;\n }\n state.colors = [];\n state.locations = [];\n splits.map(s => {\n const p = s.matchAll(/\\s*([0-9]+)%/g).next()?.value;\n if (p) {\n state.locations.push(parseInt(p[1]) / 100);\n state.colors.push(s.replace(p[0], ''));\n } else {\n state.locations.push(null as any);\n state.colors.push(s);\n }\n });\n return state;\n }\n\n componentDidUpdate(prevProps: Readonly<LinearGradientProps>, prevState: Readonly<{}>, snapshot?: any): void {\n if (prevProps.value !== this.props.value) {\n this.setState(this.parse());\n }\n }\n \n\n public render() {\n return (\n <View style={[{borderWidth: 0, overflow: 'hidden'}, StyleSheet.absoluteFill, this.props.style]}>\n <View style={[\n StyleSheet.absoluteFill, this.props.middle ? {\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center'\n } : null]}>\n <ExpoLinearGradient testID=\"wm-expo-linear-gradient\"\n colors={this.state.colors}\n locations={this.state.locations}\n start={this.state.start}\n end={this.state.end}\n style={[\n this.props.size?.width ? this.props.size : StyleSheet.absoluteFill,\n this.props.position,\n {position: 'absolute', borderRadius: this.props.style?.borderRadius}\n ]}\n />\n </View>\n {this.props.children}\n </View>\n );\n }\n}\n\nexport interface BackgroundProps {\n image?: string;\n position?: string;\n children?: any;\n resizeMode?: string;\n repeat?: string;\n style?: ViewStyle;\n size: string;\n}\n\nexport interface BackgroundState {\n imageSrc: any;\n naturalImageWidth: number,\n naturalImageHeight: number\n}\n\nexport class BackgroundComponent extends React.Component<BackgroundProps, BackgroundState> {\n\n private loadAsset: (path: string) => number | string = null as any;\n\n constructor(props: BackgroundProps) {\n super(props);\n this.state = {\n imageSrc : this.props.image ? ASSET_CACHE[this.props.image] : undefined\n } as BackgroundState;\n }\n\n public caluculateSize(imageSrc: any) {\n if (isNumber(imageSrc)) {\n const {width, height} = Image.resolveAssetSource(imageSrc);\n this.setState({\n naturalImageWidth: width,\n naturalImageHeight: height\n } as BackgroundState);\n } else if (!isNil(imageSrc)) {\n imageSizeEstimator.getSize(imageSrc.uri, (width: number, height: number) => {\n this.setState({\n naturalImageWidth: width,\n naturalImageHeight: height\n } as BackgroundState);\n });\n }\n }\n\n getDimension(dim: string) {\n if (dim) {\n const value = dim.matchAll(DIMENSION_REGEX).next().value;\n if (value[1]) {\n return value[1].endsWith('%') ? value[1] : parseInt(value[1]);\n }\n }\n return null;\n }\n\n public getPosition() {\n const result = {} as ViewStyle;\n if (!this.props.position) {\n return result;\n }\n const position = this.props.position.split(' ').map(s => s.trim());\n if (position[0] === 'center') {\n result.alignItems = 'center';\n } else if (position[0] === 'top') {\n result.top = 0;\n } else if (position[0] === 'bottom') {\n result.bottom = 0;\n } else {\n result.top = this.getDimension(position[0]);\n }\n if (position[1] === 'center') {\n result.justifyContent = 'center';\n } else if (position[1] === 'left') {\n result.left = 0;\n } else if (position[1] === 'bottom') {\n result.right = 0;\n } else {\n result.left = this.getDimension(position[1]);\n }\n return result;\n }\n\n public getPositionAndSize() {\n const result: {\n resizeMode? : string,\n position?: ViewStyle,\n size?: ViewStyle\n } = {} as any;\n if (this.props.resizeMode) {\n result.resizeMode = this.props.resizeMode;\n return result;\n } else if (this.props.position === 'center') {\n result.resizeMode = 'center';\n result.position = {\n justifyContent: 'center',\n alignItems: 'center'\n };\n } else if (this.props.size === 'contain' || this.props.size === 'cover') {\n result.resizeMode = this.props.size;\n return result;\n }\n const size = this.props.size?.matchAll(BACKGROUND_SIZE_REGEX).next().value;\n result.size = {};\n if (size) {\n result.size.width = size[1].endsWith('%') ? size[1] : parseInt(size[1]);\n result.size.height = size[2].endsWith('%') ? size[2] : parseInt(size[2]);\n }\n if (!result.resizeMode && this.props.position) {\n result.position = this.getPosition();\n }\n if (!this.getGradient()?.value?.length) {\n if (this.props.repeat === 'no-repeat') {\n result.size.width = result.size.width || this.state.naturalImageWidth; \n result.size.height = result.size.height || this.state.naturalImageHeight; \n } else if (this.props.repeat === 'repeat-x') {\n result.resizeMode = 'repeat';\n result.size.width = result.size.width || '100%'; \n result.size.height = result.size.height || this.state.naturalImageHeight; \n } else if (this.props.repeat === 'repeat-y') {\n result.resizeMode = 'repeat';\n result.size.width = result.size.width || this.state.naturalImageWidth; \n result.size.height = result.size.height || '100%'; \n } else {\n result.resizeMode = 'repeat';\n }\n }\n return result;\n }\n\n public renderLinearGradient(data: string) {\n const psresult = this.getPositionAndSize();\n return (\n <LinearGradient\n value={data || ''}\n style={this.props.style}\n size={psresult.size}\n position={psresult.position}\n middle={psresult.resizeMode === 'center'}> \n <></> \n </LinearGradient>\n );\n }\n\n componentDidUpdate(prevProps: Readonly<BackgroundProps>, prevState: Readonly<{}>, snapshot?: any): void {\n if (this.props.image && prevProps.image !== this.props.image) {\n this.setImage();\n }\n }\n\n componentDidMount(): void {\n setTimeout(() => this.setImage(), 100);\n }\n\n setImage() {\n let source = this.props.image?.trim() as any;\n if (!source) {\n return;\n }\n if (source?.startsWith('url')) {\n source = this.props.image?.matchAll(IMAGE_URL_REGEX).next().value[1];\n }\n if (this.loadAsset) {\n source = this.loadAsset(source);\n }\n if (isFullPathUrl(source)) {\n source = {\n uri: source\n };\n }\n this.caluculateSize(source);\n this.setState({\n imageSrc: source\n } as BackgroundState);\n if (this.props.image) {\n ASSET_CACHE[this.props.image] = source;\n }\n }\n\n public getGradient() {\n return this.props.image?.trim().matchAll(LINEAT_GRADIENT_REGEX).next();\n }\n\n public renderImage() {\n const psresult = this.getPositionAndSize();\n return (\n <AssetConsumer>\n {(loadAsset) => {\n const loadImage = this.loadAsset !== loadAsset;\n this.loadAsset = loadAsset;\n if (loadImage) {\n setTimeout(() => this.setImage(), 10);\n }\n return (<View style={[{borderWidth: 0, overflow: 'hidden'}, StyleSheet.absoluteFill, this.props.style]}>\n <View style={[\n StyleSheet.absoluteFill, {\n flexDirection: 'row',\n justifyContent: psresult.position?.justifyContent,\n alignItems: psresult.position?.alignItems\n }]}>\n <View style={[\n { position: 'absolute', overflow: 'hidden' },\n psresult.position,\n isEmpty(psresult.size) ? StyleSheet.absoluteFill : psresult.size\n ]}>\n <Image\n source={this.state.imageSrc}\n resizeMode={psresult.resizeMode as any || 'cover'}\n style={[\n { \n width: '100%',\n height: '100%'\n }, \n !isEmpty(psresult.size)\n || (psresult.resizeMode === 'cover'\n || psresult.resizeMode === 'contain') ? null : {\n minWidth: this.state.naturalImageWidth,\n minHeight: this.state.naturalImageHeight\n }\n ]}/> \n </View>\n </View>\n </View>);\n }}\n </AssetConsumer>\n );\n }\n\n public render() {\n const gradientData = this.getGradient();\n if (gradientData?.value?.length) {\n return this.renderLinearGradient(gradientData.value[1]);\n } else if (this.props.image && this.state.imageSrc) {\n return this.renderImage();\n }\n return null;\n }\n}\n\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","LinearGradient","ExpoLinearGradient","Image","StyleSheet","View","isEmpty","isNil","isNumber","imageSizeEstimator","AssetConsumer","isFullPathUrl","IMAGE_URL_REGEX","LINEAT_GRADIENT_REGEX","DIMENSION_REGEX","BACKGROUND_POSITION_REGEX","BACKGROUND_SIZE_REGEX","ASSET_CACHE","Component","constructor","props","state","parse","val","value","splits","split","map","v","trim","angle","locations","endsWith","parseInt","shift","delta","Math","round","tan","PI","abs","end","x","y","start","colors","s","_s$matchAll$next","p","matchAll","next","push","replace","componentDidUpdate","prevProps","prevState","snapshot","setState","render","_this$props$size","_this$props$style","createElement","style","borderWidth","overflow","absoluteFill","middle","flexDirection","justifyContent","alignItems","testID","size","width","position","borderRadius","children","BackgroundComponent","_defineProperty","imageSrc","image","undefined","caluculateSize","height","resolveAssetSource","naturalImageWidth","naturalImageHeight","getSize","uri","getDimension","dim","getPosition","result","top","bottom","left","right","getPositionAndSize","_this$props$size2","_this$getGradient","resizeMode","getGradient","length","repeat","renderLinearGradient","data","psresult","Fragment","setImage","componentDidMount","setTimeout","_this$props$image","_source","source","startsWith","_this$props$image2","loadAsset","_this$props$image3","renderImage","_psresult$position","_psresult$position2","loadImage","minWidth","minHeight","_gradientData$value","gradientData"],"sources":["background.component.tsx"],"sourcesContent":["import * as React from 'react';\nimport { LinearGradient as ExpoLinearGradient, LinearGradientPoint } from 'expo-linear-gradient';\nimport { DimensionValue, Image, StyleSheet, View, ViewStyle } from 'react-native';\nimport { isEmpty, isNil, isNumber, isString } from 'lodash-es';\nimport imageSizeEstimator from '@wavemaker/app-rn-runtime/core/imageSizeEstimator';\nimport { AssetConsumer } from '@wavemaker/app-rn-runtime/core/asset.provider';\nimport { isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport interface LinearGradientProps {\n value: string;\n children: any;\n style?: ViewStyle;\n size?: ViewStyle;\n position?: ViewStyle;\n middle?: boolean;\n}\n\nexport interface LinearGradientState {\n colors: string[];\n locations: number[];\n start: LinearGradientPoint;\n end: LinearGradientPoint;\n}\n\nconst IMAGE_URL_REGEX = /url\\(['|\"]?(.+)['|\"]?\\)$/gi;\nconst LINEAT_GRADIENT_REGEX = /linear-gradient\\((.+)\\)$/gi;\nconst DIMENSION_REGEX = /([0-9%]+)[a-z]*/g;\nconst BACKGROUND_POSITION_REGEX = /([0-9%]+)[a-z]*\\s*([0-9%]+)[a-z]*/g;\nconst BACKGROUND_SIZE_REGEX = /([0-9%]+)[a-z]*\\s*([0-9%]+)[a-z]*/g;\n\nconst ASSET_CACHE = {} as any;\n\nexport class LinearGradient extends React.Component<LinearGradientProps, LinearGradientState> {\n\n constructor(props: LinearGradientProps) {\n super(props);\n this.state = this.parse();\n }\n\n parse(val = this.props.value) {\n let state = {} as LinearGradientState;\n const splits = val.split(',').map(v => v.trim());\n let angle = 0;\n const locations: LinearGradientPoint[] = [];\n if (splits[0].endsWith('deg')) {\n angle = (parseInt(splits[0].split('deg')[0]))%360;\n angle = angle < 0 ? (360 + angle) : angle;\n splits.shift();\n }\n angle += 90;\n const delta = Math.round(Math.tan((angle * Math.PI) / 180) * 100)/100;\n if (Math.abs(delta) > 1) {\n state = {\n end: {\n x: -0.5 / delta + 0.5,\n y: 0\n },\n start: {\n x: 0.5 / delta + 0.5,\n y: 1\n }\n } as LinearGradientState;\n } else {\n state = {\n start: {\n x: 0,\n y: -0.5 * delta + 0.5\n },\n end: {\n x: 1,\n y: 0.5 * delta + 0.5\n }\n } as LinearGradientState;\n }\n if (angle >= 270 && angle <= 450) {\n state = {\n start : state.end,\n end: state.start\n } as LinearGradientState;\n }\n state.colors = [];\n state.locations = [];\n splits.map(s => {\n const p = s.matchAll(/\\s*([0-9]+)%/g).next()?.value;\n if (p) {\n state.locations.push(parseInt(p[1]) / 100);\n state.colors.push(s.replace(p[0], ''));\n } else {\n state.locations.push(null as any);\n state.colors.push(s);\n }\n });\n return state;\n }\n\n componentDidUpdate(prevProps: Readonly<LinearGradientProps>, prevState: Readonly<{}>, snapshot?: any): void {\n if (prevProps.value !== this.props.value) {\n this.setState(this.parse());\n }\n }\n \n\n public render() {\n return (\n <View style={[{borderWidth: 0, overflow: 'hidden'}, StyleSheet.absoluteFill, this.props.style]}>\n <View style={[\n StyleSheet.absoluteFill, this.props.middle ? {\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center'\n } : null]}>\n <ExpoLinearGradient testID=\"wm-expo-linear-gradient\"\n colors={this.state.colors as any}\n locations={this.state.locations as any}\n start={this.state.start}\n end={this.state.end}\n style={[\n this.props.size?.width ? this.props.size : StyleSheet.absoluteFill,\n this.props.position,\n {position: 'absolute', borderRadius: this.props.style?.borderRadius}\n ]}\n />\n </View>\n {this.props.children}\n </View>\n );\n }\n}\n\nexport interface BackgroundProps {\n image?: string;\n position?: string;\n children?: any;\n resizeMode?: string;\n repeat?: string;\n style?: ViewStyle;\n size: string;\n}\n\nexport interface BackgroundState {\n imageSrc: any;\n naturalImageWidth: number,\n naturalImageHeight: number\n}\n\nexport class BackgroundComponent extends React.Component<BackgroundProps, BackgroundState> {\n\n private loadAsset: (path: string) => number | string = null as any;\n\n constructor(props: BackgroundProps) {\n super(props);\n this.state = {\n imageSrc : this.props.image ? ASSET_CACHE[this.props.image] : undefined\n } as BackgroundState;\n }\n\n public caluculateSize(imageSrc: any) {\n if (isNumber(imageSrc)) {\n const {width, height} = Image.resolveAssetSource(imageSrc);\n this.setState({\n naturalImageWidth: width,\n naturalImageHeight: height\n } as BackgroundState);\n } else if (!isNil(imageSrc)) {\n imageSizeEstimator.getSize(imageSrc.uri, (width: number, height: number) => {\n this.setState({\n naturalImageWidth: width,\n naturalImageHeight: height\n } as BackgroundState);\n });\n }\n }\n\n getDimension(dim: string) {\n if (dim) {\n const value = dim.matchAll(DIMENSION_REGEX).next().value!;\n if (value[1]) {\n return value[1].endsWith('%') ? value[1] : parseInt(value[1]);\n }\n }\n return null;\n }\n\n public getPosition() {\n const result = {} as ViewStyle;\n if (!this.props.position) {\n return result;\n }\n const position = this.props.position.split(' ').map(s => s.trim());\n if (position[0] === 'center') {\n result.alignItems = 'center';\n } else if (position[0] === 'top') {\n result.top = 0;\n } else if (position[0] === 'bottom') {\n result.bottom = 0;\n } else {\n result.top = this.getDimension(position[0]) as DimensionValue;\n }\n if (position[1] === 'center') {\n result.justifyContent = 'center';\n } else if (position[1] === 'left') {\n result.left = 0;\n } else if (position[1] === 'bottom') {\n result.right = 0;\n } else {\n result.left = this.getDimension(position[1]) as DimensionValue;\n }\n return result;\n }\n\n public getPositionAndSize() {\n const result: {\n resizeMode? : string,\n position?: ViewStyle,\n size?: ViewStyle\n } = {} as any;\n if (this.props.resizeMode) {\n result.resizeMode = this.props.resizeMode;\n return result;\n } else if (this.props.position === 'center') {\n result.resizeMode = 'center';\n result.position = {\n justifyContent: 'center',\n alignItems: 'center'\n };\n } else if (this.props.size === 'contain' || this.props.size === 'cover') {\n result.resizeMode = this.props.size;\n return result;\n }\n const size = this.props.size?.matchAll(BACKGROUND_SIZE_REGEX).next().value;\n result.size = {};\n if (size) {\n result.size.width = (size[1].endsWith('%') ? size[1] : parseInt(size[1])) as DimensionValue;\n result.size.height = (size[2].endsWith('%') ? size[2] : parseInt(size[2])) as DimensionValue\n }\n if (!result.resizeMode && this.props.position) {\n result.position = this.getPosition();\n }\n if (!this.getGradient()?.value?.length) {\n if (this.props.repeat === 'no-repeat') {\n result.size.width = result.size.width || this.state.naturalImageWidth; \n result.size.height = result.size.height || this.state.naturalImageHeight; \n } else if (this.props.repeat === 'repeat-x') {\n result.resizeMode = 'repeat';\n result.size.width = result.size.width || '100%'; \n result.size.height = result.size.height || this.state.naturalImageHeight; \n } else if (this.props.repeat === 'repeat-y') {\n result.resizeMode = 'repeat';\n result.size.width = result.size.width || this.state.naturalImageWidth; \n result.size.height = result.size.height || '100%'; \n } else {\n result.resizeMode = 'repeat';\n }\n }\n return result;\n }\n\n public renderLinearGradient(data: string) {\n const psresult = this.getPositionAndSize();\n return (\n <LinearGradient\n value={data || ''}\n style={this.props.style}\n size={psresult.size}\n position={psresult.position}\n middle={psresult.resizeMode === 'center'}> \n <></> \n </LinearGradient>\n );\n }\n\n componentDidUpdate(prevProps: Readonly<BackgroundProps>, prevState: Readonly<{}>, snapshot?: any): void {\n if (this.props.image && prevProps.image !== this.props.image) {\n this.setImage();\n }\n }\n\n componentDidMount(): void {\n setTimeout(() => this.setImage(), 100);\n }\n\n setImage() {\n let source = this.props.image?.trim() as any;\n if (!source) {\n return;\n }\n if (source?.startsWith('url')) {\n source = this.props.image?.matchAll(IMAGE_URL_REGEX)?.next()?.value?.[1];\n }\n if (this.loadAsset) {\n source = this.loadAsset(source);\n }\n if (isFullPathUrl(source)) {\n source = {\n uri: source\n };\n }\n this.caluculateSize(source);\n this.setState({\n imageSrc: source\n } as BackgroundState);\n if (this.props.image) {\n ASSET_CACHE[this.props.image] = source;\n }\n }\n\n public getGradient() {\n return this.props.image?.trim().matchAll(LINEAT_GRADIENT_REGEX).next();\n }\n\n public renderImage() {\n const psresult = this.getPositionAndSize();\n return (\n <AssetConsumer>\n {(loadAsset) => {\n const loadImage = this.loadAsset !== loadAsset;\n this.loadAsset = loadAsset;\n if (loadImage) {\n setTimeout(() => this.setImage(), 10);\n }\n return (<View style={[{borderWidth: 0, overflow: 'hidden'}, StyleSheet.absoluteFill, this.props.style]}>\n <View style={[\n StyleSheet.absoluteFill, {\n flexDirection: 'row',\n justifyContent: psresult.position?.justifyContent,\n alignItems: psresult.position?.alignItems\n }]}>\n <View style={[\n { position: 'absolute', overflow: 'hidden' },\n psresult.position,\n isEmpty(psresult.size) ? StyleSheet.absoluteFill : psresult.size\n ]}>\n <Image\n source={this.state.imageSrc}\n resizeMode={psresult.resizeMode as any || 'cover'}\n style={[\n { \n width: '100%',\n height: '100%'\n }, \n !isEmpty(psresult.size)\n || (psresult.resizeMode === 'cover'\n || psresult.resizeMode === 'contain') ? null : {\n minWidth: this.state.naturalImageWidth,\n minHeight: this.state.naturalImageHeight\n }\n ]}/> \n </View>\n </View>\n </View>);\n }}\n </AssetConsumer>\n );\n }\n\n public render() {\n const gradientData = this.getGradient();\n if (gradientData?.value?.length) {\n return this.renderLinearGradient(gradientData.value[1]);\n } else if (this.props.image && this.state.imageSrc) {\n return this.renderImage();\n }\n return null;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
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
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
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
4
  export class StyleProps {
@@ -1,5 +1,5 @@
1
1
  var _Theme;
2
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+ 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; }
3
3
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
4
4
  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); }
5
5
  import { cloneDeep, isNil, forEach, flatten, isArray, isEmpty, isObject, isString, get, reverse } from 'lodash';
@@ -12,6 +12,7 @@ import ViewPort, { EVENTS as ViewPortEvents } from '@wavemaker/app-rn-runtime/co
12
12
  import MediaQueryList from './MediaQueryList';
13
13
  import ThemeVariables from './theme.variables';
14
14
  import { getErrorMessage, getStyleReference, isValidStyleProp } from './style-prop.validator';
15
+ import injector from '@wavemaker/app-rn-runtime/core/injector';
15
16
  export const DEFAULT_CLASS = 'DEFAULT_CLASS';
16
17
  if (typeof window !== "undefined") {
17
18
  // @ts-ignore: does not properly extend MediaQueryList
@@ -34,6 +35,7 @@ export let ThemeEvent = /*#__PURE__*/function (ThemeEvent) {
34
35
  ;
35
36
  export class Theme {
36
37
  constructor(parent, name) {
38
+ var _this$getAppConfig;
37
39
  this.parent = parent;
38
40
  this.name = name;
39
41
  _defineProperty(this, "eventNotifer", new EventNotifier());
@@ -41,13 +43,18 @@ export class Theme {
41
43
  _defineProperty(this, "styles", {});
42
44
  _defineProperty(this, "cache", {});
43
45
  _defineProperty(this, "traceEnabled", false);
46
+ _defineProperty(this, "revertLayoutToExpo50", void 0);
44
47
  _defineProperty(this, "styleGenerators", []);
48
+ this.revertLayoutToExpo50 = ((_this$getAppConfig = this.getAppConfig()) === null || _this$getAppConfig === void 0 ? void 0 : _this$getAppConfig.revertLayoutToExpo50) || false;
45
49
  if (parent) {
46
50
  this.traceEnabled = parent.traceEnabled;
47
51
  } else {
48
52
  this.traceEnabled = isWebPreviewMode();
49
53
  }
50
54
  }
55
+ getAppConfig() {
56
+ return injector.get('APP_CONFIG');
57
+ }
51
58
  enableTrace(flag) {
52
59
  this.traceEnabled = flag;
53
60
  this.reset();
@@ -170,6 +177,38 @@ export class Theme {
170
177
  style['paddingBottom'] = style['paddingBottom'] || style['padding'];
171
178
  delete style['padding'];
172
179
  }
180
+ if (this.revertLayoutToExpo50 && !isNil(style['flexDirection']) && style['flexDirection'] === 'row-reverse') {
181
+ if (!isNil(style['paddingLeft']) || !isNil(style['paddingRight'])) {
182
+ if (!isNil(style['paddingLeft']) && !isNil(style['paddingRight'])) {
183
+ [style['paddingLeft'], style['paddingRight']] = [style['paddingRight'], style['paddingLeft']];
184
+ } else {
185
+ const [paddingLeft, paddingRight] = [style['paddingLeft'], style['paddingRight']];
186
+ if (paddingLeft !== undefined) {
187
+ style['paddingRight'] = paddingLeft;
188
+ delete style['paddingLeft'];
189
+ }
190
+ if (paddingRight !== undefined) {
191
+ style['paddingLeft'] = paddingRight;
192
+ delete style['paddingRight'];
193
+ }
194
+ }
195
+ }
196
+ if (!isNil(style['marginLeft']) || !isNil(style['marginRight'])) {
197
+ if (!isNil(style['marginLeft']) && !isNil(style['marginRight'])) {
198
+ [style['marginLeft'], style['marginRight']] = [style['marginRight'], style['marginLeft']];
199
+ } else {
200
+ const [marginLeft, marginRight] = [style['marginLeft'], style['marginRight']];
201
+ if (marginLeft !== undefined) {
202
+ style['marginRight'] = marginLeft;
203
+ delete style['marginLeft'];
204
+ }
205
+ if (marginRight !== undefined) {
206
+ style['marginLeft'] = marginRight;
207
+ delete style['marginRight'];
208
+ }
209
+ }
210
+ }
211
+ }
173
212
  let screenWidth = Dimensions.get('window').width;
174
213
  let screenHeight = Dimensions.get('window').height;
175
214
  Object.keys(style).forEach((k, i) => {
@@ -347,7 +386,8 @@ Theme.BASE.registerStyle((themeVariables, addStyle) => {
347
386
  height: 0,
348
387
  transform: [{
349
388
  scale: 0
350
- }]
389
+ }],
390
+ overflow: 'hidden'
351
391
  }
352
392
  });
353
393
  addStyle('bg-danger', '', {