@dnb/eufemia 9.32.0 → 9.33.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 +39 -0
- package/assets/icons/eufemia-icons-pdf-categorized.tgz +0 -0
- package/assets/icons/eufemia-icons-pdf.tgz +0 -0
- package/assets/icons/hierarchy.svg +1 -0
- package/assets/icons/hierarchy_medium.svg +1 -0
- package/assets/icons/layout_card.svg +1 -0
- package/assets/icons/layout_card_medium.svg +1 -0
- package/assets/icons/unlock.svg +1 -0
- package/assets/icons/unlock_medium.svg +1 -0
- package/cjs/components/Upload.d.ts +3 -0
- package/cjs/components/Upload.js +52 -0
- package/cjs/components/accordion/Accordion.d.ts +5 -0
- package/cjs/components/accordion/Accordion.js +5 -5
- package/cjs/components/accordion/AccordionContent.d.ts +2 -7
- package/cjs/components/accordion/AccordionContent.js +124 -206
- package/cjs/components/accordion/AccordionHeader.d.ts +2 -0
- package/cjs/components/accordion/AccordionHeader.js +6 -3
- package/cjs/components/accordion/AccordionPropTypes.d.ts +2 -0
- package/cjs/components/accordion/AccordionPropTypes.js +2 -0
- package/cjs/components/accordion/AccordionProvider.d.ts +1 -0
- package/cjs/components/accordion/AccordionProvider.js +2 -1
- package/cjs/components/accordion/style/_accordion.scss +11 -27
- package/cjs/components/accordion/style/dnb-accordion.css +7 -19
- package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
- package/cjs/components/autocomplete/Autocomplete.d.ts +1 -1
- package/cjs/components/autocomplete/Autocomplete.js +2 -2
- package/cjs/components/autocomplete/style/_autocomplete.scss +0 -1
- package/cjs/components/autocomplete/style/dnb-autocomplete.css +57 -25
- package/cjs/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
- package/cjs/components/avatar/Avatar.d.ts +2 -2
- package/cjs/components/breadcrumb/style/_breadcrumb.scss +3 -2
- package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +29 -7
- package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
- package/cjs/components/button/style/dnb-button.css +18 -6
- package/cjs/components/button/style/dnb-button.min.css +1 -1
- package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
- package/cjs/components/checkbox/style/dnb-checkbox.css +3 -1
- package/cjs/components/checkbox/style/dnb-checkbox.min.css +1 -1
- package/cjs/components/date-picker/style/dnb-date-picker.css +84 -28
- package/cjs/components/date-picker/style/dnb-date-picker.min.css +2 -2
- package/cjs/components/dialog/parts/DialogBody.d.ts +2 -2
- package/cjs/components/dialog/parts/DialogHeader.d.ts +2 -2
- package/cjs/components/dialog/parts/DialogNavigation.d.ts +2 -2
- package/cjs/components/dialog/style/dnb-dialog.css +93 -52
- package/cjs/components/dialog/style/dnb-dialog.min.css +1 -1
- package/cjs/components/drawer/Drawer.d.ts +1 -1
- package/cjs/components/drawer/Drawer.js +5 -1
- package/cjs/components/drawer/DrawerContent.js +29 -11
- package/cjs/components/drawer/parts/DrawerBody.d.ts +2 -2
- package/cjs/components/drawer/parts/DrawerContentContext.d.ts +2 -0
- package/cjs/components/drawer/parts/DrawerContentContext.js +11 -0
- package/cjs/components/drawer/parts/DrawerHeader.d.ts +2 -2
- package/cjs/components/drawer/parts/DrawerHeader.js +8 -0
- package/cjs/components/drawer/parts/DrawerNavigation.d.ts +2 -2
- package/cjs/components/drawer/parts/DrawerNavigation.js +8 -0
- package/cjs/components/drawer/style/_drawer.scss +26 -28
- package/cjs/components/drawer/style/dnb-drawer.css +167 -98
- package/cjs/components/drawer/style/dnb-drawer.min.css +1 -1
- package/cjs/components/dropdown/Dropdown.d.ts +1 -1
- package/cjs/components/dropdown/style/_dropdown.scss +0 -1
- package/cjs/components/dropdown/style/dnb-dropdown.css +21 -10
- package/cjs/components/dropdown/style/dnb-dropdown.min.css +1 -1
- package/cjs/components/form-status/FormStatus.js +2 -2
- package/cjs/components/form-status/style/_form-status.scss +3 -3
- package/cjs/components/form-status/style/dnb-form-status.css +3 -1
- package/cjs/components/form-status/style/dnb-form-status.min.css +1 -1
- package/cjs/components/global-error/style/dnb-global-error.css +18 -6
- package/cjs/components/global-error/style/dnb-global-error.min.css +1 -1
- package/cjs/components/global-status/GlobalStatus.js +2 -2
- package/cjs/components/global-status/style/_global-status.scss +1 -1
- package/cjs/components/global-status/style/dnb-global-status.css +19 -7
- package/cjs/components/global-status/style/dnb-global-status.min.css +1 -1
- package/cjs/components/height-animation/HeightAnimation.d.ts +9 -3
- package/cjs/components/height-animation/HeightAnimation.js +8 -4
- package/cjs/components/height-animation/HeightAnimationInstance.d.ts +58 -0
- package/cjs/{shared/AnimateHeight.js → components/height-animation/HeightAnimationInstance.js} +28 -68
- package/cjs/components/height-animation/style/_height-animation.scss +3 -0
- package/cjs/components/height-animation/style/dnb-height-animation.css +2 -0
- package/cjs/components/height-animation/style/dnb-height-animation.min.css +1 -1
- package/cjs/components/height-animation/useHeightAnimation.d.ts +4 -4
- package/cjs/components/height-animation/useHeightAnimation.js +3 -3
- package/cjs/components/help-button/style/dnb-help-button.css +18 -6
- package/cjs/components/help-button/style/dnb-help-button.min.css +1 -1
- package/cjs/components/icon/Icon.js +1 -1
- package/cjs/components/index.d.ts +2 -1
- package/cjs/components/index.js +8 -0
- package/cjs/components/input/Input.js +1 -1
- package/cjs/components/input/style/dnb-input.css +36 -12
- package/cjs/components/input/style/dnb-input.min.css +1 -1
- package/cjs/components/input-masked/style/dnb-input-masked.css +36 -12
- package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/cjs/components/lib.d.ts +22 -17
- package/cjs/components/lib.js +9 -0
- package/cjs/components/modal/ModalContent.js +2 -2
- package/cjs/components/modal/parts/ModalHeader.d.ts +2 -2
- package/cjs/components/modal/parts/ModalHeaderBar.d.ts +1 -1
- package/cjs/components/modal/parts/ModalInner.d.ts +1 -1
- package/cjs/components/modal/style/dnb-modal.css +93 -52
- package/cjs/components/modal/style/dnb-modal.min.css +1 -1
- package/cjs/components/number-format/style/dnb-number-format.css +15 -5
- package/cjs/components/number-format/style/dnb-number-format.min.css +1 -1
- package/cjs/components/pagination/PaginationBar.d.ts +8 -6
- package/cjs/components/pagination/PaginationBar.js +21 -22
- package/cjs/components/pagination/style/dnb-pagination.css +18 -6
- package/cjs/components/pagination/style/dnb-pagination.min.css +1 -1
- package/cjs/components/radio/style/dnb-radio.css +3 -1
- package/cjs/components/radio/style/dnb-radio.min.css +1 -1
- package/cjs/components/section/Section.d.ts +4 -3
- package/cjs/components/slider/SliderThumb.js +17 -4
- package/cjs/components/slider/SliderTrack.js +3 -6
- package/cjs/components/slider/hooks/useSliderEvents.d.ts +2 -2
- package/cjs/components/slider/hooks/useSliderEvents.js +3 -2
- package/cjs/components/slider/style/_slider.scss +4 -3
- package/cjs/components/slider/style/dnb-slider.css +41 -13
- package/cjs/components/slider/style/dnb-slider.min.css +1 -1
- package/cjs/components/space/Space.d.ts +83 -80
- package/cjs/components/space/Space.js +59 -54
- package/cjs/components/space/SpacingHelper.d.ts +4 -39
- package/cjs/components/space/SpacingHelper.js +21 -369
- package/cjs/components/space/SpacingUtils.d.ts +38 -0
- package/cjs/components/space/SpacingUtils.js +375 -0
- package/cjs/components/space/types.d.ts +34 -0
- package/cjs/components/space/types.js +1 -0
- package/cjs/components/step-indicator/StepIndicatorItem.js +2 -2
- package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +2 -2
- package/cjs/components/step-indicator/style/_step-indicator.scss +1 -1
- package/cjs/components/step-indicator/style/dnb-step-indicator.css +21 -7
- package/cjs/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
- package/cjs/components/switch/style/dnb-switch.css +3 -1
- package/cjs/components/switch/style/dnb-switch.min.css +1 -1
- package/cjs/components/tabs/style/_tabs.scss +1 -1
- package/cjs/components/tabs/style/dnb-tabs.css +3 -1
- package/cjs/components/tabs/style/dnb-tabs.min.css +1 -1
- package/cjs/components/tag/Tag.d.ts +2 -2
- package/cjs/components/tag/style/dnb-tag.css +18 -6
- package/cjs/components/tag/style/dnb-tag.min.css +1 -1
- package/cjs/components/textarea/style/dnb-textarea.css +3 -1
- package/cjs/components/textarea/style/dnb-textarea.min.css +1 -1
- package/cjs/components/toggle-button/style/dnb-toggle-button.css +27 -9
- package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +2 -2
- package/cjs/components/tooltip/Tooltip.js +21 -18
- package/cjs/components/tooltip/TooltipContainer.js +48 -19
- package/cjs/components/tooltip/TooltipHelpers.d.ts +1 -1
- package/cjs/components/tooltip/TooltipHelpers.js +5 -9
- package/cjs/components/tooltip/TooltipPortal.d.ts +1 -1
- package/cjs/components/tooltip/TooltipPortal.js +54 -31
- package/cjs/components/tooltip/TooltipWithEvents.d.ts +1 -1
- package/cjs/components/tooltip/TooltipWithEvents.js +67 -43
- package/cjs/components/tooltip/style/_tooltip.scss +6 -6
- package/cjs/components/tooltip/style/dnb-tooltip.css +15 -5
- package/cjs/components/tooltip/style/dnb-tooltip.min.css +1 -1
- package/cjs/components/tooltip/types.d.ts +1 -0
- package/cjs/components/upload/Upload.d.ts +10 -0
- package/cjs/components/upload/Upload.js +201 -0
- package/cjs/components/upload/UploadContext.d.ts +7 -0
- package/cjs/components/upload/UploadContext.js +16 -0
- package/cjs/components/upload/UploadDropzone.d.ts +3 -0
- package/cjs/components/upload/UploadDropzone.js +147 -0
- package/cjs/components/upload/UploadFileInput.d.ts +3 -0
- package/cjs/components/upload/UploadFileInput.js +123 -0
- package/cjs/components/upload/UploadFileList.d.ts +3 -0
- package/cjs/components/upload/UploadFileList.js +79 -0
- package/cjs/components/upload/UploadFileListCell.d.ts +19 -0
- package/cjs/components/upload/UploadFileListCell.js +171 -0
- package/cjs/components/upload/UploadInfo.d.ts +3 -0
- package/cjs/components/upload/UploadInfo.js +71 -0
- package/cjs/components/upload/UploadStatus.d.ts +3 -0
- package/cjs/components/upload/UploadStatus.js +43 -0
- package/cjs/components/upload/UploadVerify.d.ts +2 -0
- package/cjs/components/upload/UploadVerify.js +58 -0
- package/cjs/components/upload/index.d.ts +3 -0
- package/cjs/components/upload/index.js +52 -0
- package/cjs/components/upload/style/_upload.scss +91 -0
- package/cjs/components/upload/style/dnb-upload.css +1210 -0
- package/cjs/components/upload/style/dnb-upload.min.css +1 -0
- package/cjs/components/upload/style/dnb-upload.scss +16 -0
- package/cjs/components/upload/style/index.d.ts +1 -0
- package/cjs/components/upload/style/index.js +3 -0
- package/cjs/components/upload/style/themes/dnb-upload-theme-ui.css +38 -0
- package/cjs/components/upload/style/themes/dnb-upload-theme-ui.min.css +1 -0
- package/cjs/components/upload/style/themes/dnb-upload-theme-ui.scss +46 -0
- package/cjs/components/upload/style.d.ts +1 -0
- package/cjs/components/upload/style.js +3 -0
- package/cjs/components/upload/types.d.ts +67 -0
- package/cjs/components/upload/types.js +1 -0
- package/cjs/components/upload/useUpload.d.ts +14 -0
- package/cjs/components/upload/useUpload.js +36 -0
- package/cjs/elements/Anchor.d.ts +3 -2
- package/cjs/elements/Anchor.js +4 -2
- package/cjs/elements/Blockquote.js +1 -1
- package/cjs/elements/Code.js +1 -1
- package/cjs/elements/Dd.js +1 -1
- package/cjs/elements/Div.js +1 -1
- package/cjs/elements/Dl.d.ts +3 -3
- package/cjs/elements/Dl.js +10 -5
- package/cjs/elements/Dt.d.ts +1 -4
- package/cjs/elements/Dt.js +2 -2
- package/cjs/elements/Element.d.ts +33 -8
- package/cjs/elements/Element.js +5 -3
- package/cjs/elements/H.d.ts +1 -0
- package/cjs/elements/H.js +6 -4
- package/cjs/elements/H1.js +1 -1
- package/cjs/elements/H2.js +1 -1
- package/cjs/elements/H3.js +1 -1
- package/cjs/elements/H4.js +1 -1
- package/cjs/elements/H5.js +1 -1
- package/cjs/elements/H6.js +1 -1
- package/cjs/elements/Hr.js +1 -1
- package/cjs/elements/Img.js +2 -2
- package/cjs/elements/Li.js +1 -1
- package/cjs/elements/Link.d.ts +1 -1
- package/cjs/elements/Ol.js +1 -1
- package/cjs/elements/P.js +1 -1
- package/cjs/elements/Span.js +1 -1
- package/cjs/elements/Ul.js +1 -1
- package/cjs/elements/lib.d.ts +5 -3
- package/cjs/fragments/drawer-list/DrawerListPortal.js +14 -9
- package/cjs/fragments/drawer-list/DrawerListProvider.js +47 -44
- package/cjs/fragments/drawer-list/style/_drawer-list.scss +10 -0
- package/cjs/icons/hierarchy.d.ts +2 -0
- package/cjs/icons/hierarchy.js +42 -0
- package/cjs/icons/hierarchy_medium.d.ts +2 -0
- package/cjs/icons/hierarchy_medium.js +42 -0
- package/cjs/icons/icons-meta.json +42 -0
- package/cjs/icons/icons-pdf.lock +78 -0
- package/cjs/icons/icons-svg.lock +78 -0
- package/cjs/icons/index.d.ts +7 -1
- package/cjs/icons/index.js +48 -0
- package/cjs/icons/layout_card.d.ts +2 -0
- package/cjs/icons/layout_card.js +43 -0
- package/cjs/icons/layout_card_medium.d.ts +2 -0
- package/cjs/icons/layout_card_medium.js +43 -0
- package/cjs/icons/secondary_icons.d.ts +4 -1
- package/cjs/icons/secondary_icons.js +24 -0
- package/cjs/icons/secondary_icons_medium.d.ts +4 -1
- package/cjs/icons/secondary_icons_medium.js +24 -0
- package/cjs/icons/unlock.d.ts +2 -0
- package/cjs/icons/unlock.js +42 -0
- package/cjs/icons/unlock_medium.d.ts +2 -0
- package/cjs/icons/unlock_medium.js +42 -0
- package/cjs/index.d.ts +2 -1
- package/cjs/index.js +8 -0
- package/cjs/shared/Context.d.ts +2 -0
- package/cjs/shared/Eufemia.js +1 -1
- package/cjs/shared/component-helper.d.ts +1 -1
- package/cjs/shared/component-helper.js +6 -12
- package/cjs/shared/locales/en-GB.d.ts +15 -0
- package/cjs/shared/locales/en-GB.js +15 -0
- package/cjs/shared/locales/en-US.d.ts +15 -0
- package/cjs/shared/locales/index.d.ts +30 -0
- package/cjs/shared/locales/nb-NO.d.ts +15 -0
- package/cjs/shared/locales/nb-NO.js +15 -0
- package/cjs/shared/types.d.ts +4 -21
- package/cjs/shared/types.js +24 -1
- package/cjs/style/core/helper-classes/helper-classes.scss +1 -1
- package/cjs/style/core/utilities.scss +0 -2
- package/cjs/style/dnb-ui-components.css +238 -82
- package/cjs/style/dnb-ui-components.min.css +4 -4
- package/cjs/style/dnb-ui-components.scss +1 -0
- package/cjs/style/dnb-ui-elements.css +55 -35
- package/cjs/style/dnb-ui-elements.min.css +1 -1
- package/cjs/style/dnb-ui-fragments.css +15 -0
- package/cjs/style/dnb-ui-fragments.min.css +1 -1
- package/cjs/style/dnb-ui-tags.css +108 -69
- package/cjs/style/dnb-ui-tags.min.css +1 -1
- package/cjs/style/elements/lists.scss +28 -16
- package/cjs/style/elements/ui-spacing.scss +3 -1
- package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.css +94 -35
- package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
- package/cjs/style/themes/theme-ui/dnb-theme-ui.css +94 -35
- package/cjs/style/themes/theme-ui/dnb-theme-ui.min.css +2 -2
- package/cjs/style/themes/theme-ui/dnb-theme-ui.scss +1 -0
- package/components/Upload.d.ts +3 -0
- package/components/Upload.js +3 -0
- package/components/accordion/Accordion.d.ts +5 -0
- package/components/accordion/Accordion.js +5 -5
- package/components/accordion/AccordionContent.d.ts +2 -7
- package/components/accordion/AccordionContent.js +121 -184
- package/components/accordion/AccordionHeader.d.ts +2 -0
- package/components/accordion/AccordionHeader.js +6 -3
- package/components/accordion/AccordionPropTypes.d.ts +2 -0
- package/components/accordion/AccordionPropTypes.js +2 -0
- package/components/accordion/AccordionProvider.d.ts +1 -0
- package/components/accordion/AccordionProvider.js +2 -1
- package/components/accordion/style/_accordion.scss +11 -27
- package/components/accordion/style/dnb-accordion.css +7 -19
- package/components/accordion/style/dnb-accordion.min.css +1 -1
- package/components/autocomplete/Autocomplete.d.ts +1 -1
- package/components/autocomplete/Autocomplete.js +2 -2
- package/components/autocomplete/style/_autocomplete.scss +0 -1
- package/components/autocomplete/style/dnb-autocomplete.css +57 -25
- package/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
- package/components/avatar/Avatar.d.ts +2 -2
- package/components/breadcrumb/style/_breadcrumb.scss +3 -2
- package/components/breadcrumb/style/dnb-breadcrumb.css +29 -7
- package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
- package/components/button/style/dnb-button.css +18 -6
- package/components/button/style/dnb-button.min.css +1 -1
- package/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
- package/components/checkbox/style/dnb-checkbox.css +3 -1
- package/components/checkbox/style/dnb-checkbox.min.css +1 -1
- package/components/date-picker/style/dnb-date-picker.css +84 -28
- package/components/date-picker/style/dnb-date-picker.min.css +2 -2
- package/components/dialog/parts/DialogBody.d.ts +2 -2
- package/components/dialog/parts/DialogHeader.d.ts +2 -2
- package/components/dialog/parts/DialogNavigation.d.ts +2 -2
- package/components/dialog/style/dnb-dialog.css +93 -52
- package/components/dialog/style/dnb-dialog.min.css +1 -1
- package/components/drawer/Drawer.d.ts +1 -1
- package/components/drawer/Drawer.js +5 -1
- package/components/drawer/DrawerContent.js +22 -7
- package/components/drawer/parts/DrawerBody.d.ts +2 -2
- package/components/drawer/parts/DrawerContentContext.d.ts +2 -0
- package/components/drawer/parts/DrawerContentContext.js +2 -0
- package/components/drawer/parts/DrawerHeader.d.ts +2 -2
- package/components/drawer/parts/DrawerHeader.js +7 -0
- package/components/drawer/parts/DrawerNavigation.d.ts +2 -2
- package/components/drawer/parts/DrawerNavigation.js +7 -0
- package/components/drawer/style/_drawer.scss +26 -28
- package/components/drawer/style/dnb-drawer.css +167 -98
- package/components/drawer/style/dnb-drawer.min.css +1 -1
- package/components/dropdown/Dropdown.d.ts +1 -1
- package/components/dropdown/style/_dropdown.scss +0 -1
- package/components/dropdown/style/dnb-dropdown.css +21 -10
- package/components/dropdown/style/dnb-dropdown.min.css +1 -1
- package/components/form-status/FormStatus.js +2 -2
- package/components/form-status/style/_form-status.scss +3 -3
- package/components/form-status/style/dnb-form-status.css +3 -1
- package/components/form-status/style/dnb-form-status.min.css +1 -1
- package/components/global-error/style/dnb-global-error.css +18 -6
- package/components/global-error/style/dnb-global-error.min.css +1 -1
- package/components/global-status/GlobalStatus.js +2 -2
- package/components/global-status/style/_global-status.scss +1 -1
- package/components/global-status/style/dnb-global-status.css +19 -7
- package/components/global-status/style/dnb-global-status.min.css +1 -1
- package/components/height-animation/HeightAnimation.d.ts +9 -3
- package/components/height-animation/HeightAnimation.js +7 -4
- package/components/height-animation/HeightAnimationInstance.d.ts +58 -0
- package/{shared/AnimateHeight.js → components/height-animation/HeightAnimationInstance.js} +28 -68
- package/components/height-animation/style/_height-animation.scss +3 -0
- package/components/height-animation/style/dnb-height-animation.css +2 -0
- package/components/height-animation/style/dnb-height-animation.min.css +1 -1
- package/components/height-animation/useHeightAnimation.d.ts +4 -4
- package/components/height-animation/useHeightAnimation.js +3 -3
- package/components/help-button/style/dnb-help-button.css +18 -6
- package/components/help-button/style/dnb-help-button.min.css +1 -1
- package/components/icon/Icon.js +1 -1
- package/components/index.d.ts +2 -1
- package/components/index.js +2 -1
- package/components/input/Input.js +1 -1
- package/components/input/style/dnb-input.css +36 -12
- package/components/input/style/dnb-input.min.css +1 -1
- package/components/input-masked/style/dnb-input-masked.css +36 -12
- package/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/components/lib.d.ts +22 -17
- package/components/lib.js +3 -1
- package/components/modal/ModalContent.js +2 -2
- package/components/modal/parts/ModalHeader.d.ts +2 -2
- package/components/modal/parts/ModalHeaderBar.d.ts +1 -1
- package/components/modal/parts/ModalInner.d.ts +1 -1
- package/components/modal/style/dnb-modal.css +93 -52
- package/components/modal/style/dnb-modal.min.css +1 -1
- package/components/number-format/style/dnb-number-format.css +15 -5
- package/components/number-format/style/dnb-number-format.min.css +1 -1
- package/components/pagination/PaginationBar.d.ts +8 -6
- package/components/pagination/PaginationBar.js +21 -22
- package/components/pagination/style/dnb-pagination.css +18 -6
- package/components/pagination/style/dnb-pagination.min.css +1 -1
- package/components/radio/style/dnb-radio.css +3 -1
- package/components/radio/style/dnb-radio.min.css +1 -1
- package/components/section/Section.d.ts +4 -3
- package/components/slider/SliderThumb.js +18 -5
- package/components/slider/SliderTrack.js +3 -6
- package/components/slider/hooks/useSliderEvents.d.ts +2 -2
- package/components/slider/hooks/useSliderEvents.js +3 -2
- package/components/slider/style/_slider.scss +4 -3
- package/components/slider/style/dnb-slider.css +41 -13
- package/components/slider/style/dnb-slider.min.css +1 -1
- package/components/space/Space.d.ts +83 -80
- package/components/space/Space.js +44 -41
- package/components/space/SpacingHelper.d.ts +4 -39
- package/components/space/SpacingHelper.js +2 -277
- package/components/space/SpacingUtils.d.ts +38 -0
- package/components/space/SpacingUtils.js +277 -0
- package/components/space/types.d.ts +34 -0
- package/components/space/types.js +1 -0
- package/components/step-indicator/StepIndicatorItem.js +2 -2
- package/components/step-indicator/StepIndicatorTriggerButton.js +2 -2
- package/components/step-indicator/style/_step-indicator.scss +1 -1
- package/components/step-indicator/style/dnb-step-indicator.css +21 -7
- package/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
- package/components/switch/style/dnb-switch.css +3 -1
- package/components/switch/style/dnb-switch.min.css +1 -1
- package/components/tabs/style/_tabs.scss +1 -1
- package/components/tabs/style/dnb-tabs.css +3 -1
- package/components/tabs/style/dnb-tabs.min.css +1 -1
- package/components/tag/Tag.d.ts +2 -2
- package/components/tag/style/dnb-tag.css +18 -6
- package/components/tag/style/dnb-tag.min.css +1 -1
- package/components/textarea/style/dnb-textarea.css +3 -1
- package/components/textarea/style/dnb-textarea.min.css +1 -1
- package/components/toggle-button/style/dnb-toggle-button.css +27 -9
- package/components/toggle-button/style/dnb-toggle-button.min.css +2 -2
- package/components/tooltip/Tooltip.js +21 -18
- package/components/tooltip/TooltipContainer.js +47 -20
- package/components/tooltip/TooltipHelpers.d.ts +1 -1
- package/components/tooltip/TooltipHelpers.js +5 -9
- package/components/tooltip/TooltipPortal.d.ts +1 -1
- package/components/tooltip/TooltipPortal.js +53 -30
- package/components/tooltip/TooltipWithEvents.d.ts +1 -1
- package/components/tooltip/TooltipWithEvents.js +66 -43
- package/components/tooltip/style/_tooltip.scss +6 -6
- package/components/tooltip/style/dnb-tooltip.css +15 -5
- package/components/tooltip/style/dnb-tooltip.min.css +1 -1
- package/components/tooltip/types.d.ts +1 -0
- package/components/upload/Upload.d.ts +10 -0
- package/components/upload/Upload.js +129 -0
- package/components/upload/UploadContext.d.ts +7 -0
- package/components/upload/UploadContext.js +6 -0
- package/components/upload/UploadDropzone.d.ts +3 -0
- package/components/upload/UploadDropzone.js +90 -0
- package/components/upload/UploadFileInput.d.ts +3 -0
- package/components/upload/UploadFileInput.js +79 -0
- package/components/upload/UploadFileList.d.ts +3 -0
- package/components/upload/UploadFileList.js +62 -0
- package/components/upload/UploadFileListCell.d.ts +19 -0
- package/components/upload/UploadFileListCell.js +128 -0
- package/components/upload/UploadInfo.d.ts +3 -0
- package/components/upload/UploadInfo.js +48 -0
- package/components/upload/UploadStatus.d.ts +3 -0
- package/components/upload/UploadStatus.js +26 -0
- package/components/upload/UploadVerify.d.ts +2 -0
- package/components/upload/UploadVerify.js +42 -0
- package/components/upload/index.d.ts +3 -0
- package/components/upload/index.js +3 -0
- package/components/upload/style/_upload.scss +91 -0
- package/components/upload/style/dnb-upload.css +1210 -0
- package/components/upload/style/dnb-upload.min.css +1 -0
- package/components/upload/style/dnb-upload.scss +16 -0
- package/components/upload/style/index.d.ts +1 -0
- package/components/upload/style/index.js +1 -0
- package/components/upload/style/themes/dnb-upload-theme-ui.css +38 -0
- package/components/upload/style/themes/dnb-upload-theme-ui.min.css +1 -0
- package/components/upload/style/themes/dnb-upload-theme-ui.scss +46 -0
- package/components/upload/style.d.ts +1 -0
- package/components/upload/style.js +1 -0
- package/components/upload/types.d.ts +67 -0
- package/components/upload/types.js +1 -0
- package/components/upload/useUpload.d.ts +14 -0
- package/components/upload/useUpload.js +28 -0
- package/elements/Anchor.d.ts +3 -2
- package/elements/Anchor.js +4 -2
- package/elements/Blockquote.js +1 -1
- package/elements/Code.js +1 -1
- package/elements/Dd.js +1 -1
- package/elements/Div.js +1 -1
- package/elements/Dl.d.ts +3 -3
- package/elements/Dl.js +10 -5
- package/elements/Dt.d.ts +1 -4
- package/elements/Dt.js +2 -2
- package/elements/Element.d.ts +33 -8
- package/elements/Element.js +5 -3
- package/elements/H.d.ts +1 -0
- package/elements/H.js +6 -4
- package/elements/H1.js +1 -1
- package/elements/H2.js +1 -1
- package/elements/H3.js +1 -1
- package/elements/H4.js +1 -1
- package/elements/H5.js +1 -1
- package/elements/H6.js +1 -1
- package/elements/Hr.js +1 -1
- package/elements/Img.js +2 -2
- package/elements/Li.js +1 -1
- package/elements/Link.d.ts +1 -1
- package/elements/Ol.js +1 -1
- package/elements/P.js +1 -1
- package/elements/Span.js +1 -1
- package/elements/Ul.js +1 -1
- package/elements/lib.d.ts +5 -3
- package/es/components/Upload.d.ts +3 -0
- package/es/components/Upload.js +3 -0
- package/es/components/accordion/Accordion.d.ts +5 -0
- package/es/components/accordion/Accordion.js +6 -8
- package/es/components/accordion/AccordionContent.d.ts +2 -7
- package/es/components/accordion/AccordionContent.js +112 -135
- package/es/components/accordion/AccordionHeader.d.ts +2 -0
- package/es/components/accordion/AccordionHeader.js +6 -3
- package/es/components/accordion/AccordionPropTypes.d.ts +2 -0
- package/es/components/accordion/AccordionPropTypes.js +2 -0
- package/es/components/accordion/AccordionProvider.d.ts +1 -0
- package/es/components/accordion/AccordionProvider.js +2 -1
- package/es/components/accordion/style/_accordion.scss +11 -27
- package/es/components/accordion/style/dnb-accordion.css +7 -19
- package/es/components/accordion/style/dnb-accordion.min.css +1 -1
- package/es/components/autocomplete/Autocomplete.d.ts +1 -1
- package/es/components/autocomplete/Autocomplete.js +2 -2
- package/es/components/autocomplete/style/_autocomplete.scss +0 -1
- package/es/components/autocomplete/style/dnb-autocomplete.css +57 -25
- package/es/components/autocomplete/style/dnb-autocomplete.min.css +1 -1
- package/es/components/avatar/Avatar.d.ts +2 -2
- package/es/components/breadcrumb/style/_breadcrumb.scss +3 -2
- package/es/components/breadcrumb/style/dnb-breadcrumb.css +29 -7
- package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
- package/es/components/button/style/dnb-button.css +18 -6
- package/es/components/button/style/dnb-button.min.css +1 -1
- package/es/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
- package/es/components/checkbox/style/dnb-checkbox.css +3 -1
- package/es/components/checkbox/style/dnb-checkbox.min.css +1 -1
- package/es/components/date-picker/style/dnb-date-picker.css +84 -28
- package/es/components/date-picker/style/dnb-date-picker.min.css +2 -2
- package/es/components/dialog/parts/DialogBody.d.ts +2 -2
- package/es/components/dialog/parts/DialogHeader.d.ts +2 -2
- package/es/components/dialog/parts/DialogNavigation.d.ts +2 -2
- package/es/components/dialog/style/dnb-dialog.css +93 -52
- package/es/components/dialog/style/dnb-dialog.min.css +1 -1
- package/es/components/drawer/Drawer.d.ts +1 -1
- package/es/components/drawer/Drawer.js +5 -1
- package/es/components/drawer/DrawerContent.js +22 -7
- package/es/components/drawer/parts/DrawerBody.d.ts +2 -2
- package/es/components/drawer/parts/DrawerContentContext.d.ts +2 -0
- package/es/components/drawer/parts/DrawerContentContext.js +2 -0
- package/es/components/drawer/parts/DrawerHeader.d.ts +2 -2
- package/es/components/drawer/parts/DrawerHeader.js +7 -0
- package/es/components/drawer/parts/DrawerNavigation.d.ts +2 -2
- package/es/components/drawer/parts/DrawerNavigation.js +7 -0
- package/es/components/drawer/style/_drawer.scss +26 -28
- package/es/components/drawer/style/dnb-drawer.css +167 -98
- package/es/components/drawer/style/dnb-drawer.min.css +1 -1
- package/es/components/dropdown/Dropdown.d.ts +1 -1
- package/es/components/dropdown/style/_dropdown.scss +0 -1
- package/es/components/dropdown/style/dnb-dropdown.css +21 -10
- package/es/components/dropdown/style/dnb-dropdown.min.css +1 -1
- package/es/components/form-status/FormStatus.js +2 -2
- package/es/components/form-status/style/_form-status.scss +3 -3
- package/es/components/form-status/style/dnb-form-status.css +3 -1
- package/es/components/form-status/style/dnb-form-status.min.css +1 -1
- package/es/components/global-error/style/dnb-global-error.css +18 -6
- package/es/components/global-error/style/dnb-global-error.min.css +1 -1
- package/es/components/global-status/GlobalStatus.js +2 -2
- package/es/components/global-status/style/_global-status.scss +1 -1
- package/es/components/global-status/style/dnb-global-status.css +19 -7
- package/es/components/global-status/style/dnb-global-status.min.css +1 -1
- package/es/components/height-animation/HeightAnimation.d.ts +9 -3
- package/es/components/height-animation/HeightAnimation.js +6 -4
- package/es/components/height-animation/HeightAnimationInstance.d.ts +58 -0
- package/es/{shared/AnimateHeight.js → components/height-animation/HeightAnimationInstance.js} +3 -36
- package/es/components/height-animation/style/_height-animation.scss +3 -0
- package/es/components/height-animation/style/dnb-height-animation.css +2 -0
- package/es/components/height-animation/style/dnb-height-animation.min.css +1 -1
- package/es/components/height-animation/useHeightAnimation.d.ts +4 -4
- package/es/components/height-animation/useHeightAnimation.js +3 -3
- package/es/components/help-button/style/dnb-help-button.css +18 -6
- package/es/components/help-button/style/dnb-help-button.min.css +1 -1
- package/es/components/icon/Icon.js +1 -1
- package/es/components/index.d.ts +2 -1
- package/es/components/index.js +2 -1
- package/es/components/input/Input.js +1 -1
- package/es/components/input/style/dnb-input.css +36 -12
- package/es/components/input/style/dnb-input.min.css +1 -1
- package/es/components/input-masked/style/dnb-input-masked.css +36 -12
- package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/es/components/lib.d.ts +22 -17
- package/es/components/lib.js +3 -1
- package/es/components/modal/ModalContent.js +2 -2
- package/es/components/modal/parts/ModalHeader.d.ts +2 -2
- package/es/components/modal/parts/ModalHeaderBar.d.ts +1 -1
- package/es/components/modal/parts/ModalInner.d.ts +1 -1
- package/es/components/modal/style/dnb-modal.css +93 -52
- package/es/components/modal/style/dnb-modal.min.css +1 -1
- package/es/components/number-format/style/dnb-number-format.css +15 -5
- package/es/components/number-format/style/dnb-number-format.min.css +1 -1
- package/es/components/pagination/PaginationBar.d.ts +8 -6
- package/es/components/pagination/PaginationBar.js +17 -18
- package/es/components/pagination/style/dnb-pagination.css +18 -6
- package/es/components/pagination/style/dnb-pagination.min.css +1 -1
- package/es/components/radio/style/dnb-radio.css +3 -1
- package/es/components/radio/style/dnb-radio.min.css +1 -1
- package/es/components/section/Section.d.ts +4 -3
- package/es/components/slider/SliderThumb.js +18 -5
- package/es/components/slider/SliderTrack.js +3 -6
- package/es/components/slider/hooks/useSliderEvents.d.ts +2 -2
- package/es/components/slider/hooks/useSliderEvents.js +3 -2
- package/es/components/slider/style/_slider.scss +4 -3
- package/es/components/slider/style/dnb-slider.css +41 -13
- package/es/components/slider/style/dnb-slider.min.css +1 -1
- package/es/components/space/Space.d.ts +83 -80
- package/es/components/space/Space.js +35 -31
- package/es/components/space/SpacingHelper.d.ts +4 -39
- package/es/components/space/SpacingHelper.js +2 -225
- package/es/components/space/SpacingUtils.d.ts +38 -0
- package/es/components/space/SpacingUtils.js +225 -0
- package/es/components/space/types.d.ts +34 -0
- package/es/components/space/types.js +1 -0
- package/es/components/step-indicator/StepIndicatorItem.js +2 -2
- package/es/components/step-indicator/StepIndicatorTriggerButton.js +2 -2
- package/es/components/step-indicator/style/_step-indicator.scss +1 -1
- package/es/components/step-indicator/style/dnb-step-indicator.css +21 -7
- package/es/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
- package/es/components/switch/style/dnb-switch.css +3 -1
- package/es/components/switch/style/dnb-switch.min.css +1 -1
- package/es/components/tabs/style/_tabs.scss +1 -1
- package/es/components/tabs/style/dnb-tabs.css +3 -1
- package/es/components/tabs/style/dnb-tabs.min.css +1 -1
- package/es/components/tag/Tag.d.ts +2 -2
- package/es/components/tag/style/dnb-tag.css +18 -6
- package/es/components/tag/style/dnb-tag.min.css +1 -1
- package/es/components/textarea/style/dnb-textarea.css +3 -1
- package/es/components/textarea/style/dnb-textarea.min.css +1 -1
- package/es/components/toggle-button/style/dnb-toggle-button.css +27 -9
- package/es/components/toggle-button/style/dnb-toggle-button.min.css +2 -2
- package/es/components/tooltip/Tooltip.js +13 -15
- package/es/components/tooltip/TooltipContainer.js +43 -22
- package/es/components/tooltip/TooltipHelpers.d.ts +1 -1
- package/es/components/tooltip/TooltipHelpers.js +5 -9
- package/es/components/tooltip/TooltipPortal.d.ts +1 -1
- package/es/components/tooltip/TooltipPortal.js +51 -30
- package/es/components/tooltip/TooltipWithEvents.d.ts +1 -1
- package/es/components/tooltip/TooltipWithEvents.js +68 -44
- package/es/components/tooltip/style/_tooltip.scss +6 -6
- package/es/components/tooltip/style/dnb-tooltip.css +15 -5
- package/es/components/tooltip/style/dnb-tooltip.min.css +1 -1
- package/es/components/tooltip/types.d.ts +1 -0
- package/es/components/upload/Upload.d.ts +10 -0
- package/es/components/upload/Upload.js +116 -0
- package/es/components/upload/UploadContext.d.ts +7 -0
- package/es/components/upload/UploadContext.js +6 -0
- package/es/components/upload/UploadDropzone.d.ts +3 -0
- package/es/components/upload/UploadDropzone.js +82 -0
- package/es/components/upload/UploadFileInput.d.ts +3 -0
- package/es/components/upload/UploadFileInput.js +76 -0
- package/es/components/upload/UploadFileList.d.ts +3 -0
- package/es/components/upload/UploadFileList.js +59 -0
- package/es/components/upload/UploadFileListCell.d.ts +19 -0
- package/es/components/upload/UploadFileListCell.js +124 -0
- package/es/components/upload/UploadInfo.d.ts +3 -0
- package/es/components/upload/UploadInfo.js +45 -0
- package/es/components/upload/UploadStatus.d.ts +3 -0
- package/es/components/upload/UploadStatus.js +25 -0
- package/es/components/upload/UploadVerify.d.ts +2 -0
- package/es/components/upload/UploadVerify.js +39 -0
- package/es/components/upload/index.d.ts +3 -0
- package/es/components/upload/index.js +3 -0
- package/es/components/upload/style/_upload.scss +91 -0
- package/es/components/upload/style/dnb-upload.css +1210 -0
- package/es/components/upload/style/dnb-upload.min.css +1 -0
- package/es/components/upload/style/dnb-upload.scss +16 -0
- package/es/components/upload/style/index.d.ts +1 -0
- package/es/components/upload/style/index.js +1 -0
- package/es/components/upload/style/themes/dnb-upload-theme-ui.css +38 -0
- package/es/components/upload/style/themes/dnb-upload-theme-ui.min.css +1 -0
- package/es/components/upload/style/themes/dnb-upload-theme-ui.scss +46 -0
- package/es/components/upload/style.d.ts +1 -0
- package/es/components/upload/style.js +1 -0
- package/es/components/upload/types.d.ts +67 -0
- package/es/components/upload/types.js +1 -0
- package/es/components/upload/useUpload.d.ts +14 -0
- package/es/components/upload/useUpload.js +29 -0
- package/es/elements/Anchor.d.ts +3 -2
- package/es/elements/Anchor.js +4 -2
- package/es/elements/Blockquote.js +1 -1
- package/es/elements/Code.js +1 -1
- package/es/elements/Dd.js +1 -1
- package/es/elements/Div.js +1 -1
- package/es/elements/Dl.d.ts +3 -3
- package/es/elements/Dl.js +14 -8
- package/es/elements/Dt.d.ts +1 -4
- package/es/elements/Dt.js +2 -2
- package/es/elements/Element.d.ts +33 -8
- package/es/elements/Element.js +5 -3
- package/es/elements/H.d.ts +1 -0
- package/es/elements/H.js +6 -4
- package/es/elements/H1.js +1 -1
- package/es/elements/H2.js +1 -1
- package/es/elements/H3.js +1 -1
- package/es/elements/H4.js +1 -1
- package/es/elements/H5.js +1 -1
- package/es/elements/H6.js +1 -1
- package/es/elements/Hr.js +1 -1
- package/es/elements/Img.js +2 -2
- package/es/elements/Li.js +1 -1
- package/es/elements/Link.d.ts +1 -1
- package/es/elements/Ol.js +1 -1
- package/es/elements/P.js +1 -1
- package/es/elements/Span.js +1 -1
- package/es/elements/Ul.js +1 -1
- package/es/elements/lib.d.ts +5 -3
- package/es/fragments/drawer-list/DrawerListPortal.js +17 -12
- package/es/fragments/drawer-list/DrawerListProvider.js +47 -43
- package/es/fragments/drawer-list/style/_drawer-list.scss +10 -0
- package/es/icons/hierarchy.d.ts +2 -0
- package/es/icons/hierarchy.js +28 -0
- package/es/icons/hierarchy_medium.d.ts +2 -0
- package/es/icons/hierarchy_medium.js +28 -0
- package/es/icons/icons-meta.json +42 -0
- package/es/icons/icons-pdf.lock +78 -0
- package/es/icons/icons-svg.lock +78 -0
- package/es/icons/index.d.ts +7 -1
- package/es/icons/index.js +7 -1
- package/es/icons/layout_card.d.ts +2 -0
- package/es/icons/layout_card.js +29 -0
- package/es/icons/layout_card_medium.d.ts +2 -0
- package/es/icons/layout_card_medium.js +29 -0
- package/es/icons/secondary_icons.d.ts +4 -1
- package/es/icons/secondary_icons.js +4 -1
- package/es/icons/secondary_icons_medium.d.ts +4 -1
- package/es/icons/secondary_icons_medium.js +4 -1
- package/es/icons/unlock.d.ts +2 -0
- package/es/icons/unlock.js +28 -0
- package/es/icons/unlock_medium.d.ts +2 -0
- package/es/icons/unlock_medium.js +28 -0
- package/es/index.d.ts +2 -1
- package/es/index.js +2 -1
- package/es/shared/Context.d.ts +2 -0
- package/es/shared/Eufemia.js +1 -1
- package/es/shared/component-helper.d.ts +1 -1
- package/es/shared/component-helper.js +3 -9
- package/es/shared/locales/en-GB.d.ts +15 -0
- package/es/shared/locales/en-GB.js +15 -0
- package/es/shared/locales/en-US.d.ts +15 -0
- package/es/shared/locales/index.d.ts +30 -0
- package/es/shared/locales/nb-NO.d.ts +15 -0
- package/es/shared/locales/nb-NO.js +15 -0
- package/es/shared/types.d.ts +4 -21
- package/es/shared/types.js +1 -0
- package/es/style/core/helper-classes/helper-classes.scss +1 -1
- package/es/style/core/utilities.scss +0 -2
- package/es/style/dnb-ui-components.css +238 -82
- package/es/style/dnb-ui-components.min.css +4 -4
- package/es/style/dnb-ui-components.scss +1 -0
- package/es/style/dnb-ui-elements.css +55 -35
- package/es/style/dnb-ui-elements.min.css +1 -1
- package/es/style/dnb-ui-fragments.css +15 -0
- package/es/style/dnb-ui-fragments.min.css +1 -1
- package/es/style/dnb-ui-tags.css +108 -69
- package/es/style/dnb-ui-tags.min.css +1 -1
- package/es/style/elements/lists.scss +28 -16
- package/es/style/elements/ui-spacing.scss +3 -1
- package/es/style/themes/theme-eiendom/dnb-theme-eiendom.css +94 -35
- package/es/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
- package/es/style/themes/theme-ui/dnb-theme-ui.css +94 -35
- package/es/style/themes/theme-ui/dnb-theme-ui.min.css +2 -2
- package/es/style/themes/theme-ui/dnb-theme-ui.scss +1 -0
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +4 -4
- package/esm/dnb-ui-elements.min.mjs +3 -3
- package/esm/dnb-ui-extensions.min.mjs +4 -4
- package/esm/dnb-ui-lib.min.mjs +4 -4
- package/esm/dnb-ui-web-components.min.mjs +4 -4
- package/fragments/drawer-list/DrawerListPortal.js +15 -10
- package/fragments/drawer-list/DrawerListProvider.js +48 -45
- package/fragments/drawer-list/style/_drawer-list.scss +10 -0
- package/icons/hierarchy.d.ts +2 -0
- package/icons/hierarchy.js +30 -0
- package/icons/hierarchy_medium.d.ts +2 -0
- package/icons/hierarchy_medium.js +30 -0
- package/icons/icons-meta.json +42 -0
- package/icons/icons-pdf.lock +78 -0
- package/icons/icons-svg.lock +78 -0
- package/icons/index.d.ts +7 -1
- package/icons/index.js +7 -1
- package/icons/layout_card.d.ts +2 -0
- package/icons/layout_card.js +31 -0
- package/icons/layout_card_medium.d.ts +2 -0
- package/icons/layout_card_medium.js +31 -0
- package/icons/secondary_icons.d.ts +4 -1
- package/icons/secondary_icons.js +4 -1
- package/icons/secondary_icons_medium.d.ts +4 -1
- package/icons/secondary_icons_medium.js +4 -1
- package/icons/unlock.d.ts +2 -0
- package/icons/unlock.js +30 -0
- package/icons/unlock_medium.d.ts +2 -0
- package/icons/unlock_medium.js +30 -0
- package/index.d.ts +2 -1
- package/index.js +2 -1
- package/package.json +1 -1
- package/shared/Context.d.ts +2 -0
- package/shared/Eufemia.js +1 -1
- package/shared/component-helper.d.ts +1 -1
- package/shared/component-helper.js +3 -10
- package/shared/locales/en-GB.d.ts +15 -0
- package/shared/locales/en-GB.js +15 -0
- package/shared/locales/en-US.d.ts +15 -0
- package/shared/locales/index.d.ts +30 -0
- package/shared/locales/nb-NO.d.ts +15 -0
- package/shared/locales/nb-NO.js +15 -0
- package/shared/types.d.ts +4 -21
- package/shared/types.js +1 -0
- package/style/core/helper-classes/helper-classes.scss +1 -1
- package/style/core/utilities.scss +0 -2
- package/style/dnb-ui-components.css +238 -82
- package/style/dnb-ui-components.min.css +4 -4
- package/style/dnb-ui-components.scss +1 -0
- package/style/dnb-ui-elements.css +55 -35
- package/style/dnb-ui-elements.min.css +1 -1
- package/style/dnb-ui-fragments.css +15 -0
- package/style/dnb-ui-fragments.min.css +1 -1
- package/style/dnb-ui-tags.css +108 -69
- package/style/dnb-ui-tags.min.css +1 -1
- package/style/elements/lists.scss +28 -16
- package/style/elements/ui-spacing.scss +3 -1
- package/style/themes/theme-eiendom/dnb-theme-eiendom.css +94 -35
- package/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
- package/style/themes/theme-ui/dnb-theme-ui.css +94 -35
- package/style/themes/theme-ui/dnb-theme-ui.min.css +2 -2
- package/style/themes/theme-ui/dnb-theme-ui.scss +1 -0
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +5 -5
- package/umd/dnb-ui-elements.min.js +4 -4
- package/umd/dnb-ui-extensions.min.js +5 -5
- package/umd/dnb-ui-lib.min.js +5 -5
- package/umd/dnb-ui-web-components.min.js +5 -5
- package/cjs/shared/AnimateHeight.d.ts +0 -60
- package/es/shared/AnimateHeight.d.ts +0 -60
- package/shared/AnimateHeight.d.ts +0 -60
|
@@ -6,7 +6,6 @@ import React from 'react';
|
|
|
6
6
|
import ReactDOM from 'react-dom';
|
|
7
7
|
import { makeUniqueId, warn } from '../../shared/component-helper';
|
|
8
8
|
import TooltipContainer from './TooltipContainer';
|
|
9
|
-
import { getTargetElement } from './TooltipHelpers';
|
|
10
9
|
var tooltipPortal;
|
|
11
10
|
|
|
12
11
|
if (typeof globalThis !== 'undefined') {
|
|
@@ -18,7 +17,7 @@ if (typeof globalThis !== 'undefined') {
|
|
|
18
17
|
|
|
19
18
|
function TooltipPortal(props) {
|
|
20
19
|
var active = props.active,
|
|
21
|
-
|
|
20
|
+
targetElement = props.targetElement,
|
|
22
21
|
hideDelay = props.hideDelay,
|
|
23
22
|
keepInDOM = props.keepInDOM,
|
|
24
23
|
noAnimation = props.noAnimation,
|
|
@@ -38,41 +37,61 @@ function TooltipPortal(props) {
|
|
|
38
37
|
return props.group || makeUniqueId();
|
|
39
38
|
}),
|
|
40
39
|
_React$useState6 = _slicedToArray(_React$useState5, 1),
|
|
41
|
-
|
|
40
|
+
id = _React$useState6[0];
|
|
42
41
|
|
|
43
42
|
var isInDOM = React.useRef(false);
|
|
44
43
|
var hasGroup = props.group;
|
|
45
44
|
|
|
46
|
-
if (tooltipPortal[group]) {
|
|
47
|
-
tooltipPortal[group].inDOM = isInDOM.current;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
45
|
var makePortal = function makePortal() {
|
|
51
|
-
if (!tooltipPortal[
|
|
52
|
-
tooltipPortal[
|
|
53
|
-
|
|
46
|
+
if (!tooltipPortal[id]) {
|
|
47
|
+
tooltipPortal[id] = {
|
|
48
|
+
count: 0,
|
|
49
|
+
node: hasGroup ? createGroupElement(id) : createRootElement()
|
|
54
50
|
};
|
|
55
51
|
}
|
|
56
52
|
};
|
|
57
53
|
|
|
58
|
-
var
|
|
59
|
-
|
|
60
|
-
|
|
54
|
+
var clearTimers = function clearTimers() {
|
|
55
|
+
var _tooltipPortal$id, _tooltipPortal$id2;
|
|
56
|
+
|
|
57
|
+
clearTimeout((_tooltipPortal$id = tooltipPortal[id]) === null || _tooltipPortal$id === void 0 ? void 0 : _tooltipPortal$id.delayTimeout);
|
|
58
|
+
clearTimeout((_tooltipPortal$id2 = tooltipPortal[id]) === null || _tooltipPortal$id2 === void 0 ? void 0 : _tooltipPortal$id2.hiddenTimeout);
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
var removeFromDOM = function removeFromDOM(hide) {
|
|
62
|
+
if (isActive && hide) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
var ref = tooltipPortal[id];
|
|
67
|
+
|
|
68
|
+
if (ref !== null && ref !== void 0 && ref.node) {
|
|
69
|
+
ref.count--;
|
|
70
|
+
|
|
71
|
+
if (ref.count <= 0) {
|
|
72
|
+
if (hasGroup) {
|
|
73
|
+
ReactDOM.unmountComponentAtNode(ref.node);
|
|
74
|
+
createRootElement().removeChild(ref.node);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
delete tooltipPortal[id];
|
|
78
|
+
}
|
|
61
79
|
}
|
|
62
80
|
};
|
|
63
81
|
|
|
64
82
|
React.useEffect(function () {
|
|
65
|
-
var _tooltipPortal$group, _tooltipPortal$group2;
|
|
66
|
-
|
|
67
83
|
setIsMounted(true);
|
|
68
|
-
|
|
69
|
-
clearTimeout((_tooltipPortal$group2 = tooltipPortal[group]) === null || _tooltipPortal$group2 === void 0 ? void 0 : _tooltipPortal$group2.hiddenTimeout);
|
|
84
|
+
clearTimers();
|
|
70
85
|
|
|
71
86
|
if (active) {
|
|
72
87
|
makePortal();
|
|
73
88
|
setIsActive(true);
|
|
74
89
|
isInDOM.current = true;
|
|
75
90
|
|
|
91
|
+
if (!isMounted) {
|
|
92
|
+
tooltipPortal[id].count++;
|
|
93
|
+
}
|
|
94
|
+
|
|
76
95
|
if (hasGroup) {
|
|
77
96
|
renderPortal(true);
|
|
78
97
|
}
|
|
@@ -87,19 +106,21 @@ function TooltipPortal(props) {
|
|
|
87
106
|
|
|
88
107
|
var delayHidden = function delayHidden() {
|
|
89
108
|
isInDOM.current = false;
|
|
90
|
-
removeFromDOM();
|
|
109
|
+
removeFromDOM(true);
|
|
91
110
|
};
|
|
92
111
|
|
|
93
112
|
if (noAnimation || globalThis.IS_TEST) {
|
|
94
113
|
delayRender();
|
|
95
114
|
delayHidden();
|
|
96
|
-
} else if (tooltipPortal[
|
|
115
|
+
} else if (tooltipPortal[id]) {
|
|
97
116
|
var delay = parseFloat(String(hideDelay));
|
|
98
|
-
tooltipPortal[
|
|
99
|
-
tooltipPortal[
|
|
117
|
+
tooltipPortal[id].delayTimeout = setTimeout(delayRender, delay);
|
|
118
|
+
tooltipPortal[id].hiddenTimeout = setTimeout(delayHidden, delay + 300);
|
|
100
119
|
}
|
|
101
120
|
}
|
|
102
|
-
|
|
121
|
+
|
|
122
|
+
return clearTimers;
|
|
123
|
+
}, [children, active, id, hideDelay, noAnimation]);
|
|
103
124
|
React.useEffect(function () {
|
|
104
125
|
if (keepInDOM) {
|
|
105
126
|
makePortal();
|
|
@@ -109,13 +130,13 @@ function TooltipPortal(props) {
|
|
|
109
130
|
}, []);
|
|
110
131
|
|
|
111
132
|
var renderPortal = function renderPortal(isActive) {
|
|
112
|
-
var _tooltipPortal$
|
|
133
|
+
var _tooltipPortal$id3;
|
|
113
134
|
|
|
114
|
-
var root = (_tooltipPortal$
|
|
135
|
+
var root = (_tooltipPortal$id3 = tooltipPortal[id]) === null || _tooltipPortal$id3 === void 0 ? void 0 : _tooltipPortal$id3.node;
|
|
115
136
|
|
|
116
137
|
if (root && hasGroup && isInDOM.current) {
|
|
117
138
|
ReactDOM.render(React.createElement(TooltipContainer, _extends({}, props, {
|
|
118
|
-
targetElement:
|
|
139
|
+
targetElement: targetElement,
|
|
119
140
|
active: isActive
|
|
120
141
|
})), root);
|
|
121
142
|
}
|
|
@@ -124,13 +145,13 @@ function TooltipPortal(props) {
|
|
|
124
145
|
};
|
|
125
146
|
|
|
126
147
|
if (!hasGroup) {
|
|
127
|
-
var _tooltipPortal$
|
|
148
|
+
var _tooltipPortal$id4;
|
|
128
149
|
|
|
129
|
-
var root = (_tooltipPortal$
|
|
150
|
+
var root = (_tooltipPortal$id4 = tooltipPortal[id]) === null || _tooltipPortal$id4 === void 0 ? void 0 : _tooltipPortal$id4.node;
|
|
130
151
|
|
|
131
152
|
if (root) {
|
|
132
153
|
return ReactDOM.createPortal(isInDOM.current || keepInDOM ? React.createElement(TooltipContainer, _extends({}, props, {
|
|
133
|
-
targetElement:
|
|
154
|
+
targetElement: targetElement,
|
|
134
155
|
active: isActive
|
|
135
156
|
}), children) : null, root);
|
|
136
157
|
}
|
|
@@ -146,14 +167,16 @@ var createGroupElement = function createGroupElement(id) {
|
|
|
146
167
|
var elem = document.createElement('div');
|
|
147
168
|
elem.classList.add('dnb-tooltip__group');
|
|
148
169
|
elem.setAttribute('id', id);
|
|
149
|
-
createRootElement(
|
|
170
|
+
createRootElement().appendChild(elem);
|
|
150
171
|
return elem;
|
|
151
172
|
} catch (e) {
|
|
152
173
|
warn(e);
|
|
153
174
|
}
|
|
154
175
|
};
|
|
155
176
|
|
|
156
|
-
var createRootElement = function createRootElement(
|
|
177
|
+
var createRootElement = function createRootElement() {
|
|
178
|
+
var className = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'dnb-tooltip__portal';
|
|
179
|
+
|
|
157
180
|
try {
|
|
158
181
|
var element = document.querySelector(".".concat(className));
|
|
159
182
|
|
|
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
3
3
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
4
4
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
5
|
-
var _excluded = ["children"
|
|
5
|
+
var _excluded = ["children"];
|
|
6
6
|
|
|
7
7
|
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; }
|
|
8
8
|
|
|
@@ -20,15 +20,23 @@ import "core-js/modules/web.dom-collections.for-each.js";
|
|
|
20
20
|
import "core-js/modules/es.object.get-own-property-descriptors.js";
|
|
21
21
|
import React from 'react';
|
|
22
22
|
import { combineDescribedBy, warn } from '../../shared/component-helper';
|
|
23
|
+
import TooltipContainer from './TooltipContainer';
|
|
23
24
|
import { getRefElement, injectTooltipSemantic, isTouch, useHandleAria } from './TooltipHelpers';
|
|
24
25
|
import TooltipPortal from './TooltipPortal';
|
|
25
26
|
|
|
26
27
|
function TooltipWithEvents(props) {
|
|
27
28
|
var children = props.children,
|
|
28
|
-
target = props.target,
|
|
29
29
|
restProps = _objectWithoutProperties(props, _excluded);
|
|
30
30
|
|
|
31
|
-
var
|
|
31
|
+
var active = restProps.active,
|
|
32
|
+
target = restProps.target,
|
|
33
|
+
skipPortal = restProps.skipPortal,
|
|
34
|
+
noAnimation = restProps.noAnimation,
|
|
35
|
+
showDelay = restProps.showDelay,
|
|
36
|
+
hideDelay = restProps.hideDelay,
|
|
37
|
+
internalId = restProps.internalId;
|
|
38
|
+
|
|
39
|
+
var _React$useState = React.useState(active),
|
|
32
40
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
33
41
|
isActive = _React$useState2[0],
|
|
34
42
|
setIsActive = _React$useState2[1];
|
|
@@ -38,21 +46,23 @@ function TooltipWithEvents(props) {
|
|
|
38
46
|
isNotSemanticElement = _React$useState4[0],
|
|
39
47
|
setIsNotSemanticElement = _React$useState4[1];
|
|
40
48
|
|
|
41
|
-
var _React$useState5 = React.useState(
|
|
49
|
+
var _React$useState5 = React.useState(!target),
|
|
42
50
|
_React$useState6 = _slicedToArray(_React$useState5, 2),
|
|
43
51
|
isMounted = _React$useState6[0],
|
|
44
52
|
setIsMounted = _React$useState6[1];
|
|
45
53
|
|
|
46
|
-
var
|
|
47
|
-
var targetRef = React.useRef();
|
|
54
|
+
var delayTimeout = React.useRef();
|
|
48
55
|
var cloneRef = React.useRef();
|
|
49
|
-
React.
|
|
50
|
-
targetRef.current = getRefElement(cloneRef);
|
|
56
|
+
var targetRef = React.useRef();
|
|
51
57
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
58
|
+
var clearTimers = function clearTimers() {
|
|
59
|
+
clearTimeout(delayTimeout.current);
|
|
60
|
+
};
|
|
55
61
|
|
|
62
|
+
React.useLayoutEffect(function () {
|
|
63
|
+
targetRef.current = getRefElement(cloneRef);
|
|
64
|
+
}, [target]);
|
|
65
|
+
React.useLayoutEffect(function () {
|
|
56
66
|
if (targetRef.current) {
|
|
57
67
|
setIsMounted(true);
|
|
58
68
|
addEvents(targetRef.current);
|
|
@@ -60,28 +70,14 @@ function TooltipWithEvents(props) {
|
|
|
60
70
|
}
|
|
61
71
|
|
|
62
72
|
return function () {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
if (element) {
|
|
67
|
-
try {
|
|
68
|
-
element.removeEventListener('click', onMouseLeave);
|
|
69
|
-
element.removeEventListener('focus', onFocus);
|
|
70
|
-
element.removeEventListener('blur', onMouseLeave);
|
|
71
|
-
element.removeEventListener('mouseenter', onMouseEnter);
|
|
72
|
-
element.removeEventListener('mouseleave', onMouseLeave);
|
|
73
|
-
element.removeEventListener('touchstart', onMouseEnter);
|
|
74
|
-
element.removeEventListener('touchend', onMouseLeave);
|
|
75
|
-
} catch (e) {
|
|
76
|
-
warn(e);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
73
|
+
clearTimers();
|
|
74
|
+
removeEvents(targetRef.current);
|
|
79
75
|
};
|
|
80
76
|
}, []);
|
|
81
77
|
|
|
82
78
|
var handleSemanticElement = function handleSemanticElement() {
|
|
83
79
|
try {
|
|
84
|
-
var targetElement = document.querySelector("*[aria-describedby*=\"".concat(
|
|
80
|
+
var targetElement = document.querySelector("*[aria-describedby*=\"".concat(internalId, "\"]"));
|
|
85
81
|
|
|
86
82
|
if (targetElement) {
|
|
87
83
|
var role = targetElement.getAttribute('role');
|
|
@@ -110,16 +106,26 @@ function TooltipWithEvents(props) {
|
|
|
110
106
|
}
|
|
111
107
|
};
|
|
112
108
|
|
|
113
|
-
var
|
|
109
|
+
var removeEvents = function removeEvents(element) {
|
|
110
|
+
if (!element) return;
|
|
111
|
+
|
|
114
112
|
try {
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
113
|
+
element.removeEventListener('click', onMouseLeave);
|
|
114
|
+
element.removeEventListener('focus', onFocus);
|
|
115
|
+
element.removeEventListener('blur', onMouseLeave);
|
|
116
|
+
element.removeEventListener('mouseenter', onMouseEnter);
|
|
117
|
+
element.removeEventListener('mouseleave', onMouseLeave);
|
|
118
|
+
element.removeEventListener('touchstart', onMouseEnter);
|
|
119
|
+
element.removeEventListener('touchend', onMouseLeave);
|
|
118
120
|
} catch (e) {
|
|
119
121
|
warn(e);
|
|
120
122
|
}
|
|
121
123
|
};
|
|
122
124
|
|
|
125
|
+
var onFocus = function onFocus(e) {
|
|
126
|
+
return onMouseEnter(e);
|
|
127
|
+
};
|
|
128
|
+
|
|
123
129
|
var onMouseEnter = function onMouseEnter(e) {
|
|
124
130
|
try {
|
|
125
131
|
if (isTouch(e.type)) {
|
|
@@ -134,15 +140,19 @@ function TooltipWithEvents(props) {
|
|
|
134
140
|
setIsActive(true);
|
|
135
141
|
};
|
|
136
142
|
|
|
137
|
-
if (
|
|
143
|
+
if (noAnimation || globalThis.IS_TEST) {
|
|
138
144
|
run();
|
|
139
145
|
} else {
|
|
140
|
-
|
|
141
|
-
|
|
146
|
+
clearTimers();
|
|
147
|
+
delayTimeout.current = setTimeout(run, parseFloat(String(showDelay)) || 1);
|
|
142
148
|
}
|
|
143
149
|
};
|
|
144
150
|
|
|
145
151
|
var onMouseLeave = function onMouseLeave(e) {
|
|
152
|
+
if (active) {
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
155
|
+
|
|
146
156
|
try {
|
|
147
157
|
if (isTouch(e.type)) {
|
|
148
158
|
var elem = e.currentTarget;
|
|
@@ -152,8 +162,17 @@ function TooltipWithEvents(props) {
|
|
|
152
162
|
warn(e);
|
|
153
163
|
}
|
|
154
164
|
|
|
155
|
-
|
|
156
|
-
|
|
165
|
+
clearTimers();
|
|
166
|
+
|
|
167
|
+
var run = function run() {
|
|
168
|
+
setIsActive(false);
|
|
169
|
+
};
|
|
170
|
+
|
|
171
|
+
if (skipPortal) {
|
|
172
|
+
delayTimeout.current = setTimeout(run, parseFloat(String(hideDelay)));
|
|
173
|
+
} else {
|
|
174
|
+
run();
|
|
175
|
+
}
|
|
157
176
|
};
|
|
158
177
|
|
|
159
178
|
var componentWrapper = React.useMemo(function () {
|
|
@@ -164,19 +183,23 @@ function TooltipWithEvents(props) {
|
|
|
164
183
|
return React.cloneElement(target, _objectSpread(_objectSpread({
|
|
165
184
|
ref: cloneRef
|
|
166
185
|
}, params), {}, {
|
|
167
|
-
'aria-describedby': combineDescribedBy(target.props,
|
|
186
|
+
'aria-describedby': combineDescribedBy(target.props, internalId)
|
|
168
187
|
}));
|
|
188
|
+
} else {
|
|
189
|
+
cloneRef.current = target;
|
|
169
190
|
}
|
|
170
191
|
|
|
171
192
|
return null;
|
|
172
193
|
}, [target]);
|
|
173
|
-
useHandleAria(
|
|
174
|
-
return React.createElement(React.Fragment, null,
|
|
175
|
-
|
|
194
|
+
useHandleAria(targetRef.current, internalId);
|
|
195
|
+
return React.createElement(React.Fragment, null, isMounted && (skipPortal ? React.createElement(TooltipContainer, _extends({}, restProps, {
|
|
196
|
+
active: isActive,
|
|
197
|
+
targetElement: targetRef.current
|
|
198
|
+
}), children) : React.createElement(TooltipPortal, _extends({}, restProps, {
|
|
176
199
|
active: isActive,
|
|
177
|
-
|
|
200
|
+
targetElement: targetRef.current,
|
|
178
201
|
keepInDOM: true
|
|
179
|
-
},
|
|
202
|
+
}), children)), componentWrapper);
|
|
180
203
|
}
|
|
181
204
|
|
|
182
205
|
export default TooltipWithEvents;
|
|
@@ -21,10 +21,10 @@
|
|
|
21
21
|
opacity: 0;
|
|
22
22
|
visibility: hidden;
|
|
23
23
|
|
|
24
|
-
transition: opacity 200ms
|
|
24
|
+
transition: opacity 200ms var(--easing-default);
|
|
25
25
|
&--animate_position {
|
|
26
|
-
transition: all 200ms
|
|
27
|
-
opacity 200ms
|
|
26
|
+
transition: all 200ms var(--easing-default),
|
|
27
|
+
opacity 200ms var(--easing-default);
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
&--active {
|
|
@@ -34,15 +34,15 @@
|
|
|
34
34
|
because of the first "show" we also use animation
|
|
35
35
|
also, use forwards because of the usage of visibility
|
|
36
36
|
*/
|
|
37
|
-
animation: show-tooltip 200ms
|
|
37
|
+
animation: show-tooltip 200ms var(--easing-default) forwards;
|
|
38
38
|
}
|
|
39
39
|
html[data-visual-test] &--active,
|
|
40
40
|
&--active#{&}--no-animation {
|
|
41
|
-
animation: show-tooltip 1ms
|
|
41
|
+
animation: show-tooltip 1ms var(--easing-default) forwards;
|
|
42
42
|
}
|
|
43
43
|
&--hide {
|
|
44
44
|
visibility: visible;
|
|
45
|
-
animation: hide-tooltip 200ms
|
|
45
|
+
animation: hide-tooltip 200ms var(--easing-default) forwards;
|
|
46
46
|
}
|
|
47
47
|
&--hide#{&}--no-animation {
|
|
48
48
|
animation: hide-tooltip 1ms linear forwards;
|
|
@@ -92,12 +92,16 @@
|
|
|
92
92
|
opacity: 0;
|
|
93
93
|
visibility: hidden;
|
|
94
94
|
-webkit-transition: opacity 200ms cubic-bezier(0.42, 0, 0, 1);
|
|
95
|
-
transition: opacity 200ms cubic-bezier(0.42, 0, 0, 1);
|
|
95
|
+
transition: opacity 200ms cubic-bezier(0.42, 0, 0, 1);
|
|
96
|
+
-webkit-transition: opacity 200ms var(--easing-default);
|
|
97
|
+
transition: opacity 200ms var(--easing-default); }
|
|
96
98
|
.dnb-tooltip--large {
|
|
97
99
|
padding: 0.25rem 1rem; }
|
|
98
100
|
.dnb-tooltip--animate_position {
|
|
99
101
|
-webkit-transition: all 200ms cubic-bezier(0.42, 0, 0, 1), opacity 200ms cubic-bezier(0.42, 0, 0, 1);
|
|
100
|
-
transition: all 200ms cubic-bezier(0.42, 0, 0, 1), opacity 200ms cubic-bezier(0.42, 0, 0, 1);
|
|
102
|
+
transition: all 200ms cubic-bezier(0.42, 0, 0, 1), opacity 200ms cubic-bezier(0.42, 0, 0, 1);
|
|
103
|
+
-webkit-transition: all 200ms var(--easing-default), opacity 200ms var(--easing-default);
|
|
104
|
+
transition: all 200ms var(--easing-default), opacity 200ms var(--easing-default); }
|
|
101
105
|
.dnb-tooltip--active {
|
|
102
106
|
visibility: visible;
|
|
103
107
|
/*
|
|
@@ -105,14 +109,20 @@
|
|
|
105
109
|
also, use forwards because of the usage of visibility
|
|
106
110
|
*/
|
|
107
111
|
-webkit-animation: show-tooltip 200ms cubic-bezier(0.42, 0, 0, 1) forwards;
|
|
108
|
-
animation: show-tooltip 200ms cubic-bezier(0.42, 0, 0, 1) forwards;
|
|
112
|
+
animation: show-tooltip 200ms cubic-bezier(0.42, 0, 0, 1) forwards;
|
|
113
|
+
-webkit-animation: show-tooltip 200ms var(--easing-default) forwards;
|
|
114
|
+
animation: show-tooltip 200ms var(--easing-default) forwards; }
|
|
109
115
|
html[data-visual-test] .dnb-tooltip--active, .dnb-tooltip--active.dnb-tooltip--no-animation {
|
|
110
116
|
-webkit-animation: show-tooltip 1ms cubic-bezier(0.42, 0, 0, 1) forwards;
|
|
111
|
-
animation: show-tooltip 1ms cubic-bezier(0.42, 0, 0, 1) forwards;
|
|
117
|
+
animation: show-tooltip 1ms cubic-bezier(0.42, 0, 0, 1) forwards;
|
|
118
|
+
-webkit-animation: show-tooltip 1ms var(--easing-default) forwards;
|
|
119
|
+
animation: show-tooltip 1ms var(--easing-default) forwards; }
|
|
112
120
|
.dnb-tooltip--hide {
|
|
113
121
|
visibility: visible;
|
|
114
122
|
-webkit-animation: hide-tooltip 200ms cubic-bezier(0.42, 0, 0, 1) forwards;
|
|
115
|
-
animation: hide-tooltip 200ms cubic-bezier(0.42, 0, 0, 1) forwards;
|
|
123
|
+
animation: hide-tooltip 200ms cubic-bezier(0.42, 0, 0, 1) forwards;
|
|
124
|
+
-webkit-animation: hide-tooltip 200ms var(--easing-default) forwards;
|
|
125
|
+
animation: hide-tooltip 200ms var(--easing-default) forwards; }
|
|
116
126
|
.dnb-tooltip--hide.dnb-tooltip--no-animation {
|
|
117
127
|
-webkit-animation: hide-tooltip 1ms linear forwards;
|
|
118
128
|
animation: hide-tooltip 1ms linear forwards; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.dnb-tooltip{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(0,0,0,0);-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;color:#333;color:var(--color-black-80,#333);font-family:DNB,sans-serif;font-family:var(--font-family-default);font-size:1rem;font-size:var(--font-size-small);font-style:normal;font-weight:400;font-weight:var(--font-weight-basis);line-height:1.5rem;line-height:var(--line-height-basis);margin:0;padding:0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;word-break:break-word}.dnb-tooltip *,.dnb-tooltip :after,.dnb-tooltip :before{background-repeat:no-repeat;-webkit-box-sizing:border-box;box-sizing:border-box}.dnb-tooltip :after,.dnb-tooltip :before{text-decoration:inherit;vertical-align:inherit}.dnb-tooltip{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;justify-content:center;opacity:0;padding:0 1rem;position:absolute;-webkit-transition:opacity .2s cubic-bezier(.42,0,0,1);transition:opacity .2s cubic-bezier(.42,0,0,1);visibility:hidden;z-index:3100}.dnb-tooltip--large{padding:.25rem 1rem}.dnb-tooltip--animate_position{-webkit-transition:all .2s cubic-bezier(.42,0,0,1),opacity .2s cubic-bezier(.42,0,0,1);transition:all .2s cubic-bezier(.42,0,0,1),opacity .2s cubic-bezier(.42,0,0,1)}.dnb-tooltip--active{-webkit-animation:show-tooltip .2s cubic-bezier(.42,0,0,1) forwards;animation:show-tooltip .2s cubic-bezier(.42,0,0,1) forwards;visibility:visible}.dnb-tooltip--active.dnb-tooltip--no-animation,html[data-visual-test] .dnb-tooltip--active{-webkit-animation:show-tooltip 1ms cubic-bezier(.42,0,0,1) forwards;animation:show-tooltip 1ms cubic-bezier(.42,0,0,1) forwards}.dnb-tooltip--hide{-webkit-animation:hide-tooltip .2s cubic-bezier(.42,0,0,1) forwards;animation:hide-tooltip .2s cubic-bezier(.42,0,0,1) forwards;visibility:visible}.dnb-tooltip--hide.dnb-tooltip--no-animation{-webkit-animation:hide-tooltip 1ms linear forwards;animation:hide-tooltip 1ms linear forwards}.dnb-tooltip--fixed{position:fixed}html[data-visual-test] .dnb-tooltip--hide{-webkit-animation:hide-tooltip 1ms linear 1s forwards;animation:hide-tooltip 1ms linear 1s forwards}.dnb-tooltip__portal{left:0;position:absolute;right:0;top:0}.dnb-tooltip__content{min-height:1.5rem;min-width:2rem;padding:0}.dnb-tooltip__arrow{height:.5rem;margin:0;overflow:hidden;pointer-events:none;position:absolute;width:1rem}.dnb-tooltip__arrow:before{bottom:0;content:"";height:1rem;left:0;position:absolute;-webkit-transform:translateY(70%) rotate(45deg);transform:translateY(70%) rotate(45deg);width:1rem}.dnb-tooltip__arrow__position--bottom{top:-.5rem}.dnb-tooltip__arrow__position--top{bottom:-.5rem;-webkit-transform:rotate(180deg);transform:rotate(180deg)}.dnb-tooltip__arrow__position--left{margin-right:3px;right:-.75rem;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.dnb-tooltip__arrow__position--right{left:-.75rem;margin-left:3px;-webkit-transform:rotate(270deg);transform:rotate(270deg)}.dnb-tooltip__arrow__arrow--left{-ms-flex-item-align:start;align-self:flex-start}.dnb-tooltip__arrow__arrow--right{-ms-flex-item-align:end;align-self:flex-end}@-webkit-keyframes show-tooltip{0%{opacity:0}to{opacity:1}}@keyframes show-tooltip{0%{opacity:0}to{opacity:1}}@-webkit-keyframes hide-tooltip{0%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes hide-tooltip{0%{opacity:1}to{opacity:0;visibility:hidden}}
|
|
1
|
+
.dnb-tooltip{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(0,0,0,0);-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;color:#333;color:var(--color-black-80,#333);font-family:DNB,sans-serif;font-family:var(--font-family-default);font-size:1rem;font-size:var(--font-size-small);font-style:normal;font-weight:400;font-weight:var(--font-weight-basis);line-height:1.5rem;line-height:var(--line-height-basis);margin:0;padding:0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;word-break:break-word}.dnb-tooltip *,.dnb-tooltip :after,.dnb-tooltip :before{background-repeat:no-repeat;-webkit-box-sizing:border-box;box-sizing:border-box}.dnb-tooltip :after,.dnb-tooltip :before{text-decoration:inherit;vertical-align:inherit}.dnb-tooltip{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;justify-content:center;opacity:0;padding:0 1rem;position:absolute;-webkit-transition:opacity .2s cubic-bezier(.42,0,0,1);transition:opacity .2s cubic-bezier(.42,0,0,1);-webkit-transition:opacity .2s var(--easing-default);transition:opacity .2s var(--easing-default);visibility:hidden;z-index:3100}.dnb-tooltip--large{padding:.25rem 1rem}.dnb-tooltip--animate_position{-webkit-transition:all .2s cubic-bezier(.42,0,0,1),opacity .2s cubic-bezier(.42,0,0,1);transition:all .2s cubic-bezier(.42,0,0,1),opacity .2s cubic-bezier(.42,0,0,1);-webkit-transition:all .2s var(--easing-default),opacity .2s var(--easing-default);transition:all .2s var(--easing-default),opacity .2s var(--easing-default)}.dnb-tooltip--active{-webkit-animation:show-tooltip .2s cubic-bezier(.42,0,0,1) forwards;animation:show-tooltip .2s cubic-bezier(.42,0,0,1) forwards;-webkit-animation:show-tooltip .2s var(--easing-default) forwards;animation:show-tooltip .2s var(--easing-default) forwards;visibility:visible}.dnb-tooltip--active.dnb-tooltip--no-animation,html[data-visual-test] .dnb-tooltip--active{-webkit-animation:show-tooltip 1ms cubic-bezier(.42,0,0,1) forwards;animation:show-tooltip 1ms cubic-bezier(.42,0,0,1) forwards;-webkit-animation:show-tooltip 1ms var(--easing-default) forwards;animation:show-tooltip 1ms var(--easing-default) forwards}.dnb-tooltip--hide{-webkit-animation:hide-tooltip .2s cubic-bezier(.42,0,0,1) forwards;animation:hide-tooltip .2s cubic-bezier(.42,0,0,1) forwards;-webkit-animation:hide-tooltip .2s var(--easing-default) forwards;animation:hide-tooltip .2s var(--easing-default) forwards;visibility:visible}.dnb-tooltip--hide.dnb-tooltip--no-animation{-webkit-animation:hide-tooltip 1ms linear forwards;animation:hide-tooltip 1ms linear forwards}.dnb-tooltip--fixed{position:fixed}html[data-visual-test] .dnb-tooltip--hide{-webkit-animation:hide-tooltip 1ms linear 1s forwards;animation:hide-tooltip 1ms linear 1s forwards}.dnb-tooltip__portal{left:0;position:absolute;right:0;top:0}.dnb-tooltip__content{min-height:1.5rem;min-width:2rem;padding:0}.dnb-tooltip__arrow{height:.5rem;margin:0;overflow:hidden;pointer-events:none;position:absolute;width:1rem}.dnb-tooltip__arrow:before{bottom:0;content:"";height:1rem;left:0;position:absolute;-webkit-transform:translateY(70%) rotate(45deg);transform:translateY(70%) rotate(45deg);width:1rem}.dnb-tooltip__arrow__position--bottom{top:-.5rem}.dnb-tooltip__arrow__position--top{bottom:-.5rem;-webkit-transform:rotate(180deg);transform:rotate(180deg)}.dnb-tooltip__arrow__position--left{margin-right:3px;right:-.75rem;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.dnb-tooltip__arrow__position--right{left:-.75rem;margin-left:3px;-webkit-transform:rotate(270deg);transform:rotate(270deg)}.dnb-tooltip__arrow__arrow--left{-ms-flex-item-align:start;align-self:flex-start}.dnb-tooltip__arrow__arrow--right{-ms-flex-item-align:end;align-self:flex-end}@-webkit-keyframes show-tooltip{0%{opacity:0}to{opacity:1}}@keyframes show-tooltip{0%{opacity:0}to{opacity:1}}@-webkit-keyframes hide-tooltip{0%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes hide-tooltip{0%{opacity:1}to{opacity:0;visibility:hidden}}
|
|
@@ -24,5 +24,6 @@ export declare type TooltipProps = IncludeSnakeCase<{
|
|
|
24
24
|
tooltip?: React.ReactNode;
|
|
25
25
|
className?: string;
|
|
26
26
|
children?: React.ReactNode;
|
|
27
|
+
style?: React.CSSProperties;
|
|
27
28
|
}>;
|
|
28
29
|
export declare type TooltipAllProps = TooltipProps & SpacingProps & Omit<React.HTMLProps<HTMLElement>, keyof TooltipProps>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import useUpload from './useUpload';
|
|
3
|
+
import { defaultProps } from './UploadContext';
|
|
4
|
+
import type { UploadAllProps } from './types';
|
|
5
|
+
export { defaultProps };
|
|
6
|
+
declare const Upload: {
|
|
7
|
+
(localProps: UploadAllProps): JSX.Element;
|
|
8
|
+
useUpload: typeof useUpload;
|
|
9
|
+
};
|
|
10
|
+
export default Upload;
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import "core-js/modules/es.object.keys.js";
|
|
2
|
+
import "core-js/modules/es.symbol.js";
|
|
3
|
+
import "core-js/modules/es.object.get-own-property-descriptor.js";
|
|
4
|
+
import "core-js/modules/web.dom-collections.for-each.js";
|
|
5
|
+
import "core-js/modules/es.object.get-own-property-descriptors.js";
|
|
6
|
+
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
7
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
8
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
9
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
10
|
+
|
|
11
|
+
var _UploadInfo, _UploadFileInput, _UploadFileList;
|
|
12
|
+
|
|
13
|
+
var _excluded = ["id", "skeleton", "className", "acceptedFileTypes", "filesAmountLimit", "fileMaxSize", "onChange", "onFileDelete", "title", "text", "fileTypeDescription", "fileSizeDescription", "fileAmountDescription", "fileSizeContent", "buttonText", "loadingText", "errorLargeFile", "errorUnsupportedFile", "errorAmountLimit", "deleteButton", "fileListAriaLabel"];
|
|
14
|
+
import "core-js/modules/es.object.to-string.js";
|
|
15
|
+
import "core-js/modules/es.function.name.js";
|
|
16
|
+
import "core-js/modules/es.array.concat.js";
|
|
17
|
+
import "core-js/modules/es.array.map.js";
|
|
18
|
+
import "core-js/modules/es.array.filter.js";
|
|
19
|
+
import "core-js/modules/es.array.slice.js";
|
|
20
|
+
|
|
21
|
+
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; }
|
|
22
|
+
|
|
23
|
+
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; }
|
|
24
|
+
|
|
25
|
+
import React from 'react';
|
|
26
|
+
import classnames from 'classnames';
|
|
27
|
+
import { createSpacingClasses } from '../space/SpacingHelper';
|
|
28
|
+
import Provider from '../../shared/Provider';
|
|
29
|
+
import Context from '../../shared/Context';
|
|
30
|
+
import { extendPropsWithContext, makeUniqueId } from '../../shared/component-helper';
|
|
31
|
+
import UploadFileInput from './UploadFileInput';
|
|
32
|
+
import useUpload from './useUpload';
|
|
33
|
+
import UploadDropzone from './UploadDropzone';
|
|
34
|
+
import { UploadContext, defaultProps } from './UploadContext';
|
|
35
|
+
import { verifyFiles } from './UploadVerify';
|
|
36
|
+
import UploadFileList from './UploadFileList';
|
|
37
|
+
import UploadInfo from './UploadInfo';
|
|
38
|
+
export { defaultProps };
|
|
39
|
+
|
|
40
|
+
var Upload = function Upload(localProps) {
|
|
41
|
+
var context = React.useContext(Context);
|
|
42
|
+
var extendedProps = extendPropsWithContext(localProps, defaultProps, {
|
|
43
|
+
skeleton: context === null || context === void 0 ? void 0 : context.skeleton
|
|
44
|
+
}, context.getTranslation(localProps).Upload, context.Upload);
|
|
45
|
+
|
|
46
|
+
var id = extendedProps.id,
|
|
47
|
+
skeleton = extendedProps.skeleton,
|
|
48
|
+
className = extendedProps.className,
|
|
49
|
+
acceptedFileTypes = extendedProps.acceptedFileTypes,
|
|
50
|
+
filesAmountLimit = extendedProps.filesAmountLimit,
|
|
51
|
+
fileMaxSize = extendedProps.fileMaxSize,
|
|
52
|
+
onChange = extendedProps.onChange,
|
|
53
|
+
onFileDelete = extendedProps.onFileDelete,
|
|
54
|
+
title = extendedProps.title,
|
|
55
|
+
text = extendedProps.text,
|
|
56
|
+
fileTypeDescription = extendedProps.fileTypeDescription,
|
|
57
|
+
fileSizeDescription = extendedProps.fileSizeDescription,
|
|
58
|
+
fileAmountDescription = extendedProps.fileAmountDescription,
|
|
59
|
+
fileSizeContent = extendedProps.fileSizeContent,
|
|
60
|
+
buttonText = extendedProps.buttonText,
|
|
61
|
+
loadingText = extendedProps.loadingText,
|
|
62
|
+
errorLargeFile = extendedProps.errorLargeFile,
|
|
63
|
+
errorUnsupportedFile = extendedProps.errorUnsupportedFile,
|
|
64
|
+
errorAmountLimit = extendedProps.errorAmountLimit,
|
|
65
|
+
deleteButton = extendedProps.deleteButton,
|
|
66
|
+
fileListAriaLabel = extendedProps.fileListAriaLabel,
|
|
67
|
+
props = _objectWithoutProperties(extendedProps, _excluded);
|
|
68
|
+
|
|
69
|
+
var spacingClasses = createSpacingClasses(props);
|
|
70
|
+
|
|
71
|
+
var _useUpload = useUpload(id),
|
|
72
|
+
files = _useUpload.files,
|
|
73
|
+
setFiles = _useUpload.setFiles,
|
|
74
|
+
setInternalFiles = _useUpload.setInternalFiles;
|
|
75
|
+
|
|
76
|
+
return React.createElement(UploadContext.Provider, {
|
|
77
|
+
value: _objectSpread(_objectSpread({}, extendedProps), {}, {
|
|
78
|
+
id: id,
|
|
79
|
+
onInputUpload: onInputUpload
|
|
80
|
+
})
|
|
81
|
+
}, React.createElement(Provider, {
|
|
82
|
+
skeleton: skeleton
|
|
83
|
+
}, React.createElement(UploadDropzone, _extends({
|
|
84
|
+
"data-testid": "upload",
|
|
85
|
+
className: classnames('dnb-upload', spacingClasses, className)
|
|
86
|
+
}, props), _UploadInfo || (_UploadInfo = React.createElement(UploadInfo, null)), _UploadFileInput || (_UploadFileInput = React.createElement(UploadFileInput, null)), _UploadFileList || (_UploadFileList = React.createElement(UploadFileList, null)))));
|
|
87
|
+
|
|
88
|
+
function onInputUpload(newFiles) {
|
|
89
|
+
var existsInFiles = function existsInFiles(file) {
|
|
90
|
+
return files.some(function (_ref) {
|
|
91
|
+
var f = _ref.file;
|
|
92
|
+
return f.name === file.name && f.size === file.size && f.lastModified === file.lastModified;
|
|
93
|
+
});
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
var uniqueFiles = [].concat(_toConsumableArray(files), _toConsumableArray(newFiles.filter(function (_ref2) {
|
|
97
|
+
var file = _ref2.file;
|
|
98
|
+
return !existsInFiles(file);
|
|
99
|
+
}).map(function (fileItem) {
|
|
100
|
+
if (!fileItem.id) {
|
|
101
|
+
fileItem.id = makeUniqueId();
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
return fileItem;
|
|
105
|
+
})));
|
|
106
|
+
var verifiedFiles = verifyFiles(uniqueFiles, {
|
|
107
|
+
fileMaxSize: fileMaxSize,
|
|
108
|
+
acceptedFileTypes: acceptedFileTypes,
|
|
109
|
+
errorUnsupportedFile: errorUnsupportedFile,
|
|
110
|
+
errorLargeFile: errorLargeFile
|
|
111
|
+
});
|
|
112
|
+
|
|
113
|
+
var validFiles = _toConsumableArray(verifiedFiles).slice(0, filesAmountLimit);
|
|
114
|
+
|
|
115
|
+
setFiles(validFiles);
|
|
116
|
+
setInternalFiles(verifiedFiles);
|
|
117
|
+
|
|
118
|
+
if (typeof onChange === 'function') {
|
|
119
|
+
onChange({
|
|
120
|
+
files: validFiles
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
return validFiles;
|
|
125
|
+
}
|
|
126
|
+
};
|
|
127
|
+
|
|
128
|
+
Upload.useUpload = useUpload;
|
|
129
|
+
export default Upload;
|