@wavemaker/app-rn-runtime 11.10.0-next.47253 → 11.10.0-next.NULL
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.
- app-rn-runtime/components/advanced/carousel/carousel.component.js +46 -60
- app-rn-runtime/components/advanced/carousel/carousel.component.js.map +1 -1
- app-rn-runtime/components/advanced/carousel/carousel.props.js +1 -1
- app-rn-runtime/components/advanced/carousel/carousel.props.js.map +1 -1
- app-rn-runtime/components/advanced/carousel/carousel.styles.js +9 -7
- app-rn-runtime/components/advanced/carousel/carousel.styles.js.map +1 -1
- app-rn-runtime/components/basic/picture/picture.component.js +4 -10
- app-rn-runtime/components/basic/picture/picture.component.js.map +1 -1
- app-rn-runtime/components/basic/picture/picture.props.js +0 -1
- app-rn-runtime/components/basic/picture/picture.props.js.map +1 -1
- app-rn-runtime/components/basic/search/search.component.js +2 -2
- app-rn-runtime/components/basic/search/search.component.js.map +1 -1
- app-rn-runtime/components/container/tabs/tabheader/tabheader.component.js +15 -29
- app-rn-runtime/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
- app-rn-runtime/components/container/tabs/tabheader/tabheader.props.js +0 -1
- app-rn-runtime/components/container/tabs/tabheader/tabheader.props.js.map +1 -1
- app-rn-runtime/components/container/tabs/tabs.component.js +1 -2
- app-rn-runtime/components/container/tabs/tabs.component.js.map +1 -1
- app-rn-runtime/components/container/tabs/tabs.props.js +0 -1
- app-rn-runtime/components/container/tabs/tabs.props.js.map +1 -1
- app-rn-runtime/components/container/wizard/wizard.component.js +2 -2
- app-rn-runtime/components/container/wizard/wizard.component.js.map +1 -1
- app-rn-runtime/components/container/wizard/wizard.styles.js +0 -3
- app-rn-runtime/components/container/wizard/wizard.styles.js.map +1 -1
- app-rn-runtime/components/data/list/list.component.js +1 -11
- app-rn-runtime/components/data/list/list.component.js.map +1 -1
- app-rn-runtime/components/input/basenumber/basenumber.component.js +4 -10
- app-rn-runtime/components/input/basenumber/basenumber.component.js.map +1 -1
- app-rn-runtime/components/input/chips/chips.component.js +3 -31
- app-rn-runtime/components/input/chips/chips.component.js.map +1 -1
- app-rn-runtime/components/input/slider/slider.component.js +2 -2
- app-rn-runtime/components/input/slider/slider.component.js.map +1 -1
- app-rn-runtime/package.json +3 -3
- app-rn-runtime/runtime/App.js +2 -10
- app-rn-runtime/runtime/App.js.map +1 -1
- app-rn-runtime/runtime/base-fragment.component.js +1 -5
- app-rn-runtime/runtime/base-fragment.component.js.map +1 -1
- app-rn-runtime/runtime/services/app-i18n.service.js +0 -1
- app-rn-runtime/runtime/services/app-i18n.service.js.map +1 -1
- app-rn-runtime/styles/theme.variables.js +1 -1
- app-rn-runtime/styles/theme.variables.js.map +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Keyboard","Platform","Text","TextInput","View","ScrollView","find","isNull","WmSearchProps","DEFAULT_CLASS","ModalConsumer","DataProvider","AccessibilityWidgetType","getAccessibilityProps","BaseDatasetComponent","BaseDatasetState","WmAnchor","WmPicture","Tappable","WmButton","get","isArray","isEmpty","isObject","AssetProvider","createSkeleton","WmSearchState","constructor","args","_defineProperty","top","left","WmSearch","props","Promise","resolve","position","view","measure","x","y","width","height","px","py","updateState","computePosition","then","isOpened","dataProvider","datavalue","query","clearSearch","invokeEventCallback","hide","dataItems","state","map","item","selected","type","updateFilteredData","queryText","_filteredData","filterOptions","entries","filteredData","minchars","length","_this$dataProvider","searchkey","updateRequired","undefined","init","invokeVariable","response","dataSet","setDataItems","filter","result","dataObject","data","isFocused","showPopover","focus","_this$widgetRef","widgetRef","onChange","value","isDefaultQuery","prevQuery","searchon","validate","setTimeout","invokeEvent","proxy","invokeChange","e","OS","cursor","target","selectionStart","onFocus","disabled","readonly","_this$state$props$que","onBlur","triggerValidation","prepareModalOptions","content","styles","modalService","o","modalOptions","modalContentSTyles","searchInputWidth","modalContent","borderWidth","modalStyle","modal","contentStyle","isModal","onClose","dismiss","setState","hideModal","searchIconPress","onItemSelect","displayexp","displayfield","datafield","updateDatavalue","prevDatavalue","queryModel","renderSkeleton","rootStyle","searchInputWrapper","root","text","theme","skeleton","renderSearchBar","_this$state$dataItems","opts","valueExpr","createElement","style","ref","onLayout","_extends","isValid","invalid","focusedText","selectionEnd","getTestPropsForInput","SEARCH","placeholderTextColor","placeholderText","color","placeholder","autoFocus","autofocus","editable","onChangeText","bind","nativeEvent","layout","showclear","onTap","id","getTestId","clearButton","iconclass","showSearchIcon","searchButton","reset","renderSearchItem","index","imageStyles","imagewidth","getTestProps","searchItem","template","renderitempartial","Fragment","name","picturesource","imgSrc","getTestPropsForLabel","searchItemText","updateDefaultQueryModel","selectedItem","onDataItemsUpdate","componentDidMount","onPropertyChange","$new","$old","dataset","setTemplate","partialName","renderWidget","showModal","maxHeight","contentContainerStyle","dropDownContent","loadAsset","key","limit","caption","datacompletemsg","dataCompleteItem"],"sources":["search.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, Keyboard, Platform, Text, TextInput, View } from 'react-native';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport { find, isNull } from 'lodash';\n\nimport WmSearchProps from './search.props';\nimport { DEFAULT_CLASS, WmSearchStyles } from './search.styles';\nimport { ModalConsumer, ModalOptions, ModalService} from \"@wavemaker/app-rn-runtime/core/modal.service\";\nimport { DataProvider } from '@wavemaker/app-rn-runtime/components/basic/search/local-data-provider';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \n\nimport {\n BaseDatasetComponent,\n BaseDatasetState\n} from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';\nimport WmAnchor from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.component';\nimport WmPicture from '@wavemaker/app-rn-runtime/components/basic/picture/picture.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\nimport { get, isArray, isEmpty, isObject } from \"lodash-es\";\nimport { AssetProvider } from '@wavemaker/app-rn-runtime/core/asset.provider';\nimport { createSkeleton } from '../skeleton/skeleton.component';\n\nexport class WmSearchState extends BaseDatasetState<WmSearchProps> {\n isOpened: boolean = false;\n modalOptions = {} as ModalOptions;\n template: string = \"\";\n position = {\n top: 0,\n left: 0\n } as DropdownPosition;\n data: any = [];\n}\n\nexport interface DropdownPosition {\n top?: number;\n bottom?: number;\n left?: number;\n right?: number;\n}\n\nexport default class WmSearch extends BaseDatasetComponent<WmSearchProps, WmSearchState, WmSearchStyles> {\n view: View = null as any;\n private prevDatavalue: any;\n private queryModel: any;\n private searchInputWidth: any;\n private isDefaultQuery: boolean = true;\n private dataProvider: DataProvider;\n public widgetRef: TextInput | null = null;\n private cursor: any = 0;\n private isFocused: boolean = false;\n private updateRequired: any;\n\n constructor(props: WmSearchProps) {\n super(props, DEFAULT_CLASS, new WmSearchProps(), new WmSearchState());\n this.dataProvider = new DataProvider();\n if (this.props.datavalue) {\n this.updateState({\n props: {\n query: this.props.datavalue\n }\n } as WmSearchState);\n }\n }\n\n computePosition = () => {\n return new Promise<void>((resolve) => {\n const position = {} as DropdownPosition;\n this.view.measure((x = 0, y = 0, width = 0, height = 0, px = 0, py = 0) => {\n position.left = px;\n position.top = py + height;\n this.updateState({ position: position } as WmSearchState, resolve);\n });\n });\n }\n\n clearSearch() {\n this.invokeEventCallback('onClear', [null, this]);\n this.hide();\n this.updateState({\n props: {\n query: ''\n },\n dataItems: this.state.dataItems ? this.state.dataItems.map((item: any) => {\n item.selected = false;\n return item;\n }) : []\n } as WmSearchState, () => {\n if (this.state.props.type === 'autocomplete') {\n this.updateFilteredData('');\n }\n });\n }\n\n updateFilteredData(queryText: string = '') {\n const props = this.state.props;\n const filterOptions = {\n query: queryText,\n props: props,\n entries: this.state.dataItems\n };\n let filteredData: Array<any> = [];\n if (props.minchars && queryText.length < props.minchars) {\n filteredData = [];\n } else if (props.type === 'search' && !queryText) {\n filteredData = [];\n } else {\n if (this.props.searchkey && this.updateRequired === undefined) {\n this.updateRequired = this.dataProvider.init(this);\n }\n // for service variables invoke the variable with params.\n if (this.props.searchkey && this.updateRequired && this.state.props.query !== queryText) {\n this.dataProvider.invokeVariable(this, queryText).then((response: any) => {\n if (response) {\n response = response.dataSet;\n if (isEmpty(response)) {\n filteredData = [];\n } else {\n if (isObject(response) && !isArray(response)) {\n response = [response];\n }\n this.setDataItems(response);\n }\n }\n }, () => {});\n return;\n }\n filteredData = this.dataProvider?.filter(filterOptions);\n }\n this.updateState({\n props: { result: filteredData?.map( (item: any) => item.dataObject), query: queryText },\n data: filteredData,\n } as WmSearchState);\n if (!this.state.isOpened && this.isFocused) {\n this.showPopover && this.showPopover();\n }\n }\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n onChange(value: any) {\n this.isDefaultQuery = false;\n const prevQuery = this.state.props.query;\n if (this.state.props.searchon === 'onsearchiconclick') {\n this.updateState({\n props: {result: [], query: value},\n data: []\n } as WmSearchState);\n } else {\n this.updateFilteredData(value);\n }\n if (value === '') {\n this.validate(value);\n this.updateState({\n props: {\n datavalue: '',\n },\n } as WmSearchState);\n if (value === prevQuery) {\n return;\n }\n }\n setTimeout(() => {\n if (this.props.invokeEvent) {\n this.props.invokeEvent('onChange', [undefined, this.proxy, value, prevQuery]);\n }\n this.invokeEventCallback('onChange', [ undefined, this.proxy, value, prevQuery ]);\n }, 300);\n }\n\n invokeChange(e: any) {\n if (Platform.OS === 'web') {\n this.cursor = e.target.selectionStart;\n this.updateState({ props: { query: e.target.value } } as WmSearchState);\n }\n }\n\n onFocus() {\n this.isFocused = true;\n if (\n !(this.state.props.disabled || this.state.props.readonly) &&\n this.state.props.type === 'autocomplete'\n ) {\n this.cursor = this.state.props.query?.length || 0;\n this.updateFilteredData(this.state.props.query || '');\n }\n this.invokeEventCallback('onFocus', [null, this]);\n }\n\n onBlur() {\n this.isFocused = false;\n this.validate(this.state.props.datavalue);\n if (!this.state.props.datavalue) {\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n })\n }\n this.invokeEventCallback('onBlur', [null, this]);\n }\n\n public showPopover = () => {\n this.computePosition().then(() => {\n this.updateState({ isOpened: true } as WmSearchState);\n });\n };\n\n public hide = () => {};\n\n prepareModalOptions(content: React.ReactNode, styles: WmSearchStyles, modalService: ModalService) {\n const o = this.state.modalOptions;\n const modalContentSTyles = {\n width: this.searchInputWidth - 2 * (styles.modalContent.borderWidth || 0),\n left: (this.state.position.left || 0) + 2 * (styles.modalContent.borderWidth || 0) };\n o.modalStyle = {...styles.modal};\n o.contentStyle = {...styles.modalContent, ...this.state.position, ...modalContentSTyles};\n o.content = content;\n o.isModal = true;\n o.onClose = () => {\n this.hide = () => {};\n Keyboard.dismiss();\n if (this.state.isOpened) {\n this.setState({isOpened: false, modalOptions: {} as ModalOptions} as WmSearchState);\n }\n };\n this.hide = () => {\n modalService.hideModal(this.state.modalOptions);\n if (this.state.isOpened) {\n this.setState({ isOpened: false, modalOptions: {} as ModalOptions } as WmSearchState);\n }\n }\n return o;\n }\n\n searchIconPress() {\n this.isFocused = false;\n if (this.state.props.searchon === 'onsearchiconclick') {\n this.updateFilteredData(this.state.props.query);\n } else {\n this.onItemSelect(this.state.data[0]);\n }\n }\n\n onItemSelect(item: any) {\n this.isFocused = false;\n this.updateState({ props: {\n query: item.displayexp || item.displayfield\n }\n } as WmSearchState);\n this.validate(item.datafield);\n this.updateDatavalue(item.datafield);\n this.prevDatavalue = item.datafield;\n this.queryModel = item;\n if (get(this.props, 'formfield')) {\n // @ts-ignore\n this.props.invokeEvent('onSelect', [null, this, item.datafield]);\n // @ts-ignore\n this.props.invokeEvent('onSubmit', [null, this]);\n } else {\n this.invokeEventCallback('onSelect', [null, this, item.datafield]);\n this.invokeEventCallback('onSubmit', [null, this]);\n }\n this.hide();\n }\n\n public renderSkeleton(props: WmSearchProps): React.ReactNode {\n \n const rootStyle = {\n ...this.styles.searchInputWrapper, \n ...this.styles.root, \n ...this.styles.text\n }\n\n return createSkeleton(this.theme, this.styles.skeleton, rootStyle)\n }\n\n renderSearchBar() {\n const props = this.state.props;\n let opts: any = {};\n const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';\n opts[valueExpr] = this.state.props.query || '';\n return(\n /*\n * onLayout function is required.\n * https://github.com/naoufal/react-native-accordion/pull/19/files\n */\n <View style={this.styles.root} ref={ref => {this.view = ref as View}} onLayout={() => {}}>\n <View style={this.styles.searchInputWrapper}>\n <TextInput style={[this.styles.text, this.state.isValid ? {} : this.styles.invalid, this.state.isOpened && this.state.dataItems?.length > 0? this.styles.focusedText : null]}\n ref={ref => {this.widgetRef = ref;\n // @ts-ignore\n if (ref && !isNull(ref.selectionStart) && !isNull(ref.selectionEnd)) {\n // @ts-ignore\n ref.selectionStart = ref.selectionEnd = this.cursor;\n }}}\n {...this.getTestPropsForInput()}\n {...getAccessibilityProps(AccessibilityWidgetType.SEARCH, props)}\n placeholderTextColor={this.styles.placeholderText.color as any}\n placeholder={props.placeholder || 'Search'}\n autoFocus={props.autofocus}\n editable={props.disabled || props.readonly ? false : true}\n onChangeText={this.onChange.bind(this)}\n onChange={this.invokeChange.bind(this)}\n onFocus={this.onFocus.bind(this)}\n onLayout={e => {this.searchInputWidth = e.nativeEvent.layout.width}}\n onBlur={this.onBlur.bind(this)}\n {...opts}>\n </TextInput>\n {(props.showclear && !(this.state.props.disabled || this.state.props.readonly)) && this.state.props.query ? <WmButton onTap={this.clearSearch.bind(this)}\n id={this.getTestId('clear')}\n styles={this.styles.clearButton} iconclass={'wi wi-clear'}></WmButton> : null}\n </View>\n {props.showSearchIcon && props.type === 'search' ? <WmButton styles={this.styles.searchButton}\n id={this.getTestId('search')}\n iconclass={props.iconclass} onTap={this.searchIconPress.bind(this)}></WmButton> : null}\n </View>\n );\n }\n\n reset() {\n if (this.state.props.query) {\n this.updateState({\n props: {\n query: ''\n }\n } as WmSearchState);\n }\n }\n\n renderSearchItem(item: any, index: number) {\n const props = this.state.props;\n const imageStyles = { root: {height:props.imagewidth, width:props.imagewidth}}\n return (\n <Tappable onTap={this.onItemSelect.bind(this, item)} {...this.getTestProps(`action${index}`)}>\n <View style={this.styles.searchItem}>\n {!isEmpty(this.state.template) && this.props.renderitempartial ?\n this.props.renderitempartial(item.dataObject, index, this.state.template) : (<>\n <WmPicture id={this.getTestId(`picture${index}`)} styles={imageStyles} name={props.name + '_image'} picturesource={item.imgSrc}></WmPicture>\n <Text {...this.getTestPropsForLabel(index + '')} style={this.styles.searchItemText}>{item.displayexp || item.displayfield}</Text>\n </>)}\n </View>\n </Tappable>\n );\n }\n\n updateDefaultQueryModel() {\n if (this.state.dataItems && this.state.dataItems.length && this.isDefaultQuery) {\n const selectedItem = find(this.state.dataItems, (item) => item.selected);\n this.updateState({ props: {\n query: selectedItem ? (selectedItem.displayexp || selectedItem.displayfield) : ''\n }\n } as WmSearchState);\n }\n }\n\n onDataItemsUpdate() {\n super.onDataItemsUpdate();\n this.isFocused && this.state.dataItems.length && this.updateFilteredData(this.state.props.query);\n this.updateDefaultQueryModel();\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n this.updateDefaultQueryModel();\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'dataset':\n if (!isEmpty($new) && isObject($new) && !isArray($new)) {\n $new = [$new];\n this.updateState({\n props: {\n dataset: $new\n }\n } as WmSearchState);\n }\n break;\n }\n super.onPropertyChange(name, $new, $old);\n }\n\n setTemplate(partialName: any) {\n this.updateState({ template: partialName} as WmSearchState);\n }\n\n renderWidget(props: WmSearchProps) {\n const result = this.state.data;\n return (\n <View>\n {this.renderSearchBar()}\n {this.state.isOpened ? (\n <ModalConsumer>\n {(modalService: ModalService) => {\n modalService.showModal(this.prepareModalOptions((\n <ScrollView style={{width: '100%', maxHeight: 200}} contentContainerStyle={this.styles.dropDownContent}>\n <AssetProvider value={this.loadAsset}>\n {result && result.map((item: any, index: any) => (\n <View key={item.key}>\n {\n (!props.limit) || (props.limit && index+1 <= props.limit) ?\n this.renderSearchItem(item, index)\n : null\n }\n {\n index === result.length - 1 ?\n <WmAnchor caption={props.datacompletemsg} styles={this.styles.dataCompleteItem}></WmAnchor> : null\n }\n </View>\n ))}\n </AssetProvider>\n </ScrollView>\n ), this.styles, modalService));\n return null;\n }}\n </ModalConsumer>) : null}\n </View>\n\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","Keyboard","Platform","Text","TextInput","View","ScrollView","find","isNull","WmSearchProps","DEFAULT_CLASS","ModalConsumer","DataProvider","AccessibilityWidgetType","getAccessibilityProps","BaseDatasetComponent","BaseDatasetState","WmAnchor","WmPicture","Tappable","WmButton","get","isArray","isEmpty","isObject","AssetProvider","createSkeleton","WmSearchState","constructor","args","_defineProperty","top","left","WmSearch","props","Promise","resolve","position","view","measure","x","y","width","height","px","py","updateState","computePosition","then","isOpened","dataProvider","datavalue","query","clearSearch","invokeEventCallback","hide","dataItems","state","map","item","selected","type","updateFilteredData","queryText","_filteredData","filterOptions","entries","filteredData","minchars","length","_this$dataProvider","searchkey","updateRequired","undefined","init","invokeVariable","response","dataSet","setDataItems","filter","result","dataObject","data","isFocused","showPopover","focus","_this$widgetRef","widgetRef","onChange","value","isDefaultQuery","prevQuery","searchon","validate","setTimeout","invokeEvent","proxy","invokeChange","e","OS","cursor","target","selectionStart","onFocus","disabled","_this$state$props$que","onBlur","triggerValidation","prepareModalOptions","content","styles","modalService","o","modalOptions","modalContentSTyles","searchInputWidth","modalContent","borderWidth","modalStyle","modal","contentStyle","isModal","onClose","dismiss","setState","hideModal","searchIconPress","onItemSelect","displayexp","displayfield","datafield","updateDatavalue","prevDatavalue","queryModel","renderSkeleton","rootStyle","searchInputWrapper","root","text","theme","skeleton","renderSearchBar","_this$state$dataItems","opts","valueExpr","createElement","style","ref","onLayout","_extends","isValid","invalid","focusedText","selectionEnd","getTestPropsForInput","SEARCH","placeholderTextColor","placeholderText","color","placeholder","autoFocus","autofocus","editable","readonly","onChangeText","bind","nativeEvent","layout","showclear","onTap","id","getTestId","clearButton","iconclass","showSearchIcon","searchButton","reset","renderSearchItem","index","imageStyles","imagewidth","getTestProps","searchItem","template","renderitempartial","Fragment","name","picturesource","imgSrc","getTestPropsForLabel","searchItemText","updateDefaultQueryModel","selectedItem","onDataItemsUpdate","componentDidMount","onPropertyChange","$new","$old","dataset","setTemplate","partialName","renderWidget","showModal","maxHeight","contentContainerStyle","dropDownContent","loadAsset","key","limit","caption","datacompletemsg","dataCompleteItem"],"sources":["search.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, Keyboard, Platform, Text, TextInput, View } from 'react-native';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport { find, isNull } from 'lodash';\n\nimport WmSearchProps from './search.props';\nimport { DEFAULT_CLASS, WmSearchStyles } from './search.styles';\nimport { ModalConsumer, ModalOptions, ModalService} from \"@wavemaker/app-rn-runtime/core/modal.service\";\nimport { DataProvider } from '@wavemaker/app-rn-runtime/components/basic/search/local-data-provider';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \n\nimport {\n BaseDatasetComponent,\n BaseDatasetState\n} from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';\nimport WmAnchor from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.component';\nimport WmPicture from '@wavemaker/app-rn-runtime/components/basic/picture/picture.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\nimport { get, isArray, isEmpty, isObject } from \"lodash-es\";\nimport { AssetProvider } from '@wavemaker/app-rn-runtime/core/asset.provider';\nimport { createSkeleton } from '../skeleton/skeleton.component';\n\nexport class WmSearchState extends BaseDatasetState<WmSearchProps> {\n isOpened: boolean = false;\n modalOptions = {} as ModalOptions;\n template: string = \"\";\n position = {\n top: 0,\n left: 0\n } as DropdownPosition;\n data: any = [];\n}\n\nexport interface DropdownPosition {\n top?: number;\n bottom?: number;\n left?: number;\n right?: number;\n}\n\nexport default class WmSearch extends BaseDatasetComponent<WmSearchProps, WmSearchState, WmSearchStyles> {\n view: View = null as any;\n private prevDatavalue: any;\n private queryModel: any;\n private searchInputWidth: any;\n private isDefaultQuery: boolean = true;\n private dataProvider: DataProvider;\n public widgetRef: TextInput | null = null;\n private cursor: any = 0;\n private isFocused: boolean = false;\n private updateRequired: any;\n\n constructor(props: WmSearchProps) {\n super(props, DEFAULT_CLASS, new WmSearchProps(), new WmSearchState());\n this.dataProvider = new DataProvider();\n if (this.props.datavalue) {\n this.updateState({\n props: {\n query: this.props.datavalue\n }\n } as WmSearchState);\n }\n }\n\n computePosition = () => {\n return new Promise<void>((resolve) => {\n const position = {} as DropdownPosition;\n this.view.measure((x = 0, y = 0, width = 0, height = 0, px = 0, py = 0) => {\n position.left = px;\n position.top = py + height;\n this.updateState({ position: position } as WmSearchState, resolve);\n });\n });\n }\n\n clearSearch() {\n this.invokeEventCallback('onClear', [null, this]);\n this.hide();\n this.updateState({\n props: {\n query: ''\n },\n dataItems: this.state.dataItems ? this.state.dataItems.map((item: any) => {\n item.selected = false;\n return item;\n }) : []\n } as WmSearchState, () => {\n if (this.state.props.type === 'autocomplete') {\n this.updateFilteredData('');\n }\n });\n }\n\n updateFilteredData(queryText: string = '') {\n const props = this.state.props;\n const filterOptions = {\n query: queryText,\n props: props,\n entries: this.state.dataItems\n };\n let filteredData: Array<any> = [];\n if (props.minchars && queryText.length < props.minchars) {\n filteredData = [];\n } else if (props.type === 'search' && !queryText) {\n filteredData = [];\n } else {\n if (this.props.searchkey && this.updateRequired === undefined) {\n this.updateRequired = this.dataProvider.init(this);\n }\n // for service variables invoke the variable with params.\n if (this.props.searchkey && this.updateRequired && this.state.props.query !== queryText) {\n this.dataProvider.invokeVariable(this, queryText).then((response: any) => {\n if (response) {\n response = response.dataSet;\n if (isEmpty(response)) {\n filteredData = [];\n } else {\n if (isObject(response) && !isArray(response)) {\n response = [response];\n }\n this.setDataItems(response);\n }\n }\n }, () => {});\n return;\n }\n filteredData = this.dataProvider?.filter(filterOptions);\n }\n this.updateState({\n props: { result: filteredData?.map( (item: any) => item.dataObject), query: queryText },\n data: filteredData,\n } as WmSearchState);\n if (!this.state.isOpened && this.isFocused) {\n this.showPopover && this.showPopover();\n }\n }\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n onChange(value: any) {\n this.isDefaultQuery = false;\n const prevQuery = this.state.props.query;\n if (this.state.props.searchon === 'onsearchiconclick') {\n this.updateState({\n props: {result: [], query: value},\n data: []\n } as WmSearchState);\n } else {\n this.updateFilteredData(value);\n }\n if (value === '') {\n this.validate(value);\n this.updateState({\n props: {\n datavalue: '',\n },\n } as WmSearchState);\n if (value === prevQuery) {\n return;\n }\n }\n setTimeout(() => {\n if (this.props.invokeEvent) {\n this.props.invokeEvent('onChange', [undefined, this.proxy, value, prevQuery]);\n }\n this.invokeEventCallback('onChange', [ undefined, this.proxy, value, prevQuery ]);\n }, 300);\n }\n\n invokeChange(e: any) {\n if (Platform.OS === 'web') {\n this.cursor = e.target.selectionStart;\n this.updateState({ props: { query: e.target.value } } as WmSearchState);\n }\n }\n\n onFocus() {\n this.isFocused = true;\n if (!this.state.props.disabled && this.state.props.type === 'autocomplete') {\n this.cursor = this.state.props.query?.length || 0;\n this.updateFilteredData(this.state.props.query || '');\n }\n this.invokeEventCallback('onFocus', [null, this]);\n }\n\n onBlur() {\n this.isFocused = false;\n this.validate(this.state.props.datavalue);\n if (!this.state.props.datavalue) {\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n })\n }\n this.invokeEventCallback('onBlur', [null, this]);\n }\n\n public showPopover = () => {\n this.computePosition().then(() => {\n this.updateState({ isOpened: true } as WmSearchState);\n });\n };\n\n public hide = () => {};\n\n prepareModalOptions(content: React.ReactNode, styles: WmSearchStyles, modalService: ModalService) {\n const o = this.state.modalOptions;\n const modalContentSTyles = {\n width: this.searchInputWidth - 2 * (styles.modalContent.borderWidth || 0),\n left: (this.state.position.left || 0) + 2 * (styles.modalContent.borderWidth || 0) };\n o.modalStyle = {...styles.modal};\n o.contentStyle = {...styles.modalContent, ...this.state.position, ...modalContentSTyles};\n o.content = content;\n o.isModal = true;\n o.onClose = () => {\n this.hide = () => {};\n Keyboard.dismiss();\n if (this.state.isOpened) {\n this.setState({isOpened: false, modalOptions: {} as ModalOptions} as WmSearchState);\n }\n };\n this.hide = () => {\n modalService.hideModal(this.state.modalOptions);\n if (this.state.isOpened) {\n this.setState({ isOpened: false, modalOptions: {} as ModalOptions } as WmSearchState);\n }\n }\n return o;\n }\n\n searchIconPress() {\n this.isFocused = false;\n if (this.state.props.searchon === 'onsearchiconclick') {\n this.updateFilteredData(this.state.props.query);\n } else {\n this.onItemSelect(this.state.data[0]);\n }\n }\n\n onItemSelect(item: any) {\n this.isFocused = false;\n this.updateState({ props: {\n query: item.displayexp || item.displayfield\n }\n } as WmSearchState);\n this.validate(item.datafield);\n this.updateDatavalue(item.datafield);\n this.prevDatavalue = item.datafield;\n this.queryModel = item;\n if (get(this.props, 'formfield')) {\n // @ts-ignore\n this.props.invokeEvent('onSelect', [null, this, item.datafield]);\n // @ts-ignore\n this.props.invokeEvent('onSubmit', [null, this]);\n } else {\n this.invokeEventCallback('onSelect', [null, this, item.datafield]);\n this.invokeEventCallback('onSubmit', [null, this]);\n }\n this.hide();\n }\n\n public renderSkeleton(props: WmSearchProps): React.ReactNode {\n \n const rootStyle = {\n ...this.styles.searchInputWrapper, \n ...this.styles.root, \n ...this.styles.text\n }\n\n return createSkeleton(this.theme, this.styles.skeleton, rootStyle)\n }\n\n renderSearchBar() {\n const props = this.state.props;\n let opts: any = {};\n const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';\n opts[valueExpr] = this.state.props.query || '';\n return(\n /*\n * onLayout function is required.\n * https://github.com/naoufal/react-native-accordion/pull/19/files\n */\n <View style={this.styles.root} ref={ref => {this.view = ref as View}} onLayout={() => {}}>\n <View style={this.styles.searchInputWrapper}>\n <TextInput style={[this.styles.text, this.state.isValid ? {} : this.styles.invalid, this.state.isOpened && this.state.dataItems?.length > 0? this.styles.focusedText : null]}\n ref={ref => {this.widgetRef = ref;\n // @ts-ignore\n if (ref && !isNull(ref.selectionStart) && !isNull(ref.selectionEnd)) {\n // @ts-ignore\n ref.selectionStart = ref.selectionEnd = this.cursor;\n }}}\n {...this.getTestPropsForInput()}\n {...getAccessibilityProps(AccessibilityWidgetType.SEARCH, props)}\n placeholderTextColor={this.styles.placeholderText.color as any}\n placeholder={props.placeholder || 'Search'}\n autoFocus={props.autofocus}\n editable={props.disabled || props.readonly ? false : true}\n onChangeText={this.onChange.bind(this)}\n onChange={this.invokeChange.bind(this)}\n onFocus={this.onFocus.bind(this)}\n onLayout={e => {this.searchInputWidth = e.nativeEvent.layout.width}}\n onBlur={this.onBlur.bind(this)}\n {...opts}>\n </TextInput>\n {props.showclear && this.state.props.query ? <WmButton onTap={this.clearSearch.bind(this)}\n id={this.getTestId('clear')}\n styles={this.styles.clearButton} iconclass={'wi wi-clear'}></WmButton> : null}\n </View>\n {props.showSearchIcon && props.type === 'search' ? <WmButton styles={this.styles.searchButton}\n id={this.getTestId('search')}\n iconclass={props.iconclass} onTap={this.searchIconPress.bind(this)}></WmButton> : null}\n </View>\n );\n }\n\n reset() {\n if (this.state.props.query) {\n this.updateState({\n props: {\n query: ''\n }\n } as WmSearchState);\n }\n }\n\n renderSearchItem(item: any, index: number) {\n const props = this.state.props;\n const imageStyles = { root: {height:props.imagewidth, width:props.imagewidth}}\n return (\n <Tappable onTap={this.onItemSelect.bind(this, item)} {...this.getTestProps(`action${index}`)}>\n <View style={this.styles.searchItem}>\n {!isEmpty(this.state.template) && this.props.renderitempartial ?\n this.props.renderitempartial(item.dataObject, index, this.state.template) : (<>\n <WmPicture id={this.getTestId(`picture${index}`)} styles={imageStyles} name={props.name + '_image'} picturesource={item.imgSrc}></WmPicture>\n <Text {...this.getTestPropsForLabel(index + '')} style={this.styles.searchItemText}>{item.displayexp || item.displayfield}</Text>\n </>)}\n </View>\n </Tappable>\n );\n }\n\n updateDefaultQueryModel() {\n if (this.state.dataItems && this.state.dataItems.length && this.isDefaultQuery) {\n const selectedItem = find(this.state.dataItems, (item) => item.selected);\n this.updateState({ props: {\n query: selectedItem ? (selectedItem.displayexp || selectedItem.displayfield) : ''\n }\n } as WmSearchState);\n }\n }\n\n onDataItemsUpdate() {\n super.onDataItemsUpdate();\n this.isFocused && this.state.dataItems.length && this.updateFilteredData(this.state.props.query);\n this.updateDefaultQueryModel();\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n this.updateDefaultQueryModel();\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'dataset':\n if (!isEmpty($new) && isObject($new) && !isArray($new)) {\n $new = [$new];\n this.updateState({\n props: {\n dataset: $new\n }\n } as WmSearchState);\n }\n break;\n }\n super.onPropertyChange(name, $new, $old);\n }\n\n setTemplate(partialName: any) {\n this.updateState({ template: partialName} as WmSearchState);\n }\n\n renderWidget(props: WmSearchProps) {\n const result = this.state.data;\n return (\n <View>\n {this.renderSearchBar()}\n {this.state.isOpened ? (\n <ModalConsumer>\n {(modalService: ModalService) => {\n modalService.showModal(this.prepareModalOptions((\n <ScrollView style={{width: '100%', maxHeight: 200}} contentContainerStyle={this.styles.dropDownContent}>\n <AssetProvider value={this.loadAsset}>\n {result && result.map((item: any, index: any) => (\n <View key={item.key}>\n {\n (!props.limit) || (props.limit && index+1 <= props.limit) ?\n this.renderSearchItem(item, index)\n : null\n }\n {\n index === result.length - 1 ?\n <WmAnchor caption={props.datacompletemsg} styles={this.styles.dataCompleteItem}></WmAnchor> : null\n }\n </View>\n ))}\n </AssetProvider>\n </ScrollView>\n ), this.styles, modalService));\n return null;\n }}\n </ModalConsumer>) : null}\n </View>\n\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -2,8 +2,8 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
|
|
2
2
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
3
3
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
4
4
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
5
|
-
import React
|
6
|
-
import { Animated, Easing, Text, View
|
5
|
+
import React from 'react';
|
6
|
+
import { Animated, Easing, Text, View } from 'react-native';
|
7
7
|
import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';
|
8
8
|
import WmTabheaderProps from './tabheader.props';
|
9
9
|
import { DEFAULT_CLASS } from './tabheader.styles';
|
@@ -22,7 +22,6 @@ export default class WmTabheader extends BaseComponent {
|
|
22
22
|
_defineProperty(this, "indicatorPosition", new Animated.Value(0));
|
23
23
|
_defineProperty(this, "reverseIndicatorWidth", new Animated.Value(0));
|
24
24
|
_defineProperty(this, "indicatorWidth", new Animated.Value(0));
|
25
|
-
_defineProperty(this, "listRef", /*#__PURE__*/createRef());
|
26
25
|
this.headerScrollPosition.addListener(({
|
27
26
|
value
|
28
27
|
}) => this.headerScrollPositionValue = value);
|
@@ -42,16 +41,8 @@ export default class WmTabheader extends BaseComponent {
|
|
42
41
|
this.state.props.onIndexChange && this.state.props.onIndexChange(index);
|
43
42
|
}
|
44
43
|
}
|
45
|
-
scrollPosition(selectedTabIndex, totalWidth, toIndicatorPosition) {
|
46
|
-
var _this$headerPanelLayo;
|
47
|
-
const initialPosition = this.isRTL ? totalWidth : 0;
|
48
|
-
const baseWidth = this.isRTL ? totalWidth - toIndicatorPosition : toIndicatorPosition;
|
49
|
-
const elementWidth = this.isRTL ? -1 * (this.headersLayout[selectedTabIndex].width / 2) : this.headersLayout[selectedTabIndex].width / 2;
|
50
|
-
const positionX = selectedTabIndex === 0 ? initialPosition : baseWidth + elementWidth - (((_this$headerPanelLayo = this.headerPanelLayout) === null || _this$headerPanelLayo === void 0 ? void 0 : _this$headerPanelLayo.width) || 0) / 2;
|
51
|
-
return positionX;
|
52
|
-
}
|
53
44
|
setPosition() {
|
54
|
-
var _this$headersLayout$s, _this$
|
45
|
+
var _this$headersLayout$s, _this$headerPanelLayo, _this$headerPanelLayo2;
|
55
46
|
const selectedTabIndex = this.state.props.selectedTabIndex ? this.state.props.selectedTabIndex : 0;
|
56
47
|
let toIndicatorPosition = 0;
|
57
48
|
let toIndicatorWidth = ((_this$headersLayout$s = this.headersLayout[selectedTabIndex]) === null || _this$headersLayout$s === void 0 ? void 0 : _this$headersLayout$s.width) || 0;
|
@@ -66,19 +57,13 @@ export default class WmTabheader extends BaseComponent {
|
|
66
57
|
}
|
67
58
|
totalWidth += p.width;
|
68
59
|
});
|
69
|
-
toHeaderScrollPosition = -1 * (toIndicatorPosition - (((_this$
|
70
|
-
const minScrollPosition = -1 * (totalWidth - (((_this$
|
60
|
+
toHeaderScrollPosition = -1 * (toIndicatorPosition - (((_this$headerPanelLayo = this.headerPanelLayout) === null || _this$headerPanelLayo === void 0 ? void 0 : _this$headerPanelLayo.width) || 0) / 2 + toIndicatorWidth / 2);
|
61
|
+
const minScrollPosition = -1 * (totalWidth - (((_this$headerPanelLayo2 = this.headerPanelLayout) === null || _this$headerPanelLayo2 === void 0 ? void 0 : _this$headerPanelLayo2.width) || 0));
|
71
62
|
const maxScrollPosition = 0;
|
72
63
|
toHeaderScrollPosition = Math.max(minScrollPosition, toHeaderScrollPosition);
|
73
64
|
toHeaderScrollPosition = Math.min(maxScrollPosition, toHeaderScrollPosition);
|
74
65
|
let positionIndicator = toIndicatorPosition - (100 - toIndicatorWidth) / 2;
|
75
66
|
let position = this.isRTL ? -positionIndicator : positionIndicator;
|
76
|
-
const positionX = this.scrollPosition(selectedTabIndex, totalWidth, toIndicatorPosition);
|
77
|
-
(_this$listRef$current = this.listRef.current) === null || _this$listRef$current === void 0 || _this$listRef$current.scrollTo({
|
78
|
-
x: positionX,
|
79
|
-
y: 0,
|
80
|
-
Animated: true
|
81
|
-
});
|
82
67
|
Animated.parallel([Animated.timing(this.headerScrollPosition, {
|
83
68
|
useNativeDriver: true,
|
84
69
|
toValue: toHeaderScrollPosition,
|
@@ -145,18 +130,19 @@ export default class WmTabheader extends BaseComponent {
|
|
145
130
|
renderWidget(props) {
|
146
131
|
this.setPosition();
|
147
132
|
const arrowIndicator = this.styles.arrowIndicator;
|
148
|
-
return /*#__PURE__*/React.createElement(View,
|
133
|
+
return /*#__PURE__*/React.createElement(View, {
|
149
134
|
style: {
|
150
135
|
overflow: 'hidden',
|
151
136
|
zIndex: 16
|
152
137
|
}
|
153
|
-
},
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
138
|
+
}, /*#__PURE__*/React.createElement(Animated.View, {
|
139
|
+
style: {
|
140
|
+
transform: [{
|
141
|
+
translateX: this.headerScrollPosition
|
142
|
+
}]
|
143
|
+
},
|
144
|
+
onLayout: this.setHeaderPanelPositon.bind(this)
|
145
|
+
}, /*#__PURE__*/React.createElement(View, {
|
160
146
|
style: this.styles.root
|
161
147
|
}, this._background, props.data.map((header, i) => {
|
162
148
|
const isSelected = i === props.selectedTabIndex;
|
@@ -206,7 +192,7 @@ export default class WmTabheader extends BaseComponent {
|
|
206
192
|
}
|
207
193
|
}) : null, /*#__PURE__*/React.createElement(View, {
|
208
194
|
style: this.styles.arrowIndicatorDot
|
209
|
-
})))))
|
195
|
+
})))));
|
210
196
|
}
|
211
197
|
}
|
212
198
|
//# sourceMappingURL=tabheader.component.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","createRef","Animated","Easing","Text","View","ScrollView","BaseComponent","BaseComponentState","WmTabheaderProps","DEFAULT_CLASS","Tappable","createSkeleton","BackgroundComponent","WmIcon","WmTabheaderState","WmTabheader","constructor","props","_defineProperty","Value","headerScrollPosition","addListener","value","headerScrollPositionValue","setHeaderPanelPositon","nativeEvent","headerPanelLayout","layout","forceUpdate","setHeaderPositon","index","headersLayout","selectedTabIndex","onTabSelection","state","onIndexChange","scrollPosition","totalWidth","toIndicatorPosition","_this$headerPanelLayo","initialPosition","isRTL","baseWidth","elementWidth","width","positionX","setPosition","_this$headersLayout$s","_this$headerPanelLayo2","_this$headerPanelLayo3","_this$listRef$current","toIndicatorWidth","toHeaderScrollPosition","data","length","forEach","p","i","minScrollPosition","maxScrollPosition","Math","max","min","positionIndicator","position","listRef","current","scrollTo","x","y","parallel","timing","useNativeDriver","toValue","duration","easing","linear","indicatorWidth","reverseIndicatorWidth","indicatorPosition","start","renderSkeleton","createElement","style","transform","translateX","onLayout","bind","styles","root","map","header","_this$styles$root","_this$styles$root2","_this$styles$activeHe","isSelected","onTap","key","flex","activeHeader","theme","borderRadius","height","activeHeaderText","fontSize","activeIndicator","scaleX","renderWidget","arrowIndicator","_extends","overflow","zIndex","getTestProps","ref","horizontal","showsHorizontalScrollIndicator","scrollEnabled","shouldScroll","_background","getTestPropsForAction","flexGrow","undefined","id","getTestId","mergeStyle","headerIcon","activeHeaderIcon","iconclass","icon","numberOfLines","headerText","getTestPropsForLabel","title","backgroundImage","image","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","arrowIndicatorDot"],"sources":["tabheader.component.tsx"],"sourcesContent":["import React, { createRef } from 'react';\nimport { Animated, Easing, LayoutChangeEvent, LayoutRectangle, Text, View, ScrollView } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmTabheaderProps from './tabheader.props';\nimport { DEFAULT_CLASS, WmTabheaderStyles } from './tabheader.styles';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport WmSkeleton, { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\nimport WmIcon from \"@wavemaker/app-rn-runtime/components/basic/icon/icon.component\";\n\nexport class WmTabheaderState extends BaseComponentState<WmTabheaderProps> {\n}\n\nexport default class WmTabheader extends BaseComponent<WmTabheaderProps, WmTabheaderState, WmTabheaderStyles> {\n\n private headerPanelLayout: LayoutRectangle = null as any;\n private headersLayout: LayoutRectangle[] = [];\n private headerScrollPosition = new Animated.Value(0);\n private headerScrollPositionValue = 0;\n private indicatorPosition = new Animated.Value(0);\n private reverseIndicatorWidth = new Animated.Value(0);\n private indicatorWidth = new Animated.Value(0);\n private listRef: any = createRef();\n\n constructor(props: WmTabheaderProps) {\n super(props, DEFAULT_CLASS, new WmTabheaderProps(), new WmTabheaderState());\n this.headerScrollPosition.addListener(({value}) => this.headerScrollPositionValue = value);\n }\n\n setHeaderPanelPositon(nativeEvent: LayoutChangeEvent) {\n this.headerPanelLayout = nativeEvent.nativeEvent.layout;\n this.forceUpdate();\n }\n\n setHeaderPositon(index: number, nativeEvent: LayoutChangeEvent) {\n this.headersLayout[index] = nativeEvent.nativeEvent.layout;\n if (index === this.props.selectedTabIndex) {\n this.forceUpdate();\n }\n }\n\n onTabSelection(index: number) {\n if (this.state.props.selectedTabIndex != index) {\n this.state.props.onIndexChange && this.state.props.onIndexChange(index);\n }\n }\n\n scrollPosition(selectedTabIndex: number, totalWidth: number, toIndicatorPosition: number) {\n const initialPosition = this.isRTL ? totalWidth : 0;\n const baseWidth = this.isRTL ? totalWidth - toIndicatorPosition : toIndicatorPosition;\n const elementWidth = this.isRTL ? -1 * (this.headersLayout[selectedTabIndex].width/2) : this.headersLayout[selectedTabIndex].width/2\n const positionX = selectedTabIndex === 0 ? initialPosition : \n ((baseWidth + (elementWidth)) - (this.headerPanelLayout?.width || 0) / 2);\n\n return positionX\n }\n\n setPosition() {\n const selectedTabIndex = this.state.props.selectedTabIndex ? this.state.props.selectedTabIndex : 0\n let toIndicatorPosition = 0;\n let toIndicatorWidth = this.headersLayout[selectedTabIndex]?.width || 0;\n let toHeaderScrollPosition = this.headerScrollPositionValue;\n let totalWidth = 0;\n if (this.state.props.data.length !== this.headersLayout.length) {\n return;\n }\n this.headersLayout.forEach((p, i) => {\n if (i < selectedTabIndex) {\n toIndicatorPosition += p.width;\n }\n totalWidth += p.width;\n });\n toHeaderScrollPosition = -1 * (toIndicatorPosition - (this.headerPanelLayout?.width || 0) / 2 + toIndicatorWidth/ 2) ;\n const minScrollPosition = -1 * (totalWidth - (this.headerPanelLayout?.width || 0));\n const maxScrollPosition = 0;\n toHeaderScrollPosition = Math.max(minScrollPosition, toHeaderScrollPosition);\n toHeaderScrollPosition = Math.min(maxScrollPosition, toHeaderScrollPosition);\n let positionIndicator = (toIndicatorPosition - (100 - toIndicatorWidth) / 2);\n let position = this.isRTL?-positionIndicator:positionIndicator;\n\n const positionX = this.scrollPosition(selectedTabIndex, totalWidth, toIndicatorPosition)\n\n this.listRef.current?.scrollTo({\n x: positionX,\n y: 0,\n Animated: true\n });\n\n Animated.parallel([\n Animated.timing(this.headerScrollPosition, {\n useNativeDriver: true,\n toValue: toHeaderScrollPosition,\n duration: 200,\n easing: Easing.linear\n }),\n Animated.timing(this.indicatorWidth, {\n useNativeDriver: true,\n toValue: toIndicatorWidth / 100,\n duration: 200,\n easing: Easing.linear\n }),\n Animated.timing(this.reverseIndicatorWidth, {\n useNativeDriver: true,\n toValue: toIndicatorWidth ? 100 / toIndicatorWidth : 0,\n duration: 200,\n easing: Easing.linear\n }),\n Animated.timing(this.indicatorPosition, {\n useNativeDriver: true,\n toValue: position,\n duration: 200,\n easing: Easing.linear\n })\n ]).start();\n }\n\n public renderSkeleton(props: WmTabheaderProps){\n return(\n <Animated.View style={{\n transform: [{\n translateX: this.headerScrollPosition\n }]\n }}\n onLayout={this.setHeaderPanelPositon.bind(this)}>\n <View style={this.styles.root}>\n {this.props.data.map((header ,i) => {\n const isSelected = i === this.props.selectedTabIndex;\n return (\n <Tappable onTap={this.onTabSelection.bind(this, i)} key={header.key} styles={{flex: 1}}>\n <View onLayout={this.setHeaderPositon.bind(this, i)} style={[\n this.styles.header,\n isSelected ? this.styles.activeHeader : null]}>\n {\n createSkeleton(this.theme, { root: { borderRadius: 4 }} as WmSkeletonStyles, {\n ...this.styles.root,\n width: this.styles.root?.width || \"80%\",\n height: this.styles.root?.height || this.styles.activeHeaderText?.fontSize || 16\n })\n }\n </View>\n </Tappable>\n );\n })}\n </View>\n <Animated.View style={[this.styles.activeIndicator, {\n transform: [{\n translateX: this.indicatorPosition\n }, {\n scaleX: this.indicatorWidth\n }]\n }]}></Animated.View>\n </Animated.View>\n\n )\n }\n\n renderWidget(props: WmTabheaderProps) {\n this.setPosition();\n const arrowIndicator = this.styles.arrowIndicator as any;\n return (\n <View \n style={{overflow: 'hidden', zIndex: 16}}\n {...this.getTestProps('tabheader')}\n >\n <ScrollView\n ref={this.listRef}\n horizontal={true}\n onLayout={this.setHeaderPanelPositon.bind(this)}\n showsHorizontalScrollIndicator={false}\n scrollEnabled={props.shouldScroll}\n >\n <View>\n <View style={this.styles.root}>\n {this._background}\n {props.data.map((header ,i) => {\n const isSelected = i === props.selectedTabIndex ;\n return (\n <Tappable onTap={this.onTabSelection.bind(this, i)}\n {...this.getTestPropsForAction(i +'')}\n key={header.key}\n styles={this.styles.header.flexGrow ? {flexGrow: this.styles.header.flexGrow} : null}>\n <View onLayout={this.setHeaderPositon.bind(this, i)}>\n <View style={[\n this.styles.header,\n {flexGrow: undefined},\n isSelected ? this.styles.activeHeader : null]}>\n <WmIcon\n id={this.getTestId(i + 'icon')}\n styles={this.theme.mergeStyle({}, this.styles.headerIcon, isSelected ? this.styles.activeHeaderIcon : null)}\n iconclass={header.icon}></WmIcon>\n <Text numberOfLines={1} style={[\n this.styles.headerText,\n isSelected ? this.styles.activeHeaderText : null]}\n {...this.getTestPropsForLabel(i + '_title')}\n >{header.title}</Text>\n </View>\n </View>\n </Tappable>\n );\n })}\n </View>\n <Animated.View style={[this.styles.activeIndicator, {\n transform: [{\n translateX: this.indicatorPosition\n }, {\n scaleX: this.indicatorWidth\n }]\n }]}>\n <Animated.View style={[{\n transform: [{\n scaleX: this.reverseIndicatorWidth\n }]\n },\n this.styles.arrowIndicator\n ]}>\n {\n arrowIndicator.backgroundImage ? (\n <BackgroundComponent\n image={arrowIndicator.backgroundImage}\n position={arrowIndicator.backgroundPosition}\n size={arrowIndicator.backgroundSize}\n repeat={arrowIndicator.backgroundRepeat}\n resizeMode={arrowIndicator.backgroundResizeMode}\n style={{borderRadius: this.styles.root.borderRadius}}\n ></BackgroundComponent>\n ) : null }\n <View style={this.styles.arrowIndicatorDot}></View>\n </Animated.View>\n </Animated.View>\n </View>\n </ScrollView>\n </View>\n );\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,SAASC,QAAQ,EAAEC,MAAM,EAAsCC,IAAI,EAAEC,IAAI,EAAEC,UAAU,QAAQ,cAAc;AAC3G,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AAEjG,OAAOC,gBAAgB,MAAM,mBAAmB;AAChD,SAASC,aAAa,QAA2B,oBAAoB;AACrE,SAASC,QAAQ,QAAQ,mDAAmD;AAC5E,SAAqBC,cAAc,QAAQ,wEAAwE;AAEnH,SAASC,mBAAmB,QAAQ,uDAAuD;AAC3F,OAAOC,MAAM,MAAM,gEAAgE;AAEnF,OAAO,MAAMC,gBAAgB,SAASP,kBAAkB,CAAmB;AAG3E,eAAe,MAAMQ,WAAW,SAAST,aAAa,CAAwD;EAW5GU,WAAWA,CAACC,KAAuB,EAAE;IACnC,KAAK,CAACA,KAAK,EAAER,aAAa,EAAE,IAAID,gBAAgB,CAAC,CAAC,EAAE,IAAIM,gBAAgB,CAAC,CAAC,CAAC;IAACI,eAAA,4BAVjC,IAAI;IAAAA,eAAA,wBACN,EAAE;IAAAA,eAAA,+BACd,IAAIjB,QAAQ,CAACkB,KAAK,CAAC,CAAC,CAAC;IAAAD,eAAA,oCAChB,CAAC;IAAAA,eAAA,4BACT,IAAIjB,QAAQ,CAACkB,KAAK,CAAC,CAAC,CAAC;IAAAD,eAAA,gCACjB,IAAIjB,QAAQ,CAACkB,KAAK,CAAC,CAAC,CAAC;IAAAD,eAAA,yBAC5B,IAAIjB,QAAQ,CAACkB,KAAK,CAAC,CAAC,CAAC;IAAAD,eAAA,+BACvBlB,SAAS,CAAC,CAAC;IAIhC,IAAI,CAACoB,oBAAoB,CAACC,WAAW,CAAC,CAAC;MAACC;IAAK,CAAC,KAAK,IAAI,CAACC,yBAAyB,GAAGD,KAAK,CAAC;EAC5F;EAEAE,qBAAqBA,CAACC,WAA8B,EAAE;IACpD,IAAI,CAACC,iBAAiB,GAAGD,WAAW,CAACA,WAAW,CAACE,MAAM;IACvD,IAAI,CAACC,WAAW,CAAC,CAAC;EACpB;EAEAC,gBAAgBA,CAACC,KAAa,EAAEL,WAA8B,EAAE;IAC9D,IAAI,CAACM,aAAa,CAACD,KAAK,CAAC,GAAGL,WAAW,CAACA,WAAW,CAACE,MAAM;IAC1D,IAAIG,KAAK,KAAK,IAAI,CAACb,KAAK,CAACe,gBAAgB,EAAE;MACzC,IAAI,CAACJ,WAAW,CAAC,CAAC;IACpB;EACF;EAEAK,cAAcA,CAACH,KAAa,EAAE;IAC5B,IAAI,IAAI,CAACI,KAAK,CAACjB,KAAK,CAACe,gBAAgB,IAAIF,KAAK,EAAE;MAC9C,IAAI,CAACI,KAAK,CAACjB,KAAK,CAACkB,aAAa,IAAI,IAAI,CAACD,KAAK,CAACjB,KAAK,CAACkB,aAAa,CAACL,KAAK,CAAC;IACzE;EACF;EAEAM,cAAcA,CAACJ,gBAAwB,EAAEK,UAAkB,EAAEC,mBAA2B,EAAE;IAAA,IAAAC,qBAAA;IACxF,MAAMC,eAAe,GAAG,IAAI,CAACC,KAAK,GAAGJ,UAAU,GAAG,CAAC;IACnD,MAAMK,SAAS,GAAG,IAAI,CAACD,KAAK,GAAGJ,UAAU,GAAGC,mBAAmB,GAAGA,mBAAmB;IACrF,MAAMK,YAAY,GAAI,IAAI,CAACF,KAAK,GAAG,CAAC,CAAC,IAAI,IAAI,CAACV,aAAa,CAACC,gBAAgB,CAAC,CAACY,KAAK,GAAC,CAAC,CAAC,GAAG,IAAI,CAACb,aAAa,CAACC,gBAAgB,CAAC,CAACY,KAAK,GAAC,CAAC;IACrI,MAAMC,SAAS,GAAGb,gBAAgB,KAAK,CAAC,GAAGQ,eAAe,GACtDE,SAAS,GAAIC,YAAa,GAAI,CAAC,EAAAJ,qBAAA,OAAI,CAACb,iBAAiB,cAAAa,qBAAA,uBAAtBA,qBAAA,CAAwBK,KAAK,KAAI,CAAC,IAAI,CAAE;IAE3E,OAAOC,SAAS;EAClB;EAEAC,WAAWA,CAAA,EAAG;IAAA,IAAAC,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,qBAAA;IACZ,MAAMlB,gBAAgB,GAAG,IAAI,CAACE,KAAK,CAACjB,KAAK,CAACe,gBAAgB,GAAG,IAAI,CAACE,KAAK,CAACjB,KAAK,CAACe,gBAAgB,GAAG,CAAC;IAClG,IAAIM,mBAAmB,GAAG,CAAC;IAC3B,IAAIa,gBAAgB,GAAG,EAAAJ,qBAAA,OAAI,CAAChB,aAAa,CAACC,gBAAgB,CAAC,cAAAe,qBAAA,uBAApCA,qBAAA,CAAsCH,KAAK,KAAI,CAAC;IACvE,IAAIQ,sBAAsB,GAAG,IAAI,CAAC7B,yBAAyB;IAC3D,IAAIc,UAAU,GAAG,CAAC;IAClB,IAAI,IAAI,CAACH,KAAK,CAACjB,KAAK,CAACoC,IAAI,CAACC,MAAM,KAAK,IAAI,CAACvB,aAAa,CAACuB,MAAM,EAAE;MAC9D;IACF;IACA,IAAI,CAACvB,aAAa,CAACwB,OAAO,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAK;MACnC,IAAIA,CAAC,GAAGzB,gBAAgB,EAAE;QACxBM,mBAAmB,IAAIkB,CAAC,CAACZ,KAAK;MAChC;MACAP,UAAU,IAAImB,CAAC,CAACZ,KAAK;IACvB,CAAC,CAAC;IACFQ,sBAAsB,GAAG,CAAC,CAAC,IAAId,mBAAmB,GAAG,CAAC,EAAAU,sBAAA,OAAI,CAACtB,iBAAiB,cAAAsB,sBAAA,uBAAtBA,sBAAA,CAAwBJ,KAAK,KAAI,CAAC,IAAI,CAAC,GAAGO,gBAAgB,GAAE,CAAC,CAAC;IACpH,MAAMO,iBAAiB,GAAG,CAAC,CAAC,IAAIrB,UAAU,IAAI,EAAAY,sBAAA,OAAI,CAACvB,iBAAiB,cAAAuB,sBAAA,uBAAtBA,sBAAA,CAAwBL,KAAK,KAAI,CAAC,CAAC,CAAC;IAClF,MAAMe,iBAAiB,GAAG,CAAC;IAC3BP,sBAAsB,GAAGQ,IAAI,CAACC,GAAG,CAACH,iBAAiB,EAAEN,sBAAsB,CAAC;IAC5EA,sBAAsB,GAAGQ,IAAI,CAACE,GAAG,CAACH,iBAAiB,EAAEP,sBAAsB,CAAC;IAC5E,IAAIW,iBAAiB,GAAIzB,mBAAmB,GAAG,CAAC,GAAG,GAAGa,gBAAgB,IAAI,CAAE;IAC5E,IAAIa,QAAQ,GAAG,IAAI,CAACvB,KAAK,GAAC,CAACsB,iBAAiB,GAACA,iBAAiB;IAE9D,MAAMlB,SAAS,GAAG,IAAI,CAACT,cAAc,CAACJ,gBAAgB,EAAEK,UAAU,EAAEC,mBAAmB,CAAC;IAExF,CAAAY,qBAAA,OAAI,CAACe,OAAO,CAACC,OAAO,cAAAhB,qBAAA,eAApBA,qBAAA,CAAsBiB,QAAQ,CAAC;MAC7BC,CAAC,EAAEvB,SAAS;MACZwB,CAAC,EAAE,CAAC;MACJpE,QAAQ,EAAE;IACZ,CAAC,CAAC;IAEFA,QAAQ,CAACqE,QAAQ,CAAC,CAChBrE,QAAQ,CAACsE,MAAM,CAAC,IAAI,CAACnD,oBAAoB,EAAE;MACzCoD,eAAe,EAAE,IAAI;MACrBC,OAAO,EAAGrB,sBAAsB;MAChCsB,QAAQ,EAAE,GAAG;MACbC,MAAM,EAAEzE,MAAM,CAAC0E;IACjB,CAAC,CAAC,EACF3E,QAAQ,CAACsE,MAAM,CAAC,IAAI,CAACM,cAAc,EAAE;MACnCL,eAAe,EAAE,IAAI;MACrBC,OAAO,EAAGtB,gBAAgB,GAAG,GAAG;MAChCuB,QAAQ,EAAE,GAAG;MACbC,MAAM,EAAEzE,MAAM,CAAC0E;IACjB,CAAC,CAAC,EACF3E,QAAQ,CAACsE,MAAM,CAAC,IAAI,CAACO,qBAAqB,EAAE;MAC1CN,eAAe,EAAE,IAAI;MACrBC,OAAO,EAAGtB,gBAAgB,GAAG,GAAG,GAAGA,gBAAgB,GAAG,CAAC;MACvDuB,QAAQ,EAAE,GAAG;MACbC,MAAM,EAAEzE,MAAM,CAAC0E;IACjB,CAAC,CAAC,EACF3E,QAAQ,CAACsE,MAAM,CAAC,IAAI,CAACQ,iBAAiB,EAAE;MACtCP,eAAe,EAAE,IAAI;MACrBC,OAAO,EAAGT,QAAQ;MAClBU,QAAQ,EAAE,GAAG;MACbC,MAAM,EAAEzE,MAAM,CAAC0E;IACjB,CAAC,CAAC,CACH,CAAC,CAACI,KAAK,CAAC,CAAC;EACZ;EAEOC,cAAcA,CAAChE,KAAuB,EAAC;IAC5C,oBACElB,KAAA,CAAAmF,aAAA,CAACjF,QAAQ,CAACG,IAAI;MAAC+E,KAAK,EAAE;QACpBC,SAAS,EAAE,CAAC;UACVC,UAAU,EAAE,IAAI,CAACjE;QACnB,CAAC;MACH,CAAE;MACFkE,QAAQ,EAAE,IAAI,CAAC9D,qBAAqB,CAAC+D,IAAI,CAAC,IAAI;IAAE,gBAC9CxF,KAAA,CAAAmF,aAAA,CAAC9E,IAAI;MAAC+E,KAAK,EAAE,IAAI,CAACK,MAAM,CAACC;IAAK,GAC3B,IAAI,CAACxE,KAAK,CAACoC,IAAI,CAACqC,GAAG,CAAC,CAACC,MAAM,EAAElC,CAAC,KAAK;MAAA,IAAAmC,iBAAA,EAAAC,kBAAA,EAAAC,qBAAA;MAClC,MAAMC,UAAU,GAAGtC,CAAC,KAAK,IAAI,CAACxC,KAAK,CAACe,gBAAgB;MACpD,oBACEjC,KAAA,CAAAmF,aAAA,CAACxE,QAAQ;QAACsF,KAAK,EAAE,IAAI,CAAC/D,cAAc,CAACsD,IAAI,CAAC,IAAI,EAAE9B,CAAC,CAAE;QAACwC,GAAG,EAAEN,MAAM,CAACM,GAAI;QAACT,MAAM,EAAE;UAACU,IAAI,EAAE;QAAC;MAAE,gBACrFnG,KAAA,CAAAmF,aAAA,CAAC9E,IAAI;QAACkF,QAAQ,EAAE,IAAI,CAACzD,gBAAgB,CAAC0D,IAAI,CAAC,IAAI,EAAE9B,CAAC,CAAE;QAAC0B,KAAK,EAAE,CAC1D,IAAI,CAACK,MAAM,CAACG,MAAM,EAClBI,UAAU,GAAG,IAAI,CAACP,MAAM,CAACW,YAAY,GAAG,IAAI;MAAE,GAE5CxF,cAAc,CAAC,IAAI,CAACyF,KAAK,EAAE;QAAEX,IAAI,EAAE;UAAEY,YAAY,EAAE;QAAE;MAAC,CAAC,EAAsB;QAC3E,GAAG,IAAI,CAACb,MAAM,CAACC,IAAI;QACnB7C,KAAK,EAAE,EAAAgD,iBAAA,OAAI,CAACJ,MAAM,CAACC,IAAI,cAAAG,iBAAA,uBAAhBA,iBAAA,CAAkBhD,KAAK,KAAI,KAAK;QACvC0D,MAAM,EAAE,EAAAT,kBAAA,OAAI,CAACL,MAAM,CAACC,IAAI,cAAAI,kBAAA,uBAAhBA,kBAAA,CAAkBS,MAAM,OAAAR,qBAAA,GAAI,IAAI,CAACN,MAAM,CAACe,gBAAgB,cAAAT,qBAAA,uBAA5BA,qBAAA,CAA8BU,QAAQ,KAAI;MAChF,CAAC,CAEC,CACE,CAAC;IAEf,CAAC,CACG,CAAC,eACPzG,KAAA,CAAAmF,aAAA,CAACjF,QAAQ,CAACG,IAAI;MAAC+E,KAAK,EAAE,CAAC,IAAI,CAACK,MAAM,CAACiB,eAAe,EAAE;QAClDrB,SAAS,EAAE,CAAC;UACVC,UAAU,EAAE,IAAI,CAACN;QACnB,CAAC,EAAE;UACD2B,MAAM,EAAE,IAAI,CAAC7B;QACf,CAAC;MACH,CAAC;IAAE,CAAgB,CACN,CAAC;EAGpB;EAEA8B,YAAYA,CAAC1F,KAAuB,EAAE;IACpC,IAAI,CAAC6B,WAAW,CAAC,CAAC;IAClB,MAAM8D,cAAc,GAAG,IAAI,CAACpB,MAAM,CAACoB,cAAqB;IACxD,oBACE7G,KAAA,CAAAmF,aAAA,CAAC9E,IAAI,EAAAyG,QAAA;MACH1B,KAAK,EAAE;QAAC2B,QAAQ,EAAE,QAAQ;QAAEC,MAAM,EAAE;MAAE;IAAE,GACpC,IAAI,CAACC,YAAY,CAAC,WAAW,CAAC,gBAEpCjH,KAAA,CAAAmF,aAAA,CAAC7E,UAAU;MACT4G,GAAG,EAAE,IAAI,CAAChD,OAAQ;MAClBiD,UAAU,EAAE,IAAK;MACjB5B,QAAQ,EAAE,IAAI,CAAC9D,qBAAqB,CAAC+D,IAAI,CAAC,IAAI,CAAE;MAChD4B,8BAA8B,EAAE,KAAM;MACtCC,aAAa,EAAEnG,KAAK,CAACoG;IAAa,gBAEpCtH,KAAA,CAAAmF,aAAA,CAAC9E,IAAI,qBACHL,KAAA,CAAAmF,aAAA,CAAC9E,IAAI;MAAC+E,KAAK,EAAE,IAAI,CAACK,MAAM,CAACC;IAAK,GAC3B,IAAI,CAAC6B,WAAW,EAChBrG,KAAK,CAACoC,IAAI,CAACqC,GAAG,CAAC,CAACC,MAAM,EAAElC,CAAC,KAAK;MAC7B,MAAMsC,UAAU,GAAGtC,CAAC,KAAKxC,KAAK,CAACe,gBAAgB;MAC/C,oBACEjC,KAAA,CAAAmF,aAAA,CAACxE,QAAQ,EAAAmG,QAAA;QAACb,KAAK,EAAE,IAAI,CAAC/D,cAAc,CAACsD,IAAI,CAAC,IAAI,EAAE9B,CAAC;MAAE,GAC7C,IAAI,CAAC8D,qBAAqB,CAAC9D,CAAC,GAAE,EAAE,CAAC;QACrCwC,GAAG,EAAEN,MAAM,CAACM,GAAI;QAChBT,MAAM,EAAE,IAAI,CAACA,MAAM,CAACG,MAAM,CAAC6B,QAAQ,GAAG;UAACA,QAAQ,EAAE,IAAI,CAAChC,MAAM,CAACG,MAAM,CAAC6B;QAAQ,CAAC,GAAG;MAAK,iBACrFzH,KAAA,CAAAmF,aAAA,CAAC9E,IAAI;QAACkF,QAAQ,EAAE,IAAI,CAACzD,gBAAgB,CAAC0D,IAAI,CAAC,IAAI,EAAE9B,CAAC;MAAE,gBAClD1D,KAAA,CAAAmF,aAAA,CAAC9E,IAAI;QAAC+E,KAAK,EAAE,CACX,IAAI,CAACK,MAAM,CAACG,MAAM,EAClB;UAAC6B,QAAQ,EAAEC;QAAS,CAAC,EACrB1B,UAAU,GAAG,IAAI,CAACP,MAAM,CAACW,YAAY,GAAG,IAAI;MAAE,gBAC9CpG,KAAA,CAAAmF,aAAA,CAACrE,MAAM;QACL6G,EAAE,EAAE,IAAI,CAACC,SAAS,CAAClE,CAAC,GAAG,MAAM,CAAE;QAC/B+B,MAAM,EAAE,IAAI,CAACY,KAAK,CAACwB,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,CAACpC,MAAM,CAACqC,UAAU,EAAE9B,UAAU,GAAG,IAAI,CAACP,MAAM,CAACsC,gBAAgB,GAAG,IAAI,CAAE;QAC5GC,SAAS,EAAEpC,MAAM,CAACqC;MAAK,CAAS,CAAC,eACnCjI,KAAA,CAAAmF,aAAA,CAAC/E,IAAI,EAAA0G,QAAA;QAACoB,aAAa,EAAE,CAAE;QAAC9C,KAAK,EAAE,CAC7B,IAAI,CAACK,MAAM,CAAC0C,UAAU,EACtBnC,UAAU,GAAG,IAAI,CAACP,MAAM,CAACe,gBAAgB,GAAG,IAAI;MAAE,GAC9C,IAAI,CAAC4B,oBAAoB,CAAC1E,CAAC,GAAG,QAAQ,CAAC,GAC3CkC,MAAM,CAACyC,KAAY,CACjB,CACF,CACE,CAAC;IAEf,CAAC,CACG,CAAC,eACPrI,KAAA,CAAAmF,aAAA,CAACjF,QAAQ,CAACG,IAAI;MAAC+E,KAAK,EAAE,CAAC,IAAI,CAACK,MAAM,CAACiB,eAAe,EAAE;QAClDrB,SAAS,EAAE,CAAC;UACVC,UAAU,EAAE,IAAI,CAACN;QACnB,CAAC,EAAE;UACD2B,MAAM,EAAE,IAAI,CAAC7B;QACf,CAAC;MACH,CAAC;IAAE,gBACD9E,KAAA,CAAAmF,aAAA,CAACjF,QAAQ,CAACG,IAAI;MAAC+E,KAAK,EAAE,CAAC;QACnBC,SAAS,EAAE,CAAC;UACVsB,MAAM,EAAE,IAAI,CAAC5B;QACf,CAAC;MACH,CAAC,EACD,IAAI,CAACU,MAAM,CAACoB,cAAc;IAC1B,GAEAA,cAAc,CAACyB,eAAe,gBAC5BtI,KAAA,CAAAmF,aAAA,CAACtE,mBAAmB;MACpB0H,KAAK,EAAE1B,cAAc,CAACyB,eAAgB;MACtCrE,QAAQ,EAAE4C,cAAc,CAAC2B,kBAAmB;MAC5CC,IAAI,EAAE5B,cAAc,CAAC6B,cAAe;MACpCC,MAAM,EAAE9B,cAAc,CAAC+B,gBAAiB;MACxCC,UAAU,EAAEhC,cAAc,CAACiC,oBAAqB;MAChD1D,KAAK,EAAE;QAACkB,YAAY,EAAE,IAAI,CAACb,MAAM,CAACC,IAAI,CAACY;MAAY;IAAE,CAC/B,CAAC,GACrB,IAAI,eACRtG,KAAA,CAAAmF,aAAA,CAAC9E,IAAI;MAAC+E,KAAK,EAAE,IAAI,CAACK,MAAM,CAACsD;IAAkB,CAAO,CACrC,CACF,CACT,CACI,CACN,CAAC;EAEX;AACF","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","Animated","Easing","Text","View","BaseComponent","BaseComponentState","WmTabheaderProps","DEFAULT_CLASS","Tappable","createSkeleton","BackgroundComponent","WmIcon","WmTabheaderState","WmTabheader","constructor","props","_defineProperty","Value","headerScrollPosition","addListener","value","headerScrollPositionValue","setHeaderPanelPositon","nativeEvent","headerPanelLayout","layout","forceUpdate","setHeaderPositon","index","headersLayout","selectedTabIndex","onTabSelection","state","onIndexChange","setPosition","_this$headersLayout$s","_this$headerPanelLayo","_this$headerPanelLayo2","toIndicatorPosition","toIndicatorWidth","width","toHeaderScrollPosition","totalWidth","data","length","forEach","p","i","minScrollPosition","maxScrollPosition","Math","max","min","positionIndicator","position","isRTL","parallel","timing","useNativeDriver","toValue","duration","easing","linear","indicatorWidth","reverseIndicatorWidth","indicatorPosition","start","renderSkeleton","createElement","style","transform","translateX","onLayout","bind","styles","root","map","header","_this$styles$root","_this$styles$root2","_this$styles$activeHe","isSelected","onTap","key","flex","activeHeader","theme","borderRadius","height","activeHeaderText","fontSize","activeIndicator","scaleX","renderWidget","arrowIndicator","overflow","zIndex","_background","_extends","getTestPropsForAction","flexGrow","undefined","id","getTestId","mergeStyle","headerIcon","activeHeaderIcon","iconclass","icon","numberOfLines","headerText","getTestPropsForLabel","title","backgroundImage","image","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","arrowIndicatorDot"],"sources":["tabheader.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Animated, Easing, LayoutChangeEvent, LayoutRectangle, Text, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmTabheaderProps from './tabheader.props';\nimport { DEFAULT_CLASS, WmTabheaderStyles } from './tabheader.styles';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport WmSkeleton, { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\nimport WmIcon from \"@wavemaker/app-rn-runtime/components/basic/icon/icon.component\";\n\nexport class WmTabheaderState extends BaseComponentState<WmTabheaderProps> {\n}\n\nexport default class WmTabheader extends BaseComponent<WmTabheaderProps, WmTabheaderState, WmTabheaderStyles> {\n\n private headerPanelLayout: LayoutRectangle = null as any;\n private headersLayout: LayoutRectangle[] = [];\n private headerScrollPosition = new Animated.Value(0);\n private headerScrollPositionValue = 0;\n private indicatorPosition = new Animated.Value(0);\n private reverseIndicatorWidth = new Animated.Value(0);\n private indicatorWidth = new Animated.Value(0);\n\n constructor(props: WmTabheaderProps) {\n super(props, DEFAULT_CLASS, new WmTabheaderProps(), new WmTabheaderState());\n this.headerScrollPosition.addListener(({value}) => this.headerScrollPositionValue = value);\n }\n\n setHeaderPanelPositon(nativeEvent: LayoutChangeEvent) {\n this.headerPanelLayout = nativeEvent.nativeEvent.layout;\n this.forceUpdate();\n }\n\n setHeaderPositon(index: number, nativeEvent: LayoutChangeEvent) {\n this.headersLayout[index] = nativeEvent.nativeEvent.layout;\n if (index === this.props.selectedTabIndex) {\n this.forceUpdate();\n }\n }\n\n onTabSelection(index: number) {\n if (this.state.props.selectedTabIndex != index) {\n this.state.props.onIndexChange && this.state.props.onIndexChange(index);\n }\n }\n\n setPosition() {\n const selectedTabIndex = this.state.props.selectedTabIndex ? this.state.props.selectedTabIndex : 0\n let toIndicatorPosition = 0;\n let toIndicatorWidth = this.headersLayout[selectedTabIndex]?.width || 0;\n let toHeaderScrollPosition = this.headerScrollPositionValue;\n let totalWidth = 0;\n if (this.state.props.data.length !== this.headersLayout.length) {\n return;\n }\n this.headersLayout.forEach((p, i) => {\n if (i < selectedTabIndex) {\n toIndicatorPosition += p.width;\n }\n totalWidth += p.width;\n });\n toHeaderScrollPosition = -1 * (toIndicatorPosition - (this.headerPanelLayout?.width || 0) / 2 + toIndicatorWidth/ 2) ;\n const minScrollPosition = -1 * (totalWidth - (this.headerPanelLayout?.width || 0));\n const maxScrollPosition = 0;\n toHeaderScrollPosition = Math.max(minScrollPosition, toHeaderScrollPosition);\n toHeaderScrollPosition = Math.min(maxScrollPosition, toHeaderScrollPosition);\n let positionIndicator = (toIndicatorPosition - (100 - toIndicatorWidth) / 2);\n let position = this.isRTL?-positionIndicator:positionIndicator;\n Animated.parallel([\n Animated.timing(this.headerScrollPosition, {\n useNativeDriver: true,\n toValue: toHeaderScrollPosition,\n duration: 200,\n easing: Easing.linear\n }),\n Animated.timing(this.indicatorWidth, {\n useNativeDriver: true,\n toValue: toIndicatorWidth / 100,\n duration: 200,\n easing: Easing.linear\n }),\n Animated.timing(this.reverseIndicatorWidth, {\n useNativeDriver: true,\n toValue: toIndicatorWidth ? 100 / toIndicatorWidth : 0,\n duration: 200,\n easing: Easing.linear\n }),\n Animated.timing(this.indicatorPosition, {\n useNativeDriver: true,\n toValue: position,\n duration: 200,\n easing: Easing.linear\n })\n ]).start();\n }\n\n public renderSkeleton(props: WmTabheaderProps){\n return(\n <Animated.View style={{\n transform: [{\n translateX: this.headerScrollPosition\n }]\n }}\n onLayout={this.setHeaderPanelPositon.bind(this)}>\n <View style={this.styles.root}>\n {this.props.data.map((header ,i) => {\n const isSelected = i === this.props.selectedTabIndex;\n return (\n <Tappable onTap={this.onTabSelection.bind(this, i)} key={header.key} styles={{flex: 1}}>\n <View onLayout={this.setHeaderPositon.bind(this, i)} style={[\n this.styles.header,\n isSelected ? this.styles.activeHeader : null]}>\n {\n createSkeleton(this.theme, { root: { borderRadius: 4 }} as WmSkeletonStyles, {\n ...this.styles.root,\n width: this.styles.root?.width || \"80%\",\n height: this.styles.root?.height || this.styles.activeHeaderText?.fontSize || 16\n })\n }\n </View>\n </Tappable>\n );\n })}\n </View>\n <Animated.View style={[this.styles.activeIndicator, {\n transform: [{\n translateX: this.indicatorPosition\n }, {\n scaleX: this.indicatorWidth\n }]\n }]}></Animated.View>\n </Animated.View>\n\n )\n }\n\n renderWidget(props: WmTabheaderProps) {\n this.setPosition();\n const arrowIndicator = this.styles.arrowIndicator as any;\n return (\n <View style={{overflow: 'hidden', zIndex: 16}}>\n <Animated.View style={{\n transform: [{\n translateX: this.headerScrollPosition\n }]\n }}\n onLayout={this.setHeaderPanelPositon.bind(this)}>\n <View style={this.styles.root}>\n {this._background}\n {props.data.map((header ,i) => {\n const isSelected = i === props.selectedTabIndex ;\n return (\n <Tappable onTap={this.onTabSelection.bind(this, i)}\n {...this.getTestPropsForAction(i +'')}\n key={header.key}\n styles={this.styles.header.flexGrow ? {flexGrow: this.styles.header.flexGrow} : null}>\n <View onLayout={this.setHeaderPositon.bind(this, i)}>\n <View style={[\n this.styles.header,\n {flexGrow: undefined},\n isSelected ? this.styles.activeHeader : null]}>\n <WmIcon\n id={this.getTestId(i + 'icon')}\n styles={this.theme.mergeStyle({}, this.styles.headerIcon, isSelected ? this.styles.activeHeaderIcon : null)}\n iconclass={header.icon}></WmIcon>\n <Text numberOfLines={1} style={[\n this.styles.headerText,\n isSelected ? this.styles.activeHeaderText : null]}\n {...this.getTestPropsForLabel(i + '_title')}\n >{header.title}</Text>\n </View>\n </View>\n </Tappable>\n );\n })}\n </View>\n <Animated.View style={[this.styles.activeIndicator, {\n transform: [{\n translateX: this.indicatorPosition\n }, {\n scaleX: this.indicatorWidth\n }]\n }]}>\n <Animated.View style={[{\n transform: [{\n scaleX: this.reverseIndicatorWidth\n }]\n },\n this.styles.arrowIndicator\n ]}>\n {arrowIndicator.backgroundImage ? (<BackgroundComponent\n image={arrowIndicator.backgroundImage}\n position={arrowIndicator.backgroundPosition}\n size={arrowIndicator.backgroundSize}\n repeat={arrowIndicator.backgroundRepeat}\n resizeMode={arrowIndicator.backgroundResizeMode}\n style={{borderRadius: this.styles.root.borderRadius}}\n ></BackgroundComponent>) : null }\n <View style={this.styles.arrowIndicatorDot}></View>\n </Animated.View>\n </Animated.View>\n </Animated.View>\n </View>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -8,7 +8,6 @@ export default class WmTabheaderProps extends BaseProps {
|
|
8
8
|
_defineProperty(this, "data", []);
|
9
9
|
_defineProperty(this, "selectedTabIndex", 0);
|
10
10
|
_defineProperty(this, "onIndexChange", null);
|
11
|
-
_defineProperty(this, "shouldScroll", void 0);
|
12
11
|
}
|
13
12
|
}
|
14
13
|
//# sourceMappingURL=tabheader.props.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["BaseProps","WmTabheaderProps","constructor","args","_defineProperty"],"sources":["tabheader.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmTabheaderProps extends BaseProps {\n data: {icon: string, key: string, title: string}[] = [] as any;\n selectedTabIndex? = 0;\n onIndexChange?: (index: number) => any = null as any;\n
|
1
|
+
{"version":3,"names":["BaseProps","WmTabheaderProps","constructor","args","_defineProperty"],"sources":["tabheader.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmTabheaderProps extends BaseProps {\n data: {icon: string, key: string, title: string}[] = [] as any;\n selectedTabIndex? = 0;\n onIndexChange?: (index: number) => any = null as any;\n}"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,gBAAgB,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,eACD,EAAE;IAAAA,eAAA,2BACnC,CAAC;IAAAA,eAAA,wBACoB,IAAI;EAAA;AAC/C","ignoreList":[]}
|
@@ -234,8 +234,7 @@ export default class WmTabs extends BaseComponent {
|
|
234
234
|
styles: this.styles.tabHeader,
|
235
235
|
data: headerData,
|
236
236
|
selectedTabIndex: this.state.selectedTabIndex,
|
237
|
-
onIndexChange: this.goToTab.bind(this)
|
238
|
-
shouldScroll: props.enablescroll
|
237
|
+
onIndexChange: this.goToTab.bind(this)
|
239
238
|
}), /*#__PURE__*/React.createElement(View, {
|
240
239
|
style: [{
|
241
240
|
width: '100%',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","View","BaseComponent","BaseComponentState","SwipeAnimation","isWebPreviewMode","WmTabsProps","DEFAULT_CLASS","WmTabheader","createSkeleton","WmTabsState","constructor","args","_defineProperty","WmTabs","props","bounds","e","_this$tabLayout","activeTabIndex","state","selectedTabIndex","w","tabLayout","width","noOfTabs","tabPanes","length","lower","center","upper","onLower","onChange","onUpper","setTabLayout","event","nativeEvent","layout","forceUpdate","goToTab","setTabPaneHeights","index","_nativeEvent$nativeEv","tabPaneHeights","height","setTabShown","tabIndex","callback","tabsShown","setTimeout","updateState","addTabPane","tabPane","paneId","newIndex","i","findIndex","t","push","removeTabPane","splice","selectTabPane","indexOf","selectedTabPane","_this$tabLayout2","position","animationView","setPosition","then","prev","_this$animationView","goToLower","next","_this$animationView2","oldIndex","deselectedTab","_onDeselect","selectedTab","_onSelect","invokeEventCallback","proxy","renderSkeletonContent","Children","toArray","children","filter","item","show","headerData","map","p","title","icon","key","createElement","style","styles","root","borderBottomWidth","onLayout","bind","tabHeader","data","showskeleton","overflow","flexDirection","flexWrap","alignSelf","cloneElement","renderSkeleton","showskeletonchildren","_this$props","skeletonStyles","skeleton","text","theme","opacity","onPropertyChange","name","$new","$old","selectedIndex","getBackground","_showSkeleton","_background","renderWidget","paneicon","id","getTestId","onIndexChange","shouldScroll","enablescroll","flex","maxHeight","tabContent","enableGestures","enablegestures","alignItems","direction","ref","r","handlers","animationHandlers","undefined"],"sources":["tabs.component.tsx"],"sourcesContent":["import React from 'react';\nimport { LayoutChangeEvent, LayoutRectangle, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport * as SwipeAnimation from '@wavemaker/app-rn-runtime/gestures/swipe.animation';\nimport { isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\n\nimport WmTabsProps from './tabs.props';\nimport { DEFAULT_CLASS, WmTabsStyles } from './tabs.styles';\nimport WmTabpane from './tabpane/tabpane.component';\nimport WmTabheader from './tabheader/tabheader.component';\nimport { WmSkeletonStyles } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\n\nexport class WmTabsState extends BaseComponentState<WmTabsProps> {\n tabsShown: boolean[] = [];\n selectedTabIndex: number = 0;\n}\n\nexport default class WmTabs extends BaseComponent<WmTabsProps, WmTabsState, WmTabsStyles> {\n public tabPanes = [] as WmTabpane[];\n private newIndex = 0;\n private tabLayout: LayoutRectangle = null as any;\n private tabPaneHeights: number[] = [];\n private animationView: SwipeAnimation.View | null = null as any;\n private animationHandlers = {\n bounds: (e) => {\n const activeTabIndex = this.state.selectedTabIndex,\n w = this.tabLayout?.width || 0,\n noOfTabs = this.tabPanes.length;\n return {\n lower: -1 * (activeTabIndex - (activeTabIndex === 0 ? 0 : 1)) * w,\n center: -1 * activeTabIndex * w,\n upper: -1 * (activeTabIndex + (activeTabIndex === noOfTabs - 1 ? 0 : 1)) * w\n };\n },\n onLower: (e) => {\n this.onChange(this.state.selectedTabIndex - 1);\n },\n onUpper: (e) => {\n this.onChange(this.state.selectedTabIndex + 1);\n }\n } as SwipeAnimation.Handlers;\n\n constructor(props: WmTabsProps) {\n super(props, DEFAULT_CLASS, new WmTabsProps(), new WmTabsState());\n }\n\n setTabLayout(event: LayoutChangeEvent) {\n this.tabLayout = event.nativeEvent.layout;\n this.forceUpdate(() => {\n this.goToTab();\n });\n }\n\n setTabPaneHeights(index: number, nativeEvent: LayoutChangeEvent) {\n this.tabPaneHeights[index] = nativeEvent.nativeEvent.layout?.height;\n if (index === this.state.selectedTabIndex) {\n this.forceUpdate();\n }\n }\n\n setTabShown(tabIndex: number, callback: () => any) {\n if (!this.state.tabsShown[tabIndex]) {\n const tabsShown = [...this.state.tabsShown];\n tabsShown[tabIndex] = true;\n setTimeout(() => {\n this.updateState({\n tabsShown: tabsShown\n } as WmTabsState, callback);\n }, 300);\n } else {\n callback && callback();\n }\n }\n\n addTabPane(tabPane: WmTabpane) {\n tabPane.paneId = `tabPane${this.newIndex++}`;\n const i = this.tabPanes.findIndex(t => t.paneId === tabPane.paneId);\n if (i >= 0) {\n this.tabPanes[i] = tabPane;\n } else {\n this.tabPanes.push(tabPane)\n }\n }\n\n removeTabPane(tabPane: WmTabpane) {\n const i = this.tabPanes.findIndex(t => t.paneId === tabPane.paneId);\n if (i >= 0) {\n this.tabPanes.splice(i, 1); \n this.newIndex--;\n }\n }\n\n selectTabPane(tabPane: WmTabpane) {\n this.goToTab(this.tabPanes.indexOf(tabPane));\n }\n\n get selectedTabPane() {\n return this.tabPanes[this.state.selectedTabIndex];\n }\n\n goToTab(index = this.state.selectedTabIndex) {\n if (index < 0 || index >= this.tabPanes.length) {\n return;\n }\n const position = -1 * index * (this.tabLayout?.width || 0);\n if(this.animationView) {\n this.animationView.setPosition(position)\n .then(() => this.onChange(index));\n } else {\n this.onChange(index);\n }\n }\n\n prev() {\n this.animationView?.goToLower();\n }\n\n next() {\n this.animationView?.goToLower();\n }\n\n onChange(newIndex: number) {\n if (newIndex < 0 || newIndex >= this.tabPanes.length) {\n return;\n }\n const oldIndex = this.state.selectedTabIndex;\n const deselectedTab = this.tabPanes[this.state.selectedTabIndex];\n this.newIndex = newIndex;\n deselectedTab?._onDeselect();\n this.updateState({\n selectedTabIndex: newIndex\n } as WmTabsState, () => {\n this.setTabShown(newIndex, () => {\n const selectedTab = this.tabPanes[newIndex];\n selectedTab?._onSelect();\n this.invokeEventCallback('onChange', [{}, this.proxy, newIndex, oldIndex]);\n });\n });\n }\n\n public renderSkeletonContent(props: WmTabsProps) {\n const tabPanes = React.Children.toArray(this.props.children)\n .filter((item: any, index: number) => item.props.show != false);\n const headerData = tabPanes.map((p: any, i: number) =>\n ({title: p.props.title || 'Tab Title', icon: '', key: `tab-${p.props.title}-${i}`}));\n return(\n <View style={[this.styles.root, { borderBottomWidth: 0}]}>\n <View onLayout={this.setTabLayout.bind(this)} style={{width: '100%'}}></View>\n <WmTabheader\n styles={this.styles.tabHeader}\n data={headerData}\n showskeleton={this.props.showskeleton}\n selectedTabIndex={this.state.selectedTabIndex}\n ></WmTabheader>\n <View\n //{...this.panResponder.panHandlers}\n style={{\n width: '100%',\n //height: this.tabPaneHeights[this.state.selectedTabIndex],\n overflow: 'hidden'\n }} >\n <View style={{\n flexDirection: 'row',\n flexWrap: 'nowrap'\n }}>\n {tabPanes.map((p: any, i) => {\n return (\n <View\n key={`tab-${p.props.title}-${i}`}\n style={{width: '100%', alignSelf: 'flex-start'}}\n onLayout={this.setTabPaneHeights.bind(this, i)}>\n {/* {this.state.tabsShown[i] ? p : null} */}\n {React.cloneElement(p, { \"invokeVariables\": false })}\n {/* {p} */}\n </View>);\n })}\n </View>\n </View>\n </View>\n )\n }\n\n public renderSkeleton(props: WmTabsProps){\n if(!props.showskeletonchildren) {\n const skeletonStyles: WmSkeletonStyles = this.props?.styles?.skeleton || { root: {}, text: {} } as WmSkeletonStyles\n return createSkeleton(this.theme, skeletonStyles, {\n ...this.styles.root\n }, (<View style={[this.styles.root, { opacity: 0 }]}>\n {this.renderSkeletonContent(props)}\n </View>)) \n }\n return this.renderSkeletonContent(props);\n }\n\n public onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case \"defaultpaneindex\":\n const selectedIndex = $new || 0;\n const tabsShown: boolean[] = [];\n tabsShown[selectedIndex] = true;\n this.updateState({\n selectedTabIndex: selectedIndex,\n tabsShown: tabsShown\n } as WmTabsState);\n }\n }\n\n getBackground(): React.JSX.Element | null {\n return this._showSkeleton ? null : this._background\n } \n\n\n renderWidget(props: WmTabsProps) {\n const tabPanes = React.Children.toArray(props.children)\n .filter((item: any, index: number) => item.props.show != false);\n const headerData = tabPanes.map((p: any, i: number) =>\n ({title: p.props.title || 'Tab Title', icon: p.props.paneicon || '', key: `tab-${p.props.title}-${i}`}));\n const styles = this._showSkeleton ? {\n ...this.styles.root,\n ...this.styles.skeleton.root\n } : this.styles.root\n return (\n <View style={styles}>\n {this.getBackground()}\n <View onLayout={this.setTabLayout.bind(this)} style={{width: '100%'}}></View>\n <WmTabheader\n id={this.getTestId('headers')}\n styles={this.styles.tabHeader}\n data={headerData}\n selectedTabIndex={this.state.selectedTabIndex}\n onIndexChange={this.goToTab.bind(this)}\n shouldScroll={props.enablescroll}\n ></WmTabheader>\n <View\n style={[{\n width: '100%',\n flex: 1\n }, this.styles.root.height ?\n (isWebPreviewMode() ? {'overflowX': 'hidden','overflowY': 'auto'} as any : {overflow: 'scroll'})\n : {\n overflow: 'hidden',\n maxHeight: this.tabPaneHeights[this.state.selectedTabIndex],\n }, this.styles.tabContent]} >\n <SwipeAnimation.View\n enableGestures={props.enablegestures}\n style={{\n flexDirection: 'row',\n flexWrap: 'nowrap',\n alignItems: 'flex-start'\n }}\n direction='horizontal'\n ref={(r) => {this.animationView = r}}\n handlers = {this.animationHandlers}\n >\n {tabPanes.map((p: any, i) => {\n return (\n <View\n key={`tab-${p.props.title}-${i}`}\n style={{\n width: '100%',\n height: this.styles.root.height ? undefined : 1000000,\n alignSelf: 'flex-start'}}>\n <View\n style={{width: '100%', alignSelf: 'flex-start'}}\n onLayout={this.setTabPaneHeights.bind(this, i)}>\n {/* {this.state.tabsShown[i] ? p : null} */}\n {p}\n </View>\n </View>);\n })}\n </SwipeAnimation.View>\n </View>\n </View>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","View","BaseComponent","BaseComponentState","SwipeAnimation","isWebPreviewMode","WmTabsProps","DEFAULT_CLASS","WmTabheader","createSkeleton","WmTabsState","constructor","args","_defineProperty","WmTabs","props","bounds","e","_this$tabLayout","activeTabIndex","state","selectedTabIndex","w","tabLayout","width","noOfTabs","tabPanes","length","lower","center","upper","onLower","onChange","onUpper","setTabLayout","event","nativeEvent","layout","forceUpdate","goToTab","setTabPaneHeights","index","_nativeEvent$nativeEv","tabPaneHeights","height","setTabShown","tabIndex","callback","tabsShown","setTimeout","updateState","addTabPane","tabPane","paneId","newIndex","i","findIndex","t","push","removeTabPane","splice","selectTabPane","indexOf","selectedTabPane","_this$tabLayout2","position","animationView","setPosition","then","prev","_this$animationView","goToLower","next","_this$animationView2","oldIndex","deselectedTab","_onDeselect","selectedTab","_onSelect","invokeEventCallback","proxy","renderSkeletonContent","Children","toArray","children","filter","item","show","headerData","map","p","title","icon","key","createElement","style","styles","root","borderBottomWidth","onLayout","bind","tabHeader","data","showskeleton","overflow","flexDirection","flexWrap","alignSelf","cloneElement","renderSkeleton","showskeletonchildren","_this$props","skeletonStyles","skeleton","text","theme","opacity","onPropertyChange","name","$new","$old","selectedIndex","getBackground","_showSkeleton","_background","renderWidget","paneicon","id","getTestId","onIndexChange","flex","maxHeight","tabContent","enableGestures","enablegestures","alignItems","direction","ref","r","handlers","animationHandlers","undefined"],"sources":["tabs.component.tsx"],"sourcesContent":["import React from 'react';\nimport { LayoutChangeEvent, LayoutRectangle, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport * as SwipeAnimation from '@wavemaker/app-rn-runtime/gestures/swipe.animation';\nimport { isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\n\nimport WmTabsProps from './tabs.props';\nimport { DEFAULT_CLASS, WmTabsStyles } from './tabs.styles';\nimport WmTabpane from './tabpane/tabpane.component';\nimport WmTabheader from './tabheader/tabheader.component';\nimport { WmSkeletonStyles } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\n\nexport class WmTabsState extends BaseComponentState<WmTabsProps> {\n tabsShown: boolean[] = [];\n selectedTabIndex: number = 0;\n}\n\nexport default class WmTabs extends BaseComponent<WmTabsProps, WmTabsState, WmTabsStyles> {\n public tabPanes = [] as WmTabpane[];\n private newIndex = 0;\n private tabLayout: LayoutRectangle = null as any;\n private tabPaneHeights: number[] = [];\n private animationView: SwipeAnimation.View | null = null as any;\n private animationHandlers = {\n bounds: (e) => {\n const activeTabIndex = this.state.selectedTabIndex,\n w = this.tabLayout?.width || 0,\n noOfTabs = this.tabPanes.length;\n return {\n lower: -1 * (activeTabIndex - (activeTabIndex === 0 ? 0 : 1)) * w,\n center: -1 * activeTabIndex * w,\n upper: -1 * (activeTabIndex + (activeTabIndex === noOfTabs - 1 ? 0 : 1)) * w\n };\n },\n onLower: (e) => {\n this.onChange(this.state.selectedTabIndex - 1);\n },\n onUpper: (e) => {\n this.onChange(this.state.selectedTabIndex + 1);\n }\n } as SwipeAnimation.Handlers;\n\n constructor(props: WmTabsProps) {\n super(props, DEFAULT_CLASS, new WmTabsProps(), new WmTabsState());\n }\n\n setTabLayout(event: LayoutChangeEvent) {\n this.tabLayout = event.nativeEvent.layout;\n this.forceUpdate(() => {\n this.goToTab();\n });\n }\n\n setTabPaneHeights(index: number, nativeEvent: LayoutChangeEvent) {\n this.tabPaneHeights[index] = nativeEvent.nativeEvent.layout?.height;\n if (index === this.state.selectedTabIndex) {\n this.forceUpdate();\n }\n }\n\n setTabShown(tabIndex: number, callback: () => any) {\n if (!this.state.tabsShown[tabIndex]) {\n const tabsShown = [...this.state.tabsShown];\n tabsShown[tabIndex] = true;\n setTimeout(() => {\n this.updateState({\n tabsShown: tabsShown\n } as WmTabsState, callback);\n }, 300);\n } else {\n callback && callback();\n }\n }\n\n addTabPane(tabPane: WmTabpane) {\n tabPane.paneId = `tabPane${this.newIndex++}`;\n const i = this.tabPanes.findIndex(t => t.paneId === tabPane.paneId);\n if (i >= 0) {\n this.tabPanes[i] = tabPane;\n } else {\n this.tabPanes.push(tabPane)\n }\n }\n\n removeTabPane(tabPane: WmTabpane) {\n const i = this.tabPanes.findIndex(t => t.paneId === tabPane.paneId);\n if (i >= 0) {\n this.tabPanes.splice(i, 1); \n this.newIndex--;\n }\n }\n\n selectTabPane(tabPane: WmTabpane) {\n this.goToTab(this.tabPanes.indexOf(tabPane));\n }\n\n get selectedTabPane() {\n return this.tabPanes[this.state.selectedTabIndex];\n }\n\n goToTab(index = this.state.selectedTabIndex) {\n if (index < 0 || index >= this.tabPanes.length) {\n return;\n }\n const position = -1 * index * (this.tabLayout?.width || 0);\n if(this.animationView) {\n this.animationView.setPosition(position)\n .then(() => this.onChange(index));\n } else {\n this.onChange(index);\n }\n }\n\n prev() {\n this.animationView?.goToLower();\n }\n\n next() {\n this.animationView?.goToLower();\n }\n\n onChange(newIndex: number) {\n if (newIndex < 0 || newIndex >= this.tabPanes.length) {\n return;\n }\n const oldIndex = this.state.selectedTabIndex;\n const deselectedTab = this.tabPanes[this.state.selectedTabIndex];\n this.newIndex = newIndex;\n deselectedTab?._onDeselect();\n this.updateState({\n selectedTabIndex: newIndex\n } as WmTabsState, () => {\n this.setTabShown(newIndex, () => {\n const selectedTab = this.tabPanes[newIndex];\n selectedTab?._onSelect();\n this.invokeEventCallback('onChange', [{}, this.proxy, newIndex, oldIndex]);\n });\n });\n }\n\n public renderSkeletonContent(props: WmTabsProps) {\n const tabPanes = React.Children.toArray(this.props.children)\n .filter((item: any, index: number) => item.props.show != false);\n const headerData = tabPanes.map((p: any, i: number) =>\n ({title: p.props.title || 'Tab Title', icon: '', key: `tab-${p.props.title}-${i}`}));\n return(\n <View style={[this.styles.root, { borderBottomWidth: 0}]}>\n <View onLayout={this.setTabLayout.bind(this)} style={{width: '100%'}}></View>\n <WmTabheader\n styles={this.styles.tabHeader}\n data={headerData}\n showskeleton={this.props.showskeleton}\n selectedTabIndex={this.state.selectedTabIndex}\n ></WmTabheader>\n <View\n //{...this.panResponder.panHandlers}\n style={{\n width: '100%',\n //height: this.tabPaneHeights[this.state.selectedTabIndex],\n overflow: 'hidden'\n }} >\n <View style={{\n flexDirection: 'row',\n flexWrap: 'nowrap'\n }}>\n {tabPanes.map((p: any, i) => {\n return (\n <View\n key={`tab-${p.props.title}-${i}`}\n style={{width: '100%', alignSelf: 'flex-start'}}\n onLayout={this.setTabPaneHeights.bind(this, i)}>\n {/* {this.state.tabsShown[i] ? p : null} */}\n {React.cloneElement(p, { \"invokeVariables\": false })}\n {/* {p} */}\n </View>);\n })}\n </View>\n </View>\n </View>\n )\n }\n\n public renderSkeleton(props: WmTabsProps){\n if(!props.showskeletonchildren) {\n const skeletonStyles: WmSkeletonStyles = this.props?.styles?.skeleton || { root: {}, text: {} } as WmSkeletonStyles\n return createSkeleton(this.theme, skeletonStyles, {\n ...this.styles.root\n }, (<View style={[this.styles.root, { opacity: 0 }]}>\n {this.renderSkeletonContent(props)}\n </View>)) \n }\n return this.renderSkeletonContent(props);\n }\n\n public onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case \"defaultpaneindex\":\n const selectedIndex = $new || 0;\n const tabsShown: boolean[] = [];\n tabsShown[selectedIndex] = true;\n this.updateState({\n selectedTabIndex: selectedIndex,\n tabsShown: tabsShown\n } as WmTabsState);\n }\n }\n\n getBackground(): React.JSX.Element | null {\n return this._showSkeleton ? null : this._background\n } \n\n\n renderWidget(props: WmTabsProps) {\n const tabPanes = React.Children.toArray(props.children)\n .filter((item: any, index: number) => item.props.show != false);\n const headerData = tabPanes.map((p: any, i: number) =>\n ({title: p.props.title || 'Tab Title', icon: p.props.paneicon || '', key: `tab-${p.props.title}-${i}`}));\n const styles = this._showSkeleton ? {\n ...this.styles.root,\n ...this.styles.skeleton.root\n } : this.styles.root\n return (\n <View style={styles}>\n {this.getBackground()}\n <View onLayout={this.setTabLayout.bind(this)} style={{width: '100%'}}></View>\n <WmTabheader\n id={this.getTestId('headers')}\n styles={this.styles.tabHeader}\n data={headerData}\n selectedTabIndex={this.state.selectedTabIndex}\n onIndexChange={this.goToTab.bind(this)}\n ></WmTabheader>\n <View\n style={[{\n width: '100%',\n flex: 1\n }, this.styles.root.height ?\n (isWebPreviewMode() ? {'overflowX': 'hidden','overflowY': 'auto'} as any : {overflow: 'scroll'})\n : {\n overflow: 'hidden',\n maxHeight: this.tabPaneHeights[this.state.selectedTabIndex],\n }, this.styles.tabContent]} >\n <SwipeAnimation.View\n enableGestures={props.enablegestures}\n style={{\n flexDirection: 'row',\n flexWrap: 'nowrap',\n alignItems: 'flex-start'\n }}\n direction='horizontal'\n ref={(r) => {this.animationView = r}}\n handlers = {this.animationHandlers}\n >\n {tabPanes.map((p: any, i) => {\n return (\n <View\n key={`tab-${p.props.title}-${i}`}\n style={{\n width: '100%',\n height: this.styles.root.height ? undefined : 1000000,\n alignSelf: 'flex-start'}}>\n <View\n style={{width: '100%', alignSelf: 'flex-start'}}\n onLayout={this.setTabPaneHeights.bind(this, i)}>\n {/* {this.state.tabsShown[i] ? p : null} */}\n {p}\n </View>\n </View>);\n })}\n </SwipeAnimation.View>\n </View>\n </View>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -8,7 +8,6 @@ export default class WmTabsProps extends BaseProps {
|
|
8
8
|
_defineProperty(this, "children", void 0);
|
9
9
|
_defineProperty(this, "defaultpaneindex", 0);
|
10
10
|
_defineProperty(this, "enablegestures", true);
|
11
|
-
_defineProperty(this, "enablescroll", false);
|
12
11
|
}
|
13
12
|
}
|
14
13
|
//# sourceMappingURL=tabs.props.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["BaseProps","WmTabsProps","constructor","args","_defineProperty"],"sources":["tabs.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmTabsProps extends BaseProps {\n children?: any;\n defaultpaneindex?: number = 0;\n enablegestures? = true;\n
|
1
|
+
{"version":3,"names":["BaseProps","WmTabsProps","constructor","args","_defineProperty"],"sources":["tabs.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class WmTabsProps extends BaseProps {\n children?: any;\n defaultpaneindex?: number = 0;\n enablegestures? = true;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,WAAW,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;IAAAA,eAAA,2BAErB,CAAC;IAAAA,eAAA,yBACX,IAAI;EAAA;AACxB","ignoreList":[]}
|
@@ -198,11 +198,11 @@ export default class WmWizard extends BaseComponent {
|
|
198
198
|
style: isActiveStep ? [this.styles.activeStep, this.styles.activeStepCounter] : this.styles.stepCounter
|
199
199
|
}, this.getTestPropsForLabel('step' + (index + 1) + '_indicator')), index + 1), (index < this.state.currentStep || this.state.isDone) && /*#__PURE__*/React.createElement(WmIcon, {
|
200
200
|
id: this.getTestId('status'),
|
201
|
-
styles:
|
201
|
+
styles: merge({}, this.styles.stepIcon, {
|
202
202
|
icon: {
|
203
203
|
color: this.styles.activeStep.color
|
204
204
|
}
|
205
|
-
})
|
205
|
+
}),
|
206
206
|
iconclass: item.state.props.iconclass || 'wm-sl-l sl-check'
|
207
207
|
})) : /*#__PURE__*/React.createElement(WmLabel, {
|
208
208
|
showskeleton: true,
|