@dnb/eufemia 9.32.1 → 9.34.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 +43 -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/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/TooltipContainer.js +6 -2
- package/cjs/components/tooltip/TooltipPortal.js +10 -4
- package/cjs/components/tooltip/TooltipWithEvents.js +10 -14
- 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/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/MediaQuery.d.ts +4 -2
- package/cjs/shared/MediaQuery.js +2 -0
- package/cjs/shared/MediaQueryUtils.d.ts +6 -2
- package/cjs/shared/MediaQueryUtils.js +10 -4
- package/cjs/shared/component-helper.d.ts +1 -1
- package/cjs/shared/component-helper.js +5 -11
- package/cjs/shared/index.d.ts +2 -1
- package/cjs/shared/index.js +10 -1
- 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/shared/useMedia.d.ts +25 -0
- package/cjs/shared/useMedia.js +185 -0
- 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 +24 -19
- 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 +48 -38
- package/cjs/style/dnb-ui-tags.min.css +1 -1
- package/cjs/style/elements/lists.scss +28 -16
- package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.css +63 -19
- package/cjs/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
- package/cjs/style/themes/theme-ui/dnb-theme-ui.css +63 -19
- 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/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/TooltipContainer.js +6 -2
- package/components/tooltip/TooltipPortal.js +10 -4
- package/components/tooltip/TooltipWithEvents.js +11 -13
- 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/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/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/TooltipContainer.js +6 -2
- package/es/components/tooltip/TooltipPortal.js +10 -4
- package/es/components/tooltip/TooltipWithEvents.js +11 -13
- 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/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/MediaQuery.d.ts +4 -2
- package/es/shared/MediaQuery.js +2 -0
- package/es/shared/MediaQueryUtils.d.ts +6 -2
- package/es/shared/MediaQueryUtils.js +12 -6
- package/es/shared/component-helper.d.ts +1 -1
- package/es/shared/component-helper.js +2 -8
- package/es/shared/index.d.ts +2 -1
- package/es/shared/index.js +2 -1
- 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/shared/useMedia.d.ts +25 -0
- package/es/shared/useMedia.js +103 -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 +24 -19
- 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 +48 -38
- package/es/style/dnb-ui-tags.min.css +1 -1
- package/es/style/elements/lists.scss +28 -16
- package/es/style/themes/theme-eiendom/dnb-theme-eiendom.css +63 -19
- package/es/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
- package/es/style/themes/theme-ui/dnb-theme-ui.css +63 -19
- 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/MediaQuery.d.ts +4 -2
- package/shared/MediaQuery.js +2 -0
- package/shared/MediaQueryUtils.d.ts +6 -2
- package/shared/MediaQueryUtils.js +12 -6
- package/shared/component-helper.d.ts +1 -1
- package/shared/component-helper.js +2 -9
- package/shared/index.d.ts +2 -1
- package/shared/index.js +2 -1
- 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/shared/useMedia.d.ts +25 -0
- package/shared/useMedia.js +126 -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 +24 -19
- 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 +48 -38
- package/style/dnb-ui-tags.min.css +1 -1
- package/style/elements/lists.scss +28 -16
- package/style/themes/theme-eiendom/dnb-theme-eiendom.css +63 -19
- package/style/themes/theme-eiendom/dnb-theme-eiendom.min.css +2 -2
- package/style/themes/theme-ui/dnb-theme-ui.css +63 -19
- 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
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
+
|
|
4
|
+
var _svg;
|
|
5
|
+
|
|
6
|
+
const _excluded = ["children", "className"];
|
|
7
|
+
import React from 'react';
|
|
8
|
+
import classnames from 'classnames';
|
|
9
|
+
import HeightAnimation from '../height-animation/HeightAnimation';
|
|
10
|
+
import { UploadContext } from './UploadContext';
|
|
11
|
+
export default function UploadDropzone(_ref) {
|
|
12
|
+
let {
|
|
13
|
+
children,
|
|
14
|
+
className
|
|
15
|
+
} = _ref,
|
|
16
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
17
|
+
|
|
18
|
+
const props = rest;
|
|
19
|
+
const context = React.useContext(UploadContext);
|
|
20
|
+
const [hover, setHover] = React.useState(false);
|
|
21
|
+
const hoverTimeout = React.useRef();
|
|
22
|
+
const {
|
|
23
|
+
onInputUpload
|
|
24
|
+
} = context;
|
|
25
|
+
|
|
26
|
+
const getFiles = event => {
|
|
27
|
+
const fileData = event.dataTransfer;
|
|
28
|
+
const files = [];
|
|
29
|
+
Array.from(fileData.files).forEach((file, i) => {
|
|
30
|
+
files.push({
|
|
31
|
+
file
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
return files;
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
const hoverHandler = (event, state) => {
|
|
38
|
+
event.stopPropagation();
|
|
39
|
+
event.preventDefault();
|
|
40
|
+
clearTimers();
|
|
41
|
+
setHover(state);
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
const dropHandler = event => {
|
|
45
|
+
const files = getFiles(event);
|
|
46
|
+
onInputUpload(files);
|
|
47
|
+
hoverHandler(event, false);
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
const dragEnterHandler = event => {
|
|
51
|
+
hoverHandler(event, true);
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
const dragLeaveHandler = event => {
|
|
55
|
+
hoverHandler(event, false);
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
const clearTimers = () => {
|
|
59
|
+
clearTimeout(hoverTimeout.current);
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
React.useEffect(() => clearTimers, []);
|
|
63
|
+
return React.createElement(HeightAnimation, _extends({
|
|
64
|
+
className: classnames(className, hover && 'dnb-upload--active'),
|
|
65
|
+
onDrop: dropHandler,
|
|
66
|
+
onDragOver: dragEnterHandler,
|
|
67
|
+
onDragLeave: dragLeaveHandler
|
|
68
|
+
}, props), children, _svg || (_svg = React.createElement("svg", {
|
|
69
|
+
className: "dnb-upload__outline",
|
|
70
|
+
"aria-hidden": true,
|
|
71
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
72
|
+
fill: "none"
|
|
73
|
+
}, React.createElement("rect", {
|
|
74
|
+
width: "100%",
|
|
75
|
+
height: "100%",
|
|
76
|
+
rx: "0.5rem",
|
|
77
|
+
ry: "0.5rem",
|
|
78
|
+
strokeWidth: "3",
|
|
79
|
+
strokeDashoffset: "4",
|
|
80
|
+
strokeDasharray: "8 8"
|
|
81
|
+
}))));
|
|
82
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
var _UploadStatus;
|
|
2
|
+
|
|
3
|
+
import React, { useEffect, useRef } from 'react';
|
|
4
|
+
import Button from '../button/Button';
|
|
5
|
+
import { folder as FolderIcon } from '../../icons';
|
|
6
|
+
import { makeUniqueId } from '../../shared/component-helper';
|
|
7
|
+
import { UploadContext } from './UploadContext';
|
|
8
|
+
import UploadStatus from './UploadStatus';
|
|
9
|
+
import useUpload from './useUpload';
|
|
10
|
+
|
|
11
|
+
const UploadFileInput = () => {
|
|
12
|
+
const fileInput = useRef(null);
|
|
13
|
+
const context = React.useContext(UploadContext);
|
|
14
|
+
const {
|
|
15
|
+
id,
|
|
16
|
+
acceptedFileTypes,
|
|
17
|
+
buttonText,
|
|
18
|
+
onInputUpload,
|
|
19
|
+
filesAmountLimit
|
|
20
|
+
} = context;
|
|
21
|
+
const {
|
|
22
|
+
internalFiles
|
|
23
|
+
} = useUpload(id);
|
|
24
|
+
const accept = acceptedFileTypes.reduce((accept, format, index) => {
|
|
25
|
+
const previus = index === 0 ? '' : `${accept},`;
|
|
26
|
+
return `${previus} .${format}`;
|
|
27
|
+
}, '');
|
|
28
|
+
useEffect(() => {
|
|
29
|
+
fileInput.current.value = null;
|
|
30
|
+
fileInput.current.accept = accept;
|
|
31
|
+
}, []);
|
|
32
|
+
|
|
33
|
+
const openFileDialog = () => {
|
|
34
|
+
var _fileInput$current;
|
|
35
|
+
|
|
36
|
+
return (_fileInput$current = fileInput.current) === null || _fileInput$current === void 0 ? void 0 : _fileInput$current.click();
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
const sharedId = id || makeUniqueId();
|
|
40
|
+
return React.createElement("div", {
|
|
41
|
+
"data-testid": "upload-file-input"
|
|
42
|
+
}, React.createElement(Button, {
|
|
43
|
+
top: "medium",
|
|
44
|
+
id: `${sharedId}-input`,
|
|
45
|
+
"data-testid": "upload-file-input-button",
|
|
46
|
+
className: "dnb-upload__file-input-button",
|
|
47
|
+
icon: FolderIcon,
|
|
48
|
+
icon_position: "left",
|
|
49
|
+
variant: "secondary",
|
|
50
|
+
wrap: true,
|
|
51
|
+
onClick: openFileDialog,
|
|
52
|
+
disabled: internalFiles.length > filesAmountLimit
|
|
53
|
+
}, buttonText), _UploadStatus || (_UploadStatus = React.createElement(UploadStatus, null)), React.createElement("input", {
|
|
54
|
+
"aria-labelledby": `${sharedId}-input`,
|
|
55
|
+
"data-testid": "upload-file-input-input",
|
|
56
|
+
ref: fileInput,
|
|
57
|
+
className: "dnb-upload__file-input",
|
|
58
|
+
type: "file",
|
|
59
|
+
onChange: handleFileInput,
|
|
60
|
+
multiple: filesAmountLimit > 1
|
|
61
|
+
}));
|
|
62
|
+
|
|
63
|
+
function handleFileInput(event) {
|
|
64
|
+
const target = event.target;
|
|
65
|
+
const {
|
|
66
|
+
files
|
|
67
|
+
} = target;
|
|
68
|
+
onInputUpload(Array.from(files).map(file => {
|
|
69
|
+
return {
|
|
70
|
+
file
|
|
71
|
+
};
|
|
72
|
+
}));
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
export default UploadFileInput;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { UploadContext } from './UploadContext';
|
|
3
|
+
import UploadFileListCell from './UploadFileListCell';
|
|
4
|
+
import useUpload from './useUpload';
|
|
5
|
+
|
|
6
|
+
function UploadFileList() {
|
|
7
|
+
const context = React.useContext(UploadContext);
|
|
8
|
+
const {
|
|
9
|
+
id,
|
|
10
|
+
fileListAriaLabel,
|
|
11
|
+
deleteButton,
|
|
12
|
+
loadingText,
|
|
13
|
+
onFileDelete,
|
|
14
|
+
onChange
|
|
15
|
+
} = context;
|
|
16
|
+
const {
|
|
17
|
+
files,
|
|
18
|
+
setFiles,
|
|
19
|
+
setInternalFiles
|
|
20
|
+
} = useUpload(id);
|
|
21
|
+
|
|
22
|
+
if (files == null || files.length < 1) {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
return React.createElement("ul", {
|
|
27
|
+
"data-testid": "upload-file-list",
|
|
28
|
+
className: "dnb-upload__file-list",
|
|
29
|
+
"aria-label": fileListAriaLabel
|
|
30
|
+
}, files.map((uploadFile, index) => {
|
|
31
|
+
const onDeleteHandler = () => {
|
|
32
|
+
if (typeof onFileDelete === 'function') {
|
|
33
|
+
onFileDelete({
|
|
34
|
+
fileItem: uploadFile
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
const cleanedFiles = files.filter(fileListElement => fileListElement.file != uploadFile.file);
|
|
39
|
+
setFiles(cleanedFiles);
|
|
40
|
+
setInternalFiles(cleanedFiles);
|
|
41
|
+
|
|
42
|
+
if (typeof onChange === 'function') {
|
|
43
|
+
onChange({
|
|
44
|
+
files: cleanedFiles
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
return React.createElement(UploadFileListCell, {
|
|
50
|
+
key: index,
|
|
51
|
+
uploadFile: uploadFile,
|
|
52
|
+
onDelete: onDeleteHandler,
|
|
53
|
+
deleteButtonText: deleteButton,
|
|
54
|
+
loadingText: loadingText
|
|
55
|
+
});
|
|
56
|
+
}));
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export default UploadFileList;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { UploadFile } from './types';
|
|
3
|
+
export declare type UploadFileListCellProps = {
|
|
4
|
+
/**
|
|
5
|
+
* Uploaded file
|
|
6
|
+
*/
|
|
7
|
+
uploadFile: UploadFile;
|
|
8
|
+
/**
|
|
9
|
+
* Calls onDelete when clicking the delete button
|
|
10
|
+
*/
|
|
11
|
+
onDelete: () => void;
|
|
12
|
+
/**
|
|
13
|
+
* Text
|
|
14
|
+
*/
|
|
15
|
+
loadingText: React.ReactNode;
|
|
16
|
+
deleteButtonText: React.ReactNode;
|
|
17
|
+
};
|
|
18
|
+
declare const UploadFileListCell: ({ uploadFile, onDelete, loadingText, deleteButtonText, }: UploadFileListCellProps) => JSX.Element;
|
|
19
|
+
export default UploadFileListCell;
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
var _ProgressIndicator, _Icon;
|
|
2
|
+
|
|
3
|
+
import React, { useRef } from 'react';
|
|
4
|
+
import Button from '../button/Button';
|
|
5
|
+
import Icon from '../../components/Icon';
|
|
6
|
+
import FormStatus from '../../components/FormStatus';
|
|
7
|
+
import ProgressIndicator from '../../components/progress-indicator';
|
|
8
|
+
import P from '../../elements/P';
|
|
9
|
+
import { trash as TrashIcon, exclamation_medium as ExclamationIcon, file_pdf_medium as pdf, file_xls_medium as xls, file_ppt_medium as ppt, file_csv_medium as csv, file_txt_medium as txt, file_xml_medium as xml, file_medium as file } from '../../icons';
|
|
10
|
+
import { getPreviousSibling, warn } from '../../shared/component-helper';
|
|
11
|
+
const images = {
|
|
12
|
+
pdf,
|
|
13
|
+
xls,
|
|
14
|
+
ppt,
|
|
15
|
+
csv,
|
|
16
|
+
txt,
|
|
17
|
+
xml,
|
|
18
|
+
file
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const UploadFileListCell = ({
|
|
22
|
+
uploadFile,
|
|
23
|
+
onDelete,
|
|
24
|
+
loadingText,
|
|
25
|
+
deleteButtonText
|
|
26
|
+
}) => {
|
|
27
|
+
var _div, _a, _FormStatus;
|
|
28
|
+
|
|
29
|
+
const {
|
|
30
|
+
file,
|
|
31
|
+
errorMessage,
|
|
32
|
+
isLoading
|
|
33
|
+
} = uploadFile;
|
|
34
|
+
const {
|
|
35
|
+
name,
|
|
36
|
+
type
|
|
37
|
+
} = file;
|
|
38
|
+
const fileType = type.split('/')[1];
|
|
39
|
+
const hasWarning = errorMessage != null;
|
|
40
|
+
const imageUrl = URL.createObjectURL(file);
|
|
41
|
+
const cellRef = useRef();
|
|
42
|
+
|
|
43
|
+
const handleDisappearFocus = () => {
|
|
44
|
+
try {
|
|
45
|
+
const cellElement = cellRef.current;
|
|
46
|
+
const focusElement = getPreviousSibling('.dnb-upload', cellElement).querySelector('.dnb-upload__file-input-button');
|
|
47
|
+
focusElement.focus();
|
|
48
|
+
} catch (e) {
|
|
49
|
+
warn(e);
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
const onDeleteHandler = () => {
|
|
54
|
+
handleDisappearFocus();
|
|
55
|
+
onDelete();
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
return React.createElement("li", {
|
|
59
|
+
"data-testid": "upload-file-list-cell",
|
|
60
|
+
className: 'dnb-upload__file-cell' + (hasWarning ? " dnb-upload__file-cell--warning" : ""),
|
|
61
|
+
ref: cellRef
|
|
62
|
+
}, React.createElement("div", {
|
|
63
|
+
className: "dnb-upload__file-cell__content"
|
|
64
|
+
}, React.createElement("div", {
|
|
65
|
+
className: "dnb-upload__file-cell__content__left"
|
|
66
|
+
}, getIcon(), getTitle()), React.createElement("div", null, React.createElement(Button, {
|
|
67
|
+
"data-testid": "upload-delete-button",
|
|
68
|
+
icon: TrashIcon,
|
|
69
|
+
variant: "tertiary",
|
|
70
|
+
onClick: onDeleteHandler,
|
|
71
|
+
icon_position: "left"
|
|
72
|
+
}, deleteButtonText))), getWarning());
|
|
73
|
+
|
|
74
|
+
function getIcon() {
|
|
75
|
+
if (isLoading) {
|
|
76
|
+
return _ProgressIndicator || (_ProgressIndicator = React.createElement(ProgressIndicator, {
|
|
77
|
+
"data-testid": "upload-progress-indicator"
|
|
78
|
+
}));
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
if (hasWarning) return _Icon || (_Icon = React.createElement(Icon, {
|
|
82
|
+
icon: ExclamationIcon
|
|
83
|
+
}));
|
|
84
|
+
let iconFileType = fileType;
|
|
85
|
+
|
|
86
|
+
if (!Object.prototype.hasOwnProperty.call(images, fileType)) {
|
|
87
|
+
iconFileType = 'file';
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
return React.createElement(Icon, {
|
|
91
|
+
icon: images[iconFileType]
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
function getTitle() {
|
|
96
|
+
return isLoading ? _div || (_div = React.createElement("div", {
|
|
97
|
+
className: "dnb-upload__file-cell__text-container dnb-upload__file-cell__text-container--loading"
|
|
98
|
+
}, loadingText)) : React.createElement("div", {
|
|
99
|
+
className: "dnb-upload__file-cell__text-container"
|
|
100
|
+
}, _a || (_a = React.createElement("a", {
|
|
101
|
+
"data-testid": "upload-file-anchor",
|
|
102
|
+
target: "_blank",
|
|
103
|
+
href: imageUrl,
|
|
104
|
+
className: "dnb-anchor dnb-upload__file-cell__title",
|
|
105
|
+
rel: "noopener noreferrer"
|
|
106
|
+
}, name)), React.createElement(P, {
|
|
107
|
+
"data-testid": "upload-subtitle",
|
|
108
|
+
className: "dnb-upload__file-cell__subtitle",
|
|
109
|
+
size: "x-small",
|
|
110
|
+
top: "xx-small"
|
|
111
|
+
}, fileType.toUpperCase()));
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
function getWarning() {
|
|
115
|
+
return hasWarning ? _FormStatus || (_FormStatus = React.createElement(FormStatus, {
|
|
116
|
+
"data-testid": "upload-warning",
|
|
117
|
+
top: "small",
|
|
118
|
+
text: errorMessage,
|
|
119
|
+
stretch: true
|
|
120
|
+
})) : null;
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
export default UploadFileListCell;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { defaultProps, UploadContext } from './UploadContext';
|
|
3
|
+
import Lead from '../../elements/Lead';
|
|
4
|
+
import P from '../../elements/P';
|
|
5
|
+
import Dl from '../../elements/Dl';
|
|
6
|
+
import Dt from '../../elements/Dt';
|
|
7
|
+
import Dd from '../../elements/Dd';
|
|
8
|
+
import { format } from '../number-format/NumberUtils';
|
|
9
|
+
|
|
10
|
+
const UploadInfo = () => {
|
|
11
|
+
const context = React.useContext(UploadContext);
|
|
12
|
+
const {
|
|
13
|
+
title,
|
|
14
|
+
text,
|
|
15
|
+
acceptedFileTypes,
|
|
16
|
+
fileTypeDescription,
|
|
17
|
+
fileSizeDescription,
|
|
18
|
+
fileAmountDescription,
|
|
19
|
+
fileSizeContent,
|
|
20
|
+
filesAmountLimit,
|
|
21
|
+
fileMaxSize
|
|
22
|
+
} = context;
|
|
23
|
+
const prettyfiedAcceptedFileFormats = acceptedFileTypes.join(', ').toUpperCase();
|
|
24
|
+
return React.createElement(React.Fragment, null, React.createElement(Lead, {
|
|
25
|
+
"data-testid": "upload-title",
|
|
26
|
+
space: "0"
|
|
27
|
+
}, title), React.createElement(P, {
|
|
28
|
+
"data-testid": "upload-text",
|
|
29
|
+
top: "xx-small",
|
|
30
|
+
className: "dnb-upload__text"
|
|
31
|
+
}, text), React.createElement(Dl, {
|
|
32
|
+
top: "small",
|
|
33
|
+
bottom: 0,
|
|
34
|
+
direction: "horizontal",
|
|
35
|
+
className: "dnb-upload__condition-list"
|
|
36
|
+
}, React.createElement(Dl.Item, null, React.createElement(Dt, {
|
|
37
|
+
"data-testid": "upload-accepted-formats"
|
|
38
|
+
}, fileTypeDescription), React.createElement(Dd, null, prettyfiedAcceptedFileFormats)), React.createElement(Dl.Item, null, React.createElement(Dt, {
|
|
39
|
+
"data-testid": "upload-file-size"
|
|
40
|
+
}, fileSizeDescription), React.createElement(Dd, null, String(fileSizeContent).replace('%size', format(fileMaxSize).toString()))), filesAmountLimit < defaultProps.filesAmountLimit && React.createElement(Dl.Item, null, React.createElement(Dt, {
|
|
41
|
+
"data-testid": "upload-file-amount-limit"
|
|
42
|
+
}, fileAmountDescription), React.createElement(Dd, null, filesAmountLimit))));
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
export default UploadInfo;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { UploadContext } from './UploadContext';
|
|
3
|
+
import FormStatus from '../FormStatus';
|
|
4
|
+
import useUpload from './useUpload';
|
|
5
|
+
import HeightAnimation from '../height-animation/HeightAnimation';
|
|
6
|
+
|
|
7
|
+
const UploadStatus = () => {
|
|
8
|
+
const context = React.useContext(UploadContext);
|
|
9
|
+
const {
|
|
10
|
+
id,
|
|
11
|
+
filesAmountLimit,
|
|
12
|
+
errorAmountLimit
|
|
13
|
+
} = context;
|
|
14
|
+
const {
|
|
15
|
+
internalFiles
|
|
16
|
+
} = useUpload(id);
|
|
17
|
+
return React.createElement(HeightAnimation, {
|
|
18
|
+
open: internalFiles.length > filesAmountLimit
|
|
19
|
+
}, React.createElement(FormStatus, {
|
|
20
|
+
top: true,
|
|
21
|
+
stretch: true
|
|
22
|
+
}, String(errorAmountLimit).replace('%amount', String(filesAmountLimit))));
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export default UploadStatus;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { format } from '../number-format/NumberUtils';
|
|
2
|
+
const BYTES_IN_A_MEGA_BYTE = 1048576;
|
|
3
|
+
export function verifyFiles(files, context) {
|
|
4
|
+
const {
|
|
5
|
+
fileMaxSize,
|
|
6
|
+
acceptedFileTypes,
|
|
7
|
+
errorLargeFile,
|
|
8
|
+
errorUnsupportedFile
|
|
9
|
+
} = context;
|
|
10
|
+
|
|
11
|
+
const handleSize = file => {
|
|
12
|
+
return file.size / BYTES_IN_A_MEGA_BYTE > fileMaxSize ? String(errorLargeFile).replace('%size', format(fileMaxSize).toString()) : null;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
const handleType = file => {
|
|
16
|
+
if (acceptedFileTypes.length === 0) {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const foundType = acceptedFileTypes.some(type => {
|
|
21
|
+
return file.type.includes(type);
|
|
22
|
+
});
|
|
23
|
+
return !foundType ? errorUnsupportedFile : null;
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
const cleanedFiles = files.map(item => {
|
|
27
|
+
const {
|
|
28
|
+
file
|
|
29
|
+
} = item;
|
|
30
|
+
const errorMessage = handleSize(file) || handleType(file);
|
|
31
|
+
|
|
32
|
+
if (errorMessage) {
|
|
33
|
+
item.errorMessage = errorMessage;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
return item;
|
|
37
|
+
});
|
|
38
|
+
return cleanedFiles;
|
|
39
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Upload component
|
|
3
|
+
*
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
.dnb-upload {
|
|
7
|
+
display: flex;
|
|
8
|
+
flex-direction: column;
|
|
9
|
+
|
|
10
|
+
position: relative;
|
|
11
|
+
padding: var(--spacing-medium);
|
|
12
|
+
|
|
13
|
+
@include allBelow(small) {
|
|
14
|
+
padding: var(--spacing-medium) var(--spacing-small);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
background-color: var(--color-white);
|
|
18
|
+
|
|
19
|
+
// svg element
|
|
20
|
+
&__outline {
|
|
21
|
+
content: '';
|
|
22
|
+
|
|
23
|
+
pointer-events: none;
|
|
24
|
+
|
|
25
|
+
position: absolute;
|
|
26
|
+
inset: 0;
|
|
27
|
+
|
|
28
|
+
height: 100%;
|
|
29
|
+
width: 100%;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
&__file-input {
|
|
33
|
+
position: absolute;
|
|
34
|
+
visibility: hidden;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
&__file-list {
|
|
38
|
+
position: relative;
|
|
39
|
+
|
|
40
|
+
padding: 0;
|
|
41
|
+
margin-top: var(--spacing-medium);
|
|
42
|
+
margin-bottom: 0;
|
|
43
|
+
|
|
44
|
+
list-style: none;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// Border on top/bottom of list items
|
|
48
|
+
&__file-list::before,
|
|
49
|
+
&__file-cell::after {
|
|
50
|
+
content: '';
|
|
51
|
+
position: absolute;
|
|
52
|
+
inset: 0;
|
|
53
|
+
height: 1px;
|
|
54
|
+
background-color: var(--color-black-8);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
&__file-cell {
|
|
58
|
+
position: relative;
|
|
59
|
+
padding: var(--spacing-small) 0;
|
|
60
|
+
|
|
61
|
+
// Align border to bottom
|
|
62
|
+
&::after {
|
|
63
|
+
top: auto;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
&__content {
|
|
67
|
+
display: flex;
|
|
68
|
+
flex-direction: row;
|
|
69
|
+
|
|
70
|
+
justify-content: space-between;
|
|
71
|
+
align-items: center;
|
|
72
|
+
|
|
73
|
+
&__left {
|
|
74
|
+
display: flex;
|
|
75
|
+
flex-direction: row;
|
|
76
|
+
align-items: center;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
&__text-container {
|
|
81
|
+
display: flex;
|
|
82
|
+
flex-direction: column;
|
|
83
|
+
|
|
84
|
+
margin-left: var(--spacing-small);
|
|
85
|
+
|
|
86
|
+
&--loading {
|
|
87
|
+
font-size: var(--font-size-basis);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|