@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,233 @@
|
|
|
1
|
+
/* ===== Popover ===== */
|
|
2
|
+
|
|
3
|
+
/*
|
|
4
|
+
* dsn-popover — Contextgebonden overlay verankerd aan een triggerelement
|
|
5
|
+
*
|
|
6
|
+
* Gebruik de HTML Popover API (popover="auto") voor light-dismiss en top-layer gedrag.
|
|
7
|
+
* Positionering vereist JavaScript (getBoundingClientRect) of CSS Anchor Positioning.
|
|
8
|
+
*
|
|
9
|
+
* Toegankelijkheid:
|
|
10
|
+
* - role="dialog" aria-modal="false" — niet-modaal: achtergrond blijft interactief
|
|
11
|
+
* - aria-labelledby → .dsn-popover-heading id (via PopoverHeading + context)
|
|
12
|
+
* - aria-label → via `label` prop (popovers zonder heading)
|
|
13
|
+
* - aria-expanded op het triggerelement — synchroon met open-staat
|
|
14
|
+
*
|
|
15
|
+
* HTML-structuur (volledig — met header en footer):
|
|
16
|
+
*
|
|
17
|
+
* <div class="dsn-popover-wrapper">
|
|
18
|
+
* <button
|
|
19
|
+
* type="button"
|
|
20
|
+
* class="dsn-button dsn-button--subtle dsn-button--size-small dsn-button--icon-only"
|
|
21
|
+
* popovertarget="popover-id"
|
|
22
|
+
* aria-expanded="false"
|
|
23
|
+
* >
|
|
24
|
+
* <svg class="dsn-icon" aria-hidden="true"><!-- dots-vertical --></svg>
|
|
25
|
+
* <span class="dsn-button__label">Acties</span>
|
|
26
|
+
* </button>
|
|
27
|
+
*
|
|
28
|
+
* <div
|
|
29
|
+
* id="popover-id"
|
|
30
|
+
* popover="auto"
|
|
31
|
+
* class="dsn-popover dsn-popover--placement-bottom"
|
|
32
|
+
* role="dialog"
|
|
33
|
+
* aria-modal="false"
|
|
34
|
+
* aria-labelledby="popover-heading-id"
|
|
35
|
+
* >
|
|
36
|
+
* <div class="dsn-popover__header">
|
|
37
|
+
* <h2 class="dsn-popover-heading" id="popover-heading-id">Titel</h2>
|
|
38
|
+
* <button type="button" class="dsn-button dsn-button--subtle dsn-button--size-small dsn-button--icon-only">
|
|
39
|
+
* <svg class="dsn-icon" aria-hidden="true"><!-- x --></svg>
|
|
40
|
+
* <span class="dsn-button__label">Sluiten</span>
|
|
41
|
+
* </button>
|
|
42
|
+
* </div>
|
|
43
|
+
* <div class="dsn-popover__body">
|
|
44
|
+
* <!-- slot content -->
|
|
45
|
+
* </div>
|
|
46
|
+
* <div class="dsn-popover__footer">
|
|
47
|
+
* <!-- acties -->
|
|
48
|
+
* </div>
|
|
49
|
+
* </div>
|
|
50
|
+
* </div>
|
|
51
|
+
*
|
|
52
|
+
* HTML-structuur (minimaal — alleen body, bijv. voor Menu):
|
|
53
|
+
*
|
|
54
|
+
* <div class="dsn-popover-wrapper">
|
|
55
|
+
* <button popovertarget="popover-id" ...>...</button>
|
|
56
|
+
* <div id="popover-id" popover="auto" class="dsn-popover dsn-popover--placement-bottom"
|
|
57
|
+
* role="dialog" aria-modal="false" aria-label="Acties">
|
|
58
|
+
* <div class="dsn-popover__body">
|
|
59
|
+
* <!-- Menu component -->
|
|
60
|
+
* </div>
|
|
61
|
+
* </div>
|
|
62
|
+
* </div>
|
|
63
|
+
*/
|
|
64
|
+
|
|
65
|
+
/* ===== Wrapper ===== */
|
|
66
|
+
|
|
67
|
+
/*
|
|
68
|
+
* Relatief gepositioneerde container voor CSS-only gebruik.
|
|
69
|
+
* In de React-implementatie wordt positionering via JS afgehandeld.
|
|
70
|
+
*/
|
|
71
|
+
.dsn-popover-wrapper {
|
|
72
|
+
position: relative;
|
|
73
|
+
display: inline-block;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/* ===== Popover panel ===== */
|
|
77
|
+
|
|
78
|
+
.dsn-popover {
|
|
79
|
+
/* Reset UA popover-stijlen */
|
|
80
|
+
margin: 0;
|
|
81
|
+
padding: 0;
|
|
82
|
+
color: inherit;
|
|
83
|
+
|
|
84
|
+
/* Visuele stijlen */
|
|
85
|
+
background: var(--dsn-popover-background-color);
|
|
86
|
+
border: var(--dsn-popover-border-width) solid var(--dsn-popover-border-color);
|
|
87
|
+
border-radius: var(--dsn-popover-border-radius);
|
|
88
|
+
box-shadow: var(--dsn-popover-box-shadow);
|
|
89
|
+
|
|
90
|
+
/* Grootte */
|
|
91
|
+
min-inline-size: var(--dsn-popover-min-width);
|
|
92
|
+
max-inline-size: min(var(--dsn-popover-max-width), calc(100vw - 1rem));
|
|
93
|
+
inline-size: max-content;
|
|
94
|
+
|
|
95
|
+
/*
|
|
96
|
+
* flex-direction altijd op de base class — ook tijdens de sluitanimatie.
|
|
97
|
+
* allow-discrete houdt display:flex vast, maar flex-direction valt anders
|
|
98
|
+
* terug naar de default 'row', wat het zichtbare verspringen veroorzaakt.
|
|
99
|
+
*/
|
|
100
|
+
flex-direction: column;
|
|
101
|
+
|
|
102
|
+
/* Animatietransitie (ook voor sluitanimatie via allow-discrete) */
|
|
103
|
+
opacity: 1;
|
|
104
|
+
transform: scale(1) translateY(0);
|
|
105
|
+
transition:
|
|
106
|
+
opacity var(--dsn-transition-duration-normal)
|
|
107
|
+
var(--dsn-transition-easing-default),
|
|
108
|
+
transform var(--dsn-transition-duration-normal)
|
|
109
|
+
var(--dsn-transition-easing-default),
|
|
110
|
+
display var(--dsn-transition-duration-normal)
|
|
111
|
+
var(--dsn-transition-easing-default) allow-discrete,
|
|
112
|
+
overlay var(--dsn-transition-duration-normal)
|
|
113
|
+
var(--dsn-transition-easing-default) allow-discrete;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/*
|
|
117
|
+
* Layout en positionering uitsluitend op :popover-open.
|
|
118
|
+
*
|
|
119
|
+
* - display: flex — UA-stylesheet's display:none geldt wanneer de selector wegvalt.
|
|
120
|
+
* De `display allow-discrete` transitie houdt display:flex tijdens de sluitanimatie,
|
|
121
|
+
* zodat de layout niet instort vóór opacity/transform klaar zijn.
|
|
122
|
+
* - position: fixed — géén position in de base class. De `overlay allow-discrete`
|
|
123
|
+
* transitie houdt het element in de top-layer (en daarmee position:fixed) tijdens
|
|
124
|
+
* de sluitanimatie. Zo verspringt de positie niet halverwege de animatie.
|
|
125
|
+
* - z-index — geëxpliciteerd zodat gestapelde popovers correct geordend zijn.
|
|
126
|
+
*/
|
|
127
|
+
.dsn-popover:popover-open {
|
|
128
|
+
display: flex;
|
|
129
|
+
flex-direction: column;
|
|
130
|
+
position: fixed;
|
|
131
|
+
z-index: var(--dsn-popover-z-index);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
/* Openingsanimatie: startwaarden voor de :popover-open staat */
|
|
135
|
+
@starting-style {
|
|
136
|
+
.dsn-popover:popover-open {
|
|
137
|
+
opacity: 0;
|
|
138
|
+
transform: scale(0.97) translateY(-0.25rem);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/* Animatie uitschakelen bij prefers-reduced-motion */
|
|
143
|
+
@media (prefers-reduced-motion: reduce) {
|
|
144
|
+
.dsn-popover {
|
|
145
|
+
transition: none;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
/* ===== Placement modifiers (CSS-only / wrapper-based positionering) ===== */
|
|
150
|
+
|
|
151
|
+
/*
|
|
152
|
+
* Voor CSS-only gebruik: de .dsn-popover-wrapper is relatief gepositioneerd en
|
|
153
|
+
* de popover gebruikt position: absolute (niet de Popover API top-layer).
|
|
154
|
+
* De React-implementatie gebruikt JS-positionering via inline styles (top/left).
|
|
155
|
+
*
|
|
156
|
+
* Let op: deze modifiers werken alleen zonder de Popover API (bijv. pure HTML demo).
|
|
157
|
+
* Met popover="auto" staat het element in de top-layer (position: fixed via JS).
|
|
158
|
+
*/
|
|
159
|
+
.dsn-popover-wrapper .dsn-popover--placement-bottom {
|
|
160
|
+
position: absolute;
|
|
161
|
+
inset-block-start: calc(100% + 0.25rem);
|
|
162
|
+
inset-inline-start: 0;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.dsn-popover-wrapper .dsn-popover--placement-top {
|
|
166
|
+
position: absolute;
|
|
167
|
+
inset-block-end: calc(100% + 0.25rem);
|
|
168
|
+
inset-inline-start: 0;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
.dsn-popover-wrapper .dsn-popover--placement-end {
|
|
172
|
+
position: absolute;
|
|
173
|
+
inset-block-start: 0;
|
|
174
|
+
inset-inline-start: calc(100% + 0.25rem);
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
.dsn-popover-wrapper .dsn-popover--placement-start {
|
|
178
|
+
position: absolute;
|
|
179
|
+
inset-block-start: 0;
|
|
180
|
+
inset-inline-end: calc(100% + 0.25rem);
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
/* ===== Header ===== */
|
|
184
|
+
|
|
185
|
+
.dsn-popover__header {
|
|
186
|
+
display: flex;
|
|
187
|
+
align-items: center;
|
|
188
|
+
gap: var(--dsn-space-inline-xl);
|
|
189
|
+
flex-shrink: 0;
|
|
190
|
+
|
|
191
|
+
padding-block-start: var(--dsn-popover-header-padding-block-start);
|
|
192
|
+
padding-block-end: var(--dsn-popover-header-padding-block-end);
|
|
193
|
+
padding-inline: var(--dsn-popover-header-padding-inline);
|
|
194
|
+
|
|
195
|
+
/* Scheidingslijn onder de header */
|
|
196
|
+
border-block-end: var(--dsn-popover-border-width) solid
|
|
197
|
+
var(--dsn-popover-border-color);
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
/* ===== Heading ===== */
|
|
201
|
+
|
|
202
|
+
.dsn-popover-heading {
|
|
203
|
+
flex: 1;
|
|
204
|
+
margin: 0;
|
|
205
|
+
|
|
206
|
+
font-family: var(--dsn-popover-heading-font-family);
|
|
207
|
+
font-weight: var(--dsn-popover-heading-font-weight);
|
|
208
|
+
font-size: var(--dsn-popover-heading-font-size);
|
|
209
|
+
line-height: var(--dsn-popover-heading-line-height);
|
|
210
|
+
color: var(--dsn-popover-heading-color);
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
/* ===== Body ===== */
|
|
214
|
+
|
|
215
|
+
.dsn-popover__body {
|
|
216
|
+
padding-block: var(--dsn-popover-body-padding-block);
|
|
217
|
+
padding-inline: var(--dsn-popover-body-padding-inline);
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
/* ===== Footer ===== */
|
|
221
|
+
|
|
222
|
+
.dsn-popover__footer {
|
|
223
|
+
flex-shrink: 0;
|
|
224
|
+
|
|
225
|
+
padding-block-start: var(--dsn-popover-footer-padding-block-start);
|
|
226
|
+
padding-block-end: var(--dsn-popover-footer-padding-block-end);
|
|
227
|
+
padding-inline: var(--dsn-popover-footer-padding-inline);
|
|
228
|
+
|
|
229
|
+
/* Scheidingslijn boven de footer */
|
|
230
|
+
border-block-start: var(--dsn-popover-border-width) solid
|
|
231
|
+
var(--dsn-popover-border-color);
|
|
232
|
+
}
|
|
233
|
+
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './Popover.css';
|
|
3
|
+
declare module 'react' {
|
|
4
|
+
interface HTMLAttributes<T> {
|
|
5
|
+
popover?: 'auto' | 'manual' | '' | undefined;
|
|
6
|
+
popoverTarget?: string | undefined;
|
|
7
|
+
popoverTargetAction?: 'hide' | 'show' | 'toggle' | undefined;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
declare global {
|
|
11
|
+
interface HTMLElement {
|
|
12
|
+
showPopover(): void;
|
|
13
|
+
hidePopover(): void;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
type Placement = 'top' | 'bottom' | 'start' | 'end';
|
|
17
|
+
export interface PopoverProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'> {
|
|
18
|
+
/**
|
|
19
|
+
* Bepaalt of de popover getoond wordt.
|
|
20
|
+
*/
|
|
21
|
+
isOpen: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Callback bij sluiten (Escape, klik buiten, sluitknop in header).
|
|
24
|
+
*/
|
|
25
|
+
onClose?: () => void;
|
|
26
|
+
/**
|
|
27
|
+
* Referentie naar het triggerelement voor positionering en focus-herstel.
|
|
28
|
+
*/
|
|
29
|
+
triggerRef: React.RefObject<HTMLElement>;
|
|
30
|
+
/**
|
|
31
|
+
* Gewenste plaatsing relatief aan het triggerelement.
|
|
32
|
+
* @default 'bottom'
|
|
33
|
+
*/
|
|
34
|
+
placement?: Placement;
|
|
35
|
+
/**
|
|
36
|
+
* Toegankelijke naam voor popovers zonder `PopoverHeader`/`PopoverHeading`.
|
|
37
|
+
* Gebruik `aria-labelledby` via context wanneer er wél een heading is.
|
|
38
|
+
*/
|
|
39
|
+
label?: string;
|
|
40
|
+
/**
|
|
41
|
+
* Subcomponenten: `PopoverHeader`, `PopoverBody`, `PopoverFooter`
|
|
42
|
+
*/
|
|
43
|
+
children?: React.ReactNode;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Popover component
|
|
47
|
+
* Lichtgewicht, contextgebonden overlay verankerd aan een triggerelement.
|
|
48
|
+
*
|
|
49
|
+
* Gebaseerd op de HTML Popover API (`popover="auto"`) voor ingebakken
|
|
50
|
+
* light-dismiss en top-layer gedrag. Positionering via JavaScript.
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```tsx
|
|
54
|
+
* const triggerRef = useRef<HTMLButtonElement>(null);
|
|
55
|
+
* const [isOpen, setIsOpen] = useState(false);
|
|
56
|
+
*
|
|
57
|
+
* <Button ref={triggerRef} onClick={() => setIsOpen(true)}>Opties</Button>
|
|
58
|
+
* <Popover isOpen={isOpen} onClose={() => setIsOpen(false)} triggerRef={triggerRef} label="Opties">
|
|
59
|
+
* <PopoverBody>
|
|
60
|
+
* <Menu>...</Menu>
|
|
61
|
+
* </PopoverBody>
|
|
62
|
+
* </Popover>
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
export declare const Popover: React.ForwardRefExoticComponent<PopoverProps & React.RefAttributes<HTMLDivElement>>;
|
|
66
|
+
export interface PopoverHeaderProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
67
|
+
/**
|
|
68
|
+
* Inhoud van de header — doorgaans een `PopoverHeading`.
|
|
69
|
+
* De sluitknop wordt automatisch geïnjecteerd.
|
|
70
|
+
*/
|
|
71
|
+
children?: React.ReactNode;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* PopoverHeader
|
|
75
|
+
* De headerstrook van de popover met heading en sluitknop.
|
|
76
|
+
*/
|
|
77
|
+
export declare const PopoverHeader: React.ForwardRefExoticComponent<PopoverHeaderProps & React.RefAttributes<HTMLDivElement>>;
|
|
78
|
+
export interface PopoverHeadingProps extends React.HTMLAttributes<HTMLHeadingElement> {
|
|
79
|
+
/**
|
|
80
|
+
* Semantisch heading-niveau. Kies op basis van documenthiërarchie.
|
|
81
|
+
* @default 2
|
|
82
|
+
*/
|
|
83
|
+
level?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
84
|
+
/**
|
|
85
|
+
* De zichtbare heading-tekst.
|
|
86
|
+
*/
|
|
87
|
+
children?: React.ReactNode;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* PopoverHeading
|
|
91
|
+
* De heading van de popover. ID wordt automatisch gegenereerd voor aria-labelledby.
|
|
92
|
+
*/
|
|
93
|
+
export declare const PopoverHeading: React.ForwardRefExoticComponent<PopoverHeadingProps & React.RefAttributes<HTMLHeadingElement>>;
|
|
94
|
+
export interface PopoverBodyProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
95
|
+
/**
|
|
96
|
+
* De hoofdinhoud van de popover — willekeurige slot-content.
|
|
97
|
+
*/
|
|
98
|
+
children?: React.ReactNode;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* PopoverBody
|
|
102
|
+
* De inhoudssectie van de popover.
|
|
103
|
+
*/
|
|
104
|
+
export declare const PopoverBody: React.ForwardRefExoticComponent<PopoverBodyProps & React.RefAttributes<HTMLDivElement>>;
|
|
105
|
+
export interface PopoverFooterProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
106
|
+
/**
|
|
107
|
+
* Actieknoppen of slotzin van de popover.
|
|
108
|
+
*/
|
|
109
|
+
children?: React.ReactNode;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* PopoverFooter
|
|
113
|
+
* De voettekst van de popover met actieknoppen.
|
|
114
|
+
*/
|
|
115
|
+
export declare const PopoverFooter: React.ForwardRefExoticComponent<PopoverFooterProps & React.RefAttributes<HTMLDivElement>>;
|
|
116
|
+
export {};
|
|
117
|
+
//# sourceMappingURL=Popover.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Popover.d.ts","sourceRoot":"","sources":["../../src/Popover/Popover.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,eAAe,CAAC;AAMvB,OAAO,QAAQ,OAAO,CAAC;IAErB,UAAU,cAAc,CAAC,CAAC;QACxB,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,EAAE,GAAG,SAAS,CAAC;QAC7C,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QACnC,mBAAmB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;KAC9D;CACF;AAMD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,WAAW;QACnB,WAAW,IAAI,IAAI,CAAC;QACpB,WAAW,IAAI,IAAI,CAAC;KACrB;CACF;AAMD,KAAK,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAC;AAwGpD,MAAM,WAAW,YAAa,SAAQ,IAAI,CACxC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EACpC,UAAU,CACX;IACC;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAErB;;OAEG;IACH,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAEzC;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,OAAO,qFA2HnB,CAAC;AAQF,MAAM,WAAW,kBAAmB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC9E;;;OAGG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,2FAwBxB,CAAC;AAQH,MAAM,WAAW,mBAAoB,SAAQ,KAAK,CAAC,cAAc,CAAC,kBAAkB,CAAC;IACnF;;;OAGG;IACH,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,gGAiBzB,CAAC;AAQH,MAAM,WAAW,gBAAiB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC5E;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,yFAYvB,CAAC;AAQF,MAAM,WAAW,kBAAmB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC9E;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,2FAaxB,CAAC"}
|
|
@@ -0,0 +1,219 @@
|
|
|
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 { Button } from '../Button';
|
|
5
|
+
import { Icon } from '../Icon';
|
|
6
|
+
import './Popover.css';
|
|
7
|
+
// =============================================================================
|
|
8
|
+
// Positioneringshelper
|
|
9
|
+
// =============================================================================
|
|
10
|
+
const GAP = 4; // px afstand tussen trigger en popover
|
|
11
|
+
function positionPopover(popover, trigger, placement) {
|
|
12
|
+
const triggerRect = trigger.getBoundingClientRect();
|
|
13
|
+
// offsetWidth/offsetHeight — onaangepast door CSS transforms (zoals @starting-style scale).
|
|
14
|
+
// getBoundingClientRect geeft de getransformeerde afmetingen, wat leidt tot onjuiste clamping.
|
|
15
|
+
const popoverWidth = popover.offsetWidth;
|
|
16
|
+
const popoverHeight = popover.offsetHeight;
|
|
17
|
+
const popoverRect = { width: popoverWidth, height: popoverHeight };
|
|
18
|
+
const isRTL = document.documentElement.dir === 'rtl' ||
|
|
19
|
+
getComputedStyle(trigger).direction === 'rtl';
|
|
20
|
+
let top;
|
|
21
|
+
let left;
|
|
22
|
+
switch (placement) {
|
|
23
|
+
case 'bottom':
|
|
24
|
+
top = triggerRect.bottom + GAP;
|
|
25
|
+
left = isRTL ? triggerRect.right - popoverRect.width : triggerRect.left;
|
|
26
|
+
break;
|
|
27
|
+
case 'top':
|
|
28
|
+
top = triggerRect.top - popoverRect.height - GAP;
|
|
29
|
+
left = isRTL ? triggerRect.right - popoverRect.width : triggerRect.left;
|
|
30
|
+
break;
|
|
31
|
+
case 'end':
|
|
32
|
+
top = triggerRect.top;
|
|
33
|
+
left = isRTL
|
|
34
|
+
? triggerRect.left - popoverRect.width - GAP
|
|
35
|
+
: triggerRect.right + GAP;
|
|
36
|
+
break;
|
|
37
|
+
case 'start':
|
|
38
|
+
top = triggerRect.top;
|
|
39
|
+
left = isRTL
|
|
40
|
+
? triggerRect.right + GAP
|
|
41
|
+
: triggerRect.left - popoverRect.width - GAP;
|
|
42
|
+
break;
|
|
43
|
+
default:
|
|
44
|
+
top = triggerRect.bottom + GAP;
|
|
45
|
+
left = triggerRect.left;
|
|
46
|
+
}
|
|
47
|
+
// Klamp binnen het viewport (8px marge)
|
|
48
|
+
const margin = 8;
|
|
49
|
+
left = Math.max(margin, Math.min(left, window.innerWidth - popoverRect.width - margin));
|
|
50
|
+
top = Math.max(margin, Math.min(top, window.innerHeight - popoverRect.height - margin));
|
|
51
|
+
popover.style.top = `${top}px`;
|
|
52
|
+
popover.style.left = `${left}px`;
|
|
53
|
+
popover.style.right = 'auto';
|
|
54
|
+
popover.style.bottom = 'auto';
|
|
55
|
+
}
|
|
56
|
+
// Zet focus op het eerste interactieve element in de popover
|
|
57
|
+
function focusFirstInteractive(container) {
|
|
58
|
+
const selector = [
|
|
59
|
+
'button:not(:disabled)',
|
|
60
|
+
'a[href]',
|
|
61
|
+
'input:not(:disabled)',
|
|
62
|
+
'select:not(:disabled)',
|
|
63
|
+
'textarea:not(:disabled)',
|
|
64
|
+
'[tabindex]:not([tabindex="-1"])',
|
|
65
|
+
].join(', ');
|
|
66
|
+
const first = container.querySelector(selector);
|
|
67
|
+
if (first) {
|
|
68
|
+
first.focus();
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
container.focus();
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
const PopoverContext = React.createContext({
|
|
75
|
+
headingId: '',
|
|
76
|
+
});
|
|
77
|
+
/**
|
|
78
|
+
* Popover component
|
|
79
|
+
* Lichtgewicht, contextgebonden overlay verankerd aan een triggerelement.
|
|
80
|
+
*
|
|
81
|
+
* Gebaseerd op de HTML Popover API (`popover="auto"`) voor ingebakken
|
|
82
|
+
* light-dismiss en top-layer gedrag. Positionering via JavaScript.
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* ```tsx
|
|
86
|
+
* const triggerRef = useRef<HTMLButtonElement>(null);
|
|
87
|
+
* const [isOpen, setIsOpen] = useState(false);
|
|
88
|
+
*
|
|
89
|
+
* <Button ref={triggerRef} onClick={() => setIsOpen(true)}>Opties</Button>
|
|
90
|
+
* <Popover isOpen={isOpen} onClose={() => setIsOpen(false)} triggerRef={triggerRef} label="Opties">
|
|
91
|
+
* <PopoverBody>
|
|
92
|
+
* <Menu>...</Menu>
|
|
93
|
+
* </PopoverBody>
|
|
94
|
+
* </Popover>
|
|
95
|
+
* ```
|
|
96
|
+
*/
|
|
97
|
+
export const Popover = React.forwardRef(({ className, isOpen, onClose, triggerRef, placement = 'bottom', label, children, ...props }, ref) => {
|
|
98
|
+
const internalRef = React.useRef(null);
|
|
99
|
+
const popoverRef = ref ?? internalRef;
|
|
100
|
+
const headingId = React.useId();
|
|
101
|
+
// Toon/verberg popover via de Popover API
|
|
102
|
+
React.useEffect(() => {
|
|
103
|
+
const el = popoverRef.current;
|
|
104
|
+
if (!el)
|
|
105
|
+
return;
|
|
106
|
+
if (isOpen) {
|
|
107
|
+
el.showPopover();
|
|
108
|
+
const trigger = triggerRef.current;
|
|
109
|
+
if (trigger) {
|
|
110
|
+
positionPopover(el, trigger, placement);
|
|
111
|
+
}
|
|
112
|
+
focusFirstInteractive(el);
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
// hidePopover gooit een fout als de popover al gesloten is
|
|
116
|
+
try {
|
|
117
|
+
el.hidePopover();
|
|
118
|
+
}
|
|
119
|
+
catch {
|
|
120
|
+
// popover was al gesloten — geen actie nodig
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}, [isOpen, placement, triggerRef, popoverRef]);
|
|
124
|
+
// Synchroniseer aria-expanded op het triggerelement
|
|
125
|
+
React.useEffect(() => {
|
|
126
|
+
const trigger = triggerRef.current;
|
|
127
|
+
if (!trigger)
|
|
128
|
+
return;
|
|
129
|
+
trigger.setAttribute('aria-expanded', isOpen ? 'true' : 'false');
|
|
130
|
+
return () => {
|
|
131
|
+
trigger.setAttribute('aria-expanded', 'false');
|
|
132
|
+
};
|
|
133
|
+
}, [isOpen, triggerRef]);
|
|
134
|
+
// Verwerk het toggle-event van de Popover API (Escape / klik buiten binnen hetzelfde document)
|
|
135
|
+
// onToggle is niet beschikbaar als JSX-prop op div in React 18 — gebruik addEventListener.
|
|
136
|
+
// Gebruik een ref voor onClose zodat de listener stabiel blijft en nooit stale is.
|
|
137
|
+
const onCloseRef = React.useRef(onClose);
|
|
138
|
+
onCloseRef.current = onClose;
|
|
139
|
+
React.useEffect(() => {
|
|
140
|
+
const el = popoverRef.current;
|
|
141
|
+
if (!el)
|
|
142
|
+
return;
|
|
143
|
+
const handleToggle = (event) => {
|
|
144
|
+
const toggleEvent = event;
|
|
145
|
+
if (toggleEvent.newState === 'closed') {
|
|
146
|
+
onCloseRef.current?.();
|
|
147
|
+
triggerRef.current?.focus();
|
|
148
|
+
}
|
|
149
|
+
};
|
|
150
|
+
el.addEventListener('toggle', handleToggle);
|
|
151
|
+
return () => {
|
|
152
|
+
el.removeEventListener('toggle', handleToggle);
|
|
153
|
+
};
|
|
154
|
+
}, [triggerRef, popoverRef]);
|
|
155
|
+
// Fallback light-dismiss via pointerdown — vangt klikken buiten het popover op
|
|
156
|
+
// in contexten waar de Popover API's native light-dismiss niet bereikbaar is
|
|
157
|
+
// (bijv. iframe-grenzen, of oudere browsers zonder Popover API).
|
|
158
|
+
React.useEffect(() => {
|
|
159
|
+
if (!isOpen)
|
|
160
|
+
return;
|
|
161
|
+
const el = popoverRef.current;
|
|
162
|
+
if (!el)
|
|
163
|
+
return;
|
|
164
|
+
const handlePointerDown = (event) => {
|
|
165
|
+
const target = event.target;
|
|
166
|
+
// Sluit niet als er op de popover zelf of het triggerelement geklikt wordt
|
|
167
|
+
if (el.contains(target) || triggerRef.current?.contains(target))
|
|
168
|
+
return;
|
|
169
|
+
onCloseRef.current?.();
|
|
170
|
+
triggerRef.current?.focus();
|
|
171
|
+
};
|
|
172
|
+
document.addEventListener('pointerdown', handlePointerDown);
|
|
173
|
+
return () => {
|
|
174
|
+
document.removeEventListener('pointerdown', handlePointerDown);
|
|
175
|
+
};
|
|
176
|
+
}, [isOpen, triggerRef, popoverRef]);
|
|
177
|
+
const classes = classNames('dsn-popover', `dsn-popover--placement-${placement}`, className);
|
|
178
|
+
const ariaProps = label
|
|
179
|
+
? { 'aria-label': label }
|
|
180
|
+
: { 'aria-labelledby': headingId };
|
|
181
|
+
return (_jsx(PopoverContext.Provider, { value: { headingId, onClose }, children: _jsx("div", { ref: popoverRef, popover: "auto", className: classes, role: "dialog", "aria-modal": "false", tabIndex: -1, ...ariaProps, ...props, children: children }) }));
|
|
182
|
+
});
|
|
183
|
+
Popover.displayName = 'Popover';
|
|
184
|
+
/**
|
|
185
|
+
* PopoverHeader
|
|
186
|
+
* De headerstrook van de popover met heading en sluitknop.
|
|
187
|
+
*/
|
|
188
|
+
export const PopoverHeader = React.forwardRef(({ className, children, ...props }, ref) => {
|
|
189
|
+
const { onClose } = React.useContext(PopoverContext);
|
|
190
|
+
return (_jsxs("div", { ref: ref, className: classNames('dsn-popover__header', className), ...props, children: [children, _jsx(Button, { variant: "subtle", size: "small", iconOnly: true, onClick: onClose, iconStart: _jsx(Icon, { name: "x", "aria-hidden": true }), children: "Sluiten" })] }));
|
|
191
|
+
});
|
|
192
|
+
PopoverHeader.displayName = 'PopoverHeader';
|
|
193
|
+
/**
|
|
194
|
+
* PopoverHeading
|
|
195
|
+
* De heading van de popover. ID wordt automatisch gegenereerd voor aria-labelledby.
|
|
196
|
+
*/
|
|
197
|
+
export const PopoverHeading = React.forwardRef(({ className, level = 2, children, ...props }, ref) => {
|
|
198
|
+
const { headingId } = React.useContext(PopoverContext);
|
|
199
|
+
const Tag = `h${level}`;
|
|
200
|
+
return (_jsx(Tag, { ref: ref, id: headingId, className: classNames('dsn-popover-heading', className), ...props, children: children }));
|
|
201
|
+
});
|
|
202
|
+
PopoverHeading.displayName = 'PopoverHeading';
|
|
203
|
+
/**
|
|
204
|
+
* PopoverBody
|
|
205
|
+
* De inhoudssectie van de popover.
|
|
206
|
+
*/
|
|
207
|
+
export const PopoverBody = React.forwardRef(({ className, children, ...props }, ref) => {
|
|
208
|
+
return (_jsx("div", { ref: ref, className: classNames('dsn-popover__body', className), ...props, children: children }));
|
|
209
|
+
});
|
|
210
|
+
PopoverBody.displayName = 'PopoverBody';
|
|
211
|
+
/**
|
|
212
|
+
* PopoverFooter
|
|
213
|
+
* De voettekst van de popover met actieknoppen.
|
|
214
|
+
*/
|
|
215
|
+
export const PopoverFooter = React.forwardRef(({ className, children, ...props }, ref) => {
|
|
216
|
+
return (_jsx("div", { ref: ref, className: classNames('dsn-popover__footer', className), ...props, children: children }));
|
|
217
|
+
});
|
|
218
|
+
PopoverFooter.displayName = 'PopoverFooter';
|
|
219
|
+
//# sourceMappingURL=Popover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Popover.js","sourceRoot":"","sources":["../../src/Popover/Popover.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Popover/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,aAAa,EACb,cAAc,EACd,WAAW,EACX,aAAa,GACd,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Popover/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,aAAa,EACb,cAAc,EACd,WAAW,EACX,aAAa,GACd,MAAM,WAAW,CAAC"}
|