@wavemaker/app-rn-runtime 11.9.4-1.5998 → 11.9.4-1.6000
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 getServiceDefinitions: any;\n loggedInUser: any;\n selectedLocale: string;\n
|
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 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}"],"mappings":"","ignoreList":[]}
|
app-rn-runtime/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@wavemaker/app-rn-runtime",
|
3
|
-
"version": "11.9.4-1.
|
3
|
+
"version": "11.9.4-1.6000",
|
4
4
|
"description": "''",
|
5
5
|
"main": "index",
|
6
6
|
"module": "index",
|
@@ -52,7 +52,7 @@
|
|
52
52
|
"@react-navigation/drawer": "6.6.3",
|
53
53
|
"@react-navigation/native": "6.1.7",
|
54
54
|
"@react-navigation/stack": "6.3.29",
|
55
|
-
"@wavemaker/variables": "11.9.4-1.
|
55
|
+
"@wavemaker/variables": "11.9.4-1.6000",
|
56
56
|
"axios": "1.6.8",
|
57
57
|
"color": "4.2.3",
|
58
58
|
"cross-env": "7.0.3",
|
@@ -141,7 +141,7 @@
|
|
141
141
|
"typescript": "5.1.3",
|
142
142
|
"victory-native": "37.3.2",
|
143
143
|
"yargs": "16.2.0",
|
144
|
-
"@wavemaker/variables": "11.9.4-1.
|
144
|
+
"@wavemaker/variables": "11.9.4-1.6000"
|
145
145
|
},
|
146
146
|
"jest": {
|
147
147
|
"preset": "jest-expo",
|
@@ -18,6 +18,7 @@ import spinnerService from '@wavemaker/app-rn-runtime/runtime/services/app-spinn
|
|
18
18
|
import AppI18nService from './services/app-i18n.service';
|
19
19
|
import WmFormAction from '@wavemaker/app-rn-runtime/components/data/form/form-action/form-action.component';
|
20
20
|
import WmLeftPanel from '@wavemaker/app-rn-runtime/components/page/left-panel/left-panel.component';
|
21
|
+
import WmLabel from '../components/basic/label/label.component';
|
21
22
|
export class SkeletonAnimationProps extends BaseProps {
|
22
23
|
constructor(...args) {
|
23
24
|
super(...args);
|
@@ -183,6 +184,11 @@ export default class BaseFragment extends BaseComponent {
|
|
183
184
|
var _w$_INSTANCE$styles;
|
184
185
|
this.appConfig.leftNavWidth = (_w$_INSTANCE$styles = w._INSTANCE.styles) === null || _w$_INSTANCE$styles === void 0 || (_w$_INSTANCE$styles = _w$_INSTANCE$styles.root) === null || _w$_INSTANCE$styles === void 0 ? void 0 : _w$_INSTANCE$styles.width;
|
185
186
|
}
|
187
|
+
// temporary fix need to be removed in Expo53
|
188
|
+
if (this.appConfig.revertLayoutToExpo50 && w instanceof WmLabel) {
|
189
|
+
var _w$styles;
|
190
|
+
((_w$styles = w.styles) === null || _w$styles === void 0 ? void 0 : _w$styles.root) && (w.styles.root.flexDirection = "row");
|
191
|
+
}
|
186
192
|
}
|
187
193
|
onComponentDestroy(w) {
|
188
194
|
const id = w.props.id || w.props.name;
|
@@ -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","SkeletonAnimationProps","constructor","args","_defineProperty","FragmentProps","BaseFragment","props","defaultProps","createElement","text","title","okButtonText","cancelButtonText","onOk","onCancel","onClose","App","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","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","appLocale","messages","values","f","eval","fn","failOnError","call","val","componentWillUnmount","componentDidMount","memoize","key","o","_memoize","initVariableSpinner","variables","v","actions","concat","BEFORE_INVOKE","notify","show","message","spinner","AFTER_INVOKE","hide","onFragmentReady","fragmentVariables","fragmentActions","cleanUpVariablesandActions","startUpActions","a","invoke","Promise","all","startUpVariables","catch","then","startUpVariablesLoaded","showContent","onAttach","_this$targetWidget","watcher","isActive","unmute","refreshdataonattach","componentWillAttach","onDetach","_this$targetWidget2","mute","componentWillDetach","forceUpdate","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, View } from 'react-native';\nimport { get, filter, isNil } from 'lodash';\n\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport { Formatter } from '@wavemaker/app-rn-runtime/core/formatters';\nimport { TestIdPrefixProvider, TextIdPrefixConsumer } from '@wavemaker/app-rn-runtime/core/testid.provider';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport { toBoolean, toNumber, isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\nimport { BaseComponent, BaseComponentState, BaseStyles, BaseProps, LifecycleListener, ParentContext } from '@wavemaker/app-rn-runtime/core/base.component';\nimport BASE_THEME, { Theme, ThemeProvider } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseVariable, VariableEvents } from '@wavemaker/app-rn-runtime/variables/base-variable';\nimport { default as _viewPort, EVENTS as viewportEvents } from '@wavemaker/app-rn-runtime/core/viewport';\nimport App from './App';\nimport WmFormField from '@wavemaker/app-rn-runtime/components/data/form/form-field/form-field.component';\nimport WmForm from '@wavemaker/app-rn-runtime/components/data/form/form.component';\nimport { ToastConsumer, ToastService } from '@wavemaker/app-rn-runtime/core/toast.service';\nimport spinnerService from '@wavemaker/app-rn-runtime/runtime/services/app-spinner.service';\n\nimport AppI18nService from './services/app-i18n.service';\nimport { Watcher } from './watcher';\nimport WmFormAction from '@wavemaker/app-rn-runtime/components/data/form/form-action/form-action.component';\nimport WmLottie from '@wavemaker/app-rn-runtime/components/basic/lottie/lottie.component';\nimport { WmSkeletonStyles } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport WmLeftPanel from '@wavemaker/app-rn-runtime/components/page/left-panel/left-panel.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\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 = {};\n private startUpVariables: string[] = [];\n protected startUpVariablesLoaded = 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 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 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 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 }\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 spinnerService.show({\n message: get(v, 'config.spinnerMessage'),\n spinner: this.App.appConfig.spinner\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 spinnerService.hide();\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.initVariableSpinner();\n this.cleanUpVariablesandActions.push(...Object.values({...this.fragmentVariables, ...this.fragmentActions} as BaseVariable<any>));\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 })\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","props","defaultProps","createElement","text","title","okButtonText","cancelButtonText","onOk","onCancel","onClose","App","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","appLocale","messages","values","f","eval","fn","failOnError","call","val","componentWillUnmount","componentDidMount","memoize","key","o","_memoize","initVariableSpinner","variables","v","actions","concat","BEFORE_INVOKE","notify","show","message","spinner","AFTER_INVOKE","hide","onFragmentReady","fragmentVariables","fragmentActions","cleanUpVariablesandActions","startUpActions","a","invoke","Promise","all","startUpVariables","catch","then","startUpVariablesLoaded","showContent","onAttach","_this$targetWidget","watcher","isActive","unmute","refreshdataonattach","componentWillAttach","onDetach","_this$targetWidget2","mute","componentWillDetach","forceUpdate","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, View } from 'react-native';\nimport { get, filter, isNil } from 'lodash';\n\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport { Formatter } from '@wavemaker/app-rn-runtime/core/formatters';\nimport { TestIdPrefixProvider, TextIdPrefixConsumer } from '@wavemaker/app-rn-runtime/core/testid.provider';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport { toBoolean, toNumber, isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\nimport { BaseComponent, BaseComponentState, BaseStyles, BaseProps, LifecycleListener, ParentContext } from '@wavemaker/app-rn-runtime/core/base.component';\nimport BASE_THEME, { Theme, ThemeProvider } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseVariable, VariableEvents } from '@wavemaker/app-rn-runtime/variables/base-variable';\nimport { default as _viewPort, EVENTS as viewportEvents } from '@wavemaker/app-rn-runtime/core/viewport';\nimport App from './App';\nimport WmFormField from '@wavemaker/app-rn-runtime/components/data/form/form-field/form-field.component';\nimport WmForm from '@wavemaker/app-rn-runtime/components/data/form/form.component';\nimport { ToastConsumer, ToastService } from '@wavemaker/app-rn-runtime/core/toast.service';\nimport spinnerService from '@wavemaker/app-rn-runtime/runtime/services/app-spinner.service';\n\nimport AppI18nService from './services/app-i18n.service';\nimport { Watcher } from './watcher';\nimport WmFormAction from '@wavemaker/app-rn-runtime/components/data/form/form-action/form-action.component';\nimport WmLottie from '@wavemaker/app-rn-runtime/components/basic/lottie/lottie.component';\nimport { WmSkeletonStyles } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport WmLeftPanel from '@wavemaker/app-rn-runtime/components/page/left-panel/left-panel.component';\nimport WmLabel from '../components/basic/label/label.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\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 = {};\n private startUpVariables: string[] = [];\n protected startUpVariablesLoaded = 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 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 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 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 spinnerService.show({\n message: get(v, 'config.spinnerMessage'),\n spinner: this.App.appConfig.spinner\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 spinnerService.hide();\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.initVariableSpinner();\n this.cleanUpVariablesandActions.push(...Object.values({...this.fragmentVariables, ...this.fragmentActions} as BaseVariable<any>));\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 })\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":[]}
|
app-rn-runtime/styles/theme.js
CHANGED
@@ -43,9 +43,9 @@ export class Theme {
|
|
43
43
|
_defineProperty(this, "styles", {});
|
44
44
|
_defineProperty(this, "cache", {});
|
45
45
|
_defineProperty(this, "traceEnabled", false);
|
46
|
-
_defineProperty(this, "
|
46
|
+
_defineProperty(this, "revertLayoutToExpo50", void 0);
|
47
47
|
_defineProperty(this, "styleGenerators", []);
|
48
|
-
this.
|
48
|
+
this.revertLayoutToExpo50 = ((_this$getAppConfig = this.getAppConfig()) === null || _this$getAppConfig === void 0 ? void 0 : _this$getAppConfig.revertLayoutToExpo50) || false;
|
49
49
|
if (parent) {
|
50
50
|
this.traceEnabled = parent.traceEnabled;
|
51
51
|
} else {
|
@@ -177,7 +177,7 @@ export class Theme {
|
|
177
177
|
style['paddingBottom'] = style['paddingBottom'] || style['padding'];
|
178
178
|
delete style['padding'];
|
179
179
|
}
|
180
|
-
if (this.
|
180
|
+
if (this.revertLayoutToExpo50 && !isNil(style['flexDirection']) && style['flexDirection'] === 'row-reverse') {
|
181
181
|
if (!isNil(style['paddingLeft']) || !isNil(style['paddingRight'])) {
|
182
182
|
if (!isNil(style['paddingLeft']) && !isNil(style['paddingRight'])) {
|
183
183
|
[style['paddingLeft'], style['paddingRight']] = [style['paddingRight'], style['paddingLeft']];
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["cloneDeep","isNil","forEach","flatten","isArray","isEmpty","isObject","isString","get","reverse","React","camelCase","Dimensions","deepCopy","isWebPreviewMode","EventNotifier","ViewPort","EVENTS","ViewPortEvents","MediaQueryList","ThemeVariables","getErrorMessage","getStyleReference","isValidStyleProp","injector","DEFAULT_CLASS","window","matchMedia","query","DEVICE_BREAK_POINTS","ThemeEvent","Theme","constructor","parent","name","_this$getAppConfig","_defineProperty","revertLayoutFixes","getAppConfig","traceEnabled","enableTrace","flag","reset","children","t","subscribe","event","fn","eventNotifer","notify","replaceVariables","val","match","s","variableName","substring","length","replace","INSTANCE","clearCache","cache","registerStyle","styleGenerators","push","addStyle","bind","checkStyleProperties","value","Object","keys","map","k","console","log","extend","style","styles","getStyle","addTrace","styleName","mergedChildstyle","childStyle","parentStyle","v","__trace","prefix","result","collect","mergeStyle","flattenStyles","cs","filter","cleanseStyleProperties","paddingLeft","paddingRight","undefined","marginLeft","marginRight","screenWidth","width","screenHeight","height","i","stylePropertyValue","endsWith","Number","indexOf","split","c","mediaQuery","clonedStyle","matches","BASE","$new","newTheme","destroy","splice","getTextStyle","color","fontFamily","fontSize","fontStyle","fontWeight","includeFontPadding","fontVariant","letterSpacing","lineHeight","textAlign","textAlignVertical","textDecorationColor","textDecorationStyle","textShadowColor","textShadowOffset","textShadowRadius","textTransform","verticalAlign","writingDirection","userSelect","themeVariables","CHANGE","_Theme","SIZE_CHANGE","ThemeContext","createContext","ThemeProvider","Provider","ThemeConsumer","Consumer","addColStyles","device","minWidth","root","MIN_EXTRA_SMALL_DEVICE","MIN_SMALL_DEVICE","MIN_MEDIUM_DEVICE","MIN_LARGE_DEVICE","display","addDisplayStyles","maxWidth","MAX_LARGE_DEVICE","MAX_EXTRA_SMALL_DEVICE","MAX_SMALL_DEVICE","MAX_MEDIUM_DEVICE","addElevationClasses","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","zIndex","transform","scale","overflow","backgroundColor","dangerColor","infoColor","primaryColor","successColor","warningColor","borderColor","text"],"sources":["theme.tsx"],"sourcesContent":["import { cloneDeep, isNil, forEach, flatten, isArray, isEmpty, isObject, isString, isFunction, get, reverse } from 'lodash';\nimport React from 'react';\nimport { camelCase } from 'lodash-es';\nimport { TextStyle, ViewStyle, ImageStyle, ImageBackground, Dimensions } from 'react-native';\nimport { deepCopy, isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\nimport EventNotifier from '@wavemaker/app-rn-runtime/core/event-notifier';\nimport ViewPort, {EVENTS as ViewPortEvents} from '@wavemaker/app-rn-runtime/core/viewport';\nimport MediaQueryList from './MediaQueryList';\nimport ThemeVariables from './theme.variables';\nimport { getErrorMessage, getStyleReference, isValidStyleProp } from './style-prop.validator';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nexport const DEFAULT_CLASS = 'DEFAULT_CLASS';\n\ndeclare const matchMedia: any, window: any;\n\nif (typeof window !== \"undefined\") {\n // @ts-ignore: does not properly extend MediaQueryList\n window.matchMedia = (query: string) => new MediaQueryList(query);\n}\n\nexport const DEVICE_BREAK_POINTS = {\n 'MIN_EXTRA_SMALL_DEVICE' : '0px',\n 'MAX_EXTRA_SMALL_DEVICE' : '767px',\n 'MIN_SMALL_DEVICE' : '768px',\n 'MAX_SMALL_DEVICE' : '991px',\n 'MIN_MEDIUM_DEVICE' : '992px',\n 'MAX_MEDIUM_DEVICE' : '1199px',\n 'MIN_LARGE_DEVICE' : '1200px',\n 'MAX_LARGE_DEVICE' : '1000000px',\n};\n\nexport type styleGeneratorFn<T extends NamedStyles<any>> = (\n themeVariables: ThemeVariables,\n addStyle: (name: string, extend: string, style: T) => void) => void\n\nexport enum ThemeEvent {\n CHANGE ='change'\n};\n\nexport class Theme {\n public static BASE = new Theme(null as any, 'default');\n\n static {\n ViewPort.subscribe(ViewPortEvents.SIZE_CHANGE, () => {\n Theme.BASE.reset();\n });\n }\n\n\n private eventNotifer = new EventNotifier();\n\n private children: Theme[] = [];\n\n private styles: any = {};\n\n private cache: any = {};\n\n private traceEnabled = false;\n \n private revertLayoutFixes: Boolean;\n\n private styleGenerators: styleGeneratorFn<any>[] = [];\n\n private constructor(private parent:Theme, public readonly name: string) {\n this.revertLayoutFixes = this.getAppConfig()?.revertLayoutFixes || false;\n if (parent) {\n this.traceEnabled = parent.traceEnabled;\n } else {\n this.traceEnabled = isWebPreviewMode();\n }\n }\n\n private getAppConfig() {\n return injector.get<AppConfig>('APP_CONFIG');\n }\n\n public enableTrace(flag: boolean) {\n this.traceEnabled = flag;\n this.reset();\n this.children.forEach(t => t.enableTrace(flag));\n }\n\n public subscribe(event: ThemeEvent, fn: Function) {\n return this.eventNotifer.subscribe(event, fn);\n }\n\n public notify(event: ThemeEvent): void {\n this.eventNotifer.notify(event, []);\n this.children.forEach(t => t.notify(event));\n }\n\n private replaceVariables(val: string) {\n if(isString(val)) { \n (val.match(/_*var\\([^\\)]*\\)/g) || []).forEach((s) => {\n const variableName = s.substring(4, s.length - 1);\n val = val.replace(s, (ThemeVariables.INSTANCE as any)[variableName]\n || (ThemeVariables.INSTANCE as any)[variableName.substring(2)]\n || (ThemeVariables.INSTANCE as any)[camelCase(variableName.substring(2))]);\n val = this.replaceVariables(val);\n });\n }\n return val; \n }\n\n clearCache() {\n this.cache = {};\n this.children.forEach((t) => t.clearCache());\n }\n\n registerStyle<T extends NamedStyles<any>>(fn: styleGeneratorFn<T>) {\n this.styleGenerators.push(fn);\n fn(ThemeVariables.INSTANCE, this.addStyle.bind(this));\n }\n\n checkStyleProperties(name: string, value : any) {\n if (isObject(value)) {\n Object.keys(value).map((k) => this.checkStyleProperties(k, (value as any)[k]));\n } else if(name && !isValidStyleProp(name, value)) {\n console.log(\n `%cInvalid Style property in ${this.name}: ${getErrorMessage(name, value)}`,\n 'background-color: #FF0000;font-weight: bold; color: #fff'\n );\n console.log(`Refer: ${getStyleReference(name)}`);\n }\n }\n\n private addStyle<T extends NamedStyles<any>>(name: string, extend: string, style: T) {\n this.styles[name] = deepCopy(this.getStyle(extend), this.styles[name], style);\n }\n\n private addTrace(styleName: string, mergedChildstyle: any, childStyle: any, parentStyle?: any) {\n if (!this.traceEnabled) {\n return;\n }\n let addTrace = !isEmpty(childStyle);\n forEach(mergedChildstyle, (v: any, k: string) => {\n if (v && !isString(v) && !isArray(v) && isObject(v)) {\n addTrace = false;\n this.addTrace(styleName + '.' + k, v, childStyle && childStyle[k], parentStyle && parentStyle[k])\n }\n });\n if (addTrace) {\n mergedChildstyle['__trace'] = [\n {\n name: styleName,\n value: childStyle\n },\n ...(parentStyle?.__trace|| [])\n ];\n } else {\n mergedChildstyle['__trace'] = [...(parentStyle?.__trace|| [])];\n }\n }\n\n private flatten(style: any, prefix = \"\", result = {} as any) {\n let collect = !isEmpty(style);\n forEach(style, (v: any, k: string) => {\n if (v && !isString(v) && !isArray(v) && isObject(v)) {\n collect = false;\n this.flatten(v, (prefix ? prefix + '.' : '') + k, result)\n }\n });\n if (collect) {\n result[prefix] = style;\n }\n return result;\n }\n\n mergeStyle(...styles: any) {\n const style = deepCopy(...styles);\n if (this.traceEnabled) {\n const flattenStyles = this.flatten(style);\n Object.keys(flattenStyles).forEach(k => {\n const s = flattenStyles[k];\n s['__trace'] = flatten(reverse(styles.map((v: any) => {\n const cs = get(v, k);\n if (cs && cs.__trace) {\n return [...cs.__trace];\n }\n return [];\n }).filter((t: any) => t.length > 0)));\n });\n }\n return style;\n }\n\n cleanseStyleProperties(style: any) {\n if (!(style && isObject(style)) || isString(style) || isArray(style)) {\n return style;\n }\n style = style as any;\n if (isObject(style) && !isArray(style)) {\n Object.keys(style).forEach(k => {\n (style as any)[k] = this.replaceVariables((style as any)[k]);\n });\n }\n if (!isNil(style['shadowRadius'])) {\n if (style['shadowRadius'] <= 0) {\n style['shadowColor'] = 'transparent';\n } else if (isNil(style['elevation'])) {\n style['elevation'] = 2;\n }\n }\n if (!isNil(style['margin'])) {\n style['marginLeft'] = style['marginLeft'] || style['margin'];\n style['marginRight'] = style['marginRight'] || style['margin'];\n style['marginTop'] = style['marginTop'] || style['margin'];\n style['marginBottom'] = style['marginBottom'] || style['margin'];\n delete style['margin'];\n }\n if (!isNil(style['padding'])) {\n style['paddingLeft'] = style['paddingLeft'] || style['padding'];\n style['paddingRight'] = style['paddingRight'] || style['padding'];\n style['paddingTop'] = style['paddingTop'] || style['padding'];\n style['paddingBottom'] = style['paddingBottom'] || style['padding'];\n delete style['padding'];\n }\n if (this.revertLayoutFixes && !isNil(style['flexDirection']) && style['flexDirection'] === 'row-reverse') {\n if (!isNil(style['paddingLeft']) || !isNil(style['paddingRight'])) {\n if (!isNil(style['paddingLeft']) && !isNil(style['paddingRight'])) {\n [style['paddingLeft'], style['paddingRight']] = [style['paddingRight'], style['paddingLeft']];\n } else {\n const [paddingLeft, paddingRight] = [style['paddingLeft'], style['paddingRight']];\n if (paddingLeft !== undefined) {\n style['paddingRight'] = paddingLeft;\n delete style['paddingLeft'];\n }\n if (paddingRight !== undefined) {\n style['paddingLeft'] = paddingRight;\n delete style['paddingRight'];\n }\n }\n }\n \n if (!isNil(style['marginLeft']) || !isNil(style['marginRight'])) {\n if (!isNil(style['marginLeft']) && !isNil(style['marginRight'])) {\n [style['marginLeft'], style['marginRight']] = [style['marginRight'], style['marginLeft']];\n } else {\n const [marginLeft, marginRight] = [style['marginLeft'], style['marginRight']];\n if (marginLeft !== undefined) {\n style['marginRight'] = marginLeft;\n delete style['marginLeft'];\n }\n if (marginRight !== undefined) {\n style['marginLeft'] = marginRight;\n delete style['marginRight'];\n }\n }\n } \n }\n let screenWidth = Dimensions.get('window').width;\n let screenHeight = Dimensions.get('window').height;\n Object.keys(style).forEach((k, i) => {\n let stylePropertyValue = style[k]\n if(typeof stylePropertyValue === 'string' && stylePropertyValue.endsWith('vw')) {\n stylePropertyValue = stylePropertyValue.replace('vw','')\n style[k] = Number(stylePropertyValue)/100 * screenWidth\n }\n if((typeof stylePropertyValue === 'string' && stylePropertyValue.endsWith('vh'))) {\n stylePropertyValue = stylePropertyValue.replace('vh','')\n style[k] = Number(stylePropertyValue)/100 * screenHeight\n }\n })\n Object.keys(style).forEach((k, i) => this.cleanseStyleProperties(style[k]));\n return style;\n }\n\n getStyle(name: string) {\n let style = this.cache[name];\n if (style) {\n return style;\n }\n if (!name) {\n return {};\n }\n if (name.indexOf(' ') > 0) {\n style = this.mergeStyle(...(name.split(' ').map(c => this.getStyle(c))));\n } else {\n const parentStyle = this.parent && this.parent.getStyle(name);\n const mediaQuery = (this.styles[name] || {})['@media'];\n let clonedStyle = {};\n if (!mediaQuery || matchMedia(mediaQuery).matches) {\n clonedStyle = cloneDeep(this.styles[name]);\n this.cleanseStyleProperties(clonedStyle);\n }\n if (this !== Theme.BASE && isWebPreviewMode()) {\n this.checkStyleProperties('', clonedStyle);\n }\n style = deepCopy(parentStyle, clonedStyle);\n this.addTrace(`@${this.name}:${name}`, style, clonedStyle, parentStyle);\n }\n this.cache[name] = style;\n return style;\n }\n\n $new(name = \"\", styles = {} as NamedStyles<any>) {\n const newTheme = new Theme(this, name);\n newTheme.reset(styles);\n this.children.push(newTheme);\n return newTheme;\n }\n\n destroy() {\n const i = this.parent.children.indexOf(this);\n if (i >= 0) {\n this.parent.children.splice(i, 1);\n }\n }\n \n getTextStyle(s: any) {\n if (!s) {\n return {};\n }\n return {\n color: s.color,\n fontFamily: s.fontFamily,\n fontSize: s.fontSize,\n fontStyle: s.fontStyle,\n fontWeight: s.fontWeight,\n includeFontPadding: s.includeFontPadding,\n fontVariant: s.fontVariant,\n letterSpacing: s.letterSpacing,\n lineHeight: s.lineHeight,\n textAlign: s.textAlign,\n textAlignVertical: s.textAlignVertical,\n textDecorationColor: s.textDecorationColor,\n textDecorationStyle: s.textDecorationStyle,\n textShadowColor: s.textShadowColor,\n textShadowOffset: s.textShadowOffset,\n textShadowRadius: s.textShadowRadius,\n textTransform: s.textTransform,\n verticalAlign: s.verticalAlign,\n writingDirection: s.writingDirection,\n userSelect: s.userSelect,\n } as TextStyle;\n }\n\n reset(styles?: NamedStyles<any>) {\n this.styles = {};\n this.clearCache();\n if (styles) {\n this.registerStyle((themeVariables, addStyle) => {\n Object.keys(styles).forEach(k => {\n addStyle(k, '', styles[k] as any);\n });\n });\n } else {\n this.styleGenerators.forEach(fn => \n fn(ThemeVariables.INSTANCE, this.addStyle.bind(this)));\n }\n this.notify(ThemeEvent.CHANGE);\n }\n}\nexport default Theme.BASE;\nexport type NamedStyles<T> = { [P in keyof T]: AllStyle | NamedStyles<T>};\nexport type BackgroundImageStyle = {\n backgroundImage: string,\n backgroundPosition: string,\n backgroundRepeat: string,\n backgroundSize: string | number\n};\n\nexport type AllStyle = (ViewStyle & TextStyle & ImageStyle & {userSelect?: 'none'| 'text'} & {rippleColor?: string});\n\nconst ThemeContext = React.createContext<Theme>(null as any);\n\nexport const ThemeProvider = ThemeContext.Provider;\nexport const ThemeConsumer = ThemeContext.Consumer;\n/**\n * Common styles\n */\n Theme.BASE.registerStyle((themeVariables, addStyle) => {\n const addColStyles = (device: string, minWidth: string) => {\n for(let i = 1; i <= 12; i++) {\n addStyle(`col-${device}-${i}`, '', {\n \"@media\": `(min-width: ${minWidth})`,\n root: {\n width: (100 * i / 12) + '%'\n }\n } as any)\n }\n };\n addColStyles('xs', DEVICE_BREAK_POINTS.MIN_EXTRA_SMALL_DEVICE);\n addColStyles('sm', DEVICE_BREAK_POINTS.MIN_SMALL_DEVICE);\n addColStyles('md', DEVICE_BREAK_POINTS.MIN_MEDIUM_DEVICE);\n addColStyles('lg', DEVICE_BREAK_POINTS.MIN_LARGE_DEVICE);\n\n addStyle('d-none', '', {\n root: {\n display: 'none'\n }\n } as any);\n addStyle('d-flex', '', {\n root: {\n display: 'flex'\n }\n } as any);\n\n const addDisplayStyles = (device: string, minWidth: string, maxWidth: string) => {\n addStyle(`d-${device}-none`, '', {\n \"@media\": `(min-width: ${minWidth}) and (max-width: ${maxWidth})`,\n root: {\n display: 'none'\n }\n } as any);\n addStyle(`d-${device}-flex`, '', {\n \"@media\": `(min-width: ${minWidth}) and (max-width: ${maxWidth})`,\n root: {\n display: 'flex'\n }\n } as any);\n };\n addDisplayStyles('all', \n DEVICE_BREAK_POINTS.MIN_EXTRA_SMALL_DEVICE,\n DEVICE_BREAK_POINTS.MAX_LARGE_DEVICE);\n addDisplayStyles('xs', \n DEVICE_BREAK_POINTS.MIN_EXTRA_SMALL_DEVICE,\n DEVICE_BREAK_POINTS.MAX_EXTRA_SMALL_DEVICE);\n addDisplayStyles('sm', \n DEVICE_BREAK_POINTS.MIN_SMALL_DEVICE,\n DEVICE_BREAK_POINTS.MAX_SMALL_DEVICE);\n addDisplayStyles('md', \n DEVICE_BREAK_POINTS.MIN_MEDIUM_DEVICE,\n DEVICE_BREAK_POINTS.MAX_MEDIUM_DEVICE);\n addDisplayStyles('lg', \n DEVICE_BREAK_POINTS.MIN_LARGE_DEVICE,\n DEVICE_BREAK_POINTS.MAX_LARGE_DEVICE);\n\n const addElevationClasses = () => {\n for(let i = 1; i <= 10; i++) {\n addStyle(`elevate${i}`, '', {\n root : {\n shadowColor: \"#000000\",\n shadowOffset: {\n width: i,\n height: i,\n },\n shadowOpacity: 0.27,\n shadowRadius: i,\n elevation: i,\n zIndex: 1\n }\n });\n }\n };\n addElevationClasses();\n addStyle('hidden', '', {\n root: {\n width: 0,\n height: 0,\n transform: [{ scale: 0 }],\n overflow: 'hidden'\n }\n });\n addStyle('bg-danger', '', { root: { backgroundColor: themeVariables.dangerColor }});\n addStyle('bg-info', '', { root: { backgroundColor: themeVariables.infoColor }});\n addStyle('bg-primary', '', { root: { backgroundColor: themeVariables.primaryColor }});\n addStyle('bg-success', '', { root: { backgroundColor: themeVariables.successColor }});\n addStyle('bg-warning', '', { root: { backgroundColor: themeVariables.warningColor }});\n\n addStyle('border-danger', '', { root: { borderColor: themeVariables.dangerColor }});\n addStyle('border-info', '', { root: { borderColor: themeVariables.infoColor }});\n addStyle('border-primary', '', { root: { borderColor: themeVariables.primaryColor }});\n addStyle('border-success', '', { root: { borderColor: themeVariables.successColor }});\n addStyle('border-warning', '', { root: { borderColor: themeVariables.warningColor }});\n\n addStyle('hide-context-menu', '', { text: { userSelect: 'none' }});\n addStyle('hide-context-menu-input', '', { text: { userSelect: 'none' }});\n});\n\n"],"mappings":";;;;AAAA,SAASA,SAAS,EAAEC,KAAK,EAAEC,OAAO,EAAEC,OAAO,EAAEC,OAAO,EAAEC,OAAO,EAAEC,QAAQ,EAAEC,QAAQ,EAAcC,GAAG,EAAEC,OAAO,QAAQ,QAAQ;AAC3H,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,QAAQ,WAAW;AACrC,SAA4DC,UAAU,QAAQ,cAAc;AAC5F,SAASC,QAAQ,EAAEC,gBAAgB,QAAQ,sCAAsC;AACjF,OAAOC,aAAa,MAAM,+CAA+C;AACzE,OAAOC,QAAQ,IAAGC,MAAM,IAAIC,cAAc,QAAO,yCAAyC;AAC1F,OAAOC,cAAc,MAAM,kBAAkB;AAC7C,OAAOC,cAAc,MAAM,mBAAmB;AAC9C,SAASC,eAAe,EAAEC,iBAAiB,EAAEC,gBAAgB,QAAQ,wBAAwB;AAC7F,OAAOC,QAAQ,MAAM,yCAAyC;AAE9D,OAAO,MAAMC,aAAa,GAAG,eAAe;AAI5C,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE;EAC/B;EACAA,MAAM,CAACC,UAAU,GAAIC,KAAa,IAAK,IAAIT,cAAc,CAACS,KAAK,CAAC;AACpE;AAEA,OAAO,MAAMC,mBAAmB,GAAG;EAC/B,wBAAwB,EAAG,KAAK;EAChC,wBAAwB,EAAG,OAAO;EAClC,kBAAkB,EAAG,OAAO;EAC5B,kBAAkB,EAAG,OAAO;EAC5B,mBAAmB,EAAG,OAAO;EAC7B,mBAAmB,EAAG,QAAQ;EAC9B,kBAAkB,EAAG,QAAQ;EAC7B,kBAAkB,EAAG;AACzB,CAAC;AAMD,WAAYC,UAAU,0BAAVA,UAAU;EAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAErB;AAED,OAAO,MAAMC,KAAK,CAAC;EAwBPC,WAAWA,CAASC,MAAY,EAAkBC,IAAY,EAAE;IAAA,IAAAC,kBAAA;IAAA,KAA5CF,MAAY,GAAZA,MAAY;IAAA,KAAkBC,IAAY,GAAZA,IAAY;IAAAE,eAAA,uBAd/C,IAAIrB,aAAa,CAAC,CAAC;IAAAqB,eAAA,mBAEd,EAAE;IAAAA,eAAA,iBAER,CAAC,CAAC;IAAAA,eAAA,gBAEH,CAAC,CAAC;IAAAA,eAAA,uBAEA,KAAK;IAAAA,eAAA;IAAAA,eAAA,0BAIuB,EAAE;IAGjD,IAAI,CAACC,iBAAiB,GAAG,EAAAF,kBAAA,OAAI,CAACG,YAAY,CAAC,CAAC,cAAAH,kBAAA,uBAAnBA,kBAAA,CAAqBE,iBAAiB,KAAI,KAAK;IACxE,IAAIJ,MAAM,EAAE;MACR,IAAI,CAACM,YAAY,GAAGN,MAAM,CAACM,YAAY;IAC3C,CAAC,MAAM;MACH,IAAI,CAACA,YAAY,GAAGzB,gBAAgB,CAAC,CAAC;IAC1C;EACJ;EAEQwB,YAAYA,CAAA,EAAG;IACnB,OAAOd,QAAQ,CAAChB,GAAG,CAAY,YAAY,CAAC;EAChD;EAEOgC,WAAWA,CAACC,IAAa,EAAE;IAC9B,IAAI,CAACF,YAAY,GAAGE,IAAI;IACxB,IAAI,CAACC,KAAK,CAAC,CAAC;IACZ,IAAI,CAACC,QAAQ,CAACzC,OAAO,CAAC0C,CAAC,IAAIA,CAAC,CAACJ,WAAW,CAACC,IAAI,CAAC,CAAC;EACnD;EAEOI,SAASA,CAACC,KAAiB,EAAEC,EAAY,EAAE;IAC9C,OAAO,IAAI,CAACC,YAAY,CAACH,SAAS,CAACC,KAAK,EAAEC,EAAE,CAAC;EACjD;EAEOE,MAAMA,CAACH,KAAiB,EAAQ;IACnC,IAAI,CAACE,YAAY,CAACC,MAAM,CAACH,KAAK,EAAE,EAAE,CAAC;IACnC,IAAI,CAACH,QAAQ,CAACzC,OAAO,CAAC0C,CAAC,IAAIA,CAAC,CAACK,MAAM,CAACH,KAAK,CAAC,CAAC;EAC/C;EAEQI,gBAAgBA,CAACC,GAAW,EAAE;IAClC,IAAG5C,QAAQ,CAAC4C,GAAG,CAAC,EAAE;MACd,CAACA,GAAG,CAACC,KAAK,CAAC,kBAAkB,CAAC,IAAI,EAAE,EAAElD,OAAO,CAAEmD,CAAC,IAAK;QACjD,MAAMC,YAAY,GAAGD,CAAC,CAACE,SAAS,CAAC,CAAC,EAAEF,CAAC,CAACG,MAAM,GAAG,CAAC,CAAC;QACjDL,GAAG,GAAGA,GAAG,CAACM,OAAO,CAACJ,CAAC,EAAGjC,cAAc,CAACsC,QAAQ,CAASJ,YAAY,CAAC,IAC3DlC,cAAc,CAACsC,QAAQ,CAASJ,YAAY,CAACC,SAAS,CAAC,CAAC,CAAC,CAAC,IAC1DnC,cAAc,CAACsC,QAAQ,CAAS/C,SAAS,CAAC2C,YAAY,CAACC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9EJ,GAAG,GAAG,IAAI,CAACD,gBAAgB,CAACC,GAAG,CAAC;MACpC,CAAC,CAAC;IACN;IACA,OAAOA,GAAG;EACd;EAEAQ,UAAUA,CAAA,EAAG;IACT,IAAI,CAACC,KAAK,GAAG,CAAC,CAAC;IACf,IAAI,CAACjB,QAAQ,CAACzC,OAAO,CAAE0C,CAAC,IAAKA,CAAC,CAACe,UAAU,CAAC,CAAC,CAAC;EAChD;EAEAE,aAAaA,CAA6Bd,EAAuB,EAAE;IAC/D,IAAI,CAACe,eAAe,CAACC,IAAI,CAAChB,EAAE,CAAC;IAC7BA,EAAE,CAAC3B,cAAc,CAACsC,QAAQ,EAAE,IAAI,CAACM,QAAQ,CAACC,IAAI,CAAC,IAAI,CAAC,CAAC;EACzD;EAEAC,oBAAoBA,CAAChC,IAAY,EAAEiC,KAAW,EAAE;IAC5C,IAAI7D,QAAQ,CAAC6D,KAAK,CAAC,EAAE;MACjBC,MAAM,CAACC,IAAI,CAACF,KAAK,CAAC,CAACG,GAAG,CAAEC,CAAC,IAAK,IAAI,CAACL,oBAAoB,CAACK,CAAC,EAAGJ,KAAK,CAASI,CAAC,CAAC,CAAC,CAAC;IAClF,CAAC,MAAM,IAAGrC,IAAI,IAAI,CAACX,gBAAgB,CAACW,IAAI,EAAEiC,KAAK,CAAC,EAAE;MAC9CK,OAAO,CAACC,GAAG,CACP,+BAA+B,IAAI,CAACvC,IAAI,KAAKb,eAAe,CAACa,IAAI,EAAEiC,KAAK,CAAC,EAAE,EAC3E,0DACJ,CAAC;MACDK,OAAO,CAACC,GAAG,CAAC,UAAUnD,iBAAiB,CAACY,IAAI,CAAC,EAAE,CAAC;IACpD;EACJ;EAEQ8B,QAAQA,CAA6B9B,IAAY,EAAEwC,MAAc,EAAEC,KAAQ,EAAE;IACjF,IAAI,CAACC,MAAM,CAAC1C,IAAI,CAAC,GAAGrB,QAAQ,CAAC,IAAI,CAACgE,QAAQ,CAACH,MAAM,CAAC,EAAE,IAAI,CAACE,MAAM,CAAC1C,IAAI,CAAC,EAAEyC,KAAK,CAAC;EACjF;EAEQG,QAAQA,CAACC,SAAiB,EAAEC,gBAAqB,EAAEC,UAAe,EAAEC,WAAiB,EAAE;IAC3F,IAAI,CAAC,IAAI,CAAC3C,YAAY,EAAE;MACpB;IACJ;IACA,IAAIuC,QAAQ,GAAG,CAACzE,OAAO,CAAC4E,UAAU,CAAC;IACnC/E,OAAO,CAAC8E,gBAAgB,EAAE,CAACG,CAAM,EAAEZ,CAAS,KAAK;MAC7C,IAAIY,CAAC,IAAI,CAAC5E,QAAQ,CAAC4E,CAAC,CAAC,IAAI,CAAC/E,OAAO,CAAC+E,CAAC,CAAC,IAAI7E,QAAQ,CAAC6E,CAAC,CAAC,EAAE;QACjDL,QAAQ,GAAG,KAAK;QAChB,IAAI,CAACA,QAAQ,CAACC,SAAS,GAAG,GAAG,GAAGR,CAAC,EAAEY,CAAC,EAAEF,UAAU,IAAIA,UAAU,CAACV,CAAC,CAAC,EAAEW,WAAW,IAAIA,WAAW,CAACX,CAAC,CAAC,CAAC;MACrG;IACJ,CAAC,CAAC;IACF,IAAIO,QAAQ,EAAE;MACVE,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAC1B;QACI9C,IAAI,EAAE6C,SAAS;QACfZ,KAAK,EAAEc;MACX,CAAC,EACD,IAAI,CAAAC,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEE,OAAO,KAAG,EAAE,CAAC,CACjC;IACL,CAAC,MAAM;MACHJ,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAAE,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEE,OAAO,KAAG,EAAE,CAAC,CAAC;IAClE;EACJ;EAEQjF,OAAOA,CAACwE,KAAU,EAAEU,MAAM,GAAG,EAAE,EAAEC,MAAM,GAAG,CAAC,CAAQ,EAAE;IACzD,IAAIC,OAAO,GAAG,CAAClF,OAAO,CAACsE,KAAK,CAAC;IAC7BzE,OAAO,CAACyE,KAAK,EAAE,CAACQ,CAAM,EAAEZ,CAAS,KAAK;MAClC,IAAIY,CAAC,IAAI,CAAC5E,QAAQ,CAAC4E,CAAC,CAAC,IAAI,CAAC/E,OAAO,CAAC+E,CAAC,CAAC,IAAI7E,QAAQ,CAAC6E,CAAC,CAAC,EAAE;QACjDI,OAAO,GAAG,KAAK;QACf,IAAI,CAACpF,OAAO,CAACgF,CAAC,EAAE,CAACE,MAAM,GAAIA,MAAM,GAAG,GAAG,GAAG,EAAE,IAAId,CAAC,EAAEe,MAAM,CAAC;MAC9D;IACJ,CAAC,CAAC;IACF,IAAIC,OAAO,EAAE;MACTD,MAAM,CAACD,MAAM,CAAC,GAAGV,KAAK;IAC1B;IACA,OAAOW,MAAM;EACjB;EAEAE,UAAUA,CAAC,GAAGZ,MAAW,EAAE;IACvB,MAAMD,KAAK,GAAG9D,QAAQ,CAAC,GAAG+D,MAAM,CAAC;IACjC,IAAI,IAAI,CAACrC,YAAY,EAAE;MACnB,MAAMkD,aAAa,GAAG,IAAI,CAACtF,OAAO,CAACwE,KAAK,CAAC;MACzCP,MAAM,CAACC,IAAI,CAACoB,aAAa,CAAC,CAACvF,OAAO,CAACqE,CAAC,IAAI;QACpC,MAAMlB,CAAC,GAAGoC,aAAa,CAAClB,CAAC,CAAC;QAC1BlB,CAAC,CAAC,SAAS,CAAC,GAAGlD,OAAO,CAACM,OAAO,CAACmE,MAAM,CAACN,GAAG,CAAEa,CAAM,IAAK;UAClD,MAAMO,EAAE,GAAGlF,GAAG,CAAC2E,CAAC,EAAEZ,CAAC,CAAC;UACpB,IAAImB,EAAE,IAAIA,EAAE,CAACN,OAAO,EAAE;YAClB,OAAO,CAAC,GAAGM,EAAE,CAACN,OAAO,CAAC;UAC1B;UACA,OAAO,EAAE;QACb,CAAC,CAAC,CAACO,MAAM,CAAE/C,CAAM,IAAKA,CAAC,CAACY,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;MACzC,CAAC,CAAC;IACN;IACA,OAAOmB,KAAK;EAChB;EAEAiB,sBAAsBA,CAACjB,KAAU,EAAE;IAC/B,IAAI,EAAEA,KAAK,IAAIrE,QAAQ,CAACqE,KAAK,CAAC,CAAC,IAAIpE,QAAQ,CAACoE,KAAK,CAAC,IAAIvE,OAAO,CAACuE,KAAK,CAAC,EAAE;MAClE,OAAOA,KAAK;IAChB;IACAA,KAAK,GAAGA,KAAY;IACpB,IAAIrE,QAAQ,CAACqE,KAAK,CAAC,IAAI,CAACvE,OAAO,CAACuE,KAAK,CAAC,EAAE;MACpCP,MAAM,CAACC,IAAI,CAACM,KAAK,CAAC,CAACzE,OAAO,CAACqE,CAAC,IAAI;QAC3BI,KAAK,CAASJ,CAAC,CAAC,GAAG,IAAI,CAACrB,gBAAgB,CAAEyB,KAAK,CAASJ,CAAC,CAAC,CAAC;MAChE,CAAC,CAAC;IACN;IACA,IAAI,CAACtE,KAAK,CAAC0E,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE;MAC/B,IAAIA,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;QAC5BA,KAAK,CAAC,aAAa,CAAC,GAAG,aAAa;MACxC,CAAC,MAAM,IAAI1E,KAAK,CAAC0E,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE;QAClCA,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC;MAC1B;IACJ;IACA,IAAI,CAAC1E,KAAK,CAAC0E,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE;MACzBA,KAAK,CAAC,YAAY,CAAC,GAAGA,KAAK,CAAC,YAAY,CAAC,IAAIA,KAAK,CAAC,QAAQ,CAAC;MAC5DA,KAAK,CAAC,aAAa,CAAC,GAAGA,KAAK,CAAC,aAAa,CAAC,IAAIA,KAAK,CAAC,QAAQ,CAAC;MAC9DA,KAAK,CAAC,WAAW,CAAC,GAAGA,KAAK,CAAC,WAAW,CAAC,IAAIA,KAAK,CAAC,QAAQ,CAAC;MAC1DA,KAAK,CAAC,cAAc,CAAC,GAAGA,KAAK,CAAC,cAAc,CAAC,IAAIA,KAAK,CAAC,QAAQ,CAAC;MAChE,OAAOA,KAAK,CAAC,QAAQ,CAAC;IAC1B;IACA,IAAI,CAAC1E,KAAK,CAAC0E,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE;MAC1BA,KAAK,CAAC,aAAa,CAAC,GAAGA,KAAK,CAAC,aAAa,CAAC,IAAIA,KAAK,CAAC,SAAS,CAAC;MAC/DA,KAAK,CAAC,cAAc,CAAC,GAAGA,KAAK,CAAC,cAAc,CAAC,IAAIA,KAAK,CAAC,SAAS,CAAC;MACjEA,KAAK,CAAC,YAAY,CAAC,GAAGA,KAAK,CAAC,YAAY,CAAC,IAAIA,KAAK,CAAC,SAAS,CAAC;MAC7DA,KAAK,CAAC,eAAe,CAAC,GAAGA,KAAK,CAAC,eAAe,CAAC,IAAIA,KAAK,CAAC,SAAS,CAAC;MACnE,OAAOA,KAAK,CAAC,SAAS,CAAC;IAC3B;IACA,IAAI,IAAI,CAACtC,iBAAiB,IAAI,CAACpC,KAAK,CAAC0E,KAAK,CAAC,eAAe,CAAC,CAAC,IAAIA,KAAK,CAAC,eAAe,CAAC,KAAK,aAAa,EAAE;MACtG,IAAI,CAAC1E,KAAK,CAAC0E,KAAK,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC1E,KAAK,CAAC0E,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE;QAC/D,IAAI,CAAC1E,KAAK,CAAC0E,KAAK,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC1E,KAAK,CAAC0E,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE;UACjE,CAACA,KAAK,CAAC,aAAa,CAAC,EAAEA,KAAK,CAAC,cAAc,CAAC,CAAC,GAAG,CAACA,KAAK,CAAC,cAAc,CAAC,EAAEA,KAAK,CAAC,aAAa,CAAC,CAAC;QAC/F,CAAC,MAAM;UACL,MAAM,CAACkB,WAAW,EAAEC,YAAY,CAAC,GAAG,CAACnB,KAAK,CAAC,aAAa,CAAC,EAAEA,KAAK,CAAC,cAAc,CAAC,CAAC;UACjF,IAAIkB,WAAW,KAAKE,SAAS,EAAE;YAC7BpB,KAAK,CAAC,cAAc,CAAC,GAAGkB,WAAW;YACnC,OAAOlB,KAAK,CAAC,aAAa,CAAC;UAC7B;UACA,IAAImB,YAAY,KAAKC,SAAS,EAAE;YAC9BpB,KAAK,CAAC,aAAa,CAAC,GAAGmB,YAAY;YACnC,OAAOnB,KAAK,CAAC,cAAc,CAAC;UAC9B;QACF;MACF;MAEA,IAAI,CAAC1E,KAAK,CAAC0E,KAAK,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC1E,KAAK,CAAC0E,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE;QAC/D,IAAI,CAAC1E,KAAK,CAAC0E,KAAK,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC1E,KAAK,CAAC0E,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE;UAC/D,CAACA,KAAK,CAAC,YAAY,CAAC,EAAEA,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,CAACA,KAAK,CAAC,aAAa,CAAC,EAAEA,KAAK,CAAC,YAAY,CAAC,CAAC;QAC3F,CAAC,MAAM;UACL,MAAM,CAACqB,UAAU,EAAEC,WAAW,CAAC,GAAG,CAACtB,KAAK,CAAC,YAAY,CAAC,EAAEA,KAAK,CAAC,aAAa,CAAC,CAAC;UAC7E,IAAIqB,UAAU,KAAKD,SAAS,EAAE;YAC5BpB,KAAK,CAAC,aAAa,CAAC,GAAGqB,UAAU;YACjC,OAAOrB,KAAK,CAAC,YAAY,CAAC;UAC5B;UACA,IAAIsB,WAAW,KAAKF,SAAS,EAAE;YAC7BpB,KAAK,CAAC,YAAY,CAAC,GAAGsB,WAAW;YACjC,OAAOtB,KAAK,CAAC,aAAa,CAAC;UAC7B;QACF;MACF;IACN;IACA,IAAIuB,WAAW,GAAGtF,UAAU,CAACJ,GAAG,CAAC,QAAQ,CAAC,CAAC2F,KAAK;IAChD,IAAIC,YAAY,GAAGxF,UAAU,CAACJ,GAAG,CAAC,QAAQ,CAAC,CAAC6F,MAAM;IAClDjC,MAAM,CAACC,IAAI,CAACM,KAAK,CAAC,CAACzE,OAAO,CAAC,CAACqE,CAAC,EAAE+B,CAAC,KAAK;MACjC,IAAIC,kBAAkB,GAAG5B,KAAK,CAACJ,CAAC,CAAC;MACjC,IAAG,OAAOgC,kBAAkB,KAAK,QAAQ,IAAIA,kBAAkB,CAACC,QAAQ,CAAC,IAAI,CAAC,EAAE;QAC5ED,kBAAkB,GAAGA,kBAAkB,CAAC9C,OAAO,CAAC,IAAI,EAAC,EAAE,CAAC;QACxDkB,KAAK,CAACJ,CAAC,CAAC,GAAGkC,MAAM,CAACF,kBAAkB,CAAC,GAAC,GAAG,GAAGL,WAAW;MAC3D;MACA,IAAI,OAAOK,kBAAkB,KAAK,QAAQ,IAAIA,kBAAkB,CAACC,QAAQ,CAAC,IAAI,CAAC,EAAG;QAC9ED,kBAAkB,GAAGA,kBAAkB,CAAC9C,OAAO,CAAC,IAAI,EAAC,EAAE,CAAC;QACxDkB,KAAK,CAACJ,CAAC,CAAC,GAAGkC,MAAM,CAACF,kBAAkB,CAAC,GAAC,GAAG,GAAGH,YAAY;MAC5D;IACJ,CAAC,CAAC;IACFhC,MAAM,CAACC,IAAI,CAACM,KAAK,CAAC,CAACzE,OAAO,CAAC,CAACqE,CAAC,EAAE+B,CAAC,KAAK,IAAI,CAACV,sBAAsB,CAACjB,KAAK,CAACJ,CAAC,CAAC,CAAC,CAAC;IAC3E,OAAOI,KAAK;EAChB;EAEAE,QAAQA,CAAC3C,IAAY,EAAE;IACnB,IAAIyC,KAAK,GAAG,IAAI,CAACf,KAAK,CAAC1B,IAAI,CAAC;IAC5B,IAAIyC,KAAK,EAAE;MACP,OAAOA,KAAK;IAChB;IACA,IAAI,CAACzC,IAAI,EAAE;MACP,OAAO,CAAC,CAAC;IACb;IACA,IAAIA,IAAI,CAACwE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;MACvB/B,KAAK,GAAG,IAAI,CAACa,UAAU,CAAC,GAAItD,IAAI,CAACyE,KAAK,CAAC,GAAG,CAAC,CAACrC,GAAG,CAACsC,CAAC,IAAI,IAAI,CAAC/B,QAAQ,CAAC+B,CAAC,CAAC,CAAE,CAAC;IAC5E,CAAC,MAAM;MACH,MAAM1B,WAAW,GAAG,IAAI,CAACjD,MAAM,IAAI,IAAI,CAACA,MAAM,CAAC4C,QAAQ,CAAC3C,IAAI,CAAC;MAC7D,MAAM2E,UAAU,GAAG,CAAC,IAAI,CAACjC,MAAM,CAAC1C,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC;MACtD,IAAI4E,WAAW,GAAG,CAAC,CAAC;MACpB,IAAI,CAACD,UAAU,IAAIlF,UAAU,CAACkF,UAAU,CAAC,CAACE,OAAO,EAAE;QAC/CD,WAAW,GAAG9G,SAAS,CAAC,IAAI,CAAC4E,MAAM,CAAC1C,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC0D,sBAAsB,CAACkB,WAAW,CAAC;MAC5C;MACA,IAAI,IAAI,KAAK/E,KAAK,CAACiF,IAAI,IAAIlG,gBAAgB,CAAC,CAAC,EAAE;QAC3C,IAAI,CAACoD,oBAAoB,CAAC,EAAE,EAAE4C,WAAW,CAAC;MAC9C;MACAnC,KAAK,GAAG9D,QAAQ,CAACqE,WAAW,EAAE4B,WAAW,CAAC;MAC1C,IAAI,CAAChC,QAAQ,CAAC,IAAI,IAAI,CAAC5C,IAAI,IAAIA,IAAI,EAAE,EAAEyC,KAAK,EAAEmC,WAAW,EAAE5B,WAAW,CAAC;IAC3E;IACA,IAAI,CAACtB,KAAK,CAAC1B,IAAI,CAAC,GAAGyC,KAAK;IACxB,OAAOA,KAAK;EAChB;EAEAsC,IAAIA,CAAC/E,IAAI,GAAG,EAAE,EAAE0C,MAAM,GAAG,CAAC,CAAqB,EAAE;IAC7C,MAAMsC,QAAQ,GAAG,IAAInF,KAAK,CAAC,IAAI,EAAEG,IAAI,CAAC;IACtCgF,QAAQ,CAACxE,KAAK,CAACkC,MAAM,CAAC;IACtB,IAAI,CAACjC,QAAQ,CAACoB,IAAI,CAACmD,QAAQ,CAAC;IAC5B,OAAOA,QAAQ;EACnB;EAEAC,OAAOA,CAAA,EAAG;IACN,MAAMb,CAAC,GAAG,IAAI,CAACrE,MAAM,CAACU,QAAQ,CAAC+D,OAAO,CAAC,IAAI,CAAC;IAC5C,IAAIJ,CAAC,IAAI,CAAC,EAAE;MACR,IAAI,CAACrE,MAAM,CAACU,QAAQ,CAACyE,MAAM,CAACd,CAAC,EAAE,CAAC,CAAC;IACrC;EACJ;EAEAe,YAAYA,CAAChE,CAAM,EAAE;IACjB,IAAI,CAACA,CAAC,EAAE;MACJ,OAAO,CAAC,CAAC;IACb;IACA,OAAO;MACHiE,KAAK,EAAEjE,CAAC,CAACiE,KAAK;MACdC,UAAU,EAAElE,CAAC,CAACkE,UAAU;MACxBC,QAAQ,EAAEnE,CAAC,CAACmE,QAAQ;MACpBC,SAAS,EAAEpE,CAAC,CAACoE,SAAS;MACtBC,UAAU,EAAErE,CAAC,CAACqE,UAAU;MACxBC,kBAAkB,EAAEtE,CAAC,CAACsE,kBAAkB;MACxCC,WAAW,EAAEvE,CAAC,CAACuE,WAAW;MAC1BC,aAAa,EAAExE,CAAC,CAACwE,aAAa;MAC9BC,UAAU,EAAEzE,CAAC,CAACyE,UAAU;MACxBC,SAAS,EAAE1E,CAAC,CAAC0E,SAAS;MACtBC,iBAAiB,EAAE3E,CAAC,CAAC2E,iBAAiB;MACtCC,mBAAmB,EAAE5E,CAAC,CAAC4E,mBAAmB;MAC1CC,mBAAmB,EAAE7E,CAAC,CAAC6E,mBAAmB;MAC1CC,eAAe,EAAE9E,CAAC,CAAC8E,eAAe;MAClCC,gBAAgB,EAAE/E,CAAC,CAAC+E,gBAAgB;MACpCC,gBAAgB,EAAEhF,CAAC,CAACgF,gBAAgB;MACpCC,aAAa,EAAEjF,CAAC,CAACiF,aAAa;MAC9BC,aAAa,EAAElF,CAAC,CAACkF,aAAa;MAC9BC,gBAAgB,EAAEnF,CAAC,CAACmF,gBAAgB;MACpCC,UAAU,EAAEpF,CAAC,CAACoF;IAClB,CAAC;EACL;EAEA/F,KAAKA,CAACkC,MAAyB,EAAE;IAC7B,IAAI,CAACA,MAAM,GAAG,CAAC,CAAC;IAChB,IAAI,CAACjB,UAAU,CAAC,CAAC;IACjB,IAAIiB,MAAM,EAAE;MACR,IAAI,CAACf,aAAa,CAAC,CAAC6E,cAAc,EAAE1E,QAAQ,KAAK;QAC7CI,MAAM,CAACC,IAAI,CAACO,MAAM,CAAC,CAAC1E,OAAO,CAACqE,CAAC,IAAI;UAC7BP,QAAQ,CAACO,CAAC,EAAE,EAAE,EAAEK,MAAM,CAACL,CAAC,CAAQ,CAAC;QACrC,CAAC,CAAC;MACN,CAAC,CAAC;IACN,CAAC,MAAM;MACH,IAAI,CAACT,eAAe,CAAC5D,OAAO,CAAC6C,EAAE,IAC3BA,EAAE,CAAC3B,cAAc,CAACsC,QAAQ,EAAE,IAAI,CAACM,QAAQ,CAACC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D;IACA,IAAI,CAAChB,MAAM,CAACnB,UAAU,CAAC6G,MAAM,CAAC;EAClC;AACJ;AAACC,MAAA,GAzTY7G,KAAK;AAAAK,eAAA,CAALL,KAAK,UACO,IAAIA,MAAK,CAAC,IAAI,EAAS,SAAS,CAAC;AAGlDf,QAAQ,CAAC6B,SAAS,CAAC3B,cAAc,CAAC2H,WAAW,EAAE,MAAM;EACjD9G,MAAK,CAACiF,IAAI,CAACtE,KAAK,CAAC,CAAC;AACtB,CAAC,CAAC;AAoTV,eAAeX,KAAK,CAACiF,IAAI;AAWzB,MAAM8B,YAAY,gBAAGpI,KAAK,CAACqI,aAAa,CAAQ,IAAW,CAAC;AAE5D,OAAO,MAAMC,aAAa,GAAGF,YAAY,CAACG,QAAQ;AAClD,OAAO,MAAMC,aAAa,GAAGJ,YAAY,CAACK,QAAQ;AAClD;AACA;AACA;AACCpH,KAAK,CAACiF,IAAI,CAACnD,aAAa,CAAC,CAAC6E,cAAc,EAAE1E,QAAQ,KAAK;EACpD,MAAMoF,YAAY,GAAGA,CAACC,MAAc,EAAEC,QAAgB,KAAK;IACvD,KAAI,IAAIhD,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAI,EAAE,EAAEA,CAAC,EAAE,EAAE;MACzBtC,QAAQ,CAAC,OAAOqF,MAAM,IAAI/C,CAAC,EAAE,EAAE,EAAE,EAAE;QAC/B,QAAQ,EAAE,eAAegD,QAAQ,GAAG;QACpCC,IAAI,EAAE;UACFpD,KAAK,EAAG,GAAG,GAAGG,CAAC,GAAG,EAAE,GAAI;QAC5B;MACJ,CAAQ,CAAC;IACb;EACJ,CAAC;EACD8C,YAAY,CAAC,IAAI,EAAEvH,mBAAmB,CAAC2H,sBAAsB,CAAC;EAC9DJ,YAAY,CAAC,IAAI,EAAGvH,mBAAmB,CAAC4H,gBAAgB,CAAC;EACzDL,YAAY,CAAC,IAAI,EAAGvH,mBAAmB,CAAC6H,iBAAiB,CAAC;EAC1DN,YAAY,CAAC,IAAI,EAAGvH,mBAAmB,CAAC8H,gBAAgB,CAAC;EAEzD3F,QAAQ,CAAC,QAAQ,EAAE,EAAE,EAAE;IACnBuF,IAAI,EAAE;MACFK,OAAO,EAAE;IACb;EACJ,CAAQ,CAAC;EACT5F,QAAQ,CAAC,QAAQ,EAAE,EAAE,EAAE;IACnBuF,IAAI,EAAE;MACFK,OAAO,EAAE;IACb;EACJ,CAAQ,CAAC;EAET,MAAMC,gBAAgB,GAAGA,CAACR,MAAc,EAAEC,QAAgB,EAAEQ,QAAgB,KAAK;IAC7E9F,QAAQ,CAAC,KAAKqF,MAAM,OAAO,EAAE,EAAE,EAAE;MAC7B,QAAQ,EAAE,eAAeC,QAAQ,qBAAqBQ,QAAQ,GAAG;MACjEP,IAAI,EAAE;QACFK,OAAO,EAAE;MACb;IACJ,CAAQ,CAAC;IACT5F,QAAQ,CAAC,KAAKqF,MAAM,OAAO,EAAE,EAAE,EAAE;MAC7B,QAAQ,EAAE,eAAeC,QAAQ,qBAAqBQ,QAAQ,GAAG;MACjEP,IAAI,EAAE;QACFK,OAAO,EAAE;MACb;IACJ,CAAQ,CAAC;EACb,CAAC;EACDC,gBAAgB,CAAC,KAAK,EAClBhI,mBAAmB,CAAC2H,sBAAsB,EAC1C3H,mBAAmB,CAACkI,gBAAgB,CAAC;EACzCF,gBAAgB,CAAC,IAAI,EACjBhI,mBAAmB,CAAC2H,sBAAsB,EAC1C3H,mBAAmB,CAACmI,sBAAsB,CAAC;EAC/CH,gBAAgB,CAAC,IAAI,EACjBhI,mBAAmB,CAAC4H,gBAAgB,EACpC5H,mBAAmB,CAACoI,gBAAgB,CAAC;EACzCJ,gBAAgB,CAAC,IAAI,EACjBhI,mBAAmB,CAAC6H,iBAAiB,EACrC7H,mBAAmB,CAACqI,iBAAiB,CAAC;EAC1CL,gBAAgB,CAAC,IAAI,EACjBhI,mBAAmB,CAAC8H,gBAAgB,EACpC9H,mBAAmB,CAACkI,gBAAgB,CAAC;EAEzC,MAAMI,mBAAmB,GAAGA,CAAA,KAAM;IAC9B,KAAI,IAAI7D,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAI,EAAE,EAAEA,CAAC,EAAE,EAAE;MACzBtC,QAAQ,CAAC,UAAUsC,CAAC,EAAE,EAAE,EAAE,EAAE;QACxBiD,IAAI,EAAG;UACHa,WAAW,EAAE,SAAS;UACtBC,YAAY,EAAE;YACVlE,KAAK,EAAEG,CAAC;YACRD,MAAM,EAAEC;UACZ,CAAC;UACDgE,aAAa,EAAE,IAAI;UACnBC,YAAY,EAAEjE,CAAC;UACfkE,SAAS,EAAElE,CAAC;UACZmE,MAAM,EAAE;QACZ;MACJ,CAAC,CAAC;IACN;EACJ,CAAC;EACDN,mBAAmB,CAAC,CAAC;EACrBnG,QAAQ,CAAC,QAAQ,EAAE,EAAE,EAAE;IACnBuF,IAAI,EAAE;MACFpD,KAAK,EAAE,CAAC;MACRE,MAAM,EAAE,CAAC;MACTqE,SAAS,EAAE,CAAC;QAAEC,KAAK,EAAE;MAAE,CAAC,CAAC;MACzBC,QAAQ,EAAE;IACd;EACJ,CAAC,CAAC;EACF5G,QAAQ,CAAC,WAAW,EAAE,EAAE,EAAE;IAAEuF,IAAI,EAAE;MAAEsB,eAAe,EAAEnC,cAAc,CAACoC;IAAY;EAAC,CAAC,CAAC;EACnF9G,QAAQ,CAAC,SAAS,EAAE,EAAE,EAAE;IAAEuF,IAAI,EAAE;MAAEsB,eAAe,EAAEnC,cAAc,CAACqC;IAAU;EAAC,CAAC,CAAC;EAC/E/G,QAAQ,CAAC,YAAY,EAAE,EAAE,EAAE;IAAEuF,IAAI,EAAE;MAAEsB,eAAe,EAAEnC,cAAc,CAACsC;IAAa;EAAC,CAAC,CAAC;EACrFhH,QAAQ,CAAC,YAAY,EAAE,EAAE,EAAE;IAAEuF,IAAI,EAAE;MAAEsB,eAAe,EAAEnC,cAAc,CAACuC;IAAa;EAAC,CAAC,CAAC;EACrFjH,QAAQ,CAAC,YAAY,EAAE,EAAE,EAAE;IAAEuF,IAAI,EAAE;MAAEsB,eAAe,EAAEnC,cAAc,CAACwC;IAAa;EAAC,CAAC,CAAC;EAErFlH,QAAQ,CAAC,eAAe,EAAE,EAAE,EAAE;IAAEuF,IAAI,EAAE;MAAE4B,WAAW,EAAEzC,cAAc,CAACoC;IAAY;EAAC,CAAC,CAAC;EACnF9G,QAAQ,CAAC,aAAa,EAAE,EAAE,EAAE;IAAEuF,IAAI,EAAE;MAAE4B,WAAW,EAAEzC,cAAc,CAACqC;IAAU;EAAC,CAAC,CAAC;EAC/E/G,QAAQ,CAAC,gBAAgB,EAAE,EAAE,EAAE;IAAEuF,IAAI,EAAE;MAAE4B,WAAW,EAAEzC,cAAc,CAACsC;IAAa;EAAC,CAAC,CAAC;EACrFhH,QAAQ,CAAC,gBAAgB,EAAE,EAAE,EAAE;IAAEuF,IAAI,EAAE;MAAE4B,WAAW,EAAEzC,cAAc,CAACuC;IAAa;EAAC,CAAC,CAAC;EACrFjH,QAAQ,CAAC,gBAAgB,EAAE,EAAE,EAAE;IAAEuF,IAAI,EAAE;MAAE4B,WAAW,EAAEzC,cAAc,CAACwC;IAAa;EAAC,CAAC,CAAC;EAErFlH,QAAQ,CAAC,mBAAmB,EAAE,EAAE,EAAE;IAAEoH,IAAI,EAAE;MAAE3C,UAAU,EAAE;IAAO;EAAC,CAAC,CAAC;EAClEzE,QAAQ,CAAC,yBAAyB,EAAE,EAAE,EAAE;IAAEoH,IAAI,EAAE;MAAE3C,UAAU,EAAE;IAAO;EAAC,CAAC,CAAC;AAC5E,CAAC,CAAC","ignoreList":[]}
|
1
|
+
{"version":3,"names":["cloneDeep","isNil","forEach","flatten","isArray","isEmpty","isObject","isString","get","reverse","React","camelCase","Dimensions","deepCopy","isWebPreviewMode","EventNotifier","ViewPort","EVENTS","ViewPortEvents","MediaQueryList","ThemeVariables","getErrorMessage","getStyleReference","isValidStyleProp","injector","DEFAULT_CLASS","window","matchMedia","query","DEVICE_BREAK_POINTS","ThemeEvent","Theme","constructor","parent","name","_this$getAppConfig","_defineProperty","revertLayoutToExpo50","getAppConfig","traceEnabled","enableTrace","flag","reset","children","t","subscribe","event","fn","eventNotifer","notify","replaceVariables","val","match","s","variableName","substring","length","replace","INSTANCE","clearCache","cache","registerStyle","styleGenerators","push","addStyle","bind","checkStyleProperties","value","Object","keys","map","k","console","log","extend","style","styles","getStyle","addTrace","styleName","mergedChildstyle","childStyle","parentStyle","v","__trace","prefix","result","collect","mergeStyle","flattenStyles","cs","filter","cleanseStyleProperties","paddingLeft","paddingRight","undefined","marginLeft","marginRight","screenWidth","width","screenHeight","height","i","stylePropertyValue","endsWith","Number","indexOf","split","c","mediaQuery","clonedStyle","matches","BASE","$new","newTheme","destroy","splice","getTextStyle","color","fontFamily","fontSize","fontStyle","fontWeight","includeFontPadding","fontVariant","letterSpacing","lineHeight","textAlign","textAlignVertical","textDecorationColor","textDecorationStyle","textShadowColor","textShadowOffset","textShadowRadius","textTransform","verticalAlign","writingDirection","userSelect","themeVariables","CHANGE","_Theme","SIZE_CHANGE","ThemeContext","createContext","ThemeProvider","Provider","ThemeConsumer","Consumer","addColStyles","device","minWidth","root","MIN_EXTRA_SMALL_DEVICE","MIN_SMALL_DEVICE","MIN_MEDIUM_DEVICE","MIN_LARGE_DEVICE","display","addDisplayStyles","maxWidth","MAX_LARGE_DEVICE","MAX_EXTRA_SMALL_DEVICE","MAX_SMALL_DEVICE","MAX_MEDIUM_DEVICE","addElevationClasses","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","zIndex","transform","scale","overflow","backgroundColor","dangerColor","infoColor","primaryColor","successColor","warningColor","borderColor","text"],"sources":["theme.tsx"],"sourcesContent":["import { cloneDeep, isNil, forEach, flatten, isArray, isEmpty, isObject, isString, isFunction, get, reverse } from 'lodash';\nimport React from 'react';\nimport { camelCase } from 'lodash-es';\nimport { TextStyle, ViewStyle, ImageStyle, ImageBackground, Dimensions } from 'react-native';\nimport { deepCopy, isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\nimport EventNotifier from '@wavemaker/app-rn-runtime/core/event-notifier';\nimport ViewPort, {EVENTS as ViewPortEvents} from '@wavemaker/app-rn-runtime/core/viewport';\nimport MediaQueryList from './MediaQueryList';\nimport ThemeVariables from './theme.variables';\nimport { getErrorMessage, getStyleReference, isValidStyleProp } from './style-prop.validator';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nexport const DEFAULT_CLASS = 'DEFAULT_CLASS';\n\ndeclare const matchMedia: any, window: any;\n\nif (typeof window !== \"undefined\") {\n // @ts-ignore: does not properly extend MediaQueryList\n window.matchMedia = (query: string) => new MediaQueryList(query);\n}\n\nexport const DEVICE_BREAK_POINTS = {\n 'MIN_EXTRA_SMALL_DEVICE' : '0px',\n 'MAX_EXTRA_SMALL_DEVICE' : '767px',\n 'MIN_SMALL_DEVICE' : '768px',\n 'MAX_SMALL_DEVICE' : '991px',\n 'MIN_MEDIUM_DEVICE' : '992px',\n 'MAX_MEDIUM_DEVICE' : '1199px',\n 'MIN_LARGE_DEVICE' : '1200px',\n 'MAX_LARGE_DEVICE' : '1000000px',\n};\n\nexport type styleGeneratorFn<T extends NamedStyles<any>> = (\n themeVariables: ThemeVariables,\n addStyle: (name: string, extend: string, style: T) => void) => void\n\nexport enum ThemeEvent {\n CHANGE ='change'\n};\n\nexport class Theme {\n public static BASE = new Theme(null as any, 'default');\n\n static {\n ViewPort.subscribe(ViewPortEvents.SIZE_CHANGE, () => {\n Theme.BASE.reset();\n });\n }\n\n\n private eventNotifer = new EventNotifier();\n\n private children: Theme[] = [];\n\n private styles: any = {};\n\n private cache: any = {};\n\n private traceEnabled = false;\n \n private revertLayoutToExpo50: Boolean;\n\n private styleGenerators: styleGeneratorFn<any>[] = [];\n\n private constructor(private parent:Theme, public readonly name: string) {\n this.revertLayoutToExpo50 = this.getAppConfig()?.revertLayoutToExpo50 || false;\n if (parent) {\n this.traceEnabled = parent.traceEnabled;\n } else {\n this.traceEnabled = isWebPreviewMode();\n }\n }\n\n private getAppConfig() {\n return injector.get<AppConfig>('APP_CONFIG');\n }\n\n public enableTrace(flag: boolean) {\n this.traceEnabled = flag;\n this.reset();\n this.children.forEach(t => t.enableTrace(flag));\n }\n\n public subscribe(event: ThemeEvent, fn: Function) {\n return this.eventNotifer.subscribe(event, fn);\n }\n\n public notify(event: ThemeEvent): void {\n this.eventNotifer.notify(event, []);\n this.children.forEach(t => t.notify(event));\n }\n\n private replaceVariables(val: string) {\n if(isString(val)) { \n (val.match(/_*var\\([^\\)]*\\)/g) || []).forEach((s) => {\n const variableName = s.substring(4, s.length - 1);\n val = val.replace(s, (ThemeVariables.INSTANCE as any)[variableName]\n || (ThemeVariables.INSTANCE as any)[variableName.substring(2)]\n || (ThemeVariables.INSTANCE as any)[camelCase(variableName.substring(2))]);\n val = this.replaceVariables(val);\n });\n }\n return val; \n }\n\n clearCache() {\n this.cache = {};\n this.children.forEach((t) => t.clearCache());\n }\n\n registerStyle<T extends NamedStyles<any>>(fn: styleGeneratorFn<T>) {\n this.styleGenerators.push(fn);\n fn(ThemeVariables.INSTANCE, this.addStyle.bind(this));\n }\n\n checkStyleProperties(name: string, value : any) {\n if (isObject(value)) {\n Object.keys(value).map((k) => this.checkStyleProperties(k, (value as any)[k]));\n } else if(name && !isValidStyleProp(name, value)) {\n console.log(\n `%cInvalid Style property in ${this.name}: ${getErrorMessage(name, value)}`,\n 'background-color: #FF0000;font-weight: bold; color: #fff'\n );\n console.log(`Refer: ${getStyleReference(name)}`);\n }\n }\n\n private addStyle<T extends NamedStyles<any>>(name: string, extend: string, style: T) {\n this.styles[name] = deepCopy(this.getStyle(extend), this.styles[name], style);\n }\n\n private addTrace(styleName: string, mergedChildstyle: any, childStyle: any, parentStyle?: any) {\n if (!this.traceEnabled) {\n return;\n }\n let addTrace = !isEmpty(childStyle);\n forEach(mergedChildstyle, (v: any, k: string) => {\n if (v && !isString(v) && !isArray(v) && isObject(v)) {\n addTrace = false;\n this.addTrace(styleName + '.' + k, v, childStyle && childStyle[k], parentStyle && parentStyle[k])\n }\n });\n if (addTrace) {\n mergedChildstyle['__trace'] = [\n {\n name: styleName,\n value: childStyle\n },\n ...(parentStyle?.__trace|| [])\n ];\n } else {\n mergedChildstyle['__trace'] = [...(parentStyle?.__trace|| [])];\n }\n }\n\n private flatten(style: any, prefix = \"\", result = {} as any) {\n let collect = !isEmpty(style);\n forEach(style, (v: any, k: string) => {\n if (v && !isString(v) && !isArray(v) && isObject(v)) {\n collect = false;\n this.flatten(v, (prefix ? prefix + '.' : '') + k, result)\n }\n });\n if (collect) {\n result[prefix] = style;\n }\n return result;\n }\n\n mergeStyle(...styles: any) {\n const style = deepCopy(...styles);\n if (this.traceEnabled) {\n const flattenStyles = this.flatten(style);\n Object.keys(flattenStyles).forEach(k => {\n const s = flattenStyles[k];\n s['__trace'] = flatten(reverse(styles.map((v: any) => {\n const cs = get(v, k);\n if (cs && cs.__trace) {\n return [...cs.__trace];\n }\n return [];\n }).filter((t: any) => t.length > 0)));\n });\n }\n return style;\n }\n\n cleanseStyleProperties(style: any) {\n if (!(style && isObject(style)) || isString(style) || isArray(style)) {\n return style;\n }\n style = style as any;\n if (isObject(style) && !isArray(style)) {\n Object.keys(style).forEach(k => {\n (style as any)[k] = this.replaceVariables((style as any)[k]);\n });\n }\n if (!isNil(style['shadowRadius'])) {\n if (style['shadowRadius'] <= 0) {\n style['shadowColor'] = 'transparent';\n } else if (isNil(style['elevation'])) {\n style['elevation'] = 2;\n }\n }\n if (!isNil(style['margin'])) {\n style['marginLeft'] = style['marginLeft'] || style['margin'];\n style['marginRight'] = style['marginRight'] || style['margin'];\n style['marginTop'] = style['marginTop'] || style['margin'];\n style['marginBottom'] = style['marginBottom'] || style['margin'];\n delete style['margin'];\n }\n if (!isNil(style['padding'])) {\n style['paddingLeft'] = style['paddingLeft'] || style['padding'];\n style['paddingRight'] = style['paddingRight'] || style['padding'];\n style['paddingTop'] = style['paddingTop'] || style['padding'];\n style['paddingBottom'] = style['paddingBottom'] || style['padding'];\n delete style['padding'];\n }\n if (this.revertLayoutToExpo50 && !isNil(style['flexDirection']) && style['flexDirection'] === 'row-reverse') {\n if (!isNil(style['paddingLeft']) || !isNil(style['paddingRight'])) {\n if (!isNil(style['paddingLeft']) && !isNil(style['paddingRight'])) {\n [style['paddingLeft'], style['paddingRight']] = [style['paddingRight'], style['paddingLeft']];\n } else {\n const [paddingLeft, paddingRight] = [style['paddingLeft'], style['paddingRight']];\n if (paddingLeft !== undefined) {\n style['paddingRight'] = paddingLeft;\n delete style['paddingLeft'];\n }\n if (paddingRight !== undefined) {\n style['paddingLeft'] = paddingRight;\n delete style['paddingRight'];\n }\n }\n }\n \n if (!isNil(style['marginLeft']) || !isNil(style['marginRight'])) {\n if (!isNil(style['marginLeft']) && !isNil(style['marginRight'])) {\n [style['marginLeft'], style['marginRight']] = [style['marginRight'], style['marginLeft']];\n } else {\n const [marginLeft, marginRight] = [style['marginLeft'], style['marginRight']];\n if (marginLeft !== undefined) {\n style['marginRight'] = marginLeft;\n delete style['marginLeft'];\n }\n if (marginRight !== undefined) {\n style['marginLeft'] = marginRight;\n delete style['marginRight'];\n }\n }\n } \n }\n let screenWidth = Dimensions.get('window').width;\n let screenHeight = Dimensions.get('window').height;\n Object.keys(style).forEach((k, i) => {\n let stylePropertyValue = style[k]\n if(typeof stylePropertyValue === 'string' && stylePropertyValue.endsWith('vw')) {\n stylePropertyValue = stylePropertyValue.replace('vw','')\n style[k] = Number(stylePropertyValue)/100 * screenWidth\n }\n if((typeof stylePropertyValue === 'string' && stylePropertyValue.endsWith('vh'))) {\n stylePropertyValue = stylePropertyValue.replace('vh','')\n style[k] = Number(stylePropertyValue)/100 * screenHeight\n }\n })\n Object.keys(style).forEach((k, i) => this.cleanseStyleProperties(style[k]));\n return style;\n }\n\n getStyle(name: string) {\n let style = this.cache[name];\n if (style) {\n return style;\n }\n if (!name) {\n return {};\n }\n if (name.indexOf(' ') > 0) {\n style = this.mergeStyle(...(name.split(' ').map(c => this.getStyle(c))));\n } else {\n const parentStyle = this.parent && this.parent.getStyle(name);\n const mediaQuery = (this.styles[name] || {})['@media'];\n let clonedStyle = {};\n if (!mediaQuery || matchMedia(mediaQuery).matches) {\n clonedStyle = cloneDeep(this.styles[name]);\n this.cleanseStyleProperties(clonedStyle);\n }\n if (this !== Theme.BASE && isWebPreviewMode()) {\n this.checkStyleProperties('', clonedStyle);\n }\n style = deepCopy(parentStyle, clonedStyle);\n this.addTrace(`@${this.name}:${name}`, style, clonedStyle, parentStyle);\n }\n this.cache[name] = style;\n return style;\n }\n\n $new(name = \"\", styles = {} as NamedStyles<any>) {\n const newTheme = new Theme(this, name);\n newTheme.reset(styles);\n this.children.push(newTheme);\n return newTheme;\n }\n\n destroy() {\n const i = this.parent.children.indexOf(this);\n if (i >= 0) {\n this.parent.children.splice(i, 1);\n }\n }\n \n getTextStyle(s: any) {\n if (!s) {\n return {};\n }\n return {\n color: s.color,\n fontFamily: s.fontFamily,\n fontSize: s.fontSize,\n fontStyle: s.fontStyle,\n fontWeight: s.fontWeight,\n includeFontPadding: s.includeFontPadding,\n fontVariant: s.fontVariant,\n letterSpacing: s.letterSpacing,\n lineHeight: s.lineHeight,\n textAlign: s.textAlign,\n textAlignVertical: s.textAlignVertical,\n textDecorationColor: s.textDecorationColor,\n textDecorationStyle: s.textDecorationStyle,\n textShadowColor: s.textShadowColor,\n textShadowOffset: s.textShadowOffset,\n textShadowRadius: s.textShadowRadius,\n textTransform: s.textTransform,\n verticalAlign: s.verticalAlign,\n writingDirection: s.writingDirection,\n userSelect: s.userSelect,\n } as TextStyle;\n }\n\n reset(styles?: NamedStyles<any>) {\n this.styles = {};\n this.clearCache();\n if (styles) {\n this.registerStyle((themeVariables, addStyle) => {\n Object.keys(styles).forEach(k => {\n addStyle(k, '', styles[k] as any);\n });\n });\n } else {\n this.styleGenerators.forEach(fn => \n fn(ThemeVariables.INSTANCE, this.addStyle.bind(this)));\n }\n this.notify(ThemeEvent.CHANGE);\n }\n}\nexport default Theme.BASE;\nexport type NamedStyles<T> = { [P in keyof T]: AllStyle | NamedStyles<T>};\nexport type BackgroundImageStyle = {\n backgroundImage: string,\n backgroundPosition: string,\n backgroundRepeat: string,\n backgroundSize: string | number\n};\n\nexport type AllStyle = (ViewStyle & TextStyle & ImageStyle & {userSelect?: 'none'| 'text'} & {rippleColor?: string});\n\nconst ThemeContext = React.createContext<Theme>(null as any);\n\nexport const ThemeProvider = ThemeContext.Provider;\nexport const ThemeConsumer = ThemeContext.Consumer;\n/**\n * Common styles\n */\n Theme.BASE.registerStyle((themeVariables, addStyle) => {\n const addColStyles = (device: string, minWidth: string) => {\n for(let i = 1; i <= 12; i++) {\n addStyle(`col-${device}-${i}`, '', {\n \"@media\": `(min-width: ${minWidth})`,\n root: {\n width: (100 * i / 12) + '%'\n }\n } as any)\n }\n };\n addColStyles('xs', DEVICE_BREAK_POINTS.MIN_EXTRA_SMALL_DEVICE);\n addColStyles('sm', DEVICE_BREAK_POINTS.MIN_SMALL_DEVICE);\n addColStyles('md', DEVICE_BREAK_POINTS.MIN_MEDIUM_DEVICE);\n addColStyles('lg', DEVICE_BREAK_POINTS.MIN_LARGE_DEVICE);\n\n addStyle('d-none', '', {\n root: {\n display: 'none'\n }\n } as any);\n addStyle('d-flex', '', {\n root: {\n display: 'flex'\n }\n } as any);\n\n const addDisplayStyles = (device: string, minWidth: string, maxWidth: string) => {\n addStyle(`d-${device}-none`, '', {\n \"@media\": `(min-width: ${minWidth}) and (max-width: ${maxWidth})`,\n root: {\n display: 'none'\n }\n } as any);\n addStyle(`d-${device}-flex`, '', {\n \"@media\": `(min-width: ${minWidth}) and (max-width: ${maxWidth})`,\n root: {\n display: 'flex'\n }\n } as any);\n };\n addDisplayStyles('all', \n DEVICE_BREAK_POINTS.MIN_EXTRA_SMALL_DEVICE,\n DEVICE_BREAK_POINTS.MAX_LARGE_DEVICE);\n addDisplayStyles('xs', \n DEVICE_BREAK_POINTS.MIN_EXTRA_SMALL_DEVICE,\n DEVICE_BREAK_POINTS.MAX_EXTRA_SMALL_DEVICE);\n addDisplayStyles('sm', \n DEVICE_BREAK_POINTS.MIN_SMALL_DEVICE,\n DEVICE_BREAK_POINTS.MAX_SMALL_DEVICE);\n addDisplayStyles('md', \n DEVICE_BREAK_POINTS.MIN_MEDIUM_DEVICE,\n DEVICE_BREAK_POINTS.MAX_MEDIUM_DEVICE);\n addDisplayStyles('lg', \n DEVICE_BREAK_POINTS.MIN_LARGE_DEVICE,\n DEVICE_BREAK_POINTS.MAX_LARGE_DEVICE);\n\n const addElevationClasses = () => {\n for(let i = 1; i <= 10; i++) {\n addStyle(`elevate${i}`, '', {\n root : {\n shadowColor: \"#000000\",\n shadowOffset: {\n width: i,\n height: i,\n },\n shadowOpacity: 0.27,\n shadowRadius: i,\n elevation: i,\n zIndex: 1\n }\n });\n }\n };\n addElevationClasses();\n addStyle('hidden', '', {\n root: {\n width: 0,\n height: 0,\n transform: [{ scale: 0 }],\n overflow: 'hidden'\n }\n });\n addStyle('bg-danger', '', { root: { backgroundColor: themeVariables.dangerColor }});\n addStyle('bg-info', '', { root: { backgroundColor: themeVariables.infoColor }});\n addStyle('bg-primary', '', { root: { backgroundColor: themeVariables.primaryColor }});\n addStyle('bg-success', '', { root: { backgroundColor: themeVariables.successColor }});\n addStyle('bg-warning', '', { root: { backgroundColor: themeVariables.warningColor }});\n\n addStyle('border-danger', '', { root: { borderColor: themeVariables.dangerColor }});\n addStyle('border-info', '', { root: { borderColor: themeVariables.infoColor }});\n addStyle('border-primary', '', { root: { borderColor: themeVariables.primaryColor }});\n addStyle('border-success', '', { root: { borderColor: themeVariables.successColor }});\n addStyle('border-warning', '', { root: { borderColor: themeVariables.warningColor }});\n\n addStyle('hide-context-menu', '', { text: { userSelect: 'none' }});\n addStyle('hide-context-menu-input', '', { text: { userSelect: 'none' }});\n});\n\n"],"mappings":"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","ignoreList":[]}
|