@wavemaker/app-rn-runtime 11.11.7-rc.218 → 11.12.0-next.28188
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/advanced/carousel/carousel.component.js +4 -2
- package/components/advanced/carousel/carousel.component.js.map +1 -1
- package/components/basic/anchor/anchor.component.js +11 -5
- package/components/basic/anchor/anchor.component.js.map +1 -1
- package/components/basic/anchor/anchor.props.js +1 -0
- package/components/basic/anchor/anchor.props.js.map +1 -1
- package/components/basic/audio/audio.component.js +52 -47
- package/components/basic/audio/audio.component.js.map +1 -1
- package/components/basic/bottomsheet/bottomsheet.component.js +94 -48
- package/components/basic/bottomsheet/bottomsheet.component.js.map +1 -1
- package/components/basic/bottomsheet/bottomsheet.props.js +1 -0
- package/components/basic/bottomsheet/bottomsheet.props.js.map +1 -1
- package/components/basic/button/button.component.js +2 -1
- package/components/basic/button/button.component.js.map +1 -1
- package/components/basic/button/button.props.js +1 -0
- package/components/basic/button/button.props.js.map +1 -1
- package/components/basic/label/label.component.js.map +1 -1
- package/components/basic/label/label.props.js +1 -0
- package/components/basic/label/label.props.js.map +1 -1
- package/components/basic/message/message.component.js +15 -7
- package/components/basic/message/message.component.js.map +1 -1
- package/components/basic/message/message.props.js +1 -0
- package/components/basic/message/message.props.js.map +1 -1
- package/components/basic/picture/picture.component.js +2 -2
- package/components/basic/picture/picture.component.js.map +1 -1
- package/components/basic/video/video.component.js +69 -42
- package/components/basic/video/video.component.js.map +1 -1
- package/components/chart/basechart.props.js +1 -0
- package/components/chart/basechart.props.js.map +1 -1
- package/components/container/container.component.js +107 -27
- package/components/container/container.component.js.map +1 -1
- package/components/container/container.props.js +3 -1
- package/components/container/container.props.js.map +1 -1
- package/components/container/container.styles.js +1 -3
- package/components/container/container.styles.js.map +1 -1
- package/components/container/layoutgrid/gridcolumn/gridcolumn.component.js +6 -1
- package/components/container/layoutgrid/gridcolumn/gridcolumn.component.js.map +1 -1
- package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js +2 -2
- package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js.map +1 -1
- package/components/container/tabs/tabheader/tabheader.component.js +11 -2
- package/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
- package/components/container/tabs/tabheader/tabheader.props.js +1 -0
- package/components/container/tabs/tabheader/tabheader.props.js.map +1 -1
- package/components/container/tabs/tabpane/tabpane.props.js +3 -0
- package/components/container/tabs/tabpane/tabpane.props.js.map +1 -1
- package/components/container/tabs/tabs.component.js +11 -2
- package/components/container/tabs/tabs.component.js.map +1 -1
- package/components/container/wizard/wizard.component.js +1 -0
- package/components/container/wizard/wizard.component.js.map +1 -1
- package/components/data/list/list.component.js +23 -13
- package/components/data/list/list.component.js.map +1 -1
- package/components/device/barcodescanner/barcodescanner.component.js +33 -18
- package/components/device/barcodescanner/barcodescanner.component.js.map +1 -1
- package/components/device/barcodescanner/barcodescanner.props.js +2 -1
- package/components/device/barcodescanner/barcodescanner.props.js.map +1 -1
- package/components/device/camera/camera.component.js +35 -22
- package/components/device/camera/camera.component.js.map +1 -1
- package/components/device/camera/camera.props.js +2 -1
- package/components/device/camera/camera.props.js.map +1 -1
- package/components/input/basedataset/basedataset.props.js +1 -0
- package/components/input/basedataset/basedataset.props.js.map +1 -1
- package/components/input/calendar/calendar.component.js +12 -4
- package/components/input/calendar/calendar.component.js.map +1 -1
- package/components/input/calendar/views/month-view.js +9 -2
- package/components/input/calendar/views/month-view.js.map +1 -1
- package/components/input/checkbox/checkbox.component.js +5 -5
- package/components/input/checkbox/checkbox.component.js.map +1 -1
- package/components/input/checkboxset/checkboxset.component.js +15 -11
- package/components/input/checkboxset/checkboxset.component.js.map +1 -1
- package/components/input/chips/chips.component.js +25 -12
- package/components/input/chips/chips.component.js.map +1 -1
- package/components/input/currency/currency.component.js +5 -2
- package/components/input/currency/currency.component.js.map +1 -1
- package/components/input/epoch/base-datetime.component.js +9 -9
- package/components/input/epoch/base-datetime.component.js.map +1 -1
- package/components/input/epoch/datetime/datetime.props.js +1 -0
- package/components/input/epoch/datetime/datetime.props.js.map +1 -1
- package/components/input/epoch/wheelpicker/wheelpicker.component.js +8 -3
- package/components/input/epoch/wheelpicker/wheelpicker.component.js.map +1 -1
- package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js +8 -3
- package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js.map +1 -1
- package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js +8 -3
- package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js.map +1 -1
- package/components/input/fileupload/fileupload.component.js +23 -14
- package/components/input/fileupload/fileupload.component.js.map +1 -1
- package/components/input/fileupload/fileupload.props.js +2 -0
- package/components/input/fileupload/fileupload.props.js.map +1 -1
- package/components/input/radioset/radioset.component.js +15 -5
- package/components/input/radioset/radioset.component.js.map +1 -1
- package/components/input/rating/rating.component.js +11 -3
- package/components/input/rating/rating.component.js.map +1 -1
- package/components/input/rating/rating.props.js +4 -0
- package/components/input/rating/rating.props.js.map +1 -1
- package/components/input/select/select.component.js +7 -5
- package/components/input/select/select.component.js.map +1 -1
- package/components/input/slider/slider.component.js +2 -1
- package/components/input/slider/slider.component.js.map +1 -1
- package/components/input/switch/switch.component.js +11 -9
- package/components/input/switch/switch.component.js.map +1 -1
- package/components/input/toggle/toggle.component.js +8 -4
- package/components/input/toggle/toggle.component.js.map +1 -1
- package/components/input/toggle/toggle.props.js +1 -0
- package/components/input/toggle/toggle.props.js.map +1 -1
- package/components/navigation/appnavbar/appnavbar.component.js +19 -61
- package/components/navigation/appnavbar/appnavbar.component.js.map +1 -1
- package/components/navigation/navitem/navitem.component.js +3 -1
- package/components/navigation/navitem/navitem.component.js.map +1 -1
- package/components/navigation/popover/popover.component.js +2 -1
- package/components/navigation/popover/popover.component.js.map +1 -1
- package/components/navigation/popover/popover.props.js +2 -1
- package/components/navigation/popover/popover.props.js.map +1 -1
- package/components/page/page-content/page-content.component.js +74 -20
- package/components/page/page-content/page-content.component.js.map +1 -1
- package/components/page/page-content/page-content.props.js +1 -0
- package/components/page/page-content/page-content.props.js.map +1 -1
- package/components/page/page.component.js +29 -44
- package/components/page/page.component.js.map +1 -1
- package/components/page/page.props.js +4 -2
- package/components/page/page.props.js.map +1 -1
- package/components/page/tabbar/tabbar.component.js +24 -13
- package/components/page/tabbar/tabbar.component.js.map +1 -1
- package/core/AppConfig.js.map +1 -1
- package/core/accessibility.js +51 -32
- package/core/accessibility.js.map +1 -1
- package/core/base.component.js.map +1 -1
- package/core/components/error-fallback/error-fallback.component.js +140 -0
- package/core/components/error-fallback/error-fallback.component.js.map +1 -0
- package/core/components/error-fallback/error-fallback.styles.js +224 -0
- package/core/components/error-fallback/error-fallback.styles.js.map +1 -0
- package/core/components/sticky-base.component.js +54 -0
- package/core/components/sticky-base.component.js.map +1 -0
- package/core/components/sticky-container.component.js +34 -0
- package/core/components/sticky-container.component.js.map +1 -0
- package/core/components/sticky-container.styles.js +98 -0
- package/core/components/sticky-container.styles.js.map +1 -0
- package/core/components/sticky-nav.component.js +28 -0
- package/core/components/sticky-nav.component.js.map +1 -0
- package/core/device/av-service.js +8 -0
- package/core/device/av-service.js.map +1 -0
- package/core/device/calendar-service.js +7 -1
- package/core/device/calendar-service.js.map +1 -1
- package/core/device/camera-service.js +6 -0
- package/core/device/camera-service.js.map +1 -1
- package/core/device/contacts-service.js +7 -1
- package/core/device/contacts-service.js.map +1 -1
- package/core/device/fileupload-service.js +8 -0
- package/core/device/fileupload-service.js.map +1 -0
- package/core/device/location-service.js +7 -1
- package/core/device/location-service.js.map +1 -1
- package/core/device/scan-service.js +6 -0
- package/core/device/scan-service.js.map +1 -1
- package/core/error-boundary.component.js +1 -1
- package/core/error-boundary.component.js.map +1 -1
- package/core/event-notifier.js +4 -3
- package/core/event-notifier.js.map +1 -1
- package/core/fixed-view.component.js +2 -1
- package/core/fixed-view.component.js.map +1 -1
- package/core/responsive.utils.js +8 -5
- package/core/responsive.utils.js.map +1 -1
- package/core/sticky-view.component.js +50 -0
- package/core/sticky-view.component.js.map +1 -0
- package/core/sticky-wrapper.js +129 -0
- package/core/sticky-wrapper.js.map +1 -0
- package/core/utils.js +0 -6
- package/core/utils.js.map +1 -1
- package/npm-shrinkwrap.json +9 -9
- package/package-lock.json +9 -9
- package/package.json +2 -2
- package/runtime/App.js +3 -5
- package/runtime/App.js.map +1 -1
- package/runtime/services/device/calendar-service.js +9 -5
- package/runtime/services/device/calendar-service.js.map +1 -1
- package/runtime/services/device/camera-service.js +39 -22
- package/runtime/services/device/camera-service.js.map +1 -1
- package/runtime/services/device/contacts-service.js +6 -5
- package/runtime/services/device/contacts-service.js.map +1 -1
- package/runtime/services/device/location-service.js +4 -4
- package/runtime/services/device/location-service.js.map +1 -1
- package/runtime/services/device/permission-service.js +5 -0
- package/runtime/services/device/permission-service.js.map +1 -0
- package/runtime/services/device/permissions.js +34 -39
- package/runtime/services/device/permissions.js.map +1 -1
- package/runtime/services/device/scan-service.js +4 -3
- package/runtime/services/device/scan-service.js.map +1 -1
- package/styles/theme.js +24 -18
- package/styles/theme.js.map +1 -1
- package/variables/device/calendar/create-event.operation.js +12 -1
- package/variables/device/calendar/create-event.operation.js.map +1 -1
- package/variables/device/calendar/delete-event.operation.js +12 -1
- package/variables/device/calendar/delete-event.operation.js.map +1 -1
- package/variables/device/calendar/get-events.operation.js +12 -1
- package/variables/device/calendar/get-events.operation.js.map +1 -1
- package/variables/device/camera/capture-image.operation.js +8 -1
- package/variables/device/camera/capture-image.operation.js.map +1 -1
- package/variables/device/camera/capture-video.operation.js +7 -1
- package/variables/device/camera/capture-video.operation.js.map +1 -1
- package/variables/device/contacts/get-contacts.operation.js +12 -1
- package/variables/device/contacts/get-contacts.operation.js.map +1 -1
- package/variables/device/device/current-geo-position.operation.js +12 -1
- package/variables/device/device/current-geo-position.operation.js.map +1 -1
- package/variables/device/file/upload-file.operation.js +17 -3
- package/variables/device/file/upload-file.operation.js.map +1 -1
- package/variables/device/scan/scan.operation.js +12 -1
- package/variables/device/scan/scan.operation.js.map +1 -1
- package/variables/http.service.js +6 -1
- package/variables/http.service.js.map +1 -1
- package/core/components/error-fallback.component.js +0 -264
- package/core/components/error-fallback.component.js.map +0 -1
- package/core/sticky-container.component.js +0 -175
- package/core/sticky-container.component.js.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","ActivityIndicator","SectionList","Text","View","FlatList","isArray","isEmpty","isNil","isNumber","round","BaseComponent","BaseComponentState","getGroupedData","getNumberOfEmptyObjects","isDefined","getNumberOfColumnsFromResponsiveConfig","Tappable","DefaultKeyExtractor","WmLabel","WmIcon","Swipeable","_viewPort","EVENTS","ViewPortEvents","WmListProps","DEFAULT_CLASS","BackgroundComponent","WmListState","constructor","args","_defineProperty","WmList","props","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","viewPosition","isHorizontal","vData","nodatamessage","ondemandmessage","hasMoreData","maxRecordsToShow","pagesize","cleanup","push","subscribe","SIZE_CHANGE","forceUpdate","isSelected","$item","$index","$event","disableitemselect","eventName","disableitem","selectionlimit","selectedItemWidgets","direction","_this$state$groupedDa","forEach","group","data","includes","key","Promise","resolve","scrollToItem","loadDataOnDemand","navigation","loadData","loadingData","setTimeout","$list","loadingdata","getNextPageData","currentPage","then","lastScrollTriggered","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","scrollPosition","nativeEvent","contentOffset","y","contentHeight","contentSize","height","viewportHeight","layoutMeasurement","scrollPercentage","componentDidUpdate","prevProps","prevState","snapshot","triggeronrenderwhenhidden","showView","getDefaultStyles","theme","getStyle","defaultClass","getIndex","generateItemKey","itemkey","_showSkeleton","getKey","renderItem","cols","getNoOfColumns","styles","skeleton","root","containerStyle","width","flex","horizontalondemandenabled","shouldswipe","style","itemclass","backgroundImage","image","position","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","borderRadius","_extends","getTestPropsForAction","disableTouchEffect","disabletoucheffect","onTap","onLongTap","onDoubleTap","display","flexDirection","paddingRight","marginRight","margin","itemContainer","id","getTestId","iconclass","selectedIcon","renderLeftActions","renderRightActions","selecteditemicon","renderHeader","title","groupHeading","accessibilityRole","subheading","heading","listIcon","caption","accessibilityrole","renderEmptyMessage","emptyMessage","renderLoadingIcon","loadingicon","loadingIcon","loadingdatamsg","color","text","responsive","columns","itemsperrow","fallback","xs","renderWithFlatList","v","i","_ref","ref","testID","scrollEnabled","horizontal","contentContainerStyle","listContainer","numberofskeletonitems","ListEmptyComponent","itemInfo","showsHorizontalScrollIndicator","hidehorizontalscrollbar","numColumns","columnWrapperStyle","columnWrapper","onDemandMessage","getCaption","getSectionListData","_ref2","renderWithSectionList","sections","renderSectionHeader","section","renderSectionFooter","renderWidget","onLayout","handleLayout","_background"],"sources":["list.component.tsx"],"sourcesContent":["import React from 'react';\nimport { ActivityIndicator, SectionList, Text, View, FlatList, LayoutChangeEvent, TouchableOpacity } from 'react-native';\nimport { isArray, isEmpty, isNil, isNumber, round } from 'lodash-es';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { getGroupedData, getNumberOfEmptyObjects, isDefined } from \"@wavemaker/app-rn-runtime/core/utils\";\nimport { getNumberOfColumnsFromResponsiveConfig } from '@wavemaker/app-rn-runtime/core/responsive.utils';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { DefaultKeyExtractor } from '@wavemaker/app-rn-runtime/core/key.extractor';\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker/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/app-rn-runtime/styles/theme';\nimport _viewPort, { EVENTS as ViewPortEvents } from '@wavemaker/app-rn-runtime/core/viewport';\n\nimport WmListProps from './list.props';\nimport { DEFAULT_CLASS, WmListStyles } from './list.styles';\nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\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 lastScrollTriggered:boolean = false\n\n\n\n constructor(props: WmListProps) {\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, () => {\n this.forceUpdate();\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 === 'horizontal') {\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 === 'horizontal') {\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.lastScrollTriggered = false;\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 === 'horizontal' ? [{\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\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 // Calculate how far user has scrolled as a percentage\n const scrollPercentage = (scrollPosition + viewportHeight) / contentHeight;\n \n // Only trigger loadData when User reaches 70% of the list\n if (scrollPercentage >= 0.7 && \n this.state.props.direction === 'vertical' && \n !this.lastScrollTriggered) {\n this.lastScrollTriggered = true\n this.loadData();\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 === 'horizontal';\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 renderItem(item: any, index: number, props: WmListProps) {\n const cols = this.getNoOfColumns();\n const isHorizontal = (props.direction === 'horizontal');\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 = cols ? { width: round(100 / cols) + \"%\", flex: null } : {};\n if(cols > 1 ) {\n containerStyle = {flex: 1} as any; \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 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='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 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.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}></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 ? (<WmIcon\n id={this.getTestId('loadingicon')}\n styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\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 === 'vertical' && props.responsive) {\n const columns = getNumberOfColumnsFromResponsiveConfig(props.itemsperrow, undefined, props.fallback);\n return columns && columns > 0 ? columns : 1;\n } else if (props.direction === 'vertical' && !props.responsive) {\n return props.itemsperrow.xs || 1;\n }\n return 0;\n }\n\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 viewPosition: 0.5,\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 renderWithFlatList(props: WmListProps, isHorizontal = false) {\n\n return (\n <View style={this.styles.root} \n //onLayout={e => this.onLayoutChange(e)}\n >\n {!isEmpty(this.state.groupedData) ? this.state.groupedData.map((v: any, i) => ((\n <View style={this.styles.group} 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 testID={this.getTestId('flat_list')}\n key={props.name + '_' + (isHorizontal ? 'H' : 'V') + props.itemsperrow.xs}\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n scrollEnabled={isHorizontal}\n horizontal={isHorizontal}\n contentContainerStyle={this.styles.listContainer}\n data={this._showSkeleton ? [...getNumberOfEmptyObjects(this.props.numberofskeletonitems as number ?? 3)] : (isEmpty(v.data[0]) ? [] : v.data)}\n ListEmptyComponent={(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}\n {...(isHorizontal ? { showsHorizontalScrollIndicator: !props.hidehorizontalscrollbar } : { numColumns: this.getNoOfColumns() })}\n {...(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;\n }\n return [];\n }\n\n private renderWithSectionList(props: WmListProps, isHorizontal = false) {\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={this.styles.root}\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 === 'horizontal');\n\n return (\n <View\n style={isHorizontal ? null : { width: '100%' }}\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","isArray","isEmpty","isNil","isNumber","round","BaseComponent","BaseComponentState","getGroupedData","getNumberOfEmptyObjects","isDefined","getNumberOfColumnsFromResponsiveConfig","Tappable","DefaultKeyExtractor","WmLabel","WmIcon","Swipeable","_viewPort","EVENTS","ViewPortEvents","WmListProps","DEFAULT_CLASS","BackgroundComponent","WmListState","constructor","args","_defineProperty","WmList","props","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","viewPosition","isHorizontal","vData","nodatamessage","ondemandmessage","hasMoreData","maxRecordsToShow","pagesize","cleanup","push","subscribe","SIZE_CHANGE","forceUpdate","isSelected","$item","$index","$event","disableitemselect","eventName","disableitem","selectionlimit","selectedItemWidgets","direction","_this$state$groupedDa","forEach","group","data","includes","key","Promise","resolve","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","renderItem","cols","getNoOfColumns","styles","skeleton","root","containerStyle","width","flex","horizontalondemandenabled","shouldswipe","style","itemclass","backgroundImage","image","position","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","borderRadius","_extends","getTestPropsForAction","disableTouchEffect","disabletoucheffect","onTap","onLongTap","onDoubleTap","display","flexDirection","paddingRight","marginRight","margin","itemContainer","id","getTestId","iconclass","selectedIcon","renderLeftActions","renderRightActions","selecteditemicon","renderHeader","title","groupHeading","accessibilityRole","subheading","heading","listIcon","caption","accessibilityrole","renderEmptyMessage","emptyMessage","renderLoadingIcon","loadingicon","loadingIcon","loadingdatamsg","color","text","responsive","columns","itemsperrow","fallback","xs","onLayoutChange","e","renderWithFlatList","onLayout","v","i","_ref","ref","testID","scrollEnabled","horizontal","contentContainerStyle","listContainer","numberofskeletonitems","ListEmptyComponent","itemInfo","showsHorizontalScrollIndicator","hidehorizontalscrollbar","numColumns","columnWrapperStyle","columnWrapper","onDemandMessage","getCaption","getSectionListData","_ref2","renderWithSectionList","sections","renderSectionHeader","section","renderSectionFooter","renderWidget","handleLayout","_background"],"sources":["list.component.tsx"],"sourcesContent":["import React from 'react';\nimport { ActivityIndicator, SectionList, Text, View, FlatList, LayoutChangeEvent, TouchableOpacity } from 'react-native';\nimport { isArray, isEmpty, isNil, isNumber, round } from 'lodash-es';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { getGroupedData, getNumberOfEmptyObjects, isDefined } from \"@wavemaker/app-rn-runtime/core/utils\";\nimport { getNumberOfColumnsFromResponsiveConfig } from '@wavemaker/app-rn-runtime/core/responsive.utils';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { DefaultKeyExtractor } from '@wavemaker/app-rn-runtime/core/key.extractor';\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker/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/app-rn-runtime/styles/theme';\nimport _viewPort, { EVENTS as ViewPortEvents } from '@wavemaker/app-rn-runtime/core/viewport';\n\nimport WmListProps from './list.props';\nimport { DEFAULT_CLASS, WmListStyles } from './list.styles';\nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\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\n\n \n\n constructor(props: WmListProps) {\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, () => {\n this.forceUpdate();\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 === 'horizontal') {\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 === 'horizontal') {\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 === 'horizontal' ? [{\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 === 'horizontal';\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 renderItem(item: any, index: number, props: WmListProps) {\n const cols = this.getNoOfColumns();\n const isHorizontal = (props.direction === 'horizontal');\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 = cols ? { width: round(100 / cols) + \"%\", flex: null } : {};\n if(cols > 1 ) {\n containerStyle = {flex: 1} as any; \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 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='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 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.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}></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 ? (<WmIcon\n id={this.getTestId('loadingicon')}\n styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\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 === 'vertical' && props.responsive) {\n const columns = getNumberOfColumnsFromResponsiveConfig(props.itemsperrow, undefined, props.fallback);\n return columns && columns > 0 ? columns : 1;\n } else if (props.direction === 'vertical' && !props.responsive) {\n return props.itemsperrow.xs || 1;\n }\n return 0;\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 viewPosition: 0.5,\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 private renderWithFlatList(props: WmListProps, isHorizontal = false) {\n\n return (\n <View style={this.styles.root} \n onLayout={e => this.onLayoutChange(e)}\n >\n {!isEmpty(this.state.groupedData) ? this.state.groupedData.map((v: any, i) => ((\n <View style={this.styles.group} 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 testID={this.getTestId('flat_list')}\n key={props.name + '_' + (isHorizontal ? 'H' : 'V') + props.itemsperrow.xs}\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n scrollEnabled={isHorizontal}\n horizontal={isHorizontal}\n contentContainerStyle={this.styles.listContainer}\n data={this._showSkeleton ? [...getNumberOfEmptyObjects(this.props.numberofskeletonitems as number ?? 3)] : (isEmpty(v.data[0]) ? [] : v.data)}\n ListEmptyComponent={(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}\n {...(isHorizontal ? { showsHorizontalScrollIndicator: !props.hidehorizontalscrollbar } : { numColumns: this.getNoOfColumns() })}\n {...(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;\n }\n return [];\n }\n\n private renderWithSectionList(props: WmListProps, isHorizontal = false) {\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={this.styles.root}\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 === 'horizontal');\n\n return (\n <View\n style={isHorizontal ? null : { width: '100%' }}\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,22 +1,28 @@
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
1
2
|
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
2
3
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
3
4
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
4
5
|
import React from 'react';
|
5
6
|
import { View } from 'react-native';
|
6
7
|
import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';
|
7
|
-
import { ScanConsumer } from '@wavemaker/app-rn-runtime/core/device/scan-service';
|
8
|
+
import { ScanConsumer, ScanPluginConsumer } from '@wavemaker/app-rn-runtime/core/device/scan-service';
|
8
9
|
import WmBarcodescannerProps from './barcodescanner.props';
|
9
10
|
import { DEFAULT_CLASS } from './barcodescanner.styles';
|
10
11
|
import WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';
|
12
|
+
import { PermissionConsumer } from '@wavemaker/app-rn-runtime/runtime/services/device/permission-service';
|
11
13
|
export class WmBarcodescannerState extends BaseComponentState {}
|
12
14
|
export default class WmBarcodescanner extends BaseComponent {
|
13
15
|
constructor(props) {
|
14
16
|
super(props, DEFAULT_CLASS, new WmBarcodescannerProps());
|
17
|
+
_defineProperty(this, "scanPluginService", null);
|
18
|
+
_defineProperty(this, "permissionService", null);
|
15
19
|
_defineProperty(this, "scanner", null);
|
16
20
|
}
|
17
21
|
onScanTap() {
|
18
22
|
const params = {
|
19
|
-
barcodeFormat: this.state.props.barcodeformat
|
23
|
+
barcodeFormat: this.state.props.barcodeformat,
|
24
|
+
scanPluginService: this.scanPluginService,
|
25
|
+
permissionService: this.permissionService
|
20
26
|
};
|
21
27
|
this.scanner.scanBarcode(params).then(res => {
|
22
28
|
this.updateState({
|
@@ -29,22 +35,31 @@ export default class WmBarcodescanner extends BaseComponent {
|
|
29
35
|
});
|
30
36
|
}
|
31
37
|
renderWidget(props) {
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
38
|
+
const accessibilityProps = {
|
39
|
+
accessible: props.accessible,
|
40
|
+
accessibilitylabel: props.accessibilitylabel || props.caption,
|
41
|
+
accessibilityrole: props.accessibilityrole,
|
42
|
+
hint: props.hint
|
43
|
+
};
|
44
|
+
return /*#__PURE__*/React.createElement(PermissionConsumer, null, permissionService => {
|
45
|
+
this.permissionService = permissionService;
|
46
|
+
return /*#__PURE__*/React.createElement(ScanPluginConsumer, null, scanPluginService => {
|
47
|
+
this.scanPluginService = scanPluginService;
|
48
|
+
return /*#__PURE__*/React.createElement(ScanConsumer, null, scanService => {
|
49
|
+
this.scanner = scanService;
|
50
|
+
return /*#__PURE__*/React.createElement(View, {
|
51
|
+
style: this.styles.root,
|
52
|
+
onLayout: event => this.handleLayout(event)
|
53
|
+
}, this._background, /*#__PURE__*/React.createElement(WmButton, _extends({
|
54
|
+
id: this.getTestId('button'),
|
55
|
+
iconclass: props.iconclass,
|
56
|
+
styles: this.styles.button,
|
57
|
+
onTap: this.onScanTap.bind(this),
|
58
|
+
caption: props.caption,
|
59
|
+
iconsize: props.iconsize
|
60
|
+
}, accessibilityProps)));
|
61
|
+
});
|
62
|
+
});
|
48
63
|
});
|
49
64
|
}
|
50
65
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","View","BaseComponent","BaseComponentState","ScanConsumer","WmBarcodescannerProps","DEFAULT_CLASS","WmButton","WmBarcodescannerState","WmBarcodescanner","constructor","props","_defineProperty","onScanTap","params","barcodeFormat","state","barcodeformat","scanner","scanBarcode","then","res","updateState","datavalue","text","invokeEventCallback","proxy","renderWidget","createElement","scanService","style","styles","root","onLayout","event","handleLayout","_background","id","getTestId","iconclass","button","onTap","bind","
|
1
|
+
{"version":3,"names":["React","View","BaseComponent","BaseComponentState","ScanConsumer","ScanPluginConsumer","WmBarcodescannerProps","DEFAULT_CLASS","WmButton","PermissionConsumer","WmBarcodescannerState","WmBarcodescanner","constructor","props","_defineProperty","onScanTap","params","barcodeFormat","state","barcodeformat","scanPluginService","permissionService","scanner","scanBarcode","then","res","updateState","datavalue","text","invokeEventCallback","proxy","renderWidget","accessibilityProps","accessible","accessibilitylabel","caption","accessibilityrole","hint","createElement","scanService","style","styles","root","onLayout","event","handleLayout","_background","_extends","id","getTestId","iconclass","button","onTap","bind","iconsize"],"sources":["barcodescanner.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { ScanInput, ScanOutput } from '@wavemaker/app-rn-runtime/variables/device/scan/scan.operation';\nimport { ScanConsumer, ScanPluginConsumer, ScanPluginService, ScanService } from '@wavemaker/app-rn-runtime/core/device/scan-service';\n\nimport WmBarcodescannerProps from './barcodescanner.props';\nimport { DEFAULT_CLASS, WmBarcodescannerStyles } from './barcodescanner.styles';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\nimport { PermissionConsumer, PermissionService } from '@wavemaker/app-rn-runtime/runtime/services/device/permission-service';\n\nexport class WmBarcodescannerState extends BaseComponentState<WmBarcodescannerProps> {}\n\nexport default class WmBarcodescanner extends BaseComponent<WmBarcodescannerProps, WmBarcodescannerState, WmBarcodescannerStyles> {\n private scanPluginService: ScanPluginService = null as any;\n private permissionService: PermissionService = null as any;\n private scanner: ScanService = null as any;\n constructor(props: WmBarcodescannerProps) {\n super(props, DEFAULT_CLASS, new WmBarcodescannerProps());\n }\n\n onScanTap() {\n const params: ScanInput = {\n barcodeFormat: this.state.props.barcodeformat,\n scanPluginService: this.scanPluginService,\n permissionService: this.permissionService\n };\n this.scanner.scanBarcode(params).then((res: ScanOutput) => {\n this.updateState({\n props: {\n datavalue: res.text\n }\n } as WmBarcodescannerState, () => {\n this.invokeEventCallback('onSuccess', [null, this.proxy]);\n });\n })\n }\n\n renderWidget(props: WmBarcodescannerProps) {\n const accessibilityProps = {\n accessible: props.accessible, \n accessibilitylabel: props.accessibilitylabel || props.caption,\n accessibilityrole: props.accessibilityrole,\n hint: props.hint,\n }\n return (\n <PermissionConsumer>\n {(permissionService: PermissionService) => {\n this.permissionService = permissionService;\n return (<ScanPluginConsumer>\n {(scanPluginService: any) => {\n this.scanPluginService = scanPluginService; \n return <ScanConsumer>\n {(scanService: ScanService) => {\n this.scanner = scanService;\n return <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n {this._background}\n <WmButton id={this.getTestId('button')} iconclass={props.iconclass} styles={this.styles.button} onTap={this.onScanTap.bind(this)} caption={props.caption} iconsize={props.iconsize} {...accessibilityProps}></WmButton>\n </View>\n }}\n </ScanConsumer>\n }}\n </ScanPluginConsumer>)\n }}\n </PermissionConsumer>\n );\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AAEjG,SAASC,YAAY,EAAEC,kBAAkB,QAAwC,oDAAoD;AAErI,OAAOC,qBAAqB,MAAM,wBAAwB;AAC1D,SAASC,aAAa,QAAgC,yBAAyB;AAC/E,OAAOC,QAAQ,MAAM,oEAAoE;AACzF,SAASC,kBAAkB,QAA2B,sEAAsE;AAE5H,OAAO,MAAMC,qBAAqB,SAASP,kBAAkB,CAAwB;AAErF,eAAe,MAAMQ,gBAAgB,SAAST,aAAa,CAAuE;EAIhIU,WAAWA,CAACC,KAA4B,EAAE;IACxC,KAAK,CAACA,KAAK,EAAEN,aAAa,EAAE,IAAID,qBAAqB,CAAC,CAAC,CAAC;IAACQ,eAAA,4BAJZ,IAAI;IAAAA,eAAA,4BACJ,IAAI;IAAAA,eAAA,kBACpB,IAAI;EAGnC;EAEAC,SAASA,CAAA,EAAG;IACV,MAAMC,MAAiB,GAAG;MACxBC,aAAa,EAAE,IAAI,CAACC,KAAK,CAACL,KAAK,CAACM,aAAa;MAC7CC,iBAAiB,EAAE,IAAI,CAACA,iBAAiB;MACzCC,iBAAiB,EAAE,IAAI,CAACA;IAC1B,CAAC;IACD,IAAI,CAACC,OAAO,CAACC,WAAW,CAACP,MAAM,CAAC,CAACQ,IAAI,CAAEC,GAAe,IAAK;MACzD,IAAI,CAACC,WAAW,CAAC;QACfb,KAAK,EAAE;UACLc,SAAS,EAAEF,GAAG,CAACG;QACjB;MACF,CAAC,EAA2B,MAAM;QAChC,IAAI,CAACC,mBAAmB,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,CAACC,KAAK,CAAC,CAAC;MAC3D,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ;EAEAC,YAAYA,CAAClB,KAA4B,EAAE;IACzC,MAAMmB,kBAAkB,GAAG;MACzBC,UAAU,EAAEpB,KAAK,CAACoB,UAAU;MAC5BC,kBAAkB,EAAErB,KAAK,CAACqB,kBAAkB,IAAIrB,KAAK,CAACsB,OAAO;MAC7DC,iBAAiB,EAAEvB,KAAK,CAACuB,iBAAiB;MAC1CC,IAAI,EAAExB,KAAK,CAACwB;IACd,CAAC;IACD,oBACErC,KAAA,CAAAsC,aAAA,CAAC7B,kBAAkB,QACjBY,iBAAoC,IAAK;MACzC,IAAI,CAACA,iBAAiB,GAAGA,iBAAiB;MAC1C,oBAAQrB,KAAA,CAAAsC,aAAA,CAACjC,kBAAkB,QACzBe,iBAAsB,IAAK;QAC3B,IAAI,CAACA,iBAAiB,GAAGA,iBAAiB;QAC1C,oBAAOpB,KAAA,CAAAsC,aAAA,CAAClC,YAAY,QAClBmC,WAAwB,IAAK;UAC9B,IAAI,CAACjB,OAAO,GAAGiB,WAAW;UAC1B,oBAAOvC,KAAA,CAAAsC,aAAA,CAACrC,IAAI;YAACuC,KAAK,EAAE,IAAI,CAACC,MAAM,CAACC,IAAK;YAACC,QAAQ,EAAGC,KAAK,IAAK,IAAI,CAACC,YAAY,CAACD,KAAK;UAAE,GACjF,IAAI,CAACE,WAAW,eACjB9C,KAAA,CAAAsC,aAAA,CAAC9B,QAAQ,EAAAuC,QAAA;YAACC,EAAE,EAAE,IAAI,CAACC,SAAS,CAAC,QAAQ,CAAE;YAACC,SAAS,EAAErC,KAAK,CAACqC,SAAU;YAACT,MAAM,EAAE,IAAI,CAACA,MAAM,CAACU,MAAO;YAACC,KAAK,EAAE,IAAI,CAACrC,SAAS,CAACsC,IAAI,CAAC,IAAI,CAAE;YAAClB,OAAO,EAAEtB,KAAK,CAACsB,OAAQ;YAACmB,QAAQ,EAAEzC,KAAK,CAACyC;UAAS,GAAKtB,kBAAkB,CAAY,CAClN,CAAC;QACN,CACY,CAAC;MACjB,CACoB,CAAC;IACvB,CACoB,CAAC;EAEzB;AACF","ignoreList":[]}
|
@@ -10,8 +10,9 @@ export default class WmBarcodescannerProps extends BaseProps {
|
|
10
10
|
_defineProperty(this, "datavalue", void 0);
|
11
11
|
_defineProperty(this, "iconclass", 'fa fa-barcode');
|
12
12
|
_defineProperty(this, "iconsize", 16);
|
13
|
+
_defineProperty(this, "accessible", true);
|
13
14
|
_defineProperty(this, "accessibilitylabel", undefined);
|
14
|
-
_defineProperty(this, "hint",
|
15
|
+
_defineProperty(this, "hint", "Click to open the barcode scanner");
|
15
16
|
_defineProperty(this, "accessibilityrole", "imagebutton");
|
16
17
|
}
|
17
18
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["BaseProps","WmBarcodescannerProps","constructor","args","_defineProperty","undefined"],"sources":["barcodescanner.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\n\nexport default class WmBarcodescannerProps extends BaseProps {\n barcodeformat: string = 'ALL';\n caption: string = null as any;\n datavalue: any;\n iconclass: string = 'fa fa-barcode';\n iconsize: number = 16;\n accessibilitylabel?: string = undefined;\n hint?: string =
|
1
|
+
{"version":3,"names":["BaseProps","WmBarcodescannerProps","constructor","args","_defineProperty","undefined"],"sources":["barcodescanner.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\n\nexport default class WmBarcodescannerProps extends BaseProps {\n barcodeformat: string = 'ALL';\n caption: string = null as any;\n datavalue: any;\n iconclass: string = 'fa fa-barcode';\n iconsize: number = 16;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n hint?: string = \"Click to open the barcode scanner\";\n accessibilityrole?: AccessibilityRole = \"imagebutton\";\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAGzE,eAAe,MAAMC,qBAAqB,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,wBACnC,KAAK;IAAAA,eAAA,kBACX,IAAI;IAAAA,eAAA;IAAAA,eAAA,oBAEF,eAAe;IAAAA,eAAA,mBAChB,EAAE;IAAAA,eAAA,qBACE,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,eACvB,mCAAmC;IAAAA,eAAA,4BACX,aAAa;EAAA;AACvD","ignoreList":[]}
|
@@ -1,3 +1,4 @@
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
1
2
|
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
2
3
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
3
4
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
@@ -8,11 +9,13 @@ import WmCameraProps from './camera.props';
|
|
8
9
|
import { DEFAULT_CLASS } from './camera.styles';
|
9
10
|
import WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';
|
10
11
|
import { CameraConsumer } from "@wavemaker/app-rn-runtime/core/device/camera-service";
|
12
|
+
import { PermissionConsumer } from '@wavemaker/app-rn-runtime/runtime/services/device/permission-service';
|
11
13
|
export class WmCameraState extends BaseComponentState {}
|
12
14
|
export default class WmCamera extends BaseComponent {
|
13
15
|
constructor(props) {
|
14
16
|
super(props, DEFAULT_CLASS, new WmCameraProps());
|
15
17
|
_defineProperty(this, "camera", null);
|
18
|
+
_defineProperty(this, "permissionService", null);
|
16
19
|
_defineProperty(this, "localFile", '');
|
17
20
|
}
|
18
21
|
onCameraTap() {
|
@@ -23,13 +26,17 @@ export default class WmCamera extends BaseComponent {
|
|
23
26
|
imageQuality: props.imagequality,
|
24
27
|
imageEncodingType: props.imageencodingtype,
|
25
28
|
imageTargetWidth: props.imagetargetwidth,
|
26
|
-
imageTargetHeight: props.imagetargetheight
|
29
|
+
imageTargetHeight: props.imagetargetheight,
|
30
|
+
permissionService: this.permissionService
|
27
31
|
};
|
28
32
|
this.camera.captureImage(params).then(res => {
|
29
33
|
this.updateModel(null, res.imagePath, res.content);
|
30
34
|
});
|
31
35
|
} else {
|
32
|
-
|
36
|
+
const params = {
|
37
|
+
permissionService: this.permissionService
|
38
|
+
};
|
39
|
+
this.camera.captureVideo(params).then(res => {
|
33
40
|
this.updateModel(null, res.videoPath, res.content);
|
34
41
|
});
|
35
42
|
}
|
@@ -45,26 +52,32 @@ export default class WmCamera extends BaseComponent {
|
|
45
52
|
}, this.invokeEventCallback.bind(this, 'onSuccess', [null, this.proxy, value, this.localFile]));
|
46
53
|
}
|
47
54
|
renderWidget(props) {
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
55
|
+
const accessibilityProps = {
|
56
|
+
accessible: props.accessible,
|
57
|
+
accessibilitylabel: props.accessibilitylabel || props.caption,
|
58
|
+
accessibilityrole: props.accessibilityrole,
|
59
|
+
hint: props.hint
|
60
|
+
};
|
61
|
+
return /*#__PURE__*/React.createElement(PermissionConsumer, null, permissionService => {
|
62
|
+
this.permissionService = permissionService;
|
63
|
+
return /*#__PURE__*/React.createElement(CameraConsumer, null, cameraService => {
|
64
|
+
{
|
65
|
+
this._background;
|
66
|
+
}
|
67
|
+
this.camera = cameraService;
|
68
|
+
return /*#__PURE__*/React.createElement(View, {
|
69
|
+
style: this.styles.root,
|
70
|
+
onLayout: event => this.handleLayout(event)
|
71
|
+
}, /*#__PURE__*/React.createElement(WmButton, _extends({
|
72
|
+
id: this.getTestId('button'),
|
73
|
+
caption: props.caption,
|
74
|
+
iconclass: props.iconclass,
|
75
|
+
iconsize: props.iconsize,
|
76
|
+
iconposition: props.caption ? '' : 'left',
|
77
|
+
styles: this.styles.button,
|
78
|
+
onTap: this.onCameraTap.bind(this)
|
79
|
+
}, accessibilityProps)));
|
80
|
+
});
|
68
81
|
});
|
69
82
|
}
|
70
83
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","View","BaseComponent","BaseComponentState","WmCameraProps","DEFAULT_CLASS","WmButton","CameraConsumer","WmCameraState","WmCamera","constructor","props","_defineProperty","onCameraTap","state","capturetype","params","allowImageEdit","allowedit","imageQuality","imagequality","imageEncodingType","imageencodingtype","imageTargetWidth","imagetargetwidth","imageTargetHeight","imagetargetheight","camera","captureImage","then","res","updateModel","imagePath","content","captureVideo","videoPath","$event","value","startsWith","localFile","updateState","datavalue","localFilePath","invokeEventCallback","bind","proxy","renderWidget","createElement","cameraService","_background","style","styles","root","onLayout","event","handleLayout","
|
1
|
+
{"version":3,"names":["React","View","BaseComponent","BaseComponentState","WmCameraProps","DEFAULT_CLASS","WmButton","CameraConsumer","PermissionConsumer","WmCameraState","WmCamera","constructor","props","_defineProperty","onCameraTap","state","capturetype","params","allowImageEdit","allowedit","imageQuality","imagequality","imageEncodingType","imageencodingtype","imageTargetWidth","imagetargetwidth","imageTargetHeight","imagetargetheight","permissionService","camera","captureImage","then","res","updateModel","imagePath","content","captureVideo","videoPath","$event","value","startsWith","localFile","updateState","datavalue","localFilePath","invokeEventCallback","bind","proxy","renderWidget","accessibilityProps","accessible","accessibilitylabel","caption","accessibilityrole","hint","createElement","cameraService","_background","style","styles","root","onLayout","event","handleLayout","_extends","id","getTestId","iconclass","iconsize","iconposition","button","onTap"],"sources":["camera.component.tsx"],"sourcesContent":["import React from 'react';\nimport { AccessibilityRole, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmCameraProps from './camera.props';\nimport { DEFAULT_CLASS, WmCameraStyles } from './camera.styles';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\nimport { CaptureImageOutput } from '@wavemaker/app-rn-runtime/variables/device/camera/capture-image.operation';\nimport { CameraConsumer, CameraInput, CameraService, CameraVideoInput } from \"@wavemaker/app-rn-runtime/core/device/camera-service\";\nimport { CaptureVideoOutput } from '@wavemaker/app-rn-runtime/variables/device/camera/capture-video.operation';\nimport { PermissionConsumer, PermissionService } from '@wavemaker/app-rn-runtime/runtime/services/device/permission-service';\n\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nexport class WmCameraState extends BaseComponentState<WmCameraProps> {}\n\nexport default class WmCamera extends BaseComponent<WmCameraProps, WmCameraState, WmCameraStyles> {\n private camera: CameraService = null as any;\n private permissionService: PermissionService = null as any;\n public localFile: string = '';\n constructor(props: WmCameraProps) {\n super(props, DEFAULT_CLASS, new WmCameraProps());\n }\n\n onCameraTap() {\n const props = this.state.props;\n if (props.capturetype === 'IMAGE') {\n const params: CameraInput = {\n allowImageEdit: props.allowedit,\n imageQuality: props.imagequality,\n imageEncodingType: props.imageencodingtype,\n imageTargetWidth: props.imagetargetwidth,\n imageTargetHeight: props.imagetargetheight,\n permissionService: this.permissionService\n };\n\n this.camera.captureImage(params).then((res: CaptureImageOutput) => {\n this.updateModel(null, res.imagePath, res.content);\n });\n } else {\n const params: CameraVideoInput = {\n permissionService: this.permissionService\n };\n this.camera.captureVideo(params).then((res: CaptureVideoOutput) => {\n this.updateModel(null, res.videoPath, res.content);\n });\n }\n\n }\n\n private updateModel($event: any, value: any, content: string) {\n value = (value.startsWith('file://') ? '' : 'file://') + value;\n this.localFile = content;\n this.updateState({\n props: {\n datavalue: value,\n localFilePath: value\n }\n } as WmCameraState, this.invokeEventCallback.bind(this, 'onSuccess', [null, this.proxy, value, this.localFile]));\n }\n\n renderWidget(props: WmCameraProps) {\n const accessibilityProps = {\n accessible: props.accessible, \n accessibilitylabel: props.accessibilitylabel || props.caption,\n accessibilityrole: props.accessibilityrole,\n hint: props.hint,\n }\n return (\n <PermissionConsumer>\n {(permissionService: PermissionService) => {\n this.permissionService = permissionService;\n return (<CameraConsumer>\n {(cameraService: CameraService) => {\n {this._background}\n this.camera = cameraService;\n return <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n <WmButton id={this.getTestId('button')} caption={props.caption} iconclass={props.iconclass} iconsize={props.iconsize} iconposition={props.caption ? '' : 'left'} styles={this.styles.button} onTap={this.onCameraTap.bind(this)} {...accessibilityProps}></WmButton>\n </View>\n }}\n </CameraConsumer>)\n }}\n </PermissionConsumer>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -15,8 +15,9 @@ export default class WmCameraProps extends BaseProps {
|
|
15
15
|
_defineProperty(this, "imagetargetheight", null);
|
16
16
|
_defineProperty(this, "datavalue", void 0);
|
17
17
|
_defineProperty(this, "localFilePath", '');
|
18
|
+
_defineProperty(this, "accessible", true);
|
18
19
|
_defineProperty(this, "accessibilitylabel", undefined);
|
19
|
-
_defineProperty(this, "hint",
|
20
|
+
_defineProperty(this, "hint", "Click to open the camera");
|
20
21
|
_defineProperty(this, "accessibilityrole", "imagebutton");
|
21
22
|
_defineProperty(this, "caption", undefined);
|
22
23
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["BaseProps","WmCameraProps","constructor","args","_defineProperty","undefined"],"sources":["camera.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\n\nexport default class WmCameraProps extends BaseProps {\n allowedit: boolean = false;\n capturetype: string = 'IMAGE';\n iconclass: string = 'wm-sl-l sl-camera';\n iconsize: number = 16;\n imagequality: number = 80;\n imageencodingtype: string = 'JPEG';\n imagetargetwidth: number = null as any;\n imagetargetheight: number = null as any;\n datavalue: any;\n localFilePath: string = '';\n accessibilitylabel?: string = undefined;\n hint?: string =
|
1
|
+
{"version":3,"names":["BaseProps","WmCameraProps","constructor","args","_defineProperty","undefined"],"sources":["camera.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\n\nexport default class WmCameraProps extends BaseProps {\n allowedit: boolean = false;\n capturetype: string = 'IMAGE';\n iconclass: string = 'wm-sl-l sl-camera';\n iconsize: number = 16;\n imagequality: number = 80;\n imageencodingtype: string = 'JPEG';\n imagetargetwidth: number = null as any;\n imagetargetheight: number = null as any;\n datavalue: any;\n localFilePath: string = '';\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n hint?: string = \"Click to open the camera\";\n accessibilityrole?: AccessibilityRole = \"imagebutton\";\n caption?: string = undefined;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAGzE,eAAe,MAAMC,aAAa,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBAC9B,KAAK;IAAAA,eAAA,sBACJ,OAAO;IAAAA,eAAA,oBACT,mBAAmB;IAAAA,eAAA,mBACpB,EAAE;IAAAA,eAAA,uBACE,EAAE;IAAAA,eAAA,4BACG,MAAM;IAAAA,eAAA,2BACP,IAAI;IAAAA,eAAA,4BACH,IAAI;IAAAA,eAAA;IAAAA,eAAA,wBAER,EAAE;IAAAA,eAAA,qBACH,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,eACvB,0BAA0B;IAAAA,eAAA,4BACF,aAAa;IAAAA,eAAA,kBAClCC,SAAS;EAAA;AAC9B","ignoreList":[]}
|
@@ -22,6 +22,7 @@ export default class BaseDatasetProps extends BaseProps {
|
|
22
22
|
_defineProperty(this, "displayimagesrc", void 0);
|
23
23
|
_defineProperty(this, "iconclass", void 0);
|
24
24
|
_defineProperty(this, "triggerValidation", void 0);
|
25
|
+
_defineProperty(this, "accessible", true);
|
25
26
|
_defineProperty(this, "accessibilitylabel", undefined);
|
26
27
|
_defineProperty(this, "hint", undefined);
|
27
28
|
_defineProperty(this, "accessibilityrole", void 0);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["BaseProps","BaseDatasetProps","constructor","args","_defineProperty","undefined"],"sources":["basedataset.props.ts"],"sourcesContent":["import {AccessibilityRole} from \"react-native\";\nimport { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class BaseDatasetProps extends BaseProps {\n dataset: any;\n datavalue?: any;\n displayfield: any;\n datafield: any;\n displayexpression: any;\n getDisplayExpression: any;\n groupby?: any;\n match?: any;\n orderby?: any;\n readonly: boolean = null as any;\n dateformat?: any;\n onFieldChange?: any;\n displaylabel?: any;\n displayValue?: any;\n displayimagesrc: any;\n iconclass?: any;\n triggerValidation?: any;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole;\n accessibilitylabelledby?: string = undefined;\n skipscripteventtrigger?: boolean = false;\n}\n"],"mappings":";;;AACA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,gBAAgB,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,mBAUlC,IAAI;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,
|
1
|
+
{"version":3,"names":["BaseProps","BaseDatasetProps","constructor","args","_defineProperty","undefined"],"sources":["basedataset.props.ts"],"sourcesContent":["import {AccessibilityRole} from \"react-native\";\nimport { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class BaseDatasetProps extends BaseProps {\n dataset: any;\n datavalue?: any;\n displayfield: any;\n datafield: any;\n displayexpression: any;\n getDisplayExpression: any;\n groupby?: any;\n match?: any;\n orderby?: any;\n readonly: boolean = null as any;\n dateformat?: any;\n onFieldChange?: any;\n displaylabel?: any;\n displayValue?: any;\n displayimagesrc: any;\n iconclass?: any;\n triggerValidation?: any;\n accessible?: boolean = true;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole;\n accessibilitylabelledby?: string = undefined;\n skipscripteventtrigger?: boolean = false;\n}\n"],"mappings":";;;AACA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,gBAAgB,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,mBAUlC,IAAI;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,qBAQD,IAAI;IAAAA,eAAA,6BACGC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA;IAAAA,eAAA,kCAEUC,SAAS;IAAAD,eAAA,iCACT,KAAK;EAAA;AAC1C","ignoreList":[]}
|