@wavemaker/app-rn-runtime 11.11.7-rc.6211 → 11.12.0-next.28188
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/advanced/carousel/carousel.component.js +4 -2
- package/components/advanced/carousel/carousel.component.js.map +1 -1
- package/components/basic/anchor/anchor.component.js +11 -5
- package/components/basic/anchor/anchor.component.js.map +1 -1
- package/components/basic/anchor/anchor.props.js +1 -0
- package/components/basic/anchor/anchor.props.js.map +1 -1
- package/components/basic/audio/audio.component.js +52 -47
- package/components/basic/audio/audio.component.js.map +1 -1
- package/components/basic/bottomsheet/bottomsheet.component.js +94 -48
- package/components/basic/bottomsheet/bottomsheet.component.js.map +1 -1
- package/components/basic/bottomsheet/bottomsheet.props.js +1 -0
- package/components/basic/bottomsheet/bottomsheet.props.js.map +1 -1
- package/components/basic/button/button.component.js +2 -1
- package/components/basic/button/button.component.js.map +1 -1
- package/components/basic/button/button.props.js +1 -0
- package/components/basic/button/button.props.js.map +1 -1
- package/components/basic/label/label.component.js.map +1 -1
- package/components/basic/label/label.props.js +1 -0
- package/components/basic/label/label.props.js.map +1 -1
- package/components/basic/message/message.component.js +15 -7
- package/components/basic/message/message.component.js.map +1 -1
- package/components/basic/message/message.props.js +1 -0
- package/components/basic/message/message.props.js.map +1 -1
- package/components/basic/picture/picture.component.js +2 -2
- package/components/basic/picture/picture.component.js.map +1 -1
- package/components/basic/video/video.component.js +69 -42
- package/components/basic/video/video.component.js.map +1 -1
- package/components/chart/basechart.props.js +1 -0
- package/components/chart/basechart.props.js.map +1 -1
- package/components/container/container.component.js +107 -27
- package/components/container/container.component.js.map +1 -1
- package/components/container/container.props.js +3 -1
- package/components/container/container.props.js.map +1 -1
- package/components/container/container.styles.js +1 -3
- package/components/container/container.styles.js.map +1 -1
- package/components/container/layoutgrid/gridcolumn/gridcolumn.component.js +6 -1
- package/components/container/layoutgrid/gridcolumn/gridcolumn.component.js.map +1 -1
- package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js +2 -2
- package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js.map +1 -1
- package/components/container/tabs/tabheader/tabheader.component.js +11 -2
- package/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
- package/components/container/tabs/tabheader/tabheader.props.js +1 -0
- package/components/container/tabs/tabheader/tabheader.props.js.map +1 -1
- package/components/container/tabs/tabpane/tabpane.props.js +3 -0
- package/components/container/tabs/tabpane/tabpane.props.js.map +1 -1
- package/components/container/tabs/tabs.component.js +11 -2
- package/components/container/tabs/tabs.component.js.map +1 -1
- package/components/container/wizard/wizard.component.js +1 -0
- package/components/container/wizard/wizard.component.js.map +1 -1
- package/components/data/list/list.component.js +23 -13
- package/components/data/list/list.component.js.map +1 -1
- package/components/device/barcodescanner/barcodescanner.component.js +33 -18
- package/components/device/barcodescanner/barcodescanner.component.js.map +1 -1
- package/components/device/barcodescanner/barcodescanner.props.js +2 -1
- package/components/device/barcodescanner/barcodescanner.props.js.map +1 -1
- package/components/device/camera/camera.component.js +35 -22
- package/components/device/camera/camera.component.js.map +1 -1
- package/components/device/camera/camera.props.js +2 -1
- package/components/device/camera/camera.props.js.map +1 -1
- package/components/input/basedataset/basedataset.props.js +1 -0
- package/components/input/basedataset/basedataset.props.js.map +1 -1
- package/components/input/calendar/calendar.component.js +12 -4
- package/components/input/calendar/calendar.component.js.map +1 -1
- package/components/input/calendar/views/month-view.js +9 -2
- package/components/input/calendar/views/month-view.js.map +1 -1
- package/components/input/checkbox/checkbox.component.js +5 -5
- package/components/input/checkbox/checkbox.component.js.map +1 -1
- package/components/input/checkboxset/checkboxset.component.js +15 -11
- package/components/input/checkboxset/checkboxset.component.js.map +1 -1
- package/components/input/chips/chips.component.js +25 -12
- package/components/input/chips/chips.component.js.map +1 -1
- package/components/input/currency/currency.component.js +5 -2
- package/components/input/currency/currency.component.js.map +1 -1
- package/components/input/epoch/base-datetime.component.js +9 -9
- package/components/input/epoch/base-datetime.component.js.map +1 -1
- package/components/input/epoch/datetime/datetime.props.js +1 -0
- package/components/input/epoch/datetime/datetime.props.js.map +1 -1
- package/components/input/epoch/wheelpicker/wheelpicker.component.js +8 -3
- package/components/input/epoch/wheelpicker/wheelpicker.component.js.map +1 -1
- package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js +8 -3
- package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js.map +1 -1
- package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js +8 -3
- package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js.map +1 -1
- package/components/input/fileupload/fileupload.component.js +23 -14
- package/components/input/fileupload/fileupload.component.js.map +1 -1
- package/components/input/fileupload/fileupload.props.js +2 -0
- package/components/input/fileupload/fileupload.props.js.map +1 -1
- package/components/input/radioset/radioset.component.js +15 -5
- package/components/input/radioset/radioset.component.js.map +1 -1
- package/components/input/rating/rating.component.js +11 -3
- package/components/input/rating/rating.component.js.map +1 -1
- package/components/input/rating/rating.props.js +4 -0
- package/components/input/rating/rating.props.js.map +1 -1
- package/components/input/select/select.component.js +7 -5
- package/components/input/select/select.component.js.map +1 -1
- package/components/input/slider/slider.component.js +2 -1
- package/components/input/slider/slider.component.js.map +1 -1
- package/components/input/switch/switch.component.js +11 -9
- package/components/input/switch/switch.component.js.map +1 -1
- package/components/input/toggle/toggle.component.js +8 -4
- package/components/input/toggle/toggle.component.js.map +1 -1
- package/components/input/toggle/toggle.props.js +1 -0
- package/components/input/toggle/toggle.props.js.map +1 -1
- package/components/navigation/appnavbar/appnavbar.component.js +19 -61
- package/components/navigation/appnavbar/appnavbar.component.js.map +1 -1
- package/components/navigation/navitem/navitem.component.js +3 -1
- package/components/navigation/navitem/navitem.component.js.map +1 -1
- package/components/navigation/popover/popover.component.js +2 -1
- package/components/navigation/popover/popover.component.js.map +1 -1
- package/components/navigation/popover/popover.props.js +2 -1
- package/components/navigation/popover/popover.props.js.map +1 -1
- package/components/page/page-content/page-content.component.js +74 -20
- package/components/page/page-content/page-content.component.js.map +1 -1
- package/components/page/page-content/page-content.props.js +1 -0
- package/components/page/page-content/page-content.props.js.map +1 -1
- package/components/page/page.component.js +29 -44
- package/components/page/page.component.js.map +1 -1
- package/components/page/page.props.js +4 -2
- package/components/page/page.props.js.map +1 -1
- package/components/page/tabbar/tabbar.component.js +24 -13
- package/components/page/tabbar/tabbar.component.js.map +1 -1
- package/core/AppConfig.js.map +1 -1
- package/core/accessibility.js +51 -32
- package/core/accessibility.js.map +1 -1
- package/core/base.component.js.map +1 -1
- package/core/components/error-fallback/error-fallback.component.js +140 -0
- package/core/components/error-fallback/error-fallback.component.js.map +1 -0
- package/core/components/error-fallback/error-fallback.styles.js +224 -0
- package/core/components/error-fallback/error-fallback.styles.js.map +1 -0
- package/core/components/sticky-base.component.js +54 -0
- package/core/components/sticky-base.component.js.map +1 -0
- package/core/components/sticky-container.component.js +34 -0
- package/core/components/sticky-container.component.js.map +1 -0
- package/core/components/sticky-container.styles.js +98 -0
- package/core/components/sticky-container.styles.js.map +1 -0
- package/core/components/sticky-nav.component.js +28 -0
- package/core/components/sticky-nav.component.js.map +1 -0
- package/core/device/av-service.js +8 -0
- package/core/device/av-service.js.map +1 -0
- package/core/device/calendar-service.js +7 -1
- package/core/device/calendar-service.js.map +1 -1
- package/core/device/camera-service.js +6 -0
- package/core/device/camera-service.js.map +1 -1
- package/core/device/contacts-service.js +7 -1
- package/core/device/contacts-service.js.map +1 -1
- package/core/device/fileupload-service.js +8 -0
- package/core/device/fileupload-service.js.map +1 -0
- package/core/device/location-service.js +7 -1
- package/core/device/location-service.js.map +1 -1
- package/core/device/scan-service.js +6 -0
- package/core/device/scan-service.js.map +1 -1
- package/core/error-boundary.component.js +1 -1
- package/core/error-boundary.component.js.map +1 -1
- package/core/event-notifier.js +4 -3
- package/core/event-notifier.js.map +1 -1
- package/core/fixed-view.component.js +2 -1
- package/core/fixed-view.component.js.map +1 -1
- package/core/responsive.utils.js +8 -5
- package/core/responsive.utils.js.map +1 -1
- package/core/sticky-view.component.js +50 -0
- package/core/sticky-view.component.js.map +1 -0
- package/core/sticky-wrapper.js +129 -0
- package/core/sticky-wrapper.js.map +1 -0
- package/core/utils.js +0 -6
- package/core/utils.js.map +1 -1
- package/npm-shrinkwrap.json +48 -47
- package/package-lock.json +48 -47
- package/package.json +2 -2
- package/runtime/App.js +3 -5
- package/runtime/App.js.map +1 -1
- package/runtime/services/device/calendar-service.js +9 -5
- package/runtime/services/device/calendar-service.js.map +1 -1
- package/runtime/services/device/camera-service.js +39 -22
- package/runtime/services/device/camera-service.js.map +1 -1
- package/runtime/services/device/contacts-service.js +6 -5
- package/runtime/services/device/contacts-service.js.map +1 -1
- package/runtime/services/device/location-service.js +4 -4
- package/runtime/services/device/location-service.js.map +1 -1
- package/runtime/services/device/permission-service.js +5 -0
- package/runtime/services/device/permission-service.js.map +1 -0
- package/runtime/services/device/permissions.js +34 -39
- package/runtime/services/device/permissions.js.map +1 -1
- package/runtime/services/device/scan-service.js +4 -3
- package/runtime/services/device/scan-service.js.map +1 -1
- package/styles/theme.js +24 -18
- package/styles/theme.js.map +1 -1
- package/variables/device/calendar/create-event.operation.js +12 -1
- package/variables/device/calendar/create-event.operation.js.map +1 -1
- package/variables/device/calendar/delete-event.operation.js +12 -1
- package/variables/device/calendar/delete-event.operation.js.map +1 -1
- package/variables/device/calendar/get-events.operation.js +12 -1
- package/variables/device/calendar/get-events.operation.js.map +1 -1
- package/variables/device/camera/capture-image.operation.js +8 -1
- package/variables/device/camera/capture-image.operation.js.map +1 -1
- package/variables/device/camera/capture-video.operation.js +7 -1
- package/variables/device/camera/capture-video.operation.js.map +1 -1
- package/variables/device/contacts/get-contacts.operation.js +12 -1
- package/variables/device/contacts/get-contacts.operation.js.map +1 -1
- package/variables/device/device/current-geo-position.operation.js +12 -1
- package/variables/device/device/current-geo-position.operation.js.map +1 -1
- package/variables/device/file/upload-file.operation.js +17 -3
- package/variables/device/file/upload-file.operation.js.map +1 -1
- package/variables/device/scan/scan.operation.js +12 -1
- package/variables/device/scan/scan.operation.js.map +1 -1
- package/variables/http.service.js +6 -1
- package/variables/http.service.js.map +1 -1
- package/core/components/error-fallback.component.js +0 -264
- package/core/components/error-fallback.component.js.map +0 -1
- package/core/sticky-container.component.js +0 -175
- package/core/sticky-container.component.js.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Dimensions","StatusBar","Text","View","ScrollView","find","isEmpty","isString","WmSelectProps","DEFAULT_CLASS","BaseDatasetComponent","BaseDatasetState","WmIcon","ModalConsumer","WmButton","Tappable","AccessibilityWidgetType","getAccessibilityProps","BackgroundComponent","createSkeleton","WmSelectState","constructor","args","_defineProperty","WmSelect","props","e","position","windowDimensions","get","view","measure","x","y","width","height","px","py","popoverwidth","state","selectWidth","parseInt","isRTL","right","left","top","updateState","isOpened","onPress","event","disabled","showPopover","invokeEventCallback","proxy","onPropertyChange","name","$new","$old","isNaN","displayValue","placeholder","prepareModalOptions","content","styles","modalService","o","modalOptions","modalStyle","modal","contentStyle","modalContent","isModal","centered","onClose","hide","isDefaultValue","validate","setTimeout","triggerValidation","setState","hideModal","focus","_this$widgetRef","widgetRef","renderSkeletonForText","theme","textSkeleton","root","renderSelect","select","createElement","style","isValid","invalid","backgroundColor","disabledText","_showSkeleton","justifyContent","ref","onLayout","nativeEvent","layout","backgroundImage","image","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","borderRadius","_extends","text","color","placeholderText","getTestPropsForInput","SELECT","bind","arrowButtonSkeleton","arrowButton","iconclass","onTap","hint","isSelected","item","val","datafield","dataObject","datavalue","onItemSelect","isPlaceholder","onChange","renderSelectItem","index","isLast","selected","getTestPropsForAction","accessibilityProps","expanded","disableTouchEffect","disabletoucheffect","selectItem","lastSelectItem","selectedItem","getTestPropsForLabel","selectItemText","selectedItemText","displayexp","displayfield","id","getTestId","mergeStyle","checkIcon","opacity","updateDefaultQueryModel","dataItems","length","componentDidMount","onDataItemsUpdate","renderWidget","_this$state$props$cla","isDropdown","classname","includes","getStyle","dropdown","computePosition","handleLayout","rootWrapper","_background","items","showModal","maxHeight","currentHeight","contentContainerStyle","dropDownContent","key","map"],"sources":["select.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Dimensions, LayoutChangeEvent, StatusBar, Text, View } from 'react-native';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport { find, isEmpty, isString } from 'lodash';\n\nimport WmSelectProps from './select.props';\nimport { DEFAULT_CLASS, WmSelectStyles } from './select.styles';\nimport {\n BaseDatasetComponent,\n BaseDatasetState\n} from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { ModalConsumer, ModalOptions, ModalService } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\nimport { PopoverPosition } from '../../navigation/popover/popover.component';\n\nexport class WmSelectState extends BaseDatasetState<WmSelectProps> {\n modalOptions = {} as ModalOptions;\n isOpened: boolean = false;\n selectedValue: any = '';\n position={} as PopoverPosition;\n selectWidth:number = 0;\n}\n\nexport default class WmSelect extends BaseDatasetComponent<WmSelectProps, WmSelectState, WmSelectStyles> {\n constructor(props: WmSelectProps) {\n super(props, DEFAULT_CLASS, new WmSelectProps(), new WmSelectState());\n }\n view: View = null as any;\n public widgetRef: Text | null = null;\n private isDefaultValue: boolean = true;\n\n onPress(event: any) {\n if (this.state.props.disabled) {\n return;\n }\n if (!this.state.isOpened) {\n this.showPopover();\n }\n this.invokeEventCallback('onFocus', [event, this.proxy]);\n }\n\n onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case 'datavalue':\n if (isNaN($new) && isEmpty($new)) {\n this.updateState({\n props: {\n displayValue: this.state.props.placeholder || ''\n }\n } as WmSelectState);\n }\n }\n }\n\n private computePosition = (e: LayoutChangeEvent) => {\n const position = {} as PopoverPosition;\n const windowDimensions = Dimensions.get('window');\n this.view.measure((x, y, width, height, px, py) => {\n let popoverwidth = this.state.selectWidth as any;\n if (popoverwidth && isString(popoverwidth)) { \n popoverwidth = parseInt(popoverwidth);\n }\n this.isRTL ? position.right = px : position.left = px\n \n if (px + popoverwidth > windowDimensions.width) {\n this.isRTL\n ? (position.right = px + width - popoverwidth)\n : (position.left = px + width - popoverwidth);\n }\n position.top = py + height;\n this.updateState({position: position} as WmSelectState);\n });\n };\n\n prepareModalOptions(content: React.ReactNode, styles: WmSelectStyles, modalService: ModalService) {\n const o = this.state.modalOptions;\n o.modalStyle = styles.modal;\n o.contentStyle = {...styles.modalContent,...this.state.position};\n o.content = content;\n o.isModal = true;\n o.centered = true;\n o.onClose = () => {\n this.hide = () => {};\n if (this.isDefaultValue && this.state.props.displayValue === '') {\n this.validate(this.state.props.displayValue);\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n }, 0);\n }\n this.invokeEventCallback('onBlur', [{}, this.proxy]);\n this.setState({ isOpened: false, modalOptions: {} as ModalOptions } as WmSelectState);\n };\n this.hide = () => modalService.hideModal(this.state.modalOptions);\n return o;\n }\n\n public showPopover = () => {\n this.updateState({ isOpened: true } as WmSelectState);\n };\n\n public hide = () => {};\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n private renderSkeletonForText(){\n return createSkeleton(this.theme, {} as WmSkeletonStyles, {\n ...this.styles.textSkeleton.root\n });\n }\n\n renderSelect() {\n const props = this.state.props;\n const select = this.styles.root as any;\n return (\n /*\n * onLayout function is required.\n * https://github.com/naoufal/react-native-accordion/pull/19/files\n */\n <View\n style={[this.styles.root, this.state.isValid ? {} : this.styles.invalid, { backgroundColor: props.disabled ? this.styles.disabledText.backgroundColor : this.styles.root.backgroundColor}, \n this._showSkeleton ? { justifyContent: 'space-between' } : {}]}\n ref={(ref) => {\n this.view = ref as View;\n }}\n onLayout={(event) => {this.updateState({selectWidth : event.nativeEvent.layout.width} as any)}}>\n {select.backgroundImage ? (<BackgroundComponent\n image={select.backgroundImage}\n position={select.backgroundPosition || 'center'}\n size={select.backgroundSize || 'contain'}\n repeat={select.backgroundRepeat || 'no-repeat'}\n resizeMode={select.backgroundResizeMode}\n style={{borderRadius: this.styles.root.borderRadius}}\n ></BackgroundComponent>) : null }\n {this._showSkeleton && (this.state.props.displayValue || props.placeholder)? this.renderSkeletonForText() : <Text\n style={[this.styles.text,\n this.state.props.displayValue ? {} : {color: this.styles.placeholderText.color}]}\n ref={(ref) => {\n this.widgetRef = ref;\n }}\n {...this.getTestPropsForInput()}\n {...getAccessibilityProps(\n AccessibilityWidgetType.SELECT,\n props\n )}\n onPress={this.onPress.bind(this)}>\n {this.state.props.displayValue || props.placeholder || ' '}\n </Text>}\n <WmButton\n styles={this._showSkeleton ? this.styles.arrowButtonSkeleton.root : this.styles.arrowButton}\n iconclass={'wi wi-keyboard-arrow-down'}\n onTap={this.onPress.bind(this)}\n hint={props?.hint}\n />\n </View>\n );\n }\n\n isSelected(item: any) {\n const val = this.state.props.datafield === 'All Fields' ? item.dataObject : item.datafield;\n return this.state.props.datavalue === val;\n }\n\n onItemSelect(item: any, isPlaceholder?: boolean) {\n this.isDefaultValue = false;\n this.onChange(isPlaceholder ? '' : this.state.props.datafield === 'All Fields' ? item.dataObject : item.datafield);\n this.hide();\n }\n\n renderSelectItem(item: any, index: number, isPlaceholder: boolean, isLast: boolean) {\n let selected = this.isSelected(item);\n return (\n <Tappable {...this.getTestPropsForAction('selectitem'+index)} onTap={this.onItemSelect.bind(this, item, isPlaceholder)} \n accessibilityProps={{...getAccessibilityProps(\n AccessibilityWidgetType.SELECT,\n {...this.props, expanded: this.state.isOpened}\n )}}\n disableTouchEffect={this.state.props.disabletoucheffect}>\n <View style={[this.styles.selectItem, isLast ? this.styles.lastSelectItem : null, selected ? this.styles.selectedItem : null ]}>\n <Text {...this.getTestPropsForLabel('label'+index)} style={[this.styles.selectItemText, {color: isPlaceholder ? this.styles.placeholderText.color : selected ? this.styles.selectedItemText.color : this.styles.selectItemText.color}]}>\n {isPlaceholder ? this.state.props.placeholder : (item.displayexp || item.displayfield)}\n </Text>\n <WmIcon id={this.getTestId('checkicon' + index)} iconclass='wi wi-check' styles={this.theme.mergeStyle(this.styles.checkIcon, {\n root: {\n opacity: !isPlaceholder && selected ? 1 : 0\n }\n })}></WmIcon>\n </View>\n </Tappable>\n );\n }\n\n updateDefaultQueryModel() {\n if (this.state.dataItems && this.state.dataItems.length && this.isDefaultValue) {\n const selectedItem = find(this.state.dataItems, (item) => item.selected);\n selectedItem && this.updateState({\n props: {\n displayValue: selectedItem.displayexp || selectedItem.displayfield || ''\n }\n } as WmSelectState);\n }\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.updateDefaultQueryModel();\n }\n\n onDataItemsUpdate() {\n super.onDataItemsUpdate();\n this.updateDefaultQueryModel();\n }\n\n renderWidget(props: WmSelectProps) {\n let isDropdown = this.state.props.classname?.includes('select-dropdown');\n const styles = this.theme.mergeStyle( this.styles,this.theme.getStyle('select-dropdown'));\n if (isDropdown && this.state.selectWidth) {\n styles.modalContent.width = this.styles.dropdown.width || this.state.selectWidth;\n }\n return (\n <View \n onLayout={(event) => {\n isDropdown ? this.computePosition(event) : ()=>{}\n this.handleLayout(event)\n }}\n style={[this.styles.rootWrapper]}\n >\n {this._background}\n {this.renderSelect()}\n {this.state.isOpened ? (\n <ModalConsumer>\n {(modalService: ModalService) => {\n const items = this.state.dataItems;\n modalService.showModal(\n this.prepareModalOptions(\n <ScrollView style={ isDropdown ?[{width : this.state.selectWidth},this.styles.dropdown]:{width: '100%', maxHeight: Dimensions.get('window').height - 64 - (StatusBar.currentHeight || 0)}} \n contentContainerStyle={this.styles.dropDownContent}>\n {props.placeholder ?\n <View key={props.name + '_placeholder'} style={this.styles.placeholderText}>\n {this.renderSelectItem({}, 0, true, false)}\n </View>\n : null}\n {items && items.map((item: any, index: number) => (\n <View key={item.key}>\n {this.renderSelectItem(item, index, false, index === items.length - 1)}\n </View>\n ))}\n </ScrollView>,\n isDropdown?styles:this.styles,\n modalService\n )\n );\n return null;\n }}\n </ModalConsumer>\n ) : null}\n </View>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","Dimensions","StatusBar","Text","View","ScrollView","find","isEmpty","isString","WmSelectProps","DEFAULT_CLASS","BaseDatasetComponent","BaseDatasetState","WmIcon","ModalConsumer","WmButton","Tappable","AccessibilityWidgetType","getAccessibilityProps","BackgroundComponent","createSkeleton","WmSelectState","constructor","args","_defineProperty","WmSelect","props","e","position","windowDimensions","get","view","measure","x","y","width","height","px","py","popoverwidth","state","selectWidth","parseInt","isRTL","right","left","top","updateState","isOpened","onPress","event","disabled","showPopover","invokeEventCallback","proxy","onPropertyChange","name","$new","$old","isNaN","displayValue","placeholder","prepareModalOptions","content","styles","modalService","o","modalOptions","modalStyle","modal","contentStyle","modalContent","isModal","centered","onClose","hide","isDefaultValue","validate","setTimeout","triggerValidation","setState","hideModal","focus","_this$widgetRef","widgetRef","renderSkeletonForText","theme","textSkeleton","root","renderSelect","select","createElement","_extends","style","isValid","invalid","backgroundColor","disabledText","_showSkeleton","justifyContent","ref","onLayout","nativeEvent","layout","SELECT","backgroundImage","image","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","borderRadius","text","color","placeholderText","getTestPropsForInput","bind","importantForAccessibility","arrowButtonSkeleton","arrowButton","iconclass","onTap","hint","accessible","isSelected","item","val","datafield","dataObject","datavalue","onItemSelect","isPlaceholder","onChange","renderSelectItem","index","isLast","selected","getTestPropsForAction","accessibilityProps","expanded","disableTouchEffect","disabletoucheffect","selectItem","lastSelectItem","selectedItem","getTestPropsForLabel","selectItemText","selectedItemText","displayexp","displayfield","id","getTestId","mergeStyle","checkIcon","opacity","updateDefaultQueryModel","dataItems","length","componentDidMount","onDataItemsUpdate","renderWidget","_this$state$props$cla","isDropdown","classname","includes","getStyle","dropdown","computePosition","handleLayout","rootWrapper","_background","items","showModal","maxHeight","currentHeight","contentContainerStyle","dropDownContent","key","map"],"sources":["select.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Dimensions, LayoutChangeEvent, StatusBar, Text, View } from 'react-native';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport { find, isEmpty, isString } from 'lodash';\n\nimport WmSelectProps from './select.props';\nimport { DEFAULT_CLASS, WmSelectStyles } from './select.styles';\nimport {\n BaseDatasetComponent,\n BaseDatasetState\n} from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { ModalConsumer, ModalOptions, ModalService } from '@wavemaker/app-rn-runtime/core/modal.service';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\nimport { PopoverPosition } from '../../navigation/popover/popover.component';\n\nexport class WmSelectState extends BaseDatasetState<WmSelectProps> {\n modalOptions = {} as ModalOptions;\n isOpened: boolean = false;\n selectedValue: any = '';\n position={} as PopoverPosition;\n selectWidth:number = 0;\n}\n\nexport default class WmSelect extends BaseDatasetComponent<WmSelectProps, WmSelectState, WmSelectStyles> {\n constructor(props: WmSelectProps) {\n super(props, DEFAULT_CLASS, new WmSelectProps(), new WmSelectState());\n }\n view: View = null as any;\n public widgetRef: Text | null = null;\n private isDefaultValue: boolean = true;\n\n onPress(event: any) {\n if (this.state.props.disabled) {\n return;\n }\n if (!this.state.isOpened) {\n this.showPopover();\n }\n this.invokeEventCallback('onFocus', [event, this.proxy]);\n }\n\n onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case 'datavalue':\n if (isNaN($new) && isEmpty($new)) {\n this.updateState({\n props: {\n displayValue: this.state.props.placeholder || ''\n }\n } as WmSelectState);\n }\n }\n }\n\n private computePosition = (e: LayoutChangeEvent) => {\n const position = {} as PopoverPosition;\n const windowDimensions = Dimensions.get('window');\n this.view.measure((x, y, width, height, px, py) => {\n let popoverwidth = this.state.selectWidth as any;\n if (popoverwidth && isString(popoverwidth)) { \n popoverwidth = parseInt(popoverwidth);\n }\n this.isRTL ? position.right = px : position.left = px\n \n if (px + popoverwidth > windowDimensions.width) {\n this.isRTL\n ? (position.right = px + width - popoverwidth)\n : (position.left = px + width - popoverwidth);\n }\n position.top = py + height;\n this.updateState({position: position} as WmSelectState);\n });\n };\n\n prepareModalOptions(content: React.ReactNode, styles: WmSelectStyles, modalService: ModalService) {\n const o = this.state.modalOptions;\n o.modalStyle = styles.modal;\n o.contentStyle = {...styles.modalContent,...this.state.position};\n o.content = content;\n o.isModal = true;\n o.centered = true;\n o.onClose = () => {\n this.hide = () => {};\n if (this.isDefaultValue && this.state.props.displayValue === '') {\n this.validate(this.state.props.displayValue);\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n }, 0);\n }\n this.invokeEventCallback('onBlur', [{}, this.proxy]);\n this.setState({ isOpened: false, modalOptions: {} as ModalOptions } as WmSelectState);\n };\n this.hide = () => modalService.hideModal(this.state.modalOptions);\n return o;\n }\n\n public showPopover = () => {\n this.updateState({ isOpened: true } as WmSelectState);\n };\n\n public hide = () => {};\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n private renderSkeletonForText(){\n return createSkeleton(this.theme, {} as WmSkeletonStyles, {\n ...this.styles.textSkeleton.root\n });\n }\n\n renderSelect() {\n const props = this.state.props;\n const select = this.styles.root as any;\n return (\n /*\n * onLayout function is required.\n * https://github.com/naoufal/react-native-accordion/pull/19/files\n */\n <View\n style={[this.styles.root, this.state.isValid ? {} : this.styles.invalid, { backgroundColor: props.disabled ? this.styles.disabledText.backgroundColor : this.styles.root.backgroundColor}, \n this._showSkeleton ? { justifyContent: 'space-between' } : {}]}\n ref={(ref) => {\n this.view = ref as View;\n }}\n onLayout={(event) => {this.updateState({selectWidth : event.nativeEvent.layout.width} as any)}}\n {...getAccessibilityProps(AccessibilityWidgetType.SELECT, props)}>\n {select.backgroundImage ? (<BackgroundComponent\n image={select.backgroundImage}\n position={select.backgroundPosition || 'center'}\n size={select.backgroundSize || 'contain'}\n repeat={select.backgroundRepeat || 'no-repeat'}\n resizeMode={select.backgroundResizeMode}\n style={{borderRadius: this.styles.root.borderRadius}}\n ></BackgroundComponent>) : null }\n {this._showSkeleton && (this.state.props.displayValue || props.placeholder)? this.renderSkeletonForText() : <Text\n style={[this.styles.text,\n this.state.props.displayValue ? {} : {color: this.styles.placeholderText.color}]}\n ref={(ref) => {\n this.widgetRef = ref;\n }}\n {...this.getTestPropsForInput()}\n onPress={this.onPress.bind(this)}\n importantForAccessibility='no'>\n {this.state.props.displayValue || props.placeholder || ' '}\n </Text>}\n <WmButton\n styles={this._showSkeleton ? this.styles.arrowButtonSkeleton.root : this.styles.arrowButton}\n iconclass={'wi wi-keyboard-arrow-down'}\n onTap={this.onPress.bind(this)}\n hint={props?.hint}\n accessible={false}\n />\n </View>\n );\n }\n\n isSelected(item: any) {\n const val = this.state.props.datafield === 'All Fields' ? item.dataObject : item.datafield;\n return this.state.props.datavalue === val;\n }\n\n onItemSelect(item: any, isPlaceholder?: boolean) {\n this.isDefaultValue = false;\n this.onChange(isPlaceholder ? '' : this.state.props.datafield === 'All Fields' ? item.dataObject : item.datafield);\n this.hide();\n }\n\n renderSelectItem(item: any, index: number, isPlaceholder: boolean, isLast: boolean) {\n let selected = this.isSelected(item);\n return (\n <Tappable {...this.getTestPropsForAction('selectitem'+index)} onTap={this.onItemSelect.bind(this, item, isPlaceholder)} \n accessibilityProps={{...getAccessibilityProps(\n AccessibilityWidgetType.SELECT,\n {...this.props, expanded: this.state.isOpened}\n )}}\n disableTouchEffect={this.state.props.disabletoucheffect}>\n <View style={[this.styles.selectItem, isLast ? this.styles.lastSelectItem : null, selected ? this.styles.selectedItem : null ]}>\n <Text {...this.getTestPropsForLabel('label'+index)} style={[this.styles.selectItemText, {color: isPlaceholder ? this.styles.placeholderText.color : selected ? this.styles.selectedItemText.color : this.styles.selectItemText.color}]}>\n {isPlaceholder ? this.state.props.placeholder : (item.displayexp || item.displayfield)}\n </Text>\n <WmIcon id={this.getTestId('checkicon' + index)} iconclass='wi wi-check' styles={this.theme.mergeStyle(this.styles.checkIcon, {\n root: {\n opacity: !isPlaceholder && selected ? 1 : 0\n }\n })}></WmIcon>\n </View>\n </Tappable>\n );\n }\n\n updateDefaultQueryModel() {\n if (this.state.dataItems && this.state.dataItems.length && this.isDefaultValue) {\n const selectedItem = find(this.state.dataItems, (item) => item.selected);\n selectedItem && this.updateState({\n props: {\n displayValue: selectedItem.displayexp || selectedItem.displayfield || ''\n }\n } as WmSelectState);\n }\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.updateDefaultQueryModel();\n }\n\n onDataItemsUpdate() {\n super.onDataItemsUpdate();\n this.updateDefaultQueryModel();\n }\n\n renderWidget(props: WmSelectProps) {\n let isDropdown = this.state.props.classname?.includes('select-dropdown');\n const styles = this.theme.mergeStyle( this.styles,this.theme.getStyle('select-dropdown'));\n if (isDropdown && this.state.selectWidth) {\n styles.modalContent.width = this.styles.dropdown.width || this.state.selectWidth;\n }\n return (\n <View \n onLayout={(event) => {\n isDropdown ? this.computePosition(event) : ()=>{}\n this.handleLayout(event)\n }}\n style={[this.styles.rootWrapper]}\n >\n {this._background}\n {this.renderSelect()}\n {this.state.isOpened ? (\n <ModalConsumer>\n {(modalService: ModalService) => {\n const items = this.state.dataItems;\n modalService.showModal(\n this.prepareModalOptions(\n <ScrollView style={ isDropdown ?[{width : this.state.selectWidth},this.styles.dropdown]:{width: '100%', maxHeight: Dimensions.get('window').height - 64 - (StatusBar.currentHeight || 0)}} \n contentContainerStyle={this.styles.dropDownContent}>\n {props.placeholder ?\n <View key={props.name + '_placeholder'} style={this.styles.placeholderText}>\n {this.renderSelectItem({}, 0, true, false)}\n </View>\n : null}\n {items && items.map((item: any, index: number) => (\n <View key={item.key}>\n {this.renderSelectItem(item, index, false, index === items.length - 1)}\n </View>\n ))}\n </ScrollView>,\n isDropdown?styles:this.styles,\n modalService\n )\n );\n return null;\n }}\n </ModalConsumer>\n ) : null}\n </View>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -236,7 +236,8 @@ export default class WmSlider extends BaseDatasetComponent {
|
|
236
236
|
dataValue = isArray(dataValue) ? dataValue : [dataValue];
|
237
237
|
return dataValue.map(d => {
|
238
238
|
var _this$scale2;
|
239
|
-
|
239
|
+
const parsedValue = isString(d) ? parseInt(d) : d;
|
240
|
+
return ((_this$scale2 = this.scale) === null || _this$scale2 === void 0 || (_this$scale2 = _this$scale2.ticks.find(t => t.datafield === parsedValue)) === null || _this$scale2 === void 0 ? void 0 : _this$scale2.markValue) || parsedValue;
|
240
241
|
});
|
241
242
|
}
|
242
243
|
return dataValue;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","View","Text","TouchableOpacity","Animated","Dimensions","debounce","isNil","isArray","isString","last","isEqual","isObject","Gesture","GestureDetector","BackgroundComponent","WmTooltip","WmSliderProps","DEFAULT_CLASS","isDefined","isWebPreviewMode","BaseDatasetComponent","BaseDatasetState","AccessibilityWidgetType","getAccessibilityProps","SCREEN_WIDTH","get","width","WmSliderState","constructor","args","_defineProperty","Scale","getInstanceWithTicks","ticks","scale","getTickIndex","value","parseInt","markIndex","i","findIndex","v","markValue","length","getMinTick","getMaxTick","getTick","clamp","index","transform","min","max","markerRadius","_this$ticks$","_last","MARKER_RADIUS","adjustedMin","adjustedMax","thisMin","thisMax","factor","forEach","Math","round","displayfield","datafield","dataitem","WmSlider","props","Value","Pan","createRef","gestureType","dataValue","getScaledDataValue","isRangeSlider","state","range","oldThumbValue","thumbDataValue","valueLowerThanHighThumb","valueGreaterThanLowThumb","dataset","map","updateState","datavalue","onFieldChange","e","layout","nativeEvent","track","top","y","left","x","height","initScale","computePosition","data","displayFiled","indexOfMarker","title","formattedData","replace","getLabel","split","position","configureGesture","trackGesture","knobGesture","highKnobGesture","positionRefMaksudai","current","constrainValueToRange","minValue","minvalue","maxValue","maxvalue","val","getMarkerWidthFromStyles","_this$styles","cssWidth","styles","markerStyle","MARKER_WIDTH","getMarkerRadius","_this$styles2","_this$state$track","markerWidth","markerHeight","trackHeight","baseRadius","extraPadding","getValueFromGesture","positionX","_this$scale","uiScale","getPositionFromValue","_this$uiScale","gesture","maxPointers","minDistance","onChange","_this$uiScale2","_this$uiScale3","tickLastIndex","newValue","translationX","setValue","tempPosition","onEnd","onSliderChange","getDataValue","d","_this$scale2","find","t","_this$scale$ticks","_this$scale$ticks$mid","mid","floor","_this$scale$getTick","initNumericSlider","step","nextMark","push","onPropertyChange","name","$new","$old","datatype","initialized","clampedValue","invokeEventCallback","onDataItemsUpdate","_this$getScaledDataVa","_this$state$dataItems","_state$track","dataItems","displayexp","from","_this$position","isNaN","_this$highPosition","highPosition","_this$position2","_this$scale$getMinTic","_this$position3","_this$scale$getMaxTic","_this$highPosition2","lowPosition","getTooltipLabel","initialValue","type","_this$scale3","minTick","maxTick","tooltipValue","updatedPositionInPx","Number","JSON","stringify","tick","getToolTipExpression","_minTick$dataitem","_maxTick$dataitem","_tick$dataitem","dataObject","componentDidMount","renderToolTips","_this$position4","sDataValue","createElement","Fragment","showTooltip","showtooltip","text","_value","tooltipStyle","translateX","tooltip","tooltipLabelStyle","tooltipLabel","tooltipTriangleStyle","tooltipTriangle","direction","tooltipdirection","style","thumb","accessible","accessibilityLabel","size","backgroundSize","backgroundPosition","image","backgroundImage","repeat","backgroundRepeat","renderOldMarkerStyle","_this$scale4","_this$scale5","_last2","_this$scale6","flexDirection","justifyContent","_extends","getTestProps","minimumValue","maximumValue","renderMarkers","_this$state$track2","markerlabeltext","markWidth","stepwiseLeft","labelText","marketLabelPosition","getLabelPosition","key","markerWrapper","bottom","alignItems","markerLabel","markerLabelStyle","mark","borderRadius","renderTracks","_this$state$track3","activeOpacity","trackStyle","onLayout","onLayoutChange","SLIDER","maximumTrack","minimumTrack","interpolate","inputRange","outputRange","minimumTrackStyle","activeTrackStyle","maximumTrackStyle","renderWidget","root","event","handleLayout","_background","showmarkers"],"sources":["slider.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, LayoutChangeEvent, TouchableOpacity, Animated, Easing, Dimensions } from 'react-native';\nimport { debounce, isNumber, isNil, isArray, isString, last, isEqual, isObject } from 'lodash';\nimport { Gesture, GestureDetector, PanGesture } from 'react-native-gesture-handler';\nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\nimport WmTooltip from '@wavemaker/app-rn-runtime/components/basic/tooltip/tooltip.component';\n\nimport WmSliderProps from './slider.props';\nimport { DEFAULT_CLASS, WmSliderStyles } from './slider.styles';\nimport { isDefined, isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\nimport { BaseDatasetComponent, BaseDatasetState } from '../basedataset/basedataset.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nexport type SliderGestureType = 'track' | 'lowThumb' | 'highThumb';\n\nconst SCREEN_WIDTH = Dimensions.get(\"screen\").width;\n\nexport class WmSliderState extends BaseDatasetState<WmSliderProps> {\n track?: {\n top: number,\n left: number,\n width: number,\n height: number\n };\n}\n\ninterface Tick {\n displayfield: string;\n markValue: number;\n datafield: any;\n dataitem: any;\n}\n\nclass Scale {\n\n public ticks = [] as Tick[];\n\n static getInstanceWithTicks(ticks: Tick[]) {\n const scale = new Scale();\n scale.ticks = [...ticks];\n return scale;\n }\n\n private constructor() {\n \n }\n\n public getTickIndex(value: number) {\n if (isString(value)) {\n value = parseInt(value);\n }\n let markIndex = 0;\n const i = this.ticks.findIndex((v, i) => v.markValue >= value);\n if (i === 0) {\n markIndex = 0;\n } else if (i < 0 || i === this.ticks.length - 1) {\n markIndex = this.ticks.length - 1;\n } else if ((value - this.ticks[i - 1].markValue) < (this.ticks[i].markValue - this.ticks[i - 1].markValue)/2) {\n markIndex = i - 1;\n } else {\n markIndex = i;\n }\n return markIndex;\n }\n\n public getMinTick() {\n return this.ticks[0];\n }\n\n public getMaxTick() {\n return last(this.ticks) || {} as Tick;\n }\n\n public getTick(value: number) {\n return this.ticks[this.getTickIndex(value)];\n}\n\n public clamp(value: number) {\n const index = this.getTickIndex(value);\n return this.ticks[index].markValue; \n }\n\n public transform(min: number, max: number, markerRadius: number) {\n const MARKER_RADIUS = markerRadius;\n const adjustedMin = min + MARKER_RADIUS;\n const adjustedMax = max - MARKER_RADIUS;\n const thisMin = (this.ticks ? this.ticks[0]?.markValue : 0) || 0;\n const thisMax = last(this.ticks)?.markValue;\n const factor = thisMax ? (adjustedMax - adjustedMin)/(thisMax - thisMin) : 1;\n const ticks = [] as Tick[];\n this.ticks.forEach((v, i) => {\n const markValue = Math.round(adjustedMin + (v.markValue - this.ticks[0].markValue) * factor)\n ticks[i] = {\n displayfield: '' + markValue,\n markValue: markValue,\n datafield: markValue,\n dataitem: markValue\n };\n });\n return Scale.getInstanceWithTicks(ticks);\n }\n}\n\nexport default class WmSlider extends BaseDatasetComponent<WmSliderProps, WmSliderState, WmSliderStyles> {\n valueBeforeSlide: number = 0;\n private position: any = new Animated.Value(0);\n private highPosition: any = new Animated.Value(0);\n private trackGesture = Gesture.Pan();\n private knobGesture = Gesture.Pan();\n private highKnobGesture = Gesture.Pan();\n private scale: Scale = null as any;\n private uiScale: Scale = null as any;\n private positionRefMaksudai: any = React.createRef();\n private tempPosition: any = React.createRef();\n private readonly MARKER_WIDTH = 10; \n\n constructor(props: WmSliderProps) {\n super(props, DEFAULT_CLASS, new WmSliderProps());\n this.initScale();\n this.configureGesture(this.trackGesture, 'track');\n this.configureGesture(this.knobGesture, 'lowThumb');\n this.configureGesture(this.highKnobGesture, 'highThumb');\n this.positionRefMaksudai.current = 0;\n }\n\n private constrainValueToRange(value: any): any {\n const minValue = this.state.props.minvalue;\n const maxValue = this.state.props.maxvalue;\n if (!isDefined(minValue) || !isDefined(maxValue)) {\n return value;\n }\n \n if (isArray(value)) {\n return value.map((val: any) => {\n if (val < minValue) return minValue;\n if (val > maxValue) return maxValue;\n return val;\n });\n } else if (!isNil(value)) {\n if (value < minValue) return minValue;\n if (value > maxValue) return maxValue;\n }\n \n return value;\n }\n private getMarkerWidthFromStyles(): number {\n const cssWidth = this.styles?.markerStyle?.width;\n return (typeof cssWidth === 'number' && cssWidth > 0) ? cssWidth : this.MARKER_WIDTH;\n }\n private getMarkerRadius(): number {\n const markerWidth = this.getMarkerWidthFromStyles();\n const markerHeight = this.styles?.markerStyle?.height as number || markerWidth;\n const trackHeight = this.state.track?.height || 2;\n \n const baseRadius = markerWidth / 2;\n const extraPadding = Math.max(0, (trackHeight - markerHeight) / 2);\n \n return baseRadius + extraPadding;\n}\n getValueFromGesture(positionX: number) {\n return this.scale?.ticks[this.uiScale.getTickIndex(positionX)].markValue || 0;\n }\n\n getPositionFromValue(value: number) {\n return this.uiScale?.ticks[this.scale.getTickIndex(value)]?.markValue;\n }\n\n configureGesture(gesture: PanGesture, gestureType: SliderGestureType) {\n gesture\n .maxPointers(1)\n .minDistance(0)\n .onChange(e => {\n const tickLastIndex = this.scale.ticks.length-1\n const max = this.uiScale?.ticks[tickLastIndex]?.markValue;\n const min = this.uiScale?.ticks[0]?.markValue;\n\n let newValue = this.positionRefMaksudai.current + e.translationX;\n newValue = newValue > max ? max : newValue;\n newValue = newValue < min ? min : newValue;\n\n this.position.setValue(newValue);\n this.tempPosition.current = newValue;\n })\n .onEnd(e => {\n if (this.state.track) {\n const value = this.getValueFromGesture(this.tempPosition.current);\n this.positionRefMaksudai.current = this.tempPosition.current;\n this.computePosition(value, gestureType);\n this.onSliderChange(value, gestureType);\n }\n })\n }\n\n getScaledDataValue() {\n let dataValue = this.state.props.datavalue || this.getDataValue();\n dataValue = this.constrainValueToRange(dataValue);\n if (dataValue && this.scale) {\n dataValue = isArray(dataValue) ? dataValue: [dataValue];\n return dataValue.map((d: any) => this.scale?.ticks.find(t => t.datafield === d)?.markValue);\n }\n return dataValue;\n }\n\n getDataValue() {\n let dataValue = this.props.datavalue;\n if (isNil(this.props.datavalue)) {\n const mid = Math.floor(this.scale.ticks.length / 2);\n return mid > 0 ? \n [this.scale.ticks[mid - 1]?.datafield || 0,\n this.scale.ticks[mid]?.datafield || 100]\n : [];\n }\n dataValue = this.constrainValueToRange(dataValue);\n dataValue = isArray(dataValue) ? dataValue: [dataValue];\n return dataValue.map((d: any) => this.scale.getTick(d)?.datafield);\n }\n\n initNumericSlider() {\n const dataset = [];\n const minValue = this.state.props.minvalue;\n const maxValue = this.state.props.maxvalue;\n const step = this.state.props.step;\n if (isDefined(minValue) \n && isDefined(maxValue)\n && isDefined(step)) {\n let nextMark = minValue;\n while (nextMark <= maxValue) {\n dataset.push(nextMark);\n nextMark += step || 1;\n }\n this.updateState({\n props: {\n dataset: dataset\n }\n } as WmSliderState);\n }\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case 'maxvalue':\n case 'minvalue': \n case 'step': \n if (this.state.props.datatype === 'number' && this.initialized) {\n this.initNumericSlider();\n }\n case 'datavalue':\n if (!isEqual($new, $old)) {\n const clampedValue = this.constrainValueToRange($new);\n if (!isEqual(clampedValue, $new)) {\n this.updateState({\n props: {\n datavalue: clampedValue\n }\n } as WmSliderState); \n }\n this.invokeEventCallback('onChange', [null, this, clampedValue, $old]);\n }\n break;\n }\n }\n\n onDataItemsUpdate() {\n super.onDataItemsUpdate();\n this.initScale();\n this.computePosition(this.getScaledDataValue()?.[0] || 10, \"track\");\n }\n\n onSliderChange = debounce((value: number, gestureType: SliderGestureType) => {\n const dataValue = this.getScaledDataValue();\n const isRangeSlider = this.state.props.range && isArray(dataValue);\n\n // * thumb value for low or high\n const oldThumbValue =\n gestureType === 'lowThumb'\n ? dataValue || dataValue?.[0]\n : dataValue?.[1];\n\n let thumbDataValue = isRangeSlider\n ? [dataValue[0], dataValue[1]]\n : [value];\n if (isRangeSlider) {\n if (gestureType === 'lowThumb') {\n const valueLowerThanHighThumb =\n value > dataValue?.[1] ? dataValue?.[1] : value;\n\n thumbDataValue = [valueLowerThanHighThumb, dataValue[1]];\n } else if (gestureType === 'highThumb') {\n const valueGreaterThanLowThumb =\n value < dataValue[0] ? dataValue?.[0] : value;\n\n thumbDataValue = [dataValue[0], valueGreaterThanLowThumb];\n } else if (dataValue[1] && value > dataValue[1]) {\n thumbDataValue = [dataValue[0], value];\n } else {\n thumbDataValue = [value, dataValue[1]];\n }\n }\n\n // * new thumb value is different from old value\n const dataset = thumbDataValue.map(v => this.scale.getTick(v).datafield);\n this.updateState({\n props: {\n datavalue: dataset.length > 1 ? dataset : dataset[0]\n },\n } as WmSliderState);\n this.props.onFieldChange &&\n this.props.onFieldChange('datavalue', thumbDataValue, oldThumbValue);\n }, 200);\n \n initScale() {\n const props = this.state.props;\n const state = this.state;\n this.scale = Scale.getInstanceWithTicks(\n this.state.dataItems?.map((d: any, i: number) => ({\n displayfield: d.displayexp || d.displayfield,\n markValue: i + 1,\n datafield: d.datafield,\n dataitem: d \n }))\n );\n const width = state.track?.width || 0;\n const markerRadius = this.getMarkerRadius();\n this.uiScale = this.scale.transform(0, width, markerRadius);\n }\n\n computePosition(from: number, gestureType: SliderGestureType) {\n const state = this.state;\n const datavalue = this.getScaledDataValue();\n // * single thumb slider\n if (!state.props.range) {\n const value = this.getPositionFromValue(from);\n this.position?.setValue(isNaN(value) ? 0 : value);\n return;\n }\n\n if (gestureType === 'highThumb') {\n const value = this.getPositionFromValue(Math.max(datavalue[0], from));\n this.highPosition?.setValue(value);\n } else if (gestureType === 'lowThumb') {\n const value = this.getPositionFromValue(Math.min(from, datavalue[1]));\n this.position?.setValue(value);\n } else {\n /*\n * gestureType: track\n * initial position for low and high thumb\n */\n const lowPosition = this.getPositionFromValue(datavalue?.[0] || this.scale.getMinTick()?.datafield);\n this.position?.setValue(lowPosition || 0);\n const highPosition = this.getPositionFromValue(datavalue?.[1] || this.scale.getMaxTick()?.datafield);\n this.highPosition?.setValue(highPosition || 0);\n }\n }\n\n getTooltipLabel(value: any, initialValue: any, type: 'lowThumb' | 'highThumb') {\n const maxValue = this.state.props.maxvalue;\n const minValue = this.state.props.minvalue;\n const minTick = this.scale.getMinTick();\n const maxTick = this.scale.getMaxTick();\n const props = this.props;\n let tooltipValue = initialValue;\n const updatedPositionInPx = Number(JSON.stringify(value));\n const tick = this.scale?.getTick(tooltipValue);\n // * getting custom tooltip label\n if (tick && props.getToolTipExpression && this.initialized) {\n if (tick.datafield <= minValue && minTick?.dataitem?.dataObject) {\n return props.getToolTipExpression(minTick.dataitem.dataObject);\n }\n if (tick.datafield >= maxValue && maxTick?.dataitem?.dataObject) {\n return props.getToolTipExpression(maxTick.dataitem.dataObject);\n }\n if (tick.dataitem?.dataObject) {\n return props.getToolTipExpression(tick.dataitem.dataObject);\n }\n }\n return tick?.displayfield;\n }\n\n onLayoutChange = (e: LayoutChangeEvent) => {\n const layout = e.nativeEvent.layout;\n this.updateState({\n track: {\n top: isWebPreviewMode() ? (layout as any).top : layout.y,\n left: isWebPreviewMode() ? (layout as any).left : layout.x,\n width: layout.width,\n height: layout.height\n }\n } as WmSliderState, () => {\n this.initScale();\n this.computePosition(this.getScaledDataValue()[0], 'track');\n });\n }\n\n getLabel = (data: Array<any> | string | undefined, displayFiled: number | string, indexOfMarker: number): string => {\n let title = \"\";\n if(isString(data)) {\n let formattedData = data.replace(/ ,/g, ',').replace(/, /g, ',');\n title = this.getLabel(formattedData.split(','), displayFiled, indexOfMarker);\n } else if(data && isArray(data) && data[indexOfMarker]) {\n if(isObject(data[indexOfMarker]) && (data[indexOfMarker] as any).title) {\n title = `${(data[indexOfMarker] as {title: string | number, position?: string}).title}`;\n } else if(!isObject(data[indexOfMarker])){\n title = `${data[indexOfMarker]}`\n }\n } else {\n title = `${displayFiled}`; \n }\n\n return title;\n }\n\n getLabelPosition = (data: Array<any> | string | undefined, indexOfMarker: number): string => {\n let position = \"up\";\n if(data && isArray(data) && data[indexOfMarker]) {\n if(isObject(data[indexOfMarker]) && (data[indexOfMarker] as any).position) {\n position = (data[indexOfMarker] as {title: string | number, position: string}).position;\n }\n }\n\n return position;\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n if (this.state.props.datatype === 'number') {\n this.initNumericSlider();\n }\n }\n\n renderToolTips(props: WmSliderProps) {\n const sDataValue = this.getScaledDataValue();\n const isRangeSlider = props.range && sDataValue.length > 1;\n return (\n <>\n <WmTooltip\n showTooltip={props.showtooltip}\n text={this.getTooltipLabel(\n this.position?._value,\n sDataValue[0],\n 'lowThumb'\n )}\n tooltipStyle={[\n {\n transform: [\n {\n translateX: this.position,\n },\n ],\n },\n this.styles.tooltip,\n ]}\n tooltipLabelStyle={this.styles.tooltipLabel}\n tooltipTriangleStyle={this.styles.tooltipTriangle}\n direction={props.tooltipdirection}\n >\n <GestureDetector gesture={this.knobGesture}>\n <Animated.View\n style={[\n this.styles.thumb,\n {\n transform: [\n {\n translateX: this.position,\n },\n ],\n },\n ]}\n accessible={true}\n accessibilityLabel={(isRangeSlider && this.highPosition) ? 'Low thumb' : 'Thumb'}\n >\n <BackgroundComponent\n size={(this.styles.thumb as any).backgroundSize}\n position={(this.styles.thumb as any).backgroundPosition}\n image={(this.styles.thumb as any).backgroundImage}\n repeat={(this.styles.thumb as any).backgroundRepeat || 'no-repeat'}\n ></BackgroundComponent>\n </Animated.View>\n </GestureDetector>\n </WmTooltip>\n {isRangeSlider && this.highPosition ? (\n <WmTooltip\n showTooltip={props.showtooltip}\n text={this.getTooltipLabel(\n this.highPosition._value,\n sDataValue[1],\n 'highThumb'\n )}\n tooltipStyle={[\n {\n transform: [\n {\n translateX: this.highPosition,\n },\n ],\n },\n this.styles.tooltip,\n ]}\n tooltipLabelStyle={this.styles.tooltipLabel}\n tooltipTriangleStyle={this.styles.tooltipTriangle}\n direction={props.tooltipdirection}\n >\n <GestureDetector gesture={this.highKnobGesture}>\n <Animated.View\n style={[\n this.styles.thumb,\n {\n transform: [\n {\n translateX: this.highPosition,\n },\n ],\n }\n ]}\n accessible={true}\n accessibilityLabel={'High thumb'}\n >\n <BackgroundComponent\n size={(this.styles.thumb as any).backgroundSize}\n position={(this.styles.thumb as any).backgroundPosition}\n image={(this.styles.thumb as any).backgroundImage}\n repeat={(this.styles.thumb as any).backgroundRepeat || 'no-repeat'}\n />\n </Animated.View>\n </GestureDetector>\n </WmTooltip>\n ) : null}\n </>\n );\n }\n\n renderOldMarkerStyle(props: WmSliderProps) {\n const sDataValue = this.getScaledDataValue();\n const isRangeSlider = props.range && sDataValue.length > 1;\n return (\n <View\n style={{ flexDirection: 'row', justifyContent: 'space-between' }}\n >\n <Text\n {...this.getTestProps('min')}\n style={[this.styles.text, this.styles.minimumValue]}\n >\n {this.scale?.ticks[0]?.displayfield}\n </Text>\n {isRangeSlider ? (\n <></>\n ) : (\n <Text\n {...this.getTestProps('value')}\n style={[this.styles.text, this.styles.value]}\n >\n {this.scale?.ticks.find(t => t.datafield === props.datavalue)?.displayfield}\n </Text>\n )}\n <Text\n {...this.getTestProps('max')}\n style={[this.styles.text, this.styles.maximumValue]}\n >\n {last(this.scale?.ticks)?.displayfield}\n </Text>\n </View>\n );\n }\n\n renderMarkers(props: WmSliderProps) {\n const markerlabeltext = props.markerlabeltext;\n const width = this.state.track?.width || 0;\n return (<View style={{ flexDirection: 'row' }}>\n <View>\n {width ? this.scale.ticks.map((t, i) => {\n const markWidth = this.getMarkerWidthFromStyles();\n const stepwiseLeft = this.getPositionFromValue(t.markValue);\n const labelText = this.getLabel(markerlabeltext, t.displayfield, i);\n const marketLabelPosition = this.getLabelPosition(markerlabeltext, i);\n return (\n <View\n key={i}\n style={[\n this.styles.markerWrapper,\n {\n left: stepwiseLeft,\n bottom: markWidth / 2,\n alignItems: 'center',\n },\n ]}\n >\n <Text\n style={[\n this.styles.markerLabel,\n marketLabelPosition === 'down'?\n {\n bottom: (markWidth / 2 + 10 + markWidth) * -1,\n }: {\n bottom: (markWidth / 2 + 10),\n },\n this.styles.markerLabelStyle,\n i === 0 ? this.styles.minimumValue : null,\n i === this.scale.ticks.length - 1 ? this.styles.maximumValue : null,\n ]}\n >\n {labelText}\n </Text>\n <View\n style={[\n this.styles.mark,\n {\n width: markWidth,\n height: markWidth,\n borderRadius: markWidth,\n },\n this.styles.markerStyle\n ]}\n />\n </View>\n );\n }) : null}\n </View>\n </View>);\n }\n\n renderTracks(props: WmSliderProps) {\n const width = this.state.track?.width || 0;\n const sDataValue = this.getScaledDataValue();\n const isRangeSlider = props.range && sDataValue.length > 1;\n return (\n <GestureDetector gesture={this.trackGesture}>\n <TouchableOpacity\n activeOpacity={1}\n style={[this.styles.track, this.styles.trackStyle]}\n onLayout={this.onLayoutChange}\n {...this.getTestProps()}\n {...getAccessibilityProps(AccessibilityWidgetType.SLIDER, props)}\n >\n <Animated.View\n style={[\n isRangeSlider && this.highPosition\n ? this.styles.maximumTrack\n : this.styles.minimumTrack,\n {\n width: width,\n transform: [\n {\n translateX: this.position.interpolate({\n inputRange: [0, width],\n outputRange: [-width, 0],\n }),\n },\n ],\n },\n this.styles.minimumTrackStyle,\n ]}\n ></Animated.View>\n <Animated.View\n style={[\n isRangeSlider && this.highPosition\n ? this.styles.minimumTrack\n : this.styles.maximumTrack,\n {\n width: width,\n transform: [\n {\n translateX: this.position,\n },\n ],\n },\n this.styles.activeTrackStyle\n ]}\n ></Animated.View>\n {isRangeSlider && this.highPosition ? (\n <Animated.View\n style={[\n this.styles.maximumTrack,\n {\n width: width,\n transform: [\n {\n translateX: this.highPosition,\n },\n ],\n },\n this.styles.maximumTrackStyle,\n ]}\n />\n ) : null}\n </TouchableOpacity>\n </GestureDetector>\n );\n }\n\n renderWidget(props: WmSliderProps) {\n const sDataValue = this.getScaledDataValue();\n return (\n <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n {this._background}\n {!props.showmarkers && !props.showtooltip? this.renderOldMarkerStyle(props) : null}\n {this.renderTracks(props)}\n <View style={{ flexDirection: 'row' }}>\n {props.showmarkers ? this.renderMarkers(props) : null}\n {this.renderToolTips(props)}\n </View>\n </View>\n );\n }\n}"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,EAAqBC,gBAAgB,EAAEC,QAAQ,EAAUC,UAAU,QAAQ,cAAc;AAC5G,SAASC,QAAQ,EAAYC,KAAK,EAAEC,OAAO,EAAEC,QAAQ,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,QAAQ;AAC9F,SAASC,OAAO,EAAEC,eAAe,QAAoB,8BAA8B;AACnF,SAASC,mBAAmB,QAAQ,uDAAuD;AAC3F,OAAOC,SAAS,MAAM,sEAAsE;AAE5F,OAAOC,aAAa,MAAM,gBAAgB;AAC1C,SAASC,aAAa,QAAwB,iBAAiB;AAC/D,SAASC,SAAS,EAAEC,gBAAgB,QAAQ,sCAAsC;AAClF,SAASC,oBAAoB,EAAEC,gBAAgB,QAAQ,sCAAsC;AAC7F,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,8CAA8C;AAI7G,MAAMC,YAAY,GAAGpB,UAAU,CAACqB,GAAG,CAAC,QAAQ,CAAC,CAACC,KAAK;AAEnD,OAAO,MAAMC,aAAa,SAASN,gBAAgB,CAAgB;EAAAO,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;EAAA;AAOnE;AASA,MAAMC,KAAK,CAAC;EAIV,OAAOC,oBAAoBA,CAACC,KAAa,EAAE;IACzC,MAAMC,KAAK,GAAG,IAAIH,KAAK,CAAC,CAAC;IACzBG,KAAK,CAACD,KAAK,GAAG,CAAC,GAAGA,KAAK,CAAC;IACxB,OAAOC,KAAK;EACd;EAEQN,WAAWA,CAAA,EAAG;IAAAE,eAAA,gBARP,EAAE;EAUjB;EAEOK,YAAYA,CAACC,KAAa,EAAE;IAC/B,IAAI5B,QAAQ,CAAC4B,KAAK,CAAC,EAAE;MACnBA,KAAK,GAAGC,QAAQ,CAACD,KAAK,CAAC;IACzB;IACA,IAAIE,SAAS,GAAG,CAAC;IACjB,MAAMC,CAAC,GAAG,IAAI,CAACN,KAAK,CAACO,SAAS,CAAC,CAACC,CAAC,EAAEF,CAAC,KAAKE,CAAC,CAACC,SAAS,IAAIN,KAAK,CAAC;IAC9D,IAAIG,CAAC,KAAK,CAAC,EAAE;MACTD,SAAS,GAAG,CAAC;IACjB,CAAC,MAAM,IAAIC,CAAC,GAAG,CAAC,IAAIA,CAAC,KAAK,IAAI,CAACN,KAAK,CAACU,MAAM,GAAG,CAAC,EAAE;MAC7CL,SAAS,GAAG,IAAI,CAACL,KAAK,CAACU,MAAM,GAAG,CAAC;IACrC,CAAC,MAAM,IAAKP,KAAK,GAAG,IAAI,CAACH,KAAK,CAACM,CAAC,GAAG,CAAC,CAAC,CAACG,SAAS,GAAI,CAAC,IAAI,CAACT,KAAK,CAACM,CAAC,CAAC,CAACG,SAAS,GAAG,IAAI,CAACT,KAAK,CAACM,CAAC,GAAG,CAAC,CAAC,CAACG,SAAS,IAAE,CAAC,EAAE;MAC1GJ,SAAS,GAAGC,CAAC,GAAG,CAAC;IACrB,CAAC,MAAM;MACHD,SAAS,GAAGC,CAAC;IACjB;IACA,OAAOD,SAAS;EACpB;EAEOM,UAAUA,CAAA,EAAG;IAClB,OAAO,IAAI,CAACX,KAAK,CAAC,CAAC,CAAC;EACtB;EAEOY,UAAUA,CAAA,EAAG;IAClB,OAAOpC,IAAI,CAAC,IAAI,CAACwB,KAAK,CAAC,IAAI,CAAC,CAAS;EACvC;EAEOa,OAAOA,CAACV,KAAa,EAAE;IAC5B,OAAO,IAAI,CAACH,KAAK,CAAC,IAAI,CAACE,YAAY,CAACC,KAAK,CAAC,CAAC;EAC/C;EAESW,KAAKA,CAACX,KAAa,EAAE;IAC1B,MAAMY,KAAK,GAAG,IAAI,CAACb,YAAY,CAACC,KAAK,CAAC;IACtC,OAAO,IAAI,CAACH,KAAK,CAACe,KAAK,CAAC,CAACN,SAAS;EACpC;EAEOO,SAASA,CAACC,GAAW,EAAEC,GAAW,EAAEC,YAAoB,EAAE;IAAA,IAAAC,YAAA,EAAAC,KAAA;IAC7D,MAAMC,aAAa,GAAGH,YAAY;IAClC,MAAMI,WAAW,GAAGN,GAAG,GAAGK,aAAa;IACvC,MAAME,WAAW,GAAGN,GAAG,GAAGI,aAAa;IACvC,MAAMG,OAAO,GAAG,CAAC,IAAI,CAACzB,KAAK,IAAAoB,YAAA,GAAG,IAAI,CAACpB,KAAK,CAAC,CAAC,CAAC,cAAAoB,YAAA,uBAAbA,YAAA,CAAeX,SAAS,GAAG,CAAC,KAAK,CAAC;IAChE,MAAMiB,OAAO,IAAAL,KAAA,GAAG7C,IAAI,CAAC,IAAI,CAACwB,KAAK,CAAC,cAAAqB,KAAA,uBAAhBA,KAAA,CAAkBZ,SAAS;IAC3C,MAAMkB,MAAM,GAAGD,OAAO,GAAG,CAACF,WAAW,GAAGD,WAAW,KAAGG,OAAO,GAAGD,OAAO,CAAC,GAAG,CAAC;IAC5E,MAAMzB,KAAK,GAAG,EAAY;IAC1B,IAAI,CAACA,KAAK,CAAC4B,OAAO,CAAC,CAACpB,CAAC,EAAEF,CAAC,KAAK;MAC3B,MAAMG,SAAS,GAAGoB,IAAI,CAACC,KAAK,CAACP,WAAW,GAAG,CAACf,CAAC,CAACC,SAAS,GAAG,IAAI,CAACT,KAAK,CAAC,CAAC,CAAC,CAACS,SAAS,IAAIkB,MAAM,CAAC;MAC5F3B,KAAK,CAACM,CAAC,CAAC,GAAG;QACTyB,YAAY,EAAE,EAAE,GAAGtB,SAAS;QAC5BA,SAAS,EAAEA,SAAS;QACpBuB,SAAS,EAAEvB,SAAS;QACpBwB,QAAQ,EAAExB;MACZ,CAAC;IACH,CAAC,CAAC;IACF,OAAOX,KAAK,CAACC,oBAAoB,CAACC,KAAK,CAAC;EAC5C;AACF;AAEA,eAAe,MAAMkC,QAAQ,SAAS/C,oBAAoB,CAA+C;EAavGQ,WAAWA,CAACwC,KAAoB,EAAE;IAChC,KAAK,CAACA,KAAK,EAAEnD,aAAa,EAAE,IAAID,aAAa,CAAC,CAAC,CAAC;IAACc,eAAA,2BAbxB,CAAC;IAAAA,eAAA,mBACJ,IAAI3B,QAAQ,CAACkE,KAAK,CAAC,CAAC,CAAC;IAAAvC,eAAA,uBACjB,IAAI3B,QAAQ,CAACkE,KAAK,CAAC,CAAC,CAAC;IAAAvC,eAAA,uBAC1BlB,OAAO,CAAC0D,GAAG,CAAC,CAAC;IAAAxC,eAAA,sBACdlB,OAAO,CAAC0D,GAAG,CAAC,CAAC;IAAAxC,eAAA,0BACTlB,OAAO,CAAC0D,GAAG,CAAC,CAAC;IAAAxC,eAAA,gBAChB,IAAI;IAAAA,eAAA,kBACF,IAAI;IAAAA,eAAA,2CACM/B,KAAK,CAACwE,SAAS,CAAC,CAAC;IAAAzC,eAAA,oCACxB/B,KAAK,CAACwE,SAAS,CAAC,CAAC;IAAAzC,eAAA,uBACb,EAAE;IAAAA,eAAA,yBA2JjBzB,QAAQ,CAAC,CAAC+B,KAAa,EAAEoC,WAA8B,KAAK;MAC3E,MAAMC,SAAS,GAAG,IAAI,CAACC,kBAAkB,CAAC,CAAC;MAC3C,MAAMC,aAAa,GAAG,IAAI,CAACC,KAAK,CAACR,KAAK,CAACS,KAAK,IAAItE,OAAO,CAACkE,SAAS,CAAC;;MAElE;MACA,MAAMK,aAAa,GACjBN,WAAW,KAAK,UAAU,GACtBC,SAAS,KAAIA,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAG,CAAC,CAAC,IAC3BA,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAG,CAAC,CAAC;MAEpB,IAAIM,cAAc,GAAGJ,aAAa,GAC9B,CAACF,SAAS,CAAC,CAAC,CAAC,EAAEA,SAAS,CAAC,CAAC,CAAC,CAAC,GAC5B,CAACrC,KAAK,CAAC;MACX,IAAIuC,aAAa,EAAE;QACjB,IAAIH,WAAW,KAAK,UAAU,EAAE;UAC9B,MAAMQ,uBAAuB,GAC3B5C,KAAK,IAAGqC,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAG,CAAC,CAAC,IAAGA,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAG,CAAC,CAAC,GAAGrC,KAAK;UAEjD2C,cAAc,GAAG,CAACC,uBAAuB,EAAEP,SAAS,CAAC,CAAC,CAAC,CAAC;QAC1D,CAAC,MAAM,IAAID,WAAW,KAAK,WAAW,EAAE;UACtC,MAAMS,wBAAwB,GAC5B7C,KAAK,GAAGqC,SAAS,CAAC,CAAC,CAAC,GAAGA,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAG,CAAC,CAAC,GAAGrC,KAAK;UAE/C2C,cAAc,GAAG,CAACN,SAAS,CAAC,CAAC,CAAC,EAAEQ,wBAAwB,CAAC;QAC3D,CAAC,MAAM,IAAIR,SAAS,CAAC,CAAC,CAAC,IAAIrC,KAAK,GAAGqC,SAAS,CAAC,CAAC,CAAC,EAAE;UAC/CM,cAAc,GAAG,CAACN,SAAS,CAAC,CAAC,CAAC,EAAErC,KAAK,CAAC;QACxC,CAAC,MAAM;UACL2C,cAAc,GAAG,CAAC3C,KAAK,EAAEqC,SAAS,CAAC,CAAC,CAAC,CAAC;QACxC;MACF;;MAEA;MACA,MAAMS,OAAO,GAAGH,cAAc,CAACI,GAAG,CAAC1C,CAAC,IAAI,IAAI,CAACP,KAAK,CAACY,OAAO,CAACL,CAAC,CAAC,CAACwB,SAAS,CAAC;MACxE,IAAI,CAACmB,WAAW,CAAC;QACfhB,KAAK,EAAE;UACLiB,SAAS,EAAEH,OAAO,CAACvC,MAAM,GAAG,CAAC,GAAGuC,OAAO,GAAGA,OAAO,CAAC,CAAC;QACrD;MACF,CAAkB,CAAC;MACnB,IAAI,CAACd,KAAK,CAACkB,aAAa,IACtB,IAAI,CAAClB,KAAK,CAACkB,aAAa,CAAC,WAAW,EAAEP,cAAc,EAAED,aAAa,CAAC;IACxE,CAAC,EAAE,GAAG,CAAC;IAAAhD,eAAA,yBAsEWyD,CAAoB,IAAK;MACzC,MAAMC,MAAM,GAAGD,CAAC,CAACE,WAAW,CAACD,MAAM;MACnC,IAAI,CAACJ,WAAW,CAAC;QACfM,KAAK,EAAE;UACLC,GAAG,EAAExE,gBAAgB,CAAC,CAAC,GAAIqE,MAAM,CAASG,GAAG,GAAGH,MAAM,CAACI,CAAC;UACxDC,IAAI,EAAE1E,gBAAgB,CAAC,CAAC,GAAIqE,MAAM,CAASK,IAAI,GAAGL,MAAM,CAACM,CAAC;UAC1DpE,KAAK,EAAE8D,MAAM,CAAC9D,KAAK;UACnBqE,MAAM,EAAEP,MAAM,CAACO;QACjB;MACF,CAAC,EAAmB,MAAM;QACxB,IAAI,CAACC,SAAS,CAAC,CAAC;QAChB,IAAI,CAACC,eAAe,CAAC,IAAI,CAACvB,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;MAC7D,CAAC,CAAC;IACJ,CAAC;IAAA5C,eAAA,mBAEU,CAACoE,IAAqC,EAAEC,YAA6B,EAAEC,aAAqB,KAAa;MAClH,IAAIC,KAAK,GAAG,EAAE;MACd,IAAG7F,QAAQ,CAAC0F,IAAI,CAAC,EAAE;QACjB,IAAII,aAAa,GAAGJ,IAAI,CAACK,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAACA,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;QAChEF,KAAK,GAAG,IAAI,CAACG,QAAQ,CAACF,aAAa,CAACG,KAAK,CAAC,GAAG,CAAC,EAAEN,YAAY,EAAEC,aAAa,CAAC;MAC9E,CAAC,MAAM,IAAGF,IAAI,IAAI3F,OAAO,CAAC2F,IAAI,CAAC,IAAIA,IAAI,CAACE,aAAa,CAAC,EAAE;QACtD,IAAGzF,QAAQ,CAACuF,IAAI,CAACE,aAAa,CAAC,CAAC,IAAKF,IAAI,CAACE,aAAa,CAAC,CAASC,KAAK,EAAE;UACtEA,KAAK,GAAG,GAAIH,IAAI,CAACE,aAAa,CAAC,CAAiDC,KAAK,EAAE;QACzF,CAAC,MAAM,IAAG,CAAC1F,QAAQ,CAACuF,IAAI,CAACE,aAAa,CAAC,CAAC,EAAC;UACvCC,KAAK,GAAG,GAAGH,IAAI,CAACE,aAAa,CAAC,EAAE;QAClC;MACF,CAAC,MAAM;QACLC,KAAK,GAAG,GAAGF,YAAY,EAAE;MAC3B;MAEA,OAAOE,KAAK;IACd,CAAC;IAAAvE,eAAA,2BAEkB,CAACoE,IAAqC,EAAEE,aAAqB,KAAa;MAC3F,IAAIM,QAAQ,GAAG,IAAI;MACnB,IAAGR,IAAI,IAAI3F,OAAO,CAAC2F,IAAI,CAAC,IAAIA,IAAI,CAACE,aAAa,CAAC,EAAE;QAC/C,IAAGzF,QAAQ,CAACuF,IAAI,CAACE,aAAa,CAAC,CAAC,IAAKF,IAAI,CAACE,aAAa,CAAC,CAASM,QAAQ,EAAE;UACzEA,QAAQ,GAAIR,IAAI,CAACE,aAAa,CAAC,CAAgDM,QAAQ;QACzF;MACF;MAEA,OAAOA,QAAQ;IACjB,CAAC;IA/SC,IAAI,CAACV,SAAS,CAAC,CAAC;IAChB,IAAI,CAACW,gBAAgB,CAAC,IAAI,CAACC,YAAY,EAAE,OAAO,CAAC;IACjD,IAAI,CAACD,gBAAgB,CAAC,IAAI,CAACE,WAAW,EAAE,UAAU,CAAC;IACnD,IAAI,CAACF,gBAAgB,CAAC,IAAI,CAACG,eAAe,EAAE,WAAW,CAAC;IACxD,IAAI,CAACC,mBAAmB,CAACC,OAAO,GAAG,CAAC;EACtC;EAEQC,qBAAqBA,CAAC7E,KAAU,EAAO;IAC7C,MAAM8E,QAAQ,GAAG,IAAI,CAACtC,KAAK,CAACR,KAAK,CAAC+C,QAAQ;IAC1C,MAAMC,QAAQ,GAAG,IAAI,CAACxC,KAAK,CAACR,KAAK,CAACiD,QAAQ;IAC1C,IAAI,CAACnG,SAAS,CAACgG,QAAQ,CAAC,IAAI,CAAChG,SAAS,CAACkG,QAAQ,CAAC,EAAE;MAChD,OAAOhF,KAAK;IACd;IAEA,IAAI7B,OAAO,CAAC6B,KAAK,CAAC,EAAE;MAClB,OAAOA,KAAK,CAAC+C,GAAG,CAAEmC,GAAQ,IAAK;QAC7B,IAAIA,GAAG,GAAGJ,QAAQ,EAAE,OAAOA,QAAQ;QACnC,IAAII,GAAG,GAAGF,QAAQ,EAAE,OAAOA,QAAQ;QACnC,OAAOE,GAAG;MACZ,CAAC,CAAC;IACJ,CAAC,MAAM,IAAI,CAAChH,KAAK,CAAC8B,KAAK,CAAC,EAAE;MACxB,IAAIA,KAAK,GAAG8E,QAAQ,EAAE,OAAOA,QAAQ;MACrC,IAAI9E,KAAK,GAAGgF,QAAQ,EAAE,OAAOA,QAAQ;IACvC;IAEA,OAAOhF,KAAK;EACd;EACQmF,wBAAwBA,CAAA,EAAW;IAAA,IAAAC,YAAA;IACzC,MAAMC,QAAQ,IAAAD,YAAA,GAAG,IAAI,CAACE,MAAM,cAAAF,YAAA,gBAAAA,YAAA,GAAXA,YAAA,CAAaG,WAAW,cAAAH,YAAA,uBAAxBA,YAAA,CAA0B9F,KAAK;IAChD,OAAQ,OAAO+F,QAAQ,KAAK,QAAQ,IAAIA,QAAQ,GAAG,CAAC,GAAIA,QAAQ,GAAG,IAAI,CAACG,YAAY;EACtF;EACQC,eAAeA,CAAA,EAAW;IAAA,IAAAC,aAAA,EAAAC,iBAAA;IAChC,MAAMC,WAAW,GAAG,IAAI,CAACT,wBAAwB,CAAC,CAAC;IACnD,MAAMU,YAAY,GAAG,EAAAH,aAAA,OAAI,CAACJ,MAAM,cAAAI,aAAA,gBAAAA,aAAA,GAAXA,aAAA,CAAaH,WAAW,cAAAG,aAAA,uBAAxBA,aAAA,CAA0B/B,MAAM,KAAciC,WAAW;IAC9E,MAAME,WAAW,GAAG,EAAAH,iBAAA,OAAI,CAACnD,KAAK,CAACc,KAAK,cAAAqC,iBAAA,uBAAhBA,iBAAA,CAAkBhC,MAAM,KAAI,CAAC;IAEjD,MAAMoC,UAAU,GAAGH,WAAW,GAAG,CAAC;IAClC,MAAMI,YAAY,GAAGtE,IAAI,CAACX,GAAG,CAAC,CAAC,EAAE,CAAC+E,WAAW,GAAGD,YAAY,IAAI,CAAC,CAAC;IAElE,OAAOE,UAAU,GAAGC,YAAY;EACpC;EACEC,mBAAmBA,CAACC,SAAiB,EAAE;IAAA,IAAAC,WAAA;IACrC,OAAO,EAAAA,WAAA,OAAI,CAACrG,KAAK,cAAAqG,WAAA,uBAAVA,WAAA,CAAYtG,KAAK,CAAC,IAAI,CAACuG,OAAO,CAACrG,YAAY,CAACmG,SAAS,CAAC,CAAC,CAAC5F,SAAS,KAAI,CAAC;EAC/E;EAEA+F,oBAAoBA,CAACrG,KAAa,EAAE;IAAA,IAAAsG,aAAA;IAClC,QAAAA,aAAA,GAAO,IAAI,CAACF,OAAO,cAAAE,aAAA,gBAAAA,aAAA,GAAZA,aAAA,CAAczG,KAAK,CAAC,IAAI,CAACC,KAAK,CAACC,YAAY,CAACC,KAAK,CAAC,CAAC,cAAAsG,aAAA,uBAAnDA,aAAA,CAAqDhG,SAAS;EACvE;EAEAiE,gBAAgBA,CAACgC,OAAmB,EAAEnE,WAA8B,EAAE;IACpEmE,OAAO,CACJC,WAAW,CAAC,CAAC,CAAC,CACdC,WAAW,CAAC,CAAC,CAAC,CACdC,QAAQ,CAACvD,CAAC,IAAI;MAAA,IAAAwD,cAAA,EAAAC,cAAA;MACb,MAAMC,aAAa,GAAG,IAAI,CAAC/G,KAAK,CAACD,KAAK,CAACU,MAAM,GAAC,CAAC;MAC/C,MAAMQ,GAAG,IAAA4F,cAAA,GAAG,IAAI,CAACP,OAAO,cAAAO,cAAA,gBAAAA,cAAA,GAAZA,cAAA,CAAc9G,KAAK,CAACgH,aAAa,CAAC,cAAAF,cAAA,uBAAlCA,cAAA,CAAoCrG,SAAS;MACzD,MAAMQ,GAAG,IAAA8F,cAAA,GAAG,IAAI,CAACR,OAAO,cAAAQ,cAAA,gBAAAA,cAAA,GAAZA,cAAA,CAAc/G,KAAK,CAAC,CAAC,CAAC,cAAA+G,cAAA,uBAAtBA,cAAA,CAAwBtG,SAAS;MAE7C,IAAIwG,QAAQ,GAAG,IAAI,CAACnC,mBAAmB,CAACC,OAAO,GAAGzB,CAAC,CAAC4D,YAAY;MAChED,QAAQ,GAAGA,QAAQ,GAAG/F,GAAG,GAAGA,GAAG,GAAG+F,QAAQ;MAC1CA,QAAQ,GAAGA,QAAQ,GAAGhG,GAAG,GAAGA,GAAG,GAAGgG,QAAQ;MAE1C,IAAI,CAACxC,QAAQ,CAAC0C,QAAQ,CAACF,QAAQ,CAAC;MAChC,IAAI,CAACG,YAAY,CAACrC,OAAO,GAAGkC,QAAQ;IACtC,CAAC,CAAC,CACDI,KAAK,CAAC/D,CAAC,IAAI;MACV,IAAI,IAAI,CAACX,KAAK,CAACc,KAAK,EAAE;QACpB,MAAMtD,KAAK,GAAG,IAAI,CAACiG,mBAAmB,CAAC,IAAI,CAACgB,YAAY,CAACrC,OAAO,CAAC;QACjE,IAAI,CAACD,mBAAmB,CAACC,OAAO,GAAG,IAAI,CAACqC,YAAY,CAACrC,OAAO;QAC5D,IAAI,CAACf,eAAe,CAAC7D,KAAK,EAAEoC,WAAW,CAAC;QACxC,IAAI,CAAC+E,cAAc,CAACnH,KAAK,EAAEoC,WAAW,CAAC;MACzC;IACF,CAAC,CAAC;EACN;EAEAE,kBAAkBA,CAAA,EAAG;IACnB,IAAID,SAAS,GAAG,IAAI,CAACG,KAAK,CAACR,KAAK,CAACiB,SAAS,IAAI,IAAI,CAACmE,YAAY,CAAC,CAAC;IAChE/E,SAAS,GAAG,IAAI,CAACwC,qBAAqB,CAACxC,SAAS,CAAC;IAClD,IAAIA,SAAS,IAAI,IAAI,CAACvC,KAAK,EAAE;MAC3BuC,SAAS,GAAGlE,OAAO,CAACkE,SAAS,CAAC,GAAGA,SAAS,GAAE,CAACA,SAAS,CAAC;MACvD,OAAOA,SAAS,CAACU,GAAG,CAAEsE,CAAM;QAAA,IAAAC,YAAA;QAAA,QAAAA,YAAA,GAAK,IAAI,CAACxH,KAAK,cAAAwH,YAAA,gBAAAA,YAAA,GAAVA,YAAA,CAAYzH,KAAK,CAAC0H,IAAI,CAACC,CAAC,IAAIA,CAAC,CAAC3F,SAAS,KAAKwF,CAAC,CAAC,cAAAC,YAAA,uBAA9CA,YAAA,CAAgDhH,SAAS;MAAA,EAAC;IAC7F;IACA,OAAO+B,SAAS;EAClB;EAEA+E,YAAYA,CAAA,EAAG;IACb,IAAI/E,SAAS,GAAG,IAAI,CAACL,KAAK,CAACiB,SAAS;IACpC,IAAI/E,KAAK,CAAC,IAAI,CAAC8D,KAAK,CAACiB,SAAS,CAAC,EAAE;MAAA,IAAAwE,iBAAA,EAAAC,qBAAA;MAC/B,MAAMC,GAAG,GAAGjG,IAAI,CAACkG,KAAK,CAAC,IAAI,CAAC9H,KAAK,CAACD,KAAK,CAACU,MAAM,GAAG,CAAC,CAAC;MACnD,OAAOoH,GAAG,GAAG,CAAC,GACZ,CAAC,EAAAF,iBAAA,OAAI,CAAC3H,KAAK,CAACD,KAAK,CAAC8H,GAAG,GAAG,CAAC,CAAC,cAAAF,iBAAA,uBAAzBA,iBAAA,CAA2B5F,SAAS,KAAI,CAAC,EAC1C,EAAA6F,qBAAA,OAAI,CAAC5H,KAAK,CAACD,KAAK,CAAC8H,GAAG,CAAC,cAAAD,qBAAA,uBAArBA,qBAAA,CAAuB7F,SAAS,KAAI,GAAG,CAAC,GACtC,EAAE;IACR;IACAQ,SAAS,GAAG,IAAI,CAACwC,qBAAqB,CAACxC,SAAS,CAAC;IACjDA,SAAS,GAAGlE,OAAO,CAACkE,SAAS,CAAC,GAAGA,SAAS,GAAE,CAACA,SAAS,CAAC;IACvD,OAAOA,SAAS,CAACU,GAAG,CAAEsE,CAAM;MAAA,IAAAQ,mBAAA;MAAA,QAAAA,mBAAA,GAAK,IAAI,CAAC/H,KAAK,CAACY,OAAO,CAAC2G,CAAC,CAAC,cAAAQ,mBAAA,uBAArBA,mBAAA,CAAuBhG,SAAS;IAAA,EAAC;EACpE;EAEAiG,iBAAiBA,CAAA,EAAG;IAClB,MAAMhF,OAAO,GAAG,EAAE;IAClB,MAAMgC,QAAQ,GAAG,IAAI,CAACtC,KAAK,CAACR,KAAK,CAAC+C,QAAQ;IAC1C,MAAMC,QAAQ,GAAG,IAAI,CAACxC,KAAK,CAACR,KAAK,CAACiD,QAAQ;IAC1C,MAAM8C,IAAI,GAAG,IAAI,CAACvF,KAAK,CAACR,KAAK,CAAC+F,IAAI;IAClC,IAAIjJ,SAAS,CAACgG,QAAQ,CAAC,IAClBhG,SAAS,CAACkG,QAAQ,CAAC,IACnBlG,SAAS,CAACiJ,IAAI,CAAC,EAAE;MACpB,IAAIC,QAAQ,GAAGlD,QAAQ;MACvB,OAAOkD,QAAQ,IAAIhD,QAAQ,EAAE;QAC3BlC,OAAO,CAACmF,IAAI,CAACD,QAAQ,CAAC;QACtBA,QAAQ,IAAID,IAAI,IAAI,CAAC;MACvB;MACA,IAAI,CAAC/E,WAAW,CAAC;QACfhB,KAAK,EAAE;UACLc,OAAO,EAAEA;QACX;MACF,CAAkB,CAAC;IACrB;EACF;EAEAoF,gBAAgBA,CAACC,IAAY,EAAEC,IAAS,EAAEC,IAAS,EAAE;IACnD,KAAK,CAACH,gBAAgB,CAACC,IAAI,EAAEC,IAAI,EAAEC,IAAI,CAAC;IACxC,QAAOF,IAAI;MACT,KAAK,UAAU;MACf,KAAK,UAAU;MACf,KAAK,MAAM;QACT,IAAI,IAAI,CAAC3F,KAAK,CAACR,KAAK,CAACsG,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAACC,WAAW,EAAE;UAC9D,IAAI,CAACT,iBAAiB,CAAC,CAAC;QAC1B;MACF,KAAK,WAAW;QAChB,IAAI,CAACxJ,OAAO,CAAC8J,IAAI,EAAEC,IAAI,CAAC,EAAE;UACxB,MAAMG,YAAY,GAAG,IAAI,CAAC3D,qBAAqB,CAACuD,IAAI,CAAC;UACrD,IAAI,CAAC9J,OAAO,CAACkK,YAAY,EAAEJ,IAAI,CAAC,EAAE;YAChC,IAAI,CAACpF,WAAW,CAAC;cACfhB,KAAK,EAAE;gBACLiB,SAAS,EAAEuF;cACb;YACF,CAAkB,CAAC;UACrB;UACA,IAAI,CAACC,mBAAmB,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,EAAED,YAAY,EAAEH,IAAI,CAAC,CAAC;QACtE;QACA;IACJ;EACF;EAEAK,iBAAiBA,CAAA,EAAG;IAAA,IAAAC,qBAAA;IAClB,KAAK,CAACD,iBAAiB,CAAC,CAAC;IACzB,IAAI,CAAC9E,SAAS,CAAC,CAAC;IAChB,IAAI,CAACC,eAAe,CAAC,EAAA8E,qBAAA,OAAI,CAACrG,kBAAkB,CAAC,CAAC,cAAAqG,qBAAA,uBAAzBA,qBAAA,CAA4B,CAAC,CAAC,KAAI,EAAE,EAAE,OAAO,CAAC;EACrE;EA4CA/E,SAASA,CAAA,EAAG;IAAA,IAAAgF,qBAAA,EAAAC,YAAA;IACV,MAAM7G,KAAK,GAAG,IAAI,CAACQ,KAAK,CAACR,KAAK;IAC9B,MAAMQ,KAAK,GAAG,IAAI,CAACA,KAAK;IACxB,IAAI,CAAC1C,KAAK,GAAGH,KAAK,CAACC,oBAAoB,EAAAgJ,qBAAA,GACrC,IAAI,CAACpG,KAAK,CAACsG,SAAS,cAAAF,qBAAA,uBAApBA,qBAAA,CAAsB7F,GAAG,CAAC,CAACsE,CAAM,EAAElH,CAAS,MAAM;MAChDyB,YAAY,EAAEyF,CAAC,CAAC0B,UAAU,IAAI1B,CAAC,CAACzF,YAAY;MAC5CtB,SAAS,EAAEH,CAAC,GAAG,CAAC;MAChB0B,SAAS,EAAEwF,CAAC,CAACxF,SAAS;MACtBC,QAAQ,EAAEuF;IACZ,CAAC,CAAC,CACJ,CAAC;IACD,MAAM/H,KAAK,GAAG,EAAAuJ,YAAA,GAAArG,KAAK,CAACc,KAAK,cAAAuF,YAAA,uBAAXA,YAAA,CAAavJ,KAAK,KAAI,CAAC;IACrC,MAAM0B,YAAY,GAAG,IAAI,CAACyE,eAAe,CAAC,CAAC;IAC3C,IAAI,CAACW,OAAO,GAAG,IAAI,CAACtG,KAAK,CAACe,SAAS,CAAC,CAAC,EAAEvB,KAAK,EAAE0B,YAAY,CAAC;EAC7D;EAEA6C,eAAeA,CAACmF,IAAY,EAAE5G,WAA8B,EAAE;IAC5D,MAAMI,KAAK,GAAG,IAAI,CAACA,KAAK;IACxB,MAAMS,SAAS,GAAG,IAAI,CAACX,kBAAkB,CAAC,CAAC;IAC3C;IACA,IAAI,CAACE,KAAK,CAACR,KAAK,CAACS,KAAK,EAAE;MAAA,IAAAwG,cAAA;MACtB,MAAMjJ,KAAK,GAAG,IAAI,CAACqG,oBAAoB,CAAC2C,IAAI,CAAC;MAC7C,CAAAC,cAAA,OAAI,CAAC3E,QAAQ,cAAA2E,cAAA,eAAbA,cAAA,CAAejC,QAAQ,CAACkC,KAAK,CAAClJ,KAAK,CAAC,GAAG,CAAC,GAAGA,KAAK,CAAC;MACjD;IACF;IAEA,IAAIoC,WAAW,KAAK,WAAW,EAAE;MAAA,IAAA+G,kBAAA;MAC/B,MAAMnJ,KAAK,GAAG,IAAI,CAACqG,oBAAoB,CAAC3E,IAAI,CAACX,GAAG,CAACkC,SAAS,CAAC,CAAC,CAAC,EAAE+F,IAAI,CAAC,CAAC;MACrE,CAAAG,kBAAA,OAAI,CAACC,YAAY,cAAAD,kBAAA,eAAjBA,kBAAA,CAAmBnC,QAAQ,CAAChH,KAAK,CAAC;IACpC,CAAC,MAAM,IAAIoC,WAAW,KAAK,UAAU,EAAE;MAAA,IAAAiH,eAAA;MACrC,MAAMrJ,KAAK,GAAG,IAAI,CAACqG,oBAAoB,CAAC3E,IAAI,CAACZ,GAAG,CAACkI,IAAI,EAAE/F,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;MACrE,CAAAoG,eAAA,OAAI,CAAC/E,QAAQ,cAAA+E,eAAA,eAAbA,eAAA,CAAerC,QAAQ,CAAChH,KAAK,CAAC;IAChC,CAAC,MAAM;MAAA,IAAAsJ,qBAAA,EAAAC,eAAA,EAAAC,qBAAA,EAAAC,mBAAA;MACL;AACN;AACA;AACA;MACM,MAAMC,WAAW,GAAG,IAAI,CAACrD,oBAAoB,CAAC,CAAApD,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAG,CAAC,CAAC,OAAAqG,qBAAA,GAAI,IAAI,CAACxJ,KAAK,CAACU,UAAU,CAAC,CAAC,cAAA8I,qBAAA,uBAAvBA,qBAAA,CAAyBzH,SAAS,EAAC;MACnG,CAAA0H,eAAA,OAAI,CAACjF,QAAQ,cAAAiF,eAAA,eAAbA,eAAA,CAAevC,QAAQ,CAAC0C,WAAW,IAAI,CAAC,CAAC;MACzC,MAAMN,YAAY,GAAG,IAAI,CAAC/C,oBAAoB,CAAC,CAAApD,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAG,CAAC,CAAC,OAAAuG,qBAAA,GAAI,IAAI,CAAC1J,KAAK,CAACW,UAAU,CAAC,CAAC,cAAA+I,qBAAA,uBAAvBA,qBAAA,CAAyB3H,SAAS,EAAC;MACpG,CAAA4H,mBAAA,OAAI,CAACL,YAAY,cAAAK,mBAAA,eAAjBA,mBAAA,CAAmBzC,QAAQ,CAACoC,YAAY,IAAI,CAAC,CAAC;IAChD;EACF;EAEAO,eAAeA,CAAC3J,KAAU,EAAE4J,YAAiB,EAAEC,IAA8B,EAAE;IAAA,IAAAC,YAAA;IAC7E,MAAM9E,QAAQ,GAAG,IAAI,CAACxC,KAAK,CAACR,KAAK,CAACiD,QAAQ;IAC1C,MAAMH,QAAQ,GAAG,IAAI,CAACtC,KAAK,CAACR,KAAK,CAAC+C,QAAQ;IAC1C,MAAMgF,OAAO,GAAG,IAAI,CAACjK,KAAK,CAACU,UAAU,CAAC,CAAC;IACvC,MAAMwJ,OAAO,GAAG,IAAI,CAAClK,KAAK,CAACW,UAAU,CAAC,CAAC;IACvC,MAAMuB,KAAK,GAAG,IAAI,CAACA,KAAK;IACxB,IAAIiI,YAAY,GAAGL,YAAY;IAC/B,MAAMM,mBAAmB,GAAGC,MAAM,CAACC,IAAI,CAACC,SAAS,CAACrK,KAAK,CAAC,CAAC;IACzD,MAAMsK,IAAI,IAAAR,YAAA,GAAG,IAAI,CAAChK,KAAK,cAAAgK,YAAA,uBAAVA,YAAA,CAAYpJ,OAAO,CAACuJ,YAAY,CAAC;IAC9C;IACA,IAAIK,IAAI,IAAItI,KAAK,CAACuI,oBAAoB,IAAI,IAAI,CAAChC,WAAW,EAAE;MAAA,IAAAiC,iBAAA,EAAAC,iBAAA,EAAAC,cAAA;MAC1D,IAAIJ,IAAI,CAACzI,SAAS,IAAIiD,QAAQ,IAAIiF,OAAO,aAAPA,OAAO,gBAAAS,iBAAA,GAAPT,OAAO,CAAEjI,QAAQ,cAAA0I,iBAAA,eAAjBA,iBAAA,CAAmBG,UAAU,EAAE;QAC/D,OAAO3I,KAAK,CAACuI,oBAAoB,CAACR,OAAO,CAACjI,QAAQ,CAAC6I,UAAU,CAAC;MAChE;MACA,IAAIL,IAAI,CAACzI,SAAS,IAAImD,QAAQ,IAAIgF,OAAO,aAAPA,OAAO,gBAAAS,iBAAA,GAAPT,OAAO,CAAElI,QAAQ,cAAA2I,iBAAA,eAAjBA,iBAAA,CAAmBE,UAAU,EAAE;QAC/D,OAAO3I,KAAK,CAACuI,oBAAoB,CAACP,OAAO,CAAClI,QAAQ,CAAC6I,UAAU,CAAC;MAChE;MACA,KAAAD,cAAA,GAAIJ,IAAI,CAACxI,QAAQ,cAAA4I,cAAA,eAAbA,cAAA,CAAeC,UAAU,EAAE;QAC7B,OAAO3I,KAAK,CAACuI,oBAAoB,CAACD,IAAI,CAACxI,QAAQ,CAAC6I,UAAU,CAAC;MAC7D;IACF;IACA,OAAOL,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAE1I,YAAY;EAC3B;EA8CAgJ,iBAAiBA,CAAA,EAAS;IACxB,KAAK,CAACA,iBAAiB,CAAC,CAAC;IACzB,IAAI,IAAI,CAACpI,KAAK,CAACR,KAAK,CAACsG,QAAQ,KAAK,QAAQ,EAAE;MAC1C,IAAI,CAACR,iBAAiB,CAAC,CAAC;IAC1B;EACF;EAEA+C,cAAcA,CAAC7I,KAAoB,EAAE;IAAA,IAAA8I,eAAA;IACnC,MAAMC,UAAU,GAAG,IAAI,CAACzI,kBAAkB,CAAC,CAAC;IAC5C,MAAMC,aAAa,GAAGP,KAAK,CAACS,KAAK,IAAIsI,UAAU,CAACxK,MAAM,GAAG,CAAC;IAC1D,oBACE5C,KAAA,CAAAqN,aAAA,CAAArN,KAAA,CAAAsN,QAAA,qBACAtN,KAAA,CAAAqN,aAAA,CAACrM,SAAS;MACRuM,WAAW,EAAElJ,KAAK,CAACmJ,WAAY;MAC/BC,IAAI,EAAE,IAAI,CAACzB,eAAe,EAAAmB,eAAA,GACxB,IAAI,CAACxG,QAAQ,cAAAwG,eAAA,uBAAbA,eAAA,CAAeO,MAAM,EACrBN,UAAU,CAAC,CAAC,CAAC,EACb,UACF,CAAE;MACFO,YAAY,EAAE,CACZ;QACEzK,SAAS,EAAE,CACT;UACE0K,UAAU,EAAE,IAAI,CAACjH;QACnB,CAAC;MAEL,CAAC,EACD,IAAI,CAACgB,MAAM,CAACkG,OAAO,CACnB;MACFC,iBAAiB,EAAE,IAAI,CAACnG,MAAM,CAACoG,YAAa;MAC5CC,oBAAoB,EAAE,IAAI,CAACrG,MAAM,CAACsG,eAAgB;MAClDC,SAAS,EAAE7J,KAAK,CAAC8J;IAAiB,gBAElCnO,KAAA,CAAAqN,aAAA,CAACvM,eAAe;MAAC8H,OAAO,EAAE,IAAI,CAAC9B;IAAY,gBACzC9G,KAAA,CAAAqN,aAAA,CAACjN,QAAQ,CAACH,IAAI;MACZmO,KAAK,EAAE,CACL,IAAI,CAACzG,MAAM,CAAC0G,KAAK,EACjB;QACEnL,SAAS,EAAE,CACT;UACE0K,UAAU,EAAE,IAAI,CAACjH;QACnB,CAAC;MAEL,CAAC,CACD;MACF2H,UAAU,EAAE,IAAK;MACjBC,kBAAkB,EAAG3J,aAAa,IAAI,IAAI,CAAC6G,YAAY,GAAI,WAAW,GAAG;IAAQ,gBAEjFzL,KAAA,CAAAqN,aAAA,CAACtM,mBAAmB;MAClByN,IAAI,EAAG,IAAI,CAAC7G,MAAM,CAAC0G,KAAK,CAASI,cAAe;MAChD9H,QAAQ,EAAG,IAAI,CAACgB,MAAM,CAAC0G,KAAK,CAASK,kBAAmB;MACxDC,KAAK,EAAG,IAAI,CAAChH,MAAM,CAAC0G,KAAK,CAASO,eAAgB;MAClDC,MAAM,EAAG,IAAI,CAAClH,MAAM,CAAC0G,KAAK,CAASS,gBAAgB,IAAI;IAAY,CAC/C,CACT,CACA,CACR,CAAC,EACXlK,aAAa,IAAI,IAAI,CAAC6G,YAAY,gBACjCzL,KAAA,CAAAqN,aAAA,CAACrM,SAAS;MACRuM,WAAW,EAAElJ,KAAK,CAACmJ,WAAY;MAC/BC,IAAI,EAAE,IAAI,CAACzB,eAAe,CACxB,IAAI,CAACP,YAAY,CAACiC,MAAM,EACxBN,UAAU,CAAC,CAAC,CAAC,EACb,WACF,CAAE;MACFO,YAAY,EAAE,CACZ;QACEzK,SAAS,EAAE,CACT;UACE0K,UAAU,EAAE,IAAI,CAACnC;QACnB,CAAC;MAEL,CAAC,EACD,IAAI,CAAC9D,MAAM,CAACkG,OAAO,CACnB;MACFC,iBAAiB,EAAE,IAAI,CAACnG,MAAM,CAACoG,YAAa;MAC5CC,oBAAoB,EAAE,IAAI,CAACrG,MAAM,CAACsG,eAAgB;MAClDC,SAAS,EAAE7J,KAAK,CAAC8J;IAAiB,gBAElCnO,KAAA,CAAAqN,aAAA,CAACvM,eAAe;MAAC8H,OAAO,EAAE,IAAI,CAAC7B;IAAgB,gBAC7C/G,KAAA,CAAAqN,aAAA,CAACjN,QAAQ,CAACH,IAAI;MACZmO,KAAK,EAAE,CACL,IAAI,CAACzG,MAAM,CAAC0G,KAAK,EACjB;QACEnL,SAAS,EAAE,CACT;UACE0K,UAAU,EAAE,IAAI,CAACnC;QACnB,CAAC;MAEL,CAAC,CACD;MACF6C,UAAU,EAAE,IAAK;MACjBC,kBAAkB,EAAE;IAAa,gBAEjCvO,KAAA,CAAAqN,aAAA,CAACtM,mBAAmB;MAClByN,IAAI,EAAG,IAAI,CAAC7G,MAAM,CAAC0G,KAAK,CAASI,cAAe;MAChD9H,QAAQ,EAAG,IAAI,CAACgB,MAAM,CAAC0G,KAAK,CAASK,kBAAmB;MACxDC,KAAK,EAAG,IAAI,CAAChH,MAAM,CAAC0G,KAAK,CAASO,eAAgB;MAClDC,MAAM,EAAG,IAAI,CAAClH,MAAM,CAAC0G,KAAK,CAASS,gBAAgB,IAAI;IAAY,CACpE,CACY,CACA,CACR,CAAC,GACV,IACF,CAAC;EAEP;EAEAC,oBAAoBA,CAAC1K,KAAoB,EAAE;IAAA,IAAA2K,YAAA,EAAAC,YAAA,EAAAC,MAAA,EAAAC,YAAA;IACzC,MAAM/B,UAAU,GAAG,IAAI,CAACzI,kBAAkB,CAAC,CAAC;IAC5C,MAAMC,aAAa,GAAGP,KAAK,CAACS,KAAK,IAAIsI,UAAU,CAACxK,MAAM,GAAG,CAAC;IAC1D,oBACI5C,KAAA,CAAAqN,aAAA,CAACpN,IAAI;MACHmO,KAAK,EAAE;QAAEgB,aAAa,EAAE,KAAK;QAAEC,cAAc,EAAE;MAAgB;IAAE,gBAEjErP,KAAA,CAAAqN,aAAA,CAACnN,IAAI,EAAAoP,QAAA,KACC,IAAI,CAACC,YAAY,CAAC,KAAK,CAAC;MAC5BnB,KAAK,EAAE,CAAC,IAAI,CAACzG,MAAM,CAAC8F,IAAI,EAAE,IAAI,CAAC9F,MAAM,CAAC6H,YAAY;IAAE,KAAAR,YAAA,GAEnD,IAAI,CAAC7M,KAAK,cAAA6M,YAAA,gBAAAA,YAAA,GAAVA,YAAA,CAAY9M,KAAK,CAAC,CAAC,CAAC,cAAA8M,YAAA,uBAApBA,YAAA,CAAsB/K,YACnB,CAAC,EACNW,aAAa,gBACZ5E,KAAA,CAAAqN,aAAA,CAAArN,KAAA,CAAAsN,QAAA,MAAI,CAAC,gBAELtN,KAAA,CAAAqN,aAAA,CAACnN,IAAI,EAAAoP,QAAA,KACC,IAAI,CAACC,YAAY,CAAC,OAAO,CAAC;MAC9BnB,KAAK,EAAE,CAAC,IAAI,CAACzG,MAAM,CAAC8F,IAAI,EAAE,IAAI,CAAC9F,MAAM,CAACtF,KAAK;IAAE,KAAA4M,YAAA,GAE5C,IAAI,CAAC9M,KAAK,cAAA8M,YAAA,gBAAAA,YAAA,GAAVA,YAAA,CAAY/M,KAAK,CAAC0H,IAAI,CAACC,CAAC,IAAIA,CAAC,CAAC3F,SAAS,KAAKG,KAAK,CAACiB,SAAS,CAAC,cAAA2J,YAAA,uBAA5DA,YAAA,CAA8DhL,YAC3D,CACP,eACDjE,KAAA,CAAAqN,aAAA,CAACnN,IAAI,EAAAoP,QAAA,KACC,IAAI,CAACC,YAAY,CAAC,KAAK,CAAC;MAC5BnB,KAAK,EAAE,CAAC,IAAI,CAACzG,MAAM,CAAC8F,IAAI,EAAE,IAAI,CAAC9F,MAAM,CAAC8H,YAAY;IAAE,KAAAP,MAAA,GAEnDxO,IAAI,EAAAyO,YAAA,GAAC,IAAI,CAAChN,KAAK,cAAAgN,YAAA,uBAAVA,YAAA,CAAYjN,KAAK,CAAC,cAAAgN,MAAA,uBAAvBA,MAAA,CAAyBjL,YACtB,CACF,CAAC;EAEb;EAEAyL,aAAaA,CAACrL,KAAoB,EAAE;IAAA,IAAAsL,kBAAA;IAClC,MAAMC,eAAe,GAAGvL,KAAK,CAACuL,eAAe;IAC7C,MAAMjO,KAAK,GAAG,EAAAgO,kBAAA,OAAI,CAAC9K,KAAK,CAACc,KAAK,cAAAgK,kBAAA,uBAAhBA,kBAAA,CAAkBhO,KAAK,KAAI,CAAC;IAC1C,oBAAQ3B,KAAA,CAAAqN,aAAA,CAACpN,IAAI;MAACmO,KAAK,EAAE;QAAEgB,aAAa,EAAE;MAAM;IAAE,gBAC5CpP,KAAA,CAAAqN,aAAA,CAACpN,IAAI,QACF0B,KAAK,GAAG,IAAI,CAACQ,KAAK,CAACD,KAAK,CAACkD,GAAG,CAAC,CAACyE,CAAC,EAAErH,CAAC,KAAK;MACtC,MAAMqN,SAAS,GAAG,IAAI,CAACrI,wBAAwB,CAAC,CAAC;MACjD,MAAMsI,YAAY,GAAG,IAAI,CAACpH,oBAAoB,CAACmB,CAAC,CAAClH,SAAS,CAAC;MAC3D,MAAMoN,SAAS,GAAG,IAAI,CAACtJ,QAAQ,CAACmJ,eAAe,EAAE/F,CAAC,CAAC5F,YAAY,EAAEzB,CAAC,CAAC;MACnE,MAAMwN,mBAAmB,GAAG,IAAI,CAACC,gBAAgB,CAACL,eAAe,EAAEpN,CAAC,CAAC;MACrE,oBACExC,KAAA,CAAAqN,aAAA,CAACpN,IAAI;QACHiQ,GAAG,EAAE1N,CAAE;QACP4L,KAAK,EAAE,CACL,IAAI,CAACzG,MAAM,CAACwI,aAAa,EACzB;UACErK,IAAI,EAAEgK,YAAY;UAClBM,MAAM,EAAEP,SAAS,GAAG,CAAC;UACrBQ,UAAU,EAAE;QACd,CAAC;MACD,gBAEFrQ,KAAA,CAAAqN,aAAA,CAACnN,IAAI;QACHkO,KAAK,EAAE,CACL,IAAI,CAACzG,MAAM,CAAC2I,WAAW,EACvBN,mBAAmB,KAAK,MAAM,GAC9B;UACEI,MAAM,EAAE,CAACP,SAAS,GAAG,CAAC,GAAG,EAAE,GAAGA,SAAS,IAAI,CAAC;QAC9C,CAAC,GAAE;UACDO,MAAM,EAAGP,SAAS,GAAG,CAAC,GAAG;QAC3B,CAAC,EACD,IAAI,CAAClI,MAAM,CAAC4I,gBAAgB,EAC5B/N,CAAC,KAAK,CAAC,GAAG,IAAI,CAACmF,MAAM,CAAC6H,YAAY,GAAG,IAAI,EACzChN,CAAC,KAAK,IAAI,CAACL,KAAK,CAACD,KAAK,CAACU,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC+E,MAAM,CAAC8H,YAAY,GAAG,IAAI;MACnE,GAEDM,SACG,CAAC,eACP/P,KAAA,CAAAqN,aAAA,CAACpN,IAAI;QACHmO,KAAK,EAAE,CACL,IAAI,CAACzG,MAAM,CAAC6I,IAAI,EAChB;UACE7O,KAAK,EAAEkO,SAAS;UAChB7J,MAAM,EAAE6J,SAAS;UACjBY,YAAY,EAAEZ;QAChB,CAAC,EACD,IAAI,CAAClI,MAAM,CAACC,WAAW;MACvB,CACH,CACG,CAAC;IAEX,CAAC,CAAC,GAAG,IACD,CACF,CAAC;EACT;EAEA8I,YAAYA,CAACrM,KAAoB,EAAE;IAAA,IAAAsM,kBAAA;IACjC,MAAMhP,KAAK,GAAG,EAAAgP,kBAAA,OAAI,CAAC9L,KAAK,CAACc,KAAK,cAAAgL,kBAAA,uBAAhBA,kBAAA,CAAkBhP,KAAK,KAAI,CAAC;IAC1C,MAAMyL,UAAU,GAAG,IAAI,CAACzI,kBAAkB,CAAC,CAAC;IAC5C,MAAMC,aAAa,GAAGP,KAAK,CAACS,KAAK,IAAIsI,UAAU,CAACxK,MAAM,GAAG,CAAC;IAC1D,oBACE5C,KAAA,CAAAqN,aAAA,CAACvM,eAAe;MAAC8H,OAAO,EAAE,IAAI,CAAC/B;IAAa,gBAC1C7G,KAAA,CAAAqN,aAAA,CAAClN,gBAAgB,EAAAmP,QAAA;MACfsB,aAAa,EAAE,CAAE;MACjBxC,KAAK,EAAE,CAAC,IAAI,CAACzG,MAAM,CAAChC,KAAK,EAAE,IAAI,CAACgC,MAAM,CAACkJ,UAAU,CAAE;MACnDC,QAAQ,EAAE,IAAI,CAACC;IAAe,GAC1B,IAAI,CAACxB,YAAY,CAAC,CAAC,EACnB/N,qBAAqB,CAACD,uBAAuB,CAACyP,MAAM,EAAE3M,KAAK,CAAC,gBAEhErE,KAAA,CAAAqN,aAAA,CAACjN,QAAQ,CAACH,IAAI;MACZmO,KAAK,EAAE,CACLxJ,aAAa,IAAI,IAAI,CAAC6G,YAAY,GAC9B,IAAI,CAAC9D,MAAM,CAACsJ,YAAY,GACxB,IAAI,CAACtJ,MAAM,CAACuJ,YAAY,EAC5B;QACEvP,KAAK,EAAEA,KAAK;QACZuB,SAAS,EAAE,CACT;UACE0K,UAAU,EAAE,IAAI,CAACjH,QAAQ,CAACwK,WAAW,CAAC;YACpCC,UAAU,EAAE,CAAC,CAAC,EAAEzP,KAAK,CAAC;YACtB0P,WAAW,EAAE,CAAC,CAAC1P,KAAK,EAAE,CAAC;UACzB,CAAC;QACH,CAAC;MAEL,CAAC,EACD,IAAI,CAACgG,MAAM,CAAC2J,iBAAiB;IAC7B,CACY,CAAC,eACjBtR,KAAA,CAAAqN,aAAA,CAACjN,QAAQ,CAACH,IAAI;MACZmO,KAAK,EAAE,CACLxJ,aAAa,IAAI,IAAI,CAAC6G,YAAY,GAC9B,IAAI,CAAC9D,MAAM,CAACuJ,YAAY,GACxB,IAAI,CAACvJ,MAAM,CAACsJ,YAAY,EAC5B;QACEtP,KAAK,EAAEA,KAAK;QACZuB,SAAS,EAAE,CACT;UACE0K,UAAU,EAAE,IAAI,CAACjH;QACnB,CAAC;MAEL,CAAC,EACD,IAAI,CAACgB,MAAM,CAAC4J,gBAAgB;IAC5B,CACY,CAAC,EAChB3M,aAAa,IAAI,IAAI,CAAC6G,YAAY,gBACjCzL,KAAA,CAAAqN,aAAA,CAACjN,QAAQ,CAACH,IAAI;MACZmO,KAAK,EAAE,CACL,IAAI,CAACzG,MAAM,CAACsJ,YAAY,EACxB;QACEtP,KAAK,EAAEA,KAAK;QACZuB,SAAS,EAAE,CACT;UACE0K,UAAU,EAAE,IAAI,CAACnC;QACnB,CAAC;MAEL,CAAC,EACD,IAAI,CAAC9D,MAAM,CAAC6J,iBAAiB;IAC7B,CACH,CAAC,GACA,IACY,CACH,CAAC;EAEtB;EAEAC,YAAYA,CAACpN,KAAoB,EAAE;IACjC,MAAM+I,UAAU,GAAG,IAAI,CAACzI,kBAAkB,CAAC,CAAC;IAC5C,oBACE3E,KAAA,CAAAqN,aAAA,CAACpN,IAAI;MAACmO,KAAK,EAAE,IAAI,CAACzG,MAAM,CAAC+J,IAAK;MAACZ,QAAQ,EAAGa,KAAK,IAAK,IAAI,CAACC,YAAY,CAACD,KAAK;IAAE,GAC1E,IAAI,CAACE,WAAW,EAChB,CAACxN,KAAK,CAACyN,WAAW,IAAI,CAACzN,KAAK,CAACmJ,WAAW,GAAE,IAAI,CAACuB,oBAAoB,CAAC1K,KAAK,CAAC,GAAG,IAAI,EACjF,IAAI,CAACqM,YAAY,CAACrM,KAAK,CAAC,eACzBrE,KAAA,CAAAqN,aAAA,CAACpN,IAAI;MAACmO,KAAK,EAAE;QAAEgB,aAAa,EAAE;MAAM;IAAE,GACnC/K,KAAK,CAACyN,WAAW,GAAG,IAAI,CAACpC,aAAa,CAACrL,KAAK,CAAC,GAAG,IAAI,EACpD,IAAI,CAAC6I,cAAc,CAAC7I,KAAK,CACtB,CACF,CAAC;EAEX;AACF","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","View","Text","TouchableOpacity","Animated","Dimensions","debounce","isNil","isArray","isString","last","isEqual","isObject","Gesture","GestureDetector","BackgroundComponent","WmTooltip","WmSliderProps","DEFAULT_CLASS","isDefined","isWebPreviewMode","BaseDatasetComponent","BaseDatasetState","AccessibilityWidgetType","getAccessibilityProps","SCREEN_WIDTH","get","width","WmSliderState","constructor","args","_defineProperty","Scale","getInstanceWithTicks","ticks","scale","getTickIndex","value","parseInt","markIndex","i","findIndex","v","markValue","length","getMinTick","getMaxTick","getTick","clamp","index","transform","min","max","markerRadius","_this$ticks$","_last","MARKER_RADIUS","adjustedMin","adjustedMax","thisMin","thisMax","factor","forEach","Math","round","displayfield","datafield","dataitem","WmSlider","props","Value","Pan","createRef","gestureType","dataValue","getScaledDataValue","isRangeSlider","state","range","oldThumbValue","thumbDataValue","valueLowerThanHighThumb","valueGreaterThanLowThumb","dataset","map","updateState","datavalue","onFieldChange","e","layout","nativeEvent","track","top","y","left","x","height","initScale","computePosition","data","displayFiled","indexOfMarker","title","formattedData","replace","getLabel","split","position","configureGesture","trackGesture","knobGesture","highKnobGesture","positionRefMaksudai","current","constrainValueToRange","minValue","minvalue","maxValue","maxvalue","val","getMarkerWidthFromStyles","_this$styles","cssWidth","styles","markerStyle","MARKER_WIDTH","getMarkerRadius","_this$styles2","_this$state$track","markerWidth","markerHeight","trackHeight","baseRadius","extraPadding","getValueFromGesture","positionX","_this$scale","uiScale","getPositionFromValue","_this$uiScale","gesture","maxPointers","minDistance","onChange","_this$uiScale2","_this$uiScale3","tickLastIndex","newValue","translationX","setValue","tempPosition","onEnd","onSliderChange","getDataValue","d","_this$scale2","parsedValue","find","t","_this$scale$ticks","_this$scale$ticks$mid","mid","floor","_this$scale$getTick","initNumericSlider","step","nextMark","push","onPropertyChange","name","$new","$old","datatype","initialized","clampedValue","invokeEventCallback","onDataItemsUpdate","_this$getScaledDataVa","_this$state$dataItems","_state$track","dataItems","displayexp","from","_this$position","isNaN","_this$highPosition","highPosition","_this$position2","_this$scale$getMinTic","_this$position3","_this$scale$getMaxTic","_this$highPosition2","lowPosition","getTooltipLabel","initialValue","type","_this$scale3","minTick","maxTick","tooltipValue","updatedPositionInPx","Number","JSON","stringify","tick","getToolTipExpression","_minTick$dataitem","_maxTick$dataitem","_tick$dataitem","dataObject","componentDidMount","renderToolTips","_this$position4","sDataValue","createElement","Fragment","showTooltip","showtooltip","text","_value","tooltipStyle","translateX","tooltip","tooltipLabelStyle","tooltipLabel","tooltipTriangleStyle","tooltipTriangle","direction","tooltipdirection","style","thumb","accessible","accessibilityLabel","size","backgroundSize","backgroundPosition","image","backgroundImage","repeat","backgroundRepeat","renderOldMarkerStyle","_this$scale4","_this$scale5","_last2","_this$scale6","flexDirection","justifyContent","_extends","getTestProps","minimumValue","maximumValue","renderMarkers","_this$state$track2","markerlabeltext","markWidth","stepwiseLeft","labelText","marketLabelPosition","getLabelPosition","key","markerWrapper","bottom","alignItems","markerLabel","markerLabelStyle","mark","borderRadius","renderTracks","_this$state$track3","activeOpacity","trackStyle","onLayout","onLayoutChange","SLIDER","maximumTrack","minimumTrack","interpolate","inputRange","outputRange","minimumTrackStyle","activeTrackStyle","maximumTrackStyle","renderWidget","root","event","handleLayout","_background","showmarkers"],"sources":["slider.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, LayoutChangeEvent, TouchableOpacity, Animated, Easing, Dimensions } from 'react-native';\nimport { debounce, isNumber, isNil, isArray, isString, last, isEqual, isObject } from 'lodash';\nimport { Gesture, GestureDetector, PanGesture } from 'react-native-gesture-handler';\nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\nimport WmTooltip from '@wavemaker/app-rn-runtime/components/basic/tooltip/tooltip.component';\n\nimport WmSliderProps from './slider.props';\nimport { DEFAULT_CLASS, WmSliderStyles } from './slider.styles';\nimport { isDefined, isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\nimport { BaseDatasetComponent, BaseDatasetState } from '../basedataset/basedataset.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nexport type SliderGestureType = 'track' | 'lowThumb' | 'highThumb';\n\nconst SCREEN_WIDTH = Dimensions.get(\"screen\").width;\n\nexport class WmSliderState extends BaseDatasetState<WmSliderProps> {\n track?: {\n top: number,\n left: number,\n width: number,\n height: number\n };\n}\n\ninterface Tick {\n displayfield: string;\n markValue: number;\n datafield: any;\n dataitem: any;\n}\n\nclass Scale {\n\n public ticks = [] as Tick[];\n\n static getInstanceWithTicks(ticks: Tick[]) {\n const scale = new Scale();\n scale.ticks = [...ticks];\n return scale;\n }\n\n private constructor() {\n \n }\n\n public getTickIndex(value: number) {\n if (isString(value)) {\n value = parseInt(value);\n }\n let markIndex = 0;\n const i = this.ticks.findIndex((v, i) => v.markValue >= value);\n if (i === 0) {\n markIndex = 0;\n } else if (i < 0 || i === this.ticks.length - 1) {\n markIndex = this.ticks.length - 1;\n } else if ((value - this.ticks[i - 1].markValue) < (this.ticks[i].markValue - this.ticks[i - 1].markValue)/2) {\n markIndex = i - 1;\n } else {\n markIndex = i;\n }\n return markIndex;\n }\n\n public getMinTick() {\n return this.ticks[0];\n }\n\n public getMaxTick() {\n return last(this.ticks) || {} as Tick;\n }\n\n public getTick(value: number) {\n return this.ticks[this.getTickIndex(value)];\n}\n\n public clamp(value: number) {\n const index = this.getTickIndex(value);\n return this.ticks[index].markValue; \n }\n\n public transform(min: number, max: number, markerRadius: number) {\n const MARKER_RADIUS = markerRadius;\n const adjustedMin = min + MARKER_RADIUS;\n const adjustedMax = max - MARKER_RADIUS;\n const thisMin = (this.ticks ? this.ticks[0]?.markValue : 0) || 0;\n const thisMax = last(this.ticks)?.markValue;\n const factor = thisMax ? (adjustedMax - adjustedMin)/(thisMax - thisMin) : 1;\n const ticks = [] as Tick[];\n this.ticks.forEach((v, i) => {\n const markValue = Math.round(adjustedMin + (v.markValue - this.ticks[0].markValue) * factor)\n ticks[i] = {\n displayfield: '' + markValue,\n markValue: markValue,\n datafield: markValue,\n dataitem: markValue\n };\n });\n return Scale.getInstanceWithTicks(ticks);\n }\n}\n\nexport default class WmSlider extends BaseDatasetComponent<WmSliderProps, WmSliderState, WmSliderStyles> {\n valueBeforeSlide: number = 0;\n private position: any = new Animated.Value(0);\n private highPosition: any = new Animated.Value(0);\n private trackGesture = Gesture.Pan();\n private knobGesture = Gesture.Pan();\n private highKnobGesture = Gesture.Pan();\n private scale: Scale = null as any;\n private uiScale: Scale = null as any;\n private positionRefMaksudai: any = React.createRef();\n private tempPosition: any = React.createRef();\n private readonly MARKER_WIDTH = 10; \n\n constructor(props: WmSliderProps) {\n super(props, DEFAULT_CLASS, new WmSliderProps());\n this.initScale();\n this.configureGesture(this.trackGesture, 'track');\n this.configureGesture(this.knobGesture, 'lowThumb');\n this.configureGesture(this.highKnobGesture, 'highThumb');\n this.positionRefMaksudai.current = 0;\n }\n\n private constrainValueToRange(value: any): any {\n const minValue = this.state.props.minvalue;\n const maxValue = this.state.props.maxvalue;\n if (!isDefined(minValue) || !isDefined(maxValue)) {\n return value;\n }\n \n if (isArray(value)) {\n return value.map((val: any) => {\n if (val < minValue) return minValue;\n if (val > maxValue) return maxValue;\n return val;\n });\n } else if (!isNil(value)) {\n if (value < minValue) return minValue;\n if (value > maxValue) return maxValue;\n }\n \n return value;\n }\n private getMarkerWidthFromStyles(): number {\n const cssWidth = this.styles?.markerStyle?.width;\n return (typeof cssWidth === 'number' && cssWidth > 0) ? cssWidth : this.MARKER_WIDTH;\n }\n private getMarkerRadius(): number {\n const markerWidth = this.getMarkerWidthFromStyles();\n const markerHeight = this.styles?.markerStyle?.height as number || markerWidth;\n const trackHeight = this.state.track?.height || 2;\n \n const baseRadius = markerWidth / 2;\n const extraPadding = Math.max(0, (trackHeight - markerHeight) / 2);\n \n return baseRadius + extraPadding;\n}\n getValueFromGesture(positionX: number) {\n return this.scale?.ticks[this.uiScale.getTickIndex(positionX)].markValue || 0;\n }\n\n getPositionFromValue(value: number) {\n return this.uiScale?.ticks[this.scale.getTickIndex(value)]?.markValue;\n }\n\n configureGesture(gesture: PanGesture, gestureType: SliderGestureType) {\n gesture\n .maxPointers(1)\n .minDistance(0)\n .onChange(e => {\n const tickLastIndex = this.scale.ticks.length-1\n const max = this.uiScale?.ticks[tickLastIndex]?.markValue;\n const min = this.uiScale?.ticks[0]?.markValue;\n\n let newValue = this.positionRefMaksudai.current + e.translationX;\n newValue = newValue > max ? max : newValue;\n newValue = newValue < min ? min : newValue;\n\n this.position.setValue(newValue);\n this.tempPosition.current = newValue;\n })\n .onEnd(e => {\n if (this.state.track) {\n const value = this.getValueFromGesture(this.tempPosition.current);\n this.positionRefMaksudai.current = this.tempPosition.current;\n this.computePosition(value, gestureType);\n this.onSliderChange(value, gestureType);\n }\n })\n }\n\n getScaledDataValue() {\n let dataValue = this.state.props.datavalue || this.getDataValue();\n dataValue = this.constrainValueToRange(dataValue);\n if (dataValue && this.scale) {\n dataValue = isArray(dataValue) ? dataValue: [dataValue];\n return dataValue.map((d: any) => {\n const parsedValue = isString(d) ? parseInt(d) : d;\n return this.scale?.ticks.find(t => t.datafield === parsedValue)?.markValue || parsedValue;\n });\n }\n return dataValue;\n }\n\n getDataValue() {\n let dataValue = this.props.datavalue;\n if (isNil(this.props.datavalue)) {\n const mid = Math.floor(this.scale.ticks.length / 2);\n return mid > 0 ? \n [this.scale.ticks[mid - 1]?.datafield || 0,\n this.scale.ticks[mid]?.datafield || 100]\n : [];\n }\n dataValue = this.constrainValueToRange(dataValue);\n dataValue = isArray(dataValue) ? dataValue: [dataValue];\n return dataValue.map((d: any) => this.scale.getTick(d)?.datafield);\n }\n\n initNumericSlider() {\n const dataset = [];\n const minValue = this.state.props.minvalue;\n const maxValue = this.state.props.maxvalue;\n const step = this.state.props.step;\n if (isDefined(minValue) \n && isDefined(maxValue)\n && isDefined(step)) {\n let nextMark = minValue;\n while (nextMark <= maxValue) {\n dataset.push(nextMark);\n nextMark += step || 1;\n }\n this.updateState({\n props: {\n dataset: dataset\n }\n } as WmSliderState);\n }\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case 'maxvalue':\n case 'minvalue': \n case 'step': \n if (this.state.props.datatype === 'number' && this.initialized) {\n this.initNumericSlider();\n }\n case 'datavalue':\n if (!isEqual($new, $old)) {\n const clampedValue = this.constrainValueToRange($new);\n if (!isEqual(clampedValue, $new)) {\n this.updateState({\n props: {\n datavalue: clampedValue\n }\n } as WmSliderState); \n }\n this.invokeEventCallback('onChange', [null, this, clampedValue, $old]);\n }\n break;\n }\n }\n\n onDataItemsUpdate() {\n super.onDataItemsUpdate();\n this.initScale();\n this.computePosition(this.getScaledDataValue()?.[0] || 10, \"track\");\n }\n\n onSliderChange = debounce((value: number, gestureType: SliderGestureType) => {\n const dataValue = this.getScaledDataValue();\n const isRangeSlider = this.state.props.range && isArray(dataValue);\n\n // * thumb value for low or high\n const oldThumbValue =\n gestureType === 'lowThumb'\n ? dataValue || dataValue?.[0]\n : dataValue?.[1];\n\n let thumbDataValue = isRangeSlider\n ? [dataValue[0], dataValue[1]]\n : [value];\n if (isRangeSlider) {\n if (gestureType === 'lowThumb') {\n const valueLowerThanHighThumb =\n value > dataValue?.[1] ? dataValue?.[1] : value;\n\n thumbDataValue = [valueLowerThanHighThumb, dataValue[1]];\n } else if (gestureType === 'highThumb') {\n const valueGreaterThanLowThumb =\n value < dataValue[0] ? dataValue?.[0] : value;\n\n thumbDataValue = [dataValue[0], valueGreaterThanLowThumb];\n } else if (dataValue[1] && value > dataValue[1]) {\n thumbDataValue = [dataValue[0], value];\n } else {\n thumbDataValue = [value, dataValue[1]];\n }\n }\n\n // * new thumb value is different from old value\n const dataset = thumbDataValue.map(v => this.scale.getTick(v).datafield);\n this.updateState({\n props: {\n datavalue: dataset.length > 1 ? dataset : dataset[0]\n },\n } as WmSliderState);\n this.props.onFieldChange &&\n this.props.onFieldChange('datavalue', thumbDataValue, oldThumbValue);\n }, 200);\n \n initScale() {\n const props = this.state.props;\n const state = this.state;\n this.scale = Scale.getInstanceWithTicks(\n this.state.dataItems?.map((d: any, i: number) => ({\n displayfield: d.displayexp || d.displayfield,\n markValue: i + 1,\n datafield: d.datafield,\n dataitem: d \n }))\n );\n const width = state.track?.width || 0;\n const markerRadius = this.getMarkerRadius();\n this.uiScale = this.scale.transform(0, width, markerRadius);\n }\n\n computePosition(from: number, gestureType: SliderGestureType) {\n const state = this.state;\n const datavalue = this.getScaledDataValue();\n // * single thumb slider\n if (!state.props.range) {\n const value = this.getPositionFromValue(from);\n this.position?.setValue(isNaN(value) ? 0 : value);\n return;\n }\n\n if (gestureType === 'highThumb') {\n const value = this.getPositionFromValue(Math.max(datavalue[0], from));\n this.highPosition?.setValue(value);\n } else if (gestureType === 'lowThumb') {\n const value = this.getPositionFromValue(Math.min(from, datavalue[1]));\n this.position?.setValue(value);\n } else {\n /*\n * gestureType: track\n * initial position for low and high thumb\n */\n const lowPosition = this.getPositionFromValue(datavalue?.[0] || this.scale.getMinTick()?.datafield);\n this.position?.setValue(lowPosition || 0);\n const highPosition = this.getPositionFromValue(datavalue?.[1] || this.scale.getMaxTick()?.datafield);\n this.highPosition?.setValue(highPosition || 0);\n }\n }\n\n getTooltipLabel(value: any, initialValue: any, type: 'lowThumb' | 'highThumb') {\n const maxValue = this.state.props.maxvalue;\n const minValue = this.state.props.minvalue;\n const minTick = this.scale.getMinTick();\n const maxTick = this.scale.getMaxTick();\n const props = this.props;\n let tooltipValue = initialValue;\n const updatedPositionInPx = Number(JSON.stringify(value));\n const tick = this.scale?.getTick(tooltipValue);\n // * getting custom tooltip label\n if (tick && props.getToolTipExpression && this.initialized) {\n if (tick.datafield <= minValue && minTick?.dataitem?.dataObject) {\n return props.getToolTipExpression(minTick.dataitem.dataObject);\n }\n if (tick.datafield >= maxValue && maxTick?.dataitem?.dataObject) {\n return props.getToolTipExpression(maxTick.dataitem.dataObject);\n }\n if (tick.dataitem?.dataObject) {\n return props.getToolTipExpression(tick.dataitem.dataObject);\n }\n }\n return tick?.displayfield;\n }\n\n onLayoutChange = (e: LayoutChangeEvent) => {\n const layout = e.nativeEvent.layout;\n this.updateState({\n track: {\n top: isWebPreviewMode() ? (layout as any).top : layout.y,\n left: isWebPreviewMode() ? (layout as any).left : layout.x,\n width: layout.width,\n height: layout.height\n }\n } as WmSliderState, () => {\n this.initScale();\n this.computePosition(this.getScaledDataValue()[0], 'track');\n });\n }\n\n getLabel = (data: Array<any> | string | undefined, displayFiled: number | string, indexOfMarker: number): string => {\n let title = \"\";\n if(isString(data)) {\n let formattedData = data.replace(/ ,/g, ',').replace(/, /g, ',');\n title = this.getLabel(formattedData.split(','), displayFiled, indexOfMarker);\n } else if(data && isArray(data) && data[indexOfMarker]) {\n if(isObject(data[indexOfMarker]) && (data[indexOfMarker] as any).title) {\n title = `${(data[indexOfMarker] as {title: string | number, position?: string}).title}`;\n } else if(!isObject(data[indexOfMarker])){\n title = `${data[indexOfMarker]}`\n }\n } else {\n title = `${displayFiled}`; \n }\n\n return title;\n }\n\n getLabelPosition = (data: Array<any> | string | undefined, indexOfMarker: number): string => {\n let position = \"up\";\n if(data && isArray(data) && data[indexOfMarker]) {\n if(isObject(data[indexOfMarker]) && (data[indexOfMarker] as any).position) {\n position = (data[indexOfMarker] as {title: string | number, position: string}).position;\n }\n }\n\n return position;\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n if (this.state.props.datatype === 'number') {\n this.initNumericSlider();\n }\n }\n\n renderToolTips(props: WmSliderProps) {\n const sDataValue = this.getScaledDataValue();\n const isRangeSlider = props.range && sDataValue.length > 1;\n return (\n <>\n <WmTooltip\n showTooltip={props.showtooltip}\n text={this.getTooltipLabel(\n this.position?._value,\n sDataValue[0],\n 'lowThumb'\n )}\n tooltipStyle={[\n {\n transform: [\n {\n translateX: this.position,\n },\n ],\n },\n this.styles.tooltip,\n ]}\n tooltipLabelStyle={this.styles.tooltipLabel}\n tooltipTriangleStyle={this.styles.tooltipTriangle}\n direction={props.tooltipdirection}\n >\n <GestureDetector gesture={this.knobGesture}>\n <Animated.View\n style={[\n this.styles.thumb,\n {\n transform: [\n {\n translateX: this.position,\n },\n ],\n },\n ]}\n accessible={true}\n accessibilityLabel={(isRangeSlider && this.highPosition) ? 'Low thumb' : 'Thumb'}\n >\n <BackgroundComponent\n size={(this.styles.thumb as any).backgroundSize}\n position={(this.styles.thumb as any).backgroundPosition}\n image={(this.styles.thumb as any).backgroundImage}\n repeat={(this.styles.thumb as any).backgroundRepeat || 'no-repeat'}\n ></BackgroundComponent>\n </Animated.View>\n </GestureDetector>\n </WmTooltip>\n {isRangeSlider && this.highPosition ? (\n <WmTooltip\n showTooltip={props.showtooltip}\n text={this.getTooltipLabel(\n this.highPosition._value,\n sDataValue[1],\n 'highThumb'\n )}\n tooltipStyle={[\n {\n transform: [\n {\n translateX: this.highPosition,\n },\n ],\n },\n this.styles.tooltip,\n ]}\n tooltipLabelStyle={this.styles.tooltipLabel}\n tooltipTriangleStyle={this.styles.tooltipTriangle}\n direction={props.tooltipdirection}\n >\n <GestureDetector gesture={this.highKnobGesture}>\n <Animated.View\n style={[\n this.styles.thumb,\n {\n transform: [\n {\n translateX: this.highPosition,\n },\n ],\n }\n ]}\n accessible={true}\n accessibilityLabel={'High thumb'}\n >\n <BackgroundComponent\n size={(this.styles.thumb as any).backgroundSize}\n position={(this.styles.thumb as any).backgroundPosition}\n image={(this.styles.thumb as any).backgroundImage}\n repeat={(this.styles.thumb as any).backgroundRepeat || 'no-repeat'}\n />\n </Animated.View>\n </GestureDetector>\n </WmTooltip>\n ) : null}\n </>\n );\n }\n\n renderOldMarkerStyle(props: WmSliderProps) {\n const sDataValue = this.getScaledDataValue();\n const isRangeSlider = props.range && sDataValue.length > 1;\n return (\n <View\n style={{ flexDirection: 'row', justifyContent: 'space-between' }}\n >\n <Text\n {...this.getTestProps('min')}\n style={[this.styles.text, this.styles.minimumValue]}\n >\n {this.scale?.ticks[0]?.displayfield}\n </Text>\n {isRangeSlider ? (\n <></>\n ) : (\n <Text\n {...this.getTestProps('value')}\n style={[this.styles.text, this.styles.value]}\n >\n {this.scale?.ticks.find(t => t.datafield === props.datavalue)?.displayfield}\n </Text>\n )}\n <Text\n {...this.getTestProps('max')}\n style={[this.styles.text, this.styles.maximumValue]}\n >\n {last(this.scale?.ticks)?.displayfield}\n </Text>\n </View>\n );\n }\n\n renderMarkers(props: WmSliderProps) {\n const markerlabeltext = props.markerlabeltext;\n const width = this.state.track?.width || 0;\n return (<View style={{ flexDirection: 'row' }}>\n <View>\n {width ? this.scale.ticks.map((t, i) => {\n const markWidth = this.getMarkerWidthFromStyles();\n const stepwiseLeft = this.getPositionFromValue(t.markValue);\n const labelText = this.getLabel(markerlabeltext, t.displayfield, i);\n const marketLabelPosition = this.getLabelPosition(markerlabeltext, i);\n return (\n <View\n key={i}\n style={[\n this.styles.markerWrapper,\n {\n left: stepwiseLeft,\n bottom: markWidth / 2,\n alignItems: 'center',\n },\n ]}\n >\n <Text\n style={[\n this.styles.markerLabel,\n marketLabelPosition === 'down'?\n {\n bottom: (markWidth / 2 + 10 + markWidth) * -1,\n }: {\n bottom: (markWidth / 2 + 10),\n },\n this.styles.markerLabelStyle,\n i === 0 ? this.styles.minimumValue : null,\n i === this.scale.ticks.length - 1 ? this.styles.maximumValue : null,\n ]}\n >\n {labelText}\n </Text>\n <View\n style={[\n this.styles.mark,\n {\n width: markWidth,\n height: markWidth,\n borderRadius: markWidth,\n },\n this.styles.markerStyle\n ]}\n />\n </View>\n );\n }) : null}\n </View>\n </View>);\n }\n\n renderTracks(props: WmSliderProps) {\n const width = this.state.track?.width || 0;\n const sDataValue = this.getScaledDataValue();\n const isRangeSlider = props.range && sDataValue.length > 1;\n return (\n <GestureDetector gesture={this.trackGesture}>\n <TouchableOpacity\n activeOpacity={1}\n style={[this.styles.track, this.styles.trackStyle]}\n onLayout={this.onLayoutChange}\n {...this.getTestProps()}\n {...getAccessibilityProps(AccessibilityWidgetType.SLIDER, props)}\n >\n <Animated.View\n style={[\n isRangeSlider && this.highPosition\n ? this.styles.maximumTrack\n : this.styles.minimumTrack,\n {\n width: width,\n transform: [\n {\n translateX: this.position.interpolate({\n inputRange: [0, width],\n outputRange: [-width, 0],\n }),\n },\n ],\n },\n this.styles.minimumTrackStyle,\n ]}\n ></Animated.View>\n <Animated.View\n style={[\n isRangeSlider && this.highPosition\n ? this.styles.minimumTrack\n : this.styles.maximumTrack,\n {\n width: width,\n transform: [\n {\n translateX: this.position,\n },\n ],\n },\n this.styles.activeTrackStyle\n ]}\n ></Animated.View>\n {isRangeSlider && this.highPosition ? (\n <Animated.View\n style={[\n this.styles.maximumTrack,\n {\n width: width,\n transform: [\n {\n translateX: this.highPosition,\n },\n ],\n },\n this.styles.maximumTrackStyle,\n ]}\n />\n ) : null}\n </TouchableOpacity>\n </GestureDetector>\n );\n }\n\n renderWidget(props: WmSliderProps) {\n const sDataValue = this.getScaledDataValue();\n return (\n <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n {this._background}\n {!props.showmarkers && !props.showtooltip? this.renderOldMarkerStyle(props) : null}\n {this.renderTracks(props)}\n <View style={{ flexDirection: 'row' }}>\n {props.showmarkers ? this.renderMarkers(props) : null}\n {this.renderToolTips(props)}\n </View>\n </View>\n );\n }\n}"],"mappings":"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","ignoreList":[]}
|
@@ -54,15 +54,16 @@ export default class WmSwitch extends BaseDatasetComponent {
|
|
54
54
|
}
|
55
55
|
const displayText = item.displayexp || item.displayfield;
|
56
56
|
const isSelected = this.state.props.datafield === 'All Fields' ? isEqual(props.datavalue, item.datafield) : this.state.props.datavalue === item.datafield;
|
57
|
+
const accessibilityProps = {
|
58
|
+
accessibilityRole: 'button',
|
59
|
+
accessibilityState: {
|
60
|
+
selected: isSelected
|
61
|
+
}
|
62
|
+
};
|
57
63
|
return /*#__PURE__*/React.createElement(Tappable, _extends({
|
58
64
|
disableTouchEffect: this.state.props.disabletoucheffect
|
59
65
|
}, this.getTestPropsForAction('button' + index), {
|
60
|
-
accessibilityProps:
|
61
|
-
...getAccessibilityProps(AccessibilityWidgetType.SWITCH, {
|
62
|
-
selected: isSelected,
|
63
|
-
hint: props === null || props === void 0 ? void 0 : props.hint
|
64
|
-
})
|
65
|
-
},
|
66
|
+
accessibilityProps: accessibilityProps,
|
66
67
|
onTap: this.state.props.disabled ? undefined : this.onTap.bind(this, null, item),
|
67
68
|
styles: [this.styles.button, this.styles[btnClass], isSelected ? this.styles.selectedButton : null],
|
68
69
|
key: item.key
|
@@ -70,7 +71,8 @@ export default class WmSwitch extends BaseDatasetComponent {
|
|
70
71
|
id: this.getTestId('icon' + index),
|
71
72
|
styles: isSelected ? this.styles.selectedLoadingIcon : this.styles.loadingIcon,
|
72
73
|
iconclass: item.icon,
|
73
|
-
caption: displayText
|
74
|
+
caption: displayText,
|
75
|
+
accessible: false
|
74
76
|
}) : /*#__PURE__*/React.createElement(View, null, this._showSkeleton ? createSkeleton(this.theme, {}, {
|
75
77
|
...this.styles.text,
|
76
78
|
...this.styles.textSkeleton.root
|
@@ -88,10 +90,10 @@ export default class WmSwitch extends BaseDatasetComponent {
|
|
88
90
|
return items && items.length ? items.map((item, index) => this.renderChild(item, index)) : null;
|
89
91
|
}
|
90
92
|
renderWidget(props) {
|
91
|
-
return /*#__PURE__*/React.createElement(View, {
|
93
|
+
return /*#__PURE__*/React.createElement(View, _extends({
|
92
94
|
style: this.styles.root,
|
93
95
|
onLayout: event => this.handleLayout(event)
|
94
|
-
}, this.renderItems());
|
96
|
+
}, getAccessibilityProps(AccessibilityWidgetType.SWITCH, props)), this.renderItems());
|
95
97
|
}
|
96
98
|
}
|
97
99
|
//# sourceMappingURL=switch.component.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Text","View","isEqual","find","WmSwitchProps","DEFAULT_CLASS","WmIcon","BaseDatasetComponent","BaseDatasetState","Tappable","AccessibilityWidgetType","getAccessibilityProps","createSkeleton","WmSwitchState","WmSwitch","constructor","props","onChange","value","oldVal","state","datavalue","validate","datafield","selectedItem","dataItems","item","key","dataObject","updateState","isDefault","invokeEvent","invokeEventCallback","undefined","proxy","onTap","event","getItemKey","renderChild","index","btnClass","length","displayText","displayexp","displayfield","isSelected","createElement","_extends","disableTouchEffect","disabletoucheffect","getTestPropsForAction","accessibilityProps","SWITCH","selected","hint","disabled","bind","styles","button","selectedButton","iconclass","id","getTestId","selectedLoadingIcon","loadingIcon","icon","caption","_showSkeleton","theme","text","textSkeleton","root","getTestPropsForLabel","style","selectedButtonText","color","renderItems","items","map","renderWidget","onLayout","handleLayout"],"sources":["switch.component.tsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport {DimensionValue, LayoutChangeEvent, Text, View} from \"react-native\";\nimport { isEqual, find } from 'lodash';\n\nimport WmSwitchProps from './switch.props';\nimport { DEFAULT_CLASS, WmSwitchStyles } from './switch.styles';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { BaseDatasetComponent, BaseDatasetState } from '../basedataset/basedataset.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\n\nexport class WmSwitchState extends BaseDatasetState<WmSwitchProps> {}\n\nexport default class WmSwitch extends BaseDatasetComponent<WmSwitchProps, WmSwitchState, WmSwitchStyles> {\n constructor(props: WmSwitchProps) {\n super(props, DEFAULT_CLASS, new WmSwitchProps());\n }\n\n onChange(value: any) {\n if (!value) {\n return;\n }\n const oldVal = this.state.props.datavalue;\n this.validate(value);\n if (value === oldVal) {\n return;\n }\n if (this.state.props.datafield === 'All Fields') {\n const selectedItem = find(this.state.dataItems, (item) => isEqual(item.key, value));\n value = selectedItem && selectedItem.dataObject;\n }\n // @ts-ignore\n this.updateState({props: {datavalue: value}, isDefault: false},\n () => {\n if (!this.props.invokeEvent) {\n this.invokeEventCallback('onChange', [undefined, this.proxy, value, oldVal]);\n }\n });\n }\n\n onTap(event: any, item: any) {\n const value = this.state.props.datafield === 'All Fields' ? this.getItemKey(item.datafield) : item.datafield;\n this.onChange(value);\n this.invokeEventCallback('onTap', [ event, this.proxy ]);\n }\n renderChild(item: any, index: any) {\n let btnClass = 'button';\n const props = this.state.props;\n if(index === 0) {\n btnClass = 'firstButton';\n } else if (index+1 === this.state.dataItems.length) {\n btnClass = 'lastButton';\n }\n const displayText = item.displayexp || item.displayfield;\n const isSelected = this.state.props.datafield === 'All Fields' ? isEqual(props.datavalue, item.datafield) : this.state.props.datavalue === item.datafield;\n return (\n <Tappable\n disableTouchEffect={this.state.props.disabletoucheffect}\n {...this.getTestPropsForAction('button'+index)}\n accessibilityProps={{...getAccessibilityProps(AccessibilityWidgetType.SWITCH, {selected: isSelected, hint: props?.hint})}}\n onTap={this.state.props.disabled ? undefined : this.onTap.bind(this, null, item)}\n styles={[\n this.styles.button,\n this.styles[btnClass],\n isSelected ? this.styles.selectedButton : null]}\n key={item.key}>\n {this.state.props.iconclass ?\n (<WmIcon\n id={this.getTestId('icon' + index)}\n styles={isSelected ? this.styles.selectedLoadingIcon : this.styles.loadingIcon}\n iconclass={item.icon}\n caption={displayText}></WmIcon>)\n : (<View>\n {\n this._showSkeleton ? createSkeleton(this.theme, {} as WmSkeletonStyles, {\n ...this.styles.text,\n ...this.styles.textSkeleton.root\n }) : <Text\n {...this.getTestPropsForLabel('label' + index)}\n style={[ isSelected ? this.styles.selectedButtonText : this.styles.text,\n {color: isSelected ? this.styles.selectedButton.color : this.styles.button.color }]}>\n {displayText}\n </Text>\n }\n </View>)}\n </Tappable>\n );\n };\n\n renderItems() {\n const items = this.state.dataItems;\n if(this._showSkeleton) {\n return [{}, {}, {}].map((item: any, index: any) => this.renderChild(item, index))\n }\n return items && items.length ?\n items.map((item: any, index: any) => this.renderChild(item, index)): null\n }\n\n renderWidget(props: WmSwitchProps) {\n return (<View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n {this.renderItems()}\n </View>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","Text","View","isEqual","find","WmSwitchProps","DEFAULT_CLASS","WmIcon","BaseDatasetComponent","BaseDatasetState","Tappable","AccessibilityWidgetType","getAccessibilityProps","createSkeleton","WmSwitchState","WmSwitch","constructor","props","onChange","value","oldVal","state","datavalue","validate","datafield","selectedItem","dataItems","item","key","dataObject","updateState","isDefault","invokeEvent","invokeEventCallback","undefined","proxy","onTap","event","getItemKey","renderChild","index","btnClass","length","displayText","displayexp","displayfield","isSelected","accessibilityProps","accessibilityRole","accessibilityState","selected","createElement","_extends","disableTouchEffect","disabletoucheffect","getTestPropsForAction","disabled","bind","styles","button","selectedButton","iconclass","id","getTestId","selectedLoadingIcon","loadingIcon","icon","caption","accessible","_showSkeleton","theme","text","textSkeleton","root","getTestPropsForLabel","style","selectedButtonText","color","renderItems","items","map","renderWidget","onLayout","handleLayout","SWITCH"],"sources":["switch.component.tsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport {DimensionValue, LayoutChangeEvent, Text, View} from \"react-native\";\nimport { isEqual, find } from 'lodash';\n\nimport WmSwitchProps from './switch.props';\nimport { DEFAULT_CLASS, WmSwitchStyles } from './switch.styles';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport { BaseDatasetComponent, BaseDatasetState } from '../basedataset/basedataset.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\n\nexport class WmSwitchState extends BaseDatasetState<WmSwitchProps> {}\n\nexport default class WmSwitch extends BaseDatasetComponent<WmSwitchProps, WmSwitchState, WmSwitchStyles> {\n constructor(props: WmSwitchProps) {\n super(props, DEFAULT_CLASS, new WmSwitchProps());\n }\n\n onChange(value: any) {\n if (!value) {\n return;\n }\n const oldVal = this.state.props.datavalue;\n this.validate(value);\n if (value === oldVal) {\n return;\n }\n if (this.state.props.datafield === 'All Fields') {\n const selectedItem = find(this.state.dataItems, (item) => isEqual(item.key, value));\n value = selectedItem && selectedItem.dataObject;\n }\n // @ts-ignore\n this.updateState({props: {datavalue: value}, isDefault: false},\n () => {\n if (!this.props.invokeEvent) {\n this.invokeEventCallback('onChange', [undefined, this.proxy, value, oldVal]);\n }\n });\n }\n\n onTap(event: any, item: any) {\n const value = this.state.props.datafield === 'All Fields' ? this.getItemKey(item.datafield) : item.datafield;\n this.onChange(value);\n this.invokeEventCallback('onTap', [ event, this.proxy ]);\n }\n renderChild(item: any, index: any) {\n let btnClass = 'button';\n const props = this.state.props;\n if(index === 0) {\n btnClass = 'firstButton';\n } else if (index+1 === this.state.dataItems.length) {\n btnClass = 'lastButton';\n }\n const displayText = item.displayexp || item.displayfield;\n const isSelected = this.state.props.datafield === 'All Fields' ? isEqual(props.datavalue, item.datafield) : this.state.props.datavalue === item.datafield;\n const accessibilityProps = {\n accessibilityRole: 'button',\n accessibilityState: {\n selected: isSelected,\n }};\n return (\n <Tappable\n disableTouchEffect={this.state.props.disabletoucheffect}\n {...this.getTestPropsForAction('button'+index)}\n accessibilityProps={accessibilityProps}\n onTap={this.state.props.disabled ? undefined : this.onTap.bind(this, null, item)}\n styles={[\n this.styles.button,\n this.styles[btnClass],\n isSelected ? this.styles.selectedButton : null]}\n key={item.key}>\n {this.state.props.iconclass ?\n (<WmIcon\n id={this.getTestId('icon' + index)}\n styles={isSelected ? this.styles.selectedLoadingIcon : this.styles.loadingIcon}\n iconclass={item.icon}\n caption={displayText}\n accessible={false}></WmIcon>)\n : (<View>\n {\n this._showSkeleton ? createSkeleton(this.theme, {} as WmSkeletonStyles, {\n ...this.styles.text,\n ...this.styles.textSkeleton.root\n }) : <Text\n {...this.getTestPropsForLabel('label' + index)}\n style={[ isSelected ? this.styles.selectedButtonText : this.styles.text,\n {color: isSelected ? this.styles.selectedButton.color : this.styles.button.color }]}>\n {displayText}\n </Text>\n }\n </View>)}\n </Tappable>\n );\n };\n\n renderItems() {\n const items = this.state.dataItems;\n if(this._showSkeleton) {\n return [{}, {}, {}].map((item: any, index: any) => this.renderChild(item, index))\n }\n return items && items.length ?\n items.map((item: any, index: any) => this.renderChild(item, index)): null\n }\n\n renderWidget(props: WmSwitchProps) {\n return (<View style={this.styles.root} onLayout={(event) => this.handleLayout(event)} {...getAccessibilityProps(AccessibilityWidgetType.SWITCH, props)}>\n {this.renderItems()}\n </View>);\n }\n}\n"],"mappings":";AAAA,OAAOA,KAAK,MAAkB,OAAO;AACrC,SAA2CC,IAAI,EAAEC,IAAI,QAAO,cAAc;AAC1E,SAASC,OAAO,EAAEC,IAAI,QAAQ,QAAQ;AAEtC,OAAOC,aAAa,MAAM,gBAAgB;AAC1C,SAASC,aAAa,QAAwB,iBAAiB;AAC/D,OAAOC,MAAM,MAAM,gEAAgE;AACnF,SAASC,oBAAoB,EAAEC,gBAAgB,QAAQ,sCAAsC;AAC7F,SAASC,QAAQ,QAAQ,mDAAmD;AAC5E,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,8CAA8C;AAC7G,SAASC,cAAc,QAAQ,wEAAwE;AAGvG,OAAO,MAAMC,aAAa,SAASL,gBAAgB,CAAgB;AAEnE,eAAe,MAAMM,QAAQ,SAASP,oBAAoB,CAA+C;EACvGQ,WAAWA,CAACC,KAAoB,EAAE;IAChC,KAAK,CAACA,KAAK,EAAEX,aAAa,EAAE,IAAID,aAAa,CAAC,CAAC,CAAC;EAClD;EAEAa,QAAQA,CAACC,KAAU,EAAE;IACnB,IAAI,CAACA,KAAK,EAAE;MACV;IACF;IACA,MAAMC,MAAM,GAAG,IAAI,CAACC,KAAK,CAACJ,KAAK,CAACK,SAAS;IACzC,IAAI,CAACC,QAAQ,CAACJ,KAAK,CAAC;IACpB,IAAIA,KAAK,KAAKC,MAAM,EAAE;MACpB;IACF;IACA,IAAI,IAAI,CAACC,KAAK,CAACJ,KAAK,CAACO,SAAS,KAAK,YAAY,EAAE;MAC/C,MAAMC,YAAY,GAAGrB,IAAI,CAAC,IAAI,CAACiB,KAAK,CAACK,SAAS,EAAGC,IAAI,IAAKxB,OAAO,CAACwB,IAAI,CAACC,GAAG,EAAET,KAAK,CAAC,CAAC;MACnFA,KAAK,GAAGM,YAAY,IAAIA,YAAY,CAACI,UAAU;IACjD;IACA;IACA,IAAI,CAACC,WAAW,CAAC;MAACb,KAAK,EAAE;QAACK,SAAS,EAAEH;MAAK,CAAC;MAAEY,SAAS,EAAE;IAAK,CAAC,EAC5D,MAAM;MACN,IAAI,CAAC,IAAI,CAACd,KAAK,CAACe,WAAW,EAAE;QAC3B,IAAI,CAACC,mBAAmB,CAAC,UAAU,EAAE,CAACC,SAAS,EAAE,IAAI,CAACC,KAAK,EAAEhB,KAAK,EAAEC,MAAM,CAAC,CAAC;MAC9E;IACA,CAAC,CAAC;EACN;EAEAgB,KAAKA,CAACC,KAAU,EAAEV,IAAS,EAAE;IAC3B,MAAMR,KAAK,GAAG,IAAI,CAACE,KAAK,CAACJ,KAAK,CAACO,SAAS,KAAK,YAAY,GAAG,IAAI,CAACc,UAAU,CAACX,IAAI,CAACH,SAAS,CAAC,GAAGG,IAAI,CAACH,SAAS;IAC5G,IAAI,CAACN,QAAQ,CAACC,KAAK,CAAC;IACpB,IAAI,CAACc,mBAAmB,CAAC,OAAO,EAAE,CAAEI,KAAK,EAAE,IAAI,CAACF,KAAK,CAAE,CAAC;EAC1D;EACAI,WAAWA,CAACZ,IAAS,EAAEa,KAAU,EAAE;IACjC,IAAIC,QAAQ,GAAG,QAAQ;IACvB,MAAMxB,KAAK,GAAG,IAAI,CAACI,KAAK,CAACJ,KAAK;IAC9B,IAAGuB,KAAK,KAAK,CAAC,EAAE;MACdC,QAAQ,GAAG,aAAa;IAC1B,CAAC,MAAM,IAAID,KAAK,GAAC,CAAC,KAAK,IAAI,CAACnB,KAAK,CAACK,SAAS,CAACgB,MAAM,EAAE;MAClDD,QAAQ,GAAG,YAAY;IACzB;IACA,MAAME,WAAW,GAAGhB,IAAI,CAACiB,UAAU,IAAIjB,IAAI,CAACkB,YAAY;IACxD,MAAMC,UAAU,GAAG,IAAI,CAACzB,KAAK,CAACJ,KAAK,CAACO,SAAS,KAAK,YAAY,GAAGrB,OAAO,CAACc,KAAK,CAACK,SAAS,EAAEK,IAAI,CAACH,SAAS,CAAC,GAAG,IAAI,CAACH,KAAK,CAACJ,KAAK,CAACK,SAAS,KAAKK,IAAI,CAACH,SAAS;IACzJ,MAAMuB,kBAAkB,GAAG;MACzBC,iBAAiB,EAAE,QAAQ;MAC3BC,kBAAkB,EAAE;QACpBC,QAAQ,EAAEJ;MACZ;IAAC,CAAC;IACF,oBACE9C,KAAA,CAAAmD,aAAA,CAACzC,QAAQ,EAAA0C,QAAA;MACPC,kBAAkB,EAAE,IAAI,CAAChC,KAAK,CAACJ,KAAK,CAACqC;IAAmB,GACpD,IAAI,CAACC,qBAAqB,CAAC,QAAQ,GAACf,KAAK,CAAC;MAC9CO,kBAAkB,EAAEA,kBAAmB;MACvCX,KAAK,EAAE,IAAI,CAACf,KAAK,CAACJ,KAAK,CAACuC,QAAQ,GAAGtB,SAAS,GAAG,IAAI,CAACE,KAAK,CAACqB,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE9B,IAAI,CAAE;MACjF+B,MAAM,EAAE,CACN,IAAI,CAACA,MAAM,CAACC,MAAM,EAClB,IAAI,CAACD,MAAM,CAACjB,QAAQ,CAAC,EACrBK,UAAU,GAAG,IAAI,CAACY,MAAM,CAACE,cAAc,GAAG,IAAI,CAAE;MAChDhC,GAAG,EAAED,IAAI,CAACC;IAAI,IACf,IAAI,CAACP,KAAK,CAACJ,KAAK,CAAC4C,SAAS,gBACtB7D,KAAA,CAAAmD,aAAA,CAAC5C,MAAM;MACNuD,EAAE,EAAE,IAAI,CAACC,SAAS,CAAC,MAAM,GAAGvB,KAAK,CAAE;MACnCkB,MAAM,EAAEZ,UAAU,GAAG,IAAI,CAACY,MAAM,CAACM,mBAAmB,GAAG,IAAI,CAACN,MAAM,CAACO,WAAY;MAC/EJ,SAAS,EAAElC,IAAI,CAACuC,IAAK;MACrBC,OAAO,EAAExB,WAAY;MACrByB,UAAU,EAAE;IAAM,CAAS,CAAC,gBAC3BpE,KAAA,CAAAmD,aAAA,CAACjD,IAAI,QAEF,IAAI,CAACmE,aAAa,GAAGxD,cAAc,CAAC,IAAI,CAACyD,KAAK,EAAE,CAAC,CAAC,EAAsB;MACtE,GAAG,IAAI,CAACZ,MAAM,CAACa,IAAI;MACnB,GAAG,IAAI,CAACb,MAAM,CAACc,YAAY,CAACC;IAC9B,CAAC,CAAC,gBAAGzE,KAAA,CAAAmD,aAAA,CAAClD,IAAI,EAAAmD,QAAA,KACN,IAAI,CAACsB,oBAAoB,CAAC,OAAO,GAAGlC,KAAK,CAAC;MAC9CmC,KAAK,EAAE,CAAE7B,UAAU,GAAI,IAAI,CAACY,MAAM,CAACkB,kBAAkB,GAAG,IAAI,CAAClB,MAAM,CAACa,IAAI,EACtE;QAACM,KAAK,EAAE/B,UAAU,GAAG,IAAI,CAACY,MAAM,CAACE,cAAc,CAACiB,KAAK,GAAG,IAAI,CAACnB,MAAM,CAACC,MAAM,CAACkB;MAAM,CAAC;IAAE,IACrFlC,WACG,CAEF,CACJ,CAAC;EAEf;EAEAmC,WAAWA,CAAA,EAAG;IACZ,MAAMC,KAAK,GAAG,IAAI,CAAC1D,KAAK,CAACK,SAAS;IAClC,IAAG,IAAI,CAAC2C,aAAa,EAAE;MACrB,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAACW,GAAG,CAAC,CAACrD,IAAS,EAAEa,KAAU,KAAK,IAAI,CAACD,WAAW,CAACZ,IAAI,EAAEa,KAAK,CAAC,CAAC;IACnF;IACA,OAAOuC,KAAK,IAAIA,KAAK,CAACrC,MAAM,GAC1BqC,KAAK,CAACC,GAAG,CAAC,CAACrD,IAAS,EAAEa,KAAU,KAAK,IAAI,CAACD,WAAW,CAACZ,IAAI,EAAEa,KAAK,CAAC,CAAC,GAAE,IAAI;EAC7E;EAEAyC,YAAYA,CAAChE,KAAoB,EAAE;IACjC,oBAAQjB,KAAA,CAAAmD,aAAA,CAACjD,IAAI,EAAAkD,QAAA;MAACuB,KAAK,EAAE,IAAI,CAACjB,MAAM,CAACe,IAAK;MAACS,QAAQ,EAAG7C,KAAK,IAAK,IAAI,CAAC8C,YAAY,CAAC9C,KAAK;IAAE,GAAKzB,qBAAqB,CAACD,uBAAuB,CAACyE,MAAM,EAAEnE,KAAK,CAAC,GACnJ,IAAI,CAAC6D,WAAW,CAAC,CACd,CAAC;EACT;AACF","ignoreList":[]}
|
@@ -103,14 +103,18 @@ export default class WmToggle extends BaseComponent {
|
|
103
103
|
}
|
104
104
|
renderWidget(props) {
|
105
105
|
const styles = this.theme.mergeStyle(this.styles, this.theme.getStyle(this.state.isSwitchOn ? 'app-toggle-on' : 'app-toggle-off'));
|
106
|
+
const accessibilityProps = getAccessibilityProps(AccessibilityWidgetType.TOGGLE, {
|
107
|
+
accessible: props.accessible,
|
108
|
+
selected: this.state.isSwitchOn,
|
109
|
+
accessibilitylabel: props.accessibilitylabel,
|
110
|
+
hint: props.hint,
|
111
|
+
accessibilityrole: props.accessibilityrole
|
112
|
+
});
|
106
113
|
return /*#__PURE__*/React.createElement(TouchableOpacity, _extends({
|
107
114
|
onLayout: e => {
|
108
115
|
this.onLayoutChange(e);
|
109
116
|
}
|
110
|
-
},
|
111
|
-
...this.props,
|
112
|
-
selected: this.state.isSwitchOn
|
113
|
-
}), {
|
117
|
+
}, accessibilityProps, {
|
114
118
|
onPress: () => {
|
115
119
|
if (this.props.disabled || this.props.readonly) {
|
116
120
|
return;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","TouchableOpacity","Animated","Easing","View","BackgroundComponent","BaseComponent","BaseComponentState","unStringify","validateField","AccessibilityWidgetType","getAccessibilityProps","WmToggleProps","DEFAULT_CLASS","createSkeleton","WmToggleState","constructor","args","_defineProperty","WmToggle","props","Value","onPropertyChange","name","$new","$old","value","state","checkedvalue","updateState","isSwitchOn","updateDatavalue","datavalue","validate","validationObj","isValid","errorType","onToggleSwitch","oldValue","dataValue","uncheckedvalue","sequence","timing","scaleValue","toValue","duration","useNativeDriver","animationValue","easing","linear","start","onFieldChange","invokeEventCallback","proxy","setTimeout","onLayoutChange","event","width","nativeEvent","layout","handleLayout","setState","viewWidth","renderSkeleton","theme","styles","skeleton","root","renderWidget","mergeStyle","getStyle","createElement","_extends","onLayout","e","TOGGLE","selected","onPress","disabled","readonly","getTestPropsForAction","style","animation","handle","size","backgroundSize","position","backgroundPosition","image","backgroundImage","repeat","backgroundRepeat","transform","translateX","interpolate","inputRange","outputRange","isRTL","scale"],"sources":["toggle.component.tsx"],"sourcesContent":["import React from 'react';\nimport { TouchableOpacity, Animated, Easing, LayoutChangeEvent, View, DimensionValue } from 'react-native';\n\nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { unStringify, validateField} from '@wavemaker/app-rn-runtime/core/utils';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \n\nimport WmToggleProps from './toggle.props';\nimport { DEFAULT_CLASS, WmToggleStyles } from './toggle.styles';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\n\nexport class WmToggleState extends BaseComponentState<WmToggleProps> {\n isSwitchOn: boolean = false;\n isValid: boolean = true;\n errorType = '';\n viewWidth: number = 0;\n}\n\nexport default class WmToggle extends BaseComponent<WmToggleProps, WmToggleState, WmToggleStyles> {\n\n private animationValue = new Animated.Value(0);\n private scaleValue = new Animated.Value(1);\n\n constructor(props: WmToggleProps) {\n super(props, DEFAULT_CLASS, new WmToggleProps(), new WmToggleState());\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'datavalue':\n let value =\n unStringify($new) ===\n unStringify(this.state.props.checkedvalue, true);\n this.updateState({ isSwitchOn: value } as WmToggleState);\n break;\n }\n }\n\n updateDatavalue(value: any) {\n this.updateState({ props: { datavalue: value }} as WmToggleState);\n }\n\n validate(value: any) {\n const validationObj = validateField(this.state.props, value);\n this.updateState({\n isValid: validationObj.isValid,\n errorType: validationObj.errorType\n } as WmToggleState);\n }\n\n onToggleSwitch(value: any) {\n const oldValue = this.state.props.datavalue;\n this.validate(value);\n this.updateState({ isSwitchOn: value } as WmToggleState);\n const dataValue = value === true ? this.state.props.checkedvalue : this.state.props.uncheckedvalue;\n Animated.sequence([\n Animated.timing(this.scaleValue, {\n toValue: 1.6,\n duration: 300,\n useNativeDriver: true,\n }),\n Animated.timing(this.animationValue, {\n toValue: value ? 1 : 0,\n duration: 300,\n easing: Easing.linear,\n useNativeDriver: true,\n }),\n ]).start(() => {\n Animated.timing(this.scaleValue, {\n toValue: value ? 1.5 : 1,\n duration: 0,\n useNativeDriver: true,\n }).start();\n });\n // @ts-ignore\n this.updateState({ props: { datavalue: dataValue } },\n ()=> {\n if (!this.props.onFieldChange) {\n this.invokeEventCallback('onChange', [null, this.proxy, dataValue, oldValue]);\n } else {\n this.props.onFieldChange && this.props.onFieldChange('datavalue', dataValue, oldValue);\n }\n setTimeout(() => {\n this.invokeEventCallback('onBlur', [ null, this.proxy ]);\n }, 10);\n \n });\n }\n\n onLayoutChange(event: LayoutChangeEvent){\n let width = event.nativeEvent.layout.width;\n this.handleLayout(event)\n\n this.setState({\n viewWidth: width,\n } as WmToggleState);\n }\n\n public renderSkeleton(props: WmToggleProps): React.ReactNode {\n \n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.skeleton.root,\n });\n }\n\n renderWidget(props: WmToggleProps) {\n const styles = this.theme.mergeStyle(this.styles, \n this.theme.getStyle(this.state.isSwitchOn ? 'app-toggle-on' : 'app-toggle-off'));\n return (\n <TouchableOpacity \n onLayout={(e) => {\n this.onLayoutChange(e);\n }}\n {...getAccessibilityProps(AccessibilityWidgetType.TOGGLE, {...this.props, selected: this.state.isSwitchOn})}\n onPress={() => {\n if (this.props.disabled || this.props.readonly) {\n return;\n }\n // Added setTimeout to smooth animation\n setTimeout(() => {\n this.invokeEventCallback('onFocus', [null, this]);\n this.invokeEventCallback('onTap', [null, this]);\n }, 500);\n this.onToggleSwitch(!this.state.isSwitchOn);\n }}{...this.getTestPropsForAction()}\n style={styles.root}>\n {styles.root.animation && styles.root.animation === 'none' ? (\n <View style={styles.handle}>\n <BackgroundComponent\n size={styles.handle.backgroundSize || 'contain'}\n position={styles.handle.backgroundPosition}\n image={styles.handle.backgroundImage}\n repeat={styles.handle.backgroundRepeat || 'no-repeat'}\n />\n </View>\n ): ( <Animated.View\n style={[\n styles.handle,\n {\n transform: [\n {\n translateX: this.animationValue.interpolate({\n inputRange: [0, 1],\n // TODO Abdullah: add a test case for the below changes. Merging this to expo 52 release branch. \n outputRange: this.isRTL\n ? [0, -1 * (this.state.viewWidth - (this.styles.handle.width as number + 18))]\n : [0, this.state.viewWidth - (this.styles.handle.width as number + 18)],\n }),\n },\n { scale: this.scaleValue }\n ],\n },\n ]}>\n <BackgroundComponent\n size={styles.handle.backgroundSize || 'contain'}\n position={styles.handle.backgroundPosition}\n image={styles.handle.backgroundImage}\n repeat={styles.handle.backgroundRepeat || 'no-repeat'}\n />\n </Animated.View>)}\n </TouchableOpacity>\n );\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,gBAAgB,EAAEC,QAAQ,EAAEC,MAAM,EAAqBC,IAAI,QAAwB,cAAc;AAE1G,SAASC,mBAAmB,QAAQ,uDAAuD;AAC3F,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AACjG,SAASC,WAAW,EAAEC,aAAa,QAAO,sCAAsC;AAChF,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,8CAA8C;AAE7G,OAAOC,aAAa,MAAM,gBAAgB;AAC1C,SAASC,aAAa,QAAwB,iBAAiB;AAC/D,SAASC,cAAc,QAAQ,wEAAwE;AAEvG,OAAO,MAAMC,aAAa,SAASR,kBAAkB,CAAgB;EAAAS,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,qBAC7C,KAAK;IAAAA,eAAA,kBACR,IAAI;IAAAA,eAAA,oBACX,EAAE;IAAAA,eAAA,oBACM,CAAC;EAAA;AACvB;AAEA,eAAe,MAAMC,QAAQ,SAASb,aAAa,CAA+C;EAKhGU,WAAWA,CAACI,KAAoB,EAAE;IAChC,KAAK,CAACA,KAAK,EAAEP,aAAa,EAAE,IAAID,aAAa,CAAC,CAAC,EAAE,IAAIG,aAAa,CAAC,CAAC,CAAC;IAACG,eAAA,yBAJ/C,IAAIhB,QAAQ,CAACmB,KAAK,CAAC,CAAC,CAAC;IAAAH,eAAA,qBACzB,IAAIhB,QAAQ,CAACmB,KAAK,CAAC,CAAC,CAAC;EAI1C;EAEAC,gBAAgBA,CAACC,IAAY,EAAEC,IAAS,EAAEC,IAAS,EAAE;IACnD,QAAQF,IAAI;MACV,KAAK,WAAW;QACd,IAAIG,KAAK,GACPlB,WAAW,CAACgB,IAAI,CAAC,KACjBhB,WAAW,CAAC,IAAI,CAACmB,KAAK,CAACP,KAAK,CAACQ,YAAY,EAAE,IAAI,CAAC;QAClD,IAAI,CAACC,WAAW,CAAC;UAAEC,UAAU,EAAEJ;QAAM,CAAkB,CAAC;QACxD;IACJ;EACF;EAEAK,eAAeA,CAACL,KAAU,EAAE;IAC1B,IAAI,CAACG,WAAW,CAAC;MAAET,KAAK,EAAE;QAAEY,SAAS,EAAEN;MAAM;IAAC,CAAkB,CAAC;EACnE;EAEAO,QAAQA,CAACP,KAAU,EAAE;IACnB,MAAMQ,aAAa,GAAGzB,aAAa,CAAC,IAAI,CAACkB,KAAK,CAACP,KAAK,EAAEM,KAAK,CAAC;IAC5D,IAAI,CAACG,WAAW,CAAC;MACfM,OAAO,EAAED,aAAa,CAACC,OAAO;MAC9BC,SAAS,EAAEF,aAAa,CAACE;IAC3B,CAAkB,CAAC;EACrB;EAEAC,cAAcA,CAACX,KAAU,EAAE;IACzB,MAAMY,QAAQ,GAAG,IAAI,CAACX,KAAK,CAACP,KAAK,CAACY,SAAS;IAC3C,IAAI,CAACC,QAAQ,CAACP,KAAK,CAAC;IACpB,IAAI,CAACG,WAAW,CAAC;MAAEC,UAAU,EAAEJ;IAAM,CAAkB,CAAC;IACxD,MAAMa,SAAS,GAAGb,KAAK,KAAK,IAAI,GAAG,IAAI,CAACC,KAAK,CAACP,KAAK,CAACQ,YAAY,GAAG,IAAI,CAACD,KAAK,CAACP,KAAK,CAACoB,cAAc;IAClGtC,QAAQ,CAACuC,QAAQ,CAAC,CAChBvC,QAAQ,CAACwC,MAAM,CAAC,IAAI,CAACC,UAAU,EAAE;MAC/BC,OAAO,EAAE,GAAG;MACZC,QAAQ,EAAE,GAAG;MACbC,eAAe,EAAE;IACnB,CAAC,CAAC,EACF5C,QAAQ,CAACwC,MAAM,CAAC,IAAI,CAACK,cAAc,EAAE;MACnCH,OAAO,EAAElB,KAAK,GAAG,CAAC,GAAG,CAAC;MACtBmB,QAAQ,EAAE,GAAG;MACbG,MAAM,EAAE7C,MAAM,CAAC8C,MAAM;MACrBH,eAAe,EAAE;IACnB,CAAC,CAAC,CACH,CAAC,CAACI,KAAK,CAAC,MAAM;MACbhD,QAAQ,CAACwC,MAAM,CAAC,IAAI,CAACC,UAAU,EAAE;QAC/BC,OAAO,EAAElB,KAAK,GAAG,GAAG,GAAG,CAAC;QACxBmB,QAAQ,EAAE,CAAC;QACXC,eAAe,EAAE;MACnB,CAAC,CAAC,CAACI,KAAK,CAAC,CAAC;IACZ,CAAC,CAAC;IACF;IACA,IAAI,CAACrB,WAAW,CAAC;MAAET,KAAK,EAAE;QAAEY,SAAS,EAAEO;MAAU;IAAE,CAAC,EAClD,MAAK;MACH,IAAI,CAAC,IAAI,CAACnB,KAAK,CAAC+B,aAAa,EAAE;QAC7B,IAAI,CAACC,mBAAmB,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,CAACC,KAAK,EAAEd,SAAS,EAAED,QAAQ,CAAC,CAAC;MAC/E,CAAC,MAAM;QACL,IAAI,CAAClB,KAAK,CAAC+B,aAAa,IAAI,IAAI,CAAC/B,KAAK,CAAC+B,aAAa,CAAC,WAAW,EAAEZ,SAAS,EAAED,QAAQ,CAAC;MACxF;MACAgB,UAAU,CAAC,MAAM;QACf,IAAI,CAACF,mBAAmB,CAAC,QAAQ,EAAE,CAAE,IAAI,EAAE,IAAI,CAACC,KAAK,CAAE,CAAC;MAC1D,CAAC,EAAE,EAAE,CAAC;IAER,CAAC,CAAC;EACN;EAEAE,cAAcA,CAACC,KAAwB,EAAC;IACtC,IAAIC,KAAK,GAAGD,KAAK,CAACE,WAAW,CAACC,MAAM,CAACF,KAAK;IAC1C,IAAI,CAACG,YAAY,CAACJ,KAAK,CAAC;IAExB,IAAI,CAACK,QAAQ,CAAC;MACZC,SAAS,EAAEL;IACb,CAAkB,CAAC;EACrB;EAEOM,cAAcA,CAAC3C,KAAoB,EAAmB;IAEzD,OAAON,cAAc,CAAC,IAAI,CAACkD,KAAK,EAAE,IAAI,CAACC,MAAM,CAACC,QAAQ,EAAE;MACtD,GAAG,IAAI,CAACD,MAAM,CAACC,QAAQ,CAACC;IAC1B,CAAC,CAAC;EACN;EAEAC,YAAYA,CAAChD,KAAoB,EAAE;IACjC,MAAM6C,MAAM,GAAG,IAAI,CAACD,KAAK,CAACK,UAAU,CAAC,IAAI,CAACJ,MAAM,EAC9C,IAAI,CAACD,KAAK,CAACM,QAAQ,CAAC,IAAI,CAAC3C,KAAK,CAACG,UAAU,GAAG,eAAe,GAAG,gBAAgB,CAAC,CAAC;IAClF,oBACE9B,KAAA,CAAAuE,aAAA,CAACtE,gBAAgB,EAAAuE,QAAA;MACjBC,QAAQ,EAAGC,CAAC,IAAK;QACf,IAAI,CAACnB,cAAc,CAACmB,CAAC,CAAC;MACxB;IAAE,GACE/D,qBAAqB,CAACD,uBAAuB,CAACiE,MAAM,EAAE;MAAC,GAAG,IAAI,CAACvD,KAAK;MAAEwD,QAAQ,EAAE,IAAI,CAACjD,KAAK,CAACG;IAAU,CAAC,CAAC;MAC3G+C,OAAO,EAAEA,CAAA,KAAM;QACb,IAAI,IAAI,CAACzD,KAAK,CAAC0D,QAAQ,IAAI,IAAI,CAAC1D,KAAK,CAAC2D,QAAQ,EAAE;UAC9C;QACF;QACA;QACAzB,UAAU,CAAC,MAAM;UACf,IAAI,CAACF,mBAAmB,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;UACjD,IAAI,CAACA,mBAAmB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACjD,CAAC,EAAE,GAAG,CAAC;QACP,IAAI,CAACf,cAAc,CAAC,CAAC,IAAI,CAACV,KAAK,CAACG,UAAU,CAAC;MAC7C;IAAE,GAAI,IAAI,CAACkD,qBAAqB,CAAC,CAAC;MAClCC,KAAK,EAAEhB,MAAM,CAACE;IAAK,IACjBF,MAAM,CAACE,IAAI,CAACe,SAAS,IAAIjB,MAAM,CAACE,IAAI,CAACe,SAAS,KAAK,MAAM,gBACvDlF,KAAA,CAAAuE,aAAA,CAACnE,IAAI;MAAC6E,KAAK,EAAEhB,MAAM,CAACkB;IAAO,gBACzBnF,KAAA,CAAAuE,aAAA,CAAClE,mBAAmB;MAClB+E,IAAI,EAAEnB,MAAM,CAACkB,MAAM,CAACE,cAAc,IAAI,SAAU;MAChDC,QAAQ,EAAErB,MAAM,CAACkB,MAAM,CAACI,kBAAmB;MAC3CC,KAAK,EAAEvB,MAAM,CAACkB,MAAM,CAACM,eAAgB;MACrCC,MAAM,EAAEzB,MAAM,CAACkB,MAAM,CAACQ,gBAAgB,IAAI;IAAY,CACvD,CACG,CAAC,gBACF3F,KAAA,CAAAuE,aAAA,CAACrE,QAAQ,CAACE,IAAI;MACjB6E,KAAK,EAAE,CACLhB,MAAM,CAACkB,MAAM,EACb;QACES,SAAS,EAAE,CACT;UACEC,UAAU,EAAE,IAAI,CAAC9C,cAAc,CAAC+C,WAAW,CAAC;YAC1CC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAClB;YACAC,WAAW,EAAE,IAAI,CAACC,KAAK,GACnB,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAACtE,KAAK,CAACmC,SAAS,IAAI,IAAI,CAACG,MAAM,CAACkB,MAAM,CAAC1B,KAAK,GAAa,EAAE,CAAC,CAAC,CAAC,GAC5E,CAAC,CAAC,EAAE,IAAI,CAAC9B,KAAK,CAACmC,SAAS,IAAI,IAAI,CAACG,MAAM,CAACkB,MAAM,CAAC1B,KAAK,GAAa,EAAE,CAAC;UAC1E,CAAC;QACH,CAAC,EACD;UAAEyC,KAAK,EAAE,IAAI,CAACvD;QAAW,CAAC;MAE9B,CAAC;IACD,gBACF3C,KAAA,CAAAuE,aAAA,CAAClE,mBAAmB;MAClB+E,IAAI,EAAEnB,MAAM,CAACkB,MAAM,CAACE,cAAc,IAAI,SAAU;MAChDC,QAAQ,EAAErB,MAAM,CAACkB,MAAM,CAACI,kBAAmB;MAC3CC,KAAK,EAAEvB,MAAM,CAACkB,MAAM,CAACM,eAAgB;MACrCC,MAAM,EAAEzB,MAAM,CAACkB,MAAM,CAACQ,gBAAgB,IAAI;IAAY,CACvD,CACY,CACD,CAAC;EAEvB;AACF","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","TouchableOpacity","Animated","Easing","View","BackgroundComponent","BaseComponent","BaseComponentState","unStringify","validateField","AccessibilityWidgetType","getAccessibilityProps","WmToggleProps","DEFAULT_CLASS","createSkeleton","WmToggleState","constructor","args","_defineProperty","WmToggle","props","Value","onPropertyChange","name","$new","$old","value","state","checkedvalue","updateState","isSwitchOn","updateDatavalue","datavalue","validate","validationObj","isValid","errorType","onToggleSwitch","oldValue","dataValue","uncheckedvalue","sequence","timing","scaleValue","toValue","duration","useNativeDriver","animationValue","easing","linear","start","onFieldChange","invokeEventCallback","proxy","setTimeout","onLayoutChange","event","width","nativeEvent","layout","handleLayout","setState","viewWidth","renderSkeleton","theme","styles","skeleton","root","renderWidget","mergeStyle","getStyle","accessibilityProps","TOGGLE","accessible","selected","accessibilitylabel","hint","accessibilityrole","createElement","_extends","onLayout","e","onPress","disabled","readonly","getTestPropsForAction","style","animation","handle","size","backgroundSize","position","backgroundPosition","image","backgroundImage","repeat","backgroundRepeat","transform","translateX","interpolate","inputRange","outputRange","isRTL","scale"],"sources":["toggle.component.tsx"],"sourcesContent":["import React from 'react';\nimport { TouchableOpacity, Animated, Easing, LayoutChangeEvent, View, DimensionValue } from 'react-native';\n\nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { unStringify, validateField} from '@wavemaker/app-rn-runtime/core/utils';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \n\nimport WmToggleProps from './toggle.props';\nimport { DEFAULT_CLASS, WmToggleStyles } from './toggle.styles';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\n\nexport class WmToggleState extends BaseComponentState<WmToggleProps> {\n isSwitchOn: boolean = false;\n isValid: boolean = true;\n errorType = '';\n viewWidth: number = 0;\n}\n\nexport default class WmToggle extends BaseComponent<WmToggleProps, WmToggleState, WmToggleStyles> {\n\n private animationValue = new Animated.Value(0);\n private scaleValue = new Animated.Value(1);\n\n constructor(props: WmToggleProps) {\n super(props, DEFAULT_CLASS, new WmToggleProps(), new WmToggleState());\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'datavalue':\n let value =\n unStringify($new) ===\n unStringify(this.state.props.checkedvalue, true);\n this.updateState({ isSwitchOn: value } as WmToggleState);\n break;\n }\n }\n\n updateDatavalue(value: any) {\n this.updateState({ props: { datavalue: value }} as WmToggleState);\n }\n\n validate(value: any) {\n const validationObj = validateField(this.state.props, value);\n this.updateState({\n isValid: validationObj.isValid,\n errorType: validationObj.errorType\n } as WmToggleState);\n }\n\n onToggleSwitch(value: any) {\n const oldValue = this.state.props.datavalue;\n this.validate(value);\n this.updateState({ isSwitchOn: value } as WmToggleState);\n const dataValue = value === true ? this.state.props.checkedvalue : this.state.props.uncheckedvalue;\n Animated.sequence([\n Animated.timing(this.scaleValue, {\n toValue: 1.6,\n duration: 300,\n useNativeDriver: true,\n }),\n Animated.timing(this.animationValue, {\n toValue: value ? 1 : 0,\n duration: 300,\n easing: Easing.linear,\n useNativeDriver: true,\n }),\n ]).start(() => {\n Animated.timing(this.scaleValue, {\n toValue: value ? 1.5 : 1,\n duration: 0,\n useNativeDriver: true,\n }).start();\n });\n // @ts-ignore\n this.updateState({ props: { datavalue: dataValue } },\n ()=> {\n if (!this.props.onFieldChange) {\n this.invokeEventCallback('onChange', [null, this.proxy, dataValue, oldValue]);\n } else {\n this.props.onFieldChange && this.props.onFieldChange('datavalue', dataValue, oldValue);\n }\n setTimeout(() => {\n this.invokeEventCallback('onBlur', [ null, this.proxy ]);\n }, 10);\n \n });\n }\n\n onLayoutChange(event: LayoutChangeEvent){\n let width = event.nativeEvent.layout.width;\n this.handleLayout(event)\n\n this.setState({\n viewWidth: width,\n } as WmToggleState);\n }\n\n public renderSkeleton(props: WmToggleProps): React.ReactNode {\n \n return createSkeleton(this.theme, this.styles.skeleton, {\n ...this.styles.skeleton.root,\n });\n }\n\n renderWidget(props: WmToggleProps) {\n const styles = this.theme.mergeStyle(this.styles, \n this.theme.getStyle(this.state.isSwitchOn ? 'app-toggle-on' : 'app-toggle-off'));\n const accessibilityProps = getAccessibilityProps(AccessibilityWidgetType.TOGGLE, {\n accessible: props.accessible,\n selected: this.state.isSwitchOn,\n accessibilitylabel: props.accessibilitylabel,\n hint: props.hint,\n accessibilityrole: props.accessibilityrole,\n });\n return (\n <TouchableOpacity \n onLayout={(e) => {\n this.onLayoutChange(e);\n }}\n {...accessibilityProps}\n onPress={() => {\n if (this.props.disabled || this.props.readonly) {\n return;\n }\n // Added setTimeout to smooth animation\n setTimeout(() => {\n this.invokeEventCallback('onFocus', [null, this]);\n this.invokeEventCallback('onTap', [null, this]);\n }, 500);\n this.onToggleSwitch(!this.state.isSwitchOn);\n }}{...this.getTestPropsForAction()}\n style={styles.root}>\n {styles.root.animation && styles.root.animation === 'none' ? (\n <View style={styles.handle}>\n <BackgroundComponent\n size={styles.handle.backgroundSize || 'contain'}\n position={styles.handle.backgroundPosition}\n image={styles.handle.backgroundImage}\n repeat={styles.handle.backgroundRepeat || 'no-repeat'}\n />\n </View>\n ): ( <Animated.View\n style={[\n styles.handle,\n {\n transform: [\n {\n translateX: this.animationValue.interpolate({\n inputRange: [0, 1],\n // TODO Abdullah: add a test case for the below changes. Merging this to expo 52 release branch. \n outputRange: this.isRTL\n ? [0, -1 * (this.state.viewWidth - (this.styles.handle.width as number + 18))]\n : [0, this.state.viewWidth - (this.styles.handle.width as number + 18)],\n }),\n },\n { scale: this.scaleValue }\n ],\n },\n ]}>\n <BackgroundComponent\n size={styles.handle.backgroundSize || 'contain'}\n position={styles.handle.backgroundPosition}\n image={styles.handle.backgroundImage}\n repeat={styles.handle.backgroundRepeat || 'no-repeat'}\n />\n </Animated.View>)}\n </TouchableOpacity>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|