@wavemaker/app-rn-runtime 11.14.1-13.6377 → 11.14.1-16.6404

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wavemaker/app-rn-runtime",
3
- "version": "11.14.1-13.6377",
3
+ "version": "11.14.1-16.6404",
4
4
  "description": "''",
5
5
  "main": "index",
6
6
  "module": "index",
@@ -59,7 +59,7 @@
59
59
  "@react-navigation/drawer": "7.5.8",
60
60
  "@react-navigation/native": "7.1.18",
61
61
  "@react-navigation/stack": "7.4.8",
62
- "@wavemaker/variables": "11.14.1-13.6377",
62
+ "@wavemaker/variables": "11.14.1-16.6404",
63
63
  "axios": "1.8.3",
64
64
  "color": "4.2.3",
65
65
  "cross-env": "7.0.3",
package/runtime/App.js CHANGED
@@ -58,7 +58,7 @@ import moment from 'moment';
58
58
  import ErrorBoundary from '../core/error-boundary.component';
59
59
  import { ScreenCaptureProtectionProvider } from '../core/screen-capture-protection.service';
60
60
  import { allowScreenCaptureAsync, preventScreenCaptureAsync } from 'expo-screen-capture';
61
- import { setupGlobalErrorHandler } from '../core/global-error-handler.service';
61
+ import { setupGlobalJsErrorHandler } from '../core/global-error-handler.service';
62
62
  import Fallback from '../core/components/error-fallback/error-fallback.component';
63
63
  //some old react libraries need this
