@wavemaker-ai/app-rn-runtime 1.0.0-rc.314 → 1.0.0-rc.319

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"names":["assign","isUndefined","isNil","isObject","isArray","isString","isEqual","React","AccessibilityInfo","Dimensions","InteractionManager","Platform","StyleSheet","View","Animatable","ThemeVariables","CalcExpression","StyleProps","getStyleName","BackgroundComponent","injector","ROOT_LOGGER","deepCopy","getPosition","setPosition","BASE_THEME","ThemeConsumer","ThemeEvent","EventNotifier","PropsProvider","assignIn","HideMode","AssetConsumer","FixedView","TextIdPrefixConsumer","isScreenReaderEnabled","TappableContext","WmComponentNode","getPositionValueStyle","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","x","y","width","height","px","py","_this$parent$state","isPageContentWidget","isCurrentParentIsContent","parent","showSkeletonInPageContent","state","props","showskeleton","notifier","name","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","vw","vh","reestimateDimensions","forceUpdate","addEventListener","remove","destroyParentListeners","_this$parent","_this$parent2","_this$layout","_this$layout2","d","pw","layout","ph","w","h","dimensions","notify","event","fn","emitToParent","isRTL","i18nService","isRTLLocale","animate","setState","animationId","Date","now","animatableProps","setProp","setPropDefault","setDefault","getDefaultStyles","getStyle","reset","callback","destroyed","newPartialState","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","isSticky","hide","componentWillDetach","componentWillUnmount","_this$parent3","onComponentDestroy","f","destroy","componentDidUpdate","prevProps","prevState","snapshot","invokeEventCallback","eventName","callBack","appConfig","map","a","apply","e","_appConfig$preference","console","error","preferences","enableGlobalErrorHandler","showView","isVisible","refresh","renderSkeleton","parentListenerDestroyers","setParent","add","hasStyleCalcExpression","getName","handleLayout","ref","_this$getName","call","newLayoutPosition","nativeEvent","componentRef","baseView","measure","updateLayout","runAfterInteractions","requestAnimationFrame","_event$nativeEvent","copyStyles","property","from","to","renderFixedContainer","style","root","hasFixedWidth","hasFixedHeight","mergeStyle","left","top","right","bottom","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","getLayout","scrollToTop","scrollToEnd","scrollToPosition","widgetName","_this$getLayoutOfWidg","positionY","evaluateCalcStyles","result","i","startsWith","p","evaluate","getDependenciesFromContext","Consumer","tappable","closestTappable","loadAsset","_this$parent4","_showSkeleton","hideSkeletonInPageContentWhenDisabledInPage","Provider","render","selectedLocale","getSelectedLocale","info","hideMode","DONOT_ADD_TO_DOM","calcStyles","disabled","showindevice","join","childComponentStyleKeys","length","customStyles","hasOwnProperty","eleToRender","positionStyle","positionvalue"],"sources":["base.component.tsx"],"sourcesContent":["import { assign, isUndefined, isNil, isObject, isArray, isString, isEqual } from 'lodash';\nimport React, { ReactNode } from 'react';\nimport { AccessibilityInfo, Dimensions, InteractionManager, LayoutChangeEvent, LayoutRectangle, 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-ai/app-rn-runtime/styles/theme.variables';\nimport { CalcExpression } from '@wavemaker-ai/app-rn-runtime/styles/calc';\nimport { StyleProps, getStyleName } from '@wavemaker-ai/app-rn-runtime/styles/style-props';\nimport { BackgroundComponent } from '@wavemaker-ai/app-rn-runtime/styles/background.component';\nimport injector from '@wavemaker-ai/app-rn-runtime/core/injector';\nimport { ROOT_LOGGER } from '@wavemaker-ai/app-rn-runtime/core/logger';\nimport { deepCopy, getPosition, setPosition } from '@wavemaker-ai/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';\nimport AppConfig from './AppConfig';\nimport { getPositionValueStyle } from './auto-layout.utils';\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\ninterface Layout {\n x: number;\n y: number;\n width: number;\n height: number;\n px: number;\n py: number;\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 isdefault?: boolean = false;\n}\n\nexport abstract class BaseComponent<T extends BaseProps, S extends BaseComponentState<T>, L extends BaseStyles> extends React.Component<T, S> {\n private calcStyles: L = null as any;\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 public isSticky = false;\n public 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 public layout: Layout = {\n x: 0, y:0, width:0, height:0, px:0, py:0\n };\n public baseView: any = View;\n private vw = Dimensions.get('window').width;\n private vh = Dimensions.get('window').height;\n private hasStyleCalcExpression = false;\n private dimensions: {\n vw?: number,\n vh?: number,\n pw?: number,\n ph?: number,\n w?: number,\n h?: number\n } = {} as any;\n protected childComponentStyleKeys: string[] = [];\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.vw = Dimensions.get('window').width;\n this.vh = Dimensions.get('window').height;\n if (this.reestimateDimensions) {\n this.reestimateDimensions();\n }\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 reestimateDimensions() {\n const d = {\n vw: this.vw,\n vh: this.vh,\n pw: this.parent?.layout?.width,\n ph: this.parent?.layout?.height,\n w: this.layout?.width,\n h: this.layout?.height\n }\n if (!isEqual(this.dimensions, d)) {\n this.dimensions = d;\n this.notify('layoutChange', []);\n return true;\n }\n return false;\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 forceUpdate(callback?: () => void) {\n if (!this.initialized || this.destroyed) {\n return;\n }\n super.forceUpdate(callback);\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 || this.isSticky) {\n this.setState({hide: false});\n }\n }\n\n componentWillDetach() {\n if (this.isFixed || this.isSticky) {\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 const appConfig = injector.get<AppConfig>('APP_CONFIG');\n\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 if(appConfig?.preferences?.enableGlobalErrorHandler === true){\n throw e; // Re-throwing error to let ErrorBoundary or Global Handler catch it\n }\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.destroyParentListeners();\n this.parentListenerDestroyers = [\n this.parent.subscribe('forceUpdate', () => {\n this.forceUpdate();\n }),\n this.parent.subscribe('layoutChange', () => {\n if (this.reestimateDimensions && this.reestimateDimensions() && this.hasStyleCalcExpression) {\n this.forceUpdate();\n }\n return false;\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, ref: React.RefObject<View> | null = null) {\n const key = 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 const componentRef = ref !== null ? ref : this.baseView\n // Layout values by measure\n if(componentRef?.measure){\n const updateLayout = ()=>{\n componentRef.measure((x = 0, y = 0, width = 0, height = 0, px = 0, py = 0) => {\n this.layout = { x, y, width, height, px, py }\n if (this.reestimateDimensions && this.reestimateDimensions() && this.hasStyleCalcExpression) {\n this.forceUpdate();\n }\n });\n }\n updateLayout();\n InteractionManager.runAfterInteractions(() => {\n requestAnimationFrame(updateLayout);\n })\n }\n } else {\n this.layout = event.nativeEvent?.layout as any;\n if (this.reestimateDimensions && this.reestimateDimensions() && this.hasStyleCalcExpression) {\n this.forceUpdate();\n }\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 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 if ((style.width as any) === 'fill') {\n style.width = '100%';\n } else if ((style.width as any) === 'hug') {\n style.width = undefined;\n }\n if ((style.height as any) === 'fill') {\n style.height = '100%';\n } else if ((style.height as any) === 'hug') {\n style.height = undefined;\n }\n const hasFixedWidth = !isUndefined(style.width);\n const hasFixedHeight = !isUndefined(style.height);\n this.styles = this.theme.mergeStyle(this.styles, {\n root: {\n left: undefined,\n top: undefined,\n right: undefined,\n bottom: undefined,\n width: hasFixedWidth ? \"100%\" : undefined,\n height: hasFixedHeight ? \"100%\" : undefined\n } as ViewStyle\n });\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 getLayout() {\n return this.layout ;\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\n public hideSkeletonInPageContentWhenDisabledInPage = () => {\n const isPageContentWidget = this.defaultClass && this.defaultClass === 'app-page-content'\n const isCurrentParentIsContent = this.parent && this.parent.defaultClass && this.parent.defaultClass === 'app-content'\n const showSkeletonInPageContent = this.parent && this.parent.state?.props?.showskeleton === false\n\n if(isPageContentWidget && isCurrentParentIsContent && showSkeletonInPageContent) {\n return false;\n }\n return undefined;\n }\n\n private evaluateCalcStyles(styles: any) {\n const result = {} as any;\n Object.keys(styles).forEach(k => {\n const value = styles[k];\n if (isArray(value)) {\n result[k] = value.map((v, i) => {\n return this.evaluateCalcStyles(v);\n });\n } else if (isObject(value)) {\n result[k] = this.evaluateCalcStyles(value);\n } else if (isString(value) && value.startsWith('calc(')) {\n result[k] = new CalcExpression(value, {\n vw: this.dimensions.vw || 0,\n vh: this.dimensions.vh || 0,\n p: (k === 'height' ? this.dimensions.ph : this.dimensions.pw) || 0,\n }).evaluate();\n } else {\n result[k] = value;\n }\n });\n return result;\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) && this.hideSkeletonInPageContentWhenDisabledInPage() === undefined\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 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 this.isFixed = false;\n const classname = this.getStyleClassName();\n this.calcStyles = 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 classname && props.disabled ? this.theme.getStyle(`${classname}.${this.defaultClass}-disabled`) : null,\n this.isRTL && classname ? this.theme.getStyle(classname + '-rtl') : null,\n props.showindevice && this.theme.getStyle('d-all-none ' + props.showindevice.map(d => `d-${d}-flex`).join(' ')),\n this.props.styles,\n {\n root: this.styleOverrides,\n text: this.styleOverrides\n }\n );\n // Merge child component styles from custom classes\n if (classname && this.childComponentStyleKeys.length > 0) {\n const customStyles = this.theme.getStyle(classname);\n this.childComponentStyleKeys.forEach(key => {\n if (customStyles && this.calcStyles && (this.calcStyles as any)[key]) {\n (this.calcStyles as any)[key] = this.theme.mergeStyle((this.calcStyles as any)[key], customStyles);\n }\n });\n }\n\n this.hasStyleCalcExpression = false;\n\n this.styles = this.evaluateCalcStyles(this.calcStyles);\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' || (props.position as any) === 'fixed';\n const positionStyle = getPositionValueStyle(props.positionvalue);\n if (this.isFixed) {\n this.styles.root.position = undefined;\n this.styles.root.top = positionStyle.top;\n this.styles.root.right = positionStyle.right;\n this.styles.root.bottom = positionStyle.bottom;\n this.styles.root.left = positionStyle.left;\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","isObject","isArray","isString","isEqual","React","AccessibilityInfo","Dimensions","InteractionManager","Platform","StyleSheet","View","Animatable","ThemeVariables","CalcExpression","StyleProps","getStyleName","BackgroundComponent","injector","ROOT_LOGGER","deepCopy","getPosition","setPosition","BASE_THEME","ThemeConsumer","ThemeEvent","EventNotifier","PropsProvider","assignIn","HideMode","AssetConsumer","FixedView","TextIdPrefixConsumer","isScreenReaderEnabled","TappableContext","WmComponentNode","getPositionValueStyle","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","x","y","width","height","px","py","_this$parent$state","isPageContentWidget","isCurrentParentIsContent","parent","showSkeletonInPageContent","state","props","showskeleton","notifier","name","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","vw","vh","reestimateDimensions","forceUpdate","addEventListener","remove","destroyParentListeners","_this$parent","_this$parent2","_this$layout","_this$layout2","d","pw","layout","ph","w","h","dimensions","notify","event","fn","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","isSticky","hide","componentWillDetach","componentWillUnmount","_this$parent3","onComponentDestroy","f","destroy","componentDidUpdate","prevProps","prevState","snapshot","invokeEventCallback","eventName","callBack","appConfig","map","a","apply","e","_appConfig$preference","console","error","preferences","enableGlobalErrorHandler","showView","isVisible","refresh","renderSkeleton","parentListenerDestroyers","setParent","add","hasStyleCalcExpression","getName","handleLayout","ref","_this$getName","call","newLayoutPosition","nativeEvent","componentRef","baseView","measure","updateLayout","runAfterInteractions","requestAnimationFrame","_event$nativeEvent","copyStyles","property","from","to","renderFixedContainer","style","root","hasFixedWidth","hasFixedHeight","mergeStyle","left","top","right","bottom","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","getLayout","scrollToTop","scrollToEnd","scrollToPosition","widgetName","_this$getLayoutOfWidg","positionY","evaluateCalcStyles","result","i","startsWith","p","evaluate","getDependenciesFromContext","Consumer","tappable","closestTappable","loadAsset","_this$parent4","_showSkeleton","hideSkeletonInPageContentWhenDisabledInPage","Provider","render","selectedLocale","getSelectedLocale","info","hideMode","DONOT_ADD_TO_DOM","calcStyles","disabled","showindevice","join","childComponentStyleKeys","length","customStyles","hasOwnProperty","eleToRender","positionStyle","positionvalue"],"sources":["base.component.tsx"],"sourcesContent":["import { assign, isUndefined, isNil, isObject, isArray, isString, isEqual } from 'lodash';\nimport React, { ReactNode } from 'react';\nimport { AccessibilityInfo, Dimensions, InteractionManager, LayoutChangeEvent, LayoutRectangle, 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-ai/app-rn-runtime/styles/theme.variables';\nimport { CalcExpression } from '@wavemaker-ai/app-rn-runtime/styles/calc';\nimport { StyleProps, getStyleName } from '@wavemaker-ai/app-rn-runtime/styles/style-props';\nimport { BackgroundComponent } from '@wavemaker-ai/app-rn-runtime/styles/background.component';\nimport injector from '@wavemaker-ai/app-rn-runtime/core/injector';\nimport { ROOT_LOGGER } from '@wavemaker-ai/app-rn-runtime/core/logger';\nimport { deepCopy, getPosition, setPosition } from '@wavemaker-ai/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';\nimport AppConfig from './AppConfig';\nimport { getPositionValueStyle } from './auto-layout.utils';\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\ninterface Layout {\n x: number;\n y: number;\n width: number;\n height: number;\n px: number;\n py: number;\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 isdefault?: boolean = false;\n}\n\nexport abstract class BaseComponent<T extends BaseProps, S extends BaseComponentState<T>, L extends BaseStyles> extends React.Component<T, S> {\n private calcStyles: L = null as any;\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 public isSticky = false;\n public 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 public layout: Layout = {\n x: 0, y:0, width:0, height:0, px:0, py:0\n };\n public baseView: any = View;\n private vw = Dimensions.get('window').width;\n private vh = Dimensions.get('window').height;\n private hasStyleCalcExpression = false;\n private dimensions: {\n vw?: number,\n vh?: number,\n pw?: number,\n ph?: number,\n w?: number,\n h?: number\n } = {} as any;\n protected childComponentStyleKeys: string[] = [];\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.vw = Dimensions.get('window').width;\n this.vh = Dimensions.get('window').height;\n if (this.reestimateDimensions) {\n this.reestimateDimensions();\n }\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 reestimateDimensions() {\n const d = {\n vw: this.vw,\n vh: this.vh,\n pw: this.parent?.layout?.width,\n ph: this.parent?.layout?.height,\n w: this.layout?.width,\n h: this.layout?.height\n }\n if (!isEqual(this.dimensions, d)) {\n this.dimensions = d;\n this.notify('layoutChange', []);\n return true;\n }\n return false;\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 || this.isSticky) {\n this.setState({hide: false});\n }\n }\n\n componentWillDetach() {\n if (this.isFixed || this.isSticky) {\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 const appConfig = injector.get<AppConfig>('APP_CONFIG');\n\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 if(appConfig?.preferences?.enableGlobalErrorHandler === true){\n throw e; // Re-throwing error to let ErrorBoundary or Global Handler catch it\n }\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.destroyParentListeners();\n this.parentListenerDestroyers = [\n this.parent.subscribe('forceUpdate', () => {\n this.forceUpdate();\n }),\n this.parent.subscribe('layoutChange', () => {\n if (this.reestimateDimensions && this.reestimateDimensions() && this.hasStyleCalcExpression) {\n this.forceUpdate();\n }\n return false;\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, ref: React.RefObject<View> | null = null) {\n const key = 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 const componentRef = ref !== null ? ref : this.baseView\n // Layout values by measure\n if(componentRef?.measure){\n const updateLayout = ()=>{\n componentRef.measure((x = 0, y = 0, width = 0, height = 0, px = 0, py = 0) => {\n this.layout = { x, y, width, height, px, py }\n if (this.reestimateDimensions && this.reestimateDimensions() && this.hasStyleCalcExpression) {\n this.forceUpdate();\n }\n });\n }\n updateLayout();\n InteractionManager.runAfterInteractions(() => {\n requestAnimationFrame(updateLayout);\n })\n }\n } else {\n this.layout = event.nativeEvent?.layout as any;\n if (this.reestimateDimensions && this.reestimateDimensions() && this.hasStyleCalcExpression) {\n this.forceUpdate();\n }\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 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 if ((style.width as any) === 'fill') {\n style.width = '100%';\n } else if ((style.width as any) === 'hug') {\n style.width = undefined;\n }\n if ((style.height as any) === 'fill') {\n style.height = '100%';\n } else if ((style.height as any) === 'hug') {\n style.height = undefined;\n }\n const hasFixedWidth = !isUndefined(style.width);\n const hasFixedHeight = !isUndefined(style.height);\n this.styles = this.theme.mergeStyle(this.styles, {\n root: {\n left: undefined,\n top: undefined,\n right: undefined,\n bottom: undefined,\n width: hasFixedWidth ? \"100%\" : undefined,\n height: hasFixedHeight ? \"100%\" : undefined\n } as ViewStyle\n });\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 getLayout() {\n return this.layout ;\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\n public hideSkeletonInPageContentWhenDisabledInPage = () => {\n const isPageContentWidget = this.defaultClass && this.defaultClass === 'app-page-content'\n const isCurrentParentIsContent = this.parent && this.parent.defaultClass && this.parent.defaultClass === 'app-content'\n const showSkeletonInPageContent = this.parent && this.parent.state?.props?.showskeleton === false\n\n if(isPageContentWidget && isCurrentParentIsContent && showSkeletonInPageContent) {\n return false;\n }\n return undefined;\n }\n\n private evaluateCalcStyles(styles: any) {\n const result = {} as any;\n Object.keys(styles).forEach(k => {\n const value = styles[k];\n if (isArray(value)) {\n result[k] = value.map((v, i) => {\n return this.evaluateCalcStyles(v);\n });\n } else if (isObject(value)) {\n result[k] = this.evaluateCalcStyles(value);\n } else if (isString(value) && value.startsWith('calc(')) {\n result[k] = new CalcExpression(value, {\n vw: this.dimensions.vw || 0,\n vh: this.dimensions.vh || 0,\n p: (k === 'height' ? this.dimensions.ph : this.dimensions.pw) || 0,\n }).evaluate();\n } else {\n result[k] = value;\n }\n });\n return result;\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) && this.hideSkeletonInPageContentWhenDisabledInPage() === undefined\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 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 this.isFixed = false;\n const classname = this.getStyleClassName();\n this.calcStyles = 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 classname && props.disabled ? this.theme.getStyle(`${classname}.${this.defaultClass}-disabled`) : null,\n this.isRTL && classname ? this.theme.getStyle(classname + '-rtl') : null,\n props.showindevice && this.theme.getStyle('d-all-none ' + props.showindevice.map(d => `d-${d}-flex`).join(' ')),\n this.props.styles,\n {\n root: this.styleOverrides,\n text: this.styleOverrides\n }\n );\n // Merge child component styles from custom classes\n if (classname && this.childComponentStyleKeys.length > 0) {\n const customStyles = this.theme.getStyle(classname);\n this.childComponentStyleKeys.forEach(key => {\n if (customStyles && this.calcStyles && (this.calcStyles as any)[key]) {\n (this.calcStyles as any)[key] = this.theme.mergeStyle((this.calcStyles as any)[key], customStyles);\n }\n });\n }\n\n this.hasStyleCalcExpression = false;\n\n this.styles = this.evaluateCalcStyles(this.calcStyles);\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' || (props.position as any) === 'fixed';\n const positionStyle = getPositionValueStyle(props.positionvalue);\n if (this.isFixed) {\n this.styles.root.position = undefined;\n this.styles.root.top = positionStyle.top;\n this.styles.root.right = positionStyle.right;\n this.styles.root.bottom = positionStyle.bottom;\n this.styles.root.left = positionStyle.left;\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":[]}
@@ -64,23 +64,16 @@ export class FixedViewContainer extends React.Component {
64
64
  super(...args);
65
65
  _defineProperty(this, "children", new Map());
66
66
  _defineProperty(this, "id", 0);
67
- _defineProperty(this, "isMounted", false);
68
- }
69
- componentDidMount() {
70
- this.isMounted = true;
71
- }
72
- componentWillUnmount() {
73
- this.isMounted = false;
74
67
  }
