{"version":3,"sources":["../src/components/Typography/typographyStyles.module.css","../src/components/helpers/styling/utilStyles.module.css","../src/components/helpers/AccordionBase/useAccordion.tsx","../src/components/helpers/AccordionBase/AccordionBase.module.css","../src/hooks/useCallbackRef/useCallbackRef.ts","../src/hooks/useCombinedRef/useCombinedRef.tsx","../src/hooks/useControllableState/useControllableState.ts","../src/hooks/useFloatPosition/useFloatPosition.tsx","../src/hooks/useFocusTrap/useFocusTrap.tsx","../src/utils/color.tsx","../src/utils/combineHandlers.tsx","../src/utils/dom.ts","../src/utils/getFocusableElements.ts","../src/utils/idGenerator.tsx","../src/utils/object.tsx","../src/utils/readonlyEventHandlers.tsx","../src/utils/searchFilter.tsx","../src/utils/RequiredMarker/RequiredMarker.module.css","../src/utils/RequiredMarker/RequiredMarker.tsx","../src/utils/useElementHeight.ts","../src/hooks/useIsMounted/useIsMounted.ts","../src/hooks/useMountTransition/useMountTransition.tsx","../src/hooks/useOnClickOutside/useOnClickOutside.tsx","../src/hooks/useOnKeyDown/useOnKeyDown.tsx","../src/hooks/useReturnFocusOnBlur/useReturnFocusOnBlur.ts","../src/hooks/useRoveFocus/useRoveFocus.tsx","../src/hooks/useScreenSize/useScreenSize.tsx","../src/hooks/useWindowResize/useWindowResize.tsx","../src/components/helpers/AccordionBase/AccordionContext.tsx","../src/components/helpers/Backdrop/Backdrop.utils.tsx","../src/components/helpers/Backdrop/Backdrop.module.css","../src/components/helpers/Backdrop/Backdrop.tsx","../src/components/helpers/Dropdown/DropdownItem.module.css","../src/types/BaseComponentProps.ts","../src/types/Size.tsx","../src/types/Purpose.tsx","../src/types/Surface.tsx","../src/components/Icon/Icon.tsx","../src/components/layout/common/layout.module.css","../src/components/layout/common/Responsive.types.tsx","../src/components/layout/common/utils.tsx","../src/polymorphic/ElementAs.tsx","../src/components/layout/common/display.module.css","../src/components/layout/ShowHide/ShowHide.tsx","../src/components/layout/Box/Box.tsx","../src/components/layout/Bleed/Bleed.tsx","../src/components/layout/Contrast/Contrast.module.css","../src/components/layout/Contrast/Contrast.tsx","../src/components/layout/Grid/Grid.module.css","../src/components/layout/Grid/Grid.tsx","../src/components/layout/Grid/GridChild.tsx","../src/components/layout/Paper/Paper.module.css","../src/components/layout/Paper/Paper.tsx","../src/components/layout/Stack/VStack/VStack.tsx","../src/components/layout/Stack/HStack/HStack.tsx","../src/components/Spinner/Spinner.tsx","../src/components/Spinner/Spinner.module.css","../src/i18n/LanguageProvider.tsx","../src/i18n/translation.tsx","../src/i18n/commonTexts.tsx","../src/components/helpers/styling/focus.module.css","../src/components/helpers/Dropdown/DropdownItem.tsx","../src/components/helpers/Dropdown/DropdownHeader.tsx","../src/components/helpers/HiddenInput/HiddenInput.tsx","../src/components/helpers/StylelessButton/StylelessButton.tsx","../src/components/helpers/StylelessList/StylelessList.tsx","../src/components/helpers/styling/utils.ts","../src/components/Icon/icons/index.ts","../src/components/Icon/Icon.module.css","../src/components/Icon/utils/SvgWrapper.tsx","../src/components/Icon/icons/addressShielded.tsx","../src/components/Icon/icons/agreement.tsx","../src/components/Icon/icons/apps.tsx","../src/components/Icon/icons/archive.tsx","../src/components/Icon/icons/arrowDown.tsx","../src/components/Icon/icons/arrowLeft.tsx","../src/components/Icon/icons/arrowRight.tsx","../src/components/Icon/icons/arrowUp.tsx","../src/components/Icon/icons/attachment.tsx","../src/components/Icon/icons/block.tsx","../src/components/Icon/icons/book.tsx","../src/components/Icon/icons/briefcase.tsx","../src/components/Icon/icons/build.tsx","../src/components/Icon/icons/building.tsx","../src/components/Icon/icons/calendar.tsx","../src/components/Icon/icons/calendarMonth.tsx","../src/components/Icon/icons/calendarViewDay.tsx","../src/components/Icon/icons/calendarViewMonth.tsx","../src/components/Icon/icons/calendarViewWeek.tsx","../src/components/Icon/icons/call.tsx","../src/components/Icon/icons/caring.tsx","../src/components/Icon/icons/chat.tsx","../src/components/Icon/icons/check.tsx","../src/components/Icon/icons/checkCircled.tsx","../src/components/Icon/icons/checklist.tsx","../src/components/Icon/icons/chevronDown.tsx","../src/components/Icon/icons/chevronFirst.tsx","../src/components/Icon/icons/chevronLast.tsx","../src/components/Icon/icons/chevronLeft.tsx","../src/components/Icon/icons/chevronRight.tsx","../src/components/Icon/icons/chevronUp.tsx","../src/components/Icon/icons/circle.tsx","../src/components/Icon/icons/circleFilled.tsx","../src/components/Icon/icons/close.tsx","../src/components/Icon/icons/closeSmall.tsx","../src/components/Icon/icons/closeCircled.tsx","../src/components/Icon/icons/cloud.tsx","../src/components/Icon/icons/collapse.tsx","../src/components/Icon/icons/comment.tsx","../src/components/Icon/icons/copy.tsx","../src/components/Icon/icons/court.tsx","../src/components/Icon/icons/dateRange.tsx","../src/components/Icon/icons/deaths.tsx","../src/components/Icon/icons/doubleChevronLeft.tsx","../src/components/Icon/icons/doubleChevronRight.tsx","../src/components/Icon/icons/download.tsx","../src/components/Icon/icons/downloadDone.tsx","../src/components/Icon/icons/dragHandle.tsx","../src/components/Icon/icons/edit.tsx","../src/components/Icon/icons/editAlt.tsx","../src/components/Icon/icons/error.tsx","../src/components/Icon/icons/exclaim.tsx","../src/components/Icon/icons/expand.tsx","../src/components/Icon/icons/facebook.tsx","../src/components/Icon/icons/family.tsx","../src/components/Icon/icons/feedback.tsx","../src/components/Icon/icons/file.tsx","../src/components/Icon/icons/fileAdd.tsx","../src/components/Icon/icons/fileShielded.tsx","../src/components/Icon/icons/fileSigned.tsx","../src/components/Icon/icons/fileText.tsx","../src/components/Icon/icons/filter.tsx","../src/components/Icon/icons/filterList.tsx","../src/components/Icon/icons/findInPage.tsx","../src/components/Icon/icons/flickr.tsx","../src/components/Icon/icons/floppyDisk.tsx","../src/components/Icon/icons/folder.tsx","../src/components/Icon/icons/folderAdd.tsx","../src/components/Icon/icons/folderShielded.tsx","../src/components/Icon/icons/fullscreenExit.tsx","../src/components/Icon/icons/fullscreen.tsx","../src/components/Icon/icons/gavel.tsx","../src/components/Icon/icons/group.tsx","../src/components/Icon/icons/guardian.tsx","../src/components/Icon/icons/help.tsx","../src/components/Icon/icons/helpFilled.tsx","../src/components/Icon/icons/home.tsx","../src/components/Icon/icons/hourglassEmpty.tsx","../src/components/Icon/icons/image.tsx","../src/components/Icon/icons/info.tsx","../src/components/Icon/icons/instagram.tsx","../src/components/Icon/icons/jordskifterett.tsx","../src/components/Icon/icons/jordskiftesak.tsx","../src/components/Icon/icons/key.tsx","../src/components/Icon/icons/lagmannsrett.tsx","../src/components/Icon/icons/language.tsx","../src/components/Icon/icons/link.tsx","../src/components/Icon/icons/linkedIn.tsx","../src/components/Icon/icons/linkOff.tsx","../src/components/Icon/icons/list.tsx","../src/components/Icon/icons/listAlt.tsx","../src/components/Icon/icons/location.tsx","../src/components/Icon/icons/lock.tsx","../src/components/Icon/icons/lockFilled.tsx","../src/components/Icon/icons/lockOpen.tsx","../src/components/Icon/icons/login.tsx","../src/components/Icon/icons/logout.tsx","../src/components/Icon/icons/mail.tsx","../src/components/Icon/icons/mailOpen.tsx","../src/components/Icon/icons/menu.tsx","../src/components/Icon/icons/minus.tsx","../src/components/Icon/icons/minusCircled.tsx","../src/components/Icon/icons/moreHorizontal.tsx","../src/components/Icon/icons/moreVertical.tsx","../src/components/Icon/icons/notarial.tsx","../src/components/Icon/icons/notifications.tsx","../src/components/Icon/icons/notificationsOff.tsx","../src/components/Icon/icons/onlineMeeting.tsx","../src/components/Icon/icons/openExternal.tsx","../src/components/Icon/icons/panelLeft.tsx","../src/components/Icon/icons/paperPlane.tsx","../src/components/Icon/icons/payout.tsx","../src/components/Icon/icons/pdf.tsx","../src/components/Icon/icons/person.tsx","../src/components/Icon/icons/personAdd.tsx","../src/components/Icon/icons/personShielded.tsx","../src/components/Icon/icons/pin.tsx","../src/components/Icon/icons/plus.tsx","../src/components/Icon/icons/plusCircled.tsx","../src/components/Icon/icons/powerOfAttorney.tsx","../src/components/Icon/icons/print.tsx","../src/components/Icon/icons/publish.tsx","../src/components/Icon/icons/questionAnswer.tsx","../src/components/Icon/icons/receipt.tsx","../src/components/Icon/icons/redo.tsx","../src/components/Icon/icons/rows.tsx","../src/components/Icon/icons/refresh.tsx","../src/components/Icon/icons/replay.tsx","../src/components/Icon/icons/scale.tsx","../src/components/Icon/icons/search.tsx","../src/components/Icon/icons/section.tsx","../src/components/Icon/icons/settings.tsx","../src/components/Icon/icons/sms.tsx","../src/components/Icon/icons/star.tsx","../src/components/Icon/icons/starFilled.tsx","../src/components/Icon/icons/starHalfFilled.tsx","../src/components/Icon/icons/sync.tsx","../src/components/Icon/icons/thumbdown.tsx","../src/components/Icon/icons/thumbdownFilled.tsx","../src/components/Icon/icons/thumbup.tsx","../src/components/Icon/icons/thumbupFilled.tsx","../src/components/Icon/icons/time.tsx","../src/components/Icon/icons/tingrett.tsx","../src/components/Icon/icons/tip.tsx","../src/components/Icon/icons/trash.tsx","../src/components/Icon/icons/undo.tsx","../src/components/Icon/icons/unfoldLess.tsx","../src/components/Icon/icons/unfoldMore.tsx","../src/components/Icon/icons/upload.tsx","../src/components/Icon/icons/visibilityOff.tsx","../src/components/Icon/icons/visibilityOn.tsx","../src/components/Icon/icons/warning.tsx","../src/components/Icon/icons/webex.tsx","../src/components/Icon/icons/x.tsx","../src/components/Icon/icons/zoomIn.tsx","../src/components/Icon/icons/zoomOut.tsx","../src/components/Icon/icons/barChart.tsx","../src/components/Icon/icons/barChartBoxed.tsx","../src/components/Icon/icons/lineChart.tsx","../src/components/Icon/icons/trendingUp.tsx","../src/components/Icon/icons/trendingDown.tsx","../src/components/Icon/icons/helpSimple.tsx","../src/components/Icon/icons/animated/AnimatedChevronUpDown/AnimatedChevronUpDown.module.css","../src/components/Icon/icons/animated/AnimatedChevronUpDown/AnimatedChevronUpDown.tsx","../src/components/Icon/icons/flag.tsx","../src/components/Icon/icons/flagFilled.tsx","../src/components/Icon/icons/locationOff.tsx","../src/components/Icon/icons/map.tsx","../src/components/Icon/icons/moon.tsx","../src/components/Icon/icons/notebookPen.tsx","../src/components/Icon/icons/stickyNote.tsx","../src/components/Icon/icons/sun.tsx","../src/components/Icon/icons/support.tsx","../src/components/ThemeProvider/ThemeProvider.tsx","../src/components/ThemeProvider/ThemeProvider.module.css","../src/DdsProvider/DdsProvider.tsx","../src/components/Accordion/Accordion.module.css","../src/components/Accordion/Accordion.tsx","../src/components/Typography/Typography/TextOverflowEllipsis/TextOverflowEllipsis.module.css","../src/components/Typography/Typography/TextOverflowEllipsis/TextOverflowEllipsis.tsx","../src/components/Typography/Typography/Typography.module.css","../src/components/Typography/Typography/Typography.types.ts","../src/components/Typography/Typography/Typography.utils.ts","../src/components/Typography/Typography/Typography.tsx","../src/components/Typography/Caption/Caption.tsx","../src/components/Typography/Heading/Heading.tsx","../src/components/Typography/Label/Label.module.css","../src/components/Typography/Label/Label.tsx","../src/components/Typography/Legend/Legend.tsx","../src/components/Typography/Link/Link.tsx","../src/components/Typography/Paragraph/Paragraph.tsx","../src/components/Accordion/AccordionHeader.tsx","../src/components/Accordion/AccordionBody.tsx","../src/components/BackLink/BackLink.module.css","../src/components/BackLink/BackLink.tsx","../src/components/Breadcrumbs/Breadcrumb.tsx","../src/components/Breadcrumbs/Breadcrumbs.tsx","../src/components/Breadcrumbs/Breadcrumbs.module.css","../src/components/Button/Button.module.css","../src/components/ButtonGroup/ButtonGroup.context.tsx","../src/components/Button/Button.tsx","../src/components/OverflowMenu/OverflowMenu.tsx","../src/components/OverflowMenu/OverflowMenu.context.tsx","../src/components/OverflowMenu/OverflowMenu.module.css","../src/components/OverflowMenu/components/OverflowMenuButton.tsx","../src/components/OverflowMenu/components/OverflowMenuLink.tsx","../src/components/OverflowMenu/components/OverflowMenuToggle.tsx","../src/components/Toggle/Toggle.tsx","../src/components/Toggle/Toggle.module.css","../src/components/VisuallyHidden/VisuallyHidden.tsx","../src/components/Divider/Divider.module.css","../src/components/Divider/Divider.tsx","../src/components/OverflowMenu/components/OverflowMenuDivider.tsx","../src/components/OverflowMenu/components/OverflowMenuList.tsx","../src/components/OverflowMenu/components/OverflowMenuSpan.tsx","../src/components/OverflowMenu/components/OverflowMenuListHeader.tsx","../src/components/OverflowMenu/OverflowMenuGroup.tsx","../src/components/ButtonGroup/ButtonGroup.module.css","../src/components/ButtonGroup/ButtonGroup.tsx","../src/components/Card/Card.module.css","../src/components/Card/Card.tsx","../src/components/Card/CardExpandable/CardExpandable.module.css","../src/components/Card/CardExpandable/CardExpandable.tsx","../src/components/Card/CardExpandable/CardExpandableHeader.tsx","../src/components/Card/CardExpandable/CardExpandableBody.tsx","../src/components/SelectionControl/Checkbox/Checkbox.tsx","../src/components/SelectionControl/Checkbox/CheckboxGroupContext.tsx","../src/components/SelectionControl/SelectionControl.module.css","../src/components/SelectionControl/SelectionControl.styles.tsx","../src/components/SelectionControl/SelectionControl.utils.tsx","../src/components/SelectionControl/Checkbox/CheckboxGroup.tsx","../src/types/Booleanish.ts","../src/components/InputMessage/InputMessage.tsx","../src/components/SelectionControl/RadioButton/RadioButton.tsx","../src/components/SelectionControl/RadioButton/RadioButtonGroupContext.tsx","../src/components/SelectionControl/RadioButton/RadioButtonGroup.tsx","../src/components/Card/CardSelectionControl/CardSelectable.context.tsx","../src/components/Card/CardSelectionControl/CardSelectable.tsx","../src/components/Card/CardSelectionControl/CardSelectableGroup.tsx","../src/components/Chip/Chip.tsx","../src/components/Chip/ChipGroup.tsx","../src/components/CookieBanner/CookieBanner.tsx","../src/components/CookieBanner/CookieBanner.module.css","../src/components/CookieBanner/CookieBannerCheckbox.tsx","../src/components/date-inputs/DatePicker/Calendar/Calendar.tsx","../src/components/date-inputs/DatePicker/Calendar/CalendarGrid.tsx","../src/components/date-inputs/DatePicker/Calendar/CalendarCell.tsx","../src/components/date-inputs/common/DateInput.module.css","../src/components/date-inputs/DatePicker/constants.ts","../src/components/date-inputs/utils/getWeekNumber.ts","../src/components/date-inputs/DatePicker/CalendarPopover.tsx","../src/components/date-inputs/DatePicker/DatePicker.tsx","../src/components/date-inputs/DatePicker/DateField/DateField.tsx","../src/components/date-inputs/DatePicker/DateField/CalendarButton.tsx","../src/components/helpers/InlineIconButton/InlineIconButton.module.css","../src/components/helpers/InlineIconButton/InlineIconButton.tsx","../src/components/helpers/Input/Input.module.css","../src/components/date-inputs/DatePicker/DateField/DateField.utils.tsx","../src/components/date-inputs/DatePicker/DateField/DateSegment.tsx","../src/components/helpers/ClearButton/ClearButton.tsx","../src/components/date-inputs/common/DateInput.tsx","../src/components/helpers/Input/Input.tsx","../src/components/helpers/Input/Input.utils.tsx","../src/components/Typography/Label/Label.utils.tsx","../src/components/date-inputs/utils/useFocusManagerRef.ts","../src/components/date-inputs/TimePicker/TimePicker.tsx","../src/components/date-inputs/TimePicker/TimePicker.utils.ts","../src/components/date-inputs/utils/transform.ts","../src/components/DescriptionList/DescriptionList.module.css","../src/components/DescriptionList/DescriptionList.tsx","../src/components/DescriptionList/DescriptionListTerm.tsx","../src/components/DescriptionList/DescriptionListDesc.tsx","../src/components/DescriptionList/DescriptionListGroup.tsx","../src/components/DetailList/DetailList.context.tsx","../src/components/DetailList/DetailList.module.css","../src/components/Table/normal/Table.module.css","../src/components/DetailList/DetailList.tsx","../src/components/DetailList/DetailListDesc.tsx","../src/components/DetailList/DetailListRow.tsx","../src/components/DetailList/DetailListTerm.tsx","../src/components/Drawer/Drawer.tsx","../src/components/Drawer/Drawer.module.css","../src/components/Drawer/Drawer.context.tsx","../src/components/Drawer/DrawerGroup.tsx","../src/components/EmptyContent/EmptyContent.tsx","../src/components/ErrorSummary/ErrorSummary.module.css","../src/components/List/List.module.css","../src/components/List/List.tsx","../src/components/List/ListItem.tsx","../src/components/ErrorSummary/ErrorSummary.tsx","../src/components/ErrorSummary/ErrorSummaryItem.tsx","../src/components/FavStar/FavStar.tsx","../src/components/FavStar/FavStar.module.css","../src/components/Feedback/Feedback.tsx","../src/components/Feedback/Feedback.module.css","../src/components/TextArea/TextArea.tsx","../src/components/TextArea/TextArea.module.css","../src/components/helpers/CharCounter/CharCounter.tsx","../src/components/helpers/CharCounter/CharCounter.module.css","../src/components/Feedback/utils.tsx","../src/components/Feedback/CommentComponent.tsx","../src/components/Tooltip/Tooltip.tsx","../src/components/Tooltip/Tooltip.module.css","../src/components/Feedback/RatingComponent.tsx","../src/components/Fieldset/Fieldset.module.css","../src/components/Fieldset/Fieldset.tsx","../src/components/Fieldset/FieldsetGroup.tsx","../src/components/FileUploader/FileUploader.tsx","../src/components/FileUploader/ErrorList.tsx","../src/components/FileUploader/File.tsx","../src/components/FileUploader/FileUploader.module.css","../src/components/FileUploader/useFileUploader.ts","../src/components/FileUploader/attr-accept.ts","../src/components/FileUploader/FileUploader.utils.ts","../src/components/FileUploader/fileUploaderReducer.ts","../src/components/Footer/Footer.module.css","../src/components/Footer/Footer.tsx","../src/components/Footer/FooterListHeader.tsx","../src/components/Footer/FooterLogo.tsx","../src/components/Footer/FooterList.tsx","../src/components/Footer/FooterSocialsList.tsx","../src/components/Footer/FooterSocialsGroup.tsx","../src/components/Footer/FooterListGroup.tsx","../src/components/Footer/FooterLeft.tsx","../src/components/FormSummary/FormSummary.tsx","../src/components/FormSummary/FormSummary.module.css","../src/components/FormSummary/FormSummary.components.tsx","../src/components/GlobalMessage/GlobalMessage.tsx","../src/components/GlobalMessage/GlobalMessage.module.css","../src/components/InlineButton/InlineButton.module.css","../src/components/InlineButton/InlineButton.tsx","../src/components/InlineEdit/InlineEditTextArea/InlineEditTextArea.tsx","../src/components/InlineEdit/InlineEdit.context.tsx","../src/components/InlineEdit/InlineField.tsx","../src/components/InlineEdit/InlineEdit.module.css","../src/components/InlineEdit/InlineEdit.utils.tsx","../src/utils/createClearChangeEvent.tsx","../src/components/InlineEdit/InlineEditInput/InlineEditInput.tsx","../src/components/InlineEdit/InlineEditSelect/InlineEditSelect.tsx","../src/components/InternalHeader/InternalHeader.tsx","../src/components/InternalHeader/InternalHeader.module.css","../src/components/InternalHeader/NavigationItem.tsx","../src/components/LocalMessage/LocalMessage.tsx","../src/components/LocalMessage/LocalMessage.module.css","../src/components/Modal/Modal.tsx","../src/components/Modal/Modal.module.css","../src/components/Modal/ModalBody.tsx","../src/components/Modal/ModalActions.tsx","../src/components/NewsPopover/NewsPopover.module.css","../src/components/NewsPopover/NewsPopover.tsx","../src/components/Pagination/Pagination.tsx","../src/components/Pagination/Pagination.module.css","../src/components/Pagination/paginationGenerator.tsx","../src/components/Select/Select.tsx","../src/components/Select/Select.module.css","../src/components/Select/Select.styles.ts","../src/components/Select/SelectComponents.tsx","../src/components/Select/NativeSelect/NativeSelect.tsx","../src/components/Select/NativeSelect/NativeSelect.module.css","../src/components/Select/utils.ts","../src/components/PhoneInput/PhoneInput.tsx","../src/components/PhoneInput/constants.ts","../src/components/PhoneInput/PhoneInput.module.css","../src/components/Popover/Popover.tsx","../src/components/Popover/Popover.module.css","../src/components/Popover/Popover.context.tsx","../src/components/Popover/PopoverGroup.tsx","../src/components/ProgressTracker/ProgressTracker.tsx","../src/components/ProgressTracker/ProgressTracker.context.tsx","../src/components/ProgressTracker/ProgressTracker.module.css","../src/components/ProgressTracker/ProgressTrackerItem.tsx","../src/components/ProgressBar/ProgressBar.tsx","../src/components/ProgressBar/ProgressBar.module.css","../src/components/Search/Search.tsx","../src/components/Search/AutocompleteSearch.context.tsx","../src/components/Search/Search.module.css","../src/components/Search/SearchSuggestionItem.tsx","../src/components/Search/SearchSuggestions.tsx","../src/components/Search/SearchAutocompleteWrapper.tsx","../src/components/Search/index.ts","../src/components/Skeleton/Skeleton.module.css","../src/components/Skeleton/Skeleton.tsx","../src/components/SkipToContent/SkipToContent.module.css","../src/components/SkipToContent/SkipToContent.tsx","../src/components/SplitButton/SplitButton.tsx","../src/components/SplitButton/SplitButton.module.css","../src/components/Table/collapsible/CollapsibleRow.tsx","../src/components/Table/collapsible/Table.context.tsx","../src/components/Table/normal/Body.tsx","../src/components/Table/normal/Head.tsx","../src/components/Table/normal/Cell.tsx","../src/components/Table/normal/Foot.tsx","../src/components/Table/normal/Row.tsx","../src/components/Table/normal/SortCell.tsx","../src/components/Table/normal/Table.tsx","../src/components/Table/normal/TableWrapper.tsx","../src/components/Table/normal/index.ts","../src/components/Table/collapsible/CollapsibleTable.tsx","../src/components/Table/collapsible/index.ts","../src/components/Tabs/AddTabButton.tsx","../src/components/Tabs/Tabs.context.tsx","../src/components/Tabs/Tabs.module.css","../src/components/Tabs/TabWidthContext.tsx","../src/components/Tabs/Tabs.tsx","../src/components/Tabs/Tab.tsx","../src/components/Tabs/TabList.tsx","../src/components/Tabs/TabPanel.tsx","../src/components/Tabs/TabPanels.tsx","../src/components/Tag/Tag.module.css","../src/components/Tag/Tag.tsx","../src/components/TextInput/TextInput.tsx","../src/components/TextInput/TextInput.module.css","../src/components/ToggleBar/ToggleBar.tsx","../src/components/ToggleBar/ToggleBar.context.tsx","../src/components/ToggleBar/ToggleRadio.tsx","../src/components/ToggleBar/ToggleBar.module.css","../src/components/ToggleButton/ToggleButton.tsx","../src/components/ToggleButton/ToggleButton.module.css","../src/components/ToggleButton/ToggleButtonGroup.tsx"],"sourcesContent":[".contrast {\n  --dds-color-text-body: var(--dds-color-text-on-inverse);\n  --dds-color-text-body-subtle: var(--dds-color-text-on-inverse);\n  --dds-color-text-link: var(--dds-color-text-on-inverse);\n  --dds-color-text-link-visited: var(\n    --dds-color-text-action-visited-on-inverse\n  );\n  --dds-color-text-label: var(--dds-color-text-on-inverse);\n  --dds-color-text-helper: var(--dds-color-text-on-inverse);\n  --dds-color-text-placeholder: var(--dds-color-text-on-inverse);\n  --dds-color-icon-link: var(--dds-color-text-on-inverse);\n  --dds-color-text-default-inversable: var(--dds-color-text-on-inverse);\n  --dds-color-text-subtle-inversable: var(--dds-color-text-on-inverse);\n  --dds-color-text-medium-inversable: var(--dds-color-text-on-inverse);\n  --dds-color-text-action-resting-inversable: var(--dds-color-text-on-inverse);\n  --dds-color-text-action-hover-inversable: var(--dds-color-text-on-inverse);\n  --dds-color-text-requiredfield-inversable: var(--dds-color-text-on-inverse);\n  color: var(--dds-color-text-on-inverse);\n  --dds-color-icon-default-inversable: var(--dds-color-text-on-inverse);\n  --dds-color-icon-subtle-inversable: var(--dds-color-text-on-inverse);\n  --dds-color-icon-medium-inversable: var(--dds-color-text-on-inverse);\n  --dds-color-icon-action-resting-inversable: var(--dds-color-icon-on-inverse);\n  --dds-color-icon-action-hover-inversable: var(--dds-color-icon-on-inverse);\n}\n\n.tertiary-medium {\n  --dds-color-text-body: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-text-body-subtle: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-text-link: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-text-link-visited: var(\n    --dds-color-text-action-visited-on-te--dds-color-text-on-tertiary-medium\n  );\n  --dds-color-text-label: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-text-helper: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-text-placeholder: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-icon-link: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-text-default-inversable: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-text-subtle-inversable: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-text-medium-inversable: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-text-action-resting-inversable: var(\n    --dds-color-text-on-tertiary-medium\n  );\n  --dds-color-text-action-hover-inversable: var(\n    --dds-color-text-on-tertiary-medium\n  );\n  --dds-color-text-requiredfield-inversable: var(\n    --dds-color-text-on-tertiary-medium\n  );\n  color: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-icon-default-inversable: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-icon-subtle-inversable: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-icon-medium-inversable: var(--dds-color-text-on-tertiary-medium);\n  --dds-color-icon-action-resting-inversable: var(\n    --dds-color-icon-on-te--dds-color-text-on-tertiary-medium\n  );\n  --dds-color-icon-action-hover-inversable: var(\n    --dds-color-icon-on-te--dds-color-text-on-tertiary-medium\n  );\n}\n\n:where(.a),\n:where(.a--nested__parent .a--nested__child) {\n  font: inherit;\n  color: var(--dds-color-text-link);\n  width: fit-content;\n  text-decoration: underline;\n  text-decoration-thickness: max(1px, 0.0625rem);\n  text-underline-offset: max(4px, 0.25rem);\n  margin: 0;\n\n  &:hover {\n    text-decoration-color: transparent;\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      color var(--dds-motion-micro-state),\n      text-decoration-color var(--dds-motion-micro-state),\n      var(--dds-focus-transition);\n  }\n}\n\n:where(.a--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-body-long-medium-paragraph-spacing);\n}\n\n:where(.a--with-icon) > svg {\n  display: inline;\n  margin: 0.1em 0.1em -0.1em;\n  transform: translateY(0.05em);\n  vertical-align: baseline;\n}\n\n.a--visited:visited {\n  color: var(--dds-color-text-link-visited);\n}\n\n:where(.body-short-xsmall) {\n  margin: 0;\n  font: var(--dds-font-body-short-xsmall);\n  letter-spacing: var(--dds-font-body-short-xsmall-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.body-short-xsmall--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-body-short-xsmall-paragraph-spacing);\n}\n\n:where(.body-short-small) {\n  margin: 0;\n  font: var(--dds-font-body-short-small);\n  letter-spacing: var(--dds-font-body-short-small-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.body-short-small--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-body-short-small-paragraph-spacing);\n}\n\n:where(.body-short-medium) {\n  margin: 0;\n  font: var(--dds-font-body-short-medium);\n  letter-spacing: var(--dds-font-body-short-medium-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.body-short-medium--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-body-short-medium-paragraph-spacing);\n}\n\n:where(.body-short-large) {\n  margin: 0;\n  font: var(--dds-font-body-short-large);\n  letter-spacing: var(--dds-font-body-short-large-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.body-short-large--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-body-short-large-paragraph-spacing);\n}\n\n:where(.body-long-xsmall) {\n  margin: 0;\n  font: var(--dds-font-body-long-xsmall);\n  letter-spacing: var(--dds-font-body-long-xsmall-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.body-long-xsmall--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-body-long-xsmall-paragraph-spacing);\n}\n\n:where(.body-long-small) {\n  margin: 0;\n  font: var(--dds-font-body-long-small);\n  letter-spacing: var(--dds-font-body-long-small-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.body-long-small--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-body-long-small-paragraph-spacing);\n}\n\n:where(.body-long-medium) {\n  margin: 0;\n  font: var(--dds-font-body-long-medium);\n  letter-spacing: var(--dds-font-body-long-medium-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.body-long-medium--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-body-long-medium-paragraph-spacing);\n}\n\n:where(.body-long-large) {\n  margin: 0;\n  font: var(--dds-font-body-long-large);\n  letter-spacing: var(--dds-font-body-long-large-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.body-long-large--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-body-long-large-paragraph-spacing);\n}\n\n:where(.lead-medium) {\n  margin: 0;\n  font: var(--dds-font-lead-medium);\n  letter-spacing: var(--dds-font-lead-medium-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.lead-medium--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-lead-medium-paragraph-spacing);\n}\n\n:where(.heading-xxsmall) {\n  margin: 0;\n  font: var(--dds-font-heading-xxsmall);\n  letter-spacing: var(--dds-font-heading-xxsmall-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.heading-xxsmall--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-heading-xxsmall-paragraph-spacing);\n  padding-top: var(--dds-spacing-padding-top-heading);\n}\n\n:where(.heading-xsmall) {\n  margin: 0;\n  font: var(--dds-font-heading-xsmall);\n  letter-spacing: var(--dds-font-heading-xsmall-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.heading-xsmall--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-heading-xsmall-paragraph-spacing);\n  padding-top: var(--dds-spacing-padding-top-heading);\n}\n\n:where(.heading-small) {\n  margin: 0;\n  font: var(--dds-font-heading-small);\n  letter-spacing: var(--dds-font-heading-small-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.heading-small--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-heading-small-paragraph-spacing);\n  padding-top: var(--dds-spacing-padding-top-heading);\n}\n\n:where(.heading-medium) {\n  margin: 0;\n  font: var(--dds-font-heading-medium);\n  letter-spacing: var(--dds-font-heading-medium-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.heading-medium--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-heading-medium-paragraph-spacing);\n  padding-top: var(--dds-spacing-padding-top-heading);\n}\n\n:where(.heading-large) {\n  margin: 0;\n  font: var(--dds-font-heading-large);\n  letter-spacing: var(--dds-font-heading-large-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.heading-large--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-heading-large-paragraph-spacing);\n  padding-top: var(--dds-spacing-padding-top-heading);\n}\n\n:where(.heading-xlarge) {\n  margin: 0;\n  font: var(--dds-font-heading-xlarge);\n  letter-spacing: var(--dds-font-heading-xlarge-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.heading-xlarge--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-heading-xlarge-paragraph-spacing);\n  padding-top: var(--dds-spacing-padding-top-heading);\n}\n\n:where(.heading-xxlarge) {\n  margin: 0;\n  font: var(--dds-font-heading-xxlarge);\n  letter-spacing: var(--dds-font-heading-xxlarge-letter-spacing);\n  color: var(--dds-color-text-body);\n}\n\n:where(.heading-xxlarge--margins) {\n  display: block;\n  margin-top: 0;\n  margin-bottom: var(--dds-font-heading-xxlarge-paragraph-spacing);\n  padding-top: var(--dds-spacing-padding-top-heading);\n}\n\n:where(.heading--margins-over-input) {\n  margin-bottom: var(--dds-spacing-x1-5);\n}\n\n:where(.label-medium) {\n  margin: 0;\n  font: var(--dds-font-label-medium);\n  letter-spacing: var(--dds-font-label-medium-letter-spacing);\n  color: var(--dds-color-text-label);\n}\n\n:where(.label-medium--margins) {\n  display: block;\n  margin-bottom: var(--dds-spacing-x0-125);\n}\n\n:where(.legend) {\n  padding-inline: 0;\n}\n\n:where(.legend--margins-over-input) {\n  margin-bottom: var(--dds-spacing-x1-5);\n}\n\n:where(.caption) {\n  text-align: left;\n}\n\n:where(.caption--withMargins) {\n  display: table-caption;\n}\n\n:where(.bold) {\n  font-weight: 600;\n}\n\n:where(.italic) {\n  font-style: italic;\n}\n\n:where(.underline) {\n  text-decoration: underline;\n}\n\n.text-color--inherit {\n  color: inherit;\n}\n\n.text-color--default {\n  color: var(--dds-color-text-default-inversable);\n}\n\n.text-color--medium {\n  color: var(--dds-color-text-medium-inversable);\n}\n\n.text-color--subtle {\n  color: var(--dds-color-text-subtle-inversable);\n}\n\n.text-color--requiredfield {\n  color: var(--dds-color-text-requiredfield-inversable);\n}\n\n.text-color--action-resting {\n  color: var(--dds-color-text-action-resting-inversable);\n}\n\n.text-color--action-hover:hover {\n  color: var(--dds-color-text-action-hover-inversable);\n}\n\n.text-color--action-visited:visited {\n  color: var(--dds-color-text-link-visited);\n}\n\n.text-color--on-action {\n  color: var(--dds-color-text-on-action);\n}\n\n.text-color--on-status-default {\n  color: var(--dds-color-text-on-status-default);\n}\n\n.text-color--on-status-strong {\n  color: var(--dds-color-text-on-status-strong);\n}\n\n.text-color--on-notification {\n  color: var(--dds-color-text-on-notification);\n}\n\n.text-color--on-primary-default {\n  color: var(--dds-color-text-on-primary-default);\n}\n\n.text-color--on-primary-medium {\n  color: var(--dds-color-text-on-primary-medium);\n}\n\n.text-color--on-primary-subtle {\n  color: var(--dds-color-text-on-primary-subtle);\n}\n\n.text-color--on-primary-strong {\n  color: var(--dds-color-text-on-primary-strong);\n}\n\n.text-color--on-secondary-default {\n  color: var(--dds-color-text-on-secondary-default);\n}\n\n.text-color--on-secondary-medium {\n  color: var(--dds-color-text-on-secondary-medium);\n}\n\n.text-color--on-secondary-subtle {\n  color: var(--dds-color-text-on-secondary-subtle);\n}\n\n.text-color--on-secondary-strong {\n  color: var(--dds-color-text-on-secondary-strong);\n}\n\n.text-color--on-tertiary-default {\n  color: var(--dds-color-text-on-tertiary-default);\n}\n\n.text-color--on-tertiary-medium {\n  color: var(--dds-color-text-on-tertiary-medium);\n}\n\n.text-color--on-tertiary-subtle {\n  color: var(--dds-color-text-on-tertiary-subtle);\n}\n\n.text-color--on-tertiary-strong {\n  color: var(--dds-color-text-on-tertiary-strong);\n}\n\n.text-color--on-data-default {\n  color: var(--dds-color-text-on-data-default);\n}\n\n.text-color--on-data-subtle {\n  color: var(--dds-color-text-on-data-subtle);\n}\n\n.text-color--on-inverse {\n  color: var(--dds-color-text-on-inverse);\n}\n\n.icon-color--default {\n  color: var(--dds-color-icon-default-inversable);\n}\n\n.icon-color--medium {\n  color: var(--dds-color-icon-medium-inversable);\n}\n\n.icon-color--subtle {\n  color: var(--dds-color-icon-subtle-inversable);\n}\n\n.icon-color--on-action {\n  color: var(--dds-color-icon-on-action);\n}\n\n.icon-color--action-resting {\n  color: var(--dds-color-icon-action-resting-inversable);\n}\n\n.icon-color--action-hover:hover {\n  color: var(--dds-color-icon-action-hover-inversable);\n}\n\n.icon-color--on-action {\n  color: var(--dds-color-icon-on-action);\n}\n\n.icon-color--on-info-default {\n  color: var(--dds-color-icon-on-info-default);\n}\n\n.icon-color--on-info-strong {\n  color: var(--dds-color-icon-on-info-strong);\n}\n\n.icon-color--on-success-default {\n  color: var(--dds-color-icon-on-success-default);\n}\n\n.icon-color--on-success-strong {\n  color: var(--dds-color-icon-on-success-strong);\n}\n\n.icon-color--on-danger-default {\n  color: var(--dds-color-icon-on-danger-default);\n}\n\n.icon-color--on-danger-strong {\n  color: var(--dds-color-icon-on-danger-strong);\n}\n\n.icon-color--on-warning-default {\n  color: var(--dds-color-icon-on-warning-default);\n}\n\n.icon-color--on-warning-strong {\n  color: var(--dds-color-icon-on-warning-strong);\n}\n\n.icon-color--on-inverse {\n  color: var(--dds-color-icon-on-inverse);\n}\n",":where(.remove-list-styling) {\n  list-style: none;\n  padding: 0;\n  margin: 0;\n}\n\n:where(.remove-button-styling) {\n  background: none;\n  border: none;\n  padding: 0;\n  font: inherit;\n  cursor: pointer;\n  outline: inherit;\n}\n\n:where(.normalize-button) {\n  margin: 0;\n  text-transform: none;\n}\n\n.hide-input {\n  clip-path: rect(0 0 0 0);\n  position: absolute;\n  height: 1px;\n  width: 1px;\n  margin: 0;\n}\n\n.inherit-link-styling {\n  color: inherit;\n  text-decoration: inherit;\n}\n\n.scrollbar {\n  scrollbar-width: thin;\n  scrollbar-color: var(--dds-color-surface-scrollbar) transparent;\n}\n\n.scrollable-y {\n  overflow-y: auto;\n}\n\n.visibility-transition {\n  --dds-visibility-transition: visibility 0.4s;\n  --dds-opacity-transition: opacity var(--dds-motion-surface);\n\n  opacity: 0;\n  @media (prefers-reduced-motion: no-preference) {\n    transition: var(--dds-visibility-transition), var(--dds-opacity-transition);\n  }\n}\n.visibility-transition--open {\n  opacity: 1;\n  visibility: visible;\n}\n.visibility-transition--closed {\n  opacity: 0;\n  visibility: hidden;\n}\n\n.visually-hidden {\n  position: absolute;\n  width: 1px;\n  height: 1px;\n  margin: 0px;\n  padding: 0px;\n  top: 0px;\n  inset-inline-start: 0px;\n  overflow: hidden;\n  clip: rect(0, 0, 0, 0);\n  clip-path: inset(50%);\n  border: 0px;\n}\n\n.invisible {\n  visibility: hidden;\n}\n\n.center-absolute {\n  position: absolute;\n  left: 50%;\n  top: 50%;\n  transform: translate(-50%, -50%);\n}\n\n.center-absolute-y {\n  position: absolute;\n  top: 50%;\n  transform: translateY(-50%);\n}\n\n.center-absolute-x {\n  position: absolute;\n  left: 50%;\n  transform: translateX(-50%);\n}\n","import {\n  type Dispatch,\n  type RefObject,\n  type SetStateAction,\n  useCallback,\n  useEffect,\n  useId,\n  useLayoutEffect,\n  useRef,\n  useState,\n} from 'react';\n\nimport styles from './AccordionBase.module.css';\nimport { useControllableState } from '../../../hooks';\nimport { type Nullable } from '../../../types';\nimport { cn, useElementHeight } from '../../../utils';\n\nexport interface AccordionConfig {\n  /**\n   * Ukontrollerttilstand: om utvidbare delen skal være utvidet ved første render.\n   */\n  isInitiallyExpanded?: boolean;\n  /**\n   * Kontrollert tilstand: om utvidbare delen er utvidet.\n   */\n  isExpanded?: boolean;\n  /**\n   * Callback når tilstanden endres.\n   */\n  onChange?: (expanded: boolean) => void;\n  /**\n   * Custom id for accordion; delene får i tillegg suffix `'header'` og `'body'`.\n   */\n  id?: string;\n}\n\nexport interface UseAccordionHeaderProps {\n  /**\n   * `onClick` som kontrollerer lukking og åpning av accordion, og eventuelt `onChange` satt i config\n   */\n  onClick: () => void;\n  /**\n   * Nativ `aria-expanded`.\n   */\n  'aria-expanded': boolean;\n  /**\n   * Nativ `aria-controls`.\n   */\n  'aria-controls': string;\n  /**\n   * Id, settes for riktig bruk av aria-props.\n   */\n  id: string;\n}\n\nexport interface UseAccordionBodyProps {\n  /**\n   * Id, settes for riktig bruk av aria-props.\n   */\n  id: string;\n  /**\n   * Nativ `role`. Gir innholdet en rolle tilgjengelig for skjermlesere.\n   */\n  role: string;\n  /**\n   * Nativ `aria-labelledby`.\n   */\n  'aria-labelledby': string;\n  /**\n   * Nativ `aria-hidden`.\n   */\n  'aria-hidden': boolean;\n  /**\n   * Høyde som skal settes i CSS for animasjon.\n   */\n  height?: number;\n  /**\n   * Klassenavn for innhold-wrapper; håndterer animasjon og lukking.\n   */\n  className?: string;\n}\n\nexport interface AccordionState {\n  /**\n   * Id, settes for riktig bruk av aria-props.\n   */\n  id: string;\n  /**\n   * Om accordion er utvided.\n   */\n  isExpanded: boolean;\n  /**\n   * State funksjon som setter `isExpanded` ved behov.\n   */\n  setIsExpanded: Dispatch<SetStateAction<boolean>>;\n  /**\n   * Funksjon som åpner accordion. Brukes ved behov.\n   */\n  openAccordion: () => void;\n  /**\n   * Funksjon som lukker accordion. Brukes ved behov.\n   */\n  closeAccordion: () => void;\n  /**\n   * Funksjon som toggler accordion. Brukes ved behov.\n   */\n  toggleExpanded: () => void;\n  /**\n   * Props som settes på header-elementet.\n   */\n  headerProps: UseAccordionHeaderProps;\n  /**\n   * Props som settes på innholds-elementet.\n   */\n  bodyProps: UseAccordionBodyProps;\n  /**\n   * Ref som settes på wrapper inni innholds-elementet; Sørger for animasjon.\n   */\n  bodyContentRef: RefObject<HTMLDivElement | null>;\n}\n\n/**\n * Implementerer trekkspill-mønsteret; header som utvider og trekker sammen et panel. Håndterer oppførsel, UU og visuelle effekter.\n * @returns {AccordionState} accordion state og props å bruke på acccordion-elementer: header og body.\n * @example\n * ```tsx\n * function MyComponent() {\n *\n *  const { isExpanded, bodyContentRef, headerProps, bodyProps } = useAccordion({});\n *  const { height, ...restBodyProps } = bodyProps;\n *\n *  return (\n *    <>\n *      <button {...headerProps}>\n *        {isExpanded ? 'Skjul' : 'Vis'} innhold\n *      </button>\n *      <div style={{height}} {...restBodyProps}>\n *        <div ref={bodyContentRef}>\n *          innhold\n *        </div>\n *      </div>\n *    </>\n *  )\n * });\n * ```\n */\n\nexport const useAccordion = ({\n  isInitiallyExpanded = false,\n  isExpanded: isExpandedProp,\n  onChange,\n  id,\n}: AccordionConfig): AccordionState => {\n  const [isExpanded, setIsExpanded] = useControllableState<boolean>({\n    onChange,\n    defaultValue: isInitiallyExpanded,\n    value: isExpandedProp,\n  });\n\n  const generatedId = useId();\n  const accordionId = id ?? `${generatedId}-accordion`;\n\n  const openAccordion = useCallback(() => setIsExpanded(true), [setIsExpanded]);\n  const closeAccordion = useCallback(\n    () => setIsExpanded(false),\n    [setIsExpanded],\n  );\n\n  const toggleExpanded = useCallback(() => {\n    setIsExpanded(prev => !prev);\n  }, [setIsExpanded]);\n\n  const bodyContentRef = useRef<HTMLDivElement>(null);\n\n  const [animate, setAnimate] = useState(false);\n\n  const height = useElementHeight(bodyContentRef.current);\n\n  const [initialExpandedHeight, setIntialExpandedHeight] =\n    useState<Nullable<number>>(null);\n\n  useLayoutEffect(() => {\n    // For å unngå initiell animasjon dersom Accordion er satt til å være åpen som default.\n    if (bodyContentRef.current && isExpanded) {\n      setIntialExpandedHeight(bodyContentRef.current.scrollHeight);\n    }\n  }, []);\n\n  useEffect(() => {\n    const raf = requestAnimationFrame(() => {\n      setAnimate(true);\n    });\n\n    return () => cancelAnimationFrame(raf);\n  }, []);\n\n  const headerProps: UseAccordionHeaderProps = {\n    id: `${accordionId}-header`,\n    onClick: toggleExpanded,\n    'aria-expanded': isExpanded,\n    'aria-controls': `${accordionId}-body`,\n  };\n\n  const bodyProps: UseAccordionBodyProps = {\n    id: `${accordionId}-body`,\n    role: 'region',\n    'aria-labelledby': `${accordionId}-header`,\n    'aria-hidden': !isExpanded,\n    className: cn(\n      styles.body,\n      !isExpanded && styles['body--hidden'],\n      animate && styles['body--animated'],\n    ),\n    height: height ?? initialExpandedHeight ?? 0,\n  };\n\n  return {\n    id: accordionId,\n    isExpanded,\n    setIsExpanded,\n    openAccordion,\n    closeAccordion,\n    toggleExpanded,\n    bodyContentRef,\n    headerProps,\n    bodyProps,\n  };\n};\n",":where(.header-button) {\n  -webkit-user-select: text;\n          user-select: text;\n  position: relative;\n  cursor: pointer;\n  display: block;\n  width: 100%;\n  border-radius: inherit;\n}\n\n.header__content {\n  text-align: left;\n  display: flex;\n  align-items: center;\n}\n\n.body {\n  overflow: hidden;\n}\n\n.body--animated {\n  @media (prefers-reduced-motion: no-preference) {\n    transition: height var(--dds-motion-surface);\n  }\n}\n\n.body--hidden {\n  display: none;\n}\n","import { type DependencyList, useCallback, useEffect, useRef } from 'react';\n\n/**\n * Hook som returnerer en callback-funksjon som refererer til den nyeste versjonen av den opprinnelige funksjonen.\n * Nyttig når du trenger en stabil referanse (f.eks. i event listeners), men fortsatt ønsker at den skal bruke den nyeste logikken.\n *\n * @template T - Typen til callback-funksjonen.\n * @param {T | undefined} callback - Funksjonen som skal kalles.\n * @param {DependencyList} [deps=[]] - Avhengigheter som styrer når den returnerte funksjonen skal oppdateres.\n * @returns {T} En memorisert funksjon som peker til den nyeste versjonen av `callback`.\n * @example\n * ```tsx\n * function MyComponent() {\n *   const [count, setCount] = useState(0);\n *\n *   const handleClick = useCallbackRef(() => {\n *     console.log('Klikk med count:', count);\n *   }, [count]);\n *\n *   useEffect(() => {\n *     window.addEventListener('click', handleClick);\n *     return () => window.removeEventListener('click', handleClick);\n *   }, [handleClick]);\n *\n *   return <button onClick={() => setCount(c => c + 1)}>Øk</button>;\n * }\n * ```\n\n */\n\nexport function useCallbackRef<T extends (...args: Array<never>) => unknown>(\n  callback: T | undefined,\n  deps: DependencyList = [],\n): T {\n  const callbackRef = useRef(callback);\n\n  useEffect(() => {\n    callbackRef.current = callback;\n  });\n\n  return useCallback(((...args) => callbackRef.current?.(...args)) as T, deps);\n}\n","import type { Ref, RefCallback, RefObject } from 'react';\nimport { useCallback } from 'react';\n\n/**\n * Kombinerer refs for et element.\n *\n * @template T elementet som refereres til.\n * @param {Array<Ref<T> | undefined>} refs array med refs.\n * @returns {RefCallback<T>} callback med kombinerte refs.\n * @example\n * ```tsx\n * function MyComponent(ref) {\n *\n *  const itemRef = useRef<HTMLDivElement>(null);\n *  const combinedRef = useCombinedRef(ref, itemRef);\n *\n *  return <div ref={combinedRef}>innhold</div>\n * });\n * ```\n */\n\nexport function useCombinedRef<T>(\n  ...refs: Array<Ref<T> | undefined>\n): RefCallback<T> {\n  return useCallback((element: T) => {\n    refs.filter(Boolean).forEach(ref => {\n      if (typeof ref === 'function') ref(element);\n      else if (ref && typeof ref === 'object')\n        (ref as RefObject<T>).current = element;\n    });\n  }, refs);\n}\n","import {\n  type ChangeEvent,\n  type Dispatch,\n  type SetStateAction,\n  useState,\n} from 'react';\n\nimport { useCallbackRef } from '../useCallbackRef';\n\nexport interface UseControllableStateProps<T> {\n  /**Verdi. */\n  value?: T;\n  /**Default verdi. */\n  defaultValue?: T | (() => T);\n  /** `onChange` funksjon. */\n  onChange?: (value: T) => void;\n}\n\n/**\n * The `useControllableState` hook returns the state and function that updates the state, just like React.useState does.\n */\n\n/**\n * Håndterer bruk av state slik at den kan bli enten kontrollert eller ukontrollert ut av boksen.\n * @template T typen til verdien.\n * @param {{\n *  value?: T;\n *  defaultValue?: T | (() => T);\n *  onChange?: (value: T) => void;\n * }} props verdi, default verdi ved ukontrollert state og funksjon til å kotrnollere `value`.\n * @returns {[T, Dispatch<SetStateAction<T>>]} state og funksjon til å kontrollere den.\n * @example\n * ```tsx\n * const MyComponent = ({\n *   onChange,\n *  checked: checkedProp,\n *  defaultChecked\n * }) => {\n *  const [checked, setChecked] = useControllableState({\n *    value: checkedProp,\n *    defaultValue: defaultChecked ?? false,\n *    onChange,\n *  });\n *  return (\n *    <input\n *      checked={checked}\n *      onChange={e => setChecked(e.target.checked)}\n *      type=\"checkbox\"\n *    />\n *  ) };\n * ```\n */\n\nexport function useControllableState<T>(\n  props: UseControllableStateProps<T>,\n): [T, Dispatch<SetStateAction<T>>] {\n  const { value: valueProp, defaultValue, onChange } = props;\n\n  const onChangeProp = useCallbackRef(onChange);\n\n  const [uncontrolledState, setUncontrolledState] = useState(defaultValue as T);\n  const controlled = valueProp !== undefined;\n  const value = controlled ? valueProp : uncontrolledState;\n\n  const setValue = useCallbackRef(\n    (next: SetStateAction<T>) => {\n      const setter = next as (prevState?: T) => T;\n      const nextValue = typeof next === 'function' ? setter(value) : next;\n\n      if (!controlled) {\n        setUncontrolledState(nextValue);\n      }\n\n      onChangeProp(nextValue);\n    },\n    [controlled, onChangeProp, value],\n  );\n\n  return [value, setValue] as [T, Dispatch<SetStateAction<T>>];\n}\n\n/**\n * The `useControllableGroupState` hook returns the group value and handleChange function to control it.\n */\nexport interface UseControllableGroupStateProps<T> extends Pick<\n  UseControllableStateProps<T>,\n  'defaultValue' | 'value'\n> {\n  onChange?: (event: ChangeEvent<HTMLInputElement>, value: T) => void;\n}\n\nexport function useControllableGroupState<T>(\n  props: UseControllableGroupStateProps<T>,\n) {\n  const { value, defaultValue, onChange } = props;\n  const [uncontrolledValue, setUncontrolledValue] = useState<T | undefined>(\n    defaultValue,\n  );\n  const isControlled = value !== undefined;\n  const groupValue = isControlled ? value : uncontrolledValue;\n\n  const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n    const newValue = e.target.value as T;\n    if (!isControlled) {\n      setUncontrolledValue(newValue);\n    }\n    if (onChange) {\n      onChange(e, newValue);\n    }\n  };\n\n  return { groupValue, handleChange };\n}\n","import {\n  type Coords,\n  type Strategy,\n  type UseFloatingReturn,\n  arrow,\n  autoUpdate,\n  flip,\n  offset as floatingOffset,\n  shift,\n  useFloating,\n} from '@floating-ui/react-dom';\n\nconst defaultOffset = 8;\n\nexport type Placement =\n  | 'top'\n  | 'top-start'\n  | 'top-end'\n  | 'bottom'\n  | 'bottom-start'\n  | 'bottom-end'\n  | 'right'\n  | 'right-start'\n  | 'right-end'\n  | 'left'\n  | 'left-start'\n  | 'left-end';\n\nexport interface UseFloatPositionOptions {\n  /**\n   * Whether to update the position of the floating element on every animation frame if required.\n   * This is optimized for performance but can still be costly.\n   * @default true\n   */\n  animationFrame?: boolean;\n  /**\n   * `offset` is used to displace the floating element from its core placement.\n   * The value passed is logical, meaning its effect on the\n   * physical result is dependent on the writing direction (e.g. RTL).\n   * @default 8\n   */\n  offset?: number;\n  /**\n   * Where to place the floating element relative to its reference element.\n   * @default 'bottom'\n   */\n  placement?: Placement;\n}\n\nexport interface FloatingStyles {\n  position: Strategy;\n  top: number;\n  left: number;\n}\n\ninterface UseFloatPosition {\n  refs: UseFloatingReturn['refs'];\n  isPositioned: boolean;\n  styles: {\n    floating: FloatingStyles;\n    arrow:\n      | {\n          [x: string]: string | number;\n          position: Strategy;\n          top: string | number;\n          left: string | number;\n          transform: string;\n        }\n      | undefined;\n  };\n}\n\n/**\n * Håndterer posisjonering av et element i forhold til et annet element i DOM.\n * @param {HTMLElement | null} arrowRef pil-elementet.\n * @param {{AnimationFrame: boolean, offset: number, placement: Placement}} options alternativer for float.\n * @returns {{\n *  refs: import('@floating-ui/react-dom').UseFloatingReturn['refs'],\n *  styles: {\n *    floating: import('@floating-ui/react-dom').FloatingStyles,\n *    arrow:\n *      undefined | {\n *        [x: string]: string | number;\n *        position: Strategy;\n *        top: string | number;\n *        left: string | number;\n *        transform: string;\n *      }\n *  }\n * }}  Objekt med refs og styling for floating UI.\n * @example\n * ```tsx\n * function MyComponent() {\n *\n *    // Hvis du trenger en pil\n *    const [arrowElement, setArrowElement] = useState<HTMLElement | null>(null);\n *\n *    const { refs, styles: positionStyles } = useFloatPosition(arrowElement, {\n *      placement: 'right',\n *      offset: 2,\n *    });\n *\n *    return (\n *      <>\n *        <button ref={refs.setReference}>Anchor</button>\n *        <div\n *          ref={refs.setFloating}\n *          style={positionStyles.floating}\n *        >\n *          <div ref={setArrowElement} style={positionStyles.arrow}>\n *          // din pil, f.eks. svg\n *          </div>\n *          Innhold\n *        </div>\n *      </>\n * };\n * ```\n */\n\nexport const useFloatPosition = (\n  arrowRef?: HTMLElement | null,\n  options: UseFloatPositionOptions = {},\n): UseFloatPosition => {\n  const {\n    animationFrame = true,\n    offset = defaultOffset,\n    placement = 'bottom',\n  } = options;\n\n  const middleware = [\n    floatingOffset(offset),\n    flip(),\n    shift(),\n\n    // Only add arrow(...) if arrowRef is set\n    ...(arrowRef ? [arrow({ element: arrowRef })] : []),\n  ];\n\n  const {\n    x,\n    y,\n    strategy,\n    middlewareData,\n    placement: actualPlacement,\n    refs,\n    isPositioned,\n  } = useFloating({\n    placement,\n    middleware,\n    whileElementsMounted: (reference, floating, update) =>\n      autoUpdate(reference, floating, update, { animationFrame }),\n  });\n\n  return {\n    refs,\n    isPositioned,\n    styles: {\n      floating: {\n        position: strategy,\n        top: y ?? '',\n        left: x ?? '',\n      },\n      arrow: middlewareData.arrow\n        ? getArrowStyling(strategy, actualPlacement, middlewareData.arrow)\n        : undefined,\n    },\n  };\n};\n\ntype Arrow = Partial<Coords> & { centerOffset: number };\n\nfunction getArrowStyling(\n  strategy: Strategy,\n  placement: Placement,\n  arrow: Arrow,\n) {\n  const arrowPlacement = placementToArrowPlacement(placement);\n\n  const arrowPlacementOffset = {\n    top: '-15px',\n    bottom: '-15px',\n    right: '-21px',\n    left: '-21px',\n  }[arrowPlacement];\n\n  const rotateArrow = {\n    top: 'rotate(180deg)',\n    right: 'rotate(-90deg)',\n    bottom: '',\n    left: 'rotate(90deg)',\n  }[arrowPlacement];\n\n  return {\n    position: strategy,\n    top: arrow?.y ?? '',\n    left: arrow?.x ?? '',\n    [arrowPlacement]: arrowPlacementOffset,\n    transform: rotateArrow,\n  };\n}\n\ntype ArrowPlacement = 'top' | 'bottom' | 'left' | 'right';\n\nfunction placementToArrowPlacement(placement: Placement): ArrowPlacement {\n  switch (placement) {\n    case 'top':\n    case 'top-start':\n    case 'top-end':\n      return 'bottom';\n\n    case 'bottom':\n    case 'bottom-start':\n    case 'bottom-end':\n      return 'top';\n\n    case 'left':\n    case 'left-start':\n    case 'left-end':\n      return 'right';\n\n    case 'right':\n    case 'right-start':\n    case 'right-end':\n      return 'left';\n  }\n}\n","import { type RefObject, useLayoutEffect, useRef } from 'react';\n\nimport { getFocusableElements } from '../../utils';\n\n/**\n * Fanger fokus i en loop inni et element.\n * @template {HTMLElement} T typen til container-elementet som fanger fokus.\n * @param {boolean} active om focus skal fanges, f.eks. når en modal åpnes.\n * @param {RefObject<HTMLElement | null> | undefined} initialFocusRef `ref` til elementet som skal motta focus når focus trap er aktiv.\n * @returns {RefObject<T | null>} `ref` til elementet som fanger fokus.\n * @example\n * ```tsx\n * function MyComponent() {\n *\n *  const [isOpen, setOpen] = useState(false);\n *  const componentRef = useFocusTrap<HTMLDivElement>(isOpen);\n *\n *  return isOpen ? <div ref={componentRef}><button>click</button></div> : null;\n *\n * }\n * ```\n */\n\nexport function useFocusTrap<T extends HTMLElement>(\n  active: boolean,\n  initialFocusRef: RefObject<HTMLElement | null> | undefined = undefined,\n): RefObject<T | null> {\n  const containerRef = useRef<T>(null);\n\n  useLayoutEffect(() => {\n    const container = containerRef.current;\n\n    if (!active || !container) return;\n\n    if (initialFocusRef?.current) {\n      initialFocusRef.current.focus();\n    } else {\n      container.tabIndex = container.tabIndex || -1;\n      container.focus();\n    }\n\n    function handleFocus(e: KeyboardEvent) {\n      if (e.key !== 'Tab') return;\n\n      const focusableEls = getFocusableElements(containerRef);\n\n      if (focusableEls.length < 1) return;\n\n      const firstEl = focusableEls[0];\n      const lastEl = focusableEls[focusableEls.length - 1];\n      const activeEl = document.activeElement;\n\n      if (!e.shiftKey && activeEl === lastEl) {\n        firstEl.focus();\n        e.preventDefault();\n      }\n\n      if (e.shiftKey && activeEl === firstEl) {\n        lastEl.focus();\n        e.preventDefault();\n      }\n    }\n\n    document.addEventListener('keydown', handleFocus);\n    return () => {\n      document.removeEventListener('keydown', handleFocus);\n    };\n  }, [active]);\n\n  return containerRef;\n}\n","import { type Property } from 'csstype';\n\nexport const hexToRGBValues = (hex: string): string => {\n  const r = parseInt(hex.slice(1, 3), 16),\n    g = parseInt(hex.slice(3, 5), 16),\n    b = parseInt(hex.slice(5, 7), 16);\n\n  return [r, g, b].join(', ');\n};\n\nconst TEXT_COLORS = [\n  'text-on-action',\n  'text-on-inverse',\n  'text-on-status-default',\n  'text-on-status-strong',\n  'text-action-resting',\n  'text-action-hover',\n  'text-action-visited',\n  'text-default',\n  'text-requiredfield',\n  'text-subtle',\n  'text-medium',\n  'text-on-notification',\n  'text-on-primary-default',\n  'text-on-primary-medium',\n  'text-on-primary-subtle',\n  'text-on-primary-strong',\n  'text-on-secondary-default',\n  'text-on-secondary-medium',\n  'text-on-secondary-subtle',\n  'text-on-secondary-strong',\n  'text-on-tertiary-default',\n  'text-on-tertiary-medium',\n  'text-on-tertiary-subtle',\n  'text-on-tertiary-strong',\n  'text-on-data-default',\n  'text-on-data-subtle',\n  'icon-on-action',\n  'icon-on-info-default',\n  'icon-on-success-default',\n  'icon-on-danger-default',\n  'icon-on-warning-default',\n  'icon-on-info-strong',\n  'icon-on-success-strong',\n  'icon-on-danger-strong',\n  'icon-on-warning-strong',\n  'icon-on-inverse',\n  'icon-action-resting',\n  'icon-action-hover',\n  'icon-default',\n  'icon-subtle',\n  'icon-medium',\n] as const;\n\nconst ICON_COLORS = [\n  ...TEXT_COLORS,\n  'brand-primary-default',\n  'brand-primary-strong',\n  'brand-primary-medium',\n  'brand-primary-subtle',\n  'brand-secondary-default',\n  'brand-secondary-strong',\n  'brand-secondary-medium',\n  'brand-secondary-subtle',\n  'brand-tertiary-default',\n  'brand-tertiary-strong',\n  'brand-tertiary-medium',\n  'brand-tertiary-subtle',\n] as const;\n\ntype DDSTextColor = (typeof TEXT_COLORS)[number];\ntype DDSIconColor = (typeof ICON_COLORS)[number];\n\nconst TEXT_COLOR_VALUES: Record<DDSTextColor, string> = TEXT_COLORS.reduce(\n  (acc, key) => {\n    acc[key] = `var(--dds-color-${key})`;\n    return acc;\n  },\n  {} as Record<DDSTextColor, string>,\n);\n\nconst ICON_COLOR_VALUES: Record<DDSIconColor, string> = ICON_COLORS.reduce(\n  (acc, key) => {\n    acc[key] = `var(--dds-color-${key})`;\n    return acc;\n  },\n  {} as Record<DDSIconColor, string>,\n);\n\nexport type TextColor = DDSTextColor | Property.Color;\nexport type IconColor = DDSIconColor | Property.Color;\n\nexport const isTextColor = (value: unknown): value is DDSTextColor => {\n  return (\n    typeof value === 'string' && TEXT_COLORS.includes(value as DDSTextColor)\n  );\n};\n\nexport const getTextColor = (color: TextColor): string => {\n  if (isTextColor(color)) return TEXT_COLOR_VALUES[color];\n  return color;\n};\n\nexport const isIconColor = (value: unknown): value is DDSIconColor => {\n  return (\n    typeof value === 'string' && ICON_COLORS.includes(value as DDSIconColor)\n  );\n};\n\nexport const getIconColor = (color: IconColor): string => {\n  if (isIconColor(color)) return ICON_COLOR_VALUES[color];\n  return color;\n};\n","import { type Callback } from '../types';\n\nexport const combineHandlers = <T,>(\n  handler1?: Callback<T>,\n  handler2?: Callback<T>,\n): Callback<T> => {\n  const callback: Callback<T> = event => {\n    handler1?.(event);\n    handler2?.(event);\n  };\n  return callback;\n};\n","/**\n * Join class names together.\n * Will filter out all falsy values.\n */\nexport function cn(...classNames: Array<unknown>) {\n  const filtered = classNames.filter(Boolean).join(' ');\n  return filtered || undefined;\n}\n\nexport function convertCamelToHyphen(value: string) {\n  return value\n    .replace(/([a-z])([A-Z])/g, '$1-$2')\n    .replace(/([a-z])([0-9])/g, '$1-$2')\n    .toLowerCase();\n}\n\nexport const defaultPortalTarget = () =>\n  document.getElementsByClassName('dds-themed')[0] as HTMLElement;\n\n/**\n * Returnener verdien hvis den er truthy.\n * Ellers returnerer `undefined`.\n * Kan konfigureres til å beholde `0`.\n */\nexport function optAttr<T>(\n  value: T | undefined | null,\n  keepZero?: boolean,\n): T | undefined {\n  if (keepZero && value === 0) {\n    return value;\n  }\n  return value ? value : undefined;\n}\n","import { type RefObject } from 'react';\n\nexport function getFocusableElements<T extends HTMLElement>(\n  elementRef: RefObject<T | null>,\n): NodeListOf<HTMLElement> | [] {\n  return elementRef && elementRef.current\n    ? elementRef.current.querySelectorAll(\n        'a[href], button:not([disabled]), textarea:not([disabled]), input:not([disabled]), select:not([disabled]), [tabindex]:not([tabindex=\"-1\"])',\n      )\n    : [];\n}\n","export const derivativeIdGenerator = (prefix: string, suffix: string): string =>\n  `${prefix}-${suffix}`;\n\nexport const spaceSeparatedIdListGenerator = (\n  values: Array<string | undefined>,\n): string | undefined => {\n  const filtered = values.filter(Boolean);\n\n  return filtered.length > 0 ? filtered.join(' ') : undefined;\n};\n","export const isEmpty = (obj: object) =>\n  Object.keys(obj).length === 0 && obj.constructor === Object;\n","import {\n  type ChangeEvent,\n  type ChangeEventHandler,\n  type KeyboardEvent,\n  type KeyboardEventHandler,\n  type MouseEvent,\n  type MouseEventHandler,\n} from 'react';\n// Handlers ved readonly, da det ikke støttes ut av boksen for enkelte inputelementer (select, radio, checkbox)\n\n/** MouseDownHandler ved readonly for select, radio, checkbox. */\nexport const readOnlyMouseDownHandler = <T,>(\n  readOnly?: boolean,\n  onMouseDown?: MouseEventHandler<T>,\n) => {\n  return (evt: MouseEvent<T>) => {\n    // NOTE: stopper ikke klikk\n    if (readOnly) {\n      evt.preventDefault();\n      // gi fokus til elementet per standard readonly oppførsel\n      (evt.target as HTMLElement).focus();\n    } else onMouseDown?.(evt);\n  };\n};\n\ntype ReadOnlyKeyDownHandlerType = 'select' | 'selectionControl' | 'file';\n\n/** KeyDownHandler ved readonly for select, radio, checkbox. */\nexport const readOnlyKeyDownHandler = <T,>(\n  type: ReadOnlyKeyDownHandlerType,\n  readOnly?: boolean,\n  onKeyDown?: KeyboardEventHandler<T>,\n) => {\n  return (evt: KeyboardEvent<T>) => {\n    // stopper relevant tastaturinput, unntatt Tab, per standard readonly oppførsel\n    if (readOnly) {\n      if (\n        type === 'select' &&\n        ['ArrowDown', 'ArrowUp', 'ArrowRight', 'ArrowLeft', ' '].includes(\n          evt.key,\n        )\n      ) {\n        evt.preventDefault();\n      } else if (type === 'selectionControl' && evt.key === ' ') {\n        evt.preventDefault();\n      } else if (type === 'file' && (evt.key === ' ' || evt.key === 'Enter')) {\n        evt.preventDefault();\n      }\n    } else onKeyDown?.(evt);\n  };\n};\n\n/** ChangeHandler ved readonly for select, radio, checkbox. */\nexport const readOnlyChangeHandler = <T,>(\n  readOnly?: boolean,\n  onChange?: ChangeEventHandler<T>,\n) => {\n  return (evt: ChangeEvent<T>) => {\n    if (readOnly) {\n      return;\n    }\n    onChange?.(evt);\n  };\n};\n\n/** ClickHandler ved readonly for select, radio, checkbox. */\nexport const readOnlyClickHandler = <T,>(\n  readOnly?: boolean,\n  onClick?: MouseEventHandler<T>,\n) => {\n  return (evt: MouseEvent<T>) => {\n    if (readOnly) {\n      evt.preventDefault();\n      return;\n    }\n    onClick?.(evt);\n  };\n};\n","export function escapeRegexCharacters(text: string) {\n  return text.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&');\n}\n\nexport function searchFilter(text: string, query: string): boolean {\n  // Søkeordet er enten først i teksten, eller så har det mellomrom, bindestrek eller start-parentes før seg.\n  const searchFilterRegex = new RegExp(\n    `(?:^|[\\\\s-(])${escapeRegexCharacters(query.toLowerCase())}`,\n  );\n  return searchFilterRegex.test(text.toLowerCase());\n}\n",".wrapper {\n  color: var(--dds-color-text-requiredfield);\n}\n","import styles from './RequiredMarker.module.css';\n\nexport const RequiredMarker = () => <span className={styles.wrapper}>*</span>;\n","import { useEffect, useState } from 'react';\n\nimport { type Nullable } from '../types';\n\nexport function useElementHeight(\n  element: HTMLDivElement | null,\n): number | null {\n  const [height, setHeight] = useState<Nullable<number>>(null);\n\n  useEffect(() => {\n    if (!element) return;\n\n    const resizeObserver = new ResizeObserver(() => {\n      setHeight(element.offsetHeight);\n    });\n\n    resizeObserver.observe(element);\n\n    return () => resizeObserver.disconnect();\n  }, [element]);\n\n  return height;\n}\n","import { useCallback, useEffect, useRef } from 'react';\n\n/**\n * Sjekker om komponenten er mounted i DOM.\n *\n * @returns {() => boolean} om komponenten er mounted.\n * @example\n * ```tsx\n * function MyComponent() {\n *\n *  const isMounted = useIsMounted();\n *\n *  useEffect(() => {\n *    if(isMounted()) {\n *    // logikk når mounted\n *    }\n *  }, [isMounted]);\n *\n * });\n * ```\n *\n */\n\nexport const useIsMounted = (): (() => boolean) => {\n  const isMounted = useRef(false);\n\n  useEffect(() => {\n    isMounted.current = true;\n    return () => {\n      isMounted.current = false;\n    };\n  }, []);\n\n  return useCallback(() => isMounted.current, []);\n};\n","import { useEffect, useState } from 'react';\n\n/**\n * Tillater effekter og animasjoner å bli gjennomført like etter et element blir lagt til eller like før det blir fjernet fra DOM.\n * @param {boolean} isMounted om elementet er mounted.\n * @param {number} unmountDelay hvor lenge transition skal vare før unmount.\n * @returns {boolean} om den har trasisjonert inn.\n * @example\n * ```css\n * // CSS\n * .component {\n *  transition: opacity 0.2s;\n *  opacity: 0;\n * }\n *\n * .transitionedIn.mounted {\n *  opacity: 1;\n * }\n * ```\n * ```jsx\n * // JSX\n * function MyComponent(isMounted) {\n *\n * const hasTransitionedIn = useMountTransition(isMounted, 500);\n *\n *  return isMounted || hasTransitionedIn ? (\n *    <div\n *      className={`component ${hasTransitionedIn && 'transitionedIn'} ${isMounted && 'mounted'}`}\n *    >\n *      innhold\n *    </div>)\n *  : null;\n * };\n * ```\n */\n\nexport const useMountTransition = (\n  isMounted: boolean,\n  unmountDelay: number,\n): boolean => {\n  const [hasTransitionedIn, setHasTransitionedIn] = useState(false);\n\n  useEffect(() => {\n    let timeoutId: ReturnType<typeof setTimeout>;\n    if (isMounted && !hasTransitionedIn) setHasTransitionedIn(true);\n    else if (!isMounted && hasTransitionedIn) {\n      timeoutId = setTimeout(() => setHasTransitionedIn(false), unmountDelay);\n    }\n    return () => {\n      clearTimeout(timeoutId);\n    };\n  }, [unmountDelay, isMounted, hasTransitionedIn]);\n  return hasTransitionedIn;\n};\n","import { type RefObject, useEffect } from 'react';\n\n/**\n * Kjører logikk når brukeren klikker utenfor espesifisert(e) element(er).\n * @param {HTMLElement | null | undefined | Array<HTMLElement | null | undefined>} element HTML element(er) som overvåkes for klikk utenfor.\n * @param {(event: MouseEvent | TouchEvent) => void} handler funksjonen som kjøres ved klikk utenfor.\n * @returns {void}\n * @example\n * ```tsx\n * * function MyComponent() {\n *  const [isOpen, setOpen] = useState(true);\n *  const ref = useRef<HTMLDivElement>(null);\n *  useOnClickOutside(ref.current, () => setOpen(false));\n *\n *  return isOpen && <div ref={ref}>innhold</div>\n * };\n * ```\n */\n\nexport function useOnClickOutside(\n  element:\n    | RefObject<HTMLElement | null>\n    | Array<RefObject<HTMLElement | null> | undefined>\n    | undefined,\n  handler: (event: MouseEvent | TouchEvent) => void,\n): void {\n  useEffect(() => {\n    const listener = (event: MouseEvent | TouchEvent) => {\n      const elements: Array<HTMLElement> = Array.isArray(element)\n        ? element\n            .map(ref => ref?.current)\n            .filter((el): el is HTMLElement => Boolean(el))\n        : element?.current\n          ? [element.current]\n          : [];\n\n      const hasClickedInside = elements.some(el =>\n        el?.contains(event.target as HTMLElement),\n      );\n\n      // ClearIndicator in react-select removes itself from DOM before this handler goes off.\n      // Therefore a click on it will always be counted as a click outside, for everything.\n      // This is not a great solution, but it is a fair assumption that this will do more good than harm.\n      const clickedOnSomethingInDocument = document.contains(\n        event.target as Node,\n      );\n      if (hasClickedInside || !clickedOnSomethingInDocument) return;\n\n      handler(event);\n    };\n    document.addEventListener('mousedown', listener);\n    document.addEventListener('touchstart', listener);\n    return () => {\n      document.removeEventListener('mousedown', listener);\n      document.removeEventListener('touchstart', listener);\n    };\n  }, [element, handler]);\n}\n","import { useEffect } from 'react';\n\n/**\n * Kjører logikk når spesifisert(e) tast(er) blir trykt ned.\n * @param {string} key tasten som trykkes.\n * @param {(event: KeyboardEvent) => void} handler funksjonen som skal kjøres.\n * @returns {void}\n * @example\n * ```tsx\n * function MyComponent() {\n *  const [isOpen, setOpen] = useState(true);\n *  useOnKeyDown('Escape', () => setOpen(false));\n *\n *   return isOpen ? <div>innhold</div> : null;\n * }\n * ```\n */\n\nexport const useOnKeyDown = (\n  key: string | Array<string>,\n  handler: (event: KeyboardEvent) => void,\n) => {\n  useEffect(() => {\n    const listener = (event: KeyboardEvent) => {\n      const keys = Array.isArray(key) ? key : [key];\n      if (keys.indexOf(event.key) !== -1) {\n        handler(event);\n      }\n    };\n\n    document.addEventListener('keydown', listener, true);\n\n    return () => {\n      document.removeEventListener('keydown', listener, true);\n    };\n  }, [handler]);\n};\n","import { type RefObject, useEffect, useRef } from 'react';\n\nimport { getFocusableElements } from '../../utils';\n\n/**\n * Returnerer fokus til et element når første eller siste barn i en container mister fokus ved tastaturnavigasjon.\n * @template {HTMLElement} T typen til container som skal returnere fous.\n * @param {boolean} active om container skal få fokus, f.eks. når en modal åpnes.\n * @param {() => void} onBlur ekstra logikk når fokus forlater container.\n * @param {HTMLElement | null | undefined} triggerElement elementet som skal få fokus når fokus forlater container.\n * @returns {RefObject<T | null>} ref til container som skal returnere fokus.\n * @example\n * ```tsx\n * const MyComponent() {\n *\n *  const [isOpen, setOpen] = useState(false);\n *  const triggerRef = useRef<HTMLButtonElement>(null);\n *  const containerRef = useReturnFocusOnBlur<HTMLDivElement>(\n *    isOpen,\n *    () => setOpen(false),\n *    triggerRef.current,\n *  );\n *\n *  return (\n *    <div>\n *      <button\n *        ref={triggerRef}\n *        onClick={() => setOpen(true)}\n *      >\n *        Åpne popover\n *      </button>\n *      {isOpen &&\n *        <div ref={containerRef}>\n *          <button>1</button>\n *          <button>2</button>\n *        </div>\n *      }\n *    </div>\n *  )\n * }\n * ```\n */\n\nexport function useReturnFocusOnBlur<T extends HTMLElement>(\n  active: boolean,\n  onBlur: () => void,\n  triggerElement?: HTMLElement | null,\n): RefObject<T | null> {\n  const elementRef = useRef<T>(null);\n\n  useEffect(() => {\n    function handleFocus(e: KeyboardEvent) {\n      if (e.key !== 'Tab' || !active || !elementRef.current || !triggerElement)\n        return;\n      const focusableElements = getFocusableElements(elementRef);\n      const lastElement = focusableElements[focusableElements.length - 1];\n      const firstElement = focusableElements[0];\n\n      if (\n        (!e.shiftKey && document.activeElement === lastElement) ||\n        (e.shiftKey && document.activeElement === firstElement) ||\n        (e.shiftKey && document.activeElement === elementRef.current)\n      ) {\n        triggerElement.focus();\n        e.preventDefault();\n        onBlur();\n      }\n    }\n\n    const element = elementRef.current;\n    if (element && active) {\n      element.focus();\n      element.addEventListener('keydown', handleFocus);\n    }\n\n    return () => {\n      element?.removeEventListener('keydown', handleFocus);\n    };\n  }, [active, triggerElement, onBlur]);\n\n  return elementRef;\n}\n","import {\n  type Dispatch,\n  type KeyboardEvent,\n  type SetStateAction,\n  useCallback,\n  useEffect,\n  useState,\n} from 'react';\n\nimport { type Direction } from '../../types';\n\nexport const isKeyboardEvent = (\n  e: Event | KeyboardEvent<Element>,\n): e is KeyboardEvent<Element> =>\n  (e as KeyboardEvent<Element>).key !== undefined;\n\n/**\n * Bytter fokus mellom elementer i en gruppe med piltaster og ikke `Tab`, samt looper fokus i gruppen.\n * @param {number} size antall elementer i gruppen.\n * @param {boolean} active om fokus skal kontrolleres av hooken. Når status blir inaktiv vil fokusrekkefølge nullstilles.\n * @param {'row' | 'column'} direction retning elementene blas i.\n * @param {boolean} noWrap om indeksen skal 'wrappe' rundt til 0 hvis den går over size - 1, eller til size - 1 hvis den går under 0.\n * @returns {[focusedIndex: number, setFocus: Dispatch<SetStateAction<number>>]} hook par: indeksen til fokuserte elemenentet og funksjonen som håndterer fokus.\n * @example\n * ```tsx\n * import elements from './elements';\n * import RoveItem from './RoveItem';\n *\n * function MyComponent() {\n *  const [focusedIndex, setFocus] = useRoveFocus(elements.length);\n *\n *  return (\n *  <ul>\n *    {elements.map((element, index) => (\n *    <li key={element}>\n *      <RoveItem index={index} shouldFocus={focusedIndex === index} setFocus={setFocus}>{element.name}</RoveItem>\n *    </li>\n *    ))}\n *  </ul>)\n * }\n * ```\n */\n\nexport function useRoveFocus(\n  size?: number,\n  active?: boolean,\n  direction: Direction = 'column',\n  noWrap?: boolean,\n): [number, Dispatch<SetStateAction<number>>] {\n  const [currentFocusIndex, setCurrentFocusIndex] = useState(-1);\n\n  const nextKey = direction === 'row' ? 'ArrowRight' : 'ArrowDown';\n  const previousKey = direction === 'row' ? 'ArrowLeft' : 'ArrowUp';\n\n  const handleKeyDown = useCallback(\n    (e: Event) => {\n      if (!size || !isKeyboardEvent(e)) return;\n      if (e.key === nextKey) {\n        // Down / Right arrow\n        e.preventDefault();\n        setCurrentFocusIndex(prev => {\n          if (prev === size - 1) return noWrap ? prev : 0;\n          return prev + 1;\n        });\n      } else if (e.key === previousKey) {\n        // Up / Left arrow\n        e.preventDefault();\n        setCurrentFocusIndex(prev => {\n          if (prev === -1 || prev === 0) return noWrap ? prev : size - 1;\n          return prev - 1;\n        });\n      }\n    },\n    [size, setCurrentFocusIndex, direction, noWrap],\n  );\n\n  useEffect(() => {\n    if (!active) {\n      setCurrentFocusIndex(-1);\n      return;\n    }\n\n    document.addEventListener('keydown', handleKeyDown, false);\n    return () => {\n      document.removeEventListener('keydown', handleKeyDown, false);\n    };\n  }, [handleKeyDown, active]);\n\n  return [currentFocusIndex, setCurrentFocusIndex];\n}\n","import { useEffect, useState } from 'react';\n\nexport enum ScreenSize {\n  XSmall = 0,\n  Small,\n  Medium,\n  Large,\n  XLarge,\n}\n\nconst screenSizesAndMediaQueries: Array<[ScreenSize, string]> = [\n  [\n    ScreenSize.XLarge,\n    /** var(--dds-breakpoint-xl) */\n    `only screen and (min-width: 1920px)`,\n  ],\n  [\n    ScreenSize.Large,\n    /** var(--dds-breakpoint-lg) */\n    `only screen and (min-width: 1280px)`,\n  ],\n  [\n    ScreenSize.Medium,\n    /** var(--dds-breakpoint-md) */\n    `only screen and (min-width: 960px)`,\n  ],\n  [\n    ScreenSize.Small,\n    /** var(--dds-breakpoint-sm) */\n    `only screen and (min-width: 600px)`,\n  ],\n  [\n    ScreenSize.XSmall,\n    /** var(--dds-breakpoint-xs) */\n    `only screen and (min-width: 1px)`,\n  ],\n];\n\n/**\n * Sjekker skjermstørrelsen basert på brekkpunkter definerte i designsystemet.\n * @returns den aktuelle skjermstørrelsen basert på {@link ScreenSize}.\n * @example\n * ```tsx\n * function MyComponent() {\n *  const screenSize = useScreenSize();\n *  const isSmallScreen = screenSize === ScreenSize.Small;\n *\n *  return <div className={isSmallScreen && 'smallDiv'} >innhold</div>\n * }\n * ```\n */\n\nexport const useScreenSize = function () {\n  const [screenSize, setScreenSize] = useState(ScreenSize.Large);\n\n  useEffect(() => {\n    function listener() {\n      for (const [screenSize, mediaQuery] of screenSizesAndMediaQueries) {\n        if (window.matchMedia(mediaQuery).matches) {\n          setScreenSize(screenSize);\n          return;\n        }\n      }\n    }\n    listener();\n\n    window.addEventListener('resize', listener);\n    return () => window.removeEventListener('resize', listener);\n  }, []);\n\n  return screenSize;\n};\n","import { useEffect } from 'react';\n\n/**\n * Kjører logikk når vindusstørrelsen endrer seg.\n * @param {() => void} handler funksjonen som skal kjøres.\n * @returns {void}\n * @example\n * ```tsx\n * function MyComponent() {\n *   const [width, setWidth] = useState<number>(window.innerWidth);\n *   useResize(() => setWidth(window.innerWidth));\n *\n *   return <div>vindusstørrelse: {width}px</div>;\n * }\n * ```\n */\n\nexport const useWindowResize = (handler: () => void) => {\n  useEffect(() => {\n    window.addEventListener('resize', handler);\n    return () => window.removeEventListener('resize', handler);\n  }, [handler]);\n};\n","import {\n  type ReactNode,\n  type RefObject,\n  createContext,\n  useContext,\n} from 'react';\n\nimport {\n  type UseAccordionBodyProps,\n  type UseAccordionHeaderProps,\n} from './useAccordion';\nimport { isEmpty } from '../../../utils';\n\ninterface AccordionContext {\n  headerProps: UseAccordionHeaderProps;\n  bodyProps: UseAccordionBodyProps;\n  isExpanded: boolean;\n  toggleExpanded: () => void;\n  bodyContentRef: RefObject<HTMLDivElement | null>;\n}\n\nconst AccordionContext = createContext<Partial<AccordionContext>>({});\n\nexport const AccordionContextProvider = ({\n  children,\n  ...values\n}: AccordionContext & { children: ReactNode }) => {\n  return <AccordionContext value={values}>{children}</AccordionContext>;\n};\n\nexport const useAccordionContext = (): Partial<AccordionContext> => {\n  const context = useContext(AccordionContext);\n  if (isEmpty(context)) {\n    throw new Error(\n      'useAccordionContext must be used within a AccordionContextProvider. Have you wrapped <AccordionHeader> and <AccordionBody> inside a <Accordion>, or <CardAccordionHeader> and <CardAccordionBody> inside a <CardAccordion>?',\n    );\n  }\n\n  return context;\n};\n","const isVerticalScrollbarDisplayed = (container: HTMLElement) =>\n  container.clientHeight > window.innerHeight;\n\nexport function handleElementWithBackdropMount(container: HTMLElement) {\n  if (isVerticalScrollbarDisplayed(container)) {\n    const scrollY = Math.round(window.scrollY);\n\n    container.style.overflowY = 'scroll';\n    container.style.position = 'fixed';\n    container.style.top = `-${scrollY}px`;\n  }\n}\n\nexport function handleElementWithBackdropUnmount(container: HTMLElement) {\n  const scrollY = parseInt(document.body.style.top);\n\n  container.style.removeProperty('overflow-y');\n  container.style.removeProperty('position');\n  container.style.removeProperty('top');\n\n  if (isNaN(scrollY)) {\n    return;\n  }\n\n  window.scrollTo(0, scrollY * -1);\n}\n",".backdrop {\n  position: fixed;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  overflow-y: auto;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  background-color: var(--dds-color-surface-backdrop-default);\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition: opacity var(--dds-motion-surface);\n  }\n}\n\n.drawer {\n  z-index: var(--dds-zindex-drawer-backdrop);\n}\n\n.modal {\n  z-index: var(--dds-zindex-modal-backdrop);\n}\n\n.backdrop--visible {\n  opacity: 1;\n}\n\n.backdrop--hidden {\n  opacity: 0;\n}\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './Backdrop.module.css';\nimport { cn } from '../../../utils';\n\ntype BackdropProps = {\n  isMounted?: boolean;\n  zIndex: 'drawer' | 'modal';\n} & Pick<ComponentPropsWithRef<'div'>, 'children' | 'onClick' | 'ref'>;\n\n/**\n * Backdrop-komponent, viser et bakgrunnslag for et element som skal låse applikasjonen i bakgrunnen (Modal el.l.).\n *\n * @component\n * @param {Object} props - Props for komponenten.\n * @param {boolean} [props.isMounted] - Angir om backdropen skal være synlig (`true`) eller skjult (`false`). Standard er `false`.\n * @param {'drawer' | 'modal'} props.zIndex - Bestemmer hvilken z-index-klasse som skal brukes, avhengig av konteksten (f.eks. drawer eller modal).\n * @param {React.ReactNode} [props.children] - Eventuelt innhold som skal vises inni backdropen.\n * @param {React.MouseEventHandler<HTMLDivElement>} [props.onClick] - Klikkhåndterer for backdropen, f.eks. for å lukke en modal.\n * @param {React.Ref<HTMLDivElement>} [props.ref] - Referanse til DOM-elementet.\n *\n * @returns {JSX.Element} Et `<div>`-element med riktige klasser basert på synlighet og z-index.\n\n * @example\n * ```tsx\n * <Backdrop isMounted={true} zIndex=\"modal\" onClick={handleClose}>\n *   <ModalContent />\n * </Backdrop>\n * ```\n */\n\nexport const Backdrop = ({ isMounted, zIndex, ...props }: BackdropProps) => {\n  const isMountedCn = isMounted ? 'visible' : 'hidden';\n  return (\n    <div\n      className={cn(\n        styles.backdrop,\n        styles[zIndex],\n        styles[`backdrop--${isMountedCn}`],\n      )}\n      {...props}\n    />\n  );\n};\n\nBackdrop.displayName = 'Backdrop';\n",".item {\n  box-sizing: border-box;\n  background-color: inherit;\n  text-decoration: none;\n\n  &.default {\n    color: var(--dds-color-text-default);\n  }\n\n  &.danger {\n    color: var(--dds-color-text-danger);\n  }\n}\n\n.item--interactive {\n  text-align: left;\n  -webkit-user-select: text;\n          user-select: text;\n  border: none;\n  cursor: pointer;\n  outline: inherit;\n  width: 100%;\n  @media (prefers-reduced-motion: no-preference) {\n    transition: background-color var(--dds-motion-micro-state);\n  }\n\n  &:hover,\n  &:active {\n    background-color: var(--dds-color-surface-hover-default);\n  }\n}\n\n.item--loading {\n  cursor: not-allowed;\n  position: relative;\n}\n","import {\n  type CSSProperties,\n  type ComponentPropsWithRef,\n  type ComponentPropsWithoutRef,\n  type ElementType,\n  type HTMLAttributes,\n  type ReactNode,\n  type Ref,\n} from 'react';\n\nexport interface HTMLRootProps {\n  /**HTML id. */\n  id?: string;\n  /**HTML klassenavn. */\n  className?: string;\n  /**HTML inline style. */\n  style?: CSSProperties;\n}\n\ntype CommonComponentProps<\n  THTMLProps extends object,\n  TRef extends Ref<unknown>,\n> = HTMLRootProps & {\n  /**Native HTML-attributter som vil settes på elementet som genereres.\n   * Untatt `id`, `className`, `style` og eventuelt andre ofte brukte native HTML-attributter spesifisert i dokumentasjonen.\n   * */\n  htmlProps?: THTMLProps;\n  /**Ref til komponenten. */\n  ref?: TRef;\n};\n\n/**\n * Basetype for props som eksponeres til konsumenter av designsystemet.\n * - Rot: `id`, `className`, `style`, `TOtherProps`\n * - `htmlProps`: resterende HTML-attributter.\n * Se også {@link BaseComponentPropsWithChildren} og\n * {@link getBaseHTMLProps}.\n *\n * @template TElement Element-type som genereres av komponenten.\n * @template TOtherProps Andre props komponenten skal eksponere til konsumenter.\n * @template THTMLAttributesProps Standard `HTMLAttributes<T>` men kan overstyres for f.eks knapper hvis man trenger en annen basetype for `htmlProps`.\n */\nexport type BaseComponentProps<\n  TElement extends Element,\n  TOtherProps extends object = object,\n  THTMLAttributesProps extends HTMLAttributes<TElement> =\n    HTMLAttributes<TElement>,\n> = TOtherProps &\n  CommonComponentProps<\n    Omit<THTMLAttributesProps, keyof HTMLRootProps | keyof TOtherProps>,\n    Ref<TElement>\n  >;\n\n/**\n * Basetype for polymorfe props som eksponeres til konsumenter av designsystemet.\n * - Rot: `id`, `className`, `style`, `TOtherProps`\n * - `htmlProps`: resterende props fra `TComponentProps`\n *\n * @template E `ElemenType` komponenten returnerer.\n * @template TOtherProps Andre props komponenten skal eksponere til konsumenter.\n * @template TComponentProps Standard `ComponentPropsWithoutRef<E>` som kan overstyres hvis man trenger en annen basetype for `htmlProps`, f.eks. for å støtte ofte brukte attributter på roten.\n */\nexport type PolymorphicBaseComponentProps<\n  E extends ElementType,\n  TOtherProps extends object = object,\n> = TOtherProps &\n  HTMLRootProps & {\n    /** HTML- eller React-element som returneres. */\n    as?: E;\n    /** Barn. Blir ignorert hvis returnert HTML tag ikke støtter de. */\n    children?: React.ReactNode;\n  } & CommonComponentProps<\n    Omit<ComponentPropsWithoutRef<E>, keyof HTMLRootProps | keyof TOtherProps>,\n    ComponentPropsWithRef<E>['ref']\n  > &\n  Omit<\n    ComponentPropsWithoutRef<E>,\n    keyof HTMLRootProps | keyof TOtherProps | 'children' | 'ref'\n  >;\n\n/**\n * Utvidelse av {@link BaseComponentProps} med prop for `children`.\n */\nexport type BaseComponentPropsWithChildren<\n  T extends Element,\n  TProps extends object = object,\n  THTMLProps extends HTMLAttributes<T> = HTMLAttributes<T>,\n> = BaseComponentProps<\n  T,\n  TProps & {\n    /**Barn. */\n    children?: ReactNode;\n  },\n  THTMLProps\n>;\n\nfunction pruneUndefined<T extends Record<string, unknown>>(obj: T) {\n  return Object.fromEntries(\n    Object.entries(obj).filter(([, v]) => v !== undefined),\n  ) as T;\n}\n\n/**\n * Slår sammen id, className,htmlProps og unknownProps til ett objekt\n * som kan spreades som baseprops for en komponent. `unknownProps` er\n * med for å sikre at aria- og data- attributter blir spreadet, alle\n * komponenter må derfor ta hensyn til `...rest` når de leser props.\n *\n * Typisk bruk:\n * ```tsx\n * const Props = BaseComponentProps<HTMLElement, {\n *   propA: string,\n *   propB: string,\n * }>\n *\n * const MyComponent = (props: Props) => {\n *   const { id, className, style, htmlProps, ...rest } = props;\n *\n *   const wrapperProps = getBaseHTMLProps(id, className, style, htmlProps, rest)\n *\n *   return <div {...wrapperProps}>innhold</div>\n * }\n * ```\n * @param id id fra props til komponenten.\n * @param className className for komponenten.\n * @param htmlProps htmlProps fra komponenten.\n * @param unknownProps andre ukjente props som skal spreades, kommer typisk fra `...rest` når man leser props til komponenten.\n * @returns Objekt med alle argumentene som kan spreades.\n *\n * Kan også kalles uten `className`-parameteret. Oppførselen er lik.\n */\nexport function getBaseHTMLProps<T extends Element>(\n  id: HTMLAttributes<T>['id'],\n  className: HTMLAttributes<T>['className'],\n  style: HTMLAttributes<T>['style'],\n  htmlProps: HTMLAttributes<T> | undefined,\n  unknownProps: object,\n): HTMLAttributes<T> & object {\n  const out = pruneUndefined({\n    ...htmlProps,\n    ...unknownProps,\n    ...(className && { className }),\n    ...(id && { id }),\n    ...(style && { style }),\n  });\n\n  return out;\n}\n","export const SIZES = [\n  'xsmall',\n  'small',\n  'medium',\n  'large',\n  'xlarge',\n  'xxlarge',\n  'inherit',\n  'component',\n] as const;\n\nexport type Size = (typeof SIZES)[number];\n\nexport function createSizes<T extends Array<Size>>(...sizes: T): T {\n  return sizes;\n}\n","export const PURPOSES = [\n  'primary',\n  'secondary',\n  'tertiary',\n  'success',\n  'info',\n  'danger',\n  'warning',\n  'default',\n  'tips',\n] as const;\n\nexport type Purpose = (typeof PURPOSES)[number];\n\nexport function createPurposes<T extends Array<Purpose>>(...sizes: T): T {\n  return sizes;\n}\n","export const BORDER_RADII = [\n  'button',\n  'input',\n  'surface',\n  'chip',\n  'rounded',\n  '0',\n] as const;\n\nexport const ELEVATIONS = ['small', 'medium', 'large'] as const;\n\nexport const BORDER_COLORS = [\n  'border-default',\n  'border-subtle',\n  'border-inverse',\n  'border-action-default',\n  'border-action-hover',\n  'border-success',\n  'border-warning',\n  'border-danger',\n  'border-info',\n  'border-on-action',\n] as const;\n\nconst BACKGROUNDS = [\n  'surface-default',\n  'surface-subtle',\n  'surface-medium',\n  'surface-inverse-default',\n  'surface-danger-default',\n  'surface-danger-strong',\n  'surface-success-default',\n  'surface-success-strong',\n  'surface-warning-default',\n  'surface-warning-strong',\n  'surface-info-default',\n  'surface-info-strong',\n  'surface-paper-default',\n  'surface-notification',\n  'surface-field-disabled',\n  'brand-primary-default',\n  'brand-primary-subtle',\n  'brand-primary-medium',\n  'brand-primary-strong',\n  'brand-secondary-default',\n  'brand-secondary-subtle',\n  'brand-secondary-medium',\n  'brand-secondary-strong',\n  'brand-tertiary-default',\n  'brand-tertiary-subtle',\n  'brand-tertiary-medium',\n  'brand-tertiary-strong',\n] as const;\n\nexport type BorderRadius = (typeof BORDER_RADII)[number];\nexport type Elevation = (typeof ELEVATIONS)[number];\nexport type BorderColor = (typeof BORDER_COLORS)[number];\nexport type PaperBackground = (typeof BACKGROUNDS)[number];\n\nexport const isPaperBackground = (value: unknown): value is PaperBackground => {\n  return (\n    typeof value === 'string' && BACKGROUNDS.includes(value as PaperBackground)\n  );\n};\n\nexport const isBorderColor = (value: unknown): value is BorderColor => {\n  return (\n    typeof value === 'string' && BORDER_COLORS.includes(value as BorderColor)\n  );\n};\n\nexport const isBorderRadius = (value: unknown): value is BorderRadius => {\n  return (\n    typeof value === 'string' && BORDER_RADII.includes(value as BorderRadius)\n  );\n};\n\nexport const isElevation = (value: unknown): value is Elevation => {\n  return typeof value === 'string' && ELEVATIONS.includes(value as Elevation);\n};\n","import { type ComponentType } from 'react';\n\nimport {\n  type IconStatesOf,\n  type SvgIcon,\n  type SvgPropsWithState,\n} from './utils';\nimport {\n  type BaseComponentProps,\n  createSizes,\n  getBaseHTMLProps,\n} from '../../types';\nimport { type IconColor } from '../../utils';\n\nexport const getSize = (iconSize: IconSize): string => {\n  switch (iconSize) {\n    case 'small':\n      return 'var(--dds-size-icon-small)';\n    case 'medium':\n      return 'var(--dds-size-icon-medium)';\n    case 'large':\n      return 'var(--dds-size-icon-large)';\n    case 'component':\n      return 'var(--dds-size-icon-component)';\n    case 'inherit':\n      return '1em';\n    default:\n      return 'var(--dds-size-icon-medium)';\n  }\n};\n\nexport const ICON_SIZES = createSizes(\n  'large',\n  'medium',\n  'small',\n  'inherit',\n  'component',\n);\nexport type IconSize = (typeof ICON_SIZES)[number];\n\nexport type IconProps<I extends SvgIcon = SvgIcon> = BaseComponentProps<\n  SVGSVGElement,\n  {\n    /**Ikonet importert fra `@norges-domstoler/dds-components`. */\n    icon: I;\n    /**Størrelsen på ikonet.\n     * @default \"medium\"\n     */\n    iconSize?: IconSize;\n    /**Fargen på ikonet.\n     * @default \"currentcolor\"\n     */\n    color?: IconColor;\n    /**\n     * Ikon-state hvis ikonet kan animeres; types basert på ikon valgt i `icon` prop. Statiske ikoner støtter ikke propen.\n     */\n    iconState?: IconStatesOf<I>;\n  },\n  SvgPropsWithState<I>\n>;\n\nexport function Icon<I extends SvgIcon = SvgIcon>(props: IconProps<I>) {\n  const {\n    id,\n    iconSize = 'medium',\n    color = 'currentcolor',\n    icon,\n    className,\n    style,\n    htmlProps,\n    iconState,\n    ...rest\n  } = props;\n\n  const size = getSize(iconSize);\n  const C = icon as ComponentType<SvgPropsWithState<I>>;\n\n  return (\n    <C\n      {...getBaseHTMLProps(id, className, style, htmlProps, rest)}\n      height={size}\n      width={size}\n      fill={color}\n      aria-hidden={htmlProps?.['aria-hidden'] ?? true}\n      {...(iconState ? { iconState } : {})}\n    />\n  );\n}\n\nIcon.displayName = 'Icon';\n","/* Primitives */\n\n.dds-p {\n  --dds-r-p: var(--dds-r-xs-p);\n  padding: var(--dds-r-p, initial);\n}\n\n.dds-p-i {\n  --dds-r-p-i: var(--dds-r-xs-p-i);\n  padding-inline: var(--dds-r-p-i, initial);\n}\n\n.dds-p-b {\n  --dds-r-p-b: var(--dds-r-xs-p-b);\n  padding-block: var(--dds-r-p-b, initial);\n}\n\n.dds-m {\n  --dds-r-m: var(--dds-r-xs-m);\n  margin: var(--dds-r-m, initial);\n}\n\n.dds-m-i {\n  --dds-r-m-i: var(--dds-r-xs-m-i);\n  margin-inline: var(--dds-r-m-i, initial);\n}\n\n.dds-m-b {\n  --dds-r-m-b: var(--dds-r-xs-m-b);\n  margin-block: var(--dds-r-m-b, initial);\n}\n\n.dds-bleed-m-i {\n  --dds-r-bleed-m-i: var(--dds-r-xs-bleed-m-i);\n  margin-inline: var(--dds-r-bleed-m-i, initial);\n}\n\n.dds-bleed-m-b {\n  --dds-r-bleed-m-b: var(--dds-r-xs-bleed-m-b);\n  margin-block: var(--dds-r-bleed-m-b, initial);\n}\n\n.dds-h {\n  --dds-r-h: var(--dds-r-xs-h);\n  height: var(--dds-r-h, initial);\n}\n\n.dds-max-h {\n  --dds-r-max-h: var(--dds-r-xs-max-h);\n  max-height: var(--dds-r-max-h, initial);\n}\n\n.dds-min-h {\n  --dds-r-min-h: var(--dds-r-xs-min-h);\n  min-height: var(--dds-r-min-h, initial);\n}\n\n.dds-w {\n  --dds-r-w: var(--dds-r-xs-w);\n  width: var(--dds-r-w, initial);\n}\n\n.dds-max-w {\n  --dds-r-max-w: var(--dds-r-xs-max-w);\n  max-width: var(--dds-r-max-w, initial);\n}\n\n.dds-min-w {\n  --dds-r-min-w: var(--dds-r-xs-min-w);\n  min-width: var(--dds-r-min-w, initial);\n}\n\n.dds-pos {\n  --dds-r-pos: var(--dds-r-xs-pos);\n  position: var(--dds-r-pos, initial);\n}\n\n.dds-l {\n  --dds-r-l: var(--dds-r-xs-l);\n  left: var(--dds-r-l, initial);\n}\n\n.dds-r {\n  --dds-r-r: var(--dds-r-xs-r);\n  right: var(--dds-r-r, initial);\n}\n\n.dds-t {\n  --dds-r-t: var(--dds-r-xs-t);\n  top: var(--dds-r-t, initial);\n}\n\n.dds-b {\n  --dds-r-b: var(--dds-r-xs-b);\n  bottom: var(--dds-r-b, initial);\n}\n\n.dds-o {\n  --dds-r-o: var(--dds-r-xs-o);\n  overflow: var(--dds-r-o, initial);\n}\n\n.dds-o-x {\n  --dds-r-o-x: var(--dds-r-xs-o-x);\n  overflow-x: var(--dds-r-o-x, initial);\n}\n\n.dds-o-y {\n  --dds-r-o-y: var(--dds-r-xs-o-y);\n  overflow-y: var(--dds-r-o-y, initial);\n}\n\n.dds-display {\n  --dds-r-display: var(--dds-r-xs-display);\n  display: var(--dds-r-display, initial);\n}\n\n.dds-text-align {\n  --dds-r-text-align: var(--dds-r-xs-text-align);\n  text-align: var(--dds-r-text-align, initial);\n}\n\n.dds-word-break {\n  --dds-r-word-break: var(--dds-r-xs-word-break);\n  word-break: var(--dds-r-word-break, initial);\n}\n\n/* Flex */\n\n.dds-flex-dir {\n  --dds-r-flex-dir: var(--dds-r-xs-flex-dir);\n  flex-direction: var(--dds-r-flex-dir, initial);\n}\n\n.dds-gap {\n  --dds-r-gap: var(--dds-r-xs-gap);\n  gap: var(--dds-r-gap, initial);\n}\n\n.dds-c-gap {\n  --dds-r-c-gap: var(--dds-r-xs-c-gap);\n  column-gap: var(--dds-r-c-gap, initial);\n}\n\n.dds-r-gap {\n  --dds-r-r-gap: var(--dds-r-xs-r-gap);\n  row-gap: var(--dds-r-r-gap, initial);\n}\n\n.dds-a-i {\n  --dds-r-a-i: var(--dds-r-xs-a-i);\n  align-items: var(--dds-r-a-i, initial);\n}\n\n.dds-a-c {\n  --dds-r-a-c: var(--dds-r-xs-a-c);\n  align-content: var(--dds-r-a-c, initial);\n}\n\n.dds-j-i {\n  --dds-r-j-i: var(--dds-r-xs-j-i);\n  justify-items: var(--dds-r-j-i, initial);\n}\n\n.dds-pl-i {\n  --dds-r-pl-i: var(--dds-r-xs-pl-i);\n  justify-items: var(--dds-r-pl-i, initial);\n}\n\n.dds-j-c {\n  --dds-r-j-c: var(--dds-r-xs-j-c);\n  justify-content: var(--dds-r-j-c, initial);\n}\n\n.dds-wrap {\n  --dds-r-wrap: var(--dds-r-xs-wrap);\n  flex-wrap: var(--dds-r-wrap, initial);\n}\n\n.dds-basis {\n  --dds-r-basis: var(--dds-r-xs-basis);\n  flex-basis: var(--dds-r-basis, initial);\n}\n\n.dds-flow {\n  --dds-r-flow: var(--dds-r-xs-flow);\n  flex-flow: var(--dds-r-flow, initial);\n}\n\n@media (max-width: 599px) {\n  .dds-p {\n    --dds-r-p: var(--dds-r-xs-p);\n  }\n  .dds-p-i {\n    --dds-r-p-i: var(--dds-r-xs-p-i);\n  }\n  .dds-p-b {\n    --dds-r-p-b: var(--dds-r-xs-p-b);\n  }\n  .dds-m {\n    --dds-r-m: var(--dds-r-xs-m);\n  }\n  .dds-m-i {\n    --dds-r-m-i: var(--dds-r-xs-m-i);\n  }\n  .dds-m-b {\n    --dds-r-m-b: var(--dds-r-xs-m-b);\n  }\n  .dds-bleed-m-i {\n    --dds-r-bleed-m-i: var(--dds-r-xs-bleed-m-i);\n  }\n  .dds-bleed-m-b {\n    --dds-r-bleed-m-b: var(--dds-r-xs-bleed-m-b);\n  }\n  .dds-h {\n    --dds-r-h: var(--dds-r-xs-h);\n  }\n  .dds-max-h {\n    --dds-r-max-h: var(--dds-r-xs-max-h);\n  }\n  .dds-min-h {\n    --dds-r-min-h: var(--dds-r-xs-min-h);\n  }\n  .dds-w {\n    --dds-r-w: var(--dds-r-xs-w);\n  }\n  .dds-max-w {\n    --dds-r-max-w: var(--dds-r-xs-max-w);\n  }\n  .dds-min-w {\n    --dds-r-min-w: var(--dds-r-xs-min-w);\n  }\n  .dds-pos {\n    --dds-r-pos: var(--dds-r-xs-pos);\n  }\n  .dds-l {\n    --dds-r-l: var(--dds-r-xs-l);\n  }\n  .dds-r {\n    --dds-r-r: var(--dds-r-xs-r);\n  }\n  .dds-t {\n    --dds-r-t: var(--dds-r-xs-t);\n  }\n  .dds-b {\n    --dds-r-b: var(--dds-r-xs-b);\n  }\n  .dds-o {\n    --dds-r-o: var(--dds-r-xs-o);\n  }\n  .dds-o-x {\n    --dds-r-o-x: var(--dds-r-xs-o-x);\n  }\n  .dds-o-y {\n    --dds-r-o-y: var(--dds-r-xs-o-y);\n  }\n  .dds-display {\n    --dds-r-display: var(--dds-r-xs-display);\n  }\n  .dds-text-align {\n    --dds-r-text-align: var(--dds-r-xs-text-align);\n  }\n  .dds-word-break {\n    --dds-r-word-break: var(--dds-r-xs-word-break);\n  }\n  .dds-flex-dir {\n    --dds-r-flex-dir: var(--dds-r-xs-flex-dir);\n  }\n  .dds-gap {\n    --dds-r-gap: var(--dds-r-xs-gap);\n  }\n  .dds-c-gap {\n    --dds-r-c-gap: var(--dds-r-xs-c-gap);\n  }\n  .dds-r-gap {\n    --dds-r-r-gap: var(--dds-r-xs-r-gap);\n  }\n  .dds-a-i {\n    --dds-r-a-i: var(--dds-r-xs-a-i);\n  }\n  .dds-a-c {\n    --dds-r-a-c: var(--dds-r-xs-a-c);\n  }\n  .dds-j-i {\n    --dds-r-j-i: var(--dds-r-xs-j-i);\n  }\n  .dds-pl-i {\n    --dds-r-pl-i: var(--dds-r-xs-pl-i);\n  }\n  .dds-j-c {\n    --dds-r-j-c: var(--dds-r-xs-j-c);\n  }\n  .dds-wrap {\n    --dds-r-wrap: var(--dds-r-xs-wrap);\n  }\n  .dds-basis {\n    --dds-r-basis: var(--dds-r-xs-basis);\n  }\n  .dds-flow {\n    --dds-r-flow: var(--dds-r-xs-flow);\n  }\n}\n\n@media (min-width: 600px) {\n  .dds-p {\n    --dds-r-p: var(--dds-r-sm-p);\n  }\n  .dds-p-i {\n    --dds-r-p-i: var(--dds-r-sm-p-i);\n  }\n  .dds-p-b {\n    --dds-r-p-b: var(--dds-r-sm-p-b);\n  }\n  .dds-m {\n    --dds-r-m: var(--dds-r-sm-m);\n  }\n  .dds-m-i {\n    --dds-r-m-i: var(--dds-r-sm-m-i);\n  }\n  .dds-m-b {\n    --dds-r-m-b: var(--dds-r-sm-m-b);\n  }\n  .dds-bleed-m-i {\n    --dds-r-bleed-m-i: var(--dds-r-sm-bleed-m-i);\n  }\n  .dds-bleed-m-b {\n    --dds-r-bleed-m-b: var(--dds-r-sm-bleed-m-b);\n  }\n  .dds-h {\n    --dds-r-h: var(--dds-r-sm-h);\n  }\n  .dds-max-h {\n    --dds-r-max-h: var(--dds-r-sm-max-h);\n  }\n  .dds-min-h {\n    --dds-r-min-h: var(--dds-r-sm-min-h);\n  }\n  .dds-w {\n    --dds-r-w: var(--dds-r-sm-w);\n  }\n  .dds-max-w {\n    --dds-r-max-w: var(--dds-r-sm-max-w);\n  }\n  .dds-min-w {\n    --dds-r-min-w: var(--dds-r-sm-min-w);\n  }\n  .dds-pos {\n    --dds-r-pos: var(--dds-r-sm-pos);\n  }\n  .dds-l {\n    --dds-r-l: var(--dds-r-sm-l);\n  }\n  .dds-r {\n    --dds-r-r: var(--dds-r-sm-r);\n  }\n  .dds-t {\n    --dds-r-t: var(--dds-r-sm-t);\n  }\n  .dds-b {\n    --dds-r-b: var(--dds-r-sm-b);\n  }\n  .dds-o {\n    --dds-r-o: var(--dds-r-sm-o);\n  }\n  .dds-o-x {\n    --dds-r-o-x: var(--dds-r-sm-o-x);\n  }\n  .dds-o-y {\n    --dds-r-o-y: var(--dds-r-sm-o-y);\n  }\n  .dds-display {\n    --dds-r-display: var(--dds-r-sm-display);\n  }\n  .dds-text-align {\n    --dds-r-text-align: var(--dds-r-sm-text-align);\n  }\n  .dds-word-break {\n    --dds-r-word-break: var(--dds-r-sm-word-break);\n  }\n  .dds-flex-dir {\n    --dds-r-flex-dir: var(--dds-r-sm-flex-dir);\n  }\n  .dds-gap {\n    --dds-r-gap: var(--dds-r-sm-gap);\n  }\n  .dds-c-gap {\n    --dds-r-c-gap: var(--dds-r-sm-c-gap);\n  }\n  .dds-r-gap {\n    --dds-r-r-gap: var(--dds-r-sm-r-gap);\n  }\n  .dds-a-i {\n    --dds-r-a-i: var(--dds-r-sm-a-i);\n  }\n  .dds-a-c {\n    --dds-r-a-c: var(--dds-r-sm-a-c);\n  }\n  .dds-j-i {\n    --dds-r-j-i: var(--dds-r-sm-j-i);\n  }\n  .dds-pl-i {\n    --dds-r-pl-i: var(--dds-r-sm-pl-i);\n  }\n  .dds-j-c {\n    --dds-r-j-c: var(--dds-r-sm-j-c);\n  }\n  .dds-wrap {\n    --dds-r-wrap: var(--dds-r-sm-wrap);\n  }\n  .dds-basis {\n    --dds-r-basis: var(--dds-r-sm-basis);\n  }\n  .dds-flow {\n    --dds-r-flow: var(--dds-r-sm-flow);\n  }\n}\n\n@media (min-width: 960px) {\n  .dds-p {\n    --dds-r-p: var(--dds-r-md-p);\n  }\n  .dds-p-i {\n    --dds-r-p-i: var(--dds-r-md-p-i);\n  }\n  .dds-p-b {\n    --dds-r-p-b: var(--dds-r-md-p-b);\n  }\n  .dds-m {\n    --dds-r-m: var(--dds-r-md-m);\n  }\n  .dds-m-i {\n    --dds-r-m-i: var(--dds-r-md-m-i);\n  }\n  .dds-m-b {\n    --dds-r-m-b: var(--dds-r-md-m-b);\n  }\n  .dds-bleed-m-i {\n    --dds-r-bleed-m-i: var(--dds-r-md-bleed-m-i);\n  }\n  .dds-bleed-m-b {\n    --dds-r-bleed-m-b: var(--dds-r-md-bleed-m-b);\n  }\n  .dds-h {\n    --dds-r-h: var(--dds-r-md-h);\n  }\n  .dds-max-h {\n    --dds-r-max-h: var(--dds-r-md-max-h);\n  }\n  .dds-min-h {\n    --dds-r-min-h: var(--dds-r-md-min-h);\n  }\n  .dds-w {\n    --dds-r-w: var(--dds-r-md-w);\n  }\n  .dds-max-w {\n    --dds-r-max-w: var(--dds-r-md-max-w);\n  }\n  .dds-min-w {\n    --dds-r-min-w: var(--dds-r-md-min-w);\n  }\n  .dds-pos {\n    --dds-r-pos: var(--dds-r-md-pos);\n  }\n  .dds-l {\n    --dds-r-l: var(--dds-r-md-l);\n  }\n  .dds-r {\n    --dds-r-r: var(--dds-r-md-r);\n  }\n  .dds-t {\n    --dds-r-t: var(--dds-r-md-t);\n  }\n  .dds-b {\n    --dds-r-b: var(--dds-r-md-b);\n  }\n  .dds-o {\n    --dds-r-o: var(--dds-r-md-o);\n  }\n  .dds-o-x {\n    --dds-r-o-x: var(--dds-r-md-o-x);\n  }\n  .dds-o-y {\n    --dds-r-o-y: var(--dds-r-md-o-y);\n  }\n  .dds-display {\n    --dds-r-display: var(--dds-r-md-display);\n  }\n  .dds-text-align {\n    --dds-r-text-align: var(--dds-r-md-text-align);\n  }\n  .dds-word-break {\n    --dds-r-word-break: var(--dds-r-md-word-break);\n  }\n  .dds-flex-dir {\n    --dds-r-flex-dir: var(--dds-r-md-flex-dir);\n  }\n  .dds-gap {\n    --dds-r-gap: var(--dds-r-md-gap);\n  }\n  .dds-c-gap {\n    --dds-r-c-gap: var(--dds-r-md-c-gap);\n  }\n  .dds-r-gap {\n    --dds-r-r-gap: var(--dds-r-md-r-gap);\n  }\n  .dds-a-i {\n    --dds-r-a-i: var(--dds-r-md-a-i);\n  }\n  .dds-a-c {\n    --dds-r-a-c: var(--dds-r-md-a-c);\n  }\n  .dds-j-i {\n    --dds-r-j-i: var(--dds-r-md-j-i);\n  }\n  .dds-pl-i {\n    --dds-r-pl-i: var(--dds-r-md-pl-i);\n  }\n  .dds-j-c {\n    --dds-r-j-c: var(--dds-r-md-j-c);\n  }\n  .dds-wrap {\n    --dds-r-wrap: var(--dds-r-md-wrap);\n  }\n  .dds-basis {\n    --dds-r-basis: var(--dds-r-md-basis);\n  }\n  .dds-flow {\n    --dds-r-flow: var(--dds-r-md-flow);\n  }\n}\n\n@media (min-width: 1280px) {\n  .dds-p {\n    --dds-r-p: var(--dds-r-lg-p);\n  }\n  .dds-p-i {\n    --dds-r-p-i: var(--dds-r-lg-p-i);\n  }\n  .dds-p-b {\n    --dds-r-p-b: var(--dds-r-lg-p-b);\n  }\n  .dds-m {\n    --dds-r-m: var(--dds-r-lg-m);\n  }\n  .dds-m-i {\n    --dds-r-m-i: var(--dds-r-lg-m-i);\n  }\n  .dds-m-b {\n    --dds-r-m-b: var(--dds-r-lg-m-b);\n  }\n  .dds-bleed-m-i {\n    --dds-r-bleed-m-i: var(--dds-r-lg-bleed-m-i);\n  }\n  .dds-bleed-m-b {\n    --dds-r-bleed-m-b: var(--dds-r-lg-bleed-m-b);\n  }\n  .dds-h {\n    --dds-r-h: var(--dds-r-lg-h);\n  }\n  .dds-max-h {\n    --dds-r-max-h: var(--dds-r-lg-max-h);\n  }\n  .dds-min-h {\n    --dds-r-min-h: var(--dds-r-lg-min-h);\n  }\n  .dds-w {\n    --dds-r-w: var(--dds-r-lg-w);\n  }\n  .dds-max-w {\n    --dds-r-max-w: var(--dds-r-lg-max-w);\n  }\n  .dds-min-w {\n    --dds-r-min-w: var(--dds-r-lg-min-w);\n  }\n  .dds-pos {\n    --dds-r-pos: var(--dds-r-lg-pos);\n  }\n  .dds-l {\n    --dds-r-l: var(--dds-r-lg-l);\n  }\n  .dds-r {\n    --dds-r-r: var(--dds-r-lg-r);\n  }\n  .dds-t {\n    --dds-r-t: var(--dds-r-lg-t);\n  }\n  .dds-b {\n    --dds-r-b: var(--dds-r-lg-b);\n  }\n  .dds-o {\n    --dds-r-o: var(--dds-r-lg-o);\n  }\n  .dds-o-x {\n    --dds-r-o-x: var(--dds-r-lg-o-x);\n  }\n  .dds-o-y {\n    --dds-r-o-y: var(--dds-r-lg-o-y);\n  }\n  .dds-display {\n    --dds-r-display: var(--dds-r-lg-display);\n  }\n  .dds-text-align {\n    --dds-r-text-align: var(--dds-r-lg-text-align);\n  }\n  .dds-word-break {\n    --dds-r-word-break: var(--dds-r-lg-word-break);\n  }\n  .dds-flex-dir {\n    --dds-r-flex-dir: var(--dds-r-lg-flex-dir);\n  }\n  .dds-gap {\n    --dds-r-gap: var(--dds-r-lg-gap);\n  }\n  .dds-c-gap {\n    --dds-r-c-gap: var(--dds-r-lg-c-gap);\n  }\n  .dds-r-gap {\n    --dds-r-r-gap: var(--dds-r-lg-r-gap);\n  }\n  .dds-a-i {\n    --dds-r-a-i: var(--dds-r-lg-a-i);\n  }\n  .dds-a-c {\n    --dds-r-a-c: var(--dds-r-lg-a-c);\n  }\n  .dds-j-i {\n    --dds-r-j-i: var(--dds-r-lg-j-i);\n  }\n  .dds-pl-i {\n    --dds-r-pl-i: var(--dds-r-lg-pl-i);\n  }\n  .dds-j-c {\n    --dds-r-j-c: var(--dds-r-lg-j-c);\n  }\n  .dds-wrap {\n    --dds-r-wrap: var(--dds-r-lg-wrap);\n  }\n  .dds-basis {\n    --dds-r-basis: var(--dds-r-lg-basis);\n  }\n  .dds-flow {\n    --dds-r-flow: var(--dds-r-lg-flow);\n  }\n}\n\n@media (min-width: 1920px) {\n  .dds-p {\n    --dds-r-p: var(--dds-r-xl-p);\n  }\n  .dds-p-i {\n    --dds-r-p-i: var(--dds-r-xl-p-i);\n  }\n  .dds-p-b {\n    --dds-r-p-b: var(--dds-r-xl-p-b);\n  }\n  .dds-m {\n    --dds-r-m: var(--dds-r-xl-m);\n  }\n  .dds-m-i {\n    --dds-r-m-i: var(--dds-r-xl-m-i);\n  }\n  .dds-m-b {\n    --dds-r-m-b: var(--dds-r-xl-m-b);\n  }\n  .dds-bleed-m-i {\n    --dds-r-bleed-m-i: var(--dds-r-xl-bleed-m-i);\n  }\n  .dds-bleed-m-b {\n    --dds-r-bleed-m-b: var(--dds-r-xl-bleed-m-b);\n  }\n  .dds-h {\n    --dds-r-h: var(--dds-r-xl-h);\n  }\n  .dds-max-h {\n    --dds-r-max-h: var(--dds-r-xl-max-h);\n  }\n  .dds-min-h {\n    --dds-r-min-h: var(--dds-r-xl-min-h);\n  }\n  .dds-w {\n    --dds-r-w: var(--dds-r-xl-w);\n  }\n  .dds-max-w {\n    --dds-r-max-w: var(--dds-r-xl-max-w);\n  }\n  .dds-min-w {\n    --dds-r-min-w: var(--dds-r-xl-min-w);\n  }\n  .dds-pos {\n    --dds-r-pos: var(--dds-r-xl-pos);\n  }\n  .dds-l {\n    --dds-r-l: var(--dds-r-xl-l);\n  }\n  .dds-r {\n    --dds-r-r: var(--dds-r-xl-r);\n  }\n  .dds-t {\n    --dds-r-t: var(--dds-r-xl-t);\n  }\n  .dds-b {\n    --dds-r-b: var(--dds-r-xl-b);\n  }\n  .dds-o {\n    --dds-r-o: var(--dds-r-xl-o);\n  }\n  .dds-o-x {\n    --dds-r-o-x: var(--dds-r-xl-o-x);\n  }\n  .dds-o-y {\n    --dds-r-o-y: var(--dds-r-xl-o-y);\n  }\n  .dds-display {\n    --dds-r-display: var(--dds-r-xl-display);\n  }\n  .dds-text-align {\n    --dds-r-text-align: var(--dds-r-xl-text-align);\n  }\n  .dds-word-break {\n    --dds-r-word-break: var(--dds-r-xl-word-break);\n  }\n  .dds-flex-dir {\n    --dds-r-flex-dir: var(--dds-r-xl-flex-dir);\n  }\n  .dds-gap {\n    --dds-r-gap: var(--dds-r-xl-gap);\n  }\n  .dds-c-gap {\n    --dds-r-c-gap: var(--dds-r-xl-c-gap);\n  }\n  .dds-r-gap {\n    --dds-r-r-gap: var(--dds-r-xl-r-gap);\n  }\n  .dds-a-i {\n    --dds-r-a-i: var(--dds-r-xl-a-i);\n  }\n  .dds-a-c {\n    --dds-r-a-c: var(--dds-r-xl-a-c);\n  }\n  .dds-j-i {\n    --dds-r-j-i: var(--dds-r-xl-j-i);\n  }\n  .dds-pl-i {\n    --dds-r-pl-i: var(--dds-r-xl-pl-i);\n  }\n  .dds-j-c {\n    --dds-r-j-c: var(--dds-r-xl-j-c);\n  }\n  .dds-wrap {\n    --dds-r-wrap: var(--dds-r-xl-wrap);\n  }\n  .dds-basis {\n    --dds-r-basis: var(--dds-r-xl-basis);\n  }\n  .dds-flow {\n    --dds-r-flow: var(--dds-r-xl-flow);\n  }\n}\n","import { type Property } from 'csstype';\n\nimport { type ExtractStrict } from '../../..';\n\nexport const BREAKPOINTS = ['xs', 'sm', 'md', 'lg', 'xl'] as const;\nexport type Breakpoint = (typeof BREAKPOINTS)[number];\n\nexport const SPACING_SCALES = [\n  'x0',\n  'x0.125',\n  'x0.25',\n  'x0.5',\n  'x0.75',\n  'x1',\n  'x1.5',\n  'x2',\n  'x2.5',\n  'x3',\n  'x4',\n  'x6',\n  'x10',\n] as const;\n\nexport type SpacingScale = (typeof SPACING_SCALES)[number];\n\nexport type RelativeColumnsOccupied = 'all' | 'firstHalf' | 'secondHalf';\n\nexport interface PrimitiveDisplayProps {\n  /** Skjuler komponenten fra og med det angitte brekkpunktet og nedover. */\n  hideBelow?: Breakpoint;\n  /** Viser komponenten kun under det angitte brekkpunktet. */\n  showBelow?: Breakpoint;\n}\n\nexport type BreakpointBasedProp<T> = Partial<Record<Breakpoint, T>>;\n\nexport type ResponsiveProp<T> = T | BreakpointBasedProp<T>;\n\nexport interface PrimitiveLayoutProps {\n  /** CSS `width`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  width?: ResponsiveProp<Property.Width>;\n  /** CSS `max-width`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  maxWidth?: ResponsiveProp<Property.MaxWidth>;\n  /** CSS `min-width`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  minWidth?: ResponsiveProp<Property.MinWidth>;\n  /** CSS `height`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  height?: ResponsiveProp<Property.Height>;\n  /** CSS `max-height`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  maxHeight?: ResponsiveProp<Property.MaxHeight>;\n  /** CSS `min-height`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  minHeight?: ResponsiveProp<Property.MinHeight>;\n  /** CSS `overflow`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  overflow?: ResponsiveProp<Property.Overflow>;\n  /** CSS `overflow-y`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  overflowY?: ResponsiveProp<Property.OverflowY>;\n  /** CSS `overflow-x`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  overflowX?: ResponsiveProp<Property.OverflowX>;\n  /** CSS `position`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  position?: ResponsiveProp<Property.Position>;\n  /** CSS `top`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser. */\n  top?: ResponsiveProp<Property.Top | SpacingScale>;\n  /** CSS `bottom`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser. */\n  bottom?: ResponsiveProp<Property.Bottom | SpacingScale>;\n  /** CSS `left`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser. */\n  left?: ResponsiveProp<Property.Left | SpacingScale>;\n  /** CSS `right`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser. */\n  right?: ResponsiveProp<Property.Right | SpacingScale>;\n  /** CSS `padding`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser. */\n  padding?: ResponsiveProp<Property.Padding | SpacingScale>;\n  /** CSS `padding-inline`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser. */\n  paddingInline?: ResponsiveProp<Property.PaddingInline | SpacingScale>;\n  /** CSS `padding-block`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser.*/\n  paddingBlock?: ResponsiveProp<Property.PaddingBlock | SpacingScale>;\n  /** CSS `margin`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser.*/\n  margin?: ResponsiveProp<Property.Margin | SpacingScale>;\n  /** CSS `margin-inline`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser.*/\n  marginInline?: ResponsiveProp<Property.MarginInline | SpacingScale>;\n  /** CSS `margin-block`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser.*/\n  marginBlock?: ResponsiveProp<Property.MarginBlock | SpacingScale>;\n  /** CSS `display`.  Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  display?: ResponsiveProp<Property.Display>;\n  /** CSS `flex-direction`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  flexDirection?: ResponsiveProp<Property.FlexDirection>;\n  /** CSS `flex-basis`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  flexBasis?: ResponsiveProp<Property.FlexBasis>;\n  /** CSS `flex-wrap`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  flexWrap?: ResponsiveProp<Property.FlexWrap>;\n  /** CSS `flex-flow`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  flexFlow?: ResponsiveProp<Property.FlexFlow>;\n  /** CSS `align-items`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  alignItems?: ResponsiveProp<Property.AlignItems>;\n  /** CSS `justify-items`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  justifyItems?: ResponsiveProp<Property.JustifyItems>;\n  /** CSS `place-items`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  placeItems?: ResponsiveProp<Property.PlaceItems>;\n  /** CSS `align-content`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  alignContent?: ResponsiveProp<Property.AlignContent>;\n  /** CSS `justify-content`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  justifyContent?: ResponsiveProp<Property.JustifyContent>;\n  /** CSS `text-align`. Støtter standardverdier per brekkpunkt eller samme for alle skjermstørrelser. */\n  textAlign?: ResponsiveProp<Property.TextAlign>;\n  /** CSS `gap`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser.*/\n  gap?: ResponsiveProp<Property.Gap | SpacingScale>;\n  /** CSS `row-gap`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser. */\n  rowGap?: ResponsiveProp<Property.RowGap | SpacingScale>;\n  /** CSS `column-gap`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser. */\n  columnGap?: ResponsiveProp<Property.ColumnGap | SpacingScale>;\n  /** CSS `word-break`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  wordBreak?: ResponsiveProp<Property.WordBreak>;\n}\n\nexport type ResponsiveProps = PrimitiveDisplayProps & PrimitiveLayoutProps;\n\nexport type ResponsiveStackProps = Omit<\n  ResponsiveProps,\n  'display' | 'flexDirection'\n>;\n\nexport type ResponsiveGridProps = Omit<ResponsiveProps, 'display'> & {\n  /** CSS `display`.  Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n  display?: ExtractStrict<Property.Display, 'grid' | 'inline-grid'>;\n  /** CSS `grid-template-columns`. Støtter standardverdier per brekkpunkt eller samme for alle skjermstørrelser. */\n  gridTemplateColumns?: ResponsiveProp<Property.GridTemplateColumns>;\n  /** CSS `grid`. Støtter standardverdier per brekkpunkt eller samme for alle skjermstørrelser. */\n  grid?: ResponsiveProp<Property.Grid>;\n  /** CSS `grid-auto-columns`. Støtter standardverdier per brekkpunkt eller samme for alle skjermstørrelser. */\n  gridAutoColumns?: ResponsiveProp<Property.GridAutoColumns>;\n  /** CSS `grid-auto-rows`. Støtter standardverdier per brekkpunkt eller samme for alle skjermstørrelser. */\n  gridAutoRows?: ResponsiveProp<Property.GridAutoRows>;\n  /** CSS `grid-auto-flow`. Støtter standardverdier per brekkpunkt eller samme for alle skjermstørrelser. */\n  gridAutoFlow?: ResponsiveProp<Property.GridAutoFlow>;\n  /** CSS `grid-template-rows`. Støtter standardverdier per brekkpunkt eller samme for alle skjermstørrelser. */\n  gridTemplateRows?: ResponsiveProp<Property.GridTemplateRows>;\n  /** CSS `grid-template`. Støtter standardverdier per brekkpunkt eller samme for alle skjermstørrelser. */\n  gridTemplate?: ResponsiveProp<Property.GridTemplate>;\n  /** CSS `grid-template-areas`. Støtter standardverdier per brekkpunkt eller samme for alle skjermstørrelser. */\n  gridTemplateAreas?: ResponsiveProp<Property.GridTemplateAreas>;\n};\n\nexport type ResponsiveBleedProps = PrimitiveLayoutProps & {\n  /**Setter negativ CSS `margin-inline`, overskriver prop `marginInline`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser.*/\n  bleedMarginInline?: ResponsiveProp<Property.MarginInline | SpacingScale>;\n  /**Setter negativ CSS `margin-block`, overskriver prop `marginBlock`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser.*/\n  bleedMarginBlock?: ResponsiveProp<Property.MarginBlock | SpacingScale>;\n};\n","import { type Properties } from 'csstype';\n\nimport {\n  BREAKPOINTS,\n  type Breakpoint,\n  type RelativeColumnsOccupied,\n  type ResponsiveProp,\n  SPACING_SCALES,\n  type SpacingScale,\n} from './Responsive.types';\nimport {\n  type BorderColor,\n  type PaperBackground,\n  isBorderColor,\n  isPaperBackground,\n} from '../../../types';\n\nconst TOKEN_PREFIX = 'dds';\n\nexport function isBreakpointObject<T>(\n  value: ResponsiveProp<T>,\n): value is Partial<Record<Breakpoint, T>> {\n  return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\nexport const getBreakpointFromScreenWidth = (width: number) => {\n  if (width > 1919) return 'xl';\n  if (width >= 1280) return 'lg';\n  if (width >= 960) return 'md';\n  if (width >= 600) return 'sm';\n  return 'xs';\n};\n\nexport const isSpacingScale = (value: unknown): value is SpacingScale => {\n  return (\n    typeof value === 'string' && SPACING_SCALES.includes(value as SpacingScale)\n  );\n};\n\nexport const isRelativeGridColumn = (\n  type: unknown,\n): type is RelativeColumnsOccupied => {\n  return type === 'all' || type === 'firstHalf' || type === 'secondHalf';\n};\n\nconst isColor = (value: unknown): value is PaperBackground | BorderColor => {\n  return (\n    typeof value === 'string' &&\n    (isBorderColor(value) || isPaperBackground(value))\n  );\n};\n\nexport function spacingPropToToken(value: string): string {\n  return value.replace(/\\./g, '-');\n}\n\nconst getSpacingToken = (v: SpacingScale): string =>\n  `var(--${TOKEN_PREFIX}-spacing-${spacingPropToToken(v)})`;\n\nconst getColorToken = (v: PaperBackground | BorderColor): string =>\n  `var(--${TOKEN_PREFIX}-color-${v})`;\n\nconst relativeGridColumnToken = (\n  v: RelativeColumnsOccupied,\n  bp?: Breakpoint,\n): string => {\n  if (v === 'all') return '1 / -1';\n  if (!bp) return '';\n  return v === 'firstHalf'\n    ? `1 / calc(var(--${TOKEN_PREFIX}-grid-${bp}-count) / 2 + 1)`\n    : `calc(var(--${TOKEN_PREFIX}-grid-${bp}-count) / 2 + 1) / -1`;\n};\n\nconst getValue = (v: string, bp?: Breakpoint, invert?: boolean): string => {\n  let output: string;\n\n  if (isColor(v)) output = getColorToken(v);\n  else if (isSpacingScale(v)) output = getSpacingToken(v);\n  else if (isRelativeGridColumn(v)) output = relativeGridColumnToken(v, bp);\n  else output = v;\n\n  return invert ? invertValue(output) : output;\n};\n\nconst convertMultiValue = (value: string, bp?: Breakpoint, invert?: boolean) =>\n  value\n    .split(' ')\n    .map(v => getValue(v, bp, invert))\n    .join(' ');\n\nconst invertValue = (v: string): string =>\n  v === '0' ? '0' : `calc(-1 * ${v})`;\n\nconst buildCSSKey = (\n  prefix?: string,\n  suffix?: string,\n  bp?: Breakpoint,\n): string => {\n  let key = `--${TOKEN_PREFIX}`;\n  if (prefix) key += `-${prefix}`;\n  if (bp) key += `-${bp}`;\n  if (suffix) key += `-${suffix}`;\n  return key;\n};\n\nexport function getCSSProperties<T>(\n  property?: T,\n  prefix?: string,\n  suffix?: string,\n  invert?: boolean,\n): Properties | undefined {\n  if (property === undefined || property === null) return;\n\n  const properties: Properties = {};\n\n  (properties as Record<string, string>)[buildCSSKey(prefix, suffix)] =\n    convertMultiValue(property.toString(), undefined, invert);\n\n  return properties;\n}\n\nexport function getResponsiveCSSProperties<T>(\n  property?: ResponsiveProp<T>,\n  prefix?: string,\n  suffix?: string,\n  invert?: boolean,\n): Properties | undefined {\n  if (!property) return;\n\n  const properties: Properties = {};\n\n  if (isBreakpointObject(property)) {\n    BREAKPOINTS.forEach(bp => {\n      if (property[bp]) {\n        (properties as Record<string, string>)[\n          buildCSSKey(prefix, suffix, bp)\n        ] = convertMultiValue(property[bp].toString(), bp, invert);\n      }\n    });\n  } else {\n    (properties as Record<string, string>)[buildCSSKey(prefix, suffix)] =\n      convertMultiValue(property.toString(), undefined, invert);\n  }\n  return properties;\n}\n\n/**\n * Setter styling opptil et brekkpunkt og muligens annen styling over det brekkpunktet.\n * @param p styling under og inkludert brekkpunktet.\n * @param bp brekkpunktet.\n * @param largeScreenP styling over brekkpunktet.\n * @returns responsiv styling for en CSS prop.\n */\n\nexport function styleUpToBreakpoint<T>(\n  p: T,\n  bp?: Breakpoint,\n  largeScreenP?: T,\n): ResponsiveProp<T> | undefined {\n  if (!bp) return largeScreenP;\n  const bpIndex = BREAKPOINTS.indexOf(bp);\n  return BREAKPOINTS.reduce((acc, curr, index) => {\n    return { ...acc, [curr]: index <= bpIndex ? p : largeScreenP };\n  }, {});\n}\n","import { type ElementType } from 'react';\n\nimport { type PropsOfWithRef } from './polymorphic.types';\n\nexport type PolymorphicProps<T extends ElementType> = PropsOfWithRef<T>;\n\nexport const ElementAs = <T extends ElementType>({\n  as = 'div',\n  ref,\n  children,\n  ...props\n}: PolymorphicProps<T>) => {\n  const Component = as;\n  return (\n    <Component ref={ref} {...props}>\n      {children}\n    </Component>\n  );\n};\n",".xs-hide-below {\n  @media only screen and (max-width: 599px) {\n    display: none !important;\n  }\n}\n\n.sm-hide-below {\n  @media only screen and (max-width: 959px) {\n    display: none !important;\n  }\n}\n\n.md-hide-below {\n  @media only screen and (max-width: 1279px) {\n    display: none !important;\n  }\n}\n\n.lg-hide-below {\n  @media only screen and (max-width: 1919px) {\n    display: none !important;\n  }\n}\n\n.xl-hide-below {\n  display: none !important;\n}\n\n.xs-hide-above {\n  @media only screen and (min-width: 600px) {\n    display: none !important;\n  }\n}\n\n.sm-hide-above {\n  @media only screen and (min-width: 960px) {\n    display: none !important;\n  }\n}\n\n.md-hide-above {\n  @media only screen and (min-width: 1280px) {\n    display: none !important;\n  }\n}\n\n.lg-hide-above {\n  @media only screen and (min-width: 1920px) {\n    display: none !important;\n  }\n}\n","import { type ElementType } from 'react';\n\nimport { ElementAs } from '../../../polymorphic';\nimport {\n  type PolymorphicBaseComponentProps,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { cn } from '../../../utils';\nimport styles from '../common/display.module.css';\nimport { type PrimitiveDisplayProps } from '../common/Responsive.types';\n\nexport type ShowHideProps<T extends ElementType = 'div'> =\n  PolymorphicBaseComponentProps<T, PrimitiveDisplayProps>;\n\nexport const ShowHide = <T extends ElementType = 'div'>({\n  hideBelow,\n  showBelow,\n  className,\n  style,\n  htmlProps,\n  id,\n  as: C,\n  ...rest\n}: ShowHideProps<T>) => {\n  const as = C ?? 'div';\n  return (\n    <ElementAs\n      as={as}\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          hideBelow && styles[`${hideBelow}-hide-below`],\n          showBelow && showBelow !== 'xl' && styles[`${showBelow}-hide-above`],\n        ),\n        style,\n        htmlProps,\n        rest,\n      )}\n    />\n  );\n};\n\nShowHide.displayName = 'ShowHide';\n","import { type ElementType } from 'react';\n\nimport {\n  type PolymorphicBaseComponentProps,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { cn } from '../../../utils';\nimport styles from '../common/layout.module.css';\nimport { type ResponsiveProps } from '../common/Responsive.types';\nimport { getResponsiveCSSProperties } from '../common/utils';\nimport { ShowHide } from '../ShowHide';\n\nexport type BoxProps<T extends ElementType = 'div'> =\n  PolymorphicBaseComponentProps<T, ResponsiveProps>;\n\nexport const Box = <T extends ElementType = 'div'>({\n  id,\n  className,\n  style,\n  padding,\n  paddingInline,\n  paddingBlock,\n  margin,\n  marginInline,\n  marginBlock,\n  height,\n  maxHeight,\n  minHeight,\n  width,\n  maxWidth,\n  minWidth,\n  position,\n  left,\n  right,\n  bottom,\n  top,\n  overflow,\n  overflowX,\n  overflowY,\n  display,\n  textAlign,\n  flexDirection,\n  gap,\n  columnGap,\n  rowGap,\n  alignItems,\n  alignContent,\n  justifyItems,\n  placeItems,\n  justifyContent,\n  flexWrap,\n  flexBasis,\n  flexFlow,\n  wordBreak,\n  htmlProps,\n  ...rest\n}: BoxProps<T>) => {\n  const responsiveStyles = {\n    ...getResponsiveCSSProperties(padding, 'r', 'p'),\n    ...getResponsiveCSSProperties(paddingInline, 'r', 'p-i'),\n    ...getResponsiveCSSProperties(paddingBlock, 'r', 'p-b'),\n    ...getResponsiveCSSProperties(margin, 'r', 'm'),\n    ...getResponsiveCSSProperties(marginInline, 'r', 'm-i'),\n    ...getResponsiveCSSProperties(marginBlock, 'r', 'm-b'),\n    ...getResponsiveCSSProperties(height, 'r', 'h'),\n    ...getResponsiveCSSProperties(maxHeight, 'r', 'max-h'),\n    ...getResponsiveCSSProperties(minHeight, 'r', 'min-h'),\n    ...getResponsiveCSSProperties(width, 'r', 'w'),\n    ...getResponsiveCSSProperties(maxWidth, 'r', 'max-w'),\n    ...getResponsiveCSSProperties(minWidth, 'r', 'min-w'),\n    ...getResponsiveCSSProperties(position, 'r', 'pos'),\n    ...getResponsiveCSSProperties(left, 'r', 'l'),\n    ...getResponsiveCSSProperties(right, 'r', 'r'),\n    ...getResponsiveCSSProperties(top, 'r', 't'),\n    ...getResponsiveCSSProperties(bottom, 'r', 'b'),\n    ...getResponsiveCSSProperties(overflow, 'r', 'o'),\n    ...getResponsiveCSSProperties(overflowX, 'r', 'o-x'),\n    ...getResponsiveCSSProperties(overflowY, 'r', 'o-y'),\n    ...getResponsiveCSSProperties(display, 'r', 'display'),\n    ...getResponsiveCSSProperties(textAlign, 'r', 'text-align'),\n    ...getResponsiveCSSProperties(flexDirection, 'r', 'flex-dir'),\n    ...getResponsiveCSSProperties(gap, 'r', 'gap'),\n    ...getResponsiveCSSProperties(columnGap, 'r', 'c-gap'),\n    ...getResponsiveCSSProperties(rowGap, 'r', 'r-gap'),\n    ...getResponsiveCSSProperties(alignItems, 'r', 'a-i'),\n    ...getResponsiveCSSProperties(alignContent, 'r', 'a-c'),\n    ...getResponsiveCSSProperties(justifyItems, 'r', 'j-i'),\n    ...getResponsiveCSSProperties(placeItems, 'r', 'pl-i'),\n    ...getResponsiveCSSProperties(justifyContent, 'r', 'j-c'),\n    ...getResponsiveCSSProperties(flexWrap, 'r', 'wrap'),\n    ...getResponsiveCSSProperties(flexBasis, 'r', 'basis'),\n    ...getResponsiveCSSProperties(flexFlow, 'r', 'flow'),\n    ...getResponsiveCSSProperties(wordBreak, 'r', 'word-break'),\n  };\n\n  return (\n    <ShowHide\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          padding && styles['dds-p'],\n          paddingInline && styles['dds-p-i'],\n          paddingBlock && styles['dds-p-b'],\n          margin && styles['dds-m'],\n          marginInline && styles['dds-m-i'],\n          marginBlock && styles['dds-m-b'],\n          height && styles['dds-h'],\n          maxHeight && styles['dds-max-h'],\n          minHeight && styles['dds-min-h'],\n          width && styles['dds-w'],\n          maxWidth && styles['dds-max-w'],\n          minWidth && styles['dds-min-w'],\n          position && styles['dds-pos'],\n          left && styles['dds-l'],\n          right && styles['dds-r'],\n          top && styles['dds-t'],\n          bottom && styles['dds-b'],\n          overflow && styles['dds-o'],\n          overflowX && styles['dds-o-x'],\n          overflowY && styles['dds-o-y'],\n          display && styles['dds-display'],\n          textAlign && styles['dds-text-align'],\n          flexDirection && styles['dds-flex-dir'],\n          gap && styles['dds-gap'],\n          columnGap && styles['dds-c-gap'],\n          rowGap && styles['dds-r-gap'],\n          alignContent && styles['dds-a-c'],\n          alignItems && styles['dds-a-i'],\n          justifyContent && styles['dds-j-c'],\n          justifyItems && styles['dds-j-i'],\n          placeItems && styles['dds-pl-i'],\n          flexWrap && styles['dds-wrap'],\n          flexBasis && styles['dds-basis'],\n          flexFlow && styles['dds-flow'],\n          wordBreak && styles['dds-word-break'],\n        ),\n        { ...style, ...responsiveStyles },\n        htmlProps,\n        rest,\n      )}\n    />\n  );\n};\n\nBox.displayName = 'Box';\n","import { type ElementType } from 'react';\n\nimport {\n  type PolymorphicBaseComponentProps,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { cn } from '../../../utils';\nimport { Box } from '../Box';\nimport styles from '../common/layout.module.css';\nimport { type ResponsiveBleedProps } from '../common/Responsive.types';\nimport { getResponsiveCSSProperties } from '../common/utils';\n\nexport type BleedProps<T extends ElementType = 'div'> =\n  PolymorphicBaseComponentProps<\n    T,\n    {\n      /**\n       * Setter positiv padding som gjenspeiler negativ margin satt med `bleedMarginBlock` og `bleedMarginInline`. Overskriver `paddingInline` og `paddingBlock`.\n       */\n      reflectivePadding?: boolean;\n    } & ResponsiveBleedProps\n  >;\n\nexport const Bleed = <T extends ElementType = 'div'>({\n  id,\n  className,\n  style,\n  htmlProps,\n  bleedMarginBlock,\n  bleedMarginInline,\n  reflectivePadding,\n  ...rest\n}: BleedProps<T>) => {\n  const reflStyles = reflectivePadding\n    ? {\n        ...getResponsiveCSSProperties(bleedMarginInline, 'r', 'p-i'),\n        ...getResponsiveCSSProperties(bleedMarginBlock, 'r', 'p-b'),\n      }\n    : {};\n  const responsiveStyles = {\n    ...getResponsiveCSSProperties(bleedMarginInline, 'r', 'bleed-m-i', true),\n    ...getResponsiveCSSProperties(bleedMarginBlock, 'r', 'bleed-m-b', true),\n    ...reflStyles,\n  };\n\n  return (\n    <Box\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          bleedMarginInline && styles['dds-bleed-m-i'],\n          bleedMarginBlock && styles['dds-bleed-m-b'],\n          bleedMarginInline && reflectivePadding && styles['dds-p-i'],\n          bleedMarginBlock && reflectivePadding && styles['dds-p-b'],\n        ),\n        { ...style, ...responsiveStyles },\n        htmlProps,\n        rest,\n      )}\n    />\n  );\n};\n\nBleed.displayName = 'Bleed';\n",":where(.container) {\n  background-color: var(--dds-color-surface-inverse-default);\n}\n","import { type ElementType } from 'react';\n\nimport { Box, type BoxProps } from '..';\nimport styles from './Contrast.module.css';\nimport { getBaseHTMLProps } from '../../../types';\nimport { cn } from '../../../utils';\nimport typographyStyles from '../../Typography/typographyStyles.module.css';\n\nexport type ContrastProps<T extends ElementType = 'div'> = BoxProps<T>;\n\nexport const Contrast = <T extends ElementType = 'div'>({\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: ContrastProps<T>) => {\n  return (\n    <Box\n      {...getBaseHTMLProps(\n        id,\n        cn(className, typographyStyles.contrast, styles.container),\n        style,\n        htmlProps,\n        rest,\n      )}\n    />\n  );\n};\n\nContrast.displayName = 'Contrast';\n","/*Grid*/\n\n.dds-grid {\n  --dds-r-grid: var(--dds-r-xs-grid);\n  grid: var(--dds-r-grid);\n}\n\n.dds-grid-template-columns {\n  --dds-r-grid-template-columns: var(--dds-r-xs-grid-template-columns);\n  grid-template-columns: var(--dds-r-grid-template-columns);\n}\n\n.dds-grid-auto-flow {\n  --dds-r-grid-auto-flow: var(--dds-r-xs-grid-auto-flow);\n  grid-auto-flow: var(--dds-r-grid-auto-flow);\n}\n\n.dds-grid-auto-columns {\n  --dds-r-grid-auto-columns: var(--dds-r-xs-grid-auto-columns);\n  grid-auto-columns: var(--dds-r-grid-auto-columns);\n}\n\n.dds-grid-auto-rows {\n  --dds-r-grid-auto-rows: var(--dds-r-xs-grid-auto-rows);\n  grid-auto-rows: var(--dds-r-grid-auto-rows);\n}\n\n.dds-grid-template {\n  --dds-r-grid-template: var(--dds-r-xs-grid-template);\n  grid-template: var(--dds-r-grid-template);\n}\n\n.dds-grid-template-rows {\n  --dds-r-grid-template-rows: var(--dds-r-xs-grid-template-rows);\n  grid-template-rows: var(--dds-r-grid-template-rows);\n}\n\n.dds-grid-template-areas {\n  --dds-r-grid-template-areas: var(--dds-r-xs-grid-template-areas);\n  grid-template-areas: var(--dds-r-grid-template-areas);\n}\n\n/*GridChild*/\n\n.dds-grid-column {\n  --dds-r-grid-column: var(--dds-r-xs-grid-column);\n  grid-column: var(--dds-r-grid-column);\n}\n\n.dds-grid-row {\n  --dds-r-grid-row: var(--dds-r-xs-grid-row);\n  grid-row: var(--dds-r-grid-row);\n}\n\n.dds-grid-area {\n  --dds-r-grid-area: var(--dds-r-xs-grid-area);\n  grid-area: var(--dds-r-grid-area);\n}\n\n.dds-j-self {\n  --dds-r-j-self: var(--dds-r-xs-j-self);\n  justify-self: var(--dds-r-j-self);\n}\n\n.child--first-half {\n  grid-column: 1 / calc(var(--dds-grid-col-count) / 2 + 1);\n}\n\n.child--second-half {\n  grid-column: calc(var(--dds-grid-col-count) / 2 + 1) / -1;\n}\n\n@media (max-width: 599px) {\n  .dds-grid-template-columns {\n    --dds-r-grid-template-columns: var(--dds-r-xs-grid-template-columns);\n  }\n  .dds-grid {\n    --dds-r-grid: var(--dds-r-xs-grid);\n  }\n  .dds-grid-auto-columns {\n    --dds-r-grid-auto-columns: var(--dds-r-xs-grid-auto-columns);\n  }\n  .dds-grid-auto-rows {\n    --dds-r-grid-auto-rows: var(--dds-r-xs-grid-auto-rows);\n  }\n  .dds-grid-auto-flow {\n    --dds-r-grid-auto-flow: var(--dds-r-xs-grid-auto-flow);\n  }\n  .dds-grid-template {\n    --dds-r-grid-template: var(--dds-r-xs-grid-template);\n  }\n  .dds-grid-template-rows {\n    --dds-r-grid-template-rows: var(--dds-r-xs-grid-template-rows);\n  }\n  .dds-grid-template-areas {\n    --dds-r-grid-template-areas: var(--dds-r-xs-grid-template-areas);\n  }\n  .dds-grid-column {\n    --dds-r-grid-column: var(--dds-r-xs-grid-column);\n  }\n  .child-col-count {\n    --dds-grid-col-count: var(--dds-grid-xs-count);\n  }\n  .dds-grid-row {\n    --dds-r-grid-row: var(--dds-r-xs-grid-row);\n  }\n  .dds-grid-area {\n    --dds-r-grid-area: var(--dds-r-xs-grid-area);\n  }\n  .dds-j-self {\n    --dds-r-j-self: var(--dds-r-xs-j-self);\n  }\n}\n\n@media (min-width: 600px) {\n  .dds-grid-template-columns {\n    --dds-r-grid-template-columns: var(--dds-r-sm-grid-template-columns);\n  }\n  .dds-grid {\n    --dds-r-grid: var(--dds-r-sm-grid);\n  }\n  .dds-grid-auto-columns {\n    --dds-r-grid-auto-columns: var(--dds-r-sm-grid-auto-columns);\n  }\n  .dds-grid-auto-rows {\n    --dds-r-grid-auto-rows: var(--dds-r-sm-grid-auto-rows);\n  }\n  .dds-grid-auto-flow {\n    --dds-r-grid-auto-flow: var(--dds-r-sm-grid-auto-flow);\n  }\n  .dds-grid-template {\n    --dds-r-grid-template: var(--dds-r-sm-grid-template);\n  }\n  .dds-grid-template-rows {\n    --dds-r-grid-template-rows: var(--dds-r-sm-grid-template-rows);\n  }\n  .dds-grid-template-areas {\n    --dds-r-grid-template-areas: var(--dds-r-sm-grid-template-areas);\n  }\n  .dds-grid-column {\n    --dds-r-grid-column: var(--dds-r-sm-grid-column);\n  }\n  .child-col-count {\n    --dds-grid-col-count: var(--dds-grid-sm-count);\n  }\n  .dds-grid-row {\n    --dds-r-grid-row: var(--dds-r-sm-grid-row);\n  }\n  .dds-grid-area {\n    --dds-r-grid-area: var(--dds-r-sm-grid-area);\n  }\n  .dds-j-self {\n    --dds-r-j-self: var(--dds-r-sm-j-self);\n  }\n}\n\n@media (min-width: 960px) {\n  .dds-grid-template-columns {\n    --dds-r-grid-template-columns: var(--dds-r-md-grid-template-columns);\n  }\n  .dds-grid {\n    --dds-r-grid: var(--dds-r-md-grid);\n  }\n  .dds-grid-auto-columns {\n    --dds-r-grid-auto-columns: var(--dds-r-md-grid-auto-columns);\n  }\n  .dds-grid-auto-rows {\n    --dds-r-grid-auto-rows: var(--dds-r-md-grid-auto-rows);\n  }\n  .dds-grid-auto-flow {\n    --dds-r-grid-auto-flow: var(--dds-r-md-grid-auto-flow);\n  }\n  .dds-grid-template {\n    --dds-r-grid-template: var(--dds-r-md-grid-template);\n  }\n  .dds-grid-template-rows {\n    --dds-r-grid-template-rows: var(--dds-r-md-grid-template-rows);\n  }\n  .dds-grid-template-areas {\n    --dds-r-grid-template-areas: var(--dds-r-md-grid-template-areas);\n  }\n  .dds-grid-column {\n    --dds-r-grid-column: var(--dds-r-md-grid-column);\n  }\n  .child-col-count {\n    --dds-grid-col-count: var(--dds-grid-md-count);\n  }\n  .dds-grid-row {\n    --dds-r-grid-row: var(--dds-r-md-grid-row);\n  }\n  .dds-grid-area {\n    --dds-r-grid-area: var(--dds-r-md-grid-area);\n  }\n  .dds-j-self {\n    --dds-r-j-self: var(--dds-r-md-j-self);\n  }\n}\n\n@media (min-width: 1280px) {\n  .dds-grid-template-columns {\n    --dds-r-grid-template-columns: var(--dds-r-lg-grid-template-columns);\n  }\n  .dds-grid {\n    --dds-r-grid: var(--dds-r-lg-grid);\n  }\n  .dds-grid-auto-columns {\n    --dds-r-grid-auto-columns: var(--dds-r-lg-grid-auto-columns);\n  }\n  .dds-grid-auto-rows {\n    --dds-r-grid-auto-rows: var(--dds-r-lg-grid-auto-rows);\n  }\n  .dds-grid-auto-flow {\n    --dds-r-grid-auto-flow: var(--dds-r-lg-grid-auto-flow);\n  }\n  .dds-grid-template {\n    --dds-r-grid-template: var(--dds-r-lg-grid-template);\n  }\n  .dds-grid-template-rows {\n    --dds-r-grid-template-rows: var(--dds-r-lg-grid-template-rows);\n  }\n  .dds-grid-template-areas {\n    --dds-r-grid-template-areas: var(--dds-r-lg-grid-template-areas);\n  }\n  .dds-grid-column {\n    --dds-r-grid-column: var(--dds-r-lg-grid-column);\n  }\n  .child-col-count {\n    --dds-grid-col-count: var(--dds-grid-lg-count);\n  }\n  .dds-grid-row {\n    --dds-r-grid-row: var(--dds-r-lg-grid-row);\n  }\n  .dds-grid-area {\n    --dds-r-grid-area: var(--dds-r-lg-grid-area);\n  }\n  .dds-j-self {\n    --dds-r-j-self: var(--dds-r-lg-j-self);\n  }\n}\n\n@media (min-width: 1920px) {\n  .dds-grid-template-columns {\n    --dds-r-grid-template-columns: var(--dds-r-xl-grid-template-columns);\n  }\n  .dds-grid {\n    --dds-r-grid: var(--dds-r-xl-grid);\n  }\n  .dds-grid-auto-columns {\n    --dds-r-grid-auto-columns: var(--dds-r-xl-grid-auto-columns);\n  }\n  .dds-grid-auto-rows {\n    --dds-r-grid-auto-rows: var(--dds-r-xl-grid-auto-rows);\n  }\n  .dds-grid-auto-flow {\n    --dds-r-grid-auto-flow: var(--dds-r-xl-grid-auto-flow);\n  }\n  .dds-grid-template {\n    --dds-r-grid-template: var(--dds-r-xl-grid-template);\n  }\n  .dds-grid-template-rows {\n    --dds-r-grid-template-rows: var(--dds-r-xl-grid-template-rows);\n  }\n  .dds-grid-template-areas {\n    --dds-r-grid-template-areas: var(--dds-r-xl-grid-template-areas);\n  }\n  .dds-grid-column {\n    --dds-r-grid-column: var(--dds-r-xl-grid-column);\n  }\n  .child-col-count {\n    --dds-grid-col-count: var(--dds-grid-xl-count);\n  }\n  .dds-grid-row {\n    --dds-r-grid-row: var(--dds-r-xl-grid-row);\n  }\n  .dds-grid-area {\n    --dds-r-grid-area: var(--dds-r-xl-grid-area);\n  }\n  .dds-j-self {\n    --dds-r-j-self: var(--dds-r-xl-j-self);\n  }\n}\n","import { type ElementType } from 'react';\n\nimport styles from './Grid.module.css';\nimport {\n  type PolymorphicBaseComponentProps,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { cn } from '../../../utils';\nimport { Box } from '../Box';\nimport { type ResponsiveGridProps } from '../common/Responsive.types';\nimport { getResponsiveCSSProperties } from '../common/utils';\n\nconst DEFAULT_PAGE_LAYOUT = {\n  gridTemplateColumns: {\n    xs: 'repeat(var(--dds-grid-xs-count), minmax(0, 1fr))',\n    sm: 'repeat(var(--dds-grid-sm-count), minmax(0, 1fr))',\n    md: 'repeat(var(--dds-grid-md-count), minmax(0, 1fr))',\n    lg: 'repeat(var(--dds-grid-lg-count), minmax(0, 1fr))',\n    xl: 'repeat(var(--dds-grid-xl-count), minmax(0, 1fr))',\n  },\n  gutterSize: {\n    xs: 'var(--dds-grid-xs-gutter-size)',\n    sm: 'var(--dds-grid-sm-gutter-size)',\n    md: 'var(--dds-grid-md-gutter-size)',\n    lg: 'var(--dds-grid-lg-gutter-size)',\n    xl: 'var(--dds-grid-xl-gutter-size)',\n  },\n  marginInline: { xs: 'x2', sm: 'x2', md: 'x4', lg: 'x6', xl: 'x10' },\n} as const;\n\nexport type GridProps<T extends ElementType = 'div'> =\n  PolymorphicBaseComponentProps<\n    T,\n    {\n      /** CSS `grid-template-columns`. Støtter standardverdier per brekkpunkt eller samme for alle skjermstørrelser.\n         * @default {\n        xs: 'repeat(var(--dds-grid-xs-count), minmax(0, 1fr))',\n        sm: 'repeat(var(--dds-grid-sm-count), minmax(0, 1fr))',\n        md: 'repeat(var(--dds-grid-md-count), minmax(0, 1fr))',\n        lg: 'repeat(var(--dds-grid-lg-count), minmax(0, 1fr))',\n        xl: 'repeat(var(--dds-grid-xl-count), minmax(0, 1fr))',\n        }\n        */\n      gridTemplateColumns?: ResponsiveGridProps['gridTemplateColumns'];\n      /** Om standard styling for sideoppsett skal brukes.\n       * Ved `true` settes overskrivbare standard verdier for `grid-template-columns`, `marginInline`, `rowGap` og `columnGap` som er tilpasset sideoppsett.\n       * @default true\n       */\n      defaultPageLayout?: boolean;\n    } & ResponsiveGridProps\n  >;\n\nexport const Grid = <T extends ElementType = 'div'>({\n  id,\n  className,\n  htmlProps,\n  defaultPageLayout = true,\n  display = 'grid',\n  grid,\n  gridAutoColumns,\n  gridAutoFlow,\n  gridAutoRows,\n  gridTemplate,\n  gridTemplateAreas,\n  gridTemplateRows,\n  gridTemplateColumns,\n  columnGap,\n  rowGap,\n  marginInline,\n  style,\n  ...rest\n}: GridProps<T>) => {\n  const pageDefaults = defaultPageLayout ? DEFAULT_PAGE_LAYOUT : null;\n  const resolvedGridTemplateColumns =\n    gridTemplateColumns ?? pageDefaults?.gridTemplateColumns;\n  const resolvedColumnGap = columnGap ?? pageDefaults?.gutterSize;\n  const resolvedRowGap = rowGap ?? pageDefaults?.gutterSize;\n  const resolvedMarginInline = marginInline ?? pageDefaults?.marginInline;\n  const styleVariables = {\n    ...getResponsiveCSSProperties(\n      resolvedGridTemplateColumns,\n      'r',\n      'grid-template-columns',\n    ),\n    ...getResponsiveCSSProperties(grid, 'r', 'grid'),\n    ...getResponsiveCSSProperties(gridAutoColumns, 'r', 'grid-auto-columns'),\n    ...getResponsiveCSSProperties(gridAutoFlow, 'r', 'grid-auto-flow'),\n    ...getResponsiveCSSProperties(gridAutoRows, 'r', 'grid-auto-rows'),\n    ...getResponsiveCSSProperties(gridTemplate, 'r', 'grid-template'),\n    ...getResponsiveCSSProperties(gridTemplateRows, 'r', 'grid-template-rows'),\n    ...getResponsiveCSSProperties(\n      gridTemplateAreas,\n      'r',\n      'grid-template-areas',\n    ),\n  };\n\n  return (\n    <Box\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          resolvedGridTemplateColumns && styles['dds-grid-template-columns'],\n          grid && styles['dds-grid'],\n          gridAutoColumns && styles['dds-grid-auto-columns'],\n          gridAutoFlow && styles['dds-grid-auto-flow'],\n          gridAutoRows && styles['dds-grid-auto-rows'],\n          gridTemplate && styles['dds-grid-template'],\n          gridTemplateRows && styles['dds-grid-template-rows'],\n          gridTemplateAreas && styles['dds-grid-template-areas'],\n        ),\n        { ...style, ...styleVariables },\n        htmlProps,\n        rest,\n      )}\n      display={display}\n      marginInline={resolvedMarginInline}\n      columnGap={resolvedColumnGap}\n      rowGap={resolvedRowGap}\n    />\n  );\n};\n\nGrid.displayName = 'Grid';\n","import {\n  type Properties,\n  type Property,\n  type StandardProperties,\n} from 'csstype';\nimport { type ElementType } from 'react';\n\nimport { Box } from '../Box';\nimport styles from './Grid.module.css';\nimport {\n  type PolymorphicBaseComponentProps,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { cn } from '../../../utils';\nimport {\n  type ResponsiveProp,\n  type ResponsiveProps,\n} from '../common/Responsive.types';\nimport { getResponsiveCSSProperties } from '../common/utils';\n\ntype RelativeColumnsOccupied = 'all' | 'firstHalf' | 'secondHalf';\n\nexport type ColumnsOccupied = ResponsiveProp<\n  StandardProperties['gridColumn'] | RelativeColumnsOccupied\n>;\n\nexport type GridChildProps<T extends ElementType = 'div'> =\n  PolymorphicBaseComponentProps<\n    T,\n    {\n      /**Hvilke kolonner innholdet skal okkupere. Støtter standardverdier for CSS `grid-column` og relative verider `'all'`, `'firstHalf'` eller `'secondHalf'`, per brekkpunkt eller samme for alle skjermstørrelser. */\n      columnsOccupied?: ColumnsOccupied;\n      /**CSS `justify-self`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n      justifySelf?: ResponsiveProp<Property.JustifySelf>;\n      /**CSS `grid-row`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n      gridRow?: ResponsiveProp<Property.GridRow>;\n      /**CSS `grid-area`. Støtter verdi per brekkpunkt eller samme for alle skjermstørrelser. */\n      gridArea?: ResponsiveProp<Property.GridArea>;\n    } & Omit<ResponsiveProps, 'display'>\n  >;\n\nexport const GridChild = <T extends ElementType = 'div'>({\n  id,\n  className,\n  htmlProps,\n  style,\n  gridRow,\n  gridArea,\n  justifySelf,\n  columnsOccupied,\n  ...rest\n}: GridChildProps<T>) => {\n  const styleVariables: Properties = {\n    ...getResponsiveCSSProperties(gridRow, 'r', 'grid-row'),\n    ...getResponsiveCSSProperties(gridArea, 'r', 'grid-area'),\n    ...getResponsiveCSSProperties(justifySelf, 'r', 'j-self'),\n    ...getResponsiveCSSProperties(columnsOccupied, 'r', 'grid-column'),\n  };\n\n  return (\n    <Box\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          styles['child-col-count'],\n          gridRow && styles['dds-grid-row'],\n          gridArea && styles['dds-grid-area'],\n          justifySelf && styles['dds-j-self'],\n          columnsOccupied && styles['dds-grid-column'],\n          columnsOccupied === 'firstHalf' && styles['child--first-half'],\n          columnsOccupied === 'secondHalf' && styles['child--second-half'],\n        ),\n        { ...style, ...styleVariables },\n        htmlProps,\n        rest,\n      )}\n    />\n  );\n};\n\nGridChild.displayName = 'GridChild';\n",".background {\n  background: var(--dds-paper-background);\n}\n.border {\n  border: 1px solid var(--dds-paper-border);\n}\n\n:where(.container) {\n  box-sizing: border-box;\n  background-color: var(--dds-color-surface-default);\n  border-radius: var(--dds-border-radius-surface);\n  margin: 0;\n}\n\n:where(.shadow--small) {\n  box-shadow: var(--dds-shadow-small);\n}\n:where(.shadow--medium) {\n  box-shadow: var(--dds-shadow-medium);\n}\n:where(.shadow--large) {\n  box-shadow: var(--dds-shadow-large);\n}\n\n:where(.border-radius--button) {\n  border-radius: var(--dds-border-radius-button);\n}\n\n:where(.border-radius--surface) {\n  border-radius: var(--dds-border-radius-surface);\n}\n\n:where(.border-radius--chip) {\n  border-radius: var(--dds-border-radius-chip);\n}\n\n:where(.border-radius--input) {\n  border-radius: var(--dds-border-radius-input);\n}\n\n:where(.border-radius--rounded) {\n  border-radius: var(--dds-border-radius-rounded);\n}\n\n:where(.border-radius--0) {\n  border-radius: 0;\n}\n","import { type ComponentProps, type ElementType } from 'react';\n\nimport styles from './Paper.module.css';\nimport {\n  type BorderColor,\n  type BorderRadius,\n  type Elevation,\n  type PaperBackground,\n  type PolymorphicBaseComponentProps,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { cn } from '../../../utils';\nimport { Box } from '../../layout/Box/Box';\nimport { type ResponsiveProps } from '../common';\nimport { getCSSProperties } from '../common/utils';\n\nexport type PaperElevation = Elevation;\nexport type PaperBorder = BorderColor;\nexport type PaperBorderRadius = BorderRadius;\n\ntype PickedAttributes<T extends ElementType = 'div'> = Pick<\n  ComponentProps<T>,\n  'tabIndex' | 'role'\n>;\n\nexport type PaperProps<T extends ElementType = 'div'> =\n  PolymorphicBaseComponentProps<\n    T,\n    {\n      /**I hvor stor grad flaten skal framheves. Støtter dds tokens. */\n      elevation?: PaperElevation;\n      /**Farge på kantlinje. Støtter dds tokens. */\n      border?: PaperBorder;\n      /**Hvor runde hjørner skal være. Støtter dds tokens. */\n      borderRadius?: PaperBorderRadius;\n      /**Bakgrunn. Støtter dds tokens. */\n      background?: PaperBackground;\n    } & ResponsiveProps &\n      PickedAttributes\n  >;\n\nexport const Paper = <T extends ElementType = 'div'>({\n  id,\n  elevation,\n  border,\n  borderRadius = 'surface',\n  background = 'surface-paper-default',\n  className,\n  htmlProps,\n  style,\n  ...rest\n}: PaperProps<T>) => {\n  const styleVariables = {\n    ...getCSSProperties(background, 'paper', 'background'),\n    ...getCSSProperties(border, 'paper', 'border'),\n  };\n\n  return (\n    <Box\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          styles.container,\n          elevation && styles[`shadow--${elevation}`],\n          borderRadius && styles[`border-radius--${borderRadius}`],\n          styles.background,\n          border && styles.border,\n        ),\n        { ...style, ...styleVariables },\n        htmlProps,\n        rest,\n      )}\n    />\n  );\n};\n","import { type ElementType } from 'react';\n\nimport {\n  type PolymorphicBaseComponentProps,\n  getBaseHTMLProps,\n} from '../../../../types';\nimport { Box } from '../../Box';\nimport { type ResponsiveStackProps } from '../../common';\n\nexport type VStackProps<T extends ElementType = 'div'> =\n  PolymorphicBaseComponentProps<T, ResponsiveStackProps>;\n\nexport const VStack = <T extends ElementType = 'div'>({\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: VStackProps<T>) => {\n  return (\n    <Box\n      display=\"flex\"\n      flexDirection=\"column\"\n      {...getBaseHTMLProps(id, className, style, htmlProps, rest)}\n    />\n  );\n};\n\nVStack.displayName = 'VStack';\n","import { type ElementType } from 'react';\n\nimport {\n  type PolymorphicBaseComponentProps,\n  getBaseHTMLProps,\n} from '../../../../types';\nimport { Box } from '../../Box';\nimport { type ResponsiveStackProps } from '../../common';\n\nexport type HStackProps<T extends ElementType = 'div'> =\n  PolymorphicBaseComponentProps<T, ResponsiveStackProps>;\n\nexport const HStack = <T extends ElementType = 'div'>({\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: HStackProps<T>) => {\n  return (\n    <Box\n      display=\"flex\"\n      flexDirection=\"row\"\n      {...getBaseHTMLProps(id, className, style, htmlProps, rest)}\n    />\n  );\n};\n\nHStack.displayName = 'HStack';\n","import { type Property } from 'csstype';\nimport { type HTMLAttributes, useId } from 'react';\n\nimport styles from './Spinner.module.css';\nimport { useTranslation } from '../../i18n';\nimport { commonTexts } from '../../i18n/commonTexts';\nimport { type BaseComponentProps, getBaseHTMLProps } from '../../types';\nimport { type TextColor, cn, getTextColor } from '../../utils';\n\nexport type SpinnerProps = BaseComponentProps<\n  SVGElement,\n  {\n    /**Farge på spinneren.\n     * @default \"iconActionResting\"\n     */\n    color?: TextColor;\n    /**Størrelse; Setter høyde og bredde på spinneren.\n     * @default \"var(--dds-size-icon-medium)\"\n     */\n    size?: Property.Width;\n    /**Tekst som vises ved hover.\n     * @default \"Innlasting pågår\"\n     */\n    tooltip?: string;\n  },\n  Omit<HTMLAttributes<SVGSVGElement>, 'color'>\n>;\n\nexport function Spinner(props: SpinnerProps) {\n  const {\n    size = 'var(--dds-size-icon-medium)',\n    color = 'icon-action-resting',\n    tooltip,\n    id,\n    className,\n    htmlProps,\n    style,\n    ...rest\n  } = props;\n\n  const { t } = useTranslation();\n\n  const generatedId = useId();\n  const uniqueId = `${generatedId}-spinnerTitle`;\n\n  return (\n    <svg\n      viewBox=\"0 0 25 25\"\n      role=\"progressbar\"\n      aria-labelledby={uniqueId}\n      {...getBaseHTMLProps(\n        id,\n        cn(className, styles.svg),\n        {\n          ...style,\n          width: size,\n          height: size,\n        },\n        htmlProps,\n        rest,\n      )}\n    >\n      <title id={uniqueId}>{tooltip ?? t(commonTexts.loading)}</title>\n      <circle\n        cx=\"12\"\n        cy=\"12.25\"\n        r=\"6\"\n        fill={getTextColor(color)}\n        className={styles.jordskifterett}\n      />\n      <rect\n        x=\"4\"\n        y=\"10.25\"\n        width=\"16\"\n        height=\"4\"\n        fill={getTextColor(color)}\n        className={styles.lagmannsrett}\n      />\n      <path\n        d=\"M12 16.6154C16.4183 16.6154 20 12.7581 20 8H4C4 12.7581 7.58172 16.6154 12 16.6154Z\"\n        fill={getTextColor(color)}\n        className={styles.tingrett}\n      />\n    </svg>\n  );\n}\n\nSpinner.displayName = 'Spinner';\n",".svg {\n  display: block;\n}\n\n.jordskifterett,\n.lagmannsrett,\n.tingrett {\n  transform-origin: center;\n  transform-box: fill-box;\n  animation-duration: 3.4s;\n  animation-iteration-count: infinite;\n  animation-timing-function: ease-in-out;\n}\n\n.jordskifterett {\n  animation-name: jordskifterett;\n}\n\n.tingrett {\n  animation-name: tingrett;\n}\n\n.lagmannsrett {\n  animation-name: lagmannsrett;\n}\n\n@keyframes jordskifterett {\n  0% {\n    transform: scale(0.01);\n  }\n\n  16.66% {\n    transform: scale(1);\n  }\n\n  33.33% {\n    transform: scale(0.1);\n  }\n\n  50% {\n    transform: scale(0.01);\n  }\n\n  66.66% {\n    transform: scale(0.01);\n  }\n\n  83.33% {\n    transform: scale(0.01);\n  }\n\n  100% {\n    transform: scale(0.01);\n  }\n}\n\n@keyframes tingrett {\n  0% {\n    transform: scale(0.01);\n  }\n\n  16.66% {\n    transform: scale(0.01);\n  }\n\n  33.33% {\n    transform: scale(0.01);\n  }\n\n  50% {\n    transform: scale(1);\n  }\n\n  66.66% {\n    transform: scale(0.1);\n  }\n\n  83.33% {\n    transform: scale(0.01);\n  }\n\n  100% {\n    transform: scale(0.01);\n  }\n}\n\n@keyframes lagmannsrett {\n  0% {\n    transform: scale(0.01);\n  }\n\n  16.66% {\n    transform: scale(0.01);\n  }\n\n  33.33% {\n    transform: scale(0.01);\n  }\n\n  50% {\n    transform: scale(0.01);\n  }\n\n  66.66% {\n    transform: scale(0.01);\n  }\n\n  83.33% {\n    transform: scale(1);\n  }\n\n  100% {\n    transform: scale(0.1);\n  }\n}\n","import { type ReactNode, createContext, useContext } from 'react';\n\nimport { type Language } from './translation.types';\n\nexport interface LanguageContextProps {\n  language: Language;\n}\n\nexport const LanguageContext = createContext<LanguageContextProps | undefined>(\n  undefined,\n);\n\nexport interface LanguageProviderProps {\n  language: Language;\n  children?: ReactNode;\n}\n\nexport function LanguageProvider({\n  /**Språk på siden. */\n  language,\n  /**Selve applikasjonen. */\n  children,\n}: LanguageProviderProps) {\n  return <LanguageContext value={{ language }}>{children}</LanguageContext>;\n}\n\nexport function useLanguage() {\n  const lang = useContext(LanguageContext)?.language;\n\n  if (!lang) {\n    throw new Error('useLangage must be used within DdsProvider.');\n  }\n\n  return lang;\n}\n","import { useLanguage } from './LanguageProvider';\nimport { type TranslationObj, type Translations } from './translation.types';\n\nexport function useTranslation() {\n  const lang = useLanguage();\n  const t = (text: TranslationObj) => text[lang] as string;\n  return { t, lang };\n}\n\nexport function createTexts<T extends Translations>(texts: T) {\n  return texts;\n}\n","import { createTexts } from './translation';\n\nexport const commonTexts = createTexts({\n  clearSelect: {\n    no: 'Tøm nedtrekksliste',\n    nb: 'Tøm nedtrekksliste',\n    nn: 'Tøm nedtrekksliste',\n    en: 'Clear selection',\n    se: 'Gidde válljemiid',\n  },\n  close: {\n    nb: 'Lukk',\n    no: 'Lukk',\n    nn: 'Lukk',\n    en: 'Close',\n    se: 'Gidde',\n  },\n  closeMessage: {\n    nb: 'Lukk melding',\n    no: 'Lukk melding',\n    nn: 'Lukk melding',\n    en: 'Close message',\n    se: 'Gidde dieđu',\n  },\n  loading: {\n    nb: 'Innlastning pågår',\n    no: 'Innlastning pågår',\n    nn: 'Innlastning pågår',\n    en: 'Loading',\n    se: 'Viežžamin',\n  },\n  nextPage: {\n    nb: 'Neste side',\n    no: 'Neste side',\n    nn: 'Neste side',\n    en: 'Next page',\n    se: 'Boahte siidu',\n  },\n  previousPage: {\n    nb: 'Forrige side',\n    no: 'Forrige side',\n    nn: 'Førre side',\n    en: 'Previous page',\n    se: 'Ovddit siidu',\n  },\n  page: page => ({\n    nb: `Side ${page}`,\n    no: `Side ${page}`,\n    nn: `Side ${page}`,\n    en: `Page ${page}`,\n    se: `Siidu ${page}`,\n  }),\n  currentPage: page => ({\n    nb: `Nåværende side (${page})`,\n    no: `Nåværende side (${page})`,\n    nn: `Noverande side (${page})`,\n    en: `Current page (${page})`,\n    se: `Dála siidu (${page})`,\n  }),\n  pageOf: (current, max) => ({\n    nb: `Side ${current} av ${max}`,\n    no: `Side ${current} av ${max}`,\n    nn: `Side ${current} ${max}`,\n    en: `Page ${current} of ${max}`,\n    se: `Siidu ${current} ${max}`,\n  }),\n});\n",".focused,\n.focusable:focus-visible,\n.focusable-focus:focus,\n.focusable-within:focus-within,\n.has-focusable-input:has(input:focus-visible),\n.focusable-sibling:focus-visible + .focus-styled-sibling {\n  outline: var(--dds-focus-outline);\n  outline-offset: var(--dds-focus-outline-offset);\n  box-shadow: var(--dds-focus-box-shadow);\n}\n\n.focusable--inset:focus-visible {\n  outline: var(--dds-focus-outline);\n  outline-offset: var(--dds-focus-outline-inset);\n  box-shadow: var(--dds-focus-box-shadow);\n}\n","import { type ComponentPropsWithRef, type MouseEventHandler } from 'react';\n\nimport styles from './DropdownItem.module.css';\nimport { cn } from '../../../utils';\nimport { type ButtonProps } from '../../Button';\nimport { Icon, type SvgIcon } from '../../Icon';\nimport { Box } from '../../layout';\nimport { Spinner } from '../../Spinner';\nimport { type Toggle } from '../../Toggle';\nimport typographyStyles from '../../Typography/typographyStyles.module.css';\nimport {\n  type StylelessButton,\n  type StylelessButtonProps,\n} from '../StylelessButton';\nimport focusStyles from '../styling/focus.module.css';\nimport utilStyles from '../styling/utilStyles.module.css';\n\ntype DropdownItemT = 'span' | 'a' | typeof StylelessButton | typeof Toggle;\n\nexport type DropdownItemButtonProps = {\n  /**Asynkron `onClick` event; håndterer loading status, slik at menyen ikke lukker seg under loading. */\n  onClickAsync?: MouseEventHandler<HTMLButtonElement>;\n  /**Egen styring av når menyen skal lukkes ved klikk på knapp i menyen. Bruker intern logikk som default. Støtter i tillegg egen funksjon og ingen lukking (`false`).\n   * @default true\n   */\n  closeMenuOnClickAsync?: boolean | ((close: () => void) => void);\n} & Pick<ButtonProps, 'loading' | 'loadingTooltip'>;\n\nexport interface DropdownItemCustomProps<T extends DropdownItemT = 'span'> {\n  as?: T;\n  /**Ikon som vises ved teksten. **OBS!** Settes i tillegg til `children` for riktig layout. */\n  icon?: SvgIcon;\n  /**Bestemmer farger basert på formål.\n   * @default \"default\"\n   */\n  purpose?: 'default' | 'danger';\n}\n\nexport type DropdownItemProps<T extends DropdownItemT = 'span'> =\n  DropdownItemCustomProps<T> &\n    DropdownItemButtonProps &\n    (T extends typeof StylelessButton\n      ? StylelessButtonProps\n      : ComponentPropsWithRef<T>);\n\nexport const DropdownItem = <T extends DropdownItemT = 'span'>({\n  icon,\n  className,\n  children: propChildren,\n  purpose = 'default',\n  loading,\n  loadingTooltip,\n  ...rest\n}: DropdownItemProps<T>) => {\n  const itemCns = [\n    styles.item,\n    styles[purpose],\n    typographyStyles['body-short-medium'],\n  ];\n\n  const interactiveItemCns = [\n    ...itemCns,\n    focusStyles['focusable--inset'],\n    styles['item--interactive'],\n  ];\n\n  const children = loading ? (\n    <span className={cn(loading && utilStyles.invisible)}>{propChildren}</span>\n  ) : (\n    propChildren\n  );\n\n  const cns = rest.as === 'span' ? itemCns : interactiveItemCns;\n  return (\n    <Box\n      display=\"flex\"\n      alignItems=\"center\"\n      padding=\"x0.75\"\n      gap=\"x0.25\"\n      width=\"100%\"\n      className={cn(className, ...cns, loading && styles['item--loading'])}\n      aria-disabled={loading ? true : undefined}\n      {...rest}\n    >\n      {loading && (\n        <span className={cn(utilStyles['center-absolute'])}>\n          <Spinner\n            size=\"var(--dds-size-icon-medium)\"\n            tooltip={loadingTooltip}\n          />\n        </span>\n      )}\n      {icon && (\n        <Icon\n          iconSize=\"inherit\"\n          icon={icon}\n          className={cn(loading && utilStyles.invisible)}\n        />\n      )}\n      {children}\n    </Box>\n  );\n};\n","import { type ComponentPropsWithRef } from 'react';\n\nimport { cn } from '../../../utils';\nimport { Box } from '../../layout';\nimport typographyStyles from '../../Typography/typographyStyles.module.css';\n\ntype DropdownHeaderProps = ComponentPropsWithRef<'h2'>;\n\nexport const DropdownHeader = ({ className, ...rest }: DropdownHeaderProps) => {\n  return (\n    <Box\n      as=\"h2\"\n      padding=\"x0.75 x0.75 0 x0.75\"\n      {...rest}\n      className={cn(className, typographyStyles['heading-xsmall'])}\n    />\n  );\n};\n","import { type ComponentPropsWithRef } from 'react';\n\nimport { cn } from '../../../utils';\nimport utilStyles from '../styling/utilStyles.module.css';\n\n/**\n * Usynlig `<input>` til bruk for skjermlesere, typisk for custom radioknapper o.l..\n *\n * @component\n * @param {Object} props - Standard HTML-attributter for komponenten.\n *\n * @returns {JSX.Element} Et usynlig `<input>`-element.\n\n * @example\n * ```tsx\n * <label htmlFor=\"id\">\n *  <HiddenInput id=\"id\" />\n *  //visuell erstatning for input\n * </label>\n * });\n * ```\n */\n\nexport const HiddenInput = ({\n  className,\n  ...rest\n}: ComponentPropsWithRef<'input'>) => (\n  <input className={cn(className, utilStyles['hide-input'])} {...rest} />\n);\n","import { type ComponentPropsWithRef } from 'react';\n\nimport { cn } from '../../../utils';\nimport utilStyles from '../styling/utilStyles.module.css';\n\nexport type StylelessButtonProps<TProps extends object = object> = TProps &\n  ComponentPropsWithRef<'button'>;\n\n/**\n * Normalisert `<button>` uten styling. Base for custom buttom styling.\n *\n * @component\n * @template T ekstra props ved behov.\n * @param {Object & T} props - Standard HTML-attributter for komponenten med mulig utvidelse.\n *\n * @returns {JSX.Element} `<button>`-element uten styling.\n\n * @example\n * ```tsx\n *  <StylelessButton className=\"min-styling\">\n *    Tekst\n *  </StylelessButton>\n * ```\n */\n\nexport const StylelessButton = ({\n  className,\n  ...rest\n}: StylelessButtonProps) => (\n  <button\n    {...rest}\n    className={cn(\n      className,\n      utilStyles['remove-button-styling'],\n      utilStyles['normalize-button'],\n    )}\n  />\n);\n","import { type ComponentPropsWithRef } from 'react';\n\nimport { cn } from '../../../utils';\nimport utilStyles from '../../helpers/styling/utilStyles.module.css';\n\nexport type StylelessListProps<TProps extends object = object> = TProps &\n  ComponentPropsWithRef<'ul'>;\n\n/**\n * Normalisert `<ul>` uten styling. Base for custom ul styling.\n *\n * @component\n * @template T ekstra props ved behov.\n * @param {Object & T} props - Standard HTML-attributter for komponenten med mulig utvidelse.\n *\n * @returns {JSX.Element} `<ul>`-element uten styling.\n\n * @example\n * ```tsx\n *  <StylelessList className=\"min-styling\">\n *    <li>item</li>\n *    <li>item</li>\n *  </StylelessList>\n * ```\n */\n\nexport const StylelessList = ({ className, ...rest }: StylelessListProps) => (\n  <ul {...rest} className={cn(className, utilStyles['remove-list-styling'])} />\n);\n\nexport type StylelessOListProps<TProps extends object = object> = TProps &\n  ComponentPropsWithRef<'ol'>;\n\n/**\n * Normalisert `<ol>` uten styling. Base for custom ol styling.\n *\n * @component\n * @template T ekstra props ved behov.\n * @param {Object & T} props - Standard HTML-attributter for komponenten med mulig utvidelse.\n *\n * @returns {JSX.Element} `<ol>`-element uten styling.\n\n * @example\n * ```tsx\n *  <StylelessOList className=\"min-styling\">\n *    <li>item</li>\n *    <li>item</li>\n *  </StylelessOList>\n * ```\n */\n\nexport const StylelessOList = ({ className, ...rest }: StylelessOListProps) => (\n  <ol {...rest} className={cn(className, utilStyles['remove-list-styling'])} />\n);\n","import { type Property } from 'csstype';\n\n/**\n * Styling utils i TS (CSS-in-JS)\n */\n\n/**\n * DDS utils\n */\n\nexport const outlineOffset = 'var(--dds-spacing-x0-125)';\nexport const outlineInset = 'calc(var(--dds-spacing-x0-125) * -1)';\n\nexport const focusVisible = {\n  outline: 'var(--dds-color-focus-outside) 2px solid',\n  outlineOffset: outlineOffset,\n  boxShadow: '0 0 0 2px var(--dds-color-focus-inside)',\n};\n\nexport const focusVisibleTransitionValue =\n  'outline-offset var(--dds-motion-micro-state)';\n\nexport const focusVisibleInset = {\n  outline: 'var(--dds-color-focus-outside) 2px solid',\n  outlineOffset: outlineInset,\n};\n\nconst scrollbarWidth: Property.ScrollbarWidth = 'thin';\n\nexport const scrollbarStyling = {\n  scrollbarColor: 'var(--dds-color-surface-scrollbar) transparent',\n  scrollbarWidth: scrollbarWidth,\n};\n\n/**\n * Generelle utils\n */\n\nexport const hideInput = {\n  clip: 'rect(0 0 0 0)',\n  position: 'absolute',\n  height: '1px',\n  width: '1px',\n  margin: 0,\n};\n\nexport const inheritLinkStyling = {\n  color: 'inherit',\n  textDecoration: 'inherit',\n};\n\nexport const removeButtonStyling = {\n  background: 'none',\n  color: 'inherit',\n  border: 'none',\n  padding: 0,\n  font: 'inherit',\n  cursor: 'pointer',\n  outline: 'inherit',\n};\n\nexport const removeListStyling = {\n  listStyle: 'none',\n  padding: 0,\n  margin: 0,\n};\n\nexport const normalizeButton = {\n  margin: 0,\n  textTransform: 'none' as Property.TextTransform,\n};\n","export * from './addressShielded';\nexport * from './agreement';\nexport * from './apps';\nexport * from './archive';\nexport * from './arrowDown';\nexport * from './arrowLeft';\nexport * from './arrowRight';\nexport * from './arrowUp';\nexport * from './attachment';\nexport * from './block';\nexport * from './book';\nexport * from './briefcase';\nexport * from './build';\nexport * from './building';\nexport * from './calendar';\nexport * from './calendarMonth';\nexport * from './calendarViewDay';\nexport * from './calendarViewMonth';\nexport * from './calendarViewWeek';\nexport * from './call';\nexport * from './caring';\nexport * from './chat';\nexport * from './check';\nexport * from './checkCircled';\nexport * from './checklist';\nexport * from './chevronDown';\nexport * from './chevronFirst';\nexport * from './chevronLast';\nexport * from './chevronLeft';\nexport * from './chevronRight';\nexport * from './chevronUp';\nexport * from './circle';\nexport * from './circleFilled';\nexport * from './close';\nexport * from './closeSmall';\nexport * from './closeCircled';\nexport * from './cloud';\nexport * from './collapse';\nexport * from './comment';\nexport * from './copy';\nexport * from './court';\nexport * from './dateRange';\nexport * from './deaths';\nexport * from './doubleChevronLeft';\nexport * from './doubleChevronRight';\nexport * from './download';\nexport * from './downloadDone';\nexport * from './dragHandle';\nexport * from './edit';\nexport * from './editAlt';\nexport * from './error';\nexport * from './exclaim';\nexport * from './expand';\nexport * from './facebook';\nexport * from './family';\nexport * from './feedback';\nexport * from './file';\nexport * from './fileAdd';\nexport * from './fileShielded';\nexport * from './fileSigned';\nexport * from './fileText';\nexport * from './filter';\nexport * from './filterList';\nexport * from './findInPage';\nexport * from './flickr';\nexport * from './floppyDisk';\nexport * from './folder';\nexport * from './folderAdd';\nexport * from './folderShielded';\nexport * from './fullscreenExit';\nexport * from './fullscreen';\nexport * from './gavel';\nexport * from './group';\nexport * from './guardian';\nexport * from './help';\nexport * from './helpFilled';\nexport * from './home';\nexport * from './hourglassEmpty';\nexport * from './image';\nexport * from './info';\nexport * from './instagram';\nexport * from './jordskifterett';\nexport * from './jordskiftesak';\nexport * from './key';\nexport * from './lagmannsrett';\nexport * from './language';\nexport * from './link';\nexport * from './linkedIn';\nexport * from './linkOff';\nexport * from './list';\nexport * from './listAlt';\nexport * from './location';\nexport * from './lock';\nexport * from './lockFilled';\nexport * from './lockOpen';\nexport * from './login';\nexport * from './logout';\nexport * from './mail';\nexport * from './mailOpen';\nexport * from './menu';\nexport * from './minus';\nexport * from './minusCircled';\nexport * from './moreHorizontal';\nexport * from './moreVertical';\nexport * from './notarial';\nexport * from './notifications';\nexport * from './notificationsOff';\nexport * from './onlineMeeting';\nexport * from './openExternal';\nexport * from './panelLeft';\nexport * from './paperPlane';\nexport * from './payout';\nexport * from './pdf';\nexport * from './person';\nexport * from './personAdd';\nexport * from './personShielded';\nexport * from './pin';\nexport * from './plus';\nexport * from './plusCircled';\nexport * from './powerOfAttorney';\nexport * from './print';\nexport * from './publish';\nexport * from './questionAnswer';\nexport * from './receipt';\nexport * from './redo';\nexport * from './rows';\nexport * from './refresh';\nexport * from './replay';\nexport * from './scale';\nexport * from './search';\nexport * from './section';\nexport * from './settings';\nexport * from './sms';\nexport * from './star';\nexport * from './starFilled';\nexport * from './starHalfFilled';\nexport * from './sync';\nexport * from './thumbdown';\nexport * from './thumbdownFilled';\nexport * from './thumbup';\nexport * from './thumbupFilled';\nexport * from './time';\nexport * from './tingrett';\nexport * from './tip';\nexport * from './trash';\nexport * from './undo';\nexport * from './unfoldLess';\nexport * from './unfoldMore';\nexport * from './upload';\nexport * from './visibilityOff';\nexport * from './visibilityOn';\nexport * from './warning';\nexport * from './webex';\nexport * from './x';\nexport * from './zoomIn';\nexport * from './zoomOut';\nexport * from './barChart';\nexport * from './barChartBoxed';\nexport * from './lineChart';\nexport * from './trendingUp';\nexport * from './trendingDown';\nexport * from './helpSimple';\nexport * from './animated';\nexport * from './flag';\nexport * from './flagFilled';\nexport * from './locationOff';\nexport * from './map';\nexport * from './moon';\nexport * from './notebookPen';\nexport * from './stickyNote';\nexport * from './sun';\nexport * from './support';\n",".svg {\n  display: inline-block;\n  transition: fill var(--dds-motion-micro-state);\n  flex-shrink: 0;\n}\n","import { cn, getIconColor } from '../../../utils';\nimport styles from '../Icon.module.css';\nimport { type SvgProps } from './types';\n\nconst size = 24;\nconst sizeCSS = 'var(--dds-size-icon-medium)';\n\nexport function SvgWrapper({\n  height,\n  width,\n  fill = 'currentColor',\n  className,\n  title,\n  children,\n  // destructure for å unngå at `iconState` blir sendt videre til svg-elementet som ugyldig custom attribute.\n  // eslint-disable-next-line @typescript-eslint/no-unused-vars\n  iconState: _iconState,\n  style,\n  ...props\n}: SvgProps & { iconState?: string }) {\n  return (\n    <svg\n      {...props}\n      fill={getIconColor(fill)}\n      xmlns=\"http://www.w3.org/2000/svg\"\n      viewBox={`0 0 ${size} ${size}`}\n      className={cn(className, styles.svg)}\n      style={{\n        ...style,\n        height: height ? height : sizeCSS,\n        width: width ? width : sizeCSS,\n      }}\n    >\n      {title && <title>{title}</title>}\n      {children}\n    </svg>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function AddressShieldedIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M16.75 17V15C16.75 14.6685 16.8818 14.3506 17.1162 14.1162C17.3506 13.8818 17.6685 13.75 18 13.75C18.3315 13.75 18.6494 13.8818 18.8838 14.1162C19.1182 14.3506 19.25 14.6685 19.25 15V17C19.25 17.4142 19.5858 17.75 20 17.75C20.4142 17.75 20.75 17.4142 20.75 17V15C20.75 14.2707 20.4601 13.5714 19.9443 13.0557C19.4286 12.5399 18.7293 12.25 18 12.25C17.2707 12.25 16.5714 12.5399 16.0557 13.0557C15.5399 13.5714 15.25 14.2707 15.25 15V17C15.25 17.4142 15.5858 17.75 16 17.75C16.4142 17.75 16.75 17.4142 16.75 17Z\" />\n      <path d=\"M14.75 18C14.75 17.8619 14.8619 17.75 15 17.75H21C21.1381 17.75 21.25 17.8619 21.25 18V21C21.25 21.1381 21.1381 21.25 21 21.25H15C14.8619 21.25 14.75 21.1381 14.75 21V18ZM13.25 21C13.25 21.9665 14.0335 22.75 15 22.75H21C21.9665 22.75 22.75 21.9665 22.75 21V18C22.75 17.0335 21.9665 16.25 21 16.25H15C14.0335 16.25 13.25 17.0335 13.25 18V21Z\" />\n      <path d=\"M2.25 18.9995V9.99951C2.25 9.59973 2.33759 9.20494 2.50586 8.84229C2.67423 8.47943 2.9191 8.15714 3.22461 7.89893L10.2207 1.90283L10.2246 1.89893C10.721 1.47943 11.3501 1.24951 12 1.24951C12.5686 1.24951 13.1213 1.42547 13.583 1.75049L13.7754 1.89893L13.7793 1.90283L20.7744 7.89893C21.0799 8.15715 21.3258 8.47941 21.4941 8.84229C21.6625 9.20514 21.7501 9.60048 21.75 10.0005C21.7497 10.4145 21.414 10.7495 21 10.7495C20.5858 10.7494 20.2499 10.4137 20.25 9.99951C20.25 9.81778 20.2103 9.63799 20.1338 9.47314C20.0573 9.3083 19.9455 9.16175 19.8066 9.04443L19.8027 9.0415L12.8027 3.0415C12.5778 2.85324 12.2934 2.74951 12 2.74951C11.7063 2.74951 11.4213 2.85196 11.1963 3.04053L4.19727 9.0415L4.19336 9.04443C4.05455 9.16175 3.94274 9.3083 3.86621 9.47314C3.78972 9.638 3.75 9.81778 3.75 9.99951V18.9995C3.75 19.331 3.88179 19.6499 4.11621 19.8843C4.35061 20.1185 4.6686 20.2495 5 20.2495L10 20.2505C10.4142 20.2505 10.75 20.5863 10.75 21.0005C10.7497 21.4145 10.4141 21.7495 10 21.7495H5C4.27077 21.7495 3.57136 21.4604 3.05566 20.9448C2.53994 20.4291 2.25 19.7289 2.25 18.9995Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function AgreementIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M10.4697 16.4697C10.7626 16.1768 11.2374 16.1768 11.5303 16.4697L13.5303 18.4697C13.6576 18.597 13.8092 18.6976 13.9756 18.7665C14.1419 18.8354 14.32 18.871 14.5 18.871C14.68 18.871 14.8581 18.8354 15.0244 18.7665C15.1908 18.6976 15.3424 18.597 15.4697 18.4697C15.5971 18.3423 15.6977 18.1907 15.7666 18.0244C15.8355 17.858 15.8711 17.68 15.8711 17.4999C15.8711 17.3199 15.8355 17.1419 15.7666 16.9755C15.6977 16.8092 15.5971 16.6576 15.4697 16.5302C15.1768 16.2373 15.1768 15.7626 15.4697 15.4697C15.7626 15.1768 16.2374 15.1768 16.5303 15.4697C16.7969 15.7363 17.008 16.0529 17.1523 16.4013C17.2966 16.7497 17.3711 17.1229 17.3711 17.4999C17.3711 17.877 17.2966 18.2502 17.1523 18.5986C17.008 18.9469 16.7969 19.2636 16.5303 19.5302C16.2637 19.7968 15.947 20.008 15.5986 20.1523C15.2503 20.2966 14.8771 20.371 14.5 20.371C14.1229 20.371 13.7497 20.2966 13.4014 20.1523C13.053 20.008 12.7364 19.7968 12.4697 19.5302L10.4697 17.5302C10.1768 17.2373 10.1768 16.7626 10.4697 16.4697Z\" />\n      <path d=\"M13.4695 13.4692C13.7623 13.1765 14.2372 13.1767 14.53 13.4692L17.03 15.9692C17.2872 16.2263 17.6362 16.3715 17.9998 16.3715C18.3635 16.3715 18.7123 16.2263 18.9695 15.9692C19.2265 15.7121 19.3707 15.3639 19.3709 15.0004C19.3709 14.6368 19.2266 14.2879 18.9695 14.0307L15.0896 10.1498C14.6677 9.72854 14.096 9.49261 13.4998 9.49261C12.9036 9.49267 12.3317 9.72952 11.9099 10.1508L11.909 10.1498L11.03 11.0307C10.4916 11.569 9.76113 11.8715 8.99977 11.8715C8.23839 11.8715 7.50791 11.569 6.9695 11.0307C6.43113 10.4923 6.1288 9.76177 6.12868 9.00042C6.12868 8.2389 6.43102 7.50765 6.9695 6.96917L9.78004 4.1596C10.8105 3.13189 12.155 2.47627 13.5994 2.29828C15.0428 2.12051 16.5042 2.42939 17.7527 3.17523L18.2234 3.4555L18.2273 3.45746C18.4934 3.61807 18.81 3.67378 19.115 3.61371L20.8523 3.26507C21.2583 3.18348 21.6534 3.446 21.7351 3.85199C21.8168 4.25794 21.5541 4.65295 21.1482 4.7348L19.408 5.08538H19.405C18.7351 5.21734 18.0407 5.09471 17.4558 4.74261V4.74456L16.9861 4.46429L16.9851 4.46331C16.0226 3.88786 14.895 3.65037 13.782 3.78753C12.669 3.92477 11.6336 4.42922 10.8396 5.22113L8.03004 8.0307C7.77309 8.28784 7.62868 8.63689 7.62868 9.00042C7.6288 9.36378 7.77321 9.71215 8.03004 9.96917C8.28716 10.2263 8.63616 10.3715 8.99977 10.3715C9.36347 10.3715 9.71233 10.2263 9.9695 9.96917L10.8494 9.08929C11.5524 8.3872 12.5062 7.99267 13.4998 7.99261C14.4315 7.99261 15.3277 8.33932 16.0154 8.96136L16.1502 9.08929L20.03 12.9692C20.5685 13.5077 20.8709 14.2389 20.8709 15.0004C20.8707 15.7618 20.5684 16.4923 20.03 17.0307C19.4916 17.569 18.7611 17.8715 17.9998 17.8715C17.2384 17.8715 16.5079 17.569 15.9695 17.0307L13.4695 14.5307C13.1766 14.2378 13.1766 13.7621 13.4695 13.4692Z\" />\n      <path d=\"M20.9316 2.25288C21.344 2.2154 21.7094 2.51931 21.7471 2.93159L22.7471 13.9316C22.7661 14.1414 22.6958 14.3502 22.5537 14.5058C22.4116 14.6613 22.2107 14.75 22 14.75H20C19.5858 14.75 19.25 14.4142 19.25 14C19.25 13.5857 19.5858 13.25 20 13.25H21.1787L20.2529 3.06831C20.2154 2.65595 20.5194 2.2906 20.9316 2.25288Z\" />\n      <path d=\"M3.06835 2.25288C3.48064 2.2906 3.78455 2.65595 3.74707 3.06831L2.77832 13.7177L9.03027 19.9697C9.28744 20.2269 9.6363 20.371 10 20.371C10.3637 20.371 10.7125 20.2269 10.9697 19.9697C11.2269 19.7125 11.3711 19.3636 11.3711 19C11.3711 18.6363 11.2269 18.2874 10.9697 18.0302C10.6768 17.7373 10.6768 17.2626 10.9697 16.9697C11.2626 16.6768 11.7374 16.6768 12.0303 16.9697C12.5687 17.5082 12.8711 18.2384 12.8711 19C12.8711 19.7615 12.5687 20.4917 12.0303 21.0302C11.4918 21.5687 10.7615 21.871 10 21.871C9.23847 21.871 8.5082 21.5687 7.96972 21.0302L1.46972 14.5302C1.31233 14.3728 1.23277 14.1533 1.25292 13.9316L2.25293 2.93159C2.29065 2.51931 2.65599 2.2154 3.06835 2.25288Z\" />\n      <path d=\"M11 3.25C11.4142 3.25 11.75 3.58579 11.75 4C11.75 4.41421 11.4142 4.75 11 4.75H3C2.58579 4.75 2.25 4.41421 2.25 4C2.25 3.58579 2.58579 3.25 3 3.25H11Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function AppsIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M4.25 5C4.25 4.58579 4.58579 4.25 5 4.25H6.5C6.91421 4.25 7.25 4.58579 7.25 5V6.5C7.25 6.91421 6.91421 7.25 6.5 7.25H5C4.58579 7.25 4.25 6.91421 4.25 6.5V5ZM4.25 11.25C4.25 10.8358 4.58579 10.5 5 10.5H6.5C6.91421 10.5 7.25 10.8358 7.25 11.25V12.75C7.25 13.1642 6.91421 13.5 6.5 13.5H5C4.58579 13.5 4.25 13.1642 4.25 12.75V11.25ZM5 16.75C4.58579 16.75 4.25 17.0858 4.25 17.5V19C4.25 19.4142 4.58579 19.75 5 19.75H6.5C6.91421 19.75 7.25 19.4142 7.25 19V17.5C7.25 17.0858 6.91421 16.75 6.5 16.75H5ZM10.5 5C10.5 4.58579 10.8358 4.25 11.25 4.25H12.75C13.1642 4.25 13.5 4.58579 13.5 5V6.5C13.5 6.91421 13.1642 7.25 12.75 7.25H11.25C10.8358 7.25 10.5 6.91421 10.5 6.5V5ZM11.25 10.5C10.8358 10.5 10.5 10.8358 10.5 11.25V12.75C10.5 13.1642 10.8358 13.5 11.25 13.5H12.75C13.1642 13.5 13.5 13.1642 13.5 12.75V11.25C13.5 10.8358 13.1642 10.5 12.75 10.5H11.25ZM10.5 17.5C10.5 17.0858 10.8358 16.75 11.25 16.75H12.75C13.1642 16.75 13.5 17.0858 13.5 17.5V19C13.5 19.4142 13.1642 19.75 12.75 19.75H11.25C10.8358 19.75 10.5 19.4142 10.5 19V17.5ZM17.5 4.25C17.0858 4.25 16.75 4.58579 16.75 5V6.5C16.75 6.91421 17.0858 7.25 17.5 7.25H19C19.4142 7.25 19.75 6.91421 19.75 6.5V5C19.75 4.58579 19.4142 4.25 19 4.25H17.5ZM16.75 11.25C16.75 10.8358 17.0858 10.5 17.5 10.5H19C19.4142 10.5 19.75 10.8358 19.75 11.25V12.75C19.75 13.1642 19.4142 13.5 19 13.5H17.5C17.0858 13.5 16.75 13.1642 16.75 12.75V11.25ZM17.5 16.75C17.0858 16.75 16.75 17.0858 16.75 17.5V19C16.75 19.4142 17.0858 19.75 17.5 19.75H19C19.4142 19.75 19.75 19.4142 19.75 19V17.5C19.75 17.0858 19.4142 16.75 19 16.75H17.5Z\"\n      />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ArchiveIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19.25 8.75H4.75V19L4.75586 19.124C4.78436 19.41 4.9112 19.6788 5.11621 19.8838C5.35063 20.1182 5.66848 20.25 6 20.25H18C18.3315 20.25 18.6494 20.1182 18.8838 19.8838C19.1182 19.6494 19.25 19.3315 19.25 19V8.75ZM14 11.25C14.4142 11.25 14.75 11.5858 14.75 12C14.75 12.4142 14.4142 12.75 14 12.75H10C9.58579 12.75 9.25 12.4142 9.25 12C9.25 11.5858 9.58579 11.25 10 11.25H14ZM21.25 4C21.25 3.86193 21.1381 3.75 21 3.75H3C2.86193 3.75 2.75 3.86193 2.75 4V7C2.75 7.13807 2.86193 7.25 3 7.25H21C21.1381 7.25 21.25 7.13807 21.25 7V4ZM22.75 7C22.75 7.9665 21.9665 8.75 21 8.75H20.75V19C20.75 19.7293 20.4601 20.4286 19.9443 20.9443C19.4286 21.4601 18.7293 21.75 18 21.75H6C5.27065 21.75 4.57139 21.4601 4.05566 20.9443C3.53994 20.4286 3.25 19.7293 3.25 19V8.75H3C2.0335 8.75 1.25 7.9665 1.25 7V4C1.25 3.0335 2.0335 2.25 3 2.25H21C21.9665 2.25 22.75 3.0335 22.75 4V7Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ArrowDownIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M11.25 5C11.25 4.58579 11.5858 4.25 12 4.25C12.4142 4.25 12.75 4.58579 12.75 5V17.1895L18.4697 11.4697C18.7626 11.1768 19.2374 11.1768 19.5303 11.4697C19.8232 11.7626 19.8232 12.2374 19.5303 12.5303L12.5303 19.5303C12.2374 19.8232 11.7626 19.8232 11.4697 19.5303L4.46973 12.5303C4.17684 12.2374 4.17684 11.7626 4.46973 11.4697C4.76262 11.1768 5.23738 11.1768 5.53028 11.4697L11.25 17.1895V5Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ArrowLeftIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M11.4697 4.46967C11.7626 4.17678 12.2374 4.17678 12.5303 4.46967C12.8232 4.76256 12.8232 5.23732 12.5303 5.53022L6.81055 11.2499H19C19.4142 11.2499 19.75 11.5857 19.75 11.9999C19.75 12.4142 19.4142 12.7499 19 12.7499H6.81055L12.5303 18.4697C12.8232 18.7626 12.8232 19.2373 12.5303 19.5302C12.2374 19.8231 11.7626 19.8231 11.4697 19.5302L4.46973 12.5302C4.17684 12.2373 4.17684 11.7626 4.46973 11.4697L11.4697 4.46967Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ArrowRightIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M11.4697 4.46967C11.7626 4.17678 12.2374 4.17678 12.5303 4.46967L19.5303 11.4697C19.8232 11.7626 19.8232 12.2373 19.5303 12.5302L12.5303 19.5302C12.2374 19.8231 11.7626 19.8231 11.4697 19.5302C11.1768 19.2373 11.1768 18.7626 11.4697 18.4697L17.1895 12.7499H5C4.58579 12.7499 4.25 12.4142 4.25 11.9999C4.25 11.5857 4.58579 11.2499 5 11.2499H17.1895L11.4697 5.53022C11.1768 5.23732 11.1768 4.76256 11.4697 4.46967Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ArrowUpIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M11.25 19V6.81054L5.53028 12.5303C5.23738 12.8232 4.76262 12.8232 4.46973 12.5303C4.17684 12.2374 4.17684 11.7626 4.46973 11.4697L11.4697 4.46972L11.5264 4.41796C11.821 4.17765 12.2557 4.19512 12.5303 4.46972L19.5303 11.4697C19.8232 11.7626 19.8232 12.2374 19.5303 12.5303C19.2374 12.8232 18.7626 12.8232 18.4697 12.5303L12.75 6.81054V19C12.75 19.4142 12.4142 19.75 12 19.75C11.5858 19.75 11.25 19.4142 11.25 19Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function AttachmentIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19.251 6.00049C19.2509 5.13863 18.9082 4.31211 18.2988 3.70264C17.6894 3.09323 16.8628 2.75061 16.001 2.75049C15.139 2.75049 14.3117 3.09312 13.7021 3.70264L5.32909 12.2476L5.31933 12.2573C4.82532 12.7433 4.4322 13.3228 4.16308 13.9614C3.89396 14.6001 3.75379 15.286 3.75097 15.979C3.74818 16.672 3.8826 17.3588 4.14648 17.9995C4.41039 18.6403 4.79904 19.2224 5.28906 19.7124C5.77907 20.2024 6.3612 20.5911 7.00195 20.855C7.64268 21.1188 8.32953 21.2533 9.02245 21.2505C9.71545 21.2477 10.4014 21.1075 11.04 20.8384C11.6785 20.5693 12.2572 20.176 12.7432 19.6821L21.1211 11.1323C21.411 10.8365 21.8858 10.8317 22.1816 11.1216C22.4775 11.4115 22.4823 11.8863 22.1924 12.1821L13.8135 20.7329L13.8125 20.7339C13.1876 21.3691 12.4432 21.8742 11.6221 22.2202C10.8009 22.5662 9.91935 22.7469 9.02831 22.7505C8.13737 22.7541 7.25449 22.581 6.43066 22.2417C5.60674 21.9024 4.8576 21.403 4.22753 20.7729C3.59769 20.143 3.09901 19.3945 2.75976 18.5708C2.42051 17.747 2.24741 16.864 2.25097 15.9731C2.2546 15.0823 2.43439 14.2004 2.78027 13.3794C3.12628 12.5583 3.63142 11.8129 4.26659 11.188L12.6367 2.64697L12.6416 2.64209C13.5324 1.75127 14.7412 1.25049 16.001 1.25049C17.2606 1.25061 18.4687 1.75138 19.3594 2.64209C20.2501 3.53287 20.7509 4.7408 20.751 6.00049C20.751 7.26029 20.2502 8.46905 19.3594 9.35986L19.3584 9.35889L10.9512 17.9399L10.9453 17.9458C10.4296 18.4614 9.73016 18.7513 9.00097 18.7515C8.2716 18.7515 7.57144 18.4615 7.05566 17.9458C6.53986 17.43 6.24999 16.7299 6.24999 16.0005C6.25002 15.2712 6.54001 14.5719 7.05566 14.0562L15.4648 5.4751C15.7548 5.17952 16.2296 5.17453 16.5254 5.46436C16.8209 5.75419 16.8257 6.2291 16.5361 6.5249L8.12206 15.1108L8.1162 15.1167C7.88186 15.3512 7.75002 15.669 7.74999 16.0005C7.74999 16.332 7.88191 16.6498 8.1162 16.8843C8.3507 17.1188 8.66934 17.2515 9.00097 17.2515C9.33244 17.2513 9.65037 17.1187 9.88476 16.8843L18.293 8.3042L18.2988 8.29834C18.9082 7.68885 19.251 6.86234 19.251 6.00049Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function BlockIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 12C21.25 6.89137 17.1086 2.75 12 2.75C9.71568 2.75 7.62547 3.57888 6.01172 4.95117L19.0469 17.9873C20.4194 16.3735 21.25 14.2845 21.25 12ZM2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C14.284 21.25 16.3727 20.4198 17.9863 19.0479L4.95117 6.01172C3.57888 7.62547 2.75 9.71568 2.75 12ZM22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12C1.25 6.06294 6.06294 1.25 12 1.25C17.9371 1.25 22.75 6.06294 22.75 12Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function BookIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 4C21.25 3.93369 21.2236 3.87013 21.1768 3.82324C21.1299 3.77636 21.0663 3.75 21 3.75H16C15.138 3.75 14.3116 4.09266 13.7021 4.70215C13.0927 5.31164 12.75 6.13805 12.75 7V18C13.3953 17.516 14.1839 17.25 15 17.25H21C21.0663 17.25 21.1299 17.2236 21.1768 17.1768C21.2236 17.1299 21.25 17.0663 21.25 17V4ZM2.75 17L2.75488 17.0488C2.76447 17.0969 2.78804 17.1416 2.82324 17.1768C2.87013 17.2236 2.93369 17.25 3 17.25H9C9.81607 17.25 10.6047 17.516 11.25 18V7C11.25 6.13805 10.9073 5.31164 10.2979 4.70215C9.68836 4.09266 8.86195 3.75 8 3.75H3C2.9337 3.75 2.87013 3.77636 2.82324 3.82324C2.77636 3.87013 2.75 3.9337 2.75 4V17ZM22.75 17C22.75 17.4641 22.5655 17.9091 22.2373 18.2373C21.9091 18.5655 21.4641 18.75 21 18.75H15C14.4033 18.75 13.8311 18.9872 13.4092 19.4092C12.9872 19.8311 12.75 20.4033 12.75 21C12.75 21.4142 12.4142 21.75 12 21.75C11.5858 21.75 11.25 21.4142 11.25 21C11.25 20.4033 11.0128 19.8311 10.5908 19.4092C10.2217 19.04 9.73764 18.8119 9.22266 18.7607L9 18.75H3C2.53587 18.75 2.09089 18.5655 1.7627 18.2373C1.43451 17.9091 1.25 17.4641 1.25 17V4C1.25 3.53587 1.43451 3.09088 1.7627 2.7627C2.09088 2.43451 2.53587 2.25 3 2.25H8C9.25978 2.25 10.4676 2.7508 11.3584 3.6416C11.6024 3.88557 11.8169 4.15334 12 4.43945C12.1831 4.15334 12.3976 3.88557 12.6416 3.6416C13.5324 2.7508 14.7402 2.25 16 2.25H21C21.4641 2.25 21.9091 2.43451 22.2373 2.7627C22.5655 3.09089 22.75 3.53587 22.75 4V17Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function BriefcaseIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12.0098 11.25C12.424 11.25 12.7598 11.5858 12.7598 12C12.7598 12.4142 12.424 12.75 12.0098 12.75H12C11.5858 12.75 11.25 12.4142 11.25 12C11.25 11.5858 11.5858 11.25 12 11.25H12.0098Z\" />\n      <path d=\"M15.25 6V4C15.25 3.66848 15.1182 3.35063 14.8838 3.11621C14.6788 2.9112 14.41 2.78436 14.124 2.75586L14 2.75H10C9.66848 2.75 9.35063 2.88179 9.11621 3.11621C8.88179 3.35063 8.75 3.66848 8.75 4V6C8.75 6.41421 8.41421 6.75 8 6.75C7.58578 6.75 7.25 6.41421 7.25 6V4C7.25 3.27065 7.53994 2.57139 8.05566 2.05566C8.57139 1.53994 9.27065 1.25 10 1.25H14C14.7293 1.25 15.4286 1.53994 15.9443 2.05566C16.4601 2.57139 16.75 3.27065 16.75 4V6C16.75 6.41421 16.4142 6.75 16 6.75C15.5858 6.75 15.25 6.41421 15.25 6Z\" />\n      <path d=\"M21.5869 12.374C21.9326 12.1459 22.3978 12.2413 22.626 12.5869C22.8541 12.9326 22.7587 13.3978 22.4131 13.626C19.3233 15.6658 15.7024 16.7529 12 16.7529C8.29758 16.7529 4.6767 15.6658 1.58691 13.626C1.24128 13.3978 1.14592 12.9326 1.37402 12.5869C1.60221 12.2413 2.06742 12.1459 2.41308 12.374C5.25768 14.2521 8.59137 15.2529 12 15.2529C15.4086 15.2529 18.7423 14.2521 21.5869 12.374Z\" />\n      <path d=\"M21.25 8C21.25 7.30964 20.6904 6.75 20 6.75H4C3.30964 6.75 2.75 7.30964 2.75 8V18C2.75 18.6904 3.30964 19.25 4 19.25H20C20.6904 19.25 21.25 18.6904 21.25 18V8ZM22.75 18C22.75 19.5188 21.5188 20.75 20 20.75H4C2.48121 20.75 1.25 19.5188 1.25 18V8C1.25 6.48122 2.48121 5.25 4 5.25H20C21.5188 5.25 22.75 6.48122 22.75 8V18Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function BuildIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M13.6646 7.00015C13.6646 6.54208 13.8439 6.10169 14.1646 5.77456L17.0796 2.8605C16.2113 2.67752 15.3091 2.71546 14.4575 2.97671C13.5042 3.26921 12.6541 3.82796 12.0063 4.58609C11.3586 5.34418 10.9395 6.27072 10.7993 7.25796C10.6591 8.24514 10.8033 9.25188 11.2144 10.1603C11.3431 10.4447 11.2818 10.7794 11.061 11.0001L3.15088 18.9103C2.89382 19.1674 2.74957 19.5165 2.74951 19.88C2.74954 20.2434 2.89403 20.5917 3.15088 20.8488C3.40794 21.1059 3.757 21.2511 4.12061 21.2511C4.48393 21.2511 4.83232 21.1065 5.08936 20.8498L12.9995 12.9396C13.2203 12.7189 13.5549 12.6576 13.8394 12.7863C14.7478 13.1974 15.7544 13.3415 16.7417 13.2013C17.729 13.0611 18.6564 12.6431 19.4146 11.9953C20.1726 11.3475 20.7305 10.4964 21.0229 9.54312C21.2841 8.69175 21.322 7.79004 21.1392 6.92202L18.2251 9.83511C17.898 10.1558 17.4576 10.3361 16.9995 10.3361C16.5416 10.336 16.1019 10.1556 15.7749 9.83511L14.1694 8.23062L14.1646 8.22476C13.844 7.89768 13.6646 7.45814 13.6646 7.00015ZM15.1646 7.00015C15.1646 7.06551 15.1901 7.12827 15.2358 7.17495L16.8286 8.76773C16.8748 8.81126 16.9359 8.83597 16.9995 8.83609C17.0631 8.83609 17.1241 8.81108 17.1704 8.76773L20.2759 5.66421C20.9303 5.00847 22.2135 5.12557 22.5122 6.21402L22.5718 6.44644C22.8484 7.61326 22.8091 8.83437 22.4565 9.98355C22.0805 11.2092 21.3629 12.3021 20.3882 13.1349C19.4134 13.9678 18.222 14.5064 16.9526 14.6867C15.8574 14.8422 14.7438 14.7251 13.7085 14.3507L6.1499 21.9103C5.61142 22.4485 4.88099 22.7513 4.11963 22.7511C3.35833 22.7509 2.62857 22.4477 2.09033 21.9093C1.55203 21.3708 1.24938 20.6405 1.24951 19.8791C1.24974 19.1179 1.55213 18.388 2.09033 17.8498L9.64893 10.2902C9.27498 9.25533 9.15851 8.14172 9.31396 7.04702C9.49424 5.77771 10.0329 4.58618 10.8657 3.61148C11.6985 2.63681 12.7915 1.91921 14.0171 1.54312C15.2427 1.16707 16.5505 1.14763 17.7866 1.48745L17.979 1.55484C18.8887 1.94451 18.9499 3.1113 18.3384 3.72476L15.2349 6.82437C15.1891 6.87109 15.1646 6.93474 15.1646 7.00015Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function BuildingIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M14 11.25C14.4142 11.25 14.75 11.5858 14.75 12C14.75 12.4142 14.4142 12.75 14 12.75H10C9.58579 12.75 9.25 12.4142 9.25 12C9.25 11.5858 9.58579 11.25 10 11.25H14Z\" />\n      <path d=\"M14 7.25C14.4142 7.25 14.75 7.58579 14.75 8C14.75 8.41421 14.4142 8.75 14 8.75H10C9.58579 8.75 9.25 8.41421 9.25 8C9.25 7.58579 9.58579 7.25 10 7.25H14Z\" />\n      <path d=\"M13.25 21V17C13.25 16.6685 13.1182 16.3506 12.8838 16.1162C12.6788 15.9112 12.41 15.7844 12.124 15.7559L12 15.75C11.6685 15.75 11.3506 15.8818 11.1162 16.1162C10.8818 16.3506 10.75 16.6685 10.75 17V21C10.75 21.4142 10.4142 21.75 10 21.75C9.58579 21.75 9.25 21.4142 9.25 21V17C9.25 16.2707 9.53994 15.5714 10.0557 15.0557C10.5714 14.5399 11.2707 14.25 12 14.25L12.2715 14.2637C12.9011 14.3261 13.493 14.6043 13.9443 15.0557C14.4601 15.5714 14.75 16.2707 14.75 17V21C14.75 21.4142 14.4142 21.75 14 21.75C13.5858 21.75 13.25 21.4142 13.25 21Z\" />\n      <path d=\"M2.25 19V12C2.25 11.2947 2.50144 10.6043 2.96973 10.084C3.44031 9.56113 4.09657 9.25006 4.7998 9.25H6C6.41421 9.25 6.75 9.58579 6.75 10C6.75 10.4142 6.41421 10.75 6 10.75H4.7998C4.54842 10.7501 4.28941 10.8607 4.08496 11.0879C3.87815 11.3177 3.75 11.6445 3.75 12V19C3.75 19.3555 3.87815 19.6823 4.08496 19.9121C4.28941 20.1393 4.54842 20.2499 4.7998 20.25H19.2002C19.4516 20.2499 19.7106 20.1393 19.915 19.9121C20.1218 19.6823 20.25 19.3555 20.25 19V9C20.25 8.6445 20.1218 8.31771 19.915 8.08789C19.7106 7.86073 19.4516 7.75006 19.2002 7.75H18C17.5858 7.75 17.25 7.41421 17.25 7C17.25 6.58579 17.5858 6.25 18 6.25H19.2002C19.9034 6.25006 20.5597 6.56113 21.0303 7.08398C21.4986 7.6043 21.75 8.29467 21.75 9V19C21.75 19.7053 21.4986 20.3957 21.0303 20.916C20.5597 21.4389 19.9034 21.7499 19.2002 21.75H4.7998C4.09657 21.7499 3.44031 21.4389 2.96973 20.916C2.50144 20.3957 2.25 19.7053 2.25 19Z\" />\n      <path d=\"M17.25 21V5C17.25 4.66848 17.1182 4.35063 16.8838 4.11621C16.6494 3.88179 16.3315 3.75 16 3.75H8C7.66848 3.75 7.35063 3.88179 7.11621 4.11621C6.88179 4.35063 6.75 4.66848 6.75 5V21C6.75 21.4142 6.41421 21.75 6 21.75C5.58579 21.75 5.25 21.4142 5.25 21V5C5.25 4.27065 5.53994 3.57139 6.05566 3.05566C6.57139 2.53994 7.27065 2.25 8 2.25H16C16.7293 2.25 17.4286 2.53994 17.9443 3.05566C18.4601 3.57139 18.75 4.27065 18.75 5V21C18.75 21.4142 18.4142 21.75 18 21.75C17.5858 21.75 17.25 21.4142 17.25 21Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CalendarIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M7.25 6V2C7.25 1.58579 7.58579 1.25 8 1.25C8.41421 1.25 8.75 1.58579 8.75 2V6C8.75 6.41421 8.41421 6.75 8 6.75C7.58579 6.75 7.25 6.41421 7.25 6Z\" />\n      <path d=\"M15.25 6V2C15.25 1.58579 15.5858 1.25 16 1.25C16.4142 1.25 16.75 1.58579 16.75 2V6C16.75 6.41421 16.4142 6.75 16 6.75C15.5858 6.75 15.25 6.41421 15.25 6Z\" />\n      <path d=\"M20.25 6C20.25 5.30964 19.6904 4.75 19 4.75H5C4.30964 4.75 3.75 5.30964 3.75 6V19C3.75 19.6904 4.30964 20.25 5 20.25H19C19.6904 20.25 20.25 19.6904 20.25 19V6ZM21.75 19C21.75 20.5188 20.5188 21.75 19 21.75H5C3.48122 21.75 2.25 20.5188 2.25 19V6C2.25 4.48122 3.48122 3.25 5 3.25H19C20.5188 3.25 21.75 4.48122 21.75 6V19Z\" />\n      <path d=\"M21 8.25C21.4142 8.25 21.75 8.58579 21.75 9C21.75 9.41421 21.4142 9.75 21 9.75H3C2.58579 9.75 2.25 9.41421 2.25 9C2.25 8.58579 2.58579 8.25 3 8.25H21Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CalendarMonthIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M8.00977 12.25C8.42398 12.25 8.75977 12.5858 8.75977 13C8.75977 13.4142 8.42398 13.75 8.00977 13.75H8C7.58579 13.75 7.25 13.4142 7.25 13C7.25 12.5858 7.58579 12.25 8 12.25H8.00977Z\" />\n      <path d=\"M12.0098 12.25C12.424 12.25 12.7598 12.5858 12.7598 13C12.7598 13.4142 12.424 13.75 12.0098 13.75H12C11.5858 13.75 11.25 13.4142 11.25 13C11.25 12.5858 11.5858 12.25 12 12.25H12.0098Z\" />\n      <path d=\"M16.0098 12.25C16.424 12.25 16.7598 12.5858 16.7598 13C16.7598 13.4142 16.424 13.75 16.0098 13.75H16C15.5858 13.75 15.25 13.4142 15.25 13C15.25 12.5858 15.5858 12.25 16 12.25H16.0098Z\" />\n      <path d=\"M8.00977 16.25C8.42398 16.25 8.75977 16.5858 8.75977 17C8.75977 17.4142 8.42398 17.75 8.00977 17.75H8C7.58579 17.75 7.25 17.4142 7.25 17C7.25 16.5858 7.58579 16.25 8 16.25H8.00977Z\" />\n      <path d=\"M12.0098 16.25C12.424 16.25 12.7598 16.5858 12.7598 17C12.7598 17.4142 12.424 17.75 12.0098 17.75H12C11.5858 17.75 11.25 17.4142 11.25 17C11.25 16.5858 11.5858 16.25 12 16.25H12.0098Z\" />\n      <path d=\"M16.0098 16.25C16.424 16.25 16.7598 16.5858 16.7598 17C16.7598 17.4142 16.424 17.75 16.0098 17.75H16C15.5858 17.75 15.25 17.4142 15.25 17C15.25 16.5858 15.5858 16.25 16 16.25H16.0098Z\" />\n      <path d=\"M7.25 6V2C7.25 1.58579 7.58579 1.25 8 1.25C8.41421 1.25 8.75 1.58579 8.75 2V6C8.75 6.41421 8.41421 6.75 8 6.75C7.58579 6.75 7.25 6.41421 7.25 6Z\" />\n      <path d=\"M15.25 6V2C15.25 1.58579 15.5858 1.25 16 1.25C16.4142 1.25 16.75 1.58579 16.75 2V6C16.75 6.41421 16.4142 6.75 16 6.75C15.5858 6.75 15.25 6.41421 15.25 6Z\" />\n      <path d=\"M20.25 6C20.25 5.30964 19.6904 4.75 19 4.75H5C4.30964 4.75 3.75 5.30964 3.75 6V19C3.75 19.6904 4.30964 20.25 5 20.25H19C19.6904 20.25 20.25 19.6904 20.25 19V6ZM21.75 19C21.75 20.5188 20.5188 21.75 19 21.75H5C3.48122 21.75 2.25 20.5188 2.25 19V6C2.25 4.48122 3.48122 3.25 5 3.25H19C20.5188 3.25 21.75 4.48122 21.75 6V19Z\" />\n      <path d=\"M21 8.25C21.4142 8.25 21.75 8.58579 21.75 9C21.75 9.41421 21.4142 9.75 21 9.75H3C2.58579 9.75 2.25 9.41421 2.25 9C2.25 8.58579 2.58579 8.25 3 8.25H21Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CalendarViewDayIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M3 3.25L21 3.25C21.4142 3.25 21.75 3.58579 21.75 4C21.75 4.41421 21.4142 4.75 21 4.75L3 4.75C2.58579 4.75 2.25 4.41421 2.25 4C2.25 3.58579 2.58579 3.25 3 3.25Z\" />\n      <path d=\"M3 19.25L21 19.25C21.4142 19.25 21.75 19.5858 21.75 20C21.75 20.4142 21.4142 20.75 21 20.75H3C2.58579 20.75 2.25 20.4142 2.25 20C2.25 19.5858 2.58579 19.25 3 19.25Z\" />\n      <path d=\"M20.25 10C20.25 9.30964 19.6904 8.75 19 8.75H5C4.30964 8.75 3.75 9.30964 3.75 10V14C3.75 14.6904 4.30964 15.25 5 15.25H19C19.6904 15.25 20.25 14.6904 20.25 14V10ZM21.75 14C21.75 15.5188 20.5188 16.75 19 16.75H5C3.48122 16.75 2.25 15.5188 2.25 14V10C2.25 8.48122 3.48122 7.25 5 7.25H19C20.5188 7.25 21.75 8.48122 21.75 10V14Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CalendarViewMonthIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M14.25 21V3C14.25 2.58579 14.5858 2.25 15 2.25C15.4142 2.25 15.75 2.58579 15.75 3V21C15.75 21.4142 15.4142 21.75 15 21.75C14.5858 21.75 14.25 21.4142 14.25 21Z\" />\n      <path d=\"M21 11.25C21.4142 11.25 21.75 11.5858 21.75 12C21.75 12.4142 21.4142 12.75 21 12.75H3C2.58579 12.75 2.25 12.4142 2.25 12C2.25 11.5858 2.58579 11.25 3 11.25H21Z\" />\n      <path d=\"M8.25 21V3C8.25 2.58579 8.58579 2.25 9 2.25C9.41421 2.25 9.75 2.58579 9.75 3V21C9.75 21.4142 9.41421 21.75 9 21.75C8.58579 21.75 8.25 21.4142 8.25 21Z\" />\n      <path d=\"M20.25 5C20.25 4.30964 19.6904 3.75 19 3.75H5C4.30964 3.75 3.75 4.30964 3.75 5V19C3.75 19.6904 4.30964 20.25 5 20.25H19C19.6904 20.25 20.25 19.6904 20.25 19V5ZM21.75 19C21.75 20.5188 20.5188 21.75 19 21.75H5C3.48122 21.75 2.25 20.5188 2.25 19V5C2.25 3.48122 3.48122 2.25 5 2.25H19C20.5188 2.25 21.75 3.48122 21.75 5V19Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CalendarViewWeekIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M14.25 21V3C14.25 2.58579 14.5858 2.25 15 2.25C15.4142 2.25 15.75 2.58579 15.75 3V21C15.75 21.4142 15.4142 21.75 15 21.75C14.5858 21.75 14.25 21.4142 14.25 21Z\" />\n      <path d=\"M8.25 21V3C8.25 2.58579 8.58579 2.25 9 2.25C9.41421 2.25 9.75 2.58579 9.75 3V21C9.75 21.4142 9.41421 21.75 9 21.75C8.58579 21.75 8.25 21.4142 8.25 21Z\" />\n      <path d=\"M20.25 5C20.25 4.30964 19.6904 3.75 19 3.75H5C4.30964 3.75 3.75 4.30964 3.75 5V19C3.75 19.6904 4.30964 20.25 5 20.25H19C19.6904 20.25 20.25 19.6904 20.25 19V5ZM21.75 19C21.75 20.5188 20.5188 21.75 19 21.75H5C3.48122 21.75 2.25 20.5188 2.25 19V5C2.25 3.48122 3.48122 2.25 5 2.25H19C20.5188 2.25 21.75 3.48122 21.75 5V19Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CallIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M8.25 4C8.25 3.66848 8.11821 3.35063 7.88379 3.11621C7.64937 2.88179 7.33152 2.75 7 2.75H4C3.66848 2.75 3.35063 2.88179 3.11621 3.11621C2.88179 3.35063 2.75 3.66848 2.75 4C2.75 8.57498 4.56773 12.9623 7.80273 16.1973C11.0377 19.4323 15.425 21.25 20 21.25C20.3315 21.25 20.6494 21.1182 20.8838 20.8838C21.1182 20.6494 21.25 20.3315 21.25 20V17C21.25 16.6685 21.1182 16.3506 20.8838 16.1162C20.6494 15.8818 20.3315 15.75 20 15.75H17C16.8061 15.75 16.6149 15.7952 16.4414 15.8818C16.2678 15.9686 16.1164 16.0948 16 16.25L15.9961 16.2549L15.6416 16.7197C15.4008 17.0359 15.0594 17.261 14.6738 17.3574C14.288 17.4538 13.88 17.416 13.5186 17.25C13.5129 17.2474 13.5076 17.244 13.502 17.2412C10.5757 15.8051 8.2075 13.44 6.76758 10.5156L6.76562 10.5127C6.58856 10.1495 6.54269 9.736 6.63574 9.34277C6.72888 8.94948 6.95515 8.5998 7.27637 8.35449L7.28223 8.35059L7.75 8C7.90525 7.88357 8.03138 7.73216 8.11816 7.55859C8.20482 7.38513 8.25 7.19391 8.25 7V4ZM9.75 7C9.75 7.42678 9.65076 7.84774 9.45996 8.22949C9.26906 8.61129 8.99186 8.94406 8.65039 9.2002L8.18652 9.5459L8.1875 9.54688C8.1416 9.58192 8.10901 9.63229 8.0957 9.68848C8.0827 9.74365 8.08906 9.80135 8.11328 9.85254L8.36523 10.3389C9.672 12.7376 11.6908 14.6776 14.1494 15.8877C14.1999 15.9098 14.256 15.9147 14.3096 15.9014C14.3647 15.8876 14.4138 15.8558 14.4482 15.8105L14.4492 15.8096L14.8037 15.3447C15.0593 15.0056 15.3906 14.73 15.7705 14.54C16.1523 14.3492 16.5732 14.25 17 14.25H20C20.7293 14.25 21.4286 14.5399 21.9443 15.0557C22.4601 15.5714 22.75 16.2707 22.75 17V20C22.75 20.7293 22.4601 21.4286 21.9443 21.9443C21.4286 22.4601 20.7293 22.75 20 22.75C15.0272 22.75 10.2585 20.7741 6.74219 17.2578C3.22588 13.7415 1.25 8.97281 1.25 4C1.25 3.27065 1.53994 2.57139 2.05566 2.05566C2.57139 1.53994 3.27065 1.25 4 1.25H7C7.72935 1.25 8.42861 1.53994 8.94434 2.05566C9.46006 2.57139 9.75 3.27065 9.75 4V7Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CaringIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M4.25 20.0004V14.7504H2C1.58587 14.7504 1.25013 14.4145 1.25 14.0004C1.25 13.5861 1.58579 13.2504 2 13.2504H14C14.7293 13.2504 15.4286 13.5403 15.9443 14.056C16.292 14.4037 16.5335 14.8355 16.6562 15.3031L18.1064 14.0355C18.3618 13.7955 18.66 13.6055 18.9863 13.4769C19.3242 13.3438 19.6857 13.2782 20.0488 13.2845C20.4117 13.2909 20.7697 13.3693 21.1025 13.514C21.4355 13.6589 21.737 13.868 21.9893 14.1293C22.2415 14.3905 22.4402 14.6987 22.5732 15.0365C22.7063 15.3744 22.772 15.7359 22.7656 16.099C22.7592 16.4619 22.6808 16.8199 22.5361 17.1527C22.3913 17.4857 22.1821 17.7872 21.9209 18.0394C21.9163 18.0439 21.9119 18.0488 21.9072 18.0531L18.3291 21.3314C17.4696 22.2899 16.2683 22.7504 15 22.7504H11C9.71491 22.7504 8.4974 22.2789 7.63574 21.2943L6.33789 19.8343C6.31445 19.8079 6.28511 19.7863 6.25293 19.7718C6.23691 19.7646 6.2202 19.7589 6.20312 19.7552L6.15039 19.7504H5.75V20.0004C5.74994 20.4644 5.56544 20.9095 5.2373 21.2377C4.90913 21.5658 4.46407 21.7504 4 21.7504H2C1.58587 21.7504 1.25013 21.4145 1.25 21.0004C1.25 20.5861 1.58579 20.2504 2 20.2504H4C4.06625 20.2504 4.12989 20.2239 4.17676 20.1771C4.22358 20.1303 4.24994 20.0666 4.25 20.0004ZM5.75 18.2504H6.15137L6.33594 18.2601C6.5194 18.2797 6.69919 18.3277 6.86816 18.4037C7.09313 18.5049 7.2941 18.6529 7.45801 18.8373L8.76074 20.3021L8.76465 20.306C9.30298 20.9213 10.0852 21.2504 11 21.2504H15C15.9148 21.2504 16.697 20.9213 17.2354 20.306C17.2534 20.2854 17.2728 20.266 17.293 20.2474L20.8789 16.9603C20.9984 16.845 21.0939 16.7073 21.1602 16.555C21.2264 16.4027 21.2627 16.2387 21.2656 16.0726C21.2685 15.9065 21.2386 15.7409 21.1777 15.5863C21.1168 15.4317 21.0256 15.2908 20.9102 15.1713C20.7948 15.0518 20.6572 14.9563 20.5049 14.89C20.3526 14.8238 20.1885 14.7875 20.0225 14.7845C19.8563 14.7816 19.6908 14.8115 19.5361 14.8724C19.3815 14.9333 19.2406 15.0246 19.1211 15.14C19.1123 15.1485 19.1029 15.1564 19.0938 15.1644L16.0508 17.8255C16.0155 17.8652 15.9821 17.9069 15.9443 17.9447C15.4286 18.4603 14.7293 18.7504 14 18.7504H12C11.5859 18.7504 11.2501 18.4145 11.25 18.0004C11.25 17.5861 11.5858 17.2504 12 17.2504H14C14.2886 17.2504 14.5662 17.1496 14.7881 16.9691C14.8218 16.9214 14.8603 16.8755 14.9062 16.8353L14.9873 16.763C15.1555 16.5454 15.2499 16.2784 15.25 16.0004C15.25 15.6689 15.1181 15.351 14.8838 15.1166C14.6494 14.8821 14.3315 14.7504 14 14.7504H5.75V18.2504ZM14.3115 2.39098C14.6966 2.26507 15.1032 2.21874 15.5068 2.25426C15.9105 2.28979 16.3029 2.40671 16.6602 2.59801C16.78 2.6622 16.8943 2.73536 17.0039 2.81481C17.1126 2.73722 17.2261 2.66556 17.3447 2.60289C17.7014 2.41456 18.0922 2.29979 18.4941 2.26598C18.8962 2.23217 19.3014 2.28039 19.6846 2.4066C20.0675 2.53282 20.4215 2.73439 20.7246 3.00035C21.0278 3.26639 21.2743 3.59101 21.4492 3.95446C21.6241 4.31799 21.7235 4.71357 21.7422 5.11656C21.7609 5.51953 21.6981 5.92201 21.5576 6.30016C21.4171 6.67834 21.2021 7.02469 20.9248 7.31774L18.3193 10.1488L18.3203 10.1498C18.1562 10.3387 17.9533 10.4903 17.7256 10.5941C17.4981 10.6978 17.251 10.7513 17.001 10.7513C16.7508 10.7513 16.503 10.6979 16.2754 10.5941C16.0477 10.4903 15.8448 10.3387 15.6807 10.1498L13.0674 7.30797L13.0684 7.30699C12.7932 7.01699 12.5777 6.67531 12.4365 6.30113C12.2936 5.92205 12.2296 5.51742 12.2471 5.11266C12.2646 4.70795 12.364 4.31095 12.5391 3.94567C12.7142 3.58033 12.961 3.25381 13.2656 2.98668C13.5703 2.7195 13.9264 2.51694 14.3115 2.39098ZM15.375 3.7484C15.1733 3.73069 14.9698 3.75382 14.7773 3.81676C14.5849 3.87973 14.4071 3.98111 14.2549 4.11461C14.1026 4.24816 13.9792 4.41146 13.8916 4.5941C13.804 4.77681 13.7539 4.97566 13.7451 5.17809C13.7364 5.38042 13.7693 5.58235 13.8408 5.77184C13.9123 5.9613 14.021 6.13446 14.1611 6.28063C14.1647 6.28439 14.1683 6.28851 14.1719 6.29235L16.7988 9.15074L16.8135 9.16637C16.8367 9.19301 16.8653 9.21417 16.8975 9.22887C16.9298 9.2436 16.9655 9.25133 17.001 9.25133C17.0363 9.25126 17.0713 9.24354 17.1035 9.22887C17.1356 9.21418 17.1643 9.19301 17.1875 9.16637L17.2021 9.15074L19.8281 6.2943L19.835 6.28649C19.9736 6.13996 20.0811 5.96679 20.1514 5.7777C20.2216 5.58864 20.2535 5.38736 20.2441 5.1859C20.2348 4.98445 20.1851 4.78657 20.0977 4.60485C20.0103 4.42326 19.8868 4.26124 19.7354 4.12828C19.5837 3.99524 19.4064 3.89354 19.2148 3.83043C19.0234 3.76739 18.821 3.74422 18.6201 3.7611C18.4191 3.778 18.2233 3.83485 18.0449 3.92906C17.8667 4.02323 17.7093 4.15256 17.582 4.30895C17.439 4.48484 17.2238 4.58714 16.9971 4.58629C16.7705 4.5854 16.5567 4.48176 16.415 4.30504C16.2884 4.14694 16.1307 4.01592 15.9521 3.92028C15.7735 3.82462 15.5768 3.76617 15.375 3.7484Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ChatIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 5C21.25 4.66848 21.1182 4.35063 20.8838 4.11621C20.6494 3.88179 20.3315 3.75 20 3.75H4C3.66848 3.75 3.35063 3.88179 3.11621 4.11621C2.88179 4.35063 2.75 4.66848 2.75 5V21.1895L4.88379 19.0557C5.39938 18.54 6.09891 18.2502 6.82812 18.25H20C20.3315 18.25 20.6494 18.1182 20.8838 17.8838C21.1182 17.6494 21.25 17.3315 21.25 17V5ZM22.75 17C22.75 17.7293 22.4601 18.4286 21.9443 18.9443C21.4286 19.4601 20.7293 19.75 20 19.75H6.82812C6.5381 19.7501 6.2585 19.851 6.03613 20.0332L5.94434 20.1162L3.74219 22.3184C3.53809 22.5224 3.27816 22.6614 2.99512 22.7178C2.71194 22.7741 2.41811 22.7452 2.15137 22.6348C1.88461 22.5243 1.65652 22.3367 1.49609 22.0967C1.33581 21.8567 1.25004 21.5747 1.25 21.2861V5C1.25 4.27065 1.53994 3.57139 2.05566 3.05566C2.57139 2.53994 3.27065 2.25 4 2.25H20C20.7293 2.25 21.4286 2.53994 21.9443 3.05566C22.4601 3.57139 22.75 4.27065 22.75 5V17Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CheckIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19.4697 5.46967C19.7626 5.17678 20.2374 5.17678 20.5303 5.46967C20.8232 5.76256 20.8232 6.23732 20.5303 6.53022L9.53028 17.5302C9.23738 17.8231 8.76262 17.8231 8.46973 17.5302L3.46973 12.5302C3.17684 12.2373 3.17684 11.7626 3.46973 11.4697C3.76262 11.1768 4.23738 11.1768 4.53028 11.4697L9 15.9394L19.4697 5.46967Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CheckCircledIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 12C21.25 6.89137 17.1086 2.75 12 2.75C6.89137 2.75 2.75 6.89137 2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C17.1086 21.25 21.25 17.1086 21.25 12ZM22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12C1.25 6.06294 6.06294 1.25 12 1.25C17.9371 1.25 22.75 6.06294 22.75 12Z\" />\n      <path d=\"M15.9697 9.46973C16.2626 9.17683 16.7374 9.17683 17.0303 9.46973C17.3232 9.76262 17.3232 10.2374 17.0303 10.5303L11.5303 16.0303C11.2374 16.3232 10.7626 16.3232 10.4697 16.0303L7.46973 13.0303C7.17683 12.7374 7.17683 12.2626 7.46973 11.9697C7.76262 11.6768 8.23738 11.6768 8.53027 11.9697L11 14.4395L15.9697 9.46973Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ChecklistIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M8.46973 14.4697C8.76262 14.1768 9.23738 14.1768 9.53028 14.4697C9.82317 14.7626 9.82317 15.2374 9.53028 15.5303L5.53028 19.5303C5.23738 19.8232 4.76262 19.8232 4.46973 19.5303L2.46973 17.5303C2.17684 17.2374 2.17684 16.7626 2.46973 16.4697C2.76262 16.1768 3.23738 16.1768 3.53028 16.4697L5 17.9395L8.46973 14.4697ZM21 18.25C21.4142 18.25 21.75 18.5858 21.75 19C21.75 19.4142 21.4142 19.75 21 19.75H13C12.5858 19.75 12.25 19.4142 12.25 19C12.25 18.5858 12.5858 18.25 13 18.25H21ZM21 11.25C21.4142 11.25 21.75 11.5858 21.75 12C21.75 12.4142 21.4142 12.75 21 12.75H13C12.5858 12.75 12.25 12.4142 12.25 12C12.25 11.5858 12.5858 11.25 13 11.25H21ZM8.46973 4.46973C8.76262 4.17683 9.23738 4.17683 9.53028 4.46973C9.82317 4.76262 9.82317 5.23738 9.53028 5.53027L5.53028 9.53027C5.23738 9.82317 4.76262 9.82317 4.46973 9.53027L2.46973 7.53027C2.17684 7.23738 2.17684 6.76262 2.46973 6.46973C2.76262 6.17683 3.23738 6.17683 3.53028 6.46973L5 7.93945L8.46973 4.46973ZM21 4.25C21.4142 4.25 21.75 4.58579 21.75 5C21.75 5.41421 21.4142 5.75 21 5.75H13C12.5858 5.75 12.25 5.41421 12.25 5C12.25 4.58579 12.5858 4.25 13 4.25H21Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ChevronDownIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M17.4697 8.46967C17.7626 8.17678 18.2374 8.17678 18.5303 8.46967C18.8232 8.76256 18.8232 9.23732 18.5303 9.53022L12.5303 15.5302C12.2374 15.8231 11.7626 15.8231 11.4697 15.5302L5.46972 9.53022C5.17683 9.23732 5.17683 8.76256 5.46972 8.46967C5.76262 8.17678 6.23738 8.17678 6.53027 8.46967L12 13.9394L17.4697 8.46967Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ChevronFirstIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M16.4697 5.46967C16.7626 5.17678 17.2374 5.17678 17.5303 5.46967C17.8232 5.76256 17.8232 6.23732 17.5303 6.53022L12.0605 11.9999L17.5303 17.4697C17.8232 17.7626 17.8232 18.2373 17.5303 18.5302C17.2374 18.8231 16.7626 18.8231 16.4697 18.5302L10.4697 12.5302C10.1768 12.2373 10.1768 11.7626 10.4697 11.4697L16.4697 5.46967Z\" />\n      <path d=\"M6.25 18V6C6.25 5.58579 6.58579 5.25 7 5.25C7.41421 5.25 7.75 5.58579 7.75 6V18C7.75 18.4142 7.41421 18.75 7 18.75C6.58579 18.75 6.25 18.4142 6.25 18Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ChevronLastIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M6.46973 5.46967C6.76262 5.17678 7.23738 5.17678 7.53027 5.46967L13.5303 11.4697C13.8232 11.7626 13.8232 12.2373 13.5303 12.5302L7.53027 18.5302C7.23738 18.8231 6.76262 18.8231 6.46973 18.5302C6.17683 18.2373 6.17683 17.7626 6.46973 17.4697L11.9395 11.9999L6.46973 6.53022C6.17683 6.23732 6.17683 5.76256 6.46973 5.46967Z\" />\n      <path d=\"M16.25 18V6C16.25 5.58579 16.5858 5.25 17 5.25C17.4142 5.25 17.75 5.58579 17.75 6V18C17.75 18.4142 17.4142 18.75 17 18.75C16.5858 18.75 16.25 18.4142 16.25 18Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ChevronLeftIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M14.4697 5.46967C14.7626 5.17678 15.2374 5.17678 15.5303 5.46967C15.8232 5.76256 15.8232 6.23732 15.5303 6.53022L10.0606 11.9999L15.5303 17.4697C15.8232 17.7626 15.8232 18.2373 15.5303 18.5302C15.2374 18.8231 14.7626 18.8231 14.4697 18.5302L8.46973 12.5302C8.17684 12.2373 8.17684 11.7626 8.46973 11.4697L14.4697 5.46967Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ChevronRightIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M8.46973 5.46967C8.76262 5.17678 9.23738 5.17678 9.53028 5.46967L15.5303 11.4697C15.8232 11.7626 15.8232 12.2373 15.5303 12.5302L9.53028 18.5302C9.23738 18.8231 8.76262 18.8231 8.46973 18.5302C8.17684 18.2373 8.17684 17.7626 8.46973 17.4697L13.9395 11.9999L8.46973 6.53022C8.17684 6.23732 8.17684 5.76256 8.46973 5.46967Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ChevronUpIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M11.5264 8.41796C11.821 8.17765 12.2557 8.19512 12.5303 8.46972L18.5303 14.4697C18.8232 14.7626 18.8232 15.2374 18.5303 15.5303C18.2374 15.8232 17.7626 15.8232 17.4697 15.5303L12 10.0605L6.53028 15.5303C6.23738 15.8232 5.76262 15.8232 5.46973 15.5303C5.17684 15.2374 5.17684 14.7626 5.46973 14.4697L11.4697 8.46972L11.5264 8.41796Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CircleIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C17.1086 21.25 21.25 17.1086 21.25 12C21.25 6.89137 17.1086 2.75 12 2.75C6.89137 2.75 2.75 6.89137 2.75 12ZM1.25 12C1.25 6.06294 6.06294 1.25 12 1.25C17.9371 1.25 22.75 6.06294 22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CircleFilledIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2Z\" />\n      <path d=\"M2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C17.1086 21.25 21.25 17.1086 21.25 12C21.25 6.89136 17.1086 2.75 12 2.75C6.89136 2.75 2.75 6.89137 2.75 12ZM1.25 12C1.25 6.06294 6.06294 1.25 12 1.25C17.9371 1.25 22.75 6.06294 22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CloseIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M17.4697 5.46967C17.7626 5.17678 18.2374 5.17678 18.5303 5.46967C18.8232 5.76256 18.8232 6.23732 18.5303 6.53022L13.0606 11.9999L18.5303 17.4697C18.8232 17.7626 18.8232 18.2373 18.5303 18.5302C18.2374 18.8231 17.7626 18.8231 17.4697 18.5302L12 13.0605L6.53028 18.5302C6.23738 18.8231 5.76262 18.8231 5.46973 18.5302C5.17684 18.2373 5.17684 17.7626 5.46973 17.4697L10.9395 11.9999L5.46973 6.53022C5.17684 6.23732 5.17684 5.76256 5.46973 5.46967C5.76262 5.17678 6.23738 5.17678 6.53028 5.46967L12 10.9394L17.4697 5.46967Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CloseSmallIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M15.4697 7.46967C15.7626 7.17678 16.2374 7.17678 16.5303 7.46967C16.8232 7.76256 16.8232 8.23732 16.5303 8.53022L8.53028 16.5302C8.23738 16.8231 7.76262 16.8231 7.46973 16.5302C7.17684 16.2373 7.17684 15.7626 7.46973 15.4697L15.4697 7.46967Z\" />\n      <path d=\"M7.46973 7.46967C7.76262 7.17678 8.23738 7.17678 8.53028 7.46967L16.5303 15.4697C16.8232 15.7626 16.8232 16.2373 16.5303 16.5302C16.2374 16.8231 15.7626 16.8231 15.4697 16.5302L7.46973 8.53022C7.17684 8.23732 7.17684 7.76256 7.46973 7.46967Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CloseCircledIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 12C21.25 6.89137 17.1086 2.75 12 2.75C6.89137 2.75 2.75 6.89137 2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C17.1086 21.25 21.25 17.1086 21.25 12ZM14.4697 8.46973C14.7626 8.17683 15.2374 8.17683 15.5303 8.46973C15.8232 8.76262 15.8232 9.23738 15.5303 9.53027L13.0605 12L15.5303 14.4697C15.8232 14.7626 15.8232 15.2374 15.5303 15.5303C15.2374 15.8232 14.7626 15.8232 14.4697 15.5303L12 13.0605L9.53027 15.5303C9.23738 15.8232 8.76262 15.8232 8.46973 15.5303C8.17683 15.2374 8.17683 14.7626 8.46973 14.4697L10.9395 12L8.46973 9.53027C8.17683 9.23738 8.17683 8.76262 8.46973 8.46973C8.76262 8.17683 9.23738 8.17683 9.53027 8.46973L12 10.9395L14.4697 8.46973ZM22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12C1.25 6.06294 6.06294 1.25 12 1.25C17.9371 1.25 22.75 6.06294 22.75 12Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CloudIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.2498 14.4999C21.2498 13.5054 20.8544 12.5518 20.1512 11.8485C19.4479 11.1453 18.4943 10.7499 17.4998 10.7499H15.7098C15.3782 10.7498 15.0858 10.5316 14.991 10.2138C14.6598 9.10323 14.0269 8.10619 13.1619 7.33487C12.2969 6.56345 11.2339 6.04793 10.0926 5.84562C8.95146 5.64336 7.77644 5.76239 6.69904 6.18937C5.62154 6.61643 4.68382 7.33534 3.99103 8.26456C3.29847 9.19359 2.87795 10.2968 2.77619 11.4511C2.67449 12.6057 2.89517 13.7666 3.41486 14.8026C3.93454 15.8386 4.7324 16.7095 5.71857 17.3183C6.70474 17.927 7.84089 18.2496 8.99982 18.2499H17.4998C18.4943 18.2499 19.4479 17.8545 20.1512 17.1513C20.8545 16.448 21.2498 15.4945 21.2498 14.4999ZM22.7498 14.4999C22.7498 15.8921 22.197 17.2273 21.2127 18.2118C20.2281 19.1964 18.8922 19.7499 17.4998 19.7499H8.99982C7.5626 19.7495 6.15345 19.3496 4.93049 18.5946C3.70761 17.8397 2.71842 16.7591 2.07404 15.4745C1.42981 14.19 1.15602 12.7517 1.28205 11.3202C1.40814 9.88861 1.92989 8.52028 2.78888 7.36808C3.64794 6.21585 4.8102 5.32439 6.14631 4.79484C7.4823 4.26536 8.93928 4.11825 10.3543 4.36905C11.7695 4.61992 13.0873 5.25917 14.16 6.21573C15.0915 7.04645 15.8059 8.08817 16.2469 9.24991H17.4998C18.8922 9.24991 20.2281 9.80343 21.2127 10.788C22.197 11.7725 22.7498 13.1077 22.7498 14.4999Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CollapseIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.4697 2.46967C20.7626 2.17678 21.2373 2.17678 21.5302 2.46967C21.8231 2.76256 21.8231 3.23732 21.5302 3.53022L15.8105 9.24994H19.9999C20.4142 9.24994 20.7499 9.58573 20.7499 9.99994C20.7499 10.4142 20.4142 10.7499 19.9999 10.7499H13.9999C13.5857 10.7499 13.2499 10.4142 13.2499 9.99994V3.99994C13.2499 3.58573 13.5857 3.24994 13.9999 3.24994C14.4142 3.24994 14.7499 3.58573 14.7499 3.99994V8.1894L20.4697 2.46967ZM10.7499 19.9999C10.7499 20.4142 10.4142 20.7499 9.99994 20.7499C9.58573 20.7499 9.24994 20.4142 9.24994 19.9999V15.8105L3.53022 21.5302C3.23732 21.8231 2.76256 21.8231 2.46967 21.5302C2.17678 21.2373 2.17678 20.7626 2.46967 20.4697L8.1894 14.7499H3.99994C3.58573 14.7499 3.24994 14.4142 3.24994 13.9999C3.24994 13.5857 3.58573 13.2499 3.99994 13.2499H9.99994C10.4142 13.2499 10.7499 13.5857 10.7499 13.9999V19.9999Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CommentIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 5C21.25 4.66848 21.1182 4.35063 20.8838 4.11621C20.6494 3.88179 20.3315 3.75 20 3.75H4C3.66848 3.75 3.35063 3.88179 3.11621 4.11621C2.88179 4.35063 2.75 4.66848 2.75 5V21.1895L4.88379 19.0557C5.39938 18.54 6.09891 18.2502 6.82812 18.25H20C20.3315 18.25 20.6494 18.1182 20.8838 17.8838C21.1182 17.6494 21.25 17.3315 21.25 17V5ZM13 14.25C13.4142 14.25 13.75 14.5858 13.75 15C13.75 15.4142 13.4142 15.75 13 15.75H7C6.58579 15.75 6.25 15.4142 6.25 15C6.25 14.5858 6.58579 14.25 7 14.25H13ZM17 10.25C17.4142 10.25 17.75 10.5858 17.75 11C17.75 11.4142 17.4142 11.75 17 11.75H7C6.58579 11.75 6.25 11.4142 6.25 11C6.25 10.5858 6.58579 10.25 7 10.25H17ZM15 6.25C15.4142 6.25 15.75 6.58579 15.75 7C15.75 7.41421 15.4142 7.75 15 7.75H7C6.58579 7.75 6.25 7.41421 6.25 7C6.25 6.58579 6.58579 6.25 7 6.25H15ZM22.75 17C22.75 17.7293 22.4601 18.4286 21.9443 18.9443C21.4286 19.4601 20.7293 19.75 20 19.75H6.82812C6.5381 19.7501 6.2585 19.851 6.03613 20.0332L5.94434 20.1162L3.74219 22.3184C3.53809 22.5224 3.27816 22.6614 2.99512 22.7178C2.71194 22.7741 2.41811 22.7452 2.15137 22.6348C1.88461 22.5243 1.65652 22.3367 1.49609 22.0967C1.35576 21.8866 1.27244 21.6443 1.25391 21.3936L1.25 21.2861V5C1.25 4.27065 1.53994 3.57139 2.05566 3.05566C2.57139 2.53994 3.27065 2.25 4 2.25H20C20.7293 2.25 21.4286 2.53994 21.9443 3.05566C22.4601 3.57139 22.75 4.27065 22.75 5V17Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CopyIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 10C21.25 9.30964 20.6904 8.75 20 8.75H10C9.30964 8.75 8.75 9.30964 8.75 10V20C8.75 20.6904 9.30964 21.25 10 21.25H20C20.6904 21.25 21.25 20.6904 21.25 20V10ZM15.25 4C15.25 3.31421 14.6858 2.75 14 2.75H4C3.31421 2.75 2.75 3.31421 2.75 4V14C2.75 14.6858 3.31421 15.25 4 15.25C4.41421 15.25 4.75 15.5858 4.75 16C4.75 16.4142 4.41421 16.75 4 16.75C2.48579 16.75 1.25 15.5142 1.25 14V4C1.25 2.48579 2.48579 1.25 4 1.25H14C15.5142 1.25 16.75 2.48579 16.75 4C16.75 4.41421 16.4142 4.75 16 4.75C15.5858 4.75 15.25 4.41421 15.25 4ZM22.75 20C22.75 21.5188 21.5188 22.75 20 22.75H10C8.48122 22.75 7.25 21.5188 7.25 20V10C7.25 8.48122 8.48122 7.25 10 7.25H20C21.5188 7.25 22.75 8.48122 22.75 10V20Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function CourtIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.9999 21.25C21.4141 21.25 21.7498 21.5858 21.7499 22C21.7499 22.4142 21.4141 22.75 20.9999 22.75H2.99988C2.58571 22.75 2.24988 22.4142 2.24988 22C2.24993 21.5859 2.58574 21.2501 2.99988 21.25H20.9999ZM5.24988 18V11C5.24993 10.5859 5.58574 10.2501 5.99988 10.25C6.41407 10.25 6.74983 10.5858 6.74988 11V18C6.74988 18.4142 6.41409 18.75 5.99988 18.75C5.58572 18.75 5.24988 18.4142 5.24988 18ZM9.24988 18V11C9.24993 10.5859 9.58574 10.2501 9.99988 10.25C10.4141 10.25 10.7498 10.5858 10.7499 11V18C10.7499 18.4142 10.4141 18.75 9.99988 18.75C9.58571 18.75 9.24988 18.4142 9.24988 18ZM13.2499 18V11C13.2499 10.5859 13.5857 10.2501 13.9999 10.25C14.4141 10.25 14.7498 10.5858 14.7499 11V18C14.7499 18.4142 14.4141 18.75 13.9999 18.75C13.5857 18.75 13.2499 18.4142 13.2499 18ZM17.2499 18V11C17.2499 10.5859 17.5857 10.2501 17.9999 10.25C18.4141 10.25 18.7498 10.5858 18.7499 11V18C18.7499 18.4142 18.4141 18.75 17.9999 18.75C17.5857 18.75 17.2499 18.4142 17.2499 18ZM12.0028 1.24708C12.4213 1.24851 12.8345 1.34526 13.2098 1.53029L21.0751 5.37697L21.0761 5.37794C22.2661 5.96099 21.8498 7.74978 20.5262 7.75001H3.47351C2.14593 7.74959 1.73871 5.95928 2.92371 5.37794L10.7899 1.52443L10.7919 1.52345C11.169 1.34024 11.5835 1.24572 12.0028 1.24708ZM11.9979 2.74708C11.8074 2.74646 11.6195 2.78985 11.4481 2.87306L4.55262 6.25001H19.4462L12.5507 2.87794L12.5477 2.87599C12.3769 2.79157 12.1885 2.74773 11.9979 2.74708Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function DateRangeIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M17 12.25C17.4142 12.25 17.75 12.5858 17.75 13C17.75 13.4142 17.4142 13.75 17 13.75H11C10.5858 13.75 10.25 13.4142 10.25 13C10.25 12.5858 10.5858 12.25 11 12.25H17Z\" />\n      <path d=\"M13 16.25C13.4142 16.25 13.75 16.5858 13.75 17C13.75 17.4142 13.4142 17.75 13 17.75H7C6.58579 17.75 6.25 17.4142 6.25 17C6.25 16.5858 6.58579 16.25 7 16.25H13Z\" />\n      <path d=\"M7.00977 12.25C7.42398 12.25 7.75977 12.5858 7.75977 13C7.75977 13.4142 7.42398 13.75 7.00977 13.75H7C6.58579 13.75 6.25 13.4142 6.25 13C6.25 12.5858 6.58579 12.25 7 12.25H7.00977Z\" />\n      <path d=\"M17.0098 16.25C17.424 16.25 17.7598 16.5858 17.7598 17C17.7598 17.4142 17.424 17.75 17.0098 17.75H17C16.5858 17.75 16.25 17.4142 16.25 17C16.25 16.5858 16.5858 16.25 17 16.25H17.0098Z\" />\n      <path d=\"M7.25 6V2C7.25 1.58579 7.58579 1.25 8 1.25C8.41421 1.25 8.75 1.58579 8.75 2V6C8.75 6.41421 8.41421 6.75 8 6.75C7.58579 6.75 7.25 6.41421 7.25 6Z\" />\n      <path d=\"M15.25 6V2C15.25 1.58579 15.5858 1.25 16 1.25C16.4142 1.25 16.75 1.58579 16.75 2V6C16.75 6.41421 16.4142 6.75 16 6.75C15.5858 6.75 15.25 6.41421 15.25 6Z\" />\n      <path d=\"M20.25 6C20.25 5.30964 19.6904 4.75 19 4.75H5C4.30964 4.75 3.75 5.30964 3.75 6V19C3.75 19.6904 4.30964 20.25 5 20.25H19C19.6904 20.25 20.25 19.6904 20.25 19V6ZM21.75 19C21.75 20.5188 20.5188 21.75 19 21.75H5C3.48122 21.75 2.25 20.5188 2.25 19V6C2.25 4.48122 3.48122 3.25 5 3.25H19C20.5188 3.25 21.75 4.48122 21.75 6V19Z\" />\n      <path d=\"M21 8.25C21.4142 8.25 21.75 8.58579 21.75 9C21.75 9.41421 21.4142 9.75 21 9.75H3C2.58579 9.75 2.25 9.41421 2.25 9C2.25 8.58579 2.58579 8.25 3 8.25H21Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function DeathsIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19.25 6.53429V6.00011C19.25 5.35732 19.0593 4.72891 18.7022 4.19445C18.3451 3.66011 17.8379 3.24316 17.2442 2.99718C16.6504 2.75123 15.9966 2.68727 15.3662 2.81261C14.7358 2.93801 14.1567 3.24774 13.7022 3.70226C13.2476 4.15678 12.9379 4.73588 12.8125 5.36632C12.6872 5.99669 12.7511 6.65046 12.9971 7.24425C13.2431 7.83797 13.66 8.3452 14.1944 8.70226C14.7288 9.05937 15.3572 9.25011 16 9.25011H17C17.4142 9.25011 17.75 9.5859 17.75 10.0001C17.75 10.4143 17.4142 10.7501 17 10.7501H16C15.0606 10.7501 14.1425 10.4712 13.3613 9.94933C12.5802 9.42739 11.9709 8.68544 11.6113 7.81749C11.252 6.94965 11.1576 5.99462 11.3408 5.07335C11.5241 4.15194 11.9773 3.30601 12.6416 2.64171C13.3059 1.97741 14.1519 1.52421 15.0733 1.34093C15.9945 1.15768 16.9496 1.25206 17.8174 1.61144C18.6854 1.97095 19.4273 2.58031 19.9492 3.36144C20.4711 4.14256 20.75 5.06068 20.75 6.00011V6.53429C20.7499 6.94842 20.4142 7.28429 20 7.28429C19.5859 7.28429 19.2501 6.94842 19.25 6.53429Z\" />\n      <path d=\"M13.4587 1.98632C13.8087 1.76475 14.2723 1.8688 14.4939 2.21875C14.7154 2.56867 14.6113 3.03229 14.2615 3.2539L12.1921 4.56347L12.1911 4.56445C11.0909 5.25976 10.2877 6.33904 9.93821 7.59277C9.58876 8.84646 9.71771 10.1854 10.2995 11.3496C10.8816 12.5139 11.8759 13.4207 13.0886 13.8935C14.3014 14.3664 15.6474 14.3722 16.864 13.9092L19.154 13.0391L19.4148 12.9268C20.0099 12.6394 20.5059 12.1763 20.8327 11.5967C21.2062 10.9344 21.3351 10.1619 21.198 9.41406C21.0608 8.66621 20.6659 7.98958 20.0818 7.50292C19.4976 7.01634 18.761 6.74983 18.0007 6.74999H16.9997C16.5857 6.74984 16.2497 6.41411 16.2497 5.99999C16.2498 5.58593 16.5857 5.25015 16.9997 5.25H17.9997C19.1111 5.2496 20.1878 5.63929 21.0417 6.35058C21.8954 7.06177 22.473 8.0497 22.6736 9.14257C22.8741 10.2356 22.6852 11.3649 22.1394 12.333C21.6276 13.2406 20.8323 13.953 19.8786 14.3633L19.6863 14.4414L17.3962 15.3105L17.3972 15.3115C15.833 15.9068 14.103 15.899 12.5437 15.291C10.9844 14.683 9.70608 13.5175 8.95774 12.0205C8.20954 10.5236 8.04448 8.80148 8.49387 7.18945C8.94337 5.57747 9.97559 4.18976 11.3904 3.29589L13.4587 1.98632Z\" />\n      <path d=\"M4.36819 16.2618C7.31853 15.735 9.13891 16.2462 10.4414 17.1935C11.7394 18.1375 12.5007 19.7298 13.0117 21.2628C13.0798 21.4668 13.0562 21.6901 12.9483 21.8761C12.8403 22.0621 12.6582 22.1932 12.4473 22.2355C10.4045 22.644 8.69457 22.6854 7.16506 21.8702C7.16092 21.8682 7.1565 21.8665 7.15237 21.8644C7.1498 21.863 7.14712 21.8618 7.14455 21.8605C5.7148 21.137 4.51805 19.6363 3.78225 17.2189C3.71983 17.0138 3.74844 16.7914 3.86037 16.6085C3.97231 16.4257 4.15714 16.2995 4.36819 16.2618ZM9.55862 18.4064C8.76561 17.8297 7.59601 17.3817 5.50686 17.6114C6.10395 19.1223 6.88305 19.9838 7.6553 20.4318L7.83498 20.5294L7.85549 20.5402C8.75355 21.0237 9.80667 21.1265 11.2822 20.9142C10.838 19.8227 10.2851 18.9347 9.55862 18.4064Z\" />\n      <path d=\"M9.42385 11.3351C9.79136 11.144 10.2445 11.2869 10.4356 11.6544C10.6264 12.0218 10.4834 12.474 10.1162 12.6652C7.40763 14.0734 5.55474 16.4396 4.37112 18.4991C3.78242 19.5235 3.36782 20.4582 3.10061 21.1349C2.96715 21.4729 2.87075 21.7459 2.80862 21.9318C2.77768 22.0243 2.75467 22.0951 2.74026 22.1417C2.73305 22.1651 2.72784 22.1827 2.72463 22.1935C2.72305 22.1988 2.72232 22.2031 2.7217 22.2052L2.72073 22.2071C2.60688 22.6053 2.1922 22.8346 1.79397 22.7208C1.39577 22.607 1.16554 22.1923 1.27932 21.7941V21.7911C1.27974 21.7897 1.2806 21.7876 1.28127 21.7853C1.28261 21.7807 1.28481 21.7746 1.28713 21.7667C1.29185 21.7508 1.2988 21.728 1.30764 21.6993C1.32533 21.6421 1.35092 21.5594 1.38577 21.4552C1.45554 21.2465 1.561 20.949 1.7051 20.5841C1.99317 19.8546 2.43894 18.8514 3.07131 17.7511C4.33017 15.5608 6.3628 12.9267 9.42385 11.3351Z\" />\n      <path d=\"M18.25 8.00011C18.25 7.30976 17.6901 6.74999 16.9997 6.74999C16.3094 6.74999 15.75 7.30976 15.75 8.00011C15.75 8.69047 16.3097 9.25011 17 9.25011C17.6904 9.25011 18.25 8.69047 18.25 8.00011ZM19.75 8.00011C19.75 9.5189 18.5188 10.7501 17 10.7501C15.4812 10.7501 14.25 9.5189 14.25 8.00011C14.25 6.48133 15.4809 5.25 16.9997 5.25C18.5185 5.25 19.75 6.48133 19.75 8.00011Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function DoubleChevronLeftIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M10.4697 6.46967C10.7626 6.17678 11.2374 6.17678 11.5303 6.46967C11.8232 6.76256 11.8232 7.23732 11.5303 7.53022L7.06054 11.9999L11.5303 16.4697C11.8232 16.7626 11.8232 17.2373 11.5303 17.5302C11.2374 17.8231 10.7626 17.8231 10.4697 17.5302L5.46972 12.5302C5.17683 12.2373 5.17683 11.7626 5.46972 11.4697L10.4697 6.46967Z\" />\n      <path d=\"M17.4697 6.46967C17.7626 6.17678 18.2374 6.17678 18.5303 6.46967C18.8232 6.76256 18.8232 7.23732 18.5303 7.53022L14.0605 11.9999L18.5303 16.4697C18.8232 16.7626 18.8232 17.2373 18.5303 17.5302C18.2374 17.8231 17.7626 17.8231 17.4697 17.5302L12.4697 12.5302C12.1768 12.2373 12.1768 11.7626 12.4697 11.4697L17.4697 6.46967Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function DoubleChevronRightIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M5.46973 6.46967C5.76262 6.17678 6.23738 6.17678 6.53027 6.46967L11.5303 11.4697C11.8232 11.7626 11.8232 12.2373 11.5303 12.5302L6.53027 17.5302C6.23738 17.8231 5.76262 17.8231 5.46973 17.5302C5.17683 17.2373 5.17683 16.7626 5.46973 16.4697L9.93945 11.9999L5.46973 7.53022C5.17683 7.23732 5.17683 6.76256 5.46973 6.46967Z\" />\n      <path d=\"M12.4697 6.46967C12.7626 6.17678 13.2374 6.17678 13.5303 6.46967L18.5303 11.4697C18.8232 11.7626 18.8232 12.2373 18.5303 12.5302L13.5303 17.5302C13.2374 17.8231 12.7626 17.8231 12.4697 17.5302C12.1768 17.2373 12.1768 16.7626 12.4697 16.4697L16.9395 11.9999L12.4697 7.53022C12.1768 7.23732 12.1768 6.76256 12.4697 6.46967Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function DownloadIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M2.25 19V15C2.25 14.5858 2.58579 14.25 3 14.25C3.41421 14.25 3.75 14.5858 3.75 15V19C3.75 19.3315 3.88179 19.6494 4.11621 19.8838C4.35063 20.1182 4.66848 20.25 5 20.25H19C19.3315 20.25 19.6494 20.1182 19.8838 19.8838C20.1182 19.6494 20.25 19.3315 20.25 19V15C20.25 14.5858 20.5858 14.25 21 14.25C21.4142 14.25 21.75 14.5858 21.75 15V19C21.75 19.7293 21.4601 20.4286 20.9443 20.9443C20.4286 21.4601 19.7293 21.75 19 21.75H5C4.27065 21.75 3.57139 21.4601 3.05566 20.9443C2.53994 20.4286 2.25 19.7293 2.25 19ZM11.25 3C11.25 2.58579 11.5858 2.25 12 2.25C12.4142 2.25 12.75 2.58579 12.75 3V13.1895L16.4697 9.46973C16.7626 9.17683 17.2374 9.17683 17.5303 9.46973C17.8232 9.76262 17.8232 10.2374 17.5303 10.5303L12.5303 15.5303C12.2374 15.8232 11.7626 15.8232 11.4697 15.5303L6.46973 10.5303C6.17683 10.2374 6.17683 9.76262 6.46973 9.46973C6.76262 9.17683 7.23738 9.17683 7.53027 9.46973L11.25 13.1895V3Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function DownloadDoneIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19.4697 3.46967C19.7626 3.17678 20.2374 3.17678 20.5303 3.46967C20.8232 3.76256 20.8232 4.23732 20.5303 4.53022L9.53027 15.5302C9.23738 15.8231 8.76262 15.8231 8.46973 15.5302C8.17683 15.2373 8.17683 14.7626 8.46973 14.4697L19.4697 3.46967Z\" />\n      <path d=\"M21 18.2499C21.4142 18.2499 21.75 18.5857 21.75 18.9999C21.75 19.4142 21.4142 19.7499 21 19.7499H3C2.58579 19.7499 2.25 19.4142 2.25 18.9999C2.25 18.5857 2.58579 18.2499 3 18.2499H21Z\" />\n      <path d=\"M3.46973 9.46967C3.76262 9.17678 4.23738 9.17678 4.53027 9.46967L9.53027 14.4697C9.82317 14.7626 9.82317 15.2373 9.53027 15.5302C9.23738 15.8231 8.76262 15.8231 8.46973 15.5302L3.46973 10.5302C3.17683 10.2373 3.17683 9.76256 3.46973 9.46967Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function DragHandleIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.2421 14C20.6563 14 20.9921 14.3358 20.9921 14.75C20.9921 15.1642 20.6563 15.5 20.2421 15.5H3.75C3.33579 15.5 3 15.1642 3 14.75C3 14.3358 3.33579 14 3.75 14H20.2421ZM20.2421 8C20.6563 8 20.9921 8.33579 20.9921 8.75C20.9921 9.16421 20.6563 9.5 20.2421 9.5H3.75C3.33579 9.5 3 9.16421 3 8.75C3 8.33579 3.33579 8 3.75 8H20.2421Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function EditIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.2501 4.81885C21.2501 4.27015 21.0316 3.744 20.6436 3.35596C20.2558 2.96808 19.7302 2.7497 19.1817 2.74951C18.6332 2.74944 18.1068 2.96731 17.7188 3.35498L16.0675 5.00635L18.9932 7.93213L20.6436 6.28174C21.0316 5.89384 21.25 5.36748 21.2501 4.81885ZM4.37215 16.7046C4.22759 16.8487 4.11887 17.0262 4.05867 17.2212L4.05965 17.2222L2.8741 21.1235L6.7784 19.9399C6.97413 19.8804 7.15304 19.7738 7.29793 19.6294L17.9327 8.99268L15.0069 6.06689L4.37215 16.7046ZM22.7501 4.81885C22.75 5.7063 22.4192 6.55973 21.8263 7.21436L21.7042 7.34229L19.6036 9.44189C19.5813 9.47227 19.5578 9.50231 19.5304 9.52979C19.5023 9.55784 19.4716 9.5823 19.4405 9.60498L8.35653 20.6919C8.07764 20.9699 7.74288 21.1848 7.37508 21.3218L7.21492 21.3755L2.86141 22.6958H2.85945C2.64347 22.7607 2.41409 22.7664 2.19539 22.7114C1.97655 22.6564 1.77696 22.5427 1.61727 22.3833C1.45766 22.2239 1.34357 22.0248 1.28817 21.8062C1.2328 21.5874 1.2382 21.3573 1.30281 21.1411L1.30379 21.1382L2.6241 16.7856L2.62508 16.7837C2.75725 16.3528 2.99346 15.9613 3.31258 15.6431L14.3956 4.55518C14.4177 4.52521 14.4427 4.49637 14.4698 4.46924C14.4966 4.44252 14.5253 4.41881 14.5548 4.39697L16.6573 2.29443C17.3267 1.62522 18.2352 1.24939 19.1817 1.24951C20.1282 1.2497 21.036 1.62609 21.7052 2.29541C22.3742 2.96476 22.7502 3.87245 22.7501 4.81885Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function EditAltIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.9999 20.2505C21.4141 20.2505 21.7499 20.5863 21.7499 21.0005C21.7499 21.4147 21.4141 21.7505 20.9999 21.7505H12.9999C12.5857 21.7505 12.2499 21.4147 12.2499 21.0005C12.2499 20.5863 12.5857 20.2505 12.9999 20.2505H20.9999Z\" />\n      <path d=\"M14.4696 4.47021C14.7625 4.17732 15.2373 4.17732 15.5302 4.47021L19.5302 8.47021C19.8231 8.76311 19.8231 9.23787 19.5302 9.53076C19.2373 9.82366 18.7625 9.82366 18.4697 9.53076L14.4696 5.53076C14.1768 5.23787 14.1768 4.76311 14.4696 4.47021Z\" />\n      <path d=\"M21.25 4.81934C21.2501 4.27064 21.0315 3.74448 20.6435 3.35645C20.2557 2.96857 19.7301 2.75019 19.1816 2.75C18.6331 2.74993 18.1067 2.9678 17.7187 3.35547L4.37206 16.7051C4.2275 16.8492 4.11878 17.0266 4.05858 17.2217L4.05956 17.2227L2.87401 21.124L6.77831 19.9404C6.97404 19.8809 7.15295 19.7743 7.29784 19.6299L20.6435 6.28223C21.0315 5.89433 21.2499 5.36797 21.25 4.81934ZM22.75 4.81934C22.7499 5.70679 22.4191 6.56022 21.8262 7.21484L21.7041 7.34277L8.35643 20.6924C8.07755 20.9704 7.74278 21.1853 7.37499 21.3223L7.21483 21.376L2.86132 22.6963H2.85936C2.64338 22.7611 2.414 22.7669 2.1953 22.7119C1.97646 22.6569 1.77687 22.5432 1.61718 22.3838C1.45756 22.2244 1.34347 22.0253 1.28807 21.8066C1.23271 21.5879 1.23811 21.3578 1.30272 21.1416L1.3037 21.1387L2.62401 16.7861L2.62499 16.7842C2.75715 16.3533 2.99337 15.9618 3.31249 15.6436L16.6572 2.29492C17.3266 1.62571 18.2351 1.24988 19.1816 1.25C20.1281 1.25019 21.0359 1.62658 21.7051 2.2959C22.3741 2.96525 22.7501 3.87293 22.75 4.81934Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ErrorIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.2656 19.0137C21.2656 18.7944 21.2083 18.5786 21.0986 18.3887L21.0967 18.3857L13.0967 4.38574L13.0957 4.38379C12.9867 4.1915 12.8286 4.03124 12.6377 3.91992C12.4467 3.8086 12.2289 3.75 12.0078 3.75C11.7868 3.75003 11.5699 3.8087 11.3789 3.91992C11.1879 4.03123 11.0299 4.19146 10.9209 4.38379L10.919 4.38574L2.91895 18.3857L2.91798 18.3887C2.8078 18.5795 2.74954 18.7963 2.75001 19.0166C2.75049 19.2368 2.80902 19.4533 2.91993 19.6436C3.03089 19.8338 3.19043 19.9917 3.38184 20.1006C3.57344 20.2095 3.79136 20.2657 4.01173 20.2637H20.0176L20.1807 20.2529C20.3427 20.2314 20.4992 20.178 20.6416 20.0957C20.8313 19.986 20.9891 19.8285 21.0986 19.6387C21.2082 19.4487 21.2657 19.233 21.2656 19.0137ZM22.7656 19.0137C22.7657 19.496 22.6394 19.9699 22.3984 20.3877C22.1574 20.8057 21.8102 21.153 21.3926 21.3945C20.975 21.636 20.501 21.7632 20.0186 21.7637H4.01758C3.53523 21.7668 3.06006 21.6427 2.64063 21.4043C2.21937 21.1647 1.8692 20.818 1.62501 20.3994C1.38079 19.9808 1.25116 19.5052 1.25001 19.0205C1.24893 18.5357 1.37573 18.0585 1.61817 17.6387L9.61719 3.6416C9.85693 3.21967 10.2038 2.86842 10.6231 2.62402C11.0433 2.37914 11.5214 2.25003 12.0078 2.25C12.4943 2.25 12.9723 2.37911 13.3926 2.62402C13.8119 2.8684 14.1587 3.21965 14.3984 3.6416L22.3975 17.6387C22.6387 18.0565 22.7655 18.5312 22.7656 19.0137Z\" />\n      <path d=\"M11 12.9957L11.018 9.0094C11.0205 8.45712 11.4702 8.01143 12.0225 8.01393C12.5748 8.01642 13.0205 8.46615 13.018 9.01843L13 13.0047C12.9974 13.5569 12.5477 14.0027 11.9955 14.0002C11.4433 13.9977 10.9976 13.5479 11 12.9957Z\" />\n      <path d=\"M12.0278 15.7639C12.7181 15.7639 13.2778 16.3236 13.2778 17.0139C13.2778 17.7043 12.7181 18.2639 12.0278 18.2639H12.018C11.3276 18.2639 10.768 17.7043 10.768 17.0139C10.768 16.3236 11.3276 15.7639 12.018 15.7639H12.0278Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ExclaimIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M11 13L11 6C11 5.44772 11.4477 5 12 5C12.5523 5 13 5.44771 13 6L13 13C13 13.5523 12.5523 14 12 14C11.4478 14 11 13.5523 11 13Z\" />\n      <path d=\"M12.0098 16.25C12.7001 16.25 13.2598 16.8096 13.2598 17.5C13.2598 18.1904 12.7001 18.75 12.0098 18.75H12C11.3096 18.75 10.75 18.1904 10.75 17.5C10.75 16.8096 11.3096 16.25 12 16.25H12.0098Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ExpandIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M9.46973 13.4697C9.76262 13.1768 10.2374 13.1768 10.5303 13.4697C10.8232 13.7626 10.8232 14.2374 10.5303 14.5303L4.81055 20.25H9C9.41421 20.25 9.75 20.5858 9.75 21C9.75 21.4142 9.41421 21.75 9 21.75H3C2.58579 21.75 2.25 21.4142 2.25 21V15C2.25 14.5858 2.58579 14.25 3 14.25C3.41421 14.25 3.75 14.5858 3.75 15V19.1895L9.46973 13.4697ZM21.75 9C21.75 9.41421 21.4142 9.75 21 9.75C20.5858 9.75 20.25 9.41421 20.25 9V4.81055L14.5303 10.5303C14.2374 10.8232 13.7626 10.8232 13.4697 10.5303C13.1768 10.2374 13.1768 9.76262 13.4697 9.46973L19.1895 3.75H15C14.5858 3.75 14.25 3.41421 14.25 3C14.25 2.58579 14.5858 2.25 15 2.25H21C21.4142 2.25 21.75 2.58579 21.75 3V9Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FacebookIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.625 2.625H3.375C2.96016 2.625 2.625 2.96016 2.625 3.375V20.625C2.625 21.0398 2.96016 21.375 3.375 21.375H20.625C21.0398 21.375 21.375 21.0398 21.375 20.625V3.375C21.375 2.96016 21.0398 2.625 20.625 2.625ZM18.4594 8.09766H16.9617C15.7875 8.09766 15.5602 8.65547 15.5602 9.47578V11.2828H18.3633L17.9977 14.1117H15.5602V21.375H12.6375V14.1141H10.193V11.2828H12.6375V9.19687C12.6375 6.77578 14.1164 5.45625 16.2773 5.45625C17.3133 5.45625 18.2016 5.53359 18.4617 5.56875V8.09766H18.4594Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FamilyIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M13.5645 1.53506C14.2496 1.25125 15.004 1.17751 15.7314 1.32217C16.4589 1.46687 17.1269 1.82409 17.6514 2.34854C18.1758 2.87299 18.533 3.54103 18.6777 4.26846C18.8224 4.99586 18.7487 5.75026 18.4648 6.43545C18.2067 7.05851 17.784 7.59719 17.2461 7.99991C17.784 8.40263 18.2067 8.94131 18.4648 9.56436C18.7487 10.2496 18.8224 11.004 18.6777 11.7314C18.533 12.4588 18.1758 13.1268 17.6514 13.6513C17.1269 14.1757 16.4589 14.5329 15.7314 14.6776C15.004 14.8223 14.2496 14.7486 13.5645 14.4648C12.9414 14.2066 12.4027 13.7839 12 13.246C11.5973 13.7839 11.0586 14.2066 10.4355 14.4648C9.75035 14.7486 8.99595 14.8223 8.26855 14.6776C7.54113 14.5329 6.87308 14.1757 6.34863 13.6513C5.82419 13.1268 5.46696 12.4588 5.32227 11.7314C5.1776 11.004 5.25134 10.2496 5.53516 9.56436C5.7932 8.94155 6.21532 8.40258 6.75293 7.99991C6.21532 7.59724 5.7932 7.05827 5.53516 6.43545C5.25134 5.75026 5.1776 4.99586 5.32227 4.26846C5.46696 3.54103 5.82419 2.87299 6.34863 2.34854C6.87308 1.82409 7.54113 1.46687 8.26855 1.32217C8.99595 1.1775 9.75035 1.25125 10.4355 1.53506C11.0584 1.79311 11.5973 2.21523 12 2.75284C12.4027 2.21523 12.9416 1.79311 13.5645 1.53506ZM11.25 5.99991V4.99991C11.25 4.55496 11.1183 4.11988 10.8711 3.74991C10.6239 3.37993 10.2724 3.09111 9.86133 2.92081C9.45035 2.75058 8.99782 2.7062 8.56152 2.79288C8.12507 2.87969 7.72385 3.09442 7.40918 3.40909C7.09451 3.72376 6.87979 4.12497 6.79297 4.56143C6.70629 4.99773 6.75067 5.45026 6.9209 5.86124C7.0912 6.27232 7.38002 6.62379 7.75 6.871C8.11998 7.11817 8.55505 7.24991 9 7.24991H10C10.4142 7.24991 10.75 7.5857 10.75 7.99991C10.75 8.41412 10.4142 8.74991 10 8.74991H9C8.55505 8.74991 8.11998 8.88165 7.75 9.12881C7.38002 9.37602 7.0912 9.7275 6.9209 10.1386C6.75067 10.5496 6.70629 11.0021 6.79297 11.4384C6.87979 11.8748 7.09451 12.2761 7.40918 12.5907C7.72385 12.9054 8.12507 13.1201 8.56152 13.2069C8.99782 13.2936 9.45035 13.2492 9.86133 13.079C10.2724 12.9087 10.6239 12.6199 10.8711 12.2499C11.1183 11.8799 11.25 11.4449 11.25 10.9999V9.99991C11.25 9.58569 11.5858 9.24991 12 9.24991C12.4142 9.24991 12.75 9.58569 12.75 9.99991V10.9999C12.75 11.4449 12.8817 11.8799 13.1289 12.2499C13.3761 12.6199 13.7276 12.9087 14.1387 13.079C14.5496 13.2492 15.0022 13.2936 15.4385 13.2069C15.8749 13.1201 16.2762 12.9054 16.5908 12.5907C16.9055 12.2761 17.1202 11.8748 17.207 11.4384C17.2937 11.0021 17.2493 10.5496 17.0791 10.1386C16.9088 9.7275 16.62 9.37602 16.25 9.12881C15.88 8.88165 15.4449 8.74991 15 8.74991H14C13.5858 8.74991 13.25 8.41412 13.25 7.99991C13.25 7.5857 13.5858 7.24991 14 7.24991H15C15.4449 7.24991 15.88 7.11817 16.25 6.871C16.62 6.62379 16.9088 6.27232 17.0791 5.86124C17.2493 5.45026 17.2937 4.99773 17.207 4.56143C17.1202 4.12497 16.9055 3.72376 16.5908 3.40909C16.2762 3.09442 15.8749 2.87969 15.4385 2.79288C15.0022 2.7062 14.5496 2.75058 14.1387 2.92081C13.7276 3.09111 13.3761 3.37993 13.1289 3.74991C12.8817 4.11988 12.75 4.55496 12.75 4.99991V5.99991C12.75 6.41412 12.4142 6.74991 12 6.74991C11.5858 6.74991 11.25 6.41412 11.25 5.99991Z\" />\n      <path d=\"M13.25 7.99991C13.25 7.30955 12.6904 6.74991 12 6.74991C11.3096 6.74991 10.75 7.30955 10.75 7.99991C10.75 8.69026 11.3096 9.24991 12 9.24991C12.6904 9.24991 13.25 8.69026 13.25 7.99991ZM14.75 7.99988C14.75 9.51866 13.5188 10.7499 12 10.7499C10.4812 10.7499 9.25 9.51866 9.25 7.99988C9.25 6.48109 10.4812 5.24988 12 5.24988C13.5188 5.24988 14.75 6.48109 14.75 7.99988Z\" />\n      <path d=\"M11.25 21.9999L11.25 9.99991C11.25 9.58569 11.5858 9.24991 12 9.24991C12.4142 9.24991 12.75 9.58569 12.75 9.99991V21.9999C12.75 22.4141 12.4142 22.7499 12 22.7499C11.5858 22.7499 11.25 22.4141 11.25 21.9999Z\" />\n      <path d=\"M19 16.2499C19.4142 16.2499 19.75 16.5857 19.75 16.9999C19.75 18.9109 18.9303 20.3949 17.4971 21.37C16.1014 22.3195 14.1827 22.7499 12 22.7499C11.5858 22.7499 11.25 22.4141 11.25 21.9999C11.25 20.0888 12.0697 18.6048 13.5029 17.6298C14.8986 16.6803 16.8173 16.2499 19 16.2499ZM18.1855 17.7733C16.5539 17.8682 15.2547 18.2523 14.3467 18.87C13.5252 19.4289 12.9892 20.1999 12.8135 21.2255C14.4456 21.1307 15.7451 20.7476 16.6533 20.1298C17.475 19.5707 18.01 18.7992 18.1855 17.7733Z\" />\n      <path d=\"M5 16.2499C7.18267 16.2499 9.10143 16.6803 10.4971 17.6298C11.9303 18.6048 12.75 20.0888 12.75 21.9999C12.75 22.4141 12.4142 22.7499 12 22.7499C9.81733 22.7499 7.89857 22.3195 6.50293 21.37C5.06968 20.3949 4.25 18.9109 4.25 16.9999C4.25 16.5857 4.58579 16.2499 5 16.2499ZM5.81348 17.7733C5.98899 18.7993 6.52491 19.5707 7.34668 20.1298C8.25471 20.7475 9.55392 21.1306 11.1855 21.2255C11.0098 20.2 10.4748 19.4289 9.65332 18.87C8.7451 18.2521 7.44559 17.8681 5.81348 17.7733Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FeedbackIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 5C21.25 4.66848 21.1182 4.35063 20.8838 4.11621C20.6494 3.88179 20.3315 3.75 20 3.75H4C3.66848 3.75 3.35063 3.88179 3.11621 4.11621C2.88179 4.35063 2.75 4.66848 2.75 5V21.1895L4.88379 19.0557C5.39938 18.54 6.09891 18.2502 6.82812 18.25H20C20.3315 18.25 20.6494 18.1182 20.8838 17.8838C21.1182 17.6494 21.25 17.3315 21.25 17V5ZM12.0098 14.25C12.424 14.25 12.7598 14.5858 12.7598 15C12.7598 15.4142 12.424 15.75 12.0098 15.75H12C11.5858 15.75 11.25 15.4142 11.25 15C11.25 14.5858 11.5858 14.25 12 14.25H12.0098ZM11.25 11V7C11.25 6.58579 11.5858 6.25 12 6.25C12.4142 6.25 12.75 6.58579 12.75 7V11C12.75 11.4142 12.4142 11.75 12 11.75C11.5858 11.75 11.25 11.4142 11.25 11ZM22.75 17C22.75 17.7293 22.4601 18.4286 21.9443 18.9443C21.4286 19.4601 20.7293 19.75 20 19.75H6.82812C6.5381 19.7501 6.2585 19.851 6.03613 20.0332L5.94434 20.1162L3.74219 22.3184C3.53809 22.5224 3.27816 22.6614 2.99512 22.7178C2.71194 22.7741 2.41811 22.7452 2.15137 22.6348C1.88461 22.5243 1.65652 22.3367 1.49609 22.0967C1.35576 21.8866 1.27244 21.6443 1.25391 21.3936L1.25 21.2861V5C1.25 4.27065 1.53994 3.57139 2.05566 3.05566C2.57139 2.53994 3.27065 2.25 4 2.25H20C20.7293 2.25 21.4286 2.53994 21.9443 3.05566C22.4601 3.57139 22.75 4.27065 22.75 5V17Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FileIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M3.25 20V4C3.25 3.27066 3.53994 2.57139 4.05566 2.05566C4.57139 1.53994 5.27066 1.25 6 1.25H14V1.25098C14.4151 1.25046 14.8265 1.33136 15.21 1.49023C15.5932 1.6491 15.9414 1.88199 16.2344 2.17578L19.8203 5.76172C20.1154 6.05507 20.3503 6.40474 20.5098 6.78906C20.669 7.17288 20.7505 7.58447 20.75 8V20C20.75 20.7293 20.4601 21.4286 19.9443 21.9443C19.4286 22.4601 18.7293 22.75 18 22.75H6C5.27065 22.75 4.57139 22.4601 4.05566 21.9443C3.53994 21.4286 3.25 20.7293 3.25 20ZM14.75 7C14.75 7.0663 14.7764 7.12987 14.8232 7.17676C14.8701 7.22364 14.9337 7.25 15 7.25H19.0703C18.991 7.0937 18.8883 6.95015 18.7637 6.82617L15.1729 3.23535C15.0491 3.11116 14.9059 3.00878 14.75 2.92969V7ZM4.75 20C4.75 20.3315 4.88179 20.6494 5.11621 20.8838C5.35063 21.1182 5.66848 21.25 6 21.25H18C18.3315 21.25 18.6494 21.1182 18.8838 20.8838C19.1182 20.6494 19.25 20.3315 19.25 20V8.75H15C14.5359 8.75 14.0909 8.56549 13.7627 8.2373C13.4345 7.90912 13.25 7.46413 13.25 7V2.75H6C5.66848 2.75 5.35063 2.88179 5.11621 3.11621C4.88179 3.35063 4.75 3.66848 4.75 4V20Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FileAddIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M3.25 20V4C3.25 3.27066 3.53994 2.57139 4.05566 2.05566C4.57139 1.53994 5.27066 1.25 6 1.25H14V1.25098C14.4151 1.2502 14.8263 1.33056 15.21 1.48926C15.5939 1.64814 15.9429 1.88158 16.2363 2.17578L19.8232 5.7627C20.1179 6.05627 20.3517 6.40573 20.5107 6.79004C20.6694 7.17367 20.7508 7.58485 20.75 8V13.3496C20.75 13.7638 20.4142 14.0996 20 14.0996C19.5858 14.0996 19.25 13.7638 19.25 13.3496V8.75H15C14.5359 8.75 14.0909 8.56549 13.7627 8.2373C13.4345 7.90912 13.25 7.46413 13.25 7V2.75H6C5.66848 2.75 5.35063 2.88179 5.11621 3.11621C4.88179 3.35063 4.75 3.66848 4.75 4V20C4.75 20.3315 4.88179 20.6494 5.11621 20.8838C5.35063 21.1182 5.66848 21.25 6 21.25H11.3496C11.7638 21.25 12.0996 21.5858 12.0996 22C12.0996 22.4142 11.7638 22.75 11.3496 22.75H6C5.27065 22.75 4.57139 22.4601 4.05566 21.9443C3.53994 21.4286 3.25 20.7293 3.25 20ZM16.25 22V19.75H14C13.5858 19.75 13.25 19.4142 13.25 19C13.25 18.5858 13.5858 18.25 14 18.25H16.25V16C16.25 15.5858 16.5858 15.25 17 15.25C17.4142 15.25 17.75 15.5858 17.75 16V18.25H20C20.4142 18.25 20.75 18.5858 20.75 19C20.75 19.4142 20.4142 19.75 20 19.75H17.75V22C17.75 22.4142 17.4142 22.75 17 22.75C16.5858 22.75 16.25 22.4142 16.25 22ZM14.75 7C14.75 7.0663 14.7764 7.12987 14.8232 7.17676C14.8701 7.22364 14.9337 7.25 15 7.25H19.0713C18.9921 7.09336 18.8894 6.94947 18.7646 6.8252L15.1748 3.23535C15.0505 3.11063 14.9066 3.00793 14.75 2.92871V7Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FileShieldedIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.75 9.79981V4.00001C20.75 3.27066 20.4601 2.57139 19.9443 2.05567C19.4286 1.53995 18.7293 1.25001 18 1.25001H10C9.58486 1.24923 9.17367 1.33057 8.79004 1.48926C8.40613 1.64814 8.05706 1.88158 7.76368 2.17579L4.17676 5.7627C3.88213 6.05627 3.6483 6.40573 3.48926 6.79004C3.33057 7.17367 3.24923 7.58485 3.25001 8.00001V20C3.25001 20.7293 3.53995 21.4286 4.05567 21.9443C4.57139 22.4601 5.27066 22.75 6.00001 22.75H10C10.4142 22.75 10.75 22.4142 10.75 22C10.75 21.5858 10.4142 21.25 10 21.25H6.00001C5.66849 21.25 5.35064 21.1182 5.11622 20.8838C4.8818 20.6494 4.75001 20.3315 4.75001 20V7.99805C4.74949 7.78031 4.79177 7.5645 4.87501 7.36329C4.95831 7.16198 5.08103 6.97897 5.23536 6.8252L8.8252 3.23536C8.97897 3.08103 9.16198 2.95831 9.36329 2.87501C9.56449 2.79177 9.78031 2.74949 9.99805 2.75001H18C18.3315 2.75001 18.6494 2.8818 18.8838 3.11622C19.1182 3.35064 19.25 3.66849 19.25 4.00001V9.79981C19.25 10.214 19.5858 10.5498 20 10.5498C20.4142 10.5498 20.75 10.214 20.75 9.79981Z\" />\n      <path d=\"M10.75 7.00001V2.00001C10.75 1.58579 10.4142 1.25001 10 1.25001C9.58579 1.25001 9.25 1.58579 9.25 2.00001V7.00001C9.25 7.06631 9.22364 7.12988 9.17676 7.17676C9.12987 7.22365 9.0663 7.25001 9 7.25001H4C3.58578 7.25001 3.25001 7.58579 3.25001 8.00001C3.25001 8.41422 3.58578 8.75001 4 8.75001H9C9.46413 8.75001 9.90911 8.5655 10.2373 8.23731C10.5655 7.90912 10.75 7.46414 10.75 7.00001Z\" />\n      <path d=\"M16.75 17V15C16.75 14.6685 16.8818 14.3506 17.1162 14.1162C17.3506 13.8818 17.6685 13.75 18 13.75C18.3315 13.75 18.6494 13.8818 18.8838 14.1162C19.1182 14.3506 19.25 14.6685 19.25 15V17C19.25 17.4142 19.5858 17.75 20 17.75C20.4142 17.75 20.75 17.4142 20.75 17V15C20.75 14.2707 20.4601 13.5714 19.9443 13.0557C19.4286 12.5399 18.7293 12.25 18 12.25C17.2707 12.25 16.5714 12.5399 16.0557 13.0557C15.5399 13.5714 15.25 14.2707 15.25 15V17C15.25 17.4142 15.5858 17.75 16 17.75C16.4142 17.75 16.75 17.4142 16.75 17Z\" />\n      <path d=\"M14.75 18C14.75 17.8619 14.8619 17.75 15 17.75H21C21.1381 17.75 21.25 17.8619 21.25 18V21C21.25 21.1381 21.1381 21.25 21 21.25H15C14.8619 21.25 14.75 21.1381 14.75 21V18ZM13.25 21C13.25 21.9665 14.0335 22.75 15 22.75H21C21.9665 22.75 22.75 21.9665 22.75 21V18C22.75 17.0335 21.9665 16.25 21 16.25H15C14.0335 16.25 13.25 17.0335 13.25 18V21Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FileSignedIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M3.25 4V20C3.25 20.7293 3.53994 21.4286 4.05566 21.9443C4.57139 22.4601 5.27065 22.75 6 22.75H18C18.7293 22.75 19.4286 22.4601 19.9443 21.9443C20.4601 21.4286 20.75 20.7293 20.75 20V8C20.7505 7.58448 20.669 7.17288 20.5098 6.78906C20.3503 6.40474 20.1154 6.05507 19.8203 5.76172L16.2344 2.17578C15.9414 1.88199 15.5932 1.64911 15.21 1.49024C14.8265 1.33136 14.4151 1.24949 14 1.25H6C5.27066 1.25 4.57139 1.53994 4.05566 2.05567C3.53994 2.57139 3.25 3.27066 3.25 4ZM14.8232 7.17676C14.7764 7.12988 14.75 7.0663 14.75 7V2.92969C14.9059 3.00878 15.0491 3.11116 15.1729 3.23535L18.7637 6.82617C18.8883 6.95016 18.991 7.0937 19.0703 7.25H15C14.9337 7.25 14.8701 7.22364 14.8232 7.17676ZM5.11621 20.8838C4.88179 20.6494 4.75 20.3315 4.75 20V4C4.75 3.66848 4.88179 3.35063 5.11621 3.11621C5.35063 2.88179 5.66848 2.75 6 2.75H13.25V7C13.25 7.46413 13.4345 7.90912 13.7627 8.23731C14.0909 8.5655 14.5359 8.75 15 8.75H19.25V20C19.25 20.3315 19.1182 20.6494 18.8838 20.8838C18.6494 21.1182 18.3315 21.25 18 21.25H6C5.66848 21.25 5.35063 21.1182 5.11621 20.8838Z\"\n      />\n      <path d=\"M12.2677 18.3259C12.2017 18.4626 12.1611 18.5952 12.0784 18.6976C11.9155 18.8992 11.6809 18.9615 11.4214 18.9141C11.1475 18.8641 11.0096 18.6801 10.946 18.4395C10.8422 18.0461 10.8806 17.6534 10.9595 17.2611C10.9989 17.0651 11.0117 16.8661 10.9608 16.6716C10.8526 16.2582 10.4197 15.9719 9.9773 16.0116C9.5374 16.0511 9.19245 16.4187 9.17626 16.8867C9.16356 17.2538 9.27434 17.6035 9.37794 17.9535C9.4858 18.3179 9.61728 18.6796 9.59538 19.0664C9.56212 19.6536 9.02574 20.0938 8.48247 19.9828C8.19526 19.9241 8.01268 19.7418 8.00056 19.5016C7.98924 19.2772 8.14898 19.09 8.42666 19.0019C8.46622 18.9893 8.50553 18.9761 8.55575 18.9597C8.4993 18.5739 8.38115 18.2126 8.27871 17.8477C8.11963 17.2811 8.06103 16.7199 8.2924 16.15C8.60242 15.3864 9.42647 14.9572 10.143 15.0034C11.1375 15.0675 11.861 15.6803 12.0135 16.5278C12.0424 16.6883 12.0619 16.8504 12.0896 17.0382C12.3657 16.942 12.6387 16.9027 12.9199 16.9392C13.2931 16.9875 13.6003 17.1513 13.8364 17.4228C13.927 17.5269 14.0064 17.5583 14.1476 17.5224C14.6506 17.3943 15.117 17.4676 15.5347 17.776C15.8983 18.0445 16.3318 18.0951 16.7729 18.1146C17.0261 18.1258 17.2815 18.1162 17.5324 18.1441C17.8301 18.1773 17.999 18.3773 18 18.6521C18.0009 18.9123 17.8337 19.1522 17.5619 19.1567C16.7419 19.1705 15.9135 19.1905 15.1637 18.785C15.1334 18.7686 15.0979 18.756 15.075 18.7328C14.7298 18.384 14.3624 18.4794 13.9797 18.6708C13.6645 18.8283 13.3838 18.7331 13.2242 18.432C13.2047 18.3952 13.1872 18.3569 13.174 18.3178C13.1018 18.1027 12.9678 17.9472 12.7123 17.9453C12.462 17.9435 12.3466 18.1078 12.2677 18.3259Z\" />\n      <path d=\"M10 7.5C10.2761 7.5 10.5 7.72386 10.5 8C10.5 8.27614 10.2761 8.5 10 8.5H7C6.72386 8.5 6.5 8.27614 6.5 8C6.5 7.72386 6.72386 7.5 7 7.5H10Z\" />\n      <path d=\"M12 10.5C12.2761 10.5 12.5 10.7239 12.5 11C12.5 11.2761 12.2761 11.5 12 11.5H7C6.72386 11.5 6.5 11.2761 6.5 11C6.5 10.7239 6.72386 10.5 7 10.5H12Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function FileTextIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M3.25 20V4C3.25 3.27066 3.53994 2.57139 4.05566 2.05566C4.57139 1.53994 5.27066 1.25 6 1.25H14V1.25098C14.4151 1.25046 14.8265 1.33136 15.21 1.49023C15.5932 1.6491 15.9414 1.88199 16.2344 2.17578L19.8203 5.76172C20.1154 6.05507 20.3503 6.40474 20.5098 6.78906C20.669 7.17288 20.7505 7.58447 20.75 8V20C20.75 20.7293 20.4601 21.4286 19.9443 21.9443C19.4286 22.4601 18.7293 22.75 18 22.75H6C5.27065 22.75 4.57139 22.4601 4.05566 21.9443C3.53994 21.4286 3.25 20.7293 3.25 20ZM16 16.25C16.4142 16.25 16.75 16.5858 16.75 17C16.75 17.4142 16.4142 17.75 16 17.75H8C7.58579 17.75 7.25 17.4142 7.25 17C7.25 16.5858 7.58579 16.25 8 16.25H16ZM16 12.25C16.4142 12.25 16.75 12.5858 16.75 13C16.75 13.4142 16.4142 13.75 16 13.75H8C7.58579 13.75 7.25 13.4142 7.25 13C7.25 12.5858 7.58579 12.25 8 12.25H16ZM10 8.25C10.4142 8.25 10.75 8.58579 10.75 9C10.75 9.41421 10.4142 9.75 10 9.75H8C7.58579 9.75 7.25 9.41421 7.25 9C7.25 8.58579 7.58579 8.25 8 8.25H10ZM14.75 7C14.75 7.0663 14.7764 7.12987 14.8232 7.17676C14.8701 7.22364 14.9337 7.25 15 7.25H19.0703C18.991 7.0937 18.8883 6.95015 18.7637 6.82617L15.1729 3.23535C15.0491 3.11116 14.9059 3.00878 14.75 2.92969V7ZM4.75 20C4.75 20.3315 4.88179 20.6494 5.11621 20.8838C5.35063 21.1182 5.66848 21.25 6 21.25H18C18.3315 21.25 18.6494 21.1182 18.8838 20.8838C19.1182 20.6494 19.25 20.3315 19.25 20V8.75H15C14.5359 8.75 14.0909 8.56549 13.7627 8.2373C13.4345 7.90912 13.25 7.46413 13.25 7V2.75H6C5.66848 2.75 5.35063 2.88179 5.11621 3.11621C4.88179 3.35063 4.75 3.66848 4.75 4V20Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function FilterIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M13.2621 13.7451C13.3171 13.1563 13.5606 12.5982 13.9603 12.1562L21.184 4.16699C21.216 4.13124 21.2369 4.08648 21.2445 4.03906C21.2521 3.99149 21.2455 3.94248 21.226 3.89844C21.2064 3.85446 21.1745 3.81734 21.1342 3.79102C21.1138 3.77775 21.0918 3.76758 21.0687 3.76074L20.9984 3.75H3.00038C2.95203 3.75002 2.9042 3.76368 2.86366 3.79004C2.82321 3.81638 2.79148 3.85432 2.77187 3.89844C2.75228 3.94253 2.74578 3.99141 2.75331 4.03906C2.76087 4.08648 2.78184 4.13123 2.81386 4.16699L10.0394 12.1562C10.4965 12.6615 10.7501 13.3187 10.7504 14V20C10.7504 20.0465 10.7631 20.0923 10.7875 20.1318C10.8118 20.1712 10.8467 20.2029 10.8881 20.2236L12.8871 21.2236C12.9252 21.2427 12.9686 21.2519 13.0111 21.25C13.0537 21.2481 13.095 21.2353 13.1312 21.2129C13.1675 21.1905 13.1974 21.1593 13.2182 21.1221C13.2389 21.0848 13.2504 21.0426 13.2504 21V14L13.2621 13.7451ZM14.7504 21L14.7357 21.2217C14.7076 21.4423 14.6375 21.6561 14.5287 21.8516C14.3835 22.1122 14.174 22.3323 13.9203 22.4893C13.6668 22.646 13.3773 22.7355 13.0795 22.749C12.7815 22.7625 12.485 22.6987 12.2182 22.5654L10.2172 21.5654C9.92656 21.4201 9.68193 21.1964 9.51113 20.9199C9.36167 20.6779 9.27381 20.4037 9.25429 20.1211L9.25038 20V14C9.25019 13.7292 9.16146 13.4671 9.00038 13.252L8.92714 13.1621L1.70155 5.17285C1.4748 4.92161 1.32513 4.60961 1.27187 4.27539C1.21862 3.9412 1.26337 3.59832 1.40077 3.28906C1.53816 2.97995 1.76273 2.71765 2.04628 2.5332C2.32992 2.34878 2.66109 2.25019 2.99941 2.25H21.0014L21.1283 2.25488C21.4218 2.27686 21.7058 2.37265 21.9535 2.53418C22.2367 2.71893 22.4611 2.98187 22.598 3.29102C22.735 3.60013 22.7793 3.94252 22.726 4.27637C22.6726 4.61024 22.5238 4.92184 22.2973 5.17285L15.0736 13.1621C14.8659 13.3917 14.7506 13.6904 14.7504 14V21Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function FilterListIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M22 4.25C22.4142 4.25 22.75 4.58579 22.75 5C22.75 5.41421 22.4142 5.75 22 5.75H2C1.58579 5.75 1.25 5.41421 1.25 5C1.25 4.58579 1.58579 4.25 2 4.25H22Z\" />\n      <path d=\"M18 11.25C18.4142 11.25 18.75 11.5858 18.75 12C18.75 12.4142 18.4142 12.75 18 12.75H6C5.58579 12.75 5.25 12.4142 5.25 12C5.25 11.5858 5.58579 11.25 6 11.25H18Z\" />\n      <path d=\"M15 18.25C15.4142 18.25 15.75 18.5858 15.75 19C15.75 19.4142 15.4142 19.75 15 19.75H9C8.58579 19.75 8.25 19.4142 8.25 19C8.25 18.5858 8.58579 18.25 9 18.25H15Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FindInPageIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M3.25 20V4.00001C3.25 3.27066 3.53994 2.57139 4.05566 2.05567C4.57139 1.53995 5.27066 1.25001 6 1.25001H14C14.4151 1.24923 14.8263 1.33057 15.21 1.48926C15.5939 1.64814 15.9429 1.88158 16.2363 2.17579L19.8242 5.7627C20.1186 6.05633 20.3519 6.40582 20.5107 6.79004C20.6693 7.17369 20.7509 7.58491 20.75 8.00001V11.25C20.75 11.6642 20.4142 12 20 12C19.5858 12 19.25 11.6642 19.25 11.25V8.75001H15C14.5359 8.75001 14.0909 8.5655 13.7627 8.23731C13.4345 7.90912 13.25 7.46413 13.25 7.00001V2.75001H6C5.66848 2.75001 5.35063 2.8818 5.11621 3.11622C4.88179 3.35064 4.75 3.66849 4.75 4.00001V20C4.75 20.3315 4.88179 20.6494 5.11621 20.8838C5.35063 21.1182 5.66848 21.25 6 21.25H11.0996C11.5138 21.25 11.8496 21.5858 11.8496 22C11.8496 22.4142 11.5138 22.75 11.0996 22.75H6C5.27065 22.75 4.57139 22.4601 4.05566 21.9443C3.53994 21.4286 3.25 20.7293 3.25 20ZM18.25 17C18.25 15.7574 17.2426 14.75 16 14.75C14.7574 14.75 13.75 15.7574 13.75 17C13.75 18.2426 14.7574 19.25 16 19.25C17.2426 19.25 18.25 18.2426 18.25 17ZM19.75 17C19.75 17.7643 19.5205 18.4746 19.1279 19.0674L21.5303 21.4697C21.8232 21.7626 21.8232 22.2374 21.5303 22.5303C21.2374 22.8232 20.7626 22.8232 20.4697 22.5303L18.0674 20.1279C17.4746 20.5205 16.7643 20.75 16 20.75C13.9289 20.75 12.25 19.0711 12.25 17C12.25 14.9289 13.9289 13.25 16 13.25C18.0711 13.25 19.75 14.9289 19.75 17ZM14.75 7.00001C14.75 7.06631 14.7764 7.12988 14.8232 7.17676C14.8701 7.22365 14.9337 7.25001 15 7.25001H19.0713C18.9922 7.09346 18.8901 6.94947 18.7656 6.8252L15.1748 3.23536C15.0505 3.11063 14.9066 3.00794 14.75 2.92872V7.00001Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FlickrIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19.8571 2H4.14286C2.95982 2 2 2.95982 2 4.14286V19.8571C2 21.0402 2.95982 22 4.14286 22H19.8571C21.0402 22 22 21.0402 22 19.8571V4.14286C22 2.95982 21.0402 2 19.8571 2ZM8.45089 14.8125C6.88393 14.8125 5.61607 13.5446 5.61607 11.9777C5.61607 10.4107 6.88393 9.14286 8.45089 9.14286C10.0179 9.14286 11.2857 10.4107 11.2857 11.9777C11.2857 13.5446 10.0179 14.8125 8.45089 14.8125ZM15.5491 14.8125C13.9821 14.8125 12.7143 13.5446 12.7143 11.9777C12.7143 10.4107 13.9821 9.14286 15.5491 9.14286C17.1161 9.14286 18.3839 10.4107 18.3839 11.9777C18.3839 13.5446 17.1161 14.8125 15.5491 14.8125Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FloppyDiskIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M2.25 19V5C2.25 4.27065 2.53994 3.57139 3.05566 3.05566C3.57139 2.53994 4.27065 2.25 5 2.25H15.2109L15.4805 2.26758C16.103 2.33795 16.6853 2.61956 17.1289 3.06934L20.9248 6.86426C21.4429 7.37193 21.7396 8.06379 21.75 8.78906V19C21.75 19.7293 21.4601 20.4286 20.9443 20.9443C20.4286 21.4601 19.7293 21.75 19 21.75H5C4.27065 21.75 3.57139 21.4601 3.05566 20.9443C2.53994 20.4286 2.25 19.7293 2.25 19ZM3.75 19C3.75 19.3315 3.88179 19.6494 4.11621 19.8838C4.35063 20.1182 4.66848 20.25 5 20.25H19C19.3315 20.25 19.6494 20.1182 19.8838 19.8838C20.1182 19.6494 20.25 19.3315 20.25 19V8.81055C20.2453 8.48089 20.1105 8.1663 19.875 7.93555L16.0645 4.125C15.8626 3.91902 15.5966 3.79005 15.3125 3.75781L15.1895 3.75H5C4.66848 3.75 4.35063 3.88179 4.11621 4.11621C3.88179 4.35063 3.75 4.66848 3.75 5V19Z\" />\n      <path d=\"M16.25 21V14C16.25 13.9337 16.2236 13.8701 16.1768 13.8232C16.1299 13.7764 16.0663 13.75 16 13.75H8C7.9337 13.75 7.87013 13.7764 7.82324 13.8232C7.77636 13.8701 7.75 13.9337 7.75 14V21C7.75 21.4142 7.41421 21.75 7 21.75C6.58579 21.75 6.25 21.4142 6.25 21V14C6.25 13.5359 6.43451 13.0909 6.7627 12.7627C7.09088 12.4345 7.53587 12.25 8 12.25H16C16.4641 12.25 16.9091 12.4345 17.2373 12.7627C17.5655 13.0909 17.75 13.5359 17.75 14V21C17.75 21.4142 17.4142 21.75 17 21.75C16.5858 21.75 16.25 21.4142 16.25 21Z\" />\n      <path d=\"M7.25 7V3C7.25 2.58579 7.58579 2.25 8 2.25C8.41421 2.25 8.75 2.58579 8.75 3V7C8.75 7.09594 8.78408 7.17125 8.82031 7.21289C8.83746 7.23249 8.85288 7.24209 8.86133 7.24609C8.8693 7.24983 8.87356 7.25 8.875 7.25H12C12.4142 7.25 12.75 7.58579 12.75 8C12.75 8.41421 12.4142 8.75 12 8.75H8.875C8.40925 8.75 7.98603 8.53789 7.69141 8.20117C7.39964 7.86767 7.25 7.43414 7.25 7Z\" />\n      <path d=\"M16.75 7V3.5C16.75 3.08579 16.4142 2.75 16 2.75C15.5858 2.75 15.25 3.08579 15.25 3.5V7C15.25 7.1188 15.2144 7.20634 15.1846 7.25H11C10.5858 7.25 10.25 7.58579 10.25 8C10.25 8.41421 10.5858 8.75 11 8.75H15.25C15.7287 8.75 16.1262 8.49536 16.3799 8.15723C16.6305 7.82308 16.75 7.40518 16.75 7Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FolderIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M1.25 18V5C1.25 4.27065 1.53994 3.57139 2.05566 3.05566C2.57139 2.53994 3.27065 2.25 4 2.25H7.92969L8.10059 2.25488C8.4968 2.27955 8.88373 2.39013 9.23438 2.5791C9.63266 2.79375 9.97172 3.10344 10.2217 3.48047L11.0312 4.68066L11.0361 4.6875C11.1511 4.86211 11.3086 5.00525 11.4932 5.10352C11.6776 5.20168 11.8838 5.25205 12.0928 5.25H20C20.7293 5.25 21.4286 5.53994 21.9443 6.05566C22.4601 6.57139 22.75 7.27065 22.75 8V18C22.75 18.7293 22.4601 19.4286 21.9443 19.9443C21.4286 20.4601 20.7293 20.75 20 20.75H4C3.27065 20.75 2.57139 20.4601 2.05566 19.9443C1.53994 19.4286 1.25 18.7293 1.25 18ZM2.75 18C2.75 18.3315 2.88179 18.6494 3.11621 18.8838C3.35063 19.1182 3.66848 19.25 4 19.25H20C20.3315 19.25 20.6494 19.1182 20.8838 18.8838C21.1182 18.6494 21.25 18.3315 21.25 18V8C21.25 7.66848 21.1182 7.35063 20.8838 7.11621C20.6788 6.9112 20.41 6.78436 20.124 6.75586L20 6.75H12.0996V6.74902C11.6425 6.75222 11.1917 6.64257 10.7881 6.42773C10.3821 6.21154 10.0361 5.89684 9.7832 5.5127V5.51172L8.97852 4.31934L8.97363 4.3125C8.85981 4.13967 8.70463 3.99759 8.52246 3.89941C8.38585 3.82583 8.23708 3.77881 8.08398 3.75977L7.92969 3.75H4C3.66848 3.75 3.35063 3.88179 3.11621 4.11621C2.88179 4.35063 2.75 4.66848 2.75 5V18Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FolderAddIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M1.25 18V5C1.25003 4.27069 1.53996 3.57137 2.05566 3.05566C2.57138 2.53997 3.27068 2.25 4 2.25H7.90039V2.25098C8.35749 2.24778 8.80834 2.35744 9.21191 2.57227C9.61539 2.78714 9.95939 3.09953 10.2119 3.48047L11.0215 4.68066L11.0264 4.6875C11.1402 4.86033 11.2954 5.00241 11.4775 5.10059C11.6597 5.19868 11.8635 5.24997 12.0703 5.25H20C20.7293 5.25 21.4286 5.53997 21.9443 6.05566C22.46 6.57137 22.75 7.27069 22.75 8V11.3496C22.75 11.7638 22.4142 12.0996 22 12.0996C21.5858 12.0996 21.25 11.7638 21.25 11.3496V8C21.25 7.66851 21.1182 7.35061 20.8838 7.11621C20.6494 6.88182 20.3315 6.75 20 6.75H12.0703C11.615 6.74993 11.1664 6.63689 10.7656 6.4209C10.3649 6.20491 10.0238 5.8929 9.77344 5.5127V5.51172L8.96875 4.31934L8.96387 4.3125C8.84889 4.13789 8.69136 3.99475 8.50684 3.89648C8.32239 3.79834 8.11615 3.74795 7.90723 3.75H4C3.6685 3.75 3.35063 3.88182 3.11621 4.11621C2.88181 4.35061 2.75003 4.66851 2.75 5V18C2.75 18.3315 2.88182 18.6494 3.11621 18.8838C3.35063 19.1182 3.66848 19.25 4 19.25H13.3496C13.7638 19.25 14.0996 19.5858 14.0996 20C14.0996 20.4142 13.7638 20.75 13.3496 20.75H4C3.27065 20.75 2.57139 20.4601 2.05566 19.9443C1.53997 19.4286 1.25 18.7293 1.25 18ZM18.25 20V17.75H16C15.5858 17.75 15.25 17.4142 15.25 17C15.2501 16.5858 15.5858 16.25 16 16.25H18.25V14C18.2501 13.5858 18.5858 13.25 19 13.25C19.4142 13.25 19.7499 13.5858 19.75 14V16.25H22C22.4142 16.25 22.7499 16.5858 22.75 17C22.75 17.4142 22.4142 17.75 22 17.75H19.75V20C19.75 20.4142 19.4142 20.75 19 20.75C18.5858 20.75 18.25 20.4142 18.25 20Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FolderShieldedIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M18 12.25C18.7293 12.25 19.4286 12.5399 19.9443 13.0557C20.4601 13.5714 20.75 14.2707 20.75 15V16.25H21C21.9665 16.25 22.75 17.0335 22.75 18V21C22.75 21.9665 21.9665 22.75 21 22.75H15C14.0335 22.75 13.25 21.9665 13.25 21V18C13.25 17.0335 14.0335 16.25 15 16.25H15.25V15C15.25 14.2707 15.5399 13.5714 16.0557 13.0557C16.5714 12.5399 17.2707 12.25 18 12.25ZM15 17.75C14.8619 17.75 14.75 17.8619 14.75 18V21C14.75 21.1381 14.8619 21.25 15 21.25H21C21.1381 21.25 21.25 21.1381 21.25 21V18C21.25 17.8619 21.1381 17.75 21 17.75H15ZM18 13.75C17.6685 13.75 17.3506 13.8818 17.1162 14.1162C16.8818 14.3506 16.75 14.6685 16.75 15V16.25H19.25V15C19.25 14.6685 19.1182 14.3506 18.8838 14.1162C18.6494 13.8818 18.3315 13.75 18 13.75Z\"\n      />\n      <path d=\"M7.90039 2.25098C8.35749 2.24778 8.80834 2.35744 9.21191 2.57227C9.61537 2.78713 9.95941 3.09954 10.2119 3.48047L11.0215 4.68066L11.0264 4.6875C11.1402 4.86029 11.2954 5.00243 11.4775 5.10059C11.6596 5.19867 11.8635 5.24997 12.0703 5.25H20C20.7293 5.25 21.4286 5.53997 21.9443 6.05566C22.46 6.57136 22.75 7.27072 22.75 8V10.5C22.7499 10.9142 22.4142 11.25 22 11.25C21.5858 11.25 21.2501 10.9142 21.25 10.5V8C21.25 7.66854 21.1181 7.3506 20.8838 7.11621C20.6494 6.88182 20.3315 6.75 20 6.75H12.0703C11.6151 6.74993 11.1664 6.63687 10.7656 6.4209C10.3649 6.20493 10.0238 5.89287 9.77344 5.5127L8.96875 4.31934L8.96387 4.3125C8.8489 4.13791 8.69134 3.99475 8.50684 3.89648C8.32239 3.79834 8.11615 3.74795 7.90723 3.75H4C3.6685 3.75 3.35063 3.88182 3.11621 4.11621C2.88185 4.3506 2.75003 4.66854 2.75 5V18C2.75003 18.3315 2.88185 18.6494 3.11621 18.8838C3.35063 19.1182 3.66851 19.25 4 19.25H10C10.4142 19.25 10.7499 19.5858 10.75 20C10.7499 20.4142 10.4142 20.75 10 20.75H4C3.27068 20.75 2.57138 20.46 2.05566 19.9443C1.54 19.4286 1.25003 18.7293 1.25 18V5C1.25003 4.27072 1.54 3.57136 2.05566 3.05566C2.57138 2.53997 3.27068 2.25 4 2.25L7.90039 2.25098Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FullscreenExitIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M7.25 21V18C7.25 17.6685 7.11821 17.3506 6.88379 17.1162C6.64937 16.8818 6.33152 16.75 6 16.75H3C2.58579 16.75 2.25 16.4142 2.25 16C2.25 15.5858 2.58579 15.25 3 15.25H6L6.27148 15.2637C6.90113 15.3261 7.49301 15.6043 7.94434 16.0557C8.46006 16.5714 8.75 17.2707 8.75 18V21C8.75 21.4142 8.41421 21.75 8 21.75C7.58579 21.75 7.25 21.4142 7.25 21ZM15.25 21V18C15.25 17.2707 15.5399 16.5714 16.0557 16.0557C16.5714 15.5399 17.2707 15.25 18 15.25H21C21.4142 15.25 21.75 15.5858 21.75 16C21.75 16.4142 21.4142 16.75 21 16.75H18C17.6685 16.75 17.3506 16.8818 17.1162 17.1162C16.8818 17.3506 16.75 17.6685 16.75 18V21C16.75 21.4142 16.4142 21.75 16 21.75C15.5858 21.75 15.25 21.4142 15.25 21ZM7.25 6V3C7.25 2.58579 7.58579 2.25 8 2.25C8.41421 2.25 8.75 2.58579 8.75 3V6C8.75 6.72935 8.46006 7.42861 7.94434 7.94434C7.42861 8.46006 6.72935 8.75 6 8.75H3C2.58579 8.75 2.25 8.41421 2.25 8C2.25 7.58579 2.58579 7.25 3 7.25H6L6.12402 7.24414C6.41001 7.21564 6.67878 7.0888 6.88379 6.88379C7.0888 6.67878 7.21564 6.41001 7.24414 6.12402L7.25 6ZM15.25 6V3C15.25 2.58579 15.5858 2.25 16 2.25C16.4142 2.25 16.75 2.58579 16.75 3V6C16.75 6.33152 16.8818 6.64937 17.1162 6.88379C17.3506 7.11821 17.6685 7.25 18 7.25H21C21.4142 7.25 21.75 7.58579 21.75 8C21.75 8.41421 21.4142 8.75 21 8.75H18C17.2707 8.75 16.5714 8.46006 16.0557 7.94434C15.6043 7.49301 15.3261 6.90113 15.2637 6.27148L15.25 6Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FullscreenIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M2.25 19V16C2.25 15.5858 2.58579 15.25 3 15.25C3.41421 15.25 3.75 15.5858 3.75 16V19C3.75 19.3315 3.88179 19.6494 4.11621 19.8838C4.35063 20.1182 4.66848 20.25 5 20.25H8C8.41421 20.25 8.75 20.5858 8.75 21C8.75 21.4142 8.41421 21.75 8 21.75H5C4.27065 21.75 3.57139 21.4601 3.05566 20.9443C2.53994 20.4286 2.25 19.7293 2.25 19ZM20.25 19V16C20.25 15.5858 20.5858 15.25 21 15.25C21.4142 15.25 21.75 15.5858 21.75 16V19C21.75 19.7293 21.4601 20.4286 20.9443 20.9443C20.4286 21.4601 19.7293 21.75 19 21.75H16C15.5858 21.75 15.25 21.4142 15.25 21C15.25 20.5858 15.5858 20.25 16 20.25H19C19.3315 20.25 19.6494 20.1182 19.8838 19.8838C20.1182 19.6494 20.25 19.3315 20.25 19ZM2.25 8V5C2.25 4.27065 2.53994 3.57139 3.05566 3.05566C3.57139 2.53994 4.27065 2.25 5 2.25H8C8.41421 2.25 8.75 2.58579 8.75 3C8.75 3.41421 8.41421 3.75 8 3.75H5C4.66848 3.75 4.35063 3.88179 4.11621 4.11621C3.88179 4.35063 3.75 4.66848 3.75 5V8C3.75 8.41421 3.41421 8.75 3 8.75C2.58579 8.75 2.25 8.41421 2.25 8ZM20.25 8V5C20.25 4.66848 20.1182 4.35063 19.8838 4.11621C19.6494 3.88179 19.3315 3.75 19 3.75H16C15.5858 3.75 15.25 3.41421 15.25 3C15.25 2.58579 15.5858 2.25 16 2.25H19C19.7293 2.25 20.4286 2.53994 20.9443 3.05566C21.4601 3.57139 21.75 4.27065 21.75 5V8C21.75 8.41421 21.4142 8.75 21 8.75C20.5858 8.75 20.25 8.41421 20.25 8Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function GavelIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M14 20.2499C14.4142 20.2499 14.75 20.5857 14.75 20.9999C14.75 21.4142 14.4142 21.7499 14 21.7499H3C2.58579 21.7499 2.25 21.4142 2.25 20.9999C2.25 20.5857 2.58579 20.2499 3 20.2499H14Z\" />\n      <path d=\"M11.6728 2.55273C11.3756 2.26433 10.9009 2.27159 10.6124 2.56872C10.324 2.866 10.3311 3.3407 10.6284 3.62915L16.7539 9.57262C17.0511 9.86107 17.5259 9.85391 17.8143 9.55663C18.1026 9.25935 18.0955 8.78461 17.7983 8.49621L11.6728 2.55273Z\" />\n      <path d=\"M14.0511 12.2004C13.7539 11.912 13.2791 11.9193 12.9907 12.2164C12.7022 12.5137 12.7094 12.9884 13.0067 13.2769L19.1321 19.2203C19.4294 19.5088 19.9041 19.5016 20.1926 19.2043C20.4809 18.9071 20.4738 18.4323 20.1766 18.1439L14.0511 12.2004Z\" />\n      <path d=\"M4.5225 9.92163C4.22527 9.63323 3.75053 9.64048 3.46208 9.93762C3.17363 10.2349 3.18079 10.7096 3.47807 10.998L9.60353 16.9415C9.9008 17.23 10.3755 17.2228 10.664 16.9255C10.9523 16.6282 10.9452 16.1535 10.648 15.8651L4.5225 9.92163Z\" />\n      <path d=\"M16.8239 8.56152C16.5288 8.27101 16.0536 8.2748 15.7629 8.56982L9.42096 15.0084C9.13039 15.3034 9.13347 15.7778 9.4282 16.0685C9.72324 16.3591 10.1985 16.3561 10.4892 16.0611L16.8322 9.62245C17.1227 9.32736 17.1189 8.85215 16.8239 8.56152Z\" />\n      <path d=\"M11.7574 3.6453C11.4591 3.35808 10.9839 3.36717 10.6966 3.6654L4.46362 10.1347C4.17626 10.433 4.18544 10.9081 4.48372 11.1955C4.78202 11.4828 5.25714 11.4737 5.5445 11.1754L11.7775 4.70607C12.0647 4.40777 12.0556 3.93263 11.7574 3.6453Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function GroupIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M15.25 21V19C15.25 18.138 14.9073 17.3116 14.2979 16.7021C13.7264 16.1307 12.9644 15.7937 12.1611 15.7539L12 15.75H6C5.13805 15.75 4.31164 16.0927 3.70215 16.7021C3.09266 17.3116 2.75 18.138 2.75 19V21C2.75 21.4142 2.41421 21.75 2 21.75C1.58579 21.75 1.25 21.4142 1.25 21V19C1.25 17.7402 1.7508 16.5324 2.6416 15.6416C3.5324 14.7508 4.74022 14.25 6 14.25H12C13.2598 14.25 14.4676 14.7508 15.3584 15.6416C16.2492 16.5324 16.75 17.7402 16.75 19V21C16.75 21.4142 16.4142 21.75 16 21.75C15.5858 21.75 15.25 21.4142 15.25 21Z\" />\n      <path d=\"M18.2461 7.00007C18.2461 6.2801 18.007 5.58021 17.5664 5.01081C17.1258 4.44152 16.5084 4.03424 15.8115 3.85359C15.4108 3.74949 15.1705 3.34037 15.2744 2.93952C15.3785 2.53877 15.7876 2.2985 16.1885 2.40241C17.2069 2.66651 18.109 3.26079 18.7529 4.09284C19.3969 4.92504 19.7461 5.94781 19.7461 7.00007C19.7461 8.0523 19.3969 9.07512 18.7529 9.9073C18.109 10.7393 17.2069 11.3336 16.1885 11.5977C15.7877 11.7016 15.3786 11.4613 15.2744 11.0606C15.1705 10.6597 15.4107 10.2496 15.8115 10.1456C16.5083 9.96493 17.1258 9.55857 17.5664 8.98933C18.007 8.41995 18.2461 7.72001 18.2461 7.00007Z\" />\n      <path d=\"M21.25 21.0001V19.0001C21.2494 18.2802 21.0094 17.5808 20.5684 17.0118C20.1272 16.4428 19.5096 16.0366 18.8125 15.8566C18.4115 15.753 18.1699 15.3435 18.2734 14.9425C18.377 14.5415 18.7865 14.2999 19.1875 14.4034C20.2065 14.6665 21.1091 15.2611 21.7539 16.0929C22.3986 16.9246 22.7491 17.9468 22.75 18.9991V21.0001C22.7499 21.4143 22.4142 21.7501 22 21.7501C21.5858 21.7501 21.2501 21.4143 21.25 21.0001Z\" />\n      <path d=\"M12.25 7C12.25 5.20507 10.7949 3.75 9 3.75C7.20507 3.75 5.75 5.20507 5.75 7C5.75 8.79493 7.20507 10.25 9 10.25C10.7949 10.25 12.25 8.79493 12.25 7ZM13.75 7C13.75 9.62335 11.6234 11.75 9 11.75C6.37665 11.75 4.25 9.62335 4.25 7C4.25 4.37665 6.37665 2.25 9 2.25C11.6234 2.25 13.75 4.37665 13.75 7Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function GuardianIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12.25 21V18.667C12.25 17.5522 11.9494 16.5173 11.457 15.7861C10.9654 15.0561 10.3749 14.7501 9.85742 14.75H5.14258C4.62508 14.7501 4.03464 15.0561 3.54297 15.7861C3.05061 16.5173 2.75 17.5522 2.75 18.667V21C2.75 21.4142 2.41421 21.75 2 21.75C1.58579 21.75 1.25 21.4142 1.25 21V18.667C1.25 17.3065 1.61245 15.9674 2.29883 14.9482C2.98581 13.9282 3.99318 13.2501 5.14258 13.25H9.85742C11.0068 13.2501 12.0142 13.9282 12.7012 14.9482C13.3876 15.9674 13.75 17.3065 13.75 18.667V21C13.75 21.4142 13.4142 21.75 13 21.75C12.5858 21.75 12.25 21.4142 12.25 21Z\" />\n      <path d=\"M21.25 21V19.667C21.25 19.0999 21.0794 18.5849 20.8145 18.2314C20.585 17.9255 20.325 17.7857 20.0957 17.7559L20 17.75H17C16.7495 17.75 16.4476 17.8821 16.1855 18.2314C15.9206 18.5849 15.75 19.0999 15.75 19.667V21C15.75 21.4142 15.4142 21.75 15 21.75C14.5858 21.75 14.25 21.4142 14.25 21V19.667C14.25 18.8199 14.5004 17.9777 14.9854 17.3311C15.4735 16.6802 16.1896 16.25 17 16.25H20C20.8104 16.25 21.5265 16.6802 22.0146 17.3311C22.4996 17.9777 22.75 18.8199 22.75 19.667V21C22.75 21.4142 22.4142 21.75 22 21.75C21.5858 21.75 21.25 21.4142 21.25 21Z\" />\n      <path d=\"M10.25 6.5C10.25 4.98122 9.01878 3.75 7.5 3.75C5.98122 3.75 4.75 4.98122 4.75 6.5C4.75 8.01878 5.98122 9.25 7.5 9.25C9.01878 9.25 10.25 8.01878 10.25 6.5ZM11.75 6.5C11.75 8.84721 9.84721 10.75 7.5 10.75C5.15279 10.75 3.25 8.84721 3.25 6.5C3.25 4.15279 5.15279 2.25 7.5 2.25C9.84721 2.25 11.75 4.15279 11.75 6.5Z\" />\n      <path d=\"M20.25 11.5C20.25 10.5335 19.4665 9.75 18.5 9.75C17.5335 9.75 16.75 10.5335 16.75 11.5C16.75 12.4665 17.5335 13.25 18.5 13.25C19.4665 13.25 20.25 12.4665 20.25 11.5ZM21.75 11.5C21.75 13.2949 20.2949 14.75 18.5 14.75C16.7051 14.75 15.25 13.2949 15.25 11.5C15.25 9.70507 16.7051 8.25 18.5 8.25C20.2949 8.25 21.75 9.70507 21.75 11.5Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function HelpIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C17.1086 21.25 21.25 17.1086 21.25 12C21.25 6.89137 17.1086 2.75 12 2.75C6.89137 2.75 2.75 6.89137 2.75 12ZM1.25 12C1.25 6.06294 6.06294 1.25 12 1.25C17.9371 1.25 22.75 6.06294 22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12Z\" />\n      <path d=\"M8.25 9C8.25 8.25845 8.46993 7.53361 8.88184 6.91699C9.29383 6.30039 9.87938 5.81901 10.5645 5.53516C11.2495 5.25152 12.0042 5.17764 12.7314 5.32226C13.4589 5.46695 14.1269 5.82417 14.6514 6.34863C15.1104 6.80766 15.4418 7.37644 15.6143 7.99902L15.6777 8.26855L15.7217 8.54199C15.8006 9.18309 15.7133 9.83587 15.4648 10.4355C15.181 11.1206 14.6996 11.7062 14.083 12.1182C13.6771 12.3893 13.2236 12.5741 12.75 12.6709V14C12.75 14.4142 12.4142 14.75 12 14.75C11.5858 14.75 11.25 14.4142 11.25 14V12C11.25 11.5858 11.5858 11.25 12 11.25C12.4449 11.25 12.88 11.1183 13.25 10.8711C13.62 10.6239 13.9088 10.2724 14.0791 9.86133L14.1367 9.70508C14.2581 9.33726 14.2829 8.94329 14.207 8.56152L14.168 8.39941C14.0645 8.02591 13.8662 7.68455 13.5908 7.40918C13.2761 7.0945 12.8749 6.87978 12.4385 6.79297C12.0022 6.70629 11.5496 6.75067 11.1387 6.9209C10.7276 7.09122 10.3761 7.38005 10.1289 7.75C9.88174 8.11999 9.75 8.55505 9.75 9C9.75 9.41421 9.41421 9.75 9 9.75C8.58579 9.75 8.25 9.41421 8.25 9Z\" />\n      <path d=\"M11.9968 16.3121C12.411 16.3121 12.7468 16.6478 12.7468 17.0621C12.7468 17.2215 12.6959 17.3683 12.6111 17.4898C12.6962 17.6114 12.7468 17.7588 12.7468 17.9185C12.7468 18.3327 12.411 18.6685 11.9968 18.6685C11.3464 18.6683 10.8191 18.1404 10.8191 17.4898C10.8193 16.8393 11.3465 16.3123 11.9968 16.3121Z\" />\n      <path d=\"M13.175 17.4898C13.175 18.1406 12.6475 18.6685 11.9968 18.6685C11.5826 18.6685 11.2473 18.3327 11.2473 17.9185C11.2473 17.7589 11.298 17.6114 11.383 17.4898C11.2983 17.3683 11.2473 17.2214 11.2473 17.0621C11.2473 16.6478 11.5826 16.3121 11.9968 16.3121C12.6473 16.3121 13.1748 16.8392 13.175 17.4898Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function HelpFilledIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M12 1.25C17.9371 1.25 22.75 6.06294 22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12C1.25 6.06294 6.06294 1.25 12 1.25ZM11.9971 16.3125C11.9687 16.3125 11.9406 16.3133 11.9131 16.3164C11.3019 16.3596 10.8196 16.868 10.8193 17.4902C10.8196 18.1135 11.3035 18.6222 11.916 18.6641L11.9209 18.665L11.9971 18.6689C12.0241 18.6689 12.0508 18.6669 12.0771 18.6641C12.6903 18.6229 13.1746 18.1139 13.1748 17.4902C13.1746 16.8675 12.6918 16.3589 12.0801 16.3164C12.0778 16.3162 12.0755 16.3157 12.0732 16.3154L11.9971 16.3125ZM12.7314 5.32227C12.0042 5.17764 11.2495 5.25152 10.5645 5.53516C9.87939 5.81901 9.29382 6.30039 8.88184 6.91699C8.46993 7.5336 8.25 8.25846 8.25 9C8.25002 9.4142 8.5858 9.75 9 9.75C9.4142 9.75 9.74998 9.4142 9.75 9C9.75 8.55506 9.88175 8.11998 10.1289 7.75C10.3761 7.38006 10.7276 7.09122 11.1387 6.9209C11.5496 6.75067 12.0022 6.70629 12.4385 6.79297C12.8749 6.87978 13.2761 7.0945 13.5908 7.40918C13.8662 7.68455 14.0645 8.02592 14.168 8.39941L14.207 8.56152C14.2829 8.94329 14.2581 9.33727 14.1367 9.70508L14.0791 9.86133C13.9088 10.2724 13.62 10.6239 13.25 10.8711C12.88 11.1183 12.4449 11.25 12 11.25C11.5858 11.25 11.25 11.5858 11.25 12V14C11.25 14.4142 11.5858 14.75 12 14.75C12.4142 14.75 12.75 14.4142 12.75 14V12.6709C13.2236 12.5741 13.6771 12.3893 14.083 12.1182C14.6996 11.7062 15.181 11.1206 15.4648 10.4355C15.7132 9.83588 15.8006 9.18308 15.7217 8.54199L15.6777 8.26855L15.6143 7.99902C15.4418 7.37645 15.1104 6.80765 14.6514 6.34863C14.1269 5.82418 13.4589 5.46695 12.7314 5.32227Z\"\n      />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function HomeIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M14.25 12.9995C14.2499 12.9334 14.2235 12.8695 14.1768 12.8228C14.1299 12.776 14.0662 12.7495 14 12.7495H10C9.93381 12.7495 9.8701 12.776 9.82324 12.8228C9.77647 12.8695 9.75013 12.9334 9.75 12.9995V20.2495H14.25V12.9995ZM21.75 18.9995C21.75 19.7289 21.4601 20.4291 20.9443 20.9448C20.4286 21.4604 19.7292 21.7495 19 21.7495H5C4.27077 21.7495 3.57136 21.4604 3.05566 20.9448C2.53994 20.4291 2.25 19.7289 2.25 18.9995V9.99951C2.25 9.59973 2.33759 9.20494 2.50586 8.84229C2.67423 8.47943 2.9191 8.15714 3.22461 7.89893L10.2207 1.90283L10.2246 1.89893C10.721 1.47943 11.3501 1.24951 12 1.24951C12.5686 1.24951 13.1213 1.42547 13.583 1.75049L13.7754 1.89893L13.7793 1.90283L20.7744 7.89893C21.0799 8.15715 21.3258 8.47941 21.4941 8.84229C21.6624 9.20494 21.75 9.59973 21.75 9.99951V18.9995ZM15.75 20.2495H19C19.3314 20.2495 19.6494 20.1185 19.8838 19.8843C20.1182 19.6499 20.25 19.331 20.25 18.9995V9.99951C20.25 9.81778 20.2103 9.63799 20.1338 9.47314C20.0573 9.3083 19.9455 9.16175 19.8066 9.04443L19.8027 9.0415L12.8027 3.0415V3.04053C12.5778 2.85226 12.2934 2.74951 12 2.74951C11.7063 2.74951 11.4213 2.85196 11.1963 3.04053L4.19727 9.0415L4.19336 9.04443C4.05455 9.16175 3.94274 9.3083 3.86621 9.47314C3.78972 9.638 3.75 9.81778 3.75 9.99951V18.9995C3.75 19.331 3.88179 19.6499 4.11621 19.8843C4.35061 20.1185 4.6686 20.2495 5 20.2495H8.25V12.9995C8.25013 12.5356 8.43462 12.0903 8.7627 11.7622C9.09086 11.4342 9.53598 11.2495 10 11.2495H14C14.464 11.2495 14.9091 11.4342 15.2373 11.7622C15.5654 12.0903 15.7499 12.5356 15.75 12.9995V20.2495Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function HourglassEmptyIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19 21.25C19.4142 21.25 19.75 21.5858 19.75 22C19.75 22.4142 19.4142 22.75 19 22.75H5C4.58579 22.75 4.25 22.4142 4.25 22C4.25 21.5858 4.58579 21.25 5 21.25H19Z\" />\n      <path d=\"M19 1.25C19.4142 1.25 19.75 1.58579 19.75 2C19.75 2.41421 19.4142 2.75 19 2.75H5C4.58579 2.75 4.25 2.41421 4.25 2C4.25 1.58579 4.58579 1.25 5 1.25H19Z\" />\n      <path d=\"M16.25 22V17.8281C16.2499 17.5381 16.149 17.2585 15.9668 17.0361L15.8838 16.9443L12 13.0605L8.11621 16.9443C7.88178 17.1787 7.75008 17.4966 7.75 17.8281V22C7.75 22.4142 7.41421 22.75 7 22.75C6.58579 22.75 6.25 22.4142 6.25 22V17.8281C6.25016 17.0989 6.53999 16.3994 7.05566 15.8838L11.4697 11.4697L11.5264 11.418C11.8209 11.1777 12.2557 11.1951 12.5303 11.4697L16.9443 15.8838C17.46 16.3994 17.7498 17.0989 17.75 17.8281V22C17.75 22.4142 17.4142 22.75 17 22.75C16.5858 22.75 16.25 22.4142 16.25 22Z\" />\n      <path d=\"M6.25 6.17188V2C6.25 1.58579 6.58579 1.25 7 1.25C7.41421 1.25 7.75 1.58579 7.75 2V6.17188L7.75586 6.29492C7.78424 6.58123 7.91096 6.85048 8.11621 7.05566L12 10.9395L15.8838 7.05566L15.9668 6.96387C16.1231 6.77313 16.2198 6.54033 16.2441 6.29492L16.25 6.17188V2C16.25 1.58579 16.5858 1.25 17 1.25C17.4142 1.25 17.75 1.58579 17.75 2V6.17188L17.7363 6.44434C17.6736 7.07359 17.3954 7.66517 16.9443 8.11621L12.5303 12.5303C12.3896 12.6709 12.1989 12.75 12 12.75C11.8011 12.75 11.6104 12.6709 11.4697 12.5303L7.05566 8.11621C6.60456 7.66517 6.32638 7.07359 6.26367 6.44434L6.25 6.17188Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ImageIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.25 15.3105L17.3838 12.4443C17.1494 12.21 16.8314 12.0781 16.5 12.0781C16.21 12.0781 15.9304 12.1792 15.708 12.3613L15.6162 12.4443L7.81055 20.25H19C19.6904 20.25 20.25 19.6904 20.25 19V15.3105ZM10.25 9C10.25 8.30964 9.69036 7.75 9 7.75C8.30964 7.75 7.75 8.30964 7.75 9C7.75 9.69036 8.30964 10.25 9 10.25C9.69036 10.25 10.25 9.69036 10.25 9ZM20.25 5C20.25 4.30964 19.6904 3.75 19 3.75H5C4.30964 3.75 3.75 4.30964 3.75 5V19C3.75 19.6904 4.30964 20.25 5 20.25H5.68945L14.5557 11.3838C15.0714 10.8682 15.7708 10.5781 16.5 10.5781C17.2292 10.5781 17.9286 10.8682 18.4443 11.3838L20.25 13.1895V5ZM11.75 9C11.75 10.5188 10.5188 11.75 9 11.75C7.48122 11.75 6.25 10.5188 6.25 9C6.25 7.48122 7.48122 6.25 9 6.25C10.5188 6.25 11.75 7.48122 11.75 9ZM21.75 19C21.75 20.5188 20.5188 21.75 19 21.75H5C3.48122 21.75 2.25 20.5188 2.25 19V5C2.25 3.48122 3.48122 2.25 5 2.25H19C20.5188 2.25 21.75 3.48122 21.75 5V19Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function InfoIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C17.1086 21.25 21.25 17.1086 21.25 12C21.25 6.89137 17.1086 2.75 12 2.75C6.89137 2.75 2.75 6.89137 2.75 12ZM1.25 12C1.25 6.06294 6.06294 1.25 12 1.25C17.9371 1.25 22.75 6.06294 22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12Z\" />\n      <path d=\"M13 12V16.5C13 17.0523 12.5523 17.5 12 17.5C11.4477 17.5 11 17.0523 11 16.5V12C11 11.4477 11.4477 11 12 11C12.5523 11 13 11.4477 13 12Z\" />\n      <path d=\"M12.0002 9.25C11.3099 9.25 10.7502 8.69035 10.7502 8C10.7502 7.30964 11.3099 6.75 12.0002 6.75H12.01C12.7004 6.75 13.26 7.30964 13.26 8C13.26 8.69035 12.7004 9.25 12.01 9.25H12.0002Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function InstagramIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12 7.19298C9.33983 7.19298 7.19296 9.33986 7.19296 12C7.19296 14.6602 9.33983 16.807 12 16.807C14.6601 16.807 16.807 14.6602 16.807 12C16.807 9.33986 14.6601 7.19298 12 7.19298ZM12 15.1242C10.2797 15.1242 8.87577 13.7203 8.87577 12C8.87577 10.2797 10.2797 8.87579 12 8.87579C13.7203 8.87579 15.1242 10.2797 15.1242 12C15.1242 13.7203 13.7203 15.1242 12 15.1242ZM17.0039 5.87579C16.3828 5.87579 15.8812 6.37736 15.8812 6.99845C15.8812 7.61954 16.3828 8.12111 17.0039 8.12111C17.625 8.12111 18.1266 7.62189 18.1266 6.99845C18.1267 6.85097 18.0978 6.7049 18.0415 6.56861C17.9851 6.43232 17.9024 6.30849 17.7981 6.2042C17.6939 6.09992 17.57 6.01723 17.4337 5.96088C17.2974 5.90452 17.1514 5.87561 17.0039 5.87579ZM21.3703 12C21.3703 10.7063 21.382 9.42423 21.3094 8.13283C21.2367 6.63283 20.8945 5.30158 19.7976 4.2047C18.6984 3.10548 17.3695 2.76564 15.8695 2.69298C14.5758 2.62033 13.2937 2.63204 12.0023 2.63204C10.7086 2.63204 9.42655 2.62033 8.13515 2.69298C6.63515 2.76564 5.3039 3.10783 4.20702 4.2047C3.1078 5.30392 2.76796 6.63283 2.6953 8.13283C2.62265 9.42658 2.63436 10.7086 2.63436 12C2.63436 13.2914 2.62265 14.5758 2.6953 15.8672C2.76796 17.3672 3.11015 18.6985 4.20702 19.7953C5.30624 20.8945 6.63515 21.2344 8.13515 21.307C9.4289 21.3797 10.7109 21.368 12.0023 21.368C13.2961 21.368 14.5781 21.3797 15.8695 21.307C17.3695 21.2344 18.7008 20.8922 19.7976 19.7953C20.8969 18.6961 21.2367 17.3672 21.3094 15.8672C21.3844 14.5758 21.3703 13.2938 21.3703 12ZM19.3078 17.5266C19.1367 17.9531 18.9305 18.2719 18.6 18.6C18.2695 18.9305 17.9531 19.1367 17.5266 19.3078C16.2937 19.7977 13.3664 19.6875 12 19.6875C10.6336 19.6875 7.7039 19.7977 6.47108 19.3102C6.04452 19.1391 5.72577 18.9328 5.39765 18.6024C5.06718 18.2719 4.86093 17.9555 4.68983 17.5289C4.20233 16.2938 4.31249 13.3664 4.31249 12C4.31249 10.6336 4.20233 7.70392 4.68983 6.47111C4.86093 6.04454 5.06718 5.72579 5.39765 5.39767C5.72811 5.06954 6.04452 4.86095 6.47108 4.68986C7.7039 4.20236 10.6336 4.31251 12 4.31251C13.3664 4.31251 16.2961 4.20236 17.5289 4.68986C17.9555 4.86095 18.2742 5.0672 18.6023 5.39767C18.9328 5.72814 19.1391 6.04454 19.3101 6.47111C19.7976 7.70392 19.6875 10.6336 19.6875 12C19.6875 13.3664 19.7976 16.2938 19.3078 17.5266Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function JordskifterettIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <circle cx=\"12\" cy=\"12\" r=\"6\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function JordskiftesakIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.2502 11V4.60449C21.2503 4.56466 21.2398 4.52482 21.22 4.48926C21.2 4.45363 21.1704 4.42276 21.134 4.40039C21.1015 4.3804 21.0644 4.36812 21.0256 4.36426L21.0247 4.36523C20.999 4.36966 20.965 4.37769 20.927 4.3877C20.89 4.39744 20.8553 4.4072 20.8303 4.41504C20.8233 4.41726 20.8168 4.41829 20.8118 4.41992L16.1692 6.13379C15.8033 6.30469 15.4046 6.39449 15.0002 6.39453C14.5746 6.39453 14.154 6.29631 13.7727 6.10742L9.5608 4.01953C9.38705 3.93352 9.19507 3.88871 9.00025 3.88867C8.80522 3.88867 8.61263 3.93338 8.43873 4.01953C8.42657 4.02555 8.41409 4.03175 8.40162 4.03711L2.9358 6.38281C2.89525 6.40355 2.86222 6.43482 2.83912 6.47168C2.81549 6.50955 2.80301 6.55321 2.80298 6.59668V19.002C2.8029 19.0419 2.8133 19.0815 2.83326 19.1172C2.85324 19.1529 2.88277 19.1837 2.91919 19.2061C2.95561 19.2284 2.99756 19.2412 3.04127 19.2432C3.08507 19.2452 3.12861 19.2359 3.16724 19.2168L3.24439 19.1846L7.82447 17.5234C8.19199 17.3507 8.59362 17.2607 9.00025 17.2607C9.37263 17.2608 9.74067 17.3361 10.0823 17.4814L10.2268 17.5479L10.2669 17.5693L13.3733 19.3496C13.7324 19.5557 13.8565 20.0138 13.6506 20.373C13.4446 20.7323 12.9865 20.8563 12.6272 20.6504L9.55103 18.8867C9.37988 18.8038 9.19142 18.7608 9.00025 18.7607C8.80521 18.7607 8.61263 18.8054 8.43873 18.8916C8.41361 18.904 8.38793 18.9153 8.36158 18.9248L3.75513 20.5947L3.75416 20.5938C3.50816 20.7011 3.24162 20.7544 2.97291 20.7422C2.6759 20.7286 2.38656 20.6402 2.13306 20.4844C1.87949 20.3285 1.67028 20.1097 1.52466 19.8496C1.37904 19.5895 1.30224 19.2964 1.30298 18.998V6.5957L1.30689 6.47461C1.3268 6.19243 1.41636 5.91862 1.56666 5.67773C1.73824 5.40291 1.9829 5.18176 2.27271 5.03809L2.30982 5.02051L7.80982 2.6582C8.18139 2.48084 8.58808 2.38867 9.00025 2.38867C9.42575 2.38871 9.84563 2.48695 10.2268 2.67578L14.4387 4.76367L14.5725 4.82031C14.7091 4.86934 14.854 4.89453 15.0002 4.89453C15.1951 4.89449 15.387 4.84972 15.5608 4.76367L15.634 4.73242L20.2932 3.01367C20.298 3.01189 20.303 3.00949 20.3079 3.00781H20.3098L20.3108 3.00684L20.3313 3C20.3437 2.99591 20.3607 2.99077 20.3811 2.98438C20.4218 2.9716 20.4794 2.95459 20.5442 2.9375C20.6429 2.91147 20.867 2.85467 21.0794 2.86426L21.3001 2.88867C21.5185 2.92651 21.729 3.00533 21.9192 3.12207C22.1726 3.27772 22.3829 3.49513 22.5286 3.75488C22.6742 4.01455 22.7505 4.30754 22.7502 4.60547V11C22.7502 11.4141 22.4144 11.7499 22.0002 11.75C21.586 11.75 21.2502 11.4142 21.2502 11Z\" />\n      <path d=\"M14.25 10.2472V6.00011C14.25 5.5859 14.5858 5.25011 15 5.25011C15.4142 5.25011 15.75 5.5859 15.75 6.00011V10.2472C15.75 10.6614 15.4142 10.9972 15 10.9972C14.5858 10.9972 14.25 10.6614 14.25 10.2472Z\" />\n      <path d=\"M16.75 20.764V14.764C16.75 14.0737 17.3096 13.514 18 13.514C18.6903 13.514 19.25 14.0737 19.25 14.764V20.764C19.25 21.4544 18.6903 22.014 18 22.014C17.3096 22.014 16.75 21.4544 16.75 20.764Z\" />\n      <path d=\"M8.25 17.5002V3.50019C8.25 3.08597 8.58578 2.75019 9 2.75019C9.41421 2.75019 9.75 3.08597 9.75 3.50019V17.5002C9.74995 17.9144 9.41418 18.2502 9 18.2502C8.58581 18.2502 8.25004 17.9144 8.25 17.5002Z\" />\n      <path d=\"M21 15.764C21 17.4209 19.6568 18.764 18 18.764C16.3431 18.764 15 17.4209 15 15.764C15 14.1072 16.3431 12.764 18 12.764C19.6568 12.764 21 14.1072 21 15.764Z\" />\n      <path d=\"M20 15.764C20 14.6595 19.1046 13.764 18 13.764C16.8954 13.764 16 14.6595 16 15.764C16 16.8686 16.8954 17.764 18 17.764V18.764C16.3431 18.764 15 17.4209 15 15.764C15 14.1072 16.3431 12.764 18 12.764C19.6568 12.764 21 14.1072 21 15.764C21 17.4209 19.6568 18.764 18 18.764V17.764C19.1046 17.764 20 16.8686 20 15.764Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function KeyIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.4697 1.47003C20.7626 1.17726 21.2374 1.17735 21.5303 1.47003C21.8228 1.76293 21.823 2.23778 21.5303 2.53058L20.0605 4.0003L21.8359 5.77569C22.1563 6.10277 22.3359 6.54246 22.3359 7.0003L22.3271 7.1712C22.2883 7.5664 22.1162 7.93883 21.8359 8.22491L19.7246 10.3362C19.3975 10.6566 18.9578 10.8362 18.5 10.8362C18.0422 10.8362 17.6025 10.6566 17.2754 10.3362L15.5 8.56085L12.416 11.6439C13.2505 12.7062 13.75 14.0446 13.75 15.5003C13.7499 18.952 10.9517 21.7503 7.5 21.7503C4.0483 21.7503 1.25013 18.952 1.25 15.5003C1.25 12.0485 4.04822 9.2503 7.5 9.2503C8.95536 9.2503 10.2932 9.74918 11.3555 10.5833L20.4697 1.47003ZM7.5 10.7503C4.87665 10.7503 2.75 12.877 2.75 15.5003C2.75013 18.1235 4.87673 20.2503 7.5 20.2503C10.1233 20.2503 12.2499 18.1235 12.25 15.5003C12.25 12.877 10.1234 10.7503 7.5 10.7503ZM16.5605 7.5003L18.3252 9.26495L18.3633 9.29523C18.4036 9.32159 18.4511 9.33624 18.5 9.33624C18.5653 9.33624 18.6281 9.31054 18.6748 9.26495L20.7646 7.17511C20.7987 7.14026 20.8216 7.09624 20.8311 7.04913L20.8359 7.0003C20.8359 6.95142 20.8213 6.90393 20.7949 6.86358L20.7646 6.8255L19 5.06085L16.5605 7.5003Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function LagmannsrettIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <rect x=\"4\" y=\"10\" width=\"15.65\" height=\"3.9125\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function LanguageIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12 1.25C17.9371 1.25 22.75 6.06294 22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12C1.25 6.06294 6.06294 1.25 12 1.25ZM2.7832 12.75C3.11803 16.9214 6.2176 20.3097 10.25 21.082C8.45966 18.6673 7.41711 15.7689 7.26855 12.75H2.7832ZM16.7314 12.75C16.5829 15.7691 15.5396 18.6672 13.749 21.082C17.7819 20.31 20.8819 16.9217 21.2168 12.75H16.7314ZM8.77051 12.75C8.93365 15.7383 10.0686 18.5914 12 20.876C13.9314 18.5914 15.0664 15.7383 15.2295 12.75H8.77051ZM13.749 2.91699C15.5399 5.33197 16.5829 8.23061 16.7314 11.25H21.2168C20.8819 7.07821 17.782 3.68894 13.749 2.91699ZM12 3.12305C10.0683 5.40772 8.93366 8.26149 8.77051 11.25H15.2295C15.0663 8.26149 13.9317 5.40772 12 3.12305ZM10.25 2.91699C6.21751 3.68929 3.11803 7.07853 2.7832 11.25H7.26855C7.41712 8.23081 8.45937 5.33188 10.25 2.91699Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function LinkIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M1.25 12C1.25 10.475 1.85624 9.0129 2.93457 7.93457C4.0129 6.85624 5.47501 6.25 7 6.25H9C9.41421 6.25 9.75 6.58579 9.75 7C9.75 7.41421 9.41421 7.75 9 7.75H7C5.87283 7.75 4.79215 8.19809 3.99512 8.99512C3.19809 9.79215 2.75 10.8728 2.75 12C2.75 13.1272 3.19809 14.2079 3.99512 15.0049C4.79215 15.8019 5.87283 16.25 7 16.25H9C9.41421 16.25 9.75 16.5858 9.75 17C9.75 17.4142 9.41421 17.75 9 17.75H7C5.47501 17.75 4.0129 17.1438 2.93457 16.0654C1.85624 14.9871 1.25 13.525 1.25 12ZM21.25 12C21.25 10.8728 20.8019 9.79215 20.0049 8.99512C19.2577 8.24794 18.2613 7.80703 17.2109 7.75488L17 7.75H15C14.5858 7.75 14.25 7.41421 14.25 7C14.25 6.58579 14.5858 6.25 15 6.25H17C18.525 6.25 19.9871 6.85624 21.0654 7.93457C22.1438 9.0129 22.75 10.475 22.75 12C22.75 13.525 22.1438 14.9871 21.0654 16.0654C20.0545 17.0764 18.7063 17.6727 17.2852 17.7432L17 17.75H15C14.5858 17.75 14.25 17.4142 14.25 17C14.25 16.5858 14.5858 16.25 15 16.25H17C18.1272 16.25 19.2079 15.8019 20.0049 15.0049C20.8019 14.2079 21.25 13.1272 21.25 12ZM16 11.25C16.4142 11.25 16.75 11.5858 16.75 12C16.75 12.4142 16.4142 12.75 16 12.75H8C7.58579 12.75 7.25 12.4142 7.25 12C7.25 11.5858 7.58579 11.25 8 11.25H16Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function LinkedInIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M3 4.58737C3 4.16637 3.16724 3.76262 3.46493 3.46493C3.76262 3.16724 4.16637 3 4.58736 3H20.4109C20.6195 2.99966 20.8262 3.04047 21.019 3.12011C21.2119 3.19974 21.3871 3.31662 21.5347 3.46407C21.6823 3.61151 21.7994 3.78662 21.8792 3.97937C21.9591 4.17213 22.0001 4.37873 22 4.58737V20.4109C22.0002 20.6196 21.9593 20.8263 21.8796 21.0191C21.7999 21.2119 21.6829 21.3872 21.5354 21.5348C21.3879 21.6824 21.2127 21.7994 21.0199 21.8793C20.8271 21.9591 20.6204 22.0001 20.4118 22H4.58736C4.37884 22 4.17235 21.9589 3.97971 21.8791C3.78706 21.7993 3.61203 21.6823 3.46462 21.5348C3.31721 21.3873 3.2003 21.2122 3.12058 21.0195C3.04086 20.8268 2.99989 20.6203 3 20.4118V4.58737ZM10.5205 10.2442H13.0933V11.5362C13.4647 10.7935 14.4147 10.125 15.8423 10.125C18.5791 10.125 19.2277 11.6044 19.2277 14.3188V19.3469H16.458V14.9372C16.458 13.3913 16.0867 12.519 15.1436 12.519C13.8352 12.519 13.2911 13.4595 13.2911 14.9372V19.3469H10.5205V10.2442ZM5.77055 19.2286H8.54109V10.125H5.77055V19.2277V19.2286ZM8.9375 7.15582C8.94272 7.39304 8.90051 7.62891 8.81334 7.84959C8.72617 8.07027 8.5958 8.27132 8.42988 8.44094C8.26396 8.61055 8.06583 8.74532 7.84712 8.83733C7.62841 8.92933 7.39353 8.97673 7.15625 8.97673C6.91898 8.97673 6.68409 8.92933 6.46538 8.83733C6.24667 8.74532 6.04854 8.61055 5.88262 8.44094C5.7167 8.27132 5.58633 8.07027 5.49916 7.84959C5.41199 7.62891 5.36978 7.39304 5.375 7.15582C5.38525 6.69019 5.57742 6.24709 5.91036 5.92141C6.24329 5.59573 6.69051 5.41336 7.15625 5.41336C7.62199 5.41336 8.06921 5.59573 8.40214 5.92141C8.73508 6.24709 8.92725 6.69019 8.9375 7.15582Z\"\n      />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function LinkOffIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M1.25 11.9999C1.25 10.4749 1.85624 9.01285 2.93457 7.93451C3.63003 7.23905 4.48529 6.74116 5.41406 6.47455L1.46973 2.53022C1.17683 2.23732 1.17683 1.76256 1.46973 1.46967C1.76262 1.17678 2.23738 1.17678 2.53027 1.46967L22.5303 21.4697C22.8232 21.7626 22.8232 22.2373 22.5303 22.5302C22.2374 22.8231 21.7626 22.8231 21.4697 22.5302L11.6895 12.7499H8C7.58579 12.7499 7.25 12.4142 7.25 11.9999C7.25 11.5857 7.58579 11.2499 8 11.2499H10.1895L6.7002 7.76069C5.68259 7.83261 4.72118 8.269 3.99512 8.99506C3.19809 9.79209 2.75 10.8728 2.75 11.9999C2.75 13.1271 3.19809 14.2078 3.99512 15.0048C4.79215 15.8019 5.87283 16.2499 7 16.2499H9C9.41421 16.2499 9.75 16.5857 9.75 16.9999C9.75 17.4142 9.41421 17.7499 9 17.7499H7C5.47501 17.7499 4.0129 17.1437 2.93457 16.0654C1.85624 14.987 1.25 13.5249 1.25 11.9999ZM17 6.24994C18.0678 6.24994 19.1151 6.54694 20.0234 7.10834C20.9317 7.66974 21.6651 8.47361 22.1426 9.42865C22.6201 10.3838 22.8225 11.453 22.7266 12.5165C22.6306 13.58 22.2403 14.5959 21.5996 15.4501C21.351 15.7812 20.8811 15.848 20.5498 15.5996C20.2187 15.351 20.1519 14.881 20.4004 14.5497C20.8738 13.9184 21.1615 13.1677 21.2324 12.3818C21.3033 11.5958 21.1546 10.8054 20.8018 10.0996C20.4488 9.39361 19.9058 8.79965 19.2344 8.38471C18.563 7.96976 17.7893 7.74994 17 7.74994H15C14.5858 7.74994 14.25 7.41416 14.25 6.99994C14.25 6.58573 14.5858 6.24994 15 6.24994H17Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ListIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M6.75 6.5C7.19199 6.5 7.54395 6.14805 7.54395 5.70605C7.54395 5.26406 7.19199 4.91211 6.75 4.91211C6.30801 4.91211 5.95605 5.26406 5.95605 5.70605C5.95605 6.14805 6.30801 6.5 6.75 6.5Z\" />\n      <path d=\"M20 5C20.4142 5 20.75 5.33579 20.75 5.75C20.75 6.16421 20.4142 6.5 20 6.5H10C9.58579 6.5 9.25 6.16421 9.25 5.75C9.25 5.33579 9.58579 5 10 5H20Z\" />\n      <path d=\"M6.75 12.5C7.19199 12.5 7.54395 12.1481 7.54395 11.7061C7.54395 11.2641 7.19199 10.9121 6.75 10.9121C6.30801 10.9121 5.95605 11.2641 5.95605 11.7061C5.95605 12.1481 6.30801 12.5 6.75 12.5Z\" />\n      <path d=\"M20 11C20.4142 11 20.75 11.3358 20.75 11.75C20.75 12.1642 20.4142 12.5 20 12.5H10C9.58579 12.5 9.25 12.1642 9.25 11.75C9.25 11.3358 9.58579 11 10 11H20Z\" />\n      <path d=\"M6.75 18.5C7.19199 18.5 7.54395 18.1481 7.54395 17.7061C7.54395 17.2641 7.19199 16.9121 6.75 16.9121C6.30801 16.9121 5.95605 17.2641 5.95605 17.7061C5.95605 18.1481 6.30801 18.5 6.75 18.5Z\" />\n      <path d=\"M20 17C20.4142 17 20.75 17.3358 20.75 17.75C20.75 18.1642 20.4142 18.5 20 18.5H10C9.58579 18.5 9.25 18.1642 9.25 17.75C9.25 17.3358 9.58579 17 10 17H20Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function ListAltIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19.25 5C19.25 4.66848 19.1182 4.35063 18.8838 4.11621C18.6788 3.9112 18.41 3.78436 18.124 3.75586L18 3.75H6C5.66848 3.75 5.35063 3.88179 5.11621 4.11621C4.88179 4.35063 4.75 4.66848 4.75 5V19L4.75586 19.124C4.78436 19.41 4.9112 19.6788 5.11621 19.8838C5.35063 20.1182 5.66848 20.25 6 20.25H18C18.3315 20.25 18.6494 20.1182 18.8838 19.8838C19.1182 19.6494 19.25 19.3315 19.25 19V5ZM20.75 19C20.75 19.7293 20.4601 20.4286 19.9443 20.9443C19.4286 21.4601 18.7293 21.75 18 21.75H6C5.27065 21.75 4.57139 21.4601 4.05566 20.9443C3.53994 20.4286 3.25 19.7293 3.25 19V5C3.25 4.27065 3.53994 3.57139 4.05566 3.05566C4.57139 2.53994 5.27065 2.25 6 2.25H18C18.7293 2.25 19.4286 2.53994 19.9443 3.05566C20.4601 3.57139 20.75 4.27065 20.75 5V19Z\" />\n      <path d=\"M16 7.25C16.4142 7.25 16.75 7.58579 16.75 8C16.75 8.41421 16.4142 8.75 16 8.75H12C11.5858 8.75 11.25 8.41421 11.25 8C11.25 7.58579 11.5858 7.25 12 7.25H16Z\" />\n      <path d=\"M16 11.25C16.4142 11.25 16.75 11.5858 16.75 12C16.75 12.4142 16.4142 12.75 16 12.75H12C11.5858 12.75 11.25 12.4142 11.25 12C11.25 11.5858 11.5858 11.25 12 11.25H16Z\" />\n      <path d=\"M16 15.25C16.4142 15.25 16.75 15.5858 16.75 16C16.75 16.4142 16.4142 16.75 16 16.75H12C11.5858 16.75 11.25 16.4142 11.25 16C11.25 15.5858 11.5858 15.25 12 15.25H16Z\" />\n      <path d=\"M8.00977 7.25C8.42398 7.25 8.75977 7.58579 8.75977 8C8.75977 8.41421 8.42398 8.75 8.00977 8.75H8C7.58579 8.75 7.25 8.41421 7.25 8C7.25 7.58579 7.58579 7.25 8 7.25H8.00977Z\" />\n      <path d=\"M8.00977 11.25C8.42398 11.25 8.75977 11.5858 8.75977 12C8.75977 12.4142 8.42398 12.75 8.00977 12.75H8C7.58579 12.75 7.25 12.4142 7.25 12C7.25 11.5858 7.58579 11.25 8 11.25H8.00977Z\" />\n      <path d=\"M8.00977 15.25C8.42398 15.25 8.75977 15.5858 8.75977 16C8.75977 16.4142 8.42398 16.75 8.00977 16.75H8C7.58579 16.75 7.25 16.4142 7.25 16C7.25 15.5858 7.58579 15.25 8 15.25H8.00977Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function LocationIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19.25 10C19.25 8.07718 18.4866 6.23269 17.127 4.87305C15.8523 3.59835 14.1514 2.84765 12.3594 2.75879L12 2.75C10.0772 2.75 8.23269 3.51341 6.87305 4.87305C5.51341 6.23269 4.75 8.07718 4.75 10C4.75 12.2436 6.00852 14.6266 7.59863 16.7158C9.15216 18.7569 10.9341 20.404 11.8555 21.2021C11.8978 21.2324 11.9479 21.25 12 21.25L12.0791 21.2373C12.1024 21.2296 12.1233 21.2165 12.1436 21.2021C13.0648 20.4042 14.8475 18.7573 16.4014 16.7158C17.9915 14.6266 19.25 12.2436 19.25 10ZM14.25 10C14.25 8.75736 13.2426 7.75 12 7.75C10.7574 7.75 9.75 8.75736 9.75 10C9.75 11.2426 10.7574 12.25 12 12.25C13.2426 12.25 14.25 11.2426 14.25 10ZM15.75 10C15.75 12.0711 14.0711 13.75 12 13.75C9.92893 13.75 8.25 12.0711 8.25 10C8.25 7.92893 9.92893 6.25 12 6.25C14.0711 6.25 15.75 7.92893 15.75 10ZM20.75 10C20.75 12.7494 19.2391 15.4635 17.5947 17.624C15.933 19.8073 14.0397 21.5469 13.0908 22.3662C13.078 22.3772 13.0652 22.3883 13.0518 22.3984C12.7864 22.598 12.4706 22.7174 12.1416 22.7441L12 22.75C11.6206 22.75 11.2515 22.6265 10.9482 22.3984C10.9348 22.3883 10.922 22.3772 10.9092 22.3662C9.9603 21.5469 8.067 19.8073 6.40527 17.624C4.76088 15.4635 3.25 12.7494 3.25 10C3.25 7.67936 4.17156 5.45344 5.8125 3.8125C7.45344 2.17156 9.67936 1.25 12 1.25C14.3206 1.25 16.5466 2.17156 18.1875 3.8125C19.8284 5.45344 20.75 7.67936 20.75 10Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function LockIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19.25 12.1816C19.2499 11.2404 18.654 10.7503 18.2227 10.75H5.77734C5.34604 10.7503 4.75007 11.2404 4.75 12.1816V19.8184C4.75007 20.7596 5.34604 21.2497 5.77734 21.25H18.2227C18.654 21.2497 19.2499 20.7596 19.25 19.8184V12.1816ZM20.75 19.8184C20.7499 21.2865 19.7547 22.7497 18.2227 22.75H5.77734C4.24534 22.7497 3.25008 21.2865 3.25 19.8184V12.1816C3.25008 10.7135 4.24534 9.25028 5.77734 9.25H18.2227C19.7547 9.25028 20.7499 10.7135 20.75 12.1816V19.8184Z\" />\n      <path d=\"M16.25 10V7C16.25 5.87283 15.8019 4.79215 15.0049 3.99512C14.2079 3.19809 13.1272 2.75 12 2.75C10.8728 2.75 9.79215 3.19809 8.99512 3.99512C8.19809 4.79215 7.75 5.87283 7.75 7V10C7.75 10.4142 7.41421 10.75 7 10.75C6.58579 10.75 6.25 10.4142 6.25 10V7C6.25 5.47501 6.85624 4.0129 7.93457 2.93457C9.0129 1.85624 10.475 1.25 12 1.25C13.525 1.25 14.9871 1.85624 16.0654 2.93457C17.1438 4.0129 17.75 5.47501 17.75 7V10C17.75 10.4142 17.4142 10.75 17 10.75C16.5858 10.75 16.25 10.4142 16.25 10Z\" />\n      <path d=\"M12 16C12.5523 16 13 15.5523 13 15C13 14.4477 12.5523 14 12 14C11.4477 14 11 14.4477 11 15C11 15.5523 11.4477 16 12 16Z\" />\n      <path d=\"M12.25 15C12.25 14.8619 12.1381 14.75 12 14.75C11.8619 14.75 11.75 14.8619 11.75 15C11.75 15.1381 11.8619 15.25 12 15.25C12.1381 15.25 12.25 15.1381 12.25 15ZM13.75 15C13.75 15.9665 12.9665 16.75 12 16.75C11.0335 16.75 10.25 15.9665 10.25 15C10.25 14.0335 11.0335 13.25 12 13.25C12.9665 13.25 13.75 14.0335 13.75 15Z\" />\n      <path d=\"M13 17.5C13 18.0523 12.5523 18.5 12 18.5C11.4477 18.5 11 18.0523 11 17.5V16C11 15.4477 11.4477 15 12 15C12.5523 15 13 15.4477 13 16V17.5Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function LockFilledIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M12 1C13.5913 1 15.117 1.63259 16.2422 2.75781C17.3674 3.88303 18 5.4087 18 7V9.25H18.2227C19.7547 9.25028 20.7499 10.7135 20.75 12.1816V19.8184C20.7499 21.2865 19.7547 22.7497 18.2227 22.75H5.77734C4.24534 22.7497 3.25008 21.2865 3.25 19.8184V12.1816C3.25008 10.7135 4.24534 9.25028 5.77734 9.25H6V7C6 5.4087 6.63259 3.88303 7.75781 2.75781C8.88303 1.63259 10.4087 1 12 1ZM12 13.25C11.0335 13.25 10.25 14.0335 10.25 15C10.25 15.5943 10.5471 16.1183 11 16.4346V17.5C11 18.0523 11.4477 18.5 12 18.5C12.5523 18.5 13 18.0523 13 17.5V16.4346C13.4529 16.1183 13.75 15.5943 13.75 15C13.75 14.0335 12.9665 13.25 12 13.25ZM12 3C10.9391 3 9.92202 3.42173 9.17188 4.17188C8.42173 4.92202 8 5.93913 8 7V9.25H16V7C16 5.93913 15.5783 4.92202 14.8281 4.17188C14.078 3.42173 13.0609 3 12 3Z\"\n      />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function LockOpenIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19.25 12.1816C19.2499 11.2404 18.654 10.7503 18.2227 10.75H5.77734C5.34604 10.7503 4.75007 11.2404 4.75 12.1816V19.8184C4.75007 20.7596 5.34604 21.2497 5.77734 21.25H18.2227C18.654 21.2497 19.2499 20.7596 19.25 19.8184V12.1816ZM20.75 19.8184C20.7499 21.2865 19.7547 22.7497 18.2227 22.75H5.77734C4.24534 22.7497 3.25008 21.2865 3.25 19.8184V12.1816C3.25008 10.7135 4.24534 9.25028 5.77734 9.25H18.2227C19.7547 9.25028 20.7499 10.7135 20.75 12.1816V19.8184Z\" />\n      <path d=\"M6.25 10V7C6.25 5.47501 6.85624 4.0129 7.93457 2.93457C9.0129 1.85624 10.475 1.25 12 1.25C13.525 1.25 14.9871 1.85624 16.0654 2.93457C16.7058 3.57494 17.1798 4.35043 17.459 5.19434C17.5891 5.5876 17.3757 6.01251 16.9824 6.14258C16.5894 6.27236 16.1654 6.05888 16.0352 5.66602C15.8288 5.04209 15.4782 4.46846 15.0049 3.99512C14.2079 3.19809 13.1272 2.75 12 2.75C10.8728 2.75 9.79215 3.19809 8.99512 3.99512C8.19809 4.79215 7.75 5.87283 7.75 7V10C7.75 10.4142 7.41421 10.75 7 10.75C6.58579 10.75 6.25 10.4142 6.25 10Z\" />\n      <path d=\"M12 16C12.5523 16 13 15.5523 13 15C13 14.4477 12.5523 14 12 14C11.4477 14 11 14.4477 11 15C11 15.5523 11.4477 16 12 16Z\" />\n      <path d=\"M12.25 15C12.25 14.8619 12.1381 14.75 12 14.75C11.8619 14.75 11.75 14.8619 11.75 15C11.75 15.1381 11.8619 15.25 12 15.25C12.1381 15.25 12.25 15.1381 12.25 15ZM13.75 15C13.75 15.9665 12.9665 16.75 12 16.75C11.0335 16.75 10.25 15.9665 10.25 15C10.25 14.0335 11.0335 13.25 12 13.25C12.9665 13.25 13.75 14.0335 13.75 15Z\" />\n      <path d=\"M13 17.5C13 18.0523 12.5523 18.5 12 18.5C11.4477 18.5 11 18.0523 11 17.5V16C11 15.4477 11.4477 15 12 15C12.5523 15 13 15.4477 13 16V17.5Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function LoginIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.25 19V5C20.25 4.66848 20.1182 4.35063 19.8838 4.11621C19.6494 3.88179 19.3315 3.75 19 3.75H15C14.5858 3.75 14.25 3.41421 14.25 3C14.25 2.58579 14.5858 2.25 15 2.25H19C19.7293 2.25 20.4286 2.53994 20.9443 3.05566C21.4601 3.57139 21.75 4.27065 21.75 5V19C21.75 19.7293 21.4601 20.4286 20.9443 20.9443C20.4286 21.4601 19.7293 21.75 19 21.75H15C14.5858 21.75 14.25 21.4142 14.25 21C14.25 20.5858 14.5858 20.25 15 20.25H19C19.3315 20.25 19.6494 20.1182 19.8838 19.8838C20.1182 19.6494 20.25 19.3315 20.25 19ZM9.46973 6.46973C9.76262 6.17683 10.2374 6.17683 10.5303 6.46973L15.5303 11.4697C15.8232 11.7626 15.8232 12.2374 15.5303 12.5303L10.5303 17.5303C10.2374 17.8232 9.76262 17.8232 9.46973 17.5303C9.17683 17.2374 9.17683 16.7626 9.46973 16.4697L13.1895 12.75H3C2.58579 12.75 2.25 12.4142 2.25 12C2.25 11.5858 2.58579 11.25 3 11.25H13.1895L9.46973 7.53027C9.17683 7.23738 9.17683 6.76262 9.46973 6.46973Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function LogoutIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M2.25 19V5C2.25 4.27065 2.53994 3.57139 3.05566 3.05566C3.57139 2.53994 4.27065 2.25 5 2.25H9C9.41421 2.25 9.75 2.58579 9.75 3C9.75 3.41421 9.41421 3.75 9 3.75H5C4.66848 3.75 4.35063 3.88179 4.11621 4.11621C3.88179 4.35063 3.75 4.66848 3.75 5V19C3.75 19.3315 3.88179 19.6494 4.11621 19.8838C4.35063 20.1182 4.66848 20.25 5 20.25H9C9.41421 20.25 9.75 20.5858 9.75 21C9.75 21.4142 9.41421 21.75 9 21.75H5C4.27065 21.75 3.57139 21.4601 3.05566 20.9443C2.53994 20.4286 2.25 19.7293 2.25 19ZM15.4697 6.46973C15.7626 6.17683 16.2374 6.17683 16.5303 6.46973L21.5303 11.4697C21.8232 11.7626 21.8232 12.2374 21.5303 12.5303L16.5303 17.5303C16.2374 17.8232 15.7626 17.8232 15.4697 17.5303C15.1768 17.2374 15.1768 16.7626 15.4697 16.4697L19.1895 12.75H9C8.58579 12.75 8.25 12.4142 8.25 12C8.25 11.5858 8.58579 11.25 9 11.25H19.1895L15.4697 7.53027C15.1768 7.23738 15.1768 6.76262 15.4697 6.46973Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function MailIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 8.36719L13.4121 13.3594C13.4035 13.3649 13.3946 13.3708 13.3857 13.376C12.9664 13.6195 12.4898 13.747 12.0049 13.7471C11.5197 13.7471 11.0426 13.6196 10.623 13.376C10.6143 13.3709 10.6062 13.3648 10.5977 13.3594L2.75 8.36523V18C2.75 18.6904 3.30964 19.25 4 19.25H20C20.6904 19.25 21.25 18.6904 21.25 18V8.36719ZM21.25 6C21.25 5.30964 20.6904 4.75 20 4.75H4C3.30964 4.75 2.75 5.30964 2.75 6V6.58789L11.376 12.0781C11.5667 12.1889 11.7844 12.2471 12.0049 12.2471C12.2252 12.247 12.4413 12.1887 12.6318 12.0781L21.25 6.58789V6ZM22.75 18C22.75 19.5188 21.5188 20.75 20 20.75H4C2.48122 20.75 1.25 19.5188 1.25 18V6C1.25 4.48122 2.48122 3.25 4 3.25H20C21.5188 3.25 22.75 4.48122 22.75 6V18Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function MailOpenIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 11.3643L13.4326 16.333L13.4277 16.3359C13.0532 16.5705 12.6274 16.7084 12.1885 16.7393L12 16.7461C11.495 16.7461 11.0002 16.6039 10.5723 16.3359L10.5674 16.333L2.75 11.3643V20C2.75 20.3315 2.88179 20.6494 3.11621 20.8838C3.35063 21.1182 3.66848 21.25 4 21.25H20C20.3315 21.25 20.6494 21.1182 20.8838 20.8838C21.1182 20.6494 21.25 20.3315 21.25 20V11.3643ZM12 2.75C11.7295 2.75 11.4664 2.83772 11.25 3L3.25 9C3.09476 9.11643 2.96862 9.26784 2.88184 9.44141C2.85224 9.50064 2.82836 9.56222 2.80859 9.625L11.3672 15.0645H11.3682C11.5575 15.1831 11.7765 15.2461 12 15.2461C12.1676 15.2461 12.3325 15.2103 12.4844 15.1426L12.6318 15.0645L21.1895 9.62598C21.1118 9.38198 20.9614 9.16187 20.75 9L12.75 3C12.5336 2.83772 12.2705 2.75 12 2.75ZM22.75 20C22.75 20.7293 22.4601 21.4286 21.9443 21.9443C21.4286 22.4601 20.7293 22.75 20 22.75H4C3.27065 22.75 2.57139 22.4601 2.05566 21.9443C1.53994 21.4286 1.25 20.7293 1.25 20V10C1.25 9.57322 1.34924 9.15226 1.54004 8.77051C1.73094 8.38871 2.00814 8.05594 2.34961 7.7998L10.3496 1.7998C10.8256 1.44279 11.405 1.25 12 1.25C12.595 1.25 13.1744 1.44279 13.6504 1.7998L21.6543 7.80273C22.3363 8.32117 22.75 9.13015 22.75 10V20Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function MenuIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.75 5.25H3.25C2.83579 5.25 2.5 4.91421 2.5 4.5C2.5 4.08579 2.83579 3.75 3.25 3.75H20.75C21.1642 3.75 21.5 4.08579 21.5 4.5C21.5 4.91421 21.1642 5.25 20.75 5.25Z\" />\n      <path d=\"M20.75 12.75H3.25C2.83579 12.75 2.5 12.4142 2.5 12C2.5 11.5858 2.83579 11.25 3.25 11.25H20.75C21.1642 11.25 21.5 11.5858 21.5 12C21.5 12.4142 21.1642 12.75 20.75 12.75Z\" />\n      <path d=\"M20.75 20.25H3.25C2.83579 20.25 2.5 19.9142 2.5 19.5C2.5 19.0858 2.83579 18.75 3.25 18.75H20.75C21.1642 18.75 21.5 19.0858 21.5 19.5C21.5 19.9142 21.1642 20.25 20.75 20.25Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function MinusIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M4 12C4 11.5858 4.33579 11.25 4.75 11.25H19.25C19.6642 11.25 20 11.5858 20 12C20 12.4142 19.6642 12.75 19.25 12.75H4.75C4.33579 12.75 4 12.4142 4 12Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function MinusCircledIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 12C21.25 6.89137 17.1086 2.75 12 2.75C6.89137 2.75 2.75 6.89137 2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C17.1086 21.25 21.25 17.1086 21.25 12ZM22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12C1.25 6.06294 6.06294 1.25 12 1.25C17.9371 1.25 22.75 6.06294 22.75 12Z\" />\n      <path d=\"M7 12C7 11.5858 7.33579 11.25 7.75 11.25H16.25C16.6642 11.25 17 11.5858 17 12C17 12.4142 16.6642 12.75 16.25 12.75H7.75C7.33579 12.75 7 12.4142 7 12Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function MoreHorizontalIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M6.75 12C6.75 12.9665 5.9665 13.75 5 13.75C4.0335 13.75 3.25 12.9665 3.25 12C3.25 11.0335 4.0335 10.25 5 10.25C5.9665 10.25 6.75 11.0335 6.75 12ZM13.75 12C13.75 12.9665 12.9665 13.75 12 13.75C11.0335 13.75 10.25 12.9665 10.25 12C10.25 11.0335 11.0335 10.25 12 10.25C12.9665 10.25 13.75 11.0335 13.75 12ZM20.75 12C20.75 12.9665 19.9665 13.75 19 13.75C18.0335 13.75 17.25 12.9665 17.25 12C17.25 11.0335 18.0335 10.25 19 10.25C19.9665 10.25 20.75 11.0335 20.75 12Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function MoreVerticalIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M13.75 19C13.75 19.9665 12.9665 20.75 12 20.75C11.0335 20.75 10.25 19.9665 10.25 19C10.25 18.0335 11.0335 17.25 12 17.25C12.9665 17.25 13.75 18.0335 13.75 19ZM13.75 12C13.75 12.9665 12.9665 13.75 12 13.75C11.0335 13.75 10.25 12.9665 10.25 12C10.25 11.0335 11.0335 10.25 12 10.25C12.9665 10.25 13.75 11.0335 13.75 12ZM13.75 5C13.75 5.9665 12.9665 6.75 12 6.75C11.0335 6.75 10.25 5.9665 10.25 5C10.25 4.0335 11.0335 3.25 12 3.25C12.9665 3.25 13.75 4.0335 13.75 5Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function NotarialIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19 21.25C19.4142 21.25 19.75 21.5858 19.75 22C19.75 22.4142 19.4142 22.75 19 22.75H5C4.58579 22.75 4.25 22.4142 4.25 22C4.25 21.5858 4.58579 21.25 5 21.25H19ZM19.25 15.5C19.25 15.0359 19.0655 14.5909 18.7373 14.2627C18.4091 13.9345 17.9641 13.75 17.5 13.75H6.5C6.03587 13.75 5.59088 13.9345 5.2627 14.2627C4.93451 14.5909 4.75 15.0359 4.75 15.5V17C4.75 17.0663 4.77636 17.1299 4.82324 17.1768C4.87013 17.2236 4.93369 17.25 5 17.25H19C19.0663 17.25 19.1299 17.2236 19.1768 17.1768C19.2236 17.1299 19.25 17.0663 19.25 17V15.5ZM14.25 5C14.25 4.40326 14.0128 3.83114 13.5908 3.40918C13.1689 2.98722 12.5967 2.75 12 2.75C11.4033 2.75 10.8311 2.98722 10.4092 3.40918C9.98722 3.83114 9.75 4.40326 9.75 5C9.75 5.83217 9.94468 6.20373 10.1514 6.56543C10.3983 6.99747 10.75 7.52967 10.75 8.5V12.25H13.25V8.5C13.25 7.52967 13.6017 6.99747 13.8486 6.56543C14.0553 6.20373 14.25 5.83217 14.25 5ZM15.75 5C15.75 6.16775 15.4447 6.79629 15.1514 7.30957C14.8983 7.75251 14.75 7.97041 14.75 8.5V12.25H17.5C18.362 12.25 19.1884 12.5927 19.7979 13.2021C20.4073 13.8116 20.75 14.638 20.75 15.5V17C20.75 17.4641 20.5655 17.9091 20.2373 18.2373C19.9091 18.5655 19.4641 18.75 19 18.75H5C4.53587 18.75 4.09088 18.5655 3.7627 18.2373C3.43451 17.9091 3.25 17.4641 3.25 17V15.5C3.25 14.638 3.59266 13.8116 4.20215 13.2021C4.81164 12.5927 5.63805 12.25 6.5 12.25H9.25V8.5C9.25 7.97041 9.10174 7.75251 8.84863 7.30957C8.55534 6.79629 8.25 6.16775 8.25 5C8.25 4.00544 8.64537 3.05189 9.34863 2.34863C10.0519 1.64537 11.0054 1.25 12 1.25C12.9946 1.25 13.9481 1.64537 14.6514 2.34863C15.3546 3.05189 15.75 4.00544 15.75 5Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function NotificationsIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M13.0828 20.625C13.2899 20.2664 13.7485 20.1435 14.1072 20.3506C14.4658 20.5577 14.5886 21.0163 14.3816 21.375C14.1402 21.793 13.7928 22.1405 13.3748 22.3818C12.9568 22.6231 12.4824 22.75 11.9998 22.75C11.5171 22.75 11.0427 22.6231 10.6248 22.3818C10.2068 22.1405 9.86025 21.7929 9.6189 21.375C9.41177 21.0163 9.5346 20.5577 9.89331 20.3506C10.252 20.1436 10.7106 20.2664 10.9177 20.625C11.0274 20.8148 11.185 20.9724 11.3748 21.082C11.5647 21.1917 11.7804 21.25 11.9998 21.25C12.2192 21.25 12.4347 21.1917 12.6248 21.082C12.8148 20.9723 12.9731 20.815 13.0828 20.625ZM17.2498 8C17.2498 6.60779 16.697 5.27262 15.7126 4.28809C14.7281 3.30352 13.3921 2.75 11.9998 2.75C10.6075 2.75007 9.27235 3.30358 8.28784 4.28809C7.30335 5.27264 6.74976 6.60767 6.74976 8C6.74976 10.3279 6.38433 11.9327 5.8064 13.1562C5.23382 14.3683 4.47523 15.1507 3.81616 15.8311L3.77612 15.8906C3.76554 15.9124 3.75761 15.9359 3.75366 15.96C3.74594 16.0076 3.75277 16.0564 3.77222 16.1006C3.79172 16.1448 3.82355 16.1825 3.86402 16.209C3.9046 16.2355 3.95228 16.25 4.00073 16.25H20.0007C20.0489 16.2499 20.0961 16.2361 20.1365 16.21C20.177 16.1836 20.2096 16.1458 20.2292 16.1016C20.2488 16.0573 20.2546 16.0078 20.2468 15.96C20.2391 15.9122 20.2178 15.8678 20.1853 15.832H20.1843C19.5239 15.1513 18.7656 14.3687 18.1931 13.1572C17.6149 11.9335 17.2498 10.328 17.2498 8ZM18.7498 8C18.7498 10.171 19.0902 11.5444 19.5496 12.5166C20.0096 13.4902 20.6127 14.1188 21.2781 14.8047C21.2836 14.8104 21.2893 14.8164 21.2947 14.8223C21.5229 15.0731 21.673 15.385 21.7273 15.7197C21.7816 16.0545 21.7375 16.3979 21.6003 16.708C21.4631 17.0181 21.239 17.2818 20.9548 17.4668C20.7062 17.6286 20.4212 17.7238 20.1267 17.7451L19.9998 17.75H3.99976C3.66069 17.7498 3.32867 17.651 3.04468 17.4658C2.76062 17.2805 2.536 17.0164 2.39917 16.7061C2.26239 16.3958 2.21947 16.0524 2.27417 15.7178C2.32894 15.383 2.47915 15.0709 2.70777 14.8203L2.72339 14.8037C3.38755 14.118 3.99092 13.4894 4.45093 12.5156C4.88138 11.6042 5.20682 10.3405 5.24585 8.39746L5.24976 8C5.24976 6.20979 5.96143 4.49243 7.2273 3.22656C8.49307 1.96098 10.2098 1.25007 11.9998 1.25C13.7899 1.25 15.5073 1.96077 16.7732 3.22656C18.0391 4.49243 18.7498 6.20979 18.7498 8Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function NotificationsOffIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M13.082 20.6247C13.2892 20.266 13.7487 20.1432 14.1074 20.3503C14.4658 20.5575 14.5886 21.0162 14.3818 21.3747C14.1405 21.7928 13.793 22.1402 13.375 22.3816C12.957 22.6229 12.4827 22.7497 12 22.7497C11.5173 22.7497 11.043 22.6229 10.625 22.3816C10.207 22.1402 9.85954 21.7928 9.61817 21.3747C9.41137 21.0162 9.53417 20.5575 9.89258 20.3503C10.2513 20.1432 10.7109 20.266 10.918 20.6247C11.0277 20.8147 11.185 20.9731 11.375 21.0828C11.565 21.1924 11.7806 21.2497 12 21.2497C12.2194 21.2497 12.435 21.1924 12.625 21.0828C12.815 20.9731 12.9723 20.8147 13.082 20.6247ZM1.46973 1.46947C1.7626 1.17673 2.23742 1.17673 2.53028 1.46947L22.5303 21.4695C22.8231 21.7623 22.8231 22.2371 22.5303 22.53C22.2374 22.8229 21.7626 22.8229 21.4697 22.53L16.6895 17.7497H4.00001C3.66095 17.7498 3.3291 17.6515 3.04493 17.4665C2.76074 17.2815 2.53659 17.0179 2.39942 16.7078C2.26224 16.3976 2.21813 16.0542 2.27247 15.7195C2.32683 15.3848 2.47688 15.0728 2.70508 14.822C2.71046 14.8161 2.71613 14.8102 2.72169 14.8044C3.38709 14.1185 3.99014 13.49 4.4502 12.5163C4.90953 11.5441 5.25001 10.1708 5.25001 7.99974C5.24991 7.48879 5.30836 6.9801 5.42286 6.48314L1.46973 2.53002C1.17696 2.23711 1.17688 1.76232 1.46973 1.46947ZM17.25 7.99974C17.25 7.04924 16.9915 6.11684 16.5029 5.3015C16.0143 4.48609 15.3139 3.81811 14.4756 3.36986C13.6373 2.92164 12.6926 2.70917 11.7432 2.7556C10.794 2.80209 9.87532 3.10586 9.08497 3.63353C8.7405 3.86356 8.27398 3.77097 8.04395 3.4265C7.81404 3.08204 7.90753 2.61646 8.25196 2.38646C9.26823 1.70789 10.4494 1.31731 11.6699 1.25756C12.8906 1.19786 14.1048 1.47131 15.1826 2.0476C16.2604 2.6239 17.1618 3.48167 17.79 4.53002C18.4182 5.57833 18.75 6.77763 18.75 7.99974L18.7588 8.46654C18.8414 10.7592 19.527 12.4352 20.3301 13.6326C20.5605 13.9764 20.4687 14.4419 20.125 14.6726C19.781 14.9033 19.3147 14.8115 19.084 14.4675C18.0667 12.9507 17.25 10.8398 17.25 7.99974ZM6.7461 8.42845C6.70386 10.5273 6.34865 12.0097 5.80665 13.157C5.23406 14.3688 4.47503 15.1509 3.81446 15.8318L3.77442 15.8913C3.76404 15.9129 3.75682 15.9359 3.75294 15.9597C3.74517 16.0075 3.75189 16.057 3.77149 16.1013C3.7911 16.1455 3.82279 16.1833 3.86329 16.2097C3.90387 16.2361 3.9516 16.2498 4.00001 16.2497H15.1895L6.75587 7.81615C6.75374 7.87732 6.74999 7.93847 6.75001 7.99974L6.7461 8.42845Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function OnlineMeetingIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M15.25 8C15.25 7.30964 14.6904 6.75 14 6.75H4C3.30964 6.75 2.75 7.30964 2.75 8V16C2.75 16.6904 3.30964 17.25 4 17.25H14C14.6904 17.25 15.25 16.6904 15.25 16V8ZM16.75 10.9297V12.5986L21.25 15.5986V8.30469L16.75 10.9297ZM16.75 9.19336L20.8701 6.79004L21.0166 6.7168C21.1678 6.65339 21.331 6.62068 21.4961 6.62012L21.6602 6.62988C21.7685 6.64388 21.8745 6.6723 21.9756 6.71387L22.123 6.78613L22.2598 6.87695C22.3464 6.94326 22.4237 7.02097 22.4902 7.10742L22.582 7.24414L22.6543 7.39062C22.7172 7.54214 22.75 7.705 22.75 7.87012V16.0664L22.7383 16.2344C22.7155 16.4013 22.6594 16.5625 22.5723 16.708C22.456 16.902 22.2892 17.0613 22.0898 17.168C21.8906 17.2746 21.6661 17.3252 21.4404 17.3145C21.2146 17.3037 20.9958 17.2317 20.8076 17.1064H20.8066L16.75 14.4014V16C16.75 17.5188 15.5188 18.75 14 18.75H4C2.48122 18.75 1.25 17.5188 1.25 16V8C1.25 6.48122 2.48122 5.25 4 5.25H14C15.5188 5.25 16.75 6.48122 16.75 8V9.19336Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function OpenExternalIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M2.25 19V8C2.25 7.27065 2.53994 6.57139 3.05566 6.05566C3.57139 5.53994 4.27065 5.25 5 5.25H11C11.4142 5.25 11.75 5.58579 11.75 6C11.75 6.41421 11.4142 6.75 11 6.75H5C4.66848 6.75 4.35063 6.88179 4.11621 7.11621C3.88179 7.35063 3.75 7.66848 3.75 8V19C3.75 19.3315 3.88179 19.6494 4.11621 19.8838C4.35063 20.1182 4.66848 20.25 5 20.25H16C16.3315 20.25 16.6494 20.1182 16.8838 19.8838C17.1182 19.6494 17.25 19.3315 17.25 19V13C17.25 12.5858 17.5858 12.25 18 12.25C18.4142 12.25 18.75 12.5858 18.75 13V19C18.75 19.7293 18.4601 20.4286 17.9443 20.9443C17.4286 21.4601 16.7293 21.75 16 21.75H5C4.27065 21.75 3.57139 21.4601 3.05566 20.9443C2.53994 20.4286 2.25 19.7293 2.25 19ZM21.75 9C21.75 9.41421 21.4142 9.75 21 9.75C20.5858 9.75 20.25 9.41421 20.25 9V4.81055L10.5303 14.5303C10.2374 14.8232 9.76262 14.8232 9.46973 14.5303C9.17683 14.2374 9.17683 13.7626 9.46973 13.4697L19.1895 3.75H15C14.5858 3.75 14.25 3.41421 14.25 3C14.25 2.58579 14.5858 2.25 15 2.25H21C21.4142 2.25 21.75 2.58579 21.75 3V9Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function PanelLeftIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M19 2.25C20.5188 2.25 21.75 3.48122 21.75 5V19C21.75 20.5188 20.5188 21.75 19 21.75H5C3.48122 21.75 2.25 20.5188 2.25 19V5C2.25 3.48122 3.48122 2.25 5 2.25H19ZM9.75 20.25H19C19.6904 20.25 20.25 19.6904 20.25 19V5C20.25 4.30964 19.6904 3.75 19 3.75H9.75V20.25ZM5 3.75C4.30964 3.75 3.75 4.30964 3.75 5V19C3.75 19.6904 4.30964 20.25 5 20.25H8.25V3.75H5Z\"\n      />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function PaperPlaneIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M3.50488 2.25C3.68836 2.25101 3.86933 2.29416 4.03613 2.37402L4.03711 2.37207L22.0371 10.8721C22.1977 10.948 22.3397 11.0573 22.4541 11.1914L22.5586 11.334L22.6426 11.4893C22.7149 11.65 22.7529 11.8253 22.7529 12.0029C22.7528 12.2395 22.6851 12.471 22.5586 12.6709C22.4636 12.8209 22.3385 12.9488 22.1914 13.0459L22.0371 13.1328L4.03711 21.6328L4.03613 21.6309C3.81252 21.7376 3.56266 21.7773 3.31738 21.7412C3.06975 21.7047 2.83855 21.5942 2.6543 21.4248C2.47018 21.2554 2.34125 21.0346 2.28418 20.791C2.22766 20.5496 2.24537 20.2972 2.33301 20.0654L5.17383 12.4385C5.26544 12.1923 5.27678 11.9244 5.20801 11.6729L5.17383 11.5664L2.33105 3.93945L2.33203 3.93848C2.24454 3.7069 2.2268 3.45505 2.2832 3.21387L2.33887 3.03516C2.40799 2.86203 2.51582 2.70625 2.6543 2.5791C2.83902 2.40953 3.07022 2.29878 3.31836 2.2627L3.50488 2.25ZM6.5791 11.043C6.80957 11.6619 6.80956 12.343 6.5791 12.9619L3.95117 20.0137L20.917 12.002L3.95019 3.98926L6.5791 11.043Z\" />\n      <path d=\"M21.9994 11.2498C22.4136 11.2498 22.7504 11.5855 22.7505 11.9997C22.7506 12.4139 22.4138 12.7498 21.9996 12.7498L6.00256 12.7524C5.58835 12.7525 5.25251 12.4168 5.25244 12.0026C5.25237 11.5884 5.5881 11.2525 6.00232 11.2524L21.9994 11.2498Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function PayoutIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M14.25 13C14.25 12.6685 14.1182 12.3506 13.8838 12.1162C13.6494 11.8818 13.3315 11.75 13 11.75H10C9.55878 11.75 9.31781 11.8932 9.2002 12.0498C9.17618 12.0818 9.14894 12.1119 9.12012 12.1396L3.52051 17.54C3.22234 17.8274 2.74745 17.8186 2.45997 17.5205C2.17257 17.2223 2.18137 16.7474 2.4795 16.46L8.04883 11.0889C8.53272 10.4908 9.26618 10.25 10 10.25H13C13.7294 10.25 14.4286 10.5399 14.9443 11.0557C15.4601 11.5714 15.75 12.2707 15.75 13C15.75 13.7293 15.4601 14.4286 14.9443 14.9443C14.4286 15.4601 13.7294 15.75 13 15.75H11C10.5858 15.75 10.25 15.4142 10.25 15C10.25 14.5858 10.5858 14.25 11 14.25H13C13.3315 14.25 13.6494 14.1182 13.8838 13.8838C14.1182 13.6494 14.25 13.3315 14.25 13Z\" />\n      <path d=\"M20.1025 9.19409C20.8321 9.21471 21.5241 9.52404 22.0254 10.0544C22.5267 10.5849 22.796 11.2936 22.7754 12.0232C22.7547 12.7512 22.4455 13.4402 21.917 13.9412L21.918 13.9421L17.332 18.3269C16.4723 19.2881 15.2701 19.7498 14 19.7498H10C9.55894 19.7498 9.31785 19.893 9.2002 20.0496C9.1689 20.0913 9.13301 20.1304 9.09375 20.1648L7.49414 21.5642C7.18242 21.837 6.70831 21.8056 6.43555 21.4939C6.16281 21.1822 6.19414 20.7081 6.50586 20.4353L8.05762 19.0779C8.54158 18.4879 9.27067 18.2498 10 18.2498H14C14.9147 18.2498 15.697 17.9215 16.2354 17.3064L16.2813 17.2576L20.8818 12.8582L20.8848 12.8552C21.1261 12.6272 21.267 12.3121 21.2764 11.9802C21.2857 11.6484 21.1626 11.326 20.9346 11.0847C20.7066 10.8437 20.3922 10.7035 20.0606 10.6941C19.7287 10.6847 19.4064 10.8069 19.165 11.0349L19.1602 11.0398L14.96 14.9392C14.6564 15.2211 14.1822 15.2037 13.9004 14.9001C13.6187 14.5967 13.6361 14.1224 13.9395 13.8406L18.1397 9.94019C18.6696 9.44161 19.3751 9.17359 20.1025 9.19409Z\" />\n      <path d=\"M1.46973 15.4697C1.76262 15.1768 2.23738 15.1768 2.53028 15.4697L8.53028 21.4697C8.82317 21.7626 8.82317 22.2374 8.53028 22.5303C8.23738 22.8232 7.76262 22.8232 7.46973 22.5303L1.46973 16.5303C1.17684 16.2374 1.17684 15.7626 1.46973 15.4697Z\" />\n      <path d=\"M18.1498 9.00049C18.1498 7.81321 17.1876 6.85031 16.0004 6.8501C14.813 6.8501 13.85 7.81308 13.85 9.00049C13.8502 10.1877 14.8131 11.1499 16.0004 11.1499C17.1875 11.1497 18.1496 10.1876 18.1498 9.00049ZM19.6498 9.00049C19.6496 11.016 18.0159 12.6497 16.0004 12.6499C13.9847 12.6499 12.3502 11.0161 12.35 9.00049C12.35 6.98465 13.9845 5.3501 16.0004 5.3501C18.016 5.35031 19.6498 6.98478 19.6498 9.00049Z\" />\n      <path d=\"M8.25 5C8.25 3.75736 7.24265 2.75 6 2.75C4.75736 2.75 3.75 3.75736 3.75 5C3.75 6.24264 4.75736 7.25 6 7.25C7.24265 7.25 8.25 6.24264 8.25 5ZM9.75 5C9.75 7.07107 8.07107 8.75 6 8.75C3.92894 8.75 2.25 7.07107 2.25 5C2.25 2.92893 3.92894 1.25 6 1.25C8.07107 1.25 9.75 2.92893 9.75 5Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function PdfIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19.75 12.0269C21.2687 12.0269 22.4998 13.2593 22.5 14.7793V19.9976C22.5 21.5177 21.2688 22.75 19.75 22.75H3.75C2.23122 22.75 1 21.5177 1 19.9976V14.7793C1.00015 13.2593 2.23131 12.0269 3.75 12.0269H19.75ZM3.75 14.011V21.0171H5.15234V18.4875H6.79395C7.0953 18.4875 7.36659 18.4343 7.60645 18.3272C7.8462 18.2135 8.04884 18.0589 8.21484 17.8649C8.38687 17.671 8.51911 17.4372 8.61133 17.1631C8.70358 16.8888 8.75 16.5839 8.75 16.2493C8.74999 15.9214 8.70356 15.6205 8.61133 15.3462C8.5191 15.0652 8.387 14.8277 8.21484 14.6336C8.0489 14.4397 7.8461 14.2891 7.60645 14.1821C7.36659 14.0683 7.0953 14.011 6.79395 14.011H3.75ZM9.75 21.0171H12.0566C12.4601 21.0171 12.8288 20.9433 13.1621 20.7962C13.4953 20.649 13.7789 20.4317 14.0127 20.1442C14.2466 19.8498 14.428 19.4845 14.5566 19.0495C14.6853 18.6079 14.75 18.0962 14.75 17.514C14.75 16.9319 14.6853 16.4233 14.5566 15.9883C14.428 15.5467 14.2466 15.1823 14.0127 14.8946C13.7788 14.6002 13.4954 14.3791 13.1621 14.2319C12.8288 14.0847 12.4601 14.011 12.0566 14.011H9.75V21.0171ZM15.75 21.0171H17.0635V18.1464H19.3525V16.8015H17.0635V15.3657H19.75V14.011H15.75V21.0171ZM12.0566 15.3657C12.4543 15.3657 12.768 15.4936 12.9961 15.7479C13.2238 16.0021 13.3378 16.4101 13.3379 16.9716V18.0565C13.3378 18.618 13.2238 19.026 12.9961 19.2802C12.768 19.5345 12.4543 19.6624 12.0566 19.6624H11.083V15.3657H12.0566ZM6.62793 15.3364C6.83692 15.3364 7.00035 15.3959 7.11719 15.5162C7.24016 15.63 7.30173 15.8009 7.30176 16.0284V16.4702C7.30176 16.6977 7.24018 16.8717 7.11719 16.9921C7.00034 17.1059 6.83703 17.1631 6.62793 17.1631H5.15234V15.3364H6.62793Z\" />\n      <path d=\"M14.75 20.8196C14.4247 21.2062 14.028 21.5077 13.5654 21.712C13.5355 21.7252 13.5049 21.7368 13.4746 21.7491H14.75V20.8196ZM15.75 14.011V21.0171H17.0635V18.1464H19.3525V16.8015H17.0635V15.3657H19.75V14.011H15.75ZM12.3379 16.9716C12.3379 16.7544 12.3151 16.6073 12.2891 16.5142C12.2762 16.4682 12.2644 16.4406 12.2568 16.4262L12.252 16.4164C12.2382 16.4011 12.2276 16.395 12.2129 16.389C12.1965 16.3824 12.1572 16.371 12.083 16.3685V18.6596C12.1572 18.6571 12.1965 18.6457 12.2129 18.639C12.2276 18.633 12.2382 18.627 12.252 18.6117L12.2568 18.6019C12.2644 18.5874 12.2762 18.5598 12.2891 18.5139C12.3086 18.444 12.3264 18.3437 12.334 18.206L12.3379 18.0565V16.9716ZM12.4346 13.0277C12.827 13.0639 13.2062 13.1575 13.5654 13.3161C14.0306 13.5215 14.4269 13.8271 14.75 14.2172V13.0277H12.4346ZM7.12891 13.0277C7.43395 13.0598 7.73092 13.1376 8.0127 13.2682C8.28492 13.3898 8.53313 13.5507 8.75 13.75V13.0277H7.12891ZM5.15234 21.0171V18.4875H6.79395C7.0953 18.4875 7.36659 18.4343 7.60645 18.3272C7.8462 18.2135 8.04884 18.0589 8.21484 17.8649C8.38687 17.671 8.51911 17.4372 8.61133 17.1631C8.70358 16.8888 8.75 16.5839 8.75 16.2493C8.74999 15.9214 8.70356 15.6205 8.61133 15.3462C8.5191 15.0652 8.387 14.8277 8.21484 14.6336C8.0489 14.4397 7.8461 14.2891 7.60645 14.1821C7.36659 14.0683 7.0953 14.011 6.79395 14.011H3.75V21.0171H5.15234ZM6.15234 21.7491H8.75V18.7475C8.53881 18.9434 8.29986 19.1057 8.03516 19.2313L8.01367 19.2411C7.62716 19.4136 7.2139 19.4884 6.79395 19.4884H6.15234V21.7491ZM12.0566 21.0171C12.4601 21.0171 12.8288 20.9433 13.1621 20.7962C13.4953 20.649 13.7789 20.4317 14.0127 20.1442C14.2466 19.8498 14.428 19.4845 14.5566 19.0495C14.6853 18.6079 14.75 18.0962 14.75 17.514C14.75 16.9319 14.6853 16.4233 14.5566 15.9883C14.428 15.5467 14.2466 15.1823 14.0127 14.8946C13.7788 14.6002 13.4954 14.3791 13.1621 14.2319C12.8288 14.0847 12.4601 14.011 12.0566 14.011H9.75V21.0171H12.0566ZM13.3379 18.0565C13.3378 18.618 13.2238 19.026 12.9961 19.2802C12.768 19.5345 12.4543 19.6624 12.0566 19.6624H11.083V15.3657H12.0566C12.4543 15.3657 12.768 15.4936 12.9961 15.7479C13.2238 16.0021 13.3378 16.4101 13.3379 16.9716V18.0565ZM7.11719 15.5162C7.24016 15.63 7.30173 15.8009 7.30176 16.0284V16.4702C7.30176 16.6977 7.24018 16.8717 7.11719 16.9921C7.00034 17.1059 6.83703 17.1631 6.62793 17.1631H5.15234V15.3364H6.62793C6.83692 15.3364 7.00035 15.3959 7.11719 15.5162ZM2 19.9976C2 20.5925 2.29709 21.1169 2.75 21.4334V13.3425C2.29691 13.659 2.00009 14.1843 2 14.7793V19.9976ZM20.75 16.3666H20.3525V19.1473H18.0635V21.7491H19.75V22.75H3.75C2.23122 22.75 1 21.5177 1 19.9976V14.7793C1.00015 13.2593 2.23131 12.0269 3.75 12.0269H19.75C21.2687 12.0269 22.4998 13.2593 22.5 14.7793V19.9976C22.5 21.5177 21.2688 22.75 19.75 22.75V21.7491C20.7165 21.7491 21.5 20.965 21.5 19.9976V14.7793C21.4999 14.1843 21.2031 13.659 20.75 13.3425V16.3666Z\" />\n      <path d=\"M4 13.0102V4.09816C4 3.35392 4.28141 2.63287 4.79297 2.09644C5.30572 1.55881 6.0091 1.25 6.75 1.25H13.75C14.1699 1.24947 14.5848 1.33651 14.9707 1.50413C15.3569 1.67189 15.7056 1.91684 15.9971 2.2235C16.0118 2.23902 16.0267 2.25564 16.04 2.27237L18.6318 5.51442L18.6328 5.5154L18.6338 5.51736C18.6338 5.51736 18.6368 5.52081 18.6387 5.52322C18.6424 5.52802 18.6469 5.53541 18.6533 5.54375C18.6662 5.56053 18.6852 5.58405 18.707 5.61314C18.7506 5.67117 18.8098 5.7525 18.874 5.84479C18.9889 6.00989 19.1672 6.27869 19.2637 6.52213C19.4202 6.9177 19.5005 7.34098 19.5 7.76734V8.50626C19.5 8.92083 19.1642 9.25691 18.75 9.25691C18.3358 9.25691 18 8.92083 18 8.50626V7.76637C18.0004 7.52836 17.9555 7.29341 17.8691 7.07534C17.844 7.01186 17.7604 6.87089 17.6436 6.70295C17.5919 6.62877 17.5427 6.56206 17.5068 6.51431C17.4892 6.49086 17.4754 6.47199 17.4658 6.45958C17.4617 6.45418 17.4583 6.44975 17.4561 6.44687L14.8975 3.24587C14.7449 3.08871 14.5672 2.96526 14.374 2.88129C14.1755 2.79506 13.9636 2.75094 13.751 2.7513H6.75C6.43004 2.7513 6.11533 2.88455 5.87793 3.13346C5.6396 3.38354 5.5 3.73027 5.5 4.09816V13.0102C5.5 13.4247 5.16421 13.7608 4.75 13.7608C4.33579 13.7608 4 13.4247 4 13.0102Z\" />\n      <path d=\"M13 6.50454V2.00065C13 1.58608 13.3358 1.25 13.75 1.25C14.1642 1.25 14.5 1.58608 14.5 2.00065V6.50454C14.5 6.5709 14.5264 6.63452 14.5732 6.68145C14.6201 6.72837 14.6837 6.75475 14.75 6.75475H18.25C18.6642 6.75475 19 7.09083 19 7.5054C19 7.91997 18.6642 8.25605 18.25 8.25605H14.75C14.2859 8.25605 13.8409 8.07138 13.5127 7.74291C13.1845 7.41444 13 6.96907 13 6.50454Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function PersonIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M15 14.25C16.2598 14.25 17.4676 14.7508 18.3584 15.6416C19.2492 16.5324 19.75 17.7402 19.75 19V21C19.75 21.4142 19.4142 21.75 19 21.75C18.5858 21.75 18.25 21.4142 18.25 21V19C18.25 18.138 17.9073 17.3116 17.2979 16.7021C16.7264 16.1307 15.9644 15.7937 15.1611 15.7539L15 15.75H9C8.13805 15.75 7.31164 16.0927 6.70215 16.7021C6.09266 17.3116 5.75 18.138 5.75 19V21C5.75 21.4142 5.41421 21.75 5 21.75C4.58579 21.75 4.25 21.4142 4.25 21V19C4.25 17.7402 4.7508 16.5324 5.6416 15.6416C6.5324 14.7508 7.74022 14.25 9 14.25H15Z\" />\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M12 2.25C14.6234 2.25 16.75 4.37665 16.75 7C16.75 9.62335 14.6234 11.75 12 11.75C9.37665 11.75 7.25 9.62335 7.25 7C7.25 4.37665 9.37665 2.25 12 2.25ZM12 3.75C10.2051 3.75 8.75 5.20507 8.75 7C8.75 8.79493 10.2051 10.25 12 10.25C13.7949 10.25 15.25 8.79493 15.25 7C15.25 5.20507 13.7949 3.75 12 3.75Z\"\n      />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function PersonAddIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12 14.25C13.2598 14.25 14.4676 14.7508 15.3584 15.6416C16.2492 16.5324 16.75 17.7402 16.75 19V21C16.75 21.4142 16.4142 21.75 16 21.75C15.5858 21.75 15.25 21.4142 15.25 21V19C15.25 18.138 14.9073 17.3116 14.2979 16.7021C13.7264 16.1307 12.9644 15.7937 12.1611 15.7539L12 15.75H6C5.13805 15.75 4.31164 16.0927 3.70215 16.7021C3.09266 17.3116 2.75 18.138 2.75 19V21C2.75 21.4142 2.41421 21.75 2 21.75C1.58579 21.75 1.25 21.4142 1.25 21V19C1.25 17.7402 1.7508 16.5324 2.6416 15.6416C3.5324 14.7508 4.74022 14.25 6 14.25H12Z\" />\n      <path d=\"M19 7.25C19.4142 7.25 19.75 7.58579 19.75 8V10.25H22C22.4142 10.25 22.75 10.5858 22.75 11C22.75 11.4142 22.4142 11.75 22 11.75H19.75V14C19.75 14.4142 19.4142 14.75 19 14.75C18.5858 14.75 18.25 14.4142 18.25 14V11.75H16C15.5858 11.75 15.25 11.4142 15.25 11C15.25 10.5858 15.5858 10.25 16 10.25H18.25V8C18.25 7.58579 18.5858 7.25 19 7.25Z\" />\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M9 2.25C11.6234 2.25 13.75 4.37665 13.75 7C13.75 9.62335 11.6234 11.75 9 11.75C6.37665 11.75 4.25 9.62335 4.25 7C4.25 4.37665 6.37665 2.25 9 2.25ZM9 3.75C7.20507 3.75 5.75 5.20507 5.75 7C5.75 8.79493 7.20507 10.25 9 10.25C10.7949 10.25 12.25 8.79493 12.25 7C12.25 5.20507 10.7949 3.75 9 3.75Z\"\n      />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function PersonShieldedIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M13 6.75C13 4.95507 11.5449 3.5 9.75 3.5C7.95507 3.5 6.5 4.95507 6.5 6.75C6.5 8.54493 7.95507 10 9.75 10C11.5449 10 13 8.54493 13 6.75ZM14.5 6.75C14.5 9.37335 12.3734 11.5 9.75 11.5C7.12665 11.5 5 9.37335 5 6.75C5 4.12665 7.12665 2 9.75 2C12.3734 2 14.5 4.12665 14.5 6.75Z\" />\n      <path d=\"M2 20.75V18.75C2 17.4902 2.5008 16.2824 3.3916 15.3916C4.2824 14.5008 5.49022 14 6.75 14H10.0498C10.464 14 10.7998 14.3358 10.7998 14.75C10.7998 15.1642 10.464 15.5 10.0498 15.5H6.75C5.88805 15.5 5.06164 15.8427 4.45215 16.4521C3.84266 17.0616 3.5 17.888 3.5 18.75V20.75C3.5 21.1642 3.16421 21.5 2.75 21.5C2.33579 21.5 2 21.1642 2 20.75Z\" />\n      <path d=\"M19 16.25V14.75C19 14.4185 18.8682 14.1006 18.6338 13.8662C18.4288 13.6612 18.16 13.5344 17.874 13.5059L17.75 13.5C17.4185 13.5 17.1006 13.6318 16.8662 13.8662C16.6318 14.1006 16.5 14.4185 16.5 14.75V16.25C16.5 16.6642 16.1642 17 15.75 17C15.3358 17 15 16.6642 15 16.25V14.75C15 14.0207 15.2899 13.3214 15.8057 12.8057C16.3214 12.2899 17.0207 12 17.75 12L18.0215 12.0137C18.6511 12.0761 19.243 12.3543 19.6943 12.8057C20.2101 13.3214 20.5 14.0207 20.5 14.75V16.25C20.5 16.6642 20.1642 17 19.75 17C19.3358 17 19 16.6642 19 16.25Z\" />\n      <path d=\"M21 17.6494C21 17.5671 20.9329 17.5 20.8506 17.5H14.6494C14.5671 17.5 14.5 17.5671 14.5 17.6494V20.8506C14.5 20.9329 14.5671 21 14.6494 21H20.8506C20.9329 21 21 20.9329 21 20.8506V17.6494ZM22.5 20.8506C22.5 21.7613 21.7613 22.5 20.8506 22.5H14.6494C13.7387 22.5 13 21.7613 13 20.8506V17.6494C13 16.7387 13.7387 16 14.6494 16H20.8506C21.7613 16 22.5 16.7387 22.5 17.6494V20.8506Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function PinIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M17.25 4C17.25 3.66848 17.1182 3.35063 16.8838 3.11621C16.6494 2.88179 16.3315 2.75 16 2.75H8C7.66848 2.75 7.35063 2.88179 7.11621 3.11621C6.88179 3.35063 6.75 3.66848 6.75 4L6.75586 4.12402C6.78436 4.41001 6.9112 4.67878 7.11621 4.88379C7.35063 5.11821 7.66848 5.25 8 5.25C8.46413 5.25 8.90912 5.43451 9.2373 5.7627C9.56549 6.09088 9.75 6.53587 9.75 7V10.7607C9.74966 11.2722 9.60646 11.7733 9.33691 12.208C9.06811 12.6415 8.68387 12.991 8.22754 13.2188L6.44824 14.1191L6.44336 14.1221C6.23535 14.2255 6.05996 14.3846 5.9375 14.582C5.81497 14.7796 5.75015 15.0077 5.75 15.2402V16C5.75 16.0663 5.77636 16.1299 5.82324 16.1768C5.87013 16.2236 5.93369 16.25 6 16.25H18C18.0663 16.25 18.1299 16.2236 18.1768 16.1768C18.2236 16.1299 18.25 16.0663 18.25 16V15.2402C18.2498 15.0077 18.185 14.7796 18.0625 14.582C17.94 14.3846 17.7646 14.2255 17.5566 14.1221L17.5518 14.1191L15.7715 13.2197V13.2188C15.3155 12.991 14.9317 12.6412 14.6631 12.208C14.3935 11.7733 14.2503 11.2722 14.25 10.7607V7C14.25 6.53587 14.4345 6.09088 14.7627 5.7627C15.0909 5.43451 15.5359 5.25 16 5.25L16.124 5.24414C16.41 5.21564 16.6788 5.0888 16.8838 4.88379C17.1182 4.64937 17.25 4.33152 17.25 4ZM18.75 4C18.75 4.72935 18.4601 5.42861 17.9443 5.94434C17.493 6.39567 16.9011 6.67388 16.2715 6.73633L16 6.75C15.9337 6.75 15.8701 6.77636 15.8232 6.82324C15.7764 6.87013 15.75 6.9337 15.75 7V10.7598L15.7617 10.9326C15.7858 11.1042 15.8455 11.2697 15.9375 11.418C16.06 11.6154 16.2354 11.7745 16.4434 11.8779L16.4482 11.8809L18.2285 12.7803H18.2275C18.684 13.008 19.068 13.3584 19.3369 13.792C19.6065 14.2267 19.7497 14.7278 19.75 15.2393V16C19.75 16.4641 19.5655 16.9091 19.2373 17.2373C18.9091 17.5655 18.4641 17.75 18 17.75H12.75V22C12.75 22.4142 12.4142 22.75 12 22.75C11.5858 22.75 11.25 22.4142 11.25 22V17.75H6C5.53587 17.75 5.09088 17.5655 4.7627 17.2373C4.43451 16.9091 4.25 16.4641 4.25 16V15.2393L4.25684 15.0479C4.28814 14.6034 4.42727 14.1723 4.66309 13.792C4.93181 13.3586 5.31533 13.008 5.77148 12.7803L7.55176 11.8809L7.55664 11.8779C7.76465 11.7745 7.94004 11.6154 8.0625 11.418C8.15445 11.2697 8.21422 11.1042 8.23828 10.9326L8.25 10.7598V7C8.25 6.9337 8.22364 6.87013 8.17676 6.82324C8.12987 6.77636 8.0663 6.75 8 6.75C7.27065 6.75 6.57139 6.46006 6.05566 5.94434C5.60433 5.49301 5.32612 4.90113 5.26367 4.27148L5.25 4C5.25 3.27065 5.53994 2.57139 6.05566 2.05566C6.57139 1.53994 7.27065 1.25 8 1.25H16C16.7293 1.25 17.4286 1.53994 17.9443 2.05566C18.4601 2.57139 18.75 3.27065 18.75 4Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function PlusIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12 2.25C12.4142 2.25 12.75 2.58579 12.75 3V10.25H20C20.4142 10.25 20.75 10.5858 20.75 11C20.75 11.4142 20.4142 11.75 20 11.75H12.75V19C12.75 19.4142 12.4142 19.75 12 19.75C11.5858 19.75 11.25 19.4142 11.25 19V11.75H4C3.58579 11.75 3.25 11.4142 3.25 11C3.25 10.5858 3.58579 10.25 4 10.25H11.25V3C11.25 2.58579 11.5858 2.25 12 2.25Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function PlusCircledIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 12C21.25 6.89137 17.1086 2.75 12 2.75C6.89137 2.75 2.75 6.89137 2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C17.1086 21.25 21.25 17.1086 21.25 12ZM22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12C1.25 6.06294 6.06294 1.25 12 1.25C17.9371 1.25 22.75 6.06294 22.75 12Z\" />\n      <path d=\"M12 7C12.4142 7 12.75 7.33579 12.75 7.75V16.25C12.75 16.6642 12.4142 17 12 17C11.5858 17 11.25 16.6642 11.25 16.25V7.75C11.25 7.33579 11.5858 7 12 7Z\" />\n      <path d=\"M7 12C7 11.5858 7.33579 11.25 7.75 11.25H16.25C16.6642 11.25 17 11.5858 17 12C17 12.4142 16.6642 12.75 16.25 12.75H7.75C7.33579 12.75 7 12.4142 7 12Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function PowerOfAttorneyIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.0488 13.2844C20.4117 13.2908 20.7697 13.3692 21.1025 13.5139C21.4355 13.6587 21.737 13.8679 21.9893 14.1292C22.2415 14.3904 22.4402 14.6985 22.5732 15.0364C22.7063 15.3743 22.772 15.7358 22.7656 16.0989C22.7592 16.4618 22.6808 16.8198 22.5361 17.1526C22.3913 17.4856 22.1821 17.7871 21.9209 18.0393C21.9163 18.0438 21.9119 18.0487 21.9072 18.053L18.3291 21.3313C17.4696 22.2898 16.2683 22.7502 15 22.7502H11C9.71491 22.7502 8.4974 22.2788 7.63574 21.2942L6.33789 19.8342C6.31445 19.8078 6.28511 19.7862 6.25293 19.7717C6.23691 19.7645 6.2202 19.7588 6.20312 19.7551L6.15039 19.7502H5C4.58587 19.7502 4.25014 19.4143 4.25 19.0002C4.25 18.586 4.58579 18.2502 5 18.2502H6.15137L6.33594 18.26C6.5194 18.2796 6.69919 18.3276 6.86816 18.4036C7.09313 18.5048 7.2941 18.6528 7.45801 18.8372L8.76074 20.302L8.76465 20.3059C9.30298 20.9211 10.0852 21.2502 11 21.2502H15C15.9148 21.2502 16.697 20.9211 17.2354 20.3059C17.2534 20.2853 17.2728 20.2658 17.293 20.2473L20.8789 16.9602C20.9984 16.8449 21.0939 16.7072 21.1602 16.5549C21.2264 16.4026 21.2627 16.2386 21.2656 16.0725C21.2685 15.9063 21.2386 15.7408 21.1777 15.5862C21.1168 15.4315 21.0256 15.2907 20.9102 15.1711C20.7948 15.0517 20.6572 14.9562 20.5049 14.8899C20.3526 14.8236 20.1885 14.7874 20.0225 14.7844C19.8563 14.7815 19.6908 14.8114 19.5361 14.8723C19.3815 14.9332 19.2406 15.0245 19.1211 15.1399C19.1123 15.1484 19.1029 15.1563 19.0938 15.1643L15.8936 17.9641C15.5819 18.2368 15.1087 18.2054 14.8359 17.8938C14.5632 17.5821 14.5945 17.108 14.9062 16.8352L18.1064 14.0354C18.3618 13.7954 18.66 13.6053 18.9863 13.4768C19.3242 13.3437 19.6857 13.2781 20.0488 13.2844Z\" />\n      <path d=\"M15.25 16C15.25 15.6685 15.1182 15.3506 14.8838 15.1162C14.6494 14.8818 14.3315 14.75 14 14.75H2C1.58579 14.75 1.25 14.4142 1.25 14C1.25 13.5858 1.58579 13.25 2 13.25H14C14.7293 13.25 15.4286 13.5399 15.9443 14.0557C16.4601 14.5714 16.75 15.2707 16.75 16C16.75 16.7293 16.4601 17.4286 15.9443 17.9443C15.4286 18.4601 14.7293 18.75 14 18.75H12C11.5858 18.75 11.25 18.4142 11.25 18C11.25 17.5858 11.5858 17.25 12 17.25H14C14.3315 17.25 14.6494 17.1182 14.8838 16.8838C15.1182 16.6494 15.25 16.3315 15.25 16Z\" />\n      <path d=\"M4.25 20V14C4.25 13.5858 4.58579 13.25 5 13.25C5.41421 13.25 5.75 13.5858 5.75 14V20C5.75 20.4641 5.56549 20.9091 5.2373 21.2373C4.90912 21.5655 4.46413 21.75 4 21.75H2C1.58579 21.75 1.25 21.4142 1.25 21C1.25 20.5858 1.58579 20.25 2 20.25H4C4.06631 20.25 4.12987 20.2236 4.17676 20.1768C4.22364 20.1299 4.25 20.0663 4.25 20Z\" />\n      <path d=\"M4.25 10.4999V3.99988C4.25 3.27053 4.53994 2.57127 5.05566 2.05554C5.57139 1.53982 6.27065 1.24988 7 1.24988H14C14.4151 1.24937 14.8265 1.33124 15.21 1.49011C15.5458 1.62929 15.8547 1.82521 16.123 2.06922L16.2354 2.17664L16.2783 2.22449L18.8672 5.31238L18.8711 5.31726L18.8721 5.31824L18.873 5.32019C18.873 5.32019 18.8762 5.3229 18.8779 5.32508C18.8817 5.3297 18.8871 5.33655 18.8936 5.34461C18.9065 5.36066 18.9245 5.3833 18.9463 5.41101C18.9899 5.46649 19.0497 5.54426 19.1143 5.63269C19.2288 5.78961 19.4109 6.05067 19.5098 6.28894C19.669 6.67276 19.7505 7.08435 19.75 7.49988V10.4999C19.75 10.9141 19.4142 11.2499 19 11.2499C18.5858 11.2499 18.25 10.9141 18.25 10.4999V7.4989C18.2504 7.28095 18.2076 7.06447 18.124 6.86316C18.1012 6.80848 18.0204 6.67799 17.9033 6.51746C17.852 6.44717 17.8032 6.38408 17.7676 6.33875C17.7499 6.31629 17.7351 6.2988 17.7256 6.28699C17.7217 6.28219 17.719 6.27796 17.7168 6.27527L15.1562 3.22058C15.006 3.07382 14.8299 2.95633 14.6357 2.87586C14.4347 2.79255 14.2186 2.74953 14.001 2.74988H7C6.66848 2.74988 6.35063 2.88167 6.11621 3.11609C5.88179 3.35051 5.75 3.66836 5.75 3.99988V10.4999C5.75 10.9141 5.41421 11.2499 5 11.2499C4.58579 11.2499 4.25 10.9141 4.25 10.4999Z\" />\n      <path d=\"M13.25 6.49997V1.99997C13.25 1.58576 13.5858 1.24988 14 1.24988C14.4142 1.24988 14.75 1.58576 14.75 1.99997V6.49997C14.75 6.56628 14.7764 6.62985 14.8232 6.67673C14.8701 6.72362 14.9337 6.74997 15 6.74997H18.5C18.9142 6.74997 19.25 7.08576 19.25 7.49997C19.25 7.91419 18.9142 8.24997 18.5 8.24997H15C14.5359 8.24997 14.0909 8.06547 13.7627 7.73728C13.4345 7.40909 13.25 6.9641 13.25 6.49997Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function PrintIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M17.25 15C17.25 14.8619 17.1381 14.75 17 14.75H7C6.86193 14.75 6.75 14.8619 6.75 15V21C6.75 21.1381 6.86193 21.25 7 21.25H17C17.1381 21.25 17.25 21.1381 17.25 21V15ZM18.75 17.25H20C20.3315 17.25 20.6494 17.1182 20.8838 16.8838C21.1182 16.6494 21.25 16.3315 21.25 16V11C21.25 10.6685 21.1182 10.3506 20.8838 10.1162C20.6494 9.88179 20.3315 9.75 20 9.75H4C3.66848 9.75 3.35063 9.88179 3.11621 10.1162C2.88179 10.3506 2.75 10.6685 2.75 11V16C2.75 16.3315 2.88179 16.6494 3.11621 16.8838C3.35063 17.1182 3.66848 17.25 4 17.25H5.25V15C5.25 14.0335 6.0335 13.25 7 13.25H17C17.9665 13.25 18.75 14.0335 18.75 15V17.25ZM17.25 3C17.25 2.93369 17.2236 2.87013 17.1768 2.82324C17.1416 2.78804 17.0969 2.76447 17.0488 2.75488L17 2.75H7C6.9337 2.75 6.87013 2.77636 6.82324 2.82324C6.77636 2.87013 6.75 2.9337 6.75 3V8.25H17.25V3ZM18.75 8.25H20C20.7293 8.25 21.4286 8.53994 21.9443 9.05566C22.4601 9.57139 22.75 10.2707 22.75 11V16C22.75 16.7293 22.4601 17.4286 21.9443 17.9443C21.4286 18.4601 20.7293 18.75 20 18.75H18.75V21C18.75 21.9665 17.9665 22.75 17 22.75H7C6.0335 22.75 5.25 21.9665 5.25 21V18.75H4C3.27065 18.75 2.57139 18.4601 2.05566 17.9443C1.53994 17.4286 1.25 16.7293 1.25 16V11C1.25 10.2707 1.53994 9.57139 2.05566 9.05566C2.57139 8.53994 3.27065 8.25 4 8.25H5.25V3C5.25 2.53587 5.43451 2.09088 5.7627 1.7627C6.09088 1.43451 6.53587 1.25 7 1.25H17C17.4641 1.25 17.9091 1.43451 18.2373 1.7627C18.5655 2.09089 18.75 2.53587 18.75 3V8.25Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function PublishIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19 2.25C19.4142 2.25 19.75 2.58579 19.75 3C19.75 3.41421 19.4142 3.75 19 3.75H5C4.58579 3.75 4.25 3.41421 4.25 3C4.25 2.58579 4.58579 2.25 5 2.25H19Z\" />\n      <path d=\"M11.5264 6.41797C11.8209 6.17766 12.2557 6.19512 12.5303 6.46973L18.5303 12.4697C18.8232 12.7626 18.8232 13.2374 18.5303 13.5303C18.2374 13.8232 17.7626 13.8232 17.4697 13.5303L12 8.06055L6.53027 13.5303C6.23738 13.8232 5.76262 13.8232 5.46973 13.5303C5.17683 13.2374 5.17683 12.7626 5.46973 12.4697L11.4697 6.46973L11.5264 6.41797Z\" />\n      <path d=\"M11.25 21V7C11.25 6.58579 11.5858 6.25 12 6.25C12.4142 6.25 12.75 6.58579 12.75 7V21C12.75 21.4142 12.4142 21.75 12 21.75C11.5858 21.75 11.25 21.4142 11.25 21Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function QuestionAnswerIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M15.25 4C15.25 3.66848 15.1182 3.35063 14.8838 3.11621C14.6494 2.88179 14.3315 2.75 14 2.75H4C3.66848 2.75 3.35063 2.88179 3.11621 3.11621C2.88179 3.35063 2.75 3.66848 2.75 4V14.1895L4.88379 12.0557C5.39938 11.54 6.09891 11.2502 6.82812 11.25H14C14.3315 11.25 14.6494 11.1182 14.8838 10.8838C15.1182 10.6494 15.25 10.3315 15.25 10V4ZM22.7461 21.3936C22.7276 21.6443 22.6442 21.8866 22.5039 22.0967C22.3435 22.3367 22.1154 22.5243 21.8486 22.6348C21.5819 22.7452 21.2881 22.7741 21.0049 22.7178C20.7572 22.6685 20.5273 22.5557 20.3369 22.3916L20.2578 22.3184L18.0557 20.1162C17.8505 19.911 17.5812 19.7842 17.2949 19.7559L17.1719 19.75H10C9.27065 19.75 8.57139 19.4601 8.05566 18.9443C7.53994 18.4286 7.25 17.7293 7.25 17V16C7.25 15.5858 7.58579 15.25 8 15.25C8.41421 15.25 8.75 15.5858 8.75 16V17C8.75 17.3315 8.88179 17.6494 9.11621 17.8838C9.35063 18.1182 9.66848 18.25 10 18.25H17.1719C17.9011 18.2502 18.6006 18.54 19.1162 19.0557L21.25 21.1895V11C21.25 10.6685 21.1182 10.3506 20.8838 10.1162C20.6494 9.88179 20.3315 9.75 20 9.75C19.5858 9.75 19.25 9.41421 19.25 9C19.25 8.58579 19.5858 8.25 20 8.25C20.7293 8.25 21.4286 8.53994 21.9443 9.05566C22.4601 9.57139 22.75 10.2707 22.75 11V21.2861L22.7461 21.3936ZM16.75 10C16.75 10.7293 16.4601 11.4286 15.9443 11.9443C15.4286 12.4601 14.7293 12.75 14 12.75H6.82812C6.5381 12.7501 6.2585 12.851 6.03613 13.0332L5.94434 13.1162L3.74219 15.3184C3.53809 15.5224 3.27816 15.6614 2.99512 15.7178C2.71194 15.7741 2.41811 15.7452 2.15137 15.6348C1.88461 15.5243 1.65652 15.3367 1.49609 15.0967C1.35576 14.8866 1.27244 14.6443 1.25391 14.3936L1.25 14.2861V4C1.25 3.27065 1.53994 2.57139 2.05566 2.05566C2.57139 1.53994 3.27065 1.25 4 1.25H14C14.7293 1.25 15.4286 1.53994 15.9443 2.05566C16.4601 2.57139 16.75 3.27065 16.75 4V10Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function ReceiptIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M16.667 20.2454C17.058 20.2454 17.441 20.3571 17.7705 20.5676L17.7725 20.5696L18.7002 21.1653L18.7686 21.2024C18.8398 21.2342 18.9175 21.2507 18.9961 21.2502H19C19.0662 21.2502 19.1299 21.2238 19.1768 21.177C19.2236 21.1302 19.2499 21.0664 19.25 21.0002V3.00024C19.25 2.93402 19.2235 2.87035 19.1768 2.82349C19.1299 2.7766 19.0663 2.75024 19 2.75024H18.9961C18.8915 2.74967 18.7887 2.77859 18.7002 2.83423L17.7725 3.43091L17.7705 3.43188C17.4409 3.64243 17.0581 3.75415 16.667 3.75415C16.2759 3.75415 15.8931 3.64243 15.5635 3.43188L15.5615 3.43091L14.6289 2.8313C14.5406 2.77497 14.4378 2.74536 14.333 2.74536C14.2281 2.74536 14.1255 2.77577 14.0371 2.83228L14.0361 2.8313L13.1055 3.43091L13.1035 3.43188C12.8152 3.61606 12.4862 3.72493 12.1465 3.74927L12 3.75415C11.6089 3.75415 11.2261 3.64243 10.8965 3.43188L10.8945 3.43091L9.96289 2.8313C9.87456 2.77498 9.77176 2.74536 9.66699 2.74536C9.56204 2.74536 9.45953 2.77577 9.37109 2.83228L9.37012 2.8313L8.43848 3.43091L8.43652 3.43188C8.10694 3.64243 7.72411 3.75415 7.33301 3.75415C6.94191 3.75415 6.55908 3.64243 6.22949 3.43188L6.22754 3.43091L5.2998 2.83423C5.21127 2.77859 5.10848 2.74967 5.00391 2.75024H5C4.9337 2.75024 4.87013 2.7766 4.82324 2.82349C4.77646 2.87035 4.75 2.93402 4.75 3.00024V21.0002C4.75009 21.0664 4.77644 21.1302 4.82324 21.177C4.87011 21.2238 4.93377 21.2502 5 21.2502H5.00391C5.10854 21.2508 5.21123 21.221 5.2998 21.1653L6.22754 20.5696L6.22949 20.5676C6.55904 20.3571 6.94197 20.2454 7.33301 20.2454C7.72405 20.2454 8.10697 20.3571 8.43652 20.5676L8.43848 20.5686L9.37012 21.1682H9.37109C9.45946 21.2246 9.56216 21.2541 9.66699 21.2542C9.77182 21.2542 9.87452 21.2246 9.96289 21.1682L10.8945 20.5696L10.8965 20.5676C11.226 20.3571 11.609 20.2454 12 20.2454C12.391 20.2454 12.774 20.3571 13.1035 20.5676L13.1055 20.5696L14.0371 21.1682L14.1055 21.2053C14.1766 21.2377 14.2542 21.2542 14.333 21.2542C14.4118 21.2541 14.4894 21.2377 14.5605 21.2053L14.6289 21.1682L15.5615 20.5686L15.5635 20.5676C15.893 20.3571 16.2759 20.2454 16.667 20.2454ZM13 15.2502C13.4142 15.2502 13.75 15.586 13.75 16.0002C13.7498 16.4143 13.4141 16.7502 13 16.7502H8C7.5859 16.7502 7.25018 16.4143 7.25 16.0002C7.25 15.586 7.58579 15.2502 8 15.2502H13ZM16 11.2502C16.4142 11.2502 16.75 11.586 16.75 12.0002C16.7498 12.4143 16.4141 12.7502 16 12.7502H8C7.5859 12.7502 7.25018 12.4143 7.25 12.0002C7.25 11.586 7.58579 11.2502 8 11.2502H16ZM14 7.25024C14.4142 7.25024 14.75 7.58603 14.75 8.00024C14.7498 8.41431 14.4141 8.75024 14 8.75024H8C7.5859 8.75024 7.25018 8.41431 7.25 8.00024C7.25 7.58603 7.58579 7.25024 8 7.25024H14ZM20.75 21.0002C20.7499 21.4643 20.5654 21.9094 20.2373 22.2375C19.9098 22.5649 19.4659 22.7485 19.0029 22.7493L19.0039 22.7502L19.001 22.7493L19 22.7502V22.7493C18.611 22.7506 18.2296 22.6421 17.9004 22.4348L17.8945 22.4309L16.9629 21.8313C16.8746 21.775 16.7718 21.7454 16.667 21.7454C16.562 21.7454 16.4595 21.7758 16.3711 21.8323L16.3701 21.8313L15.4385 22.4309L15.4365 22.4319C15.1069 22.6424 14.7241 22.7542 14.333 22.7542C13.9419 22.7542 13.5591 22.6424 13.2295 22.4319L13.2275 22.4309L12.2959 21.8313C12.2076 21.775 12.1048 21.7454 12 21.7454C11.8951 21.7454 11.7925 21.7758 11.7041 21.8323L11.7031 21.8313L10.7725 22.4309L10.7705 22.4319C10.4409 22.6424 10.0581 22.7542 9.66699 22.7542C9.27589 22.7541 8.89306 22.6424 8.56348 22.4319L8.56152 22.4309L7.62891 21.8313C7.54057 21.775 7.43778 21.7454 7.33301 21.7454C7.22806 21.7454 7.12554 21.7758 7.03711 21.8323L7.03613 21.8313L6.10547 22.4309L6.09961 22.4348C5.77042 22.6421 5.38897 22.7506 5 22.7493H4.99805L4.99609 22.7502V22.7493C4.53345 22.7482 4.08995 22.5647 3.7627 22.2375C3.43458 21.9094 3.25009 21.4643 3.25 21.0002V3.00024C3.25 2.53619 3.43461 2.09111 3.7627 1.76294C4.08996 1.43567 4.53338 1.25225 4.99609 1.25122V1.25024L4.99805 1.25122L5 1.25024V1.25122C5.38905 1.24986 5.77037 1.35829 6.09961 1.56567L6.10547 1.5686V1.56958L7.03711 2.16821L7.10547 2.20532C7.17664 2.23766 7.25424 2.25415 7.33301 2.25415C7.41178 2.25415 7.48937 2.23766 7.56055 2.20532L7.62891 2.16821L8.56152 1.5686L8.56348 1.56763C8.89303 1.35714 9.27595 1.24536 9.66699 1.24536C10.0092 1.24536 10.3451 1.33098 10.6445 1.49341L10.7705 1.56763L10.7725 1.56958L11.7041 2.16821L11.7725 2.20532C11.8436 2.23766 11.9212 2.25415 12 2.25415L12.0781 2.24927C12.1553 2.23819 12.2296 2.21049 12.2959 2.16821L13.2275 1.56958L13.2295 1.56763C13.559 1.35714 13.942 1.24536 14.333 1.24536C14.6752 1.24536 15.0111 1.33097 15.3105 1.49341L15.4365 1.56763L15.4385 1.5686L16.3701 2.16821H16.3711C16.4595 2.2246 16.5622 2.25415 16.667 2.25415C16.7718 2.25415 16.8745 2.2246 16.9629 2.16821L17.8945 1.56958L17.9004 1.56567C18.2296 1.35829 18.611 1.24986 19 1.25122V1.25024L19.001 1.25122L19.0039 1.25024L19.0029 1.25122C19.466 1.252 19.9098 1.43544 20.2373 1.76294C20.5654 2.09111 20.75 2.53619 20.75 3.00024V21.0002Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function RedoIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M2.25 17C2.25 14.4141 3.27699 11.9339 5.10547 10.1055C6.93395 8.27699 9.41414 7.25 12 7.25H12.001C14.2504 7.25234 16.4253 8.03172 18.1602 9.44922L18.501 9.74121L18.502 9.74219L20.25 11.3154V7C20.25 6.58579 20.5858 6.25 21 6.25C21.4142 6.25 21.75 6.58579 21.75 7V13C21.75 13.4142 21.4142 13.75 21 13.75H15C14.5858 13.75 14.25 13.4142 14.25 13C14.25 12.5858 14.5858 12.25 15 12.25H19.0449L17.499 10.8584L17.2109 10.6113C15.7429 9.41178 13.9025 8.75194 11.999 8.75C9.81134 8.75026 7.71296 9.61907 6.16602 11.166C4.61884 12.7132 3.75 14.812 3.75 17C3.75 17.4142 3.41421 17.75 3 17.75C2.58579 17.75 2.25 17.4142 2.25 17Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function RowsIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.25 15.75H3.75V19C3.75 19.6904 4.30964 20.25 5 20.25H19C19.6904 20.25 20.25 19.6904 20.25 19V15.75ZM3.75 14.25H20.25V9.75H3.75V14.25ZM20.25 5C20.25 4.30964 19.6904 3.75 19 3.75H5C4.30964 3.75 3.75 4.30964 3.75 5V8.25H20.25V5ZM21.75 19C21.75 20.5188 20.5188 21.75 19 21.75H5C3.48122 21.75 2.25 20.5188 2.25 19V5C2.25 3.48122 3.48122 2.25 5 2.25H19C20.5188 2.25 21.75 3.48122 21.75 5V19Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function RefreshIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12 2.25C14.7193 2.25 17.3141 3.32884 19.2598 5.19922L20.25 6.18945V3C20.25 2.58579 20.5858 2.25 21 2.25C21.4142 2.25 21.75 2.58579 21.75 3V8C21.75 8.41421 21.4142 8.75 21 8.75H16C15.5858 8.75 15.25 8.41421 15.25 8C15.25 7.58579 15.5858 7.25 16 7.25H19.1895L18.21 6.27051V6.26953C16.5369 4.66642 14.3156 3.75 12 3.75C10.3684 3.75 8.77366 4.23419 7.417 5.14062C6.06031 6.04714 5.00236 7.33531 4.37794 8.84277C3.75354 10.3502 3.58993 12.0091 3.90821 13.6094C4.22654 15.2097 5.01224 16.6802 6.16602 17.834C7.31981 18.9878 8.79029 19.7735 10.3906 20.0918C11.9909 20.4101 13.6498 20.2465 15.1572 19.6221C16.6647 18.9976 17.9529 17.9397 18.8594 16.583C19.7658 15.2263 20.25 13.6316 20.25 12C20.25 11.5858 20.5858 11.25 21 11.25C21.4142 11.25 21.75 11.5858 21.75 12C21.75 13.9284 21.1778 15.8136 20.1065 17.417C19.0352 19.0202 17.5128 20.2699 15.7315 21.0078C13.9499 21.7458 11.989 21.9387 10.0977 21.5625C8.20644 21.1863 6.46898 20.258 5.10548 18.8945C3.74197 17.531 2.81374 15.7936 2.43751 13.9023C2.0613 12.011 2.25424 10.0501 2.99219 8.26855C3.73012 6.48719 4.97986 4.96484 6.58301 3.89355C8.18639 2.82221 10.0716 2.25 12 2.25Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ReplayIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12 2.25C13.9284 2.25 15.8136 2.82221 17.417 3.89355C19.0202 4.96484 20.2699 6.48719 21.0078 8.26855C21.7458 10.0501 21.9387 12.011 21.5625 13.9023C21.1863 15.7936 20.258 17.531 18.8945 18.8945C17.531 20.258 15.7936 21.1863 13.9023 21.5625C12.011 21.9387 10.0501 21.7458 8.26855 21.0078C6.48719 20.2699 4.96484 19.0202 3.89355 17.417C2.82221 15.8136 2.25 13.9284 2.25 12C2.25 11.5858 2.58579 11.25 3 11.25C3.41421 11.25 3.75 11.5858 3.75 12C3.75 13.6316 4.23419 15.2263 5.14062 16.583C6.04714 17.9397 7.33531 18.9976 8.84277 19.6221C10.3502 20.2465 12.0091 20.4101 13.6094 20.0918C15.2097 19.7735 16.6802 18.9878 17.834 17.834C18.9878 16.6802 19.7735 15.2097 20.0918 13.6094C20.4101 12.0091 20.2465 10.3502 19.6221 8.84277C18.9976 7.33531 17.9397 6.04714 16.583 5.14062C15.2266 4.23437 13.6323 3.75019 12.001 3.75C9.67914 3.75921 7.45063 4.66547 5.78125 6.2793L4.81055 7.25H8C8.41421 7.25 8.75 7.58579 8.75 8C8.75 8.41421 8.41421 8.75 8 8.75H3C2.58579 8.75 2.25 8.41421 2.25 8V3C2.25 2.58579 2.58579 2.25 3 2.25C3.41421 2.25 3.75 2.58579 3.75 3V6.18945L4.73828 5.20117C6.68638 3.3179 9.28752 2.26022 11.9971 2.25H12Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function ScaleIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M11.25 3C11.25 2.58579 11.5858 2.25 12 2.25C12.4142 2.25 12.75 2.58579 12.75 3V4.54199C15.0002 5.66385 17.4816 6.25 20 6.25H21C21.4142 6.25 21.75 6.58579 21.75 7C21.75 7.41421 21.4142 7.75 21 7.75H20C19.9166 7.75 19.8333 7.74629 19.75 7.74512V7.86328L22.7022 15.7363C22.8191 16.0481 22.7164 16.3997 22.4502 16.5996C21.4549 17.3461 20.2441 17.75 19 17.75C17.7559 17.75 16.5451 17.3461 15.5498 16.5996C15.2836 16.3997 15.181 16.0481 15.2979 15.7363L18.25 7.86328V7.66113C16.3509 7.47295 14.494 6.97975 12.75 6.19922V20.25H17C17.4142 20.25 17.75 20.5858 17.75 21C17.75 21.4142 17.4142 21.75 17 21.75H7.00001C6.5858 21.75 6.25001 21.4142 6.25001 21C6.25001 20.5858 6.5858 20.25 7.00001 20.25H11.25V6.19922C9.50603 6.97975 7.64913 7.47295 5.75001 7.66113V7.86328L8.70216 15.7363C8.81907 16.0481 8.71643 16.3997 8.45021 16.5996C7.4549 17.3461 6.24414 17.75 5.00001 17.75C3.75588 17.75 2.54512 17.3461 1.54982 16.5996C1.28359 16.3997 1.18096 16.0481 1.29786 15.7363L4.25001 7.86328V7.74512L4.00001 7.75H3.00001C2.5858 7.75 2.25001 7.41421 2.25001 7C2.25001 6.58579 2.5858 6.25 3.00001 6.25H4.00001C6.51841 6.25 8.99983 5.66385 11.25 4.54199V3ZM2.9131 15.6982C3.54777 16.0564 4.26509 16.25 5.00001 16.25C5.73464 16.25 6.45146 16.0561 7.08595 15.6982L5.00001 10.1357L2.9131 15.6982ZM16.9131 15.6982C17.5478 16.0564 18.2651 16.25 19 16.25C19.7346 16.25 20.4515 16.0561 21.0859 15.6982L19 10.1357L16.9131 15.6982Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function SearchIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M18.25 11C18.25 6.99594 15.0041 3.75 11 3.75C6.99594 3.75 3.75 6.99594 3.75 11C3.75 15.0041 6.99594 18.25 11 18.25C15.0041 18.25 18.25 15.0041 18.25 11ZM19.75 11C19.75 13.1462 18.9757 15.1106 17.6934 16.6328L21.5303 20.4697C21.8232 20.7626 21.8232 21.2374 21.5303 21.5303C21.2374 21.8232 20.7626 21.8232 20.4697 21.5303L16.6328 17.6934C15.1106 18.9757 13.1462 19.75 11 19.75C6.16751 19.75 2.25 15.8325 2.25 11C2.25 6.16751 6.16751 2.25 11 2.25C15.8325 2.25 19.75 6.16751 19.75 11Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function SectionIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M11.9973 2.25C9.93012 2.25 8.25002 3.92561 8.25002 5.99456C8.25002 6.66564 8.42913 7.30738 8.7503 7.86445C7.71468 8.15198 6.83771 8.94029 6.48831 10.0467C5.97325 11.6777 6.79281 13.4315 8.37438 14.0827L12.8602 15.9298C13.7012 16.2762 14.2501 17.0958 14.2501 18.0053C14.2501 19.2441 13.2434 20.2499 12.0028 20.2499C10.7593 20.2499 9.75013 19.2417 9.75013 17.9999C9.75013 17.5857 9.41434 17.2499 9.00013 17.2499C8.58591 17.2499 8.25013 17.5857 8.25013 17.9999C8.25013 20.0719 9.93267 21.7499 12.0028 21.7499C14.07 21.7499 15.7501 20.0743 15.7501 18.0053C15.7501 17.3343 15.571 16.6925 15.2498 16.1355C16.2854 15.8479 17.1624 15.0596 17.5118 13.9532C18.0269 12.3222 17.2073 10.5684 15.6257 9.91716L11.1399 8.07006C10.2989 7.72375 9.75002 6.90411 9.75002 5.99456C9.75002 4.75581 10.7568 3.75 11.9973 3.75C13.2408 3.75 14.25 4.75824 14.25 6C14.25 6.41421 14.5858 6.75 15 6.75C15.4142 6.75 15.75 6.41421 15.75 6C15.75 3.92805 14.0675 2.25 11.9973 2.25ZM13.1966 14.4462C13.2158 14.4514 13.235 14.4575 13.254 14.4643L13.765 14.6483C14.7227 14.993 15.7749 14.4721 16.0814 13.5015C16.3619 12.6135 15.9157 11.6587 15.0546 11.3042L10.8035 9.55372C10.7843 9.54848 10.7651 9.54243 10.7461 9.53557L10.2352 9.35164C9.27747 9.00686 8.2252 9.52779 7.91868 10.4984C7.63827 11.3864 8.08446 12.3412 8.94551 12.6957L13.1966 14.4462Z\"\n      />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function SettingsIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M18.2331 11.9998C18.2331 11.5035 18.3528 11.0143 18.5817 10.574C18.8106 10.1337 19.1423 9.75449 19.5485 9.46948C19.8661 9.23964 20.0878 8.90067 20.1706 8.51733C20.2539 8.13142 20.1903 7.72834 19.9928 7.38647C19.7954 7.04468 19.4781 6.78835 19.1022 6.66772C18.7262 6.54714 18.3182 6.5709 17.9587 6.73413C17.5106 6.94147 17.0193 7.03791 16.526 7.01636C16.0302 6.99468 15.5468 6.85422 15.1169 6.6062C14.6869 6.35812 14.3223 6.01005 14.0553 5.59155C13.7885 5.17312 13.6264 4.69628 13.5827 4.2019V4.20093C13.544 3.80934 13.3612 3.44625 13.07 3.1814C12.7773 2.91524 12.3962 2.76738 12.0007 2.76733C11.605 2.76733 11.223 2.9152 10.9303 3.1814C10.6379 3.44755 10.4551 3.81312 10.4176 4.20679C10.4151 4.234 10.4103 4.26068 10.4049 4.28687C10.3509 4.75083 10.1946 5.19713 9.94303 5.59155C9.67609 6.01001 9.3124 6.35813 8.88249 6.6062C8.4526 6.85423 7.96913 6.99463 7.47331 7.01636C6.97738 7.03804 6.48285 6.94081 6.03288 6.7312V6.73022C5.67558 6.57095 5.27173 6.54903 4.89909 6.6687C4.52355 6.78945 4.20578 7.04588 4.00846 7.38745C3.81116 7.72912 3.74759 8.13262 3.83073 8.51831C3.91393 8.90384 4.13822 9.2444 4.45866 9.47437C4.86183 9.75885 5.19095 10.1361 5.41862 10.574C5.64752 11.0142 5.76725 11.5035 5.76725 11.9998C5.7672 12.4958 5.64739 12.9845 5.41862 13.4246C5.1897 13.8648 4.85804 14.244 4.45182 14.5291C4.13417 14.7588 3.91265 15.0979 3.82975 15.4812C3.74642 15.8671 3.80899 16.2712 4.00651 16.613C4.20403 16.9548 4.52222 17.2102 4.89811 17.3308C5.27397 17.4514 5.68125 17.4285 6.04069 17.2654C6.48895 17.0576 6.9806 16.9598 7.47428 16.9812C7.97025 17.0028 8.45342 17.1443 8.88346 17.3923C9.31361 17.6404 9.67794 17.9883 9.94499 18.407C10.2111 18.8241 10.3723 19.299 10.4167 19.7917C10.4541 20.1856 10.6376 20.5519 10.9303 20.8181C11.223 21.0843 11.605 21.2312 12.0007 21.2312C12.3961 21.2312 12.7774 21.0841 13.07 20.8181C13.3627 20.5519 13.5462 20.1856 13.5837 19.7917C13.6281 19.2991 13.7893 18.824 14.0553 18.407C14.3223 17.9885 14.6869 17.6404 15.1169 17.3923C15.5468 17.1444 16.0302 17.0039 16.526 16.9822C17.0194 16.9606 17.5105 17.058 17.9587 17.2654L18.0964 17.3201C18.4202 17.4321 18.7734 17.4363 19.1022 17.3308C19.4779 17.2102 19.7954 16.9546 19.9928 16.613C20.1904 16.2712 20.2539 15.8671 20.1706 15.4812C20.0877 15.0979 19.866 14.7588 19.5485 14.5291L19.3991 14.4177C19.0604 14.1483 18.782 13.8097 18.5817 13.4246C18.3529 12.9844 18.2331 12.4958 18.2331 11.9998ZM14.2497 11.9998C14.2496 10.7572 13.2423 9.74976 11.9997 9.74976C10.7572 9.74992 9.74976 10.7573 9.74967 11.9998C9.74967 13.2423 10.7572 14.2496 11.9997 14.2498C13.2423 14.2498 14.2497 13.2424 14.2497 11.9998ZM15.7497 11.9998C15.7497 14.0708 14.0707 15.7498 11.9997 15.7498C9.92875 15.7496 8.24967 14.0707 8.24967 11.9998C8.24976 9.92886 9.9288 8.24992 11.9997 8.24976C14.0707 8.24976 15.7496 9.92876 15.7497 11.9998ZM19.7331 11.9998C19.7331 12.255 19.795 12.5067 19.9128 12.7332C20.0011 12.903 20.1188 13.0552 20.2604 13.1824L20.4098 13.3005L20.4157 13.3054C21.0394 13.7522 21.4744 14.4149 21.6364 15.1648C21.7983 15.9148 21.6755 16.6986 21.2917 17.363C20.9078 18.0273 20.2908 18.5252 19.5602 18.7595C18.8295 18.9939 18.0372 18.9478 17.3385 18.6306L17.3327 18.6277C17.1012 18.5198 16.8466 18.4691 16.5915 18.4802C16.3363 18.4914 16.0871 18.5645 15.8659 18.6921C15.6448 18.8198 15.4573 18.9984 15.32 19.2136C15.1826 19.429 15.0993 19.675 15.0768 19.9294V19.9343C15.004 20.6996 14.6484 21.4103 14.0798 21.9275C13.511 22.4448 12.7695 22.7312 12.0007 22.7312C11.2318 22.7312 10.4904 22.4448 9.92155 21.9275C9.35283 21.4103 8.99733 20.6996 8.92448 19.9343L8.9235 19.9285C8.90099 19.6741 8.81768 19.4289 8.68034 19.2136C8.54292 18.9982 8.35577 18.8188 8.13444 18.6912C7.91313 18.5635 7.6641 18.4913 7.40885 18.4802C7.15363 18.4692 6.89916 18.5197 6.66764 18.6277L6.66081 18.6306C5.96218 18.9478 5.1707 18.9938 4.4401 18.7595C3.70943 18.5252 3.09154 18.0275 2.70768 17.363C2.32388 16.6986 2.20101 15.9148 2.36295 15.1648C2.52494 14.4148 2.96088 13.7522 3.58463 13.3054L3.59049 13.3005C3.79926 13.154 3.96985 12.9595 4.08756 12.7332C4.20531 12.5067 4.2672 12.255 4.26725 11.9998C4.26725 11.7445 4.20525 11.4928 4.08756 11.2664C3.96982 11.0399 3.79939 10.8446 3.59049 10.698L3.58366 10.6931C2.96076 10.246 2.52647 9.58325 2.36491 8.83374C2.20339 8.08424 2.32621 7.3014 2.70963 6.63745C3.09304 5.97362 3.70935 5.47569 4.43913 5.24097C5.07782 5.0356 5.76384 5.04431 6.39323 5.26147L6.65885 5.36792L6.66667 5.37085C6.89821 5.47871 7.15269 5.52947 7.40788 5.51831C7.66281 5.50711 7.91143 5.43485 8.13249 5.30737C8.3537 5.17974 8.54102 5.00022 8.67838 4.78491C8.81571 4.56964 8.89901 4.32441 8.92155 4.07007C8.92446 4.03716 8.93024 4.00481 8.93717 3.97339C9.02869 3.24308 9.37554 2.56761 9.92155 2.07104C10.4904 1.55382 11.2318 1.26733 12.0007 1.26733C12.7695 1.26738 13.511 1.55375 14.0798 2.07104C14.5775 2.52375 14.9113 3.12501 15.0358 3.78101L15.0768 4.06519V4.07007C15.0993 4.32436 15.1827 4.56967 15.32 4.78491C15.4573 5.00022 15.6447 5.17972 15.8659 5.30737C16.0871 5.43503 16.3363 5.50715 16.5915 5.51831C16.8466 5.52946 17.1012 5.4787 17.3327 5.37085L17.3385 5.36792C18.0372 5.0507 18.8295 5.00467 19.5602 5.23901C20.2907 5.47333 20.9078 5.97128 21.2917 6.6355C21.6755 7.29992 21.7983 8.08369 21.6364 8.83374C21.4744 9.58378 21.0395 10.2473 20.4157 10.6941L20.4098 10.698C20.2008 10.8447 20.0306 11.0398 19.9128 11.2664C19.795 11.4929 19.7331 11.7445 19.7331 11.9998Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function SmsIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 5C21.25 4.66848 21.1182 4.35063 20.8838 4.11621C20.6494 3.88179 20.3315 3.75 20 3.75H4C3.66848 3.75 3.35063 3.88179 3.11621 4.11621C2.88179 4.35063 2.75 4.66848 2.75 5V21.1895L4.88379 19.0557C5.39938 18.54 6.09891 18.2502 6.82812 18.25H20C20.3315 18.25 20.6494 18.1182 20.8838 17.8838C21.1182 17.6494 21.25 17.3315 21.25 17V5ZM8.00977 10.25C8.42398 10.25 8.75977 10.5858 8.75977 11C8.75977 11.4142 8.42398 11.75 8.00977 11.75H8C7.58579 11.75 7.25 11.4142 7.25 11C7.25 10.5858 7.58579 10.25 8 10.25H8.00977ZM12.0098 10.25C12.424 10.25 12.7598 10.5858 12.7598 11C12.7598 11.4142 12.424 11.75 12.0098 11.75H12C11.5858 11.75 11.25 11.4142 11.25 11C11.25 10.5858 11.5858 10.25 12 10.25H12.0098ZM16.0098 10.25C16.424 10.25 16.7598 10.5858 16.7598 11C16.7598 11.4142 16.424 11.75 16.0098 11.75H16C15.5858 11.75 15.25 11.4142 15.25 11C15.25 10.5858 15.5858 10.25 16 10.25H16.0098ZM22.75 17C22.75 17.7293 22.4601 18.4286 21.9443 18.9443C21.4286 19.4601 20.7293 19.75 20 19.75H6.82812C6.5381 19.7501 6.2585 19.851 6.03613 20.0332L5.94434 20.1162L3.74219 22.3184C3.53809 22.5224 3.27816 22.6614 2.99512 22.7178C2.71194 22.7741 2.41811 22.7452 2.15137 22.6348C1.88461 22.5243 1.65652 22.3367 1.49609 22.0967C1.35576 21.8866 1.27244 21.6443 1.25391 21.3936L1.25 21.2861V5C1.25 4.27065 1.53994 3.57139 2.05566 3.05566C2.57139 2.53994 3.27065 2.25 4 2.25H20C20.7293 2.25 21.4286 2.53994 21.9443 3.05566C22.4601 3.57139 22.75 4.27065 22.75 5V17Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function StarIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12.1778 1.2627C12.295 1.27915 12.4095 1.3115 12.5177 1.35938L12.6749 1.44238L12.8194 1.54688C12.9104 1.62265 12.99 1.71085 13.0568 1.80859L13.1476 1.96191V1.96289L15.4571 6.6416C15.5556 6.84077 15.7013 7.01289 15.881 7.14355C16.0605 7.2741 16.2688 7.35929 16.4884 7.3916L21.6544 8.14746H21.6534C21.8306 8.17313 22 8.23559 22.1505 8.33008L22.295 8.43555L22.423 8.55957C22.5021 8.64783 22.5683 8.74694 22.6202 8.85352L22.6876 9.01855L22.7306 9.19141C22.7615 9.36646 22.7558 9.54682 22.713 9.7207C22.6701 9.89468 22.5914 10.0576 22.4825 10.1982L22.3634 10.3311L18.6271 13.9688C18.4678 14.1239 18.3492 14.3159 18.2804 14.5273C18.2116 14.7386 18.1953 14.9636 18.2325 15.1826L19.1144 20.3232H19.1134C19.1542 20.5583 19.1295 20.8002 19.0401 21.0215C18.9503 21.244 18.7997 21.4371 18.6056 21.5781C18.4114 21.7191 18.1809 21.8027 17.9415 21.8193C17.7023 21.8359 17.4628 21.7846 17.2511 21.6719V21.6709L12.6368 19.2461C12.4402 19.1429 12.2212 19.0889 11.9991 19.0889C11.7771 19.0889 11.558 19.1419 11.3614 19.2451L11.3624 19.2461L6.7462 21.6719C6.53451 21.7839 6.29566 21.8353 6.05675 21.8184C5.81796 21.8013 5.58826 21.718 5.39464 21.5771C5.20098 21.4363 5.05083 21.2435 4.96105 21.0215C4.8937 20.8549 4.86222 20.6763 4.86827 20.498L4.88683 20.3203L5.76769 15.1846C5.8053 14.9653 5.78858 14.7399 5.71984 14.5283C5.65101 14.3167 5.5326 14.124 5.37316 13.9688V13.9697L1.63683 10.332L1.63781 10.3311C1.46655 10.1648 1.34404 9.95521 1.28624 9.72363C1.22821 9.49101 1.23665 9.2466 1.31066 9.01855C1.38466 8.79052 1.52163 8.58781 1.70519 8.43359C1.88791 8.28016 2.10969 8.18046 2.34581 8.14648L7.51085 7.3916C7.73085 7.3596 7.94036 7.27518 8.12023 7.14453C8.30003 7.01391 8.44462 6.84085 8.54308 6.6416L10.8526 1.96289V1.96191C10.9585 1.74816 11.1227 1.56819 11.3253 1.44238L11.4825 1.35938C11.6449 1.28759 11.8212 1.25 12.0001 1.25L12.1778 1.2627ZM9.88878 7.30566C9.68266 7.72289 9.37761 8.08393 9.00109 8.35742C8.62477 8.63076 8.1879 8.8089 7.72765 8.87598L3.00011 9.56641L6.41906 12.8945C6.75283 13.2196 7.00253 13.6214 7.1466 14.0645C7.29055 14.5073 7.32491 14.9785 7.2462 15.4375L6.43956 20.1387L10.6642 17.918L10.8204 17.8418C11.1904 17.6752 11.5921 17.5889 11.9991 17.5889C12.4643 17.5889 12.9232 17.7017 13.3351 17.918L17.5607 20.1387L16.754 15.4365C16.6756 14.9776 16.7096 14.5062 16.8536 14.0635C16.9977 13.6208 17.2468 13.2194 17.5802 12.8945H17.5812L20.9972 9.56738L16.2716 8.87598H16.2706C15.8108 8.80842 15.374 8.62979 14.9982 8.35645C14.6224 8.08306 14.3183 7.72228 14.1124 7.30566L12.0001 3.02637L9.88878 7.30566Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function StarFilledIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12.1778 1.2627C12.295 1.27915 12.4095 1.3115 12.5177 1.35938L12.6749 1.44238L12.8194 1.54688C12.9104 1.62265 12.99 1.71085 13.0568 1.80859L13.1476 1.96191L15.4571 6.6416C15.5556 6.84077 15.7013 7.01289 15.881 7.14355C16.0605 7.2741 16.2688 7.35929 16.4884 7.3916L21.6544 8.14746C21.8316 8.17313 22 8.23559 22.1505 8.33008L22.295 8.43555L22.423 8.55957C22.5021 8.64783 22.5683 8.74694 22.6202 8.85352L22.6876 9.01855L22.7306 9.19141C22.7615 9.36646 22.7558 9.54682 22.713 9.7207C22.6701 9.89468 22.5914 10.0576 22.4825 10.1982L22.3634 10.3311L18.6271 13.9688C18.4678 14.1239 18.3492 14.3159 18.2804 14.5273C18.2116 14.7386 18.1953 14.9636 18.2325 15.1826L19.1144 20.3232C19.1552 20.5583 19.1295 20.8002 19.0401 21.0215C18.9503 21.244 18.7997 21.4371 18.6056 21.5781C18.4114 21.7191 18.1809 21.8027 17.9415 21.8193C17.7023 21.8359 17.4628 21.7846 17.2511 21.6719L12.6368 19.2461C12.4402 19.1429 12.2212 19.0889 11.9991 19.0889C11.7771 19.0889 11.558 19.1419 11.3614 19.2451L11.3624 19.2461L6.7462 21.6719C6.53451 21.7839 6.29566 21.8353 6.05675 21.8184C5.81796 21.8013 5.58826 21.718 5.39464 21.5771C5.20098 21.4363 5.05083 21.2435 4.96105 21.0215C4.8937 20.8549 4.86222 20.6763 4.86827 20.498L4.88683 20.3203L5.76769 15.1846C5.8053 14.9653 5.78858 14.7399 5.71984 14.5283C5.65101 14.3167 5.5326 14.124 5.37316 13.9688L1.63683 10.332L1.63781 10.3311C1.46655 10.1648 1.34404 9.95521 1.28624 9.72363C1.22821 9.49101 1.23665 9.2466 1.31066 9.01855C1.38466 8.79052 1.52163 8.58781 1.70519 8.43359C1.88791 8.28016 2.10969 8.18046 2.34581 8.14648L7.51085 7.3916C7.73085 7.3596 7.94036 7.27518 8.12023 7.14453C8.30003 7.01391 8.44462 6.84085 8.54308 6.6416L10.8526 1.96289C10.9585 1.74913 11.1227 1.56819 11.3253 1.44238L11.4825 1.35938C11.6449 1.28759 11.8212 1.25 12.0001 1.25L12.1778 1.2627Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function StarHalfFilledIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12.1777 1.2627C12.2949 1.27914 12.4094 1.31153 12.5176 1.35938L12.6748 1.44238L12.8193 1.54688C12.9102 1.62264 12.9899 1.71087 13.0566 1.80859L13.1475 1.96191L15.457 6.6416C15.5554 6.84074 15.7012 7.0129 15.8809 7.14355C16.0603 7.27407 16.2687 7.35927 16.4883 7.3916L21.6543 8.14746C21.8314 8.17313 21.9999 8.23563 22.1504 8.33008L22.2949 8.43555L22.4229 8.55957C22.502 8.64782 22.5682 8.74696 22.6201 8.85352L22.6875 9.01855L22.7305 9.19141C22.7614 9.36646 22.7557 9.54682 22.7129 9.7207C22.67 9.89467 22.5913 10.0576 22.4824 10.1982L22.3633 10.3311L18.627 13.9688C18.4677 14.1239 18.3491 14.3159 18.2803 14.5273C18.2115 14.7386 18.1952 14.9636 18.2324 15.1826L19.1143 20.3232C19.1551 20.5583 19.1294 20.8002 19.04 21.0215C18.9502 21.2439 18.7996 21.4371 18.6055 21.5781C18.4113 21.7191 18.1807 21.8027 17.9414 21.8193C17.7022 21.8359 17.4626 21.7846 17.251 21.6719L12.6367 19.2461C12.4401 19.1429 12.2211 19.0889 11.999 19.0889C11.777 19.0889 11.5579 19.142 11.3613 19.2451L11.3623 19.2461L6.74609 21.6719C6.53443 21.7839 6.2955 21.8353 6.05664 21.8184C5.8179 21.8013 5.58811 21.7179 5.39453 21.5771C5.20092 21.4363 5.0507 21.2435 4.96094 21.0215C4.89361 20.8549 4.86211 20.6763 4.86816 20.498L4.88672 20.3203L5.76758 15.1846C5.80519 14.9653 5.78847 14.7399 5.71973 14.5283C5.6509 14.3167 5.53248 14.124 5.37305 13.9688L1.63672 10.332L1.6377 10.3311C1.46648 10.1649 1.34392 9.95518 1.28613 9.72363C1.22811 9.49103 1.23656 9.24658 1.31055 9.01855C1.38454 8.79055 1.52156 8.5878 1.70508 8.43359C1.88776 8.28019 2.10963 8.18048 2.3457 8.14648L7.51074 7.3916C7.7307 7.3596 7.94027 7.27514 8.12012 7.14453C8.2999 7.01392 8.44452 6.84082 8.54297 6.6416L10.8525 1.96289C10.9584 1.74917 11.1226 1.56819 11.3252 1.44238L11.4824 1.35938C11.6448 1.28761 11.8212 1.25002 12 1.25L12.1777 1.2627ZM11.999 17.5889C12.4641 17.5889 12.9232 17.7018 13.335 17.918L17.5605 20.1387L16.7539 15.4365C16.6755 14.9776 16.7095 14.5062 16.8535 14.0635C16.9975 13.6208 17.2467 13.2194 17.5801 12.8945L20.9971 9.56738L16.2715 8.87598C15.8117 8.8084 15.3739 8.62976 14.998 8.35645C14.6223 8.08307 14.3181 7.72224 14.1123 7.30566L12 3.02637L11.999 17.5889Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function SyncIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.25 12C20.25 9.81196 19.3812 7.71319 17.834 6.16602C16.287 4.61907 14.1887 3.75026 12.001 3.75C9.67914 3.75921 7.45063 4.66547 5.78125 6.2793L4.81055 7.25H8C8.41421 7.25 8.75 7.58579 8.75 8C8.75 8.41421 8.41421 8.75 8 8.75H3C2.58579 8.75 2.25 8.41421 2.25 8V3C2.25 2.58579 2.58579 2.25 3 2.25C3.41421 2.25 3.75 2.58579 3.75 3V6.18945L4.73828 5.20117C6.68638 3.3179 9.28752 2.26022 11.9971 2.25H12C14.5859 2.25 17.0661 3.27699 18.8945 5.10547C20.723 6.93395 21.75 9.41414 21.75 12C21.75 12.4142 21.4142 12.75 21 12.75C20.5858 12.75 20.25 12.4142 20.25 12ZM21.75 21C21.75 21.4142 21.4142 21.75 21 21.75C20.5858 21.75 20.25 21.4142 20.25 21V17.8105L19.2617 18.7988C17.3136 20.6821 14.7125 21.7398 12.0029 21.75H12C9.41414 21.75 6.93395 20.723 5.10547 18.8945C3.27699 17.0661 2.25 14.5859 2.25 12C2.25 11.5858 2.58579 11.25 3 11.25C3.41421 11.25 3.75 11.5858 3.75 12C3.75 14.188 4.61884 16.2868 6.16602 17.834C7.71273 19.3807 9.81072 20.2485 11.998 20.249C14.3202 20.2401 16.5491 19.3348 18.2188 17.7207L19.1895 16.75H16C15.5858 16.75 15.25 16.4142 15.25 16C15.25 15.5858 15.5858 15.25 16 15.25H21C21.4142 15.25 21.75 15.5858 21.75 16V21Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function ThumbDownIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.2501 4C21.2501 3.6685 21.1183 3.35063 20.8839 3.11621C20.6495 2.88181 20.3316 2.75002 20.0001 2.75H17.7501V13.25H20.0001C20.3316 13.25 20.6495 13.1182 20.8839 12.8838C21.1183 12.6494 21.2501 12.3315 21.2501 12V4ZM6.50013 2.75C6.22968 2.75 5.96649 2.83775 5.75013 3C5.53375 3.16228 5.37566 3.39075 5.29993 3.65039L2.96985 11.6494C2.91562 11.8356 2.90587 12.0328 2.94056 12.2236C2.97528 12.4145 3.05363 12.5948 3.17005 12.75C3.28648 12.9052 3.43788 13.0314 3.61145 13.1182C3.78492 13.2048 3.97614 13.25 4.17005 13.25H10.0001C10.2301 13.25 10.4478 13.3553 10.59 13.5361C10.7321 13.7169 10.7829 13.9532 10.7286 14.1768L9.72864 18.2969V18.2998C9.64268 18.648 9.63601 19.0114 9.71009 19.3623C9.78419 19.713 9.93711 20.0426 10.1564 20.3262C10.3756 20.6097 10.656 20.8401 10.9767 21C11.1622 21.0925 11.3589 21.1588 11.5607 21.2002L14.7794 14.7744C15.0071 14.3171 15.3579 13.9323 15.7921 13.6631C15.938 13.5726 16.0914 13.4969 16.2501 13.4355V2.75H6.50013ZM22.7501 12C22.7501 12.7293 22.4602 13.4286 21.9445 13.9443C21.4288 14.46 20.7294 14.75 20.0001 14.75H17.2404C17.0078 14.7501 16.7798 14.815 16.5822 14.9375C16.3846 15.06 16.2247 15.2352 16.1212 15.4434L12.671 22.3359C12.5424 22.5928 12.2776 22.7536 11.9904 22.75C11.406 22.7427 10.8308 22.6035 10.3077 22.3428C9.78454 22.0819 9.32648 21.7057 8.96888 21.2432C8.61149 20.7808 8.36305 20.2437 8.24231 19.6719C8.13665 19.1714 8.13158 18.6556 8.22571 18.1543L8.27161 17.9404L9.047 14.75H4.17005C3.74327 14.75 3.3223 14.6508 2.94056 14.46C2.55876 14.2691 2.22599 13.9919 1.96985 13.6504C1.71373 13.3089 1.54038 12.9122 1.46399 12.4922C1.38764 12.0723 1.41095 11.6402 1.5304 11.2305L3.86048 3.23047C4.02707 2.65929 4.37378 2.15681 4.84973 1.7998C5.32575 1.44279 5.90511 1.25 6.50013 1.25H20.0001C20.7294 1.25002 21.4288 1.53996 21.9445 2.05566C22.4602 2.57139 22.7501 3.27067 22.7501 4V12Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function ThumbDownFilledIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.2501 4C21.2501 3.6685 21.1183 3.35063 20.8839 3.11621C20.6495 2.88181 20.3316 2.75002 20.0001 2.75H17.7501V13.25H20.0001C20.3316 13.25 20.6495 13.1182 20.8839 12.8838C21.1183 12.6494 21.2501 12.3315 21.2501 12V4ZM22.7501 12C22.7501 12.7293 22.4602 13.4286 21.9445 13.9443C21.4288 14.46 20.7294 14.75 20.0001 14.75H17.2404C17.0078 14.7501 16.7798 14.815 16.5822 14.9375C16.3846 15.06 16.2247 15.2352 16.1212 15.4434L12.671 22.3359C12.5424 22.5928 12.2776 22.7536 11.9904 22.75C11.406 22.7427 10.8308 22.6035 10.3077 22.3428C9.78454 22.0819 9.32648 21.7057 8.96888 21.2432C8.61149 20.7808 8.36305 20.2437 8.24231 19.6719C8.13665 19.1714 8.13158 18.6556 8.22571 18.1543L8.27161 17.9404L9.047 14.75H4.17005C3.74327 14.75 3.3223 14.6508 2.94056 14.46C2.55876 14.2691 2.22599 13.9919 1.96985 13.6504C1.71373 13.3089 1.54038 12.9122 1.46399 12.4922C1.38764 12.0723 1.41095 11.6402 1.5304 11.2305L3.86048 3.23047C4.02707 2.65929 4.37378 2.15681 4.84973 1.7998C5.32575 1.44279 5.90511 1.25 6.50013 1.25H20.0001C20.7294 1.25002 21.4288 1.53996 21.9445 2.05566C22.4602 2.57139 22.7501 3.27067 22.7501 4V12Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function ThumbUpIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12.0098 1.25006C12.5941 1.25737 13.1694 1.39654 13.6924 1.65728C14.2156 1.91813 14.6727 2.2944 15.0303 2.75689C15.3878 3.21936 15.637 3.75622 15.7578 4.32818C15.8786 4.9001 15.8686 5.49214 15.7285 6.05963L15.7275 6.05865L14.9531 9.25006H19.8301C20.2569 9.25007 20.6778 9.34929 21.0596 9.5401C21.4414 9.731 21.7741 10.0082 22.0303 10.3497C22.2864 10.6911 22.4588 11.088 22.5352 11.5079C22.6115 11.9278 22.5892 12.3598 22.4697 12.7696L20.1396 20.7696C19.9731 21.3407 19.6263 21.8432 19.1504 22.2003C18.6744 22.5573 18.095 22.7501 17.5 22.7501H4C3.27065 22.7501 2.57139 22.4601 2.05566 21.9444C1.53994 21.4287 1.25 20.7294 1.25 20.0001V12.0001C1.25 11.2707 1.53994 10.5714 2.05566 10.0557C2.57139 9.54 3.27065 9.25006 4 9.25006H6.75977L6.93262 9.23834C7.10415 9.21428 7.26969 9.15451 7.41797 9.06256C7.6154 8.9401 7.77446 8.7647 7.87793 8.5567L11.3291 1.66412L11.3838 1.57232C11.5244 1.36962 11.7585 1.24695 12.0098 1.25006ZM9.2207 9.22564C8.99301 9.683 8.64222 10.0677 8.20801 10.337C8.06226 10.4273 7.90859 10.5022 7.75 10.5635V21.2501H17.5C17.7705 21.2501 18.0336 21.1623 18.25 21.0001C18.4664 20.8378 18.6245 20.6093 18.7002 20.3497L21.0303 12.3506C21.0845 12.1645 21.0943 11.9672 21.0596 11.7764C21.0249 11.5855 20.9465 11.4053 20.8301 11.2501C20.7136 11.0948 20.5622 10.9687 20.3887 10.8819C20.2152 10.7952 20.024 10.7501 19.8301 10.7501H14C13.77 10.7501 13.5524 10.6447 13.4102 10.4639C13.268 10.2831 13.2172 10.0468 13.2715 9.8233L14.2715 5.70318V5.70025C14.3574 5.3521 14.3641 4.98863 14.29 4.63775C14.2159 4.28703 14.063 3.95748 13.8438 3.67389C13.6245 3.39039 13.3442 3.16001 13.0234 3.00006C12.8376 2.90741 12.6406 2.84028 12.4385 2.79889L9.2207 9.22564ZM2.75 20.0001C2.75 20.3316 2.88179 20.6494 3.11621 20.8838C3.35063 21.1183 3.66848 21.2501 4 21.2501H6.25V10.7501H4C3.66848 10.7501 3.35063 10.8818 3.11621 11.1163C2.88179 11.3507 2.75 11.6685 2.75 12.0001V20.0001Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function ThumbUpFilledIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M11.7598 1.00006C12.3441 1.00737 12.9194 1.14654 13.4424 1.40728C13.9656 1.66813 14.4227 2.0444 14.7803 2.50689C15.1378 2.96936 15.387 3.50622 15.5078 4.07818C15.6286 4.6501 15.6186 5.24214 15.4785 5.80963L15.4775 5.80865L14.7031 9.00006H19.5801C20.0069 9.00007 20.4278 9.09929 20.8096 9.2901C21.1914 9.481 21.5241 9.75818 21.7803 10.0997C22.0364 10.4411 22.2088 10.838 22.2852 11.2579C22.3615 11.6778 22.3392 12.1098 22.2197 12.5196L19.8896 20.5196C19.7231 21.0907 19.3763 21.5932 18.9004 21.9503C18.4244 22.3073 17.845 22.5001 17.25 22.5001H3.75C3.02065 22.5001 2.32139 22.2101 1.80566 21.6944C1.28994 21.1787 1 20.4794 1 19.7501V11.7501C1 11.0207 1.28994 10.3214 1.80566 9.80572C2.32139 9.29 3.02065 9.00006 3.75 9.00006H6.50977L6.68262 8.98834C6.85415 8.96428 7.01969 8.90451 7.16797 8.81256C7.3654 8.6901 7.52446 8.5147 7.62793 8.3067L11.0791 1.41412L11.1338 1.32232C11.2744 1.11962 11.5085 0.996946 11.7598 1.00006ZM2.5 19.7501C2.5 20.0816 2.63179 20.3994 2.86621 20.6338C3.10063 20.8683 3.41848 21.0001 3.75 21.0001H6V10.5001H3.75C3.41848 10.5001 3.10063 10.6318 2.86621 10.8663C2.63179 11.1007 2.5 11.4185 2.5 11.7501V19.7501Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function TimeIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 12C21.25 6.89137 17.1086 2.75 12 2.75C6.89137 2.75 2.75 6.89137 2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C17.1086 21.25 21.25 17.1086 21.25 12ZM11.25 6C11.25 5.58579 11.5858 5.25 12 5.25C12.4142 5.25 12.75 5.58579 12.75 6V11.5361L16.335 13.3291C16.7053 13.5143 16.8558 13.9646 16.6709 14.335C16.4857 14.7053 16.0354 14.8558 15.665 14.6709L11.665 12.6709C11.411 12.5439 11.25 12.2841 11.25 12V6ZM22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12C1.25 6.06294 6.06294 1.25 12 1.25C17.9371 1.25 22.75 6.06294 22.75 12Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function TingrettIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M12 16.6154C16.4183 16.6154 20 12.7581 20 8H4C4 12.7581 7.58172 16.6154 12 16.6154Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function TipIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M14 21.25C14.4142 21.25 14.75 21.5858 14.75 22C14.75 22.4142 14.4142 22.75 14 22.75H10C9.58579 22.75 9.25 22.4142 9.25 22C9.25 21.5858 9.58579 21.25 10 21.25H14ZM15 17.25C15.4142 17.25 15.75 17.5858 15.75 18C15.75 18.4142 15.4142 18.75 15 18.75H9C8.58579 18.75 8.25 18.4142 8.25 18C8.25 17.5858 8.58579 17.25 9 17.25H15ZM17.25 8C17.25 6.60761 16.6965 5.27265 15.7119 4.28809C14.7273 3.30352 13.3924 2.75 12 2.75C10.6076 2.75 9.27265 3.30352 8.28809 4.28809C7.30352 5.27265 6.75 6.60761 6.75 8L6.75879 8.32617C6.80363 9.1027 7.04463 9.98409 8.03027 10.9697C8.77237 11.7118 9.49274 12.64 9.73535 13.8525C9.81656 14.2586 9.55342 14.6539 9.14746 14.7354C8.74142 14.8166 8.34605 14.5534 8.26465 14.1475C8.10719 13.3602 7.62755 12.6881 6.96973 12.0303C5.68045 10.741 5.33097 9.50058 5.26367 8.44238L5.25 8C5.25 6.20979 5.96069 4.49243 7.22656 3.22656C8.49243 1.96069 10.2098 1.25 12 1.25C13.7902 1.25 15.5076 1.96069 16.7734 3.22656C18.0393 4.49243 18.75 6.20979 18.75 8C18.75 9.47307 18.1877 10.9722 17.0303 12.0303C16.2799 12.7807 15.8941 13.3538 15.7354 14.1475C15.6539 14.5534 15.2586 14.8166 14.8525 14.7354C14.4466 14.6539 14.1834 14.2586 14.2646 13.8525C14.506 12.6464 15.1202 11.8192 15.9697 10.9697L15.998 10.9424C16.8209 10.2019 17.25 9.11459 17.25 8Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function TrashIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M18.25 6.75H5.75V20C5.75 20.3315 5.88179 20.6494 6.11621 20.8838C6.35063 21.1182 6.66848 21.25 7 21.25H17C17.3315 21.25 17.6494 21.1182 17.8838 20.8838C18.1182 20.6494 18.25 20.3315 18.25 20V6.75ZM15.25 4C15.25 3.66848 15.1182 3.35063 14.8838 3.11621C14.6494 2.88179 14.3315 2.75 14 2.75H10C9.66848 2.75 9.35063 2.88179 9.11621 3.11621C8.88179 3.35063 8.75 3.66848 8.75 4V5.25H15.25V4ZM16.75 5.25H21C21.4142 5.25 21.75 5.58579 21.75 6C21.75 6.41421 21.4142 6.75 21 6.75H19.75V20C19.75 20.7293 19.4601 21.4286 18.9443 21.9443C18.4286 22.4601 17.7293 22.75 17 22.75H7C6.27065 22.75 5.57139 22.4601 5.05566 21.9443C4.53994 21.4286 4.25 20.7293 4.25 20V6.75H3C2.58579 6.75 2.25 6.41421 2.25 6C2.25 5.58579 2.58579 5.25 3 5.25H7.25V4C7.25 3.27065 7.53994 2.57139 8.05566 2.05566C8.57139 1.53994 9.27065 1.25 10 1.25H14C14.7293 1.25 15.4286 1.53994 15.9443 2.05566C16.4601 2.57139 16.75 3.27065 16.75 4V5.25Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function UndoIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.25 17C20.25 14.812 19.3812 12.7132 17.834 11.166C16.2868 9.61884 14.188 8.75 12 8.75C9.97001 8.75225 8.01222 9.50301 6.50098 10.8584L4.95508 12.25H9C9.41421 12.25 9.75 12.5858 9.75 13C9.75 13.4142 9.41421 13.75 9 13.75H3C2.58579 13.75 2.25 13.4142 2.25 13V7C2.25 6.58579 2.58579 6.25 3 6.25C3.41421 6.25 3.75 6.58579 3.75 7V11.3154L5.49805 9.74219L5.49902 9.74121C7.28521 8.13924 9.5997 7.2525 11.999 7.25H12C14.5859 7.25 17.0661 8.27699 18.8945 10.1055C20.723 11.9339 21.75 14.4141 21.75 17C21.75 17.4142 21.4142 17.75 21 17.75C20.5858 17.75 20.25 17.4142 20.25 17Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function UnfoldLessIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M11.5264 14.418C11.8209 14.1777 12.2557 14.1951 12.5303 14.4697L17.5303 19.4697C17.8232 19.7626 17.8232 20.2374 17.5303 20.5303C17.2374 20.8232 16.7626 20.8232 16.4697 20.5303L12 16.0605L7.53027 20.5303C7.23738 20.8232 6.76262 20.8232 6.46972 20.5303C6.17683 20.2374 6.17683 19.7626 6.46972 19.4697L11.4697 14.4697L11.5264 14.418Z\" />\n      <path d=\"M16.4697 3.46967C16.7626 3.17678 17.2374 3.17678 17.5303 3.46967C17.8232 3.76256 17.8232 4.23732 17.5303 4.53022L12.5303 9.53022C12.2374 9.82311 11.7626 9.82311 11.4697 9.53022L6.46972 4.53022C6.17683 4.23732 6.17683 3.76256 6.46972 3.46967C6.76262 3.17678 7.23738 3.17678 7.53027 3.46967L12 7.9394L16.4697 3.46967Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function UnfoldMoreIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M16.4697 14.4697C16.7626 14.1768 17.2374 14.1768 17.5303 14.4697C17.8232 14.7626 17.8232 15.2373 17.5303 15.5302L12.5303 20.5302C12.2374 20.8231 11.7626 20.8231 11.4697 20.5302L6.46972 15.5302C6.17683 15.2373 6.17683 14.7626 6.46972 14.4697C6.76262 14.1768 7.23738 14.1768 7.53027 14.4697L12 18.9394L16.4697 14.4697Z\" />\n      <path d=\"M11.5264 3.41796C11.8209 3.17765 12.2557 3.19512 12.5303 3.46972L17.5303 8.46972C17.8232 8.76261 17.8232 9.23737 17.5303 9.53027C17.2374 9.82316 16.7626 9.82316 16.4697 9.53027L12 5.06054L7.53027 9.53027C7.23738 9.82316 6.76262 9.82316 6.46972 9.53027C6.17683 9.23737 6.17683 8.76261 6.46972 8.46972L11.4697 3.46972L11.5264 3.41796Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function UploadIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M2.25 19.0001V15.0001C2.25 14.5859 2.58579 14.2501 3 14.2501C3.41421 14.2501 3.75 14.5859 3.75 15.0001V19.0001C3.75 19.3316 3.88179 19.6495 4.11621 19.8839C4.35063 20.1183 4.66848 20.2501 5 20.2501H19C19.3315 20.2501 19.6494 20.1183 19.8838 19.8839C20.1182 19.6495 20.25 19.3316 20.25 19.0001V15.0001C20.25 14.5859 20.5858 14.2501 21 14.2501C21.4142 14.2501 21.75 14.5859 21.75 15.0001V19.0001C21.75 19.7295 21.4601 20.4287 20.9443 20.9445C20.4286 21.4602 19.7293 21.7501 19 21.7501H5C4.27065 21.7501 3.57139 21.4602 3.05566 20.9445C2.53994 20.4287 2.25 19.7295 2.25 19.0001ZM11.25 15.0001V4.81066L7.53027 8.53039C7.23738 8.82328 6.76262 8.82328 6.46973 8.53039C6.17683 8.2375 6.17683 7.76274 6.46973 7.46984L11.4697 2.46984L11.5264 2.41809C11.8209 2.17778 12.2557 2.19524 12.5303 2.46984L17.5303 7.46984C17.8232 7.76274 17.8232 8.2375 17.5303 8.53039C17.2374 8.82328 16.7626 8.82328 16.4697 8.53039L12.75 4.81066V15.0001C12.75 15.4143 12.4142 15.7501 12 15.7501C11.5858 15.7501 11.25 15.4143 11.25 15.0001Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function VisibilityOffIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M1.4698 1.46979C1.76269 1.1769 2.23745 1.1769 2.53035 1.46979L22.5303 21.4698C22.8232 21.7627 22.8232 22.2375 22.5303 22.5303C22.2375 22.8232 21.7627 22.8232 21.4698 22.5303L17.3624 18.4229C16.0752 19.1013 14.6691 19.53 13.2188 19.6846C11.5789 19.8593 9.91974 19.6799 8.35554 19.1573C6.79137 18.6346 5.35791 17.7808 4.15242 16.6553C2.94699 15.5299 1.99694 14.1585 1.36824 12.6339C1.36488 12.6257 1.36153 12.6167 1.35847 12.6085C1.21287 12.2157 1.2127 11.7834 1.35847 11.3907L1.36824 11.3663C2.19498 9.36138 3.56877 7.63626 5.32429 6.38483L1.4698 2.53034C1.17691 2.23745 1.17691 1.76269 1.4698 1.46979ZM6.40339 7.46393C4.78345 8.55807 3.51492 10.1049 2.76277 11.918C2.74485 11.9698 2.74471 12.0262 2.76179 12.0782C3.30852 13.3974 4.13195 14.585 5.17585 15.5596C6.22404 16.5382 7.47111 17.28 8.83113 17.7344C10.1912 18.1888 11.6337 18.3453 13.0596 18.1934C14.1648 18.0756 15.2398 17.7724 16.2423 17.3028L14.0675 15.128C13.4492 15.5366 12.7191 15.7565 11.9678 15.7501C10.9847 15.7415 10.044 15.3466 9.3487 14.6514C8.65359 13.9563 8.25875 13.0163 8.25007 12.0333C8.24354 11.2817 8.46236 10.5503 8.87117 9.93171L6.40339 7.46393ZM9.97077 11.0313C9.82458 11.3371 9.7471 11.6744 9.75007 12.0196C9.75521 12.6095 9.99214 13.1737 10.4093 13.5909C10.8264 14.008 11.3907 14.2449 11.9805 14.2501C12.3253 14.253 12.6612 14.1732 12.9669 14.0274L9.97077 11.0313Z\"\n      />\n      <path d=\"M10.6446 4.33112C13.1364 4.03428 15.658 4.5611 17.8223 5.83112C19.8513 7.0219 21.4631 8.80466 22.4444 10.9346L22.6319 11.3653L22.6417 11.3897C22.7874 11.7824 22.7873 12.2148 22.6417 12.6075C22.6386 12.6157 22.6352 12.6248 22.6319 12.6329C22.2389 13.5857 21.7187 14.4816 21.087 15.296C20.8331 15.6232 20.3615 15.6826 20.0343 15.4288C19.7075 15.1749 19.648 14.7041 19.9014 14.377C20.4469 13.6739 20.8965 12.9002 21.2374 12.0782C21.2546 12.0266 21.2547 11.9706 21.2374 11.919C20.4047 9.90936 18.939 8.22522 17.0626 7.12409C15.1808 6.01998 12.9888 5.56234 10.8223 5.82038C10.411 5.86939 10.0374 5.57543 9.98835 5.16413C9.9397 4.75311 10.2336 4.38018 10.6446 4.33112Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function VisibilityOnIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M12.0001 8.25C14.0711 8.25003 15.7501 9.92895 15.7501 12C15.7501 14.071 14.0711 15.75 12.0001 15.75C9.929 15.75 8.25007 14.0711 8.25007 12C8.25007 9.92893 9.929 8.25 12.0001 8.25ZM12.0001 9.75C10.7574 9.75 9.75007 10.7574 9.75007 12C9.75007 13.2426 10.7574 14.25 12.0001 14.25C13.2427 14.25 14.2501 13.2426 14.2501 12C14.2501 10.7574 13.2427 9.75003 12.0001 9.75Z\"\n      />\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M12.0001 4.25098C14.2773 4.25107 16.5031 4.92777 18.3956 6.19434C20.2882 7.46106 21.7626 9.26083 22.6309 11.3662C22.6343 11.3744 22.6376 11.3833 22.6407 11.3916C22.7864 11.7844 22.7865 12.2166 22.6407 12.6094C22.6376 12.6176 22.6343 12.6267 22.6309 12.6348C21.7625 14.7399 20.288 16.5401 18.3956 17.8066C16.5032 19.073 14.2771 19.7499 12.0001 19.75C9.72281 19.7499 7.49611 19.0732 5.60358 17.8066C3.71112 16.54 2.23657 14.7399 1.36823 12.6348C1.36485 12.6266 1.36155 12.6177 1.35847 12.6094C1.2127 12.2167 1.21287 11.7843 1.35847 11.3916L1.36823 11.3662C2.2365 9.261 3.71116 7.46104 5.60358 6.19434C7.49614 4.9277 9.72276 4.25106 12.0001 4.25098ZM12.0001 5.75098C10.0198 5.75106 8.08325 6.33902 6.43757 7.44043C4.7974 8.5383 3.51776 10.0971 2.76179 11.9199C2.74424 11.972 2.74499 12.029 2.76276 12.0811C3.51882 13.9037 4.79746 15.4628 6.43757 16.5605C8.08322 17.6619 10.0199 18.2499 12.0001 18.25C13.9801 18.2499 15.916 17.6617 17.5616 16.5605C19.2016 15.4629 20.4793 13.9035 21.2354 12.0811C21.2534 12.0287 21.2542 11.9723 21.2364 11.9199C20.4803 10.097 19.2019 8.53825 17.5616 7.44043C15.916 6.33909 13.9802 5.75107 12.0001 5.75098Z\"\n      />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function WarningIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 8.68848C21.2499 8.35706 21.1181 8.03904 20.8838 7.80469L16.1953 3.11621C15.9903 2.91121 15.7215 2.78435 15.4355 2.75586L15.3115 2.75H8.68848C8.35706 2.75007 8.03904 2.88187 7.80469 3.11621L3.11621 7.80469C2.88187 8.03904 2.75007 8.35706 2.75 8.68848V15.3115L2.75586 15.4355C2.78435 15.7215 2.91121 15.9903 3.11621 16.1953L7.80469 20.8838L7.89648 20.9668C8.11883 21.1489 8.39853 21.2499 8.68848 21.25H15.3115C15.6429 21.2499 15.961 21.1181 16.1953 20.8838L20.8838 16.1953L20.9668 16.1035C21.1489 15.8812 21.2499 15.6015 21.25 15.3115V8.68848ZM22.75 15.3125C22.7498 16.0417 22.46 16.7413 21.9443 17.2568L21.9434 17.2559L17.2559 21.9434L17.2568 21.9443C16.7413 22.46 16.0417 22.7498 15.3125 22.75H8.6875C7.95834 22.7498 7.25869 22.46 6.74316 21.9443L2.05566 17.2559C1.53998 16.7403 1.25025 16.0417 1.25 15.3125V8.6875L1.26367 8.41602C1.32632 7.78656 1.60439 7.1943 2.05566 6.74316L6.74316 2.05566C7.25869 1.53998 7.95834 1.25025 8.6875 1.25H15.3125L15.584 1.26367C16.2134 1.32632 16.8057 1.60439 17.2568 2.05566L21.9434 6.74316C22.459 7.25869 22.7498 7.95834 22.75 8.6875V15.3125Z\" />\n      <path d=\"M12.0245 7.00915C12.5766 7.00971 13.0236 7.45824 13.0232 8.01045L13.0198 12.5144C13.0193 13.0665 12.5715 13.5133 12.0195 13.5131C11.4672 13.5127 11.0194 13.065 11.0198 12.5128L11.0232 8.00884C11.0236 7.45655 11.4722 7.0087 12.0245 7.00915Z\" />\n      <path d=\"M12.0278 14.7639C12.7181 14.7639 13.2778 15.3236 13.2778 16.0139C13.2778 16.7043 12.7181 17.2639 12.0278 17.2639H12.018C11.3276 17.2639 10.768 16.7043 10.768 16.0139C10.768 15.3236 11.3276 14.7639 12.018 14.7639H12.0278Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function WebexIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M7.16445 3.02741C5.37251 3.2006 4.00929 4.54287 3.55167 5.19235C5.71934 5.89286 5.1413 9.08924 5.71934 10.6047C6.00836 9.73873 6.65866 7.71812 7.67024 7.71812C10.3525 7.71812 9.18761 21.2516 16.3409 20.9964C22.4104 20.7799 24 10.0274 24 8.00678C24 5.83103 21.8323 5.6975 21.8323 5.6975C21.8323 5.6975 23.2325 7.80594 22.5 9.73872C21.7039 11.8393 19.3034 11.615 18.9421 11.3985C18.5086 13.1305 17.5693 16.3057 16.3409 16.3057C14.5 16.3057 14.1251 8.65625 12.1501 5.6975C10.9458 3.89338 9.40437 2.81091 7.16445 3.02741Z\" />\n      <path d=\"M16.2687 3.0274C14.1732 3.18241 12.9449 4.20609 12.3669 4.83152C14 6.5 14.679 10.6047 14.679 10.6047C14.8958 9.30573 15.4714 7.64595 16.2687 7.64595C17.0659 7.64595 17.3525 8.00677 18.0028 9.73872C18.5644 11.2344 22.6151 11.0722 21.9046 7.79027C21.3265 5.12018 18.6531 2.851 16.2687 3.0274Z\" />\n      <path d=\"M8.03151 20.9243C9.91016 20.9243 11.4998 19.1923 11.4998 19.1923C9.98242 16.883 9.33212 13.6356 9.33212 13.6356C9.33212 13.6356 8.75685 16.3057 7.81475 16.3057C5.93611 16.3057 4.82819 10.4844 4.34648 7.35728C4.12972 6.41914 3.306 5.42327 1.74528 5.76966C0.184558 6.11605 -0.0611107 7.54972 0.0111449 8.22326C0.251997 10.6288 0.950471 15.0068 3.04588 18.2542C4.62908 20.7078 6.36963 20.9243 8.03151 20.9243Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function XIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M17.7508 3H20.8175L14.1175 10.6583L22 21.0775H15.8283L10.995 14.7575L5.46333 21.0775H2.395L9.56167 12.8858L2 3.00083H8.32833L12.6975 8.7775L17.7508 3ZM16.675 19.2425H18.3742L7.405 4.73917H5.58167L16.675 19.2425Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function ZoomInIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M18.25 11C18.25 6.99594 15.0041 3.75 11 3.75C6.99594 3.75 3.75 6.99594 3.75 11C3.75 15.0041 6.99594 18.25 11 18.25C12.9655 18.25 14.7469 17.4663 16.0527 16.1963C16.073 16.1696 16.0958 16.1445 16.1201 16.1201C16.1445 16.0958 16.1696 16.073 16.1963 16.0527C17.4663 14.7469 18.25 12.9655 18.25 11ZM10.25 14V11.75H8C7.58579 11.75 7.25 11.4142 7.25 11C7.25 10.5858 7.58579 10.25 8 10.25H10.25V8C10.25 7.58579 10.5858 7.25 11 7.25C11.4142 7.25 11.75 7.58579 11.75 8V10.25H14C14.4142 10.25 14.75 10.5858 14.75 11C14.75 11.4142 14.4142 11.75 14 11.75H11.75V14C11.75 14.4142 11.4142 14.75 11 14.75C10.5858 14.75 10.25 14.4142 10.25 14ZM19.75 11C19.75 13.1462 18.9757 15.1106 17.6934 16.6328L21.5303 20.4697C21.8232 20.7626 21.8232 21.2374 21.5303 21.5303C21.2374 21.8232 20.7626 21.8232 20.4697 21.5303L16.6328 17.6934C15.1106 18.9757 13.1462 19.75 11 19.75C6.16751 19.75 2.25 15.8325 2.25 11C2.25 6.16751 6.16751 2.25 11 2.25C15.8325 2.25 19.75 6.16751 19.75 11Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function ZoomOutIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M18.25 11C18.25 6.99594 15.0041 3.75 11 3.75C6.99594 3.75 3.75 6.99594 3.75 11C3.75 15.0041 6.99594 18.25 11 18.25C12.9655 18.25 14.7469 17.4663 16.0527 16.1963C16.073 16.1696 16.0958 16.1445 16.1201 16.1201C16.1445 16.0958 16.1696 16.073 16.1963 16.0527C17.4663 14.7469 18.25 12.9655 18.25 11ZM14 10.25C14.4142 10.25 14.75 10.5858 14.75 11C14.75 11.4142 14.4142 11.75 14 11.75H8C7.58579 11.75 7.25 11.4142 7.25 11C7.25 10.5858 7.58579 10.25 8 10.25H14ZM19.75 11C19.75 13.1462 18.9757 15.1106 17.6934 16.6328L21.5303 20.4697C21.8232 20.7626 21.8232 21.2374 21.5303 21.5303C21.2374 21.8232 20.7626 21.8232 20.4697 21.5303L16.6328 17.6934C15.1106 18.9757 13.1462 19.75 11 19.75C6.16751 19.75 2.25 15.8325 2.25 11C2.25 6.16751 6.16751 2.25 11 2.25C15.8325 2.25 19.75 6.16751 19.75 11Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function BarChartIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M4.25 21V15C4.25 14.5858 4.58579 14.25 5 14.25C5.41421 14.25 5.75 14.5858 5.75 15V21C5.75 21.4142 5.41421 21.75 5 21.75C4.58579 21.75 4.25 21.4142 4.25 21Z\" />\n      <path d=\"M11.25 21V3C11.25 2.58579 11.5858 2.25 12 2.25C12.4142 2.25 12.75 2.58579 12.75 3V21C12.75 21.4142 12.4142 21.75 12 21.75C11.5858 21.75 11.25 21.4142 11.25 21Z\" />\n      <path d=\"M18.25 21V9C18.25 8.58579 18.5858 8.25 19 8.25C19.4142 8.25 19.75 8.58579 19.75 9V21C19.75 21.4142 19.4142 21.75 19 21.75C18.5858 21.75 18.25 21.4142 18.25 21Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function BarChartBoxedIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M2.25 19V3C2.25 2.58579 2.58579 2.25 3 2.25C3.41421 2.25 3.75 2.58579 3.75 3V19C3.75 19.3315 3.88179 19.6494 4.11621 19.8838C4.35063 20.1182 4.66848 20.25 5 20.25H21C21.4142 20.25 21.75 20.5858 21.75 21C21.75 21.4142 21.4142 21.75 21 21.75H5C4.27065 21.75 3.57139 21.4601 3.05566 20.9443C2.53994 20.4286 2.25 19.7293 2.25 19Z\" />\n      <path d=\"M17.25 17V9C17.25 8.58579 17.5858 8.25 18 8.25C18.4142 8.25 18.75 8.58579 18.75 9V17C18.75 17.4142 18.4142 17.75 18 17.75C17.5858 17.75 17.25 17.4142 17.25 17Z\" />\n      <path d=\"M12.25 17V5C12.25 4.58579 12.5858 4.25 13 4.25C13.4142 4.25 13.75 4.58579 13.75 5V17C13.75 17.4142 13.4142 17.75 13 17.75C12.5858 17.75 12.25 17.4142 12.25 17Z\" />\n      <path d=\"M7.25 17V14C7.25 13.5858 7.58579 13.25 8 13.25C8.41421 13.25 8.75 13.5858 8.75 14V17C8.75 17.4142 8.41421 17.75 8 17.75C7.58579 17.75 7.25 17.4142 7.25 17Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function LineChartIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M2.25 19V3C2.25 2.58579 2.58579 2.25 3 2.25C3.41421 2.25 3.75 2.58579 3.75 3V19C3.75 19.3315 3.88179 19.6494 4.11621 19.8838C4.35063 20.1182 4.66848 20.25 5 20.25H21C21.4142 20.25 21.75 20.5858 21.75 21C21.75 21.4142 21.4142 21.75 21 21.75H5C4.27065 21.75 3.57139 21.4601 3.05566 20.9443C2.53994 20.4286 2.25 19.7293 2.25 19Z\" />\n      <path d=\"M18.4697 8.46973C18.7626 8.17683 19.2374 8.17683 19.5303 8.46973C19.8232 8.76262 19.8232 9.23738 19.5303 9.53027L14.5303 14.5303C14.2374 14.8232 13.7626 14.8232 13.4697 14.5303L10 11.0605L7.53027 13.5303C7.23738 13.8232 6.76262 13.8232 6.46973 13.5303C6.17683 13.2374 6.17683 12.7626 6.46973 12.4697L9.46973 9.46973L9.52637 9.41797C9.82095 9.17766 10.2557 9.19512 10.5303 9.46973L14 12.9395L18.4697 8.46973Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function TrendingUpIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 13V7.75H16C15.5858 7.75 15.25 7.41421 15.25 7C15.25 6.58579 15.5858 6.25 16 6.25H22C22.4142 6.25 22.75 6.58579 22.75 7V13C22.75 13.4142 22.4142 13.75 22 13.75C21.5858 13.75 21.25 13.4142 21.25 13Z\" />\n      <path d=\"M21.4697 6.46973C21.7626 6.17683 22.2374 6.17683 22.5303 6.46973C22.8232 6.76262 22.8232 7.23738 22.5303 7.53027L14.0303 16.0303C13.7374 16.3232 13.2626 16.3232 12.9697 16.0303L8.5 11.5605L2.53028 17.5303C2.23738 17.8232 1.76262 17.8232 1.46973 17.5303C1.17684 17.2374 1.17684 16.7626 1.46973 16.4697L7.96973 9.96973L8.02637 9.91797C8.32095 9.67766 8.75567 9.69512 9.03028 9.96973L13.5 14.4395L21.4697 6.46973Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function TrendingDownIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M21.25 10.9999C21.25 10.5857 21.5858 10.2499 22 10.2499C22.4142 10.2499 22.75 10.5857 22.75 10.9999V16.9999C22.75 17.4142 22.4142 17.7499 22 17.7499H16C15.5858 17.7499 15.25 17.4142 15.25 16.9999C15.25 16.5857 15.5858 16.2499 16 16.2499H21.25V10.9999Z\" />\n      <path d=\"M1.46973 6.46967C1.76262 6.17678 2.23738 6.17678 2.53028 6.46967L8.5 12.4394L12.9697 7.96967L13.0264 7.91791C13.321 7.6776 13.7557 7.69507 14.0303 7.96967L22.5303 16.4697C22.8232 16.7626 22.8232 17.2373 22.5303 17.5302C22.2374 17.8231 21.7626 17.8231 21.4697 17.5302L13.5 9.56049L9.03028 14.0302C8.73738 14.3231 8.26262 14.3231 7.96973 14.0302L1.46973 7.53022C1.17684 7.23732 1.17684 6.76256 1.46973 6.46967Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\nexport function HelpSimpleIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M8 8.74985C8 8.0083 8.21993 7.28346 8.63184 6.66684C9.04383 6.05024 9.62938 5.56886 10.3145 5.285C10.9995 5.00137 11.7542 4.92749 12.4814 5.07211C13.2089 5.2168 13.8769 5.57402 14.4014 6.09848C14.8604 6.55751 15.1918 7.12629 15.3643 7.74887L15.4277 8.0184L15.4717 8.29184C15.5506 8.93294 15.4633 9.58572 15.2148 10.1854C14.931 10.8705 14.4496 11.456 13.833 11.868C13.4271 12.1392 12.9736 12.324 12.5 12.4207V13.7498C12.5 14.1641 12.1642 14.4998 11.75 14.4998C11.3358 14.4998 11 14.1641 11 13.7498V11.7498C11 11.3356 11.3358 10.9998 11.75 10.9998C12.1949 10.9998 12.63 10.8681 13 10.6209C13.37 10.3737 13.6588 10.0223 13.8291 9.61118L13.8867 9.45493C14.0081 9.08711 14.0329 8.69314 13.957 8.31137L13.918 8.14926C13.8145 7.77576 13.6162 7.4344 13.3408 7.15903C13.0261 6.84435 12.6249 6.62963 12.1885 6.54282C11.7522 6.45614 11.2996 6.50052 10.8887 6.67075C10.4776 6.84107 10.1261 7.1299 9.87891 7.49985C9.63174 7.86983 9.5 8.3049 9.5 8.74985C9.5 9.16406 9.16421 9.49985 8.75 9.49985C8.33579 9.49985 8 9.16406 8 8.74985Z\" />\n      <path d=\"M11.7468 16.0619C12.161 16.0619 12.4968 16.3977 12.4968 16.8119C12.4968 16.9714 12.4459 17.1181 12.3611 17.2396C12.4462 17.3613 12.4968 17.5086 12.4968 17.6684C12.4968 18.0825 12.161 18.4184 11.7468 18.4184C11.0964 18.4181 10.5691 17.8903 10.5691 17.2396C10.5693 16.5892 11.0965 16.0622 11.7468 16.0619Z\" />\n      <path d=\"M12.925 17.2396C12.925 17.8904 12.3975 18.4184 11.7468 18.4184C11.3326 18.4184 10.9973 18.0825 10.9973 17.6684C10.9973 17.5087 11.048 17.3612 11.133 17.2396C11.0483 17.1182 10.9973 16.9713 10.9973 16.8119C10.9973 16.3977 11.3326 16.0619 11.7468 16.0619C12.3973 16.0619 12.9248 16.589 12.925 17.2396Z\" />\n    </SvgWrapper>\n  );\n}\n",".svg {\n  @media (prefers-reduced-motion: no-preference) {\n    --dds-chevron-transition: transform var(--dds-motion-chevron);\n  }\n}\n\n.group {\n  transition: var(--dds-chevron-transition);\n}\n\n.svg--up .group {\n  transform: translateY(-3px);\n}\n\n.svg--down .group {\n  transform: translateY(3px);\n}\n\n.left,\n.right {\n  transition: var(--dds-chevron-transition);\n  stroke-linecap: round;\n  transform-origin: center;\n}\n\n.svg--up .left {\n  transform: rotate(-45deg);\n}\n.svg--down .left {\n  transform: rotate(45deg);\n}\n\n.svg--up .right {\n  transform: rotate(45deg);\n}\n.svg--down .right {\n  transform: rotate(-45deg);\n}\n","import styles from './AnimatedChevronUpDown.module.css';\nimport { cn, getTextColor } from '../../../../../utils';\nimport { type SvgProps, SvgWrapper } from '../../../utils';\n\nconst STATES = ['up', 'down'] as const;\nexport type AnimatedChevronUpDownIconStates = (typeof STATES)[number];\n\nexport function AnimatedChevronUpDownIcon(\n  props: SvgProps & { iconState?: AnimatedChevronUpDownIconStates },\n) {\n  const { className, iconState = 'down', fill = 'currentColor' } = props;\n  return (\n    <SvgWrapper\n      {...props}\n      fill={fill}\n      className={cn(styles.svg, styles[`svg--${iconState}`], className)}\n    >\n      <g className={cn(styles.group)}>\n        <line\n          stroke={getTextColor(fill)}\n          strokeWidth=\"1.5\"\n          className={cn(styles.left)}\n          x1=\"4\"\n          y1=\"12\"\n          x2=\"12\"\n          y2=\"12\"\n        ></line>\n        <line\n          stroke={getTextColor(fill)}\n          strokeWidth=\"1.5\"\n          className={cn(styles.right)}\n          x1=\"20\"\n          y1=\"12\"\n          x2=\"12\"\n          y2=\"12\"\n        ></line>\n      </g>\n    </SvgWrapper>\n  );\n}\n\nAnimatedChevronUpDownIcon.states = STATES;\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FlagIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M19.25 4C19.25 3.95357 19.2373 3.90766 19.2129 3.86816C19.1885 3.82876 19.1528 3.7971 19.1113 3.77637C19.0699 3.75574 19.0236 3.74682 18.9775 3.75098C18.9313 3.75515 18.8868 3.77195 18.8496 3.7998C17.958 4.46826 16.7515 4.75 15.333 4.75C13.9788 4.75 12.7369 4.16766 11.6211 3.68945C10.4581 3.19101 9.33267 2.75 8 2.75C6.86406 2.75 5.75836 3.11824 4.84961 3.7998C4.81863 3.82308 4.79369 3.85402 4.77637 3.88867C4.75914 3.92328 4.75 3.96133 4.75 4V14.084C5.73877 13.5408 6.85556 13.25 8 13.25C9.6644 13.25 11.0419 13.8092 12.2783 14.3037C13.5419 14.8091 14.6645 15.25 16 15.25C17.1359 15.25 18.2416 14.8818 19.1504 14.2002C19.1814 14.1769 19.2063 14.146 19.2236 14.1113C19.2409 14.0767 19.25 14.0387 19.25 14V4ZM20.75 14C20.75 14.2715 20.6868 14.5393 20.5654 14.7822C20.4439 15.0252 20.2672 15.2374 20.0498 15.4004C18.9545 16.2218 17.6371 16.6889 16.2734 16.7441L16 16.75C14.3356 16.75 12.9581 16.1908 11.7217 15.6963C10.4581 15.1909 9.33552 14.75 8 14.75C6.81756 14.75 5.67357 15.1497 4.75 15.8779V22C4.75 22.4142 4.41421 22.75 4 22.75C3.58579 22.75 3.25 22.4142 3.25 22V4C3.25 3.72847 3.3132 3.46067 3.43457 3.21777C3.55607 2.97478 3.73285 2.76262 3.9502 2.59961C5.11854 1.72346 6.53963 1.25 8 1.25C9.66723 1.25 11.0417 1.80901 12.2119 2.31055C13.4294 2.83234 14.3542 3.25 15.333 3.25C16.5812 3.25 17.4191 2.99778 17.9502 2.59961C18.2101 2.40476 18.5192 2.28602 18.8428 2.25684C19.1663 2.22766 19.4916 2.28937 19.7822 2.43457C20.0729 2.5799 20.3174 2.80366 20.4883 3.08008C20.6591 3.35654 20.75 3.675 20.75 4V14Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function FlagFilledIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.75 14C20.75 14.2715 20.6868 14.5393 20.5654 14.7822C20.4439 15.0252 20.2672 15.2374 20.0498 15.4004C18.9545 16.2218 17.6371 16.6889 16.2734 16.7441L16 16.75C14.3356 16.75 12.9581 16.1908 11.7217 15.6963C10.4581 15.1909 9.33552 14.75 8 14.75C6.81756 14.75 5.67357 15.1497 4.75 15.8779V22C4.75 22.4142 4.41421 22.75 4 22.75C3.58579 22.75 3.25 22.4142 3.25 22V4C3.25 3.72847 3.3132 3.46067 3.43457 3.21777C3.55607 2.97478 3.73285 2.76262 3.9502 2.59961C5.11854 1.72346 6.53963 1.25 8 1.25C9.66723 1.25 11.0417 1.80901 12.2119 2.31055C13.4294 2.83234 14.3542 3.25 15.333 3.25C16.5812 3.25 17.4191 2.99778 17.9502 2.59961C18.2101 2.40476 18.5192 2.28602 18.8428 2.25684C19.1663 2.22766 19.4916 2.28937 19.7822 2.43457C20.0729 2.5799 20.3174 2.80366 20.4883 3.08008C20.6591 3.35654 20.75 3.675 20.75 4V14Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function LocationOffIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M1.46973 1.46937C1.76256 1.17679 2.23744 1.17679 2.53028 1.46937L22.5303 21.4694C22.8232 21.7623 22.8232 22.238 22.5303 22.5309C22.2374 22.8235 21.7626 22.8235 21.4697 22.5309L17.1397 18.2008C15.5982 20.1116 13.9539 21.6217 13.0908 22.3668C13.0782 22.3777 13.0651 22.3881 13.0518 22.3981C12.7864 22.5976 12.4706 22.7171 12.1416 22.7438L12 22.7496C11.6206 22.7496 11.2515 22.6261 10.9482 22.3981C10.9349 22.3881 10.9218 22.3777 10.9092 22.3668C9.9603 21.5475 8.06705 19.807 6.40528 17.6237C4.76093 15.4632 3.25 12.749 3.25 9.99965C3.24999 8.42489 3.67515 6.88355 4.47461 5.53578L1.46973 2.5309C1.17684 2.238 1.17684 1.76227 1.46973 1.46937ZM5.57715 6.63832C5.03634 7.67174 4.74999 8.82433 4.75 9.99965L4.76465 10.4225C4.90882 12.5405 6.10799 14.7569 7.59864 16.7155C9.15324 18.758 10.9366 20.4062 11.8574 21.2037C11.8994 21.2331 11.9487 21.2496 12 21.2496L12.0791 21.237C12.1016 21.2295 12.122 21.2174 12.1416 21.2037C12.9984 20.4618 14.6021 18.982 16.0732 17.1344L12.6328 13.694C12.1212 13.7814 11.5955 13.7625 11.0889 13.6354C10.4308 13.4702 9.8294 13.1298 9.34961 12.65C8.86993 12.1703 8.52938 11.5688 8.36426 10.9108C8.2372 10.4041 8.21823 9.87837 8.30567 9.36683L5.57715 6.63832ZM8.14454 2.14516C9.47851 1.49038 10.9573 1.18543 12.4414 1.26039C13.9256 1.33539 15.3667 1.7879 16.6279 2.57387C17.889 3.35982 18.9292 4.45432 19.6504 5.75355C20.3714 7.05267 20.75 8.51386 20.75 9.99965C20.75 11.3122 20.4062 12.6093 19.8779 13.8307C19.7135 14.2108 19.2727 14.3856 18.8926 14.2213C18.5124 14.0569 18.3375 13.6152 18.502 13.235C18.9735 12.1446 19.25 11.053 19.25 9.99965C19.25 8.76846 18.9364 7.55757 18.3389 6.48109C17.7413 5.4045 16.879 4.49755 15.834 3.84633C14.7891 3.1953 13.5957 2.82062 12.3662 2.75844C11.1365 2.69629 9.91102 2.94928 8.80567 3.49183C8.43397 3.67427 7.9844 3.52061 7.80176 3.14906C7.61927 2.77727 7.77279 2.32771 8.14454 2.14516ZM10.04 11.1012C10.1401 11.2793 10.2644 11.4437 10.4102 11.5895C10.5552 11.7345 10.7195 11.8578 10.8965 11.9577L10.04 11.1012ZM12.0234 6.90394C12.1264 6.50273 12.5353 6.26093 12.9365 6.3639C13.5871 6.5309 14.1813 6.86944 14.6563 7.34437C15.1311 7.81929 15.4698 8.41361 15.6367 9.0641C15.7394 9.46506 15.4976 9.87315 15.0967 9.97621C14.6955 10.0792 14.2866 9.83738 14.1836 9.43617C14.0834 9.04595 13.8796 8.68981 13.5947 8.40492C13.3098 8.12008 12.9537 7.9172 12.5635 7.81703C12.1624 7.71408 11.9207 7.30506 12.0234 6.90394Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function MapIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M20.25 4.61792C20.2501 4.57528 20.2395 4.53312 20.2187 4.49585C20.1981 4.45867 20.168 4.42746 20.1318 4.40503C20.0957 4.38264 20.0542 4.36991 20.0117 4.36792C19.9692 4.36598 19.9268 4.37529 19.8887 4.39429L16.2295 6.22339C15.8478 6.41412 15.4267 6.5144 15 6.5144C14.5733 6.5144 14.1522 6.4151 13.7705 6.22437L9.55859 4.11792C9.38512 4.03126 9.19391 3.98608 9 3.98608C8.8545 3.98608 8.71033 4.01101 8.57422 4.0603L8.4414 4.11792L3.88867 6.39526C3.84715 6.41601 3.81152 6.44759 3.78711 6.48706C3.76275 6.5265 3.75002 6.57254 3.75 6.6189V19.3826C3.74989 19.4252 3.76061 19.4674 3.78125 19.5046C3.80195 19.5419 3.8319 19.574 3.86816 19.5964C3.90431 19.6188 3.9458 19.6316 3.98828 19.6335C4.03076 19.6355 4.07326 19.6261 4.11132 19.6072L7.7705 17.7771C8.1522 17.5864 8.5733 17.4871 9 17.4871C9.4267 17.4871 9.84779 17.5864 10.2295 17.7771L14.4414 19.8835L14.5742 19.9402C14.7104 19.9895 14.8544 20.0154 15 20.0154C15.1938 20.0154 15.3852 19.9701 15.5586 19.8835L20.1113 17.6062L20.1689 17.5671C20.1858 17.5517 20.2007 17.534 20.2129 17.5144C20.2373 17.4749 20.25 17.429 20.25 17.3826V4.61792ZM21.75 17.3835C21.7498 17.7084 21.6592 18.0272 21.4883 18.3035C21.3174 18.5797 21.0728 18.8028 20.7822 18.948L16.2295 21.2244C15.8478 21.4151 15.4267 21.5154 15 21.5154C14.5733 21.5154 14.1522 21.4161 13.7705 21.2253L9.55859 19.1189C9.38513 19.0322 9.1939 18.9871 9 18.9871C8.8545 18.9871 8.71033 19.012 8.57422 19.0613L8.4414 19.1189L4.78222 20.949C4.5151 21.0824 4.21822 21.1453 3.91992 21.1316C3.62166 21.1179 3.3319 21.0281 3.07812 20.8708C2.82438 20.7136 2.61464 20.4942 2.46972 20.2332C2.32488 19.9722 2.24934 19.6781 2.25 19.3796V6.61792L2.2539 6.49585C2.27374 6.21357 2.36222 5.93969 2.51172 5.698C2.68261 5.42172 2.92718 5.1987 3.21777 5.05347L7.7705 2.77612L7.91601 2.70874C8.25801 2.56206 8.62676 2.48608 9 2.48608C9.4267 2.48608 9.84779 2.58539 10.2295 2.77612L14.4414 4.88257L14.5742 4.93921C14.7104 4.98854 14.8544 5.0144 15 5.0144C15.1938 5.0144 15.3852 4.96917 15.5586 4.88257L19.2178 3.05249C19.4848 2.91907 19.7819 2.85532 20.0801 2.8689C20.378 2.88254 20.6673 2.9727 20.9209 3.12964C21.1747 3.28678 21.3842 3.50646 21.5293 3.76733C21.6741 4.02783 21.7502 4.32087 21.75 4.6189V17.3835Z\" />\n      <path d=\"M14.25 20.7639V5.76392C14.25 5.3497 14.5858 5.0144 15 5.0144C15.4142 5.0144 15.75 5.3497 15.75 5.76392V20.7639C15.75 21.1781 15.4142 21.5139 15 21.5139C14.5858 21.5139 14.25 21.1781 14.25 20.7639Z\" />\n      <path d=\"M8.25 18.2361V3.23608C8.25 2.82187 8.58578 2.48608 9 2.48608C9.41421 2.48608 9.75 2.82187 9.75 3.23608V18.2361C9.75 18.6503 9.41421 18.9871 9 18.9871C8.58578 18.9871 8.25 18.6503 8.25 18.2361Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function MoonIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n        d=\"M9.17618 3.11544C8.96372 2.90299 8.64498 2.83783 8.36619 2.94987C4.78244 4.39007 2.25004 7.89837 2.25004 12C2.25004 17.3847 6.61526 21.75 12 21.75C16.1016 21.75 19.6099 19.2176 21.0501 15.6338C21.1622 15.355 21.097 15.0363 20.8846 14.8238C20.6721 14.6114 20.3534 14.5462 20.0746 14.6582C19.1254 15.0397 18.0882 15.25 17 15.25C12.4437 15.25 8.75004 11.5563 8.75004 6.99996C8.75004 5.91181 8.96032 4.87461 9.34176 3.92544C9.4538 3.64665 9.38864 3.3279 9.17618 3.11544ZM7.42919 5.13067C7.3116 5.736 7.25004 6.36102 7.25004 6.99996C7.25004 12.3847 11.6153 16.75 17 16.75C17.639 16.75 18.264 16.6884 18.8693 16.5708C17.39 18.7895 14.865 20.25 12 20.25C7.44369 20.25 3.75004 16.5563 3.75004 12C3.75004 9.13502 5.21054 6.60997 7.42919 5.13067Z\"\n      />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function NotebookPenIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M3.25 20.0002V4.00024C3.25 3.2709 3.53994 2.57163 4.05566 2.05591C4.57139 1.54018 5.27065 1.25024 6 1.25024H13.4004C13.8144 1.25046 14.1504 1.58616 14.1504 2.00024C14.1504 2.41433 13.8144 2.75003 13.4004 2.75024H6C5.66848 2.75024 5.35063 2.88203 5.11621 3.11646C4.88179 3.35088 4.75 3.66872 4.75 4.00024V20.0002C4.75 20.3318 4.88179 20.6496 5.11621 20.884C5.35063 21.1185 5.66848 21.2502 6 21.2502H18C18.3315 21.2502 18.6494 21.1185 18.8838 20.884C19.1182 20.6496 19.25 20.3318 19.25 20.0002V12.5999C19.2502 12.1858 19.5859 11.8499 20 11.8499C20.4141 11.8499 20.7498 12.1858 20.75 12.5999V20.0002C20.75 20.7296 20.4601 21.4289 19.9443 21.9446C19.4286 22.4603 18.7293 22.7502 18 22.7502H6C5.27065 22.7502 4.57139 22.4603 4.05566 21.9446C3.53994 21.4289 3.25 20.7296 3.25 20.0002Z\" />\n      <path d=\"M6 5.25024C6.41421 5.25024 6.75 5.58603 6.75 6.00024C6.75 6.41446 6.41421 6.75024 6 6.75024H2C1.58579 6.75024 1.25 6.41446 1.25 6.00024C1.25 5.58603 1.58579 5.25024 2 5.25024H6Z\" />\n      <path d=\"M6 9.25024C6.41421 9.25024 6.75 9.58603 6.75 10.0002C6.75 10.4145 6.41421 10.7502 6 10.7502H2C1.58579 10.7502 1.25 10.4145 1.25 10.0002C1.25 9.58603 1.58579 9.25024 2 9.25024H6Z\" />\n      <path d=\"M6 13.2502C6.41421 13.2502 6.75 13.586 6.75 14.0002C6.75 14.4145 6.41421 14.7502 6 14.7502H2C1.58579 14.7502 1.25 14.4145 1.25 14.0002C1.25 13.586 1.58579 13.2502 2 13.2502H6Z\" />\n      <path d=\"M6 17.2502C6.41421 17.2502 6.75 17.586 6.75 18.0002C6.75 18.4145 6.41421 18.7502 6 18.7502H2C1.58579 18.7502 1.25 18.4145 1.25 18.0002C1.25 17.586 1.58579 17.2502 2 17.2502H6Z\" />\n      <path d=\"M21.25 4.12402C21.25 3.75962 21.1053 3.41002 20.8477 3.15234C20.59 2.89468 20.2404 2.75 19.876 2.75C19.5116 2.75 19.162 2.89468 18.9043 3.15234L13.8945 8.16406C13.7831 8.27548 13.6933 8.40706 13.6309 8.55078L13.5781 8.69824L12.8682 11.1299L15.3008 10.4209L15.4482 10.3682C15.592 10.3058 15.7235 10.216 15.835 10.1045L20.8477 5.0957L20.9385 4.99512C21.139 4.75055 21.25 4.44303 21.25 4.12402ZM22.75 4.12402C22.75 4.79084 22.5185 5.43393 22.0996 5.94531L21.9082 6.15625L16.8955 11.166C16.5689 11.4927 16.1651 11.7318 15.7217 11.8613L12.8506 12.6982C12.6356 12.7609 12.4074 12.7646 12.1904 12.709C11.9735 12.6533 11.7756 12.5402 11.6172 12.3818C11.4588 12.2234 11.3457 12.0256 11.29 11.8086C11.2345 11.5916 11.2381 11.3635 11.3008 11.1484L12.1377 8.27832C12.2672 7.83465 12.5071 7.43024 12.834 7.10352L17.8438 2.0918C18.3828 1.55283 19.1137 1.25 19.876 1.25C20.6382 1.25 21.3692 1.55283 21.9082 2.0918C22.4472 2.63077 22.75 3.3618 22.75 4.12402Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function StickyNoteIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M2.25 19V5C2.25 4.27066 2.53994 3.57139 3.05566 3.05566C3.57139 2.53994 4.27066 2.25 5 2.25H15V2.25098C15.4151 2.2502 15.8263 2.33056 16.21 2.48926C16.5939 2.64814 16.9429 2.88158 17.2363 3.17578L20.8232 6.7627C21.1179 7.05626 21.3517 7.40573 21.5107 7.79004C21.6694 8.17367 21.7508 8.58486 21.75 9V19C21.75 19.7293 21.4601 20.4286 20.9443 20.9443C20.4286 21.4601 19.7293 21.75 19 21.75H5C4.27065 21.75 3.57139 21.4601 3.05566 20.9443C2.53994 20.4286 2.25 19.7293 2.25 19ZM15.75 8C15.75 8.0663 15.7764 8.12987 15.8232 8.17676C15.8701 8.22364 15.9337 8.25 16 8.25H20.0713C19.9921 8.09336 19.8894 7.94947 19.7646 7.8252L16.1748 4.23535C16.0505 4.11063 15.9066 4.00793 15.75 3.92871V8ZM3.75 19C3.75 19.3315 3.88179 19.6494 4.11621 19.8838C4.35063 20.1182 4.66848 20.25 5 20.25H19C19.3315 20.25 19.6494 20.1182 19.8838 19.8838C20.1182 19.6494 20.25 19.3315 20.25 19V9.75H16C15.5359 9.75 15.0909 9.56549 14.7627 9.2373C14.4345 8.90912 14.25 8.46413 14.25 8V3.75H5C4.66848 3.75 4.35063 3.88179 4.11621 4.11621C3.88179 4.35063 3.75 4.66848 3.75 5V19Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function SunIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M16.25 12C16.25 9.65279 14.3472 7.75 12 7.75C9.65279 7.75 7.75 9.65279 7.75 12C7.75 14.3472 9.65279 16.25 12 16.25C14.3472 16.25 16.25 14.3472 16.25 12ZM17.75 12C17.75 15.1756 15.1756 17.75 12 17.75C8.82436 17.75 6.25 15.1756 6.25 12C6.25 8.82436 8.82436 6.25 12 6.25C15.1756 6.25 17.75 8.82436 17.75 12Z\" />\n      <path d=\"M11.25 4V2C11.25 1.58579 11.5858 1.25 12 1.25C12.4142 1.25 12.75 1.58579 12.75 2V4C12.75 4.41421 12.4142 4.75 12 4.75C11.5858 4.75 11.25 4.41421 11.25 4Z\" />\n      <path d=\"M11.25 22V20C11.25 19.5858 11.5858 19.25 12 19.25C12.4142 19.25 12.75 19.5858 12.75 20V22C12.75 22.4142 12.4142 22.75 12 22.75C11.5858 22.75 11.25 22.4142 11.25 22Z\" />\n      <path d=\"M4.39972 4.39966C4.69261 4.10677 5.16737 4.10677 5.46027 4.39966L6.87042 5.80981C7.16316 6.10272 7.16326 6.57752 6.87042 6.87036C6.57758 7.1632 6.10278 7.1631 5.80988 6.87036L4.39972 5.46021C4.10683 5.16731 4.10683 4.69255 4.39972 4.39966Z\" />\n      <path d=\"M17.1297 17.1296C17.4226 16.8367 17.8974 16.8367 18.1902 17.1296L19.6004 18.5398C19.8931 18.8327 19.8932 19.3075 19.6004 19.6003C19.3076 19.8932 18.8328 19.8931 18.5399 19.6003L17.1297 18.1902C16.8368 17.8973 16.8368 17.4225 17.1297 17.1296Z\" />\n      <path d=\"M4 11.25C4.41421 11.25 4.75 11.5858 4.75 12C4.75 12.4142 4.41421 12.75 4 12.75H2C1.58579 12.75 1.25 12.4142 1.25 12C1.25 11.5858 1.58579 11.25 2 11.25H4Z\" />\n      <path d=\"M22 11.25C22.4142 11.25 22.75 11.5858 22.75 12C22.75 12.4142 22.4142 12.75 22 12.75H20C19.5858 12.75 19.25 12.4142 19.25 12C19.25 11.5858 19.5858 11.25 20 11.25H22Z\" />\n      <path d=\"M5.80988 17.1296C6.10278 16.8368 6.57756 16.8368 6.87042 17.1296C7.16321 17.4225 7.16321 17.8973 6.87042 18.1902L5.46027 19.6003C5.16739 19.8931 4.69259 19.8931 4.39972 19.6003C4.10685 19.3075 4.1069 18.8327 4.39972 18.5398L5.80988 17.1296Z\" />\n      <path d=\"M18.5399 4.39966C18.8328 4.10684 19.3075 4.10679 19.6004 4.39966C19.8932 4.69253 19.8932 5.16733 19.6004 5.46021L18.1902 6.87036C17.8974 7.16315 17.4226 7.16315 17.1297 6.87036C16.8368 6.57749 16.8369 6.10271 17.1297 5.80981L18.5399 4.39966Z\" />\n    </SvgWrapper>\n  );\n}\n","import { type SvgProps, SvgWrapper } from '../utils';\n\nexport function SupportIcon(props: SvgProps) {\n  return (\n    <SvgWrapper {...props}>\n      <path d=\"M7.25 13C7.25 12.6685 7.11821 12.3506 6.88379 12.1162C6.64937 11.8818 6.33152 11.75 6 11.75H3.75V16C3.75 16.3315 3.88179 16.6494 4.11621 16.8838C4.35063 17.1182 4.66848 17.25 5 17.25H6C6.33152 17.25 6.64937 17.1182 6.88379 16.8838C7.0888 16.6788 7.21564 16.41 7.24414 16.124L7.25 16V13ZM8.75 16C8.75 16.7293 8.46006 17.4286 7.94434 17.9443C7.42861 18.4601 6.72935 18.75 6 18.75H5C4.27065 18.75 3.57139 18.4601 3.05566 17.9443C2.53994 17.4286 2.25 16.7293 2.25 16V11C2.25 9.71961 2.5022 8.45148 2.99219 7.26855C3.48217 6.08573 4.20016 5.01078 5.10547 4.10547C6.01078 3.20016 7.08573 2.48217 8.26855 1.99219C9.45148 1.5022 10.7196 1.25 12 1.25C13.2804 1.25 14.5485 1.5022 15.7314 1.99219C16.9143 2.48217 17.9892 3.20016 18.8945 4.10547C19.7998 5.01078 20.5178 6.08573 21.0078 7.26855C21.4978 8.45148 21.75 9.71961 21.75 11V16C21.75 16.7293 21.4601 17.4286 20.9443 17.9443C20.4286 18.4601 19.7293 18.75 19 18.75H18C17.2707 18.75 16.5714 18.4601 16.0557 17.9443C15.6043 17.493 15.3261 16.9011 15.2637 16.2715L15.25 16V13C15.25 12.2707 15.5399 11.5714 16.0557 11.0557C16.5714 10.5399 17.2707 10.25 18 10.25H20.2148C20.1394 9.42375 19.9407 8.61195 19.6221 7.84277C19.2075 6.84186 18.6001 5.93209 17.834 5.16602C17.0679 4.39995 16.1581 3.79253 15.1572 3.37793C14.1563 2.96333 13.0834 2.75 12 2.75C10.9166 2.75 9.84371 2.96333 8.84277 3.37793C7.84186 3.79253 6.93209 4.39995 6.16602 5.16602C5.39995 5.93209 4.79253 6.84186 4.37793 7.84277C4.05933 8.61195 3.86059 9.42375 3.78516 10.25H6C6.72935 10.25 7.42861 10.5399 7.94434 11.0557C8.46006 11.5714 8.75 12.2707 8.75 13V16ZM16.75 16C16.75 16.3315 16.8818 16.6494 17.1162 16.8838C17.3506 17.1182 17.6685 17.25 18 17.25H19C19.3315 17.25 19.6494 17.1182 19.8838 16.8838C20.1182 16.6494 20.25 16.3315 20.25 16V11.75H18C17.6685 11.75 17.3506 11.8818 17.1162 12.1162C16.8818 12.3506 16.75 12.6685 16.75 13V16Z\" />\n      <path d=\"M20.25 18V16C20.25 15.5858 20.5858 15.25 21 15.25C21.4142 15.25 21.75 15.5858 21.75 16V18C21.75 19.2598 21.2492 20.4676 20.3584 21.3584C19.4676 22.2492 18.2598 22.75 17 22.75H12C11.5858 22.75 11.25 22.4142 11.25 22C11.25 21.5858 11.5858 21.25 12 21.25H17C17.862 21.25 18.6884 20.9073 19.2979 20.2979C19.9073 19.6884 20.25 18.862 20.25 18Z\" />\n    </SvgWrapper>\n  );\n}\n","import { ddsTokens } from '@norges-domstoler/dds-design-tokens';\nimport {\n  type ReactNode,\n  createContext,\n  useContext,\n  useEffect,\n  useRef,\n  useState,\n} from 'react';\n\nimport styles from './ThemeProvider.module.css';\nimport { cn } from '../../utils';\n\nexport type DdsTheme = keyof typeof ddsTokens;\nconst defaultTheme: DdsTheme = 'core-light';\n\ntype SplitTheme<T extends string> = T extends `${infer Main}-${infer Mode}`\n  ? { main: Main; mode: Mode }\n  : never;\n\nexport type DdsThemeMain = SplitTheme<DdsTheme>['main'];\nexport type DdsThemeMode = SplitTheme<DdsTheme>['mode'];\n\ninterface ThemeContextProps {\n  theme: DdsTheme;\n  el: HTMLDivElement | null;\n}\n\nexport const ThemeContext = createContext<ThemeContextProps | undefined>(\n  undefined,\n);\n\nexport interface ThemeProviderProps {\n  /**\n   * Elsa tema for applikasjonen.\n   * @default \"core-light\"\n   */\n  theme?: DdsTheme;\n  /**\n   * Selve applikasjonen.\n   */\n  children?: ReactNode;\n}\n\nexport function ThemeProvider({\n  theme = defaultTheme,\n  children,\n}: ThemeProviderProps) {\n  const themeRef = useRef<HTMLDivElement>(null);\n\n  const [element, setElement] = useState<HTMLDivElement | null>(null);\n  useEffect(() => {\n    setElement(themeRef.current);\n  }, []);\n\n  return (\n    <div\n      ref={themeRef}\n      className={cn(\n        `dds-${theme}`,\n        styles['global-variables'],\n        styles['global-styles'],\n        'dds-themed',\n      )}\n    >\n      <ThemeContext value={{ theme, el: element }}>{children}</ThemeContext>\n    </div>\n  );\n}\n\n/**\n * Hook for å hente gjeldende tema og temanavn. Brukes inni ThemeProvider.\n *\n * @returns tema med JS-konstanter og navnet på temaet.\n */\n\nexport function useTheme() {\n  const themeName = useContext(ThemeContext)?.theme;\n\n  if (!themeName) {\n    throw new Error(\n      'useTheme must be used inside a ThemeProvider or DdsProvider',\n    );\n  }\n\n  const theme = ddsTokens[themeName];\n\n  return { theme, themeName };\n}\n",".global-variables {\n  /*Default text colors*/\n  --dds-color-text-body: var(--dds-color-text-default);\n  --dds-color-text-body-subtle: var(--dds-color-text-subtle);\n  --dds-color-text-link: var(--dds-color-text-action-resting);\n  --dds-color-text-link-visited: var(--dds-color-text-action-visited);\n  --dds-color-text-label: var(--dds-color-text-medium);\n  --dds-color-text-placeholder: var(--dds-color-text-subtle);\n  --dds-color-text-helper: var(--dds-color-text-subtle);\n  --dds-color-icon-link: var(--dds-color-text-action-resting);\n  /*Inversable text colors*/\n  --dds-color-text-subtle-inversable: var(--dds-color-text-subtle);\n  --dds-color-text-default-inversable: var(--dds-color-text-default);\n  --dds-color-text-medium-inversable: var(--dds-color-text-medium);\n  --dds-color-text-action-resting-inversable: var(\n    --dds-color-text-action-resting\n  );\n  --dds-color-text-action-hover-inversable: var(--dds-color-text-action-hover);\n  --dds-color-text-requiredfield-inversable: var(\n    --dds-color-text-requiredfield\n  );\n  --dds-color-icon-subtle-inversable: var(--dds-color-icon-subtle);\n  --dds-color-icon-default-inversable: var(--dds-color-icon-default);\n  --dds-color-icon-medium-inversable: var(--dds-color-icon-medium);\n  --dds-color-icon-action-resting-inversable: var(\n    --dds-color-icon-action-resting\n  );\n  --dds-color-icon-action-hover-inversable: var(--dds-color-icon-action-hover);\n\n  /*Focus*/\n  --dds-focus-outline: var(--dds-color-focus-outside) 2px solid;\n  --dds-focus-outline-offset: var(--dds-spacing-x0-125);\n  --dds-focus-outline-inset: calc(0px - var(--dds-spacing-x0-25));\n  --dds-focus-box-shadow: 0 0 0 2px var(--dds-color-focus-inside);\n  --dds-focus-transition: outline-offset var(--dds-motion-surface);\n\n  /*Sizes*/\n  --dds-input-default-width: 320px;\n  --dds-input-default-width-xsmall: 210px;\n  --dds-spacing-xs-icon-text-gap: var(--dds-spacing-x0-25);\n  --dds-spacing-sm-icon-text-gap: var(--dds-spacing-x0-25);\n  --dds-spacing-md-icon-text-gap: var(--dds-spacing-x0-5);\n  --dds-spacing-lg-icon-text-gap: var(--dds-spacing-x0-75);\n}\n\n.global-styles {\n  font: var(--dds-font-body-long-medium);\n  letter-spacing: var(--dds-font-body-long-medium-letter-spacing);\n  color: var(--dds-color-text-default);\n}\n","import {\n  ThemeProvider,\n  type ThemeProviderProps,\n} from '../components/ThemeProvider';\nimport { LanguageProvider, type LanguageProviderProps } from '../i18n';\n\nexport type DdsProviderProps = LanguageProviderProps & ThemeProviderProps;\n\nexport function DdsProvider({ language, theme, children }: DdsProviderProps) {\n  return (\n    <LanguageProvider language={language}>\n      <ThemeProvider theme={theme}>{children}</ThemeProvider>\n    </LanguageProvider>\n  );\n}\n\nexport { type DdsTheme } from '../components/ThemeProvider';\n",":where(.container) {\n  border-bottom: 1px solid var(--dds-color-border-default);\n}\n\n:where(.container:first-child) {\n  border-top: 1px solid var(--dds-color-border-default);\n}\n\n:where(.header-button) {\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      background-color var(--dds-motion-micro-state),\n      var(--dds-focus-transition);\n  }\n\n  color: inherit;\n\n  &:hover {\n    background-color: var(--dds-color-surface-hover-default);\n    .chevron {\n      color: var(--dds-color-text-action-hover);\n    }\n  }\n}\n\n.chevron {\n  margin-inline-end: var(--dds-spacing-x0-5);\n}\n","import styles from './Accordion.module.css';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport {\n  type AccordionConfig,\n  AccordionContextProvider,\n  useAccordion,\n} from '../helpers/AccordionBase';\n\nexport type AccordionProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  Pick<AccordionConfig, 'isExpanded' | 'isInitiallyExpanded' | 'onChange'>\n>;\n\nexport const Accordion = ({\n  isInitiallyExpanded = false,\n  isExpanded,\n  onChange,\n  id,\n  children,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: AccordionProps) => {\n  const {\n    id: accordionId,\n    isExpanded: expanded,\n    toggleExpanded,\n    bodyContentRef,\n    headerProps,\n    bodyProps,\n  } = useAccordion({ isInitiallyExpanded, isExpanded, onChange, id });\n\n  return (\n    <div\n      {...getBaseHTMLProps(\n        accordionId,\n        cn(className, styles.container),\n        style,\n        htmlProps,\n        rest,\n      )}\n    >\n      <AccordionContextProvider\n        headerProps={headerProps}\n        bodyProps={bodyProps}\n        isExpanded={expanded}\n        toggleExpanded={toggleExpanded}\n        bodyContentRef={bodyContentRef}\n      >\n        {children}\n      </AccordionContextProvider>\n    </div>\n  );\n};\n\nAccordion.displayName = 'Accordion';\n",".wrapper {\n  max-width: 100%;\n}\n\n.inner {\n  white-space: nowrap;\n  overflow: hidden;\n  text-overflow: ellipsis;\n}\n","import type { ComponentProps } from 'react';\n\nimport styles from './TextOverflowEllipsis.module.css';\nimport { cn } from '../../../../utils/dom';\n\nexport function TextOverflowEllipsisWrapper({\n  className,\n  ...rest\n}: ComponentProps<'span'>) {\n  return <span {...rest} className={cn(className, styles.wrapper)} />;\n}\n\nexport function TextOverflowEllipsisInner({\n  className,\n  ...rest\n}: ComponentProps<'span'>) {\n  return <span {...rest} className={cn(className, styles.inner)} />;\n}\n",".container {\n  -webkit-user-select: text;\n          user-select: text;\n}\n","import { type ElementType } from 'react';\n\nimport { type ExtractStrict } from '../../../types';\nimport { type TextColor } from '../../../utils/color';\nimport { type ResponsiveProps } from '../../layout';\n\nexport type TypographyBodyShortType =\n  | 'bodyShortXsmall'\n  | 'bodyShortSmall'\n  | 'bodyShortMedium'\n  | 'bodyShortLarge';\n\nexport type TypographyBodyLongType =\n  | 'bodyLongXsmall'\n  | 'bodyLongSmall'\n  | 'bodyLongMedium'\n  | 'bodyLongLarge';\n\nexport type TypographyBodyType =\n  | TypographyBodyLongType\n  | TypographyBodyShortType;\n\nexport const TG_HEADING_TYPES = [\n  'headingXxsmall',\n  'headingXsmall',\n  'headingSmall',\n  'headingMedium',\n  'headingLarge',\n  'headingXlarge',\n  'headingXxlarge',\n] as const;\n\nexport type TypographyHeadingType = (typeof TG_HEADING_TYPES)[number];\n\nexport type TypographyLeadType = 'leadMedium';\n\nexport type TypographyAnchorType = 'a';\n\nexport type TypographyLabelType = 'labelMedium';\n\nexport type OtherTypographyType =\n  | TypographyHeadingType\n  | TypographyBodyType\n  | TypographyLeadType;\n\nexport type TypographyType =\n  | TypographyAnchorType\n  | TypographyLabelType\n  | OtherTypographyType;\n\nexport type StaticTypographyType = OtherTypographyType | TypographyLabelType;\n\nexport type HyphenTypographyType =\n  | 'body-short-xsmall'\n  | 'body-short-small'\n  | 'body-short-medium'\n  | 'body-short-large'\n  | 'body-long-xsmall'\n  | 'body-long-small'\n  | 'body-long-medium'\n  | 'body-long-large'\n  | 'heading-xxsmall'\n  | 'heading-xsmall'\n  | 'heading-small'\n  | 'heading-medium'\n  | 'heading-large'\n  | 'heading-xlarge'\n  | 'heading-xxlarge'\n  | 'lead-medium'\n  | 'a'\n  | 'label-medium';\n\nexport type InlineElement =\n  | 'a'\n  | 'abbr'\n  | 'audio'\n  | 'b'\n  | 'bdi'\n  | 'bdo'\n  | 'big'\n  | 'br'\n  | 'button'\n  | 'canvas'\n  | 'cite'\n  | 'code'\n  | 'data'\n  | 'datalist'\n  | 'del'\n  | 'dfn'\n  | 'em'\n  | 'embed'\n  | 'i'\n  | 'iframe'\n  | 'img'\n  | 'input'\n  | 'ins'\n  | 'kbd'\n  | 'label'\n  | 'map'\n  | 'mark'\n  | 'meter'\n  | 'noscript'\n  | 'object'\n  | 'output'\n  | 'picture'\n  | 'progress'\n  | 'q'\n  | 'ruby'\n  | 's'\n  | 'samp'\n  | 'script'\n  | 'select'\n  | 'slot'\n  | 'small'\n  | 'span'\n  | 'strong'\n  | 'sub'\n  | 'sup'\n  | 'svg'\n  | 'template'\n  | 'textarea'\n  | 'time'\n  | 'u'\n  | 'var'\n  | 'video'\n  | 'wbr';\n\nexport type BlockTypographyResponsiveProps = Pick<\n  ResponsiveProps,\n  | 'textAlign'\n  | 'wordBreak'\n  | 'display'\n  | 'margin'\n  | 'marginBlock'\n  | 'maxWidth'\n  | 'width'\n  | 'minWidth'\n>;\n\nexport type InlineTypographyResponsiveProps = Pick<\n  BlockTypographyResponsiveProps,\n  'wordBreak' | 'textAlign' | 'marginBlock'\n> & {\n  display?: ExtractStrict<\n    ResponsiveProps['display'],\n    'block' | 'inline' | 'inline-block'\n  >;\n};\n\nexport interface BaseTypographyProps {\n  /**Tekstfarge fra utvalget eller custom. **OBS!** Bruk farger fra `@dds-design-tokens` med navn i kebab-case, f.eks. `text-subtle`. */\n  color?: TextColor;\n  /**Spesifiserer om tekstelementet skal ha spacing definert i Elsa.\n   * Brukes hovedsakelig i artikler og lignende.\n   * **OBS!** har forskjellig virkning på ulike typografityper.\n   * `body` og `lead`-typer får margin på bunnen, `heading`-typer får margin på bunnen og padding på toppen mens label får margin topp og bunn.\n   * */\n  withMargins?: boolean;\n}\n\nexport interface CommonInlineTypographyProps\n  extends BaseTypographyProps, InlineTypographyResponsiveProps {}\nexport interface CommonBlockTypographyProps\n  extends BaseTypographyProps, BlockTypographyResponsiveProps {}\n\nexport type TypographyComponentProps = CommonBlockTypographyProps & {\n  /**Setter `bold` styling. */\n  bold?: boolean;\n  /**Setter `italic` styling. */\n  italic?: boolean;\n  /**Setter en linje under. */\n  underline?: boolean;\n  /**HTML tag som skal brukes istedenfor default definert via `typographyType`.  */\n  as?: ElementType;\n};\n","import { type ElementType } from 'react';\n\nimport {\n  type HyphenTypographyType,\n  type InlineElement,\n  TG_HEADING_TYPES,\n  type TypographyHeadingType,\n  type TypographyType,\n} from './Typography.types';\nimport {\n  type TextColor,\n  convertCamelToHyphen,\n  isTextColor,\n} from '../../../utils';\nimport typographyStyles from '../typographyStyles.module.css';\n\nexport const getElementType = (element: TypographyType): ElementType => {\n  switch (element) {\n    case 'a':\n      return 'a';\n    case 'headingXxsmall':\n      return 'h6';\n    case 'headingXsmall':\n      return 'h5';\n    case 'headingSmall':\n      return 'h4';\n    case 'headingMedium':\n      return 'h3';\n    case 'headingLarge':\n      return 'h2';\n    case 'headingXlarge':\n    case 'headingXxlarge':\n      return 'h1';\n    case 'labelMedium':\n      return 'label';\n    case 'bodyShortXsmall':\n    case 'bodyShortSmall':\n    case 'bodyShortMedium':\n    case 'bodyShortLarge':\n    case 'bodyLongXsmall':\n    case 'bodyLongSmall':\n    case 'bodyLongMedium':\n    case 'bodyLongLarge':\n    case 'leadMedium':\n    default:\n      return 'p';\n  }\n};\n\nexport const isHeading = (\n  type: TypographyType,\n): type is TypographyHeadingType => {\n  return TG_HEADING_TYPES.includes(type as TypographyHeadingType);\n};\n\nexport const isLegend = (as: ElementType): boolean => {\n  return as === 'legend';\n};\n\nexport const isCaption = (as: ElementType): boolean => {\n  return as === 'caption';\n};\n\nexport const inlineElements: Array<ElementType> = [\n  'a',\n  'abbr',\n  'audio',\n  'b',\n  'bdi',\n  'bdo',\n  'big',\n  'br',\n  'button',\n  'canvas',\n  'cite',\n  'code',\n  'data',\n  'datalist',\n  'del',\n  'dfn',\n  'em',\n  'embed',\n  'i',\n  'iframe',\n  'img',\n  'input',\n  'ins',\n  'kbd',\n  'label',\n  'map',\n  'mark',\n  'meter',\n  'noscript',\n  'object',\n  'output',\n  'picture',\n  'progress',\n  'q',\n  'ruby',\n  's',\n  'samp',\n  'script',\n  'select',\n  'slot',\n  'small',\n  'span',\n  'strong',\n  'sub',\n  'sup',\n  'svg',\n  'template',\n  'textarea',\n  'time',\n  'u',\n  'var',\n  'video',\n  'wbr',\n];\n\nexport const isInlineElement = (as: ElementType): as is InlineElement =>\n  inlineElements.indexOf(as) !== -1;\n\nexport function getTypographyCn(value: TypographyType): HyphenTypographyType {\n  return convertCamelToHyphen(value) as HyphenTypographyType;\n}\n\nexport const getColorCn = (color?: TextColor) => {\n  if (!isTextColor(color)) return null;\n  const [prefix] = color.split('-', 1);\n  const key = `${prefix}-color--${color.slice(prefix.length + 1)}`;\n  return (typographyStyles as Record<string, string>)[key] || null;\n};\n","import { type AnchorHTMLAttributes, type HTMLAttributes } from 'react';\n\nimport styles from './Typography.module.css';\nimport {\n  type OtherTypographyType,\n  type TypographyAnchorType,\n  type TypographyComponentProps,\n  type TypographyLabelType,\n} from './Typography.types';\nimport {\n  getColorCn,\n  getElementType,\n  getTypographyCn,\n  isCaption,\n  isLegend,\n} from './Typography.utils';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { cn } from '../../../utils';\nimport { getTextColor, isTextColor } from '../../../utils/color';\nimport { focusable } from '../../helpers/styling/focus.module.css';\nimport { Box } from '../../layout';\nimport typographyStyles from '../typographyStyles.module.css';\n\ntype AnchorTypographyProps = BaseComponentPropsWithChildren<\n  HTMLAnchorElement,\n  {\n    /**nativ `href`-prop ved `typographyType='a'`.  */\n    href?: string | undefined;\n\n    /**nativ `target`-prop ved `typographyType='a'`.  */\n    target?: string;\n  },\n  AnchorHTMLAttributes<HTMLAnchorElement>\n>;\n\ntype LabelTypographyProps = BaseComponentPropsWithChildren<\n  HTMLLabelElement,\n  HTMLAttributes<HTMLLabelElement>\n>;\n\ntype OtherTypographyProps = BaseComponentPropsWithChildren<\n  HTMLElement,\n  HTMLAttributes<HTMLElement>\n>;\n\nexport type TypographyProps =\n  | ({\n      /**Styling basert på det typografiske utvalget definert i Figma. Returnerer default HTML tag for hver type. **OBS!** Ved bruk av `'a'` er det flere tilgjengelige props, se under.  */\n      typographyType?: TypographyAnchorType;\n    } & TypographyComponentProps &\n      Omit<AnchorTypographyProps, 'color'>)\n  | ({\n      /**Styling basert på det typografiske utvalget definert i Figma. Returnerer default HTML tag for hver type. **OBS!** Ved bruk av `'a'` er det flere tilgjengelige props, se under.  */\n      typographyType?: TypographyLabelType;\n    } & TypographyComponentProps &\n      Omit<LabelTypographyProps, 'color'>)\n  | ({\n      /**Styling basert på det typografiske utvalget definert i Figma. Returnerer default HTML tag for hver type. **OBS!** Ved bruk av `'a'` er det flere tilgjengelige props, se under.  */\n      typographyType?: OtherTypographyType;\n    } & TypographyComponentProps &\n      Omit<OtherTypographyProps, 'color'>);\n\nconst isAnchorProps = (\n  props: TypographyProps,\n): props is AnchorTypographyProps => props.typographyType === 'a';\n\nexport const Typography = (props: TypographyProps) => {\n  const {\n    typographyType = 'bodyLongMedium',\n    as: propAs,\n    children,\n    bold,\n    underline,\n    italic,\n    style,\n    id,\n    withMargins,\n    color,\n    className,\n    htmlProps = {},\n    ...rest\n  } = props;\n\n  const as = propAs ? propAs : getElementType(typographyType);\n  const typographyCn = getTypographyCn(typographyType);\n\n  let relProp;\n  if (isAnchorProps(props)) {\n    relProp = as === 'a' ? 'noopener noreferer' : undefined;\n  }\n\n  return (\n    <Box\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          getColorCn(color),\n          styles.container,\n          typographyStyles[typographyCn],\n          withMargins && typographyStyles[`${typographyCn}--margins`],\n          isLegend(as) && typographyStyles.legend,\n          isCaption(as) && typographyStyles.caption,\n          isCaption(as) &&\n            withMargins &&\n            typographyStyles['caption--withMargins'],\n          bold && typographyStyles.bold,\n          underline && typographyStyles.underline,\n          italic && typographyStyles.italic,\n          as === 'a' && focusable,\n        ),\n        {\n          ...style,\n          color: color && !isTextColor(color) ? getTextColor(color) : undefined,\n        },\n        htmlProps,\n        rest,\n      )}\n      as={as}\n      rel={relProp}\n    >\n      {children}\n    </Box>\n  );\n};\n\nTypography.displayName = 'Typography';\n","import {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { type CommonBlockTypographyProps, Typography } from '../Typography';\n\nexport type CaptionProps = BaseComponentPropsWithChildren<\n  HTMLTableCaptionElement,\n  CommonBlockTypographyProps\n>;\n\nexport const Caption = ({\n  id,\n  className,\n  style,\n  htmlProps,\n  children,\n  ...rest\n}: CaptionProps) => {\n  return (\n    <Typography\n      {...getBaseHTMLProps(id, className, style, htmlProps, rest)}\n      typographyType=\"headingLarge\"\n      as=\"caption\"\n    >\n      {children}\n    </Typography>\n  );\n};\n\nCaption.displayName = 'Caption';\n","import { type ElementType } from 'react';\n\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { cn, optAttr } from '../../../utils';\nimport {\n  type CommonBlockTypographyProps,\n  Typography,\n  type TypographyHeadingType,\n} from '../Typography';\nimport styles from '../typographyStyles.module.css';\n\nconst getHeadingElement = (level: HeadingLevel): ElementType => `h${level}`;\n\nconst getDefaultTypographyType = (h: ElementType): TypographyHeadingType => {\n  switch (h) {\n    case 'h1':\n      return 'headingXlarge';\n    case 'h2':\n      return 'headingLarge';\n    case 'h3':\n      return 'headingMedium';\n    case 'h4':\n      return 'headingSmall';\n    case 'h5':\n      return 'headingXsmall';\n    case 'h6':\n      return 'headingXxsmall';\n    default:\n      return 'headingXlarge';\n  }\n};\n\nexport type HeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;\n\nexport type HeadingProps = BaseComponentPropsWithChildren<\n  HTMLHeadingElement,\n  {\n    /**Nivå på overskriften. Komponenten returnerer HTML heading element med dette nivået med default styling. */\n    level: HeadingLevel;\n    /**Spesifiserer typografistil basert på utvalget for HTML heading elementer.  */\n    typographyType?: TypographyHeadingType;\n    /**Setter standard spacing for `<Heading>` som er over et inputelement. */\n    withMarginsOverInput?: boolean;\n  } & CommonBlockTypographyProps\n>;\n\nexport const Heading = ({\n  id,\n  className,\n  style,\n  htmlProps,\n  children,\n  typographyType,\n  level,\n  withMargins,\n  withMarginsOverInput,\n  ...rest\n}: HeadingProps) => {\n  const headingElement: ElementType = getHeadingElement(level);\n\n  const standardTypographyType =\n    typographyType ?? getDefaultTypographyType(headingElement);\n\n  return (\n    <Typography\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          withMarginsOverInput && styles['heading--margins-over-input'],\n        ),\n        style,\n        htmlProps,\n        rest,\n      )}\n      typographyType={standardTypographyType}\n      as={headingElement}\n      withMargins={optAttr(withMargins || withMarginsOverInput)}\n    >\n      {children}\n    </Typography>\n  );\n};\n\nHeading.displayName = 'Heading';\n",".read-only {\n  display: flex;\n}\n\n.read-only__icon {\n  align-self: center;\n  flex-shrink: 0;\n  margin-inline-end: var(--dds-spacing-x0-125);\n  width: 1.25em;\n  height: 1.25em;\n}\n","import { type LabelHTMLAttributes, type ReactNode } from 'react';\n\nimport styles from './Label.module.css';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { RequiredMarker, cn } from '../../../utils';\nimport { Icon } from '../../Icon';\nimport { LockFilledIcon } from '../../Icon/icons';\nimport { type CommonInlineTypographyProps, Typography } from '../Typography';\n\ntype PickedHTMLAttributes = Pick<\n  LabelHTMLAttributes<HTMLLabelElement>,\n  'htmlFor'\n>;\n\nexport interface BaseLabelProps {\n  /** Om input knyttet til ledeteksten er påkrevd; påvirker styling. */\n  showRequiredStyling?: boolean;\n  /** Om input knyttet til ledeteksten er `read-only`; påvirker styling. */\n  readOnly?: boolean;\n  /**Innhold som står etter ledeteksten (knapp med ekstra info e.l.). */\n  afterLabelContent?: ReactNode;\n}\n\nexport type LabelProps = BaseComponentPropsWithChildren<\n  HTMLLabelElement,\n  BaseLabelProps & CommonInlineTypographyProps & PickedHTMLAttributes\n>;\n\nexport const Label = ({\n  showRequiredStyling,\n  readOnly,\n  id,\n  className,\n  style,\n  htmlProps,\n  children,\n  afterLabelContent,\n  ...rest\n}: LabelProps) => {\n  const content = (\n    <>\n      {readOnly && (\n        <Icon\n          icon={LockFilledIcon}\n          iconSize=\"small\"\n          className={styles['read-only__icon']}\n        />\n      )}\n      {children}\n      {showRequiredStyling && <RequiredMarker />}\n    </>\n  );\n  const labelProps = {\n    ...getBaseHTMLProps(\n      id,\n      cn(className, readOnly && styles['read-only']),\n      style,\n      htmlProps,\n      rest,\n    ),\n  };\n  const render = afterLabelContent ? (\n    <Typography\n      typographyType=\"labelMedium\"\n      as=\"div\"\n      withMargins={rest.withMargins}\n    >\n      <Typography\n        {...labelProps}\n        typographyType=\"labelMedium\"\n        withMargins={false}\n      >\n        {content}\n      </Typography>\n      {afterLabelContent}\n    </Typography>\n  ) : (\n    <Typography {...labelProps} typographyType=\"labelMedium\">\n      {content}\n    </Typography>\n  );\n  return render;\n};\n\nLabel.displayName = 'Label';\n","import {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { cn, optAttr } from '../../../utils';\nimport {\n  type CommonBlockTypographyProps,\n  Typography,\n  type TypographyHeadingType,\n} from '../Typography';\nimport styles from '../typographyStyles.module.css';\n\nexport type LegendProps = BaseComponentPropsWithChildren<\n  HTMLLegendElement,\n  CommonBlockTypographyProps & {\n    /**Typografistil basert på utvalget for HTML heading elementer.  */\n    typographyType?: TypographyHeadingType;\n    /**Setter standard spacing for `<Legend>` som er over et inputelement. */\n    withMarginsOverInput?: boolean;\n  }\n>;\n\nexport const Legend = ({\n  id,\n  className,\n  style,\n  htmlProps,\n  typographyType = 'headingLarge',\n  withMarginsOverInput,\n  withMargins,\n  ...rest\n}: LegendProps) => {\n  return (\n    <Typography\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          withMarginsOverInput && styles['legend--margins-over-input'],\n        ),\n        style,\n        htmlProps,\n        rest,\n      )}\n      as=\"legend\"\n      typographyType={typographyType}\n      withMargins={optAttr(withMargins || withMarginsOverInput)}\n    />\n  );\n};\n\nLegend.displayName = 'Legend';\n","import { type AnchorHTMLAttributes, type ElementType } from 'react';\n\nimport { ElementAs } from '../../../polymorphic';\nimport {\n  type PolymorphicBaseComponentProps,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { cn, getTextColor, isTextColor } from '../../../utils';\nimport { focusable } from '../../helpers/styling/focus.module.css';\nimport {\n  type CommonInlineTypographyProps,\n  type TypographyBodyType,\n  getColorCn,\n  getTypographyCn,\n} from '../Typography';\nimport tgStyles from '../typographyStyles.module.css';\n\ntype PickedHTMLAttributes = Pick<\n  AnchorHTMLAttributes<HTMLAnchorElement>,\n  'onClick' | 'href' | 'target'\n>;\n\nexport type LinkProps<T extends ElementType = 'a'> =\n  PolymorphicBaseComponentProps<\n    T,\n    {\n      /**Om lenken kan få `:visited`-styling. */\n      withVisited?: boolean;\n      /**Spesifiserer typografistil basert på utvalget for brødtekst. Arver hvis ikke oppgitt. */\n      typographyType?: TypographyBodyType;\n      /**\n       * Tvinger komponenten til å behandle `as` som en anchor tag wrapper og forwarde anchor-spesifikke props (target, rel).\n       * Bruk når custom `as` komponent wrapper en `<a>` tag.\n       * */\n      isAnchor?: boolean;\n      /**Om styling for inline ikon skal gjelde.\n       * Ikon kan legges inn som barn ved siden av teksten med `<Icon>`-komponent.\n       * */\n      withIconStyling?: boolean;\n    } & CommonInlineTypographyProps &\n      PickedHTMLAttributes\n  >;\n\nexport const Link = <T extends ElementType = 'a'>({\n  id,\n  className,\n  htmlProps,\n  children,\n  typographyType,\n  withMargins,\n  withVisited,\n  style,\n  color,\n  as: propAs,\n  isAnchor: propIsAnchor,\n  withIconStyling,\n  ...rest\n}: LinkProps<T>) => {\n  const as = propAs ? propAs : 'a';\n  const isAnchor = as === 'a' || propIsAnchor;\n\n  const aProps = isAnchor\n    ? {\n        rel: 'noopener noreferrer',\n      }\n    : {};\n\n  return (\n    <ElementAs\n      as={as}\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          tgStyles.a,\n          withIconStyling && tgStyles['a--with-icon'],\n          withVisited && tgStyles['a--visited'],\n          typographyType && tgStyles[getTypographyCn(typographyType)],\n          typographyType &&\n            withMargins &&\n            tgStyles[`${getTypographyCn(typographyType)}--margins`],\n          focusable,\n          getColorCn(color),\n        ),\n        {\n          ...style,\n          color: color && !isTextColor(color) ? getTextColor(color) : undefined,\n        },\n        htmlProps,\n        rest,\n      )}\n      {...aProps}\n    >\n      {children}\n    </ElementAs>\n  );\n};\n\nLink.displayName = 'Link';\n","import {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../../types';\nimport {\n  type CommonBlockTypographyProps,\n  Typography,\n  type TypographyBodyType,\n  type TypographyLeadType,\n} from '../Typography';\n\nexport type ParagraphProps = BaseComponentPropsWithChildren<\n  HTMLParagraphElement,\n  {\n    /** Spesifiserer typografistil basert på utvalget for brødtekst og ingress.\n     * @default 'BodyLongMedium'\n     */\n    typographyType?: TypographyBodyType | TypographyLeadType;\n  } & CommonBlockTypographyProps\n>;\n\nexport const Paragraph = ({\n  id,\n  className,\n  style,\n  htmlProps,\n  children,\n  typographyType = 'bodyLongMedium',\n  ...rest\n}: ParagraphProps) => {\n  return (\n    <Typography\n      {...getBaseHTMLProps(id, className, style, htmlProps, rest)}\n      typographyType={typographyType}\n    >\n      {children}\n    </Typography>\n  );\n};\n\nParagraph.displayName = 'Paragraph';\n","import { type ButtonHTMLAttributes } from 'react';\n\nimport styles from './Accordion.module.css';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { StylelessButton } from '../helpers';\nimport { useAccordionContext } from '../helpers/AccordionBase';\nimport baseStyles from '../helpers/AccordionBase/AccordionBase.module.css';\nimport { focusable } from '../helpers/styling/focus.module.css';\nimport { Icon } from '../Icon';\nimport { AnimatedChevronUpDownIcon } from '../Icon/icons/animated';\nimport { Box } from '../layout';\nimport { type StaticTypographyType, getTypographyCn } from '../Typography';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport type AccordionHeaderProps = Omit<\n  BaseComponentPropsWithChildren<\n    HTMLButtonElement,\n    {\n      /**Overskriver default teksttype. */\n      typographyType?: StaticTypographyType;\n      /**Angir om teksten skal være i \"bold\"-format. */\n      bold?: boolean;\n    },\n    ButtonHTMLAttributes<HTMLButtonElement>\n  >,\n  'id'\n>;\n\nexport const AccordionHeader = ({\n  children,\n  className,\n  style,\n  htmlProps,\n  typographyType = 'headingMedium',\n  bold,\n  ...rest\n}: AccordionHeaderProps) => {\n  const { isExpanded, headerProps } = useAccordionContext();\n  const { id, ...restHeaderProps } = headerProps ?? {};\n  const iconState = isExpanded ? 'up' : 'down';\n\n  return (\n    <Box\n      as={StylelessButton}\n      padding=\"x1 x1.5 x1 x1\"\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          styles['header-button'],\n          baseStyles['header-button'],\n          focusable,\n        ),\n        style,\n        htmlProps,\n        rest,\n      )}\n      {...restHeaderProps}\n    >\n      <div\n        className={cn(\n          baseStyles.header__content,\n          typographyStyles[getTypographyCn(typographyType)],\n          bold && typographyStyles.bold,\n        )}\n      >\n        <Icon\n          icon={AnimatedChevronUpDownIcon}\n          iconSize=\"component\"\n          className={styles.chevron}\n          iconState={iconState}\n        />\n        {children}\n      </div>\n    </Box>\n  );\n};\n\nAccordionHeader.displayName = 'AccordionHeader';\n","import {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { useAccordionContext } from '../helpers/AccordionBase';\nimport { Box } from '../layout';\n\nexport type AccordionBodyProps = Omit<\n  BaseComponentPropsWithChildren<HTMLDivElement>,\n  'id'\n>;\n\nexport const AccordionBody = ({\n  children,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: AccordionBodyProps) => {\n  const { bodyContentRef, bodyProps } = useAccordionContext();\n\n  const {\n    className: bodyContextCn,\n    id,\n    height,\n    ...restBodyProps\n  } = bodyProps ?? {};\n\n  return (\n    <Box\n      height={`${height}px`}\n      {...getBaseHTMLProps(\n        id,\n        cn(className, bodyContextCn),\n        style,\n        htmlProps,\n        rest,\n      )}\n      {...restBodyProps}\n    >\n      <Box ref={bodyContentRef} padding=\"x0.5 x1.5 x2 x1\">\n        {children}\n      </Box>\n    </Box>\n  );\n};\n\nAccordionBody.displayName = 'AccordionBody';\n",".icon {\n  margin-right: var(--dds-spacing-x0-25);\n}\n","import { type ComponentPropsWithRef, type ElementType } from 'react';\n\nimport styles from './BackLink.module.css';\nimport { createTexts, useTranslation } from '../../i18n';\nimport { cn } from '../../utils';\nimport { focusable } from '../helpers/styling/focus.module.css';\nimport { Icon } from '../Icon';\nimport { ArrowLeftIcon } from '../Icon/icons';\nimport { HStack } from '../layout';\nimport tgStyles from '../Typography/typographyStyles.module.css';\n\nexport type BackLinkProps = {\n  /**\n   * Ledetekst.\n   */\n  label: string;\n  /**\n   * Custom HTML- eller React-element som returneres. Brukes ved klient-side ruting o.l.\n   */\n  as?: ElementType;\n} & Pick<ComponentPropsWithRef<'a'>, 'onClick' | 'href' | 'ref'>;\n\nexport const BackLink = ({ label, ref, as = 'a', ...rest }: BackLinkProps) => {\n  const { t } = useTranslation();\n  return (\n    <nav\n      ref={ref}\n      aria-label={t(texts.goBack)}\n      className={tgStyles['body-short-medium']}\n    >\n      <HStack\n        as={as}\n        className={cn(tgStyles.a, focusable)}\n        rel=\"noopener noreferer\"\n        {...rest}\n      >\n        <Icon\n          icon={ArrowLeftIcon}\n          iconSize=\"component\"\n          className={cn(styles.icon)}\n        />\n        {label}\n      </HStack>\n    </nav>\n  );\n};\n\nBackLink.displayName = 'BackLink';\n\nconst texts = createTexts({\n  goBack: {\n    nb: 'Gå tilbake',\n    no: 'Gå tilbake',\n    nn: 'Gå tilbake',\n    en: 'Go back',\n    se: 'Mana ruovttoluotta',\n  },\n});\n","import { type ComponentPropsWithRef, type Ref } from 'react';\n\nimport { Link } from '../Typography';\n\nexport type BreadcrumbProps =\n  | ComponentPropsWithRef<'a'>\n  | ComponentPropsWithRef<'span'>;\n\nexport const isAnchorTypographyProps = (\n  props: BreadcrumbProps,\n): props is ComponentPropsWithRef<'a'> => {\n  return (props as ComponentPropsWithRef<'a'>).href != undefined;\n};\n\nexport const Breadcrumb = ({ children, ref, ...rest }: BreadcrumbProps) => {\n  if (isAnchorTypographyProps(rest)) {\n    return (\n      <Link\n        ref={ref as Ref<HTMLAnchorElement>}\n        htmlProps={rest}\n        href={rest.href}\n      >\n        {children}\n      </Link>\n    );\n  }\n  return (\n    <span ref={ref} {...rest}>\n      {children}\n    </span>\n  );\n};\n\nBreadcrumb.displayName = 'Breadcrumb';\n","import { Children, type ReactNode, isValidElement } from 'react';\n\nimport styles from './Breadcrumbs.module.css';\nimport { createTexts, useTranslation } from '../../i18n';\nimport { type BaseComponentProps, getBaseHTMLProps } from '../../types';\nimport { cn } from '../../utils';\nimport { Button } from '../Button';\nimport { StylelessList } from '../helpers';\nimport { Icon } from '../Icon';\nimport { ChevronRightIcon, MoreHorizontalIcon } from '../Icon/icons';\nimport { type Breakpoint, HStack, type HStackProps } from '../layout';\nimport {\n  OverflowMenu,\n  OverflowMenuGroup,\n  OverflowMenuLink,\n  OverflowMenuList,\n  OverflowMenuSpan,\n} from '../OverflowMenu';\nimport { type BreadcrumbProps, isAnchorTypographyProps } from './Breadcrumb';\nimport tgStyles from '../Typography/typographyStyles.module.css';\n\nexport type BreadcrumbsProps = BaseComponentProps<\n  HTMLElement,\n  {\n    /**\n     * Brekkpunkt for små skjermer.\n     * Trunkerer barn unntatt første og siste; trunkerte barn er tilgjengelige ved å trykke på trunkeringsknappen.\n     */\n    smallScreenBreakpoint?: Breakpoint;\n    /**`<Breadcrumb> barn.` */\n    children?: ReactNode;\n  }\n>;\n\nexport const Breadcrumbs = ({\n  children,\n  smallScreenBreakpoint,\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: BreadcrumbsProps) => {\n  const chevronIcon = (\n    <Icon\n      className={cn(styles.icon)}\n      iconSize=\"component\"\n      icon={ChevronRightIcon}\n    />\n  );\n  const { t } = useTranslation();\n  const childrenArray = Children.toArray(children);\n\n  const responsiveLiProps: HStackProps<'li'> = {\n    as: 'li',\n    alignItems: 'center',\n    gap: 'x0.5',\n    padding: 'x0',\n  };\n\n  const bChildren = childrenArray.map((item, index) => {\n    return (\n      <HStack\n        key={`breadcrumb-${index}`}\n        {...responsiveLiProps}\n        padding=\"x0.125 0\"\n      >\n        {index !== 0 && chevronIcon}\n        {item}\n      </HStack>\n    );\n  });\n\n  const bChildrenTruncated =\n    childrenArray.length > 2\n      ? childrenArray.slice(1, childrenArray.length - 1).map((item, index) => {\n          if (isValidElement<BreadcrumbProps>(item)) {\n            if (isAnchorTypographyProps(item.props)) {\n              return (\n                <OverflowMenuLink key={index} href={item.props.href}>\n                  {item.props.children}\n                </OverflowMenuLink>\n              );\n            } else\n              return (\n                <OverflowMenuSpan key={index}>\n                  {item.props.children}\n                </OverflowMenuSpan>\n              );\n          }\n        })\n      : [];\n\n  const bChildrenSmallScreen = (\n    <>\n      <HStack {...responsiveLiProps}>{childrenArray[0]}</HStack>\n      {bChildrenTruncated.length > 0 && (\n        <HStack {...responsiveLiProps}>\n          {chevronIcon}\n          <OverflowMenuGroup>\n            <Button\n              size=\"xsmall\"\n              icon={MoreHorizontalIcon}\n              purpose=\"tertiary\"\n              aria-label={\n                bChildrenTruncated.length > 1\n                  ? t(texts.showHiddenTo(bChildren.length - 1))\n                  : t(texts.showHidden)\n              }\n            />\n            <OverflowMenu portal={false}>\n              <OverflowMenuList>{bChildrenTruncated}</OverflowMenuList>\n            </OverflowMenu>\n          </OverflowMenuGroup>\n        </HStack>\n      )}\n      <HStack {...responsiveLiProps}>\n        {chevronIcon}\n        {childrenArray[childrenArray.length - 1]}\n      </HStack>\n    </>\n  );\n\n  const hasSmallScreenBreakpoint = !!smallScreenBreakpoint;\n\n  const responsiveListProps: HStackProps<typeof StylelessList> = {\n    as: StylelessList,\n    flexWrap: 'wrap',\n    alignItems: 'center',\n    gap: 'x0.5',\n  };\n  return (\n    <nav\n      {...getBaseHTMLProps(\n        id,\n        cn(className, tgStyles['body-short-medium']),\n        style,\n        htmlProps,\n        rest,\n      )}\n      aria-label={t(texts.breadcrumbs)}\n    >\n      <HStack\n        {...responsiveListProps}\n        hideBelow={hasSmallScreenBreakpoint ? smallScreenBreakpoint : undefined}\n      >\n        {bChildren}\n      </HStack>\n      {hasSmallScreenBreakpoint && (\n        <HStack {...responsiveListProps} showBelow={smallScreenBreakpoint}>\n          {bChildrenSmallScreen}\n        </HStack>\n      )}\n    </nav>\n  );\n};\n\nBreadcrumbs.displayName = 'Breadcrumbs';\n\nconst texts = createTexts({\n  breadcrumbs: {\n    nb: 'Brødsmulesti',\n    no: 'Brødsmulesti',\n    nn: 'Brødsmulesti',\n    en: 'Breadcrumbs',\n    se: 'Láibemoallobálggis',\n  },\n  showHiddenTo: to => ({\n    nb: `Vis brødsmule 2 til ${to}`,\n    no: `Vis brødsmule 2 til ${to}`,\n    nn: `Vis brødsmule 2 til ${to}`,\n    en: `Show breadcrumb 2 to ${to}`,\n    se: `Čájet láibemoalu 2 ${to}`,\n  }),\n  showHidden: {\n    nb: 'Vis brødsmule 2',\n    no: 'Vis brødsmule 2',\n    nn: 'Vis brødsmule 2',\n    en: 'Show breadcrumb 2',\n    se: 'Čájet láibemoalu 2',\n  },\n});\n",".icon {\n  color: var(--dds-color-icon-link);\n}\n",":where(.button) {\n  -webkit-user-select: text;\n          user-select: text;\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  width: fit-content;\n  cursor: pointer;\n  box-shadow: none;\n  text-decoration: none;\n  border-radius: var(--dds-border-radius-button);\n  border: 1px solid;\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition: all var(--dds-motion-micro-state);\n  }\n\n  &:active:enabled {\n    scale: 0.95;\n  }\n}\n\n.button--is-loading {\n  cursor: not-allowed;\n}\n\n.button--full-width {\n  width: 100%;\n  justify-content: space-between;\n\n  &.button--is-loading,\n  &.just-icon,\n  &.just-text {\n    justify-content: center;\n  }\n\n  &.with-text-and-icon.with-icon-left {\n    justify-content: left;\n  }\n}\n\n.button--xsmall {\n  min-height: var(--dds-size-height-input-xsmall);\n  padding-block: var(--dds-spacing-x0-125);\n  &.just-text {\n    padding-inline: var(--dds-spacing-x0-5);\n  }\n\n  &.with-text-and-icon {\n    gap: var(--dds-spacing-xs-icon-text-gap);\n\n    &.with-icon-left {\n      padding-inline: var(--dds-spacing-x0-25) var(--dds-spacing-x0-5);\n    }\n    &.with-icon-right {\n      padding-inline: var(--dds-spacing-x0-5) var(--dds-spacing-x0-25);\n    }\n  }\n\n  &.just-icon,\n  &.button--is-loading.no-content {\n    padding-inline: var(--dds-spacing-x0-25);\n  }\n\n  &.clear {\n    min-height: fit-content;\n    padding: var(--dds-spacing-x0-125);\n  }\n}\n\n.button--small {\n  min-height: var(--dds-size-height-input-small);\n  padding-block: var(--dds-spacing-x0-25);\n  &.just-text {\n    padding-inline: var(--dds-spacing-x0-75);\n  }\n\n  &.with-text-and-icon {\n    gap: var(--dds-spacing-sm-icon-text-gap);\n\n    &.with-icon-left {\n      padding-inline: var(--dds-spacing-x0-5) var(--dds-spacing-x0-75);\n    }\n    &.with-icon-right {\n      padding-inline: var(--dds-spacing-x0-75) var(--dds-spacing-x0-5);\n    }\n  }\n\n  &.just-icon,\n  &.button--is-loading.no-content {\n    padding-inline: var(--dds-spacing-x0-5);\n  }\n\n  &.clear {\n    min-height: var(--dds-size-height-input-xsmall);\n    padding: var(--dds-spacing-x0-25);\n  }\n}\n\n.button--medium {\n  min-height: var(--dds-size-height-input-medium);\n  padding-block: var(--dds-spacing-x0-5);\n  &.just-text {\n    padding-inline: var(--dds-spacing-x1);\n  }\n\n  &.with-text-and-icon {\n    gap: var(--dds-spacing-md-icon-text-gap);\n\n    &.with-icon-left {\n      padding-inline: var(--dds-spacing-x0-75) var(--dds-spacing-x1);\n    }\n    &.with-icon-right {\n      padding-inline: var(--dds-spacing-x1) var(--dds-spacing-x0-75);\n    }\n  }\n\n  &.just-icon,\n  &.button--is-loading.no-content {\n    padding-inline: var(--dds-spacing-x0-75);\n  }\n\n  &.clear {\n    min-height: var(--dds-size-height-input-small);\n    padding: var(--dds-spacing-x0-5);\n  }\n}\n\n.button--large {\n  min-height: var(--dds-size-height-input-large);\n  padding-block: var(--dds-spacing-x0-75);\n  &.just-text {\n    padding-inline: var(--dds-spacing-x1-5);\n  }\n\n  &.with-text-and-icon {\n    gap: var(--dds-spacing-lg-icon-text-gap);\n\n    &.with-icon-left {\n      padding-inline: var(--dds-spacing-x1) var(--dds-spacing-x1-5);\n    }\n    &.with-icon-right {\n      padding-inline: var(--dds-spacing-x1-5) var(--dds-spacing-x1);\n    }\n  }\n\n  &.just-icon,\n  &.button--is-loading.no-content {\n    padding-inline: var(--dds-spacing-x1);\n  }\n\n  &.clear {\n    min-height: var(--dds-size-height-input-medium);\n    padding: var(--dds-spacing-x0-75);\n  }\n}\n\n.spinner-wrapper--absolute {\n  position: absolute;\n}\n\n.icon-wrapper {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.button--primary {\n  background-color: var(--dds-color-surface-action-resting);\n  border-color: var(--dds-color-surface-action-resting);\n  color: var(--dds-color-text-on-action);\n  &:hover:not(.button--is-loading) {\n    background-color: var(--dds-color-surface-action-hover);\n    border-color: var(--dds-color-surface-action-hover);\n    color: var(--dds-color-text-on-action);\n  }\n}\n\n.button--secondary {\n  background-color: var(--dds-color-surface-default);\n  border-color: var(--dds-color-border-default);\n  color: var(--dds-color-text-default);\n\n  &:hover:not(.button--is-loading) {\n    background-color: var(--dds-color-surface-hover-default);\n    border-color: var(--dds-color-border-action-hover);\n    color: var(--dds-color-text-default);\n  }\n}\n\n.button--tertiary {\n  background-color: transparent;\n  border-color: transparent;\n  color: var(--dds-color-text-default);\n\n  &:hover:not(.button--is-loading) {\n    background-color: var(--dds-color-surface-hover-default);\n    border-color: transparent;\n    color: var(--dds-color-text-default);\n  }\n}\n\n.button--danger {\n  background-color: var(--dds-color-surface-action-danger-resting);\n  border-color: var(--dds-color-surface-action-danger-resting);\n  color: var(--dds-color-text-on-action);\n  &:hover:not(.button--is-loading) {\n    background-color: var(--dds-color-surface-action-danger-hover);\n    border-color: var(--dds-color-surface-action-danger-hover);\n    color: var(--dds-color-text-on-action);\n  }\n}\n","import { createContext, useContext } from 'react';\n\nimport { type ButtonSize } from '../Button/Button.types';\n\ninterface ButtonGroupContextType {\n  size?: ButtonSize;\n  purpose: 'secondary';\n}\n\nexport const ButtonGroupContext = createContext<\n  Partial<ButtonGroupContextType>\n>({});\n\nexport const useButtonGroupContext = () => useContext(ButtonGroupContext);\n","import { type ButtonHTMLAttributes, type ElementType } from 'react';\n\nimport styles from './Button.module.css';\nimport { type ButtonProps } from './Button.types';\nimport { createTexts, useTranslation } from '../../i18n';\nimport { ElementAs } from '../../polymorphic';\nimport { getBaseHTMLProps } from '../../types';\nimport { cn } from '../../utils';\nimport { useButtonGroupContext } from '../ButtonGroup/ButtonGroup.context';\nimport { focusable } from '../helpers/styling/focus.module.css';\nimport { invisible } from '../helpers/styling/utilStyles.module.css';\nimport { Icon, type SvgIcon } from '../Icon';\nimport { Spinner } from '../Spinner';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport const Button = <I extends SvgIcon, T extends ElementType = 'button'>({\n  as: propAs,\n  children,\n  purpose = 'primary',\n  size: propSize = 'medium',\n  iconPosition = 'left',\n  loading,\n  loadingTooltip,\n  fullWidth = false,\n  icon,\n  iconState,\n  onClick,\n  onFocus,\n  onBlur,\n  id,\n  ref,\n  className,\n  style,\n  htmlProps,\n  ...props\n}: ButtonProps<I, T>) => {\n  const { purpose: groupPurpose, size: groupSize } = useButtonGroupContext();\n  const { t } = useTranslation();\n  const spinnerTooltip = loadingTooltip ?? t(texts.saving);\n\n  const hasLabel = !!children;\n  const hasIcon = !!icon;\n  const hasLabelAndIcon = hasIcon && hasLabel;\n  const isIconButton = !hasLabel && hasIcon;\n  const isTextButton = hasLabel && !hasIcon;\n  const noContent = !hasLabel && !hasIcon;\n  const size = groupSize ?? propSize;\n\n  const buttonCn = cn(\n    className,\n    styles.button,\n    styles[`button--${groupPurpose ? groupPurpose : purpose}`],\n    styles[`button--${size}`],\n    isTextButton && styles['just-text'],\n    ...(hasLabelAndIcon\n      ? [styles['with-text-and-icon'], styles[`with-icon-${iconPosition}`]]\n      : []),\n    isIconButton && styles['just-icon'],\n    noContent && styles['no-content'],\n    fullWidth && styles['button--full-width'],\n    loading && styles['button--is-loading'],\n    typographyStyles[`body-short-${size}`],\n    focusable,\n  );\n\n  const iconElement = hasIcon && (\n    <Icon\n      icon={icon}\n      iconSize=\"component\"\n      className={cn(loading && invisible)}\n      iconState={iconState}\n    />\n  );\n\n  const content = (\n    <>\n      {hasLabel && (\n        <>\n          {iconPosition === 'left' && iconElement}\n          <span aria-hidden={loading} className={cn(loading && invisible)}>\n            {children}\n          </span>\n          {iconPosition === 'right' && iconElement}\n        </>\n      )}\n      {isIconButton && iconElement}\n      {loading && (\n        <span className={cn(!noContent && styles['spinner-wrapper--absolute'])}>\n          <Spinner\n            size=\"var(--dds-size-icon-component)\"\n            color={\n              purpose === 'primary' || purpose === 'danger'\n                ? 'icon-on-action'\n                : 'icon-default'\n            }\n            tooltip={spinnerTooltip}\n          />\n        </span>\n      )}\n    </>\n  );\n\n  const rest = props as ButtonHTMLAttributes<HTMLButtonElement>;\n  const { disabled: restDisabled, ...restFinal } = rest;\n\n  const htmlDisabled = htmlProps?.disabled;\n  const isDisabled = (restDisabled ?? htmlDisabled ?? loading) === true;\n\n  const as = propAs ? propAs : 'button';\n  const isAnchor = as === 'a';\n\n  const aProps = isAnchor\n    ? {\n        rel: 'noopener noreferrer',\n      }\n    : {};\n\n  return (\n    <ElementAs\n      as={as}\n      ref={ref}\n      {...getBaseHTMLProps(id, buttonCn, style, htmlProps, restFinal)}\n      onClick={onClick}\n      onFocus={onFocus}\n      onBlur={onBlur}\n      disabled={isDisabled}\n      {...aProps}\n    >\n      {content}\n    </ElementAs>\n  );\n};\n\nButton.displayName = 'Button';\n\nconst texts = createTexts({\n  saving: {\n    no: 'Lagring pågår',\n    nb: 'Lagring pågår',\n    nn: 'Lagring pågår',\n    en: 'Saving',\n    se: 'Vurkemin',\n  },\n});\n","import { useContext, useEffect } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { useOverflowMenuContext } from './OverflowMenu.context';\nimport styles from './OverflowMenu.module.css';\nimport { useCombinedRef } from '../../hooks';\nimport { getBaseHTMLProps } from '../../types';\nimport { cn } from '../../utils';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\nimport { Paper } from '../layout';\nimport { ThemeContext } from '../ThemeProvider';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nimport { type OverflowMenuProps } from '.';\n\nexport const OverflowMenu = ({\n  placement = 'bottom-end',\n  offset = 2,\n  parentElement,\n  portal = true,\n  className,\n  htmlProps = {},\n  ref,\n  style,\n  ...rest\n}: OverflowMenuProps) => {\n  const { isOpen, floatStyling, setFloatOptions, menuRef, menuId } =\n    useOverflowMenuContext();\n  const themeContext = useContext(ThemeContext);\n\n  if (portal && !themeContext) {\n    throw new Error('OverflowMenu must be used within a DdsProvider');\n  }\n\n  const portalTarget = parentElement ?? themeContext?.el;\n\n  useEffect(() => {\n    setFloatOptions?.({ placement, offset });\n  }, [placement, offset]);\n  const openCn = isOpen ? 'open' : 'closed';\n\n  const menu = (\n    <Paper\n      overflowY=\"auto\"\n      minWidth=\"180px\"\n      maxWidth=\"300px\"\n      ref={useCombinedRef(menuRef, ref)}\n      {...getBaseHTMLProps(\n        menuId,\n        cn(\n          className,\n          typographyStyles['body-short-medium'],\n          styles.container,\n          utilStyles.scrollbar,\n          utilStyles['visibility-transition'],\n          utilStyles[`visibility-transition--${openCn}`],\n        ),\n        { ...style, ...floatStyling },\n        htmlProps,\n        rest,\n      )}\n      role=\"menu\"\n      aria-hidden={!isOpen}\n      elevation=\"medium\"\n      border=\"border-default\"\n    />\n  );\n\n  return portal && portalTarget ? createPortal(menu, portalTarget) : menu;\n};\n\nOverflowMenu.displayName = 'OverflowMenu';\n","import {\n  type Dispatch,\n  type ReactNode,\n  type RefObject,\n  type SetStateAction,\n  createContext,\n  useContext,\n  useEffect,\n  useState,\n} from 'react';\n\nimport {\n  type FloatingStyles,\n  type UseFloatPositionOptions,\n  useRoveFocus,\n} from '../../hooks';\n\ntype FocusableElement =\n  | HTMLButtonElement\n  | HTMLAnchorElement\n  | HTMLInputElement;\n\ninterface CommonContextProps {\n  isOpen: boolean;\n  onClose?: () => void;\n  menuRef?: (node: HTMLElement | null) => void;\n  menuId?: string;\n  floatStyling?: FloatingStyles;\n  setFloatOptions?: Dispatch<\n    SetStateAction<UseFloatPositionOptions | undefined>\n  >;\n}\ntype OverflowMenuContextProps = CommonContextProps & {\n  registerItem: (ref: RefObject<FocusableElement | null>) => void;\n  unregisterItem: (ref: RefObject<FocusableElement | null>) => void;\n  focusedRef?: RefObject<FocusableElement | null>;\n};\n\nexport type OverflowMenuContextProviderProps = CommonContextProps & {\n  children: ReactNode;\n};\n\nconst OverflowMenuContext = createContext<OverflowMenuContextProps>({\n  isOpen: false,\n  registerItem: () => null,\n  unregisterItem: () => null,\n});\n\nexport function OverflowMenuContextProvider({\n  children,\n  ...rest\n}: OverflowMenuContextProviderProps) {\n  const [items, setItems] = useState<Array<RefObject<FocusableElement | null>>>(\n    [],\n  );\n  const [focusIndex] = useRoveFocus(items.length, rest.isOpen);\n\n  useEffect(() => {\n    items[focusIndex]?.current?.focus();\n  }, [focusIndex]);\n\n  return (\n    <OverflowMenuContext\n      value={{\n        ...rest,\n        registerItem: ref => setItems(prev => [...prev, ref]),\n        unregisterItem: ref =>\n          setItems(prev => prev.filter(item => item !== ref)),\n        focusedRef: items[focusIndex],\n      }}\n    >\n      {children}\n    </OverflowMenuContext>\n  );\n}\n\nexport const useOverflowMenuContext = () => {\n  return useContext(OverflowMenuContext);\n};\n",".container {\n  box-sizing: border-box;\n  z-index: var(--dds-zindex-overflowmenu);\n}\n\n.list {\n  display: flex;\n  flex-direction: column;\n}\n","import { type MouseEvent, useEffect, useRef, useState } from 'react';\n\nimport { useCombinedRef } from '../../../hooks';\nimport { StylelessButton } from '../../helpers';\nimport { DropdownItem } from '../../helpers/Dropdown/DropdownItem';\nimport { useOverflowMenuContext } from '../OverflowMenu.context';\nimport { type OverflowMenuButtonProps } from '../OverflowMenu.types';\n\nexport const OverflowMenuButton = ({\n  onClick,\n  onClickAsync,\n  closeMenuOnClickAsync = true,\n  purpose = 'default',\n  loading,\n  ref,\n  ...rest\n}: OverflowMenuButtonProps) => {\n  const itemRef = useRef<HTMLButtonElement>(null);\n  const combinedRef = useCombinedRef(ref, itemRef);\n\n  const { onClose, registerItem, unregisterItem, focusedRef } =\n    useOverflowMenuContext();\n\n  const [internalLoading, setInternalLoading] = useState(false);\n  const isLoading = loading || internalLoading;\n\n  useEffect(() => {\n    registerItem(itemRef);\n    return () => unregisterItem(itemRef);\n  }, []);\n\n  const handleClick = async (e: MouseEvent<HTMLButtonElement>) => {\n    if (isLoading) return;\n\n    const close = () => onClose?.();\n\n    if (onClickAsync) {\n      setInternalLoading(true);\n      const shouldAutoClose = closeMenuOnClickAsync === true;\n\n      try {\n        await onClickAsync(e);\n        if (typeof closeMenuOnClickAsync === 'function') {\n          closeMenuOnClickAsync(close);\n        } else if (shouldAutoClose) close();\n      } finally {\n        setInternalLoading(false);\n      }\n    } else {\n      onClick?.(e);\n      close();\n    }\n  };\n\n  return (\n    <li>\n      <DropdownItem\n        as={StylelessButton}\n        ref={combinedRef}\n        role=\"menuitem\"\n        purpose={purpose}\n        loading={isLoading}\n        onClick={e => handleClick(e)}\n        {...rest}\n        tabIndex={focusedRef === itemRef ? 0 : -1}\n      />\n    </li>\n  );\n};\n\nOverflowMenuButton.displayName = 'OverflowMenuButton';\n","import { useEffect, useRef } from 'react';\n\nimport { useCombinedRef } from '../../../hooks';\nimport { DropdownItem } from '../../helpers/Dropdown/DropdownItem';\nimport { useOverflowMenuContext } from '../OverflowMenu.context';\nimport { type OverflowMenuLinkProps } from '../OverflowMenu.types';\n\nexport const OverflowMenuLink = ({\n  onClick,\n  ref,\n  ...rest\n}: OverflowMenuLinkProps) => {\n  const itemRef = useRef<HTMLAnchorElement>(null);\n  const combinedRef = useCombinedRef(ref, itemRef);\n\n  const { onClose, registerItem, unregisterItem, focusedRef } =\n    useOverflowMenuContext();\n\n  useEffect(() => {\n    registerItem(itemRef);\n    return () => unregisterItem(itemRef);\n  }, []);\n\n  return (\n    <li>\n      <DropdownItem\n        as=\"a\"\n        ref={combinedRef}\n        role=\"menuitem\"\n        onClick={e => {\n          onClick?.(e);\n          onClose?.();\n        }}\n        {...rest}\n        tabIndex={focusedRef === itemRef ? 0 : -1}\n      />\n    </li>\n  );\n};\n\nOverflowMenuLink.displayName = 'OverflowMenuLink';\n","import { useEffect, useRef } from 'react';\n\nimport { useCombinedRef } from '../../../hooks';\nimport { DropdownItem } from '../../helpers/Dropdown/DropdownItem';\nimport { Toggle } from '../../Toggle';\nimport { useOverflowMenuContext } from '../OverflowMenu.context';\nimport { type OverflowMenuToggleProps } from '../OverflowMenu.types';\n\nexport const OverflowMenuToggle = ({\n  ref,\n  ...rest\n}: OverflowMenuToggleProps) => {\n  const itemRef = useRef<HTMLInputElement>(null);\n  const combinedRef = useCombinedRef(ref, itemRef);\n\n  const { registerItem, unregisterItem, focusedRef } = useOverflowMenuContext();\n\n  useEffect(() => {\n    registerItem(itemRef);\n    return () => unregisterItem(itemRef);\n  }, []);\n\n  return (\n    <li>\n      <DropdownItem\n        as={Toggle}\n        ref={combinedRef}\n        {...rest}\n        htmlProps={{\n          role: 'menuitem',\n          tabIndex: focusedRef === itemRef ? 0 : -1,\n        }}\n      />\n    </li>\n  );\n};\n\nOverflowMenuToggle.displayName = 'OverflowMenuToggle';\n","import {\n  type ComponentProps,\n  type InputHTMLAttributes,\n  type ReactNode,\n  useId,\n} from 'react';\n\nimport styles from './Toggle.module.css';\nimport { useControllableState } from '../../hooks/useControllableState';\nimport { useTranslation } from '../../i18n';\nimport { commonTexts } from '../../i18n/commonTexts';\nimport {\n  type BaseComponentProps,\n  createSizes,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn, readOnlyClickHandler, readOnlyKeyDownHandler } from '../../utils';\nimport { HiddenInput } from '../helpers';\nimport focusStyles from '../helpers/styling/focus.module.css';\nimport { Icon } from '../Icon';\nimport { CheckIcon, LockFilledIcon, MoonIcon, SunIcon } from '../Icon/icons';\nimport { Spinner } from '../Spinner';\nimport { VisuallyHidden } from '../VisuallyHidden';\n\nexport const TOGGLE_SIZES = createSizes('medium', 'large');\nexport type ToggleSize = (typeof TOGGLE_SIZES)[number];\nexport type ToggleVariant = 'default' | 'colorScheme';\n\nexport type ToggleProps = BaseComponentProps<\n  HTMLElement,\n  {\n    /**Ledetekst; tillater bruk av f.eks. `<VisuallyHidden>` for usynlig tekst. */\n    children?: ReactNode;\n    /**\n     * Callback som blir kalt når brukeren endrer toggle-verdien.\n     */\n    onChange?: (checked: boolean) => void;\n    /**\n     * Om toggle er av eller på.\n     */\n    checked?: boolean;\n    /**\n     * Den initielle verdien når komponenten brukes uncontrolled.\n     * @default false\n     */\n    defaultChecked?: boolean;\n    /**Spesifiserer om input er `disabled`. */\n    disabled?: boolean;\n    /**\n     * Inputelementet blir `readonly` - den kan ikke interageres med. Brukes bl.a. til å presentere input brukeren har fylt ut andre steder.\n     */\n    readOnly?: boolean;\n    /**\n     * Indikerer at verdien prosesseres; viser loading-tilstand og setter `disabled`.\n     */\n    isLoading?: boolean;\n    /**\n     * Størrelse.\n     * @default \"medium\"\n     */\n    size?: ToggleSize;\n    /**\n     * Variant basert på bruksområde.\n     * @default \"default\"\n     */\n    variant?: ToggleVariant;\n  } & Pick<ComponentProps<'input'>, 'name' | 'aria-describedby' | 'onBlur'>,\n  InputHTMLAttributes<HTMLInputElement>\n>;\n\nexport const Toggle = ({\n  id,\n  children,\n  size = 'medium',\n  checked: checkedProp,\n  defaultChecked,\n  onChange,\n  disabled,\n  readOnly,\n  isLoading,\n  className,\n  style,\n  htmlProps = {},\n  variant = 'default',\n  ...rest\n}: ToggleProps) => {\n  const { t } = useTranslation();\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-toggle`;\n  const iconSize = size === 'large' ? 'medium' : 'small';\n\n  const [checked, setChecked] = useControllableState({\n    value: checkedProp,\n    defaultValue: defaultChecked ?? false,\n    onChange,\n  });\n\n  const isColorScheme = variant === 'colorScheme';\n\n  const marker = isColorScheme ? (\n    <>\n      <Icon\n        className={styles['unchecked-icon']}\n        icon={SunIcon}\n        iconSize={iconSize}\n      />\n      <Icon\n        className={styles['checked-icon']}\n        icon={MoonIcon}\n        iconSize={iconSize}\n      />\n    </>\n  ) : (\n    <Icon className={styles.checkmark} icon={CheckIcon} iconSize={iconSize} />\n  );\n\n  return (\n    <label\n      htmlFor={uniqueId}\n      style={style}\n      className={cn(\n        className,\n        styles.label,\n        styles[size],\n        isLoading && styles['label--is-loading'],\n        disabled && styles['label--disabled'],\n        readOnly && styles['label--read-only'],\n        isColorScheme && styles['label--color-scheme'],\n      )}\n    >\n      <HiddenInput\n        {...getBaseHTMLProps(\n          uniqueId,\n          focusStyles['focusable-sibling'],\n          undefined,\n          htmlProps,\n          rest,\n        )}\n        type=\"checkbox\"\n        checked={checked}\n        onChange={e => setChecked(e.target.checked)}\n        disabled={isLoading ? isLoading : disabled}\n        aria-readonly={readOnly}\n        onKeyDown={readOnlyKeyDownHandler(\n          'selectionControl',\n          readOnly || isLoading,\n          htmlProps.onKeyDown,\n        )}\n        onClick={readOnlyClickHandler(readOnly || isLoading, htmlProps.onClick)}\n      />\n      <span className={cn(styles.track, focusStyles['focus-styled-sibling'])}>\n        <span className={styles.thumb}>\n          {isLoading ? (\n            <Spinner size={`var(--dds-size-icon-${size})`} />\n          ) : (\n            marker\n          )}\n        </span>\n      </span>\n      <span className={cn(readOnly && styles['labeltext--readonly'])}>\n        {readOnly && (\n          <Icon\n            icon={LockFilledIcon}\n            iconSize=\"small\"\n            className={styles['icon--read-only']}\n          />\n        )}\n        {children}{' '}\n        {isLoading && <VisuallyHidden>{t(commonTexts.loading)}</VisuallyHidden>}\n      </span>\n    </label>\n  );\n};\n\nToggle.displayName = 'Toggle';\n",":where(.label) {\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n  width: fit-content;\n  gap: var(--dds-spacing-x0-25);\n  --dds-toggle-medium-thumb-spacing-inline: var(--dds-spacing-x0-125);\n  --dds-toggle-large-thumb-spacing-inline: var(--dds-spacing-x0-25);\n}\n\n.track {\n  position: relative;\n  background-color: var(--dds-color-surface-medium);\n  border-radius: var(--dds-border-radius-rounded);\n  border: 1px solid var(--dds-color-border-default);\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      background-color var(--dds-motion-micro-state),\n      border var(--dds-motion-micro-state),\n      var(--dds-focus-transition);\n  }\n}\n\n.thumb {\n  position: absolute;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  padding: var(--dds-spacing-x0-125);\n  border-radius: var(--dds-border-radius-rounded);\n  background-color: var(--dds-color-surface-field-default);\n  border: 1px solid var(--dds-color-border-default);\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      transform var(--dds-motion-micro-state),\n      left var(--dds-motion-micro-state),\n      border var(--dds-motion-micro-state),\n      width var(--dds-motion-micro-state);\n  }\n}\n\n.thumb .checkmark {\n  opacity: 0;\n  color: var(--dds-color-icon-action-resting);\n  @media (prefers-reduced-motion: no-preference) {\n    transition: opacity var(--dds-motion-micro-state);\n  }\n}\n\n.thumb .unchecked-icon {\n  opacity: 1;\n  position: absolute;\n  color: var(--dds-color-icon-medium);\n  @media (prefers-reduced-motion: no-preference) {\n    transition: opacity var(--dds-motion-micro-state);\n  }\n}\n\n.thumb .checked-icon {\n  opacity: 0;\n  position: absolute;\n  color: var(--dds-color-icon-medium);\n  @media (prefers-reduced-motion: no-preference) {\n    transition: opacity var(--dds-motion-micro-state);\n  }\n}\n\n.label input:checked ~ .track > .thumb {\n  .checkmark {\n    opacity: 1;\n  }\n  .checked-icon {\n    opacity: 1;\n  }\n  .unchecked-icon {\n    opacity: 0;\n  }\n}\n\n.labeltext--readonly {\n  display: flex;\n  .icon--read-only {\n    align-self: center;\n    flex-shrink: 0;\n    margin-inline-end: var(--dds-spacing-x0-125);\n  }\n}\n\n.medium {\n  .track {\n    height: var(--dds-spacing-x1-5);\n    width: 2.8125rem;\n  }\n\n  .thumb {\n    left: var(--dds-toggle-medium-thumb-spacing-inline);\n    top: 1px;\n    height: 1.25rem;\n    width: 1.25rem;\n  }\n\n  input:checked ~ .track > .thumb {\n    left: calc(100% - var(--dds-toggle-medium-thumb-spacing-inline));\n    transform: translateX(-100%);\n  }\n\n  input:enabled:active:enabled:not([aria-readonly='true']) ~ .track > .thumb {\n    width: 1.5rem;\n  }\n}\n\n.large {\n  .track {\n    height: 2.125rem;\n    width: 3.25rem;\n  }\n\n  .thumb {\n    left: var(--dds-toggle-large-thumb-spacing-inline);\n    top: var(--dds-spacing-x0-125);\n    height: 1.75rem;\n    width: 1.75rem;\n  }\n\n  input:checked ~ .track > .thumb {\n    left: calc(100% - var(--dds-toggle-large-thumb-spacing-inline));\n    transform: translateX(-100%);\n  }\n\n  input:enabled:active:not([aria-readonly='true']) ~ .track > .thumb {\n    width: var(--dds-spacing-x2);\n  }\n}\n\n.label,\n.label--is-loading {\n  input:checked:enabled:not([aria-readonly='true']) ~ .track {\n    background-color: var(--dds-color-surface-action-selected);\n    border-color: var(--dds-color-border-action-default);\n\n    & > .thumb {\n      border-color: var(--dds-color-border-action-default);\n    }\n  }\n}\n\n.label:hover {\n  input:enabled:checked:not([aria-readonly='true']) ~ .track {\n    background-color: var(--dds-color-surface-action-hover);\n    border-color: var(--dds-color-border-action-hover);\n\n    .thumb {\n      border-color: var(--dds-color-border-action-hover);\n    }\n  }\n  input:enabled:not([aria-readonly='true']) ~ .track {\n    background-color: var(--dds-color-surface-hover-default);\n    border-color: var(--dds-color-border-action-hover);\n\n    .thumb {\n      border-color: var(--dds-color-border-action-hover);\n\n      .checkmark {\n        color: var(--dds-color-icon-action-hover);\n      }\n    }\n  }\n}\n\n.label--color-scheme,\n.label--color-scheme:hover {\n  input:enabled:not([aria-readonly='true']) ~ .track,\n  input:checked:enabled:not([aria-readonly='true']) ~ .track {\n    background-color: var(--dds-color-surface-medium);\n    border-color: var(--dds-color-border-default);\n    .thumb {\n      border-color: var(--dds-color-border-default);\n    }\n  }\n}\n\n.label--disabled {\n  cursor: not-allowed;\n  color: var(--dds-color-text-subtle);\n\n  input:disabled ~ .track {\n    background-color: var(--dds-color-surface-field-disabled);\n  }\n\n  input:checked:disabled ~ .track {\n    background-color: var(--dds-color-surface-action-selected-disabled);\n    border-color: var(--dds-color-surface-action-selected-disabled);\n  }\n\n  input:checked:disabled ~ .track > .thumb {\n    border-color: var(--dds-color-surface-action-selected-disabled);\n\n    .checkmark {\n      color: var(--dds-color-icon-subtle);\n    }\n    .checked-icon {\n      color: var(--dds-color-icon-subtle);\n    }\n    .unchecked-icon {\n      color: var(--dds-color-icon-subtle);\n    }\n  }\n}\n\n.label--read-only {\n  cursor: default;\n  color: var(--dds-color-text-medium);\n\n  input ~ .track {\n    background-color: var(--dds-color-surface-default);\n  }\n\n  input:checked ~ .track {\n    background-color: var(--dds-color-surface-inverse-default);\n    border-color: var(--dds-color-surface-inverse-default);\n  }\n\n  input:checked ~ .track > .thumb {\n    border-color: var(--dds-color-surface-inverse-default);\n    .checkmark {\n      color: var(--dds-color-icon-medium);\n    }\n  }\n}\n\n.label--is-loading {\n  cursor: not-allowed;\n}\n","import { type ElementType } from 'react';\n\nimport { ElementAs } from '../../polymorphic';\nimport {\n  type PolymorphicBaseComponentProps,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\n\nexport type VisuallyHiddenProps<T extends ElementType = 'span'> =\n  PolymorphicBaseComponentProps<T>;\n\nexport const VisuallyHidden = <T extends ElementType = 'span'>({\n  id,\n  as: asProp,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: VisuallyHiddenProps<T>) => {\n  const as = asProp ?? 'span';\n  return (\n    <ElementAs\n      as={as}\n      {...getBaseHTMLProps(\n        id,\n        cn(className, utilStyles['visually-hidden']),\n        style,\n        htmlProps,\n        rest,\n      )}\n    />\n  );\n};\n\nVisuallyHidden.displayName = 'VisuallyHidden';\n",":where(.divider) {\n  border: 0;\n  background-color: transparent;\n  border-top: 1px solid;\n  margin-top: var(--dds-spacing-x1);\n  margin-bottom: var(--dds-spacing-x1);\n}\n\n.divider--default {\n  color: var(--dds-color-border-default);\n}\n\n.divider--subtle {\n  color: var(--dds-color-border-subtle);\n}\n\n.divider--on-inverse {\n  color: var(--dds-color-border-inverse);\n}\n","import { type HTMLAttributes } from 'react';\n\nimport styles from './Divider.module.css';\nimport { type BaseComponentProps, getBaseHTMLProps } from '../../types';\nimport { cn } from '../../utils';\n\nexport type DividerColor = 'default' | 'subtle' | 'on-inverse';\n\nexport type DividerProps = BaseComponentProps<\n  HTMLHRElement,\n  {\n    /** Farge på horisontal linje.\n     * @default \"default\"\n     */\n    color?: DividerColor;\n  },\n  Omit<HTMLAttributes<HTMLHRElement>, 'color'>\n>;\n\nexport const Divider = ({\n  color = 'default',\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: DividerProps) => {\n  return (\n    <hr\n      {...getBaseHTMLProps(\n        id,\n        cn(className, styles.divider, styles[`divider--${color}`]),\n        style,\n        htmlProps,\n        rest,\n      )}\n    />\n  );\n};\n","import { getBaseHTMLProps } from '../../../types';\nimport { Divider, type DividerProps } from '../../Divider';\nimport { Box } from '../../layout';\n\ntype OverflowMenuDividerProps = Omit<DividerProps, 'color'>;\n\nexport const OverflowMenuDivider = ({\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: OverflowMenuDividerProps) => {\n  return (\n    <Box\n      as={Divider}\n      {...getBaseHTMLProps(id, className, style, htmlProps, rest)}\n      marginInline=\"x0.5\"\n      marginBlock=\"x0\"\n      color=\"subtle\"\n    />\n  );\n};\n\nOverflowMenuDivider.displayName = 'OverflowMenuDivider';\n","import { StylelessList, type StylelessListProps } from '../../helpers';\n\ntype OverflowMenuListProps = StylelessListProps;\n\nexport const OverflowMenuList = (props: OverflowMenuListProps) => (\n  <StylelessList {...props} />\n);\n","import { DropdownItem } from '../../helpers/Dropdown/DropdownItem';\nimport { type OverflowMenuSpanProps } from '../OverflowMenu.types';\n\nexport const OverflowMenuSpan = (props: OverflowMenuSpanProps) => (\n  <li>\n    <DropdownItem as=\"span\" {...props} />\n  </li>\n);\n\nOverflowMenuSpan.displayName = 'OverflowMenuSpan';\n","import { type ComponentPropsWithRef } from 'react';\n\nimport { DropdownHeader } from '../../helpers/Dropdown/DropdownHeader';\n\ntype OverflowMenuListHeaderProps = ComponentPropsWithRef<'h2'>;\n\nexport const OverflowMenuListHeader = (props: OverflowMenuListHeaderProps) => {\n  return <DropdownHeader {...props} />;\n};\n\nOverflowMenuListHeader.displayName = 'OverflowMenuListHeader';\n","import {\n  type DetailedHTMLProps,\n  type Dispatch,\n  type HTMLAttributes,\n  Children as ReactChildren,\n  type ReactNode,\n  type SetStateAction,\n  cloneElement,\n  isValidElement,\n  useId,\n  useRef,\n  useState,\n} from 'react';\n\nimport { OverflowMenuContextProvider } from './OverflowMenu.context';\nimport {\n  type UseFloatPositionOptions,\n  useCombinedRef,\n  useFloatPosition,\n  useOnClickOutside,\n  useOnKeyDown,\n} from '../../hooks';\n\nexport interface OverflowMenuGroupProps {\n  /**Om `<OverflowMenu>` er åpen ved første render.\n   * @default false\n   */\n  isInitiallyOpen?: boolean;\n  /**Implementerer kontrollert tilstand: forteller `<OverflowMenu>` om den skal være åpen. */\n  isOpen?: boolean;\n  /**Implementerer kontrollert tilstand: funksjon for å kontrollere `isOpen`. */\n  setIsOpen?: Dispatch<SetStateAction<boolean>>;\n  /**Callback når `<OverflowMenu>` åpnes. */\n  onOpen?: () => void;\n  /**Callback når `<OverflowMenu>` lukkes. */\n  onClose?: () => void;\n  /**Barn, anchor-elementet som første og `<OverflowMenu>` som andre. */\n  children: ReactNode;\n  /**Custom id for `<OverflowMenu>`. */\n  overflowMenuId?: string;\n}\n\nexport const OverflowMenuGroup = ({\n  children,\n  onClose,\n  onOpen,\n  setIsOpen: propSetIsOpen,\n  isOpen: propIsOpen,\n  isInitiallyOpen = false,\n  overflowMenuId,\n}: OverflowMenuGroupProps) => {\n  const [internalIsOpen, internalSetIsOpen] = useState(isInitiallyOpen);\n\n  const [isOpen, setIsOpen] = [\n    propIsOpen ?? internalIsOpen,\n    propSetIsOpen ?? internalSetIsOpen,\n  ];\n  const toggle = () => setIsOpen(!isOpen);\n  const close = () => setIsOpen(false);\n\n  const generatedId = useId();\n  const uniqueOverflowMenuId = overflowMenuId ?? `${generatedId}-overflowMenu`;\n\n  const [floatOptions, setFloatOptions] = useState<UseFloatPositionOptions>();\n  const { refs, styles: positionStyles } = useFloatPosition(null, floatOptions);\n\n  const buttonRef = useRef<HTMLButtonElement>(null);\n  const anchorRef = refs.setReference;\n  const combinedAnchorRef = useCombinedRef(buttonRef, anchorRef);\n  const menuRef = useRef<HTMLDivElement>(null);\n  const floatingRef = refs.setFloating;\n  const combinedMenuRef = useCombinedRef(menuRef, floatingRef);\n\n  const handleClose = () => {\n    if (isOpen) {\n      onClose?.();\n      close();\n    }\n  };\n\n  const handleToggle = () => {\n    if (!isOpen) onOpen?.();\n    if (isOpen) onClose?.();\n    toggle();\n  };\n\n  useOnClickOutside([menuRef, buttonRef], () => {\n    handleClose();\n  });\n\n  useOnKeyDown(['Esc', 'Escape'], () => {\n    if (isOpen) {\n      onClose?.();\n      close();\n      buttonRef.current?.focus();\n    }\n  });\n\n  useOnKeyDown(['Tab'], () => {\n    handleClose();\n  });\n\n  const Children = ReactChildren.map(children, (child, childIndex) => {\n    return (\n      isValidElement<\n        DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>\n      >(child) &&\n      (childIndex === 0\n        ? cloneElement(child, {\n            'aria-haspopup': 'menu',\n            'aria-controls': uniqueOverflowMenuId,\n            'aria-expanded': isOpen,\n            onClick: handleToggle,\n            ref: combinedAnchorRef,\n          })\n        : child)\n    );\n  });\n\n  return (\n    <OverflowMenuContextProvider\n      isOpen={isOpen}\n      onClose={handleClose}\n      menuRef={combinedMenuRef}\n      setFloatOptions={setFloatOptions}\n      floatStyling={positionStyles.floating}\n      menuId={uniqueOverflowMenuId}\n    >\n      {Children}\n    </OverflowMenuContextProvider>\n  );\n};\n\nOverflowMenuGroup.displayName = 'OverflowMenuGroup';\n",".group > *:focus-visible {\n  position: relative;\n  z-index: var(--dds-zindex-absolute-element);\n}\n\n.group--column {\n  display: flex;\n  flex-direction: column;\n\n  > * {\n    width: 100%;\n  }\n}\n\n.group--column > *:first-child {\n  border-bottom-left-radius: 0;\n  border-bottom-right-radius: 0;\n  margin-block-end: -1px;\n}\n\n.group--column > *:last-child {\n  border-top-left-radius: 0;\n  border-top-right-radius: 0;\n}\n\n.group--column > *:not(:first-child):not(:last-child) {\n  border-radius: 0;\n  margin-block-end: -1px;\n}\n\n.group--row > *:first-child {\n  border-top-right-radius: 0;\n  border-bottom-right-radius: 0;\n  margin-inline-end: -1px;\n}\n\n.group--row > *:last-child {\n  border-top-left-radius: 0;\n  border-bottom-left-radius: 0;\n}\n\n.group--row > *:not(:first-child):not(:last-child) {\n  border-radius: 0;\n  margin-inline-end: -1px;\n}\n","import {\n  type AriaRole,\n  type ButtonHTMLAttributes,\n  type HTMLAttributes,\n} from 'react';\n\nimport { ButtonGroupContext } from './ButtonGroup.context';\nimport styles from './ButtonGroup.module.css';\nimport {\n  type BaseComponentPropsWithChildren,\n  type Direction,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { type ButtonSize } from '../Button/Button.types';\n\ntype PickedHTMLAttributes = Pick<\n  HTMLAttributes<HTMLDivElement>,\n  'role' | 'aria-label' | 'aria-labelledby'\n>;\n\nexport type ButtonGroupProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  {\n    /**Retning for gruppen.\n     * @default \"row\"\n     */\n    direction?: Direction;\n    /**Størrelse på knappene.\n     * @default \"medium\"\n     */\n    buttonSize?: ButtonSize;\n    /**Nativ `aria-label` ved behov. */\n    'aria-label'?: string;\n    /**Nativ `aria-labelledby` ved behov. */\n    'aria-labelledby'?: string;\n    /**Nativ `role` ved behov.\n     * @default \"group\"\n     */\n    role?: AriaRole;\n  } & Omit<ButtonHTMLAttributes<HTMLButtonElement>, keyof PickedHTMLAttributes>\n>;\n\nexport const ButtonGroup = ({\n  children,\n  id,\n  className,\n  style,\n  htmlProps,\n  direction = 'row',\n  buttonSize = 'medium',\n  role = 'group',\n  ...rest\n}: ButtonGroupProps) => (\n  <ButtonGroupContext value={{ size: buttonSize, purpose: 'secondary' }}>\n    <div\n      role={role}\n      {...getBaseHTMLProps(\n        id,\n        cn(className, styles.group, styles[`group--${direction}`]),\n        style,\n        htmlProps,\n        rest,\n      )}\n    >\n      {children}\n    </div>\n  </ButtonGroupContext>\n);\nButtonGroup.displayName = 'ButtonGroup';\n",".container {\n  border: 1px solid;\n  border-radius: var(--dds-border-radius-surface);\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      box-shadow var(--dds-motion-micro-state),\n      border-color var(--dds-motion-micro-state),\n      var(--dds-focus-transition);\n  }\n}\n\n.container--filled {\n  background-color: var(--dds-color-brand-primary-subtle);\n  border-color: var(--dds-color-brand-primary-subtle);\n  color: var(--dds-color-text-on-primary-subtle);\n}\n\n.container--border {\n  background-color: var(--dds-color-surface-default);\n  border-color: var(--dds-color-border-subtle);\n}\n\n.container--navigation:hover,\n.container--selection-control:has(\n    input:enabled:not([aria-readonly='true'])\n  ):hover {\n  border-color: var(--dds-color-border-action-hover);\n  box-shadow: inset 0 0 0 1px var(--dds-color-border-action-hover);\n}\n\n.container--selection-control {\n  padding: var(--dds-selection-control-card-padding);\n  display: block;\n  width: 100%;\n  height: 100%;\n\n  & > span {\n    left: var(--dds-selection-control-card-control-left);\n    top: var(--dds-selection-control-card-control-top);\n  }\n\n  input:disabled,\n  input[aria-readonly='true'] {\n    & ~ span {\n      background-color: var(--dds-color-surface-field-disabled);\n    }\n  }\n\n  &:has(input:checked) {\n    border-color: var(--dds-color-surface-action-selected);\n    box-shadow: inset 0 0 0 1px var(--dds-color-surface-action-selected);\n    background-color: var(--dds-color-surface-selected-default);\n  }\n\n  &:has(input[aria-invalid]) {\n    border-color: var(--dds-color-border-danger);\n    box-shadow: inset 0 0 0 1px var(--dds-color-border-danger);\n  }\n\n  &:has(input:disabled) {\n    color: var(--dds-color-text-subtle);\n  }\n  &:has(input:disabled),\n  &:has(input[aria-readonly='true']) {\n    box-shadow: none;\n    background-color: var(--dds-color-surface-selected-default);\n    background-color: var(--dds-color-surface-field-disabled);\n    border-color: var(--dds-color-surface-field-disabled);\n  }\n}\n\n.container--navigation {\n  text-decoration: none;\n  display: block;\n}\n\n.container--expandable {\n  width: 100%;\n  box-sizing: border-box;\n  & + .container--expandable {\n    border-top: none;\n  }\n}\n","import styles from './Card.module.css';\nimport { type CardProps } from './Card.types';\nimport { getBaseHTMLProps } from '../../types';\nimport { cn } from '../../utils';\nimport focusStyles from '../helpers/styling/focus.module.css';\n\nexport const Card = (props: CardProps) => {\n  const {\n    appearance = 'filled',\n    cardType,\n    cardRef,\n    id,\n    className,\n    style,\n    htmlProps,\n    ...rest\n  } = props;\n\n  const classNames = cn(\n    className,\n    styles.container,\n    styles[`container--${appearance}`],\n    cardType !== 'info' && styles[`container--${cardType}`],\n  );\n\n  if (cardType === 'navigation') {\n    const { href, target } = props;\n\n    return (\n      <a\n        {...getBaseHTMLProps(\n          id,\n          cn(classNames, focusStyles.focusable),\n          style,\n          htmlProps,\n          rest,\n        )}\n        ref={cardRef}\n        href={href}\n        target={target}\n      />\n    );\n  }\n\n  return (\n    <div\n      {...getBaseHTMLProps(id, classNames, style, htmlProps, rest)}\n      ref={cardRef}\n    />\n  );\n};\n\nCard.displayName = 'Card';\n",".container {\n  border-radius: inherit;\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition: box-shadow var(--dds-motion-micro-state);\n  }\n  &:has(.header-button:hover) {\n    box-shadow: 0 0 0 2px var(--dds-color-border-action-hover);\n  }\n}\n\n.header-button {\n  transition: var(--dds-focus-transition);\n}\n\n.header-container {\n  padding: var(--dds-card-accordion-header-container-padding);\n}\n\n.header__content {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n}\n\n.header-container__chevron {\n  margin-left: var(--dds-spacing-x0-5);\n}\n","import styles from './CardExpandable.module.css';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { cn } from '../../../utils';\nimport {\n  type AccordionConfig,\n  AccordionContextProvider,\n  useAccordion,\n} from '../../helpers/AccordionBase';\n\nexport type CardExpandableProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  Pick<AccordionConfig, 'isExpanded' | 'isInitiallyExpanded' | 'onChange'>\n>;\n\nexport const CardExpandable = ({\n  isInitiallyExpanded = false,\n  isExpanded,\n  onChange,\n  id,\n  children,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: CardExpandableProps) => {\n  const {\n    id: accordionId,\n    isExpanded: expanded,\n    toggleExpanded,\n    bodyContentRef,\n    headerProps,\n    bodyProps,\n  } = useAccordion({ isInitiallyExpanded, isExpanded, onChange, id });\n\n  return (\n    <div\n      {...getBaseHTMLProps(\n        accordionId,\n        cn(className, styles['container']),\n        style,\n        htmlProps,\n        rest,\n      )}\n    >\n      <AccordionContextProvider\n        headerProps={headerProps}\n        bodyProps={bodyProps}\n        isExpanded={expanded}\n        toggleExpanded={toggleExpanded}\n        bodyContentRef={bodyContentRef}\n      >\n        {children}\n      </AccordionContextProvider>\n    </div>\n  );\n};\n\nCardExpandable.displayName = 'CardExpandable';\n","import { type Properties, type Property } from 'csstype';\nimport { type ButtonHTMLAttributes } from 'react';\n\nimport styles from './CardExpandable.module.css';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { cn } from '../../../utils';\nimport { StylelessButton } from '../../helpers';\nimport { useAccordionContext } from '../../helpers/AccordionBase';\nimport baseStyles from '../../helpers/AccordionBase/AccordionBase.module.css';\nimport { focusable } from '../../helpers/styling/focus.module.css';\nimport { Icon } from '../../Icon';\nimport { AnimatedChevronUpDownIcon } from '../../Icon/icons/animated';\nimport { type StaticTypographyType, getTypographyCn } from '../../Typography';\nimport typographyStyles from '../../Typography/typographyStyles.module.css';\n\nexport type CardExpandableHeaderProps = Omit<\n  BaseComponentPropsWithChildren<\n    HTMLButtonElement,\n    {\n      /**Overskriver default padding. */\n      padding?: Property.Padding<string>;\n      /**Overskriver default teksttype. */\n      typographyType?: StaticTypographyType;\n      /**Angir om teksten skal være i \"bold\"-format. */\n      bold?: boolean;\n    },\n    ButtonHTMLAttributes<HTMLButtonElement>\n  >,\n  'id'\n>;\n\nexport const CardExpandableHeader = ({\n  children,\n  className,\n  style,\n  htmlProps,\n  padding,\n  typographyType = 'headingLarge',\n  bold,\n  ...rest\n}: CardExpandableHeaderProps) => {\n  const { isExpanded, headerProps } = useAccordionContext();\n\n  const containerStyleVariables: Properties = {\n    // eslint-disable-next-line @typescript-eslint/no-explicit-any\n    ['--dds-card-accordion-header-container-padding' as any]:\n      padding ??\n      'var(--dds-spacing-x1) var(--dds-spacing-x0-75) var(--dds-spacing-x1) var(--dds-spacing-x1-5)',\n  };\n\n  const { id, ...restHeaderProps } = headerProps ?? {};\n  const iconState = isExpanded ? 'up' : 'down';\n\n  return (\n    <StylelessButton\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          styles['header-button'],\n          baseStyles['header-button'],\n          focusable,\n        ),\n        style,\n        htmlProps,\n        rest,\n      )}\n      {...restHeaderProps}\n      type=\"button\"\n    >\n      <div\n        style={containerStyleVariables}\n        className={cn(\n          styles['header-container'],\n          typographyStyles[getTypographyCn(typographyType)],\n          bold && typographyStyles.bold,\n        )}\n      >\n        <div className={(baseStyles.header__content, styles.header__content)}>\n          {children}\n          <Icon\n            icon={AnimatedChevronUpDownIcon}\n            className={styles['header-container__chevron']}\n            iconState={iconState}\n          />\n        </div>\n      </div>\n    </StylelessButton>\n  );\n};\n\nCardExpandableHeader.displayName = 'CardExpandableHeader';\n","import { type Property } from 'csstype';\n\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { cn } from '../../../utils';\nimport { useAccordionContext } from '../../helpers/AccordionBase';\nimport baseStyles from '../../helpers/AccordionBase/AccordionBase.module.css';\nimport { Box } from '../../layout';\n\nexport type CardExpandableBodyProps = Omit<\n  BaseComponentPropsWithChildren<\n    HTMLDivElement,\n    {\n      /**Overskriver default padding. */\n      padding?: Property.Padding<string>;\n    }\n  >,\n  'id'\n>;\n\nexport const CardExpandableBody = ({\n  children,\n  className,\n  style,\n  htmlProps,\n  padding,\n  ...rest\n}: CardExpandableBodyProps) => {\n  const { bodyContentRef, bodyProps } = useAccordionContext();\n\n  const {\n    className: bodyContextCn,\n    id,\n    height,\n    ...restBodyProps\n  } = bodyProps ?? {};\n\n  return (\n    <Box\n      {...getBaseHTMLProps(\n        id,\n        cn(className, baseStyles.body, bodyContextCn),\n        style,\n        htmlProps,\n        rest,\n      )}\n      {...restBodyProps}\n      height={`${height}px`}\n    >\n      <Box\n        padding={\n          padding ??\n          'var(--dds-spacing-x1) calc(var(--dds-spacing-x2) + var(--dds-spacing-x0-75)) var(--dds-spacing-x2) var(--dds-spacing-x1-5)'\n        }\n        ref={bodyContentRef}\n      >\n        {children}\n      </Box>\n    </Box>\n  );\n};\n\nCardExpandableBody.displayName = 'CardExpandableBody';\n","import { useId } from 'react';\n\nimport { type CheckboxProps } from './Checkbox.types';\nimport { useCheckboxGroup } from './CheckboxGroupContext';\nimport { getBaseHTMLProps } from '../../../types';\nimport {\n  readOnlyClickHandler,\n  readOnlyKeyDownHandler,\n  spaceSeparatedIdListGenerator,\n} from '../../../utils';\nimport { HiddenInput } from '../../helpers';\nimport focusStyles from '../../helpers/styling/focus.module.css';\nimport { Typography } from '../../Typography';\nimport { Label, SelectionControl } from '../SelectionControl.styles';\nimport { selectionControlTypographyProps } from '../SelectionControl.utils';\n\nexport const Checkbox = ({\n  id,\n  name,\n  label,\n  error = false,\n  disabled,\n  readOnly,\n  indeterminate,\n  'aria-describedby': ariaDescribedby,\n  className,\n  htmlProps = {},\n  style,\n  children,\n  ...rest\n}: CheckboxProps) => {\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-checkbox`;\n  const checkboxGroup = useCheckboxGroup();\n\n  const hasLabel = !!label;\n  const hasChildren = !!children;\n\n  const isReadOnly = readOnly || checkboxGroup?.readOnly;\n  const hasError = error || checkboxGroup?.error;\n  const isDisabled = disabled || checkboxGroup?.disabled;\n\n  return (\n    <Label\n      disabled={isDisabled}\n      htmlFor={uniqueId}\n      hasText={hasLabel || hasChildren}\n      controlType=\"checkbox\"\n      className={className}\n      style={style}\n    >\n      <HiddenInput\n        {...getBaseHTMLProps(uniqueId, undefined, undefined, htmlProps, rest)}\n        name={name}\n        disabled={isDisabled}\n        aria-describedby={spaceSeparatedIdListGenerator([\n          checkboxGroup?.tipId,\n          checkboxGroup?.errorMessageId,\n          ariaDescribedby,\n        ])}\n        aria-invalid={hasError ? true : undefined}\n        aria-labelledby={checkboxGroup?.uniqueGroupId}\n        aria-checked={indeterminate ? 'mixed' : undefined}\n        aria-readonly={isReadOnly}\n        type=\"checkbox\"\n        data-indeterminate={indeterminate}\n        className={focusStyles['focusable-sibling']}\n        onKeyDown={readOnlyKeyDownHandler(\n          'selectionControl',\n          isReadOnly,\n          htmlProps.onKeyDown,\n        )}\n        onClick={readOnlyClickHandler(isReadOnly, htmlProps.onClick)}\n      />\n      <SelectionControl\n        controlType=\"checkbox\"\n        className={focusStyles['focus-styled-sibling']}\n      />\n      {hasChildren ? (\n        children\n      ) : hasLabel ? (\n        <Typography {...selectionControlTypographyProps}>{label}</Typography>\n      ) : null}\n    </Label>\n  );\n};\n\nCheckbox.displayName = 'Checkbox';\n","import { createContext, useContext } from 'react';\n\nimport { type Nullable } from '../../../types';\n\nexport interface CheckboxGroupContextProps {\n  error?: boolean;\n  errorMessageId?: string;\n  uniqueGroupId?: string;\n  tipId?: string;\n  disabled?: boolean;\n  readOnly?: boolean;\n}\n\nexport const CheckboxGroupContext =\n  createContext<Nullable<CheckboxGroupContextProps>>(null);\n\nexport const useCheckboxGroup = () => {\n  return useContext(CheckboxGroupContext);\n};\n",".container {\n  display: flex;\n  flex-direction: column;\n  gap: var(--dds-spacing-x0-125);\n}\n\n.group {\n  display: flex;\n}\n\n.group--row {\n  flex-direction: row;\n  gap: var(--dds-spacing-x0-75);\n}\n\n.group--column {\n  flex-direction: column;\n  gap: var(--dds-spacing-x0-75);\n}\n\n.label {\n  cursor: pointer;\n  -webkit-user-select: none;\n          user-select: none;\n\n  &:not(:hover)\n    input[aria-invalid]:enabled:not([aria-readonly='true']):not(\n      :focus-visible\n    ):not(:checked)\n    ~ .selection-control {\n    background-color: var(--dds-color-surface-danger-default);\n  }\n}\n\n.label:has(input:enabled) {\n  input[aria-invalid]:not([aria-readonly='true']):not(:focus-visible)\n    ~ .selection-control {\n    border-color: var(--dds-color-border-danger);\n    box-shadow: inset 0 0 0 1px var(--dds-color-border-danger);\n  }\n\n  &:hover input:not(:checked):not([aria-readonly='true']) ~ .selection-control {\n    background-color: var(--dds-color-surface-hover-default);\n    box-shadow: inset 0 0 0 1px var(--dds-color-border-action-hover);\n    border-color: var(--dds-color-border-action-hover);\n  }\n\n  input:checked ~ .selection-control,\n  input[data-indeterminate='true'] ~ .selection-control {\n    border-color: var(--dds-color-surface-action-selected);\n    background-color: var(--dds-color-surface-action-selected);\n  }\n\n  input:checked[aria-readonly='true'] ~ .selection-control,\n  input[data-indeterminate='true'][aria-readonly='true'] ~ .selection-control {\n    border-color: var(--dds-color-surface-action-selected-disabled);\n    background-color: var(--dds-color-surface-action-selected-disabled);\n  }\n\n  &:hover {\n    input:enabled:not([aria-readonly='true']) {\n      &:checked[type='checkbox'],\n      &[data-indeterminate='true'] {\n        ~ .selection-control {\n          background-color: var(--dds-color-surface-action-hover);\n          border-color: var(--dds-color-surface-action-hover);\n        }\n      }\n    }\n  }\n}\n\ninput:checked ~ .selection-control:after,\ninput[data-indeterminate='true'] ~ .selection-control:after {\n  display: block;\n}\n\n.label--checkbox {\n  .selection-control:after {\n    border: solid var(--dds-color-icon-on-action);\n    border-width: 0 1px 1px 0;\n    left: 35%;\n    top: 10%;\n    width: 30%;\n    height: 60%;\n    transform: rotate(45deg);\n  }\n\n  input[data-indeterminate='true'] ~ .selection-control:after {\n    border-width: 1px 0 0 0;\n    left: 25%;\n    top: 50%;\n    width: 50%;\n    height: 1px;\n    transform: none;\n  }\n}\n\n.label--radio {\n  .selection-control:after {\n    border-radius: var(--dds-border-radius-rounded);\n    background-color: var(--dds-color-icon-on-action);\n    height: 45%;\n    width: 45%;\n    left: 50%;\n    top: 50%;\n    transform: translate(-50%, -50%);\n  }\n}\n\n.label:has(input:disabled) {\n  cursor: not-allowed;\n  input ~ .selection-control {\n    border-color: var(--dds-color-border-subtle);\n  }\n  input:checked ~ .selection-control,\n  input[data-indeterminate='true'] ~ .selection-control {\n    border-color: var(--dds-color-surface-action-selected-disabled);\n    background-color: var(--dds-color-surface-action-selected-disabled);\n  }\n\n  .label:has(input[aria-readonly='true']) {\n    cursor: default;\n    color: var(--dds-color-text-medium);\n    input ~ .selection-control {\n      border-color: var(--dds-color-border-default);\n      background-color: var(--dds-color-surface-field-disabled);\n    }\n    input:checked ~ .selection-control,\n    input[data-indeterminate='true'] ~ .selection-control {\n      border-color: var(--dds-color-surface-action-selected-disabled);\n      background-color: var(--dds-color-surface-action-selected-disabled);\n    }\n  }\n}\n\n.label--no-text {\n  padding: 9px;\n}\n\n.selection-control {\n  position: absolute;\n  left: 0;\n  box-sizing: border-box;\n  border: 1px solid;\n  border-color: var(--dds-color-border-default);\n  background-color: var(--dds-color-surface-field-default);\n  border-radius: var(--dds-border-radius-input);\n  height: var(--dds-size-icon-component);\n  width: var(--dds-size-icon-component);\n  &:after {\n    content: '';\n    position: absolute;\n    display: none;\n    box-sizing: border-box;\n  }\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      box-shadow var(--dds-motion-micro-state),\n      background-color var(--dds-motion-micro-state),\n      border var(--dds-motion-micro-state),\n      border-color var(--dds-motion-micro-state),\n      var(--dds-focus-transition);\n  }\n}\n\n.selection-control--radio {\n  border-radius: var(--dds-border-radius-rounded);\n}\n","import { type HTMLAttributes, type LabelHTMLAttributes } from 'react';\n\nimport styles from './SelectionControl.module.css';\nimport { RequiredMarker, cn } from '../../utils';\nimport { Icon } from '../Icon';\nimport { LockIcon } from '../Icon/icons';\nimport { Box } from '../layout';\nimport { Typography } from '../Typography';\nimport labelStyles from '../Typography/Label/Label.module.css';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\ntype SelectionControlType = 'radio' | 'checkbox';\n\ntype SelectionControlProps = {\n  controlType: SelectionControlType;\n} & HTMLAttributes<HTMLSpanElement>;\n\nexport const SelectionControl = ({\n  controlType,\n  className,\n  ...rest\n}: SelectionControlProps) => (\n  <span\n    className={cn(\n      className,\n      styles['selection-control'],\n      controlType === 'radio' && styles['selection-control--radio'],\n    )}\n    {...rest}\n  />\n);\n\ntype SelectionControlLabelProps = {\n  disabled?: boolean;\n  hasText?: boolean;\n  controlType: SelectionControlType;\n} & LabelHTMLAttributes<HTMLLabelElement>;\n\nexport const Label = ({\n  disabled,\n  hasText,\n  controlType,\n  className,\n  ...rest\n}: SelectionControlLabelProps) => {\n  return (\n    <Box\n      as=\"label\"\n      position=\"relative\"\n      display=\"flex\"\n      alignItems=\"center\"\n      width=\"fit-content\"\n      paddingInline=\"calc(var(--dds-size-icon-component) + var(--dds-spacing-x0-25)) 0\"\n      className={cn(\n        className,\n        styles.label,\n        styles[`label--${controlType}`],\n        !hasText && styles['label--no-text'],\n        typographyStyles['body-short-medium'],\n        disabled && typographyStyles['text-color--subtle'],\n      )}\n      {...rest}\n    />\n  );\n};\n\ninterface SelectionControlGroupLabelProps {\n  id?: string;\n  showRequiredStyling?: boolean;\n  readOnly?: boolean;\n  label?: string;\n}\n\nexport const renderGroupLabel = ({\n  id,\n  showRequiredStyling,\n  readOnly,\n  label,\n}: SelectionControlGroupLabelProps) => {\n  const hasLabel = !!label;\n  if (hasLabel)\n    return (\n      <Typography\n        as=\"span\"\n        typographyType=\"labelMedium\"\n        id={id}\n        className={readOnly ? labelStyles['read-only'] : undefined}\n        withMargins\n      >\n        {readOnly && (\n          <Icon\n            icon={LockIcon}\n            className={labelStyles['read-only__icon']}\n            iconSize=\"small\"\n          />\n        )}\n        {label} {showRequiredStyling && <RequiredMarker />}\n      </Typography>\n    );\n  else return null;\n};\n","import { type TypographyProps } from '../Typography';\n\nexport const selectionControlTypographyProps: TypographyProps = {\n  color: 'inherit',\n  typographyType: 'bodyShortMedium',\n  as: 'span',\n};\n","import { useId } from 'react';\n\nimport {\n  CheckboxGroupContext,\n  type CheckboxGroupContextProps,\n} from './CheckboxGroupContext';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { convertBooleanishToBoolean } from '../../../types/Booleanish';\nimport { cn, derivativeIdGenerator } from '../../../utils';\nimport { renderInputMessage } from '../../InputMessage';\nimport { type SelectionControlGroupCommonProps } from '../common/SelectionControl.types';\nimport styles from '../SelectionControl.module.css';\nimport { renderGroupLabel } from '../SelectionControl.styles';\n\nexport type CheckboxGroupProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  SelectionControlGroupCommonProps & {\n    /**Indikerer at det er påkrevd å velge minst ett alternativ. Legger en markør bak ledeteksten. **OBS!** `required` må i tillegg gis til `<Checkbox>`-barna manuelt. */\n    required?: boolean;\n  }\n>;\n\nexport const CheckboxGroup = (props: CheckboxGroupProps) => {\n  const {\n    label,\n    direction = 'row',\n    errorMessage,\n    tip,\n    required = false,\n    disabled = false,\n    readOnly = false,\n    groupId,\n    children,\n    id,\n    className,\n    style,\n    htmlProps = {},\n    ...rest\n  } = props;\n\n  const { 'aria-required': ariaRequired } = htmlProps;\n\n  const generatedId = useId();\n  const uniqueGroupId = groupId ?? `${generatedId}-checkboxGroup`;\n  const hasErrorMessage = !!errorMessage;\n  const showRequiredStyling =\n    required || convertBooleanishToBoolean(ariaRequired);\n\n  const errorMessageId = derivativeIdGenerator(uniqueGroupId, 'errorMessage');\n  const tipId = derivativeIdGenerator(uniqueGroupId, 'tip');\n\n  const contextProps: CheckboxGroupContextProps = {\n    error: hasErrorMessage,\n    errorMessageId: errorMessage ? errorMessageId : undefined,\n    uniqueGroupId,\n    tipId: tip ? tipId : undefined,\n    disabled,\n    readOnly,\n  };\n\n  return (\n    <div\n      {...getBaseHTMLProps(\n        id,\n        cn(className, styles.container),\n        style,\n        { ...htmlProps, 'aria-required': ariaRequired },\n        rest,\n      )}\n    >\n      {renderGroupLabel({\n        label,\n        id: uniqueGroupId,\n        readOnly,\n        showRequiredStyling,\n      })}\n      {renderInputMessage({ tip, tipId })}\n      <CheckboxGroupContext value={{ ...contextProps }}>\n        <div\n          role=\"group\"\n          aria-labelledby={uniqueGroupId}\n          aria-describedby={tip ? tipId : undefined}\n          className={cn(styles.group, styles[`group--${direction}`])}\n        >\n          {children}\n        </div>\n      </CheckboxGroupContext>\n      {renderInputMessage({ errorMessage, errorMessageId })}\n    </div>\n  );\n};\n\nCheckboxGroup.displayName = 'CheckboxGroup';\n","export type Booleanish = boolean | 'true' | 'false';\n\nexport function convertBooleanishToBoolean(\n  value?: Booleanish,\n): boolean | undefined {\n  if (value === 'true') {\n    return true;\n  } else if (value === 'false') {\n    return false;\n  } else {\n    return value;\n  }\n}\n","import { type ElementType, type ReactNode } from 'react';\n\nimport { type BaseComponentProps, getBaseHTMLProps } from '../../types';\nimport { Icon } from '../Icon';\nimport { ErrorIcon } from '../Icon/icons';\nimport { Box, type BoxProps, Paper, type ResponsiveProps } from '../layout';\nimport { Typography } from '../Typography/Typography/Typography';\nimport tgStyles from '../Typography/typographyStyles.module.css';\n\nexport type InputMessageType = 'error' | 'tip';\n\nexport type InputMessageProps = BaseComponentProps<\n  HTMLDivElement,\n  {\n    /**Innhold. */\n    children?: ReactNode;\n    /** Formålet med meldingen. Påvirker styling.\n     * @default \"error\"\n     */\n    messageType: InputMessageType;\n  } & Pick<ResponsiveProps, 'margin' | 'marginInline' | 'marginBlock'>\n>;\n\nexport const InputMessage = ({\n  messageType,\n  id,\n  className,\n  style,\n  htmlProps,\n  children,\n  ...rest\n}: InputMessageProps) => {\n  const isError = messageType === 'error';\n\n  const commonProps: BoxProps = {\n    display: 'flex',\n    width: 'fit-content',\n    maxWidth: '100%',\n    wordBreak: 'break-word',\n    ...getBaseHTMLProps(id, className, style, htmlProps, rest),\n  };\n\n  const tgCommonProps = {\n    as: 'span' as ElementType,\n    children,\n  };\n\n  return isError ? (\n    <Paper\n      {...commonProps}\n      gap=\"x0.125\"\n      padding=\"x0.25 x0.5\"\n      background=\"surface-danger-default\"\n      borderRadius=\"surface\"\n      className={tgStyles['body-short-small']}\n    >\n      <Icon\n        icon={ErrorIcon}\n        iconSize=\"component\"\n        color=\"icon-on-danger-default\"\n      />\n      {tgCommonProps.children}\n    </Paper>\n  ) : (\n    <Box {...commonProps}>\n      <Typography\n        {...tgCommonProps}\n        typographyType=\"bodyShortXsmall\"\n        color=\"text-subtle\"\n      />\n    </Box>\n  );\n};\n\nInputMessage.displayName = 'InputMessage';\n\ninterface RenderInputMessageProps {\n  tip?: string;\n  tipId?: string;\n  errorMessage?: string;\n  errorMessageId?: string;\n  noSpacing?: boolean;\n}\n\nexport const renderInputMessage = ({\n  tip,\n  tipId,\n  errorMessage,\n  errorMessageId,\n  noSpacing,\n}: RenderInputMessageProps) => (\n  <>\n    {errorMessage && (\n      <InputMessage\n        messageType=\"error\"\n        id={errorMessageId}\n        marginBlock={!noSpacing ? 'x0.125 0' : undefined}\n      >\n        {errorMessage}\n      </InputMessage>\n    )}\n    {tip && !errorMessage && (\n      <InputMessage messageType=\"tip\" id={tipId}>\n        {tip}\n      </InputMessage>\n    )}\n  </>\n);\n","import { type ChangeEvent, useId } from 'react';\n\nimport { type RadioButtonProps, type RadioValue } from './RadioButton.types';\nimport { useRadioButtonGroup } from './RadioButtonGroupContext';\nimport { getBaseHTMLProps } from '../../../types';\nimport {\n  readOnlyChangeHandler,\n  readOnlyClickHandler,\n  readOnlyKeyDownHandler,\n} from '../../../utils';\nimport { HiddenInput } from '../../helpers';\nimport focusStyles from '../../helpers/styling/focus.module.css';\nimport { Typography } from '../../Typography';\nimport { Label, SelectionControl } from '../SelectionControl.styles';\nimport { selectionControlTypographyProps } from '../SelectionControl.utils';\n\nconst getIsChecked = ({\n  value,\n  groupValue,\n  checked,\n}: {\n  value: RadioValue;\n  groupValue: RadioValue;\n  checked: boolean | undefined;\n}): boolean => {\n  if (checked !== undefined) return checked;\n  if (typeof value !== 'undefined' && value !== null && groupValue !== null) {\n    if (typeof value === 'number') {\n      return value === Number(groupValue);\n    }\n    return value === groupValue;\n  }\n  return !!value;\n};\n\nexport const RadioButton = ({\n  id,\n  name,\n  label,\n  disabled = false,\n  readOnly = false,\n  error = false,\n  checked,\n  value,\n  children,\n  required = false,\n  onChange,\n  'aria-describedby': ariaDescribedby,\n  className,\n  htmlProps = {},\n  style,\n  ...rest\n}: RadioButtonProps) => {\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-radioButton`;\n  const hasChildren = !!children;\n  const hasLabel = !!label;\n\n  const radioButtonGroup = useRadioButtonGroup();\n\n  const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n    onChange?.(event);\n    radioButtonGroup?.onChange?.(event, event.target.value);\n  };\n\n  const describedByIds = [];\n  if (radioButtonGroup?.errorMessageId)\n    describedByIds.push(radioButtonGroup?.errorMessageId);\n  if (ariaDescribedby) describedByIds.push(ariaDescribedby);\n\n  const isReadOnly = readOnly || radioButtonGroup?.readOnly;\n  const isDisabled = disabled || radioButtonGroup?.disabled;\n  const hasError = error || radioButtonGroup?.error;\n  const isChecked = getIsChecked({\n    value,\n    groupValue: radioButtonGroup?.value,\n    checked,\n  });\n\n  return (\n    <Label\n      disabled={isDisabled}\n      style={style}\n      className={className}\n      hasText={hasLabel || hasChildren}\n      htmlFor={uniqueId}\n      controlType=\"radio\"\n    >\n      <HiddenInput\n        {...getBaseHTMLProps(uniqueId, undefined, undefined, htmlProps, rest)}\n        type=\"radio\"\n        name={name ?? radioButtonGroup?.name}\n        disabled={isDisabled}\n        required={required || !!radioButtonGroup?.required}\n        checked={isChecked}\n        onChange={readOnlyChangeHandler(isReadOnly, handleChange)}\n        value={value}\n        aria-describedby={\n          describedByIds.length > 0 ? describedByIds.join(' ') : undefined\n        }\n        aria-invalid={hasError ? true : undefined}\n        aria-readonly={isReadOnly}\n        className={focusStyles['focusable-sibling']}\n        onKeyDown={readOnlyKeyDownHandler(\n          'selectionControl',\n          isReadOnly,\n          htmlProps.onKeyDown,\n        )}\n        onClick={readOnlyClickHandler(isReadOnly, htmlProps.onClick)}\n      />\n      <SelectionControl\n        controlType=\"radio\"\n        className={focusStyles['focus-styled-sibling']}\n      />\n      {hasChildren ? (\n        children\n      ) : hasLabel ? (\n        <Typography {...selectionControlTypographyProps}>{label}</Typography>\n      ) : null}\n    </Label>\n  );\n};\n\nRadioButton.displayName = 'RadioButton';\n","import { type ChangeEvent, createContext, useContext } from 'react';\n\nimport { type RadioValue } from './RadioButton.types';\nimport { type Nullable } from '../../../types';\n\nexport interface RadioButtonGroupContextProps {\n  disabled?: boolean;\n  readOnly?: boolean;\n  name?: string;\n  value?: RadioValue;\n  defaultValue?: RadioValue;\n  error?: boolean;\n  errorMessageId?: string;\n  required?: boolean;\n  onChange?: (event: ChangeEvent<HTMLInputElement>, v: RadioValue) => void;\n}\n\nexport const RadioButtonGroupContext =\n  createContext<Nullable<RadioButtonGroupContextProps>>(null);\n\nexport const useRadioButtonGroup = () => {\n  return useContext(RadioButtonGroupContext);\n};\n","import { type ChangeEvent, type HTMLAttributes, useId } from 'react';\n\nimport {\n  RadioButtonGroupContext,\n  type RadioButtonGroupContextProps,\n} from './RadioButtonGroupContext';\nimport { useControllableGroupState } from '../../../hooks/useControllableState';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { convertBooleanishToBoolean } from '../../../types/Booleanish';\nimport { cn } from '../../../utils';\nimport { renderInputMessage } from '../../InputMessage';\nimport { type SelectionControlGroupCommonProps } from '../common/SelectionControl.types';\nimport styles from '../SelectionControl.module.css';\nimport { renderGroupLabel } from '../SelectionControl.styles';\n\nexport type RadioButtonGroupProps<T extends string | number> =\n  BaseComponentPropsWithChildren<\n    HTMLDivElement,\n    SelectionControlGroupCommonProps & {\n      /** Gir alle barna `name` prop.*/\n      name?: string;\n      /**Funksjonen for onChange-event for barna. */\n      onChange?: (\n        event: ChangeEvent<HTMLInputElement>,\n        value: T | undefined,\n      ) => void;\n      /** Gjør alle barna påkrevd ved å gi dem `required` prop. Legger en markør (*) bak ledeteksten. */\n      required?: boolean;\n      /**Verdi - en `<RadioButton>` med denne verdien blir valgt med controlled state. */\n      value?: T | undefined;\n      /**Default verdi - en `<RadioButton>` med denne verdien blir forhåndsvalgt med uncontrolled state. */\n      defaultValue?: T | undefined;\n    },\n    Omit<HTMLAttributes<HTMLDivElement>, 'onChange'>\n  >;\n\nexport const RadioButtonGroup = <T extends string | number = string>({\n  name,\n  label,\n  groupId,\n  errorMessage,\n  tip,\n  disabled = false,\n  readOnly = false,\n  direction = 'row',\n  value,\n  defaultValue,\n  children,\n  required = false,\n  onChange,\n  id,\n  className,\n  style,\n  htmlProps = {},\n  ...rest\n}: RadioButtonGroupProps<T>) => {\n  const { 'aria-required': ariaRequired = false } = htmlProps;\n\n  const generatedId = useId();\n  const uniqueGroupId = groupId ?? `${generatedId}-radioButtonGroup`;\n\n  const { groupValue, handleChange } = useControllableGroupState({\n    value,\n    defaultValue,\n    onChange,\n  });\n\n  const hasErrorMessage = !!errorMessage;\n  const showRequiredStyling =\n    required || convertBooleanishToBoolean(ariaRequired);\n\n  const tipId = tip && `${uniqueGroupId}-tip`;\n  const errorMessageId = errorMessage && `${uniqueGroupId}-errorMessage`;\n\n  const contextProps: RadioButtonGroupContextProps = {\n    name,\n    disabled,\n    defaultValue,\n    error: hasErrorMessage,\n    errorMessageId: errorMessageId,\n    required,\n    readOnly,\n    value: groupValue,\n    onChange: handleChange,\n  };\n\n  return (\n    <div\n      {...getBaseHTMLProps(\n        id,\n        cn(className, styles.container),\n        style,\n        { ...htmlProps, 'aria-required': ariaRequired },\n        rest,\n      )}\n    >\n      {renderGroupLabel({\n        label,\n        id: uniqueGroupId,\n        readOnly,\n        showRequiredStyling,\n      })}\n      {renderInputMessage({ tip, tipId })}\n      <RadioButtonGroupContext value={{ ...contextProps }}>\n        <div\n          role=\"radiogroup\"\n          aria-labelledby={uniqueGroupId}\n          aria-describedby={tipId}\n          aria-errormessage={errorMessageId}\n          className={cn(styles.group, styles[`group--${direction}`])}\n        >\n          {children}\n        </div>\n      </RadioButtonGroupContext>\n      {renderInputMessage({ errorMessage, errorMessageId })}\n    </div>\n  );\n};\n\nRadioButtonGroup.displayName = 'RadioButtonGroup';\n","import { createContext, useContext } from 'react';\n\nimport { type CardSelectableType } from '../Card.types';\n\nexport interface CardSelectableContextProps {\n  cardType: CardSelectableType;\n  tipId?: string;\n}\n\nexport const CardSelectableContext = createContext<\n  Partial<CardSelectableContextProps>\n>({});\n\nexport const useCardSelectableContext = () => useContext(CardSelectableContext);\n","import { type Properties } from 'csstype';\n\nimport { getBaseHTMLProps } from '../../../types';\nimport { cn, spaceSeparatedIdListGenerator } from '../../../utils';\nimport focusStyles from '../../helpers/styling/focus.module.css';\nimport { Checkbox } from '../../SelectionControl/Checkbox';\nimport { useCheckboxGroup } from '../../SelectionControl/Checkbox/CheckboxGroupContext';\nimport { RadioButton } from '../../SelectionControl/RadioButton';\nimport styles from '../Card.module.css';\nimport { type CardSelectableProps } from '../Card.types';\nimport { useCardSelectableContext } from './CardSelectable.context';\nimport { useRadioButtonGroup } from '../../SelectionControl/RadioButton/RadioButtonGroupContext';\n\nexport const CardSelectable = (props: CardSelectableProps) => {\n  const {\n    appearance = 'filled',\n    cardType: cardTypeProp,\n    id,\n    padding,\n    controlPlacementProps = {},\n    'aria-describedby': ariaDescribedby,\n    className,\n    htmlProps,\n    style,\n    ...rest\n  } = props;\n\n  const { left, top } = controlPlacementProps;\n\n  const radioGroup = useRadioButtonGroup();\n  const checkboxGroup = useCheckboxGroup();\n  const { cardType: cardTypeContext, tipId } = useCardSelectableContext();\n\n  const cardType = cardTypeProp ?? cardTypeContext;\n  const group = cardTypeContext === 'radio' ? radioGroup : checkboxGroup;\n\n  if (!cardType)\n    throw new Error(`\nError: <CardSelectable> requires a \\`cardType\\` prop.\nProvide \\`cardType\\` either via a parent <CardSelectableGroup> or directly on the component.`);\n\n  const {\n    disabled = group?.disabled,\n    readOnly = group?.readOnly,\n    error = group?.error,\n    name = radioGroup?.name,\n    value = radioGroup?.value,\n    required = radioGroup?.required,\n  } = { ...group, ...rest };\n\n  const classNames = cn(\n    className,\n    styles.container,\n    styles[`container--${appearance}`],\n    styles[`container--selection-control`],\n    focusStyles['has-focusable-input'],\n  );\n\n  const radioContextProps = {\n    name,\n    required,\n    value,\n  };\n\n  const customStyles: Properties = {\n    // eslint-disable-next-line @typescript-eslint/no-explicit-any\n    ['--dds-selection-control-card-padding' as any]:\n      padding ??\n      'var(--dds-spacing-x1-5) var(--dds-spacing-x1-5) var(--dds-spacing-x1-5) calc(var(--dds-size-icon-component) + var(--dds-spacing-x0-5) + var(--dds-spacing-x1-5))',\n    // eslint-disable-next-line @typescript-eslint/no-explicit-any\n    ['--dds-selection-control-card-control-top' as any]: top,\n    // eslint-disable-next-line @typescript-eslint/no-explicit-any\n    ['--dds-selection-control-card-control-left' as any]:\n      left ?? `var(--dds-spacing-x1-5)`,\n  };\n\n  const sharedProps = {\n    ...getBaseHTMLProps(\n      id,\n      classNames,\n      {\n        ...style,\n        ...customStyles,\n      },\n      htmlProps,\n      rest,\n    ),\n    disabled,\n    readOnly,\n    error,\n    'aria-describedby': spaceSeparatedIdListGenerator([tipId, ariaDescribedby]),\n  };\n\n  return cardType === 'radio' ? (\n    <RadioButton {...sharedProps} {...radioContextProps} />\n  ) : cardType === 'checkbox' ? (\n    <Checkbox {...sharedProps} />\n  ) : null;\n};\n\nCardSelectable.displayName = 'CardSelectable';\n","import { type HTMLAttributes, useId } from 'react';\n\nimport {\n  CardSelectableContext,\n  type CardSelectableContextProps,\n} from './CardSelectable.context';\nimport { useControllableGroupState } from '../../../hooks/useControllableState';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../../types';\nimport { spaceSeparatedIdListGenerator } from '../../../utils';\nimport { renderInputMessage } from '../../InputMessage';\nimport { Box, type ResponsiveProps } from '../../layout';\nimport { CheckboxGroupContext } from '../../SelectionControl/Checkbox/CheckboxGroupContext';\nimport { type SelectionControlGroupCommonProps } from '../../SelectionControl/common/SelectionControl.types';\nimport {\n  RadioButtonGroupContext,\n  type RadioButtonGroupContextProps,\n} from '../../SelectionControl/RadioButton/RadioButtonGroupContext';\nimport { type CardSelectableType } from '../Card.types';\n\nexport type CardSelectableGroupProps<T extends string | number> =\n  BaseComponentPropsWithChildren<\n    HTMLDivElement,\n    Omit<SelectionControlGroupCommonProps, 'label' | 'direction' | 'tip'> &\n      Pick<\n        ResponsiveProps,\n        | 'display'\n        | 'gap'\n        | 'padding'\n        | 'margin'\n        | 'flexDirection'\n        | 'rowGap'\n        | 'flexWrap'\n        | 'alignItems'\n        | 'columnGap'\n      > & {\n        /** Spesifiserer inputtype som returneres. */\n        cardType: CardSelectableType;\n        /**Id til valgfri hjelpetekst; Tar hånd om semantisk tilknytting og annen UU. */\n        tipId?: string;\n        /** Gir alle barna `name` prop.*/\n        name?: string;\n        /**Funksjonen for `onChange`-event for barna. */\n        onChange?: (value: T | undefined) => void;\n        /** Gjør alle barna påkrevd ved å gi dem `required` prop. */\n        required?: boolean;\n        /**Verdi - en `<CardSelectable>` med denne verdien blir valgt med controlled state. */\n        value?: T | undefined;\n        /**Default verdi - en `<CardSelectable>` med denne verdien blir forhåndsvalgt med uncontrolled state. */\n        defaultValue?: T | undefined;\n      },\n    Omit<HTMLAttributes<HTMLDivElement>, 'onChange'>\n  >;\n\nexport const CardSelectableGroup = <T extends string | number = string>({\n  name,\n  cardType,\n  errorMessage,\n  disabled,\n  readOnly,\n  value,\n  defaultValue,\n  children,\n  required,\n  onChange,\n  id,\n  tipId,\n  className,\n  style,\n  htmlProps = {},\n  ...rest\n}: CardSelectableGroupProps<T>) => {\n  const {\n    'aria-required': ariaRequired = false,\n    'aria-describedby': ariaDescribedby,\n  } = htmlProps;\n\n  const generatedId = useId();\n  const uniqueGroupId = id ?? `${generatedId}-cardSelectableGroup`;\n\n  const { groupValue, handleChange } = useControllableGroupState({\n    value,\n    defaultValue,\n    onChange: (e, v) => onChange?.(v),\n  });\n\n  const hasErrorMessage = !!errorMessage;\n  const errorMessageId = errorMessage && `${uniqueGroupId}-errorMessage`;\n\n  const contextProps: RadioButtonGroupContextProps = {\n    name,\n    disabled,\n    defaultValue,\n    error: hasErrorMessage,\n    errorMessageId: errorMessageId,\n    required,\n    readOnly,\n    value: groupValue,\n    onChange: handleChange,\n  };\n\n  const generalContextProps: CardSelectableContextProps = {\n    cardType,\n    tipId,\n  };\n\n  const mainContent = (\n    <Box\n      {...getBaseHTMLProps(\n        uniqueGroupId,\n        className,\n        style,\n        { ...htmlProps, 'aria-required': ariaRequired },\n        rest,\n      )}\n      role={cardType === 'radio' ? 'radiogroup' : 'group'}\n      aria-describedby={spaceSeparatedIdListGenerator([tipId, ariaDescribedby])}\n      aria-errormessage={errorMessageId}\n    >\n      <CardSelectableContext value={generalContextProps}>\n        {cardType === 'radio' ? (\n          <RadioButtonGroupContext value={contextProps}>\n            {children}\n          </RadioButtonGroupContext>\n        ) : cardType === 'checkbox' ? (\n          <CheckboxGroupContext value={contextProps}>\n            {children}\n          </CheckboxGroupContext>\n        ) : null}\n      </CardSelectableContext>\n    </Box>\n  );\n\n  return hasErrorMessage ? (\n    <div>\n      {mainContent}\n      {renderInputMessage({ errorMessage, errorMessageId })}\n    </div>\n  ) : (\n    mainContent\n  );\n};\n\nCardSelectableGroup.displayName = 'CardSelectableGroup';\n","import { useState } from 'react';\n\nimport { createTexts, useTranslation } from '../../i18n';\nimport { type BaseComponentProps, getBaseHTMLProps } from '../../types';\nimport { cn } from '../../utils/dom';\nimport { Button } from '../Button';\nimport { CloseIcon } from '../Icon/icons';\nimport { Bleed, Paper } from '../layout';\nimport { TextOverflowEllipsisInner } from '../Typography';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport type ChipProps = BaseComponentProps<\n  HTMLDivElement,\n  {\n    /** Teksten som vises i komponenten. */\n    children?: string;\n    /** Ekstra logikk når `<Chip>` lukkes. */\n    onClose?: () => void;\n  }\n>;\n\nexport const Chip = ({\n  children,\n  onClose,\n  id,\n  className,\n  style,\n  htmlProps = {},\n  ...rest\n}: ChipProps) => {\n  const { t } = useTranslation();\n  const { 'aria-label': ariaLabel, ...restHTMLprops } = htmlProps;\n\n  const [isOpen, setIsOpen] = useState(true);\n\n  const onClick = () => {\n    setIsOpen(false);\n    onClose?.();\n  };\n\n  return isOpen ? (\n    <Paper\n      display=\"inline-flex\"\n      alignItems=\"center\"\n      maxWidth=\"100%\"\n      gap=\"x0.125\"\n      padding=\"x0.25 0 x0.25 x0.5\"\n      borderRadius=\"chip\"\n      border=\"border-subtle\"\n      background=\"surface-subtle\"\n      {...getBaseHTMLProps(\n        id,\n        cn(className, typographyStyles['body-short-medium']),\n        style,\n        restHTMLprops,\n        rest,\n      )}\n    >\n      <TextOverflowEllipsisInner>{children}</TextOverflowEllipsisInner>\n      <Bleed\n        as={Button}\n        purpose=\"tertiary\"\n        size=\"xsmall\"\n        icon={CloseIcon}\n        onClick={onClick}\n        aria-label={\n          ariaLabel ?? t(texts.removeChip) + (children ? ` ${children}` : '')\n        }\n        bleedMarginBlock=\"x0.25\"\n        reflectivePadding\n      />\n    </Paper>\n  ) : null;\n};\n\nChip.displayName = 'Chip';\n\nconst texts = createTexts({\n  removeChip: {\n    nb: 'Fjern merkelapp',\n    no: 'Fjern merkelapp',\n    nn: 'Fjern merkelapp',\n    en: 'Remove chip',\n    se: 'Sihku lihppu',\n  },\n});\n","import { Children, type ComponentPropsWithRef } from 'react';\n\nimport { StylelessList } from '../helpers';\nimport { HStack } from '../layout';\n\nexport type ChipGroupProps = ComponentPropsWithRef<'ul'>;\n\nexport const ChipGroup = ({ children, ...rest }: ChipGroupProps) => {\n  const childrenArray = Children.toArray(children);\n\n  return (\n    <HStack as={StylelessList} {...rest} gap=\"x0.75\">\n      {childrenArray.map((item, index) => (\n        <li key={`chip-${index}`}>{item}</li>\n      ))}\n    </HStack>\n  );\n};\n\nChipGroup.displayName = 'ChipGroup';\n","import { type ReactNode, useId, useState } from 'react';\n\nimport { useCombinedRef, useFocusTrap } from '../../hooks';\nimport { createTexts, useTranslation } from '../../i18n';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { Button, type ButtonProps } from '../Button';\nimport { ExpandIcon } from '../Icon/icons';\nimport {\n  type Breakpoint,\n  HStack,\n  Paper,\n  type ResponsiveProps,\n  ShowHide,\n  VStack,\n} from '../layout';\nimport { Heading } from '../Typography';\nimport styles from './CookieBanner.module.css';\nimport {\n  CookieBannerCheckbox,\n  type CookieBannerCheckboxProps,\n} from './CookieBannerCheckbox';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\nimport { styleUpToBreakpoint } from '../layout/common/utils';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport type CookieBannerProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  {\n    /**Header - kort oppsummering. */\n    headerText?: string;\n    /**Hovedinnholdet med info rundt informasjonkapsler bruk på siden. Kan inneholde lenker og andre interaktive elementer. */\n    description?: ReactNode;\n    /**Knapper for ulike nivåer av godkjenning av informasjonskaplser. Layout for knappene håndteres ut av boksen. */\n    buttons?: Array<Omit<ButtonProps, 'purpose' | 'size'>>;\n    /**Checkboxes for hver type informasjonskapsel som brukes på siden. Layout håndteres ut av boksen. */\n    checkboxes?: Array<CookieBannerCheckboxProps>;\n    /**Brekkpunkt for sammentrukket variant; Brukes på siden med detaljer om informasjonskapsler. */\n    collapsedBreakpoint?: Breakpoint;\n  } & Pick<\n    ResponsiveProps,\n    'position' | 'top' | 'bottom' | 'left' | 'right' | 'width' | 'maxHeight'\n  >\n>;\n\nexport function CookieBanner({\n  headerText,\n  description,\n  buttons,\n  checkboxes,\n  id,\n  className,\n  style,\n  htmlProps,\n  maxHeight = 'calc(100vh - 100px)',\n  width = 'fit-content',\n  children,\n  collapsedBreakpoint,\n  ref,\n  ...rest\n}: CookieBannerProps) {\n  const { t } = useTranslation();\n  const containerRef = useFocusTrap<HTMLDivElement>(true);\n  const combinedRef = useCombinedRef(containerRef, ref);\n\n  const hasBp = !!collapsedBreakpoint;\n  const [isCollapsedOnBreakpoint, setIsCollapsedOnBreakpoint] = useState(hasBp);\n\n  const generatedId = useId();\n  const headingId =\n    headerText && (id ?? `cookie-banner-${generatedId}-heading`);\n\n  const heading = headerText ? (\n    <Heading level={2} typographyType=\"headingMedium\" id={headingId}>\n      {headerText}\n    </Heading>\n  ) : (\n    ''\n  );\n\n  return (\n    <Paper\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          styles.container,\n          utilStyles.scrollbar,\n          utilStyles['scrollable-y'],\n          typographyStyles['tertiary-medium'],\n        ),\n        style,\n        htmlProps,\n        rest,\n      )}\n      ref={combinedRef}\n      role=\"region\"\n      aria-labelledby={headingId}\n      padding={styleUpToBreakpoint('x1', 'sm', 'x1.5')}\n      width={width}\n      maxHeight={maxHeight}\n      border=\"border-default\"\n      background=\"brand-tertiary-medium\"\n      elevation=\"large\"\n    >\n      <VStack maxWidth=\"70ch\" gap=\"x1\">\n        {hasBp && isCollapsedOnBreakpoint ? (\n          <HStack alignItems=\"center\" justifyContent=\"space-between\" gap=\"x1\">\n            {heading}\n            <ShowHide\n              as={Button}\n              showBelow={collapsedBreakpoint}\n              aria-label={t(texts.expandConsent)}\n              purpose=\"tertiary\"\n              icon={ExpandIcon}\n              onClick={() => setIsCollapsedOnBreakpoint(false)}\n              aria-expanded=\"false\"\n            />\n          </HStack>\n        ) : (\n          heading\n        )}\n        <VStack\n          gap=\"x1\"\n          hideBelow={isCollapsedOnBreakpoint ? collapsedBreakpoint : undefined}\n        >\n          {children}\n          {description && <div>{description}</div>}\n          {checkboxes && (\n            <VStack gap=\"x1\">\n              {checkboxes.map((props, index) => (\n                <CookieBannerCheckbox {...props} key={index} />\n              ))}\n            </VStack>\n          )}\n          {buttons && (\n            <HStack\n              gap={styleUpToBreakpoint('x1', 'sm', 'x1.5')}\n              flexWrap=\"wrap\"\n              paddingBlock=\"x0.25 0\"\n            >\n              {buttons.map((props, i) => (\n                <Button {...props} size=\"medium\" purpose=\"secondary\" key={i} />\n              ))}\n            </HStack>\n          )}\n        </VStack>\n      </VStack>\n    </Paper>\n  );\n}\n\nCookieBanner.displayName = 'CookieBanner';\n\nconst texts = createTexts({\n  expandConsent: {\n    nb: 'Utvid samtykke for bruk av informasjonskapsler',\n    no: 'Utvid samtykke for bruk av informasjonskapsler',\n    nn: 'Utvid samtykke for bruk av informasjonskapslar',\n    en: 'Expand consent for the use of cookies',\n    se: 'Viiddit mieđáhusa diehtočoahkuid geavaheapmái',\n  },\n});\n",".container:focus-visible {\n  outline: none;\n}\n\n.checkbox-label {\n  padding: 0 0 0 calc(var(--dds-size-icon-component) + var(--dds-spacing-x0-5));\n  align-items: flex-start;\n}\n","import { getBaseHTMLProps } from '../../types';\nimport { cn } from '../../utils';\nimport { VStack } from '../layout';\nimport { Checkbox, type CheckboxProps } from '../SelectionControl/Checkbox';\nimport { Typography } from '../Typography';\nimport styles from './CookieBanner.module.css';\n\nexport type CookieBannerCheckboxProps = Omit<\n  CheckboxProps,\n  'label' | 'children'\n> & {\n  /**Header - kort oppsummering av den spesifikke typen informasjonskapsel. */\n  headerText?: string;\n  /**Detaljer rundt den spesifikke typen informasjonskapsel. */\n  description: string;\n};\n\nexport function CookieBannerCheckbox({\n  headerText,\n  description,\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: CookieBannerCheckboxProps) {\n  return (\n    <Checkbox\n      {...getBaseHTMLProps(\n        id,\n        cn(className, styles['checkbox-label']),\n        style,\n        htmlProps,\n        rest,\n      )}\n    >\n      <VStack gap=\"x0.5\">\n        <Typography as=\"span\" typographyType=\"headingSmall\">\n          {headerText}\n        </Typography>\n        <Typography as=\"span\" typographyType=\"bodyLongSmall\">\n          {description}\n        </Typography>\n      </VStack>\n    </Checkbox>\n  );\n}\n\nCookieBannerCheckbox.displayName = 'CookieBannerCheckbox';\n","import { GregorianCalendar } from '@internationalized/date';\nimport {\n  type AriaCalendarProps,\n  type DateValue,\n  useCalendar,\n} from '@react-aria/calendar';\nimport { useLocale } from '@react-aria/i18n';\nimport { useCalendarState } from '@react-stately/calendar';\nimport {\n  type KeyboardEvent,\n  type KeyboardEventHandler,\n  useContext,\n} from 'react';\n\nimport { CalendarGrid } from './CalendarGrid';\nimport { createTexts, useTranslation } from '../../../../i18n';\nimport { cn, optAttr } from '../../../../utils';\nimport { Button } from '../../../Button';\nimport utilStyles from '../../../helpers/styling/utilStyles.module.css';\nimport { ArrowLeftIcon, ArrowRightIcon } from '../../../Icon/icons';\nimport { HStack, VStack } from '../../../layout';\nimport { Heading } from '../../../Typography';\nimport styles from '../../common/DateInput.module.css';\nimport { CalendarPopoverContext } from '../CalendarPopover';\n\nfunction createCalendar(identifier: string) {\n  switch (identifier) {\n    case 'gregory':\n      return new GregorianCalendar();\n    default:\n      throw new Error(`Unsupported calendar ${identifier}`);\n  }\n}\n\nexport type CalendarProps<T extends DateValue> = AriaCalendarProps<T>;\n\nexport function Calendar<T extends DateValue>(props: CalendarProps<T>) {\n  const { t } = useTranslation();\n  const { locale } = useLocale();\n  const state = useCalendarState({\n    ...props,\n    createCalendar,\n    locale,\n  });\n  const {\n    calendarProps,\n    prevButtonProps: { onPress: onPrev },\n    nextButtonProps: { onPress: onNext },\n    title,\n  } = useCalendar(props, state);\n\n  const isPrevDisabled =\n    !!props.minValue && state.visibleRange.start.compare(props.minValue) <= 0;\n\n  const isNextDisabled =\n    !!props.maxValue && state.visibleRange.end.compare(props.maxValue) >= 0;\n  const { onClose, closeButtonRef } = useContext(CalendarPopoverContext);\n\n  const closeOnKeyboardBlurBack: KeyboardEventHandler<HTMLButtonElement> = (\n    event: KeyboardEvent<HTMLButtonElement>,\n  ) => {\n    if (event.key === 'Tab' && event.shiftKey === true) {\n      if (!closeButtonRef?.current?.checkVisibility()) {\n        onClose();\n      }\n    }\n  };\n\n  return (\n    <VStack {...calendarProps} gap=\"x0.25\" height=\"337px\">\n      <HStack justifyContent=\"space-between\" alignItems=\"center\">\n        <Button\n          aria-hidden={optAttr(isPrevDisabled)}\n          type=\"button\"\n          aria-label={t(texts.previousMonth)}\n          onClick={e => onPrev?.(e as never)}\n          size=\"small\"\n          purpose=\"tertiary\"\n          icon={ArrowLeftIcon}\n          htmlProps={{ onKeyDown: closeOnKeyboardBlurBack }}\n          className={cn(\n            styles['calendar__month-button'],\n            isPrevDisabled && utilStyles.invisible,\n          )}\n        />\n        <Heading\n          level={2}\n          typographyType=\"headingXsmall\"\n          className={styles.calendar__header__month}\n        >\n          {title}\n        </Heading>\n        <Button\n          type=\"button\"\n          aria-hidden={optAttr(isNextDisabled)}\n          aria-label={t(texts.nextMonth)}\n          onClick={e => onNext?.(e as never)}\n          size=\"small\"\n          purpose=\"tertiary\"\n          icon={ArrowRightIcon}\n          className={cn(\n            styles['calendar__month-button'],\n            isNextDisabled && utilStyles.invisible,\n          )}\n        />\n      </HStack>\n      <CalendarGrid state={state} />\n    </VStack>\n  );\n}\n\nCalendar.displayName = 'Calendar';\n\nconst texts = createTexts({\n  nextMonth: {\n    nb: 'Neste måned',\n    no: 'Neste måned',\n    nn: 'Neste månad',\n    en: 'Next month',\n    se: 'Boahte mánu',\n  },\n  previousMonth: {\n    nb: 'Forrige måned',\n    no: 'Forrige måned',\n    nn: 'Førre månad',\n    en: 'Previous month',\n    se: 'Ovddit mánu',\n  },\n});\n","import { getWeeksInMonth } from '@internationalized/date';\nimport {\n  type AriaCalendarGridProps,\n  useCalendarGrid,\n} from '@react-aria/calendar';\nimport { useLocale } from '@react-aria/i18n';\nimport {\n  type CalendarState,\n  type RangeCalendarState,\n} from '@react-stately/calendar';\nimport { useContext } from 'react';\n\nimport { CalendarCell } from './CalendarCell';\nimport { createTexts, useTranslation } from '../../../../i18n';\nimport { cn } from '../../../../utils';\nimport tgStyles from '../../../Typography/typographyStyles.module.css';\nimport { VisuallyHidden } from '../../../VisuallyHidden';\nimport styles from '../../common/DateInput.module.css';\nimport { getWeekNumber } from '../../utils/getWeekNumber';\nimport { CalendarPopoverContext } from '../CalendarPopover';\n\ninterface CalendarGridProps extends AriaCalendarGridProps {\n  state: CalendarState | RangeCalendarState;\n}\n\nexport function CalendarGrid({ state, ...props }: CalendarGridProps) {\n  const { t } = useTranslation();\n  const { locale } = useLocale();\n  const {\n    gridProps: { onKeyDown, ...gridProps },\n    headerProps,\n  } = useCalendarGrid(props, state);\n\n  // Get the number of weeks in the month so we can render the proper number of rows.\n  const weeksInMonth = getWeeksInMonth(state.visibleRange.start, locale);\n  const weekDays = [\n    { short: t(texts.mo), full: t(texts.monday) },\n    { short: t(texts.tu), full: t(texts.tuesday) },\n    { short: t(texts.we), full: t(texts.wednesday) },\n    { short: t(texts.th), full: t(texts.thursday) },\n    { short: t(texts.fr), full: t(texts.friday) },\n    { short: t(texts.sa), full: t(texts.saturday) },\n    { short: t(texts.su), full: t(texts.sunday) },\n  ];\n\n  const { showWeekNumbers, onClose } = useContext(CalendarPopoverContext);\n  const thCn = cn(\n    styles['calendar__grid-element'],\n    tgStyles['text-color--subtle'],\n    styles.calendar__th,\n  );\n  return (\n    <table\n      {...gridProps}\n      onKeyDown={e => {\n        if (\n          (e.key === 'Enter' || e.key === ' ') &&\n          state.isCellUnavailable(state.focusedDate)\n        ) {\n          return;\n        }\n\n        onKeyDown?.(e);\n      }}\n      cellPadding=\"0\"\n      className={tgStyles['body-short-xsmall']}\n    >\n      <thead {...headerProps}>\n        <tr>\n          {showWeekNumbers && (\n            <th className={cn(thCn)}>\n              <span aria-hidden>#</span>\n              <VisuallyHidden>{t(texts.weekNumber)}</VisuallyHidden>\n            </th>\n          )}\n          {weekDays.map((day, index) => (\n            <th key={index} className={thCn}>\n              <span aria-hidden>{day.short}</span>\n              <VisuallyHidden>{day.full}</VisuallyHidden>\n            </th>\n          ))}\n        </tr>\n      </thead>\n      <tbody>\n        {[...new Array(weeksInMonth).keys()].map(weekIndex => {\n          const datesInWeek = state.getDatesInWeek(weekIndex);\n          const firstExistingDay = datesInWeek.find(Boolean);\n          const weekNumber = firstExistingDay\n            ? getWeekNumber(firstExistingDay)\n            : '';\n          return (\n            <tr key={weekIndex}>\n              {showWeekNumbers && (\n                <td className={cn(thCn, styles['calendar__week-number'])}>\n                  {weekNumber}\n                </td>\n              )}\n              {datesInWeek.map((date, i) =>\n                date ? (\n                  <CalendarCell\n                    key={i}\n                    state={state}\n                    date={date}\n                    onClose={onClose}\n                  />\n                ) : (\n                  <td key={i} />\n                ),\n              )}\n            </tr>\n          );\n        })}\n      </tbody>\n    </table>\n  );\n}\n\nCalendarGrid.displayName = 'CalendarGrid';\n\nconst texts = createTexts({\n  weekNumber: {\n    nb: 'Ukenummer',\n    no: 'Ukenummer',\n    nn: 'Vekenummer',\n    en: 'Week number',\n    se: 'Vahkkonummir',\n  },\n  mo: {\n    nb: 'Ma',\n    no: 'Ma',\n    nn: 'Må',\n    en: 'Mo',\n    se: 'Vuos',\n  },\n  tu: {\n    nb: 'Ti',\n    no: 'Ti',\n    nn: 'Ty',\n    en: 'Tu',\n    se: 'Maŋ',\n  },\n  we: {\n    nb: 'On',\n    no: 'On',\n    nn: 'On',\n    en: 'We',\n    se: 'Gask',\n  },\n  th: {\n    nb: 'To',\n    no: 'To',\n    nn: 'To',\n    en: 'Th',\n    se: 'Duo',\n  },\n  fr: {\n    nb: 'Fr',\n    no: 'Fr',\n    nn: 'Fr',\n    en: 'Fr',\n    se: 'Bea',\n  },\n  sa: {\n    nb: 'Lø',\n    no: 'Lø',\n    nn: 'La',\n    en: 'Sa',\n    se: 'Láv',\n  },\n  su: {\n    nb: 'Sø',\n    no: 'Sø',\n    nn: 'Su',\n    en: 'Su',\n    se: 'Sotn',\n  },\n  monday: {\n    nb: 'Mandag',\n    no: 'Mandag',\n    nn: 'Måndag',\n    en: 'Monday',\n    se: 'Vuossárga',\n  },\n  tuesday: {\n    nb: 'Tirsdag',\n    no: 'Tirsdag',\n    nn: 'Tysdag',\n    en: 'Tuesday',\n    se: 'Maŋŋebárga',\n  },\n  wednesday: {\n    nb: 'Onsdag',\n    no: 'Onsdag',\n    nn: 'Onsdag',\n    en: 'Wednesday',\n    se: 'Gaskavahkku',\n  },\n  thursday: {\n    nb: 'Torsdag',\n    no: 'Torsdag',\n    nn: 'Torsdag',\n    en: 'Thursday',\n    se: 'Duorastat',\n  },\n  friday: {\n    nb: 'Fredag',\n    no: 'Fredag',\n    nn: 'Fredag',\n    en: 'Friday',\n    se: 'Bearjadat',\n  },\n  saturday: {\n    nb: 'Lørdag',\n    no: 'Lørdag',\n    nn: 'Laurdag',\n    en: 'Saturday',\n    se: 'Lávvardat',\n  },\n  sunday: {\n    nb: 'Søndag',\n    no: 'Søndag',\n    nn: 'Sundag',\n    en: 'Sunday',\n    se: 'Sotnabeaivi',\n  },\n});\n","import { isToday } from '@internationalized/date';\nimport {\n  type AriaCalendarCellProps,\n  useCalendarCell,\n} from '@react-aria/calendar';\nimport {\n  type CalendarState,\n  type RangeCalendarState,\n} from '@react-stately/calendar';\nimport { type KeyboardEvent, useRef } from 'react';\n\nimport { cn } from '../../../../utils';\nimport { focusable } from '../../../helpers/styling/focus.module.css';\nimport typographyStyles from '../../../Typography/typographyStyles.module.css';\nimport styles from '../../common/DateInput.module.css';\nimport { timezone } from '../constants';\n\ninterface CalendarCellProps extends AriaCalendarCellProps {\n  state: CalendarState | RangeCalendarState;\n  onClose: () => void;\n}\n\nexport function CalendarCell({ date, state, onClose }: CalendarCellProps) {\n  const ref = useRef<HTMLButtonElement>(null);\n  const {\n    buttonProps,\n    cellProps,\n    isOutsideVisibleRange,\n    formattedDate,\n    isSelected,\n    isDisabled,\n    isUnavailable,\n  } = useCalendarCell({ date }, state, ref);\n  if (isOutsideVisibleRange) {\n    return <td {...cellProps} />;\n  }\n\n  const closeOnKeyboardBlurForward = (event: KeyboardEvent) => {\n    if (event.key === 'Tab' && event.shiftKey === false) {\n      onClose();\n    }\n  };\n\n  const isEffectivelyUnavailable = isUnavailable || isDisabled;\n  const isUnavailableToday =\n    isEffectivelyUnavailable && isToday(date, timezone);\n\n  return (\n    <td {...cellProps}>\n      <button\n        {...buttonProps}\n        type=\"button\"\n        ref={ref}\n        onKeyDown={closeOnKeyboardBlurForward}\n        className={cn(\n          styles['calendar__grid-element'],\n          styles['calendar__cell-button'],\n          isToday(date, timezone) && styles['calendar__cell-button--today'],\n          styles[`calendar__cell-button--default`],\n          isSelected && styles[`calendar__cell-button--selected`],\n          isEffectivelyUnavailable &&\n            styles[`calendar__cell-button--unavailable`],\n          isUnavailableToday &&\n            styles['calendar__cell-button--unavailable--today'],\n          typographyStyles['body-short-small'],\n          focusable,\n        )}\n      >\n        {formattedDate}\n      </button>\n    </td>\n  );\n}\n\nCalendarCell.displayName = 'CalendarCell';\n",".date-group {\n  pointer-events: none;\n  label,\n  .input-group {\n    pointer-events: auto;\n  }\n}\n.date-segment-container {\n  display: flex;\n  flex-direction: row;\n  font-family: var(--dds-font-family-monospace);\n  -webkit-user-select: none;\n          user-select: none;\n}\n\n.segment {\n  font-variant-numeric: tabular-nums;\n  outline: none;\n  font-family: var(--dds-font-family-monospace);\n\n  &:focus {\n    background-color: var(--dds-color-surface-action-selected);\n    color: var(--dds-color-text-on-action);\n  }\n}\n\n.segment__placeholder {\n  display: block;\n  width: 100%;\n  font-variant-numeric: tabular-nums;\n  pointer-events: none;\n\n  .segment:focus & {\n    color: var(--dds-color-text-on-action);\n  }\n}\n\n.segment__placeholder--invisible {\n  visibility: hidden;\n  height: 0;\n  width: 0;\n}\n\n/**------------------------------------------------------------------------\n* Ikon ved siden av input\n* Gjelder både dato og tid\n*------------------------------------------------------------------------*/\n\n.icon-wrapper--disabled,\n.popover-button:disabled {\n  color: var(--dds-color-icon-subtle);\n}\n\n.icon-wrapper--readonly,\n.popover-button--readonly:disabled {\n  color: var(--dds-color-icon-medium);\n}\n\n/**------------------------------------------------------------------------\n * Kalender-popover\n *------------------------------------------------------------------------*/\n\n.popover-button {\n  padding: 3px;\n  margin-left: -3px;\n}\n\n.popover {\n  z-index: var(--dds-zindex-popover);\n}\n\n.modal-close-button-wrapper {\n  display: flex;\n  justify-content: right;\n}\n\n.calendar {\n  display: flex;\n  flex-direction: column;\n  gap: var(--dds-spacing-x0-25);\n  height: 337px;\n}\n\n.calendar__header__month {\n  text-transform: capitalize;\n}\n\n.calendar__month-button {\n  -webkit-user-select: none;\n          user-select: none;\n}\n\n.calendar__grid-element {\n  width: 40px;\n  height: 40px;\n}\n\n.calendar__th {\n  font-weight: normal;\n}\n\n.calendar__week-number {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.calendar__cell-button {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  border: 1px solid;\n  border-color: transparent;\n  border-radius: var(--dds-border-radius-button);\n  transition: var(--dds-motion-micro-state);\n}\n\n.calendar__cell-button--today {\n  text-decoration: underline;\n  border-color: var(--dds-color-border-default);\n}\n\n.calendar__cell-button--default {\n  background-color: transparent;\n  color: var(--dds-color-text-default);\n\n  &:hover {\n    background-color: var(--dds-color-surface-hover-default);\n    border-color: var(--dds-color-border-action-hover);\n    color: var(--dds-color-text-default);\n  }\n}\n\n.calendar__cell-button--unavailable,\n.calendar__cell-button--unavailable:hover {\n  background-color: var(--dds-color-surface-field-disabled);\n  border-color: var(--dds-color-surface-field-disabled);\n  color: var(--dds-color-text-subtle);\n  cursor: not-allowed;\n  text-decoration: line-through;\n}\n\n.calendar__cell-button--selected,\n.calendar__cell-button--selected:hover {\n  background-color: var(--dds-color-surface-action-selected);\n  border-color: var(--dds-color-surface-action-selected);\n  color: var(--dds-color-text-on-action);\n  font-weight: var(--dds-font-weight-bold);\n}\n\n.calendar__cell-button--unavailable--today {\n  border-color: var(--dds-color-border-default);\n  text-decoration: underline line-through;\n}\n","import { type Language } from '../../../i18n/translation.types';\n\nexport const LOCALE: Record<Language, string> = {\n  nb: 'nb-NO',\n  no: 'no-NO',\n  nn: 'nn-NO',\n  en: 'en-GB',\n  se: 'se-NO',\n} as const;\n\nexport const timezone = 'Europe/Oslo' as const;\n","import {\n  type CalendarDate,\n  type CalendarDateTime,\n  type ZonedDateTime,\n  endOfYear,\n  startOfWeek,\n  startOfYear,\n} from '@internationalized/date';\n\n/**\n * Calculates the week number following the ISO-8601 format.\n * @returns week number, 1 indexed\n */\nexport function getWeekNumber(\n  date: CalendarDate | ZonedDateTime | CalendarDateTime,\n) {\n  const dayOfWeek = getDayOfWeek(date);\n  const dayOfYear = getDayOfYear(date);\n  const jan1DayOfWeek = getDayOfWeek(startOfYear(date));\n\n  const isPartOfLastWeekOfPreviousYear =\n    dayOfYear <= 8 - jan1DayOfWeek && jan1DayOfWeek > 4;\n\n  if (isPartOfLastWeekOfPreviousYear) {\n    if (\n      jan1DayOfWeek === 5 ||\n      (jan1DayOfWeek === 6 && isLeapYear(date.subtract({ years: 1 })))\n    ) {\n      return 53;\n    }\n    return 52;\n  }\n\n  const daysInYear = getDayOfYear(endOfYear(date));\n  if (daysInYear - dayOfYear < 4 - dayOfWeek) {\n    return 1;\n  }\n\n  const weekNum = (dayOfYear + (7 - dayOfWeek) + (jan1DayOfWeek - 1)) / 7;\n  if (jan1DayOfWeek > 4) {\n    return weekNum - 1;\n  }\n\n  return weekNum;\n}\n\n/**\n * Mon = 1\n * Tue = 2\n * Wed = 3\n * Thu = 4\n * Fri = 5\n * Sat = 6\n * Sun = 7\n * @returns day of week, 1 indexed\n */\nexport function getDayOfWeek(\n  date: CalendarDate | ZonedDateTime | CalendarDateTime,\n) {\n  const weekStart = startOfWeek(date, 'no-NO');\n  return (\n    date.calendar.toJulianDay(date) -\n    weekStart.calendar.toJulianDay(weekStart) +\n    1\n  );\n}\n\n/**\n * @returns day of year, 1 indexed\n */\nexport function getDayOfYear(\n  date: CalendarDate | ZonedDateTime | CalendarDateTime,\n) {\n  const yearStart = startOfYear(date);\n  return (\n    date.calendar.toJulianDay(date) -\n    yearStart.calendar.toJulianDay(yearStart) +\n    1\n  );\n}\n\nexport function isLeapYear(\n  date: CalendarDate | ZonedDateTime | CalendarDateTime,\n) {\n  return (\n    (date.year % 4 === 0 && date.year % 100 !== 0) || date.year % 400 === 0\n  );\n}\n","import {\n  type KeyboardEvent,\n  type KeyboardEventHandler,\n  type ReactElement,\n  type ReactNode,\n  type RefObject,\n  createContext,\n  useContext,\n  useEffect,\n  useRef,\n} from 'react';\nimport { createPortal } from 'react-dom';\n\nimport {\n  useCombinedRef,\n  useFloatPosition,\n  useMountTransition,\n  useOnClickOutside,\n  useOnKeyDown,\n} from '../../../hooks';\nimport { useTranslation } from '../../../i18n';\nimport { commonTexts } from '../../../i18n/commonTexts';\nimport { cn } from '../../../utils';\nimport { Button } from '../../Button';\nimport {\n  Backdrop,\n  handleElementWithBackdropMount,\n  handleElementWithBackdropUnmount,\n} from '../../helpers';\nimport { CloseIcon } from '../../Icon/icons';\nimport { ThemeContext } from '../../ThemeProvider';\nimport styles from '../common/DateInput.module.css';\nimport { type DateField } from './DateField/DateField';\nimport { type Breakpoint, type PaperProps, ShowHide } from '../../layout';\nimport { Paper } from '../../layout';\n\n/**------------------------------------------------------------------------\n * CalendarPopover\n *------------------------------------------------------------------------*/\n\ninterface CalendarPopoverContextValue {\n  anchorRef: RefObject<HTMLDivElement | null> | null;\n  closeButtonRef: RefObject<HTMLButtonElement | null> | null;\n  isOpen: boolean;\n  onClose: () => void;\n  showWeekNumbers: boolean;\n}\n\nexport const CalendarPopoverContext =\n  createContext<CalendarPopoverContextValue>({\n    anchorRef: null,\n    closeButtonRef: null,\n    isOpen: false,\n    onClose: () => null,\n    showWeekNumbers: true,\n  });\n\ninterface CalendarPopoverProps {\n  children: ReactNode;\n  isOpen: boolean;\n  onClose: () => void;\n  showWeekNumbers: boolean;\n}\n\nexport const CalendarPopover = ({\n  children,\n  onClose,\n  ...props\n}: CalendarPopoverProps) => {\n  const anchorRef = useRef<HTMLDivElement>(null);\n  const closeButtonRef = useRef<HTMLButtonElement>(null);\n  useOnKeyDown('Escape', onClose);\n  return (\n    <CalendarPopoverContext\n      value={{ anchorRef, closeButtonRef, onClose, ...props }}\n    >\n      {children}\n    </CalendarPopoverContext>\n  );\n};\n\n/**------------------------------------------------------------------------\n * CalendarPopoverAnchor\n *------------------------------------------------------------------------*/\n\ninterface CalendarPopoverAnchorProps {\n  children: ReactElement<typeof DateField>;\n}\n\nexport const CalendarPopoverAnchor = ({\n  children,\n}: CalendarPopoverAnchorProps) => {\n  const { anchorRef } = useContext(CalendarPopoverContext);\n  return <div ref={anchorRef ?? undefined}>{children}</div>;\n};\n\n/**------------------------------------------------------------------------\n * CalendarPopoverContent\n *------------------------------------------------------------------------*/\n\ninterface CalendarPopoverContentProps {\n  children: ReactNode;\n  className?: string;\n  smallScreenBreakpoint?: Breakpoint;\n}\n\nexport const CalendarPopoverContent = ({\n  children,\n  className,\n  smallScreenBreakpoint,\n}: CalendarPopoverContentProps) => {\n  const ref = useRef<HTMLDivElement>(null);\n  const modalRef = useRef<HTMLDivElement>(null);\n  const { refs, styles: floatingStyles } = useFloatPosition(null, {\n    placement: 'bottom-start',\n  });\n\n  const themeContext = useContext(ThemeContext);\n\n  if (!themeContext) {\n    throw new Error('DatePicker must be used within a DdsProvider');\n  }\n\n  const portalTarget = themeContext.el;\n  const { t } = useTranslation();\n  const { isOpen, onClose, anchorRef, closeButtonRef } = useContext(\n    CalendarPopoverContext,\n  );\n  const hasTransitionedIn = useMountTransition(isOpen, 500);\n  const isMounted = isOpen && hasTransitionedIn;\n  const combinedRef = useCombinedRef(refs.setFloating, ref);\n\n  useOnClickOutside([ref, modalRef], onClose);\n\n  useEffect(() => {\n    refs.setReference(anchorRef?.current ?? null);\n  }, []);\n\n  const hasBreakpoint = !!smallScreenBreakpoint;\n\n  useEffect(() => {\n    if (hasBreakpoint && modalRef.current?.checkVisibility()) {\n      if (isOpen) {\n        handleElementWithBackdropMount(document.body);\n      } else {\n        handleElementWithBackdropUnmount(document.body);\n      }\n\n      return () => handleElementWithBackdropUnmount(document.body);\n    }\n  }, [isOpen, hasBreakpoint]);\n\n  const closeOnKeyboardBlurBack: KeyboardEventHandler<HTMLButtonElement> = (\n    event: KeyboardEvent<HTMLButtonElement>,\n  ) => {\n    if (event.key === 'Tab' && event.shiftKey === true) {\n      onClose();\n    }\n  };\n\n  if (!isOpen) return null;\n\n  const paperStyleProps: PaperProps = {\n    elevation: 'medium',\n    border: 'border-default',\n    padding: 'x0.75',\n  };\n\n  return (\n    <>\n      {portalTarget &&\n        hasBreakpoint &&\n        createPortal(\n          <ShowHide showBelow={smallScreenBreakpoint}>\n            <Backdrop zIndex=\"modal\" isMounted={isMounted}>\n              <Paper\n                ref={modalRef}\n                className={cn(styles.popover, className)}\n                {...paperStyleProps}\n              >\n                <div className={styles['modal-close-button-wrapper']}>\n                  <Button\n                    ref={closeButtonRef}\n                    icon={CloseIcon}\n                    size=\"small\"\n                    purpose=\"tertiary\"\n                    aria-label={t(commonTexts.close)}\n                    onClick={onClose}\n                    htmlProps={{ onKeyDown: closeOnKeyboardBlurBack }}\n                  />\n                </div>\n                {children}\n              </Paper>\n            </Backdrop>\n          </ShowHide>,\n          portalTarget,\n        )}\n      <Paper\n        ref={combinedRef}\n        hideBelow={hasBreakpoint ? smallScreenBreakpoint : undefined}\n        className={cn(styles.popover, className)}\n        style={floatingStyles.floating}\n        {...paperStyleProps}\n      >\n        {children}\n      </Paper>\n    </>\n  );\n};\n","import { type CalendarDate } from '@internationalized/date';\nimport { useDatePicker } from '@react-aria/datepicker';\nimport { I18nProvider } from '@react-aria/i18n';\nimport { useDatePickerState } from '@react-stately/datepicker';\nimport type { AriaDatePickerProps } from '@react-types/datepicker';\nimport { type Ref, useId, useRef } from 'react';\n\nimport { Calendar } from './Calendar/Calendar';\nimport {\n  CalendarPopover,\n  CalendarPopoverAnchor,\n  CalendarPopoverContent,\n} from './CalendarPopover';\nimport { LOCALE } from './constants';\nimport { DateField, type DateFieldProps } from './DateField/DateField';\nimport { useCombinedRef } from '../../../hooks';\nimport { useLanguage } from '../../../i18n';\nimport { type Breakpoint } from '../../layout';\nimport { type ResponsiveProps } from '../../layout/common/Responsive.types';\nimport {\n  type FocusableRef,\n  useFocusManagerRef,\n} from '../utils/useFocusManagerRef';\n\nexport interface DatePickerProps\n  extends\n    Omit<AriaDatePickerProps<CalendarDate>, 'granularity'>,\n    Pick<DateFieldProps<CalendarDate>, 'componentSize' | 'tip' | 'style'>,\n    Pick<ResponsiveProps, 'width'> {\n  ref?: Ref<HTMLElement>;\n  /**\n   * Ledetekst.\n   */\n  label?: string;\n  /**\n   * Feilmelding.\n   */\n  errorMessage?: string;\n  /**Om ukenummer skal vises.\n   * @default true\n   */\n  showWeekNumbers?: boolean;\n  /**\n   * Brekkpunkt for små skjermer; viser kalender i modal.\n   */\n  smallScreenBreakpoint?: Breakpoint;\n  /**\n   * Om brukeren kan fjerne valgt dato med en tømmeknapp, inkludert delvis utfylte verdier (f.eks. kun måned).\n   * @default false\n   */\n  clearable?: boolean;\n}\n\nconst refIsFocusable = (ref: Ref<unknown>): ref is FocusableRef => {\n  return typeof ref === 'object' && ref !== null && 'focus' in ref;\n};\n\nexport function DatePicker({\n  errorMessage,\n  componentSize,\n  tip,\n  style,\n  width,\n  smallScreenBreakpoint,\n  showWeekNumbers = true,\n  clearable = false,\n  ref,\n  ...props\n}: DatePickerProps) {\n  const lang = useLanguage();\n\n  if (!lang) {\n    throw new Error('DatePicker must be used within a DdsProvider');\n  }\n\n  const state = useDatePickerState(props);\n  const domRef = useFocusManagerRef(ref && refIsFocusable(ref) ? ref : null);\n  const internalRef = useRef<HTMLElement>(null);\n  const combinedRef = useCombinedRef(internalRef, domRef);\n  const { buttonProps, calendarProps, fieldProps, groupProps } = useDatePicker(\n    { ...props, granularity: 'day' },\n    state,\n    internalRef,\n  );\n  const hasErrorMessage = !!errorMessage;\n  const hasTip = !!tip;\n  const uniqueId = props.id ?? useId();\n  const errorMessageId = hasErrorMessage\n    ? `${uniqueId}-errorMessage`\n    : undefined;\n  const tipId = hasTip ? `${uniqueId}-tip` : undefined;\n  return (\n    <I18nProvider locale={LOCALE[lang]}>\n      <CalendarPopover\n        isOpen={state.isOpen}\n        onClose={state.close}\n        showWeekNumbers={showWeekNumbers}\n      >\n        <CalendarPopoverAnchor>\n          <DateField\n            {...fieldProps}\n            groupProps={groupProps}\n            ref={combinedRef}\n            componentSize={componentSize}\n            tip={tip}\n            id={uniqueId}\n            label={props.label}\n            errorMessage={errorMessage}\n            errorMessageId={errorMessageId}\n            tipId={tipId}\n            buttonProps={buttonProps}\n            style={style}\n            width={width}\n            clearable={clearable}\n          />\n        </CalendarPopoverAnchor>\n        <CalendarPopoverContent smallScreenBreakpoint={smallScreenBreakpoint}>\n          <Calendar {...calendarProps} />\n        </CalendarPopoverContent>\n      </CalendarPopover>\n    </I18nProvider>\n  );\n}\n\nDatePicker.displayName = 'DatePicker';\n","import {\n  type CalendarDate,\n  type DateValue,\n  createCalendar,\n} from '@internationalized/date';\nimport {\n  type AriaDateFieldOptions,\n  useDateField,\n  type useDatePicker,\n} from '@react-aria/datepicker';\nimport { useLocale } from '@react-aria/i18n';\nimport { useDateFieldState } from '@react-stately/datepicker';\nimport { type Ref, useRef } from 'react';\n\nimport { CalendarButton } from './CalendarButton';\nimport { formatDateFieldSegments } from './DateField.utils';\nimport { DateSegment } from './DateSegment';\nimport { createTexts, useTranslation } from '../../../../i18n';\nimport { cn } from '../../../../utils';\nimport { ClearButton } from '../../../helpers/ClearButton';\nimport { type InputProps } from '../../../helpers/Input';\nimport utilStyles from '../../../helpers/styling/utilStyles.module.css';\nimport { DateInput } from '../../common/DateInput';\n\nexport type DateFieldProps<T extends DateValue = CalendarDate> =\n  AriaDateFieldOptions<T> & {\n    buttonProps?: ReturnType<typeof useDatePicker>['buttonProps'];\n    buttonOnClick?: () => void;\n    groupProps?: ReturnType<typeof useDatePicker>['groupProps'];\n    ref?: Ref<HTMLDivElement>;\n    clearable?: boolean;\n    tipId?: string;\n    errorMessageId?: string;\n  } & Pick<\n      InputProps,\n      | 'componentSize'\n      | 'errorMessage'\n      | 'tip'\n      | 'disabled'\n      | 'style'\n      | 'width'\n      | 'className'\n    >;\n\nexport function DateField({\n  componentSize = 'medium',\n  buttonProps,\n  groupProps,\n  ref,\n  clearable,\n  errorMessageId,\n  tipId,\n  ...props\n}: DateFieldProps) {\n  const { locale } = useLocale();\n  const { t } = useTranslation();\n  const state = useDateFieldState({\n    ...props,\n    locale,\n    createCalendar,\n  });\n\n  const internalRef = useRef<HTMLInputElement>(null);\n  const { labelProps, fieldProps } = useDateField(props, state, internalRef);\n\n  const disabled = props.isDisabled || !!fieldProps['aria-disabled'];\n  const showClearButton = clearable && !disabled && !props.isReadOnly;\n\n  const hasPartialValue = state.segments.some(\n    segment =>\n      segment.type !== 'literal' && segment.placeholder !== segment.text,\n  );\n  const hasValue = !!state.value || hasPartialValue;\n  const clearDate = () => {\n    state.setValue(null);\n  };\n\n  const formattedSegments = formatDateFieldSegments(state.segments);\n\n  return (\n    <DateInput\n      {...props}\n      groupProps={groupProps}\n      componentSize={componentSize}\n      label={props.label}\n      disabled={disabled}\n      required={props.isRequired}\n      clearable={clearable}\n      ref={ref}\n      tipId={tipId}\n      errorMessageId={errorMessageId}\n      internalRef={internalRef}\n      readOnly={props.isReadOnly}\n      prefix={\n        <CalendarButton\n          componentSize={componentSize}\n          {...buttonProps}\n          isReadOnly={props.isReadOnly}\n          isDisabled={disabled || props.isReadOnly}\n        />\n      }\n      suffix={\n        showClearButton && (\n          <ClearButton\n            absolute\n            aria-label={t(texts.clearDate)}\n            aria-hidden={!hasValue}\n            className={cn(!hasValue && utilStyles.invisible)}\n            size={componentSize}\n            onClick={clearDate}\n          />\n        )\n      }\n      labelProps={labelProps}\n      fieldProps={fieldProps}\n    >\n      {formattedSegments.map((segment, i) => (\n        <DateSegment\n          aria-readonly={props.isReadOnly}\n          componentSize={componentSize}\n          errorMessageId={errorMessageId}\n          tipId={tipId}\n          key={i}\n          segment={segment}\n          state={state}\n        />\n      ))}\n    </DateInput>\n  );\n}\n\nDateField.displayName = 'DateField';\n\nconst texts = createTexts({\n  clearDate: {\n    en: 'Clear date',\n    nb: 'Tøm dato',\n    no: 'Tøm dato',\n    nn: 'Tøm dato',\n    se: 'Gurre dáhtona',\n  },\n});\n","import { type AriaButtonProps, useButton } from '@react-aria/button';\nimport { useRef } from 'react';\n\nimport type { DateFieldProps } from './DateField';\nimport { cn } from '../../../../utils';\nimport { InlineIconButton } from '../../../helpers/InlineIconButton';\nimport inputStyles from '../../../helpers/Input/Input.module.css';\nimport { focusable } from '../../../helpers/styling/focus.module.css';\nimport { CalendarIcon } from '../../../Icon/icons';\nimport styles from '../../common/DateInput.module.css';\n\ninterface CalendarButtonProps extends AriaButtonProps {\n  componentSize: DateFieldProps['componentSize'];\n  isReadOnly?: DateFieldProps['isReadOnly'];\n}\n\nexport function CalendarButton({\n  componentSize = 'medium',\n  isReadOnly,\n  ...props\n}: CalendarButtonProps) {\n  const ref = useRef<HTMLButtonElement>(null);\n  const { buttonProps } = useButton(props, ref);\n\n  return (\n    <InlineIconButton\n      {...buttonProps}\n      ref={ref}\n      type=\"button\"\n      className={cn(\n        buttonProps.className,\n        styles['popover-button'],\n        isReadOnly && styles['popover-button--readonly'],\n        !props.isDisabled && focusable,\n        inputStyles['input-group__absolute-el'],\n        inputStyles[`input-group__absolute-el--${componentSize}`],\n      )}\n      icon={CalendarIcon}\n      size=\"component\"\n    />\n  );\n}\n",".button {\n  display: inline-flex;\n  border-radius: var(--dds-border-radius-button);\n  color: var(--dds-color-icon-default);\n\n  &:hover:not(:disabled) {\n    background-color: var(--dds-color-surface-hover-default);\n    color: var(--dds-color-icon-action-hover);\n  }\n  &:not(:focus-visible) {\n    outline: none;\n  }\n\n  &:disabled {\n    cursor: not-allowed;\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      background-color var(--dds-motion-micro-state),\n      color var(--dds-motion-micro-state),\n      var(--dds-focus-transition);\n  }\n}\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './InlineIconButton.module.css';\nimport { type ExtractStrict } from '../../../types';\nimport { type TextColor, cn } from '../../../utils';\nimport { type ButtonProps, type ButtonSize } from '../../Button';\nimport { Icon } from '../../Icon';\nimport { StylelessButton } from '../StylelessButton';\nimport { focusable } from '../styling/focus.module.css';\n\nexport type InlineIconButtonProps = Required<Pick<ButtonProps, 'icon'>> &\n  ComponentPropsWithRef<'button'> & {\n    size: ExtractStrict<ButtonSize, 'large' | 'medium' | 'small'> | 'component';\n    color?: TextColor;\n  };\n\nexport const InlineIconButton = ({\n  className,\n  size,\n  icon,\n  color,\n  ...rest\n}: InlineIconButtonProps) => (\n  <StylelessButton\n    className={cn(className, styles.button, focusable)}\n    {...rest}\n  >\n    <Icon icon={icon} iconSize={size} color={color} />\n  </StylelessButton>\n);\n\nInlineIconButton.displayName = 'InlineIconButton';\n",".container {\n  position: relative;\n}\n\n.input-group {\n  position: relative;\n  --dds-input-absolute-el-left-xsmall: var(--dds-spacing-x0-25);\n  --dds-input-absolute-el-left-small: var(--dds-spacing-x0-5);\n  --dds-input-absolute-el-left-medium: var(--dds-spacing-x0-75);\n  --dds-input-absolute-el-left-large: var(--dds-spacing-x0-75);\n  --dds-input-btn-right: var(--dds-spacing-x0-25);\n  --dds-input-btn-right-padding-xsmall: var(--dds-spacing-x0-125);\n  --dds-input-btn-right-padding-small: var(--dds-spacing-x0-25);\n  --dds-input-btn-right-padding-medium: var(--dds-spacing-x0-5);\n  --dds-input-btn-right-padding-large: var(--dds-spacing-x0-75);\n  --dds-input-absolute-el-right-xsmall: var(--dds-spacing-x0-25);\n  --dds-input-absolute-el-right-small: var(--dds-spacing-x0-5);\n  --dds-input-absolute-el-right-medium: var(--dds-spacing-x0-75);\n  --dds-input-absolute-el-right-large: var(--dds-spacing-x0-75);\n\n  & > svg {\n    pointer-events: none;\n  }\n}\n\n:where(.input) {\n  position: relative;\n  color: var(--dds-color-text-default);\n  border: 1px solid var(--dds-color-border-default);\n  background-color: var(--dds-color-surface-default);\n  padding: var(--dds-spacing-x0-75) var(--dds-spacing-x1)\n    var(--dds-spacing-x0-75) var(--dds-spacing-x0-75);\n  border-radius: var(--dds-border-radius-input);\n  margin: 0;\n  box-sizing: border-box;\n  box-shadow: none;\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      box-shadow var(--dds-motion-micro-state),\n      border-color var(--dds-motion-micro-state),\n      background-color var(--dds-motion-micro-state),\n      var(--dds-focus-transition);\n  }\n  &[type='text'],\n  &[type='password'],\n  &[type='number'],\n  &[type='tel'],\n  &[type='date'],\n  &[type='url'],\n  &[type='email'],\n  &[type='search'],\n  &[type='datetime-local'] {\n    -webkit-appearance: none;\n  }\n\n  &:hover:enabled:read-write:not(:focus-visible):not(.disabled):not(\n      .read-only\n    ) {\n    border-color: var(--dds-color-border-action-hover);\n    box-shadow: 0 0 0 1px var(--dds-color-border-action-hover);\n  }\n}\n\n:where(.input--stateful) {\n  -webkit-appearance: textfield;\n\n  &:not(.disabled).read-only,\n  &:enabled:read-only {\n    box-shadow: none;\n    border: 1px solid var(--dds-color-border-default);\n    background-color: var(--dds-color-surface-field-disabled);\n    color: var(--dds-color-text-medium);\n    cursor: default;\n  }\n\n  &.disabled,\n  &:disabled {\n    box-shadow: none;\n    border: 1px solid var(--dds-color-border-subtle);\n    background-color: var(--dds-color-surface-field-disabled);\n    color: var(--dds-color-text-subtle);\n    cursor: not-allowed;\n  }\n}\n\n:where(.input--hover:hover) {\n  border-color: var(--dds-color-border-action-hover);\n  box-shadow: 0 0 0 1px var(--dds-color-border-action-hover);\n}\n\n:where(.input--stateful-danger) {\n  border-color: var(--dds-color-border-danger);\n  box-shadow: 0 0 0 1px var(--dds-color-border-danger);\n\n  &:not(.disabled):hover:not(:focus-within),\n  &:hover:enabled:read-write:not(:focus-within) {\n    border-color: var(--dds-color-border-danger);\n    box-shadow: 0 0 0 1px var(--dds-color-border-danger);\n  }\n\n  &:not(.disabled):focus-within,\n  &:focus-within:enabled:read-write,\n  &:hover:focus-within:enabled:read-write,\n  &:active:enabled:read-write {\n    border-color: 1px solid var(--dds-color-border-default);\n  }\n}\n\n:where(.input--large) {\n  padding: var(--dds-spacing-x0-75);\n  min-height: var(--dds-size-height-input-large);\n}\n\n:where(.input--medium) {\n  padding: var(--dds-spacing-x0-5) var(--dds-spacing-x0-75);\n  min-height: var(--dds-size-height-input-medium);\n}\n\n:where(.input--small) {\n  padding: var(--dds-spacing-x0-25) var(--dds-spacing-x0-5);\n  min-height: var(--dds-size-height-input-small);\n}\n\n:where(.input--xsmall) {\n  padding: var(--dds-spacing-x0-125) var(--dds-spacing-x0-25);\n  min-height: var(--dds-size-height-input-xsmall);\n}\n\n:where(.input-with-icon--large) {\n  padding-left: calc(\n    var(--dds-input-absolute-el-left-large) + var(--dds-size-icon-component) +\n      var(--dds-spacing-lg-icon-text-gap)\n  );\n}\n\n:where(.input-with-icon--medium) {\n  padding-left: calc(\n    var(--dds-input-absolute-el-left-medium) + var(--dds-size-icon-component) +\n      var(--dds-spacing-md-icon-text-gap)\n  );\n}\n\n:where(.input-with-icon--small) {\n  padding-left: calc(\n    var(--dds-input-absolute-el-left-small) + var(--dds-size-icon-component) +\n      var(--dds-spacing-sm-icon-text-gap)\n  );\n}\n\n:where(.input-with-icon--xsmall) {\n  padding-left: calc(\n    var(--dds-input-absolute-el-left-xsmall) + var(--dds-size-icon-component) +\n      var(--dds-spacing-xs-icon-text-gap)\n  );\n}\n\n:where(.input-with-el-right--large) {\n  padding-inline-end: calc(\n    var(--dds-input-absolute-el-right-large) + var(--dds-size-icon-component)\n  );\n}\n\n:where(.input-with-el-right--medium) {\n  padding-inline-end: calc(\n    var(--dds-input-absolute-el-right-medium) + var(--dds-size-icon-component)\n  );\n}\n\n:where(.input-with-el-right--small) {\n  padding-inline-end: calc(\n    var(--dds-input-absolute-el-right-small) + var(--dds-size-icon-component)\n  );\n}\n\n:where(.input-with-el-right--xsmall) {\n  padding-inline-end: calc(\n    var(--dds-input-absolute-el-right-xsmall) + var(--dds-size-icon-component)\n  );\n}\n\n:where(.input-with-btn-right--large) {\n  padding-inline-end: calc(\n    var(--dds-input-btn-right) + var(--dds-size-icon-component) + 2 *\n      var(--dds-input-btn-right-padding-large)\n  );\n}\n\n:where(.input-with-btn-right--medium) {\n  padding-inline-end: calc(\n    var(--dds-input-btn-right) + var(--dds-size-icon-component) + 2 *\n      var(--dds-input-btn-right-padding-medium)\n  );\n}\n\n:where(.input-with-btn-right--small) {\n  padding-inline-end: calc(\n    var(--dds-input-btn-right) + var(--dds-size-icon-component) + 2 *\n      var(--dds-input-btn-right-padding-small)\n  );\n}\n\n:where(.input-with-btn-right--xsmall) {\n  padding-inline-end: calc(\n    var(--dds-input-btn-right) + var(--dds-size-icon-component) + 2 *\n      var(--dds-input-btn-right-padding-xsmall)\n  );\n}\n\n:where(.input-with-icon-and-button-right--large) {\n  padding-inline-end: calc(\n    var(--dds-input-absolute-el-right-large) + 2 *\n      var(--dds-size-icon-component) + 2 *\n      var(--dds-input-btn-right-padding-large)\n  );\n}\n\n:where(.input-with-icon-and-button-right--medium) {\n  padding-inline-end: calc(\n    var(--dds-input-absolute-el-right-medium) + 2 *\n      var(--dds-size-icon-component) + 2 *\n      var(--dds-input-btn-right-padding-medium)\n  );\n}\n\n:where(.input-with-icon-and-button-right--small) {\n  padding-inline-end: calc(\n    var(--dds-input-absolute-el-right-small) + 2 *\n      var(--dds-size-icon-component) + 2 *\n      var(--dds-input-btn-right-padding-small)\n  );\n}\n\n:where(.input-with-icon-and-button-right--xsmall) {\n  padding-inline-end: calc(\n    var(--dds-input-absolute-el-right-xsmall) + 2 *\n      var(--dds-size-icon-component) + 2 *\n      var(--dds-input-btn-right-padding-xsmall)\n  );\n}\n\n:where(.input-group__absolute-el-right--large) {\n  right: var(--dds-input-absolute-el-left-large);\n}\n\n:where(.input-group__absolute-el-right--medium) {\n  right: var(--dds-input-absolute-el-left-medium);\n}\n\n:where(.input-group__absolute-el-right--small) {\n  right: var(--dds-input-absolute-el-left-small);\n}\n\n:where(.input-group__absolute-el-right--xsmall) {\n  right: var(--dds-input-absolute-el-left-xsmall);\n}\n\n:where(.input-group__btn-right) {\n  right: var(--dds-input-btn-right);\n}\n\n:where(.input-group__btn-right-with-right-icon--xsmall) {\n  right: calc(\n    var(--dds-input-absolute-el-right-xsmall) + var(--dds-size-icon-component)\n  );\n}\n\n:where(.input-group__btn-right-with-right-icon--small) {\n  right: calc(\n    var(--dds-input-absolute-el-right-small) + var(--dds-size-icon-component)\n  );\n}\n\n:where(.input-group__btn-right-with-right-icon--medium) {\n  right: calc(\n    var(--dds-input-absolute-el-right-medium) + var(--dds-size-icon-component)\n  );\n}\n\n:where(.input-group__btn-right-with-right-icon--large) {\n  right: calc(\n    var(--dds-input-absolute-el-right-large) + var(--dds-size-icon-component)\n  );\n}\n\n:where(.input--with-affix) {\n  gap: var(--dds-spacing-x1);\n}\n\n:where(.input-group__absolute-el) {\n  position: absolute;\n  top: 50%;\n  transform: translateY(-50%);\n  z-index: var(--dds-zindex-absolute-element);\n  color: var(--dds-color-icon-default);\n}\n\n:where(.input-group__absolute-el--large) {\n  left: var(--dds-input-absolute-el-left-large);\n}\n\n:where(.input-group__absolute-el--medium) {\n  left: var(--dds-input-absolute-el-left-medium);\n}\n\n:where(.input-group__absolute-el--small) {\n  left: var(--dds-input-absolute-el-left-small);\n}\n\n:where(.input-group__absolute-el--xsmall) {\n  left: var(--dds-input-absolute-el-left-xsmall);\n}\n","import { type DateSegment } from '@react-stately/datepicker';\n\nimport { useTranslation } from '../../../../i18n';\nimport { createTexts } from '../../../../i18n';\n\n// Formaterer dato-segmenter til norsk locale\nexport function formatDateFieldSegments(\n  segments: Array<DateSegment>,\n): Array<DateSegment> {\n  const { t } = useTranslation();\n  const daySegment = segments.find(segment => segment.type === 'day');\n  const monthSegment = segments.find(segment => segment.type === 'month');\n  const yearSegment = segments.find(segment => segment.type === 'year');\n  const separatorSegment = segments.find(segment => segment.type === 'literal');\n\n  if (!daySegment || !monthSegment || !yearSegment || !separatorSegment) {\n    throw new Error('Invalid date field segments');\n  }\n\n  const formattedDaySegment = {\n    ...daySegment,\n    text: daySegment.text.padStart(2, '0'),\n    placeholder: t(texts.dayPlaceholder),\n  };\n\n  const formattedMonthSegment = {\n    ...monthSegment,\n    text: monthSegment.text.padStart(2, '0'),\n    placeholder: t(texts.monthPlaceholder),\n  };\n\n  const formattedYearSegment = {\n    ...yearSegment,\n    placeholder: t(texts.yearPlaceholder),\n  };\n\n  const formattedSeparatorSegment = { ...separatorSegment, text: '.' };\n\n  return [\n    formattedDaySegment,\n    formattedSeparatorSegment,\n    formattedMonthSegment,\n    formattedSeparatorSegment,\n    formattedYearSegment,\n  ];\n}\n\nexport const texts = createTexts({\n  dayPlaceholder: {\n    nb: 'dd',\n    no: 'dd',\n    nn: 'dd',\n    en: 'dd',\n    se: 'jj',\n  },\n  monthPlaceholder: {\n    nb: 'mm',\n    no: 'mm',\n    nn: 'mm',\n    en: 'mm',\n    se: 'mm',\n  },\n  yearPlaceholder: {\n    nb: 'åååå',\n    no: 'åååå',\n    nn: 'åååå',\n    en: 'yyyy',\n    se: 'jjjj',\n  },\n});\n","import { useDateSegment } from '@react-aria/datepicker';\nimport type {\n  DateFieldState,\n  DateSegment as DateSegmentType,\n} from '@react-stately/datepicker';\nimport { useRef } from 'react';\n\nimport { cn, spaceSeparatedIdListGenerator } from '../../../../utils';\nimport { Box } from '../../../layout';\nimport typographyStyles from '../../../Typography/typographyStyles.module.css';\nimport styles from '../../common/DateInput.module.css';\nimport { type DatePickerProps } from '../DatePicker';\n\ninterface DateSegmentProps extends Pick<\n  Required<DatePickerProps>,\n  'componentSize'\n> {\n  segment: DateSegmentType;\n  state: DateFieldState;\n  errorMessageId?: string;\n  tipId?: string;\n}\n\nexport function DateSegment({\n  segment,\n  state,\n  componentSize,\n  errorMessageId,\n  tipId,\n}: DateSegmentProps) {\n  const ref = useRef<HTMLDivElement>(null);\n  const { segmentProps } = useDateSegment(segment, state, ref);\n  return (\n    <Box\n      {...segmentProps}\n      padding=\"0 0.05rem\"\n      width=\"max-content\"\n      height=\"max-content\"\n      marginBlock=\"auto\"\n      aria-describedby={spaceSeparatedIdListGenerator([\n        errorMessageId ? errorMessageId : undefined,\n        tipId ? tipId : undefined,\n      ])}\n      ref={ref}\n      className={cn(\n        segmentProps.className,\n        styles.segment,\n        typographyStyles[`body-short-${componentSize}`],\n      )}\n      style={{\n        ...segmentProps.style,\n        minWidth:\n          segment.maxValue != null\n            ? String(segment.maxValue).length + 'ch'\n            : undefined,\n      }}\n    >\n      <span\n        aria-hidden=\"true\"\n        className={cn(\n          styles.segment__placeholder,\n          !segment.isPlaceholder && styles['segment__placeholder--invisible'],\n        )}\n      >\n        {segment.placeholder}\n      </span>\n      {segment.isPlaceholder ? '' : segment.text}\n    </Box>\n  );\n}\n\nDateSegment.displayName = 'DateSegment';\n","import { type HTMLRootProps } from '../../../types';\nimport { cn } from '../../../utils';\nimport { Button, type ButtonProps } from '../../Button';\nimport styles from '../../Button/Button.module.css';\nimport utilStyles from '../../helpers/styling/utilStyles.module.css';\nimport { CloseSmallIcon } from '../../Icon/icons';\nimport { Box } from '../../layout';\nimport inputStyles from '../Input/Input.module.css';\n\ntype ClearButtonProps = {\n  /**Om knappen bruker `position:absolute` med standard  styling. */\n  absolute?: boolean;\n  hasIconToRight?: boolean;\n} & Pick<ButtonProps, 'onClick' | 'size' | 'aria-label' | keyof HTMLRootProps>;\n\nexport const ClearButton = ({\n  className,\n  absolute = true,\n  hasIconToRight,\n  size = 'medium',\n  ...rest\n}: ClearButtonProps) => (\n  <Box\n    as={Button}\n    className={cn(\n      className,\n      styles.clear,\n      absolute && utilStyles['center-absolute-y'],\n      absolute && !hasIconToRight && inputStyles[`input-group__btn-right`],\n      absolute &&\n        hasIconToRight &&\n        inputStyles[`input-group__btn-right-with-right-icon--${size}`],\n    )}\n    icon={CloseSmallIcon}\n    purpose=\"tertiary\"\n    type=\"button\"\n    size={size}\n    {...rest}\n  />\n);\n\nClearButton.displayName = 'ClearButton';\n","import { type useDateField, type useDatePicker } from '@react-aria/datepicker';\nimport { type ReactNode, type Ref, useContext } from 'react';\n\nimport styles from './DateInput.module.css';\nimport { cn } from '../../../utils';\nimport { type InputProps, getInputWidth } from '../../helpers/Input';\nimport inputStyles from '../../helpers/Input/Input.module.css';\nimport focusStyles from '../../helpers/styling/focus.module.css';\nimport { renderInputMessage } from '../../InputMessage';\nimport { Box } from '../../layout';\nimport { renderLabel } from '../../Typography/Label/Label.utils';\nimport tgStyles from '../../Typography/typographyStyles.module.css';\nimport { type DatePickerProps } from '../DatePicker';\nimport { CalendarPopoverContext } from '../DatePicker/CalendarPopover';\n\nexport type DateInputProps = {\n  className?: string;\n  active?: boolean;\n  children: ReactNode;\n  prefix?: ReactNode;\n  suffix?: ReactNode;\n  label?: ReactNode;\n  internalRef: Ref<HTMLDivElement>;\n  groupProps?: ReturnType<typeof useDatePicker>['groupProps'];\n  ref?: Ref<HTMLDivElement>;\n  clearable?: DatePickerProps['clearable'];\n  errorMessageId?: string;\n  tipId?: string;\n} & Pick<ReturnType<typeof useDateField>, 'fieldProps' | 'labelProps'> &\n  Pick<\n    InputProps,\n    | 'componentSize'\n    | 'errorMessage'\n    | 'tip'\n    | 'disabled'\n    | 'style'\n    | 'required'\n    | 'readOnly'\n    | 'width'\n    | 'afterLabelContent'\n  >;\n\nexport function DateInput({\n  errorMessage,\n  tip,\n  componentSize = 'medium',\n  style,\n  className,\n  disabled,\n  active,\n  internalRef,\n  readOnly,\n  required,\n  children,\n  prefix: button,\n  suffix: suffixEl,\n  labelProps,\n  fieldProps,\n  groupProps,\n  width,\n  clearable,\n  ref,\n  afterLabelContent,\n  tipId,\n  errorMessageId,\n  ...props\n}: DateInputProps) {\n  const hasErrorMessage = !!errorMessage;\n\n  const { isOpen } = useContext(CalendarPopoverContext);\n\n  return (\n    <div\n      {...groupProps}\n      className={cn(className, inputStyles.container, styles['date-group'])}\n      ref={ref}\n    >\n      {renderLabel({\n        ...labelProps,\n        label: props.label,\n        showRequiredStyling: required,\n        readOnly,\n        afterLabelContent,\n      })}\n      <Box\n        style={style}\n        width={getInputWidth(width, 'fit-content')}\n        className={cn(\n          inputStyles['input-group'],\n          tgStyles[`body-short-${componentSize}`],\n          styles['input-group'],\n        )}\n      >\n        {button}\n        <div\n          {...fieldProps}\n          ref={internalRef}\n          className={cn(\n            inputStyles.input,\n            inputStyles[`input--${componentSize}`],\n            inputStyles['input--stateful'],\n            inputStyles['input--hover'],\n            hasErrorMessage && inputStyles['input--stateful-danger'],\n            clearable && inputStyles[`input-with-btn-right--${componentSize}`],\n            styles['date-segment-container'],\n            inputStyles[`input-with-icon--${componentSize}`],\n            isOpen && focusStyles.focused,\n            disabled && 'disabled',\n            disabled && inputStyles.disabled,\n            active && 'active',\n            readOnly && 'read-only',\n            readOnly && inputStyles['read-only'],\n            focusStyles['focusable-within'],\n          )}\n        >\n          {children}\n        </div>\n        {suffixEl}\n      </Box>\n      {renderInputMessage({ tip, errorMessage, tipId, errorMessageId })}\n    </div>\n  );\n}\n\nDateInput.displayName = 'DateInput';\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './Input.module.css';\nimport { type StatefulInputProps } from './Input.types';\nimport { cn } from '../../../utils';\nimport typographyStyles from '../../Typography/typographyStyles.module.css';\nimport { focusable } from '../styling/focus.module.css';\n\nexport const Input = ({\n  className,\n  ...rest\n}: ComponentPropsWithRef<'input'>) => (\n  <input className={cn(className, styles.input, focusable)} {...rest} />\n);\n\nInput.displayName = 'Input';\n\nexport const StatefulInput = ({\n  className,\n  componentSize = 'medium',\n  hasErrorMessage,\n  ...rest\n}: StatefulInputProps) => (\n  <Input\n    className={cn(\n      className,\n      styles['input--stateful'],\n      styles[`input--${componentSize}`],\n      typographyStyles[`body-short-${componentSize}`],\n      hasErrorMessage && styles['input--stateful-danger'],\n    )}\n    {...rest}\n  />\n);\n\nStatefulInput.displayName = 'StatefulInput';\n","import { type ResponsiveProps } from '../../layout';\nimport { BREAKPOINTS } from '../../layout/common/Responsive.types';\nimport { isBreakpointObject } from '../../layout/common/utils';\n\nexport function getDefaultText(\n  value?: string | number | ReadonlyArray<string>,\n  defaultValue?: string | number | ReadonlyArray<string>,\n): string {\n  if (typeof value === 'string') {\n    return value;\n  }\n\n  if (typeof defaultValue === 'string') {\n    return defaultValue;\n  }\n\n  return '';\n}\n\nexport function getInputWidth(\n  width?: ResponsiveProps['width'],\n  defaultW?: ResponsiveProps['width'] | false | null,\n): ResponsiveProps['width'] {\n  const fallback: ResponsiveProps['width'] = defaultW\n    ? defaultW\n    : 'var(--dds-input-default-width)';\n\n  if (isBreakpointObject(width)) {\n    return BREAKPOINTS.reduce((acc, bp) => {\n      return {\n        ...acc,\n        [bp]: bp in width ? width[bp] : fallback,\n      };\n    }, {});\n  }\n\n  return width ?? fallback;\n}\n","import { type ReactNode } from 'react';\n\nimport { Label, type LabelProps } from './Label';\n\ntype RenderLabelProps = {\n  label?: ReactNode;\n} & Omit<LabelProps, 'withMargins' | 'children'>;\n\nexport function renderLabel(props: RenderLabelProps) {\n  const { label, ...rest } = props;\n  const hasLabel = !!label;\n  if (hasLabel)\n    return (\n      <Label {...rest} withMargins>\n        {label}\n      </Label>\n    );\n  return null;\n}\n","import { createFocusManager } from '@react-aria/focus';\nimport { type Ref, type RefObject, useImperativeHandle, useRef } from 'react';\n\ninterface DOMRefValue<T extends HTMLElement = HTMLElement> {\n  UNSAFE_getDOMNode(): T | null;\n}\n\nexport interface FocusableRefValue<\n  T extends HTMLElement = HTMLElement,\n  D extends HTMLElement = T,\n> extends DOMRefValue<D> {\n  focus(): void;\n}\n\nexport type DOMRef<T extends HTMLElement = HTMLElement> = Ref<DOMRefValue<T>>;\nexport type FocusableRef<T extends HTMLElement = HTMLElement> = Ref<\n  FocusableRefValue<T>\n>;\n\nexport function useFocusManagerRef<T extends HTMLElement = HTMLElement>(\n  ref: Ref<unknown>,\n) {\n  const domRef = useRef<T>(null);\n  useImperativeHandle(ref, () => ({\n    ...createDOMRef(domRef),\n    focus() {\n      createFocusManager(domRef).focusFirst({ tabbable: true });\n    },\n  }));\n  return domRef;\n}\n\nfunction createDOMRef<T extends HTMLElement = HTMLElement>(\n  ref: RefObject<T | null>,\n): DOMRefValue<T> {\n  return {\n    UNSAFE_getDOMNode() {\n      return ref.current;\n    },\n  };\n}\n","import { type Time } from '@internationalized/date';\nimport { type AriaTimeFieldProps, useTimeField } from '@react-aria/datepicker';\nimport { useTimeFieldState } from '@react-stately/datepicker';\nimport { type Ref, useId, useRef } from 'react';\n\nimport { formatTimeSegments } from './TimePicker.utils';\nimport { useLanguage } from '../../../i18n';\nimport { cn } from '../../../utils';\nimport inputStyles from '../../helpers/Input/Input.module.css';\nimport { type InputProps } from '../../helpers/Input/Input.types';\nimport { Icon } from '../../Icon';\nimport { TimeIcon } from '../../Icon/icons';\nimport { DateInput } from '../common/DateInput';\nimport styles from '../common/DateInput.module.css';\nimport { LOCALE } from '../DatePicker/constants';\nimport { DateSegment } from '../DatePicker/DateField/DateSegment';\n\nexport type TimePickerProps = Omit<AriaTimeFieldProps<Time>, 'hideTimeZone'> &\n  Pick<\n    InputProps,\n    'componentSize' | 'errorMessage' | 'tip' | 'style' | 'width' | 'className'\n  > & {\n    ref?: Ref<HTMLDivElement>;\n  };\n\nexport function TimePicker({\n  componentSize = 'medium',\n  width,\n  ref,\n  ...props\n}: TimePickerProps) {\n  const lang = useLanguage();\n\n  if (!lang) {\n    throw new Error('TimePicker must be used within a DdsProvider');\n  }\n\n  const internalRef = useRef<HTMLInputElement>(null);\n  const state = useTimeFieldState({\n    ...props,\n    locale: LOCALE[lang],\n  });\n  const { labelProps, fieldProps } = useTimeField(\n    { ...props, hideTimeZone: true, granularity: 'hour' },\n    state,\n    internalRef,\n  );\n\n  const hasErrorMessage = !!props.errorMessage;\n  const hasTip = !!props.tip;\n\n  const uniqueId = props.id ?? useId();\n  const errorMessageId = hasErrorMessage\n    ? `${uniqueId}-errorMessage`\n    : undefined;\n  const tipId = hasTip ? `${uniqueId}-tip` : undefined;\n\n  const disabled = props.isDisabled || !!fieldProps['aria-disabled'];\n\n  const formattedSegments = formatTimeSegments(state.segments);\n\n  return (\n    <DateInput\n      {...props}\n      errorMessageId={errorMessageId}\n      tipId={tipId}\n      width={width}\n      disabled={disabled}\n      required={props.isRequired}\n      componentSize={componentSize}\n      ref={ref}\n      internalRef={internalRef}\n      readOnly={props.isReadOnly}\n      labelProps={labelProps}\n      fieldProps={fieldProps}\n      prefix={\n        <Icon\n          icon={TimeIcon}\n          iconSize=\"component\"\n          className={cn(\n            inputStyles['input-group__absolute-el'],\n            inputStyles[`input-group__absolute-el--${componentSize}`],\n            disabled && styles['icon-wrapper--disabled'],\n            props.isReadOnly && styles['icon-wrapper--readonly'],\n          )}\n        />\n      }\n    >\n      {formattedSegments.map((segment, i) => (\n        <DateSegment\n          errorMessageId={errorMessageId}\n          tipId={tipId}\n          componentSize={componentSize}\n          key={i}\n          segment={segment}\n          state={state}\n        />\n      ))}\n    </DateInput>\n  );\n}\n\nTimePicker.displayName = 'TimePicker';\n","import { type DateSegment } from '@react-stately/datepicker';\n\n// Formaterer klokkeslett-segmenter til norsk locale\nexport function formatTimeSegments(\n  segments: Array<DateSegment>,\n): Array<DateSegment> {\n  const hourSegment = segments.find(segment => segment.type === 'hour');\n  const minuteSegment = segments.find(segment => segment.type === 'minute');\n  const separatorSegment = segments.find(\n    segment =>\n      segment.type === 'literal' && segment.isPlaceholder === undefined,\n  );\n\n  if (!hourSegment || !minuteSegment || !separatorSegment) {\n    throw new Error('Invalid time segments');\n  }\n\n  const formattedHourSegment = {\n    ...hourSegment,\n    text: hourSegment.text.padStart(2, '0'),\n    placeholder: '––',\n  };\n\n  const formattedMinuteSegment = {\n    ...minuteSegment,\n    text: minuteSegment.text.padStart(2, '0'),\n    placeholder: '––',\n  };\n\n  const formattedSeparatorSegment = { ...separatorSegment, text: ':' };\n\n  return [\n    formattedHourSegment,\n    formattedSeparatorSegment,\n    formattedMinuteSegment,\n  ];\n}\n","import {\n  CalendarDate,\n  type DateValue,\n  Time,\n  fromDate,\n} from '@internationalized/date';\n\nexport function nativeDateToDateValue(\n  date: Date,\n  timeZone: string | undefined = 'Europe/Oslo',\n): DateValue {\n  return fromDate(date, timeZone);\n}\n\nexport function dateValueToNativeDate(\n  date: DateValue,\n  timeZone: string | undefined = 'Europe/Oslo',\n): Date {\n  return date.toDate(timeZone);\n}\n\nexport function nativeDateToCalendarDate(date: Date): CalendarDate {\n  return new CalendarDate(\n    date.getFullYear(),\n    date.getMonth() + 1,\n    date.getDate(),\n  );\n}\n\nexport function nativeDateToTime(date: Date): Time {\n  return new Time(date.getHours(), date.getMinutes(), date.getSeconds());\n}\n\nexport function calendarDateToNativeDate(\n  date: CalendarDate,\n  time: Time = new Time(12, 0, 0, 0),\n): Date {\n  return new Date(\n    date.year,\n    date.month - 1,\n    date.day,\n    time.hour,\n    time.minute,\n    time.second,\n  );\n}\n",".list {\n  & > dt:first-of-type {\n    margin-top: var(--dds-spacing-x1);\n  }\n  & > dd:last-child {\n    margin-bottom: var(--dds-spacing-x1);\n  }\n  dd + dt {\n    margin-top: var(--dds-spacing-x2);\n  }\n}\n\n.list--default {\n  dt {\n    color: var(--dds-color-text-body);\n    font-weight: 600;\n  }\n}\n\n.list--subtle {\n  dt {\n    color: var(--dds-color-text-body-subtle);\n  }\n}\n\n.list--row {\n  &:not(:has(> dt):has(> dd)) {\n    flex-direction: row;\n  }\n}\n\n.list--column {\n  &:not(:has(> dt):has(> dd)) {\n    flex-direction: column;\n  }\n}\n\n.desc {\n  margin-inline-start: 0;\n  align-items: center;\n  display: flex;\n  gap: var(--dds-spacing-x0-25);\n  color: var(--dds-color-text-body);\n}\n\n.group {\n  margin: var(--dds-spacing-x2);\n}\n","import styles from './DescriptionList.module.css';\nimport {\n  type BaseComponentPropsWithChildren,\n  type Direction,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { VStack } from '../layout';\n\nexport type DescriptionListAppearance = 'default' | 'subtle';\n\nexport type DescriptionListProps = BaseComponentPropsWithChildren<\n  HTMLDListElement,\n  {\n    /**Påvirker tekst styling. */\n    appearance?: DescriptionListAppearance;\n    /**Setter flex-direction. NB! Fungerer kun ved bruk av `DescriptionListGroup` som barn av `DescriptionList`.\n     *  @default \"column\"\n     */\n    direction?: Direction;\n  }\n>;\n\nexport const DescriptionList = ({\n  appearance = 'default',\n  direction = 'column',\n  children,\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: DescriptionListProps) => (\n  <VStack\n    as=\"dl\"\n    margin=\"x0\"\n    flexWrap=\"wrap\"\n    rowGap=\"x0\"\n    columnGap=\"x2\"\n    {...getBaseHTMLProps(\n      id,\n      cn(\n        className,\n        styles.list,\n        styles[`list--${appearance}`],\n        styles[`list--${direction}`],\n      ),\n      style,\n      htmlProps,\n      rest,\n    )}\n  >\n    {children}\n  </VStack>\n);\n\nDescriptionList.displayName = 'DescriptionList';\n","import { type ComponentPropsWithRef } from 'react';\n\nexport type DescriptionListTermProps = ComponentPropsWithRef<'dt'>;\n\nexport const DescriptionListTerm = (props: DescriptionListTermProps) => {\n  return <dt {...props} />;\n};\n\nDescriptionListTerm.displayName = 'DescriptionListTerm';\n","import styles from './DescriptionList.module.css';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { Icon } from '../Icon';\nimport { type SvgIcon } from '../Icon/utils';\n\nexport type DescriptionListDescProps = BaseComponentPropsWithChildren<\n  HTMLElement,\n  {\n    /**Ikon som vises ved siden av teksten. */\n    icon?: SvgIcon;\n  }\n>;\n\nexport const DescriptionListDesc = ({\n  children,\n  icon,\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: DescriptionListDescProps) => (\n  <dd\n    {...getBaseHTMLProps(\n      id,\n      cn(className, styles.desc),\n      style,\n      htmlProps,\n      rest,\n    )}\n  >\n    {icon && <Icon icon={icon} />} {children}\n  </dd>\n);\n\nDescriptionListDesc.displayName = 'DescriptionListDesc';\n","import { type Property } from 'csstype';\n\nimport styles from './DescriptionList.module.css';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { Box } from '../layout';\n\nexport type DescriptionListGroupProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  {\n    /**Custom margin. */\n    margin?: Property.Margin<string>;\n    /**Custom min-width. */\n    minWidth?: Property.MinWidth<string>;\n    /**Custom max-width. */\n    maxWidth?: Property.MaxWidth<string>;\n  }\n>;\n\nexport const DescriptionListGroup = ({\n  children,\n  margin,\n  minWidth,\n  maxWidth,\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: DescriptionListGroupProps) => (\n  <Box\n    {...getBaseHTMLProps(\n      id,\n      cn(className, styles.group),\n      style,\n      htmlProps,\n      rest,\n    )}\n    maxWidth={maxWidth}\n    minWidth={minWidth}\n    margin={margin}\n  >\n    {children}\n  </Box>\n);\n\nDescriptionListGroup.displayName = 'DescriptionListGroup';\n","import { createContext, useContext } from 'react';\n\nimport { type Breakpoint } from '../layout';\n\ninterface DetailListContextProps {\n  smallScreenBreakpoint?: Breakpoint;\n}\n\nexport const DetailListContext = createContext<DetailListContextProps>({});\nexport const useDetailListContext = () => useContext(DetailListContext);\n",".list {\n  display: table;\n}\n\n.list--striped-with-bp {\n  .row {\n    &:nth-of-type(4n-1),\n    &:nth-of-type(4n) {\n      background-color: var(--dds-color-surface-default);\n    }\n\n    &:nth-of-type(4n-3),\n    &:nth-of-type(4n-2) {\n      background-color: var(--dds-color-surface-subtle);\n    }\n  }\n}\n\n.list--small {\n  dt,\n  dd {\n    padding: var(--dds-spacing-x0-5);\n  }\n}\n\n.list--medium {\n  dt,\n  dd {\n    padding: var(--dds-spacing-x0-75);\n  }\n}\n\n.list--large {\n  dt,\n  dd {\n    padding-block: var(--dds-spacing-x1-5);\n    padding-inline: var(--dds-spacing-x0-75);\n  }\n}\n\n.column {\n  dt,\n  dd {\n    margin-inline-start: 0;\n    text-align: left;\n  }\n  dt {\n    padding-block-end: var(--dds-spacing-x0-125);\n  }\n\n  dd:not(:last-of-type) {\n    padding-block: var(--dds-spacing-x0-125);\n  }\n\n  dd:last-of-type {\n    padding-block-start: var(--dds-spacing-x0-125);\n  }\n}\n\n.cell {\n  display: table-cell;\n}\n\n.term {\n  font-weight: var(--dds-font-weight-bold);\n}\n",".wrapper {\n  width: 100%;\n}\n\n.wrapper--scrollable {\n  overflow-x: auto;\n}\n\n.table {\n  width: 100%;\n  border-spacing: 0;\n  border-collapse: collapse;\n}\n\n.table--with-dividers {\n  .row--body {\n    border-bottom: 1px solid var(--dds-color-border-subtle);\n  }\n\n  .row--colapsible-header--open {\n    border-bottom: none;\n  }\n}\n\n.table--sticky-header {\n  tr th {\n    position: sticky;\n    top: 0;\n    z-index: var(--dds-zindex-sticky);\n  }\n}\n\n.table--with-stripes {\n  .row--body {\n    &:nth-of-type(even) {\n      background-color: var(--dds-color-surface-subtle);\n    }\n\n    &:nth-of-type(odd) {\n      background-color: var(--dds-color-surface-default);\n    }\n  }\n}\n\n.table--small {\n  td,\n  th {\n    padding: var(--dds-spacing-x0-25) var(--dds-spacing-x0-5);\n  }\n  th {\n    font: var(--dds-font-heading-xsmall);\n    letter-spacing: var(--dds-font-heading-xsmall-letter-spacing);\n    background-color: var(--dds-color-surface-default);\n  }\n}\n\n.table--with-stripes.table--small {\n  .row--body {\n    &:nth-of-type(odd) {\n      background-color: var(--dds-color-surface-subtle);\n    }\n\n    &:nth-of-type(even) {\n      background-color: var(--dds-color-surface-default);\n    }\n  }\n}\n\n.table--medium {\n  th {\n    font: var(--dds-font-heading-small);\n  }\n  td,\n  th {\n    padding: var(--dds-spacing-x0-75);\n  }\n}\n\n.table--large {\n  th {\n    font: var(--dds-font-heading-small);\n  }\n  td,\n  th {\n    padding: var(--dds-spacing-x1-5) var(--dds-spacing-x0-75);\n  }\n}\n\n.row {\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      background-color var(--dds-motion-micro-state),\n      border-color var(--dds-motion-micro-state),\n      box-shadow var(--dds-motion-micro-state);\n  }\n}\n\n.table {\n  .row--body {\n    background-color: var(--dds-color-surface-default);\n\n    &.row--sum,\n    &.row--sum:nth-of-type(even),\n    &.row--sum:nth-of-type(odd) {\n      border-bottom: 1px solid var(--dds-color-border-default);\n      border-top: 1px solid var(--dds-color-border-default);\n      background: var(--dds-color-surface-default);\n    }\n\n    &.row--selected,\n    &.row--selected:nth-of-type(even),\n    &.row--selected:nth-of-type(odd) {\n      background-color: var(--dds-color-surface-selected-default);\n    }\n\n    &.row--hoverable:hover {\n      background-color: var(--dds-color-surface-hover-default);\n    }\n  }\n}\n\n.cell--head {\n  background-color: var(--dds-color-brand-primary-subtle);\n  color: var(--dds-color-text-on-primary-subtle);\n}\n\n.cell--left {\n  text-align: left;\n}\n\n.cell--right {\n  text-align: right;\n}\n\n.cell--center {\n  text-align: center;\n}\n\n.cell__inner {\n  display: flex;\n  align-items: center;\n  gap: var(--dds-spacing-x0-75);\n}\n\n.sort-button {\n  gap: var(--dds-spacing-x0-5);\n  -webkit-user-select: text;\n          user-select: text;\n  display: flex;\n  align-items: center;\n  color: inherit;\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition: var(--dds-focus-transition);\n  }\n}\n\n.collapse-button {\n  border-radius: var(--dds-border-radius-button);\n  margin-left: auto;\n  margin-right: auto;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  color: inherit;\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition: all var(--dds-motion-micro-state);\n  }\n\n  &:hover {\n    background-color: var(--dds-color-surface-hover-default);\n  }\n}\n","import { DetailListContext } from './DetailList.context';\nimport styles from './DetailList.module.css';\nimport {\n  type BaseComponentPropsWithChildren,\n  createSizes,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { type Breakpoint } from '../layout';\nimport tableStyles from '../Table/normal/Table.module.css';\nimport tgStyles from '../Typography/typographyStyles.module.css';\n\nexport const DETAIL_LIST_SIZES = createSizes('small', 'medium', 'large');\n\nexport type DetailListSize = (typeof DETAIL_LIST_SIZES)[number];\n\nexport type DetailListProps = BaseComponentPropsWithChildren<\n  HTMLDListElement,\n  {\n    /**\n     * Størrelse på tabellen. Påvirker tetthet i cellene og font.\n     * @default \"medium\"\n     */\n    size?: DetailListSize;\n    /**\n     * Om rader skal ha skillelinje.\n     * @default true\n     */\n    withDividers?: boolean;\n    /**\n     * Om rader skal ha sebrastriper.\n     * @default true\n     */\n    striped?: boolean;\n    /**Brekkpunkt for små skjermer; den gjør om rader til kolonner. */\n    smallScreenBreakpoint?: Breakpoint;\n  }\n>;\n\nexport const DetailList = ({\n  id,\n  className,\n  style,\n  htmlProps,\n  withDividers = true,\n  striped = true,\n  size = 'medium',\n  smallScreenBreakpoint,\n  ...rest\n}: DetailListProps) => (\n  <DetailListContext value={{ smallScreenBreakpoint }}>\n    <dl\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          tgStyles[`body-short-${size}`],\n          tableStyles.table,\n          styles.list,\n          styles[`list--${size}`],\n          withDividers && tableStyles['table--with-dividers'],\n          striped &&\n            !smallScreenBreakpoint &&\n            tableStyles['table--with-stripes'],\n          striped && smallScreenBreakpoint && styles['list--striped-with-bp'],\n        ),\n        style,\n        htmlProps,\n        rest,\n      )}\n    />\n  </DetailListContext>\n);\n\nDetailList.displayName = 'DetailList';\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './DetailList.module.css';\nimport { cn } from '../../utils';\nimport { Box, type ResponsiveProps } from '../layout';\n\nexport type DetailListDescProps = ComponentPropsWithRef<'dd'> &\n  Pick<ResponsiveProps, 'textAlign'>;\n\nexport const DetailListDesc = ({ className, ...rest }: DetailListDescProps) => (\n  <Box as=\"dd\" className={cn(className, styles.cell)} {...rest} />\n);\n\nDetailListDesc.displayName = 'DetailListDesc';\n","import { type ComponentPropsWithRef } from 'react';\n\nimport { useDetailListContext } from './DetailList.context';\nimport styles from './DetailList.module.css';\nimport { cn } from '../../utils';\nimport { Box } from '../layout';\nimport tableStyles from '../Table/normal/Table.module.css';\n\nexport type DetailListRowProps = ComponentPropsWithRef<'div'>;\n\nexport const DetailListRow = ({ className, ...rest }: DetailListRowProps) => {\n  const { smallScreenBreakpoint: bp } = useDetailListContext();\n  const hasBp = !!bp;\n\n  return (\n    <>\n      <Box\n        display=\"table-row\"\n        hideBelow={hasBp ? bp : undefined}\n        className={cn(className, styles.row, tableStyles['row--body'])}\n        {...rest}\n      />\n      {hasBp && (\n        <Box\n          display=\"flex\"\n          flexDirection=\"column\"\n          showBelow={bp}\n          className={cn(\n            className,\n            styles.row,\n            styles.column,\n            tableStyles['row--body'],\n          )}\n          {...rest}\n        />\n      )}\n    </>\n  );\n};\n\nDetailListRow.displayName = 'DetailListRow';\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './DetailList.module.css';\nimport { cn } from '../../utils';\n\nexport type DetailListTermProps = ComponentPropsWithRef<'dt'>;\n\nexport const DetailListTerm = ({ className, ...rest }: DetailListTermProps) => (\n  <dt className={cn(className, styles.cell, styles.term)} {...rest} />\n);\n\nDetailListTerm.displayName = 'DetailListTerm';\n","import {\n  type MouseEvent,\n  type ReactNode,\n  type RefObject,\n  useContext,\n  useEffect,\n  useRef,\n} from 'react';\nimport { createPortal } from 'react-dom';\n\nimport styles from './Drawer.module.css';\nimport {\n  useCombinedRef,\n  useFocusTrap,\n  useMountTransition,\n  useOnClickOutside,\n} from '../../hooks';\nimport { useTranslation } from '../../i18n';\nimport { commonTexts } from '../../i18n/commonTexts';\nimport {\n  type BaseComponentPropsWithChildren,\n  createSizes,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { Button } from '../Button';\nimport {\n  Backdrop,\n  handleElementWithBackdropMount,\n  handleElementWithBackdropUnmount,\n} from '../helpers';\nimport focusStyles from '../helpers/styling/focus.module.css';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\nimport { CloseIcon } from '../Icon/icons';\nimport { ThemeContext } from '../ThemeProvider';\nimport { Heading } from '../Typography';\nimport { useDrawerContext } from './Drawer.context';\nimport { HStack, Paper, type ResponsiveProps, VStack } from '../layout';\n\nexport const DRAWER_SIZES = createSizes('small', 'medium', 'large');\nexport type DrawerSize = (typeof DRAWER_SIZES)[number];\nexport type DrawerPlacement = 'left' | 'right';\n\nexport type DrawerProps = Omit<\n  BaseComponentPropsWithChildren<\n    HTMLDivElement,\n    {\n      /**Størrelsen på `<Drawer>`.\n       * @default \"small\"\n       */\n      size?: DrawerSize;\n      /** Plasseringen til `<Drawer>`.\n       * @default \"right\"\n       */\n      placement?: DrawerPlacement;\n      /**Header for `<Drawer>`. Returnerer default `<Heading>` hvis verdien er en `string`. */\n      header?: string | ReactNode;\n      /**Spesifiserer hvilken DOM node `<Drawer>` skal ha som forelder via React portal.\n       * Brukes med f.eks `document.getElementById(\"id\")` eller ref (skaper ikke ny DOM node).\n       * @default themeProviderRef\n       */\n      parentElement?: HTMLElement;\n      /**\n       * Om `<Drawer>` skal vises med backdrop som gråer ut bakgrunnen.\n       */\n      withBackdrop?: boolean;\n    } & Pick<ResponsiveProps, 'minWidth' | 'maxWidth' | 'width'>\n  >,\n  'id'\n>;\n\nexport const Drawer = ({\n  children,\n  header,\n  placement = 'right',\n  parentElement,\n  size = 'small',\n  className,\n  style,\n  htmlProps,\n  maxWidth,\n  minWidth = '300px',\n  width,\n  withBackdrop,\n  ref,\n  ...rest\n}: DrawerProps) => {\n  const themeContext = useContext(ThemeContext);\n\n  if (!themeContext) {\n    throw new Error('Drawer must be used within a DdsProvider');\n  }\n  const { t } = useTranslation();\n\n  const portalTarget = parentElement ?? themeContext?.el;\n\n  const { isOpen = false, onClose, drawerId, triggerRef } = useDrawerContext();\n\n  const hasHeader = !!header;\n  const headerId = hasHeader ? `${drawerId}-header` : undefined;\n\n  const drawerRef = useFocusTrap<HTMLDivElement>(isOpen);\n  const combinedRef = useCombinedRef(ref, drawerRef);\n\n  useEffect(() => {\n    if (withBackdrop) {\n      if (isOpen) {\n        handleElementWithBackdropMount(document.body);\n      } else {\n        handleElementWithBackdropUnmount(document.body);\n      }\n\n      return () => handleElementWithBackdropUnmount(document.body);\n    }\n  }, [isOpen]);\n\n  const elements: Array<RefObject<HTMLElement | null>> = [drawerRef];\n  if (triggerRef) elements.push(triggerRef);\n\n  useOnClickOutside(elements, () => {\n    if (isOpen && !withBackdrop) {\n      onClose?.();\n    }\n  });\n\n  const backdropRef = useRef<HTMLDivElement>(null);\n  const onBackdropClick = (event: MouseEvent<HTMLDivElement>) => {\n    if (event.target === backdropRef.current && isOpen && withBackdrop) {\n      onClose?.();\n    }\n  };\n\n  const hasTransitionedIn = useMountTransition(isOpen, 500);\n  const isMounted = hasTransitionedIn && isOpen;\n\n  const isOpenCn = isMounted ? 'opened' : 'closed';\n\n  const getMaxWidth = (size: DrawerSize): string => {\n    switch (size) {\n      case 'small':\n        return '400px';\n      case 'medium':\n        return '600px';\n      case 'large':\n        return '800px';\n    }\n  };\n\n  const drawer = (\n    <Paper\n      ref={combinedRef}\n      role=\"dialog\"\n      tabIndex={-1}\n      position=\"fixed\"\n      top=\"0\"\n      height=\"100%\"\n      minWidth={minWidth}\n      maxWidth={maxWidth ? maxWidth : getMaxWidth(size)}\n      width={width}\n      display=\"flex\"\n      flexDirection=\"column\"\n      justifyContent=\"flex-start\"\n      padding=\"var(--dds-drawer-container-padding)\"\n      borderRadius=\"0\"\n      {...getBaseHTMLProps(\n        drawerId,\n        cn(\n          className,\n          styles.container,\n          styles[`container--${placement}`],\n          styles[`container--${placement}-${isOpenCn}`],\n          focusStyles['focusable--inset'],\n        ),\n        style,\n        htmlProps,\n        rest,\n      )}\n      elevation=\"large\"\n      aria-labelledby={headerId}\n    >\n      <HStack\n        position=\"sticky\"\n        top=\"0\"\n        left=\"0\"\n        width=\"100%\"\n        paddingInline=\"var(--dds-drawer-content-container-padding)\"\n        className={styles['drawer-header']}\n      >\n        {hasHeader && (\n          <div id={headerId}>\n            {typeof header === 'string' ? (\n              <Heading level={2} typographyType=\"headingLarge\">\n                {header}\n              </Heading>\n            ) : (\n              header\n            )}\n          </div>\n        )}\n        <Button\n          className={cn(styles['button--close'])}\n          data-testid=\"drawer-close-btn\"\n          size=\"small\"\n          purpose=\"tertiary\"\n          onClick={onClose}\n          aria-label={t(commonTexts.close)}\n          icon={CloseIcon}\n        />\n      </HStack>\n      <VStack\n        gap=\"x1\"\n        overflowY=\"auto\"\n        className={cn(styles['content-container'], utilStyles.scrollbar)}\n      >\n        {children}\n      </VStack>\n    </Paper>\n  );\n\n  const component = withBackdrop ? (\n    <Backdrop\n      zIndex=\"drawer\"\n      isMounted={isMounted}\n      ref={backdropRef}\n      onClick={onBackdropClick}\n    >\n      {drawer}\n    </Backdrop>\n  ) : (\n    drawer\n  );\n\n  return (isOpen || hasTransitionedIn) && portalTarget\n    ? createPortal(component, portalTarget)\n    : null;\n};\n\nDrawer.displayName = 'Drawer';\n",".container {\n  /* Justering på spacing slik at fokusmarkering osv. ikke skjules ved overflow */\n  --dds-drawer-content-container-padding: var(--dds-spacing-x0-25);\n  --dds-drawer-container-padding: var(--dds-spacing-x1)\n    calc(var(--dds-spacing-x1) - var(--dds-drawer-content-container-padding))\n    calc(var(--dds-spacing-x1) - var(--dds-drawer-content-container-padding))\n    calc(var(--dds-spacing-x1-5) - var(--dds-drawer-content-container-padding));\n\n  z-index: var(--dds-zindex-drawer);\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition: transform var(--dds-motion-surface);\n  }\n}\n\n.container--left {\n  left: 0;\n}\n\n.container--left-opened {\n  transform: translate(0px);\n}\n\n.container--left-closed {\n  transform: translate(-100%);\n}\n\n.container--right {\n  right: 0;\n}\n\n.container--right-opened {\n  transform: translate(0px);\n}\n\n.container--right-closed {\n  transform: translate(100%);\n}\n\n.content-container {\n  /* Spacing slik at fokusmarkering osv. ikke skjules ved overflow */\n  padding: var(--dds-drawer-content-container-padding);\n}\n\n.drawer-header {\n  padding-bottom: calc(\n    var(--dds-spacing-x0-75) - var(--dds-drawer-content-container-padding)\n  );\n  z-index: 1;\n}\n\n.button--close {\n  margin-left: auto;\n  margin-top: calc(-1 * var(--dds-spacing-x0-125));\n}\n","import { type RefObject, createContext, useContext } from 'react';\n\ninterface DrawerContextType {\n  drawerId: string;\n  triggerRef: RefObject<HTMLElement | null>;\n  onClose: () => void;\n  isOpen: boolean;\n}\n\nexport const DrawerContext = createContext<Partial<DrawerContextType>>({});\n\nexport const useDrawerContext = () => useContext(DrawerContext);\n","import {\n  type DetailedHTMLProps,\n  type Dispatch,\n  type HTMLAttributes,\n  Children as ReactChildren,\n  type ReactNode,\n  type SetStateAction,\n  cloneElement,\n  isValidElement,\n  useId,\n  useRef,\n  useState,\n} from 'react';\n\nimport { DrawerContext } from './Drawer.context';\nimport { useOnKeyDown } from '../../hooks';\n\nexport interface DrawerGroupProps {\n  /**Barna til komponenten: trigger-element og `<Drawer>`. */\n  children: ReactNode;\n  /**\n   * Om `<Drawer>` er åpen ved første render.\n   */\n  isInitiallyOpen?: boolean;\n  /**\n   * Implementerer kontrollert tilstand: om `<Drawer>` er åpen.\n   */\n  isOpen?: boolean;\n  /**\n   * Implementerer kontrollert tilstand: funksjon som kontrollerer `isOpen`.\n   */\n  setIsOpen?: Dispatch<SetStateAction<boolean>>;\n  /**`id` til `<Drawer>`. */\n  drawerId?: string;\n  /**Ekstra logikk som kjøres når `<Drawer>` åpnes. */\n  onOpen?: () => void;\n  /**Ekstra logikk som kjøres når `<Drawer>` lukkes. */\n  onClose?: () => void;\n}\n\nexport const DrawerGroup = ({\n  children,\n  isInitiallyOpen,\n  isOpen: propIsOpen,\n  setIsOpen: propSetIsOpen,\n  drawerId,\n  onOpen,\n  onClose,\n}: DrawerGroupProps) => {\n  const [internalIsOpen, internalSetIsOpen] = useState(isInitiallyOpen);\n  const [isOpen, setIsOpen] = [\n    propIsOpen ?? internalIsOpen,\n    propSetIsOpen ?? internalSetIsOpen,\n  ];\n\n  const generatedId = useId();\n  const uniqueDrawerId = drawerId ?? `${generatedId}-drawer`;\n\n  const triggerRef = useRef<HTMLElement>(null);\n\n  const open = () => setIsOpen(true);\n  const close = () => setIsOpen(false);\n\n  const handleOpen = () => {\n    open();\n    onOpen?.();\n  };\n\n  const handleClose = () => {\n    close();\n    onClose?.();\n  };\n\n  useOnKeyDown(['Esc', 'Escape'], () => {\n    if (isOpen) {\n      triggerRef?.current?.focus();\n      handleClose();\n    }\n  });\n\n  const Children = ReactChildren.map(children, (child, childIndex) => {\n    return (\n      isValidElement<\n        DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>\n      >(child) &&\n      (childIndex === 0\n        ? cloneElement(child, {\n            'aria-haspopup': 'dialog',\n            'aria-controls': uniqueDrawerId,\n            'aria-expanded': isOpen,\n            ref: triggerRef,\n            onClick: handleOpen,\n          })\n        : child)\n    );\n  });\n  return (\n    <DrawerContext\n      value={{\n        drawerId: uniqueDrawerId,\n        isOpen,\n        onClose: handleClose,\n        triggerRef,\n      }}\n    >\n      {Children}\n    </DrawerContext>\n  );\n};\n\nDrawerGroup.displayName = 'DrawerGroup';\n","import { type HTMLAttributes, type ReactNode } from 'react';\n\nimport { Paper, VStack } from '../layout';\nimport { Heading, type HeadingLevel, Typography } from '../Typography';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport type EmptyContentProps = {\n  /**Tittel - kort oppsummering. */\n  headerText?: string;\n  /**Nivå på overskriften. Sørg for at den følger hierarkiet på siden.\n   * @default 2\n   */\n  headerHeadingLevel?: HeadingLevel;\n  /**Melding - beskrivelse og forklaring på hvordan brukeren kan få innhold. Kan inneholde lenker og andre interaktive elementer. */\n  children: ReactNode;\n} & Omit<HTMLAttributes<HTMLDivElement>, 'children'>;\n\nexport function EmptyContent({\n  headerText,\n  children,\n  headerHeadingLevel = 2,\n\n  ...rest\n}: EmptyContentProps) {\n  return (\n    <Paper\n      display=\"flex\"\n      justifyContent=\"center\"\n      alignItems=\"center\"\n      minHeight=\"var(--dds-spacing-x10)\"\n      height=\"100%\"\n      width=\"100%\"\n      padding=\"x1.5\"\n      background=\"surface-medium\"\n      borderRadius=\"surface\"\n      {...rest}\n    >\n      <VStack\n        maxWidth=\"70ch\"\n        gap=\"x1\"\n        textAlign=\"center\"\n        className={typographyStyles['text-color--medium']}\n      >\n        {headerText && (\n          <Heading level={headerHeadingLevel} typographyType=\"headingMedium\">\n            {headerText}\n          </Heading>\n        )}\n        <Typography as=\"div\" color=\"text-medium\">\n          {children}\n        </Typography>\n      </VStack>\n    </Paper>\n  );\n}\n\nEmptyContent.displayName = 'EmptyContent';\n",".container {\n  border: 2px solid var(--dds-color-border-danger);\n}\n",".list {\n  color: var(--dds-color-text-body);\n  margin: var(--dds-spacing-x1) 0;\n  ul,\n  ol {\n    margin-block: var(--dds-font-paragraph-spacing-list);\n  }\n}\n\n.list--inherit {\n  font: inherit;\n}\n\n.list--unordered {\n  --dds-list-bullet-size: 0.75em;\n  --dds-list-ul-li-padding-left: var(--dds-list-bullet-size) + 0.5em;\n  list-style: none;\n  padding-left: calc(\n    var(--dds-spacing-x2) - (var(--dds-list-ul-li-padding-left))\n  );\n\n  li {\n    position: relative;\n\n    padding-left: calc(var(--dds-list-ul-li-padding-left));\n\n    &:before {\n      content: '';\n      display: inline-block;\n      height: var(--dds-list-bullet-size);\n      width: var(--dds-list-bullet-size);\n      position: absolute;\n      top: calc(\n        (var(--dds-font-lineheight-x1) * 1em) / 2 -\n          var(--dds-list-bullet-size) / 2\n      );\n      left: 0;\n      background: var(--dds-color-text-body);\n      mask-size: 100%;\n      mask-repeat: no-repeat;\n      mask-image: url('../Icon/svg/jordskifterett.svg');\n    }\n    ul > li:before {\n      mask-image: url('../Icon/svg/lagmannsrett.svg');\n    }\n    ul > li > ul > li:before {\n      mask-image: url('../Icon/svg/tingrett.svg');\n    }\n  }\n}\n\n.list--ordered {\n  padding-left: var(--dds-spacing-x2);\n  & > li > ol {\n    list-style-type: lower-alpha;\n  }\n  & > li > ol > li > ol {\n    list-style-type: lower-roman;\n  }\n}\n\n.li {\n  margin-bottom: var(--dds-font-paragraph-spacing-list);\n}\n","import { type ElementType } from 'react';\n\nimport styles from './List.module.css';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { type TypographyBodyLongType, getTypographyCn } from '../Typography';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport type ListType = 'ordered' | 'unordered';\nexport type ListTypographyType = TypographyBodyLongType | 'inherit';\n\nexport type ListProps = BaseComponentPropsWithChildren<\n  HTMLUListElement | HTMLOListElement,\n  {\n    /**Spesifiserer om komponenten skal returnere `<ul>` (punktliste) eller `<ol>` (nummerert liste).\n     * @default \"unordered\"\n     */\n    listType?: ListType;\n    /**Spesifiserer typografi for listen. Komponenten arver i utgangspunktet fra forelder, men hvis forelder stiller ikke med relevant styling  må det velges `TypographyBodyType` som brukes i `<body>` ellers på siden.\n     *  @default \"inherit\"\n     */\n    typographyType?: ListTypographyType;\n  }\n>;\n\nexport const List = ({\n  listType = 'unordered',\n  typographyType = 'inherit',\n  children,\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: ListProps) => {\n  const List: ElementType = listType === 'ordered' ? 'ol' : 'ul';\n\n  return (\n    <List\n      {...getBaseHTMLProps(id, className, style, htmlProps, rest)}\n      className={cn(\n        styles.list,\n        styles[`list--${listType}`],\n        typographyType === 'inherit'\n          ? styles['list--inherit']\n          : typographyStyles[getTypographyCn(typographyType)],\n      )}\n    >\n      {children}\n    </List>\n  );\n};\n\nList.displayName = 'List';\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './List.module.css';\nimport { cn } from '../../utils';\n\nexport type ListItemProps = ComponentPropsWithRef<'li'>;\n\nexport const ListItem = ({ className, ...rest }: ListItemProps) => (\n  <li {...rest} className={cn(className, styles.li)} />\n);\n\nListItem.displayName = 'ListItem';\n","import { type ReactNode } from 'react';\n\nimport styles from './ErrorSummary.module.css';\nimport { createTexts, useTranslation } from '../../i18n';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { Paper } from '../layout';\nimport { List } from '../List';\nimport { Heading } from '../Typography';\n\nexport type ErrorSummaryProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  {\n    /**Custom overskrift. Bruker default heading tag hvis den er av typen `string`. */\n    heading?: ReactNode;\n  }\n>;\n\nexport const ErrorSummary = ({\n  heading: pHeading,\n  className,\n  style,\n  children,\n  id,\n  htmlProps,\n  ...props\n}: ErrorSummaryProps) => {\n  const { t } = useTranslation();\n  const heading =\n    typeof pHeading === 'string' ? (\n      <Heading level={2} typographyType=\"headingSmall\">\n        {pHeading}\n      </Heading>\n    ) : pHeading ? (\n      pHeading\n    ) : (\n      <Heading level={2} typographyType=\"headingSmall\">\n        {t(texts.toProceedCorrectErrors)}\n      </Heading>\n    );\n  return (\n    <Paper\n      {...getBaseHTMLProps(\n        id,\n        cn(className, styles.container),\n        style,\n        htmlProps,\n        props,\n      )}\n      background=\"surface-danger-default\"\n      padding=\"x1 x0.75 x0.25 x1\"\n    >\n      {heading}\n      <List>{children}</List>\n    </Paper>\n  );\n};\n\nErrorSummary.displayName = 'ErrorSummary';\n\nexport const texts = createTexts({\n  toProceedCorrectErrors: {\n    nb: 'For å gå videre må du rette opp følgende feil:',\n    no: 'For å gå videre må du rette opp følgende feil:',\n    nn: 'For å gå vidare må du rette opp følgjande feil:',\n    en: 'To proceed, you must correct the following errors:',\n    se: '-',\n  },\n});\n","import { type ElementType } from 'react';\n\nimport { getBaseHTMLProps } from '../../types';\nimport { ListItem } from '../List';\nimport { Link, type LinkProps } from '../Typography';\n\nexport type ErrorSummaryItemProps<T extends ElementType> = LinkProps<T>;\n\nexport const ErrorSummaryItem = <T extends ElementType>({\n  className,\n  style,\n  children,\n  id,\n  htmlProps,\n  ...props\n}: ErrorSummaryItemProps<T>) => {\n  return (\n    <ListItem>\n      <Link {...getBaseHTMLProps(id, className, style, htmlProps, props)}>\n        {children}\n      </Link>\n    </ListItem>\n  );\n};\n\nErrorSummaryItem.displayName = 'ErrorSummaryItem';\n","import { type HTMLAttributes, useId } from 'react';\n\nimport styles from './FavStar.module.css';\nimport { useControllableState } from '../../hooks/useControllableState';\nimport { createTexts, useTranslation } from '../../i18n';\nimport {\n  type BaseComponentPropsWithChildren,\n  createSizes,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { HiddenInput } from '../helpers';\nimport focusStyles from '../helpers/styling/focus.module.css';\nimport { Icon } from '../Icon';\nimport { StarFilledIcon, StarIcon } from '../Icon/icons';\n\nexport const FAVSTAR_SIZES = createSizes('medium', 'large');\ntype ComponentSize = (typeof FAVSTAR_SIZES)[number];\n\nexport type FavStarProps = BaseComponentPropsWithChildren<\n  HTMLElement,\n  {\n    /**\n     * Status på favorisering. `true` betyr at den er favorisert.\n     */\n    checked?: boolean;\n    /**\n     * Hvis du skal bruke `<FavStar>` uncontrolled så kan denne brukes til å sette den initielle \"favoritt\"-statusen.\n     * @default false\n     */\n    defaultChecked?: boolean;\n    /**\n     * Callback som blir kalt når brukeren endrer status på favorisering.\n     */\n    onChange?: (checked: boolean) => void;\n    /**\n     * Størrelse på `<FavStar>`. `'medium'` er den mest vanlige størrelsen.\n     * @default \"medium\"\n     */\n    size?: ComponentSize;\n  },\n  Omit<HTMLAttributes<HTMLElement>, 'onChange'>\n>;\n\nexport const FavStar = ({\n  id,\n  className,\n  style,\n  onChange,\n  checked: checkedProp,\n  defaultChecked,\n  size = 'medium',\n  htmlProps,\n  ...rest\n}: FavStarProps) => {\n  const { t } = useTranslation();\n  const { ...props } = getBaseHTMLProps(\n    id,\n    cn(className),\n    style,\n    htmlProps,\n    rest,\n  );\n  const generatedId = useId();\n  const [checked, setChecked] = useControllableState({\n    value: checkedProp,\n    defaultValue: defaultChecked ?? false,\n    onChange,\n  });\n  return (\n    <label\n      className={cn(\n        className,\n        styles.container,\n        styles[`container--${size}`],\n        focusStyles['has-focusable-input'],\n      )}\n      style={style}\n      htmlFor={id ?? generatedId}\n    >\n      <HiddenInput\n        {...props}\n        id={id ?? generatedId}\n        checked={checked}\n        onChange={e => setChecked(e.target.checked)}\n        type=\"checkbox\"\n        aria-label={props['aria-label'] ?? t(texts.favourite)}\n      />\n      <Icon iconSize={size} icon={StarIcon} className={styles.icon} />\n      <Icon\n        iconSize={size}\n        icon={StarFilledIcon}\n        className={cn(styles.icon, !checked && styles['icon--invisible'])}\n      />\n    </label>\n  );\n};\n\nFavStar.displayName = 'FavStar';\n\nconst texts = createTexts({\n  favourite: {\n    nb: 'Stjernemarker',\n    no: 'Stjernemarker',\n    nn: 'Stjernemerk',\n    en: 'Mark as favourite',\n    se: 'Merke favorihta',\n  },\n});\n",".container {\n  position: relative;\n  cursor: pointer;\n  display: inline-block;\n  color: var(--dds-color-icon-medium);\n  background-color: transparent;\n  border-radius: var(--dds-border-radius-button);\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      var(--dds-motion-micro-state) color,\n      var(--dds-motion-micro-state) background-color,\n      var(--dds-motion-micro-state) transform,\n      var(--dds-focus-transition);\n  }\n\n  &:hover {\n    color: var(--dds-color-icon-action-hover);\n    background-color: var(--dds-color-surface-hover-default);\n  }\n\n  &:has(input:checked) {\n    color: var(--dds-color-icon-action-resting);\n  }\n\n  &:hover:has(input:checked) {\n    color: var(--dds-color-icon-action-hover);\n  }\n\n  &:active {\n    .icon {\n      transform: scale(0.75);\n    }\n  }\n}\n\n.container--medium {\n  width: var(--dds-size-icon-medium);\n  height: var(--dds-size-icon-medium);\n}\n\n.container--large {\n  width: var(--dds-size-icon-large);\n  height: var(--dds-size-icon-large);\n}\n\n.icon {\n  color: currentColor;\n  position: absolute;\n  top: 0;\n  bottom: 0;\n  left: 0;\n  right: 0;\n  opacity: 1;\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      opacity var(--dds-motion-micro-state),\n      transform var(--dds-motion-micro-state);\n  }\n}\n\n.icon--invisible {\n  opacity: 0;\n}\n","import { useEffect, useState } from 'react';\n\nimport { CommentComponent } from './CommentComponent';\nimport { type FeedbackProps, type Rating } from './Feedback.types';\nimport { RatingComponent } from './RatingComponent';\nimport { createTexts, useTranslation } from '../../i18n';\nimport { Paragraph } from '../Typography';\n\nexport const Feedback = ({\n  layout = 'vertical',\n  ratingLabel,\n  positiveFeedbackLabel,\n  negativeFeedbackLabel,\n  ratingSubmittedTitle,\n  submittedTitle,\n  textAreaTip,\n  ratingValue: ratingProp,\n  feedbackTextValue: feedbackTextProp,\n  thumbUpTooltip,\n  thumbDownTooltip,\n  feedbackTextAreaExcluded = false,\n  loading = false,\n  isSubmitted: isSubmittedProp,\n  onRating,\n  onFeedbackTextChange,\n  onSubmit,\n}: FeedbackProps) => {\n  const { t } = useTranslation();\n  const [rating, setRating] = useState<Rating | null>(null);\n  const [feedbackText, setFeedbackText] = useState<string>();\n  const [isFeedbackSubmitted, setIsFeedbackSubmitted] =\n    useState<boolean>(false);\n  const tRatingLabel = ratingLabel ?? t(texts.ratingQuestion);\n  const tPositiveFeedbackLabel =\n    positiveFeedbackLabel ?? t(texts.improvalQuestion);\n  const tNegativeFeedbackLabel =\n    negativeFeedbackLabel ?? t(texts.improvalQuestion);\n  const tRatingSubmittedTitle = ratingSubmittedTitle ?? t(texts.thanks);\n  const tSubmittedTitle = submittedTitle ?? t(texts.thanks);\n  const tTextAreaTip = textAreaTip ?? t(texts.sensitiveInfo);\n  const tThumbUpTooltip = thumbUpTooltip ?? t(texts.good);\n  const tThumbDownTooltip = thumbDownTooltip ?? t(texts.bad);\n\n  useEffect(() => {\n    if (ratingProp !== undefined) setRating(ratingProp);\n  }, [ratingProp]);\n\n  useEffect(() => {\n    if (feedbackTextProp !== undefined) setFeedbackText(feedbackTextProp);\n  }, [feedbackTextProp]);\n\n  useEffect(() => {\n    if (isSubmittedProp !== undefined) setIsFeedbackSubmitted(isSubmittedProp);\n  }, [isSubmittedProp]);\n\n  const handleRatingChange = (newRating: Rating) => {\n    onRating?.(newRating);\n    if (onSubmit && feedbackTextAreaExcluded) onSubmit(newRating, '');\n\n    if (ratingProp === undefined) setRating(newRating);\n  };\n\n  const handleFeedbackTextChange = (newFeedbackText: string) => {\n    onFeedbackTextChange?.(newFeedbackText);\n    if (feedbackTextProp === undefined) setFeedbackText(newFeedbackText);\n  };\n\n  const handleSubmit = () => {\n    onSubmit?.(rating!, feedbackText ?? '');\n    if (isSubmittedProp === undefined) setIsFeedbackSubmitted(true);\n  };\n\n  if (rating === null && !isFeedbackSubmitted) {\n    return (\n      <RatingComponent\n        layout={layout}\n        ratingLabel={tRatingLabel}\n        loading={loading}\n        thumbUpTooltip={tThumbUpTooltip}\n        thumbDownTooltip={tThumbDownTooltip}\n        handleRatingChange={handleRatingChange}\n      />\n    );\n  }\n\n  if (!feedbackTextAreaExcluded && !isFeedbackSubmitted) {\n    return (\n      <CommentComponent\n        layout={layout}\n        rating={rating}\n        feedbackText={feedbackText}\n        positiveFeedbackLabel={tPositiveFeedbackLabel}\n        negativeFeedbackLabel={tNegativeFeedbackLabel}\n        ratingSubmittedTitle={tRatingSubmittedTitle}\n        textAreaTip={tTextAreaTip}\n        loading={loading}\n        handleSubmit={handleSubmit}\n        handleFeedbackTextChange={handleFeedbackTextChange}\n      />\n    );\n  }\n\n  return <Paragraph>{tSubmittedTitle}</Paragraph>;\n};\n\nconst texts = createTexts({\n  ratingQuestion: {\n    nb: 'Hva syns du om tjenesten?',\n    no: 'Hva syns du om tjenesten?',\n    nn: 'Kva synest du om tenesta?',\n    en: 'What do you think about the service?',\n    se: 'Maid oaivvildat bálvalusa birra?',\n  },\n  improvalQuestion: {\n    nb: 'Hva kan vi forbedre? (valgfritt)',\n    no: 'Hva kan vi forbedre? (valgfritt)',\n    nn: 'Kva kan vi forbetre? (valfritt)',\n    en: 'What can we improve? (optional)',\n    se: 'Maid sáhttit buoridit? (eavttolaš)',\n  },\n  thanks: {\n    nb: 'Tusen takk! Tilbakemeldingen din hjelper oss å forbedre løsningen',\n    no: 'Tusen takk! Tilbakemeldingen din hjelper oss å forbedre løsningen',\n    nn: 'Tusen takk! Tilbakemeldinga di hjelper oss å forbetre løysinga',\n    en: 'Thank you! Your feedback helps us improve the service',\n    se: 'Giitu! Du máhcahat veahkeha min buoridit čovdosa',\n  },\n  sensitiveInfo: {\n    nb: 'Ikke send inn personopplysninger eller annen sensitiv informasjon',\n    no: 'Ikke send inn personopplysninger eller annen sensitiv informasjon',\n    nn: 'Ikkje send inn personopplysningar eller annan sensitiv informasjon',\n    en: 'Do not submit personal data or other sensitive information',\n    se: 'Ale sádde persuvdnadieđuid dahje eará sensitiiva dieđuid',\n  },\n  good: {\n    nb: 'Bra',\n    no: 'Bra',\n    nn: 'Bra',\n    en: 'Good',\n    se: 'Buorre',\n  },\n  bad: {\n    nb: 'Dårlig',\n    no: 'Dårlig',\n    nn: 'Dårleg',\n    en: 'Bad',\n    se: 'Heajos',\n  },\n});\n",".rating-container {\n  display: flex;\n  gap: var(--dds-spacing-x1);\n}\n\n.rating-container--horizontal {\n  flex-direction: row;\n  align-items: center;\n}\n\n.rating-container--vertical {\n  flex-direction: column;\n  align-items: start;\n}\n\n.rating-submitted-title {\n  display: inline-flex;\n  align-items: center;\n  gap: var(--dds-spacing-x0-5);\n}\n\n.button {\n  border-radius: var(--dds-border-radius-button);\n  color: var(--dds-color-icon-medium);\n\n  &:hover {\n    background-color: var(--dds-color-surface-hover-default);\n    color: var(--dds-color-icon-action-hover);\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      background-color var(--dds-motion-micro-state),\n      color var(--dds-motion-micro-state),\n      var(--dds-focus-transition);\n  }\n}\n\n.button--horizontal {\n  width: var(--dds-size-icon-medium);\n  height: var(--dds-size-icon-medium);\n}\n\n.button--vertical {\n  width: var(--dds-size-icon-large);\n  height: var(--dds-size-icon-large);\n}\n","import {\n  type ComponentPropsWithRef,\n  useEffect,\n  useId,\n  useRef,\n  useState,\n} from 'react';\n\nimport styles from './TextArea.module.css';\nimport { useCombinedRef } from '../../hooks';\nimport {\n  cn,\n  derivativeIdGenerator,\n  spaceSeparatedIdListGenerator,\n} from '../../utils';\nimport { renderCharCounter } from '../helpers/CharCounter';\nimport {\n  type CommonInputProps,\n  getDefaultText,\n  getInputWidth,\n} from '../helpers/Input';\nimport inputStyles from '../helpers/Input/Input.module.css';\nimport { focusable } from '../helpers/styling/focus.module.css';\nimport { scrollbar } from '../helpers/styling/utilStyles.module.css';\nimport { renderInputMessage } from '../InputMessage';\nimport { Box } from '../layout';\nimport { renderLabel } from '../Typography/Label/Label.utils';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport type TextAreaProps = CommonInputProps & {\n  /** Spesifiserer om tegntelleren skal vises ved bruk av `maxLength` attributt.\n   * @default true\n   */\n  withCharacterCounter?: boolean;\n} & ComponentPropsWithRef<'textarea'>;\n\nexport const TextArea = ({\n  id,\n  value,\n  defaultValue,\n  onChange,\n  errorMessage,\n  required = false,\n  tip,\n  label,\n  readOnly,\n  'aria-required': ariaRequired = false,\n  'aria-describedby': ariaDescribedby,\n  maxLength,\n  withCharacterCounter = true,\n  className,\n  style,\n  width,\n  ref,\n  ...rest\n}: TextAreaProps) => {\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-textArea`;\n\n  const textAreaRef = useRef<HTMLTextAreaElement>(null);\n  const multiRef = useCombinedRef(ref, textAreaRef);\n  const [text, setText] = useState<string>(getDefaultText(value, defaultValue));\n\n  useEffect(() => {\n    if (textAreaRef?.current) {\n      const el = textAreaRef.current;\n      el.style.height = 'auto';\n      el.style.height = `${el.scrollHeight + 2}px`;\n    }\n  }, [text]);\n\n  const onChangeHandler: React.ChangeEventHandler<HTMLTextAreaElement> = (\n    event: React.ChangeEvent<HTMLTextAreaElement>,\n  ) => {\n    setText(event.target.value);\n\n    if (onChange) {\n      onChange(event);\n    }\n  };\n\n  const hasErrorMessage = !!errorMessage;\n  const hasMessage = hasErrorMessage || !!tip;\n  const tipId = derivativeIdGenerator(uniqueId, 'tip');\n  const errorMessageId = derivativeIdGenerator(uniqueId, 'errorMessage');\n  const characterCounterId = derivativeIdGenerator(\n    uniqueId,\n    'characterCounter',\n  );\n\n  const showRequiredStyling = required || !!ariaRequired;\n  const inputWidth = getInputWidth(width);\n\n  return (\n    <div className={cn(className, inputStyles.container)} style={{ ...style }}>\n      {renderLabel({ label, htmlFor: uniqueId, readOnly, showRequiredStyling })}\n      <Box\n        as=\"textarea\"\n        width={inputWidth}\n        ref={multiRef}\n        id={uniqueId}\n        onChange={onChangeHandler}\n        value={value}\n        defaultValue={defaultValue}\n        maxLength={maxLength}\n        required={required}\n        readOnly={readOnly}\n        aria-required={ariaRequired}\n        aria-describedby={spaceSeparatedIdListGenerator([\n          tip ? tipId : undefined,\n          errorMessage ? errorMessageId : undefined,\n          maxLength && withCharacterCounter ? characterCounterId : undefined,\n          ariaDescribedby,\n        ])}\n        aria-invalid={hasErrorMessage ? true : undefined}\n        className={cn(\n          inputStyles.input,\n          inputStyles['input--stateful'],\n          hasErrorMessage && inputStyles['input--stateful-danger'],\n          styles.textarea,\n          scrollbar,\n          typographyStyles['body-long-medium'],\n          focusable,\n        )}\n        {...rest}\n      />\n      <Box\n        display=\"flex\"\n        justifyContent={\n          withCharacterCounter\n            ? hasMessage\n              ? 'space-between'\n              : 'flex-end'\n            : undefined\n        }\n        width={withCharacterCounter ? inputWidth : undefined}\n      >\n        {renderInputMessage({ tip, tipId, errorMessage, errorMessageId })}\n        {renderCharCounter(\n          characterCounterId,\n          withCharacterCounter,\n          text.length,\n          maxLength,\n        )}\n      </Box>\n    </div>\n  );\n};\n\nTextArea.displayName = 'TextArea';\n",".textarea {\n  height: auto;\n  resize: vertical;\n  vertical-align: bottom;\n  padding-bottom: var(--dds-spacing-x0-5);\n}\n","import { useId } from 'react';\n\nimport styles from './CharCounter.module.css';\nimport { createTexts, useTranslation } from '../../../i18n';\nimport { Typography } from '../../Typography';\nimport { VisuallyHidden } from '../../VisuallyHidden';\n\ninterface CharCounterProps {\n  id: string;\n  current: number;\n  max: number;\n}\n\nexport function CharCounter(props: CharCounterProps) {\n  const { t } = useTranslation();\n  const { current, max, id } = props;\n\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-characterCounter`;\n\n  return (\n    <Typography\n      id={uniqueId}\n      className={styles.container}\n      as=\"div\"\n      typographyType=\"bodyShortXsmall\"\n      color=\"text-subtle\"\n    >\n      <span aria-hidden>\n        {current}/{max}\n      </span>\n      <VisuallyHidden>\n        {t(texts.charsWritten(current, max, max - current))}\n      </VisuallyHidden>\n    </Typography>\n  );\n}\n\nexport const renderCharCounter = (\n  id: string,\n  isShown: boolean,\n  textLength: number,\n  maxLength?: number,\n) => {\n  if (!!maxLength && Number.isInteger(maxLength) && maxLength > 0 && isShown)\n    return <CharCounter id={id} max={maxLength} current={textLength} />;\n};\n\nconst texts = createTexts({\n  charsWritten: (current, max, remain) => ({\n    nb: `${current} av ${max} tegn skrevet. ${remain} igjen.`,\n    no: `${current} av ${max} tegn skrevet. ${remain} igjen.`,\n    nn: `${current} av ${max} teikn skrivne. ${remain} att.`,\n    en: `${current} of ${max} characters used. ${remain} remaining.`,\n    se: `${current} ${max} mearkabustáva leat ${max} čállon ${remain}.`,\n  }),\n});\n",":where(.container) {\n  margin-left: auto;\n}\n","import { type Layout } from './Feedback.types';\n\nexport const getIconSize = (layout: Layout) =>\n  layout === 'vertical' ? 'large' : 'medium';\n","import styles from './Feedback.module.css';\nimport { type Layout, type Rating } from './Feedback.types';\nimport { createTexts, useTranslation } from '../../i18n';\nimport { Button } from '../Button';\nimport { Icon } from '../Icon';\nimport { ThumbDownFilledIcon, ThumbUpFilledIcon } from '../Icon/icons';\nimport { VStack } from '../layout';\nimport { TextArea } from '../TextArea';\nimport { Paragraph } from '../Typography';\nimport { getIconSize } from './utils';\n\ninterface CommentComponentType {\n  layout: Layout;\n  rating: Rating | null;\n  feedbackText: string | undefined;\n  positiveFeedbackLabel: string;\n  negativeFeedbackLabel: string;\n  ratingSubmittedTitle: string;\n  textAreaTip: string;\n  loading: boolean;\n  handleSubmit: () => void;\n  handleFeedbackTextChange: (newText: string) => void;\n}\n\nexport const CommentComponent = ({\n  layout,\n  rating,\n  feedbackText,\n  positiveFeedbackLabel,\n  negativeFeedbackLabel,\n  ratingSubmittedTitle,\n  textAreaTip,\n  loading,\n  handleSubmit,\n  handleFeedbackTextChange,\n}: CommentComponentType) => {\n  const { t } = useTranslation();\n  return (\n    <VStack gap=\"x1\">\n      <span className={styles['rating-submitted-title']}>\n        <Icon\n          icon={rating === 'positive' ? ThumbUpFilledIcon : ThumbDownFilledIcon}\n          color=\"icon-action-resting\"\n          iconSize={getIconSize(layout)}\n        />\n        <Paragraph>{ratingSubmittedTitle} </Paragraph>\n      </span>\n      <TextArea\n        value={feedbackText}\n        onChange={(e: React.ChangeEvent<HTMLTextAreaElement>) =>\n          handleFeedbackTextChange(e.target.value)\n        }\n        label={\n          rating === 'positive' ? positiveFeedbackLabel : negativeFeedbackLabel\n        }\n        tip={textAreaTip}\n      />\n\n      <Button\n        purpose=\"secondary\"\n        size=\"small\"\n        onClick={handleSubmit}\n        loading={loading}\n      >\n        {t(texts.send)}\n      </Button>\n    </VStack>\n  );\n};\n\nconst texts = createTexts({\n  send: {\n    nb: 'Send inn',\n    no: 'Send inn',\n    nn: 'Send inn',\n    en: 'Send',\n    se: 'Sádde',\n  },\n});\n","import { type Placement } from '@floating-ui/react-dom';\nimport {\n  type HTMLAttributes,\n  Children as ReactChildren,\n  type ReactElement,\n  type Ref,\n  cloneElement,\n  useEffect,\n  useId,\n  useRef,\n  useState,\n} from 'react';\n\nimport styles from './Tooltip.module.css';\nimport {\n  useCombinedRef,\n  useFloatPosition,\n  useMountTransition,\n  useOnKeyDown,\n} from '../../hooks';\nimport { type BaseComponentProps, getBaseHTMLProps } from '../../types';\nimport { cn, combineHandlers } from '../../utils';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\nimport { Box, Paper } from '../layout';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\ntype AnchorElement = ReactElement<\n  HTMLAttributes<HTMLElement> & {\n    ref: Ref<HTMLElement>;\n  }\n>;\n\ntype PickedHTMLAttributes = Pick<\n  HTMLAttributes<HTMLDivElement>,\n  'style' | 'onMouseLeave' | 'onMouseOver'\n>;\n\nexport type TooltipProps = BaseComponentProps<\n  HTMLDivElement,\n  {\n    /**Innhold i tooltip. */\n    text: string;\n    /**Plassering i forhold til anchor-elementet.\n     * @default \"bottom\"\n     */\n    placement?: Placement;\n    /**Anchor-elementet. */\n    children: AnchorElement;\n    /**Forsinkelse for når tooltip skal dukke opp. Oppgis i millisekunder.\n     * @default 100\n     */\n    delay?: number;\n    /**`id` for tooltip. */\n    tooltipId?: string;\n    /**Om tooltip skal alltid være i DOM, eller bli rendret først når den skal vises. */\n    keepMounted?: boolean;\n  } & PickedHTMLAttributes,\n  Omit<HTMLAttributes<HTMLDivElement>, 'children' | keyof PickedHTMLAttributes>\n>;\n\nexport const Tooltip = ({\n  text,\n  placement = 'bottom',\n  children,\n  tooltipId,\n  delay = 100,\n  style,\n  onMouseLeave,\n  onMouseOver,\n  keepMounted = true,\n  id,\n  ref,\n  className,\n  htmlProps,\n  ...rest\n}: TooltipProps) => {\n  const generatedId = useId();\n  const uniqueTooltipId = tooltipId ?? `${generatedId}-tooltip`;\n  const [open, setOpen] = useState(false);\n  const [inView, setInView] = useState(keepMounted ? false : true);\n  const { refs, styles: positionStyles } = useFloatPosition(undefined, {\n    placement,\n    offset: 4,\n  });\n  const tooltipRef = useRef<HTMLDivElement>(null);\n  const combinedRef = useCombinedRef(ref, refs.setFloating, tooltipRef);\n\n  const closeWhenNotInView: IntersectionObserverCallback = entries => {\n    const [entry] = entries;\n    if (entry.isIntersecting) {\n      setInView(true);\n    } else setInView(false);\n  };\n\n  useEffect(() => {\n    if (keepMounted) {\n      const options = {\n        root: null,\n        rootMargin: '0px',\n      };\n      const ref = tooltipRef.current;\n      const observer = new IntersectionObserver(closeWhenNotInView, options);\n\n      if (ref) observer.observe(ref);\n\n      return () => {\n        if (ref) observer.unobserve(ref);\n      };\n    }\n  }, [tooltipRef]);\n\n  useEffect(() => {\n    if (tooltipRef.current) {\n      window.addEventListener('scroll', () => {\n        closeTooltip();\n      });\n    }\n    return () => {\n      if (tooltipRef.current) {\n        window.removeEventListener('scroll', () => null);\n      }\n    };\n  }, []);\n\n  let timer: ReturnType<typeof setTimeout>;\n\n  useEffect(() => {\n    return () => {\n      clearTimeout(timer);\n    };\n  }, []);\n\n  useOnKeyDown(['Escape', 'Esc'], () => {\n    if (open) setOpen(false);\n  });\n\n  const closeTooltip = () => {\n    clearTimeout(timer);\n    setOpen(false);\n  };\n  const openTooltip = () => {\n    if (!open) {\n      clearTimeout(timer);\n      timer = setTimeout(() => setOpen(true), delay);\n    }\n  };\n\n  const hasTransitionedIn = useMountTransition(open, 500);\n  const isMounted = hasTransitionedIn && open;\n\n  const isTransientlyMounted = !keepMounted && isMounted;\n\n  const anchorElement = ReactChildren.only(\n    cloneElement(children, {\n      ref: refs.setReference,\n      onFocus: combineHandlers(openTooltip, children.props.onFocus),\n      onBlur: combineHandlers(closeTooltip, children.props.onBlur),\n      'aria-describedby':\n        isTransientlyMounted || keepMounted ? uniqueTooltipId : undefined,\n    }),\n  );\n\n  const openCn =\n    (keepMounted && open && inView) || isTransientlyMounted ? 'open' : 'closed';\n\n  const ariaHidden = keepMounted ? !open : undefined;\n\n  return (\n    <Box\n      {...getBaseHTMLProps(id, className, style, htmlProps, rest)}\n      width=\"fit-content\"\n      onMouseLeave={combineHandlers(closeTooltip, onMouseLeave)}\n      onMouseOver={combineHandlers(openTooltip, onMouseOver)}\n    >\n      {anchorElement}\n      {(!keepMounted && (open || hasTransitionedIn)) || keepMounted ? (\n        <Paper\n          id={uniqueTooltipId}\n          padding=\"x0.5\"\n          width=\"fit-content\"\n          textAlign=\"center\"\n          ref={combinedRef}\n          role=\"tooltip\"\n          aria-hidden={ariaHidden}\n          style={{ ...positionStyles.floating }}\n          elevation=\"small\"\n          border=\"border-subtle\"\n          className={cn(\n            styles.paper,\n            typographyStyles['body-short-medium'],\n            utilStyles['visibility-transition'],\n            utilStyles[`visibility-transition--${openCn}`],\n          )}\n        >\n          {text}\n        </Paper>\n      ) : null}\n    </Box>\n  );\n};\n\nTooltip.displayName = 'Tooltip';\n",".paper {\n  z-index: var(--dds-zindex-tooltip);\n}\n","import styles from './Feedback.module.css';\nimport { type Layout, type Rating } from './Feedback.types';\nimport { getIconSize } from './utils';\nimport { createTexts, useTranslation } from '../../i18n';\nimport { cn } from '../../utils';\nimport { InlineIconButton } from '../helpers/InlineIconButton';\nimport { ThumbDownIcon, ThumbUpIcon } from '../Icon/icons';\nimport { HStack } from '../layout';\nimport { Spinner } from '../Spinner';\nimport { Tooltip } from '../Tooltip';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\ninterface RatingComponentType {\n  layout: Layout;\n  ratingLabel: string;\n  loading: boolean;\n  thumbUpTooltip: string;\n  thumbDownTooltip: string;\n  handleRatingChange: (rating: Rating) => void;\n}\n\nexport const RatingComponent = ({\n  layout,\n  ratingLabel,\n  loading,\n  thumbUpTooltip,\n  thumbDownTooltip,\n  handleRatingChange,\n}: RatingComponentType) => {\n  const { t } = useTranslation();\n\n  const button = (rating: Rating, layout: Layout, tooltip: string) => (\n    <InlineIconButton\n      aria-label={tooltip}\n      onClick={() => handleRatingChange(rating)}\n      size={getIconSize(layout)}\n      icon={rating === 'positive' ? ThumbUpIcon : ThumbDownIcon}\n      color=\"icon-medium\"\n    ></InlineIconButton>\n  );\n\n  return (\n    <div\n      className={cn(\n        styles['rating-container'],\n        styles[`rating-container--${layout}`],\n      )}\n    >\n      <h2 className={typographyStyles['label-medium']}>{ratingLabel}</h2>\n      {loading ? (\n        <Spinner tooltip={t(texts.uploadingFeedback)} />\n      ) : (\n        <HStack gap=\"x1\">\n          <Tooltip text={thumbUpTooltip}>\n            {button('positive', layout, thumbUpTooltip)}\n          </Tooltip>\n          <Tooltip text={thumbDownTooltip}>\n            {button('negative', layout, thumbDownTooltip)}\n          </Tooltip>\n        </HStack>\n      )}\n    </div>\n  );\n};\n\nconst texts = createTexts({\n  uploadingFeedback: {\n    nb: 'Laster opp tilbakemelding...',\n    no: 'Laster opp tilbakemelding...',\n    nn: 'Lastar opp tilbakemelding...',\n    en: 'Uploading feedback...',\n    se: 'Viežžamin ruovttoluottadieđuid...',\n  },\n});\n",".container {\n  padding-block: 0;\n  padding-inline: 0;\n  margin-inline: 0;\n  border: none;\n}\n","import { container } from './Fieldset.module.css';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\n\nexport type FieldsetProps = BaseComponentPropsWithChildren<\n  HTMLFieldSetElement,\n  {\n    /** Om alle inputfelt skal bli `disabled`. */\n    disabled?: boolean;\n  }\n>;\n\nexport const Fieldset = ({\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: FieldsetProps) => (\n  <fieldset\n    {...getBaseHTMLProps(id, cn(className, container), style, htmlProps, rest)}\n  />\n);\n\nFieldset.displayName = 'Fieldset';\n","import {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { VStack } from '../layout';\n\nexport type FieldsetGroupProps = BaseComponentPropsWithChildren<HTMLDivElement>;\n\nexport const FieldsetGroup = ({\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: FieldsetGroupProps) => (\n  <VStack\n    gap=\"x1.5\"\n    {...getBaseHTMLProps(id, className, style, htmlProps, rest)}\n  />\n);\n\nFieldsetGroup.displayName = 'FieldsetGroup';\n","import { type ComponentPropsWithRef, useId } from 'react';\n\nimport { ErrorList } from './ErrorList';\nimport { File } from './File';\nimport styles from './FileUploader.module.css';\nimport {\n  type FileList,\n  type RemoteFile,\n  type UploadInfo,\n} from './FileUploader.types';\nimport { type FileUploaderHookProps, useFileUploader } from './useFileUploader';\nimport { createTexts, useTranslation } from '../../i18n';\nimport {\n  cn,\n  derivativeIdGenerator,\n  spaceSeparatedIdListGenerator,\n} from '../../utils';\nimport { Button } from '../Button';\nimport { HiddenInput, StylelessList } from '../helpers';\nimport { type InputProps } from '../helpers/Input';\nimport focusStyles from '../helpers/styling/focus.module.css';\nimport { UploadIcon } from '../Icon/icons';\nimport { renderInputMessage } from '../InputMessage';\nimport { Box, type ResponsiveProps, VStack } from '../layout';\nimport { Typography } from '../Typography';\nimport { renderLabel } from '../Typography/Label/Label.utils';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\nimport { VisuallyHidden } from '../VisuallyHidden';\nimport { type FileUploaderFile } from './fileUploaderReducer';\n\nexport type FileUploaderProps = {\n  /**Id til filopplasteren. */\n  id?: string;\n  /**Ledetekst for slippsonen. Denne teksten skal, av UU-hensyn, henge sammen med den usynlige teksten: \"velg fil med påfølgende knapp\"\n   * @default Dra og slipp filer her eller\n   */\n  dropAreaLabel?: string;\n  /**Ledetekst for opplastingsknappen.\n   * @default Velg fil\n   */\n  btnLabel?: string;\n  /**Om det er påkrevd med minst én fil. */\n  required?: boolean;\n  /**Callback for når fil-listen endres. */\n  onChange: (newFiles: FileList) => void;\n  /**Om drag-and-drop zone skal vises.\n   * @default true\n   */\n  withDragAndDrop?: boolean;\n  /**Om listen med opplastede filer skal skjules. Brukes kun hvis listen blir vist på egen måte. */\n  hideFileList?: boolean;\n  /** Map som lar konsumenten styre info om opplasting på hver fil: status og feilmelding. Bruker `deriveId` prop som nøkkel. Statusinfo vises i fillisten. */\n  fileStatusMap?: Map<string, UploadInfo>;\n  /** Funksjon som genererer en ID for hver fil. Brukes som nøkkel i `fileStatusMap` prop for å kunne mappe status på opplasting av hver fil og vise det i fillisten. */\n  deriveId?: (file: File | RemoteFile) => string;\n  /**\n   * Funksjon som lar brukeren prøve å laste opp en fil på nytt ved opplastlingfeil. Brukes sammen med `deriveId` og `fileStatusMap` props.\n   */\n  onRetry?: (fileId: string) => void;\n} & Pick<ResponsiveProps, 'width'> &\n  Partial<FileUploaderHookProps> &\n  Omit<ComponentPropsWithRef<'div'>, 'onChange' | 'id'> &\n  Pick<InputProps, 'tip' | 'label' | 'afterLabelContent'>;\n\nexport const FileUploader = (props: FileUploaderProps) => {\n  const {\n    id,\n    label,\n    dropAreaLabel,\n    btnLabel,\n    tip,\n    required = false,\n    withDragAndDrop = true,\n    initialFiles,\n    value,\n    accept,\n    maxFiles,\n    disabled,\n    readOnly,\n    onChange,\n    onKeyDown,\n    width = 'var(--dds-input-default-width)',\n    errorMessage,\n    hideFileList,\n    className,\n    afterLabelContent,\n    fileStatusMap,\n    deriveId,\n    onRetry,\n    ...rest\n  } = props;\n\n  const { t } = useTranslation();\n  const tDropAreaLabel = dropAreaLabel ?? t(texts.dragAndDropOr);\n  const tBtnLabel = btnLabel ?? t(texts.selectFile);\n\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-fileUploader`;\n\n  const {\n    state: { files: stateFiles, isDragActive, rootErrors },\n    getRootProps,\n    getInputProps,\n    getButtonProps,\n    removeFile,\n  } = useFileUploader<HTMLDivElement>({\n    id,\n    initialFiles,\n    value,\n    onChange,\n    accept,\n    disabled,\n    readOnly,\n    maxFiles,\n    errorMessage,\n    onKeyDown,\n  });\n  const hasLabel = label !== undefined;\n  const hasTip = tip !== undefined;\n  const hasRootErrors = rootErrors.length > 0;\n  const inactive = disabled || readOnly;\n\n  const labelId = derivativeIdGenerator(uniqueId, 'label');\n  const tipId = derivativeIdGenerator(uniqueId, 'tip');\n  const buttonId = derivativeIdGenerator(uniqueId, 'button');\n  const inputId = derivativeIdGenerator(uniqueId, 'input');\n  const fileListId = derivativeIdGenerator(uniqueId, 'file-list');\n  const fileListNameId = derivativeIdGenerator(uniqueId, 'file-list-name');\n\n  function toPublicFile(sf: FileUploaderFile): File | RemoteFile | null {\n    if (sf.file) return sf.file;\n    if (sf.url) return { name: sf.name, url: sf.url };\n    return null;\n  }\n\n  const fileListElements = stateFiles.map((stateFile, index) => {\n    const pf = toPublicFile(stateFile);\n    const id = deriveId\n      ? pf\n        ? deriveId(pf)\n        : stateFile.name\n      : (stateFile.url ?? stateFile.name);\n    const uploadStatus = fileStatusMap?.get(id)?.uploadStatus;\n    const errorMessage = fileStatusMap?.get(id)?.errorMessage;\n\n    return (\n      <File\n        key={stateFile.name}\n        parentId={uniqueId}\n        index={index}\n        file={stateFile}\n        isValid={stateFile.errors.length === 0}\n        removeFile={() => removeFile(stateFile)}\n        disabled={disabled}\n        readOnly={readOnly}\n        uploadStatus={uploadStatus}\n        errorMessage={errorMessage}\n        fileId={id}\n        onRetry={onRetry}\n      />\n    );\n  });\n\n  const rootErrorsList = rootErrors.map((e, index) => ({\n    id: derivativeIdGenerator(uniqueId, `error-${index}`),\n    message: e,\n  }));\n\n  const button = (\n    <Button\n      {...getButtonProps()}\n      id={buttonId}\n      size=\"medium\"\n      type=\"button\"\n      purpose=\"secondary\"\n      icon={UploadIcon}\n      htmlProps={{\n        'aria-invalid': hasRootErrors ? true : undefined,\n        'aria-describedby': spaceSeparatedIdListGenerator([\n          hasLabel ? labelId : undefined,\n          hasTip ? tipId : undefined,\n          ...rootErrorsList.map(e => e.id),\n        ]),\n      }}\n    >\n      {tBtnLabel}\n    </Button>\n  );\n\n  const input = (\n    <HiddenInput\n      {...getInputProps()}\n      className={cn(readOnly && focusStyles['focusable-sibling'])}\n      id={inputId}\n      data-testid=\"file-uploader-input\"\n      aria-describedby={fileListId}\n    />\n  );\n\n  return (\n    <Box\n      id={uniqueId}\n      className={cn(className, typographyStyles['body-short-medium'])}\n      width={width}\n      {...rest}\n    >\n      {renderLabel({\n        label,\n        id: labelId,\n        showRequiredStyling: required,\n        htmlFor: inputId,\n        readOnly,\n        afterLabelContent,\n      })}\n      {renderInputMessage({ tip, tipId })}\n      {inactive ? (\n        input\n      ) : withDragAndDrop ? (\n        <VStack\n          gap=\"x1\"\n          padding=\"x1.5 x1.5 x2 x1.5\"\n          {...getRootProps()}\n          className={cn(\n            styles['input-container'],\n            hasRootErrors && styles['input-container--with-errors'],\n            isDragActive && styles['input-container--drag-active'],\n          )}\n        >\n          {input}\n          {tDropAreaLabel}\n          <VisuallyHidden>{t(texts.uploadFileWithButton)}</VisuallyHidden>\n          {button}\n        </VStack>\n      ) : (\n        <Box padding=\"x 0\">\n          {input}\n          {button}\n        </Box>\n      )}\n      <ErrorList errors={rootErrorsList} />\n      {!hideFileList && (\n        <div\n          id={fileListId}\n          className={cn(\n            readOnly && focusStyles['focus-styled-sibling'],\n            readOnly && styles['readonly--file-list'],\n          )}\n        >\n          <VisuallyHidden id={fileListNameId}>\n            {t(texts.uploadedFiles)}\n          </VisuallyHidden>\n          {inactive && fileListElements.length === 0 ? (\n            <Typography\n              italic\n              as=\"span\"\n              color={disabled ? 'text-subtle' : 'text-medium'}\n            >\n              {t(texts.noFiles)}\n            </Typography>\n          ) : (\n            <StylelessList aria-labelledby={fileListNameId}>\n              {fileListElements}\n            </StylelessList>\n          )}\n        </div>\n      )}\n    </Box>\n  );\n};\n\nFileUploader.displayName = 'FileUploader';\n\nconst texts = createTexts({\n  dragAndDropOr: {\n    nb: 'Dra og slipp filer her eller',\n    no: 'Dra og slipp filer her eller',\n    nn: 'Dra og slepp filer her eller',\n    en: 'Drag and drop files here or',\n    se: 'Sirdde fiillaid dása dahje',\n  },\n  selectFile: {\n    nb: 'Velg fil',\n    no: 'Velg fil',\n    nn: 'Velg fil',\n    en: 'Sekect file',\n    se: 'Vállje fiilla',\n  },\n  uploadFileWithButton: {\n    nb: 'last opp en fil med den påfølgende knappen',\n    no: 'last opp en fil med den påfølgende knappen',\n    nn: 'last opp ei fil med den påfølgjande knappen',\n    en: 'upload using the following button',\n    se: 'viečča fiilla čuovvovaš boaluin',\n  },\n  noFiles: {\n    nb: 'Ingen filer.',\n    no: 'Ingen filer.',\n    nn: 'Ingen filer.',\n    en: 'No files.',\n    se: 'Eai leat fiillat.',\n  },\n  uploadedFiles: {\n    nb: 'Opplastede filer',\n    no: 'Opplastede filer',\n    nn: 'Opplasta filer',\n    en: 'Uploaded files',\n    se: 'Vižžon fiillat',\n  },\n});\n","import { StylelessList } from '../helpers';\nimport { InputMessage, renderInputMessage } from '../InputMessage';\n\ninterface ErrorListProps {\n  errors: Array<{\n    id: string | undefined;\n    message: string;\n  }>;\n}\n\nexport const ErrorList = (props: ErrorListProps) => {\n  const { errors } = props;\n\n  if (errors.length < 1) {\n    return null;\n  }\n\n  if (errors.length === 1) {\n    return renderInputMessage({\n      errorMessage: errors[0].message,\n      errorMessageId: errors[0].id,\n    });\n  }\n\n  return (\n    <StylelessList>\n      {errors.map(({ id, message }) => {\n        return (\n          <li>\n            <InputMessage key={id} id={id} messageType=\"error\">\n              {message}\n            </InputMessage>\n          </li>\n        );\n      })}\n    </StylelessList>\n  );\n};\n","import { type ReactNode, useEffect, useState } from 'react';\n\nimport { ErrorList } from './ErrorList';\nimport styles from './FileUploader.module.css';\nimport { type FileUploaderFile } from './fileUploaderReducer';\nimport { createTexts, useTranslation } from '../../i18n';\nimport {\n  cn,\n  derivativeIdGenerator,\n  spaceSeparatedIdListGenerator,\n} from '../../utils';\nimport { Button } from '../Button';\nimport { Icon } from '../Icon';\nimport {\n  CheckCircledIcon,\n  CloseIcon,\n  ErrorIcon,\n  RefreshIcon,\n} from '../Icon/icons';\nimport { Box, HStack, Paper } from '../layout';\nimport { Spinner } from '../Spinner';\nimport { Link, Typography } from '../Typography';\nimport { type UploadInfo } from './FileUploader.types';\n\ntype FileProps = {\n  parentId: string;\n  index: number;\n  isValid: boolean;\n  file: FileUploaderFile;\n  removeFile: () => void;\n  disabled?: boolean;\n  readOnly?: boolean;\n  fileId: string;\n  onRetry?: (id: string) => void;\n} & UploadInfo;\n\nexport const File = (props: FileProps) => {\n  const { t } = useTranslation();\n  const {\n    parentId,\n    index,\n    file: stateFile,\n    removeFile,\n    isValid,\n    uploadStatus,\n    errorMessage,\n    disabled,\n    readOnly,\n    onRetry,\n    fileId,\n  } = props;\n\n  const [fileUrl, setFileUrl] = useState<string>();\n\n  useEffect(() => {\n    if (stateFile.url) {\n      setFileUrl(stateFile.url);\n    } else if (stateFile.file) {\n      const url = URL.createObjectURL(stateFile.file);\n      setFileUrl(url);\n      return () => URL.revokeObjectURL(url);\n    }\n  }, [stateFile.file, stateFile.url]);\n\n  const errorsList = stateFile.errors.map((e, errorIndex) => ({\n    id: derivativeIdGenerator(parentId, `file-${index}-error-${errorIndex}`),\n    message: e,\n  }));\n\n  if (errorMessage)\n    errorsList.push({\n      id: derivativeIdGenerator(\n        parentId,\n        `file-${index}-error-${errorsList.length}`,\n      ),\n      message: errorMessage,\n    });\n\n  const inactive = disabled || readOnly;\n\n  type DisplayStatus = 'valid' | 'invalid' | 'uploading' | 'success' | 'error';\n  let displayStatus: DisplayStatus;\n\n  if (!isValid) displayStatus = 'invalid';\n  else if (uploadStatus) displayStatus = uploadStatus;\n  else displayStatus = 'valid';\n  const isInvalid = displayStatus === 'invalid';\n  const hasError = displayStatus === 'error' || isInvalid;\n  const hasRetry = displayStatus === 'error' && onRetry;\n\n  let statusIndicator: ReactNode;\n  switch (displayStatus) {\n    case 'uploading':\n      statusIndicator = <Spinner size=\"var(--dds-size-icon-component)\" />;\n      break;\n    case 'success':\n    case 'valid':\n      statusIndicator = (\n        <Icon\n          icon={CheckCircledIcon}\n          iconSize=\"component\"\n          className={styles[`file__icon--valid`]}\n        />\n      );\n      break;\n    case 'invalid':\n    case 'error':\n      statusIndicator = (\n        <Icon\n          icon={ErrorIcon}\n          iconSize=\"component\"\n          className={styles[`file__icon--invalid`]}\n        />\n      );\n      break;\n  }\n  return (\n    <li>\n      <Paper\n        marginBlock=\"x0.5 0\"\n        padding=\"x0.5 x1\"\n        border={\n          disabled\n            ? 'border-subtle'\n            : !hasError\n              ? 'border-default'\n              : 'border-danger'\n        }\n        background={inactive ? 'surface-field-disabled' : 'surface-subtle'}\n        className={cn(hasError && styles['file--invalid'])}\n      >\n        <HStack alignItems=\"center\" justifyContent=\"space-between\" gap=\"x0.75\">\n          <Typography\n            as=\"span\"\n            color={\n              disabled ? 'text-subtle' : readOnly ? 'text-medium' : undefined\n            }\n            className={cn(styles.file__name)}\n          >\n            {fileUrl ? (\n              <Link href={fileUrl} target=\"_blank\">\n                {stateFile.name}\n              </Link>\n            ) : (\n              stateFile.name\n            )}\n          </Typography>\n          {!inactive && (\n            <>\n              {statusIndicator}\n              <Button\n                size=\"xsmall\"\n                purpose=\"tertiary\"\n                type=\"button\"\n                onClick={removeFile}\n                icon={CloseIcon}\n                aria-label={t(texts.removeFile(stateFile.name))}\n                htmlProps={{\n                  'aria-invalid': !isValid ? true : undefined,\n                  'aria-errormessage': !isValid\n                    ? t(texts.invalidFile)\n                    : undefined,\n                  'aria-describedby': spaceSeparatedIdListGenerator(\n                    errorsList.map(e => e.id),\n                  ),\n                }}\n              />\n            </>\n          )}\n        </HStack>\n        {hasRetry && (\n          <Box\n            as={Button}\n            marginBlock=\"x0.75 0\"\n            size=\"small\"\n            purpose=\"secondary\"\n            onClick={() => onRetry(fileId)}\n            icon={RefreshIcon}\n          >\n            {t(texts.tryAgain)}\n          </Box>\n        )}\n      </Paper>\n      <ErrorList errors={errorsList} />\n    </li>\n  );\n};\n\nconst texts = createTexts({\n  removeFile: file => ({\n    nb: `Fjern fil ${file}`,\n    no: `Fjern fil ${file}`,\n    nn: `Fjern fil ${file}`,\n    en: `Remove file ${file}`,\n    se: `Sihku filla ${file}`,\n  }),\n  invalidFile: {\n    nb: 'Ugyldig fil',\n    no: 'Ugyldig fil',\n    nn: 'Ugyldig fil',\n    en: 'Invalid file',\n    se: 'Fámohis fiila',\n  },\n  tryAgain: {\n    nb: 'Prøv igjen',\n    no: 'Prøv igjen',\n    nn: 'Prøv igjen',\n    en: 'Try again',\n    se: 'Geahččal fas',\n  },\n});\n",".input-container {\n  box-sizing: border-box;\n  border: 2px dashed;\n  border-color: var(--dds-color-border-default);\n  background-color: var(--dds-color-surface-default);\n  border-radius: var(--dds-border-radius-surface);\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      background-color var(--dds-motion-micro-state),\n      border-color var(--dds-motion-micro-state);\n  }\n}\n\n.input-container--with-errors {\n  border-color: var(--dds-color-border-danger);\n}\n\n.input-container--drag-active {\n  border-color: var(--dds-color-border-action-hover);\n  background-color: var(--dds-color-surface-hover-default);\n}\n\n.file--invalid {\n  box-shadow: inset 0 0 0 1px var(--dds-color-border-danger);\n}\n\n.file__icon--invalid {\n  color: var(--dds-color-icon-on-danger-default);\n}\n\n.file__icon--valid {\n  color: var(--dds-color-icon-on-success-default);\n}\n\n.file__name {\n  word-break: break-all;\n  width: 100%;\n}\n\n.readonly--file-list {\n  @media (prefers-reduced-motion: no-preference) {\n    transition: var(--dds-focus-transition);\n  }\n}\n","import {\n  type FileWithPath,\n  fromEvent as getFilesFromEvent,\n} from 'file-selector';\nimport type React from 'react';\nimport {\n  type ButtonHTMLAttributes,\n  type ComponentProps,\n  type HTMLAttributes,\n  type InputHTMLAttributes,\n  type Ref,\n} from 'react';\nimport { useCallback, useEffect, useMemo, useReducer, useRef } from 'react';\n\nimport { type FileList, type FileUploaderAccept } from './FileUploader.types';\nimport {\n  isEventWithFiles,\n  isFileAccepted,\n  preventDefaults,\n} from './FileUploader.utils';\nimport {\n  type FileUploaderFile,\n  type RootErrorList,\n  fileUploaderReducer,\n} from './fileUploaderReducer';\nimport { createTexts, useTranslation } from '../../i18n';\nimport { readOnlyChangeHandler, readOnlyKeyDownHandler } from '../../utils';\nimport { type InputProps } from '../helpers/Input';\n\nexport type FileUploaderHookProps = {\n  /**Dersom komponenten skal styres internt. Utgangspunktet for filene som har blitt lastet opp. */\n  initialFiles: FileList | undefined;\n  /**Dersom komponenten styres utenfra. Filene som har blitt lastet opp. */\n  value: FileList | undefined;\n  /**Callback for når fil-listen endres. */\n  onChange: (newFiles: FileList) => void;\n  /**Filendelser eller mime-typer filopplasteren skal akseptere. */\n  accept: Array<FileUploaderAccept> | undefined;\n  /**Om filopplasteren er avslått eller ikke. */\n  disabled?: boolean;\n  /**Om filopplasteren er read-only. */\n  readOnly?: boolean;\n  /**Maks antall filer som tillates. */\n  maxFiles: number | undefined;\n  onKeyDown?: ComponentProps<'input'>['onKeyDown'];\n} & Pick<InputProps, 'errorMessage' | 'id'>;\n\nconst calcRootErrors = (\n  maxFilesErrorMessage: string,\n  files: Array<FileUploaderFile>,\n  maxFiles?: number,\n  errorMessage?: string,\n): RootErrorList => {\n  const errors: RootErrorList = [];\n\n  if (maxFiles && maxFiles >= 1 && files.length > maxFiles) {\n    errors.push(maxFilesErrorMessage + maxFiles);\n  }\n\n  if (errorMessage) {\n    errors.push(errorMessage);\n  }\n\n  return errors;\n};\n\nexport const useFileUploader = <TRootElement extends HTMLElement>(\n  props: FileUploaderHookProps,\n) => {\n  const {\n    initialFiles,\n    value,\n    onChange,\n    onKeyDown,\n    accept,\n    maxFiles,\n    disabled,\n    readOnly,\n    errorMessage,\n  } = props;\n\n  const { t } = useTranslation();\n\n  const rootRef = useRef<TRootElement>(null);\n  const inputRef = useRef<HTMLInputElement>(null);\n  const buttonRef = useRef<HTMLButtonElement>(null);\n  const isControlled = !!value;\n\n  const initialFileUploaderFiles = useMemo(\n    () =>\n      (initialFiles ?? []).map<FileUploaderFile>(f => {\n        if (f instanceof File)\n          return {\n            file: f,\n            name: f.name,\n            errors: [],\n          };\n        return {\n          url: f.url,\n          name: f.name,\n          errors: [],\n        };\n      }),\n    [initialFiles],\n  );\n\n  const [state, dispatch] = useReducer(fileUploaderReducer, {\n    files: initialFileUploaderFiles,\n    isFocused: false,\n    isFileDialogActive: false,\n    isDragActive: false,\n    dragCounter: 0,\n    rootErrors: calcRootErrors(\n      t(texts.invalidFileAmount),\n      initialFileUploaderFiles,\n      maxFiles,\n      errorMessage,\n    ),\n  });\n\n  const { files: stateFiles } = state;\n\n  useEffect(() => {\n    if (isControlled) {\n      const files = value.map<FileUploaderFile>(file => {\n        if (file instanceof File) {\n          const accepted = isFileAccepted(file, accept);\n          return {\n            name: file.name,\n            file,\n            errors: accepted ? [] : [t(texts.invalidFileType)],\n          };\n        }\n        return {\n          url: file.url,\n          name: file.name,\n          errors: [],\n        };\n      });\n\n      dispatch({\n        type: 'onSetFiles',\n        payload: files,\n      });\n    }\n  }, [value, isControlled, accept, dispatch]);\n\n  useEffect(() => {\n    dispatch({\n      type: 'setRootErrors',\n      payload: calcRootErrors(\n        t(texts.invalidFileAmount),\n        stateFiles,\n        maxFiles,\n        errorMessage,\n      ),\n    });\n  }, [dispatch, stateFiles, maxFiles, errorMessage]);\n\n  const onRootFocus = useCallback(\n    () => dispatch({ type: 'focus' }),\n    [dispatch],\n  );\n\n  const onRootBlur = useCallback(() => dispatch({ type: 'blur' }), [dispatch]);\n\n  const onRootDragEnter = useCallback(\n    (evt: React.DragEvent<TRootElement>) => {\n      preventDefaults(evt);\n      if (isEventWithFiles(evt)) {\n        dispatch({ type: 'dragEnter' });\n      }\n    },\n    [dispatch],\n  );\n\n  const onRootDragOver = useCallback((evt: React.DragEvent<TRootElement>) => {\n    preventDefaults(evt);\n\n    const hasFiles = isEventWithFiles(evt);\n    if (hasFiles && evt.dataTransfer) {\n      try {\n        evt.dataTransfer.dropEffect = 'copy';\n      } catch {} /* eslint-disable-line no-empty */\n    }\n  }, []);\n\n  const onRootDragLeave = useCallback(\n    (evt: React.DragEvent<TRootElement>) => {\n      preventDefaults(evt);\n      dispatch({ type: 'dragLeave' });\n    },\n    [dispatch],\n  );\n\n  const setFiles = useCallback(\n    async (\n      evt: React.DragEvent<TRootElement> | React.ChangeEvent<HTMLInputElement>,\n    ) => {\n      evt.preventDefault();\n      if (isEventWithFiles(evt)) {\n        const existingFileNames = stateFiles.map(f => f.name);\n\n        // TODO: Fiks cast her.\n        const filesFromEvent = (await getFilesFromEvent(\n          evt,\n        )) as Array<FileWithPath>;\n\n        const newFiles = filesFromEvent\n          .filter(f => !existingFileNames.includes(f.name))\n          .map<FileUploaderFile>(file => ({\n            file,\n            name: file.name,\n            errors: isFileAccepted(file, accept)\n              ? []\n              : [t(texts.invalidFileType)],\n          }))\n          .concat(stateFiles);\n\n        const mergedFiles = [\n          ...stateFiles\n            .filter(f => f.url)\n            .map(f => ({ name: f.name, url: f.url! })),\n\n          ...newFiles.filter(f => f.file).map(f => f.file!),\n        ];\n\n        onChange(mergedFiles);\n\n        if (!isControlled) {\n          dispatch({\n            type: 'onSetFiles',\n            payload: newFiles,\n          });\n        }\n      }\n    },\n    [\n      stateFiles,\n      isControlled,\n      accept,\n      errorMessage,\n      maxFiles,\n      onChange,\n      dispatch,\n    ],\n  );\n\n  const openFileDialog = useCallback(() => {\n    if (inputRef.current) {\n      inputRef.current.value = '';\n      inputRef.current.click();\n    }\n  }, [inputRef]);\n\n  const removeFile = useCallback(\n    (file: FileUploaderFile) => {\n      const newFiles = [...stateFiles];\n      newFiles.splice(stateFiles.indexOf(file), 1);\n\n      const mergedFiles = [\n        ...newFiles\n          .filter(f => f.url)\n          .map(f => ({ name: f.name, url: f.url! })),\n        ...newFiles.filter(f => f.file).map(f => f.file!),\n      ];\n\n      onChange(mergedFiles);\n\n      if (!isControlled) {\n        dispatch({\n          type: 'onRemoveFile',\n          payload: newFiles,\n        });\n      }\n    },\n    [stateFiles, isControlled, maxFiles, errorMessage, onChange, dispatch],\n  );\n\n  const getRootProps = useCallback(\n    (): HTMLAttributes<TRootElement> & {\n      ref: Ref<TRootElement>;\n    } => ({\n      onBlur: onRootBlur,\n      onFocus: onRootFocus,\n      onDragEnter: onRootDragEnter,\n      onDragOver: onRootDragOver,\n      onDragLeave: onRootDragLeave,\n      onDrop: setFiles,\n      ref: rootRef,\n    }),\n    [\n      onRootBlur,\n      onRootFocus,\n      onRootDragEnter,\n      onRootDragOver,\n      setFiles,\n      rootRef,\n      disabled,\n    ],\n  );\n\n  const getButtonProps = useCallback(\n    (): ButtonHTMLAttributes<HTMLButtonElement> & {\n      ref: Ref<HTMLButtonElement>;\n    } => ({\n      onClick: openFileDialog,\n      ref: buttonRef,\n    }),\n    [openFileDialog, buttonRef],\n  );\n\n  const getInputProps = useCallback(\n    (): InputHTMLAttributes<HTMLInputElement> & {\n      ref: Ref<HTMLInputElement>;\n    } => ({\n      type: 'file',\n      tabIndex: readOnly ? undefined : -1,\n      ref: inputRef,\n      disabled,\n      'aria-hidden': readOnly ? undefined : true,\n      onChange: readOnlyChangeHandler<HTMLInputElement>(readOnly, setFiles),\n      onKeyDown: readOnlyKeyDownHandler('file', readOnly, onKeyDown),\n      readOnly,\n      multiple: !maxFiles || maxFiles > 1,\n      ...(accept ? { accept: accept.join(',') } : {}),\n    }),\n    [inputRef, setFiles, maxFiles, accept],\n  );\n\n  return {\n    state,\n    getRootProps,\n    getInputProps,\n    getButtonProps,\n    removeFile,\n  };\n};\n\nconst texts = createTexts({\n  invalidFileType: {\n    nb: 'Ugyldig filtype',\n    no: 'Ugyldig filtype',\n    nn: 'Ugyldig filtype',\n    en: 'Invalid file type',\n    se: 'Fámohis filašladja',\n  },\n  invalidFileAmount: {\n    nb: 'For mange filer. Maksimalt antall er ',\n    no: 'For mange filer. Maksimalt antall er ',\n    nn: 'For mange filer. Maksimalt antall er ',\n    en: 'Too many files. The maximum allowed is ',\n    se: 'Menddo ollu fiillat. Maksimála lohku lea ',\n  },\n});\n","/* Kopiert fra https://github.com/react-dropzone/attr-accept.\n * attr-accept har problemer med ESM output, så vi tar heller bare inn koden direkte.\n * Dette er all kode som ligger i pakken, og den har ikke vært endret på fire år, så\n * det skal nok gå fint å \"vedlikeholde\" dette selv.\n */\n\n/**\n * Check if the provided file type should be accepted by the input with accept attribute.\n * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Input#attr-accept\n *\n * Inspired by https://github.com/enyo/dropzone\n *\n * @param file {File} https://developer.mozilla.org/en-US/docs/Web/API/File\n * @param acceptedFiles {string}\n * @returns {boolean}\n */\nexport function isAccepted(\n  file: File,\n  acceptedFiles: Array<string> | string | undefined,\n): boolean {\n  if (file && acceptedFiles) {\n    const acceptedFilesArray = Array.isArray(acceptedFiles)\n      ? acceptedFiles\n      : acceptedFiles.split(',');\n    const fileName = file.name || '';\n    const mimeType = (file.type || '').toLowerCase();\n    const baseMimeType = mimeType.split('/')[0] || '';\n\n    return acceptedFilesArray.some(type => {\n      const validType = type.trim().toLowerCase();\n      if (validType.charAt(0) === '.') {\n        return fileName.toLowerCase().endsWith(validType);\n      } else if (validType.endsWith('/*')) {\n        // This is something like a image/* mime type\n        return baseMimeType === validType.slice(0, -2);\n      }\n      return mimeType === validType;\n    });\n  }\n  return true;\n}\n","import { isAccepted } from './attr-accept';\n\nexport const preventDefaults = (event: React.BaseSyntheticEvent) => {\n  event.preventDefault();\n  event.stopPropagation();\n};\n\nexport const isDragEvent = (\n  event: unknown,\n): event is React.DragEvent<unknown> => {\n  const asDragEvent = event as React.DragEvent<unknown>;\n\n  return asDragEvent.dataTransfer !== undefined;\n};\n\nexport const isEventWithFiles = (\n  event: React.DragEvent<unknown> | React.ChangeEvent<HTMLInputElement>,\n): boolean => {\n  if (!isDragEvent(event)) {\n    return event.target.files !== null && event.target.files !== undefined;\n  }\n\n  return (\n    event.dataTransfer.types.includes('Files') ||\n    event.dataTransfer.types.includes('application/x-moz-file')\n  );\n};\n\nexport const isFileAccepted = (\n  file: File,\n  accept: Array<string> | undefined,\n): boolean => {\n  return accept !== undefined ? isAccepted(file, accept) : true;\n};\n\n// export const isFileSizeAccepted = (\n//   file: File,\n//   minSize: number | undefined,\n//   maxSize: number | undefined\n// ): boolean => {};\n","import { type FileWithPath } from 'file-selector';\nimport { type Reducer } from 'react';\n\nexport interface FileUploaderFile {\n  file?: FileWithPath;\n  name: string;\n  errors: Array<string>;\n  url?: string;\n}\n\nexport type RootErrorList = Array<string>;\n\nexport type FileUploaderAction =\n  | { type: 'focus' }\n  | { type: 'blur' }\n  | { type: 'dragEnter' }\n  | { type: 'dragLeave' }\n  | {\n      type: 'onSetFiles';\n      payload: Array<FileUploaderFile>;\n    }\n  | {\n      type: 'onRemoveFile';\n      payload: Array<FileUploaderFile>;\n    }\n  | {\n      type: 'setRootErrors';\n      payload: RootErrorList;\n    };\n\nexport interface FileUploaderState {\n  files: Array<FileUploaderFile>;\n  isFocused: boolean;\n  isFileDialogActive: boolean;\n  dragCounter: number;\n  isDragActive: boolean;\n  rootErrors: Array<string>;\n}\n\nexport const fileUploaderReducer: Reducer<\n  FileUploaderState,\n  FileUploaderAction\n> = (state, action) => {\n  switch (action.type) {\n    case 'focus':\n      return { ...state, isFocused: true };\n    case 'blur':\n      return { ...state, isFocused: false };\n    case 'dragEnter':\n      return {\n        ...state,\n        dragCounter: state.dragCounter + 1,\n        isDragActive: true,\n      };\n    case 'dragLeave': {\n      const newCounter = Math.max(0, state.dragCounter - 1);\n      return {\n        ...state,\n        dragCounter: newCounter,\n        isDragActive: newCounter > 0,\n      };\n    }\n    case 'onSetFiles':\n      return {\n        ...state,\n        dragCounter: 0,\n        isDragActive: false,\n        files: action.payload,\n      };\n    case 'onRemoveFile':\n      return {\n        ...state,\n        files: action.payload,\n      };\n    case 'setRootErrors':\n      return {\n        ...state,\n        rootErrors: action.payload,\n      };\n    default:\n      return state;\n  }\n};\n",".container {\n  padding-block-start: var(--dds-spacing-x3);\n  padding-block-end: var(--dds-spacing-x6);\n\n  @media only screen and (min-width: 960px) {\n    padding-block: var(--dds-spacing-x4);\n  }\n}\n\n.left {\n  display: flex;\n  flex-direction: column;\n  gap: var(--dds-spacing-x4);\n}\n\n.list {\n  display: flex;\n  flex-direction: column;\n  gap: var(--dds-spacing-x1-5);\n}\n\n.list-group {\n  display: flex;\n  flex-direction: column;\n  gap: var(--dds-spacing-x1-5);\n}\n\n.socials-group {\n  display: flex;\n  flex-direction: column;\n  gap: var(--dds-spacing-x1);\n}\n\n.socials-list {\n  display: flex;\n  gap: var(--dds-spacing-x1-5);\n}\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './Footer.module.css';\nimport { cn } from '../../utils';\nimport { Contrast } from '../layout';\n\nexport type FooterProps = ComponentPropsWithRef<'footer'>;\n\nexport const Footer = ({ className, ...rest }: FooterProps) => (\n  <Contrast as=\"footer\" className={cn(className, styles.container)} {...rest} />\n);\n","import { Heading, type HeadingProps } from '../Typography';\n\nexport type FooterListHeaderProps = Omit<HeadingProps, 'level' | 'withMargins'>;\n\nexport const FooterListHeader = (props: FooterListHeaderProps) => (\n  <Heading level={2} typographyType=\"headingSmall\" {...props} />\n);\n","import { type ComponentPropsWithRef } from 'react';\n\nimport Logo from './norges_domstoler_logo.svg';\nimport { Box } from '../layout/Box/Box';\n\ntype HideBreakpoint = 'xs' | 'sm' | 'md';\n\nexport type FooterLogoProps = ComponentPropsWithRef<'img'> & {\n  /**Brekkepunkt når logoen skal skjules på mindre skjerm. */\n  hideBreakpoint?: HideBreakpoint;\n};\n\nexport const FooterLogo = ({ hideBreakpoint, ...rest }: FooterLogoProps) => {\n  return (\n    <Box\n      hideBelow={hideBreakpoint ? hideBreakpoint : undefined}\n      width=\"fit-content\"\n    >\n      <img\n        height={80}\n        width={151}\n        alt=\"norges domstoler\"\n        src={Logo}\n        {...rest}\n      />\n    </Box>\n  );\n};\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './Footer.module.css';\nimport { cn } from '../../utils';\nimport { StylelessList } from '../helpers';\n\nexport type FooterListProps = ComponentPropsWithRef<'ul'>;\n\nexport const FooterList = ({ className, ...rest }: FooterListProps) => (\n  <StylelessList className={cn(className, styles.list)} {...rest} />\n);\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './Footer.module.css';\nimport { cn } from '../../utils';\nimport { StylelessList } from '../helpers';\n\nexport type FooterSocialsListProps = ComponentPropsWithRef<'ul'>;\n\nexport const FooterSocialsList = ({\n  className,\n  ...rest\n}: FooterSocialsListProps) => (\n  <StylelessList className={cn(className, styles['socials-list'])} {...rest} />\n);\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './Footer.module.css';\nimport { cn } from '../../utils';\n\nexport type FooterSocialsGroupProps = ComponentPropsWithRef<'div'>;\n\nexport const FooterSocialsGroup = ({\n  className,\n  ...rest\n}: FooterSocialsGroupProps) => (\n  <div className={cn(className, styles['socials-group'])} {...rest} />\n);\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './Footer.module.css';\nimport { cn } from '../../utils';\n\nexport type FooterListGroupProps = ComponentPropsWithRef<'div'>;\n\nexport const FooterListGroup = ({\n  className,\n  ...rest\n}: FooterListGroupProps) => (\n  <div className={cn(className, styles['list-group'])} {...rest} />\n);\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './Footer.module.css';\nimport { cn } from '../../utils';\n\nexport type FooterLeftProps = ComponentPropsWithRef<'div'>;\n\nexport const FooterLeft = ({ className, ...rest }: FooterLeftProps) => (\n  <div className={cn(className, styles['left'])} {...rest} />\n);\n","import { Paper, type PaperProps } from '../layout';\n\nexport type FormSummaryProps = Pick<\n  PaperProps,\n  | 'children'\n  | 'htmlProps'\n  | 'ref'\n  | 'id'\n  | 'style'\n  | 'className'\n  | 'padding'\n  | 'paddingBlock'\n  | 'paddingInline'\n  | 'margin'\n  | 'marginBlock'\n  | 'marginInline'\n  | 'width'\n  | 'minWidth'\n  | 'maxWidth'\n>;\n\nexport const FormSummary = (props: FormSummaryProps) => {\n  const { children, padding } = props;\n  return (\n    <Paper\n      {...props}\n      background=\"surface-default\"\n      border=\"border-subtle\"\n      padding={padding ?? 'x0.5 x0.5 x1 x0.75'}\n    >\n      {children}\n    </Paper>\n  );\n};\n",".dd {\n  display: block;\n}\n\n.field:not(:last-child) {\n  margin-bottom: var(--dds-spacing-x0-75);\n  padding-bottom: var(--dds-spacing-x0-75);\n  border-bottom: 1px solid var(--dds-color-border-subtle);\n}\n\n.dd:has(dl) {\n  margin-top: var(--dds-spacing-x0-75);\n}\n\n.dd .field {\n  padding-left: var(--dds-spacing-x0-75);\n}\n","import { type ComponentPropsWithRef } from 'react';\n\nimport { createTexts, useTranslation } from '../../i18n';\nimport { type ExtractStrict } from '../../types';\nimport { cn } from '../../utils';\nimport {\n  DescriptionList,\n  DescriptionListDesc,\n  type DescriptionListDescProps,\n  type DescriptionListProps,\n  DescriptionListTerm,\n  type DescriptionListTermProps,\n} from '../DescriptionList';\nimport { InputMessage, type InputMessageProps } from '../InputMessage';\nimport { Box, HStack } from '../layout';\nimport { Spinner } from '../Spinner';\nimport { Heading, type HeadingProps } from '../Typography';\nimport styles from './FormSummary.module.css';\nimport { Button, type ButtonProps, type ButtonPurpose } from '../Button';\nimport { EditIcon } from '../Icon/icons';\nimport { VisuallyHidden } from '../VisuallyHidden';\n\ntype FormSummaryHeaderProps = ComponentPropsWithRef<'div'>;\n\nexport function FormSummaryHeader({ ...props }: FormSummaryHeaderProps) {\n  return (\n    <HStack\n      {...props}\n      justifyContent=\"space-between\"\n      flexWrap=\"wrap\"\n      alignItems=\"center\"\n      gap=\"x0.75\"\n      marginBlock=\"0 x0.75\"\n    />\n  );\n}\n\ntype FormSummaryHeadingProps = {\n  /** Heading level. */\n  level?: Exclude<HeadingProps['level'], 1>;\n} & Omit<HeadingProps, 'level'>;\n\nexport function FormSummaryHeading({\n  level = 2,\n  ...props\n}: FormSummaryHeadingProps) {\n  return <Heading level={level} {...props} />;\n}\n\ntype FormSummaryEditButtonProps = {\n  /**Formål med knappen. */\n  purpose?: ExtractStrict<ButtonPurpose, 'secondary' | 'tertiary'>;\n} & Omit<ButtonProps, 'purpose'>;\n\nexport function FormSummaryEditButton({\n  purpose = 'secondary',\n  ...props\n}: FormSummaryEditButtonProps) {\n  return <Button icon={EditIcon} purpose={purpose} size=\"xsmall\" {...props} />;\n}\n\ntype FormSummaryFieldsProps = Omit<DescriptionListProps, 'direction'>;\n\nexport function FormSummaryFields({ ...props }: FormSummaryFieldsProps) {\n  return <DescriptionList {...props} />;\n}\n\ntype FormSummaryFieldProps = ComponentPropsWithRef<'div'>;\n\nexport function FormSummaryField({\n  className,\n  ...props\n}: FormSummaryFieldProps) {\n  return <div {...props} className={cn(styles.field, className)} />;\n}\n\ntype FormSummaryLabelProps = DescriptionListTermProps;\n\nexport function FormSummaryLabel(props: FormSummaryLabelProps) {\n  return <DescriptionListTerm {...props} />;\n}\n\ntype FormSummaryValueProps = {\n  /**Hvis data hentes fra ekstern kilde kan feltet vise innlastning. */\n  isLoading?: boolean;\n} & DescriptionListDescProps;\n\nexport function FormSummaryValue({\n  className,\n  isLoading,\n  children,\n  ...props\n}: FormSummaryValueProps) {\n  return (\n    <DescriptionListDesc {...props} className={cn(className, styles.dd)}>\n      {isLoading ? <Spinner size=\"1.5em\" /> : children}\n    </DescriptionListDesc>\n  );\n}\n\nexport function FormSummaryEmptyValue() {\n  const { t } = useTranslation();\n  return (\n    <span>\n      <span aria-hidden>-</span>{' '}\n      <VisuallyHidden> {t(texts.noValue)} </VisuallyHidden>\n    </span>\n  );\n}\n\ntype FormSummaryErrorProps = Omit<InputMessageProps, 'messageType' | 'message'>;\n\nexport function FormSummaryError({ ...props }: FormSummaryErrorProps) {\n  return (\n    <Box marginBlock=\"x0.25 0\">\n      <InputMessage {...props} messageType=\"error\" />\n    </Box>\n  );\n}\n\nconst texts = createTexts({\n  noValue: {\n    nb: 'Ikke fylt ut',\n    no: 'Ikke fylt ut',\n    nn: 'Ikkje fylt ut',\n    en: 'Not filled out',\n    se: 'Ii leat devdon',\n  },\n});\n","import { type ReactNode, useState } from 'react';\n\nimport styles from './GlobalMessage.module.css';\nimport { useTranslation } from '../../i18n';\nimport { commonTexts } from '../../i18n/commonTexts';\nimport {\n  type BaseComponentProps,\n  createPurposes,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { Button } from '../Button';\nimport { Icon, type SvgIcon } from '../Icon';\nimport { CloseIcon, ErrorIcon, InfoIcon, WarningIcon } from '../Icon/icons';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport const G_MESSAGE_PURPOSES = createPurposes('info', 'warning', 'danger');\n\nexport type GlobalMessagePurpose = (typeof G_MESSAGE_PURPOSES)[number];\n\nexport const icons: Record<GlobalMessagePurpose, SvgIcon> = {\n  info: InfoIcon,\n  danger: ErrorIcon,\n  warning: WarningIcon,\n};\n\nexport type GlobalMessageProps = BaseComponentProps<\n  HTMLDivElement,\n  {\n    /**Melding. */\n    children?: ReactNode;\n    /**Formålet med meldingen. Påvirker styling.\n     * @default \"info\"\n     */\n    purpose?: GlobalMessagePurpose;\n    /**Indikerer om meldingen skal være lukkbar. */\n    closable?: boolean;\n    /**Ekstra logikk å kjøre når meldingen lukkes. */\n    onClose?: () => void;\n  }\n>;\n\nexport const GlobalMessage = ({\n  purpose = 'info',\n  closable,\n  onClose,\n  children,\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: GlobalMessageProps) => {\n  const { t } = useTranslation();\n  const [isClosed, setClosed] = useState(false);\n\n  return !isClosed ? (\n    <div\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          styles.container,\n          styles[`container--${purpose}`],\n          typographyStyles['body-short-medium'],\n        ),\n        style,\n        htmlProps,\n        rest,\n      )}\n    >\n      <div\n        className={cn(styles.content, closable && styles['content--closable'])}\n      >\n        <Icon\n          icon={icons[purpose]}\n          iconSize=\"component\"\n          className={styles.icon}\n        />\n        {children}\n      </div>\n\n      {closable && (\n        <Button\n          icon={CloseIcon}\n          purpose=\"tertiary\"\n          onClick={() => {\n            setClosed(true);\n            onClose?.();\n          }}\n          size=\"small\"\n          aria-label={t(commonTexts.closeMessage)}\n        />\n      )}\n    </div>\n  ) : null;\n};\n\nGlobalMessage.displayName = 'GlobalMessage';\n",".container {\n  border-bottom: 2px solid;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  box-sizing: border-box;\n  width: 100%;\n  padding: 0 var(--dds-spacing-x1);\n}\n\n.container--info {\n  border-color: var(--dds-color-border-info);\n  background-color: var(--dds-color-surface-info-default);\n\n  .icon {\n    color: var(--dds-color-icon-on-info-default);\n  }\n}\n\n.container--danger {\n  border-color: var(--dds-color-border-danger);\n  background-color: var(--dds-color-surface-danger-default);\n\n  .icon {\n    color: var(--dds-color-icon-on-danger-default);\n  }\n}\n\n.container--warning {\n  border-color: var(--dds-color-border-warning);\n  background-color: var(--dds-color-surface-warning-default);\n\n  .icon {\n    color: var(--dds-color-icon-on-warning-default);\n  }\n}\n\n.content {\n  display: flex;\n  align-items: center;\n  padding: var(--dds-spacing-x0-75) var(--dds-spacing-x1-5)\n    var(--dds-spacing-x0-75) 0;\n}\n\n.content--closable {\n  padding-right: var(--dds-spacing-x0-75);\n}\n\n.icon {\n  margin-right: var(--dds-spacing-x0-75);\n}\n",".button {\n  display: inline;\n  vertical-align: middle;\n  &:focus-visible {\n    z-index: var(--dds-zindex-absolute-element);\n  }\n}\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './InlineButton.module.css';\nimport { cn } from '../../utils';\nimport { StylelessButton } from '../helpers';\nimport focusStyles from '../helpers/styling/focus.module.css';\nimport { Icon, type SvgIcon } from '../Icon';\nimport { type BaseTypographyProps, getColorCn } from '../Typography';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport type InlineButtonProps = {\n  /**\n   * Enestående ikon; bruk av denne propen sørge for riktig visning av ikonet.\n   */\n  icon?: SvgIcon;\n} & Pick<BaseTypographyProps, 'color'> &\n  Omit<ComponentPropsWithRef<'button'>, 'color'>;\n\nexport const InlineButton = ({\n  className,\n  color,\n  icon,\n  children,\n  ...rest\n}: InlineButtonProps) => (\n  <StylelessButton\n    className={cn(\n      className,\n      focusStyles.focusable,\n      typographyStyles.a,\n      styles.button,\n      getColorCn(color),\n    )}\n    {...rest}\n  >\n    {icon ? <Icon icon={icon} iconSize=\"inherit\" /> : children}\n  </StylelessButton>\n);\n","import { useRef } from 'react';\n\nimport { useCombinedRef } from '../../../hooks';\nimport { InlineEditContextProvider } from '../InlineEdit.context';\nimport { type InlineEditTextAreaProps } from '../InlineEdit.types';\nimport { InlineField } from '../InlineField';\n\nexport const InlineEditTextArea = ({\n  onSetValue,\n  emptiable,\n  value,\n  onFocus,\n  onChange,\n  onBlur,\n  ref,\n  ...rest\n}: InlineEditTextAreaProps) => {\n  const textareaRef = useRef<HTMLTextAreaElement>(null);\n  const combinedRef = useCombinedRef(ref, textareaRef);\n  return (\n    <InlineEditContextProvider\n      onSetValue={onSetValue}\n      emptiable={emptiable}\n      inputRef={textareaRef}\n      value={value}\n      onFocus={onFocus}\n      onChange={onChange}\n      onBlur={onBlur}\n    >\n      <InlineField elementType=\"textarea\" {...rest} ref={combinedRef} />\n    </InlineEditContextProvider>\n  );\n};\n","import {\n  type ChangeEvent,\n  type FocusEvent,\n  type FocusEventHandler,\n  type ReactNode,\n  type RefObject,\n  createContext,\n  useContext,\n  useState,\n} from 'react';\n\nimport { type EditElement } from './InlineEdit.types';\nimport { useOnClickOutside, useOnKeyDown } from '../../hooks';\n\nexport interface InlineEditContextType {\n  onChange: (e: ChangeEvent<EditElement>) => void;\n  onBlur: (e: FocusEvent<EditElement>) => void;\n  onFocus: (e: FocusEvent<EditElement>) => void;\n  isEditing: boolean;\n  value: string | number | ReadonlyArray<string> | undefined;\n  emptiable: boolean;\n}\n\ntype InlineEditContextProviderType = Partial<InlineEditContextType> & {\n  children: ReactNode;\n  onSetValue?: (value: string) => void;\n  inputRef: RefObject<HTMLElement | null>;\n};\n\nexport const InlineEditContext = createContext<Partial<InlineEditContextType>>(\n  {},\n);\n\nexport const useInlineEditContext = () => useContext(InlineEditContext);\n\nexport const InlineEditContextProvider = (\n  props: InlineEditContextProviderType,\n) => {\n  const {\n    emptiable,\n    value,\n    onSetValue,\n    onChange,\n    onFocus,\n    onBlur,\n    inputRef,\n    children,\n  } = props;\n  const [editingValue, setEditingValue] = useState<typeof value>(value ?? '');\n  const [isEditing, setIsEditing] = useState(false);\n\n  const onChangeHandler = (e: ChangeEvent<EditElement>) => {\n    setEditingValue(e.target.value);\n    onChange?.(e);\n  };\n\n  const onFocusHandler: FocusEventHandler<EditElement> = (\n    e: FocusEvent<EditElement>,\n  ) => {\n    setIsEditing(true);\n    onFocus?.(e);\n  };\n\n  const onBlurHandler: FocusEventHandler<EditElement> = (\n    e: FocusEvent<EditElement>,\n  ) => {\n    if (!emptiable && e.target.value.trim() === '') {\n      setEditingValue(value);\n    } else {\n      onSetValue?.(e.target.value);\n    }\n    setIsEditing(false);\n    onBlur?.(e);\n  };\n\n  const onExitHandler = () => {\n    if (\n      inputRef?.current === document.activeElement &&\n      document.activeElement instanceof HTMLElement\n    ) {\n      setIsEditing(false);\n      document.activeElement.blur();\n    }\n  };\n\n  useOnKeyDown(['Enter'], () => onExitHandler());\n  useOnKeyDown(['Escape'], () => onExitHandler());\n  useOnClickOutside(inputRef, () => onExitHandler());\n\n  return (\n    <InlineEditContext\n      value={{\n        onChange: onChangeHandler,\n        onBlur: onBlurHandler,\n        onFocus: onFocusHandler,\n        isEditing,\n        value: editingValue,\n        emptiable,\n      }}\n    >\n      {children}\n    </InlineEditContext>\n  );\n};\n\nInlineEditContextProvider.displayName = 'InlineEditContextProvider';\n","import { type Ref, useId, useRef } from 'react';\n\nimport { useCombinedRef } from '../../hooks';\nimport {\n  cn,\n  derivativeIdGenerator,\n  spaceSeparatedIdListGenerator,\n} from '../../utils';\nimport inputStyles from '../helpers/Input/Input.module.css';\nimport { Icon } from '../Icon';\nimport { ChevronDownIcon, EditIcon } from '../Icon/icons';\nimport { renderInputMessage } from '../InputMessage';\nimport { Box } from '../layout';\nimport { useInlineEditContext } from './InlineEdit.context';\nimport styles from './InlineEdit.module.css';\nimport {\n  type EditElementTag,\n  type ElementFromTag,\n  type InlineEditHTMLProps,\n  type InlineFieldProps,\n} from './InlineEdit.types';\nimport {\n  inlineEditVisuallyHidden,\n  inlineInputCns,\n  inlineSelectCns,\n  inlineTextareaCns,\n} from './InlineEdit.utils';\nimport { useTranslation } from '../../i18n';\nimport { commonTexts } from '../../i18n/commonTexts';\nimport { createClearChangeEvent } from '../../utils/createClearChangeEvent';\nimport { ClearButton } from '../helpers/ClearButton/ClearButton';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\n\nexport function InlineField<T extends EditElementTag>(\n  props: InlineFieldProps<T>,\n) {\n  const {\n    elementType,\n    id,\n    error,\n    errorMessage,\n    width = '140px',\n    hideIcon,\n    ref,\n    className,\n    'aria-describedby': ariaDescribedby,\n    ...rest\n  } = props;\n\n  const { onBlur, onChange, onFocus, isEditing, value, emptiable } =\n    useInlineEditContext();\n  const { t } = useTranslation();\n\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-InlineEdit`;\n  const hasErrorMessage = !!errorMessage;\n  const hasErrorState = !!error || hasErrorMessage;\n  const errorMessageId = derivativeIdGenerator(uniqueId, 'errorMessage');\n  const descId = derivativeIdGenerator(uniqueId, 'desc');\n  const hasValue = !!value;\n\n  const inputRef = useRef<ElementFromTag<T>>(null);\n  const combinedRef = useCombinedRef<ElementFromTag<T>>(ref, inputRef);\n\n  const clearInput = () => {\n    const clearChangeEvent =\n      createClearChangeEvent<HTMLSelectElement>(uniqueId);\n    onChange?.(clearChangeEvent);\n  };\n\n  const describedBy = spaceSeparatedIdListGenerator([\n    hasErrorMessage ? errorMessageId : undefined,\n    descId,\n    ariaDescribedby,\n  ]);\n\n  const commonProps = {\n    id: uniqueId,\n    'aria-describedby': describedBy,\n    'aria-invalid': hasErrorState,\n    value,\n    onBlur,\n    onChange,\n    onFocus,\n  };\n\n  const cnArgs = [hasErrorState, !isEditing && !hideIcon];\n  const iconSize = 'component';\n\n  const renderElement = () => {\n    switch (elementType) {\n      case 'input':\n        return (\n          <input\n            {...(rest as InlineEditHTMLProps<'input'>)}\n            ref={combinedRef as Ref<HTMLInputElement>}\n            {...commonProps}\n            className={cn(className, ...inlineInputCns(...cnArgs))}\n          />\n        );\n      case 'textarea':\n        return (\n          <textarea\n            {...(rest as InlineEditHTMLProps<'textarea'>)}\n            ref={combinedRef as Ref<HTMLTextAreaElement>}\n            {...commonProps}\n            className={cn(className, ...inlineTextareaCns(...cnArgs))}\n          />\n        );\n      case 'select':\n        return (\n          <>\n            <select\n              {...(rest as InlineEditHTMLProps<'select'>)}\n              ref={combinedRef as Ref<HTMLSelectElement>}\n              {...commonProps}\n              className={cn(className, ...inlineSelectCns(...cnArgs, hasValue))}\n            />\n            {hasValue && emptiable && (\n              <ClearButton\n                aria-label={t(commonTexts.clearSelect)}\n                onClick={clearInput}\n                size=\"small\"\n                className={styles['clear-button']}\n              />\n            )}\n            <Icon\n              iconSize={iconSize}\n              icon={ChevronDownIcon}\n              className={cn(\n                className,\n                inputStyles['input-group__absolute-el-right--xsmall'],\n                utilStyles['center-absolute-y'],\n              )}\n            />\n          </>\n        );\n      default:\n        return null;\n    }\n  };\n  return (\n    <Box position=\"relative\" width={width}>\n      <div className={inputStyles['input-group']}>\n        {!isEditing && !hideIcon && (\n          <Icon\n            iconSize={iconSize}\n            icon={EditIcon}\n            className={cn(\n              className,\n              inputStyles['input-group__absolute-el--small'],\n              elementType === 'textarea'\n                ? styles['edit-icon-textarea']\n                : utilStyles['center-absolute-y'],\n            )}\n          />\n        )}\n        {renderElement()}\n      </div>\n      {inlineEditVisuallyHidden(descId, emptiable)}\n      {renderInputMessage({ errorMessage, errorMessageId })}\n    </Box>\n  );\n}\n",".inline-input {\n  width: 100%;\n  border-width: 1px;\n  border-color: transparent;\n  background-color: transparent;\n  border-radius: var(--dds-border-radius-input);\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      background-color var(--dds-motion-micro-state),\n      border-color var(--dds-motion-micro-state),\n      var(--dds-focus-transition);\n  }\n\n  &:focus {\n    background-color: var(--dds-color-surface-default);\n  }\n}\n\n.inline-select {\n  appearance: none;\n  text-overflow: ellipsis;\n  cursor: pointer;\n}\n\n.inline-input:hover:enabled:read-write:not(:focus),\n.inline-select:hover:enabled:not(:focus) {\n  border-color: transparent;\n  box-shadow: none;\n  background-color: var(--dds-color-surface-hover-default);\n}\n\n.inline-input--danger {\n  border-color: var(--dds-color-border-danger);\n  box-shadow: 0 0 0 1px var(--dds-color-border-danger);\n}\n\n.inline-textarea {\n  resize: vertical;\n  height: initial;\n}\n\n/* Sentrerer ikonet i forhold til første linjen med tekst */\n.edit-icon-textarea {\n  position: absolute;\n  top: var(--dds-spacing-x0-25);\n}\n\n.clear-button {\n  right: calc(var(--dds-spacing-x0-75) + var(--dds-size-icon-small));\n}\n","import styles from './InlineEdit.module.css';\nimport { createTexts, useTranslation } from '../../i18n';\nimport inputStyles from '../helpers/Input/Input.module.css';\nimport focusStyles, { focusable } from '../helpers/styling/focus.module.css';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\nimport { VisuallyHidden } from '../VisuallyHidden';\n\nexport const inlineEditVisuallyHidden = (id: string, clearable?: boolean) => {\n  const { t } = useTranslation();\n  return (\n    <VisuallyHidden id={id}>\n      {t(texts.inlineEditInfo)} {!clearable && t(texts.notClearable)}\n    </VisuallyHidden>\n  );\n};\n\nconst texts = createTexts({\n  inlineEditInfo: {\n    nb: 'Escape, Enter eller Tab for å lagre.',\n    no: 'Escape, Enter eller Tab for å lagre.',\n    nn: 'Escape, Enter eller Tab for å lagra.',\n    en: 'Escape, Enter or Tab to save.',\n    se: 'Escape, Enter dahje Tab go áiggut vurket',\n  },\n  notClearable: {\n    nb: 'Innskrivingsfeltet kan ikke tømmes.',\n    no: 'Innskrivingsfeltet kan ikke tømmes.',\n    nn: 'Innskrivingsfeltet kan ikkje tømmast.',\n    en: 'Input field cannot be cleared.',\n    se: 'Čállinbáikki ii sáhte sihkut',\n  },\n});\n\nexport const inlineEditCns = (\n  hasErrorState?: boolean,\n  showEditingIcon?: boolean,\n) => [\n  styles['inline-input'],\n  inputStyles['input--xsmall'],\n  hasErrorState && styles['inline-input--danger'],\n  showEditingIcon && inputStyles['input-with-icon--small'],\n];\n\nexport const inlineInputCns = (\n  hasErrorState?: boolean,\n  showEditingIcon?: boolean,\n) => [\n  ...inlineEditCns(hasErrorState, showEditingIcon),\n  typographyStyles['body-short-medium'],\n  focusable,\n];\n\nexport const inlineTextareaCns = (\n  hasErrorState?: boolean,\n  showEditingIcon?: boolean,\n) => [\n  ...inlineInputCns(hasErrorState, showEditingIcon),\n  typographyStyles['body-long-medium'],\n  styles['inline-textarea'],\n  utilStyles.scrollbar,\n];\n\nexport const inlineSelectCns = (\n  hasErrorState?: boolean,\n  showEditingIcon?: boolean,\n  hasValue?: boolean,\n) => [\n  ...inlineEditCns(hasErrorState, showEditingIcon),\n  typographyStyles['body-short-medium'],\n  focusStyles['focusable-focus'],\n  inputStyles['input-with-el-right--small'],\n  hasValue && inputStyles['input-with-icon-and-button-right--small'],\n  styles['inline-select'],\n];\n","import { type ChangeEvent } from 'react';\n\n/**\n * Lager en change-event som kan resette verdien i et input-felt.\n * Dette vil resultere i en event som har: event.target.value = ''.\n *\n * @param elementId Id'en til et gitt input-felt\n * @returns En change-event som har en tom streng som target value\n */\nexport function createClearChangeEvent<\n  T extends HTMLInputElement | HTMLSelectElement,\n>(elementId: string): ChangeEvent<T> {\n  const element = document.getElementById(elementId) as T;\n\n  if (!element) {\n    throw new Error(`Element by id '${elementId}' not found.`);\n  }\n\n  if (element instanceof HTMLInputElement) {\n    element.value = '';\n  } else if (element instanceof HTMLSelectElement) {\n    element.selectedIndex = 0;\n  }\n\n  const clearChangeEvent: ChangeEvent<typeof element> = {\n    target: element,\n    currentTarget: element,\n    bubbles: true,\n    cancelable: false,\n    defaultPrevented: false,\n    eventPhase: 0,\n    isTrusted: false,\n    preventDefault: () => null,\n    stopPropagation: () => null,\n    nativeEvent: new Event('input'),\n    persist: () => null,\n    type: 'change',\n    timeStamp: Date.now(),\n    isDefaultPrevented: () => false,\n    isPropagationStopped: () => false,\n  };\n\n  return clearChangeEvent;\n}\n","import { useRef } from 'react';\n\nimport { useCombinedRef } from '../../../hooks';\nimport { InlineEditContextProvider } from '../InlineEdit.context';\nimport { type InlineEditInputProps } from '../InlineEdit.types';\nimport { InlineField } from '../InlineField';\n\nexport const InlineEditInput = ({\n  onSetValue,\n  emptiable,\n  value,\n  onFocus,\n  onChange,\n  onBlur,\n  ref,\n  ...rest\n}: InlineEditInputProps) => {\n  const inputRef = useRef<HTMLInputElement>(null);\n  const combinedRef = useCombinedRef(ref, inputRef);\n  return (\n    <InlineEditContextProvider\n      onSetValue={onSetValue}\n      emptiable={emptiable}\n      inputRef={inputRef}\n      value={value}\n      onFocus={onFocus}\n      onChange={onChange}\n      onBlur={onBlur}\n    >\n      <InlineField elementType=\"input\" {...rest} ref={combinedRef} />\n    </InlineEditContextProvider>\n  );\n};\n","import { useRef } from 'react';\n\nimport { useCombinedRef } from '../../../hooks';\nimport { InlineEditContextProvider } from '../InlineEdit.context';\nimport { type InlineEditSelectProps } from '../InlineEdit.types';\nimport { InlineField } from '../InlineField';\n\nexport const InlineEditSelect = ({\n  onSetValue,\n  emptiable,\n  value,\n  onFocus,\n  onChange,\n  onBlur,\n  ref,\n  ...rest\n}: InlineEditSelectProps) => {\n  const inputRef = useRef<HTMLSelectElement>(null);\n  const combinedRef = useCombinedRef(ref, inputRef);\n  return (\n    <InlineEditContextProvider\n      onSetValue={onSetValue}\n      emptiable={emptiable}\n      inputRef={inputRef}\n      value={value}\n      onFocus={onFocus}\n      onChange={onChange}\n      onBlur={onBlur}\n    >\n      <InlineField elementType=\"select\" {...rest} ref={combinedRef} />\n    </InlineEditContextProvider>\n  );\n};\n","import { useState } from 'react';\n\nimport styles from './InternalHeader.module.css';\nimport { type InternalHeaderProps } from './InternalHeader.types';\nimport { NavigationItem } from './NavigationItem';\nimport { createTexts, useTranslation } from '../../i18n';\nimport { getBaseHTMLProps } from '../../types';\nimport { cn } from '../../utils';\nimport { Button } from '../Button';\nimport { StylelessList } from '../helpers';\nimport { focusable } from '../helpers/styling/focus.module.css';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\nimport { MenuIcon, MoreVerticalIcon, PersonIcon } from '../Icon/icons';\nimport { Box } from '../layout';\nimport { styleUpToBreakpoint } from '../layout/common/utils';\nimport { ShowHide } from '../layout/ShowHide';\nimport {\n  OverflowMenu,\n  OverflowMenuButton,\n  type OverflowMenuButtonProps,\n  OverflowMenuDivider,\n  OverflowMenuGroup,\n  OverflowMenuLink,\n  type OverflowMenuLinkProps,\n  OverflowMenuList,\n  OverflowMenuSpan,\n} from '../OverflowMenu';\nimport { Typography } from '../Typography';\n\nexport const InternalHeader = (props: InternalHeaderProps) => {\n  const {\n    applicationDesc,\n    applicationName,\n    applicationHref,\n    smallScreenBreakpoint,\n    navItems,\n    contextMenuItems,\n    currentPageHref,\n    user,\n    onCurrentPageChange,\n    id,\n    className,\n    style,\n    htmlProps,\n    ...rest\n  } = props;\n\n  const { t } = useTranslation();\n\n  const [currentPage, setCurrentPage] = useState<string | undefined>(\n    currentPageHref,\n  );\n\n  const handleCurrentPageChange = (href: string) => {\n    setCurrentPage(href);\n    onCurrentPageChange?.();\n  };\n\n  const hasNavigationElements = !!navItems && navItems.length > 0;\n  const hasContextMenuElements =\n    !!contextMenuItems && contextMenuItems.length > 0;\n  const hasSmallScreenBreakpoint = !!smallScreenBreakpoint;\n  const hasNavInContextMenu = hasSmallScreenBreakpoint && hasNavigationElements;\n\n  const navigation = hasNavigationElements ? (\n    <nav aria-label={t(texts.siteNavigation)}>\n      <ShowHide\n        as={StylelessList}\n        hideBelow={hasSmallScreenBreakpoint ? smallScreenBreakpoint : undefined}\n        className={cn(styles['nav-list'])}\n      >\n        {navItems.map((item, i) => {\n          const { href, ...rest } = item;\n          const isCurrent = href === currentPage;\n          return (\n            <li key={i} className={styles['nav-list__item']}>\n              <NavigationItem\n                href={href}\n                {...rest}\n                isCurrent={isCurrent}\n                onClick={() => handleCurrentPageChange(href)}\n              />\n            </li>\n          );\n        })}\n      </ShowHide>\n    </nav>\n  ) : null;\n\n  const hasContextMenu =\n    hasContextMenuElements || !!user || hasNavInContextMenu;\n  const hasContextMenuLargeScreen = hasContextMenuElements || !!user;\n\n  return (\n    <Box\n      display=\"flex\"\n      alignItems=\"center\"\n      gap={styleUpToBreakpoint('x1.5', smallScreenBreakpoint, 'x1')}\n      paddingInline={styleUpToBreakpoint(\n        'x1.5',\n        smallScreenBreakpoint,\n        'x1 x0.5',\n      )}\n      {...getBaseHTMLProps(\n        id,\n        cn(className, styles.bar, !!navigation && styles['bar--with-nav']),\n        style,\n        htmlProps,\n        rest,\n      )}\n    >\n      <Typography typographyType=\"headingSmall\" bold as=\"span\">\n        {applicationHref ? (\n          <a\n            href={applicationHref}\n            rel=\"noopener noreferrer\"\n            className={cn(utilStyles['inherit-link-styling'], focusable)}\n          >\n            {applicationName}\n          </a>\n        ) : (\n          applicationName\n        )}\n      </Typography>\n      <Typography typographyType=\"bodyShortMedium\" as=\"span\">\n        {applicationDesc}\n      </Typography>\n      {(hasContextMenu || navigation !== null) && (\n        <div className={styles['bar-separator']} />\n      )}\n      {navigation}\n      {hasContextMenu && (\n        <ShowHide\n          showBelow={\n            !hasContextMenuLargeScreen && hasSmallScreenBreakpoint\n              ? smallScreenBreakpoint\n              : undefined\n          }\n          className={cn(styles['context-menu-group'])}\n        >\n          <OverflowMenuGroup>\n            <Button\n              icon={hasNavInContextMenu ? MenuIcon : MoreVerticalIcon}\n              purpose=\"tertiary\"\n              aria-label={t(texts.openMenu)}\n            />\n            <OverflowMenu className={styles['context-menu']}>\n              {user && (\n                <OverflowMenuList>\n                  {user.href ? (\n                    <OverflowMenuLink icon={PersonIcon} {...user} />\n                  ) : (\n                    <OverflowMenuSpan icon={PersonIcon} {...user} />\n                  )}\n                </OverflowMenuList>\n              )}\n              {hasNavInContextMenu && (\n                <ShowHide\n                  as=\"nav\"\n                  aria-label={t(texts.siteNavigation)}\n                  showBelow={smallScreenBreakpoint}\n                >\n                  <OverflowMenuList>\n                    {navItems.map((item, i) => (\n                      <OverflowMenuLink {...item} key={`nav-${i}`} />\n                    ))}\n                  </OverflowMenuList>\n                </ShowHide>\n              )}\n              {hasNavInContextMenu && hasContextMenuElements && (\n                <ShowHide\n                  as={OverflowMenuDivider}\n                  showBelow={smallScreenBreakpoint}\n                />\n              )}\n              {hasContextMenuElements && (\n                <OverflowMenuList>\n                  {contextMenuItems.map((item, i) => {\n                    return item.href ? (\n                      <OverflowMenuLink\n                        {...(item as OverflowMenuLinkProps)}\n                        key={`context-${i}`}\n                      />\n                    ) : (\n                      <OverflowMenuButton\n                        {...(item as OverflowMenuButtonProps)}\n                        key={`context-${i}`}\n                      />\n                    );\n                  })}\n                </OverflowMenuList>\n              )}\n            </OverflowMenu>\n          </OverflowMenuGroup>\n        </ShowHide>\n      )}\n    </Box>\n  );\n};\n\nInternalHeader.displayName = 'InternalHeader';\n\nconst texts = createTexts({\n  openMenu: {\n    nb: 'Åpne meny',\n    no: 'Åpne meny',\n    nn: 'Opna meny',\n    en: 'Open menu',\n    se: 'Rabas fállu',\n  },\n  siteNavigation: {\n    nb: 'Sidenavigasjon',\n    no: 'Sidenavigasjon',\n    nn: 'Sidenavigasjon',\n    en: 'Site navigation',\n    se: 'Siidu navigášuvdna',\n  },\n});\n",".bar {\n  background-color: var(--dds-color-surface-default);\n  border-bottom: 1px solid var(--dds-color-border-default);\n  min-height: 58px;\n  .bar-separator {\n    margin-left: auto;\n  }\n}\n\n.bar--with-nav {\n  .bar-separator {\n    margin-left: 0;\n  }\n\n  .context-menu-group {\n    margin-left: auto;\n  }\n}\n\n.bar-separator {\n  align-self: stretch;\n  border-left: 1px solid var(--dds-color-border-default);\n}\n\n.nav-list {\n  box-sizing: border-box;\n  display: flex;\n  align-items: center;\n  width: 100%;\n  gap: var(--dds-spacing-x1-5);\n}\n\n.nav-list__item {\n  display: flex;\n}\n\n.nav-list__item__link {\n  text-decoration: none;\n  padding: var(--dds-spacing-x0-75) var(--dds-spacing-x1);\n  border-radius: var(--dds-border-radius-surface);\n  background-color: transparent;\n  color: var(--dds-color-text-subtle);\n\n  &:hover {\n    background-color: var(--dds-color-surface-hover-subtle);\n    color: var(--dds-color-text-default);\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      background-color var(--dds-motion-micro-state),\n      color var(--dds-motion-micro-state),\n      var(--dds-focus-transition);\n  }\n}\n\n.nav-list__item__link--active {\n  background-color: var(--dds-color-surface-selected-default);\n  color: var(--dds-color-text-default);\n\n  &:hover {\n    background-color: var(--dds-color-surface-selected-default);\n    color: var(--dds-color-text-default);\n  }\n}\n\n.context-menu {\n  max-height: calc(100vh - 110px);\n}\n","import { type ComponentPropsWithRef } from 'react';\n\nimport styles from './InternalHeader.module.css';\nimport { cn } from '../../utils';\nimport { focusable } from '../helpers/styling/focus.module.css';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport type NavigationItemProps = {\n  isCurrent?: boolean;\n} & ComponentPropsWithRef<'a'>;\n\nexport const NavigationItem = ({ isCurrent, ...rest }: NavigationItemProps) => (\n  <a\n    {...rest}\n    aria-current={isCurrent ? 'page' : undefined}\n    className={cn(\n      styles['nav-list__item__link'],\n      isCurrent && styles['nav-list__item__link--active'],\n      typographyStyles['body-short-medium'],\n      focusable,\n    )}\n  />\n);\n","import { type ReactNode, useState } from 'react';\n\nimport styles from './LocalMessage.module.css';\nimport { useTranslation } from '../../i18n';\nimport { commonTexts } from '../../i18n/commonTexts';\nimport {\n  type BaseComponentProps,\n  createPurposes,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { Button } from '../Button';\nimport { Icon, type SvgIcon } from '../Icon';\nimport {\n  CheckCircledIcon,\n  CloseIcon,\n  ErrorIcon,\n  InfoIcon,\n  TipIcon,\n  WarningIcon,\n} from '../Icon/icons';\nimport { Grid, GridChild, type ResponsiveProps } from '../layout';\nimport { type ResponsiveGridProps } from '../layout/common/Responsive.types';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport const L_MESSAGE_PURPOSES = createPurposes(\n  'info',\n  'success',\n  'warning',\n  'danger',\n  'tips',\n);\n\nexport type LocalMessagePurpose = (typeof L_MESSAGE_PURPOSES)[number];\n\nconst icons: Record<LocalMessagePurpose, SvgIcon> = {\n  info: InfoIcon,\n  danger: ErrorIcon,\n  warning: WarningIcon,\n  success: CheckCircledIcon,\n  tips: TipIcon,\n};\n\nexport type LocalMessageLayout = 'horisontal' | 'vertical';\n\nexport type LocalMessageProps = BaseComponentProps<\n  HTMLDivElement,\n  {\n    /**Innhold i meldingen. */\n    children?: ReactNode;\n    /**Formålet med meldingen. Påvirker styling.\n     * @default \"info\"\n     */\n    purpose?: LocalMessagePurpose;\n    /** Indikerer om meldingen skal være lukkbar.*/\n    closable?: boolean;\n    /**Ekstra logikk å kjøre når meldingen lukkes. */\n    onClose?: () => void;\n    /**Layoutet i komponenten. Ved kompleks innhold anbefales `layout='vertical'`.\n     * @default \"horisontal\"\n     */\n    layout?: LocalMessageLayout;\n  } & Pick<ResponsiveProps, 'width'>\n>;\n\nexport const LocalMessage = ({\n  purpose = 'info',\n  closable,\n  onClose,\n  width,\n  layout = 'horisontal',\n  children,\n  id,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: LocalMessageProps) => {\n  const { t } = useTranslation();\n\n  const [isOpen, setOpen] = useState(true);\n\n  type GridLayout =\n    | LocalMessageLayout\n    | 'horisontal-closable'\n    | 'vertical-closable';\n\n  const gridLayout: GridLayout = closable ? `${layout}-closable` : layout;\n\n  const containerGridTemplateStyles: Record<\n    GridLayout,\n    Partial<ResponsiveGridProps>\n  > = {\n    horisontal: {\n      gridTemplateAreas: `\"icon text\"`,\n      gridTemplateColumns: 'min-content 1fr',\n    },\n    'horisontal-closable': {\n      gridTemplateAreas: `\"icon text close-btn\"`,\n      gridTemplateColumns: 'min-content 1fr min-content',\n    },\n    vertical: {\n      gridTemplateAreas: `\"icon\" \"text\"`,\n      gridTemplateColumns: '1fr',\n    },\n    'vertical-closable': {\n      gridTemplateAreas: `\"icon close-btn\" \"text text\"`,\n      gridTemplateColumns: '1fr min-content',\n    },\n  };\n\n  return isOpen ? (\n    <Grid\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          typographyStyles['body-short-medium'],\n          styles.container,\n          styles[`container--${purpose}`],\n        ),\n        style,\n        htmlProps,\n        rest,\n      )}\n      width={width}\n      padding=\"x0.75 x0.75 x0.75 x0.5\"\n      rowGap=\"x0.5\"\n      columnGap=\"x0.5\"\n      marginInline=\"x0\"\n      {...containerGridTemplateStyles[gridLayout]}\n    >\n      <GridChild\n        as={Icon}\n        gridArea=\"icon\"\n        iconSize=\"component\"\n        icon={icons[purpose]}\n        color={`var(--dds-color-icon-on-${purpose === 'tips' ? 'info' : purpose}-default)`}\n      />\n      <GridChild gridArea=\"text\">{children}</GridChild>\n      {closable && (\n        <GridChild\n          as={Button}\n          gridArea=\"close-btn\"\n          icon={CloseIcon}\n          purpose=\"tertiary\"\n          onClick={() => {\n            setOpen(false);\n            onClose?.();\n          }}\n          size=\"xsmall\"\n          aria-label={t(commonTexts.closeMessage)}\n        />\n      )}\n    </Grid>\n  ) : null;\n};\n\nLocalMessage.displayName = 'LocalMessage';\n",".container {\n  border: 1px solid;\n  box-sizing: border-box;\n  border-radius: var(--dds-border-radius-surface);\n}\n\n.container--info {\n  border-color: var(--dds-color-border-info);\n  background-color: var(--dds-color-surface-info-default);\n}\n.container--warning {\n  border-color: var(--dds-color-border-warning);\n  background-color: var(--dds-color-surface-warning-default);\n}\n.container--danger {\n  border-color: var(--dds-color-border-danger);\n  background-color: var(--dds-color-surface-danger-default);\n}\n.container--success {\n  border-color: var(--dds-color-border-success);\n  background-color: var(--dds-color-surface-success-default);\n}\n\n.container--tips {\n  border-color: var(--dds-color-border-info);\n  background-color: var(--dds-color-surface-info-default);\n}\n","import {\n  type ReactNode,\n  type RefObject,\n  useContext,\n  useEffect,\n  useId,\n  useRef,\n} from 'react';\nimport { createPortal } from 'react-dom';\n\nimport styles from './Modal.module.css';\nimport {\n  useCombinedRef,\n  useFocusTrap,\n  useMountTransition,\n  useOnKeyDown,\n} from '../../hooks';\nimport { useTranslation } from '../../i18n';\nimport { commonTexts } from '../../i18n/commonTexts';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { Button } from '../Button';\nimport {\n  Backdrop,\n  handleElementWithBackdropMount,\n  handleElementWithBackdropUnmount,\n} from '../helpers';\nimport { focusable } from '../helpers/styling/focus.module.css';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\nimport { CloseIcon } from '../Icon/icons';\nimport { Box, HStack, Paper } from '../layout';\nimport { ThemeContext } from '../ThemeProvider';\nimport { Heading } from '../Typography';\n\nexport type ModalProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  {\n    /**Spesifiserer om `<Modal>` skal åpnes. */\n    isOpen?: boolean;\n    /**Funksjon kjørt ved lukking; gjør at `<Modal>` blir lukkbar via: Esc-tast, klikk utenfor, klikk på dedikert lukkeknapp. */\n    onClose?: () => void;\n    /**Fordeler DOM node for `<Modal>` via React portal. Brukes med f.eks `document.getElementById(\"id\")` eller `ref` (skaper ikke ny DOM node).\n     * @default themeProviderRef\n     */\n    parentElement?: HTMLElement;\n    /**Header i `<Modal>`. Returnerer default `<Heading>` ved `string`. Setter også `aria-labelledby`. */\n    header?: string | ReactNode;\n    /**Ref som brukes til returnering av fokus. */\n    triggerRef?: RefObject<HTMLElement | null>;\n    /**Ref som skal motta fokus når `<Modal>` åpnes. Hvis utelatt blir `<Modal>` fokusert. */\n    initialFocusRef?: RefObject<HTMLElement | null>;\n    /** Gjør at innholdet kan scrolles */\n    scrollable?: boolean;\n  }\n>;\n\nexport const Modal = ({\n  isOpen = false,\n  parentElement,\n  children,\n  header,\n  onClose,\n  id,\n  triggerRef,\n  initialFocusRef,\n  scrollable,\n  className,\n  style,\n  htmlProps,\n  ref,\n  ...rest\n}: ModalProps) => {\n  const generatedId = useId();\n  const modalId = id ?? `${generatedId}-modal`;\n  const headerId = `${modalId}-header`;\n\n  const modalRef = useFocusTrap<HTMLDivElement>(isOpen, initialFocusRef);\n  const combinedRef = useCombinedRef(ref, modalRef);\n  const handleClose = () => {\n    if (onClose && isOpen) {\n      triggerRef?.current?.focus();\n      onClose();\n    }\n  };\n\n  const themeContext = useContext(ThemeContext);\n\n  if (!themeContext) {\n    throw new Error('Modal must be used within a DdsProvider');\n  }\n\n  const { t } = useTranslation();\n\n  const portalTarget = parentElement ?? themeContext?.el;\n\n  useEffect(() => {\n    if (isOpen) {\n      handleElementWithBackdropMount(document.body);\n    } else {\n      handleElementWithBackdropUnmount(document.body);\n    }\n\n    return () => handleElementWithBackdropUnmount(document.body);\n  }, [isOpen]);\n\n  const backdropRef = useRef<HTMLDivElement>(null);\n  const onBackdropClick = (event: React.MouseEvent<HTMLDivElement>) => {\n    if (event.target === backdropRef.current && isOpen) {\n      handleClose();\n    }\n  };\n\n  useOnKeyDown(['Escape', 'Esc'], () => handleClose());\n\n  const hasTransitionedIn = useMountTransition(isOpen, 200);\n\n  return (isOpen || hasTransitionedIn) && portalTarget\n    ? createPortal(\n        <Backdrop\n          zIndex=\"modal\"\n          isMounted={isOpen && hasTransitionedIn}\n          ref={backdropRef}\n          onClick={onBackdropClick}\n        >\n          <Paper\n            display=\"flex\"\n            flexDirection=\"column\"\n            minWidth=\"200px\"\n            {...getBaseHTMLProps(\n              id,\n              cn(\n                className,\n                styles.container,\n                focusable,\n                scrollable && styles['container-scrollable'],\n                utilStyles.scrollbar,\n              ),\n              style,\n              htmlProps,\n              rest,\n            )}\n            ref={combinedRef}\n            role=\"dialog\"\n            aria-modal\n            aria-hidden={!isOpen}\n            tabIndex={-1}\n            aria-labelledby={headerId}\n            id={modalId}\n            elevation=\"large\"\n          >\n            <HStack\n              paddingBlock=\"0 x0.75\"\n              position=\"sticky\"\n              top=\"0\"\n              left=\"0\"\n              width=\"100%\"\n              className={styles['header-container']}\n            >\n              {!!header && (\n                <div id={headerId}>\n                  {typeof header === 'string' ? (\n                    <Heading level={2} typographyType=\"headingLarge\">\n                      {header}\n                    </Heading>\n                  ) : (\n                    header\n                  )}\n                </div>\n              )}\n              {onClose && (\n                <Button\n                  size=\"small\"\n                  purpose=\"tertiary\"\n                  icon={CloseIcon}\n                  onClick={handleClose}\n                  aria-label={t(commonTexts.close)}\n                  className={styles['close-button']}\n                />\n              )}\n            </HStack>\n            <Box display=\"grid\" gap=\"x1\">\n              {children}\n            </Box>\n          </Paper>\n        </Backdrop>,\n        portalTarget,\n      )\n    : null;\n};\n\nModal.displayName = 'Modal';\n",".container {\n  /* Justering på spacing slik at fokusmarkering osv. ikke skjules ved overflow */\n  --dds-modal-content-padding: var(--dds-spacing-x0-25);\n  --dds-modal-container-padding: var(--dds-spacing-x1)\n    calc(var(--dds-spacing-x1) - var(--dds-modal-content-padding))\n    calc(var(--dds-spacing-x1-5) - var(--dds-modal-content-padding))\n    calc(var(--dds-spacing-x1-5) - var(--dds-modal-content-padding));\n\n  padding: var(--dds-modal-container-padding);\n}\n\n.container-scrollable {\n  max-height: calc(100vh - var(--dds-spacing-x1));\n  overflow: auto;\n}\n\n.header-container {\n  padding-bottom: calc(\n    var(--dds-spacing-x0-75) - var(--dds-modal-content-padding)\n  );\n  z-index: 1;\n}\n\n.close-button {\n  margin-left: auto;\n  margin-top: calc(-1 * var(--dds-spacing-x0-125));\n}\n\n.content {\n  padding-right: calc(var(--dds-spacing-x1) - var(--dds-modal-content-padding));\n}\n\n/* Spacing slik at fokusmarkering osv. ikke skjules ved overflow */\n.body {\n  padding: var(--dds-modal-content-padding);\n}\n","import styles from './Modal.module.css';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\nimport { Box, type ResponsiveProps } from '../layout';\n\nexport type ModalBodyProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  {\n    /**Gjør at innholdet kan scrolles. Det må eventuelt settes (max)bredde og (max)høyde styling på både denne subkomponenten og `<Modal />`.  */\n    scrollable?: boolean;\n    /**Høyde på container. Kan resultere i scrolling. */\n    height?: ResponsiveProps['height'];\n  }\n>;\n\nexport const ModalBody = ({\n  children,\n  id,\n  className,\n  style,\n  scrollable,\n  htmlProps,\n  height,\n  ...rest\n}: ModalBodyProps) => {\n  return (\n    <Box\n      height={height}\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          utilStyles.scrollbar,\n          scrollable && utilStyles['scrollable-y'],\n          styles.body,\n        ),\n        style,\n        htmlProps,\n        rest,\n      )}\n    >\n      {children}\n    </Box>\n  );\n};\n\nModalBody.displayName = 'ModalBody';\n","import { type ComponentPropsWithRef } from 'react';\n\nimport { Box } from '../layout';\n\nexport type ModalActionsProps = ComponentPropsWithRef<'div'>;\n\nexport const ModalActions = (props: ModalActionsProps) => (\n  <Box display=\"flex\" flexWrap=\"wrap\" gap=\"x1\" {...props} />\n);\n\nModalActions.displayName = 'ModalActions';\n",".close-button {\n  position: absolute;\n  top: var(--dds-spacing-x0-25);\n  right: var(--dds-spacing-x0-25);\n}\n\n.img-wrapper img {\n  width: 100%;\n  height: 100%;\n  object-fit: contain;\n}\n","import { type Dispatch, type ReactNode, type SetStateAction } from 'react';\n\nimport styles from './NewsPopover.module.css';\nimport {\n  useCombinedRef,\n  useControllableState,\n  useFocusTrap,\n  useOnClickOutside,\n  useOnKeyDown,\n} from '../../hooks';\nimport { useTranslation } from '../../i18n';\nimport { commonTexts } from '../../i18n/commonTexts';\nimport { type BaseComponentProps, getBaseHTMLProps } from '../../types';\nimport { cn } from '../../utils';\nimport { Button } from '../Button';\nimport { StylelessList } from '../helpers';\nimport { focusable } from '../helpers/styling/focus.module.css';\nimport { Icon } from '../Icon';\nimport {\n  ChevronLeftIcon,\n  ChevronRightIcon,\n  CircleFilledIcon,\n  CloseIcon,\n} from '../Icon/icons';\nimport { Box, type Breakpoint, HStack, Paper, VStack } from '../layout';\nimport { styleUpToBreakpoint } from '../layout/common/utils';\nimport { Heading, Paragraph } from '../Typography';\nimport { VisuallyHidden } from '../VisuallyHidden';\n\nexport interface NewsPopoverSlide {\n  /**`<img>` bilde. */\n  image: ReactNode;\n  /**Overskiftstekst. */\n  heading: string;\n  /**Løpende tekst med detaljer. */\n  text: string;\n}\n\nexport type NewsPopoverProps = BaseComponentProps<\n  HTMLElement,\n  {\n    /**Header-tekst. */\n    header: string;\n    /**Innhold i nyhetene. */\n    news: Array<NewsPopoverSlide>;\n    /**Aktiv nyhet ved første render i ukontrollert tilstand. */\n    defaultActiveSlide?: number;\n    /**Implementerer kontrollert tilstand: aktiv nyhet. */\n    activeSlide?: number;\n    /** Implementerer kontrollert tilstand: setter `aktivSlide`.  */\n    setActiveSlide?: Dispatch<SetStateAction<number>>;\n    /**Om komponenten skal være åpen på første render i ukontrollert tilstand.  */\n    isInitiallyOpen?: boolean;\n    /**Implementerer kontrollert tilstand: om komponenten skal være åpen.  */\n    isOpen?: boolean;\n    /**Implementerer kontrollert tilstand: setter `isOpen`.  */\n    setIsOpen?: Dispatch<SetStateAction<boolean>>;\n    /**\n     * Om komponenten skal lukkes på klikk utenfor.\n     * @default true\n     */\n    closeOnClickOutside?: boolean;\n    /**\n     * Brekkpunkt for små skjermer;\n     * gjør at komponenten tar 100% bredde av forelderen.\n     * @default 'xs'\n     */\n    smallScreenBreakpoint?: Breakpoint;\n  }\n>;\n\nexport const NewsPopover = ({\n  id,\n  className,\n  style,\n  htmlProps,\n  header,\n  news,\n  defaultActiveSlide = 0,\n  activeSlide: activeSlideProp,\n  setActiveSlide: setActiveSlideProp,\n  isOpen: isOpenProp,\n  isInitiallyOpen = true,\n  setIsOpen: setIsOpenProp,\n  smallScreenBreakpoint = 'xs',\n  closeOnClickOutside = true,\n  ref,\n  ...rest\n}: NewsPopoverProps) => {\n  if (news.length === 0) {\n    throw new Error('NewsPopover must have at least one item in \"news\" prop');\n  }\n\n  if (header.length > 35) {\n    console.warn(\n      '[NewsPopover] header exceeds recommended length (about 35 characters). This may cause wrapping or layout issues depending on theme.',\n    );\n  }\n\n  news.forEach((n, i) => {\n    if (n.heading.length > 35) {\n      console.warn(\n        `[NewsPopover] news[${i}].heading exceeds recommended length (about 35 characters). This may cause wrapping or layout issues depending on theme.`,\n      );\n    }\n    if (n.text.length > 135) {\n      console.warn(\n        `[NewsPopover] news[${i}].text exceeds recommended length (about 135 characters). This may cause wrapping or layout issues depending on theme.`,\n      );\n    }\n  });\n\n  const { t } = useTranslation();\n\n  const [activeSlide, setActiveSlide] = useControllableState({\n    value: activeSlideProp,\n    defaultValue: defaultActiveSlide,\n    onChange: setActiveSlideProp,\n  });\n\n  const [isOpen, setIsOpen] = useControllableState({\n    onChange: setIsOpenProp,\n    value: isOpenProp,\n    defaultValue: isInitiallyOpen,\n  });\n\n  function handleSlideChange(slide: number) {\n    setActiveSlide(slide);\n  }\n\n  const popoverRef = useFocusTrap<HTMLDivElement>(true);\n  const combinedRef = useCombinedRef(ref, popoverRef);\n\n  useOnClickOutside(popoverRef, () => {\n    if (closeOnClickOutside && isOpen) {\n      setIsOpen(false);\n    }\n  });\n\n  useOnKeyDown('Escape', () => setIsOpen(false));\n\n  const isList = news.length > 1;\n\n  const slideContent = (el: NewsPopoverSlide, i?: number) => (\n    <>\n      <Paper\n        background=\"brand-secondary-subtle\"\n        width=\"100%\"\n        borderRadius=\"0\"\n        display=\"grid\"\n        placeItems=\"center\"\n        paddingBlock=\"x0.5\"\n      >\n        {i !== undefined && (\n          <VisuallyHidden>\n            {t(commonTexts.pageOf(i + 1, news.length))}\n          </VisuallyHidden>\n        )}\n        <Box height=\"113px\" maxWidth=\"380px\" className={styles['img-wrapper']}>\n          {el.image}\n        </Box>\n      </Paper>\n      <VStack gap=\"x0.75\" alignItems=\"center\" margin=\"x0.75 x0.75 x1 x0.75\">\n        <Heading level={3}>{el.heading}</Heading>\n        <Paragraph textAlign=\"center\">{el.text}</Paragraph>\n      </VStack>\n    </>\n  );\n\n  const content = isList ? (\n    <Box as={StylelessList} width=\"100%\">\n      {news.map((el, i) => {\n        const active = activeSlide === i;\n        return (\n          <li key={i} aria-current={active} hidden={!active}>\n            {slideContent(el, i)}\n          </li>\n        );\n      })}\n    </Box>\n  ) : (\n    <Box width=\"100%\">{slideContent(news[0])}</Box>\n  );\n\n  function handleNext() {\n    if (activeSlide === news.length - 1) handleSlideChange(0);\n    else handleSlideChange(activeSlide + 1);\n  }\n\n  function handlePrevious() {\n    if (activeSlide === 0) handleSlideChange(news.length - 1);\n    else handleSlideChange(activeSlide - 1);\n  }\n\n  const headerId = 'dds-news-popover-header';\n\n  return isOpen ? (\n    <Paper\n      {...getBaseHTMLProps(\n        id,\n        cn(className, focusable),\n        style,\n        htmlProps,\n        rest,\n      )}\n      ref={combinedRef}\n      position=\"relative\"\n      border=\"border-subtle\"\n      role=\"dialog\"\n      aria-labelledby={headerId}\n      height={isList ? '368px' : '327px'}\n      width={styleUpToBreakpoint('100%', smallScreenBreakpoint, '405px')}\n    >\n      <HStack margin=\"x0.75 x3 x0.75 x0.75\">\n        <Heading id={headerId} level={2} typographyType=\"headingSmall\">\n          {header}\n        </Heading>\n      </HStack>\n      <VStack\n        alignItems=\"center\"\n        height={isList ? '299px' : undefined}\n        aria-live=\"polite\"\n      >\n        {content}\n        {isList && (\n          <HStack alignItems=\"center\" gap=\"x1\" marginBlock=\"auto 0\">\n            <Button\n              aria-label={t(commonTexts.previousPage)}\n              size=\"small\"\n              purpose=\"tertiary\"\n              icon={ChevronLeftIcon}\n              onClick={() => handlePrevious()}\n            />\n            {news.map((slide, i) => {\n              const active = activeSlide === i;\n              return (\n                <Icon\n                  key={`${slide.heading}-${i}`}\n                  iconSize=\"small\"\n                  icon={CircleFilledIcon}\n                  color={\n                    active ? 'brand-tertiary-default' : 'brand-tertiary-subtle'\n                  }\n                />\n              );\n            })}\n\n            <Button\n              aria-label={t(commonTexts.nextPage)}\n              size=\"small\"\n              purpose=\"tertiary\"\n              icon={ChevronRightIcon}\n              onClick={() => handleNext()}\n            />\n          </HStack>\n        )}\n        <Button\n          icon={CloseIcon}\n          purpose=\"tertiary\"\n          size=\"small\"\n          aria-label={t(commonTexts.close)}\n          onClick={() => setIsOpen(false)}\n          className={styles['close-button']}\n        />\n      </VStack>\n    </Paper>\n  ) : null;\n};\n\nNewsPopover.displayName = 'NewsPopover';\n","import { type HTMLAttributes, useState } from 'react';\n\nimport styles from './Pagination.module.css';\nimport { PaginationGenerator } from './paginationGenerator';\nimport { useControllableState } from '../../hooks/useControllableState';\nimport { createTexts, useTranslation } from '../../i18n';\nimport { commonTexts } from '../../i18n/commonTexts';\nimport { type BaseComponentProps, getBaseHTMLProps } from '../../types';\nimport { Button } from '../Button';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\nimport { Icon } from '../Icon';\nimport {\n  ChevronFirstIcon,\n  ChevronLastIcon,\n  ChevronLeftIcon,\n  ChevronRightIcon,\n  MoreHorizontalIcon,\n} from '../Icon/icons';\nimport {\n  Box,\n  type BoxProps,\n  type Breakpoint,\n  Grid,\n  type GridProps,\n} from '../layout';\nimport { styleUpToBreakpoint } from '../layout/common/utils';\nimport { Select } from '../Select';\nimport { Paragraph } from '../Typography';\n\nexport interface PaginationOption {\n  label: string;\n  value: number;\n}\n\nexport type PaginationProps = BaseComponentProps<\n  HTMLElement,\n  {\n    /**Totalt antall elementer som skal pagineres. */\n    itemsAmount: number;\n    /**Antall elementer per side ved innlastning.\n     * @default 10\n     */\n    defaultItemsPerPage?: number;\n    /**Den aktive siden ved innlastning.\n     * @default 1\n     */\n    defaultActivePage?: number;\n    /**Den aktive siden. Brukes til kontrollert tilstand - når denne er satt styrer du siden utenfra. */\n    activePage?: number;\n    /**Spesifiserer om selve pagineringen skal vises.\n     * @default true\n     */\n    withPagination?: boolean;\n    /**Om teksten `'Vis x-y av z'` skal vises. */\n    withCounter?: boolean;\n    /**Om `<Select>` for å velge antall per side skal vises. */\n    withSelect?: boolean;\n    /**Custom options for `<Select>`. **OBS!** husk å inkludere \"Alle\"-alternativet hvis relevant - brukere forventer ofte den muligheten.\n     * @default [\n        { label: '10', value: 10 },\n        { label: '25', value: 25 },\n        { label: '50', value: 50 },\n        { label: 'Alle', value: itemsAmount },\n      ]\n     */\n    selectOptions?: Array<PaginationOption>;\n    /**Kalles ved sideendring - henter ny aktiv side og kjører ekstra logikk. */\n    onChange?: (\n      event: React.MouseEvent<HTMLButtonElement, MouseEvent>,\n      page: number,\n    ) => void;\n    /**Kalles når `selectedOption` endres, hvis `withSelect=\"true\"`.\n     * Brukes til å hente valgt alternativ og evt. kjøre ekstra logikk.\n     */\n    onSelectOptionChange?: (option: PaginationOption | null) => void;\n    /**Brekkpunkt for små skjermer; den viser færre sideknapper og stacker delkomponentene. */\n    smallScreenBreakpoint?: Breakpoint;\n  },\n  Omit<HTMLAttributes<HTMLElement>, 'onChange'>\n>;\n\nexport const Pagination = ({\n  itemsAmount,\n  defaultItemsPerPage = 10,\n  defaultActivePage = 1,\n  activePage: activePageProp,\n  withPagination = true,\n  withCounter,\n  withSelect,\n  selectOptions,\n  smallScreenBreakpoint,\n  onChange,\n  onSelectOptionChange,\n  id,\n  className,\n  style,\n  htmlProps,\n  ref,\n  ...rest\n}: PaginationProps) => {\n  const { t } = useTranslation();\n\n  const tSelectOptions =\n    selectOptions && selectOptions.length > 0\n      ? selectOptions\n      : [\n          { label: '10', value: 10 },\n          { label: '25', value: 25 },\n          { label: '50', value: 50 },\n          { label: t(texts.all), value: itemsAmount },\n        ];\n\n  if (\n    withSelect &&\n    !tSelectOptions.some(o => o.value === defaultItemsPerPage)\n  ) {\n    console.warn(\n      `[Pagination] defaultItemsPerPage prop value (${defaultItemsPerPage}) is not included in customOptions prop. Please add it to ensure it appears in the dropdown.`,\n    );\n  }\n  const [activePage, setActivePage] = useControllableState({\n    value: activePageProp,\n    defaultValue: defaultActivePage,\n  });\n  const [itemsPerPage, setItemsPerPage] = useState(defaultItemsPerPage);\n\n  const pagesLength = Math.ceil(itemsAmount / itemsPerPage);\n\n  const items = PaginationGenerator(pagesLength, activePage);\n\n  const onPageChange = (\n    event: React.MouseEvent<HTMLButtonElement, MouseEvent>,\n    page: number,\n  ) => {\n    if (page) setActivePage(page);\n    if (event && onChange) {\n      onChange(event, page);\n    }\n  };\n\n  const handleSelectChange = (option: PaginationOption | null) => {\n    if (option !== null) {\n      setItemsPerPage(option.value);\n    }\n\n    if (onSelectOptionChange) {\n      onSelectOptionChange(option);\n    }\n  };\n\n  const listItemProps: Partial<BoxProps<'li'>> = {\n    as: 'li',\n    display: 'inline-grid',\n    alignContent: 'center',\n  };\n\n  const listProps: Partial<GridProps<'ol'>> = {\n    as: 'ol',\n    defaultPageLayout: false,\n    gridAutoFlow: 'column',\n    margin: 'x0',\n    padding: 'x0',\n    gap: 'x0.75',\n  };\n\n  const listItems =\n    items.length > 0\n      ? items.map((item, i) => {\n          const isActive = item === activePage;\n          return (\n            <Box {...listItemProps} key={`pagination-item-${i}`}>\n              {item !== 'truncator' && typeof item === 'number' ? (\n                <Button\n                  purpose={isActive ? 'primary' : 'secondary'}\n                  size=\"small\"\n                  onClick={event => {\n                    onPageChange(event, item);\n                  }}\n                  aria-label={\n                    isActive\n                      ? t(commonTexts.currentPage(item))\n                      : t(commonTexts.page(item))\n                  }\n                >\n                  {item}\n                </Button>\n              ) : (\n                <Icon\n                  icon={MoreHorizontalIcon}\n                  className={styles['truncation-icon']}\n                />\n              )}\n            </Box>\n          );\n        })\n      : undefined;\n\n  const previousPageButton = (\n    <Button\n      purpose=\"secondary\"\n      size=\"small\"\n      icon={ChevronLeftIcon}\n      onClick={event => {\n        onPageChange(event, activePage - 1);\n      }}\n      aria-label={t(commonTexts.previousPage)}\n    />\n  );\n\n  const nextPageButton = (\n    <Button\n      purpose=\"secondary\"\n      size=\"small\"\n      icon={ChevronRightIcon}\n      onClick={event => {\n        onPageChange(event, activePage + 1);\n      }}\n      aria-label={t(commonTexts.nextPage)}\n    />\n  );\n\n  const isOnFirstPage = activePage === 1;\n  const isOnLastPage = activePage === pagesLength;\n  const baseHTMLProps = getBaseHTMLProps(id, className, style, htmlProps, rest);\n\n  const navigation = withPagination ? (\n    <Box\n      as=\"nav\"\n      ref={ref}\n      aria-label={t(texts.pagination)}\n      display=\"flex\"\n      alignItems=\"center\"\n      {...(!withSelect &&\n        !withCounter && {\n          ...baseHTMLProps,\n        })}\n    >\n      <Grid {...listProps} hideBelow={smallScreenBreakpoint}>\n        <Box\n          {...listItemProps}\n          className={isOnFirstPage ? utilStyles.invisible : undefined}\n          aria-hidden={isOnFirstPage}\n        >\n          {previousPageButton}\n        </Box>\n        {listItems}\n        <Box\n          {...listItemProps}\n          className={isOnLastPage ? utilStyles.invisible : undefined}\n          aria-hidden={isOnLastPage}\n        >\n          {nextPageButton}\n        </Box>\n      </Grid>\n      {!!smallScreenBreakpoint && (\n        <Grid {...listProps} showBelow={smallScreenBreakpoint}>\n          <Box\n            {...listItemProps}\n            className={isOnFirstPage ? utilStyles.invisible : undefined}\n            aria-hidden={isOnFirstPage}\n          >\n            <Button\n              purpose=\"secondary\"\n              size=\"small\"\n              icon={ChevronFirstIcon}\n              onClick={event => {\n                onPageChange(event, 1);\n              }}\n              aria-label={t(texts.firstPage)}\n            />\n          </Box>\n          <Box\n            {...listItemProps}\n            className={isOnFirstPage ? utilStyles.invisible : undefined}\n            aria-hidden={isOnFirstPage}\n          >\n            {previousPageButton}\n          </Box>\n          <Box {...listItemProps}>\n            <Button\n              size=\"small\"\n              onClick={event => {\n                onPageChange(event, activePage);\n              }}\n            >\n              {activePage}\n            </Button>\n          </Box>\n          <Box\n            {...listItemProps}\n            className={isOnLastPage ? utilStyles.invisible : undefined}\n            aria-hidden={isOnLastPage}\n          >\n            {nextPageButton}\n          </Box>\n          <Box\n            {...listItemProps}\n            className={isOnLastPage ? utilStyles.invisible : undefined}\n            aria-hidden={isOnLastPage}\n          >\n            <Button\n              purpose=\"secondary\"\n              size=\"small\"\n              icon={ChevronLastIcon}\n              onClick={event => {\n                onPageChange(event, pagesLength);\n              }}\n              aria-label={t(texts.lastPage)}\n            />\n          </Box>\n        </Grid>\n      )}\n    </Box>\n  ) : null;\n\n  const activePageFirstItem =\n    activePage === 1 ? 1 : activePage * itemsPerPage - itemsPerPage + 1;\n\n  const activePageLastItem =\n    activePage === pagesLength ? itemsAmount : activePage * itemsPerPage;\n\n  return !withCounter && !withSelect ? (\n    navigation\n  ) : (\n    <Box\n      display=\"flex\"\n      gap=\"x0.5\"\n      justifyContent=\"space-between\"\n      flexWrap=\"wrap\"\n      flexDirection={styleUpToBreakpoint('column', smallScreenBreakpoint)}\n      alignItems={styleUpToBreakpoint('center', smallScreenBreakpoint)}\n      {...baseHTMLProps}\n    >\n      <Grid\n        defaultPageLayout={false}\n        gap=\"x0.5\"\n        alignItems=\"center\"\n        gridAutoFlow=\"column\"\n      >\n        {withSelect && (\n          <Select\n            options={tSelectOptions}\n            isSearchable={false}\n            width=\"90px\"\n            defaultValue={{\n              label: itemsPerPage.toString(),\n              value: itemsPerPage,\n            }}\n            isClearable={false}\n            onChange={handleSelectChange}\n            componentSize=\"small\"\n            aria-label={t(texts.itemsPerPage)}\n          />\n        )}\n        {withCounter && (\n          <Paragraph typographyType=\"bodyShortMedium\">\n            {t(\n              texts.showsAmountOfTotalItems(\n                activePageFirstItem,\n                activePageLastItem,\n                itemsAmount,\n              ),\n            )}\n          </Paragraph>\n        )}\n      </Grid>\n      {navigation}\n    </Box>\n  );\n};\n\nPagination.displayName = 'Pagination';\n\nconst texts = createTexts({\n  pagination: {\n    nb: 'Paginering',\n    no: 'Paginering',\n    nn: 'Paginering',\n    en: 'Pagination',\n    se: 'Pagineren',\n  },\n  itemsPerPage: {\n    nb: 'Elementer per side',\n    no: 'Elementer per side',\n    nn: 'Element per side',\n    en: 'Items per page',\n    se: 'Elementat juohki siidui',\n  },\n  firstPage: {\n    nb: 'Første side',\n    no: 'Første side',\n    nn: 'Fyrste side',\n    en: 'First page',\n    se: 'Vusttaš siidu',\n  },\n  lastPage: {\n    nb: 'Siste side',\n    no: 'Siste side',\n    nn: 'Siste side',\n    en: 'Last page',\n    se: 'Maŋimuš siidu',\n  },\n  showsAmountOfTotalItems: (first, last, total) => ({\n    nb: `Viser ${first}-${last} av ${total}`,\n    no: `Viser ${first}-${last} av ${total}`,\n    nn: `Viser ${first}-${last} av ${total}`,\n    en: `Shows ${first}-${last} of ${total}`,\n    se: `Čájeha ${first}-${last} ${total} gaskkas`,\n  }),\n  all: {\n    nb: 'Alle',\n    no: 'Alle',\n    nn: 'Alle',\n    en: 'All',\n    se: 'Buot',\n  },\n});\n",".truncation-icon {\n  color: var(--dds-color-icon-medium);\n  min-width: calc(1ch + (2 * var(--dds-spacing-x0-75)));\n}\n","const arrayRange = (start: number, end: number) => {\n  const length = end - start + 1;\n  return Array.from({ length }, (_, idx) => idx + start);\n};\n\nexport function PaginationGenerator(\n  pagesAmount: number,\n  activePage: number,\n): Array<string | number> {\n  const siblingsCount = 1;\n  const maxPagesShown = 7;\n  const pagesBeforeTruncator = 5;\n  const truncator = 'truncator';\n\n  let pageRange: Array<string | number>;\n\n  if (pagesAmount > 4) {\n    const middleStartPage = Math.max(\n      1,\n      activePage < pagesBeforeTruncator || pagesAmount <= maxPagesShown\n        ? 1\n        : activePage + siblingsCount + 1 >= pagesAmount\n          ? pagesAmount - 4 // - 4 to fit total columns /\n          : activePage > 4 && pagesAmount > maxPagesShown\n            ? activePage - siblingsCount\n            : 1,\n    );\n\n    const middleEndOffset =\n      activePage < pagesBeforeTruncator && pagesAmount > maxPagesShown\n        ? pagesBeforeTruncator\n        : activePage < pagesBeforeTruncator && pagesAmount <= maxPagesShown\n          ? pagesAmount\n          : activePage + siblingsCount + 1 < pagesAmount - 1\n            ? activePage + siblingsCount\n            : activePage + siblingsCount + 1 === pagesAmount - 1\n              ? pagesAmount\n              : pagesAmount;\n\n    const middleEndPage = Math.min(pagesAmount, middleEndOffset);\n    pageRange = arrayRange(middleStartPage, middleEndPage);\n    const truncatedLeft = middleStartPage > 2 && pagesAmount > maxPagesShown;\n    const truncatedRight =\n      pagesAmount - middleEndPage > 1 && pagesAmount > maxPagesShown;\n\n    if (truncatedLeft && truncatedRight) {\n      pageRange = [1, truncator, ...pageRange, truncator, pagesAmount];\n    } else if (truncatedLeft && !truncatedRight) {\n      pageRange = [1, truncator, ...pageRange];\n    } else if (!truncatedLeft && truncatedRight) {\n      pageRange = [...pageRange, truncator, pagesAmount];\n    }\n    return [...pageRange];\n  }\n\n  return arrayRange(1, pagesAmount);\n}\n","import {\n  type HTMLAttributes,\n  type JSX,\n  type ReactNode,\n  type Ref,\n  useCallback,\n  useContext,\n  useId,\n} from 'react';\nimport {\n  type ClearIndicatorProps,\n  type ControlProps,\n  type DropdownIndicatorProps,\n  type GroupBase,\n  type InputProps,\n  type OptionProps,\n  default as ReactSelect,\n  type Props as ReactSelectProps,\n  type SelectInstance,\n  type SingleValueProps,\n} from 'react-select';\n\nimport styles from './Select.module.css';\nimport { getCustomStyles, prefix } from './Select.styles';\nimport {\n  CustomOption,\n  CustomSingleValue,\n  DDSClearIndicator,\n  DDSControl,\n  DDSDropdownIndicator,\n  DDSInput,\n  DDSMultiValueRemove,\n  DDSNoOptionsMessage,\n  DDSOption,\n} from './SelectComponents';\nimport { type WithRequiredIf } from '../../types';\nimport {\n  cn,\n  derivativeIdGenerator,\n  searchFilter,\n  spaceSeparatedIdListGenerator,\n} from '../../utils';\nimport { readOnlyKeyDownHandler } from '../../utils';\nimport {\n  type CommonInputProps,\n  type InputIconProps,\n  type InputSize,\n  getInputWidth,\n} from '../helpers/Input';\nimport inputStyles from '../helpers/Input/Input.module.css';\nimport { renderInputMessage } from '../InputMessage';\nimport { Box } from '../layout';\nimport { ThemeContext } from '../ThemeProvider';\nimport { renderLabel } from '../Typography/Label/Label.utils';\n\nexport interface SelectOption<TValue = unknown> {\n  label: string | number;\n  value: TValue;\n}\n\ntype WrappedReactSelectProps<\n  Option,\n  IsMulti extends boolean,\n  Group extends GroupBase<Option>,\n> = WithRequiredIf<\n  Option extends SelectOption ? false : true,\n  ReactSelectProps<Option, IsMulti, Group>,\n  'getOptionLabel' | 'getOptionValue'\n>;\n\nexport type SelectProps<Option = unknown, IsMulti extends boolean = false> = {\n  /**Størrelsen på komponenten.\n   * @default \"medium\"\n   */\n  componentSize?: InputSize;\n  /**Nedtrekkslisten blir `readonly` og får readOnly styling. */\n  readOnly?: boolean;\n  /** CSS klassenavn. */\n  className?: string;\n  /** Inline styling. */\n  style?: React.CSSProperties;\n  /** Custom element som vises for det valgte elementet. */\n  customOptionElement?: (\n    props: OptionProps<Option, IsMulti, GroupBase<Option>>,\n  ) => JSX.Element;\n  /** Custom element som vises i listen over alternativer. */\n  customSingleValueElement?: (\n    props: SingleValueProps<Option, IsMulti, GroupBase<Option>>,\n  ) => JSX.Element;\n  /** Testid. Legges på control-div med suffiks \"control\". */\n  'data-testid'?: string;\n  /**Ref til komponenten. */\n  ref?: SelectForwardRefType<Option, IsMulti>;\n} & CommonInputProps &\n  InputIconProps &\n  Pick<HTMLAttributes<HTMLInputElement>, 'aria-required'> &\n  WrappedReactSelectProps<Option, IsMulti, GroupBase<Option>>;\n\nexport type SelectForwardRefType<Option, IsMulti extends boolean> = Ref<\n  SelectInstance<Option, IsMulti, GroupBase<Option>>\n>;\n\nexport function Select<Option = unknown, IsMulti extends boolean = false>({\n  id,\n  label,\n  componentSize = 'medium',\n  errorMessage,\n  tip,\n  'aria-required': ariaRequired,\n  readOnly,\n  options,\n  isMulti,\n  value,\n  icon,\n  defaultValue,\n  width,\n  closeMenuOnSelect,\n  className,\n  style,\n  isDisabled,\n  isClearable = true,\n  placeholder,\n  menuPortalTarget,\n  menuPlacement = 'auto',\n  customOptionElement,\n  customSingleValueElement,\n  'data-testid': dataTestId,\n  onKeyDown,\n  openMenuOnClick,\n  ref,\n  instanceId,\n  afterLabelContent,\n  hideSelectedOptions,\n  ...rest\n}: SelectProps<Option, IsMulti>) {\n  const themeContext = useContext(ThemeContext);\n\n  if (!themeContext) {\n    throw new Error('Select must be used within a ThemeProvider');\n  }\n\n  const portalTarget = menuPortalTarget ?? themeContext?.el;\n\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-select`;\n\n  const singleValueId = !isMulti ? `${uniqueId}-singleValue` : undefined;\n  const hasErrorMessage = !!errorMessage;\n  const showRequiredStyling = !!(rest.required || ariaRequired);\n\n  const tipId = derivativeIdGenerator(uniqueId, 'tip');\n  const errorMessageId = derivativeIdGenerator(uniqueId, 'errorMessage');\n\n  const inputWidth = getInputWidth(\n    width,\n    componentSize === 'xsmall' && 'var(--dds-input-default-width-xsmall)',\n  );\n\n  const customInput = useCallback(\n    <Option, IsMulti extends boolean>(\n      props: InputProps<Option, IsMulti>,\n    ): ReactNode => (\n      <DDSInput\n        {...props}\n        readOnly={readOnly}\n        aria-required={ariaRequired}\n        aria-activedescendant={\n          props['aria-activedescendant'] === ''\n            ? undefined\n            : props['aria-activedescendant']\n        }\n        ariaInvalid={hasErrorMessage}\n        ariaDescribedby={spaceSeparatedIdListGenerator([\n          singleValueId,\n          tip ? tipId : undefined,\n          errorMessage ? errorMessageId : undefined,\n        ])}\n      />\n    ),\n    [],\n  );\n\n  const customSingleValue = useCallback(\n    (\n      props: SingleValueProps<Option, IsMulti, GroupBase<Option>>,\n    ): ReactNode => (\n      <CustomSingleValue\n        {...props}\n        id={singleValueId}\n        Element={customSingleValueElement}\n      />\n    ),\n    [],\n  );\n\n  const customClearIndicator = useCallback(\n    (\n      props: ClearIndicatorProps<Option, IsMulti, GroupBase<Option>>,\n    ): ReactNode => <DDSClearIndicator {...props} />,\n    [],\n  );\n\n  const customDropdownIndicator = useCallback(\n    (\n      props: DropdownIndicatorProps<Option, IsMulti, GroupBase<Option>>,\n    ): ReactNode => (\n      <DDSDropdownIndicator {...props} componentSize={componentSize} />\n    ),\n    [],\n  );\n\n  const customControl = useCallback(\n    (props: ControlProps<Option, IsMulti, GroupBase<Option>>): ReactNode => (\n      <DDSControl\n        {...props}\n        componentSize={componentSize}\n        readOnly={readOnly}\n        icon={icon}\n        dataTestId={dataTestId}\n      />\n    ),\n    [componentSize, readOnly, icon, dataTestId],\n  );\n\n  const customOptionComponent = useCallback(\n    (props: OptionProps<Option, IsMulti, GroupBase<Option>>): ReactNode => {\n      if (customOptionElement) {\n        return <CustomOption {...props} customElement={customOptionElement} />;\n      } else {\n        return <DDSOption {...props} />;\n      }\n    },\n    [customOptionElement, componentSize],\n  );\n\n  const reactSelectProps: ReactSelectProps<\n    Option,\n    IsMulti,\n    GroupBase<Option>\n  > = {\n    options,\n    value,\n    defaultValue,\n    isDisabled: !!isDisabled,\n    isClearable,\n    hideSelectedOptions: hideSelectedOptions ? hideSelectedOptions : false,\n    placeholder: placeholder ? placeholder : '',\n    closeMenuOnSelect: closeMenuOnSelect ? closeMenuOnSelect : !isMulti,\n    isMulti,\n    instanceId: instanceId ?? useId(),\n    inputId: uniqueId,\n    name: uniqueId,\n    menuPortalTarget: portalTarget,\n    menuPlacement,\n    classNamePrefix: prefix,\n    styles: getCustomStyles<Option>(componentSize, hasErrorMessage, readOnly),\n    filterOption: (option, inputValue) => {\n      const { label } = option;\n      return searchFilter(label, inputValue) || inputValue === '';\n    },\n    components: {\n      Option: customOptionComponent,\n      NoOptionsMessage: DDSNoOptionsMessage,\n      Input: customInput,\n      SingleValue: customSingleValue,\n      ClearIndicator: customClearIndicator,\n      DropdownIndicator: customDropdownIndicator,\n      MultiValueRemove: DDSMultiValueRemove,\n      Control: customControl,\n    },\n    'aria-invalid': hasErrorMessage ? true : undefined,\n    onKeyDown: readOnlyKeyDownHandler('select', readOnly, onKeyDown),\n    openMenuOnClick: readOnly\n      ? false\n      : openMenuOnClick\n        ? openMenuOnClick\n        : undefined,\n    ...rest,\n  };\n\n  return (\n    <Box\n      width={inputWidth}\n      position=\"relative\"\n      margin=\"0\"\n      className={cn(\n        className,\n        isDisabled && styles['container--disabled'],\n        readOnly && styles['container--readonly'],\n        inputStyles['input-group'],\n      )}\n      style={style}\n    >\n      {renderLabel({\n        label,\n        htmlFor: uniqueId,\n        showRequiredStyling,\n        readOnly,\n        afterLabelContent,\n      })}\n      <ReactSelect {...reactSelectProps} ref={ref} />\n      {renderInputMessage({ tip, tipId, errorMessage, errorMessageId })}\n    </Box>\n  );\n}\n\nSelect.displayName = 'Select';\n",".container--disabled {\n  cursor: not-allowed;\n}\n\n.container--readonly {\n  cursor: default;\n}\n\n.inner-single-value {\n  overflow: hidden;\n  text-overflow: ellipsis;\n  white-space: nowrap;\n  box-sizing: border-box;\n  max-width: 100%;\n}\n\n.control {\n  &:hover:not(.control--readonly) .dropdown-indicator,\n  &:focus-within .dropdown-indicator {\n    color: var(--dds-color-icon-action-hover);\n  }\n}\n\n.control--readonly .dropdown-indicator {\n  pointer-events: none;\n}\n\n.control--disabled .dropdown-indicator {\n  pointer-events: none;\n}\n","import { type GroupBase, type StylesConfig } from 'react-select';\n\nimport { focusVisible, focusVisibleTransitionValue } from '../helpers';\nimport { scrollbarStyling } from '../helpers';\nimport { type InputSize } from '../helpers/Input';\n\ntype FontToken<T extends string = string> = `var(--dds-font-${T})`;\ntype LetterSpacingToken<T extends string = string> =\n  `var(--dds-font-${T}-letter-spacing)`;\n\ninterface StaticSelectTypography<T extends string = string> {\n  font: FontToken<T>;\n  letterSpacing: LetterSpacingToken<T>;\n}\n\ntype SelectTypography = Record<InputSize, StaticSelectTypography>;\n\nconst optionTypography: SelectTypography = {\n  medium: {\n    font: 'var(--dds-font-body-short-medium)',\n    letterSpacing: 'var(--dds-font-body-short-medium-letter-spacing)',\n  },\n  small: {\n    font: 'var(--dds-font-body-short-small)',\n    letterSpacing: 'var(--dds-font-body-short-small-letter-spacing)',\n  },\n  xsmall: {\n    font: 'var(--dds-font-body-short-xsmall)',\n    letterSpacing: 'var(--dds-font-body-short-xsmall-letter-spacing)',\n  },\n};\n\nconst controlTypography: SelectTypography = optionTypography;\n\nconst multiValueLabelTypography: SelectTypography = {\n  medium: {\n    font: 'var(--dds-font-body-short-small)',\n    letterSpacing: 'var(--dds-font-body-short-small-letter-spacing)',\n  },\n  small: {\n    font: 'var(--dds-font-body-short-small)',\n    letterSpacing: 'var(--dds-font-body-short-small-letter-spacing)',\n  },\n  xsmall: {\n    font: 'var(--dds-font-body-short-xsmall)',\n    letterSpacing: 'var(--dds-font-body-short-xsmall-letter-spacing)',\n  },\n};\n\nconst groupHeadingTypography: StaticSelectTypography = {\n  font: 'var(--dds-font-heading-xsmall)',\n  letterSpacing: 'var(--dds-font-heading-xsmall-letter-spacing)',\n};\n\nconst typography = {\n  option: optionTypography,\n  control: controlTypography,\n  multiValueLabel: multiValueLabelTypography,\n  groupHeading: groupHeadingTypography,\n};\n\nconst clearButtonSpacing: Record<InputSize, string> = {\n  xsmall: 'var(--dds-spacing-x0-125)',\n  small: 'var(--dds-spacing-x0-25)',\n  medium: 'var(--dds-spacing-x0-5)',\n};\n\nexport const prefix = 'dds-select';\n\nexport const getCustomStyles = <TOption>(\n  size: InputSize,\n  hasError: boolean,\n  isReadOnly?: boolean,\n): Partial<StylesConfig<TOption, boolean, GroupBase<TOption>>> => ({\n  control: (provided, state) => ({\n    position: 'relative',\n    display: 'flex',\n    alignItems: 'center',\n    flexWrap: 'wrap',\n    cursor: 'pointer',\n    borderRadius: 'var(--dds-border-radius-input)',\n    border: '1px solid',\n    borderColor: 'var(--dds-color-border-default)',\n    backgroundColor: 'var(--dds-color-surface-default)',\n    transition: `box-shadow var(--dds-motion-micro-state), border-color var(--dds-motion-micro-state), ${focusVisibleTransitionValue}`,\n    ...typography.control[size],\n    '&:hover': {\n      ...(!isReadOnly && {\n        borderColor: 'var(--dds-color-border-action-hover)',\n        boxShadow: '0 0 0 1px var(--dds-color-border-action-hover)',\n      }),\n    },\n    ...(hasError && {\n      borderColor: 'var(--dds-color-border-danger)',\n      boxShadow: '0 0 0 1px var(--dds-color-border-danger)',\n      '&:hover': {\n        borderColor: 'var(--dds-color-border-danger)',\n        boxShadow: '0 0 0 1px var(--dds-color-border-danger)',\n      },\n    }),\n    '&:focus-within': {\n      ...focusVisible,\n    },\n    ...(state.selectProps.isDisabled && {\n      borderColor: 'var(--dds-color-border-subtle)',\n      backgroundColor: 'var(--dds-color-surface-field-disabled)',\n      color: 'var(--dds-color-text-subtle)',\n      pointerEvents: 'none',\n    }),\n    ...(isReadOnly && {\n      borderColor: 'var(--dds-color-border-default)',\n      backgroundColor: 'var(--dds-color-surface-field-disabled)',\n      color: 'var(--dds-color-text-medium)',\n      boxShadow: 'none',\n      cursor: 'default',\n    }),\n  }),\n  placeholder: provided => ({\n    ...provided,\n    color: 'var(--dds-color-text-subtle)',\n    margin: 0,\n  }),\n  input: provided => ({\n    ...provided,\n    margin: 0,\n    padding: 0,\n  }),\n  indicatorSeparator: () => ({}),\n  dropdownIndicator: (provided, state) => ({\n    display: 'inline-flex',\n    '@media (prefers-reduced-motion: no-preference)': {\n      transition:\n        'color var(--dds-motion-micro-state), transform var(--dds-motion-chevron)',\n    },\n    padding: 0,\n    color: 'var(--dds-color-icon-default)',\n    ...(state.selectProps.isDisabled && {\n      color: 'var(--dds-color-icon-subtle)',\n    }),\n    ...(isReadOnly && { color: 'var(--dds-color-icon-subtle)' }),\n  }),\n\n  valueContainer: (provided, state) => ({\n    ...provided,\n    ...(state.selectProps.isMulti && {\n      gap: 'var(--dds-spacing-x0-25)',\n    }),\n    padding: 0,\n    overflowY: 'visible',\n  }),\n\n  singleValue: () => ({\n    gridArea: '1/1/2/3',\n    overflow: 'hidden',\n    boxSizing: 'border-box',\n  }),\n  multiValue: (provided, state) => ({\n    boxSizing: 'border-box',\n    minWidth: 0,\n    display: 'flex',\n    borderRadius: 'var(--dds-border-radius-surface)',\n    backgroundColor: 'var(--dds-color-surface-medium)',\n    ...((state.selectProps.isDisabled || isReadOnly) && {\n      boxShadow: '0 0 0 1px var(--dds-color-border-subtle) inset',\n    }),\n    ...typography.multiValueLabel[size],\n    color: 'var(--dds-color-text-default)',\n  }),\n  multiValueLabel: (provided, state) => ({\n    overflow: 'hidden',\n    textOverflow: 'ellipsis',\n    whiteSpace: 'nowrap',\n    boxSizing: 'border-box',\n    paddingInlineStart: 'var(--dds-spacing-x0-25)',\n    paddingBlock: 'var(--dds-spacing-x0-125)',\n    ...(state.selectProps.isDisabled && {\n      color: 'var(--dds-color-text-subtle)',\n    }),\n    ...(isReadOnly && {\n      color: 'var(--dds-color-text-medium)',\n    }),\n    ...((state.selectProps.isDisabled || isReadOnly) && {\n      paddingInlineEnd: 'var(--dds-spacing-x0-25)',\n    }),\n  }),\n  multiValueRemove: (provided, state) =>\n    state.selectProps.isDisabled || isReadOnly\n      ? {\n          display: 'none',\n        }\n      : {\n          boxSizing: 'border-box',\n          display: 'flex',\n          alignItems: 'center',\n          borderEndEndRadius: 'var(--dds-border-radius-surface)',\n          borderStartEndRadius: 'var(--dds-border-radius-surface)',\n          '@media (prefers-reduced-motion: no-preference)': {\n            transition:\n              'color var(--dds-motion-micro-state), background-color var(--dds-motion-micro-state), box-shadow var(--dds-motion-micro-state)',\n          },\n          '&:hover': {\n            backgroundColor: 'var(--dds-color-surface-hover-default)',\n          },\n        },\n  menu: provided => ({\n    ...provided,\n    boxSizing: 'border-box',\n    width: '100%',\n    boxShadow: 'var(--dds-shadow-medium)',\n    zIndex: 100,\n    transition: 'var(--dds-motion-surface)',\n    border: '1px solid var(--dds-color-border-default)',\n    backgroundColor: 'var(--dds-color-surface-default)',\n    borderRadius: 'var(--dds-border-radius-surface)',\n    marginBlock: 'var(--dds-spacing-x0-25)',\n  }),\n  menuPortal: provided => ({\n    ...provided,\n    zIndex: 99999,\n  }),\n  group: () => ({\n    boxSizing: 'border-box',\n  }),\n  groupHeading: () => ({\n    ...typography.groupHeading,\n    color: 'var(--dds-color-text-default)',\n    padding:\n      'var(--dds-spacing-x0-75) var(--dds-spacing-x0-75) 0 var(--dds-spacing-x0-75)',\n  }),\n  menuList: () => ({\n    maxHeight: '300px',\n    overflowY: 'auto',\n    position: 'relative',\n    boxSizing: 'border-box',\n    padding: 'var(--dds-spacing-x0-125)',\n    ...scrollbarStyling,\n  }),\n  option: (provided, state) => ({\n    ...provided,\n    cursor: 'pointer',\n    display: 'flex',\n    alignItems: 'center',\n    gap: 'var(--dds-spacing-x0-25)',\n    padding: 'var(--dds-spacing-x0-75)',\n    borderRadius: 'var(--dds-border-radius-surface)',\n    backgroundColor: 'var(--dds-color-surface-default)',\n    ...typography.option[size],\n    color: 'var(--dds-color-text-default)',\n    '@media (prefers-reduced-motion: no-preference)': {\n      transition:\n        'color var(--dds-motion-micro-state), background-color var(--dds-motion-micro-state)',\n    },\n    ...(state.isSelected && {\n      backgroundColor: 'var(--dds-color-surface-selected-default)',\n    }),\n    // egen stil siden react-select bruker focus-state og hover-styling samtidig; ikke nødvendig hvis de kan skilles.\n    ...(state.isFocused && {\n      outline: 'var(--dds-color-border-action-hover) 2px solid',\n      outlineOffset: 'calc(var(--dds-spacing-x0-125) * -1)',\n    }),\n  }),\n  noOptionsMessage: () => ({\n    ...typography.option[size],\n    padding: 'var(--dds-spacing-x0-5) var(--dds-spacing-x1)',\n    color: 'var(--dds-color-text-medium)',\n  }),\n  clearIndicator: () =>\n    isReadOnly\n      ? { display: 'none' }\n      : {\n          display: 'inline-flex',\n          color: 'var(--dds-color-icon-default)',\n          borderRadius: 'var(--dds-border-radius-button)',\n          marginBlock: `calc(-1 * ${clearButtonSpacing[size]})`,\n          padding: clearButtonSpacing[size],\n\n          '@media (prefers-reduced-motion: no-preference)': {\n            transition: 'background-color var(--dds-motion-micro-state)',\n          },\n          '&:hover': {\n            backgroundColor: 'var(--dds-color-surface-hover-default)',\n          },\n        },\n  loadingIndicator: provided => ({\n    ...provided,\n    padding: 0,\n    color: 'var(--dds-color-icon-default)',\n  }),\n});\n","import React, { type JSX, type ReactNode } from 'react';\nimport {\n  type ClearIndicatorProps,\n  type ControlProps,\n  type DropdownIndicatorProps,\n  type InputProps,\n  type MultiValueRemoveProps,\n  type NoticeProps,\n  type OptionProps,\n  type SingleValueProps,\n  components,\n} from 'react-select';\n\nimport styles from './Select.module.css';\nimport { cn } from '../../utils';\nimport { type InputSize } from '../helpers/Input';\nimport inputStyles from '../helpers/Input/Input.module.css';\nimport { Icon, type IconSize, type SvgIcon } from '../Icon';\nimport { CheckIcon, CloseSmallIcon } from '../Icon/icons';\nimport { AnimatedChevronUpDownIcon } from '../Icon/icons/animated';\n\nconst {\n  Option,\n  NoOptionsMessage,\n  Input,\n  SingleValue,\n  ClearIndicator,\n  DropdownIndicator,\n  MultiValueRemove,\n  Control,\n} = components;\n\nexport const getIndicatorIconSize = (componentSize: InputSize): IconSize => {\n  switch (componentSize) {\n    case 'medium':\n      return 'medium';\n    case 'small':\n      return 'small';\n    case 'xsmall':\n      return 'small';\n  }\n};\n\nexport const DDSOption = <TValue, IsMulti extends boolean>({\n  ...props\n}: OptionProps<TValue, IsMulti>) => (\n  <Option {...props}>\n    {props.isSelected && <Icon icon={CheckIcon} iconSize=\"small\" />}\n    {props.children}\n  </Option>\n);\n\ntype CustomOptionProps<TValue, IsMulti extends boolean> = OptionProps<\n  TValue,\n  IsMulti\n> & {\n  customElement: (props: OptionProps<TValue, IsMulti>) => JSX.Element;\n};\nexport const CustomOption = <TValue, IsMulti extends boolean>(\n  props: CustomOptionProps<TValue, IsMulti>,\n): ReactNode => (\n  <Option {...props}>{React.createElement(props.customElement, props)}</Option>\n);\n\ntype CustomSingleValueProps<\n  TOption,\n  IsMulti extends boolean,\n> = SingleValueProps<TOption, IsMulti> & {\n  id?: string;\n  Element?: (props: SingleValueProps<TOption, IsMulti>) => ReactNode;\n};\nexport const CustomSingleValue = <TOption, IsMulti extends boolean>({\n  id,\n  Element,\n  ...props\n}: CustomSingleValueProps<TOption, IsMulti>): ReactNode => (\n  <SingleValue {...props}>\n    <div id={id} className={styles['inner-single-value']}>\n      {Element ? <Element {...props} /> : props.children}\n    </div>\n  </SingleValue>\n);\n\nexport const DDSNoOptionsMessage = <TValue, IsMulti extends boolean>(\n  props: NoticeProps<TValue, IsMulti>,\n) => <NoOptionsMessage {...props}>Ingen treff</NoOptionsMessage>;\n\nexport const DDSClearIndicator = <TValue, IsMulti extends boolean>({\n  ...props\n}: ClearIndicatorProps<TValue, IsMulti>) => (\n  <ClearIndicator {...props}>\n    <Icon icon={CloseSmallIcon} iconSize=\"component\" />\n  </ClearIndicator>\n);\n\nexport const DDSMultiValueRemove = <TValue, IsMulti extends boolean>(\n  props: MultiValueRemoveProps<TValue, IsMulti>,\n) => (\n  <MultiValueRemove {...props}>\n    <Icon icon={CloseSmallIcon} iconSize=\"component\" />\n  </MultiValueRemove>\n);\n\nexport const DDSDropdownIndicator = <TValue, IsMulti extends boolean>(\n  props: DropdownIndicatorProps<TValue, IsMulti> & { componentSize: InputSize },\n): ReactNode => {\n  const { className, componentSize, ...rest } = props;\n  const iconState = rest.selectProps.menuIsOpen ? 'up' : 'down';\n  return (\n    <DropdownIndicator\n      {...rest}\n      className={cn(\n        className,\n        styles['dropdown-indicator'],\n        inputStyles[`input-with-el-right--${componentSize}`],\n      )}\n    >\n      <Icon\n        icon={AnimatedChevronUpDownIcon}\n        iconSize=\"component\"\n        iconState={iconState}\n      />\n    </DropdownIndicator>\n  );\n};\n\ntype DDSInputProps<TOption, IsMulti extends boolean> = InputProps<\n  TOption,\n  IsMulti\n> & {\n  ariaInvalid: boolean;\n  ariaDescribedby?: string;\n};\n\nexport const DDSInput = <TOption, IsMulti extends boolean>({\n  ariaInvalid,\n  ariaDescribedby,\n  ...props\n}: DDSInputProps<TOption, IsMulti>) => (\n  <Input\n    {...props}\n    aria-invalid={ariaInvalid}\n    aria-describedby={ariaDescribedby}\n  />\n);\n\ntype DDSControlProps<TValue, IsMulti extends boolean> = ControlProps<\n  TValue,\n  IsMulti\n> & {\n  componentSize: InputSize;\n  readOnly?: boolean;\n  icon?: SvgIcon;\n  dataTestId?: string;\n};\n\ntype CustomInnerDDSControlProps = React.HTMLAttributes<HTMLDivElement> & {\n  'data-testid'?: string;\n};\n\nexport function DDSControl<TValue, IsMulti extends boolean>(\n  props: DDSControlProps<TValue, IsMulti>,\n) {\n  const {\n    componentSize,\n    readOnly,\n    icon,\n    dataTestId,\n    className,\n    children,\n    innerProps,\n    ...rest\n  } = props;\n  const hasIcon = !!icon;\n  return (\n    <Control\n      {...rest}\n      innerProps={\n        {\n          ...innerProps,\n          'data-testid': dataTestId ? dataTestId + '-control' : undefined,\n        } as CustomInnerDDSControlProps\n      }\n      className={cn(\n        className,\n        styles.control,\n        rest.isDisabled && styles['control--disabled'],\n        readOnly && styles['control--readonly'],\n        inputStyles[`input--${componentSize}`],\n        hasIcon && inputStyles[`input-with-icon--${componentSize}`],\n      )}\n    >\n      {hasIcon && (\n        <Icon\n          icon={icon}\n          iconSize=\"component\"\n          className={cn(\n            inputStyles['input-group__absolute-el'],\n            inputStyles[`input-group__absolute-el--${componentSize}`],\n          )}\n        />\n      )}\n      {children}\n    </Control>\n  );\n}\n","import { useEffect, useId, useRef, useState } from 'react';\nimport type { ChangeEvent, ComponentPropsWithRef } from 'react';\n\nimport styles from './NativeSelect.module.css';\nimport { useCombinedRef } from '../../../hooks';\nimport { useTranslation } from '../../../i18n';\nimport { commonTexts } from '../../../i18n/commonTexts';\nimport {\n  cn,\n  derivativeIdGenerator,\n  readOnlyKeyDownHandler,\n  readOnlyMouseDownHandler,\n  spaceSeparatedIdListGenerator,\n} from '../../../utils';\nimport { createClearChangeEvent } from '../../../utils/createClearChangeEvent';\nimport { ClearButton } from '../../helpers/ClearButton';\nimport {\n  type CommonInputProps,\n  type InputIconProps,\n  type InputProps,\n  getInputWidth,\n} from '../../helpers/Input';\nimport inputStyles from '../../helpers/Input/Input.module.css';\nimport { focusable } from '../../helpers/styling/focus.module.css';\nimport { scrollbar } from '../../helpers/styling/utilStyles.module.css';\nimport utilStyles from '../../helpers/styling/utilStyles.module.css';\nimport { Icon } from '../../Icon';\nimport { ChevronDownIcon } from '../../Icon/icons';\nimport { renderInputMessage } from '../../InputMessage';\nimport { Box } from '../../layout';\nimport { renderLabel } from '../../Typography/Label/Label.utils';\nimport typographyStyles from '../../Typography/typographyStyles.module.css';\n\nexport type NativeSelectProps = {\n  /** Om brukeren kan fjerne verdien med en tømmeknapp. */\n  clearable?: boolean;\n  /** Implementerer `readOnly` oppførsel etter standard for `<input>` og setter `readOnly` styling. */\n  readOnly?: InputProps['readOnly'];\n} & CommonInputProps &\n  Pick<InputProps, 'componentSize'> &\n  InputIconProps &\n  ComponentPropsWithRef<'select'>;\n\nexport const NativeSelect = ({\n  ref,\n  id,\n  children,\n  componentSize = 'medium',\n  label,\n  multiple,\n  readOnly,\n  errorMessage,\n  tip,\n  required,\n  'aria-required': ariaRequired,\n  'aria-describedby': ariaDescribedby,\n  width,\n  className,\n  style,\n  onKeyDown,\n  onMouseDown,\n  clearable,\n  afterLabelContent,\n  onChange,\n  icon,\n  ...rest\n}: NativeSelectProps) => {\n  const { t } = useTranslation();\n  const selectRef = useRef<HTMLSelectElement>(null);\n\n  const [hasValue, setHasValue] = useState(false);\n\n  useEffect(() => {\n    const selectedIndex = selectRef.current?.selectedIndex ?? -1;\n    setHasValue(selectedIndex !== 0);\n  }, []);\n\n  useEffect(() => {\n    if (clearable) {\n      const firstOption = selectRef.current?.options[0];\n      if (firstOption?.value !== '') {\n        throw new Error(\n          `Invalid configuration: The first <option> in <NativeSelect> must have value=\"\" to support the clearable feature. \n      Please ensure the empty option is defined as:\n      <option value=\"\"></option>`,\n        );\n      }\n    }\n  }, [clearable]);\n\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-native-select`;\n\n  const hasErrorMessage = !!errorMessage;\n  const hasTip = !!tip;\n\n  const tipId = derivativeIdGenerator(uniqueId, 'tip');\n  const errorMessageId = derivativeIdGenerator(uniqueId, 'errorMessage');\n\n  const showRequiredStyling = !!(required || ariaRequired);\n\n  const inputWidth = getInputWidth(\n    width,\n    componentSize === 'xsmall' && 'var(--dds-input-default-width-xsmall)',\n  );\n\n  const handleChange = (e: ChangeEvent<HTMLSelectElement>) => {\n    setHasValue(e.target.selectedIndex !== 0);\n    onChange?.(e);\n  };\n\n  const clearInput = () => {\n    const clearChangeEvent =\n      createClearChangeEvent<HTMLSelectElement>(uniqueId);\n    setHasValue(false);\n    onChange?.(clearChangeEvent);\n  };\n\n  const showClearButton = clearable && hasValue && !readOnly && !rest.disabled;\n  const hasIcon = !!icon;\n\n  return (\n    <div className={className} style={style}>\n      {renderLabel({\n        label,\n        htmlFor: uniqueId,\n        showRequiredStyling,\n        readOnly,\n        afterLabelContent,\n      })}\n      <Box\n        position=\"relative\"\n        width={inputWidth}\n        className={cn(\n          typographyStyles[`body-short-${componentSize}`],\n          inputStyles['input-group'],\n        )}\n      >\n        {hasIcon && (\n          <Icon\n            icon={icon}\n            className={cn(\n              inputStyles['input-group__absolute-el'],\n              inputStyles[`input-group__absolute-el--${componentSize}`],\n            )}\n            iconSize=\"component\"\n          />\n        )}\n        <select\n          ref={useCombinedRef(ref, selectRef)}\n          id={uniqueId}\n          multiple={multiple}\n          className={cn(\n            styles.select,\n            readOnly && styles['select--readonly'],\n            inputStyles.input,\n            inputStyles[`input-with-el-right--${componentSize}`],\n            inputStyles[`input--${componentSize}`],\n            hasIcon && inputStyles[`input-with-icon--${componentSize}`],\n            scrollbar,\n            focusable,\n            hasErrorMessage && inputStyles['input--stateful-danger'],\n            multiple && styles['select--multiple'],\n            hasValue &&\n              clearable &&\n              inputStyles[`input-with-icon-and-button-right--${componentSize}`],\n          )}\n          onChange={handleChange}\n          aria-readonly={readOnly}\n          aria-invalid={hasErrorMessage}\n          aria-describedby={spaceSeparatedIdListGenerator([\n            hasTip ? tipId : undefined,\n            hasErrorMessage ? errorMessageId : undefined,\n            ariaDescribedby,\n          ])}\n          required={required}\n          onKeyDown={readOnlyKeyDownHandler('select', readOnly, onKeyDown)}\n          onMouseDown={readOnlyMouseDownHandler(readOnly, onMouseDown)}\n          {...rest}\n        >\n          {children}\n        </select>\n        {showClearButton && (\n          <ClearButton\n            aria-label={t(commonTexts.clearSelect)}\n            onClick={clearInput}\n            size={componentSize}\n            hasIconToRight\n          />\n        )}\n        {!multiple && (\n          <Icon\n            icon={ChevronDownIcon}\n            iconSize=\"component\"\n            className={cn(\n              utilStyles['center-absolute-y'],\n              inputStyles[`input-group__absolute-el-right--${componentSize}`],\n            )}\n          />\n        )}\n      </Box>\n      {renderInputMessage({ tip, tipId, errorMessage, errorMessageId })}\n    </div>\n  );\n};\n",".select {\n  appearance: none;\n  text-overflow: ellipsis;\n  font: inherit;\n  width: 100%;\n\n  &:hover:not(:disabled):not(.select--readonly) {\n    border-color: var(--dds-color-border-action-hover);\n    box-shadow: 0 0 0 1px var(--dds-color-border-action-hover);\n\n    & + svg {\n      color: var(--dds-color-icon-action-hover);\n    }\n  }\n  &:disabled {\n    opacity: 1;\n    cursor: not-allowed;\n    color: var(--dds-color-text-subtle);\n    background-color: var(--dds-color-surface-field-disabled);\n    border-color: var(--dds-color-border-subtle);\n\n    + svg {\n      color: var(--dds-color-icon-subtle);\n    }\n  }\n  option {\n    background-color: var(--dds-color-surface-default);\n    &:hover {\n      background-color: var(--dds-color-surface-hover-default);\n    }\n    @media (prefers-reduced-motion: no-preference) {\n      transition: background-color var(--dds-motion-micro-state);\n    }\n  }\n  optgroup {\n    font-weight: normal;\n    font-style: normal;\n  }\n}\n\n.select--readonly {\n  box-shadow: none;\n  outline: none;\n  cursor: default;\n  color: var(--dds-color-text-subtle);\n  background-color: var(--dds-color-surface-field-disabled);\n\n  + svg {\n    color: var(--dds-color-icon-subtle);\n  }\n}\n\n.select--multiple {\n  padding-right: 0;\n\n  &.select--readonly option {\n    background-color: var(--dds-color-surface-field-disabled);\n  }\n}\n","import type { SelectOption } from './Select';\n\nexport const createSelectOptions = <TValue extends string | number>(\n  ...args: Array<TValue>\n): Array<SelectOption<TValue>> => args.map(v => ({ label: v, value: v }));\n","import { type Property } from 'csstype';\nimport {\n  type ChangeEvent,\n  type ForwardedRef,\n  useEffect,\n  useId,\n  useLayoutEffect,\n  useRef,\n  useState,\n} from 'react';\n\nimport { COUNTRIES, type Country, type ISOCountryCode } from './constants';\nimport styles from './PhoneInput.module.css';\nimport { useCombinedRef } from '../../hooks';\nimport { createTexts, useTranslation } from '../../i18n';\nimport {\n  cn,\n  derivativeIdGenerator,\n  spaceSeparatedIdListGenerator,\n} from '../../utils';\nimport {\n  type InputProps,\n  StatefulInput,\n  getInputWidth,\n} from '../helpers/Input';\nimport inputStyles from '../helpers/Input/Input.module.css';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\nimport { renderInputMessage } from '../InputMessage';\nimport { Box, type Breakpoint } from '../layout';\nimport { styleUpToBreakpoint } from '../layout/common/utils';\nimport { NativeSelect } from '../Select';\nimport { renderLabel } from '../Typography/Label/Label.utils';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport interface PhoneInputValue {\n  countryCode: ISOCountryCode | (string & {});\n  phoneNumber: string;\n}\n\ninterface PhoneInputCountryOption {\n  countryCode: ISOCountryCode;\n  label: string;\n}\n\nconst prioritizedCountries: Array<Country> = [\n  COUNTRIES.NO,\n  COUNTRIES.SE,\n  COUNTRIES.DK,\n  COUNTRIES.FI,\n];\n\nconst prioritizedCountryOptions: Array<PhoneInputCountryOption> =\n  prioritizedCountries.map(country => {\n    return {\n      label: `${country.name} ${country.dialCode}`,\n      countryCode: country.id,\n    };\n  });\n\nexport const compareCountriesByName = (a: Country, b: Country): number => {\n  if (a.name < b.name) {\n    return -1;\n  }\n  if (a.name > b.name) {\n    return 1;\n  }\n  return 0;\n};\n\nexport const createCountryOptions = (\n  countries: Record<string, Country>,\n): Array<PhoneInputCountryOption> => {\n  const sortedCountryOptions: Array<PhoneInputCountryOption> = Object.values(\n    countries,\n  )\n    .sort(compareCountriesByName)\n    .map(country => ({\n      countryCode: country.id,\n      label: `${country.name} ${country.dialCode}`,\n    }))\n    .filter(\n      country =>\n        !prioritizedCountryOptions.some(\n          pCountry => pCountry.countryCode === country.countryCode,\n        ),\n    );\n\n  return [...prioritizedCountryOptions, ...sortedCountryOptions];\n};\n\nexport const countryOptions: Array<PhoneInputCountryOption> =\n  createCountryOptions(COUNTRIES);\n\nexport type PhoneInputProps = {\n  /**\n   * Custom id for gruppen ved behov. setter `${id}-country-code` som `id` for landskode og `${id}-phone-number` for telefonnummer.\n   */\n  id?: string;\n  /**\n   * Verdi bestående av landskode og telefonnummer.\n   * */\n  value?: PhoneInputValue;\n  /** Default verdi bestående av landkode og telefonnummer. */\n  defaultValue?: PhoneInputValue;\n  /**\n   * `onChange` funksjon.\n   */\n  onChange?: (value: PhoneInputValue) => void;\n  /** `name` attributt; setter `${name}-country-code` som `name` for landskode og `${name}-phone-number` for telefonnummer. */\n  name?: string;\n  /**\n   * Brekkpunkt for små skjermer; den stacker subkomponentene vertikalt.\n   */\n  smallScreenBreakpoint?: Breakpoint;\n  /**\n   * Usynlig ledetekst for nedtrekksliste med landkoder. Brukes hvis default ikke passer eller ikke er beskrivende nok.\n   * @default \"Landskode\"\n   */\n  selectLabel?: string;\n  /**\n   * Ref for nedtrekksliste med landkoder.\n   */\n  selectRef?: ForwardedRef<HTMLSelectElement>;\n  /**\n   * Usynlig ledetekst for gruppen.  Brukes hvis default ikke passer eller ikke er beskrivende nok.\n   * @default \"Landskode og telefonnummer\"\n   */\n  groupLabel?: string;\n} & Pick<\n  InputProps,\n  | 'readOnly'\n  | 'disabled'\n  | 'width'\n  | 'componentSize'\n  | 'errorMessage'\n  | 'label'\n  | 'afterLabelContent'\n  | 'tip'\n  | 'required'\n  | 'className'\n  | 'style'\n  | 'aria-required'\n  | 'aria-describedby'\n  | 'ref'\n>;\n\nexport const PhoneInput = ({\n  label,\n  readOnly,\n  errorMessage,\n  tip,\n  required,\n  width,\n  componentSize = 'medium',\n  name,\n  className,\n  style,\n  value,\n  selectLabel,\n  selectRef,\n  onChange,\n  defaultValue,\n  'aria-required': ariaRequired,\n  'aria-describedby': ariaDescribedby,\n  groupLabel,\n  afterLabelContent,\n  ref,\n  ...props\n}: PhoneInputProps) => {\n  const { t } = useTranslation();\n  const tGroupLabel = groupLabel ?? t(texts.countryCodeAndPhoneNumber);\n  const tSelectLabel = selectLabel ?? t(texts.countryCode);\n  const generatedId = useId();\n  const uniqueId = props.id ?? generatedId;\n  const phoneInputId = `${uniqueId}-phone-input`;\n  const phoneNumberId = `${uniqueId}-phone-number`;\n  const selectId = `${uniqueId}-country-code`;\n\n  const hasErrorMessage = !!errorMessage;\n  const hasTip = !!tip;\n  const hasMessage = hasErrorMessage || hasTip;\n\n  const tipId = derivativeIdGenerator(phoneInputId, 'tip');\n  const errorMessageId = derivativeIdGenerator(phoneInputId, 'errorMessage');\n\n  const [callingCode, setCallingCode] = useState('');\n  const [selectedCountryCodeText, setSelectedCountryCodeText] = useState('');\n  const [internalValue, setInternalValue] = useState<PhoneInputValue>(\n    defaultValue ?? {\n      countryCode: '',\n      phoneNumber: '',\n    },\n  );\n\n  const isControlled = value !== undefined;\n\n  const [callingCodeWidth, setCallingCodeWidth] = useState(0);\n\n  const callingCodeRef = useRef<HTMLSpanElement>(null);\n\n  useLayoutEffect(() => {\n    if (callingCodeRef.current) {\n      setCallingCodeWidth(callingCodeRef.current.offsetWidth);\n    }\n  }, [callingCode]);\n\n  const callingCodeInlineStart: Property.PaddingInlineStart | undefined =\n    callingCodeWidth\n      ? `calc(var(--dds-spacing-x1) + ${callingCodeWidth}px)`\n      : undefined;\n\n  const internalSelectRef = useRef<HTMLSelectElement>(null);\n\n  const combinedSelectRef = useCombinedRef(selectRef, internalSelectRef);\n\n  const displayedValue = isControlled ? value : internalValue;\n\n  useEffect(() => {\n    const selectEl = internalSelectRef.current;\n    if (selectEl && selectEl.value) {\n      const { options, selectedIndex } = selectEl;\n      const content = options[selectedIndex].innerHTML;\n      setSelectedCountryCodeText(content);\n      setCallingCode(getCallingCode(content));\n    }\n  }, [displayedValue?.countryCode]);\n\n  const handleCountryCodeChange = (e: ChangeEvent<HTMLSelectElement>) => {\n    const newValue = {\n      countryCode: e.target.value,\n      phoneNumber: displayedValue?.phoneNumber ?? '',\n    };\n\n    const { options, selectedIndex } = e.target;\n    const content = options[selectedIndex].innerHTML;\n    setCallingCode(getCallingCode(content));\n\n    if (isControlled && onChange) {\n      onChange(newValue);\n    } else {\n      setInternalValue(newValue);\n    }\n  };\n\n  const handlePhoneNumberChange = (e: ChangeEvent<HTMLInputElement>) => {\n    const newValue = {\n      countryCode: displayedValue?.countryCode ?? '',\n      phoneNumber: e.target.value,\n    };\n\n    if (isControlled && onChange) {\n      onChange(newValue);\n    } else {\n      setInternalValue(newValue);\n    }\n  };\n\n  const commonProps = {\n    required,\n    'aria-required': ariaRequired,\n    disabled: props.disabled,\n    readOnly,\n    componentSize,\n  };\n\n  const showRequiredStyling = !!(required || ariaRequired);\n\n  const bp = props.smallScreenBreakpoint;\n\n  const widthDefault =\n    componentSize === 'xsmall' && 'var(--dds-input-default-width-xsmall)';\n\n  return (\n    <div className={cn(className, inputStyles.container)} style={style}>\n      {renderLabel({\n        label,\n        htmlFor: phoneNumberId,\n        showRequiredStyling,\n        readOnly,\n        afterLabelContent,\n      })}\n      <Box\n        display=\"flex\"\n        flexDirection={styleUpToBreakpoint('column', bp, 'row')}\n        className={cn(\n          styles['inputs-container'],\n          !!bp && styles[`inputs-container--small-screen-${bp}`],\n        )}\n        width={getInputWidth(width, widthDefault)}\n        role=\"group\"\n        aria-label={tGroupLabel}\n      >\n        <label className={utilStyles['visually-hidden']} htmlFor={selectId}>\n          {tSelectLabel}\n        </label>\n        <NativeSelect\n          width={styleUpToBreakpoint(\n            '100%',\n            bp,\n            componentSize === 'xsmall' ? '5rem' : '8rem',\n          )}\n          {...commonProps}\n          ref={combinedSelectRef}\n          id={selectId}\n          className={cn(styles.select)}\n          onChange={handleCountryCodeChange}\n          defaultValue={defaultValue?.countryCode}\n          value={displayedValue?.countryCode || ''}\n          title={selectedCountryCodeText}\n          name={`${name}-country-code`}\n          aria-describedby={spaceSeparatedIdListGenerator([\n            hasTip ? tipId : undefined,\n            ariaDescribedby,\n          ])}\n        >\n          {countryOptions.map((item, index) => (\n            <option value={item.countryCode} key={index}>\n              {item.label}\n            </option>\n          ))}\n        </NativeSelect>\n        <Box width=\"100%\" display=\"flex\" className={inputStyles['input-group']}>\n          <span\n            className={cn(\n              typographyStyles[`body-short-${componentSize}`],\n              inputStyles['input-group__absolute-el'],\n              styles['calling-code'],\n              (commonProps.disabled || commonProps.readOnly) &&\n                styles['calling-code--disabled'],\n            )}\n            ref={callingCodeRef}\n          >\n            {callingCode}\n          </span>\n\n          <Box\n            as={StatefulInput}\n            ref={ref}\n            type=\"tel\"\n            {...commonProps}\n            id={phoneNumberId}\n            value={displayedValue?.phoneNumber || ''}\n            defaultValue={defaultValue?.phoneNumber}\n            name={`${name}-phone-number`}\n            onChange={handlePhoneNumberChange}\n            width=\"100%\"\n            style={{\n              paddingInlineStart: callingCodeInlineStart,\n            }}\n            className={styles.input}\n            hasErrorMessage={hasErrorMessage}\n            aria-invalid={hasErrorMessage ? true : undefined}\n            aria-describedby={spaceSeparatedIdListGenerator([\n              hasTip ? tipId : undefined,\n              hasErrorMessage ? errorMessageId : undefined,\n              ariaDescribedby,\n            ])}\n          />\n        </Box>\n      </Box>\n      {hasMessage &&\n        renderInputMessage({ tip, tipId, errorMessage, errorMessageId })}\n    </div>\n  );\n};\n\nPhoneInput.displayName = 'PhoneInput';\n\nconst getCallingCode = (s: string): string =>\n  s.substring(s.indexOf('+'), s.length) ?? '';\n\nconst texts = createTexts({\n  countryCode: {\n    nb: 'Landskode',\n    no: 'Landskode',\n    nn: 'Landskode',\n    en: 'Country code',\n    se: 'Riikkakoda',\n  },\n  countryCodeAndPhoneNumber: {\n    nb: 'Landskode og telefonnummer',\n    no: 'Landskode og telefonnummer',\n    nn: 'Landskode og telefonnummer',\n    en: 'Country code and phone number',\n    se: 'Riikkakoda ja telefovnndanummir',\n  },\n});\n","export interface Country {\n  name: string;\n  id: ISOCountryCode;\n  dialCode: string;\n}\n\nexport type ISOCountryCode =\n  | 'AF'\n  | 'AL'\n  | 'DZ'\n  | 'AS'\n  | 'AD'\n  | 'AO'\n  | 'AI'\n  | 'AG'\n  | 'AR'\n  | 'AM'\n  | 'AW'\n  | 'AU'\n  | 'AT'\n  | 'AZ'\n  | 'BS'\n  | 'BH'\n  | 'BD'\n  | 'BB'\n  | 'BY'\n  | 'BE'\n  | 'BZ'\n  | 'BJ'\n  | 'BM'\n  | 'BT'\n  | 'BO'\n  | 'BA'\n  | 'BW'\n  | 'BR'\n  | 'IO'\n  | 'VG'\n  | 'BN'\n  | 'BG'\n  | 'BF'\n  | 'BI'\n  | 'KH'\n  | 'CM'\n  | 'CA'\n  | 'CV'\n  | 'KY'\n  | 'CF'\n  | 'TD'\n  | 'CL'\n  | 'CN'\n  | 'CX'\n  | 'CC'\n  | 'CO'\n  | 'EH'\n  | 'KM'\n  | 'CD'\n  | 'CG'\n  | 'CK'\n  | 'CR'\n  | 'CI'\n  | 'HR'\n  | 'CU'\n  | 'CW'\n  | 'CY'\n  | 'CZ'\n  | 'DK'\n  | 'DJ'\n  | 'DM'\n  | 'DO'\n  | 'EC'\n  | 'EG'\n  | 'SV'\n  | 'GQ'\n  | 'GS'\n  | 'ER'\n  | 'EE'\n  | 'ET'\n  | 'FK'\n  | 'FO'\n  | 'FJ'\n  | 'FI'\n  | 'FR'\n  | 'GF'\n  | 'PF'\n  | 'GA'\n  | 'GM'\n  | 'GE'\n  | 'DE'\n  | 'GH'\n  | 'GI'\n  | 'GR'\n  | 'GL'\n  | 'GD'\n  | 'GP'\n  | 'GU'\n  | 'GT'\n  | 'GG'\n  | 'GN'\n  | 'GW'\n  | 'GY'\n  | 'HT'\n  | 'HM'\n  | 'HN'\n  | 'HK'\n  | 'HU'\n  | 'IS'\n  | 'IN'\n  | 'ID'\n  | 'IR'\n  | 'IQ'\n  | 'IE'\n  | 'IM'\n  | 'IL'\n  | 'IT'\n  | 'JM'\n  | 'JP'\n  | 'JE'\n  | 'JO'\n  | 'KZ'\n  | 'KE'\n  | 'KI'\n  | 'XK'\n  | 'KW'\n  | 'KG'\n  | 'LA'\n  | 'LV'\n  | 'LB'\n  | 'LS'\n  | 'LR'\n  | 'LY'\n  | 'LI'\n  | 'LT'\n  | 'LU'\n  | 'MO'\n  | 'MK'\n  | 'MG'\n  | 'MW'\n  | 'MY'\n  | 'MV'\n  | 'ML'\n  | 'MT'\n  | 'MH'\n  | 'MQ'\n  | 'MR'\n  | 'MU'\n  | 'YT'\n  | 'MX'\n  | 'FM'\n  | 'MD'\n  | 'MC'\n  | 'MN'\n  | 'ME'\n  | 'MS'\n  | 'MA'\n  | 'MZ'\n  | 'MM'\n  | 'NA'\n  | 'NR'\n  | 'NP'\n  | 'NL'\n  | 'NC'\n  | 'NZ'\n  | 'NI'\n  | 'NE'\n  | 'NG'\n  | 'NU'\n  | 'NF'\n  | 'KP'\n  | 'MP'\n  | 'NO'\n  | 'OM'\n  | 'PK'\n  | 'PW'\n  | 'PS'\n  | 'PA'\n  | 'PG'\n  | 'PY'\n  | 'PE'\n  | 'PH'\n  | 'PL'\n  | 'PT'\n  | 'PR'\n  | 'QA'\n  | 'RE'\n  | 'RO'\n  | 'RU'\n  | 'RW'\n  | 'BL'\n  | 'SH'\n  | 'KN'\n  | 'LC'\n  | 'MF'\n  | 'PM'\n  | 'VC'\n  | 'WS'\n  | 'SM'\n  | 'ST'\n  | 'SA'\n  | 'SN'\n  | 'RS'\n  | 'SC'\n  | 'SL'\n  | 'SG'\n  | 'SX'\n  | 'SK'\n  | 'SI'\n  | 'SB'\n  | 'SO'\n  | 'ZA'\n  | 'KR'\n  | 'SS'\n  | 'ES'\n  | 'LK'\n  | 'SD'\n  | 'SR'\n  | 'SJ'\n  | 'SZ'\n  | 'SE'\n  | 'CH'\n  | 'SY'\n  | 'TW'\n  | 'TJ'\n  | 'TZ'\n  | 'TH'\n  | 'TL'\n  | 'TG'\n  | 'TK'\n  | 'TO'\n  | 'TT'\n  | 'TN'\n  | 'TR'\n  | 'TM'\n  | 'TC'\n  | 'TV'\n  | 'VI'\n  | 'UG'\n  | 'UA'\n  | 'AE'\n  | 'GB'\n  | 'US'\n  | 'UY'\n  | 'UZ'\n  | 'VU'\n  | 'VA'\n  | 'VE'\n  | 'VN'\n  | 'WF'\n  | 'YE'\n  | 'ZM'\n  | 'ZW'\n  | 'AX';\n\ntype Countries = Record<ISOCountryCode, Country>;\n\n// Hentet fra [uber/baseweb](https://github.com/uber/baseweb/)\n// Modifisert til å passe våre behov: nummer som int\n\nexport const COUNTRIES: Countries = {\n  AF: { name: 'Afghanistan (‫افغانستان‬‎)', id: 'AF', dialCode: '+93' },\n  AL: { name: 'Albania (Shqipëri)', id: 'AL', dialCode: '+355' },\n  DZ: { name: 'Algerie (‫الجزائر‬‎)', id: 'DZ', dialCode: '+213' },\n  AS: {\n    name: 'Amerikansk Samoa (American Samoa)',\n    id: 'AS',\n    dialCode: '+1684',\n  },\n  AD: { name: 'Andorra', id: 'AD', dialCode: '+376' },\n  AO: { name: 'Angola', id: 'AO', dialCode: '+244' },\n  AI: { name: 'Anguilla', id: 'AI', dialCode: '+1264' },\n  AG: {\n    name: 'Antigua og Barbuda (Antigua and Barbuda)',\n    id: 'AG',\n    dialCode: '+1268',\n  },\n  AR: { name: 'Argentina', id: 'AR', dialCode: '+54' },\n  AM: { name: 'Armenia (Հայաստան)', id: 'AM', dialCode: '+374' },\n  AW: { name: 'Aruba', id: 'AW', dialCode: '+297' },\n  AU: { name: 'Australia', id: 'AU', dialCode: '+61' },\n  AT: { name: 'Østerrike (Österreich)', id: 'AT', dialCode: '+43' },\n  AZ: { name: 'Aserbajdsjan (Azərbaycan)', id: 'AZ', dialCode: '+994' },\n  BS: { name: 'Bahamas', id: 'BS', dialCode: '+1242' },\n  BH: { name: 'Bahrain (‫البحرين‬‎)', id: 'BH', dialCode: '+973' },\n  BD: { name: 'Bangladesh (বাংলাদেশ)', id: 'BD', dialCode: '+880' },\n  BB: { name: 'Barbados', id: 'BB', dialCode: '+1246' },\n  BY: { name: 'Belarus (Беларусь)', id: 'BY', dialCode: '+375' },\n  BE: { name: 'Belgium (België)', id: 'BE', dialCode: '+32' },\n  BZ: { name: 'Belize', id: 'BZ', dialCode: '+501' },\n  BJ: { name: 'Benin (Bénin)', id: 'BJ', dialCode: '+229' },\n  BM: { name: 'Bermuda', id: 'BM', dialCode: '+1441' },\n  BT: { name: 'Bhutan (འབྲུག)', id: 'BT', dialCode: '+975' },\n  BO: { name: 'Bolivia', id: 'BO', dialCode: '+591' },\n  BA: {\n    name: 'Bosnia-Hercegovina (Босна и Херцеговина)',\n    id: 'BA',\n    dialCode: '+387',\n  },\n  BW: { name: 'Botswana', id: 'BW', dialCode: '+267' },\n  BR: { name: 'Brasil', id: 'BR', dialCode: '+55' },\n  IO: {\n    name: 'Det britiske territoriet i Indiahavet (British Indian Ocean Territory)',\n    id: 'IO',\n    dialCode: '+246',\n  },\n  VG: {\n    name: 'Britiske Jomfruøyer (British Virgin Islands)',\n    id: 'VG',\n    dialCode: '+1284',\n  },\n  BN: { name: 'Brunei', id: 'BN', dialCode: '+673' },\n  BG: { name: 'Bulgaria (България)', id: 'BG', dialCode: '+359' },\n  BF: { name: 'Burkina Faso', id: 'BF', dialCode: '+226' },\n  BI: { name: 'Burundi (Uburundi)', id: 'BI', dialCode: '+257' },\n  KH: { name: 'Kambodsja (កម្ពុជា)', id: 'KH', dialCode: '+855' },\n  CM: { name: 'Kamerun (Cameroun)', id: 'CM', dialCode: '+237' },\n  CA: { name: 'Canada', id: 'CA', dialCode: '+1' },\n  CV: { name: 'Kapp Verde (Kabu Verdi)', id: 'CV', dialCode: '+238' },\n  KY: { name: 'Caymanøyene (Cayman Islands)', id: 'KY', dialCode: '+1345' },\n  CF: {\n    name: 'Den sentralafrikanske republikk (République centrafricaine)',\n    id: 'CF',\n    dialCode: '+236',\n  },\n  TD: { name: 'Tsjad (Tchad)', id: 'TD', dialCode: '+235' },\n  CL: { name: 'Chile', id: 'CL', dialCode: '+56' },\n  CN: { name: 'Kina (中国)', id: 'CN', dialCode: '+86' },\n  CX: { name: 'Christmasøya (Christmas Island)', id: 'CX', dialCode: '+61' },\n  CC: {\n    name: 'Kokosøyene (Cocos (Keeling) Islands)',\n    id: 'CC',\n    dialCode: '+61',\n  },\n  CO: { name: 'Colombia', id: 'CO', dialCode: '+57' },\n  KM: { name: 'Komorene (‫جزر القمر‬‎)', id: 'KM', dialCode: '+269' },\n  CD: {\n    name: 'Kongo, den demokratiske republikken (République démocratique du Congo)',\n    id: 'CD',\n    dialCode: '+243',\n  },\n  CG: {\n    name: 'Kongo, republikken (République du Congo)',\n    id: 'CG',\n    dialCode: '+242',\n  },\n  CK: { name: 'Cookøyene (Cook Islands)', id: 'CK', dialCode: '+682' },\n  CR: { name: 'Costa Rica', id: 'CR', dialCode: '+506' },\n  CI: { name: 'Elfenbenskysten (Côte d’Ivoire)', id: 'CI', dialCode: '+225' },\n  HR: { name: 'Kroatia (Hrvatska)', id: 'HR', dialCode: '+385' },\n  CU: { name: 'Cuba', id: 'CU', dialCode: '+53' },\n  CW: { name: 'Curaçao', id: 'CW', dialCode: '+599' },\n  CY: { name: 'Kypros (Κύπρος)', id: 'CY', dialCode: '+357' },\n  CZ: { name: 'Tsjekkia (Česká republika)', id: 'CZ', dialCode: '+420' },\n  DK: { name: 'Danmark', id: 'DK', dialCode: '+45' },\n  DJ: { name: 'Djibouti', id: 'DJ', dialCode: '+253' },\n  DM: { name: 'Dominica', id: 'DM', dialCode: '+1767' },\n  DO: {\n    name: 'Den dominikanske republikk (República Dominicana)',\n    id: 'DO',\n    dialCode: '+1',\n  },\n  EC: { name: 'Ecuador', id: 'EC', dialCode: '+593' },\n  EG: { name: 'Egypt (‫مصر‬‎)', id: 'EG', dialCode: '+20' },\n  SV: { name: 'El Salvador', id: 'SV', dialCode: '+503' },\n  GQ: {\n    name: 'Ekvatorial-Guinea (Guinea Ecuatorial)',\n    id: 'GQ',\n    dialCode: '+240',\n  },\n  ER: { name: 'Eritrea', id: 'ER', dialCode: '+291' },\n  EE: { name: 'Estland (Eesti)', id: 'EE', dialCode: '+372' },\n  ET: { name: 'Etiopia (ኢትዮጵያ)', id: 'ET', dialCode: '+251' },\n  FK: { name: 'Falklandsøyene (Islas Malvinas)', id: 'FK', dialCode: '+500' },\n  FO: { name: 'Færøyene (Føroyar)', id: 'FO', dialCode: '+298' },\n  FJ: { name: 'Fiji', id: 'FJ', dialCode: '+679' },\n  FI: { name: 'Finland (Suomi)', id: 'FI', dialCode: '+358' },\n  FR: { name: 'Frankrike (France)', id: 'FR', dialCode: '+33' },\n  GF: { name: 'Fransk Guyana (Guyane française)', id: 'GF', dialCode: '+594' },\n  PF: {\n    name: 'Fransk Polynesia (Polynésie française)',\n    id: 'PF',\n    dialCode: '+689',\n  },\n  GA: { name: 'Gabon', id: 'GA', dialCode: '+241' },\n  GM: { name: 'Gambia', id: 'GM', dialCode: '+220' },\n  GE: { name: 'Georgia (საქართველო)', id: 'GE', dialCode: '+995' },\n  DE: { name: 'Tyskland (Deutschland)', id: 'DE', dialCode: '+49' },\n  GH: { name: 'Ghana (Gaana)', id: 'GH', dialCode: '+233' },\n  GI: { name: 'Gibraltar', id: 'GI', dialCode: '+350' },\n  GR: { name: 'Hellas (Ελλάδα)', id: 'GR', dialCode: '+30' },\n  GL: { name: 'Grønland  (Kalaallit Nunaat)', id: 'GL', dialCode: '+299' },\n  GD: { name: 'Grenada', id: 'GD', dialCode: '+1473' },\n  GP: { name: 'Guadeloupe', id: 'GP', dialCode: '+590' },\n  GU: { name: 'Guam', id: 'GU', dialCode: '+1671' },\n  GT: { name: 'Guatemala', id: 'GT', dialCode: '+502' },\n  GG: { name: 'Guernsey', id: 'GG', dialCode: '+44' },\n  GN: { name: 'Guinea (Guinée)', id: 'GN', dialCode: '+224' },\n  GW: { name: 'Guinea-Bissau (Guiné-Bissau)', id: 'GW', dialCode: '+245' },\n  GY: { name: 'Guyana', id: 'GY', dialCode: '+592' },\n  HT: { name: 'Haiti', id: 'HT', dialCode: '+509' },\n  HM: {\n    name: 'Heard- og McDonaldøyene (Heard Island and McDonald Islands)',\n    id: 'HM',\n    dialCode: '+672',\n  },\n  VA: {\n    name: 'Vatikanstaten (Città del Vaticano)',\n    id: 'VA',\n    dialCode: '+379',\n  },\n  HN: { name: 'Honduras', id: 'HN', dialCode: '+504' },\n  HK: { name: 'Hongkong (香港)', id: 'HK', dialCode: '+852' },\n  HU: { name: 'Ungarn (Magyarország)', id: 'HU', dialCode: '+36' },\n  IS: { name: 'Island (Ísland)', id: 'IS', dialCode: '+354' },\n  IN: { name: 'India (भारत)', id: 'IN', dialCode: '+91' },\n  ID: { name: 'Indonesia', id: 'ID', dialCode: '+62' },\n  IR: { name: 'Iran (‫ایران‬‎)', id: 'IR', dialCode: '+98' },\n  IQ: { name: 'Irak (‫العراق‬‎)', id: 'IQ', dialCode: '+964' },\n  IE: { name: 'Irland (Éire)', id: 'IE', dialCode: '+353' },\n  IM: { name: 'Man (Isle of Man)', id: 'IM', dialCode: '+44' },\n  IL: { name: 'Israel (‫ישראל‬‎)', id: 'IL', dialCode: '+972' },\n  IT: { name: 'Italia', id: 'IT', dialCode: '+39' },\n  JM: { name: 'Jamaica', id: 'JM', dialCode: '+1' },\n  JP: { name: 'Japan (日本)', id: 'JP', dialCode: '+81' },\n  JE: { name: 'Jersey', id: 'JE', dialCode: '+44' },\n  JO: { name: 'Jordan (‫الأردن‬‎)', id: 'JO', dialCode: '+962' },\n  KZ: { name: 'Kasakhstan (Қазақстан)', id: 'KZ', dialCode: '+7' },\n  KE: { name: 'Kenya', id: 'KE', dialCode: '+254' },\n  KI: { name: 'Kiribati', id: 'KI', dialCode: '+686' },\n  XK: { name: 'Kosovo', id: 'XK', dialCode: '+383' },\n  KW: { name: 'Kuwait (‫الكويت‬‎)', id: 'KW', dialCode: '+965' },\n  KG: { name: 'Kirgisistan (Кыргызстан)', id: 'KG', dialCode: '+996' },\n  LA: { name: 'Laos (ລາວ)', id: 'LA', dialCode: '+856' },\n  LV: { name: 'Latvia (Latvija)', id: 'LV', dialCode: '+371' },\n  LB: { name: 'Libanon (‫لبنان‬‎)', id: 'LB', dialCode: '+961' },\n  LS: { name: 'Lesotho', id: 'LS', dialCode: '+266' },\n  LR: { name: 'Liberia', id: 'LR', dialCode: '+231' },\n  LY: { name: 'Libya (‫ليبيا‬‎)', id: 'LY', dialCode: '+218' },\n  LI: { name: 'Liechtenstein', id: 'LI', dialCode: '+423' },\n  LT: { name: 'Litauen (Lietuva)', id: 'LT', dialCode: '+370' },\n  LU: { name: 'Luxembourg', id: 'LU', dialCode: '+352' },\n  MO: { name: 'Macao (澳門)', id: 'MO', dialCode: '+853' },\n  MK: {\n    name: 'Nord-Makedonia (Македонија)',\n    id: 'MK',\n    dialCode: '+389',\n  },\n  MG: { name: 'Madagaskar (Madagasikara)', id: 'MG', dialCode: '+261' },\n  MW: { name: 'Malawi', id: 'MW', dialCode: '+265' },\n  MY: { name: 'Malaysia', id: 'MY', dialCode: '+60' },\n  MV: {\n    name: 'Maldivene (ދިވެހިރާއްޖޭގެ ޖުމްހޫރިއްޔާ)',\n    id: 'MV',\n    dialCode: '+960',\n  },\n  ML: { name: 'Mali', id: 'ML', dialCode: '+223' },\n  MT: { name: 'Malta', id: 'MT', dialCode: '+356' },\n  MH: { name: 'Marshalløyene (Marshall Islands)', id: 'MH', dialCode: '+692' },\n  MQ: { name: 'Martinique', id: 'MQ', dialCode: '+596' },\n  MR: { name: 'Mauritania (‫موريتانيا‬‎)', id: 'MR', dialCode: '+222' },\n  MU: { name: 'Mauritius (Moris)', id: 'MU', dialCode: '+230' },\n  YT: { name: 'Mayotte', id: 'YT', dialCode: '+262' },\n  MX: { name: 'Mexico (México)', id: 'MX', dialCode: '+52' },\n  FM: { name: 'Mikronesia (Micronesia)', id: 'FM', dialCode: '+691' },\n  MD: { name: 'Moldova (Republica Moldova)', id: 'MD', dialCode: '+373' },\n  MC: { name: 'Monaco', id: 'MC', dialCode: '+377' },\n  MN: { name: 'Mongolia (Монгол)', id: 'MN', dialCode: '+976' },\n  ME: { name: 'Montenegro (Crna Gora)', id: 'ME', dialCode: '+382' },\n  MS: { name: 'Montserrat', id: 'MS', dialCode: '+1664' },\n  MA: { name: 'Marokko (‫المغرب‬‎)', id: 'MA', dialCode: '+212' },\n  MZ: { name: 'Mosambik (Moçambique)', id: 'MZ', dialCode: '+258' },\n  MM: { name: 'Myanmar (မြန်မာ)', id: 'MM', dialCode: '+95' },\n  NA: { name: 'Namibia', id: 'NA', dialCode: '+264' },\n  NR: { name: 'Nauru', id: 'NR', dialCode: '+674' },\n  NP: { name: 'Nepal (नेपाल)', id: 'NP', dialCode: '+977' },\n  NL: { name: 'Nederland', id: 'NL', dialCode: '+31' },\n  NC: { name: 'Ny-Caledonia (Nouvelle-Calédonie)', id: 'NC', dialCode: '+687' },\n  NZ: { name: 'New Zealand', id: 'NZ', dialCode: '+64' },\n  NI: { name: 'Nicaragua', id: 'NI', dialCode: '+505' },\n  NE: { name: 'Niger (Nijar)', id: 'NE', dialCode: '+227' },\n  NG: { name: 'Nigeria', id: 'NG', dialCode: '+234' },\n  NU: { name: 'Niue', id: 'NU', dialCode: '+683' },\n  NF: { name: 'Norfolk Island', id: 'NF', dialCode: '+672' },\n  KP: {\n    name: 'Nord-Korea (조선 민주주의 인민 공화국)',\n    id: 'KP',\n    dialCode: '+850',\n  },\n  MP: {\n    name: 'Nord-Marianene (Northern Mariana Islands)',\n    id: 'MP',\n    dialCode: '+1670',\n  },\n  NO: { name: 'Norge', id: 'NO', dialCode: '+47' },\n  OM: { name: 'Oman (‫عُمان‬‎)', id: 'OM', dialCode: '+968' },\n  PK: { name: 'Pakistan (‫پاکستان‬‎)', id: 'PK', dialCode: '+92' },\n  PW: { name: 'Palau', id: 'PW', dialCode: '+680' },\n  PS: {\n    name: 'Palestina (‫فلسطين‬‎)',\n    id: 'PS',\n    dialCode: '+970',\n  },\n  PA: { name: 'Panama (Panamá)', id: 'PA', dialCode: '+507' },\n  PG: {\n    name: 'Papua Ny-Guinea (Papua New Guinea)',\n    id: 'PG',\n    dialCode: '+675',\n  },\n  PY: { name: 'Paraguay', id: 'PY', dialCode: '+595' },\n  PE: { name: 'Peru (Perú)', id: 'PE', dialCode: '+51' },\n  PH: { name: 'Filippinene (Philippines)', id: 'PH', dialCode: '+63' },\n  PL: { name: 'Polen (Polska)', id: 'PL', dialCode: '+48' },\n  PT: { name: 'Portugal', id: 'PT', dialCode: '+351' },\n  PR: { name: 'Puerto Rico', id: 'PR', dialCode: '+1' },\n  QA: { name: 'Qatar (‫قطر‬‎)', id: 'QA', dialCode: '+974' },\n  RE: { name: 'Réunion', id: 'RE', dialCode: '+262' },\n  RO: { name: 'Romania (România)', id: 'RO', dialCode: '+40' },\n  RU: { name: 'Russland (Россия)', id: 'RU', dialCode: '+7' },\n  RW: { name: 'Rwanda', id: 'RW', dialCode: '+250' },\n  BL: {\n    name: 'Saint Barthélemy',\n    id: 'BL',\n    dialCode: '+590',\n  },\n  SH: { name: 'St. Helena (Saint Helena)', id: 'SH', dialCode: '+290' },\n  KN: {\n    name: 'Saint Kitts og Nevis (Saint Kitts and Nevis)',\n    id: 'KN',\n    dialCode: '+1869',\n  },\n  LC: { name: 'Saint Lucia', id: 'LC', dialCode: '+1758' },\n  MF: {\n    name: 'Saint-Martin (Collectivité de Saint-Martin)',\n    id: 'MF',\n    dialCode: '+590',\n  },\n  PM: {\n    name: 'Saint Pierre og Miquelon (Saint-Pierre-et-Miquelon)',\n    id: 'PM',\n    dialCode: '+508',\n  },\n  VC: {\n    name: 'Saint Vincent og Grenadinene (Saint Vincent and the Grenadines)',\n    id: 'VC',\n    dialCode: '+1784',\n  },\n  WS: { name: 'Samoa', id: 'WS', dialCode: '+685' },\n  SM: { name: 'San Marino', id: 'SM', dialCode: '+378' },\n  ST: {\n    name: 'São Tomé og Príncipe (São Tomé e Príncipe)',\n    id: 'ST',\n    dialCode: '+239',\n  },\n  SA: {\n    name: 'Saudi-Arabia (المملكة العربية السعودية)',\n    id: 'SA',\n    dialCode: '+966',\n  },\n  SN: { name: 'Senegal (Sénégal)', id: 'SN', dialCode: '+221' },\n  RS: { name: 'Serbia (Србија)', id: 'RS', dialCode: '+381' },\n  SC: { name: 'Seychellene (Seychelles)', id: 'SC', dialCode: '+248' },\n  SL: { name: 'Sierra Leone', id: 'SL', dialCode: '+232' },\n  SG: { name: 'Singapore', id: 'SG', dialCode: '+65' },\n  SX: { name: 'Sint Maarten', id: 'SX', dialCode: '+1721' },\n  SK: { name: 'Slovakia (Slovensko)', id: 'SK', dialCode: '+421' },\n  SI: { name: 'Slovenia (Slovenija)', id: 'SI', dialCode: '+386' },\n  SB: { name: 'Salomonøyene (Solomon Islands)', id: 'SB', dialCode: '+677' },\n  SO: { name: 'Somalia (Soomaaliya)', id: 'SO', dialCode: '+252' },\n  ZA: { name: 'Sør-Afrika (South Africa)', id: 'ZA', dialCode: '+27' },\n  GS: {\n    name: 'Sør-Georgia og Sør-Sandwichøyene (South Georgia and the South Sandwich Islands)',\n    id: 'GS',\n    dialCode: '+500',\n  },\n  KR: {\n    name: 'Sør-Korea (대한민국)',\n    id: 'KR',\n    dialCode: '+82',\n  },\n  SS: { name: 'Sør-Sudan  (‫جنوب السودان‬‎)', id: 'SS', dialCode: '+211' },\n  ES: { name: 'Spania (España)', id: 'ES', dialCode: '+34' },\n  LK: { name: 'Sri Lanka (ශ්‍රී ලංකාව)', id: 'LK', dialCode: '+94' },\n  SD: { name: 'Sudan (السودان)', id: 'SD', dialCode: '+249' },\n  SR: { name: 'Surinam (Suriname)', id: 'SR', dialCode: '+597' },\n  SJ: { name: 'Svalbard og Jan Mayen', id: 'SJ', dialCode: '+47' },\n  SZ: { name: 'Eswatini', id: 'SZ', dialCode: '+268' },\n  SE: { name: 'Sverige', id: 'SE', dialCode: '+46' },\n  CH: { name: 'Sveits (Schweiz)', id: 'CH', dialCode: '+41' },\n  SY: { name: 'Syria (‫سوريا‬‎)', id: 'SY', dialCode: '+963' },\n  TW: { name: 'Taiwan (台灣)', id: 'TW', dialCode: '+886' },\n  TJ: { name: 'Tadsjikistan (Таджикистан)', id: 'TJ', dialCode: '+992' },\n  TZ: { name: 'Tanzania', id: 'TZ', dialCode: '+255' },\n  TH: { name: 'Thailand (ไทย)', id: 'TH', dialCode: '+66' },\n  TL: { name: 'Øst-Timor (Timor-Leste)', id: 'TL', dialCode: '+670' },\n  TG: { name: 'Togo', id: 'TG', dialCode: '+228' },\n  TK: { name: 'Tokelau', id: 'TK', dialCode: '+690' },\n  TO: { name: 'Tonga', id: 'TO', dialCode: '+676' },\n  TT: {\n    name: 'Trinidad og Tobago (Trinidad and Tobago)',\n    id: 'TT',\n    dialCode: '+1868',\n  },\n  TN: { name: 'Tunisia (‫تونس‬‎)', id: 'TN', dialCode: '+216' },\n  TR: { name: 'Tyrkia (Türkiye)', id: 'TR', dialCode: '+90' },\n  TM: { name: 'Turkmenistan', id: 'TM', dialCode: '+993' },\n  TC: {\n    name: 'Turks- og Caicosøyene (Turks and Caicos Islands)',\n    id: 'TC',\n    dialCode: '+1649',\n  },\n  TV: { name: 'Tuvalu', id: 'TV', dialCode: '+688' },\n  VI: {\n    name: 'De amerikanske Jomfruøyer (U.S. Virgin Islands)',\n    id: 'VI',\n    dialCode: '+1340',\n  },\n  UG: { name: 'Uganda', id: 'UG', dialCode: '+256' },\n  UA: { name: 'Ukraina (Україна)', id: 'UA', dialCode: '+380' },\n  AE: {\n    name: 'De forente arabiske emirater (‫الإمارات العربية المتحدة‬‎)',\n    id: 'AE',\n    dialCode: '+971',\n  },\n  GB: { name: 'Storbritannia (United Kingdom)', id: 'GB', dialCode: '+44' },\n  US: { name: 'USA (United States)', id: 'US', dialCode: '+1' },\n  UY: { name: 'Uruguay', id: 'UY', dialCode: '+598' },\n  UZ: { name: 'Usbekistan (Ўзбекистон)', id: 'UZ', dialCode: '+998' },\n  VU: { name: 'Vanuatu', id: 'VU', dialCode: '+678' },\n  VE: { name: 'Venezuela', id: 'VE', dialCode: '+58' },\n  VN: { name: 'Vietnam (Việt Nam)', id: 'VN', dialCode: '+84' },\n  EH: { name: 'Vest-Sahara (Western Sahara)', id: 'EH', dialCode: '+212' },\n  WF: {\n    name: 'Wallis- og Futunaøyene  (Wallis-et-Futuna)',\n    id: 'WF',\n    dialCode: '+681',\n  },\n  YE: { name: 'Yemen (‫اليمن‬‎)', id: 'YE', dialCode: '+967' },\n  ZM: { name: 'Zambia', id: 'ZM', dialCode: '+260' },\n  ZW: { name: 'Zimbabwe', id: 'ZW', dialCode: '+263' },\n  AX: { name: 'Åland', id: 'AX', dialCode: '+358' },\n};\n",".inputs-container {\n  .input {\n    border-top-left-radius: 0;\n    border-bottom-left-radius: 0;\n  }\n  select {\n    border-top-right-radius: 0;\n    border-bottom-right-radius: 0;\n  }\n\n  .select > div {\n    margin-right: -1px;\n  }\n}\n\n.inputs-container--small-screen-xs {\n  @media only screen and (max-width: 600px) {\n    .input {\n      border-top-right-radius: 0;\n    }\n\n    select {\n      border-bottom-left-radius: 0;\n      border-bottom-right-radius: 0;\n      margin-bottom: -1px;\n    }\n  }\n}\n\n.inputs-container--small-screen-sm {\n  @media only screen and (max-width: 960px) {\n    .input {\n      border-top-right-radius: 0;\n    }\n\n    select {\n      border-bottom-left-radius: 0;\n      border-bottom-right-radius: 0;\n      margin-bottom: -1px;\n    }\n  }\n}\n\n.inputs-container--small-screen-md {\n  @media only screen and (max-width: 1280px) {\n    .input {\n      border-top-right-radius: 0;\n    }\n\n    select {\n      border-bottom-left-radius: 0;\n      border-bottom-right-radius: 0;\n      margin-bottom: -1px;\n    }\n  }\n}\n\n.inputs-container--small-screen-lg {\n  @media only screen and (max-width: 1920px) {\n    .input {\n      border-top-right-radius: 0;\n    }\n\n    select {\n      border-bottom-left-radius: 0;\n      border-bottom-right-radius: 0;\n      margin-bottom: -1px;\n    }\n  }\n}\n\n.inputs-container--small-screen-xl {\n  .input {\n    border-top-right-radius: 0;\n  }\n\n  select {\n    border-bottom-left-radius: 0;\n    border-bottom-right-radius: 0;\n    margin-bottom: -1px;\n  }\n}\n\n.select:focus-visible,\n.select:hover {\n  z-index: var(--dds-zindex-absolute-element);\n  & ~ svg {\n    z-index: var(--dds-zindex-absolute-element);\n  }\n}\n\n.calling-code {\n  left: var(--dds-spacing-x0-5);\n}\n\n.calling-code--disabled {\n  color: var(--dds-color-text-subtle);\n}\n","import {\n  type ReactNode,\n  type RefObject,\n  useContext,\n  useEffect,\n  useId,\n} from 'react';\nimport { createPortal } from 'react-dom';\n\nimport styles from './Popover.module.css';\nimport {\n  type Placement,\n  useCombinedRef,\n  useFloatPosition,\n  useMountTransition,\n  useOnClickOutside,\n  useOnKeyDown,\n  useReturnFocusOnBlur,\n} from '../../hooks';\nimport { useTranslation } from '../../i18n';\nimport { commonTexts } from '../../i18n/commonTexts';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn, isEmpty } from '../../utils';\nimport { Button } from '../Button';\nimport focusStyles from '../helpers/styling/focus.module.css';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\nimport { CloseIcon } from '../Icon/icons';\nimport { Paper, type ResponsiveProps } from '../layout';\nimport { Heading } from '../Typography';\nimport { usePopoverContext } from './Popover.context';\nimport { ThemeContext } from '../ThemeProvider';\n\nexport type PopoverSizeProps = Pick<\n  ResponsiveProps,\n  'width' | 'height' | 'minWidth' | 'minHeight' | 'maxWidth' | 'maxHeight'\n>;\n\nexport type PopoverProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  {\n    /**Header. Bruker default semantisk heading hvis verdien er en `string`.  */\n    header?: string | ReactNode;\n    /**Om lukkeknapp skal vises.\n     * @default true\n     */\n    withCloseButton?: boolean;\n    /**Spesifiserer hvor komponenten skal plasseres i forhold til anchor-elementet.\n     * @default \"bottom\"\n     */\n    placement?: Placement;\n    /**Angir rotnode hvor popover skal rendres.\n     * @default themeProviderRef\n     */\n    parentElement?: HTMLElement;\n    /**Angir om popover skal rendre i en portal eller ikke.\n     * @default \"false\"\n     */\n    portal?: boolean;\n    /**Avstand fra anchor-elementet i px.\n     * @default 8\n     */\n    offset?: number;\n    /** Ekstra logikk kjørt når popover mister fokus. */\n    onBlur?: () => void;\n    /**Custom størrelse. */\n    sizeProps?: PopoverSizeProps;\n    /** Om focus skal returneres ved `blur`\n     * @default true\n     */\n    returnFocusOnBlur?: boolean;\n    /**Anchor ref ved custom kontrollert bruk uten `<PopoverGroup>` Kun for corner cases. */\n    anchorRef?: RefObject<HTMLElement | null>;\n    /**Spesifiserer om popover er åpen ved custom kontrollert bruk uten `<PopoverGroup>` Kun for corner cases. */\n    isOpen?: boolean;\n    /**Callback for lukking ved custom kontrollert bruk uten `<PopoverGroup>` Kun for corner cases. */\n    onClose?: () => void;\n  }\n>;\n\nexport const Popover = ({\n  id,\n  header,\n  withCloseButton = true,\n  onBlur,\n  children,\n  placement = 'bottom',\n  parentElement,\n  portal = false,\n  offset = 8,\n  sizeProps = {},\n  returnFocusOnBlur = true,\n  className,\n  htmlProps = {},\n  anchorRef,\n  isOpen: propIsOpen,\n  onClose: propOnClose,\n  style,\n  ref,\n  ...rest\n}: PopoverProps) => {\n  const {\n    refs,\n    styles: positionStyles,\n    isPositioned: localIsPositioned,\n  } = useFloatPosition(null, {\n    offset,\n    placement,\n  });\n  const { maxHeight, maxWidth, minHeight, minWidth, height, width } = sizeProps;\n\n  const context = usePopoverContext();\n  const themeContext = useContext(ThemeContext);\n  const portalTarget = parentElement ?? themeContext?.el;\n\n  const {\n    floatStyling: contextFloatStyling,\n    isPositioned: contextIsPositioned,\n    setFloatOptions,\n    floatingRef: contextFloatingRef,\n    popoverId: contextPopoverId,\n    onClose: contextOnClose,\n    isOpen: contextIsOpen,\n    anchorEl: contextAnchorEl,\n  } = context;\n\n  const { t } = useTranslation();\n\n  const hasContext = !isEmpty(context);\n  const generatedId = useId();\n  const uniquePopoverId = id ?? `${generatedId}-popover`;\n\n  const [\n    popoverId,\n    anchorEl,\n    isOpen = false,\n    floatingRef,\n    floatStyling,\n    onClose,\n    isPositioned = false,\n  ] = hasContext\n    ? [\n        contextPopoverId,\n        contextAnchorEl,\n        contextIsOpen,\n        contextFloatingRef,\n        contextFloatStyling,\n        contextOnClose,\n        contextIsPositioned,\n      ]\n    : [\n        uniquePopoverId,\n        anchorRef?.current && anchorRef.current,\n        propIsOpen,\n        refs.setFloating,\n        positionStyles.floating,\n        propOnClose,\n        localIsPositioned,\n      ];\n\n  if (!hasContext) {\n    refs.setReference(anchorEl || null);\n  }\n\n  const hasTransitionedIn = useMountTransition(isOpen, 400);\n\n  const popoverRef = useReturnFocusOnBlur(\n    isOpen && hasTransitionedIn && isPositioned && returnFocusOnBlur,\n    () => {\n      onClose?.();\n      onBlur?.();\n    },\n    anchorEl && anchorEl,\n  );\n\n  const multiRef = useCombinedRef(ref, popoverRef, floatingRef);\n\n  useEffect(() => {\n    setFloatOptions?.({ placement, offset });\n  }, [placement, offset]);\n\n  // hooks when without context\n  useOnClickOutside([popoverRef, anchorRef], () => {\n    if (isOpen && !hasContext) onClose?.();\n  });\n\n  useOnKeyDown('Escape', () => {\n    if (isOpen && !hasContext) onClose?.();\n  });\n\n  const hasTitle = !!header;\n\n  const openCn = hasTransitionedIn && isOpen ? 'open' : 'closed';\n\n  const popover = (\n    <Paper\n      {...getBaseHTMLProps(\n        popoverId,\n        cn(\n          className,\n          styles.container,\n          utilStyles['visibility-transition'],\n          utilStyles[`visibility-transition--${openCn}`],\n          focusStyles.focusable,\n        ),\n        {\n          ...style,\n          ...floatStyling,\n        },\n        htmlProps,\n        rest,\n      )}\n      ref={multiRef}\n      tabIndex={-1}\n      height={height}\n      maxHeight={maxHeight}\n      minHeight={minHeight}\n      width={width}\n      maxWidth={maxWidth}\n      minWidth={minWidth}\n      role=\"dialog\"\n      elevation=\"large\"\n      border=\"border-subtle\"\n    >\n      {header && (\n        <div className={styles.header}>\n          {typeof header === 'string' ? (\n            <Heading level={2} typographyType=\"headingMedium\">\n              {header}\n            </Heading>\n          ) : (\n            header\n          )}\n        </div>\n      )}\n      <div\n        className={\n          !hasTitle && withCloseButton\n            ? styles['content--closable--no-header']\n            : ''\n        }\n      >\n        {children}\n      </div>\n      {withCloseButton && (\n        <Button\n          icon={CloseIcon}\n          purpose=\"tertiary\"\n          size=\"small\"\n          onClick={onClose}\n          aria-label={t(commonTexts.close)}\n          className={styles['close-button']}\n        />\n      )}\n    </Paper>\n  );\n\n  return isOpen || hasTransitionedIn\n    ? portal && portalTarget\n      ? createPortal(popover, portalTarget)\n      : popover\n    : null;\n};\n\nPopover.displayName = 'Popover';\n",".container {\n  position: absolute;\n  width: fit-content;\n  z-index: var(--dds-zindex-popover);\n  padding: var(--dds-spacing-x0-75) var(--dds-spacing-x1)\n    var(--dds-spacing-x1-5) var(--dds-spacing-x1);\n}\n\n.content--closable--no-header {\n  margin-top: var(--dds-spacing-x2);\n}\n\n.header {\n  margin-right: var(--dds-spacing-x2);\n}\n\n.close-button {\n  position: absolute;\n  top: var(--dds-spacing-x0-25);\n  right: var(--dds-spacing-x0-25);\n}\n","import {\n  type Dispatch,\n  type SetStateAction,\n  createContext,\n  useContext,\n} from 'react';\n\nimport { type FloatingStyles, type UseFloatPositionOptions } from '../../hooks';\n\ninterface PopoverContextType {\n  floatStyling: FloatingStyles;\n  isPositioned: boolean;\n  setFloatOptions: Dispatch<\n    SetStateAction<UseFloatPositionOptions | undefined>\n  >;\n  floatingRef: (node: HTMLElement | null) => void;\n  popoverId: string;\n  anchorEl: HTMLElement;\n  onClose: () => void;\n  isOpen: boolean;\n}\n\nexport const PopoverContext = createContext<Partial<PopoverContextType>>({});\n\nexport const usePopoverContext = () => useContext(PopoverContext);\n","import {\n  type DetailedHTMLProps,\n  type Dispatch,\n  type HTMLAttributes,\n  Children as ReactChildren,\n  type ReactNode,\n  type RefObject,\n  type SetStateAction,\n  cloneElement,\n  isValidElement,\n  useId,\n  useRef,\n  useState,\n} from 'react';\n\nimport { PopoverContext } from './Popover.context';\nimport {\n  type UseFloatPositionOptions,\n  useCombinedRef,\n  useFloatPosition,\n  useOnClickOutside,\n  useOnKeyDown,\n} from '../../hooks';\n\nexport interface PopoverGroupProps {\n  /** Barna til wrapperen: anchor-element som det første og `<Popover>` som det andre.  */\n  children: ReactNode;\n  /**Forteller `<Popover>` om den skal være åpen på første render.  */\n  isInitiallyOpen?: boolean;\n  /**Implementerer kontrollert tilstand: forteller `<Popover>` om den skal være åpen.  */\n  isOpen?: boolean;\n  /**Implementerer kontrollert tilstand: funksjon for å kontrollere `isOpen`.  */\n  setIsOpen?: Dispatch<SetStateAction<boolean>>;\n  /**Callback når <Popover> åpnes. */\n  onOpen?: () => void;\n  /**Callback når <Popover> lukkes. */\n  onClose?: () => void;\n  /** `id` til `<Popover>.` */\n  popoverId?: string;\n}\n\nexport const PopoverGroup = ({\n  isOpen: propIsOpen,\n  setIsOpen: propSetIsOpen,\n  onClose,\n  onOpen,\n  isInitiallyOpen = false,\n  children,\n  popoverId,\n}: PopoverGroupProps) => {\n  const [internalIsOpen, internalSetIsOpen] = useState(isInitiallyOpen);\n\n  const open = propIsOpen ?? internalIsOpen;\n  const setOpen = propSetIsOpen ?? internalSetIsOpen;\n\n  const generatedId = useId();\n  const uniquePopoverId = popoverId ?? `${generatedId}-popover`;\n  const [floatOptions, setFloatOptions] = useState<UseFloatPositionOptions>();\n  const {\n    refs,\n    styles: positionStyles,\n    isPositioned,\n  } = useFloatPosition(null, floatOptions);\n\n  const handleClose = () => {\n    setOpen(false);\n    onClose?.();\n  };\n\n  const handleOpen = () => {\n    setOpen(true);\n    onOpen?.();\n  };\n\n  const handleToggle = () => {\n    if (open) {\n      handleClose();\n    } else {\n      handleOpen();\n    }\n  };\n\n  const buttonRef = useRef<HTMLElement>(null);\n  const anchorRef = refs.setReference;\n  const combinedAnchorRef = useCombinedRef(buttonRef, anchorRef);\n\n  const popoverRef = useRef<HTMLDivElement>(null);\n  const floatingRef = refs.setFloating;\n  const combinedPopoverRef = useCombinedRef(popoverRef, floatingRef);\n\n  useOnKeyDown(['Esc', 'Escape'], () => {\n    if (open) {\n      handleClose();\n      buttonRef.current?.focus();\n    }\n  });\n\n  const elements: Array<RefObject<HTMLElement | null>> = [popoverRef];\n  if (buttonRef) elements.push(buttonRef);\n\n  useOnClickOutside(elements, () => {\n    if (open) handleClose();\n  });\n\n  const isAnchorChild = (i: number): boolean => i === 0;\n\n  const Children = ReactChildren.map(children, (child, childIndex) => {\n    return (\n      isValidElement<\n        DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>\n      >(child) &&\n      (isAnchorChild(childIndex)\n        ? cloneElement(child, {\n            'aria-haspopup': 'dialog',\n            'aria-controls': uniquePopoverId,\n            'aria-expanded': open,\n            onClick: handleToggle,\n            ref: combinedAnchorRef,\n          })\n        : child)\n    );\n  });\n\n  return (\n    <PopoverContext\n      value={{\n        floatStyling: positionStyles.floating,\n        isPositioned,\n        setFloatOptions,\n        floatingRef: combinedPopoverRef,\n        popoverId: uniquePopoverId,\n        onClose: handleClose,\n        isOpen: open,\n        anchorEl: buttonRef.current ?? undefined,\n      }}\n    >\n      {Children}\n    </PopoverContext>\n  );\n};\n\nPopoverGroup.displayName = 'PopoverGroup';\n","import {\n  Children,\n  type ForwardRefExoticComponent,\n  type ReactElement,\n  type ReactNode,\n  cloneElement,\n  isValidElement,\n  useEffect,\n  useMemo,\n  useState,\n} from 'react';\n\nimport { ProgressTrackerContext } from './ProgressTracker.context';\nimport styles from './ProgressTracker.module.css';\nimport { ProgressTrackerItem } from './ProgressTrackerItem';\nimport { createTexts, useTranslation } from '../../i18n';\nimport {\n  type BaseComponentPropsWithChildren,\n  type Direction,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { StylelessOList } from '../helpers';\nimport { scrollbar } from '../helpers/styling/utilStyles.module.css';\nimport { Box } from '../layout';\n\nexport type ProgressTrackerProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  {\n    /** Indeksen til det aktive steget.\n     * @default 0\n     */\n    activeStep?: number;\n    /** Ekstra logikk ved klikking på et steg. */\n    onStepChange?: (step: number) => void;\n    /**Retning stegene gjengis i. OBS! Ikke tilpasset mindre skjermer. */\n    direction?: Direction;\n  }\n>;\n\ntype ProgressTrackerComponent =\n  ForwardRefExoticComponent<ProgressTrackerProps> & {\n    Item: typeof ProgressTrackerItem;\n  };\n\nexport const ProgressTracker: ProgressTrackerComponent = (() => {\n  const Res = ({\n    id,\n    activeStep = 0,\n    onStepChange,\n    direction = 'column',\n    children,\n    className,\n    style,\n    htmlProps = {},\n    ...rest\n  }: ProgressTrackerProps) => {\n    const { t } = useTranslation();\n    const [thisActiveStep, setActiveStep] = useState(activeStep);\n\n    const handleChange = (step: number) => {\n      setActiveStep(step);\n      onStepChange?.(step);\n    };\n\n    useEffect(() => {\n      if (activeStep !== undefined && activeStep != thisActiveStep) {\n        setActiveStep(activeStep);\n      }\n    }, [activeStep, thisActiveStep]);\n\n    const steps = useMemo(() => {\n      const validChildren = removeInvalidChildren(children);\n      const itemsWithIndex = passIndexPropToProgressTrackerItem(validChildren);\n      return itemsWithIndex;\n    }, [children]);\n\n    const isRow = direction === 'row';\n\n    const { 'aria-label': ariaLabel } = htmlProps;\n\n    return (\n      <ProgressTrackerContext\n        value={{\n          activeStep: thisActiveStep,\n          handleStepChange: handleChange,\n          direction,\n        }}\n      >\n        <nav\n          aria-label={ariaLabel ?? t(texts.stepProgression)}\n          {...getBaseHTMLProps(id, className, style, htmlProps, rest)}\n        >\n          <Box\n            as={StylelessOList}\n            display=\"flex\"\n            flexDirection={direction}\n            alignItems=\"start\"\n            gap={isRow ? 'x0.5' : 'x0.125'}\n            overflowX={isRow ? 'auto' : undefined}\n            margin=\"0\"\n            padding={isRow ? 'x0.25' : '0'}\n            className={cn(styles.list, scrollbar)}\n          >\n            {steps}\n          </Box>\n        </nav>\n      </ProgressTrackerContext>\n    );\n  };\n\n  (Res as ProgressTrackerComponent).Item = ProgressTrackerItem;\n  (Res as ProgressTrackerComponent).displayName = 'ProgressTracker';\n  return Res as ProgressTrackerComponent;\n})();\n\nfunction removeInvalidChildren<TProps extends object>(children: ReactNode) {\n  return Children.toArray(children).filter(isValidElement<TProps>);\n}\n\nfunction passIndexPropToProgressTrackerItem<TProps extends object>(\n  children: Array<ReactElement<TProps>>,\n) {\n  return Children.map(children, (item, index) =>\n    cloneElement(item, {\n      ...item.props,\n      index,\n    }),\n  );\n}\n\nconst texts = createTexts({\n  stepProgression: {\n    nb: 'Trinnprogresjon',\n    no: 'Trinnprogresjon',\n    nn: 'Trinnprogresjon',\n    en: 'Step progression',\n    se: 'Ceahkkeprogrešuvdna',\n  },\n});\n","import { createContext, useContext } from 'react';\n\nimport { type Direction } from '../../types';\n\ninterface ProgressTrackerContextType {\n  activeStep: number;\n  handleStepChange?: (index: number) => void;\n  direction: Direction;\n}\n\nexport const ProgressTrackerContext = createContext<ProgressTrackerContextType>(\n  {\n    activeStep: 0,\n    direction: 'column',\n  },\n);\n\nexport const useProgressTrackerContext = () =>\n  useContext(ProgressTrackerContext);\n",".list {\n  --dds-progress-tracker-connector-width: 1px;\n  --dds-progress-tracker-item-number-size: 1.75rem;\n  --dds-progress-tracker-item-margin: calc(\n    (var(--dds-progress-tracker-item-number-size) / 2) -\n      (var(--dds-progress-tracker-connector-width) / 2)\n  );\n}\n\n.list-item:not(:first-child)::before {\n  content: '';\n  display: block;\n}\n\n.list-item--column:not(:first-child)::before {\n  border-right: var(--dds-progress-tracker-connector-width) solid\n    var(--dds-color-border-default);\n  width: var(--dds-progress-tracker-connector-width);\n  height: 1.125rem;\n  margin-left: var(--dds-progress-tracker-item-margin);\n  margin-bottom: var(--dds-spacing-x0-125);\n}\n\n.list-item--row:not(:first-child)::before {\n  border-top: var(--dds-progress-tracker-connector-width) solid\n    var(--dds-color-border-default);\n  height: var(--dds-progress-tracker-connector-width);\n  width: 1.875rem;\n  margin-top: var(--dds-progress-tracker-item-margin);\n  margin-right: var(--dds-spacing-x0-5);\n}\n\n.item-button {\n  grid-template-columns: var(--dds-progress-tracker-item-number-size) 1fr;\n  cursor: pointer;\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition: all var(--dds-motion-micro-state);\n  }\n\n  &:hover > .item-number--active-incomplete {\n    background-color: var(--dds-color-surface-action-resting);\n    border-color: var(--dds-color-border-action-default);\n    color: var(--dds-color-text-on-action);\n  }\n\n  &:hover > .item-number--inactive-incomplete {\n    background-color: var(--dds-color-surface-hover-default);\n    border-color: var(--dds-color-border-action-hover);\n    color: var(--dds-color-text-action-hover);\n  }\n\n  &:hover > .item-number--active-completed,\n  &:hover > .item-number--inactive-completed {\n    background-color: var(--dds-color-surface-action-hover);\n    border-color: var(--dds-color-border-action-hover);\n    color: var(--dds-color-icon-on-action);\n  }\n\n  &:disabled {\n    cursor: not-allowed;\n  }\n}\n\n.item-div {\n  cursor: default;\n}\n\n.item-number {\n  border-radius: var(--dds-border-radius-rounded);\n  z-index: var(--dds-zindex-absolute-element);\n  font-weight: var(--dds-font-weight-bold);\n  border: 2px solid;\n  height: var(--dds-progress-tracker-item-number-size);\n  width: var(--dds-progress-tracker-item-number-size);\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      background-color var(--dds-motion-micro-state),\n      border-color var(--dds-motion-micro-state),\n      color var(--dds-motion-micro-state);\n  }\n}\n\n.item-number--disabled {\n  background-color: var(--dds-color-surface-default);\n  border-color: var(--dds-color-border-default);\n  color: var(--dds-color-text-subtle);\n}\n\n.item-number--active-incomplete,\n.item-number--active-completed,\n.item-number--inactive-completed {\n  background-color: var(--dds-color-surface-action-resting);\n  border-color: var(--dds-color-border-action-default);\n  color: var(--dds-color-text-on-action);\n}\n\n.item-number--inactive-incomplete {\n  background-color: var(--dds-color-surface-default);\n  border-color: var(--dds-color-border-action-default);\n  color: var(--dds-color-text-action-resting);\n}\n\n.item-text {\n  text-align: start;\n}\n\n.item-text--inactive-link {\n  text-decoration-color: transparent;\n}\n","import { type ComponentPropsWithRef, useMemo } from 'react';\n\nimport { useProgressTrackerContext } from './ProgressTracker.context';\nimport styles from './ProgressTracker.module.css';\nimport { createTexts, useTranslation } from '../../i18n';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { type TextColor, cn } from '../../utils';\nimport { StylelessButton } from '../helpers';\nimport { focusable } from '../helpers/styling/focus.module.css';\nimport { Icon } from '../Icon';\nimport { CheckIcon } from '../Icon/icons';\nimport { type SvgIcon } from '../Icon/utils';\nimport { Box } from '../layout';\nimport { Typography } from '../Typography';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\ntype ItemState =\n  | 'activeCompleted'\n  | 'activeIncomplete'\n  | 'inactiveCompleted'\n  | 'inactiveIncomplete'\n  | 'disabled';\n\nconst toItemState = (\n  active: boolean,\n  completed: boolean,\n  disabled: boolean,\n): ItemState => {\n  if (disabled) {\n    return 'disabled';\n  }\n\n  if (active) {\n    return completed ? 'activeCompleted' : 'activeIncomplete';\n  } else {\n    return completed ? 'inactiveCompleted' : 'inactiveIncomplete';\n  }\n};\n\ntype StateHyphen =\n  | 'disabled'\n  | 'active-incomplete'\n  | 'active-completed'\n  | 'inactive-incomplete'\n  | 'inactive-completed';\n\nconst itemStateCn: Record<ItemState, StateHyphen> = {\n  disabled: 'disabled',\n  activeCompleted: 'active-completed',\n  activeIncomplete: 'active-incomplete',\n  inactiveCompleted: 'inactive-completed',\n  inactiveIncomplete: 'inactive-incomplete',\n};\n\nexport interface BaseItemProps {\n  /** Om steget er valgt eller ikke. Settes av konsument. */\n  active?: boolean;\n  /** Om steget er ferdig eller ikke. Settes av konsument.\n   * @default false\n   */\n  completed?: boolean;\n  /** Om steget skal være disabled. Settes av konsument.\n   * @default false\n   */\n  disabled?: boolean;\n  /** Ikon som skal vises istedenfor stegnummeret. Settes av konument. */\n  icon?: SvgIcon;\n  /** Indeksen til steget. NB! Denne settes automatisk av forelder og skal ikke settes manuelt. */\n  index?: number;\n}\n\nexport type ProgressTrackerItemProps =\n  | BaseComponentPropsWithChildren<\n      HTMLButtonElement,\n      BaseItemProps & {\n        /** Click-handler som gjør det mulig for bruker å klikke på steget for å navigere. Valgfri. */\n        onClick?: (index: number) => void;\n      }\n    >\n  | BaseComponentPropsWithChildren<\n      HTMLDivElement,\n      BaseItemProps & {\n        onClick?: undefined;\n      }\n    >;\n\nexport const ProgressTrackerItem = (props: ProgressTrackerItemProps) => {\n  const {\n    id,\n    className,\n    style,\n    htmlProps,\n    index = 0,\n    completed = false,\n    disabled = false,\n    onClick,\n    icon,\n    children,\n    ...rest\n  } = props;\n\n  const { t } = useTranslation();\n  const stepNumber = index + 1;\n\n  const { activeStep, handleStepChange, direction } =\n    useProgressTrackerContext();\n  const active = activeStep === index;\n  const itemState = toItemState(active, completed, disabled);\n\n  const handleClick = () => {\n    if (!disabled) {\n      onClick?.(index);\n      handleStepChange?.(index);\n    }\n  };\n\n  const stepNumberContent = useMemo(() => {\n    if (completed) {\n      return <Icon icon={CheckIcon} iconSize=\"small\" />;\n    }\n\n    if (icon !== undefined) {\n      return <Icon icon={icon} iconSize=\"small\" />;\n    }\n\n    return stepNumber;\n  }, [completed, icon, index]);\n\n  function getTextColor(): TextColor | undefined {\n    if (disabled) return 'text-subtle';\n    if (active) return 'text-action-resting';\n  }\n\n  const isInactiveLink = disabled || active;\n\n  const stepContent = (\n    <>\n      <Box\n        display=\"flex\"\n        alignItems=\"center\"\n        justifyContent=\"center\"\n        aria-hidden\n        className={cn(\n          styles['item-number'],\n          styles[`item-number--${itemStateCn[itemState]}`],\n          typographyStyles['body-short-small'],\n        )}\n      >\n        {stepNumberContent}\n      </Box>\n      <Typography\n        as=\"div\"\n        typographyType=\"bodyShortMedium\"\n        className={cn(\n          styles['item-text'],\n          typographyStyles['a--nested__child'],\n          isInactiveLink && styles['item-text--inactive-link'],\n        )}\n        color={getTextColor()}\n      >\n        {children}\n      </Typography>\n    </>\n  );\n\n  const ariaLabel = htmlProps?.['aria-label']\n    ? htmlProps?.['aria-label']\n    : `${children}, ${stepNumber}. ${completed ? t(texts.completed) : t(texts.uncompleted)}`;\n\n  return (\n    <Box\n      as=\"li\"\n      display={direction === 'row' ? 'flex' : undefined}\n      aria-current={active ? 'step' : undefined}\n      className={cn(styles['list-item'], styles[`list-item--${direction}`])}\n    >\n      {handleStepChange ? (\n        <Box\n          as={StylelessButton}\n          display=\"grid\"\n          alignItems=\"center\"\n          justifyContent=\"flex-start\"\n          gap=\"x0.5\"\n          {...getBaseHTMLProps(\n            id,\n            cn(\n              className,\n              styles['item-button'],\n              typographyStyles['a--nested__parent'],\n              focusable,\n            ),\n            style,\n            htmlProps as ComponentPropsWithRef<'button'>,\n            rest,\n          )}\n          aria-label={ariaLabel}\n          onClick={() => handleClick()}\n          disabled={disabled}\n        >\n          {stepContent}\n        </Box>\n      ) : (\n        <div\n          {...getBaseHTMLProps(\n            id,\n            cn(className, cn(styles['item-button'], styles['item-div'])),\n            style,\n            htmlProps as ComponentPropsWithRef<'div'>,\n            rest,\n          )}\n          aria-label={ariaLabel}\n        >\n          {stepContent}\n        </div>\n      )}\n    </Box>\n  );\n};\n\nProgressTrackerItem.displayName = 'ProgressTracker.Item';\n\nconst texts = createTexts({\n  uncompleted: {\n    nb: 'trinn ikke ferdig',\n    no: 'trinn ikke ferdig',\n    nn: 'trinn ikkje ferdig',\n    en: 'step uncompleted',\n    se: 'ceahkki ii gárvvis',\n  },\n  completed: {\n    nb: 'trinn ferdig',\n    no: 'trinn ferdig',\n    nn: 'trinn ferdig',\n    en: 'step completed',\n    se: 'ceahkki gárvá',\n  },\n});\n","import { type ComponentPropsWithRef, useId } from 'react';\n\nimport { createSizes } from '../../types';\nimport utilStyles from './../helpers/styling/utilStyles.module.css';\nimport styles from './ProgressBar.module.css';\nimport {\n  cn,\n  derivativeIdGenerator,\n  spaceSeparatedIdListGenerator,\n} from '../../utils';\nimport { type CommonInputProps, getInputWidth } from '../helpers/Input';\nimport { renderInputMessage } from '../InputMessage';\nimport { Box } from '../layout';\nimport { renderLabel } from '../Typography/Label/Label.utils';\n\nexport const PROGRESS_BAR_SIZES = createSizes('small', 'medium');\nexport type ProgressBarSize = (typeof PROGRESS_BAR_SIZES)[number];\n\nexport type ProgressBarProps = Pick<\n  CommonInputProps,\n  'tip' | 'errorMessage' | 'label' | 'width'\n> & {\n  /**\n   * Størrelse.\n   * @default \"medium\"\n   */\n  size?: ProgressBarSize;\n  /**\n   * Indikerer i hvor stor grad prosessen er fullført.\n   * Den skal ha verdi over 0; mindre eller lik `max`, mindre eller lik 1 hvis `max` ikke er satt.\n   * Hvis verdien er `undefined` eller ugyldig blir komponenten \"indeterminate\".\n   */\n  value?: number;\n  /**\n   * Verdi som indikerer at prosessen er fullført; maksimal verdi.\n   * @default 1\n   */\n  max?: number;\n} & Omit<ComponentPropsWithRef<'progress'>, 'max' | 'value'>;\n\nexport const ProgressBar = ({\n  label,\n  tip,\n  errorMessage,\n  size = 'medium',\n  'aria-describedby': ariaDescribedby,\n  value,\n  width,\n  max,\n  id,\n  className,\n  style,\n  ...rest\n}: ProgressBarProps) => {\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-searchInput`;\n  const hasErrorMessage = !!errorMessage;\n  const hasTip = !!tip;\n  const hasValidMax = !!max && max > 0;\n\n  /**\n   * Verdi skal være mindre eller lik max når max finnes; og mindre eller lik 1 hvis ikke.\n   * Komponenten er \"indeterminate\" hvis value ikke er gyldig.\n   */\n  const hasValidValue =\n    !!value &&\n    value > 0 &&\n    ((max !== undefined && value <= max) || (max === undefined && value <= 1));\n\n  const tipId = derivativeIdGenerator(uniqueId, 'tip');\n  const errorMessageId = derivativeIdGenerator(uniqueId, 'errorMessage');\n\n  const fillPrecentage = hasValidValue && (value / (max ?? 1)) * 100 + '%';\n  const isIndeterminate = !hasValidValue && !hasErrorMessage;\n  return (\n    <Box width=\"100%\" className={className} style={style}>\n      {renderLabel({ label, htmlFor: uniqueId })}\n      <progress\n        id={uniqueId}\n        className={utilStyles['visually-hidden']}\n        value={hasValidValue ? value : undefined}\n        max={hasValidMax ? max : undefined}\n        aria-describedby={spaceSeparatedIdListGenerator([\n          hasTip ? tipId : undefined,\n          hasErrorMessage ? errorMessageId : undefined,\n          ariaDescribedby,\n        ])}\n        {...rest}\n      >\n        {fillPrecentage}\n      </progress>\n      <Box\n        width={getInputWidth(width)}\n        height={size === 'small' ? 'x0.75' : 'x1.5'}\n        className={cn(styles.progress)}\n      >\n        <Box\n          height=\"100%\"\n          width={isIndeterminate ? '25%' : fillPrecentage ? fillPrecentage : 0}\n          className={cn(\n            styles.fill,\n            isIndeterminate && styles['fill--indeterminate'],\n            fillPrecentage === '100%' && styles['fill--done'],\n            errorMessage && styles['fill--error'],\n          )}\n        />\n      </Box>\n      {renderInputMessage({ tip, tipId, errorMessage, errorMessageId })}\n    </Box>\n  );\n};\n\nProgressBar.displayName = 'ProgressBar';\n",".progress {\n  background-color: var(--dds-color-surface-medium);\n  border: 1px solid var(--dds-color-border-default);\n  border-radius: var(--dds-border-radius-surface);\n}\n\n.fill {\n  background-color: var(--dds-color-surface-action-resting);\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      width var(--dds-motion-surface),\n      background-color var(--dds-motion-micro-state);\n  }\n}\n\n.fill--done {\n  background-color: var(--dds-color-surface-success-strong);\n}\n\n.fill--error {\n  background-color: var(--dds-color-surface-action-danger-resting);\n}\n\n.fill--indeterminate {\n  animation: indeterminate 2s infinite linear;\n}\n\n@keyframes indeterminate {\n  0% {\n    transform: translateX(0);\n  }\n  50% {\n    transform: translateX(300%);\n  }\n  100% {\n    transform: translateX(0);\n  }\n}\n","import {\n  type ChangeEvent,\n  type ComponentPropsWithRef,\n  useId,\n  useState,\n} from 'react';\n\nimport { useAutocompleteSearch } from './AutocompleteSearch.context';\nimport styles from './Search.module.css';\nimport { type SearchButtonProps, type SearchSize } from './Search.types';\nimport { SearchSuggestions } from './SearchSuggestions';\nimport { useCombinedRef } from '../../hooks';\nimport { createTexts, useTranslation } from '../../i18n';\nimport {\n  cn,\n  derivativeIdGenerator,\n  spaceSeparatedIdListGenerator,\n} from '../../utils';\nimport { createClearChangeEvent } from '../../utils/createClearChangeEvent';\nimport { Button } from '../Button';\nimport { ClearButton } from '../helpers/ClearButton';\nimport { Input, type InputProps } from '../helpers/Input';\nimport inputStyles from '../helpers/Input/Input.module.css';\nimport { Icon } from '../Icon';\nimport { SearchIcon } from '../Icon/icons';\nimport { renderInputMessage } from '../InputMessage';\nimport { Box, Grid, HStack } from '../layout';\nimport { renderLabel } from '../Typography/Label/Label.utils';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\nimport { VisuallyHidden } from '../VisuallyHidden';\n\nexport type SearchProps = Pick<InputProps, 'tip' | 'label'> & {\n  /**Størrelsen på komponenten. */\n  componentSize?: SearchSize;\n  /**Props for søkeknappen. */\n  buttonProps?: SearchButtonProps;\n  /**Om søkeikonet skal vises. */\n  showIcon?: boolean;\n} & Pick<InputProps, 'width'> &\n  Omit<ComponentPropsWithRef<'input'>, 'width' | 'height'>;\n\nexport const Search = ({\n  componentSize = 'medium',\n  buttonProps,\n  showIcon = true,\n  name,\n  label,\n  tip,\n  id,\n  value,\n  width,\n  onChange,\n  className,\n  style,\n  'aria-describedby': ariaDescribedby,\n  ref,\n  ...rest\n}: SearchProps) => {\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-searchInput`;\n  const tipId = derivativeIdGenerator(uniqueId, 'tip');\n  const suggestionsId = derivativeIdGenerator(uniqueId, 'suggestions');\n  const suggestionsDescriptionId = derivativeIdGenerator(\n    uniqueId,\n    'suggestions-description',\n  );\n\n  const { t } = useTranslation();\n\n  const [hasValue, setHasValue] = useState(!!value);\n\n  const context = useAutocompleteSearch();\n\n  const combinedRef = context.inputRef\n    ? useCombinedRef(context.inputRef, ref)\n    : ref;\n\n  const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n    setHasValue(e.target.value !== '');\n\n    context?.onValueChange?.(e);\n    onChange?.(e);\n  };\n\n  const clearInput = () => {\n    const clearChangeEvent = createClearChangeEvent<HTMLInputElement>(uniqueId);\n    handleChange(clearChangeEvent);\n  };\n\n  const {\n    label: buttonLabel,\n    onClick,\n    ...otherButtonProps\n  } = buttonProps ?? {};\n\n  const hasSuggestions = !!context.suggestions;\n  const showSearchButton = !!buttonProps && !!onClick;\n  const inputGroup = (\n    <HStack\n      position=\"relative\"\n      width={!showSearchButton ? width : undefined}\n      className={cn(\n        !showSearchButton && className,\n        typographyStyles[`body-short-${componentSize}`],\n        inputStyles['input-group'],\n      )}\n    >\n      {showIcon && (\n        <Icon\n          icon={SearchIcon}\n          iconSize=\"component\"\n          className={cn(\n            inputStyles['input-group__absolute-el'],\n            inputStyles[`input-group__absolute-el--${componentSize}`],\n          )}\n        />\n      )}\n      <Box\n        as={Input}\n        {...rest}\n        ref={combinedRef}\n        name={name}\n        type=\"search\"\n        id={uniqueId}\n        aria-describedby={spaceSeparatedIdListGenerator([\n          tip ? tipId : undefined,\n          context.suggestions ? suggestionsDescriptionId : undefined,\n          ariaDescribedby,\n        ])}\n        value={context.inputValue ?? value}\n        onChange={handleChange}\n        autoComplete=\"off\"\n        aria-autocomplete={hasSuggestions ? 'list' : undefined}\n        aria-controls={hasSuggestions ? suggestionsId : undefined}\n        aria-expanded={context.showSuggestions}\n        role={hasSuggestions ? 'combobox' : undefined}\n        width=\"100%\"\n        className={cn(\n          styles.input,\n          inputStyles[`input--${componentSize}`],\n          showIcon && inputStyles[`input-with-icon--${componentSize}`],\n          inputStyles[`input-with-btn-right--${componentSize}`],\n        )}\n      />\n      {hasSuggestions && (\n        <>\n          <SearchSuggestions\n            id={suggestionsId}\n            ref={context.suggestionsRef}\n            searchId={uniqueId}\n            onSuggestionClick={context.onSugggestionClick}\n            suggestions={context.suggestions}\n            showSuggestions={context.showSuggestions}\n          />\n          <VisuallyHidden id={suggestionsDescriptionId}>\n            {t(texts.useArrowKeys)}\n          </VisuallyHidden>\n        </>\n      )}\n      {hasValue && (\n        <ClearButton\n          size={componentSize}\n          aria-label={t(texts.clearSearch)}\n          onClick={clearInput}\n        />\n      )}\n    </HStack>\n  );\n  return (\n    <div>\n      {renderLabel({ htmlFor: uniqueId, label })}\n      <div>\n        {showSearchButton ? (\n          <Grid\n            defaultPageLayout={false}\n            className={className}\n            width={width}\n            columnGap=\"x0.5\"\n            gridTemplateColumns=\"1fr auto\"\n            style={style}\n          >\n            {inputGroup}\n            <Button\n              size={componentSize}\n              onClick={onClick}\n              {...otherButtonProps}\n            >\n              {buttonLabel ?? t(texts.search)}\n            </Button>\n          </Grid>\n        ) : (\n          inputGroup\n        )}\n        {renderInputMessage({ tip, tipId })}\n      </div>\n    </div>\n  );\n};\n\nSearch.displayName = 'Search';\n\nconst texts = createTexts({\n  clearSearch: {\n    nb: 'Tøm søk',\n    no: 'Tøm søk',\n    nn: 'Tøm søk',\n    en: 'Clear search',\n    se: 'Gurre ohcama',\n  },\n  search: {\n    nb: 'Søk',\n    no: 'Søk',\n    nn: 'Søk',\n    en: 'Search',\n    se: 'Ohcan',\n  },\n  useArrowKeys: {\n    nb: 'Bruk piltastene for å navigere i forslagene når listen er utvidet',\n    no: 'Bruk piltastene for å navigere i forslagene når listen er utvidet',\n    nn: 'Bruk piltastane for å navigere i forslaga når lista er utvida',\n    en: 'Use the arrow keys to navigate suggestions when the list is expanded',\n    se: 'Deatte njuollaboalu ohccat árvalusaid listtus mii lea viiddiduvvon',\n  },\n});\n","import {\n  type ChangeEvent,\n  type MouseEvent,\n  type RefObject,\n  createContext,\n  useContext,\n} from 'react';\n\nexport interface AutocompleteSearchContextType {\n  onValueChange?: (e: ChangeEvent<HTMLInputElement>) => void;\n  onSugggestionClick?: (e: MouseEvent<HTMLButtonElement>) => void;\n  suggestions?: Array<string>;\n  showSuggestions?: boolean;\n  inputValue?: string;\n  inputRef?: RefObject<HTMLInputElement | null> | null;\n  suggestionsRef?: RefObject<HTMLDivElement | null> | null;\n}\n\nexport const AutocompleteSearchContext =\n  createContext<AutocompleteSearchContextType>({});\n\nexport const useAutocompleteSearch = () => {\n  return useContext(AutocompleteSearchContext);\n};\n",".input {\n  &[type='search']::-webkit-search-decoration,\n  &[type='search']::-webkit-search-cancel-button,\n  &[type='search']::-webkit-search-results-button,\n  &[type='search']::-webkit-search-results-decoration {\n    -webkit-appearance: none;\n  }\n  font: inherit;\n}\n\n.clear-button {\n  right: var(--dds-spacing-x1);\n}\n\n.suggestions {\n  z-index: var(--dds-zindex-dropdown);\n}\n","import { type ComponentPropsWithRef, useEffect, useRef } from 'react';\n\nimport { useCombinedRef } from '../../hooks';\nimport { StylelessButton } from '../helpers';\nimport { DropdownItem } from '../helpers/Dropdown/DropdownItem';\n\nexport type SearchSuggestionItemProps = {\n  focus?: boolean;\n  index?: number;\n} & ComponentPropsWithRef<'button'>;\n\nexport const SearchSuggestionItem = ({\n  focus,\n  ref,\n  ...rest\n}: SearchSuggestionItemProps) => {\n  const itemRef = useRef<HTMLButtonElement>(null);\n  const combinedRef = useCombinedRef(ref, itemRef);\n\n  useEffect(() => {\n    if (focus) {\n      itemRef.current?.focus();\n    }\n  }, [focus]);\n\n  return (\n    <DropdownItem\n      as={StylelessButton}\n      ref={combinedRef}\n      {...rest}\n      tabIndex={focus ? 0 : -1}\n    />\n  );\n};\n\nSearchSuggestionItem.displayName = 'SearchSuggestionItem';\n","import { type MouseEvent } from 'react';\n\nimport styles from './Search.module.css';\nimport { SearchSuggestionItem } from './SearchSuggestionItem';\nimport { useRoveFocus } from '../../hooks';\nimport { createTexts, useTranslation } from '../../i18n';\nimport { type BaseComponentProps, getBaseHTMLProps } from '../../types';\nimport { cn, derivativeIdGenerator } from '../../utils';\nimport { StylelessList } from '../helpers';\nimport { DropdownHeader } from '../helpers/Dropdown/DropdownHeader';\nimport utilStyles from '../helpers/styling/utilStyles.module.css';\nimport { Paper } from '../layout';\n\nexport type SearchSuggestionsProps = BaseComponentProps<\n  HTMLDivElement,\n  {\n    /**Forslag som vises i listen. */\n    suggestions?: Array<string>;\n    /** Om listen skal vises. */\n    showSuggestions?: boolean;\n    /**Callback når et forslag blir valgt, inkludert søkefunksjon. */\n    onSuggestionClick?: (e: MouseEvent<HTMLButtonElement>) => void;\n    /** Maks antall forslag vist i listen. */\n    maxSuggestions?: number;\n    /**Id til `<Search>`. */\n    searchId: string;\n  }\n>;\n\nexport const SearchSuggestions = ({\n  id,\n  searchId,\n  className,\n  style,\n  htmlProps,\n  suggestions = [],\n  showSuggestions,\n  onSuggestionClick,\n  maxSuggestions,\n  ...rest\n}: SearchSuggestionsProps) => {\n  const suggestionsHeaderId = derivativeIdGenerator(\n    searchId,\n    'suggestions-header',\n  );\n  const { t } = useTranslation();\n  const [focus] = useRoveFocus(suggestions?.length, showSuggestions);\n\n  const suggestionsToRender = maxSuggestions\n    ? suggestions?.slice(maxSuggestions)\n    : suggestions;\n\n  return (\n    <Paper\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          styles.suggestions,\n          utilStyles.scrollbar,\n          utilStyles['visibility-transition'],\n          showSuggestions\n            ? utilStyles['visibility-transition--open']\n            : utilStyles['visibility-transition--closed'],\n        ),\n        style,\n        htmlProps,\n        rest,\n      )}\n      aria-hidden={!showSuggestions}\n      border=\"border-default\"\n      position=\"absolute\"\n      top=\"100%\"\n      width=\"100%\"\n      maxHeight=\"300px\"\n      overflowY=\"scroll\"\n      marginBlock=\"x0.25 0\"\n    >\n      <DropdownHeader id={suggestionsHeaderId}>\n        {t(texts.searchSuggestions)}\n      </DropdownHeader>\n      <StylelessList role=\"listbox\" aria-labelledby={suggestionsHeaderId}>\n        {suggestionsToRender.map((suggestion, index) => {\n          return (\n            <li key={index} role=\"option\">\n              <SearchSuggestionItem\n                index={index}\n                focus={focus === index && showSuggestions}\n                aria-label={t(texts.search(suggestion))}\n                onClick={onSuggestionClick}\n                aria-setsize={suggestionsToRender.length}\n                aria-posinset={index}\n              >\n                {suggestion}\n              </SearchSuggestionItem>\n            </li>\n          );\n        })}\n      </StylelessList>\n    </Paper>\n  );\n};\n\nSearchSuggestions.displayName = 'SearchSuggestions';\n\nconst texts = createTexts({\n  search: suggestion => ({\n    no: `${suggestion} søk`,\n    nb: `${suggestion} søk`,\n    nn: `${suggestion} søk`,\n    en: `${suggestion} search`,\n    se: `${suggestion} ohcan`,\n  }),\n  searchSuggestions: {\n    no: 'Søkeforslag',\n    nb: 'Søkeforslag',\n    nn: 'Søkeforslag',\n    en: 'Search suggestions',\n    se: 'Ohcan evttohus',\n  },\n});\n","import {\n  type ChangeEvent,\n  type MouseEvent,\n  type ReactNode,\n  useEffect,\n  useRef,\n  useState,\n} from 'react';\n\nimport {\n  AutocompleteSearchContext,\n  type AutocompleteSearchContextType,\n} from './AutocompleteSearch.context';\nimport { useOnClickOutside, useOnKeyDown } from '../../hooks';\nimport { searchFilter } from '../../utils';\n\ninterface WeightedValue {\n  text: string;\n  relevance: number;\n}\n\nexport interface WeightedSearchData {\n  array: Array<WeightedValue>;\n  sortFunction?: (a: WeightedValue, b: WeightedValue) => number;\n}\n\nexport interface SearchData {\n  array: Array<string>;\n  sortFunction?: (a: string, b: string) => number;\n}\n\nexport interface SearchAutocompleteWrapperProps {\n  /**Array med data som kan søkes på og eventuelt tilhørende sorteringsfunksjon. Array kan bestå av elementer av typen `string`  eller objekter med vekt og tekst.*/\n  data?: SearchData | WeightedSearchData;\n  /** Ekstra callback ved `onChange` i `<Search>`. */\n  onChange?: (e: ChangeEvent<HTMLInputElement>) => void;\n  /**Callback når et forslag blir valgt, inkludert søkefunksjon. */\n  onSuggestionSelection?: () => void;\n  /** Custom filter for forslag. */\n  filter?: (sugestion: string, query: string) => boolean;\n  /**Minst lengde på query når forslag skal vises.\n   * @default 2\n   */\n  queryLength?: number;\n  /** Barnet til subkomponenten - `<Search>`. */\n  children?: ReactNode;\n  /**Initielle `value` i `<Search>`. */\n  value?: string;\n}\n\nexport const SearchAutocompleteWrapper = (\n  props: SearchAutocompleteWrapperProps,\n) => {\n  const {\n    value,\n    data,\n    filter,\n    queryLength = 2,\n    onChange,\n    onSuggestionSelection,\n    children,\n  } = props;\n\n  const [inputValue, setInputValue] = useState(value ?? '');\n  const [suggestions, setSuggestions] = useState<Array<string>>([]);\n  const [showSuggestions, setShowSuggestions] = useState(false);\n\n  const closeSuggestions = () =>\n    showSuggestions === true && setShowSuggestions(false);\n\n  const openSuggestions = () =>\n    showSuggestions === false && setShowSuggestions(true);\n\n  useEffect(() => {\n    if (suggestions.length > 0) {\n      openSuggestions();\n    } else {\n      closeSuggestions();\n    }\n  }, [suggestions]);\n\n  const isWeightedValueData = (\n    data: SearchData | WeightedSearchData,\n  ): data is WeightedSearchData =>\n    (data as WeightedSearchData).array[0].relevance !== undefined;\n\n  const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n    const query = e.target.value;\n    handleSetInputValue(query);\n    let finalSuggestions: Array<string> = [];\n\n    if (query.length >= queryLength) {\n      if (data) {\n        if (isWeightedValueData(data)) {\n          const { sortFunction, array } = data;\n\n          const filteredSuggestions: Array<WeightedValue> = array.filter(\n            suggestion =>\n              filter\n                ? filter(suggestion.text, query)\n                : searchFilter(suggestion.text, query),\n          );\n\n          finalSuggestions = filteredSuggestions\n            .sort(sortFunction ? (a, b) => sortFunction(a, b) : undefined)\n            .map(item => item.text);\n        } else {\n          const { sortFunction, array } = data;\n\n          const filteredSuggestions: Array<string> = array.filter(suggestion =>\n            filter\n              ? filter(suggestion, query)\n              : searchFilter(suggestion, query),\n          );\n\n          finalSuggestions = filteredSuggestions.sort(\n            sortFunction ? (a, b) => sortFunction(a, b) : undefined,\n          );\n        }\n      }\n      setSuggestions(finalSuggestions);\n    } else {\n      setSuggestions([]);\n    }\n    onChange?.(e);\n  };\n\n  const handleSuggestionClick = (e: MouseEvent<HTMLButtonElement>) => {\n    setSuggestions([]);\n    handleSetInputValue((e.target as HTMLButtonElement).innerText);\n    onSuggestionSelection?.();\n    closeSuggestions();\n  };\n\n  const handleSetInputValue = (value: string | undefined) => {\n    setInputValue(value ?? '');\n  };\n\n  const inputRef = useRef<HTMLInputElement>(null);\n  const suggestionsRef = useRef<HTMLDivElement>(null);\n\n  useOnClickOutside([inputRef, suggestionsRef], () => {\n    closeSuggestions();\n  });\n\n  useOnKeyDown('Tab', () => closeSuggestions());\n\n  const contextProps: AutocompleteSearchContextType = {\n    showSuggestions,\n    inputRef,\n    suggestionsRef,\n    suggestions,\n    onValueChange: handleChange,\n    inputValue,\n    onSugggestionClick: handleSuggestionClick,\n  };\n  return (\n    <AutocompleteSearchContext value={contextProps}>\n      {children}\n    </AutocompleteSearchContext>\n  );\n};\n\nSearchAutocompleteWrapper.displayName = 'SearchAutocompleteWrapper';\n","import { Search as BaseSearch, type SearchProps } from './Search';\nimport {\n  SearchAutocompleteWrapper,\n  type SearchAutocompleteWrapperProps,\n  type SearchData,\n  type WeightedSearchData,\n} from './SearchAutocompleteWrapper';\nimport {\n  SearchSuggestions,\n  type SearchSuggestionsProps,\n} from './SearchSuggestions';\n\ntype SearchCompoundProps = typeof BaseSearch & {\n  AutocompleteWrapper: typeof SearchAutocompleteWrapper;\n  Suggestions: typeof SearchSuggestions;\n};\n\nconst Search = BaseSearch as SearchCompoundProps;\n\nSearch.AutocompleteWrapper = SearchAutocompleteWrapper;\nSearch.Suggestions = SearchSuggestions;\n\nexport { Search };\n\nexport type {\n  SearchProps,\n  SearchData,\n  WeightedSearchData,\n  SearchAutocompleteWrapperProps,\n  SearchSuggestionsProps,\n};\n\nexport { SearchAutocompleteWrapper };\nexport { SearchSuggestions };\nexport * from './Search.types';\n","@keyframes ddsSkeletonAnimation {\n  0% {\n    opacity: 1;\n  }\n  to {\n    opacity: 0.5;\n  }\n}\n\n.container {\n  animation: ddsSkeletonAnimation var(--dds-motion-animation-skeleton);\n  background-color: var(--dds-color-surface-skeleton);\n\n  @media (prefers-reduced-motion: reduce) {\n    animation: none;\n    opacity: 0.8;\n  }\n}\n","import { type Property } from 'csstype';\nimport { type ComponentPropsWithRef } from 'react';\n\nimport styles from './Skeleton.module.css';\nimport { cn } from '../../utils';\nimport { Box, type ResponsiveProps } from '../layout';\n\nexport type SkeletonAppearance = 'circle' | 'rectangle';\n\nexport type SkeletonProps = {\n  /**CSS border radius.\n   * @default \"var(--dds-border-radius-surface)\"\n   */\n  borderRadius?: Property.BorderRadius;\n} & Pick<ResponsiveProps, 'width' | 'height'> &\n  ComponentPropsWithRef<'div'>;\n\nexport const Skeleton = ({\n  width,\n  height,\n  borderRadius = 'var(--dds-border-radius-surface)',\n  className,\n  style,\n  ref,\n  ...rest\n}: SkeletonProps) => {\n  return (\n    <Box\n      width={width}\n      height={height}\n      ref={ref}\n      className={cn(className, styles.container)}\n      style={{ ...style, borderRadius }}\n      {...rest}\n    ></Box>\n  );\n};\n\nSkeleton.displayName = 'Skeleton';\n",".wrapper {\n  box-sizing: border-box;\n  clip: rect(1px, 1px, 1px, 1px);\n  white-space: nowrap;\n  opacity: 0;\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition: opacity var(--dds-motion-surface);\n  }\n}\n\n.wrapper:focus-within {\n  clip: auto;\n  height: auto;\n  overflow: auto;\n  width: 100%;\n  z-index: var(--dds-zindex-skiptocontent);\n  opacity: 1;\n}\n","import { type Property } from 'csstype';\n\nimport styles from './SkipToContent.module.css';\nimport { type BaseComponentProps } from '../../types';\nimport { cn } from '../../utils';\nimport { Contrast } from '../layout';\nimport { Link } from '../Typography';\n\nexport type SkipToContentProps = BaseComponentProps<\n  HTMLAnchorElement,\n  {\n    /** Teksten som vises i lenka.\n     * @default \"Til hovedinnhold\"\n     */\n    text?: string;\n    /**Spesifiserer hvor det skal hoppes til via `id`-attributtet til innholdet. */\n    href: string;\n    /**Avstand fra top i nærmeste posisjonert container.\n     * @default 0\n     */\n    top?: Property.Top;\n  }\n>;\n\nexport const SkipToContent = ({\n  text = 'Til hovedinnhold',\n  top = 0,\n  id,\n  className,\n  htmlProps,\n  style,\n  ...rest\n}: SkipToContentProps) => {\n  return (\n    <Contrast\n      padding=\"x0.25\"\n      position=\"absolute\"\n      textAlign=\"center\"\n      overflow=\"hidden\"\n      height=\"1px\"\n      width=\"1px\"\n      className={cn(className, styles.wrapper)}\n      style={style}\n      top={top}\n    >\n      <Link {...rest} {...htmlProps} id={id} typographyType=\"bodyShortMedium\">\n        {text}\n      </Link>\n    </Contrast>\n  );\n};\n\nSkipToContent.displayName = 'SkipToContent';\n","import { type ComponentPropsWithRef, useState } from 'react';\n\nimport styles from './SplitButton.module.css';\nimport { createTexts, useTranslation } from '../../i18n';\nimport { type ExtractStrict } from '../../types';\nimport { cn } from '../../utils';\nimport { Button, type ButtonProps, type ButtonPurpose } from '../Button';\nimport { ChevronDownIcon, ChevronUpIcon } from '../Icon/icons';\nimport {\n  OverflowMenu,\n  OverflowMenuButton,\n  type OverflowMenuButtonProps,\n  OverflowMenuGroup,\n  OverflowMenuList,\n} from '../OverflowMenu';\n\nexport type SplitButtonPurpose = ExtractStrict<\n  ButtonPurpose,\n  'primary' | 'secondary'\n>;\n\nexport type SplitButtonPrimaryActionProps = Omit<\n  ButtonProps,\n  'size' | 'purpose'\n>;\nexport type SplitButtonSecondaryActionsProps = Array<OverflowMenuButtonProps>;\n\nexport type SplitButtonProps = Pick<ButtonProps, 'size'> & {\n  /**Props for primær handling. Samme props som for `<Button>` unntatt `size` og `purpose`. */\n  primaryAction: SplitButtonPrimaryActionProps;\n  /**Props for sekunære handlinger. */\n  secondaryActions: SplitButtonSecondaryActionsProps;\n  /**Formål med knappen.\n   * @default \"primary\"\n   */\n  purpose?: SplitButtonPurpose;\n} & ComponentPropsWithRef<'div'>;\n\nexport const SplitButton = ({\n  size,\n  primaryAction,\n  secondaryActions,\n  purpose = 'primary',\n  className,\n  ...rest\n}: SplitButtonProps) => {\n  const { t } = useTranslation();\n  const [isOpen, setIsOpen] = useState(false);\n  const buttonStyleProps: ButtonProps = {\n    purpose,\n    size,\n  };\n\n  return (\n    <div className={cn(className, styles.container)} {...rest}>\n      <Button\n        {...buttonStyleProps}\n        {...primaryAction}\n        iconPosition=\"left\"\n        className={styles.main}\n      />\n      <OverflowMenuGroup isOpen={isOpen} setIsOpen={setIsOpen}>\n        <Button\n          {...buttonStyleProps}\n          icon={isOpen ? ChevronUpIcon : ChevronDownIcon}\n          aria-label={t(texts.moreActions)}\n          purpose={purpose}\n          className={cn(\n            styles.option,\n            purpose === 'primary' && styles['option--primary'],\n          )}\n          type=\"button\"\n        />\n        <OverflowMenu placement=\"bottom-end\">\n          <OverflowMenuList>\n            {secondaryActions.map((item, index) => (\n              <OverflowMenuButton key={index} {...item}>\n                {item.children}\n              </OverflowMenuButton>\n            ))}\n          </OverflowMenuList>\n        </OverflowMenu>\n      </OverflowMenuGroup>\n    </div>\n  );\n};\n\nSplitButton.displayName = 'SplitButton';\n\nconst texts = createTexts({\n  moreActions: {\n    nb: 'Flere handlinger',\n    no: 'Flere handlinger',\n    nn: 'Fleire handlingar',\n    en: 'More actions',\n    se: 'Eanet doaimmat',\n  },\n});\n",".container {\n  display: flex;\n}\n\n.main {\n  border-top-right-radius: 0;\n  border-bottom-right-radius: 0;\n  margin-inline-end: -1px;\n}\n\n.main:focus {\n  position: relative;\n  z-index: 0;\n}\n\n.option {\n  border-top-left-radius: 0;\n  border-bottom-left-radius: 0;\n}\n\n.option:focus {\n  position: relative;\n  z-index: 0;\n}\n\n.option--primary,\n.option--primary:hover {\n  border-left: 1px solid var(--dds-color-border-on-action) !important;\n}\n","import {\n  Children,\n  Fragment,\n  cloneElement,\n  isValidElement,\n  useEffect,\n  useState,\n} from 'react';\n\nimport { useCollapsibleTableContext } from './Table.context';\nimport { createTexts, useTranslation } from '../../../i18n';\nimport {\n  cn,\n  derivativeIdGenerator,\n  spaceSeparatedIdListGenerator,\n} from '../../../utils';\nimport { DescriptionList, DescriptionListTerm } from '../../DescriptionList';\nimport { StylelessButton } from '../../helpers';\nimport { focusable } from '../../helpers/styling/focus.module.css';\nimport { Icon } from '../../Icon';\nimport { AnimatedChevronUpDownIcon } from '../../Icon/icons/animated';\nimport { VisuallyHidden } from '../../VisuallyHidden';\nimport { Table, type TableRowProps } from '../normal';\nimport { Cell, type TableCellProps } from '../normal/Cell';\nimport { useIsInTableHead } from '../normal/Head';\nimport { Row } from '../normal/Row';\nimport styles from '../normal/Table.module.css';\n\nexport const CollapsibleRow = ({\n  type: _type,\n  className,\n  mode = 'normal',\n  selected,\n  hoverable,\n  children,\n  ref,\n  ...rest\n}: TableRowProps) => {\n  const { t } = useTranslation();\n  const isInHead = useIsInTableHead();\n  const type = _type ?? (isInHead ? 'head' : 'body');\n  const { isCollapsed, headerValues, definingColumnIndex } =\n    useCollapsibleTableContext();\n  const [childrenCollapsed, setChildrenCollapsed] = useState(true);\n\n  useEffect(() => {\n    if (!isCollapsed) setChildrenCollapsed(true);\n  }, [isCollapsed]);\n\n  const rowProps = (isOpenCollapsibleHeader?: boolean) => {\n    return {\n      mode,\n      selected,\n      hoverable,\n      className: cn(\n        className,\n        isOpenCollapsibleHeader && styles['row--colapsible-header--open'],\n      ),\n      ...rest,\n    };\n  };\n\n  const collapsedHeaderValues = headerValues.filter(\n    (column, index) => definingColumnIndex.indexOf(index) === -1,\n  );\n\n  const childrenArray = Children.toArray(children);\n  const collapsedChildren = childrenArray.filter(\n    (column, index) => definingColumnIndex.indexOf(index) === -1,\n  );\n\n  const prefix = 'collapsibleRow';\n  const collapsibleIds: Array<string> = [];\n\n  const collapsedRenderedChildren =\n    isCollapsed && collapsedHeaderValues.length > 0\n      ? collapsedChildren.map(function (child, index) {\n          const id = derivativeIdGenerator(prefix, index.toString());\n          collapsibleIds.push(id);\n\n          return (\n            <Fragment key={`DL-${index}`}>\n              <DescriptionListTerm>\n                {collapsedHeaderValues[index].content}\n              </DescriptionListTerm>\n              {isValidElement<TableCellProps>(child) &&\n                cloneElement(child, {\n                  collapsibleProps: { isCollapsibleChild: true },\n                })}\n            </Fragment>\n          );\n        })\n      : null;\n\n  const collapsedRows =\n    collapsedRenderedChildren && collapsedRenderedChildren.length > 0 ? (\n      <Row {...rowProps()}>\n        <Cell colSpan={definingColumnIndex.length + 1}>\n          <DescriptionList>{collapsedRenderedChildren}</DescriptionList>\n        </Cell>\n      </Row>\n    ) : null;\n\n  const definingColumnCells = childrenArray\n    .slice()\n    .filter((column, index) => definingColumnIndex.indexOf(index) > -1)\n    .sort((a, b) => {\n      return (\n        definingColumnIndex.indexOf(childrenArray.indexOf(a)) -\n        definingColumnIndex.indexOf(childrenArray.indexOf(b))\n      );\n    });\n\n  const headerRow = () => {\n    if (type !== 'head' || !isCollapsed) return null;\n\n    return (\n      <Row ref={ref} {...rowProps()}>\n        <>\n          {definingColumnCells}\n          <Table.Cell type=\"head\" layout=\"center\">\n            {t(texts.expand)}\n            <VisuallyHidden>{t(texts.row)}</VisuallyHidden>\n          </Table.Cell>\n        </>\n      </Row>\n    );\n  };\n\n  const idList = spaceSeparatedIdListGenerator(collapsibleIds);\n\n  const rowWithChevron = () => {\n    if (type !== 'body' || !isCollapsed) return null;\n    const iconState = childrenCollapsed ? 'down' : 'up';\n\n    return (\n      <Row ref={ref} {...rowProps(!childrenCollapsed && true)}>\n        {definingColumnCells}\n        <Table.Cell>\n          <StylelessButton\n            onClick={() => setChildrenCollapsed(!childrenCollapsed)}\n            aria-expanded={!childrenCollapsed}\n            aria-controls={idList}\n            className={cn(styles['collapse-button'], focusable)}\n          >\n            <Icon\n              icon={AnimatedChevronUpDownIcon}\n              iconSize=\"component\"\n              iconState={iconState}\n            />\n          </StylelessButton>\n        </Table.Cell>\n      </Row>\n    );\n  };\n\n  return isCollapsed &&\n    collapsedRenderedChildren &&\n    collapsedRenderedChildren.length > 0 ? (\n    <>\n      {headerRow()}\n      {type === 'body' && (\n        <>\n          {rowWithChevron()}\n          {childrenCollapsed ? null : collapsedRows}\n        </>\n      )}\n    </>\n  ) : (\n    <Row ref={ref} {...rowProps()}>\n      {children}\n    </Row>\n  );\n};\n\nCollapsibleRow.displayName = 'CollapsibleTable.Row';\n\nconst texts = createTexts({\n  expand: {\n    nb: 'Utvid',\n    no: 'Utvid',\n    nn: 'Utvid',\n    en: 'Expand',\n    se: 'Viiddit',\n  },\n  row: {\n    nb: 'raden',\n    no: 'raden',\n    nn: 'rada',\n    en: 'row',\n    se: 'gurgadus',\n  },\n});\n","import { createContext, useContext } from 'react';\n\nimport { type HeaderValues } from '../normal/Table.types';\n\ninterface CollapsibleTableContextProps {\n  isCollapsed?: boolean;\n  headerValues: HeaderValues;\n  definingColumnIndex: Array<number>;\n}\n\nexport const CollapsibleTableContext =\n  createContext<CollapsibleTableContextProps>({\n    headerValues: [],\n    definingColumnIndex: [0],\n  });\nexport const useCollapsibleTableContext = () =>\n  useContext(CollapsibleTableContext);\n","import { type ComponentPropsWithRef } from 'react';\n\nexport type TableBodyProps = ComponentPropsWithRef<'tbody'>;\n\nexport const Body = (props: TableBodyProps) => <tbody {...props} />;\n\nBody.displayName = 'Table.Body';\n","import { type ComponentPropsWithRef, createContext, useContext } from 'react';\n\nexport type TableHeadProps = ComponentPropsWithRef<'thead'>;\n\nexport const Head = ({ children, ...rest }: TableHeadProps) => (\n  <thead {...rest}>\n    <HeadContext value={true}>{children}</HeadContext>\n  </thead>\n);\n\nconst HeadContext = createContext(false);\n\nexport function useIsInTableHead(): boolean {\n  const isInTableHead = useContext(HeadContext);\n  return isInTableHead;\n}\n","import { type ComponentPropsWithRef } from 'react';\n\nimport { useIsInTableHead } from './Head';\nimport styles from './Table.module.css';\nimport { cn } from '../../../utils';\nimport { DescriptionListDesc } from '../../DescriptionList';\n\nexport type TableCellType = 'data' | 'head';\nexport type TableCellLayout = 'left' | 'right' | 'center' | 'text and icon';\nexport interface CollapsibleProps {\n  isCollapsibleChild?: boolean;\n}\n\nexport type TableCellProps = {\n  /**\n   * Type celle. Returnerer enten `<td>` eller `<th>`.\n   * @default \"data\" hvis den er brukt i `<Table.Body>` eller `<Table.Foot>`, 'head' hvis den er i `<Table.Head>`.\n   */\n  type?: TableCellType;\n  /**Layout av innholdet i cellen; legger en flex `<div>` i cellen, unntatt 'none' som ikke legger inn noe. 'tekst and icon' legger `gap` mellom barna og andre barnet i cellen.\n   * @default \"left\"\n   */\n  layout?: TableCellLayout;\n  /** Props ved bruk av `<CollapsibleRow>`. **OBS!** settes automatisk av forelder. */\n  collapsibleProps?: CollapsibleProps;\n} & (ComponentPropsWithRef<'td'> | ComponentPropsWithRef<'th'>);\n\nexport const Cell = ({\n  children,\n  type: _type,\n  layout = 'left',\n  collapsibleProps,\n  className,\n  ...rest\n}: TableCellProps) => {\n  const isInHead = useIsInTableHead();\n  const type = _type ?? (isInHead ? 'head' : 'data');\n\n  const { isCollapsibleChild } = collapsibleProps ?? {};\n  const isComplexLayout = layout === 'text and icon';\n\n  return isCollapsibleChild ? (\n    <DescriptionListDesc>{children}</DescriptionListDesc>\n  ) : type === 'head' ? (\n    <th\n      {...rest}\n      className={cn(\n        className,\n        !isComplexLayout && styles[`cell--${layout}`],\n        styles['cell--head'],\n      )}\n    >\n      {isComplexLayout ? (\n        <div className={styles.cell__inner}>{children}</div>\n      ) : (\n        children\n      )}\n    </th>\n  ) : (\n    <td\n      {...rest}\n      className={cn(className, !isComplexLayout && styles[`cell--${layout}`])}\n    >\n      {isComplexLayout ? (\n        <div className={styles.cell__inner}>{children}</div>\n      ) : (\n        children\n      )}\n    </td>\n  );\n};\n\nCell.displayName = 'Table.Cell';\n","import { type ComponentPropsWithRef } from 'react';\n\nexport type TableFootProps = ComponentPropsWithRef<'tfoot'>;\n\nexport const Foot = (props: TableFootProps) => <tfoot {...props} />;\n\nFoot.displayName = 'Table.Foot';\n","import { useIsInTableHead } from './Head';\nimport styles from './Table.module.css';\nimport { type TableRowProps } from './Table.types';\nimport { cn } from '../../../utils';\nimport { focusable } from '../../helpers/styling/focus.module.css';\nimport typographyStyles from '../../Typography/typographyStyles.module.css';\n\nexport const Row = ({\n  type: _type,\n  mode = 'normal',\n  hoverable,\n  selected,\n  className,\n  ...rest\n}: TableRowProps) => {\n  const isInHeader = useIsInTableHead();\n  const type = _type ?? (isInHeader ? 'head' : 'body');\n  return (\n    <tr\n      className={cn(\n        className,\n        styles.row,\n        type === 'body' && styles['row--body'],\n        mode === 'sum' && styles['row--sum'],\n        selected && styles['row--selected'],\n        hoverable && styles['row--hoverable'],\n        (type === 'head' || mode === 'sum') && typographyStyles.bold,\n        focusable,\n      )}\n      {...rest}\n    />\n  );\n};\n\nRow.displayName = 'Table.Row';\n","import { type MouseEvent } from 'react';\n\nimport { Cell, type TableCellProps } from './Cell';\nimport styles from './Table.module.css';\nimport { createTexts, useTranslation } from '../../../i18n';\nimport { cn } from '../../../utils';\nimport { StylelessButton } from '../../helpers';\nimport { focusable } from '../../helpers/styling/focus.module.css';\nimport { Icon } from '../../Icon';\nimport {\n  ChevronDownIcon,\n  ChevronUpIcon,\n  UnfoldMoreIcon,\n} from '../../Icon/icons';\n\nexport type SortOrder = 'ascending' | 'descending';\n\nexport type TableSortCellProps = {\n  /**Spesifiserer om kolonnen er sortert. */\n  isSorted?: boolean;\n  /**Sorteringsrekkefølge i kolonnen. Avgjør hvilket ikon skal vises i cellen. */\n  sortOrder?: SortOrder;\n  /**onClick-funksjon for sortering og annen logikk. */\n  onClick: (event: MouseEvent<HTMLButtonElement>) => void;\n} & Omit<TableCellProps, 'type'>;\n\nexport const SortCell = ({\n  isSorted,\n  sortOrder,\n  onClick,\n  children,\n  ...rest\n}: TableSortCellProps) => {\n  const { t } = useTranslation();\n  const SortIcon = () => {\n    if (!isSorted || !sortOrder) return UnfoldMoreIcon;\n    if (sortOrder === 'ascending') return ChevronDownIcon;\n    return ChevronUpIcon;\n  };\n\n  return (\n    <Cell\n      type=\"head\"\n      aria-sort={isSorted && sortOrder ? sortOrder : undefined}\n      {...rest}\n    >\n      <StylelessButton\n        onClick={onClick}\n        aria-description={t(texts.changeSort)}\n        className={cn(styles['sort-button'], focusable)}\n      >\n        {children} <Icon icon={SortIcon()} iconSize=\"component\" />\n      </StylelessButton>\n    </Cell>\n  );\n};\n\nSortCell.displayName = 'Table.SortCell';\n\nconst texts = createTexts({\n  changeSort: {\n    nb: 'Aktiver for å endre sorteringsrekkefølge',\n    no: 'Aktiver for å endre sorteringsrekkefølge',\n    nn: 'Aktiver for å endre sorteringsrekkjefølgje',\n    en: 'Activate to change sort order',\n    se: 'Aktivere rievdadit sorterenortnega',\n  },\n});\n","import styles from './Table.module.css';\nimport { type TableProps } from './Table.types';\nimport { cn } from '../../../utils';\nimport { scrollbar } from '../../helpers/styling/utilStyles.module.css';\nimport tgStyles from '../../Typography/typographyStyles.module.css';\n\nexport const Table = ({\n  size = 'medium',\n  stickyHeader,\n  withDividers,\n  withStripes = true,\n  className,\n  children,\n  ...rest\n}: TableProps) => {\n  const tgSize = () => {\n    switch (size) {\n      case 'small':\n        return 'small';\n      case 'medium':\n      case 'large':\n        return 'medium';\n    }\n  };\n  return (\n    <table\n      {...rest}\n      className={cn(\n        className,\n        styles.table,\n        styles[`table--${size}`],\n        withDividers && styles['table--with-dividers'],\n        withStripes && styles['table--with-stripes'],\n        stickyHeader && styles['table--sticky-header'],\n        scrollbar,\n        tgStyles[`body-long-${tgSize()}`],\n      )}\n    >\n      {children}\n    </table>\n  );\n};\n\nTable.displayName = 'Table';\n","import {\n  type HTMLAttributes,\n  useContext,\n  useEffect,\n  useRef,\n  useState,\n} from 'react';\n\nimport styles from './Table.module.css';\nimport { cn } from '../../../utils';\nimport { scrollbar } from '../../helpers/styling/utilStyles.module.css';\nimport { ThemeContext } from '../../ThemeProvider';\n\nexport type TableWrapperProps = HTMLAttributes<HTMLDivElement>;\n\nexport const TableWrapper = ({ className, ...rest }: TableWrapperProps) => {\n  const themeContext = useContext(ThemeContext);\n  const container = themeContext?.el;\n  const containerWidth = container ? container.clientWidth : 0;\n\n  const [overflowX, setOverflowX] = useState(false);\n  const [themeContainerWidth, setThemeContainerWidth] =\n    useState(containerWidth);\n\n  function isOverflowingX(event: HTMLDivElement): boolean {\n    return event.offsetWidth < event.scrollWidth;\n  }\n\n  const wrapperRef = useRef<HTMLDivElement>(null);\n\n  useEffect(() => {\n    if (wrapperRef?.current && isOverflowingX(wrapperRef.current)) {\n      setOverflowX(true);\n      return;\n    }\n    setOverflowX(false);\n  }, [themeContainerWidth]);\n\n  useEffect(() => {\n    function handleResize() {\n      setThemeContainerWidth(containerWidth);\n    }\n    window.addEventListener('resize', handleResize);\n    return () => window.removeEventListener('resize', handleResize);\n  });\n\n  return (\n    <div\n      ref={wrapperRef}\n      {...rest}\n      className={cn(\n        className,\n        scrollbar,\n        styles.wrapper,\n        overflowX && styles['wrapper--scrollable'],\n      )}\n    />\n  );\n};\n\nTableWrapper.displayName = 'Table.Wrapper';\n","import { Body, type TableBodyProps } from './Body';\nimport {\n  Cell,\n  type TableCellLayout,\n  type TableCellProps,\n  type TableCellType,\n} from './Cell';\nimport { Foot, type TableFootProps } from './Foot';\nimport { Head, type TableHeadProps } from './Head';\nimport { Row } from './Row';\nimport { SortCell, type SortOrder, type TableSortCellProps } from './SortCell';\nimport { Table as BaseTable } from './Table';\nimport {\n  type TableProps,\n  type TableRowProps,\n  type TableRowType,\n  type TableSize,\n} from './Table.types';\nimport { TableWrapper } from './TableWrapper';\n\ntype TableCompoundProps = typeof BaseTable & {\n  Wrapper: typeof TableWrapper;\n  Head: typeof Head;\n  Body: typeof Body;\n  Foot: typeof Foot;\n  Row: typeof Row;\n  Cell: typeof Cell;\n  SortCell: typeof SortCell;\n};\n\nconst Table = BaseTable as TableCompoundProps;\n\nTable.Wrapper = TableWrapper;\nTable.Head = Head;\nTable.Body = Body;\nTable.Cell = Cell;\nTable.SortCell = SortCell;\nTable.Row = Row;\nTable.Foot = Foot;\n\nexport { Table };\n\nexport type {\n  TableCellProps,\n  TableSize,\n  TableProps,\n  TableRowProps,\n  TableRowType,\n  TableHeadProps,\n  TableBodyProps,\n  TableFootProps,\n  TableSortCellProps,\n  SortOrder,\n  TableCellLayout,\n  TableCellType,\n};\n\nexport { TableWrapper };\nexport { Head as TableHead };\nexport { Body as TableBody };\nexport { Cell as TableCell };\nexport { SortCell as TableSortCell };\nexport { Row as TableRow };\nexport { Foot as TableFoot };\n","import { type CollapsibleTableProps } from './CollapsibleTable.types';\nimport { CollapsibleTableContext } from './Table.context';\nimport { Table } from '../normal';\n\nexport const CollapsibleTable = ({\n  isCollapsed,\n  headerValues,\n  definingColumnIndex = [0],\n  ...rest\n}: CollapsibleTableProps) => {\n  return (\n    <CollapsibleTableContext\n      value={{\n        isCollapsed,\n        headerValues,\n        definingColumnIndex,\n      }}\n    >\n      <Table {...rest} />\n    </CollapsibleTableContext>\n  );\n};\n\nCollapsibleTable.displayName = 'CollapsibleTable';\n","import { CollapsibleRow } from './CollapsibleRow';\nimport { CollapsibleTable as BaseCollapsibleTable } from './CollapsibleTable';\nimport { type CollapsibleTableProps } from './CollapsibleTable.types';\n\ntype CollapsibleTableCompoundProps = typeof BaseCollapsibleTable & {\n  Row: typeof CollapsibleRow;\n};\n\nconst CollapsibleTable = BaseCollapsibleTable as CollapsibleTableCompoundProps;\n\nCollapsibleTable.Row = CollapsibleRow;\n\nexport { CollapsibleTable, type CollapsibleTableProps };\nexport { CollapsibleRow as CollapsibleTableRow };\n","import type * as CSS from 'csstype';\nimport { type ComponentPropsWithRef, useRef } from 'react';\n\nimport { useTabsContext } from './Tabs.context';\nimport styles from './Tabs.module.css';\nimport { useSetTabWidth } from './TabWidthContext';\nimport { useCombinedRef } from '../../hooks';\nimport { cn } from '../../utils';\nimport focusStyles from '../helpers/styling/focus.module.css';\nimport { Icon } from '../Icon';\nimport { PlusIcon } from '../Icon/icons';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport type AddTabButtonProps = {\n  /** Bredden. Her er det støtte for de samme enhetene som du kan bruke i `grid-template-columns`.\n   * @default \"1fr\"\n   */\n  width?: CSS.Properties['width'];\n  index?: number;\n} & ComponentPropsWithRef<'button'>;\n\nexport const AddTabButton = ({\n  ref,\n  children,\n  index,\n  className,\n  width = '1fr',\n  ...rest\n}: AddTabButtonProps) => {\n  // Tell parent what my width should be\n  // This is used for the grid layout\n  useSetTabWidth(index!, width);\n\n  const buttonRef = useRef<HTMLButtonElement>(null);\n  const combinedRef = useCombinedRef(ref, buttonRef);\n  const { tabContentDirection, size } = useTabsContext();\n\n  return (\n    <button\n      {...rest}\n      ref={combinedRef}\n      className={cn(\n        className,\n        styles.tab,\n        styles[`tab--${tabContentDirection}`],\n        typographyStyles[`body-short-${size}`],\n        focusStyles['focusable--inset'],\n      )}\n    >\n      <Icon icon={PlusIcon} iconSize=\"inherit\" />\n      <span>{children}</span>\n    </button>\n  );\n};\n\nAddTabButton.displayName = 'AddTabButton';\n","import { type RefObject, createContext, useContext } from 'react';\n\nimport { type AddTabButtonProps } from './AddTabButton';\nimport { type TabSize } from './Tabs';\nimport { type Direction } from '../../types';\n\ninterface Tabs {\n  activeTab: number;\n  tabsId: string;\n  size: TabSize;\n  handleTabChange: (index: number) => void;\n  tabListRef: RefObject<HTMLDivElement | null> | null;\n  tabPanelsRef: RefObject<HTMLDivElement | null> | null;\n  hasTabFocus: boolean;\n  setHasTabFocus: (hasFocus: boolean) => void;\n  tabContentDirection: Direction;\n  addTabButtonProps?: Omit<AddTabButtonProps, 'index'>;\n}\n\nexport const TabsContext = createContext<Tabs>({\n  activeTab: 0,\n  tabsId: '',\n  size: 'small',\n  handleTabChange: () => null,\n  tabListRef: null,\n  tabPanelsRef: null,\n  hasTabFocus: false,\n  setHasTabFocus: () => null,\n  tabContentDirection: 'row',\n  addTabButtonProps: undefined,\n});\nexport const useTabsContext = () => useContext(TabsContext);\n",".tab-row {\n  scroll-snap-type: x mandatory;\n  border-bottom: 1px solid var(--dds-color-border-subtle);\n\n  @media (prefers-reduced-motion: no-preference) {\n    scroll-behavior: smooth;\n    transition: var(--dds-focus-transition);\n  }\n\n  &:focus-visible button {\n    outline: none;\n  }\n}\n\n.tab {\n  border: none;\n  -webkit-user-select: text;\n          user-select: text;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  border-bottom: 2px solid transparent;\n  color: var(--dds-color-text-medium);\n  background: var(--dds-color-surface-default);\n  border-top-left-radius: var(--dds-border-radius-button);\n  border-top-right-radius: var(--dds-border-radius-button);\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      box-shadow var(--dds-motion-micro-state),\n      border-bottom var(--dds-motion-micro-state),\n      color var(--dds-motion-micro-state),\n      background-color var(--dds-motion-micro-state),\n      var(--dds-focus-transition);\n  }\n\n  &:hover&:not(.tab--active) {\n    color: var(--dds-color-text-default);\n    background-color: var(--dds-color-surface-hover-default);\n  }\n}\n\n.tab--medium--row {\n  padding: var(--dds-spacing-x0-75) var(--dds-spacing-x1);\n  gap: var(--dds-spacing-md-icon-text-gap);\n}\n\n.tab--small--row {\n  padding: var(--dds-spacing-x0-5) var(--dds-spacing-x0-75);\n  gap: var(--dds-spacing-sm-icon-text-gap);\n}\n\n.tab--medium--column {\n  padding: var(--dds-spacing-x0-75) var(--dds-spacing-x1);\n  gap: var(--dds-spacing-x0-25);\n}\n\n.tab--small--column {\n  padding: var(--dds-spacing-x0-5) var(--dds-spacing-x0-75);\n}\n\n.tab--row {\n  flex-direction: row;\n}\n\n.tab--column {\n  flex-direction: column;\n}\n\n.tab--active {\n  color: var(--dds-color-text-default);\n  border-color: var(--dds-color-surface-action-selected);\n  box-shadow: inset 0px -2px 0px 0px var(--dds-color-surface-action-selected);\n  cursor: default;\n}\n","import type * as CSS from 'csstype';\nimport {\n  type Dispatch,\n  type ReactNode,\n  type SetStateAction,\n  createContext,\n  useContext,\n  useLayoutEffect,\n} from 'react';\n\ntype Width = CSS.Properties['width'];\n\ninterface TabContextState {\n  updateWidth: (index: number, width: Width) => void;\n  removeTab: (index: number) => void;\n}\n\nconst TabContext = createContext<TabContextState | null>(null);\n\ninterface TabWidthContextProviderProps {\n  children: ReactNode;\n  onChangeWidths: Dispatch<SetStateAction<Array<Width>>>;\n}\n\nexport function TabWidthContextProvider({\n  children,\n  onChangeWidths,\n}: TabWidthContextProviderProps) {\n  return (\n    <TabContext\n      value={{\n        updateWidth: (index, newWidth) => {\n          onChangeWidths(prev => {\n            const newValue = [...prev];\n            newValue[index] = newWidth;\n            return newValue;\n          });\n        },\n        removeTab: index => {\n          onChangeWidths(prev => {\n            const newValue = [...prev];\n            newValue.splice(index, 1);\n            return newValue;\n          });\n        },\n      }}\n    >\n      {children}\n    </TabContext>\n  );\n}\n\nexport function useSetTabWidth(index: number, width: Width) {\n  const context = useContext(TabContext);\n\n  useLayoutEffect(() => {\n    context?.updateWidth(index, width);\n    return () => context?.removeTab(index);\n  }, [index, width]);\n}\n","import { type HTMLAttributes, useEffect, useId, useRef, useState } from 'react';\n\nimport { type AddTabButtonProps } from './AddTabButton';\nimport { TabsContext } from './Tabs.context';\nimport {\n  type BaseComponentPropsWithChildren,\n  type Direction,\n  createSizes,\n  getBaseHTMLProps,\n} from '../../types';\nimport { Box, type ResponsiveProps } from '../layout';\n\nexport const TABS_SIZES = createSizes('small', 'medium');\nexport type TabSize = (typeof TABS_SIZES)[number];\n\nexport type TabsProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  {\n    /**Størrelse på hver `<Tab>`. */\n    size?: TabSize;\n    /** Indeksen til den aktive fanen. **OBS!** Ved å sette denne vil brukere aldri kunne endre tab uten at du også registrerer en `onChange`-lytter for å ta vare på aktiv tab utenfor komponenten. */\n    activeTab?: number;\n    /** Ekstra logikk ved endring av aktiv fane. */\n    onChange?: (index: number) => void;\n    /** Retningen ikon og tekst vises i `<Tab>`-elementer.\n     * @default \"row\"\n     */\n    tabContentDirection?: Direction;\n    /** Props for \"Legg til fane\"-knapp. Støtter native HTML attributter og `width`. */\n    addTabButtonProps?: Omit<AddTabButtonProps, 'index'>;\n  } & Pick<ResponsiveProps, 'width'>,\n  Omit<HTMLAttributes<HTMLDivElement>, 'onChange'>\n>;\n\nexport const Tabs = ({\n  id,\n  activeTab,\n  onChange,\n  tabContentDirection = 'row',\n  size = 'small',\n  addTabButtonProps,\n  width,\n  children,\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: TabsProps) => {\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-tabs`;\n\n  const [thisActiveTab, setActiveTab] = useState(activeTab ?? 0);\n  const [hasTabFocus, setHasTabFocus] = useState(false);\n  const tabListRef = useRef<HTMLDivElement>(null);\n  const tabPanelsRef = useRef<HTMLDivElement>(null);\n\n  const handleTabChange = (index: number) => {\n    setActiveTab(index);\n    onChange?.(index);\n  };\n\n  useEffect(() => {\n    if (activeTab !== undefined && activeTab !== thisActiveTab) {\n      setActiveTab(activeTab);\n    }\n  }, [activeTab, thisActiveTab]);\n\n  return (\n    <TabsContext\n      value={{\n        tabsId: uniqueId,\n        activeTab: thisActiveTab,\n        size,\n        handleTabChange,\n        tabListRef,\n        tabPanelsRef,\n        hasTabFocus,\n        setHasTabFocus,\n        tabContentDirection,\n        addTabButtonProps,\n      }}\n    >\n      <Box\n        {...getBaseHTMLProps(uniqueId, className, style, htmlProps, rest)}\n        width={width}\n      >\n        {children}\n      </Box>\n    </TabsContext>\n  );\n};\n\nTabs.displayName = 'Tabs';\n","import type * as CSS from 'csstype';\nimport {\n  type ButtonHTMLAttributes,\n  type Dispatch,\n  type KeyboardEvent,\n  type MouseEvent,\n  type SetStateAction,\n  useCallback,\n  useEffect,\n  useRef,\n} from 'react';\n\nimport { useTabsContext } from './Tabs.context';\nimport styles from './Tabs.module.css';\nimport { useSetTabWidth } from './TabWidthContext';\nimport { useCombinedRef } from '../../hooks';\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport focusStyles from '../helpers/styling/focus.module.css';\nimport { Icon } from '../Icon';\nimport { type SvgIcon } from '../Icon/utils';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\ntype PickedAttributes = Pick<\n  ButtonHTMLAttributes<HTMLButtonElement>,\n  'onClick' | 'onKeyDown'\n>;\n\nexport type TabProps = BaseComponentPropsWithChildren<\n  HTMLButtonElement,\n  {\n    /**Spesifiserer om fanen er aktiv.\n     * @default false\n     */\n    active?: boolean;\n    /** Ikon. */\n    icon?: SvgIcon;\n    /** Spesifiserer om `<Tab>` skal ha fokus. **OBS!** settes automatisk av forelder.*/\n    focus?: boolean;\n    /**  Callback som setter fokus. **OBS!** settes automatisk av forelder.*/\n    setFocus?: Dispatch<SetStateAction<number>>;\n    /** Indeksen til `<Tab>`. **OBS!** settes automatisk av forelder.*/\n    index?: number;\n    /** Bredden til `<Tab>`. Støtter samme enheter som `grid-template-columns`.\n     * @default \"1fr\"\n     */\n    width?: CSS.Properties['width'];\n  } & PickedAttributes,\n  Omit<ButtonHTMLAttributes<HTMLButtonElement>, keyof PickedAttributes>\n>;\n\nexport const Tab = ({\n  active = false,\n  icon,\n  children,\n  focus,\n  setFocus,\n  index,\n  onClick,\n  onKeyDown,\n  id,\n  className,\n  htmlProps = {},\n  style,\n  width = '1fr',\n  ref,\n  ...rest\n}: TabProps) => {\n  // Tell parent what my width should be\n  // This is used for the grid layout\n  useSetTabWidth(index!, width);\n\n  const itemRef = useRef<HTMLAnchorElement | HTMLButtonElement>(null);\n  const combinedRef = useCombinedRef(ref, itemRef);\n  const { tabContentDirection, size } = useTabsContext();\n\n  const { type = 'button', ...restHtmlProps } = htmlProps;\n  const fixedHtmlProps = { type, ...restHtmlProps };\n\n  useEffect(() => {\n    if (focus) {\n      itemRef.current?.focus();\n    }\n  }, [focus]);\n\n  const handleSelect = useCallback(() => {\n    if (setFocus && index) {\n      setFocus(index);\n    }\n  }, [index, setFocus]);\n\n  const handleOnClick = (e: MouseEvent<HTMLButtonElement>) => {\n    handleSelect();\n    onClick?.(e);\n  };\n\n  const handleOnKeyDown = (\n    e: KeyboardEvent<HTMLAnchorElement> & KeyboardEvent<HTMLButtonElement>,\n  ) => {\n    handleSelect();\n    onKeyDown?.(e);\n  };\n\n  return (\n    <button\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          styles.tab,\n          styles[`tab--${size}--${tabContentDirection}`],\n          active && styles['tab--active'],\n          styles[`tab--${tabContentDirection}`],\n          typographyStyles[`body-short-${size}`],\n          focusStyles['focusable--inset'],\n        ),\n        style,\n        fixedHtmlProps,\n        rest,\n      )}\n      ref={combinedRef}\n      aria-selected={active}\n      role=\"tab\"\n      onClick={handleOnClick}\n      onKeyDown={handleOnKeyDown}\n      tabIndex={focus ? 0 : -1}\n    >\n      {icon && <Icon icon={icon} iconSize=\"component\" />}\n      <span>{children}</span>\n    </button>\n  );\n};\n\nTab.displayName = 'Tab';\n","import type * as CSS from 'csstype';\nimport {\n  Children,\n  type ComponentPropsWithRef,\n  type FocusEvent,\n  cloneElement,\n  isValidElement,\n  useState,\n} from 'react';\n\nimport { AddTabButton } from './AddTabButton';\nimport { type TabProps } from './Tab';\nimport { useTabsContext } from './Tabs.context';\nimport styles from './Tabs.module.css';\nimport { TabWidthContextProvider } from './TabWidthContext';\nimport { useCombinedRef, useRoveFocus } from '../../hooks';\nimport { cn, combineHandlers } from '../../utils';\nimport { focusable } from '../helpers/styling/focus.module.css';\nimport { scrollbar } from '../helpers/styling/utilStyles.module.css';\nimport { Grid } from '../layout';\n\nexport type TabListProps = ComponentPropsWithRef<'div'>;\n\nexport const TabList = ({\n  children,\n  id,\n  style,\n  onFocus,\n  ref,\n  ...rest\n}: TabListProps) => {\n  const {\n    activeTab,\n    tabsId,\n    handleTabChange,\n    tabListRef,\n    hasTabFocus,\n    setHasTabFocus,\n    addTabButtonProps,\n  } = useTabsContext();\n\n  const uniqueId = id ?? `${tabsId}-tablist`;\n  const childrenArray = Children.toArray(children).length;\n  const [focus, setFocus] = useRoveFocus(childrenArray, hasTabFocus, 'row');\n  const combinedRef = useCombinedRef(ref, tabListRef);\n\n  const hasButton = addTabButtonProps ? true : false;\n\n  const tabListChildren = Children\n    ? Children.map(children, (child, index) => {\n        const handleThisTabChange = () => {\n          handleTabChange(index);\n        };\n        return (\n          isValidElement<TabProps>(child) &&\n          cloneElement(child, {\n            id: `${tabsId}-tab-${index}`,\n            htmlProps: {\n              ...child.props.htmlProps,\n              'aria-controls': `${tabsId}-panel-${index}`,\n            },\n            active: activeTab === index,\n            index,\n            focus: focus === index && hasTabFocus,\n            setFocus,\n            onClick: combineHandlers(handleThisTabChange, child.props.onClick),\n          })\n        );\n      })\n    : [];\n\n  const [widths, setWidths] = useState<Array<CSS.Properties['width']>>([]);\n\n  const handleOnFocus = (event: FocusEvent<HTMLDivElement, Element>) => {\n    setHasTabFocus(true);\n    onFocus?.(event);\n  };\n\n  const handleOnBlur = (event: FocusEvent<HTMLDivElement, Element>) => {\n    // Fjern tabIndex fra forrige tab med focus når focus flytter seg til `<TabList>`\n    if (tabListRef?.current === event.relatedTarget) {\n      setFocus(-1);\n    }\n\n    if (!tabListRef?.current?.contains(event.relatedTarget)) {\n      setHasTabFocus(false);\n    }\n  };\n\n  const customWidths: CSS.Properties = {\n    // eslint-disable-next-line @typescript-eslint/no-explicit-any\n    ['--dds-tab-widths' as any]: widths.join(' '),\n  };\n\n  const gridLayout = widths\n    ? {\n        gridTemplateColumns: 'var(--dds-tab-widths)',\n      }\n    : {\n        gridAutoColumns: '1fr',\n        gridAutoFlow: 'column',\n      };\n\n  return (\n    <TabWidthContextProvider onChangeWidths={setWidths}>\n      <Grid\n        defaultPageLayout={false}\n        {...rest}\n        ref={combinedRef}\n        role=\"tablist\"\n        id={uniqueId}\n        tabIndex={0}\n        onFocus={handleOnFocus}\n        onBlur={handleOnBlur}\n        overflowX=\"auto\"\n        {...gridLayout}\n        className={cn(styles['tab-row'], focusable, scrollbar)}\n        style={{ ...style, ...customWidths }}\n      >\n        {tabListChildren}\n        {hasButton && (\n          <AddTabButton\n            index={tabListChildren ? tabListChildren.length : 0}\n            {...addTabButtonProps}\n          />\n        )}\n      </Grid>\n    </TabWidthContextProvider>\n  );\n};\n\nTabList.displayName = 'TabList';\n","import {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { focusable } from '../helpers/styling/focus.module.css';\nimport { Box, type ResponsiveProps } from '../layout';\n\nexport type TabPanelProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  {\n    /** Spesifiserer om panelet skal vises basert på aktiv fane. */\n    active?: boolean;\n    /** CSS `padding`. Støtter standardverdier og dds spacing tokens skala, per brekkpunkt eller samme for alle skjermstørrelser.\n     * @default 'x0.25'\n     */\n    padding?: ResponsiveProps['padding'];\n  }\n>;\n\nexport const TabPanel = ({\n  active = false,\n  children,\n  id,\n  className,\n  style,\n  htmlProps,\n  padding = 'x0.25',\n  ...rest\n}: TabPanelProps) => (\n  <Box\n    padding={padding}\n    {...getBaseHTMLProps(id, cn(className, focusable), style, htmlProps, rest)}\n    tabIndex={0}\n    role=\"tabpanel\"\n    hidden={!active}\n  >\n    {children}\n  </Box>\n);\n\nTabPanel.displayName = 'TabPanel';\n","import {\n  Children,\n  type ComponentPropsWithRef,\n  cloneElement,\n  isValidElement,\n} from 'react';\n\nimport { type TabPanelProps } from './TabPanel';\nimport { useTabsContext } from './Tabs.context';\nimport { useCombinedRef } from '../../hooks';\nimport { Box, type ResponsiveProps } from '../layout';\n\nexport type TabPanelsProps = Pick<\n  ResponsiveProps,\n  'padding' | 'paddingBlock' | 'paddingInline'\n> &\n  ComponentPropsWithRef<'div'>;\n\nexport const TabPanels = ({ children, ref, ...rest }: TabPanelsProps) => {\n  const { activeTab, tabsId, tabPanelsRef } = useTabsContext();\n  const combinedRef = useCombinedRef(ref, tabPanelsRef);\n\n  const panelChildren = Children.map(children, (child, index) => {\n    const active = index === activeTab;\n    return (\n      isValidElement<TabPanelProps>(child) &&\n      cloneElement(child, {\n        id: `${tabsId}-panel-${index}`,\n        active,\n        htmlProps: {\n          'aria-labelledby': `${tabsId}-tab-${index}`,\n          'aria-expanded': active,\n        },\n      })\n    );\n  });\n\n  return (\n    <Box ref={combinedRef} {...rest}>\n      {panelChildren}\n    </Box>\n  );\n};\n\nTabPanels.displayName = 'TabPanels';\n",".container {\n  border: 1px solid;\n  display: inline-flex;\n  align-items: center;\n  border-radius: var(--dds-border-radius-chip);\n  padding: var(--dds-spacing-x0-125) var(--dds-spacing-x0-5);\n}\n\n.container--with-icon {\n  padding: var(--dds-spacing-x0-125) var(--dds-spacing-x0-5)\n    var(--dds-spacing-x0-125) var(--dds-spacing-x0-25);\n  gap: var(--dds-spacing-x0-25);\n}\n\n.container--default--default {\n  background-color: var(--dds-color-surface-subtle);\n  border-color: var(--dds-color-border-subtle);\n}\n\n.container--default--strong {\n  background-color: var(--dds-color-surface-inverse-default);\n  border-color: var(--dds-color-surface-inverse-default);\n  color: var(--dds-color-text-on-inverse);\n}\n\n.container--success--default {\n  background-color: var(--dds-color-surface-success-default);\n  border-color: var(--dds-color-border-success);\n  color: var(--dds-color-text-on-status-default);\n\n  svg {\n    color: var(--dds-color-icon-on-success-default);\n  }\n}\n\n.container--success--strong {\n  background-color: var(--dds-color-surface-success-strong);\n  border-color: var(--dds-color-surface-success-strong);\n  color: var(--dds-color-text-on-status-strong);\n\n  svg {\n    color: var(--dds-color-icon-on-success-strong);\n  }\n}\n\n.container--danger--default {\n  background-color: var(--dds-color-surface-danger-default);\n  border-color: var(--dds-color-border-danger);\n  color: var(--dds-color-text-on-status-default);\n\n  svg {\n    color: var(--dds-color-icon-on-danger-default);\n  }\n}\n\n.container--danger--strong {\n  background-color: var(--dds-color-surface-danger-strong);\n  border-color: var(--dds-color-surface-danger-strong);\n  color: var(--dds-color-text-on-status-strong);\n\n  svg {\n    color: var(--dds-color-icon-on-danger-strong);\n  }\n}\n\n.container--warning--default {\n  background-color: var(--dds-color-surface-warning-default);\n  border-color: var(--dds-color-border-warning);\n  color: var(--dds-color-text-on-status-default);\n\n  svg {\n    color: var(--dds-color-icon-on-warning-default);\n  }\n}\n\n.container--warning--strong {\n  background-color: var(--dds-color-surface-warning-strong);\n  border-color: var(--dds-color-surface-warning-strong);\n  color: var(--dds-color-text-on-status-strong);\n\n  svg {\n    color: var(--dds-color-icon-on-warning-strong);\n  }\n}\n\n.container--info--default {\n  background-color: var(--dds-color-surface-info-default);\n  border-color: var(--dds-color-border-info);\n  color: var(--dds-color-text-on-status-default);\n\n  svg {\n    color: var(--dds-color-icon-on-info-default);\n  }\n}\n\n.container--info--strong {\n  background-color: var(--dds-color-surface-info-strong);\n  border-color: var(--dds-color-surface-info-strong);\n  color: var(--dds-color-text-on-status-strong);\n\n  svg {\n    color: var(--dds-color-icon-on-info-strong);\n  }\n}\n","import styles from './Tag.module.css';\nimport {\n  type BaseComponentProps,\n  createPurposes,\n  getBaseHTMLProps,\n} from '../../types';\nimport { cn } from '../../utils';\nimport { Icon, type SvgIcon } from '../Icon';\nimport {\n  CheckCircledIcon,\n  ErrorIcon,\n  InfoIcon,\n  WarningIcon,\n} from '../Icon/icons';\nimport {\n  TextOverflowEllipsisInner,\n  TextOverflowEllipsisWrapper,\n} from '../Typography';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport const icons: Record<TagPurpose, SvgIcon | undefined> = {\n  info: InfoIcon,\n  danger: ErrorIcon,\n  warning: WarningIcon,\n  success: CheckCircledIcon,\n  default: undefined,\n};\n\nexport const TAG_PURPOSES = createPurposes(\n  'success',\n  'info',\n  'danger',\n  'warning',\n  'default',\n);\n\nexport type TagPurpose = (typeof TAG_PURPOSES)[number];\nexport type TagAppearance = 'default' | 'strong';\n\nexport type TagProps = BaseComponentProps<\n  HTMLSpanElement,\n  {\n    /**\n     * Innholdet til `<Tag>.`\n     */\n    children?: string;\n    /**\n     * Formål med status eller kategorisering. Påvirker styling.\n     * @default \"default\"\n     */\n    purpose?: TagPurpose;\n    /**\n     * Det visuelle uttrykket til komponenten.\n     * @default \"default\"\n     */\n    appearance?: TagAppearance;\n    /**\n     * Om `<Tag>` skal ha et ikon til venstre for teksten. Tags med `purpose=\"default\"` har aldri ikon.\n     * @default false\n     */\n    withIcon?: boolean;\n  }\n>;\n\nexport const Tag = ({\n  purpose = 'default',\n  appearance = 'default',\n  id,\n  className,\n  style,\n  children,\n  htmlProps,\n  withIcon,\n  ...rest\n}: TagProps) => {\n  const icon = icons[purpose];\n\n  return (\n    <TextOverflowEllipsisWrapper\n      {...getBaseHTMLProps(\n        id,\n        cn(\n          className,\n          typographyStyles['body-short-medium'],\n          styles.container,\n          withIcon && icon && styles['container--with-icon'],\n          styles[`container--${purpose}--${appearance}`],\n        ),\n        style,\n        htmlProps,\n        rest,\n      )}\n    >\n      {withIcon && icon && <Icon icon={icon} iconSize=\"component\" />}\n      <TextOverflowEllipsisInner>{children}</TextOverflowEllipsisInner>\n    </TextOverflowEllipsisWrapper>\n  );\n};\n\nTag.displayName = 'Tag';\n","import { type Property } from 'csstype';\nimport React, { useId, useLayoutEffect, useRef, useState } from 'react';\n\nimport styles from './TextInput.module.css';\nimport { type TextInputProps } from './TextInput.types';\nimport {\n  cn,\n  derivativeIdGenerator,\n  spaceSeparatedIdListGenerator,\n} from '../../utils';\nimport { renderCharCounter } from '../helpers/CharCounter';\nimport { StatefulInput, getDefaultText, getInputWidth } from '../helpers/Input';\nimport inputStyles from '../helpers/Input/Input.module.css';\nimport { Icon } from '../Icon';\nimport { renderInputMessage } from '../InputMessage';\nimport { Box } from '../layout';\nimport { renderLabel } from '../Typography/Label/Label.utils';\nimport tgStyles from '../Typography/typographyStyles.module.css';\n\nexport const TextInput = ({\n  label,\n  afterLabelContent,\n  disabled,\n  readOnly,\n  errorMessage,\n  tip,\n  required,\n  maxLength,\n  onChange,\n  id,\n  width,\n  componentSize = 'medium',\n  type = 'text',\n  withCharacterCounter = true,\n  className,\n  style,\n  value,\n  defaultValue,\n  'aria-required': ariaRequired,\n  'aria-describedby': ariaDescribedby,\n  icon,\n  prefix,\n  suffix,\n  ref,\n  ...rest\n}: TextInputProps) => {\n  const [text, setText] = useState<string>(getDefaultText(value, defaultValue));\n  const prefixRef = useRef<HTMLSpanElement>(null);\n  const suffixRef = useRef<HTMLSpanElement>(null);\n  const [prefixLength, setPrefixLength] = useState(0);\n  const [suffixLength, setSuffixLength] = useState(0);\n\n  useLayoutEffect(() => {\n    requestAnimationFrame(() => {\n      if (prefixRef.current) {\n        setPrefixLength(prefixRef.current.offsetWidth);\n      }\n      if (suffixRef.current) {\n        setSuffixLength(suffixRef.current.offsetWidth);\n      }\n    });\n  }, [prefix, suffix]);\n\n  const onChangeHandler: React.ChangeEventHandler<HTMLInputElement> = (\n    event: React.ChangeEvent<HTMLInputElement>,\n  ) => {\n    setText(event.target.value);\n\n    if (onChange) {\n      onChange(event);\n    }\n  };\n\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-textInput`;\n\n  const hasErrorMessage = !!errorMessage;\n  const hasTip = !!tip;\n  const hasMessage = hasErrorMessage || hasTip;\n  const hasBottomContainer = hasErrorMessage || hasTip || !!maxLength;\n  const hasIcon = !!icon;\n  const hasAffix = !!(prefix ?? suffix);\n\n  const characterCounterId = derivativeIdGenerator(\n    uniqueId,\n    'characterCounter',\n  );\n  const tipId = derivativeIdGenerator(uniqueId, 'tip');\n  const errorMessageId = derivativeIdGenerator(uniqueId, 'errorMessage');\n\n  const inputWidth = getInputWidth(\n    width,\n    componentSize === 'xsmall' && 'var(--dds-input-default-width-xsmall)',\n  );\n\n  const generalInputProps = {\n    ref,\n    type,\n    onChange: onChangeHandler,\n    componentSize,\n    id: uniqueId,\n    hasErrorMessage,\n    required,\n    disabled,\n    readOnly,\n    maxLength,\n    value,\n    defaultValue,\n    'aria-required': ariaRequired,\n    'aria-describedby': spaceSeparatedIdListGenerator([\n      hasTip ? tipId : undefined,\n      hasErrorMessage ? errorMessageId : undefined,\n      maxLength && withCharacterCounter ? characterCounterId : undefined,\n      ariaDescribedby,\n    ]),\n    'aria-invalid': hasErrorMessage ? true : undefined,\n    ...rest,\n  };\n\n  const showRequiredStyling = !!(required || ariaRequired);\n\n  const prefixPaddingInlineStart: Property.PaddingInlineStart | undefined =\n    prefixLength\n      ? `calc(var(--dds-spacing-x1) + ${prefixLength}px)`\n      : undefined;\n\n  const suffixPaddingInlineEnd: Property.PaddingInlineEnd | undefined =\n    suffixLength\n      ? `calc(var(--dds-spacing-x1) + ${suffixLength}px)`\n      : undefined;\n\n  let extendedInput = null;\n\n  const affixCns = [\n    inputStyles['input-group__absolute-el'],\n    styles.affix,\n    disabled && styles['affix--disabled'],\n  ];\n\n  if (hasIcon) {\n    extendedInput = (\n      <Box\n        className={cn(\n          inputStyles['input-group'],\n          tgStyles[`body-short-${componentSize}`],\n        )}\n        width={inputWidth}\n      >\n        <Icon\n          icon={icon}\n          iconSize=\"component\"\n          className={cn(\n            inputStyles['input-group__absolute-el'],\n            inputStyles[`input-group__absolute-el--${componentSize}`],\n          )}\n        />\n        <StatefulInput\n          className={cn(\n            inputStyles[`input-with-icon--${componentSize}`],\n            styles['input--extended'],\n          )}\n          {...generalInputProps}\n        />\n      </Box>\n    );\n  } else if (hasAffix) {\n    extendedInput = (\n      <Box\n        position=\"relative\"\n        display=\"flex\"\n        alignItems=\"center\"\n        width={inputWidth}\n      >\n        {prefix && (\n          <span\n            ref={prefixRef}\n            aria-hidden\n            className={cn(\n              ...affixCns,\n              styles.prefix,\n              disabled && styles['affix--disabled'],\n            )}\n          >\n            {prefix}\n          </span>\n        )}\n        <StatefulInput\n          style={{\n            paddingInlineStart: prefixPaddingInlineStart,\n            paddingInlineEnd: suffixPaddingInlineEnd,\n          }}\n          className={styles['input--extended']}\n          {...generalInputProps}\n        />\n        {suffix && (\n          <span\n            ref={suffixRef}\n            aria-hidden\n            className={cn(\n              ...affixCns,\n              styles.affix,\n              styles.suffix,\n              disabled && styles['affix--disabled'],\n            )}\n          >\n            {suffix}\n          </span>\n        )}\n      </Box>\n    );\n  }\n\n  return (\n    <div\n      className={cn(\n        className,\n        inputStyles.container,\n        styles.container,\n        readOnly && styles['container--readonly'],\n        disabled && styles['container--disabled'],\n      )}\n      style={style}\n    >\n      {renderLabel({\n        label,\n        htmlFor: uniqueId,\n        showRequiredStyling,\n        readOnly,\n        afterLabelContent,\n      })}\n      {extendedInput ? (\n        extendedInput\n      ) : (\n        <Box as={StatefulInput} width={inputWidth} {...generalInputProps} />\n      )}\n      {hasBottomContainer && (\n        <Box\n          display=\"flex\"\n          justifyContent={\n            withCharacterCounter\n              ? hasMessage\n                ? 'space-between'\n                : 'flex-end'\n              : undefined\n          }\n          gap=\"x0.5\"\n          width={withCharacterCounter ? inputWidth : undefined}\n        >\n          {renderInputMessage({ tip, tipId, errorMessage, errorMessageId })}\n          {renderCharCounter(\n            characterCounterId,\n            withCharacterCounter,\n            text.length,\n            maxLength,\n          )}\n        </Box>\n      )}\n    </div>\n  );\n};\n\nTextInput.displayName = 'TextInput';\n",".container {\n  color: var(--dds-color-text-default);\n}\n\n.container--readonly {\n  color: var(--dds-color-text-medium);\n}\n\n.container--disabled {\n  color: var(--dds-color-text-subtle);\n}\n\n.input--extended {\n  width: 100%;\n}\n\n.affix {\n  height: 100%;\n  display: flex;\n  align-items: center;\n  pointer-events: none;\n}\n\n.prefix {\n  left: 0;\n  margin-left: var(--dds-spacing-x0-5);\n  padding-right: var(--dds-spacing-x0-5);\n  border-right: 1px solid var(--dds-color-border-default);\n}\n\n.suffix {\n  right: 0;\n  margin-right: var(--dds-spacing-x0-5);\n  padding-left: var(--dds-spacing-x0-5);\n  border-left: 1px solid var(--dds-color-border-default);\n}\n\n.affix--disabled {\n  border-color: var(--dds-color-border-subtle);\n}\n","import { type ChangeEvent, useId, useState } from 'react';\n\nimport { ToggleBarContext } from './ToggleBar.context';\nimport { type ToggleBarProps, type ToggleBarValue } from './ToggleBar.types';\nimport { getBaseHTMLProps } from '../../types';\nimport { combineHandlers } from '../../utils';\nimport { Grid, VStack } from '../layout';\nimport { Typography } from '../Typography';\n\nexport const ToggleBar = <T extends string | number = string>(\n  props: ToggleBarProps<T>,\n) => {\n  const {\n    children,\n    size = 'medium',\n    purpose = 'primary',\n    label,\n    onChange,\n    value,\n    name,\n    width,\n    htmlProps,\n    className,\n    style,\n    id,\n    ...rest\n  } = props;\n\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-ToggleBar`;\n\n  const [groupValue, setGroupValue] = useState<ToggleBarValue>(value);\n\n  const handleChange = combineHandlers(\n    (e: ChangeEvent<HTMLInputElement>) => setGroupValue(e.target.value),\n    e => onChange && onChange(e, e.target.value as T),\n  );\n\n  const labelId = label && `${uniqueId}-label`;\n\n  return (\n    <ToggleBarContext\n      value={{\n        purpose,\n        size,\n        onChange: handleChange,\n        name,\n        value: groupValue,\n      }}\n    >\n      <VStack\n        {...getBaseHTMLProps(id, className, style, htmlProps, rest)}\n        width={width}\n        gap=\"x0.125\"\n        role=\"radiogroup\"\n        aria-labelledby={labelId ?? htmlProps?.['aria-labelledby']}\n      >\n        {label && (\n          <Typography id={labelId} as=\"span\" typographyType=\"labelMedium\">\n            {label}\n          </Typography>\n        )}\n        <Grid\n          defaultPageLayout={false}\n          gridAutoFlow=\"column\"\n          gridAutoColumns=\"1fr\"\n        >\n          {children}\n        </Grid>\n      </VStack>\n    </ToggleBarContext>\n  );\n};\n\nToggleBar.displayName = 'ToggleBar';\n","import { type ChangeEvent, createContext, useContext } from 'react';\n\nimport {\n  type ToggleBarPurpose,\n  type ToggleBarSize,\n  type ToggleBarValue,\n} from './ToggleBar.types';\n\nexport interface ToggleBarContextType {\n  size: ToggleBarSize;\n  purpose: ToggleBarPurpose;\n  name?: string;\n  value?: ToggleBarValue;\n  onChange?: (event: ChangeEvent<HTMLInputElement>) => void;\n}\n\nexport const ToggleBarContext = createContext<ToggleBarContextType>({\n  size: 'medium',\n  purpose: 'primary',\n});\n\nexport const useToggleBarContext = () => useContext(ToggleBarContext);\n","import { type ChangeEvent, type InputHTMLAttributes, useId } from 'react';\n\nimport {\n  type ToggleBarContextType,\n  useToggleBarContext,\n} from './ToggleBar.context';\nimport styles from './ToggleBar.module.css';\nimport { type BaseComponentProps, getBaseHTMLProps } from '../../types';\nimport { cn } from '../../utils';\nimport buttonStyles from '../Button/Button.module.css';\nimport { HiddenInput } from '../helpers';\nimport focusStyles from '../helpers/styling/focus.module.css';\nimport { Icon } from '../Icon';\nimport { type SvgIcon } from '../Icon/utils';\nimport { HStack } from '../layout';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport type ToggleRadioProps = BaseComponentProps<\n  HTMLInputElement,\n  {\n    /**Ledetekst som vises i komponenten. */\n    label?: string;\n    /**Ikonet som vises i komponenten. */\n    icon?: SvgIcon;\n  } & Pick<\n    InputHTMLAttributes<HTMLInputElement>,\n    'name' | 'checked' | 'value' | 'onChange' | 'aria-label' | 'aria-labelledby'\n  >\n>;\n\n/**Beregner om en ToggleRadio skal være checked eller ikke.\n *\n * Returnerer checked hvis den er definert.\n *\n * Returnerer true hvis både verdien fra context og verdien i ToggleRadio er truthy og like.\n * Returnerer true hvis verdien i ToggleRadio er truthy, men context ikke finnes.\n *\n * Returnerer false hvis verdiene er ulike eller hvis verdien i ToggleRadio er falsy.\n */\nconst calculateChecked = (\n  value: unknown,\n  group: ToggleBarContextType,\n  checked?: boolean,\n): boolean => {\n  if (typeof checked !== 'undefined') return checked;\n\n  if (typeof value !== 'undefined' && value !== null && group) {\n    if (typeof value === 'number') {\n      return value === Number(group?.value);\n    }\n    return value === group?.value;\n  }\n\n  return !!value;\n};\n\nexport const ToggleRadio = ({\n  value,\n  name,\n  onChange,\n  checked,\n  'aria-label': ariaLabel,\n  'aria-labelledby': ariaLabelledBy,\n  icon,\n  label,\n  htmlProps,\n  className,\n  style,\n  id,\n  ...rest\n}: ToggleRadioProps) => {\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-ToggleRadio`;\n  const group = useToggleBarContext();\n\n  const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n    onChange?.(event);\n    group?.onChange?.(event);\n  };\n  const hasLabel = !!label;\n  const hasIcon = !!icon;\n\n  const contentTypeCn = !hasLabel\n    ? 'just-icon'\n    : !hasIcon\n      ? 'just-text'\n      : 'with-text-and-icon';\n\n  return (\n    <label\n      htmlFor={uniqueId}\n      className={cn(styles.label, styles[`label--${group.purpose}`])}\n    >\n      <HiddenInput\n        {...getBaseHTMLProps(\n          uniqueId,\n          cn(className, focusStyles['focusable-sibling']),\n          style,\n          htmlProps,\n          rest,\n        )}\n        type=\"radio\"\n        name={name ?? group.name}\n        onChange={handleChange}\n        value={value}\n        checked={calculateChecked(value, group, checked)}\n        aria-label={ariaLabel}\n        aria-labelledby={ariaLabelledBy}\n      />\n      <HStack\n        as=\"span\"\n        justifyContent=\"center\"\n        alignItems=\"center\"\n        className={cn(\n          typographyStyles[`body-short-${group.size}`],\n          styles.content,\n          buttonStyles[contentTypeCn],\n          hasLabel && hasIcon && buttonStyles['with-icon-left'],\n          buttonStyles[`button--${group.size}`],\n          focusStyles['focus-styled-sibling'],\n        )}\n      >\n        {icon && <Icon icon={icon} iconSize=\"component\" />}\n        {label && <span>{label}</span>}\n      </HStack>\n    </label>\n  );\n};\n\nToggleRadio.displayName = 'ToggleRadio';\n",".content {\n  word-break: break-word;\n  box-sizing: border-box;\n  cursor: pointer;\n  background-color: var(--dds-color-surface-default);\n  border: 1px solid;\n  height: 100%;\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      border-color var(--dds-motion-micro-state),\n      background-color var(--dds-motion-micro-state),\n      box-shadow var(--dds-motion-micro-state),\n      color var(--dds-motion-micro-state),\n      var(--dds-focus-transition);\n  }\n}\n\n.label {\n  &:first-child .content {\n    margin-inline-end: -1px;\n    border-top-left-radius: var(--dds-border-radius-button);\n    border-bottom-left-radius: var(--dds-border-radius-button);\n  }\n  &:last-child .content {\n    border-top-right-radius: var(--dds-border-radius-button);\n    border-bottom-right-radius: var(--dds-border-radius-button);\n  }\n\n  &:not(:first-child):not(:last-child) .content {\n    margin-inline-end: -1px;\n  }\n\n  input:focus-visible + .content,\n  input:checked + .content {\n    position: relative;\n    z-index: 0;\n    border-radius: var(--dds-border-radius-button);\n  }\n}\n\n.label--primary {\n  .content {\n    border-color: var(--dds-color-border-default);\n  }\n  &:hover .content {\n    background-color: var(--dds-color-surface-hover-default);\n  }\n\n  input:checked + .content {\n    color: var(--dds-color-text-on-action);\n    border-color: var(--dds-color-surface-action-selected);\n    background-color: var(--dds-color-surface-action-selected);\n  }\n}\n\n.label--secondary {\n  .content {\n    border-color: var(--dds-color-border-subtle);\n  }\n  &:hover .content {\n    background-color: var(--dds-color-surface-hover-subtle);\n  }\n\n  input:checked + .content {\n    color: var(--dds-color-text-default);\n    border-color: var(--dds-color-border-default);\n    background-color: var(--dds-color-surface-selected-default);\n  }\n}\n","import { useId } from 'react';\n\nimport styles from './ToggleButton.module.css';\nimport { type ToggleButtonProps } from './ToggleButton.types';\nimport { getBaseHTMLProps } from '../../types';\nimport { cn } from '../../utils';\nimport buttonStyles from '../Button/Button.module.css';\nimport { HiddenInput } from '../helpers';\nimport focusStyles from '../helpers/styling/focus.module.css';\nimport { Icon } from '../Icon';\nimport { Box, Paper } from '../layout';\nimport typographyStyles from '../Typography/typographyStyles.module.css';\n\nexport const ToggleButton = ({\n  id,\n  label,\n  icon,\n  size = 'small',\n  className,\n  style,\n  htmlProps,\n  ...rest\n}: ToggleButtonProps) => {\n  const generatedId = useId();\n  const uniqueId = id ?? `${generatedId}-toggleButton`;\n  const hasIcon = !!icon;\n\n  return (\n    <Box as=\"label\" htmlFor={uniqueId} width=\"fit-content\">\n      <HiddenInput\n        {...getBaseHTMLProps(\n          uniqueId,\n          cn(className, focusStyles['focusable-sibling']),\n          style,\n          htmlProps,\n          rest,\n        )}\n        type=\"checkbox\"\n      />\n      <Paper\n        as=\"span\"\n        border=\"border-default\"\n        background=\"surface-default\"\n        borderRadius=\"rounded\"\n        width=\"fit-content\"\n        display=\"inline-flex\"\n        alignItems=\"center\"\n        className={cn(\n          styles.content,\n          typographyStyles[`body-short-${size}`],\n          focusStyles['focus-styled-sibling'],\n          buttonStyles[`button--${size}`],\n          buttonStyles['just-text'],\n          ...(hasIcon\n            ? [\n                buttonStyles['with-text-and-icon'],\n                buttonStyles['with-icon-left'],\n              ]\n            : []),\n        )}\n      >\n        {hasIcon && <Icon icon={icon} iconSize=\"component\" />}\n        <span>{label}</span>\n      </Paper>\n    </Box>\n  );\n};\n\nToggleButton.displayName = 'ToggleButton';\n",".content {\n  box-sizing: border-box;\n  cursor: pointer;\n\n  @media (prefers-reduced-motion: no-preference) {\n    transition:\n      border-color var(--dds-motion-micro-state),\n      background-color var(--dds-motion-micro-state),\n      var(--dds-focus-transition);\n  }\n\n  &:hover {\n    border-color: var(--dds-color-border-action-hover);\n    background-color: var(--dds-color-surface-hover-default);\n  }\n}\n\ninput:checked + .content {\n  color: var(--dds-color-text-on-action);\n  background-color: var(--dds-color-surface-action-resting);\n  border-color: var(--dds-color-surface-action-resting);\n}\n\ninput:checked + .content:hover {\n  background-color: var(--dds-color-surface-action-hover);\n  border-color: var(--dds-color-surface-action-hover);\n}\n","import { useId } from 'react';\n\nimport {\n  type BaseComponentPropsWithChildren,\n  getBaseHTMLProps,\n} from '../../types';\nimport { Box } from '../layout';\nimport { renderGroupLabel } from '../SelectionControl/SelectionControl.styles';\n\ntype Direction = 'row' | 'column';\n\nexport type ToggleButtonGroupProps = BaseComponentPropsWithChildren<\n  HTMLDivElement,\n  {\n    /** Ledetekst for gruppen. */\n    label?: string;\n    /**Retningen barna legger seg i.\n     * @default \"row\"\n     */\n    direction?: Direction;\n    /** Custom `id` for ledetekst. Blir generert som default for å knytte ledetekst til gruppen.  */\n    labelId?: string;\n  }\n>;\n\nexport const ToggleButtonGroup = (props: ToggleButtonGroupProps) => {\n  const {\n    children,\n    direction = 'row',\n    label,\n    labelId,\n    id,\n    className,\n    style,\n    htmlProps,\n    ...rest\n  } = props;\n\n  const generatedId = useId();\n  const uniqueLabelId = labelId ?? `${generatedId}-ToggleButtonGroupLabel`;\n\n  return (\n    <div\n      {...getBaseHTMLProps(id, className, style, htmlProps, rest)}\n      role=\"group\"\n      aria-labelledby={label ? uniqueLabelId : undefined}\n    >\n      {renderGroupLabel({ label, id: uniqueLabelId })}\n      <Box display=\"flex\" flexWrap=\"wrap\" gap=\"x0.75\" flexDirection={direction}>\n        {children}\n      </Box>\n    </div>\n  );\n};\n\nToggleButtonGroup.displayName = 'ToggleButtonGroup';\n"],"mappings":"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","names":["contrast","tertiary-medium","a","a--nested__parent","a--nested__child","a--margins","a--with-icon","a--visited","body-short-xsmall","body-short-xsmall--margins","body-short-small","body-short-small--margins","body-short-medium","body-short-medium--margins","body-short-large","body-short-large--margins","body-long-xsmall","body-long-xsmall--margins","body-long-small","body-long-small--margins","body-long-medium","body-long-medium--margins","body-long-large","body-long-large--margins","lead-medium","lead-medium--margins","heading-xxsmall","heading-xxsmall--margins","heading-xsmall","heading-xsmall--margins","heading-small","heading-small--margins","heading-medium","heading-medium--margins","heading-large","heading-large--margins","heading-xlarge","heading-xlarge--margins","heading-xxlarge","heading-xxlarge--margins","heading--margins-over-input","label-medium","label-medium--margins","legend","legend--margins-over-input","caption","caption--withMargins","bold","italic","underline","text-color--inherit","text-color--default","text-color--medium","text-color--subtle","text-color--requiredfield","text-color--action-resting","text-color--action-hover","text-color--action-visited","text-color--on-action","text-color--on-status-default","text-color--on-status-strong","text-color--on-notification","text-color--on-primary-default","text-color--on-primary-medium","text-color--on-primary-subtle","text-color--on-primary-strong","text-color--on-secondary-default","text-color--on-secondary-medium","text-color--on-secondary-subtle","text-color--on-secondary-strong","text-color--on-tertiary-default","text-color--on-tertiary-medium","text-color--on-tertiary-subtle","text-color--on-tertiary-strong","text-color--on-data-default","text-color--on-data-subtle","text-color--on-inverse","icon-color--default","icon-color--medium","icon-color--subtle","icon-color--on-action","icon-color--action-resting","icon-color--action-hover","icon-color--on-info-default","icon-color--on-info-strong","icon-color--on-success-default","icon-color--on-success-strong","icon-color--on-danger-default","icon-color--on-danger-strong","icon-color--on-warning-default","icon-color--on-warning-strong","icon-color--on-inverse","scrollbar","invisible","remove-list-styling","remove-button-styling","normalize-button","hide-input","inherit-link-styling","scrollable-y","visibility-transition","visibility-transition--open","visibility-transition--closed","visually-hidden","center-absolute","center-absolute-y","center-absolute-x","useCallback","useEffect","useLayoutEffect","useRef","useState","header-button","header__content","body","body--animated","body--hidden","useCallback","arrow","useRef","prefix","wrapper","useEffect","useState","useRef","container","useCallback","useEffect","useRef","useEffect","useState","useEffect","useEffect","useEffect","useRef","useRef","useEffect","useCallback","useEffect","useState","size","useEffect","useState","ScreenSize","screenSize","useEffect","useCallback","useRef","useState","useLayoutEffect","useEffect","jsx","container","backdrop","drawer","modal","backdrop--visible","backdrop--hidden","jsx","item","default","danger","item--interactive","item--loading","jsx","size","dds-p","dds-p-i","dds-p-b","dds-m","dds-m-i","dds-m-b","dds-bleed-m-i","dds-bleed-m-b","dds-h","dds-max-h","dds-min-h","dds-w","dds-max-w","dds-min-w","dds-pos","dds-l","dds-r","dds-t","dds-b","dds-o","dds-o-x","dds-o-y","dds-display","dds-text-align","dds-word-break","dds-flex-dir","dds-gap","dds-c-gap","dds-r-gap","dds-a-i","dds-a-c","dds-j-i","dds-pl-i","dds-j-c","dds-wrap","dds-basis","dds-flow","prefix","jsx","xs-hide-below","sm-hide-below","md-hide-below","lg-hide-below","xl-hide-below","xs-hide-above","sm-hide-above","md-hide-above","lg-hide-above","jsx","jsx","jsx","container","jsx","dds-grid","dds-grid-template-columns","dds-grid-auto-flow","dds-grid-auto-columns","dds-grid-auto-rows","dds-grid-template","dds-grid-template-rows","dds-grid-template-areas","dds-grid-column","dds-grid-row","dds-grid-area","dds-j-self","child--first-half","child--second-half","child-col-count","jsx","jsx","background","border","container","shadow--small","shadow--medium","shadow--large","border-radius--button","border-radius--surface","border-radius--chip","border-radius--input","border-radius--rounded","border-radius--0","jsx","jsx","jsx","useId","svg","jordskifterett","lagmannsrett","tingrett","createContext","useContext","jsx","texts","jsx","size","useId","focusable","focused","focusable-focus","focusable-within","has-focusable-input","focusable-sibling","focus-styled-sibling","focusable--inset","jsx","jsxs","jsx","jsx","jsx","jsx","svg","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsxs","jsx","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsx","jsx","jsx","jsx","jsxs","jsx","jsx","jsx","jsxs","jsx","jsxs","jsx","jsx","jsx","jsx","jsx","jsxs","jsx","jsx","jsxs","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsx","jsxs","jsx","jsx","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsx","jsx","jsxs","jsx","jsx","jsx","jsx","jsxs","jsx","jsxs","jsx","jsx","jsx","jsxs","jsx","jsx","jsx","jsxs","jsx","jsx","jsx","jsxs","jsx","jsx","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsx","jsx","jsxs","jsx","jsx","jsxs","jsx","jsx","jsx","jsxs","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsxs","jsx","jsxs","jsx","jsx","jsxs","jsx","jsx","jsxs","jsx","jsx","jsx","jsx","jsx","jsxs","jsx","jsx","jsxs","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsx","jsx","jsxs","jsx","jsxs","jsx","jsx","jsxs","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsxs","jsx","jsxs","jsx","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsx","jsx","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsxs","jsx","jsxs","svg","group","svg--up","svg--down","left","right","jsx","jsxs","jsx","jsx","jsx","jsx","jsxs","jsx","jsx","jsxs","jsx","jsx","jsxs","jsx","jsxs","createContext","useContext","useEffect","useRef","useState","global-variables","global-styles","jsx","createContext","useRef","useState","useEffect","useContext","jsx","container","header-button","chevron","jsx","wrapper","inner","jsx","container","prefix","jsx","jsx","jsx","read-only","read-only__icon","jsx","jsxs","jsx","jsx","jsx","jsx","jsxs","jsx","icon","jsx","jsxs","jsx","isValidElement","icon","button","button--is-loading","button--full-width","just-icon","just-text","with-text-and-icon","with-icon-left","button--xsmall","with-icon-right","no-content","clear","button--small","button--medium","button--large","spinner-wrapper--absolute","icon-wrapper","button--primary","button--secondary","button--tertiary","button--danger","createContext","useContext","Fragment","jsx","jsxs","texts","size","useContext","useEffect","createContext","useContext","useEffect","useState","jsx","createContext","useState","useEffect","useContext","container","list","jsx","useContext","useEffect","useEffect","useRef","useState","jsx","useRef","useState","useEffect","useEffect","useRef","jsx","useRef","useEffect","useEffect","useRef","useId","label","track","thumb","checkmark","unchecked-icon","checked-icon","labeltext--readonly","icon--read-only","medium","large","label--is-loading","label--color-scheme","label--disabled","label--read-only","jsx","Fragment","jsx","jsxs","size","useId","jsx","useRef","useEffect","divider","divider--default","divider--subtle","divider--on-inverse","jsx","jsx","jsx","jsx","jsx","useId","useRef","useState","jsx","useState","useId","useRef","Children","Fragment","jsx","jsxs","isValidElement","texts","group","group--column","group--row","jsx","container","container--filled","container--border","container--navigation","container--selection-control","container--expandable","jsx","container","header-button","header-container","header__content","header-container__chevron","jsx","jsx","jsxs","jsx","useId","createContext","useContext","container","group","group--row","group--column","label","selection-control","label--checkbox","label--radio","label--no-text","selection-control--radio","jsx","jsxs","Label","jsx","jsxs","useId","Label","useId","Fragment","jsx","jsxs","jsx","jsxs","useId","useId","createContext","useContext","jsx","jsxs","useId","Label","useId","jsx","jsxs","useId","createContext","useContext","jsx","useId","jsx","jsxs","useId","useState","jsx","jsxs","useState","texts","Children","jsx","Children","useId","useState","container","checkbox-label","jsx","jsxs","jsx","jsxs","useState","useId","texts","useLocale","useContext","useContext","useRef","date-group","input-group","date-segment-container","segment","segment__placeholder","segment__placeholder--invisible","icon-wrapper--disabled","popover-button","icon-wrapper--readonly","popover-button--readonly","popover","modal-close-button-wrapper","calendar","calendar__header__month","calendar__month-button","calendar__grid-element","calendar__th","calendar__week-number","calendar__cell-button","calendar__cell-button--today","calendar__cell-button--default","calendar__cell-button--unavailable","calendar__cell-button--selected","calendar__cell-button--unavailable--today","jsx","useRef","createContext","useContext","useEffect","useRef","createPortal","Fragment","jsx","jsxs","createContext","useRef","useContext","useEffect","createPortal","jsx","jsxs","texts","useContext","jsx","jsxs","useLocale","useContext","texts","useId","useRef","createCalendar","useLocale","useRef","useRef","button","jsx","size","container","input-group","input","disabled","read-only","input--stateful","input--hover","input--stateful-danger","input--large","input--medium","input--small","input--xsmall","input-with-icon--large","input-with-icon--medium","input-with-icon--small","input-with-icon--xsmall","input-with-el-right--large","input-with-el-right--medium","input-with-el-right--small","input-with-el-right--xsmall","input-with-btn-right--large","input-with-btn-right--medium","input-with-btn-right--small","input-with-btn-right--xsmall","input-with-icon-and-button-right--large","input-with-icon-and-button-right--medium","input-with-icon-and-button-right--small","input-with-icon-and-button-right--xsmall","input-group__absolute-el-right--large","input-group__absolute-el-right--medium","input-group__absolute-el-right--small","input-group__absolute-el-right--xsmall","input-group__btn-right","input-group__btn-right-with-right-icon--xsmall","input-group__btn-right-with-right-icon--small","input-group__btn-right-with-right-icon--medium","input-group__btn-right-with-right-icon--large","input--with-affix","input-group__absolute-el","input-group__absolute-el--large","input-group__absolute-el--medium","input-group__absolute-el--small","input-group__absolute-el--xsmall","jsx","useRef","texts","useRef","jsx","jsxs","useRef","jsx","size","useContext","jsx","jsx","jsx","jsxs","useContext","jsx","useLocale","createCalendar","useRef","texts","useRef","jsx","jsxs","useRef","useId","useId","useRef","jsx","useRef","useId","list","list--default","list--subtle","list--row","list--column","desc","group","jsx","jsx","jsx","jsxs","jsx","createContext","useContext","list","list--striped-with-bp","row","list--small","list--medium","list--large","column","cell","term","wrapper","wrapper--scrollable","table","table--with-dividers","row--body","row--colapsible-header--open","table--sticky-header","table--with-stripes","table--small","table--medium","table--large","row","row--sum","row--selected","row--hoverable","cell--head","cell--left","cell--right","cell--center","cell__inner","sort-button","collapse-button","jsx","size","jsx","Fragment","jsx","jsxs","jsx","useContext","useEffect","useRef","createPortal","container","container--left","container--left-opened","container--left-closed","container--right","container--right-opened","container--right-closed","content-container","drawer-header","button--close","createContext","useContext","jsx","jsxs","size","useContext","useEffect","useRef","createPortal","ReactChildren","cloneElement","isValidElement","useId","useRef","useState","jsx","useState","useId","useRef","Children","ReactChildren","isValidElement","cloneElement","jsx","jsxs","container","list","list--inherit","list--unordered","list--ordered","li","jsx","List","jsx","jsx","jsxs","texts","jsx","useId","container","icon","container--medium","container--large","icon--invisible","jsx","jsxs","size","useId","texts","useEffect","useState","rating-container","rating-container--horizontal","rating-container--vertical","rating-submitted-title","button","button--horizontal","button--vertical","useEffect","useId","useRef","useState","textarea","useId","container","jsx","jsxs","useId","texts","jsx","jsxs","useId","useRef","useState","useEffect","jsx","jsxs","texts","ReactChildren","cloneElement","useEffect","useId","useRef","useState","paper","jsx","jsxs","useId","useState","useRef","useEffect","ref","ReactChildren","cloneElement","jsx","jsxs","layout","texts","jsx","useState","texts","useEffect","container","jsx","jsx","useId","jsx","useEffect","useState","input-container","input-container--with-errors","input-container--drag-active","file--invalid","file__icon--invalid","file__icon--valid","file__name","readonly--file-list","Fragment","jsx","jsxs","File","useState","useEffect","texts","useCallback","useEffect","useRef","useRef","texts","useEffect","useCallback","jsx","jsxs","texts","useId","id","errorMessage","File","container","left","list","list-group","socials-group","socials-list","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","jsx","dd","field","jsx","jsxs","texts","useState","container","container--info","icon","container--danger","container--warning","content","content--closable","jsx","jsxs","useState","button","jsx","useRef","createContext","useContext","useState","jsx","createContext","useContext","useState","useId","useRef","inline-input","inline-select","inline-input--danger","inline-textarea","edit-icon-textarea","clear-button","jsxs","texts","Fragment","jsx","jsxs","useId","useRef","jsx","useRef","useRef","jsx","useRef","useRef","jsx","useRef","useState","bar","bar-separator","bar--with-nav","context-menu-group","nav-list","nav-list__item","nav-list__item__link","nav-list__item__link--active","context-menu","jsx","jsx","jsxs","createElement","useState","texts","rest","useState","container","container--info","container--warning","container--danger","container--success","container--tips","jsx","jsxs","icons","useState","useContext","useEffect","useId","useRef","createPortal","container","container-scrollable","header-container","close-button","content","body","jsx","jsxs","useId","useContext","useEffect","useRef","createPortal","jsx","jsx","close-button","img-wrapper","Fragment","jsx","jsxs","useState","truncation-icon","useCallback","useContext","useId","container--disabled","container--readonly","inner-single-value","control","control--readonly","dropdown-indicator","control--disabled","size","jsx","jsxs","Input","jsxs","jsx","Input","jsx","jsxs","useContext","useId","useCallback","label","useEffect","useId","useRef","useState","select","select--readonly","select--multiple","jsx","jsxs","useRef","useState","useEffect","useId","jsx","jsxs","createElement","texts","useState","useEffect","useId","useLayoutEffect","useRef","useState","inputs-container","input","select","inputs-container--small-screen-xs","inputs-container--small-screen-sm","inputs-container--small-screen-md","inputs-container--small-screen-lg","inputs-container--small-screen-xl","calling-code","calling-code--disabled","jsx","jsxs","texts","useId","useState","useRef","useLayoutEffect","useEffect","_a","useContext","useEffect","useId","createPortal","container","content--closable--no-header","header","close-button","createContext","useContext","jsx","jsxs","useContext","useId","useEffect","createPortal","ReactChildren","cloneElement","isValidElement","useId","useRef","useState","jsx","useState","useId","useRef","_a","Children","ReactChildren","isValidElement","cloneElement","Children","cloneElement","isValidElement","useEffect","useMemo","useState","createContext","useContext","list","list-item","list-item--column","list-item--row","item-button","item-number--active-incomplete","item-number--inactive-incomplete","item-number--active-completed","item-number--inactive-completed","item-div","item-number","item-number--disabled","item-text","item-text--inactive-link","useMemo","Fragment","jsx","jsxs","useMemo","getTextColor","texts","jsx","useState","useEffect","useMemo","texts","Children","isValidElement","cloneElement","useId","progress","fill","fill--done","fill--error","fill--indeterminate","indeterminate","jsx","jsxs","size","useId","useId","useState","createContext","useContext","input","clear-button","suggestions","useEffect","useRef","jsx","useRef","useEffect","jsx","jsxs","texts","Fragment","jsx","jsxs","useId","useState","_a","texts","useEffect","useRef","useState","jsx","useState","useEffect","data","value","useRef","Search","ddsSkeletonAnimation","container","jsx","wrapper","jsx","useState","container","main","option","option--primary","jsx","jsxs","size","useState","texts","Children","Fragment","cloneElement","isValidElement","useEffect","useState","createContext","useContext","jsx","createContext","useContext","jsx","jsx","jsx","jsx","jsx","jsxs","texts","jsx","size","useContext","useEffect","useRef","useState","jsx","useContext","container","useState","useRef","useEffect","Table","Fragment","jsx","jsxs","useState","useEffect","Children","prefix","isValidElement","cloneElement","Table","texts","jsx","Table","CollapsibleTable","useRef","createContext","useContext","tab-row","tab","tab--active","tab--medium--row","tab--small--row","tab--medium--column","tab--small--column","tab--row","tab--column","createContext","useContext","useLayoutEffect","jsx","jsx","jsxs","useRef","size","useEffect","useId","useRef","useState","jsx","size","useId","useState","useRef","useEffect","useCallback","useEffect","useRef","jsx","jsxs","useRef","size","useEffect","useCallback","Children","cloneElement","isValidElement","useState","jsx","jsxs","Children","isValidElement","cloneElement","useState","jsx","Children","cloneElement","isValidElement","jsx","Children","isValidElement","cloneElement","container","container--with-icon","container--default--default","container--default--strong","container--success--default","container--success--strong","container--danger--default","container--danger--strong","container--warning--default","container--warning--strong","container--info--default","container--info--strong","jsx","jsxs","icons","useId","useLayoutEffect","useRef","useState","container","container--readonly","container--disabled","input--extended","affix","prefix","suffix","affix--disabled","jsx","jsxs","prefix","useState","useRef","useLayoutEffect","useId","useId","useState","createContext","useContext","jsx","jsxs","size","useId","useState","useId","content","label","label--primary","label--secondary","jsx","jsxs","useId","useId","content","jsx","jsxs","size","useId","useId","jsx","jsxs","useId"]}