@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/form/Select.tsx
CHANGED
|
@@ -58,7 +58,7 @@ const Select = forwardRef<HTMLSelectElement, SelectProps>((props, ref) => {
|
|
|
58
58
|
<Label
|
|
59
59
|
htmlFor={inputProps.id}
|
|
60
60
|
size={size}
|
|
61
|
-
|
|
61
|
+
as="label"
|
|
62
62
|
className={cl("navds-select__label", {
|
|
63
63
|
"sr-only": hideLabel,
|
|
64
64
|
})}
|
|
@@ -85,7 +85,7 @@ const Select = forwardRef<HTMLSelectElement, SelectProps>((props, ref) => {
|
|
|
85
85
|
className,
|
|
86
86
|
"navds-select__input",
|
|
87
87
|
"navds-body-short",
|
|
88
|
-
`navds-body--${size ?? "
|
|
88
|
+
`navds-body--${size ?? "medium"}`
|
|
89
89
|
)}
|
|
90
90
|
size={props.htmlSize}
|
|
91
91
|
>
|
package/src/form/TextField.tsx
CHANGED
package/src/form/Textarea.tsx
CHANGED
|
@@ -72,7 +72,7 @@ const Textarea = forwardRef<HTMLTextAreaElement, TextareaProps>(
|
|
|
72
72
|
<Label
|
|
73
73
|
htmlFor={inputProps.id}
|
|
74
74
|
size={size}
|
|
75
|
-
|
|
75
|
+
as="label"
|
|
76
76
|
className={cl("navds-textarea__label", {
|
|
77
77
|
"sr-only": hideLabel,
|
|
78
78
|
})}
|
|
@@ -99,7 +99,7 @@ const Textarea = forwardRef<HTMLTextAreaElement, TextareaProps>(
|
|
|
99
99
|
className,
|
|
100
100
|
"navds-textarea__input",
|
|
101
101
|
"navds-body-short",
|
|
102
|
-
`navds-body-${size ?? "
|
|
102
|
+
`navds-body-${size ?? "medium"}`,
|
|
103
103
|
{
|
|
104
104
|
"navds-textarea--counter": hasMaxLength,
|
|
105
105
|
}
|
|
@@ -54,7 +54,7 @@ const CheckboxGroup = forwardRef<HTMLFieldSetElement, CheckboxGroupProps>(
|
|
|
54
54
|
className={cl(
|
|
55
55
|
className,
|
|
56
56
|
"navds-checkbox-group",
|
|
57
|
-
`navds-checkbox-group--${rest.size ?? fieldset?.size ?? "
|
|
57
|
+
`navds-checkbox-group--${rest.size ?? fieldset?.size ?? "medium"}`
|
|
58
58
|
)}
|
|
59
59
|
>
|
|
60
60
|
<CheckboxGroupContext.Provider
|
|
@@ -95,10 +95,14 @@ Man kan både sette en description på CheckboxGroup og selve checkbox
|
|
|
95
95
|
|
|
96
96
|
## Sizing
|
|
97
97
|
|
|
98
|
-
Checkboxer har default 44px høy klikkflate. Med size="
|
|
98
|
+
Checkboxer har default 44px høy klikkflate. Med size="small" blir denne til 24px slik som før
|
|
99
99
|
|
|
100
100
|
```jsx
|
|
101
|
-
<CheckboxGroup
|
|
101
|
+
<CheckboxGroup
|
|
102
|
+
legend="Mollit eiusmod"
|
|
103
|
+
error="Boks nr 2 må være valgt"
|
|
104
|
+
size="small"
|
|
105
|
+
>
|
|
102
106
|
<Checkbox value="Apple">Apple</Checkbox>
|
|
103
107
|
<Checkbox value="Orange">Orange</Checkbox>
|
|
104
108
|
<Checkbox value="Melon">Melon</Checkbox>
|
|
@@ -109,7 +113,7 @@ Checkboxer har default 44px høy klikkflate. Med size="s" blir denne til 24px sl
|
|
|
109
113
|
<CheckboxGroup
|
|
110
114
|
legend="Mollit eiusmod"
|
|
111
115
|
error="Boks nr 2 må være valgt"
|
|
112
|
-
size="
|
|
116
|
+
size="small"
|
|
113
117
|
>
|
|
114
118
|
<Checkbox value="Apple">Apple</Checkbox>
|
|
115
119
|
<Checkbox value="Orange" error="Boksen må være valgt">
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { forwardRef, HTMLAttributes } from "react";
|
|
2
2
|
import cl from "classnames";
|
|
3
|
-
import {
|
|
3
|
+
import { Heading, BodyShort } from "../..";
|
|
4
4
|
|
|
5
5
|
export interface ErrorSummaryProps extends HTMLAttributes<HTMLDivElement> {
|
|
6
6
|
/**
|
|
@@ -9,9 +9,9 @@ export interface ErrorSummaryProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
9
9
|
children: React.ReactNode;
|
|
10
10
|
/**
|
|
11
11
|
* Changes padding and font-sizes
|
|
12
|
-
* @default "
|
|
12
|
+
* @default "medium"
|
|
13
13
|
*/
|
|
14
|
-
size?: "
|
|
14
|
+
size?: "medium" | "small";
|
|
15
15
|
/**
|
|
16
16
|
* Heading above links
|
|
17
17
|
*/
|
|
@@ -25,7 +25,14 @@ export interface ErrorSummaryProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
25
25
|
|
|
26
26
|
const ErrorSummary = forwardRef<HTMLDivElement, ErrorSummaryProps>(
|
|
27
27
|
(
|
|
28
|
-
{
|
|
28
|
+
{
|
|
29
|
+
children,
|
|
30
|
+
className,
|
|
31
|
+
size = "medium",
|
|
32
|
+
headingTag = "h2",
|
|
33
|
+
heading,
|
|
34
|
+
...rest
|
|
35
|
+
},
|
|
29
36
|
ref
|
|
30
37
|
) => {
|
|
31
38
|
return (
|
|
@@ -40,24 +47,18 @@ const ErrorSummary = forwardRef<HTMLDivElement, ErrorSummaryProps>(
|
|
|
40
47
|
tabIndex={-1}
|
|
41
48
|
role="region"
|
|
42
49
|
>
|
|
43
|
-
<
|
|
44
|
-
className="navds-error-
|
|
45
|
-
|
|
46
|
-
size="
|
|
50
|
+
<Heading
|
|
51
|
+
className="navds-error-summary__heading"
|
|
52
|
+
as={headingTag}
|
|
53
|
+
size="small"
|
|
47
54
|
>
|
|
48
55
|
{heading}
|
|
49
|
-
</
|
|
50
|
-
<ul
|
|
51
|
-
className={cl(
|
|
52
|
-
"navds-error-summary__list",
|
|
53
|
-
"navds-body-short",
|
|
54
|
-
`navds-body--${size}`
|
|
55
|
-
)}
|
|
56
|
-
>
|
|
56
|
+
</Heading>
|
|
57
|
+
<BodyShort as="ul" size={size} className="navds-error-summary__list">
|
|
57
58
|
{React.Children.map(children, (child) => {
|
|
58
59
|
return <li key={child?.toString()}>{child}</li>;
|
|
59
60
|
})}
|
|
60
|
-
</
|
|
61
|
+
</BodyShort>
|
|
61
62
|
</div>
|
|
62
63
|
);
|
|
63
64
|
}
|
|
@@ -2,20 +2,20 @@ import React, { forwardRef } from "react";
|
|
|
2
2
|
import cl from "classnames";
|
|
3
3
|
import { OverridableComponent } from "../..";
|
|
4
4
|
|
|
5
|
-
export
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
*/
|
|
12
|
-
children: React.ReactNode;
|
|
13
|
-
} & React.HTMLAttributes<HTMLAnchorElement>;
|
|
14
|
-
defaultComponent: "a";
|
|
5
|
+
export interface ErrorSummaryItemProps
|
|
6
|
+
extends React.AnchorHTMLAttributes<HTMLAnchorElement> {
|
|
7
|
+
/**
|
|
8
|
+
* Link text
|
|
9
|
+
*/
|
|
10
|
+
children: React.ReactNode;
|
|
15
11
|
}
|
|
16
12
|
|
|
13
|
+
export type ErrorType = OverridableComponent<
|
|
14
|
+
ErrorSummaryItemProps,
|
|
15
|
+
HTMLAnchorElement
|
|
16
|
+
>;
|
|
17
17
|
const ErrorSummaryItem: ErrorType = forwardRef(
|
|
18
|
-
({ children,
|
|
18
|
+
({ children, as: Component = "a", className, ...rest }, ref) => {
|
|
19
19
|
return (
|
|
20
20
|
<Component
|
|
21
21
|
{...rest}
|
|
@@ -16,8 +16,8 @@ export const All = () => {
|
|
|
16
16
|
Tekstfeltet må ha en godkjent e-mail
|
|
17
17
|
</ErrorSummaryItem>
|
|
18
18
|
</ErrorSummary>
|
|
19
|
-
<h2>size
|
|
20
|
-
<ErrorSummary size="
|
|
19
|
+
<h2>size small</h2>
|
|
20
|
+
<ErrorSummary size="small" heading="Feiloppsummering komponent">
|
|
21
21
|
<ErrorSummaryItem href="#1">Checkbox må fylles ut</ErrorSummaryItem>
|
|
22
22
|
<ErrorSummaryItem href="#2">
|
|
23
23
|
Tekstfeltet må ha en godkjent e-mail
|
package/src/form/radio/Radio.tsx
CHANGED
|
@@ -67,7 +67,7 @@ const RadioGroup = forwardRef<HTMLFieldSetElement, RadioGroupProps>(
|
|
|
67
67
|
className={cl(
|
|
68
68
|
className,
|
|
69
69
|
"navds-radio-group",
|
|
70
|
-
`navds-radio-group--${rest.size ?? fieldset?.size ?? "
|
|
70
|
+
`navds-radio-group--${rest.size ?? fieldset?.size ?? "medium"}`
|
|
71
71
|
)}
|
|
72
72
|
>
|
|
73
73
|
<RadioGroupContext.Provider
|
|
@@ -95,10 +95,14 @@ Man kan både sette en description på RadioGroup og selve Radio
|
|
|
95
95
|
|
|
96
96
|
## Sizing
|
|
97
97
|
|
|
98
|
-
Radioer har default 44px høy klikkflate. Med size="
|
|
98
|
+
Radioer har default 44px høy klikkflate. Med size="small" blir denne til 24px slik som før
|
|
99
99
|
|
|
100
100
|
```jsx
|
|
101
|
-
<RadioGroup
|
|
101
|
+
<RadioGroup
|
|
102
|
+
legend="Mollit eiusmod"
|
|
103
|
+
error="Boks nr 2 må være valgt"
|
|
104
|
+
size="small"
|
|
105
|
+
>
|
|
102
106
|
<Radio value="Apple">Apple</Radio>
|
|
103
107
|
<Radio value="Orange">Orange</Radio>
|
|
104
108
|
<Radio value="Melon">Melon</Radio>
|
|
@@ -106,7 +110,11 @@ Radioer har default 44px høy klikkflate. Med size="s" blir denne til 24px slik
|
|
|
106
110
|
```
|
|
107
111
|
|
|
108
112
|
<Canvas>
|
|
109
|
-
<RadioGroup
|
|
113
|
+
<RadioGroup
|
|
114
|
+
legend="Mollit eiusmod"
|
|
115
|
+
error="Boks nr 2 må være valgt"
|
|
116
|
+
size="small"
|
|
117
|
+
>
|
|
110
118
|
<Radio value="Apple">Apple</Radio>
|
|
111
119
|
<Radio value="Orange" error="Boksen må være valgt">
|
|
112
120
|
Orange
|
|
@@ -11,7 +11,7 @@ export interface SearchFieldContextProps {
|
|
|
11
11
|
"aria-describedby"?: string;
|
|
12
12
|
disabled?: boolean;
|
|
13
13
|
};
|
|
14
|
-
size?: "
|
|
14
|
+
size?: "medium" | "small";
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
export const SearchFieldContext = React.createContext<SearchFieldContextProps | null>(
|
|
@@ -63,7 +63,7 @@ const SearchField = forwardRef<HTMLDivElement, SearchFieldProps>(
|
|
|
63
63
|
className={cl(
|
|
64
64
|
className,
|
|
65
65
|
"navds-form-field",
|
|
66
|
-
`navds-form-field--${size ?? "
|
|
66
|
+
`navds-form-field--${size ?? "medium"}`,
|
|
67
67
|
"navds-search-field",
|
|
68
68
|
{ "navds-search-field--error": hasError }
|
|
69
69
|
)}
|
|
@@ -71,7 +71,7 @@ const SearchField = forwardRef<HTMLDivElement, SearchFieldProps>(
|
|
|
71
71
|
<Label
|
|
72
72
|
htmlFor={inputProps.id}
|
|
73
73
|
size={size}
|
|
74
|
-
|
|
74
|
+
as="label"
|
|
75
75
|
className={cl("navds-text-field__label", {
|
|
76
76
|
"sr-only": hideLabel,
|
|
77
77
|
})}
|
|
@@ -11,13 +11,13 @@ export interface SearchFieldButtonProps extends Omit<ButtonProps, "size"> {
|
|
|
11
11
|
children: React.ReactNode;
|
|
12
12
|
/**
|
|
13
13
|
* Changes design and interactions
|
|
14
|
-
* @default "
|
|
14
|
+
* @default "primary"
|
|
15
15
|
*/
|
|
16
|
-
variant?: "primary" | "
|
|
16
|
+
variant?: "primary" | "secondary";
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
const SearchFieldButton = forwardRef<HTMLButtonElement, SearchFieldButtonProps>(
|
|
20
|
-
({ className, variant = "
|
|
20
|
+
({ className, variant = "primary", disabled, ...rest }, ref) => {
|
|
21
21
|
const searchField = useContext(SearchFieldContext);
|
|
22
22
|
|
|
23
23
|
if (searchField === null) {
|
|
@@ -11,15 +11,15 @@ export interface SearchFieldClearButtonProps extends Omit<ButtonProps, "size"> {
|
|
|
11
11
|
children: React.ReactNode;
|
|
12
12
|
/**
|
|
13
13
|
* Changes design and interactions
|
|
14
|
-
* @default "
|
|
14
|
+
* @default "secondary"
|
|
15
15
|
*/
|
|
16
|
-
variant?: "primary" | "
|
|
16
|
+
variant?: "primary" | "secondary";
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
const SearchFieldClearButton = forwardRef<
|
|
20
20
|
HTMLButtonElement,
|
|
21
21
|
SearchFieldClearButtonProps
|
|
22
|
-
>(({ className, variant = "
|
|
22
|
+
>(({ className, variant = "secondary", disabled, ...rest }, ref) => {
|
|
23
23
|
const searchField = useContext(SearchFieldContext);
|
|
24
24
|
|
|
25
25
|
if (searchField === null) {
|
|
@@ -31,9 +31,9 @@ const SearchFieldClearButton = forwardRef<
|
|
|
31
31
|
|
|
32
32
|
return (
|
|
33
33
|
<Button
|
|
34
|
-
ref={ref}
|
|
35
|
-
className={cl(className, "navds-search-field__button")}
|
|
36
34
|
{...rest}
|
|
35
|
+
ref={ref}
|
|
36
|
+
className={cl(className, "navds-search-field__clear-button")}
|
|
37
37
|
size={size}
|
|
38
38
|
variant={variant}
|
|
39
39
|
disabled={disabled ?? inputProps?.disabled}
|
|
@@ -20,14 +20,15 @@ const SearchFieldInput = forwardRef<HTMLInputElement, SearchFieldInputProps>(
|
|
|
20
20
|
<input
|
|
21
21
|
{...rest}
|
|
22
22
|
{...inputProps}
|
|
23
|
+
type="search"
|
|
24
|
+
role="searchbox"
|
|
23
25
|
ref={ref}
|
|
24
|
-
type="text"
|
|
25
26
|
className={cl(
|
|
26
27
|
className,
|
|
27
28
|
"navds-search-field__input",
|
|
28
29
|
"navds-text-field__input",
|
|
29
30
|
"navds-body-short",
|
|
30
|
-
`navds-body-${size ?? "
|
|
31
|
+
`navds-body-${size ?? "medium"}`
|
|
31
32
|
)}
|
|
32
33
|
/>
|
|
33
34
|
);
|
|
@@ -7,24 +7,23 @@ import {
|
|
|
7
7
|
SearchFieldClearButton,
|
|
8
8
|
} from "../index";
|
|
9
9
|
|
|
10
|
-
export const Example = () => {
|
|
10
|
+
export const Example = ({ size = "medium" }: { size: "medium" | "small" }) => {
|
|
11
11
|
const [value, setValue] = useState("");
|
|
12
12
|
|
|
13
13
|
return (
|
|
14
|
-
<SearchField
|
|
15
|
-
label="Mollit eiusmod"
|
|
16
|
-
description="Ea cupidatat eu sunt commodo"
|
|
17
|
-
>
|
|
14
|
+
<SearchField size={size} label="Skriv i søkefeltet for å vise clearbutton">
|
|
18
15
|
<SearchFieldInput
|
|
19
16
|
value={value}
|
|
20
17
|
onChange={(e) => setValue(e.target.value)}
|
|
21
18
|
/>
|
|
22
|
-
|
|
23
|
-
<
|
|
24
|
-
|
|
25
|
-
|
|
19
|
+
{!!value && (
|
|
20
|
+
<SearchFieldClearButton onClick={() => setValue("")}>
|
|
21
|
+
<Close />
|
|
22
|
+
Tøm
|
|
23
|
+
</SearchFieldClearButton>
|
|
24
|
+
)}
|
|
26
25
|
<SearchFieldButton>
|
|
27
|
-
<Search />
|
|
26
|
+
<Search /> Søk
|
|
28
27
|
</SearchFieldButton>
|
|
29
28
|
</SearchField>
|
|
30
29
|
);
|
|
@@ -24,7 +24,7 @@ Komponenten er ikke testet eller gått gjennom et design-review, så anbefalses
|
|
|
24
24
|
<SearchField label="Mollit eiusmod" description="Ea cupidatat eu sunt commodo">
|
|
25
25
|
<SearchFieldInput />
|
|
26
26
|
<SearchFieldButton>
|
|
27
|
-
<Search />
|
|
27
|
+
<Search /> Søk
|
|
28
28
|
</SearchFieldButton>
|
|
29
29
|
</SearchField>
|
|
30
30
|
```
|
|
@@ -36,7 +36,7 @@ Komponenten er ikke testet eller gått gjennom et design-review, så anbefalses
|
|
|
36
36
|
>
|
|
37
37
|
<SearchFieldInput />
|
|
38
38
|
<SearchFieldButton>
|
|
39
|
-
<Search />
|
|
39
|
+
<Search /> Søk
|
|
40
40
|
</SearchFieldButton>
|
|
41
41
|
</SearchField>
|
|
42
42
|
</Canvas>
|
|
@@ -54,7 +54,7 @@ Vi har satt `label` som required siden man vil bruke den i sammenheng med denne
|
|
|
54
54
|
>
|
|
55
55
|
<SearchFieldInput />
|
|
56
56
|
<SearchFieldButton>
|
|
57
|
-
<Search />
|
|
57
|
+
<Search /> Søk
|
|
58
58
|
</SearchFieldButton>
|
|
59
59
|
</SearchField>
|
|
60
60
|
```
|
|
@@ -67,7 +67,7 @@ Vi har satt `label` som required siden man vil bruke den i sammenheng med denne
|
|
|
67
67
|
>
|
|
68
68
|
<SearchFieldInput />
|
|
69
69
|
<SearchFieldButton>
|
|
70
|
-
<Search />
|
|
70
|
+
<Search /> Søk
|
|
71
71
|
</SearchFieldButton>
|
|
72
72
|
</SearchField>
|
|
73
73
|
</Canvas>
|
|
@@ -79,11 +79,11 @@ Vi har satt `label` som required siden man vil bruke den i sammenheng med denne
|
|
|
79
79
|
label="Mollit eiusmod"
|
|
80
80
|
description="Ea cupidatat eu sunt commodo"
|
|
81
81
|
hideLabel
|
|
82
|
-
size="
|
|
82
|
+
size="small"
|
|
83
83
|
>
|
|
84
84
|
<SearchFieldInput />
|
|
85
85
|
<SearchFieldButton>
|
|
86
|
-
<Search />
|
|
86
|
+
<Search /> Søk
|
|
87
87
|
</SearchFieldButton>
|
|
88
88
|
</SearchField>
|
|
89
89
|
```
|
|
@@ -93,11 +93,11 @@ Vi har satt `label` som required siden man vil bruke den i sammenheng med denne
|
|
|
93
93
|
label="Mollit eiusmod"
|
|
94
94
|
description="Ea cupidatat eu sunt commodo"
|
|
95
95
|
hideLabel
|
|
96
|
-
size="
|
|
96
|
+
size="small"
|
|
97
97
|
>
|
|
98
98
|
<SearchFieldInput />
|
|
99
99
|
<SearchFieldButton>
|
|
100
|
-
<Search />
|
|
100
|
+
<Search /> Søk
|
|
101
101
|
</SearchFieldButton>
|
|
102
102
|
</SearchField>
|
|
103
103
|
</Canvas>
|
|
@@ -113,7 +113,7 @@ Vi har satt `label` som required siden man vil bruke den i sammenheng med denne
|
|
|
113
113
|
>
|
|
114
114
|
<SearchFieldInput />
|
|
115
115
|
<SearchFieldButton>
|
|
116
|
-
<Search />
|
|
116
|
+
<Search /> Søk
|
|
117
117
|
</SearchFieldButton>
|
|
118
118
|
</SearchField>
|
|
119
119
|
```
|
|
@@ -127,80 +127,35 @@ Vi har satt `label` som required siden man vil bruke den i sammenheng med denne
|
|
|
127
127
|
>
|
|
128
128
|
<SearchFieldInput />
|
|
129
129
|
<SearchFieldButton>
|
|
130
|
-
<Search />
|
|
130
|
+
<Search /> Søk
|
|
131
131
|
</SearchFieldButton>
|
|
132
132
|
</SearchField>
|
|
133
133
|
</Canvas>
|
|
134
134
|
|
|
135
|
-
##
|
|
136
|
-
|
|
137
|
-
```jsx
|
|
138
|
-
<SearchField
|
|
139
|
-
label="Mollit eiusmod"
|
|
140
|
-
description="Ea cupidatat eu sunt commodo"
|
|
141
|
-
hideLabel
|
|
142
|
-
>
|
|
143
|
-
<SearchFieldButton>
|
|
144
|
-
<Search /> <span>Søk</span>
|
|
145
|
-
</SearchFieldButton>
|
|
146
|
-
<SearchFieldInput />
|
|
147
|
-
</SearchField>
|
|
148
|
-
<SearchField
|
|
149
|
-
label="Mollit eiusmod"
|
|
150
|
-
description="Ea cupidatat eu sunt commodo"
|
|
151
|
-
hideLabel
|
|
152
|
-
>
|
|
153
|
-
<SearchFieldInput />
|
|
154
|
-
<SearchFieldButton>
|
|
155
|
-
<Search /> <span>Søk</span>
|
|
156
|
-
</SearchFieldButton>
|
|
157
|
-
</SearchField>
|
|
158
|
-
```
|
|
159
|
-
|
|
160
|
-
<Canvas>
|
|
161
|
-
<div>
|
|
162
|
-
<SearchField
|
|
163
|
-
label="Mollit eiusmod"
|
|
164
|
-
description="Ea cupidatat eu sunt commodo"
|
|
165
|
-
hideLabel
|
|
166
|
-
>
|
|
167
|
-
<SearchFieldButton>
|
|
168
|
-
<Search /> <span>Søk</span>
|
|
169
|
-
</SearchFieldButton>
|
|
170
|
-
<SearchFieldInput />
|
|
171
|
-
</SearchField>
|
|
172
|
-
<br />
|
|
173
|
-
<SearchField
|
|
174
|
-
label="Mollit eiusmod"
|
|
175
|
-
description="Ea cupidatat eu sunt commodo"
|
|
176
|
-
hideLabel
|
|
177
|
-
>
|
|
178
|
-
<SearchFieldInput />
|
|
179
|
-
<SearchFieldButton>
|
|
180
|
-
<Search /> <span>Søk</span>
|
|
181
|
-
</SearchFieldButton>
|
|
182
|
-
</SearchField>
|
|
183
|
-
</div>
|
|
184
|
-
</Canvas>
|
|
185
|
-
|
|
186
|
-
<h2>ClearButton</h2>
|
|
135
|
+
## ClearButton
|
|
187
136
|
|
|
188
137
|
Man kan bruke `SearchFieldClearButton` for å håndtere clearing av value i `<input />`. For å bruke denne
|
|
189
138
|
kreves det da at `SearchFieldInput` er controlled slik at man styrer state selv slik som eksemplet under.
|
|
139
|
+
Hvis man bare ønsker at den bare skal vises når bruker har begynt å skrive, anbefaler vi bare å rendre
|
|
140
|
+
den når inputvalue ikke er empty.
|
|
190
141
|
|
|
191
142
|
```jsx
|
|
192
143
|
<SearchField label="Mollit eiusmod" description="Ea cupidatat eu sunt commodo">
|
|
193
144
|
<SearchFieldInput value={value} onChange={(e) => setValue(e.target.value)} />
|
|
194
|
-
|
|
195
|
-
<
|
|
196
|
-
|
|
197
|
-
|
|
145
|
+
{!!value && (
|
|
146
|
+
<SearchFieldClearButton onClick={() => setValue("")}>
|
|
147
|
+
<Close /> Tøm
|
|
148
|
+
</SearchFieldClearButton>
|
|
149
|
+
)}
|
|
198
150
|
<SearchFieldButton>
|
|
199
|
-
<Search />
|
|
151
|
+
<Search /> Søk
|
|
200
152
|
</SearchFieldButton>
|
|
201
153
|
</SearchField>
|
|
202
154
|
```
|
|
203
155
|
|
|
204
156
|
<Canvas>
|
|
205
|
-
<
|
|
157
|
+
<div>
|
|
158
|
+
<Example />
|
|
159
|
+
<Example size="small" />
|
|
160
|
+
</div>
|
|
206
161
|
</Canvas>
|