@app-studio/components 0.10.18 → 0.10.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/fonts/mulish-subset.woff2 +0 -0
- package/dist/illustrations/cross-platform.svg +37 -0
- package/dist/index.d.ts +276 -6
- package/dist/native/components/Accordion/Accordion/Accordion.view.native.js +72 -8
- package/dist/native/components/Accordion/Accordion/Accordion.view.native.js.map +1 -1
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.props.d.ts +36 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.props.js +2 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.props.js.map +1 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.state.d.ts +8 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.state.js +33 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.state.js.map +1 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.style.d.ts +17 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.style.js +39 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.style.js.map +1 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.type.d.ts +37 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.type.js +2 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.type.js.map +1 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.view.d.ts +4 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.view.js +122 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.view.js.map +1 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.view.native.d.ts +4 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.view.native.js +173 -0
- package/dist/native/components/ActionSheet/ActionSheet/ActionSheet.view.native.js.map +1 -0
- package/dist/native/components/ActionSheet/ActionSheet.d.ts +3 -0
- package/dist/native/components/ActionSheet/ActionSheet.js +9 -0
- package/dist/native/components/ActionSheet/ActionSheet.js.map +1 -0
- package/dist/native/components/ActionSheet/index.d.ts +3 -0
- package/dist/native/components/ActionSheet/index.js +4 -0
- package/dist/native/components/ActionSheet/index.js.map +1 -0
- package/dist/native/components/AppRoot/AppRoot.d.ts +17 -0
- package/dist/native/components/AppRoot/AppRoot.js +25 -0
- package/dist/native/components/AppRoot/AppRoot.js.map +1 -0
- package/dist/native/components/AppRoot/AppRoot.native.d.ts +9 -0
- package/dist/native/components/AppRoot/AppRoot.native.js +33 -0
- package/dist/native/components/AppRoot/AppRoot.native.js.map +1 -0
- package/dist/native/components/AppRoot/AppRoot.types.d.ts +22 -0
- package/dist/native/components/AppRoot/AppRoot.types.js +2 -0
- package/dist/native/components/AppRoot/AppRoot.types.js.map +1 -0
- package/dist/native/components/AppRoot/index.d.ts +2 -0
- package/dist/native/components/AppRoot/index.js +2 -0
- package/dist/native/components/AppRoot/index.js.map +1 -0
- package/dist/native/components/AttachmentGroup/AttachmentGroup/AttachmentGroup.js +8 -1
- package/dist/native/components/AttachmentGroup/AttachmentGroup/AttachmentGroup.js.map +1 -1
- package/dist/native/components/AudioInput/AudioInput/AudioInput.state.d.ts +1 -1
- package/dist/native/components/AudioInput/AudioInput/AudioInput.view.js +1 -1
- package/dist/native/components/AudioInput/AudioInput/AudioInput.view.js.map +1 -1
- package/dist/native/components/AudioInput/useAudioRecording.native.d.ts +25 -0
- package/dist/native/components/AudioInput/useAudioRecording.native.js +96 -0
- package/dist/native/components/AudioInput/useAudioRecording.native.js.map +1 -0
- package/dist/native/components/Background/Background/Background.view.native.js +279 -24
- package/dist/native/components/Background/Background/Background.view.native.js.map +1 -1
- package/dist/native/components/Badge/Badge/Badge.view.js +4 -0
- package/dist/native/components/Badge/Badge/Badge.view.js.map +1 -1
- package/dist/native/components/Button/Button/Button.view.js +4 -1
- package/dist/native/components/Button/Button/Button.view.js.map +1 -1
- package/dist/native/components/Button/Button/Button.view.native.js +13 -4
- package/dist/native/components/Button/Button/Button.view.native.js.map +1 -1
- package/dist/native/components/Carousel/Carousel/Carousel.view.native.js +32 -5
- package/dist/native/components/Carousel/Carousel/Carousel.view.native.js.map +1 -1
- package/dist/native/components/Chart/Chart/BarChart.native.d.ts +15 -0
- package/dist/native/components/Chart/Chart/BarChart.native.js +47 -0
- package/dist/native/components/Chart/Chart/BarChart.native.js.map +1 -0
- package/dist/native/components/Chart/Chart/ChartTooltip.js +6 -0
- package/dist/native/components/Chart/Chart/ChartTooltip.js.map +1 -1
- package/dist/native/components/Chart/Chart/LineChart.native.d.ts +15 -0
- package/dist/native/components/Chart/Chart/LineChart.native.js +44 -0
- package/dist/native/components/Chart/Chart/LineChart.native.js.map +1 -0
- package/dist/native/components/Chart/Chart/PieChart.native.d.ts +15 -0
- package/dist/native/components/Chart/Chart/PieChart.native.js +231 -0
- package/dist/native/components/Chart/Chart/PieChart.native.js.map +1 -0
- package/dist/native/components/ChatInput/EditableInput.native.d.ts +48 -0
- package/dist/native/components/ChatInput/EditableInput.native.js +122 -0
- package/dist/native/components/ChatInput/EditableInput.native.js.map +1 -0
- package/dist/native/components/ChatInput/MessageInput.native.d.ts +46 -0
- package/dist/native/components/ChatInput/MessageInput.native.js +55 -0
- package/dist/native/components/ChatInput/MessageInput.native.js.map +1 -0
- package/dist/native/components/ChatWidget/ChatWidget/ChatWidget.view.native.d.ts +14 -0
- package/dist/native/components/ChatWidget/ChatWidget/ChatWidget.view.native.js +89 -0
- package/dist/native/components/ChatWidget/ChatWidget/ChatWidget.view.native.js.map +1 -0
- package/dist/native/components/ChatWidget/Widget/ChatWidgetWidget.native.d.ts +18 -0
- package/dist/native/components/ChatWidget/Widget/ChatWidgetWidget.native.js +91 -0
- package/dist/native/components/ChatWidget/Widget/ChatWidgetWidget.native.js.map +1 -0
- package/dist/native/components/ChatWidget/Widget/useContextSelector.js +3 -0
- package/dist/native/components/ChatWidget/Widget/useContextSelector.js.map +1 -1
- package/dist/native/components/ColorPicker/ColorPicker/ColorPicker.state.js +10 -2
- package/dist/native/components/ColorPicker/ColorPicker/ColorPicker.state.js.map +1 -1
- package/dist/native/components/ColorPicker/ColorPicker/ColorPicker.style.js +5 -0
- package/dist/native/components/ColorPicker/ColorPicker/ColorPicker.style.js.map +1 -1
- package/dist/native/components/ColorPicker/ColorPicker/ColorPicker.view.js +20 -13
- package/dist/native/components/ColorPicker/ColorPicker/ColorPicker.view.js.map +1 -1
- package/dist/native/components/ColorPicker/ColorPicker/ColorPicker.view.native.d.ts +4 -0
- package/dist/native/components/ColorPicker/ColorPicker/ColorPicker.view.native.js +88 -0
- package/dist/native/components/ColorPicker/ColorPicker/ColorPicker.view.native.js.map +1 -0
- package/dist/native/components/Command/Command/Command.state.js +13 -3
- package/dist/native/components/Command/Command/Command.state.js.map +1 -1
- package/dist/native/components/Command/Command/Command.view.js +6 -4
- package/dist/native/components/Command/Command/Command.view.js.map +1 -1
- package/dist/native/components/Command/Command/Command.view.native.d.ts +31 -0
- package/dist/native/components/Command/Command/Command.view.native.js +184 -0
- package/dist/native/components/Command/Command/Command.view.native.js.map +1 -0
- package/dist/native/components/Command/Command/CommandOverlay.d.ts +10 -0
- package/dist/native/components/Command/Command/CommandOverlay.js +13 -0
- package/dist/native/components/Command/Command/CommandOverlay.js.map +1 -0
- package/dist/native/components/Command/Command/CommandOverlay.native.d.ts +12 -0
- package/dist/native/components/Command/Command/CommandOverlay.native.js +12 -0
- package/dist/native/components/Command/Command/CommandOverlay.native.js.map +1 -0
- package/dist/native/components/Command/Command/CommandTextInput.d.ts +8 -0
- package/dist/native/components/Command/Command/CommandTextInput.js +7 -0
- package/dist/native/components/Command/Command/CommandTextInput.js.map +1 -0
- package/dist/native/components/Command/Command/CommandTextInput.native.d.ts +13 -0
- package/dist/native/components/Command/Command/CommandTextInput.native.js +27 -0
- package/dist/native/components/Command/Command/CommandTextInput.native.js.map +1 -0
- package/dist/native/components/ContextMenu/ContextMenu/ContextMenu.props.d.ts +1 -0
- package/dist/native/components/ContextMenu/ContextMenu/ContextMenu.state.js +8 -0
- package/dist/native/components/ContextMenu/ContextMenu/ContextMenu.state.js.map +1 -1
- package/dist/native/components/ContextMenu/ContextMenu/ContextMenu.view.native.d.ts +3 -1
- package/dist/native/components/ContextMenu/ContextMenu/ContextMenu.view.native.js +38 -22
- package/dist/native/components/ContextMenu/ContextMenu/ContextMenu.view.native.js.map +1 -1
- package/dist/native/components/CookieConsent/CookieConsent/CookieConsent.state.js +12 -6
- package/dist/native/components/CookieConsent/CookieConsent/CookieConsent.state.js.map +1 -1
- package/dist/native/components/CookieConsent/CookieConsent/CookieConsent.style.js +8 -8
- package/dist/native/components/CookieConsent/CookieConsent/CookieConsent.style.js.map +1 -1
- package/dist/native/components/CookieConsent/CookieConsent/CookieConsent.view.js +1 -1
- package/dist/native/components/CookieConsent/CookieConsent/CookieConsent.view.js.map +1 -1
- package/dist/native/components/DragAndDrop/DragAndDrop/DragAndDrop.state.js +4 -0
- package/dist/native/components/DragAndDrop/DragAndDrop/DragAndDrop.state.js.map +1 -1
- package/dist/native/components/DragAndDrop/DragAndDrop/DragAndDrop.state.native.d.ts +18 -0
- package/dist/native/components/DragAndDrop/DragAndDrop/DragAndDrop.state.native.js +23 -0
- package/dist/native/components/DragAndDrop/DragAndDrop/DragAndDrop.state.native.js.map +1 -0
- package/dist/native/components/DragAndDrop/DragAndDrop/DragAndDrop.view.native.d.ts +17 -0
- package/dist/native/components/DragAndDrop/DragAndDrop/DragAndDrop.view.native.js +49 -0
- package/dist/native/components/DragAndDrop/DragAndDrop/DragAndDrop.view.native.js.map +1 -0
- package/dist/native/components/Drawer/Drawer/Drawer.view.native.js +54 -14
- package/dist/native/components/Drawer/Drawer/Drawer.view.native.js.map +1 -1
- package/dist/native/components/DropZone/DropZone/DropZone.view.native.d.ts +14 -0
- package/dist/native/components/DropZone/DropZone/DropZone.view.native.js +33 -0
- package/dist/native/components/DropZone/DropZone/DropZone.view.native.js.map +1 -0
- package/dist/native/components/DropdownMenu/DropdownMenu/DropdownMenu.state.js +7 -0
- package/dist/native/components/DropdownMenu/DropdownMenu/DropdownMenu.state.js.map +1 -1
- package/dist/native/components/DropdownMenu/DropdownMenu/DropdownMenu.view.native.js +20 -16
- package/dist/native/components/DropdownMenu/DropdownMenu/DropdownMenu.view.native.js.map +1 -1
- package/dist/native/components/EmojiPicker/EmojiPicker/EmojiPicker.state.js +6 -2
- package/dist/native/components/EmojiPicker/EmojiPicker/EmojiPicker.state.js.map +1 -1
- package/dist/native/components/EmojiPicker/EmojiPicker/EmojiPicker.style.js +9 -0
- package/dist/native/components/EmojiPicker/EmojiPicker/EmojiPicker.style.js.map +1 -1
- package/dist/native/components/EmojiPicker/EmojiPicker/EmojiPicker.view.native.d.ts +4 -0
- package/dist/native/components/EmojiPicker/EmojiPicker/EmojiPicker.view.native.js +108 -0
- package/dist/native/components/EmojiPicker/EmojiPicker/EmojiPicker.view.native.js.map +1 -0
- package/dist/native/components/Form/ColorInput/ColorInput/ColorInput.state.js +11 -4
- package/dist/native/components/Form/ColorInput/ColorInput/ColorInput.state.js.map +1 -1
- package/dist/native/components/Form/ColorInput/ColorInput/ColorInput.view.native.d.ts +4 -0
- package/dist/native/components/Form/ColorInput/ColorInput/ColorInput.view.native.js +92 -0
- package/dist/native/components/Form/ColorInput/ColorInput/ColorInput.view.native.js.map +1 -0
- package/dist/native/components/Form/ComboBox/ComboBox/ComboBox.view.native.d.ts +13 -0
- package/dist/native/components/Form/ComboBox/ComboBox/ComboBox.view.native.js +118 -0
- package/dist/native/components/Form/ComboBox/ComboBox/ComboBox.view.native.js.map +1 -0
- package/dist/native/components/Form/CountryPicker/CountryPicker/CountryPicker.view.native.d.ts +3 -0
- package/dist/native/components/Form/CountryPicker/CountryPicker/CountryPicker.view.native.js +88 -0
- package/dist/native/components/Form/CountryPicker/CountryPicker/CountryPicker.view.native.js.map +1 -0
- package/dist/native/components/Form/Password/Password/Password.state.d.ts +26 -0
- package/dist/native/components/Form/Select/Select/Select.view.native.d.ts +2 -2
- package/dist/native/components/Form/Select/Select/Select.view.native.js +19 -33
- package/dist/native/components/Form/Select/Select/Select.view.native.js.map +1 -1
- package/dist/native/components/Form/Selector/Selector/Selector.view.native.d.ts +12 -0
- package/dist/native/components/Form/Selector/Selector/Selector.view.native.js +44 -0
- package/dist/native/components/Form/Selector/Selector/Selector.view.native.js.map +1 -0
- package/dist/native/components/Form/Switch/Switch/Switch.view.js +2 -2
- package/dist/native/components/Form/Switch/Switch/Switch.view.js.map +1 -1
- package/dist/native/components/Form/TextArea/TextArea/TextArea.props.d.ts +3 -0
- package/dist/native/components/Form/TextArea/TextArea/TextArea.view.js +2 -2
- package/dist/native/components/Form/TextArea/TextArea/TextArea.view.js.map +1 -1
- package/dist/native/components/Form/TextField/TextField/TextField.props.d.ts +3 -0
- package/dist/native/components/Form/TextField/TextField/TextField.view.js +2 -2
- package/dist/native/components/Form/TextField/TextField/TextField.view.js.map +1 -1
- package/dist/native/components/Formik/Formik.Form.d.ts +4 -10
- package/dist/native/components/Formik/Formik.Form.js +6 -3
- package/dist/native/components/Formik/Formik.Form.js.map +1 -1
- package/dist/native/components/Formik/Formik.Hook.d.ts +5 -1
- package/dist/native/components/Formik/Formik.Hook.js +27 -3
- package/dist/native/components/Formik/Formik.Hook.js.map +1 -1
- package/dist/native/components/Formik/Formik.OTPInput.js +63 -7
- package/dist/native/components/Formik/Formik.OTPInput.js.map +1 -1
- package/dist/native/components/Formik/Formik.Password.js +1 -1
- package/dist/native/components/Formik/Formik.Password.js.map +1 -1
- package/dist/native/components/Formik/Formik.TextField.js +1 -1
- package/dist/native/components/Formik/Formik.TextField.js.map +1 -1
- package/dist/native/components/Gradient/Gradient/Gradient.view.native.js +83 -11
- package/dist/native/components/Gradient/Gradient/Gradient.view.native.js.map +1 -1
- package/dist/native/components/HoverCard/HoverCard/HoverCard.view.native.js +39 -5
- package/dist/native/components/HoverCard/HoverCard/HoverCard.view.native.js.map +1 -1
- package/dist/native/components/Icon/Icon.native.js +9 -1
- package/dist/native/components/Icon/Icon.native.js.map +1 -1
- package/dist/native/components/IconPicker/IconPicker/IconPicker.state.js +4 -0
- package/dist/native/components/IconPicker/IconPicker/IconPicker.state.js.map +1 -1
- package/dist/native/components/IconPicker/IconPicker/IconPicker.style.js +5 -0
- package/dist/native/components/IconPicker/IconPicker/IconPicker.style.js.map +1 -1
- package/dist/native/components/IconPicker/IconPicker/IconPicker.view.native.d.ts +4 -0
- package/dist/native/components/IconPicker/IconPicker/IconPicker.view.native.js +73 -0
- package/dist/native/components/IconPicker/IconPicker/IconPicker.view.native.js.map +1 -0
- package/dist/native/components/KeyboardAvoidingView/KeyboardAvoidingView.d.ts +12 -0
- package/dist/native/components/KeyboardAvoidingView/KeyboardAvoidingView.js +17 -0
- package/dist/native/components/KeyboardAvoidingView/KeyboardAvoidingView.js.map +1 -0
- package/dist/native/components/KeyboardAvoidingView/KeyboardAvoidingView.native.d.ts +12 -0
- package/dist/native/components/KeyboardAvoidingView/KeyboardAvoidingView.native.js +24 -0
- package/dist/native/components/KeyboardAvoidingView/KeyboardAvoidingView.native.js.map +1 -0
- package/dist/native/components/KeyboardAvoidingView/KeyboardAvoidingView.types.d.ts +24 -0
- package/dist/native/components/KeyboardAvoidingView/KeyboardAvoidingView.types.js +2 -0
- package/dist/native/components/KeyboardAvoidingView/KeyboardAvoidingView.types.js.map +1 -0
- package/dist/native/components/KeyboardAvoidingView/index.d.ts +2 -0
- package/dist/native/components/KeyboardAvoidingView/index.js +2 -0
- package/dist/native/components/KeyboardAvoidingView/index.js.map +1 -0
- package/dist/native/components/Menubar/Menubar/Menubar.props.d.ts +4 -1
- package/dist/native/components/Menubar/Menubar/Menubar.state.js +6 -0
- package/dist/native/components/Menubar/Menubar/Menubar.state.js.map +1 -1
- package/dist/native/components/Menubar/Menubar/Menubar.view.native.d.ts +4 -1
- package/dist/native/components/Menubar/Menubar/Menubar.view.native.js +29 -23
- package/dist/native/components/Menubar/Menubar/Menubar.view.native.js.map +1 -1
- package/dist/native/components/Message/Message/Message.layout.native.d.ts +3 -0
- package/dist/native/components/Message/Message/Message.layout.native.js +26 -0
- package/dist/native/components/Message/Message/Message.layout.native.js.map +1 -0
- package/dist/native/components/Modal/Modal/Modal.store.js +0 -1
- package/dist/native/components/Modal/Modal/Modal.store.js.map +1 -1
- package/dist/native/components/Modal/Modal.d.ts +2 -0
- package/dist/native/components/Modal/Modal.js +6 -0
- package/dist/native/components/Modal/Modal.js.map +1 -1
- package/dist/native/components/OTPInput/OTPInput/OTPInput.state.d.ts +2 -2
- package/dist/native/components/OTPInput/OTPInput/OTPInput.state.js +92 -14
- package/dist/native/components/OTPInput/OTPInput/OTPInput.state.js.map +1 -1
- package/dist/native/components/OTPInput/OTPInput/OTPInput.view.native.js +64 -11
- package/dist/native/components/OTPInput/OTPInput/OTPInput.view.native.js.map +1 -1
- package/dist/native/components/OTPInput/OTPInput.js +34 -2
- package/dist/native/components/OTPInput/OTPInput.js.map +1 -1
- package/dist/native/components/PageLayout/PageLayout.d.ts +16 -0
- package/dist/native/components/PageLayout/PageLayout.js +49 -0
- package/dist/native/components/PageLayout/PageLayout.js.map +1 -0
- package/dist/native/components/PageLayout/PageLayout.types.d.ts +30 -0
- package/dist/native/components/PageLayout/PageLayout.types.js +2 -0
- package/dist/native/components/PageLayout/PageLayout.types.js.map +1 -0
- package/dist/native/components/PageLayout/index.d.ts +2 -0
- package/dist/native/components/PageLayout/index.js +2 -0
- package/dist/native/components/PageLayout/index.js.map +1 -0
- package/dist/native/components/Pagination/Pagination/Pagination.view.native.js +12 -1
- package/dist/native/components/Pagination/Pagination/Pagination.view.native.js.map +1 -1
- package/dist/native/components/ProgressBar/ProgressBar/ProgressBar.view.native.js +48 -1
- package/dist/native/components/ProgressBar/ProgressBar/ProgressBar.view.native.js.map +1 -1
- package/dist/native/components/Resizable/Resizable/Resizable.state.js +6 -0
- package/dist/native/components/Resizable/Resizable/Resizable.state.js.map +1 -1
- package/dist/native/components/Router/Router.d.ts +11 -0
- package/dist/native/components/Router/Router.js +51 -0
- package/dist/native/components/Router/Router.js.map +1 -0
- package/dist/native/components/Router/Router.match.d.ts +15 -0
- package/dist/native/components/Router/Router.match.js +45 -0
- package/dist/native/components/Router/Router.match.js.map +1 -0
- package/dist/native/components/Router/Router.native.d.ts +11 -0
- package/dist/native/components/Router/Router.native.js +27 -0
- package/dist/native/components/Router/Router.native.js.map +1 -0
- package/dist/native/components/Router/Router.store.d.ts +28 -0
- package/dist/native/components/Router/Router.store.js +38 -0
- package/dist/native/components/Router/Router.store.js.map +1 -0
- package/dist/native/components/Router/Router.types.d.ts +16 -0
- package/dist/native/components/Router/Router.types.js +2 -0
- package/dist/native/components/Router/Router.types.js.map +1 -0
- package/dist/native/components/Router/index.d.ts +5 -0
- package/dist/native/components/Router/index.js +5 -0
- package/dist/native/components/Router/index.js.map +1 -0
- package/dist/native/components/Router/useHistory.d.ts +21 -0
- package/dist/native/components/Router/useHistory.js +34 -0
- package/dist/native/components/Router/useHistory.js.map +1 -0
- package/dist/native/components/ShareButton/ShareButton/ShareButton.state.native.d.ts +15 -0
- package/dist/native/components/ShareButton/ShareButton/ShareButton.state.native.js +55 -0
- package/dist/native/components/ShareButton/ShareButton/ShareButton.state.native.js.map +1 -0
- package/dist/native/components/Slider/Slider/Slider.state.js +14 -2
- package/dist/native/components/Slider/Slider/Slider.state.js.map +1 -1
- package/dist/native/components/Slider/Slider/Slider.view.native.js +6 -2
- package/dist/native/components/Slider/Slider/Slider.view.native.js.map +1 -1
- package/dist/native/components/SplashScreen/SplashScreen.d.ts +14 -0
- package/dist/native/components/SplashScreen/SplashScreen.js +49 -0
- package/dist/native/components/SplashScreen/SplashScreen.js.map +1 -0
- package/dist/native/components/SplashScreen/SplashScreen.store.d.ts +18 -0
- package/dist/native/components/SplashScreen/SplashScreen.store.js +13 -0
- package/dist/native/components/SplashScreen/SplashScreen.store.js.map +1 -0
- package/dist/native/components/SplashScreen/SplashScreen.types.d.ts +23 -0
- package/dist/native/components/SplashScreen/SplashScreen.types.js +2 -0
- package/dist/native/components/SplashScreen/SplashScreen.types.js.map +1 -0
- package/dist/native/components/SplashScreen/index.d.ts +3 -0
- package/dist/native/components/SplashScreen/index.js +3 -0
- package/dist/native/components/SplashScreen/index.js.map +1 -0
- package/dist/native/components/Table/Table/Table.style.js +10 -0
- package/dist/native/components/Table/Table/Table.style.js.map +1 -1
- package/dist/native/components/Table/Table/Table.view.js +27 -20
- package/dist/native/components/Table/Table/Table.view.js.map +1 -1
- package/dist/native/components/Table/Table/TableScroll.d.ts +8 -0
- package/dist/native/components/Table/Table/TableScroll.js +10 -0
- package/dist/native/components/Table/Table/TableScroll.js.map +1 -0
- package/dist/native/components/Table/Table/TableScroll.native.d.ts +9 -0
- package/dist/native/components/Table/Table/TableScroll.native.js +11 -0
- package/dist/native/components/Table/Table/TableScroll.native.js.map +1 -0
- package/dist/native/components/TextArea/TextArea.native.d.ts +21 -0
- package/dist/native/components/TextArea/TextArea.native.js +15 -0
- package/dist/native/components/TextArea/TextArea.native.js.map +1 -0
- package/dist/native/components/Toast/Toast/Toast.view.native.js +6 -1
- package/dist/native/components/Toast/Toast/Toast.view.native.js.map +1 -1
- package/dist/native/components/Toggle/Toggle/Toggle.view.native.js +11 -3
- package/dist/native/components/Toggle/Toggle/Toggle.view.native.js.map +1 -1
- package/dist/native/components/Tooltip/Tooltip/Tooltip.state.js +3 -0
- package/dist/native/components/Tooltip/Tooltip/Tooltip.state.js.map +1 -1
- package/dist/native/components/Tooltip/Tooltip/Tooltip.view.native.js +84 -7
- package/dist/native/components/Tooltip/Tooltip/Tooltip.view.native.js.map +1 -1
- package/dist/native/components/Uploader/Uploader/Uploader.state.d.ts +1 -1
- package/dist/native/components/Uploader/Uploader/Uploader.state.js +18 -5
- package/dist/native/components/Uploader/Uploader/Uploader.state.js.map +1 -1
- package/dist/native/components/index.d.ts +7 -0
- package/dist/native/components/index.js +7 -0
- package/dist/native/components/index.js.map +1 -1
- package/dist/orange.webp +0 -0
- package/dist/web.cjs.js +9 -9
- package/dist/web.cjs.js.map +1 -1
- package/dist/web.esm.js +8266 -7578
- package/dist/web.esm.js.map +1 -1
- package/dist/web.umd.js +9 -9
- package/dist/web.umd.js.map +1 -1
- package/docs/LIGHTHOUSE_100_GUIDE.md +277 -0
- package/docs/app-studio/Design.md +1 -1
- package/docs/app-studio/Theming.md +3 -3
- package/package.json +5 -3
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { View, Horizontal, Vertical, Text } from 'app-studio';
|
|
3
|
+
import { DefaultColorInputStyles, Sizes, Shapes, Variants, DefaultColorPalette, } from './ColorInput.style';
|
|
4
|
+
import { TextField } from '../../TextField/TextField';
|
|
5
|
+
import { ChevronIcon } from '../../../Icon/Icon';
|
|
6
|
+
import { ActionSheet } from '../../../ActionSheet/ActionSheet';
|
|
7
|
+
const ColorInputView = ({ id, name, label, placeholder = 'Select a color', helperText, views = {}, size = 'md', shape = 'default', variant = 'default', shadow, error = false, isDisabled = false, isReadOnly = false, predefinedColors = DefaultColorPalette, showCustomInput = true, showRecentColors = true, isOpen = false, selectedColor = '', recentColors = [], customColor = '', handleToggle = () => { }, handleColorSelect = () => { }, handleCustomColorChange = () => { }, handleCustomColorSubmit = () => { }, handleClose, triggerRef, dropdownRef, closeOnSelect, value, defaultValue, ...props }) => {
|
|
8
|
+
const containerStyles = {
|
|
9
|
+
...DefaultColorInputStyles.container,
|
|
10
|
+
...views?.container,
|
|
11
|
+
};
|
|
12
|
+
const triggerStyles = {
|
|
13
|
+
...DefaultColorInputStyles.trigger,
|
|
14
|
+
...Sizes[size],
|
|
15
|
+
...Shapes[shape],
|
|
16
|
+
...Variants[variant],
|
|
17
|
+
...(error && { borderColor: 'color-red-500' }),
|
|
18
|
+
...(isDisabled && { opacity: 0.6 }),
|
|
19
|
+
...views?.trigger,
|
|
20
|
+
...(shadow && shadow),
|
|
21
|
+
};
|
|
22
|
+
const colorGridStyles = {
|
|
23
|
+
...DefaultColorInputStyles.colorGrid,
|
|
24
|
+
...views?.colorGrid,
|
|
25
|
+
};
|
|
26
|
+
const recentColorsStyles = {
|
|
27
|
+
...DefaultColorInputStyles.recentColors,
|
|
28
|
+
...views?.recentColors,
|
|
29
|
+
};
|
|
30
|
+
const displayColor = selectedColor || 'color-gray-200';
|
|
31
|
+
const sheetSize = size === 'xs' || size === 'sm' ? 'sm' : size === 'xl' ? 'lg' : 'md';
|
|
32
|
+
return (<View {...containerStyles} {...props}>
|
|
33
|
+
{label && (<Text fontSize="12px" lineHeight="16px" fontWeight="500" color="color-gray-600" marginBottom="6px" {...views?.label}>
|
|
34
|
+
{label}
|
|
35
|
+
</Text>)}
|
|
36
|
+
|
|
37
|
+
<View ref={triggerRef} onPress={isDisabled || isReadOnly ? undefined : handleToggle} onClick={isDisabled || isReadOnly ? undefined : handleToggle} width={'fit-content'} gap={8} {...triggerStyles}>
|
|
38
|
+
<View width="20px" height="20px" borderRadius="4px" backgroundColor={displayColor} borderWidth="1px" borderStyle="solid" borderColor="color-gray-300"/>
|
|
39
|
+
<Text color={selectedColor ? 'color-gray-900' : 'color-gray-500'} fontSize="inherit" {...views?.text}>
|
|
40
|
+
{selectedColor || placeholder}
|
|
41
|
+
</Text>
|
|
42
|
+
{!isReadOnly && !isDisabled && (<ChevronIcon widthHeight={16} color="color-gray-500" orientation={isOpen ? 'up' : 'down'}/>)}
|
|
43
|
+
</View>
|
|
44
|
+
|
|
45
|
+
<ActionSheet isOpen={isOpen} onClose={handleClose} title={label || placeholder} size={sheetSize} views={{ sheet: views?.dropdown }}>
|
|
46
|
+
<View ref={dropdownRef} paddingHorizontal={16}>
|
|
47
|
+
<View {...colorGridStyles}>
|
|
48
|
+
{predefinedColors.map((colorOption, index) => (<View key={index} width="36px" height="36px" borderRadius="8px" backgroundColor={colorOption.value} borderWidth="2px" borderStyle="solid" borderColor={selectedColor === colorOption.value
|
|
49
|
+
? 'theme-primary'
|
|
50
|
+
: 'transparent'} onPress={() => handleColorSelect(colorOption.value)} onClick={() => handleColorSelect(colorOption.value)} {...views?.colorSwatch}/>))}
|
|
51
|
+
</View>
|
|
52
|
+
|
|
53
|
+
{showRecentColors && recentColors.length > 0 && (<Vertical gap={8} marginTop="16px">
|
|
54
|
+
<Text fontSize="12px" fontWeight="500" color="color-gray-600">
|
|
55
|
+
Recent Colors
|
|
56
|
+
</Text>
|
|
57
|
+
<Horizontal gap={8} flexWrap="wrap" {...recentColorsStyles}>
|
|
58
|
+
{recentColors.map((color, index) => (<View key={index} width="24px" height="24px" borderRadius="8px" backgroundColor={color} borderWidth="1px" borderStyle="solid" borderColor={selectedColor === color
|
|
59
|
+
? 'theme-primary'
|
|
60
|
+
: 'color-gray-300'} onPress={() => handleColorSelect(color)} onClick={() => handleColorSelect(color)}/>))}
|
|
61
|
+
</Horizontal>
|
|
62
|
+
</Vertical>)}
|
|
63
|
+
|
|
64
|
+
{showCustomInput && (<Vertical gap={8} marginTop="16px">
|
|
65
|
+
<Text fontSize="12px" fontWeight="500" color="color-gray-600">
|
|
66
|
+
Custom Color
|
|
67
|
+
</Text>
|
|
68
|
+
<Horizontal gap={8}>
|
|
69
|
+
<TextField value={customColor} onChange={(event) => handleCustomColorChange(typeof event === 'string'
|
|
70
|
+
? event
|
|
71
|
+
: event?.target?.value ?? '')} placeholder="#000000 or rgb(0,0,0)" size="sm" style={{ flex: 1 }} views={views?.customInput}/>
|
|
72
|
+
<View padding="8px 12px" backgroundColor="theme-primary" borderRadius="8px" onPress={handleCustomColorSubmit} onClick={handleCustomColorSubmit}>
|
|
73
|
+
<Text color="color-white" fontSize="12px" fontWeight="500">
|
|
74
|
+
Add
|
|
75
|
+
</Text>
|
|
76
|
+
</View>
|
|
77
|
+
</Horizontal>
|
|
78
|
+
</Vertical>)}
|
|
79
|
+
</View>
|
|
80
|
+
</ActionSheet>
|
|
81
|
+
|
|
82
|
+
{helperText && (<Text fontSize="12px" color={error ? 'color-red-500' : 'color-gray-600'} marginTop="4px" {...views?.helperText}>
|
|
83
|
+
{helperText}
|
|
84
|
+
</Text>)}
|
|
85
|
+
|
|
86
|
+
{error && typeof error === 'string' && (<Text fontSize="12px" color="color-red-500" marginTop="4px" {...views?.error}>
|
|
87
|
+
{error}
|
|
88
|
+
</Text>)}
|
|
89
|
+
</View>);
|
|
90
|
+
};
|
|
91
|
+
export default ColorInputView;
|
|
92
|
+
//# sourceMappingURL=ColorInput.view.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ColorInput.view.native.js","sourceRoot":"","sources":["../../../../../../src/components/Form/ColorInput/ColorInput/ColorInput.view.native.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ComboBoxView (React Native)
|
|
3
|
+
*
|
|
4
|
+
* The web view positions its dropdown in a `Portal` using
|
|
5
|
+
* `getBoundingClientRect()` / `window.innerHeight` and a raw `<div>` trigger —
|
|
6
|
+
* none of which exist on React Native. This native view keeps the same public
|
|
7
|
+
* surface (search, single/multi select, chips, ticks) but renders the options
|
|
8
|
+
* in the shared ActionSheet used by native select/menu/picker surfaces.
|
|
9
|
+
*/
|
|
10
|
+
import React from 'react';
|
|
11
|
+
import { ComboBoxViewProps } from './ComboBox.props';
|
|
12
|
+
declare const ComboBoxView: React.FC<ComboBoxViewProps>;
|
|
13
|
+
export default ComboBoxView;
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ComboBoxView (React Native)
|
|
3
|
+
*
|
|
4
|
+
* The web view positions its dropdown in a `Portal` using
|
|
5
|
+
* `getBoundingClientRect()` / `window.innerHeight` and a raw `<div>` trigger —
|
|
6
|
+
* none of which exist on React Native. This native view keeps the same public
|
|
7
|
+
* surface (search, single/multi select, chips, ticks) but renders the options
|
|
8
|
+
* in the shared ActionSheet used by native select/menu/picker surfaces.
|
|
9
|
+
*/
|
|
10
|
+
import React from 'react';
|
|
11
|
+
import { View, Horizontal, Vertical, Text } from 'app-studio';
|
|
12
|
+
import TextField from '../../../Form/TextField/TextField/TextField.view';
|
|
13
|
+
import { ActionSheet } from '../../../ActionSheet/ActionSheet';
|
|
14
|
+
import { SearchIcon, TickIcon, ChevronIcon, CloseIcon, } from '../../../Icon/Icon';
|
|
15
|
+
import { FieldContent } from '../../../Input/FieldContent/FieldContent';
|
|
16
|
+
const ComboBoxView = ({ placeholder, items, showTick = true, onSelect, searchEnabled = true, left, right, label, filteredItems, setSelectedItem, selectedItem, selectedItems, setSelectedItems, highlightedIndex, setHighlightedIndex, searchQuery, setSearchQuery, setFilteredItems, views, isDropdownVisible, setIsDropdownVisible, isMulti = false, ...props }) => {
|
|
17
|
+
const handleSearch = (query) => {
|
|
18
|
+
setSearchQuery(query);
|
|
19
|
+
if (query === '') {
|
|
20
|
+
setFilteredItems(items);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
const filtered = items.filter((item) => item.label.toLowerCase().includes(query.toLowerCase()));
|
|
24
|
+
setFilteredItems(filtered);
|
|
25
|
+
}
|
|
26
|
+
setHighlightedIndex(0);
|
|
27
|
+
};
|
|
28
|
+
const handleSelect = (item) => {
|
|
29
|
+
if (isMulti) {
|
|
30
|
+
const isAlreadySelected = selectedItems.some((selected) => selected.value === item.value);
|
|
31
|
+
const newSelectedItems = isAlreadySelected
|
|
32
|
+
? selectedItems.filter((selected) => selected.value !== item.value)
|
|
33
|
+
: [...selectedItems, item];
|
|
34
|
+
setSelectedItems(newSelectedItems);
|
|
35
|
+
onSelect?.(newSelectedItems);
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
setSelectedItem(item);
|
|
39
|
+
onSelect?.(item);
|
|
40
|
+
setIsDropdownVisible(false);
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
const handleRemoveItem = (itemToRemove) => {
|
|
44
|
+
const newSelectedItems = selectedItems.filter((item) => item.value !== itemToRemove.value);
|
|
45
|
+
setSelectedItems(newSelectedItems);
|
|
46
|
+
onSelect?.(newSelectedItems);
|
|
47
|
+
};
|
|
48
|
+
const isItemSelected = (item) => {
|
|
49
|
+
if (isMulti) {
|
|
50
|
+
return selectedItems.some((selected) => selected.value === item.value);
|
|
51
|
+
}
|
|
52
|
+
return item.value === selectedItem?.value;
|
|
53
|
+
};
|
|
54
|
+
const selectedLabel = selectedItem?.label ?? placeholder;
|
|
55
|
+
return (<Horizontal flexWrap="nowrap" gap={15} alignItems="center" width="100%" {...props}>
|
|
56
|
+
{label && <Text views={views?.label}>{label}</Text>}
|
|
57
|
+
<View position="relative" width="100%" zIndex={isDropdownVisible ? 1000 : 0}>
|
|
58
|
+
<View onPress={() => setIsDropdownVisible(!isDropdownVisible)} onClick={() => setIsDropdownVisible(!isDropdownVisible)} width="100%">
|
|
59
|
+
<FieldContent isFocused={isDropdownVisible} cursor="pointer" views={{ container: views?.container }}>
|
|
60
|
+
<Horizontal gap={10} alignItems="center" width="100%" flexWrap={isMulti ? 'wrap' : 'nowrap'} {...views?.labelContainer}>
|
|
61
|
+
{left}
|
|
62
|
+
{isMulti ? (selectedItems.length > 0 ? (<Horizontal gap={6} flexWrap="wrap" alignItems="center">
|
|
63
|
+
{selectedItems.map((item) => (<Horizontal key={item.value} alignItems="center" gap={4} paddingVertical={2} paddingHorizontal={8} borderRadius={999} backgroundColor="color-gray-100">
|
|
64
|
+
{item.icon && <View flexShrink={0}>{item.icon}</View>}
|
|
65
|
+
<Text size="sm" color="color-gray-700">
|
|
66
|
+
{item.label}
|
|
67
|
+
</Text>
|
|
68
|
+
<CloseIcon widthHeight={12} color="color-gray-500" onClick={() => handleRemoveItem(item)}/>
|
|
69
|
+
</Horizontal>))}
|
|
70
|
+
</Horizontal>) : (<Text flexGrow={1} color="color-gray-500" {...views?.label}>
|
|
71
|
+
{placeholder}
|
|
72
|
+
</Text>)) : (<>
|
|
73
|
+
{selectedItem?.icon && selectedLabel !== placeholder && (<View>{selectedItem.icon}</View>)}
|
|
74
|
+
<Text flexGrow={1} color={selectedLabel === placeholder
|
|
75
|
+
? 'color-gray-500'
|
|
76
|
+
: 'color-gray-800'} {...views?.label}>
|
|
77
|
+
{selectedLabel}
|
|
78
|
+
</Text>
|
|
79
|
+
</>)}
|
|
80
|
+
</Horizontal>
|
|
81
|
+
<Horizontal gap={8} alignItems="center">
|
|
82
|
+
{right}
|
|
83
|
+
<ChevronIcon widthHeight={16} orientation={isDropdownVisible ? 'up' : 'down'} color={isDropdownVisible ? 'color-gray-700' : 'color-gray-400'}/>
|
|
84
|
+
</Horizontal>
|
|
85
|
+
</FieldContent>
|
|
86
|
+
</View>
|
|
87
|
+
|
|
88
|
+
<ActionSheet isOpen={isDropdownVisible} onClose={() => setIsDropdownVisible(false)} title={typeof label === 'string' ? label : placeholder} closeOnSelect={!isMulti} views={{ sheet: views?.dropdown }}>
|
|
89
|
+
<View paddingHorizontal={12}>
|
|
90
|
+
{searchEnabled && (<View padding="8px" borderBottomWidth={1} borderStyle="solid" borderColor="color-gray-100">
|
|
91
|
+
<TextField id={`${props.id}-search`} name={`${props.name}-search`} width="100%" value={searchQuery} onChange={(value) => handleSearch(value)} hint={placeholder || 'Search...'} isClearable={false} left={<SearchIcon widthHeight={14} color="color-gray-400"/>}/>
|
|
92
|
+
</View>)}
|
|
93
|
+
{filteredItems.length > 0 ? (<Vertical paddingVertical={4}>
|
|
94
|
+
{filteredItems.map((item) => {
|
|
95
|
+
const isSelected = isItemSelected(item);
|
|
96
|
+
return (<Horizontal justifyContent="space-between" alignItems="center" key={item.value} paddingVertical={8} paddingHorizontal={10} borderRadius={6} backgroundColor={isSelected ? 'color-blue-50' : 'transparent'} onPress={() => handleSelect(item)} onClick={() => handleSelect(item)} {...views?.item}>
|
|
97
|
+
<Horizontal gap={8} alignItems="center">
|
|
98
|
+
{item.icon && <View flexShrink={0}>{item.icon}</View>}
|
|
99
|
+
<Text size="sm" color={isSelected ? 'theme-primary' : 'color-gray-800'}>
|
|
100
|
+
{item.label}
|
|
101
|
+
</Text>
|
|
102
|
+
</Horizontal>
|
|
103
|
+
{isSelected && showTick && (<TickIcon widthHeight={16} color="theme-primary"/>)}
|
|
104
|
+
</Horizontal>);
|
|
105
|
+
})}
|
|
106
|
+
</Vertical>) : (<Vertical alignItems="center" gap={4} padding="16px">
|
|
107
|
+
<SearchIcon widthHeight={24} color="color-gray-300"/>
|
|
108
|
+
<Text color="color-gray-500" size="sm">
|
|
109
|
+
No results found
|
|
110
|
+
</Text>
|
|
111
|
+
</Vertical>)}
|
|
112
|
+
</View>
|
|
113
|
+
</ActionSheet>
|
|
114
|
+
</View>
|
|
115
|
+
</Horizontal>);
|
|
116
|
+
};
|
|
117
|
+
export default ComboBoxView;
|
|
118
|
+
//# sourceMappingURL=ComboBox.view.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboBox.view.native.js","sourceRoot":"","sources":["../../../../../../src/components/Form/ComboBox/ComboBox/ComboBox.view.native.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Input, Typography, useTheme } from 'app-studio';
|
|
3
|
+
import { FieldContainer, FieldContent, FieldIcons, FieldLabel, FieldWrapper, } from '../../../Input';
|
|
4
|
+
import { ActionSheet } from '../../../ActionSheet/ActionSheet';
|
|
5
|
+
import countryList from '../countries.json';
|
|
6
|
+
import { IconSizes } from './CountryPicker.style';
|
|
7
|
+
import { ChevronIcon } from '../../../Icon/Icon';
|
|
8
|
+
const CountrySelector = (props) => (<Input type="country" {...props}/>);
|
|
9
|
+
export const CountryPickerView = ({ id, name, label, value, placeholder, helperText, hide = false, error = false, isFocused = false, isAutoFocus = false, isDisabled = false, isReadOnly = false, shadow = {}, newOptions = [], size = 'md', variant = 'default', shape = 'default', onChange, onBlur = () => { }, setHide = () => { }, setNewOptions = () => { }, setIsFocused = () => { }, setValue = () => { }, views = {
|
|
10
|
+
text: {},
|
|
11
|
+
icon: {},
|
|
12
|
+
label: {},
|
|
13
|
+
dropDown: {},
|
|
14
|
+
helperText: {},
|
|
15
|
+
}, themeMode: elementMode, ...props }) => {
|
|
16
|
+
const { getColor, themeMode } = useTheme();
|
|
17
|
+
const iconColor = getColor('color-gray-500', {
|
|
18
|
+
themeMode: elementMode ? elementMode : themeMode,
|
|
19
|
+
});
|
|
20
|
+
const sheetSize = size === 'xs' || size === 'sm' ? 'sm' : size === 'xl' ? 'lg' : 'md';
|
|
21
|
+
const handleFocus = () => setIsFocused(true);
|
|
22
|
+
const handleCallback = (option) => {
|
|
23
|
+
setHide(true);
|
|
24
|
+
setIsFocused(false);
|
|
25
|
+
setValue(option);
|
|
26
|
+
onChange?.(option);
|
|
27
|
+
};
|
|
28
|
+
const handleOpen = () => {
|
|
29
|
+
if (!isDisabled && !isReadOnly) {
|
|
30
|
+
setHide(!hide);
|
|
31
|
+
setIsFocused(hide);
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
const handleChange = (event) => {
|
|
35
|
+
const valueCountry = typeof event === 'string' ? event : event?.target?.value ?? '';
|
|
36
|
+
const filteredCountries = countryList.filter((country) => country.name.toLowerCase().startsWith(valueCountry.toLowerCase()));
|
|
37
|
+
if (hide)
|
|
38
|
+
setHide(false);
|
|
39
|
+
setNewOptions(filteredCountries);
|
|
40
|
+
onChange?.(valueCountry);
|
|
41
|
+
};
|
|
42
|
+
const handleBlur = (event) => {
|
|
43
|
+
onBlur(event);
|
|
44
|
+
setIsFocused(false);
|
|
45
|
+
};
|
|
46
|
+
const showLabel = !!(label && (isFocused || value));
|
|
47
|
+
const fieldStyles = {
|
|
48
|
+
margin: 0,
|
|
49
|
+
paddingVertical: 8,
|
|
50
|
+
paddingHorizontal: 0,
|
|
51
|
+
width: '100%',
|
|
52
|
+
heigth: '100%',
|
|
53
|
+
border: 'none',
|
|
54
|
+
fontSize: Typography.fontSizes[size],
|
|
55
|
+
backgroundColor: 'transparent',
|
|
56
|
+
color: isDisabled ? 'color-gray-400' : 'color-gray-900',
|
|
57
|
+
...views['field'],
|
|
58
|
+
};
|
|
59
|
+
return (<FieldContainer helperText={helperText} error={error} views={views} onPress={handleOpen} onClick={handleOpen}>
|
|
60
|
+
<FieldContent label={label} size={size} error={error} shape={shape} views={views} shadow={shadow} variant={variant} value={value} color={'theme-primary'} isDisabled={isDisabled} isReadOnly={isReadOnly} isFocused={isFocused} showLabel={showLabel}>
|
|
61
|
+
<FieldWrapper>
|
|
62
|
+
{showLabel && (<FieldLabel htmlFor={id} color={'theme-primary'} error={error} views={views}>
|
|
63
|
+
{label}
|
|
64
|
+
</FieldLabel>)}
|
|
65
|
+
<CountrySelector id={id} name={name} placeholder={placeholder} readOnly={isReadOnly} disabled={isDisabled} autoFocus={isAutoFocus} onBlur={handleBlur} onFocus={handleFocus} {...fieldStyles} {...props} value={value} onChange={handleChange}/>
|
|
66
|
+
</FieldWrapper>
|
|
67
|
+
<FieldIcons>
|
|
68
|
+
<ChevronIcon orientation={hide ? 'down' : 'up'} widthHeight={IconSizes[size]} color={iconColor} style={views['icon']}/>
|
|
69
|
+
</FieldIcons>
|
|
70
|
+
</FieldContent>
|
|
71
|
+
|
|
72
|
+
<ActionSheet isOpen={!hide} onClose={() => {
|
|
73
|
+
setHide(true);
|
|
74
|
+
setIsFocused(false);
|
|
75
|
+
}} title={label || placeholder || 'Select country'} value={value} showCancel size={sheetSize} items={newOptions.map((country) => ({
|
|
76
|
+
id: country.code,
|
|
77
|
+
value: country.name,
|
|
78
|
+
label: `${country.emoji} ${country.name}`,
|
|
79
|
+
description: country.dial_code,
|
|
80
|
+
selected: value === country.name,
|
|
81
|
+
onPress: () => handleCallback(country.name),
|
|
82
|
+
}))} views={{
|
|
83
|
+
sheet: views?.dropDown,
|
|
84
|
+
itemLabel: views?.text,
|
|
85
|
+
}}/>
|
|
86
|
+
</FieldContainer>);
|
|
87
|
+
};
|
|
88
|
+
//# sourceMappingURL=CountryPicker.view.native.js.map
|
package/dist/native/components/Form/CountryPicker/CountryPicker/CountryPicker.view.native.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CountryPicker.view.native.js","sourceRoot":"","sources":["../../../../../../src/components/Form/CountryPicker/CountryPicker/CountryPicker.view.native.tsx"],"names":[],"mappings":"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"}
|
|
@@ -39,6 +39,9 @@ export declare const usePasswordState: (props: PasswordProps) => {
|
|
|
39
39
|
variant?: import("../../TextField/TextField/TextField.type").Variant;
|
|
40
40
|
isMultiline?: boolean;
|
|
41
41
|
rows?: number;
|
|
42
|
+
inputRef?: (node: {
|
|
43
|
+
focus: () => void;
|
|
44
|
+
} | null) => void;
|
|
42
45
|
defaultChecked?: boolean | undefined;
|
|
43
46
|
defaultValue?: (string | number | readonly string[]) | undefined;
|
|
44
47
|
suppressContentEditableWarning?: boolean | undefined | undefined;
|
|
@@ -1359,6 +1362,14 @@ export declare const usePasswordState: (props: PasswordProps) => {
|
|
|
1359
1362
|
colorInterpolation?: import("csstype").Property.ColorInterpolation | undefined;
|
|
1360
1363
|
colorRendering?: import("csstype").Property.ColorRendering | undefined;
|
|
1361
1364
|
glyphOrientationVertical?: import("csstype").Property.GlyphOrientationVertical | undefined;
|
|
1365
|
+
safeArea?: (boolean | "all" | import("app-studio").SafeAreaEdge | import("app-studio").SafeAreaEdge[]) | undefined;
|
|
1366
|
+
safeAreaTop?: boolean | undefined;
|
|
1367
|
+
safeAreaBottom?: boolean | undefined;
|
|
1368
|
+
safeAreaLeft?: boolean | undefined;
|
|
1369
|
+
safeAreaRight?: boolean | undefined;
|
|
1370
|
+
safeAreaEdges?: import("app-studio").SafeAreaEdge[] | undefined;
|
|
1371
|
+
ignoreSafeArea?: boolean | undefined;
|
|
1372
|
+
safeAreaMode?: import("app-studio").SafeAreaMode | undefined;
|
|
1362
1373
|
normalize?: (() => void) | undefined;
|
|
1363
1374
|
select?: (() => void) | undefined;
|
|
1364
1375
|
scroll?: {
|
|
@@ -1703,6 +1714,7 @@ export declare const usePasswordState: (props: PasswordProps) => {
|
|
|
1703
1714
|
dataset?: DOMStringMap | undefined;
|
|
1704
1715
|
blur?: (() => void) | undefined;
|
|
1705
1716
|
focus?: ((options?: FocusOptions) => void) | undefined;
|
|
1717
|
+
scrollEnabled?: boolean | undefined;
|
|
1706
1718
|
autocomplete?: AutoFill | undefined;
|
|
1707
1719
|
dirName?: string | undefined;
|
|
1708
1720
|
files?: FileList | null | undefined;
|
|
@@ -1731,6 +1743,20 @@ export declare const usePasswordState: (props: PasswordProps) => {
|
|
|
1731
1743
|
stepDown?: ((n?: number) => void) | undefined;
|
|
1732
1744
|
stepUp?: ((n?: number) => void) | undefined;
|
|
1733
1745
|
popoverTargetElement?: Element | null | undefined;
|
|
1746
|
+
multiline?: boolean | undefined;
|
|
1747
|
+
numberOfLines?: number | undefined;
|
|
1748
|
+
onSubmitEditing?: ((..._args: any[]) => void) | undefined;
|
|
1749
|
+
keyboardType?: string | undefined;
|
|
1750
|
+
secureTextEntry?: boolean | undefined;
|
|
1751
|
+
editable?: boolean | undefined;
|
|
1752
|
+
caretHidden?: boolean | undefined;
|
|
1753
|
+
selectionColor?: string | undefined;
|
|
1754
|
+
placeholderTextColor?: string | undefined;
|
|
1755
|
+
returnKeyType?: string | undefined;
|
|
1756
|
+
textAlignVertical?: "auto" | "top" | "bottom" | "center" | undefined;
|
|
1757
|
+
textContentType?: string | undefined;
|
|
1758
|
+
blurOnSubmit?: boolean | undefined;
|
|
1759
|
+
clearButtonMode?: string | undefined;
|
|
1734
1760
|
isVisible: boolean;
|
|
1735
1761
|
setIsVisible: import("react").Dispatch<import("react").SetStateAction<boolean>>;
|
|
1736
1762
|
};
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
* - document.addEventListener / closeAllSelects custom event
|
|
12
12
|
* - cursor, hover transitions, chevron rotation transitions
|
|
13
13
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
14
|
+
* Native presentation uses the shared ActionSheet so selects, menus, and
|
|
15
|
+
* pickers get the same bottom-sheet interaction model.
|
|
16
16
|
*/
|
|
17
17
|
import React from 'react';
|
|
18
18
|
import { MultiSelectProps, SelectViewProps } from './Select.props';
|
|
@@ -11,19 +11,19 @@
|
|
|
11
11
|
* - document.addEventListener / closeAllSelects custom event
|
|
12
12
|
* - cursor, hover transitions, chevron rotation transitions
|
|
13
13
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
14
|
+
* Native presentation uses the shared ActionSheet so selects, menus, and
|
|
15
|
+
* pickers get the same bottom-sheet interaction model.
|
|
16
16
|
*/
|
|
17
17
|
import React from 'react';
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
18
|
+
import { Typography, Horizontal, Text, View } from 'app-studio';
|
|
19
|
+
import { ActionSheet } from '../../../ActionSheet/ActionSheet';
|
|
20
20
|
import { FieldContainer } from '../../../Input/FieldContainer/FieldContainer';
|
|
21
21
|
import { FieldContent } from '../../../Input/FieldContent/FieldContent';
|
|
22
22
|
import { FieldIcons } from '../../../Input/FieldIcons/FieldIcons';
|
|
23
23
|
import { FieldLabel } from '../../../Input/FieldLabel/FieldLabel';
|
|
24
24
|
import { FieldWrapper } from '../../../Input/FieldWrapper/FieldWrapper';
|
|
25
25
|
import { ChevronIcon, CloseIcon } from '../../../Icon/Icon';
|
|
26
|
-
import { IconSizes, optionStyles,
|
|
26
|
+
import { IconSizes, optionStyles, chipStyles } from './Select.style';
|
|
27
27
|
const withoutFieldShellView = (views) => {
|
|
28
28
|
if (!views)
|
|
29
29
|
return {};
|
|
@@ -127,34 +127,20 @@ const SelectView = ({ id, name, label, value, placeholder, helperText, hide = fa
|
|
|
127
127
|
</FieldIcons>
|
|
128
128
|
</FieldContent>
|
|
129
129
|
|
|
130
|
-
<
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
{option.label}
|
|
145
|
-
</Text>
|
|
146
|
-
{selected && (<Text color="theme-primary" fontSize={14}>
|
|
147
|
-
{'✓'}
|
|
148
|
-
</Text>)}
|
|
149
|
-
</Horizontal>
|
|
150
|
-
</Pressable>);
|
|
151
|
-
})}
|
|
152
|
-
</ScrollView>
|
|
153
|
-
</Vertical>
|
|
154
|
-
</TouchableWithoutFeedback>
|
|
155
|
-
</View>
|
|
156
|
-
</TouchableWithoutFeedback>
|
|
157
|
-
</RNModal>
|
|
130
|
+
<ActionSheet isOpen={!hide && options.length > 0} onClose={() => {
|
|
131
|
+
setHide(true);
|
|
132
|
+
setIsFocused(false);
|
|
133
|
+
}} title={label} value={value} isMulti={isMulti} closeOnSelect={!isMulti} showCancel size={size === 'xs' || size === 'sm' ? 'sm' : size === 'xl' ? 'lg' : 'md'} items={options.map((option) => ({
|
|
134
|
+
id: option.value,
|
|
135
|
+
value: option.value,
|
|
136
|
+
label: option.label,
|
|
137
|
+
selected: isOptionSelected(option.value),
|
|
138
|
+
onPress: () => handleSelect(option.value),
|
|
139
|
+
}))} views={{
|
|
140
|
+
sheet: views?.dropDown,
|
|
141
|
+
item: optionStyles,
|
|
142
|
+
itemLabel: views?.text,
|
|
143
|
+
}}/>
|
|
158
144
|
</FieldContainer>);
|
|
159
145
|
};
|
|
160
146
|
export default SelectView;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.view.native.js","sourceRoot":"","sources":["../../../../../../src/components/Form/Select/Select/Select.view.native.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,
|
|
1
|
+
{"version":3,"file":"Select.view.native.js","sourceRoot":"","sources":["../../../../../../src/components/Form/Select/Select/Select.view.native.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SelectorView (React Native)
|
|
3
|
+
*
|
|
4
|
+
* Identical segmented-control UI to the web view, minus the trailing hidden
|
|
5
|
+
* `<input type="hidden">` (a web-only form-submission shim that crashes the RN
|
|
6
|
+
* renderer). `as="button"` collapses to a Pressable on native and `onClick`
|
|
7
|
+
* maps to `onPress`, so the segments stay fully interactive.
|
|
8
|
+
*/
|
|
9
|
+
import React from 'react';
|
|
10
|
+
import { SelectorViewProps } from './Selector.props';
|
|
11
|
+
declare const SelectorView: React.FC<SelectorViewProps>;
|
|
12
|
+
export default SelectorView;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SelectorView (React Native)
|
|
3
|
+
*
|
|
4
|
+
* Identical segmented-control UI to the web view, minus the trailing hidden
|
|
5
|
+
* `<input type="hidden">` (a web-only form-submission shim that crashes the RN
|
|
6
|
+
* renderer). `as="button"` collapses to a Pressable on native and `onClick`
|
|
7
|
+
* maps to `onPress`, so the segments stay fully interactive.
|
|
8
|
+
*/
|
|
9
|
+
import React, { useCallback } from 'react';
|
|
10
|
+
import { Horizontal } from 'app-studio';
|
|
11
|
+
import { Text } from 'app-studio';
|
|
12
|
+
import { View } from 'app-studio';
|
|
13
|
+
import { FieldContainer } from '../../../Input/FieldContainer/FieldContainer';
|
|
14
|
+
import { InfoIcon } from '../../../Icon/Icon';
|
|
15
|
+
const SelectorView = ({ id, label, value, views = {}, options = [], onChange = () => { }, setValue = () => { }, }) => {
|
|
16
|
+
const handleCallback = useCallback((option) => {
|
|
17
|
+
setValue(option.value);
|
|
18
|
+
if (onChange)
|
|
19
|
+
onChange(option.value);
|
|
20
|
+
}, [setValue, onChange]);
|
|
21
|
+
return (<FieldContainer id={id} width="100%" views={views}>
|
|
22
|
+
{label && (<Horizontal fontSize="10px" letterSpacing="wider" color="color-black-500" fontWeight="bold" marginBottom={12} alignItems="center" gap={6}>
|
|
23
|
+
<InfoIcon widthHeight={14}/> <Text>{label}</Text>
|
|
24
|
+
</Horizontal>)}
|
|
25
|
+
<Horizontal gap={0}>
|
|
26
|
+
{options.map((option, index, arr) => {
|
|
27
|
+
const isSelected = value === option.value;
|
|
28
|
+
const accent = option.color ?? 'theme-primary';
|
|
29
|
+
const borderToken = isSelected ? accent : 'color-gray-200';
|
|
30
|
+
const textToken = isSelected ? accent : 'color-gray-500';
|
|
31
|
+
const isFirst = index === 0;
|
|
32
|
+
const isLast = index === arr.length - 1;
|
|
33
|
+
const showRightBorder = isLast || isSelected;
|
|
34
|
+
return (<View key={option.value} onClick={() => handleCallback(option)} flex={1} alignItems="center" paddingVertical={6} paddingHorizontal={12} backgroundColor="transparent" borderStyle="solid" borderColor={borderToken} borderTopWidth={1} borderBottomWidth={1} borderLeftWidth={1} borderRightWidth={showRightBorder ? 1 : 0} borderTopLeftRadius={isFirst ? 6 : 0} borderBottomLeftRadius={isFirst ? 6 : 0} borderTopRightRadius={isLast ? 6 : 0} borderBottomRightRadius={isLast ? 6 : 0} zIndex={isSelected ? 1 : 0} {...views.item}>
|
|
35
|
+
<Text fontSize="12px" fontWeight={isSelected ? 'bold' : 'normal'} color={textToken}>
|
|
36
|
+
{option.label}
|
|
37
|
+
</Text>
|
|
38
|
+
</View>);
|
|
39
|
+
})}
|
|
40
|
+
</Horizontal>
|
|
41
|
+
</FieldContainer>);
|
|
42
|
+
};
|
|
43
|
+
export default SelectorView;
|
|
44
|
+
//# sourceMappingURL=Selector.view.native.js.map
|