@navikt/ds-react 0.7.7 → 0.8.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/cjs/accordion/Accordion.js +10 -26
- package/cjs/accordion/AccordionContent.js +60 -0
- package/cjs/accordion/AccordionHeader.js +66 -0
- package/cjs/accordion/AccordionItem.js +62 -0
- package/cjs/accordion/index.js +6 -2
- package/cjs/accordion-menu/AccordionMenu.js +5 -1
- package/cjs/accordion-menu/AccordionMenuCollapsable.js +3 -3
- package/cjs/accordion-menu/AccordionMenuItem.js +4 -4
- package/cjs/accordion-menu/index.js +5 -5
- package/cjs/alert/Alert.js +18 -12
- package/cjs/alert/AlertContent.js +50 -0
- package/cjs/alert/AlertTitle.js +49 -0
- package/cjs/alert/index.js +6 -2
- package/cjs/button/Button.js +5 -3
- package/cjs/button/index.js +6 -2
- package/cjs/card/MicroCard.js +3 -3
- package/cjs/card/index.js +6 -2
- package/cjs/copy-to-clipboard/CopyToClipboard.js +9 -8
- package/cjs/copy-to-clipboard/index.js +6 -2
- package/cjs/form/ConfirmationPanel.js +2 -2
- package/cjs/form/ErrorMessage.js +1 -1
- package/cjs/form/Fieldset/Fieldset.js +2 -2
- package/cjs/form/Fieldset/index.js +5 -1
- package/cjs/form/Fieldset/useFieldset.js +2 -1
- package/cjs/form/Select.js +3 -3
- package/cjs/form/TextField.js +2 -2
- package/cjs/form/Textarea.js +5 -4
- package/cjs/form/checkbox/Checkbox.js +2 -2
- package/cjs/form/checkbox/CheckboxGroup.js +2 -2
- package/cjs/form/checkbox/index.js +6 -2
- package/cjs/form/checkbox/useCheckbox.js +2 -1
- package/cjs/form/error-summary/ErrorSummary.js +4 -4
- package/cjs/form/error-summary/ErrorSummaryItem.js +2 -2
- package/cjs/form/error-summary/index.js +6 -2
- package/cjs/form/index.js +9 -5
- package/cjs/form/radio/Radio.js +2 -2
- package/cjs/form/radio/RadioGroup.js +2 -2
- package/cjs/form/radio/index.js +6 -2
- package/cjs/form/radio/useRadio.js +2 -1
- package/cjs/form/search-field/SearchField.js +3 -3
- package/cjs/form/search-field/SearchFieldButton.js +2 -2
- package/cjs/form/search-field/SearchFieldClearButton.js +3 -3
- package/cjs/form/search-field/SearchFieldInput.js +2 -2
- package/cjs/form/search-field/index.js +8 -4
- package/cjs/form/useFormField.js +3 -2
- package/cjs/grid/Cell.js +1 -1
- package/cjs/{content-container → grid}/ContentContainer.js +3 -3
- package/cjs/grid/Grid.js +1 -1
- package/cjs/grid/index.js +10 -3
- package/cjs/guide-panel/Guide.js +44 -0
- package/cjs/guide-panel/GuidePanel.js +47 -0
- package/cjs/guide-panel/Illustration.js +24 -0
- package/cjs/guide-panel/index.js +19 -0
- package/cjs/guide-panel/package.json +6 -0
- package/cjs/help-text/HelpText.js +64 -0
- package/cjs/help-text/index.js +19 -0
- package/cjs/help-text/package.json +6 -0
- package/cjs/index.js +6 -4
- package/cjs/internal-header/InternalHeader.js +1 -1
- package/cjs/internal-header/InternalHeaderTitle.js +1 -1
- package/cjs/internal-header/InternalHeaderUser.js +1 -1
- package/cjs/internal-header/index.js +8 -4
- package/cjs/link/Link.js +3 -3
- package/cjs/link/index.js +6 -2
- package/cjs/link-panel/LinkPanel.js +10 -10
- package/cjs/link-panel/LinkPanelDescription.js +43 -0
- package/cjs/link-panel/LinkPanelTitle.js +42 -0
- package/cjs/link-panel/index.js +6 -2
- package/cjs/loader/Loader.js +4 -7
- package/cjs/loader/index.js +6 -2
- package/cjs/modal/Modal.js +6 -4
- package/cjs/modal/ModalContent.js +42 -0
- package/cjs/modal/index.js +6 -2
- package/cjs/{header/Header.js → page-header/PageHeader.js} +10 -9
- package/cjs/page-header/index.js +19 -0
- package/cjs/page-header/package.json +6 -0
- package/cjs/panel/Panel.js +2 -2
- package/cjs/panel/index.js +6 -2
- package/cjs/popover/Popover.js +13 -4
- package/cjs/popover/PopoverContent.js +42 -0
- package/cjs/popover/index.js +6 -2
- package/cjs/speech-bubble/Bubble.js +1 -1
- package/cjs/speech-bubble/SpeechBubble.js +1 -1
- package/cjs/speech-bubble/index.js +7 -3
- package/cjs/tag/Tag.js +5 -3
- package/cjs/tag/index.js +6 -2
- package/cjs/typography/BodyLong.js +3 -3
- package/cjs/typography/BodyShort.js +3 -3
- package/cjs/typography/Detail.js +3 -3
- package/cjs/typography/{Title.js → Heading.js} +8 -8
- package/cjs/typography/Ingress.js +2 -2
- package/cjs/typography/Label.js +3 -3
- package/cjs/typography/index.js +11 -7
- package/cjs/util/index.js +3 -2
- package/cjs/util/useId.js +5 -4
- package/esm/accordion/Accordion.d.ts +11 -22
- package/esm/accordion/Accordion.js +9 -25
- package/esm/accordion/Accordion.js.map +1 -1
- package/esm/accordion/AccordionContent.d.ts +10 -0
- package/esm/accordion/AccordionContent.js +37 -0
- package/esm/accordion/AccordionContent.js.map +1 -0
- package/esm/accordion/AccordionHeader.d.ts +10 -0
- package/esm/accordion/AccordionHeader.js +43 -0
- package/esm/accordion/AccordionHeader.js.map +1 -0
- package/esm/accordion/AccordionItem.d.ts +35 -0
- package/esm/accordion/AccordionItem.js +38 -0
- package/esm/accordion/AccordionItem.js.map +1 -0
- package/esm/accordion-menu/AccordionMenu.d.ts +9 -3
- package/esm/accordion-menu/AccordionMenu.js +4 -0
- package/esm/accordion-menu/AccordionMenu.js.map +1 -1
- package/esm/accordion-menu/AccordionMenuCollapsable.d.ts +3 -2
- package/esm/accordion-menu/AccordionMenuCollapsable.js +2 -2
- package/esm/accordion-menu/AccordionMenuCollapsable.js.map +1 -1
- package/esm/accordion-menu/AccordionMenuItem.d.ts +11 -10
- package/esm/accordion-menu/AccordionMenuItem.js +3 -3
- package/esm/accordion-menu/AccordionMenuItem.js.map +1 -1
- package/esm/accordion-menu/index.d.ts +3 -3
- package/esm/accordion-menu/index.js +0 -2
- package/esm/accordion-menu/index.js.map +1 -1
- package/esm/alert/Alert.d.ts +26 -4
- package/esm/alert/Alert.js +17 -12
- package/esm/alert/Alert.js.map +1 -1
- package/esm/alert/AlertContent.d.ts +10 -0
- package/esm/alert/AlertContent.js +27 -0
- package/esm/alert/AlertContent.js.map +1 -0
- package/esm/alert/AlertTitle.d.ts +10 -0
- package/esm/alert/AlertTitle.js +26 -0
- package/esm/alert/AlertTitle.js.map +1 -0
- package/esm/button/Button.d.ts +5 -4
- package/esm/button/Button.js +4 -2
- package/esm/button/Button.js.map +1 -1
- package/esm/card/MicroCard.d.ts +7 -7
- package/esm/card/MicroCard.js +2 -2
- package/esm/card/MicroCard.js.map +1 -1
- package/esm/copy-to-clipboard/CopyToClipboard.d.ts +9 -7
- package/esm/copy-to-clipboard/CopyToClipboard.js +10 -9
- package/esm/copy-to-clipboard/CopyToClipboard.js.map +1 -1
- package/esm/form/ConfirmationPanel.js +1 -1
- package/esm/form/ConfirmationPanel.js.map +1 -1
- package/esm/form/ErrorMessage.d.ts +1 -0
- package/esm/form/ErrorMessage.js +1 -1
- package/esm/form/ErrorMessage.js.map +1 -1
- package/esm/form/Fieldset/Fieldset.d.ts +1 -1
- package/esm/form/Fieldset/Fieldset.js +1 -1
- package/esm/form/Fieldset/Fieldset.js.map +1 -1
- package/esm/form/Fieldset/useFieldset.d.ts +1 -1
- package/esm/form/Select.js +2 -2
- package/esm/form/Select.js.map +1 -1
- package/esm/form/TextField.js +1 -1
- package/esm/form/TextField.js.map +1 -1
- package/esm/form/Textarea.js +2 -2
- package/esm/form/Textarea.js.map +1 -1
- package/esm/form/checkbox/Checkbox.js +1 -1
- package/esm/form/checkbox/Checkbox.js.map +1 -1
- package/esm/form/checkbox/CheckboxGroup.js +1 -1
- package/esm/form/checkbox/CheckboxGroup.js.map +1 -1
- package/esm/form/checkbox/useCheckbox.d.ts +1 -1
- package/esm/form/checkbox/useCheckbox.js +2 -1
- package/esm/form/checkbox/useCheckbox.js.map +1 -1
- package/esm/form/error-summary/ErrorSummary.d.ts +2 -2
- package/esm/form/error-summary/ErrorSummary.js +4 -4
- package/esm/form/error-summary/ErrorSummary.js.map +1 -1
- package/esm/form/error-summary/ErrorSummaryItem.d.ts +6 -9
- package/esm/form/error-summary/ErrorSummaryItem.js +1 -1
- package/esm/form/error-summary/ErrorSummaryItem.js.map +1 -1
- package/esm/form/radio/Radio.js +1 -1
- package/esm/form/radio/Radio.js.map +1 -1
- package/esm/form/radio/RadioGroup.js +1 -1
- package/esm/form/radio/RadioGroup.js.map +1 -1
- package/esm/form/radio/useRadio.d.ts +1 -1
- package/esm/form/radio/useRadio.js.map +1 -1
- package/esm/form/search-field/SearchField.d.ts +1 -1
- package/esm/form/search-field/SearchField.js +2 -2
- package/esm/form/search-field/SearchField.js.map +1 -1
- package/esm/form/search-field/SearchFieldButton.d.ts +2 -2
- package/esm/form/search-field/SearchFieldButton.js +1 -1
- package/esm/form/search-field/SearchFieldButton.js.map +1 -1
- package/esm/form/search-field/SearchFieldClearButton.d.ts +2 -2
- package/esm/form/search-field/SearchFieldClearButton.js +2 -2
- package/esm/form/search-field/SearchFieldClearButton.js.map +1 -1
- package/esm/form/search-field/SearchFieldInput.js +1 -1
- package/esm/form/search-field/SearchFieldInput.js.map +1 -1
- package/esm/form/useFormField.d.ts +2 -2
- package/esm/form/useFormField.js +1 -1
- package/esm/form/useFormField.js.map +1 -1
- package/esm/{content-container → grid}/ContentContainer.d.ts +1 -1
- package/esm/{content-container → grid}/ContentContainer.js +2 -2
- package/esm/grid/ContentContainer.js.map +1 -0
- package/esm/grid/index.d.ts +2 -0
- package/esm/grid/index.js +2 -0
- package/esm/grid/index.js.map +1 -1
- package/esm/guide-panel/Guide.d.ts +14 -0
- package/esm/guide-panel/Guide.js +21 -0
- package/esm/guide-panel/Guide.js.map +1 -0
- package/esm/guide-panel/GuidePanel.d.ts +18 -0
- package/esm/guide-panel/GuidePanel.js +24 -0
- package/esm/guide-panel/GuidePanel.js.map +1 -0
- package/esm/guide-panel/Illustration.d.ts +2 -0
- package/esm/guide-panel/Illustration.js +18 -0
- package/esm/guide-panel/Illustration.js.map +1 -0
- package/esm/guide-panel/index.d.ts +3 -0
- package/esm/guide-panel/index.js +3 -0
- package/esm/guide-panel/index.js.map +1 -0
- package/esm/help-text/HelpText.d.ts +15 -0
- package/esm/help-text/HelpText.js +41 -0
- package/esm/help-text/HelpText.js.map +1 -0
- package/esm/help-text/index.d.ts +2 -0
- package/esm/help-text/index.js +3 -0
- package/esm/help-text/index.js.map +1 -0
- package/esm/index.d.ts +4 -3
- package/esm/index.js +5 -3
- package/esm/index.js.map +1 -1
- package/esm/link/Link.d.ts +2 -1
- package/esm/link/Link.js +2 -2
- package/esm/link/Link.js.map +1 -1
- package/esm/link-panel/LinkPanel.d.ts +16 -21
- package/esm/link-panel/LinkPanel.js +9 -8
- package/esm/link-panel/LinkPanel.js.map +1 -1
- package/esm/link-panel/LinkPanelDescription.d.ts +7 -0
- package/esm/link-panel/LinkPanelDescription.js +19 -0
- package/esm/link-panel/LinkPanelDescription.js.map +1 -0
- package/esm/link-panel/LinkPanelTitle.d.ts +8 -0
- package/esm/link-panel/LinkPanelTitle.js +18 -0
- package/esm/link-panel/LinkPanelTitle.js.map +1 -0
- package/esm/loader/Loader.d.ts +3 -3
- package/esm/loader/Loader.js +3 -6
- package/esm/loader/Loader.js.map +1 -1
- package/esm/modal/Modal.d.ts +6 -6
- package/esm/modal/Modal.js +5 -3
- package/esm/modal/Modal.js.map +1 -1
- package/esm/modal/ModalContent.d.ts +10 -0
- package/esm/modal/ModalContent.js +19 -0
- package/esm/modal/ModalContent.js.map +1 -0
- package/esm/modal/index.d.ts +1 -0
- package/esm/modal/index.js.map +1 -1
- package/esm/page-header/PageHeader.d.ts +27 -0
- package/esm/page-header/PageHeader.js +24 -0
- package/esm/page-header/PageHeader.js.map +1 -0
- package/esm/page-header/index.d.ts +2 -0
- package/esm/page-header/index.js +3 -0
- package/esm/page-header/index.js.map +1 -0
- package/esm/panel/Panel.d.ts +12 -15
- package/esm/panel/Panel.js +1 -1
- package/esm/panel/Panel.js.map +1 -1
- package/esm/popover/Popover.d.ts +13 -8
- package/esm/popover/Popover.js +12 -3
- package/esm/popover/Popover.js.map +1 -1
- package/esm/popover/PopoverContent.d.ts +10 -0
- package/esm/popover/PopoverContent.js +19 -0
- package/esm/popover/PopoverContent.js.map +1 -0
- package/esm/popover/index.d.ts +1 -0
- package/esm/speech-bubble/Bubble.d.ts +1 -1
- package/esm/tag/Tag.d.ts +7 -1
- package/esm/tag/Tag.js +4 -2
- package/esm/tag/Tag.js.map +1 -1
- package/esm/typography/BodyLong.d.ts +16 -19
- package/esm/typography/BodyLong.js +2 -2
- package/esm/typography/BodyLong.js.map +1 -1
- package/esm/typography/BodyShort.d.ts +16 -19
- package/esm/typography/BodyShort.js +2 -2
- package/esm/typography/BodyShort.js.map +1 -1
- package/esm/typography/Detail.d.ts +16 -19
- package/esm/typography/Detail.js +2 -2
- package/esm/typography/Detail.js.map +1 -1
- package/esm/typography/Heading.d.ts +24 -0
- package/esm/typography/{Title.js → Heading.js} +8 -8
- package/esm/typography/Heading.js.map +1 -0
- package/esm/typography/Ingress.d.ts +11 -14
- package/esm/typography/Ingress.js +1 -1
- package/esm/typography/Ingress.js.map +1 -1
- package/esm/typography/Label.d.ts +16 -19
- package/esm/typography/Label.js +2 -2
- package/esm/typography/Label.js.map +1 -1
- package/esm/typography/index.d.ts +1 -1
- package/esm/typography/index.js +1 -1
- package/esm/typography/index.js.map +1 -1
- package/esm/util/OverridableComponent.d.ts +6 -25
- package/esm/util/OverridableComponent.js +1 -0
- package/esm/util/useId.d.ts +2 -0
- package/esm/util/useId.js +1 -1
- package/esm/util/useId.js.map +1 -1
- package/package.json +6 -3
- package/src/accordion/Accordion.tsx +23 -98
- package/src/accordion/AccordionContent.tsx +59 -0
- package/src/accordion/AccordionHeader.tsx +84 -0
- package/src/accordion/AccordionItem.tsx +93 -0
- package/src/accordion/stories/accordion.stories.mdx +55 -16
- package/src/accordion/stories/accordion.stories.tsx +76 -43
- package/src/accordion-menu/AccordionMenu.tsx +18 -3
- package/src/accordion-menu/AccordionMenuCollapsable.tsx +32 -29
- package/src/accordion-menu/AccordionMenuItem.tsx +17 -18
- package/src/accordion-menu/index.ts +3 -6
- package/src/accordion-menu/stories/accordion-menu.stories.mdx +34 -38
- package/src/accordion-menu/stories/accordion-menu.stories.tsx +60 -79
- package/src/alert/Alert.tsx +66 -43
- package/src/alert/AlertContent.tsx +41 -0
- package/src/alert/AlertTitle.tsx +41 -0
- package/src/alert/stories/alert.stories.mdx +48 -7
- package/src/alert/stories/alert.stories.tsx +95 -11
- package/src/button/Button.tsx +24 -11
- package/src/button/stories/button.stories.mdx +13 -14
- package/src/button/stories/button.stories.tsx +18 -14
- package/src/card/MicroCard.tsx +25 -23
- package/src/copy-to-clipboard/CopyToClipboard.tsx +34 -30
- package/src/copy-to-clipboard/stories/copy-to-clipboard.stories.tsx +9 -10
- package/src/copy-to-clipboard/stories/copy.stories.mdx +24 -14
- package/src/form/ConfirmationPanel.tsx +1 -1
- package/src/form/ErrorMessage.tsx +2 -2
- package/src/form/Fieldset/Fieldset.tsx +2 -2
- package/src/form/Select.tsx +2 -2
- package/src/form/TextField.tsx +1 -1
- package/src/form/Textarea.tsx +2 -2
- package/src/form/checkbox/Checkbox.tsx +1 -1
- package/src/form/checkbox/CheckboxGroup.tsx +1 -1
- package/src/form/checkbox/stories/checkbox.stories.mdx +7 -3
- package/src/form/checkbox/stories/checkbox.stories.tsx +1 -1
- package/src/form/error-summary/ErrorSummary.tsx +18 -17
- package/src/form/error-summary/ErrorSummaryItem.tsx +11 -11
- package/src/form/error-summary/stories/error-summary.stories.tsx +2 -2
- package/src/form/radio/Radio.tsx +1 -1
- package/src/form/radio/RadioGroup.tsx +1 -1
- package/src/form/radio/stories/radio.stories.mdx +11 -3
- package/src/form/radio/stories/radio.stories.tsx +1 -1
- package/src/form/search-field/SearchField.tsx +3 -3
- package/src/form/search-field/SearchFieldButton.tsx +3 -3
- package/src/form/search-field/SearchFieldClearButton.tsx +5 -5
- package/src/form/search-field/SearchFieldInput.tsx +3 -2
- package/src/form/search-field/stories/search-field-example.tsx +9 -10
- package/src/form/search-field/stories/search-field.stories.mdx +23 -68
- package/src/form/search-field/stories/search-field.stories.tsx +48 -15
- package/src/form/stories/confirmation-panel.stories.mdx +2 -2
- package/src/form/stories/confirmation-panel.stories.tsx +3 -3
- package/src/form/stories/fieldset.stories.mdx +2 -2
- package/src/form/stories/fieldset.stories.tsx +1 -1
- package/src/form/stories/live-examples.tsx +2 -2
- package/src/form/stories/select.stories.mdx +2 -2
- package/src/form/stories/select.stories.tsx +1 -1
- package/src/form/stories/text-field.stories.mdx +2 -2
- package/src/form/stories/text-field.stories.tsx +1 -1
- package/src/form/stories/textarea.stories.mdx +2 -2
- package/src/form/stories/textarea.stories.tsx +1 -1
- package/src/form/useFormField.ts +2 -2
- package/src/{content-container → grid}/ContentContainer.tsx +3 -5
- package/src/grid/index.ts +2 -0
- package/src/grid/stories/grid.stories.mdx +24 -5
- package/src/grid/stories/grid.stories.tsx +10 -2
- package/src/grid/stories/styles.css +16 -0
- package/src/guide-panel/Guide.tsx +34 -0
- package/src/guide-panel/GuidePanel.tsx +39 -0
- package/src/guide-panel/Illustration.tsx +99 -0
- package/src/guide-panel/index.ts +3 -0
- package/src/guide-panel/stories/example.css +13 -0
- package/src/guide-panel/stories/guidepanel.stories.mdx +81 -0
- package/src/guide-panel/stories/guidepanel.stories.tsx +68 -0
- package/src/help-text/HelpText.tsx +78 -0
- package/src/help-text/index.ts +2 -0
- package/src/help-text/stories/help-text.stories.mdx +35 -0
- package/src/help-text/stories/help-text.stories.tsx +32 -0
- package/src/index.ts +6 -3
- package/src/link/Link.tsx +7 -14
- package/src/link/stories/link.stories.tsx +1 -1
- package/src/link-panel/LinkPanel.tsx +32 -44
- package/src/link-panel/LinkPanelDescription.tsx +23 -0
- package/src/link-panel/LinkPanelTitle.tsx +27 -0
- package/src/link-panel/stories/link-panel.stories.mdx +52 -23
- package/src/link-panel/stories/link-panel.stories.tsx +43 -34
- package/src/loader/Loader.tsx +13 -10
- package/src/loader/stories/loader.stories.mdx +27 -28
- package/src/loader/stories/loader.stories.tsx +31 -91
- package/src/modal/Modal.tsx +16 -14
- package/src/modal/ModalContent.tsx +26 -0
- package/src/modal/index.ts +1 -0
- package/src/modal/stories/modal.stories.mdx +10 -1
- package/src/modal/stories/modal.stories.tsx +20 -16
- package/src/page-header/PageHeader.tsx +76 -0
- package/src/page-header/index.ts +2 -0
- package/src/{header → page-header}/stories/header.stories.mdx +31 -24
- package/src/{header → page-header}/stories/header.stories.tsx +27 -27
- package/src/{header → page-header}/stories/pictogram.tsx +0 -0
- package/src/panel/Panel.tsx +14 -23
- package/src/popover/Popover.tsx +29 -11
- package/src/popover/PopoverContent.tsx +26 -0
- package/src/popover/index.ts +1 -0
- package/src/popover/stories/popover.stories.tsx +6 -8
- package/src/speech-bubble/Bubble.tsx +1 -1
- package/src/tag/Tag.tsx +18 -10
- package/src/tag/stories/tag.stories.mdx +24 -0
- package/src/tag/stories/tag.stories.tsx +13 -0
- package/src/typography/BodyLong.tsx +22 -21
- package/src/typography/BodyShort.tsx +22 -21
- package/src/typography/Detail.tsx +22 -21
- package/src/typography/Heading.tsx +45 -0
- package/src/typography/Ingress.tsx +23 -24
- package/src/typography/Label.tsx +21 -21
- package/src/typography/index.ts +1 -1
- package/src/typography/stories/typography.stories.tsx +18 -23
- package/src/util/OverridableComponent.ts +7 -44
- package/src/util/useId.ts +1 -1
- package/cjs/content-container/index.js +0 -15
- package/cjs/content-container/package.json +0 -6
- package/cjs/header/index.js +0 -15
- package/cjs/header/package.json +0 -6
- package/esm/content-container/ContentContainer.js.map +0 -1
- package/esm/content-container/index.d.ts +0 -2
- package/esm/content-container/index.js +0 -3
- package/esm/content-container/index.js.map +0 -1
- package/esm/header/Header.d.ts +0 -27
- package/esm/header/Header.js +0 -23
- package/esm/header/Header.js.map +0 -1
- package/esm/header/index.d.ts +0 -2
- package/esm/header/index.js +0 -3
- package/esm/header/index.js.map +0 -1
- package/esm/typography/Title.d.ts +0 -25
- package/esm/typography/Title.js.map +0 -1
- package/src/content-container/index.ts +0 -2
- package/src/content-container/stories/container.stories.mdx +0 -31
- package/src/content-container/stories/container.stories.tsx +0 -33
- package/src/content-container/stories/style.css +0 -15
- package/src/form/stories/error-uu.stories.tsx +0 -75
- package/src/header/Header.tsx +0 -69
- package/src/header/index.ts +0 -2
- package/src/loader/stories/demo.css +0 -18
- package/src/typography/Title.tsx +0 -56
package/src/loader/Loader.tsx
CHANGED
|
@@ -6,9 +6,9 @@ export interface LoaderProps extends SVGProps<SVGSVGElement> {
|
|
|
6
6
|
/**
|
|
7
7
|
* Changes sizing
|
|
8
8
|
* 64px | 40px | 32px | 24px | 20px | 16px
|
|
9
|
-
* @default "
|
|
9
|
+
* @default "medium"
|
|
10
10
|
*/
|
|
11
|
-
size?: "
|
|
11
|
+
size?: "2xlarge" | "xlarge" | "large" | "medium" | "small" | "xsmall";
|
|
12
12
|
/**
|
|
13
13
|
* Title prop on svg
|
|
14
14
|
* @default "venter..."
|
|
@@ -30,7 +30,7 @@ const Loader = forwardRef<SVGSVGElement, LoaderProps>(
|
|
|
30
30
|
{
|
|
31
31
|
children,
|
|
32
32
|
className,
|
|
33
|
-
size = "
|
|
33
|
+
size = "medium",
|
|
34
34
|
title = "venter...",
|
|
35
35
|
transparent = false,
|
|
36
36
|
variant = "neutral",
|
|
@@ -45,18 +45,21 @@ const Loader = forwardRef<SVGSVGElement, LoaderProps>(
|
|
|
45
45
|
<svg
|
|
46
46
|
aria-labelledby={internalId}
|
|
47
47
|
ref={ref}
|
|
48
|
-
className={cl(
|
|
49
|
-
"navds-loader
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
48
|
+
className={cl(
|
|
49
|
+
"navds-loader",
|
|
50
|
+
className,
|
|
51
|
+
`navds-loader--${size}`,
|
|
52
|
+
`navds-loader--${variant}`,
|
|
53
|
+
{
|
|
54
|
+
"navds-loader--transparent": transparent,
|
|
55
|
+
}
|
|
56
|
+
)}
|
|
54
57
|
focusable="false"
|
|
55
58
|
viewBox="0 0 50 50"
|
|
56
59
|
preserveAspectRatio="xMidYMid"
|
|
57
60
|
{...rest}
|
|
58
61
|
>
|
|
59
|
-
<title id={internalId}>{title}</title>
|
|
62
|
+
<title id={id ?? `loader-${internalId}`}>{title}</title>
|
|
60
63
|
<circle
|
|
61
64
|
className="navds-loader__background"
|
|
62
65
|
xmlns="http://www.w3.org/2000/svg"
|
|
@@ -19,19 +19,19 @@ Her kan `title` proppen brukes for å gi en liten tooltip som sier hvorfor den l
|
|
|
19
19
|
|
|
20
20
|
## Justering av størrelse
|
|
21
21
|
|
|
22
|
-
Loaderen kommer i størrelsene `
|
|
22
|
+
Loaderen kommer i størrelsene `2xlarge`, `xlarge`, `large`, `medium`, `small` og `xsmall`
|
|
23
23
|
|
|
24
24
|
```jsx
|
|
25
|
-
<Loader size="
|
|
25
|
+
<Loader size="xlarge" />
|
|
26
26
|
```
|
|
27
27
|
|
|
28
28
|
<Canvas>
|
|
29
|
-
<Loader size="
|
|
30
|
-
<Loader size="
|
|
31
|
-
<Loader size="
|
|
32
|
-
<Loader size="
|
|
33
|
-
<Loader size="
|
|
34
|
-
<Loader size="
|
|
29
|
+
<Loader size="2xlarge" />
|
|
30
|
+
<Loader size="xlarge" />
|
|
31
|
+
<Loader size="large" />
|
|
32
|
+
<Loader size="medium" />
|
|
33
|
+
<Loader size="small" />
|
|
34
|
+
<Loader size="xsmall" />
|
|
35
35
|
</Canvas>
|
|
36
36
|
|
|
37
37
|
## Varianter
|
|
@@ -39,16 +39,16 @@ Loaderen kommer i størrelsene `2xl`, `xl`, `l`, `m`, `s` og `xs`
|
|
|
39
39
|
Loaderen kommer i variantene `neutral`, `interaction` og `inverted`
|
|
40
40
|
|
|
41
41
|
```jsx
|
|
42
|
-
<Loader size="
|
|
43
|
-
<Loader size="
|
|
44
|
-
<Loader size="
|
|
42
|
+
<Loader size="2xlarge" variant="neutral"/>
|
|
43
|
+
<Loader size="2xlarge" variant="interaction"/>
|
|
44
|
+
<Loader size="2xlarge" variant="inverted"/>
|
|
45
45
|
```
|
|
46
46
|
|
|
47
47
|
<Canvas>
|
|
48
|
-
<Loader size="
|
|
49
|
-
<Loader size="
|
|
48
|
+
<Loader size="2xlarge" variant="neutral" />
|
|
49
|
+
<Loader size="2xlarge" variant="interaction" />
|
|
50
50
|
<div style={{ backgroundColor: "black" }}>
|
|
51
|
-
<Loader size="
|
|
51
|
+
<Loader size="2xlarge" variant="inverted" />
|
|
52
52
|
</div>
|
|
53
53
|
</Canvas>
|
|
54
54
|
|
|
@@ -61,7 +61,7 @@ Bakgrunnen kan settes til transparent med `transparent={true}`
|
|
|
61
61
|
```
|
|
62
62
|
|
|
63
63
|
<Canvas>
|
|
64
|
-
<Loader size="
|
|
64
|
+
<Loader size="2xlarge" transparent />
|
|
65
65
|
</Canvas>
|
|
66
66
|
|
|
67
67
|
## Bruk av loader i knapper
|
|
@@ -74,31 +74,30 @@ Størrelsen justeres også automatisk, slik at alt man trenger er å sette Loade
|
|
|
74
74
|
|
|
75
75
|
```jsx
|
|
76
76
|
<Button>
|
|
77
|
-
|
|
77
|
+
Laster inn nytt innhold...
|
|
78
78
|
<Loader />
|
|
79
79
|
</Button>
|
|
80
80
|
```
|
|
81
81
|
|
|
82
82
|
<Canvas>
|
|
83
83
|
<Button>
|
|
84
|
-
|
|
84
|
+
Laster inn nytt innhold...
|
|
85
85
|
<Loader />
|
|
86
86
|
</Button>
|
|
87
87
|
</Canvas>
|
|
88
88
|
|
|
89
89
|
## Overskrive farger for å sikre kontrast
|
|
90
90
|
|
|
91
|
-
I de casene der man må justere fargene for å ha bedre kontrast så
|
|
92
|
-
Om mulig bør man unngå dette og bare ta i bruk default.
|
|
91
|
+
I de casene der man må justere fargene for å ha bedre kontrast så kan man endre på selve css-variablene som bli brukt
|
|
93
92
|
|
|
94
93
|
```css
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
94
|
+
--navds-loader-color-foreground: var(--navds-color-gray-40);
|
|
95
|
+
--navds-loader-color-background: var(--navds-color-gray-10);
|
|
96
|
+
--navds-loader-color-neutral-foreground: var(--navds-color-gray-40);
|
|
97
|
+
--navds-loader-color-interaction-foreground: var(--navds-color-blue-50);
|
|
98
|
+
--navds-loader-color-inverted-foreground: var(--navds-color-white);
|
|
99
|
+
--navds-loader-color-inverted-background: rgba(255, 255, 255, 0.3);
|
|
100
|
+
--navds-loader-color-transparent-background: transparent;
|
|
101
|
+
--navds-loader-color-on-button-background: rgba(255, 255, 255, 0.3);
|
|
102
|
+
--navds-loader-color-on-button-foreground: currentColor;
|
|
104
103
|
```
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import React
|
|
2
|
-
import { Loader } from "
|
|
3
|
-
import { Button
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { Loader } from "..";
|
|
3
|
+
import { Button } from "../..";
|
|
4
4
|
import { Meta } from "@storybook/react/types-6-0";
|
|
5
|
-
import "./demo.css";
|
|
6
5
|
export default {
|
|
7
6
|
title: "ds-react/loader",
|
|
8
7
|
component: Loader,
|
|
@@ -18,112 +17,53 @@ export const All = () => {
|
|
|
18
17
|
<Loader transparent />
|
|
19
18
|
|
|
20
19
|
<h2>Sizing</h2>
|
|
21
|
-
<Loader size="
|
|
22
|
-
<Loader size="
|
|
23
|
-
<Loader size="
|
|
24
|
-
<Loader size="
|
|
25
|
-
<Loader size="
|
|
26
|
-
<Loader size="
|
|
20
|
+
<Loader size="2xlarge" />
|
|
21
|
+
<Loader size="xlarge" />
|
|
22
|
+
<Loader size="large" />
|
|
23
|
+
<Loader size="medium" />
|
|
24
|
+
<Loader size="small" />
|
|
25
|
+
<Loader size="xsmall" />
|
|
27
26
|
<h2>Sizing transparent</h2>
|
|
28
|
-
<Loader size="
|
|
29
|
-
<Loader size="
|
|
30
|
-
<Loader size="
|
|
31
|
-
<Loader size="
|
|
32
|
-
<Loader size="
|
|
33
|
-
<Loader size="
|
|
27
|
+
<Loader size="2xlarge" transparent />
|
|
28
|
+
<Loader size="xlarge" transparent />
|
|
29
|
+
<Loader size="large" transparent />
|
|
30
|
+
<Loader size="medium" transparent />
|
|
31
|
+
<Loader size="small" transparent />
|
|
32
|
+
<Loader size="xsmall" transparent />
|
|
34
33
|
<div style={{ backgroundColor: "#c9c9c9" }}>
|
|
35
34
|
<h2>Varianter</h2>
|
|
36
|
-
<Loader size="
|
|
37
|
-
<Loader size="
|
|
38
|
-
<Loader size="
|
|
35
|
+
<Loader size="xlarge" variant="neutral" />
|
|
36
|
+
<Loader size="xlarge" variant="interaction" />
|
|
37
|
+
<Loader size="xlarge" variant="inverted" />
|
|
39
38
|
<h2>Varianter transparent</h2>
|
|
40
|
-
<Loader size="
|
|
41
|
-
<Loader size="
|
|
42
|
-
<Loader size="
|
|
43
|
-
<h2>Brukt i knapper</h2>
|
|
39
|
+
<Loader size="xlarge" variant="neutral" transparent />
|
|
40
|
+
<Loader size="xlarge" variant="interaction" transparent />
|
|
41
|
+
<Loader size="xlarge" variant="inverted" transparent />
|
|
44
42
|
</div>
|
|
43
|
+
<h2>Brukt i knapper</h2>
|
|
45
44
|
<div>
|
|
46
45
|
<Button>
|
|
47
|
-
|
|
46
|
+
Laster...
|
|
48
47
|
<Loader />
|
|
49
|
-
</Button>
|
|
50
|
-
<Button size="
|
|
51
|
-
|
|
48
|
+
</Button>
|
|
49
|
+
<Button size="small">
|
|
50
|
+
Laster...
|
|
52
51
|
<Loader />
|
|
53
52
|
</Button>
|
|
54
53
|
<h2>Variants</h2>
|
|
55
54
|
<Button variant="secondary">
|
|
56
|
-
|
|
55
|
+
Laster...
|
|
57
56
|
<Loader />
|
|
58
|
-
</Button>
|
|
57
|
+
</Button>
|
|
59
58
|
<Button variant="action">
|
|
60
|
-
|
|
59
|
+
Laster...
|
|
61
60
|
<Loader />
|
|
62
|
-
</Button>
|
|
61
|
+
</Button>
|
|
63
62
|
<Button variant="danger">
|
|
64
|
-
|
|
63
|
+
Laster...
|
|
65
64
|
<Loader />
|
|
66
65
|
</Button>
|
|
67
66
|
</div>
|
|
68
67
|
</div>
|
|
69
68
|
);
|
|
70
69
|
};
|
|
71
|
-
|
|
72
|
-
export const LoaderDemo = () => {
|
|
73
|
-
const [loading, setLoading] = useState(false);
|
|
74
|
-
const [longText, setLongText] = useState(false);
|
|
75
|
-
|
|
76
|
-
const handleAuto = () => {
|
|
77
|
-
setLoading(true);
|
|
78
|
-
setTimeout(() => {
|
|
79
|
-
setLoading(false);
|
|
80
|
-
}, 3000);
|
|
81
|
-
};
|
|
82
|
-
|
|
83
|
-
const text = longText
|
|
84
|
-
? "Laster inn nytt innhold fra databasen. Hvis dette tar lengre enn 10 sekunder kan man prøve å laste siden på nytt. Om dette ikke fungerer kan det hende tjenesten har nedetid nå, sjekk ut denne linken for å se status"
|
|
85
|
-
: "Laster inn innholdet...";
|
|
86
|
-
|
|
87
|
-
return (
|
|
88
|
-
<div className="demo__wrapper">
|
|
89
|
-
<Title level="1" size="l">
|
|
90
|
-
Test/Demo for loading state. Ikke bruk som referanse i implmentasjon
|
|
91
|
-
</Title>
|
|
92
|
-
<div>
|
|
93
|
-
<Button onClick={() => setLoading(!loading)}>
|
|
94
|
-
Toggle Loading state
|
|
95
|
-
</Button>
|
|
96
|
-
<Button onClick={() => setLongText(!longText)}>
|
|
97
|
-
Toggle Text-lengde
|
|
98
|
-
</Button>
|
|
99
|
-
<Button onClick={() => handleAuto()}>
|
|
100
|
-
Automatisk endring (3 sekunder)
|
|
101
|
-
</Button>
|
|
102
|
-
</div>
|
|
103
|
-
|
|
104
|
-
<Panel
|
|
105
|
-
border
|
|
106
|
-
className="demo__panel"
|
|
107
|
-
aria-live="polite"
|
|
108
|
-
aria-busy={loading}
|
|
109
|
-
>
|
|
110
|
-
{loading ? (
|
|
111
|
-
<>
|
|
112
|
-
<Loader size="xl" title={text} />
|
|
113
|
-
<span>{text}</span>
|
|
114
|
-
</>
|
|
115
|
-
) : (
|
|
116
|
-
<div>
|
|
117
|
-
<h2>DummyTittel</h2>
|
|
118
|
-
<p>
|
|
119
|
-
Dolor nostrud sint incididunt consectetur adipisicing sit. Laborum
|
|
120
|
-
enim consequat non labore velit ex. Esse amet irure cillum amet
|
|
121
|
-
dolor ad consequat. Est sit id tempor dolore officia proident
|
|
122
|
-
consequat sunt cillum.
|
|
123
|
-
</p>
|
|
124
|
-
</div>
|
|
125
|
-
)}
|
|
126
|
-
</Panel>
|
|
127
|
-
</div>
|
|
128
|
-
);
|
|
129
|
-
};
|
package/src/modal/Modal.tsx
CHANGED
|
@@ -4,6 +4,7 @@ import ReactModal from "react-modal";
|
|
|
4
4
|
import mergeRefs from "react-merge-refs";
|
|
5
5
|
import { Close } from "@navikt/ds-icons";
|
|
6
6
|
import { Button } from "..";
|
|
7
|
+
import ModalContent, { ModalContentType } from "./ModalContent";
|
|
7
8
|
|
|
8
9
|
export interface ModalProps {
|
|
9
10
|
/**
|
|
@@ -24,31 +25,31 @@ export interface ModalProps {
|
|
|
24
25
|
*/
|
|
25
26
|
shouldCloseOnOverlayClick?: boolean;
|
|
26
27
|
/**
|
|
27
|
-
*
|
|
28
|
+
* User defined classname for modal
|
|
28
29
|
*/
|
|
29
30
|
className?: string;
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
interface ModalComponent
|
|
34
|
+
extends ModalLifecycle,
|
|
35
|
+
React.ForwardRefExoticComponent<
|
|
36
|
+
ModalProps & React.RefAttributes<ReactModal>
|
|
37
|
+
> {
|
|
38
|
+
Content: ModalContentType;
|
|
34
39
|
}
|
|
35
40
|
|
|
36
41
|
type ModalLifecycle = {
|
|
37
42
|
setAppElement?: (element: any) => void;
|
|
38
43
|
};
|
|
39
44
|
|
|
40
|
-
const Modal
|
|
41
|
-
React.ForwardRefExoticComponent<
|
|
42
|
-
ModalProps & React.RefAttributes<ReactModal>
|
|
43
|
-
> = forwardRef<ReactModal, ModalProps>(
|
|
45
|
+
const Modal = forwardRef<ReactModal, ModalProps>(
|
|
44
46
|
(
|
|
45
47
|
{
|
|
46
48
|
children,
|
|
47
49
|
open,
|
|
48
|
-
className,
|
|
49
50
|
onClose,
|
|
51
|
+
className,
|
|
50
52
|
shouldCloseOnOverlayClick = true,
|
|
51
|
-
contentClassName = "",
|
|
52
53
|
...rest
|
|
53
54
|
},
|
|
54
55
|
ref
|
|
@@ -75,12 +76,12 @@ const Modal: ModalLifecycle &
|
|
|
75
76
|
shouldCloseOnOverlayClick={shouldCloseOnOverlayClick}
|
|
76
77
|
onRequestClose={(e) => onModalCloseRequest(e)}
|
|
77
78
|
>
|
|
78
|
-
|
|
79
|
+
{children}
|
|
79
80
|
<Button
|
|
80
81
|
className={cl("navds-modal__button", {
|
|
81
82
|
"navds-modal__button--shake": shouldCloseOnOverlayClick,
|
|
82
83
|
})}
|
|
83
|
-
size="
|
|
84
|
+
size="small"
|
|
84
85
|
variant="secondary"
|
|
85
86
|
ref={buttonRef}
|
|
86
87
|
aria-label="lukk modalvindu"
|
|
@@ -95,8 +96,9 @@ const Modal: ModalLifecycle &
|
|
|
95
96
|
</ReactModal>
|
|
96
97
|
);
|
|
97
98
|
}
|
|
98
|
-
);
|
|
99
|
+
) as ModalComponent;
|
|
99
100
|
|
|
100
101
|
Modal.setAppElement = (element) => ReactModal.setAppElement(element);
|
|
102
|
+
Modal.Content = ModalContent;
|
|
101
103
|
|
|
102
104
|
export default Modal;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React, { forwardRef } from "react";
|
|
2
|
+
import cl from "classnames";
|
|
3
|
+
|
|
4
|
+
export interface ModalContentProps
|
|
5
|
+
extends React.HTMLAttributes<HTMLDivElement> {
|
|
6
|
+
/**
|
|
7
|
+
* Modal.Content content
|
|
8
|
+
*/
|
|
9
|
+
children: React.ReactNode;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export type ModalContentType = React.ForwardRefExoticComponent<
|
|
13
|
+
ModalContentProps & React.RefAttributes<HTMLDivElement>
|
|
14
|
+
>;
|
|
15
|
+
|
|
16
|
+
const ModalContent: ModalContentType = forwardRef(
|
|
17
|
+
({ className, ...rest }, ref) => (
|
|
18
|
+
<div
|
|
19
|
+
{...rest}
|
|
20
|
+
ref={ref}
|
|
21
|
+
className={cl("navds-modal__content", className)}
|
|
22
|
+
/>
|
|
23
|
+
)
|
|
24
|
+
);
|
|
25
|
+
|
|
26
|
+
export default ModalContent;
|
package/src/modal/index.ts
CHANGED
|
@@ -15,9 +15,18 @@ vil `onClose`-triggre og det er opp til systemet å håndtere det.
|
|
|
15
15
|
|
|
16
16
|
```jsx
|
|
17
17
|
<Modal open={open} onClose={() => setOpen(false)}>
|
|
18
|
+
<Modal.Content>
|
|
19
|
+
<h2>Heading</h2>
|
|
20
|
+
<p>
|
|
21
|
+
Cupidatat irure ipsum veniam ad in esse. Voluptate do nulla amet
|
|
22
|
+
laboriselit sit dolor aliquip velit esse. Excepteur sint non minim nulla
|
|
23
|
+
excepteur labore non magna eu.
|
|
24
|
+
</p>
|
|
25
|
+
</Modal.Content>
|
|
26
|
+
</Modal>
|
|
18
27
|
```
|
|
19
28
|
|
|
20
29
|
## shouldCloseOnOverlayClick
|
|
21
30
|
|
|
22
31
|
Proppen `shouldCloseOnOverlayClick` toggler om `onClose` skal triggres
|
|
23
|
-
når bruker trykker utenfor modalen (overlayet).
|
|
32
|
+
når bruker trykker utenfor modalen (overlayet). Er default: true .
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { useState } from "react";
|
|
2
|
-
import { Modal } from "
|
|
2
|
+
import { Modal } from "../..";
|
|
3
3
|
|
|
4
4
|
export default {
|
|
5
5
|
title: "ds-react/modal",
|
|
@@ -16,10 +16,12 @@ export const All = () => {
|
|
|
16
16
|
<>
|
|
17
17
|
<button onClick={() => setOpen(true)}>Open modal</button>
|
|
18
18
|
<Modal open={open} onClose={() => setOpen(false)}>
|
|
19
|
-
<
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
<Modal.Content>
|
|
20
|
+
<h1>Header</h1>
|
|
21
|
+
<h2>subheader</h2>
|
|
22
|
+
<p>Cupidatat irure ipsum veniam ad in esse.</p>
|
|
23
|
+
<p>Cillum tempor pariatur amet ut laborum Lorem enim enim.</p>
|
|
24
|
+
</Modal.Content>
|
|
23
25
|
</Modal>
|
|
24
26
|
|
|
25
27
|
<button onClick={() => setOpenTwo(true)}>
|
|
@@ -30,17 +32,19 @@ export const All = () => {
|
|
|
30
32
|
open={openTwo}
|
|
31
33
|
onClose={() => setOpenTwo(false)}
|
|
32
34
|
>
|
|
33
|
-
<
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
35
|
+
<Modal.Content>
|
|
36
|
+
<h1>Header</h1>
|
|
37
|
+
<h2>subheader</h2>
|
|
38
|
+
<p>
|
|
39
|
+
Cupidatat irure ipsum veniam ad in esse. Voluptate do nulla amet
|
|
40
|
+
laboris ea ex aliquip. Dolore dolore reprehenderit sint esse commodo
|
|
41
|
+
aliqua cupidatat incididunt proident laborum qui. Officia fugiat non
|
|
42
|
+
anim cupidatat. Adipisicing ut aliqua cillum nulla elit. Mollit et
|
|
43
|
+
id duis cupidatat labore magna consectetur et veniam tempor. In
|
|
44
|
+
minim exercitation id irure velit sit dolor aliquip velit esse.
|
|
45
|
+
Excepteur sint non minim nulla excepteur labore non magna eu.
|
|
46
|
+
</p>
|
|
47
|
+
</Modal.Content>
|
|
44
48
|
</Modal>
|
|
45
49
|
</>
|
|
46
50
|
);
|