@wavemaker/app-rn-runtime 11.10.3-rc.205 → 11.10.4-next.27841
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/carousel/carousel.component.js +2 -1
- package/components/advanced/carousel/carousel.component.js.map +1 -1
- package/components/advanced/login/login.component.js +2 -1
- package/components/advanced/login/login.component.js.map +1 -1
- package/components/advanced/webview/webview.component.js +2 -1
- package/components/advanced/webview/webview.component.js.map +1 -1
- package/components/basic/anchor/anchor.component.js +2 -1
- package/components/basic/anchor/anchor.component.js.map +1 -1
- package/components/basic/animatedview.component.js +5 -2
- package/components/basic/animatedview.component.js.map +1 -1
- package/components/basic/audio/audio.component.js +2 -1
- package/components/basic/audio/audio.component.js.map +1 -1
- package/components/basic/button/button.component.js +1 -0
- package/components/basic/button/button.component.js.map +1 -1
- package/components/basic/buttongroup/buttongroup.component.js +2 -1
- package/components/basic/buttongroup/buttongroup.component.js.map +1 -1
- package/components/basic/custom/custom.component.js +2 -1
- package/components/basic/custom/custom.component.js.map +1 -1
- package/components/basic/icon/icon.component.js +2 -1
- package/components/basic/icon/icon.component.js.map +1 -1
- package/components/basic/label/label.component.js +2 -1
- package/components/basic/label/label.component.js.map +1 -1
- package/components/basic/lottie/lottie.component.js +2 -1
- package/components/basic/lottie/lottie.component.js.map +1 -1
- package/components/basic/message/message.component.js +2 -1
- package/components/basic/message/message.component.js.map +1 -1
- package/components/basic/modal/modal.component.js +4 -2
- package/components/basic/modal/modal.component.js.map +1 -1
- package/components/basic/picture/picture.component.js +93 -8
- package/components/basic/picture/picture.component.js.map +1 -1
- package/components/basic/picture/picture.props.js +1 -0
- package/components/basic/picture/picture.props.js.map +1 -1
- package/components/basic/progress-bar/progress-bar.component.js +2 -1
- package/components/basic/progress-bar/progress-bar.component.js.map +1 -1
- package/components/basic/progress-circle/progress-circle.component.js +1 -0
- package/components/basic/progress-circle/progress-circle.component.js.map +1 -1
- package/components/basic/search/search.component.js +3 -1
- package/components/basic/search/search.component.js.map +1 -1
- package/components/basic/spinner/spinner.component.js +2 -1
- package/components/basic/spinner/spinner.component.js.map +1 -1
- package/components/basic/tooltip/tooltip.component.js +2 -1
- package/components/basic/tooltip/tooltip.component.js.map +1 -1
- package/components/basic/video/video.component.js +36 -5
- package/components/basic/video/video.component.js.map +1 -1
- package/components/basic/video/video.props.js +1 -0
- package/components/basic/video/video.props.js.map +1 -1
- package/components/basic/video/video.styles.js +13 -0
- package/components/basic/video/video.styles.js.map +1 -1
- package/components/chart/area-chart/area-chart.component.js +1 -0
- package/components/chart/area-chart/area-chart.component.js.map +1 -1
- package/components/chart/basechart.component.js +1 -0
- package/components/chart/basechart.component.js.map +1 -1
- package/components/chart/pie-chart/pie-chart.component.js +1 -0
- package/components/chart/pie-chart/pie-chart.component.js.map +1 -1
- package/components/chart/stack-chart/stack-chart.component.js +1 -0
- package/components/chart/stack-chart/stack-chart.component.js.map +1 -1
- package/components/container/accordion/accordion.component.js +2 -1
- package/components/container/accordion/accordion.component.js.map +1 -1
- package/components/container/container.component.js +2 -1
- package/components/container/container.component.js.map +1 -1
- package/components/container/layoutgrid/gridcolumn/gridcolumn.component.js +2 -1
- package/components/container/layoutgrid/gridcolumn/gridcolumn.component.js.map +1 -1
- package/components/container/layoutgrid/gridrow/gridrow.component.js +2 -1
- package/components/container/layoutgrid/gridrow/gridrow.component.js.map +1 -1
- package/components/container/layoutgrid/layoutgrid.component.js +1 -0
- package/components/container/layoutgrid/layoutgrid.component.js.map +1 -1
- package/components/container/linearlayout/linearlayout.component.js +2 -1
- package/components/container/linearlayout/linearlayout.component.js.map +1 -1
- package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js +2 -1
- package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js.map +1 -1
- package/components/container/panel/panel.component.js +2 -1
- package/components/container/panel/panel.component.js.map +1 -1
- package/components/container/tabs/tabheader/tabheader.component.js +3 -1
- package/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
- package/components/container/tabs/tabpane/tabpane.component.js +2 -1
- package/components/container/tabs/tabpane/tabpane.component.js.map +1 -1
- package/components/container/tabs/tabs.component.js +2 -1
- package/components/container/tabs/tabs.component.js.map +1 -1
- package/components/container/tile/tile.component.js +2 -1
- package/components/container/tile/tile.component.js.map +1 -1
- package/components/container/wizard/wizard.component.js +2 -1
- package/components/container/wizard/wizard.component.js.map +1 -1
- package/components/container/wizard/wizardstep/wizardstep.component.js +2 -1
- package/components/container/wizard/wizardstep/wizardstep.component.js.map +1 -1
- package/components/data/card/card-content/card-content.component.js +2 -1
- package/components/data/card/card-content/card-content.component.js.map +1 -1
- package/components/data/card/card-footer/card-footer.component.js +2 -1
- package/components/data/card/card-footer/card-footer.component.js.map +1 -1
- package/components/data/card/card.component.js +2 -1
- package/components/data/card/card.component.js.map +1 -1
- package/components/data/form/form-body/form-body.component.js +2 -1
- package/components/data/form/form-body/form-body.component.js.map +1 -1
- package/components/data/form/form-field/form-field.component.js +2 -1
- package/components/data/form/form-field/form-field.component.js.map +1 -1
- package/components/data/form/form-footer/form-footer.component.js +2 -1
- package/components/data/form/form-footer/form-footer.component.js.map +1 -1
- package/components/data/form/form.component.js +2 -1
- package/components/data/form/form.component.js.map +1 -1
- package/components/data/list/list-template/list-template.component.js +2 -1
- package/components/data/list/list-template/list-template.component.js.map +1 -1
- package/components/data/list/list.component.js +6 -2
- package/components/data/list/list.component.js.map +1 -1
- package/components/data/list/list.props.js +1 -0
- package/components/data/list/list.props.js.map +1 -1
- package/components/device/barcodescanner/barcodescanner.component.js +2 -1
- package/components/device/barcodescanner/barcodescanner.component.js.map +1 -1
- package/components/device/camera/camera.component.js +2 -1
- package/components/device/camera/camera.component.js.map +1 -1
- package/components/dialogs/dialog/dialog.component.js +2 -1
- package/components/dialogs/dialog/dialog.component.js.map +1 -1
- package/components/dialogs/dialogactions/dialogactions.component.js +2 -1
- package/components/dialogs/dialogactions/dialogactions.component.js.map +1 -1
- package/components/dialogs/dialogcontent/dialogcontent.component.js +1 -0
- package/components/dialogs/dialogcontent/dialogcontent.component.js.map +1 -1
- package/components/input/calendar/calendar.component.js +2 -1
- package/components/input/calendar/calendar.component.js.map +1 -1
- package/components/input/checkbox/checkbox.component.js +2 -1
- package/components/input/checkbox/checkbox.component.js.map +1 -1
- package/components/input/checkboxset/checkboxset.component.js +2 -1
- package/components/input/checkboxset/checkboxset.component.js.map +1 -1
- package/components/input/chips/chips.component.js +2 -1
- package/components/input/chips/chips.component.js.map +1 -1
- package/components/input/composite/composite.component.js +2 -1
- package/components/input/composite/composite.component.js.map +1 -1
- package/components/input/currency/currency.component.js +2 -1
- package/components/input/currency/currency.component.js.map +1 -1
- package/components/input/epoch/base-datetime.component.js +3 -2
- package/components/input/epoch/base-datetime.component.js.map +1 -1
- package/components/input/epoch/wheel-date-picker.component.js +91 -84
- package/components/input/epoch/wheel-date-picker.component.js.map +1 -1
- package/components/input/epoch/wheelpicker/wheelpicker.component.js +2 -1
- package/components/input/epoch/wheelpicker/wheelpicker.component.js.map +1 -1
- package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js +2 -1
- package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js.map +1 -1
- package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js +2 -1
- package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js.map +1 -1
- package/components/input/fileupload/fileupload.component.js +2 -1
- package/components/input/fileupload/fileupload.component.js.map +1 -1
- package/components/input/number/number.component.js +2 -1
- package/components/input/number/number.component.js.map +1 -1
- package/components/input/radioset/radioset.component.js +4 -2
- package/components/input/radioset/radioset.component.js.map +1 -1
- package/components/input/rating/rating.component.js +2 -1
- package/components/input/rating/rating.component.js.map +1 -1
- package/components/input/select/select.component.js +4 -1
- package/components/input/select/select.component.js.map +1 -1
- package/components/input/slider/slider.component.js +2 -1
- package/components/input/slider/slider.component.js.map +1 -1
- package/components/input/switch/switch.component.js +2 -1
- package/components/input/switch/switch.component.js.map +1 -1
- package/components/input/text/text.component.js +2 -1
- package/components/input/text/text.component.js.map +1 -1
- package/components/input/textarea/textarea.component.js +2 -1
- package/components/input/textarea/textarea.component.js.map +1 -1
- package/components/input/toggle/toggle.component.js +1 -0
- package/components/input/toggle/toggle.component.js.map +1 -1
- package/components/navigation/appnavbar/appnavbar.component.js +2 -1
- package/components/navigation/appnavbar/appnavbar.component.js.map +1 -1
- package/components/navigation/navbar/navbar.component.js +2 -1
- package/components/navigation/navbar/navbar.component.js.map +1 -1
- package/components/navigation/navitem/navitem.component.js +2 -1
- package/components/navigation/navitem/navitem.component.js.map +1 -1
- package/components/navigation/popover/popover.component.js +1 -0
- package/components/navigation/popover/popover.component.js.map +1 -1
- package/components/page/page.component.js.map +1 -1
- package/core/AppConfig.js.map +1 -1
- package/core/base.component.js +15 -21
- package/core/base.component.js.map +1 -1
- package/core/components/textinput.component.js +2 -1
- package/core/components/textinput.component.js.map +1 -1
- package/core/tappable.component.js +7 -3
- package/core/tappable.component.js.map +1 -1
- package/core/utils.js +13 -11
- package/core/utils.js.map +1 -1
- package/npm-shrinkwrap.json +84 -84
- package/package-lock.json +84 -84
- package/package.json +2 -2
- package/runtime/App.js +18 -7
- package/runtime/App.js.map +1 -1
- package/runtime/base-page.component.js +2 -3
- package/runtime/base-page.component.js.map +1 -1
- package/styles/style-props.js +1 -0
- package/styles/style-props.js.map +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["assign","isUndefined","isNil","React","AccessibilityInfo","Platform","StyleSheet","View","Animatable","ThemeVariables","StyleProps","getStyleName","BackgroundComponent","injector","ROOT_LOGGER","deepCopy","getPosition","setPosition","BASE_THEME","ThemeConsumer","ThemeEvent","EventNotifier","PropsProvider","assignIn","HideMode","AssetConsumer","FixedView","TextIdPrefixConsumer","isScreenReaderEnabled","TappableContext","WmComponentNode","WIDGET_LOGGER","extend","ParentContext","createContext","BaseComponentState","constructor","_defineProperty","undefined","defineStyles","styles","text","fontFamily","INSTANCE","baseFont","userSelect","BaseProps","args","BaseComponent","Component","markupProps","defaultClass","defaultProps","defaultState","ADD_TO_DOM","createElement","Fragment","I18nService","get","state","notifier","name","props","componentNode","instance","propertyProvider","show","$new","$old","debug","initialized","styleName","styleOverrides","setTimeout","cleanRefresh","onPropertyChange","_INSTANCE","_showView","deferload","check","proxy","Proxy","target","prop","receiver","propName","toString","has","Reflect","set","value","overrideProp","updateState","cleanup","push","updateStateTimeouts","forEach","v","clearTimeout","theme","subscribe","CHANGE","forceUpdate","addEventListener","remove","destroyParentListeners","event","fn","notify","emitToParent","isRTL","i18nService","isRTLLocale","animate","setState","animationId","Date","now","animatableProps","setProp","setPropDefault","setDefault","getDefaultStyles","getStyle","reset","newPartialState","callback","destroyed","stateFn","oldState","oldProps","newState","Object","keys","k","onUpdateState","_this$props$listener","_this$props$listener2","listener","onComponentChange","timeoutId","splice","indexOf","shouldComponentUpdate","nextProps","nextState","nextContext","key","componentDidMount","onComponentInit","componentWillAttach","isFixed","hide","componentWillDetach","componentWillUnmount","_this$parent","onComponentDestroy","f","parent","destroy","componentDidUpdate","prevProps","prevState","snapshot","invokeEventCallback","eventName","callBack","map","a","apply","e","console","error","showView","isVisible","refresh","renderSkeleton","parentListenerDestroyers","setParent","add","handleLayout","newLayoutPosition","y","nativeEvent","layout","x","copyStyles","property","from","to","renderFixedContainer","style","rootStyle","left","top","bottom","right","width","height","root","mergeStyle","addAnimation","renderWidget","n","onLayout","_extends","setBackground","bgStyle","_background","image","backgroundImage","position","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","borderRadius","highlight","onTouchStart","borderWidth","overflow","backgroundColor","borderColor","borderStyle","zIndex","absoluteFill","getTestId","suffix","id","testIdPrefix","getTestProps","OS","accessibilityLabel","testID","accessible","getStyleClassName","classname","getTestPropsForInput","getTestPropsForAction","getTestPropsForLabel","getLayoutOfWidget","scrollToTop","scrollToEnd","scrollToPosition","widgetName","_this$getLayoutOfWidg","positionY","getDependenciesFromContext","Consumer","tappable","closestTappable","loadAsset","_this$parent2","_showSkeleton","showskeleton","Provider","render","selectedLocale","getSelectedLocale","info","hideMode","DONOT_ADD_TO_DOM","disabled","showindevice","d","join","cleanseStyleProperties","hasOwnProperty","eleToRender"],"sources":["base.component.tsx"],"sourcesContent":["import { assign, isUndefined, isNil } from 'lodash';\nimport React, { ReactNode } from 'react';\nimport { AccessibilityInfo, LayoutChangeEvent, Platform, StyleSheet, TextStyle, View, ViewStyle } from 'react-native';\nimport { AnimatableProps } from 'react-native-animatable';\nimport * as Animatable from 'react-native-animatable';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nimport { StyleProps, getStyleName } from '@wavemaker/app-rn-runtime/styles/style-props';\nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport { ROOT_LOGGER } from '@wavemaker/app-rn-runtime/core/logger';\nimport { deepCopy, getPosition, setPosition } from '@wavemaker/app-rn-runtime/core/utils';\nimport BASE_THEME, { NamedStyles, AllStyle, ThemeConsumer, ThemeEvent, Theme } from '../styles/theme';\nimport EventNotifier from './event-notifier';\nimport { PropsProvider } from './props.provider';\nimport { assignIn } from 'lodash-es';\nimport { HideMode } from './if.component';\nimport { AssetConsumer } from './asset.provider';\nimport { FixedView } from './fixed-view.component';\nimport { TextIdPrefixConsumer } from './testid.provider';\nimport { isScreenReaderEnabled } from './accessibility';\nimport { Tappable, TappableContext } from './tappable.component';\nimport { WmComponentNode } from './wm-component-tree';\n\nexport const WIDGET_LOGGER = ROOT_LOGGER.extend('widget');\n\nexport const ParentContext = React.createContext(null as any);\n\nexport class BaseComponentState<T extends BaseProps> {\n public animationId?: number = 0;\n public animatableProps?: AnimatableProps<ViewStyle> = undefined;\n public props = {} as T;\n public hide? = false;\n public highlight? = false;\n}\n\nexport type BaseStyles = NamedStyles<any> & {\n root: AllStyle,\n text: TextStyle & {userSelect?: 'none'| 'text'}\n}\n\nexport function defineStyles<T>(styles: T): T {\n return deepCopy({\n text: {\n fontFamily: ThemeVariables.INSTANCE.baseFont,\n userSelect: 'text'\n }\n }, styles);\n}\n\nexport interface LifecycleListener {\n onComponentChange?: (c: BaseComponent<any, any, any>) => void;\n onComponentInit?: (c: BaseComponent<any, any, any>) => void;\n onComponentDestroy?: (c: BaseComponent<any, any, any>) => void;\n}\n\nexport class BaseProps extends StyleProps {\n id?: string = null as any;\n name?: string = null as any;\n key?: any = null as any;\n disabled? = false;\n show? = true as Boolean | String | Number;\n styles?: any = null;\n classname?: string = null as any;\n listener?: LifecycleListener = null as any;\n showindevice?: ('xs'|'sm'|'md'|'lg'|'xl'|'xxl')[] = null as any;\n showskeleton?: boolean = undefined;\n deferload?: boolean = false;\n showskeletonchildren?: boolean = true;\n disabletoucheffect?:boolean = false;\n}\n\nexport abstract class BaseComponent<T extends BaseProps, S extends BaseComponentState<T>, L extends BaseStyles> extends React.Component<T, S> {\n public styles: L = null as any;\n public hideMode = HideMode.ADD_TO_DOM;\n private propertyProvider: PropsProvider<T>;\n public proxy: BaseComponent<T, S, L>;\n public _INSTANCE: BaseComponent<T, S, L>;\n public initialized = false;\n public cleanup = [] as Function[];\n public theme = BASE_THEME;\n public updateStateTimeouts= [] as NodeJS.Timeout[];\n public parent: BaseComponent<any, any, any> = null as any;\n public destroyed = false;\n public _showSkeleton = false;\n public isFixed = false;\n private notifier = new EventNotifier();\n private parentListenerDestroyers = [] as Function[];\n public _background = <></>;\n private styleOverrides = {} as any;\n public loadAsset: (path: string) => number | string = null as any;\n private i18nService = injector.I18nService.get();\n public testIdPrefix = '';\n private _showView = true;\n public closestTappable?: Tappable; \n public componentNode: WmComponentNode;\n\n\n constructor(markupProps: T, public defaultClass: string, defaultProps?: T, defaultState?: S) {\n super(markupProps);\n this.state = (defaultState || {} as S);\n this.notifier.name = this.props.name || '';\n this.componentNode = new WmComponentNode({\n instance: this\n });\n this.propertyProvider = new PropsProvider<T>(\n assign({show: true}, defaultProps),\n assign({}, markupProps),\n (name: string, $new: any, $old: any) => {\n WIDGET_LOGGER.debug(() => `${this.props.name || this.constructor.name}: ${name} changed from ${$old} to ${$new}`);\n if (this.initialized) {\n const styleName = getStyleName(name);\n if (styleName) {\n if ($new === undefined) {\n delete this.styleOverrides[styleName];\n } else {\n this.styleOverrides[styleName] = $new;\n }\n }\n }\n if (name === 'showskeleton' && this.initialized) {\n setTimeout(() => this.cleanRefresh(), 100);\n }\n this.onPropertyChange(name, $new, $old);\n });\n //@ts-ignore\n this.state.props =this.propertyProvider.get();\n this._INSTANCE = this;\n //@ts-ignore\n this._showView = !this.props.deferload;\n this.propertyProvider.check();\n //@ts-ignore\n this.proxy = (new Proxy(this, {\n get: (target, prop, receiver): any => {\n const propName = prop.toString();\n if (this.propertyProvider.has(propName)) {\n //@ts-ignore\n return this.state.props[propName];\n }\n return Reflect.get(target, prop, receiver);\n },\n set: (target: any, prop, value: any): any => {\n const propName = prop.toString();\n if (this.propertyProvider.has(propName)) {\n // @ts-ignore\n const props = {} as any;\n this.propertyProvider.overrideProp(propName, value);\n props[propName] = value;\n this.updateState({\n props: props\n } as S);\n return true;\n } else {\n return Reflect.set(target, prop, value);\n }\n }\n }));\n this.cleanup.push(() => {\n this.updateStateTimeouts.forEach(v => clearTimeout(v));\n });\n this.cleanup.push(this.theme.subscribe(ThemeEvent.CHANGE, () => {\n this.forceUpdate();\n }));\n this.cleanup.push(AccessibilityInfo.addEventListener('screenReaderChanged',\n () => {\n setTimeout(() => {\n this.forceUpdate();\n }, 100);\n },\n ).remove);\n this.cleanup.push(() => {\n this.destroyParentListeners();\n });\n }\n\n public subscribe(event: string, fn: Function) {\n return this.notifier.subscribe(event, fn);\n }\n\n public notify(event: string, args: any[], emitToParent = false) {\n return this.notifier.notify(event, args, emitToParent);\n }\n\n public get isRTL(){\n return this.i18nService.isRTLLocale();\n }\n\n public animate(props: AnimatableProps<ViewStyle>) {\n this.setState({\n animationId: Date.now(),\n animatableProps: props\n });\n }\n\n setProp(propName: string, value: any) {\n this.propertyProvider.set(propName, value);\n this.updateState({props: {}} as S);\n }\n\n setPropDefault(propName: string, value: any) {\n this.propertyProvider.setDefault(propName, value);\n }\n \n onPropertyChange(name: string, $new: any, $old: any) { \n }\n \n getDefaultStyles() {\n return this.theme.getStyle(this.defaultClass);\n }\n\n reset() {\n\n }\n\n updateState(newPartialState: S, callback?: ()=>void) {\n if (this.destroyed) {\n return;\n }\n const stateFn = (oldState: S) => {\n const oldProps = oldState.props;\n const newState = this.initialized ? assignIn({}, oldState, newPartialState) : assignIn(oldState, newPartialState);\n if (newPartialState.props) {\n Object.keys(newPartialState.props).forEach((k) => {\n //@ts-ignore\n oldProps[k] = newState.props[k];\n });\n newState.props = oldProps;\n }\n return newState;\n };\n const onUpdateState = () => {\n callback && callback();\n this.props.listener?.onComponentChange\n && this.props.listener?.onComponentChange(this);\n }\n if (!this.initialized) {\n this.state = stateFn(this.state);\n onUpdateState();\n } else {\n const timeoutId = setTimeout(() => {\n this.setState(stateFn, onUpdateState);\n this.updateStateTimeouts.splice(this.updateStateTimeouts.indexOf(timeoutId), 1);\n });\n this.updateStateTimeouts.push(timeoutId);\n }\n }\n\n shouldComponentUpdate(nextProps: T, nextState: S, nextContext: any) {\n if (this.propertyProvider.check(nextProps)) {\n return true;\n }\n for(let key in nextState) {\n if(key !== 'props' && (!(key in this.state) || nextState[key] !== this.state[key])) {\n return true;\n }\n }\n\n for(let key in this.state) {\n if(key !== 'props' && (!(key in nextState) || this.state[key] !== nextState[key])) {\n return true;\n }\n }\n return false;\n }\n\n componentDidMount() {\n if (this.props.listener && this.props.listener.onComponentInit) {\n this.props.listener.onComponentInit(this.proxy);\n }\n this.initialized = true;\n }\n\n componentWillAttach() {\n if (this.isFixed) {\n this.setState({hide: false});\n }\n }\n\n componentWillDetach() {\n if (this.isFixed) {\n this.setState({hide: true});\n }\n }\n\n componentWillUnmount() {\n this.destroyed = true;\n if (this.props.listener && this.props.listener.onComponentDestroy) {\n this.props.listener.onComponentDestroy(this.proxy);\n }\n this.cleanup.forEach(f => f && f());\n this.parent?.componentNode?.remove(this.componentNode);\n this.notifier.destroy();\n this.notifier.notify('destroy', []);\n }\n \n componentDidUpdate(prevProps: Readonly<T>, prevState: Readonly<S>, snapshot?: any): void {\n if (this.propertyProvider.check(this.props)) {\n this.forceUpdate();\n }\n }\n\n invokeEventCallback(eventName: string, args: any[]) {\n //@ts-ignore\n const callBack: Function = this.props[eventName];\n args = args && args.map(a => (a === this) ? this.proxy : a)\n if (callBack) {\n try {\n return callBack.apply(this.proxy, args);\n } catch(e) {\n console.error(e);\n }\n }\n }\n\n showView() {\n return this.isVisible();\n }\n\n isVisible() {\n const show = this.state.props.show;\n return show !== false && show !== 'false' && show !== '0' && !isNil(show) && show !== \"\";\n }\n\n protected abstract renderWidget(props: T): ReactNode;\n\n public refresh() {\n this.forceUpdate();\n }\n\n public cleanRefresh() {\n this.forceUpdate(() => this.notifier.notify('forceUpdate', []));\n }\n \n public renderSkeleton (props: T): ReactNode {\n return null;\n }\n\n public destroyParentListeners() {\n this.parentListenerDestroyers.map(fn => fn());\n }\n\n protected setParent(parent: BaseComponent<any, any, any>) {\n if (parent && this.parent !== parent) {\n this.parent = parent;\n this.parent.componentNode.add(this.componentNode);\n this.notifier.setParent(parent.notifier);\n this.parentListenerDestroyers = [\n this.parent.subscribe('forceUpdate', () => {\n this.cleanRefresh();\n }),\n this.parent.subscribe('destroy', () => {\n this.destroyParentListeners();\n })\n ];\n }\n }\n\n handleLayout(event: LayoutChangeEvent) {\n const key = this.props.name;\n const newLayoutPosition = {\n [key as string]: {\n y: event.nativeEvent.layout.y,\n x: event.nativeEvent.layout.x\n }\n }\n setPosition(newLayoutPosition);\n }\n\n copyStyles(property: string, from: any, to: any) {\n if (!isUndefined(from[property])) {\n to[property] = from[property];\n }\n }\n\n renderFixedContainer(props: T) {\n const style = {} as ViewStyle;\n const rootStyle = {\n left: 0,\n top: 0,\n bottom: 0,\n right: 0,\n width: \"100%\",\n height: \"100%\"\n } as ViewStyle;\n this.copyStyles('left', this.styles.root, style);\n this.copyStyles('top', this.styles.root, style);\n this.copyStyles('right', this.styles.root, style);\n this.copyStyles('bottom', this.styles.root, style);\n this.copyStyles('width', this.styles.root, style);\n this.copyStyles('height', this.styles.root, style);\n this.styles = this.theme.mergeStyle(this.styles, {root: rootStyle});\n return (<FixedView style={style} theme={this.theme}>{this.addAnimation(this.renderWidget(props))}</FixedView>);\n }\n\n private addAnimation(n: ReactNode) {\n if (!this.state.animatableProps) {\n return (\n <>\n <View \n onLayout={(event)=>{this.handleLayout(event)}}\n style={{height: 0, width: 0}}\n >\n </View>\n {n}\n </>\n )\n }\n return (\n <Animatable.View \n onLayout={(event)=>{this.handleLayout(event)}} \n key={this.state.animationId} \n {...this.state.animatableProps}\n >\n {n}\n </Animatable.View>);\n }\n \n private setBackground() {\n const bgStyle = this.styles.root as any;\n this._background = (\n <>\n <BackgroundComponent \n image={bgStyle.backgroundImage}\n position={bgStyle.backgroundPosition}\n size={bgStyle.backgroundSize}\n repeat={bgStyle.backgroundRepeat}\n resizeMode={bgStyle.backgroundResizeMode}\n style={{borderRadius: this.styles.root.borderRadius}}>\n </BackgroundComponent>\n {this.state.highlight ? (<View onTouchStart={() => {\n this.setState({\n highlight: false\n })\n }} style={[{\n borderWidth: 2,\n overflow: 'hidden',\n backgroundColor: '#FFFF0033', \n borderColor: 'orange',\n borderStyle: 'dashed',\n zIndex: 1000,\n borderRadius: 0,\n }, StyleSheet.absoluteFill]}></View>) : null}\n </>\n );\n delete (this.styles.root as any)['backgroundImage'];\n delete (this.styles.root as any)['backgroundPosition'];\n delete (this.styles.root as any)['backgroundResizeMode'];\n delete (this.styles.root as any)['backgroundSize'];\n delete (this.styles.root as any)['backgroundRepeat'];\n }\n\n public getTestId(suffix?: string) {\n let id = this.props.id || this.props.name;\n if (this.testIdPrefix) {\n id = this.testIdPrefix + '_' + id;\n }\n if (suffix) {\n id = id + '_' + suffix;\n }\n return id;\n }\n\n public getTestProps(suffix?: string) {\n let id = this.getTestId(suffix);\n if (isScreenReaderEnabled()) {\n return {};\n }\n if (Platform.OS === 'android' || Platform.OS === 'web') {\n return {\n accessibilityLabel: id,\n testID: id\n };\n }\n return {\n accessible: false,\n testID: id\n };\n }\n\n public getStyleClassName() {\n return this.state.props.classname;\n }\n\n public getTestPropsForInput(suffix?: string) {\n return this.getTestProps(suffix || 'i');\n }\n\n public getTestPropsForAction(suffix?: string) {\n return this.getTestProps(suffix || 'a');\n }\n\n public getTestPropsForLabel(suffix?: string) {\n return this.getTestProps(suffix || 'l');\n }\n\n public getLayoutOfWidget(name: string): {[index: string]: number} | void {\n return getPosition(name)\n }\n\n public scrollToTop(){\n this.notify('scrollToPosition', [{\n x: 0,\n y: 0\n }]);\n }\n\n public scrollToEnd() {\n this.notify('scrollToEnd', []);\n }\n\n scrollToPosition(widgetName: string) {\n const positionY = this.getLayoutOfWidget(widgetName)?.y;\n this.notify('scrollToPosition', [{\n x: 0,\n y: positionY\n }])\n }\n\n private getDependenciesFromContext(fn: () => ReactNode) {\n return (\n <TappableContext.Consumer>{(tappable) => {\n this.closestTappable = tappable;\n return (\n <TextIdPrefixConsumer>\n {(testIdPrefix) => {\n this.testIdPrefix = testIdPrefix || '';\n return (<AssetConsumer>\n {(loadAsset) => {\n this.loadAsset = loadAsset;\n return (<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 return (\n <ParentContext.Provider value={this}>\n <ThemeConsumer>\n {(theme) => { \n this.theme = theme || BASE_THEME;\n return fn();\n }}\n </ThemeConsumer>\n </ParentContext.Provider>);\n }} \n </ParentContext.Consumer>);\n }}\n </AssetConsumer>);\n }}\n </TextIdPrefixConsumer>)}}\n </TappableContext.Consumer>); \n }\n \n public render(): ReactNode {\n const props = this.state.props;\n this.isFixed = false;\n const selectedLocale = this.i18nService.getSelectedLocale();\n return this.getDependenciesFromContext(() => {\n WIDGET_LOGGER.info(() => `${this.props.name || this.constructor.name} is rendering.`);\n this._showView = this._showView || this.showView();\n if (this.state.hide \n || (!this.isVisible() && this.hideMode === HideMode.DONOT_ADD_TO_DOM)\n || !this._showView) {\n return null;\n }\n const classname = this.getStyleClassName();\n this.styles = this.theme.mergeStyle(\n this.getDefaultStyles(),\n {text: this.theme.getStyle('app-' + selectedLocale)},\n {text: this.theme.getStyle(this.defaultClass + '-' + selectedLocale)},\n props.disabled ? this.theme.getStyle(this.defaultClass + '-disabled') : null,\n this.isRTL ? this.theme.getStyle(this.defaultClass + '-rtl') : null,\n classname && this.theme.getStyle(classname),\n props.showindevice && this.theme.getStyle('d-all-none ' + props.showindevice.map(d => `d-${d}-flex`).join(' ')),\n this.theme.cleanseStyleProperties(this.props.styles),\n this.theme.cleanseStyleProperties({\n root: this.styleOverrides,\n text: this.styleOverrides\n }));\n if (this.styles.root.hasOwnProperty('_background')) {\n delete this.styles.root.backgroundColor;\n }\n if (!this.isVisible()) {\n assign(this.styles, this.theme.getStyle('hidden'))\n }\n let eleToRender = (this._showSkeleton && this.renderSkeleton(props));\n if (eleToRender) {\n return eleToRender;\n }\n this.setBackground();\n this.isFixed = (this.styles.root.position as any) === 'fixed';\n if (this.isFixed) {\n this.styles.root.position = undefined;\n return this.renderFixedContainer(props);\n }\n return this.addAnimation(this.renderWidget(this.state.props)); \n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["assign","isUndefined","isNil","React","AccessibilityInfo","Platform","StyleSheet","View","Animatable","ThemeVariables","StyleProps","getStyleName","BackgroundComponent","injector","ROOT_LOGGER","deepCopy","getPosition","setPosition","BASE_THEME","ThemeConsumer","ThemeEvent","EventNotifier","PropsProvider","assignIn","HideMode","AssetConsumer","FixedView","TextIdPrefixConsumer","isScreenReaderEnabled","TappableContext","WmComponentNode","WIDGET_LOGGER","extend","ParentContext","createContext","BaseComponentState","constructor","_defineProperty","undefined","defineStyles","styles","text","fontFamily","INSTANCE","baseFont","userSelect","BaseProps","args","BaseComponent","Component","markupProps","defaultClass","defaultProps","defaultState","ADD_TO_DOM","createElement","Fragment","I18nService","get","state","notifier","name","props","componentNode","instance","propertyProvider","show","$new","$old","debug","initialized","styleName","styleOverrides","setTimeout","cleanRefresh","onPropertyChange","_INSTANCE","_showView","deferload","check","proxy","Proxy","target","prop","receiver","propName","toString","has","Reflect","set","value","overrideProp","updateState","cleanup","push","updateStateTimeouts","forEach","v","clearTimeout","theme","subscribe","CHANGE","forceUpdate","addEventListener","remove","destroyParentListeners","event","fn","notify","emitToParent","isRTL","i18nService","isRTLLocale","animate","setState","animationId","Date","now","animatableProps","setProp","setPropDefault","setDefault","getDefaultStyles","getStyle","reset","newPartialState","callback","destroyed","stateFn","oldState","oldProps","newState","Object","keys","k","onUpdateState","_this$props$listener","_this$props$listener2","listener","onComponentChange","timeoutId","splice","indexOf","shouldComponentUpdate","nextProps","nextState","nextContext","key","componentDidMount","onComponentInit","componentWillAttach","isFixed","hide","componentWillDetach","componentWillUnmount","_this$parent","onComponentDestroy","f","parent","destroy","componentDidUpdate","prevProps","prevState","snapshot","invokeEventCallback","eventName","callBack","map","a","apply","e","console","error","showView","isVisible","refresh","renderSkeleton","parentListenerDestroyers","setParent","add","getName","handleLayout","newLayoutPosition","y","nativeEvent","layout","x","copyStyles","property","from","to","renderFixedContainer","style","rootStyle","left","top","bottom","right","width","height","root","mergeStyle","addAnimation","renderWidget","n","_extends","setBackground","bgStyle","_background","image","backgroundImage","position","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","borderRadius","highlight","onTouchStart","borderWidth","overflow","backgroundColor","borderColor","borderStyle","zIndex","absoluteFill","getTestId","suffix","id","testIdPrefix","getTestProps","OS","accessibilityLabel","testID","accessible","getStyleClassName","classname","getTestPropsForInput","getTestPropsForAction","getTestPropsForLabel","getLayoutOfWidget","scrollToTop","scrollToEnd","scrollToPosition","widgetName","_this$getLayoutOfWidg","positionY","getDependenciesFromContext","Consumer","tappable","closestTappable","loadAsset","_this$parent2","_showSkeleton","showskeleton","Provider","render","selectedLocale","getSelectedLocale","info","hideMode","DONOT_ADD_TO_DOM","disabled","showindevice","d","join","cleanseStyleProperties","hasOwnProperty","eleToRender"],"sources":["base.component.tsx"],"sourcesContent":["import { assign, isUndefined, isNil } from 'lodash';\nimport React, { ReactNode } from 'react';\nimport { AccessibilityInfo, LayoutChangeEvent, Platform, StyleSheet, TextStyle, View, ViewStyle } from 'react-native';\nimport { AnimatableProps } from 'react-native-animatable';\nimport * as Animatable from 'react-native-animatable';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nimport { StyleProps, getStyleName } from '@wavemaker/app-rn-runtime/styles/style-props';\nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport { ROOT_LOGGER } from '@wavemaker/app-rn-runtime/core/logger';\nimport { deepCopy, getPosition, setPosition } from '@wavemaker/app-rn-runtime/core/utils';\nimport BASE_THEME, { NamedStyles, AllStyle, ThemeConsumer, ThemeEvent, Theme } from '../styles/theme';\nimport EventNotifier from './event-notifier';\nimport { PropsProvider } from './props.provider';\nimport { assignIn } from 'lodash-es';\nimport { HideMode } from './if.component';\nimport { AssetConsumer } from './asset.provider';\nimport { FixedView } from './fixed-view.component';\nimport { TextIdPrefixConsumer } from './testid.provider';\nimport { isScreenReaderEnabled } from './accessibility';\nimport { Tappable, TappableContext } from './tappable.component';\nimport { WmComponentNode } from './wm-component-tree';\n\nexport const WIDGET_LOGGER = ROOT_LOGGER.extend('widget');\n\nexport const ParentContext = React.createContext(null as any);\n\nexport class BaseComponentState<T extends BaseProps> {\n public animationId?: number = 0;\n public animatableProps?: AnimatableProps<ViewStyle> = undefined;\n public props = {} as T;\n public hide? = false;\n public highlight? = false;\n}\n\nexport type BaseStyles = NamedStyles<any> & {\n root: AllStyle,\n text: TextStyle & {userSelect?: 'none'| 'text'}\n}\n\nexport function defineStyles<T>(styles: T): T {\n return deepCopy({\n text: {\n fontFamily: ThemeVariables.INSTANCE.baseFont,\n userSelect: 'text'\n }\n }, styles);\n}\n\nexport interface LifecycleListener {\n onComponentChange?: (c: BaseComponent<any, any, any>) => void;\n onComponentInit?: (c: BaseComponent<any, any, any>) => void;\n onComponentDestroy?: (c: BaseComponent<any, any, any>) => void;\n}\n\nexport class BaseProps extends StyleProps {\n id?: string = null as any;\n name?: string = null as any;\n key?: any = null as any;\n disabled? = false;\n show? = true as Boolean | String | Number;\n styles?: any = null;\n classname?: string = null as any;\n listener?: LifecycleListener = null as any;\n showindevice?: ('xs'|'sm'|'md'|'lg'|'xl'|'xxl')[] = null as any;\n showskeleton?: boolean = undefined;\n deferload?: boolean = false;\n showskeletonchildren?: boolean = true;\n disabletoucheffect?:boolean = false;\n}\n\nexport abstract class BaseComponent<T extends BaseProps, S extends BaseComponentState<T>, L extends BaseStyles> extends React.Component<T, S> {\n public styles: L = null as any;\n public hideMode = HideMode.ADD_TO_DOM;\n private propertyProvider: PropsProvider<T>;\n public proxy: BaseComponent<T, S, L>;\n public _INSTANCE: BaseComponent<T, S, L>;\n public initialized = false;\n public cleanup = [] as Function[];\n public theme = BASE_THEME;\n public updateStateTimeouts= [] as NodeJS.Timeout[];\n public parent: BaseComponent<any, any, any> = null as any;\n public destroyed = false;\n public _showSkeleton = false;\n public isFixed = false;\n private notifier = new EventNotifier();\n private parentListenerDestroyers = [] as Function[];\n public _background = <></>;\n private styleOverrides = {} as any;\n public loadAsset: (path: string) => number | string = null as any;\n private i18nService = injector.I18nService.get();\n public testIdPrefix = '';\n private _showView = true;\n public closestTappable?: Tappable; \n public componentNode: WmComponentNode;\n\n\n constructor(markupProps: T, public defaultClass: string, defaultProps?: T, defaultState?: S) {\n super(markupProps);\n this.state = (defaultState || {} as S);\n this.notifier.name = this.props.name || '';\n this.componentNode = new WmComponentNode({\n instance: this\n });\n this.propertyProvider = new PropsProvider<T>(\n assign({show: true}, defaultProps),\n assign({}, markupProps),\n (name: string, $new: any, $old: any) => {\n WIDGET_LOGGER.debug(() => `${this.props.name || this.constructor.name}: ${name} changed from ${$old} to ${$new}`);\n if (this.initialized) {\n const styleName = getStyleName(name);\n if (styleName) {\n if ($new === undefined) {\n delete this.styleOverrides[styleName];\n } else {\n this.styleOverrides[styleName] = $new;\n }\n }\n }\n if (name === 'showskeleton' && this.initialized) {\n setTimeout(() => this.cleanRefresh(), 100);\n }\n this.onPropertyChange(name, $new, $old);\n });\n //@ts-ignore\n this.state.props =this.propertyProvider.get();\n this._INSTANCE = this;\n //@ts-ignore\n this._showView = !this.props.deferload;\n this.propertyProvider.check();\n //@ts-ignore\n this.proxy = (new Proxy(this, {\n get: (target, prop, receiver): any => {\n const propName = prop.toString();\n if (this.propertyProvider.has(propName)) {\n //@ts-ignore\n return this.state.props[propName];\n }\n return Reflect.get(target, prop, receiver);\n },\n set: (target: any, prop, value: any): any => {\n const propName = prop.toString();\n if (this.propertyProvider.has(propName)) {\n // @ts-ignore\n const props = {} as any;\n this.propertyProvider.overrideProp(propName, value);\n props[propName] = value;\n this.updateState({\n props: props\n } as S);\n return true;\n } else {\n return Reflect.set(target, prop, value);\n }\n }\n }));\n this.cleanup.push(() => {\n this.updateStateTimeouts.forEach(v => clearTimeout(v));\n });\n this.cleanup.push(this.theme.subscribe(ThemeEvent.CHANGE, () => {\n this.forceUpdate();\n }));\n this.cleanup.push(AccessibilityInfo.addEventListener('screenReaderChanged',\n () => {\n setTimeout(() => {\n this.forceUpdate();\n }, 100);\n },\n ).remove);\n this.cleanup.push(() => {\n this.destroyParentListeners();\n });\n }\n\n public subscribe(event: string, fn: Function) {\n return this.notifier.subscribe(event, fn);\n }\n\n public notify(event: string, args: any[], emitToParent = false) {\n return this.notifier.notify(event, args, emitToParent);\n }\n\n public get isRTL(){\n return this.i18nService.isRTLLocale();\n }\n\n public animate(props: AnimatableProps<ViewStyle>) {\n this.setState({\n animationId: Date.now(),\n animatableProps: props\n });\n }\n\n setProp(propName: string, value: any) {\n this.propertyProvider.set(propName, value);\n this.updateState({props: {}} as S);\n }\n\n setPropDefault(propName: string, value: any) {\n this.propertyProvider.setDefault(propName, value);\n }\n \n onPropertyChange(name: string, $new: any, $old: any) { \n }\n \n getDefaultStyles() {\n return this.theme.getStyle(this.defaultClass);\n }\n\n reset() {\n\n }\n\n updateState(newPartialState: S, callback?: ()=>void) {\n if (this.destroyed) {\n return;\n }\n const stateFn = (oldState: S) => {\n const oldProps = oldState.props;\n const newState = this.initialized ? assignIn({}, oldState, newPartialState) : assignIn(oldState, newPartialState);\n if (newPartialState.props) {\n Object.keys(newPartialState.props).forEach((k) => {\n //@ts-ignore\n oldProps[k] = newState.props[k];\n });\n newState.props = oldProps;\n }\n return newState;\n };\n const onUpdateState = () => {\n callback && callback();\n this.props.listener?.onComponentChange\n && this.props.listener?.onComponentChange(this);\n }\n if (!this.initialized) {\n this.state = stateFn(this.state);\n onUpdateState();\n } else {\n const timeoutId = setTimeout(() => {\n this.setState(stateFn, onUpdateState);\n this.updateStateTimeouts.splice(this.updateStateTimeouts.indexOf(timeoutId), 1);\n });\n this.updateStateTimeouts.push(timeoutId);\n }\n }\n\n shouldComponentUpdate(nextProps: T, nextState: S, nextContext: any) {\n if (this.propertyProvider.check(nextProps)) {\n return true;\n }\n for(let key in nextState) {\n if(key !== 'props' && (!(key in this.state) || nextState[key] !== this.state[key])) {\n return true;\n }\n }\n\n for(let key in this.state) {\n if(key !== 'props' && (!(key in nextState) || this.state[key] !== nextState[key])) {\n return true;\n }\n }\n return false;\n }\n\n componentDidMount() {\n if (this.props.listener && this.props.listener.onComponentInit) {\n this.props.listener.onComponentInit(this.proxy);\n }\n this.initialized = true;\n }\n\n componentWillAttach() {\n if (this.isFixed) {\n this.setState({hide: false});\n }\n }\n\n componentWillDetach() {\n if (this.isFixed) {\n this.setState({hide: true});\n }\n }\n\n componentWillUnmount() {\n this.destroyed = true;\n if (this.props.listener && this.props.listener.onComponentDestroy) {\n this.props.listener.onComponentDestroy(this.proxy);\n }\n this.cleanup.forEach(f => f && f());\n this.parent?.componentNode?.remove(this.componentNode);\n this.notifier.destroy();\n this.notifier.notify('destroy', []);\n }\n \n componentDidUpdate(prevProps: Readonly<T>, prevState: Readonly<S>, snapshot?: any): void {\n if (this.propertyProvider.check(this.props)) {\n this.forceUpdate();\n }\n }\n\n invokeEventCallback(eventName: string, args: any[]) {\n //@ts-ignore\n const callBack: Function = this.props[eventName];\n args = args && args.map(a => (a === this) ? this.proxy : a)\n if (callBack) {\n try {\n return callBack.apply(this.proxy, args);\n } catch(e) {\n console.error(e);\n }\n }\n }\n\n showView() {\n return this.isVisible();\n }\n\n isVisible() {\n const show = this.state.props.show;\n return show !== false && show !== 'false' && show !== '0' && !isNil(show) && show !== \"\";\n }\n\n protected abstract renderWidget(props: T): ReactNode;\n\n public refresh() {\n this.forceUpdate();\n }\n\n public cleanRefresh() {\n this.forceUpdate(() => this.notifier.notify('forceUpdate', []));\n }\n \n public renderSkeleton (props: T): ReactNode {\n return null;\n }\n\n public destroyParentListeners() {\n this.parentListenerDestroyers.map(fn => fn());\n }\n\n protected setParent(parent: BaseComponent<any, any, any>) {\n if (parent && this.parent !== parent) {\n this.parent = parent;\n this.parent.componentNode.add(this.componentNode);\n this.notifier.setParent(parent.notifier);\n this.parentListenerDestroyers = [\n this.parent.subscribe('forceUpdate', () => {\n this.cleanRefresh();\n }),\n this.parent.subscribe('destroy', () => {\n this.destroyParentListeners();\n })\n ];\n }\n }\n\n protected getName() {\n return this.props.name;\n }\n\n public handleLayout(event: LayoutChangeEvent ) {\n const key = this.getName && this.getName();\n if(key){\n const newLayoutPosition = {\n [key as string]: {\n y: event.nativeEvent.layout.y,\n x: event.nativeEvent.layout.x\n }\n }\n setPosition(newLayoutPosition);\n }\n }\n \n copyStyles(property: string, from: any, to: any) {\n if (!isUndefined(from[property])) {\n to[property] = from[property];\n }\n }\n\n renderFixedContainer(props: T) {\n const style = {} as ViewStyle;\n const rootStyle = {\n left: 0,\n top: 0,\n bottom: 0,\n right: 0,\n width: \"100%\",\n height: \"100%\"\n } as ViewStyle;\n this.copyStyles('left', this.styles.root, style);\n this.copyStyles('top', this.styles.root, style);\n this.copyStyles('right', this.styles.root, style);\n this.copyStyles('bottom', this.styles.root, style);\n this.copyStyles('width', this.styles.root, style);\n this.copyStyles('height', this.styles.root, style);\n this.styles = this.theme.mergeStyle(this.styles, {root: rootStyle});\n return (<FixedView style={style} theme={this.theme}>{this.addAnimation(this.renderWidget(props))}</FixedView>);\n }\n\n private addAnimation(n: ReactNode) {\n if (!this.state.animatableProps) {\n return (\n <>\n {n}\n </>\n )\n }\n return (\n <Animatable.View \n key={this.state.animationId} \n {...this.state.animatableProps}\n >\n {n}\n </Animatable.View>);\n }\n \n private setBackground() {\n const bgStyle = this.styles.root as any;\n this._background = (\n <>\n <BackgroundComponent \n image={bgStyle.backgroundImage}\n position={bgStyle.backgroundPosition}\n size={bgStyle.backgroundSize}\n repeat={bgStyle.backgroundRepeat}\n resizeMode={bgStyle.backgroundResizeMode}\n style={{borderRadius: this.styles.root.borderRadius}}>\n </BackgroundComponent>\n {this.state.highlight ? (<View onTouchStart={() => {\n this.setState({\n highlight: false\n })\n }} style={[{\n borderWidth: 2,\n overflow: 'hidden',\n backgroundColor: '#FFFF0033', \n borderColor: 'orange',\n borderStyle: 'dashed',\n zIndex: 1000,\n borderRadius: 0,\n }, StyleSheet.absoluteFill]}></View>) : null}\n </>\n );\n delete (this.styles.root as any)['backgroundImage'];\n delete (this.styles.root as any)['backgroundPosition'];\n delete (this.styles.root as any)['backgroundResizeMode'];\n delete (this.styles.root as any)['backgroundSize'];\n delete (this.styles.root as any)['backgroundRepeat'];\n }\n\n public getTestId(suffix?: string) {\n let id = this.props.id || this.props.name;\n if (this.testIdPrefix) {\n id = this.testIdPrefix + '_' + id;\n }\n if (suffix) {\n id = id + '_' + suffix;\n }\n return id;\n }\n\n public getTestProps(suffix?: string) {\n let id = this.getTestId(suffix);\n if (isScreenReaderEnabled()) {\n return {};\n }\n if (Platform.OS === 'android' || Platform.OS === 'web') {\n return {\n accessibilityLabel: id,\n testID: id\n };\n }\n return {\n accessible: false,\n testID: id\n };\n }\n\n public getStyleClassName() {\n return this.state.props.classname;\n }\n\n public getTestPropsForInput(suffix?: string) {\n return this.getTestProps(suffix || 'i');\n }\n\n public getTestPropsForAction(suffix?: string) {\n return this.getTestProps(suffix || 'a');\n }\n\n public getTestPropsForLabel(suffix?: string) {\n return this.getTestProps(suffix || 'l');\n }\n\n public getLayoutOfWidget(name: string): {x: number, y: number} | undefined {\n return getPosition(name)\n }\n\n public scrollToTop(){\n this.notify('scrollToPosition', [{\n x: 0,\n y: 0\n }]);\n }\n\n public scrollToEnd() {\n this.notify('scrollToEnd', []);\n }\n\n scrollToPosition(widgetName: string) {\n const positionY = this.getLayoutOfWidget(widgetName)?.y; // Safe access\n this.notify('scrollToPosition', [{\n x: 0,\n y: positionY,\n }]);\n }\n private getDependenciesFromContext(fn: () => ReactNode) {\n return (\n <TappableContext.Consumer>{(tappable) => {\n this.closestTappable = tappable;\n return (\n <TextIdPrefixConsumer>\n {(testIdPrefix) => {\n this.testIdPrefix = testIdPrefix || '';\n return (<AssetConsumer>\n {(loadAsset) => {\n this.loadAsset = loadAsset;\n return (<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 return (\n <ParentContext.Provider value={this}>\n <ThemeConsumer>\n {(theme) => { \n this.theme = theme || BASE_THEME;\n return fn();\n }}\n </ThemeConsumer>\n </ParentContext.Provider>);\n }} \n </ParentContext.Consumer>);\n }}\n </AssetConsumer>);\n }}\n </TextIdPrefixConsumer>)}}\n </TappableContext.Consumer>); \n }\n \n public render(): ReactNode {\n const props = this.state.props;\n this.isFixed = false;\n const selectedLocale = this.i18nService.getSelectedLocale();\n return this.getDependenciesFromContext(() => {\n WIDGET_LOGGER.info(() => `${this.props.name || this.constructor.name} is rendering.`);\n this._showView = this._showView || this.showView();\n if (this.state.hide \n || (!this.isVisible() && this.hideMode === HideMode.DONOT_ADD_TO_DOM)\n || !this._showView) {\n return null;\n }\n const classname = this.getStyleClassName();\n this.styles = this.theme.mergeStyle(\n this.getDefaultStyles(),\n {text: this.theme.getStyle('app-' + selectedLocale)},\n {text: this.theme.getStyle(this.defaultClass + '-' + selectedLocale)},\n props.disabled ? this.theme.getStyle(this.defaultClass + '-disabled') : null,\n this.isRTL ? this.theme.getStyle(this.defaultClass + '-rtl') : null,\n classname && this.theme.getStyle(classname),\n props.showindevice && this.theme.getStyle('d-all-none ' + props.showindevice.map(d => `d-${d}-flex`).join(' ')),\n this.theme.cleanseStyleProperties(this.props.styles),\n this.theme.cleanseStyleProperties({\n root: this.styleOverrides,\n text: this.styleOverrides\n }));\n if (this.styles.root.hasOwnProperty('_background')) {\n delete this.styles.root.backgroundColor;\n }\n if (!this.isVisible()) {\n assign(this.styles, this.theme.getStyle('hidden'))\n }\n let eleToRender = (this._showSkeleton && this.renderSkeleton(props));\n if (eleToRender) {\n return eleToRender;\n }\n this.setBackground();\n this.isFixed = (this.styles.root.position as any) === 'fixed';\n if (this.isFixed) {\n this.styles.root.position = undefined;\n return this.renderFixedContainer(props);\n }\n return this.addAnimation(this.renderWidget(this.state.props)); \n });\n }\n}\n"],"mappings":";;;;AAAA,SAASA,MAAM,EAAEC,WAAW,EAAEC,KAAK,QAAQ,QAAQ;AACnD,OAAOC,KAAK,MAAqB,OAAO;AACxC,SAASC,iBAAiB,EAAqBC,QAAQ,EAAEC,UAAU,EAAaC,IAAI,QAAmB,cAAc;AAErH,OAAO,KAAKC,UAAU,MAAM,yBAAyB;AACrD,OAAOC,cAAc,MAAM,kDAAkD;AAC7E,SAASC,UAAU,EAAEC,YAAY,QAAQ,8CAA8C;AACvF,SAASC,mBAAmB,QAAQ,uDAAuD;AAC3F,OAAOC,QAAQ,MAAM,yCAAyC;AAC9D,SAASC,WAAW,QAAQ,uCAAuC;AACnE,SAASC,QAAQ,EAAEC,WAAW,EAAEC,WAAW,QAAQ,sCAAsC;AACzF,OAAOC,UAAU,IAA2BC,aAAa,EAAEC,UAAU,QAAe,iBAAiB;AACrG,OAAOC,aAAa,MAAM,kBAAkB;AAC5C,SAASC,aAAa,QAAQ,kBAAkB;AAChD,SAASC,QAAQ,QAAQ,WAAW;AACpC,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,SAASC,aAAa,QAAQ,kBAAkB;AAChD,SAASC,SAAS,QAAQ,wBAAwB;AAClD,SAASC,oBAAoB,QAAQ,mBAAmB;AACxD,SAASC,qBAAqB,QAAQ,iBAAiB;AACvD,SAAmBC,eAAe,QAAQ,sBAAsB;AAChE,SAASC,eAAe,QAAQ,qBAAqB;AAErD,OAAO,MAAMC,aAAa,GAAGjB,WAAW,CAACkB,MAAM,CAAC,QAAQ,CAAC;AAEzD,OAAO,MAAMC,aAAa,gBAAG9B,KAAK,CAAC+B,aAAa,CAAC,IAAW,CAAC;AAE7D,OAAO,MAAMC,kBAAkB,CAAsB;EAAAC,YAAA;IAAAC,eAAA,sBACnB,CAAC;IAAAA,eAAA,0BACuBC,SAAS;IAAAD,eAAA,gBAChD,CAAC,CAAC;IAAAA,eAAA,eACF,KAAK;IAAAA,eAAA,oBACA,KAAK;EAAA;AAC7B;AAOA,OAAO,SAASE,YAAYA,CAAIC,MAAS,EAAK;EAC1C,OAAOzB,QAAQ,CAAC;IACZ0B,IAAI,EAAE;MACFC,UAAU,EAAEjC,cAAc,CAACkC,QAAQ,CAACC,QAAQ;MAC5CC,UAAU,EAAE;IAChB;EACJ,CAAC,EAAEL,MAAM,CAAC;AACd;AAQA,OAAO,MAAMM,SAAS,SAASpC,UAAU,CAAC;EAAA0B,YAAA,GAAAW,IAAA;IAAA,SAAAA,IAAA;IAAAV,eAAA,aACxB,IAAI;IAAAA,eAAA,eACF,IAAI;IAAAA,eAAA,cACR,IAAI;IAAAA,eAAA,mBACJ,KAAK;IAAAA,eAAA,eACT,IAAI;IAAAA,eAAA,iBACG,IAAI;IAAAA,eAAA,oBACE,IAAI;IAAAA,eAAA,mBACM,IAAI;IAAAA,eAAA,uBACiB,IAAI;IAAAA,eAAA,uBAC/BC,SAAS;IAAAD,eAAA,oBACZ,KAAK;IAAAA,eAAA,+BACM,IAAI;IAAAA,eAAA,6BACP,KAAK;EAAA;AACvC;AAEA,OAAO,MAAeW,aAAa,SAAqF7C,KAAK,CAAC8C,SAAS,CAAO;EA0B1Ib,WAAWA,CAACc,WAAc,EAASC,YAAoB,EAAEC,YAAgB,EAAEC,YAAgB,EAAE;IACzF,KAAK,CAACH,WAAW,CAAC;IAAC,KADYC,YAAoB,GAApBA,YAAoB;IAAAd,eAAA,iBAzBpC,IAAI;IAAAA,eAAA,mBACLb,QAAQ,CAAC8B,UAAU;IAAAjB,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,sBAIhB,KAAK;IAAAA,eAAA,kBACT,EAAE;IAAAA,eAAA,gBACJnB,UAAU;IAAAmB,eAAA,8BACG,EAAE;IAAAA,eAAA,iBACgB,IAAI;IAAAA,eAAA,oBAC/B,KAAK;IAAAA,eAAA,wBACD,KAAK;IAAAA,eAAA,kBACX,KAAK;IAAAA,eAAA,mBACH,IAAIhB,aAAa,CAAC,CAAC;IAAAgB,eAAA,mCACH,EAAE;IAAAA,eAAA,mCAChBlC,KAAA,CAAAoD,aAAA,CAAApD,KAAA,CAAAqD,QAAA,MAAI,CAAC;IAAAnB,eAAA,yBACD,CAAC,CAAC;IAAAA,eAAA,oBAC2B,IAAI;IAAAA,eAAA,sBACpCxB,QAAQ,CAAC4C,WAAW,CAACC,GAAG,CAAC,CAAC;IAAArB,eAAA,uBAC1B,EAAE;IAAAA,eAAA,oBACJ,IAAI;IAAAA,eAAA;IAAAA,eAAA;IAOpB,IAAI,CAACsB,KAAK,GAAIN,YAAY,IAAI,CAAC,CAAO;IACtC,IAAI,CAACO,QAAQ,CAACC,IAAI,GAAG,IAAI,CAACC,KAAK,CAACD,IAAI,IAAI,EAAE;IAC1C,IAAI,CAACE,aAAa,GAAG,IAAIjC,eAAe,CAAC;MACrCkC,QAAQ,EAAE;IACd,CAAC,CAAC;IACF,IAAI,CAACC,gBAAgB,GAAG,IAAI3C,aAAa,CACrCtB,MAAM,CAAC;MAACkE,IAAI,EAAE;IAAI,CAAC,EAAEd,YAAY,CAAC,EAClCpD,MAAM,CAAC,CAAC,CAAC,EAAEkD,WAAW,CAAC,EACvB,CAACW,IAAY,EAAEM,IAAS,EAAEC,IAAS,KAAK;MACpCrC,aAAa,CAACsC,KAAK,CAAC,MAAM,GAAG,IAAI,CAACP,KAAK,CAACD,IAAI,IAAI,IAAI,CAACzB,WAAW,CAACyB,IAAI,KAAKA,IAAI,iBAAiBO,IAAI,OAAOD,IAAI,EAAE,CAAC;MACjH,IAAI,IAAI,CAACG,WAAW,EAAE;QAClB,MAAMC,SAAS,GAAG5D,YAAY,CAACkD,IAAI,CAAC;QACpC,IAAIU,SAAS,EAAE;UACX,IAAIJ,IAAI,KAAK7B,SAAS,EAAE;YACpB,OAAO,IAAI,CAACkC,cAAc,CAACD,SAAS,CAAC;UACzC,CAAC,MAAM;YACH,IAAI,CAACC,cAAc,CAACD,SAAS,CAAC,GAAGJ,IAAI;UACzC;QACJ;MACJ;MACA,IAAIN,IAAI,KAAK,cAAc,IAAI,IAAI,CAACS,WAAW,EAAE;QAC7CG,UAAU,CAAC,MAAM,IAAI,CAACC,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC;MAC9C;MACA,IAAI,CAACC,gBAAgB,CAACd,IAAI,EAAEM,IAAI,EAAEC,IAAI,CAAC;IAC3C,CAAC,CAAC;IACN;IACA,IAAI,CAACT,KAAK,CAACG,KAAK,GAAE,IAAI,CAACG,gBAAgB,CAACP,GAAG,CAAC,CAAC;IAC7C,IAAI,CAACkB,SAAS,GAAG,IAAI;IACrB;IACA,IAAI,CAACC,SAAS,GAAG,CAAC,IAAI,CAACf,KAAK,CAACgB,SAAS;IACtC,IAAI,CAACb,gBAAgB,CAACc,KAAK,CAAC,CAAC;IAC7B;IACA,IAAI,CAACC,KAAK,GAAI,IAAIC,KAAK,CAAC,IAAI,EAAE;MAC1BvB,GAAG,EAAEA,CAACwB,MAAM,EAAEC,IAAI,EAAEC,QAAQ,KAAU;QAClC,MAAMC,QAAQ,GAAGF,IAAI,CAACG,QAAQ,CAAC,CAAC;QAChC,IAAI,IAAI,CAACrB,gBAAgB,CAACsB,GAAG,CAACF,QAAQ,CAAC,EAAE;UACrC;UACA,OAAO,IAAI,CAAC1B,KAAK,CAACG,KAAK,CAACuB,QAAQ,CAAC;QACrC;QACA,OAAOG,OAAO,CAAC9B,GAAG,CAACwB,MAAM,EAAEC,IAAI,EAAEC,QAAQ,CAAC;MAC9C,CAAC;MACDK,GAAG,EAAEA,CAACP,MAAW,EAAEC,IAAI,EAAEO,KAAU,KAAU;QACzC,MAAML,QAAQ,GAAGF,IAAI,CAACG,QAAQ,CAAC,CAAC;QAChC,IAAI,IAAI,CAACrB,gBAAgB,CAACsB,GAAG,CAACF,QAAQ,CAAC,EAAE;UACrC;UACA,MAAMvB,KAAK,GAAG,CAAC,CAAQ;UACvB,IAAI,CAACG,gBAAgB,CAAC0B,YAAY,CAACN,QAAQ,EAAEK,KAAK,CAAC;UACnD5B,KAAK,CAACuB,QAAQ,CAAC,GAAGK,KAAK;UACvB,IAAI,CAACE,WAAW,CAAC;YACb9B,KAAK,EAAEA;UACX,CAAM,CAAC;UACP,OAAO,IAAI;QACf,CAAC,MAAM;UACH,OAAO0B,OAAO,CAACC,GAAG,CAACP,MAAM,EAAEC,IAAI,EAAEO,KAAK,CAAC;QAC3C;MACJ;IACJ,CAAC,CAAE;IACH,IAAI,CAACG,OAAO,CAACC,IAAI,CAAC,MAAM;MACpB,IAAI,CAACC,mBAAmB,CAACC,OAAO,CAACC,CAAC,IAAIC,YAAY,CAACD,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC;IACF,IAAI,CAACJ,OAAO,CAACC,IAAI,CAAC,IAAI,CAACK,KAAK,CAACC,SAAS,CAAChF,UAAU,CAACiF,MAAM,EAAE,MAAM;MAC5D,IAAI,CAACC,WAAW,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;IACH,IAAI,CAACT,OAAO,CAACC,IAAI,CAAC1F,iBAAiB,CAACmG,gBAAgB,CAAC,qBAAqB,EACtE,MAAM;MACJ9B,UAAU,CAAC,MAAM;QACf,IAAI,CAAC6B,WAAW,CAAC,CAAC;MACpB,CAAC,EAAE,GAAG,CAAC;IACT,CACJ,CAAC,CAACE,MAAM,CAAC;IACT,IAAI,CAACX,OAAO,CAACC,IAAI,CAAC,MAAM;MACpB,IAAI,CAACW,sBAAsB,CAAC,CAAC;IACjC,CAAC,CAAC;EACN;EAEOL,SAASA,CAACM,KAAa,EAAEC,EAAY,EAAE;IAC1C,OAAO,IAAI,CAAC/C,QAAQ,CAACwC,SAAS,CAACM,KAAK,EAAEC,EAAE,CAAC;EAC7C;EAEOC,MAAMA,CAACF,KAAa,EAAE3D,IAAW,EAAE8D,YAAY,GAAG,KAAK,EAAE;IAC5D,OAAO,IAAI,CAACjD,QAAQ,CAACgD,MAAM,CAACF,KAAK,EAAE3D,IAAI,EAAE8D,YAAY,CAAC;EAC1D;EAEA,IAAWC,KAAKA,CAAA,EAAE;IACd,OAAO,IAAI,CAACC,WAAW,CAACC,WAAW,CAAC,CAAC;EACzC;EAEOC,OAAOA,CAACnD,KAAiC,EAAE;IAC9C,IAAI,CAACoD,QAAQ,CAAC;MACVC,WAAW,EAAEC,IAAI,CAACC,GAAG,CAAC,CAAC;MACvBC,eAAe,EAAExD;IACrB,CAAC,CAAC;EACN;EAEAyD,OAAOA,CAAClC,QAAgB,EAAEK,KAAU,EAAE;IAClC,IAAI,CAACzB,gBAAgB,CAACwB,GAAG,CAACJ,QAAQ,EAAEK,KAAK,CAAC;IAC1C,IAAI,CAACE,WAAW,CAAC;MAAC9B,KAAK,EAAE,CAAC;IAAC,CAAM,CAAC;EACtC;EAEA0D,cAAcA,CAACnC,QAAgB,EAAEK,KAAU,EAAE;IACzC,IAAI,CAACzB,gBAAgB,CAACwD,UAAU,CAACpC,QAAQ,EAAEK,KAAK,CAAC;EACrD;EAEAf,gBAAgBA,CAACd,IAAY,EAAEM,IAAS,EAAEC,IAAS,EAAE,CACrD;EAEAsD,gBAAgBA,CAAA,EAAG;IACf,OAAO,IAAI,CAACvB,KAAK,CAACwB,QAAQ,CAAC,IAAI,CAACxE,YAAY,CAAC;EACjD;EAEAyE,KAAKA,CAAA,EAAG,CAER;EAEAhC,WAAWA,CAACiC,eAAkB,EAAEC,QAAmB,EAAE;IACjD,IAAI,IAAI,CAACC,SAAS,EAAE;MAChB;IACJ;IACA,MAAMC,OAAO,GAAIC,QAAW,IAAK;MAC7B,MAAMC,QAAQ,GAAGD,QAAQ,CAACnE,KAAK;MAC/B,MAAMqE,QAAQ,GAAG,IAAI,CAAC7D,WAAW,GAAG/C,QAAQ,CAAC,CAAC,CAAC,EAAE0G,QAAQ,EAAEJ,eAAe,CAAC,GAAGtG,QAAQ,CAAC0G,QAAQ,EAAEJ,eAAe,CAAC;MACjH,IAAIA,eAAe,CAAC/D,KAAK,EAAE;QACvBsE,MAAM,CAACC,IAAI,CAACR,eAAe,CAAC/D,KAAK,CAAC,CAACkC,OAAO,CAAEsC,CAAC,IAAK;UAC9C;UACAJ,QAAQ,CAACI,CAAC,CAAC,GAAGH,QAAQ,CAACrE,KAAK,CAACwE,CAAC,CAAC;QACnC,CAAC,CAAC;QACNH,QAAQ,CAACrE,KAAK,GAAGoE,QAAQ;MACzB;MACA,OAAOC,QAAQ;IACnB,CAAC;IACD,MAAMI,aAAa,GAAGA,CAAA,KAAM;MAAA,IAAAC,oBAAA,EAAAC,qBAAA;MACxBX,QAAQ,IAAIA,QAAQ,CAAC,CAAC;MACtB,EAAAU,oBAAA,OAAI,CAAC1E,KAAK,CAAC4E,QAAQ,cAAAF,oBAAA,uBAAnBA,oBAAA,CAAqBG,iBAAiB,OAAAF,qBAAA,GAC/B,IAAI,CAAC3E,KAAK,CAAC4E,QAAQ,cAAAD,qBAAA,uBAAnBA,qBAAA,CAAqBE,iBAAiB,CAAC,IAAI,CAAC;IACvD,CAAC;IACD,IAAI,CAAC,IAAI,CAACrE,WAAW,EAAE;MACnB,IAAI,CAACX,KAAK,GAAGqE,OAAO,CAAC,IAAI,CAACrE,KAAK,CAAC;MAChC4E,aAAa,CAAC,CAAC;IACnB,CAAC,MAAM;MACH,MAAMK,SAAS,GAAGnE,UAAU,CAAC,MAAM;QAC/B,IAAI,CAACyC,QAAQ,CAACc,OAAO,EAAEO,aAAa,CAAC;QACrC,IAAI,CAACxC,mBAAmB,CAAC8C,MAAM,CAAC,IAAI,CAAC9C,mBAAmB,CAAC+C,OAAO,CAACF,SAAS,CAAC,EAAE,CAAC,CAAC;MACnF,CAAC,CAAC;MACF,IAAI,CAAC7C,mBAAmB,CAACD,IAAI,CAAC8C,SAAS,CAAC;IAC5C;EACJ;EAEAG,qBAAqBA,CAACC,SAAY,EAAEC,SAAY,EAAEC,WAAgB,EAAE;IAChE,IAAI,IAAI,CAACjF,gBAAgB,CAACc,KAAK,CAACiE,SAAS,CAAC,EAAE;MACxC,OAAO,IAAI;IACf;IACA,KAAI,IAAIG,GAAG,IAAIF,SAAS,EAAE;MACtB,IAAGE,GAAG,KAAK,OAAO,KAAK,EAAEA,GAAG,IAAI,IAAI,CAACxF,KAAK,CAAC,IAAIsF,SAAS,CAACE,GAAG,CAAC,KAAK,IAAI,CAACxF,KAAK,CAACwF,GAAG,CAAC,CAAC,EAAE;QAChF,OAAO,IAAI;MACf;IACJ;IAEA,KAAI,IAAIA,GAAG,IAAI,IAAI,CAACxF,KAAK,EAAE;MACvB,IAAGwF,GAAG,KAAK,OAAO,KAAK,EAAEA,GAAG,IAAIF,SAAS,CAAC,IAAI,IAAI,CAACtF,KAAK,CAACwF,GAAG,CAAC,KAAKF,SAAS,CAACE,GAAG,CAAC,CAAC,EAAE;QAC/E,OAAO,IAAI;MACf;IACJ;IACA,OAAO,KAAK;EAChB;EAEAC,iBAAiBA,CAAA,EAAG;IAChB,IAAI,IAAI,CAACtF,KAAK,CAAC4E,QAAQ,IAAI,IAAI,CAAC5E,KAAK,CAAC4E,QAAQ,CAACW,eAAe,EAAE;MAC5D,IAAI,CAACvF,KAAK,CAAC4E,QAAQ,CAACW,eAAe,CAAC,IAAI,CAACrE,KAAK,CAAC;IACnD;IACA,IAAI,CAACV,WAAW,GAAG,IAAI;EAC3B;EAEAgF,mBAAmBA,CAAA,EAAG;IAClB,IAAI,IAAI,CAACC,OAAO,EAAE;MACd,IAAI,CAACrC,QAAQ,CAAC;QAACsC,IAAI,EAAE;MAAK,CAAC,CAAC;IAChC;EACJ;EAEAC,mBAAmBA,CAAA,EAAG;IAClB,IAAI,IAAI,CAACF,OAAO,EAAE;MACd,IAAI,CAACrC,QAAQ,CAAC;QAACsC,IAAI,EAAE;MAAI,CAAC,CAAC;IAC/B;EACJ;EAEAE,oBAAoBA,CAAA,EAAG;IAAA,IAAAC,YAAA;IACnB,IAAI,CAAC5B,SAAS,GAAG,IAAI;IACrB,IAAI,IAAI,CAACjE,KAAK,CAAC4E,QAAQ,IAAI,IAAI,CAAC5E,KAAK,CAAC4E,QAAQ,CAACkB,kBAAkB,EAAE;MAC/D,IAAI,CAAC9F,KAAK,CAAC4E,QAAQ,CAACkB,kBAAkB,CAAC,IAAI,CAAC5E,KAAK,CAAC;IACtD;IACA,IAAI,CAACa,OAAO,CAACG,OAAO,CAAC6D,CAAC,IAAIA,CAAC,IAAIA,CAAC,CAAC,CAAC,CAAC;IACnC,CAAAF,YAAA,OAAI,CAACG,MAAM,cAAAH,YAAA,gBAAAA,YAAA,GAAXA,YAAA,CAAa5F,aAAa,cAAA4F,YAAA,eAA1BA,YAAA,CAA4BnD,MAAM,CAAC,IAAI,CAACzC,aAAa,CAAC;IACtD,IAAI,CAACH,QAAQ,CAACmG,OAAO,CAAC,CAAC;IACvB,IAAI,CAACnG,QAAQ,CAACgD,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC;EACvC;EAEAoD,kBAAkBA,CAACC,SAAsB,EAAEC,SAAsB,EAAEC,QAAc,EAAQ;IACrF,IAAI,IAAI,CAAClG,gBAAgB,CAACc,KAAK,CAAC,IAAI,CAACjB,KAAK,CAAC,EAAE;MACzC,IAAI,CAACwC,WAAW,CAAC,CAAC;IACtB;EACJ;EAEA8D,mBAAmBA,CAACC,SAAiB,EAAEtH,IAAW,EAAE;IAChD;IACA,MAAMuH,QAAkB,GAAG,IAAI,CAACxG,KAAK,CAACuG,SAAS,CAAC;IAChDtH,IAAI,GAAGA,IAAI,IAAIA,IAAI,CAACwH,GAAG,CAACC,CAAC,IAAKA,CAAC,KAAK,IAAI,GAAI,IAAI,CAACxF,KAAK,GAAGwF,CAAC,CAAC;IAC3D,IAAIF,QAAQ,EAAE;MACV,IAAI;QACF,OAAOA,QAAQ,CAACG,KAAK,CAAC,IAAI,CAACzF,KAAK,EAAEjC,IAAI,CAAC;MACzC,CAAC,CAAC,OAAM2H,CAAC,EAAE;QACPC,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC;MACpB;IACJ;EACJ;EAEAG,QAAQA,CAAA,EAAG;IACP,OAAO,IAAI,CAACC,SAAS,CAAC,CAAC;EAC3B;EAEAA,SAASA,CAAA,EAAG;IACR,MAAM5G,IAAI,GAAG,IAAI,CAACP,KAAK,CAACG,KAAK,CAACI,IAAI;IAClC,OAAOA,IAAI,KAAK,KAAK,IAAIA,IAAI,KAAK,OAAO,IAAIA,IAAI,KAAK,GAAG,IAAI,CAAChE,KAAK,CAACgE,IAAI,CAAC,IAAIA,IAAI,KAAK,EAAE;EAC5F;EAIO6G,OAAOA,CAAA,EAAG;IACb,IAAI,CAACzE,WAAW,CAAC,CAAC;EACtB;EAEO5B,YAAYA,CAAA,EAAG;IAClB,IAAI,CAAC4B,WAAW,CAAC,MAAM,IAAI,CAAC1C,QAAQ,CAACgD,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;EACnE;EAEOoE,cAAcA,CAAElH,KAAQ,EAAa;IACxC,OAAO,IAAI;EACf;EAEO2C,sBAAsBA,CAAA,EAAG;IAC5B,IAAI,CAACwE,wBAAwB,CAACV,GAAG,CAAC5D,EAAE,IAAIA,EAAE,CAAC,CAAC,CAAC;EACjD;EAEUuE,SAASA,CAACpB,MAAoC,EAAE;IACtD,IAAIA,MAAM,IAAI,IAAI,CAACA,MAAM,KAAKA,MAAM,EAAG;MACnC,IAAI,CAACA,MAAM,GAAGA,MAAM;MACpB,IAAI,CAACA,MAAM,CAAC/F,aAAa,CAACoH,GAAG,CAAC,IAAI,CAACpH,aAAa,CAAC;MACjD,IAAI,CAACH,QAAQ,CAACsH,SAAS,CAACpB,MAAM,CAAClG,QAAQ,CAAC;MACxC,IAAI,CAACqH,wBAAwB,GAAG,CAC5B,IAAI,CAACnB,MAAM,CAAC1D,SAAS,CAAC,aAAa,EAAE,MAAM;QACvC,IAAI,CAAC1B,YAAY,CAAC,CAAC;MACvB,CAAC,CAAC,EACF,IAAI,CAACoF,MAAM,CAAC1D,SAAS,CAAC,SAAS,EAAE,MAAM;QACnC,IAAI,CAACK,sBAAsB,CAAC,CAAC;MACjC,CAAC,CAAC,CACL;IACL;EACJ;EAEU2E,OAAOA,CAAA,EAAG;IAChB,OAAO,IAAI,CAACtH,KAAK,CAACD,IAAI;EAC1B;EAEOwH,YAAYA,CAAC3E,KAAwB,EAAG;IAC3C,MAAMyC,GAAG,GAAG,IAAI,CAACiC,OAAO,IAAI,IAAI,CAACA,OAAO,CAAC,CAAC;IAC1C,IAAGjC,GAAG,EAAC;MACH,MAAMmC,iBAAiB,GAAG;QACtB,CAACnC,GAAG,GAAa;UACboC,CAAC,EAAE7E,KAAK,CAAC8E,WAAW,CAACC,MAAM,CAACF,CAAC;UAC7BG,CAAC,EAAEhF,KAAK,CAAC8E,WAAW,CAACC,MAAM,CAACC;QAChC;MACJ,CAAC;MACDzK,WAAW,CAACqK,iBAAiB,CAAC;IAClC;EACJ;EAEAK,UAAUA,CAACC,QAAgB,EAAEC,IAAS,EAAEC,EAAO,EAAE;IAC7C,IAAI,CAAC7L,WAAW,CAAC4L,IAAI,CAACD,QAAQ,CAAC,CAAC,EAAE;MAClCE,EAAE,CAACF,QAAQ,CAAC,GAAGC,IAAI,CAACD,QAAQ,CAAC;IAC7B;EACJ;EAEAG,oBAAoBA,CAACjI,KAAQ,EAAE;IAC3B,MAAMkI,KAAK,GAAG,CAAC,CAAc;IAC7B,MAAMC,SAAS,GAAG;MACdC,IAAI,EAAE,CAAC;MACPC,GAAG,EAAE,CAAC;MACNC,MAAM,EAAE,CAAC;MACTC,KAAK,EAAE,CAAC;MACRC,KAAK,EAAE,MAAM;MACbC,MAAM,EAAE;IACZ,CAAc;IACd,IAAI,CAACZ,UAAU,CAAC,MAAM,EAAE,IAAI,CAACnJ,MAAM,CAACgK,IAAI,EAAER,KAAK,CAAC;IAChD,IAAI,CAACL,UAAU,CAAC,KAAK,EAAE,IAAI,CAACnJ,MAAM,CAACgK,IAAI,EAAER,KAAK,CAAC;IAC/C,IAAI,CAACL,UAAU,CAAC,OAAO,EAAE,IAAI,CAACnJ,MAAM,CAACgK,IAAI,EAAER,KAAK,CAAC;IACjD,IAAI,CAACL,UAAU,CAAC,QAAQ,EAAE,IAAI,CAACnJ,MAAM,CAACgK,IAAI,EAAER,KAAK,CAAC;IAClD,IAAI,CAACL,UAAU,CAAC,OAAO,EAAE,IAAI,CAACnJ,MAAM,CAACgK,IAAI,EAAER,KAAK,CAAC;IACjD,IAAI,CAACL,UAAU,CAAC,QAAQ,EAAE,IAAI,CAACnJ,MAAM,CAACgK,IAAI,EAAER,KAAK,CAAC;IAClD,IAAI,CAACxJ,MAAM,GAAG,IAAI,CAAC2D,KAAK,CAACsG,UAAU,CAAC,IAAI,CAACjK,MAAM,EAAE;MAACgK,IAAI,EAAEP;IAAS,CAAC,CAAC;IACnE,oBAAQ9L,KAAA,CAAAoD,aAAA,CAAC7B,SAAS;MAACsK,KAAK,EAAEA,KAAM;MAAC7F,KAAK,EAAE,IAAI,CAACA;IAAM,GAAE,IAAI,CAACuG,YAAY,CAAC,IAAI,CAACC,YAAY,CAAC7I,KAAK,CAAC,CAAa,CAAC;EACjH;EAEQ4I,YAAYA,CAACE,CAAY,EAAE;IAC/B,IAAI,CAAC,IAAI,CAACjJ,KAAK,CAAC2D,eAAe,EAAE;MAC7B,oBACInH,KAAA,CAAAoD,aAAA,CAAApD,KAAA,CAAAqD,QAAA,QACKoJ,CACH,CAAC;IAEX;IACA,oBACIzM,KAAA,CAAAoD,aAAA,CAAC/C,UAAU,CAACD,IAAI,EAAAsM,QAAA;MACZ1D,GAAG,EAAE,IAAI,CAACxF,KAAK,CAACwD;IAAY,GACxB,IAAI,CAACxD,KAAK,CAAC2D,eAAe,GAE7BsF,CACY,CAAC;EAC1B;EAEQE,aAAaA,CAAA,EAAG;IACpB,MAAMC,OAAO,GAAG,IAAI,CAACvK,MAAM,CAACgK,IAAW;IACvC,IAAI,CAACQ,WAAW,gBACZ7M,KAAA,CAAAoD,aAAA,CAAApD,KAAA,CAAAqD,QAAA,qBACArD,KAAA,CAAAoD,aAAA,CAAC3C,mBAAmB;MAChBqM,KAAK,EAAEF,OAAO,CAACG,eAAgB;MAC/BC,QAAQ,EAAEJ,OAAO,CAACK,kBAAmB;MACrCC,IAAI,EAAEN,OAAO,CAACO,cAAe;MAC7BC,MAAM,EAAER,OAAO,CAACS,gBAAiB;MACjCC,UAAU,EAAEV,OAAO,CAACW,oBAAqB;MACzC1B,KAAK,EAAE;QAAC2B,YAAY,EAAE,IAAI,CAACnL,MAAM,CAACgK,IAAI,CAACmB;MAAY;IAAE,CACpC,CAAC,EACrB,IAAI,CAAChK,KAAK,CAACiK,SAAS,gBAAIzN,KAAA,CAAAoD,aAAA,CAAChD,IAAI;MAACsN,YAAY,EAAEA,CAAA,KAAM;QAC/C,IAAI,CAAC3G,QAAQ,CAAC;UACV0G,SAAS,EAAE;QACf,CAAC,CAAC;MACN,CAAE;MAAC5B,KAAK,EAAE,CAAC;QACP8B,WAAW,EAAE,CAAC;QACdC,QAAQ,EAAE,QAAQ;QAClBC,eAAe,EAAE,WAAW;QAC5BC,WAAW,EAAE,QAAQ;QACrBC,WAAW,EAAE,QAAQ;QACrBC,MAAM,EAAE,IAAI;QACZR,YAAY,EAAE;MAClB,CAAC,EAAErN,UAAU,CAAC8N,YAAY;IAAE,CAAO,CAAC,GAAI,IACtC,CACL;IACD,OAAQ,IAAI,CAAC5L,MAAM,CAACgK,IAAI,CAAS,iBAAiB,CAAC;IACnD,OAAQ,IAAI,CAAChK,MAAM,CAACgK,IAAI,CAAS,oBAAoB,CAAC;IACtD,OAAQ,IAAI,CAAChK,MAAM,CAACgK,IAAI,CAAS,sBAAsB,CAAC;IACxD,OAAQ,IAAI,CAAChK,MAAM,CAACgK,IAAI,CAAS,gBAAgB,CAAC;IAClD,OAAQ,IAAI,CAAChK,MAAM,CAACgK,IAAI,CAAS,kBAAkB,CAAC;EACxD;EAEO6B,SAASA,CAACC,MAAe,EAAE;IAC9B,IAAIC,EAAE,GAAG,IAAI,CAACzK,KAAK,CAACyK,EAAE,IAAI,IAAI,CAACzK,KAAK,CAACD,IAAI;IACzC,IAAI,IAAI,CAAC2K,YAAY,EAAE;MACnBD,EAAE,GAAG,IAAI,CAACC,YAAY,GAAG,GAAG,GAAGD,EAAE;IACrC;IACA,IAAID,MAAM,EAAE;MACRC,EAAE,GAAGA,EAAE,GAAG,GAAG,GAAGD,MAAM;IAC1B;IACA,OAAOC,EAAE;EACb;EAEOE,YAAYA,CAACH,MAAe,EAAE;IACjC,IAAIC,EAAE,GAAG,IAAI,CAACF,SAAS,CAACC,MAAM,CAAC;IAC/B,IAAI1M,qBAAqB,CAAC,CAAC,EAAE;MACzB,OAAO,CAAC,CAAC;IACb;IACA,IAAIvB,QAAQ,CAACqO,EAAE,KAAK,SAAS,IAAIrO,QAAQ,CAACqO,EAAE,KAAK,KAAK,EAAE;MACpD,OAAO;QACHC,kBAAkB,EAAEJ,EAAE;QACtBK,MAAM,EAAEL;MACZ,CAAC;IACL;IACA,OAAO;MACHM,UAAU,EAAE,KAAK;MACjBD,MAAM,EAAEL;IACZ,CAAC;EACL;EAEOO,iBAAiBA,CAAA,EAAG;IACvB,OAAO,IAAI,CAACnL,KAAK,CAACG,KAAK,CAACiL,SAAS;EACrC;EAEOC,oBAAoBA,CAACV,MAAe,EAAE;IACzC,OAAO,IAAI,CAACG,YAAY,CAACH,MAAM,IAAI,GAAG,CAAC;EAC3C;EAEOW,qBAAqBA,CAACX,MAAe,EAAE;IAC1C,OAAO,IAAI,CAACG,YAAY,CAACH,MAAM,IAAI,GAAG,CAAC;EAC3C;EAEOY,oBAAoBA,CAACZ,MAAe,EAAE;IACzC,OAAO,IAAI,CAACG,YAAY,CAACH,MAAM,IAAI,GAAG,CAAC;EAC3C;EAEOa,iBAAiBA,CAACtL,IAAY,EAAsC;IACvE,OAAO7C,WAAW,CAAC6C,IAAI,CAAC;EAC5B;EAEOuL,WAAWA,CAAA,EAAE;IAChB,IAAI,CAACxI,MAAM,CAAC,kBAAkB,EAAE,CAAC;MAC7B8E,CAAC,EAAE,CAAC;MACJH,CAAC,EAAE;IACP,CAAC,CAAC,CAAC;EACP;EAEO8D,WAAWA,CAAA,EAAG;IACjB,IAAI,CAACzI,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC;EAClC;EAEA0I,gBAAgBA,CAACC,UAAkB,EAAE;IAAA,IAAAC,qBAAA;IACjC,MAAMC,SAAS,IAAAD,qBAAA,GAAG,IAAI,CAACL,iBAAiB,CAACI,UAAU,CAAC,cAAAC,qBAAA,uBAAlCA,qBAAA,CAAoCjE,CAAC,CAAC,CAAC;IACzD,IAAI,CAAC3E,MAAM,CAAC,kBAAkB,EAAE,CAAC;MAC7B8E,CAAC,EAAE,CAAC;MACJH,CAAC,EAAEkE;IACP,CAAC,CAAC,CAAC;EACP;EACQC,0BAA0BA,CAAC/I,EAAmB,EAAE;IACpD,oBACAxG,KAAA,CAAAoD,aAAA,CAAC1B,eAAe,CAAC8N,QAAQ,QAAGC,QAAQ,IAAK;MACrC,IAAI,CAACC,eAAe,GAAGD,QAAQ;MAC/B,oBACIzP,KAAA,CAAAoD,aAAA,CAAC5B,oBAAoB,QACf6M,YAAY,IAAK;QACf,IAAI,CAACA,YAAY,GAAGA,YAAY,IAAI,EAAE;QACtC,oBAAQrO,KAAA,CAAAoD,aAAA,CAAC9B,aAAa,QAChBqO,SAAS,IAAK;UAChB,IAAI,CAACA,SAAS,GAAGA,SAAS;UAC1B,oBAAQ3P,KAAA,CAAAoD,aAAA,CAACtB,aAAa,CAAC0N,QAAQ,QACzB7F,MAAM,IAAK;YAAA,IAAAiG,aAAA;YACT,IAAI,CAAC7E,SAAS,CAACpB,MAAM,CAAC;YACtB,IAAI,CAACkG,aAAa,GAAG,IAAI,CAACrM,KAAK,CAACG,KAAK,CAACmM,YAAY,KAAK,KAAK,KACpD,EAAAF,aAAA,OAAI,CAACjG,MAAM,cAAAiG,aAAA,uBAAXA,aAAA,CAAaC,aAAa,KAAI,IAAI,CAACrM,KAAK,CAACG,KAAK,CAACmM,YAAY,KAAK,IAAI,CAAC;YAC7E,oBACI9P,KAAA,CAAAoD,aAAA,CAACtB,aAAa,CAACiO,QAAQ;cAACxK,KAAK,EAAE;YAAK,gBAChCvF,KAAA,CAAAoD,aAAA,CAACpC,aAAa,QACRgF,KAAK,IAAK;cACR,IAAI,CAACA,KAAK,GAAGA,KAAK,IAAIjF,UAAU;cAChC,OAAOyF,EAAE,CAAC,CAAC;YACf,CACW,CACK,CAAC;UACjC,CACwB,CAAC;QAC7B,CACW,CAAC;MACpB,CACkB,CAAC;IAAC,CACN,CAAC;EAC/B;EAEOwJ,MAAMA,CAAA,EAAc;IACvB,MAAMrM,KAAK,GAAG,IAAI,CAACH,KAAK,CAACG,KAAK;IAC9B,IAAI,CAACyF,OAAO,GAAG,KAAK;IACpB,MAAM6G,cAAc,GAAG,IAAI,CAACrJ,WAAW,CAACsJ,iBAAiB,CAAC,CAAC;IAC3D,OAAO,IAAI,CAACX,0BAA0B,CAAC,MAAM;MACzC3N,aAAa,CAACuO,IAAI,CAAC,MAAM,GAAG,IAAI,CAACxM,KAAK,CAACD,IAAI,IAAI,IAAI,CAACzB,WAAW,CAACyB,IAAI,gBAAgB,CAAC;MACrF,IAAI,CAACgB,SAAS,GAAG,IAAI,CAACA,SAAS,IAAI,IAAI,CAACgG,QAAQ,CAAC,CAAC;MAClD,IAAI,IAAI,CAAClH,KAAK,CAAC6F,IAAI,IACX,CAAC,IAAI,CAACsB,SAAS,CAAC,CAAC,IAAI,IAAI,CAACyF,QAAQ,KAAK/O,QAAQ,CAACgP,gBAAiB,IAClE,CAAC,IAAI,CAAC3L,SAAS,EAAE;QACpB,OAAO,IAAI;MACf;MACA,MAAMkK,SAAS,GAAG,IAAI,CAACD,iBAAiB,CAAC,CAAC;MAC1C,IAAI,CAACtM,MAAM,GAAI,IAAI,CAAC2D,KAAK,CAACsG,UAAU,CAChC,IAAI,CAAC/E,gBAAgB,CAAC,CAAC,EACvB;QAACjF,IAAI,EAAE,IAAI,CAAC0D,KAAK,CAACwB,QAAQ,CAAC,MAAM,GAAGyI,cAAc;MAAC,CAAC,EACpD;QAAC3N,IAAI,EAAE,IAAI,CAAC0D,KAAK,CAACwB,QAAQ,CAAC,IAAI,CAACxE,YAAY,GAAG,GAAG,GAAGiN,cAAc;MAAC,CAAC,EACrEtM,KAAK,CAAC2M,QAAQ,GAAG,IAAI,CAACtK,KAAK,CAACwB,QAAQ,CAAC,IAAI,CAACxE,YAAY,GAAG,WAAW,CAAC,GAAG,IAAI,EAC5E,IAAI,CAAC2D,KAAK,GAAG,IAAI,CAACX,KAAK,CAACwB,QAAQ,CAAC,IAAI,CAACxE,YAAY,GAAG,MAAM,CAAC,GAAG,IAAI,EACnE4L,SAAS,IAAI,IAAI,CAAC5I,KAAK,CAACwB,QAAQ,CAACoH,SAAS,CAAC,EAC3CjL,KAAK,CAAC4M,YAAY,IAAI,IAAI,CAACvK,KAAK,CAACwB,QAAQ,CAAC,aAAa,GAAG7D,KAAK,CAAC4M,YAAY,CAACnG,GAAG,CAACoG,CAAC,IAAI,KAAKA,CAAC,OAAO,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CAAC,EAC/G,IAAI,CAACzK,KAAK,CAAC0K,sBAAsB,CAAC,IAAI,CAAC/M,KAAK,CAACtB,MAAM,CAAC,EACpD,IAAI,CAAC2D,KAAK,CAAC0K,sBAAsB,CAAC;QAC9BrE,IAAI,EAAE,IAAI,CAAChI,cAAc;QACzB/B,IAAI,EAAE,IAAI,CAAC+B;MACf,CAAC,CAAC,CAAC;MACP,IAAI,IAAI,CAAChC,MAAM,CAACgK,IAAI,CAACsE,cAAc,CAAC,aAAa,CAAC,EAAE;QAChD,OAAO,IAAI,CAACtO,MAAM,CAACgK,IAAI,CAACwB,eAAe;MAC3C;MACA,IAAI,CAAC,IAAI,CAAClD,SAAS,CAAC,CAAC,EAAE;QACnB9K,MAAM,CAAC,IAAI,CAACwC,MAAM,EAAE,IAAI,CAAC2D,KAAK,CAACwB,QAAQ,CAAC,QAAQ,CAAC,CAAC;MACtD;MACA,IAAIoJ,WAAW,GAAI,IAAI,CAACf,aAAa,IAAI,IAAI,CAAChF,cAAc,CAAClH,KAAK,CAAE;MACpE,IAAIiN,WAAW,EAAE;QACb,OAAOA,WAAW;MACtB;MACA,IAAI,CAACjE,aAAa,CAAC,CAAC;MACpB,IAAI,CAACvD,OAAO,GAAI,IAAI,CAAC/G,MAAM,CAACgK,IAAI,CAACW,QAAQ,KAAa,OAAO;MAC7D,IAAI,IAAI,CAAC5D,OAAO,EAAE;QACd,IAAI,CAAC/G,MAAM,CAACgK,IAAI,CAACW,QAAQ,GAAI7K,SAAS;QACtC,OAAO,IAAI,CAACyJ,oBAAoB,CAACjI,KAAK,CAAC;MAC3C;MACA,OAAO,IAAI,CAAC4I,YAAY,CAAC,IAAI,CAACC,YAAY,CAAC,IAAI,CAAChJ,KAAK,CAACG,KAAK,CAAC,CAAC;IACjE,CAAC,CAAC;EACN;AACJ","ignoreList":[]}
|
@@ -169,7 +169,8 @@ export const WMTextInput = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
169
169
|
onChange: () => {}
|
170
170
|
} : {}, {
|
171
171
|
contextMenuHidden: !props.allowContentSelection,
|
172
|
-
autoCapitalize: props.autoCapitalize
|
172
|
+
autoCapitalize: props.autoCapitalize,
|
173
|
+
onLayout: props.handleLayout
|
173
174
|
})), hideInput ? /*#__PURE__*/React.createElement(View, {
|
174
175
|
style: [props.style, {
|
175
176
|
display: 'flex',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","useCallback","useEffect","useRef","useState","Animated","Platform","Text","TextInput","View","isArray","IMask","FloatingLabel","WmCursor","memo","props","opacityAnimation","Value","current","runAnimation","timing","toValue","duration","useNativeDriver","start","createElement","testID","style","backgroundColor","color","width","marginHorizontal","height","opacity","WMTextInput","forwardRef","ref","_props$customDisplayV","_props$floatingLabel","selectRange","setSelectRange","iMask","setIMask","displayCursor","setDisplayCursor","value","x","forceUpdate","displayValue","setDisplayValue","element","displayformat","MaskedPattern","mask","skipInvalid","lazy","definitions","typedValue","defaultValue","onChangeText","setTimeout","OS","maskchar","_element$current","setSelectionRange","length","onSelectionChange","e","_e$nativeEvent","selection","nativeEvent","allowContentSelection","end","text","_value","substring","slice","formattedValue","replace","valueExpr","opts","customDisplayValue","textStyle","Object","assign","hideInput","Fragment","background","floatingLabel","moveUp","isInputFocused","label","placeholder","floatingLabelStyle","activeFloatingLabelStyle","_extends","borderColor","zIndex","onFocus","_props$onFocus","call","target","onBlur","_props$onBlur","caretHidden","autoCapitalize","toUpperCase","selectionColor","cursorColor","onChange","contextMenuHidden","display","flexDirection","alignItems","marginTop","minHeight","undefined","padding","fontFamily","fontSize","fontWeight"],"sources":["textinput.component.tsx"],"sourcesContent":["import React, { ForwardedRef, useCallback, useEffect, useRef, useState } from 'react';\nimport { Animated, Platform, Text, TextInput, TextInputProps, TextStyle, View } from 'react-native';\nimport { isArray } from 'lodash';\nimport IMask from 'imask';\nimport { FloatingLabel } from './floatinglabel.component';\n\ninterface SelectRange {\n start: number,\n end: number\n}\n\nconst WmCursor = React.memo((props: {\n color: string,\n height: number\n}) => {\n const opacityAnimation = useRef(new Animated.Value(0.5)).current;\n const runAnimation = useCallback(() => {\n Animated.timing(opacityAnimation, {\n toValue: 0.2,\n duration: 500,\n useNativeDriver: true\n }).start(() => {\n Animated.timing(opacityAnimation, {\n toValue: 0.6,\n duration: 500,\n useNativeDriver: true\n }).start(runAnimation);\n });\n }, []);\n useEffect(() => {\n runAnimation();\n }, []);\n return (\n <Animated.View \n testID=\"wm-custom-cursor\"\n style={{\n backgroundColor: props.color,\n width: 2,\n marginHorizontal: 1,\n height: props.height,\n opacity: opacityAnimation\n }}></Animated.View>\n );\n});\n\nexport const WMTextInput = React.forwardRef((props: (TextInputProps & \n {allowContentSelection: boolean,\n displayformat: string,\n maskchar: string,\n floatingLabel: string\n floatingLabelStyle: TextStyle,\n activeFloatingLabelStyle: TextStyle,\n customDisplayValue?: string,\n isInputFocused: boolean\n autoCapitalize?: string,\n background?: React.ReactNode\n }), \n ref: ForwardedRef<TextInput>) => {\n const [selectRange, setSelectRange] = useState<SelectRange>(null as any);\n const [iMask, setIMask] = useState(null as any);\n const [displayCursor, setDisplayCursor] = useState(false);\n const value = useRef(props.value || '');\n const [x, forceUpdate] = useState(1);\n const [displayValue, setDisplayValue] = useState('');\n const element = useRef(null as any);\n // iMask initialization\n useEffect(() => {\n const iMask: any = props.displayformat ? new IMask.MaskedPattern({\n mask: props.displayformat,\n skipInvalid: true,\n lazy: false,\n definitions: {\n '9': /\\d/,\n 'A': /[a-zA-Z]/,\n 'a': /[a-z]/,\n '*': /\\w/\n }\n }) : null;\n if (iMask) {\n iMask.typedValue = value;\n setDisplayValue(iMask.displayValue)\n setIMask(iMask);\n }\n },[props.displayformat]);\n // set default value\n useEffect(() => {\n const defaultValue = props.defaultValue || props.value || '';\n if (defaultValue && !value.current) {\n value.current = defaultValue;\n onChangeText(defaultValue);\n }\n },[props.defaultValue, props.value]);\n // set cursor position in windows\n useEffect(() => {\n setTimeout(() => {\n if (Platform.OS === 'web' && (props.displayformat || props.maskchar)) {\n element?.current?.setSelectionRange(value.current.length, value.current.length);\n }\n }, 100);\n }, [value.current, props]);\n const onSelectionChange = useCallback((e: any) => {\n if (Platform.OS !== 'android') {\n return;\n }\n const selection = e?.nativeEvent?.selection;\n if (!props.allowContentSelection\n && selection\n && selection.end - selection.start > 0) {\n setSelectRange({\n start: value.current.length + 2,\n end: value.current.length + 2\n });\n } else if (selectRange && selectRange.end > 0){\n setSelectRange(null as any);\n }\n }, [props.allowContentSelection, value]);\n // when text changes\n const onChangeText = useCallback((text: string) => {\n if (!(iMask || props.maskchar)) {\n value.current = text;\n props.onChangeText && props.onChangeText(text);\n return;\n }\n let _value = value.current || '';\n if (value.current.length - text.length > 0) {\n _value = _value.substring(0, _value.length - (value.current.length - text.length));\n } else if (text.length - value.current.length > 0) {\n _value += text.slice(-1 * (text.length - value.current.length));\n }\n let formattedValue = _value;\n if(props.maskchar) {\n formattedValue = (_value.replace(/./g, props.maskchar));\n }\n if (iMask) {\n iMask.typedValue = _value;\n formattedValue = iMask.displayValue;\n }\n if (formattedValue !== displayValue) {\n value.current = _value;\n props.onChangeText && props.onChangeText(_value);\n }\n forceUpdate(x+ 1);\n setDisplayValue(formattedValue);\n }, [iMask, value, displayValue, props.onChangeText]);\n const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';\n const opts = {} as any;\n opts[valueExpr] = props.customDisplayValue ?? value.current;\n const textStyle = Object.assign({}, ...isArray(props.style) ? props.style: [props.style]);\n const hideInput = props.displayformat || props.maskchar;\n return (\n <>\n {props.background}\n {props.floatingLabel ? (\n <FloatingLabel\n moveUp={!!(value.current || props.isInputFocused || displayValue)}\n label={props.floatingLabel ?? props.placeholder} \n style={{\n ...(props.floatingLabelStyle || []),\n ...(props.isInputFocused ? (props.activeFloatingLabelStyle || {}) : {})\n }}/>\n ) : null}\n <TextInput\n {...props}\n {...hideInput || props.customDisplayValue ? opts: {}}\n placeholder={props.floatingLabel || displayValue ? '' : props.placeholder }\n style={[props.style, hideInput ? {\n color: 'transparent', \n backgroundColor: 'transparent',\n borderColor: 'transparent',\n zIndex: 1\n } : {}]}\n onFocus={(e) => {\n props.onFocus?.(e);\n setDisplayCursor(true);\n element.current = e.target;\n }}\n onBlur={(e) => {\n props?.onBlur?.(e);\n setDisplayCursor(false);\n }}\n ref={ref}\n selection={selectRange}\n onSelectionChange={onSelectionChange}\n caretHidden={!!selectRange?.end}\n onChangeText={(text) => {\n if(props.autoCapitalize && props.autoCapitalize === 'characters') {\n onChangeText(text.toUpperCase());\n return;\n }\n onChangeText(text);\n }}\n {...hideInput ? {\n selectionColor: 'transparent',\n cursorColor: 'transparent',\n onChange : () => {}\n }: {}}\n contextMenuHidden={!props.allowContentSelection}\n autoCapitalize={props.autoCapitalize}\n ></TextInput>\n {\n hideInput ? (\n <View style={[props.style, {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n marginTop: -1 * (textStyle.height || textStyle.minHeight || 0)\n + (textStyle.marginTop || 0)}]}>\n <Text style={{ \n width: undefined,\n backgroundColor: 'transparent', \n borderColor: 'transparent',\n padding: 0,\n display: 'flex',\n color: textStyle.color,\n fontFamily: textStyle.fontFamily,\n fontSize: textStyle.fontSize,\n fontWeight: textStyle.fontWeight\n }}>\n {displayValue}\n </Text>\n {\n (displayCursor && !props.displayformat) ? React.createElement(WmCursor, {\n color: textStyle.color || '#000000',\n height: textStyle.fontSize || 14\n }) : null\n }\n </View>\n ) : null\n }\n </>\n );\n});"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","useCallback","useEffect","useRef","useState","Animated","Platform","Text","TextInput","View","isArray","IMask","FloatingLabel","WmCursor","memo","props","opacityAnimation","Value","current","runAnimation","timing","toValue","duration","useNativeDriver","start","createElement","testID","style","backgroundColor","color","width","marginHorizontal","height","opacity","WMTextInput","forwardRef","ref","_props$customDisplayV","_props$floatingLabel","selectRange","setSelectRange","iMask","setIMask","displayCursor","setDisplayCursor","value","x","forceUpdate","displayValue","setDisplayValue","element","displayformat","MaskedPattern","mask","skipInvalid","lazy","definitions","typedValue","defaultValue","onChangeText","setTimeout","OS","maskchar","_element$current","setSelectionRange","length","onSelectionChange","e","_e$nativeEvent","selection","nativeEvent","allowContentSelection","end","text","_value","substring","slice","formattedValue","replace","valueExpr","opts","customDisplayValue","textStyle","Object","assign","hideInput","Fragment","background","floatingLabel","moveUp","isInputFocused","label","placeholder","floatingLabelStyle","activeFloatingLabelStyle","_extends","borderColor","zIndex","onFocus","_props$onFocus","call","target","onBlur","_props$onBlur","caretHidden","autoCapitalize","toUpperCase","selectionColor","cursorColor","onChange","contextMenuHidden","onLayout","handleLayout","display","flexDirection","alignItems","marginTop","minHeight","undefined","padding","fontFamily","fontSize","fontWeight"],"sources":["textinput.component.tsx"],"sourcesContent":["import React, { ForwardedRef, useCallback, useEffect, useRef, useState } from 'react';\nimport { Animated, Platform, Text, TextInput, TextInputProps, TextStyle, View } from 'react-native';\nimport { isArray } from 'lodash';\nimport IMask from 'imask';\nimport { FloatingLabel } from './floatinglabel.component';\n\ninterface SelectRange {\n start: number,\n end: number\n}\n\nconst WmCursor = React.memo((props: {\n color: string,\n height: number\n}) => {\n const opacityAnimation = useRef(new Animated.Value(0.5)).current;\n const runAnimation = useCallback(() => {\n Animated.timing(opacityAnimation, {\n toValue: 0.2,\n duration: 500,\n useNativeDriver: true\n }).start(() => {\n Animated.timing(opacityAnimation, {\n toValue: 0.6,\n duration: 500,\n useNativeDriver: true\n }).start(runAnimation);\n });\n }, []);\n useEffect(() => {\n runAnimation();\n }, []);\n return (\n <Animated.View \n testID=\"wm-custom-cursor\"\n style={{\n backgroundColor: props.color,\n width: 2,\n marginHorizontal: 1,\n height: props.height,\n opacity: opacityAnimation\n }}></Animated.View>\n );\n});\n\nexport const WMTextInput = React.forwardRef((props: (TextInputProps & \n {allowContentSelection: boolean,\n displayformat: string,\n maskchar: string,\n floatingLabel: string\n floatingLabelStyle: TextStyle,\n activeFloatingLabelStyle: TextStyle,\n customDisplayValue?: string,\n isInputFocused: boolean\n autoCapitalize?: string,\n background?: React.ReactNode\n handleLayout?: any\n }), \n ref: ForwardedRef<TextInput>) => {\n const [selectRange, setSelectRange] = useState<SelectRange>(null as any);\n const [iMask, setIMask] = useState(null as any);\n const [displayCursor, setDisplayCursor] = useState(false);\n const value = useRef(props.value || '');\n const [x, forceUpdate] = useState(1);\n const [displayValue, setDisplayValue] = useState('');\n const element = useRef(null as any);\n // iMask initialization\n useEffect(() => {\n const iMask: any = props.displayformat ? new IMask.MaskedPattern({\n mask: props.displayformat,\n skipInvalid: true,\n lazy: false,\n definitions: {\n '9': /\\d/,\n 'A': /[a-zA-Z]/,\n 'a': /[a-z]/,\n '*': /\\w/\n }\n }) : null;\n if (iMask) {\n iMask.typedValue = value;\n setDisplayValue(iMask.displayValue)\n setIMask(iMask);\n }\n },[props.displayformat]);\n // set default value\n useEffect(() => {\n const defaultValue = props.defaultValue || props.value || '';\n if (defaultValue && !value.current) {\n value.current = defaultValue;\n onChangeText(defaultValue);\n }\n },[props.defaultValue, props.value]);\n // set cursor position in windows\n useEffect(() => {\n setTimeout(() => {\n if (Platform.OS === 'web' && (props.displayformat || props.maskchar)) {\n element?.current?.setSelectionRange(value.current.length, value.current.length);\n }\n }, 100);\n }, [value.current, props]);\n const onSelectionChange = useCallback((e: any) => {\n if (Platform.OS !== 'android') {\n return;\n }\n const selection = e?.nativeEvent?.selection;\n if (!props.allowContentSelection\n && selection\n && selection.end - selection.start > 0) {\n setSelectRange({\n start: value.current.length + 2,\n end: value.current.length + 2\n });\n } else if (selectRange && selectRange.end > 0){\n setSelectRange(null as any);\n }\n }, [props.allowContentSelection, value]);\n // when text changes\n const onChangeText = useCallback((text: string) => {\n if (!(iMask || props.maskchar)) {\n value.current = text;\n props.onChangeText && props.onChangeText(text);\n return;\n }\n let _value = value.current || '';\n if (value.current.length - text.length > 0) {\n _value = _value.substring(0, _value.length - (value.current.length - text.length));\n } else if (text.length - value.current.length > 0) {\n _value += text.slice(-1 * (text.length - value.current.length));\n }\n let formattedValue = _value;\n if(props.maskchar) {\n formattedValue = (_value.replace(/./g, props.maskchar));\n }\n if (iMask) {\n iMask.typedValue = _value;\n formattedValue = iMask.displayValue;\n }\n if (formattedValue !== displayValue) {\n value.current = _value;\n props.onChangeText && props.onChangeText(_value);\n }\n forceUpdate(x+ 1);\n setDisplayValue(formattedValue);\n }, [iMask, value, displayValue, props.onChangeText]);\n const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';\n const opts = {} as any;\n opts[valueExpr] = props.customDisplayValue ?? value.current;\n const textStyle = Object.assign({}, ...isArray(props.style) ? props.style: [props.style]);\n const hideInput = props.displayformat || props.maskchar;\n return (\n <>\n {props.background}\n {props.floatingLabel ? (\n <FloatingLabel\n moveUp={!!(value.current || props.isInputFocused || displayValue)}\n label={props.floatingLabel ?? props.placeholder} \n style={{\n ...(props.floatingLabelStyle || []),\n ...(props.isInputFocused ? (props.activeFloatingLabelStyle || {}) : {})\n }}/>\n ) : null}\n <TextInput\n {...props}\n {...hideInput || props.customDisplayValue ? opts: {}}\n placeholder={props.floatingLabel || displayValue ? '' : props.placeholder }\n style={[props.style, hideInput ? {\n color: 'transparent', \n backgroundColor: 'transparent',\n borderColor: 'transparent',\n zIndex: 1\n } : {}]}\n onFocus={(e) => {\n props.onFocus?.(e);\n setDisplayCursor(true);\n element.current = e.target;\n }}\n onBlur={(e) => {\n props?.onBlur?.(e);\n setDisplayCursor(false);\n }}\n ref={ref}\n selection={selectRange}\n onSelectionChange={onSelectionChange}\n caretHidden={!!selectRange?.end}\n onChangeText={(text) => {\n if(props.autoCapitalize && props.autoCapitalize === 'characters') {\n onChangeText(text.toUpperCase());\n return;\n }\n onChangeText(text);\n }}\n {...hideInput ? {\n selectionColor: 'transparent',\n cursorColor: 'transparent',\n onChange : () => {}\n }: {}}\n contextMenuHidden={!props.allowContentSelection}\n autoCapitalize={props.autoCapitalize}\n onLayout={props.handleLayout}\n ></TextInput>\n {\n hideInput ? (\n <View style={[props.style, {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n marginTop: -1 * (textStyle.height || textStyle.minHeight || 0)\n + (textStyle.marginTop || 0)}]}>\n <Text style={{ \n width: undefined,\n backgroundColor: 'transparent', \n borderColor: 'transparent',\n padding: 0,\n display: 'flex',\n color: textStyle.color,\n fontFamily: textStyle.fontFamily,\n fontSize: textStyle.fontSize,\n fontWeight: textStyle.fontWeight\n }}>\n {displayValue}\n </Text>\n {\n (displayCursor && !props.displayformat) ? React.createElement(WmCursor, {\n color: textStyle.color || '#000000',\n height: textStyle.fontSize || 14\n }) : null\n }\n </View>\n ) : null\n }\n </>\n );\n});"],"mappings":"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","ignoreList":[]}
|
@@ -139,17 +139,21 @@ export class Tappable extends React.Component {
|
|
139
139
|
}, /*#__PURE__*/React.createElement(TouchableRipple, _extends({
|
140
140
|
rippleColor: this.props.disableTouchEffect ? "transparent" : this.props.rippleColor,
|
141
141
|
borderless: true
|
142
|
-
}, commonProps
|
142
|
+
}, commonProps, {
|
143
|
+
onLayout: this.props.onLayout
|
144
|
+
}), /*#__PURE__*/React.createElement(React.Fragment, null, this.props.children)));
|
143
145
|
}) :
|
144
146
|
/*#__PURE__*/
|
145
147
|
//default value is 0.2
|
146
148
|
React.createElement(TouchableOpacity, _extends({
|
147
|
-
activeOpacity: this.props.disableTouchEffect ? 1 : 0.2
|
149
|
+
activeOpacity: this.props.disableTouchEffect ? 1 : 0.2,
|
150
|
+
onLayout: this.props.onLayout
|
148
151
|
}, commonProps), /*#__PURE__*/React.createElement(React.Fragment, null, this.props.children));
|
149
152
|
});
|
150
153
|
}
|
151
154
|
return /*#__PURE__*/React.createElement(View, {
|
152
|
-
style: this.props.styles
|
155
|
+
style: this.props.styles,
|
156
|
+
onLayout: this.props.onLayout
|
153
157
|
}, this.props.children);
|
154
158
|
}
|
155
159
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Platform","View","TouchableOpacity","get","injector","TouchableRipple","TappableContext","createContext","UIPreferencesConsumer","ParentTappableContext","SyntheticEvent","constructor","_defineProperty","stopPropagation","propagationEnabled","Tappable","Component","props","triggerTap","e","_this$parent","target","onTap","invokeEventCallback","parent","onPress","_this$props$target","lastPress","Date","now","onTouchStart","currentTime","tapDelta","lastTap","isLongTap","_injector$FOCUSED_ELE","FOCUSED_ELEMENT","blur","lastDoubleTap","onDoubleTap","setTimeout","_this$parent2","onLongTap","_this$props$target2","_this$parent3","onPressOut","onTouchEnd","_this$props$target3","_this$parent4","setParent","render","commonProps","OS","accessibilityLabel","testID","accessibilityProps","disabled","proxy","style","styles","_e$target","tagName","onLongPress","onLongtap","onDoubletap","createElement","preferences","enableRipple","Consumer","Provider","value","_extends","rippleColor","disableTouchEffect","borderless","Fragment","children","activeOpacity"],"sources":["tappable.component.tsx"],"sourcesContent":["import { BaseComponent } from \"@wavemaker/app-rn-runtime/core/base.component\";\nimport React from \"react\";\nimport { GestureResponderEvent, Platform, View, TouchableOpacity } from \"react-native\";\nimport { get } from \"lodash\";\nimport injector from \"./injector\";\nimport { TouchableRipple } from \"react-native-paper\";\nimport ThemeVariables from \"../styles/theme.variables\";\nimport { isDefined } from \"./utils\";\n\nexport const TappableContext = React.createContext<Tappable>(null as any);\nimport { UIPreferencesConsumer, UI_PREFERENCES } from \"./ui-preferences.context\";\n\nexport const ParentTappableContext = React.createContext<Tappable>(null as any);\ninterface TappableProps {\n testID?: string;\n children?: any\n styles?: any;\n target?: BaseComponent<any, any, any>;\n onTap?: (e: any) => void;\n onLongTap?: (e: any) => void; \n onDoubleTap?: (e: any) => void;\n onTouchStart? : (e: any) => void;\n onTouchEnd? : (e: any) => void;\n rippleColor?: string;\n accessibilityProps?: any;\n disableTouchEffect?:boolean;\n}\n\nexport class SyntheticEvent {\n // as the event is being used in onPress, onPressOut and onLongTap the TapEvent is renamed to SyntheticEvent\n propagationEnabled = true;\n \n constructor() {\n\n }\n\n stopPropagation() {\n this.propagationEnabled = false;\n }\n}\n\nexport class Tappable extends React.Component<TappableProps, any> {\n private lastPress = 0;\n private lastTap = 0;\n private lastDoubleTap = 0;\n private isLongTap = false;\n private parent:Tappable = null as any;\n \n constructor(props: any) {\n super(props);\n }\n\n async triggerTap(e = new SyntheticEvent()) {\n if (!e.propagationEnabled) {\n return;\n }\n const target = this.props.target;\n if (this.props.onTap) {\n await this.props.onTap(e);\n } else {\n await target?.invokeEventCallback('onTap', [e, target]);\n }\n this.parent?.triggerTap(e);\n }\n\n onPress(e: SyntheticEvent): void { \n this.lastPress = Date.now();\n const target = this.props.target;\n this.props.onTouchStart && this.props.onTouchStart(e);\n this.props.target?.invokeEventCallback('onTouchstart', [e, this.props.target]);\n const currentTime = Date.now();\n const tapDelta = currentTime - this.lastTap;\n if (this.isLongTap) {\n this.isLongTap = false;\n return;\n }\n if (e.propagationEnabled) {\n injector.FOCUSED_ELEMENT.get()?.blur();\n if(this.lastDoubleTap !== this.lastTap \n && tapDelta < 500) {\n this.props.onDoubleTap && this.props.onDoubleTap(e);\n setTimeout(() => {\n target?.invokeEventCallback('onDoubletap', [e, target]);\n }, 200);\n this.lastDoubleTap = currentTime;\n }\n setTimeout(() => {\n if (!e.propagationEnabled) {\n return;\n }\n if (this.props.onTap) {\n this.props.onTap(e);\n } else {\n target?.invokeEventCallback('onTap', [e, target]);\n }\n this.parent?.onPress(e);\n }, 200);\n this.lastTap = currentTime;\n }\n }\n\n onLongTap(e: SyntheticEvent): void {\n if(!e.propagationEnabled){\n return;\n }\n this.props.onLongTap && this.props.onLongTap(e);\n setTimeout(() => {\n this.props.target?.invokeEventCallback('onLongtap', [e, this.props.target]);\n this.parent?.onPressOut(e);\n }, 200);\n this.isLongTap = true;\n }\n \n onPressOut(e: SyntheticEvent): void {\n if(!e.propagationEnabled){\n return;\n } \n this.props.onTouchEnd && this.props.onTouchEnd(e);\n setTimeout(() => {\n this.props.target?.invokeEventCallback('onTouchend', [e, this.props.target]);\n this.parent?.onPressOut(e);\n }, 200);\n this.isLongTap = false;\n }\n private setParent(parent: Tappable) {\n if (parent && this.parent !== parent) {\n this.parent = parent;\n }\n }\n\n render() {\n const target = this.props.target;\n const commonProps = {\n ...(Platform.OS === 'android' || Platform.OS === 'web') ? {\n accessibilityLabel: this.props.testID,\n testID: this.props.testID\n }: {\n // accessible: false,\n testID: this.props.testID\n },\n ...this.props.accessibilityProps,\n disabled:get(target?.proxy, 'disabled'),\n style:this.props.styles,\n onPress:(e?: GestureResponderEvent) => {\n if ((e?.target as any)?.tagName === 'INPUT') {\n return;\n }\n this.onPress(new SyntheticEvent())\n },\n onLongPress:(e?: GestureResponderEvent) => this.onLongTap(new SyntheticEvent()),\n onPressOut:(e?: GestureResponderEvent) => this.onPressOut(new SyntheticEvent())\n };\n if (target?.props.onTap \n || target?.props.onLongtap \n || target?.props.onDoubletap \n || this.props.onTap \n || this.props.onLongTap \n || this.props.onDoubleTap) {\n return (\n <UIPreferencesConsumer>\n {(preferences: UI_PREFERENCES) => {\n return preferences.enableRipple != false ? (\n <ParentTappableContext.Consumer>{(parent) => {\n this.setParent(parent);\n return( <ParentTappableContext.Provider value={this}>\n <TouchableRipple rippleColor={this.props.disableTouchEffect ? \"transparent\" : this.props.rippleColor} borderless={true} {...commonProps}>\n <>{this.props.children}</>\n </TouchableRipple>\n </ParentTappableContext.Provider>)}}</ParentTappableContext.Consumer>): (\n //default value is 0.2\n <TouchableOpacity activeOpacity={this.props.disableTouchEffect ? 1 : 0.2} {...commonProps}>\n <>{this.props.children}</>\n </TouchableOpacity>);\n }}\n </UIPreferencesConsumer>\n );\n }\n return (<View style={this.props.styles}>{this.props.children}</View>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","Platform","View","TouchableOpacity","get","injector","TouchableRipple","TappableContext","createContext","UIPreferencesConsumer","ParentTappableContext","SyntheticEvent","constructor","_defineProperty","stopPropagation","propagationEnabled","Tappable","Component","props","triggerTap","e","_this$parent","target","onTap","invokeEventCallback","parent","onPress","_this$props$target","lastPress","Date","now","onTouchStart","currentTime","tapDelta","lastTap","isLongTap","_injector$FOCUSED_ELE","FOCUSED_ELEMENT","blur","lastDoubleTap","onDoubleTap","setTimeout","_this$parent2","onLongTap","_this$props$target2","_this$parent3","onPressOut","onTouchEnd","_this$props$target3","_this$parent4","setParent","render","commonProps","OS","accessibilityLabel","testID","accessibilityProps","disabled","proxy","style","styles","_e$target","tagName","onLongPress","onLongtap","onDoubletap","createElement","preferences","enableRipple","Consumer","Provider","value","_extends","rippleColor","disableTouchEffect","borderless","onLayout","Fragment","children","activeOpacity"],"sources":["tappable.component.tsx"],"sourcesContent":["import { BaseComponent } from \"@wavemaker/app-rn-runtime/core/base.component\";\nimport React from \"react\";\nimport { GestureResponderEvent, Platform, View, TouchableOpacity } from \"react-native\";\nimport { get } from \"lodash\";\nimport injector from \"./injector\";\nimport { TouchableRipple } from \"react-native-paper\";\nimport ThemeVariables from \"../styles/theme.variables\";\nimport { isDefined } from \"./utils\";\n\nexport const TappableContext = React.createContext<Tappable>(null as any);\nimport { UIPreferencesConsumer, UI_PREFERENCES } from \"./ui-preferences.context\";\n\nexport const ParentTappableContext = React.createContext<Tappable>(null as any);\ninterface TappableProps {\n testID?: string;\n children?: any\n styles?: any;\n target?: BaseComponent<any, any, any>;\n onTap?: (e: any) => void;\n onLongTap?: (e: any) => void; \n onDoubleTap?: (e: any) => void;\n onTouchStart? : (e: any) => void;\n onTouchEnd? : (e: any) => void;\n rippleColor?: string;\n accessibilityProps?: any;\n disableTouchEffect?:boolean;\n onLayout?: any;\n}\n\nexport class SyntheticEvent {\n // as the event is being used in onPress, onPressOut and onLongTap the TapEvent is renamed to SyntheticEvent\n propagationEnabled = true;\n \n constructor() {\n\n }\n\n stopPropagation() {\n this.propagationEnabled = false;\n }\n}\n\nexport class Tappable extends React.Component<TappableProps, any> {\n private lastPress = 0;\n private lastTap = 0;\n private lastDoubleTap = 0;\n private isLongTap = false;\n private parent:Tappable = null as any;\n \n constructor(props: any) {\n super(props);\n }\n\n async triggerTap(e = new SyntheticEvent()) {\n if (!e.propagationEnabled) {\n return;\n }\n const target = this.props.target;\n if (this.props.onTap) {\n await this.props.onTap(e);\n } else {\n await target?.invokeEventCallback('onTap', [e, target]);\n }\n this.parent?.triggerTap(e);\n }\n\n onPress(e: SyntheticEvent): void { \n this.lastPress = Date.now();\n const target = this.props.target;\n this.props.onTouchStart && this.props.onTouchStart(e);\n this.props.target?.invokeEventCallback('onTouchstart', [e, this.props.target]);\n const currentTime = Date.now();\n const tapDelta = currentTime - this.lastTap;\n if (this.isLongTap) {\n this.isLongTap = false;\n return;\n }\n if (e.propagationEnabled) {\n injector.FOCUSED_ELEMENT.get()?.blur();\n if(this.lastDoubleTap !== this.lastTap \n && tapDelta < 500) {\n this.props.onDoubleTap && this.props.onDoubleTap(e);\n setTimeout(() => {\n target?.invokeEventCallback('onDoubletap', [e, target]);\n }, 200);\n this.lastDoubleTap = currentTime;\n }\n setTimeout(() => {\n if (!e.propagationEnabled) {\n return;\n }\n if (this.props.onTap) {\n this.props.onTap(e);\n } else {\n target?.invokeEventCallback('onTap', [e, target]);\n }\n this.parent?.onPress(e);\n }, 200);\n this.lastTap = currentTime;\n }\n }\n\n onLongTap(e: SyntheticEvent): void {\n if(!e.propagationEnabled){\n return;\n }\n this.props.onLongTap && this.props.onLongTap(e);\n setTimeout(() => {\n this.props.target?.invokeEventCallback('onLongtap', [e, this.props.target]);\n this.parent?.onPressOut(e);\n }, 200);\n this.isLongTap = true;\n }\n \n onPressOut(e: SyntheticEvent): void {\n if(!e.propagationEnabled){\n return;\n } \n this.props.onTouchEnd && this.props.onTouchEnd(e);\n setTimeout(() => {\n this.props.target?.invokeEventCallback('onTouchend', [e, this.props.target]);\n this.parent?.onPressOut(e);\n }, 200);\n this.isLongTap = false;\n }\n private setParent(parent: Tappable) {\n if (parent && this.parent !== parent) {\n this.parent = parent;\n }\n }\n\n render() {\n const target = this.props.target;\n const commonProps = {\n ...(Platform.OS === 'android' || Platform.OS === 'web') ? {\n accessibilityLabel: this.props.testID,\n testID: this.props.testID\n }: {\n // accessible: false,\n testID: this.props.testID\n },\n ...this.props.accessibilityProps,\n disabled:get(target?.proxy, 'disabled'),\n style:this.props.styles,\n onPress:(e?: GestureResponderEvent) => {\n if ((e?.target as any)?.tagName === 'INPUT') {\n return;\n }\n this.onPress(new SyntheticEvent())\n },\n onLongPress:(e?: GestureResponderEvent) => this.onLongTap(new SyntheticEvent()),\n onPressOut:(e?: GestureResponderEvent) => this.onPressOut(new SyntheticEvent())\n };\n if (target?.props.onTap \n || target?.props.onLongtap \n || target?.props.onDoubletap \n || this.props.onTap \n || this.props.onLongTap \n || this.props.onDoubleTap) {\n return (\n <UIPreferencesConsumer>\n {(preferences: UI_PREFERENCES) => {\n return preferences.enableRipple != false ? (\n <ParentTappableContext.Consumer>{(parent) => {\n this.setParent(parent);\n return(\n <ParentTappableContext.Provider value={this}>\n <TouchableRipple \n rippleColor={this.props.disableTouchEffect ? \"transparent\" : this.props.rippleColor} \n borderless={true} \n {...commonProps}\n onLayout={this.props.onLayout}\n >\n <>{this.props.children}</>\n </TouchableRipple>\n </ParentTappableContext.Provider>\n )\n }}</ParentTappableContext.Consumer>): (\n //default value is 0.2\n <TouchableOpacity \n activeOpacity={this.props.disableTouchEffect ? 1 : 0.2} \n onLayout={this.props.onLayout}\n {...commonProps}\n >\n <>{this.props.children}</>\n </TouchableOpacity>);\n }}\n </UIPreferencesConsumer>\n );\n }\n return (\n <View \n style={this.props.styles}\n onLayout={this.props.onLayout}\n >\n {this.props.children}\n </View>);\n }\n}\n"],"mappings":";;;;AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAgCC,QAAQ,EAAEC,IAAI,EAAEC,gBAAgB,QAAQ,cAAc;AACtF,SAASC,GAAG,QAAQ,QAAQ;AAC5B,OAAOC,QAAQ,MAAM,YAAY;AACjC,SAASC,eAAe,QAAQ,oBAAoB;AAIpD,OAAO,MAAMC,eAAe,gBAAGP,KAAK,CAACQ,aAAa,CAAW,IAAW,CAAC;AACzE,SAASC,qBAAqB,QAAwB,0BAA0B;AAEhF,OAAO,MAAMC,qBAAqB,gBAAGV,KAAK,CAACQ,aAAa,CAAW,IAAW,CAAC;AAiB/E,OAAO,MAAMG,cAAc,CAAC;EAIxBC,WAAWA,CAAA,EAAG;IAHd;IAAAC,eAAA,6BACqB,IAAI;EAIzB;EAEAC,eAAeA,CAAA,EAAG;IACd,IAAI,CAACC,kBAAkB,GAAG,KAAK;EACnC;AACJ;AAEA,OAAO,MAAMC,QAAQ,SAAShB,KAAK,CAACiB,SAAS,CAAqB;EAO9DL,WAAWA,CAACM,KAAU,EAAE;IACpB,KAAK,CAACA,KAAK,CAAC;IAACL,eAAA,oBAPG,CAAC;IAAAA,eAAA,kBACH,CAAC;IAAAA,eAAA,wBACK,CAAC;IAAAA,eAAA,oBACL,KAAK;IAAAA,eAAA,iBACC,IAAI;EAI9B;EAEA,MAAMM,UAAUA,CAACC,CAAC,GAAG,IAAIT,cAAc,CAAC,CAAC,EAAE;IAAA,IAAAU,YAAA;IACvC,IAAI,CAACD,CAAC,CAACL,kBAAkB,EAAE;MACvB;IACJ;IACA,MAAMO,MAAM,GAAG,IAAI,CAACJ,KAAK,CAACI,MAAM;IAChC,IAAI,IAAI,CAACJ,KAAK,CAACK,KAAK,EAAE;MAClB,MAAM,IAAI,CAACL,KAAK,CAACK,KAAK,CAACH,CAAC,CAAC;IAC7B,CAAC,MAAM;MACH,OAAME,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEE,mBAAmB,CAAC,OAAO,EAAE,CAACJ,CAAC,EAAEE,MAAM,CAAC,CAAC;IAC3D;IACA,CAAAD,YAAA,OAAI,CAACI,MAAM,cAAAJ,YAAA,eAAXA,YAAA,CAAaF,UAAU,CAACC,CAAC,CAAC;EAC9B;EAEAM,OAAOA,CAACN,CAAiB,EAAQ;IAAA,IAAAO,kBAAA;IAC7B,IAAI,CAACC,SAAS,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;IAC3B,MAAMR,MAAM,GAAG,IAAI,CAACJ,KAAK,CAACI,MAAM;IAChC,IAAI,CAACJ,KAAK,CAACa,YAAY,IAAI,IAAI,CAACb,KAAK,CAACa,YAAY,CAACX,CAAC,CAAC;IACrD,CAAAO,kBAAA,OAAI,CAACT,KAAK,CAACI,MAAM,cAAAK,kBAAA,eAAjBA,kBAAA,CAAmBH,mBAAmB,CAAC,cAAc,EAAE,CAACJ,CAAC,EAAE,IAAI,CAACF,KAAK,CAACI,MAAM,CAAC,CAAC;IAC9E,MAAMU,WAAW,GAAGH,IAAI,CAACC,GAAG,CAAC,CAAC;IAC9B,MAAMG,QAAQ,GAAGD,WAAW,GAAG,IAAI,CAACE,OAAO;IAC3C,IAAI,IAAI,CAACC,SAAS,EAAE;MAChB,IAAI,CAACA,SAAS,GAAG,KAAK;MACtB;IACJ;IACA,IAAIf,CAAC,CAACL,kBAAkB,EAAE;MAAA,IAAAqB,qBAAA;MACtB,CAAAA,qBAAA,GAAA/B,QAAQ,CAACgC,eAAe,CAACjC,GAAG,CAAC,CAAC,cAAAgC,qBAAA,eAA9BA,qBAAA,CAAgCE,IAAI,CAAC,CAAC;MACtC,IAAG,IAAI,CAACC,aAAa,KAAK,IAAI,CAACL,OAAO,IAC/BD,QAAQ,GAAG,GAAG,EAAE;QACnB,IAAI,CAACf,KAAK,CAACsB,WAAW,IAAI,IAAI,CAACtB,KAAK,CAACsB,WAAW,CAACpB,CAAC,CAAC;QACnDqB,UAAU,CAAC,MAAM;UACbnB,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEE,mBAAmB,CAAC,aAAa,EAAE,CAACJ,CAAC,EAAEE,MAAM,CAAC,CAAC;QAC3D,CAAC,EAAE,GAAG,CAAC;QACP,IAAI,CAACiB,aAAa,GAAGP,WAAW;MACpC;MACAS,UAAU,CAAC,MAAM;QAAA,IAAAC,aAAA;QACb,IAAI,CAACtB,CAAC,CAACL,kBAAkB,EAAE;UACvB;QACJ;QACA,IAAI,IAAI,CAACG,KAAK,CAACK,KAAK,EAAE;UAClB,IAAI,CAACL,KAAK,CAACK,KAAK,CAACH,CAAC,CAAC;QACvB,CAAC,MAAM;UACHE,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEE,mBAAmB,CAAC,OAAO,EAAE,CAACJ,CAAC,EAAEE,MAAM,CAAC,CAAC;QACrD;QACA,CAAAoB,aAAA,OAAI,CAACjB,MAAM,cAAAiB,aAAA,eAAXA,aAAA,CAAahB,OAAO,CAACN,CAAC,CAAC;MAC3B,CAAC,EAAE,GAAG,CAAC;MACP,IAAI,CAACc,OAAO,GAAGF,WAAW;IAC9B;EACJ;EAEAW,SAASA,CAACvB,CAAiB,EAAQ;IAC/B,IAAG,CAACA,CAAC,CAACL,kBAAkB,EAAC;MACrB;IACJ;IACA,IAAI,CAACG,KAAK,CAACyB,SAAS,IAAI,IAAI,CAACzB,KAAK,CAACyB,SAAS,CAACvB,CAAC,CAAC;IAC/CqB,UAAU,CAAC,MAAM;MAAA,IAAAG,mBAAA,EAAAC,aAAA;MACb,CAAAD,mBAAA,OAAI,CAAC1B,KAAK,CAACI,MAAM,cAAAsB,mBAAA,eAAjBA,mBAAA,CAAmBpB,mBAAmB,CAAC,WAAW,EAAE,CAACJ,CAAC,EAAE,IAAI,CAACF,KAAK,CAACI,MAAM,CAAC,CAAC;MAC3E,CAAAuB,aAAA,OAAI,CAACpB,MAAM,cAAAoB,aAAA,eAAXA,aAAA,CAAaC,UAAU,CAAC1B,CAAC,CAAC;IAC9B,CAAC,EAAE,GAAG,CAAC;IACP,IAAI,CAACe,SAAS,GAAG,IAAI;EACzB;EAEAW,UAAUA,CAAC1B,CAAiB,EAAQ;IAChC,IAAG,CAACA,CAAC,CAACL,kBAAkB,EAAC;MACrB;IACJ;IACA,IAAI,CAACG,KAAK,CAAC6B,UAAU,IAAI,IAAI,CAAC7B,KAAK,CAAC6B,UAAU,CAAC3B,CAAC,CAAC;IACjDqB,UAAU,CAAC,MAAM;MAAA,IAAAO,mBAAA,EAAAC,aAAA;MACb,CAAAD,mBAAA,OAAI,CAAC9B,KAAK,CAACI,MAAM,cAAA0B,mBAAA,eAAjBA,mBAAA,CAAmBxB,mBAAmB,CAAC,YAAY,EAAE,CAACJ,CAAC,EAAE,IAAI,CAACF,KAAK,CAACI,MAAM,CAAC,CAAC;MAC5E,CAAA2B,aAAA,OAAI,CAACxB,MAAM,cAAAwB,aAAA,eAAXA,aAAA,CAAaH,UAAU,CAAC1B,CAAC,CAAC;IAC9B,CAAC,EAAE,GAAG,CAAC;IACP,IAAI,CAACe,SAAS,GAAG,KAAK;EAC1B;EACQe,SAASA,CAACzB,MAAgB,EAAE;IAChC,IAAIA,MAAM,IAAI,IAAI,CAACA,MAAM,KAAKA,MAAM,EAAG;MACnC,IAAI,CAACA,MAAM,GAAGA,MAAM;IACxB;EACJ;EAEA0B,MAAMA,CAAA,EAAG;IACL,MAAM7B,MAAM,GAAG,IAAI,CAACJ,KAAK,CAACI,MAAM;IAChC,MAAM8B,WAAW,GAAG;MAChB,IAAInD,QAAQ,CAACoD,EAAE,KAAK,SAAS,IAAIpD,QAAQ,CAACoD,EAAE,KAAK,KAAK,GAAI;QACtDC,kBAAkB,EAAE,IAAI,CAACpC,KAAK,CAACqC,MAAM;QACrCA,MAAM,EAAE,IAAI,CAACrC,KAAK,CAACqC;MACvB,CAAC,GAAE;QACC;QACAA,MAAM,EAAE,IAAI,CAACrC,KAAK,CAACqC;MACvB,CAAC;MACD,GAAG,IAAI,CAACrC,KAAK,CAACsC,kBAAkB;MAChCC,QAAQ,EAACrD,GAAG,CAACkB,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEoC,KAAK,EAAE,UAAU,CAAC;MACvCC,KAAK,EAAC,IAAI,CAACzC,KAAK,CAAC0C,MAAM;MACvBlC,OAAO,EAAEN,CAAyB,IAAK;QAAA,IAAAyC,SAAA;QACnC,IAAI,CAACzC,CAAC,aAADA,CAAC,gBAAAyC,SAAA,GAADzC,CAAC,CAAEE,MAAM,cAAAuC,SAAA,uBAAVA,SAAA,CAAoBC,OAAO,MAAK,OAAO,EAAE;UACzC;QACJ;QACA,IAAI,CAACpC,OAAO,CAAC,IAAIf,cAAc,CAAC,CAAC,CAAC;MACtC,CAAC;MACDoD,WAAW,EAAE3C,CAAyB,IAAK,IAAI,CAACuB,SAAS,CAAC,IAAIhC,cAAc,CAAC,CAAC,CAAC;MAC/EmC,UAAU,EAAE1B,CAAyB,IAAK,IAAI,CAAC0B,UAAU,CAAC,IAAInC,cAAc,CAAC,CAAC;IAClF,CAAC;IACD,IAAIW,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEJ,KAAK,CAACK,KAAK,IAChBD,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEJ,KAAK,CAAC8C,SAAS,IACvB1C,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEJ,KAAK,CAAC+C,WAAW,IACzB,IAAI,CAAC/C,KAAK,CAACK,KAAK,IAChB,IAAI,CAACL,KAAK,CAACyB,SAAS,IACpB,IAAI,CAACzB,KAAK,CAACsB,WAAW,EAAE;MAC3B,oBACAxC,KAAA,CAAAkE,aAAA,CAACzD,qBAAqB,QAChB0D,WAA2B,IAAK;QAC9B,OAAOA,WAAW,CAACC,YAAY,IAAI,KAAK,gBACpCpE,KAAA,CAAAkE,aAAA,CAACxD,qBAAqB,CAAC2D,QAAQ,QAAG5C,MAAM,IAAK;UACzC,IAAI,CAACyB,SAAS,CAACzB,MAAM,CAAC;UACtB,oBACIzB,KAAA,CAAAkE,aAAA,CAACxD,qBAAqB,CAAC4D,QAAQ;YAACC,KAAK,EAAE;UAAK,gBACxCvE,KAAA,CAAAkE,aAAA,CAAC5D,eAAe,EAAAkE,QAAA;YACZC,WAAW,EAAE,IAAI,CAACvD,KAAK,CAACwD,kBAAkB,GAAG,aAAa,GAAG,IAAI,CAACxD,KAAK,CAACuD,WAAY;YACpFE,UAAU,EAAE;UAAK,GACbvB,WAAW;YACfwB,QAAQ,EAAE,IAAI,CAAC1D,KAAK,CAAC0D;UAAS,iBAE9B5E,KAAA,CAAAkE,aAAA,CAAAlE,KAAA,CAAA6E,QAAA,QAAG,IAAI,CAAC3D,KAAK,CAAC4D,QAAW,CACZ,CACW,CAAC;QAEzC,CAAkC,CAAC;QAAA;QACnC;QACA9E,KAAA,CAAAkE,aAAA,CAAC/D,gBAAgB,EAAAqE,QAAA;UACbO,aAAa,EAAE,IAAI,CAAC7D,KAAK,CAACwD,kBAAkB,GAAG,CAAC,GAAG,GAAI;UACvDE,QAAQ,EAAE,IAAI,CAAC1D,KAAK,CAAC0D;QAAS,GAC1BxB,WAAW,gBAEfpD,KAAA,CAAAkE,aAAA,CAAAlE,KAAA,CAAA6E,QAAA,QAAG,IAAI,CAAC3D,KAAK,CAAC4D,QAAW,CACX,CAAE;MAC5B,CACmB,CAAC;IAE5B;IACA,oBACI9E,KAAA,CAAAkE,aAAA,CAAChE,IAAI;MACDyD,KAAK,EAAE,IAAI,CAACzC,KAAK,CAAC0C,MAAO;MACzBgB,QAAQ,EAAE,IAAI,CAAC1D,KAAK,CAAC0D;IAAS,GAE7B,IAAI,CAAC1D,KAAK,CAAC4D,QACV,CAAC;EACf;AACJ","ignoreList":[]}
|
package/core/utils.js
CHANGED
@@ -16,7 +16,10 @@ const TIME_ROLLUP_OPTIONS = {
|
|
16
16
|
MONTH: 'month',
|
17
17
|
YEAR: 'year'
|
18
18
|
};
|
19
|
-
const AppLayoutPosition = {
|
19
|
+
const AppLayoutPosition = {
|
20
|
+
currentPage: 'Main',
|
21
|
+
data: {}
|
22
|
+
};
|
20
23
|
const _deepCopy = (o1, ...o2) => {
|
21
24
|
o2.forEach(o => {
|
22
25
|
if (o) {
|
@@ -334,7 +337,7 @@ export function removeUndefinedKeys(obj) {
|
|
334
337
|
return obj;
|
335
338
|
}
|
336
339
|
// * get total number of days in a month of a year
|
337
|
-
function getDaysInMonth(month, year) {
|
340
|
+
export function getDaysInMonth(month, year) {
|
338
341
|
return new Date(year, month, 0).getDate();
|
339
342
|
}
|
340
343
|
export const getDates = (startDate, endDate, month = 0,
|
@@ -344,13 +347,13 @@ year = new Date().getFullYear()) => {
|
|
344
347
|
const dates = Array.from({
|
345
348
|
length: daysInMonth
|
346
349
|
}, (v, i) => i + 1);
|
347
|
-
const datesInRange = dates.filter(date => date >= startDate);
|
350
|
+
const datesInRange = dates.filter(date => date >= startDate && date <= endDate);
|
348
351
|
return datesInRange;
|
349
352
|
};
|
350
353
|
export const monthNames = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
|
351
354
|
export const getMonths = (startMonth, endMonth) => {
|
352
355
|
const months = monthNames.map(name => name.substring(0, 3));
|
353
|
-
const monthRange = months.filter((_, index) => index >= startMonth);
|
356
|
+
const monthRange = months.filter((_, index) => index >= startMonth && index <= endMonth);
|
354
357
|
return monthRange;
|
355
358
|
};
|
356
359
|
export const getMonthIndex = (monthName, shortName = true) => {
|
@@ -529,15 +532,14 @@ export function getNumberOfEmptyObjects(noOfItems) {
|
|
529
532
|
}
|
530
533
|
export const setPosition = data => {
|
531
534
|
Object.keys(data).forEach(key => {
|
532
|
-
AppLayoutPosition[key] = data[key];
|
533
|
-
});
|
534
|
-
};
|
535
|
-
export const resetLayoutPositions = () => {
|
536
|
-
Object.keys(AppLayoutPosition).forEach(key => {
|
537
|
-
delete AppLayoutPosition[key];
|
535
|
+
AppLayoutPosition.data[AppLayoutPosition.currentPage][key] = data[key];
|
538
536
|
});
|
539
537
|
};
|
540
538
|
export const getPosition = key => {
|
541
|
-
return AppLayoutPosition[key];
|
539
|
+
return AppLayoutPosition.data[AppLayoutPosition.currentPage][key];
|
540
|
+
};
|
541
|
+
export const setCurrentPageInAppLayout = pageName => {
|
542
|
+
AppLayoutPosition.currentPage = pageName;
|
543
|
+
AppLayoutPosition.data[pageName] = {};
|
542
544
|
};
|
543
545
|
//# sourceMappingURL=utils.js.map
|