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

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.
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["AppConfig.ts"],"sourcesContent":["export interface Drawer {\n setContent: (c: React.ReactNode) => void;\n getContent: () => React.ReactNode;\n setAnimation: (animation: string) => void;\n getAnimation: () => string;\n}\n\nexport default interface AppConfig {\n appId: string;\n assets: any;\n appProperties: any;\n appLocale: any;\n url: string;\n leftNavWidth: any;\n loadApp: boolean;\n refresh: (complete?: boolean) => void,\n currentPage?: any;\n pages?: any[];\n landingPage: string;\n partials?: any[];\n drawer: Drawer;\n app: any;\n spinner: any;\n setDrawerContent: any;\n theme: any;\n drawerType: any;\n /**\n * Application preferences that can include:\n * - enableGlobalErrorHandler (boolean): Master switch for all error handling. Default: false (disabled)\n * - enableRenderErrors (boolean): Enable React ErrorBoundary for component errors. Default: true\n * - enableJsSyncErrors (boolean): Enable synchronous JavaScript error handling. Default: true\n * - enableJsAsyncErrors (boolean): Enable asynchronous/promise rejection error handling. Default: true\n * - showErrorFallback (boolean): Show error fallback UI when errors occur. Default: true\n * - Other app-specific preferences...\n */\n preferences:any;\n getServiceDefinitions: any;\n loggedInUser: any;\n selectedLocale: string;\n revertLayoutToExpo50: boolean,\n diagnostics: {\n appStartTime: number,\n appReadyTime: number,\n pageStartTime: number,\n pageReadyTime: number\n }, \n edgeToEdgeConfig:any;\n prefabs?: {\n partials?: any[]\n },\n screenCaptureProtection: {\n enabled: boolean\n }\n}"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["AppConfig.ts"],"sourcesContent":["export interface Drawer {\n setContent: (c: React.ReactNode) => void;\n getContent: () => React.ReactNode;\n setAnimation: (animation: string) => void;\n getAnimation: () => string;\n}\n\nexport default interface AppConfig {\n appId: string;\n assets: any;\n appProperties: any;\n appLocale: any;\n url: string;\n leftNavWidth: any;\n loadApp: boolean;\n refresh: (complete?: boolean) => void,\n currentPage?: any;\n pages?: any[];\n landingPage: string;\n partials?: any[];\n drawer: Drawer;\n app: any;\n spinner: any;\n setDrawerContent: any;\n theme: any;\n drawerType: any;\n /**\n * Application preferences that can include:\n * - enableGlobalErrorHandler (boolean): Master switch for all error handling. Default: false (disabled)\n * - enableRenderErrors (boolean): Enable React ErrorBoundary for component errors. Default: true\n * - enableJsSyncErrors (boolean): Enable synchronous JavaScript error handling. Default: true\n * - enableJsAsyncErrors (boolean): Enable asynchronous/promise rejection error handling. Default: true\n * - showDefaultErrorFallback (boolean): Show default error fallback UI when errors occur. Default: true\n * - Other app-specific preferences...\n */\n preferences:any;\n getServiceDefinitions: any;\n loggedInUser: any;\n selectedLocale: string;\n revertLayoutToExpo50: boolean,\n diagnostics: {\n appStartTime: number,\n appReadyTime: number,\n pageStartTime: number,\n pageReadyTime: number\n }, \n edgeToEdgeConfig:any;\n prefabs?: {\n partials?: any[]\n },\n screenCaptureProtection: {\n enabled: boolean\n }\n}"],"mappings":"","ignoreList":[]}
@@ -75,7 +75,7 @@ export default class ErrorBoundary extends React.Component {
75
75
  if (this.state.hasError) {
76
76
  var _appConfig$preference, _this$state, _this$state2;
77
77
  const appConfig = injector.get('APP_CONFIG');
78
- const showFallback = (appConfig === null || appConfig === void 0 || (_appConfig$preference = appConfig.preferences) === null || _appConfig$preference === void 0 ? void 0 : _appConfig$preference.showErrorFallback) !== false;
78
+ const showFallback = (appConfig === null || appConfig === void 0 || (_appConfig$preference = appConfig.preferences) === null || _appConfig$preference === void 0 ? void 0 : _appConfig$preference.showDefaultErrorFallback) !== false;
79
79
  if (!showFallback) {
80
80
  return null;
81
81
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","Fallback","appModalService","injector","ErrorBoundary","Component","constructor","props","_defineProperty","setState","hasError","error","undefined","info","state","getDerivedStateFromError","appConfig","get","prefs","preferences","globalEnabled","enableGlobalErrorHandler","renderEnabled","enableRenderErrors","componentDidCatch","appInstance","app","triggerOnError","e","console","modalsOpened","length","pop","showLastModal","render","_appConfig$preference","_this$state","_this$state2","showFallback","showErrorFallback","createElement","resetErrorBoundary","errorType","children"],"sources":["error-boundary.component.tsx"],"sourcesContent":["import * as React from 'react';\nimport Fallback from './components/error-fallback/error-fallback.component';\nimport appModalService from '@wavemaker/app-rn-runtime/runtime/services/app-modal.service';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\n\ninterface ErrorBoundaryState {\n hasError: boolean;\n info?: any;\n error?: any;\n}\n\ninterface ErrorBoundaryProps {\n currentPage?: any;\n children: React.ReactNode;\n errorType?: 'render' | 'javascript';\n app?: any;\n}\n\nexport default class ErrorBoundary extends React.Component<\n ErrorBoundaryProps,\n ErrorBoundaryState\n> {\n \n constructor(props: any) {\n super(props);\n this.state = { hasError: false };\n }\n\n static getDerivedStateFromError(error: any) {\n // Check preferences before setting error state\n const appConfig = injector.get<any>('APP_CONFIG');\n const prefs = appConfig?.preferences;\n const globalEnabled = prefs?.enableGlobalErrorHandler === true;\n const renderEnabled = prefs?.enableRenderErrors !== false;\n \n // Only set hasError if error handling is enabled\n if (!globalEnabled || !renderEnabled) {\n return { hasError: false };\n }\n \n return { hasError: true };\n }\n\n resetErrorBoundary = () => {\n this.setState({ hasError: false, error: undefined, info: undefined });\n };\n\n componentDidCatch(error: any, info: any) {\n // Check if error handling is enabled\n const appConfig = injector.get<any>('APP_CONFIG');\n const prefs = appConfig?.preferences;\n const globalEnabled = prefs?.enableGlobalErrorHandler === true;\n const renderEnabled = prefs?.enableRenderErrors !== false;\n \n // Only catch if both master switch and render errors are enabled\n if (!globalEnabled || !renderEnabled) {\n return;\n }\n \n // Trigger user error callback if app instance is available\n let appInstance = this.props.app;\n \n // Fallback: try to get app instance from injector if prop is not available\n if (!appInstance) {\n appInstance = injector.get('APP_INSTANCE');\n }\n \n if (appInstance && appInstance.triggerOnError) {\n try {\n appInstance.triggerOnError(error, info, 'render');\n } catch (e) {\n console.error('Error calling triggerOnError:', e);\n }\n }\n \n if(error && appModalService.modalsOpened.length > 0){\n appModalService.modalsOpened.pop();\n (appModalService as any).showLastModal();\n }\n this.setState({ error, info });\n }\n\n render() {\n if (this.state.hasError) {\n const appConfig = injector.get<any>('APP_CONFIG');\n const showFallback = appConfig?.preferences?.showErrorFallback !== false;\n \n if (!showFallback) {\n return null;\n }\n \n return <Fallback \n error={this.state?.error} \n info={this.state?.info} \n resetErrorBoundary={this.resetErrorBoundary}\n errorType={this.props.errorType || 'render'}\n />;\n }\n\n return this.props.children;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Fallback","appModalService","injector","ErrorBoundary","Component","constructor","props","_defineProperty","setState","hasError","error","undefined","info","state","getDerivedStateFromError","appConfig","get","prefs","preferences","globalEnabled","enableGlobalErrorHandler","renderEnabled","enableRenderErrors","componentDidCatch","appInstance","app","triggerOnError","e","console","modalsOpened","length","pop","showLastModal","render","_appConfig$preference","_this$state","_this$state2","showFallback","showDefaultErrorFallback","createElement","resetErrorBoundary","errorType","children"],"sources":["error-boundary.component.tsx"],"sourcesContent":["import * as React from 'react';\nimport Fallback from './components/error-fallback/error-fallback.component';\nimport appModalService from '@wavemaker/app-rn-runtime/runtime/services/app-modal.service';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\n\ninterface ErrorBoundaryState {\n hasError: boolean;\n info?: any;\n error?: any;\n}\n\ninterface ErrorBoundaryProps {\n currentPage?: any;\n children: React.ReactNode;\n errorType?: 'render' | 'javascript';\n app?: any;\n}\n\nexport default class ErrorBoundary extends React.Component<\n ErrorBoundaryProps,\n ErrorBoundaryState\n> {\n \n constructor(props: any) {\n super(props);\n this.state = { hasError: false };\n }\n\n static getDerivedStateFromError(error: any) {\n // Check preferences before setting error state\n const appConfig = injector.get<any>('APP_CONFIG');\n const prefs = appConfig?.preferences;\n const globalEnabled = prefs?.enableGlobalErrorHandler === true;\n const renderEnabled = prefs?.enableRenderErrors !== false;\n \n // Only set hasError if error handling is enabled\n if (!globalEnabled || !renderEnabled) {\n return { hasError: false };\n }\n \n return { hasError: true };\n }\n\n resetErrorBoundary = () => {\n this.setState({ hasError: false, error: undefined, info: undefined });\n };\n\n componentDidCatch(error: any, info: any) {\n // Check if error handling is enabled\n const appConfig = injector.get<any>('APP_CONFIG');\n const prefs = appConfig?.preferences;\n const globalEnabled = prefs?.enableGlobalErrorHandler === true;\n const renderEnabled = prefs?.enableRenderErrors !== false;\n \n // Only catch if both master switch and render errors are enabled\n if (!globalEnabled || !renderEnabled) {\n return;\n }\n \n // Trigger user error callback if app instance is available\n let appInstance = this.props.app;\n \n // Fallback: try to get app instance from injector if prop is not available\n if (!appInstance) {\n appInstance = injector.get('APP_INSTANCE');\n }\n \n if (appInstance && appInstance.triggerOnError) {\n try {\n appInstance.triggerOnError(error, info, 'render');\n } catch (e) {\n console.error('Error calling triggerOnError:', e);\n }\n }\n \n if(error && appModalService.modalsOpened.length > 0){\n appModalService.modalsOpened.pop();\n (appModalService as any).showLastModal();\n }\n this.setState({ error, info });\n }\n\n render() {\n if (this.state.hasError) {\n const appConfig = injector.get<any>('APP_CONFIG');\n const showFallback = appConfig?.preferences?.showDefaultErrorFallback !== false;\n \n if (!showFallback) {\n return null;\n }\n \n return <Fallback \n error={this.state?.error} \n info={this.state?.info} \n resetErrorBoundary={this.resetErrorBoundary}\n errorType={this.props.errorType || 'render'}\n />;\n }\n\n return this.props.children;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@wavemaker/app-rn-runtime",
3
- "version": "11.14.1-16.6404",
3
+ "version": "11.14.1-16.6408",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@wavemaker/app-rn-runtime",
9
- "version": "11.14.1-16.6404",
9
+ "version": "11.14.1-16.6408",
10
10
  "license": "MIT",
11
11
  "dependencies": {
12
12
  "@expo/vector-icons": "15.0.2",
@@ -20,7 +20,7 @@
20
20
  "@react-navigation/drawer": "7.5.8",
21
21
  "@react-navigation/native": "7.1.18",
22
22
  "@react-navigation/stack": "7.4.8",
23
- "@wavemaker/variables": "11.14.1-16.6404",
23
+ "@wavemaker/variables": "11.14.1-16.6408",
24
24
  "axios": "1.8.3",
25
25
  "color": "4.2.3",
26
26
  "cross-env": "7.0.3",
@@ -6173,8 +6173,8 @@
6173
6173
  }
6174
6174
  },
6175
6175
  "node_modules/@wavemaker/variables": {
6176
- "version": "11.14.1-16.6404",
6177
- "integrity": "sha512-F5HzIgXsALcN1Vuz7S1B99U34yCpaCXBEP9rNY0fx9mlqMMK+vxlBoyq95+jt17G9VqJiFj+cQh6NT6QPJXqIQ==",
6176
+ "version": "11.14.1-16.6408",
6177
+ "integrity": "sha512-k62WqhiRFFfMJ/JZKGewVg/GYNtid51nCXy5pCZsFuMUo+MDZYSwj39R90t60l78BL4GSChjjsqpNQ1d7N3zbg==",
6178
6178
  "license": "ISC",
6179
6179
  "dependencies": {
6180
6180
  "@metrichor/jmespath": "^0.3.1",
package/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@wavemaker/app-rn-runtime",
3
- "version": "11.14.1-16.6404",
3
+ "version": "11.14.1-16.6408",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@wavemaker/app-rn-runtime",
9
- "version": "11.14.1-16.6404",
9
+ "version": "11.14.1-16.6408",
10
10
  "license": "MIT",
11
11
  "dependencies": {
12
12
  "@expo/vector-icons": "15.0.2",
@@ -20,7 +20,7 @@
20
20
  "@react-navigation/drawer": "7.5.8",
21
21
  "@react-navigation/native": "7.1.18",
22
22
  "@react-navigation/stack": "7.4.8",
23
- "@wavemaker/variables": "11.14.1-16.6404",
23
+ "@wavemaker/variables": "11.14.1-16.6408",
24
24
  "axios": "1.8.3",
25
25
  "color": "4.2.3",
26
26
  "cross-env": "7.0.3",
@@ -6173,8 +6173,8 @@
6173
6173
  }
6174
6174
  },
6175
6175
  "node_modules/@wavemaker/variables": {
6176
- "version": "11.14.1-16.6404",
6177
- "integrity": "sha512-F5HzIgXsALcN1Vuz7S1B99U34yCpaCXBEP9rNY0fx9mlqMMK+vxlBoyq95+jt17G9VqJiFj+cQh6NT6QPJXqIQ==",
6176
+ "version": "11.14.1-16.6408",
6177
+ "integrity": "sha512-k62WqhiRFFfMJ/JZKGewVg/GYNtid51nCXy5pCZsFuMUo+MDZYSwj39R90t60l78BL4GSChjjsqpNQ1d7N3zbg==",
6178
6178
  "license": "ISC",
6179
6179
  "dependencies": {
6180
6180
  "@metrichor/jmespath": "^0.3.1",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wavemaker/app-rn-runtime",
3
- "version": "11.14.1-16.6404",
3
+ "version": "11.14.1-16.6408",
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-16.6404",
62
+ "@wavemaker/variables": "11.14.1-16.6408",
63
63
  "axios": "1.8.3",
64
64
  "color": "4.2.3",
65
65
  "cross-env": "7.0.3",
package/runtime/App.js CHANGED
@@ -370,12 +370,26 @@ export default class BaseApp extends React.Component {
370
370
  }
371
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}`);
372
372
  try {
373
+ var _this$appConfig;
373
374
  this.onServiceError(error.message, error);
374
- // Mark as handled if onServiceError was successfully called
375
+ // Mark as handled to prevent onError from being called
375
376
  error.__wmServiceErrorHandled = true;
376
377
  if (error.config) {
377
378
  error.config.__wmServiceErrorHandled = true;
378
379
  }
380
+
381
+ // Show fallback for service errors if enabled (but don't call onError)
382
+ const prefs = (_this$appConfig = this.appConfig) === null || _this$appConfig === void 0 ? void 0 : _this$appConfig.preferences;
383
+ const showDefaultFallback = (prefs === null || prefs === void 0 ? void 0 : prefs.showDefaultErrorFallback) !== false;
384
+ if (showDefaultFallback) {
385
+ this.globalError = {
386
+ error: error,
387
+ errorInfo: (error === null || error === void 0 ? void 0 : error.stack) || (error === null || error === void 0 ? void 0 : error.toString()),
388
+ errorType: 'javascript',
389
+ isFatal: false
390
+ };
391
+ this.forceUpdate(); // Trigger re-render to show error fallback
392
+ }
379
393
  } catch (e) {
380
394
  this.handleCallbackError(e, `Error in onServiceError callback`);
381
395
  }
@@ -402,13 +416,13 @@ export default class BaseApp extends React.Component {
402
416
  return Promise.all(this.startUpVariables.map(s => this.Variables[s] && this.Variables[s].invoke())).catch(() => {});
403
417
  }
404
418
  componentDidMount() {
405
- var _this$appConfig;
419
+ var _this$appConfig2;
406
420
  // 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;
421
+ const prefs = (_this$appConfig2 = this.appConfig) === null || _this$appConfig2 === void 0 ? void 0 : _this$appConfig2.preferences;
408
422
  const globalEnabled = (prefs === null || prefs === void 0 ? void 0 : prefs.enableGlobalErrorHandler) === true;
409
423
  const enableSyncErrors = (prefs === null || prefs === void 0 ? void 0 : prefs.enableJsSyncErrors) !== false;
410
424
  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;
425
+ const showFallback = (prefs === null || prefs === void 0 ? void 0 : prefs.showDefaultErrorFallback) !== false;
412
426
 
413
427
  // Only setup if master switch is on and at least one error type is enabled
414
428
  if (globalEnabled && (enableSyncErrors || enableAsyncErrors)) {
@@ -489,8 +503,8 @@ export default class BaseApp extends React.Component {
489
503
  }, content))))))));
490
504
  }
491
505
  renderToasters() {
492
- var _this$appConfig2;
493
- const isEdgeToEdgeApp = !!((_this$appConfig2 = this.appConfig) !== null && _this$appConfig2 !== void 0 && (_this$appConfig2 = _this$appConfig2.edgeToEdgeConfig) !== null && _this$appConfig2 !== void 0 && _this$appConfig2.isEdgeToEdgeApp);
506
+ var _this$appConfig3;
507
+ const isEdgeToEdgeApp = !!((_this$appConfig3 = this.appConfig) !== null && _this$appConfig3 !== void 0 && (_this$appConfig3 = _this$appConfig3.edgeToEdgeConfig) !== null && _this$appConfig3 !== void 0 && _this$appConfig3.isEdgeToEdgeApp);
494
508
  this.toastsOpened = AppToastService.toastsOpened.length;
495
509
  return /*#__PURE__*/React.createElement(WmMemo, {
496
510
  watcher: this.watcher,
@@ -683,13 +697,13 @@ export default class BaseApp extends React.Component {
683
697
  return false;
684
698
  }
685
699
  renderApp(commonPartial) {
686
- var _this$appConfig3, _this$appConfig4;
700
+ var _this$appConfig4, _this$appConfig5;
687
701
  this.autoUpdateVariables.forEach(value => {
688
702
  var _this$Variables$value;
689
703
  return (_this$Variables$value = this.Variables[value]) === null || _this$Variables$value === void 0 ? void 0 : _this$Variables$value.invokeOnParamChange();
690
704
  });
691
- const edgeToEdgeConfig = (_this$appConfig3 = this.appConfig) === null || _this$appConfig3 === void 0 ? void 0 : _this$appConfig3.edgeToEdgeConfig;
692
- const statusbarConfig = (_this$appConfig4 = this.appConfig) === null || _this$appConfig4 === void 0 || (_this$appConfig4 = _this$appConfig4.edgeToEdgeConfig) === null || _this$appConfig4 === void 0 ? void 0 : _this$appConfig4.statusbarConfig;
705
+ const edgeToEdgeConfig = (_this$appConfig4 = this.appConfig) === null || _this$appConfig4 === void 0 ? void 0 : _this$appConfig4.edgeToEdgeConfig;
706
+ const statusbarConfig = (_this$appConfig5 = this.appConfig) === null || _this$appConfig5 === void 0 || (_this$appConfig5 = _this$appConfig5.edgeToEdgeConfig) === null || _this$appConfig5 === void 0 ? void 0 : _this$appConfig5.statusbarConfig;
693
707
  const isEdgeToEdgeApp = !!(edgeToEdgeConfig !== null && edgeToEdgeConfig !== void 0 && edgeToEdgeConfig.isEdgeToEdgeApp);
694
708
  const Wrapper = isEdgeToEdgeApp ? View : SafeAreaView;
695
709
  return /*#__PURE__*/React.createElement(SafeAreaProvider, null, /*#__PURE__*/React.createElement(SafeAreaInsetsContext.Consumer, null, (insets = {
@@ -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","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":[]}
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","_this$appConfig","prefs","preferences","showDefaultFallback","showDefaultErrorFallback","stack","toString","includes","status","_this$appConfig$curre5","_this$appConfig$curre6","eval","failOnError","call","triggerStartUpVariables","all","startUpVariables","map","s","Variables","invoke","catch","componentDidMount","_this$appConfig2","globalEnabled","enableGlobalErrorHandler","enableSyncErrors","enableJsSyncErrors","enableAsyncErrors","enableJsAsyncErrors","showFallback","globalJsErrorHandlerCleanup","show","Object","values","v","BEFORE_INVOKE","AFTER_INVOKE","startUpActions","a","Actions","then","onAppVariablesReady","componentWillUnmount","id","eject","forEach","getProviders","createElement","value","renderToasters","_this$appConfig3","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$appConfig4","_this$appConfig5","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 to prevent onError from being called\n (error as any).__wmServiceErrorHandled = true;\n if (error.config) {\n (error.config as any).__wmServiceErrorHandled = true;\n }\n \n // Show fallback for service errors if enabled (but don't call onError)\n const prefs = this.appConfig?.preferences;\n const showDefaultFallback = prefs?.showDefaultErrorFallback !== false;\n \n if (showDefaultFallback) {\n this.globalError = {\n error: error,\n errorInfo: error?.stack || error?.toString(),\n errorType: 'javascript',\n isFatal: false\n };\n this.forceUpdate(); // Trigger re-render to show error fallback\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?.showDefaultErrorFallback !== 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":[]}