@wavemaker-ai/app-rn-runtime 12.0.2-rc.647771 → 12.1.0-rc.347
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/components/advanced/webview/webview.component.js +1 -1
- package/components/advanced/webview/webview.component.js.map +1 -1
- package/components/basic/bottomsheet/bottomsheet.component.js +1 -1
- package/components/basic/bottomsheet/bottomsheet.component.js.map +1 -1
- package/components/basic/label/label.component.js +2 -2
- package/components/basic/label/label.component.js.map +1 -1
- package/components/chart/bubble-chart/bubble-chart.component.js.map +1 -1
- package/components/container/tabs/tabheader/tabheader.component.js +10 -3
- package/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
- package/components/data/form/form-field/form-field.component.js +5 -0
- package/components/data/form/form-field/form-field.component.js.map +1 -1
- package/components/data/form/form.component.js +12 -8
- package/components/data/form/form.component.js.map +1 -1
- package/components/data/list/list.component.js +5 -2
- package/components/data/list/list.component.js.map +1 -1
- package/components/dialogs/dialog/dialog.component.js +1 -1
- package/components/dialogs/dialog/dialog.component.js.map +1 -1
- package/components/input/chips/chips.component.js +1 -1
- package/components/input/chips/chips.component.js.map +1 -1
- package/components/input/chips/chips.props.js +1 -0
- package/components/input/chips/chips.props.js.map +1 -1
- package/components/input/textarea/textarea.component.js +1 -1
- package/components/input/textarea/textarea.component.js.map +1 -1
- package/components/page/page-content/page-content.component.js +152 -17
- package/components/page/page-content/page-content.component.js.map +1 -1
- package/components/page/page-content/page-content.props.js +5 -0
- package/components/page/page-content/page-content.props.js.map +1 -1
- package/components/page/page-content/pull-to-refresh.component.js +288 -0
- package/components/page/page-content/pull-to-refresh.component.js.map +1 -0
- package/core/AppConfig.js.map +1 -1
- package/core/base.component.js +14 -0
- package/core/base.component.js.map +1 -1
- package/core/sticky-wrapper.js +37 -34
- package/core/sticky-wrapper.js.map +1 -1
- package/gestures/carousel-swipe.animation.js +1 -0
- package/gestures/carousel-swipe.animation.js.map +1 -1
- package/npm-shrinkwrap.json +1285 -570
- package/package-lock.json +1285 -570
- package/package.json +3 -3
- package/runtime/App.js +52 -36
- package/runtime/App.js.map +1 -1
- package/runtime/App.navigator.js +4 -1
- package/runtime/App.navigator.js.map +1 -1
- package/runtime/base-fragment.component.js +1 -0
- package/runtime/base-fragment.component.js.map +1 -1
- package/runtime/services/app-security.service.js +40 -19
- package/runtime/services/app-security.service.js.map +1 -1
- package/runtime/services/browser.constants.js +3 -0
- package/runtime/services/browser.constants.js.map +1 -0
- package/runtime/services/browser.service.js +321 -0
- package/runtime/services/browser.service.js.map +1 -0
- package/runtime/services/external-auth-callback.service.js +44 -0
- package/runtime/services/external-auth-callback.service.js.map +1 -0
- package/runtime/services/webprocess.service.js +8 -3
- package/runtime/services/webprocess.service.js.map +1 -1
- package/styles/background.component.js +61 -2
- package/styles/background.component.js.map +1 -1
- package/styles/style-prop.validator.js +4 -0
- package/styles/style-prop.validator.js.map +1 -1
- package/styles/style-props.js +2 -0
- package/styles/style-props.js.map +1 -1
- package/styles/theme.js +52 -11
- package/styles/theme.js.map +1 -1
- package/components-prism/basic/search/search.component.js +0 -208
- package/components-prism/basic/search/search.component.js.map +0 -1
- package/components-prism/basic/search/search.props.js +0 -16
- package/components-prism/basic/search/search.props.js.map +0 -1
- package/components-prism/basic/search/search.styles.js +0 -127
- package/components-prism/basic/search/search.styles.js.map +0 -1
- package/core/outside-press-handler.js +0 -65
- package/core/outside-press-handler.js.map +0 -1
|
@@ -49,6 +49,7 @@ export default class BaseFragment extends BaseComponent {
|
|
|
49
49
|
_defineProperty(this, "startUpVariablesError", false);
|
|
50
50
|
_defineProperty(this, "startUpActions", []);
|
|
51
51
|
_defineProperty(this, "autoUpdateVariables", []);
|
|
52
|
+
_defineProperty(this, "pullToRefreshVariables", []);
|
|
52
53
|
_defineProperty(this, "cleanUpVariablesandActions", []);
|
|
53
54
|
_defineProperty(this, "fragmentVariables", {});
|
|
54
55
|
_defineProperty(this, "fragmentActions", {});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Text","get","filter","isNil","TestIdPrefixProvider","TextIdPrefixConsumer","injector","toBoolean","toNumber","isFullPathUrl","BaseComponent","BaseProps","ParentContext","BASE_THEME","ThemeProvider","VariableEvents","default","_viewPort","EVENTS","viewportEvents","WmFormField","WmForm","ToastConsumer","spinnerService","AppI18nService","WmFormAction","WmLeftPanel","WmLabel","SkeletonAnimationProps","constructor","args","_defineProperty","FragmentProps","BaseFragment","Global","App","props","defaultProps","_injector$get","appLocale","messages","createElement","text","title","okButtonText","cancelButtonText","onOk","onCancel","onClose","appConfig","app","formatters","Actions","Object","assign","Variables","cleanup","push","subscribe","ORIENTATION_CHANGE","$new","$old","isDetached","targetWidget","invokeEventCallback","proxy","screenWidth","width","screenHeight","height","SIZE_CHANGE","_this$theme","theme","destroy","baseUrl","url","resourceBaseUrl","onDestroy","onContentReady","onReady","e","console","error","refresh","onComponentChange","w","onComponentInit","id","name","formWidgets","formFields","formActions","Widgets","buttonArray","parentFormRef","pid","forEach","ff","formKey","registerFormFields","registerFormActions","formfield","formRef","fragments","_w$_INSTANCE$styles","leftNavWidth","_INSTANCE","styles","root","revertLayoutToExpo50","_w$styles","flexDirection","onComponentDestroy","formfields","handleUrl","startsWith","getDateFormat","fmt","dateFormat","replace","getTimeFormat","timeFormat","getDateTimeFormat","dateTimeFormat","getCurrencySymbol","currencyCode","getStyle","classes","inlineStyles","trim","length","mergeStyle","getFormFieldStyles","formField","type","_formField$classname","suffix","classname","split","map","s","join","resetAppLocale","values","f","eval","fn","failOnError","call","val","componentWillUnmount","componentDidMount","memoize","key","o","_memoize","initVariableSpinner","variables","v","actions","concat","BEFORE_INVOKE","notify","spinnerContext","_spinnerCount","_spinnerMessage","forceUpdate","show","message","spinner","AFTER_INVOKE","Math","max","hide","onFragmentReady","fragmentVariables","fragmentActions","cleanUpVariablesandActions","invokeStartUpVariablesAndActions","startUpVariablesError","startUpActions","a","invoke","Promise","all","startUpVariables","catch","then","startUpVariablesLoaded","showContent","onAttach","_this$targetWidget","watcher","isActive","unmute","refreshdataonattach","componentWillAttach","onDetach","_this$targetWidget2","mute","componentWillDetach","generateTestIdPrefix","testId","getTestId","reduce","i","charCodeAt","render","autoUpdateVariables","value","_this$Variables$value","invokeOnParamChange","isVisible","Consumer","parent","_this$parent","setParent","_showSkeleton","state","showskeleton","Provider","testIdPrefix","toastService","toaster","renderWidget"],"sources":["base-fragment.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text } from 'react-native';\nimport { get, filter, isNil } from 'lodash';\n\nimport AppConfig from '@wavemaker-ai/app-rn-runtime/core/AppConfig';\nimport { Formatter } from '@wavemaker-ai/app-rn-runtime/core/formatters';\nimport { TestIdPrefixProvider, TextIdPrefixConsumer } from '@wavemaker-ai/app-rn-runtime/core/testid.provider';\nimport injector from '@wavemaker-ai/app-rn-runtime/core/injector';\nimport { toBoolean, toNumber, isFullPathUrl } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport { BaseComponent, BaseComponentState, BaseStyles, BaseProps, LifecycleListener, ParentContext } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport BASE_THEME, { Theme, ThemeProvider } from '@wavemaker-ai/app-rn-runtime/styles/theme';\nimport { BaseVariable, VariableEvents } from '@wavemaker-ai/app-rn-runtime/variables/base-variable';\nimport { default as _viewPort, EVENTS as viewportEvents } from '@wavemaker-ai/app-rn-runtime/core/viewport';\n\nimport NetworkService from '@wavemaker-ai/app-rn-runtime/core/network.service';\nimport httpService from '@wavemaker-ai/app-rn-runtime/variables/http.service';\nimport { isWebPreviewMode } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport App from './App';\nimport WmFormField from '@wavemaker-ai/app-rn-runtime/components/data/form/form-field/form-field.component';\nimport WmForm from '@wavemaker-ai/app-rn-runtime/components/data/form/form.component';\nimport { ToastConsumer, ToastService } from '@wavemaker-ai/app-rn-runtime/core/toast.service';\nimport spinnerService from '@wavemaker-ai/app-rn-runtime/runtime/services/app-spinner.service';\n\nimport AppI18nService from './services/app-i18n.service';\nimport { Watcher } from './watcher';\nimport WmFormAction from '@wavemaker-ai/app-rn-runtime/components/data/form/form-action/form-action.component';\nimport WmLottie from '@wavemaker-ai/app-rn-runtime/components/basic/lottie/lottie.component';\nimport { WmSkeletonStyles } from '@wavemaker-ai/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport WmLeftPanel from '@wavemaker-ai/app-rn-runtime/components/page/left-panel/left-panel.component';\nimport WmLabel from '../components/basic/label/label.component';\nimport BasePage from './base-page.component';\n\nexport class SkeletonAnimationProps extends BaseProps {\n skeletonanimationresource = \"\";\n skeletonanimationspeed = 1;\n}\n\nexport class FragmentProps extends SkeletonAnimationProps {}\n\nexport interface FragmentState<T extends FragmentProps> extends BaseComponentState<T> {\n \n}\n\nexport type FragmentStyles = BaseStyles & {\n skeleton?: WmSkeletonStyles\n};\nexport default abstract class BaseFragment<P extends FragmentProps, S extends FragmentState<P>> extends BaseComponent<P, S, FragmentStyles> implements LifecycleListener {\n public App: App;\n public onReady: Function = () => {};\n public baseUrl = '';\n public resourceBaseUrl = '';\n public targetWidget = null as unknown as BaseComponent<any, any, any>;\n public Widgets: any = {};\n public Variables: any = {};\n public theme: Theme = BASE_THEME;\n public appLocale: any = injector.get<AppConfig>('APP_CONFIG')?.appLocale?.messages ? injector.get<AppConfig>('APP_CONFIG').appLocale.messages : {};\n public startUpVariables: string[] = [];\n protected startUpVariablesLoaded = false;\n protected startUpVariablesError = false;\n private startUpActions: string[] = [];\n private autoUpdateVariables: string[] = [];\n private cleanUpVariablesandActions: BaseVariable<any>[] = [];\n public fragmentVariables: any = {};\n public fragmentActions: any = {};\n public Actions: any = {};\n public appConfig = injector.get<AppConfig>('APP_CONFIG');\n // Live getter (unlike copied Actions/Variables) so App.setProfile() changes show up immediately.\n public get Global(): any {\n return this.App.Global;\n }\n public cache = false;\n public refreshdataonattach= true;\n public isReactNativeApp = true;\n public fragments: any = {};\n public isDetached = false;\n public _memoize = {} as any;\n public toaster: any;\n public formatters: Map<string, Formatter>;\n public serviceDefinitions = {} as any;\n public Viewport = _viewPort;\n public loadingMessage = React.createElement(Text, [] as any, ['loading...']);\n public showContent = false;\n public notification = {\n text: '',\n title: '',\n okButtonText: '',\n cancelButtonText: '',\n onOk: () => {},\n onCancel: () => {},\n onClose: () => {}\n };\n public watcher: Watcher = null as any;\n\n\n constructor(props: P, defaultProps?: P) {\n super(props, null as any, defaultProps);\n this.App = this.appConfig.app;\n this.formatters = this.App.formatters;\n this.Actions = Object.assign({}, this.App.Actions);\n this.Variables = Object.assign({}, this.App.Variables);\n this.cleanup.push(_viewPort.subscribe(viewportEvents.ORIENTATION_CHANGE, ($new: any, $old: any) => {\n !this.isDetached && this.targetWidget && this.targetWidget.invokeEventCallback('onOrientationchange', [null, this.proxy,\n {screenWidth: _viewPort.width,\n screenHeight: _viewPort.height}]);\n }));\n this.cleanup.push(_viewPort.subscribe(viewportEvents.SIZE_CHANGE, ($new: any, $old: any) => {\n !this.isDetached && this.targetWidget && this.targetWidget.invokeEventCallback('onResize', [null, this.proxy,\n {screenWidth: $new.width,\n screenHeight: $new.height}]);\n }));\n this.cleanup.push(() => this.theme?.destroy());\n this.baseUrl = this.appConfig.url;\n this.resourceBaseUrl = this.appConfig.url;\n this.cleanup.push(() => this.onDestroy());\n }\n\n\n\n onContentReady() {\n try {\n this.onReady();\n } catch(e) {\n console.error(e);\n }\n this.appConfig.refresh();\n this.targetWidget && this.targetWidget.invokeEventCallback('onLoad', [null, this.proxy]);\n this.onContentReady = () => {};\n }\n\n onComponentChange(w: BaseComponent<any, any, any>) {\n this.refresh();\n }\n\n onComponentInit(w: BaseComponent<any, any, any>) {\n const id = w.props.id || w.props.name;\n let formWidgets: any, formFields: any, formActions: any;\n\n if (w instanceof WmForm) {\n if (!this.Widgets[id]) {\n this.Widgets[id] = w;\n }\n if (w.props.id) {\n const name: any = w.props.name;\n formWidgets = this.Widgets[name].formWidgets;\n formFields = this.Widgets[name].formFields;\n formActions = this.Widgets[name].buttonArray;\n this.Widgets[name].formFields = [];\n this.Widgets[name].buttonArray = [];\n this.Widgets[name].formWidgets = {};\n } else {\n formWidgets = this.Widgets[id].formWidgets;\n formFields = this.Widgets[id].formFields;\n formActions = this.Widgets[id].buttonArray;\n }\n this.Widgets[id] = w;\n if (w.parentFormRef) {\n let pid = w.parentFormRef.props.id || w.parentFormRef.props.name;\n formFields.forEach((ff: any) => {\n const formKey = ff.props.formKey || ff.props.name;\n this.Widgets[pid].formFields.push(ff);\n this.Widgets[pid].formWidgets[formKey] = formWidgets[ff.props.name];\n });\n }\n w.registerFormFields(formFields, formWidgets);\n w.registerFormActions(formActions);\n return;\n }\n if (w.props.formfield) {\n if (!this.Widgets[w.props.formRef]) {\n this.Widgets[w.props.formRef] = {formFields: [], formWidgets: {}};\n } else if (!this.Widgets[w.props.formRef].formFields) {\n this.Widgets[w.props.formRef].formFields = [];\n }\n if (!this.Widgets[w.props.formRef].formWidgets) {\n this.Widgets[w.props.formRef].formWidgets = {}\n }\n this.Widgets[w.props.formRef].formWidgets[w.props.name] = w;\n return;\n }\n if (w instanceof WmFormAction) {\n if (!this.Widgets[w.props.formKey]) {\n this.Widgets[w.props.formKey] = {};\n }\n if (!this.Widgets[w.props.formKey].buttonArray) {\n this.Widgets[w.props.formKey].buttonArray = [];\n }\n this.Widgets[w.props.formKey].buttonArray.push(w);\n return;\n }\n\n if (w instanceof WmFormField) {\n if (!this.Widgets[w.props.formRef]) {\n this.Widgets[w.props.formRef] = {};\n }\n if (!this.Widgets[w.props.formRef].formFields) {\n this.Widgets[w.props.formRef].formFields = [];\n }\n this.Widgets[w.props.formRef].formWidgets = this.Widgets[w.props.formRef].formWidgets || {};\n this.Widgets[w.props.formRef].formFields.push(w);\n return;\n }\n this.Widgets[id] = w;\n if (w instanceof BaseFragment && w !== this) {\n this.fragments[id] = w;\n }\n if (w instanceof WmLeftPanel) {\n this.appConfig.leftNavWidth = w._INSTANCE.styles?.root?.width;\n }\n // temporary fix need to be removed in Expo53\n if (this.appConfig.revertLayoutToExpo50 && w instanceof WmLabel) {\n w.styles?.root && (w.styles.root.flexDirection = \"row\");\n }\n }\n\n onComponentDestroy(w: BaseComponent<any, any, any>) {\n const id = w.props.id || w.props.name;\n delete this.Widgets[id];\n if (w instanceof BaseFragment) {\n delete this.fragments[id];\n }\n if (w instanceof WmForm) {\n w.formWidgets = {};\n w.formFields = [];\n w.formfields = {};\n }\n }\n\n handleUrl(url: string) {\n if (isFullPathUrl(url)) {\n return url;\n }\n return this.appConfig.url + (url.startsWith('/') ? '' : '/') + url;\n }\n\n getDateFormat(fmt?: string) {\n // getting formats from appLocale when app locale is loaded locally.\n return (fmt || AppI18nService.dateFormat || get(this.appConfig, 'appLocale.formats.date')).replace(/d/g, 'D').replace(/E/g, 'd').replace(/y/g, 'Y');\n }\n\n getTimeFormat(fmt?: string) {\n return fmt || AppI18nService.timeFormat || get(this.appConfig, 'appLocale.formats.time');\n }\n\n getDateTimeFormat(fmt?: string) {\n return (fmt || AppI18nService.dateTimeFormat || (get(this.appConfig, 'appLocale.formats.date') + ' ' + get(this.appConfig, 'appLocale.formats.time'))).replace(/d/g, 'D').replace(/E/g, 'd').replace(/y/g, 'Y');\n }\n\n getCurrencySymbol(fmt?: string) {\n return (fmt || AppI18nService.currencyCode || 'USD');\n }\n\n getStyle(classes: string, inlineStyles:any = {}) {\n if (classes && classes.trim().length > 0) {\n return this.theme.mergeStyle({}, this.theme.getStyle(classes), inlineStyles);\n }\n return inlineStyles;\n }\n\n getFormFieldStyles(formField: any, type: string){\n let suffix = ''\n switch(type){\n case 'label' :\n suffix = '_formLabel'\n break\n case 'commonField' :\n suffix = '-input'\n break\n default :\n ''\n }\n return formField?.classname?.trim()?.split(' ')?.map((s:string) => s.trim() + suffix).join(' ');\n }\n\n resetAppLocale() {\n this.appLocale = this.appConfig.appLocale.messages;\n Object.values(this.fragments).forEach((f: any) => (f as BaseFragment<any, any>).resetAppLocale());\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 toBoolean(val: any) {\n if (isNil(val)) {\n return false;\n }\n return toBoolean(val);\n }\n\n toNumber(val: any) {\n if (isNil(val)) {\n return val;\n }\n return toNumber(val);\n }\n\n componentWillUnmount() {\n super.componentWillUnmount();\n this.targetWidget && this.targetWidget.invokeEventCallback('onDestroy', [null, this.proxy]);\n }\n\n componentDidMount(): void {\n this.resetAppLocale();\n super.componentDidMount();\n }\n\n memoize(key: string, o: any) {\n if (!this._memoize[key]) {\n this._memoize[key] = o;\n }\n return this._memoize[key];\n }\n\n initVariableSpinner() {\n let variables = filter(this.Variables, (v: BaseVariable<any>) => !!get(v, 'config.spinnerContext'));\n const actions = filter(this.Actions, (v: BaseVariable<any>) => !!get(v, 'config.spinnerContext'));\n variables = variables.concat(actions);\n if (!variables.length) {\n return;\n }\n this.cleanup.push(...variables.map(v => {\n return ((v as BaseVariable<any>)\n .subscribe(VariableEvents.BEFORE_INVOKE, () => {\n this.App.notify(VariableEvents.BEFORE_INVOKE, v);\n const spinnerContext = get(v, 'config.spinnerContext');\n if(spinnerContext && spinnerContext !== 'page') {\n const targetWidget = this.Widgets[spinnerContext];\n if(targetWidget) {\n targetWidget._spinnerCount++;\n targetWidget._spinnerMessage = get(v, 'config.spinnerMessage');\n targetWidget.forceUpdate();\n }\n }else{\n spinnerService.show({\n message: get(v, 'config.spinnerMessage'),\n spinner: this.App.appConfig.spinner\n });\n }\n }))\n }));\n this.cleanup.push(...variables.map(v => {\n return ((v as BaseVariable<any>)\n .subscribe(VariableEvents.AFTER_INVOKE, () => {\n this.App.notify(VariableEvents.AFTER_INVOKE, v);\n const spinnerContext = get(v, 'config.spinnerContext');\n if (spinnerContext && spinnerContext !== 'page') {\n const targetWidget = this.Widgets[spinnerContext];\n if (targetWidget) {\n targetWidget._spinnerCount = Math.max(0, targetWidget._spinnerCount - 1);\n targetWidget.forceUpdate();\n }\n } else {\n spinnerService.hide();\n }\n }));\n }));\n }\n\n onFragmentReady() {\n this.cleanup.push(...Object.values({...this.Variables, ...this.Actions}).map(v => {\n return ((v as BaseVariable<any>)\n .subscribe(VariableEvents.AFTER_INVOKE, () => this.App.refresh()));\n }));\n (Object.values({...this.fragmentVariables, ...this.fragmentActions} as BaseVariable<any>))\n .map(v => {\n (v as BaseVariable<any>).subscribe(VariableEvents.BEFORE_INVOKE, () => {\n this.App.notify(VariableEvents.BEFORE_INVOKE, v);\n });\n (v as BaseVariable<any>).subscribe(VariableEvents.AFTER_INVOKE, () => {\n this.App.notify(VariableEvents.AFTER_INVOKE, v);\n });\n });\n this.cleanUpVariablesandActions.push(...Object.values({...this.fragmentVariables, ...this.fragmentActions} as BaseVariable<any>));\n return this.invokeStartUpVariablesAndActions();\n }\n\n invokeStartUpVariablesAndActions() {\n this.startUpVariablesError = false;\n this.initVariableSpinner();\n this.startUpActions.map(a => this.Actions[a] && this.Actions[a].invoke());\n return Promise.all(this.startUpVariables.map(s => this.Variables[s] && this.Variables[s].invoke()))\n .catch((error) => {\n // catch errors and show content\n console.error(error); \n this.startUpVariablesError = true;\n })\n .then(() => { \n this.startUpVariablesLoaded = true;\n this.showContent = true;\n this.appConfig.refresh();\n });\n }\n\n onAttach() {\n this.isDetached = false;\n this.watcher.isActive = true;\n this.resetAppLocale();\n Object.values(this.fragments).forEach((f: any) => f.onAttach());\n this.cleanUpVariablesandActions.forEach((v: any) => v.unmute && v.unmute());\n this.targetWidget?.invokeEventCallback('onAttach', [null, this.proxy]);\n if (this.refreshdataonattach) {\n Promise.all(this.startUpVariables.map(s => this.Variables[s] && this.Variables[s].invoke()));\n }\n Object.values(this.Widgets).forEach((w: any) => {\n w.componentWillAttach && w.componentWillAttach();\n });\n }\n\n onDetach() {\n this.isDetached = true;\n this.watcher.isActive = false;\n Object.values(this.fragments).forEach((f: any) => f.onDetach());\n this.cleanUpVariablesandActions.forEach((v: any) => v.mute && v.mute());\n this.targetWidget?.invokeEventCallback('onDetach', [null, this.proxy]);\n Object.values(this.Widgets).forEach((w: any) => {\n w.componentWillDetach && w.componentWillDetach();\n });\n }\n\n onDestroy() {\n this.cleanUpVariablesandActions.forEach((v: any) => v.destroy());\n this.watcher.destroy();\n }\n\n refresh() {\n (injector.get('AppConfig') as AppConfig).refresh();\n }\n\n forceUpdate() {\n super.forceUpdate();\n Object.values(this.fragments).forEach((f: any) => (f as BaseFragment<any, any>).forceUpdate());\n }\n\n generateTestIdPrefix() {\n const testId = this.getTestId();\n return testId && (testId.split('')\n .reduce((a, v, i) => a + (v.charCodeAt(0) * (i + 1)), 0) + '');\n }\n\n render() {\n if (this.startUpVariablesLoaded) {\n this.autoUpdateVariables\n .forEach(value => this.Variables[value]?.invokeOnParamChange());\n }\n return this.isVisible() ? (\n <ParentContext.Consumer>\n {(parent) => {\n this.setParent(parent);\n this._showSkeleton = this.state.props.showskeleton !== false\n && (this.parent?._showSkeleton || this.state.props.showskeleton === true);\n let theme = this.theme;\n return (\n <ParentContext.Provider value={this}>\n <ThemeProvider value={theme}>\n <TextIdPrefixConsumer>\n {(testIdPrefix) => {\n this.testIdPrefix = testIdPrefix || '';\n return (\n <TestIdPrefixProvider value={this.generateTestIdPrefix() || ''}>\n <ToastConsumer>\n {(toastService: ToastService) => {\n this.toaster = toastService;\n return this.renderWidget(this.props);\n }}\n </ToastConsumer>\n </TestIdPrefixProvider>);\n }}\n </TextIdPrefixConsumer>\n </ThemeProvider>\n </ParentContext.Provider>);\n }}\n </ParentContext.Consumer>) : null;\n }\n\n\n}\n\n\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","Text","get","filter","isNil","TestIdPrefixProvider","TextIdPrefixConsumer","injector","toBoolean","toNumber","isFullPathUrl","BaseComponent","BaseProps","ParentContext","BASE_THEME","ThemeProvider","VariableEvents","default","_viewPort","EVENTS","viewportEvents","WmFormField","WmForm","ToastConsumer","spinnerService","AppI18nService","WmFormAction","WmLeftPanel","WmLabel","SkeletonAnimationProps","constructor","args","_defineProperty","FragmentProps","BaseFragment","Global","App","props","defaultProps","_injector$get","appLocale","messages","createElement","text","title","okButtonText","cancelButtonText","onOk","onCancel","onClose","appConfig","app","formatters","Actions","Object","assign","Variables","cleanup","push","subscribe","ORIENTATION_CHANGE","$new","$old","isDetached","targetWidget","invokeEventCallback","proxy","screenWidth","width","screenHeight","height","SIZE_CHANGE","_this$theme","theme","destroy","baseUrl","url","resourceBaseUrl","onDestroy","onContentReady","onReady","e","console","error","refresh","onComponentChange","w","onComponentInit","id","name","formWidgets","formFields","formActions","Widgets","buttonArray","parentFormRef","pid","forEach","ff","formKey","registerFormFields","registerFormActions","formfield","formRef","fragments","_w$_INSTANCE$styles","leftNavWidth","_INSTANCE","styles","root","revertLayoutToExpo50","_w$styles","flexDirection","onComponentDestroy","formfields","handleUrl","startsWith","getDateFormat","fmt","dateFormat","replace","getTimeFormat","timeFormat","getDateTimeFormat","dateTimeFormat","getCurrencySymbol","currencyCode","getStyle","classes","inlineStyles","trim","length","mergeStyle","getFormFieldStyles","formField","type","_formField$classname","suffix","classname","split","map","s","join","resetAppLocale","values","f","eval","fn","failOnError","call","val","componentWillUnmount","componentDidMount","memoize","key","o","_memoize","initVariableSpinner","variables","v","actions","concat","BEFORE_INVOKE","notify","spinnerContext","_spinnerCount","_spinnerMessage","forceUpdate","show","message","spinner","AFTER_INVOKE","Math","max","hide","onFragmentReady","fragmentVariables","fragmentActions","cleanUpVariablesandActions","invokeStartUpVariablesAndActions","startUpVariablesError","startUpActions","a","invoke","Promise","all","startUpVariables","catch","then","startUpVariablesLoaded","showContent","onAttach","_this$targetWidget","watcher","isActive","unmute","refreshdataonattach","componentWillAttach","onDetach","_this$targetWidget2","mute","componentWillDetach","generateTestIdPrefix","testId","getTestId","reduce","i","charCodeAt","render","autoUpdateVariables","value","_this$Variables$value","invokeOnParamChange","isVisible","Consumer","parent","_this$parent","setParent","_showSkeleton","state","showskeleton","Provider","testIdPrefix","toastService","toaster","renderWidget"],"sources":["base-fragment.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text } from 'react-native';\nimport { get, filter, isNil } from 'lodash';\n\nimport AppConfig from '@wavemaker-ai/app-rn-runtime/core/AppConfig';\nimport { Formatter } from '@wavemaker-ai/app-rn-runtime/core/formatters';\nimport { TestIdPrefixProvider, TextIdPrefixConsumer } from '@wavemaker-ai/app-rn-runtime/core/testid.provider';\nimport injector from '@wavemaker-ai/app-rn-runtime/core/injector';\nimport { toBoolean, toNumber, isFullPathUrl } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport { BaseComponent, BaseComponentState, BaseStyles, BaseProps, LifecycleListener, ParentContext } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport BASE_THEME, { Theme, ThemeProvider } from '@wavemaker-ai/app-rn-runtime/styles/theme';\nimport { BaseVariable, VariableEvents } from '@wavemaker-ai/app-rn-runtime/variables/base-variable';\nimport { default as _viewPort, EVENTS as viewportEvents } from '@wavemaker-ai/app-rn-runtime/core/viewport';\n\nimport NetworkService from '@wavemaker-ai/app-rn-runtime/core/network.service';\nimport httpService from '@wavemaker-ai/app-rn-runtime/variables/http.service';\nimport { isWebPreviewMode } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport App from './App';\nimport WmFormField from '@wavemaker-ai/app-rn-runtime/components/data/form/form-field/form-field.component';\nimport WmForm from '@wavemaker-ai/app-rn-runtime/components/data/form/form.component';\nimport { ToastConsumer, ToastService } from '@wavemaker-ai/app-rn-runtime/core/toast.service';\nimport spinnerService from '@wavemaker-ai/app-rn-runtime/runtime/services/app-spinner.service';\n\nimport AppI18nService from './services/app-i18n.service';\nimport { Watcher } from './watcher';\nimport WmFormAction from '@wavemaker-ai/app-rn-runtime/components/data/form/form-action/form-action.component';\nimport WmLottie from '@wavemaker-ai/app-rn-runtime/components/basic/lottie/lottie.component';\nimport { WmSkeletonStyles } from '@wavemaker-ai/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport WmLeftPanel from '@wavemaker-ai/app-rn-runtime/components/page/left-panel/left-panel.component';\nimport WmLabel from '../components/basic/label/label.component';\nimport BasePage from './base-page.component';\n\nexport class SkeletonAnimationProps extends BaseProps {\n skeletonanimationresource = \"\";\n skeletonanimationspeed = 1;\n}\n\nexport class FragmentProps extends SkeletonAnimationProps {}\n\nexport interface FragmentState<T extends FragmentProps> extends BaseComponentState<T> {\n \n}\n\nexport type FragmentStyles = BaseStyles & {\n skeleton?: WmSkeletonStyles\n};\nexport default abstract class BaseFragment<P extends FragmentProps, S extends FragmentState<P>> extends BaseComponent<P, S, FragmentStyles> implements LifecycleListener {\n public App: App;\n public onReady: Function = () => {};\n public baseUrl = '';\n public resourceBaseUrl = '';\n public targetWidget = null as unknown as BaseComponent<any, any, any>;\n public Widgets: any = {};\n public Variables: any = {};\n public theme: Theme = BASE_THEME;\n public appLocale: any = injector.get<AppConfig>('APP_CONFIG')?.appLocale?.messages ? injector.get<AppConfig>('APP_CONFIG').appLocale.messages : {};\n public startUpVariables: string[] = [];\n protected startUpVariablesLoaded = false;\n protected startUpVariablesError = false;\n private startUpActions: string[] = [];\n private autoUpdateVariables: string[] = [];\n public pullToRefreshVariables: string[] = [];\n private cleanUpVariablesandActions: BaseVariable<any>[] = [];\n public fragmentVariables: any = {};\n public fragmentActions: any = {};\n public Actions: any = {};\n public appConfig = injector.get<AppConfig>('APP_CONFIG');\n // Live getter (unlike copied Actions/Variables) so App.setProfile() changes show up immediately.\n public get Global(): any {\n return this.App.Global;\n }\n public cache = false;\n public refreshdataonattach= true;\n public isReactNativeApp = true;\n public fragments: any = {};\n public isDetached = false;\n public _memoize = {} as any;\n public toaster: any;\n public formatters: Map<string, Formatter>;\n public serviceDefinitions = {} as any;\n public Viewport = _viewPort;\n public loadingMessage = React.createElement(Text, [] as any, ['loading...']);\n public showContent = false;\n public notification = {\n text: '',\n title: '',\n okButtonText: '',\n cancelButtonText: '',\n onOk: () => {},\n onCancel: () => {},\n onClose: () => {}\n };\n public watcher: Watcher = null as any;\n\n\n constructor(props: P, defaultProps?: P) {\n super(props, null as any, defaultProps);\n this.App = this.appConfig.app;\n this.formatters = this.App.formatters;\n this.Actions = Object.assign({}, this.App.Actions);\n this.Variables = Object.assign({}, this.App.Variables);\n this.cleanup.push(_viewPort.subscribe(viewportEvents.ORIENTATION_CHANGE, ($new: any, $old: any) => {\n !this.isDetached && this.targetWidget && this.targetWidget.invokeEventCallback('onOrientationchange', [null, this.proxy,\n {screenWidth: _viewPort.width,\n screenHeight: _viewPort.height}]);\n }));\n this.cleanup.push(_viewPort.subscribe(viewportEvents.SIZE_CHANGE, ($new: any, $old: any) => {\n !this.isDetached && this.targetWidget && this.targetWidget.invokeEventCallback('onResize', [null, this.proxy,\n {screenWidth: $new.width,\n screenHeight: $new.height}]);\n }));\n this.cleanup.push(() => this.theme?.destroy());\n this.baseUrl = this.appConfig.url;\n this.resourceBaseUrl = this.appConfig.url;\n this.cleanup.push(() => this.onDestroy());\n }\n\n\n\n onContentReady() {\n try {\n this.onReady();\n } catch(e) {\n console.error(e);\n }\n this.appConfig.refresh();\n this.targetWidget && this.targetWidget.invokeEventCallback('onLoad', [null, this.proxy]);\n this.onContentReady = () => {};\n }\n\n onComponentChange(w: BaseComponent<any, any, any>) {\n this.refresh();\n }\n\n onComponentInit(w: BaseComponent<any, any, any>) {\n const id = w.props.id || w.props.name;\n let formWidgets: any, formFields: any, formActions: any;\n\n if (w instanceof WmForm) {\n if (!this.Widgets[id]) {\n this.Widgets[id] = w;\n }\n if (w.props.id) {\n const name: any = w.props.name;\n formWidgets = this.Widgets[name].formWidgets;\n formFields = this.Widgets[name].formFields;\n formActions = this.Widgets[name].buttonArray;\n this.Widgets[name].formFields = [];\n this.Widgets[name].buttonArray = [];\n this.Widgets[name].formWidgets = {};\n } else {\n formWidgets = this.Widgets[id].formWidgets;\n formFields = this.Widgets[id].formFields;\n formActions = this.Widgets[id].buttonArray;\n }\n this.Widgets[id] = w;\n if (w.parentFormRef) {\n let pid = w.parentFormRef.props.id || w.parentFormRef.props.name;\n formFields.forEach((ff: any) => {\n const formKey = ff.props.formKey || ff.props.name;\n this.Widgets[pid].formFields.push(ff);\n this.Widgets[pid].formWidgets[formKey] = formWidgets[ff.props.name];\n });\n }\n w.registerFormFields(formFields, formWidgets);\n w.registerFormActions(formActions);\n return;\n }\n if (w.props.formfield) {\n if (!this.Widgets[w.props.formRef]) {\n this.Widgets[w.props.formRef] = {formFields: [], formWidgets: {}};\n } else if (!this.Widgets[w.props.formRef].formFields) {\n this.Widgets[w.props.formRef].formFields = [];\n }\n if (!this.Widgets[w.props.formRef].formWidgets) {\n this.Widgets[w.props.formRef].formWidgets = {}\n }\n this.Widgets[w.props.formRef].formWidgets[w.props.name] = w;\n return;\n }\n if (w instanceof WmFormAction) {\n if (!this.Widgets[w.props.formKey]) {\n this.Widgets[w.props.formKey] = {};\n }\n if (!this.Widgets[w.props.formKey].buttonArray) {\n this.Widgets[w.props.formKey].buttonArray = [];\n }\n this.Widgets[w.props.formKey].buttonArray.push(w);\n return;\n }\n\n if (w instanceof WmFormField) {\n if (!this.Widgets[w.props.formRef]) {\n this.Widgets[w.props.formRef] = {};\n }\n if (!this.Widgets[w.props.formRef].formFields) {\n this.Widgets[w.props.formRef].formFields = [];\n }\n this.Widgets[w.props.formRef].formWidgets = this.Widgets[w.props.formRef].formWidgets || {};\n this.Widgets[w.props.formRef].formFields.push(w);\n return;\n }\n this.Widgets[id] = w;\n if (w instanceof BaseFragment && w !== this) {\n this.fragments[id] = w;\n }\n if (w instanceof WmLeftPanel) {\n this.appConfig.leftNavWidth = w._INSTANCE.styles?.root?.width;\n }\n // temporary fix need to be removed in Expo53\n if (this.appConfig.revertLayoutToExpo50 && w instanceof WmLabel) {\n w.styles?.root && (w.styles.root.flexDirection = \"row\");\n }\n }\n\n onComponentDestroy(w: BaseComponent<any, any, any>) {\n const id = w.props.id || w.props.name;\n delete this.Widgets[id];\n if (w instanceof BaseFragment) {\n delete this.fragments[id];\n }\n if (w instanceof WmForm) {\n w.formWidgets = {};\n w.formFields = [];\n w.formfields = {};\n }\n }\n\n handleUrl(url: string) {\n if (isFullPathUrl(url)) {\n return url;\n }\n return this.appConfig.url + (url.startsWith('/') ? '' : '/') + url;\n }\n\n getDateFormat(fmt?: string) {\n // getting formats from appLocale when app locale is loaded locally.\n return (fmt || AppI18nService.dateFormat || get(this.appConfig, 'appLocale.formats.date')).replace(/d/g, 'D').replace(/E/g, 'd').replace(/y/g, 'Y');\n }\n\n getTimeFormat(fmt?: string) {\n return fmt || AppI18nService.timeFormat || get(this.appConfig, 'appLocale.formats.time');\n }\n\n getDateTimeFormat(fmt?: string) {\n return (fmt || AppI18nService.dateTimeFormat || (get(this.appConfig, 'appLocale.formats.date') + ' ' + get(this.appConfig, 'appLocale.formats.time'))).replace(/d/g, 'D').replace(/E/g, 'd').replace(/y/g, 'Y');\n }\n\n getCurrencySymbol(fmt?: string) {\n return (fmt || AppI18nService.currencyCode || 'USD');\n }\n\n getStyle(classes: string, inlineStyles:any = {}) {\n if (classes && classes.trim().length > 0) {\n return this.theme.mergeStyle({}, this.theme.getStyle(classes), inlineStyles);\n }\n return inlineStyles;\n }\n\n getFormFieldStyles(formField: any, type: string){\n let suffix = ''\n switch(type){\n case 'label' :\n suffix = '_formLabel'\n break\n case 'commonField' :\n suffix = '-input'\n break\n default :\n ''\n }\n return formField?.classname?.trim()?.split(' ')?.map((s:string) => s.trim() + suffix).join(' ');\n }\n\n resetAppLocale() {\n this.appLocale = this.appConfig.appLocale.messages;\n Object.values(this.fragments).forEach((f: any) => (f as BaseFragment<any, any>).resetAppLocale());\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 toBoolean(val: any) {\n if (isNil(val)) {\n return false;\n }\n return toBoolean(val);\n }\n\n toNumber(val: any) {\n if (isNil(val)) {\n return val;\n }\n return toNumber(val);\n }\n\n componentWillUnmount() {\n super.componentWillUnmount();\n this.targetWidget && this.targetWidget.invokeEventCallback('onDestroy', [null, this.proxy]);\n }\n\n componentDidMount(): void {\n this.resetAppLocale();\n super.componentDidMount();\n }\n\n memoize(key: string, o: any) {\n if (!this._memoize[key]) {\n this._memoize[key] = o;\n }\n return this._memoize[key];\n }\n\n initVariableSpinner() {\n let variables = filter(this.Variables, (v: BaseVariable<any>) => !!get(v, 'config.spinnerContext'));\n const actions = filter(this.Actions, (v: BaseVariable<any>) => !!get(v, 'config.spinnerContext'));\n variables = variables.concat(actions);\n if (!variables.length) {\n return;\n }\n this.cleanup.push(...variables.map(v => {\n return ((v as BaseVariable<any>)\n .subscribe(VariableEvents.BEFORE_INVOKE, () => {\n this.App.notify(VariableEvents.BEFORE_INVOKE, v);\n const spinnerContext = get(v, 'config.spinnerContext');\n if(spinnerContext && spinnerContext !== 'page') {\n const targetWidget = this.Widgets[spinnerContext];\n if(targetWidget) {\n targetWidget._spinnerCount++;\n targetWidget._spinnerMessage = get(v, 'config.spinnerMessage');\n targetWidget.forceUpdate();\n }\n }else{\n spinnerService.show({\n message: get(v, 'config.spinnerMessage'),\n spinner: this.App.appConfig.spinner\n });\n }\n }))\n }));\n this.cleanup.push(...variables.map(v => {\n return ((v as BaseVariable<any>)\n .subscribe(VariableEvents.AFTER_INVOKE, () => {\n this.App.notify(VariableEvents.AFTER_INVOKE, v);\n const spinnerContext = get(v, 'config.spinnerContext');\n if (spinnerContext && spinnerContext !== 'page') {\n const targetWidget = this.Widgets[spinnerContext];\n if (targetWidget) {\n targetWidget._spinnerCount = Math.max(0, targetWidget._spinnerCount - 1);\n targetWidget.forceUpdate();\n }\n } else {\n spinnerService.hide();\n }\n }));\n }));\n }\n\n onFragmentReady() {\n this.cleanup.push(...Object.values({...this.Variables, ...this.Actions}).map(v => {\n return ((v as BaseVariable<any>)\n .subscribe(VariableEvents.AFTER_INVOKE, () => this.App.refresh()));\n }));\n (Object.values({...this.fragmentVariables, ...this.fragmentActions} as BaseVariable<any>))\n .map(v => {\n (v as BaseVariable<any>).subscribe(VariableEvents.BEFORE_INVOKE, () => {\n this.App.notify(VariableEvents.BEFORE_INVOKE, v);\n });\n (v as BaseVariable<any>).subscribe(VariableEvents.AFTER_INVOKE, () => {\n this.App.notify(VariableEvents.AFTER_INVOKE, v);\n });\n });\n this.cleanUpVariablesandActions.push(...Object.values({...this.fragmentVariables, ...this.fragmentActions} as BaseVariable<any>));\n return this.invokeStartUpVariablesAndActions();\n }\n\n invokeStartUpVariablesAndActions() {\n this.startUpVariablesError = false;\n this.initVariableSpinner();\n this.startUpActions.map(a => this.Actions[a] && this.Actions[a].invoke());\n return Promise.all(this.startUpVariables.map(s => this.Variables[s] && this.Variables[s].invoke()))\n .catch((error) => {\n // catch errors and show content\n console.error(error); \n this.startUpVariablesError = true;\n })\n .then(() => { \n this.startUpVariablesLoaded = true;\n this.showContent = true;\n this.appConfig.refresh();\n });\n }\n\n onAttach() {\n this.isDetached = false;\n this.watcher.isActive = true;\n this.resetAppLocale();\n Object.values(this.fragments).forEach((f: any) => f.onAttach());\n this.cleanUpVariablesandActions.forEach((v: any) => v.unmute && v.unmute());\n this.targetWidget?.invokeEventCallback('onAttach', [null, this.proxy]);\n if (this.refreshdataonattach) {\n Promise.all(this.startUpVariables.map(s => this.Variables[s] && this.Variables[s].invoke()));\n }\n Object.values(this.Widgets).forEach((w: any) => {\n w.componentWillAttach && w.componentWillAttach();\n });\n }\n\n onDetach() {\n this.isDetached = true;\n this.watcher.isActive = false;\n Object.values(this.fragments).forEach((f: any) => f.onDetach());\n this.cleanUpVariablesandActions.forEach((v: any) => v.mute && v.mute());\n this.targetWidget?.invokeEventCallback('onDetach', [null, this.proxy]);\n Object.values(this.Widgets).forEach((w: any) => {\n w.componentWillDetach && w.componentWillDetach();\n });\n }\n\n onDestroy() {\n this.cleanUpVariablesandActions.forEach((v: any) => v.destroy());\n this.watcher.destroy();\n }\n\n refresh() {\n (injector.get('AppConfig') as AppConfig).refresh();\n }\n\n forceUpdate() {\n super.forceUpdate();\n Object.values(this.fragments).forEach((f: any) => (f as BaseFragment<any, any>).forceUpdate());\n }\n\n generateTestIdPrefix() {\n const testId = this.getTestId();\n return testId && (testId.split('')\n .reduce((a, v, i) => a + (v.charCodeAt(0) * (i + 1)), 0) + '');\n }\n\n render() {\n if (this.startUpVariablesLoaded) {\n this.autoUpdateVariables\n .forEach(value => this.Variables[value]?.invokeOnParamChange());\n }\n return this.isVisible() ? (\n <ParentContext.Consumer>\n {(parent) => {\n this.setParent(parent);\n this._showSkeleton = this.state.props.showskeleton !== false\n && (this.parent?._showSkeleton || this.state.props.showskeleton === true);\n let theme = this.theme;\n return (\n <ParentContext.Provider value={this}>\n <ThemeProvider value={theme}>\n <TextIdPrefixConsumer>\n {(testIdPrefix) => {\n this.testIdPrefix = testIdPrefix || '';\n return (\n <TestIdPrefixProvider value={this.generateTestIdPrefix() || ''}>\n <ToastConsumer>\n {(toastService: ToastService) => {\n this.toaster = toastService;\n return this.renderWidget(this.props);\n }}\n </ToastConsumer>\n </TestIdPrefixProvider>);\n }}\n </TextIdPrefixConsumer>\n </ThemeProvider>\n </ParentContext.Provider>);\n }}\n </ParentContext.Consumer>) : null;\n }\n\n\n}\n\n\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,6 +9,7 @@ import injector from '@wavemaker-ai/app-rn-runtime/core/injector';
|
|
|
9
9
|
import StorageService from '@wavemaker-ai/app-rn-runtime/core/storage.service';
|
|
10
10
|
import WebProcessService from './webprocess.service';
|
|
11
11
|
import { isWebPreviewMode } from '@wavemaker-ai/app-rn-runtime/core/utils';
|
|
12
|
+
import { getBrowserConfig, getSsoBrowserFlags } from './browser.service';
|
|
12
13
|
var USER_ROLE = /*#__PURE__*/function (USER_ROLE) {
|
|
13
14
|
USER_ROLE["EVERYONE"] = "Everyone";
|
|
14
15
|
USER_ROLE["ANONYMOUS"] = "Anonymous";
|
|
@@ -18,6 +19,11 @@ var USER_ROLE = /*#__PURE__*/function (USER_ROLE) {
|
|
|
18
19
|
const authCookieStr = 'AUTH_COOKIE';
|
|
19
20
|
const XSRF_COOKIE_NAME = 'wm_xsrf_token';
|
|
20
21
|
const xsrf_header_name = 'X-WM-XSRF-TOKEN';
|
|
22
|
+
|
|
23
|
+
/** True when a 401 on an app page (not /services/) should run redirectToLogin. */
|
|
24
|
+
export function shouldRedirectToLoginOn401(url, status, appUrl, pageName) {
|
|
25
|
+
return !!url && !!appUrl && status === 401 && url.startsWith(appUrl) && !url.includes('/services/') && pageName !== 'Login';
|
|
26
|
+
}
|
|
21
27
|
class AppSecurityService {
|
|
22
28
|
constructor() {
|
|
23
29
|
_defineProperty(this, "securityConfig", void 0);
|
|
@@ -28,6 +34,8 @@ class AppSecurityService {
|
|
|
28
34
|
_defineProperty(this, "baseUrl", '');
|
|
29
35
|
_defineProperty(this, "defaultSecurityConfig", void 0);
|
|
30
36
|
_defineProperty(this, "landingPage", '');
|
|
37
|
+
// Prevents overlapping redirectToLogin() calls, which would race each other's WM_WEB_PROCESS cookie/key.
|
|
38
|
+
_defineProperty(this, "ssoLoginPromise", null);
|
|
31
39
|
_defineProperty(this, "getRegex", str => {
|
|
32
40
|
const wm_xsrf_token_index = str.indexOf('wm_xsrf_token') + 13; // 13 is the length of 'wm_xsrf_token' string
|
|
33
41
|
let index = wm_xsrf_token_index;
|
|
@@ -160,26 +168,39 @@ class AppSecurityService {
|
|
|
160
168
|
const authUrl = this.appConfig.url + '/services/security/ssologin';
|
|
161
169
|
if (Platform.OS === 'web') {
|
|
162
170
|
(window.parent || window).location.href = authUrl;
|
|
163
|
-
} else {
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
171
|
+
} else if (!this.ssoLoginPromise) {
|
|
172
|
+
this.ssoLoginPromise = new Promise(resolve => {
|
|
173
|
+
setTimeout(() => {
|
|
174
|
+
const {
|
|
175
|
+
useSystemBrowser,
|
|
176
|
+
incognito
|
|
177
|
+
} = getSsoBrowserFlags(getBrowserConfig(this.appConfig));
|
|
178
|
+
WebProcessService.execute('LOGIN', '/services/security/ssologin', useSystemBrowser, incognito).then(output => {
|
|
179
|
+
if (output) {
|
|
180
|
+
if (output.data) {
|
|
181
|
+
return this.formateData(`${output.data}`);
|
|
182
|
+
}
|
|
169
183
|
}
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
this.
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
184
|
+
return Promise.reject();
|
|
185
|
+
}).then(output => {
|
|
186
|
+
if (output[XSRF_COOKIE_NAME]) {
|
|
187
|
+
this.token = output[XSRF_COOKIE_NAME];
|
|
188
|
+
StorageService.setItem(XSRF_COOKIE_NAME, output[XSRF_COOKIE_NAME]);
|
|
189
|
+
}
|
|
190
|
+
}).then(() => {
|
|
191
|
+
this.appConfig.refresh(true);
|
|
192
|
+
}).then(() => this.load(this.baseUrl)).then(() => {
|
|
193
|
+
return this.getLoggedInUserDetails(this.baseUrl);
|
|
194
|
+
}).catch(error => {
|
|
195
|
+
var _this$appConfig$app, _this$appConfig$app$o;
|
|
196
|
+
console.error('[AppSecurityService] SSO login failed:', (error === null || error === void 0 ? void 0 : error.message) || error);
|
|
197
|
+
(_this$appConfig$app = this.appConfig.app) === null || _this$appConfig$app === void 0 || (_this$appConfig$app$o = _this$appConfig$app.onServiceError) === null || _this$appConfig$app$o === void 0 || _this$appConfig$app$o.call(_this$appConfig$app, (error === null || error === void 0 ? void 0 : error.message) || 'SSO login failed', error);
|
|
198
|
+
}).then(() => {
|
|
199
|
+
this.ssoLoginPromise = null;
|
|
200
|
+
resolve(undefined);
|
|
201
|
+
});
|
|
202
|
+
}, 1000);
|
|
203
|
+
});
|
|
183
204
|
}
|
|
184
205
|
} else {
|
|
185
206
|
var _this$securityConfig$, _this$appConfig$curre3;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","axios","each","includes","networkService","injector","StorageService","WebProcessService","isWebPreviewMode","USER_ROLE","authCookieStr","XSRF_COOKIE_NAME","xsrf_header_name","AppSecurityService","constructor","_defineProperty","str","wm_xsrf_token_index","indexOf","index","regExp","substring","RegExp","data","regex","getRegex","JSON","parse","replace","interceptors","request","use","config","onBeforeServiceCall","appConfig","getAppConfig","baseUrl","url","getXsrfToken","then","token","_config$url","startsWith","headers","Promise","resolve","getItem","xsrf_token","get","navigateToLandingPage","_this$appConfig$curre","_this$appConfig$logge","currentPage","goToPage","loggedInUser","landingPage","setTimeout","_this$appConfig$curre2","openUrl","appLogin","options","payload","formData","value","name","encodeURIComponent","defaults","withCredentials","post","baseURL","response","xsrfCookieValue","setItem","isLoggedIn","load","userData","getLoggedInUserDetails","useDefaultSuccessHandler","app","triggerStartUpVariables","_document","document","cookie","split","filter","item","length","wm_xsrf_token","isConnected","getServiceDefinitions","defaultSecurityConfig","details","securityConfig","isSecurityEnabled","securityEnabled","authenticated","_appConfig$appPropert","isAuthenticated","roles","userInfo","userRoles","userName","id","userId","tenantId","userAttributes","dataSet","appProperties","homePage","redirectToLogin","redirectTo","_this$securityConfig","loginConfig","type","authUrl","OS","window","parent","location","href","execute","output","formateData","reject","refresh","_this$securityConfig$","_this$appConfig$curre3","loginPage","pageName","appLogout","catch","_response$data","result","r","_response$data2","e","console","error","canUserAccessPage","_this$securityConfig2","res","status","matchRoles","widgetRoles","some","hasAccessToWidget","_this$loggedInUser$da","_this$loggedInUser$da2","_this$loggedInUser$da3","_this$loggedInUser$da4","widgetRolesArr","EVERYONE","ANONYMOUS","AUTHENTICATED","appSecurityService"],"sources":["app-security.service.tsx"],"sourcesContent":["import { Platform } from 'react-native';\nimport axios, { InternalAxiosRequestConfig, AxiosResponse } from 'axios';\nimport { each, includes } from 'lodash';\n\nimport networkService from '@wavemaker-ai/app-rn-runtime/core/network.service';\nimport injector from '@wavemaker-ai/app-rn-runtime/core/injector';\nimport AppConfig from '@wavemaker-ai/app-rn-runtime/core/AppConfig';\nimport StorageService from '@wavemaker-ai/app-rn-runtime/core/storage.service';\nimport { SecurityService } from '@wavemaker-ai/app-rn-runtime/core/security.service';\n\nimport WebProcessService from './webprocess.service';\nimport { isWebPreviewMode } from '@wavemaker-ai/app-rn-runtime/core/utils';\n\ndeclare const window: any;\n\ninterface LoggedInUserConfig {\n isAuthenticated: Boolean;\n isSecurityEnabled: Boolean;\n roles: Array<string>;\n name: String;\n id: String;\n tenantId: String;\n userAttributes: any;\n landingPage: string;\n}\n\nenum USER_ROLE {\n EVERYONE = 'Everyone',\n ANONYMOUS = 'Anonymous',\n AUTHENTICATED = 'Authenticated'\n}\n\nconst authCookieStr = 'AUTH_COOKIE';\nconst XSRF_COOKIE_NAME = 'wm_xsrf_token';\nconst xsrf_header_name = 'X-WM-XSRF-TOKEN';\n\nclass AppSecurityService implements SecurityService {\n\n securityConfig: any;\n isLoggedIn = false;\n loggedInUser: any = {};\n token: any;\n appConfig: any;\n baseUrl: string = '';\n defaultSecurityConfig: any;\n landingPage = '';\n\n constructor() {\n axios.interceptors.request.use((config: InternalAxiosRequestConfig) => this.onBeforeServiceCall(config));\n }\n\n getRegex = (str: string) =>{\n const wm_xsrf_token_index = str.indexOf('wm_xsrf_token') + 13; // 13 is the length of 'wm_xsrf_token' string\n let index = wm_xsrf_token_index;\n\n while(str[index] !== ':'){\n index++;\n }\n\n const regExp = str.substring(wm_xsrf_token_index, index);\n return new RegExp(regExp, \"g\");\n }\n\n formateData = (data: string) => {\n const regex = this.getRegex(data)\n return JSON.parse(data.replace(regex, \"\\\"\"));\n }\n\n onBeforeServiceCall(config: InternalAxiosRequestConfig) {\n if (!this.appConfig) {\n this.appConfig = this.getAppConfig();\n this.baseUrl = this.appConfig.url;\n }\n return this.getXsrfToken().then((token: string) => {\n if (config.url?.startsWith(this.baseUrl) && token) {\n if(config.headers) config.headers[xsrf_header_name] = token;\n }\n return config\n });\n }\n\n private getXsrfToken(): Promise<string> {\n if (this.token) {\n return Promise.resolve(this.token);\n }\n return StorageService.getItem(XSRF_COOKIE_NAME).then(xsrf_token => {\n this.token = xsrf_token;\n return this.token;\n });\n }\n\n private getAppConfig() {\n return injector.get<AppConfig>('APP_CONFIG');\n }\n\n public navigateToLandingPage() {\n this.appConfig.currentPage?.goToPage(\n this.appConfig.loggedInUser?.landingPage\n || this.appConfig.landingPage\n || 'Main', null, true);\n if (this.landingPage) {\n const landingPage = this.landingPage;\n this.landingPage = '';\n setTimeout(() => {\n this.appConfig.currentPage?.openUrl(landingPage);\n }, 100);\n }\n }\n\n public appLogin(options: any) {\n // encode all parameters\n let payload = '';\n each(options.formData, function (value, name) {\n payload += (payload ? '&' : '') + encodeURIComponent(name) + '=' + encodeURIComponent(value);\n });\n axios.defaults.withCredentials = true;\n return axios.post(options.baseURL + '/j_spring_security_check', payload, {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }}).then((response: AxiosResponse) => {\n const xsrfCookieValue = response.data ? response.data[XSRF_COOKIE_NAME] : '';\n this.token = xsrfCookieValue;\n StorageService.setItem(XSRF_COOKIE_NAME, xsrfCookieValue);\n this.isLoggedIn = true;\n }).then(() => this.load(options.baseURL))\n .then(async () => {\n const userData = await this.getLoggedInUserDetails(options.baseURL, options.useDefaultSuccessHandler);\n await this.appConfig.app.triggerStartUpVariables();\n return userData;\n });\n }\n\n public load(baseURL: string) {\n if (isWebPreviewMode()) {\n const token = document?.cookie?.split(';').filter(item => item.includes('wm_xsrf_token'))\n if (token && token.length > 0) {\n const wm_xsrf_token = token[0].split('=')[1];\n wm_xsrf_token && StorageService.setItem(XSRF_COOKIE_NAME, wm_xsrf_token);\n }\n }\n\n return Promise.resolve().then(() => {\n if (networkService.isConnected()) {\n return axios.get(baseURL + '/services/security/info')\n .then((response: AxiosResponse) => response.data);\n }\n return this.appConfig.getServiceDefinitions(this.appConfig.url)\n .then(() => Promise.resolve(this.defaultSecurityConfig));\n }).then((details: any) => {\n const loggedInUser = {} as LoggedInUserConfig;\n this.securityConfig = details || {};\n this.securityConfig.isSecurityEnabled = !!details?.securityEnabled;\n const appConfig = this.appConfig;\n if (typeof details !== 'string' && (!details.securityEnabled || details.authenticated)) {\n if (details.authenticated) {\n loggedInUser.isAuthenticated = details.authenticated;\n loggedInUser.isSecurityEnabled = details.authenticated;\n loggedInUser.roles = details.userInfo.userRoles;\n loggedInUser.name = details.userInfo.userName;\n loggedInUser.id = details.userInfo.userId;\n loggedInUser.tenantId = details.userInfo.tenantId;\n loggedInUser.userAttributes = details.userInfo.userAttributes;\n loggedInUser.landingPage = details.userInfo.landingPage;\n appConfig.loggedInUser = loggedInUser;\n this.loggedInUser.dataSet = loggedInUser;\n appConfig.landingPage = appConfig.appProperties?.homePage;\n }\n return appConfig.getServiceDefinitions(appConfig.url)\n .then(() => {\n return details;\n });\n } else {\n return appConfig.getServiceDefinitions(appConfig.url)\n .then(() => {\n this.redirectToLogin();\n });\n }\n });\n }\n\n private getLoggedInUserDetails(baseURL: string, useDefaultSuccessHandler: boolean = true) {\n if (!baseURL) {\n this.loggedInUser = {};\n return Promise.resolve({});\n }\n return this.load(baseURL);\n }\n\n\n public redirectToLogin(redirectTo?: string) {\n if (this.securityConfig?.loginConfig?.type === 'SSO') {\n const authUrl = this.appConfig.url + '/services/security/ssologin';\n if (Platform.OS === 'web') {\n (window.parent || window).location.href = authUrl;\n } else {\n setTimeout(() => {\n WebProcessService.execute('LOGIN', '/services/security/ssologin', false, true)\n .then((output: any) => {\n if (output) {\n if(output.data){\n return this.formateData(`${output.data}`);\n }\n }\n return Promise.reject();\n }).then((output: any) => {\n if (output[XSRF_COOKIE_NAME]) {\n this.token = output[XSRF_COOKIE_NAME];\n StorageService.setItem(XSRF_COOKIE_NAME, output[XSRF_COOKIE_NAME]);\n }\n }).then(() => {\n this.appConfig.refresh(true);\n }).then(() => this.load(this.baseUrl)).then(() => {\n return this.getLoggedInUserDetails(this.baseUrl);\n });\n }, 1000);\n }\n } else {\n const loginPage = this.securityConfig.loginConfig?.pageName || 'Login';\n if (redirectTo && !redirectTo.startsWith('#/'+ loginPage)) {\n this.landingPage = redirectTo;\n }\n injector.get<AppConfig>('APP_CONFIG').landingPage = loginPage;\n this.appConfig.currentPage?.goToPage(loginPage, null, true);\n }\n this.appConfig.refresh();\n }\n\n public appLogout(options: any) {\n return axios.post(options.baseURL + '/j_spring_security_logout', null, {\n withCredentials: true\n })\n .catch(() => {})\n .then((response) => {\n if(response?.data?.result){\n if (isWebPreviewMode()) {\n location.href = response.data.result;\n return new Promise(r => setTimeout(r, 5000));\n } else {\n return axios.get(`${response?.data?.result}`, {\n withCredentials: true,\n });\n }\n }\n return Promise.reject();\n })\n .catch((e) => {\n console.error(e);\n })\n .then(()=>{\n this.isLoggedIn = false;\n this.redirectToLogin();\n });\n }\n\n public canUserAccessPage(pageName: string) {\n if (this.baseUrl && this.securityConfig?.isSecurityEnabled) {\n return axios.get(this.baseUrl + `/pages/${pageName}/${pageName}.html`)\n .catch((res) => res)\n .then((res) => res.status === 200 || res.status === 304);\n } else {\n return Promise.resolve(true);\n }\n }\n\n private matchRoles(widgetRoles: Array<String>, userRoles: Array<String>) {\n return widgetRoles.some(function (item) {\n return includes(userRoles, item);\n });\n }\n\n public hasAccessToWidget(widgetRoles: String) {\n const widgetRolesArr = widgetRoles.split(',');\n // access the widget when 'Everyone' is chosen\n if (includes(widgetRolesArr, USER_ROLE.EVERYONE)) {\n return true;\n }\n\n // access the widget when 'Anonymous' is chosen and user is not authenticated\n if (includes(widgetRolesArr, USER_ROLE.ANONYMOUS) && !this.loggedInUser.dataSet?.isAuthenticated) {\n return true;\n }\n\n // access the widget when 'Only Authenticated Users' is chosen and user is authenticated\n if (includes(widgetRolesArr, USER_ROLE.AUTHENTICATED) && this.loggedInUser.dataSet?.isAuthenticated) {\n return true;\n }\n\n // access the widget when widget role and logged in user role matches\n return this.loggedInUser.dataSet?.isAuthenticated && this.matchRoles(widgetRolesArr, this.loggedInUser.dataSet?.roles);\n }\n}\n\nconst appSecurityService = new AppSecurityService();\n\nexport default appSecurityService;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["Platform","axios","each","includes","networkService","injector","StorageService","WebProcessService","isWebPreviewMode","getBrowserConfig","getSsoBrowserFlags","USER_ROLE","authCookieStr","XSRF_COOKIE_NAME","xsrf_header_name","shouldRedirectToLoginOn401","url","status","appUrl","pageName","startsWith","AppSecurityService","constructor","_defineProperty","str","wm_xsrf_token_index","indexOf","index","regExp","substring","RegExp","data","regex","getRegex","JSON","parse","replace","interceptors","request","use","config","onBeforeServiceCall","appConfig","getAppConfig","baseUrl","getXsrfToken","then","token","_config$url","headers","Promise","resolve","getItem","xsrf_token","get","navigateToLandingPage","_this$appConfig$curre","_this$appConfig$logge","currentPage","goToPage","loggedInUser","landingPage","setTimeout","_this$appConfig$curre2","openUrl","appLogin","options","payload","formData","value","name","encodeURIComponent","defaults","withCredentials","post","baseURL","response","xsrfCookieValue","setItem","isLoggedIn","load","userData","getLoggedInUserDetails","useDefaultSuccessHandler","app","triggerStartUpVariables","_document","document","cookie","split","filter","item","length","wm_xsrf_token","isConnected","getServiceDefinitions","defaultSecurityConfig","details","securityConfig","isSecurityEnabled","securityEnabled","authenticated","_appConfig$appPropert","isAuthenticated","roles","userInfo","userRoles","userName","id","userId","tenantId","userAttributes","dataSet","appProperties","homePage","redirectToLogin","redirectTo","_this$securityConfig","loginConfig","type","authUrl","OS","window","parent","location","href","ssoLoginPromise","useSystemBrowser","incognito","execute","output","formateData","reject","refresh","catch","error","_this$appConfig$app","_this$appConfig$app$o","console","message","onServiceError","call","undefined","_this$securityConfig$","_this$appConfig$curre3","loginPage","appLogout","_response$data","result","r","_response$data2","e","canUserAccessPage","_this$securityConfig2","res","matchRoles","widgetRoles","some","hasAccessToWidget","_this$loggedInUser$da","_this$loggedInUser$da2","_this$loggedInUser$da3","_this$loggedInUser$da4","widgetRolesArr","EVERYONE","ANONYMOUS","AUTHENTICATED","appSecurityService"],"sources":["app-security.service.tsx"],"sourcesContent":["import { Platform } from 'react-native';\nimport axios, { InternalAxiosRequestConfig, AxiosResponse } from 'axios';\nimport { each, includes } from 'lodash';\n\nimport networkService from '@wavemaker-ai/app-rn-runtime/core/network.service';\nimport injector from '@wavemaker-ai/app-rn-runtime/core/injector';\nimport AppConfig from '@wavemaker-ai/app-rn-runtime/core/AppConfig';\nimport StorageService from '@wavemaker-ai/app-rn-runtime/core/storage.service';\nimport { SecurityService } from '@wavemaker-ai/app-rn-runtime/core/security.service';\n\nimport WebProcessService from './webprocess.service';\nimport { isWebPreviewMode } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport { getBrowserConfig, getSsoBrowserFlags } from './browser.service';\n\n\ndeclare const window: any;\n\ninterface LoggedInUserConfig {\n isAuthenticated: Boolean;\n isSecurityEnabled: Boolean;\n roles: Array<string>;\n name: String;\n id: String;\n tenantId: String;\n userAttributes: any;\n landingPage: string;\n}\n\nenum USER_ROLE {\n EVERYONE = 'Everyone',\n ANONYMOUS = 'Anonymous',\n AUTHENTICATED = 'Authenticated'\n}\n\nconst authCookieStr = 'AUTH_COOKIE';\nconst XSRF_COOKIE_NAME = 'wm_xsrf_token';\nconst xsrf_header_name = 'X-WM-XSRF-TOKEN';\n\n/** True when a 401 on an app page (not /services/) should run redirectToLogin. */\nexport function shouldRedirectToLoginOn401(\n url: string | undefined,\n status: number | undefined,\n appUrl: string | undefined,\n pageName: string | undefined\n): boolean {\n return !!url\n && !!appUrl\n && status === 401\n && url.startsWith(appUrl)\n && !url.includes('/services/')\n && pageName !== 'Login';\n}\n\nclass AppSecurityService implements SecurityService {\n\n securityConfig: any;\n isLoggedIn = false;\n loggedInUser: any = {};\n token: any;\n appConfig: any;\n baseUrl: string = '';\n defaultSecurityConfig: any;\n landingPage = '';\n // Prevents overlapping redirectToLogin() calls, which would race each other's WM_WEB_PROCESS cookie/key.\n private ssoLoginPromise: Promise<any> | null = null;\n\n constructor() {\n axios.interceptors.request.use((config: InternalAxiosRequestConfig) => this.onBeforeServiceCall(config));\n }\n\n getRegex = (str: string) =>{\n const wm_xsrf_token_index = str.indexOf('wm_xsrf_token') + 13; // 13 is the length of 'wm_xsrf_token' string\n let index = wm_xsrf_token_index;\n\n while(str[index] !== ':'){\n index++;\n }\n\n const regExp = str.substring(wm_xsrf_token_index, index);\n return new RegExp(regExp, \"g\");\n }\n\n formateData = (data: string) => {\n const regex = this.getRegex(data)\n return JSON.parse(data.replace(regex, \"\\\"\"));\n }\n\n onBeforeServiceCall(config: InternalAxiosRequestConfig) {\n if (!this.appConfig) {\n this.appConfig = this.getAppConfig();\n this.baseUrl = this.appConfig.url;\n }\n return this.getXsrfToken().then((token: string) => {\n if (config.url?.startsWith(this.baseUrl) && token) {\n if(config.headers) config.headers[xsrf_header_name] = token;\n }\n return config\n });\n }\n\n private getXsrfToken(): Promise<string> {\n if (this.token) {\n return Promise.resolve(this.token);\n }\n return StorageService.getItem(XSRF_COOKIE_NAME).then(xsrf_token => {\n this.token = xsrf_token;\n return this.token;\n });\n }\n\n private getAppConfig() {\n return injector.get<AppConfig>('APP_CONFIG');\n }\n\n public navigateToLandingPage() {\n this.appConfig.currentPage?.goToPage(\n this.appConfig.loggedInUser?.landingPage\n || this.appConfig.landingPage\n || 'Main', null, true);\n if (this.landingPage) {\n const landingPage = this.landingPage;\n this.landingPage = '';\n setTimeout(() => {\n this.appConfig.currentPage?.openUrl(landingPage);\n }, 100);\n }\n }\n\n public appLogin(options: any) {\n // encode all parameters\n let payload = '';\n each(options.formData, function (value, name) {\n payload += (payload ? '&' : '') + encodeURIComponent(name) + '=' + encodeURIComponent(value);\n });\n axios.defaults.withCredentials = true;\n return axios.post(options.baseURL + '/j_spring_security_check', payload, {\n withCredentials: true,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }}).then((response: AxiosResponse) => {\n const xsrfCookieValue = response.data ? response.data[XSRF_COOKIE_NAME] : '';\n this.token = xsrfCookieValue;\n StorageService.setItem(XSRF_COOKIE_NAME, xsrfCookieValue);\n this.isLoggedIn = true;\n }).then(() => this.load(options.baseURL))\n .then(async () => {\n const userData = await this.getLoggedInUserDetails(options.baseURL, options.useDefaultSuccessHandler);\n await this.appConfig.app.triggerStartUpVariables();\n return userData;\n });\n }\n\n public load(baseURL: string) {\n if (isWebPreviewMode()) {\n const token = document?.cookie?.split(';').filter(item => item.includes('wm_xsrf_token'))\n if (token && token.length > 0) {\n const wm_xsrf_token = token[0].split('=')[1];\n wm_xsrf_token && StorageService.setItem(XSRF_COOKIE_NAME, wm_xsrf_token);\n }\n }\n\n return Promise.resolve().then(() => {\n if (networkService.isConnected()) {\n return axios.get(baseURL + '/services/security/info')\n .then((response: AxiosResponse) => response.data);\n }\n return this.appConfig.getServiceDefinitions(this.appConfig.url)\n .then(() => Promise.resolve(this.defaultSecurityConfig));\n }).then((details: any) => {\n const loggedInUser = {} as LoggedInUserConfig;\n this.securityConfig = details || {};\n this.securityConfig.isSecurityEnabled = !!details?.securityEnabled;\n const appConfig = this.appConfig;\n if (typeof details !== 'string' && (!details.securityEnabled || details.authenticated)) {\n if (details.authenticated) {\n loggedInUser.isAuthenticated = details.authenticated;\n loggedInUser.isSecurityEnabled = details.authenticated;\n loggedInUser.roles = details.userInfo.userRoles;\n loggedInUser.name = details.userInfo.userName;\n loggedInUser.id = details.userInfo.userId;\n loggedInUser.tenantId = details.userInfo.tenantId;\n loggedInUser.userAttributes = details.userInfo.userAttributes;\n loggedInUser.landingPage = details.userInfo.landingPage;\n appConfig.loggedInUser = loggedInUser;\n this.loggedInUser.dataSet = loggedInUser;\n appConfig.landingPage = appConfig.appProperties?.homePage;\n }\n return appConfig.getServiceDefinitions(appConfig.url)\n .then(() => {\n return details;\n });\n } else {\n return appConfig.getServiceDefinitions(appConfig.url)\n .then(() => {\n this.redirectToLogin();\n });\n }\n });\n }\n\n private getLoggedInUserDetails(baseURL: string, useDefaultSuccessHandler: boolean = true) {\n if (!baseURL) {\n this.loggedInUser = {};\n return Promise.resolve({});\n }\n return this.load(baseURL);\n }\n\n\n public redirectToLogin(redirectTo?: string) {\n if (this.securityConfig?.loginConfig?.type === 'SSO') {\n const authUrl = this.appConfig.url + '/services/security/ssologin';\n if (Platform.OS === 'web') {\n (window.parent || window).location.href = authUrl;\n } else if (!this.ssoLoginPromise) {\n this.ssoLoginPromise = new Promise((resolve) => {\n setTimeout(() => {\n const { useSystemBrowser, incognito } = getSsoBrowserFlags(getBrowserConfig(this.appConfig));\n WebProcessService.execute('LOGIN', '/services/security/ssologin', useSystemBrowser, incognito)\n .then((output: any) => {\n if (output) {\n if(output.data){\n return this.formateData(`${output.data}`);\n }\n }\n return Promise.reject();\n }).then((output: any) => {\n if (output[XSRF_COOKIE_NAME]) {\n this.token = output[XSRF_COOKIE_NAME];\n StorageService.setItem(XSRF_COOKIE_NAME, output[XSRF_COOKIE_NAME]);\n }\n }).then(() => {\n this.appConfig.refresh(true);\n }).then(() => this.load(this.baseUrl)).then(() => {\n return this.getLoggedInUserDetails(this.baseUrl);\n }).catch((error: any) => {\n console.error('[AppSecurityService] SSO login failed:', error?.message || error);\n this.appConfig.app?.onServiceError?.(error?.message || 'SSO login failed', error);\n }).then(() => {\n this.ssoLoginPromise = null;\n resolve(undefined);\n });\n }, 1000);\n });\n }\n } else {\n const loginPage = this.securityConfig.loginConfig?.pageName || 'Login';\n if (redirectTo && !redirectTo.startsWith('#/'+ loginPage)) {\n this.landingPage = redirectTo;\n }\n injector.get<AppConfig>('APP_CONFIG').landingPage = loginPage;\n this.appConfig.currentPage?.goToPage(loginPage, null, true);\n }\n this.appConfig.refresh();\n }\n\n public appLogout(options: any) {\n return axios.post(options.baseURL + '/j_spring_security_logout', null, {\n withCredentials: true\n })\n .catch(() => {})\n .then((response) => {\n if(response?.data?.result){\n if (isWebPreviewMode()) {\n location.href = response.data.result;\n return new Promise(r => setTimeout(r, 5000));\n } else {\n return axios.get(`${response?.data?.result}`, {\n withCredentials: true,\n });\n }\n }\n return Promise.reject();\n })\n .catch((e) => {\n console.error(e);\n })\n .then(()=>{\n this.isLoggedIn = false;\n this.redirectToLogin();\n });\n }\n\n public canUserAccessPage(pageName: string) {\n if (this.baseUrl && this.securityConfig?.isSecurityEnabled) {\n return axios.get(this.baseUrl + `/pages/${pageName}/${pageName}.html`)\n .catch((res) => res)\n .then((res) => res.status === 200 || res.status === 304);\n } else {\n return Promise.resolve(true);\n }\n }\n\n private matchRoles(widgetRoles: Array<String>, userRoles: Array<String>) {\n return widgetRoles.some(function (item) {\n return includes(userRoles, item);\n });\n }\n\n public hasAccessToWidget(widgetRoles: String) {\n const widgetRolesArr = widgetRoles.split(',');\n // access the widget when 'Everyone' is chosen\n if (includes(widgetRolesArr, USER_ROLE.EVERYONE)) {\n return true;\n }\n\n // access the widget when 'Anonymous' is chosen and user is not authenticated\n if (includes(widgetRolesArr, USER_ROLE.ANONYMOUS) && !this.loggedInUser.dataSet?.isAuthenticated) {\n return true;\n }\n\n // access the widget when 'Only Authenticated Users' is chosen and user is authenticated\n if (includes(widgetRolesArr, USER_ROLE.AUTHENTICATED) && this.loggedInUser.dataSet?.isAuthenticated) {\n return true;\n }\n\n // access the widget when widget role and logged in user role matches\n return this.loggedInUser.dataSet?.isAuthenticated && this.matchRoles(widgetRolesArr, this.loggedInUser.dataSet?.roles);\n }\n}\n\nconst appSecurityService = new AppSecurityService();\n\nexport default appSecurityService;\n"],"mappings":";;;AAAA,SAASA,QAAQ,QAAQ,cAAc;AACvC,OAAOC,KAAK,MAAqD,OAAO;AACxE,SAASC,IAAI,EAAEC,QAAQ,QAAQ,QAAQ;AAEvC,OAAOC,cAAc,MAAM,mDAAmD;AAC9E,OAAOC,QAAQ,MAAM,4CAA4C;AAEjE,OAAOC,cAAc,MAAM,mDAAmD;AAG9E,OAAOC,iBAAiB,MAAM,sBAAsB;AACpD,SAASC,gBAAgB,QAAQ,yCAAyC;AAC1E,SAASC,gBAAgB,EAAEC,kBAAkB,QAAQ,mBAAmB;AAAC,IAgBpEC,SAAS,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA,EAATA,SAAS;AAMd,MAAMC,aAAa,GAAG,aAAa;AACnC,MAAMC,gBAAgB,GAAG,eAAe;AACxC,MAAMC,gBAAgB,GAAG,iBAAiB;;AAE1C;AACA,OAAO,SAASC,0BAA0BA,CACxCC,GAAuB,EACvBC,MAA0B,EAC1BC,MAA0B,EAC1BC,QAA4B,EACnB;EACT,OAAO,CAAC,CAACH,GAAG,IACP,CAAC,CAACE,MAAM,IACRD,MAAM,KAAK,GAAG,IACdD,GAAG,CAACI,UAAU,CAACF,MAAM,CAAC,IACtB,CAACF,GAAG,CAACb,QAAQ,CAAC,YAAY,CAAC,IAC3BgB,QAAQ,KAAK,OAAO;AAC3B;AAEA,MAAME,kBAAkB,CAA4B;EAahDC,WAAWA,CAAA,EAAG;IAAAC,eAAA;IAAAA,eAAA,qBAVD,KAAK;IAAAA,eAAA,uBACE,CAAC,CAAC;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,kBAGJ,EAAE;IAAAA,eAAA;IAAAA,eAAA,sBAEN,EAAE;IAChB;IAAAA,eAAA,0BAC+C,IAAI;IAAAA,eAAA,mBAMvCC,GAAW,IAAI;MACzB,MAAMC,mBAAmB,GAAGD,GAAG,CAACE,OAAO,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC,CAAE;MAChE,IAAIC,KAAK,GAAGF,mBAAmB;MAE/B,OAAMD,GAAG,CAACG,KAAK,CAAC,KAAK,GAAG,EAAC;QACvBA,KAAK,EAAE;MACT;MAEA,MAAMC,MAAM,GAAGJ,GAAG,CAACK,SAAS,CAACJ,mBAAmB,EAAEE,KAAK,CAAC;MACxD,OAAO,IAAIG,MAAM,CAACF,MAAM,EAAE,GAAG,CAAC;IAChC,CAAC;IAAAL,eAAA,sBAEcQ,IAAY,IAAK;MAC9B,MAAMC,KAAK,GAAG,IAAI,CAACC,QAAQ,CAACF,IAAI,CAAC;MACjC,OAAOG,IAAI,CAACC,KAAK,CAACJ,IAAI,CAACK,OAAO,CAACJ,KAAK,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAlBC/B,KAAK,CAACoC,YAAY,CAACC,OAAO,CAACC,GAAG,CAAEC,MAAkC,IAAK,IAAI,CAACC,mBAAmB,CAACD,MAAM,CAAC,CAAC;EAC1G;EAmBAC,mBAAmBA,CAACD,MAAkC,EAAE;IACtD,IAAI,CAAC,IAAI,CAACE,SAAS,EAAE;MACnB,IAAI,CAACA,SAAS,GAAG,IAAI,CAACC,YAAY,CAAC,CAAC;MACpC,IAAI,CAACC,OAAO,GAAG,IAAI,CAACF,SAAS,CAAC1B,GAAG;IACnC;IACA,OAAO,IAAI,CAAC6B,YAAY,CAAC,CAAC,CAACC,IAAI,CAAEC,KAAa,IAAK;MAAA,IAAAC,WAAA;MACjD,IAAI,CAAAA,WAAA,GAAAR,MAAM,CAACxB,GAAG,cAAAgC,WAAA,eAAVA,WAAA,CAAY5B,UAAU,CAAC,IAAI,CAACwB,OAAO,CAAC,IAAIG,KAAK,EAAE;QACjD,IAAGP,MAAM,CAACS,OAAO,EAAET,MAAM,CAACS,OAAO,CAACnC,gBAAgB,CAAC,GAAGiC,KAAK;MAC7D;MACA,OAAOP,MAAM;IACf,CAAC,CAAC;EACJ;EAEQK,YAAYA,CAAA,EAAoB;IACtC,IAAI,IAAI,CAACE,KAAK,EAAE;MACd,OAAOG,OAAO,CAACC,OAAO,CAAC,IAAI,CAACJ,KAAK,CAAC;IACpC;IACA,OAAOzC,cAAc,CAAC8C,OAAO,CAACvC,gBAAgB,CAAC,CAACiC,IAAI,CAACO,UAAU,IAAI;MACjE,IAAI,CAACN,KAAK,GAAGM,UAAU;MACvB,OAAO,IAAI,CAACN,KAAK;IACnB,CAAC,CAAC;EACJ;EAEQJ,YAAYA,CAAA,EAAG;IACrB,OAAOtC,QAAQ,CAACiD,GAAG,CAAY,YAAY,CAAC;EAC9C;EAEOC,qBAAqBA,CAAA,EAAG;IAAA,IAAAC,qBAAA,EAAAC,qBAAA;IAC7B,CAAAD,qBAAA,OAAI,CAACd,SAAS,CAACgB,WAAW,cAAAF,qBAAA,eAA1BA,qBAAA,CAA4BG,QAAQ,CAClC,EAAAF,qBAAA,OAAI,CAACf,SAAS,CAACkB,YAAY,cAAAH,qBAAA,uBAA3BA,qBAAA,CAA6BI,WAAW,KACrC,IAAI,CAACnB,SAAS,CAACmB,WAAW,IAC1B,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC;IACxB,IAAI,IAAI,CAACA,WAAW,EAAE;MACpB,MAAMA,WAAW,GAAG,IAAI,CAACA,WAAW;MACpC,IAAI,CAACA,WAAW,GAAG,EAAE;MACrBC,UAAU,CAAC,MAAM;QAAA,IAAAC,sBAAA;QACf,CAAAA,sBAAA,OAAI,CAACrB,SAAS,CAACgB,WAAW,cAAAK,sBAAA,eAA1BA,sBAAA,CAA4BC,OAAO,CAACH,WAAW,CAAC;MAClD,CAAC,EAAE,GAAG,CAAC;IACT;EACF;EAEOI,QAAQA,CAACC,OAAY,EAAE;IAC1B;IACA,IAAIC,OAAO,GAAG,EAAE;IAChBjE,IAAI,CAACgE,OAAO,CAACE,QAAQ,EAAE,UAAUC,KAAK,EAAEC,IAAI,EAAE;MAC1CH,OAAO,IAAI,CAACA,OAAO,GAAG,GAAG,GAAG,EAAE,IAAII,kBAAkB,CAACD,IAAI,CAAC,GAAG,GAAG,GAAGC,kBAAkB,CAACF,KAAK,CAAC;IAChG,CAAC,CAAC;IACFpE,KAAK,CAACuE,QAAQ,CAACC,eAAe,GAAG,IAAI;IACrC,OAAOxE,KAAK,CAACyE,IAAI,CAACR,OAAO,CAACS,OAAO,GAAG,0BAA0B,EAAER,OAAO,EAAE;MACrEM,eAAe,EAAE,IAAI;MACrBxB,OAAO,EAAE;QACT,cAAc,EAAE;MAClB;IAAC,CAAC,CAAC,CAACH,IAAI,CAAE8B,QAAuB,IAAK;MACpC,MAAMC,eAAe,GAAGD,QAAQ,CAAC7C,IAAI,GAAG6C,QAAQ,CAAC7C,IAAI,CAAClB,gBAAgB,CAAC,GAAG,EAAE;MAC5E,IAAI,CAACkC,KAAK,GAAG8B,eAAe;MAC5BvE,cAAc,CAACwE,OAAO,CAACjE,gBAAgB,EAAEgE,eAAe,CAAC;MACzD,IAAI,CAACE,UAAU,GAAG,IAAI;IACxB,CAAC,CAAC,CAACjC,IAAI,CAAC,MAAM,IAAI,CAACkC,IAAI,CAACd,OAAO,CAACS,OAAO,CAAC,CAAC,CACxC7B,IAAI,CAAC,YAAY;MAChB,MAAMmC,QAAQ,GAAG,MAAM,IAAI,CAACC,sBAAsB,CAAChB,OAAO,CAACS,OAAO,EAAET,OAAO,CAACiB,wBAAwB,CAAC;MACrG,MAAM,IAAI,CAACzC,SAAS,CAAC0C,GAAG,CAACC,uBAAuB,CAAC,CAAC;MAClD,OAAOJ,QAAQ;IACjB,CAAC,CAAC;EACR;EAEOD,IAAIA,CAACL,OAAe,EAAE;IAC3B,IAAInE,gBAAgB,CAAC,CAAC,EAAE;MAAA,IAAA8E,SAAA;MACtB,MAAMvC,KAAK,IAAAuC,SAAA,GAAGC,QAAQ,cAAAD,SAAA,gBAAAA,SAAA,GAARA,SAAA,CAAUE,MAAM,cAAAF,SAAA,uBAAhBA,SAAA,CAAkBG,KAAK,CAAC,GAAG,CAAC,CAACC,MAAM,CAACC,IAAI,IAAIA,IAAI,CAACxF,QAAQ,CAAC,eAAe,CAAC,CAAC;MACzF,IAAI4C,KAAK,IAAIA,KAAK,CAAC6C,MAAM,GAAG,CAAC,EAAE;QAC7B,MAAMC,aAAa,GAAG9C,KAAK,CAAC,CAAC,CAAC,CAAC0C,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5CI,aAAa,IAAIvF,cAAc,CAACwE,OAAO,CAACjE,gBAAgB,EAAEgF,aAAa,CAAC;MAC1E;IACF;IAEA,OAAO3C,OAAO,CAACC,OAAO,CAAC,CAAC,CAACL,IAAI,CAAC,MAAM;MAClC,IAAI1C,cAAc,CAAC0F,WAAW,CAAC,CAAC,EAAE;QAChC,OAAO7F,KAAK,CAACqD,GAAG,CAACqB,OAAO,GAAG,yBAAyB,CAAC,CAClD7B,IAAI,CAAE8B,QAAuB,IAAKA,QAAQ,CAAC7C,IAAI,CAAC;MACrD;MACA,OAAO,IAAI,CAACW,SAAS,CAACqD,qBAAqB,CAAC,IAAI,CAACrD,SAAS,CAAC1B,GAAG,CAAC,CAC5D8B,IAAI,CAAC,MAAMI,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC6C,qBAAqB,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAClD,IAAI,CAAEmD,OAAY,IAAK;MACxB,MAAMrC,YAAY,GAAG,CAAC,CAAuB;MAC7C,IAAI,CAACsC,cAAc,GAAGD,OAAO,IAAI,CAAC,CAAC;MACnC,IAAI,CAACC,cAAc,CAACC,iBAAiB,GAAG,CAAC,EAACF,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEG,eAAe;MAClE,MAAM1D,SAAS,GAAG,IAAI,CAACA,SAAS;MAChC,IAAI,OAAOuD,OAAO,KAAK,QAAQ,KAAK,CAACA,OAAO,CAACG,eAAe,IAAIH,OAAO,CAACI,aAAa,CAAC,EAAE;QACpF,IAAIJ,OAAO,CAACI,aAAa,EAAE;UAAA,IAAAC,qBAAA;UACvB1C,YAAY,CAAC2C,eAAe,GAAGN,OAAO,CAACI,aAAa;UACpDzC,YAAY,CAACuC,iBAAiB,GAAGF,OAAO,CAACI,aAAa;UACtDzC,YAAY,CAAC4C,KAAK,GAAaP,OAAO,CAACQ,QAAQ,CAACC,SAAS;UACzD9C,YAAY,CAACU,IAAI,GAAc2B,OAAO,CAACQ,QAAQ,CAACE,QAAQ;UACxD/C,YAAY,CAACgD,EAAE,GAAgBX,OAAO,CAACQ,QAAQ,CAACI,MAAM;UACtDjD,YAAY,CAACkD,QAAQ,GAAUb,OAAO,CAACQ,QAAQ,CAACK,QAAQ;UACxDlD,YAAY,CAACmD,cAAc,GAAId,OAAO,CAACQ,QAAQ,CAACM,cAAc;UAC9DnD,YAAY,CAACC,WAAW,GAAIoC,OAAO,CAACQ,QAAQ,CAAC5C,WAAW;UACxDnB,SAAS,CAACkB,YAAY,GAAGA,YAAY;UACrC,IAAI,CAACA,YAAY,CAACoD,OAAO,GAAGpD,YAAY;UACxClB,SAAS,CAACmB,WAAW,IAAAyC,qBAAA,GAAG5D,SAAS,CAACuE,aAAa,cAAAX,qBAAA,uBAAvBA,qBAAA,CAAyBY,QAAQ;QAC7D;QACA,OAAOxE,SAAS,CAACqD,qBAAqB,CAACrD,SAAS,CAAC1B,GAAG,CAAC,CACpD8B,IAAI,CAAC,MAAM;UACV,OAAOmD,OAAO;QAChB,CAAC,CAAC;MACN,CAAC,MAAM;QACL,OAAOvD,SAAS,CAACqD,qBAAqB,CAACrD,SAAS,CAAC1B,GAAG,CAAC,CAClD8B,IAAI,CAAC,MAAM;UACV,IAAI,CAACqE,eAAe,CAAC,CAAC;QACxB,CAAC,CAAC;MACN;IACF,CAAC,CAAC;EACN;EAEQjC,sBAAsBA,CAACP,OAAe,EAAEQ,wBAAiC,GAAG,IAAI,EAAE;IACtF,IAAI,CAACR,OAAO,EAAE;MACV,IAAI,CAACf,YAAY,GAAG,CAAC,CAAC;MACtB,OAAOV,OAAO,CAACC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9B;IACA,OAAO,IAAI,CAAC6B,IAAI,CAACL,OAAO,CAAC;EAC7B;EAGOwC,eAAeA,CAACC,UAAmB,EAAE;IAAA,IAAAC,oBAAA;IAC1C,IAAI,EAAAA,oBAAA,OAAI,CAACnB,cAAc,cAAAmB,oBAAA,gBAAAA,oBAAA,GAAnBA,oBAAA,CAAqBC,WAAW,cAAAD,oBAAA,uBAAhCA,oBAAA,CAAkCE,IAAI,MAAM,KAAK,EAAE;MACrD,MAAMC,OAAO,GAAG,IAAI,CAAC9E,SAAS,CAAC1B,GAAG,GAAI,6BAA6B;MACnE,IAAIhB,QAAQ,CAACyH,EAAE,KAAK,KAAK,EAAE;QACzB,CAACC,MAAM,CAACC,MAAM,IAAID,MAAM,EAAEE,QAAQ,CAACC,IAAI,GAAGL,OAAO;MACnD,CAAC,MAAM,IAAI,CAAC,IAAI,CAACM,eAAe,EAAE;QAChC,IAAI,CAACA,eAAe,GAAG,IAAI5E,OAAO,CAAEC,OAAO,IAAK;UAC9CW,UAAU,CAAC,MAAM;YACf,MAAM;cAAEiE,gBAAgB;cAAEC;YAAU,CAAC,GAAGtH,kBAAkB,CAACD,gBAAgB,CAAC,IAAI,CAACiC,SAAS,CAAC,CAAC;YAC5FnC,iBAAiB,CAAC0H,OAAO,CAAC,OAAO,EAAE,6BAA6B,EAAEF,gBAAgB,EAAEC,SAAS,CAAC,CAC7FlF,IAAI,CAAEoF,MAAW,IAAK;cACrB,IAAIA,MAAM,EAAE;gBACV,IAAGA,MAAM,CAACnG,IAAI,EAAC;kBACb,OAAO,IAAI,CAACoG,WAAW,CAAC,GAAGD,MAAM,CAACnG,IAAI,EAAE,CAAC;gBAC3C;cACF;cACA,OAAOmB,OAAO,CAACkF,MAAM,CAAC,CAAC;YACzB,CAAC,CAAC,CAACtF,IAAI,CAAEoF,MAAW,IAAK;cACvB,IAAIA,MAAM,CAACrH,gBAAgB,CAAC,EAAE;gBAC5B,IAAI,CAACkC,KAAK,GAAGmF,MAAM,CAACrH,gBAAgB,CAAC;gBACrCP,cAAc,CAACwE,OAAO,CAACjE,gBAAgB,EAAEqH,MAAM,CAACrH,gBAAgB,CAAC,CAAC;cACpE;YACF,CAAC,CAAC,CAACiC,IAAI,CAAC,MAAM;cACZ,IAAI,CAACJ,SAAS,CAAC2F,OAAO,CAAC,IAAI,CAAC;YAC9B,CAAC,CAAC,CAACvF,IAAI,CAAC,MAAM,IAAI,CAACkC,IAAI,CAAC,IAAI,CAACpC,OAAO,CAAC,CAAC,CAACE,IAAI,CAAC,MAAM;cAChD,OAAO,IAAI,CAACoC,sBAAsB,CAAC,IAAI,CAACtC,OAAO,CAAC;YAClD,CAAC,CAAC,CAAC0F,KAAK,CAAEC,KAAU,IAAK;cAAA,IAAAC,mBAAA,EAAAC,qBAAA;cACvBC,OAAO,CAACH,KAAK,CAAC,wCAAwC,EAAE,CAAAA,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEI,OAAO,KAAIJ,KAAK,CAAC;cAChF,CAAAC,mBAAA,OAAI,CAAC9F,SAAS,CAAC0C,GAAG,cAAAoD,mBAAA,gBAAAC,qBAAA,GAAlBD,mBAAA,CAAoBI,cAAc,cAAAH,qBAAA,eAAlCA,qBAAA,CAAAI,IAAA,CAAAL,mBAAA,EAAqC,CAAAD,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEI,OAAO,KAAI,kBAAkB,EAAEJ,KAAK,CAAC;YACnF,CAAC,CAAC,CAACzF,IAAI,CAAC,MAAM;cACZ,IAAI,CAACgF,eAAe,GAAG,IAAI;cAC3B3E,OAAO,CAAC2F,SAAS,CAAC;YACpB,CAAC,CAAC;UACJ,CAAC,EAAE,IAAI,CAAC;QACV,CAAC,CAAC;MACJ;IACF,CAAC,MAAM;MAAA,IAAAC,qBAAA,EAAAC,sBAAA;MACL,MAAMC,SAAS,GAAG,EAAAF,qBAAA,OAAI,CAAC7C,cAAc,CAACoB,WAAW,cAAAyB,qBAAA,uBAA/BA,qBAAA,CAAiC5H,QAAQ,KAAI,OAAO;MACtE,IAAIiG,UAAU,IAAI,CAACA,UAAU,CAAChG,UAAU,CAAC,IAAI,GAAE6H,SAAS,CAAC,EAAE;QACzD,IAAI,CAACpF,WAAW,GAAGuD,UAAU;MAC/B;MACA/G,QAAQ,CAACiD,GAAG,CAAY,YAAY,CAAC,CAACO,WAAW,GAAGoF,SAAS;MAC7D,CAAAD,sBAAA,OAAI,CAACtG,SAAS,CAACgB,WAAW,cAAAsF,sBAAA,eAA1BA,sBAAA,CAA4BrF,QAAQ,CAACsF,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC;IAC7D;IACA,IAAI,CAACvG,SAAS,CAAC2F,OAAO,CAAC,CAAC;EAC1B;EAEOa,SAASA,CAAChF,OAAY,EAAE;IAC7B,OAAOjE,KAAK,CAACyE,IAAI,CAACR,OAAO,CAACS,OAAO,GAAG,2BAA2B,EAAE,IAAI,EAAE;MACnEF,eAAe,EAAE;IACrB,CAAC,CAAC,CACD6D,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CACfxF,IAAI,CAAE8B,QAAQ,IAAK;MAAA,IAAAuE,cAAA;MAChB,IAAGvE,QAAQ,aAARA,QAAQ,gBAAAuE,cAAA,GAARvE,QAAQ,CAAE7C,IAAI,cAAAoH,cAAA,eAAdA,cAAA,CAAgBC,MAAM,EAAC;QACxB,IAAI5I,gBAAgB,CAAC,CAAC,EAAE;UACtBoH,QAAQ,CAACC,IAAI,GAAGjD,QAAQ,CAAC7C,IAAI,CAACqH,MAAM;UACpC,OAAO,IAAIlG,OAAO,CAACmG,CAAC,IAAIvF,UAAU,CAACuF,CAAC,EAAE,IAAI,CAAC,CAAC;QAC9C,CAAC,MAAM;UAAA,IAAAC,eAAA;UACL,OAAOrJ,KAAK,CAACqD,GAAG,CAAC,GAAGsB,QAAQ,aAARA,QAAQ,gBAAA0E,eAAA,GAAR1E,QAAQ,CAAE7C,IAAI,cAAAuH,eAAA,uBAAdA,eAAA,CAAgBF,MAAM,EAAE,EAAE;YAC5C3E,eAAe,EAAE;UACnB,CAAC,CAAC;QACJ;MACF;MACA,OAAOvB,OAAO,CAACkF,MAAM,CAAC,CAAC;IAC3B,CAAC,CAAC,CACDE,KAAK,CAAEiB,CAAC,IAAK;MACZb,OAAO,CAACH,KAAK,CAACgB,CAAC,CAAC;IAClB,CAAC,CAAC,CACDzG,IAAI,CAAC,MAAI;MACR,IAAI,CAACiC,UAAU,GAAG,KAAK;MACvB,IAAI,CAACoC,eAAe,CAAC,CAAC;IACxB,CAAC,CAAC;EACJ;EAEOqC,iBAAiBA,CAACrI,QAAgB,EAAE;IAAA,IAAAsI,qBAAA;IACzC,IAAI,IAAI,CAAC7G,OAAO,KAAA6G,qBAAA,GAAI,IAAI,CAACvD,cAAc,cAAAuD,qBAAA,eAAnBA,qBAAA,CAAqBtD,iBAAiB,EAAE;MAC1D,OAAOlG,KAAK,CAACqD,GAAG,CAAC,IAAI,CAACV,OAAO,GAAG,UAAUzB,QAAQ,IAAIA,QAAQ,OAAO,CAAC,CACnEmH,KAAK,CAAEoB,GAAG,IAAKA,GAAG,CAAC,CACnB5G,IAAI,CAAE4G,GAAG,IAAKA,GAAG,CAACzI,MAAM,KAAK,GAAG,IAAIyI,GAAG,CAACzI,MAAM,KAAK,GAAG,CAAC;IAC5D,CAAC,MAAM;MACL,OAAOiC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;IAC9B;EACF;EAEQwG,UAAUA,CAACC,WAA0B,EAAElD,SAAwB,EAAE;IACrE,OAAOkD,WAAW,CAACC,IAAI,CAAC,UAAUlE,IAAI,EAAE;MACpC,OAAOxF,QAAQ,CAACuG,SAAS,EAAEf,IAAI,CAAC;IACpC,CAAC,CAAC;EACN;EAEOmE,iBAAiBA,CAACF,WAAmB,EAAE;IAAA,IAAAG,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA;IAC1C,MAAMC,cAAc,GAAGP,WAAW,CAACnE,KAAK,CAAC,GAAG,CAAC;IAC7C;IACA,IAAItF,QAAQ,CAACgK,cAAc,EAAExJ,SAAS,CAACyJ,QAAQ,CAAC,EAAE;MAC9C,OAAO,IAAI;IACf;;IAEA;IACA,IAAIjK,QAAQ,CAACgK,cAAc,EAAExJ,SAAS,CAAC0J,SAAS,CAAC,IAAI,GAAAN,qBAAA,GAAC,IAAI,CAACnG,YAAY,CAACoD,OAAO,cAAA+C,qBAAA,eAAzBA,qBAAA,CAA2BxD,eAAe,GAAE;MAC9F,OAAO,IAAI;IACf;;IAEA;IACA,IAAIpG,QAAQ,CAACgK,cAAc,EAAExJ,SAAS,CAAC2J,aAAa,CAAC,KAAAN,sBAAA,GAAI,IAAI,CAACpG,YAAY,CAACoD,OAAO,cAAAgD,sBAAA,eAAzBA,sBAAA,CAA2BzD,eAAe,EAAE;MACjG,OAAO,IAAI;IACf;;IAEA;IACA,OAAO,EAAA0D,sBAAA,OAAI,CAACrG,YAAY,CAACoD,OAAO,cAAAiD,sBAAA,uBAAzBA,sBAAA,CAA2B1D,eAAe,KAAI,IAAI,CAACoD,UAAU,CAACQ,cAAc,GAAAD,sBAAA,GAAE,IAAI,CAACtG,YAAY,CAACoD,OAAO,cAAAkD,sBAAA,uBAAzBA,sBAAA,CAA2B1D,KAAK,CAAC;EAC1H;AACJ;AAEA,MAAM+D,kBAAkB,GAAG,IAAIlJ,kBAAkB,CAAC,CAAC;AAEnD,eAAekJ,kBAAkB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AUTH_CALLBACK_PATH"],"sources":["browser.constants.ts"],"sourcesContent":["/** Prefix of the callback path: `${appId}://${AUTH_CALLBACK_PATH}${process}` — the only shape WM Server produces. */\nexport const AUTH_CALLBACK_PATH = 'services/webprocess/';\n"],"mappings":"AAAA;AACA,OAAO,MAAMA,kBAAkB,GAAG,sBAAsB","ignoreList":[]}
|