@wavemaker/app-rn-runtime 12.0.0-next.141209 → 12.0.0-next.141214

Sign up to get free protection for your applications and to get access to all the features.
Files changed (138) hide show
  1. app-rn-runtime/components/advanced/carousel/carousel.component.js +1 -0
  2. app-rn-runtime/components/advanced/carousel/carousel.component.js.map +1 -1
  3. app-rn-runtime/components/basic/audio/audio.component.js +9 -2
  4. app-rn-runtime/components/basic/audio/audio.component.js.map +1 -1
  5. app-rn-runtime/components/basic/audio/audio.styles.js +7 -0
  6. app-rn-runtime/components/basic/audio/audio.styles.js.map +1 -1
  7. app-rn-runtime/components/basic/custom/custom.component.js +1 -1
  8. app-rn-runtime/components/basic/custom/custom.component.js.map +1 -1
  9. app-rn-runtime/components/basic/lottie/lottie.component.js +3 -1
  10. app-rn-runtime/components/basic/lottie/lottie.component.js.map +1 -1
  11. app-rn-runtime/components/basic/search/search.component.js +1 -1
  12. app-rn-runtime/components/basic/search/search.component.js.map +1 -1
  13. app-rn-runtime/components/basic/search/search.props.js +1 -0
  14. app-rn-runtime/components/basic/search/search.props.js.map +1 -1
  15. app-rn-runtime/components/basic/skeleton/skeleton.component.js +2 -0
  16. app-rn-runtime/components/basic/skeleton/skeleton.component.js.map +1 -1
  17. app-rn-runtime/components/basic/video/video.component.js +6 -0
  18. app-rn-runtime/components/basic/video/video.component.js.map +1 -1
  19. app-rn-runtime/components/basic/video/video.styles.js +7 -1
  20. app-rn-runtime/components/basic/video/video.styles.js.map +1 -1
  21. app-rn-runtime/components/container/container.component.js +8 -1
  22. app-rn-runtime/components/container/container.component.js.map +1 -1
  23. app-rn-runtime/components/container/container.props.js +1 -0
  24. app-rn-runtime/components/container/container.props.js.map +1 -1
  25. app-rn-runtime/components/container/tabs/tabpane/tabpane.props.js +1 -0
  26. app-rn-runtime/components/container/tabs/tabpane/tabpane.props.js.map +1 -1
  27. app-rn-runtime/components/container/tabs/tabs.component.js +3 -1
  28. app-rn-runtime/components/container/tabs/tabs.component.js.map +1 -1
  29. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.component.js +4 -0
  30. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.component.js.map +1 -1
  31. app-rn-runtime/components/data/form/form-field/form-field.component.js +2 -1
  32. app-rn-runtime/components/data/form/form-field/form-field.component.js.map +1 -1
  33. app-rn-runtime/components/input/baseinput/baseinput.component.js +46 -10
  34. app-rn-runtime/components/input/baseinput/baseinput.component.js.map +1 -1
  35. app-rn-runtime/components/input/basenumber/basenumber.component.js +19 -6
  36. app-rn-runtime/components/input/basenumber/basenumber.component.js.map +1 -1
  37. app-rn-runtime/components/input/calendar/calendar.component.js +25 -0
  38. app-rn-runtime/components/input/calendar/calendar.component.js.map +1 -1
  39. app-rn-runtime/components/input/calendar/calendar.styles.js +19 -0
  40. app-rn-runtime/components/input/calendar/calendar.styles.js.map +1 -1
  41. app-rn-runtime/components/input/checkbox/checkbox.component.js +23 -3
  42. app-rn-runtime/components/input/checkbox/checkbox.component.js.map +1 -1
  43. app-rn-runtime/components/input/checkbox/checkbox.styles.js +19 -2
  44. app-rn-runtime/components/input/checkbox/checkbox.styles.js.map +1 -1
  45. app-rn-runtime/components/input/chips/chips.component.js +16 -2
  46. app-rn-runtime/components/input/chips/chips.component.js.map +1 -1
  47. app-rn-runtime/components/input/chips/chips.styles.js +8 -0
  48. app-rn-runtime/components/input/chips/chips.styles.js.map +1 -1
  49. app-rn-runtime/components/input/currency/currency.component.js +14 -4
  50. app-rn-runtime/components/input/currency/currency.component.js.map +1 -1
  51. app-rn-runtime/components/input/currency/currency.styles.js +43 -1
  52. app-rn-runtime/components/input/currency/currency.styles.js.map +1 -1
  53. app-rn-runtime/components/input/epoch/base-datetime.component.js +26 -5
  54. app-rn-runtime/components/input/epoch/base-datetime.component.js.map +1 -1
  55. app-rn-runtime/components/input/epoch/datetime/datetime.props.js +6 -0
  56. app-rn-runtime/components/input/epoch/datetime/datetime.props.js.map +1 -1
  57. app-rn-runtime/components/input/epoch/datetime/datetime.styles.js +13 -0
  58. app-rn-runtime/components/input/epoch/datetime/datetime.styles.js.map +1 -1
  59. app-rn-runtime/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js +7 -4
  60. app-rn-runtime/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js.map +1 -1
  61. app-rn-runtime/components/input/epoch/wheelpickermodal/date/date-picker-modal.props.js +3 -0
  62. app-rn-runtime/components/input/epoch/wheelpickermodal/date/date-picker-modal.props.js.map +1 -1
  63. app-rn-runtime/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js +7 -4
  64. app-rn-runtime/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js.map +1 -1
  65. app-rn-runtime/components/input/epoch/wheelpickermodal/time/time-picker-modal.props.js +3 -0
  66. app-rn-runtime/components/input/epoch/wheelpickermodal/time/time-picker-modal.props.js.map +1 -1
  67. app-rn-runtime/components/input/number/number.component.js +17 -3
  68. app-rn-runtime/components/input/number/number.component.js.map +1 -1
  69. app-rn-runtime/components/input/number/number.styles.js +24 -1
  70. app-rn-runtime/components/input/number/number.styles.js.map +1 -1
  71. app-rn-runtime/components/input/radioset/radioset.component.js +12 -7
  72. app-rn-runtime/components/input/radioset/radioset.component.js.map +1 -1
  73. app-rn-runtime/components/input/radioset/radioset.props.js +1 -0
  74. app-rn-runtime/components/input/radioset/radioset.props.js.map +1 -1
  75. app-rn-runtime/components/input/radioset/radioset.styles.js +6 -0
  76. app-rn-runtime/components/input/radioset/radioset.styles.js.map +1 -1
  77. app-rn-runtime/components/input/select/select.component.js +11 -3
  78. app-rn-runtime/components/input/select/select.component.js.map +1 -1
  79. app-rn-runtime/components/input/select/select.styles.js +24 -0
  80. app-rn-runtime/components/input/select/select.styles.js.map +1 -1
  81. app-rn-runtime/components/input/switch/switch.component.js +13 -3
  82. app-rn-runtime/components/input/switch/switch.component.js.map +1 -1
  83. app-rn-runtime/components/input/switch/switch.styles.js +15 -0
  84. app-rn-runtime/components/input/switch/switch.styles.js.map +1 -1
  85. app-rn-runtime/components/input/text/text.component.js +5 -2
  86. app-rn-runtime/components/input/text/text.component.js.map +1 -1
  87. app-rn-runtime/components/input/text/text.props.js +1 -0
  88. app-rn-runtime/components/input/text/text.props.js.map +1 -1
  89. app-rn-runtime/components/input/text/text.styles.js +3 -0
  90. app-rn-runtime/components/input/text/text.styles.js.map +1 -1
  91. app-rn-runtime/components/input/textarea/textarea.component.js +3 -1
  92. app-rn-runtime/components/input/textarea/textarea.component.js.map +1 -1
  93. app-rn-runtime/components/input/textarea/textarea.styles.js +3 -0
  94. app-rn-runtime/components/input/textarea/textarea.styles.js.map +1 -1
  95. app-rn-runtime/components/input/toggle/toggle.component.js +6 -0
  96. app-rn-runtime/components/input/toggle/toggle.component.js.map +1 -1
  97. app-rn-runtime/components/input/toggle/toggle.props.js +2 -0
  98. app-rn-runtime/components/input/toggle/toggle.props.js.map +1 -1
  99. app-rn-runtime/components/input/toggle/toggle.styles.js +7 -0
  100. app-rn-runtime/components/input/toggle/toggle.styles.js.map +1 -1
  101. app-rn-runtime/components/page/content/content.component.js +4 -19
  102. app-rn-runtime/components/page/content/content.component.js.map +1 -1
  103. app-rn-runtime/components/page/left-panel/left-panel.component.js +4 -1
  104. app-rn-runtime/components/page/left-panel/left-panel.component.js.map +1 -1
  105. app-rn-runtime/components/page/page-content/page-content.component.js +43 -12
  106. app-rn-runtime/components/page/page-content/page-content.component.js.map +1 -1
  107. app-rn-runtime/core/AppConfig.js.map +1 -1
  108. app-rn-runtime/core/base.component.js +31 -5
  109. app-rn-runtime/core/base.component.js.map +1 -1
  110. app-rn-runtime/core/components/textinput.component.js +9 -7
  111. app-rn-runtime/core/components/textinput.component.js.map +1 -1
  112. app-rn-runtime/core/storage.service.js +15 -0
  113. app-rn-runtime/core/storage.service.js.map +1 -1
  114. app-rn-runtime/core/wm-component-tree.js +58 -0
  115. app-rn-runtime/core/wm-component-tree.js.map +1 -0
  116. app-rn-runtime/package.json +13 -6
  117. app-rn-runtime/runtime/App.js +21 -2
  118. app-rn-runtime/runtime/App.js.map +1 -1
  119. app-rn-runtime/runtime/App.navigator.js +1 -0
  120. app-rn-runtime/runtime/App.navigator.js.map +1 -1
  121. app-rn-runtime/runtime/base-fragment.component.js +18 -0
  122. app-rn-runtime/runtime/base-fragment.component.js.map +1 -1
  123. app-rn-runtime/runtime/base-page.component.js +38 -2
  124. app-rn-runtime/runtime/base-page.component.js.map +1 -1
  125. app-rn-runtime/runtime/base-partial.component.js +3 -0
  126. app-rn-runtime/runtime/base-partial.component.js.map +1 -1
  127. app-rn-runtime/runtime/navigator/drawer.navigator.js +19 -10
  128. app-rn-runtime/runtime/navigator/drawer.navigator.js.map +1 -1
  129. app-rn-runtime/runtime/services/app-modal.service.js +4 -4
  130. app-rn-runtime/runtime/services/app-modal.service.js.map +1 -1
  131. app-rn-runtime/styles/theme.js +5 -0
  132. app-rn-runtime/styles/theme.js.map +1 -1
  133. app-rn-runtime/styles/theme.variables.js +1 -1
  134. app-rn-runtime/styles/theme.variables.js.map +1 -1
  135. app-rn-runtime/variables/http.service.js +5 -1
  136. app-rn-runtime/variables/http.service.js.map +1 -1
  137. app-rn-runtime/variables/live-variable.js +14 -0
  138. app-rn-runtime/variables/live-variable.js.map +1 -1
