@dsn-starter-kit/components-react 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +181 -0
- package/dist/ActionGroup/ActionGroup.css +55 -0
- package/dist/ActionGroup/ActionGroup.d.ts +41 -0
- package/dist/ActionGroup/ActionGroup.d.ts.map +1 -0
- package/dist/ActionGroup/ActionGroup.js +36 -0
- package/dist/ActionGroup/ActionGroup.js.map +1 -0
- package/dist/ActionGroup/index.d.ts +3 -0
- package/dist/ActionGroup/index.d.ts.map +1 -0
- package/dist/ActionGroup/index.js +2 -0
- package/dist/ActionGroup/index.js.map +1 -0
- package/dist/Alert/Alert.css +145 -0
- package/dist/Alert/Alert.d.ts +69 -0
- package/dist/Alert/Alert.d.ts.map +1 -0
- package/dist/Alert/Alert.js +57 -0
- package/dist/Alert/Alert.js.map +1 -0
- package/dist/Alert/index.d.ts +3 -0
- package/dist/Alert/index.d.ts.map +1 -0
- package/dist/Alert/index.js +2 -0
- package/dist/Alert/index.js.map +1 -0
- package/dist/Backdrop/Backdrop.css +30 -0
- package/dist/Backdrop/Backdrop.d.ts +26 -0
- package/dist/Backdrop/Backdrop.d.ts.map +1 -0
- package/dist/Backdrop/Backdrop.js +23 -0
- package/dist/Backdrop/Backdrop.js.map +1 -0
- package/dist/Backdrop/index.d.ts +3 -0
- package/dist/Backdrop/index.d.ts.map +1 -0
- package/dist/Backdrop/index.js +2 -0
- package/dist/Backdrop/index.js.map +1 -0
- package/dist/Body/Body.css +14 -0
- package/dist/Body/Body.d.ts +27 -0
- package/dist/Body/Body.d.ts.map +1 -0
- package/dist/Body/Body.js +27 -0
- package/dist/Body/Body.js.map +1 -0
- package/dist/Body/index.d.ts +3 -0
- package/dist/Body/index.d.ts.map +1 -0
- package/dist/Body/index.js +2 -0
- package/dist/Body/index.js.map +1 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation.css +216 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation.d.ts +43 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation.d.ts.map +1 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation.js +42 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigation.js.map +1 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.d.ts +32 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.d.ts.map +1 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.js +20 -0
- package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.js.map +1 -0
- package/dist/BreadcrumbNavigation/index.d.ts +3 -0
- package/dist/BreadcrumbNavigation/index.d.ts.map +1 -0
- package/dist/BreadcrumbNavigation/index.js +3 -0
- package/dist/BreadcrumbNavigation/index.js.map +1 -0
- package/dist/BreakoutSection/BreakoutSection.css +19 -0
- package/dist/BreakoutSection/BreakoutSection.d.ts +30 -0
- package/dist/BreakoutSection/BreakoutSection.d.ts.map +1 -0
- package/dist/BreakoutSection/BreakoutSection.js +27 -0
- package/dist/BreakoutSection/BreakoutSection.js.map +1 -0
- package/dist/BreakoutSection/index.d.ts +3 -0
- package/dist/BreakoutSection/index.d.ts.map +1 -0
- package/dist/BreakoutSection/index.js +2 -0
- package/dist/BreakoutSection/index.js.map +1 -0
- package/dist/Button/Button.css +337 -0
- package/dist/Button/Button.d.ts +90 -0
- package/dist/Button/Button.d.ts.map +1 -0
- package/dist/Button/Button.js +53 -0
- package/dist/Button/Button.js.map +1 -0
- package/dist/Button/index.d.ts +3 -0
- package/dist/Button/index.d.ts.map +1 -0
- package/dist/Button/index.js +2 -0
- package/dist/Button/index.js.map +1 -0
- package/dist/ButtonLink/ButtonLink.css +29 -0
- package/dist/ButtonLink/ButtonLink.d.ts +92 -0
- package/dist/ButtonLink/ButtonLink.d.ts.map +1 -0
- package/dist/ButtonLink/ButtonLink.js +50 -0
- package/dist/ButtonLink/ButtonLink.js.map +1 -0
- package/dist/ButtonLink/index.d.ts +3 -0
- package/dist/ButtonLink/index.d.ts.map +1 -0
- package/dist/ButtonLink/index.js +2 -0
- package/dist/ButtonLink/index.js.map +1 -0
- package/dist/Card/Card.css +169 -0
- package/dist/Card/Card.d.ts +105 -0
- package/dist/Card/Card.d.ts.map +1 -0
- package/dist/Card/Card.js +80 -0
- package/dist/Card/Card.js.map +1 -0
- package/dist/Card/index.d.ts +3 -0
- package/dist/Card/index.d.ts.map +1 -0
- package/dist/Card/index.js +2 -0
- package/dist/Card/index.js.map +1 -0
- package/dist/Checkbox/Checkbox.css +239 -0
- package/dist/Checkbox/Checkbox.d.ts +18 -0
- package/dist/Checkbox/Checkbox.d.ts.map +1 -0
- package/dist/Checkbox/Checkbox.js +24 -0
- package/dist/Checkbox/Checkbox.js.map +1 -0
- package/dist/Checkbox/index.d.ts +3 -0
- package/dist/Checkbox/index.d.ts.map +1 -0
- package/dist/Checkbox/index.js +2 -0
- package/dist/Checkbox/index.js.map +1 -0
- package/dist/CheckboxGroup/CheckboxGroup.css +10 -0
- package/dist/CheckboxGroup/CheckboxGroup.d.ts +37 -0
- package/dist/CheckboxGroup/CheckboxGroup.d.ts.map +1 -0
- package/dist/CheckboxGroup/CheckboxGroup.js +37 -0
- package/dist/CheckboxGroup/CheckboxGroup.js.map +1 -0
- package/dist/CheckboxGroup/index.d.ts +3 -0
- package/dist/CheckboxGroup/index.d.ts.map +1 -0
- package/dist/CheckboxGroup/index.js +2 -0
- package/dist/CheckboxGroup/index.js.map +1 -0
- package/dist/CheckboxOption/CheckboxOption.css +17 -0
- package/dist/CheckboxOption/CheckboxOption.d.ts +14 -0
- package/dist/CheckboxOption/CheckboxOption.d.ts.map +1 -0
- package/dist/CheckboxOption/CheckboxOption.js +15 -0
- package/dist/CheckboxOption/CheckboxOption.js.map +1 -0
- package/dist/CheckboxOption/index.d.ts +3 -0
- package/dist/CheckboxOption/index.d.ts.map +1 -0
- package/dist/CheckboxOption/index.js +2 -0
- package/dist/CheckboxOption/index.js.map +1 -0
- package/dist/Container/Container.css +48 -0
- package/dist/Container/Container.d.ts +41 -0
- package/dist/Container/Container.d.ts.map +1 -0
- package/dist/Container/Container.js +33 -0
- package/dist/Container/Container.js.map +1 -0
- package/dist/Container/index.d.ts +3 -0
- package/dist/Container/index.d.ts.map +1 -0
- package/dist/Container/index.js +2 -0
- package/dist/Container/index.js.map +1 -0
- package/dist/DateInput/DateInput.css +37 -0
- package/dist/DateInput/DateInput.d.ts +37 -0
- package/dist/DateInput/DateInput.d.ts.map +1 -0
- package/dist/DateInput/DateInput.js +52 -0
- package/dist/DateInput/DateInput.js.map +1 -0
- package/dist/DateInput/index.d.ts +3 -0
- package/dist/DateInput/index.d.ts.map +1 -0
- package/dist/DateInput/index.js +2 -0
- package/dist/DateInput/index.js.map +1 -0
- package/dist/DateInputGroup/DateInputGroup.css +30 -0
- package/dist/DateInputGroup/DateInputGroup.d.ts +65 -0
- package/dist/DateInputGroup/DateInputGroup.d.ts.map +1 -0
- package/dist/DateInputGroup/DateInputGroup.js +53 -0
- package/dist/DateInputGroup/DateInputGroup.js.map +1 -0
- package/dist/DateInputGroup/index.d.ts +3 -0
- package/dist/DateInputGroup/index.d.ts.map +1 -0
- package/dist/DateInputGroup/index.js +2 -0
- package/dist/DateInputGroup/index.js.map +1 -0
- package/dist/Details/Details.css +134 -0
- package/dist/Details/Details.d.ts +46 -0
- package/dist/Details/Details.d.ts.map +1 -0
- package/dist/Details/Details.js +37 -0
- package/dist/Details/Details.js.map +1 -0
- package/dist/Details/index.d.ts +3 -0
- package/dist/Details/index.d.ts.map +1 -0
- package/dist/Details/index.js +2 -0
- package/dist/Details/index.js.map +1 -0
- package/dist/DotBadge/DotBadge.css +98 -0
- package/dist/DotBadge/DotBadge.d.ts +40 -0
- package/dist/DotBadge/DotBadge.d.ts.map +1 -0
- package/dist/DotBadge/DotBadge.js +33 -0
- package/dist/DotBadge/DotBadge.js.map +1 -0
- package/dist/DotBadge/index.d.ts +2 -0
- package/dist/DotBadge/index.d.ts.map +1 -0
- package/dist/DotBadge/index.js +2 -0
- package/dist/DotBadge/index.js.map +1 -0
- package/dist/Drawer/Drawer.css +258 -0
- package/dist/Drawer/Drawer.d.ts +109 -0
- package/dist/Drawer/Drawer.d.ts.map +1 -0
- package/dist/Drawer/Drawer.js +115 -0
- package/dist/Drawer/Drawer.js.map +1 -0
- package/dist/Drawer/index.d.ts +3 -0
- package/dist/Drawer/index.d.ts.map +1 -0
- package/dist/Drawer/index.js +2 -0
- package/dist/Drawer/index.js.map +1 -0
- package/dist/EmailInput/EmailInput.css +4 -0
- package/dist/EmailInput/EmailInput.d.ts +38 -0
- package/dist/EmailInput/EmailInput.d.ts.map +1 -0
- package/dist/EmailInput/EmailInput.js +27 -0
- package/dist/EmailInput/EmailInput.js.map +1 -0
- package/dist/EmailInput/index.d.ts +3 -0
- package/dist/EmailInput/index.d.ts.map +1 -0
- package/dist/EmailInput/index.js +2 -0
- package/dist/EmailInput/index.js.map +1 -0
- package/dist/File/File.css +206 -0
- package/dist/File/File.d.ts +116 -0
- package/dist/File/File.d.ts.map +1 -0
- package/dist/File/File.js +100 -0
- package/dist/File/File.js.map +1 -0
- package/dist/File/index.d.ts +3 -0
- package/dist/File/index.d.ts.map +1 -0
- package/dist/File/index.js +2 -0
- package/dist/File/index.js.map +1 -0
- package/dist/FileInput/FileInput.css +112 -0
- package/dist/FileInput/FileInput.d.ts +36 -0
- package/dist/FileInput/FileInput.d.ts.map +1 -0
- package/dist/FileInput/FileInput.js +31 -0
- package/dist/FileInput/FileInput.js.map +1 -0
- package/dist/FileInput/index.d.ts +3 -0
- package/dist/FileInput/index.d.ts.map +1 -0
- package/dist/FileInput/index.js +2 -0
- package/dist/FileInput/index.js.map +1 -0
- package/dist/FormField/FormField.css +16 -0
- package/dist/FormField/FormField.d.ts +85 -0
- package/dist/FormField/FormField.d.ts.map +1 -0
- package/dist/FormField/FormField.js +60 -0
- package/dist/FormField/FormField.js.map +1 -0
- package/dist/FormField/index.d.ts +3 -0
- package/dist/FormField/index.d.ts.map +1 -0
- package/dist/FormField/index.js +2 -0
- package/dist/FormField/index.js.map +1 -0
- package/dist/FormFieldDescription/FormFieldDescription.css +25 -0
- package/dist/FormFieldDescription/FormFieldDescription.d.ts +47 -0
- package/dist/FormFieldDescription/FormFieldDescription.d.ts.map +1 -0
- package/dist/FormFieldDescription/FormFieldDescription.js +37 -0
- package/dist/FormFieldDescription/FormFieldDescription.js.map +1 -0
- package/dist/FormFieldDescription/index.d.ts +3 -0
- package/dist/FormFieldDescription/index.d.ts.map +1 -0
- package/dist/FormFieldDescription/index.js +2 -0
- package/dist/FormFieldDescription/index.js.map +1 -0
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage.css +38 -0
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage.d.ts +40 -0
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage.d.ts.map +1 -0
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage.js +32 -0
- package/dist/FormFieldErrorMessage/FormFieldErrorMessage.js.map +1 -0
- package/dist/FormFieldErrorMessage/index.d.ts +3 -0
- package/dist/FormFieldErrorMessage/index.d.ts.map +1 -0
- package/dist/FormFieldErrorMessage/index.js +2 -0
- package/dist/FormFieldErrorMessage/index.js.map +1 -0
- package/dist/FormFieldLabel/FormFieldLabel.css +48 -0
- package/dist/FormFieldLabel/FormFieldLabel.d.ts +38 -0
- package/dist/FormFieldLabel/FormFieldLabel.d.ts.map +1 -0
- package/dist/FormFieldLabel/FormFieldLabel.js +30 -0
- package/dist/FormFieldLabel/FormFieldLabel.js.map +1 -0
- package/dist/FormFieldLabel/index.d.ts +3 -0
- package/dist/FormFieldLabel/index.d.ts.map +1 -0
- package/dist/FormFieldLabel/index.js +2 -0
- package/dist/FormFieldLabel/index.js.map +1 -0
- package/dist/FormFieldLegend/FormFieldLegend.css +7 -0
- package/dist/FormFieldLegend/FormFieldLegend.d.ts +39 -0
- package/dist/FormFieldLegend/FormFieldLegend.d.ts.map +1 -0
- package/dist/FormFieldLegend/FormFieldLegend.js +31 -0
- package/dist/FormFieldLegend/FormFieldLegend.js.map +1 -0
- package/dist/FormFieldLegend/index.d.ts +2 -0
- package/dist/FormFieldLegend/index.d.ts.map +1 -0
- package/dist/FormFieldLegend/index.js +2 -0
- package/dist/FormFieldLegend/index.js.map +1 -0
- package/dist/FormFieldStatus/FormFieldStatus.css +66 -0
- package/dist/FormFieldStatus/FormFieldStatus.d.ts +52 -0
- package/dist/FormFieldStatus/FormFieldStatus.d.ts.map +1 -0
- package/dist/FormFieldStatus/FormFieldStatus.js +44 -0
- package/dist/FormFieldStatus/FormFieldStatus.js.map +1 -0
- package/dist/FormFieldStatus/index.d.ts +3 -0
- package/dist/FormFieldStatus/index.d.ts.map +1 -0
- package/dist/FormFieldStatus/index.js +2 -0
- package/dist/FormFieldStatus/index.js.map +1 -0
- package/dist/FormFieldset/FormFieldset.css +24 -0
- package/dist/FormFieldset/FormFieldset.d.ts +83 -0
- package/dist/FormFieldset/FormFieldset.d.ts.map +1 -0
- package/dist/FormFieldset/FormFieldset.js +59 -0
- package/dist/FormFieldset/FormFieldset.js.map +1 -0
- package/dist/FormFieldset/index.d.ts +2 -0
- package/dist/FormFieldset/index.d.ts.map +1 -0
- package/dist/FormFieldset/index.js +2 -0
- package/dist/FormFieldset/index.js.map +1 -0
- package/dist/Grid/Grid.css +573 -0
- package/dist/Grid/Grid.d.ts +35 -0
- package/dist/Grid/Grid.d.ts.map +1 -0
- package/dist/Grid/Grid.js +29 -0
- package/dist/Grid/Grid.js.map +1 -0
- package/dist/Grid/GridItem.d.ts +84 -0
- package/dist/Grid/GridItem.d.ts.map +1 -0
- package/dist/Grid/GridItem.js +39 -0
- package/dist/Grid/GridItem.js.map +1 -0
- package/dist/Grid/index.d.ts +5 -0
- package/dist/Grid/index.d.ts.map +1 -0
- package/dist/Grid/index.js +3 -0
- package/dist/Grid/index.js.map +1 -0
- package/dist/Heading/Heading.css +81 -0
- package/dist/Heading/Heading.d.ts +38 -0
- package/dist/Heading/Heading.d.ts.map +1 -0
- package/dist/Heading/Heading.js +24 -0
- package/dist/Heading/Heading.js.map +1 -0
- package/dist/Heading/index.d.ts +3 -0
- package/dist/Heading/index.d.ts.map +1 -0
- package/dist/Heading/index.js +2 -0
- package/dist/Heading/index.js.map +1 -0
- package/dist/Hero/Hero.css +205 -0
- package/dist/Hero/Hero.d.ts +45 -0
- package/dist/Hero/Hero.d.ts.map +1 -0
- package/dist/Hero/Hero.js +33 -0
- package/dist/Hero/Hero.js.map +1 -0
- package/dist/Hero/index.d.ts +3 -0
- package/dist/Hero/index.d.ts.map +1 -0
- package/dist/Hero/index.js +2 -0
- package/dist/Hero/index.js.map +1 -0
- package/dist/Icon/Icon.css +57 -0
- package/dist/Icon/Icon.d.ts +48 -0
- package/dist/Icon/Icon.d.ts.map +1 -0
- package/dist/Icon/Icon.js +42 -0
- package/dist/Icon/Icon.js.map +1 -0
- package/dist/Icon/icon-registry.generated.d.ts +4 -0
- package/dist/Icon/icon-registry.generated.d.ts.map +1 -0
- package/dist/Icon/icon-registry.generated.js +105 -0
- package/dist/Icon/icon-registry.generated.js.map +1 -0
- package/dist/Icon/index.d.ts +3 -0
- package/dist/Icon/index.d.ts.map +1 -0
- package/dist/Icon/index.js +2 -0
- package/dist/Icon/index.js.map +1 -0
- package/dist/Image/Image.css +123 -0
- package/dist/Image/Image.d.ts +54 -0
- package/dist/Image/Image.d.ts.map +1 -0
- package/dist/Image/Image.js +53 -0
- package/dist/Image/Image.js.map +1 -0
- package/dist/Image/index.d.ts +3 -0
- package/dist/Image/index.d.ts.map +1 -0
- package/dist/Image/index.js +2 -0
- package/dist/Image/index.js.map +1 -0
- package/dist/Link/Link.css +113 -0
- package/dist/Link/Link.d.ts +80 -0
- package/dist/Link/Link.d.ts.map +1 -0
- package/dist/Link/Link.js +58 -0
- package/dist/Link/Link.js.map +1 -0
- package/dist/Link/index.d.ts +3 -0
- package/dist/Link/index.d.ts.map +1 -0
- package/dist/Link/index.js +2 -0
- package/dist/Link/index.js.map +1 -0
- package/dist/LinkButton/LinkButton.css +40 -0
- package/dist/LinkButton/LinkButton.d.ts +52 -0
- package/dist/LinkButton/LinkButton.d.ts.map +1 -0
- package/dist/LinkButton/LinkButton.js +34 -0
- package/dist/LinkButton/LinkButton.js.map +1 -0
- package/dist/LinkButton/index.d.ts +3 -0
- package/dist/LinkButton/index.d.ts.map +1 -0
- package/dist/LinkButton/index.js +2 -0
- package/dist/LinkButton/index.js.map +1 -0
- package/dist/Logo/Logo.css +33 -0
- package/dist/Logo/Logo.d.ts +33 -0
- package/dist/Logo/Logo.d.ts.map +1 -0
- package/dist/Logo/Logo.js +32 -0
- package/dist/Logo/Logo.js.map +1 -0
- package/dist/Logo/index.d.ts +2 -0
- package/dist/Logo/index.d.ts.map +1 -0
- package/dist/Logo/index.js +2 -0
- package/dist/Logo/index.js.map +1 -0
- package/dist/Menu/Menu.css +57 -0
- package/dist/Menu/Menu.d.ts +56 -0
- package/dist/Menu/Menu.d.ts.map +1 -0
- package/dist/Menu/Menu.js +38 -0
- package/dist/Menu/Menu.js.map +1 -0
- package/dist/Menu/index.d.ts +2 -0
- package/dist/Menu/index.d.ts.map +1 -0
- package/dist/Menu/index.js +2 -0
- package/dist/Menu/index.js.map +1 -0
- package/dist/MenuButton/MenuButton.css +106 -0
- package/dist/MenuButton/MenuButton.d.ts +54 -0
- package/dist/MenuButton/MenuButton.d.ts.map +1 -0
- package/dist/MenuButton/MenuButton.js +37 -0
- package/dist/MenuButton/MenuButton.js.map +1 -0
- package/dist/MenuButton/index.d.ts +2 -0
- package/dist/MenuButton/index.d.ts.map +1 -0
- package/dist/MenuButton/index.js +2 -0
- package/dist/MenuButton/index.js.map +1 -0
- package/dist/MenuLink/MenuLink.css +212 -0
- package/dist/MenuLink/MenuLink.d.ts +96 -0
- package/dist/MenuLink/MenuLink.d.ts.map +1 -0
- package/dist/MenuLink/MenuLink.js +50 -0
- package/dist/MenuLink/MenuLink.js.map +1 -0
- package/dist/MenuLink/index.d.ts +2 -0
- package/dist/MenuLink/index.d.ts.map +1 -0
- package/dist/MenuLink/index.js +2 -0
- package/dist/MenuLink/index.js.map +1 -0
- package/dist/ModalDialog/ModalDialog.css +199 -0
- package/dist/ModalDialog/ModalDialog.d.ts +95 -0
- package/dist/ModalDialog/ModalDialog.d.ts.map +1 -0
- package/dist/ModalDialog/ModalDialog.js +93 -0
- package/dist/ModalDialog/ModalDialog.js.map +1 -0
- package/dist/ModalDialog/index.d.ts +3 -0
- package/dist/ModalDialog/index.d.ts.map +1 -0
- package/dist/ModalDialog/index.js +2 -0
- package/dist/ModalDialog/index.js.map +1 -0
- package/dist/Note/Note.css +169 -0
- package/dist/Note/Note.d.ts +78 -0
- package/dist/Note/Note.d.ts.map +1 -0
- package/dist/Note/Note.js +68 -0
- package/dist/Note/Note.js.map +1 -0
- package/dist/Note/index.d.ts +3 -0
- package/dist/Note/index.d.ts.map +1 -0
- package/dist/Note/index.js +2 -0
- package/dist/Note/index.js.map +1 -0
- package/dist/NumberBadge/NumberBadge.css +83 -0
- package/dist/NumberBadge/NumberBadge.d.ts +42 -0
- package/dist/NumberBadge/NumberBadge.d.ts.map +1 -0
- package/dist/NumberBadge/NumberBadge.js +46 -0
- package/dist/NumberBadge/NumberBadge.js.map +1 -0
- package/dist/NumberBadge/index.d.ts +2 -0
- package/dist/NumberBadge/index.d.ts.map +1 -0
- package/dist/NumberBadge/index.js +2 -0
- package/dist/NumberBadge/index.js.map +1 -0
- package/dist/NumberInput/NumberInput.css +4 -0
- package/dist/NumberInput/NumberInput.d.ts +45 -0
- package/dist/NumberInput/NumberInput.d.ts.map +1 -0
- package/dist/NumberInput/NumberInput.js +27 -0
- package/dist/NumberInput/NumberInput.js.map +1 -0
- package/dist/NumberInput/index.d.ts +3 -0
- package/dist/NumberInput/index.d.ts.map +1 -0
- package/dist/NumberInput/index.js +2 -0
- package/dist/NumberInput/index.js.map +1 -0
- package/dist/OptionLabel/OptionLabel.css +18 -0
- package/dist/OptionLabel/OptionLabel.d.ts +13 -0
- package/dist/OptionLabel/OptionLabel.d.ts.map +1 -0
- package/dist/OptionLabel/OptionLabel.js +13 -0
- package/dist/OptionLabel/OptionLabel.js.map +1 -0
- package/dist/OptionLabel/index.d.ts +3 -0
- package/dist/OptionLabel/index.d.ts.map +1 -0
- package/dist/OptionLabel/index.js +2 -0
- package/dist/OptionLabel/index.js.map +1 -0
- package/dist/OrderedList/OrderedList.css +37 -0
- package/dist/OrderedList/OrderedList.d.ts +32 -0
- package/dist/OrderedList/OrderedList.d.ts.map +1 -0
- package/dist/OrderedList/OrderedList.js +28 -0
- package/dist/OrderedList/OrderedList.js.map +1 -0
- package/dist/OrderedList/index.d.ts +3 -0
- package/dist/OrderedList/index.d.ts.map +1 -0
- package/dist/OrderedList/index.js +2 -0
- package/dist/OrderedList/index.js.map +1 -0
- package/dist/PageBody/PageBody.css +69 -0
- package/dist/PageBody/PageBody.d.ts +33 -0
- package/dist/PageBody/PageBody.d.ts.map +1 -0
- package/dist/PageBody/PageBody.js +28 -0
- package/dist/PageBody/PageBody.js.map +1 -0
- package/dist/PageBody/index.d.ts +2 -0
- package/dist/PageBody/index.d.ts.map +1 -0
- package/dist/PageBody/index.js +2 -0
- package/dist/PageBody/index.js.map +1 -0
- package/dist/PageFooter/PageFooter.css +102 -0
- package/dist/PageFooter/PageFooter.d.ts +55 -0
- package/dist/PageFooter/PageFooter.d.ts.map +1 -0
- package/dist/PageFooter/PageFooter.js +45 -0
- package/dist/PageFooter/PageFooter.js.map +1 -0
- package/dist/PageFooter/index.d.ts +2 -0
- package/dist/PageFooter/index.d.ts.map +1 -0
- package/dist/PageFooter/index.js +2 -0
- package/dist/PageFooter/index.js.map +1 -0
- package/dist/PageHeader/PageHeader.css +517 -0
- package/dist/PageHeader/PageHeader.d.ts +190 -0
- package/dist/PageHeader/PageHeader.d.ts.map +1 -0
- package/dist/PageHeader/PageHeader.js +115 -0
- package/dist/PageHeader/PageHeader.js.map +1 -0
- package/dist/PageHeader/index.d.ts +2 -0
- package/dist/PageHeader/index.d.ts.map +1 -0
- package/dist/PageHeader/index.js +2 -0
- package/dist/PageHeader/index.js.map +1 -0
- package/dist/PageLayout/PageLayout.css +6 -0
- package/dist/PageLayout/PageLayout.d.ts +38 -0
- package/dist/PageLayout/PageLayout.d.ts.map +1 -0
- package/dist/PageLayout/PageLayout.js +33 -0
- package/dist/PageLayout/PageLayout.js.map +1 -0
- package/dist/PageLayout/index.d.ts +2 -0
- package/dist/PageLayout/index.d.ts.map +1 -0
- package/dist/PageLayout/index.js +2 -0
- package/dist/PageLayout/index.js.map +1 -0
- package/dist/Paragraph/Paragraph.css +38 -0
- package/dist/Paragraph/Paragraph.d.ts +35 -0
- package/dist/Paragraph/Paragraph.d.ts.map +1 -0
- package/dist/Paragraph/Paragraph.js +25 -0
- package/dist/Paragraph/Paragraph.js.map +1 -0
- package/dist/Paragraph/index.d.ts +3 -0
- package/dist/Paragraph/index.d.ts.map +1 -0
- package/dist/Paragraph/index.js +2 -0
- package/dist/Paragraph/index.js.map +1 -0
- package/dist/PasswordInput/PasswordInput.css +4 -0
- package/dist/PasswordInput/PasswordInput.d.ts +52 -0
- package/dist/PasswordInput/PasswordInput.d.ts.map +1 -0
- package/dist/PasswordInput/PasswordInput.js +32 -0
- package/dist/PasswordInput/PasswordInput.js.map +1 -0
- package/dist/PasswordInput/index.d.ts +3 -0
- package/dist/PasswordInput/index.d.ts.map +1 -0
- package/dist/PasswordInput/index.js +2 -0
- package/dist/PasswordInput/index.js.map +1 -0
- package/dist/Popover/Popover.css +233 -0
- package/dist/Popover/Popover.d.ts +117 -0
- package/dist/Popover/Popover.d.ts.map +1 -0
- package/dist/Popover/Popover.js +219 -0
- package/dist/Popover/Popover.js.map +1 -0
- package/dist/Popover/index.d.ts +3 -0
- package/dist/Popover/index.d.ts.map +1 -0
- package/dist/Popover/index.js +2 -0
- package/dist/Popover/index.js.map +1 -0
- package/dist/ProgressBar/ProgressBar.css +91 -0
- package/dist/ProgressBar/ProgressBar.d.ts +53 -0
- package/dist/ProgressBar/ProgressBar.d.ts.map +1 -0
- package/dist/ProgressBar/ProgressBar.js +36 -0
- package/dist/ProgressBar/ProgressBar.js.map +1 -0
- package/dist/ProgressBar/index.d.ts +2 -0
- package/dist/ProgressBar/index.d.ts.map +1 -0
- package/dist/ProgressBar/index.js +2 -0
- package/dist/ProgressBar/index.js.map +1 -0
- package/dist/Radio/Radio.css +169 -0
- package/dist/Radio/Radio.d.ts +14 -0
- package/dist/Radio/Radio.d.ts.map +1 -0
- package/dist/Radio/Radio.js +14 -0
- package/dist/Radio/Radio.js.map +1 -0
- package/dist/Radio/index.d.ts +3 -0
- package/dist/Radio/index.d.ts.map +1 -0
- package/dist/Radio/index.js +2 -0
- package/dist/Radio/index.js.map +1 -0
- package/dist/RadioGroup/RadioGroup.css +10 -0
- package/dist/RadioGroup/RadioGroup.d.ts +37 -0
- package/dist/RadioGroup/RadioGroup.d.ts.map +1 -0
- package/dist/RadioGroup/RadioGroup.js +37 -0
- package/dist/RadioGroup/RadioGroup.js.map +1 -0
- package/dist/RadioGroup/index.d.ts +3 -0
- package/dist/RadioGroup/index.d.ts.map +1 -0
- package/dist/RadioGroup/index.js +2 -0
- package/dist/RadioGroup/index.js.map +1 -0
- package/dist/RadioOption/RadioOption.css +17 -0
- package/dist/RadioOption/RadioOption.d.ts +14 -0
- package/dist/RadioOption/RadioOption.d.ts.map +1 -0
- package/dist/RadioOption/RadioOption.js +15 -0
- package/dist/RadioOption/RadioOption.js.map +1 -0
- package/dist/RadioOption/index.d.ts +3 -0
- package/dist/RadioOption/index.d.ts.map +1 -0
- package/dist/RadioOption/index.js +2 -0
- package/dist/RadioOption/index.js.map +1 -0
- package/dist/SearchInput/SearchInput.css +59 -0
- package/dist/SearchInput/SearchInput.d.ts +40 -0
- package/dist/SearchInput/SearchInput.d.ts.map +1 -0
- package/dist/SearchInput/SearchInput.js +31 -0
- package/dist/SearchInput/SearchInput.js.map +1 -0
- package/dist/SearchInput/index.d.ts +3 -0
- package/dist/SearchInput/index.d.ts.map +1 -0
- package/dist/SearchInput/index.js +2 -0
- package/dist/SearchInput/index.js.map +1 -0
- package/dist/Select/Select.css +86 -0
- package/dist/Select/Select.d.ts +52 -0
- package/dist/Select/Select.d.ts.map +1 -0
- package/dist/Select/Select.js +43 -0
- package/dist/Select/Select.js.map +1 -0
- package/dist/Select/index.d.ts +3 -0
- package/dist/Select/index.d.ts.map +1 -0
- package/dist/Select/index.js +2 -0
- package/dist/Select/index.js.map +1 -0
- package/dist/SkipLink/SkipLink.css +58 -0
- package/dist/SkipLink/SkipLink.d.ts +35 -0
- package/dist/SkipLink/SkipLink.d.ts.map +1 -0
- package/dist/SkipLink/SkipLink.js +23 -0
- package/dist/SkipLink/SkipLink.js.map +1 -0
- package/dist/SkipLink/index.d.ts +2 -0
- package/dist/SkipLink/index.d.ts.map +1 -0
- package/dist/SkipLink/index.js +2 -0
- package/dist/SkipLink/index.js.map +1 -0
- package/dist/Spinner/Spinner.css +101 -0
- package/dist/Spinner/Spinner.d.ts +43 -0
- package/dist/Spinner/Spinner.d.ts.map +1 -0
- package/dist/Spinner/Spinner.js +30 -0
- package/dist/Spinner/Spinner.js.map +1 -0
- package/dist/Spinner/index.d.ts +2 -0
- package/dist/Spinner/index.d.ts.map +1 -0
- package/dist/Spinner/index.js +2 -0
- package/dist/Spinner/index.js.map +1 -0
- package/dist/Stack/Stack.css +59 -0
- package/dist/Stack/Stack.d.ts +35 -0
- package/dist/Stack/Stack.d.ts.map +1 -0
- package/dist/Stack/Stack.js +29 -0
- package/dist/Stack/Stack.js.map +1 -0
- package/dist/Stack/index.d.ts +3 -0
- package/dist/Stack/index.d.ts.map +1 -0
- package/dist/Stack/index.js +2 -0
- package/dist/Stack/index.js.map +1 -0
- package/dist/StatusBadge/StatusBadge.css +87 -0
- package/dist/StatusBadge/StatusBadge.d.ts +50 -0
- package/dist/StatusBadge/StatusBadge.d.ts.map +1 -0
- package/dist/StatusBadge/StatusBadge.js +40 -0
- package/dist/StatusBadge/StatusBadge.js.map +1 -0
- package/dist/StatusBadge/index.d.ts +2 -0
- package/dist/StatusBadge/index.d.ts.map +1 -0
- package/dist/StatusBadge/index.js +2 -0
- package/dist/StatusBadge/index.js.map +1 -0
- package/dist/SummaryList/SummaryList.css +151 -0
- package/dist/SummaryList/SummaryList.d.ts +49 -0
- package/dist/SummaryList/SummaryList.d.ts.map +1 -0
- package/dist/SummaryList/SummaryList.js +31 -0
- package/dist/SummaryList/SummaryList.js.map +1 -0
- package/dist/SummaryList/index.d.ts +3 -0
- package/dist/SummaryList/index.d.ts.map +1 -0
- package/dist/SummaryList/index.js +2 -0
- package/dist/SummaryList/index.js.map +1 -0
- package/dist/Table/Table.css +243 -0
- package/dist/Table/Table.d.ts +61 -0
- package/dist/Table/Table.d.ts.map +1 -0
- package/dist/Table/Table.js +37 -0
- package/dist/Table/Table.js.map +1 -0
- package/dist/Table/index.d.ts +3 -0
- package/dist/Table/index.d.ts.map +1 -0
- package/dist/Table/index.js +2 -0
- package/dist/Table/index.js.map +1 -0
- package/dist/TelephoneInput/TelephoneInput.css +4 -0
- package/dist/TelephoneInput/TelephoneInput.d.ts +38 -0
- package/dist/TelephoneInput/TelephoneInput.d.ts.map +1 -0
- package/dist/TelephoneInput/TelephoneInput.js +27 -0
- package/dist/TelephoneInput/TelephoneInput.js.map +1 -0
- package/dist/TelephoneInput/index.d.ts +3 -0
- package/dist/TelephoneInput/index.d.ts.map +1 -0
- package/dist/TelephoneInput/index.js +2 -0
- package/dist/TelephoneInput/index.js.map +1 -0
- package/dist/TextArea/TextArea.css +126 -0
- package/dist/TextArea/TextArea.d.ts +44 -0
- package/dist/TextArea/TextArea.d.ts.map +1 -0
- package/dist/TextArea/TextArea.js +33 -0
- package/dist/TextArea/TextArea.js.map +1 -0
- package/dist/TextArea/index.d.ts +3 -0
- package/dist/TextArea/index.d.ts.map +1 -0
- package/dist/TextArea/index.js +2 -0
- package/dist/TextArea/index.js.map +1 -0
- package/dist/TextInput/TextInput.css +122 -0
- package/dist/TextInput/TextInput.d.ts +44 -0
- package/dist/TextInput/TextInput.d.ts.map +1 -0
- package/dist/TextInput/TextInput.js +33 -0
- package/dist/TextInput/TextInput.js.map +1 -0
- package/dist/TextInput/index.d.ts +3 -0
- package/dist/TextInput/index.d.ts.map +1 -0
- package/dist/TextInput/index.js +2 -0
- package/dist/TextInput/index.js.map +1 -0
- package/dist/TimeInput/TimeInput.css +37 -0
- package/dist/TimeInput/TimeInput.d.ts +37 -0
- package/dist/TimeInput/TimeInput.d.ts.map +1 -0
- package/dist/TimeInput/TimeInput.js +52 -0
- package/dist/TimeInput/TimeInput.js.map +1 -0
- package/dist/TimeInput/index.d.ts +3 -0
- package/dist/TimeInput/index.d.ts.map +1 -0
- package/dist/TimeInput/index.js +2 -0
- package/dist/TimeInput/index.js.map +1 -0
- package/dist/UnorderedList/UnorderedList.css +38 -0
- package/dist/UnorderedList/UnorderedList.d.ts +26 -0
- package/dist/UnorderedList/UnorderedList.d.ts.map +1 -0
- package/dist/UnorderedList/UnorderedList.js +22 -0
- package/dist/UnorderedList/UnorderedList.js.map +1 -0
- package/dist/UnorderedList/index.d.ts +3 -0
- package/dist/UnorderedList/index.d.ts.map +1 -0
- package/dist/UnorderedList/index.js +2 -0
- package/dist/UnorderedList/index.js.map +1 -0
- package/dist/index.css +7036 -0
- package/dist/index.d.ts +76 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +86 -0
- package/dist/index.js.map +1 -0
- package/package.json +57 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SearchInput Component Styles
|
|
3
|
+
* Wrapper positions the search icon inline-start inside the input.
|
|
4
|
+
* The input uses dsn-text-input base styles with extra padding-inline-start
|
|
5
|
+
* to prevent typed text from overlapping the icon.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/* Wrapper — positions icon absolutely inside the input */
|
|
9
|
+
.dsn-search-input-wrapper {
|
|
10
|
+
position: relative;
|
|
11
|
+
display: block;
|
|
12
|
+
inline-size: 100%;
|
|
13
|
+
max-inline-size: var(--dsn-form-control-max-inline-size);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/* Icon — centered vertically, positioned at inline-start */
|
|
17
|
+
.dsn-search-input__icon {
|
|
18
|
+
position: absolute;
|
|
19
|
+
inset-block-start: 50%;
|
|
20
|
+
inset-inline-start: var(--dsn-form-control-padding-inline-start);
|
|
21
|
+
transform: translateY(-50%);
|
|
22
|
+
inline-size: var(--dsn-search-input-icon-size);
|
|
23
|
+
block-size: var(--dsn-search-input-icon-size);
|
|
24
|
+
color: var(--dsn-text-input-color);
|
|
25
|
+
pointer-events: none;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/* Input — extra padding-inline-start to make room for the icon */
|
|
29
|
+
.dsn-search-input {
|
|
30
|
+
padding-inline-start: var(--dsn-search-input-padding-inline-start-with-icon);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/* Hide browser-native clear button — will be implemented as a separate pattern */
|
|
34
|
+
.dsn-search-input::-webkit-search-cancel-button {
|
|
35
|
+
display: none;
|
|
36
|
+
}
|
|
37
|
+
.dsn-search-input::-webkit-search-decoration {
|
|
38
|
+
display: none;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/* Width variants on the wrapper */
|
|
42
|
+
.dsn-search-input-wrapper--width-xs {
|
|
43
|
+
max-inline-size: var(--dsn-form-control-width-xs);
|
|
44
|
+
}
|
|
45
|
+
.dsn-search-input-wrapper--width-sm {
|
|
46
|
+
max-inline-size: var(--dsn-form-control-width-sm);
|
|
47
|
+
}
|
|
48
|
+
.dsn-search-input-wrapper--width-md {
|
|
49
|
+
max-inline-size: var(--dsn-form-control-width-md);
|
|
50
|
+
}
|
|
51
|
+
.dsn-search-input-wrapper--width-lg {
|
|
52
|
+
max-inline-size: var(--dsn-form-control-width-lg);
|
|
53
|
+
}
|
|
54
|
+
.dsn-search-input-wrapper--width-xl {
|
|
55
|
+
max-inline-size: var(--dsn-form-control-width-xl);
|
|
56
|
+
}
|
|
57
|
+
.dsn-search-input-wrapper--width-full {
|
|
58
|
+
max-inline-size: var(--dsn-form-control-width-full);
|
|
59
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FormControlWidth } from '@dsn-starter-kit/core';
|
|
3
|
+
import '../TextInput/TextInput.css';
|
|
4
|
+
import './SearchInput.css';
|
|
5
|
+
export interface SearchInputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type'> {
|
|
6
|
+
/**
|
|
7
|
+
* Whether the input is in an invalid state
|
|
8
|
+
* @default false
|
|
9
|
+
*/
|
|
10
|
+
invalid?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Width variant for the input
|
|
13
|
+
* @default undefined (uses default max-width from form-control)
|
|
14
|
+
*/
|
|
15
|
+
width?: FormControlWidth;
|
|
16
|
+
/**
|
|
17
|
+
* Additional CSS class names
|
|
18
|
+
*/
|
|
19
|
+
className?: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Search Input component
|
|
23
|
+
* Search input with a non-interactive search icon positioned at inline-start.
|
|
24
|
+
* The icon has the same color as the input text (dsn-text-input-color).
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```tsx
|
|
28
|
+
* // Basic usage
|
|
29
|
+
* <SearchInput placeholder="Zoeken..." />
|
|
30
|
+
*
|
|
31
|
+
* // With label
|
|
32
|
+
* <FormFieldLabel htmlFor="search">Zoeken</FormFieldLabel>
|
|
33
|
+
* <SearchInput id="search" />
|
|
34
|
+
*
|
|
35
|
+
* // Invalid state
|
|
36
|
+
* <SearchInput invalid aria-invalid="true" aria-describedby="error" />
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
export declare const SearchInput: React.ForwardRefExoticComponent<SearchInputProps & React.RefAttributes<HTMLInputElement>>;
|
|
40
|
+
//# sourceMappingURL=SearchInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchInput.d.ts","sourceRoot":"","sources":["../../src/SearchInput/SearchInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAc,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAErE,OAAO,4BAA4B,CAAC;AACpC,OAAO,mBAAmB,CAAC;AAE3B,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAC5C,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAC3C,MAAM,CACP;IACC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;OAGG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;IAEzB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,WAAW,2FAyBvB,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { classNames } from '@dsn-starter-kit/core';
|
|
4
|
+
import { Icon } from '../Icon';
|
|
5
|
+
import '../TextInput/TextInput.css';
|
|
6
|
+
import './SearchInput.css';
|
|
7
|
+
/**
|
|
8
|
+
* Search Input component
|
|
9
|
+
* Search input with a non-interactive search icon positioned at inline-start.
|
|
10
|
+
* The icon has the same color as the input text (dsn-text-input-color).
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```tsx
|
|
14
|
+
* // Basic usage
|
|
15
|
+
* <SearchInput placeholder="Zoeken..." />
|
|
16
|
+
*
|
|
17
|
+
* // With label
|
|
18
|
+
* <FormFieldLabel htmlFor="search">Zoeken</FormFieldLabel>
|
|
19
|
+
* <SearchInput id="search" />
|
|
20
|
+
*
|
|
21
|
+
* // Invalid state
|
|
22
|
+
* <SearchInput invalid aria-invalid="true" aria-describedby="error" />
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export const SearchInput = React.forwardRef(({ className, invalid, width, ...props }, ref) => {
|
|
26
|
+
const wrapperClasses = classNames('dsn-search-input-wrapper', width && `dsn-search-input-wrapper--width-${width}`);
|
|
27
|
+
const inputClasses = classNames('dsn-text-input', 'dsn-search-input', className);
|
|
28
|
+
return (_jsxs("div", { className: wrapperClasses, children: [_jsx(Icon, { name: "search", className: "dsn-search-input__icon", "aria-hidden": true }), _jsx("input", { ref: ref, type: "search", className: inputClasses, "aria-invalid": invalid || undefined, ...props })] }));
|
|
29
|
+
});
|
|
30
|
+
SearchInput.displayName = 'SearchInput';
|
|
31
|
+
//# sourceMappingURL=SearchInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchInput.js","sourceRoot":"","sources":["../../src/SearchInput/SearchInput.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAoB,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,4BAA4B,CAAC;AACpC,OAAO,mBAAmB,CAAC;AAwB3B;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CACzC,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IAC/C,MAAM,cAAc,GAAG,UAAU,CAC/B,0BAA0B,EAC1B,KAAK,IAAI,mCAAmC,KAAK,EAAE,CACpD,CAAC;IACF,MAAM,YAAY,GAAG,UAAU,CAC7B,gBAAgB,EAChB,kBAAkB,EAClB,SAAS,CACV,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAE,cAAc,aAC5B,KAAC,IAAI,IAAC,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,wBAAwB,wBAAe,EACrE,gBACE,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,YAAY,kBACT,OAAO,IAAI,SAAS,KAC9B,KAAK,GACT,IACE,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,WAAW,CAAC,WAAW,GAAG,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/SearchInput/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/SearchInput/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Select Component Styles
|
|
3
|
+
* Wrapper positions the chevron-down icon absolutely at inline-end inside the select.
|
|
4
|
+
* The select uses dsn-text-input base styles with extra padding-inline-end
|
|
5
|
+
* to prevent selected text from overlapping the icon.
|
|
6
|
+
* The native dropdown arrow is hidden via appearance: none.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
/* Wrapper — positions icon absolutely inside the select */
|
|
10
|
+
.dsn-select-wrapper {
|
|
11
|
+
position: relative;
|
|
12
|
+
display: block;
|
|
13
|
+
inline-size: 100%;
|
|
14
|
+
max-inline-size: var(--dsn-form-control-max-inline-size);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/* Chevron icon — centered vertically, positioned at inline-end */
|
|
18
|
+
.dsn-select__icon {
|
|
19
|
+
position: absolute;
|
|
20
|
+
inset-block-start: 50%;
|
|
21
|
+
inset-inline-end: var(--dsn-select-icon-inset-inline-end);
|
|
22
|
+
transform: translateY(-50%);
|
|
23
|
+
inline-size: var(--dsn-select-icon-size);
|
|
24
|
+
block-size: var(--dsn-select-icon-size);
|
|
25
|
+
color: var(--dsn-select-icon-color);
|
|
26
|
+
pointer-events: none;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/* Select — reset browser defaults, hide native arrow, add padding for custom icon */
|
|
30
|
+
/* Also override :read-only styles from dsn-text-input, because browsers consider
|
|
31
|
+
<select> as :read-only (non-typeable), which incorrectly triggers those styles. */
|
|
32
|
+
/* max-inline-size is set to none so the wrapper controls the width, not the select itself. */
|
|
33
|
+
.dsn-select {
|
|
34
|
+
appearance: none;
|
|
35
|
+
background-color: var(--dsn-text-input-background-color);
|
|
36
|
+
border: var(--dsn-text-input-border-width) solid
|
|
37
|
+
var(--dsn-text-input-border-color);
|
|
38
|
+
color: var(--dsn-text-input-color);
|
|
39
|
+
cursor: pointer;
|
|
40
|
+
max-inline-size: none;
|
|
41
|
+
padding-inline-end: var(--dsn-select-padding-inline-end-with-icon);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/* Undo the :read-only styles inherited from dsn-text-input */
|
|
45
|
+
.dsn-select:read-only {
|
|
46
|
+
background-color: var(--dsn-text-input-background-color);
|
|
47
|
+
border-color: var(--dsn-text-input-border-color);
|
|
48
|
+
color: var(--dsn-text-input-color);
|
|
49
|
+
cursor: pointer;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.dsn-select:disabled {
|
|
53
|
+
background-color: var(--dsn-text-input-disabled-background-color);
|
|
54
|
+
border-color: var(--dsn-text-input-disabled-border-color);
|
|
55
|
+
cursor: not-allowed;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.dsn-select[aria-invalid='true'] {
|
|
59
|
+
background-color: var(--dsn-text-input-invalid-background-color);
|
|
60
|
+
border-color: var(--dsn-text-input-invalid-border-color);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/* Remove native arrow in IE/Edge */
|
|
64
|
+
.dsn-select::-ms-expand {
|
|
65
|
+
display: none;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/* Width variants on the wrapper */
|
|
69
|
+
.dsn-select-wrapper--width-xs {
|
|
70
|
+
max-inline-size: var(--dsn-form-control-width-xs);
|
|
71
|
+
}
|
|
72
|
+
.dsn-select-wrapper--width-sm {
|
|
73
|
+
max-inline-size: var(--dsn-form-control-width-sm);
|
|
74
|
+
}
|
|
75
|
+
.dsn-select-wrapper--width-md {
|
|
76
|
+
max-inline-size: var(--dsn-form-control-width-md);
|
|
77
|
+
}
|
|
78
|
+
.dsn-select-wrapper--width-lg {
|
|
79
|
+
max-inline-size: var(--dsn-form-control-width-lg);
|
|
80
|
+
}
|
|
81
|
+
.dsn-select-wrapper--width-xl {
|
|
82
|
+
max-inline-size: var(--dsn-form-control-width-xl);
|
|
83
|
+
}
|
|
84
|
+
.dsn-select-wrapper--width-full {
|
|
85
|
+
max-inline-size: var(--dsn-form-control-width-full);
|
|
86
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FormControlWidth } from '@dsn-starter-kit/core';
|
|
3
|
+
import '../TextInput/TextInput.css';
|
|
4
|
+
import './Select.css';
|
|
5
|
+
export interface SelectProps extends React.SelectHTMLAttributes<HTMLSelectElement> {
|
|
6
|
+
/**
|
|
7
|
+
* Whether the select is in an invalid state
|
|
8
|
+
* @default false
|
|
9
|
+
*/
|
|
10
|
+
invalid?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Width variant for the select
|
|
13
|
+
* @default undefined (uses default max-width from form-control)
|
|
14
|
+
*/
|
|
15
|
+
width?: FormControlWidth;
|
|
16
|
+
/**
|
|
17
|
+
* Additional CSS class names
|
|
18
|
+
*/
|
|
19
|
+
className?: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Select component
|
|
23
|
+
* Dropdown select with a custom chevron-down icon at inline-end.
|
|
24
|
+
* The native select arrow is hidden; the custom icon is decorative and non-interactive.
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```tsx
|
|
28
|
+
* // Basic usage
|
|
29
|
+
* <Select>
|
|
30
|
+
* <option value="">Kies een optie</option>
|
|
31
|
+
* <option value="1">Optie 1</option>
|
|
32
|
+
* <option value="2">Optie 2</option>
|
|
33
|
+
* </Select>
|
|
34
|
+
*
|
|
35
|
+
* // With label
|
|
36
|
+
* <FormField label="Land" htmlFor="land">
|
|
37
|
+
* <Select id="land">
|
|
38
|
+
* <option value="">Kies een land</option>
|
|
39
|
+
* <option value="nl">Nederland</option>
|
|
40
|
+
* <option value="be">België</option>
|
|
41
|
+
* </Select>
|
|
42
|
+
* </FormField>
|
|
43
|
+
*
|
|
44
|
+
* // Width variant
|
|
45
|
+
* <Select width="lg">...</Select>
|
|
46
|
+
*
|
|
47
|
+
* // Invalid state
|
|
48
|
+
* <Select invalid aria-invalid="true" aria-describedby="error">...</Select>
|
|
49
|
+
* ```
|
|
50
|
+
*/
|
|
51
|
+
export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLSelectElement>>;
|
|
52
|
+
//# sourceMappingURL=Select.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../src/Select/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAc,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAErE,OAAO,4BAA4B,CAAC;AACpC,OAAO,cAAc,CAAC;AAEtB,MAAM,WAAW,WAAY,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IAChF;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;OAGG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;IAEzB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,MAAM,uFA0BlB,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { classNames } from '@dsn-starter-kit/core';
|
|
4
|
+
import { Icon } from '../Icon';
|
|
5
|
+
import '../TextInput/TextInput.css';
|
|
6
|
+
import './Select.css';
|
|
7
|
+
/**
|
|
8
|
+
* Select component
|
|
9
|
+
* Dropdown select with a custom chevron-down icon at inline-end.
|
|
10
|
+
* The native select arrow is hidden; the custom icon is decorative and non-interactive.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```tsx
|
|
14
|
+
* // Basic usage
|
|
15
|
+
* <Select>
|
|
16
|
+
* <option value="">Kies een optie</option>
|
|
17
|
+
* <option value="1">Optie 1</option>
|
|
18
|
+
* <option value="2">Optie 2</option>
|
|
19
|
+
* </Select>
|
|
20
|
+
*
|
|
21
|
+
* // With label
|
|
22
|
+
* <FormField label="Land" htmlFor="land">
|
|
23
|
+
* <Select id="land">
|
|
24
|
+
* <option value="">Kies een land</option>
|
|
25
|
+
* <option value="nl">Nederland</option>
|
|
26
|
+
* <option value="be">België</option>
|
|
27
|
+
* </Select>
|
|
28
|
+
* </FormField>
|
|
29
|
+
*
|
|
30
|
+
* // Width variant
|
|
31
|
+
* <Select width="lg">...</Select>
|
|
32
|
+
*
|
|
33
|
+
* // Invalid state
|
|
34
|
+
* <Select invalid aria-invalid="true" aria-describedby="error">...</Select>
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
export const Select = React.forwardRef(({ className, invalid, width, disabled, children, ...props }, ref) => {
|
|
38
|
+
const wrapperClasses = classNames('dsn-select-wrapper', width && `dsn-select-wrapper--width-${width}`);
|
|
39
|
+
const selectClasses = classNames('dsn-text-input', 'dsn-select', className);
|
|
40
|
+
return (_jsxs("div", { className: wrapperClasses, children: [_jsx("select", { ref: ref, className: selectClasses, "aria-invalid": invalid || undefined, disabled: disabled, ...props, children: children }), !disabled && (_jsx(Icon, { name: "chevron-down", className: "dsn-select__icon", "aria-hidden": true }))] }));
|
|
41
|
+
});
|
|
42
|
+
Select.displayName = 'Select';
|
|
43
|
+
//# sourceMappingURL=Select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Select.js","sourceRoot":"","sources":["../../src/Select/Select.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAoB,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,4BAA4B,CAAC;AACpC,OAAO,cAAc,CAAC;AAqBtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CACpC,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IACnE,MAAM,cAAc,GAAG,UAAU,CAC/B,oBAAoB,EACpB,KAAK,IAAI,6BAA6B,KAAK,EAAE,CAC9C,CAAC;IAEF,MAAM,aAAa,GAAG,UAAU,CAAC,gBAAgB,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;IAE5E,OAAO,CACL,eAAK,SAAS,EAAE,cAAc,aAC5B,iBACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,aAAa,kBACV,OAAO,IAAI,SAAS,EAClC,QAAQ,EAAE,QAAQ,KACd,KAAK,YAER,QAAQ,GACF,EACR,CAAC,QAAQ,IAAI,CACZ,KAAC,IAAI,IAAC,IAAI,EAAC,cAAc,EAAC,SAAS,EAAC,kBAAkB,wBAAe,CACtE,IACG,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SkipLink Component Styles for React
|
|
3
|
+
* Re-exports the base SkipLink styles from components-html
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* SkipLink Component
|
|
8
|
+
* Accessibility component — eerste focusbare element op de pagina.
|
|
9
|
+
* Verborgen totdat de gebruiker er met Tab op focust.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
.dsn-skip-link {
|
|
13
|
+
/* Verborgen standaard — zelfde patroon als dsn-visually-hidden */
|
|
14
|
+
position: absolute;
|
|
15
|
+
clip-path: inset(50%);
|
|
16
|
+
overflow: hidden;
|
|
17
|
+
white-space: nowrap;
|
|
18
|
+
|
|
19
|
+
/* Hoge z-index zodat de link altijd boven andere elementen staat bij focus */
|
|
20
|
+
z-index: var(--dsn-skip-link-z-index);
|
|
21
|
+
|
|
22
|
+
/* Structuur */
|
|
23
|
+
display: inline-block;
|
|
24
|
+
|
|
25
|
+
/* Spacing */
|
|
26
|
+
padding-block: var(--dsn-skip-link-padding-block);
|
|
27
|
+
padding-inline: var(--dsn-skip-link-padding-inline);
|
|
28
|
+
|
|
29
|
+
/* Afronding */
|
|
30
|
+
border-radius: var(--dsn-skip-link-border-radius);
|
|
31
|
+
|
|
32
|
+
/* Typografie */
|
|
33
|
+
font: inherit;
|
|
34
|
+
text-decoration: none;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/* Focus state — link wordt zichtbaar en gepositioneerd */
|
|
38
|
+
.dsn-skip-link:focus-visible {
|
|
39
|
+
/* Clip verwijderen zodat de link zichtbaar wordt */
|
|
40
|
+
clip-path: none;
|
|
41
|
+
overflow: visible;
|
|
42
|
+
white-space: normal;
|
|
43
|
+
|
|
44
|
+
/* Positionering in de hoek van het viewport */
|
|
45
|
+
inset-block-start: var(--dsn-skip-link-offset-block-start);
|
|
46
|
+
inset-inline-start: var(--dsn-skip-link-offset-inline-start);
|
|
47
|
+
|
|
48
|
+
/* Focus stijl — consistent met dsn-link focus */
|
|
49
|
+
background-color: var(--dsn-focus-background-color);
|
|
50
|
+
color: var(--dsn-focus-color);
|
|
51
|
+
outline: var(--dsn-focus-outline-width) var(--dsn-focus-outline-style)
|
|
52
|
+
var(--dsn-focus-outline-color);
|
|
53
|
+
outline-offset: var(--dsn-focus-outline-offset);
|
|
54
|
+
box-shadow: 0 0 0
|
|
55
|
+
calc(var(--dsn-focus-outline-offset) + var(--dsn-focus-outline-width))
|
|
56
|
+
var(--dsn-focus-inverse-outline-color);
|
|
57
|
+
}
|
|
58
|
+
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './SkipLink.css';
|
|
3
|
+
export interface SkipLinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {
|
|
4
|
+
/**
|
|
5
|
+
* Het doel-ID waarnaar de gebruiker gesprongen wordt (inclusief `#`).
|
|
6
|
+
* Het element met dit ID moet `tabindex="-1"` hebben als het niet natively focusbaar is.
|
|
7
|
+
* @example "#main-content"
|
|
8
|
+
*/
|
|
9
|
+
href: string;
|
|
10
|
+
/**
|
|
11
|
+
* Tekst van de skip-link — zichtbaar voor screenreaders en bij focus.
|
|
12
|
+
* @default "Ga direct naar de hoofdinhoud"
|
|
13
|
+
*/
|
|
14
|
+
children?: React.ReactNode;
|
|
15
|
+
/**
|
|
16
|
+
* Extra CSS klassen
|
|
17
|
+
*/
|
|
18
|
+
className?: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* SkipLink — toegankelijkheidskoppeling om herhalende navigatie te omzeilen.
|
|
22
|
+
*
|
|
23
|
+
* Plaatst de link als **eerste focusbaar element** in de DOM, vóór `<header>` en `<nav>`.
|
|
24
|
+
* Voldoet aan WCAG 2.1 succescriterium 2.4.1 (Bypass Blocks, Level A).
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```tsx
|
|
28
|
+
* // Standaard gebruik — eerste element in <body>
|
|
29
|
+
* <SkipLink href="#main-content">Ga direct naar de hoofdinhoud</SkipLink>
|
|
30
|
+
* <header>...</header>
|
|
31
|
+
* <main id="main-content" tabIndex={-1}>...</main>
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
export declare const SkipLink: React.ForwardRefExoticComponent<SkipLinkProps & React.RefAttributes<HTMLAnchorElement>>;
|
|
35
|
+
//# sourceMappingURL=SkipLink.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SkipLink.d.ts","sourceRoot":"","sources":["../../src/SkipLink/SkipLink.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,gBAAgB,CAAC;AAExB,MAAM,WAAW,aAAc,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IAClF;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,QAAQ,yFAgBpB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { classNames } from '@dsn-starter-kit/core';
|
|
4
|
+
import './SkipLink.css';
|
|
5
|
+
/**
|
|
6
|
+
* SkipLink — toegankelijkheidskoppeling om herhalende navigatie te omzeilen.
|
|
7
|
+
*
|
|
8
|
+
* Plaatst de link als **eerste focusbaar element** in de DOM, vóór `<header>` en `<nav>`.
|
|
9
|
+
* Voldoet aan WCAG 2.1 succescriterium 2.4.1 (Bypass Blocks, Level A).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* // Standaard gebruik — eerste element in <body>
|
|
14
|
+
* <SkipLink href="#main-content">Ga direct naar de hoofdinhoud</SkipLink>
|
|
15
|
+
* <header>...</header>
|
|
16
|
+
* <main id="main-content" tabIndex={-1}>...</main>
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export const SkipLink = React.forwardRef(({ href, children = 'Ga direct naar de hoofdinhoud', className, ...props }, ref) => {
|
|
20
|
+
return (_jsx("a", { ref: ref, href: href, className: classNames('dsn-skip-link', className), ...props, children: children }));
|
|
21
|
+
});
|
|
22
|
+
SkipLink.displayName = 'SkipLink';
|
|
23
|
+
//# sourceMappingURL=SkipLink.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SkipLink.js","sourceRoot":"","sources":["../../src/SkipLink/SkipLink.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,gBAAgB,CAAC;AAsBxB;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CACtC,CACE,EAAE,IAAI,EAAE,QAAQ,GAAG,+BAA+B,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EACzE,GAAG,EACH,EAAE;IACF,OAAO,CACL,YACE,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,UAAU,CAAC,eAAe,EAAE,SAAS,CAAC,KAC7C,KAAK,YAER,QAAQ,GACP,CACL,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/SkipLink/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/SkipLink/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Spinner Component
|
|
3
|
+
* Cirkelvormige laadindicator voor onbepaalde wachttijden.
|
|
4
|
+
*
|
|
5
|
+
* role="status" op de container maakt de laadtoestand toegankelijk voor screenreaders.
|
|
6
|
+
* De SVG-cirkel is decoratief (aria-hidden="true") — het label geeft de toegankelijke naam.
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* <!-- Standaard (label rechts) -->
|
|
10
|
+
* <div class="dsn-spinner" role="status">
|
|
11
|
+
* <svg class="dsn-spinner__circle" viewBox="0 0 24 24" aria-hidden="true">
|
|
12
|
+
* <circle class="dsn-spinner__track" cx="12" cy="12" r="10" />
|
|
13
|
+
* <circle class="dsn-spinner__arc" cx="12" cy="12" r="10" />
|
|
14
|
+
* </svg>
|
|
15
|
+
* <span class="dsn-spinner__label">Laden...</span>
|
|
16
|
+
* </div>
|
|
17
|
+
*
|
|
18
|
+
* <!-- Grote variant (label gecentreerd onder spinner) -->
|
|
19
|
+
* <div class="dsn-spinner dsn-spinner--large" role="status">
|
|
20
|
+
* <svg class="dsn-spinner__circle" viewBox="0 0 24 24" aria-hidden="true">
|
|
21
|
+
* <circle class="dsn-spinner__track" cx="12" cy="12" r="10" />
|
|
22
|
+
* <circle class="dsn-spinner__arc" cx="12" cy="12" r="10" />
|
|
23
|
+
* </svg>
|
|
24
|
+
* <span class="dsn-spinner__label">Laden...</span>
|
|
25
|
+
* </div>
|
|
26
|
+
*
|
|
27
|
+
* <!-- Visueel verborgen label (toegankelijk voor screenreaders via dsn-visually-hidden) -->
|
|
28
|
+
* <div class="dsn-spinner" role="status">
|
|
29
|
+
* <svg class="dsn-spinner__circle" viewBox="0 0 24 24" aria-hidden="true">
|
|
30
|
+
* <circle class="dsn-spinner__track" cx="12" cy="12" r="10" />
|
|
31
|
+
* <circle class="dsn-spinner__arc" cx="12" cy="12" r="10" />
|
|
32
|
+
* </svg>
|
|
33
|
+
* <span class="dsn-spinner__label dsn-visually-hidden">Laden...</span>
|
|
34
|
+
* </div>
|
|
35
|
+
*/
|
|
36
|
+
|
|
37
|
+
.dsn-spinner {
|
|
38
|
+
display: inline-flex;
|
|
39
|
+
flex-direction: row;
|
|
40
|
+
align-items: center;
|
|
41
|
+
gap: var(--dsn-spinner-gap-size);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.dsn-spinner--large {
|
|
45
|
+
flex-direction: column;
|
|
46
|
+
align-items: center;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.dsn-spinner__circle {
|
|
50
|
+
flex-shrink: 0;
|
|
51
|
+
width: var(--dsn-spinner-size);
|
|
52
|
+
height: var(--dsn-spinner-size);
|
|
53
|
+
animation: dsn-spinner-rotate var(--dsn-spinner-duration) linear infinite;
|
|
54
|
+
transform-origin: center;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.dsn-spinner--large .dsn-spinner__circle {
|
|
58
|
+
width: var(--dsn-spinner-size-large);
|
|
59
|
+
height: var(--dsn-spinner-size-large);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/* Baan: volledige achtergrondcirkel als visuele rails */
|
|
63
|
+
.dsn-spinner__track {
|
|
64
|
+
fill: none;
|
|
65
|
+
stroke: var(--dsn-spinner-track-color);
|
|
66
|
+
stroke-width: var(--dsn-spinner-stroke-width);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/* Boog: gedeeltelijke cirkel die de animatie zichtbaar maakt */
|
|
70
|
+
.dsn-spinner__arc {
|
|
71
|
+
fill: none;
|
|
72
|
+
stroke: var(--dsn-spinner-color);
|
|
73
|
+
stroke-width: var(--dsn-spinner-stroke-width);
|
|
74
|
+
stroke-linecap: round;
|
|
75
|
+
/* 75% zichtbaar (47.12 van 62.83 omtrek), 25% gap — bij r=10 in 24-unit viewBox */
|
|
76
|
+
stroke-dasharray: 47 16;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
@keyframes dsn-spinner-rotate {
|
|
80
|
+
to {
|
|
81
|
+
transform: rotate(360deg);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/* prefers-reduced-motion: subtiel pulseren i.p.v. roteren */
|
|
86
|
+
@media (prefers-reduced-motion: reduce) {
|
|
87
|
+
.dsn-spinner__circle {
|
|
88
|
+
animation: dsn-spinner-pulse var(--dsn-spinner-duration) ease-in-out
|
|
89
|
+
infinite alternate;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
@keyframes dsn-spinner-pulse {
|
|
94
|
+
from {
|
|
95
|
+
opacity: 1;
|
|
96
|
+
}
|
|
97
|
+
to {
|
|
98
|
+
opacity: 0.3;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './Spinner.css';
|
|
3
|
+
export type SpinnerSize = 'default' | 'large';
|
|
4
|
+
export interface SpinnerProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
5
|
+
/**
|
|
6
|
+
* Tekstlabel dat de laadtoestand beschrijft voor alle gebruikers.
|
|
7
|
+
* Altijd vereist — ook bij hideLabel wordt het label doorgegeven aan screenreaders.
|
|
8
|
+
*/
|
|
9
|
+
label: string;
|
|
10
|
+
/**
|
|
11
|
+
* Verbergt het label visueel maar behoudt het voor screenreaders via dsn-visually-hidden
|
|
12
|
+
* @default false
|
|
13
|
+
*/
|
|
14
|
+
hideLabel?: boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Grootte van de spinner.
|
|
17
|
+
* default: 24×24px, label rechts.
|
|
18
|
+
* large: 48×48px, label gecentreerd onder de spinner.
|
|
19
|
+
* @default 'default'
|
|
20
|
+
*/
|
|
21
|
+
size?: SpinnerSize;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Spinner component
|
|
25
|
+
* Cirkelvormige laadindicator voor onbepaalde wachttijden.
|
|
26
|
+
*
|
|
27
|
+
* role="status" op de container kondigt de laadtoestand aan bij screenreaders.
|
|
28
|
+
* Het label is altijd aanwezig — visueel verbergen via hideLabel behoudt toegankelijkheid.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```tsx
|
|
32
|
+
* // Standaard met zichtbaar label
|
|
33
|
+
* <Spinner label="Laden..." />
|
|
34
|
+
*
|
|
35
|
+
* // Grote variant met label onder de spinner
|
|
36
|
+
* <Spinner size="large" label="Pagina wordt geladen" />
|
|
37
|
+
*
|
|
38
|
+
* // Enkel visueel verborgen label (toegankelijk voor screenreaders)
|
|
39
|
+
* <Spinner label="Laden..." hideLabel />
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
export declare const Spinner: React.ForwardRefExoticComponent<SpinnerProps & React.RefAttributes<HTMLDivElement>>;
|
|
43
|
+
//# sourceMappingURL=Spinner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Spinner.d.ts","sourceRoot":"","sources":["../../src/Spinner/Spinner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,eAAe,CAAC;AAEvB,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,OAAO,CAAC;AAE9C,MAAM,WAAW,YAAa,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACxE;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,OAAO,qFA8BnB,CAAC"}
|