@wavemaker-ai/app-rn-runtime 12.0.1-rc.338 → 12.0.1-rc.647767

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.
Files changed (80) hide show
  1. package/components/advanced/carousel/carousel.component.js +1 -1
  2. package/components/advanced/carousel/carousel.component.js.map +1 -1
  3. package/components/basic/label/label.component.js +11 -1
  4. package/components/basic/label/label.component.js.map +1 -1
  5. package/components/basic/label/label.props.js +1 -0
  6. package/components/basic/label/label.props.js.map +1 -1
  7. package/components/chart/area-chart/area-chart.component.js +1 -1
  8. package/components/chart/area-chart/area-chart.component.js.map +1 -1
  9. package/components/chart/bar-chart/bar-chart.component.js +1 -1
  10. package/components/chart/bar-chart/bar-chart.component.js.map +1 -1
  11. package/components/chart/bubble-chart/bubble-chart.component.js +1 -1
  12. package/components/chart/bubble-chart/bubble-chart.component.js.map +1 -1
  13. package/components/chart/line-chart/line-chart.component.js +1 -1
  14. package/components/chart/line-chart/line-chart.component.js.map +1 -1
  15. package/components/chart/pie-chart/pie-chart.component.js +1 -1
  16. package/components/chart/pie-chart/pie-chart.component.js.map +1 -1
  17. package/components/chart/stack-chart/stack-chart.component.js +1 -1
  18. package/components/chart/stack-chart/stack-chart.component.js.map +1 -1
  19. package/components/container/accordion/accordionpane/accordionpane.component.js +2 -2
  20. package/components/container/accordion/accordionpane/accordionpane.component.js.map +1 -1
  21. package/components/container/container.component.js +1 -1
  22. package/components/container/container.component.js.map +1 -1
  23. package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js +7 -3
  24. package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js.map +1 -1
  25. package/components/container/panel/panel.component.js +1 -1
  26. package/components/container/panel/panel.component.js.map +1 -1
  27. package/components/container/tabs/tabpane/tabpane.component.js +1 -1
  28. package/components/container/tabs/tabpane/tabpane.component.js.map +1 -1
  29. package/components/container/wizard/wizardstep/wizardstep.component.js +1 -1
  30. package/components/container/wizard/wizardstep/wizardstep.component.js.map +1 -1
  31. package/components/data/form/form-field/form-field.component.js +20 -3
  32. package/components/data/form/form-field/form-field.component.js.map +1 -1
  33. package/components/data/form/form-field/form-field.props.js +2 -1
  34. package/components/data/form/form-field/form-field.props.js.map +1 -1
  35. package/components/data/form/form.component.js +7 -2
  36. package/components/data/form/form.component.js.map +1 -1
  37. package/components/data/form/form.props.js +1 -0
  38. package/components/data/form/form.props.js.map +1 -1
  39. package/components/data/list/list.component.js +1 -1
  40. package/components/data/list/list.component.js.map +1 -1
  41. package/components/input/baseinput/baseinput.component.js +2 -0
  42. package/components/input/baseinput/baseinput.component.js.map +1 -1
  43. package/components/input/basenumber/basenumber.props.js +1 -0
  44. package/components/input/basenumber/basenumber.props.js.map +1 -1
  45. package/components/input/calendar/calendar.component.js +1 -1
  46. package/components/input/calendar/calendar.component.js.map +1 -1
  47. package/components/input/checkboxset/checkboxset.component.js +1 -1
  48. package/components/input/checkboxset/checkboxset.component.js.map +1 -1
  49. package/components/input/chips/chips.component.js +1 -1
  50. package/components/input/chips/chips.component.js.map +1 -1
  51. package/components/input/chips/chips.props.js +1 -0
  52. package/components/input/chips/chips.props.js.map +1 -1
  53. package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js +6 -1
  54. package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js.map +1 -1
  55. package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js +6 -1
  56. package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js.map +1 -1
  57. package/components/input/radioset/radioset.component.js +2 -2
  58. package/components/input/radioset/radioset.component.js.map +1 -1
  59. package/components/input/text/text.component.js +1 -0
  60. package/components/input/text/text.component.js.map +1 -1
  61. package/components/page/left-panel/left-panel.component.js +1 -1
  62. package/components/page/left-panel/left-panel.component.js.map +1 -1
  63. package/core/AppConfig.js.map +1 -1
  64. package/core/base.component.js +23 -0
  65. package/core/base.component.js.map +1 -1
  66. package/core/components/textinput.component.js +2 -1
  67. package/core/components/textinput.component.js.map +1 -1
  68. package/core/environment.js +25 -0
  69. package/core/environment.js.map +1 -0
  70. package/npm-shrinkwrap.json +79 -80
  71. package/package-lock.json +79 -80
  72. package/package.json +2 -2
  73. package/runtime/App.js +1 -0
  74. package/runtime/App.js.map +1 -1
  75. package/runtime/base-fragment.component.js +28 -5
  76. package/runtime/base-fragment.component.js.map +1 -1
  77. package/runtime/base-page.component.js +2 -1
  78. package/runtime/base-page.component.js.map +1 -1
  79. package/styles/theme.js +41 -12
  80. package/styles/theme.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["React","ActivityIndicator","SectionList","Text","View","FlatList","Dimensions","Platform","isArray","isEmpty","isNil","isNumber","BaseComponent","BaseComponentState","getGroupedData","getNumberOfEmptyObjects","isDefined","getNumberOfColumnsFromResponsiveConfig","Tappable","DefaultKeyExtractor","WmLabel","WmIcon","Swipeable","_viewPort","EVENTS","ViewPortEvents","WmListProps","DEFAULT_CLASS","LIST_TEMPLATE_DEFAULT_CLASS","BackgroundComponent","isAutoLayout","checkAutoLayout","getContentContainerStyle","getDirectionStyle","getDimensionStyle","extractAutoLayoutProps","WmListState","constructor","args","_defineProperty","WmList","props","get","width","leftActionTemplate","createElement","Fragment","getTemplate","rightActionTemplate","updateState","groupedData","item","dataset","state","onSelect","index","indexOf","multiselect","selectedItems","selectedItem","selecteditem","selectedItemIndex","splice","invokeEventCallback","proxy","widgetname","itemWidgets","length","map","filter","widget","undefined","selectedindex","groupKey","itemIndex","refKey","flatListRefs","scrollToIndex","animated","isHorizontal","vData","nodatamessage","ondemandmessage","hasMoreData","children","style","_extends","getListTemplateWidth","maxRecordsToShow","pagesize","cleanup","push","subscribe","SIZE_CHANGE","newDim","screenWidth","forceUpdate","isSelected","$item","$index","$event","disableitemselect","eventName","disableitem","selectionlimit","selectedItemWidgets","direction","_this$state$groupedDa","forEach","group","data","includes","key","Promise","resolve","horizontalscrolltoitem","scrollToItem","loadDataOnDemand","navigation","loadData","loadingData","setTimeout","$list","loadingdata","getNextPageData","currentPage","then","last","catch","err","console","error","selectFirstItem","initialized","groupby","deselectAll","setGroupData","items","dataItems","match","orderby","dateformat","_this$keyExtractor","keyExtractor","clear","onPropertyChange","name","$new","$old","orderbyData","_this$keyExtractor2","_this$keyExtractor3","selectfirstitem","pop","selectItem","componentDidMount","_props$dataset","event","_event$nativeEvent","_event$nativeEvent2","_event$nativeEvent3","scrollPosition","nativeEvent","contentOffset","y","contentHeight","contentSize","height","viewportHeight","layoutMeasurement","threshold","isVisible","scrolledToEnd","componentDidUpdate","prevProps","prevState","snapshot","triggeronrenderwhenhidden","showView","getDefaultStyles","theme","getStyle","defaultClass","getIndex","generateItemKey","itemkey","_showSkeleton","getKey","getFlatListData","groupData","_ref","numberofskeletonitems","horizontalondemandenabled","slice","renderItem","_this$styles$columnWr","_this$styles","cols","getNoOfColumns","isWrap","wrap","styles","skeleton","root","containerStyle","columnGap","columnWrapper","gap","isNaN","totalGap","availableWidth","Math","round","flex","shouldswipe","minWidth","itemclass","backgroundImage","image","position","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","borderRadius","getTestPropsForAction","disableTouchEffect","disabletoucheffect","onTap","onLongTap","onDoubleTap","display","flexDirection","paddingRight","marginRight","margin","itemContainer","OS","id","getTestId","iconclass","selectedIcon","renderLeftActions","renderRightActions","selecteditemicon","renderHeader","title","groupHeading","accessibilityRole","iconurl","subheading","heading","listIcon","caption","accessibilityrole","renderEmptyMessage","emptyMessage","renderLoadingIcon","loadingicon","loadingiconurl","loadingIcon","loadingdatamsg","color","text","responsive","columns","itemsperrow","fallback","xs","findListTemplateInChildren","nodes","componentNode","node","instance","nested","_listTemplate$props","listTemplate","onLayoutChange","e","renderWithFlatList","hasExplicitAutoLayout","alignment","columngap","Boolean","listAutoLayoutProps","listDirectionStyle","listContentStyle","fullWidthStyle","userClass","classname","trim","cascadeRoot","listOuterStyle","mergeStyle","groupStyle","flatListStyle","onLayout","v","i","ref","CellRendererComponent","renderCustomCell","testID","scrollEnabled","horizontal","contentContainerStyle","listContainer","ListEmptyComponent","itemInfo","showsHorizontalScrollIndicator","hidehorizontalscrollbar","numColumns","columnWrapperStyle","onDemandMessage","getCaption","getSectionListData","_ref2","section","renderWithSectionList","sections","renderSectionHeader","renderSectionFooter","renderWidget","_this$parent","alProps","parent","listDir","hasAutoLayout","outerStyle","handleLayout","_background"],"sources":["list.component.tsx"],"sourcesContent":["import React from 'react';\nimport { ActivityIndicator, SectionList, Text, View, FlatList, LayoutChangeEvent, TouchableOpacity, Dimensions, ViewStyle, Platform } from 'react-native';\nimport { isArray, isEmpty, isNil, isNumber, round } from 'lodash-es';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { getGroupedData, getNumberOfEmptyObjects, isDefined } from \"@wavemaker-ai/app-rn-runtime/core/utils\";\nimport { getNumberOfColumnsFromResponsiveConfig } from '@wavemaker-ai/app-rn-runtime/core/responsive.utils';\nimport { Tappable } from '@wavemaker-ai/app-rn-runtime/core/tappable.component';\nimport { DefaultKeyExtractor } from '@wavemaker-ai/app-rn-runtime/core/key.extractor';\nimport WmLabel from '@wavemaker-ai/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker-ai/app-rn-runtime/components/basic/icon/icon.component';\nimport { Swipeable } from 'react-native-gesture-handler';\nimport WmListActionTemplate from './list-action-template/list-action-template.component';\nimport { DEVICE_BREAK_POINTS } from '@wavemaker-ai/app-rn-runtime/styles/theme';\nimport _viewPort, { EVENTS as ViewPortEvents } from '@wavemaker-ai/app-rn-runtime/core/viewport';\n\nimport WmListProps from './list.props';\nimport { DEFAULT_CLASS, WmListStyles } from './list.styles';\nimport { DEFAULT_CLASS as LIST_TEMPLATE_DEFAULT_CLASS } from './list-template/list-template.styles';\nimport { WmComponentNode } from '@wavemaker-ai/app-rn-runtime/core/wm-component-tree';\nimport { BackgroundComponent } from '@wavemaker-ai/app-rn-runtime/styles/background.component';\nimport {\n AutoLayoutProps,\n isAutoLayout as checkAutoLayout,\n getContentContainerStyle,\n getDirectionStyle,\n getDimensionStyle,\n extractAutoLayoutProps,\n} from '@wavemaker-ai/app-rn-runtime/core/auto-layout.utils';\n\n\nexport class WmListState extends BaseComponentState<WmListProps> {\n public selectedindex: any;\n groupedData: Array<any> = [];\n currentPage = 1;\n maxRecordsToShow = 20;\n loadingData = true;\n}\n\nexport default class WmList extends BaseComponent<WmListProps, WmListState, WmListStyles> {\n\n private itemWidgets = [] as any[];\n private selectedItemWidgets = {} as any;\n private keyExtractor = new DefaultKeyExtractor();\n //private endThreshold = -1;\n // private loadingData = false;\n private hasMoreData = true;\n public leftActionTemplate?: WmListActionTemplate;\n public rightActionTemplate?: WmListActionTemplate;\n private flatListRefs: any = {};\n private selectedItems = [] as any[];\n private scrolledToEnd: boolean = false;\n private screenWidth = Dimensions.get(\"window\").width;\n\n\n\n constructor(props: WmListProps) {\n\n super(props, DEFAULT_CLASS, new WmListProps(), new WmListState());\n this.updateState({\n maxRecordsToShow: this.state.props.pagesize\n } as WmListState);\n\n // Subscribe to viewport changes to re-render when screen size changes\n this.cleanup.push(_viewPort.subscribe(ViewPortEvents.SIZE_CHANGE, (newDim: { width: number}) => {\n this.screenWidth = newDim.width;\n this.forceUpdate();\n }));\n\n\n }\n\n private isSelected($item: any) {\n const selectedItem = this.state.props.selecteditem;\n if (isArray(selectedItem)) {\n return selectedItem.indexOf($item) >= 0;\n }\n return selectedItem === $item;\n }\n\n private async onSelect($item: any, $index: number | string, $event?: any) {\n if(this.state.props.disableitemselect) {\n return;\n }\n\n const props = this.state.props;\n let selectedItem = null as any;\n let eventName = 'onSelect';\n if (props.disableitem !== true\n && (typeof props.disableitem !== 'function' || !props.disableitem($item, $index))) {\n if (props.multiselect) {\n selectedItem = [...(props.selecteditem || [])];\n const index = selectedItem.indexOf($item);\n if (index < 0) {\n if ((!props.selectionlimit)\n || props.selectionlimit < 0\n || selectedItem.length < props.selectionlimit) {\n selectedItem.push($item);\n } else {\n this.invokeEventCallback('onSelectionlimitexceed', [null, this]);\n }\n } else {\n selectedItem.splice(index, 1);\n eventName = 'onDeselect';\n }\n } else {\n this.state.props.selecteditem && this.invokeEventCallback('onDeselect', [this.proxy, this.state.props.selecteditem]);\n selectedItem = $item;\n }\n this.selectedItems = selectedItem;\n this.selectedItemWidgets = this.itemWidgets[$index as number];\n let groupKey: string | null = null;\n\n if (props.direction === 'row') {\n this.state.groupedData?.forEach((group) => {\n if (group.data.includes($item)) {\n groupKey = group.key;\n }\n });\n }\n\n return new Promise(resolve => {\n this.updateState({\n props: { selecteditem: selectedItem },\n selectedindex: $index\n } as WmListState, () => {\n if (props.direction === 'row' && props.horizontalscrolltoitem) {\n this.scrollToItem(groupKey, $index as number);\n }\n this.invokeEventCallback(eventName, [this.proxy, $item]);\n $event && this.invokeEventCallback('onTap', [$event, this.proxy]);\n resolve(null);\n });\n });\n\n } else {\n return Promise.resolve(null);\n }\n }\n\n private get loadDataOnDemand() {\n const navigation = this.state.props.navigation;\n return navigation === 'Scroll' || navigation === 'On-Demand';\n }\n\n renderLeftActions = () => {\n return this.leftActionTemplate ? (\n <>\n {this.leftActionTemplate.getTemplate()}\n </>\n ) : null;\n };\n\n renderRightActions = () => {\n return this.rightActionTemplate ? (\n <>\n {this.rightActionTemplate.getTemplate()}\n </>\n ) : null;\n };\n\n private loadData() {\n if (this.state.loadingData || !this.hasMoreData) {\n\n return;\n }\n if (isArray(this.state.props.dataset)\n && this.state.props.dataset.length > this.state.maxRecordsToShow) {\n this.updateState({\n loadingData: true,\n maxRecordsToShow: this.state.maxRecordsToShow + this.state.props.pagesize\n } as WmListState);\n setTimeout(() => {\n // Force a re-render by making a small state update\n this.updateState({\n loadingData: false,\n } as WmListState);\n }, 100);\n } else if (this.loadDataOnDemand) {\n const $list = this.proxy as any;\n $list.loadingdata = true;\n // Set loading state via updateState\n this.updateState({\n loadingData: true\n } as WmListState);\n this.props.getNextPageData && this.props.getNextPageData(null, this.proxy, this.state.currentPage + 1).then((data) => {\n if (isArray(data) && data.length > 0\n && isArray(this.state.props.dataset)) {\n $list.dataset = [...this.state.props.dataset, ...data];\n this.updateState({\n currentPage: this.state.currentPage + 1,\n maxRecordsToShow: this.state.maxRecordsToShow + this.state.props.pagesize,\n } as WmListState);\n this.hasMoreData = true;\n if((data as any)?.last === true) {\n this.hasMoreData = false;\n }\n\n } else {\n this.hasMoreData = false;\n }\n }).catch((err) => {\n console.error(err);\n }).then(() => {\n setTimeout(() => {\n $list.loadingdata = false;\n\n }, 1000);\n });\n }\n }\n\n private selectFirstItem() {\n const props = this.state.props;\n if (this.initialized\n && props.dataset\n && props.dataset.length) {\n const index = props.groupby ? '00' : 0;\n this.onSelect(props.dataset[0], index);\n }\n }\n\n clear = () => {\n this.updateState({\n groupedData: {},\n } as WmListState);\n }\n\n selectItem = (item: number | object) => {\n const dataset = this.state.props.dataset;\n if (isNumber(item)) {\n this.onSelect(dataset[item], item);\n }\n else {\n let index = dataset.indexOf(item);\n this.onSelect(dataset[index], index);\n }\n }\n\n getSelectedItems = () => {\n if (!this.props.multiselect) {\n return [this.selectedItems]\n }\n return this.selectedItems;\n }\n\n getItem = (index: number) => {\n const props = this.state.props;\n return this.props.dataset[index]\n }\n\n deselectItem = (item: number | object) => {\n const props = this.state.props;\n let selectedItem = props.selecteditem || null;\n let index = isNumber(item) ? item : props.dataset.indexOf(item);\n if (props.multiselect && index >= 0) {\n selectedItem = [...(props.selecteditem || [])];\n let selectedItemIndex = selectedItem.indexOf(props.dataset[index])\n if (selectedItemIndex >= 0) {\n selectedItem.splice(selectedItemIndex, 1);\n }\n }\n else {\n if (props.selecteditem === props.dataset[index]) {\n selectedItem = null;\n }\n }\n this.updateState({\n props: { selecteditem: selectedItem },\n\n } as WmListState, () => {\n this.invokeEventCallback('onDeselect', [this.proxy, item]);\n });\n }\n\n getWidgets = (widgetname: string, index: number) => {\n if(index >= 0 && index < this.itemWidgets.length){\n return this.itemWidgets[index][widgetname]\n }\n else {\n return this.itemWidgets.map(item => item[widgetname]).filter(widget => widget !== undefined);\n }\n }\n\n selectAll = () => {\n const props = this.state.props;\n const dataset = props.dataset;\n if (!props.multiselect || !isArray(dataset) || dataset.length === 0) {\n return;\n }\n const selectedItems = [...dataset];\n\n this.updateState({\n props: { selecteditem: selectedItems },\n selectedindex: -1\n } as WmListState);\n }\n\n private deselectAll() {\n this.updateState({\n props: { selecteditem: null },\n selectedindex: -1\n } as WmListState);\n }\n\n setGroupData(items: any) {\n const dataItems = items;\n const props = this.state.props;\n if (props.groupby) {\n const groupedData = dataItems && getGroupedData(dataItems, props.groupby, props.match, props.orderby, props.dateformat, this);\n this.updateState({\n groupedData: groupedData\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n }\n\n public onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n switch (name) {\n case 'selectfirstitem':\n if ($new) {\n this.selectFirstItem();\n }\n break;\n case 'dataset':\n if (this.state.props.groupby) {\n this.setGroupData($new);\n } else {\n if (!($old && $old.length)\n && $new && $new.length\n && this.loadDataOnDemand) {\n this.updateState({\n props: {\n dataset: [...$new]\n }\n } as WmListState);\n }\n const data = isArray($new) ? $new : (!isEmpty($new) && isDefined($new) ? [$new] : []);\n if (props.orderby) {\n const orderbyData = data && getGroupedData(data, props.groupby, props.match, props.orderby, props.dateformat, this);\n this.updateState({\n groupedData: (orderbyData[0] ? [{\n key: 'key',\n data: orderbyData[0].data\n }] : [])\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n } else {\n this.updateState({\n groupedData: (data[0] || props.direction === 'row' ? [{\n key: 'key',\n data: data\n }] : [])\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n }\n this.itemWidgets = [];\n if (props.selectfirstitem) {\n this.selectFirstItem();\n } else {\n this.deselectAll();\n }\n if (isArray($new)){\n setTimeout(() => {\n this.updateState({\n loadingData: false\n } as WmListState)\n }, 0)\n }\n break;\n case 'groupby':\n case 'match':\n this.setGroupData(this.state.props.dataset);\n break;\n case 'multiselect':\n if ($new) {\n if (!isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem ?\n [this.state.props.selecteditem] : [];\n }\n } else if (isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem.pop();\n }\n break;\n case 'loadingdata':\n if($new != $old){\n this.updateState({\n loadingData: $new\n } as WmListState);}\n break;\n case 'selecteditem':\n if ($new != $old && isNumber($new)) {\n this.selectItem(this.state.props.dataset[$new])\n }\n break;\n }\n }\n\n componentDidMount() {\n const props = this.state.props;\n if (this.state.props.selectfirstitem && props.dataset?.length) {\n setTimeout(() => {\n this.onSelect(props.dataset[0], 0);\n });\n }\n this.subscribe('scroll', (event: any) => {\n const scrollPosition = event?.nativeEvent?.contentOffset?.y;\n const contentHeight = event?.nativeEvent?.contentSize?.height;\n const viewportHeight = event?.nativeEvent?.layoutMeasurement?.height;\n\n //checking user scrolled till bottom of the list logic\n const threshold = 50; // px\n const isVisible = scrollPosition + viewportHeight >= contentHeight - threshold;\n if (isVisible && !this.scrolledToEnd) {\n this.scrolledToEnd = true;\n //console.log('user scrolled till end');\n this.loadData();\n } else if (!isVisible && this.scrolledToEnd) {\n this.scrolledToEnd = false;\n }\n });\n\n super.componentDidMount();\n }\n\n componentDidUpdate(prevProps: WmListProps, prevState: WmListState, snapshot?: any) {\n super.componentDidUpdate && super.componentDidUpdate(prevProps, prevState, snapshot);\n if (prevProps.triggeronrenderwhenhidden === true || this.showView()) {\n this.invokeEventCallback('onRender', [this, this.state.props.dataset]);\n }\n }\n\n\n\n getDefaultStyles() {\n const isHorizontal = this.state.props.direction === 'row';\n return this.theme.getStyle(`${this.defaultClass} ${isHorizontal ? 'app-horizontal-list' : 'app-vertical-list'}`);\n }\n\n getIndex(item: any) {\n return this.state.props.dataset.indexOf(item);\n }\n\n private generateItemKey(item: any, index: number, props: WmListProps) {\n if (props.itemkey && item && !this._showSkeleton) {\n return props.itemkey(item, index);\n }\n return 'list_item_' + this.keyExtractor.getKey(item, true);\n }\n\n private getFlatListData(groupData: any[], isHorizontal: boolean, props: WmListProps) {\n if (this._showSkeleton) {\n return [...getNumberOfEmptyObjects(this.props.numberofskeletonitems as number ?? 3)];\n }\n if (!groupData || isEmpty(groupData[0])) {\n return [];\n }\n if (isHorizontal && props.horizontalondemandenabled === false) {\n return groupData;\n }\n return groupData.slice(0, this.state.maxRecordsToShow);\n }\n\n private renderItem(item: any, index: number, props: WmListProps) {\n const cols = this.getNoOfColumns();\n const isHorizontal = props.direction === 'row';\n const isWrap = isHorizontal && props.wrap;\n\n const styles = this._showSkeleton ? {\n ...this.styles.item,\n ...this.styles.skeleton.root\n } : this.styles.item as any\n\n let containerStyle={};\n const columnGap: any = this.styles?.columnWrapper?.gap ?? 0;\n\n if(!cols || isNaN(cols) || cols <= 0){\n containerStyle = {};\n }\n else if (columnGap > 0) {\n const totalGap = columnGap * (cols - 1);\n const availableWidth = this.screenWidth - totalGap;\n if (availableWidth <= 0) {\n containerStyle = { width: \"100%\" };\n } else {\n containerStyle = {\n width: `${Math.round((availableWidth / (cols * this.screenWidth)) * 100)}%`\n };\n }\n }\n else {\n containerStyle = cols? { width: Math.round(100 / cols) + \"%\", flex: null }: {};\n }\n\n return (index < this.state.maxRecordsToShow || (isHorizontal && this.state.props.horizontalondemandenabled === false)) ?\n !props.shouldswipe ? (\n <View style={containerStyle as any}>\n <View style={[\n styles,\n isWrap ? { minWidth: 0 } : null,\n props.itemclass ? this.theme.getStyle(props.itemclass(item, index)) : null,\n this.isSelected(item) ? this.styles.selectedItem : {}]}>\n {styles.backgroundImage ? (\n <BackgroundComponent\n image={styles.backgroundImage}\n position={styles.backgroundPosition || 'center'}\n size={styles.backgroundSize || 'cover'}\n repeat={styles.backgroundRepeat || 'no-repeat'}\n resizeMode={styles.backgroundResizeMode || 'cover'}\n style={{ borderRadius: this.styles.item.borderRadius }}\n />\n ) : null}\n <Tappable\n {...this.getTestPropsForAction(`item${index}`)}\n disableTouchEffect={this.state.props.disabletoucheffect}\n onTap={($event) => this.onSelect(item, index, $event)}\n onLongTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onLongtap', [null, this.proxy])}\n onDoubleTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onDoubletap', [null, this.proxy])}\n styles={\n [{ display: 'flex', flexDirection: 'row' },\n cols ? {\n width: '100%'\n } : null,\n (cols && cols > 1) || isHorizontal ? {\n paddingRight: (isNil(this.styles.item.marginRight)\n ? this.styles.item.margin : this.styles.item.marginRight) || 4\n } : null,\n this.styles.itemContainer,\n Platform.OS == 'web' && this.getListTemplateWidth() == \"fill\" ? {width: \"100%\"} : {}\n ]\n }>\n {props.renderItem(item, index, this)}\n {this.isSelected(item) ? (\n <WmIcon id={this.getTestId('icon' + index)} iconclass='wi wi-check-circle' styles={this.styles.selectedIcon} />\n ) : null}\n </Tappable>\n </View>\n </View>\n ) :\n (\n <Swipeable\n renderLeftActions={() => this.renderLeftActions()}\n renderRightActions={() => this.renderRightActions()} containerStyle={containerStyle as any}>\n <View style={[\n styles,\n isWrap ? { minWidth: 0 } : null,\n props.itemclass ? this.theme.getStyle(props.itemclass(item, index)) : null,\n this.isSelected(item) ? this.styles.selectedItem : {}]}>\n {styles.backgroundImage ? (\n <BackgroundComponent\n image={styles.backgroundImage}\n position={styles.backgroundPosition || 'center'}\n size={styles.backgroundSize || 'cover'}\n repeat={styles.backgroundRepeat || 'no-repeat'}\n resizeMode={styles.backgroundResizeMode || 'cover'}\n style={{ borderRadius: this.styles.item.borderRadius }}\n />\n ) : null}\n <Tappable\n {...this.getTestPropsForAction(`item${index}`)}\n disableTouchEffect={this.state.props.disabletoucheffect}\n onTap={($event) => this.onSelect(item, index, $event)}\n onLongTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onLongtap', [null, this.proxy])}\n onDoubleTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onDoubletap', [null, this.proxy])}\n styles={\n [{ display: 'flex', flexDirection: 'row' },\n cols ? {\n width: '100%'\n } : null,\n (cols && cols > 1) || isHorizontal ? {\n paddingRight: (isNil(this.styles.item.marginRight)\n ? this.styles.item.margin : this.styles.item.marginRight) || 4\n } : null,\n this.styles.itemContainer\n ]\n }>\n {props.renderItem(item, index, this)}\n {this.isSelected(item) ? (\n <WmIcon id={this.getTestId('icon' + index)} iconclass={props.selecteditemicon ? props.selecteditemicon : 'wi wi-check-circle'} styles={this.styles.selectedIcon} />\n ) : null}\n </Tappable>\n </View>\n </Swipeable>\n ) : null\n }\n\n private renderHeader(props: WmListProps, title: string) {\n return props.groupby ? (\n <Text style={this.styles.groupHeading} accessibilityRole='header'>{title}</Text>\n ) : (props.iconclass || props.iconurl || props.title || props.subheading) ? (\n <View style={this.styles.heading}>\n <View style={{ flex: 1, flexDirection: 'row' }}>\n <WmIcon id={this.getTestId('icon')} styles={this.styles.listIcon} iconclass={props.iconclass} iconurl={props.iconurl}></WmIcon>\n <View>\n <WmLabel id={this.getTestId('title')} styles={this.styles.title} caption={props.title} accessibilityrole='header'></WmLabel>\n <WmLabel id={this.getTestId('subheading')} styles={this.styles.subheading} caption={props.subheading}></WmLabel>\n </View>\n </View>\n </View>) : null;\n }\n\n private renderEmptyMessage(isHorizontal: boolean, item: any, index: any, props: WmListProps) {\n return (<WmLabel id={this.getTestId('emptymsg')} styles={this.styles.emptyMessage} caption={props.nodatamessage}></WmLabel>);\n }\n\n private renderLoadingIcon(props: WmListProps) {\n return (props.loadingicon || props.loadingiconurl) ? (<WmIcon\n id={this.getTestId('loadingicon')}\n styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\n iconurl={props.loadingiconurl}\n caption={props.loadingdatamsg}></WmIcon>)\n : (\n <ActivityIndicator color={this.styles.loadingIcon.text.color}></ActivityIndicator>\n );\n }\n\n public getNoOfColumns() {\n const props = this.state.props;\n if (props.direction === 'column' && props.responsive) {\n const columns = getNumberOfColumnsFromResponsiveConfig(props.itemsperrow, undefined, props.fallback);\n return columns && columns > 0 ? columns : 1;\n } else if (props.direction === 'column' && !props.responsive) {\n if(props.itemsperrow.xs){\n return props.itemsperrow.xs;\n }\n }\n return 0;\n }\n\n private findListTemplateInChildren(nodes: WmComponentNode[] = this.componentNode.children): BaseComponent<any, any, any> | undefined {\n for (const node of nodes) {\n const instance = node.instance;\n if (instance?.defaultClass === LIST_TEMPLATE_DEFAULT_CLASS) {\n return instance;\n }\n const nested = this.findListTemplateInChildren(node.children);\n if (nested) {\n return nested;\n }\n }\n return undefined;\n }\n\n getListTemplateWidth(): any {\n const listTemplate = this.findListTemplateInChildren();\n return listTemplate?.props?.styles?.root?.width;\n }\n\n private scrollToItem = (groupKey: string | null, itemIndex: number) => {\n const refKey = groupKey || 'main';\n if (this.flatListRefs[refKey]) {\n this.flatListRefs[refKey].scrollToIndex({\n index: itemIndex,\n animated: true,\n });\n }\n };\n\n getCaption = (isHorizontal: boolean, vData: any[]): string => {\n const { nodatamessage, ondemandmessage } = this.state.props\n if (!isHorizontal) {\n return this.hasMoreData ? ondemandmessage : nodatamessage\n }\n return this.hasMoreData ? ondemandmessage : nodatamessage\n }\n\n private onLayoutChange(e: LayoutChangeEvent) {\n // const l = e.nativeEvent.layout;\n // this.endThreshold = l.height + l.y - 100;\n // if (!this.endThreshold) {\n // this.endThreshold = -1;\n\n // }\n }\n\n renderCustomCell = ({ children, style, ...props }: any) => {\n return (\n <View\n {...props}\n style={[\n style,\n {\n width: this.getListTemplateWidth() == \"fill\" ? \"100%\" : {},\n },\n ]}>\n {children}\n </View>\n );\n };\n\n private renderWithFlatList(props: WmListProps, isHorizontal = false) {\n const isWrap = isHorizontal && props.wrap;\n const hasExplicitAutoLayout =\n props.alignment !== undefined ||\n props.gap !== undefined ||\n props.columngap !== undefined ||\n Boolean(props.wrap);\n const listAutoLayoutProps = extractAutoLayoutProps(props) as AutoLayoutProps;\n listAutoLayoutProps.direction = isHorizontal ? 'row' : 'column';\n const listDirectionStyle = hasExplicitAutoLayout ? getDirectionStyle(listAutoLayoutProps) : null;\n const listContentStyle = hasExplicitAutoLayout ? getContentContainerStyle(listAutoLayoutProps) : null;\n const fullWidthStyle: ViewStyle = { width: '100%' };\n const userClass = (this.state.props.classname || '').trim();\n const cascadeRoot = userClass\n ? this.theme.getStyle(`${this.defaultClass} ${userClass}`).root\n : undefined;\n const listOuterStyle = this.theme.mergeStyle(\n this.styles.root,\n cascadeRoot,\n !isHorizontal ? fullWidthStyle : null\n );\n const groupStyle = [this.styles.group, !isHorizontal ? fullWidthStyle : null];\n const flatListStyle: ViewStyle | undefined = !isHorizontal ? fullWidthStyle : undefined;\n\n return (\n <View style={listOuterStyle}\n onLayout={e => this.onLayoutChange(e)}\n >\n {!isEmpty(this.state.groupedData) ? this.state.groupedData.map((v: any, i) => ((\n <View style={groupStyle} key={v.key || this.keyExtractor.getKey(v, true)}>\n {this.renderHeader(props, v.key)}\n <FlatList\n ref={(ref) => { this.flatListRefs[v.key || 'main'] = ref; }}\n CellRendererComponent={Platform.OS === 'web' ? this.renderCustomCell : undefined}\n testID={this.getTestId('flat_list')}\n style={flatListStyle}\n key={props.name + '_' + (isHorizontal ? 'H' : 'V') + props.itemsperrow.xs + (isWrap ? '_W' : '')}\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n scrollEnabled={isHorizontal && !isWrap}\n horizontal={isHorizontal && !isWrap}\n contentContainerStyle={[\n this.styles.listContainer,\n listDirectionStyle,\n listContentStyle,\n ]}\n data={this.getFlatListData(v.data, isHorizontal, props)}\n ListEmptyComponent={(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}\n {...(isHorizontal && !isWrap\n ? { showsHorizontalScrollIndicator: !props.hidehorizontalscrollbar }\n : !isWrap\n ? { numColumns: this.getNoOfColumns() }\n : {})}\n {...(!isWrap && this.getNoOfColumns() > 1 ? {columnWrapperStyle: this.styles.columnWrapper} : {})}>\n </FlatList>\n {this.loadDataOnDemand || (v.data.length > this.state.maxRecordsToShow && props.navigation !== 'None') ?\n (this.state.loadingData ? this.renderLoadingIcon(props) :\n (<WmLabel id={this.getTestId('ondemandmessage')}\n styles={this.styles.onDemandMessage}\n caption={this.getCaption(isHorizontal, v.data)}\n onTap={() => this.loadData()}></WmLabel>)) : null}\n </View>\n ))) : this.state.loadingData ? this.renderLoadingIcon(props) : this.renderEmptyMessage(isHorizontal, null, null, props)\n }\n </View>);\n }\n\n private getSectionListData(props: WmListProps) {\n if (this._showSkeleton) {\n return [{\n key: '',\n data: [...getNumberOfEmptyObjects(this.props.numberofskeletonitems as number ?? 3)]\n }];\n } else if (this.state.groupedData\n && this.state.groupedData[0]\n && this.state.groupedData[0]['data'].length) {\n return this.state.groupedData.map((section: any) => ({\n ...section,\n data: isArray(section?.data)\n ? section.data.slice(0, this.state.maxRecordsToShow)\n : section?.data,\n }));\n }\n return [];\n }\n\n private renderWithSectionList(props: WmListProps, isHorizontal = false) {\n const hasExplicitAutoLayout =\n props.alignment !== undefined ||\n props.gap !== undefined ||\n props.columngap !== undefined ||\n Boolean(props.wrap);\n const listAutoLayoutProps = extractAutoLayoutProps(props) as AutoLayoutProps;\n listAutoLayoutProps.direction = isHorizontal ? 'row' : 'column';\n const listDirectionStyle = hasExplicitAutoLayout ? getDirectionStyle(listAutoLayoutProps) : null;\n const listContentStyle = hasExplicitAutoLayout ? getContentContainerStyle(listAutoLayoutProps) : null;\n\n return (\n this.state.loadingData ?\n this.renderLoadingIcon(props) :\n (\n <SectionList\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n horizontal={isHorizontal}\n contentContainerStyle={[\n this.styles.root,\n listDirectionStyle,\n listContentStyle,\n ]}\n sections={this.getSectionListData(props)}\n renderSectionHeader={({ section: { key, data } }) => {\n return this.renderHeader(props, key);\n }}\n renderSectionFooter={() => props.loadingdata ? this.renderLoadingIcon(props) : null}\n ListEmptyComponent={(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}>\n </SectionList>\n )\n );\n }\n\n renderWidget(props: WmListProps) {\n this.invokeEventCallback('onBeforedatarender', [this, this.state.props.dataset]);\n const isHorizontal = props.direction == 'row';\n\n const alProps = extractAutoLayoutProps(props, this.parent?.state?.props);\n const listDir = props.direction;\n if (listDir === 'row') {\n alProps.direction = 'row';\n } else {\n alProps.direction = 'column';\n }\n\n const hasAutoLayout = checkAutoLayout({ ...alProps, direction: undefined });\n\n const outerStyle: any[] = [isHorizontal ? null : { width: '100%' }];\n if (hasAutoLayout) {\n outerStyle.push(\n getDirectionStyle(alProps),\n getContentContainerStyle(alProps),\n getDimensionStyle(alProps, this.styles.root)\n );\n }\n\n return (\n <View\n style={outerStyle}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this._background}\n {(isHorizontal || !props.groupby) ?\n this.renderWithFlatList(props, isHorizontal)\n : this.renderWithSectionList(props, isHorizontal)}\n </View>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","ActivityIndicator","SectionList","Text","View","FlatList","Dimensions","Platform","isArray","isEmpty","isNil","isNumber","BaseComponent","BaseComponentState","getGroupedData","getNumberOfEmptyObjects","isDefined","getNumberOfColumnsFromResponsiveConfig","Tappable","DefaultKeyExtractor","WmLabel","WmIcon","Swipeable","_viewPort","EVENTS","ViewPortEvents","WmListProps","DEFAULT_CLASS","LIST_TEMPLATE_DEFAULT_CLASS","BackgroundComponent","isAutoLayout","checkAutoLayout","getContentContainerStyle","getDirectionStyle","getDimensionStyle","extractAutoLayoutProps","WmListState","constructor","args","_defineProperty","WmList","props","get","width","leftActionTemplate","createElement","Fragment","getTemplate","rightActionTemplate","updateState","groupedData","item","dataset","state","onSelect","index","indexOf","multiselect","selectedItems","selectedItem","selecteditem","selectedItemIndex","splice","invokeEventCallback","proxy","widgetname","itemWidgets","length","map","filter","widget","undefined","selectedindex","groupKey","itemIndex","refKey","flatListRefs","scrollToIndex","animated","isHorizontal","vData","nodatamessage","ondemandmessage","hasMoreData","children","style","_extends","getListTemplateWidth","maxRecordsToShow","pagesize","cleanup","push","subscribe","SIZE_CHANGE","newDim","screenWidth","forceUpdate","isSelected","$item","$index","$event","disableitemselect","eventName","disableitem","selectionlimit","selectedItemWidgets","direction","_this$state$groupedDa","forEach","group","data","includes","key","Promise","resolve","horizontalscrolltoitem","scrollToItem","loadDataOnDemand","navigation","loadData","loadingData","setTimeout","$list","loadingdata","getNextPageData","currentPage","then","last","catch","err","console","error","selectFirstItem","initialized","groupby","deselectAll","setGroupData","items","dataItems","match","orderby","dateformat","_this$keyExtractor","keyExtractor","clear","onPropertyChange","name","$new","$old","orderbyData","_this$keyExtractor2","_this$keyExtractor3","selectfirstitem","pop","selectItem","componentDidMount","_props$dataset","event","_event$nativeEvent","_event$nativeEvent2","_event$nativeEvent3","scrollPosition","nativeEvent","contentOffset","y","contentHeight","contentSize","height","viewportHeight","layoutMeasurement","threshold","isVisible","scrolledToEnd","componentDidUpdate","prevProps","prevState","snapshot","triggeronrenderwhenhidden","showView","getDefaultStyles","theme","getStyle","defaultClass","getIndex","generateItemKey","itemkey","_showSkeleton","getKey","getFlatListData","groupData","_ref","numberofskeletonitems","horizontalondemandenabled","slice","renderItem","_this$styles$columnWr","_this$styles","cols","getNoOfColumns","isWrap","wrap","styles","skeleton","root","containerStyle","columnGap","columnWrapper","gap","isNaN","totalGap","availableWidth","Math","round","flex","shouldswipe","minWidth","itemclass","backgroundImage","image","position","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","borderRadius","getTestPropsForAction","disableTouchEffect","disabletoucheffect","onTap","onLongTap","onDoubleTap","display","flexDirection","paddingRight","marginRight","margin","itemContainer","OS","id","getTestId","iconclass","selectedIcon","renderLeftActions","renderRightActions","selecteditemicon","renderHeader","title","groupHeading","accessibilityRole","iconurl","subheading","heading","listIcon","caption","accessibilityrole","renderEmptyMessage","emptyMessage","renderLoadingIcon","loadingicon","loadingiconurl","loadingIcon","loadingdatamsg","color","text","responsive","columns","itemsperrow","fallback","xs","findListTemplateInChildren","nodes","componentNode","node","instance","nested","_listTemplate$props","listTemplate","onLayoutChange","e","renderWithFlatList","hasExplicitAutoLayout","alignment","columngap","Boolean","listAutoLayoutProps","listDirectionStyle","listContentStyle","fullWidthStyle","userClass","classname","trim","cascadeRoot","listOuterStyle","mergeStyle","groupStyle","flatListStyle","onLayout","v","i","ref","CellRendererComponent","renderCustomCell","testID","scrollEnabled","horizontal","contentContainerStyle","listContainer","ListEmptyComponent","itemInfo","showsHorizontalScrollIndicator","hidehorizontalscrollbar","numColumns","columnWrapperStyle","onDemandMessage","getCaption","getSectionListData","_ref2","section","renderWithSectionList","sections","renderSectionHeader","renderSectionFooter","renderWidget","_this$parent","alProps","parent","listDir","hasAutoLayout","outerStyle","handleLayout","showSpinner","_background"],"sources":["list.component.tsx"],"sourcesContent":["import React from 'react';\nimport { ActivityIndicator, SectionList, Text, View, FlatList, LayoutChangeEvent, TouchableOpacity, Dimensions, ViewStyle, Platform } from 'react-native';\nimport { isArray, isEmpty, isNil, isNumber, round } from 'lodash-es';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { getGroupedData, getNumberOfEmptyObjects, isDefined } from \"@wavemaker-ai/app-rn-runtime/core/utils\";\nimport { getNumberOfColumnsFromResponsiveConfig } from '@wavemaker-ai/app-rn-runtime/core/responsive.utils';\nimport { Tappable } from '@wavemaker-ai/app-rn-runtime/core/tappable.component';\nimport { DefaultKeyExtractor } from '@wavemaker-ai/app-rn-runtime/core/key.extractor';\nimport WmLabel from '@wavemaker-ai/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker-ai/app-rn-runtime/components/basic/icon/icon.component';\nimport { Swipeable } from 'react-native-gesture-handler';\nimport WmListActionTemplate from './list-action-template/list-action-template.component';\nimport { DEVICE_BREAK_POINTS } from '@wavemaker-ai/app-rn-runtime/styles/theme';\nimport _viewPort, { EVENTS as ViewPortEvents } from '@wavemaker-ai/app-rn-runtime/core/viewport';\n\nimport WmListProps from './list.props';\nimport { DEFAULT_CLASS, WmListStyles } from './list.styles';\nimport { DEFAULT_CLASS as LIST_TEMPLATE_DEFAULT_CLASS } from './list-template/list-template.styles';\nimport { WmComponentNode } from '@wavemaker-ai/app-rn-runtime/core/wm-component-tree';\nimport { BackgroundComponent } from '@wavemaker-ai/app-rn-runtime/styles/background.component';\nimport {\n AutoLayoutProps,\n isAutoLayout as checkAutoLayout,\n getContentContainerStyle,\n getDirectionStyle,\n getDimensionStyle,\n extractAutoLayoutProps,\n} from '@wavemaker-ai/app-rn-runtime/core/auto-layout.utils';\n\n\nexport class WmListState extends BaseComponentState<WmListProps> {\n public selectedindex: any;\n groupedData: Array<any> = [];\n currentPage = 1;\n maxRecordsToShow = 20;\n loadingData = true;\n}\n\nexport default class WmList extends BaseComponent<WmListProps, WmListState, WmListStyles> {\n\n private itemWidgets = [] as any[];\n private selectedItemWidgets = {} as any;\n private keyExtractor = new DefaultKeyExtractor();\n //private endThreshold = -1;\n // private loadingData = false;\n private hasMoreData = true;\n public leftActionTemplate?: WmListActionTemplate;\n public rightActionTemplate?: WmListActionTemplate;\n private flatListRefs: any = {};\n private selectedItems = [] as any[];\n private scrolledToEnd: boolean = false;\n private screenWidth = Dimensions.get(\"window\").width;\n\n\n\n constructor(props: WmListProps) {\n\n super(props, DEFAULT_CLASS, new WmListProps(), new WmListState());\n this.updateState({\n maxRecordsToShow: this.state.props.pagesize\n } as WmListState);\n\n // Subscribe to viewport changes to re-render when screen size changes\n this.cleanup.push(_viewPort.subscribe(ViewPortEvents.SIZE_CHANGE, (newDim: { width: number}) => {\n this.screenWidth = newDim.width;\n this.forceUpdate();\n }));\n\n\n }\n\n private isSelected($item: any) {\n const selectedItem = this.state.props.selecteditem;\n if (isArray(selectedItem)) {\n return selectedItem.indexOf($item) >= 0;\n }\n return selectedItem === $item;\n }\n\n private async onSelect($item: any, $index: number | string, $event?: any) {\n if(this.state.props.disableitemselect) {\n return;\n }\n\n const props = this.state.props;\n let selectedItem = null as any;\n let eventName = 'onSelect';\n if (props.disableitem !== true\n && (typeof props.disableitem !== 'function' || !props.disableitem($item, $index))) {\n if (props.multiselect) {\n selectedItem = [...(props.selecteditem || [])];\n const index = selectedItem.indexOf($item);\n if (index < 0) {\n if ((!props.selectionlimit)\n || props.selectionlimit < 0\n || selectedItem.length < props.selectionlimit) {\n selectedItem.push($item);\n } else {\n this.invokeEventCallback('onSelectionlimitexceed', [null, this]);\n }\n } else {\n selectedItem.splice(index, 1);\n eventName = 'onDeselect';\n }\n } else {\n this.state.props.selecteditem && this.invokeEventCallback('onDeselect', [this.proxy, this.state.props.selecteditem]);\n selectedItem = $item;\n }\n this.selectedItems = selectedItem;\n this.selectedItemWidgets = this.itemWidgets[$index as number];\n let groupKey: string | null = null;\n\n if (props.direction === 'row') {\n this.state.groupedData?.forEach((group) => {\n if (group.data.includes($item)) {\n groupKey = group.key;\n }\n });\n }\n\n return new Promise(resolve => {\n this.updateState({\n props: { selecteditem: selectedItem },\n selectedindex: $index\n } as WmListState, () => {\n if (props.direction === 'row' && props.horizontalscrolltoitem) {\n this.scrollToItem(groupKey, $index as number);\n }\n this.invokeEventCallback(eventName, [this.proxy, $item]);\n $event && this.invokeEventCallback('onTap', [$event, this.proxy]);\n resolve(null);\n });\n });\n\n } else {\n return Promise.resolve(null);\n }\n }\n\n private get loadDataOnDemand() {\n const navigation = this.state.props.navigation;\n return navigation === 'Scroll' || navigation === 'On-Demand';\n }\n\n renderLeftActions = () => {\n return this.leftActionTemplate ? (\n <>\n {this.leftActionTemplate.getTemplate()}\n </>\n ) : null;\n };\n\n renderRightActions = () => {\n return this.rightActionTemplate ? (\n <>\n {this.rightActionTemplate.getTemplate()}\n </>\n ) : null;\n };\n\n private loadData() {\n if (this.state.loadingData || !this.hasMoreData) {\n\n return;\n }\n if (isArray(this.state.props.dataset)\n && this.state.props.dataset.length > this.state.maxRecordsToShow) {\n this.updateState({\n loadingData: true,\n maxRecordsToShow: this.state.maxRecordsToShow + this.state.props.pagesize\n } as WmListState);\n setTimeout(() => {\n // Force a re-render by making a small state update\n this.updateState({\n loadingData: false,\n } as WmListState);\n }, 100);\n } else if (this.loadDataOnDemand) {\n const $list = this.proxy as any;\n $list.loadingdata = true;\n // Set loading state via updateState\n this.updateState({\n loadingData: true\n } as WmListState);\n this.props.getNextPageData && this.props.getNextPageData(null, this.proxy, this.state.currentPage + 1).then((data) => {\n if (isArray(data) && data.length > 0\n && isArray(this.state.props.dataset)) {\n $list.dataset = [...this.state.props.dataset, ...data];\n this.updateState({\n currentPage: this.state.currentPage + 1,\n maxRecordsToShow: this.state.maxRecordsToShow + this.state.props.pagesize,\n } as WmListState);\n this.hasMoreData = true;\n if((data as any)?.last === true) {\n this.hasMoreData = false;\n }\n\n } else {\n this.hasMoreData = false;\n }\n }).catch((err) => {\n console.error(err);\n }).then(() => {\n setTimeout(() => {\n $list.loadingdata = false;\n\n }, 1000);\n });\n }\n }\n\n private selectFirstItem() {\n const props = this.state.props;\n if (this.initialized\n && props.dataset\n && props.dataset.length) {\n const index = props.groupby ? '00' : 0;\n this.onSelect(props.dataset[0], index);\n }\n }\n\n clear = () => {\n this.updateState({\n groupedData: {},\n } as WmListState);\n }\n\n selectItem = (item: number | object) => {\n const dataset = this.state.props.dataset;\n if (isNumber(item)) {\n this.onSelect(dataset[item], item);\n }\n else {\n let index = dataset.indexOf(item);\n this.onSelect(dataset[index], index);\n }\n }\n\n getSelectedItems = () => {\n if (!this.props.multiselect) {\n return [this.selectedItems]\n }\n return this.selectedItems;\n }\n\n getItem = (index: number) => {\n const props = this.state.props;\n return this.props.dataset[index]\n }\n\n deselectItem = (item: number | object) => {\n const props = this.state.props;\n let selectedItem = props.selecteditem || null;\n let index = isNumber(item) ? item : props.dataset.indexOf(item);\n if (props.multiselect && index >= 0) {\n selectedItem = [...(props.selecteditem || [])];\n let selectedItemIndex = selectedItem.indexOf(props.dataset[index])\n if (selectedItemIndex >= 0) {\n selectedItem.splice(selectedItemIndex, 1);\n }\n }\n else {\n if (props.selecteditem === props.dataset[index]) {\n selectedItem = null;\n }\n }\n this.updateState({\n props: { selecteditem: selectedItem },\n\n } as WmListState, () => {\n this.invokeEventCallback('onDeselect', [this.proxy, item]);\n });\n }\n\n getWidgets = (widgetname: string, index: number) => {\n if(index >= 0 && index < this.itemWidgets.length){\n return this.itemWidgets[index][widgetname]\n }\n else {\n return this.itemWidgets.map(item => item[widgetname]).filter(widget => widget !== undefined);\n }\n }\n\n selectAll = () => {\n const props = this.state.props;\n const dataset = props.dataset;\n if (!props.multiselect || !isArray(dataset) || dataset.length === 0) {\n return;\n }\n const selectedItems = [...dataset];\n\n this.updateState({\n props: { selecteditem: selectedItems },\n selectedindex: -1\n } as WmListState);\n }\n\n private deselectAll() {\n this.updateState({\n props: { selecteditem: null },\n selectedindex: -1\n } as WmListState);\n }\n\n setGroupData(items: any) {\n const dataItems = items;\n const props = this.state.props;\n if (props.groupby) {\n const groupedData = dataItems && getGroupedData(dataItems, props.groupby, props.match, props.orderby, props.dateformat, this);\n this.updateState({\n groupedData: groupedData\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n }\n\n public onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n switch (name) {\n case 'selectfirstitem':\n if ($new) {\n this.selectFirstItem();\n }\n break;\n case 'dataset':\n if (this.state.props.groupby) {\n this.setGroupData($new);\n } else {\n if (!($old && $old.length)\n && $new && $new.length\n && this.loadDataOnDemand) {\n this.updateState({\n props: {\n dataset: [...$new]\n }\n } as WmListState);\n }\n const data = isArray($new) ? $new : (!isEmpty($new) && isDefined($new) ? [$new] : []);\n if (props.orderby) {\n const orderbyData = data && getGroupedData(data, props.groupby, props.match, props.orderby, props.dateformat, this);\n this.updateState({\n groupedData: (orderbyData[0] ? [{\n key: 'key',\n data: orderbyData[0].data\n }] : [])\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n } else {\n this.updateState({\n groupedData: (data[0] || props.direction === 'row' ? [{\n key: 'key',\n data: data\n }] : [])\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n }\n this.itemWidgets = [];\n if (props.selectfirstitem) {\n this.selectFirstItem();\n } else {\n this.deselectAll();\n }\n if (isArray($new)){\n setTimeout(() => {\n this.updateState({\n loadingData: false\n } as WmListState)\n }, 0)\n }\n break;\n case 'groupby':\n case 'match':\n this.setGroupData(this.state.props.dataset);\n break;\n case 'multiselect':\n if ($new) {\n if (!isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem ?\n [this.state.props.selecteditem] : [];\n }\n } else if (isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem.pop();\n }\n break;\n case 'loadingdata':\n if($new != $old){\n this.updateState({\n loadingData: $new\n } as WmListState);}\n break;\n case 'selecteditem':\n if ($new != $old && isNumber($new)) {\n this.selectItem(this.state.props.dataset[$new])\n }\n break;\n }\n }\n\n componentDidMount() {\n const props = this.state.props;\n if (this.state.props.selectfirstitem && props.dataset?.length) {\n setTimeout(() => {\n this.onSelect(props.dataset[0], 0);\n });\n }\n this.subscribe('scroll', (event: any) => {\n const scrollPosition = event?.nativeEvent?.contentOffset?.y;\n const contentHeight = event?.nativeEvent?.contentSize?.height;\n const viewportHeight = event?.nativeEvent?.layoutMeasurement?.height;\n\n //checking user scrolled till bottom of the list logic\n const threshold = 50; // px\n const isVisible = scrollPosition + viewportHeight >= contentHeight - threshold;\n if (isVisible && !this.scrolledToEnd) {\n this.scrolledToEnd = true;\n //console.log('user scrolled till end');\n this.loadData();\n } else if (!isVisible && this.scrolledToEnd) {\n this.scrolledToEnd = false;\n }\n });\n\n super.componentDidMount();\n }\n\n componentDidUpdate(prevProps: WmListProps, prevState: WmListState, snapshot?: any) {\n super.componentDidUpdate && super.componentDidUpdate(prevProps, prevState, snapshot);\n if (prevProps.triggeronrenderwhenhidden === true || this.showView()) {\n this.invokeEventCallback('onRender', [this, this.state.props.dataset]);\n }\n }\n\n\n\n getDefaultStyles() {\n const isHorizontal = this.state.props.direction === 'row';\n return this.theme.getStyle(`${this.defaultClass} ${isHorizontal ? 'app-horizontal-list' : 'app-vertical-list'}`);\n }\n\n getIndex(item: any) {\n return this.state.props.dataset.indexOf(item);\n }\n\n private generateItemKey(item: any, index: number, props: WmListProps) {\n if (props.itemkey && item && !this._showSkeleton) {\n return props.itemkey(item, index);\n }\n return 'list_item_' + this.keyExtractor.getKey(item, true);\n }\n\n private getFlatListData(groupData: any[], isHorizontal: boolean, props: WmListProps) {\n if (this._showSkeleton) {\n return [...getNumberOfEmptyObjects(this.props.numberofskeletonitems as number ?? 3)];\n }\n if (!groupData || isEmpty(groupData[0])) {\n return [];\n }\n if (isHorizontal && props.horizontalondemandenabled === false) {\n return groupData;\n }\n return groupData.slice(0, this.state.maxRecordsToShow);\n }\n\n private renderItem(item: any, index: number, props: WmListProps) {\n const cols = this.getNoOfColumns();\n const isHorizontal = props.direction === 'row';\n const isWrap = isHorizontal && props.wrap;\n\n const styles = this._showSkeleton ? {\n ...this.styles.item,\n ...this.styles.skeleton.root\n } : this.styles.item as any\n\n let containerStyle={};\n const columnGap: any = this.styles?.columnWrapper?.gap ?? 0;\n\n if(!cols || isNaN(cols) || cols <= 0){\n containerStyle = {};\n }\n else if (columnGap > 0) {\n const totalGap = columnGap * (cols - 1);\n const availableWidth = this.screenWidth - totalGap;\n if (availableWidth <= 0) {\n containerStyle = { width: \"100%\" };\n } else {\n containerStyle = {\n width: `${Math.round((availableWidth / (cols * this.screenWidth)) * 100)}%`\n };\n }\n }\n else {\n containerStyle = cols? { width: Math.round(100 / cols) + \"%\", flex: null }: {};\n }\n\n return (index < this.state.maxRecordsToShow || (isHorizontal && this.state.props.horizontalondemandenabled === false)) ?\n !props.shouldswipe ? (\n <View style={containerStyle as any}>\n <View style={[\n styles,\n isWrap ? { minWidth: 0 } : null,\n props.itemclass ? this.theme.getStyle(props.itemclass(item, index)) : null,\n this.isSelected(item) ? this.styles.selectedItem : {}]}>\n {styles.backgroundImage ? (\n <BackgroundComponent\n image={styles.backgroundImage}\n position={styles.backgroundPosition || 'center'}\n size={styles.backgroundSize || 'cover'}\n repeat={styles.backgroundRepeat || 'no-repeat'}\n resizeMode={styles.backgroundResizeMode || 'cover'}\n style={{ borderRadius: this.styles.item.borderRadius }}\n />\n ) : null}\n <Tappable\n {...this.getTestPropsForAction(`item${index}`)}\n disableTouchEffect={this.state.props.disabletoucheffect}\n onTap={($event) => this.onSelect(item, index, $event)}\n onLongTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onLongtap', [null, this.proxy])}\n onDoubleTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onDoubletap', [null, this.proxy])}\n styles={\n [{ display: 'flex', flexDirection: 'row' },\n cols ? {\n width: '100%'\n } : null,\n (cols && cols > 1) || isHorizontal ? {\n paddingRight: (isNil(this.styles.item.marginRight)\n ? this.styles.item.margin : this.styles.item.marginRight) || 4\n } : null,\n this.styles.itemContainer,\n Platform.OS == 'web' && this.getListTemplateWidth() == \"fill\" ? {width: \"100%\"} : {}\n ]\n }>\n {props.renderItem(item, index, this)}\n {this.isSelected(item) ? (\n <WmIcon id={this.getTestId('icon' + index)} iconclass='wi wi-check-circle' styles={this.styles.selectedIcon} />\n ) : null}\n </Tappable>\n </View>\n </View>\n ) :\n (\n <Swipeable\n renderLeftActions={() => this.renderLeftActions()}\n renderRightActions={() => this.renderRightActions()} containerStyle={containerStyle as any}>\n <View style={[\n styles,\n isWrap ? { minWidth: 0 } : null,\n props.itemclass ? this.theme.getStyle(props.itemclass(item, index)) : null,\n this.isSelected(item) ? this.styles.selectedItem : {}]}>\n {styles.backgroundImage ? (\n <BackgroundComponent\n image={styles.backgroundImage}\n position={styles.backgroundPosition || 'center'}\n size={styles.backgroundSize || 'cover'}\n repeat={styles.backgroundRepeat || 'no-repeat'}\n resizeMode={styles.backgroundResizeMode || 'cover'}\n style={{ borderRadius: this.styles.item.borderRadius }}\n />\n ) : null}\n <Tappable\n {...this.getTestPropsForAction(`item${index}`)}\n disableTouchEffect={this.state.props.disabletoucheffect}\n onTap={($event) => this.onSelect(item, index, $event)}\n onLongTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onLongtap', [null, this.proxy])}\n onDoubleTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onDoubletap', [null, this.proxy])}\n styles={\n [{ display: 'flex', flexDirection: 'row' },\n cols ? {\n width: '100%'\n } : null,\n (cols && cols > 1) || isHorizontal ? {\n paddingRight: (isNil(this.styles.item.marginRight)\n ? this.styles.item.margin : this.styles.item.marginRight) || 4\n } : null,\n this.styles.itemContainer\n ]\n }>\n {props.renderItem(item, index, this)}\n {this.isSelected(item) ? (\n <WmIcon id={this.getTestId('icon' + index)} iconclass={props.selecteditemicon ? props.selecteditemicon : 'wi wi-check-circle'} styles={this.styles.selectedIcon} />\n ) : null}\n </Tappable>\n </View>\n </Swipeable>\n ) : null\n }\n\n private renderHeader(props: WmListProps, title: string) {\n return props.groupby ? (\n <Text style={this.styles.groupHeading} accessibilityRole='header'>{title}</Text>\n ) : (props.iconclass || props.iconurl || props.title || props.subheading) ? (\n <View style={this.styles.heading}>\n <View style={{ flex: 1, flexDirection: 'row' }}>\n <WmIcon id={this.getTestId('icon')} styles={this.styles.listIcon} iconclass={props.iconclass} iconurl={props.iconurl}></WmIcon>\n <View>\n <WmLabel id={this.getTestId('title')} styles={this.styles.title} caption={props.title} accessibilityrole='header'></WmLabel>\n <WmLabel id={this.getTestId('subheading')} styles={this.styles.subheading} caption={props.subheading}></WmLabel>\n </View>\n </View>\n </View>) : null;\n }\n\n private renderEmptyMessage(isHorizontal: boolean, item: any, index: any, props: WmListProps) {\n return (<WmLabel id={this.getTestId('emptymsg')} styles={this.styles.emptyMessage} caption={props.nodatamessage}></WmLabel>);\n }\n\n private renderLoadingIcon(props: WmListProps) {\n return (props.loadingicon || props.loadingiconurl) ? (<WmIcon\n id={this.getTestId('loadingicon')}\n styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\n iconurl={props.loadingiconurl}\n caption={props.loadingdatamsg}></WmIcon>)\n : (\n <ActivityIndicator color={this.styles.loadingIcon.text.color}></ActivityIndicator>\n );\n }\n\n public getNoOfColumns() {\n const props = this.state.props;\n if (props.direction === 'column' && props.responsive) {\n const columns = getNumberOfColumnsFromResponsiveConfig(props.itemsperrow, undefined, props.fallback);\n return columns && columns > 0 ? columns : 1;\n } else if (props.direction === 'column' && !props.responsive) {\n if(props.itemsperrow.xs){\n return props.itemsperrow.xs;\n }\n }\n return 0;\n }\n\n private findListTemplateInChildren(nodes: WmComponentNode[] = this.componentNode.children): BaseComponent<any, any, any> | undefined {\n for (const node of nodes) {\n const instance = node.instance;\n if (instance?.defaultClass === LIST_TEMPLATE_DEFAULT_CLASS) {\n return instance;\n }\n const nested = this.findListTemplateInChildren(node.children);\n if (nested) {\n return nested;\n }\n }\n return undefined;\n }\n\n getListTemplateWidth(): any {\n const listTemplate = this.findListTemplateInChildren();\n return listTemplate?.props?.styles?.root?.width;\n }\n\n private scrollToItem = (groupKey: string | null, itemIndex: number) => {\n const refKey = groupKey || 'main';\n if (this.flatListRefs[refKey]) {\n this.flatListRefs[refKey].scrollToIndex({\n index: itemIndex,\n animated: true,\n });\n }\n };\n\n getCaption = (isHorizontal: boolean, vData: any[]): string => {\n const { nodatamessage, ondemandmessage } = this.state.props\n if (!isHorizontal) {\n return this.hasMoreData ? ondemandmessage : nodatamessage\n }\n return this.hasMoreData ? ondemandmessage : nodatamessage\n }\n\n private onLayoutChange(e: LayoutChangeEvent) {\n // const l = e.nativeEvent.layout;\n // this.endThreshold = l.height + l.y - 100;\n // if (!this.endThreshold) {\n // this.endThreshold = -1;\n\n // }\n }\n\n renderCustomCell = ({ children, style, ...props }: any) => {\n return (\n <View\n {...props}\n style={[\n style,\n {\n width: this.getListTemplateWidth() == \"fill\" ? \"100%\" : {},\n },\n ]}>\n {children}\n </View>\n );\n };\n\n private renderWithFlatList(props: WmListProps, isHorizontal = false) {\n const isWrap = isHorizontal && props.wrap;\n const hasExplicitAutoLayout =\n props.alignment !== undefined ||\n props.gap !== undefined ||\n props.columngap !== undefined ||\n Boolean(props.wrap);\n const listAutoLayoutProps = extractAutoLayoutProps(props) as AutoLayoutProps;\n listAutoLayoutProps.direction = isHorizontal ? 'row' : 'column';\n const listDirectionStyle = hasExplicitAutoLayout ? getDirectionStyle(listAutoLayoutProps) : null;\n const listContentStyle = hasExplicitAutoLayout ? getContentContainerStyle(listAutoLayoutProps) : null;\n const fullWidthStyle: ViewStyle = { width: '100%' };\n const userClass = (this.state.props.classname || '').trim();\n const cascadeRoot = userClass\n ? this.theme.getStyle(`${this.defaultClass} ${userClass}`).root\n : undefined;\n const listOuterStyle = this.theme.mergeStyle(\n this.styles.root,\n cascadeRoot,\n !isHorizontal ? fullWidthStyle : null\n );\n const groupStyle = [this.styles.group, !isHorizontal ? fullWidthStyle : null];\n const flatListStyle: ViewStyle | undefined = !isHorizontal ? fullWidthStyle : undefined;\n\n return (\n <View style={listOuterStyle}\n onLayout={e => this.onLayoutChange(e)}\n >\n {!isEmpty(this.state.groupedData) ? this.state.groupedData.map((v: any, i) => ((\n <View style={groupStyle} key={v.key || this.keyExtractor.getKey(v, true)}>\n {this.renderHeader(props, v.key)}\n <FlatList\n ref={(ref) => { this.flatListRefs[v.key || 'main'] = ref; }}\n CellRendererComponent={Platform.OS === 'web' ? this.renderCustomCell : undefined}\n testID={this.getTestId('flat_list')}\n style={flatListStyle}\n key={props.name + '_' + (isHorizontal ? 'H' : 'V') + props.itemsperrow.xs + (isWrap ? '_W' : '')}\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n scrollEnabled={isHorizontal && !isWrap}\n horizontal={isHorizontal && !isWrap}\n contentContainerStyle={[\n this.styles.listContainer,\n listDirectionStyle,\n listContentStyle,\n ]}\n data={this.getFlatListData(v.data, isHorizontal, props)}\n ListEmptyComponent={(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}\n {...(isHorizontal && !isWrap\n ? { showsHorizontalScrollIndicator: !props.hidehorizontalscrollbar }\n : !isWrap\n ? { numColumns: this.getNoOfColumns() }\n : {})}\n {...(!isWrap && this.getNoOfColumns() > 1 ? {columnWrapperStyle: this.styles.columnWrapper} : {})}>\n </FlatList>\n {this.loadDataOnDemand || (v.data.length > this.state.maxRecordsToShow && props.navigation !== 'None') ?\n (this.state.loadingData ? this.renderLoadingIcon(props) :\n (<WmLabel id={this.getTestId('ondemandmessage')}\n styles={this.styles.onDemandMessage}\n caption={this.getCaption(isHorizontal, v.data)}\n onTap={() => this.loadData()}></WmLabel>)) : null}\n </View>\n ))) : this.state.loadingData ? this.renderLoadingIcon(props) : this.renderEmptyMessage(isHorizontal, null, null, props)\n }\n </View>);\n }\n\n private getSectionListData(props: WmListProps) {\n if (this._showSkeleton) {\n return [{\n key: '',\n data: [...getNumberOfEmptyObjects(this.props.numberofskeletonitems as number ?? 3)]\n }];\n } else if (this.state.groupedData\n && this.state.groupedData[0]\n && this.state.groupedData[0]['data'].length) {\n return this.state.groupedData.map((section: any) => ({\n ...section,\n data: isArray(section?.data)\n ? section.data.slice(0, this.state.maxRecordsToShow)\n : section?.data,\n }));\n }\n return [];\n }\n\n private renderWithSectionList(props: WmListProps, isHorizontal = false) {\n const hasExplicitAutoLayout =\n props.alignment !== undefined ||\n props.gap !== undefined ||\n props.columngap !== undefined ||\n Boolean(props.wrap);\n const listAutoLayoutProps = extractAutoLayoutProps(props) as AutoLayoutProps;\n listAutoLayoutProps.direction = isHorizontal ? 'row' : 'column';\n const listDirectionStyle = hasExplicitAutoLayout ? getDirectionStyle(listAutoLayoutProps) : null;\n const listContentStyle = hasExplicitAutoLayout ? getContentContainerStyle(listAutoLayoutProps) : null;\n\n return (\n this.state.loadingData ?\n this.renderLoadingIcon(props) :\n (\n <SectionList\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n horizontal={isHorizontal}\n contentContainerStyle={[\n this.styles.root,\n listDirectionStyle,\n listContentStyle,\n ]}\n sections={this.getSectionListData(props)}\n renderSectionHeader={({ section: { key, data } }) => {\n return this.renderHeader(props, key);\n }}\n renderSectionFooter={() => props.loadingdata ? this.renderLoadingIcon(props) : null}\n ListEmptyComponent={(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}>\n </SectionList>\n )\n );\n }\n\n renderWidget(props: WmListProps) {\n this.invokeEventCallback('onBeforedatarender', [this, this.state.props.dataset]);\n const isHorizontal = props.direction == 'row';\n\n const alProps = extractAutoLayoutProps(props, this.parent?.state?.props);\n const listDir = props.direction;\n if (listDir === 'row') {\n alProps.direction = 'row';\n } else {\n alProps.direction = 'column';\n }\n\n const hasAutoLayout = checkAutoLayout({ ...alProps, direction: undefined });\n\n const outerStyle: any[] = [isHorizontal ? null : { width: '100%' }];\n if (hasAutoLayout) {\n outerStyle.push(\n getDirectionStyle(alProps),\n getContentContainerStyle(alProps),\n getDimensionStyle(alProps, this.styles.root)\n );\n }\n\n return (\n <View\n style={outerStyle}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this.showSpinner()}\n {this._background}\n {(isHorizontal || !props.groupby) ?\n this.renderWithFlatList(props, isHorizontal)\n : this.renderWithSectionList(props, isHorizontal)}\n </View>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -221,7 +221,9 @@ export class BaseInputComponent extends BaseComponent {
221
221
  this._submitEditingTriggered = true;
222
222
  this.updateDatavalue(this.state.textValue, null);
223
223
  setTimeout(() => {
224
+ var _this$state$props$onS, _this$state$props;
224
225
  this.invokeEventCallback('onSubmitediting', [event, this.proxy]);
226
+ (_this$state$props$onS = (_this$state$props = this.state.props).onSubmitEditing) === null || _this$state$props$onS === void 0 || _this$state$props$onS.call(_this$state$props, event);
225
227
  }, 100);
226
228
  }