@@ -36,7 +36,6 @@ const WmCursor = /*#__PURE__*/React.memo(props => {
36
36
  export const WMTextInput = /*#__PURE__*/React.forwardRef((props, ref) => {
37
37
  var _props$customDisplayV, _props$floatingLabel;
38
38
  const [selectRange, setSelectRange] = useState(null);
39
- const [isInputFocused, setIsInputFocused] = useState(false);
40
39
  const [iMask, setIMask] = useState(null);
41
40
  const [displayCursor, setDisplayCursor] = useState(false);
42
41
  const value = useRef(props.value || '');
@@ -127,12 +126,12 @@ export const WMTextInput = /*#__PURE__*/React.forwardRef((props, ref) => {
127
126
  opts[valueExpr] = (_props$customDisplayV = props.customDisplayValue) !== null && _props$customDisplayV !== void 0 ? _props$customDisplayV : value.current;
128
127
  const textStyle = Object.assign({}, ...(isArray(props.style) ? props.style : [props.style]));
129
128
  const hideInput = props.displayformat || props.maskchar;
130
- return /*#__PURE__*/React.createElement(React.Fragment, null, props.floatingLabel ? /*#__PURE__*/React.createElement(FloatingLabel, {
131
- moveUp: !!(value.current || isInputFocused || displayValue),
129
+ return /*#__PURE__*/React.createElement(React.Fragment, null, props.background, props.floatingLabel ? /*#__PURE__*/React.createElement(FloatingLabel, {
130
+ moveUp: !!(value.current || props.isInputFocused || displayValue),
132
131
  label: (_props$floatingLabel = props.floatingLabel) !== null && _props$floatingLabel !== void 0 ? _props$floatingLabel : props.placeholder,
133
132
  style: {
134
133
  ...(props.floatingLabelStyle || []),
135
- ...(isInputFocused ? props.activeFloatingLabelStyle || {} : {})
134
+ ...(props.isInputFocused ? props.activeFloatingLabelStyle || {} : {})
136
135
  }
137
136
  }) : null, /*#__PURE__*/React.createElement(TextInput, _extends({}, props, hideInput || props.customDisplayValue ? opts : {}, {
138
137
  placeholder: props.floatingLabel || displayValue ? '' : props.placeholder,
@@ -145,14 +144,12 @@ export const WMTextInput = /*#__PURE__*/React.forwardRef((props, ref) => {
145
144
  onFocus: e => {
146
145
  var _props$onFocus;
147
146
  (_props$onFocus = props.onFocus) === null || _props$onFocus === void 0 || _props$onFocus.call(props, e);
148
- setIsInputFocused(true);
149
147
  setDisplayCursor(true);
150
148
  element.current = e.target;
151
149
  },
152
150
  onBlur: e => {
153
151
  var _props$onBlur;
154
152
  props === null || props === void 0 || (_props$onBlur = props.onBlur) === null || _props$onBlur === void 0 || _props$onBlur.call(props, e);
155
- setIsInputFocused(false);
156
153
  setDisplayCursor(false);
157
154
  },
158
155
  ref: ref,
@@ -160,6 +157,10 @@ export const WMTextInput = /*#__PURE__*/React.forwardRef((props, ref) => {
160
157
  onSelectionChange: onSelectionChange,
161
158
  caretHidden: !!(selectRange !== null && selectRange !== void 0 && selectRange.end),
162
159
  onChangeText: text => {
160
+ if (props.autoCapitalize && props.autoCapitalize === 'characters') {
161
+ onChangeText(text.toUpperCase());
162
+ return;
163
+ }
163
164
  onChangeText(text);
164
165
  }
165
166
  }, hideInput ? {
@@ -167,7 +168,8 @@ export const WMTextInput = /*#__PURE__*/React.forwardRef((props, ref) => {
167
168
  cursorColor: 'transparent',
168
169
  onChange: () => {}
169
170
  } : {}, {
170
- contextMenuHidden: !props.allowContentSelection
171
+ contextMenuHidden: !props.allowContentSelection,
172
+ autoCapitalize: props.autoCapitalize
171
173
  })), hideInput ? /*#__PURE__*/React.createElement(View, {
172
174
  style: [props.style, {
173
175
  display: 'flex',
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useRef","useState","Animated","Platform","Text","TextInput","View","isArray","IMask","FloatingLabel","WmCursor","memo","props","opacityAnimation","Value","current","runAnimation","timing","toValue","duration","useNativeDriver","start","createElement","testID","style","backgroundColor","color","width","marginHorizontal","height","opacity","WMTextInput","forwardRef","ref","_props$customDisplayV","_props$floatingLabel","selectRange","setSelectRange","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":[]}
@@ -18,6 +18,21 @@ export class StorageService {
18
18
  removeItem(key, callback) {
19
19
  return AsyncStorage.removeItem(this.getKey(key), callback);
20
20
  }
21
+ async getAll() {
22
+ const keys = await AsyncStorage.getAllKeys();
23
+ const entries = await Promise.all(keys.map(async k => {
24
+ const v = await AsyncStorage.getItem(k);
25
+ return {
26
+ key: k,
27
+ value: v
28
+ };
29
+ }));
30
+ const o = {};
31
+ entries.forEach(e => {
32
+ o[e.key] = e.value;
33
+ });
34
+ return o;
35
+ }
21
36
  }
22
37
  export default new StorageService();
23
38
  //# sourceMappingURL=storage.service.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["AsyncStorage","StorageService","constructor","_defineProperty","getKey","key","target","getItem","callback","setItem","value","removeItem"],"sources":["storage.service.ts"],"sourcesContent":["import AsyncStorage from '@react-native-async-storage/async-storage';\n\nexport class StorageService {\n public target = 'GLOBAL';\n\n private getKey(key: string) {\n return `${this.target}_${key}`;\n }\n \n getItem(key: string, callback?: (error?: Error | null, result?: string | null) => void): Promise<string | null> {\n return AsyncStorage.getItem(this.getKey(key), callback);\n }\n setItem(key: string, value: string, callback?: (error?: Error | null) => void): Promise<void> {\n return AsyncStorage.setItem(this.getKey(key), value, callback);\n }\n removeItem(key: string, callback?: (error?: Error | null) => void): Promise<void> {\n return AsyncStorage.removeItem(this.getKey(key), callback);\n }\n}\n\nexport default new StorageService();\n"],"mappings":";;;AAAA,OAAOA,YAAY,MAAM,2CAA2C;AAEpE,OAAO,MAAMC,cAAc,CAAC;EAAAC,YAAA;IAAAC,eAAA,iBACV,QAAQ;EAAA;EAEhBC,MAAMA,CAACC,GAAW,EAAE;IAC1B,OAAO,GAAG,IAAI,CAACC,MAAM,IAAID,GAAG,EAAE;EAChC;EAEAE,OAAOA,CAACF,GAAW,EAAEG,QAAiE,EAA0B;IAC9G,OAAOR,YAAY,CAACO,OAAO,CAAC,IAAI,CAACH,MAAM,CAACC,GAAG,CAAC,EAAEG,QAAQ,CAAC;EACzD;EACAC,OAAOA,CAACJ,GAAW,EAAEK,KAAa,EAAEF,QAAyC,EAAiB;IAC5F,OAAOR,YAAY,CAACS,OAAO,CAAC,IAAI,CAACL,MAAM,CAACC,GAAG,CAAC,EAAEK,KAAK,EAAEF,QAAQ,CAAC;EAChE;EACAG,UAAUA,CAACN,GAAW,EAAEG,QAAyC,EAAiB;IAChF,OAAOR,YAAY,CAACW,UAAU,CAAC,IAAI,CAACP,MAAM,CAACC,GAAG,CAAC,EAAEG,QAAQ,CAAC;EAC5D;AACF;AAEA,eAAe,IAAIP,cAAc,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["AsyncStorage","StorageService","constructor","_defineProperty","getKey","key","target","getItem","callback","setItem","value","removeItem","getAll","keys","getAllKeys","entries","Promise","all","map","k","v","o","forEach","e"],"sources":["storage.service.ts"],"sourcesContent":["import AsyncStorage from '@react-native-async-storage/async-storage';\n\nexport class StorageService {\n public target = 'GLOBAL';\n\n private getKey(key: string) {\n return `${this.target}_${key}`;\n }\n \n getItem(key: string, callback?: (error?: Error | null, result?: string | null) => void): Promise<string | null> {\n return AsyncStorage.getItem(this.getKey(key), callback);\n }\n setItem(key: string, value: string, callback?: (error?: Error | null) => void): Promise<void> {\n return AsyncStorage.setItem(this.getKey(key), value, callback);\n }\n removeItem(key: string, callback?: (error?: Error | null) => void): Promise<void> {\n return AsyncStorage.removeItem(this.getKey(key), callback);\n }\n\n async getAll() {\n const keys = await AsyncStorage.getAllKeys();\n const entries = await Promise.all(keys.map(async k => {\n const v = await AsyncStorage.getItem(k);\n return {\n key: k,\n value: v\n };\n }));\n const o = {} as any;\n entries.forEach((e) => {\n o[e.key] = e.value;\n });\n return o;\n }\n}\n\nexport default new StorageService();\n"],"mappings":";;;AAAA,OAAOA,YAAY,MAAM,2CAA2C;AAEpE,OAAO,MAAMC,cAAc,CAAC;EAAAC,YAAA;IAAAC,eAAA,iBACV,QAAQ;EAAA;EAEhBC,MAAMA,CAACC,GAAW,EAAE;IAC1B,OAAO,GAAG,IAAI,CAACC,MAAM,IAAID,GAAG,EAAE;EAChC;EAEAE,OAAOA,CAACF,GAAW,EAAEG,QAAiE,EAA0B;IAC9G,OAAOR,YAAY,CAACO,OAAO,CAAC,IAAI,CAACH,MAAM,CAACC,GAAG,CAAC,EAAEG,QAAQ,CAAC;EACzD;EACAC,OAAOA,CAACJ,GAAW,EAAEK,KAAa,EAAEF,QAAyC,EAAiB;IAC5F,OAAOR,YAAY,CAACS,OAAO,CAAC,IAAI,CAACL,MAAM,CAACC,GAAG,CAAC,EAAEK,KAAK,EAAEF,QAAQ,CAAC;EAChE;EACAG,UAAUA,CAACN,GAAW,EAAEG,QAAyC,EAAiB;IAChF,OAAOR,YAAY,CAACW,UAAU,CAAC,IAAI,CAACP,MAAM,CAACC,GAAG,CAAC,EAAEG,QAAQ,CAAC;EAC5D;EAEA,MAAMI,MAAMA,CAAA,EAAG;IACb,MAAMC,IAAI,GAAG,MAAMb,YAAY,CAACc,UAAU,CAAC,CAAC;IAC5C,MAAMC,OAAO,GAAG,MAAMC,OAAO,CAACC,GAAG,CAACJ,IAAI,CAACK,GAAG,CAAC,MAAMC,CAAC,IAAI;MACpD,MAAMC,CAAC,GAAG,MAAMpB,YAAY,CAACO,OAAO,CAACY,CAAC,CAAC;MACvC,OAAO;QACLd,GAAG,EAAEc,CAAC;QACNT,KAAK,EAAEU;MACT,CAAC;IACH,CAAC,CAAC,CAAC;IACH,MAAMC,CAAC,GAAG,CAAC,CAAQ;IACnBN,OAAO,CAACO,OAAO,CAAEC,CAAC,IAAK;MACrBF,CAAC,CAACE,CAAC,CAAClB,GAAG,CAAC,GAAGkB,CAAC,CAACb,KAAK;IACpB,CAAC,CAAC;IACF,OAAOW,CAAC;EACV;AACF;AAEA,eAAe,IAAIpB,cAAc,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,58 @@
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
+ let id = 0;
5
+ export class WmComponentNode {
6
+ constructor(args) {
7
+ var _args$children;
8
+ _defineProperty(this, "type", void 0);
9
+ _defineProperty(this, "_classnameMap", new Map());
10
+ _defineProperty(this, "id", ++id);
11
+ _defineProperty(this, "_classnameVal", '');
12
+ _defineProperty(this, "parent", void 0);
13
+ _defineProperty(this, "children", []);
14
+ _defineProperty(this, "instance", void 0);
15
+ this.type = args.type;
16
+ this.instance = args.instance;
17
+ (_args$children = args.children) === null || _args$children === void 0 || _args$children.forEach(c => this.add(c));
18
+ }
19
+ refresh(only) {
20
+ if (!only || only(this)) {
21
+ var _this$instance;
22
+ (_this$instance = this.instance) === null || _this$instance === void 0 || _this$instance.refresh();
23
+ }
24
+ if (only) {
25
+ var _this$children;
26
+ (_this$children = this.children) === null || _this$children === void 0 || _this$children.forEach(c => {
27
+ c === null || c === void 0 || c.refresh(only);
28
+ });
29
+ }
30
+ }
31
+ get classname() {
32
+ return this._classnameVal;
33
+ }
34
+ hasClass(name) {
35
+ return this._classnameMap.has(name);
36
+ }
37
+ add(node) {
38
+ if (node.parent !== this) {
39
+ var _node$parent;
40
+ (_node$parent = node.parent) === null || _node$parent === void 0 || _node$parent.remove(this);
41
+ this.children.push(node);
42
+ node.parent = this;
43
+ node.refresh();
44
+ }
45
+ }
46
+ remove(node) {
47
+ const i = this.children.findIndex(n => n === node);
48
+ if (i >= 0) {
49
+ var _this$children2;
50
+ this.children.splice(i, 1);
51
+ node.parent = undefined;
52
+ (_this$children2 = this.children) === null || _this$children2 === void 0 || _this$children2.forEach(c => {
53
+ c.refresh();
54
+ });
55
+ }
56
+ }
57
+ }
58
+ //# sourceMappingURL=wm-component-tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["id","WmComponentNode","constructor","args","_args$children","_defineProperty","Map","type","instance","children","forEach","c","add","refresh","only","_this$instance","_this$children","classname","_classnameVal","hasClass","name","_classnameMap","has","node","parent","_node$parent","remove","push","i","findIndex","n","_this$children2","splice","undefined"],"sources":["wm-component-tree.ts"],"sourcesContent":["import { BaseComponent } from \"./base.component\";\n\nlet id = 0;\n\nexport class WmComponentNode {\n type?: string;\n private _classnameMap: Map<string, boolean> = new Map();\n private id = ++id;\n private _classnameVal = '';\n parent?: WmComponentNode;\n readonly children: WmComponentNode[] = [];\n instance?: BaseComponent<any, any, any>;\n \n\n public constructor(args: {\n type?: string,\n classname?: string,\n children?: WmComponentNode[],\n instance?: BaseComponent<any, any, any>\n }) {\n this.type = args.type;\n this.instance = args.instance;\n args.children?.forEach(c => this.add(c));\n }\n\n private refresh(only?: (node: WmComponentNode) => boolean) {\n if (!only || only(this)) {\n this.instance?.refresh();\n }\n if (only) {\n this.children?.forEach((c) => {\n c?.refresh(only);\n });\n }\n }\n\n get classname() {\n return this._classnameVal;\n }\n\n hasClass(name: string) {\n return this._classnameMap.has(name);\n }\n\n add(node: WmComponentNode) {\n if (node.parent !== this) {\n node.parent?.remove(this);\n this.children.push(node);\n node.parent = this;\n node.refresh();\n }\n }\n\n remove(node: WmComponentNode) {\n const i = this.children.findIndex((n) => n === node);\n if (i >= 0) {\n this.children.splice(i, 1);\n node.parent = undefined;\n this.children?.forEach((c) => {\n c.refresh();\n });\n }\n }\n}"],"mappings":";;;AAEA,IAAIA,EAAE,GAAG,CAAC;AAEV,OAAO,MAAMC,eAAe,CAAC;EAUlBC,WAAWA,CAACC,IAKlB,EAAE;IAAA,IAAAC,cAAA;IAAAC,eAAA;IAAAA,eAAA,wBAb2C,IAAIC,GAAG,CAAC,CAAC;IAAAD,eAAA,aAC1C,EAAEL,EAAE;IAAAK,eAAA,wBACO,EAAE;IAAAA,eAAA;IAAAA,eAAA,mBAEa,EAAE;IAAAA,eAAA;IAUrC,IAAI,CAACE,IAAI,GAAGJ,IAAI,CAACI,IAAI;IACrB,IAAI,CAACC,QAAQ,GAAGL,IAAI,CAACK,QAAQ;IAC7B,CAAAJ,cAAA,GAAAD,IAAI,CAACM,QAAQ,cAAAL,cAAA,eAAbA,cAAA,CAAeM,OAAO,CAACC,CAAC,IAAI,IAAI,CAACC,GAAG,CAACD,CAAC,CAAC,CAAC;EAC5C;EAEQE,OAAOA,CAACC,IAAyC,EAAE;IACvD,IAAI,CAACA,IAAI,IAAIA,IAAI,CAAC,IAAI,CAAC,EAAE;MAAA,IAAAC,cAAA;MACrB,CAAAA,cAAA,OAAI,CAACP,QAAQ,cAAAO,cAAA,eAAbA,cAAA,CAAeF,OAAO,CAAC,CAAC;IAC5B;IACA,IAAIC,IAAI,EAAE;MAAA,IAAAE,cAAA;MACN,CAAAA,cAAA,OAAI,CAACP,QAAQ,cAAAO,cAAA,eAAbA,cAAA,CAAeN,OAAO,CAAEC,CAAC,IAAK;QAC1BA,CAAC,aAADA,CAAC,eAADA,CAAC,CAAEE,OAAO,CAACC,IAAI,CAAC;MACpB,CAAC,CAAC;IACN;EACJ;EAEA,IAAIG,SAASA,CAAA,EAAG;IACZ,OAAO,IAAI,CAACC,aAAa;EAC7B;EAEAC,QAAQA,CAACC,IAAY,EAAE;IACnB,OAAO,IAAI,CAACC,aAAa,CAACC,GAAG,CAACF,IAAI,CAAC;EACvC;EAEAR,GAAGA,CAACW,IAAqB,EAAE;IACvB,IAAIA,IAAI,CAACC,MAAM,KAAK,IAAI,EAAE;MAAA,IAAAC,YAAA;MACtB,CAAAA,YAAA,GAAAF,IAAI,CAACC,MAAM,cAAAC,YAAA,eAAXA,YAAA,CAAaC,MAAM,CAAC,IAAI,CAAC;MACzB,IAAI,CAACjB,QAAQ,CAACkB,IAAI,CAACJ,IAAI,CAAC;MACxBA,IAAI,CAACC,MAAM,GAAG,IAAI;MAClBD,IAAI,CAACV,OAAO,CAAC,CAAC;IAClB;EACJ;EAEAa,MAAMA,CAACH,IAAqB,EAAE;IAC1B,MAAMK,CAAC,GAAG,IAAI,CAACnB,QAAQ,CAACoB,SAAS,CAAEC,CAAC,IAAKA,CAAC,KAAKP,IAAI,CAAC;IACpD,IAAIK,CAAC,IAAI,CAAC,EAAE;MAAA,IAAAG,eAAA;MACR,IAAI,CAACtB,QAAQ,CAACuB,MAAM,CAACJ,CAAC,EAAE,CAAC,CAAC;MAC1BL,IAAI,CAACC,MAAM,GAAGS,SAAS;MACvB,CAAAF,eAAA,OAAI,CAACtB,QAAQ,cAAAsB,eAAA,eAAbA,eAAA,CAAerB,OAAO,CAAEC,CAAC,IAAK;QAC1BA,CAAC,CAACE,OAAO,CAAC,CAAC;MACf,CAAC,CAAC;IACN;EACJ;AACJ","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wavemaker/app-rn-runtime",
3
- "version": "12.0.0-next.141209",
3
+ "version": "12.0.0-next.141214",
4
4
  "description": "''",
5
5
  "main": "index",
6
6
  "module": "index",
@@ -11,7 +11,7 @@
11
11
  "./": "./"
12
12
  },
13
13
  "scripts": {
14
- "test": "jest -u --coverage",
14
+ "test": "jest --coverage",
15
15
  "test:theme": "jest \"test/styles/theme.spec.ts\"",
16
16
  "typescript": "tsc --noEmit",
17
17
  "copy-resources": "mkdir -p ./dist && cp -r ./lib/module ./dist && cp ./package.json ./dist/module",
@@ -22,7 +22,8 @@
22
22
  "example": "yarn --cwd example",
23
23
  "pods": "cd example && pod-install --quiet",
24
24
  "bootstrap": "yarn example && yarn && yarn pods",
25
- "watch": "npm-watch build"
25
+ "watch": "npm-watch build",
26
+ "test:coverage": "jest --coverage --forceExit; node scripts/combineCoverageHtmlCSS.js"
26
27
  },
27
28
  "keywords": [
28
29
  "react-native",
@@ -50,7 +51,7 @@
50
51
  "@react-navigation/drawer": "6.6.3",
51
52
  "@react-navigation/native": "6.1.7",
52
53
  "@react-navigation/stack": "6.3.29",
53
- "@wavemaker/variables": "12.0.0-next.141209",
54
+ "@wavemaker/variables": "12.0.0-next.141214",
54
55
  "axios": "1.6.8",
55
56
  "color": "4.2.3",
56
57
  "cross-env": "7.0.3",
@@ -141,7 +142,7 @@
141
142
  "typescript": "5.1.3",
142
143
  "victory-native": "36.6.11",
143
144
  "yargs": "16.2.0",
144
- "@wavemaker/variables": "12.0.0-next.141209"
145
+ "@wavemaker/variables": "12.0.0-next.141214"
145
146
  },
146
147
  "jest": {
147
148
  "preset": "jest-expo",
@@ -156,10 +157,16 @@
156
157
  "collectCoverageFrom": [
157
158
  "**/*.{js,jsx,ts,tsx}",
158
159
  "!**/coverage/**",
160
+ "!**/.yalc/**",
159
161
  "!**/node_modules/**",
160
162
  "!**/babel.config.js",
161
163
  "!**/jest.setup.js",
162
- "!**/dist/**"
164
+ "!**/dist/**",
165
+ "!**/scripts/**",
166
+ "!**/typings/**",
167
+ "!**/src/variables/**",
168
+ "!**/src/actions/**",
169
+ "!**/src/runtime/**"
163
170
  ],
164
171
  "coverageDirectory": "./dist/reports/coverage",
165
172
  "transform": {
@@ -50,6 +50,7 @@ import { getValidJSON, parseErrors } from '@wavemaker/app-rn-runtime/variables/u
50
50
  import MaterialCommunityIconsFont from '@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf';
51
51
  import * as SplashScreen from 'expo-splash-screen';
52
52
  import { WmMemo } from './memo.component';
53
+ import { VariableEvents } from '../variables/base-variable';
53
54
  //some old react libraries need this
54
55
  View['propTypes'] = {
55
56
  style: ProtoTypes.any
@@ -83,6 +84,7 @@ const SUPPORTED_SERVICES = {
83
84
  AppDisplayManagerService: AppDisplayManagerService,
84
85
  i18nService: AppI18nService
85
86
  };
87
+ global['axios'] = axios;
86
88
  export default class BaseApp extends React.Component {
87
89
  constructor(props) {
88
90
  super(props);
@@ -173,6 +175,10 @@ export default class BaseApp extends React.Component {
173
175
  var _this$commonPartial2;
174
176
  return (_this$commonPartial2 = this.commonPartial) === null || _this$commonPartial2 === void 0 ? void 0 : _this$commonPartial2.Widgets;
175
177
  }
178
+ async onBeforePageLeave(currentPage, nextPage) {
179
+ //method can be override by the user from studio;
180
+ return true;
181
+ }
176
182
  goToPage(pageName, params) {
177
183
  var _this$appConfig$curre2;
178
184
  return (_this$appConfig$curre2 = this.appConfig.currentPage) === null || _this$appConfig$curre2 === void 0 ? void 0 : _this$appConfig$curre2.goToPage(pageName, params);
@@ -242,9 +248,11 @@ export default class BaseApp extends React.Component {
242
248
  config.headers = config.headers || {};
243
249
  config.headers['X-Requested-With'] = 'XMLHttpRequest';
244
250
  console.log('onBeforeService call invoked on ' + config.url);
251
+ this.notify('beforeServiceCall', config);
245
252
  return this.onBeforeServiceCall(config);
246
253
  }), axios.interceptors.response.use(response => {
247
254
  this.onServiceSuccess(response.data, response);
255
+ this.notify('afterServiceCall', response.config, response);
248
256
  return response;
249
257
  }, error => {
250
258
  var _errorDetails, _errorDetails2, _error$response, _error$response2, _error$response3, _error$response4;
@@ -263,6 +271,7 @@ export default class BaseApp extends React.Component {
263
271
  var _this$appConfig$curre5, _this$appConfig$curre6;
264
272
  ((_this$appConfig$curre5 = this.appConfig.currentPage) === null || _this$appConfig$curre5 === void 0 ? void 0 : _this$appConfig$curre5.pageName) !== 'Login' && ((_this$appConfig$curre6 = this.appConfig.currentPage) === null || _this$appConfig$curre6 === void 0 ? void 0 : _this$appConfig$curre6.goToPage('Login'));
265
273
  }
274
+ this.notify('afterServiceCall', error.config, error);
266
275
  return Promise.reject(error);
267
276
  })];
268
277
  }
@@ -284,12 +293,22 @@ export default class BaseApp extends React.Component {
284
293
  AppSpinnerService.show({
285
294
  spinner: this.appConfig.spinner
286
295
  });
287
- this.triggerStartUpVariables().then(() => {
296
+ this.cleanup.push(...Object.values(this.Variables).map(v => {
297
+ return v.subscribe(VariableEvents.BEFORE_INVOKE, () => {
298
+ this.notify(VariableEvents.BEFORE_INVOKE, v);
299
+ });
300
+ }));
301
+ this.cleanup.push(...Object.values(this.Variables).map(v => {
302
+ return v.subscribe(VariableEvents.AFTER_INVOKE, () => {
303
+ this.notify(VariableEvents.AFTER_INVOKE, v);
304
+ });
305
+ }));
306
+ this.startUpActions.map(a => this.Actions[a] && this.Actions[a].invoke());
307
+ return this.triggerStartUpVariables().then(() => {
288
308
  this.onAppVariablesReady();
289
309
  this.isStarted = true;
290
310
  this.forceUpdate();
291
311
  }, () => {});
292
- this.startUpActions.map(a => this.Actions[a] && this.Actions[a].invoke());
293
312
  }
294
313
  componentWillUnmount() {
295
314
  this.axiosInterceptorIds.map(id => {
@@ -1 +1 @@
1
- {"version":3,"names":["React","axios","Platform","TouchableOpacity","View","StatusBar","GestureHandlerRootView","ProtoTypes","SafeAreaProvider","SafeAreaInsetsContext","SafeAreaView","DefaultTheme","Provider","PaperProvider","Linking","NativeModulesProxy","WebBrowser","get","last","RENDER_LOGGER","EventNotifier","ThemeProvider","StorageService","ConstantService","NetworkService","injector","formatters","deepCopy","isWebPreviewMode","Utils","ModalProvider","FixedViewContainer","ToastProvider","NavigationServiceProvider","PartialProvider","WmNetworkInfoToaster","ThemeVariables","WmMessage","Animatedview","AppI18nService","Watcher","preparePatch","AppDisplayManagerService","AppModalService","AppToastService","AppPartialService","AppSpinnerService","AppNavigator","SecurityProvider","CameraProvider","CameraService","ScanProvider","ScanService","AppSecurityService","getValidJSON","parseErrors","MaterialCommunityIconsFont","SplashScreen","WmMemo","style","any","MIN_TIME_BETWEEN_REFRESH_CYCLES","DrawerImpl","constructor","onChange","_defineProperty","setContent","content","getContent","setAnimation","animation","getAnimation","SUPPORTED_SERVICES","CONSTANTS","i18nService","BaseApp","Component","props","ROOT","colors","primary","INSTANCE","primaryColor","refresh","preventAutoHideAsync","setTimeout","hideAsync","appConfig","app","drawer","setDefaultOptions","spinner","refreshAfterWait","baseUrl","url","wait","bindServiceInterceptors","complete","reload","debug","_this$commonPartial","_this$appConfig$curre","forceUpdate","commonPartial","currentPage","watcher","check","cleanup","push","notifier","subscribe","networkState","networkStatus","event","fn","eventNotifier","notify","args","activePage","Widgets","_this$commonPartial2","goToPage","pageName","params","_this$appConfig$curre2","goBack","_this$appConfig$curre3","openUrl","_this$appConfig$curre4","onBeforeServiceCall","config","isSkeletonEnabled","loader","onServiceSuccess","data","response","onServiceError","errorMsg","error","invokeNativeApi","key","EmbedCommModule","OS","sendToNative","Promise","reject","triggerPageReady","activePageName","activePageScope","onPageReady","setTimezone","timezone","openBrowser","window","open","startsWith","target","openBrowserAsync","openURL","resolve","axiosInterceptorIds","interceptors","request","use","headers","console","log","_errorDetails","_errorDetails2","_error$response","_error$response2","_error$response3","_error$response4","errorDetails","errMsg","errors","message","includes","status","_this$appConfig$curre5","_this$appConfig$curre6","eval","failOnError","call","e","triggerStartUpVariables","all","startUpVariables","map","s","Variables","invoke","catch","componentDidMount","show","then","onAppVariablesReady","isStarted","startUpActions","a","Actions","componentWillUnmount","id","eject","forEach","getProviders","createElement","value","renderToasters","toastsOpened","length","render","watch","refreshCount","Fragment","o","i","theme","position","width","bottom","elevation","elevationIndex","zIndex","styles","onPress","onClick","text","name","type","caption","hideclose","renderDialogs","_last","modalsOpened","animatedRefs","modalOptions","onStartShouldSetResponder","onResponderEnd","isModal","hideModal","appModal","centered","centeredModal","modalStyle","entryanimation","delay","animationdelay","ref","animatedRef","appModalContent","contentStyle","alignItems","evt","stopPropagation","renderDisplayManager","displayOptions","displayViewContainer","renderIconsViewSupportForWeb","getSelectedLocale","selectedLocale","getDependency","serviceName","service","renderApp","autoUpdateVariables","_this$Variables$value","invokeOnParamChange","paperTheme","Consumer","insets","top","left","right","_this$props","_this$appConfig$drawe","_this$appConfig$drawe2","flex","container","landingPage","landingPageParams","hideDrawer","drawerContent","drawerAnimation","appLocale","flexDirection","justifyContent","backgroundColor","height"],"sources":["App.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport axios, { AxiosError, InternalAxiosRequestConfig, AxiosResponse } from 'axios';\nimport { Platform, TouchableOpacity, View, ViewStyle, StatusBar } from 'react-native';\nimport { GestureHandlerRootView } from 'react-native-gesture-handler';\nimport ProtoTypes from 'prop-types';\nimport { SafeAreaProvider, SafeAreaInsetsContext, SafeAreaView } from 'react-native-safe-area-context';\nimport { DefaultTheme, Provider as PaperProvider } from 'react-native-paper';\nimport { Linking } from 'react-native';\nimport { NativeModulesProxy } from 'expo-modules-core';\nimport * as WebBrowser from 'expo-web-browser';\nimport { get, last } from 'lodash';\nimport { RENDER_LOGGER } from '@wavemaker/app-rn-runtime/core/logger';\nimport EventNotifier from '@wavemaker/app-rn-runtime/core/event-notifier';\nimport { ThemeProvider } from '@wavemaker/app-rn-runtime/styles/theme';\nimport AppConfig, { Drawer } from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport StorageService from '@wavemaker/app-rn-runtime/core/storage.service';\nimport ConstantService from '@wavemaker/app-rn-runtime/core/constant.service';\nimport NetworkService, { NetworkState } from '@wavemaker/app-rn-runtime/core/network.service';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport formatters from '@wavemaker/app-rn-runtime/core/formatters';\nimport { deepCopy, isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\nimport * as Utils from '@wavemaker/app-rn-runtime/core/utils';\nimport { ModalProvider } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport { FixedViewContainer } from '@wavemaker/app-rn-runtime/core/fixed-view.component';\nimport { ToastProvider } from '@wavemaker/app-rn-runtime/core/toast.service';\nimport NavigationService, { NavigationServiceProvider } from '@wavemaker/app-rn-runtime/core/navigation.service';\nimport { PartialProvider } from '@wavemaker/app-rn-runtime/core/partial.service';\nimport WmNetworkInfoToaster from '@wavemaker/app-rn-runtime/components/advanced/network-info-toaster/network-info-toaster.component';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nimport WmMessage from '@wavemaker/app-rn-runtime/components/basic/message/message.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport AppI18nService from '@wavemaker/app-rn-runtime/runtime/services/app-i18n.service';\n\nimport { Watcher } from './watcher';\nimport { preparePatch } from './lib-patch';\nimport AppDisplayManagerService from './services/app-display-manager.service';\nimport AppModalService from './services/app-modal.service';\nimport AppToastService from './services/app-toast.service';\nimport AppPartialService from './services/partial.service';\nimport AppSpinnerService from './services/app-spinner.service';\nimport { AppNavigator } from './App.navigator';\nimport { SecurityProvider } from '../core/security.service';\nimport { CameraProvider } from '../core/device/camera-service';\nimport CameraService from './services/device/camera-service';\nimport { ScanProvider } from '../core/device/scan-service';\nimport ScanService from './services/device/scan-service';\nimport AppSecurityService from './services/app-security.service';\nimport {getValidJSON, parseErrors} from '@wavemaker/app-rn-runtime/variables/utils/variable.utils';\nimport MaterialCommunityIconsFont from '@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf';\n\nimport * as SplashScreen from 'expo-splash-screen';\nimport BasePartial from './base-partial.component';\nimport BasePage from './base-page.component';\nimport { WmMemo } from './memo.component';\n\ndeclare const window: any;\n\n//some old react libraries need this\n((View as any)['propTypes'] = { style: ProtoTypes.any})\n\nconst MIN_TIME_BETWEEN_REFRESH_CYCLES = 200;\n\nclass DrawerImpl implements Drawer {\n content: ReactNode;\n animation: string = 'slide-in';\n\n constructor(private onChange: () => void) {\n\n }\n\n setContent(content: ReactNode) {\n this.content = content;\n this.onChange();\n }\n\n getContent() {\n return this.content;\n }\n\n setAnimation(animation: string) {\n this.animation = animation;\n this.onChange();\n }\n\n getAnimation() {\n return this.animation;\n }\n}\nconst SUPPORTED_SERVICES = {\n Utils: Utils,\n CONSTANTS: ConstantService,\n StorageService: StorageService,\n AppDisplayManagerService: AppDisplayManagerService,\n i18nService: AppI18nService\n};\n\nexport default abstract class BaseApp extends React.Component implements NavigationService {\n\n Actions: any = {};\n Variables: any = {};\n onAppVariablesReady = () => {};\n isStarted = false;\n appConfig = injector.get<AppConfig>('APP_CONFIG');\n private eventNotifier = new EventNotifier();\n public baseUrl = '';\n public targetPlatform = 'NATIVE_MOBILE';\n public cleanup = [] as Function[];\n public commonPartial: BasePartial = null as any;\n private startUpVariables: string[] = [];\n private startUpActions: string[] = [];\n private autoUpdateVariables: string[] = [];\n private axiosInterceptorIds: number[] = [];\n public formatters = formatters;\n public serviceDefinitions = {} as any;\n private animatedRef: any;\n public modalsOpened: number = 0;\n public toastsOpened: number = 0;\n public watcher: Watcher = Watcher.ROOT;\n public paperTheme = {\n ...DefaultTheme,\n colors: {\n ...DefaultTheme.colors,\n primary: ThemeVariables.INSTANCE.primaryColor\n }\n };\n public lib = preparePatch(() => {\n this.refresh();\n });\n\n public networkStatus = {} as NetworkState;\n\n constructor(props: any) {\n super(props);\n SplashScreen.preventAutoHideAsync();\n setTimeout(() => SplashScreen.hideAsync(), 10000);\n this.appConfig.app = this;\n this.appConfig.drawer = new DrawerImpl(() => this.refresh());\n AppSpinnerService.setDefaultOptions({\n spinner: this.appConfig.spinner\n });\n let refreshAfterWait = false;\n this.baseUrl = this.appConfig.url;\n let wait = 0;\n this.bindServiceInterceptors();\n this.appConfig.refresh = (complete = false) => {\n if (complete) {\n this.reload();\n return;\n }\n if (!wait) {\n RENDER_LOGGER.debug('refreshing the app...');\n wait = MIN_TIME_BETWEEN_REFRESH_CYCLES;\n refreshAfterWait = false;\n setTimeout(() => {\n this.forceUpdate();\n this.commonPartial?.forceUpdate();\n this.appConfig.currentPage?.forceUpdate();\n this.watcher.check();\n });\n setTimeout(() => {\n wait = 0;\n refreshAfterWait && this.appConfig.refresh();\n }, wait);\n } else {\n RENDER_LOGGER.debug('will refresh the app in the next cycle.');\n refreshAfterWait = true;\n }\n }\n this.cleanup.push(\n NetworkService.notifier.subscribe('onNetworkStateChange', (networkState: NetworkState) => {\n this.networkStatus = {...networkState};\n this.refresh();\n }\n ));\n }\n\n subscribe(event: string, fn: Function) {\n return this.eventNotifier.subscribe(event, fn);\n }\n\n notify(event: string, ...args: any) {\n return this.eventNotifier.notify(event, args);\n }\n\n get activePage() {\n return this.appConfig.currentPage;\n }\n\n get Widgets() {\n return this.commonPartial?.Widgets;\n }\n\n goToPage(pageName: string, params: any) {\n return this.appConfig.currentPage?.goToPage(pageName, params);\n }\n\n goBack(pageName: string, params: any) {\n return this.appConfig.currentPage?.goBack(pageName, params);\n }\n\n openUrl(url: string, params?: any) {\n return this.appConfig.currentPage?.openUrl(url, params);\n }\n\n onBeforeServiceCall(config: InternalAxiosRequestConfig) {\n //DO NOT WRITE CODE HERE:\n //This is a placeholder for the WaveMaker developer.\n return config;\n }\n\n isSkeletonEnabled() {\n return this.appConfig.spinner.loader == \"skeleton\";\n }\n\n onServiceSuccess(data: any, response: AxiosResponse) {\n //DO NOT WRITE CODE HERE:\n //This is a placeholder for the WaveMaker developer.\n }\n\n onServiceError(errorMsg: any, error: AxiosError<any>) {\n //DO NOT WRITE CODE HERE:\n //This is a placeholder for the WaveMaker developer.\n }\n\n invokeNativeApi(key: string, data: Object) {\n if (NativeModulesProxy.EmbedCommModule\n && (Platform.OS === 'android' || Platform.OS === 'ios')) {\n return NativeModulesProxy.EmbedCommModule.sendToNative(key, data || {});\n } else {\n return Promise.reject('Not able to invoke Native API in this platform.');\n }\n }\n\n triggerPageReady(activePageName: string, activePageScope: BasePage) {\n this.onPageReady(activePageName, activePageScope);\n }\n\n onPageReady(activePageName: string, activePageScope: BasePage) {\n\n }\n\n setTimezone(timezone: any){\n AppI18nService.setTimezone(timezone);\n }\n\n get spinner() {\n return AppSpinnerService;\n }\n\n openBrowser(url: string, params = {} as any) {\n if (url) {\n if (isWebPreviewMode()) {\n window.open(url, '_blank');\n } else if (url.startsWith('http') && params.target === '_blank') {\n WebBrowser.openBrowserAsync(url);\n } else {\n return Linking.openURL(url);\n }\n }\n return Promise.resolve();\n }\n\n // To support old api\n reload() {}\n\n bindServiceInterceptors() {\n this.axiosInterceptorIds = [\n axios.interceptors.request.use((config: InternalAxiosRequestConfig) => {\n const url = config.url as string;\n if (!(url.startsWith('http://') || url.startsWith(\"https://\"))) {\n config.url = this.appConfig.url + '/' + url;\n }\n config.headers = config.headers || {};\n config.headers['X-Requested-With'] = 'XMLHttpRequest';\n console.log('onBeforeService call invoked on ' + config.url);\n return this.onBeforeServiceCall(config);\n }),\n axios.interceptors.response.use(\n (response: AxiosResponse) => {\n this.onServiceSuccess(response.data, response);\n return response;\n },(error: AxiosError<any>) => {\n let errorDetails: any = error.response, errMsg;\n errorDetails = getValidJSON(errorDetails?.data) || errorDetails?.data;\n if (errorDetails && errorDetails.errors) {\n errMsg = parseErrors(errorDetails.errors) || \"Service Call Failed\";\n } else {\n errMsg = error.message || \"Service Call Failed\";\n }\n error.message = errMsg;\n console.error(`Error ${errMsg} recieved from ${error.response?.config?.url}`);\n this.onServiceError(error.message, error);\n if (error.response?.config.url?.startsWith(this.appConfig.url) && !error.response?.config.url?.includes('/services/') && error.response?.status === 401) {\n this.appConfig.currentPage?.pageName !== 'Login' && this.appConfig.currentPage?.goToPage('Login');\n }\n return Promise.reject(error)\n })\n ];\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 triggerStartUpVariables() {\n return Promise.all(this.startUpVariables.map(s => this.Variables[s] && this.Variables[s].invoke()))\n .catch(() => {});\n }\n\n componentDidMount() {\n AppSpinnerService.show({\n spinner: this.appConfig.spinner\n });\n this.triggerStartUpVariables()\n .then(() => {\n this.onAppVariablesReady();\n this.isStarted = true;\n this.forceUpdate();\n }, () => {});\n this.startUpActions.map(a => this.Actions[a] && this.Actions[a].invoke());\n }\n\n componentWillUnmount(): void {\n this.axiosInterceptorIds.map(id => {\n axios.interceptors.request.eject(id);\n });\n this.cleanup.forEach(fn => fn());\n }\n\n refresh() {\n this.appConfig.refresh();\n }\n\n getProviders(content: React.ReactNode) {\n return (\n <NavigationServiceProvider value={this}>\n <ToastProvider value={AppToastService}>\n <PartialProvider value={AppPartialService}>\n <SecurityProvider value={AppSecurityService}>\n <CameraProvider value={CameraService}>\n <ScanProvider value={ScanService}>\n <ModalProvider value={AppModalService}>\n { content }\n </ModalProvider>\n </ScanProvider>\n </CameraProvider>\n </SecurityProvider>\n </PartialProvider>\n </ToastProvider>\n </NavigationServiceProvider>\n );\n }\n\n renderToasters() {\n this.toastsOpened = AppToastService.toastsOpened.length;\n return <WmMemo watcher={this.watcher} render={(watch) => {\n watch(() => AppToastService.refreshCount);\n return (\n <>\n {AppToastService.toastsOpened.map((o, i) =>{\n return this.getProviders((\n <ThemeProvider value={this.appConfig.theme}>\n <View key={i} style={[{\n position: 'absolute',\n width: '100%',\n bottom: 0,\n elevation: o.elevationIndex,\n zIndex: o.elevationIndex\n }, o.styles]}>\n <TouchableOpacity onPress={() => o.onClick && o.onClick()}>\n {o.content}\n {o.text && <WmMessage name={\"message\"+ i} type={o.type} caption={o.text} hideclose={true}></WmMessage>}\n </TouchableOpacity>\n </View>\n </ThemeProvider>\n )\n )})}\n </>);\n }}/>;\n }\n\n renderDialogs(): ReactNode {\n return <WmMemo watcher={this.watcher} render={(watch) => {\n watch(() => last(AppModalService.modalsOpened)?.content);\n this.modalsOpened = AppModalService.modalsOpened.length;\n AppModalService.animatedRefs.length = 0;\n return(\n <>\n {AppModalService.modalOptions.content &&\n AppModalService.modalsOpened.map((o, i) => {\n return (\n <View key={(o.name || '') + i}\n onStartShouldSetResponder={() => true}\n onResponderEnd={() => o.isModal && AppModalService.hideModal(o)}\n style={deepCopy(styles.appModal,\n o.centered ? styles.centeredModal: null,\n o.modalStyle,\n { elevation: o.elevationIndex,\n zIndex: o.elevationIndex })}>\n <Animatedview entryanimation={o.animation || 'fadeIn'} delay={o.animationdelay}\n ref={ref => {\n this.animatedRef = ref;\n AppModalService.animatedRefs[i] = ref;\n }}\n style={[styles.appModalContent, o.contentStyle]}>\n <GestureHandlerRootView style={{width: '100%', alignItems: 'center'}}>\n <View\n onStartShouldSetResponder={evt => true}\n onResponderEnd={(e) => e.stopPropagation()}\n style={{width: '100%', alignItems: 'center'}}>\n {this.getProviders(o.content)}\n </View>\n </GestureHandlerRootView>\n </Animatedview>\n </View>\n )}\n )\n }\n </>);\n }}/>;\n }\n\n renderDisplayManager(): ReactNode {\n return <WmMemo watcher={this.watcher} render={(watch) => {\n watch(() => AppDisplayManagerService.displayOptions.content);\n return AppDisplayManagerService.displayOptions.content\n ? (\n <ThemeProvider value={this.appConfig.theme}>\n <View style={[styles.displayViewContainer, {\n elevation: this.toastsOpened + this.modalsOpened + 1,\n zIndex: this.toastsOpened + this.modalsOpened + 1\n }]}>\n {AppDisplayManagerService.displayOptions.content}\n </View>\n </ThemeProvider>) : null;\n }}/>\n }\n\n renderIconsViewSupportForWeb() {\n try {\n return (<style type=\"text/css\">{`\n @font-face {\n font-family: 'MaterialCommunityIcons';\n src: url(${MaterialCommunityIconsFont}) format('truetype');\n }\n `}</style>);\n } catch (e) {\n console.log('require react-native-vector-icons could not be loaded.');\n }\n return null;\n }\n\n getSelectedLocale() {\n return this.appConfig.selectedLocale;\n }\n\n getDependency(serviceName: string): any {\n const service = get(SUPPORTED_SERVICES, serviceName);\n if (service) {\n return service;\n }\n }\n\n renderApp(commonPartial:React.ReactNode) {\n this.autoUpdateVariables.forEach(value => this.Variables[value]?.invokeOnParamChange());\n return (\n <SafeAreaProvider>\n <PaperProvider theme={this.paperTheme}>\n <React.Fragment>\n {Platform.OS === 'web' ? this.renderIconsViewSupportForWeb() : null}\n <SafeAreaInsetsContext.Consumer>\n {(insets = {top: 0, bottom: 0, left: 0, right: 0}) =>\n (this.getProviders(\n (<SafeAreaView style={{flex: 1}}>\n <StatusBar />\n <ThemeProvider value={this.appConfig.theme}>\n <FixedViewContainer>\n <View style={styles.container}>\n <GestureHandlerRootView style={styles.container}>\n <AppNavigator\n app={this}\n landingPage={(this.props as any).pageName}\n landingPageParams={(this.props as any)?.pageName && this.props}\n hideDrawer={this.appConfig.drawer?.getContent() === null}\n drawerContent={() => this.appConfig.drawer? this.getProviders(this.appConfig.drawer.getContent()) : null}\n drawerAnimation={this.appConfig.drawer?.getAnimation()}></AppNavigator>\n {commonPartial}\n </GestureHandlerRootView>\n </View>\n {this.appConfig.url ?\n (<WmNetworkInfoToaster appLocale={this.appConfig.appLocale}></WmNetworkInfoToaster>)\n : null}\n </FixedViewContainer>\n {this.renderToasters()}\n {this.renderDialogs()}\n {this.renderDisplayManager()}\n </ThemeProvider>\n </SafeAreaView>))\n )\n }\n </SafeAreaInsetsContext.Consumer>\n </React.Fragment>\n </PaperProvider>\n </SafeAreaProvider>\n );\n }\n}\n\nconst styles = {\n container: {\n flex: 1\n },\n appModal: {\n position: 'absolute',\n width: '100%'\n },\n appModalContent : {\n flex: 1,\n width: '100%',\n alignItems: 'center',\n flexDirection: 'column',\n justifyContent: 'center'\n },\n centeredModal: {\n flex: 1,\n position: 'absolute',\n top: 0,\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.4)',\n height: '100%'\n },\n displayViewContainer: {\n position: 'absolute',\n justifyContent: 'center',\n width: '100%',\n left: 0,\n right: 0,\n top: 0,\n bottom:0\n } as ViewStyle\n};\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAsB,OAAO;AACzC,OAAOC,KAAK,MAAiE,OAAO;AACpF,SAASC,QAAQ,EAAEC,gBAAgB,EAAEC,IAAI,EAAaC,SAAS,QAAQ,cAAc;AACrF,SAASC,sBAAsB,QAAQ,8BAA8B;AACrE,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,gBAAgB,EAAEC,qBAAqB,EAAEC,YAAY,QAAQ,gCAAgC;AACtG,SAASC,YAAY,EAAEC,QAAQ,IAAIC,aAAa,QAAQ,oBAAoB;AAC5E,SAASC,OAAO,QAAQ,cAAc;AACtC,SAASC,kBAAkB,QAAQ,mBAAmB;AACtD,OAAO,KAAKC,UAAU,MAAM,kBAAkB;AAC9C,SAASC,GAAG,EAAEC,IAAI,QAAQ,QAAQ;AAClC,SAASC,aAAa,QAAQ,uCAAuC;AACrE,OAAOC,aAAa,MAAM,+CAA+C;AACzE,SAASC,aAAa,QAAQ,wCAAwC;AAEtE,OAAOC,cAAc,MAAM,gDAAgD;AAC3E,OAAOC,eAAe,MAAM,iDAAiD;AAC7E,OAAOC,cAAc,MAAwB,gDAAgD;AAC7F,OAAOC,QAAQ,MAAM,yCAAyC;AAC9D,OAAOC,UAAU,MAAM,2CAA2C;AAClE,SAASC,QAAQ,EAAEC,gBAAgB,QAAQ,sCAAsC;AACjF,OAAO,KAAKC,KAAK,MAAO,sCAAsC;AAC9D,SAASC,aAAa,QAAQ,8CAA8C;AAC5E,SAASC,kBAAkB,QAAQ,qDAAqD;AACxF,SAASC,aAAa,QAAQ,8CAA8C;AAC5E,SAA4BC,yBAAyB,QAAQ,mDAAmD;AAChH,SAASC,eAAe,QAAQ,gDAAgD;AAChF,OAAOC,oBAAoB,MAAM,mGAAmG;AACpI,OAAOC,cAAc,MAAM,kDAAkD;AAC7E,OAAOC,SAAS,MAAM,sEAAsE;AAC5F,SAASC,YAAY,QAAQ,mEAAmE;AAChG,OAAOC,cAAc,MAAM,6DAA6D;AAExF,SAASC,OAAO,QAAQ,WAAW;AACnC,SAASC,YAAY,QAAQ,aAAa;AAC1C,OAAOC,wBAAwB,MAAM,wCAAwC;AAC7E,OAAOC,eAAe,MAAM,8BAA8B;AAC1D,OAAOC,eAAe,MAAM,8BAA8B;AAC1D,OAAOC,iBAAiB,MAAM,4BAA4B;AAC1D,OAAOC,iBAAiB,MAAM,gCAAgC;AAC9D,SAASC,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,gBAAgB,QAAQ,0BAA0B;AAC3D,SAASC,cAAc,QAAQ,+BAA+B;AAC9D,OAAQC,aAAa,MAAM,kCAAkC;AAC7D,SAASC,YAAY,QAAQ,6BAA6B;AAC1D,OAAOC,WAAW,MAAM,gCAAgC;AACxD,OAAOC,kBAAkB,MAAM,iCAAiC;AAChE,SAAQC,YAAY,EAAEC,WAAW,QAAO,0DAA0D;AAClG,OAAOC,0BAA0B,MAAM,4FAA4F;AAEnI,OAAO,KAAKC,YAAY,MAAM,oBAAoB;AAGlD,SAASC,MAAM,QAAQ,kBAAkB;AAIzC;AACEtD,IAAI,CAAS,WAAW,CAAC,GAAG;EAAEuD,KAAK,EAAEpD,UAAU,CAACqD;AAAG,CAAC;AAEtD,MAAMC,+BAA+B,GAAG,GAAG;AAE3C,MAAMC,UAAU,CAAmB;EAIjCC,WAAWA,CAASC,QAAoB,EAAE;IAAA,KAAtBA,QAAoB,GAApBA,QAAoB;IAAAC,eAAA;IAAAA,eAAA,oBAFpB,UAAU;EAI9B;EAEAC,UAAUA,CAACC,OAAkB,EAAE;IAC7B,IAAI,CAACA,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACH,QAAQ,CAAC,CAAC;EACjB;EAEAI,UAAUA,CAAA,EAAG;IACX,OAAO,IAAI,CAACD,OAAO;EACrB;EAEAE,YAAYA,CAACC,SAAiB,EAAE;IAC9B,IAAI,CAACA,SAAS,GAAGA,SAAS;IAC1B,IAAI,CAACN,QAAQ,CAAC,CAAC;EACjB;EAEAO,YAAYA,CAAA,EAAG;IACb,OAAO,IAAI,CAACD,SAAS;EACvB;AACF;AACA,MAAME,kBAAkB,GAAG;EACzB3C,KAAK,EAAEA,KAAK;EACZ4C,SAAS,EAAElD,eAAe;EAC1BD,cAAc,EAAEA,cAAc;EAC9BoB,wBAAwB,EAAEA,wBAAwB;EAClDgC,WAAW,EAAEnC;AACf,CAAC;AAED,eAAe,MAAeoC,OAAO,SAAS3E,KAAK,CAAC4E,SAAS,CAA8B;EAmCzFb,WAAWA,CAACc,KAAU,EAAE;IACtB,KAAK,CAACA,KAAK,CAAC;IAACZ,eAAA,kBAlCA,CAAC,CAAC;IAAAA,eAAA,oBACA,CAAC,CAAC;IAAAA,eAAA,8BACG,MAAM,CAAC,CAAC;IAAAA,eAAA,oBAClB,KAAK;IAAAA,eAAA,oBACLxC,QAAQ,CAACR,GAAG,CAAY,YAAY,CAAC;IAAAgD,eAAA,wBACzB,IAAI7C,aAAa,CAAC,CAAC;IAAA6C,eAAA,kBAC1B,EAAE;IAAAA,eAAA,yBACK,eAAe;IAAAA,eAAA,kBACtB,EAAE;IAAAA,eAAA,wBACiB,IAAI;IAAAA,eAAA,2BACH,EAAE;IAAAA,eAAA,yBACJ,EAAE;IAAAA,eAAA,8BACG,EAAE;IAAAA,eAAA,8BACF,EAAE;IAAAA,eAAA,qBACtBvC,UAAU;IAAAuC,eAAA,6BACF,CAAC,CAAC;IAAAA,eAAA;IAAAA,eAAA,uBAEA,CAAC;IAAAA,eAAA,uBACD,CAAC;IAAAA,eAAA,kBACLzB,OAAO,CAACsC,IAAI;IAAAb,eAAA,qBAClB;MAClB,GAAGtD,YAAY;MACfoE,MAAM,EAAE;QACN,GAAGpE,YAAY,CAACoE,MAAM;QACtBC,OAAO,EAAE5C,cAAc,CAAC6C,QAAQ,CAACC;MACnC;IACF,CAAC;IAAAjB,eAAA,cACYxB,YAAY,CAAC,MAAM;MAC9B,IAAI,CAAC0C,OAAO,CAAC,CAAC;IAChB,CAAC,CAAC;IAAAlB,eAAA,wBAEqB,CAAC,CAAC;IAIvBR,YAAY,CAAC2B,oBAAoB,CAAC,CAAC;IACnCC,UAAU,CAAC,MAAM5B,YAAY,CAAC6B,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC;IACjD,IAAI,CAACC,SAAS,CAACC,GAAG,GAAG,IAAI;IACzB,IAAI,CAACD,SAAS,CAACE,MAAM,GAAG,IAAI3B,UAAU,CAAC,MAAM,IAAI,CAACqB,OAAO,CAAC,CAAC,CAAC;IAC5DrC,iBAAiB,CAAC4C,iBAAiB,CAAC;MAClCC,OAAO,EAAE,IAAI,CAACJ,SAAS,CAACI;IAC1B,CAAC,CAAC;IACF,IAAIC,gBAAgB,GAAG,KAAK;IAC5B,IAAI,CAACC,OAAO,GAAG,IAAI,CAACN,SAAS,CAACO,GAAG;IACjC,IAAIC,IAAI,GAAG,CAAC;IACZ,IAAI,CAACC,uBAAuB,CAAC,CAAC;IAC9B,IAAI,CAACT,SAAS,CAACJ,OAAO,GAAG,CAACc,QAAQ,GAAG,KAAK,KAAK;MAC7C,IAAIA,QAAQ,EAAE;QACZ,IAAI,CAACC,MAAM,CAAC,CAAC;QACb;MACF;MACA,IAAI,CAACH,IAAI,EAAE;QACT5E,aAAa,CAACgF,KAAK,CAAC,uBAAuB,CAAC;QAC5CJ,IAAI,GAAGlC,+BAA+B;QACtC+B,gBAAgB,GAAG,KAAK;QACxBP,UAAU,CAAC,MAAM;UAAA,IAAAe,mBAAA,EAAAC,qBAAA;UACf,IAAI,CAACC,WAAW,CAAC,CAAC;UAClB,CAAAF,mBAAA,OAAI,CAACG,aAAa,cAAAH,mBAAA,eAAlBA,mBAAA,CAAoBE,WAAW,CAAC,CAAC;UACjC,CAAAD,qBAAA,OAAI,CAACd,SAAS,CAACiB,WAAW,cAAAH,qBAAA,eAA1BA,qBAAA,CAA4BC,WAAW,CAAC,CAAC;UACzC,IAAI,CAACG,OAAO,CAACC,KAAK,CAAC,CAAC;QACtB,CAAC,CAAC;QACFrB,UAAU,CAAC,MAAM;UACfU,IAAI,GAAG,CAAC;UACRH,gBAAgB,IAAI,IAAI,CAACL,SAAS,CAACJ,OAAO,CAAC,CAAC;QAC9C,CAAC,EAAEY,IAAI,CAAC;MACV,CAAC,MAAM;QACL5E,aAAa,CAACgF,KAAK,CAAC,yCAAyC,CAAC;QAC9DP,gBAAgB,GAAG,IAAI;MACzB;IACF,CAAC;IACD,IAAI,CAACe,OAAO,CAACC,IAAI,CACfpF,cAAc,CAACqF,QAAQ,CAACC,SAAS,CAAC,sBAAsB,EAAGC,YAA0B,IAAK;MACxF,IAAI,CAACC,aAAa,GAAG;QAAC,GAAGD;MAAY,CAAC;MACtC,IAAI,CAAC5B,OAAO,CAAC,CAAC;IAChB,CACF,CAAC,CAAC;EACJ;EAEA2B,SAASA,CAACG,KAAa,EAAEC,EAAY,EAAE;IACrC,OAAO,IAAI,CAACC,aAAa,CAACL,SAAS,CAACG,KAAK,EAAEC,EAAE,CAAC;EAChD;EAEAE,MAAMA,CAACH,KAAa,EAAE,GAAGI,IAAS,EAAE;IAClC,OAAO,IAAI,CAACF,aAAa,CAACC,MAAM,CAACH,KAAK,EAAEI,IAAI,CAAC;EAC/C;EAEA,IAAIC,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAAC/B,SAAS,CAACiB,WAAW;EACnC;EAEA,IAAIe,OAAOA,CAAA,EAAG;IAAA,IAAAC,oBAAA;IACZ,QAAAA,oBAAA,GAAO,IAAI,CAACjB,aAAa,cAAAiB,oBAAA,uBAAlBA,oBAAA,CAAoBD,OAAO;EACpC;EAEAE,QAAQA,CAACC,QAAgB,EAAEC,MAAW,EAAG;IAAA,IAAAC,sBAAA;IACvC,QAAAA,sBAAA,GAAO,IAAI,CAACrC,SAAS,CAACiB,WAAW,cAAAoB,sBAAA,uBAA1BA,sBAAA,CAA4BH,QAAQ,CAACC,QAAQ,EAAEC,MAAM,CAAC;EAC/D;EAEAE,MAAMA,CAACH,QAAgB,EAAEC,MAAW,EAAE;IAAA,IAAAG,sBAAA;IACpC,QAAAA,sBAAA,GAAO,IAAI,CAACvC,SAAS,CAACiB,WAAW,cAAAsB,sBAAA,uBAA1BA,sBAAA,CAA4BD,MAAM,CAACH,QAAQ,EAAEC,MAAM,CAAC;EAC7D;EAEAI,OAAOA,CAACjC,GAAW,EAAE6B,MAAY,EAAG;IAAA,IAAAK,sBAAA;IAClC,QAAAA,sBAAA,GAAO,IAAI,CAACzC,SAAS,CAACiB,WAAW,cAAAwB,sBAAA,uBAA1BA,sBAAA,CAA4BD,OAAO,CAACjC,GAAG,EAAE6B,MAAM,CAAC;EACzD;EAEAM,mBAAmBA,CAACC,MAAkC,EAAE;IACtD;IACA;IACA,OAAOA,MAAM;EACf;EAEAC,iBAAiBA,CAAA,EAAG;IAClB,OAAO,IAAI,CAAC5C,SAAS,CAACI,OAAO,CAACyC,MAAM,IAAI,UAAU;EACpD;EAEAC,gBAAgBA,CAACC,IAAS,EAAEC,QAAuB,EAAE;IACnD;IACA;EAAA;EAGFC,cAAcA,CAACC,QAAa,EAAEC,KAAsB,EAAE;IACpD;IACA;EAAA;EAGFC,eAAeA,CAACC,GAAW,EAAEN,IAAY,EAAE;IACzC,IAAIvH,kBAAkB,CAAC8H,eAAe,KAC9B3I,QAAQ,CAAC4I,EAAE,KAAK,SAAS,IAAI5I,QAAQ,CAAC4I,EAAE,KAAK,KAAK,CAAC,EAAE;MACzD,OAAO/H,kBAAkB,CAAC8H,eAAe,CAACE,YAAY,CAACH,GAAG,EAAEN,IAAI,IAAI,CAAC,CAAC,CAAC;IAC3E,CAAC,MAAM;MACH,OAAOU,OAAO,CAACC,MAAM,CAAC,iDAAiD,CAAC;IAC5E;EACF;EAEAC,gBAAgBA,CAACC,cAAsB,EAAEC,eAAyB,EAAE;IAClE,IAAI,CAACC,WAAW,CAACF,cAAc,EAAEC,eAAe,CAAC;EACnD;EAEAC,WAAWA,CAACF,cAAsB,EAAEC,eAAyB,EAAE,CAE/D;EAEAE,WAAWA,CAACC,QAAa,EAAC;IACxBhH,cAAc,CAAC+G,WAAW,CAACC,QAAQ,CAAC;EACtC;EAEA,IAAI5D,OAAOA,CAAA,EAAG;IACZ,OAAO7C,iBAAiB;EAC1B;EAEA0G,WAAWA,CAAC1D,GAAW,EAAE6B,MAAM,GAAG,CAAC,CAAQ,EAAE;IAC3C,IAAI7B,GAAG,EAAE;MACP,IAAIlE,gBAAgB,CAAC,CAAC,EAAE;QACtB6H,MAAM,CAACC,IAAI,CAAC5D,GAAG,EAAE,QAAQ,CAAC;MAC5B,CAAC,MAAM,IAAIA,GAAG,CAAC6D,UAAU,CAAC,MAAM,CAAC,IAAIhC,MAAM,CAACiC,MAAM,KAAK,QAAQ,EAAE;QAC/D5I,UAAU,CAAC6I,gBAAgB,CAAC/D,GAAG,CAAC;MAClC,CAAC,MAAM;QACL,OAAOhF,OAAO,CAACgJ,OAAO,CAAChE,GAAG,CAAC;MAC7B;IACF;IACA,OAAOkD,OAAO,CAACe,OAAO,CAAC,CAAC;EAC1B;;EAEA;EACA7D,MAAMA,CAAA,EAAG,CAAC;EAEVF,uBAAuBA,CAAA,EAAG;IACxB,IAAI,CAACgE,mBAAmB,GAAG,CACzB/J,KAAK,CAACgK,YAAY,CAACC,OAAO,CAACC,GAAG,CAAEjC,MAAkC,IAAK;MACrE,MAAMpC,GAAG,GAAGoC,MAAM,CAACpC,GAAa;MAChC,IAAI,EAAEA,GAAG,CAAC6D,UAAU,CAAC,SAAS,CAAC,IAAI7D,GAAG,CAAC6D,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE;QAC9DzB,MAAM,CAACpC,GAAG,GAAG,IAAI,CAACP,SAAS,CAACO,GAAG,GAAG,GAAG,GAAGA,GAAG;MAC7C;MACAoC,MAAM,CAACkC,OAAO,GAAGlC,MAAM,CAACkC,OAAO,IAAI,CAAC,CAAC;MACrClC,MAAM,CAACkC,OAAO,CAAC,kBAAkB,CAAC,GAAG,gBAAgB;MACrDC,OAAO,CAACC,GAAG,CAAC,kCAAkC,GAAGpC,MAAM,CAACpC,GAAG,CAAC;MAC5D,OAAO,IAAI,CAACmC,mBAAmB,CAACC,MAAM,CAAC;IACzC,CAAC,CAAC,EACFjI,KAAK,CAACgK,YAAY,CAAC1B,QAAQ,CAAC4B,GAAG,CAC5B5B,QAAuB,IAAK;MAC3B,IAAI,CAACF,gBAAgB,CAACE,QAAQ,CAACD,IAAI,EAAEC,QAAQ,CAAC;MAC9C,OAAOA,QAAQ;IACjB,CAAC,EAAEG,KAAsB,IAAK;MAAA,IAAA6B,aAAA,EAAAC,cAAA,EAAAC,eAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA;MAC5B,IAAIC,YAAiB,GAAGnC,KAAK,CAACH,QAAQ;QAAEuC,MAAM;MAC9CD,YAAY,GAAGvH,YAAY,EAAAiH,aAAA,GAACM,YAAY,cAAAN,aAAA,uBAAZA,aAAA,CAAcjC,IAAI,CAAC,MAAAkC,cAAA,GAAIK,YAAY,cAAAL,cAAA,uBAAZA,cAAA,CAAclC,IAAI;MACrE,IAAIuC,YAAY,IAAIA,YAAY,CAACE,MAAM,EAAE;QACrCD,MAAM,GAAGvH,WAAW,CAACsH,YAAY,CAACE,MAAM,CAAC,IAAI,qBAAqB;MACtE,CAAC,MAAM;QACHD,MAAM,GAAGpC,KAAK,CAACsC,OAAO,IAAI,qBAAqB;MACnD;MACAtC,KAAK,CAACsC,OAAO,GAAGF,MAAM;MACtBT,OAAO,CAAC3B,KAAK,CAAC,SAASoC,MAAM,mBAAAL,eAAA,GAAkB/B,KAAK,CAACH,QAAQ,cAAAkC,eAAA,gBAAAA,eAAA,GAAdA,eAAA,CAAgBvC,MAAM,cAAAuC,eAAA,uBAAtBA,eAAA,CAAwB3E,GAAG,EAAE,CAAC;MAC7E,IAAI,CAAC0C,cAAc,CAACE,KAAK,CAACsC,OAAO,EAAEtC,KAAK,CAAC;MACzC,IAAI,CAAAgC,gBAAA,GAAAhC,KAAK,CAACH,QAAQ,cAAAmC,gBAAA,gBAAAA,gBAAA,GAAdA,gBAAA,CAAgBxC,MAAM,CAACpC,GAAG,cAAA4E,gBAAA,eAA1BA,gBAAA,CAA4Bf,UAAU,CAAC,IAAI,CAACpE,SAAS,CAACO,GAAG,CAAC,IAAI,GAAA6E,gBAAA,GAACjC,KAAK,CAACH,QAAQ,cAAAoC,gBAAA,gBAAAA,gBAAA,GAAdA,gBAAA,CAAgBzC,MAAM,CAACpC,GAAG,cAAA6E,gBAAA,eAA1BA,gBAAA,CAA4BM,QAAQ,CAAC,YAAY,CAAC,KAAI,EAAAL,gBAAA,GAAAlC,KAAK,CAACH,QAAQ,cAAAqC,gBAAA,uBAAdA,gBAAA,CAAgBM,MAAM,MAAK,GAAG,EAAE;QAAA,IAAAC,sBAAA,EAAAC,sBAAA;QACvJ,EAAAD,sBAAA,OAAI,CAAC5F,SAAS,CAACiB,WAAW,cAAA2E,sBAAA,uBAA1BA,sBAAA,CAA4BzD,QAAQ,MAAK,OAAO,MAAA0D,sBAAA,GAAI,IAAI,CAAC7F,SAAS,CAACiB,WAAW,cAAA4E,sBAAA,uBAA1BA,sBAAA,CAA4B3D,QAAQ,CAAC,OAAO,CAAC;MACnG;MACA,OAAOuB,OAAO,CAACC,MAAM,CAACP,KAAK,CAAC;IAC9B,CAAC,CAAC,CACL;EACH;EAEA2C,IAAIA,CAACnE,EAAY,EAAEoE,WAAW,GAAG,KAAK,EAAE;IACtC,IAAI;MACF,OAAOpE,EAAE,CAACqE,IAAI,CAAC,IAAI,CAAC;IACtB,CAAC,CAAC,OAAOC,CAAC,EAAE;MACV,IAAIF,WAAW,EAAE;QACf,MAAME,CAAC;MACT,CAAC,MAAM;QACL,OAAO,IAAI;MACb;IACF;EACF;EAEAC,uBAAuBA,CAAA,EAAG;IACxB,OAAOzC,OAAO,CAAC0C,GAAG,CAAC,IAAI,CAACC,gBAAgB,CAACC,GAAG,CAACC,CAAC,IAAI,IAAI,CAACC,SAAS,CAACD,CAAC,CAAC,IAAI,IAAI,CAACC,SAAS,CAACD,CAAC,CAAC,CAACE,MAAM,CAAC,CAAC,CAAC,CAAC,CAClGC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;EAClB;EAEAC,iBAAiBA,CAAA,EAAG;IAClBnJ,iBAAiB,CAACoJ,IAAI,CAAC;MACrBvG,OAAO,EAAE,IAAI,CAACJ,SAAS,CAACI;IAC1B,CAAC,CAAC;IACF,IAAI,CAAC8F,uBAAuB,CAAC,CAAC,CAC7BU,IAAI,CAAC,MAAM;MACV,IAAI,CAACC,mBAAmB,CAAC,CAAC;MAC1B,IAAI,CAACC,SAAS,GAAG,IAAI;MACrB,IAAI,CAAC/F,WAAW,CAAC,CAAC;IACpB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACZ,IAAI,CAACgG,cAAc,CAACV,GAAG,CAACW,CAAC,IAAI,IAAI,CAACC,OAAO,CAACD,CAAC,CAAC,IAAI,IAAI,CAACC,OAAO,CAACD,CAAC,CAAC,CAACR,MAAM,CAAC,CAAC,CAAC;EAC3E;EAEAU,oBAAoBA,CAAA,EAAS;IAC3B,IAAI,CAACzC,mBAAmB,CAAC4B,GAAG,CAACc,EAAE,IAAI;MACjCzM,KAAK,CAACgK,YAAY,CAACC,OAAO,CAACyC,KAAK,CAACD,EAAE,CAAC;IACtC,CAAC,CAAC;IACF,IAAI,CAAC/F,OAAO,CAACiG,OAAO,CAAC1F,EAAE,IAAIA,EAAE,CAAC,CAAC,CAAC;EAClC;EAEA/B,OAAOA,CAAA,EAAG;IACR,IAAI,CAACI,SAAS,CAACJ,OAAO,CAAC,CAAC;EAC1B;EAEA0H,YAAYA,CAAC1I,OAAwB,EAAE;IACrC,oBACEnE,KAAA,CAAA8M,aAAA,CAAC7K,yBAAyB;MAAC8K,KAAK,EAAE;IAAK,gBACrC/M,KAAA,CAAA8M,aAAA,CAAC9K,aAAa;MAAC+K,KAAK,EAAEnK;IAAgB,gBACpC5C,KAAA,CAAA8M,aAAA,CAAC5K,eAAe;MAAC6K,KAAK,EAAElK;IAAkB,gBACxC7C,KAAA,CAAA8M,aAAA,CAAC9J,gBAAgB;MAAC+J,KAAK,EAAE1J;IAAmB,gBAC1CrD,KAAA,CAAA8M,aAAA,CAAC7J,cAAc;MAAC8J,KAAK,EAAE7J;IAAc,gBACnClD,KAAA,CAAA8M,aAAA,CAAC3J,YAAY;MAAC4J,KAAK,EAAE3J;IAAY,gBAC/BpD,KAAA,CAAA8M,aAAA,CAAChL,aAAa;MAACiL,KAAK,EAAEpK;IAAgB,GAClCwB,OACW,CACH,CACA,CACA,CACH,CACJ,CACU,CAAC;EAEhC;EAEA6I,cAAcA,CAAA,EAAG;IACf,IAAI,CAACC,YAAY,GAAGrK,eAAe,CAACqK,YAAY,CAACC,MAAM;IACvD,oBAAOlN,KAAA,CAAA8M,aAAA,CAACpJ,MAAM;MAAC+C,OAAO,EAAE,IAAI,CAACA,OAAQ;MAAC0G,MAAM,EAAGC,KAAK,IAAK;QACvDA,KAAK,CAAC,MAAMxK,eAAe,CAACyK,YAAY,CAAC;QACzC,oBACErN,KAAA,CAAA8M,aAAA,CAAA9M,KAAA,CAAAsN,QAAA,QACG1K,eAAe,CAACqK,YAAY,CAACrB,GAAG,CAAC,CAAC2B,CAAC,EAAEC,CAAC,KAAI;UACzC,OAAO,IAAI,CAACX,YAAY,eACtB7M,KAAA,CAAA8M,aAAA,CAACzL,aAAa;YAAC0L,KAAK,EAAE,IAAI,CAACxH,SAAS,CAACkI;UAAM,gBACzCzN,KAAA,CAAA8M,aAAA,CAAC1M,IAAI;YAACwI,GAAG,EAAE4E,CAAE;YAAC7J,KAAK,EAAE,CAAC;cACpB+J,QAAQ,EAAE,UAAU;cACpBC,KAAK,EAAE,MAAM;cACbC,MAAM,EAAE,CAAC;cACTC,SAAS,EAAEN,CAAC,CAACO,cAAc;cAC3BC,MAAM,EAAER,CAAC,CAACO;YACZ,CAAC,EAAEP,CAAC,CAACS,MAAM;UAAE,gBACXhO,KAAA,CAAA8M,aAAA,CAAC3M,gBAAgB;YAAC8N,OAAO,EAAEA,CAAA,KAAMV,CAAC,CAACW,OAAO,IAAIX,CAAC,CAACW,OAAO,CAAC;UAAE,GACvDX,CAAC,CAACpJ,OAAO,EACToJ,CAAC,CAACY,IAAI,iBAAInO,KAAA,CAAA8M,aAAA,CAACzK,SAAS;YAAC+L,IAAI,EAAE,SAAS,GAAEZ,CAAE;YAACa,IAAI,EAAEd,CAAC,CAACc,IAAK;YAACC,OAAO,EAAEf,CAAC,CAACY,IAAK;YAACI,SAAS,EAAE;UAAK,CAAY,CACrF,CACd,CACO,CAEnB,CAAC;QAAA,CAAC,CACF,CAAC;MACP;IAAE,CAAC,CAAC;EACN;EAEAC,aAAaA,CAAA,EAAc;IACzB,oBAAOxO,KAAA,CAAA8M,aAAA,CAACpJ,MAAM;MAAC+C,OAAO,EAAE,IAAI,CAACA,OAAQ;MAAC0G,MAAM,EAAGC,KAAK,IAAK;QACvDA,KAAK,CAAC;UAAA,IAAAqB,KAAA;UAAA,QAAAA,KAAA,GAAMvN,IAAI,CAACyB,eAAe,CAAC+L,YAAY,CAAC,cAAAD,KAAA,uBAAlCA,KAAA,CAAoCtK,OAAO;QAAA,EAAC;QACxD,IAAI,CAACuK,YAAY,GAAG/L,eAAe,CAAC+L,YAAY,CAACxB,MAAM;QACnDvK,eAAe,CAACgM,YAAY,CAACzB,MAAM,GAAG,CAAC;QAC3C,oBACElN,KAAA,CAAA8M,aAAA,CAAA9M,KAAA,CAAAsN,QAAA,QACC3K,eAAe,CAACiM,YAAY,CAACzK,OAAO,IACnCxB,eAAe,CAAC+L,YAAY,CAAC9C,GAAG,CAAC,CAAC2B,CAAC,EAAEC,CAAC,KAAK;UACzC,oBACExN,KAAA,CAAA8M,aAAA,CAAC1M,IAAI;YAACwI,GAAG,EAAE,CAAC2E,CAAC,CAACa,IAAI,IAAI,EAAE,IAAIZ,CAAE;YAC5BqB,yBAAyB,EAAEA,CAAA,KAAM,IAAK;YACtCC,cAAc,EAAEA,CAAA,KAAMvB,CAAC,CAACwB,OAAO,IAAIpM,eAAe,CAACqM,SAAS,CAACzB,CAAC,CAAE;YAChE5J,KAAK,EAAEhC,QAAQ,CAACqM,MAAM,CAACiB,QAAQ,EAC7B1B,CAAC,CAAC2B,QAAQ,GAAGlB,MAAM,CAACmB,aAAa,GAAE,IAAI,EACvC5B,CAAC,CAAC6B,UAAU,EACZ;cAAEvB,SAAS,EAAEN,CAAC,CAACO,cAAc;cAC3BC,MAAM,EAAER,CAAC,CAACO;YAAe,CAAC;UAAE,gBAC5B9N,KAAA,CAAA8M,aAAA,CAACxK,YAAY;YAAC+M,cAAc,EAAE9B,CAAC,CAACjJ,SAAS,IAAI,QAAS;YAACgL,KAAK,EAAE/B,CAAC,CAACgC,cAAe;YAC7EC,GAAG,EAAEA,GAAG,IAAI;cACV,IAAI,CAACC,WAAW,GAAGD,GAAG;cACtB7M,eAAe,CAACgM,YAAY,CAACnB,CAAC,CAAC,GAAGgC,GAAG;YACvC,CAAE;YACF7L,KAAK,EAAE,CAACqK,MAAM,CAAC0B,eAAe,EAAEnC,CAAC,CAACoC,YAAY;UAAE,gBAChD3P,KAAA,CAAA8M,aAAA,CAACxM,sBAAsB;YAACqD,KAAK,EAAE;cAACgK,KAAK,EAAE,MAAM;cAAEiC,UAAU,EAAE;YAAQ;UAAE,gBACnE5P,KAAA,CAAA8M,aAAA,CAAC1M,IAAI;YACHyO,yBAAyB,EAAEgB,GAAG,IAAI,IAAK;YACvCf,cAAc,EAAGtD,CAAC,IAAKA,CAAC,CAACsE,eAAe,CAAC,CAAE;YAC3CnM,KAAK,EAAE;cAACgK,KAAK,EAAE,MAAM;cAAEiC,UAAU,EAAE;YAAQ;UAAE,GAC1C,IAAI,CAAC/C,YAAY,CAACU,CAAC,CAACpJ,OAAO,CAC1B,CACgB,CACZ,CACd,CAAC;QACR,CACH,CAEF,CAAC;MACL;IAAE,CAAC,CAAC;EACN;EAEA4L,oBAAoBA,CAAA,EAAc;IAChC,oBAAO/P,KAAA,CAAA8M,aAAA,CAACpJ,MAAM;MAAC+C,OAAO,EAAE,IAAI,CAACA,OAAQ;MAAC0G,MAAM,EAAGC,KAAK,IAAK;QACvDA,KAAK,CAAC,MAAM1K,wBAAwB,CAACsN,cAAc,CAAC7L,OAAO,CAAC;QAC5D,OAAOzB,wBAAwB,CAACsN,cAAc,CAAC7L,OAAO,gBAElDnE,KAAA,CAAA8M,aAAA,CAACzL,aAAa;UAAC0L,KAAK,EAAE,IAAI,CAACxH,SAAS,CAACkI;QAAM,gBACzCzN,KAAA,CAAA8M,aAAA,CAAC1M,IAAI;UAACuD,KAAK,EAAE,CAACqK,MAAM,CAACiC,oBAAoB,EAAE;YACzCpC,SAAS,EAAE,IAAI,CAACZ,YAAY,GAAG,IAAI,CAACyB,YAAY,GAAG,CAAC;YACpDX,MAAM,EAAE,IAAI,CAACd,YAAY,GAAG,IAAI,CAACyB,YAAY,GAAG;UAClD,CAAC;QAAE,GACAhM,wBAAwB,CAACsN,cAAc,CAAC7L,OACrC,CACO,CAAC,GAAI,IAAI;MAC9B;IAAE,CAAC,CAAC;EACN;EAEA+L,4BAA4BA,CAAA,EAAG;IAC7B,IAAI;MACF,oBAAQlQ,KAAA,CAAA8M,aAAA;QAAOuB,IAAI,EAAC;MAAU,GAAE;AACtC;AACA;AACA,qBAAqB7K,0BAA0B;AAC/C;AACA,OAAe,CAAC;IACZ,CAAC,CAAC,OAAOgI,CAAC,EAAE;MACVnB,OAAO,CAACC,GAAG,CAAC,wDAAwD,CAAC;IACvE;IACA,OAAO,IAAI;EACb;EAEA6F,iBAAiBA,CAAA,EAAG;IAClB,OAAO,IAAI,CAAC5K,SAAS,CAAC6K,cAAc;EACtC;EAEAC,aAAaA,CAACC,WAAmB,EAAO;IACtC,MAAMC,OAAO,GAAGtP,GAAG,CAACuD,kBAAkB,EAAE8L,WAAW,CAAC;IACpD,IAAIC,OAAO,EAAE;MACX,OAAOA,OAAO;IAChB;EACF;EAEAC,SAASA,CAACjK,aAA6B,EAAE;IACvC,IAAI,CAACkK,mBAAmB,CAAC7D,OAAO,CAACG,KAAK;MAAA,IAAA2D,qBAAA;MAAA,QAAAA,qBAAA,GAAI,IAAI,CAAC5E,SAAS,CAACiB,KAAK,CAAC,cAAA2D,qBAAA,uBAArBA,qBAAA,CAAuBC,mBAAmB,CAAC,CAAC;IAAA,EAAC;IACvF,oBACE3Q,KAAA,CAAA8M,aAAA,CAACtM,gBAAgB,qBACfR,KAAA,CAAA8M,aAAA,CAACjM,aAAa;MAAC4M,KAAK,EAAE,IAAI,CAACmD;IAAW,gBACpC5Q,KAAA,CAAA8M,aAAA,CAAC9M,KAAK,CAACsN,QAAQ,QACZpN,QAAQ,CAAC4I,EAAE,KAAK,KAAK,GAAG,IAAI,CAACoH,4BAA4B,CAAC,CAAC,GAAG,IAAI,eACrElQ,KAAA,CAAA8M,aAAA,CAACrM,qBAAqB,CAACoQ,QAAQ,QAC5B,CAACC,MAAM,GAAG;MAACC,GAAG,EAAE,CAAC;MAAEnD,MAAM,EAAE,CAAC;MAAEoD,IAAI,EAAE,CAAC;MAAEC,KAAK,EAAE;IAAC,CAAC;MAAA,IAAAC,WAAA,EAAAC,qBAAA,EAAAC,sBAAA;MAAA,OAC9C,IAAI,CAACvE,YAAY,eACf7M,KAAA,CAAA8M,aAAA,CAACpM,YAAY;QAAEiD,KAAK,EAAE;UAAC0N,IAAI,EAAE;QAAC;MAAE,gBAC/BrR,KAAA,CAAA8M,aAAA,CAACzM,SAAS,MAAE,CAAC,eACbL,KAAA,CAAA8M,aAAA,CAACzL,aAAa;QAAC0L,KAAK,EAAE,IAAI,CAACxH,SAAS,CAACkI;MAAM,gBAC3CzN,KAAA,CAAA8M,aAAA,CAAC/K,kBAAkB,qBACjB/B,KAAA,CAAA8M,aAAA,CAAC1M,IAAI;QAACuD,KAAK,EAAEqK,MAAM,CAACsD;MAAU,gBAC5BtR,KAAA,CAAA8M,aAAA,CAACxM,sBAAsB;QAACqD,KAAK,EAAEqK,MAAM,CAACsD;MAAU,gBAChDtR,KAAA,CAAA8M,aAAA,CAAC/J,YAAY;QACXyC,GAAG,EAAE,IAAK;QACV+L,WAAW,EAAG,IAAI,CAAC1M,KAAK,CAAS6C,QAAS;QAC1C8J,iBAAiB,EAAE,EAAAN,WAAA,GAAC,IAAI,CAACrM,KAAK,cAAAqM,WAAA,uBAAXA,WAAA,CAAqBxJ,QAAQ,KAAI,IAAI,CAAC7C,KAAM;QAC/D4M,UAAU,EAAE,EAAAN,qBAAA,OAAI,CAAC5L,SAAS,CAACE,MAAM,cAAA0L,qBAAA,uBAArBA,qBAAA,CAAuB/M,UAAU,CAAC,CAAC,MAAK,IAAK;QACzDsN,aAAa,EAAEA,CAAA,KAAM,IAAI,CAACnM,SAAS,CAACE,MAAM,GAAE,IAAI,CAACoH,YAAY,CAAC,IAAI,CAACtH,SAAS,CAACE,MAAM,CAACrB,UAAU,CAAC,CAAC,CAAC,GAAG,IAAK;QACzGuN,eAAe,GAAAP,sBAAA,GAAE,IAAI,CAAC7L,SAAS,CAACE,MAAM,cAAA2L,sBAAA,uBAArBA,sBAAA,CAAuB7M,YAAY,CAAC;MAAE,CAAe,CAAC,EACtEgC,aACqB,CACpB,CAAC,EACN,IAAI,CAAChB,SAAS,CAACO,GAAG,gBAChB9F,KAAA,CAAA8M,aAAA,CAAC3K,oBAAoB;QAAEyP,SAAS,EAAE,IAAI,CAACrM,SAAS,CAACqM;MAAU,CAAuB,CAAC,GAClF,IACc,CAAC,EACpB,IAAI,CAAC5E,cAAc,CAAC,CAAC,EACrB,IAAI,CAACwB,aAAa,CAAC,CAAC,EACpB,IAAI,CAACuB,oBAAoB,CAAC,CACZ,CACH,CAAE,CAAC;IAAA,CAGS,CAChB,CACH,CACC,CAAC;EAEvB;AACF;AAEA,MAAM/B,MAAM,GAAG;EACbsD,SAAS,EAAE;IACTD,IAAI,EAAE;EACR,CAAC;EACDpC,QAAQ,EAAE;IACRvB,QAAQ,EAAE,UAAU;IACpBC,KAAK,EAAE;EACT,CAAC;EACD+B,eAAe,EAAG;IAChB2B,IAAI,EAAE,CAAC;IACP1D,KAAK,EAAE,MAAM;IACbiC,UAAU,EAAE,QAAQ;IACpBiC,aAAa,EAAE,QAAQ;IACvBC,cAAc,EAAE;EAClB,CAAC;EACD3C,aAAa,EAAE;IACbkC,IAAI,EAAE,CAAC;IACP3D,QAAQ,EAAE,UAAU;IACpBqD,GAAG,EAAE,CAAC;IACNc,aAAa,EAAE,KAAK;IACpBC,cAAc,EAAE,QAAQ;IACxBlC,UAAU,EAAE,QAAQ;IACpBmC,eAAe,EAAE,oBAAoB;IACrCC,MAAM,EAAE;EACV,CAAC;EACD/B,oBAAoB,EAAE;IACpBvC,QAAQ,EAAE,UAAU;IACpBoE,cAAc,EAAE,QAAQ;IACxBnE,KAAK,EAAE,MAAM;IACbqD,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRF,GAAG,EAAE,CAAC;IACNnD,MAAM,EAAC;EACT;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","axios","Platform","TouchableOpacity","View","StatusBar","GestureHandlerRootView","ProtoTypes","SafeAreaProvider","SafeAreaInsetsContext","SafeAreaView","DefaultTheme","Provider","PaperProvider","Linking","NativeModulesProxy","WebBrowser","get","last","RENDER_LOGGER","EventNotifier","ThemeProvider","StorageService","ConstantService","NetworkService","injector","formatters","deepCopy","isWebPreviewMode","Utils","ModalProvider","FixedViewContainer","ToastProvider","NavigationServiceProvider","PartialProvider","WmNetworkInfoToaster","ThemeVariables","WmMessage","Animatedview","AppI18nService","Watcher","preparePatch","AppDisplayManagerService","AppModalService","AppToastService","AppPartialService","AppSpinnerService","AppNavigator","SecurityProvider","CameraProvider","CameraService","ScanProvider","ScanService","AppSecurityService","getValidJSON","parseErrors","MaterialCommunityIconsFont","SplashScreen","WmMemo","VariableEvents","style","any","MIN_TIME_BETWEEN_REFRESH_CYCLES","DrawerImpl","constructor","onChange","_defineProperty","setContent","content","getContent","setAnimation","animation","getAnimation","SUPPORTED_SERVICES","CONSTANTS","i18nService","global","BaseApp","Component","props","ROOT","colors","primary","INSTANCE","primaryColor","refresh","preventAutoHideAsync","setTimeout","hideAsync","appConfig","app","drawer","setDefaultOptions","spinner","refreshAfterWait","baseUrl","url","wait","bindServiceInterceptors","complete","reload","debug","_this$commonPartial","_this$appConfig$curre","forceUpdate","commonPartial","currentPage","watcher","check","cleanup","push","notifier","subscribe","networkState","networkStatus","event","fn","eventNotifier","notify","args","activePage","Widgets","_this$commonPartial2","onBeforePageLeave","nextPage","goToPage","pageName","params","_this$appConfig$curre2","goBack","_this$appConfig$curre3","openUrl","_this$appConfig$curre4","onBeforeServiceCall","config","isSkeletonEnabled","loader","onServiceSuccess","data","response","onServiceError","errorMsg","error","invokeNativeApi","key","EmbedCommModule","OS","sendToNative","Promise","reject","triggerPageReady","activePageName","activePageScope","onPageReady","setTimezone","timezone","openBrowser","window","open","startsWith","target","openBrowserAsync","openURL","resolve","axiosInterceptorIds","interceptors","request","use","headers","console","log","_errorDetails","_errorDetails2","_error$response","_error$response2","_error$response3","_error$response4","errorDetails","errMsg","errors","message","includes","status","_this$appConfig$curre5","_this$appConfig$curre6","eval","failOnError","call","e","triggerStartUpVariables","all","startUpVariables","map","s","Variables","invoke","catch","componentDidMount","show","Object","values","v","BEFORE_INVOKE","AFTER_INVOKE","startUpActions","a","Actions","then","onAppVariablesReady","isStarted","componentWillUnmount","id","eject","forEach","getProviders","createElement","value","renderToasters","toastsOpened","length","render","watch","refreshCount","Fragment","o","i","theme","position","width","bottom","elevation","elevationIndex","zIndex","styles","onPress","onClick","text","name","type","caption","hideclose","renderDialogs","_last","modalsOpened","animatedRefs","modalOptions","onStartShouldSetResponder","onResponderEnd","isModal","hideModal","appModal","centered","centeredModal","modalStyle","entryanimation","delay","animationdelay","ref","animatedRef","appModalContent","contentStyle","alignItems","evt","stopPropagation","renderDisplayManager","displayOptions","displayViewContainer","renderIconsViewSupportForWeb","getSelectedLocale","selectedLocale","getDependency","serviceName","service","renderApp","autoUpdateVariables","_this$Variables$value","invokeOnParamChange","paperTheme","Consumer","insets","top","left","right","_this$props","_this$appConfig$drawe","_this$appConfig$drawe2","flex","container","landingPage","landingPageParams","hideDrawer","drawerContent","drawerAnimation","appLocale","flexDirection","justifyContent","backgroundColor","height"],"sources":["App.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport axios, { AxiosError, InternalAxiosRequestConfig, AxiosResponse } from 'axios';\nimport { Platform, TouchableOpacity, View, ViewStyle, StatusBar } from 'react-native';\nimport { GestureHandlerRootView } from 'react-native-gesture-handler';\nimport ProtoTypes from 'prop-types';\nimport { SafeAreaProvider, SafeAreaInsetsContext, SafeAreaView } from 'react-native-safe-area-context';\nimport { DefaultTheme, Provider as PaperProvider } from 'react-native-paper';\nimport { Linking } from 'react-native';\nimport { NativeModulesProxy } from 'expo-modules-core';\nimport * as WebBrowser from 'expo-web-browser';\nimport { get, last } from 'lodash';\nimport { RENDER_LOGGER } from '@wavemaker/app-rn-runtime/core/logger';\nimport EventNotifier from '@wavemaker/app-rn-runtime/core/event-notifier';\nimport { ThemeProvider } from '@wavemaker/app-rn-runtime/styles/theme';\nimport AppConfig, { Drawer } from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport StorageService from '@wavemaker/app-rn-runtime/core/storage.service';\nimport ConstantService from '@wavemaker/app-rn-runtime/core/constant.service';\nimport NetworkService, { NetworkState } from '@wavemaker/app-rn-runtime/core/network.service';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport formatters from '@wavemaker/app-rn-runtime/core/formatters';\nimport { deepCopy, isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\nimport * as Utils from '@wavemaker/app-rn-runtime/core/utils';\nimport { ModalProvider } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport { FixedViewContainer } from '@wavemaker/app-rn-runtime/core/fixed-view.component';\nimport { ToastProvider } from '@wavemaker/app-rn-runtime/core/toast.service';\nimport NavigationService, { NavigationServiceProvider } from '@wavemaker/app-rn-runtime/core/navigation.service';\nimport { PartialProvider } from '@wavemaker/app-rn-runtime/core/partial.service';\nimport WmNetworkInfoToaster from '@wavemaker/app-rn-runtime/components/advanced/network-info-toaster/network-info-toaster.component';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nimport WmMessage from '@wavemaker/app-rn-runtime/components/basic/message/message.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport AppI18nService from '@wavemaker/app-rn-runtime/runtime/services/app-i18n.service';\n\nimport { Watcher } from './watcher';\nimport { preparePatch } from './lib-patch';\nimport AppDisplayManagerService from './services/app-display-manager.service';\nimport AppModalService from './services/app-modal.service';\nimport AppToastService from './services/app-toast.service';\nimport AppPartialService from './services/partial.service';\nimport AppSpinnerService from './services/app-spinner.service';\nimport { AppNavigator } from './App.navigator';\nimport { SecurityProvider } from '../core/security.service';\nimport { CameraProvider } from '../core/device/camera-service';\nimport CameraService from './services/device/camera-service';\nimport { ScanProvider } from '../core/device/scan-service';\nimport ScanService from './services/device/scan-service';\nimport AppSecurityService from './services/app-security.service';\nimport {getValidJSON, parseErrors} from '@wavemaker/app-rn-runtime/variables/utils/variable.utils';\nimport MaterialCommunityIconsFont from '@expo/vector-icons/build/vendor/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf';\n\nimport * as SplashScreen from 'expo-splash-screen';\nimport BasePartial from './base-partial.component';\nimport BasePage from './base-page.component';\nimport { WmMemo } from './memo.component';\nimport { BaseVariable, VariableEvents } from '../variables/base-variable';\n\ndeclare const window: any;\n\n//some old react libraries need this\n((View as any)['propTypes'] = { style: ProtoTypes.any})\n\nconst MIN_TIME_BETWEEN_REFRESH_CYCLES = 200;\n\nclass DrawerImpl implements Drawer {\n content: ReactNode;\n animation: string = 'slide-in';\n\n constructor(private onChange: () => void) {\n\n }\n\n setContent(content: ReactNode) {\n this.content = content;\n this.onChange();\n }\n\n getContent() {\n return this.content;\n }\n\n setAnimation(animation: string) {\n this.animation = animation;\n this.onChange();\n }\n\n getAnimation() {\n return this.animation;\n }\n}\nconst SUPPORTED_SERVICES = {\n Utils: Utils,\n CONSTANTS: ConstantService,\n StorageService: StorageService,\n AppDisplayManagerService: AppDisplayManagerService,\n i18nService: AppI18nService\n};\n(global as any)['axios'] = axios;\nexport default abstract class BaseApp extends React.Component implements NavigationService {\n\n Actions: any = {};\n Variables: any = {};\n onAppVariablesReady = () => {};\n isStarted = false;\n appConfig = injector.get<AppConfig>('APP_CONFIG');\n private eventNotifier = new EventNotifier();\n public baseUrl = '';\n public targetPlatform = 'NATIVE_MOBILE';\n public cleanup = [] as Function[];\n public commonPartial: BasePartial = null as any;\n private startUpVariables: string[] = [];\n private startUpActions: string[] = [];\n private autoUpdateVariables: string[] = [];\n private axiosInterceptorIds: number[] = [];\n public formatters = formatters;\n public serviceDefinitions = {} as any;\n private animatedRef: any;\n public modalsOpened: number = 0;\n public toastsOpened: number = 0;\n public watcher: Watcher = Watcher.ROOT;\n public paperTheme = {\n ...DefaultTheme,\n colors: {\n ...DefaultTheme.colors,\n primary: ThemeVariables.INSTANCE.primaryColor\n }\n };\n public lib = preparePatch(() => {\n this.refresh();\n });\n\n public networkStatus = {} as NetworkState;\n\n constructor(props: any) {\n super(props);\n SplashScreen.preventAutoHideAsync();\n setTimeout(() => SplashScreen.hideAsync(), 10000);\n this.appConfig.app = this;\n this.appConfig.drawer = new DrawerImpl(() => this.refresh());\n AppSpinnerService.setDefaultOptions({\n spinner: this.appConfig.spinner\n });\n let refreshAfterWait = false;\n this.baseUrl = this.appConfig.url;\n let wait = 0;\n this.bindServiceInterceptors();\n this.appConfig.refresh = (complete = false) => {\n if (complete) {\n this.reload();\n return;\n }\n if (!wait) {\n RENDER_LOGGER.debug('refreshing the app...');\n wait = MIN_TIME_BETWEEN_REFRESH_CYCLES;\n refreshAfterWait = false;\n setTimeout(() => {\n this.forceUpdate();\n this.commonPartial?.forceUpdate();\n this.appConfig.currentPage?.forceUpdate();\n this.watcher.check();\n });\n setTimeout(() => {\n wait = 0;\n refreshAfterWait && this.appConfig.refresh();\n }, wait);\n } else {\n RENDER_LOGGER.debug('will refresh the app in the next cycle.');\n refreshAfterWait = true;\n }\n }\n this.cleanup.push(\n NetworkService.notifier.subscribe('onNetworkStateChange', (networkState: NetworkState) => {\n this.networkStatus = {...networkState};\n this.refresh();\n }\n ));\n }\n\n subscribe(event: string, fn: Function) {\n return this.eventNotifier.subscribe(event, fn);\n }\n\n notify(event: string, ...args: any) {\n return this.eventNotifier.notify(event, args);\n }\n\n get activePage() {\n return this.appConfig.currentPage;\n }\n\n get Widgets() {\n return this.commonPartial?.Widgets;\n }\n\n async onBeforePageLeave(currentPage: string, nextPage: string){\n //method can be override by the user from studio;\n return true;\n }\n\n goToPage(pageName: string, params: any) {\n return this.appConfig.currentPage?.goToPage(pageName, params);\n }\n\n goBack(pageName: string, params: any) {\n return this.appConfig.currentPage?.goBack(pageName, params);\n }\n\n openUrl(url: string, params?: any) {\n return this.appConfig.currentPage?.openUrl(url, params);\n }\n\n onBeforeServiceCall(config: InternalAxiosRequestConfig) {\n //DO NOT WRITE CODE HERE:\n //This is a placeholder for the WaveMaker developer.\n return config;\n }\n\n isSkeletonEnabled() {\n return this.appConfig.spinner.loader == \"skeleton\";\n }\n\n onServiceSuccess(data: any, response: AxiosResponse) {\n //DO NOT WRITE CODE HERE:\n //This is a placeholder for the WaveMaker developer.\n }\n\n onServiceError(errorMsg: any, error: AxiosError<any>) {\n //DO NOT WRITE CODE HERE:\n //This is a placeholder for the WaveMaker developer.\n }\n\n invokeNativeApi(key: string, data: Object) {\n if (NativeModulesProxy.EmbedCommModule\n && (Platform.OS === 'android' || Platform.OS === 'ios')) {\n return NativeModulesProxy.EmbedCommModule.sendToNative(key, data || {});\n } else {\n return Promise.reject('Not able to invoke Native API in this platform.');\n }\n }\n\n triggerPageReady(activePageName: string, activePageScope: BasePage) {\n this.onPageReady(activePageName, activePageScope);\n }\n\n onPageReady(activePageName: string, activePageScope: BasePage) {\n\n }\n\n setTimezone(timezone: any){\n AppI18nService.setTimezone(timezone);\n }\n\n get spinner() {\n return AppSpinnerService;\n }\n\n openBrowser(url: string, params = {} as any) {\n if (url) {\n if (isWebPreviewMode()) {\n window.open(url, '_blank');\n } else if (url.startsWith('http') && params.target === '_blank') {\n WebBrowser.openBrowserAsync(url);\n } else {\n return Linking.openURL(url);\n }\n }\n return Promise.resolve();\n }\n\n // To support old api\n reload() {}\n\n bindServiceInterceptors() {\n this.axiosInterceptorIds = [\n axios.interceptors.request.use((config: InternalAxiosRequestConfig) => {\n const url = config.url as string;\n if (!(url.startsWith('http://') || url.startsWith(\"https://\"))) {\n config.url = this.appConfig.url + '/' + url;\n }\n config.headers = config.headers || {};\n config.headers['X-Requested-With'] = 'XMLHttpRequest';\n console.log('onBeforeService call invoked on ' + config.url);\n this.notify('beforeServiceCall', config);\n return this.onBeforeServiceCall(config);\n }),\n axios.interceptors.response.use(\n (response: AxiosResponse) => {\n this.onServiceSuccess(response.data, response);\n this.notify('afterServiceCall', response.config, response);\n return response;\n },(error: AxiosError<any>) => {\n let errorDetails: any = error.response, errMsg;\n errorDetails = getValidJSON(errorDetails?.data) || errorDetails?.data;\n if (errorDetails && errorDetails.errors) {\n errMsg = parseErrors(errorDetails.errors) || \"Service Call Failed\";\n } else {\n errMsg = error.message || \"Service Call Failed\";\n }\n error.message = errMsg;\n console.error(`Error ${errMsg} recieved from ${error.response?.config?.url}`);\n this.onServiceError(error.message, error);\n if (error.response?.config.url?.startsWith(this.appConfig.url) && !error.response?.config.url?.includes('/services/') && error.response?.status === 401) {\n this.appConfig.currentPage?.pageName !== 'Login' && this.appConfig.currentPage?.goToPage('Login');\n }\n this.notify('afterServiceCall', error.config, error);\n return Promise.reject(error)\n })\n ];\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 triggerStartUpVariables() {\n return Promise.all(this.startUpVariables.map(s => this.Variables[s] && this.Variables[s].invoke()))\n .catch(() => {});\n }\n\n componentDidMount() {\n AppSpinnerService.show({\n spinner: this.appConfig.spinner\n });\n this.cleanup.push(...Object.values(this.Variables).map((v: any) => {\n return v.subscribe(VariableEvents.BEFORE_INVOKE, () => {\n this.notify(VariableEvents.BEFORE_INVOKE, v);\n });\n }));\n this.cleanup.push(...Object.values(this.Variables).map((v: any) => {\n return v.subscribe(VariableEvents.AFTER_INVOKE, () => {\n this.notify(VariableEvents.AFTER_INVOKE, v);\n });\n }));\n this.startUpActions.map(a => this.Actions[a] && this.Actions[a].invoke());\n return this.triggerStartUpVariables()\n .then(() => {\n this.onAppVariablesReady();\n this.isStarted = true;\n this.forceUpdate();\n }, () => {});\n }\n\n componentWillUnmount(): void {\n this.axiosInterceptorIds.map(id => {\n axios.interceptors.request.eject(id);\n });\n this.cleanup.forEach(fn => fn());\n }\n\n refresh() {\n this.appConfig.refresh();\n }\n\n getProviders(content: React.ReactNode) {\n return (\n <NavigationServiceProvider value={this}>\n <ToastProvider value={AppToastService}>\n <PartialProvider value={AppPartialService}>\n <SecurityProvider value={AppSecurityService}>\n <CameraProvider value={CameraService}>\n <ScanProvider value={ScanService}>\n <ModalProvider value={AppModalService}>\n { content }\n </ModalProvider>\n </ScanProvider>\n </CameraProvider>\n </SecurityProvider>\n </PartialProvider>\n </ToastProvider>\n </NavigationServiceProvider>\n );\n }\n\n renderToasters() {\n this.toastsOpened = AppToastService.toastsOpened.length;\n return <WmMemo watcher={this.watcher} render={(watch) => {\n watch(() => AppToastService.refreshCount);\n return (\n <>\n {AppToastService.toastsOpened.map((o, i) =>{\n return this.getProviders((\n <ThemeProvider value={this.appConfig.theme}>\n <View key={i} style={[{\n position: 'absolute',\n width: '100%',\n bottom: 0,\n elevation: o.elevationIndex,\n zIndex: o.elevationIndex\n }, o.styles]}>\n <TouchableOpacity onPress={() => o.onClick && o.onClick()}>\n {o.content}\n {o.text && <WmMessage name={\"message\"+ i} type={o.type} caption={o.text} hideclose={true}></WmMessage>}\n </TouchableOpacity>\n </View>\n </ThemeProvider>\n )\n )})}\n </>);\n }}/>;\n }\n\n renderDialogs(): ReactNode {\n return <WmMemo watcher={this.watcher} render={(watch) => {\n watch(() => last(AppModalService.modalsOpened)?.content);\n this.modalsOpened = AppModalService.modalsOpened.length;\n AppModalService.animatedRefs.length = 0;\n return(\n <>\n {AppModalService.modalOptions.content &&\n AppModalService.modalsOpened.map((o, i) => {\n return (\n <View key={(o.name || '') + i}\n onStartShouldSetResponder={() => true}\n onResponderEnd={() => o.isModal && AppModalService.hideModal(o)}\n style={deepCopy(styles.appModal,\n o.centered ? styles.centeredModal: null,\n o.modalStyle,\n { elevation: o.elevationIndex,\n zIndex: o.elevationIndex })}>\n <Animatedview entryanimation={o.animation || 'fadeIn'} delay={o.animationdelay}\n ref={ref => {\n this.animatedRef = ref;\n AppModalService.animatedRefs[i] = ref;\n }}\n style={[styles.appModalContent, o.contentStyle]}>\n <GestureHandlerRootView style={{width: '100%', alignItems: 'center'}}>\n <View\n onStartShouldSetResponder={evt => true}\n onResponderEnd={(e) => e.stopPropagation()}\n style={{width: '100%', alignItems: 'center'}}>\n {this.getProviders(o.content)}\n </View>\n </GestureHandlerRootView>\n </Animatedview>\n </View>\n )}\n )\n }\n </>);\n }}/>;\n }\n\n renderDisplayManager(): ReactNode {\n return <WmMemo watcher={this.watcher} render={(watch) => {\n watch(() => AppDisplayManagerService.displayOptions.content);\n return AppDisplayManagerService.displayOptions.content\n ? (\n <ThemeProvider value={this.appConfig.theme}>\n <View style={[styles.displayViewContainer, {\n elevation: this.toastsOpened + this.modalsOpened + 1,\n zIndex: this.toastsOpened + this.modalsOpened + 1\n }]}>\n {AppDisplayManagerService.displayOptions.content}\n </View>\n </ThemeProvider>) : null;\n }}/>\n }\n\n renderIconsViewSupportForWeb() {\n try {\n return (<style type=\"text/css\">{`\n @font-face {\n font-family: 'MaterialCommunityIcons';\n src: url(${MaterialCommunityIconsFont}) format('truetype');\n }\n `}</style>);\n } catch (e) {\n console.log('require react-native-vector-icons could not be loaded.');\n }\n return null;\n }\n\n getSelectedLocale() {\n return this.appConfig.selectedLocale;\n }\n\n getDependency(serviceName: string): any {\n const service = get(SUPPORTED_SERVICES, serviceName);\n if (service) {\n return service;\n }\n }\n\n renderApp(commonPartial:React.ReactNode) {\n this.autoUpdateVariables.forEach(value => this.Variables[value]?.invokeOnParamChange());\n return (\n <SafeAreaProvider>\n <PaperProvider theme={this.paperTheme}>\n <React.Fragment>\n {Platform.OS === 'web' ? this.renderIconsViewSupportForWeb() : null}\n <SafeAreaInsetsContext.Consumer>\n {(insets = {top: 0, bottom: 0, left: 0, right: 0}) =>\n (this.getProviders(\n (<SafeAreaView style={{flex: 1}}> \n <StatusBar />\n <ThemeProvider value={this.appConfig.theme}>\n <FixedViewContainer>\n <View style={styles.container}>\n <GestureHandlerRootView style={styles.container}>\n <AppNavigator\n app={this}\n landingPage={(this.props as any).pageName}\n landingPageParams={(this.props as any)?.pageName && this.props}\n hideDrawer={this.appConfig.drawer?.getContent() === null}\n drawerContent={() => this.appConfig.drawer? this.getProviders(this.appConfig.drawer.getContent()) : null}\n drawerAnimation={this.appConfig.drawer?.getAnimation()}></AppNavigator>\n {commonPartial}\n </GestureHandlerRootView>\n </View>\n {this.appConfig.url ?\n (<WmNetworkInfoToaster appLocale={this.appConfig.appLocale}></WmNetworkInfoToaster>)\n : null}\n </FixedViewContainer>\n {this.renderToasters()}\n {this.renderDialogs()}\n {this.renderDisplayManager()}\n </ThemeProvider>\n </SafeAreaView>))\n )\n }\n </SafeAreaInsetsContext.Consumer>\n </React.Fragment>\n </PaperProvider>\n </SafeAreaProvider>\n );\n }\n}\n\nconst styles = {\n container: {\n flex: 1\n },\n appModal: {\n position: 'absolute',\n width: '100%'\n },\n appModalContent : {\n flex: 1,\n width: '100%',\n alignItems: 'center',\n flexDirection: 'column',\n justifyContent: 'center'\n },\n centeredModal: {\n flex: 1,\n position: 'absolute',\n top: 0,\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'rgba(0, 0, 0, 0.4)',\n height: '100%'\n },\n displayViewContainer: {\n position: 'absolute',\n justifyContent: 'center',\n width: '100%',\n left: 0,\n right: 0,\n top: 0,\n bottom:0\n } as ViewStyle\n};\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAsB,OAAO;AACzC,OAAOC,KAAK,MAAiE,OAAO;AACpF,SAASC,QAAQ,EAAEC,gBAAgB,EAAEC,IAAI,EAAaC,SAAS,QAAQ,cAAc;AACrF,SAASC,sBAAsB,QAAQ,8BAA8B;AACrE,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,gBAAgB,EAAEC,qBAAqB,EAAEC,YAAY,QAAQ,gCAAgC;AACtG,SAASC,YAAY,EAAEC,QAAQ,IAAIC,aAAa,QAAQ,oBAAoB;AAC5E,SAASC,OAAO,QAAQ,cAAc;AACtC,SAASC,kBAAkB,QAAQ,mBAAmB;AACtD,OAAO,KAAKC,UAAU,MAAM,kBAAkB;AAC9C,SAASC,GAAG,EAAEC,IAAI,QAAQ,QAAQ;AAClC,SAASC,aAAa,QAAQ,uCAAuC;AACrE,OAAOC,aAAa,MAAM,+CAA+C;AACzE,SAASC,aAAa,QAAQ,wCAAwC;AAEtE,OAAOC,cAAc,MAAM,gDAAgD;AAC3E,OAAOC,eAAe,MAAM,iDAAiD;AAC7E,OAAOC,cAAc,MAAwB,gDAAgD;AAC7F,OAAOC,QAAQ,MAAM,yCAAyC;AAC9D,OAAOC,UAAU,MAAM,2CAA2C;AAClE,SAASC,QAAQ,EAAEC,gBAAgB,QAAQ,sCAAsC;AACjF,OAAO,KAAKC,KAAK,MAAO,sCAAsC;AAC9D,SAASC,aAAa,QAAQ,8CAA8C;AAC5E,SAASC,kBAAkB,QAAQ,qDAAqD;AACxF,SAASC,aAAa,QAAQ,8CAA8C;AAC5E,SAA4BC,yBAAyB,QAAQ,mDAAmD;AAChH,SAASC,eAAe,QAAQ,gDAAgD;AAChF,OAAOC,oBAAoB,MAAM,mGAAmG;AACpI,OAAOC,cAAc,MAAM,kDAAkD;AAC7E,OAAOC,SAAS,MAAM,sEAAsE;AAC5F,SAASC,YAAY,QAAQ,mEAAmE;AAChG,OAAOC,cAAc,MAAM,6DAA6D;AAExF,SAASC,OAAO,QAAQ,WAAW;AACnC,SAASC,YAAY,QAAQ,aAAa;AAC1C,OAAOC,wBAAwB,MAAM,wCAAwC;AAC7E,OAAOC,eAAe,MAAM,8BAA8B;AAC1D,OAAOC,eAAe,MAAM,8BAA8B;AAC1D,OAAOC,iBAAiB,MAAM,4BAA4B;AAC1D,OAAOC,iBAAiB,MAAM,gCAAgC;AAC9D,SAASC,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,gBAAgB,QAAQ,0BAA0B;AAC3D,SAASC,cAAc,QAAQ,+BAA+B;AAC9D,OAAQC,aAAa,MAAM,kCAAkC;AAC7D,SAASC,YAAY,QAAQ,6BAA6B;AAC1D,OAAOC,WAAW,MAAM,gCAAgC;AACxD,OAAOC,kBAAkB,MAAM,iCAAiC;AAChE,SAAQC,YAAY,EAAEC,WAAW,QAAO,0DAA0D;AAClG,OAAOC,0BAA0B,MAAM,4FAA4F;AAEnI,OAAO,KAAKC,YAAY,MAAM,oBAAoB;AAGlD,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAAuBC,cAAc,QAAQ,4BAA4B;AAIzE;AACEvD,IAAI,CAAS,WAAW,CAAC,GAAG;EAAEwD,KAAK,EAAErD,UAAU,CAACsD;AAAG,CAAC;AAEtD,MAAMC,+BAA+B,GAAG,GAAG;AAE3C,MAAMC,UAAU,CAAmB;EAIjCC,WAAWA,CAASC,QAAoB,EAAE;IAAA,KAAtBA,QAAoB,GAApBA,QAAoB;IAAAC,eAAA;IAAAA,eAAA,oBAFpB,UAAU;EAI9B;EAEAC,UAAUA,CAACC,OAAkB,EAAE;IAC7B,IAAI,CAACA,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACH,QAAQ,CAAC,CAAC;EACjB;EAEAI,UAAUA,CAAA,EAAG;IACX,OAAO,IAAI,CAACD,OAAO;EACrB;EAEAE,YAAYA,CAACC,SAAiB,EAAE;IAC9B,IAAI,CAACA,SAAS,GAAGA,SAAS;IAC1B,IAAI,CAACN,QAAQ,CAAC,CAAC;EACjB;EAEAO,YAAYA,CAAA,EAAG;IACb,OAAO,IAAI,CAACD,SAAS;EACvB;AACF;AACA,MAAME,kBAAkB,GAAG;EACzB5C,KAAK,EAAEA,KAAK;EACZ6C,SAAS,EAAEnD,eAAe;EAC1BD,cAAc,EAAEA,cAAc;EAC9BoB,wBAAwB,EAAEA,wBAAwB;EAClDiC,WAAW,EAAEpC;AACf,CAAC;AACAqC,MAAM,CAAS,OAAO,CAAC,GAAG3E,KAAK;AAChC,eAAe,MAAe4E,OAAO,SAAS7E,KAAK,CAAC8E,SAAS,CAA8B;EAmCzFd,WAAWA,CAACe,KAAU,EAAE;IACtB,KAAK,CAACA,KAAK,CAAC;IAACb,eAAA,kBAlCA,CAAC,CAAC;IAAAA,eAAA,oBACA,CAAC,CAAC;IAAAA,eAAA,8BACG,MAAM,CAAC,CAAC;IAAAA,eAAA,oBAClB,KAAK;IAAAA,eAAA,oBACLzC,QAAQ,CAACR,GAAG,CAAY,YAAY,CAAC;IAAAiD,eAAA,wBACzB,IAAI9C,aAAa,CAAC,CAAC;IAAA8C,eAAA,kBAC1B,EAAE;IAAAA,eAAA,yBACK,eAAe;IAAAA,eAAA,kBACtB,EAAE;IAAAA,eAAA,wBACiB,IAAI;IAAAA,eAAA,2BACH,EAAE;IAAAA,eAAA,yBACJ,EAAE;IAAAA,eAAA,8BACG,EAAE;IAAAA,eAAA,8BACF,EAAE;IAAAA,eAAA,qBACtBxC,UAAU;IAAAwC,eAAA,6BACF,CAAC,CAAC;IAAAA,eAAA;IAAAA,eAAA,uBAEA,CAAC;IAAAA,eAAA,uBACD,CAAC;IAAAA,eAAA,kBACL1B,OAAO,CAACwC,IAAI;IAAAd,eAAA,qBAClB;MAClB,GAAGvD,YAAY;MACfsE,MAAM,EAAE;QACN,GAAGtE,YAAY,CAACsE,MAAM;QACtBC,OAAO,EAAE9C,cAAc,CAAC+C,QAAQ,CAACC;MACnC;IACF,CAAC;IAAAlB,eAAA,cACYzB,YAAY,CAAC,MAAM;MAC9B,IAAI,CAAC4C,OAAO,CAAC,CAAC;IAChB,CAAC,CAAC;IAAAnB,eAAA,wBAEqB,CAAC,CAAC;IAIvBT,YAAY,CAAC6B,oBAAoB,CAAC,CAAC;IACnCC,UAAU,CAAC,MAAM9B,YAAY,CAAC+B,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC;IACjD,IAAI,CAACC,SAAS,CAACC,GAAG,GAAG,IAAI;IACzB,IAAI,CAACD,SAAS,CAACE,MAAM,GAAG,IAAI5B,UAAU,CAAC,MAAM,IAAI,CAACsB,OAAO,CAAC,CAAC,CAAC;IAC5DvC,iBAAiB,CAAC8C,iBAAiB,CAAC;MAClCC,OAAO,EAAE,IAAI,CAACJ,SAAS,CAACI;IAC1B,CAAC,CAAC;IACF,IAAIC,gBAAgB,GAAG,KAAK;IAC5B,IAAI,CAACC,OAAO,GAAG,IAAI,CAACN,SAAS,CAACO,GAAG;IACjC,IAAIC,IAAI,GAAG,CAAC;IACZ,IAAI,CAACC,uBAAuB,CAAC,CAAC;IAC9B,IAAI,CAACT,SAAS,CAACJ,OAAO,GAAG,CAACc,QAAQ,GAAG,KAAK,KAAK;MAC7C,IAAIA,QAAQ,EAAE;QACZ,IAAI,CAACC,MAAM,CAAC,CAAC;QACb;MACF;MACA,IAAI,CAACH,IAAI,EAAE;QACT9E,aAAa,CAACkF,KAAK,CAAC,uBAAuB,CAAC;QAC5CJ,IAAI,GAAGnC,+BAA+B;QACtCgC,gBAAgB,GAAG,KAAK;QACxBP,UAAU,CAAC,MAAM;UAAA,IAAAe,mBAAA,EAAAC,qBAAA;UACf,IAAI,CAACC,WAAW,CAAC,CAAC;UAClB,CAAAF,mBAAA,OAAI,CAACG,aAAa,cAAAH,mBAAA,eAAlBA,mBAAA,CAAoBE,WAAW,CAAC,CAAC;UACjC,CAAAD,qBAAA,OAAI,CAACd,SAAS,CAACiB,WAAW,cAAAH,qBAAA,eAA1BA,qBAAA,CAA4BC,WAAW,CAAC,CAAC;UACzC,IAAI,CAACG,OAAO,CAACC,KAAK,CAAC,CAAC;QACtB,CAAC,CAAC;QACFrB,UAAU,CAAC,MAAM;UACfU,IAAI,GAAG,CAAC;UACRH,gBAAgB,IAAI,IAAI,CAACL,SAAS,CAACJ,OAAO,CAAC,CAAC;QAC9C,CAAC,EAAEY,IAAI,CAAC;MACV,CAAC,MAAM;QACL9E,aAAa,CAACkF,KAAK,CAAC,yCAAyC,CAAC;QAC9DP,gBAAgB,GAAG,IAAI;MACzB;IACF,CAAC;IACD,IAAI,CAACe,OAAO,CAACC,IAAI,CACftF,cAAc,CAACuF,QAAQ,CAACC,SAAS,CAAC,sBAAsB,EAAGC,YAA0B,IAAK;MACxF,IAAI,CAACC,aAAa,GAAG;QAAC,GAAGD;MAAY,CAAC;MACtC,IAAI,CAAC5B,OAAO,CAAC,CAAC;IAChB,CACF,CAAC,CAAC;EACJ;EAEA2B,SAASA,CAACG,KAAa,EAAEC,EAAY,EAAE;IACrC,OAAO,IAAI,CAACC,aAAa,CAACL,SAAS,CAACG,KAAK,EAAEC,EAAE,CAAC;EAChD;EAEAE,MAAMA,CAACH,KAAa,EAAE,GAAGI,IAAS,EAAE;IAClC,OAAO,IAAI,CAACF,aAAa,CAACC,MAAM,CAACH,KAAK,EAAEI,IAAI,CAAC;EAC/C;EAEA,IAAIC,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAAC/B,SAAS,CAACiB,WAAW;EACnC;EAEA,IAAIe,OAAOA,CAAA,EAAG;IAAA,IAAAC,oBAAA;IACZ,QAAAA,oBAAA,GAAO,IAAI,CAACjB,aAAa,cAAAiB,oBAAA,uBAAlBA,oBAAA,CAAoBD,OAAO;EACpC;EAEA,MAAME,iBAAiBA,CAACjB,WAAmB,EAAEkB,QAAgB,EAAC;IAC5D;IACA,OAAO,IAAI;EACb;EAEAC,QAAQA,CAACC,QAAgB,EAAEC,MAAW,EAAG;IAAA,IAAAC,sBAAA;IACvC,QAAAA,sBAAA,GAAO,IAAI,CAACvC,SAAS,CAACiB,WAAW,cAAAsB,sBAAA,uBAA1BA,sBAAA,CAA4BH,QAAQ,CAACC,QAAQ,EAAEC,MAAM,CAAC;EAC/D;EAEAE,MAAMA,CAACH,QAAgB,EAAEC,MAAW,EAAE;IAAA,IAAAG,sBAAA;IACpC,QAAAA,sBAAA,GAAO,IAAI,CAACzC,SAAS,CAACiB,WAAW,cAAAwB,sBAAA,uBAA1BA,sBAAA,CAA4BD,MAAM,CAACH,QAAQ,EAAEC,MAAM,CAAC;EAC7D;EAEAI,OAAOA,CAACnC,GAAW,EAAE+B,MAAY,EAAG;IAAA,IAAAK,sBAAA;IAClC,QAAAA,sBAAA,GAAO,IAAI,CAAC3C,SAAS,CAACiB,WAAW,cAAA0B,sBAAA,uBAA1BA,sBAAA,CAA4BD,OAAO,CAACnC,GAAG,EAAE+B,MAAM,CAAC;EACzD;EAEAM,mBAAmBA,CAACC,MAAkC,EAAE;IACtD;IACA;IACA,OAAOA,MAAM;EACf;EAEAC,iBAAiBA,CAAA,EAAG;IAClB,OAAO,IAAI,CAAC9C,SAAS,CAACI,OAAO,CAAC2C,MAAM,IAAI,UAAU;EACpD;EAEAC,gBAAgBA,CAACC,IAAS,EAAEC,QAAuB,EAAE;IACnD;IACA;EAAA;EAGFC,cAAcA,CAACC,QAAa,EAAEC,KAAsB,EAAE;IACpD;IACA;EAAA;EAGFC,eAAeA,CAACC,GAAW,EAAEN,IAAY,EAAE;IACzC,IAAI3H,kBAAkB,CAACkI,eAAe,KAC9B/I,QAAQ,CAACgJ,EAAE,KAAK,SAAS,IAAIhJ,QAAQ,CAACgJ,EAAE,KAAK,KAAK,CAAC,EAAE;MACzD,OAAOnI,kBAAkB,CAACkI,eAAe,CAACE,YAAY,CAACH,GAAG,EAAEN,IAAI,IAAI,CAAC,CAAC,CAAC;IAC3E,CAAC,MAAM;MACH,OAAOU,OAAO,CAACC,MAAM,CAAC,iDAAiD,CAAC;IAC5E;EACF;EAEAC,gBAAgBA,CAACC,cAAsB,EAAEC,eAAyB,EAAE;IAClE,IAAI,CAACC,WAAW,CAACF,cAAc,EAAEC,eAAe,CAAC;EACnD;EAEAC,WAAWA,CAACF,cAAsB,EAAEC,eAAyB,EAAE,CAE/D;EAEAE,WAAWA,CAACC,QAAa,EAAC;IACxBpH,cAAc,CAACmH,WAAW,CAACC,QAAQ,CAAC;EACtC;EAEA,IAAI9D,OAAOA,CAAA,EAAG;IACZ,OAAO/C,iBAAiB;EAC1B;EAEA8G,WAAWA,CAAC5D,GAAW,EAAE+B,MAAM,GAAG,CAAC,CAAQ,EAAE;IAC3C,IAAI/B,GAAG,EAAE;MACP,IAAIpE,gBAAgB,CAAC,CAAC,EAAE;QACtBiI,MAAM,CAACC,IAAI,CAAC9D,GAAG,EAAE,QAAQ,CAAC;MAC5B,CAAC,MAAM,IAAIA,GAAG,CAAC+D,UAAU,CAAC,MAAM,CAAC,IAAIhC,MAAM,CAACiC,MAAM,KAAK,QAAQ,EAAE;QAC/DhJ,UAAU,CAACiJ,gBAAgB,CAACjE,GAAG,CAAC;MAClC,CAAC,MAAM;QACL,OAAOlF,OAAO,CAACoJ,OAAO,CAAClE,GAAG,CAAC;MAC7B;IACF;IACA,OAAOoD,OAAO,CAACe,OAAO,CAAC,CAAC;EAC1B;;EAEA;EACA/D,MAAMA,CAAA,EAAG,CAAC;EAEVF,uBAAuBA,CAAA,EAAG;IACxB,IAAI,CAACkE,mBAAmB,GAAG,CACzBnK,KAAK,CAACoK,YAAY,CAACC,OAAO,CAACC,GAAG,CAAEjC,MAAkC,IAAK;MACrE,MAAMtC,GAAG,GAAGsC,MAAM,CAACtC,GAAa;MAChC,IAAI,EAAEA,GAAG,CAAC+D,UAAU,CAAC,SAAS,CAAC,IAAI/D,GAAG,CAAC+D,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE;QAC9DzB,MAAM,CAACtC,GAAG,GAAG,IAAI,CAACP,SAAS,CAACO,GAAG,GAAG,GAAG,GAAGA,GAAG;MAC7C;MACAsC,MAAM,CAACkC,OAAO,GAAGlC,MAAM,CAACkC,OAAO,IAAI,CAAC,CAAC;MACrClC,MAAM,CAACkC,OAAO,CAAC,kBAAkB,CAAC,GAAG,gBAAgB;MACrDC,OAAO,CAACC,GAAG,CAAC,kCAAkC,GAAGpC,MAAM,CAACtC,GAAG,CAAC;MAC5D,IAAI,CAACsB,MAAM,CAAC,mBAAmB,EAAEgB,MAAM,CAAC;MACxC,OAAO,IAAI,CAACD,mBAAmB,CAACC,MAAM,CAAC;IACzC,CAAC,CAAC,EACFrI,KAAK,CAACoK,YAAY,CAAC1B,QAAQ,CAAC4B,GAAG,CAC5B5B,QAAuB,IAAK;MAC3B,IAAI,CAACF,gBAAgB,CAACE,QAAQ,CAACD,IAAI,EAAEC,QAAQ,CAAC;MAC9C,IAAI,CAACrB,MAAM,CAAC,kBAAkB,EAAEqB,QAAQ,CAACL,MAAM,EAAEK,QAAQ,CAAC;MAC1D,OAAOA,QAAQ;IACjB,CAAC,EAAEG,KAAsB,IAAK;MAAA,IAAA6B,aAAA,EAAAC,cAAA,EAAAC,eAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA;MAC5B,IAAIC,YAAiB,GAAGnC,KAAK,CAACH,QAAQ;QAAEuC,MAAM;MAC9CD,YAAY,GAAG3H,YAAY,EAAAqH,aAAA,GAACM,YAAY,cAAAN,aAAA,uBAAZA,aAAA,CAAcjC,IAAI,CAAC,MAAAkC,cAAA,GAAIK,YAAY,cAAAL,cAAA,uBAAZA,cAAA,CAAclC,IAAI;MACrE,IAAIuC,YAAY,IAAIA,YAAY,CAACE,MAAM,EAAE;QACrCD,MAAM,GAAG3H,WAAW,CAAC0H,YAAY,CAACE,MAAM,CAAC,IAAI,qBAAqB;MACtE,CAAC,MAAM;QACHD,MAAM,GAAGpC,KAAK,CAACsC,OAAO,IAAI,qBAAqB;MACnD;MACAtC,KAAK,CAACsC,OAAO,GAAGF,MAAM;MACtBT,OAAO,CAAC3B,KAAK,CAAC,SAASoC,MAAM,mBAAAL,eAAA,GAAkB/B,KAAK,CAACH,QAAQ,cAAAkC,eAAA,gBAAAA,eAAA,GAAdA,eAAA,CAAgBvC,MAAM,cAAAuC,eAAA,uBAAtBA,eAAA,CAAwB7E,GAAG,EAAE,CAAC;MAC7E,IAAI,CAAC4C,cAAc,CAACE,KAAK,CAACsC,OAAO,EAAEtC,KAAK,CAAC;MACzC,IAAI,CAAAgC,gBAAA,GAAAhC,KAAK,CAACH,QAAQ,cAAAmC,gBAAA,gBAAAA,gBAAA,GAAdA,gBAAA,CAAgBxC,MAAM,CAACtC,GAAG,cAAA8E,gBAAA,eAA1BA,gBAAA,CAA4Bf,UAAU,CAAC,IAAI,CAACtE,SAAS,CAACO,GAAG,CAAC,IAAI,GAAA+E,gBAAA,GAACjC,KAAK,CAACH,QAAQ,cAAAoC,gBAAA,gBAAAA,gBAAA,GAAdA,gBAAA,CAAgBzC,MAAM,CAACtC,GAAG,cAAA+E,gBAAA,eAA1BA,gBAAA,CAA4BM,QAAQ,CAAC,YAAY,CAAC,KAAI,EAAAL,gBAAA,GAAAlC,KAAK,CAACH,QAAQ,cAAAqC,gBAAA,uBAAdA,gBAAA,CAAgBM,MAAM,MAAK,GAAG,EAAE;QAAA,IAAAC,sBAAA,EAAAC,sBAAA;QACvJ,EAAAD,sBAAA,OAAI,CAAC9F,SAAS,CAACiB,WAAW,cAAA6E,sBAAA,uBAA1BA,sBAAA,CAA4BzD,QAAQ,MAAK,OAAO,MAAA0D,sBAAA,GAAI,IAAI,CAAC/F,SAAS,CAACiB,WAAW,cAAA8E,sBAAA,uBAA1BA,sBAAA,CAA4B3D,QAAQ,CAAC,OAAO,CAAC;MACnG;MACA,IAAI,CAACP,MAAM,CAAC,kBAAkB,EAAEwB,KAAK,CAACR,MAAM,EAAEQ,KAAK,CAAC;MACpD,OAAOM,OAAO,CAACC,MAAM,CAACP,KAAK,CAAC;IAC9B,CAAC,CAAC,CACL;EACH;EAEA2C,IAAIA,CAACrE,EAAY,EAAEsE,WAAW,GAAG,KAAK,EAAE;IACtC,IAAI;MACF,OAAOtE,EAAE,CAACuE,IAAI,CAAC,IAAI,CAAC;IACtB,CAAC,CAAC,OAAOC,CAAC,EAAE;MACV,IAAIF,WAAW,EAAE;QACf,MAAME,CAAC;MACT,CAAC,MAAM;QACL,OAAO,IAAI;MACb;IACF;EACF;EAEAC,uBAAuBA,CAAA,EAAG;IACxB,OAAOzC,OAAO,CAAC0C,GAAG,CAAC,IAAI,CAACC,gBAAgB,CAACC,GAAG,CAACC,CAAC,IAAI,IAAI,CAACC,SAAS,CAACD,CAAC,CAAC,IAAI,IAAI,CAACC,SAAS,CAACD,CAAC,CAAC,CAACE,MAAM,CAAC,CAAC,CAAC,CAAC,CAClGC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;EAClB;EAEAC,iBAAiBA,CAAA,EAAG;IAClBvJ,iBAAiB,CAACwJ,IAAI,CAAC;MACrBzG,OAAO,EAAE,IAAI,CAACJ,SAAS,CAACI;IAC1B,CAAC,CAAC;IACF,IAAI,CAACgB,OAAO,CAACC,IAAI,CAAC,GAAGyF,MAAM,CAACC,MAAM,CAAC,IAAI,CAACN,SAAS,CAAC,CAACF,GAAG,CAAES,CAAM,IAAK;MACjE,OAAOA,CAAC,CAACzF,SAAS,CAACrD,cAAc,CAAC+I,aAAa,EAAE,MAAM;QACrD,IAAI,CAACpF,MAAM,CAAC3D,cAAc,CAAC+I,aAAa,EAAED,CAAC,CAAC;MAC9C,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,IAAI,CAAC5F,OAAO,CAACC,IAAI,CAAC,GAAGyF,MAAM,CAACC,MAAM,CAAC,IAAI,CAACN,SAAS,CAAC,CAACF,GAAG,CAAES,CAAM,IAAK;MACjE,OAAOA,CAAC,CAACzF,SAAS,CAACrD,cAAc,CAACgJ,YAAY,EAAE,MAAM;QACpD,IAAI,CAACrF,MAAM,CAAC3D,cAAc,CAACgJ,YAAY,EAAEF,CAAC,CAAC;MAC7C,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,IAAI,CAACG,cAAc,CAACZ,GAAG,CAACa,CAAC,IAAI,IAAI,CAACC,OAAO,CAACD,CAAC,CAAC,IAAI,IAAI,CAACC,OAAO,CAACD,CAAC,CAAC,CAACV,MAAM,CAAC,CAAC,CAAC;IACzE,OAAO,IAAI,CAACN,uBAAuB,CAAC,CAAC,CACpCkB,IAAI,CAAC,MAAM;MACV,IAAI,CAACC,mBAAmB,CAAC,CAAC;MAC1B,IAAI,CAACC,SAAS,GAAG,IAAI;MACrB,IAAI,CAACzG,WAAW,CAAC,CAAC;IACpB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;EACd;EAEA0G,oBAAoBA,CAAA,EAAS;IAC3B,IAAI,CAAC9C,mBAAmB,CAAC4B,GAAG,CAACmB,EAAE,IAAI;MACjClN,KAAK,CAACoK,YAAY,CAACC,OAAO,CAAC8C,KAAK,CAACD,EAAE,CAAC;IACtC,CAAC,CAAC;IACF,IAAI,CAACtG,OAAO,CAACwG,OAAO,CAACjG,EAAE,IAAIA,EAAE,CAAC,CAAC,CAAC;EAClC;EAEA/B,OAAOA,CAAA,EAAG;IACR,IAAI,CAACI,SAAS,CAACJ,OAAO,CAAC,CAAC;EAC1B;EAEAiI,YAAYA,CAAClJ,OAAwB,EAAE;IACrC,oBACEpE,KAAA,CAAAuN,aAAA,CAACtL,yBAAyB;MAACuL,KAAK,EAAE;IAAK,gBACrCxN,KAAA,CAAAuN,aAAA,CAACvL,aAAa;MAACwL,KAAK,EAAE5K;IAAgB,gBACpC5C,KAAA,CAAAuN,aAAA,CAACrL,eAAe;MAACsL,KAAK,EAAE3K;IAAkB,gBACxC7C,KAAA,CAAAuN,aAAA,CAACvK,gBAAgB;MAACwK,KAAK,EAAEnK;IAAmB,gBAC1CrD,KAAA,CAAAuN,aAAA,CAACtK,cAAc;MAACuK,KAAK,EAAEtK;IAAc,gBACnClD,KAAA,CAAAuN,aAAA,CAACpK,YAAY;MAACqK,KAAK,EAAEpK;IAAY,gBAC/BpD,KAAA,CAAAuN,aAAA,CAACzL,aAAa;MAAC0L,KAAK,EAAE7K;IAAgB,GAClCyB,OACW,CACH,CACA,CACA,CACH,CACJ,CACU,CAAC;EAEhC;EAEAqJ,cAAcA,CAAA,EAAG;IACf,IAAI,CAACC,YAAY,GAAG9K,eAAe,CAAC8K,YAAY,CAACC,MAAM;IACvD,oBAAO3N,KAAA,CAAAuN,aAAA,CAAC7J,MAAM;MAACiD,OAAO,EAAE,IAAI,CAACA,OAAQ;MAACiH,MAAM,EAAGC,KAAK,IAAK;QACvDA,KAAK,CAAC,MAAMjL,eAAe,CAACkL,YAAY,CAAC;QACzC,oBACE9N,KAAA,CAAAuN,aAAA,CAAAvN,KAAA,CAAA+N,QAAA,QACGnL,eAAe,CAAC8K,YAAY,CAAC1B,GAAG,CAAC,CAACgC,CAAC,EAAEC,CAAC,KAAI;UACzC,OAAO,IAAI,CAACX,YAAY,eACtBtN,KAAA,CAAAuN,aAAA,CAAClM,aAAa;YAACmM,KAAK,EAAE,IAAI,CAAC/H,SAAS,CAACyI;UAAM,gBACzClO,KAAA,CAAAuN,aAAA,CAACnN,IAAI;YAAC4I,GAAG,EAAEiF,CAAE;YAACrK,KAAK,EAAE,CAAC;cACpBuK,QAAQ,EAAE,UAAU;cACpBC,KAAK,EAAE,MAAM;cACbC,MAAM,EAAE,CAAC;cACTC,SAAS,EAAEN,CAAC,CAACO,cAAc;cAC3BC,MAAM,EAAER,CAAC,CAACO;YACZ,CAAC,EAAEP,CAAC,CAACS,MAAM;UAAE,gBACXzO,KAAA,CAAAuN,aAAA,CAACpN,gBAAgB;YAACuO,OAAO,EAAEA,CAAA,KAAMV,CAAC,CAACW,OAAO,IAAIX,CAAC,CAACW,OAAO,CAAC;UAAE,GACvDX,CAAC,CAAC5J,OAAO,EACT4J,CAAC,CAACY,IAAI,iBAAI5O,KAAA,CAAAuN,aAAA,CAAClL,SAAS;YAACwM,IAAI,EAAE,SAAS,GAAEZ,CAAE;YAACa,IAAI,EAAEd,CAAC,CAACc,IAAK;YAACC,OAAO,EAAEf,CAAC,CAACY,IAAK;YAACI,SAAS,EAAE;UAAK,CAAY,CACrF,CACd,CACO,CAEnB,CAAC;QAAA,CAAC,CACF,CAAC;MACP;IAAE,CAAC,CAAC;EACN;EAEAC,aAAaA,CAAA,EAAc;IACzB,oBAAOjP,KAAA,CAAAuN,aAAA,CAAC7J,MAAM;MAACiD,OAAO,EAAE,IAAI,CAACA,OAAQ;MAACiH,MAAM,EAAGC,KAAK,IAAK;QACvDA,KAAK,CAAC;UAAA,IAAAqB,KAAA;UAAA,QAAAA,KAAA,GAAMhO,IAAI,CAACyB,eAAe,CAACwM,YAAY,CAAC,cAAAD,KAAA,uBAAlCA,KAAA,CAAoC9K,OAAO;QAAA,EAAC;QACxD,IAAI,CAAC+K,YAAY,GAAGxM,eAAe,CAACwM,YAAY,CAACxB,MAAM;QACnDhL,eAAe,CAACyM,YAAY,CAACzB,MAAM,GAAG,CAAC;QAC3C,oBACE3N,KAAA,CAAAuN,aAAA,CAAAvN,KAAA,CAAA+N,QAAA,QACCpL,eAAe,CAAC0M,YAAY,CAACjL,OAAO,IACnCzB,eAAe,CAACwM,YAAY,CAACnD,GAAG,CAAC,CAACgC,CAAC,EAAEC,CAAC,KAAK;UACzC,oBACEjO,KAAA,CAAAuN,aAAA,CAACnN,IAAI;YAAC4I,GAAG,EAAE,CAACgF,CAAC,CAACa,IAAI,IAAI,EAAE,IAAIZ,CAAE;YAC5BqB,yBAAyB,EAAEA,CAAA,KAAM,IAAK;YACtCC,cAAc,EAAEA,CAAA,KAAMvB,CAAC,CAACwB,OAAO,IAAI7M,eAAe,CAAC8M,SAAS,CAACzB,CAAC,CAAE;YAChEpK,KAAK,EAAEjC,QAAQ,CAAC8M,MAAM,CAACiB,QAAQ,EAC7B1B,CAAC,CAAC2B,QAAQ,GAAGlB,MAAM,CAACmB,aAAa,GAAE,IAAI,EACvC5B,CAAC,CAAC6B,UAAU,EACZ;cAAEvB,SAAS,EAAEN,CAAC,CAACO,cAAc;cAC3BC,MAAM,EAAER,CAAC,CAACO;YAAe,CAAC;UAAE,gBAC5BvO,KAAA,CAAAuN,aAAA,CAACjL,YAAY;YAACwN,cAAc,EAAE9B,CAAC,CAACzJ,SAAS,IAAI,QAAS;YAACwL,KAAK,EAAE/B,CAAC,CAACgC,cAAe;YAC7EC,GAAG,EAAEA,GAAG,IAAI;cACV,IAAI,CAACC,WAAW,GAAGD,GAAG;cACtBtN,eAAe,CAACyM,YAAY,CAACnB,CAAC,CAAC,GAAGgC,GAAG;YACvC,CAAE;YACFrM,KAAK,EAAE,CAAC6K,MAAM,CAAC0B,eAAe,EAAEnC,CAAC,CAACoC,YAAY;UAAE,gBAChDpQ,KAAA,CAAAuN,aAAA,CAACjN,sBAAsB;YAACsD,KAAK,EAAE;cAACwK,KAAK,EAAE,MAAM;cAAEiC,UAAU,EAAE;YAAQ;UAAE,gBACnErQ,KAAA,CAAAuN,aAAA,CAACnN,IAAI;YACHkP,yBAAyB,EAAEgB,GAAG,IAAI,IAAK;YACvCf,cAAc,EAAG3D,CAAC,IAAKA,CAAC,CAAC2E,eAAe,CAAC,CAAE;YAC3C3M,KAAK,EAAE;cAACwK,KAAK,EAAE,MAAM;cAAEiC,UAAU,EAAE;YAAQ;UAAE,GAC1C,IAAI,CAAC/C,YAAY,CAACU,CAAC,CAAC5J,OAAO,CAC1B,CACgB,CACZ,CACd,CAAC;QACR,CACH,CAEF,CAAC;MACL;IAAE,CAAC,CAAC;EACN;EAEAoM,oBAAoBA,CAAA,EAAc;IAChC,oBAAOxQ,KAAA,CAAAuN,aAAA,CAAC7J,MAAM;MAACiD,OAAO,EAAE,IAAI,CAACA,OAAQ;MAACiH,MAAM,EAAGC,KAAK,IAAK;QACvDA,KAAK,CAAC,MAAMnL,wBAAwB,CAAC+N,cAAc,CAACrM,OAAO,CAAC;QAC5D,OAAO1B,wBAAwB,CAAC+N,cAAc,CAACrM,OAAO,gBAElDpE,KAAA,CAAAuN,aAAA,CAAClM,aAAa;UAACmM,KAAK,EAAE,IAAI,CAAC/H,SAAS,CAACyI;QAAM,gBACzClO,KAAA,CAAAuN,aAAA,CAACnN,IAAI;UAACwD,KAAK,EAAE,CAAC6K,MAAM,CAACiC,oBAAoB,EAAE;YACzCpC,SAAS,EAAE,IAAI,CAACZ,YAAY,GAAG,IAAI,CAACyB,YAAY,GAAG,CAAC;YACpDX,MAAM,EAAE,IAAI,CAACd,YAAY,GAAG,IAAI,CAACyB,YAAY,GAAG;UAClD,CAAC;QAAE,GACAzM,wBAAwB,CAAC+N,cAAc,CAACrM,OACrC,CACO,CAAC,GAAI,IAAI;MAC9B;IAAE,CAAC,CAAC;EACN;EAEAuM,4BAA4BA,CAAA,EAAG;IAC7B,IAAI;MACF,oBAAQ3Q,KAAA,CAAAuN,aAAA;QAAOuB,IAAI,EAAC;MAAU,GAAE;AACtC;AACA;AACA,qBAAqBtL,0BAA0B;AAC/C;AACA,OAAe,CAAC;IACZ,CAAC,CAAC,OAAOoI,CAAC,EAAE;MACVnB,OAAO,CAACC,GAAG,CAAC,wDAAwD,CAAC;IACvE;IACA,OAAO,IAAI;EACb;EAEAkG,iBAAiBA,CAAA,EAAG;IAClB,OAAO,IAAI,CAACnL,SAAS,CAACoL,cAAc;EACtC;EAEAC,aAAaA,CAACC,WAAmB,EAAO;IACtC,MAAMC,OAAO,GAAG/P,GAAG,CAACwD,kBAAkB,EAAEsM,WAAW,CAAC;IACpD,IAAIC,OAAO,EAAE;MACX,OAAOA,OAAO;IAChB;EACF;EAEAC,SAASA,CAACxK,aAA6B,EAAE;IACvC,IAAI,CAACyK,mBAAmB,CAAC7D,OAAO,CAACG,KAAK;MAAA,IAAA2D,qBAAA;MAAA,QAAAA,qBAAA,GAAI,IAAI,CAACjF,SAAS,CAACsB,KAAK,CAAC,cAAA2D,qBAAA,uBAArBA,qBAAA,CAAuBC,mBAAmB,CAAC,CAAC;IAAA,EAAC;IACvF,oBACEpR,KAAA,CAAAuN,aAAA,CAAC/M,gBAAgB,qBACfR,KAAA,CAAAuN,aAAA,CAAC1M,aAAa;MAACqN,KAAK,EAAE,IAAI,CAACmD;IAAW,gBACpCrR,KAAA,CAAAuN,aAAA,CAACvN,KAAK,CAAC+N,QAAQ,QACZ7N,QAAQ,CAACgJ,EAAE,KAAK,KAAK,GAAG,IAAI,CAACyH,4BAA4B,CAAC,CAAC,GAAG,IAAI,eACrE3Q,KAAA,CAAAuN,aAAA,CAAC9M,qBAAqB,CAAC6Q,QAAQ,QAC5B,CAACC,MAAM,GAAG;MAACC,GAAG,EAAE,CAAC;MAAEnD,MAAM,EAAE,CAAC;MAAEoD,IAAI,EAAE,CAAC;MAAEC,KAAK,EAAE;IAAC,CAAC;MAAA,IAAAC,WAAA,EAAAC,qBAAA,EAAAC,sBAAA;MAAA,OAC9C,IAAI,CAACvE,YAAY,eACftN,KAAA,CAAAuN,aAAA,CAAC7M,YAAY;QAAEkD,KAAK,EAAE;UAACkO,IAAI,EAAE;QAAC;MAAE,gBAC/B9R,KAAA,CAAAuN,aAAA,CAAClN,SAAS,MAAE,CAAC,eACbL,KAAA,CAAAuN,aAAA,CAAClM,aAAa;QAACmM,KAAK,EAAE,IAAI,CAAC/H,SAAS,CAACyI;MAAM,gBAC3ClO,KAAA,CAAAuN,aAAA,CAACxL,kBAAkB,qBACjB/B,KAAA,CAAAuN,aAAA,CAACnN,IAAI;QAACwD,KAAK,EAAE6K,MAAM,CAACsD;MAAU,gBAC5B/R,KAAA,CAAAuN,aAAA,CAACjN,sBAAsB;QAACsD,KAAK,EAAE6K,MAAM,CAACsD;MAAU,gBAChD/R,KAAA,CAAAuN,aAAA,CAACxK,YAAY;QACX2C,GAAG,EAAE,IAAK;QACVsM,WAAW,EAAG,IAAI,CAACjN,KAAK,CAAS+C,QAAS;QAC1CmK,iBAAiB,EAAE,EAAAN,WAAA,GAAC,IAAI,CAAC5M,KAAK,cAAA4M,WAAA,uBAAXA,WAAA,CAAqB7J,QAAQ,KAAI,IAAI,CAAC/C,KAAM;QAC/DmN,UAAU,EAAE,EAAAN,qBAAA,OAAI,CAACnM,SAAS,CAACE,MAAM,cAAAiM,qBAAA,uBAArBA,qBAAA,CAAuBvN,UAAU,CAAC,CAAC,MAAK,IAAK;QACzD8N,aAAa,EAAEA,CAAA,KAAM,IAAI,CAAC1M,SAAS,CAACE,MAAM,GAAE,IAAI,CAAC2H,YAAY,CAAC,IAAI,CAAC7H,SAAS,CAACE,MAAM,CAACtB,UAAU,CAAC,CAAC,CAAC,GAAG,IAAK;QACzG+N,eAAe,GAAAP,sBAAA,GAAE,IAAI,CAACpM,SAAS,CAACE,MAAM,cAAAkM,sBAAA,uBAArBA,sBAAA,CAAuBrN,YAAY,CAAC;MAAE,CAAe,CAAC,EACtEiC,aACqB,CACpB,CAAC,EACN,IAAI,CAAChB,SAAS,CAACO,GAAG,gBAChBhG,KAAA,CAAAuN,aAAA,CAACpL,oBAAoB;QAAEkQ,SAAS,EAAE,IAAI,CAAC5M,SAAS,CAAC4M;MAAU,CAAuB,CAAC,GAClF,IACc,CAAC,EACpB,IAAI,CAAC5E,cAAc,CAAC,CAAC,EACrB,IAAI,CAACwB,aAAa,CAAC,CAAC,EACpB,IAAI,CAACuB,oBAAoB,CAAC,CACZ,CACH,CAAE,CAAC;IAAA,CAGS,CAChB,CACH,CACC,CAAC;EAEvB;AACF;AAEA,MAAM/B,MAAM,GAAG;EACbsD,SAAS,EAAE;IACTD,IAAI,EAAE;EACR,CAAC;EACDpC,QAAQ,EAAE;IACRvB,QAAQ,EAAE,UAAU;IACpBC,KAAK,EAAE;EACT,CAAC;EACD+B,eAAe,EAAG;IAChB2B,IAAI,EAAE,CAAC;IACP1D,KAAK,EAAE,MAAM;IACbiC,UAAU,EAAE,QAAQ;IACpBiC,aAAa,EAAE,QAAQ;IACvBC,cAAc,EAAE;EAClB,CAAC;EACD3C,aAAa,EAAE;IACbkC,IAAI,EAAE,CAAC;IACP3D,QAAQ,EAAE,UAAU;IACpBqD,GAAG,EAAE,CAAC;IACNc,aAAa,EAAE,KAAK;IACpBC,cAAc,EAAE,QAAQ;IACxBlC,UAAU,EAAE,QAAQ;IACpBmC,eAAe,EAAE,oBAAoB;IACrCC,MAAM,EAAE;EACV,CAAC;EACD/B,oBAAoB,EAAE;IACpBvC,QAAQ,EAAE,UAAU;IACpBoE,cAAc,EAAE,QAAQ;IACxBnE,KAAK,EAAE,MAAM;IACbqD,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRF,GAAG,EAAE,CAAC;IACNnD,MAAM,EAAC;EACT;AACF,CAAC","ignoreList":[]}