@dsn-starter-kit/components-react 2.0.0 → 3.1.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/README.md +32 -4
- package/dist/ActionGroup/ActionGroup.d.mts +51 -0
- package/dist/ActionGroup/ActionGroup.d.mts.map +1 -0
- package/dist/ActionGroup/ActionGroup2.mjs +65 -0
- package/dist/ActionGroup/ActionGroup2.mjs.map +1 -0
- package/dist/ActionGroup/index.d.mts +2 -0
- package/dist/Alert/Alert.d.mts +85 -0
- package/dist/Alert/Alert.d.mts.map +1 -0
- package/dist/Alert/Alert2.mjs +102 -0
- package/dist/Alert/Alert2.mjs.map +1 -0
- package/dist/Alert/index.d.mts +2 -0
- package/dist/Backdrop/Backdrop.d.mts +28 -0
- package/dist/Backdrop/Backdrop.d.mts.map +1 -0
- package/dist/Backdrop/Backdrop2.mjs +32 -0
- package/dist/Backdrop/Backdrop2.mjs.map +1 -0
- package/dist/Backdrop/index.d.mts +2 -0
- package/dist/Body/Body.d.mts +29 -0
- package/dist/Body/Body.d.mts.map +1 -0
- package/dist/Body/Body2.mjs +36 -0
- package/dist/Body/Body2.mjs.map +1 -0
- package/dist/Body/index.d.mts +2 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation.d.mts +45 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation.d.mts.map +1 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation2.mjs +51 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation2.mjs.map +1 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.d.mts +41 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.d.mts.map +1 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.mjs +48 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.mjs.map +1 -0
- package/dist/BreadcrumbNavigation/index.d.mts +3 -0
- package/dist/BreakoutSection/BreakoutSection.d.mts +32 -0
- package/dist/BreakoutSection/BreakoutSection.d.mts.map +1 -0
- package/dist/BreakoutSection/BreakoutSection2.mjs +36 -0
- package/dist/BreakoutSection/BreakoutSection2.mjs.map +1 -0
- package/dist/BreakoutSection/index.d.mts +2 -0
- package/dist/Button/Button.d.mts +92 -0
- package/dist/Button/Button.d.mts.map +1 -0
- package/dist/Button/Button2.mjs +76 -0
- package/dist/Button/Button2.mjs.map +1 -0
- package/dist/Button/index.d.mts +2 -0
- package/dist/ButtonLink/ButtonLink.d.mts +94 -0
- package/dist/ButtonLink/ButtonLink.d.mts.map +1 -0
- package/dist/ButtonLink/ButtonLink2.mjs +70 -0
- package/dist/ButtonLink/ButtonLink2.mjs.map +1 -0
- package/dist/ButtonLink/index.d.mts +2 -0
- package/dist/Card/Card.d.mts +107 -0
- package/dist/Card/Card.d.mts.map +1 -0
- package/dist/Card/Card2.mjs +125 -0
- package/dist/Card/Card2.mjs.map +1 -0
- package/dist/Card/index.d.mts +2 -0
- package/dist/Checkbox/Checkbox.d.mts +20 -0
- package/dist/Checkbox/Checkbox.d.mts.map +1 -0
- package/dist/Checkbox/Checkbox2.mjs +43 -0
- package/dist/Checkbox/Checkbox2.mjs.map +1 -0
- package/dist/Checkbox/index.d.mts +2 -0
- package/dist/CheckboxGroup/CheckboxGroup.d.mts +39 -0
- package/dist/CheckboxGroup/CheckboxGroup.d.mts.map +1 -0
- package/dist/CheckboxGroup/CheckboxGroup2.mjs +46 -0
- package/dist/CheckboxGroup/CheckboxGroup2.mjs.map +1 -0
- package/dist/CheckboxGroup/index.d.mts +2 -0
- package/dist/CheckboxOption/CheckboxOption.d.mts +17 -0
- package/dist/CheckboxOption/CheckboxOption.d.mts.map +1 -0
- package/dist/CheckboxOption/CheckboxOption2.mjs +29 -0
- package/dist/CheckboxOption/CheckboxOption2.mjs.map +1 -0
- package/dist/CheckboxOption/index.d.mts +2 -0
- package/dist/Container/Container.d.mts +43 -0
- package/dist/Container/Container.d.mts.map +1 -0
- package/dist/Container/Container2.mjs +42 -0
- package/dist/Container/Container2.mjs.map +1 -0
- package/dist/Container/index.d.mts +2 -0
- package/dist/DateInput/DateInput.d.mts +38 -0
- package/dist/DateInput/DateInput.d.mts.map +1 -0
- package/dist/DateInput/DateInput2.mjs +69 -0
- package/dist/DateInput/DateInput2.mjs.map +1 -0
- package/dist/DateInput/index.d.mts +2 -0
- package/dist/DateInputGroup/DateInputGroup.d.mts +67 -0
- package/dist/DateInputGroup/DateInputGroup.d.mts.map +1 -0
- package/dist/DateInputGroup/DateInputGroup2.mjs +120 -0
- package/dist/DateInputGroup/DateInputGroup2.mjs.map +1 -0
- package/dist/DateInputGroup/index.d.mts +2 -0
- package/dist/Details/Details.d.mts +48 -0
- package/dist/Details/Details.d.mts.map +1 -0
- package/dist/Details/Details2.mjs +61 -0
- package/dist/Details/Details2.mjs.map +1 -0
- package/dist/Details/index.d.mts +2 -0
- package/dist/DotBadge/DotBadge.d.mts +44 -0
- package/dist/DotBadge/DotBadge.d.mts.map +1 -0
- package/dist/DotBadge/DotBadge2.mjs +42 -0
- package/dist/DotBadge/DotBadge2.mjs.map +1 -0
- package/dist/DotBadge/index.d.mts +2 -0
- package/dist/Drawer/Drawer.d.mts +111 -0
- package/dist/Drawer/Drawer.d.mts.map +1 -0
- package/dist/Drawer/Drawer2.mjs +156 -0
- package/dist/Drawer/Drawer2.mjs.map +1 -0
- package/dist/Drawer/index.d.mts +2 -0
- package/dist/EmailInput/EmailInput.d.mts +40 -0
- package/dist/EmailInput/EmailInput.d.mts.map +1 -0
- package/dist/EmailInput/EmailInput.mjs +39 -0
- package/dist/EmailInput/EmailInput.mjs.map +1 -0
- package/dist/EmailInput/index.d.mts +2 -0
- package/dist/File/File.d.mts +124 -0
- package/dist/File/File.d.mts.map +1 -0
- package/dist/File/File2.mjs +196 -0
- package/dist/File/File2.mjs.map +1 -0
- package/dist/File/index.d.mts +2 -0
- package/dist/FileInput/FileInput.d.mts +38 -0
- package/dist/FileInput/FileInput.d.mts.map +1 -0
- package/dist/FileInput/FileInput2.mjs +41 -0
- package/dist/FileInput/FileInput2.mjs.map +1 -0
- package/dist/FileInput/index.d.mts +2 -0
- package/dist/FormField/FormField.d.mts +103 -0
- package/dist/FormField/FormField.d.mts.map +1 -0
- package/dist/FormField/FormField2.mjs +101 -0
- package/dist/FormField/FormField2.mjs.map +1 -0
- package/dist/FormField/index.d.mts +2 -0
- package/dist/FormFieldDescription/FormFieldDescription.d.mts +53 -0
- package/dist/FormFieldDescription/FormFieldDescription.d.mts.map +1 -0
- package/dist/FormFieldDescription/FormFieldDescription2.mjs +49 -0
- package/dist/FormFieldDescription/FormFieldDescription2.mjs.map +1 -0
- package/dist/FormFieldDescription/index.d.mts +2 -0
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage.d.mts +42 -0
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage.d.mts.map +1 -0
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage2.mjs +44 -0
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage2.mjs.map +1 -0
- package/dist/FormFieldErrorMessage/index.d.mts +2 -0
- package/dist/FormFieldLabel/FormFieldLabel.d.mts +40 -0
- package/dist/FormFieldLabel/FormFieldLabel.d.mts.map +1 -0
- package/dist/FormFieldLabel/FormFieldLabel2.mjs +42 -0
- package/dist/FormFieldLabel/FormFieldLabel2.mjs.map +1 -0
- package/dist/FormFieldLabel/index.d.mts +2 -0
- package/dist/FormFieldLegend/FormFieldLegend.d.mts +41 -0
- package/dist/FormFieldLegend/FormFieldLegend.d.mts.map +1 -0
- package/dist/FormFieldLegend/FormFieldLegend2.mjs +43 -0
- package/dist/FormFieldLegend/FormFieldLegend2.mjs.map +1 -0
- package/dist/FormFieldLegend/index.d.mts +2 -0
- package/dist/FormFieldStatus/FormFieldStatus.d.mts +62 -0
- package/dist/FormFieldStatus/FormFieldStatus.d.mts.map +1 -0
- package/dist/FormFieldStatus/FormFieldStatus2.mjs +54 -0
- package/dist/FormFieldStatus/FormFieldStatus2.mjs.map +1 -0
- package/dist/FormFieldStatus/index.d.mts +2 -0
- package/dist/FormFieldset/FormFieldset.d.mts +100 -0
- package/dist/FormFieldset/FormFieldset.d.mts.map +1 -0
- package/dist/FormFieldset/FormFieldset2.mjs +100 -0
- package/dist/FormFieldset/FormFieldset2.mjs.map +1 -0
- package/dist/FormFieldset/index.d.mts +2 -0
- package/dist/Grid/Grid.d.mts +37 -0
- package/dist/Grid/Grid.d.mts.map +1 -0
- package/dist/Grid/Grid2.mjs +38 -0
- package/dist/Grid/Grid2.mjs.map +1 -0
- package/dist/Grid/GridItem.d.mts +87 -0
- package/dist/Grid/GridItem.d.mts.map +1 -0
- package/dist/Grid/GridItem.mjs +48 -0
- package/dist/Grid/GridItem.mjs.map +1 -0
- package/dist/Grid/index.d.mts +3 -0
- package/dist/Heading/Heading.d.mts +40 -0
- package/dist/Heading/Heading.d.mts.map +1 -0
- package/dist/Heading/Heading2.mjs +33 -0
- package/dist/Heading/Heading2.mjs.map +1 -0
- package/dist/Heading/index.d.mts +2 -0
- package/dist/HeadingGroup/HeadingGroup.d.mts +25 -0
- package/dist/HeadingGroup/HeadingGroup.d.mts.map +1 -0
- package/dist/HeadingGroup/HeadingGroup2.mjs +24 -0
- package/dist/HeadingGroup/HeadingGroup2.mjs.map +1 -0
- package/dist/HeadingGroup/index.d.mts +2 -0
- package/dist/Hero/Hero.d.mts +47 -0
- package/dist/Hero/Hero.d.mts.map +1 -0
- package/dist/Hero/Hero2.mjs +50 -0
- package/dist/Hero/Hero2.mjs.map +1 -0
- package/dist/Hero/index.d.mts +2 -0
- package/dist/Icon/Icon.d.mts +47 -0
- package/dist/Icon/Icon.d.mts.map +1 -0
- package/dist/Icon/Icon2.mjs +47 -0
- package/dist/Icon/Icon2.mjs.map +1 -0
- package/dist/Icon/icon-registry.generated.d.mts +8 -0
- package/dist/Icon/icon-registry.generated.d.mts.map +1 -0
- package/dist/Icon/icon-registry.generated.mjs +818 -0
- package/dist/Icon/icon-registry.generated.mjs.map +1 -0
- package/dist/Icon/index.d.mts +3 -0
- package/dist/IconList/IconList.d.mts +68 -0
- package/dist/IconList/IconList.d.mts.map +1 -0
- package/dist/IconList/IconList2.mjs +65 -0
- package/dist/IconList/IconList2.mjs.map +1 -0
- package/dist/IconList/index.d.mts +2 -0
- package/dist/Image/Image.d.mts +56 -0
- package/dist/Image/Image.d.mts.map +1 -0
- package/dist/Image/Image2.mjs +67 -0
- package/dist/Image/Image2.mjs.map +1 -0
- package/dist/Image/index.d.mts +2 -0
- package/dist/Link/Link.d.mts +82 -0
- package/dist/Link/Link.d.mts.map +1 -0
- package/dist/Link/Link2.mjs +73 -0
- package/dist/Link/Link2.mjs.map +1 -0
- package/dist/Link/index.d.mts +2 -0
- package/dist/LinkButton/LinkButton.d.mts +54 -0
- package/dist/LinkButton/LinkButton.d.mts.map +1 -0
- package/dist/LinkButton/LinkButton2.mjs +48 -0
- package/dist/LinkButton/LinkButton2.mjs.map +1 -0
- package/dist/LinkButton/index.d.mts +2 -0
- package/dist/Logo/Logo.d.mts +35 -0
- package/dist/Logo/Logo.d.mts.map +1 -0
- package/dist/Logo/Logo2.mjs +66 -0
- package/dist/Logo/Logo2.mjs.map +1 -0
- package/dist/Logo/index.d.mts +2 -0
- package/dist/Menu/Menu.d.mts +58 -0
- package/dist/Menu/Menu.d.mts.map +1 -0
- package/dist/Menu/Menu2.mjs +47 -0
- package/dist/Menu/Menu2.mjs.map +1 -0
- package/dist/Menu/index.d.mts +2 -0
- package/dist/MenuButton/MenuButton.d.mts +56 -0
- package/dist/MenuButton/MenuButton.d.mts.map +1 -0
- package/dist/MenuButton/MenuButton2.mjs +57 -0
- package/dist/MenuButton/MenuButton2.mjs.map +1 -0
- package/dist/MenuButton/index.d.mts +2 -0
- package/dist/MenuLink/MenuLink.d.mts +98 -0
- package/dist/MenuLink/MenuLink.d.mts.map +1 -0
- package/dist/MenuLink/MenuLink2.mjs +98 -0
- package/dist/MenuLink/MenuLink2.mjs.map +1 -0
- package/dist/MenuLink/index.d.mts +2 -0
- package/dist/ModalDialog/ModalDialog.d.mts +97 -0
- package/dist/ModalDialog/ModalDialog.d.mts.map +1 -0
- package/dist/ModalDialog/ModalDialog2.mjs +134 -0
- package/dist/ModalDialog/ModalDialog2.mjs.map +1 -0
- package/dist/ModalDialog/index.d.mts +2 -0
- package/dist/Note/Note.d.mts +95 -0
- package/dist/Note/Note.d.mts.map +1 -0
- package/dist/Note/Note2.mjs +116 -0
- package/dist/Note/Note2.mjs.map +1 -0
- package/dist/Note/index.d.mts +2 -0
- package/dist/NumberBadge/NumberBadge.d.mts +44 -0
- package/dist/NumberBadge/NumberBadge.d.mts.map +1 -0
- package/dist/NumberBadge/NumberBadge2.mjs +50 -0
- package/dist/NumberBadge/NumberBadge2.mjs.map +1 -0
- package/dist/NumberBadge/index.d.mts +2 -0
- package/dist/NumberInput/NumberInput.d.mts +47 -0
- package/dist/NumberInput/NumberInput.d.mts.map +1 -0
- package/dist/NumberInput/NumberInput.mjs +40 -0
- package/dist/NumberInput/NumberInput.mjs.map +1 -0
- package/dist/NumberInput/index.d.mts +2 -0
- package/dist/OptionLabel/OptionLabel.d.mts +15 -0
- package/dist/OptionLabel/OptionLabel.d.mts.map +1 -0
- package/dist/OptionLabel/OptionLabel2.mjs +22 -0
- package/dist/OptionLabel/OptionLabel2.mjs.map +1 -0
- package/dist/OptionLabel/index.d.mts +2 -0
- package/dist/OrderedList/OrderedList.d.mts +34 -0
- package/dist/OrderedList/OrderedList.d.mts.map +1 -0
- package/dist/OrderedList/OrderedList2.mjs +37 -0
- package/dist/OrderedList/OrderedList2.mjs.map +1 -0
- package/dist/OrderedList/index.d.mts +2 -0
- package/dist/PageBody/PageBody.d.mts +35 -0
- package/dist/PageBody/PageBody.d.mts.map +1 -0
- package/dist/PageBody/PageBody2.mjs +40 -0
- package/dist/PageBody/PageBody2.mjs.map +1 -0
- package/dist/PageBody/index.d.mts +2 -0
- package/dist/PageFooter/PageFooter.d.mts +57 -0
- package/dist/PageFooter/PageFooter.d.mts.map +1 -0
- package/dist/PageFooter/PageFooter2.mjs +78 -0
- package/dist/PageFooter/PageFooter2.mjs.map +1 -0
- package/dist/PageFooter/index.d.mts +2 -0
- package/dist/PageHeader/PageHeader.d.mts +192 -0
- package/dist/PageHeader/PageHeader.d.mts.map +1 -0
- package/dist/PageHeader/PageHeader2.mjs +275 -0
- package/dist/PageHeader/PageHeader2.mjs.map +1 -0
- package/dist/PageHeader/index.d.mts +2 -0
- package/dist/PageLayout/PageLayout.d.mts +40 -0
- package/dist/PageLayout/PageLayout.d.mts.map +1 -0
- package/dist/PageLayout/PageLayout2.mjs +42 -0
- package/dist/PageLayout/PageLayout2.mjs.map +1 -0
- package/dist/PageLayout/index.d.mts +2 -0
- package/dist/Paragraph/Paragraph.d.mts +37 -0
- package/dist/Paragraph/Paragraph.d.mts.map +1 -0
- package/dist/Paragraph/Paragraph2.mjs +34 -0
- package/dist/Paragraph/Paragraph2.mjs.map +1 -0
- package/dist/Paragraph/index.d.mts +2 -0
- package/dist/PasswordInput/PasswordInput.d.mts +54 -0
- package/dist/PasswordInput/PasswordInput.d.mts.map +1 -0
- package/dist/PasswordInput/PasswordInput.mjs +43 -0
- package/dist/PasswordInput/PasswordInput.mjs.map +1 -0
- package/dist/PasswordInput/index.d.mts +2 -0
- package/dist/Popover/Popover.d.mts +118 -0
- package/dist/Popover/Popover.d.mts.map +1 -0
- package/dist/Popover/Popover2.mjs +235 -0
- package/dist/Popover/Popover2.mjs.map +1 -0
- package/dist/Popover/index.d.mts +2 -0
- package/dist/PreHeading/PreHeading.d.mts +10 -0
- package/dist/PreHeading/PreHeading.d.mts.map +1 -0
- package/dist/PreHeading/PreHeading2.mjs +18 -0
- package/dist/PreHeading/PreHeading2.mjs.map +1 -0
- package/dist/PreHeading/index.d.mts +2 -0
- package/dist/ProgressBar/ProgressBar.d.mts +60 -0
- package/dist/ProgressBar/ProgressBar.d.mts.map +1 -0
- package/dist/ProgressBar/ProgressBar2.mjs +73 -0
- package/dist/ProgressBar/ProgressBar2.mjs.map +1 -0
- package/dist/ProgressBar/index.d.mts +2 -0
- package/dist/Radio/Radio.d.mts +16 -0
- package/dist/Radio/Radio.d.mts.map +1 -0
- package/dist/Radio/Radio2.mjs +31 -0
- package/dist/Radio/Radio2.mjs.map +1 -0
- package/dist/Radio/index.d.mts +2 -0
- package/dist/RadioGroup/RadioGroup.d.mts +39 -0
- package/dist/RadioGroup/RadioGroup.d.mts.map +1 -0
- package/dist/RadioGroup/RadioGroup2.mjs +46 -0
- package/dist/RadioGroup/RadioGroup2.mjs.map +1 -0
- package/dist/RadioGroup/index.d.mts +2 -0
- package/dist/RadioOption/RadioOption.d.mts +17 -0
- package/dist/RadioOption/RadioOption.d.mts.map +1 -0
- package/dist/RadioOption/RadioOption2.mjs +29 -0
- package/dist/RadioOption/RadioOption2.mjs.map +1 -0
- package/dist/RadioOption/index.d.mts +2 -0
- package/dist/SearchInput/SearchInput.d.mts +41 -0
- package/dist/SearchInput/SearchInput.d.mts.map +1 -0
- package/dist/SearchInput/SearchInput2.mjs +48 -0
- package/dist/SearchInput/SearchInput2.mjs.map +1 -0
- package/dist/SearchInput/index.d.mts +2 -0
- package/dist/Select/Select.d.mts +53 -0
- package/dist/Select/Select.d.mts.map +1 -0
- package/dist/Select/Select2.mjs +61 -0
- package/dist/Select/Select2.mjs.map +1 -0
- package/dist/Select/index.d.mts +2 -0
- package/dist/SkipLink/SkipLink.d.mts +37 -0
- package/dist/SkipLink/SkipLink.d.mts.map +1 -0
- package/dist/SkipLink/SkipLink2.mjs +33 -0
- package/dist/SkipLink/SkipLink2.mjs.map +1 -0
- package/dist/SkipLink/index.d.mts +2 -0
- package/dist/Spinner/Spinner.d.mts +45 -0
- package/dist/Spinner/Spinner.d.mts.map +1 -0
- package/dist/Spinner/Spinner2.mjs +58 -0
- package/dist/Spinner/Spinner2.mjs.map +1 -0
- package/dist/Spinner/index.d.mts +2 -0
- package/dist/Stack/Stack.d.mts +37 -0
- package/dist/Stack/Stack.d.mts.map +1 -0
- package/dist/Stack/Stack2.mjs +38 -0
- package/dist/Stack/Stack2.mjs.map +1 -0
- package/dist/Stack/index.d.mts +2 -0
- package/dist/StatusBadge/StatusBadge.d.mts +52 -0
- package/dist/StatusBadge/StatusBadge.d.mts.map +1 -0
- package/dist/StatusBadge/StatusBadge2.mjs +49 -0
- package/dist/StatusBadge/StatusBadge2.mjs.map +1 -0
- package/dist/StatusBadge/index.d.mts +2 -0
- package/dist/SummaryList/SummaryList.d.mts +51 -0
- package/dist/SummaryList/SummaryList.d.mts.map +1 -0
- package/dist/SummaryList/SummaryList2.mjs +66 -0
- package/dist/SummaryList/SummaryList2.mjs.map +1 -0
- package/dist/SummaryList/index.d.mts +2 -0
- package/dist/Table/Table.d.mts +63 -0
- package/dist/Table/Table.d.mts.map +1 -0
- package/dist/Table/Table2.mjs +54 -0
- package/dist/Table/Table2.mjs.map +1 -0
- package/dist/Table/index.d.mts +2 -0
- package/dist/TableOfContents/TableOfContents.d.mts +64 -0
- package/dist/TableOfContents/TableOfContents.d.mts.map +1 -0
- package/dist/TableOfContents/TableOfContents2.mjs +51 -0
- package/dist/TableOfContents/TableOfContents2.mjs.map +1 -0
- package/dist/TableOfContents/index.d.mts +2 -0
- package/dist/TelephoneInput/TelephoneInput.d.mts +40 -0
- package/dist/TelephoneInput/TelephoneInput.d.mts.map +1 -0
- package/dist/TelephoneInput/TelephoneInput.mjs +39 -0
- package/dist/TelephoneInput/TelephoneInput.mjs.map +1 -0
- package/dist/TelephoneInput/index.d.mts +2 -0
- package/dist/TextArea/TextArea.d.mts +46 -0
- package/dist/TextArea/TextArea.d.mts.map +1 -0
- package/dist/TextArea/TextArea2.mjs +43 -0
- package/dist/TextArea/TextArea2.mjs.map +1 -0
- package/dist/TextArea/index.d.mts +2 -0
- package/dist/TextInput/TextInput.d.mts +46 -0
- package/dist/TextInput/TextInput.d.mts.map +1 -0
- package/dist/TextInput/TextInput2.mjs +43 -0
- package/dist/TextInput/TextInput2.mjs.map +1 -0
- package/dist/TextInput/index.d.mts +2 -0
- package/dist/TimeInput/TimeInput.d.mts +38 -0
- package/dist/TimeInput/TimeInput.d.mts.map +1 -0
- package/dist/TimeInput/TimeInput2.mjs +69 -0
- package/dist/TimeInput/TimeInput2.mjs.map +1 -0
- package/dist/TimeInput/index.d.mts +2 -0
- package/dist/UnorderedList/UnorderedList.d.mts +28 -0
- package/dist/UnorderedList/UnorderedList.d.mts.map +1 -0
- package/dist/UnorderedList/UnorderedList2.mjs +31 -0
- package/dist/UnorderedList/UnorderedList2.mjs.map +1 -0
- package/dist/UnorderedList/index.d.mts +2 -0
- package/dist/index.cjs +5129 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.css +3351 -6056
- package/dist/index.d.cts +3874 -0
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +150 -0
- package/dist/index.mjs +77 -0
- package/dist/utils/describeControl.mjs +25 -0
- package/dist/utils/describeControl.mjs.map +1 -0
- package/package.json +21 -17
- package/dist/ActionGroup/ActionGroup.css +0 -95
- package/dist/ActionGroup/ActionGroup.d.ts +0 -49
- package/dist/ActionGroup/ActionGroup.d.ts.map +0 -1
- package/dist/ActionGroup/ActionGroup.js +0 -54
- package/dist/ActionGroup/ActionGroup.js.map +0 -1
- package/dist/ActionGroup/index.d.ts +0 -3
- package/dist/ActionGroup/index.d.ts.map +0 -1
- package/dist/ActionGroup/index.js +0 -2
- package/dist/ActionGroup/index.js.map +0 -1
- package/dist/Alert/Alert.css +0 -159
- package/dist/Alert/Alert.d.ts +0 -83
- package/dist/Alert/Alert.d.ts.map +0 -1
- package/dist/Alert/Alert.js +0 -69
- package/dist/Alert/Alert.js.map +0 -1
- package/dist/Alert/index.d.ts +0 -3
- package/dist/Alert/index.d.ts.map +0 -1
- package/dist/Alert/index.js +0 -2
- package/dist/Alert/index.js.map +0 -1
- package/dist/Backdrop/Backdrop.css +0 -30
- package/dist/Backdrop/Backdrop.d.ts +0 -26
- package/dist/Backdrop/Backdrop.d.ts.map +0 -1
- package/dist/Backdrop/Backdrop.js +0 -23
- package/dist/Backdrop/Backdrop.js.map +0 -1
- package/dist/Backdrop/index.d.ts +0 -3
- package/dist/Backdrop/index.d.ts.map +0 -1
- package/dist/Backdrop/index.js +0 -2
- package/dist/Backdrop/index.js.map +0 -1
- package/dist/Body/Body.css +0 -14
- package/dist/Body/Body.d.ts +0 -27
- package/dist/Body/Body.d.ts.map +0 -1
- package/dist/Body/Body.js +0 -27
- package/dist/Body/Body.js.map +0 -1
- package/dist/Body/index.d.ts +0 -3
- package/dist/Body/index.d.ts.map +0 -1
- package/dist/Body/index.js +0 -2
- package/dist/Body/index.js.map +0 -1
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation.css +0 -216
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation.d.ts +0 -43
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation.d.ts.map +0 -1
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation.js +0 -42
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation.js.map +0 -1
- package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.d.ts +0 -32
- package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.d.ts.map +0 -1
- package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.js +0 -20
- package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.js.map +0 -1
- package/dist/BreadcrumbNavigation/index.d.ts +0 -3
- package/dist/BreadcrumbNavigation/index.d.ts.map +0 -1
- package/dist/BreadcrumbNavigation/index.js +0 -3
- package/dist/BreadcrumbNavigation/index.js.map +0 -1
- package/dist/BreakoutSection/BreakoutSection.css +0 -23
- package/dist/BreakoutSection/BreakoutSection.d.ts +0 -30
- package/dist/BreakoutSection/BreakoutSection.d.ts.map +0 -1
- package/dist/BreakoutSection/BreakoutSection.js +0 -27
- package/dist/BreakoutSection/BreakoutSection.js.map +0 -1
- package/dist/BreakoutSection/index.d.ts +0 -3
- package/dist/BreakoutSection/index.d.ts.map +0 -1
- package/dist/BreakoutSection/index.js +0 -2
- package/dist/BreakoutSection/index.js.map +0 -1
- package/dist/Button/Button.css +0 -337
- package/dist/Button/Button.d.ts +0 -90
- package/dist/Button/Button.d.ts.map +0 -1
- package/dist/Button/Button.js +0 -53
- package/dist/Button/Button.js.map +0 -1
- package/dist/Button/index.d.ts +0 -3
- package/dist/Button/index.d.ts.map +0 -1
- package/dist/Button/index.js +0 -2
- package/dist/Button/index.js.map +0 -1
- package/dist/ButtonLink/ButtonLink.css +0 -29
- package/dist/ButtonLink/ButtonLink.d.ts +0 -92
- package/dist/ButtonLink/ButtonLink.d.ts.map +0 -1
- package/dist/ButtonLink/ButtonLink.js +0 -50
- package/dist/ButtonLink/ButtonLink.js.map +0 -1
- package/dist/ButtonLink/index.d.ts +0 -3
- package/dist/ButtonLink/index.d.ts.map +0 -1
- package/dist/ButtonLink/index.js +0 -2
- package/dist/ButtonLink/index.js.map +0 -1
- package/dist/Card/Card.css +0 -169
- package/dist/Card/Card.d.ts +0 -105
- package/dist/Card/Card.d.ts.map +0 -1
- package/dist/Card/Card.js +0 -80
- package/dist/Card/Card.js.map +0 -1
- package/dist/Card/index.d.ts +0 -3
- package/dist/Card/index.d.ts.map +0 -1
- package/dist/Card/index.js +0 -2
- package/dist/Card/index.js.map +0 -1
- package/dist/Checkbox/Checkbox.css +0 -239
- package/dist/Checkbox/Checkbox.d.ts +0 -18
- package/dist/Checkbox/Checkbox.d.ts.map +0 -1
- package/dist/Checkbox/Checkbox.js +0 -24
- package/dist/Checkbox/Checkbox.js.map +0 -1
- package/dist/Checkbox/index.d.ts +0 -3
- package/dist/Checkbox/index.d.ts.map +0 -1
- package/dist/Checkbox/index.js +0 -2
- package/dist/Checkbox/index.js.map +0 -1
- package/dist/CheckboxGroup/CheckboxGroup.css +0 -10
- package/dist/CheckboxGroup/CheckboxGroup.d.ts +0 -37
- package/dist/CheckboxGroup/CheckboxGroup.d.ts.map +0 -1
- package/dist/CheckboxGroup/CheckboxGroup.js +0 -37
- package/dist/CheckboxGroup/CheckboxGroup.js.map +0 -1
- package/dist/CheckboxGroup/index.d.ts +0 -3
- package/dist/CheckboxGroup/index.d.ts.map +0 -1
- package/dist/CheckboxGroup/index.js +0 -2
- package/dist/CheckboxGroup/index.js.map +0 -1
- package/dist/CheckboxOption/CheckboxOption.css +0 -17
- package/dist/CheckboxOption/CheckboxOption.d.ts +0 -14
- package/dist/CheckboxOption/CheckboxOption.d.ts.map +0 -1
- package/dist/CheckboxOption/CheckboxOption.js +0 -15
- package/dist/CheckboxOption/CheckboxOption.js.map +0 -1
- package/dist/CheckboxOption/index.d.ts +0 -3
- package/dist/CheckboxOption/index.d.ts.map +0 -1
- package/dist/CheckboxOption/index.js +0 -2
- package/dist/CheckboxOption/index.js.map +0 -1
- package/dist/Container/Container.css +0 -48
- package/dist/Container/Container.d.ts +0 -41
- package/dist/Container/Container.d.ts.map +0 -1
- package/dist/Container/Container.js +0 -33
- package/dist/Container/Container.js.map +0 -1
- package/dist/Container/index.d.ts +0 -3
- package/dist/Container/index.d.ts.map +0 -1
- package/dist/Container/index.js +0 -2
- package/dist/Container/index.js.map +0 -1
- package/dist/DateInput/DateInput.css +0 -37
- package/dist/DateInput/DateInput.d.ts +0 -37
- package/dist/DateInput/DateInput.d.ts.map +0 -1
- package/dist/DateInput/DateInput.js +0 -52
- package/dist/DateInput/DateInput.js.map +0 -1
- package/dist/DateInput/index.d.ts +0 -3
- package/dist/DateInput/index.d.ts.map +0 -1
- package/dist/DateInput/index.js +0 -2
- package/dist/DateInput/index.js.map +0 -1
- package/dist/DateInputGroup/DateInputGroup.css +0 -30
- package/dist/DateInputGroup/DateInputGroup.d.ts +0 -65
- package/dist/DateInputGroup/DateInputGroup.d.ts.map +0 -1
- package/dist/DateInputGroup/DateInputGroup.js +0 -53
- package/dist/DateInputGroup/DateInputGroup.js.map +0 -1
- package/dist/DateInputGroup/index.d.ts +0 -3
- package/dist/DateInputGroup/index.d.ts.map +0 -1
- package/dist/DateInputGroup/index.js +0 -2
- package/dist/DateInputGroup/index.js.map +0 -1
- package/dist/Details/Details.css +0 -148
- package/dist/Details/Details.d.ts +0 -46
- package/dist/Details/Details.d.ts.map +0 -1
- package/dist/Details/Details.js +0 -37
- package/dist/Details/Details.js.map +0 -1
- package/dist/Details/index.d.ts +0 -3
- package/dist/Details/index.d.ts.map +0 -1
- package/dist/Details/index.js +0 -2
- package/dist/Details/index.js.map +0 -1
- package/dist/DotBadge/DotBadge.css +0 -111
- package/dist/DotBadge/DotBadge.d.ts +0 -40
- package/dist/DotBadge/DotBadge.d.ts.map +0 -1
- package/dist/DotBadge/DotBadge.js +0 -33
- package/dist/DotBadge/DotBadge.js.map +0 -1
- package/dist/DotBadge/index.d.ts +0 -2
- package/dist/DotBadge/index.d.ts.map +0 -1
- package/dist/DotBadge/index.js +0 -2
- package/dist/DotBadge/index.js.map +0 -1
- package/dist/Drawer/Drawer.css +0 -258
- package/dist/Drawer/Drawer.d.ts +0 -109
- package/dist/Drawer/Drawer.d.ts.map +0 -1
- package/dist/Drawer/Drawer.js +0 -115
- package/dist/Drawer/Drawer.js.map +0 -1
- package/dist/Drawer/index.d.ts +0 -3
- package/dist/Drawer/index.d.ts.map +0 -1
- package/dist/Drawer/index.js +0 -2
- package/dist/Drawer/index.js.map +0 -1
- package/dist/EmailInput/EmailInput.css +0 -4
- package/dist/EmailInput/EmailInput.d.ts +0 -38
- package/dist/EmailInput/EmailInput.d.ts.map +0 -1
- package/dist/EmailInput/EmailInput.js +0 -27
- package/dist/EmailInput/EmailInput.js.map +0 -1
- package/dist/EmailInput/index.d.ts +0 -3
- package/dist/EmailInput/index.d.ts.map +0 -1
- package/dist/EmailInput/index.js +0 -2
- package/dist/EmailInput/index.js.map +0 -1
- package/dist/File/File.css +0 -222
- package/dist/File/File.d.ts +0 -116
- package/dist/File/File.d.ts.map +0 -1
- package/dist/File/File.js +0 -100
- package/dist/File/File.js.map +0 -1
- package/dist/File/index.d.ts +0 -3
- package/dist/File/index.d.ts.map +0 -1
- package/dist/File/index.js +0 -2
- package/dist/File/index.js.map +0 -1
- package/dist/FileInput/FileInput.css +0 -112
- package/dist/FileInput/FileInput.d.ts +0 -36
- package/dist/FileInput/FileInput.d.ts.map +0 -1
- package/dist/FileInput/FileInput.js +0 -31
- package/dist/FileInput/FileInput.js.map +0 -1
- package/dist/FileInput/index.d.ts +0 -3
- package/dist/FileInput/index.d.ts.map +0 -1
- package/dist/FileInput/index.js +0 -2
- package/dist/FileInput/index.js.map +0 -1
- package/dist/FormField/FormField.css +0 -16
- package/dist/FormField/FormField.d.ts +0 -85
- package/dist/FormField/FormField.d.ts.map +0 -1
- package/dist/FormField/FormField.js +0 -60
- package/dist/FormField/FormField.js.map +0 -1
- package/dist/FormField/index.d.ts +0 -3
- package/dist/FormField/index.d.ts.map +0 -1
- package/dist/FormField/index.js +0 -2
- package/dist/FormField/index.js.map +0 -1
- package/dist/FormFieldDescription/FormFieldDescription.css +0 -25
- package/dist/FormFieldDescription/FormFieldDescription.d.ts +0 -47
- package/dist/FormFieldDescription/FormFieldDescription.d.ts.map +0 -1
- package/dist/FormFieldDescription/FormFieldDescription.js +0 -37
- package/dist/FormFieldDescription/FormFieldDescription.js.map +0 -1
- package/dist/FormFieldDescription/index.d.ts +0 -3
- package/dist/FormFieldDescription/index.d.ts.map +0 -1
- package/dist/FormFieldDescription/index.js +0 -2
- package/dist/FormFieldDescription/index.js.map +0 -1
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage.css +0 -38
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage.d.ts +0 -40
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage.d.ts.map +0 -1
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage.js +0 -32
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage.js.map +0 -1
- package/dist/FormFieldErrorMessage/index.d.ts +0 -3
- package/dist/FormFieldErrorMessage/index.d.ts.map +0 -1
- package/dist/FormFieldErrorMessage/index.js +0 -2
- package/dist/FormFieldErrorMessage/index.js.map +0 -1
- package/dist/FormFieldLabel/FormFieldLabel.css +0 -48
- package/dist/FormFieldLabel/FormFieldLabel.d.ts +0 -38
- package/dist/FormFieldLabel/FormFieldLabel.d.ts.map +0 -1
- package/dist/FormFieldLabel/FormFieldLabel.js +0 -30
- package/dist/FormFieldLabel/FormFieldLabel.js.map +0 -1
- package/dist/FormFieldLabel/index.d.ts +0 -3
- package/dist/FormFieldLabel/index.d.ts.map +0 -1
- package/dist/FormFieldLabel/index.js +0 -2
- package/dist/FormFieldLabel/index.js.map +0 -1
- package/dist/FormFieldLegend/FormFieldLegend.css +0 -7
- package/dist/FormFieldLegend/FormFieldLegend.d.ts +0 -39
- package/dist/FormFieldLegend/FormFieldLegend.d.ts.map +0 -1
- package/dist/FormFieldLegend/FormFieldLegend.js +0 -31
- package/dist/FormFieldLegend/FormFieldLegend.js.map +0 -1
- package/dist/FormFieldLegend/index.d.ts +0 -2
- package/dist/FormFieldLegend/index.d.ts.map +0 -1
- package/dist/FormFieldLegend/index.js +0 -2
- package/dist/FormFieldLegend/index.js.map +0 -1
- package/dist/FormFieldStatus/FormFieldStatus.css +0 -66
- package/dist/FormFieldStatus/FormFieldStatus.d.ts +0 -52
- package/dist/FormFieldStatus/FormFieldStatus.d.ts.map +0 -1
- package/dist/FormFieldStatus/FormFieldStatus.js +0 -44
- package/dist/FormFieldStatus/FormFieldStatus.js.map +0 -1
- package/dist/FormFieldStatus/index.d.ts +0 -3
- package/dist/FormFieldStatus/index.d.ts.map +0 -1
- package/dist/FormFieldStatus/index.js +0 -2
- package/dist/FormFieldStatus/index.js.map +0 -1
- package/dist/FormFieldset/FormFieldset.css +0 -24
- package/dist/FormFieldset/FormFieldset.d.ts +0 -83
- package/dist/FormFieldset/FormFieldset.d.ts.map +0 -1
- package/dist/FormFieldset/FormFieldset.js +0 -59
- package/dist/FormFieldset/FormFieldset.js.map +0 -1
- package/dist/FormFieldset/index.d.ts +0 -2
- package/dist/FormFieldset/index.d.ts.map +0 -1
- package/dist/FormFieldset/index.js +0 -2
- package/dist/FormFieldset/index.js.map +0 -1
- package/dist/Grid/Grid.css +0 -573
- package/dist/Grid/Grid.d.ts +0 -35
- package/dist/Grid/Grid.d.ts.map +0 -1
- package/dist/Grid/Grid.js +0 -29
- package/dist/Grid/Grid.js.map +0 -1
- package/dist/Grid/GridItem.d.ts +0 -84
- package/dist/Grid/GridItem.d.ts.map +0 -1
- package/dist/Grid/GridItem.js +0 -39
- package/dist/Grid/GridItem.js.map +0 -1
- package/dist/Grid/index.d.ts +0 -5
- package/dist/Grid/index.d.ts.map +0 -1
- package/dist/Grid/index.js +0 -3
- package/dist/Grid/index.js.map +0 -1
- package/dist/Heading/Heading.css +0 -81
- package/dist/Heading/Heading.d.ts +0 -38
- package/dist/Heading/Heading.d.ts.map +0 -1
- package/dist/Heading/Heading.js +0 -24
- package/dist/Heading/Heading.js.map +0 -1
- package/dist/Heading/index.d.ts +0 -3
- package/dist/Heading/index.d.ts.map +0 -1
- package/dist/Heading/index.js +0 -2
- package/dist/Heading/index.js.map +0 -1
- package/dist/HeadingGroup/HeadingGroup.css +0 -5
- package/dist/HeadingGroup/HeadingGroup.d.ts +0 -23
- package/dist/HeadingGroup/HeadingGroup.d.ts.map +0 -1
- package/dist/HeadingGroup/HeadingGroup.js +0 -12
- package/dist/HeadingGroup/HeadingGroup.js.map +0 -1
- package/dist/HeadingGroup/index.d.ts +0 -3
- package/dist/HeadingGroup/index.d.ts.map +0 -1
- package/dist/HeadingGroup/index.js +0 -2
- package/dist/HeadingGroup/index.js.map +0 -1
- package/dist/Hero/Hero.css +0 -847
- package/dist/Hero/Hero.d.ts +0 -45
- package/dist/Hero/Hero.d.ts.map +0 -1
- package/dist/Hero/Hero.js +0 -33
- package/dist/Hero/Hero.js.map +0 -1
- package/dist/Hero/index.d.ts +0 -3
- package/dist/Hero/index.d.ts.map +0 -1
- package/dist/Hero/index.js +0 -2
- package/dist/Hero/index.js.map +0 -1
- package/dist/Icon/Icon.css +0 -57
- package/dist/Icon/Icon.d.ts +0 -48
- package/dist/Icon/Icon.d.ts.map +0 -1
- package/dist/Icon/Icon.js +0 -42
- package/dist/Icon/Icon.js.map +0 -1
- package/dist/Icon/icon-registry.generated.d.ts +0 -4
- package/dist/Icon/icon-registry.generated.d.ts.map +0 -1
- package/dist/Icon/icon-registry.generated.js +0 -105
- package/dist/Icon/icon-registry.generated.js.map +0 -1
- package/dist/Icon/index.d.ts +0 -3
- package/dist/Icon/index.d.ts.map +0 -1
- package/dist/Icon/index.js +0 -2
- package/dist/Icon/index.js.map +0 -1
- package/dist/Image/Image.css +0 -123
- package/dist/Image/Image.d.ts +0 -54
- package/dist/Image/Image.d.ts.map +0 -1
- package/dist/Image/Image.js +0 -53
- package/dist/Image/Image.js.map +0 -1
- package/dist/Image/index.d.ts +0 -3
- package/dist/Image/index.d.ts.map +0 -1
- package/dist/Image/index.js +0 -2
- package/dist/Image/index.js.map +0 -1
- package/dist/Link/Link.css +0 -113
- package/dist/Link/Link.d.ts +0 -80
- package/dist/Link/Link.d.ts.map +0 -1
- package/dist/Link/Link.js +0 -58
- package/dist/Link/Link.js.map +0 -1
- package/dist/Link/index.d.ts +0 -3
- package/dist/Link/index.d.ts.map +0 -1
- package/dist/Link/index.js +0 -2
- package/dist/Link/index.js.map +0 -1
- package/dist/LinkButton/LinkButton.css +0 -40
- package/dist/LinkButton/LinkButton.d.ts +0 -52
- package/dist/LinkButton/LinkButton.d.ts.map +0 -1
- package/dist/LinkButton/LinkButton.js +0 -34
- package/dist/LinkButton/LinkButton.js.map +0 -1
- package/dist/LinkButton/index.d.ts +0 -3
- package/dist/LinkButton/index.d.ts.map +0 -1
- package/dist/LinkButton/index.js +0 -2
- package/dist/LinkButton/index.js.map +0 -1
- package/dist/Logo/Logo.css +0 -33
- package/dist/Logo/Logo.d.ts +0 -33
- package/dist/Logo/Logo.d.ts.map +0 -1
- package/dist/Logo/Logo.js +0 -32
- package/dist/Logo/Logo.js.map +0 -1
- package/dist/Logo/index.d.ts +0 -2
- package/dist/Logo/index.d.ts.map +0 -1
- package/dist/Logo/index.js +0 -2
- package/dist/Logo/index.js.map +0 -1
- package/dist/Menu/Menu.css +0 -57
- package/dist/Menu/Menu.d.ts +0 -56
- package/dist/Menu/Menu.d.ts.map +0 -1
- package/dist/Menu/Menu.js +0 -38
- package/dist/Menu/Menu.js.map +0 -1
- package/dist/Menu/index.d.ts +0 -2
- package/dist/Menu/index.d.ts.map +0 -1
- package/dist/Menu/index.js +0 -2
- package/dist/Menu/index.js.map +0 -1
- package/dist/MenuButton/MenuButton.css +0 -106
- package/dist/MenuButton/MenuButton.d.ts +0 -54
- package/dist/MenuButton/MenuButton.d.ts.map +0 -1
- package/dist/MenuButton/MenuButton.js +0 -37
- package/dist/MenuButton/MenuButton.js.map +0 -1
- package/dist/MenuButton/index.d.ts +0 -2
- package/dist/MenuButton/index.d.ts.map +0 -1
- package/dist/MenuButton/index.js +0 -2
- package/dist/MenuButton/index.js.map +0 -1
- package/dist/MenuLink/MenuLink.css +0 -212
- package/dist/MenuLink/MenuLink.d.ts +0 -96
- package/dist/MenuLink/MenuLink.d.ts.map +0 -1
- package/dist/MenuLink/MenuLink.js +0 -50
- package/dist/MenuLink/MenuLink.js.map +0 -1
- package/dist/MenuLink/index.d.ts +0 -2
- package/dist/MenuLink/index.d.ts.map +0 -1
- package/dist/MenuLink/index.js +0 -2
- package/dist/MenuLink/index.js.map +0 -1
- package/dist/ModalDialog/ModalDialog.css +0 -199
- package/dist/ModalDialog/ModalDialog.d.ts +0 -95
- package/dist/ModalDialog/ModalDialog.d.ts.map +0 -1
- package/dist/ModalDialog/ModalDialog.js +0 -93
- package/dist/ModalDialog/ModalDialog.js.map +0 -1
- package/dist/ModalDialog/index.d.ts +0 -3
- package/dist/ModalDialog/index.d.ts.map +0 -1
- package/dist/ModalDialog/index.js +0 -2
- package/dist/ModalDialog/index.js.map +0 -1
- package/dist/Note/Note.css +0 -177
- package/dist/Note/Note.d.ts +0 -93
- package/dist/Note/Note.d.ts.map +0 -1
- package/dist/Note/Note.js +0 -81
- package/dist/Note/Note.js.map +0 -1
- package/dist/Note/index.d.ts +0 -3
- package/dist/Note/index.d.ts.map +0 -1
- package/dist/Note/index.js +0 -2
- package/dist/Note/index.js.map +0 -1
- package/dist/NumberBadge/NumberBadge.css +0 -83
- package/dist/NumberBadge/NumberBadge.d.ts +0 -42
- package/dist/NumberBadge/NumberBadge.d.ts.map +0 -1
- package/dist/NumberBadge/NumberBadge.js +0 -46
- package/dist/NumberBadge/NumberBadge.js.map +0 -1
- package/dist/NumberBadge/index.d.ts +0 -2
- package/dist/NumberBadge/index.d.ts.map +0 -1
- package/dist/NumberBadge/index.js +0 -2
- package/dist/NumberBadge/index.js.map +0 -1
- package/dist/NumberInput/NumberInput.css +0 -4
- package/dist/NumberInput/NumberInput.d.ts +0 -45
- package/dist/NumberInput/NumberInput.d.ts.map +0 -1
- package/dist/NumberInput/NumberInput.js +0 -27
- package/dist/NumberInput/NumberInput.js.map +0 -1
- package/dist/NumberInput/index.d.ts +0 -3
- package/dist/NumberInput/index.d.ts.map +0 -1
- package/dist/NumberInput/index.js +0 -2
- package/dist/NumberInput/index.js.map +0 -1
- package/dist/OptionLabel/OptionLabel.css +0 -18
- package/dist/OptionLabel/OptionLabel.d.ts +0 -13
- package/dist/OptionLabel/OptionLabel.d.ts.map +0 -1
- package/dist/OptionLabel/OptionLabel.js +0 -13
- package/dist/OptionLabel/OptionLabel.js.map +0 -1
- package/dist/OptionLabel/index.d.ts +0 -3
- package/dist/OptionLabel/index.d.ts.map +0 -1
- package/dist/OptionLabel/index.js +0 -2
- package/dist/OptionLabel/index.js.map +0 -1
- package/dist/OrderedList/OrderedList.css +0 -37
- package/dist/OrderedList/OrderedList.d.ts +0 -32
- package/dist/OrderedList/OrderedList.d.ts.map +0 -1
- package/dist/OrderedList/OrderedList.js +0 -28
- package/dist/OrderedList/OrderedList.js.map +0 -1
- package/dist/OrderedList/index.d.ts +0 -3
- package/dist/OrderedList/index.d.ts.map +0 -1
- package/dist/OrderedList/index.js +0 -2
- package/dist/OrderedList/index.js.map +0 -1
- package/dist/PageBody/PageBody.css +0 -99
- package/dist/PageBody/PageBody.d.ts +0 -33
- package/dist/PageBody/PageBody.d.ts.map +0 -1
- package/dist/PageBody/PageBody.js +0 -28
- package/dist/PageBody/PageBody.js.map +0 -1
- package/dist/PageBody/index.d.ts +0 -2
- package/dist/PageBody/index.d.ts.map +0 -1
- package/dist/PageBody/index.js +0 -2
- package/dist/PageBody/index.js.map +0 -1
- package/dist/PageFooter/PageFooter.css +0 -101
- package/dist/PageFooter/PageFooter.d.ts +0 -55
- package/dist/PageFooter/PageFooter.d.ts.map +0 -1
- package/dist/PageFooter/PageFooter.js +0 -45
- package/dist/PageFooter/PageFooter.js.map +0 -1
- package/dist/PageFooter/index.d.ts +0 -2
- package/dist/PageFooter/index.d.ts.map +0 -1
- package/dist/PageFooter/index.js +0 -2
- package/dist/PageFooter/index.js.map +0 -1
- package/dist/PageHeader/PageHeader.css +0 -530
- package/dist/PageHeader/PageHeader.d.ts +0 -190
- package/dist/PageHeader/PageHeader.d.ts.map +0 -1
- package/dist/PageHeader/PageHeader.js +0 -115
- package/dist/PageHeader/PageHeader.js.map +0 -1
- package/dist/PageHeader/index.d.ts +0 -2
- package/dist/PageHeader/index.d.ts.map +0 -1
- package/dist/PageHeader/index.js +0 -2
- package/dist/PageHeader/index.js.map +0 -1
- package/dist/PageLayout/PageLayout.css +0 -6
- package/dist/PageLayout/PageLayout.d.ts +0 -38
- package/dist/PageLayout/PageLayout.d.ts.map +0 -1
- package/dist/PageLayout/PageLayout.js +0 -33
- package/dist/PageLayout/PageLayout.js.map +0 -1
- package/dist/PageLayout/index.d.ts +0 -2
- package/dist/PageLayout/index.d.ts.map +0 -1
- package/dist/PageLayout/index.js +0 -2
- package/dist/PageLayout/index.js.map +0 -1
- package/dist/Paragraph/Paragraph.css +0 -38
- package/dist/Paragraph/Paragraph.d.ts +0 -35
- package/dist/Paragraph/Paragraph.d.ts.map +0 -1
- package/dist/Paragraph/Paragraph.js +0 -25
- package/dist/Paragraph/Paragraph.js.map +0 -1
- package/dist/Paragraph/index.d.ts +0 -3
- package/dist/Paragraph/index.d.ts.map +0 -1
- package/dist/Paragraph/index.js +0 -2
- package/dist/Paragraph/index.js.map +0 -1
- package/dist/PasswordInput/PasswordInput.css +0 -4
- package/dist/PasswordInput/PasswordInput.d.ts +0 -52
- package/dist/PasswordInput/PasswordInput.d.ts.map +0 -1
- package/dist/PasswordInput/PasswordInput.js +0 -32
- package/dist/PasswordInput/PasswordInput.js.map +0 -1
- package/dist/PasswordInput/index.d.ts +0 -3
- package/dist/PasswordInput/index.d.ts.map +0 -1
- package/dist/PasswordInput/index.js +0 -2
- package/dist/PasswordInput/index.js.map +0 -1
- package/dist/Popover/Popover.css +0 -233
- package/dist/Popover/Popover.d.ts +0 -117
- package/dist/Popover/Popover.d.ts.map +0 -1
- package/dist/Popover/Popover.js +0 -219
- package/dist/Popover/Popover.js.map +0 -1
- package/dist/Popover/index.d.ts +0 -3
- package/dist/Popover/index.d.ts.map +0 -1
- package/dist/Popover/index.js +0 -2
- package/dist/Popover/index.js.map +0 -1
- package/dist/PreHeading/PreHeading.css +0 -10
- package/dist/PreHeading/PreHeading.d.ts +0 -8
- package/dist/PreHeading/PreHeading.d.ts.map +0 -1
- package/dist/PreHeading/PreHeading.js +0 -9
- package/dist/PreHeading/PreHeading.js.map +0 -1
- package/dist/PreHeading/index.d.ts +0 -3
- package/dist/PreHeading/index.d.ts.map +0 -1
- package/dist/PreHeading/index.js +0 -2
- package/dist/PreHeading/index.js.map +0 -1
- package/dist/ProgressBar/ProgressBar.css +0 -105
- package/dist/ProgressBar/ProgressBar.d.ts +0 -58
- package/dist/ProgressBar/ProgressBar.d.ts.map +0 -1
- package/dist/ProgressBar/ProgressBar.js +0 -36
- package/dist/ProgressBar/ProgressBar.js.map +0 -1
- package/dist/ProgressBar/index.d.ts +0 -2
- package/dist/ProgressBar/index.d.ts.map +0 -1
- package/dist/ProgressBar/index.js +0 -2
- package/dist/ProgressBar/index.js.map +0 -1
- package/dist/Radio/Radio.css +0 -205
- package/dist/Radio/Radio.d.ts +0 -14
- package/dist/Radio/Radio.d.ts.map +0 -1
- package/dist/Radio/Radio.js +0 -14
- package/dist/Radio/Radio.js.map +0 -1
- package/dist/Radio/index.d.ts +0 -3
- package/dist/Radio/index.d.ts.map +0 -1
- package/dist/Radio/index.js +0 -2
- package/dist/Radio/index.js.map +0 -1
- package/dist/RadioGroup/RadioGroup.css +0 -10
- package/dist/RadioGroup/RadioGroup.d.ts +0 -37
- package/dist/RadioGroup/RadioGroup.d.ts.map +0 -1
- package/dist/RadioGroup/RadioGroup.js +0 -37
- package/dist/RadioGroup/RadioGroup.js.map +0 -1
- package/dist/RadioGroup/index.d.ts +0 -3
- package/dist/RadioGroup/index.d.ts.map +0 -1
- package/dist/RadioGroup/index.js +0 -2
- package/dist/RadioGroup/index.js.map +0 -1
- package/dist/RadioOption/RadioOption.css +0 -17
- package/dist/RadioOption/RadioOption.d.ts +0 -14
- package/dist/RadioOption/RadioOption.d.ts.map +0 -1
- package/dist/RadioOption/RadioOption.js +0 -15
- package/dist/RadioOption/RadioOption.js.map +0 -1
- package/dist/RadioOption/index.d.ts +0 -3
- package/dist/RadioOption/index.d.ts.map +0 -1
- package/dist/RadioOption/index.js +0 -2
- package/dist/RadioOption/index.js.map +0 -1
- package/dist/SearchInput/SearchInput.css +0 -67
- package/dist/SearchInput/SearchInput.d.ts +0 -40
- package/dist/SearchInput/SearchInput.d.ts.map +0 -1
- package/dist/SearchInput/SearchInput.js +0 -31
- package/dist/SearchInput/SearchInput.js.map +0 -1
- package/dist/SearchInput/index.d.ts +0 -3
- package/dist/SearchInput/index.d.ts.map +0 -1
- package/dist/SearchInput/index.js +0 -2
- package/dist/SearchInput/index.js.map +0 -1
- package/dist/Select/Select.css +0 -94
- package/dist/Select/Select.d.ts +0 -52
- package/dist/Select/Select.d.ts.map +0 -1
- package/dist/Select/Select.js +0 -43
- package/dist/Select/Select.js.map +0 -1
- package/dist/Select/index.d.ts +0 -3
- package/dist/Select/index.d.ts.map +0 -1
- package/dist/Select/index.js +0 -2
- package/dist/Select/index.js.map +0 -1
- package/dist/SkipLink/SkipLink.css +0 -58
- package/dist/SkipLink/SkipLink.d.ts +0 -35
- package/dist/SkipLink/SkipLink.d.ts.map +0 -1
- package/dist/SkipLink/SkipLink.js +0 -23
- package/dist/SkipLink/SkipLink.js.map +0 -1
- package/dist/SkipLink/index.d.ts +0 -2
- package/dist/SkipLink/index.d.ts.map +0 -1
- package/dist/SkipLink/index.js +0 -2
- package/dist/SkipLink/index.js.map +0 -1
- package/dist/Spinner/Spinner.css +0 -118
- package/dist/Spinner/Spinner.d.ts +0 -43
- package/dist/Spinner/Spinner.d.ts.map +0 -1
- package/dist/Spinner/Spinner.js +0 -30
- package/dist/Spinner/Spinner.js.map +0 -1
- package/dist/Spinner/index.d.ts +0 -2
- package/dist/Spinner/index.d.ts.map +0 -1
- package/dist/Spinner/index.js +0 -2
- package/dist/Spinner/index.js.map +0 -1
- package/dist/Stack/Stack.css +0 -59
- package/dist/Stack/Stack.d.ts +0 -35
- package/dist/Stack/Stack.d.ts.map +0 -1
- package/dist/Stack/Stack.js +0 -29
- package/dist/Stack/Stack.js.map +0 -1
- package/dist/Stack/index.d.ts +0 -3
- package/dist/Stack/index.d.ts.map +0 -1
- package/dist/Stack/index.js +0 -2
- package/dist/Stack/index.js.map +0 -1
- package/dist/StatusBadge/StatusBadge.css +0 -87
- package/dist/StatusBadge/StatusBadge.d.ts +0 -50
- package/dist/StatusBadge/StatusBadge.d.ts.map +0 -1
- package/dist/StatusBadge/StatusBadge.js +0 -40
- package/dist/StatusBadge/StatusBadge.js.map +0 -1
- package/dist/StatusBadge/index.d.ts +0 -2
- package/dist/StatusBadge/index.d.ts.map +0 -1
- package/dist/StatusBadge/index.js +0 -2
- package/dist/StatusBadge/index.js.map +0 -1
- package/dist/SummaryList/SummaryList.css +0 -151
- package/dist/SummaryList/SummaryList.d.ts +0 -49
- package/dist/SummaryList/SummaryList.d.ts.map +0 -1
- package/dist/SummaryList/SummaryList.js +0 -31
- package/dist/SummaryList/SummaryList.js.map +0 -1
- package/dist/SummaryList/index.d.ts +0 -3
- package/dist/SummaryList/index.d.ts.map +0 -1
- package/dist/SummaryList/index.js +0 -2
- package/dist/SummaryList/index.js.map +0 -1
- package/dist/Table/Table.css +0 -243
- package/dist/Table/Table.d.ts +0 -61
- package/dist/Table/Table.d.ts.map +0 -1
- package/dist/Table/Table.js +0 -37
- package/dist/Table/Table.js.map +0 -1
- package/dist/Table/index.d.ts +0 -3
- package/dist/Table/index.d.ts.map +0 -1
- package/dist/Table/index.js +0 -2
- package/dist/Table/index.js.map +0 -1
- package/dist/TableOfContents/TableOfContents.css +0 -75
- package/dist/TableOfContents/TableOfContents.d.ts +0 -61
- package/dist/TableOfContents/TableOfContents.d.ts.map +0 -1
- package/dist/TableOfContents/TableOfContents.js +0 -32
- package/dist/TableOfContents/TableOfContents.js.map +0 -1
- package/dist/TableOfContents/index.d.ts +0 -3
- package/dist/TableOfContents/index.d.ts.map +0 -1
- package/dist/TableOfContents/index.js +0 -2
- package/dist/TableOfContents/index.js.map +0 -1
- package/dist/TelephoneInput/TelephoneInput.css +0 -4
- package/dist/TelephoneInput/TelephoneInput.d.ts +0 -38
- package/dist/TelephoneInput/TelephoneInput.d.ts.map +0 -1
- package/dist/TelephoneInput/TelephoneInput.js +0 -27
- package/dist/TelephoneInput/TelephoneInput.js.map +0 -1
- package/dist/TelephoneInput/index.d.ts +0 -3
- package/dist/TelephoneInput/index.d.ts.map +0 -1
- package/dist/TelephoneInput/index.js +0 -2
- package/dist/TelephoneInput/index.js.map +0 -1
- package/dist/TextArea/TextArea.css +0 -126
- package/dist/TextArea/TextArea.d.ts +0 -44
- package/dist/TextArea/TextArea.d.ts.map +0 -1
- package/dist/TextArea/TextArea.js +0 -33
- package/dist/TextArea/TextArea.js.map +0 -1
- package/dist/TextArea/index.d.ts +0 -3
- package/dist/TextArea/index.d.ts.map +0 -1
- package/dist/TextArea/index.js +0 -2
- package/dist/TextArea/index.js.map +0 -1
- package/dist/TextInput/TextInput.css +0 -122
- package/dist/TextInput/TextInput.d.ts +0 -44
- package/dist/TextInput/TextInput.d.ts.map +0 -1
- package/dist/TextInput/TextInput.js +0 -33
- package/dist/TextInput/TextInput.js.map +0 -1
- package/dist/TextInput/index.d.ts +0 -3
- package/dist/TextInput/index.d.ts.map +0 -1
- package/dist/TextInput/index.js +0 -2
- package/dist/TextInput/index.js.map +0 -1
- package/dist/TimeInput/TimeInput.css +0 -37
- package/dist/TimeInput/TimeInput.d.ts +0 -37
- package/dist/TimeInput/TimeInput.d.ts.map +0 -1
- package/dist/TimeInput/TimeInput.js +0 -52
- package/dist/TimeInput/TimeInput.js.map +0 -1
- package/dist/TimeInput/index.d.ts +0 -3
- package/dist/TimeInput/index.d.ts.map +0 -1
- package/dist/TimeInput/index.js +0 -2
- package/dist/TimeInput/index.js.map +0 -1
- package/dist/UnorderedList/UnorderedList.css +0 -38
- package/dist/UnorderedList/UnorderedList.d.ts +0 -26
- package/dist/UnorderedList/UnorderedList.d.ts.map +0 -1
- package/dist/UnorderedList/UnorderedList.js +0 -22
- package/dist/UnorderedList/UnorderedList.js.map +0 -1
- package/dist/UnorderedList/index.d.ts +0 -3
- package/dist/UnorderedList/index.d.ts.map +0 -1
- package/dist/UnorderedList/index.js +0 -2
- package/dist/UnorderedList/index.js.map +0 -1
- package/dist/index.d.ts +0 -79
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -89
- package/dist/index.js.map +0 -1
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { Icon } from "../Icon/Icon2.mjs";
|
|
2
|
+
import { Button } from "../Button/Button2.mjs";
|
|
3
|
+
/* empty css */
|
|
4
|
+
import React from "react";
|
|
5
|
+
import { classNames } from "@dsn-starter-kit/core";
|
|
6
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
+
//#region src/Drawer/Drawer.tsx
|
|
8
|
+
const DrawerContext = React.createContext({ headingId: "" });
|
|
9
|
+
/**
|
|
10
|
+
* Drawer component
|
|
11
|
+
* Zijpaneel dat vanuit links of rechts de viewport inschuift.
|
|
12
|
+
*
|
|
13
|
+
* Gebruik `modal={true}` (standaard) voor gefocuste taken waarbij de achtergrond
|
|
14
|
+
* geblokkeerd moet worden. Gebruik `modal={false}` als de gebruiker de achtergrondpagina
|
|
15
|
+
* nodig heeft voor context.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```tsx
|
|
19
|
+
* <Drawer isOpen={isOpen} onClose={() => setIsOpen(false)}>
|
|
20
|
+
* <DrawerHeader>
|
|
21
|
+
* <DrawerHeading>Filteropties</DrawerHeading>
|
|
22
|
+
* </DrawerHeader>
|
|
23
|
+
* <DrawerBody>
|
|
24
|
+
* <Paragraph>Inhoud van het zijpaneel</Paragraph>
|
|
25
|
+
* </DrawerBody>
|
|
26
|
+
* <DrawerFooter>
|
|
27
|
+
* <ActionGroup>
|
|
28
|
+
* <Button variant="strong" onClick={() => setIsOpen(false)}>Toepassen</Button>
|
|
29
|
+
* <Button variant="default" onClick={() => setIsOpen(false)}>Annuleren</Button>
|
|
30
|
+
* </ActionGroup>
|
|
31
|
+
* </DrawerFooter>
|
|
32
|
+
* </Drawer>
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
const Drawer = React.forwardRef(({ className, isOpen, onClose, modal = true, side = "right", children, ...props }, ref) => {
|
|
36
|
+
const internalRef = React.useRef(null);
|
|
37
|
+
const dialogRef = ref ?? internalRef;
|
|
38
|
+
const headingId = React.useId();
|
|
39
|
+
React.useEffect(() => {
|
|
40
|
+
const dialog = dialogRef.current;
|
|
41
|
+
if (!dialog) return;
|
|
42
|
+
if (isOpen && !dialog.open) {
|
|
43
|
+
if (modal) dialog.showModal();
|
|
44
|
+
else dialog.show();
|
|
45
|
+
} else if (!isOpen && dialog.open) dialog.close();
|
|
46
|
+
}, [
|
|
47
|
+
isOpen,
|
|
48
|
+
modal,
|
|
49
|
+
dialogRef
|
|
50
|
+
]);
|
|
51
|
+
React.useEffect(() => {
|
|
52
|
+
if (modal) return;
|
|
53
|
+
const dialog = dialogRef.current;
|
|
54
|
+
if (!dialog || !isOpen) return;
|
|
55
|
+
const handleKeyDown = (event) => {
|
|
56
|
+
if (event.key === "Escape") onClose?.();
|
|
57
|
+
};
|
|
58
|
+
dialog.addEventListener("keydown", handleKeyDown);
|
|
59
|
+
return () => dialog.removeEventListener("keydown", handleKeyDown);
|
|
60
|
+
}, [
|
|
61
|
+
modal,
|
|
62
|
+
isOpen,
|
|
63
|
+
onClose,
|
|
64
|
+
dialogRef
|
|
65
|
+
]);
|
|
66
|
+
const handleCancel = (event) => {
|
|
67
|
+
event.preventDefault();
|
|
68
|
+
onClose?.();
|
|
69
|
+
};
|
|
70
|
+
const classes = classNames("dsn-drawer", side === "left" ? "dsn-drawer--side-left" : "dsn-drawer--side-right", className);
|
|
71
|
+
return /* @__PURE__ */ jsx(DrawerContext.Provider, {
|
|
72
|
+
value: {
|
|
73
|
+
headingId,
|
|
74
|
+
onClose
|
|
75
|
+
},
|
|
76
|
+
children: /* @__PURE__ */ jsx("dialog", {
|
|
77
|
+
ref: dialogRef,
|
|
78
|
+
className: classes,
|
|
79
|
+
"aria-labelledby": headingId,
|
|
80
|
+
onCancel: handleCancel,
|
|
81
|
+
...props,
|
|
82
|
+
children
|
|
83
|
+
})
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
Drawer.displayName = "Drawer";
|
|
87
|
+
/**
|
|
88
|
+
* DrawerHeader
|
|
89
|
+
* De headerstrook van het zijpaneel met heading en sluitknop.
|
|
90
|
+
*/
|
|
91
|
+
const DrawerHeader = React.forwardRef(({ className, children, ...props }, ref) => {
|
|
92
|
+
const { onClose } = React.useContext(DrawerContext);
|
|
93
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
94
|
+
ref,
|
|
95
|
+
className: classNames("dsn-drawer__header", className),
|
|
96
|
+
...props,
|
|
97
|
+
children: [children, /* @__PURE__ */ jsx(Button, {
|
|
98
|
+
variant: "subtle",
|
|
99
|
+
size: "small",
|
|
100
|
+
iconOnly: true,
|
|
101
|
+
onClick: onClose,
|
|
102
|
+
iconStart: /* @__PURE__ */ jsx(Icon, {
|
|
103
|
+
name: "x",
|
|
104
|
+
"aria-hidden": true
|
|
105
|
+
}),
|
|
106
|
+
children: "Sluiten"
|
|
107
|
+
})]
|
|
108
|
+
});
|
|
109
|
+
});
|
|
110
|
+
DrawerHeader.displayName = "DrawerHeader";
|
|
111
|
+
/**
|
|
112
|
+
* DrawerHeading
|
|
113
|
+
* De heading van het zijpaneel. ID wordt automatisch gegenereerd voor aria-labelledby.
|
|
114
|
+
*/
|
|
115
|
+
const DrawerHeading = React.forwardRef(({ className, level = 2, children, ...props }, ref) => {
|
|
116
|
+
const { headingId } = React.useContext(DrawerContext);
|
|
117
|
+
const Tag = `h${level}`;
|
|
118
|
+
return /* @__PURE__ */ jsx(Tag, {
|
|
119
|
+
ref,
|
|
120
|
+
id: headingId,
|
|
121
|
+
className: classNames("dsn-drawer-heading", className),
|
|
122
|
+
...props,
|
|
123
|
+
children
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
DrawerHeading.displayName = "DrawerHeading";
|
|
127
|
+
/**
|
|
128
|
+
* DrawerBody
|
|
129
|
+
* De scrollbare inhoudssectie van het zijpaneel met scroll-affordance schaduw.
|
|
130
|
+
*/
|
|
131
|
+
const DrawerBody = React.forwardRef(({ className, children, ...props }, ref) => {
|
|
132
|
+
return /* @__PURE__ */ jsx("div", {
|
|
133
|
+
ref,
|
|
134
|
+
className: classNames("dsn-drawer__body", className),
|
|
135
|
+
...props,
|
|
136
|
+
children
|
|
137
|
+
});
|
|
138
|
+
});
|
|
139
|
+
DrawerBody.displayName = "DrawerBody";
|
|
140
|
+
/**
|
|
141
|
+
* DrawerFooter
|
|
142
|
+
* De voettekst van het zijpaneel met actieknoppen.
|
|
143
|
+
*/
|
|
144
|
+
const DrawerFooter = React.forwardRef(({ className, children, ...props }, ref) => {
|
|
145
|
+
return /* @__PURE__ */ jsx("div", {
|
|
146
|
+
ref,
|
|
147
|
+
className: classNames("dsn-drawer__footer", className),
|
|
148
|
+
...props,
|
|
149
|
+
children
|
|
150
|
+
});
|
|
151
|
+
});
|
|
152
|
+
DrawerFooter.displayName = "DrawerFooter";
|
|
153
|
+
//#endregion
|
|
154
|
+
export { Drawer, DrawerBody, DrawerFooter, DrawerHeader, DrawerHeading };
|
|
155
|
+
|
|
156
|
+
//# sourceMappingURL=Drawer2.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Drawer2.mjs","names":[],"sources":["../../src/Drawer/Drawer.tsx"],"sourcesContent":["import React from 'react';\nimport { classNames } from '@dsn-starter-kit/core';\nimport { Button } from '../Button';\nimport { Icon } from '../Icon';\nimport './Drawer.css';\n\n// =============================================================================\n// Context\n// =============================================================================\n\ninterface DrawerContextValue {\n headingId: string;\n onClose?: () => void;\n}\n\nconst DrawerContext = React.createContext<DrawerContextValue>({\n headingId: '',\n});\n\n// =============================================================================\n// Drawer (root)\n// =============================================================================\n\nexport interface DrawerProps extends Omit<\n React.HTMLAttributes<HTMLDialogElement>,\n 'children'\n> {\n /**\n * Bepaalt of het zijpaneel getoond wordt.\n */\n isOpen: boolean;\n\n /**\n * Callback die wordt aangeroepen wanneer het zijpaneel sluit\n * (sluitknop, Escape-toets).\n */\n onClose?: () => void;\n\n /**\n * Modaal of non-modaal gedrag.\n * - `true` (standaard): opent via `.showModal()` — achtergrond geblokkeerd,\n * natieve focus-trap, Escape sluit via `cancel`-event.\n * - `false`: opent via `.show()` — achtergrond blijft interactief,\n * Escape sluit via `keydown`-listener.\n * @default true\n */\n modal?: boolean;\n\n /**\n * De kant van de viewport vanwaar het zijpaneel inschuift.\n * @default \"right\"\n */\n side?: 'right' | 'left';\n\n /**\n * De subcomponenten van het zijpaneel:\n * `DrawerHeader`, `DrawerBody`, `DrawerFooter`\n */\n children?: React.ReactNode;\n}\n\n/**\n * Drawer component\n * Zijpaneel dat vanuit links of rechts de viewport inschuift.\n *\n * Gebruik `modal={true}` (standaard) voor gefocuste taken waarbij de achtergrond\n * geblokkeerd moet worden. Gebruik `modal={false}` als de gebruiker de achtergrondpagina\n * nodig heeft voor context.\n *\n * @example\n * ```tsx\n * <Drawer isOpen={isOpen} onClose={() => setIsOpen(false)}>\n * <DrawerHeader>\n * <DrawerHeading>Filteropties</DrawerHeading>\n * </DrawerHeader>\n * <DrawerBody>\n * <Paragraph>Inhoud van het zijpaneel</Paragraph>\n * </DrawerBody>\n * <DrawerFooter>\n * <ActionGroup>\n * <Button variant=\"strong\" onClick={() => setIsOpen(false)}>Toepassen</Button>\n * <Button variant=\"default\" onClick={() => setIsOpen(false)}>Annuleren</Button>\n * </ActionGroup>\n * </DrawerFooter>\n * </Drawer>\n * ```\n */\nexport const Drawer = React.forwardRef<HTMLDialogElement, DrawerProps>(\n (\n {\n className,\n isOpen,\n onClose,\n modal = true,\n side = 'right',\n children,\n ...props\n },\n ref\n ) => {\n const internalRef = React.useRef<HTMLDialogElement>(null);\n const dialogRef =\n (ref as React.RefObject<HTMLDialogElement>) ?? internalRef;\n const headingId = React.useId();\n\n React.useEffect(() => {\n const dialog = dialogRef.current;\n if (!dialog) return;\n\n if (isOpen && !dialog.open) {\n if (modal) {\n dialog.showModal();\n } else {\n dialog.show();\n }\n } else if (!isOpen && dialog.open) {\n dialog.close();\n }\n }, [isOpen, modal, dialogRef]);\n\n // Non-modaal: handmatige Escape-afhandeling via keydown\n React.useEffect(() => {\n if (modal) return;\n const dialog = dialogRef.current;\n if (!dialog || !isOpen) return;\n\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n onClose?.();\n }\n };\n\n dialog.addEventListener('keydown', handleKeyDown);\n return () => dialog.removeEventListener('keydown', handleKeyDown);\n }, [modal, isOpen, onClose, dialogRef]);\n\n // Modaal: native cancel-event (Escape via browser)\n const handleCancel = (event: React.SyntheticEvent<HTMLDialogElement>) => {\n event.preventDefault();\n onClose?.();\n };\n\n const classes = classNames(\n 'dsn-drawer',\n side === 'left' ? 'dsn-drawer--side-left' : 'dsn-drawer--side-right',\n className\n );\n\n return (\n <DrawerContext.Provider value={{ headingId, onClose }}>\n <dialog\n ref={dialogRef}\n className={classes}\n aria-labelledby={headingId}\n onCancel={handleCancel}\n {...props}\n >\n {children}\n </dialog>\n </DrawerContext.Provider>\n );\n }\n);\n\nDrawer.displayName = 'Drawer';\n\n// =============================================================================\n// DrawerHeader\n// =============================================================================\n\nexport interface DrawerHeaderProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Inhoud van de header — doorgaans een `DrawerHeading`\n */\n children?: React.ReactNode;\n}\n\n/**\n * DrawerHeader\n * De headerstrook van het zijpaneel met heading en sluitknop.\n */\nexport const DrawerHeader = React.forwardRef<HTMLDivElement, DrawerHeaderProps>(\n ({ className, children, ...props }, ref) => {\n const { onClose } = React.useContext(DrawerContext);\n\n return (\n <div\n ref={ref}\n className={classNames('dsn-drawer__header', className)}\n {...props}\n >\n {children}\n <Button\n variant=\"subtle\"\n size=\"small\"\n iconOnly\n onClick={onClose}\n iconStart={<Icon name=\"x\" aria-hidden />}\n >\n Sluiten\n </Button>\n </div>\n );\n }\n);\n\nDrawerHeader.displayName = 'DrawerHeader';\n\n// =============================================================================\n// DrawerHeading\n// =============================================================================\n\nexport interface DrawerHeadingProps extends React.HTMLAttributes<HTMLHeadingElement> {\n /**\n * Semantisch heading-niveau. Kies op basis van documenthiërarchie, niet visuele grootte.\n * @default 2\n */\n level?: 1 | 2 | 3 | 4 | 5 | 6;\n\n /**\n * De zichtbare heading-tekst\n */\n children?: React.ReactNode;\n}\n\n/**\n * DrawerHeading\n * De heading van het zijpaneel. ID wordt automatisch gegenereerd voor aria-labelledby.\n */\nexport const DrawerHeading = React.forwardRef<\n HTMLHeadingElement,\n DrawerHeadingProps\n>(({ className, level = 2, children, ...props }, ref) => {\n const { headingId } = React.useContext(DrawerContext);\n const Tag = `h${level}` as React.ElementType;\n\n return (\n <Tag\n ref={ref}\n id={headingId}\n className={classNames('dsn-drawer-heading', className)}\n {...props}\n >\n {children}\n </Tag>\n );\n});\n\nDrawerHeading.displayName = 'DrawerHeading';\n\n// =============================================================================\n// DrawerBody\n// =============================================================================\n\nexport interface DrawerBodyProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * De hoofdinhoud van het zijpaneel\n */\n children?: React.ReactNode;\n}\n\n/**\n * DrawerBody\n * De scrollbare inhoudssectie van het zijpaneel met scroll-affordance schaduw.\n */\nexport const DrawerBody = React.forwardRef<HTMLDivElement, DrawerBodyProps>(\n ({ className, children, ...props }, ref) => {\n return (\n <div\n ref={ref}\n className={classNames('dsn-drawer__body', className)}\n {...props}\n >\n {children}\n </div>\n );\n }\n);\n\nDrawerBody.displayName = 'DrawerBody';\n\n// =============================================================================\n// DrawerFooter\n// =============================================================================\n\nexport interface DrawerFooterProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * De acties van het zijpaneel — doorgaans een `ActionGroup` met knoppen\n */\n children?: React.ReactNode;\n}\n\n/**\n * DrawerFooter\n * De voettekst van het zijpaneel met actieknoppen.\n */\nexport const DrawerFooter = React.forwardRef<HTMLDivElement, DrawerFooterProps>(\n ({ className, children, ...props }, ref) => {\n return (\n <div\n ref={ref}\n className={classNames('dsn-drawer__footer', className)}\n {...props}\n >\n {children}\n </div>\n );\n }\n);\n\nDrawerFooter.displayName = 'DrawerFooter';\n"],"mappings":";;;;;;;AAeA,MAAM,gBAAgB,MAAM,cAAkC,EAC5D,WAAW,GACb,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsED,MAAa,SAAS,MAAM,YAExB,EACE,WACA,QACA,SACA,QAAQ,MACR,OAAO,SACP,UACA,GAAG,SAEL,QACG;CACH,MAAM,cAAc,MAAM,OAA0B,IAAI;CACxD,MAAM,YACH,OAA8C;CACjD,MAAM,YAAY,MAAM,MAAM;CAE9B,MAAM,gBAAgB;EACpB,MAAM,SAAS,UAAU;EACzB,IAAI,CAAC,QAAQ;EAEb,IAAI,UAAU,CAAC,OAAO,MAAM;GAC1B,IAAI,OACF,OAAO,UAAU;QAEjB,OAAO,KAAK;EAEhB,OAAO,IAAI,CAAC,UAAU,OAAO,MAC3B,OAAO,MAAM;CAEjB,GAAG;EAAC;EAAQ;EAAO;CAAS,CAAC;CAG7B,MAAM,gBAAgB;EACpB,IAAI,OAAO;EACX,MAAM,SAAS,UAAU;EACzB,IAAI,CAAC,UAAU,CAAC,QAAQ;EAExB,MAAM,iBAAiB,UAAyB;GAC9C,IAAI,MAAM,QAAQ,UAChB,UAAU;EAEd;EAEA,OAAO,iBAAiB,WAAW,aAAa;EAChD,aAAa,OAAO,oBAAoB,WAAW,aAAa;CAClE,GAAG;EAAC;EAAO;EAAQ;EAAS;CAAS,CAAC;CAGtC,MAAM,gBAAgB,UAAmD;EACvE,MAAM,eAAe;EACrB,UAAU;CACZ;CAEA,MAAM,UAAU,WACd,cACA,SAAS,SAAS,0BAA0B,0BAC5C,SACF;CAEA,OACE,oBAAC,cAAc,UAAf;EAAwB,OAAO;GAAE;GAAW;EAAQ;EAClD,UAAA,oBAAC,UAAD;GACE,KAAK;GACL,WAAW;GACX,mBAAiB;GACjB,UAAU;GACV,GAAI;GAEH;EACK,CAAA;CACc,CAAA;AAE5B,CACF;AAEA,OAAO,cAAc;;;;;AAiBrB,MAAa,eAAe,MAAM,YAC/B,EAAE,WAAW,UAAU,GAAG,SAAS,QAAQ;CAC1C,MAAM,EAAE,YAAY,MAAM,WAAW,aAAa;CAElD,OACE,qBAAC,OAAD;EACO;EACL,WAAW,WAAW,sBAAsB,SAAS;EACrD,GAAI;EAHN,UAAA,CAKG,UACD,oBAAC,QAAD;GACE,SAAQ;GACR,MAAK;GACL,UAAA;GACA,SAAS;GACT,WAAW,oBAAC,MAAD;IAAM,MAAK;IAAI,eAAA;GAAa,CAAA;GACxC,UAAA;EAEO,CAAA,CACL;;AAET,CACF;AAEA,aAAa,cAAc;;;;;AAuB3B,MAAa,gBAAgB,MAAM,YAGhC,EAAE,WAAW,QAAQ,GAAG,UAAU,GAAG,SAAS,QAAQ;CACvD,MAAM,EAAE,cAAc,MAAM,WAAW,aAAa;CACpD,MAAM,MAAM,IAAI;CAEhB,OACE,oBAAC,KAAD;EACO;EACL,IAAI;EACJ,WAAW,WAAW,sBAAsB,SAAS;EACrD,GAAI;EAEH;CACE,CAAA;AAET,CAAC;AAED,cAAc,cAAc;;;;;AAiB5B,MAAa,aAAa,MAAM,YAC7B,EAAE,WAAW,UAAU,GAAG,SAAS,QAAQ;CAC1C,OACE,oBAAC,OAAD;EACO;EACL,WAAW,WAAW,oBAAoB,SAAS;EACnD,GAAI;EAEH;CACE,CAAA;AAET,CACF;AAEA,WAAW,cAAc;;;;;AAiBzB,MAAa,eAAe,MAAM,YAC/B,EAAE,WAAW,UAAU,GAAG,SAAS,QAAQ;CAC1C,OACE,oBAAC,OAAD;EACO;EACL,WAAW,WAAW,sBAAsB,SAAS;EACrD,GAAI;EAEH;CACE,CAAA;AAET,CACF;AAEA,aAAa,cAAc"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { Drawer, DrawerBody, DrawerBodyProps, DrawerFooter, DrawerFooterProps, DrawerHeader, DrawerHeaderProps, DrawerHeading, DrawerHeadingProps, DrawerProps } from "./Drawer.mjs";
|
|
2
|
+
export { Drawer, DrawerBody, type DrawerBodyProps, DrawerFooter, type DrawerFooterProps, DrawerHeader, type DrawerHeaderProps, DrawerHeading, type DrawerHeadingProps, type DrawerProps };
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { FormControlWidth } from "@dsn-starter-kit/core";
|
|
3
|
+
//#region src/EmailInput/EmailInput.d.ts
|
|
4
|
+
interface EmailInputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type'> {
|
|
5
|
+
/**
|
|
6
|
+
* Whether the input is in an invalid state
|
|
7
|
+
* @default false
|
|
8
|
+
*/
|
|
9
|
+
invalid?: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Width variant for the input
|
|
12
|
+
* @default undefined (uses default max-width from form-control)
|
|
13
|
+
*/
|
|
14
|
+
width?: FormControlWidth;
|
|
15
|
+
/**
|
|
16
|
+
* Additional CSS class names
|
|
17
|
+
*/
|
|
18
|
+
className?: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Email Input component
|
|
22
|
+
* Email input with appropriate inputmode and autocomplete
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```tsx
|
|
26
|
+
* // Basic usage
|
|
27
|
+
* <EmailInput placeholder="naam@voorbeeld.nl" />
|
|
28
|
+
*
|
|
29
|
+
* // With label
|
|
30
|
+
* <FormFieldLabel htmlFor="email">E-mailadres</FormFieldLabel>
|
|
31
|
+
* <EmailInput id="email" />
|
|
32
|
+
*
|
|
33
|
+
* // Invalid state
|
|
34
|
+
* <EmailInput invalid aria-invalid="true" aria-describedby="error" />
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
declare const EmailInput: React.ForwardRefExoticComponent<EmailInputProps & React.RefAttributes<HTMLInputElement>>;
|
|
38
|
+
//#endregion
|
|
39
|
+
export { EmailInput, EmailInputProps };
|
|
40
|
+
//# sourceMappingURL=EmailInput.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailInput.d.mts","names":[],"sources":["../../src/EmailInput/EmailInput.tsx"],"mappings":";;;UAIiB,wBAAwB,KACvC,MAAM,oBAAoB;;;;;EAO1B;;;;;EAMA,QAAQ;;;;EAKR;;;;;;;;;;;;;;;;;;;cAoBW,YAAU,MAAA,0BAAA,kBAAA,MAAA,cAAA"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/* empty css */
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { classNames } from "@dsn-starter-kit/core";
|
|
4
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
|
+
//#region src/EmailInput/EmailInput.tsx
|
|
6
|
+
/**
|
|
7
|
+
* Email Input component
|
|
8
|
+
* Email input with appropriate inputmode and autocomplete
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```tsx
|
|
12
|
+
* // Basic usage
|
|
13
|
+
* <EmailInput placeholder="naam@voorbeeld.nl" />
|
|
14
|
+
*
|
|
15
|
+
* // With label
|
|
16
|
+
* <FormFieldLabel htmlFor="email">E-mailadres</FormFieldLabel>
|
|
17
|
+
* <EmailInput id="email" />
|
|
18
|
+
*
|
|
19
|
+
* // Invalid state
|
|
20
|
+
* <EmailInput invalid aria-invalid="true" aria-describedby="error" />
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
const EmailInput = React.forwardRef(({ className, invalid, width, autoComplete, ...props }, ref) => {
|
|
24
|
+
const classes = classNames("dsn-text-input", width && `dsn-text-input--width-${width}`, className);
|
|
25
|
+
return /* @__PURE__ */ jsx("input", {
|
|
26
|
+
ref,
|
|
27
|
+
type: "email",
|
|
28
|
+
inputMode: "email",
|
|
29
|
+
className: classes,
|
|
30
|
+
autoComplete: autoComplete || "email",
|
|
31
|
+
"aria-invalid": invalid || void 0,
|
|
32
|
+
...props
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
EmailInput.displayName = "EmailInput";
|
|
36
|
+
//#endregion
|
|
37
|
+
export { EmailInput };
|
|
38
|
+
|
|
39
|
+
//# sourceMappingURL=EmailInput.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmailInput.mjs","names":[],"sources":["../../src/EmailInput/EmailInput.tsx"],"sourcesContent":["import React from 'react';\nimport { classNames, FormControlWidth } from '@dsn-starter-kit/core';\nimport '../TextInput/TextInput.css';\n\nexport interface EmailInputProps extends Omit<\n React.InputHTMLAttributes<HTMLInputElement>,\n 'type'\n> {\n /**\n * Whether the input is in an invalid state\n * @default false\n */\n invalid?: boolean;\n\n /**\n * Width variant for the input\n * @default undefined (uses default max-width from form-control)\n */\n width?: FormControlWidth;\n\n /**\n * Additional CSS class names\n */\n className?: string;\n}\n\n/**\n * Email Input component\n * Email input with appropriate inputmode and autocomplete\n *\n * @example\n * ```tsx\n * // Basic usage\n * <EmailInput placeholder=\"naam@voorbeeld.nl\" />\n *\n * // With label\n * <FormFieldLabel htmlFor=\"email\">E-mailadres</FormFieldLabel>\n * <EmailInput id=\"email\" />\n *\n * // Invalid state\n * <EmailInput invalid aria-invalid=\"true\" aria-describedby=\"error\" />\n * ```\n */\nexport const EmailInput = React.forwardRef<HTMLInputElement, EmailInputProps>(\n ({ className, invalid, width, autoComplete, ...props }, ref) => {\n const classes = classNames(\n 'dsn-text-input',\n width && `dsn-text-input--width-${width}`,\n className\n );\n\n return (\n <input\n ref={ref}\n type=\"email\"\n inputMode=\"email\"\n className={classes}\n autoComplete={autoComplete || 'email'}\n aria-invalid={invalid || undefined}\n {...props}\n />\n );\n }\n);\n\nEmailInput.displayName = 'EmailInput';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AA2CA,MAAa,aAAa,MAAM,YAC7B,EAAE,WAAW,SAAS,OAAO,cAAc,GAAG,SAAS,QAAQ;CAC9D,MAAM,UAAU,WACd,kBACA,SAAS,yBAAyB,SAClC,SACF;CAEA,OACE,oBAAC,SAAD;EACO;EACL,MAAK;EACL,WAAU;EACV,WAAW;EACX,cAAc,gBAAgB;EAC9B,gBAAc,WAAW,KAAA;EACzB,GAAI;CACL,CAAA;AAEL,CACF;AAEA,WAAW,cAAc"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
//#region src/File/File.d.ts
|
|
3
|
+
type FileStatus = 'default' | 'loading' | 'uploaded' | 'error';
|
|
4
|
+
type FileCtaVariant = 'view' | 'download';
|
|
5
|
+
type FileMediaType = 'document' | 'image';
|
|
6
|
+
interface FileProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
7
|
+
/** Bestandsnaam inclusief extensie (vereist). Extensie wordt visueel afgekapt. */
|
|
8
|
+
fileName: string;
|
|
9
|
+
/** Bestandstype als afkorting: "PDF", "JPG". Getoond in dsn-file__meta. */
|
|
10
|
+
fileType?: string;
|
|
11
|
+
/** Bestandsgrootte als geformatteerde string: "1,2 MB". */
|
|
12
|
+
fileSize?: string;
|
|
13
|
+
/**
|
|
14
|
+
* State van het bestand.
|
|
15
|
+
* Bij 'uploaded' keert het component na 2 seconden automatisch terug naar 'default'.
|
|
16
|
+
* @default 'default'
|
|
17
|
+
*/
|
|
18
|
+
status?: FileStatus;
|
|
19
|
+
/** Foutmelding, getoond bij status="error". */
|
|
20
|
+
errorMessage?: string;
|
|
21
|
+
/** URL naar het bestand. Maakt de naam een <a> en schakelt de interactieve variant in. */
|
|
22
|
+
href?: string;
|
|
23
|
+
/** Callback voor de verwijderactie. Toont de "Verwijder"-knop. */
|
|
24
|
+
onDelete?: () => void;
|
|
25
|
+
/**
|
|
26
|
+
* Zichtbare tekst op de verwijder-knop.
|
|
27
|
+
* @default "Verwijder"
|
|
28
|
+
*/
|
|
29
|
+
deleteLabel?: string;
|
|
30
|
+
/**
|
|
31
|
+
* CTA-type in de interactieve variant.
|
|
32
|
+
* 'view' toont geen aparte CTA; de bestandsnaam opent als stretched link in een nieuw tabblad.
|
|
33
|
+
* 'download' toont een aparte download-knop; de bestandsnaam opent in een nieuw tabblad.
|
|
34
|
+
* @default 'view'
|
|
35
|
+
*/
|
|
36
|
+
ctaVariant?: FileCtaVariant;
|
|
37
|
+
/**
|
|
38
|
+
* Overschrijft het standaard CTA-label voor de download-variant.
|
|
39
|
+
* Standaard: "Download".
|
|
40
|
+
*/
|
|
41
|
+
ctaLabel?: string;
|
|
42
|
+
/**
|
|
43
|
+
* Bepaalt het icoon: file-description.svg of photo.svg.
|
|
44
|
+
* Genegeerd wanneer previewSrc aanwezig is.
|
|
45
|
+
* @default 'document'
|
|
46
|
+
*/
|
|
47
|
+
mediaType?: FileMediaType;
|
|
48
|
+
/** URL van de afbeeldingspreview. Vervangt het icoon in het media-vlak. */
|
|
49
|
+
previewSrc?: string;
|
|
50
|
+
/**
|
|
51
|
+
* Visueel verborgen label voor de Spinner.
|
|
52
|
+
* @default "Bezig met uploaden"
|
|
53
|
+
*/
|
|
54
|
+
loadingLabel?: string;
|
|
55
|
+
/**
|
|
56
|
+
* Tekst voor de aria-live regio bij de uploaded state.
|
|
57
|
+
* @default "{fileName} succesvol geüpload"
|
|
58
|
+
*/
|
|
59
|
+
uploadedLabel?: string;
|
|
60
|
+
/**
|
|
61
|
+
* Tekst voor de aria-live regio bij de error state.
|
|
62
|
+
* Standaard "{fileName}: {errorMessage}", of "{fileName} uploaden mislukt"
|
|
63
|
+
* wanneer er geen errorMessage is.
|
|
64
|
+
*/
|
|
65
|
+
errorLabel?: string;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* File component
|
|
69
|
+
* Toont meta-informatie over een bestand (naam, type, grootte) samen met acties.
|
|
70
|
+
* Ondersteunt vier upload-states (default, loading, uploaded, error) en een
|
|
71
|
+
* interactieve variant voor controle- of detailpagina's.
|
|
72
|
+
*
|
|
73
|
+
* @example
|
|
74
|
+
* ```tsx
|
|
75
|
+
* // Default — eerder geüpload bestand, met verwijder-optie
|
|
76
|
+
* <File
|
|
77
|
+
* fileName="document.pdf"
|
|
78
|
+
* fileType="PDF"
|
|
79
|
+
* fileSize="1,2 MB"
|
|
80
|
+
* href="/bestanden/document.pdf"
|
|
81
|
+
* onDelete={() => handleDelete()}
|
|
82
|
+
* />
|
|
83
|
+
*
|
|
84
|
+
* // Interactief — bestandsnaam als link (nieuw tabblad)
|
|
85
|
+
* <File
|
|
86
|
+
* fileName="rapport-2024.pdf"
|
|
87
|
+
* fileType="PDF"
|
|
88
|
+
* fileSize="2,1 MB"
|
|
89
|
+
* href="/bestanden/rapport-2024.pdf"
|
|
90
|
+
* />
|
|
91
|
+
*
|
|
92
|
+
* // Interactief — download CTA
|
|
93
|
+
* <File
|
|
94
|
+
* fileName="rapport-2024.pdf"
|
|
95
|
+
* fileType="PDF"
|
|
96
|
+
* fileSize="2,1 MB"
|
|
97
|
+
* href="/bestanden/rapport-2024.pdf"
|
|
98
|
+
* ctaVariant="download"
|
|
99
|
+
* />
|
|
100
|
+
* ```
|
|
101
|
+
*/
|
|
102
|
+
declare const File: React.ForwardRefExoticComponent<FileProps & React.RefAttributes<HTMLDivElement>>;
|
|
103
|
+
interface FileListProps extends React.HTMLAttributes<HTMLUListElement> {
|
|
104
|
+
/** File componenten */
|
|
105
|
+
children?: React.ReactNode;
|
|
106
|
+
className?: string;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* FileList component
|
|
110
|
+
* Wrapper voor meerdere File componenten.
|
|
111
|
+
* Rendert een <ul role="list"> met <li> wrappers — nodig omdat CSS-resets lijstsemantiek verwijderen.
|
|
112
|
+
*
|
|
113
|
+
* @example
|
|
114
|
+
* ```tsx
|
|
115
|
+
* <FileList>
|
|
116
|
+
* <File fileName="document.pdf" fileType="PDF" fileSize="1,2 MB" href="..." onDelete={() => {}} />
|
|
117
|
+
* <File fileName="foto.jpg" fileType="JPG" fileSize="3,4 MB" href="..." onDelete={() => {}} />
|
|
118
|
+
* </FileList>
|
|
119
|
+
* ```
|
|
120
|
+
*/
|
|
121
|
+
declare const FileList: React.ForwardRefExoticComponent<FileListProps & React.RefAttributes<HTMLUListElement>>;
|
|
122
|
+
//#endregion
|
|
123
|
+
export { File, FileCtaVariant, FileList, FileListProps, FileMediaType, FileProps, FileStatus };
|
|
124
|
+
//# sourceMappingURL=File.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"File.d.mts","names":[],"sources":["../../src/File/File.tsx"],"mappings":";;KAOY;KACA;KACA;UAEK,kBAAkB,MAAM,eAAe;;EAEtD;;EAGA;;EAGA;;;;;;EAOA,SAAS;;EAGT;;EAGA;;EAGA;;;;;EAMA;;;;;;;EAQA,aAAa;;;;;EAMb;;;;;;EAOA,YAAY;;EAGZ;;;;;EAMA;;;;;EAMA;;;;;;EAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAsCW,MAAI,MAAA,0BAAA,YAAA,MAAA,cAAA;UAuLA,sBAAsB,MAAM,eAAe;;EAE1D,WAAW,MAAM;EACjB;;;;;;;;;;;;;;;cAgBW,UAAQ,MAAA,0BAAA,gBAAA,MAAA,cAAA"}
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
import { Icon } from "../Icon/Icon2.mjs";
|
|
2
|
+
import { Spinner } from "../Spinner/Spinner2.mjs";
|
|
3
|
+
import { FormFieldErrorMessage } from "../FormFieldErrorMessage/FormFieldErrorMessage2.mjs";
|
|
4
|
+
/* empty css */
|
|
5
|
+
import React from "react";
|
|
6
|
+
import { classNames } from "@dsn-starter-kit/core";
|
|
7
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
//#region src/File/File.tsx
|
|
9
|
+
/**
|
|
10
|
+
* File component
|
|
11
|
+
* Toont meta-informatie over een bestand (naam, type, grootte) samen met acties.
|
|
12
|
+
* Ondersteunt vier upload-states (default, loading, uploaded, error) en een
|
|
13
|
+
* interactieve variant voor controle- of detailpagina's.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```tsx
|
|
17
|
+
* // Default — eerder geüpload bestand, met verwijder-optie
|
|
18
|
+
* <File
|
|
19
|
+
* fileName="document.pdf"
|
|
20
|
+
* fileType="PDF"
|
|
21
|
+
* fileSize="1,2 MB"
|
|
22
|
+
* href="/bestanden/document.pdf"
|
|
23
|
+
* onDelete={() => handleDelete()}
|
|
24
|
+
* />
|
|
25
|
+
*
|
|
26
|
+
* // Interactief — bestandsnaam als link (nieuw tabblad)
|
|
27
|
+
* <File
|
|
28
|
+
* fileName="rapport-2024.pdf"
|
|
29
|
+
* fileType="PDF"
|
|
30
|
+
* fileSize="2,1 MB"
|
|
31
|
+
* href="/bestanden/rapport-2024.pdf"
|
|
32
|
+
* />
|
|
33
|
+
*
|
|
34
|
+
* // Interactief — download CTA
|
|
35
|
+
* <File
|
|
36
|
+
* fileName="rapport-2024.pdf"
|
|
37
|
+
* fileType="PDF"
|
|
38
|
+
* fileSize="2,1 MB"
|
|
39
|
+
* href="/bestanden/rapport-2024.pdf"
|
|
40
|
+
* ctaVariant="download"
|
|
41
|
+
* />
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
const File = React.forwardRef(({ className, fileName, fileType, fileSize, status = "default", errorMessage, href, onDelete, deleteLabel = "Verwijder", ctaVariant = "view", ctaLabel, mediaType = "document", previewSrc, loadingLabel = "Bezig met uploaden", uploadedLabel, errorLabel, ...props }, ref) => {
|
|
45
|
+
const [currentStatus, setCurrentStatus] = React.useState(status);
|
|
46
|
+
const [liveText, setLiveText] = React.useState("");
|
|
47
|
+
React.useEffect(() => {
|
|
48
|
+
setCurrentStatus(status);
|
|
49
|
+
}, [status]);
|
|
50
|
+
React.useEffect(() => {
|
|
51
|
+
if (currentStatus === "uploaded") {
|
|
52
|
+
setLiveText(uploadedLabel ?? `${fileName} succesvol geüpload`);
|
|
53
|
+
const timer = setTimeout(() => {
|
|
54
|
+
setCurrentStatus("default");
|
|
55
|
+
setLiveText("");
|
|
56
|
+
}, 2e3);
|
|
57
|
+
return () => clearTimeout(timer);
|
|
58
|
+
}
|
|
59
|
+
if (currentStatus === "error") {
|
|
60
|
+
setLiveText(errorLabel ?? (errorMessage ? `${fileName}: ${errorMessage}` : `${fileName} uploaden mislukt`));
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
setLiveText("");
|
|
64
|
+
}, [
|
|
65
|
+
currentStatus,
|
|
66
|
+
fileName,
|
|
67
|
+
uploadedLabel,
|
|
68
|
+
errorLabel,
|
|
69
|
+
errorMessage
|
|
70
|
+
]);
|
|
71
|
+
const fileNameWithoutExt = React.useMemo(() => {
|
|
72
|
+
const lastDot = fileName.lastIndexOf(".");
|
|
73
|
+
return lastDot > 0 ? fileName.slice(0, lastDot) : fileName;
|
|
74
|
+
}, [fileName]);
|
|
75
|
+
const metaText = [fileType, fileSize].filter(Boolean).join(" · ");
|
|
76
|
+
const isInteractive = Boolean(href) && !onDelete;
|
|
77
|
+
const isStretchedLink = isInteractive && ctaVariant !== "download";
|
|
78
|
+
const rootClasses = classNames("dsn-file", currentStatus === "loading" && "dsn-file--loading", currentStatus === "uploaded" && "dsn-file--uploaded", currentStatus === "error" && "dsn-file--error", isStretchedLink && "dsn-file--interactive", className);
|
|
79
|
+
const nameClasses = classNames("dsn-file__name", href && "dsn-link", isStretchedLink && "dsn-file__name--stretched");
|
|
80
|
+
const iconName = mediaType === "image" ? "photo" : "file-description";
|
|
81
|
+
const resolvedCtaLabel = ctaLabel ?? "Download";
|
|
82
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
83
|
+
ref,
|
|
84
|
+
className: rootClasses,
|
|
85
|
+
...props,
|
|
86
|
+
children: [
|
|
87
|
+
/* @__PURE__ */ jsx("div", {
|
|
88
|
+
className: "dsn-file__media",
|
|
89
|
+
"aria-hidden": "true",
|
|
90
|
+
children: previewSrc ? /* @__PURE__ */ jsx("img", {
|
|
91
|
+
className: "dsn-file__preview",
|
|
92
|
+
src: previewSrc,
|
|
93
|
+
alt: ""
|
|
94
|
+
}) : /* @__PURE__ */ jsx(Icon, {
|
|
95
|
+
name: iconName,
|
|
96
|
+
"aria-hidden": true
|
|
97
|
+
})
|
|
98
|
+
}),
|
|
99
|
+
/* @__PURE__ */ jsxs("div", {
|
|
100
|
+
className: "dsn-file__content",
|
|
101
|
+
children: [
|
|
102
|
+
href ? /* @__PURE__ */ jsx("a", {
|
|
103
|
+
className: nameClasses,
|
|
104
|
+
href,
|
|
105
|
+
target: "_blank",
|
|
106
|
+
rel: "noopener noreferrer",
|
|
107
|
+
children: fileNameWithoutExt
|
|
108
|
+
}) : /* @__PURE__ */ jsx("span", {
|
|
109
|
+
className: nameClasses,
|
|
110
|
+
children: fileNameWithoutExt
|
|
111
|
+
}),
|
|
112
|
+
metaText && /* @__PURE__ */ jsx("span", {
|
|
113
|
+
className: "dsn-file__meta",
|
|
114
|
+
children: metaText
|
|
115
|
+
}),
|
|
116
|
+
currentStatus === "error" && errorMessage && /* @__PURE__ */ jsx(FormFieldErrorMessage, { children: errorMessage })
|
|
117
|
+
]
|
|
118
|
+
}),
|
|
119
|
+
/* @__PURE__ */ jsxs("div", {
|
|
120
|
+
className: "dsn-file__actions",
|
|
121
|
+
children: [
|
|
122
|
+
!isInteractive && currentStatus === "loading" && /* @__PURE__ */ jsx(Spinner, {
|
|
123
|
+
label: loadingLabel,
|
|
124
|
+
hideLabel: true
|
|
125
|
+
}),
|
|
126
|
+
!isInteractive && currentStatus === "uploaded" && /* @__PURE__ */ jsx(Icon, {
|
|
127
|
+
className: "dsn-file__status-icon",
|
|
128
|
+
name: "check",
|
|
129
|
+
"aria-hidden": true
|
|
130
|
+
}),
|
|
131
|
+
!isInteractive && (currentStatus === "default" || currentStatus === "error") && onDelete && /* @__PURE__ */ jsxs("button", {
|
|
132
|
+
type: "button",
|
|
133
|
+
className: "dsn-link dsn-link-button dsn-link--size-default",
|
|
134
|
+
onClick: onDelete,
|
|
135
|
+
children: [
|
|
136
|
+
/* @__PURE__ */ jsx(Icon, {
|
|
137
|
+
name: "trash",
|
|
138
|
+
"aria-hidden": true
|
|
139
|
+
}),
|
|
140
|
+
deleteLabel,
|
|
141
|
+
/* @__PURE__ */ jsxs("span", {
|
|
142
|
+
className: "dsn-visually-hidden",
|
|
143
|
+
children: [" ", fileName]
|
|
144
|
+
})
|
|
145
|
+
]
|
|
146
|
+
}),
|
|
147
|
+
isInteractive && ctaVariant === "download" && /* @__PURE__ */ jsxs("a", {
|
|
148
|
+
className: "dsn-link",
|
|
149
|
+
href,
|
|
150
|
+
"aria-hidden": "true",
|
|
151
|
+
tabIndex: -1,
|
|
152
|
+
download: true,
|
|
153
|
+
children: [/* @__PURE__ */ jsx(Icon, {
|
|
154
|
+
name: "download",
|
|
155
|
+
"aria-hidden": true
|
|
156
|
+
}), resolvedCtaLabel]
|
|
157
|
+
})
|
|
158
|
+
]
|
|
159
|
+
}),
|
|
160
|
+
/* @__PURE__ */ jsx("span", {
|
|
161
|
+
className: "dsn-visually-hidden",
|
|
162
|
+
"aria-live": "polite",
|
|
163
|
+
"aria-atomic": "true",
|
|
164
|
+
children: liveText
|
|
165
|
+
})
|
|
166
|
+
]
|
|
167
|
+
});
|
|
168
|
+
});
|
|
169
|
+
File.displayName = "File";
|
|
170
|
+
/**
|
|
171
|
+
* FileList component
|
|
172
|
+
* Wrapper voor meerdere File componenten.
|
|
173
|
+
* Rendert een <ul role="list"> met <li> wrappers — nodig omdat CSS-resets lijstsemantiek verwijderen.
|
|
174
|
+
*
|
|
175
|
+
* @example
|
|
176
|
+
* ```tsx
|
|
177
|
+
* <FileList>
|
|
178
|
+
* <File fileName="document.pdf" fileType="PDF" fileSize="1,2 MB" href="..." onDelete={() => {}} />
|
|
179
|
+
* <File fileName="foto.jpg" fileType="JPG" fileSize="3,4 MB" href="..." onDelete={() => {}} />
|
|
180
|
+
* </FileList>
|
|
181
|
+
* ```
|
|
182
|
+
*/
|
|
183
|
+
const FileList = React.forwardRef(({ className, children, ...props }, ref) => {
|
|
184
|
+
return /* @__PURE__ */ jsx("ul", {
|
|
185
|
+
ref,
|
|
186
|
+
className: classNames("dsn-file-list", className),
|
|
187
|
+
role: "list",
|
|
188
|
+
...props,
|
|
189
|
+
children: React.Children.map(children, (child, index) => /* @__PURE__ */ jsx("li", { children: child }, index))
|
|
190
|
+
});
|
|
191
|
+
});
|
|
192
|
+
FileList.displayName = "FileList";
|
|
193
|
+
//#endregion
|
|
194
|
+
export { File, FileList };
|
|
195
|
+
|
|
196
|
+
//# sourceMappingURL=File2.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"File2.mjs","names":[],"sources":["../../src/File/File.tsx"],"sourcesContent":["import React from 'react';\nimport { classNames } from '@dsn-starter-kit/core';\nimport { Icon } from '../Icon';\nimport { Spinner } from '../Spinner';\nimport { FormFieldErrorMessage } from '../FormFieldErrorMessage';\nimport './File.css';\n\nexport type FileStatus = 'default' | 'loading' | 'uploaded' | 'error';\nexport type FileCtaVariant = 'view' | 'download';\nexport type FileMediaType = 'document' | 'image';\n\nexport interface FileProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Bestandsnaam inclusief extensie (vereist). Extensie wordt visueel afgekapt. */\n fileName: string;\n\n /** Bestandstype als afkorting: \"PDF\", \"JPG\". Getoond in dsn-file__meta. */\n fileType?: string;\n\n /** Bestandsgrootte als geformatteerde string: \"1,2 MB\". */\n fileSize?: string;\n\n /**\n * State van het bestand.\n * Bij 'uploaded' keert het component na 2 seconden automatisch terug naar 'default'.\n * @default 'default'\n */\n status?: FileStatus;\n\n /** Foutmelding, getoond bij status=\"error\". */\n errorMessage?: string;\n\n /** URL naar het bestand. Maakt de naam een <a> en schakelt de interactieve variant in. */\n href?: string;\n\n /** Callback voor de verwijderactie. Toont de \"Verwijder\"-knop. */\n onDelete?: () => void;\n\n /**\n * Zichtbare tekst op de verwijder-knop.\n * @default \"Verwijder\"\n */\n deleteLabel?: string;\n\n /**\n * CTA-type in de interactieve variant.\n * 'view' toont geen aparte CTA; de bestandsnaam opent als stretched link in een nieuw tabblad.\n * 'download' toont een aparte download-knop; de bestandsnaam opent in een nieuw tabblad.\n * @default 'view'\n */\n ctaVariant?: FileCtaVariant;\n\n /**\n * Overschrijft het standaard CTA-label voor de download-variant.\n * Standaard: \"Download\".\n */\n ctaLabel?: string;\n\n /**\n * Bepaalt het icoon: file-description.svg of photo.svg.\n * Genegeerd wanneer previewSrc aanwezig is.\n * @default 'document'\n */\n mediaType?: FileMediaType;\n\n /** URL van de afbeeldingspreview. Vervangt het icoon in het media-vlak. */\n previewSrc?: string;\n\n /**\n * Visueel verborgen label voor de Spinner.\n * @default \"Bezig met uploaden\"\n */\n loadingLabel?: string;\n\n /**\n * Tekst voor de aria-live regio bij de uploaded state.\n * @default \"{fileName} succesvol geüpload\"\n */\n uploadedLabel?: string;\n\n /**\n * Tekst voor de aria-live regio bij de error state.\n * Standaard \"{fileName}: {errorMessage}\", of \"{fileName} uploaden mislukt\"\n * wanneer er geen errorMessage is.\n */\n errorLabel?: string;\n}\n\n/**\n * File component\n * Toont meta-informatie over een bestand (naam, type, grootte) samen met acties.\n * Ondersteunt vier upload-states (default, loading, uploaded, error) en een\n * interactieve variant voor controle- of detailpagina's.\n *\n * @example\n * ```tsx\n * // Default — eerder geüpload bestand, met verwijder-optie\n * <File\n * fileName=\"document.pdf\"\n * fileType=\"PDF\"\n * fileSize=\"1,2 MB\"\n * href=\"/bestanden/document.pdf\"\n * onDelete={() => handleDelete()}\n * />\n *\n * // Interactief — bestandsnaam als link (nieuw tabblad)\n * <File\n * fileName=\"rapport-2024.pdf\"\n * fileType=\"PDF\"\n * fileSize=\"2,1 MB\"\n * href=\"/bestanden/rapport-2024.pdf\"\n * />\n *\n * // Interactief — download CTA\n * <File\n * fileName=\"rapport-2024.pdf\"\n * fileType=\"PDF\"\n * fileSize=\"2,1 MB\"\n * href=\"/bestanden/rapport-2024.pdf\"\n * ctaVariant=\"download\"\n * />\n * ```\n */\nexport const File = React.forwardRef<HTMLDivElement, FileProps>(\n (\n {\n className,\n fileName,\n fileType,\n fileSize,\n status = 'default',\n errorMessage,\n href,\n onDelete,\n deleteLabel = 'Verwijder',\n ctaVariant = 'view',\n ctaLabel,\n mediaType = 'document',\n previewSrc,\n loadingLabel = 'Bezig met uploaden',\n uploadedLabel,\n errorLabel,\n ...props\n },\n ref\n ) => {\n const [currentStatus, setCurrentStatus] =\n React.useState<FileStatus>(status);\n const [liveText, setLiveText] = React.useState('');\n\n // Synchroniseer externe status-prop met interne state\n React.useEffect(() => {\n setCurrentStatus(status);\n }, [status]);\n\n // Vul de aria-live regio bij een eindstatus van de upload.\n // De tekst wordt pas ná de eerste render gezet, zodat screenreaders de\n // wijziging in de regio waarnemen en aankondigen.\n React.useEffect(() => {\n // Uploaded: kondig succes aan en keer na 2s terug naar default\n if (currentStatus === 'uploaded') {\n setLiveText(uploadedLabel ?? `${fileName} succesvol geüpload`);\n\n const timer = setTimeout(() => {\n setCurrentStatus('default');\n setLiveText('');\n }, 2000);\n\n return () => clearTimeout(timer);\n }\n\n // Error: kondig de mislukking aan, inclusief de reden wanneer bekend.\n // De tekst blijft staan zolang de error-state actief is.\n if (currentStatus === 'error') {\n setLiveText(\n errorLabel ??\n (errorMessage\n ? `${fileName}: ${errorMessage}`\n : `${fileName} uploaden mislukt`)\n );\n return undefined;\n }\n\n // Default en loading: geen aankondiging\n setLiveText('');\n return undefined;\n }, [currentStatus, fileName, uploadedLabel, errorLabel, errorMessage]);\n\n // Bestandsnaam zonder extensie voor visuele weergave\n const fileNameWithoutExt = React.useMemo(() => {\n const lastDot = fileName.lastIndexOf('.');\n return lastDot > 0 ? fileName.slice(0, lastDot) : fileName;\n }, [fileName]);\n\n // Meta-tekst: \"PDF · 1,2 MB\" of alleen type of grootte\n const metaParts = [fileType, fileSize].filter(Boolean);\n const metaText = metaParts.join(' · ');\n\n // Interactieve modus: href aanwezig en geen onDelete\n const isInteractive = Boolean(href) && !onDelete;\n // Stretched link: interactief zonder aparte download-CTA\n const isStretchedLink = isInteractive && ctaVariant !== 'download';\n\n const rootClasses = classNames(\n 'dsn-file',\n currentStatus === 'loading' && 'dsn-file--loading',\n currentStatus === 'uploaded' && 'dsn-file--uploaded',\n currentStatus === 'error' && 'dsn-file--error',\n isStretchedLink && 'dsn-file--interactive',\n className\n );\n\n const nameClasses = classNames(\n 'dsn-file__name',\n href && 'dsn-link',\n isStretchedLink && 'dsn-file__name--stretched'\n );\n\n const iconName = mediaType === 'image' ? 'photo' : 'file-description';\n const resolvedCtaLabel = ctaLabel ?? 'Download';\n\n return (\n <div ref={ref} className={rootClasses} {...props}>\n {/* Media-vlak: icoon of preview */}\n <div className=\"dsn-file__media\" aria-hidden=\"true\">\n {previewSrc ? (\n <img className=\"dsn-file__preview\" src={previewSrc} alt=\"\" />\n ) : (\n <Icon name={iconName} aria-hidden />\n )}\n </div>\n\n {/* Content: naam, meta en optionele ErrorMessage */}\n <div className=\"dsn-file__content\">\n {href ? (\n <a\n className={nameClasses}\n href={href}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {fileNameWithoutExt}\n </a>\n ) : (\n <span className={nameClasses}>{fileNameWithoutExt}</span>\n )}\n {metaText && <span className=\"dsn-file__meta\">{metaText}</span>}\n {currentStatus === 'error' && errorMessage && (\n <FormFieldErrorMessage>{errorMessage}</FormFieldErrorMessage>\n )}\n </div>\n\n {/* Actions: Spinner, status-icoon, verwijder-knop of CTA-link */}\n <div className=\"dsn-file__actions\">\n {!isInteractive && currentStatus === 'loading' && (\n <Spinner label={loadingLabel} hideLabel />\n )}\n {!isInteractive && currentStatus === 'uploaded' && (\n <Icon className=\"dsn-file__status-icon\" name=\"check\" aria-hidden />\n )}\n {!isInteractive &&\n (currentStatus === 'default' || currentStatus === 'error') &&\n onDelete && (\n <button\n type=\"button\"\n className=\"dsn-link dsn-link-button dsn-link--size-default\"\n onClick={onDelete}\n >\n <Icon name=\"trash\" aria-hidden />\n {deleteLabel}\n <span className=\"dsn-visually-hidden\"> {fileName}</span>\n </button>\n )}\n {isInteractive && ctaVariant === 'download' && (\n <a\n className=\"dsn-link\"\n href={href}\n aria-hidden=\"true\"\n tabIndex={-1}\n download\n >\n <Icon name=\"download\" aria-hidden />\n {resolvedCtaLabel}\n </a>\n )}\n </div>\n\n {/* aria-live regio: kondigt statuswijzigingen aan voor screenreaders */}\n <span\n className=\"dsn-visually-hidden\"\n aria-live=\"polite\"\n aria-atomic=\"true\"\n >\n {liveText}\n </span>\n </div>\n );\n }\n);\n\nFile.displayName = 'File';\n\n// =============================================================================\n// FileList — ul wrapper voor meerdere File items\n// =============================================================================\n\nexport interface FileListProps extends React.HTMLAttributes<HTMLUListElement> {\n /** File componenten */\n children?: React.ReactNode;\n className?: string;\n}\n\n/**\n * FileList component\n * Wrapper voor meerdere File componenten.\n * Rendert een <ul role=\"list\"> met <li> wrappers — nodig omdat CSS-resets lijstsemantiek verwijderen.\n *\n * @example\n * ```tsx\n * <FileList>\n * <File fileName=\"document.pdf\" fileType=\"PDF\" fileSize=\"1,2 MB\" href=\"...\" onDelete={() => {}} />\n * <File fileName=\"foto.jpg\" fileType=\"JPG\" fileSize=\"3,4 MB\" href=\"...\" onDelete={() => {}} />\n * </FileList>\n * ```\n */\nexport const FileList = React.forwardRef<HTMLUListElement, FileListProps>(\n ({ className, children, ...props }, ref) => {\n return (\n <ul\n ref={ref}\n className={classNames('dsn-file-list', className)}\n role=\"list\"\n {...props}\n >\n {React.Children.map(children, (child, index) => (\n <li key={index}>{child}</li>\n ))}\n </ul>\n );\n }\n);\n\nFileList.displayName = 'FileList';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0HA,MAAa,OAAO,MAAM,YAEtB,EACE,WACA,UACA,UACA,UACA,SAAS,WACT,cACA,MACA,UACA,cAAc,aACd,aAAa,QACb,UACA,YAAY,YACZ,YACA,eAAe,sBACf,eACA,YACA,GAAG,SAEL,QACG;CACH,MAAM,CAAC,eAAe,oBACpB,MAAM,SAAqB,MAAM;CACnC,MAAM,CAAC,UAAU,eAAe,MAAM,SAAS,EAAE;CAGjD,MAAM,gBAAgB;EACpB,iBAAiB,MAAM;CACzB,GAAG,CAAC,MAAM,CAAC;CAKX,MAAM,gBAAgB;EAEpB,IAAI,kBAAkB,YAAY;GAChC,YAAY,iBAAiB,GAAG,SAAS,oBAAoB;GAE7D,MAAM,QAAQ,iBAAiB;IAC7B,iBAAiB,SAAS;IAC1B,YAAY,EAAE;GAChB,GAAG,GAAI;GAEP,aAAa,aAAa,KAAK;EACjC;EAIA,IAAI,kBAAkB,SAAS;GAC7B,YACE,eACG,eACG,GAAG,SAAS,IAAI,iBAChB,GAAG,SAAS,mBACpB;GACA;EACF;EAGA,YAAY,EAAE;CAEhB,GAAG;EAAC;EAAe;EAAU;EAAe;EAAY;CAAY,CAAC;CAGrE,MAAM,qBAAqB,MAAM,cAAc;EAC7C,MAAM,UAAU,SAAS,YAAY,GAAG;EACxC,OAAO,UAAU,IAAI,SAAS,MAAM,GAAG,OAAO,IAAI;CACpD,GAAG,CAAC,QAAQ,CAAC;CAIb,MAAM,WADY,CAAC,UAAU,QAAQ,CAAC,CAAC,OAAO,OACrB,CAAC,CAAC,KAAK,KAAK;CAGrC,MAAM,gBAAgB,QAAQ,IAAI,KAAK,CAAC;CAExC,MAAM,kBAAkB,iBAAiB,eAAe;CAExD,MAAM,cAAc,WAClB,YACA,kBAAkB,aAAa,qBAC/B,kBAAkB,cAAc,sBAChC,kBAAkB,WAAW,mBAC7B,mBAAmB,yBACnB,SACF;CAEA,MAAM,cAAc,WAClB,kBACA,QAAQ,YACR,mBAAmB,2BACrB;CAEA,MAAM,WAAW,cAAc,UAAU,UAAU;CACnD,MAAM,mBAAmB,YAAY;CAErC,OACE,qBAAC,OAAD;EAAU;EAAK,WAAW;EAAa,GAAI;EAA3C,UAAA;GAEE,oBAAC,OAAD;IAAK,WAAU;IAAkB,eAAY;IAC1C,UAAA,aACC,oBAAC,OAAD;KAAK,WAAU;KAAoB,KAAK;KAAY,KAAI;IAAI,CAAA,IAE5D,oBAAC,MAAD;KAAM,MAAM;KAAU,eAAA;IAAa,CAAA;GAElC,CAAA;GAGL,qBAAC,OAAD;IAAK,WAAU;IAAf,UAAA;KACG,OACC,oBAAC,KAAD;MACE,WAAW;MACL;MACN,QAAO;MACP,KAAI;MAEH,UAAA;KACA,CAAA,IAEH,oBAAC,QAAD;MAAM,WAAW;MAAc,UAAA;KAAyB,CAAA;KAEzD,YAAY,oBAAC,QAAD;MAAM,WAAU;MAAkB,UAAA;KAAe,CAAA;KAC7D,kBAAkB,WAAW,gBAC5B,oBAAC,uBAAD,EAAA,UAAwB,aAAoC,CAAA;IAE3D;;GAGL,qBAAC,OAAD;IAAK,WAAU;IAAf,UAAA;KACG,CAAC,iBAAiB,kBAAkB,aACnC,oBAAC,SAAD;MAAS,OAAO;MAAc,WAAA;KAAW,CAAA;KAE1C,CAAC,iBAAiB,kBAAkB,cACnC,oBAAC,MAAD;MAAM,WAAU;MAAwB,MAAK;MAAQ,eAAA;KAAa,CAAA;KAEnE,CAAC,kBACC,kBAAkB,aAAa,kBAAkB,YAClD,YACE,qBAAC,UAAD;MACE,MAAK;MACL,WAAU;MACV,SAAS;MAHX,UAAA;OAKE,oBAAC,MAAD;QAAM,MAAK;QAAQ,eAAA;OAAa,CAAA;OAC/B;OACD,qBAAC,QAAD;QAAM,WAAU;QAAhB,UAAA,CAAsC,KAAE,QAAe;;MACjD;;KAEX,iBAAiB,eAAe,cAC/B,qBAAC,KAAD;MACE,WAAU;MACJ;MACN,eAAY;MACZ,UAAU;MACV,UAAA;MALF,UAAA,CAOE,oBAAC,MAAD;OAAM,MAAK;OAAW,eAAA;MAAa,CAAA,GAClC,gBACA;;IAEF;;GAGL,oBAAC,QAAD;IACE,WAAU;IACV,aAAU;IACV,eAAY;IAEX,UAAA;GACG,CAAA;EACH;;AAET,CACF;AAEA,KAAK,cAAc;;;;;;;;;;;;;;AAyBnB,MAAa,WAAW,MAAM,YAC3B,EAAE,WAAW,UAAU,GAAG,SAAS,QAAQ;CAC1C,OACE,oBAAC,MAAD;EACO;EACL,WAAW,WAAW,iBAAiB,SAAS;EAChD,MAAK;EACL,GAAI;EAEH,UAAA,MAAM,SAAS,IAAI,WAAW,OAAO,UACpC,oBAAC,MAAD,EAAA,UAAiB,MAAU,GAAlB,KAAkB,CAC5B;CACC,CAAA;AAER,CACF;AAEA,SAAS,cAAc"}
|