@wavemaker/app-rn-runtime 11.11.7-rc.218 → 11.12.0-next.28180

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 (210) hide show
  1. package/components/advanced/carousel/carousel.component.js +4 -2
  2. package/components/advanced/carousel/carousel.component.js.map +1 -1
  3. package/components/basic/anchor/anchor.component.js +11 -5
  4. package/components/basic/anchor/anchor.component.js.map +1 -1
  5. package/components/basic/anchor/anchor.props.js +1 -0
  6. package/components/basic/anchor/anchor.props.js.map +1 -1
  7. package/components/basic/audio/audio.component.js +52 -47
  8. package/components/basic/audio/audio.component.js.map +1 -1
  9. package/components/basic/bottomsheet/bottomsheet.component.js +94 -48
  10. package/components/basic/bottomsheet/bottomsheet.component.js.map +1 -1
  11. package/components/basic/bottomsheet/bottomsheet.props.js +1 -0
  12. package/components/basic/bottomsheet/bottomsheet.props.js.map +1 -1
  13. package/components/basic/button/button.component.js +2 -1
  14. package/components/basic/button/button.component.js.map +1 -1
  15. package/components/basic/button/button.props.js +1 -0
  16. package/components/basic/button/button.props.js.map +1 -1
  17. package/components/basic/label/label.component.js.map +1 -1
  18. package/components/basic/label/label.props.js +1 -0
  19. package/components/basic/label/label.props.js.map +1 -1
  20. package/components/basic/message/message.component.js +15 -7
  21. package/components/basic/message/message.component.js.map +1 -1
  22. package/components/basic/message/message.props.js +1 -0
  23. package/components/basic/message/message.props.js.map +1 -1
  24. package/components/basic/picture/picture.component.js +2 -2
  25. package/components/basic/picture/picture.component.js.map +1 -1
  26. package/components/basic/video/video.component.js +69 -42
  27. package/components/basic/video/video.component.js.map +1 -1
  28. package/components/chart/basechart.props.js +1 -0
  29. package/components/chart/basechart.props.js.map +1 -1
  30. package/components/container/container.component.js +107 -27
  31. package/components/container/container.component.js.map +1 -1
  32. package/components/container/container.props.js +3 -1
  33. package/components/container/container.props.js.map +1 -1
  34. package/components/container/container.styles.js +1 -3
  35. package/components/container/container.styles.js.map +1 -1
  36. package/components/container/layoutgrid/gridcolumn/gridcolumn.component.js +6 -1
  37. package/components/container/layoutgrid/gridcolumn/gridcolumn.component.js.map +1 -1
  38. package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js +2 -2
  39. package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js.map +1 -1
  40. package/components/container/tabs/tabheader/tabheader.component.js +11 -2
  41. package/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
  42. package/components/container/tabs/tabheader/tabheader.props.js +1 -0
  43. package/components/container/tabs/tabheader/tabheader.props.js.map +1 -1
  44. package/components/container/tabs/tabpane/tabpane.props.js +3 -0
  45. package/components/container/tabs/tabpane/tabpane.props.js.map +1 -1
  46. package/components/container/tabs/tabs.component.js +11 -2
  47. package/components/container/tabs/tabs.component.js.map +1 -1
  48. package/components/container/wizard/wizard.component.js +1 -0
  49. package/components/container/wizard/wizard.component.js.map +1 -1
  50. package/components/data/list/list.component.js +23 -13
  51. package/components/data/list/list.component.js.map +1 -1
  52. package/components/device/barcodescanner/barcodescanner.component.js +33 -18
  53. package/components/device/barcodescanner/barcodescanner.component.js.map +1 -1
  54. package/components/device/barcodescanner/barcodescanner.props.js +2 -1
  55. package/components/device/barcodescanner/barcodescanner.props.js.map +1 -1
  56. package/components/device/camera/camera.component.js +35 -22
  57. package/components/device/camera/camera.component.js.map +1 -1
  58. package/components/device/camera/camera.props.js +2 -1
  59. package/components/device/camera/camera.props.js.map +1 -1
  60. package/components/input/basedataset/basedataset.props.js +1 -0
  61. package/components/input/basedataset/basedataset.props.js.map +1 -1
  62. package/components/input/calendar/calendar.component.js +12 -4
  63. package/components/input/calendar/calendar.component.js.map +1 -1
  64. package/components/input/calendar/views/month-view.js +9 -2
  65. package/components/input/calendar/views/month-view.js.map +1 -1
  66. package/components/input/checkbox/checkbox.component.js +5 -5
  67. package/components/input/checkbox/checkbox.component.js.map +1 -1
  68. package/components/input/checkboxset/checkboxset.component.js +15 -11
  69. package/components/input/checkboxset/checkboxset.component.js.map +1 -1
  70. package/components/input/chips/chips.component.js +25 -12
  71. package/components/input/chips/chips.component.js.map +1 -1
  72. package/components/input/currency/currency.component.js +5 -2
  73. package/components/input/currency/currency.component.js.map +1 -1
  74. package/components/input/epoch/base-datetime.component.js +9 -9
  75. package/components/input/epoch/base-datetime.component.js.map +1 -1
  76. package/components/input/epoch/datetime/datetime.props.js +1 -0
  77. package/components/input/epoch/datetime/datetime.props.js.map +1 -1
  78. package/components/input/epoch/wheelpicker/wheelpicker.component.js +8 -3
  79. package/components/input/epoch/wheelpicker/wheelpicker.component.js.map +1 -1
  80. package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js +8 -3
  81. package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js.map +1 -1
  82. package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js +8 -3
  83. package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js.map +1 -1
  84. package/components/input/fileupload/fileupload.component.js +23 -14
  85. package/components/input/fileupload/fileupload.component.js.map +1 -1
  86. package/components/input/fileupload/fileupload.props.js +2 -0
  87. package/components/input/fileupload/fileupload.props.js.map +1 -1
  88. package/components/input/radioset/radioset.component.js +15 -5
  89. package/components/input/radioset/radioset.component.js.map +1 -1
  90. package/components/input/rating/rating.component.js +11 -3
  91. package/components/input/rating/rating.component.js.map +1 -1
  92. package/components/input/rating/rating.props.js +4 -0
  93. package/components/input/rating/rating.props.js.map +1 -1
  94. package/components/input/select/select.component.js +7 -5
  95. package/components/input/select/select.component.js.map +1 -1
  96. package/components/input/slider/slider.component.js +2 -1
  97. package/components/input/slider/slider.component.js.map +1 -1
  98. package/components/input/switch/switch.component.js +11 -9
  99. package/components/input/switch/switch.component.js.map +1 -1
  100. package/components/input/toggle/toggle.component.js +8 -4
  101. package/components/input/toggle/toggle.component.js.map +1 -1
  102. package/components/input/toggle/toggle.props.js +1 -0
  103. package/components/input/toggle/toggle.props.js.map +1 -1
  104. package/components/navigation/appnavbar/appnavbar.component.js +19 -61
  105. package/components/navigation/appnavbar/appnavbar.component.js.map +1 -1
  106. package/components/navigation/navitem/navitem.component.js +3 -1
  107. package/components/navigation/navitem/navitem.component.js.map +1 -1
  108. package/components/navigation/popover/popover.component.js +2 -1
  109. package/components/navigation/popover/popover.component.js.map +1 -1
  110. package/components/navigation/popover/popover.props.js +2 -1
  111. package/components/navigation/popover/popover.props.js.map +1 -1
  112. package/components/page/page-content/page-content.component.js +74 -20
  113. package/components/page/page-content/page-content.component.js.map +1 -1
  114. package/components/page/page-content/page-content.props.js +1 -0
  115. package/components/page/page-content/page-content.props.js.map +1 -1
  116. package/components/page/page.component.js +29 -44
  117. package/components/page/page.component.js.map +1 -1
  118. package/components/page/page.props.js +4 -2
  119. package/components/page/page.props.js.map +1 -1
  120. package/components/page/tabbar/tabbar.component.js +24 -13
  121. package/components/page/tabbar/tabbar.component.js.map +1 -1
  122. package/core/AppConfig.js.map +1 -1
  123. package/core/accessibility.js +51 -32
  124. package/core/accessibility.js.map +1 -1
  125. package/core/base.component.js.map +1 -1
  126. package/core/components/error-fallback/error-fallback.component.js +140 -0
  127. package/core/components/error-fallback/error-fallback.component.js.map +1 -0
  128. package/core/components/error-fallback/error-fallback.styles.js +224 -0
  129. package/core/components/error-fallback/error-fallback.styles.js.map +1 -0
  130. package/core/components/sticky-base.component.js +54 -0
  131. package/core/components/sticky-base.component.js.map +1 -0
  132. package/core/components/sticky-container.component.js +34 -0
  133. package/core/components/sticky-container.component.js.map +1 -0
  134. package/core/components/sticky-container.styles.js +98 -0
  135. package/core/components/sticky-container.styles.js.map +1 -0
  136. package/core/components/sticky-nav.component.js +28 -0
  137. package/core/components/sticky-nav.component.js.map +1 -0
  138. package/core/device/av-service.js +8 -0
  139. package/core/device/av-service.js.map +1 -0
  140. package/core/device/calendar-service.js +7 -1
  141. package/core/device/calendar-service.js.map +1 -1
  142. package/core/device/camera-service.js +6 -0
  143. package/core/device/camera-service.js.map +1 -1
  144. package/core/device/contacts-service.js +7 -1
  145. package/core/device/contacts-service.js.map +1 -1
  146. package/core/device/fileupload-service.js +8 -0
  147. package/core/device/fileupload-service.js.map +1 -0
  148. package/core/device/location-service.js +7 -1
  149. package/core/device/location-service.js.map +1 -1
  150. package/core/device/scan-service.js +6 -0
  151. package/core/device/scan-service.js.map +1 -1
  152. package/core/error-boundary.component.js +1 -1
  153. package/core/error-boundary.component.js.map +1 -1
  154. package/core/event-notifier.js +4 -3
  155. package/core/event-notifier.js.map +1 -1
  156. package/core/fixed-view.component.js +2 -1
  157. package/core/fixed-view.component.js.map +1 -1
  158. package/core/responsive.utils.js +8 -5
  159. package/core/responsive.utils.js.map +1 -1
  160. package/core/sticky-view.component.js +50 -0
  161. package/core/sticky-view.component.js.map +1 -0
  162. package/core/sticky-wrapper.js +129 -0
  163. package/core/sticky-wrapper.js.map +1 -0
  164. package/core/utils.js +0 -6
  165. package/core/utils.js.map +1 -1
  166. package/npm-shrinkwrap.json +5 -5
  167. package/package-lock.json +5 -5
  168. package/package.json +2 -2
  169. package/runtime/App.js +3 -5
  170. package/runtime/App.js.map +1 -1
  171. package/runtime/services/device/calendar-service.js +9 -5
  172. package/runtime/services/device/calendar-service.js.map +1 -1
  173. package/runtime/services/device/camera-service.js +39 -22
  174. package/runtime/services/device/camera-service.js.map +1 -1
  175. package/runtime/services/device/contacts-service.js +6 -5
  176. package/runtime/services/device/contacts-service.js.map +1 -1
  177. package/runtime/services/device/location-service.js +4 -4
  178. package/runtime/services/device/location-service.js.map +1 -1
  179. package/runtime/services/device/permission-service.js +5 -0
  180. package/runtime/services/device/permission-service.js.map +1 -0
  181. package/runtime/services/device/permissions.js +34 -39
  182. package/runtime/services/device/permissions.js.map +1 -1
  183. package/runtime/services/device/scan-service.js +4 -3
  184. package/runtime/services/device/scan-service.js.map +1 -1
  185. package/styles/theme.js +24 -18
  186. package/styles/theme.js.map +1 -1
  187. package/variables/device/calendar/create-event.operation.js +12 -1
  188. package/variables/device/calendar/create-event.operation.js.map +1 -1
  189. package/variables/device/calendar/delete-event.operation.js +12 -1
  190. package/variables/device/calendar/delete-event.operation.js.map +1 -1
  191. package/variables/device/calendar/get-events.operation.js +12 -1
  192. package/variables/device/calendar/get-events.operation.js.map +1 -1
  193. package/variables/device/camera/capture-image.operation.js +8 -1
  194. package/variables/device/camera/capture-image.operation.js.map +1 -1
  195. package/variables/device/camera/capture-video.operation.js +7 -1
  196. package/variables/device/camera/capture-video.operation.js.map +1 -1
  197. package/variables/device/contacts/get-contacts.operation.js +12 -1
  198. package/variables/device/contacts/get-contacts.operation.js.map +1 -1
  199. package/variables/device/device/current-geo-position.operation.js +12 -1
  200. package/variables/device/device/current-geo-position.operation.js.map +1 -1
  201. package/variables/device/file/upload-file.operation.js +17 -3
  202. package/variables/device/file/upload-file.operation.js.map +1 -1
  203. package/variables/device/scan/scan.operation.js +12 -1
  204. package/variables/device/scan/scan.operation.js.map +1 -1
  205. package/variables/http.service.js +6 -1
  206. package/variables/http.service.js.map +1 -1
  207. package/core/components/error-fallback.component.js +0 -264
  208. package/core/components/error-fallback.component.js.map +0 -1
  209. package/core/sticky-container.component.js +0 -175
  210. package/core/sticky-container.component.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["React","axios","Platform","TouchableOpacity","View","StatusBar","GestureHandlerRootView","ProtoTypes","SafeAreaProvider","SafeAreaInsetsContext","SafeAreaView","DefaultTheme","Provider","PaperProvider","Linking","NativeModulesProxy","WebBrowser","get","last","RENDER_LOGGER","EventNotifier","ThemeProvider","StorageService","ConstantService","NetworkService","injector","formatters","deepCopy","isWebPreviewMode","Utils","ModalProvider","FixedViewContainer","ToastProvider","NavigationServiceProvider","PartialProvider","WmNetworkInfoToaster","ThemeVariables","WmMessage","Animatedview","AppI18nService","Watcher","preparePatch","AppDisplayManagerService","AppModalService","AppToastService","AppPartialService","AppSpinnerService","AppNavigator","SecurityProvider","CameraProvider","CameraService","ScanProvider","ScanService","AppSecurityService","getValidJSON","parseErrors","MaterialCommunityIconsFont","SplashScreen","WmMemo","VariableEvents","BlurView","NavigationBar","moment","ErrorBoundary","style","any","MIN_TIME_BETWEEN_REFRESH_CYCLES","DrawerImpl","constructor","onChange","_defineProperty","setContent","content","getContent","setAnimation","animation","getAnimation","SUPPORTED_SERVICES","CONSTANTS","i18nService","global","BaseApp","Component","props","ROOT","colors","primary","INSTANCE","primaryColor","refresh","preventAutoHideAsync","setTimeout","hideAsync","appConfig","app","drawer","setDefaultOptions","spinner","refreshAfterWait","baseUrl","url","wait","bindServiceInterceptors","complete","reload","debug","_this$commonPartial","_this$appConfig$curre","forceUpdate","commonPartial","currentPage","watcher","check","cleanup","push","notifier","subscribe","networkState","networkStatus","event","fn","eventNotifier","notify","args","activePage","Widgets","_this$commonPartial2","onBeforePageLeave","nextPage","goToPage","pageName","params","_this$appConfig$curre2","goBack","_this$appConfig$curre3","openUrl","_this$appConfig$curre4","onBeforeServiceCall","config","isSkeletonEnabled","loader","onServiceSuccess","data","response","onServiceError","errorMsg","error","invokeNativeApi","key","EmbedCommModule","OS","sendToNative","Promise","reject","triggerPageReady","activePageName","activePageScope","onPageReady","e","console","setTimezone","timezone","openBrowser","window","open","startsWith","target","openBrowserAsync","openURL","resolve","axiosInterceptorIds","interceptors","request","use","headers","log","_errorDetails","_errorDetails2","_error$response","_error$response2","_error$response3","_error$response4","errorDetails","errMsg","errors","message","includes","status","_this$appConfig$curre5","_this$appConfig$curre6","eval","failOnError","call","triggerStartUpVariables","all","startUpVariables","map","s","Variables","invoke","catch","componentDidMount","show","Object","values","v","BEFORE_INVOKE","AFTER_INVOKE","startUpActions","a","Actions","then","onAppVariablesReady","isStarted","componentWillUnmount","id","eject","forEach","getProviders","createElement","value","renderToasters","_this$appConfig","isEdgeToEdgeApp","edgeToEdgeConfig","toastsOpened","length","render","watch","refreshCount","Fragment","o","i","toasterStyles","_o$styles","_o$styles2","styles","top","undefined","_this$statusbarInsets","statusbarInsets","isButtonNavigationEnabled","bottom","_this$statusbarInsets2","theme","position","width","elevation","elevationIndex","zIndex","onPress","onClick","text","name","type","caption","hideclose","showclosebutton","onClose","closeToast","closeiconclass","renderDialogs","_last","modalsOpened","animatedRefs","modalOptions","onStartShouldSetResponder","onResponderEnd","isModal","hideModal","appModal","centered","centeredModal","modalStyle","entryanimation","delay","animationdelay","ref","animatedRef","appModalContent","contentStyle","alignItems","evt","stopPropagation","renderDisplayManager","displayOptions","displayViewContainer","renderIosStatusbarInsetsView","insets","backgroundColor","height","renderIconsViewSupportForWeb","getSelectedLocale","selectedLocale","importModule","service","getDependency","serviceName","renderBlurView","setPositionAsync","setBackgroundColorAsync","intensity","blurIntensity","tint","blurTint","experimentalBlurMethod","renderTransparentView","color","opacity","_this$statusbarInsets3","renderApp","_this$appConfig2","_this$appConfig3","autoUpdateVariables","_this$Variables$value","invokeOnParamChange","statusbarConfig","Wrapper","Consumer","left","right","_this$props","_this$appConfig$drawe","_this$appConfig$drawe2","paperTheme","flex","translucent","container","landingPage","landingPageParams","hideDrawer","drawerContent","drawerAnimation","appLocale","flexDirection","justifyContent"],"sources":["App.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport axios, { AxiosError, InternalAxiosRequestConfig, AxiosResponse } from 'axios';\nimport { Platform, TouchableOpacity, View, ViewStyle, StatusBar } from 'react-native';\nimport { GestureHandlerRootView } from 'react-native-gesture-handler';\nimport ProtoTypes from 'prop-types';\nimport { SafeAreaProvider, SafeAreaInsetsContext, SafeAreaView, EdgeInsets } from 'react-native-safe-area-context';\nimport { DefaultTheme, Provider as PaperProvider } from 'react-native-paper';\nimport { Linking } from 'react-native';\nimport { NativeModulesProxy } from 'expo-modules-core';\nimport * as WebBrowser from 'expo-web-browser';\nimport { get, last } from 'lodash';\nimport { RENDER_LOGGER } from '@wavemaker/app-rn-runtime/core/logger';\nimport EventNotifier from '@wavemaker/app-rn-runtime/core/event-notifier';\nimport { ThemeProvider } from '@wavemaker/app-rn-runtime/styles/theme';\nimport AppConfig, { Drawer } from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport StorageService from '@wavemaker/app-rn-runtime/core/storage.service';\nimport ConstantService from '@wavemaker/app-rn-runtime/core/constant.service';\nimport NetworkService, { NetworkState } from '@wavemaker/app-rn-runtime/core/network.service';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport formatters from '@wavemaker/app-rn-runtime/core/formatters';\nimport { deepCopy, isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\nimport * as Utils from '@wavemaker/app-rn-runtime/core/utils';\nimport { ModalProvider } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport { FixedViewContainer } from '@wavemaker/app-rn-runtime/core/fixed-view.component';\nimport { ToastProvider } from '@wavemaker/app-rn-runtime/core/toast.service';\nimport NavigationService, { NavigationServiceProvider } from '@wavemaker/app-rn-runtime/core/navigation.service';\nimport { PartialProvider } from '@wavemaker/app-rn-runtime/core/partial.service';\nimport WmNetworkInfoToaster from '@wavemaker/app-rn-runtime/components/advanced/network-info-toaster/network-info-toaster.component';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nimport WmMessage from '@wavemaker/app-rn-runtime/components/basic/message/message.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport AppI18nService from '@wavemaker/app-rn-runtime/runtime/services/app-i18n.service';\n\nimport { Watcher } from './watcher';\nimport { preparePatch } from './lib-patch';\nimport AppDisplayManagerService from './services/app-display-manager.service';\nimport AppModalService from './services/app-modal.service';\nimport AppToastService from './services/app-toast.service';\nimport AppPartialService from './services/partial.service';\nimport AppSpinnerService from './services/app-spinner.service';\nimport { AppNavigator } from './App.navigator';\nimport { SecurityProvider } from '../core/security.service';\nimport { CameraProvider } from '../core/device/camera-service';\nimport CameraService from './services/device/camera-service';\nimport { ScanProvider } from '../core/device/scan-service';\nimport ScanService from './services/device/scan-service';\nimport AppSecurityService from './services/app-security.service';\nimport { getValidJSON, parseErrors } from '@wavemaker/app-rn-runtime/variables/utils/variable.utils';\nimport MaterialCommunityIconsFont from '@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf';\n\nimport * as SplashScreen from 'expo-splash-screen';\nimport BasePartial from './base-partial.component';\nimport BasePage from './base-page.component';\nimport { WmMemo } from './memo.component';\nimport { BaseVariable, VariableEvents } from '../variables/base-variable';\nimport { BlurView } from 'expo-blur';\nimport * as NavigationBar from 'expo-navigation-bar';\nimport moment, { Moment } from 'moment';\nimport ErrorBoundary from '../core/error-boundary.component';\n\ndeclare const window: any;\n\n//some old react libraries need this\n((View as any)['propTypes'] = { style: ProtoTypes.any })\n\nconst MIN_TIME_BETWEEN_REFRESH_CYCLES = 200;\n\nclass DrawerImpl implements Drawer {\n content: ReactNode;\n animation: string = 'slide-in';\n\n constructor(private onChange: () => void) {\n\n }\n\n setContent(content: ReactNode) {\n this.content = content;\n this.onChange();\n }\n\n getContent() {\n return this.content;\n }\n\n setAnimation(animation: string) {\n this.animation = animation;\n this.onChange();\n }\n\n getAnimation() {\n return this.animation;\n }\n}\nconst SUPPORTED_SERVICES = {\n Utils: Utils,\n CONSTANTS: ConstantService,\n StorageService: StorageService,\n AppDisplayManagerService: AppDisplayManagerService,\n i18nService: AppI18nService\n};\n(global as any)['axios'] = axios;\nexport default abstract class BaseApp extends React.Component implements NavigationService {\n\n Actions: any = {};\n Variables: any = {};\n onAppVariablesReady = () => { };\n isStarted = false;\n appConfig = injector.get<AppConfig>('APP_CONFIG');\n private eventNotifier = new EventNotifier();\n public baseUrl = '';\n public targetPlatform = 'NATIVE_MOBILE';\n public cleanup = [] as Function[];\n public commonPartial: BasePartial = null as any;\n private startUpVariables: string[] = [];\n private startUpActions: string[] = [];\n private autoUpdateVariables: string[] = [];\n private axiosInterceptorIds: number[] = [];\n public formatters = formatters;\n public serviceDefinitions = {} as any;\n private animatedRef: any;\n public modalsOpened: number = 0;\n public toastsOpened: number = 0;\n public watcher: Watcher = Watcher.ROOT;\n public paperTheme = {\n ...DefaultTheme,\n colors: {\n ...DefaultTheme.colors,\n primary: ThemeVariables.INSTANCE.primaryColor\n }\n };\n public lib = preparePatch(() => {\n this.refresh();\n });\n\n public networkStatus = {} as NetworkState;\n public statusbarInsets: any;\n\n constructor(props: any) {\n super(props);\n SplashScreen.preventAutoHideAsync();\n setTimeout(() => SplashScreen.hideAsync(), 10000);\n this.appConfig.app = this;\n this.appConfig.drawer = new DrawerImpl(() => this.refresh());\n AppSpinnerService.setDefaultOptions({\n spinner: this.appConfig.spinner\n });\n let refreshAfterWait = false;\n this.baseUrl = this.appConfig.url;\n let wait = 0;\n this.bindServiceInterceptors();\n this.appConfig.refresh = (complete = false) => {\n if (complete) {\n this.reload();\n return;\n }\n if (!wait) {\n RENDER_LOGGER.debug('refreshing the app...');\n wait = MIN_TIME_BETWEEN_REFRESH_CYCLES;\n refreshAfterWait = false;\n setTimeout(() => {\n this.forceUpdate();\n this.commonPartial?.forceUpdate();\n this.appConfig.currentPage?.forceUpdate();\n this.watcher.check();\n });\n setTimeout(() => {\n wait = 0;\n refreshAfterWait && this.appConfig.refresh();\n }, wait);\n } else {\n RENDER_LOGGER.debug('will refresh the app in the next cycle.');\n refreshAfterWait = true;\n }\n }\n this.cleanup.push(\n NetworkService.notifier.subscribe('onNetworkStateChange', (networkState: NetworkState) => {\n this.networkStatus = { ...networkState };\n this.refresh();\n }\n ));\n }\n\n subscribe(event: string, fn: Function) {\n return this.eventNotifier.subscribe(event, fn);\n }\n\n notify(event: string, ...args: any) {\n return this.eventNotifier.notify(event, args);\n }\n\n get activePage() {\n return this.appConfig.currentPage;\n }\n\n get Widgets() {\n return this.commonPartial?.Widgets;\n }\n\n async onBeforePageLeave(currentPage: string, nextPage: string) {\n //method can be override by the user from studio;\n return true;\n }\n\n goToPage(pageName: string, params: any) {\n return this.appConfig.currentPage?.goToPage(pageName, params);\n }\n\n goBack(pageName: string, params: any) {\n return this.appConfig.currentPage?.goBack(pageName, params);\n }\n\n openUrl(url: string, params?: any) {\n return this.appConfig.currentPage?.openUrl(url, params);\n }\n\n onBeforeServiceCall(config: InternalAxiosRequestConfig) {\n //DO NOT WRITE CODE HERE:\n //This is a placeholder for the WaveMaker developer.\n return config;\n }\n\n isSkeletonEnabled() {\n return this.appConfig.spinner.loader == \"skeleton\";\n }\n\n onServiceSuccess(data: any, response: AxiosResponse) {\n //DO NOT WRITE CODE HERE:\n //This is a placeholder for the WaveMaker developer.\n }\n\n onServiceError(errorMsg: any, error: AxiosError<any>) {\n //DO NOT WRITE CODE HERE:\n //This is a placeholder for the WaveMaker developer.\n }\n\n invokeNativeApi(key: string, data: Object) {\n if (NativeModulesProxy.EmbedCommModule\n && (Platform.OS === 'android' || Platform.OS === 'ios')) {\n return NativeModulesProxy.EmbedCommModule.sendToNative(key, data || {});\n } else {\n return Promise.reject('Not able to invoke Native API in this platform.');\n }\n }\n\n triggerPageReady(activePageName: string, activePageScope: BasePage) {\n try {\n this.onPageReady(activePageName, activePageScope);\n } catch (e) {\n console.error(e);\n }\n }\n\n onPageReady(activePageName: string, activePageScope: BasePage) {\n\n }\n\n setTimezone(timezone: any) {\n AppI18nService.setTimezone(timezone);\n }\n\n get spinner() {\n return AppSpinnerService;\n }\n\n openBrowser(url: string, params = {} as any) {\n if (url) {\n if (isWebPreviewMode()) {\n window.open(url, '_blank');\n } else if (url.startsWith('http') && params.target === '_blank') {\n WebBrowser.openBrowserAsync(url);\n } else {\n return Linking.openURL(url);\n }\n }\n return Promise.resolve();\n }\n\n // To support old api\n reload() { }\n\n bindServiceInterceptors() {\n this.axiosInterceptorIds = [\n axios.interceptors.request.use((config: InternalAxiosRequestConfig) => {\n const url = config.url as string;\n if (!(url.startsWith('http://') || url.startsWith(\"https://\"))) {\n config.url = this.appConfig.url + '/' + url;\n }\n config.headers = config.headers || {};\n config.headers['X-Requested-With'] = 'XMLHttpRequest';\n console.log('onBeforeService call invoked on ' + config.url);\n this.notify('beforeServiceCall', config);\n return this.onBeforeServiceCall(config);\n }),\n axios.interceptors.response.use(\n (response: AxiosResponse) => {\n this.onServiceSuccess(response.data, response);\n this.notify('afterServiceCall', response.config, response);\n return response;\n }, (error: AxiosError<any>) => {\n let errorDetails: any = error.response, errMsg;\n errorDetails = getValidJSON(errorDetails?.data) || errorDetails?.data;\n if (errorDetails && errorDetails.errors) {\n errMsg = parseErrors(errorDetails.errors) || \"Service Call Failed\";\n } else {\n errMsg = error.message || \"Service Call Failed\";\n }\n error.message = errMsg;\n console.error(`Error ${errMsg} recieved from ${error.response?.config?.url}`);\n this.onServiceError(error.message, error);\n if (error.response?.config.url?.startsWith(this.appConfig.url) && !error.response?.config.url?.includes('/services/') && error.response?.status === 401) {\n this.appConfig.currentPage?.pageName !== 'Login' && this.appConfig.currentPage?.goToPage('Login');\n }\n this.notify('afterServiceCall', error.config, error);\n return Promise.reject(error)\n })\n ];\n }\n\n eval(fn: Function, failOnError = false) {\n try {\n return fn.call(this);\n } catch (e) {\n if (failOnError) {\n throw e;\n } else {\n return null;\n }\n }\n }\n\n triggerStartUpVariables() {\n return Promise.all(this.startUpVariables.map(s => this.Variables[s] && this.Variables[s].invoke()))\n .catch(() => { });\n }\n\n componentDidMount() {\n AppSpinnerService.show({\n spinner: this.appConfig.spinner\n });\n this.cleanup.push(...Object.values(this.Variables).map((v: any) => {\n return v.subscribe(VariableEvents.BEFORE_INVOKE, () => {\n this.notify(VariableEvents.BEFORE_INVOKE, v);\n });\n }));\n this.cleanup.push(...Object.values(this.Variables).map((v: any) => {\n return v.subscribe(VariableEvents.AFTER_INVOKE, () => {\n this.notify(VariableEvents.AFTER_INVOKE, v);\n });\n }));\n this.startUpActions.map(a => this.Actions[a] && this.Actions[a].invoke());\n return this.triggerStartUpVariables()\n .then(() => {\n this.onAppVariablesReady();\n this.isStarted = true;\n this.forceUpdate();\n }, () => { });\n }\n\n componentWillUnmount(): void {\n this.axiosInterceptorIds.map(id => {\n axios.interceptors.request.eject(id);\n });\n this.cleanup.forEach(fn => fn());\n }\n\n refresh() {\n this.appConfig.refresh();\n }\n\n getProviders(content: React.ReactNode) {\n return (\n <NavigationServiceProvider value={this}>\n <ToastProvider value={AppToastService}>\n <PartialProvider value={AppPartialService}>\n <SecurityProvider value={AppSecurityService}>\n <CameraProvider value={CameraService}>\n <ScanProvider value={ScanService}>\n <ModalProvider value={AppModalService}>\n {content}\n </ModalProvider>\n </ScanProvider>\n </CameraProvider>\n </SecurityProvider>\n </PartialProvider>\n </ToastProvider>\n </NavigationServiceProvider>\n );\n }\n\n renderToasters() {\n const isEdgeToEdgeApp = !!this.appConfig?.edgeToEdgeConfig?.isEdgeToEdgeApp;\n this.toastsOpened = AppToastService.toastsOpened.length;\n return <WmMemo watcher={this.watcher} render={(watch) => {\n watch(() => AppToastService.refreshCount);\n return (\n <>\n {AppToastService.toastsOpened.map((o, i) => {\n // to align the toaster position if it's an edge-to-edge app.\n let toasterStyles = {};\n if (isEdgeToEdgeApp) {\n if (o.styles?.top !== undefined) {\n toasterStyles = { top: this.statusbarInsets?.top };\n } else if (this.isButtonNavigationEnabled() && o.styles?.bottom !== undefined) {\n toasterStyles = { bottom: this.statusbarInsets?.bottom };\n }\n }\n \n return this.getProviders((\n <ThemeProvider value={this.appConfig.theme}>\n <View key={i} style={[{\n position: 'absolute',\n width: '100%',\n bottom: 0,\n elevation: o.elevationIndex,\n zIndex: o.elevationIndex\n }, o.styles,toasterStyles]}>\n <TouchableOpacity onPress={() => o.onClick && o.onClick()}>\n {o.content}\n {o.text && <WmMessage name={\"message\" + i} type={o.type} caption={o.text} hideclose={!o.showclosebutton} onClose={o.closeToast} closeiconclass={o.closeiconclass}></WmMessage>}\n </TouchableOpacity>\n </View>\n </ThemeProvider>\n )\n )\n })}\n </>);\n }} />;\n }\n\n renderDialogs(): ReactNode {\n return <WmMemo watcher={this.watcher} render={(watch) => {\n watch(() => last(AppModalService.modalsOpened)?.content);\n this.modalsOpened = AppModalService.modalsOpened.length;\n AppModalService.animatedRefs.length = 0;\n return (\n <>\n {AppModalService.modalOptions.content &&\n AppModalService.modalsOpened.map((o, i) => {\n return (\n <View key={(o.name || '') + i}\n onStartShouldSetResponder={() => true}\n onResponderEnd={() => o.isModal && AppModalService.hideModal(o)}\n style={deepCopy(styles.appModal,\n o.centered ? styles.centeredModal : null,\n o.modalStyle,\n {\n elevation: o.elevationIndex,\n zIndex: o.elevationIndex\n })}>\n <Animatedview entryanimation={o.animation || 'fadeIn'} delay={o.animationdelay}\n ref={ref => {\n this.animatedRef = ref;\n AppModalService.animatedRefs[i] = ref;\n }}\n style={[styles.appModalContent, o.contentStyle]}>\n <GestureHandlerRootView style={{ width: '100%', alignItems: 'center' }}>\n <View\n onStartShouldSetResponder={evt => true}\n onResponderEnd={(e) => e.stopPropagation()}\n style={{ width: '100%', alignItems: 'center' }}>\n {this.getProviders(o.content)}\n </View>\n </GestureHandlerRootView>\n </Animatedview>\n </View>\n )\n }\n )\n }\n </>);\n }} />;\n }\n\n renderDisplayManager(): ReactNode {\n return <WmMemo watcher={this.watcher} render={(watch) => {\n watch(() => AppDisplayManagerService.displayOptions.content);\n return AppDisplayManagerService.displayOptions.content\n ? (\n <ThemeProvider value={this.appConfig.theme}>\n <View style={[styles.displayViewContainer, {\n elevation: this.toastsOpened + this.modalsOpened + 1,\n zIndex: this.toastsOpened + this.modalsOpened + 1\n }]}>\n {AppDisplayManagerService.displayOptions.content}\n </View>\n </ThemeProvider>) : null;\n }} />\n }\n\n renderIosStatusbarInsetsView(isEdgeToEdgeApp: boolean, insets: EdgeInsets | null){\n return Platform.OS == 'ios' && !isEdgeToEdgeApp ? (\n <View style={{\n backgroundColor: 'white', \n position: 'absolute',\n top: 0, \n height: insets?.top || 0,\n width: '100%',\n zIndex: 9\n }}></View>\n ) : <></>\n }\n\n renderIconsViewSupportForWeb() {\n try {\n return (<style type=\"text/css\">{`\n @font-face {\n font-family: 'MaterialCommunityIcons';\n src: url(${MaterialCommunityIconsFont}) format('truetype');\n }\n `}</style>);\n } catch (e) {\n console.log('require react-native-vector-icons could not be loaded.');\n }\n return null;\n }\n\n getSelectedLocale() {\n return this.appConfig.selectedLocale;\n }\n\n importModule(service?: string){\n if(service == \"moment\"){\n return moment;\n }\n return undefined;\n }\n \n getDependency(serviceName: string): any {\n const service = get(SUPPORTED_SERVICES, serviceName);\n if (service) {\n return service;\n }\n }\n\n renderBlurView(position: 'top' | 'bottom', insets: any, config:any) {\n if (!insets?.[position]) return null;\n \n if (Platform.OS === \"android\") {\n NavigationBar.setPositionAsync('absolute');\n NavigationBar.setBackgroundColorAsync(\"transparent\");\n }\n \n return (\n <BlurView\n intensity={config?.blurIntensity || 30}\n tint={config.blurTint || \"dark\"}\n experimentalBlurMethod=\"dimezisBlurView\"\n style={{\n [position]: 0,\n height: insets[position],\n width: '100%',\n position: 'absolute',\n zIndex: 999,\n }}\n />\n );\n }\n\n renderTransparentView(position: 'top' | 'bottom', insets: any, config:any) {\n if (!insets?.[position]) return null;\n \n if (Platform.OS === \"android\") {\n NavigationBar.setPositionAsync('absolute');\n NavigationBar.setBackgroundColorAsync(\"rgba(0,0,0,0.2)\");\n }\n \n return (\n <View\n style={{\n [position]: 0,\n height: insets[position],\n width: '100%',\n position: 'absolute',\n zIndex: 999,\n backgroundColor: config?.color || 'transparent',\n opacity: (config?.opacity/100) || 0,\n }}\n ></View>\n );\n }\n\n isButtonNavigationEnabled(){\n if(Platform.OS ===\"android\" && this.statusbarInsets?.bottom > 40){\n return true\n }\n return false;\n }\n\n renderApp(commonPartial: React.ReactNode) {\n this.autoUpdateVariables.forEach(value => this.Variables[value]?.invokeOnParamChange());\n const edgeToEdgeConfig = this.appConfig?.edgeToEdgeConfig;\n const statusbarConfig = this.appConfig?.edgeToEdgeConfig?.statusbarConfig;\n const isEdgeToEdgeApp = !!edgeToEdgeConfig?.isEdgeToEdgeApp;\n\n const Wrapper = isEdgeToEdgeApp ? View : SafeAreaView;\n return (\n <SafeAreaProvider>\n <SafeAreaInsetsContext.Consumer>\n {(insets = { top: 0, bottom: 0, left: 0, right: 0 }) => {\n this.statusbarInsets = insets;\n return <PaperProvider theme={this.paperTheme}>\n <React.Fragment>\n {Platform.OS === 'web' ? this.renderIconsViewSupportForWeb() : null}\n {this.getProviders(\n <ErrorBoundary currentPage={this.appConfig.currentPage}>\n <Wrapper style={{ flex: 1 }}>\n <StatusBar\n backgroundColor={isEdgeToEdgeApp?'transparent': undefined}\n translucent={isEdgeToEdgeApp}\n />\n <ThemeProvider value={this.appConfig.theme}>\n {this.renderIosStatusbarInsetsView(isEdgeToEdgeApp, insets)}\n <View style={{ flex: 1 }}>\n \n <View style={styles.container}>\n <GestureHandlerRootView style={styles.container}>\n <AppNavigator\n app={this}\n landingPage={(this.props as any).pageName}\n landingPageParams={(this.props as any)?.pageName && this.props}\n hideDrawer={this.appConfig.drawer?.getContent() === null}\n drawerContent={() => this.appConfig.drawer ? this.getProviders(this.appConfig.drawer.getContent()) : null}\n drawerAnimation={this.appConfig.drawer?.getAnimation()}></AppNavigator>\n <FixedViewContainer>\n {commonPartial}\n </FixedViewContainer>\n </GestureHandlerRootView>\n </View>\n {this.appConfig.url ?\n (<WmNetworkInfoToaster appLocale={this.appConfig.appLocale}></WmNetworkInfoToaster>)\n : null}\n {this.renderToasters()}\n {this.renderDialogs()}\n {this.renderDisplayManager()}\n </View>\n {/* edge-to-edge app with statusbar blur */}\n {isEdgeToEdgeApp && statusbarConfig?.type ==='blur' ? this.renderBlurView(\"top\",insets,statusbarConfig) : null}\n {/* edge-to-edge app with statusbar transparent/semi-transparent */} \n {isEdgeToEdgeApp && statusbarConfig?.type ==='transparent' ? this.renderTransparentView(\"top\",insets,statusbarConfig) : null} \n </ThemeProvider>\n </Wrapper>\n </ErrorBoundary>\n )}\n </React.Fragment>\n </PaperProvider>\n }\n }\n </SafeAreaInsetsContext.Consumer>\n </SafeAreaProvider>)\n\n }\n}\n\nconst styles = {\n container: {\n flex: 1\n },\n appModal: {\n position: 'absolute',\n width: '100%'\n },\n appModalContent: {\n flex: 1,\n width: '100%',\n alignItems: 'center',\n flexDirection: 'column',\n justifyContent: 'center'\n },\n centeredModal: {\n flex: 1,\n position: 'absolute',\n top: 0,\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.4)',\n height: '100%'\n },\n displayViewContainer: {\n position: 'absolute',\n justifyContent: 'center',\n width: '100%',\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n } as ViewStyle\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","axios","Platform","TouchableOpacity","View","StatusBar","GestureHandlerRootView","ProtoTypes","SafeAreaProvider","SafeAreaInsetsContext","SafeAreaView","DefaultTheme","Provider","PaperProvider","Linking","NativeModulesProxy","WebBrowser","get","last","RENDER_LOGGER","EventNotifier","ThemeProvider","StorageService","ConstantService","NetworkService","injector","formatters","deepCopy","isWebPreviewMode","Utils","ModalProvider","FixedViewContainer","ToastProvider","NavigationServiceProvider","PartialProvider","WmNetworkInfoToaster","ThemeVariables","WmMessage","Animatedview","AppI18nService","Watcher","preparePatch","AppDisplayManagerService","AppModalService","AppToastService","AppPartialService","AppSpinnerService","AppNavigator","SecurityProvider","CameraProvider","CameraService","ScanProvider","ScanService","AppSecurityService","getValidJSON","parseErrors","MaterialCommunityIconsFont","SplashScreen","WmMemo","VariableEvents","BlurView","NavigationBar","moment","ErrorBoundary","style","any","MIN_TIME_BETWEEN_REFRESH_CYCLES","DrawerImpl","constructor","onChange","_defineProperty","setContent","content","getContent","setAnimation","animation","getAnimation","SUPPORTED_SERVICES","CONSTANTS","i18nService","global","BaseApp","Component","props","ROOT","colors","primary","INSTANCE","primaryColor","refresh","preventAutoHideAsync","setTimeout","hideAsync","appConfig","app","drawer","setDefaultOptions","spinner","refreshAfterWait","baseUrl","url","wait","bindServiceInterceptors","complete","reload","debug","_this$commonPartial","_this$appConfig$curre","forceUpdate","commonPartial","currentPage","watcher","check","cleanup","push","notifier","subscribe","networkState","networkStatus","event","fn","eventNotifier","notify","args","activePage","Widgets","_this$commonPartial2","onBeforePageLeave","nextPage","goToPage","pageName","params","_this$appConfig$curre2","goBack","_this$appConfig$curre3","openUrl","_this$appConfig$curre4","onBeforeServiceCall","config","isSkeletonEnabled","loader","onServiceSuccess","data","response","onServiceError","errorMsg","error","invokeNativeApi","key","EmbedCommModule","OS","sendToNative","Promise","reject","triggerPageReady","activePageName","activePageScope","onPageReady","e","console","setTimezone","timezone","openBrowser","window","open","startsWith","target","openBrowserAsync","openURL","resolve","axiosInterceptorIds","interceptors","request","use","headers","log","_errorDetails","_errorDetails2","_error$response","_error$response2","_error$response3","_error$response4","errorDetails","errMsg","errors","message","includes","status","_this$appConfig$curre5","_this$appConfig$curre6","eval","failOnError","call","triggerStartUpVariables","all","startUpVariables","map","s","Variables","invoke","catch","componentDidMount","show","Object","values","v","BEFORE_INVOKE","AFTER_INVOKE","startUpActions","a","Actions","then","onAppVariablesReady","isStarted","componentWillUnmount","id","eject","forEach","getProviders","createElement","value","renderToasters","_this$appConfig","isEdgeToEdgeApp","edgeToEdgeConfig","toastsOpened","length","render","watch","refreshCount","Fragment","o","i","toasterStyles","_o$styles","_o$styles2","styles","top","undefined","_this$statusbarInsets","statusbarInsets","isButtonNavigationEnabled","bottom","_this$statusbarInsets2","theme","position","width","elevation","elevationIndex","zIndex","onPress","onClick","text","name","type","caption","hideclose","showclosebutton","onClose","closeToast","closeiconclass","renderDialogs","_last","modalsOpened","animatedRefs","modalOptions","onStartShouldSetResponder","onResponderEnd","isModal","hideModal","appModal","centered","centeredModal","modalStyle","entryanimation","delay","animationdelay","ref","animatedRef","appModalContent","contentStyle","alignItems","evt","stopPropagation","renderDisplayManager","displayOptions","displayViewContainer","renderIosStatusbarInsetsView","insets","backgroundColor","height","renderIconsViewSupportForWeb","getSelectedLocale","selectedLocale","importModule","service","getDependency","serviceName","renderBlurView","setPositionAsync","intensity","blurIntensity","tint","blurTint","experimentalBlurMethod","renderTransparentView","color","opacity","_this$statusbarInsets3","renderApp","_this$appConfig2","_this$appConfig3","autoUpdateVariables","_this$Variables$value","invokeOnParamChange","statusbarConfig","Wrapper","Consumer","left","right","_this$props","_this$appConfig$drawe","_this$appConfig$drawe2","paperTheme","flex","translucent","container","landingPage","landingPageParams","hideDrawer","drawerContent","drawerAnimation","appLocale","flexDirection","justifyContent"],"sources":["App.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport axios, { AxiosError, InternalAxiosRequestConfig, AxiosResponse } from 'axios';\nimport { Platform, TouchableOpacity, View, ViewStyle, StatusBar } from 'react-native';\nimport { GestureHandlerRootView } from 'react-native-gesture-handler';\nimport ProtoTypes from 'prop-types';\nimport { SafeAreaProvider, SafeAreaInsetsContext, SafeAreaView, EdgeInsets } from 'react-native-safe-area-context';\nimport { DefaultTheme, Provider as PaperProvider } from 'react-native-paper';\nimport { Linking } from 'react-native';\nimport { NativeModulesProxy } from 'expo-modules-core';\nimport * as WebBrowser from 'expo-web-browser';\nimport { get, last } from 'lodash';\nimport { RENDER_LOGGER } from '@wavemaker/app-rn-runtime/core/logger';\nimport EventNotifier from '@wavemaker/app-rn-runtime/core/event-notifier';\nimport { ThemeProvider } from '@wavemaker/app-rn-runtime/styles/theme';\nimport AppConfig, { Drawer } from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport StorageService from '@wavemaker/app-rn-runtime/core/storage.service';\nimport ConstantService from '@wavemaker/app-rn-runtime/core/constant.service';\nimport NetworkService, { NetworkState } from '@wavemaker/app-rn-runtime/core/network.service';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport formatters from '@wavemaker/app-rn-runtime/core/formatters';\nimport { deepCopy, isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\nimport * as Utils from '@wavemaker/app-rn-runtime/core/utils';\nimport { ModalProvider } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport { FixedViewContainer } from '@wavemaker/app-rn-runtime/core/fixed-view.component';\nimport { ToastProvider } from '@wavemaker/app-rn-runtime/core/toast.service';\nimport NavigationService, { NavigationServiceProvider } from '@wavemaker/app-rn-runtime/core/navigation.service';\nimport { PartialProvider } from '@wavemaker/app-rn-runtime/core/partial.service';\nimport WmNetworkInfoToaster from '@wavemaker/app-rn-runtime/components/advanced/network-info-toaster/network-info-toaster.component';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nimport WmMessage from '@wavemaker/app-rn-runtime/components/basic/message/message.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport AppI18nService from '@wavemaker/app-rn-runtime/runtime/services/app-i18n.service';\n\nimport { Watcher } from './watcher';\nimport { preparePatch } from './lib-patch';\nimport AppDisplayManagerService from './services/app-display-manager.service';\nimport AppModalService from './services/app-modal.service';\nimport AppToastService from './services/app-toast.service';\nimport AppPartialService from './services/partial.service';\nimport AppSpinnerService from './services/app-spinner.service';\nimport { AppNavigator } from './App.navigator';\nimport { SecurityProvider } from '../core/security.service';\nimport { CameraProvider } from '../core/device/camera-service';\nimport CameraService from './services/device/camera-service';\nimport { ScanProvider } from '../core/device/scan-service';\nimport ScanService from './services/device/scan-service';\nimport AppSecurityService from './services/app-security.service';\nimport { getValidJSON, parseErrors } from '@wavemaker/app-rn-runtime/variables/utils/variable.utils';\nimport MaterialCommunityIconsFont from '@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf';\n\nimport * as SplashScreen from 'expo-splash-screen';\nimport BasePartial from './base-partial.component';\nimport BasePage from './base-page.component';\nimport { WmMemo } from './memo.component';\nimport { BaseVariable, VariableEvents } from '../variables/base-variable';\nimport { BlurView } from 'expo-blur';\nimport * as NavigationBar from 'expo-navigation-bar';\nimport moment, { Moment } from 'moment';\nimport ErrorBoundary from '../core/error-boundary.component';\n\ndeclare const window: any;\n\n//some old react libraries need this\n((View as any)['propTypes'] = { style: ProtoTypes.any })\n\nconst MIN_TIME_BETWEEN_REFRESH_CYCLES = 200;\n\nclass DrawerImpl implements Drawer {\n content: ReactNode;\n animation: string = 'slide-in';\n\n constructor(private onChange: () => void) {\n\n }\n\n setContent(content: ReactNode) {\n this.content = content;\n this.onChange();\n }\n\n getContent() {\n return this.content;\n }\n\n setAnimation(animation: string) {\n this.animation = animation;\n this.onChange();\n }\n\n getAnimation() {\n return this.animation;\n }\n}\nconst SUPPORTED_SERVICES = {\n Utils: Utils,\n CONSTANTS: ConstantService,\n StorageService: StorageService,\n AppDisplayManagerService: AppDisplayManagerService,\n i18nService: AppI18nService\n};\n(global as any)['axios'] = axios;\nexport default abstract class BaseApp extends React.Component implements NavigationService {\n\n Actions: any = {};\n Variables: any = {};\n onAppVariablesReady = () => { };\n isStarted = false;\n appConfig = injector.get<AppConfig>('APP_CONFIG');\n private eventNotifier = new EventNotifier();\n public baseUrl = '';\n public targetPlatform = 'NATIVE_MOBILE';\n public cleanup = [] as Function[];\n public commonPartial: BasePartial = null as any;\n private startUpVariables: string[] = [];\n private startUpActions: string[] = [];\n private autoUpdateVariables: string[] = [];\n private axiosInterceptorIds: number[] = [];\n public formatters = formatters;\n public serviceDefinitions = {} as any;\n private animatedRef: any;\n public modalsOpened: number = 0;\n public toastsOpened: number = 0;\n public watcher: Watcher = Watcher.ROOT;\n public paperTheme = {\n ...DefaultTheme,\n colors: {\n ...DefaultTheme.colors,\n primary: ThemeVariables.INSTANCE.primaryColor\n }\n };\n public lib = preparePatch(() => {\n this.refresh();\n });\n\n public networkStatus = {} as NetworkState;\n public statusbarInsets: any;\n\n constructor(props: any) {\n super(props);\n SplashScreen.preventAutoHideAsync();\n setTimeout(() => SplashScreen.hideAsync(), 10000);\n this.appConfig.app = this;\n this.appConfig.drawer = new DrawerImpl(() => this.refresh());\n AppSpinnerService.setDefaultOptions({\n spinner: this.appConfig.spinner\n });\n let refreshAfterWait = false;\n this.baseUrl = this.appConfig.url;\n let wait = 0;\n this.bindServiceInterceptors();\n this.appConfig.refresh = (complete = false) => {\n if (complete) {\n this.reload();\n return;\n }\n if (!wait) {\n RENDER_LOGGER.debug('refreshing the app...');\n wait = MIN_TIME_BETWEEN_REFRESH_CYCLES;\n refreshAfterWait = false;\n setTimeout(() => {\n this.forceUpdate();\n this.commonPartial?.forceUpdate();\n this.appConfig.currentPage?.forceUpdate();\n this.watcher.check();\n });\n setTimeout(() => {\n wait = 0;\n refreshAfterWait && this.appConfig.refresh();\n }, wait);\n } else {\n RENDER_LOGGER.debug('will refresh the app in the next cycle.');\n refreshAfterWait = true;\n }\n }\n this.cleanup.push(\n NetworkService.notifier.subscribe('onNetworkStateChange', (networkState: NetworkState) => {\n this.networkStatus = { ...networkState };\n this.refresh();\n }\n ));\n }\n\n subscribe(event: string, fn: Function) {\n return this.eventNotifier.subscribe(event, fn);\n }\n\n notify(event: string, ...args: any) {\n return this.eventNotifier.notify(event, args);\n }\n\n get activePage() {\n return this.appConfig.currentPage;\n }\n\n get Widgets() {\n return this.commonPartial?.Widgets;\n }\n\n async onBeforePageLeave(currentPage: string, nextPage: string) {\n //method can be override by the user from studio;\n return true;\n }\n\n goToPage(pageName: string, params: any) {\n return this.appConfig.currentPage?.goToPage(pageName, params);\n }\n\n goBack(pageName: string, params: any) {\n return this.appConfig.currentPage?.goBack(pageName, params);\n }\n\n openUrl(url: string, params?: any) {\n return this.appConfig.currentPage?.openUrl(url, params);\n }\n\n onBeforeServiceCall(config: InternalAxiosRequestConfig) {\n //DO NOT WRITE CODE HERE:\n //This is a placeholder for the WaveMaker developer.\n return config;\n }\n\n isSkeletonEnabled() {\n return this.appConfig.spinner.loader == \"skeleton\";\n }\n\n onServiceSuccess(data: any, response: AxiosResponse) {\n //DO NOT WRITE CODE HERE:\n //This is a placeholder for the WaveMaker developer.\n }\n\n onServiceError(errorMsg: any, error: AxiosError<any>) {\n //DO NOT WRITE CODE HERE:\n //This is a placeholder for the WaveMaker developer.\n }\n\n invokeNativeApi(key: string, data: Object) {\n if (NativeModulesProxy.EmbedCommModule\n && (Platform.OS === 'android' || Platform.OS === 'ios')) {\n return NativeModulesProxy.EmbedCommModule.sendToNative(key, data || {});\n } else {\n return Promise.reject('Not able to invoke Native API in this platform.');\n }\n }\n\n triggerPageReady(activePageName: string, activePageScope: BasePage) {\n try {\n this.onPageReady(activePageName, activePageScope);\n } catch (e) {\n console.error(e);\n }\n }\n\n onPageReady(activePageName: string, activePageScope: BasePage) {\n\n }\n\n setTimezone(timezone: any) {\n AppI18nService.setTimezone(timezone);\n }\n\n get spinner() {\n return AppSpinnerService;\n }\n\n openBrowser(url: string, params = {} as any) {\n if (url) {\n if (isWebPreviewMode()) {\n window.open(url, '_blank');\n } else if (url.startsWith('http') && params.target === '_blank') {\n WebBrowser.openBrowserAsync(url);\n } else {\n return Linking.openURL(url);\n }\n }\n return Promise.resolve();\n }\n\n // To support old api\n reload() { }\n\n bindServiceInterceptors() {\n this.axiosInterceptorIds = [\n axios.interceptors.request.use((config: InternalAxiosRequestConfig) => {\n const url = config.url as string;\n if (!(url.startsWith('http://') || url.startsWith(\"https://\"))) {\n config.url = this.appConfig.url + '/' + url;\n }\n config.headers = config.headers || {};\n config.headers['X-Requested-With'] = 'XMLHttpRequest';\n console.log('onBeforeService call invoked on ' + config.url);\n this.notify('beforeServiceCall', config);\n return this.onBeforeServiceCall(config);\n }),\n axios.interceptors.response.use(\n (response: AxiosResponse) => {\n this.onServiceSuccess(response.data, response);\n this.notify('afterServiceCall', response.config, response);\n return response;\n }, (error: AxiosError<any>) => {\n let errorDetails: any = error.response, errMsg;\n errorDetails = getValidJSON(errorDetails?.data) || errorDetails?.data;\n if (errorDetails && errorDetails.errors) {\n errMsg = parseErrors(errorDetails.errors) || \"Service Call Failed\";\n } else {\n errMsg = error.message || \"Service Call Failed\";\n }\n error.message = errMsg;\n console.error(`Error ${errMsg} recieved from ${error.response?.config?.url}`);\n this.onServiceError(error.message, error);\n if (error.response?.config.url?.startsWith(this.appConfig.url) && !error.response?.config.url?.includes('/services/') && error.response?.status === 401) {\n this.appConfig.currentPage?.pageName !== 'Login' && this.appConfig.currentPage?.goToPage('Login');\n }\n this.notify('afterServiceCall', error.config, error);\n return Promise.reject(error)\n })\n ];\n }\n\n eval(fn: Function, failOnError = false) {\n try {\n return fn.call(this);\n } catch (e) {\n if (failOnError) {\n throw e;\n } else {\n return null;\n }\n }\n }\n\n triggerStartUpVariables() {\n return Promise.all(this.startUpVariables.map(s => this.Variables[s] && this.Variables[s].invoke()))\n .catch(() => { });\n }\n\n componentDidMount() {\n AppSpinnerService.show({\n spinner: this.appConfig.spinner\n });\n this.cleanup.push(...Object.values(this.Variables).map((v: any) => {\n return v.subscribe(VariableEvents.BEFORE_INVOKE, () => {\n this.notify(VariableEvents.BEFORE_INVOKE, v);\n });\n }));\n this.cleanup.push(...Object.values(this.Variables).map((v: any) => {\n return v.subscribe(VariableEvents.AFTER_INVOKE, () => {\n this.notify(VariableEvents.AFTER_INVOKE, v);\n });\n }));\n this.startUpActions.map(a => this.Actions[a] && this.Actions[a].invoke());\n return this.triggerStartUpVariables()\n .then(() => {\n this.onAppVariablesReady();\n this.isStarted = true;\n this.forceUpdate();\n }, () => { });\n }\n\n componentWillUnmount(): void {\n this.axiosInterceptorIds.map(id => {\n axios.interceptors.request.eject(id);\n });\n this.cleanup.forEach(fn => fn());\n }\n\n refresh() {\n this.appConfig.refresh();\n }\n\n getProviders(content: React.ReactNode) {\n return (\n <NavigationServiceProvider value={this}>\n <ToastProvider value={AppToastService}>\n <PartialProvider value={AppPartialService}>\n <SecurityProvider value={AppSecurityService}>\n <CameraProvider value={CameraService}>\n <ScanProvider value={ScanService}>\n <ModalProvider value={AppModalService}>\n {content}\n </ModalProvider>\n </ScanProvider>\n </CameraProvider>\n </SecurityProvider>\n </PartialProvider>\n </ToastProvider>\n </NavigationServiceProvider>\n );\n }\n\n renderToasters() {\n const isEdgeToEdgeApp = !!this.appConfig?.edgeToEdgeConfig?.isEdgeToEdgeApp;\n this.toastsOpened = AppToastService.toastsOpened.length;\n return <WmMemo watcher={this.watcher} render={(watch) => {\n watch(() => AppToastService.refreshCount);\n return (\n <>\n {AppToastService.toastsOpened.map((o, i) => {\n // to align the toaster position if it's an edge-to-edge app.\n let toasterStyles = {};\n if (isEdgeToEdgeApp) {\n if (o.styles?.top !== undefined) {\n toasterStyles = { top: this.statusbarInsets?.top };\n } else if (this.isButtonNavigationEnabled() && o.styles?.bottom !== undefined) {\n toasterStyles = { bottom: this.statusbarInsets?.bottom };\n }\n }\n \n return this.getProviders((\n <ThemeProvider value={this.appConfig.theme}>\n <View key={i} style={[{\n position: 'absolute',\n width: '100%',\n bottom: 0,\n elevation: o.elevationIndex,\n zIndex: o.elevationIndex\n }, o.styles,toasterStyles]}>\n <TouchableOpacity onPress={() => o.onClick && o.onClick()}>\n {o.content}\n {o.text && <WmMessage name={\"message\" + i} type={o.type} caption={o.text} hideclose={!o.showclosebutton} onClose={o.closeToast} closeiconclass={o.closeiconclass}></WmMessage>}\n </TouchableOpacity>\n </View>\n </ThemeProvider>\n )\n )\n })}\n </>);\n }} />;\n }\n\n renderDialogs(): ReactNode {\n return <WmMemo watcher={this.watcher} render={(watch) => {\n watch(() => last(AppModalService.modalsOpened)?.content);\n this.modalsOpened = AppModalService.modalsOpened.length;\n AppModalService.animatedRefs.length = 0;\n return (\n <>\n {AppModalService.modalOptions.content &&\n AppModalService.modalsOpened.map((o, i) => {\n return (\n <View key={(o.name || '') + i}\n onStartShouldSetResponder={() => true}\n onResponderEnd={() => o.isModal && AppModalService.hideModal(o)}\n style={deepCopy(styles.appModal,\n o.centered ? styles.centeredModal : null,\n o.modalStyle,\n {\n elevation: o.elevationIndex,\n zIndex: o.elevationIndex\n })}>\n <Animatedview entryanimation={o.animation || 'fadeIn'} delay={o.animationdelay}\n ref={ref => {\n this.animatedRef = ref;\n AppModalService.animatedRefs[i] = ref;\n }}\n style={[styles.appModalContent, o.contentStyle]}>\n <GestureHandlerRootView style={{ width: '100%', alignItems: 'center' }}>\n <View\n onStartShouldSetResponder={evt => true}\n onResponderEnd={(e) => e.stopPropagation()}\n style={{ width: '100%', alignItems: 'center' }}>\n {this.getProviders(o.content)}\n </View>\n </GestureHandlerRootView>\n </Animatedview>\n </View>\n )\n }\n )\n }\n </>);\n }} />;\n }\n\n renderDisplayManager(): ReactNode {\n return <WmMemo watcher={this.watcher} render={(watch) => {\n watch(() => AppDisplayManagerService.displayOptions.content);\n return AppDisplayManagerService.displayOptions.content\n ? (\n <ThemeProvider value={this.appConfig.theme}>\n <View style={[styles.displayViewContainer, {\n elevation: this.toastsOpened + this.modalsOpened + 1,\n zIndex: this.toastsOpened + this.modalsOpened + 1\n }]}>\n {AppDisplayManagerService.displayOptions.content}\n </View>\n </ThemeProvider>) : null;\n }} />\n }\n\n renderIosStatusbarInsetsView(isEdgeToEdgeApp: boolean, insets: EdgeInsets | null){\n return Platform.OS == 'ios' && !isEdgeToEdgeApp ? (\n <View style={{\n backgroundColor: 'white', \n position: 'absolute',\n top: 0, \n height: insets?.top || 0,\n width: '100%',\n zIndex: 9\n }}></View>\n ) : <></>\n }\n\n renderIconsViewSupportForWeb() {\n try {\n return (<style type=\"text/css\">{`\n @font-face {\n font-family: 'MaterialCommunityIcons';\n src: url(${MaterialCommunityIconsFont}) format('truetype');\n }\n `}</style>);\n } catch (e) {\n console.log('require react-native-vector-icons could not be loaded.');\n }\n return null;\n }\n\n getSelectedLocale() {\n return this.appConfig.selectedLocale;\n }\n\n importModule(service?: string){\n if(service == \"moment\"){\n return moment;\n }\n return undefined;\n }\n \n getDependency(serviceName: string): any {\n const service = get(SUPPORTED_SERVICES, serviceName);\n if (service) {\n return service;\n }\n }\n\n renderBlurView(position: 'top' | 'bottom', insets: any, config:any) {\n if (!insets?.[position]) return null;\n \n if (Platform.OS === \"android\") {\n NavigationBar.setPositionAsync('absolute');\n }\n \n return (\n <BlurView\n intensity={config?.blurIntensity || 30}\n tint={config.blurTint || \"dark\"}\n experimentalBlurMethod=\"dimezisBlurView\"\n style={{\n [position]: 0,\n height: insets[position],\n width: '100%',\n position: 'absolute',\n zIndex: 999,\n }}\n />\n );\n }\n\n renderTransparentView(position: 'top' | 'bottom', insets: any, config:any) {\n if (!insets?.[position]) return null;\n \n if (Platform.OS === \"android\") {\n NavigationBar.setPositionAsync('absolute');\n }\n \n return (\n <View\n style={{\n [position]: 0,\n height: insets[position],\n width: '100%',\n position: 'absolute',\n zIndex: 999,\n backgroundColor: config?.color || 'transparent',\n opacity: (config?.opacity/100) || 0,\n }}\n ></View>\n );\n }\n\n isButtonNavigationEnabled(){\n if(Platform.OS ===\"android\" && this.statusbarInsets?.bottom > 40){\n return true\n }\n return false;\n }\n\n renderApp(commonPartial: React.ReactNode) {\n this.autoUpdateVariables.forEach(value => this.Variables[value]?.invokeOnParamChange());\n const edgeToEdgeConfig = this.appConfig?.edgeToEdgeConfig;\n const statusbarConfig = this.appConfig?.edgeToEdgeConfig?.statusbarConfig;\n const isEdgeToEdgeApp = !!edgeToEdgeConfig?.isEdgeToEdgeApp;\n\n const Wrapper = isEdgeToEdgeApp ? View : SafeAreaView;\n return (\n <SafeAreaProvider>\n <SafeAreaInsetsContext.Consumer>\n {(insets = { top: 0, bottom: 0, left: 0, right: 0 }) => {\n this.statusbarInsets = insets;\n return <PaperProvider theme={this.paperTheme}>\n <React.Fragment>\n {Platform.OS === 'web' ? this.renderIconsViewSupportForWeb() : null}\n {this.getProviders(\n <Wrapper style={{ flex: 1 }}>\n <StatusBar\n backgroundColor={isEdgeToEdgeApp?'transparent': undefined}\n translucent={isEdgeToEdgeApp}\n />\n <ThemeProvider value={this.appConfig.theme}>\n <ErrorBoundary currentPage={this.appConfig.currentPage}>\n {this.renderIosStatusbarInsetsView(isEdgeToEdgeApp, insets)}\n <View style={{ flex: 1 }}>\n <View style={styles.container}>\n <GestureHandlerRootView style={styles.container}>\n <AppNavigator\n app={this}\n landingPage={(this.props as any).pageName}\n landingPageParams={(this.props as any)?.pageName && this.props}\n hideDrawer={this.appConfig.drawer?.getContent() === null}\n drawerContent={() => this.appConfig.drawer ? this.getProviders(this.appConfig.drawer.getContent()) : null}\n drawerAnimation={this.appConfig.drawer?.getAnimation()}></AppNavigator>\n <FixedViewContainer>\n {commonPartial}\n </FixedViewContainer>\n </GestureHandlerRootView>\n </View>\n {this.appConfig.url ?\n (<WmNetworkInfoToaster appLocale={this.appConfig.appLocale}></WmNetworkInfoToaster>)\n : null}\n {this.renderToasters()}\n {this.renderDialogs()}\n {this.renderDisplayManager()}\n </View>\n {/* edge-to-edge app with statusbar blur */}\n {isEdgeToEdgeApp && statusbarConfig?.type ==='blur' ? this.renderBlurView(\"top\",insets,statusbarConfig) : null}\n {/* edge-to-edge app with statusbar transparent/semi-transparent */} \n {isEdgeToEdgeApp && statusbarConfig?.type ==='transparent' ? this.renderTransparentView(\"top\",insets,statusbarConfig) : null} \n </ErrorBoundary>\n </ThemeProvider>\n </Wrapper>\n )}\n </React.Fragment>\n </PaperProvider>\n }\n }\n </SafeAreaInsetsContext.Consumer>\n </SafeAreaProvider>)\n\n }\n}\n\nconst styles = {\n container: {\n flex: 1\n },\n appModal: {\n position: 'absolute',\n width: '100%'\n },\n appModalContent: {\n flex: 1,\n width: '100%',\n alignItems: 'center',\n flexDirection: 'column',\n justifyContent: 'center'\n },\n centeredModal: {\n flex: 1,\n position: 'absolute',\n top: 0,\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.4)',\n height: '100%'\n },\n displayViewContainer: {\n position: 'absolute',\n justifyContent: 'center',\n width: '100%',\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n } as ViewStyle\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,3 @@
1
- import * as Calendar from 'expo-calendar';
2
- import permissionManager from '@wavemaker/app-rn-runtime/runtime/services/device/permissions';
3
1
  import { getDateObj } from '@wavemaker/app-rn-runtime/variables/device/calendar/create-event.operation';
4
2
  const DEFAULT_TIME = new Date().getTime();
5
3
  const DELTA_VALUE_DATE = 3 * 30 * 24 * 60 * 60 * 1000;
@@ -9,7 +7,9 @@ export class CalendarService {
9
7
  constructor() {}
10
8
  getEvents(params) {
11
9
  return new Promise((resolve, reject) => {
12
- permissionManager.requestPermissions('calendar').then(() => {
10
+ var _params$permissionSer;
11
+ (params === null || params === void 0 || (_params$permissionSer = params.permissionService) === null || _params$permissionSer === void 0 ? void 0 : _params$permissionSer.requestPermissions) && params.permissionService.requestPermissions('calendar').then(() => {
12
+ const Calendar = params === null || params === void 0 ? void 0 : params.calendarPluginService;
13
13
  return Calendar.getCalendarsAsync().then(result => {
14
14
  let calendarIds = [];
15
15
  result.forEach(c => calendarIds.push(c.id));
@@ -43,7 +43,9 @@ export class CalendarService {
43
43
  endDate: getDateObj(params.eventEnd) || DEFAULT_END_DATE
44
44
  };
45
45
  return new Promise((resolve, reject) => {
46
- permissionManager.requestPermissions('calendar').then(() => {
46
+ var _params$permissionSer2;
47
+ (params === null || params === void 0 || (_params$permissionSer2 = params.permissionService) === null || _params$permissionSer2 === void 0 ? void 0 : _params$permissionSer2.requestPermissions) && params.permissionService.requestPermissions('calendar').then(() => {
48
+ const Calendar = params === null || params === void 0 ? void 0 : params.calendarPluginService;
47
49
  return Calendar.getCalendarsAsync().then(result => {
48
50
  let calendarIds = [];
49
51
  result.forEach(c => {
@@ -64,7 +66,9 @@ export class CalendarService {
64
66
  }
65
67
  deleteEvent(params) {
66
68
  return new Promise((resolve, reject) => {
67
- permissionManager.requestPermissions('calendar').then(() => {
69
+ var _params$permissionSer3;
70
+ (params === null || params === void 0 || (_params$permissionSer3 = params.permissionService) === null || _params$permissionSer3 === void 0 ? void 0 : _params$permissionSer3.requestPermissions) && params.permissionService.requestPermissions('calendar').then(() => {
71
+ const Calendar = params === null || params === void 0 ? void 0 : params.calendarPluginService;
68
72
  return Calendar.getCalendarsAsync().then(result => {
69
73
  let calendarIds = [];
70
74
  result.forEach(c => {
@@ -1 +1 @@
1
- {"version":3,"names":["Calendar","permissionManager","getDateObj","DEFAULT_TIME","Date","getTime","DELTA_VALUE_DATE","DEFAULT_START_DATE","DEFAULT_END_DATE","CalendarService","constructor","getEvents","params","Promise","resolve","reject","requestPermissions","then","getCalendarsAsync","result","calendarIds","forEach","c","push","id","getEventsAsync","eventStart","eventEnd","res","filteredResult","eventTitle","eventLocation","eventNotes","filter","event","title","location","notes","events","e","message","startDate","endDate","createEvent","eventMetadata","allowsModifications","createEventAsync","dataValue","deleteEvent","all","map","deleteEventAsync"],"sources":["calendar-service.ts"],"sourcesContent":["import * as Calendar from 'expo-calendar';\nimport permissionManager from '@wavemaker/app-rn-runtime/runtime/services/device/permissions';\nimport { CalendarInput } from '@wavemaker/app-rn-runtime/core/device/calendar-service';\nimport { CalendarEvent } from '@wavemaker/app-rn-runtime/variables/device/calendar/get-events.operation';\nimport {\n CreateEventOutput,\n getDateObj\n} from '@wavemaker/app-rn-runtime/variables/device/calendar/create-event.operation';\nimport { DeleteEventOutput } from '@wavemaker/app-rn-runtime/variables/device/calendar/delete-event.operation';\n\nconst DEFAULT_TIME = new Date().getTime();\nconst DELTA_VALUE_DATE = 3 * 30 * 24 * 60 * 60 * 1000;\nconst DEFAULT_START_DATE = new Date(DEFAULT_TIME - DELTA_VALUE_DATE);\nconst DEFAULT_END_DATE = new Date(DEFAULT_TIME + DELTA_VALUE_DATE);\n\nexport class CalendarService {\n\n constructor() {}\n\n public getEvents(params: CalendarInput): Promise<Array<CalendarEvent>> {\n return new Promise((resolve, reject) => {\n permissionManager.requestPermissions('calendar').then(() => {\n return Calendar.getCalendarsAsync().then(result => {\n let calendarIds: Array<string> = [];\n result.forEach(c => calendarIds.push(c.id));\n Calendar.getEventsAsync(calendarIds, params.eventStart || DEFAULT_START_DATE, params.eventEnd || DEFAULT_END_DATE)\n .then(res => {\n let filteredResult = res;\n if (params.eventTitle || params.eventLocation || params.eventNotes) {\n filteredResult = res.filter(event => event.title === params.eventTitle || event.location === params.eventLocation || event.notes === params.eventNotes);\n }\n let events: Array<CalendarEvent> = [];\n filteredResult.forEach(e => {\n events.push({\n title: e.title,\n message: e.notes,\n location: e.location,\n startDate: e.startDate,\n endDate: e.endDate\n })\n });\n return resolve(events);\n })\n })\n }, reject);\n });\n }\n\n\n public createEvent(params: CalendarInput): Promise<CreateEventOutput> {\n const eventMetadata = {\n title: params.eventTitle,\n location: params.eventLocation,\n notes: params.eventNotes,\n startDate: getDateObj(params.eventStart) || DEFAULT_START_DATE,\n endDate: getDateObj(params.eventEnd) || DEFAULT_END_DATE\n };\n\n return new Promise((resolve, reject) => {\n permissionManager.requestPermissions('calendar').then(() => {\n return Calendar.getCalendarsAsync().then(result => {\n let calendarIds: Array<string> = [];\n result.forEach(c => {\n if (c.allowsModifications) {\n calendarIds.push(c.id);\n }\n });\n // createEventAsync has calendarId as required parameter. Need to expose ownerAccount as filter field in studio. Right now passing calendar index as zero.\n return Calendar.createEventAsync(calendarIds[0], eventMetadata).then(res => {\n const event = {\n dataValue: res\n };\n return resolve(event);\n })\n }, reject);\n });\n });\n }\n\n\n public deleteEvent(params: CalendarInput): Promise<DeleteEventOutput> {\n\n return new Promise((resolve, reject) => {\n permissionManager.requestPermissions('calendar').then(() => {\n return Calendar.getCalendarsAsync().then(result => {\n let calendarIds: Array<string> = [];\n result.forEach(c => {\n if (c.allowsModifications) {\n calendarIds.push(c.id);\n }\n });\n Calendar.getEventsAsync(calendarIds, params.eventStart || DEFAULT_START_DATE, params.eventEnd || DEFAULT_END_DATE)\n .then((res) => {\n const filteredResult = res.filter(event => event.title === params.eventTitle || event.location === params.eventLocation\n || event.notes === params.eventNotes);\n Promise.all(\n filteredResult.map((event) => { Calendar.deleteEventAsync(event.id)}))\n .then(res => {\n const event = {\n dataValue: true\n }\n return resolve(event);\n })\n })\n }, reject);\n });\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["getDateObj","DEFAULT_TIME","Date","getTime","DELTA_VALUE_DATE","DEFAULT_START_DATE","DEFAULT_END_DATE","CalendarService","constructor","getEvents","params","Promise","resolve","reject","_params$permissionSer","permissionService","requestPermissions","then","Calendar","calendarPluginService","getCalendarsAsync","result","calendarIds","forEach","c","push","id","getEventsAsync","eventStart","eventEnd","res","filteredResult","eventTitle","eventLocation","eventNotes","filter","event","title","location","notes","events","e","message","startDate","endDate","createEvent","eventMetadata","_params$permissionSer2","allowsModifications","createEventAsync","dataValue","deleteEvent","_params$permissionSer3","all","map","deleteEventAsync"],"sources":["calendar-service.ts"],"sourcesContent":["import { CalendarInput } from '@wavemaker/app-rn-runtime/core/device/calendar-service';\nimport { CalendarEvent } from '@wavemaker/app-rn-runtime/variables/device/calendar/get-events.operation';\nimport {\n CreateEventOutput,\n getDateObj\n} from '@wavemaker/app-rn-runtime/variables/device/calendar/create-event.operation';\nimport { DeleteEventOutput } from '@wavemaker/app-rn-runtime/variables/device/calendar/delete-event.operation';\n\nconst DEFAULT_TIME = new Date().getTime();\nconst DELTA_VALUE_DATE = 3 * 30 * 24 * 60 * 60 * 1000;\nconst DEFAULT_START_DATE = new Date(DEFAULT_TIME - DELTA_VALUE_DATE);\nconst DEFAULT_END_DATE = new Date(DEFAULT_TIME + DELTA_VALUE_DATE);\n\nexport class CalendarService {\n\n constructor() {}\n\n public getEvents(params: CalendarInput): Promise<Array<CalendarEvent>> {\n return new Promise((resolve, reject) => {\n params?.permissionService?.requestPermissions && params.permissionService.requestPermissions('calendar').then(() => {\n const Calendar = params?.calendarPluginService;\n return Calendar.getCalendarsAsync().then((result: any) => {\n let calendarIds: Array<string> = [];\n result.forEach((c: any) => calendarIds.push(c.id));\n Calendar.getEventsAsync(calendarIds, params.eventStart || DEFAULT_START_DATE, params.eventEnd || DEFAULT_END_DATE)\n .then((res: any) => {\n let filteredResult = res;\n if (params.eventTitle || params.eventLocation || params.eventNotes) {\n filteredResult = res.filter((event: any) => event.title === params.eventTitle || event.location === params.eventLocation || event.notes === params.eventNotes);\n }\n let events: Array<CalendarEvent> = [];\n filteredResult.forEach((e: any) => {\n events.push({\n title: e.title,\n message: e.notes,\n location: e.location,\n startDate: e.startDate,\n endDate: e.endDate\n })\n });\n return resolve(events);\n })\n })\n }, reject);\n });\n }\n\n\n public createEvent(params: CalendarInput): Promise<CreateEventOutput> {\n const eventMetadata = {\n title: params.eventTitle,\n location: params.eventLocation,\n notes: params.eventNotes,\n startDate: getDateObj(params.eventStart) || DEFAULT_START_DATE,\n endDate: getDateObj(params.eventEnd) || DEFAULT_END_DATE\n };\n\n return new Promise((resolve, reject) => {\n params?.permissionService?.requestPermissions && params.permissionService.requestPermissions('calendar').then(() => {\n const Calendar = params?.calendarPluginService;\n return Calendar.getCalendarsAsync().then((result: any) => {\n let calendarIds: Array<string> = [];\n result.forEach((c: any) => {\n if (c.allowsModifications) {\n calendarIds.push(c.id);\n }\n });\n // createEventAsync has calendarId as required parameter. Need to expose ownerAccount as filter field in studio. Right now passing calendar index as zero.\n return Calendar.createEventAsync(calendarIds[0], eventMetadata).then((res: any) => {\n const event = {\n dataValue: res\n };\n return resolve(event);\n })\n }, reject);\n });\n });\n }\n\n\n public deleteEvent(params: CalendarInput): Promise<DeleteEventOutput> {\n\n return new Promise((resolve, reject) => {\n params?.permissionService?.requestPermissions && params.permissionService.requestPermissions('calendar').then(() => {\n const Calendar = params?.calendarPluginService;\n return Calendar.getCalendarsAsync().then((result: any) => {\n let calendarIds: Array<string> = [];\n result.forEach((c: any) => {\n if (c.allowsModifications) {\n calendarIds.push(c.id);\n }\n });\n Calendar.getEventsAsync(calendarIds, params.eventStart || DEFAULT_START_DATE, params.eventEnd || DEFAULT_END_DATE)\n .then((res: any) => {\n const filteredResult = res.filter((event: any) => event.title === params.eventTitle || event.location === params.eventLocation\n || event.notes === params.eventNotes);\n Promise.all(\n filteredResult.map((event: any) => { Calendar.deleteEventAsync(event.id)}))\n .then(res => {\n const event = {\n dataValue: true\n }\n return resolve(event);\n })\n })\n }, reject);\n });\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -5,10 +5,7 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
5
5
  import React from "react";
6
6
  import { ImageBackground, Platform, TouchableOpacity, View } from "react-native";
7
7
  import { Ionicons } from "@expo/vector-icons";
8
- import { ResizeMode, Video } from "expo-av";
9
- import { CameraView } from "expo-camera";
10
- import * as FileSystem from "expo-file-system";
11
- import permissionManager from '@wavemaker/app-rn-runtime/runtime/services/device/permissions';
8
+ import { CameraPluginConsumer } from "@wavemaker/app-rn-runtime/core/device/camera-service";
12
9
  import appDisplayManagerService from "@wavemaker/app-rn-runtime/runtime/services/app-display-manager.service";
13
10
  const styles = {
14
11
  preview: {
@@ -70,14 +67,27 @@ const styles = {
70
67
  backgroundColor: 'red'
71
68
  }
72
69
  };
70
+ let ICamera = null;
71
+ var ResizeMode = /*#__PURE__*/function (ResizeMode) {
72
+ ResizeMode["CONTAIN"] = "contain";
73
+ ResizeMode["COVER"] = "cover";
74
+ ResizeMode["STRETCH"] = "stretch";
75
+ return ResizeMode;
76
+ }(ResizeMode || {});
77
+ var CameraType = /*#__PURE__*/function (CameraType) {
78
+ CameraType["front"] = "front";
79
+ CameraType["back"] = "back";
80
+ return CameraType;
81
+ }(CameraType || {});
73
82
  export class CameraService {
74
83
  constructor(displayManager) {
75
84
  this.displayManager = displayManager;
76
- _defineProperty(this, "type", "back");
85
+ _defineProperty(this, "type", CameraType.back);
77
86
  }
78
87
  captureVideo(options) {
79
88
  return new Promise((resolve, reject) => {
80
- permissionManager.requestPermissions('video').then(() => {
89
+ var _options$permissionSe;
90
+ (options === null || options === void 0 || (_options$permissionSe = options.permissionService) === null || _options$permissionSe === void 0 ? void 0 : _options$permissionSe.requestPermissions) && options.permissionService.requestPermissions('video').then(() => {
81
91
  const destroy = this.displayManager.show({
82
92
  content: /*#__PURE__*/React.createElement(Camera, {
83
93
  testID: "camera_view",
@@ -103,7 +113,8 @@ export class CameraService {
103
113
  }
104
114
  captureImage(params) {
105
115
  return new Promise((resolve, reject) => {
106
- permissionManager.requestPermissions('image').then(() => {
116
+ var _params$permissionSer;
117
+ (params === null || params === void 0 || (_params$permissionSer = params.permissionService) === null || _params$permissionSer === void 0 ? void 0 : _params$permissionSer.requestPermissions) && params.permissionService.requestPermissions('image').then(() => {
107
118
  const destroy = this.displayManager.show({
108
119
  content: /*#__PURE__*/React.createElement(Camera, {
109
120
  testID: "camera_view",
@@ -140,7 +151,7 @@ class CameraViewState {
140
151
  constructor() {
141
152
  _defineProperty(this, "recording", false);
142
153
  _defineProperty(this, "showActionBtns", false);
143
- _defineProperty(this, "cameraType", 'back');
154
+ _defineProperty(this, "cameraType", CameraType.back);
144
155
  _defineProperty(this, "isCaptured", false);
145
156
  _defineProperty(this, "closeView", false);
146
157
  _defineProperty(this, "cameraContent", {});
@@ -149,12 +160,13 @@ class CameraViewState {
149
160
  export class Camera extends React.Component {
150
161
  constructor(props) {
151
162
  super(props);
163
+ _defineProperty(this, "cameraService", null);
152
164
  _defineProperty(this, "camera", {});
153
165
  // start recording
154
166
  _defineProperty(this, "startRecord", async () => {
155
167
  this.camera.recordAsync().then(response => {
156
168
  response.content = async () => {
157
- return await FileSystem.readAsStringAsync(response.uri, {
169
+ return await this.cameraService.fsReadAsString(response.uri, {
158
170
  encoding: 'base64'
159
171
  });
160
172
  };
@@ -218,7 +230,7 @@ export class Camera extends React.Component {
218
230
  skipProcessing: true,
219
231
  onPictureSaved: response => {
220
232
  response.content = async () => {
221
- return await FileSystem.readAsStringAsync(response.uri, {
233
+ return await this.cameraService.fsReadAsString(response.uri, {
222
234
  encoding: 'base64'
223
235
  });
224
236
  };
@@ -304,6 +316,7 @@ export class Camera extends React.Component {
304
316
  }))));
305
317
  }
306
318
  getPreviewTemplate(actions) {
319
+ const Video = this.cameraService.Video;
307
320
  return this.props.captureType === 'image' ? /*#__PURE__*/React.createElement(ImageBackground, {
308
321
  source: {
309
322
  uri: this.state.cameraContent.uri
@@ -330,18 +343,22 @@ export class Camera extends React.Component {
330
343
  return null;
331
344
  }
332
345
  const actions = this.getActionsTemplate();
333
- return /*#__PURE__*/React.createElement(View, {
334
- style: styles.preview
335
- }, this.state.isCaptured ? this.getPreviewTemplate(actions) : /*#__PURE__*/React.createElement(CameraView, {
336
- facing: this.state.cameraType,
337
- ref: ref => {
338
- this.camera = ref;
339
- },
340
- style: {
341
- flex: 1
342
- },
343
- onCameraReady: () => {}
344
- }), actions);
346
+ return /*#__PURE__*/React.createElement(CameraPluginConsumer, null, cameraService => {
347
+ this.cameraService = cameraService;
348
+ const CameraView = this.cameraService.CameraView;
349
+ return /*#__PURE__*/React.createElement(View, {
350
+ style: styles.preview
351
+ }, this.state.isCaptured ? this.getPreviewTemplate(actions) : /*#__PURE__*/React.createElement(CameraView, {
352
+ facing: this.state.cameraType,
353
+ ref: ref => {
354
+ this.camera = ref;
355
+ },
356
+ style: {
357
+ flex: 1
358
+ },
359
+ onCameraReady: () => {}
360
+ }), actions);
361
+ });
345
362
  }
346
363
  }
347
364
  const cameraService = new CameraService(appDisplayManagerService);