75
68
  add(c, n) {
76
69
  this.children.set(c, n);
77
- setTimeout(() => this.isMounted && this.setState({
70
+ setTimeout(() => this.setState({
78
71
  id: ++this.id
79
72
  }));
80
73
  }
81
74
  remove(c) {
82
75
  this.children.delete(c);
83
- setTimeout(() => this.isMounted && this.setState({
76
+ setTimeout(() => this.setState({
84
77
  id: ++this.id
85
78
  }));
86
79
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Animated","Keyboard","TextInput","findNodeHandle","ThemeProvider","FixedViewContext","createContext","FixedView","Component","constructor","props","_defineProperty","counter","event","_event$nativeEvent","textInputState","State","focusedInput","currentlyFocusedInput","focusedHandle","nativeEvent","target","dismiss","componentWillUnmount","container","remove","render","WrapperView","animated","cachedComponent","usememo","createElement","Consumer","show","add","value","theme","key","id","style","position","testID","name","onStartShouldSetResponderCapture","handleStartShouldSetResponderCapture","children","Fragment","Date","now","FixedViewContainer","args","Map","componentDidMount","isMounted","c","n","set","setTimeout","setState","delete","Provider","Array","from","values"],"sources":["fixed-view.component.tsx"],"sourcesContent":["\nimport React from \"react\";\nimport { View, ViewStyle, Animated, Keyboard, TextInput, findNodeHandle, GestureResponderEvent } from \"react-native\";\nimport { Theme, ThemeProvider } from \"../styles/theme\";\n\nconst FixedViewContext = React.createContext<FixedViewContainer>(null as any);\n\nexport interface FixedViewProps {\n name?: string;\n style?: ViewStyle,\n show?: boolean;\n theme: Theme;\n usememo?: boolean;\n children?: any;\n animated?: boolean;\n}\n\nexport class FixedView extends React.Component<FixedViewProps> {\n static defaultProps = {\n show: true, \n animated: false\n };\n static counter = Date.now();\n container: FixedViewContainer = null as any;\n cachedComponent: React.ReactNode;\n id = FixedView.counter++;\n\n constructor(props: FixedViewProps) {\n super(props);\n }\n\n /**\n * \n * Capture the touch before it reaches child Touchables\n */\n handleStartShouldSetResponderCapture = (event: GestureResponderEvent) => {\n const textInputState = TextInput.State as any;\n const focusedInput = textInputState?.currentlyFocusedInput ? textInputState.currentlyFocusedInput() : null;\n const focusedHandle = focusedInput\n ? findNodeHandle(focusedInput)\n : textInputState?.currentlyFocusedInput\n ? textInputState.currentlyFocusedInput()\n : null;\n\n if (focusedHandle && event?.nativeEvent?.target === focusedHandle) {\n // Should not dismiss keyboard if the user presses on the same text input that is already focused\n return false;\n }\n\n Keyboard.dismiss();\n return false; // let the touch reach the child Touchables\n };\n\n componentWillUnmount() {\n this.container.remove(this);\n }\n\n render() {\n const WrapperView = this.props.animated ? Animated.View : View\n this.cachedComponent = (this.props.usememo === true && this.cachedComponent ) || (<FixedViewContext.Consumer>\n {(container) => {\n this.container = container;\n if (this.props.show) {\n container.add(this, (\n <ThemeProvider value={this.props.theme} key={this.id}>\n <WrapperView style={[\n {position: 'absolute'},\n this.props.style]}\n testID={`${this.props.name}-fixed-view`}\n onStartShouldSetResponderCapture={this.handleStartShouldSetResponderCapture}\n >\n {this.props.children}\n </WrapperView>\n </ThemeProvider>\n ));\n } else {\n container.remove(this);\n }\n return <></>;\n }}\n </FixedViewContext.Consumer>);\n return this.cachedComponent;\n }\n}\n\nexport class FixedViewContainer extends React.Component {\n children: Map<FixedView, React.ReactNode> = new Map();\n id = 0;\n isMounted: boolean = false;\n\n componentDidMount() {\n this.isMounted = true;\n }\n\n componentWillUnmount() {\n this.isMounted = false;\n }\n\n\n add(c: FixedView, n : React.ReactNode) {\n this.children.set(c, n);\n setTimeout(() => this.isMounted && this.setState({id: ++this.id}));\n }\n\n remove(c: FixedView) {\n this.children.delete(c);\n setTimeout(() => this.isMounted && this.setState({id: ++this.id}));\n }\n\n render() {\n return (\n <FixedViewContext.Provider value={this}>\n {(this.props as any).children}\n {Array.from(this.children.values())}\n </FixedViewContext.Provider>\n ) ;\n }\n};"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","View","Animated","Keyboard","TextInput","findNodeHandle","ThemeProvider","FixedViewContext","createContext","FixedView","Component","constructor","props","_defineProperty","counter","event","_event$nativeEvent","textInputState","State","focusedInput","currentlyFocusedInput","focusedHandle","nativeEvent","target","dismiss","componentWillUnmount","container","remove","render","WrapperView","animated","cachedComponent","usememo","createElement","Consumer","show","add","value","theme","key","id","style","position","testID","name","onStartShouldSetResponderCapture","handleStartShouldSetResponderCapture","children","Fragment","Date","now","FixedViewContainer","args","Map","c","n","set","setTimeout","setState","delete","Provider","Array","from","values"],"sources":["fixed-view.component.tsx"],"sourcesContent":["\nimport React from \"react\";\nimport { View, ViewStyle, Animated, Keyboard, TextInput, findNodeHandle, GestureResponderEvent } from \"react-native\";\nimport { Theme, ThemeProvider } from \"../styles/theme\";\n\nconst FixedViewContext = React.createContext<FixedViewContainer>(null as any);\n\nexport interface FixedViewProps {\n name?: string;\n style?: ViewStyle,\n show?: boolean;\n theme: Theme;\n usememo?: boolean;\n children?: any;\n animated?: boolean;\n}\n\nexport class FixedView extends React.Component<FixedViewProps> {\n static defaultProps = {\n show: true, \n animated: false\n };\n static counter = Date.now();\n container: FixedViewContainer = null as any;\n cachedComponent: React.ReactNode;\n id = FixedView.counter++;\n\n constructor(props: FixedViewProps) {\n super(props);\n }\n\n /**\n * \n * Capture the touch before it reaches child Touchables\n */\n handleStartShouldSetResponderCapture = (event: GestureResponderEvent) => {\n const textInputState = TextInput.State as any;\n const focusedInput = textInputState?.currentlyFocusedInput ? textInputState.currentlyFocusedInput() : null;\n const focusedHandle = focusedInput\n ? findNodeHandle(focusedInput)\n : textInputState?.currentlyFocusedInput\n ? textInputState.currentlyFocusedInput()\n : null;\n\n if (focusedHandle && event?.nativeEvent?.target === focusedHandle) {\n // Should not dismiss keyboard if the user presses on the same text input that is already focused\n return false;\n }\n\n Keyboard.dismiss();\n return false; // let the touch reach the child Touchables\n };\n\n componentWillUnmount() {\n this.container.remove(this);\n }\n\n render() {\n const WrapperView = this.props.animated ? Animated.View : View\n this.cachedComponent = (this.props.usememo === true && this.cachedComponent ) || (<FixedViewContext.Consumer>\n {(container) => {\n this.container = container;\n if (this.props.show) {\n container.add(this, (\n <ThemeProvider value={this.props.theme} key={this.id}>\n <WrapperView style={[\n {position: 'absolute'},\n this.props.style]}\n testID={`${this.props.name}-fixed-view`}\n onStartShouldSetResponderCapture={this.handleStartShouldSetResponderCapture}\n >\n {this.props.children}\n </WrapperView>\n </ThemeProvider>\n ));\n } else {\n container.remove(this);\n }\n return <></>;\n }}\n </FixedViewContext.Consumer>);\n return this.cachedComponent;\n }\n}\n\nexport class FixedViewContainer extends React.Component {\n children: Map<FixedView, React.ReactNode> = new Map();\n id = 0;\n\n add(c: FixedView, n : React.ReactNode) {\n this.children.set(c, n);\n setTimeout(() => this.setState({id: ++this.id}));\n }\n\n remove(c: FixedView) {\n this.children.delete(c);\n setTimeout(() => this.setState({id: ++this.id}));\n }\n\n render() {\n return (\n <FixedViewContext.Provider value={this}>\n {(this.props as any).children}\n {Array.from(this.children.values())}\n </FixedViewContext.Provider>\n ) ;\n }\n};"],"mappings":"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","ignoreList":[]}