227
229
  }
@@ -1 +1 @@
1
- {"version":3,"names":["DEFAULT_CLASS","BaseComponent","BaseComponentState","isString","Platform","validateField","Injector","BaseInputState","constructor","args","_defineProperty","BaseInputComponent","props","defaultClass","defaultProps","defaultState","focus","_this$widgetRef","widgetRef","blur","_this$widgetRef2","_this$widgetRef3","onPropertyChange","name","$new","$old","keyboardType","type","updateState","textValue","state","isValid","validationObj","errorType","isDefault","isdefault","skipscripteventtrigger","onFieldChange","bind","onChange","event","updateon","updateDatavalue","target","value","timer","clearTimeout","setTimeout","onChangeText","charlength","length","validate","invokeChange","e","OS","cursor","selectionStart","setState","source","oldValue","datavalue","autotrim","trim","Promise","resolve","hastwowaybinding","setProp","then","invokeEventCallback","proxy","onBlur","FOCUSED_ELEMENT","remove","isTouched","newVal","oldVal","undefined","triggerValidation","skipBlurCallback","_submitEditingTriggered","isInputFocused","onFocus","_this$closestTappable","set","closestTappable","triggerTap","onKeyPress","_event$persist","_event$nativeEvent","_props","persist","call","key","nativeEvent","onSubmitediting","onSubmitEditing","_event$persist2"],"sources":["baseinput.component.ts"],"sourcesContent":["import { DEFAULT_CLASS } from '@wavemaker-ai/app-rn-runtime/components/navigation/basenav/basenav.styles';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport BaseInputProps from './baseinput.props';\nimport { isString } from 'lodash';\nimport { BaseInputStyles } from './baseinput.styles';\nimport { Platform, TextInput } from 'react-native';\nimport { validateField } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport Injector from '@wavemaker-ai/app-rn-runtime/core/injector';\n\nexport class BaseInputState <T extends BaseInputProps> extends BaseComponentState<T> {\n keyboardType: any = 'default';\n isValid: boolean = true;\n isInputFocused: boolean = false;\n textValue: string = '';\n isDefault = false;\n errorType: string = '';\n}\nexport abstract class BaseInputComponent< T extends BaseInputProps, S extends BaseInputState<T>, L extends BaseInputStyles> extends BaseComponent<T, S, L> {\n public widgetRef: TextInput | null = null;\n isTouched: boolean = false;\n private cursor: any = 0;\n private timer: ReturnType<typeof setTimeout> | null = null;\n private _submitEditingTriggered = false;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n }\n public charlength:number = 0;\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n blur() {\n this?.widgetRef?.blur && this?.widgetRef?.blur();\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'type':\n let keyboardType;\n if (this.props.type === 'number') {\n keyboardType = 'numeric';\n } else if (this.props.type === 'tel') {\n keyboardType = 'phone-pad';\n } else if (this.props.type === 'email') {\n keyboardType = 'email-address';\n }\n this.updateState({\n keyboardType: keyboardType,\n } as S);\n break;\n case 'datavalue':\n this.updateState({\n textValue: $new\n } as S\n );\n if (!this.state.isValid) {\n const validationObj = validateField(this.state.props, $new);\n this.updateState({ isValid: validationObj.isValid, errorType: validationObj.errorType || '' } as S);\n }\n\n const isDefault = this.state.props.isdefault;\n if (isDefault) {\n this.updateState(\n { props: {isdefault: false} } as S,\n !this.state.props.skipscripteventtrigger && this.props.onFieldChange && this.props.onFieldChange.bind(this, 'datavalue', $new, $old, isDefault)\n );\n }\n else {\n !this.state.props.skipscripteventtrigger && this.props.onFieldChange && this.props.onFieldChange('datavalue', $new, $old, isDefault);\n }\n }\n }\n\n onChange(event: any) {\n if (this.state.props.updateon === 'default') {\n this.updateDatavalue(event.target.value, event);\n }else if(this.state.props.updateon === 'lazy') {\n if(this.timer !== null) {\n clearTimeout(this.timer);\n this.timer = null;\n }\n\n this.timer = setTimeout(() => {\n this.updateDatavalue(event.target.value, event);\n }, 300)\n }\n }\n\n onChangeText(value: any) {\n this.charlength = value?.length;\n if(this.state.props.updateon === 'lazy') {\n if(this.timer !== null) {\n clearTimeout(this.timer);\n this.timer = null;\n }\n\n this.timer = setTimeout(() => {\n this.updateState({\n textValue: value\n } as S, () => {\n this.validate(value);\n this.updateDatavalue(value, null);\n }\n );\n }, 300)\n }\n else {\n this.updateState({\n textValue: value\n } as S, () => {\n if (this.state.props.updateon === 'default') {\n this.validate(value);\n this.updateDatavalue(value, null);\n }\n }\n );\n }\n }\n\n invokeChange(e: any) {\n if (Platform.OS === 'web') {\n this.cursor = e.target.selectionStart;\n this.setState({ textValue: e.target.value });\n }\n }\n\n updateDatavalue(value: any, event?: any, source?: any) {\n const props = this.state.props;\n const oldValue = props.datavalue;\n if (value === oldValue) {\n return;\n }\n\n // autotrim\n if (props.autotrim && props.datavalue && isString(props.datavalue)) {\n value = value.trim();\n }\n new Promise((resolve) => {\n if (props.hastwowaybinding) {\n this.setProp(\"datavalue\", value);\n this.updateState({props: { \"datavalue\": value }} as S);\n resolve(true);\n } else {\n this.updateState({\n props: {\n datavalue: value\n }\n } as S, () => resolve(true));\n }\n }).then(() => {\n if(!this.props.onFieldChange && value !== oldValue){\n this.invokeEventCallback('onChange', [event, this.proxy, value, oldValue]);\n }else if(this.state.props.skipscripteventtrigger && this.props.onFieldChange){\n this.props.onFieldChange('datavalue', value, oldValue, false);\n }\n if (source === 'blur') {\n setTimeout(() => {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }, 10);\n }\n })\n }\n\n onBlur(event: any) {\n Injector.FOCUSED_ELEMENT.remove();\n this.isTouched = true;\n let newVal = this.state.textValue || '';\n let oldVal = this.state.props.datavalue || '';\n this.validate(newVal);\n if (newVal === '' || newVal == undefined) {\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n },10)\n }\n\n const skipBlurCallback = this._submitEditingTriggered;\n this._submitEditingTriggered = false;\n\n if (this.state.props.updateon === 'blur' || this.state.props.updateon === 'default') {\n if (oldVal !== newVal && this.state.props.updateon === 'blur') {\n this.updateDatavalue(newVal, event, skipBlurCallback ? undefined : 'blur');\n } else if (!skipBlurCallback) {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }\n this.setState({ isInputFocused: false })\n }\n }\n\n validate(value: any) {\n const validationObj = validateField(this.state.props, value);\n this.setState({\n isValid: validationObj.isValid,\n errorType: validationObj.errorType\n } as S);\n }\n\n onFocus(event: any) {\n // When input widgets are inside list widget and try to focus the field, list is selecting but unable to enter values in input fields\n // because on tap event of list is triggering after 200ms timeout So added 250ms timeout here\n setTimeout(() => {\n Injector.FOCUSED_ELEMENT.set(this);\n this.invokeEventCallback('onFocus', [ event, this.proxy]);\n this.closestTappable?.triggerTap();\n }, 250);\n this.setState({ isInputFocused: true })\n }\n\n onKeyPress(event: any) {\n event?.persist?.();\n const key = event.nativeEvent?.key;\n if (key === 'Enter' && !!(this as any).props?.onSubmitediting) {\n return;\n }\n this.invokeEventCallback('onKeypress', [event, this.proxy, key]);\n }\n\n onSubmitEditing(event: any) {\n event?.persist?.();\n this._submitEditingTriggered = true;\n this.updateDatavalue(this.state.textValue, null);\n setTimeout(() => {\n this.invokeEventCallback('onSubmitediting', [event, this.proxy]);\n }, 100);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["DEFAULT_CLASS","BaseComponent","BaseComponentState","isString","Platform","validateField","Injector","BaseInputState","constructor","args","_defineProperty","BaseInputComponent","props","defaultClass","defaultProps","defaultState","focus","_this$widgetRef","widgetRef","blur","_this$widgetRef2","_this$widgetRef3","onPropertyChange","name","$new","$old","keyboardType","type","updateState","textValue","state","isValid","validationObj","errorType","isDefault","isdefault","skipscripteventtrigger","onFieldChange","bind","onChange","event","updateon","updateDatavalue","target","value","timer","clearTimeout","setTimeout","onChangeText","charlength","length","validate","invokeChange","e","OS","cursor","selectionStart","setState","source","oldValue","datavalue","autotrim","trim","Promise","resolve","hastwowaybinding","setProp","then","invokeEventCallback","proxy","onBlur","FOCUSED_ELEMENT","remove","isTouched","newVal","oldVal","undefined","triggerValidation","skipBlurCallback","_submitEditingTriggered","isInputFocused","onFocus","_this$closestTappable","set","closestTappable","triggerTap","onKeyPress","_event$persist","_event$nativeEvent","_props","persist","call","key","nativeEvent","onSubmitediting","onSubmitEditing","_event$persist2","_this$state$props$onS","_this$state$props"],"sources":["baseinput.component.ts"],"sourcesContent":["import { DEFAULT_CLASS } from '@wavemaker-ai/app-rn-runtime/components/navigation/basenav/basenav.styles';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport BaseInputProps from './baseinput.props';\nimport { isString } from 'lodash';\nimport { BaseInputStyles } from './baseinput.styles';\nimport { Platform, TextInput } from 'react-native';\nimport { validateField } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport Injector from '@wavemaker-ai/app-rn-runtime/core/injector';\n\nexport class BaseInputState <T extends BaseInputProps> extends BaseComponentState<T> {\n keyboardType: any = 'default';\n isValid: boolean = true;\n isInputFocused: boolean = false;\n textValue: string = '';\n isDefault = false;\n errorType: string = '';\n}\nexport abstract class BaseInputComponent< T extends BaseInputProps, S extends BaseInputState<T>, L extends BaseInputStyles> extends BaseComponent<T, S, L> {\n public widgetRef: TextInput | null = null;\n isTouched: boolean = false;\n private cursor: any = 0;\n private timer: ReturnType<typeof setTimeout> | null = null;\n private _submitEditingTriggered = false;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n }\n public charlength:number = 0;\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n blur() {\n this?.widgetRef?.blur && this?.widgetRef?.blur();\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'type':\n let keyboardType;\n if (this.props.type === 'number') {\n keyboardType = 'numeric';\n } else if (this.props.type === 'tel') {\n keyboardType = 'phone-pad';\n } else if (this.props.type === 'email') {\n keyboardType = 'email-address';\n }\n this.updateState({\n keyboardType: keyboardType,\n } as S);\n break;\n case 'datavalue':\n this.updateState({\n textValue: $new\n } as S\n );\n if (!this.state.isValid) {\n const validationObj = validateField(this.state.props, $new);\n this.updateState({ isValid: validationObj.isValid, errorType: validationObj.errorType || '' } as S);\n }\n\n const isDefault = this.state.props.isdefault;\n if (isDefault) {\n this.updateState(\n { props: {isdefault: false} } as S,\n !this.state.props.skipscripteventtrigger && this.props.onFieldChange && this.props.onFieldChange.bind(this, 'datavalue', $new, $old, isDefault)\n );\n }\n else {\n !this.state.props.skipscripteventtrigger && this.props.onFieldChange && this.props.onFieldChange('datavalue', $new, $old, isDefault);\n }\n }\n }\n\n onChange(event: any) {\n if (this.state.props.updateon === 'default') {\n this.updateDatavalue(event.target.value, event);\n }else if(this.state.props.updateon === 'lazy') {\n if(this.timer !== null) {\n clearTimeout(this.timer);\n this.timer = null;\n }\n\n this.timer = setTimeout(() => {\n this.updateDatavalue(event.target.value, event);\n }, 300)\n }\n }\n\n onChangeText(value: any) {\n this.charlength = value?.length;\n if(this.state.props.updateon === 'lazy') {\n if(this.timer !== null) {\n clearTimeout(this.timer);\n this.timer = null;\n }\n\n this.timer = setTimeout(() => {\n this.updateState({\n textValue: value\n } as S, () => {\n this.validate(value);\n this.updateDatavalue(value, null);\n }\n );\n }, 300)\n }\n else {\n this.updateState({\n textValue: value\n } as S, () => {\n if (this.state.props.updateon === 'default') {\n this.validate(value);\n this.updateDatavalue(value, null);\n }\n }\n );\n }\n }\n\n invokeChange(e: any) {\n if (Platform.OS === 'web') {\n this.cursor = e.target.selectionStart;\n this.setState({ textValue: e.target.value });\n }\n }\n\n updateDatavalue(value: any, event?: any, source?: any) {\n const props = this.state.props;\n const oldValue = props.datavalue;\n if (value === oldValue) {\n return;\n }\n\n // autotrim\n if (props.autotrim && props.datavalue && isString(props.datavalue)) {\n value = value.trim();\n }\n new Promise((resolve) => {\n if (props.hastwowaybinding) {\n this.setProp(\"datavalue\", value);\n this.updateState({props: { \"datavalue\": value }} as S);\n resolve(true);\n } else {\n this.updateState({\n props: {\n datavalue: value\n }\n } as S, () => resolve(true));\n }\n }).then(() => {\n if(!this.props.onFieldChange && value !== oldValue){\n this.invokeEventCallback('onChange', [event, this.proxy, value, oldValue]);\n }else if(this.state.props.skipscripteventtrigger && this.props.onFieldChange){\n this.props.onFieldChange('datavalue', value, oldValue, false);\n }\n if (source === 'blur') {\n setTimeout(() => {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }, 10);\n }\n })\n }\n\n onBlur(event: any) {\n Injector.FOCUSED_ELEMENT.remove();\n this.isTouched = true;\n let newVal = this.state.textValue || '';\n let oldVal = this.state.props.datavalue || '';\n this.validate(newVal);\n if (newVal === '' || newVal == undefined) {\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n },10)\n }\n\n const skipBlurCallback = this._submitEditingTriggered;\n this._submitEditingTriggered = false;\n\n if (this.state.props.updateon === 'blur' || this.state.props.updateon === 'default') {\n if (oldVal !== newVal && this.state.props.updateon === 'blur') {\n this.updateDatavalue(newVal, event, skipBlurCallback ? undefined : 'blur');\n } else if (!skipBlurCallback) {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }\n this.setState({ isInputFocused: false })\n }\n }\n\n validate(value: any) {\n const validationObj = validateField(this.state.props, value);\n this.setState({\n isValid: validationObj.isValid,\n errorType: validationObj.errorType\n } as S);\n }\n\n onFocus(event: any) {\n // When input widgets are inside list widget and try to focus the field, list is selecting but unable to enter values in input fields\n // because on tap event of list is triggering after 200ms timeout So added 250ms timeout here\n setTimeout(() => {\n Injector.FOCUSED_ELEMENT.set(this);\n this.invokeEventCallback('onFocus', [ event, this.proxy]);\n this.closestTappable?.triggerTap();\n }, 250);\n this.setState({ isInputFocused: true })\n }\n\n onKeyPress(event: any) {\n event?.persist?.();\n const key = event.nativeEvent?.key;\n if (key === 'Enter' && !!(this as any).props?.onSubmitediting) {\n return;\n }\n this.invokeEventCallback('onKeypress', [event, this.proxy, key]);\n }\n\n onSubmitEditing(event: any) {\n event?.persist?.();\n this._submitEditingTriggered = true;\n this.updateDatavalue(this.state.textValue, null);\n setTimeout(() => {\n this.invokeEventCallback('onSubmitediting', [event, this.proxy]);\n this.state.props.onSubmitEditing?.(event);\n }, 100);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -17,6 +17,7 @@ export default class BaseNumberProps extends BaseProps {
17
17
  _defineProperty(this, "required", false);
18
18
  _defineProperty(this, "triggerValidation", void 0);
19
19
  _defineProperty(this, "decimalPlaces", 2);
20
+ _defineProperty(this, "returnkeytype", 'auto');
20
21
  _defineProperty(this, "onSubmitEditing", void 0);
21
22
  _defineProperty(this, "accessibilitylabel", undefined);
22
23
  _defineProperty(this, "hint", undefined);
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","BaseNumberProps","constructor","args","_defineProperty","undefined"],"sources":["basenumber.props.ts"],"sourcesContent":["import {AccessibilityRole} from \"react-native\";\nimport { BaseProps } from '@wavemaker-ai/app-rn-runtime/core/base.component';\n\nexport default class BaseNumberProps extends BaseProps {\n datavalue: any;\n hastwowaybinding = false;\n minvalue: number = null as any;\n maxvalue: number = null as any;\n step: number = 1;\n updateon: string = 'blur' as any;\n readonly: boolean = null as any;\n regexp: string = null as any;\n onFieldChange: any;\n required: boolean = false;\n triggerValidation: any;\n decimalPlaces: number = 2;\n onSubmitEditing?: any;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole;\n accessibilitylabelledby?: string = undefined;\n displayValue?: string;\n skipscripteventtrigger: boolean = false;\n}\n"],"mappings":";;;AACA,SAASA,SAAS,QAAQ,kDAAkD;AAE5E,eAAe,MAAMC,eAAe,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;IAAAA,eAAA,2BAElC,KAAK;IAAAA,eAAA,mBACL,IAAI;IAAAA,eAAA,mBACJ,IAAI;IAAAA,eAAA,eACR,CAAC;IAAAA,eAAA,mBACG,MAAM;IAAAA,eAAA,mBACL,IAAI;IAAAA,eAAA,iBACP,IAAI;IAAAA,eAAA;IAAAA,eAAA,mBAED,KAAK;IAAAA,eAAA;IAAAA,eAAA,wBAED,CAAC;IAAAA,eAAA;IAAAA,eAAA,6BAEKC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA;IAAAA,eAAA,kCAEUC,SAAS;IAAAD,eAAA;IAAAA,eAAA,iCAEV,KAAK;EAAA;AACzC","ignoreList":[]}
1
+ {"version":3,"names":["BaseProps","BaseNumberProps","constructor","args","_defineProperty","undefined"],"sources":["basenumber.props.ts"],"sourcesContent":["import {AccessibilityRole} from \"react-native\";\nimport { BaseProps } from '@wavemaker-ai/app-rn-runtime/core/base.component';\n\nexport default class BaseNumberProps extends BaseProps {\n datavalue: any;\n hastwowaybinding = false;\n minvalue: number = null as any;\n maxvalue: number = null as any;\n step: number = 1;\n updateon: string = 'blur' as any;\n readonly: boolean = null as any;\n regexp: string = null as any;\n onFieldChange: any;\n required: boolean = false;\n triggerValidation: any;\n decimalPlaces: number = 2;\n returnkeytype: 'auto' | 'next' | 'done' = 'auto';\n onSubmitEditing?: any;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole;\n accessibilitylabelledby?: string = undefined;\n displayValue?: string;\n skipscripteventtrigger: boolean = false;\n}\n"],"mappings":";;;AACA,SAASA,SAAS,QAAQ,kDAAkD;AAE5E,eAAe,MAAMC,eAAe,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;IAAAA,eAAA,2BAElC,KAAK;IAAAA,eAAA,mBACL,IAAI;IAAAA,eAAA,mBACJ,IAAI;IAAAA,eAAA,eACR,CAAC;IAAAA,eAAA,mBACG,MAAM;IAAAA,eAAA,mBACL,IAAI;IAAAA,eAAA,iBACP,IAAI;IAAAA,eAAA;IAAAA,eAAA,mBAED,KAAK;IAAAA,eAAA;IAAAA,eAAA,wBAED,CAAC;IAAAA,eAAA,wBACiB,MAAM;IAAAA,eAAA;IAAAA,eAAA,6BAElBC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA;IAAAA,eAAA,kCAEUC,SAAS;IAAAD,eAAA;IAAAA,eAAA,iCAEV,KAAK;EAAA;AACzC","ignoreList":[]}
@@ -124,7 +124,7 @@ export default class WmCalendar extends BaseComponent {
124
124
  return /*#__PURE__*/React.createElement(View, {
125
125
  style: this.styles.root,
126
126
  onLayout: event => this.handleLayout(event)
127
- }, this._background, /*#__PURE__*/React.createElement(MonthView, {
127
+ }, this.showSpinner(), this._background, /*#__PURE__*/React.createElement(MonthView, {
128
128
  date: this.state.selectedDate,
129
129
  selectDate: this.onDateChange,
130
130
  onDateClick: this.onDateClick,
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","isString","moment","BaseComponent","BaseComponentState","MonthView","WmCalendarProps","DEFAULT_CLASS","WmIcon","createSkeleton","WmCalendarState","constructor","args","_defineProperty","Map","DEFAULT_DATE_FORMAT","WmCalendar","props","date","d","format","dateWindow","state","calendar","get","updateState","datavalue","selectedDate","invokeEventCallback","events","createElement","iconclass","iconsize","styles","root","marginTop","alignSelf","icon","Math","min","length","Fragment","prepareDataset","dataset","eventStartKey","eventstart","forEach","startDate","has","set","push","onPropertyChange","name","$new","$old","componentDidUpdate","prevProps","prevState","snapshot","renderSkeleton","style","skeleton","headerSkeleton","theme","width","height","borderRadius","margin","renderWidget","onLayout","event","handleLayout","_background","selectDate","onDateChange","onDateClick","renderChildDay","renderDay","containerStyle","dateSelectedWarpDayStyle","selectedDay","selectedDayTextStyle","selectedDayText","warpRowWeekdays","weekDay","warpRowControlMonthYear","calendarHeader","weekdayStyle","weekDayText","warpDayStyle","dayWrapper","textDayStyle","day","yearTextStyle","yearText","monthTextStyle","monthText","currentDayStyle","today","currentDayTextStyle","todayText","notDayOfCurrentMonthStyle","notDayOfCurrentMonth","renderPrevYearButton","id","getTestId","prevYearBtn","accessibilitylabel","accessibilityrole","renderPrevMonthButton","prevMonthBtn","renderNextMonthButton","nextMonthBtn","renderNextYearButton","nextYearBtn"],"sources":["calendar.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, View } from 'react-native';\nimport { isString } from 'lodash';\nimport moment, { Moment } from 'moment';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\n\nimport { MonthView } from './views/month-view';\nimport WmCalendarProps from './calendar.props';\nimport { DEFAULT_CLASS, WmCalendarStyles } from './calendar.styles';\nimport WmIcon from '../../basic/icon/icon.component';\nimport { createSkeleton } from '@wavemaker-ai/app-rn-runtime/components/basic/skeleton/skeleton.component'\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\n\nexport class WmCalendarState extends BaseComponentState<WmCalendarProps> {\n selectedDate: Moment = moment();\n calendar: Map<String, { date: number, events: any []}> = new Map();\n}\n\nconst DEFAULT_DATE_FORMAT = 'DD-MM-YYYY';\n\nexport default class WmCalendar extends BaseComponent<WmCalendarProps, WmCalendarState, WmCalendarStyles> {\n\n constructor(props: WmCalendarProps) {\n super(props, DEFAULT_CLASS, new WmCalendarProps(), new WmCalendarState());\n }\n\n onDateChange = (date: Moment) => {\n const d = moment(date).format(DEFAULT_DATE_FORMAT);\n const dateWindow = this.state.calendar.get(d);\n this.updateState({\n props: {datavalue: d},\n selectedDate: date\n } as WmCalendarState);\n this.invokeEventCallback('onSelect', [d, d, this, dateWindow?.events]);\n }\n\n onDateClick = () => {\n this.invokeEventCallback('onDateclick', [null, this]);\n }\n\n prepareDataset(dataset: any[]) {\n if (!dataset) {\n return;\n }\n const state = {\n calendar: new Map()\n } as WmCalendarState;\n const eventStartKey = this.state.props.eventstart;\n dataset.forEach(d => {\n let startDate = d[eventStartKey];\n if (!isString(startDate)) {\n startDate = moment(startDate).format(DEFAULT_DATE_FORMAT);\n }\n if (!state.calendar.has(startDate)) {\n state.calendar.set(startDate, {\n date: moment(startDate, DEFAULT_DATE_FORMAT).get('milliseconds'),\n events: []\n });\n }\n const dateWindow = state.calendar.get(startDate);\n dateWindow?.events.push(d);\n });\n this.updateState(state);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch(name) {\n case 'dataset':\n this.prepareDataset($new);\n break;\n case 'datavalue':\n if ($new) {\n this.updateState({\n selectedDate: isString($new) ? moment($new, DEFAULT_DATE_FORMAT) : moment($new)\n } as WmCalendarState)\n }\n }\n }\n\n renderDay = (date: Moment) => {\n const dateWindow = this.state.calendar.get(moment(date).format(DEFAULT_DATE_FORMAT));\n if (dateWindow) {\n return (\n <WmIcon\n iconclass=\"fa fa-circle\"\n iconsize={8}\n styles={{\n root: {marginTop: -8, alignSelf: 'flexStart'},\n icon: this.styles['eventDay' + Math.min(3, dateWindow.events.length)]}}></WmIcon>\n );\n }\n return (<></>);\n }\n\n componentDidUpdate(prevProps: WmCalendarProps, prevState: WmCalendarState, snapshot: any) {\n super.componentDidUpdate && super.componentDidUpdate(prevProps, prevState, snapshot);\n this.invokeEventCallback('onViewrender', [this, null]);\n }\n\n public renderSkeleton(props: WmCalendarProps): React.ReactNode {\n return (\n <View style={[this.styles.root, this.styles.skeleton.root]}>\n <View style={this.styles.headerSkeleton.root}>\n {createSkeleton(this.theme, {} as WmSkeletonStyles, {width: '10%', height: 28,borderRadius: 4})}\n {createSkeleton(this.theme, {} as WmSkeletonStyles, {width: '68%', height: 16, borderRadius: 4})}\n {createSkeleton(this.theme, {}as WmSkeletonStyles, {width: '10%', height: 28, borderRadius: 4})}\n </View>\n {createSkeleton(this.theme, {} as WmSkeletonStyles, {width: '96%', margin: 8, height: 320, borderRadius: 4})}\n </View>)\n }\n\n renderWidget(props: WmCalendarProps) {\n this.invokeEventCallback('onBeforerender', [null, this]);\n return (\n <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n {this._background}\n <MonthView\n date={this.state.selectedDate}\n selectDate={this.onDateChange}\n onDateClick={this.onDateClick}\n format={DEFAULT_DATE_FORMAT}\n renderChildDay={this.renderDay}\n containerStyle={this.styles.calendar}\n dateSelectedWarpDayStyle={this.styles.selectedDay}\n selectedDayTextStyle={this.styles.selectedDayText}\n warpRowWeekdays={this.styles.weekDay}\n warpRowControlMonthYear={this.styles.calendarHeader}\n weekdayStyle={this.styles.weekDayText}\n warpDayStyle={this.styles.dayWrapper}\n textDayStyle={this.styles.day}\n yearTextStyle={this.styles.yearText}\n monthTextStyle={this.styles.monthText}\n currentDayStyle={this.styles.today}\n currentDayTextStyle={this.styles.todayText}\n notDayOfCurrentMonthStyle={this.styles.notDayOfCurrentMonth}\n renderPrevYearButton={() =>\n (<WmIcon id={this.getTestId('prevyearicon')} iconclass=\"wi wi-angle-double-left\" styles={this.styles.prevYearBtn} accessibilitylabel='previous year' accessibilityrole='button'/>)}\n renderPrevMonthButton={() =>\n (<WmIcon id={this.getTestId('prevmonthicon')} iconclass=\"wi wi-chevron-left fa-2x\" styles={this.styles.prevMonthBtn} accessibilitylabel='previous month' accessibilityrole='button'/>)}\n renderNextMonthButton={() =>\n (<WmIcon id={this.getTestId('nextmonthicon')} iconclass=\"wi wi-chevron-right fa-2x\" styles={this.styles.nextMonthBtn} accessibilitylabel='next month' accessibilityrole='button'/>)}\n renderNextYearButton={() =>\n (<WmIcon id={this.getTestId('nextyearicon')} iconclass=\"wi wi-angle-double-right\" styles={this.styles.nextYearBtn} accessibilitylabel='next year' accessibilityrole='button'/>)}\n />\n </View>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","View","isString","moment","BaseComponent","BaseComponentState","MonthView","WmCalendarProps","DEFAULT_CLASS","WmIcon","createSkeleton","WmCalendarState","constructor","args","_defineProperty","Map","DEFAULT_DATE_FORMAT","WmCalendar","props","date","d","format","dateWindow","state","calendar","get","updateState","datavalue","selectedDate","invokeEventCallback","events","createElement","iconclass","iconsize","styles","root","marginTop","alignSelf","icon","Math","min","length","Fragment","prepareDataset","dataset","eventStartKey","eventstart","forEach","startDate","has","set","push","onPropertyChange","name","$new","$old","componentDidUpdate","prevProps","prevState","snapshot","renderSkeleton","style","skeleton","headerSkeleton","theme","width","height","borderRadius","margin","renderWidget","onLayout","event","handleLayout","showSpinner","_background","selectDate","onDateChange","onDateClick","renderChildDay","renderDay","containerStyle","dateSelectedWarpDayStyle","selectedDay","selectedDayTextStyle","selectedDayText","warpRowWeekdays","weekDay","warpRowControlMonthYear","calendarHeader","weekdayStyle","weekDayText","warpDayStyle","dayWrapper","textDayStyle","day","yearTextStyle","yearText","monthTextStyle","monthText","currentDayStyle","today","currentDayTextStyle","todayText","notDayOfCurrentMonthStyle","notDayOfCurrentMonth","renderPrevYearButton","id","getTestId","prevYearBtn","accessibilitylabel","accessibilityrole","renderPrevMonthButton","prevMonthBtn","renderNextMonthButton","nextMonthBtn","renderNextYearButton","nextYearBtn"],"sources":["calendar.component.tsx"],"sourcesContent":["import React from 'react';\nimport { DimensionValue, View } from 'react-native';\nimport { isString } from 'lodash';\nimport moment, { Moment } from 'moment';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\n\nimport { MonthView } from './views/month-view';\nimport WmCalendarProps from './calendar.props';\nimport { DEFAULT_CLASS, WmCalendarStyles } from './calendar.styles';\nimport WmIcon from '../../basic/icon/icon.component';\nimport { createSkeleton } from '@wavemaker-ai/app-rn-runtime/components/basic/skeleton/skeleton.component'\nimport { WmSkeletonStyles } from '../../basic/skeleton/skeleton.styles';\n\nexport class WmCalendarState extends BaseComponentState<WmCalendarProps> {\n selectedDate: Moment = moment();\n calendar: Map<String, { date: number, events: any []}> = new Map();\n}\n\nconst DEFAULT_DATE_FORMAT = 'DD-MM-YYYY';\n\nexport default class WmCalendar extends BaseComponent<WmCalendarProps, WmCalendarState, WmCalendarStyles> {\n\n constructor(props: WmCalendarProps) {\n super(props, DEFAULT_CLASS, new WmCalendarProps(), new WmCalendarState());\n }\n\n onDateChange = (date: Moment) => {\n const d = moment(date).format(DEFAULT_DATE_FORMAT);\n const dateWindow = this.state.calendar.get(d);\n this.updateState({\n props: {datavalue: d},\n selectedDate: date\n } as WmCalendarState);\n this.invokeEventCallback('onSelect', [d, d, this, dateWindow?.events]);\n }\n\n onDateClick = () => {\n this.invokeEventCallback('onDateclick', [null, this]);\n }\n\n prepareDataset(dataset: any[]) {\n if (!dataset) {\n return;\n }\n const state = {\n calendar: new Map()\n } as WmCalendarState;\n const eventStartKey = this.state.props.eventstart;\n dataset.forEach(d => {\n let startDate = d[eventStartKey];\n if (!isString(startDate)) {\n startDate = moment(startDate).format(DEFAULT_DATE_FORMAT);\n }\n if (!state.calendar.has(startDate)) {\n state.calendar.set(startDate, {\n date: moment(startDate, DEFAULT_DATE_FORMAT).get('milliseconds'),\n events: []\n });\n }\n const dateWindow = state.calendar.get(startDate);\n dateWindow?.events.push(d);\n });\n this.updateState(state);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch(name) {\n case 'dataset':\n this.prepareDataset($new);\n break;\n case 'datavalue':\n if ($new) {\n this.updateState({\n selectedDate: isString($new) ? moment($new, DEFAULT_DATE_FORMAT) : moment($new)\n } as WmCalendarState)\n }\n }\n }\n\n renderDay = (date: Moment) => {\n const dateWindow = this.state.calendar.get(moment(date).format(DEFAULT_DATE_FORMAT));\n if (dateWindow) {\n return (\n <WmIcon\n iconclass=\"fa fa-circle\"\n iconsize={8}\n styles={{\n root: {marginTop: -8, alignSelf: 'flexStart'},\n icon: this.styles['eventDay' + Math.min(3, dateWindow.events.length)]}}></WmIcon>\n );\n }\n return (<></>);\n }\n\n componentDidUpdate(prevProps: WmCalendarProps, prevState: WmCalendarState, snapshot: any) {\n super.componentDidUpdate && super.componentDidUpdate(prevProps, prevState, snapshot);\n this.invokeEventCallback('onViewrender', [this, null]);\n }\n\n public renderSkeleton(props: WmCalendarProps): React.ReactNode {\n return (\n <View style={[this.styles.root, this.styles.skeleton.root]}>\n <View style={this.styles.headerSkeleton.root}>\n {createSkeleton(this.theme, {} as WmSkeletonStyles, {width: '10%', height: 28,borderRadius: 4})}\n {createSkeleton(this.theme, {} as WmSkeletonStyles, {width: '68%', height: 16, borderRadius: 4})}\n {createSkeleton(this.theme, {}as WmSkeletonStyles, {width: '10%', height: 28, borderRadius: 4})}\n </View>\n {createSkeleton(this.theme, {} as WmSkeletonStyles, {width: '96%', margin: 8, height: 320, borderRadius: 4})}\n </View>)\n }\n\n renderWidget(props: WmCalendarProps) {\n this.invokeEventCallback('onBeforerender', [null, this]);\n return (\n <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n {this.showSpinner()}\n {this._background}\n <MonthView\n date={this.state.selectedDate}\n selectDate={this.onDateChange}\n onDateClick={this.onDateClick}\n format={DEFAULT_DATE_FORMAT}\n renderChildDay={this.renderDay}\n containerStyle={this.styles.calendar}\n dateSelectedWarpDayStyle={this.styles.selectedDay}\n selectedDayTextStyle={this.styles.selectedDayText}\n warpRowWeekdays={this.styles.weekDay}\n warpRowControlMonthYear={this.styles.calendarHeader}\n weekdayStyle={this.styles.weekDayText}\n warpDayStyle={this.styles.dayWrapper}\n textDayStyle={this.styles.day}\n yearTextStyle={this.styles.yearText}\n monthTextStyle={this.styles.monthText}\n currentDayStyle={this.styles.today}\n currentDayTextStyle={this.styles.todayText}\n notDayOfCurrentMonthStyle={this.styles.notDayOfCurrentMonth}\n renderPrevYearButton={() =>\n (<WmIcon id={this.getTestId('prevyearicon')} iconclass=\"wi wi-angle-double-left\" styles={this.styles.prevYearBtn} accessibilitylabel='previous year' accessibilityrole='button'/>)}\n renderPrevMonthButton={() =>\n (<WmIcon id={this.getTestId('prevmonthicon')} iconclass=\"wi wi-chevron-left fa-2x\" styles={this.styles.prevMonthBtn} accessibilitylabel='previous month' accessibilityrole='button'/>)}\n renderNextMonthButton={() =>\n (<WmIcon id={this.getTestId('nextmonthicon')} iconclass=\"wi wi-chevron-right fa-2x\" styles={this.styles.nextMonthBtn} accessibilitylabel='next month' accessibilityrole='button'/>)}\n renderNextYearButton={() =>\n (<WmIcon id={this.getTestId('nextyearicon')} iconclass=\"wi wi-angle-double-right\" styles={this.styles.nextYearBtn} accessibilitylabel='next year' accessibilityrole='button'/>)}\n />\n </View>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -141,7 +141,7 @@ export default class WmCheckboxset extends BaseDatasetComponent {
141
141
  return /*#__PURE__*/React.createElement(ScrollView, {
142
142
  style: this.styles.root,
143
143
  onLayout: event => this.handleLayout(event)
144
- }, /*#__PURE__*/React.createElement(ScrollView, {
144
+ }, this.showSpinner(), /*#__PURE__*/React.createElement(ScrollView, {
145
145
  horizontal: true,
146
146
  style: this.isRTL && Platform.OS == 'android' ? {
147
147
  transform: [{