@navikt/ds-react 6.0.0 → 6.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/accordion/index.d.ts +3 -0
- package/cjs/accordion/index.js +8 -1
- package/cjs/accordion/index.js.map +1 -1
- package/cjs/alert/index.d.ts +1 -2
- package/cjs/alert/index.js +1 -0
- package/cjs/alert/index.js.map +1 -1
- package/cjs/button/index.d.ts +1 -2
- package/cjs/button/index.js +1 -0
- package/cjs/button/index.js.map +1 -1
- package/cjs/chat/Bubble.d.ts +2 -2
- package/cjs/chat/index.d.ts +1 -0
- package/cjs/chat/index.js +4 -1
- package/cjs/chat/index.js.map +1 -1
- package/cjs/chips/Chips.d.ts +4 -4
- package/cjs/chips/Removable.d.ts +2 -2
- package/cjs/chips/Toggle.d.ts +2 -2
- package/cjs/chips/index.d.ts +2 -0
- package/cjs/chips/index.js +6 -1
- package/cjs/chips/index.js.map +1 -1
- package/cjs/copybutton/index.js +1 -0
- package/cjs/copybutton/index.js.map +1 -1
- package/cjs/date/datepicker/index.d.ts +4 -0
- package/cjs/date/datepicker/index.js +17 -0
- package/cjs/date/datepicker/index.js.map +1 -0
- package/cjs/date/datepicker/parts/DropdownCaption.js +3 -3
- package/cjs/date/monthpicker/MonthCaption.js +2 -2
- package/cjs/date/monthpicker/index.d.ts +5 -0
- package/cjs/date/monthpicker/index.js +16 -0
- package/cjs/date/monthpicker/index.js.map +1 -0
- package/cjs/dropdown/Dropdown.d.ts +2 -2
- package/cjs/dropdown/Dropdown.js.map +1 -1
- package/cjs/dropdown/Menu/index.d.ts +3 -3
- package/cjs/dropdown/Toggle.d.ts +3 -3
- package/cjs/dropdown/Toggle.js +3 -3
- package/cjs/dropdown/Toggle.js.map +1 -1
- package/cjs/dropdown/index.d.ts +8 -0
- package/cjs/dropdown/index.js +18 -1
- package/cjs/dropdown/index.js.map +1 -1
- package/cjs/expansion-card/ExpansionCardDescription.d.ts +1 -0
- package/cjs/expansion-card/ExpansionCardDescription.js +1 -0
- package/cjs/expansion-card/ExpansionCardDescription.js.map +1 -1
- package/cjs/expansion-card/ExpansionCardTitle.d.ts +1 -0
- package/cjs/expansion-card/ExpansionCardTitle.js +1 -0
- package/cjs/expansion-card/ExpansionCardTitle.js.map +1 -1
- package/cjs/expansion-card/index.d.ts +4 -0
- package/cjs/expansion-card/index.js +10 -1
- package/cjs/expansion-card/index.js.map +1 -1
- package/cjs/form/checkbox/CheckboxGroup.d.ts +1 -1
- package/cjs/form/checkbox/CheckboxGroup.js +4 -3
- package/cjs/form/checkbox/CheckboxGroup.js.map +1 -1
- package/cjs/form/checkbox/index.js +1 -0
- package/cjs/form/checkbox/index.js.map +1 -1
- package/cjs/form/combobox/index.d.ts +1 -1
- package/cjs/form/combobox/index.js +3 -2
- package/cjs/form/combobox/index.js.map +1 -1
- package/cjs/form/{ConfirmationPanel.d.ts → confirmation-panel/ConfirmationPanel.d.ts} +1 -1
- package/cjs/form/{ConfirmationPanel.js → confirmation-panel/ConfirmationPanel.js} +4 -4
- package/cjs/form/confirmation-panel/ConfirmationPanel.js.map +1 -0
- package/cjs/form/confirmation-panel/index.d.ts +1 -0
- package/cjs/form/confirmation-panel/index.js +10 -0
- package/cjs/form/confirmation-panel/index.js.map +1 -0
- package/cjs/form/error-summary/index.d.ts +2 -2
- package/cjs/form/error-summary/index.js +4 -1
- package/cjs/form/error-summary/index.js.map +1 -1
- package/cjs/form/{Fieldset → fieldset}/Fieldset.js.map +1 -1
- package/cjs/form/{Fieldset → fieldset}/context.js.map +1 -1
- package/cjs/form/{Fieldset → fieldset}/index.d.ts +0 -1
- package/cjs/form/{Fieldset → fieldset}/index.js +2 -3
- package/cjs/form/fieldset/index.js.map +1 -0
- package/cjs/form/{Fieldset → fieldset}/useFieldset.js.map +1 -1
- package/cjs/form/radio/RadioGroup.d.ts +1 -1
- package/cjs/form/radio/RadioGroup.js +4 -3
- package/cjs/form/radio/RadioGroup.js.map +1 -1
- package/cjs/form/radio/index.js +1 -0
- package/cjs/form/radio/index.js.map +1 -1
- package/cjs/form/search/index.d.ts +1 -0
- package/cjs/form/search/index.js +4 -1
- package/cjs/form/search/index.js.map +1 -1
- package/cjs/form/{Select.d.ts → select/Select.d.ts} +1 -1
- package/cjs/form/{Select.js → select/Select.js} +4 -4
- package/cjs/form/select/Select.js.map +1 -0
- package/cjs/form/select/index.d.ts +1 -0
- package/cjs/form/select/index.js +10 -0
- package/cjs/form/select/index.js.map +1 -0
- package/cjs/form/{Switch.d.ts → switch/Switch.d.ts} +1 -1
- package/cjs/form/{Switch.js → switch/Switch.js} +5 -5
- package/cjs/form/switch/Switch.js.map +1 -0
- package/cjs/form/switch/index.d.ts +1 -0
- package/cjs/form/switch/index.js +10 -0
- package/cjs/form/switch/index.js.map +1 -0
- package/{esm/form → cjs/form/textarea}/Textarea.d.ts +1 -1
- package/cjs/form/{Textarea.js → textarea/Textarea.js} +7 -7
- package/cjs/form/textarea/Textarea.js.map +1 -0
- package/cjs/form/{TextareaCounter.js → textarea/TextareaCounter.js} +2 -2
- package/cjs/form/textarea/TextareaCounter.js.map +1 -0
- package/cjs/form/textarea/index.d.ts +1 -0
- package/cjs/form/textarea/index.js +10 -0
- package/cjs/form/textarea/index.js.map +1 -0
- package/cjs/form/{TextField.d.ts → textfield/TextField.d.ts} +1 -1
- package/cjs/form/{TextField.js → textfield/TextField.js} +4 -4
- package/cjs/form/textfield/TextField.js.map +1 -0
- package/cjs/form/textfield/index.d.ts +1 -0
- package/cjs/form/textfield/index.js +10 -0
- package/cjs/form/textfield/index.js.map +1 -0
- package/cjs/form/useFormField.js +1 -1
- package/cjs/guide-panel/index.d.ts +1 -1
- package/cjs/guide-panel/index.js +3 -2
- package/cjs/guide-panel/index.js.map +1 -1
- package/cjs/help-text/index.d.ts +1 -2
- package/cjs/help-text/index.js +1 -0
- package/cjs/help-text/index.js.map +1 -1
- package/cjs/index.d.ts +54 -40
- package/cjs/index.js +127 -54
- package/cjs/index.js.map +1 -1
- package/cjs/internal-header/index.d.ts +4 -4
- package/cjs/internal-header/index.js +10 -1
- package/cjs/internal-header/index.js.map +1 -1
- package/cjs/layout/bleed/Bleed.d.ts +1 -0
- package/cjs/layout/bleed/Bleed.js +1 -0
- package/cjs/layout/bleed/Bleed.js.map +1 -1
- package/cjs/layout/bleed/index.d.ts +1 -1
- package/cjs/layout/bleed/index.js +5 -1
- package/cjs/layout/bleed/index.js.map +1 -1
- package/cjs/layout/box/Box.d.ts +1 -0
- package/cjs/layout/box/Box.js +1 -0
- package/cjs/layout/box/Box.js.map +1 -1
- package/cjs/layout/box/index.d.ts +1 -1
- package/cjs/layout/box/index.js +5 -1
- package/cjs/layout/box/index.js.map +1 -1
- package/cjs/layout/grid/index.js +1 -0
- package/cjs/layout/grid/index.js.map +1 -1
- package/cjs/layout/page/index.d.ts +1 -1
- package/cjs/layout/page/index.js +4 -1
- package/cjs/layout/page/index.js.map +1 -1
- package/cjs/layout/page/parts/PageBlock.d.ts +1 -0
- package/cjs/layout/page/parts/PageBlock.js +1 -0
- package/cjs/layout/page/parts/PageBlock.js.map +1 -1
- package/cjs/layout/responsive/index.js +1 -0
- package/cjs/layout/responsive/index.js.map +1 -1
- package/cjs/layout/sidemal-test/Filter.js +4 -4
- package/cjs/layout/sidemal-test/Filter.js.map +1 -1
- package/cjs/layout/stack/HStack.d.ts +1 -0
- package/cjs/layout/stack/HStack.js +1 -0
- package/cjs/layout/stack/HStack.js.map +1 -1
- package/cjs/layout/stack/Spacer.d.ts +1 -0
- package/cjs/layout/stack/Spacer.js +1 -0
- package/cjs/layout/stack/Spacer.js.map +1 -1
- package/cjs/layout/stack/Stack.d.ts +1 -0
- package/cjs/layout/stack/Stack.js +1 -0
- package/cjs/layout/stack/Stack.js.map +1 -1
- package/cjs/layout/stack/VStack.d.ts +1 -0
- package/cjs/layout/stack/VStack.js +1 -0
- package/cjs/layout/stack/VStack.js.map +1 -1
- package/cjs/layout/stack/index.d.ts +4 -4
- package/cjs/layout/stack/index.js +8 -4
- package/cjs/layout/stack/index.js.map +1 -1
- package/cjs/link/index.d.ts +1 -2
- package/cjs/link/index.js +1 -0
- package/cjs/link/index.js.map +1 -1
- package/cjs/link-panel/LinkPanelDescription.d.ts +1 -0
- package/cjs/link-panel/LinkPanelDescription.js +1 -0
- package/cjs/link-panel/LinkPanelDescription.js.map +1 -1
- package/cjs/link-panel/LinkPanelTitle.d.ts +1 -0
- package/cjs/link-panel/LinkPanelTitle.js +1 -0
- package/cjs/link-panel/LinkPanelTitle.js.map +1 -1
- package/cjs/link-panel/index.d.ts +3 -2
- package/cjs/link-panel/index.js +6 -1
- package/cjs/link-panel/index.js.map +1 -1
- package/cjs/list/index.d.ts +1 -0
- package/cjs/list/index.js +4 -1
- package/cjs/list/index.js.map +1 -1
- package/cjs/loader/index.js +1 -0
- package/cjs/loader/index.js.map +1 -1
- package/cjs/modal/Modal.js +5 -5
- package/cjs/modal/Modal.js.map +1 -1
- package/cjs/modal/ModalUtils.d.ts +1 -1
- package/cjs/modal/ModalUtils.js +4 -2
- package/cjs/modal/ModalUtils.js.map +1 -1
- package/cjs/modal/index.d.ts +3 -3
- package/cjs/modal/index.js +8 -1
- package/cjs/modal/index.js.map +1 -1
- package/cjs/modal/types.d.ts +14 -3
- package/cjs/modal/types.test-d.d.ts +1 -0
- package/cjs/modal/types.test-d.js +67 -0
- package/cjs/modal/types.test-d.js.map +1 -0
- package/cjs/pagination/index.d.ts +1 -0
- package/cjs/pagination/index.js +4 -1
- package/cjs/pagination/index.js.map +1 -1
- package/cjs/popover/index.d.ts +1 -1
- package/cjs/popover/index.js +4 -1
- package/cjs/popover/index.js.map +1 -1
- package/cjs/{overlays/portal → portal}/Portal.d.ts +1 -1
- package/cjs/{overlays/portal → portal}/Portal.js +3 -3
- package/cjs/portal/Portal.js.map +1 -0
- package/cjs/portal/index.d.ts +1 -0
- package/cjs/portal/index.js +10 -0
- package/cjs/portal/index.js.map +1 -0
- package/cjs/provider/index.d.ts +1 -1
- package/cjs/provider/index.js +2 -2
- package/cjs/provider/index.js.map +1 -1
- package/cjs/read-more/index.d.ts +1 -2
- package/cjs/read-more/index.js +1 -0
- package/cjs/read-more/index.js.map +1 -1
- package/cjs/skeleton/index.d.ts +1 -2
- package/cjs/skeleton/index.js +1 -0
- package/cjs/skeleton/index.js.map +1 -1
- package/cjs/stepper/index.d.ts +1 -0
- package/cjs/stepper/index.js +4 -1
- package/cjs/stepper/index.js.map +1 -1
- package/cjs/table/index.d.ts +7 -7
- package/cjs/table/index.js +16 -1
- package/cjs/table/index.js.map +1 -1
- package/cjs/tabs/index.d.ts +3 -3
- package/cjs/tabs/index.js +8 -1
- package/cjs/tabs/index.js.map +1 -1
- package/cjs/tag/index.js +1 -0
- package/cjs/tag/index.js.map +1 -1
- package/cjs/timeline/index.d.ts +5 -6
- package/cjs/timeline/index.js +10 -1
- package/cjs/timeline/index.js.map +1 -1
- package/cjs/toggle-group/ToggleGroup.d.ts +3 -3
- package/cjs/toggle-group/ToggleGroup.js.map +1 -1
- package/cjs/toggle-group/ToggleItem.d.ts +2 -2
- package/cjs/toggle-group/index.d.ts +1 -1
- package/cjs/toggle-group/index.js +4 -1
- package/cjs/toggle-group/index.js.map +1 -1
- package/cjs/tooltip/Tooltip.js +2 -2
- package/cjs/tooltip/Tooltip.js.map +1 -1
- package/cjs/tooltip/index.js +1 -0
- package/cjs/tooltip/index.js.map +1 -1
- package/cjs/typography/index.js +1 -0
- package/cjs/typography/index.js.map +1 -1
- package/cjs/util/debounce.js +1 -0
- package/cjs/util/debounce.js.map +1 -1
- package/cjs/util/hooks/useClientLayoutEffect.js +1 -0
- package/cjs/util/hooks/useClientLayoutEffect.js.map +1 -1
- package/cjs/util/hooks/useEventListener.js +1 -0
- package/cjs/util/hooks/useEventListener.js.map +1 -1
- package/cjs/util/hooks/useId.js +1 -0
- package/cjs/util/hooks/useId.js.map +1 -1
- package/cjs/util/index.d.ts +2 -2
- package/cjs/util/index.js +3 -16
- package/cjs/util/index.js.map +1 -1
- package/cjs/util/omit.d.ts +1 -1
- package/cjs/util/omit.js +5 -3
- package/cjs/util/omit.js.map +1 -1
- package/esm/accordion/index.d.ts +3 -0
- package/esm/accordion/index.js +4 -0
- package/esm/accordion/index.js.map +1 -1
- package/esm/alert/index.d.ts +1 -2
- package/esm/alert/index.js +1 -0
- package/esm/alert/index.js.map +1 -1
- package/esm/button/index.d.ts +1 -2
- package/esm/button/index.js +1 -0
- package/esm/button/index.js.map +1 -1
- package/esm/chat/Bubble.d.ts +2 -2
- package/esm/chat/index.d.ts +1 -0
- package/esm/chat/index.js +2 -0
- package/esm/chat/index.js.map +1 -1
- package/esm/chips/Chips.d.ts +4 -4
- package/esm/chips/Removable.d.ts +2 -2
- package/esm/chips/Toggle.d.ts +2 -2
- package/esm/chips/index.d.ts +2 -0
- package/esm/chips/index.js +3 -0
- package/esm/chips/index.js.map +1 -1
- package/esm/copybutton/index.js +1 -0
- package/esm/copybutton/index.js.map +1 -1
- package/esm/date/datepicker/index.d.ts +4 -0
- package/esm/date/datepicker/index.js +6 -0
- package/esm/date/datepicker/index.js.map +1 -0
- package/esm/date/datepicker/parts/DropdownCaption.js +1 -1
- package/esm/date/monthpicker/MonthCaption.js +1 -1
- package/esm/date/monthpicker/index.d.ts +5 -0
- package/esm/date/monthpicker/index.js +6 -0
- package/esm/date/monthpicker/index.js.map +1 -0
- package/esm/dropdown/Dropdown.d.ts +2 -2
- package/esm/dropdown/Dropdown.js.map +1 -1
- package/esm/dropdown/Menu/index.d.ts +3 -3
- package/esm/dropdown/Toggle.d.ts +3 -3
- package/esm/dropdown/Toggle.js +2 -2
- package/esm/dropdown/Toggle.js.map +1 -1
- package/esm/dropdown/index.d.ts +8 -0
- package/esm/dropdown/index.js +9 -0
- package/esm/dropdown/index.js.map +1 -1
- package/esm/expansion-card/ExpansionCardDescription.d.ts +1 -0
- package/esm/expansion-card/ExpansionCardDescription.js +1 -0
- package/esm/expansion-card/ExpansionCardDescription.js.map +1 -1
- package/esm/expansion-card/ExpansionCardTitle.d.ts +1 -0
- package/esm/expansion-card/ExpansionCardTitle.js +1 -0
- package/esm/expansion-card/ExpansionCardTitle.js.map +1 -1
- package/esm/expansion-card/index.d.ts +4 -0
- package/esm/expansion-card/index.js +5 -0
- package/esm/expansion-card/index.js.map +1 -1
- package/esm/form/checkbox/CheckboxGroup.d.ts +1 -1
- package/esm/form/checkbox/CheckboxGroup.js +2 -1
- package/esm/form/checkbox/CheckboxGroup.js.map +1 -1
- package/esm/form/checkbox/index.js +1 -0
- package/esm/form/checkbox/index.js.map +1 -1
- package/esm/form/combobox/index.d.ts +1 -1
- package/esm/form/combobox/index.js +2 -1
- package/esm/form/combobox/index.js.map +1 -1
- package/esm/form/{ConfirmationPanel.d.ts → confirmation-panel/ConfirmationPanel.d.ts} +1 -1
- package/esm/form/{ConfirmationPanel.js → confirmation-panel/ConfirmationPanel.js} +4 -4
- package/esm/form/confirmation-panel/ConfirmationPanel.js.map +1 -0
- package/esm/form/confirmation-panel/index.d.ts +1 -0
- package/esm/form/confirmation-panel/index.js +3 -0
- package/esm/form/confirmation-panel/index.js.map +1 -0
- package/esm/form/error-summary/index.d.ts +2 -2
- package/esm/form/error-summary/index.js +3 -1
- package/esm/form/error-summary/index.js.map +1 -1
- package/esm/form/{Fieldset → fieldset}/Fieldset.js.map +1 -1
- package/esm/form/{Fieldset → fieldset}/context.js.map +1 -1
- package/esm/form/{Fieldset → fieldset}/index.d.ts +0 -1
- package/esm/form/fieldset/index.js +3 -0
- package/esm/form/fieldset/index.js.map +1 -0
- package/esm/form/{Fieldset → fieldset}/useFieldset.js.map +1 -1
- package/esm/form/radio/RadioGroup.d.ts +1 -1
- package/esm/form/radio/RadioGroup.js +2 -1
- package/esm/form/radio/RadioGroup.js.map +1 -1
- package/esm/form/radio/index.js +1 -0
- package/esm/form/radio/index.js.map +1 -1
- package/esm/form/search/index.d.ts +1 -0
- package/esm/form/search/index.js +2 -0
- package/esm/form/search/index.js.map +1 -1
- package/esm/form/{Select.d.ts → select/Select.d.ts} +1 -1
- package/esm/form/{Select.js → select/Select.js} +4 -4
- package/esm/form/select/Select.js.map +1 -0
- package/esm/form/select/index.d.ts +1 -0
- package/esm/form/select/index.js +3 -0
- package/esm/form/select/index.js.map +1 -0
- package/esm/form/{Switch.d.ts → switch/Switch.d.ts} +1 -1
- package/esm/form/{Switch.js → switch/Switch.js} +5 -5
- package/esm/form/switch/Switch.js.map +1 -0
- package/esm/form/switch/index.d.ts +1 -0
- package/esm/form/switch/index.js +3 -0
- package/esm/form/switch/index.js.map +1 -0
- package/{cjs/form → esm/form/textarea}/Textarea.d.ts +1 -1
- package/esm/form/{Textarea.js → textarea/Textarea.js} +7 -7
- package/esm/form/textarea/Textarea.js.map +1 -0
- package/esm/form/{TextareaCounter.js → textarea/TextareaCounter.js} +2 -2
- package/esm/form/textarea/TextareaCounter.js.map +1 -0
- package/esm/form/textarea/index.d.ts +1 -0
- package/esm/form/textarea/index.js +3 -0
- package/esm/form/textarea/index.js.map +1 -0
- package/esm/form/{TextField.d.ts → textfield/TextField.d.ts} +1 -1
- package/esm/form/{TextField.js → textfield/TextField.js} +4 -4
- package/esm/form/textfield/TextField.js.map +1 -0
- package/esm/form/textfield/index.d.ts +1 -0
- package/esm/form/textfield/index.js +3 -0
- package/esm/form/textfield/index.js.map +1 -0
- package/esm/form/useFormField.js +1 -1
- package/esm/guide-panel/index.d.ts +1 -1
- package/esm/guide-panel/index.js +2 -1
- package/esm/guide-panel/index.js.map +1 -1
- package/esm/help-text/index.d.ts +1 -2
- package/esm/help-text/index.js +1 -0
- package/esm/help-text/index.js.map +1 -1
- package/esm/index.d.ts +54 -40
- package/esm/index.js +54 -40
- package/esm/index.js.map +1 -1
- package/esm/internal-header/index.d.ts +4 -4
- package/esm/internal-header/index.js +5 -0
- package/esm/internal-header/index.js.map +1 -1
- package/esm/layout/bleed/Bleed.d.ts +1 -0
- package/esm/layout/bleed/Bleed.js +1 -0
- package/esm/layout/bleed/Bleed.js.map +1 -1
- package/esm/layout/bleed/index.d.ts +1 -1
- package/esm/layout/bleed/index.js +2 -1
- package/esm/layout/bleed/index.js.map +1 -1
- package/esm/layout/box/Box.d.ts +1 -0
- package/esm/layout/box/Box.js +1 -0
- package/esm/layout/box/Box.js.map +1 -1
- package/esm/layout/box/index.d.ts +1 -1
- package/esm/layout/box/index.js +2 -1
- package/esm/layout/box/index.js.map +1 -1
- package/esm/layout/grid/index.js +1 -0
- package/esm/layout/grid/index.js.map +1 -1
- package/esm/layout/page/index.d.ts +1 -1
- package/esm/layout/page/index.js +2 -0
- package/esm/layout/page/index.js.map +1 -1
- package/esm/layout/page/parts/PageBlock.d.ts +1 -0
- package/esm/layout/page/parts/PageBlock.js +1 -0
- package/esm/layout/page/parts/PageBlock.js.map +1 -1
- package/esm/layout/responsive/index.js +1 -0
- package/esm/layout/responsive/index.js.map +1 -1
- package/esm/layout/sidemal-test/Filter.js +1 -1
- package/esm/layout/sidemal-test/Filter.js.map +1 -1
- package/esm/layout/stack/HStack.d.ts +1 -0
- package/esm/layout/stack/HStack.js +1 -0
- package/esm/layout/stack/HStack.js.map +1 -1
- package/esm/layout/stack/Spacer.d.ts +1 -0
- package/esm/layout/stack/Spacer.js +1 -0
- package/esm/layout/stack/Spacer.js.map +1 -1
- package/esm/layout/stack/Stack.d.ts +1 -0
- package/esm/layout/stack/Stack.js +1 -0
- package/esm/layout/stack/Stack.js.map +1 -1
- package/esm/layout/stack/VStack.d.ts +1 -0
- package/esm/layout/stack/VStack.js +1 -0
- package/esm/layout/stack/VStack.js.map +1 -1
- package/esm/layout/stack/index.d.ts +4 -4
- package/esm/layout/stack/index.js +5 -4
- package/esm/layout/stack/index.js.map +1 -1
- package/esm/link/index.d.ts +1 -2
- package/esm/link/index.js +1 -0
- package/esm/link/index.js.map +1 -1
- package/esm/link-panel/LinkPanelDescription.d.ts +1 -0
- package/esm/link-panel/LinkPanelDescription.js +1 -0
- package/esm/link-panel/LinkPanelDescription.js.map +1 -1
- package/esm/link-panel/LinkPanelTitle.d.ts +1 -0
- package/esm/link-panel/LinkPanelTitle.js +1 -0
- package/esm/link-panel/LinkPanelTitle.js.map +1 -1
- package/esm/link-panel/index.d.ts +3 -2
- package/esm/link-panel/index.js +3 -0
- package/esm/link-panel/index.js.map +1 -1
- package/esm/list/index.d.ts +1 -0
- package/esm/list/index.js +2 -0
- package/esm/list/index.js.map +1 -1
- package/esm/loader/index.js +1 -0
- package/esm/loader/index.js.map +1 -1
- package/esm/modal/Modal.js +4 -4
- package/esm/modal/Modal.js.map +1 -1
- package/esm/modal/ModalUtils.d.ts +1 -1
- package/esm/modal/ModalUtils.js +4 -2
- package/esm/modal/ModalUtils.js.map +1 -1
- package/esm/modal/index.d.ts +3 -3
- package/esm/modal/index.js +4 -0
- package/esm/modal/index.js.map +1 -1
- package/esm/modal/types.d.ts +14 -3
- package/esm/modal/types.test-d.d.ts +1 -0
- package/esm/modal/types.test-d.js +65 -0
- package/esm/modal/types.test-d.js.map +1 -0
- package/esm/pagination/index.d.ts +1 -0
- package/esm/pagination/index.js +2 -0
- package/esm/pagination/index.js.map +1 -1
- package/esm/popover/index.d.ts +1 -1
- package/esm/popover/index.js +2 -0
- package/esm/popover/index.js.map +1 -1
- package/esm/{overlays/portal → portal}/Portal.d.ts +1 -1
- package/esm/{overlays/portal → portal}/Portal.js +2 -2
- package/esm/portal/Portal.js.map +1 -0
- package/esm/portal/index.d.ts +1 -0
- package/esm/portal/index.js +3 -0
- package/esm/portal/index.js.map +1 -0
- package/esm/provider/index.d.ts +1 -1
- package/esm/provider/index.js +2 -1
- package/esm/provider/index.js.map +1 -1
- package/esm/read-more/index.d.ts +1 -2
- package/esm/read-more/index.js +1 -0
- package/esm/read-more/index.js.map +1 -1
- package/esm/skeleton/index.d.ts +1 -2
- package/esm/skeleton/index.js +1 -0
- package/esm/skeleton/index.js.map +1 -1
- package/esm/stepper/index.d.ts +1 -0
- package/esm/stepper/index.js +2 -0
- package/esm/stepper/index.js.map +1 -1
- package/esm/table/index.d.ts +7 -7
- package/esm/table/index.js +8 -0
- package/esm/table/index.js.map +1 -1
- package/esm/tabs/index.d.ts +3 -3
- package/esm/tabs/index.js +4 -0
- package/esm/tabs/index.js.map +1 -1
- package/esm/tag/index.js +1 -0
- package/esm/tag/index.js.map +1 -1
- package/esm/timeline/index.d.ts +5 -6
- package/esm/timeline/index.js +5 -0
- package/esm/timeline/index.js.map +1 -1
- package/esm/toggle-group/ToggleGroup.d.ts +3 -3
- package/esm/toggle-group/ToggleGroup.js.map +1 -1
- package/esm/toggle-group/ToggleItem.d.ts +2 -2
- package/esm/toggle-group/index.d.ts +1 -1
- package/esm/toggle-group/index.js +2 -0
- package/esm/toggle-group/index.js.map +1 -1
- package/esm/tooltip/Tooltip.js +1 -1
- package/esm/tooltip/Tooltip.js.map +1 -1
- package/esm/tooltip/index.js +1 -0
- package/esm/tooltip/index.js.map +1 -1
- package/esm/typography/index.js +1 -0
- package/esm/typography/index.js.map +1 -1
- package/esm/util/debounce.js +1 -0
- package/esm/util/debounce.js.map +1 -1
- package/esm/util/hooks/useClientLayoutEffect.js +1 -0
- package/esm/util/hooks/useClientLayoutEffect.js.map +1 -1
- package/esm/util/hooks/useEventListener.js +1 -0
- package/esm/util/hooks/useEventListener.js.map +1 -1
- package/esm/util/hooks/useId.js +1 -0
- package/esm/util/hooks/useId.js.map +1 -1
- package/esm/util/index.d.ts +2 -2
- package/esm/util/index.js +1 -1
- package/esm/util/index.js.map +1 -1
- package/esm/util/omit.d.ts +1 -1
- package/esm/util/omit.js +5 -3
- package/esm/util/omit.js.map +1 -1
- package/package.json +512 -12
- package/src/accordion/index.ts +13 -0
- package/src/alert/index.ts +2 -2
- package/src/button/index.ts +2 -2
- package/src/chat/Bubble.tsx +2 -2
- package/src/chat/chat.stories.tsx +2 -2
- package/src/chat/index.ts +2 -0
- package/src/chips/Chips.tsx +4 -4
- package/src/chips/Removable.tsx +2 -2
- package/src/chips/Toggle.tsx +2 -2
- package/src/chips/chips.stories.tsx +39 -1
- package/src/chips/index.ts +6 -0
- package/src/copybutton/copy-button.stories.tsx +49 -0
- package/src/copybutton/index.ts +1 -0
- package/src/date/datepicker/datepicker.stories.tsx +99 -0
- package/src/date/datepicker/datepicker.test.tsx +5 -3
- package/src/date/datepicker/index.ts +13 -0
- package/src/date/datepicker/parts/DropdownCaption.tsx +1 -1
- package/src/date/hooks/useRangeDatepicker.test.tsx +5 -3
- package/src/date/monthpicker/MonthCaption.tsx +1 -1
- package/src/date/monthpicker/index.ts +9 -0
- package/src/date/monthpicker/monthpicker.stories.tsx +27 -1
- package/src/date/utils/__tests__/check-dates.test.ts +1 -0
- package/src/date/utils/__tests__/dates-disabled.test.ts +1 -0
- package/src/date/utils/__tests__/format-dates.test.ts +1 -0
- package/src/date/utils/__tests__/get-dates.test.ts +1 -0
- package/src/date/utils/__tests__/get-initial-year.test.ts +1 -0
- package/src/date/utils/__tests__/get-month-weeks.test.ts +1 -0
- package/src/date/utils/__tests__/is-match.test.ts +1 -0
- package/src/date/utils/__tests__/parse-dates.test.ts +13 -3
- package/src/dropdown/Dropdown.tsx +2 -4
- package/src/dropdown/Menu/index.tsx +3 -3
- package/src/dropdown/Toggle.tsx +39 -40
- package/src/dropdown/index.ts +9 -0
- package/src/expansion-card/ExpansionCardDescription.tsx +2 -0
- package/src/expansion-card/ExpansionCardTitle.tsx +2 -0
- package/src/expansion-card/expansion-card.stories.tsx +32 -1
- package/src/expansion-card/index.ts +5 -0
- package/src/form/checkbox/Checkbox.test.tsx +6 -4
- package/src/form/checkbox/CheckboxGroup.tsx +2 -1
- package/src/form/checkbox/checkbox.stories.tsx +58 -2
- package/src/form/checkbox/index.ts +1 -0
- package/src/form/combobox/combobox.stories.tsx +3 -1
- package/src/form/combobox/combobox.test.tsx +6 -5
- package/src/form/combobox/index.ts +2 -1
- package/src/form/{ConfirmationPanel.test.tsx → confirmation-panel/ConfirmationPanel.test.tsx} +1 -0
- package/src/form/{ConfirmationPanel.tsx → confirmation-panel/ConfirmationPanel.tsx} +4 -4
- package/src/form/{stories → confirmation-panel}/confirmation-panel.stories.tsx +33 -2
- package/src/form/confirmation-panel/index.ts +5 -0
- package/src/form/error-summary/index.ts +9 -2
- package/src/form/{stories → fieldset}/fieldset.stories.tsx +2 -2
- package/src/form/{Fieldset → fieldset}/index.ts +1 -1
- package/src/form/radio/Radio.test.tsx +9 -3
- package/src/form/radio/RadioGroup.tsx +2 -1
- package/src/form/radio/index.ts +1 -0
- package/src/form/radio/radio.stories.tsx +51 -2
- package/src/form/search/index.ts +6 -0
- package/src/form/search/search.stories.tsx +53 -2
- package/src/form/{Select.tsx → select/Select.tsx} +4 -4
- package/src/form/select/index.ts +2 -0
- package/src/form/{stories → select}/select.stories.tsx +45 -2
- package/src/form/{Switch.tsx → switch/Switch.tsx} +5 -5
- package/src/form/switch/index.ts +2 -0
- package/src/form/{stories → switch}/switch.stories.tsx +1 -1
- package/src/form/{Textarea.tsx → textarea/Textarea.tsx} +7 -7
- package/src/form/{TextareaCounter.tsx → textarea/TextareaCounter.tsx} +2 -2
- package/src/form/textarea/index.ts +2 -0
- package/src/form/{stories → textarea}/textarea.stories.tsx +30 -1
- package/src/form/{TextField.tsx → textfield/TextField.tsx} +4 -4
- package/src/form/textfield/index.ts +2 -0
- package/src/form/{stories → textfield}/text-field.stories.tsx +45 -2
- package/src/form/useFormField.ts +1 -1
- package/src/guide-panel/guidepanel.stories.tsx +3 -1
- package/src/guide-panel/index.ts +2 -1
- package/src/help-text/index.ts +2 -2
- package/src/index.ts +143 -40
- package/src/internal-header/index.ts +17 -4
- package/src/layout/bleed/Bleed.tsx +2 -0
- package/src/layout/bleed/index.ts +2 -1
- package/src/layout/box/Box.tsx +2 -0
- package/src/layout/box/index.ts +2 -1
- package/src/layout/grid/index.ts +1 -0
- package/src/layout/page/index.ts +2 -1
- package/src/layout/page/parts/PageBlock.tsx +2 -0
- package/src/layout/responsive/index.ts +1 -0
- package/src/layout/sidemal-test/Filter.tsx +1 -1
- package/src/layout/stack/HStack.tsx +2 -0
- package/src/layout/stack/Spacer.tsx +2 -0
- package/src/layout/stack/Stack.tsx +2 -0
- package/src/layout/stack/VStack.tsx +2 -0
- package/src/layout/stack/index.ts +5 -4
- package/src/link/index.ts +2 -2
- package/src/link/stories/link.stories.tsx +1 -1
- package/src/link-panel/LinkPanelDescription.tsx +2 -0
- package/src/link-panel/LinkPanelTitle.tsx +2 -0
- package/src/link-panel/index.ts +10 -2
- package/src/list/index.ts +2 -0
- package/src/loader/index.ts +1 -0
- package/src/modal/Modal.test.tsx +1 -0
- package/src/modal/Modal.tsx +4 -4
- package/src/modal/ModalUtils.ts +3 -1
- package/src/modal/index.ts +4 -3
- package/src/modal/modal.stories.tsx +54 -0
- package/src/modal/types.test-d.ts +78 -0
- package/src/modal/types.ts +17 -3
- package/src/pagination/index.ts +5 -0
- package/src/pagination/steps.test.ts +9 -8
- package/src/popover/Popover.test.tsx +9 -8
- package/src/popover/index.ts +5 -1
- package/src/popover/popover.stories.tsx +1 -1
- package/src/{overlays/portal → portal}/Portal.stories.tsx +8 -5
- package/src/{overlays/portal → portal}/Portal.tsx +3 -3
- package/src/portal/index.ts +2 -0
- package/src/provider/index.ts +2 -1
- package/src/read-more/index.ts +2 -2
- package/src/skeleton/index.ts +2 -2
- package/src/skeleton/skeleton.stories.tsx +1 -1
- package/src/stepper/index.ts +2 -0
- package/src/table/index.ts +14 -7
- package/src/table/stories/table-1.stories.tsx +1 -1
- package/src/table/stories/table-2-expandable.stories.tsx +1 -1
- package/src/tabs/Tabs.test.tsx +1 -0
- package/src/tabs/index.ts +4 -3
- package/src/tag/index.ts +1 -0
- package/src/timeline/index.ts +9 -6
- package/src/toggle-group/ToggleGroup.stories.tsx +1 -1
- package/src/toggle-group/ToggleGroup.test.tsx +1 -0
- package/src/toggle-group/ToggleGroup.tsx +3 -3
- package/src/toggle-group/ToggleItem.tsx +2 -2
- package/src/toggle-group/index.ts +5 -1
- package/src/tooltip/Tooltip.test.tsx +5 -4
- package/src/tooltip/Tooltip.tsx +1 -1
- package/src/tooltip/index.ts +1 -0
- package/src/tooltip/tooltip.stories.tsx +1 -1
- package/src/typography/index.ts +1 -0
- package/src/util/__tests__/Slot.test.tsx +7 -6
- package/src/util/__tests__/useMedia.test.tsx +1 -0
- package/src/util/debounce.ts +1 -0
- package/src/util/hooks/useClientLayoutEffect.ts +2 -0
- package/src/util/hooks/useEventListener.ts +2 -0
- package/src/util/hooks/useId.ts +2 -0
- package/src/util/index.ts +2 -2
- package/src/util/omit.ts +8 -4
- package/cjs/date/index.d.ts +0 -7
- package/cjs/date/index.js +0 -15
- package/cjs/date/index.js.map +0 -1
- package/cjs/form/ConfirmationPanel.js.map +0 -1
- package/cjs/form/Fieldset/index.js.map +0 -1
- package/cjs/form/Select.js.map +0 -1
- package/cjs/form/Switch.js.map +0 -1
- package/cjs/form/TextField.js.map +0 -1
- package/cjs/form/Textarea.js.map +0 -1
- package/cjs/form/TextareaCounter.js.map +0 -1
- package/cjs/form/index.d.ts +0 -11
- package/cjs/form/index.js +0 -32
- package/cjs/form/index.js.map +0 -1
- package/cjs/overlays/index.d.ts +0 -2
- package/cjs/overlays/index.js +0 -6
- package/cjs/overlays/index.js.map +0 -1
- package/cjs/overlays/portal/Portal.js.map +0 -1
- package/esm/date/index.d.ts +0 -7
- package/esm/date/index.js +0 -4
- package/esm/date/index.js.map +0 -1
- package/esm/form/ConfirmationPanel.js.map +0 -1
- package/esm/form/Fieldset/index.js +0 -3
- package/esm/form/Fieldset/index.js.map +0 -1
- package/esm/form/Select.js.map +0 -1
- package/esm/form/Switch.js.map +0 -1
- package/esm/form/TextField.js.map +0 -1
- package/esm/form/Textarea.js.map +0 -1
- package/esm/form/TextareaCounter.js.map +0 -1
- package/esm/form/index.d.ts +0 -11
- package/esm/form/index.js +0 -12
- package/esm/form/index.js.map +0 -1
- package/esm/overlays/index.d.ts +0 -2
- package/esm/overlays/index.js +0 -2
- package/esm/overlays/index.js.map +0 -1
- package/esm/overlays/portal/Portal.js.map +0 -1
- package/src/date/index.ts +0 -17
- package/src/form/index.ts +0 -24
- package/src/overlays/index.ts +0 -2
- /package/cjs/form/{Fieldset → fieldset}/Fieldset.d.ts +0 -0
- /package/cjs/form/{Fieldset → fieldset}/Fieldset.js +0 -0
- /package/cjs/form/{Fieldset → fieldset}/context.d.ts +0 -0
- /package/cjs/form/{Fieldset → fieldset}/context.js +0 -0
- /package/cjs/form/{Fieldset → fieldset}/useFieldset.d.ts +0 -0
- /package/cjs/form/{Fieldset → fieldset}/useFieldset.js +0 -0
- /package/cjs/form/{TextareaCounter.d.ts → textarea/TextareaCounter.d.ts} +0 -0
- /package/esm/form/{Fieldset → fieldset}/Fieldset.d.ts +0 -0
- /package/esm/form/{Fieldset → fieldset}/Fieldset.js +0 -0
- /package/esm/form/{Fieldset → fieldset}/context.d.ts +0 -0
- /package/esm/form/{Fieldset → fieldset}/context.js +0 -0
- /package/esm/form/{Fieldset → fieldset}/useFieldset.d.ts +0 -0
- /package/esm/form/{Fieldset → fieldset}/useFieldset.js +0 -0
- /package/esm/form/{TextareaCounter.d.ts → textarea/TextareaCounter.d.ts} +0 -0
- /package/src/form/{Fieldset → fieldset}/Fieldset.tsx +0 -0
- /package/src/form/{Fieldset → fieldset}/context.ts +0 -0
- /package/src/form/{Fieldset → fieldset}/useFieldset.ts +0 -0
package/src/link-panel/index.ts
CHANGED
|
@@ -1,2 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
export { type LinkPanelProps } from "./LinkPanel";
|
|
1
|
+
"use client";
|
|
2
|
+
export { default as LinkPanel, type LinkPanelProps } from "./LinkPanel";
|
|
3
|
+
export {
|
|
4
|
+
default as LinkPanelTitle,
|
|
5
|
+
type LinkPanelTitleProps,
|
|
6
|
+
} from "./LinkPanelTitle";
|
|
7
|
+
export {
|
|
8
|
+
default as LinkPanelDescription,
|
|
9
|
+
type LinkPanelDescriptionProps,
|
|
10
|
+
} from "./LinkPanelDescription";
|
package/src/list/index.ts
CHANGED
package/src/loader/index.ts
CHANGED
package/src/modal/Modal.test.tsx
CHANGED
package/src/modal/Modal.tsx
CHANGED
|
@@ -3,7 +3,7 @@ import cl from "clsx";
|
|
|
3
3
|
import React, { forwardRef, useContext, useEffect, useRef } from "react";
|
|
4
4
|
import { createPortal } from "react-dom";
|
|
5
5
|
import { DateContext } from "../date/context";
|
|
6
|
-
import { useProvider } from "../provider";
|
|
6
|
+
import { useProvider } from "../provider/Provider";
|
|
7
7
|
import { Detail, Heading } from "../typography";
|
|
8
8
|
import { composeEventHandlers } from "../util/composeEventHandlers";
|
|
9
9
|
import { useId } from "../util/hooks";
|
|
@@ -98,8 +98,8 @@ export const Modal = forwardRef<HTMLDialogElement, ModalProps>(
|
|
|
98
98
|
const portalNode = useFloatingPortalNode({ root: rootElement });
|
|
99
99
|
|
|
100
100
|
const dateContext = useContext(DateContext);
|
|
101
|
-
const
|
|
102
|
-
if (
|
|
101
|
+
const isNested = useModalContext(false) !== undefined;
|
|
102
|
+
if (isNested && !dateContext) {
|
|
103
103
|
console.error("Modals should not be nested");
|
|
104
104
|
}
|
|
105
105
|
|
|
@@ -130,7 +130,7 @@ export const Modal = forwardRef<HTMLDialogElement, ModalProps>(
|
|
|
130
130
|
}
|
|
131
131
|
}, [modalRef, portalNode, open]);
|
|
132
132
|
|
|
133
|
-
useBodyScrollLock(modalRef, portalNode);
|
|
133
|
+
useBodyScrollLock(modalRef, portalNode, isNested);
|
|
134
134
|
|
|
135
135
|
const isWidthPreset =
|
|
136
136
|
typeof width === "string" && ["small", "medium"].includes(width);
|
package/src/modal/ModalUtils.ts
CHANGED
|
@@ -18,8 +18,10 @@ export const BODY_CLASS = "navds-modal__document-body";
|
|
|
18
18
|
export function useBodyScrollLock(
|
|
19
19
|
modalRef: React.RefObject<HTMLDialogElement>,
|
|
20
20
|
portalNode: HTMLElement | null,
|
|
21
|
+
isNested: boolean,
|
|
21
22
|
) {
|
|
22
23
|
React.useEffect(() => {
|
|
24
|
+
if (isNested) return;
|
|
23
25
|
if (!modalRef.current || !portalNode) return; // We check both to avoid running this twice when not using portal
|
|
24
26
|
if (modalRef.current.open) document.body.classList.add(BODY_CLASS); // In case `open` is true initially
|
|
25
27
|
|
|
@@ -35,5 +37,5 @@ export function useBodyScrollLock(
|
|
|
35
37
|
observer.disconnect();
|
|
36
38
|
document.body.classList.remove(BODY_CLASS); // In case modal is unmounted before it's closed
|
|
37
39
|
};
|
|
38
|
-
}, [modalRef, portalNode]);
|
|
40
|
+
}, [modalRef, portalNode, isNested]);
|
|
39
41
|
}
|
package/src/modal/index.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
export { default as Modal } from "./Modal";
|
|
2
|
-
export { type ModalBodyProps } from "./ModalBody";
|
|
3
|
-
export { type ModalFooterProps } from "./ModalFooter";
|
|
4
|
-
export { type ModalHeaderProps } from "./ModalHeader";
|
|
3
|
+
export { default as ModalBody, type ModalBodyProps } from "./ModalBody";
|
|
4
|
+
export { default as ModalFooter, type ModalFooterProps } from "./ModalFooter";
|
|
5
|
+
export { default as ModalHeader, type ModalHeaderProps } from "./ModalHeader";
|
|
5
6
|
export { type ModalProps } from "./types";
|
|
@@ -339,3 +339,57 @@ ChromaticViewportTesting.parameters = {
|
|
|
339
339
|
},
|
|
340
340
|
},
|
|
341
341
|
};
|
|
342
|
+
|
|
343
|
+
// For testing TS error messages:
|
|
344
|
+
|
|
345
|
+
/* const PropTypeTest = () => {
|
|
346
|
+
return (
|
|
347
|
+
<>
|
|
348
|
+
<Modal header={{ heading: "Label" }}>OK</Modal>
|
|
349
|
+
|
|
350
|
+
<Modal header={{ heading: "Label" }} aria-label="Label">
|
|
351
|
+
OK
|
|
352
|
+
</Modal>
|
|
353
|
+
|
|
354
|
+
<Modal header={{ heading: "Label" }} aria-labelledby="Label">
|
|
355
|
+
OK
|
|
356
|
+
</Modal>
|
|
357
|
+
|
|
358
|
+
<Modal aria-label="Label">OK</Modal>
|
|
359
|
+
|
|
360
|
+
<Modal aria-labelledby="Label">OK</Modal>
|
|
361
|
+
|
|
362
|
+
<Modal aria-label="Label" open onClose={() => null}>
|
|
363
|
+
OK
|
|
364
|
+
</Modal>
|
|
365
|
+
|
|
366
|
+
<Modal>Mangler label</Modal>
|
|
367
|
+
|
|
368
|
+
<Modal open>Mangler onClose eller label</Modal>
|
|
369
|
+
|
|
370
|
+
<Modal open aria-label="Label">
|
|
371
|
+
Mangler onClose
|
|
372
|
+
</Modal>
|
|
373
|
+
|
|
374
|
+
<Modal open onClose={() => null}>
|
|
375
|
+
Mangler label
|
|
376
|
+
</Modal>
|
|
377
|
+
|
|
378
|
+
<Modal header={{ heading: "Label" }} open>
|
|
379
|
+
Mangler onClose
|
|
380
|
+
</Modal>
|
|
381
|
+
|
|
382
|
+
<Modal
|
|
383
|
+
header={{ heading: "Label" }}
|
|
384
|
+
aria-label="Label"
|
|
385
|
+
aria-labelledby="Label"
|
|
386
|
+
>
|
|
387
|
+
For mange labels
|
|
388
|
+
</Modal>
|
|
389
|
+
|
|
390
|
+
<Modal aria-label="Label" aria-labelledby="Label">
|
|
391
|
+
For mange labels
|
|
392
|
+
</Modal>
|
|
393
|
+
</>
|
|
394
|
+
);
|
|
395
|
+
}; */
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { expectTypeOf } from "vitest";
|
|
2
|
+
import { ModalProps } from "./types";
|
|
3
|
+
|
|
4
|
+
test("ModalProps works as intended", () => {
|
|
5
|
+
expectTypeOf({
|
|
6
|
+
header: { heading: "Label" },
|
|
7
|
+
children: "OK",
|
|
8
|
+
}).toMatchTypeOf<ModalProps>();
|
|
9
|
+
|
|
10
|
+
expectTypeOf({
|
|
11
|
+
header: { heading: "Label" },
|
|
12
|
+
"aria-label": "Label",
|
|
13
|
+
children: "OK",
|
|
14
|
+
}).toMatchTypeOf<ModalProps>();
|
|
15
|
+
|
|
16
|
+
expectTypeOf({
|
|
17
|
+
header: { heading: "Label" },
|
|
18
|
+
"aria-labelledby": "Label",
|
|
19
|
+
children: "OK",
|
|
20
|
+
}).toMatchTypeOf<ModalProps>();
|
|
21
|
+
|
|
22
|
+
expectTypeOf({
|
|
23
|
+
"aria-label": "Label",
|
|
24
|
+
children: "OK",
|
|
25
|
+
}).toMatchTypeOf<ModalProps>();
|
|
26
|
+
|
|
27
|
+
expectTypeOf({
|
|
28
|
+
"aria-labelledby": "Label",
|
|
29
|
+
children: "OK",
|
|
30
|
+
}).toMatchTypeOf<ModalProps>();
|
|
31
|
+
|
|
32
|
+
expectTypeOf({
|
|
33
|
+
"aria-label": "Label",
|
|
34
|
+
open: true,
|
|
35
|
+
onClose: () => null,
|
|
36
|
+
children: "OK",
|
|
37
|
+
}).toMatchTypeOf<ModalProps>();
|
|
38
|
+
|
|
39
|
+
expectTypeOf({
|
|
40
|
+
children: "Mangler label",
|
|
41
|
+
}).not.toMatchTypeOf<ModalProps>();
|
|
42
|
+
|
|
43
|
+
expectTypeOf({
|
|
44
|
+
open: true,
|
|
45
|
+
children: "Mangler onClose eller label",
|
|
46
|
+
}).not.toMatchTypeOf<ModalProps>();
|
|
47
|
+
|
|
48
|
+
expectTypeOf({
|
|
49
|
+
open: true,
|
|
50
|
+
"aria-label": "Label",
|
|
51
|
+
children: "Mangler onClose",
|
|
52
|
+
}).not.toMatchTypeOf<ModalProps>();
|
|
53
|
+
|
|
54
|
+
expectTypeOf({
|
|
55
|
+
open: true,
|
|
56
|
+
onClose: () => null,
|
|
57
|
+
children: "Mangler label",
|
|
58
|
+
}).not.toMatchTypeOf<ModalProps>();
|
|
59
|
+
|
|
60
|
+
expectTypeOf({
|
|
61
|
+
header: { heading: "Label" },
|
|
62
|
+
open: true,
|
|
63
|
+
children: "Mangler onClose",
|
|
64
|
+
}).not.toMatchTypeOf<ModalProps>();
|
|
65
|
+
|
|
66
|
+
expectTypeOf({
|
|
67
|
+
header: { heading: "Label" },
|
|
68
|
+
"aria-label": "Label",
|
|
69
|
+
"aria-labelledby": "Label",
|
|
70
|
+
children: "For mange labels",
|
|
71
|
+
}).not.toMatchTypeOf<ModalProps>();
|
|
72
|
+
|
|
73
|
+
expectTypeOf({
|
|
74
|
+
"aria-label": "Label",
|
|
75
|
+
"aria-labelledby": "Label",
|
|
76
|
+
children: "For mange labels",
|
|
77
|
+
}).not.toMatchTypeOf<ModalProps>();
|
|
78
|
+
});
|
package/src/modal/types.ts
CHANGED
|
@@ -81,11 +81,25 @@ interface ModalPropsBase extends React.DialogHTMLAttributes<HTMLDialogElement> {
|
|
|
81
81
|
// Require onClose if you use open & Require either header, aria-labelledby or aria-label
|
|
82
82
|
export type ModalProps = ModalPropsBase &
|
|
83
83
|
(
|
|
84
|
-
| { open
|
|
85
|
-
| {
|
|
84
|
+
| { onClose: ModalPropsBase["onClose"]; open: boolean | undefined }
|
|
85
|
+
| { onClose?: ModalPropsBase["onClose"]; open?: never }
|
|
86
86
|
) &
|
|
87
87
|
(
|
|
88
|
-
| {
|
|
88
|
+
| {
|
|
89
|
+
header: ModalPropsBase["header"];
|
|
90
|
+
"aria-labelledby": string;
|
|
91
|
+
"aria-label"?: never;
|
|
92
|
+
}
|
|
93
|
+
| {
|
|
94
|
+
header: ModalPropsBase["header"];
|
|
95
|
+
"aria-label": string;
|
|
96
|
+
"aria-labelledby"?: never;
|
|
97
|
+
}
|
|
98
|
+
| {
|
|
99
|
+
header: ModalPropsBase["header"];
|
|
100
|
+
"aria-labelledby"?: never;
|
|
101
|
+
"aria-label"?: never;
|
|
102
|
+
}
|
|
89
103
|
| { "aria-labelledby": string; "aria-label"?: never }
|
|
90
104
|
| { "aria-labelledby"?: never; "aria-label": string }
|
|
91
105
|
);
|
package/src/pagination/index.ts
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import faker from "faker";
|
|
2
|
+
import { describe, expect, test } from "vitest";
|
|
2
3
|
import { getSteps } from "./Pagination";
|
|
3
4
|
|
|
4
5
|
describe("getSteps", () => {
|
|
5
|
-
|
|
6
|
+
test("lists all pages when count is <= 7", () => {
|
|
6
7
|
const count = faker.datatype.number({ min: 1, max: 7 });
|
|
7
8
|
expect(getSteps({ page: 1, count })).toEqual(
|
|
8
9
|
Array.from({ length: count }, (_, i) => i + 1),
|
|
9
10
|
);
|
|
10
11
|
});
|
|
11
12
|
|
|
12
|
-
|
|
13
|
+
test("has an end ellipsis when count >= 8", () => {
|
|
13
14
|
const count = faker.datatype.number({ min: 8 });
|
|
14
15
|
const page = faker.datatype.number({ min: 1, max: 4 });
|
|
15
16
|
expect(
|
|
@@ -20,7 +21,7 @@ describe("getSteps", () => {
|
|
|
20
21
|
).toEqual([1, 2, 3, 4, 5, "ellipsis", count]);
|
|
21
22
|
});
|
|
22
23
|
|
|
23
|
-
|
|
24
|
+
test("has a start ellipsis when count - page >= 3", () => {
|
|
24
25
|
const count = faker.datatype.number({ min: 8 });
|
|
25
26
|
const page = faker.datatype.number({ min: count - 3, max: count });
|
|
26
27
|
expect(
|
|
@@ -39,7 +40,7 @@ describe("getSteps", () => {
|
|
|
39
40
|
]);
|
|
40
41
|
});
|
|
41
42
|
|
|
42
|
-
|
|
43
|
+
test("has start & end ellipsis when count is high", () => {
|
|
43
44
|
const count = faker.datatype.number({ min: 9 });
|
|
44
45
|
const page = faker.datatype.number({ min: 5, max: count - 4 });
|
|
45
46
|
expect(
|
|
@@ -50,7 +51,7 @@ describe("getSteps", () => {
|
|
|
50
51
|
).toEqual([1, "ellipsis", page - 1, page, page + 1, "ellipsis", count]);
|
|
51
52
|
});
|
|
52
53
|
|
|
53
|
-
|
|
54
|
+
test("can have a reduced siblingCount", () => {
|
|
54
55
|
const count = faker.datatype.number({ min: 7 });
|
|
55
56
|
const page = faker.datatype.number({ min: 4, max: count - 3 });
|
|
56
57
|
expect(
|
|
@@ -62,7 +63,7 @@ describe("getSteps", () => {
|
|
|
62
63
|
).toEqual([1, "ellipsis", page, "ellipsis", count]);
|
|
63
64
|
});
|
|
64
65
|
|
|
65
|
-
|
|
66
|
+
test("can have an increased siblingCount", () => {
|
|
66
67
|
const count = faker.datatype.number({ min: 11 });
|
|
67
68
|
const page = faker.datatype.number({ min: 6, max: count - 5 });
|
|
68
69
|
expect(
|
|
@@ -84,7 +85,7 @@ describe("getSteps", () => {
|
|
|
84
85
|
]);
|
|
85
86
|
});
|
|
86
87
|
|
|
87
|
-
|
|
88
|
+
test("can have an reduced boundaryCount", () => {
|
|
88
89
|
const count = faker.datatype.number({ min: 7 });
|
|
89
90
|
const page = faker.datatype.number({ min: 4, max: count - 3 });
|
|
90
91
|
expect(
|
|
@@ -96,7 +97,7 @@ describe("getSteps", () => {
|
|
|
96
97
|
).toEqual(["ellipsis", page - 1, page, page + 1, "ellipsis"]);
|
|
97
98
|
});
|
|
98
99
|
|
|
99
|
-
|
|
100
|
+
test("can have an increased boundaryCount", () => {
|
|
100
101
|
const count = faker.datatype.number({ min: 11 });
|
|
101
102
|
const page = faker.datatype.number({ min: 6, max: count - 5 });
|
|
102
103
|
expect(
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { act, fireEvent, screen } from "@testing-library/react";
|
|
2
2
|
import React from "react";
|
|
3
|
+
import { describe, expect, test, vi } from "vitest";
|
|
3
4
|
import { renderWithStyles as render } from "../../tests/utils";
|
|
4
5
|
import Popover from "./Popover";
|
|
5
6
|
|
|
@@ -34,8 +35,8 @@ describe("Popover", () => {
|
|
|
34
35
|
expect(screen.getByTestId("popover-id")).not.toBeVisible();
|
|
35
36
|
});
|
|
36
37
|
|
|
37
|
-
|
|
38
|
-
const fn =
|
|
38
|
+
test("outsideClick", async () => {
|
|
39
|
+
const fn = vi.fn();
|
|
39
40
|
render(
|
|
40
41
|
<div>
|
|
41
42
|
<Popover
|
|
@@ -58,8 +59,8 @@ describe("Popover", () => {
|
|
|
58
59
|
expect(fn).toHaveBeenCalled();
|
|
59
60
|
});
|
|
60
61
|
|
|
61
|
-
|
|
62
|
-
const fn =
|
|
62
|
+
test("escape", async () => {
|
|
63
|
+
const fn = vi.fn();
|
|
63
64
|
const { container } = render(
|
|
64
65
|
<div>
|
|
65
66
|
<Popover
|
|
@@ -83,8 +84,8 @@ describe("Popover", () => {
|
|
|
83
84
|
expect(fn).toHaveBeenCalled();
|
|
84
85
|
});
|
|
85
86
|
|
|
86
|
-
|
|
87
|
-
const fn =
|
|
87
|
+
test("keep open on popover-focus", async () => {
|
|
88
|
+
const fn = vi.fn();
|
|
88
89
|
render(
|
|
89
90
|
<div>
|
|
90
91
|
<Popover
|
|
@@ -106,8 +107,8 @@ describe("Popover", () => {
|
|
|
106
107
|
expect(fn).toHaveBeenCalledTimes(0);
|
|
107
108
|
}, 20000);
|
|
108
109
|
|
|
109
|
-
|
|
110
|
-
const fn =
|
|
110
|
+
test("keep open on popover-click", async () => {
|
|
111
|
+
const fn = vi.fn();
|
|
111
112
|
render(
|
|
112
113
|
<div>
|
|
113
114
|
<Popover
|
package/src/popover/index.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { Box } from "
|
|
3
|
-
import { Provider } from "
|
|
2
|
+
import { Box } from "../layout/box";
|
|
3
|
+
import { Provider } from "../provider";
|
|
4
4
|
import { Portal } from "./Portal";
|
|
5
5
|
|
|
6
6
|
export default {
|
|
@@ -12,7 +12,7 @@ export default {
|
|
|
12
12
|
|
|
13
13
|
export const Default = () => {
|
|
14
14
|
return (
|
|
15
|
-
<Box background="surface-neutral-subtle"
|
|
15
|
+
<Box background="surface-neutral-subtle">
|
|
16
16
|
<h1>In regular DOM tree</h1>
|
|
17
17
|
<p>
|
|
18
18
|
Lorem ipsum dolor sit amet consectetur adipisicing elit. Temporibus
|
|
@@ -65,7 +65,10 @@ export const CustomPortalRootFromProvider = () => {
|
|
|
65
65
|
<p>This is mounted to Tree B, while created inside Tree A</p>
|
|
66
66
|
</Portal>
|
|
67
67
|
</Box>
|
|
68
|
-
<Box
|
|
68
|
+
<Box
|
|
69
|
+
background="surface-alt-3-subtle"
|
|
70
|
+
ref={(el) => el && setPortalContainer(el)}
|
|
71
|
+
>
|
|
69
72
|
<h1>Tree B</h1>
|
|
70
73
|
</Box>
|
|
71
74
|
</Box>
|
|
@@ -75,7 +78,7 @@ export const CustomPortalRootFromProvider = () => {
|
|
|
75
78
|
|
|
76
79
|
export const AsChild = () => {
|
|
77
80
|
return (
|
|
78
|
-
<Box background="surface-neutral-subtle"
|
|
81
|
+
<Box background="surface-neutral-subtle">
|
|
79
82
|
<h1>In regular DOM tree</h1>
|
|
80
83
|
<p>
|
|
81
84
|
Lorem ipsum dolor sit amet consectetur adipisicing elit. Temporibus
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React, { HTMLAttributes, forwardRef } from "react";
|
|
2
2
|
import ReactDOM from "react-dom";
|
|
3
|
-
import { useProvider } from "
|
|
4
|
-
import { Slot } from "
|
|
5
|
-
import { AsChildProps } from "
|
|
3
|
+
import { useProvider } from "../provider/Provider";
|
|
4
|
+
import { Slot } from "../util/Slot";
|
|
5
|
+
import { AsChildProps } from "../util/types";
|
|
6
6
|
|
|
7
7
|
interface PortalBaseProps extends HTMLAttributes<HTMLDivElement> {
|
|
8
8
|
/**
|
package/src/provider/index.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
export { default as Provider, type ProviderProps } from "./Provider";
|
package/src/read-more/index.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
export { type ReadMoreProps } from "./ReadMore";
|
|
1
|
+
"use client";
|
|
2
|
+
export { default as ReadMore, type ReadMoreProps } from "./ReadMore";
|
package/src/skeleton/index.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
export type
|
|
1
|
+
"use client";
|
|
2
|
+
export { default as Skeleton, type SkeletonProps } from "./Skeleton";
|
|
@@ -2,7 +2,7 @@ import React from "react";
|
|
|
2
2
|
import { Skeleton } from ".";
|
|
3
3
|
import { Alert } from "../alert";
|
|
4
4
|
import { Button } from "../button";
|
|
5
|
-
import { Checkbox } from "../form";
|
|
5
|
+
import { Checkbox } from "../form/checkbox";
|
|
6
6
|
import { BodyLong, Heading } from "../typography";
|
|
7
7
|
|
|
8
8
|
export default {
|
package/src/stepper/index.ts
CHANGED
package/src/table/index.ts
CHANGED
|
@@ -1,9 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
export { type
|
|
3
|
-
export {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export { type
|
|
1
|
+
"use client";
|
|
2
|
+
export { default as TableBody, type BodyProps } from "./Body";
|
|
3
|
+
export {
|
|
4
|
+
default as TableColumnHeader,
|
|
5
|
+
type ColumnHeaderProps,
|
|
6
|
+
} from "./ColumnHeader";
|
|
7
|
+
export { default as TableDataCell, type DataCellProps } from "./DataCell";
|
|
8
|
+
export {
|
|
9
|
+
default as TableExpandableRow,
|
|
10
|
+
type ExpandableRowProps,
|
|
11
|
+
} from "./ExpandableRow";
|
|
12
|
+
export { default as TableHeader, type HeaderProps } from "./Header";
|
|
13
|
+
export { default as TableHeaderCell, type HeaderCellProps } from "./HeaderCell";
|
|
14
|
+
export { default as TableRow, type RowProps } from "./Row";
|
|
8
15
|
export { default as Table, type TableProps } from "./Table";
|
|
9
16
|
export { type SortState } from "./types";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { useState } from "react";
|
|
2
2
|
import { Table, TableProps } from "../";
|
|
3
3
|
import { Button } from "../../button";
|
|
4
|
-
import { Checkbox } from "../../form";
|
|
4
|
+
import { Checkbox } from "../../form/checkbox";
|
|
5
5
|
import { VStack } from "../../layout/stack";
|
|
6
6
|
import {
|
|
7
7
|
Expandable,
|
package/src/tabs/Tabs.test.tsx
CHANGED
package/src/tabs/index.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
export { type
|
|
3
|
-
export { type
|
|
1
|
+
"use client";
|
|
2
|
+
export { default as TabsTab, type TabProps } from "./Tab";
|
|
3
|
+
export { default as TabsList, type TabListProps } from "./TabList";
|
|
4
|
+
export { default as TabsPanel, type TabPanelProps } from "./TabPanel";
|
|
4
5
|
export { default as Tabs, type TabsProps } from "./Tabs";
|
package/src/tag/index.ts
CHANGED
package/src/timeline/index.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
export type
|
|
3
|
-
export type
|
|
4
|
-
export type
|
|
5
|
-
export type
|
|
6
|
-
export
|
|
1
|
+
"use client";
|
|
2
|
+
export { default as Timeline, type TimelineProps } from "./Timeline";
|
|
3
|
+
export { default as TimelineRow, type TimelineRowProps } from "./TimelineRow";
|
|
4
|
+
export { default as TimelinePin, type TimelinePinProps } from "./Pin";
|
|
5
|
+
export { default as TimelinePeriod, type TimelinePeriodProps } from "./period";
|
|
6
|
+
export {
|
|
7
|
+
default as TimelineZoomButton,
|
|
8
|
+
type TimelineZoomButtonProps,
|
|
9
|
+
} from "./zoom/ZoomButton";
|
|
@@ -3,7 +3,7 @@ import cl from "clsx";
|
|
|
3
3
|
import React, { HTMLAttributes, forwardRef, useState } from "react";
|
|
4
4
|
import { Label } from "../typography";
|
|
5
5
|
import { useId } from "../util/hooks";
|
|
6
|
-
import ToggleItem, {
|
|
6
|
+
import ToggleItem, { ToggleGroupItemProps } from "./ToggleItem";
|
|
7
7
|
import { ToggleGroupContext } from "./context";
|
|
8
8
|
|
|
9
9
|
export interface ToggleGroupProps
|
|
@@ -45,10 +45,10 @@ interface ToggleGroupComponent
|
|
|
45
45
|
ToggleGroupProps & React.RefAttributes<HTMLDivElement>
|
|
46
46
|
> {
|
|
47
47
|
/**
|
|
48
|
-
* @see 🏷️ {@link
|
|
48
|
+
* @see 🏷️ {@link ToggleGroupItemProps}
|
|
49
49
|
*/
|
|
50
50
|
Item: React.ForwardRefExoticComponent<
|
|
51
|
-
|
|
51
|
+
ToggleGroupItemProps & React.RefAttributes<HTMLButtonElement>
|
|
52
52
|
>;
|
|
53
53
|
}
|
|
54
54
|
|
|
@@ -4,7 +4,7 @@ import React, { forwardRef, useContext } from "react";
|
|
|
4
4
|
import { BodyShort } from "../typography/BodyShort";
|
|
5
5
|
import { ToggleGroupContext } from "./context";
|
|
6
6
|
|
|
7
|
-
export interface
|
|
7
|
+
export interface ToggleGroupItemProps
|
|
8
8
|
extends React.HTMLAttributes<HTMLButtonElement> {
|
|
9
9
|
/**
|
|
10
10
|
* Content
|
|
@@ -16,7 +16,7 @@ export interface ToggleItemProps
|
|
|
16
16
|
value: string;
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
-
const ToggleItem = forwardRef<HTMLButtonElement,
|
|
19
|
+
const ToggleItem = forwardRef<HTMLButtonElement, ToggleGroupItemProps>(
|
|
20
20
|
({ className, children, ...rest }, ref) => {
|
|
21
21
|
const context = useContext(ToggleGroupContext);
|
|
22
22
|
|