@wavemaker/app-rn-runtime 11.8.5-patch.7 → 11.8.5-patch.8
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 +1 -0
- package/components/advanced/carousel/carousel.component.js.map +1 -1
- package/components/basic/lottie/lottie.component.js +3 -1
- package/components/basic/lottie/lottie.component.js.map +1 -1
- package/components/container/accordion/accordionpane/accordionpane.component.js +3 -1
- package/components/container/accordion/accordionpane/accordionpane.component.js.map +1 -1
- package/components/container/tabs/tabpane/tabpane.props.js +1 -0
- package/components/container/tabs/tabpane/tabpane.props.js.map +1 -1
- package/components/input/baseinput/baseinput.component.js +10 -3
- package/components/input/baseinput/baseinput.component.js.map +1 -1
- package/components/input/basenumber/basenumber.component.js +11 -3
- package/components/input/basenumber/basenumber.component.js.map +1 -1
- package/components/input/checkbox/checkbox.component.js +2 -2
- package/components/input/checkbox/checkbox.component.js.map +1 -1
- package/components/input/checkbox/checkbox.styles.js +3 -1
- package/components/input/checkbox/checkbox.styles.js.map +1 -1
- package/components/input/currency/currency.component.js +3 -1
- package/components/input/currency/currency.component.js.map +1 -1
- package/components/input/currency/currency.styles.js +3 -0
- package/components/input/currency/currency.styles.js.map +1 -1
- package/components/input/epoch/base-datetime.component.js +4 -2
- package/components/input/epoch/base-datetime.component.js.map +1 -1
- package/components/input/number/number.component.js +3 -1
- package/components/input/number/number.component.js.map +1 -1
- package/components/input/number/number.styles.js +3 -0
- package/components/input/number/number.styles.js.map +1 -1
- package/components/input/text/text.component.js +5 -2
- package/components/input/text/text.component.js.map +1 -1
- package/components/input/text/text.props.js +1 -0
- package/components/input/text/text.props.js.map +1 -1
- package/components/input/text/text.styles.js +3 -0
- package/components/input/text/text.styles.js.map +1 -1
- package/components/input/textarea/textarea.component.js +3 -1
- package/components/input/textarea/textarea.component.js.map +1 -1
- package/components/input/textarea/textarea.styles.js +3 -0
- package/components/input/textarea/textarea.styles.js.map +1 -1
- package/components/page/left-panel/left-panel.component.js +4 -1
- package/components/page/left-panel/left-panel.component.js.map +1 -1
- package/core/AppConfig.js.map +1 -1
- package/core/base.component.js +1 -0
- package/core/base.component.js.map +1 -1
- package/core/components/textinput.component.js +9 -7
- package/core/components/textinput.component.js.map +1 -1
- package/core/props.provider.js +0 -1
- package/core/props.provider.js.map +1 -1
- package/core/tappable.component.js +10 -4
- package/core/tappable.component.js.map +1 -1
- package/package.json +2 -2
- package/runtime/App.navigator.js +1 -0
- package/runtime/App.navigator.js.map +1 -1
- package/runtime/base-fragment.component.js +16 -0
- package/runtime/base-fragment.component.js.map +1 -1
- package/runtime/navigator/drawer.navigator.js +19 -10
- package/runtime/navigator/drawer.navigator.js.map +1 -1
- package/runtime/services/app-security.service.js +9 -4
- package/runtime/services/app-security.service.js.map +1 -1
- package/styles/theme.variables.js +1 -1
- package/styles/theme.variables.js.map +1 -1
- package/variables/live-variable.js +14 -0
- package/variables/live-variable.js.map +1 -1
@@ -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","isInputFocused","setIsInputFocused","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","floatingLabel","moveUp","label","placeholder","floatingLabelStyle","activeFloatingLabelStyle","_extends","borderColor","zIndex","onFocus","_props$onFocus","call","target","onBlur","_props$onBlur","caretHidden","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 }), \n ref: ForwardedRef<TextInput>) => {\n const [selectRange, setSelectRange] = useState<SelectRange>(null as any);\n const [isInputFocused, setIsInputFocused] = useState(false);\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.floatingLabel ? (\n <FloatingLabel\n moveUp={!!(value.current || isInputFocused || displayValue)}\n label={props.floatingLabel ?? props.placeholder} \n style={{\n ...(props.floatingLabelStyle || []),\n ...(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 setIsInputFocused(true);\n setDisplayCursor(true);\n element.current = e.target;\n }}\n onBlur={(e) => {\n props?.onBlur?.(e);\n setIsInputFocused(false);\n setDisplayCursor(false);\n }}\n ref={ref}\n selection={selectRange}\n onSelectionChange={onSelectionChange}\n caretHidden={!!selectRange?.end}\n onChangeText={(text) => {\n onChangeText(text);\n }}\n {...hideInput ? {\n selectionColor: 'transparent',\n cursorColor: 'transparent',\n onChange : () => {}\n }: {}}\n contextMenuHidden={!props.allowContentSelection}\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","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":[]}
|
package/core/props.provider.js
CHANGED
@@ -71,7 +71,6 @@ export class PropsProvider {
|
|
71
71
|
|
72
72
|
// sets the property. But, value gets overriden when the original prop changes.
|
73
73
|
set(name, value) {
|
74
|
-
this.oldProps[name] = value;
|
75
74
|
const oldValue = this.oldProps[name];
|
76
75
|
if (oldValue !== value) {
|
77
76
|
this.oldProps[name] = value;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["assign","isNil","PropsProvider","constructor","defaultProps","initprops","onChange","name","$new","$old","_defineProperty","Object","keys","forEach","k","propertyNames","propsProxy","Proxy","get","target","prop","receiver","propName","toString","value","overriddenProps","hasOwnProperty","oldProps","set","has","isDirty","oldValue","setDefault","overrideProp","check","nextProps","result","reduce","b","flag"],"sources":["props.provider.ts"],"sourcesContent":["import { assign, isNil } from \"lodash-es\";\nimport { BaseProps } from \"./base.component\";\n\nexport class PropsProvider<T extends BaseProps> {\n private oldProps: any = {};\n private overriddenProps: any = {};\n private propsProxy: T;\n private isDirty = false;\n private propertyNames = {} as any;\n\n constructor(private defaultProps: T, private initprops: T, private onChange = (name: string, $new: any, $old: any) => {}) {\n this.initprops = this.initprops || {};\n Object.keys(defaultProps).forEach(k => this.propertyNames[k] = true);\n Object.keys(initprops).forEach(k => this.propertyNames[k] = true);\n //@ts-ignore\n this.propsProxy = (new Proxy({}, {\n get: (target, prop, receiver): any => {\n const propName = prop.toString();\n let value = (this.defaultProps as any)[propName];\n if (this.overriddenProps.hasOwnProperty(propName)) {\n value = this.overriddenProps[propName];\n } else if (this.oldProps.hasOwnProperty(propName)) {\n value = this.oldProps[propName];\n }\n return value;\n },\n set: (target: any, prop, value: any): any => {\n const propName = prop.toString();\n if (!this.has(propName)) {\n return true;\n }\n this.isDirty = this.isDirty || this.overriddenProps[propName] !== value;\n this.overriddenProps[propName] = value;\n if (this.oldProps[propName] !== value) {\n const oldValue = this.oldProps[propName];\n this.onChange(propName, value, oldValue);\n this.oldProps[propName] = value;\n }\n return true;\n }\n }));\n }\n\n setDefault(propName: string, value: any) {\n (this.defaultProps as any)[propName] = value;\n }\n overrideProp(propName: string, value: any) {\n (this.overriddenProps as any)[propName] = value;\n this.isDirty = true;\n }\n\n check(nextProps?: T) {\n if (!nextProps) {\n nextProps = assign({}, this.defaultProps, this.initprops);\n }\n const result = Object.keys(nextProps).reduce((b, k) => {\n let flag = false;\n //@ts-ignore\n const value = nextProps[k];\n const oldValue = this.oldProps[k];\n if (isNil(this.overriddenProps[k])\n && (!this.oldProps.hasOwnProperty(k)\n || this.oldProps[k] !== value)) {\n this.oldProps[k] = value;\n this.onChange(k, value, oldValue);\n flag = true;\n }\n return b || flag;\n }, false) || this.isDirty;\n\n this.isDirty = false;\n return result;\n }\n\n // sets the property. But, value gets overriden when the original prop changes.\n set(name: string, value: any) {\n
|
1
|
+
{"version":3,"names":["assign","isNil","PropsProvider","constructor","defaultProps","initprops","onChange","name","$new","$old","_defineProperty","Object","keys","forEach","k","propertyNames","propsProxy","Proxy","get","target","prop","receiver","propName","toString","value","overriddenProps","hasOwnProperty","oldProps","set","has","isDirty","oldValue","setDefault","overrideProp","check","nextProps","result","reduce","b","flag"],"sources":["props.provider.ts"],"sourcesContent":["import { assign, isNil } from \"lodash-es\";\nimport { BaseProps } from \"./base.component\";\n\nexport class PropsProvider<T extends BaseProps> {\n private oldProps: any = {};\n private overriddenProps: any = {};\n private propsProxy: T;\n private isDirty = false;\n private propertyNames = {} as any;\n\n constructor(private defaultProps: T, private initprops: T, private onChange = (name: string, $new: any, $old: any) => {}) {\n this.initprops = this.initprops || {};\n Object.keys(defaultProps).forEach(k => this.propertyNames[k] = true);\n Object.keys(initprops).forEach(k => this.propertyNames[k] = true);\n //@ts-ignore\n this.propsProxy = (new Proxy({}, {\n get: (target, prop, receiver): any => {\n const propName = prop.toString();\n let value = (this.defaultProps as any)[propName];\n if (this.overriddenProps.hasOwnProperty(propName)) {\n value = this.overriddenProps[propName];\n } else if (this.oldProps.hasOwnProperty(propName)) {\n value = this.oldProps[propName];\n }\n return value;\n },\n set: (target: any, prop, value: any): any => {\n const propName = prop.toString();\n if (!this.has(propName)) {\n return true;\n }\n this.isDirty = this.isDirty || this.overriddenProps[propName] !== value;\n this.overriddenProps[propName] = value;\n if (this.oldProps[propName] !== value) {\n const oldValue = this.oldProps[propName];\n this.onChange(propName, value, oldValue);\n this.oldProps[propName] = value;\n }\n return true;\n }\n }));\n }\n\n setDefault(propName: string, value: any) {\n (this.defaultProps as any)[propName] = value;\n }\n overrideProp(propName: string, value: any) {\n (this.overriddenProps as any)[propName] = value;\n this.isDirty = true;\n }\n\n check(nextProps?: T) {\n if (!nextProps) {\n nextProps = assign({}, this.defaultProps, this.initprops);\n }\n const result = Object.keys(nextProps).reduce((b, k) => {\n let flag = false;\n //@ts-ignore\n const value = nextProps[k];\n const oldValue = this.oldProps[k];\n if (isNil(this.overriddenProps[k])\n && (!this.oldProps.hasOwnProperty(k)\n || this.oldProps[k] !== value)) {\n this.oldProps[k] = value;\n this.onChange(k, value, oldValue);\n flag = true;\n }\n return b || flag;\n }, false) || this.isDirty;\n\n this.isDirty = false;\n return result;\n }\n\n // sets the property. But, value gets overriden when the original prop changes.\n set(name: string, value: any) {\n const oldValue = this.oldProps[name];\n if(oldValue !== value) {\n this.oldProps[name] = value;\n this.onChange(name, value, oldValue);\n }\n }\n\n has(propName: string) {\n return !!this.propertyNames[propName];\n }\n\n get() {\n return this.propsProxy;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -9,6 +9,7 @@ import injector from "./injector";
|
|
9
9
|
import { TouchableRipple } from "react-native-paper";
|
10
10
|
export const TappableContext = /*#__PURE__*/React.createContext(null);
|
11
11
|
import { UIPreferencesConsumer } from "./ui-preferences.context";
|
12
|
+
export const ParentTappableContext = /*#__PURE__*/React.createContext(null);
|
12
13
|
export class SyntheticEvent {
|
13
14
|
constructor() {
|
14
15
|
// as the event is being used in onPress, onPressOut and onLongTap the TapEvent is renamed to SyntheticEvent
|
@@ -131,10 +132,15 @@ export class Tappable extends React.Component {
|
|
131
132
|
};
|
132
133
|
if (target !== null && target !== void 0 && target.props.onTap || target !== null && target !== void 0 && target.props.onLongtap || target !== null && target !== void 0 && target.props.onDoubletap || this.props.onTap || this.props.onLongTap || this.props.onDoubleTap) {
|
133
134
|
return /*#__PURE__*/React.createElement(UIPreferencesConsumer, null, preferences => {
|
134
|
-
return preferences.enableRipple != false ? /*#__PURE__*/React.createElement(
|
135
|
-
|
136
|
-
|
137
|
-
|
135
|
+
return preferences.enableRipple != false ? /*#__PURE__*/React.createElement(ParentTappableContext.Consumer, null, parent => {
|
136
|
+
this.setParent(parent);
|
137
|
+
return /*#__PURE__*/React.createElement(ParentTappableContext.Provider, {
|
138
|
+
value: this
|
139
|
+
}, /*#__PURE__*/React.createElement(TouchableRipple, _extends({
|
140
|
+
rippleColor: this.props.rippleColor,
|
141
|
+
borderless: true
|
142
|
+
}, commonProps), /*#__PURE__*/React.createElement(React.Fragment, null, this.props.children)));
|
143
|
+
}) : /*#__PURE__*/React.createElement(TouchableOpacity, commonProps, /*#__PURE__*/React.createElement(React.Fragment, null, this.props.children));
|
138
144
|
});
|
139
145
|
}
|
140
146
|
return /*#__PURE__*/React.createElement(View, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Platform","View","TouchableOpacity","get","injector","TouchableRipple","TappableContext","createContext","UIPreferencesConsumer","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","_extends","rippleColor","borderless","Fragment","children"],"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\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}\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 <TouchableRipple rippleColor={this.props.rippleColor} borderless={true} {...commonProps}>\n <>{this.props.children}</>\n </TouchableRipple>): (\n <TouchableOpacity {...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","borderless","Fragment","children"],"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}\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.rippleColor} borderless={true} {...commonProps}>\n <>{this.props.children}</>\n </TouchableRipple>\n </ParentTappableContext.Provider>)}}</ParentTappableContext.Consumer>): (\n <TouchableOpacity {...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":[]}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@wavemaker/app-rn-runtime",
|
3
|
-
"version": "11.8.5-patch.
|
3
|
+
"version": "11.8.5-patch.8",
|
4
4
|
"description": "''",
|
5
5
|
"main": "index",
|
6
6
|
"module": "index",
|
@@ -50,7 +50,7 @@
|
|
50
50
|
"@react-navigation/drawer": "6.6.3",
|
51
51
|
"@react-navigation/native": "6.1.7",
|
52
52
|
"@react-navigation/stack": "6.3.29",
|
53
|
-
"@wavemaker/variables": "11.8.5-patch.
|
53
|
+
"@wavemaker/variables": "11.8.5-patch.8",
|
54
54
|
"axios": "1.6.8",
|
55
55
|
"color": "4.2.3",
|
56
56
|
"cross-env": "7.0.3",
|
package/runtime/App.navigator.js
CHANGED
@@ -94,6 +94,7 @@ export const AppNavigator = props => {
|
|
94
94
|
landingPage: appConfig.landingPage
|
95
95
|
});
|
96
96
|
const leftNav = /*#__PURE__*/React.createElement(AppDrawerNavigator, {
|
97
|
+
drawerWidth: props.app.appConfig.leftNavWidth,
|
97
98
|
type: props.drawerAnimation === 'slide-over' ? 'front' : 'slide',
|
98
99
|
hide: props.hideDrawer,
|
99
100
|
content: () => props.drawerContent && props.drawerContent() || /*#__PURE__*/React.createElement(View, null),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Platform","View","NavigationContainer","DefaultTheme","isWebPreviewMode","injector","AppDrawerNavigator","AppStackNavigator","isEmpty","keys","last","ThemeVariables","getNavigationState","pageName","params","routes","name","state","index","getStateFromPath","path","options","hash","window","location","substring","startsWith","paramstr","split","forEach","p","k","v","getPathFromState","pagesRoute","pageRoute","href","map","join","setTimeout","_window$history$state","id","history","replaceState","AppNavigator","props","_appConfig$pages","appConfig","get","pages","linking","prefixes","appId","config","screens","undefined","navigationTheme","colors","background","INSTANCE","pageContentBgColor","stack","createElement","landingPage","leftNav","type","drawerAnimation","hide","hideDrawer","content","drawerContent","rootComponent","initialState","OS","landingPageParams","theme"],"sources":["App.navigator.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport { Platform, View } from 'react-native';\nimport { NavigationContainer, DefaultTheme } from '@react-navigation/native';\nimport { isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport AppDrawerNavigator from './navigator/drawer.navigator';\nimport AppStackNavigator from './navigator/stack.navigator';\nimport { isEmpty, keys, last } from 'lodash';\nimport ThemeVariables from '../styles/theme.variables';\n\ndeclare const window: any;\n\nexport interface AppNavigatorProps {\n drawerContent: () => ReactNode;\n drawerAnimation: string;\n hideDrawer: boolean;\n landingPage?: string;\n landingPageParams?: any;\n app: any;\n}\n\nconst getNavigationState = (pageName: string, params: any) => {\n return {\n routes: [{\n name: 'pages',\n state: {\n index: 0,\n routes: [{\n name: pageName,\n params: params\n }]\n }\n }]\n };\n};\n\nconst getStateFromPath = (path: string, options?: any) => {\n let hash: string = window.location.hash;\n hash = hash.substring(1);\n if (hash && hash.startsWith('/')) {\n hash = hash.substring(1);\n }\n if (!hash) {\n return;\n }\n let [pageName, paramstr] = hash.split('?');\n let params = {} as any;\n if (paramstr) {\n paramstr.split('&').forEach((p) => {\n const [k, v] = p.split('=');\n params[k] = v;\n });\n }\n return getNavigationState(pageName, params);\n};\n\nconst getPathFromState = (state: any, options: any) => {\n const pagesRoute = state?.routes[0];\n const pageRoute: any = last(pagesRoute?.state.routes);\n let path = '';\n if (pageRoute) {\n path = window.location.href.split('#')[0] + '#/'+ pageRoute.name;\n if (!isEmpty(pageRoute.params)) {\n path += '?' + keys(pageRoute.params).map((k) => {\n return `${k}=${pageRoute.params[k]}`\n }).join('&');\n }\n }\n setTimeout(() => { \n const id = window.history.state?.id;\n window.history.replaceState({id}, null, path);\n });\n return path;\n};\n\nexport const AppNavigator = (props: AppNavigatorProps) => {\n const appConfig = injector.get<AppConfig>('APP_CONFIG');\n const pages = {};\n const linking = {\n prefixes: [`${appConfig.appId}://`],\n config: {\n screens: {\n \"pages\": {\n path: \"pages\",\n screens: pages\n }\n }\n },\n getStateFromPath: isWebPreviewMode() ? getStateFromPath : undefined,\n getPathFromState: isWebPreviewMode()? getPathFromState: undefined\n } as any;\n\n const navigationTheme = {\n ...DefaultTheme,\n colors: {\n ...DefaultTheme.colors,\n background: ThemeVariables.INSTANCE.pageContentBgColor\n },\n };\n \n appConfig.pages?.forEach((p) => {\n //@ts-ignore\n pages[p.name] = p.name;\n });\n const stack = (<AppStackNavigator\n pages={appConfig.pages || []}\n landingPage={appConfig.landingPage}></AppStackNavigator>);\n const leftNav = (<AppDrawerNavigator\n type={props.drawerAnimation === 'slide-over' ? 'front' : 'slide'}\n hide={props.hideDrawer}\n content={() => (props.drawerContent && props.drawerContent()) || (<View/>)}\n rootComponent={stack}/>);\n const initialState = props.landingPage && Platform.OS !== 'web' ? \n getNavigationState(props.landingPage, props.landingPageParams)\n : undefined;\n return (<NavigationContainer initialState={initialState} linking={linking} theme={navigationTheme}>{leftNav}</NavigationContainer>);\n};\n"],"mappings":"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
|
1
|
+
{"version":3,"names":["React","Platform","View","NavigationContainer","DefaultTheme","isWebPreviewMode","injector","AppDrawerNavigator","AppStackNavigator","isEmpty","keys","last","ThemeVariables","getNavigationState","pageName","params","routes","name","state","index","getStateFromPath","path","options","hash","window","location","substring","startsWith","paramstr","split","forEach","p","k","v","getPathFromState","pagesRoute","pageRoute","href","map","join","setTimeout","_window$history$state","id","history","replaceState","AppNavigator","props","_appConfig$pages","appConfig","get","pages","linking","prefixes","appId","config","screens","undefined","navigationTheme","colors","background","INSTANCE","pageContentBgColor","stack","createElement","landingPage","leftNav","drawerWidth","app","leftNavWidth","type","drawerAnimation","hide","hideDrawer","content","drawerContent","rootComponent","initialState","OS","landingPageParams","theme"],"sources":["App.navigator.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport { Platform, View } from 'react-native';\nimport { NavigationContainer, DefaultTheme } from '@react-navigation/native';\nimport { isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport AppDrawerNavigator from './navigator/drawer.navigator';\nimport AppStackNavigator from './navigator/stack.navigator';\nimport { isEmpty, keys, last } from 'lodash';\nimport ThemeVariables from '../styles/theme.variables';\n\ndeclare const window: any;\n\nexport interface AppNavigatorProps {\n drawerContent: () => ReactNode;\n drawerAnimation: string;\n hideDrawer: boolean;\n landingPage?: string;\n landingPageParams?: any;\n app: any;\n}\n\nconst getNavigationState = (pageName: string, params: any) => {\n return {\n routes: [{\n name: 'pages',\n state: {\n index: 0,\n routes: [{\n name: pageName,\n params: params\n }]\n }\n }]\n };\n};\n\nconst getStateFromPath = (path: string, options?: any) => {\n let hash: string = window.location.hash;\n hash = hash.substring(1);\n if (hash && hash.startsWith('/')) {\n hash = hash.substring(1);\n }\n if (!hash) {\n return;\n }\n let [pageName, paramstr] = hash.split('?');\n let params = {} as any;\n if (paramstr) {\n paramstr.split('&').forEach((p) => {\n const [k, v] = p.split('=');\n params[k] = v;\n });\n }\n return getNavigationState(pageName, params);\n};\n\nconst getPathFromState = (state: any, options: any) => {\n const pagesRoute = state?.routes[0];\n const pageRoute: any = last(pagesRoute?.state.routes);\n let path = '';\n if (pageRoute) {\n path = window.location.href.split('#')[0] + '#/'+ pageRoute.name;\n if (!isEmpty(pageRoute.params)) {\n path += '?' + keys(pageRoute.params).map((k) => {\n return `${k}=${pageRoute.params[k]}`\n }).join('&');\n }\n }\n setTimeout(() => { \n const id = window.history.state?.id;\n window.history.replaceState({id}, null, path);\n });\n return path;\n};\n\nexport const AppNavigator = (props: AppNavigatorProps) => {\n const appConfig = injector.get<AppConfig>('APP_CONFIG');\n const pages = {};\n const linking = {\n prefixes: [`${appConfig.appId}://`],\n config: {\n screens: {\n \"pages\": {\n path: \"pages\",\n screens: pages\n }\n }\n },\n getStateFromPath: isWebPreviewMode() ? getStateFromPath : undefined,\n getPathFromState: isWebPreviewMode()? getPathFromState: undefined\n } as any;\n\n const navigationTheme = {\n ...DefaultTheme,\n colors: {\n ...DefaultTheme.colors,\n background: ThemeVariables.INSTANCE.pageContentBgColor\n },\n };\n \n appConfig.pages?.forEach((p) => {\n //@ts-ignore\n pages[p.name] = p.name;\n });\n const stack = (<AppStackNavigator\n pages={appConfig.pages || []}\n landingPage={appConfig.landingPage}></AppStackNavigator>);\n const leftNav = (<AppDrawerNavigator\n drawerWidth={props.app.appConfig.leftNavWidth}\n type={props.drawerAnimation === 'slide-over' ? 'front' : 'slide'}\n hide={props.hideDrawer}\n content={() => (props.drawerContent && props.drawerContent()) || (<View/>)}\n rootComponent={stack}/>);\n const initialState = props.landingPage && Platform.OS !== 'web' ? \n getNavigationState(props.landingPage, props.landingPageParams)\n : undefined;\n return (<NavigationContainer initialState={initialState} linking={linking} theme={navigationTheme}>{leftNav}</NavigationContainer>);\n};\n"],"mappings":"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","ignoreList":[]}
|
@@ -17,6 +17,7 @@ import { ToastConsumer } from '@wavemaker/app-rn-runtime/core/toast.service';
|
|
17
17
|
import spinnerService from '@wavemaker/app-rn-runtime/runtime/services/app-spinner.service';
|
18
18
|
import AppI18nService from './services/app-i18n.service';
|
19
19
|
import WmFormAction from '@wavemaker/app-rn-runtime/components/data/form/form-action/form-action.component';
|
20
|
+
import WmLeftPanel from '@wavemaker/app-rn-runtime/components/page/left-panel/left-panel.component';
|
20
21
|
export class SkeletonAnimationProps extends BaseProps {
|
21
22
|
constructor(...args) {
|
22
23
|
super(...args);
|
@@ -171,6 +172,10 @@ export default class BaseFragment extends BaseComponent {
|
|
171
172
|
if (w instanceof BaseFragment && w !== this) {
|
172
173
|
this.fragments[id] = w;
|
173
174
|
}
|
175
|
+
if (w instanceof WmLeftPanel) {
|
176
|
+
var _w$_INSTANCE$styles;
|
177
|
+
this.appConfig.leftNavWidth = (_w$_INSTANCE$styles = w._INSTANCE.styles) === null || _w$_INSTANCE$styles === void 0 || (_w$_INSTANCE$styles = _w$_INSTANCE$styles.root) === null || _w$_INSTANCE$styles === void 0 ? void 0 : _w$_INSTANCE$styles.width;
|
178
|
+
}
|
174
179
|
}
|
175
180
|
onComponentDestroy(w) {
|
176
181
|
const id = w.props.id || w.props.name;
|
@@ -295,6 +300,17 @@ export default class BaseFragment extends BaseComponent {
|
|
295
300
|
}).map(v => {
|
296
301
|
return v.subscribe(VariableEvents.AFTER_INVOKE, () => this.App.refresh());
|
297
302
|
}));
|
303
|
+
Object.values({
|
304
|
+
...this.fragmentVariables,
|
305
|
+
...this.fragmentActions
|
306
|
+
}).map(v => {
|
307
|
+
v.subscribe(VariableEvents.BEFORE_INVOKE, () => {
|
308
|
+
this.App.notify(VariableEvents.BEFORE_INVOKE, v);
|
309
|
+
});
|
310
|
+
v.subscribe(VariableEvents.AFTER_INVOKE, () => {
|
311
|
+
this.App.notify(VariableEvents.AFTER_INVOKE, v);
|
312
|
+
});
|
313
|
+
});
|
298
314
|
this.initVariableSpinner();
|
299
315
|
this.cleanUpVariablesandActions.push(...Object.values({
|
300
316
|
...this.fragmentVariables,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Text","get","filter","isNil","TestIdPrefixProvider","TextIdPrefixConsumer","injector","toBoolean","toNumber","isFullPathUrl","BaseComponent","BaseProps","ParentContext","BASE_THEME","ThemeProvider","VariableEvents","default","_viewPort","EVENTS","viewportEvents","WmFormField","WmForm","ToastConsumer","spinnerService","AppI18nService","WmFormAction","SkeletonAnimationProps","constructor","args","_defineProperty","FragmentProps","BaseFragment","props","defaultProps","createElement","text","title","okButtonText","cancelButtonText","onOk","onCancel","onClose","App","appConfig","app","formatters","Actions","Object","assign","Variables","cleanup","push","subscribe","ORIENTATION_CHANGE","$new","$old","isDetached","targetWidget","invokeEventCallback","proxy","screenWidth","width","screenHeight","height","SIZE_CHANGE","_this$theme","theme","destroy","baseUrl","url","resourceBaseUrl","onDestroy","onContentReady","onReady","refresh","onComponentChange","w","onComponentInit","id","name","formWidgets","formFields","formActions","Widgets","buttonArray","parentFormRef","pid","forEach","ff","formKey","registerFormFields","registerFormActions","formfield","formRef","fragments","onComponentDestroy","formfields","handleUrl","startsWith","getDateFormat","fmt","dateFormat","replace","getTimeFormat","timeFormat","getDateTimeFormat","dateTimeFormat","getCurrencySymbol","currencyCode","getStyle","classes","inlineStyles","trim","length","mergeStyle","getFormFieldStyles","formField","type","_formField$classname","suffix","classname","split","map","s","join","resetAppLocale","appLocale","messages","values","f","eval","fn","failOnError","call","e","val","componentWillUnmount","componentDidMount","memoize","key","o","_memoize","initVariableSpinner","variables","v","actions","concat","BEFORE_INVOKE","notify","show","message","spinner","AFTER_INVOKE","hide","onFragmentReady","cleanUpVariablesandActions","fragmentVariables","fragmentActions","startUpActions","a","invoke","Promise","all","startUpVariables","catch","error","console","then","startUpVariablesLoaded","showContent","onAttach","_this$targetWidget","watcher","isActive","unmute","refreshdataonattach","componentWillAttach","onDetach","_this$targetWidget2","mute","componentWillDetach","forceUpdate","generateTestIdPrefix","testId","getTestId","reduce","i","charCodeAt","render","autoUpdateVariables","value","_this$Variables$value","invokeOnParamChange","isVisible","Consumer","parent","_this$parent","setParent","_showSkeleton","state","showskeleton","Provider","testIdPrefix","toastService","toaster","renderWidget"],"sources":["base-fragment.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View } from 'react-native';\nimport { get, filter, isNil } from 'lodash';\n\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport { Formatter } from '@wavemaker/app-rn-runtime/core/formatters';\nimport { TestIdPrefixProvider, TextIdPrefixConsumer } from '@wavemaker/app-rn-runtime/core/testid.provider';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport { toBoolean, toNumber, isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\nimport { BaseComponent, BaseComponentState, BaseStyles, BaseProps, LifecycleListener, ParentContext } from '@wavemaker/app-rn-runtime/core/base.component';\nimport BASE_THEME, { Theme, ThemeProvider } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseVariable, VariableEvents } from '@wavemaker/app-rn-runtime/variables/base-variable';\nimport { default as _viewPort, EVENTS as viewportEvents } from '@wavemaker/app-rn-runtime/core/viewport';\nimport App from './App';\nimport WmFormField from '@wavemaker/app-rn-runtime/components/data/form/form-field/form-field.component';\nimport WmForm from '@wavemaker/app-rn-runtime/components/data/form/form.component';\nimport { ToastConsumer, ToastService } from '@wavemaker/app-rn-runtime/core/toast.service';\nimport spinnerService from '@wavemaker/app-rn-runtime/runtime/services/app-spinner.service';\n\nimport AppI18nService from './services/app-i18n.service';\nimport { Watcher } from './watcher';\nimport WmFormAction from '@wavemaker/app-rn-runtime/components/data/form/form-action/form-action.component';\nimport WmLottie from '@wavemaker/app-rn-runtime/components/basic/lottie/lottie.component';\nimport { WmSkeletonStyles } from '../components/basic/skeleton/skeleton.styles';\n\nexport class SkeletonAnimationProps extends BaseProps {\n skeletonanimationresource = \"\";\n skeletonanimationspeed = 1;\n}\n\nexport class FragmentProps extends SkeletonAnimationProps {}\n\nexport interface FragmentState<T extends FragmentProps> extends BaseComponentState<T> {}\n\nexport type FragmentStyles = BaseStyles & {\n skeleton?: WmSkeletonStyles\n};\nexport default abstract class BaseFragment<P extends FragmentProps, S extends FragmentState<P>> extends BaseComponent<P, S, FragmentStyles> implements LifecycleListener {\n public App: App;\n public onReady: Function = () => {};\n public baseUrl = '';\n public resourceBaseUrl = '';\n public targetWidget = null as unknown as BaseComponent<any, any, any>;\n public Widgets: any = {};\n public Variables: any = {};\n public theme: Theme = BASE_THEME;\n public appLocale: any = {};\n private startUpVariables: string[] = [];\n protected startUpVariablesLoaded = false;\n private startUpActions: string[] = [];\n private autoUpdateVariables: string[] = [];\n private cleanUpVariablesandActions: BaseVariable<any>[] = [];\n public fragmentVariables: any = {};\n public fragmentActions: any = {};\n public Actions: any = {};\n public appConfig = injector.get<AppConfig>('APP_CONFIG');\n public cache = false;\n public refreshdataonattach= true;\n public isReactNativeApp = true;\n public fragments: any = {};\n public isDetached = false;\n public _memoize = {} as any;\n public toaster: any;\n public formatters: Map<string, Formatter>;\n public serviceDefinitions = {} as any;\n public Viewport = _viewPort;\n public loadingMessage = React.createElement(Text, [] as any, ['loading...']);\n public showContent = false;\n public notification = {\n text: '',\n title: '',\n okButtonText: '',\n cancelButtonText: '',\n onOk: () => {},\n onCancel: () => {},\n onClose: () => {}\n };\n public watcher: Watcher = null as any;\n constructor(props: P, defaultProps?: P) {\n super(props, null as any, defaultProps);\n this.App = this.appConfig.app;\n this.formatters = this.App.formatters;\n this.Actions = Object.assign({}, this.App.Actions);\n this.Variables = Object.assign({}, this.App.Variables);\n this.cleanup.push(_viewPort.subscribe(viewportEvents.ORIENTATION_CHANGE, ($new: any, $old: any) => {\n !this.isDetached && this.targetWidget && this.targetWidget.invokeEventCallback('onOrientationchange', [null, this.proxy,\n {screenWidth: _viewPort.width,\n screenHeight: _viewPort.height}]);\n }));\n this.cleanup.push(_viewPort.subscribe(viewportEvents.SIZE_CHANGE, ($new: any, $old: any) => {\n !this.isDetached && this.targetWidget && this.targetWidget.invokeEventCallback('onResize', [null, this.proxy,\n {screenWidth: $new.width,\n screenHeight: $new.height}]);\n }));\n this.cleanup.push(() => this.theme?.destroy());\n this.baseUrl = this.appConfig.url;\n this.resourceBaseUrl = this.appConfig.url;\n this.cleanup.push(() => this.onDestroy());\n }\n\n onContentReady() {\n this.onReady();\n this.appConfig.refresh();\n this.targetWidget && this.targetWidget.invokeEventCallback('onLoad', [null, this.proxy]);\n this.onContentReady = () => {};\n }\n\n onComponentChange(w: BaseComponent<any, any, any>) {\n this.refresh();\n }\n\n onComponentInit(w: BaseComponent<any, any, any>) {\n const id = w.props.id || w.props.name;\n let formWidgets: any, formFields: any, formActions: any;\n\n if (w instanceof WmForm) {\n if (!this.Widgets[id]) {\n this.Widgets[id] = w;\n }\n if (w.props.id) {\n const name: any = w.props.name;\n formWidgets = this.Widgets[name].formWidgets;\n formFields = this.Widgets[name].formFields;\n formActions = this.Widgets[name].buttonArray;\n this.Widgets[name].formFields = [];\n this.Widgets[name].buttonArray = [];\n this.Widgets[name].formWidgets = {};\n } else {\n formWidgets = this.Widgets[id].formWidgets;\n formFields = this.Widgets[id].formFields;\n formActions = this.Widgets[id].buttonArray;\n }\n this.Widgets[id] = w;\n if (w.parentFormRef) {\n let pid = w.parentFormRef.props.id || w.parentFormRef.props.name;\n formFields.forEach((ff: any) => {\n const formKey = ff.props.formKey || ff.props.name;\n this.Widgets[pid].formFields.push(ff);\n this.Widgets[pid].formWidgets[formKey] = formWidgets[ff.props.name];\n });\n }\n w.registerFormFields(formFields, formWidgets);\n w.registerFormActions(formActions);\n return;\n }\n if (w.props.formfield) {\n if (!this.Widgets[w.props.formRef]) {\n this.Widgets[w.props.formRef] = {formFields: [], formWidgets: {}};\n } else if (!this.Widgets[w.props.formRef].formFields) {\n this.Widgets[w.props.formRef].formFields = [];\n }\n if (!this.Widgets[w.props.formRef].formWidgets) {\n this.Widgets[w.props.formRef].formWidgets = {}\n }\n this.Widgets[w.props.formRef].formWidgets[w.props.name] = w;\n return;\n }\n if (w instanceof WmFormAction) {\n if (!this.Widgets[w.props.formKey]) {\n this.Widgets[w.props.formKey] = {};\n }\n if (!this.Widgets[w.props.formKey].buttonArray) {\n this.Widgets[w.props.formKey].buttonArray = [];\n }\n this.Widgets[w.props.formKey].buttonArray.push(w);\n return;\n }\n\n if (w instanceof WmFormField) {\n if (!this.Widgets[w.props.formRef]) {\n this.Widgets[w.props.formRef] = {};\n }\n if (!this.Widgets[w.props.formRef].formFields) {\n this.Widgets[w.props.formRef].formFields = [];\n }\n this.Widgets[w.props.formRef].formWidgets = this.Widgets[w.props.formRef].formWidgets || {};\n this.Widgets[w.props.formRef].formFields.push(w);\n return;\n }\n this.Widgets[id] = w;\n if (w instanceof BaseFragment && w !== this) {\n this.fragments[id] = w;\n }\n }\n\n onComponentDestroy(w: BaseComponent<any, any, any>) {\n const id = w.props.id || w.props.name;\n delete this.Widgets[id];\n if (w instanceof BaseFragment) {\n delete this.fragments[id];\n }\n if (w instanceof WmForm) {\n w.formWidgets = {};\n w.formFields = [];\n w.formfields = {};\n }\n }\n\n handleUrl(url: string) {\n if (isFullPathUrl(url)) {\n return url;\n }\n return this.appConfig.url + (url.startsWith('/') ? '' : '/') + url;\n }\n\n getDateFormat(fmt?: string) {\n // getting formats from appLocale when app locale is loaded locally.\n return (fmt || AppI18nService.dateFormat || get(this.appConfig, 'appLocale.formats.date')).replace(/d/g, 'D').replace(/E/g, 'd').replace(/y/g, 'Y');\n }\n\n getTimeFormat(fmt?: string) {\n return fmt || AppI18nService.timeFormat || get(this.appConfig, 'appLocale.formats.time');\n }\n\n getDateTimeFormat(fmt?: string) {\n return (fmt || AppI18nService.dateTimeFormat || (get(this.appConfig, 'appLocale.formats.date') + ' ' + get(this.appConfig, 'appLocale.formats.time'))).replace(/d/g, 'D').replace(/E/g, 'd').replace(/y/g, 'Y');\n }\n\n getCurrencySymbol(fmt?: string) {\n return (fmt || AppI18nService.currencyCode || 'USD');\n }\n\n getStyle(classes: string, inlineStyles:any = {}) {\n if (classes && classes.trim().length > 0) {\n return this.theme.mergeStyle({}, this.theme.getStyle(classes), inlineStyles);\n }\n return inlineStyles;\n }\n\n getFormFieldStyles(formField: any, type: string){\n let suffix = ''\n switch(type){\n case 'label' :\n suffix = '_formLabel'\n break\n case 'commonField' :\n suffix = '-input'\n break\n default :\n ''\n }\n return formField?.classname?.trim()?.split(' ')?.map((s:string) => s.trim() + suffix).join(' ');\n }\n\n resetAppLocale() {\n this.appLocale = this.appConfig.appLocale.messages;\n Object.values(this.fragments).forEach((f: any) => (f as BaseFragment<any, any>).resetAppLocale());\n }\n\n eval(fn: Function, failOnError = false) {\n try {\n return fn.call(this);\n } catch (e) {\n if (failOnError) {\n throw e;\n } else {\n return null;\n }\n }\n }\n\n toBoolean(val: any) {\n if (isNil(val)) {\n return false;\n }\n return toBoolean(val);\n }\n\n toNumber(val: any) {\n if (isNil(val)) {\n return val;\n }\n return toNumber(val);\n }\n\n componentWillUnmount() {\n super.componentWillUnmount();\n this.targetWidget && this.targetWidget.invokeEventCallback('onDestroy', [null, this.proxy]);\n }\n\n componentDidMount(): void {\n this.resetAppLocale();\n super.componentDidMount();\n }\n\n memoize(key: string, o: any) {\n if (!this._memoize[key]) {\n this._memoize[key] = o;\n }\n return this._memoize[key];\n }\n\n initVariableSpinner() {\n let variables = filter(this.Variables, (v: BaseVariable<any>) => !!get(v, 'config.spinnerContext'));\n const actions = filter(this.Actions, (v: BaseVariable<any>) => !!get(v, 'config.spinnerContext'));\n variables = variables.concat(actions);\n if (!variables.length) {\n return;\n }\n this.cleanup.push(...variables.map(v => {\n return ((v as BaseVariable<any>)\n .subscribe(VariableEvents.BEFORE_INVOKE, () => {\n this.App.notify(VariableEvents.BEFORE_INVOKE, v);\n spinnerService.show({\n message: get(v, 'config.spinnerMessage'),\n spinner: this.App.appConfig.spinner\n });\n }))\n }));\n this.cleanup.push(...variables.map(v => {\n return ((v as BaseVariable<any>)\n .subscribe(VariableEvents.AFTER_INVOKE, () => {\n this.App.notify(VariableEvents.AFTER_INVOKE, v);\n spinnerService.hide();\n }));\n }));\n }\n\n onFragmentReady() {\n this.cleanup.push(...Object.values({...this.Variables, ...this.Actions}).map(v => {\n return ((v as BaseVariable<any>)\n .subscribe(VariableEvents.AFTER_INVOKE, () => this.App.refresh()));\n }));\n this.initVariableSpinner();\n this.cleanUpVariablesandActions.push(...Object.values({...this.fragmentVariables, ...this.fragmentActions} as BaseVariable<any>));\n this.startUpActions.map(a => this.Actions[a] && this.Actions[a].invoke());\n return Promise.all(this.startUpVariables.map(s => this.Variables[s] && this.Variables[s].invoke()))\n .catch((error) => {\n // catch errors and show content\n console.error(error);\n })\n .then(() => {\n this.startUpVariablesLoaded = true;\n this.showContent = true;\n this.appConfig.refresh();\n });\n }\n\n onAttach() {\n this.isDetached = false;\n this.watcher.isActive = true;\n this.resetAppLocale();\n Object.values(this.fragments).forEach((f: any) => f.onAttach());\n this.cleanUpVariablesandActions.forEach((v: any) => v.unmute && v.unmute());\n this.targetWidget?.invokeEventCallback('onAttach', [null, this.proxy]);\n if (this.refreshdataonattach) {\n Promise.all(this.startUpVariables.map(s => this.Variables[s] && this.Variables[s].invoke()));\n }\n Object.values(this.Widgets).forEach((w: any) => {\n w.componentWillAttach && w.componentWillAttach();\n });\n }\n\n onDetach() {\n this.isDetached = true;\n this.watcher.isActive = false;\n Object.values(this.fragments).forEach((f: any) => f.onDetach());\n this.cleanUpVariablesandActions.forEach((v: any) => v.mute && v.mute());\n this.targetWidget?.invokeEventCallback('onDetach', [null, this.proxy]);\n Object.values(this.Widgets).forEach((w: any) => {\n w.componentWillDetach && w.componentWillDetach();\n });\n }\n\n onDestroy() {\n this.cleanUpVariablesandActions.forEach((v: any) => v.destroy());\n this.watcher.destroy();\n }\n\n refresh() {\n (injector.get('AppConfig') as AppConfig).refresh();\n }\n\n forceUpdate() {\n super.forceUpdate();\n Object.values(this.fragments).forEach((f: any) => (f as BaseFragment<any, any>).forceUpdate());\n }\n\n generateTestIdPrefix() {\n const testId = this.getTestId();\n return testId && (testId.split('')\n .reduce((a, v, i) => a + (v.charCodeAt(0) * (i + 1)), 0) + '');\n }\n\n render() {\n if (this.startUpVariablesLoaded) {\n this.autoUpdateVariables\n .forEach(value => this.Variables[value]?.invokeOnParamChange());\n }\n return this.isVisible() ? (\n <ParentContext.Consumer>\n {(parent) => {\n this.setParent(parent);\n this._showSkeleton = this.state.props.showskeleton !== false \n && (this.parent?._showSkeleton || this.state.props.showskeleton === true);\n let theme = this.theme;\n return (\n <ParentContext.Provider value={this}>\n <ThemeProvider value={theme}>\n <TextIdPrefixConsumer>\n {(testIdPrefix) => {\n this.testIdPrefix = testIdPrefix || '';\n return (\n <TestIdPrefixProvider value={this.generateTestIdPrefix() || ''}>\n <ToastConsumer>\n {(toastService: ToastService) => {\n this.toaster = toastService;\n return this.renderWidget(this.props);\n }}\n </ToastConsumer>\n </TestIdPrefixProvider>);\n }}\n </TextIdPrefixConsumer>\n </ThemeProvider>\n </ParentContext.Provider>);\n }}\n </ParentContext.Consumer>) : null;\n }\n\n\n}\n\n\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","Text","get","filter","isNil","TestIdPrefixProvider","TextIdPrefixConsumer","injector","toBoolean","toNumber","isFullPathUrl","BaseComponent","BaseProps","ParentContext","BASE_THEME","ThemeProvider","VariableEvents","default","_viewPort","EVENTS","viewportEvents","WmFormField","WmForm","ToastConsumer","spinnerService","AppI18nService","WmFormAction","WmLeftPanel","SkeletonAnimationProps","constructor","args","_defineProperty","FragmentProps","BaseFragment","props","defaultProps","createElement","text","title","okButtonText","cancelButtonText","onOk","onCancel","onClose","App","appConfig","app","formatters","Actions","Object","assign","Variables","cleanup","push","subscribe","ORIENTATION_CHANGE","$new","$old","isDetached","targetWidget","invokeEventCallback","proxy","screenWidth","width","screenHeight","height","SIZE_CHANGE","_this$theme","theme","destroy","baseUrl","url","resourceBaseUrl","onDestroy","onContentReady","onReady","refresh","onComponentChange","w","onComponentInit","id","name","formWidgets","formFields","formActions","Widgets","buttonArray","parentFormRef","pid","forEach","ff","formKey","registerFormFields","registerFormActions","formfield","formRef","fragments","_w$_INSTANCE$styles","leftNavWidth","_INSTANCE","styles","root","onComponentDestroy","formfields","handleUrl","startsWith","getDateFormat","fmt","dateFormat","replace","getTimeFormat","timeFormat","getDateTimeFormat","dateTimeFormat","getCurrencySymbol","currencyCode","getStyle","classes","inlineStyles","trim","length","mergeStyle","getFormFieldStyles","formField","type","_formField$classname","suffix","classname","split","map","s","join","resetAppLocale","appLocale","messages","values","f","eval","fn","failOnError","call","e","val","componentWillUnmount","componentDidMount","memoize","key","o","_memoize","initVariableSpinner","variables","v","actions","concat","BEFORE_INVOKE","notify","show","message","spinner","AFTER_INVOKE","hide","onFragmentReady","fragmentVariables","fragmentActions","cleanUpVariablesandActions","startUpActions","a","invoke","Promise","all","startUpVariables","catch","error","console","then","startUpVariablesLoaded","showContent","onAttach","_this$targetWidget","watcher","isActive","unmute","refreshdataonattach","componentWillAttach","onDetach","_this$targetWidget2","mute","componentWillDetach","forceUpdate","generateTestIdPrefix","testId","getTestId","reduce","i","charCodeAt","render","autoUpdateVariables","value","_this$Variables$value","invokeOnParamChange","isVisible","Consumer","parent","_this$parent","setParent","_showSkeleton","state","showskeleton","Provider","testIdPrefix","toastService","toaster","renderWidget"],"sources":["base-fragment.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View } from 'react-native';\nimport { get, filter, isNil } from 'lodash';\n\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport { Formatter } from '@wavemaker/app-rn-runtime/core/formatters';\nimport { TestIdPrefixProvider, TextIdPrefixConsumer } from '@wavemaker/app-rn-runtime/core/testid.provider';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport { toBoolean, toNumber, isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\nimport { BaseComponent, BaseComponentState, BaseStyles, BaseProps, LifecycleListener, ParentContext } from '@wavemaker/app-rn-runtime/core/base.component';\nimport BASE_THEME, { Theme, ThemeProvider } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseVariable, VariableEvents } from '@wavemaker/app-rn-runtime/variables/base-variable';\nimport { default as _viewPort, EVENTS as viewportEvents } from '@wavemaker/app-rn-runtime/core/viewport';\nimport App from './App';\nimport WmFormField from '@wavemaker/app-rn-runtime/components/data/form/form-field/form-field.component';\nimport WmForm from '@wavemaker/app-rn-runtime/components/data/form/form.component';\nimport { ToastConsumer, ToastService } from '@wavemaker/app-rn-runtime/core/toast.service';\nimport spinnerService from '@wavemaker/app-rn-runtime/runtime/services/app-spinner.service';\n\nimport AppI18nService from './services/app-i18n.service';\nimport { Watcher } from './watcher';\nimport WmFormAction from '@wavemaker/app-rn-runtime/components/data/form/form-action/form-action.component';\nimport WmLottie from '@wavemaker/app-rn-runtime/components/basic/lottie/lottie.component';\nimport { WmSkeletonStyles } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport WmLeftPanel from '@wavemaker/app-rn-runtime/components/page/left-panel/left-panel.component';\n\nexport class SkeletonAnimationProps extends BaseProps {\n skeletonanimationresource = \"\";\n skeletonanimationspeed = 1;\n}\n\nexport class FragmentProps extends SkeletonAnimationProps {}\n\nexport interface FragmentState<T extends FragmentProps> extends BaseComponentState<T> {}\n\nexport type FragmentStyles = BaseStyles & {\n skeleton?: WmSkeletonStyles\n};\nexport default abstract class BaseFragment<P extends FragmentProps, S extends FragmentState<P>> extends BaseComponent<P, S, FragmentStyles> implements LifecycleListener {\n public App: App;\n public onReady: Function = () => {};\n public baseUrl = '';\n public resourceBaseUrl = '';\n public targetWidget = null as unknown as BaseComponent<any, any, any>;\n public Widgets: any = {};\n public Variables: any = {};\n public theme: Theme = BASE_THEME;\n public appLocale: any = {};\n private startUpVariables: string[] = [];\n protected startUpVariablesLoaded = false;\n private startUpActions: string[] = [];\n private autoUpdateVariables: string[] = [];\n private cleanUpVariablesandActions: BaseVariable<any>[] = [];\n public fragmentVariables: any = {};\n public fragmentActions: any = {};\n public Actions: any = {};\n public appConfig = injector.get<AppConfig>('APP_CONFIG');\n public cache = false;\n public refreshdataonattach= true;\n public isReactNativeApp = true;\n public fragments: any = {};\n public isDetached = false;\n public _memoize = {} as any;\n public toaster: any;\n public formatters: Map<string, Formatter>;\n public serviceDefinitions = {} as any;\n public Viewport = _viewPort;\n public loadingMessage = React.createElement(Text, [] as any, ['loading...']);\n public showContent = false;\n public notification = {\n text: '',\n title: '',\n okButtonText: '',\n cancelButtonText: '',\n onOk: () => {},\n onCancel: () => {},\n onClose: () => {}\n };\n public watcher: Watcher = null as any;\n constructor(props: P, defaultProps?: P) {\n super(props, null as any, defaultProps);\n this.App = this.appConfig.app;\n this.formatters = this.App.formatters;\n this.Actions = Object.assign({}, this.App.Actions);\n this.Variables = Object.assign({}, this.App.Variables);\n this.cleanup.push(_viewPort.subscribe(viewportEvents.ORIENTATION_CHANGE, ($new: any, $old: any) => {\n !this.isDetached && this.targetWidget && this.targetWidget.invokeEventCallback('onOrientationchange', [null, this.proxy,\n {screenWidth: _viewPort.width,\n screenHeight: _viewPort.height}]);\n }));\n this.cleanup.push(_viewPort.subscribe(viewportEvents.SIZE_CHANGE, ($new: any, $old: any) => {\n !this.isDetached && this.targetWidget && this.targetWidget.invokeEventCallback('onResize', [null, this.proxy,\n {screenWidth: $new.width,\n screenHeight: $new.height}]);\n }));\n this.cleanup.push(() => this.theme?.destroy());\n this.baseUrl = this.appConfig.url;\n this.resourceBaseUrl = this.appConfig.url;\n this.cleanup.push(() => this.onDestroy());\n }\n\n onContentReady() {\n this.onReady();\n this.appConfig.refresh();\n this.targetWidget && this.targetWidget.invokeEventCallback('onLoad', [null, this.proxy]);\n this.onContentReady = () => {};\n }\n\n onComponentChange(w: BaseComponent<any, any, any>) {\n this.refresh();\n }\n\n onComponentInit(w: BaseComponent<any, any, any>) {\n const id = w.props.id || w.props.name;\n let formWidgets: any, formFields: any, formActions: any;\n\n if (w instanceof WmForm) {\n if (!this.Widgets[id]) {\n this.Widgets[id] = w;\n }\n if (w.props.id) {\n const name: any = w.props.name;\n formWidgets = this.Widgets[name].formWidgets;\n formFields = this.Widgets[name].formFields;\n formActions = this.Widgets[name].buttonArray;\n this.Widgets[name].formFields = [];\n this.Widgets[name].buttonArray = [];\n this.Widgets[name].formWidgets = {};\n } else {\n formWidgets = this.Widgets[id].formWidgets;\n formFields = this.Widgets[id].formFields;\n formActions = this.Widgets[id].buttonArray;\n }\n this.Widgets[id] = w;\n if (w.parentFormRef) {\n let pid = w.parentFormRef.props.id || w.parentFormRef.props.name;\n formFields.forEach((ff: any) => {\n const formKey = ff.props.formKey || ff.props.name;\n this.Widgets[pid].formFields.push(ff);\n this.Widgets[pid].formWidgets[formKey] = formWidgets[ff.props.name];\n });\n }\n w.registerFormFields(formFields, formWidgets);\n w.registerFormActions(formActions);\n return;\n }\n if (w.props.formfield) {\n if (!this.Widgets[w.props.formRef]) {\n this.Widgets[w.props.formRef] = {formFields: [], formWidgets: {}};\n } else if (!this.Widgets[w.props.formRef].formFields) {\n this.Widgets[w.props.formRef].formFields = [];\n }\n if (!this.Widgets[w.props.formRef].formWidgets) {\n this.Widgets[w.props.formRef].formWidgets = {}\n }\n this.Widgets[w.props.formRef].formWidgets[w.props.name] = w;\n return;\n }\n if (w instanceof WmFormAction) {\n if (!this.Widgets[w.props.formKey]) {\n this.Widgets[w.props.formKey] = {};\n }\n if (!this.Widgets[w.props.formKey].buttonArray) {\n this.Widgets[w.props.formKey].buttonArray = [];\n }\n this.Widgets[w.props.formKey].buttonArray.push(w);\n return;\n }\n\n if (w instanceof WmFormField) {\n if (!this.Widgets[w.props.formRef]) {\n this.Widgets[w.props.formRef] = {};\n }\n if (!this.Widgets[w.props.formRef].formFields) {\n this.Widgets[w.props.formRef].formFields = [];\n }\n this.Widgets[w.props.formRef].formWidgets = this.Widgets[w.props.formRef].formWidgets || {};\n this.Widgets[w.props.formRef].formFields.push(w);\n return;\n }\n this.Widgets[id] = w;\n if (w instanceof BaseFragment && w !== this) {\n this.fragments[id] = w;\n }\n if (w instanceof WmLeftPanel) {\n this.appConfig.leftNavWidth = w._INSTANCE.styles?.root?.width;\n }\n }\n\n onComponentDestroy(w: BaseComponent<any, any, any>) {\n const id = w.props.id || w.props.name;\n delete this.Widgets[id];\n if (w instanceof BaseFragment) {\n delete this.fragments[id];\n }\n if (w instanceof WmForm) {\n w.formWidgets = {};\n w.formFields = [];\n w.formfields = {};\n }\n }\n\n handleUrl(url: string) {\n if (isFullPathUrl(url)) {\n return url;\n }\n return this.appConfig.url + (url.startsWith('/') ? '' : '/') + url;\n }\n\n getDateFormat(fmt?: string) {\n // getting formats from appLocale when app locale is loaded locally.\n return (fmt || AppI18nService.dateFormat || get(this.appConfig, 'appLocale.formats.date')).replace(/d/g, 'D').replace(/E/g, 'd').replace(/y/g, 'Y');\n }\n\n getTimeFormat(fmt?: string) {\n return fmt || AppI18nService.timeFormat || get(this.appConfig, 'appLocale.formats.time');\n }\n\n getDateTimeFormat(fmt?: string) {\n return (fmt || AppI18nService.dateTimeFormat || (get(this.appConfig, 'appLocale.formats.date') + ' ' + get(this.appConfig, 'appLocale.formats.time'))).replace(/d/g, 'D').replace(/E/g, 'd').replace(/y/g, 'Y');\n }\n\n getCurrencySymbol(fmt?: string) {\n return (fmt || AppI18nService.currencyCode || 'USD');\n }\n\n getStyle(classes: string, inlineStyles:any = {}) {\n if (classes && classes.trim().length > 0) {\n return this.theme.mergeStyle({}, this.theme.getStyle(classes), inlineStyles);\n }\n return inlineStyles;\n }\n\n getFormFieldStyles(formField: any, type: string){\n let suffix = ''\n switch(type){\n case 'label' :\n suffix = '_formLabel'\n break\n case 'commonField' :\n suffix = '-input'\n break\n default :\n ''\n }\n return formField?.classname?.trim()?.split(' ')?.map((s:string) => s.trim() + suffix).join(' ');\n }\n\n resetAppLocale() {\n this.appLocale = this.appConfig.appLocale.messages;\n Object.values(this.fragments).forEach((f: any) => (f as BaseFragment<any, any>).resetAppLocale());\n }\n\n eval(fn: Function, failOnError = false) {\n try {\n return fn.call(this);\n } catch (e) {\n if (failOnError) {\n throw e;\n } else {\n return null;\n }\n }\n }\n\n toBoolean(val: any) {\n if (isNil(val)) {\n return false;\n }\n return toBoolean(val);\n }\n\n toNumber(val: any) {\n if (isNil(val)) {\n return val;\n }\n return toNumber(val);\n }\n\n componentWillUnmount() {\n super.componentWillUnmount();\n this.targetWidget && this.targetWidget.invokeEventCallback('onDestroy', [null, this.proxy]);\n }\n\n componentDidMount(): void {\n this.resetAppLocale();\n super.componentDidMount();\n }\n\n memoize(key: string, o: any) {\n if (!this._memoize[key]) {\n this._memoize[key] = o;\n }\n return this._memoize[key];\n }\n\n initVariableSpinner() {\n let variables = filter(this.Variables, (v: BaseVariable<any>) => !!get(v, 'config.spinnerContext'));\n const actions = filter(this.Actions, (v: BaseVariable<any>) => !!get(v, 'config.spinnerContext'));\n variables = variables.concat(actions);\n if (!variables.length) {\n return;\n }\n this.cleanup.push(...variables.map(v => {\n return ((v as BaseVariable<any>)\n .subscribe(VariableEvents.BEFORE_INVOKE, () => {\n this.App.notify(VariableEvents.BEFORE_INVOKE, v);\n spinnerService.show({\n message: get(v, 'config.spinnerMessage'),\n spinner: this.App.appConfig.spinner\n });\n }))\n }));\n this.cleanup.push(...variables.map(v => {\n return ((v as BaseVariable<any>)\n .subscribe(VariableEvents.AFTER_INVOKE, () => {\n this.App.notify(VariableEvents.AFTER_INVOKE, v);\n spinnerService.hide();\n }));\n }));\n }\n\n onFragmentReady() {\n this.cleanup.push(...Object.values({...this.Variables, ...this.Actions}).map(v => {\n return ((v as BaseVariable<any>)\n .subscribe(VariableEvents.AFTER_INVOKE, () => this.App.refresh()));\n }));\n (Object.values({...this.fragmentVariables, ...this.fragmentActions} as BaseVariable<any>))\n .map(v => {\n (v as BaseVariable<any>).subscribe(VariableEvents.BEFORE_INVOKE, () => {\n this.App.notify(VariableEvents.BEFORE_INVOKE, v);\n });\n (v as BaseVariable<any>).subscribe(VariableEvents.AFTER_INVOKE, () => {\n this.App.notify(VariableEvents.AFTER_INVOKE, v);\n });\n });\n this.initVariableSpinner();\n this.cleanUpVariablesandActions.push(...Object.values({...this.fragmentVariables, ...this.fragmentActions} as BaseVariable<any>));\n this.startUpActions.map(a => this.Actions[a] && this.Actions[a].invoke());\n return Promise.all(this.startUpVariables.map(s => this.Variables[s] && this.Variables[s].invoke()))\n .catch((error) => {\n // catch errors and show content\n console.error(error);\n })\n .then(() => {\n this.startUpVariablesLoaded = true;\n this.showContent = true;\n this.appConfig.refresh();\n });\n }\n\n onAttach() {\n this.isDetached = false;\n this.watcher.isActive = true;\n this.resetAppLocale();\n Object.values(this.fragments).forEach((f: any) => f.onAttach());\n this.cleanUpVariablesandActions.forEach((v: any) => v.unmute && v.unmute());\n this.targetWidget?.invokeEventCallback('onAttach', [null, this.proxy]);\n if (this.refreshdataonattach) {\n Promise.all(this.startUpVariables.map(s => this.Variables[s] && this.Variables[s].invoke()));\n }\n Object.values(this.Widgets).forEach((w: any) => {\n w.componentWillAttach && w.componentWillAttach();\n });\n }\n\n onDetach() {\n this.isDetached = true;\n this.watcher.isActive = false;\n Object.values(this.fragments).forEach((f: any) => f.onDetach());\n this.cleanUpVariablesandActions.forEach((v: any) => v.mute && v.mute());\n this.targetWidget?.invokeEventCallback('onDetach', [null, this.proxy]);\n Object.values(this.Widgets).forEach((w: any) => {\n w.componentWillDetach && w.componentWillDetach();\n });\n }\n\n onDestroy() {\n this.cleanUpVariablesandActions.forEach((v: any) => v.destroy());\n this.watcher.destroy();\n }\n\n refresh() {\n (injector.get('AppConfig') as AppConfig).refresh();\n }\n\n forceUpdate() {\n super.forceUpdate();\n Object.values(this.fragments).forEach((f: any) => (f as BaseFragment<any, any>).forceUpdate());\n }\n\n generateTestIdPrefix() {\n const testId = this.getTestId();\n return testId && (testId.split('')\n .reduce((a, v, i) => a + (v.charCodeAt(0) * (i + 1)), 0) + '');\n }\n\n render() {\n if (this.startUpVariablesLoaded) {\n this.autoUpdateVariables\n .forEach(value => this.Variables[value]?.invokeOnParamChange());\n }\n return this.isVisible() ? (\n <ParentContext.Consumer>\n {(parent) => {\n this.setParent(parent);\n this._showSkeleton = this.state.props.showskeleton !== false \n && (this.parent?._showSkeleton || this.state.props.showskeleton === true);\n let theme = this.theme;\n return (\n <ParentContext.Provider value={this}>\n <ThemeProvider value={theme}>\n <TextIdPrefixConsumer>\n {(testIdPrefix) => {\n this.testIdPrefix = testIdPrefix || '';\n return (\n <TestIdPrefixProvider value={this.generateTestIdPrefix() || ''}>\n <ToastConsumer>\n {(toastService: ToastService) => {\n this.toaster = toastService;\n return this.renderWidget(this.props);\n }}\n </ToastConsumer>\n </TestIdPrefixProvider>);\n }}\n </TextIdPrefixConsumer>\n </ThemeProvider>\n </ParentContext.Provider>);\n }}\n </ParentContext.Consumer>) : null;\n }\n\n\n}\n\n\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import React from 'react';
|
2
|
-
import { createDrawerNavigator } from '@react-navigation/drawer';
|
2
|
+
import { createDrawerNavigator, getDrawerStatusFromState } from '@react-navigation/drawer';
|
3
3
|
import ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';
|
4
4
|
const Drawer = createDrawerNavigator();
|
5
5
|
class AppDrawerNavigator extends React.Component {
|
@@ -11,15 +11,24 @@ class AppDrawerNavigator extends React.Component {
|
|
11
11
|
initialRouteName: "pages",
|
12
12
|
drawerContent: this.props.content,
|
13
13
|
useLegacyImplementation: false,
|
14
|
-
screenOptions: {
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
14
|
+
screenOptions: ({
|
15
|
+
navigation
|
16
|
+
}) => {
|
17
|
+
const widthStyle = this.props.drawerWidth && getDrawerStatusFromState(navigation.getState()) === 'open' ? {
|
18
|
+
width: this.props.drawerWidth,
|
19
|
+
maxWidth: null
|
20
|
+
} : {};
|
21
|
+
return {
|
22
|
+
drawerType: this.props.type,
|
23
|
+
headerShown: false,
|
24
|
+
gestureHandlerProps: {
|
25
|
+
enabled: !this.props.hide
|
26
|
+
},
|
27
|
+
drawerStyle: {
|
28
|
+
backgroundColor: ThemeVariables.INSTANCE.pageContentBgColor,
|
29
|
+
...widthStyle
|
30
|
+
}
|
31
|
+
};
|
23
32
|
}
|
24
33
|
}, /*#__PURE__*/React.createElement(Drawer.Screen, {
|
25
34
|
name: "pages"
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","createDrawerNavigator","ThemeVariables","Drawer","AppDrawerNavigator","Component","constructor","props","render","createElement","Navigator","initialRouteName","drawerContent","content","useLegacyImplementation","screenOptions","drawerType","type","headerShown","gestureHandlerProps","enabled","hide","drawerStyle","backgroundColor","INSTANCE","pageContentBgColor","Screen","name","_props","rootComponent"],"sources":["drawer.navigator.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport { createDrawerNavigator } from '@react-navigation/drawer';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nconst Drawer = createDrawerNavigator();\n\ninterface AppDrawerNavigatorProps {\n content: (props: any) => ReactNode;\n hide: boolean,\n type: any;\n rootComponent: React.ReactNode;\n}\n\nclass AppDrawerNavigator extends React.Component<AppDrawerNavigatorProps, any, any> {\n\n constructor(props: AppDrawerNavigatorProps) {\n super(props);\n }\n\n render(){\n return (<Drawer.Navigator\n initialRouteName=\"pages\"\n drawerContent={this.props.content}\n useLegacyImplementation={false}\n screenOptions={{\n drawerType: this.props.type,\n headerShown: false,\n gestureHandlerProps: { enabled: !this.props.hide },\n drawerStyle: { backgroundColor: ThemeVariables.INSTANCE.pageContentBgColor }\n }}>\n <Drawer.Screen name=\"pages\">\n {(_props) => this.props.rootComponent}\n </Drawer.Screen>\n </Drawer.Navigator>);\n }\n}\n\nexport default AppDrawerNavigator;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAqB,OAAO;AACxC,SAASC,qBAAqB,QAAQ,0BAA0B;
|
1
|
+
{"version":3,"names":["React","createDrawerNavigator","getDrawerStatusFromState","ThemeVariables","Drawer","AppDrawerNavigator","Component","constructor","props","render","createElement","Navigator","initialRouteName","drawerContent","content","useLegacyImplementation","screenOptions","navigation","widthStyle","drawerWidth","getState","width","maxWidth","drawerType","type","headerShown","gestureHandlerProps","enabled","hide","drawerStyle","backgroundColor","INSTANCE","pageContentBgColor","Screen","name","_props","rootComponent"],"sources":["drawer.navigator.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport { createDrawerNavigator, getDrawerStatusFromState } from '@react-navigation/drawer';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nconst Drawer = createDrawerNavigator();\n\ninterface AppDrawerNavigatorProps {\n content: (props: any) => ReactNode;\n hide: boolean,\n drawerWidth: any;\n type: any;\n rootComponent: React.ReactNode;\n}\n\nclass AppDrawerNavigator extends React.Component<AppDrawerNavigatorProps, any, any> {\n\n constructor(props: AppDrawerNavigatorProps) {\n super(props);\n }\n\n render(){\n return (<Drawer.Navigator\n initialRouteName=\"pages\"\n drawerContent={this.props.content}\n useLegacyImplementation={false}\n screenOptions={({navigation})=> {\n const widthStyle = (this.props.drawerWidth && getDrawerStatusFromState(navigation.getState()) === 'open' ? {width: this.props.drawerWidth, maxWidth: null} : {})\n return {\n drawerType: this.props.type,\n headerShown: false,\n gestureHandlerProps: { enabled: !this.props.hide },\n drawerStyle: { backgroundColor: ThemeVariables.INSTANCE.pageContentBgColor, ...widthStyle}}\n }}>\n <Drawer.Screen name=\"pages\">\n {(_props) => this.props.rootComponent}\n </Drawer.Screen>\n </Drawer.Navigator>);\n }\n}\n\nexport default AppDrawerNavigator;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAqB,OAAO;AACxC,SAASC,qBAAqB,EAAEC,wBAAwB,QAAQ,0BAA0B;AAC1F,OAAOC,cAAc,MAAM,kDAAkD;AAC7E,MAAMC,MAAM,GAAGH,qBAAqB,CAAC,CAAC;AAUtC,MAAMI,kBAAkB,SAASL,KAAK,CAACM,SAAS,CAAoC;EAElFC,WAAWA,CAACC,KAA8B,EAAE;IAC1C,KAAK,CAACA,KAAK,CAAC;EACd;EAEAC,MAAMA,CAAA,EAAE;IACN,oBAAQT,KAAA,CAAAU,aAAA,CAACN,MAAM,CAACO,SAAS;MACvBC,gBAAgB,EAAC,OAAO;MACxBC,aAAa,EAAE,IAAI,CAACL,KAAK,CAACM,OAAQ;MAClCC,uBAAuB,EAAE,KAAM;MAC/BC,aAAa,EAAEA,CAAC;QAACC;MAAU,CAAC,KAAI;QAC9B,MAAMC,UAAU,GAAI,IAAI,CAACV,KAAK,CAACW,WAAW,IAAIjB,wBAAwB,CAACe,UAAU,CAACG,QAAQ,CAAC,CAAC,CAAC,KAAK,MAAM,GAAG;UAACC,KAAK,EAAE,IAAI,CAACb,KAAK,CAACW,WAAW;UAAEG,QAAQ,EAAE;QAAI,CAAC,GAAG,CAAC,CAAE;QAChK,OAAO;UACLC,UAAU,EAAE,IAAI,CAACf,KAAK,CAACgB,IAAI;UAC3BC,WAAW,EAAE,KAAK;UAClBC,mBAAmB,EAAE;YAAEC,OAAO,EAAE,CAAC,IAAI,CAACnB,KAAK,CAACoB;UAAK,CAAC;UAClDC,WAAW,EAAE;YAAEC,eAAe,EAAG3B,cAAc,CAAC4B,QAAQ,CAACC,kBAAkB;YAAE,GAAGd;UAAU;QAAC,CAAC;MAChG;IAAE,gBACFlB,KAAA,CAAAU,aAAA,CAACN,MAAM,CAAC6B,MAAM;MAACC,IAAI,EAAC;IAAO,GACvBC,MAAM,IAAK,IAAI,CAAC3B,KAAK,CAAC4B,aACX,CACC,CAAC;EACrB;AACF;AAEA,eAAe/B,kBAAkB","ignoreList":[]}
|