64
64
  View['propTypes'] = {
@@ -131,7 +131,7 @@ export default class BaseApp extends React.Component {
131
131
  _defineProperty(this, "networkStatus", {});
132
132
  _defineProperty(this, "statusbarInsets", void 0);
133
133
  _defineProperty(this, "globalError", null);
134
- _defineProperty(this, "globalErrorHandlerCleanup", null);
134
+ _defineProperty(this, "globalJsErrorHandlerCleanup", null);
135
135
  _defineProperty(this, "enableProtection", async () => {
136
136
  try {
137
137
  if (Platform.OS !== 'web') {
@@ -359,9 +359,23 @@ export default class BaseApp extends React.Component {
359
359
  errMsg = error.message || "Service Call Failed";
360
360
  }
361
361
  error.message = errMsg;
362
+
363
+ // Mark as service error for priority handling
364
+ // Set flags on both error and config to handle wrapping scenarios
365
+ error.__wmServiceError = true;
366
+ error.__wmServiceErrorHandled = false;
367
+ if (error.config) {
368
+ error.config.__wmServiceError = true;
369
+ error.config.__wmServiceErrorHandled = false;
370
+ }
362
371
  console.error(`Error ${errMsg} recieved from ${(_error$response = error.response) === null || _error$response === void 0 || (_error$response = _error$response.config) === null || _error$response === void 0 ? void 0 : _error$response.url}`);
363
372
  try {
364
373
  this.onServiceError(error.message, error);
374
+ // Mark as handled if onServiceError was successfully called
375
+ error.__wmServiceErrorHandled = true;
376
+ if (error.config) {
377
+ error.config.__wmServiceErrorHandled = true;
378
+ }
365
379
  } catch (e) {
366
380
  this.handleCallbackError(e, `Error in onServiceError callback`);
367
381
  }
@@ -389,20 +403,32 @@ export default class BaseApp extends React.Component {
389
403
  }
390
404
  componentDidMount() {
391
405
  var _this$appConfig;
392
- // Setup global error handler
393
- if (((_this$appConfig = this.appConfig) === null || _this$appConfig === void 0 || (_this$appConfig = _this$appConfig.preferences) === null || _this$appConfig === void 0 ? void 0 : _this$appConfig.enableGlobalErrorHandler) !== false) {
394
- this.globalErrorHandlerCleanup = setupGlobalErrorHandler((error, isFatal, errorInfo) => {
406
+ // Setup global JS error handler with granular control
407
+ const prefs = (_this$appConfig = this.appConfig) === null || _this$appConfig === void 0 ? void 0 : _this$appConfig.preferences;
408
+ const globalEnabled = (prefs === null || prefs === void 0 ? void 0 : prefs.enableGlobalErrorHandler) === true;
409
+ const enableSyncErrors = (prefs === null || prefs === void 0 ? void 0 : prefs.enableJsSyncErrors) !== false;
410
+ const enableAsyncErrors = (prefs === null || prefs === void 0 ? void 0 : prefs.enableJsAsyncErrors) !== false;
411
+ const showFallback = (prefs === null || prefs === void 0 ? void 0 : prefs.showErrorFallback) !== false;
412
+
413
+ // Only setup if master switch is on and at least one error type is enabled
414
+ if (globalEnabled && (enableSyncErrors || enableAsyncErrors)) {
415
+ this.globalJsErrorHandlerCleanup = setupGlobalJsErrorHandler((error, isFatal, errorInfo) => {
395
416
  // Trigger user error callback
396
417
  this.triggerOnError(error, errorInfo, 'javascript');
397
- this.globalError = {
398
- error,
399
- errorInfo,
400
- errorType: 'javascript',
401
- isFatal
402
- };
403
- this.forceUpdate(); // Trigger re-render to show error fallback
404
- }, true // suppressDefaultErrorScreen = true when global error handler is enabled
405
- );
418
+
419
+ // Only set global error state if fallback should be shown
420
+ if (showFallback) {
421
+ this.globalError = {
422
+ error,
423
+ errorInfo,
424
+ errorType: 'javascript',
425
+ isFatal
426
+ };
427
+ this.forceUpdate(); // Trigger re-render to show error fallback
428
+ }
429
+ }, true,
430
+ // suppressDefaultErrorScreen = true when global error handler is enabled
431
+ enableSyncErrors, enableAsyncErrors);
406
432
  }
407
433
  AppSpinnerService.show({
408
434
  spinner: this.appConfig.spinner
@@ -435,9 +461,9 @@ export default class BaseApp extends React.Component {
435
461
  });
436
462
  this.cleanup.forEach(fn => fn());
437
463
 
438
- // Cleanup global error handler
439
- if (this.globalErrorHandlerCleanup) {
440
- this.globalErrorHandlerCleanup();
464
+ // Cleanup global JS error handler
465
+ if (this.globalJsErrorHandlerCleanup) {
466
+ this.globalJsErrorHandlerCleanup();
441
467
  }
442
468
  }
443
469
  refresh() {
@@ -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","SecureStorageService","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","ScreenCaptureProtectionProvider","allowScreenCaptureAsync","preventScreenCaptureAsync","setupGlobalErrorHandler","Fallback","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","OS","error","console","preventAutoHideAsync","setTimeout","hideAsync","appConfig","app","drawer","set","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","invokeNativeApi","key","EmbedCommModule","sendToNative","Promise","reject","triggerPageReady","activePageName","activePageScope","onPageReady","e","handleCallbackError","triggerOnError","errorInfo","errorType","onError","context","errorObj","Error","String","hide","hideError","warn","globalError","isFatal","isStarted","setTimezone","timezone","openBrowser","window","open","startsWith","target","openBrowserAsync","openURL","resolve","getScreenCaptureContextValue","enableProtection","disableProtection","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","_this$appConfig","preferences","enableGlobalErrorHandler","globalErrorHandlerCleanup","show","Object","values","v","BEFORE_INVOKE","AFTER_INVOKE","startUpActions","a","Actions","then","onAppVariablesReady","componentWillUnmount","id","eject","forEach","getProviders","createElement","value","renderToasters","_this$appConfig2","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$appConfig3","_this$appConfig4","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","info","resetErrorBoundary","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 SecureStorageService from '@wavemaker/app-rn-runtime/core/secure-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';\nimport { ScreenCaptureProtectionProvider, ScreenCaptureProtectionContextType } from '../core/screen-capture-protection.service';\nimport { allowScreenCaptureAsync, preventScreenCaptureAsync } from 'expo-screen-capture';\nimport { setupGlobalErrorHandler, GlobalErrorState } from '../core/global-error-handler.service';\nimport Fallback from '../core/components/error-fallback/error-fallback.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 SecureStorageService: SecureStorageService,\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 public globalError: GlobalErrorState | null = null;\n private globalErrorHandlerCleanup: (() => void) | null = null;\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 \n // Register app instance in injector for Error Boundary access\n injector.set('APP_INSTANCE', this);\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 this.handleCallbackError(e, `Error in onPageReady callback`);\n }\n }\n\n onPageReady(activePageName: string, activePageScope: BasePage) {\n\n }\n\n triggerOnError(error: Error, errorInfo: any, errorType: 'render' | 'javascript') {\n try {\n this.onError(error, errorInfo, errorType);\n } catch (e) {\n console.error('Error in onError callback:', e);\n }\n }\n\n onError(error: Error, errorInfo: any, errorType: 'render' | 'javascript') {\n // Empty implementation - user can override in app.js\n // errorType: 'render' for React component errors, 'javascript' for other JS errors\n }\n\n public handleCallbackError(error: unknown, context: string) {\n console.error(error);\n const errorObj = error instanceof Error ? error : new Error(String(error));\n \n // Immediately hide all overlays to ensure error fallback is visible\n try {\n // Hide Expo SplashScreen\n SplashScreen.hideAsync();\n \n // Hide App Spinner (force hide regardless of count)\n AppSpinnerService.hide();\n } catch (hideError) {\n console.warn('Error hiding overlays:', hideError);\n }\n \n // Trigger user callback\n this.triggerOnError(errorObj, context, 'javascript');\n \n // Also set global error state to show fallback screen\n this.globalError = {\n error: errorObj,\n errorInfo: context,\n errorType: 'javascript',\n isFatal: false\n };\n \n // Set isStarted to true so app template will render the error screen\n this.isStarted = true;\n this.forceUpdate(); // Show fallback screen\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 private enableProtection = async (): Promise<void> => {\n try {\n if (Platform.OS !== 'web') {\n await preventScreenCaptureAsync();\n }\n } catch (error) {\n console.error('Failed to enable screen capture protection:', error);\n }\n };\n\n private disableProtection = async (): Promise<void> => {\n try {\n if (Platform.OS !== 'web') {\n await allowScreenCaptureAsync();\n }\n } catch (error) {\n console.error('Failed to disable screen capture protection:', error);\n }\n };\n\n private getScreenCaptureContextValue(): ScreenCaptureProtectionContextType {\n return {\n enableProtection: this.enableProtection,\n disableProtection: this.disableProtection\n };\n }\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 try {\n return this.onBeforeServiceCall(config);\n } catch (e) {\n this.handleCallbackError(e, `Error in onBeforeServiceCall callback`);\n return config; // Return original config as fallback\n }\n }),\n axios.interceptors.response.use(\n (response: AxiosResponse) => {\n try {\n this.onServiceSuccess(response.data, response);\n } catch (e) {\n this.handleCallbackError(e, `Error in onServiceSuccess callback`);\n }\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 try {\n this.onServiceError(error.message, error);\n } catch (e) {\n this.handleCallbackError(e, `Error in onServiceError callback`);\n }\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 // Setup global error handler\n if (this.appConfig?.preferences?.enableGlobalErrorHandler !== false) {\n this.globalErrorHandlerCleanup = setupGlobalErrorHandler(\n (error, isFatal, errorInfo) => {\n // Trigger user error callback\n this.triggerOnError(error, errorInfo, 'javascript');\n \n this.globalError = {\n error,\n errorInfo,\n errorType: 'javascript',\n isFatal\n };\n this.forceUpdate(); // Trigger re-render to show error fallback\n },\n true // suppressDefaultErrorScreen = true when global error handler is enabled\n );\n }\n\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 try {\n this.onAppVariablesReady();\n } catch (e) {\n this.handleCallbackError(e, `Error in onAppVariablesReady callback`);\n return; // Early return to prevent subsequent code from executing\n }\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 // Cleanup global error handler\n if (this.globalErrorHandlerCleanup) {\n this.globalErrorHandlerCleanup();\n }\n }\n\n refresh() {\n this.appConfig.refresh();\n }\n\n getProviders(content: React.ReactNode) {\n return (\n <ScreenCaptureProtectionProvider value={this.getScreenCaptureContextValue()}>\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 </ScreenCaptureProtectionProvider>\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\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} app={this}>\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 {/* global error fallback */}\n {this.globalError && (\n <View \n style={{position:'absolute',height:\"100%\",width:\"100%\",top:0,left:0,right:0,bottom:0,zIndex:999999,elevation: 999999}}>\n <Fallback\n error={this.globalError!.error}\n info={{errorInfo: this.globalError!.errorInfo}}\n errorType={this.globalError!.errorType}\n resetErrorBoundary={() => {\n this.globalError = null;\n this.forceUpdate();\n }}\n />\n </View>)}\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
+ {"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","SecureStorageService","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","ScreenCaptureProtectionProvider","allowScreenCaptureAsync","preventScreenCaptureAsync","setupGlobalJsErrorHandler","Fallback","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","OS","error","console","preventAutoHideAsync","setTimeout","hideAsync","appConfig","app","drawer","set","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","invokeNativeApi","key","EmbedCommModule","sendToNative","Promise","reject","triggerPageReady","activePageName","activePageScope","onPageReady","e","handleCallbackError","triggerOnError","errorInfo","errorType","onError","context","errorObj","Error","String","hide","hideError","warn","globalError","isFatal","isStarted","setTimezone","timezone","openBrowser","window","open","startsWith","target","openBrowserAsync","openURL","resolve","getScreenCaptureContextValue","enableProtection","disableProtection","axiosInterceptorIds","interceptors","request","use","headers","log","_errorDetails","_errorDetails2","_error$response","_error$response2","_error$response3","_error$response4","errorDetails","errMsg","errors","message","__wmServiceError","__wmServiceErrorHandled","includes","status","_this$appConfig$curre5","_this$appConfig$curre6","eval","failOnError","call","triggerStartUpVariables","all","startUpVariables","map","s","Variables","invoke","catch","componentDidMount","_this$appConfig","prefs","preferences","globalEnabled","enableGlobalErrorHandler","enableSyncErrors","enableJsSyncErrors","enableAsyncErrors","enableJsAsyncErrors","showFallback","showErrorFallback","globalJsErrorHandlerCleanup","show","Object","values","v","BEFORE_INVOKE","AFTER_INVOKE","startUpActions","a","Actions","then","onAppVariablesReady","componentWillUnmount","id","eject","forEach","getProviders","createElement","value","renderToasters","_this$appConfig2","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$appConfig3","_this$appConfig4","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","info","resetErrorBoundary","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 SecureStorageService from '@wavemaker/app-rn-runtime/core/secure-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';\nimport { ScreenCaptureProtectionProvider, ScreenCaptureProtectionContextType } from '../core/screen-capture-protection.service';\nimport { allowScreenCaptureAsync, preventScreenCaptureAsync } from 'expo-screen-capture';\nimport { setupGlobalJsErrorHandler, GlobalErrorState } from '../core/global-error-handler.service';\nimport Fallback from '../core/components/error-fallback/error-fallback.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 SecureStorageService: SecureStorageService,\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 public globalError: GlobalErrorState | null = null;\n private globalJsErrorHandlerCleanup: (() => void) | null = null;\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 \n // Register app instance in injector for Error Boundary access\n injector.set('APP_INSTANCE', this);\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 this.handleCallbackError(e, `Error in onPageReady callback`);\n }\n }\n\n onPageReady(activePageName: string, activePageScope: BasePage) {\n\n }\n\n triggerOnError(error: Error, errorInfo: any, errorType: 'render' | 'javascript') {\n try {\n this.onError(error, errorInfo, errorType);\n } catch (e) {\n console.error('Error in onError callback:', e);\n }\n }\n\n onError(error: Error, errorInfo: any, errorType: 'render' | 'javascript') {\n // Empty implementation - user can override in app.js\n // errorType: 'render' for React component errors, 'javascript' for other JS errors\n }\n\n public handleCallbackError(error: unknown, context: string) {\n console.error(error);\n const errorObj = error instanceof Error ? error : new Error(String(error));\n \n // Immediately hide all overlays to ensure error fallback is visible\n try {\n // Hide Expo SplashScreen\n SplashScreen.hideAsync();\n \n // Hide App Spinner (force hide regardless of count)\n AppSpinnerService.hide();\n } catch (hideError) {\n console.warn('Error hiding overlays:', hideError);\n }\n \n // Trigger user callback\n this.triggerOnError(errorObj, context, 'javascript');\n \n // Also set global error state to show fallback screen\n this.globalError = {\n error: errorObj,\n errorInfo: context,\n errorType: 'javascript',\n isFatal: false\n };\n \n // Set isStarted to true so app template will render the error screen\n this.isStarted = true;\n this.forceUpdate(); // Show fallback screen\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 private enableProtection = async (): Promise<void> => {\n try {\n if (Platform.OS !== 'web') {\n await preventScreenCaptureAsync();\n }\n } catch (error) {\n console.error('Failed to enable screen capture protection:', error);\n }\n };\n\n private disableProtection = async (): Promise<void> => {\n try {\n if (Platform.OS !== 'web') {\n await allowScreenCaptureAsync();\n }\n } catch (error) {\n console.error('Failed to disable screen capture protection:', error);\n }\n };\n\n private getScreenCaptureContextValue(): ScreenCaptureProtectionContextType {\n return {\n enableProtection: this.enableProtection,\n disableProtection: this.disableProtection\n };\n }\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 try {\n return this.onBeforeServiceCall(config);\n } catch (e) {\n this.handleCallbackError(e, `Error in onBeforeServiceCall callback`);\n return config; // Return original config as fallback\n }\n }),\n axios.interceptors.response.use(\n (response: AxiosResponse) => {\n try {\n this.onServiceSuccess(response.data, response);\n } catch (e) {\n this.handleCallbackError(e, `Error in onServiceSuccess callback`);\n }\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 \n // Mark as service error for priority handling\n // Set flags on both error and config to handle wrapping scenarios\n (error as any).__wmServiceError = true;\n (error as any).__wmServiceErrorHandled = false;\n if (error.config) {\n (error.config as any).__wmServiceError = true;\n (error.config as any).__wmServiceErrorHandled = false;\n }\n \n console.error(`Error ${errMsg} recieved from ${error.response?.config?.url}`);\n try {\n this.onServiceError(error.message, error);\n // Mark as handled if onServiceError was successfully called\n (error as any).__wmServiceErrorHandled = true;\n if (error.config) {\n (error.config as any).__wmServiceErrorHandled = true;\n }\n } catch (e) {\n this.handleCallbackError(e, `Error in onServiceError callback`);\n }\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 // Setup global JS error handler with granular control\n const prefs = this.appConfig?.preferences;\n const globalEnabled = prefs?.enableGlobalErrorHandler === true;\n const enableSyncErrors = prefs?.enableJsSyncErrors !== false;\n const enableAsyncErrors = prefs?.enableJsAsyncErrors !== false;\n const showFallback = prefs?.showErrorFallback !== false;\n \n // Only setup if master switch is on and at least one error type is enabled\n if (globalEnabled && (enableSyncErrors || enableAsyncErrors)) {\n this.globalJsErrorHandlerCleanup = setupGlobalJsErrorHandler(\n (error, isFatal, errorInfo) => {\n // Trigger user error callback\n this.triggerOnError(error, errorInfo, 'javascript');\n \n // Only set global error state if fallback should be shown\n if (showFallback) {\n this.globalError = {\n error,\n errorInfo,\n errorType: 'javascript',\n isFatal\n };\n this.forceUpdate(); // Trigger re-render to show error fallback\n }\n },\n true, // suppressDefaultErrorScreen = true when global error handler is enabled\n enableSyncErrors,\n enableAsyncErrors\n );\n }\n\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 try {\n this.onAppVariablesReady();\n } catch (e) {\n this.handleCallbackError(e, `Error in onAppVariablesReady callback`);\n return; // Early return to prevent subsequent code from executing\n }\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 // Cleanup global JS error handler\n if (this.globalJsErrorHandlerCleanup) {\n this.globalJsErrorHandlerCleanup();\n }\n }\n\n refresh() {\n this.appConfig.refresh();\n }\n\n getProviders(content: React.ReactNode) {\n return (\n <ScreenCaptureProtectionProvider value={this.getScreenCaptureContextValue()}>\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 </ScreenCaptureProtectionProvider>\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\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} app={this}>\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 {/* global error fallback */}\n {this.globalError && (\n <View \n style={{position:'absolute',height:\"100%\",width:\"100%\",top:0,left:0,right:0,bottom:0,zIndex:999999,elevation: 999999}}>\n <Fallback\n error={this.globalError!.error}\n info={{errorInfo: this.globalError!.errorInfo}}\n errorType={this.globalError!.errorType}\n resetErrorBoundary={() => {\n this.globalError = null;\n this.forceUpdate();\n }}\n />\n </View>)}\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":[]}