@alveole/components 0.43.2 → 1.0.0
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/core/Alert/Alert.d.ts +11 -0
- package/dist/core/Alert/Alert.d.ts.map +1 -0
- package/dist/core/Alert/Alert.js +4 -0
- package/dist/core/Alert/Alert.web.d.ts +5 -0
- package/dist/core/Alert/Alert.web.d.ts.map +1 -0
- package/dist/core/Alert/Alert.web.js +7 -0
- package/dist/core/Alert/index.d.ts +2 -0
- package/dist/core/Alert/index.d.ts.map +1 -0
- package/dist/core/Alert/index.js +1 -0
- package/dist/core/Form/Form.d.ts +2 -5
- package/dist/core/Form/Form.d.ts.map +1 -1
- package/dist/core/Form/Form.js +3 -24
- package/dist/core/Form/Form.stories.d.ts +0 -7
- package/dist/core/Form/Form.stories.d.ts.map +1 -1
- package/dist/core/Form/Form.stories.js +2 -3
- package/dist/core/Form/Form.stories.sources.d.ts +0 -2
- package/dist/core/Form/Form.stories.sources.d.ts.map +1 -1
- package/dist/core/Form/Form.stories.sources.js +0 -2
- package/dist/core/Form/Form.styles.d.ts +0 -6
- package/dist/core/Form/Form.styles.d.ts.map +1 -1
- package/dist/core/Form/Form.styles.js +0 -6
- package/dist/core/Image/Image.d.ts.map +1 -1
- package/dist/core/Image/Image.js +1 -5
- package/dist/core/Map/Map.web.d.ts.map +1 -1
- package/dist/core/Map/Map.web.js +41 -41
- package/dist/core/Page/Page.d.ts +2 -0
- package/dist/core/Page/Page.d.ts.map +1 -1
- package/dist/core/Page/Page.stories.d.ts +5 -2
- package/dist/core/Page/Page.stories.d.ts.map +1 -1
- package/dist/core/Page/Page.stories.js +13 -14
- package/dist/core/Page/Page.stories.sources.d.ts +10 -4
- package/dist/core/Page/Page.stories.sources.d.ts.map +1 -1
- package/dist/core/Page/Page.stories.sources.js +10 -4
- package/dist/core/Page/PageContentScrollable.d.ts +1 -0
- package/dist/core/Page/PageContentScrollable.d.ts.map +1 -1
- package/dist/core/Page/PageContentScrollable.js +2 -2
- package/dist/core/Page/PageHead.web.d.ts.map +1 -1
- package/dist/core/Page/PageHead.web.js +5 -2
- package/dist/core/Page/PageMetaContext.d.ts +12 -0
- package/dist/core/Page/PageMetaContext.d.ts.map +1 -0
- package/dist/core/Page/PageMetaContext.js +5 -0
- package/dist/core/Page/index.d.ts +2 -0
- package/dist/core/Page/index.d.ts.map +1 -1
- package/dist/core/Page/index.js +2 -0
- package/dist/core/PdfViewer/PdfViewer.js +1 -1
- package/dist/core/Version/Version.stories.d.ts +1 -1
- package/dist/core/Version/Version.styles.d.ts +1 -1
- package/dist/core/index.d.ts +1 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -0
- package/dist/generated/version.d.ts +1 -1
- package/dist/generated/version.d.ts.map +1 -1
- package/dist/generated/version.js +1 -1
- package/dist/globals.d.ts +2 -0
- package/dist/globals.d.ts.map +1 -0
- package/dist/globals.js +1 -0
- package/dist/pdfjs/pdf.min.mjs +8 -1
- package/dist/pdfjs/pdf.worker.min.mjs +8 -1
- package/dist/stories/index.d.ts +24 -0
- package/dist/stories/index.d.ts.map +1 -1
- package/dist/stories/index.js +24 -0
- package/dist/ui/Accordion/Accordion.d.ts +19 -0
- package/dist/ui/Accordion/Accordion.d.ts.map +1 -0
- package/dist/ui/Accordion/Accordion.js +10 -0
- package/dist/ui/Accordion/Accordion.stories.d.ts +103 -0
- package/dist/ui/Accordion/Accordion.stories.d.ts.map +1 -0
- package/dist/ui/Accordion/Accordion.stories.js +15 -0
- package/dist/ui/Accordion/Accordion.stories.sources.d.ts +6 -0
- package/dist/ui/Accordion/Accordion.stories.sources.d.ts.map +1 -0
- package/dist/ui/Accordion/Accordion.stories.sources.js +6 -0
- package/dist/ui/Accordion/Accordion.styles.d.ts +90 -0
- package/dist/ui/Accordion/Accordion.styles.d.ts.map +1 -0
- package/dist/ui/Accordion/Accordion.styles.js +86 -0
- package/dist/ui/Accordion/AccordionItem.d.ts +14 -0
- package/dist/ui/Accordion/AccordionItem.d.ts.map +1 -0
- package/dist/ui/Accordion/AccordionItem.js +19 -0
- package/dist/ui/Accordion/index.d.ts +4 -0
- package/dist/ui/Accordion/index.d.ts.map +1 -0
- package/dist/ui/Accordion/index.js +5 -0
- package/dist/ui/ActionMenu/ActionMenu.stories.js +1 -1
- package/dist/ui/ActionMenu/ActionMenu.stories.sources.d.ts.map +1 -1
- package/dist/ui/ActionMenu/ActionMenu.stories.sources.js +1 -1
- package/dist/ui/Autocomplete/Autocomplete.d.ts +41 -0
- package/dist/ui/Autocomplete/Autocomplete.d.ts.map +1 -0
- package/dist/ui/Autocomplete/Autocomplete.js +131 -0
- package/dist/ui/Autocomplete/Autocomplete.stories.d.ts +224 -0
- package/dist/ui/Autocomplete/Autocomplete.stories.d.ts.map +1 -0
- package/dist/ui/Autocomplete/Autocomplete.stories.js +56 -0
- package/dist/ui/Autocomplete/Autocomplete.stories.sources.d.ts +14 -0
- package/dist/ui/Autocomplete/Autocomplete.stories.sources.d.ts.map +1 -0
- package/dist/ui/Autocomplete/Autocomplete.stories.sources.js +14 -0
- package/dist/ui/Autocomplete/Autocomplete.styles.d.ts +208 -0
- package/dist/ui/Autocomplete/Autocomplete.styles.d.ts.map +1 -0
- package/dist/ui/Autocomplete/Autocomplete.styles.js +173 -0
- package/dist/ui/Autocomplete/Autocomplete.web.d.ts +28 -0
- package/dist/ui/Autocomplete/Autocomplete.web.d.ts.map +1 -0
- package/dist/ui/Autocomplete/Autocomplete.web.js +112 -0
- package/dist/ui/Autocomplete/AutocompleteChip.d.ts +8 -0
- package/dist/ui/Autocomplete/AutocompleteChip.d.ts.map +1 -0
- package/dist/ui/Autocomplete/AutocompleteChip.js +12 -0
- package/dist/ui/Autocomplete/index.d.ts +3 -0
- package/dist/ui/Autocomplete/index.d.ts.map +1 -0
- package/dist/ui/Autocomplete/index.js +2 -0
- package/dist/ui/AutocompleteAddress/AutocompleteAddress.d.ts +28 -0
- package/dist/ui/AutocompleteAddress/AutocompleteAddress.d.ts.map +1 -0
- package/dist/ui/AutocompleteAddress/AutocompleteAddress.js +20 -0
- package/dist/ui/AutocompleteAddress/AutocompleteAddress.stories.d.ts +13 -0
- package/dist/ui/AutocompleteAddress/AutocompleteAddress.stories.d.ts.map +1 -0
- package/dist/ui/AutocompleteAddress/AutocompleteAddress.stories.js +30 -0
- package/dist/ui/AutocompleteAddress/AutocompleteAddress.stories.sources.d.ts +6 -0
- package/dist/ui/AutocompleteAddress/AutocompleteAddress.stories.sources.d.ts.map +1 -0
- package/dist/ui/AutocompleteAddress/AutocompleteAddress.stories.sources.js +6 -0
- package/dist/ui/AutocompleteAddress/index.d.ts +2 -0
- package/dist/ui/AutocompleteAddress/index.d.ts.map +1 -0
- package/dist/ui/AutocompleteAddress/index.js +1 -0
- package/dist/ui/Avatar/Avatar.stories.d.ts +2 -2
- package/dist/ui/Avatar/Avatar.styles.d.ts +2 -2
- package/dist/ui/Badge/Badge.js +1 -1
- package/dist/ui/Badge/Badge.stories.d.ts +14 -12
- package/dist/ui/Badge/Badge.stories.d.ts.map +1 -1
- package/dist/ui/Badge/Badge.styles.d.ts +14 -12
- package/dist/ui/Badge/Badge.styles.d.ts.map +1 -1
- package/dist/ui/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
- package/dist/ui/Breadcrumbs/Breadcrumbs.js +1 -1
- package/dist/ui/Breadcrumbs/Breadcrumbs.stories.d.ts +3 -3
- package/dist/ui/Breadcrumbs/Breadcrumbs.styles.d.ts +3 -3
- package/dist/ui/Button/Button.stories.d.ts +56 -57
- package/dist/ui/Button/Button.stories.d.ts.map +1 -1
- package/dist/ui/Button/Button.styles.d.ts +56 -57
- package/dist/ui/Button/Button.styles.d.ts.map +1 -1
- package/dist/ui/Button/Button.styles.js +0 -1
- package/dist/ui/Button/ButtonIcon.d.ts.map +1 -1
- package/dist/ui/Button/ButtonIcon.js +2 -5
- package/dist/ui/Card/Card.stories.d.ts +3 -3
- package/dist/ui/Card/Card.styles.d.ts +2 -2
- package/dist/ui/Card/CardHeader.styles.d.ts +3 -3
- package/dist/ui/Card/CardSection.styles.d.ts +3 -3
- package/dist/ui/Checkbox/Checkbox.d.ts +19 -0
- package/dist/ui/Checkbox/Checkbox.d.ts.map +1 -0
- package/dist/ui/Checkbox/Checkbox.js +17 -0
- package/dist/ui/Checkbox/Checkbox.stories.d.ts +93 -0
- package/dist/ui/Checkbox/Checkbox.stories.d.ts.map +1 -0
- package/dist/ui/Checkbox/Checkbox.stories.js +15 -0
- package/dist/ui/Checkbox/Checkbox.stories.sources.d.ts +8 -0
- package/dist/ui/Checkbox/Checkbox.stories.sources.d.ts.map +1 -0
- package/dist/ui/Checkbox/Checkbox.stories.sources.js +8 -0
- package/dist/ui/Checkbox/Checkbox.styles.d.ts +70 -0
- package/dist/ui/Checkbox/Checkbox.styles.d.ts.map +1 -0
- package/dist/ui/Checkbox/Checkbox.styles.js +62 -0
- package/dist/ui/Checkbox/CheckboxContainer.d.ts +22 -0
- package/dist/ui/Checkbox/CheckboxContainer.d.ts.map +1 -0
- package/dist/ui/Checkbox/CheckboxContainer.js +21 -0
- package/dist/ui/Checkbox/CheckboxIndicator.d.ts +7 -0
- package/dist/ui/Checkbox/CheckboxIndicator.d.ts.map +1 -0
- package/dist/ui/Checkbox/CheckboxIndicator.js +15 -0
- package/dist/ui/Checkbox/CheckboxLabel.d.ts +9 -0
- package/dist/ui/Checkbox/CheckboxLabel.d.ts.map +1 -0
- package/dist/ui/Checkbox/CheckboxLabel.js +15 -0
- package/dist/ui/Checkbox/index.d.ts +5 -0
- package/dist/ui/Checkbox/index.d.ts.map +1 -0
- package/dist/ui/Checkbox/index.js +4 -0
- package/dist/ui/Counter/Counter.d.ts +6 -0
- package/dist/ui/Counter/Counter.d.ts.map +1 -0
- package/dist/ui/Counter/Counter.js +11 -0
- package/dist/ui/Counter/Counter.stories.d.ts +29 -0
- package/dist/ui/Counter/Counter.stories.d.ts.map +1 -0
- package/dist/ui/Counter/Counter.stories.js +15 -0
- package/dist/ui/Counter/Counter.stories.sources.d.ts +6 -0
- package/dist/ui/Counter/Counter.stories.sources.d.ts.map +1 -0
- package/dist/ui/Counter/Counter.stories.sources.js +6 -0
- package/dist/ui/Counter/Counter.styles.d.ts +18 -0
- package/dist/ui/Counter/Counter.styles.d.ts.map +1 -0
- package/dist/ui/Counter/Counter.styles.js +14 -0
- package/dist/ui/Counter/index.d.ts +2 -0
- package/dist/ui/Counter/index.d.ts.map +1 -0
- package/dist/ui/Counter/index.js +1 -0
- package/dist/ui/Divider/Divider.stories.d.ts +1 -1
- package/dist/ui/Divider/Divider.styles.d.ts +1 -1
- package/dist/ui/DocumentViewer/DocumentViewer.d.ts.map +1 -1
- package/dist/ui/DocumentViewer/DocumentViewer.js +1 -3
- package/dist/ui/DocumentViewer/DocumentViewer.stories.d.ts +10 -10
- package/dist/ui/DocumentViewer/DocumentViewer.styles.d.ts +10 -10
- package/dist/ui/DocumentViewer/DocumentViewerPDF.d.ts.map +1 -1
- package/dist/ui/DocumentViewer/DocumentViewerPDF.js +4 -7
- package/dist/ui/DragAndDropFile/DragAndDropFile.d.ts +9 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.d.ts.map +1 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.js +50 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.stories.d.ts +102 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.stories.d.ts.map +1 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.stories.js +17 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.stories.sources.d.ts +10 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.stories.sources.d.ts.map +1 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.stories.sources.js +10 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.styles.d.ts +89 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.styles.d.ts.map +1 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.styles.js +89 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.web.d.ts +4 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.web.d.ts.map +1 -0
- package/dist/ui/DragAndDropFile/DragAndDropFile.web.js +175 -0
- package/dist/ui/DragAndDropFile/index.d.ts +2 -0
- package/dist/ui/DragAndDropFile/index.d.ts.map +1 -0
- package/dist/ui/DragAndDropFile/index.js +1 -0
- package/dist/ui/EmailField/EmailField.d.ts +20 -0
- package/dist/ui/EmailField/EmailField.d.ts.map +1 -0
- package/dist/ui/EmailField/EmailField.js +8 -0
- package/dist/ui/EmailField/EmailField.stories.d.ts +25 -0
- package/dist/ui/EmailField/EmailField.stories.d.ts.map +1 -0
- package/dist/ui/EmailField/EmailField.stories.js +13 -0
- package/dist/ui/EmailField/EmailField.stories.sources.d.ts +6 -0
- package/dist/ui/EmailField/EmailField.stories.sources.d.ts.map +1 -0
- package/dist/ui/EmailField/EmailField.stories.sources.js +6 -0
- package/dist/ui/EmailField/index.d.ts +2 -0
- package/dist/ui/EmailField/index.d.ts.map +1 -0
- package/dist/ui/EmailField/index.js +1 -0
- package/dist/ui/EmailInput/EmailInput.d.ts +16 -0
- package/dist/ui/EmailInput/EmailInput.d.ts.map +1 -0
- package/dist/ui/EmailInput/EmailInput.js +10 -0
- package/dist/ui/EmailInput/EmailInput.stories.d.ts +21 -0
- package/dist/ui/EmailInput/EmailInput.stories.d.ts.map +1 -0
- package/dist/ui/EmailInput/EmailInput.stories.js +13 -0
- package/dist/ui/EmailInput/EmailInput.stories.sources.d.ts +6 -0
- package/dist/ui/EmailInput/EmailInput.stories.sources.d.ts.map +1 -0
- package/dist/ui/EmailInput/EmailInput.stories.sources.js +6 -0
- package/dist/ui/EmailInput/index.d.ts +2 -0
- package/dist/ui/EmailInput/index.d.ts.map +1 -0
- package/dist/ui/EmailInput/index.js +1 -0
- package/dist/ui/EmptyState/EmptyState.stories.d.ts +4 -4
- package/dist/ui/EmptyState/EmptyState.styles.d.ts +4 -4
- package/dist/ui/FileField/FileField.d.ts +5 -0
- package/dist/ui/FileField/FileField.d.ts.map +1 -0
- package/dist/ui/FileField/FileField.js +27 -0
- package/dist/ui/FileField/FileField.stories.d.ts +15 -0
- package/dist/ui/FileField/FileField.stories.d.ts.map +1 -0
- package/dist/ui/FileField/FileField.stories.js +15 -0
- package/dist/ui/FileField/FileField.stories.sources.d.ts +8 -0
- package/dist/ui/FileField/FileField.stories.sources.d.ts.map +1 -0
- package/dist/ui/FileField/FileField.stories.sources.js +8 -0
- package/dist/ui/FileField/FileField.styles.d.ts +4 -0
- package/dist/ui/FileField/FileField.styles.d.ts.map +1 -0
- package/dist/ui/FileField/FileField.styles.js +4 -0
- package/dist/ui/FileField/index.d.ts +2 -0
- package/dist/ui/FileField/index.d.ts.map +1 -0
- package/dist/ui/FileField/index.js +1 -0
- package/dist/ui/FormControl/FormControl.stories.d.ts +17 -17
- package/dist/ui/FormControl/FormControl.stories.js +3 -3
- package/dist/ui/FormControl/FormControl.stories.sources.d.ts.map +1 -1
- package/dist/ui/FormControl/FormControl.stories.sources.js +3 -3
- package/dist/ui/FormControl/FormControl.styles.d.ts +17 -17
- package/dist/ui/FormControl/FormControlFileInput.d.ts.map +1 -1
- package/dist/ui/FormControl/FormControlFileInput.styles.d.ts +6 -6
- package/dist/ui/FormControl/TextInput.d.ts.map +1 -1
- package/dist/ui/Header/Header.stories.d.ts +10 -6
- package/dist/ui/Header/Header.stories.d.ts.map +1 -1
- package/dist/ui/Header/Header.styles.d.ts +10 -6
- package/dist/ui/Header/Header.styles.d.ts.map +1 -1
- package/dist/ui/Header/Header.styles.js +1 -0
- package/dist/ui/InputButtonAdornment/InputButtonAdornment.d.ts +9 -0
- package/dist/ui/InputButtonAdornment/InputButtonAdornment.d.ts.map +1 -0
- package/dist/ui/InputButtonAdornment/InputButtonAdornment.js +13 -0
- package/dist/ui/InputButtonAdornment/InputButtonAdornment.stories.d.ts +23 -0
- package/dist/ui/InputButtonAdornment/InputButtonAdornment.stories.d.ts.map +1 -0
- package/dist/ui/InputButtonAdornment/InputButtonAdornment.stories.js +16 -0
- package/dist/ui/InputButtonAdornment/InputButtonAdornment.stories.sources.d.ts +8 -0
- package/dist/ui/InputButtonAdornment/InputButtonAdornment.stories.sources.d.ts.map +1 -0
- package/dist/ui/InputButtonAdornment/InputButtonAdornment.stories.sources.js +8 -0
- package/dist/ui/InputButtonAdornment/InputButtonAdornment.styles.d.ts +12 -0
- package/dist/ui/InputButtonAdornment/InputButtonAdornment.styles.d.ts.map +1 -0
- package/dist/ui/InputButtonAdornment/InputButtonAdornment.styles.js +12 -0
- package/dist/ui/InputButtonAdornment/index.d.ts +2 -0
- package/dist/ui/InputButtonAdornment/index.d.ts.map +1 -0
- package/dist/ui/InputButtonAdornment/index.js +1 -0
- package/dist/ui/ListItem/ListItem.stories.d.ts +7 -7
- package/dist/ui/ListItem/ListItem.styles.d.ts +7 -7
- package/dist/ui/LucideIcon/LucideIcon.d.ts +3 -1
- package/dist/ui/LucideIcon/LucideIcon.d.ts.map +1 -1
- package/dist/ui/LucideIcon/LucideIcon.js +24 -4
- package/dist/ui/LucideIcon/LucideIcon.props.d.ts +8560 -9
- package/dist/ui/LucideIcon/LucideIcon.props.d.ts.map +1 -1
- package/dist/ui/LucideIcon/LucideIcon.props.js +1 -1
- package/dist/ui/LucideIcon/LucideIcon.stories.d.ts +4280 -4
- package/dist/ui/LucideIcon/LucideIcon.stories.d.ts.map +1 -1
- package/dist/ui/LucideIcon/LucideIcon.stories.js +2 -0
- package/dist/ui/LucideIcon/LucideIcon.stories.sources.d.ts +2 -0
- package/dist/ui/LucideIcon/LucideIcon.stories.sources.d.ts.map +1 -1
- package/dist/ui/LucideIcon/LucideIcon.stories.sources.js +2 -0
- package/dist/ui/NumberField/NumberField.d.ts +14 -0
- package/dist/ui/NumberField/NumberField.d.ts.map +1 -0
- package/dist/ui/NumberField/NumberField.js +13 -0
- package/dist/ui/NumberField/NumberField.stories.d.ts +14 -0
- package/dist/ui/NumberField/NumberField.stories.d.ts.map +1 -0
- package/dist/ui/NumberField/NumberField.stories.js +18 -0
- package/dist/ui/NumberField/NumberField.stories.sources.d.ts +6 -0
- package/dist/ui/NumberField/NumberField.stories.sources.d.ts.map +1 -0
- package/dist/ui/NumberField/NumberField.stories.sources.js +6 -0
- package/dist/ui/NumberField/NumberField.styles.d.ts +4 -0
- package/dist/ui/NumberField/NumberField.styles.d.ts.map +1 -0
- package/dist/ui/NumberField/NumberField.styles.js +4 -0
- package/dist/ui/NumberField/NumberField.web.d.ts +4 -0
- package/dist/ui/NumberField/NumberField.web.d.ts.map +1 -0
- package/dist/ui/NumberField/NumberField.web.js +10 -0
- package/dist/ui/NumberField/NumberFieldControlButton.d.ts +8 -0
- package/dist/ui/NumberField/NumberFieldControlButton.d.ts.map +1 -0
- package/dist/ui/NumberField/NumberFieldControlButton.js +6 -0
- package/dist/ui/NumberField/index.d.ts +2 -0
- package/dist/ui/NumberField/index.d.ts.map +1 -0
- package/dist/ui/NumberField/index.js +1 -0
- package/dist/ui/OtpField/OtpField.d.ts +15 -0
- package/dist/ui/OtpField/OtpField.d.ts.map +1 -0
- package/dist/ui/OtpField/OtpField.js +18 -0
- package/dist/ui/OtpField/OtpField.stories.d.ts +57 -0
- package/dist/ui/OtpField/OtpField.stories.d.ts.map +1 -0
- package/dist/ui/OtpField/OtpField.stories.js +14 -0
- package/dist/ui/OtpField/OtpField.stories.sources.d.ts +6 -0
- package/dist/ui/OtpField/OtpField.stories.sources.d.ts.map +1 -0
- package/dist/ui/OtpField/OtpField.stories.sources.js +6 -0
- package/dist/ui/OtpField/OtpField.styles.d.ts +39 -0
- package/dist/ui/OtpField/OtpField.styles.d.ts.map +1 -0
- package/dist/ui/OtpField/OtpField.styles.js +35 -0
- package/dist/ui/OtpField/index.d.ts +2 -0
- package/dist/ui/OtpField/index.d.ts.map +1 -0
- package/dist/ui/OtpField/index.js +1 -0
- package/dist/ui/PageHeader/PageHeader.d.ts.map +1 -1
- package/dist/ui/PageHeader/PageHeader.js +1 -1
- package/dist/ui/PageHeader/PageHeader.stories.d.ts +1 -1
- package/dist/ui/PageHeader/PageHeader.stories.js +1 -1
- package/dist/ui/PageHeader/PageHeader.styles.d.ts +1 -1
- package/dist/ui/PasswordField/PasswordField.d.ts +20 -0
- package/dist/ui/PasswordField/PasswordField.d.ts.map +1 -0
- package/dist/ui/PasswordField/PasswordField.js +10 -0
- package/dist/ui/PasswordField/PasswordField.stories.d.ts +33 -0
- package/dist/ui/PasswordField/PasswordField.stories.d.ts.map +1 -0
- package/dist/ui/PasswordField/PasswordField.stories.js +14 -0
- package/dist/ui/PasswordField/PasswordField.stories.sources.d.ts +6 -0
- package/dist/ui/PasswordField/PasswordField.stories.sources.d.ts.map +1 -0
- package/dist/ui/PasswordField/PasswordField.stories.sources.js +6 -0
- package/dist/ui/PasswordField/PasswordField.styles.d.ts +10 -0
- package/dist/ui/PasswordField/PasswordField.styles.d.ts.map +1 -0
- package/dist/ui/PasswordField/PasswordField.styles.js +10 -0
- package/dist/ui/PasswordField/index.d.ts +2 -0
- package/dist/ui/PasswordField/index.d.ts.map +1 -0
- package/dist/ui/PasswordField/index.js +1 -0
- package/dist/ui/PhoneField/PhoneField.d.ts +20 -0
- package/dist/ui/PhoneField/PhoneField.d.ts.map +1 -0
- package/dist/ui/PhoneField/PhoneField.js +8 -0
- package/dist/ui/PhoneField/PhoneField.stories.d.ts +25 -0
- package/dist/ui/PhoneField/PhoneField.stories.d.ts.map +1 -0
- package/dist/ui/PhoneField/PhoneField.stories.js +13 -0
- package/dist/ui/PhoneField/PhoneField.stories.sources.d.ts +6 -0
- package/dist/ui/PhoneField/PhoneField.stories.sources.d.ts.map +1 -0
- package/dist/ui/PhoneField/PhoneField.stories.sources.js +6 -0
- package/dist/ui/PhoneField/index.d.ts +2 -0
- package/dist/ui/PhoneField/index.d.ts.map +1 -0
- package/dist/ui/PhoneField/index.js +1 -0
- package/dist/ui/PhoneInput/PhoneInput.d.ts +16 -0
- package/dist/ui/PhoneInput/PhoneInput.d.ts.map +1 -0
- package/dist/ui/PhoneInput/PhoneInput.js +7 -0
- package/dist/ui/PhoneInput/PhoneInput.stories.d.ts +21 -0
- package/dist/ui/PhoneInput/PhoneInput.stories.d.ts.map +1 -0
- package/dist/ui/PhoneInput/PhoneInput.stories.js +13 -0
- package/dist/ui/PhoneInput/PhoneInput.stories.sources.d.ts +6 -0
- package/dist/ui/PhoneInput/PhoneInput.stories.sources.d.ts.map +1 -0
- package/dist/ui/PhoneInput/PhoneInput.stories.sources.js +6 -0
- package/dist/ui/PhoneInput/index.d.ts +2 -0
- package/dist/ui/PhoneInput/index.d.ts.map +1 -0
- package/dist/ui/PhoneInput/index.js +1 -0
- package/dist/ui/Popover/Popover.stories.d.ts +6 -6
- package/dist/ui/Popover/Popover.styles.d.ts +6 -6
- package/dist/ui/PriceInput/PriceInput.css +9 -0
- package/dist/ui/PriceInput/PriceInput.d.ts +14 -0
- package/dist/ui/PriceInput/PriceInput.d.ts.map +1 -0
- package/dist/ui/PriceInput/PriceInput.js +16 -0
- package/dist/ui/PriceInput/PriceInput.stories.d.ts +51 -0
- package/dist/ui/PriceInput/PriceInput.stories.d.ts.map +1 -0
- package/dist/ui/PriceInput/PriceInput.stories.js +19 -0
- package/dist/ui/PriceInput/PriceInput.stories.sources.d.ts +6 -0
- package/dist/ui/PriceInput/PriceInput.stories.sources.d.ts.map +1 -0
- package/dist/ui/PriceInput/PriceInput.stories.sources.js +6 -0
- package/dist/ui/PriceInput/PriceInput.styles.d.ts +36 -0
- package/dist/ui/PriceInput/PriceInput.styles.d.ts.map +1 -0
- package/dist/ui/PriceInput/PriceInput.styles.js +32 -0
- package/dist/ui/PriceInput/PriceInput.web.d.ts +8 -0
- package/dist/ui/PriceInput/PriceInput.web.d.ts.map +1 -0
- package/dist/ui/PriceInput/PriceInput.web.js +21 -0
- package/dist/ui/PriceInput/index.d.ts +2 -0
- package/dist/ui/PriceInput/index.d.ts.map +1 -0
- package/dist/ui/PriceInput/index.js +1 -0
- package/dist/ui/ProgressBar/ProgressBar.stories.d.ts +7 -7
- package/dist/ui/ProgressBar/ProgressBar.styles.d.ts +7 -7
- package/dist/ui/ProgressBar/ProgressBarDeterminate.js +1 -1
- package/dist/ui/ProgressBar/ProgressBarIndeterminate.js +1 -1
- package/dist/ui/ProgressBar/ProgressBarLoop.js +1 -1
- package/dist/ui/RadioGroup/RadioGroup.d.ts +21 -0
- package/dist/ui/RadioGroup/RadioGroup.d.ts.map +1 -0
- package/dist/ui/RadioGroup/RadioGroup.js +11 -0
- package/dist/ui/RadioGroup/RadioGroup.stories.d.ts +164 -0
- package/dist/ui/RadioGroup/RadioGroup.stories.d.ts.map +1 -0
- package/dist/ui/RadioGroup/RadioGroup.stories.js +23 -0
- package/dist/ui/RadioGroup/RadioGroup.stories.sources.d.ts +10 -0
- package/dist/ui/RadioGroup/RadioGroup.stories.sources.d.ts.map +1 -0
- package/dist/ui/RadioGroup/RadioGroup.stories.sources.js +10 -0
- package/dist/ui/RadioGroup/RadioGroup.styles.d.ts +140 -0
- package/dist/ui/RadioGroup/RadioGroup.styles.d.ts.map +1 -0
- package/dist/ui/RadioGroup/RadioGroup.styles.js +129 -0
- package/dist/ui/RadioGroup/RadioGroupCard.d.ts +12 -0
- package/dist/ui/RadioGroup/RadioGroupCard.d.ts.map +1 -0
- package/dist/ui/RadioGroup/RadioGroupCard.js +15 -0
- package/dist/ui/RadioGroup/RadioGroupContext.d.ts +8 -0
- package/dist/ui/RadioGroup/RadioGroupContext.d.ts.map +1 -0
- package/dist/ui/RadioGroup/RadioGroupContext.js +3 -0
- package/dist/ui/RadioGroup/RadioGroupItem.d.ts +8 -0
- package/dist/ui/RadioGroup/RadioGroupItem.d.ts.map +1 -0
- package/dist/ui/RadioGroup/RadioGroupItem.js +13 -0
- package/dist/ui/RadioGroup/RadioGroupItem.styles.d.ts +24 -0
- package/dist/ui/RadioGroup/RadioGroupItem.styles.d.ts.map +1 -0
- package/dist/ui/RadioGroup/RadioGroupItem.styles.js +20 -0
- package/dist/ui/RadioGroup/RadioInput.d.ts +7 -0
- package/dist/ui/RadioGroup/RadioInput.d.ts.map +1 -0
- package/dist/ui/RadioGroup/RadioInput.js +13 -0
- package/dist/ui/RadioGroup/index.d.ts +18 -0
- package/dist/ui/RadioGroup/index.d.ts.map +1 -0
- package/dist/ui/RadioGroup/index.js +7 -0
- package/dist/ui/ResourceList/ResourceList.stories.d.ts +2 -2
- package/dist/ui/ResourceList/ResourceList.styles.d.ts +2 -2
- package/dist/ui/Select/NativePicker.d.ts +16 -0
- package/dist/ui/Select/NativePicker.d.ts.map +1 -0
- package/dist/ui/Select/NativePicker.js +20 -0
- package/dist/ui/Select/Select.d.ts +24 -0
- package/dist/ui/Select/Select.d.ts.map +1 -0
- package/dist/ui/Select/Select.js +28 -0
- package/dist/ui/Select/Select.stories.d.ts +80 -0
- package/dist/ui/Select/Select.stories.d.ts.map +1 -0
- package/dist/ui/Select/Select.stories.js +24 -0
- package/dist/ui/Select/Select.stories.sources.d.ts +8 -0
- package/dist/ui/Select/Select.stories.sources.d.ts.map +1 -0
- package/dist/ui/Select/Select.stories.sources.js +8 -0
- package/dist/ui/Select/Select.styles.d.ts +60 -0
- package/dist/ui/Select/Select.styles.d.ts.map +1 -0
- package/dist/ui/Select/Select.styles.js +57 -0
- package/dist/ui/Select/SelectInput.d.ts +11 -0
- package/dist/ui/Select/SelectInput.d.ts.map +1 -0
- package/dist/ui/Select/SelectInput.ios.d.ts +9 -0
- package/dist/ui/Select/SelectInput.ios.d.ts.map +1 -0
- package/dist/ui/Select/SelectInput.ios.js +28 -0
- package/dist/ui/Select/SelectInput.js +6 -0
- package/dist/ui/Select/index.d.ts +7 -0
- package/dist/ui/Select/index.d.ts.map +1 -0
- package/dist/ui/Select/index.js +3 -0
- package/dist/ui/SelectMultiple/SelectMultiple.d.ts +14 -0
- package/dist/ui/SelectMultiple/SelectMultiple.d.ts.map +1 -0
- package/dist/ui/SelectMultiple/SelectMultiple.js +6 -0
- package/dist/ui/SelectMultiple/SelectMultiple.stories.d.ts +77 -0
- package/dist/ui/SelectMultiple/SelectMultiple.stories.d.ts.map +1 -0
- package/dist/ui/SelectMultiple/SelectMultiple.stories.js +25 -0
- package/dist/ui/SelectMultiple/SelectMultiple.stories.sources.d.ts +8 -0
- package/dist/ui/SelectMultiple/SelectMultiple.stories.sources.d.ts.map +1 -0
- package/dist/ui/SelectMultiple/SelectMultiple.stories.sources.js +8 -0
- package/dist/ui/SelectMultiple/SelectMultiple.styles.d.ts +66 -0
- package/dist/ui/SelectMultiple/SelectMultiple.styles.d.ts.map +1 -0
- package/dist/ui/SelectMultiple/SelectMultiple.styles.js +66 -0
- package/dist/ui/SelectMultiple/SelectMultiple.web.d.ts +14 -0
- package/dist/ui/SelectMultiple/SelectMultiple.web.d.ts.map +1 -0
- package/dist/ui/SelectMultiple/SelectMultiple.web.js +49 -0
- package/dist/ui/SelectMultiple/index.d.ts +3 -0
- package/dist/ui/SelectMultiple/index.d.ts.map +1 -0
- package/dist/ui/SelectMultiple/index.js +1 -0
- package/dist/ui/Sidebar/Sidebar.stories.d.ts +19 -19
- package/dist/ui/Sidebar/Sidebar.styles.d.ts +19 -19
- package/dist/ui/Signature/Signature.stories.d.ts +2 -2
- package/dist/ui/Signature/Signature.styles.d.ts +2 -2
- package/dist/ui/Signature/Signature.web.d.ts.map +1 -1
- package/dist/ui/Signature/Signature.web.js +5 -2
- package/dist/ui/Switch/Switch.d.ts +20 -0
- package/dist/ui/Switch/Switch.d.ts.map +1 -0
- package/dist/ui/Switch/Switch.js +42 -0
- package/dist/ui/Switch/Switch.stories.d.ts +73 -0
- package/dist/ui/Switch/Switch.stories.d.ts.map +1 -0
- package/dist/ui/Switch/Switch.stories.js +19 -0
- package/dist/ui/Switch/Switch.stories.sources.d.ts +8 -0
- package/dist/ui/Switch/Switch.stories.sources.d.ts.map +1 -0
- package/dist/ui/Switch/Switch.stories.sources.js +8 -0
- package/dist/ui/Switch/Switch.styles.d.ts +55 -0
- package/dist/ui/Switch/Switch.styles.d.ts.map +1 -0
- package/dist/ui/Switch/Switch.styles.js +51 -0
- package/dist/ui/Switch/index.d.ts +2 -0
- package/dist/ui/Switch/index.d.ts.map +1 -0
- package/dist/ui/Switch/index.js +1 -0
- package/dist/ui/Tabs/Tabs.d.ts.map +1 -1
- package/dist/ui/Tabs/Tabs.js +2 -2
- package/dist/ui/Tabs/Tabs.stories.d.ts +5 -17
- package/dist/ui/Tabs/Tabs.stories.d.ts.map +1 -1
- package/dist/ui/Tabs/Tabs.styles.d.ts +5 -17
- package/dist/ui/Tabs/Tabs.styles.d.ts.map +1 -1
- package/dist/ui/Tabs/Tabs.styles.js +0 -8
- package/dist/ui/Tag/Tag.stories.d.ts +4 -4
- package/dist/ui/Tag/Tag.styles.d.ts +4 -4
- package/dist/ui/TextField/TextField.d.ts +22 -0
- package/dist/ui/TextField/TextField.d.ts.map +1 -0
- package/dist/ui/TextField/TextField.js +14 -0
- package/dist/ui/TextField/TextField.stories.d.ts +29 -0
- package/dist/ui/TextField/TextField.stories.d.ts.map +1 -0
- package/dist/ui/TextField/TextField.stories.js +15 -0
- package/dist/ui/TextField/TextField.stories.sources.d.ts +8 -0
- package/dist/ui/TextField/TextField.stories.sources.d.ts.map +1 -0
- package/dist/ui/TextField/TextField.stories.sources.js +8 -0
- package/dist/ui/TextField/TextField.styles.d.ts +4 -0
- package/dist/ui/TextField/TextField.styles.d.ts.map +1 -0
- package/dist/ui/TextField/TextField.styles.js +4 -0
- package/dist/ui/TextField/index.d.ts +2 -0
- package/dist/ui/TextField/index.d.ts.map +1 -0
- package/dist/ui/TextField/index.js +1 -0
- package/dist/ui/TextInputArray/TextInputArray.d.ts +21 -0
- package/dist/ui/TextInputArray/TextInputArray.d.ts.map +1 -0
- package/dist/ui/TextInputArray/TextInputArray.js +53 -0
- package/dist/ui/TextInputArray/TextInputArray.stories.d.ts +13 -0
- package/dist/ui/TextInputArray/TextInputArray.stories.d.ts.map +1 -0
- package/dist/ui/TextInputArray/TextInputArray.stories.js +24 -0
- package/dist/ui/TextInputArray/TextInputArray.stories.sources.d.ts +8 -0
- package/dist/ui/TextInputArray/TextInputArray.stories.sources.d.ts.map +1 -0
- package/dist/ui/TextInputArray/TextInputArray.stories.sources.js +8 -0
- package/dist/ui/TextInputArray/index.d.ts +2 -0
- package/dist/ui/TextInputArray/index.d.ts.map +1 -0
- package/dist/ui/TextInputArray/index.js +1 -0
- package/dist/ui/TextareaField/TextareaField.d.ts +22 -0
- package/dist/ui/TextareaField/TextareaField.d.ts.map +1 -0
- package/dist/ui/TextareaField/TextareaField.js +8 -0
- package/dist/ui/TextareaField/TextareaField.stories.d.ts +26 -0
- package/dist/ui/TextareaField/TextareaField.stories.d.ts.map +1 -0
- package/dist/ui/TextareaField/TextareaField.stories.js +13 -0
- package/dist/ui/TextareaField/TextareaField.stories.sources.d.ts +6 -0
- package/dist/ui/TextareaField/TextareaField.stories.sources.d.ts.map +1 -0
- package/dist/ui/TextareaField/TextareaField.stories.sources.js +6 -0
- package/dist/ui/TextareaField/index.d.ts +2 -0
- package/dist/ui/TextareaField/index.d.ts.map +1 -0
- package/dist/ui/TextareaField/index.js +1 -0
- package/dist/ui/TextareaInput/TextareaInput.d.ts +25 -0
- package/dist/ui/TextareaInput/TextareaInput.d.ts.map +1 -0
- package/dist/ui/TextareaInput/TextareaInput.js +7 -0
- package/dist/ui/TextareaInput/TextareaInput.stories.d.ts +29 -0
- package/dist/ui/TextareaInput/TextareaInput.stories.d.ts.map +1 -0
- package/dist/ui/TextareaInput/TextareaInput.stories.js +13 -0
- package/dist/ui/TextareaInput/TextareaInput.stories.sources.d.ts +6 -0
- package/dist/ui/TextareaInput/TextareaInput.stories.sources.d.ts.map +1 -0
- package/dist/ui/TextareaInput/TextareaInput.stories.sources.js +6 -0
- package/dist/ui/TextareaInput/index.d.ts +2 -0
- package/dist/ui/TextareaInput/index.d.ts.map +1 -0
- package/dist/ui/TextareaInput/index.js +1 -0
- package/dist/ui/Toast/Toast.d.ts +13 -2
- package/dist/ui/Toast/Toast.d.ts.map +1 -1
- package/dist/ui/Toast/Toast.js +6 -35
- package/dist/ui/Toast/Toast.stories.d.ts +39 -21
- package/dist/ui/Toast/Toast.stories.d.ts.map +1 -1
- package/dist/ui/Toast/Toast.stories.js +12 -3
- package/dist/ui/Toast/Toast.stories.sources.d.ts +16 -0
- package/dist/ui/Toast/Toast.stories.sources.d.ts.map +1 -1
- package/dist/ui/Toast/Toast.stories.sources.js +17 -1
- package/dist/ui/Toast/Toast.styles.d.ts +31 -21
- package/dist/ui/Toast/Toast.styles.d.ts.map +1 -1
- package/dist/ui/Toast/Toast.styles.js +29 -19
- package/dist/ui/Toast/ToastContext.d.ts +1 -1
- package/dist/ui/Toast/ToastContext.d.ts.map +1 -1
- package/dist/ui/Toast/ToastType.d.ts +11 -0
- package/dist/ui/Toast/ToastType.d.ts.map +1 -0
- package/dist/ui/Toast/ToastType.js +46 -0
- package/dist/ui/ToolbarBottomNav/ToolbarBottomNav.stories.d.ts +4 -4
- package/dist/ui/ToolbarBottomNav/ToolbarBottomNav.styles.d.ts +4 -4
- package/dist/ui/ToolbarTop/ToolbarTop.stories.d.ts +3 -3
- package/dist/ui/ToolbarTop/ToolbarTop.styles.d.ts +3 -3
- package/dist/ui/index.d.ts +24 -0
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +24 -0
- package/package.json +37 -26
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Box, FormControlCaption, FormControlFileInput, FormControlHint, FormControlLabel, LucideIcon, } from '@alveole/components';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { Alert } from '../../core/Alert';
|
|
5
|
+
import { useStyles } from './DragAndDropFile.styles';
|
|
6
|
+
function fileMatchesType(file, types) {
|
|
7
|
+
if (!types || types.length === 0)
|
|
8
|
+
return true;
|
|
9
|
+
const mime = file.type || '';
|
|
10
|
+
const wantsImage = types.includes('image');
|
|
11
|
+
const wantsPdf = types.includes('pdf');
|
|
12
|
+
const wantsCsv = types.includes('csv');
|
|
13
|
+
if (wantsImage && mime.startsWith('image/'))
|
|
14
|
+
return true;
|
|
15
|
+
if (wantsPdf && (mime === 'application/pdf' || mime.endsWith('/pdf')))
|
|
16
|
+
return true;
|
|
17
|
+
if (wantsCsv && (mime === 'text/csv' || mime === 'application/csv' || file.name?.endsWith('.csv')))
|
|
18
|
+
return true;
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
21
|
+
function fileToDocumentPickerAsset(file) {
|
|
22
|
+
const uri = URL.createObjectURL(file);
|
|
23
|
+
return {
|
|
24
|
+
uri,
|
|
25
|
+
name: file.name,
|
|
26
|
+
size: file.size,
|
|
27
|
+
mimeType: file.type || 'application/octet-stream',
|
|
28
|
+
file,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
function filesToDocumentPickerAssets(files) {
|
|
32
|
+
return files.map(file => fileToDocumentPickerAsset(file));
|
|
33
|
+
}
|
|
34
|
+
export const DragAndDropFile = (props) => {
|
|
35
|
+
const { value, label, hint, icon, type, error, success, onChange, multiple } = props;
|
|
36
|
+
const styles = useStyles();
|
|
37
|
+
const [isOver, setIsOver] = React.useState(false);
|
|
38
|
+
const [isMouthOver, setIsMouthOver] = React.useState(false);
|
|
39
|
+
const [forceOpen, setForceOpen] = React.useState(false);
|
|
40
|
+
const onValueChange = v => {
|
|
41
|
+
if (type == null)
|
|
42
|
+
return onChange(v);
|
|
43
|
+
if (multiple && Array.isArray(v)) {
|
|
44
|
+
const invalidFiles = v.filter(file => {
|
|
45
|
+
const mimeType = file?.mimeType;
|
|
46
|
+
const fileName = file?.name;
|
|
47
|
+
if (mimeType == null)
|
|
48
|
+
return true;
|
|
49
|
+
return !((type.includes('image') && mimeType.startsWith('image')) ||
|
|
50
|
+
(type.includes('pdf') && mimeType.endsWith('pdf')) ||
|
|
51
|
+
(type.includes('csv') &&
|
|
52
|
+
(mimeType === 'text/csv' || mimeType === 'application/csv' || fileName?.endsWith('.csv'))));
|
|
53
|
+
});
|
|
54
|
+
if (invalidFiles.length > 0) {
|
|
55
|
+
Alert.alert({ title: 'Type de fichier incorrect', message: `Certains fichiers ne sont pas pris en charge` });
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
return onChange(v);
|
|
59
|
+
}
|
|
60
|
+
const mimeType = v?.mimeType;
|
|
61
|
+
if (mimeType == null)
|
|
62
|
+
return onChange(v);
|
|
63
|
+
const fileName = v?.name;
|
|
64
|
+
if ((type.includes('image') && mimeType.startsWith('image')) ||
|
|
65
|
+
(type.includes('pdf') && mimeType.endsWith('pdf')) ||
|
|
66
|
+
(type.includes('csv') &&
|
|
67
|
+
(mimeType === 'text/csv' || mimeType === 'application/csv' || fileName?.endsWith('.csv'))))
|
|
68
|
+
return onChange(v);
|
|
69
|
+
Alert.alert({ title: 'Type de fichier incorrect', message: `Le format du fichier n'est pas pris en charge` });
|
|
70
|
+
};
|
|
71
|
+
const emitFile = React.useCallback((file) => {
|
|
72
|
+
if (!fileMatchesType(file, type)) {
|
|
73
|
+
Alert.alert({ title: 'Type de fichier incorrect', message: `Le format du fichier n'est pas pris en charge` });
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
const asset = fileToDocumentPickerAsset(file);
|
|
77
|
+
onValueChange?.(asset);
|
|
78
|
+
},
|
|
79
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
80
|
+
[type]);
|
|
81
|
+
const emitFiles = React.useCallback((files) => {
|
|
82
|
+
const validFiles = files.filter(file => fileMatchesType(file, type));
|
|
83
|
+
const invalidFiles = files.filter(file => !fileMatchesType(file, type));
|
|
84
|
+
if (invalidFiles.length > 0) {
|
|
85
|
+
Alert.alert({ title: 'Type de fichier incorrect', message: `Certains fichiers ne sont pas pris en charge` });
|
|
86
|
+
}
|
|
87
|
+
if (validFiles.length > 0) {
|
|
88
|
+
const assets = filesToDocumentPickerAssets(validFiles);
|
|
89
|
+
onValueChange?.(assets);
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
93
|
+
[type]);
|
|
94
|
+
const onDrop = React.useCallback((e) => {
|
|
95
|
+
e.preventDefault();
|
|
96
|
+
e.stopPropagation();
|
|
97
|
+
setIsOver(false);
|
|
98
|
+
const dt = e.dataTransfer;
|
|
99
|
+
const files = [];
|
|
100
|
+
if (dt?.items?.length) {
|
|
101
|
+
for (let i = 0; i < dt.items.length; i++) {
|
|
102
|
+
const it = dt.items[i];
|
|
103
|
+
if (it.kind === 'file') {
|
|
104
|
+
const f = it.getAsFile();
|
|
105
|
+
if (f)
|
|
106
|
+
files.push(f);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
else if (dt?.files?.length) {
|
|
111
|
+
for (let i = 0; i < dt.files.length; i++) {
|
|
112
|
+
const f = dt.files[i];
|
|
113
|
+
if (f)
|
|
114
|
+
files.push(f);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
if (files.length > 0) {
|
|
118
|
+
if (multiple)
|
|
119
|
+
emitFiles(files);
|
|
120
|
+
else
|
|
121
|
+
emitFile(files[0]);
|
|
122
|
+
}
|
|
123
|
+
}, [emitFile, emitFiles, multiple]);
|
|
124
|
+
const onDragOver = React.useCallback((e) => {
|
|
125
|
+
e.preventDefault();
|
|
126
|
+
if (!isOver)
|
|
127
|
+
setIsOver(true);
|
|
128
|
+
}, [isOver]);
|
|
129
|
+
const onDragLeave = React.useCallback((e) => {
|
|
130
|
+
e.preventDefault();
|
|
131
|
+
if (isOver)
|
|
132
|
+
setIsOver(false);
|
|
133
|
+
}, [isOver]);
|
|
134
|
+
const onMouseOver = React.useCallback((e) => {
|
|
135
|
+
e.preventDefault();
|
|
136
|
+
if (!isMouthOver)
|
|
137
|
+
setIsMouthOver(true);
|
|
138
|
+
}, [isMouthOver]);
|
|
139
|
+
const onMouseLeave = React.useCallback((e) => {
|
|
140
|
+
e.preventDefault();
|
|
141
|
+
if (isMouthOver)
|
|
142
|
+
setIsMouthOver(false);
|
|
143
|
+
}, [isMouthOver]);
|
|
144
|
+
React.useEffect(() => {
|
|
145
|
+
return () => {
|
|
146
|
+
if (Array.isArray(value)) {
|
|
147
|
+
value.forEach(file => {
|
|
148
|
+
const uri = file?.uri;
|
|
149
|
+
if (uri?.startsWith('blob:'))
|
|
150
|
+
try {
|
|
151
|
+
URL.revokeObjectURL(uri);
|
|
152
|
+
}
|
|
153
|
+
catch { }
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
else {
|
|
157
|
+
const uri = value?.uri;
|
|
158
|
+
if (uri?.startsWith('blob:'))
|
|
159
|
+
try {
|
|
160
|
+
URL.revokeObjectURL(uri);
|
|
161
|
+
}
|
|
162
|
+
catch { }
|
|
163
|
+
}
|
|
164
|
+
};
|
|
165
|
+
}, [value]);
|
|
166
|
+
const styleContainer = React.useMemo(() => ({
|
|
167
|
+
...styles.container,
|
|
168
|
+
...(isMouthOver ? styles.containerMouseHover : {}),
|
|
169
|
+
...(isOver ? styles.containerHover : {}),
|
|
170
|
+
...(error ? styles.containerError : {}),
|
|
171
|
+
}),
|
|
172
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
173
|
+
[error, isMouthOver, isOver]);
|
|
174
|
+
return (_jsxs("div", { tabIndex: 0, onDrop: onDrop, onDragOver: onDragOver, onDragEnter: onDragOver, onDragLeave: onDragLeave, onMouseOver: onMouseOver, onMouseEnter: onMouseOver, onMouseLeave: onMouseLeave, onClick: () => setForceOpen(true), style: styleContainer, children: [_jsx(Box, { tag: "drag-and-drop-file-icon", display: "flex", flexDirection: "row", justify: "center", children: _jsx(LucideIcon, { size: "xl", name: icon ?? 'Upload', style: styles.icon }) }), _jsx(Box, { tag: "drag-and-drop-file-label", display: "flex", flexDirection: "row", justify: "center", children: _jsx(FormControlLabel, { label: label }) }), _jsx(Box, { tag: "drag-and-drop-file-hint", display: "flex", flexDirection: "row", justify: "center", children: hint && _jsx(FormControlHint, { hint: hint }) }), _jsx(Box, { tag: "drag-and-drop-file-input", display: "flex", flexDirection: "row", justify: "center", children: _jsx(Box, { pt: 16, children: _jsx(FormControlFileInput, { ...props, canChange: false, onChange: onValueChange, reopen: forceOpen, onPickStart: () => setForceOpen(false), multiple: multiple, type: type }) }) }), (error || success) && (_jsx(Box, { tag: "drag-and-drop-file-error", style: styles.webError, children: _jsx(FormControlCaption, { ...props }) }))] }));
|
|
175
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/DragAndDropFile/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './DragAndDropFile';
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { FormControlCaptionProps, FormControlHintProps, FormControlLabelProps, TextInputProps } from '@alveole/components';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
export type EmailFieldProps = TextInputProps & FormControlLabelProps & FormControlHintProps & FormControlCaptionProps & {
|
|
4
|
+
onChange?: TextInputProps['onChangeText'];
|
|
5
|
+
};
|
|
6
|
+
export declare const EmailField: React.ForwardRefExoticComponent<Omit<import("react-native").TextInputProps, "style"> & {
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
startAdornment?: React.ReactNode;
|
|
9
|
+
endAdornment?: React.ReactNode;
|
|
10
|
+
openModal?: boolean;
|
|
11
|
+
modalSubmitLabel?: string;
|
|
12
|
+
onModalSubmit?: () => void;
|
|
13
|
+
} & {
|
|
14
|
+
label: string;
|
|
15
|
+
labelRight?: React.ReactNode;
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
} & FormControlCaptionProps & FormControlHintProps & {
|
|
18
|
+
onChange?: TextInputProps["onChangeText"];
|
|
19
|
+
} & React.RefAttributes<import("react-native").TextInput>>;
|
|
20
|
+
//# sourceMappingURL=EmailField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailField.d.ts","sourceRoot":"","sources":["../../../src/ui/EmailField/EmailField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,uBAAuB,EAEvB,oBAAoB,EAEpB,qBAAqB,EAGrB,cAAc,EACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,MAAM,eAAe,GAAG,cAAc,GAC1C,qBAAqB,GACrB,oBAAoB,GACpB,uBAAuB,GAAG;IACxB,QAAQ,CAAC,EAAE,cAAc,CAAC,cAAc,CAAC,CAAC;CAC3C,CAAC;AAEJ,eAAO,MAAM,UAAU;;;;;;;;;;;;eAHR,cAAc,CAAC,cAAc,CAAC;0DAoB3C,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { FormControl, FormControlCaption, FormControlHint, FormControlLabel, InputHeading, } from '@alveole/components';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { EmailInput } from '../EmailInput';
|
|
5
|
+
export const EmailField = React.forwardRef(function EmailField(props, ref) {
|
|
6
|
+
const { label, labelRight, hint, error, success, disabled, onChange } = props;
|
|
7
|
+
return (_jsxs(FormControl, { children: [_jsxs(InputHeading, { children: [label && (_jsx(FormControlLabel, { labelRight: labelRight, label: label, disabled: disabled, error: error, success: success })), hint && _jsx(FormControlHint, { hint: hint, disabled: disabled })] }), _jsx(EmailInput, { ref: ref, onChangeText: onChange, ...props }), (error || success) && _jsx(FormControlCaption, { error: error, success: success })] }));
|
|
8
|
+
});
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
title: string;
|
|
3
|
+
tags: "ui"[];
|
|
4
|
+
experimental: false;
|
|
5
|
+
description: string;
|
|
6
|
+
component: import("react").ForwardRefExoticComponent<Omit<import("react-native").TextInputProps, "style"> & {
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
startAdornment?: React.ReactNode;
|
|
9
|
+
endAdornment?: React.ReactNode;
|
|
10
|
+
openModal?: boolean;
|
|
11
|
+
modalSubmitLabel?: string;
|
|
12
|
+
onModalSubmit?: () => void;
|
|
13
|
+
} & {
|
|
14
|
+
label: string;
|
|
15
|
+
labelRight?: React.ReactNode;
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
} & import("..").FormControlCaptionProps & import("..").FormControlHintProps & {
|
|
18
|
+
onChange?: import("..").TextInputProps["onChangeText"];
|
|
19
|
+
} & import("react").RefAttributes<import("react-native").TextInput>>;
|
|
20
|
+
styleFn: () => {};
|
|
21
|
+
};
|
|
22
|
+
export default _default;
|
|
23
|
+
export declare const Default: () => import("react").JSX.Element;
|
|
24
|
+
export * as Sources from './EmailField.stories.sources';
|
|
25
|
+
//# sourceMappingURL=EmailField.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailField.stories.d.ts","sourceRoot":"","sources":["../../../src/ui/EmailField/EmailField.stories.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAIA,wBAOkB;AAElB,eAAO,MAAM,OAAO,mCAOnB,CAAC;AAEF,OAAO,KAAK,OAAO,MAAM,8BAA8B,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Box } from '../../core';
|
|
3
|
+
import { EmailField } from './EmailField';
|
|
4
|
+
export default {
|
|
5
|
+
title: 'EmailField',
|
|
6
|
+
tags: ['ui'],
|
|
7
|
+
experimental: false,
|
|
8
|
+
description: 'Champ email avec label. Clavier email, lowercase automatique.',
|
|
9
|
+
component: EmailField,
|
|
10
|
+
styleFn: () => ({}),
|
|
11
|
+
};
|
|
12
|
+
export const Default = () => (_jsxs(Box, { display: "flex", flexDirection: "column", gap: 24, children: [_jsx(EmailField, { label: "Email", placeholder: "jean@exemple.fr" }), _jsx(EmailField, { label: "Avec erreur", placeholder: "jean@exemple.fr", error: "Format invalide" }), _jsx(EmailField, { label: "Avec succ\u00E8s", value: "jean@exemple.fr", success: "Email valide" }), _jsx(EmailField, { label: "D\u00E9sactiv\u00E9", value: "jean@exemple.fr", disabled: true })] }));
|
|
13
|
+
export * as Sources from './EmailField.stories.sources';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailField.stories.sources.d.ts","sourceRoot":"","sources":["../../../src/ui/EmailField/EmailField.stories.sources.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,OAAO,cAAmc,CAAC;AAExd,eAAO,MAAM,YAAY;;CAEf,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,YAAY,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// This file is generated. Do not edit manually.
|
|
2
|
+
// Source: src/ui/EmailField/EmailField.stories.tsx
|
|
3
|
+
export const Default = () => "export const Default = () => (\n <Box display=\"flex\" flexDirection=\"column\" gap={24}>\n <EmailField label=\"Email\" placeholder=\"jean@exemple.fr\" />\n <EmailField label=\"Avec erreur\" placeholder=\"jean@exemple.fr\" error=\"Format invalide\" />\n <EmailField label=\"Avec succès\" value=\"jean@exemple.fr\" success=\"Email valide\" />\n <EmailField label=\"Désactivé\" value=\"jean@exemple.fr\" disabled />\n </Box>\n);";
|
|
4
|
+
export const storySources = {
|
|
5
|
+
Default,
|
|
6
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/EmailField/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './EmailField';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TextInputProps } from '@alveole/components';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
export type EmailInputProps = TextInputProps & {
|
|
4
|
+
onChange?: TextInputProps['onChangeText'];
|
|
5
|
+
};
|
|
6
|
+
export declare const EmailInput: React.ForwardRefExoticComponent<Omit<import("react-native").TextInputProps, "style"> & {
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
startAdornment?: React.ReactNode;
|
|
9
|
+
endAdornment?: React.ReactNode;
|
|
10
|
+
openModal?: boolean;
|
|
11
|
+
modalSubmitLabel?: string;
|
|
12
|
+
onModalSubmit?: () => void;
|
|
13
|
+
} & {
|
|
14
|
+
onChange?: TextInputProps["onChangeText"];
|
|
15
|
+
} & React.RefAttributes<import("react-native").TextInput>>;
|
|
16
|
+
//# sourceMappingURL=EmailInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailInput.d.ts","sourceRoot":"","sources":["../../../src/ui/EmailInput/EmailInput.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG;IAC7C,QAAQ,CAAC,EAAE,cAAc,CAAC,cAAc,CAAC,CAAC;CAC3C,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;eAHV,cAAc,CAAC,cAAc,CAAC;0DAuBzC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { TextInput } from '@alveole/components';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
export const EmailInput = React.forwardRef(function EmailInput(props, ref) {
|
|
5
|
+
const { onChange } = props;
|
|
6
|
+
const handleChange = value => {
|
|
7
|
+
onChange?.(value.toLowerCase());
|
|
8
|
+
};
|
|
9
|
+
return (_jsx(TextInput, { ref: ref, onChangeText: handleChange, keyboardType: "email-address", textContentType: "emailAddress", autoCapitalize: "none", autoComplete: "email", inputMode: "email", ...props, autoCorrect: false }));
|
|
10
|
+
});
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
title: string;
|
|
3
|
+
tags: "ui"[];
|
|
4
|
+
experimental: false;
|
|
5
|
+
description: string;
|
|
6
|
+
component: import("react").ForwardRefExoticComponent<Omit<import("react-native").TextInputProps, "style"> & {
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
startAdornment?: React.ReactNode;
|
|
9
|
+
endAdornment?: React.ReactNode;
|
|
10
|
+
openModal?: boolean;
|
|
11
|
+
modalSubmitLabel?: string;
|
|
12
|
+
onModalSubmit?: () => void;
|
|
13
|
+
} & {
|
|
14
|
+
onChange?: import("..").TextInputProps["onChangeText"];
|
|
15
|
+
} & import("react").RefAttributes<import("react-native").TextInput>>;
|
|
16
|
+
styleFn: () => {};
|
|
17
|
+
};
|
|
18
|
+
export default _default;
|
|
19
|
+
export declare const Default: () => import("react").JSX.Element;
|
|
20
|
+
export * as Sources from './EmailInput.stories.sources';
|
|
21
|
+
//# sourceMappingURL=EmailInput.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailInput.stories.d.ts","sourceRoot":"","sources":["../../../src/ui/EmailInput/EmailInput.stories.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAIA,wBAOkB;AAElB,eAAO,MAAM,OAAO,mCAMnB,CAAC;AAEF,OAAO,KAAK,OAAO,MAAM,8BAA8B,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Box } from '../../core';
|
|
3
|
+
import { EmailInput } from './EmailInput';
|
|
4
|
+
export default {
|
|
5
|
+
title: 'EmailInput',
|
|
6
|
+
tags: ['ui'],
|
|
7
|
+
experimental: false,
|
|
8
|
+
description: 'Input email brut (sans label). Clavier email, lowercase automatique.',
|
|
9
|
+
component: EmailInput,
|
|
10
|
+
styleFn: () => ({}),
|
|
11
|
+
};
|
|
12
|
+
export const Default = () => (_jsxs(Box, { display: "flex", flexDirection: "column", gap: 24, children: [_jsx(EmailInput, { placeholder: "jean@exemple.fr" }), _jsx(EmailInput, { placeholder: "jean@exemple.fr", value: "jean@exemple.fr" }), _jsx(EmailInput, { placeholder: "jean@exemple.fr", editable: false })] }));
|
|
13
|
+
export * as Sources from './EmailInput.stories.sources';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailInput.stories.sources.d.ts","sourceRoot":"","sources":["../../../src/ui/EmailInput/EmailInput.stories.sources.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,OAAO,cAA0T,CAAC;AAE/U,eAAO,MAAM,YAAY;;CAEf,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,YAAY,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// This file is generated. Do not edit manually.
|
|
2
|
+
// Source: src/ui/EmailInput/EmailInput.stories.tsx
|
|
3
|
+
export const Default = () => "export const Default = () => (\n <Box display=\"flex\" flexDirection=\"column\" gap={24}>\n <EmailInput placeholder=\"jean@exemple.fr\" />\n <EmailInput placeholder=\"jean@exemple.fr\" value=\"jean@exemple.fr\" />\n <EmailInput placeholder=\"jean@exemple.fr\" editable={false} />\n </Box>\n);";
|
|
4
|
+
export const storySources = {
|
|
5
|
+
Default,
|
|
6
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/EmailInput/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './EmailInput';
|
|
@@ -33,8 +33,8 @@ declare const _default: {
|
|
|
33
33
|
display: "flex";
|
|
34
34
|
alignItems: "center";
|
|
35
35
|
justifyContent: "center";
|
|
36
|
-
color:
|
|
37
|
-
backgroundColor:
|
|
36
|
+
color: string;
|
|
37
|
+
backgroundColor: string;
|
|
38
38
|
borderRadius: import("@alveole/theme/dist/constants/Radius").Radius;
|
|
39
39
|
padding: import("@alveole/theme").Spacing;
|
|
40
40
|
};
|
|
@@ -52,7 +52,7 @@ declare const _default: {
|
|
|
52
52
|
letterSpacing: 0;
|
|
53
53
|
fontFamily: string;
|
|
54
54
|
fontWeight?: import("react-native").TextStyle["fontWeight"];
|
|
55
|
-
color:
|
|
55
|
+
color: string;
|
|
56
56
|
};
|
|
57
57
|
description: {
|
|
58
58
|
textAlign: "center";
|
|
@@ -61,7 +61,7 @@ declare const _default: {
|
|
|
61
61
|
letterSpacing: 0;
|
|
62
62
|
fontFamily: string;
|
|
63
63
|
fontWeight?: import("react-native").TextStyle["fontWeight"];
|
|
64
|
-
color:
|
|
64
|
+
color: string;
|
|
65
65
|
};
|
|
66
66
|
footer: {
|
|
67
67
|
width: "100%" | undefined;
|
|
@@ -26,8 +26,8 @@ export declare const useStyles: () => {
|
|
|
26
26
|
display: "flex";
|
|
27
27
|
alignItems: "center";
|
|
28
28
|
justifyContent: "center";
|
|
29
|
-
color:
|
|
30
|
-
backgroundColor:
|
|
29
|
+
color: string;
|
|
30
|
+
backgroundColor: string;
|
|
31
31
|
borderRadius: import("@alveole/theme/dist/constants/Radius").Radius;
|
|
32
32
|
padding: import("@alveole/theme").Spacing;
|
|
33
33
|
};
|
|
@@ -45,7 +45,7 @@ export declare const useStyles: () => {
|
|
|
45
45
|
letterSpacing: 0;
|
|
46
46
|
fontFamily: string;
|
|
47
47
|
fontWeight?: import("react-native").TextStyle["fontWeight"];
|
|
48
|
-
color:
|
|
48
|
+
color: string;
|
|
49
49
|
};
|
|
50
50
|
description: {
|
|
51
51
|
textAlign: "center";
|
|
@@ -54,7 +54,7 @@ export declare const useStyles: () => {
|
|
|
54
54
|
letterSpacing: 0;
|
|
55
55
|
fontFamily: string;
|
|
56
56
|
fontWeight?: import("react-native").TextStyle["fontWeight"];
|
|
57
|
-
color:
|
|
57
|
+
color: string;
|
|
58
58
|
};
|
|
59
59
|
footer: {
|
|
60
60
|
width: "100%" | undefined;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { FormControlCaptionProps, FormControlFileInputProps, FormControlFileInputValue, FormControlHintProps, FormControlLabelProps } from '@alveole/components';
|
|
2
|
+
export type FileFieldValue = FormControlFileInputValue;
|
|
3
|
+
export type FileFieldProps = FormControlLabelProps & FormControlHintProps & FormControlCaptionProps & FormControlFileInputProps;
|
|
4
|
+
export declare const FileField: (props: FileFieldProps) => import("react").JSX.Element;
|
|
5
|
+
//# sourceMappingURL=FileField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileField.d.ts","sourceRoot":"","sources":["../../../src/ui/FileField/FileField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,uBAAuB,EAEvB,yBAAyB,EACzB,yBAAyB,EAEzB,oBAAoB,EAEpB,qBAAqB,EAEtB,MAAM,qBAAqB,CAAC;AAI7B,MAAM,MAAM,cAAc,GAAG,yBAAyB,CAAC;AACvD,MAAM,MAAM,cAAc,GAAG,qBAAqB,GAChD,oBAAoB,GACpB,uBAAuB,GACvB,yBAAyB,CAAC;AAE5B,eAAO,MAAM,SAAS,GAAI,OAAO,cAAc,gCAwC9C,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { FormControl, FormControlCaption, FormControlFileInput, FormControlHint, FormControlLabel, InputHeading, } from '@alveole/components';
|
|
3
|
+
import { Alert } from '../../core/Alert';
|
|
4
|
+
import { useStyles } from './FileField.styles';
|
|
5
|
+
export const FileField = (props) => {
|
|
6
|
+
const { label, labelRight, hint, error, success, disabled, type, onChange } = props;
|
|
7
|
+
const styles = useStyles();
|
|
8
|
+
const onValueChange = value => {
|
|
9
|
+
const normalizedValue = Array.isArray(value) ? value[0] : value;
|
|
10
|
+
const mimeType = normalizedValue?.mimeType;
|
|
11
|
+
if (type == null || mimeType == null)
|
|
12
|
+
return onChange(value);
|
|
13
|
+
const fileName = normalizedValue?.name;
|
|
14
|
+
if ((type.includes('image') && mimeType.startsWith('image')) ||
|
|
15
|
+
(type.includes('pdf') && mimeType.endsWith('pdf')) ||
|
|
16
|
+
(type.includes('csv') &&
|
|
17
|
+
(mimeType === 'text/csv' || mimeType === 'application/csv' || fileName?.endsWith('.csv'))))
|
|
18
|
+
return onChange(value);
|
|
19
|
+
else {
|
|
20
|
+
Alert.alert({
|
|
21
|
+
title: 'Type de fichier incorrect',
|
|
22
|
+
message: `Le format du fichier n'est pas pris en charge`,
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
return (_jsxs(FormControl, { style: styles.fileInput, children: [_jsxs(InputHeading, { children: [label && (_jsx(FormControlLabel, { labelRight: labelRight, label: label, disabled: disabled, error: error, success: success })), hint && _jsx(FormControlHint, { hint: hint, disabled: disabled })] }), _jsx(FormControlFileInput, { ...props, onChange: onValueChange }), (error || success) && _jsx(FormControlCaption, { error: error, success: success })] }));
|
|
27
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
title: string;
|
|
3
|
+
tags: "ui"[];
|
|
4
|
+
experimental: false;
|
|
5
|
+
description: string;
|
|
6
|
+
component: (props: import("./FileField").FileFieldProps) => import("react").JSX.Element;
|
|
7
|
+
styleFn: () => {
|
|
8
|
+
fileInput: {};
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
export default _default;
|
|
12
|
+
export declare const Default: () => import("react").JSX.Element;
|
|
13
|
+
export declare const Multiple: () => import("react").JSX.Element;
|
|
14
|
+
export * as Sources from './FileField.stories.sources';
|
|
15
|
+
//# sourceMappingURL=FileField.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileField.stories.d.ts","sourceRoot":"","sources":["../../../src/ui/FileField/FileField.stories.tsx"],"names":[],"mappings":";;;;;;;;;;AAKA,wBAOkB;AAElB,eAAO,MAAM,OAAO,mCAMnB,CAAC;AAEF,eAAO,MAAM,QAAQ,mCAAkF,CAAC;AAExG,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Box } from '../../core';
|
|
3
|
+
import { FileField } from './FileField';
|
|
4
|
+
import { useStyles } from './FileField.styles';
|
|
5
|
+
export default {
|
|
6
|
+
title: 'FileField',
|
|
7
|
+
tags: ['ui'],
|
|
8
|
+
experimental: false,
|
|
9
|
+
description: 'Champ de sélection de fichier avec label et validation MIME.',
|
|
10
|
+
component: FileField,
|
|
11
|
+
styleFn: useStyles,
|
|
12
|
+
};
|
|
13
|
+
export const Default = () => (_jsxs(Box, { display: "flex", flexDirection: "column", gap: 24, children: [_jsx(FileField, { label: "Document", value: null, onChange: () => { } }), _jsx(FileField, { label: "Image uniquement", type: "image/*", value: null, onChange: () => { } }), _jsx(FileField, { label: "Avec erreur", value: null, error: "Ce champ est requis", onChange: () => { } })] }));
|
|
14
|
+
export const Multiple = () => _jsx(FileField, { label: "Documents", value: null, multiple: true, onChange: () => { } });
|
|
15
|
+
export * as Sources from './FileField.stories.sources';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const Default: () => string;
|
|
2
|
+
export declare const Multiple: () => string;
|
|
3
|
+
export declare const storySources: {
|
|
4
|
+
readonly Default: () => string;
|
|
5
|
+
readonly Multiple: () => string;
|
|
6
|
+
};
|
|
7
|
+
export type StorySourceName = keyof typeof storySources;
|
|
8
|
+
//# sourceMappingURL=FileField.stories.sources.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileField.stories.sources.d.ts","sourceRoot":"","sources":["../../../src/ui/FileField/FileField.stories.sources.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,OAAO,cAAkY,CAAC;AAEvZ,eAAO,MAAM,QAAQ,cAAqH,CAAC;AAE3I,eAAO,MAAM,YAAY;;;CAGf,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,YAAY,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// This file is generated. Do not edit manually.
|
|
2
|
+
// Source: src/ui/FileField/FileField.stories.tsx
|
|
3
|
+
export const Default = () => "export const Default = () => (\n <Box display=\"flex\" flexDirection=\"column\" gap={24}>\n <FileField label=\"Document\" value={null} onChange={() => {}} />\n <FileField label=\"Image uniquement\" type=\"image/*\" value={null} onChange={() => {}} />\n <FileField label=\"Avec erreur\" value={null} error=\"Ce champ est requis\" onChange={() => {}} />\n </Box>\n);";
|
|
4
|
+
export const Multiple = () => "export const Multiple = () => <FileField label=\"Documents\" value={null} multiple onChange={() => {}} />;";
|
|
5
|
+
export const storySources = {
|
|
6
|
+
Default,
|
|
7
|
+
Multiple,
|
|
8
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileField.styles.d.ts","sourceRoot":"","sources":["../../../src/ui/FileField/FileField.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS;;CAEnB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/FileField/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './FileField';
|