@navikt/ds-react 7.21.1 → 7.23.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 +17 -7
- package/cjs/accordion/Accordion.js.map +1 -1
- package/cjs/accordion/AccordionContent.js +17 -7
- package/cjs/accordion/AccordionContent.js.map +1 -1
- package/cjs/accordion/AccordionHeader.js +17 -7
- package/cjs/accordion/AccordionHeader.js.map +1 -1
- package/cjs/accordion/AccordionItem.js +17 -7
- package/cjs/accordion/AccordionItem.js.map +1 -1
- package/cjs/alert/Alert.d.ts +4 -0
- package/cjs/alert/Alert.js +32 -8
- package/cjs/alert/Alert.js.map +1 -1
- package/cjs/button/Button.js +47 -9
- package/cjs/button/Button.js.map +1 -1
- package/cjs/chat/Bubble.js +17 -7
- package/cjs/chat/Bubble.js.map +1 -1
- package/cjs/chat/Chat.js +31 -9
- package/cjs/chat/Chat.js.map +1 -1
- package/cjs/chips/Chips.js +17 -7
- package/cjs/chips/Chips.js.map +1 -1
- package/cjs/chips/Removable.js +39 -9
- package/cjs/chips/Removable.js.map +1 -1
- package/cjs/chips/Toggle.js +41 -12
- package/cjs/chips/Toggle.js.map +1 -1
- package/cjs/collapsible/Collapsible.context.d.ts +1 -1
- package/cjs/collapsible/Collapsible.js +17 -7
- package/cjs/collapsible/Collapsible.js.map +1 -1
- package/cjs/collapsible/parts/Collapsible.Content.js +17 -7
- package/cjs/collapsible/parts/Collapsible.Content.js.map +1 -1
- package/cjs/collapsible/parts/Collapsible.Trigger.js +17 -7
- package/cjs/collapsible/parts/Collapsible.Trigger.js.map +1 -1
- package/cjs/copybutton/CopyButton.js +17 -7
- package/cjs/copybutton/CopyButton.js.map +1 -1
- package/cjs/date/Date.Dialog.js +17 -7
- package/cjs/date/Date.Dialog.js.map +1 -1
- package/cjs/date/Date.Input.js +17 -7
- package/cjs/date/Date.Input.js.map +1 -1
- package/cjs/date/Date.locale.d.ts +1 -1
- package/cjs/date/datepicker/DatePicker.js +17 -7
- package/cjs/date/datepicker/DatePicker.js.map +1 -1
- package/cjs/date/datepicker/parts/DatePicker.DayButton.js +17 -7
- package/cjs/date/datepicker/parts/DatePicker.DayButton.js.map +1 -1
- package/cjs/date/datepicker/parts/DatePicker.Months.js +17 -7
- package/cjs/date/datepicker/parts/DatePicker.Months.js.map +1 -1
- package/cjs/date/datepicker/parts/DatePicker.RDP.js +17 -7
- package/cjs/date/datepicker/parts/DatePicker.RDP.js.map +1 -1
- package/cjs/date/datepicker/parts/DatePicker.Standalone.js +17 -7
- package/cjs/date/datepicker/parts/DatePicker.Standalone.js.map +1 -1
- package/cjs/date/datepicker/parts/DatePicker.WeekNumber.js +17 -7
- package/cjs/date/datepicker/parts/DatePicker.WeekNumber.js.map +1 -1
- package/cjs/date/monthpicker/MonthPicker.js +17 -7
- package/cjs/date/monthpicker/MonthPicker.js.map +1 -1
- package/cjs/date/monthpicker/index.d.ts +1 -1
- package/cjs/date/monthpicker/parts/MonthPicker.Button.js +17 -7
- package/cjs/date/monthpicker/parts/MonthPicker.Button.js.map +1 -1
- package/cjs/date/monthpicker/parts/MonthPicker.Standalone.js +17 -7
- package/cjs/date/monthpicker/parts/MonthPicker.Standalone.js.map +1 -1
- package/cjs/date/monthpicker/parts/MonthPicker.Table.js +17 -7
- package/cjs/date/monthpicker/parts/MonthPicker.Table.js.map +1 -1
- package/cjs/dropdown/Dropdown.js +17 -7
- package/cjs/dropdown/Dropdown.js.map +1 -1
- package/cjs/dropdown/Menu/Divider.js +17 -7
- package/cjs/dropdown/Menu/Divider.js.map +1 -1
- package/cjs/dropdown/Menu/GroupedList/GroupedHeading.js +17 -7
- package/cjs/dropdown/Menu/GroupedList/GroupedHeading.js.map +1 -1
- package/cjs/dropdown/Menu/GroupedList/GroupedItem.js +17 -7
- package/cjs/dropdown/Menu/GroupedList/GroupedItem.js.map +1 -1
- package/cjs/dropdown/Menu/GroupedList/index.js +17 -7
- package/cjs/dropdown/Menu/GroupedList/index.js.map +1 -1
- package/cjs/dropdown/Menu/List/Item.js +17 -7
- package/cjs/dropdown/Menu/List/Item.js.map +1 -1
- package/cjs/dropdown/Menu/List/index.js +17 -7
- package/cjs/dropdown/Menu/List/index.js.map +1 -1
- package/cjs/dropdown/Menu/index.js +17 -7
- package/cjs/dropdown/Menu/index.js.map +1 -1
- package/cjs/dropdown/Toggle.js +17 -7
- package/cjs/dropdown/Toggle.js.map +1 -1
- package/cjs/expansion-card/ExpansionCard.js +19 -9
- package/cjs/expansion-card/ExpansionCard.js.map +1 -1
- package/cjs/expansion-card/ExpansionCardContent.js +17 -7
- package/cjs/expansion-card/ExpansionCardContent.js.map +1 -1
- package/cjs/expansion-card/ExpansionCardDescription.js +17 -7
- package/cjs/expansion-card/ExpansionCardDescription.js.map +1 -1
- package/cjs/expansion-card/ExpansionCardHeader.js +17 -7
- package/cjs/expansion-card/ExpansionCardHeader.js.map +1 -1
- package/cjs/expansion-card/ExpansionCardTitle.js +17 -7
- package/cjs/expansion-card/ExpansionCardTitle.js.map +1 -1
- package/cjs/form/checkbox/Checkbox.js +18 -8
- package/cjs/form/checkbox/Checkbox.js.map +1 -1
- package/cjs/form/checkbox/CheckboxGroup.js +17 -7
- package/cjs/form/checkbox/CheckboxGroup.js.map +1 -1
- package/cjs/form/checkbox/index.d.ts +1 -1
- package/cjs/form/combobox/Combobox.js +17 -7
- package/cjs/form/combobox/Combobox.js.map +1 -1
- package/cjs/form/combobox/ComboboxProvider.js +17 -7
- package/cjs/form/combobox/ComboboxProvider.js.map +1 -1
- package/cjs/form/combobox/ComboboxWrapper.js +17 -7
- package/cjs/form/combobox/ComboboxWrapper.js.map +1 -1
- package/cjs/form/combobox/FilteredOptions/filteredOptionsContext.js +17 -7
- package/cjs/form/combobox/FilteredOptions/filteredOptionsContext.js.map +1 -1
- package/cjs/form/combobox/Input/Input.context.js +17 -7
- package/cjs/form/combobox/Input/Input.context.js.map +1 -1
- package/cjs/form/combobox/Input/Input.js +17 -7
- package/cjs/form/combobox/Input/Input.js.map +1 -1
- package/cjs/form/combobox/Input/InputController.js +17 -7
- package/cjs/form/combobox/Input/InputController.js.map +1 -1
- package/cjs/form/combobox/Input/ToggleListButton.js +17 -7
- package/cjs/form/combobox/Input/ToggleListButton.js.map +1 -1
- package/cjs/form/combobox/SelectedOptions/SelectedOptions.js +1 -1
- package/cjs/form/combobox/SelectedOptions/SelectedOptions.js.map +1 -1
- package/cjs/form/combobox/SelectedOptions/selectedOptionsContext.js +17 -7
- package/cjs/form/combobox/SelectedOptions/selectedOptionsContext.js.map +1 -1
- package/cjs/form/combobox/customOptionsContext.js +17 -7
- package/cjs/form/combobox/customOptionsContext.js.map +1 -1
- package/cjs/form/combobox/index.d.ts +1 -1
- package/cjs/form/confirmation-panel/ConfirmationPanel.d.ts +1 -0
- package/cjs/form/confirmation-panel/ConfirmationPanel.js +20 -9
- package/cjs/form/confirmation-panel/ConfirmationPanel.js.map +1 -1
- package/cjs/form/error-summary/ErrorSummary.js +18 -8
- package/cjs/form/error-summary/ErrorSummary.js.map +1 -1
- package/cjs/form/error-summary/ErrorSummaryItem.js +17 -7
- package/cjs/form/error-summary/ErrorSummaryItem.js.map +1 -1
- package/cjs/form/fieldset/Fieldset.js +17 -7
- package/cjs/form/fieldset/Fieldset.js.map +1 -1
- package/cjs/form/file-upload/FileUpload.context.d.ts +1 -1
- package/cjs/form/file-upload/FileUpload.js +17 -7
- package/cjs/form/file-upload/FileUpload.js.map +1 -1
- package/cjs/form/file-upload/index.d.ts +3 -3
- package/cjs/form/file-upload/parts/Trigger.js +17 -7
- package/cjs/form/file-upload/parts/Trigger.js.map +1 -1
- package/cjs/form/file-upload/parts/dropzone/Dropzone.js +17 -7
- package/cjs/form/file-upload/parts/dropzone/Dropzone.js.map +1 -1
- package/cjs/form/file-upload/parts/item/Item.js +17 -7
- package/cjs/form/file-upload/parts/item/Item.js.map +1 -1
- package/cjs/form/form-progress/FormProgress.js +17 -7
- package/cjs/form/form-progress/FormProgress.js.map +1 -1
- package/cjs/form/form-summary/FormSummary.js +17 -7
- package/cjs/form/form-summary/FormSummary.js.map +1 -1
- package/cjs/form/form-summary/FormSummaryAnswers.js +19 -9
- package/cjs/form/form-summary/FormSummaryAnswers.js.map +1 -1
- package/cjs/form/form-summary/FormSummaryEditLink.js +17 -7
- package/cjs/form/form-summary/FormSummaryEditLink.js.map +1 -1
- package/cjs/form/form-summary/FormSummaryHeader.js +17 -7
- package/cjs/form/form-summary/FormSummaryHeader.js.map +1 -1
- package/cjs/form/form-summary/FormSummaryHeading.js +17 -7
- package/cjs/form/form-summary/FormSummaryHeading.js.map +1 -1
- package/cjs/form/form-summary/FormSummaryLabel.js +17 -7
- package/cjs/form/form-summary/FormSummaryLabel.js.map +1 -1
- package/cjs/form/form-summary/FormSummaryValue.js +17 -7
- package/cjs/form/form-summary/FormSummaryValue.js.map +1 -1
- package/cjs/form/radio/Radio.js +18 -8
- package/cjs/form/radio/Radio.js.map +1 -1
- package/cjs/form/radio/RadioGroup.js +17 -7
- package/cjs/form/radio/RadioGroup.js.map +1 -1
- package/cjs/form/radio/index.d.ts +1 -1
- package/cjs/form/search/Search.d.ts +1 -1
- package/cjs/form/search/Search.js +19 -9
- package/cjs/form/search/Search.js.map +1 -1
- package/cjs/form/search/SearchButton.js +17 -7
- package/cjs/form/search/SearchButton.js.map +1 -1
- package/cjs/form/select/Select.js +17 -7
- package/cjs/form/select/Select.js.map +1 -1
- package/cjs/form/switch/Switch.js +17 -7
- package/cjs/form/switch/Switch.js.map +1 -1
- package/cjs/form/textarea/Textarea.js +17 -7
- package/cjs/form/textarea/Textarea.js.map +1 -1
- package/cjs/form/textarea/TextareaCounter.js +17 -7
- package/cjs/form/textarea/TextareaCounter.js.map +1 -1
- package/cjs/form/textfield/TextField.js +17 -7
- package/cjs/form/textfield/TextField.js.map +1 -1
- package/cjs/guide-panel/GuidePanel.js +20 -10
- package/cjs/guide-panel/GuidePanel.js.map +1 -1
- package/cjs/guide-panel/Illustration.darkside.js +1 -1
- package/cjs/guide-panel/Illustration.darkside.js.map +1 -1
- package/cjs/help-text/HelpText.js +19 -9
- package/cjs/help-text/HelpText.js.map +1 -1
- package/cjs/internal-header/InternalHeader.js +17 -7
- package/cjs/internal-header/InternalHeader.js.map +1 -1
- package/cjs/internal-header/InternalHeaderButton.js +17 -7
- package/cjs/internal-header/InternalHeaderButton.js.map +1 -1
- package/cjs/internal-header/InternalHeaderTitle.js +17 -7
- package/cjs/internal-header/InternalHeaderTitle.js.map +1 -1
- package/cjs/internal-header/InternalHeaderUser.js +17 -7
- package/cjs/internal-header/InternalHeaderUser.js.map +1 -1
- package/cjs/internal-header/InternalHeaderUserButton.js +17 -7
- package/cjs/internal-header/InternalHeaderUserButton.js.map +1 -1
- package/cjs/layout/bleed/Bleed.js +17 -7
- package/cjs/layout/bleed/Bleed.js.map +1 -1
- package/cjs/layout/box/Box.d.ts +4 -5
- package/cjs/layout/box/Box.darkside.d.ts +8 -8
- package/cjs/layout/box/Box.darkside.js +19 -9
- package/cjs/layout/box/Box.darkside.js.map +1 -1
- package/cjs/layout/box/Box.js +18 -8
- package/cjs/layout/box/Box.js.map +1 -1
- package/cjs/layout/grid/HGrid.js +17 -7
- package/cjs/layout/grid/HGrid.js.map +1 -1
- package/cjs/layout/page/Page.js +17 -7
- package/cjs/layout/page/Page.js.map +1 -1
- package/cjs/layout/page/parts/PageBlock.js +17 -7
- package/cjs/layout/page/parts/PageBlock.js.map +1 -1
- package/cjs/layout/responsive/Responsive.js +17 -7
- package/cjs/layout/responsive/Responsive.js.map +1 -1
- package/cjs/layout/stack/HStack.js +17 -7
- package/cjs/layout/stack/HStack.js.map +1 -1
- package/cjs/layout/stack/Stack.js +17 -7
- package/cjs/layout/stack/Stack.js.map +1 -1
- package/cjs/layout/stack/VStack.js +17 -7
- package/cjs/layout/stack/VStack.js.map +1 -1
- package/cjs/layout/utilities/css.d.ts +1 -1
- package/cjs/layout/utilities/css.js +12 -1
- package/cjs/layout/utilities/css.js.map +1 -1
- package/cjs/layout/utilities/types.d.ts +8 -7
- package/cjs/link/Link.js +43 -9
- package/cjs/link/Link.js.map +1 -1
- package/cjs/link/stories/RandomIcon.js +17 -7
- package/cjs/link/stories/RandomIcon.js.map +1 -1
- package/cjs/link-panel/LinkPanel.js +17 -7
- package/cjs/link-panel/LinkPanel.js.map +1 -1
- package/cjs/link-panel/LinkPanelDescription.js +17 -7
- package/cjs/link-panel/LinkPanelDescription.js.map +1 -1
- package/cjs/link-panel/LinkPanelTitle.js +17 -7
- package/cjs/link-panel/LinkPanelTitle.js.map +1 -1
- package/cjs/list/List.Item.js +17 -7
- package/cjs/list/List.Item.js.map +1 -1
- package/cjs/list/List.js +17 -7
- package/cjs/list/List.js.map +1 -1
- package/cjs/loader/Loader.d.ts +5 -0
- package/cjs/loader/Loader.js +32 -9
- package/cjs/loader/Loader.js.map +1 -1
- package/cjs/loader/index.d.ts +1 -1
- package/cjs/modal/Modal.js +17 -7
- package/cjs/modal/Modal.js.map +1 -1
- package/cjs/modal/ModalBody.js +17 -7
- package/cjs/modal/ModalBody.js.map +1 -1
- package/cjs/modal/ModalFooter.js +17 -7
- package/cjs/modal/ModalFooter.js.map +1 -1
- package/cjs/modal/ModalHeader.js +17 -7
- package/cjs/modal/ModalHeader.js.map +1 -1
- package/cjs/modal/index.d.ts +1 -1
- package/cjs/overlays/action-menu/ActionMenu.js +22 -12
- package/cjs/overlays/action-menu/ActionMenu.js.map +1 -1
- package/cjs/overlays/dismissablelayer/DismissableLayer.js +17 -7
- package/cjs/overlays/dismissablelayer/DismissableLayer.js.map +1 -1
- package/cjs/overlays/floating/Floating.js +17 -7
- package/cjs/overlays/floating/Floating.js.map +1 -1
- package/cjs/overlays/floating-menu/Menu.js +17 -7
- package/cjs/overlays/floating-menu/Menu.js.map +1 -1
- package/cjs/overlays/floating-menu/parts/FocusScope.js +17 -7
- package/cjs/overlays/floating-menu/parts/FocusScope.js.map +1 -1
- package/cjs/overlays/floating-menu/parts/RovingFocus.js +17 -7
- package/cjs/overlays/floating-menu/parts/RovingFocus.js.map +1 -1
- package/cjs/overlays/floating-menu/parts/SlottedDivElement.js +17 -7
- package/cjs/overlays/floating-menu/parts/SlottedDivElement.js.map +1 -1
- package/cjs/pagination/Pagination.js +22 -14
- package/cjs/pagination/Pagination.js.map +1 -1
- package/cjs/pagination/PaginationItem.js +19 -9
- package/cjs/pagination/PaginationItem.js.map +1 -1
- package/cjs/panel/Panel.js +17 -7
- package/cjs/panel/Panel.js.map +1 -1
- package/cjs/panel/index.d.ts +1 -1
- package/cjs/popover/Popover.js +17 -7
- package/cjs/popover/Popover.js.map +1 -1
- package/cjs/popover/PopoverContent.js +17 -7
- package/cjs/popover/PopoverContent.js.map +1 -1
- package/cjs/portal/Portal.js +18 -8
- package/cjs/portal/Portal.js.map +1 -1
- package/cjs/progress-bar/ProgressBar.js +17 -7
- package/cjs/progress-bar/ProgressBar.js.map +1 -1
- package/cjs/provider/Provider.js +17 -7
- package/cjs/provider/Provider.js.map +1 -1
- package/cjs/read-more/ReadMore.js +17 -7
- package/cjs/read-more/ReadMore.js.map +1 -1
- package/cjs/skeleton/Skeleton.js +17 -7
- package/cjs/skeleton/Skeleton.js.map +1 -1
- package/cjs/slot/Slot.js +17 -7
- package/cjs/slot/Slot.js.map +1 -1
- package/cjs/stepper/Step.js +17 -7
- package/cjs/stepper/Step.js.map +1 -1
- package/cjs/stepper/Stepper.js +20 -9
- package/cjs/stepper/Stepper.js.map +1 -1
- package/cjs/stepper/context.d.ts +1 -1
- package/cjs/table/AnimateHeight.js +17 -7
- package/cjs/table/AnimateHeight.js.map +1 -1
- package/cjs/table/Body.js +17 -7
- package/cjs/table/Body.js.map +1 -1
- package/cjs/table/ColumnHeader.js +17 -7
- package/cjs/table/ColumnHeader.js.map +1 -1
- package/cjs/table/DataCell.js +17 -7
- package/cjs/table/DataCell.js.map +1 -1
- package/cjs/table/ExpandableRow.js +17 -7
- package/cjs/table/ExpandableRow.js.map +1 -1
- package/cjs/table/Header.js +17 -7
- package/cjs/table/Header.js.map +1 -1
- package/cjs/table/HeaderCell.js +17 -7
- package/cjs/table/HeaderCell.js.map +1 -1
- package/cjs/table/Row.js +17 -7
- package/cjs/table/Row.js.map +1 -1
- package/cjs/table/Table.js +17 -7
- package/cjs/table/Table.js.map +1 -1
- package/cjs/table/index.d.ts +1 -1
- package/cjs/tabs/Tabs.context.d.ts +1 -1
- package/cjs/tabs/Tabs.js +17 -7
- package/cjs/tabs/Tabs.js.map +1 -1
- package/cjs/tabs/index.d.ts +1 -1
- package/cjs/tabs/parts/tab/Tab.js +17 -7
- package/cjs/tabs/parts/tab/Tab.js.map +1 -1
- package/cjs/tabs/parts/tablist/TabList.js +17 -7
- package/cjs/tabs/parts/tablist/TabList.js.map +1 -1
- package/cjs/tabs/parts/tabpanel/TabPanel.js +17 -7
- package/cjs/tabs/parts/tabpanel/TabPanel.js.map +1 -1
- package/cjs/tag/Tag.js +56 -10
- package/cjs/tag/Tag.js.map +1 -1
- package/cjs/theme/Theme.d.ts +10 -1
- package/cjs/theme/Theme.js +20 -10
- package/cjs/theme/Theme.js.map +1 -1
- package/cjs/timeline/Pin.js +18 -10
- package/cjs/timeline/Pin.js.map +1 -1
- package/cjs/timeline/Timeline.js +17 -7
- package/cjs/timeline/Timeline.js.map +1 -1
- package/cjs/timeline/TimelineRow.js +17 -7
- package/cjs/timeline/TimelineRow.js.map +1 -1
- package/cjs/timeline/period/ClickablePeriod.js +20 -12
- package/cjs/timeline/period/ClickablePeriod.js.map +1 -1
- package/cjs/timeline/period/NonClickablePeriod.js +2 -1
- package/cjs/timeline/period/NonClickablePeriod.js.map +1 -1
- package/cjs/timeline/period/index.js +17 -7
- package/cjs/timeline/period/index.js.map +1 -1
- package/cjs/timeline/utils/period.d.ts +1 -1
- package/cjs/timeline/utils/period.js.map +1 -1
- package/cjs/timeline/zoom/ZoomButton.js +17 -7
- package/cjs/timeline/zoom/ZoomButton.js.map +1 -1
- package/cjs/timeline/zoom/index.js +17 -7
- package/cjs/timeline/zoom/index.js.map +1 -1
- package/cjs/toggle-group/ToggleGroup.context.d.ts +1 -1
- package/cjs/toggle-group/ToggleGroup.js +38 -10
- package/cjs/toggle-group/ToggleGroup.js.map +1 -1
- package/cjs/toggle-group/index.d.ts +1 -1
- package/cjs/toggle-group/parts/ToggleItem.js +17 -7
- package/cjs/toggle-group/parts/ToggleItem.js.map +1 -1
- package/cjs/tooltip/Tooltip.js +17 -7
- package/cjs/tooltip/Tooltip.js.map +1 -1
- package/cjs/types/index.d.ts +1 -0
- package/cjs/types/index.js +18 -0
- package/cjs/types/index.js.map +1 -0
- package/cjs/typography/BodyLong.js +17 -7
- package/cjs/typography/BodyLong.js.map +1 -1
- package/cjs/typography/BodyShort.js +17 -7
- package/cjs/typography/BodyShort.js.map +1 -1
- package/cjs/typography/Detail.js +17 -7
- package/cjs/typography/Detail.js.map +1 -1
- package/cjs/typography/ErrorMessage.js +17 -7
- package/cjs/typography/ErrorMessage.js.map +1 -1
- package/cjs/typography/Heading.js +17 -7
- package/cjs/typography/Heading.js.map +1 -1
- package/cjs/typography/Ingress.js +17 -7
- package/cjs/typography/Ingress.js.map +1 -1
- package/cjs/typography/Label.js +17 -7
- package/cjs/typography/Label.js.map +1 -1
- package/cjs/util/TextareaAutoSize.js +17 -7
- package/cjs/util/TextareaAutoSize.js.map +1 -1
- package/cjs/util/create-context.js +17 -7
- package/cjs/util/create-context.js.map +1 -1
- package/cjs/util/hooks/descendants/useDescendant.js +17 -7
- package/cjs/util/hooks/descendants/useDescendant.js.map +1 -1
- package/cjs/util/hooks/useId.js +17 -7
- package/cjs/util/hooks/useId.js.map +1 -1
- package/cjs/util/virtualfocus/Context.d.ts +1 -1
- package/cjs/util/virtualfocus/SlottedDivElement.js +17 -7
- package/cjs/util/virtualfocus/SlottedDivElement.js.map +1 -1
- package/cjs/util/virtualfocus/VirtualFocus.js +17 -7
- package/cjs/util/virtualfocus/VirtualFocus.js.map +1 -1
- package/cjs/util/virtualfocus/parts/VirtualFocusAnchor.js +17 -7
- package/cjs/util/virtualfocus/parts/VirtualFocusAnchor.js.map +1 -1
- package/cjs/util/virtualfocus/parts/VirtualFocusContent.js +17 -7
- package/cjs/util/virtualfocus/parts/VirtualFocusContent.js.map +1 -1
- package/cjs/util/virtualfocus/parts/VirtualFocusItem.js +17 -7
- package/cjs/util/virtualfocus/parts/VirtualFocusItem.js.map +1 -1
- package/esm/alert/Alert.d.ts +4 -0
- package/esm/alert/Alert.js +15 -1
- package/esm/alert/Alert.js.map +1 -1
- package/esm/button/Button.js +30 -2
- package/esm/button/Button.js.map +1 -1
- package/esm/chat/Chat.js +14 -2
- package/esm/chat/Chat.js.map +1 -1
- package/esm/chips/Removable.js +23 -3
- package/esm/chips/Removable.js.map +1 -1
- package/esm/chips/Toggle.js +25 -6
- package/esm/chips/Toggle.js.map +1 -1
- package/esm/collapsible/Collapsible.context.d.ts +1 -1
- package/esm/date/Date.locale.d.ts +1 -1
- package/esm/date/monthpicker/index.d.ts +1 -1
- package/esm/expansion-card/ExpansionCard.js +2 -2
- package/esm/expansion-card/ExpansionCard.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/index.d.ts +1 -1
- package/esm/form/combobox/SelectedOptions/SelectedOptions.js +1 -1
- package/esm/form/combobox/SelectedOptions/SelectedOptions.js.map +1 -1
- package/esm/form/combobox/index.d.ts +1 -1
- package/esm/form/confirmation-panel/ConfirmationPanel.d.ts +1 -0
- package/esm/form/confirmation-panel/ConfirmationPanel.js +3 -2
- package/esm/form/confirmation-panel/ConfirmationPanel.js.map +1 -1
- package/esm/form/error-summary/ErrorSummary.js +1 -1
- package/esm/form/error-summary/ErrorSummary.js.map +1 -1
- package/esm/form/file-upload/FileUpload.context.d.ts +1 -1
- package/esm/form/file-upload/index.d.ts +3 -3
- package/esm/form/form-summary/FormSummaryAnswers.js +2 -2
- package/esm/form/form-summary/FormSummaryAnswers.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/index.d.ts +1 -1
- package/esm/form/search/Search.d.ts +1 -1
- package/esm/form/search/Search.js +2 -2
- package/esm/form/search/Search.js.map +1 -1
- package/esm/guide-panel/GuidePanel.js +3 -3
- package/esm/guide-panel/GuidePanel.js.map +1 -1
- package/esm/guide-panel/Illustration.darkside.js +1 -1
- package/esm/guide-panel/Illustration.darkside.js.map +1 -1
- package/esm/help-text/HelpText.js +2 -2
- package/esm/help-text/HelpText.js.map +1 -1
- package/esm/layout/box/Box.d.ts +4 -5
- package/esm/layout/box/Box.darkside.d.ts +8 -8
- package/esm/layout/box/Box.darkside.js +2 -2
- package/esm/layout/box/Box.darkside.js.map +1 -1
- package/esm/layout/box/Box.js +1 -1
- package/esm/layout/box/Box.js.map +1 -1
- package/esm/layout/utilities/css.d.ts +1 -1
- package/esm/layout/utilities/css.js +12 -1
- package/esm/layout/utilities/css.js.map +1 -1
- package/esm/layout/utilities/types.d.ts +8 -7
- package/esm/link/Link.js +27 -3
- package/esm/link/Link.js.map +1 -1
- package/esm/loader/Loader.d.ts +5 -0
- package/esm/loader/Loader.js +15 -2
- package/esm/loader/Loader.js.map +1 -1
- package/esm/loader/index.d.ts +1 -1
- package/esm/modal/index.d.ts +1 -1
- package/esm/overlays/action-menu/ActionMenu.js +5 -5
- package/esm/overlays/action-menu/ActionMenu.js.map +1 -1
- package/esm/pagination/Pagination.js +5 -7
- package/esm/pagination/Pagination.js.map +1 -1
- package/esm/pagination/PaginationItem.js +2 -2
- package/esm/pagination/PaginationItem.js.map +1 -1
- package/esm/panel/index.d.ts +1 -1
- package/esm/portal/Portal.js +1 -1
- package/esm/portal/Portal.js.map +1 -1
- package/esm/stepper/Stepper.js +3 -2
- package/esm/stepper/Stepper.js.map +1 -1
- package/esm/stepper/context.d.ts +1 -1
- package/esm/table/index.d.ts +1 -1
- package/esm/tabs/Tabs.context.d.ts +1 -1
- package/esm/tabs/index.d.ts +1 -1
- package/esm/tag/Tag.js +39 -3
- package/esm/tag/Tag.js.map +1 -1
- package/esm/theme/Theme.d.ts +10 -1
- package/esm/theme/Theme.js +3 -3
- package/esm/theme/Theme.js.map +1 -1
- package/esm/timeline/Pin.js +2 -4
- package/esm/timeline/Pin.js.map +1 -1
- package/esm/timeline/period/ClickablePeriod.js +4 -6
- package/esm/timeline/period/ClickablePeriod.js.map +1 -1
- package/esm/timeline/period/NonClickablePeriod.js +2 -1
- package/esm/timeline/period/NonClickablePeriod.js.map +1 -1
- package/esm/timeline/utils/period.d.ts +1 -1
- package/esm/timeline/utils/period.js.map +1 -1
- package/esm/toggle-group/ToggleGroup.context.d.ts +1 -1
- package/esm/toggle-group/ToggleGroup.js +22 -4
- package/esm/toggle-group/ToggleGroup.js.map +1 -1
- package/esm/toggle-group/index.d.ts +1 -1
- package/esm/types/index.d.ts +1 -0
- package/esm/types/index.js +2 -0
- package/esm/types/index.js.map +1 -0
- package/esm/types/theme.d.ts +15 -0
- package/esm/util/virtualfocus/Context.d.ts +1 -1
- package/package.json +16 -10
- package/src/alert/Alert.tsx +22 -0
- package/src/button/Button.tsx +38 -0
- package/src/chat/Chat.tsx +17 -0
- package/src/chips/Removable.tsx +30 -3
- package/src/chips/Toggle.tsx +31 -13
- package/src/date/monthpicker/index.ts +1 -1
- package/src/expansion-card/ExpansionCard.tsx +2 -0
- package/src/form/checkbox/Checkbox.tsx +1 -0
- package/src/form/checkbox/index.ts +1 -1
- package/src/form/combobox/SelectedOptions/SelectedOptions.tsx +6 -1
- package/src/form/combobox/index.ts +1 -1
- package/src/form/confirmation-panel/ConfirmationPanel.tsx +3 -2
- package/src/form/error-summary/ErrorSummary.tsx +1 -1
- package/src/form/file-upload/index.ts +9 -9
- package/src/form/form-summary/FormSummaryAnswers.tsx +23 -12
- package/src/form/radio/Radio.tsx +1 -0
- package/src/form/radio/index.ts +1 -1
- package/src/form/search/Search.tsx +4 -2
- package/src/guide-panel/GuidePanel.tsx +13 -2
- package/src/guide-panel/Illustration.darkside.tsx +1 -6
- package/src/help-text/HelpText.tsx +5 -1
- package/src/layout/box/Box.darkside.tsx +21 -16
- package/src/layout/box/Box.tsx +6 -6
- package/src/layout/utilities/css.ts +24 -5
- package/src/layout/utilities/types.ts +18 -13
- package/src/link/Link.tsx +36 -3
- package/src/loader/Loader.tsx +24 -0
- package/src/loader/index.ts +1 -1
- package/src/modal/index.ts +1 -1
- package/src/overlays/action-menu/ActionMenu.tsx +5 -5
- package/src/pagination/Pagination.tsx +5 -0
- package/src/pagination/PaginationItem.tsx +3 -1
- package/src/panel/index.ts +1 -1
- package/src/portal/Portal.tsx +6 -1
- package/src/react-css.d.ts +0 -4
- package/src/stepper/Stepper.tsx +4 -3
- package/src/table/index.ts +1 -1
- package/src/tabs/index.ts +1 -1
- package/src/tag/Tag.tsx +53 -4
- package/src/theme/Theme.tsx +13 -2
- package/src/timeline/Pin.tsx +1 -3
- package/src/timeline/period/ClickablePeriod.tsx +2 -3
- package/src/timeline/period/NonClickablePeriod.tsx +1 -0
- package/src/timeline/utils/period.ts +1 -1
- package/src/toggle-group/ToggleGroup.tsx +28 -3
- package/src/toggle-group/index.ts +1 -1
- package/src/types/index.ts +1 -0
- package/src/types/theme.d.ts +15 -0
package/src/loader/Loader.tsx
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React, { SVGProps, forwardRef } from "react";
|
|
2
2
|
import { useRenameCSS } from "../theme/Theme";
|
|
3
|
+
import { AkselColor } from "../types";
|
|
3
4
|
import { omit } from "../util";
|
|
4
5
|
import { useId } from "../util/hooks";
|
|
5
6
|
import { useI18n } from "../util/i18n/i18n.hooks";
|
|
@@ -33,6 +34,10 @@ export interface LoaderProps extends Omit<SVGProps<SVGSVGElement>, "ref"> {
|
|
|
33
34
|
* @default "neutral"
|
|
34
35
|
*/
|
|
35
36
|
variant?: "neutral" | "interaction" | "inverted";
|
|
37
|
+
/**
|
|
38
|
+
* Overrides loader-color
|
|
39
|
+
*/
|
|
40
|
+
"data-color"?: AkselColor;
|
|
36
41
|
}
|
|
37
42
|
|
|
38
43
|
/* Workaround for @types/react v17/v18 feil */
|
|
@@ -60,6 +65,7 @@ export const Loader: LoaderType = forwardRef<SVGSVGElement, LoaderProps>(
|
|
|
60
65
|
transparent = false,
|
|
61
66
|
variant = "neutral",
|
|
62
67
|
id,
|
|
68
|
+
"data-color": color,
|
|
63
69
|
...rest
|
|
64
70
|
},
|
|
65
71
|
ref,
|
|
@@ -84,7 +90,9 @@ export const Loader: LoaderType = forwardRef<SVGSVGElement, LoaderProps>(
|
|
|
84
90
|
focusable="false"
|
|
85
91
|
viewBox="0 0 50 50"
|
|
86
92
|
preserveAspectRatio="xMidYMid"
|
|
93
|
+
data-color={color ?? variantToColor(variant)}
|
|
87
94
|
{...omit(rest, ["children"])}
|
|
95
|
+
data-variant={variant}
|
|
88
96
|
>
|
|
89
97
|
<title id={id ?? `loader-${internalId}`}>
|
|
90
98
|
{title || translate("title")}
|
|
@@ -110,4 +118,20 @@ export const Loader: LoaderType = forwardRef<SVGSVGElement, LoaderProps>(
|
|
|
110
118
|
},
|
|
111
119
|
);
|
|
112
120
|
|
|
121
|
+
function variantToColor(
|
|
122
|
+
variant: LoaderProps["variant"],
|
|
123
|
+
): AkselColor | undefined {
|
|
124
|
+
switch (variant) {
|
|
125
|
+
case "neutral":
|
|
126
|
+
return "neutral";
|
|
127
|
+
case "inverted":
|
|
128
|
+
return "neutral";
|
|
129
|
+
/* We assume "interaction" is the main app color in this instance */
|
|
130
|
+
case "interaction":
|
|
131
|
+
return undefined;
|
|
132
|
+
default:
|
|
133
|
+
return "neutral";
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
113
137
|
export default Loader;
|
package/src/loader/index.ts
CHANGED
package/src/modal/index.ts
CHANGED
|
@@ -3,4 +3,4 @@ export { default as Modal } from "./Modal";
|
|
|
3
3
|
export { default as ModalBody, type ModalBodyProps } from "./ModalBody";
|
|
4
4
|
export { default as ModalFooter, type ModalFooterProps } from "./ModalFooter";
|
|
5
5
|
export { default as ModalHeader, type ModalHeaderProps } from "./ModalHeader";
|
|
6
|
-
export {
|
|
6
|
+
export type { ModalProps } from "./types";
|
|
@@ -669,7 +669,7 @@ export const ActionMenuCheckboxItem = forwardRef<
|
|
|
669
669
|
width="24"
|
|
670
670
|
height="24"
|
|
671
671
|
rx="4"
|
|
672
|
-
fill="var(--ax-bg-
|
|
672
|
+
fill="var(--ax-bg-strong-pressed, var(--a-surface-action-selected))"
|
|
673
673
|
/>
|
|
674
674
|
<rect
|
|
675
675
|
x="6"
|
|
@@ -685,7 +685,7 @@ export const ActionMenuCheckboxItem = forwardRef<
|
|
|
685
685
|
width="24"
|
|
686
686
|
height="24"
|
|
687
687
|
rx="4"
|
|
688
|
-
fill="var(--ax-bg-
|
|
688
|
+
fill="var(--ax-bg-strong-pressed, var(--a-surface-action-selected))"
|
|
689
689
|
/>
|
|
690
690
|
<path
|
|
691
691
|
d="M10.0352 13.4148L16.4752 7.40467C17.0792 6.83965 18.029 6.86933 18.5955 7.47478C19.162 8.08027 19.1296 9.03007 18.5245 9.59621L11.0211 16.5993C10.741 16.859 10.3756 17 10.0002 17C9.60651 17 9.22717 16.8462 8.93914 16.5611L6.43914 14.0611C5.85362 13.4756 5.85362 12.5254 6.43914 11.9399C7.02467 11.3544 7.97483 11.3544 8.56036 11.9399L10.0352 13.4148Z"
|
|
@@ -808,7 +808,7 @@ export const ActionMenuRadioItem = forwardRef<
|
|
|
808
808
|
width="24"
|
|
809
809
|
height="24"
|
|
810
810
|
rx="12"
|
|
811
|
-
fill="var(--ax-bg-
|
|
811
|
+
fill="var(--ax-bg-strong-pressed)"
|
|
812
812
|
/>
|
|
813
813
|
<rect
|
|
814
814
|
x="8"
|
|
@@ -835,12 +835,12 @@ export const ActionMenuRadioItem = forwardRef<
|
|
|
835
835
|
width="22"
|
|
836
836
|
height="22"
|
|
837
837
|
rx="11"
|
|
838
|
-
stroke="var(--ax-bg-
|
|
838
|
+
stroke="var(--ax-bg-strong-pressed, var(--a-surface-action-selected))"
|
|
839
839
|
strokeWidth="2"
|
|
840
840
|
/>
|
|
841
841
|
<path
|
|
842
842
|
d="M20 12C20 16.4178 16.4178 20 12 20C7.58222 20 4 16.4178 4 12C4 7.58222 7.58222 4 12 4C16.4178 4 20 7.58222 20 12Z"
|
|
843
|
-
fill="var(--ax-bg-
|
|
843
|
+
fill="var(--ax-bg-strong-pressed, var(--a-surface-action-selected))"
|
|
844
844
|
/>
|
|
845
845
|
</g>
|
|
846
846
|
)}
|
|
@@ -150,6 +150,7 @@ export const Pagination = forwardRef<HTMLElement, PaginationProps>(
|
|
|
150
150
|
srHeading,
|
|
151
151
|
"aria-labelledby": ariaLabelledBy,
|
|
152
152
|
renderItem: Item = PaginationItem,
|
|
153
|
+
"data-color": color,
|
|
153
154
|
...rest
|
|
154
155
|
},
|
|
155
156
|
ref,
|
|
@@ -179,6 +180,7 @@ export const Pagination = forwardRef<HTMLElement, PaginationProps>(
|
|
|
179
180
|
<nav
|
|
180
181
|
ref={ref}
|
|
181
182
|
{...rest}
|
|
183
|
+
data-color={color}
|
|
182
184
|
aria-labelledby={
|
|
183
185
|
srHeading ? cl(headingId, ariaLabelledBy) : ariaLabelledBy
|
|
184
186
|
}
|
|
@@ -201,6 +203,7 @@ export const Pagination = forwardRef<HTMLElement, PaginationProps>(
|
|
|
201
203
|
<ul className={cn("navds-pagination__list")}>
|
|
202
204
|
<li>
|
|
203
205
|
<Item
|
|
206
|
+
data-color={color}
|
|
204
207
|
className={cn("navds-pagination__prev-next", {
|
|
205
208
|
"navds-pagination--invisible": page === 1,
|
|
206
209
|
"navds-pagination--prev-next--with-text": prevNextTexts,
|
|
@@ -238,6 +241,7 @@ export const Pagination = forwardRef<HTMLElement, PaginationProps>(
|
|
|
238
241
|
) : (
|
|
239
242
|
<li key={step}>
|
|
240
243
|
<Item
|
|
244
|
+
data-color={color}
|
|
241
245
|
/* Remember to update RenderItemProps if you make changes to props sent into Item */
|
|
242
246
|
onClick={() => onPageChange?.(n)}
|
|
243
247
|
selected={page === n}
|
|
@@ -252,6 +256,7 @@ export const Pagination = forwardRef<HTMLElement, PaginationProps>(
|
|
|
252
256
|
)}
|
|
253
257
|
<li>
|
|
254
258
|
<Item
|
|
259
|
+
data-color={color}
|
|
255
260
|
className={cn("navds-pagination__prev-next", {
|
|
256
261
|
"navds-pagination--invisible": page === count,
|
|
257
262
|
"navds-pagination--prev-next--with-text": prevNextTexts,
|
|
@@ -35,6 +35,7 @@ export const Item: PaginationItemType = forwardRef(
|
|
|
35
35
|
selected = false,
|
|
36
36
|
className,
|
|
37
37
|
page,
|
|
38
|
+
"data-color": color,
|
|
38
39
|
...rest
|
|
39
40
|
},
|
|
40
41
|
ref,
|
|
@@ -46,8 +47,9 @@ export const Item: PaginationItemType = forwardRef(
|
|
|
46
47
|
<Button
|
|
47
48
|
as={Component}
|
|
48
49
|
variant={themeContext ? "tertiary-neutral" : "tertiary"}
|
|
50
|
+
data-color={color}
|
|
49
51
|
aria-current={selected}
|
|
50
|
-
data-
|
|
52
|
+
data-pressed={selected}
|
|
51
53
|
ref={ref}
|
|
52
54
|
className={cn("navds-pagination__item", className, {
|
|
53
55
|
"navds-pagination__item--selected": selected,
|
package/src/panel/index.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { default as Panel } from "./Panel";
|
|
2
|
-
export {
|
|
2
|
+
export type { PanelProps } from "./Panel";
|
package/src/portal/Portal.tsx
CHANGED
|
@@ -29,7 +29,12 @@ export const Portal = forwardRef<HTMLDivElement, PortalProps>(
|
|
|
29
29
|
if (themeContext) {
|
|
30
30
|
return root
|
|
31
31
|
? ReactDOM.createPortal(
|
|
32
|
-
<Theme
|
|
32
|
+
<Theme
|
|
33
|
+
theme={themeContext.theme}
|
|
34
|
+
asChild
|
|
35
|
+
hasBackground={false}
|
|
36
|
+
data-color={themeContext.color}
|
|
37
|
+
>
|
|
33
38
|
<Component ref={ref} data-aksel-portal="" {...rest} />
|
|
34
39
|
</Theme>,
|
|
35
40
|
root,
|
package/src/react-css.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import "react";
|
|
2
|
-
import type { GlobalColorRoles } from "@navikt/ds-tokens/types";
|
|
3
2
|
|
|
4
3
|
declare module "react" {
|
|
5
4
|
interface CSSProperties {
|
|
@@ -8,7 +7,4 @@ declare module "react" {
|
|
|
8
7
|
[key: `--axc-${string}`]: string | number | undefined;
|
|
9
8
|
[key: `--__axc-${string}`]: string | number | undefined;
|
|
10
9
|
}
|
|
11
|
-
interface HTMLAttributes {
|
|
12
|
-
"data-color-role"?: GlobalColorRoles;
|
|
13
|
-
}
|
|
14
10
|
}
|
package/src/stepper/Stepper.tsx
CHANGED
|
@@ -100,16 +100,17 @@ export const Stepper: StepperComponent = forwardRef<
|
|
|
100
100
|
const stepProps: Partial<StepperStepProps> =
|
|
101
101
|
React.isValidElement<StepperStepProps>(step) ? step.props : {};
|
|
102
102
|
|
|
103
|
+
const isInteractive = stepProps.interactive ?? interactive;
|
|
104
|
+
|
|
103
105
|
return (
|
|
104
106
|
<li
|
|
105
107
|
className={cn("navds-stepper__item", {
|
|
106
108
|
/* TODO: Remove these 3 classNames in darkmode update */
|
|
107
109
|
"navds-stepper__item--behind": activeStep > index,
|
|
108
110
|
"navds-stepper__item--completed": stepProps.completed,
|
|
109
|
-
"navds-stepper__item--non-interactive": !
|
|
110
|
-
stepProps.interactive ?? interactive
|
|
111
|
-
),
|
|
111
|
+
"navds-stepper__item--non-interactive": !isInteractive,
|
|
112
112
|
})}
|
|
113
|
+
data-color={isInteractive ? undefined : "neutral"}
|
|
113
114
|
key={index + (children?.toString?.() ?? "")}
|
|
114
115
|
>
|
|
115
116
|
<span
|
package/src/table/index.ts
CHANGED
|
@@ -13,4 +13,4 @@ export { default as TableHeader, type HeaderProps } from "./Header";
|
|
|
13
13
|
export { default as TableHeaderCell, type HeaderCellProps } from "./HeaderCell";
|
|
14
14
|
export { default as TableRow, type RowProps } from "./Row";
|
|
15
15
|
export { default as Table, type TableProps } from "./Table";
|
|
16
|
-
export {
|
|
16
|
+
export type { SortState } from "./types";
|
package/src/tabs/index.ts
CHANGED
package/src/tag/Tag.tsx
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React, { HTMLAttributes, forwardRef } from "react";
|
|
2
2
|
import { useRenameCSS } from "../theme/Theme";
|
|
3
|
+
import { AkselColor } from "../types";
|
|
3
4
|
import { BodyShort } from "../typography";
|
|
4
5
|
|
|
5
6
|
export interface TagProps extends HTMLAttributes<HTMLSpanElement> {
|
|
@@ -62,14 +63,26 @@ export interface TagProps extends HTMLAttributes<HTMLSpanElement> {
|
|
|
62
63
|
* ```
|
|
63
64
|
*/
|
|
64
65
|
export const Tag = forwardRef<HTMLSpanElement, TagProps>(
|
|
65
|
-
(
|
|
66
|
+
(
|
|
67
|
+
{
|
|
68
|
+
children,
|
|
69
|
+
className,
|
|
70
|
+
variant,
|
|
71
|
+
size = "medium",
|
|
72
|
+
icon,
|
|
73
|
+
"data-color": color,
|
|
74
|
+
...rest
|
|
75
|
+
},
|
|
76
|
+
ref,
|
|
77
|
+
) => {
|
|
66
78
|
const { cn } = useRenameCSS();
|
|
67
79
|
const filledVariant = variant?.endsWith("-filled") && "strong";
|
|
68
80
|
const moderateVariant = variant?.endsWith("-moderate") && "moderate";
|
|
69
|
-
const color = variant?.replace("-filled", "").replace("-moderate", "");
|
|
70
81
|
|
|
71
82
|
return (
|
|
72
83
|
<BodyShort
|
|
84
|
+
data-color={color ?? variantToColor(variant)}
|
|
85
|
+
data-variant={filledVariant || moderateVariant || "outline"}
|
|
73
86
|
{...rest}
|
|
74
87
|
ref={ref}
|
|
75
88
|
as="span"
|
|
@@ -79,8 +92,6 @@ export const Tag = forwardRef<HTMLSpanElement, TagProps>(
|
|
|
79
92
|
className,
|
|
80
93
|
`navds-tag--${variant}`,
|
|
81
94
|
`navds-tag--${size}`,
|
|
82
|
-
`navds-tag--${filledVariant || moderateVariant || "outline"}`,
|
|
83
|
-
`navds-tag--${color}`,
|
|
84
95
|
)}
|
|
85
96
|
>
|
|
86
97
|
{icon && <span className={cn("navds-tag__icon--left")}>{icon}</span>}
|
|
@@ -90,4 +101,42 @@ export const Tag = forwardRef<HTMLSpanElement, TagProps>(
|
|
|
90
101
|
},
|
|
91
102
|
);
|
|
92
103
|
|
|
104
|
+
function variantToColor(variant: TagProps["variant"]): AkselColor {
|
|
105
|
+
switch (variant) {
|
|
106
|
+
case "warning":
|
|
107
|
+
case "warning-filled":
|
|
108
|
+
case "warning-moderate":
|
|
109
|
+
return "warning";
|
|
110
|
+
case "error":
|
|
111
|
+
case "error-filled":
|
|
112
|
+
case "error-moderate":
|
|
113
|
+
return "danger";
|
|
114
|
+
case "info":
|
|
115
|
+
case "info-filled":
|
|
116
|
+
case "info-moderate":
|
|
117
|
+
case "alt3":
|
|
118
|
+
case "alt3-filled":
|
|
119
|
+
case "alt3-moderate":
|
|
120
|
+
return "info";
|
|
121
|
+
case "success":
|
|
122
|
+
case "success-filled":
|
|
123
|
+
case "success-moderate":
|
|
124
|
+
return "success";
|
|
125
|
+
case "neutral":
|
|
126
|
+
case "neutral-filled":
|
|
127
|
+
case "neutral-moderate":
|
|
128
|
+
return "neutral";
|
|
129
|
+
case "alt1":
|
|
130
|
+
case "alt1-filled":
|
|
131
|
+
case "alt1-moderate":
|
|
132
|
+
return "meta-purple";
|
|
133
|
+
case "alt2":
|
|
134
|
+
case "alt2-filled":
|
|
135
|
+
case "alt2-moderate":
|
|
136
|
+
return "meta-lime";
|
|
137
|
+
default:
|
|
138
|
+
return "neutral";
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
93
142
|
export default Tag;
|
package/src/theme/Theme.tsx
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import cl from "clsx";
|
|
2
2
|
import React, { forwardRef } from "react";
|
|
3
3
|
import { Slot } from "../slot/Slot";
|
|
4
|
+
import { AkselColor } from "../types";
|
|
4
5
|
import { createContext } from "../util/create-context";
|
|
5
6
|
import { AsChildProps } from "../util/types";
|
|
6
7
|
|
|
@@ -50,6 +51,7 @@ type ThemeContext = {
|
|
|
50
51
|
* @default Inherits parent theme, or "light" if root
|
|
51
52
|
*/
|
|
52
53
|
theme?: "light" | "dark";
|
|
54
|
+
color?: AkselColor;
|
|
53
55
|
};
|
|
54
56
|
|
|
55
57
|
const [ThemeProvider, useThemeInternal] = createContext<ThemeContext>({
|
|
@@ -60,8 +62,15 @@ const [ThemeProvider, useThemeInternal] = createContext<ThemeContext>({
|
|
|
60
62
|
|
|
61
63
|
export type ThemeProps = {
|
|
62
64
|
className?: string;
|
|
65
|
+
/**
|
|
66
|
+
* Sets default background when enabled
|
|
67
|
+
*/
|
|
63
68
|
hasBackground?: boolean;
|
|
64
|
-
|
|
69
|
+
/**
|
|
70
|
+
* Sets default 'base'-color for application
|
|
71
|
+
*/
|
|
72
|
+
"data-color"?: AkselColor;
|
|
73
|
+
} & Omit<ThemeContext, "color"> &
|
|
65
74
|
AsChildProps;
|
|
66
75
|
|
|
67
76
|
const Theme = forwardRef<HTMLDivElement, ThemeProps>(
|
|
@@ -74,6 +83,7 @@ const Theme = forwardRef<HTMLDivElement, ThemeProps>(
|
|
|
74
83
|
asChild = false,
|
|
75
84
|
theme = context?.theme,
|
|
76
85
|
hasBackground: hasBackgroundProp = true,
|
|
86
|
+
"data-color": color = context?.color,
|
|
77
87
|
} = props;
|
|
78
88
|
|
|
79
89
|
const isRoot = context === undefined;
|
|
@@ -84,12 +94,13 @@ const Theme = forwardRef<HTMLDivElement, ThemeProps>(
|
|
|
84
94
|
const SlotElement = asChild ? Slot : "div";
|
|
85
95
|
|
|
86
96
|
return (
|
|
87
|
-
<ThemeProvider theme={theme}>
|
|
97
|
+
<ThemeProvider theme={theme} color={color}>
|
|
88
98
|
<RenameCSS>
|
|
89
99
|
<SlotElement
|
|
90
100
|
ref={ref}
|
|
91
101
|
className={cl("aksel-theme", className, theme)}
|
|
92
102
|
data-background={hasBackground}
|
|
103
|
+
data-color={color}
|
|
93
104
|
>
|
|
94
105
|
{children}
|
|
95
106
|
</SlotElement>
|
package/src/timeline/Pin.tsx
CHANGED
|
@@ -11,7 +11,6 @@ import {
|
|
|
11
11
|
useFocus,
|
|
12
12
|
useHover,
|
|
13
13
|
useInteractions,
|
|
14
|
-
useRole,
|
|
15
14
|
} from "@floating-ui/react";
|
|
16
15
|
import { format } from "date-fns";
|
|
17
16
|
import React, { forwardRef, useRef, useState } from "react";
|
|
@@ -79,13 +78,11 @@ export const Pin = forwardRef<HTMLButtonElement, TimelinePinProps>(
|
|
|
79
78
|
});
|
|
80
79
|
const focus = useFocus(context);
|
|
81
80
|
const dismiss = useDismiss(context);
|
|
82
|
-
const role = useRole(context, { role: "dialog" });
|
|
83
81
|
|
|
84
82
|
const { getFloatingProps, getReferenceProps } = useInteractions([
|
|
85
83
|
hover,
|
|
86
84
|
focus,
|
|
87
85
|
dismiss,
|
|
88
|
-
role,
|
|
89
86
|
]);
|
|
90
87
|
|
|
91
88
|
const mergedRef = useMergeRefs(refs.setReference, ref);
|
|
@@ -135,6 +132,7 @@ export const Pin = forwardRef<HTMLButtonElement, TimelinePinProps>(
|
|
|
135
132
|
className={cn("navds-timeline__popover")}
|
|
136
133
|
data-placement={placement}
|
|
137
134
|
ref={refs.setFloating}
|
|
135
|
+
role="dialog"
|
|
138
136
|
{...getFloatingProps()}
|
|
139
137
|
style={floatingStyles}
|
|
140
138
|
>
|
|
@@ -11,7 +11,6 @@ import {
|
|
|
11
11
|
useFocus,
|
|
12
12
|
useHover,
|
|
13
13
|
useInteractions,
|
|
14
|
-
useRole,
|
|
15
14
|
} from "@floating-ui/react";
|
|
16
15
|
import React, { useRef, useState } from "react";
|
|
17
16
|
import { useRenameCSS, useThemeInternal } from "../../theme/Theme";
|
|
@@ -91,13 +90,11 @@ const ClickablePeriod = React.memo(
|
|
|
91
90
|
});
|
|
92
91
|
const focus = useFocus(context);
|
|
93
92
|
const dismiss = useDismiss(context);
|
|
94
|
-
const role = useRole(context, { role: "dialog" });
|
|
95
93
|
|
|
96
94
|
const { getFloatingProps, getReferenceProps } = useInteractions([
|
|
97
95
|
hover,
|
|
98
96
|
focus,
|
|
99
97
|
dismiss,
|
|
100
|
-
role,
|
|
101
98
|
]);
|
|
102
99
|
|
|
103
100
|
const mergedRef = useMergeRefs(refs.setReference, periodRef);
|
|
@@ -113,6 +110,7 @@ const ClickablePeriod = React.memo(
|
|
|
113
110
|
<>
|
|
114
111
|
<button
|
|
115
112
|
{...restProps}
|
|
113
|
+
data-color={restProps?.["data-color"] ?? status}
|
|
116
114
|
type="button"
|
|
117
115
|
ref={(r) => {
|
|
118
116
|
firstFocus && addFocusable(r, index);
|
|
@@ -169,6 +167,7 @@ const ClickablePeriod = React.memo(
|
|
|
169
167
|
className={cn("navds-timeline__popover")}
|
|
170
168
|
data-placement={placement}
|
|
171
169
|
ref={refs.setFloating}
|
|
170
|
+
role="dialog"
|
|
172
171
|
{...getFloatingProps()}
|
|
173
172
|
style={floatingStyles}
|
|
174
173
|
>
|
|
@@ -6,7 +6,7 @@ import type { PeriodProps } from "../period/types";
|
|
|
6
6
|
export const getConditionalClasses = (
|
|
7
7
|
cropped: string,
|
|
8
8
|
direction: string,
|
|
9
|
-
status:
|
|
9
|
+
status: PeriodProps["status"],
|
|
10
10
|
) => {
|
|
11
11
|
/* Renaming to aksel-* happends where these are used, so no need to rename here */
|
|
12
12
|
return cl(`navds-timeline__period navds-timeline__period--${status}`, {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import cl from "clsx";
|
|
2
2
|
import React, { forwardRef } from "react";
|
|
3
|
-
import { useRenameCSS } from "../theme/Theme";
|
|
3
|
+
import { useRenameCSS, useThemeInternal } from "../theme/Theme";
|
|
4
|
+
import { AkselColor } from "../types";
|
|
4
5
|
import { Label } from "../typography";
|
|
5
6
|
import { useId } from "../util";
|
|
6
7
|
import {
|
|
@@ -48,13 +49,15 @@ export const ToggleGroup = forwardRef<HTMLDivElement, ToggleGroupProps>(
|
|
|
48
49
|
value,
|
|
49
50
|
defaultValue,
|
|
50
51
|
"aria-describedby": userDescribedby,
|
|
51
|
-
variant
|
|
52
|
+
variant,
|
|
52
53
|
fill = false,
|
|
54
|
+
"data-color": color,
|
|
53
55
|
...rest
|
|
54
56
|
},
|
|
55
57
|
ref,
|
|
56
58
|
) => {
|
|
57
59
|
const { cn } = useRenameCSS();
|
|
60
|
+
const themeContext = useThemeInternal(false);
|
|
58
61
|
const descendants = useToggleGroupDescendants();
|
|
59
62
|
|
|
60
63
|
const toggleGroupContext = useToggleGroup({
|
|
@@ -81,6 +84,14 @@ export const ToggleGroup = forwardRef<HTMLDivElement, ToggleGroupProps>(
|
|
|
81
84
|
console.error("ToggleGroup needs either a value or defaultValue");
|
|
82
85
|
}
|
|
83
86
|
|
|
87
|
+
let localVariant: ToggleGroupProps["variant"] | undefined;
|
|
88
|
+
|
|
89
|
+
if (themeContext) {
|
|
90
|
+
localVariant = variant;
|
|
91
|
+
} else {
|
|
92
|
+
localVariant = variant ?? "action";
|
|
93
|
+
}
|
|
94
|
+
|
|
84
95
|
return (
|
|
85
96
|
<ToggleGroupDescendantsProvider value={descendants}>
|
|
86
97
|
<ToggleGroupProvider {...context}>
|
|
@@ -88,6 +99,7 @@ export const ToggleGroup = forwardRef<HTMLDivElement, ToggleGroupProps>(
|
|
|
88
99
|
className={cn("navds-toggle-group__wrapper", className, {
|
|
89
100
|
"navds-toggle-group__wrapper--fill": fill,
|
|
90
101
|
})}
|
|
102
|
+
data-color={color ?? variantToColor(localVariant)}
|
|
91
103
|
>
|
|
92
104
|
{label && (
|
|
93
105
|
<Label
|
|
@@ -104,7 +116,7 @@ export const ToggleGroup = forwardRef<HTMLDivElement, ToggleGroupProps>(
|
|
|
104
116
|
className={cn(
|
|
105
117
|
"navds-toggle-group",
|
|
106
118
|
`navds-toggle-group--${size}`,
|
|
107
|
-
`navds-toggle-group--${
|
|
119
|
+
{ [`navds-toggle-group--${localVariant}`]: localVariant },
|
|
108
120
|
)}
|
|
109
121
|
aria-describedby={
|
|
110
122
|
cl(userDescribedby, !!label && labelId) || undefined
|
|
@@ -120,6 +132,19 @@ export const ToggleGroup = forwardRef<HTMLDivElement, ToggleGroupProps>(
|
|
|
120
132
|
},
|
|
121
133
|
) as ToggleGroupComponent;
|
|
122
134
|
|
|
135
|
+
function variantToColor(
|
|
136
|
+
variant?: ToggleGroupProps["variant"],
|
|
137
|
+
): AkselColor | undefined {
|
|
138
|
+
switch (variant) {
|
|
139
|
+
case "action":
|
|
140
|
+
return "accent";
|
|
141
|
+
case "neutral":
|
|
142
|
+
return "neutral";
|
|
143
|
+
default:
|
|
144
|
+
return undefined;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
|
|
123
148
|
ToggleGroup.Item = ToggleItem;
|
|
124
149
|
|
|
125
150
|
export default ToggleGroup;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./theme";
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-empty-object-type */
|
|
2
|
+
import type { AkselColorRole } from "@navikt/ds-tokens/types";
|
|
3
|
+
|
|
4
|
+
// biome-ignore lint/suspicious/noEmptyInterface: Users can/will augment this interface
|
|
5
|
+
export interface CustomAkselColor {}
|
|
6
|
+
|
|
7
|
+
export type AkselColor = AkselColorRole | keyof CustomAkselColor;
|
|
8
|
+
|
|
9
|
+
declare global {
|
|
10
|
+
namespace React {
|
|
11
|
+
interface HTMLAttributes {
|
|
12
|
+
"data-color"?: AkselColor | (string & {});
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|