@wavemaker/app-rn-runtime 11.7.0-next.24863 → 11.7.0-next.26328
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- app-rn-runtime/components/advanced/carousel/carousel.component.js +6 -3
- app-rn-runtime/components/advanced/carousel/carousel.component.js.map +1 -1
- app-rn-runtime/components/advanced/carousel/carousel.styles.js +6 -3
- app-rn-runtime/components/advanced/carousel/carousel.styles.js.map +1 -1
- app-rn-runtime/components/advanced/webview/webview.component.js +6 -3
- app-rn-runtime/components/advanced/webview/webview.component.js.map +1 -1
- app-rn-runtime/components/advanced/webview/webview.props.js +3 -0
- app-rn-runtime/components/advanced/webview/webview.props.js.map +1 -1
- app-rn-runtime/components/basic/anchor/anchor.component.js +23 -7
- app-rn-runtime/components/basic/anchor/anchor.component.js.map +1 -1
- app-rn-runtime/components/basic/anchor/anchor.props.js +8 -0
- app-rn-runtime/components/basic/anchor/anchor.props.js.map +1 -1
- app-rn-runtime/components/basic/anchor/anchor.styles.js +3 -1
- app-rn-runtime/components/basic/anchor/anchor.styles.js.map +1 -1
- app-rn-runtime/components/basic/animatedview.component.js +5 -3
- app-rn-runtime/components/basic/animatedview.component.js.map +1 -1
- app-rn-runtime/components/basic/button/button.component.js +32 -9
- app-rn-runtime/components/basic/button/button.component.js.map +1 -1
- app-rn-runtime/components/basic/button/button.props.js +7 -0
- app-rn-runtime/components/basic/button/button.props.js.map +1 -1
- app-rn-runtime/components/basic/button/button.styles.js +9 -9
- app-rn-runtime/components/basic/button/button.styles.js.map +1 -1
- app-rn-runtime/components/basic/buttongroup/buttongroup.styles.js +8 -5
- app-rn-runtime/components/basic/buttongroup/buttongroup.styles.js.map +1 -1
- app-rn-runtime/components/basic/icon/icon.component.js +64 -12
- app-rn-runtime/components/basic/icon/icon.component.js.map +1 -1
- app-rn-runtime/components/basic/icon/icon.props.js +7 -0
- app-rn-runtime/components/basic/icon/icon.props.js.map +1 -1
- app-rn-runtime/components/basic/label/label.component.js +21 -11
- app-rn-runtime/components/basic/label/label.component.js.map +1 -1
- app-rn-runtime/components/basic/label/label.props.js +4 -0
- app-rn-runtime/components/basic/label/label.props.js.map +1 -1
- app-rn-runtime/components/basic/label/label.styles.js +3 -1
- app-rn-runtime/components/basic/label/label.styles.js.map +1 -1
- app-rn-runtime/components/basic/message/message.component.js +3 -2
- app-rn-runtime/components/basic/message/message.component.js.map +1 -1
- app-rn-runtime/components/basic/message/message.props.js +3 -0
- app-rn-runtime/components/basic/message/message.props.js.map +1 -1
- app-rn-runtime/components/basic/message/message.styles.js +3 -1
- app-rn-runtime/components/basic/message/message.styles.js.map +1 -1
- app-rn-runtime/components/basic/picture/picture.component.js +4 -2
- app-rn-runtime/components/basic/picture/picture.component.js.map +1 -1
- app-rn-runtime/components/basic/picture/picture.props.js +3 -0
- app-rn-runtime/components/basic/picture/picture.props.js.map +1 -1
- app-rn-runtime/components/basic/picture/picture.styles.js +3 -1
- app-rn-runtime/components/basic/picture/picture.styles.js.map +1 -1
- app-rn-runtime/components/basic/progress-bar/progress-bar.component.js +3 -3
- app-rn-runtime/components/basic/progress-bar/progress-bar.component.js.map +1 -1
- app-rn-runtime/components/basic/progress-bar/progress-bar.props.js +2 -0
- app-rn-runtime/components/basic/progress-bar/progress-bar.props.js.map +1 -1
- app-rn-runtime/components/basic/progress-circle/progress-circle.component.js +3 -2
- app-rn-runtime/components/basic/progress-circle/progress-circle.component.js.map +1 -1
- app-rn-runtime/components/basic/progress-circle/progress-circle.props.js +2 -0
- app-rn-runtime/components/basic/progress-circle/progress-circle.props.js.map +1 -1
- app-rn-runtime/components/basic/search/search.component.js +10 -3
- app-rn-runtime/components/basic/search/search.component.js.map +1 -1
- app-rn-runtime/components/basic/search/search.props.js +4 -0
- app-rn-runtime/components/basic/search/search.props.js.map +1 -1
- app-rn-runtime/components/basic/search/search.styles.js +6 -5
- app-rn-runtime/components/basic/search/search.styles.js.map +1 -1
- app-rn-runtime/components/basic/skeleton/skeleton.component.js +0 -1
- app-rn-runtime/components/basic/skeleton/skeleton.component.js.map +1 -1
- app-rn-runtime/components/basic/video/video.component.js +4 -2
- app-rn-runtime/components/basic/video/video.component.js.map +1 -1
- app-rn-runtime/components/basic/video/video.props.js +3 -0
- app-rn-runtime/components/basic/video/video.props.js.map +1 -1
- app-rn-runtime/components/chart/area-chart/area-chart.component.js +32 -22
- app-rn-runtime/components/chart/area-chart/area-chart.component.js.map +1 -1
- app-rn-runtime/components/chart/bar-chart/bar-chart.component.js +22 -15
- app-rn-runtime/components/chart/bar-chart/bar-chart.component.js.map +1 -1
- app-rn-runtime/components/chart/basechart.component.js +15 -1
- app-rn-runtime/components/chart/basechart.component.js.map +1 -1
- app-rn-runtime/components/chart/basechart.props.js +3 -0
- app-rn-runtime/components/chart/basechart.props.js.map +1 -1
- app-rn-runtime/components/chart/basechart.styles.js +2 -1
- app-rn-runtime/components/chart/basechart.styles.js.map +1 -1
- app-rn-runtime/components/chart/bubble-chart/bubble-chart.component.js +4 -2
- app-rn-runtime/components/chart/bubble-chart/bubble-chart.component.js.map +1 -1
- app-rn-runtime/components/chart/line-chart/line-chart.component.js +25 -18
- app-rn-runtime/components/chart/line-chart/line-chart.component.js.map +1 -1
- app-rn-runtime/components/chart/line-chart/line-chart.props.js.map +1 -1
- app-rn-runtime/components/chart/pie-chart/pie-chart.component.js +6 -3
- app-rn-runtime/components/chart/pie-chart/pie-chart.component.js.map +1 -1
- app-rn-runtime/components/chart/stack-chart/stack-chart.component.js +21 -12
- app-rn-runtime/components/chart/stack-chart/stack-chart.component.js.map +1 -1
- app-rn-runtime/components/chart/staticdata.js +215 -0
- app-rn-runtime/components/chart/staticdata.js.map +1 -0
- app-rn-runtime/components/container/container.component.js +1 -10
- app-rn-runtime/components/container/container.component.js.map +1 -1
- app-rn-runtime/components/container/container.props.js +0 -1
- app-rn-runtime/components/container/container.props.js.map +1 -1
- app-rn-runtime/components/container/panel/panel.component.js +6 -2
- app-rn-runtime/components/container/panel/panel.component.js.map +1 -1
- app-rn-runtime/components/container/panel/panel.props.js +4 -0
- app-rn-runtime/components/container/panel/panel.props.js.map +1 -1
- app-rn-runtime/components/container/tabs/tabheader/tabheader.component.js +1 -1
- app-rn-runtime/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
- app-rn-runtime/components/container/tabs/tabheader/tabheader.styles.js +1 -1
- app-rn-runtime/components/container/tabs/tabheader/tabheader.styles.js.map +1 -1
- app-rn-runtime/components/container/tabs/tabpane/tabpane.component.js +14 -1
- app-rn-runtime/components/container/tabs/tabpane/tabpane.component.js.map +1 -1
- app-rn-runtime/components/container/tabs/tabs.component.js +3 -0
- app-rn-runtime/components/container/tabs/tabs.component.js.map +1 -1
- app-rn-runtime/components/container/wizard/wizard.component.js +6 -6
- app-rn-runtime/components/container/wizard/wizard.component.js.map +1 -1
- app-rn-runtime/components/container/wizard/wizard.styles.js +19 -3
- app-rn-runtime/components/container/wizard/wizard.styles.js.map +1 -1
- app-rn-runtime/components/container/wizard/wizardstep/wizardstep.component.js +17 -11
- app-rn-runtime/components/container/wizard/wizardstep/wizardstep.component.js.map +1 -1
- app-rn-runtime/components/container/wizard/wizardstep/wizardstep.props.js +3 -0
- app-rn-runtime/components/container/wizard/wizardstep/wizardstep.props.js.map +1 -1
- app-rn-runtime/components/data/card/card.component.js +7 -3
- app-rn-runtime/components/data/card/card.component.js.map +1 -1
- app-rn-runtime/components/data/card/card.props.js +4 -0
- app-rn-runtime/components/data/card/card.props.js.map +1 -1
- app-rn-runtime/components/data/form/form-action/form-action.component.js +1 -0
- app-rn-runtime/components/data/form/form-action/form-action.component.js.map +1 -1
- app-rn-runtime/components/data/form/form-action/form-action.props.js +1 -0
- app-rn-runtime/components/data/form/form-action/form-action.props.js.map +1 -1
- app-rn-runtime/components/data/form/form-action/form-action.styles.js +2 -1
- app-rn-runtime/components/data/form/form-action/form-action.styles.js.map +1 -1
- app-rn-runtime/components/data/form/form-field/form-field.component.js +16 -1
- app-rn-runtime/components/data/form/form-field/form-field.component.js.map +1 -1
- app-rn-runtime/components/data/form/form-field/form-field.props.js +3 -0
- app-rn-runtime/components/data/form/form-field/form-field.props.js.map +1 -1
- app-rn-runtime/components/data/form/form.component.js +26 -4
- app-rn-runtime/components/data/form/form.component.js.map +1 -1
- app-rn-runtime/components/data/form/form.props.js +3 -0
- app-rn-runtime/components/data/form/form.props.js.map +1 -1
- app-rn-runtime/components/data/list/list.component.js +91 -28
- app-rn-runtime/components/data/list/list.component.js.map +1 -1
- app-rn-runtime/components/data/list/list.props.js +6 -1
- app-rn-runtime/components/data/list/list.props.js.map +1 -1
- app-rn-runtime/components/data/list/list.styles.js +13 -0
- app-rn-runtime/components/data/list/list.styles.js.map +1 -1
- app-rn-runtime/components/device/barcodescanner/barcodescanner.component.js +4 -1
- app-rn-runtime/components/device/barcodescanner/barcodescanner.component.js.map +1 -1
- app-rn-runtime/components/device/barcodescanner/barcodescanner.props.js +3 -0
- app-rn-runtime/components/device/barcodescanner/barcodescanner.props.js.map +1 -1
- app-rn-runtime/components/device/barcodescanner/barcodescanner.styles.js +13 -6
- app-rn-runtime/components/device/barcodescanner/barcodescanner.styles.js.map +1 -1
- app-rn-runtime/components/device/camera/camera.component.js +4 -1
- app-rn-runtime/components/device/camera/camera.component.js.map +1 -1
- app-rn-runtime/components/device/camera/camera.props.js +3 -0
- app-rn-runtime/components/device/camera/camera.props.js.map +1 -1
- app-rn-runtime/components/device/camera/camera.styles.js +12 -4
- app-rn-runtime/components/device/camera/camera.styles.js.map +1 -1
- app-rn-runtime/components/dialogs/alertdialog/alertdialog.component.js +4 -0
- app-rn-runtime/components/dialogs/alertdialog/alertdialog.component.js.map +1 -1
- app-rn-runtime/components/dialogs/alertdialog/alertdialog.props.js +4 -0
- app-rn-runtime/components/dialogs/alertdialog/alertdialog.props.js.map +1 -1
- app-rn-runtime/components/dialogs/alertdialog/alertdialog.styles.js +2 -1
- app-rn-runtime/components/dialogs/alertdialog/alertdialog.styles.js.map +1 -1
- app-rn-runtime/components/dialogs/confirmdialog/confirmdialog.component.js +4 -0
- app-rn-runtime/components/dialogs/confirmdialog/confirmdialog.component.js.map +1 -1
- app-rn-runtime/components/dialogs/confirmdialog/confirmdialog.props.js +4 -0
- app-rn-runtime/components/dialogs/confirmdialog/confirmdialog.props.js.map +1 -1
- app-rn-runtime/components/dialogs/dialog/dialog.component.js +7 -3
- app-rn-runtime/components/dialogs/dialog/dialog.component.js.map +1 -1
- app-rn-runtime/components/dialogs/dialog/dialog.props.js +4 -0
- app-rn-runtime/components/dialogs/dialog/dialog.props.js.map +1 -1
- app-rn-runtime/components/dialogs/dialog/dialog.styles.js +2 -1
- app-rn-runtime/components/dialogs/dialog/dialog.styles.js.map +1 -1
- app-rn-runtime/components/dialogs/dialogcontent/dialogcontent.component.js +4 -0
- app-rn-runtime/components/dialogs/dialogcontent/dialogcontent.component.js.map +1 -1
- app-rn-runtime/components/input/basedataset/basedataset.props.js +4 -0
- app-rn-runtime/components/input/basedataset/basedataset.props.js.map +1 -1
- app-rn-runtime/components/input/baseinput/baseinput.component.js +3 -3
- app-rn-runtime/components/input/baseinput/baseinput.component.js.map +1 -1
- app-rn-runtime/components/input/baseinput/baseinput.props.js +6 -0
- app-rn-runtime/components/input/baseinput/baseinput.props.js.map +1 -1
- app-rn-runtime/components/input/basenumber/basenumber.component.js +6 -6
- app-rn-runtime/components/input/basenumber/basenumber.component.js.map +1 -1
- app-rn-runtime/components/input/basenumber/basenumber.props.js +4 -0
- app-rn-runtime/components/input/basenumber/basenumber.props.js.map +1 -1
- app-rn-runtime/components/input/checkbox/checkbox.component.js +12 -5
- app-rn-runtime/components/input/checkbox/checkbox.component.js.map +1 -1
- app-rn-runtime/components/input/checkbox/checkbox.styles.js +35 -5
- app-rn-runtime/components/input/checkbox/checkbox.styles.js.map +1 -1
- app-rn-runtime/components/input/checkboxset/checkboxset.component.js +26 -10
- app-rn-runtime/components/input/checkboxset/checkboxset.component.js.map +1 -1
- app-rn-runtime/components/input/checkboxset/checkboxset.props.js +1 -0
- app-rn-runtime/components/input/checkboxset/checkboxset.props.js.map +1 -1
- app-rn-runtime/components/input/checkboxset/checkboxset.styles.js +39 -10
- app-rn-runtime/components/input/checkboxset/checkboxset.styles.js.map +1 -1
- app-rn-runtime/components/input/chips/chips.component.js +5 -1
- app-rn-runtime/components/input/chips/chips.component.js.map +1 -1
- app-rn-runtime/components/input/currency/currency.component.js +2 -2
- app-rn-runtime/components/input/currency/currency.component.js.map +1 -1
- app-rn-runtime/components/input/epoch/base-datetime.component.js +64 -6
- app-rn-runtime/components/input/epoch/base-datetime.component.js.map +1 -1
- app-rn-runtime/components/input/epoch/datetime/datetime.props.js +4 -0
- app-rn-runtime/components/input/epoch/datetime/datetime.props.js.map +1 -1
- app-rn-runtime/components/input/epoch/datetime/datetime.styles.js +28 -0
- app-rn-runtime/components/input/epoch/datetime/datetime.styles.js.map +1 -1
- app-rn-runtime/components/input/fileupload/fileupload.component.js +2 -0
- app-rn-runtime/components/input/fileupload/fileupload.component.js.map +1 -1
- app-rn-runtime/components/input/fileupload/fileupload.props.js +2 -0
- app-rn-runtime/components/input/fileupload/fileupload.props.js.map +1 -1
- app-rn-runtime/components/input/fileupload/fileupload.styles.js +1 -1
- app-rn-runtime/components/input/fileupload/fileupload.styles.js.map +1 -1
- app-rn-runtime/components/input/number/number.component.js +2 -2
- app-rn-runtime/components/input/number/number.component.js.map +1 -1
- app-rn-runtime/components/input/radioset/radioset.component.js +52 -21
- app-rn-runtime/components/input/radioset/radioset.component.js.map +1 -1
- app-rn-runtime/components/input/radioset/radioset.props.js +1 -0
- app-rn-runtime/components/input/radioset/radioset.props.js.map +1 -1
- app-rn-runtime/components/input/radioset/radioset.styles.js +35 -2
- app-rn-runtime/components/input/radioset/radioset.styles.js.map +1 -1
- app-rn-runtime/components/input/select/select.component.js +7 -3
- app-rn-runtime/components/input/select/select.component.js.map +1 -1
- app-rn-runtime/components/input/select/select.styles.js +5 -1
- app-rn-runtime/components/input/select/select.styles.js.map +1 -1
- app-rn-runtime/components/input/slider/slider.component.js +3 -2
- app-rn-runtime/components/input/slider/slider.component.js.map +1 -1
- app-rn-runtime/components/input/switch/switch.component.js +5 -1
- app-rn-runtime/components/input/switch/switch.component.js.map +1 -1
- app-rn-runtime/components/input/switch/switch.styles.js +2 -0
- app-rn-runtime/components/input/switch/switch.styles.js.map +1 -1
- app-rn-runtime/components/input/text/text.component.js +6 -3
- app-rn-runtime/components/input/text/text.component.js.map +1 -1
- app-rn-runtime/components/input/textarea/textarea.component.js +2 -1
- app-rn-runtime/components/input/textarea/textarea.component.js.map +1 -1
- app-rn-runtime/components/input/toggle/toggle.component.js +11 -5
- app-rn-runtime/components/input/toggle/toggle.component.js.map +1 -1
- app-rn-runtime/components/input/toggle/toggle.props.js +4 -0
- app-rn-runtime/components/input/toggle/toggle.props.js.map +1 -1
- app-rn-runtime/components/navigation/appnavbar/appnavbar.component.js +6 -1
- app-rn-runtime/components/navigation/appnavbar/appnavbar.component.js.map +1 -1
- app-rn-runtime/components/navigation/appnavbar/appnavbar.props.js +1 -0
- app-rn-runtime/components/navigation/appnavbar/appnavbar.props.js.map +1 -1
- app-rn-runtime/components/navigation/appnavbar/appnavbar.styles.js +11 -2
- app-rn-runtime/components/navigation/appnavbar/appnavbar.styles.js.map +1 -1
- app-rn-runtime/components/navigation/basenav/basenav.component.js +1 -2
- app-rn-runtime/components/navigation/basenav/basenav.component.js.map +1 -1
- app-rn-runtime/components/navigation/menu/menu.styles.js +8 -5
- app-rn-runtime/components/navigation/menu/menu.styles.js.map +1 -1
- app-rn-runtime/components/navigation/navitem/navitem.component.js +8 -5
- app-rn-runtime/components/navigation/navitem/navitem.component.js.map +1 -1
- app-rn-runtime/components/navigation/navitem/navitem.props.js +3 -0
- app-rn-runtime/components/navigation/navitem/navitem.props.js.map +1 -1
- app-rn-runtime/components/navigation/popover/popover.component.js +14 -3
- app-rn-runtime/components/navigation/popover/popover.component.js.map +1 -1
- app-rn-runtime/components/navigation/popover/popover.props.js +7 -0
- app-rn-runtime/components/navigation/popover/popover.props.js.map +1 -1
- app-rn-runtime/components/navigation/popover/popover.styles.js +8 -2
- app-rn-runtime/components/navigation/popover/popover.styles.js.map +1 -1
- app-rn-runtime/components/page/left-panel/left-panel.component.js +4 -0
- app-rn-runtime/components/page/left-panel/left-panel.component.js.map +1 -1
- app-rn-runtime/components/page/page-content/page-content.component.js +7 -1
- app-rn-runtime/components/page/page-content/page-content.component.js.map +1 -1
- app-rn-runtime/components/page/tabbar/tabbar.component.js +4 -4
- app-rn-runtime/components/page/tabbar/tabbar.component.js.map +1 -1
- app-rn-runtime/components/page/tabbar/tabbar.styles.js +30 -16
- app-rn-runtime/components/page/tabbar/tabbar.styles.js.map +1 -1
- app-rn-runtime/core/accessibility.js +149 -0
- app-rn-runtime/core/accessibility.js.map +1 -0
- app-rn-runtime/core/base.component.js +28 -5
- app-rn-runtime/core/base.component.js.map +1 -1
- app-rn-runtime/core/components/textinput.component.js +147 -14
- app-rn-runtime/core/components/textinput.component.js.map +1 -1
- app-rn-runtime/core/event-notifier.js +37 -2
- app-rn-runtime/core/event-notifier.js.map +1 -1
- app-rn-runtime/core/formatters.js +14 -1
- app-rn-runtime/core/formatters.js.map +1 -1
- app-rn-runtime/core/tappable.component.js +2 -2
- app-rn-runtime/core/tappable.component.js.map +1 -1
- app-rn-runtime/core/utils.js +11 -0
- app-rn-runtime/core/utils.js.map +1 -1
- app-rn-runtime/gestures/swipe.animation.js +34 -1
- app-rn-runtime/gestures/swipe.animation.js.map +1 -1
- app-rn-runtime/package.json +4 -3
- app-rn-runtime/runtime/App.js +17 -10
- app-rn-runtime/runtime/App.js.map +1 -1
- app-rn-runtime/runtime/base-fragment.component.js +5 -1
- app-rn-runtime/runtime/base-fragment.component.js.map +1 -1
- app-rn-runtime/runtime/base-page.component.js +1 -1
- app-rn-runtime/runtime/base-page.component.js.map +1 -1
- app-rn-runtime/runtime/services/app-security.service.js +2 -1
- app-rn-runtime/runtime/services/app-security.service.js.map +1 -1
- app-rn-runtime/styles/background.component.js +16 -5
- app-rn-runtime/styles/background.component.js.map +1 -1
- app-rn-runtime/styles/theme.js +12 -5
- app-rn-runtime/styles/theme.js.map +1 -1
- app-rn-runtime/styles/theme.variables.js +28 -11
- app-rn-runtime/styles/theme.variables.js.map +1 -1
- app-rn-runtime/variables/service-variable.js +14 -6
- app-rn-runtime/variables/service-variable.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","ProgressBar","Tappable","BaseComponent","BaseComponentState","WmProgressBarProps","DEFAULT_CLASS","WmProgressBarState","WmProgressBar","constructor","props","renderWidget","value","datavalue","minvalue","maxvalue","styles","theme","mergeStyle","getStyle","type","createElement","style","root","_background","_extends","getTestPropsForAction","target","width","height","
|
|
1
|
+
{"version":3,"names":["React","View","ProgressBar","Tappable","BaseComponent","BaseComponentState","AccessibilityWidgetType","getAccessibilityProps","WmProgressBarProps","DEFAULT_CLASS","WmProgressBarState","WmProgressBar","constructor","props","renderWidget","value","datavalue","minvalue","maxvalue","styles","theme","mergeStyle","getStyle","type","createElement","style","root","_background","_extends","getTestPropsForAction","target","width","height","PROGRESSBAR","progress","color","progressValue","progressBar"],"sources":["progress-bar.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport { ProgressBar } from 'react-native-paper';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nimport WmProgressBarProps from './progress-bar.props';\nimport { DEFAULT_CLASS, WmProgressBarStyles } from './progress-bar.styles';\n\nexport class WmProgressBarState extends BaseComponentState<WmProgressBarProps> {}\n\nexport default class WmProgressBar extends BaseComponent<WmProgressBarProps, WmProgressBarState, WmProgressBarStyles> {\n\n constructor(props: WmProgressBarProps) {\n super(props, DEFAULT_CLASS, new WmProgressBarProps());\n }\n\n renderWidget(props: WmProgressBarProps) {\n let value = (props.datavalue - props.minvalue) / (props.maxvalue - props.minvalue);\n const styles = this.theme.mergeStyle(this.theme.getStyle(`app-${props.type}-progress-bar`), this.styles);\n return (\n <View style={styles.root}>\n {this._background}\n <Tappable {...this.getTestPropsForAction()} target={this} styles={{root:{width: '100%', height: '100%'}}}>\n <ProgressBar\n {...getAccessibilityProps(AccessibilityWidgetType.PROGRESSBAR, props)}\n progress={value}\n color={styles.progressValue.color}\n style={[styles.progressBar, {height: styles.root.height || styles.progressBar.height}]}></ProgressBar>\n </Tappable>\n </View>); \n }\n\n}\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,WAAW,QAAQ,oBAAoB;AAChD,SAASC,QAAQ,QAAQ,mDAAmD;AAC5E,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AACjG,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,8CAA8C;AAE7G,OAAOC,kBAAkB,MAAM,sBAAsB;AACrD,SAASC,aAAa,QAA6B,uBAAuB;AAE1E,OAAO,MAAMC,kBAAkB,SAASL,kBAAkB,CAAqB;AAE/E,eAAe,MAAMM,aAAa,SAASP,aAAa,CAA8D;EAEpHQ,WAAWA,CAACC,KAAyB,EAAE;IACrC,KAAK,CAACA,KAAK,EAAEJ,aAAa,EAAE,IAAID,kBAAkB,CAAC,CAAC,CAAC;EACvD;EAEAM,YAAYA,CAACD,KAAyB,EAAE;IACtC,IAAIE,KAAK,GAAG,CAACF,KAAK,CAACG,SAAS,GAAGH,KAAK,CAACI,QAAQ,KAAKJ,KAAK,CAACK,QAAQ,GAAGL,KAAK,CAACI,QAAQ,CAAC;IAClF,MAAME,MAAM,GAAG,IAAI,CAACC,KAAK,CAACC,UAAU,CAAC,IAAI,CAACD,KAAK,CAACE,QAAQ,CAAE,OAAMT,KAAK,CAACU,IAAK,eAAc,CAAC,EAAE,IAAI,CAACJ,MAAM,CAAC;IACxG,oBACAnB,KAAA,CAAAwB,aAAA,CAACvB,IAAI;MAACwB,KAAK,EAAEN,MAAM,CAACO;IAAK,GACtB,IAAI,CAACC,WAAW,eACjB3B,KAAA,CAAAwB,aAAA,CAACrB,QAAQ,EAAAyB,QAAA,KAAK,IAAI,CAACC,qBAAqB,CAAC,CAAC;MAAEC,MAAM,EAAE,IAAK;MAACX,MAAM,EAAE;QAACO,IAAI,EAAC;UAACK,KAAK,EAAE,MAAM;UAAEC,MAAM,EAAE;QAAM;MAAC;IAAE,iBACvGhC,KAAA,CAAAwB,aAAA,CAACtB,WAAW,EAAA0B,QAAA,KACNrB,qBAAqB,CAACD,uBAAuB,CAAC2B,WAAW,EAAEpB,KAAK,CAAC;MACrEqB,QAAQ,EAAEnB,KAAM;MAChBoB,KAAK,EAAEhB,MAAM,CAACiB,aAAa,CAACD,KAAM;MAClCV,KAAK,EAAE,CAACN,MAAM,CAACkB,WAAW,EAAE;QAACL,MAAM,EAAEb,MAAM,CAACO,IAAI,CAACM,MAAM,IAAIb,MAAM,CAACkB,WAAW,CAACL;MAAM,CAAC;IAAE,EAAc,CAC/F,CACN,CAAC;EACT;AAEF"}
|
|
@@ -9,6 +9,8 @@ export default class WmProgressBarProps extends BaseProps {
|
|
|
9
9
|
_defineProperty(this, "datavalue", 30);
|
|
10
10
|
_defineProperty(this, "minvalue", 0);
|
|
11
11
|
_defineProperty(this, "maxvalue", 100);
|
|
12
|
+
_defineProperty(this, "accessibilitylabel", undefined);
|
|
13
|
+
_defineProperty(this, "accessibilityrole", 'progressbar');
|
|
12
14
|
}
|
|
13
15
|
}
|
|
14
16
|
//# sourceMappingURL=progress-bar.props.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BaseProps","WmProgressBarProps","constructor","arguments","_defineProperty"],"sources":["progress-bar.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\
|
|
1
|
+
{"version":3,"names":["BaseProps","WmProgressBarProps","constructor","arguments","_defineProperty","undefined"],"sources":["progress-bar.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\nexport default class WmProgressBarProps extends BaseProps {\n type: 'default' | 'success' | 'info' | 'warning' | 'error' = 'default';\n datavalue: number = 30;\n minvalue: number = 0;\n maxvalue: number = 100;\n accessibilitylabel?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'progressbar';\n}"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,kBAAkB,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,eACK,SAAS;IAAAA,eAAA,oBAClD,EAAE;IAAAA,eAAA,mBACH,CAAC;IAAAA,eAAA,mBACD,GAAG;IAAAA,eAAA,6BACQC,SAAS;IAAAD,eAAA,4BACC,aAAa;EAAA;AACvD"}
|
|
@@ -8,6 +8,7 @@ import { isNumber } from 'lodash';
|
|
|
8
8
|
import { AnimatedCircularProgress } from 'react-native-circular-progress';
|
|
9
9
|
import { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';
|
|
10
10
|
import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';
|
|
11
|
+
import { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';
|
|
11
12
|
import WmProgressCircleProps from './progress-circle.props';
|
|
12
13
|
import { DEFAULT_CLASS } from './progress-circle.styles';
|
|
13
14
|
export class WmProgressCircleState extends BaseComponentState {
|
|
@@ -42,10 +43,10 @@ export default class WmProgressCircle extends BaseComponent {
|
|
|
42
43
|
}
|
|
43
44
|
const styles = this.theme.mergeStyle(this.theme.getStyle(`app-${props.type}-progress-circle`), this.styles);
|
|
44
45
|
const showText = props.captionplacement !== 'hidden';
|
|
45
|
-
return /*#__PURE__*/React.createElement(View, {
|
|
46
|
+
return /*#__PURE__*/React.createElement(View, _extends({
|
|
46
47
|
style: styles.root,
|
|
47
48
|
onLayout: this.onLayout.bind(this)
|
|
48
|
-
}, this._background, /*#__PURE__*/React.createElement(Tappable, _extends({}, this.getTestPropsForAction(), {
|
|
49
|
+
}, getAccessibilityProps(AccessibilityWidgetType.PROGRESSCIRCLE, props)), this._background, /*#__PURE__*/React.createElement(Tappable, _extends({}, this.getTestPropsForAction(), {
|
|
49
50
|
target: this,
|
|
50
51
|
styles: {
|
|
51
52
|
root: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Text","isNumber","AnimatedCircularProgress","Tappable","BaseComponent","BaseComponentState","WmProgressCircleProps","DEFAULT_CLASS","WmProgressCircleState","constructor","arguments","_defineProperty","WmProgressCircle","props","onLayout","e","width","nativeEvent","layout","height","radius","state","Math","min","updateState","renderWidget","value","datavalue","minvalue","maxvalue","styles","theme","mergeStyle","getStyle","type","showText","captionplacement","createElement","style","root","bind","
|
|
1
|
+
{"version":3,"names":["React","View","Text","isNumber","AnimatedCircularProgress","Tappable","BaseComponent","BaseComponentState","AccessibilityWidgetType","getAccessibilityProps","WmProgressCircleProps","DEFAULT_CLASS","WmProgressCircleState","constructor","arguments","_defineProperty","WmProgressCircle","props","onLayout","e","width","nativeEvent","layout","height","radius","state","Math","min","updateState","renderWidget","value","datavalue","minvalue","maxvalue","styles","theme","mergeStyle","getStyle","type","showText","captionplacement","createElement","_extends","style","root","bind","PROGRESSCIRCLE","_background","getTestPropsForAction","target","fill","progressValue","backgroundWidth","rotation","tintColor","backgroundColor","lineCap","buttStyle","progressCircle","size","alignItems","text","title","subtitle","subTitle"],"sources":["progress-circle.component.tsx"],"sourcesContent":["import React from 'react';\nimport { LayoutChangeEvent, View, Text } from 'react-native';\nimport { isNumber } from 'lodash';\nimport { AnimatedCircularProgress } from 'react-native-circular-progress';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';\n\nimport WmProgressCircleProps from './progress-circle.props';\nimport { DEFAULT_CLASS, WmProgressCircleStyles } from './progress-circle.styles';\n\n\nexport class WmProgressCircleState extends BaseComponentState<WmProgressCircleProps> {\n radius = 10;\n}\n\nexport default class WmProgressCircle extends BaseComponent<WmProgressCircleProps, WmProgressCircleState, WmProgressCircleStyles> {\n\n constructor(props: WmProgressCircleProps) {\n super(props, DEFAULT_CLASS, new WmProgressCircleProps(), new WmProgressCircleState());\n }\n\n onLayout(e: LayoutChangeEvent) {\n const width = e.nativeEvent.layout.width;\n const height = e.nativeEvent.layout.height;\n let radius = this.state.radius;\n if (!width) {\n radius = height;\n } else if (!height) {\n radius = width;\n } else {\n radius = Math.min(width, height);\n }\n this.updateState({\n radius: radius\n } as WmProgressCircleState);\n }\n\n renderWidget(props: WmProgressCircleProps) {\n let value = 0;\n if (isNumber(props.datavalue) && isNumber(props.minvalue) && isNumber(props.maxvalue)) {\n value = (+props.datavalue - (+props.minvalue)) / (+props.maxvalue - (+props.minvalue)) * 100;\n }\n const styles = this.theme.mergeStyle(this.theme.getStyle(`app-${props.type}-progress-circle`), this.styles);\n const showText = props.captionplacement !== 'hidden';\n return (\n <View style={styles.root} onLayout={this.onLayout.bind(this)} {...getAccessibilityProps(AccessibilityWidgetType.PROGRESSCIRCLE, props)}>\n {this._background}\n <Tappable {...this.getTestPropsForAction()} target={this} styles={{root:{width: '100%', height: '100%'}}}>\n <AnimatedCircularProgress\n fill={value}\n width={styles.progressValue.height}\n backgroundWidth={styles.progressValue.height}\n rotation={0}\n tintColor={styles.progressValue.backgroundColor}\n lineCap={styles.progressValue.buttStyle || \"butt\"}\n backgroundColor={styles.progressCircle.backgroundColor}\n size={this.state.radius}>\n {(fill) => (<View style={{alignItems: 'center'}}>\n <Text style={styles.text}>{ showText ? props.title || value : '' }</Text>\n {showText && props.subtitle ? (<Text style={styles.subTitle}>{ props.subtitle }</Text>) : null}\n </View>)} \n </AnimatedCircularProgress>\n </Tappable>\n </View>); \n }\n}\n"],"mappings":"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"}
|
|
@@ -12,6 +12,8 @@ export default class WmProgressCircleProps extends BaseProps {
|
|
|
12
12
|
_defineProperty(this, "captionplacement", 'inside');
|
|
13
13
|
_defineProperty(this, "title", '');
|
|
14
14
|
_defineProperty(this, "subtitle", '');
|
|
15
|
+
_defineProperty(this, "accessibilitylabel", undefined);
|
|
16
|
+
_defineProperty(this, "accessibilityrole", 'progressbar');
|
|
15
17
|
}
|
|
16
18
|
}
|
|
17
19
|
//# sourceMappingURL=progress-circle.props.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BaseProps","WmProgressCircleProps","constructor","arguments","_defineProperty"],"sources":["progress-circle.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\
|
|
1
|
+
{"version":3,"names":["BaseProps","WmProgressCircleProps","constructor","arguments","_defineProperty","undefined"],"sources":["progress-circle.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityRole } from 'react-native';\nexport default class WmProgressCircleProps extends BaseProps {\n type: 'default' | 'success' | 'info' | 'warning' | 'error' = 'default';\n datavalue: number = 30;\n minvalue: number = 0;\n maxvalue: number = 100;\n captionplacement: string = 'inside';\n title: string = '';\n subtitle: string = '';\n accessibilitylabel?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'progressbar';\n}"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,qBAAqB,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,eACE,SAAS;IAAAA,eAAA,oBAClD,EAAE;IAAAA,eAAA,mBACH,CAAC;IAAAA,eAAA,mBACD,GAAG;IAAAA,eAAA,2BACK,QAAQ;IAAAA,eAAA,gBACnB,EAAE;IAAAA,eAAA,mBACC,EAAE;IAAAA,eAAA,6BACSC,SAAS;IAAAD,eAAA,4BACC,aAAa;EAAA;AACvD"}
|
|
@@ -9,6 +9,7 @@ import WmSearchProps from './search.props';
|
|
|
9
9
|
import { DEFAULT_CLASS } from './search.styles';
|
|
10
10
|
import { ModalConsumer } from "@wavemaker/app-rn-runtime/core/modal.service";
|
|
11
11
|
import { DataProvider } from '@wavemaker/app-rn-runtime/components/basic/search/local-data-provider';
|
|
12
|
+
import { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';
|
|
12
13
|
import { BaseDatasetComponent, BaseDatasetState } from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';
|
|
13
14
|
import WmAnchor from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.component';
|
|
14
15
|
import WmPicture from '@wavemaker/app-rn-runtime/components/basic/picture/picture.component';
|
|
@@ -21,6 +22,7 @@ export class WmSearchState extends BaseDatasetState {
|
|
|
21
22
|
super(...arguments);
|
|
22
23
|
_defineProperty(this, "isOpened", false);
|
|
23
24
|
_defineProperty(this, "modalOptions", {});
|
|
25
|
+
_defineProperty(this, "template", "");
|
|
24
26
|
_defineProperty(this, "position", {
|
|
25
27
|
top: 0,
|
|
26
28
|
left: 0
|
|
@@ -304,7 +306,7 @@ export default class WmSearch extends BaseDatasetComponent {
|
|
|
304
306
|
ref.selectionStart = ref.selectionEnd = this.cursor;
|
|
305
307
|
}
|
|
306
308
|
}
|
|
307
|
-
}, this.getTestPropsForInput(), {
|
|
309
|
+
}, this.getTestPropsForInput(), getAccessibilityProps(AccessibilityWidgetType.SEARCH, props), {
|
|
308
310
|
placeholderTextColor: this.styles.placeholderText.color,
|
|
309
311
|
placeholder: props.placeholder || 'Search',
|
|
310
312
|
autoFocus: props.autofocus,
|
|
@@ -350,14 +352,14 @@ export default class WmSearch extends BaseDatasetComponent {
|
|
|
350
352
|
onTap: this.onItemSelect.bind(this, item)
|
|
351
353
|
}, this.getTestProps(`action${index}`)), /*#__PURE__*/React.createElement(View, {
|
|
352
354
|
style: this.styles.searchItem
|
|
353
|
-
}, /*#__PURE__*/React.createElement(WmPicture, {
|
|
355
|
+
}, !isEmpty(this.state.template) && this.props.renderitempartial ? this.props.renderitempartial(item.dataObject, index, this.state.template) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(WmPicture, {
|
|
354
356
|
id: this.getTestId(`picture${index}`),
|
|
355
357
|
styles: imageStyles,
|
|
356
358
|
name: props.name + '_image',
|
|
357
359
|
picturesource: item.imgSrc
|
|
358
360
|
}), /*#__PURE__*/React.createElement(Text, _extends({}, this.getTestPropsForLabel(index + ''), {
|
|
359
361
|
style: this.styles.searchItemText
|
|
360
|
-
}), item.displayexp || item.displayfield)));
|
|
362
|
+
}), item.displayexp || item.displayfield))));
|
|
361
363
|
}
|
|
362
364
|
updateDefaultQueryModel() {
|
|
363
365
|
if (this.state.dataItems && this.state.dataItems.length && this.isDefaultQuery) {
|
|
@@ -393,6 +395,11 @@ export default class WmSearch extends BaseDatasetComponent {
|
|
|
393
395
|
}
|
|
394
396
|
super.onPropertyChange(name, $new, $old);
|
|
395
397
|
}
|
|
398
|
+
setTemplate(partialName) {
|
|
399
|
+
this.updateState({
|
|
400
|
+
template: partialName
|
|
401
|
+
});
|
|
402
|
+
}
|
|
396
403
|
renderWidget(props) {
|
|
397
404
|
const result = this.state.data;
|
|
398
405
|
return /*#__PURE__*/React.createElement(View, null, this.renderSearchBar(), this.state.isOpened ? /*#__PURE__*/React.createElement(ModalConsumer, null, modalService => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Keyboard","Platform","ScrollView","Text","TextInput","View","find","isNull","WmSearchProps","DEFAULT_CLASS","ModalConsumer","DataProvider","BaseDatasetComponent","BaseDatasetState","WmAnchor","WmPicture","Tappable","WmButton","get","isArray","isEmpty","isObject","AssetProvider","WmSearchState","constructor","arguments","_defineProperty","top","left","WmSearch","props","_this","this","Promise","resolve","position","view","measure","x","length","undefined","y","width","height","px","py","updateState","computePosition","then","isOpened","dataProvider","datavalue","query","clearSearch","invokeEventCallback","hide","dataItems","state","map","item","selected","type","updateFilteredData","_filteredData","queryText","filterOptions","entries","filteredData","minchars","_this$dataProvider","searchkey","updateRequired","init","invokeVariable","response","dataSet","setDataItems","filter","result","dataObject","data","isFocused","showPopover","focus","_this$widgetRef","widgetRef","onChange","value","isDefaultQuery","prevQuery","searchon","validate","invokeEvent","proxy","invokeChange","e","OS","cursor","target","selectionStart","onFocus","disabled","_this$state$props$que","onBlur","setTimeout","triggerValidation","prepareModalOptions","content","styles","modalService","o","modalOptions","modalContentSTyles","searchInputWidth","modalContent","borderWidth","modalStyle","modal","contentStyle","isModal","onClose","dismiss","setState","hideModal","searchIconPress","onItemSelect","displayexp","displayfield","datafield","updateDatavalue","prevDatavalue","queryModel","renderSearchBar","_this$state$dataItems","opts","valueExpr","createElement","style","root","ref","onLayout","searchInputWrapper","_extends","text","isValid","invalid","focusedText","selectionEnd","getTestPropsForInput","placeholderTextColor","placeholderText","color","placeholder","autoFocus","autofocus","editable","readonly","onChangeText","bind","nativeEvent","layout","showclear","onTap","id","getTestId","clearButton","iconclass","showSearchIcon","searchButton","reset","renderSearchItem","index","imageStyles","imagewidth","getTestProps","searchItem","name","picturesource","imgSrc","getTestPropsForLabel","searchItemText","updateDefaultQueryModel","selectedItem","onDataItemsUpdate","componentDidMount","onPropertyChange","$new","$old","dataset","renderWidget","showModal","maxHeight","contentContainerStyle","dropDownContent","loadAsset","key","limit","caption","datacompletemsg","dataCompleteItem"],"sources":["search.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Keyboard, Platform, ScrollView, Text, TextInput, View } from 'react-native';\nimport { find, isNull } from 'lodash';\n\nimport WmSearchProps from './search.props';\nimport { DEFAULT_CLASS, WmSearchStyles } from './search.styles';\nimport { ModalConsumer, ModalOptions, ModalService} from \"@wavemaker/app-rn-runtime/core/modal.service\";\nimport { DataProvider } from '@wavemaker/app-rn-runtime/components/basic/search/local-data-provider';\n\nimport {\n BaseDatasetComponent,\n BaseDatasetState\n} from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';\nimport WmAnchor from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.component';\nimport WmPicture from '@wavemaker/app-rn-runtime/components/basic/picture/picture.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\nimport { get, isArray, isEmpty, isObject } from \"lodash-es\";\nimport { AssetProvider } from '@wavemaker/app-rn-runtime/core/asset.provider';\n\nexport class WmSearchState extends BaseDatasetState<WmSearchProps> {\n isOpened: boolean = false;\n modalOptions = {} as ModalOptions;\n position = {\n top: 0,\n left: 0\n } as DropdownPosition;\n data: any = [];\n}\n\nexport interface DropdownPosition {\n top?: number;\n bottom?: number;\n left?: number;\n right?: number;\n}\n\nexport default class WmSearch extends BaseDatasetComponent<WmSearchProps, WmSearchState, WmSearchStyles> {\n view: View = null as any;\n private prevDatavalue: any;\n private queryModel: any;\n private searchInputWidth: any;\n private isDefaultQuery: boolean = true;\n private dataProvider: DataProvider;\n public widgetRef: TextInput | null = null;\n private cursor: any = 0;\n private isFocused: boolean = false;\n private updateRequired: any;\n\n constructor(props: WmSearchProps) {\n super(props, DEFAULT_CLASS, new WmSearchProps(), new WmSearchState());\n this.dataProvider = new DataProvider();\n if (this.props.datavalue) {\n this.updateState({\n props: {\n query: this.props.datavalue\n }\n } as WmSearchState);\n }\n }\n\n computePosition = () => {\n return new Promise<void>((resolve) => {\n const position = {} as DropdownPosition;\n this.view.measure((x = 0, y = 0, width = 0, height = 0, px = 0, py = 0) => {\n position.left = px;\n position.top = py + height;\n this.updateState({ position: position } as WmSearchState, resolve);\n });\n });\n }\n\n clearSearch() {\n this.invokeEventCallback('onClear', [null, this]);\n this.hide();\n this.updateState({\n props: {\n query: ''\n },\n dataItems: this.state.dataItems ? this.state.dataItems.map((item: any) => {\n item.selected = false;\n return item;\n }) : []\n } as WmSearchState, () => {\n if (this.state.props.type === 'autocomplete') {\n this.updateFilteredData('');\n }\n });\n }\n\n updateFilteredData(queryText: string = '') {\n const props = this.state.props;\n const filterOptions = {\n query: queryText,\n props: props,\n entries: this.state.dataItems\n };\n let filteredData: Array<any> = [];\n if (props.minchars && queryText.length < props.minchars) {\n filteredData = [];\n } else if (props.type === 'search' && !queryText) {\n filteredData = [];\n } else {\n if (this.props.searchkey && this.updateRequired === undefined) {\n this.updateRequired = this.dataProvider.init(this);\n }\n // for service variables invoke the variable with params.\n if (this.props.searchkey && this.updateRequired && this.state.props.query !== queryText) {\n this.dataProvider.invokeVariable(this, queryText).then((response: any) => {\n if (response) {\n response = response.dataSet;\n if (isEmpty(response)) {\n filteredData = [];\n } else {\n if (isObject(response) && !isArray(response)) {\n response = [response];\n }\n this.setDataItems(response);\n }\n }\n }, () => {});\n return;\n }\n filteredData = this.dataProvider?.filter(filterOptions);\n }\n this.updateState({\n props: { result: filteredData?.map( (item: any) => item.dataObject), query: queryText },\n data: filteredData,\n } as WmSearchState);\n if (!this.state.isOpened && this.isFocused) {\n this.showPopover && this.showPopover();\n }\n }\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n onChange(value: any) {\n this.isDefaultQuery = false;\n const prevQuery = this.state.props.query;\n if (this.state.props.searchon === 'onsearchiconclick') {\n this.updateState({\n props: {result: [], query: value},\n data: []\n } as WmSearchState);\n } else {\n this.updateFilteredData(value);\n }\n if (value === '') {\n this.validate(value);\n this.updateState({\n props: {\n datavalue: '',\n },\n } as WmSearchState);\n if (value === prevQuery) {\n return;\n }\n }\n if (this.props.invokeEvent) {\n this.props.invokeEvent('onChange', [undefined, this.proxy, value, prevQuery]);\n }\n this.invokeEventCallback('onChange', [ undefined, this.proxy, value, prevQuery ]);\n }\n\n invokeChange(e: any) {\n if (Platform.OS === 'web') {\n this.cursor = e.target.selectionStart;\n this.updateState({ props: { query: e.target.value } } as WmSearchState);\n }\n }\n\n onFocus() {\n this.isFocused = true;\n if (!this.state.props.disabled && this.state.props.type === 'autocomplete') {\n this.cursor = this.state.props.query?.length || 0;\n this.updateFilteredData(this.state.props.query || '');\n }\n this.invokeEventCallback('onFocus', [null, this]);\n }\n\n onBlur() {\n this.isFocused = false;\n this.validate(this.state.props.datavalue);\n if (!this.state.props.datavalue) {\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n })\n }\n this.invokeEventCallback('onBlur', [null, this]);\n }\n\n public showPopover = () => {\n this.computePosition().then(() => {\n this.updateState({ isOpened: true } as WmSearchState);\n });\n };\n\n public hide = () => {};\n\n prepareModalOptions(content: React.ReactNode, styles: WmSearchStyles, modalService: ModalService) {\n const o = this.state.modalOptions;\n const modalContentSTyles = {\n width: this.searchInputWidth - 2 * (styles.modalContent.borderWidth || 0),\n left: (this.state.position.left || 0) + 2 * (styles.modalContent.borderWidth || 0) };\n o.modalStyle = {...styles.modal};\n o.contentStyle = {...styles.modalContent, ...this.state.position, ...modalContentSTyles};\n o.content = content;\n o.isModal = true;\n o.onClose = () => {\n this.hide = () => {};\n Keyboard.dismiss();\n if (this.state.isOpened) {\n this.setState({isOpened: false, modalOptions: {} as ModalOptions} as WmSearchState);\n }\n };\n this.hide = () => {\n modalService.hideModal(this.state.modalOptions);\n if (this.state.isOpened) {\n this.setState({ isOpened: false, modalOptions: {} as ModalOptions } as WmSearchState);\n }\n }\n return o;\n }\n\n searchIconPress() {\n this.isFocused = false;\n if (this.state.props.searchon === 'onsearchiconclick') {\n this.updateFilteredData(this.state.props.query);\n } else {\n this.onItemSelect(this.state.data[0]);\n }\n }\n\n onItemSelect(item: any) {\n this.isFocused = false;\n this.updateState({ props: {\n query: item.displayexp || item.displayfield\n }\n } as WmSearchState);\n this.validate(item.datafield);\n this.updateDatavalue(item.datafield);\n this.prevDatavalue = item.datafield;\n this.queryModel = item;\n if (get(this.props, 'formfield')) {\n // @ts-ignore\n this.props.invokeEvent('onSelect', [null, this, item.datafield]);\n // @ts-ignore\n this.props.invokeEvent('onSubmit', [null, this]);\n } else {\n this.invokeEventCallback('onSelect', [null, this, item.datafield]);\n this.invokeEventCallback('onSubmit', [null, this]);\n }\n this.hide();\n }\n\n renderSearchBar() {\n const props = this.state.props;\n let opts: any = {};\n const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';\n opts[valueExpr] = this.state.props.query || '';\n return(\n /*\n * onLayout function is required.\n * https://github.com/naoufal/react-native-accordion/pull/19/files\n */\n <View style={this.styles.root} ref={ref => {this.view = ref as View}} onLayout={() => {}}>\n <View style={this.styles.searchInputWrapper}>\n <TextInput style={[this.styles.text, this.state.isValid ? {} : this.styles.invalid, this.state.isOpened && this.state.dataItems?.length > 0? this.styles.focusedText : null]}\n ref={ref => {this.widgetRef = ref;\n // @ts-ignore\n if (ref && !isNull(ref.selectionStart) && !isNull(ref.selectionEnd)) {\n // @ts-ignore\n ref.selectionStart = ref.selectionEnd = this.cursor;\n }}}\n {...this.getTestPropsForInput()}\n placeholderTextColor={this.styles.placeholderText.color as any}\n placeholder={props.placeholder || 'Search'}\n autoFocus={props.autofocus}\n editable={props.disabled || props.readonly ? false : true}\n onChangeText={this.onChange.bind(this)}\n onChange={this.invokeChange.bind(this)}\n onFocus={this.onFocus.bind(this)}\n onLayout={e => {this.searchInputWidth = e.nativeEvent.layout.width}}\n onBlur={this.onBlur.bind(this)}\n {...opts}>\n </TextInput>\n {props.showclear && this.state.props.query ? <WmButton onTap={this.clearSearch.bind(this)}\n id={this.getTestId('clear')}\n styles={this.styles.clearButton} iconclass={'wi wi-clear'}></WmButton> : null}\n </View>\n {props.showSearchIcon && props.type === 'search' ? <WmButton styles={this.styles.searchButton}\n id={this.getTestId('search')}\n iconclass={'wm-sl-l sl-search'} onTap={this.searchIconPress.bind(this)}></WmButton> : null}\n </View>\n );\n }\n\n reset() {\n if (this.state.props.query) {\n this.updateState({\n props: {\n query: ''\n }\n } as WmSearchState);\n }\n }\n\n renderSearchItem(item: any, index: number) {\n const props = this.state.props;\n const imageStyles = { root: {height:props.imagewidth, width:props.imagewidth}}\n return (\n <Tappable onTap={this.onItemSelect.bind(this, item)} {...this.getTestProps(`action${index}`)}>\n <View style={this.styles.searchItem}>\n <WmPicture id={this.getTestId(`picture${index}`)} styles={imageStyles} name={props.name + '_image'} picturesource={item.imgSrc}></WmPicture>\n <Text {...this.getTestPropsForLabel(index + '')} style={this.styles.searchItemText}>{item.displayexp || item.displayfield}</Text>\n </View>\n </Tappable>\n );\n }\n\n updateDefaultQueryModel() {\n if (this.state.dataItems && this.state.dataItems.length && this.isDefaultQuery) {\n const selectedItem = find(this.state.dataItems, (item) => item.selected);\n this.updateState({ props: {\n query: selectedItem ? (selectedItem.displayexp || selectedItem.displayfield) : ''\n }\n } as WmSearchState);\n }\n }\n\n onDataItemsUpdate() {\n super.onDataItemsUpdate();\n this.isFocused && this.state.dataItems.length && this.updateFilteredData(this.state.props.query);\n this.updateDefaultQueryModel();\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n this.updateDefaultQueryModel();\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'dataset':\n if (!isEmpty($new) && isObject($new) && !isArray($new)) {\n $new = [$new];\n this.updateState({\n props: {\n dataset: $new\n }\n } as WmSearchState);\n }\n break;\n }\n super.onPropertyChange(name, $new, $old);\n }\n\n renderWidget(props: WmSearchProps) {\n const result = this.state.data;\n return (\n <View>\n {this.renderSearchBar()}\n {this.state.isOpened ? (\n <ModalConsumer>\n {(modalService: ModalService) => {\n modalService.showModal(this.prepareModalOptions((\n <ScrollView style={{width: '100%', maxHeight: 200}} contentContainerStyle={this.styles.dropDownContent}>\n <AssetProvider value={this.loadAsset}>\n {result && result.map((item: any, index: any) => (\n <View key={item.key}>\n {\n (!props.limit) || (props.limit && index+1 <= props.limit) ?\n this.renderSearchItem(item, index)\n : null\n }\n {\n index === result.length - 1 ?\n <WmAnchor caption={props.datacompletemsg} styles={this.styles.dataCompleteItem}></WmAnchor> : null\n }\n </View>\n ))}\n </AssetProvider>\n </ScrollView>\n ), this.styles, modalService));\n return null;\n }}\n </ModalConsumer>) : null}\n </View>\n\n );\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,EAAEC,QAAQ,EAAEC,UAAU,EAAEC,IAAI,EAAEC,SAAS,EAAEC,IAAI,QAAQ,cAAc;AACpF,SAASC,IAAI,EAAEC,MAAM,QAAQ,QAAQ;AAErC,OAAOC,aAAa,MAAM,gBAAgB;AAC1C,SAASC,aAAa,QAAwB,iBAAiB;AAC/D,SAASC,aAAa,QAAmC,8CAA8C;AACvG,SAASC,YAAY,QAAQ,uEAAuE;AAEpG,SACEC,oBAAoB,EACpBC,gBAAgB,QACX,8EAA8E;AACrF,OAAOC,QAAQ,MAAM,oEAAoE;AACzF,OAAOC,SAAS,MAAM,sEAAsE;AAC5F,SAASC,QAAQ,QAAQ,mDAAmD;AAC5E,OAAOC,QAAQ,MAAM,oEAAoE;AACzF,SAASC,GAAG,EAAEC,OAAO,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,WAAW;AAC3D,SAASC,aAAa,QAAQ,+CAA+C;AAE7E,OAAO,MAAMC,aAAa,SAASV,gBAAgB,CAAgB;EAAAW,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,mBAC7C,KAAK;IAAAA,eAAA,uBACV,CAAC,CAAC;IAAAA,eAAA,mBACN;MACTC,GAAG,EAAE,CAAC;MACNC,IAAI,EAAE;IACR,CAAC;IAAAF,eAAA,eACW,EAAE;EAAA;AAChB;AASA,eAAe,MAAMG,QAAQ,SAASjB,oBAAoB,CAA+C;EAYvGY,WAAWA,CAACM,KAAoB,EAAE;IAAA,IAAAC,KAAA;IAChC,KAAK,CAACD,KAAK,EAAErB,aAAa,EAAE,IAAID,aAAa,CAAC,CAAC,EAAE,IAAIe,aAAa,CAAC,CAAC,CAAC;IAAAQ,KAAA,GAAAC,IAAA;IAAAN,eAAA,eAZ1D,IAAI;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,yBAIiB,IAAI;IAAAA,eAAA;IAAAA,eAAA,oBAED,IAAI;IAAAA,eAAA,iBACnB,CAAC;IAAAA,eAAA,oBACM,KAAK;IAAAA,eAAA;IAAAA,eAAA,0BAehB,MAAM;MACtB,OAAO,IAAIO,OAAO,CAAQC,OAAO,IAAK;QACpC,MAAMC,QAAQ,GAAG,CAAC,CAAqB;QACvC,IAAI,CAACC,IAAI,CAACC,OAAO,CAAC,YAAyD;UAAA,IAAxDC,CAAC,GAAAb,SAAA,CAAAc,MAAA,QAAAd,SAAA,QAAAe,SAAA,GAAAf,SAAA,MAAG,CAAC;UAAA,IAAEgB,CAAC,GAAAhB,SAAA,CAAAc,MAAA,QAAAd,SAAA,QAAAe,SAAA,GAAAf,SAAA,MAAG,CAAC;UAAA,IAAEiB,KAAK,GAAAjB,SAAA,CAAAc,MAAA,QAAAd,SAAA,QAAAe,SAAA,GAAAf,SAAA,MAAG,CAAC;UAAA,IAAEkB,MAAM,GAAAlB,SAAA,CAAAc,MAAA,QAAAd,SAAA,QAAAe,SAAA,GAAAf,SAAA,MAAG,CAAC;UAAA,IAAEmB,EAAE,GAAAnB,SAAA,CAAAc,MAAA,QAAAd,SAAA,QAAAe,SAAA,GAAAf,SAAA,MAAG,CAAC;UAAA,IAAEoB,EAAE,GAAApB,SAAA,CAAAc,MAAA,QAAAd,SAAA,QAAAe,SAAA,GAAAf,SAAA,MAAG,CAAC;UACpEU,QAAQ,CAACP,IAAI,GAAGgB,EAAE;UAClBT,QAAQ,CAACR,GAAG,GAAGkB,EAAE,GAAGF,MAAM;UAC1BZ,KAAI,CAACe,WAAW,CAAC;YAAEX,QAAQ,EAAEA;UAAS,CAAC,EAAmBD,OAAO,CAAC;QACpE,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ,CAAC;IAAAR,eAAA,sBA2HoB,MAAM;MACzB,IAAI,CAACqB,eAAe,CAAC,CAAC,CAACC,IAAI,CAAC,MAAM;QAChC,IAAI,CAACF,WAAW,CAAC;UAAEG,QAAQ,EAAE;QAAK,CAAkB,CAAC;MACvD,CAAC,CAAC;IACJ,CAAC;IAAAvB,eAAA,eAEa,MAAM,CAAC,CAAC;IApJpB,IAAI,CAACwB,YAAY,GAAG,IAAIvC,YAAY,CAAC,CAAC;IACtC,IAAI,IAAI,CAACmB,KAAK,CAACqB,SAAS,EAAE;MACxB,IAAI,CAACL,WAAW,CAAC;QACfhB,KAAK,EAAE;UACLsB,KAAK,EAAE,IAAI,CAACtB,KAAK,CAACqB;QACpB;MACF,CAAkB,CAAC;IACrB;EACF;EAaAE,WAAWA,CAAA,EAAG;IACZ,IAAI,CAACC,mBAAmB,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACjD,IAAI,CAACC,IAAI,CAAC,CAAC;IACX,IAAI,CAACT,WAAW,CAAC;MACfhB,KAAK,EAAE;QACLsB,KAAK,EAAE;MACT,CAAC;MACDI,SAAS,EAAE,IAAI,CAACC,KAAK,CAACD,SAAS,GAAG,IAAI,CAACC,KAAK,CAACD,SAAS,CAACE,GAAG,CAAEC,IAAS,IAAK;QACxEA,IAAI,CAACC,QAAQ,GAAG,KAAK;QACrB,OAAOD,IAAI;MACb,CAAC,CAAC,GAAG;IACP,CAAC,EAAmB,MAAM;MACxB,IAAI,IAAI,CAACF,KAAK,CAAC3B,KAAK,CAAC+B,IAAI,KAAK,cAAc,EAAE;QAC5C,IAAI,CAACC,kBAAkB,CAAC,EAAE,CAAC;MAC7B;IACF,CAAC,CAAC;EACJ;EAEAA,kBAAkBA,CAAA,EAAyB;IAAA,IAAAC,aAAA;IAAA,IAAxBC,SAAiB,GAAAvC,SAAA,CAAAc,MAAA,QAAAd,SAAA,QAAAe,SAAA,GAAAf,SAAA,MAAG,EAAE;IACvC,MAAMK,KAAK,GAAG,IAAI,CAAC2B,KAAK,CAAC3B,KAAK;IAC9B,MAAMmC,aAAa,GAAG;MACpBb,KAAK,EAAEY,SAAS;MAChBlC,KAAK,EAAEA,KAAK;MACZoC,OAAO,EAAE,IAAI,CAACT,KAAK,CAACD;IACtB,CAAC;IACD,IAAIW,YAAwB,GAAG,EAAE;IACjC,IAAIrC,KAAK,CAACsC,QAAQ,IAAIJ,SAAS,CAACzB,MAAM,GAAGT,KAAK,CAACsC,QAAQ,EAAE;MACvDD,YAAY,GAAG,EAAE;IACnB,CAAC,MAAM,IAAIrC,KAAK,CAAC+B,IAAI,KAAK,QAAQ,IAAI,CAACG,SAAS,EAAE;MAChDG,YAAY,GAAG,EAAE;IACnB,CAAC,MAAM;MAAA,IAAAE,kBAAA;MACL,IAAI,IAAI,CAACvC,KAAK,CAACwC,SAAS,IAAI,IAAI,CAACC,cAAc,KAAK/B,SAAS,EAAE;QAC7D,IAAI,CAAC+B,cAAc,GAAG,IAAI,CAACrB,YAAY,CAACsB,IAAI,CAAC,IAAI,CAAC;MACpD;MACA;MACA,IAAI,IAAI,CAAC1C,KAAK,CAACwC,SAAS,IAAI,IAAI,CAACC,cAAc,IAAI,IAAI,CAACd,KAAK,CAAC3B,KAAK,CAACsB,KAAK,KAAKY,SAAS,EAAE;QACvF,IAAI,CAACd,YAAY,CAACuB,cAAc,CAAC,IAAI,EAAET,SAAS,CAAC,CAAChB,IAAI,CAAE0B,QAAa,IAAK;UACxE,IAAIA,QAAQ,EAAE;YACZA,QAAQ,GAAGA,QAAQ,CAACC,OAAO;YAC3B,IAAIvD,OAAO,CAACsD,QAAQ,CAAC,EAAE;cACrBP,YAAY,GAAG,EAAE;YACnB,CAAC,MAAM;cACL,IAAI9C,QAAQ,CAACqD,QAAQ,CAAC,IAAI,CAACvD,OAAO,CAACuD,QAAQ,CAAC,EAAE;gBAC5CA,QAAQ,GAAG,CAACA,QAAQ,CAAC;cACvB;cACA,IAAI,CAACE,YAAY,CAACF,QAAQ,CAAC;YAC7B;UACF;QACF,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACZ;MACF;MACAP,YAAY,IAAAE,kBAAA,GAAG,IAAI,CAACnB,YAAY,cAAAmB,kBAAA,uBAAjBA,kBAAA,CAAmBQ,MAAM,CAACZ,aAAa,CAAC;IACzD;IACA,IAAI,CAACnB,WAAW,CAAC;MACfhB,KAAK,EAAE;QAAEgD,MAAM,GAAAf,aAAA,GAAEI,YAAY,cAAAJ,aAAA,uBAAZA,aAAA,CAAcL,GAAG,CAAGC,IAAS,IAAKA,IAAI,CAACoB,UAAU,CAAC;QAAE3B,KAAK,EAAEY;MAAU,CAAC;MACvFgB,IAAI,EAAEb;IACR,CAAkB,CAAC;IACnB,IAAI,CAAC,IAAI,CAACV,KAAK,CAACR,QAAQ,IAAI,IAAI,CAACgC,SAAS,EAAE;MAC1C,IAAI,CAACC,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC,CAAC;IACxC;EACF;EAEAC,KAAKA,CAAA,EAAG;IAAA,IAAAC,eAAA;IACN,IAAI,aAAJ,IAAI,gBAAAA,eAAA,GAAJ,IAAI,CAAEC,SAAS,cAAAD,eAAA,uBAAfA,eAAA,CAAiBD,KAAK,CAAC,CAAC;EAC1B;EAEAG,QAAQA,CAACC,KAAU,EAAE;IACnB,IAAI,CAACC,cAAc,GAAG,KAAK;IAC3B,MAAMC,SAAS,GAAG,IAAI,CAAChC,KAAK,CAAC3B,KAAK,CAACsB,KAAK;IACxC,IAAI,IAAI,CAACK,KAAK,CAAC3B,KAAK,CAAC4D,QAAQ,KAAK,mBAAmB,EAAE;MACrD,IAAI,CAAC5C,WAAW,CAAC;QACfhB,KAAK,EAAE;UAACgD,MAAM,EAAE,EAAE;UAAE1B,KAAK,EAAEmC;QAAK,CAAC;QACjCP,IAAI,EAAE;MACR,CAAkB,CAAC;IACrB,CAAC,MAAM;MACL,IAAI,CAAClB,kBAAkB,CAACyB,KAAK,CAAC;IAChC;IACA,IAAIA,KAAK,KAAK,EAAE,EAAE;MAChB,IAAI,CAACI,QAAQ,CAACJ,KAAK,CAAC;MACpB,IAAI,CAACzC,WAAW,CAAC;QACfhB,KAAK,EAAE;UACLqB,SAAS,EAAE;QACb;MACF,CAAkB,CAAC;MACnB,IAAIoC,KAAK,KAAKE,SAAS,EAAE;QACvB;MACF;IACF;IACA,IAAI,IAAI,CAAC3D,KAAK,CAAC8D,WAAW,EAAE;MAC1B,IAAI,CAAC9D,KAAK,CAAC8D,WAAW,CAAC,UAAU,EAAE,CAACpD,SAAS,EAAE,IAAI,CAACqD,KAAK,EAAEN,KAAK,EAAEE,SAAS,CAAC,CAAC;IAC/E;IACC,IAAI,CAACnC,mBAAmB,CAAC,UAAU,EAAE,CAAEd,SAAS,EAAE,IAAI,CAACqD,KAAK,EAAEN,KAAK,EAAEE,SAAS,CAAE,CAAC;EACpF;EAEAK,YAAYA,CAACC,CAAM,EAAE;IACnB,IAAI9F,QAAQ,CAAC+F,EAAE,KAAK,KAAK,EAAE;MACzB,IAAI,CAACC,MAAM,GAAGF,CAAC,CAACG,MAAM,CAACC,cAAc;MACrC,IAAI,CAACrD,WAAW,CAAC;QAAEhB,KAAK,EAAE;UAAEsB,KAAK,EAAE2C,CAAC,CAACG,MAAM,CAACX;QAAM;MAAE,CAAkB,CAAC;IACzE;EACF;EAEAa,OAAOA,CAAA,EAAG;IACR,IAAI,CAACnB,SAAS,GAAG,IAAI;IACrB,IAAI,CAAC,IAAI,CAACxB,KAAK,CAAC3B,KAAK,CAACuE,QAAQ,IAAI,IAAI,CAAC5C,KAAK,CAAC3B,KAAK,CAAC+B,IAAI,KAAK,cAAc,EAAE;MAAA,IAAAyC,qBAAA;MAC1E,IAAI,CAACL,MAAM,GAAG,EAAAK,qBAAA,OAAI,CAAC7C,KAAK,CAAC3B,KAAK,CAACsB,KAAK,cAAAkD,qBAAA,uBAAtBA,qBAAA,CAAwB/D,MAAM,KAAI,CAAC;MACjD,IAAI,CAACuB,kBAAkB,CAAC,IAAI,CAACL,KAAK,CAAC3B,KAAK,CAACsB,KAAK,IAAI,EAAE,CAAC;IACvD;IACA,IAAI,CAACE,mBAAmB,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;EACnD;EAEAiD,MAAMA,CAAA,EAAG;IACP,IAAI,CAACtB,SAAS,GAAG,KAAK;IACtB,IAAI,CAACU,QAAQ,CAAC,IAAI,CAAClC,KAAK,CAAC3B,KAAK,CAACqB,SAAS,CAAC;IACzC,IAAI,CAAC,IAAI,CAACM,KAAK,CAAC3B,KAAK,CAACqB,SAAS,EAAE;MAC/BqD,UAAU,CAAC,MAAM;QACf,IAAI,CAAC1E,KAAK,CAAC2E,iBAAiB,IAAI,IAAI,CAAC3E,KAAK,CAAC2E,iBAAiB,CAAC,CAAC;MAChE,CAAC,CAAC;IACJ;IACA,IAAI,CAACnD,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;EAClD;EAUAoD,mBAAmBA,CAACC,OAAwB,EAAEC,MAAsB,EAAEC,YAA0B,EAAE;IAChG,MAAMC,CAAC,GAAG,IAAI,CAACrD,KAAK,CAACsD,YAAY;IACjC,MAAMC,kBAAkB,GAAG;MACzBtE,KAAK,EAAE,IAAI,CAACuE,gBAAgB,GAAG,CAAC,IAAIL,MAAM,CAACM,YAAY,CAACC,WAAW,IAAI,CAAC,CAAC;MACzEvF,IAAI,EAAE,CAAC,IAAI,CAAC6B,KAAK,CAACtB,QAAQ,CAACP,IAAI,IAAI,CAAC,IAAI,CAAC,IAAIgF,MAAM,CAACM,YAAY,CAACC,WAAW,IAAI,CAAC;IAAE,CAAC;IACtFL,CAAC,CAACM,UAAU,GAAG;MAAC,GAAGR,MAAM,CAACS;IAAK,CAAC;IAChCP,CAAC,CAACQ,YAAY,GAAG;MAAC,GAAGV,MAAM,CAACM,YAAY;MAAE,GAAG,IAAI,CAACzD,KAAK,CAACtB,QAAQ;MAAE,GAAG6E;IAAkB,CAAC;IACxFF,CAAC,CAACH,OAAO,GAAGA,OAAO;IACnBG,CAAC,CAACS,OAAO,GAAG,IAAI;IAChBT,CAAC,CAACU,OAAO,GAAG,MAAM;MAChB,IAAI,CAACjE,IAAI,GAAG,MAAM,CAAC,CAAC;MACpBvD,QAAQ,CAACyH,OAAO,CAAC,CAAC;MAClB,IAAI,IAAI,CAAChE,KAAK,CAACR,QAAQ,EAAE;QACvB,IAAI,CAACyE,QAAQ,CAAC;UAACzE,QAAQ,EAAE,KAAK;UAAE8D,YAAY,EAAE,CAAC;QAAiB,CAAkB,CAAC;MACrF;IACF,CAAC;IACD,IAAI,CAACxD,IAAI,GAAG,MAAM;MAChBsD,YAAY,CAACc,SAAS,CAAC,IAAI,CAAClE,KAAK,CAACsD,YAAY,CAAC;MAC/C,IAAI,IAAI,CAACtD,KAAK,CAACR,QAAQ,EAAE;QACvB,IAAI,CAACyE,QAAQ,CAAC;UAAEzE,QAAQ,EAAE,KAAK;UAAE8D,YAAY,EAAE,CAAC;QAAkB,CAAkB,CAAC;MACvF;IACF,CAAC;IACD,OAAOD,CAAC;EACV;EAEAc,eAAeA,CAAA,EAAG;IAChB,IAAI,CAAC3C,SAAS,GAAG,KAAK;IACtB,IAAI,IAAI,CAACxB,KAAK,CAAC3B,KAAK,CAAC4D,QAAQ,KAAK,mBAAmB,EAAE;MACrD,IAAI,CAAC5B,kBAAkB,CAAC,IAAI,CAACL,KAAK,CAAC3B,KAAK,CAACsB,KAAK,CAAC;IACjD,CAAC,MAAM;MACL,IAAI,CAACyE,YAAY,CAAC,IAAI,CAACpE,KAAK,CAACuB,IAAI,CAAC,CAAC,CAAC,CAAC;IACvC;EACF;EAEA6C,YAAYA,CAAClE,IAAS,EAAE;IACtB,IAAI,CAACsB,SAAS,GAAG,KAAK;IACtB,IAAI,CAACnC,WAAW,CAAC;MAAEhB,KAAK,EAAE;QACtBsB,KAAK,EAAEO,IAAI,CAACmE,UAAU,IAAInE,IAAI,CAACoE;MACjC;IACF,CAAkB,CAAC;IACnB,IAAI,CAACpC,QAAQ,CAAChC,IAAI,CAACqE,SAAS,CAAC;IAC7B,IAAI,CAACC,eAAe,CAACtE,IAAI,CAACqE,SAAS,CAAC;IACpC,IAAI,CAACE,aAAa,GAAGvE,IAAI,CAACqE,SAAS;IACnC,IAAI,CAACG,UAAU,GAAGxE,IAAI;IACtB,IAAIzC,GAAG,CAAC,IAAI,CAACY,KAAK,EAAE,WAAW,CAAC,EAAE;MAChC;MACA,IAAI,CAACA,KAAK,CAAC8D,WAAW,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,EAAEjC,IAAI,CAACqE,SAAS,CAAC,CAAC;MAChE;MACA,IAAI,CAAClG,KAAK,CAAC8D,WAAW,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAClD,CAAC,MAAM;MACL,IAAI,CAACtC,mBAAmB,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,EAAEK,IAAI,CAACqE,SAAS,CAAC,CAAC;MAClE,IAAI,CAAC1E,mBAAmB,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACpD;IACA,IAAI,CAACC,IAAI,CAAC,CAAC;EACb;EAEA6E,eAAeA,CAAA,EAAG;IAAA,IAAAC,qBAAA;IAChB,MAAMvG,KAAK,GAAG,IAAI,CAAC2B,KAAK,CAAC3B,KAAK;IAC9B,IAAIwG,IAAS,GAAG,CAAC,CAAC;IAClB,MAAMC,SAAS,GAAGtI,QAAQ,CAAC+F,EAAE,KAAK,KAAK,GAAG,OAAO,GAAG,cAAc;IAClEsC,IAAI,CAACC,SAAS,CAAC,GAAG,IAAI,CAAC9E,KAAK,CAAC3B,KAAK,CAACsB,KAAK,IAAI,EAAE;IAC9C;MAAA;MACE;AACN;AACA;AACA;MACMrD,KAAA,CAAAyI,aAAA,CAACnI,IAAI;QAACoI,KAAK,EAAE,IAAI,CAAC7B,MAAM,CAAC8B,IAAK;QAACC,GAAG,EAAEA,GAAG,IAAI;UAAC,IAAI,CAACvG,IAAI,GAAGuG,GAAW;QAAA,CAAE;QAACC,QAAQ,EAAEA,CAAA,KAAM,CAAC;MAAE,gBACvF7I,KAAA,CAAAyI,aAAA,CAACnI,IAAI;QAACoI,KAAK,EAAE,IAAI,CAAC7B,MAAM,CAACiC;MAAmB,gBAC1C9I,KAAA,CAAAyI,aAAA,CAACpI,SAAS,EAAA0I,QAAA;QAACL,KAAK,EAAE,CAAC,IAAI,CAAC7B,MAAM,CAACmC,IAAI,EAAE,IAAI,CAACtF,KAAK,CAACuF,OAAO,GAAG,CAAC,CAAC,GAAG,IAAI,CAACpC,MAAM,CAACqC,OAAO,EAAE,IAAI,CAACxF,KAAK,CAACR,QAAQ,IAAI,EAAAoF,qBAAA,OAAI,CAAC5E,KAAK,CAACD,SAAS,cAAA6E,qBAAA,uBAApBA,qBAAA,CAAsB9F,MAAM,IAAG,CAAC,GAAE,IAAI,CAACqE,MAAM,CAACsC,WAAW,GAAG,IAAI,CAAE;QAC5KP,GAAG,EAAEA,GAAG,IAAI;UAAC,IAAI,CAACtD,SAAS,GAAGsD,GAAG;UAC/B;UACA,IAAIA,GAAG,IAAI,CAACpI,MAAM,CAACoI,GAAG,CAACxC,cAAc,CAAC,IAAI,CAAC5F,MAAM,CAACoI,GAAG,CAACQ,YAAY,CAAC,EAAE;YACnE;YACAR,GAAG,CAACxC,cAAc,GAAGwC,GAAG,CAACQ,YAAY,GAAG,IAAI,CAAClD,MAAM;UACrD;QAAC;MAAE,GACA,IAAI,CAACmD,oBAAoB,CAAC,CAAC;QAC/BC,oBAAoB,EAAE,IAAI,CAACzC,MAAM,CAAC0C,eAAe,CAACC,KAAa;QAC/DC,WAAW,EAAE1H,KAAK,CAAC0H,WAAW,IAAI,QAAS;QAC3CC,SAAS,EAAE3H,KAAK,CAAC4H,SAAU;QAC3BC,QAAQ,EAAE7H,KAAK,CAACuE,QAAQ,IAAIvE,KAAK,CAAC8H,QAAQ,GAAG,KAAK,GAAG,IAAK;QAC1DC,YAAY,EAAE,IAAI,CAACvE,QAAQ,CAACwE,IAAI,CAAC,IAAI,CAAE;QACvCxE,QAAQ,EAAE,IAAI,CAACQ,YAAY,CAACgE,IAAI,CAAC,IAAI,CAAE;QACvC1D,OAAO,EAAE,IAAI,CAACA,OAAO,CAAC0D,IAAI,CAAC,IAAI,CAAE;QACjClB,QAAQ,EAAE7C,CAAC,IAAI;UAAC,IAAI,CAACkB,gBAAgB,GAAGlB,CAAC,CAACgE,WAAW,CAACC,MAAM,CAACtH,KAAK;QAAA,CAAE;QACpE6D,MAAM,EAAE,IAAI,CAACA,MAAM,CAACuD,IAAI,CAAC,IAAI;MAAE,GAC3BxB,IAAI,CACA,CAAC,EACXxG,KAAK,CAACmI,SAAS,IAAI,IAAI,CAACxG,KAAK,CAAC3B,KAAK,CAACsB,KAAK,gBAAGrD,KAAA,CAAAyI,aAAA,CAACvH,QAAQ;QAACiJ,KAAK,EAAE,IAAI,CAAC7G,WAAW,CAACyG,IAAI,CAAC,IAAI,CAAE;QAChFK,EAAE,EAAE,IAAI,CAACC,SAAS,CAAC,OAAO,CAAE;QAC5BxD,MAAM,EAAE,IAAI,CAACA,MAAM,CAACyD,WAAY;QAACC,SAAS,EAAE;MAAc,CAAW,CAAC,GAAG,IAC/E,CAAC,EACLxI,KAAK,CAACyI,cAAc,IAAIzI,KAAK,CAAC+B,IAAI,KAAK,QAAQ,gBAAG9D,KAAA,CAAAyI,aAAA,CAACvH,QAAQ;QAAC2F,MAAM,EAAE,IAAI,CAACA,MAAM,CAAC4D,YAAa;QACpFL,EAAE,EAAE,IAAI,CAACC,SAAS,CAAC,QAAQ,CAAE;QAC7BE,SAAS,EAAE,mBAAoB;QAACJ,KAAK,EAAE,IAAI,CAACtC,eAAe,CAACkC,IAAI,CAAC,IAAI;MAAE,CAAW,CAAC,GAAG,IAC5F;IAAC;EAEX;EAEAW,KAAKA,CAAA,EAAG;IACN,IAAI,IAAI,CAAChH,KAAK,CAAC3B,KAAK,CAACsB,KAAK,EAAE;MAC1B,IAAI,CAACN,WAAW,CAAC;QACfhB,KAAK,EAAE;UACLsB,KAAK,EAAE;QACT;MACF,CAAkB,CAAC;IACrB;EACF;EAEAsH,gBAAgBA,CAAC/G,IAAS,EAAEgH,KAAa,EAAE;IACzC,MAAM7I,KAAK,GAAG,IAAI,CAAC2B,KAAK,CAAC3B,KAAK;IAC9B,MAAM8I,WAAW,GAAG;MAAElC,IAAI,EAAE;QAAC/F,MAAM,EAACb,KAAK,CAAC+I,UAAU;QAAEnI,KAAK,EAACZ,KAAK,CAAC+I;MAAU;IAAC,CAAC;IAC9E,oBACE9K,KAAA,CAAAyI,aAAA,CAACxH,QAAQ,EAAA8H,QAAA;MAACoB,KAAK,EAAE,IAAI,CAACrC,YAAY,CAACiC,IAAI,CAAC,IAAI,EAAEnG,IAAI;IAAE,GAAK,IAAI,CAACmH,YAAY,CAAE,SAAQH,KAAM,EAAC,CAAC,gBAC1F5K,KAAA,CAAAyI,aAAA,CAACnI,IAAI;MAAEoI,KAAK,EAAE,IAAI,CAAC7B,MAAM,CAACmE;IAAW,gBACnChL,KAAA,CAAAyI,aAAA,CAACzH,SAAS;MAACoJ,EAAE,EAAE,IAAI,CAACC,SAAS,CAAE,UAASO,KAAM,EAAC,CAAE;MAAC/D,MAAM,EAAEgE,WAAY;MAACI,IAAI,EAAElJ,KAAK,CAACkJ,IAAI,GAAG,QAAS;MAAEC,aAAa,EAAEtH,IAAI,CAACuH;IAAO,CAAY,CAAC,eAC7InL,KAAA,CAAAyI,aAAA,CAACrI,IAAI,EAAA2I,QAAA,KAAK,IAAI,CAACqC,oBAAoB,CAACR,KAAK,GAAG,EAAE,CAAC;MAAElC,KAAK,EAAE,IAAI,CAAC7B,MAAM,CAACwE;IAAe,IAAEzH,IAAI,CAACmE,UAAU,IAAInE,IAAI,CAACoE,YAAmB,CAC5H,CACE,CAAC;EAEf;EAEAsD,uBAAuBA,CAAA,EAAG;IACxB,IAAI,IAAI,CAAC5H,KAAK,CAACD,SAAS,IAAI,IAAI,CAACC,KAAK,CAACD,SAAS,CAACjB,MAAM,IAAI,IAAI,CAACiD,cAAc,EAAE;MAC5E,MAAM8F,YAAY,GAAGhL,IAAI,CAAC,IAAI,CAACmD,KAAK,CAACD,SAAS,EAAGG,IAAI,IAAKA,IAAI,CAACC,QAAQ,CAAC;MACxE,IAAI,CAACd,WAAW,CAAC;QAAEhB,KAAK,EAAE;UACtBsB,KAAK,EAAEkI,YAAY,GAAIA,YAAY,CAACxD,UAAU,IAAIwD,YAAY,CAACvD,YAAY,GAAI;QACjF;MACF,CAAkB,CAAC;IACvB;EACF;EAEAwD,iBAAiBA,CAAA,EAAG;IAClB,KAAK,CAACA,iBAAiB,CAAC,CAAC;IACzB,IAAI,CAACtG,SAAS,IAAI,IAAI,CAACxB,KAAK,CAACD,SAAS,CAACjB,MAAM,IAAI,IAAI,CAACuB,kBAAkB,CAAC,IAAI,CAACL,KAAK,CAAC3B,KAAK,CAACsB,KAAK,CAAC;IAChG,IAAI,CAACiI,uBAAuB,CAAC,CAAC;EAChC;EAEAG,iBAAiBA,CAAA,EAAS;IACxB,KAAK,CAACA,iBAAiB,CAAC,CAAC;IACzB,IAAI,CAACH,uBAAuB,CAAC,CAAC;EAChC;EAEAI,gBAAgBA,CAACT,IAAY,EAAEU,IAAS,EAAEC,IAAS,EAAE;IACnD,QAAQX,IAAI;MACV,KAAK,SAAS;QACZ,IAAI,CAAC5J,OAAO,CAACsK,IAAI,CAAC,IAAIrK,QAAQ,CAACqK,IAAI,CAAC,IAAI,CAACvK,OAAO,CAACuK,IAAI,CAAC,EAAE;UACtDA,IAAI,GAAG,CAACA,IAAI,CAAC;UACb,IAAI,CAAC5I,WAAW,CAAC;YACfhB,KAAK,EAAE;cACL8J,OAAO,EAAEF;YACX;UACF,CAAkB,CAAC;QACrB;QACA;IACJ;IACA,KAAK,CAACD,gBAAgB,CAACT,IAAI,EAAEU,IAAI,EAAEC,IAAI,CAAC;EAC1C;EAEAE,YAAYA,CAAC/J,KAAoB,EAAE;IACjC,MAAMgD,MAAM,GAAG,IAAI,CAACrB,KAAK,CAACuB,IAAI;IAC9B,oBACEjF,KAAA,CAAAyI,aAAA,CAACnI,IAAI,QACF,IAAI,CAAC+H,eAAe,CAAC,CAAC,EACtB,IAAI,CAAC3E,KAAK,CAACR,QAAQ,gBAClBlD,KAAA,CAAAyI,aAAA,CAAC9H,aAAa,QACVmG,YAA0B,IAAK;MAC/BA,YAAY,CAACiF,SAAS,CAAC,IAAI,CAACpF,mBAAmB,eAC7C3G,KAAA,CAAAyI,aAAA,CAACtI,UAAU;QAACuI,KAAK,EAAE;UAAC/F,KAAK,EAAE,MAAM;UAAEqJ,SAAS,EAAE;QAAG,CAAE;QAACC,qBAAqB,EAAE,IAAI,CAACpF,MAAM,CAACqF;MAAgB,gBACnGlM,KAAA,CAAAyI,aAAA,CAAClH,aAAa;QAACiE,KAAK,EAAE,IAAI,CAAC2G;MAAU,GACpCpH,MAAM,IAAIA,MAAM,CAACpB,GAAG,CAAC,CAACC,IAAS,EAAEgH,KAAU,kBAC1C5K,KAAA,CAAAyI,aAAA,CAACnI,IAAI;QAAC8L,GAAG,EAAExI,IAAI,CAACwI;MAAI,GAEf,CAACrK,KAAK,CAACsK,KAAK,IAAMtK,KAAK,CAACsK,KAAK,IAAIzB,KAAK,GAAC,CAAC,IAAI7I,KAAK,CAACsK,KAAM,GACvD,IAAI,CAAC1B,gBAAgB,CAAC/G,IAAI,EAAEgH,KAAK,CAAC,GAChC,IAAI,EAGRA,KAAK,KAAK7F,MAAM,CAACvC,MAAM,GAAG,CAAC,gBAC3BxC,KAAA,CAAAyI,aAAA,CAAC1H,QAAQ;QAACuL,OAAO,EAAEvK,KAAK,CAACwK,eAAgB;QAAC1F,MAAM,EAAE,IAAI,CAACA,MAAM,CAAC2F;MAAiB,CAAW,CAAC,GAAG,IAE5F,CACP,CACc,CACP,CAAC,EACZ,IAAI,CAAC3F,MAAM,EAAEC,YAAY,CAAC,CAAC;MAC9B,OAAO,IAAI;IACb,CACa,CAAC,GAAI,IAClB,CAAC;EAGX;AACF"}
|
|
1
|
+
{"version":3,"names":["React","Keyboard","Platform","ScrollView","Text","TextInput","View","find","isNull","WmSearchProps","DEFAULT_CLASS","ModalConsumer","DataProvider","AccessibilityWidgetType","getAccessibilityProps","BaseDatasetComponent","BaseDatasetState","WmAnchor","WmPicture","Tappable","WmButton","get","isArray","isEmpty","isObject","AssetProvider","WmSearchState","constructor","arguments","_defineProperty","top","left","WmSearch","props","_this","this","Promise","resolve","position","view","measure","x","length","undefined","y","width","height","px","py","updateState","computePosition","then","isOpened","dataProvider","datavalue","query","clearSearch","invokeEventCallback","hide","dataItems","state","map","item","selected","type","updateFilteredData","_filteredData","queryText","filterOptions","entries","filteredData","minchars","_this$dataProvider","searchkey","updateRequired","init","invokeVariable","response","dataSet","setDataItems","filter","result","dataObject","data","isFocused","showPopover","focus","_this$widgetRef","widgetRef","onChange","value","isDefaultQuery","prevQuery","searchon","validate","invokeEvent","proxy","invokeChange","e","OS","cursor","target","selectionStart","onFocus","disabled","_this$state$props$que","onBlur","setTimeout","triggerValidation","prepareModalOptions","content","styles","modalService","o","modalOptions","modalContentSTyles","searchInputWidth","modalContent","borderWidth","modalStyle","modal","contentStyle","isModal","onClose","dismiss","setState","hideModal","searchIconPress","onItemSelect","displayexp","displayfield","datafield","updateDatavalue","prevDatavalue","queryModel","renderSearchBar","_this$state$dataItems","opts","valueExpr","createElement","style","root","ref","onLayout","searchInputWrapper","_extends","text","isValid","invalid","focusedText","selectionEnd","getTestPropsForInput","SEARCH","placeholderTextColor","placeholderText","color","placeholder","autoFocus","autofocus","editable","readonly","onChangeText","bind","nativeEvent","layout","showclear","onTap","id","getTestId","clearButton","iconclass","showSearchIcon","searchButton","reset","renderSearchItem","index","imageStyles","imagewidth","getTestProps","searchItem","template","renderitempartial","Fragment","name","picturesource","imgSrc","getTestPropsForLabel","searchItemText","updateDefaultQueryModel","selectedItem","onDataItemsUpdate","componentDidMount","onPropertyChange","$new","$old","dataset","setTemplate","partialName","renderWidget","showModal","maxHeight","contentContainerStyle","dropDownContent","loadAsset","key","limit","caption","datacompletemsg","dataCompleteItem"],"sources":["search.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Keyboard, Platform, ScrollView, Text, TextInput, View } from 'react-native';\nimport { find, isNull } from 'lodash';\n\nimport WmSearchProps from './search.props';\nimport { DEFAULT_CLASS, WmSearchStyles } from './search.styles';\nimport { ModalConsumer, ModalOptions, ModalService} from \"@wavemaker/app-rn-runtime/core/modal.service\";\nimport { DataProvider } from '@wavemaker/app-rn-runtime/components/basic/search/local-data-provider';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \n\nimport {\n BaseDatasetComponent,\n BaseDatasetState\n} from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.component';\nimport WmAnchor from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.component';\nimport WmPicture from '@wavemaker/app-rn-runtime/components/basic/picture/picture.component';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\nimport { get, isArray, isEmpty, isObject } from \"lodash-es\";\nimport { AssetProvider } from '@wavemaker/app-rn-runtime/core/asset.provider';\n\nexport class WmSearchState extends BaseDatasetState<WmSearchProps> {\n isOpened: boolean = false;\n modalOptions = {} as ModalOptions;\n template: string = \"\";\n position = {\n top: 0,\n left: 0\n } as DropdownPosition;\n data: any = [];\n}\n\nexport interface DropdownPosition {\n top?: number;\n bottom?: number;\n left?: number;\n right?: number;\n}\n\nexport default class WmSearch extends BaseDatasetComponent<WmSearchProps, WmSearchState, WmSearchStyles> {\n view: View = null as any;\n private prevDatavalue: any;\n private queryModel: any;\n private searchInputWidth: any;\n private isDefaultQuery: boolean = true;\n private dataProvider: DataProvider;\n public widgetRef: TextInput | null = null;\n private cursor: any = 0;\n private isFocused: boolean = false;\n private updateRequired: any;\n\n constructor(props: WmSearchProps) {\n super(props, DEFAULT_CLASS, new WmSearchProps(), new WmSearchState());\n this.dataProvider = new DataProvider();\n if (this.props.datavalue) {\n this.updateState({\n props: {\n query: this.props.datavalue\n }\n } as WmSearchState);\n }\n }\n\n computePosition = () => {\n return new Promise<void>((resolve) => {\n const position = {} as DropdownPosition;\n this.view.measure((x = 0, y = 0, width = 0, height = 0, px = 0, py = 0) => {\n position.left = px;\n position.top = py + height;\n this.updateState({ position: position } as WmSearchState, resolve);\n });\n });\n }\n\n clearSearch() {\n this.invokeEventCallback('onClear', [null, this]);\n this.hide();\n this.updateState({\n props: {\n query: ''\n },\n dataItems: this.state.dataItems ? this.state.dataItems.map((item: any) => {\n item.selected = false;\n return item;\n }) : []\n } as WmSearchState, () => {\n if (this.state.props.type === 'autocomplete') {\n this.updateFilteredData('');\n }\n });\n }\n\n updateFilteredData(queryText: string = '') {\n const props = this.state.props;\n const filterOptions = {\n query: queryText,\n props: props,\n entries: this.state.dataItems\n };\n let filteredData: Array<any> = [];\n if (props.minchars && queryText.length < props.minchars) {\n filteredData = [];\n } else if (props.type === 'search' && !queryText) {\n filteredData = [];\n } else {\n if (this.props.searchkey && this.updateRequired === undefined) {\n this.updateRequired = this.dataProvider.init(this);\n }\n // for service variables invoke the variable with params.\n if (this.props.searchkey && this.updateRequired && this.state.props.query !== queryText) {\n this.dataProvider.invokeVariable(this, queryText).then((response: any) => {\n if (response) {\n response = response.dataSet;\n if (isEmpty(response)) {\n filteredData = [];\n } else {\n if (isObject(response) && !isArray(response)) {\n response = [response];\n }\n this.setDataItems(response);\n }\n }\n }, () => {});\n return;\n }\n filteredData = this.dataProvider?.filter(filterOptions);\n }\n this.updateState({\n props: { result: filteredData?.map( (item: any) => item.dataObject), query: queryText },\n data: filteredData,\n } as WmSearchState);\n if (!this.state.isOpened && this.isFocused) {\n this.showPopover && this.showPopover();\n }\n }\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n onChange(value: any) {\n this.isDefaultQuery = false;\n const prevQuery = this.state.props.query;\n if (this.state.props.searchon === 'onsearchiconclick') {\n this.updateState({\n props: {result: [], query: value},\n data: []\n } as WmSearchState);\n } else {\n this.updateFilteredData(value);\n }\n if (value === '') {\n this.validate(value);\n this.updateState({\n props: {\n datavalue: '',\n },\n } as WmSearchState);\n if (value === prevQuery) {\n return;\n }\n }\n if (this.props.invokeEvent) {\n this.props.invokeEvent('onChange', [undefined, this.proxy, value, prevQuery]);\n }\n this.invokeEventCallback('onChange', [ undefined, this.proxy, value, prevQuery ]);\n }\n\n invokeChange(e: any) {\n if (Platform.OS === 'web') {\n this.cursor = e.target.selectionStart;\n this.updateState({ props: { query: e.target.value } } as WmSearchState);\n }\n }\n\n onFocus() {\n this.isFocused = true;\n if (!this.state.props.disabled && this.state.props.type === 'autocomplete') {\n this.cursor = this.state.props.query?.length || 0;\n this.updateFilteredData(this.state.props.query || '');\n }\n this.invokeEventCallback('onFocus', [null, this]);\n }\n\n onBlur() {\n this.isFocused = false;\n this.validate(this.state.props.datavalue);\n if (!this.state.props.datavalue) {\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n })\n }\n this.invokeEventCallback('onBlur', [null, this]);\n }\n\n public showPopover = () => {\n this.computePosition().then(() => {\n this.updateState({ isOpened: true } as WmSearchState);\n });\n };\n\n public hide = () => {};\n\n prepareModalOptions(content: React.ReactNode, styles: WmSearchStyles, modalService: ModalService) {\n const o = this.state.modalOptions;\n const modalContentSTyles = {\n width: this.searchInputWidth - 2 * (styles.modalContent.borderWidth || 0),\n left: (this.state.position.left || 0) + 2 * (styles.modalContent.borderWidth || 0) };\n o.modalStyle = {...styles.modal};\n o.contentStyle = {...styles.modalContent, ...this.state.position, ...modalContentSTyles};\n o.content = content;\n o.isModal = true;\n o.onClose = () => {\n this.hide = () => {};\n Keyboard.dismiss();\n if (this.state.isOpened) {\n this.setState({isOpened: false, modalOptions: {} as ModalOptions} as WmSearchState);\n }\n };\n this.hide = () => {\n modalService.hideModal(this.state.modalOptions);\n if (this.state.isOpened) {\n this.setState({ isOpened: false, modalOptions: {} as ModalOptions } as WmSearchState);\n }\n }\n return o;\n }\n\n searchIconPress() {\n this.isFocused = false;\n if (this.state.props.searchon === 'onsearchiconclick') {\n this.updateFilteredData(this.state.props.query);\n } else {\n this.onItemSelect(this.state.data[0]);\n }\n }\n\n onItemSelect(item: any) {\n this.isFocused = false;\n this.updateState({ props: {\n query: item.displayexp || item.displayfield\n }\n } as WmSearchState);\n this.validate(item.datafield);\n this.updateDatavalue(item.datafield);\n this.prevDatavalue = item.datafield;\n this.queryModel = item;\n if (get(this.props, 'formfield')) {\n // @ts-ignore\n this.props.invokeEvent('onSelect', [null, this, item.datafield]);\n // @ts-ignore\n this.props.invokeEvent('onSubmit', [null, this]);\n } else {\n this.invokeEventCallback('onSelect', [null, this, item.datafield]);\n this.invokeEventCallback('onSubmit', [null, this]);\n }\n this.hide();\n }\n\n renderSearchBar() {\n const props = this.state.props;\n let opts: any = {};\n const valueExpr = Platform.OS === 'web' ? 'value' : 'defaultValue';\n opts[valueExpr] = this.state.props.query || '';\n return(\n /*\n * onLayout function is required.\n * https://github.com/naoufal/react-native-accordion/pull/19/files\n */\n <View style={this.styles.root} ref={ref => {this.view = ref as View}} onLayout={() => {}}>\n <View style={this.styles.searchInputWrapper}>\n <TextInput style={[this.styles.text, this.state.isValid ? {} : this.styles.invalid, this.state.isOpened && this.state.dataItems?.length > 0? this.styles.focusedText : null]}\n ref={ref => {this.widgetRef = ref;\n // @ts-ignore\n if (ref && !isNull(ref.selectionStart) && !isNull(ref.selectionEnd)) {\n // @ts-ignore\n ref.selectionStart = ref.selectionEnd = this.cursor;\n }}}\n {...this.getTestPropsForInput()}\n {...getAccessibilityProps(AccessibilityWidgetType.SEARCH, props)}\n placeholderTextColor={this.styles.placeholderText.color as any}\n placeholder={props.placeholder || 'Search'}\n autoFocus={props.autofocus}\n editable={props.disabled || props.readonly ? false : true}\n onChangeText={this.onChange.bind(this)}\n onChange={this.invokeChange.bind(this)}\n onFocus={this.onFocus.bind(this)}\n onLayout={e => {this.searchInputWidth = e.nativeEvent.layout.width}}\n onBlur={this.onBlur.bind(this)}\n {...opts}>\n </TextInput>\n {props.showclear && this.state.props.query ? <WmButton onTap={this.clearSearch.bind(this)}\n id={this.getTestId('clear')}\n styles={this.styles.clearButton} iconclass={'wi wi-clear'}></WmButton> : null}\n </View>\n {props.showSearchIcon && props.type === 'search' ? <WmButton styles={this.styles.searchButton}\n id={this.getTestId('search')}\n iconclass={'wm-sl-l sl-search'} onTap={this.searchIconPress.bind(this)}></WmButton> : null}\n </View>\n );\n }\n\n reset() {\n if (this.state.props.query) {\n this.updateState({\n props: {\n query: ''\n }\n } as WmSearchState);\n }\n }\n\n renderSearchItem(item: any, index: number) {\n const props = this.state.props;\n const imageStyles = { root: {height:props.imagewidth, width:props.imagewidth}}\n return (\n <Tappable onTap={this.onItemSelect.bind(this, item)} {...this.getTestProps(`action${index}`)}>\n <View style={this.styles.searchItem}>\n {!isEmpty(this.state.template) && this.props.renderitempartial ?\n this.props.renderitempartial(item.dataObject, index, this.state.template) : (<>\n <WmPicture id={this.getTestId(`picture${index}`)} styles={imageStyles} name={props.name + '_image'} picturesource={item.imgSrc}></WmPicture>\n <Text {...this.getTestPropsForLabel(index + '')} style={this.styles.searchItemText}>{item.displayexp || item.displayfield}</Text>\n </>)}\n </View>\n </Tappable>\n );\n }\n\n updateDefaultQueryModel() {\n if (this.state.dataItems && this.state.dataItems.length && this.isDefaultQuery) {\n const selectedItem = find(this.state.dataItems, (item) => item.selected);\n this.updateState({ props: {\n query: selectedItem ? (selectedItem.displayexp || selectedItem.displayfield) : ''\n }\n } as WmSearchState);\n }\n }\n\n onDataItemsUpdate() {\n super.onDataItemsUpdate();\n this.isFocused && this.state.dataItems.length && this.updateFilteredData(this.state.props.query);\n this.updateDefaultQueryModel();\n }\n\n componentDidMount(): void {\n super.componentDidMount();\n this.updateDefaultQueryModel();\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'dataset':\n if (!isEmpty($new) && isObject($new) && !isArray($new)) {\n $new = [$new];\n this.updateState({\n props: {\n dataset: $new\n }\n } as WmSearchState);\n }\n break;\n }\n super.onPropertyChange(name, $new, $old);\n }\n\n setTemplate(partialName: any) {\n this.updateState({ template: partialName} as WmSearchState);\n }\n\n renderWidget(props: WmSearchProps) {\n const result = this.state.data;\n return (\n <View>\n {this.renderSearchBar()}\n {this.state.isOpened ? (\n <ModalConsumer>\n {(modalService: ModalService) => {\n modalService.showModal(this.prepareModalOptions((\n <ScrollView style={{width: '100%', maxHeight: 200}} contentContainerStyle={this.styles.dropDownContent}>\n <AssetProvider value={this.loadAsset}>\n {result && result.map((item: any, index: any) => (\n <View key={item.key}>\n {\n (!props.limit) || (props.limit && index+1 <= props.limit) ?\n this.renderSearchItem(item, index)\n : null\n }\n {\n index === result.length - 1 ?\n <WmAnchor caption={props.datacompletemsg} styles={this.styles.dataCompleteItem}></WmAnchor> : null\n }\n </View>\n ))}\n </AssetProvider>\n </ScrollView>\n ), this.styles, modalService));\n return null;\n }}\n </ModalConsumer>) : null}\n </View>\n\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -24,6 +24,10 @@ export default class WmSearchProps extends BaseDatasetProps {
|
|
|
24
24
|
// internal property
|
|
25
25
|
_defineProperty(this, "invokeEvent", void 0);
|
|
26
26
|
_defineProperty(this, "formFieldInstance", void 0);
|
|
27
|
+
_defineProperty(this, "accessibilitylabel", undefined);
|
|
28
|
+
_defineProperty(this, "hint", undefined);
|
|
29
|
+
_defineProperty(this, "accessibilityrole", 'search');
|
|
30
|
+
_defineProperty(this, "renderitempartial", void 0);
|
|
27
31
|
}
|
|
28
32
|
}
|
|
29
33
|
//# sourceMappingURL=search.props.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BaseDatasetProps","WmSearchProps","constructor","arguments","_defineProperty"],"sources":["search.props.ts"],"sourcesContent":["import BaseDatasetProps from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.props';\nimport {BaseComponent} from \"@wavemaker/app-rn-runtime/core/base.component\";\n\nexport default class WmSearchProps extends BaseDatasetProps {\n autofocus: boolean = false;\n query?: string = '';\n searchkey?: any;\n type: 'search' | 'autocomplete' = 'search';\n datacompletemsg?: string = 'No more data to load';\n placeholder?: string = 'Search';\n limit?: number = null as any;\n minchars?: number = null as any;\n imagewidth?: any = 32;\n imageheight?: any = 32;\n searchon?: string = 'typing';\n onSubmit?: any;\n onChange?: Function = null as any;\n result?: any;\n showclear: boolean = false;\n showSearchIcon: boolean = true; // internal property\n invokeEvent?: Function;\n formFieldInstance?: BaseComponent<any, any, any>;\n}\n"],"mappings":";;;AAAA,OAAOA,gBAAgB,MAAM,0EAA0E;
|
|
1
|
+
{"version":3,"names":["BaseDatasetProps","WmSearchProps","constructor","arguments","_defineProperty","undefined"],"sources":["search.props.ts"],"sourcesContent":["import BaseDatasetProps from '@wavemaker/app-rn-runtime/components/input/basedataset/basedataset.props';\nimport {BaseComponent} from \"@wavemaker/app-rn-runtime/core/base.component\";\nimport { AccessibilityRole } from 'react-native';\n\nexport default class WmSearchProps extends BaseDatasetProps {\n autofocus: boolean = false;\n query?: string = '';\n searchkey?: any;\n type: 'search' | 'autocomplete' = 'search';\n datacompletemsg?: string = 'No more data to load';\n placeholder?: string = 'Search';\n limit?: number = null as any;\n minchars?: number = null as any;\n imagewidth?: any = 32;\n imageheight?: any = 32;\n searchon?: string = 'typing';\n onSubmit?: any;\n onChange?: Function = null as any;\n result?: any;\n showclear: boolean = false;\n showSearchIcon: boolean = true; // internal property\n invokeEvent?: Function;\n formFieldInstance?: BaseComponent<any, any, any>;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole = 'search';\n renderitempartial?: (item: any, index: number, partialName: string)=> React.ReactNode;\n}\n"],"mappings":";;;AAAA,OAAOA,gBAAgB,MAAM,0EAA0E;AAIvG,eAAe,MAAMC,aAAa,SAASD,gBAAgB,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,oBACrC,KAAK;IAAAA,eAAA,gBACT,EAAE;IAAAA,eAAA;IAAAA,eAAA,eAEe,QAAQ;IAAAA,eAAA,0BACf,sBAAsB;IAAAA,eAAA,sBAC1B,QAAQ;IAAAA,eAAA,gBACd,IAAI;IAAAA,eAAA,mBACD,IAAI;IAAAA,eAAA,qBACL,EAAE;IAAAA,eAAA,sBACD,EAAE;IAAAA,eAAA,mBACF,QAAQ;IAAAA,eAAA;IAAAA,eAAA,mBAEN,IAAI;IAAAA,eAAA;IAAAA,eAAA,oBAEL,KAAK;IAAAA,eAAA,yBACA,IAAI;IAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,6BAGFC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA,4BACe,QAAQ;IAAAA,eAAA;EAAA;AAElD"}
|
|
@@ -5,7 +5,8 @@ export const DEFAULT_CLASS = 'app-search';
|
|
|
5
5
|
BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
6
6
|
const defaultStyles = defineStyles({
|
|
7
7
|
root: {
|
|
8
|
-
flexDirection: 'row'
|
|
8
|
+
flexDirection: 'row',
|
|
9
|
+
borderRadius: 28
|
|
9
10
|
},
|
|
10
11
|
text: {
|
|
11
12
|
minHeight: 56,
|
|
@@ -19,7 +20,7 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
|
19
20
|
borderTopLeftRadius: 28,
|
|
20
21
|
borderBottomLeftRadius: 28,
|
|
21
22
|
borderColor: themeVariables.searchBorderColor,
|
|
22
|
-
backgroundColor: themeVariables.
|
|
23
|
+
backgroundColor: themeVariables.searchBgContainerColor
|
|
23
24
|
},
|
|
24
25
|
invalid: {
|
|
25
26
|
borderBottomColor: themeVariables.inputInvalidBorderColor
|
|
@@ -32,10 +33,9 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
|
32
33
|
height: '100%'
|
|
33
34
|
},
|
|
34
35
|
modalContent: {
|
|
35
|
-
backgroundColor: themeVariables.
|
|
36
|
+
backgroundColor: themeVariables.searchBgContainerColor,
|
|
36
37
|
borderRadius: 6,
|
|
37
38
|
position: 'absolute',
|
|
38
|
-
borderWidth: 1,
|
|
39
39
|
borderStyle: 'solid',
|
|
40
40
|
borderColor: themeVariables.searchBorderColor,
|
|
41
41
|
width: '90%'
|
|
@@ -68,7 +68,8 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
|
|
|
68
68
|
borderTopRightRadius: 28,
|
|
69
69
|
borderBottomRightRadius: 28,
|
|
70
70
|
backgroundColor: themeVariables.searchButtonColor,
|
|
71
|
-
height: 56
|
|
71
|
+
height: 56,
|
|
72
|
+
rippleColor: themeVariables.rippleColor
|
|
72
73
|
},
|
|
73
74
|
icon: {
|
|
74
75
|
icon: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","flexDirection","text","minHeight","paddingTop","paddingBottom","paddingLeft","paddingRight","width","borderWidth","borderRightWidth","borderTopLeftRadius","borderBottomLeftRadius","borderColor","searchBorderColor","backgroundColor","searchDropdownBackgroundColor","invalid","borderBottomColor","inputInvalidBorderColor","focusedText","modal","transparent","height","modalContent","borderRadius","position","borderStyle","dropDownContent","searchInputWrapper","alignItems","justifyContent","flex","clearButton","marginLeft","padding","alignSelf","searchButton","borderTopRightRadius","borderBottomRightRadius","searchButtonColor","icon","fontSize","color","searchButtonTextColor","marginRight","searchItem","marginBottom","paddingHorizontal","paddingVertical","searchItemBorderColor","searchItemTextColor","searchItemText","fontFamily","baseFont","dataCompleteItem","searchDataCompleteItemBgColor","textDecorationLine","placeholderText","inputPlaceholderColor","inputDisabledBgColor","OS","textAlign","borderLeftWidth","left"],"sources":["search.styles.ts"],"sourcesContent":["import { Platform, TextStyle } from 'react-native';\nimport BASE_THEME, { AllStyle } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { WmButtonStyles } from '@wavemaker/app-rn-runtime/components/basic/button/button.styles';\n\nexport type WmSearchStyles = BaseStyles & {\n focusedText: TextStyle,\n modal: AllStyle;\n modalContent: AllStyle;\n searchItem: AllStyle;\n dropDownContent: AllStyle;\n searchItemText: AllStyle;\n clearButton: WmButtonStyles;\n searchButton: WmButtonStyles;\n searchInputWrapper: AllStyle;\n placeholderText: AllStyle;\n invalid: AllStyle;\n};\n\nexport const DEFAULT_CLASS = 'app-search';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmSearchStyles = defineStyles({\n root: {\n flexDirection: 'row'\n },\n text: {\n minHeight: 56,\n paddingTop: 8,\n paddingBottom: 8,\n paddingLeft: 24,\n paddingRight: 14,\n width: '100%',\n borderWidth: 1,\n borderRightWidth: 0,\n borderTopLeftRadius: 28,\n borderBottomLeftRadius: 28,\n borderColor: themeVariables.searchBorderColor,\n backgroundColor: themeVariables.searchDropdownBackgroundColor,\n },\n invalid: {\n borderBottomColor: themeVariables.inputInvalidBorderColor\n },\n focusedText : {\n borderBottomLeftRadius: 28,\n },\n modal: {\n backgroundColor: themeVariables.transparent,\n height: '100%'\n },\n modalContent: {\n backgroundColor: themeVariables.searchDropdownBackgroundColor,\n borderRadius: 6,\n position: 'absolute',\n borderWidth: 1,\n borderStyle: 'solid',\n borderColor: themeVariables.searchBorderColor,\n width: '90%'\n },\n dropDownContent: {\n width: '100%'\n },\n searchInputWrapper: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n flex: 1\n },\n clearButton: {\n root: {\n marginLeft: -40,\n padding: 0,\n width: 36,\n alignItems: 'center',\n alignSelf: 'center',\n justifyContent: 'center',\n backgroundColor: 'transparent'\n }\n } as WmButtonStyles,\n searchButton: {\n root: {\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: 0,\n borderTopRightRadius: 28,\n borderBottomRightRadius: 28,\n backgroundColor: themeVariables.searchButtonColor,\n height: 56\n },\n icon: {\n icon: {\n fontSize: 24,\n color: themeVariables.searchButtonTextColor,\n marginRight: 4\n }\n }\n } as WmButtonStyles,\n searchItem: {\n width: '100%',\n marginBottom: 4,\n paddingHorizontal: 16,\n paddingVertical: 8,\n borderBottomColor: themeVariables.searchItemBorderColor,\n flexDirection: 'row',\n alignItems: 'center',\n color: themeVariables.searchItemTextColor\n },\n searchItemText: {\n fontSize: 16,\n paddingLeft: 8,\n fontFamily: themeVariables.baseFont\n },\n dataCompleteItem: {\n root: {\n backgroundColor: themeVariables.searchDataCompleteItemBgColor,\n justifyContent: 'center',\n padding: 8\n },\n text: {\n fontSize: 12,\n textDecorationLine: 'none',\n color: themeVariables.searchItemTextColor\n }\n },\n placeholderText: {\n color: themeVariables.inputPlaceholderColor\n }\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n addStyle(DEFAULT_CLASS + '-disabled', '', {\n text : {\n backgroundColor: themeVariables.inputDisabledBgColor\n }\n });\n\n addStyle(DEFAULT_CLASS + '-rtl', '', Platform.OS=='android'?{\n text : {\n textAlign: 'right',\n borderWidth: 1,\n borderLeftWidth: 0,\n borderRightWidth: 1,\n borderTopRightRadius: 6,\n borderBottomRightRadius: 6,\n },\n searchButton: {\n root: {\n borderTopRightRadius: 4,\n borderBottomRightRadius: 4,\n },\n }\n }:Platform.OS=='web'?{\n text : {\n textAlign: 'right',\n borderWidth: 1,\n borderRightWidth: 1,\n borderLeftWidth: 0,\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderTopRightRadius: 6,\n borderBottomRightRadius: 6,\n },\n searchButton: {\n root: {\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n borderTopLeftRadius: 4,\n borderBottomLeftRadius: 4,\n },\n },\n clearButton: {\n root: {\n left: 0,\n position: 'absolute',\n marginLeft: 0\n }\n } as WmButtonStyles,\n }:{\n text : {\n textAlign: 'right',\n }\n });\n\n addStyle('app-autocomplete', '', {\n text: {\n borderRightWidth: 1,\n borderTopRightRadius: 4,\n borderBottomRightRadius: 4,\n }\n } as WmSearchStyles);\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["Platform","BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","flexDirection","borderRadius","text","minHeight","paddingTop","paddingBottom","paddingLeft","paddingRight","width","borderWidth","borderRightWidth","borderTopLeftRadius","borderBottomLeftRadius","borderColor","searchBorderColor","backgroundColor","searchBgContainerColor","invalid","borderBottomColor","inputInvalidBorderColor","focusedText","modal","transparent","height","modalContent","position","borderStyle","dropDownContent","searchInputWrapper","alignItems","justifyContent","flex","clearButton","marginLeft","padding","alignSelf","searchButton","borderTopRightRadius","borderBottomRightRadius","searchButtonColor","rippleColor","icon","fontSize","color","searchButtonTextColor","marginRight","searchItem","marginBottom","paddingHorizontal","paddingVertical","searchItemBorderColor","searchItemTextColor","searchItemText","fontFamily","baseFont","dataCompleteItem","searchDataCompleteItemBgColor","textDecorationLine","placeholderText","inputPlaceholderColor","inputDisabledBgColor","OS","textAlign","borderLeftWidth","left"],"sources":["search.styles.ts"],"sourcesContent":["import { Platform, TextStyle } from 'react-native';\nimport BASE_THEME, { AllStyle } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { WmButtonStyles } from '@wavemaker/app-rn-runtime/components/basic/button/button.styles';\n\nexport type WmSearchStyles = BaseStyles & {\n focusedText: TextStyle,\n modal: AllStyle;\n modalContent: AllStyle;\n searchItem: AllStyle;\n dropDownContent: AllStyle;\n searchItemText: AllStyle;\n clearButton: WmButtonStyles;\n searchButton: WmButtonStyles;\n searchInputWrapper: AllStyle;\n placeholderText: AllStyle;\n invalid: AllStyle;\n};\n\nexport const DEFAULT_CLASS = 'app-search';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmSearchStyles = defineStyles({\n root: {\n flexDirection: 'row',\n borderRadius: 28,\n },\n text: {\n minHeight: 56,\n paddingTop: 8,\n paddingBottom: 8,\n paddingLeft: 24,\n paddingRight: 14,\n width: '100%',\n borderWidth: 1,\n borderRightWidth: 0,\n borderTopLeftRadius: 28,\n borderBottomLeftRadius: 28,\n borderColor: themeVariables.searchBorderColor,\n backgroundColor: themeVariables.searchBgContainerColor,\n },\n invalid: {\n borderBottomColor: themeVariables.inputInvalidBorderColor,\n },\n focusedText : {\n borderBottomLeftRadius: 28,\n },\n modal: {\n backgroundColor: themeVariables.transparent,\n height: '100%'\n },\n modalContent: {\n backgroundColor: themeVariables.searchBgContainerColor,\n borderRadius: 6,\n position: 'absolute',\n borderStyle: 'solid',\n borderColor: themeVariables.searchBorderColor,\n width: '90%'\n },\n dropDownContent: {\n width: '100%'\n },\n searchInputWrapper: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n flex: 1\n },\n clearButton: {\n root: {\n marginLeft: -40,\n padding: 0,\n width: 36,\n alignItems: 'center',\n alignSelf: 'center',\n justifyContent: 'center',\n backgroundColor: 'transparent'\n }\n } as WmButtonStyles,\n searchButton: {\n root: {\n alignItems: 'center',\n justifyContent: 'center',\n borderRadius: 0,\n borderTopRightRadius: 28,\n borderBottomRightRadius: 28,\n backgroundColor: themeVariables.searchButtonColor,\n height: 56,\n rippleColor: themeVariables.rippleColor\n },\n icon: {\n icon: {\n fontSize: 24,\n color: themeVariables.searchButtonTextColor,\n marginRight: 4\n }\n }\n } as WmButtonStyles,\n searchItem: {\n width: '100%',\n marginBottom: 4,\n paddingHorizontal: 16,\n paddingVertical: 8,\n borderBottomColor: themeVariables.searchItemBorderColor,\n flexDirection: 'row',\n alignItems: 'center',\n color: themeVariables.searchItemTextColor\n },\n searchItemText: {\n fontSize: 16,\n paddingLeft: 8,\n fontFamily: themeVariables.baseFont\n },\n dataCompleteItem: {\n root: {\n backgroundColor: themeVariables.searchDataCompleteItemBgColor,\n justifyContent: 'center',\n padding: 8\n },\n text: {\n fontSize: 12,\n textDecorationLine: 'none',\n color: themeVariables.searchItemTextColor\n }\n },\n placeholderText: {\n color: themeVariables.inputPlaceholderColor\n }\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n addStyle(DEFAULT_CLASS + '-disabled', '', {\n text : {\n backgroundColor: themeVariables.inputDisabledBgColor\n }\n });\n\n addStyle(DEFAULT_CLASS + '-rtl', '', Platform.OS=='android'?{\n text : {\n textAlign: 'right',\n borderWidth: 1,\n borderLeftWidth: 0,\n borderRightWidth: 1,\n borderTopRightRadius: 6,\n borderBottomRightRadius: 6,\n },\n searchButton: {\n root: {\n borderTopRightRadius: 4,\n borderBottomRightRadius: 4,\n },\n }\n }:Platform.OS=='web'?{\n text : {\n textAlign: 'right',\n borderWidth: 1,\n borderRightWidth: 1,\n borderLeftWidth: 0,\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n borderTopRightRadius: 6,\n borderBottomRightRadius: 6,\n },\n searchButton: {\n root: {\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n borderTopLeftRadius: 4,\n borderBottomLeftRadius: 4,\n },\n },\n clearButton: {\n root: {\n left: 0,\n position: 'absolute',\n marginLeft: 0\n }\n } as WmButtonStyles,\n }:{\n text : {\n textAlign: 'right',\n }\n });\n\n addStyle('app-autocomplete', '', {\n text: {\n borderRightWidth: 1,\n borderTopRightRadius: 4,\n borderBottomRightRadius: 4,\n }\n } as WmSearchStyles);\n});\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Animated","Easing","StyleSheet","LinearGradient","BaseComponent","BaseComponentState","WmSkeletonProps","DEFAULT_CLASS","isUndefined","WmSkeletonState","constructor","arguments","_defineProperty","left","top","width","height","AnimationRunner","Value","run","counter","timing","animationValue","duration","time","speed","toValue","useNativeDriver","easing","linear","start","event","finished","setValue","stop","Math","max","getValue","WmSkeleton","props","_this$skeletonloaderR","skeletonloaderRef","measure","x","y","px","py","layout","setState","animate","state","componentDidMount","animationRunner","componentWillUnmount","renderWidget","_this$styles$gradient","_this$styles$gradient2","_this$styles$gradient3","outpuRange","deg","translateX","interpolate","inputRange","outputRange","createElement","ref","onLayout","onLayoutChange","style","styles","root","absoluteFill","animatedView","transform","rotate","end","colors","gradientForeground","backgroundColor","toString","gradient","locations","createSkeleton","theme","skeletonStyles","wrapper","addStyleProp","propName","mergeStyle"],"sources":["skeleton.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Animated, Easing, StyleSheet, LayoutChangeEvent, ColorValue, ViewStyle } from 'react-native';\nimport { LinearGradient } from 'expo-linear-gradient';\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { Theme } from '@wavemaker/app-rn-runtime/styles/theme';\n\nimport WmSkeletonProps from './skeleton.props';\nimport { DEFAULT_CLASS, WmSkeletonStyles } from './skeleton.styles';\nimport { isUndefined } from 'lodash-es';\n\nexport class WmSkeletonState extends BaseComponentState<WmSkeletonProps> {\n layout = {\n left: 0,\n top: 0,\n width: 0,\n height: 0,\n };\n animate = false;\n}\n\nclass AnimationRunner {\n private time: number = 1000;\n public speed = 1;\n private counter = 0;\n private animationValue = new Animated.Value(0.2);\n\n public run() {\n if (this.counter == 0) {\n return;\n }\n Animated.timing(this.animationValue, {\n duration: this.time * this.speed,\n toValue: 1,\n useNativeDriver: true,\n easing: Easing.linear,\n }).start((event) => {\n if (event.finished) {\n this.animationValue.setValue(0)\n this.run();\n }\n });\n }\n\n public start() {\n this.counter++;\n if (this.counter == 1) {\n this.run();\n }\n }\n\n public stop() {\n this.counter = Math.max(--this.counter, 0);\n }\n\n public getValue() {\n return this.animationValue;\n }\n}\n\nexport default class WmSkeleton extends BaseComponent<WmSkeletonProps, WmSkeletonState, WmSkeletonStyles> {\n\n private skeletonloaderRef: any = null;\n private animationRunner = new AnimationRunner();\n\n constructor(props: WmSkeletonProps) {\n super(props, DEFAULT_CLASS, new WmSkeletonProps(), new WmSkeletonState());\n this.state = new WmSkeletonState();\n }\n\n componentDidMount(): void {\n this.animationRunner.start();\n }\n\n componentWillUnmount(): void {\n this.animationRunner.stop();\n }\n\n onLayoutChange = (event: LayoutChangeEvent) => {\n this.skeletonloaderRef?.measure((x: number, y: number, width: number, height: number, px: number, py: number) => {\n let layout = {\n left: px,\n top: py,\n width: width,\n height: height,\n };\n this.setState({\n layout: {\n ...layout as any\n }, animate: true\n });\n });\n }\n\n renderWidget(props: WmSkeletonProps) {\n let outpuRange = [-this.state.layout.width-this.state.layout.left, this.state.layout.width + this.state.layout.height];\n let deg = -20;\n let translateX = this.animationRunner.getValue().interpolate({\n inputRange: [0, 1],\n outputRange: [-50, 400]\n });\n return (\n <View ref={(ref) => { this.skeletonloaderRef = ref; }} onLayout={this.onLayoutChange}\n style={this.styles.root} >\n {this.state.animate ?\n <Animated.View\n style={[\n StyleSheet.absoluteFill,\n this.styles.animatedView,\n { \n transform: [\n { translateX },\n { rotate: deg + 'deg' }\n ]\n }]}>\n <LinearGradient\n start={{ x: 0, y: 0 }}\n end={{ x: 1, y: 0 }}\n colors={[this.styles.gradientForeground.backgroundColor?.toString() as string,\n this.styles.gradient.backgroundColor?.toString() as string,\n this.styles.gradientForeground.backgroundColor?.toString() as string]}\n locations={[0, 0.5, 1]}\n style={[this.styles.gradient, {backgroundColor: this.styles.animatedView.backgroundColor}]} />\n </Animated.View> : null}\n </View>);\n }\n}\n\nexport const createSkeleton = (theme: Theme, skeletonStyles: WmSkeletonStyles, wrapper: ViewStyle) => {\n const style = {} as ViewStyle;\n const addStyleProp = (propName: any) => {\n if (!isUndefined((wrapper as any)[propName])) {\n (style as any)[propName] = (wrapper as any)[propName];\n }\n };\n addStyleProp('width');\n addStyleProp('height');\n addStyleProp('borderRadius');\n addStyleProp('borderRadius');\n addStyleProp('marginTop');\n addStyleProp('marginBottom');\n addStyleProp('marginLeft');\n addStyleProp('marginRight');\n return(<WmSkeleton styles={theme.mergeStyle(skeletonStyles, {root: style})}/>);\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","View","Animated","Easing","StyleSheet","LinearGradient","BaseComponent","BaseComponentState","WmSkeletonProps","DEFAULT_CLASS","isUndefined","WmSkeletonState","constructor","arguments","_defineProperty","left","top","width","height","AnimationRunner","Value","run","counter","timing","animationValue","duration","time","speed","toValue","useNativeDriver","easing","linear","start","event","finished","setValue","stop","Math","max","getValue","WmSkeleton","props","_this$skeletonloaderR","skeletonloaderRef","measure","x","y","px","py","layout","setState","animate","componentDidMount","animationRunner","componentWillUnmount","renderWidget","_this$styles$gradient","_this$styles$gradient2","_this$styles$gradient3","outpuRange","state","deg","translateX","interpolate","inputRange","outputRange","createElement","ref","onLayout","onLayoutChange","style","styles","root","absoluteFill","animatedView","transform","rotate","end","colors","gradientForeground","backgroundColor","toString","gradient","locations","createSkeleton","theme","skeletonStyles","wrapper","addStyleProp","propName","mergeStyle"],"sources":["skeleton.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Animated, Easing, StyleSheet, LayoutChangeEvent, ColorValue, ViewStyle } from 'react-native';\nimport { LinearGradient } from 'expo-linear-gradient';\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { Theme } from '@wavemaker/app-rn-runtime/styles/theme';\n\nimport WmSkeletonProps from './skeleton.props';\nimport { DEFAULT_CLASS, WmSkeletonStyles } from './skeleton.styles';\nimport { isUndefined } from 'lodash-es';\n\nexport class WmSkeletonState extends BaseComponentState<WmSkeletonProps> {\n layout = {\n left: 0,\n top: 0,\n width: 0,\n height: 0,\n };\n animate = false;\n}\n\nclass AnimationRunner {\n private time: number = 1000;\n public speed = 1;\n private counter = 0;\n private animationValue = new Animated.Value(0.2);\n\n public run() {\n if (this.counter == 0) {\n return;\n }\n Animated.timing(this.animationValue, {\n duration: this.time * this.speed,\n toValue: 1,\n useNativeDriver: true,\n easing: Easing.linear,\n }).start((event) => {\n if (event.finished) {\n this.animationValue.setValue(0)\n this.run();\n }\n });\n }\n\n public start() {\n this.counter++;\n if (this.counter == 1) {\n this.run();\n }\n }\n\n public stop() {\n this.counter = Math.max(--this.counter, 0);\n }\n\n public getValue() {\n return this.animationValue;\n }\n}\n\nexport default class WmSkeleton extends BaseComponent<WmSkeletonProps, WmSkeletonState, WmSkeletonStyles> {\n\n private skeletonloaderRef: any = null;\n private animationRunner = new AnimationRunner();\n\n constructor(props: WmSkeletonProps) {\n super(props, DEFAULT_CLASS, new WmSkeletonProps(), new WmSkeletonState());\n }\n\n componentDidMount(): void {\n this.animationRunner.start();\n }\n\n componentWillUnmount(): void {\n this.animationRunner.stop();\n }\n\n onLayoutChange = (event: LayoutChangeEvent) => {\n this.skeletonloaderRef?.measure((x: number, y: number, width: number, height: number, px: number, py: number) => {\n let layout = {\n left: px,\n top: py,\n width: width,\n height: height,\n };\n this.setState({\n layout: {\n ...layout as any\n }, animate: true\n });\n });\n }\n\n renderWidget(props: WmSkeletonProps) {\n let outpuRange = [-this.state.layout.width-this.state.layout.left, this.state.layout.width + this.state.layout.height];\n let deg = -20;\n let translateX = this.animationRunner.getValue().interpolate({\n inputRange: [0, 1],\n outputRange: [-50, 400]\n });\n return (\n <View ref={(ref) => { this.skeletonloaderRef = ref; }} onLayout={this.onLayoutChange}\n style={this.styles.root} >\n {this.state.animate ?\n <Animated.View\n style={[\n StyleSheet.absoluteFill,\n this.styles.animatedView,\n { \n transform: [\n { translateX },\n { rotate: deg + 'deg' }\n ]\n }]}>\n <LinearGradient\n start={{ x: 0, y: 0 }}\n end={{ x: 1, y: 0 }}\n colors={[this.styles.gradientForeground.backgroundColor?.toString() as string,\n this.styles.gradient.backgroundColor?.toString() as string,\n this.styles.gradientForeground.backgroundColor?.toString() as string]}\n locations={[0, 0.5, 1]}\n style={[this.styles.gradient, {backgroundColor: this.styles.animatedView.backgroundColor}]} />\n </Animated.View> : null}\n </View>);\n }\n}\n\nexport const createSkeleton = (theme: Theme, skeletonStyles: WmSkeletonStyles, wrapper: ViewStyle) => {\n const style = {} as ViewStyle;\n const addStyleProp = (propName: any) => {\n if (!isUndefined((wrapper as any)[propName])) {\n (style as any)[propName] = (wrapper as any)[propName];\n }\n };\n addStyleProp('width');\n addStyleProp('height');\n addStyleProp('borderRadius');\n addStyleProp('borderRadius');\n addStyleProp('marginTop');\n addStyleProp('marginBottom');\n addStyleProp('marginLeft');\n addStyleProp('marginRight');\n return(<WmSkeleton styles={theme.mergeStyle(skeletonStyles, {root: style})}/>);\n};\n"],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
1
2
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
3
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
3
4
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
@@ -7,6 +8,7 @@ import { ResizeMode, Video } from 'expo-av';
|
|
|
7
8
|
import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';
|
|
8
9
|
import WmVideoProps from './video.props';
|
|
9
10
|
import { DEFAULT_CLASS } from './video.styles';
|
|
11
|
+
import { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';
|
|
10
12
|
import { isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';
|
|
11
13
|
export class WmVideoState extends BaseComponentState {}
|
|
12
14
|
export default class WmVideo extends BaseComponent {
|
|
@@ -35,7 +37,7 @@ export default class WmVideo extends BaseComponent {
|
|
|
35
37
|
renderWidget(props) {
|
|
36
38
|
return /*#__PURE__*/React.createElement(View, {
|
|
37
39
|
style: this.styles.root
|
|
38
|
-
}, this._background, /*#__PURE__*/React.createElement(Video, {
|
|
40
|
+
}, this._background, /*#__PURE__*/React.createElement(Video, _extends({}, getAccessibilityProps(AccessibilityWidgetType.VIDEO, props), {
|
|
39
41
|
ref: video => {
|
|
40
42
|
this.video = video;
|
|
41
43
|
},
|
|
@@ -51,7 +53,7 @@ export default class WmVideo extends BaseComponent {
|
|
|
51
53
|
isLooping: props.loop,
|
|
52
54
|
isMuted: props.muted,
|
|
53
55
|
testID: this.getTestId('video')
|
|
54
|
-
}));
|
|
56
|
+
})));
|
|
55
57
|
}
|
|
56
58
|
}
|
|
57
59
|
//# sourceMappingURL=video.component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","ResizeMode","Video","BaseComponent","BaseComponentState","WmVideoProps","DEFAULT_CLASS","isFullPathUrl","WmVideoState","WmVideo","constructor","props","_defineProperty","getSource","path","resource","loadAsset","uri","componentDidMount","state","autoplay","_this$video","video","playAsync","renderWidget","createElement","style","styles","root","_background","ref","width","height","flex","source","mp4format","webmformat","posterSource","videoposter","useNativeControls","controls","resizeMode","CONTAIN","isLooping","loop","isMuted","muted","testID","getTestId"],"sources":["video.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View } from 'react-native';\nimport { ResizeMode, Video } from 'expo-av';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmVideoProps from './video.props';\nimport { DEFAULT_CLASS, WmVideoStyles } from './video.styles';\nimport { isString } from 'lodash-es';\nimport { isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport class WmVideoState extends BaseComponentState<WmVideoProps> {}\n\nexport default class WmVideo extends BaseComponent<WmVideoProps, WmVideoState, WmVideoStyles> {\n\n private video: Video | null = null as any;\n\n constructor(props: WmVideoProps) {\n super(props, DEFAULT_CLASS, new WmVideoProps(), new WmVideoState());\n }\n\n getSource(path: string) {\n if (!path) {\n return null;\n }\n const resource = this.loadAsset(path);\n if (isFullPathUrl(resource as string)) {\n return {\n uri: resource\n };\n }\n return resource;\n }\n\n componentDidMount(): void {\n if (this.state.props.autoplay) {\n this.video?.playAsync();\n }\n }\n\n renderWidget(props: WmVideoProps) {\n return (\n <View style={this.styles.root}>\n {this._background}\n <Video\n ref={(video) => { this.video = video; }}\n style={{ width: '100%', height: '100%', flex: 1 }}\n source={this.getSource(\n props.mp4format\n || props.webmformat) as any}\n posterSource={ this.getSource(props.videoposter) as any }\n useNativeControls={props.controls}\n resizeMode={ResizeMode.CONTAIN}\n isLooping={props.loop}\n isMuted={props.muted}\n testID={this.getTestId('video')}\n />\n </View>); \n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["React","View","ResizeMode","Video","BaseComponent","BaseComponentState","WmVideoProps","DEFAULT_CLASS","AccessibilityWidgetType","getAccessibilityProps","isFullPathUrl","WmVideoState","WmVideo","constructor","props","_defineProperty","getSource","path","resource","loadAsset","uri","componentDidMount","state","autoplay","_this$video","video","playAsync","renderWidget","createElement","style","styles","root","_background","_extends","VIDEO","ref","width","height","flex","source","mp4format","webmformat","posterSource","videoposter","useNativeControls","controls","resizeMode","CONTAIN","isLooping","loop","isMuted","muted","testID","getTestId"],"sources":["video.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View } from 'react-native';\nimport { ResizeMode, Video } from 'expo-av';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmVideoProps from './video.props';\nimport { DEFAULT_CLASS, WmVideoStyles } from './video.styles';\nimport { isString } from 'lodash-es';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \nimport { isFullPathUrl } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport class WmVideoState extends BaseComponentState<WmVideoProps> {}\n\nexport default class WmVideo extends BaseComponent<WmVideoProps, WmVideoState, WmVideoStyles> {\n\n private video: Video | null = null as any;\n\n constructor(props: WmVideoProps) {\n super(props, DEFAULT_CLASS, new WmVideoProps(), new WmVideoState());\n }\n\n getSource(path: string) {\n if (!path) {\n return null;\n }\n const resource = this.loadAsset(path);\n if (isFullPathUrl(resource as string)) {\n return {\n uri: resource\n };\n }\n return resource;\n }\n\n componentDidMount(): void {\n if (this.state.props.autoplay) {\n this.video?.playAsync();\n }\n }\n\n renderWidget(props: WmVideoProps) {\n return (\n <View style={this.styles.root}>\n {this._background}\n <Video\n {...getAccessibilityProps(AccessibilityWidgetType.VIDEO, props)}\n ref={(video) => { this.video = video; }}\n style={{ width: '100%', height: '100%', flex: 1 }}\n source={this.getSource(\n props.mp4format\n || props.webmformat) as any}\n posterSource={ this.getSource(props.videoposter) as any }\n useNativeControls={props.controls}\n resizeMode={ResizeMode.CONTAIN}\n isLooping={props.loop}\n isMuted={props.muted}\n testID={this.getTestId('video')}\n />\n </View>); \n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAeC,IAAI,QAAQ,cAAc;AACzC,SAASC,UAAU,EAAEC,KAAK,QAAQ,SAAS;AAC3C,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AAEjG,OAAOC,YAAY,MAAM,eAAe;AACxC,SAASC,aAAa,QAAuB,gBAAgB;AAE7D,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,8CAA8C;AAC7G,SAASC,aAAa,QAAQ,sCAAsC;AAEpE,OAAO,MAAMC,YAAY,SAASN,kBAAkB,CAAe;AAEnE,eAAe,MAAMO,OAAO,SAASR,aAAa,CAA4C;EAI5FS,WAAWA,CAACC,KAAmB,EAAE;IAC/B,KAAK,CAACA,KAAK,EAAEP,aAAa,EAAE,IAAID,YAAY,CAAC,CAAC,EAAE,IAAIK,YAAY,CAAC,CAAC,CAAC;IAACI,eAAA,gBAHxC,IAAI;EAIlC;EAEAC,SAASA,CAACC,IAAY,EAAE;IACtB,IAAI,CAACA,IAAI,EAAE;MACT,OAAO,IAAI;IACb;IACA,MAAMC,QAAQ,GAAG,IAAI,CAACC,SAAS,CAACF,IAAI,CAAC;IACrC,IAAIP,aAAa,CAACQ,QAAkB,CAAC,EAAE;MACrC,OAAO;QACLE,GAAG,EAAEF;MACP,CAAC;IACH;IACA,OAAOA,QAAQ;EACjB;EAEAG,iBAAiBA,CAAA,EAAS;IACxB,IAAI,IAAI,CAACC,KAAK,CAACR,KAAK,CAACS,QAAQ,EAAE;MAAA,IAAAC,WAAA;MAC7B,CAAAA,WAAA,OAAI,CAACC,KAAK,cAAAD,WAAA,uBAAVA,WAAA,CAAYE,SAAS,CAAC,CAAC;IACzB;EACF;EAEAC,YAAYA,CAACb,KAAmB,EAAE;IAChC,oBACEd,KAAA,CAAA4B,aAAA,CAAC3B,IAAI;MAAC4B,KAAK,EAAE,IAAI,CAACC,MAAM,CAACC;IAAK,GAC3B,IAAI,CAACC,WAAW,eACjBhC,KAAA,CAAA4B,aAAA,CAACzB,KAAK,EAAA8B,QAAA,KACAxB,qBAAqB,CAACD,uBAAuB,CAAC0B,KAAK,EAAEpB,KAAK,CAAC;MAC/DqB,GAAG,EAAGV,KAAK,IAAK;QAAE,IAAI,CAACA,KAAK,GAAGA,KAAK;MAAE,CAAE;MACxCI,KAAK,EAAE;QAAEO,KAAK,EAAE,MAAM;QAAEC,MAAM,EAAE,MAAM;QAAEC,IAAI,EAAE;MAAE,CAAE;MAClDC,MAAM,EAAE,IAAI,CAACvB,SAAS,CACpBF,KAAK,CAAC0B,SAAS,IACZ1B,KAAK,CAAC2B,UAAU,CAAS;MAC9BC,YAAY,EAAG,IAAI,CAAC1B,SAAS,CAACF,KAAK,CAAC6B,WAAW,CAAU;MACzDC,iBAAiB,EAAE9B,KAAK,CAAC+B,QAAS;MAClCC,UAAU,EAAE5C,UAAU,CAAC6C,OAAQ;MAC/BC,SAAS,EAAElC,KAAK,CAACmC,IAAK;MACtBC,OAAO,EAAEpC,KAAK,CAACqC,KAAM;MACrBC,MAAM,EAAE,IAAI,CAACC,SAAS,CAAC,OAAO;IAAE,EACjC,CACG,CAAC;EACX;AACF"}
|
|
@@ -17,6 +17,9 @@ export default class WmVideoProps extends BaseProps {
|
|
|
17
17
|
_defineProperty(this, "videopreload", 'none');
|
|
18
18
|
_defineProperty(this, "videosupportmessage", 'Your browser does not support the video tag.');
|
|
19
19
|
_defineProperty(this, "webmformat", null);
|
|
20
|
+
_defineProperty(this, "accessibilitylabel", undefined);
|
|
21
|
+
_defineProperty(this, "hint", undefined);
|
|
22
|
+
_defineProperty(this, "accessibilityrole", 'none');
|
|
20
23
|
}
|
|
21
24
|
}
|
|
22
25
|
//# sourceMappingURL=video.props.js.map
|