@dnb/eufemia 9.30.0 → 9.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +63 -0
- package/assets/icons/add.svg +1 -1
- package/assets/icons/add_circled.svg +1 -1
- package/assets/icons/add_circled_medium.svg +1 -1
- package/assets/icons/add_medium.svg +1 -1
- package/assets/icons/boat.svg +1 -1
- package/assets/icons/boat_medium.svg +1 -1
- package/assets/icons/calculator.svg +1 -1
- package/assets/icons/card.svg +1 -1
- package/assets/icons/card_medium.svg +1 -1
- package/assets/icons/cat_medium.svg +1 -1
- package/assets/icons/chatbot.svg +1 -1
- package/assets/icons/chatbot_medium.svg +1 -1
- package/assets/icons/chip.svg +1 -1
- package/assets/icons/chip_medium.svg +1 -1
- package/assets/icons/cloud_download.svg +1 -1
- package/assets/icons/cloud_download_medium.svg +1 -1
- package/assets/icons/cloud_rain.svg +1 -1
- package/assets/icons/cloud_rain_medium.svg +1 -1
- package/assets/icons/cloud_sync.svg +1 -1
- package/assets/icons/cloud_sync_medium.svg +1 -1
- package/assets/icons/cloud_transfer.svg +1 -1
- package/assets/icons/cloud_transfer_medium.svg +1 -1
- package/assets/icons/cloud_upload.svg +1 -1
- package/assets/icons/cloud_upload_medium.svg +1 -1
- package/assets/icons/cookie.svg +1 -1
- package/assets/icons/cookie_medium.svg +1 -1
- package/assets/icons/diamond.svg +1 -1
- package/assets/icons/dog.svg +1 -1
- package/assets/icons/dog_medium.svg +1 -1
- package/assets/icons/eufemia-icons-pdf-categorized.tgz +0 -0
- package/assets/icons/eufemia-icons-pdf.tgz +0 -0
- package/assets/icons/exclamation_circled.svg +1 -1
- package/assets/icons/exclamation_circled_medium.svg +1 -1
- package/assets/icons/file_jpg.svg +1 -0
- package/assets/icons/file_jpg_medium.svg +1 -0
- package/assets/icons/file_png.svg +1 -0
- package/assets/icons/file_png_medium.svg +1 -0
- package/assets/icons/fish.svg +1 -0
- package/assets/icons/fish_medium.svg +1 -0
- package/assets/icons/hourglass.svg +1 -1
- package/assets/icons/instagram.svg +1 -1
- package/assets/icons/linkedin.svg +1 -1
- package/assets/icons/linkedin_medium.svg +1 -1
- package/assets/icons/loupe.svg +1 -1
- package/assets/icons/loupe_medium.svg +1 -1
- package/assets/icons/mastercard_card.svg +1 -1
- package/assets/icons/mastercard_card_medium.svg +1 -1
- package/assets/icons/news.svg +1 -1
- package/assets/icons/news_medium.svg +1 -1
- package/assets/icons/newspaper.svg +1 -0
- package/assets/icons/newspaper_medium.svg +1 -0
- package/assets/icons/phone.svg +1 -1
- package/assets/icons/phone_medium.svg +1 -1
- package/assets/icons/photo.svg +1 -1
- package/assets/icons/photo_medium.svg +1 -1
- package/assets/icons/pin.svg +1 -1
- package/assets/icons/pin_medium.svg +1 -1
- package/assets/icons/play.svg +1 -1
- package/assets/icons/savings_account.svg +1 -1
- package/assets/icons/sort.svg +1 -0
- package/assets/icons/sort_medium.svg +1 -0
- package/assets/icons/subtract.svg +1 -1
- package/assets/icons/subtract_circled.svg +1 -1
- package/assets/icons/subtract_circled_medium.svg +1 -1
- package/assets/icons/subtract_medium.svg +1 -1
- package/assets/icons/tag.svg +1 -1
- package/assets/icons/tag_medium.svg +1 -1
- package/assets/icons/thumbs_down.svg +1 -1
- package/assets/icons/thumbs_up.svg +1 -1
- package/assets/icons/video.svg +1 -1
- package/assets/icons/video_medium.svg +1 -1
- package/assets/icons/wallet_medium.svg +1 -1
- package/cjs/components/HeightAnimation.d.ts +3 -0
- package/cjs/components/HeightAnimation.js +52 -0
- package/cjs/components/accordion/Accordion.js +2 -2
- package/cjs/components/accordion/AccordionHeader.js +1 -1
- package/cjs/components/accordion/AccordionProvider.js +3 -1
- package/cjs/components/accordion/style/_accordion.scss +14 -15
- package/cjs/components/accordion/style/dnb-accordion.css +9 -6
- package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.css +100 -94
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +3 -3
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.scss +36 -39
- package/cjs/components/autocomplete/Autocomplete.d.ts +0 -10
- package/cjs/components/autocomplete/Autocomplete.js +3 -4
- package/cjs/components/autocomplete/style/_autocomplete.scss +2 -2
- package/cjs/components/autocomplete/style/dnb-autocomplete.css +46 -46
- package/cjs/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
- package/cjs/components/avatar/Avatar.d.ts +5 -3
- package/cjs/components/avatar/Avatar.js +1 -3
- package/cjs/components/avatar/AvatarGroup.d.ts +2 -2
- package/cjs/components/avatar/AvatarGroup.js +8 -10
- package/cjs/components/avatar/style/themes/dnb-avatar-theme-ui.css +0 -10
- package/cjs/components/avatar/style/themes/dnb-avatar-theme-ui.min.css +1 -1
- package/cjs/components/avatar/style/themes/dnb-avatar-theme-ui.scss +0 -8
- package/cjs/components/badge/Badge.d.ts +3 -3
- package/cjs/components/badge/Badge.js +1 -17
- package/cjs/components/breadcrumb/Breadcrumb.d.ts +14 -8
- package/cjs/components/breadcrumb/Breadcrumb.js +26 -28
- package/cjs/components/breadcrumb/BreadcrumbItem.d.ts +2 -0
- package/cjs/components/breadcrumb/BreadcrumbItem.js +16 -11
- package/cjs/components/breadcrumb/BreadcrumbMultiple.d.ts +10 -0
- package/cjs/components/breadcrumb/BreadcrumbMultiple.js +52 -0
- package/cjs/components/breadcrumb/style/_breadcrumb.scss +25 -12
- package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +933 -17
- package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
- package/cjs/components/breadcrumb/style/dnb-breadcrumb.scss +4 -0
- package/cjs/components/button/Button.d.ts +7 -9
- package/cjs/components/button/Button.js +5 -3
- package/cjs/components/button/style/dnb-button.css +14 -14
- package/cjs/components/button/style/dnb-button.min.css +1 -1
- package/cjs/components/button/style/themes/dnb-button-theme-eiendom.css +2 -2
- package/cjs/components/button/style/themes/dnb-button-theme-eiendom.min.css +1 -1
- package/cjs/components/button/style/themes/dnb-button-theme-ui.css +2 -2
- package/cjs/components/button/style/themes/dnb-button-theme-ui.min.css +1 -1
- package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +2 -2
- package/cjs/components/checkbox/Checkbox.js +4 -2
- package/cjs/components/date-picker/DatePicker.js +4 -2
- package/cjs/components/date-picker/style/dnb-date-picker.css +56 -56
- package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
- package/cjs/components/dialog/Dialog.js +2 -2
- package/cjs/components/dialog/parts/DialogBody.d.ts +2 -1
- package/cjs/components/dialog/style/_dialog.scss +1 -1
- package/cjs/components/dialog/style/dnb-dialog.css +26 -26
- package/cjs/components/dialog/style/dnb-dialog.min.css +1 -1
- package/cjs/components/drawer/DrawerContent.d.ts +1 -1
- package/cjs/components/drawer/DrawerContent.js +2 -4
- package/cjs/components/drawer/parts/DrawerBody.d.ts +2 -1
- package/cjs/components/drawer/style/dnb-drawer.css +22 -22
- package/cjs/components/drawer/style/dnb-drawer.min.css +1 -1
- package/cjs/components/dropdown/Dropdown.d.ts +0 -4
- package/cjs/components/dropdown/Dropdown.js +4 -2
- package/cjs/components/dropdown/style/dnb-dropdown.css +14 -14
- package/cjs/components/dropdown/style/dnb-dropdown.min.css +1 -1
- package/cjs/components/form-label/FormLabel.js +4 -2
- package/cjs/components/form-row/FormRow.js +9 -3
- package/cjs/components/form-row/style/_form-row.scss +4 -1
- package/cjs/components/form-row/style/dnb-form-row.css +4 -3
- package/cjs/components/form-row/style/dnb-form-row.min.css +1 -1
- package/cjs/components/form-set/FormSet.js +1 -1
- package/cjs/components/form-status/FormStatus.js +4 -2
- package/cjs/components/global-error/style/dnb-global-error.css +14 -14
- package/cjs/components/global-error/style/dnb-global-error.min.css +1 -1
- package/cjs/components/global-status/GlobalStatus.js +3 -3
- package/cjs/components/global-status/style/dnb-global-status.css +24 -38
- package/cjs/components/global-status/style/dnb-global-status.min.css +1 -1
- package/cjs/components/height-animation/HeightAnimation.d.ts +27 -0
- package/cjs/components/height-animation/HeightAnimation.js +86 -0
- package/cjs/components/height-animation/index.d.ts +3 -0
- package/cjs/components/height-animation/index.js +52 -0
- package/cjs/components/height-animation/style/_height-animation.scss +12 -0
- package/cjs/components/height-animation/style/dnb-height-animation.css +81 -0
- package/cjs/components/height-animation/style/dnb-height-animation.min.css +1 -0
- package/cjs/components/height-animation/style/dnb-height-animation.scss +12 -0
- package/cjs/components/height-animation/style/index.d.ts +1 -0
- package/cjs/components/height-animation/style/index.js +3 -0
- package/cjs/components/height-animation/style.d.ts +1 -0
- package/cjs/components/height-animation/style.js +3 -0
- package/cjs/components/height-animation/useHeightAnimation.d.ts +40 -0
- package/cjs/components/height-animation/useHeightAnimation.js +245 -0
- package/cjs/components/help-button/HelpButton.d.ts +10 -236
- package/cjs/components/help-button/HelpButton.js +31 -124
- package/cjs/components/help-button/HelpButtonInstance.d.ts +5 -100
- package/cjs/components/help-button/HelpButtonInstance.js +54 -129
- package/cjs/components/help-button/style/dnb-help-button.css +14 -14
- package/cjs/components/help-button/style/dnb-help-button.min.css +1 -1
- package/cjs/components/icon/Icon.js +5 -3
- package/cjs/components/icon-primary/IconPrimary.js +4 -2
- package/cjs/components/index.d.ts +2 -1
- package/cjs/components/index.js +8 -0
- package/cjs/components/info-card/InfoCard.d.ts +2 -4
- package/cjs/components/info-card/InfoCard.js +23 -25
- package/cjs/components/input/Input.js +5 -3
- package/cjs/components/input/InputPassword.js +4 -2
- package/cjs/components/input/style/dnb-input.css +28 -28
- package/cjs/components/input/style/dnb-input.min.css +1 -1
- package/cjs/components/input-masked/style/dnb-input-masked.css +28 -28
- package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/cjs/components/lib.d.ts +27 -9
- package/cjs/components/lib.js +9 -0
- package/cjs/components/logo/Logo.d.ts +5 -0
- package/cjs/components/logo/Logo.js +8 -3
- package/cjs/components/logo/style/_logo.scss +3 -0
- package/cjs/components/logo/style/dnb-logo.css +2 -0
- package/cjs/components/logo/style/dnb-logo.min.css +1 -1
- package/cjs/components/modal/Modal.d.ts +2 -2
- package/cjs/components/modal/Modal.js +5 -2
- package/cjs/components/modal/ModalRoot.d.ts +1 -1
- package/cjs/components/modal/parts/CloseButton.js +1 -1
- package/cjs/components/modal/style/_modal.scss +1 -2
- package/cjs/components/modal/style/dnb-modal.css +22 -22
- package/cjs/components/modal/style/dnb-modal.min.css +1 -1
- package/cjs/components/number-format/NumberFormat.js +2 -2
- package/cjs/components/number-format/style/dnb-number-format.css +14 -14
- package/cjs/components/number-format/style/dnb-number-format.min.css +1 -1
- package/cjs/components/number-format/useNumberFormat.js +2 -2
- package/cjs/components/pagination/Pagination.d.ts +0 -6
- package/cjs/components/pagination/Pagination.js +3 -3
- package/cjs/components/pagination/PaginationInfinity.js +0 -26
- package/cjs/components/pagination/PaginationProvider.js +11 -5
- package/cjs/components/pagination/style/dnb-pagination.css +14 -14
- package/cjs/components/pagination/style/dnb-pagination.min.css +1 -1
- package/cjs/components/progress-indicator/ProgressIndicator.js +3 -1
- package/cjs/components/radio/Radio.js +5 -2
- package/cjs/components/radio/RadioGroup.js +3 -1
- package/cjs/components/section/Section.d.ts +30 -83
- package/cjs/components/section/Section.js +33 -123
- package/cjs/components/section/style/_section.scss +8 -25
- package/cjs/components/section/style/dnb-section.css +10 -24
- package/cjs/components/section/style/dnb-section.min.css +1 -1
- package/cjs/components/section/style/themes/dnb-section-theme-ui.scss +1 -5
- package/cjs/components/skeleton/Skeleton.js +1 -1
- package/cjs/components/slider/Slider.d.ts +2 -3
- package/cjs/components/slider/SliderHelpers.d.ts +6 -4
- package/cjs/components/slider/SliderHelpers.js +18 -22
- package/cjs/components/slider/SliderInstance.js +6 -5
- package/cjs/components/slider/SliderProvider.d.ts +2 -2
- package/cjs/components/slider/SliderProvider.js +42 -26
- package/cjs/components/slider/SliderThumb.js +130 -71
- package/cjs/components/slider/SliderTrack.js +8 -10
- package/cjs/components/slider/hooks/useSliderEvents.d.ts +1 -3
- package/cjs/components/slider/hooks/useSliderEvents.js +19 -36
- package/cjs/components/slider/style/_range.scss +6 -0
- package/cjs/components/slider/style/_slider.scss +8 -5
- package/cjs/components/slider/style/dnb-range.css +10 -0
- package/cjs/components/slider/style/dnb-range.scss +6 -0
- package/cjs/components/slider/style/dnb-slider.css +211 -21
- package/cjs/components/slider/style/dnb-slider.min.css +1 -1
- package/cjs/components/slider/style/dnb-slider.scss +1 -0
- package/cjs/components/slider/types.d.ts +13 -5
- package/cjs/components/space/Space.d.ts +3 -2
- package/cjs/components/space/Space.js +17 -22
- package/cjs/components/step-indicator/StepIndicatorContext.js +4 -2
- package/cjs/components/step-indicator/StepIndicatorSidebar.js +1 -1
- package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +2 -2
- package/cjs/components/step-indicator/style/dnb-step-indicator.css +14 -14
- package/cjs/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
- package/cjs/components/switch/Switch.js +4 -2
- package/cjs/components/table/Table.d.ts +2 -2
- package/cjs/components/table/Table.js +1 -3
- package/cjs/components/tabs/Tabs.js +2 -2
- package/cjs/components/tabs/TabsContentWrapper.js +1 -1
- package/cjs/components/tag/Tag.d.ts +10 -3
- package/cjs/components/tag/Tag.js +8 -9
- package/cjs/components/tag/TagGroup.d.ts +2 -2
- package/cjs/components/tag/TagGroup.js +5 -7
- package/cjs/components/tag/style/dnb-tag.css +14 -14
- package/cjs/components/tag/style/dnb-tag.min.css +1 -1
- package/cjs/components/textarea/Textarea.js +4 -2
- package/cjs/components/timeline/Timeline.d.ts +2 -2
- package/cjs/components/timeline/Timeline.js +1 -3
- package/cjs/components/timeline/TimelineItem.js +2 -2
- package/cjs/components/toggle-button/ToggleButton.js +4 -1
- package/cjs/components/toggle-button/ToggleButtonGroup.js +3 -1
- package/cjs/components/toggle-button/style/dnb-toggle-button.css +14 -14
- package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/cjs/components/tooltip/Tooltip.d.ts +8 -154
- package/cjs/components/tooltip/Tooltip.js +84 -166
- package/cjs/components/tooltip/TooltipContainer.d.ts +15 -68
- package/cjs/components/tooltip/TooltipContainer.js +207 -323
- package/cjs/components/tooltip/TooltipHelpers.d.ts +31 -1
- package/cjs/components/tooltip/TooltipHelpers.js +85 -1
- package/cjs/components/tooltip/TooltipPortal.d.ts +13 -31
- package/cjs/components/tooltip/TooltipPortal.js +152 -206
- package/cjs/components/tooltip/TooltipWithEvents.d.ts +11 -35
- package/cjs/components/tooltip/TooltipWithEvents.js +159 -195
- package/cjs/components/tooltip/style/_tooltip.scss +8 -7
- package/cjs/components/tooltip/style/dnb-tooltip.css +14 -14
- package/cjs/components/tooltip/style/dnb-tooltip.min.css +1 -1
- package/cjs/components/tooltip/types.d.ts +28 -0
- package/cjs/components/tooltip/types.js +1 -0
- package/cjs/components/visually-hidden/VisuallyHidden.d.ts +2 -3
- package/cjs/components/visually-hidden/VisuallyHidden.js +2 -20
- package/cjs/elements/Anchor.d.ts +5 -3
- package/cjs/elements/Anchor.js +3 -5
- package/cjs/elements/Dd.d.ts +10 -26
- package/cjs/elements/Dd.js +0 -31
- package/cjs/elements/Dl.d.ts +16 -26
- package/cjs/elements/Dl.js +24 -26
- package/cjs/elements/Dt.d.ts +10 -26
- package/cjs/elements/Dt.js +0 -31
- package/cjs/elements/Element.d.ts +4 -2
- package/cjs/elements/Element.js +1 -3
- package/cjs/elements/Li.d.ts +6 -26
- package/cjs/elements/Li.js +0 -23
- package/cjs/elements/Link.d.ts +3 -1
- package/cjs/elements/Ol.d.ts +20 -29
- package/cjs/elements/Ol.js +0 -33
- package/cjs/elements/Ul.d.ts +20 -30
- package/cjs/elements/Ul.js +0 -35
- package/cjs/elements/lib.d.ts +19 -8
- package/cjs/extensions/payment-card/PaymentCard.js +2 -2
- package/cjs/fragments/drawer-list/DrawerList.js +3 -1
- package/cjs/fragments/drawer-list/style/_drawer-list.scss +1 -1
- package/cjs/fragments/lib.d.ts +8 -1
- package/cjs/fragments/scroll-view/ScrollView.d.ts +14 -7
- package/cjs/fragments/scroll-view/ScrollView.js +29 -99
- package/cjs/icons/add.js +5 -2
- package/cjs/icons/add_circled.js +5 -2
- package/cjs/icons/add_circled_medium.js +5 -2
- package/cjs/icons/add_medium.js +5 -2
- package/cjs/icons/boat.js +10 -3
- package/cjs/icons/boat_medium.js +10 -3
- package/cjs/icons/calculator.js +10 -3
- package/cjs/icons/card.js +4 -2
- package/cjs/icons/card_medium.js +4 -2
- package/cjs/icons/cat_medium.js +10 -3
- package/cjs/icons/chatbot.js +5 -2
- package/cjs/icons/chatbot_medium.js +5 -2
- package/cjs/icons/chip.js +10 -3
- package/cjs/icons/chip_medium.js +10 -3
- package/cjs/icons/cloud_download.js +10 -3
- package/cjs/icons/cloud_download_medium.js +10 -3
- package/cjs/icons/cloud_rain.js +10 -3
- package/cjs/icons/cloud_rain_medium.js +10 -3
- package/cjs/icons/cloud_sync.js +10 -3
- package/cjs/icons/cloud_sync_medium.js +10 -3
- package/cjs/icons/cloud_transfer.js +10 -3
- package/cjs/icons/cloud_transfer_medium.js +10 -3
- package/cjs/icons/cloud_upload.js +10 -3
- package/cjs/icons/cloud_upload_medium.js +10 -3
- package/cjs/icons/cookie.js +10 -3
- package/cjs/icons/cookie_medium.js +10 -3
- package/cjs/icons/diamond.js +10 -3
- package/cjs/icons/dog.js +10 -3
- package/cjs/icons/dog_medium.js +10 -3
- package/cjs/icons/exclamation_circled.js +5 -2
- package/cjs/icons/exclamation_circled_medium.js +5 -2
- package/cjs/icons/file_jpg.d.ts +2 -0
- package/cjs/icons/file_jpg.js +32 -0
- package/cjs/icons/file_jpg_medium.d.ts +2 -0
- package/cjs/icons/file_jpg_medium.js +38 -0
- package/cjs/icons/file_png.d.ts +2 -0
- package/cjs/icons/file_png.js +32 -0
- package/cjs/icons/file_png_medium.d.ts +2 -0
- package/cjs/icons/file_png_medium.js +38 -0
- package/cjs/icons/fish.d.ts +2 -0
- package/cjs/icons/fish.js +40 -0
- package/cjs/icons/fish_medium.d.ts +2 -0
- package/cjs/icons/fish_medium.js +40 -0
- package/cjs/icons/hourglass.js +10 -3
- package/cjs/icons/icons-meta.json +71 -1
- package/cjs/icons/icons-pdf.lock +1098 -968
- package/cjs/icons/icons-svg.lock +1098 -968
- package/cjs/icons/index.d.ts +11 -1
- package/cjs/icons/index.js +80 -0
- package/cjs/icons/instagram.js +10 -3
- package/cjs/icons/linkedin.js +10 -3
- package/cjs/icons/linkedin_medium.js +10 -3
- package/cjs/icons/loupe.js +4 -2
- package/cjs/icons/loupe_medium.js +4 -2
- package/cjs/icons/mastercard_card.js +4 -2
- package/cjs/icons/mastercard_card_medium.js +4 -2
- package/cjs/icons/news.js +10 -3
- package/cjs/icons/news_medium.js +10 -3
- package/cjs/icons/newspaper.d.ts +2 -0
- package/cjs/icons/newspaper.js +35 -0
- package/cjs/icons/newspaper_medium.d.ts +2 -0
- package/cjs/icons/newspaper_medium.js +35 -0
- package/cjs/icons/phone.js +10 -3
- package/cjs/icons/phone_medium.js +10 -3
- package/cjs/icons/photo.js +10 -3
- package/cjs/icons/photo_medium.js +10 -3
- package/cjs/icons/pin.js +10 -3
- package/cjs/icons/pin_medium.js +10 -3
- package/cjs/icons/play.js +10 -3
- package/cjs/icons/savings_account.js +5 -2
- package/cjs/icons/secondary_icons.d.ts +6 -1
- package/cjs/icons/secondary_icons.js +40 -0
- package/cjs/icons/secondary_icons_medium.d.ts +6 -1
- package/cjs/icons/secondary_icons_medium.js +40 -0
- package/cjs/icons/sort.d.ts +2 -0
- package/cjs/icons/sort.js +35 -0
- package/cjs/icons/sort_medium.d.ts +2 -0
- package/cjs/icons/sort_medium.js +35 -0
- package/cjs/icons/subtract.js +5 -2
- package/cjs/icons/subtract_circled.js +5 -2
- package/cjs/icons/subtract_circled_medium.js +5 -2
- package/cjs/icons/subtract_medium.js +5 -2
- package/cjs/icons/tag.js +13 -10
- package/cjs/icons/tag_medium.js +13 -10
- package/cjs/icons/thumbs_down.js +10 -3
- package/cjs/icons/thumbs_up.js +10 -3
- package/cjs/icons/video.js +10 -3
- package/cjs/icons/video_medium.js +10 -3
- package/cjs/icons/wallet_medium.js +4 -2
- package/cjs/index.d.ts +2 -1
- package/cjs/index.js +8 -0
- package/cjs/shared/AnimateHeight.d.ts +46 -32
- package/cjs/shared/AnimateHeight.js +104 -66
- package/cjs/shared/Context.d.ts +9 -3
- package/cjs/shared/Eufemia.js +1 -1
- package/cjs/shared/MediaQueryUtils.d.ts +5 -1
- package/cjs/shared/MediaQueryUtils.js +5 -3
- package/cjs/shared/component-helper.d.ts +7 -18
- package/cjs/shared/component-helper.js +55 -260
- package/cjs/shared/helpers/EventEmitter.d.ts +46 -0
- package/cjs/shared/{EventEmitter.js → helpers/EventEmitter.js} +31 -26
- package/cjs/shared/helpers/InteractionInvalidation.d.ts +30 -0
- package/cjs/shared/helpers/InteractionInvalidation.js +256 -0
- package/{shared/hooks/usePropsWithContext.d.ts → cjs/shared/helpers/extendPropsWithContext.d.ts} +2 -3
- package/cjs/shared/{hooks/usePropsWithContext.js → helpers/extendPropsWithContext.js} +36 -15
- package/cjs/shared/helpers/filterValidProps.d.ts +1 -1
- package/cjs/shared/helpers/filterValidProps.js +1 -1
- package/cjs/shared/helpers/getPreviousSibling.d.ts +10 -0
- package/cjs/shared/helpers/getPreviousSibling.js +47 -0
- package/cjs/shared/helpers/useEventEmitter.d.ts +14 -0
- package/cjs/shared/helpers/useEventEmitter.js +92 -0
- package/cjs/shared/helpers.d.ts +2 -0
- package/cjs/shared/interfaces.d.ts +4 -23
- package/cjs/shared/interfaces.js +24 -1
- package/cjs/shared/locales/en-GB.d.ts +3 -0
- package/cjs/shared/locales/en-GB.js +3 -0
- package/cjs/shared/locales/en-US.d.ts +3 -0
- package/cjs/shared/locales/index.d.ts +6 -0
- package/cjs/shared/locales/nb-NO.d.ts +3 -0
- package/cjs/shared/locales/nb-NO.js +3 -0
- package/cjs/shared/types.d.ts +35 -0
- package/cjs/shared/types.js +1 -0
- package/cjs/shared/useMediaQuery.js +19 -12
- package/cjs/style/core/helper-classes/helper-classes.scss +4 -0
- package/cjs/style/dnb-ui-basis.css +3 -0
- package/cjs/style/dnb-ui-basis.min.css +1 -1
- package/cjs/style/dnb-ui-components.css +112 -84
- package/cjs/style/dnb-ui-components.min.css +5 -5
- package/cjs/style/dnb-ui-components.scss +1 -0
- package/cjs/style/dnb-ui-core.css +3 -0
- package/cjs/style/dnb-ui-core.min.css +1 -1
- package/cjs/style/dnb-ui-elements.css +25 -4
- package/cjs/style/dnb-ui-elements.min.css +1 -1
- package/cjs/style/dnb-ui-fragments.css +1 -1
- package/cjs/style/dnb-ui-fragments.min.css +1 -1
- package/cjs/style/dnb-ui-tags.css +50 -8
- package/cjs/style/dnb-ui-tags.min.css +1 -1
- package/cjs/style/elements/lists.scss +27 -5
- package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.css +129 -112
- package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +5 -5
- package/cjs/style/themes/theme-ui/dnb-theme-ui.css +127 -110
- package/cjs/style/themes/theme-ui/dnb-theme-ui.min.css +5 -5
- package/components/HeightAnimation.d.ts +3 -0
- package/components/HeightAnimation.js +3 -0
- package/components/accordion/Accordion.js +3 -3
- package/components/accordion/AccordionHeader.js +2 -2
- package/components/accordion/AccordionProvider.js +3 -2
- package/components/accordion/style/_accordion.scss +14 -15
- package/components/accordion/style/dnb-accordion.css +9 -6
- package/components/accordion/style/dnb-accordion.min.css +1 -1
- package/components/accordion/style/themes/dnb-accordion-theme-ui.css +100 -94
- package/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +3 -3
- package/components/accordion/style/themes/dnb-accordion-theme-ui.scss +36 -39
- package/components/autocomplete/Autocomplete.d.ts +0 -10
- package/components/autocomplete/Autocomplete.js +3 -5
- package/components/autocomplete/style/_autocomplete.scss +2 -2
- package/components/autocomplete/style/dnb-autocomplete.css +46 -46
- package/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
- package/components/avatar/Avatar.d.ts +5 -3
- package/components/avatar/Avatar.js +2 -3
- package/components/avatar/AvatarGroup.d.ts +2 -2
- package/components/avatar/AvatarGroup.js +9 -10
- package/components/avatar/style/themes/dnb-avatar-theme-ui.css +0 -10
- package/components/avatar/style/themes/dnb-avatar-theme-ui.min.css +1 -1
- package/components/avatar/style/themes/dnb-avatar-theme-ui.scss +0 -8
- package/components/badge/Badge.d.ts +3 -3
- package/components/badge/Badge.js +2 -16
- package/components/breadcrumb/Breadcrumb.d.ts +14 -8
- package/components/breadcrumb/Breadcrumb.js +26 -27
- package/components/breadcrumb/BreadcrumbItem.d.ts +2 -0
- package/components/breadcrumb/BreadcrumbItem.js +16 -11
- package/components/breadcrumb/BreadcrumbMultiple.d.ts +10 -0
- package/components/breadcrumb/BreadcrumbMultiple.js +33 -0
- package/components/breadcrumb/style/_breadcrumb.scss +25 -12
- package/components/breadcrumb/style/dnb-breadcrumb.css +933 -17
- package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
- package/components/breadcrumb/style/dnb-breadcrumb.scss +4 -0
- package/components/button/Button.d.ts +7 -9
- package/components/button/Button.js +5 -4
- package/components/button/style/dnb-button.css +14 -14
- package/components/button/style/dnb-button.min.css +1 -1
- package/components/button/style/themes/dnb-button-theme-eiendom.css +2 -2
- package/components/button/style/themes/dnb-button-theme-eiendom.min.css +1 -1
- package/components/button/style/themes/dnb-button-theme-ui.css +2 -2
- package/components/button/style/themes/dnb-button-theme-ui.min.css +1 -1
- package/components/button/style/themes/dnb-button-theme-ui.scss +2 -2
- package/components/checkbox/Checkbox.js +4 -3
- package/components/date-picker/DatePicker.js +4 -3
- package/components/date-picker/style/dnb-date-picker.css +56 -56
- package/components/date-picker/style/dnb-date-picker.min.css +1 -1
- package/components/dialog/Dialog.js +2 -2
- package/components/dialog/parts/DialogBody.d.ts +2 -1
- package/components/dialog/style/_dialog.scss +1 -1
- package/components/dialog/style/dnb-dialog.css +26 -26
- package/components/dialog/style/dnb-dialog.min.css +1 -1
- package/components/drawer/DrawerContent.d.ts +1 -1
- package/components/drawer/DrawerContent.js +2 -4
- package/components/drawer/parts/DrawerBody.d.ts +2 -1
- package/components/drawer/style/dnb-drawer.css +22 -22
- package/components/drawer/style/dnb-drawer.min.css +1 -1
- package/components/dropdown/Dropdown.d.ts +0 -4
- package/components/dropdown/Dropdown.js +4 -3
- package/components/dropdown/style/dnb-dropdown.css +14 -14
- package/components/dropdown/style/dnb-dropdown.min.css +1 -1
- package/components/form-label/FormLabel.js +4 -3
- package/components/form-row/FormRow.js +9 -4
- package/components/form-row/style/_form-row.scss +4 -1
- package/components/form-row/style/dnb-form-row.css +4 -3
- package/components/form-row/style/dnb-form-row.min.css +1 -1
- package/components/form-set/FormSet.js +2 -2
- package/components/form-status/FormStatus.js +4 -3
- package/components/global-error/style/dnb-global-error.css +14 -14
- package/components/global-error/style/dnb-global-error.min.css +1 -1
- package/components/global-status/GlobalStatus.js +4 -4
- package/components/global-status/style/dnb-global-status.css +24 -38
- package/components/global-status/style/dnb-global-status.min.css +1 -1
- package/components/height-animation/HeightAnimation.d.ts +27 -0
- package/components/height-animation/HeightAnimation.js +60 -0
- package/components/height-animation/index.d.ts +3 -0
- package/components/height-animation/index.js +3 -0
- package/components/height-animation/style/_height-animation.scss +12 -0
- package/components/height-animation/style/dnb-height-animation.css +81 -0
- package/components/height-animation/style/dnb-height-animation.min.css +1 -0
- package/components/height-animation/style/dnb-height-animation.scss +12 -0
- package/components/height-animation/style/index.d.ts +1 -0
- package/components/height-animation/style/index.js +1 -0
- package/components/height-animation/style.d.ts +1 -0
- package/components/height-animation/style.js +1 -0
- package/components/height-animation/useHeightAnimation.d.ts +40 -0
- package/components/height-animation/useHeightAnimation.js +196 -0
- package/components/help-button/HelpButton.d.ts +10 -236
- package/components/help-button/HelpButton.js +30 -94
- package/components/help-button/HelpButtonInstance.d.ts +5 -100
- package/components/help-button/HelpButtonInstance.js +56 -101
- package/components/help-button/style/dnb-help-button.css +14 -14
- package/components/help-button/style/dnb-help-button.min.css +1 -1
- package/components/icon/Icon.js +5 -4
- package/components/icon-primary/IconPrimary.js +4 -3
- package/components/index.d.ts +2 -1
- package/components/index.js +2 -1
- package/components/info-card/InfoCard.d.ts +2 -4
- package/components/info-card/InfoCard.js +20 -22
- package/components/input/Input.js +5 -4
- package/components/input/InputPassword.js +4 -3
- package/components/input/style/dnb-input.css +28 -28
- package/components/input/style/dnb-input.min.css +1 -1
- package/components/input-masked/style/dnb-input-masked.css +28 -28
- package/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/components/lib.d.ts +27 -9
- package/components/lib.js +3 -1
- package/components/logo/Logo.d.ts +5 -0
- package/components/logo/Logo.js +8 -4
- package/components/logo/style/_logo.scss +3 -0
- package/components/logo/style/dnb-logo.css +2 -0
- package/components/logo/style/dnb-logo.min.css +1 -1
- package/components/modal/Modal.d.ts +2 -2
- package/components/modal/Modal.js +5 -3
- package/components/modal/ModalRoot.d.ts +1 -1
- package/components/modal/parts/CloseButton.js +2 -2
- package/components/modal/style/_modal.scss +1 -2
- package/components/modal/style/dnb-modal.css +22 -22
- package/components/modal/style/dnb-modal.min.css +1 -1
- package/components/number-format/NumberFormat.js +3 -3
- package/components/number-format/style/dnb-number-format.css +14 -14
- package/components/number-format/style/dnb-number-format.min.css +1 -1
- package/components/number-format/useNumberFormat.js +2 -2
- package/components/pagination/Pagination.d.ts +0 -6
- package/components/pagination/Pagination.js +3 -4
- package/components/pagination/PaginationInfinity.js +0 -26
- package/components/pagination/PaginationProvider.js +11 -5
- package/components/pagination/style/dnb-pagination.css +14 -14
- package/components/pagination/style/dnb-pagination.min.css +1 -1
- package/components/progress-indicator/ProgressIndicator.js +3 -2
- package/components/radio/Radio.js +5 -3
- package/components/radio/RadioGroup.js +3 -2
- package/components/section/Section.d.ts +30 -83
- package/components/section/Section.js +36 -99
- package/components/section/style/_section.scss +8 -25
- package/components/section/style/dnb-section.css +10 -24
- package/components/section/style/dnb-section.min.css +1 -1
- package/components/section/style/themes/dnb-section-theme-ui.scss +1 -5
- package/components/skeleton/Skeleton.js +2 -2
- package/components/slider/Slider.d.ts +2 -3
- package/components/slider/SliderHelpers.d.ts +6 -4
- package/components/slider/SliderHelpers.js +16 -17
- package/components/slider/SliderInstance.js +8 -7
- package/components/slider/SliderProvider.d.ts +2 -2
- package/components/slider/SliderProvider.js +45 -28
- package/components/slider/SliderThumb.js +107 -73
- package/components/slider/SliderTrack.js +10 -12
- package/components/slider/hooks/useSliderEvents.d.ts +1 -3
- package/components/slider/hooks/useSliderEvents.js +19 -36
- package/components/slider/style/_range.scss +6 -0
- package/components/slider/style/_slider.scss +8 -5
- package/components/slider/style/dnb-range.css +10 -0
- package/components/slider/style/dnb-range.scss +6 -0
- package/components/slider/style/dnb-slider.css +211 -21
- package/components/slider/style/dnb-slider.min.css +1 -1
- package/components/slider/style/dnb-slider.scss +1 -0
- package/components/slider/types.d.ts +13 -5
- package/components/space/Space.d.ts +3 -2
- package/components/space/Space.js +18 -23
- package/components/step-indicator/StepIndicatorContext.js +4 -3
- package/components/step-indicator/StepIndicatorSidebar.js +2 -2
- package/components/step-indicator/StepIndicatorTriggerButton.js +2 -2
- package/components/step-indicator/style/dnb-step-indicator.css +14 -14
- package/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
- package/components/switch/Switch.js +4 -3
- package/components/table/Table.d.ts +2 -2
- package/components/table/Table.js +2 -3
- package/components/tabs/Tabs.js +3 -3
- package/components/tabs/TabsContentWrapper.js +1 -1
- package/components/tag/Tag.d.ts +10 -3
- package/components/tag/Tag.js +9 -9
- package/components/tag/TagGroup.d.ts +2 -2
- package/components/tag/TagGroup.js +6 -7
- package/components/tag/style/dnb-tag.css +14 -14
- package/components/tag/style/dnb-tag.min.css +1 -1
- package/components/textarea/Textarea.js +4 -3
- package/components/timeline/Timeline.d.ts +2 -2
- package/components/timeline/Timeline.js +2 -3
- package/components/timeline/TimelineItem.js +2 -2
- package/components/toggle-button/ToggleButton.js +4 -2
- package/components/toggle-button/ToggleButtonGroup.js +3 -2
- package/components/toggle-button/style/dnb-toggle-button.css +14 -14
- package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/components/tooltip/Tooltip.d.ts +8 -154
- package/components/tooltip/Tooltip.js +63 -150
- package/components/tooltip/TooltipContainer.d.ts +15 -68
- package/components/tooltip/TooltipContainer.js +188 -313
- package/components/tooltip/TooltipHelpers.d.ts +31 -1
- package/components/tooltip/TooltipHelpers.js +67 -1
- package/components/tooltip/TooltipPortal.d.ts +13 -31
- package/components/tooltip/TooltipPortal.js +139 -200
- package/components/tooltip/TooltipWithEvents.d.ts +11 -35
- package/components/tooltip/TooltipWithEvents.js +148 -191
- package/components/tooltip/style/_tooltip.scss +8 -7
- package/components/tooltip/style/dnb-tooltip.css +14 -14
- package/components/tooltip/style/dnb-tooltip.min.css +1 -1
- package/components/tooltip/types.d.ts +28 -0
- package/components/tooltip/types.js +1 -0
- package/components/visually-hidden/VisuallyHidden.d.ts +2 -3
- package/components/visually-hidden/VisuallyHidden.js +2 -17
- package/elements/Anchor.d.ts +5 -3
- package/elements/Anchor.js +4 -5
- package/elements/Dd.d.ts +10 -26
- package/elements/Dd.js +0 -22
- package/elements/Dl.d.ts +16 -26
- package/elements/Dl.js +19 -23
- package/elements/Dt.d.ts +10 -26
- package/elements/Dt.js +0 -22
- package/elements/Element.d.ts +4 -2
- package/elements/Element.js +2 -3
- package/elements/Li.d.ts +6 -26
- package/elements/Li.js +0 -20
- package/elements/Link.d.ts +3 -1
- package/elements/Ol.d.ts +20 -29
- package/elements/Ol.js +0 -28
- package/elements/Ul.d.ts +20 -30
- package/elements/Ul.js +0 -30
- package/elements/lib.d.ts +19 -8
- package/es/components/HeightAnimation.d.ts +3 -0
- package/es/components/HeightAnimation.js +3 -0
- package/es/components/accordion/Accordion.js +3 -3
- package/es/components/accordion/AccordionHeader.js +2 -2
- package/es/components/accordion/AccordionProvider.js +3 -2
- package/es/components/accordion/style/_accordion.scss +14 -15
- package/es/components/accordion/style/dnb-accordion.css +9 -6
- package/es/components/accordion/style/dnb-accordion.min.css +1 -1
- package/es/components/accordion/style/themes/dnb-accordion-theme-ui.css +100 -94
- package/es/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +3 -3
- package/es/components/accordion/style/themes/dnb-accordion-theme-ui.scss +36 -39
- package/es/components/autocomplete/Autocomplete.d.ts +0 -10
- package/es/components/autocomplete/Autocomplete.js +3 -5
- package/es/components/autocomplete/style/_autocomplete.scss +2 -2
- package/es/components/autocomplete/style/dnb-autocomplete.css +46 -46
- package/es/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
- package/es/components/avatar/Avatar.d.ts +5 -3
- package/es/components/avatar/Avatar.js +2 -3
- package/es/components/avatar/AvatarGroup.d.ts +2 -2
- package/es/components/avatar/AvatarGroup.js +4 -5
- package/es/components/avatar/style/themes/dnb-avatar-theme-ui.css +0 -10
- package/es/components/avatar/style/themes/dnb-avatar-theme-ui.min.css +1 -1
- package/es/components/avatar/style/themes/dnb-avatar-theme-ui.scss +0 -8
- package/es/components/badge/Badge.d.ts +3 -3
- package/es/components/badge/Badge.js +2 -9
- package/es/components/breadcrumb/Breadcrumb.d.ts +14 -8
- package/es/components/breadcrumb/Breadcrumb.js +26 -22
- package/es/components/breadcrumb/BreadcrumbItem.d.ts +2 -0
- package/es/components/breadcrumb/BreadcrumbItem.js +12 -7
- package/es/components/breadcrumb/BreadcrumbMultiple.d.ts +10 -0
- package/es/components/breadcrumb/BreadcrumbMultiple.js +31 -0
- package/es/components/breadcrumb/style/_breadcrumb.scss +25 -12
- package/es/components/breadcrumb/style/dnb-breadcrumb.css +933 -17
- package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
- package/es/components/breadcrumb/style/dnb-breadcrumb.scss +4 -0
- package/es/components/button/Button.d.ts +7 -9
- package/es/components/button/Button.js +5 -4
- package/es/components/button/style/dnb-button.css +14 -14
- package/es/components/button/style/dnb-button.min.css +1 -1
- package/es/components/button/style/themes/dnb-button-theme-eiendom.css +2 -2
- package/es/components/button/style/themes/dnb-button-theme-eiendom.min.css +1 -1
- package/es/components/button/style/themes/dnb-button-theme-ui.css +2 -2
- package/es/components/button/style/themes/dnb-button-theme-ui.min.css +1 -1
- package/es/components/button/style/themes/dnb-button-theme-ui.scss +2 -2
- package/es/components/checkbox/Checkbox.js +4 -3
- package/es/components/date-picker/DatePicker.js +4 -3
- package/es/components/date-picker/style/dnb-date-picker.css +56 -56
- package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
- package/es/components/dialog/Dialog.js +2 -2
- package/es/components/dialog/parts/DialogBody.d.ts +2 -1
- package/es/components/dialog/style/_dialog.scss +1 -1
- package/es/components/dialog/style/dnb-dialog.css +26 -26
- package/es/components/dialog/style/dnb-dialog.min.css +1 -1
- package/es/components/drawer/DrawerContent.d.ts +1 -1
- package/es/components/drawer/DrawerContent.js +2 -3
- package/es/components/drawer/parts/DrawerBody.d.ts +2 -1
- package/es/components/drawer/style/dnb-drawer.css +22 -22
- package/es/components/drawer/style/dnb-drawer.min.css +1 -1
- package/es/components/dropdown/Dropdown.d.ts +0 -4
- package/es/components/dropdown/Dropdown.js +4 -3
- package/es/components/dropdown/style/dnb-dropdown.css +14 -14
- package/es/components/dropdown/style/dnb-dropdown.min.css +1 -1
- package/es/components/form-label/FormLabel.js +4 -3
- package/es/components/form-row/FormRow.js +9 -4
- package/es/components/form-row/style/_form-row.scss +4 -1
- package/es/components/form-row/style/dnb-form-row.css +4 -3
- package/es/components/form-row/style/dnb-form-row.min.css +1 -1
- package/es/components/form-set/FormSet.js +2 -2
- package/es/components/form-status/FormStatus.js +4 -3
- package/es/components/global-error/style/dnb-global-error.css +14 -14
- package/es/components/global-error/style/dnb-global-error.min.css +1 -1
- package/es/components/global-status/GlobalStatus.js +4 -4
- package/es/components/global-status/style/dnb-global-status.css +24 -38
- package/es/components/global-status/style/dnb-global-status.min.css +1 -1
- package/es/components/height-animation/HeightAnimation.d.ts +27 -0
- package/es/components/height-animation/HeightAnimation.js +56 -0
- package/es/components/height-animation/index.d.ts +3 -0
- package/es/components/height-animation/index.js +3 -0
- package/es/components/height-animation/style/_height-animation.scss +12 -0
- package/es/components/height-animation/style/dnb-height-animation.css +81 -0
- package/es/components/height-animation/style/dnb-height-animation.min.css +1 -0
- package/es/components/height-animation/style/dnb-height-animation.scss +12 -0
- package/es/components/height-animation/style/index.d.ts +1 -0
- package/es/components/height-animation/style/index.js +1 -0
- package/es/components/height-animation/style.d.ts +1 -0
- package/es/components/height-animation/style.js +1 -0
- package/es/components/height-animation/useHeightAnimation.d.ts +40 -0
- package/es/components/height-animation/useHeightAnimation.js +168 -0
- package/es/components/help-button/HelpButton.d.ts +10 -236
- package/es/components/help-button/HelpButton.js +28 -57
- package/es/components/help-button/HelpButtonInstance.d.ts +5 -100
- package/es/components/help-button/HelpButtonInstance.js +55 -74
- package/es/components/help-button/style/dnb-help-button.css +14 -14
- package/es/components/help-button/style/dnb-help-button.min.css +1 -1
- package/es/components/icon/Icon.js +5 -4
- package/es/components/icon-primary/IconPrimary.js +4 -3
- package/es/components/index.d.ts +2 -1
- package/es/components/index.js +2 -1
- package/es/components/info-card/InfoCard.d.ts +2 -4
- package/es/components/info-card/InfoCard.js +6 -8
- package/es/components/input/Input.js +5 -4
- package/es/components/input/InputPassword.js +4 -3
- package/es/components/input/style/dnb-input.css +28 -28
- package/es/components/input/style/dnb-input.min.css +1 -1
- package/es/components/input-masked/style/dnb-input-masked.css +28 -28
- package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/es/components/lib.d.ts +27 -9
- package/es/components/lib.js +3 -1
- package/es/components/logo/Logo.d.ts +5 -0
- package/es/components/logo/Logo.js +8 -4
- package/es/components/logo/style/_logo.scss +3 -0
- package/es/components/logo/style/dnb-logo.css +2 -0
- package/es/components/logo/style/dnb-logo.min.css +1 -1
- package/es/components/modal/Modal.d.ts +2 -2
- package/es/components/modal/Modal.js +5 -3
- package/es/components/modal/ModalRoot.d.ts +1 -1
- package/es/components/modal/parts/CloseButton.js +2 -2
- package/es/components/modal/style/_modal.scss +1 -2
- package/es/components/modal/style/dnb-modal.css +22 -22
- package/es/components/modal/style/dnb-modal.min.css +1 -1
- package/es/components/number-format/NumberFormat.js +3 -3
- package/es/components/number-format/style/dnb-number-format.css +14 -14
- package/es/components/number-format/style/dnb-number-format.min.css +1 -1
- package/es/components/number-format/useNumberFormat.js +2 -2
- package/es/components/pagination/Pagination.d.ts +0 -6
- package/es/components/pagination/Pagination.js +3 -4
- package/es/components/pagination/PaginationInfinity.js +0 -26
- package/es/components/pagination/PaginationProvider.js +11 -5
- package/es/components/pagination/style/dnb-pagination.css +14 -14
- package/es/components/pagination/style/dnb-pagination.min.css +1 -1
- package/es/components/progress-indicator/ProgressIndicator.js +3 -2
- package/es/components/radio/Radio.js +5 -3
- package/es/components/radio/RadioGroup.js +3 -2
- package/es/components/section/Section.d.ts +30 -83
- package/es/components/section/Section.js +35 -70
- package/es/components/section/style/_section.scss +8 -25
- package/es/components/section/style/dnb-section.css +10 -24
- package/es/components/section/style/dnb-section.min.css +1 -1
- package/es/components/section/style/themes/dnb-section-theme-ui.scss +1 -5
- package/es/components/skeleton/Skeleton.js +2 -2
- package/es/components/slider/Slider.d.ts +2 -3
- package/es/components/slider/SliderHelpers.d.ts +6 -4
- package/es/components/slider/SliderHelpers.js +16 -14
- package/es/components/slider/SliderInstance.js +8 -7
- package/es/components/slider/SliderProvider.d.ts +2 -2
- package/es/components/slider/SliderProvider.js +24 -15
- package/es/components/slider/SliderThumb.js +97 -62
- package/es/components/slider/SliderTrack.js +10 -12
- package/es/components/slider/hooks/useSliderEvents.d.ts +1 -3
- package/es/components/slider/hooks/useSliderEvents.js +19 -32
- package/es/components/slider/style/_range.scss +6 -0
- package/es/components/slider/style/_slider.scss +8 -5
- package/es/components/slider/style/dnb-range.css +10 -0
- package/es/components/slider/style/dnb-range.scss +6 -0
- package/es/components/slider/style/dnb-slider.css +211 -21
- package/es/components/slider/style/dnb-slider.min.css +1 -1
- package/es/components/slider/style/dnb-slider.scss +1 -0
- package/es/components/slider/types.d.ts +13 -5
- package/es/components/space/Space.d.ts +3 -2
- package/es/components/space/Space.js +20 -25
- package/es/components/step-indicator/StepIndicatorContext.js +4 -3
- package/es/components/step-indicator/StepIndicatorSidebar.js +2 -2
- package/es/components/step-indicator/StepIndicatorTriggerButton.js +2 -2
- package/es/components/step-indicator/style/dnb-step-indicator.css +14 -14
- package/es/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
- package/es/components/switch/Switch.js +4 -3
- package/es/components/table/Table.d.ts +2 -2
- package/es/components/table/Table.js +2 -3
- package/es/components/tabs/Tabs.js +3 -3
- package/es/components/tabs/TabsContentWrapper.js +1 -1
- package/es/components/tag/Tag.d.ts +10 -3
- package/es/components/tag/Tag.js +10 -10
- package/es/components/tag/TagGroup.d.ts +2 -2
- package/es/components/tag/TagGroup.js +4 -5
- package/es/components/tag/style/dnb-tag.css +14 -14
- package/es/components/tag/style/dnb-tag.min.css +1 -1
- package/es/components/textarea/Textarea.js +4 -3
- package/es/components/timeline/Timeline.d.ts +2 -2
- package/es/components/timeline/Timeline.js +2 -3
- package/es/components/timeline/TimelineItem.js +2 -2
- package/es/components/toggle-button/ToggleButton.js +4 -2
- package/es/components/toggle-button/ToggleButtonGroup.js +3 -2
- package/es/components/toggle-button/style/dnb-toggle-button.css +14 -14
- package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/es/components/tooltip/Tooltip.d.ts +8 -154
- package/es/components/tooltip/Tooltip.js +57 -122
- package/es/components/tooltip/TooltipContainer.d.ts +15 -68
- package/es/components/tooltip/TooltipContainer.js +162 -262
- package/es/components/tooltip/TooltipHelpers.d.ts +31 -1
- package/es/components/tooltip/TooltipHelpers.js +66 -1
- package/es/components/tooltip/TooltipPortal.d.ts +13 -31
- package/es/components/tooltip/TooltipPortal.js +122 -163
- package/es/components/tooltip/TooltipWithEvents.d.ts +11 -35
- package/es/components/tooltip/TooltipWithEvents.js +126 -150
- package/es/components/tooltip/style/_tooltip.scss +8 -7
- package/es/components/tooltip/style/dnb-tooltip.css +14 -14
- package/es/components/tooltip/style/dnb-tooltip.min.css +1 -1
- package/es/components/tooltip/types.d.ts +28 -0
- package/es/components/tooltip/types.js +1 -0
- package/es/components/visually-hidden/VisuallyHidden.d.ts +2 -3
- package/es/components/visually-hidden/VisuallyHidden.js +2 -10
- package/es/elements/Anchor.d.ts +5 -3
- package/es/elements/Anchor.js +4 -5
- package/es/elements/Dd.d.ts +10 -26
- package/es/elements/Dd.js +0 -15
- package/es/elements/Dl.d.ts +16 -26
- package/es/elements/Dl.js +27 -19
- package/es/elements/Dt.d.ts +10 -26
- package/es/elements/Dt.js +0 -15
- package/es/elements/Element.d.ts +4 -2
- package/es/elements/Element.js +2 -3
- package/es/elements/Li.d.ts +6 -26
- package/es/elements/Li.js +0 -15
- package/es/elements/Link.d.ts +3 -1
- package/es/elements/Ol.d.ts +20 -29
- package/es/elements/Ol.js +0 -21
- package/es/elements/Ul.d.ts +20 -30
- package/es/elements/Ul.js +0 -23
- package/es/elements/lib.d.ts +19 -8
- package/es/extensions/payment-card/PaymentCard.js +3 -3
- package/es/fragments/drawer-list/DrawerList.js +3 -2
- package/es/fragments/drawer-list/style/_drawer-list.scss +1 -1
- package/es/fragments/lib.d.ts +8 -1
- package/es/fragments/scroll-view/ScrollView.d.ts +14 -7
- package/es/fragments/scroll-view/ScrollView.js +30 -52
- package/es/icons/add.js +5 -2
- package/es/icons/add_circled.js +5 -2
- package/es/icons/add_circled_medium.js +5 -2
- package/es/icons/add_medium.js +5 -2
- package/es/icons/boat.js +10 -3
- package/es/icons/boat_medium.js +10 -3
- package/es/icons/calculator.js +10 -3
- package/es/icons/card.js +4 -2
- package/es/icons/card_medium.js +4 -2
- package/es/icons/cat_medium.js +10 -3
- package/es/icons/chatbot.js +5 -2
- package/es/icons/chatbot_medium.js +5 -2
- package/es/icons/chip.js +10 -3
- package/es/icons/chip_medium.js +10 -3
- package/es/icons/cloud_download.js +10 -3
- package/es/icons/cloud_download_medium.js +10 -3
- package/es/icons/cloud_rain.js +10 -3
- package/es/icons/cloud_rain_medium.js +10 -3
- package/es/icons/cloud_sync.js +10 -3
- package/es/icons/cloud_sync_medium.js +10 -3
- package/es/icons/cloud_transfer.js +10 -3
- package/es/icons/cloud_transfer_medium.js +10 -3
- package/es/icons/cloud_upload.js +10 -3
- package/es/icons/cloud_upload_medium.js +10 -3
- package/es/icons/cookie.js +10 -3
- package/es/icons/cookie_medium.js +10 -3
- package/es/icons/diamond.js +10 -3
- package/es/icons/dog.js +10 -3
- package/es/icons/dog_medium.js +10 -3
- package/es/icons/exclamation_circled.js +5 -2
- package/es/icons/exclamation_circled_medium.js +5 -2
- package/es/icons/file_jpg.d.ts +2 -0
- package/es/icons/file_jpg.js +18 -0
- package/es/icons/file_jpg_medium.d.ts +2 -0
- package/es/icons/file_jpg_medium.js +24 -0
- package/es/icons/file_png.d.ts +2 -0
- package/es/icons/file_png.js +18 -0
- package/es/icons/file_png_medium.d.ts +2 -0
- package/es/icons/file_png_medium.js +24 -0
- package/es/icons/fish.d.ts +2 -0
- package/es/icons/fish.js +26 -0
- package/es/icons/fish_medium.d.ts +2 -0
- package/es/icons/fish_medium.js +26 -0
- package/es/icons/hourglass.js +10 -3
- package/es/icons/icons-meta.json +71 -1
- package/es/icons/icons-pdf.lock +1098 -968
- package/es/icons/icons-svg.lock +1098 -968
- package/es/icons/index.d.ts +11 -1
- package/es/icons/index.js +11 -1
- package/es/icons/instagram.js +10 -3
- package/es/icons/linkedin.js +10 -3
- package/es/icons/linkedin_medium.js +10 -3
- package/es/icons/loupe.js +4 -2
- package/es/icons/loupe_medium.js +4 -2
- package/es/icons/mastercard_card.js +4 -2
- package/es/icons/mastercard_card_medium.js +4 -2
- package/es/icons/news.js +10 -3
- package/es/icons/news_medium.js +10 -3
- package/es/icons/newspaper.d.ts +2 -0
- package/es/icons/newspaper.js +21 -0
- package/es/icons/newspaper_medium.d.ts +2 -0
- package/es/icons/newspaper_medium.js +21 -0
- package/es/icons/phone.js +10 -3
- package/es/icons/phone_medium.js +10 -3
- package/es/icons/photo.js +10 -3
- package/es/icons/photo_medium.js +10 -3
- package/es/icons/pin.js +10 -3
- package/es/icons/pin_medium.js +10 -3
- package/es/icons/play.js +10 -3
- package/es/icons/savings_account.js +5 -2
- package/es/icons/secondary_icons.d.ts +6 -1
- package/es/icons/secondary_icons.js +6 -1
- package/es/icons/secondary_icons_medium.d.ts +6 -1
- package/es/icons/secondary_icons_medium.js +6 -1
- package/es/icons/sort.d.ts +2 -0
- package/es/icons/sort.js +21 -0
- package/es/icons/sort_medium.d.ts +2 -0
- package/es/icons/sort_medium.js +21 -0
- package/es/icons/subtract.js +5 -2
- package/es/icons/subtract_circled.js +5 -2
- package/es/icons/subtract_circled_medium.js +5 -2
- package/es/icons/subtract_medium.js +5 -2
- package/es/icons/tag.js +13 -10
- package/es/icons/tag_medium.js +13 -10
- package/es/icons/thumbs_down.js +10 -3
- package/es/icons/thumbs_up.js +10 -3
- package/es/icons/video.js +10 -3
- package/es/icons/video_medium.js +10 -3
- package/es/icons/wallet_medium.js +4 -2
- package/es/index.d.ts +2 -1
- package/es/index.js +2 -1
- package/es/shared/AnimateHeight.d.ts +46 -32
- package/es/shared/AnimateHeight.js +68 -38
- package/es/shared/Context.d.ts +9 -3
- package/es/shared/Eufemia.js +1 -1
- package/es/shared/MediaQueryUtils.d.ts +5 -1
- package/es/shared/MediaQueryUtils.js +4 -3
- package/es/shared/component-helper.d.ts +7 -18
- package/es/shared/component-helper.js +7 -167
- package/es/shared/helpers/EventEmitter.d.ts +46 -0
- package/es/shared/{EventEmitter.js → helpers/EventEmitter.js} +27 -21
- package/es/shared/helpers/InteractionInvalidation.d.ts +30 -0
- package/es/shared/helpers/InteractionInvalidation.js +141 -0
- package/{cjs/shared/hooks/usePropsWithContext.d.ts → es/shared/helpers/extendPropsWithContext.d.ts} +2 -3
- package/es/shared/{hooks/usePropsWithContext.js → helpers/extendPropsWithContext.js} +22 -10
- package/es/shared/helpers/filterValidProps.d.ts +1 -1
- package/es/shared/helpers/filterValidProps.js +1 -1
- package/es/shared/helpers/getPreviousSibling.d.ts +10 -0
- package/es/shared/helpers/getPreviousSibling.js +33 -0
- package/es/shared/helpers/useEventEmitter.d.ts +14 -0
- package/es/shared/helpers/useEventEmitter.js +30 -0
- package/es/shared/helpers.d.ts +2 -0
- package/es/shared/interfaces.d.ts +4 -23
- package/es/shared/interfaces.js +1 -1
- package/es/shared/locales/en-GB.d.ts +3 -0
- package/es/shared/locales/en-GB.js +3 -0
- package/es/shared/locales/en-US.d.ts +3 -0
- package/es/shared/locales/index.d.ts +6 -0
- package/es/shared/locales/nb-NO.d.ts +3 -0
- package/es/shared/locales/nb-NO.js +3 -0
- package/es/shared/types.d.ts +35 -0
- package/es/shared/types.js +1 -0
- package/es/shared/useMediaQuery.js +15 -4
- package/es/style/core/helper-classes/helper-classes.scss +4 -0
- package/es/style/dnb-ui-basis.css +3 -0
- package/es/style/dnb-ui-basis.min.css +1 -1
- package/es/style/dnb-ui-components.css +112 -84
- package/es/style/dnb-ui-components.min.css +5 -5
- package/es/style/dnb-ui-components.scss +1 -0
- package/es/style/dnb-ui-core.css +3 -0
- package/es/style/dnb-ui-core.min.css +1 -1
- package/es/style/dnb-ui-elements.css +25 -4
- package/es/style/dnb-ui-elements.min.css +1 -1
- package/es/style/dnb-ui-fragments.css +1 -1
- package/es/style/dnb-ui-fragments.min.css +1 -1
- package/es/style/dnb-ui-tags.css +50 -8
- package/es/style/dnb-ui-tags.min.css +1 -1
- package/es/style/elements/lists.scss +27 -5
- package/es/style/themes/theme-eiendom/dnb-theme-eiendom.css +129 -112
- package/es/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +5 -5
- package/es/style/themes/theme-ui/dnb-theme-ui.css +127 -110
- package/es/style/themes/theme-ui/dnb-theme-ui.min.css +5 -5
- package/esm/dnb-ui-basis.min.mjs +2 -2
- package/esm/dnb-ui-components.min.mjs +3 -3
- package/esm/dnb-ui-elements.min.mjs +4 -4
- package/esm/dnb-ui-extensions.min.mjs +4 -4
- package/esm/dnb-ui-icons.min.mjs +1 -1
- package/esm/dnb-ui-lib.min.mjs +4 -4
- package/esm/dnb-ui-web-components.min.mjs +4 -4
- package/extensions/payment-card/PaymentCard.js +3 -3
- package/fragments/drawer-list/DrawerList.js +3 -2
- package/fragments/drawer-list/style/_drawer-list.scss +1 -1
- package/fragments/lib.d.ts +8 -1
- package/fragments/scroll-view/ScrollView.d.ts +14 -7
- package/fragments/scroll-view/ScrollView.js +31 -79
- package/icons/add.js +5 -2
- package/icons/add_circled.js +5 -2
- package/icons/add_circled_medium.js +5 -2
- package/icons/add_medium.js +5 -2
- package/icons/boat.js +10 -3
- package/icons/boat_medium.js +10 -3
- package/icons/calculator.js +10 -3
- package/icons/card.js +4 -2
- package/icons/card_medium.js +4 -2
- package/icons/cat_medium.js +10 -3
- package/icons/chatbot.js +5 -2
- package/icons/chatbot_medium.js +5 -2
- package/icons/chip.js +10 -3
- package/icons/chip_medium.js +10 -3
- package/icons/cloud_download.js +10 -3
- package/icons/cloud_download_medium.js +10 -3
- package/icons/cloud_rain.js +10 -3
- package/icons/cloud_rain_medium.js +10 -3
- package/icons/cloud_sync.js +10 -3
- package/icons/cloud_sync_medium.js +10 -3
- package/icons/cloud_transfer.js +10 -3
- package/icons/cloud_transfer_medium.js +10 -3
- package/icons/cloud_upload.js +10 -3
- package/icons/cloud_upload_medium.js +10 -3
- package/icons/cookie.js +10 -3
- package/icons/cookie_medium.js +10 -3
- package/icons/diamond.js +10 -3
- package/icons/dog.js +10 -3
- package/icons/dog_medium.js +10 -3
- package/icons/exclamation_circled.js +5 -2
- package/icons/exclamation_circled_medium.js +5 -2
- package/icons/file_jpg.d.ts +2 -0
- package/icons/file_jpg.js +20 -0
- package/icons/file_jpg_medium.d.ts +2 -0
- package/icons/file_jpg_medium.js +26 -0
- package/icons/file_png.d.ts +2 -0
- package/icons/file_png.js +20 -0
- package/icons/file_png_medium.d.ts +2 -0
- package/icons/file_png_medium.js +26 -0
- package/icons/fish.d.ts +2 -0
- package/icons/fish.js +28 -0
- package/icons/fish_medium.d.ts +2 -0
- package/icons/fish_medium.js +28 -0
- package/icons/hourglass.js +10 -3
- package/icons/icons-meta.json +71 -1
- package/icons/icons-pdf.lock +1098 -968
- package/icons/icons-svg.lock +1098 -968
- package/icons/index.d.ts +11 -1
- package/icons/index.js +11 -1
- package/icons/instagram.js +10 -3
- package/icons/linkedin.js +10 -3
- package/icons/linkedin_medium.js +10 -3
- package/icons/loupe.js +4 -2
- package/icons/loupe_medium.js +4 -2
- package/icons/mastercard_card.js +4 -2
- package/icons/mastercard_card_medium.js +4 -2
- package/icons/news.js +10 -3
- package/icons/news_medium.js +10 -3
- package/icons/newspaper.d.ts +2 -0
- package/icons/newspaper.js +23 -0
- package/icons/newspaper_medium.d.ts +2 -0
- package/icons/newspaper_medium.js +23 -0
- package/icons/phone.js +10 -3
- package/icons/phone_medium.js +10 -3
- package/icons/photo.js +10 -3
- package/icons/photo_medium.js +10 -3
- package/icons/pin.js +10 -3
- package/icons/pin_medium.js +10 -3
- package/icons/play.js +10 -3
- package/icons/savings_account.js +5 -2
- package/icons/secondary_icons.d.ts +6 -1
- package/icons/secondary_icons.js +6 -1
- package/icons/secondary_icons_medium.d.ts +6 -1
- package/icons/secondary_icons_medium.js +6 -1
- package/icons/sort.d.ts +2 -0
- package/icons/sort.js +23 -0
- package/icons/sort_medium.d.ts +2 -0
- package/icons/sort_medium.js +23 -0
- package/icons/subtract.js +5 -2
- package/icons/subtract_circled.js +5 -2
- package/icons/subtract_circled_medium.js +5 -2
- package/icons/subtract_medium.js +5 -2
- package/icons/tag.js +13 -10
- package/icons/tag_medium.js +13 -10
- package/icons/thumbs_down.js +10 -3
- package/icons/thumbs_up.js +10 -3
- package/icons/video.js +10 -3
- package/icons/video_medium.js +10 -3
- package/icons/wallet_medium.js +4 -2
- package/index.d.ts +2 -1
- package/index.js +2 -1
- package/package.json +1 -1
- package/shared/AnimateHeight.d.ts +46 -32
- package/shared/AnimateHeight.js +102 -66
- package/shared/Context.d.ts +9 -3
- package/shared/Eufemia.js +1 -1
- package/shared/MediaQueryUtils.d.ts +5 -1
- package/shared/MediaQueryUtils.js +5 -3
- package/shared/component-helper.d.ts +7 -18
- package/shared/component-helper.js +18 -248
- package/shared/helpers/EventEmitter.d.ts +46 -0
- package/shared/{EventEmitter.js → helpers/EventEmitter.js} +30 -25
- package/shared/helpers/InteractionInvalidation.d.ts +30 -0
- package/shared/helpers/InteractionInvalidation.js +215 -0
- package/{es/shared/hooks/usePropsWithContext.d.ts → shared/helpers/extendPropsWithContext.d.ts} +2 -3
- package/shared/{hooks/usePropsWithContext.js → helpers/extendPropsWithContext.js} +36 -17
- package/shared/helpers/filterValidProps.d.ts +1 -1
- package/shared/helpers/filterValidProps.js +1 -1
- package/shared/helpers/getPreviousSibling.d.ts +10 -0
- package/shared/helpers/getPreviousSibling.js +35 -0
- package/shared/helpers/useEventEmitter.d.ts +14 -0
- package/shared/helpers/useEventEmitter.js +45 -0
- package/shared/helpers.d.ts +2 -0
- package/shared/interfaces.d.ts +4 -23
- package/shared/interfaces.js +1 -1
- package/shared/locales/en-GB.d.ts +3 -0
- package/shared/locales/en-GB.js +3 -0
- package/shared/locales/en-US.d.ts +3 -0
- package/shared/locales/index.d.ts +6 -0
- package/shared/locales/nb-NO.d.ts +3 -0
- package/shared/locales/nb-NO.js +3 -0
- package/shared/types.d.ts +35 -0
- package/shared/types.js +1 -0
- package/shared/useMediaQuery.js +18 -13
- package/style/core/helper-classes/helper-classes.scss +4 -0
- package/style/dnb-ui-basis.css +3 -0
- package/style/dnb-ui-basis.min.css +1 -1
- package/style/dnb-ui-components.css +112 -84
- package/style/dnb-ui-components.min.css +5 -5
- package/style/dnb-ui-components.scss +1 -0
- package/style/dnb-ui-core.css +3 -0
- package/style/dnb-ui-core.min.css +1 -1
- package/style/dnb-ui-elements.css +25 -4
- package/style/dnb-ui-elements.min.css +1 -1
- package/style/dnb-ui-fragments.css +1 -1
- package/style/dnb-ui-fragments.min.css +1 -1
- package/style/dnb-ui-tags.css +50 -8
- package/style/dnb-ui-tags.min.css +1 -1
- package/style/elements/lists.scss +27 -5
- package/style/themes/theme-eiendom/dnb-theme-eiendom.css +129 -112
- package/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +5 -5
- package/style/themes/theme-ui/dnb-theme-ui.css +127 -110
- package/style/themes/theme-ui/dnb-theme-ui.min.css +5 -5
- package/umd/dnb-ui-basis.min.js +3 -3
- package/umd/dnb-ui-components.min.js +4 -4
- package/umd/dnb-ui-elements.min.js +5 -5
- package/umd/dnb-ui-extensions.min.js +5 -5
- package/umd/dnb-ui-icons.min.js +1 -1
- package/umd/dnb-ui-lib.min.js +5 -5
- package/umd/dnb-ui-web-components.min.js +5 -5
- package/cjs/shared/EventEmitter.d.ts +0 -27
- package/cjs/shared/hooks/index.d.ts +0 -1
- package/cjs/shared/hooks/index.js +0 -13
- package/es/shared/EventEmitter.d.ts +0 -27
- package/es/shared/hooks/index.d.ts +0 -1
- package/es/shared/hooks/index.js +0 -1
- package/shared/EventEmitter.d.ts +0 -27
- package/shared/hooks/index.d.ts +0 -1
- package/shared/hooks/index.js +0 -1
|
@@ -110,21 +110,23 @@ export const closestIndex = (goal, array) => {
|
|
|
110
110
|
const res = [...array].sort((a, b) => Math.abs(goal - a) - Math.abs(goal - b))[0];
|
|
111
111
|
return array.findIndex(num => num === res);
|
|
112
112
|
};
|
|
113
|
-
export const
|
|
114
|
-
if (
|
|
115
|
-
|
|
113
|
+
export const getFormattedNumber = (value, numberFormat) => {
|
|
114
|
+
if (numberFormat) {
|
|
115
|
+
if (typeof numberFormat === 'function') {
|
|
116
|
+
const number = numberFormat(value);
|
|
117
|
+
return {
|
|
118
|
+
number,
|
|
119
|
+
aria: number
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
return format(value, _objectSpread(_objectSpread({}, numberFormat || {}), {}, {
|
|
124
|
+
returnAria: true
|
|
125
|
+
}));
|
|
116
126
|
}
|
|
117
127
|
|
|
118
|
-
return
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
const num = value;
|
|
122
|
-
const {
|
|
123
|
-
aria: humanNumber
|
|
124
|
-
} = numberFormat ? formatNumber(num, _objectSpread(_objectSpread({}, numberFormat || {}), {}, {
|
|
125
|
-
returnAria: true
|
|
126
|
-
})) : {
|
|
127
|
-
aria: null
|
|
128
|
+
return {
|
|
129
|
+
aria: null,
|
|
130
|
+
number: null
|
|
128
131
|
};
|
|
129
|
-
return String(humanNumber || value);
|
|
130
132
|
};
|
|
@@ -13,10 +13,10 @@ import Suffix from '../../shared/helpers/Suffix';
|
|
|
13
13
|
import Button from '../button/Button';
|
|
14
14
|
import FormLabel from '../form-label/FormLabel';
|
|
15
15
|
import FormStatus from '../form-status/FormStatus';
|
|
16
|
-
import { SliderMainTrack,
|
|
16
|
+
import { SliderMainTrack, SliderTrackBefore, SliderTrackAfter } from './SliderTrack';
|
|
17
17
|
import { SliderThumb } from './SliderThumb';
|
|
18
18
|
import { useSliderProps } from './hooks/useSliderProps';
|
|
19
|
-
import { clamp,
|
|
19
|
+
import { clamp, getFormattedNumber } from './SliderHelpers';
|
|
20
20
|
export function SliderInstance() {
|
|
21
21
|
const context = React.useContext(Context);
|
|
22
22
|
const {
|
|
@@ -24,6 +24,7 @@ export function SliderInstance() {
|
|
|
24
24
|
isVertical,
|
|
25
25
|
showButtons,
|
|
26
26
|
showStatus,
|
|
27
|
+
shouldAnimate,
|
|
27
28
|
allProps
|
|
28
29
|
} = useSliderProps();
|
|
29
30
|
const {
|
|
@@ -42,7 +43,7 @@ export function SliderInstance() {
|
|
|
42
43
|
className
|
|
43
44
|
} = allProps;
|
|
44
45
|
const mainParams = {
|
|
45
|
-
className: classnames("dnb-slider dnb-form-component", createSkeletonClass(null, skeleton), createSpacingClasses(allProps), className, isVertical && 'dnb-slider--vertical', disabled && 'dnb-slider__state--disabled', !showButtons && 'dnb-slider--no-buttons', isTrue(stretch) && 'dnb-slider--stretch', label && labelDirection && `dnb-slider__label--${labelDirection}`, showStatus && 'dnb-slider__form-status', status && `dnb-slider__status--${statusState}`)
|
|
46
|
+
className: classnames("dnb-slider dnb-form-component", createSkeletonClass(null, skeleton), createSpacingClasses(allProps), className, isVertical && 'dnb-slider--vertical', disabled && 'dnb-slider__state--disabled', shouldAnimate && 'dnb-slider__state--animate', !showButtons && 'dnb-slider--no-buttons', isTrue(stretch) && 'dnb-slider--stretch', label && labelDirection && `dnb-slider__label--${labelDirection}`, showStatus && 'dnb-slider__form-status', status && `dnb-slider__status--${statusState}`)
|
|
46
47
|
};
|
|
47
48
|
const subtractButton = showButtons ? _SubtractButton || (_SubtractButton = React.createElement(SubtractButton, null)) : null;
|
|
48
49
|
const addButton = showButtons ? _AddButton || (_AddButton = React.createElement(AddButton, null)) : null;
|
|
@@ -113,13 +114,13 @@ function SubtractButton() {
|
|
|
113
114
|
subtractParams['aria-hidden'] = attributes['aria-hidden'];
|
|
114
115
|
}
|
|
115
116
|
|
|
116
|
-
const humanNumber =
|
|
117
|
+
const humanNumber = getFormattedNumber(value, numberFormat);
|
|
117
118
|
return React.createElement(Button, _extends({
|
|
118
119
|
className: "dnb-slider__button dnb-slider__button--subtract",
|
|
119
120
|
variant: "secondary",
|
|
120
121
|
icon: "subtract",
|
|
121
122
|
size: "small",
|
|
122
|
-
"aria-label": subtractTitle === null || subtractTitle === void 0 ? void 0 : subtractTitle.replace('%s', humanNumber),
|
|
123
|
+
"aria-label": subtractTitle === null || subtractTitle === void 0 ? void 0 : subtractTitle.replace('%s', humanNumber.aria || String(value)),
|
|
123
124
|
on_click: onSubtractClickHandler,
|
|
124
125
|
disabled: disabled,
|
|
125
126
|
skeleton: skeleton
|
|
@@ -153,13 +154,13 @@ function AddButton() {
|
|
|
153
154
|
addParams['aria-hidden'] = attributes['aria-hidden'];
|
|
154
155
|
}
|
|
155
156
|
|
|
156
|
-
const humanNumber =
|
|
157
|
+
const humanNumber = getFormattedNumber(value, numberFormat);
|
|
157
158
|
return React.createElement(Button, _extends({
|
|
158
159
|
className: "dnb-slider__button dnb-slider__button--add",
|
|
159
160
|
variant: "secondary",
|
|
160
161
|
icon: "add",
|
|
161
162
|
size: "small",
|
|
162
|
-
"aria-label": addTitle === null || addTitle === void 0 ? void 0 : addTitle.replace('%s', humanNumber),
|
|
163
|
+
"aria-label": addTitle === null || addTitle === void 0 ? void 0 : addTitle.replace('%s', humanNumber.aria || String(value)),
|
|
163
164
|
on_click: onAddClickHandler,
|
|
164
165
|
disabled: disabled,
|
|
165
166
|
skeleton: skeleton
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type {
|
|
2
|
+
import type { SliderAllProps, SliderContextTypes } from './types';
|
|
3
3
|
export declare const SliderContext: React.Context<SliderContextTypes>;
|
|
4
|
-
export declare function SliderProvider(localProps:
|
|
4
|
+
export declare function SliderProvider(localProps: SliderAllProps): JSX.Element;
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
2
|
-
const _excluded = ["step", "label", "labelDirection", "labelSrOnly", "status", "statusState", "statusProps", "statusNoAnimation", "globalStatusId", "stretch", "suffix", "thumbTitle", "subtractTitle", "addTitle", "hideButtons", "multiThumbBehavior", "numberFormat", "skeleton", "max", "min", "disabled", "className", "id", "onInit", "onChange", "onDragStart", "onDragEnd", "vertical", "reverse", "value", "children"];
|
|
2
|
+
const _excluded = ["step", "label", "labelDirection", "labelSrOnly", "status", "statusState", "statusProps", "statusNoAnimation", "globalStatusId", "stretch", "suffix", "thumbTitle", "subtractTitle", "addTitle", "hideButtons", "multiThumbBehavior", "numberFormat", "tooltip", "alwaysShowTooltip", "skeleton", "max", "min", "disabled", "className", "id", "onInit", "onChange", "onDragStart", "onDragEnd", "vertical", "reverse", "value", "children"];
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import { includeValidProps } from '../../components/form-row/FormRowHelpers';
|
|
5
|
-
import {
|
|
6
|
-
import { warn, isTrue, makeUniqueId, dispatchCustomElementEvent, getStatusState } from '../../shared/component-helper';
|
|
5
|
+
import { warn, isTrue, makeUniqueId, dispatchCustomElementEvent, getStatusState, extendPropsWithContext } from '../../shared/component-helper';
|
|
7
6
|
import Context from '../../shared/Context';
|
|
8
|
-
import { closestIndex,
|
|
7
|
+
import { closestIndex, getFormattedNumber, getUpdatedValues, roundValue } from './SliderHelpers';
|
|
9
8
|
import { convertSnakeCaseProps } from '../../shared/helpers/withSnakeCaseProps';
|
|
10
9
|
const defaultProps = {
|
|
11
10
|
statusState: 'error',
|
|
@@ -19,7 +18,7 @@ const defaultProps = {
|
|
|
19
18
|
export const SliderContext = React.createContext(null);
|
|
20
19
|
export function SliderProvider(localProps) {
|
|
21
20
|
const context = React.useContext(Context);
|
|
22
|
-
const allProps = convertSnakeCaseProps(
|
|
21
|
+
const allProps = convertSnakeCaseProps(extendPropsWithContext(localProps, defaultProps, {
|
|
23
22
|
skeleton: context === null || context === void 0 ? void 0 : context.skeleton
|
|
24
23
|
}, context === null || context === void 0 ? void 0 : context.getTranslation(localProps).Slider, includeValidProps(context === null || context === void 0 ? void 0 : context.FormRow, {
|
|
25
24
|
vertical: null
|
|
@@ -48,6 +47,8 @@ export function SliderProvider(localProps) {
|
|
|
48
47
|
hideButtons,
|
|
49
48
|
multiThumbBehavior,
|
|
50
49
|
numberFormat,
|
|
50
|
+
tooltip,
|
|
51
|
+
alwaysShowTooltip,
|
|
51
52
|
skeleton,
|
|
52
53
|
max,
|
|
53
54
|
min,
|
|
@@ -66,9 +67,11 @@ export function SliderProvider(localProps) {
|
|
|
66
67
|
attributes = _objectWithoutProperties(allProps, _excluded);
|
|
67
68
|
|
|
68
69
|
const [value, setValue] = React.useState(_value);
|
|
70
|
+
const [externValue, updateExternValue] = React.useState(_value);
|
|
69
71
|
const realtimeValue = React.useRef(_value);
|
|
70
72
|
const [thumbState, setThumbState] = React.useState('initial');
|
|
71
73
|
const thumbIndex = React.useRef(-1);
|
|
74
|
+
const [shouldAnimate, updateAnimateState] = React.useState(false);
|
|
72
75
|
const [isVertical] = React.useState(isTrue(_vertical));
|
|
73
76
|
const [isReverse] = React.useState(isVertical ? !isTrue(_reverse) : isTrue(_reverse));
|
|
74
77
|
const isMulti = Array.isArray(value);
|
|
@@ -154,7 +157,7 @@ export function SliderProvider(localProps) {
|
|
|
154
157
|
};
|
|
155
158
|
|
|
156
159
|
if (numberFormat) {
|
|
157
|
-
obj.number =
|
|
160
|
+
obj.number = getFormattedNumber(numberValue, numberFormat).number;
|
|
158
161
|
}
|
|
159
162
|
|
|
160
163
|
dispatchCustomElementEvent(allProps, 'onChange', obj);
|
|
@@ -167,23 +170,28 @@ export function SliderProvider(localProps) {
|
|
|
167
170
|
React.useEffect(() => {
|
|
168
171
|
if (isMulti) {
|
|
169
172
|
const hasChanged = _value.some((val, i) => {
|
|
170
|
-
return val !==
|
|
173
|
+
return val !== externValue[i];
|
|
171
174
|
});
|
|
172
175
|
|
|
173
176
|
if (hasChanged) {
|
|
174
177
|
updateValue(_value);
|
|
178
|
+
updateExternValue(_value);
|
|
175
179
|
}
|
|
176
|
-
} else {
|
|
180
|
+
} else if (_value !== externValue) {
|
|
177
181
|
updateValue(_value);
|
|
182
|
+
updateExternValue(_value);
|
|
178
183
|
}
|
|
179
184
|
}, [_value, isMulti]);
|
|
180
185
|
const trackRef = React.useRef();
|
|
181
|
-
const
|
|
186
|
+
const animationTimeout = React.useRef();
|
|
187
|
+
|
|
188
|
+
const setShouldAnimate = state => {
|
|
189
|
+
updateAnimateState(state);
|
|
190
|
+
clearTimeout(animationTimeout.current);
|
|
182
191
|
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
jumpedTimeout.current = setTimeout(() => setThumbState('normal'), 100);
|
|
192
|
+
if (state) {
|
|
193
|
+
animationTimeout.current = setTimeout(() => updateAnimateState(false), 250);
|
|
194
|
+
}
|
|
187
195
|
};
|
|
188
196
|
|
|
189
197
|
const showStatus = getStatusState(status);
|
|
@@ -194,6 +202,7 @@ export function SliderProvider(localProps) {
|
|
|
194
202
|
isMulti,
|
|
195
203
|
isReverse,
|
|
196
204
|
isVertical,
|
|
205
|
+
shouldAnimate,
|
|
197
206
|
value,
|
|
198
207
|
values,
|
|
199
208
|
setValue,
|
|
@@ -207,8 +216,8 @@ export function SliderProvider(localProps) {
|
|
|
207
216
|
emitChange,
|
|
208
217
|
allProps,
|
|
209
218
|
trackRef,
|
|
210
|
-
|
|
211
|
-
|
|
219
|
+
setShouldAnimate,
|
|
220
|
+
animationTimeout
|
|
212
221
|
}
|
|
213
222
|
}, localProps.children);
|
|
214
223
|
}
|
|
@@ -1,25 +1,36 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
-
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
3
|
-
|
|
4
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
5
|
-
|
|
6
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
7
|
-
|
|
8
2
|
import React from 'react';
|
|
9
3
|
import { combineDescribedBy, combineLabelledBy, validateDOMAttributes } from '../../shared/component-helper';
|
|
10
4
|
import Button from '../button/Button';
|
|
5
|
+
import Tooltip from '../tooltip/Tooltip';
|
|
11
6
|
import { useSliderEvents } from './hooks/useSliderEvents';
|
|
12
7
|
import { useSliderProps } from './hooks/useSliderProps';
|
|
13
|
-
import { clamp,
|
|
8
|
+
import { clamp, getFormattedNumber } from './SliderHelpers';
|
|
14
9
|
export function SliderThumb() {
|
|
15
10
|
const {
|
|
16
|
-
values
|
|
11
|
+
values
|
|
12
|
+
} = useSliderProps();
|
|
13
|
+
return React.createElement(React.Fragment, null, values.map((value, i) => {
|
|
14
|
+
return React.createElement(Thumb, {
|
|
15
|
+
key: i,
|
|
16
|
+
value: value,
|
|
17
|
+
currentIndex: i
|
|
18
|
+
});
|
|
19
|
+
}));
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
function Thumb({
|
|
23
|
+
value,
|
|
24
|
+
currentIndex
|
|
25
|
+
}) {
|
|
26
|
+
const {
|
|
17
27
|
thumbIndex,
|
|
18
28
|
isVertical,
|
|
19
29
|
isReverse,
|
|
20
30
|
showStatus,
|
|
21
31
|
attributes,
|
|
22
|
-
allProps
|
|
32
|
+
allProps,
|
|
33
|
+
shouldAnimate
|
|
23
34
|
} = useSliderProps();
|
|
24
35
|
const {
|
|
25
36
|
id,
|
|
@@ -30,22 +41,41 @@ export function SliderThumb() {
|
|
|
30
41
|
skeleton,
|
|
31
42
|
disabled,
|
|
32
43
|
suffix,
|
|
33
|
-
numberFormat
|
|
44
|
+
numberFormat,
|
|
45
|
+
tooltip,
|
|
46
|
+
alwaysShowTooltip
|
|
34
47
|
} = allProps;
|
|
48
|
+
const index = thumbIndex.current;
|
|
49
|
+
let percent = clamp((value - min) * 100 / (max - min));
|
|
50
|
+
|
|
51
|
+
if (isReverse) {
|
|
52
|
+
percent = 100 - percent;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
const style = {
|
|
56
|
+
zIndex: index === currentIndex ? 4 : 3,
|
|
57
|
+
[`${isVertical ? 'top' : 'left'}`]: `${percent}%`
|
|
58
|
+
};
|
|
59
|
+
const {
|
|
60
|
+
number,
|
|
61
|
+
aria
|
|
62
|
+
} = getFormattedNumber(value, numberFormat);
|
|
63
|
+
const [showTooltip, setShowTooltip] = React.useState(false);
|
|
64
|
+
|
|
65
|
+
const onMouseEnterHandler = () => {
|
|
66
|
+
setShowTooltip(true);
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
const onMouseLeaveHandler = () => {
|
|
70
|
+
setShowTooltip(false);
|
|
71
|
+
};
|
|
72
|
+
|
|
35
73
|
const {
|
|
36
74
|
onThumbMouseDownHandler,
|
|
37
75
|
onThumbMouseUpHandler,
|
|
38
|
-
onThumbBlurHandler,
|
|
39
|
-
onThumbFocusHandler,
|
|
40
76
|
onHelperChangeHandler,
|
|
41
77
|
onHelperFocusHandler
|
|
42
78
|
} = useSliderEvents();
|
|
43
|
-
|
|
44
|
-
const thumbParams = _objectSpread({
|
|
45
|
-
onBlur: onThumbBlurHandler,
|
|
46
|
-
onFocus: onThumbFocusHandler
|
|
47
|
-
}, attributes);
|
|
48
|
-
|
|
49
79
|
const helperParams = {};
|
|
50
80
|
|
|
51
81
|
if (label) {
|
|
@@ -56,51 +86,56 @@ export function SliderThumb() {
|
|
|
56
86
|
helperParams['aria-describedby'] = combineDescribedBy(helperParams, showStatus ? id + '-status' : null, suffix ? id + '-suffix' : null);
|
|
57
87
|
}
|
|
58
88
|
|
|
59
|
-
|
|
60
|
-
validateDOMAttributes(allProps, thumbParams);
|
|
61
|
-
return React.createElement(React.Fragment, null, values.map((value, i) => {
|
|
62
|
-
const index = thumbIndex.current;
|
|
63
|
-
let percent = clamp((value - min) * 100 / (max - min));
|
|
89
|
+
const thumbParams = attributes;
|
|
64
90
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
91
|
+
if (tooltip) {
|
|
92
|
+
thumbParams.onMouseEnter = onMouseEnterHandler;
|
|
93
|
+
thumbParams.onMouseLeave = onMouseLeaveHandler;
|
|
94
|
+
thumbParams.onTouchStart = onMouseEnterHandler;
|
|
95
|
+
thumbParams.onTouchEnd = onMouseLeaveHandler;
|
|
96
|
+
helperParams.onBlur = onMouseLeaveHandler;
|
|
68
97
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
98
|
+
helperParams.onFocus = event => {
|
|
99
|
+
onHelperFocusHandler(event);
|
|
100
|
+
onMouseEnterHandler();
|
|
72
101
|
};
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
}))
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
validateDOMAttributes(allProps, thumbParams);
|
|
105
|
+
const elemRef = React.useRef();
|
|
106
|
+
return React.createElement(React.Fragment, null, React.createElement("span", {
|
|
107
|
+
className: "dnb-slider__thumb",
|
|
108
|
+
style: style,
|
|
109
|
+
ref: elemRef
|
|
110
|
+
}, React.createElement("input", _extends({
|
|
111
|
+
type: "range",
|
|
112
|
+
className: "dnb-slider__button-helper",
|
|
113
|
+
min: min,
|
|
114
|
+
max: max,
|
|
115
|
+
step: step,
|
|
116
|
+
value: value,
|
|
117
|
+
disabled: disabled,
|
|
118
|
+
onChange: onHelperChangeHandler,
|
|
119
|
+
onFocus: onHelperFocusHandler,
|
|
120
|
+
onMouseDown: onThumbMouseDownHandler,
|
|
121
|
+
onMouseUp: onThumbMouseUpHandler,
|
|
122
|
+
"aria-valuemin": min,
|
|
123
|
+
"aria-valuemax": max,
|
|
124
|
+
"aria-valuenow": value,
|
|
125
|
+
"aria-valuetext": aria ? aria : undefined,
|
|
126
|
+
"aria-orientation": isVertical ? 'vertical' : 'horizontal',
|
|
127
|
+
"data-index": currentIndex
|
|
128
|
+
}, helperParams)), React.createElement(Button, _extends({
|
|
129
|
+
element: "span",
|
|
130
|
+
type: "",
|
|
131
|
+
variant: "secondary",
|
|
132
|
+
disabled: disabled,
|
|
133
|
+
skeleton: skeleton
|
|
134
|
+
}, thumbParams)), tooltip && React.createElement(Tooltip, {
|
|
135
|
+
key: `group-${currentIndex}`,
|
|
136
|
+
targetElement: elemRef,
|
|
137
|
+
animatePosition: shouldAnimate,
|
|
138
|
+
active: showTooltip || alwaysShowTooltip,
|
|
139
|
+
hideDelay: 300
|
|
140
|
+
}, number || value, shouldAnimate)));
|
|
106
141
|
}
|
|
@@ -3,10 +3,10 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
3
3
|
var _span;
|
|
4
4
|
|
|
5
5
|
import React from 'react';
|
|
6
|
-
import { dispatchCustomElementEvent
|
|
6
|
+
import { dispatchCustomElementEvent } from '../../shared/component-helper';
|
|
7
7
|
import { useSliderEvents } from './hooks/useSliderEvents';
|
|
8
8
|
import { useSliderProps } from './hooks/useSliderProps';
|
|
9
|
-
import { clamp,
|
|
9
|
+
import { clamp, getFormattedNumber } from './SliderHelpers';
|
|
10
10
|
export function SliderMainTrack({
|
|
11
11
|
children
|
|
12
12
|
}) {
|
|
@@ -15,8 +15,7 @@ export function SliderMainTrack({
|
|
|
15
15
|
value,
|
|
16
16
|
allProps,
|
|
17
17
|
trackRef,
|
|
18
|
-
|
|
19
|
-
thumbState
|
|
18
|
+
animationTimeout
|
|
20
19
|
} = useSliderProps();
|
|
21
20
|
const {
|
|
22
21
|
id,
|
|
@@ -24,7 +23,7 @@ export function SliderMainTrack({
|
|
|
24
23
|
onInit
|
|
25
24
|
} = allProps;
|
|
26
25
|
const {
|
|
27
|
-
|
|
26
|
+
onTrackMouseUpHandler,
|
|
28
27
|
onThumbMouseDownHandler,
|
|
29
28
|
removeEvents
|
|
30
29
|
} = useSliderEvents();
|
|
@@ -36,7 +35,7 @@ export function SliderMainTrack({
|
|
|
36
35
|
};
|
|
37
36
|
|
|
38
37
|
if (numberFormat) {
|
|
39
|
-
obj.number =
|
|
38
|
+
obj.number = getFormattedNumber(value, numberFormat);
|
|
40
39
|
}
|
|
41
40
|
|
|
42
41
|
dispatchCustomElementEvent(allProps, 'onInit', obj);
|
|
@@ -44,20 +43,19 @@ export function SliderMainTrack({
|
|
|
44
43
|
|
|
45
44
|
return () => {
|
|
46
45
|
removeEvents();
|
|
47
|
-
clearTimeout(
|
|
46
|
+
clearTimeout(animationTimeout.current);
|
|
48
47
|
};
|
|
49
48
|
}, []);
|
|
50
49
|
const trackParams = {
|
|
51
|
-
|
|
52
|
-
onTouchStart: onTrackClickHandler,
|
|
50
|
+
onTouchStart: onTrackMouseUpHandler,
|
|
53
51
|
onTouchStartCapture: onThumbMouseDownHandler,
|
|
54
|
-
onMouseDown:
|
|
52
|
+
onMouseDown: onTrackMouseUpHandler,
|
|
55
53
|
onMouseDownCapture: onThumbMouseDownHandler
|
|
56
54
|
};
|
|
57
|
-
validateDOMAttributes(null, trackParams);
|
|
58
55
|
return React.createElement("span", _extends({
|
|
59
56
|
id: id,
|
|
60
|
-
ref: trackRef
|
|
57
|
+
ref: trackRef,
|
|
58
|
+
className: "dnb-slider__track"
|
|
61
59
|
}, trackParams), children);
|
|
62
60
|
}
|
|
63
61
|
const trackObj = [['right', 'left'], ['bottom', 'top']];
|
|
@@ -2,9 +2,7 @@ import React from 'react';
|
|
|
2
2
|
export declare function useSliderEvents(): {
|
|
3
3
|
onThumbMouseDownHandler: (event: React.SyntheticEvent) => void;
|
|
4
4
|
onThumbMouseUpHandler: () => void;
|
|
5
|
-
|
|
6
|
-
onThumbFocusHandler: () => void;
|
|
7
|
-
onThumbBlurHandler: () => void;
|
|
5
|
+
onTrackMouseUpHandler: (event: MouseEvent | TouchEvent) => void;
|
|
8
6
|
onHelperChangeHandler: (event: React.FormEvent<HTMLInputElement>) => void;
|
|
9
7
|
onHelperFocusHandler: (event: React.FormEvent<HTMLInputElement>) => void;
|
|
10
8
|
removeEvents: () => void;
|
|
@@ -8,7 +8,7 @@ export function useSliderEvents() {
|
|
|
8
8
|
emitChange,
|
|
9
9
|
trackRef,
|
|
10
10
|
isVertical,
|
|
11
|
-
|
|
11
|
+
setShouldAnimate,
|
|
12
12
|
setThumbState,
|
|
13
13
|
setThumbIndex,
|
|
14
14
|
allProps
|
|
@@ -20,16 +20,16 @@ export function useSliderEvents() {
|
|
|
20
20
|
onDragEnd
|
|
21
21
|
} = allProps;
|
|
22
22
|
|
|
23
|
-
const
|
|
23
|
+
const onTrackMouseUpHandler = event => {
|
|
24
24
|
const percent = calculatePercent(trackRef.current, event, isVertical);
|
|
25
25
|
emitChange(event, percentToValue(percent, min, max, isReverse));
|
|
26
|
-
|
|
26
|
+
setShouldAnimate(true);
|
|
27
27
|
};
|
|
28
28
|
|
|
29
29
|
const onThumbMouseDownHandler = event => {
|
|
30
30
|
const target = event.target;
|
|
31
31
|
setThumbIndex(parseFloat(target.dataset.index));
|
|
32
|
-
setThumbState('
|
|
32
|
+
setThumbState('activated');
|
|
33
33
|
|
|
34
34
|
if (typeof onDragStart === 'function') {
|
|
35
35
|
dispatchCustomElementEvent(allProps, 'onDragStart', {
|
|
@@ -39,10 +39,10 @@ export function useSliderEvents() {
|
|
|
39
39
|
|
|
40
40
|
if (typeof document !== 'undefined') {
|
|
41
41
|
try {
|
|
42
|
-
document.body.addEventListener('touchmove',
|
|
43
|
-
document.body.addEventListener('touchend',
|
|
44
|
-
document.body.addEventListener('mousemove',
|
|
45
|
-
document.body.addEventListener('mouseup',
|
|
42
|
+
document.body.addEventListener('touchmove', onBodyMouseMoveHandler);
|
|
43
|
+
document.body.addEventListener('touchend', onBodyMouseUpHandler);
|
|
44
|
+
document.body.addEventListener('mousemove', onBodyMouseMoveHandler);
|
|
45
|
+
document.body.addEventListener('mouseup', onBodyMouseUpHandler);
|
|
46
46
|
} catch (e) {
|
|
47
47
|
warn(e);
|
|
48
48
|
}
|
|
@@ -50,25 +50,23 @@ export function useSliderEvents() {
|
|
|
50
50
|
};
|
|
51
51
|
|
|
52
52
|
const onThumbMouseUpHandler = () => {
|
|
53
|
-
setThumbState('
|
|
53
|
+
setThumbState('released');
|
|
54
54
|
};
|
|
55
55
|
|
|
56
|
-
const onTrackTouchEndHandler = event => onTrackMouseUpHandler(event);
|
|
57
|
-
|
|
58
56
|
const removeEvents = () => {
|
|
59
57
|
if (typeof document !== 'undefined') {
|
|
60
58
|
try {
|
|
61
|
-
document.body.removeEventListener('touchmove',
|
|
62
|
-
document.body.removeEventListener('touchend',
|
|
63
|
-
document.body.removeEventListener('mousemove',
|
|
64
|
-
document.body.removeEventListener('mouseup',
|
|
59
|
+
document.body.removeEventListener('touchmove', onBodyMouseMoveHandler);
|
|
60
|
+
document.body.removeEventListener('touchend', onBodyMouseUpHandler);
|
|
61
|
+
document.body.removeEventListener('mousemove', onBodyMouseMoveHandler);
|
|
62
|
+
document.body.removeEventListener('mouseup', onBodyMouseUpHandler);
|
|
65
63
|
} catch (e) {
|
|
66
64
|
warn(e);
|
|
67
65
|
}
|
|
68
66
|
}
|
|
69
67
|
};
|
|
70
68
|
|
|
71
|
-
const
|
|
69
|
+
const onBodyMouseUpHandler = event => {
|
|
72
70
|
removeEvents();
|
|
73
71
|
setThumbIndex(-1);
|
|
74
72
|
setThumbState('normal');
|
|
@@ -80,14 +78,11 @@ export function useSliderEvents() {
|
|
|
80
78
|
}
|
|
81
79
|
};
|
|
82
80
|
|
|
83
|
-
const
|
|
84
|
-
|
|
85
|
-
const onTrackMouseMoveHandler = event => {
|
|
86
|
-
var _event, _event$detail;
|
|
87
|
-
|
|
81
|
+
const onBodyMouseMoveHandler = event => {
|
|
82
|
+
event.preventDefault();
|
|
88
83
|
let elem = trackRef.current;
|
|
89
84
|
|
|
90
|
-
if (
|
|
85
|
+
if (process.env.NODE_ENV === 'test') {
|
|
91
86
|
elem = createMockDiv(event.detail);
|
|
92
87
|
event = event.detail;
|
|
93
88
|
}
|
|
@@ -96,14 +91,8 @@ export function useSliderEvents() {
|
|
|
96
91
|
const percent = calculatePercent(elem, event, isVertical);
|
|
97
92
|
emitChange(event, percentToValue(percent, min, max, isReverse));
|
|
98
93
|
}
|
|
99
|
-
};
|
|
100
94
|
|
|
101
|
-
|
|
102
|
-
setThumbState('focused');
|
|
103
|
-
};
|
|
104
|
-
|
|
105
|
-
const onThumbBlurHandler = () => {
|
|
106
|
-
setThumbState('normal');
|
|
95
|
+
setShouldAnimate(false);
|
|
107
96
|
};
|
|
108
97
|
|
|
109
98
|
const onHelperChangeHandler = event => {
|
|
@@ -119,9 +108,7 @@ export function useSliderEvents() {
|
|
|
119
108
|
return {
|
|
120
109
|
onThumbMouseDownHandler,
|
|
121
110
|
onThumbMouseUpHandler,
|
|
122
|
-
|
|
123
|
-
onThumbFocusHandler,
|
|
124
|
-
onThumbBlurHandler,
|
|
111
|
+
onTrackMouseUpHandler,
|
|
125
112
|
onHelperChangeHandler,
|
|
126
113
|
onHelperFocusHandler,
|
|
127
114
|
removeEvents
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
.dnb-slider {
|
|
14
14
|
user-select: none;
|
|
15
15
|
-webkit-user-select: none; // Safari / Touch fix
|
|
16
|
+
-webkit-touch-callout: none; // Safari / Touch fix
|
|
16
17
|
|
|
17
18
|
// use flex to make sure we have the whole space available
|
|
18
19
|
display: flex;
|
|
@@ -151,7 +152,8 @@
|
|
|
151
152
|
top: 0;
|
|
152
153
|
z-index: 3;
|
|
153
154
|
|
|
154
|
-
display:
|
|
155
|
+
display: flex;
|
|
156
|
+
justify-content: center;
|
|
155
157
|
transform: translate3d(-50%, 0, 0);
|
|
156
158
|
|
|
157
159
|
// Because of the DropShadow
|
|
@@ -180,10 +182,11 @@
|
|
|
180
182
|
transform: translateX(0.25rem);
|
|
181
183
|
}
|
|
182
184
|
|
|
183
|
-
&__state--
|
|
184
|
-
&__state--
|
|
185
|
-
transition: left 250ms
|
|
186
|
-
|
|
185
|
+
&__state--animate &__thumb,
|
|
186
|
+
&__state--animate &__line {
|
|
187
|
+
transition: left 250ms #{$defaultEasing}, top 250ms #{$defaultEasing},
|
|
188
|
+
bottom 250ms #{$defaultEasing}, right 250ms #{$defaultEasing},
|
|
189
|
+
box-shadow 250ms #{$defaultEasing};
|
|
187
190
|
}
|
|
188
191
|
|
|
189
192
|
&__state--disabled &__track,
|