@dnb/eufemia 10.75.3 → 10.76.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/cjs/components/DateFormat.d.ts +12 -0
- package/cjs/components/DateFormat.js +24 -0
- package/cjs/components/DateFormat.js.map +1 -0
- package/cjs/components/PortalRoot.d.ts +12 -0
- package/cjs/components/PortalRoot.js +24 -0
- package/cjs/components/PortalRoot.js.map +1 -0
- package/cjs/components/breadcrumb/Breadcrumb.d.ts +4 -0
- package/cjs/components/breadcrumb/Breadcrumb.js +9 -4
- package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/cjs/components/breadcrumb/BreadcrumbDocs.js +5 -0
- package/cjs/components/breadcrumb/BreadcrumbDocs.js.map +1 -1
- package/cjs/components/card/Card.d.ts +4 -0
- package/cjs/components/card/Card.js +13 -4
- package/cjs/components/card/Card.js.map +1 -1
- package/cjs/components/card/CardDocs.js +1 -1
- package/cjs/components/card/CardDocs.js.map +1 -1
- package/cjs/components/checkbox/Checkbox.js.map +1 -1
- package/cjs/components/date-format/DateFormat.d.ts +30 -0
- package/cjs/components/date-format/DateFormat.js +86 -0
- package/cjs/components/date-format/DateFormat.js.map +1 -0
- package/cjs/components/date-format/DateFormatDocs.d.ts +2 -0
- package/cjs/components/date-format/DateFormatDocs.js +34 -0
- package/cjs/components/date-format/DateFormatDocs.js.map +1 -0
- package/cjs/components/date-format/DateFormatUtils.d.ts +11 -0
- package/cjs/components/date-format/DateFormatUtils.js +36 -0
- package/cjs/components/date-format/DateFormatUtils.js.map +1 -0
- package/cjs/components/date-format/index.d.ts +7 -0
- package/cjs/components/date-format/index.js +24 -0
- package/cjs/components/date-format/index.js.map +1 -0
- package/cjs/components/date-picker/DatePicker.js +5 -8
- package/cjs/components/date-picker/DatePicker.js.map +1 -1
- package/cjs/components/date-picker/DatePickerCalc.d.ts +0 -13
- package/cjs/components/date-picker/DatePickerCalc.js +0 -44
- package/cjs/components/date-picker/DatePickerCalc.js.map +1 -1
- package/cjs/components/date-picker/DatePickerCalendar.js +11 -10
- package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
- package/cjs/components/date-picker/DatePickerCalendarNavigator.js +7 -7
- package/cjs/components/date-picker/DatePickerCalendarNavigator.js.map +1 -1
- package/cjs/components/date-picker/DatePickerInput.js +2 -1
- package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
- package/cjs/components/date-picker/DatePickerPortal.d.ts +1 -1
- package/cjs/components/date-picker/DatePickerPortal.js +4 -4
- package/cjs/components/date-picker/DatePickerPortal.js.map +1 -1
- package/cjs/components/form-status/FormStatus.js +1 -1
- package/cjs/components/form-status/FormStatus.js.map +1 -1
- package/cjs/components/form-status/style/dnb-form-status.css +1 -1
- package/cjs/components/form-status/style/dnb-form-status.min.css +1 -1
- package/cjs/components/form-status/style/dnb-form-status.scss +1 -1
- package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +11 -2
- package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -1
- package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +6 -2
- package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +1 -1
- package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -1
- package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +1 -1
- package/cjs/components/help-button/style/dnb-help-button-inline.css +1 -1
- package/cjs/components/help-button/style/dnb-help-button-inline.min.css +1 -1
- package/cjs/components/help-button/style/dnb-help-button-inline.scss +1 -1
- package/cjs/components/help-button/style/dnb-help-button.css +1 -1
- package/cjs/components/help-button/style/dnb-help-button.min.css +1 -1
- package/cjs/components/index.d.ts +3 -1
- package/cjs/components/index.js +14 -0
- package/cjs/components/index.js.map +1 -1
- package/cjs/components/info-card/style/dnb-info-card.css +1 -1
- package/cjs/components/info-card/style/dnb-info-card.min.css +1 -1
- package/cjs/components/info-card/style/dnb-info-card.scss +1 -1
- package/cjs/components/lib.d.ts +5 -1
- package/cjs/components/lib.js +16 -0
- package/cjs/components/lib.js.map +1 -1
- package/cjs/components/modal/ModalRoot.d.ts +2 -7
- package/cjs/components/modal/ModalRoot.js +9 -65
- package/cjs/components/modal/ModalRoot.js.map +1 -1
- package/cjs/components/portal-root/PortalRoot.d.ts +7 -0
- package/cjs/components/portal-root/PortalRoot.js +65 -0
- package/cjs/components/portal-root/PortalRoot.js.map +1 -0
- package/cjs/components/portal-root/PortalRootDocs.d.ts +2 -0
- package/cjs/components/portal-root/PortalRootDocs.js +19 -0
- package/cjs/components/portal-root/PortalRootDocs.js.map +1 -0
- package/cjs/components/portal-root/index.d.ts +7 -0
- package/cjs/components/portal-root/index.js +24 -0
- package/cjs/components/portal-root/index.js.map +1 -0
- package/cjs/components/section/style/themes/dnb-section-theme-sbanken.css +1 -1
- package/cjs/components/section/style/themes/dnb-section-theme-sbanken.min.css +1 -1
- package/cjs/components/section/style/themes/dnb-section-theme-sbanken.scss +1 -1
- package/cjs/components/step-indicator/StepIndicator.js +6 -2
- package/cjs/components/step-indicator/StepIndicator.js.map +1 -1
- package/cjs/components/step-indicator/StepIndicatorDocs.js +1 -1
- package/cjs/components/step-indicator/StepIndicatorDocs.js.map +1 -1
- package/cjs/components/step-indicator/StepIndicatorTriggerButton.d.ts +2 -1
- package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +5 -3
- package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
- package/cjs/components/switch/Switch.d.ts +12 -3
- package/cjs/components/switch/Switch.js +39 -15
- package/cjs/components/switch/Switch.js.map +1 -1
- package/cjs/components/switch/SwitchDocs.js +5 -0
- package/cjs/components/switch/SwitchDocs.js.map +1 -1
- package/cjs/components/tooltip/TooltipPortal.js +28 -59
- package/cjs/components/tooltip/TooltipPortal.js.map +1 -1
- package/cjs/components/tooltip/style/dnb-tooltip.css +8 -1
- package/cjs/components/tooltip/style/dnb-tooltip.min.css +1 -1
- package/cjs/components/tooltip/style/dnb-tooltip.scss +8 -1
- package/cjs/components/upload/Upload.js +31 -7
- package/cjs/components/upload/Upload.js.map +1 -1
- package/cjs/components/upload/UploadContext.d.ts +1 -0
- package/cjs/components/upload/UploadContext.js +2 -1
- package/cjs/components/upload/UploadContext.js.map +1 -1
- package/cjs/components/upload/UploadDocs.js +11 -1
- package/cjs/components/upload/UploadDocs.js.map +1 -1
- package/cjs/components/upload/UploadDropzone.d.ts +3 -1
- package/cjs/components/upload/UploadDropzone.js +5 -4
- package/cjs/components/upload/UploadDropzone.js.map +1 -1
- package/cjs/components/upload/UploadFileInput.d.ts +3 -1
- package/cjs/components/upload/UploadFileInput.js +7 -5
- package/cjs/components/upload/UploadFileInput.js.map +1 -1
- package/cjs/components/upload/style/dnb-upload.css +10 -2
- package/cjs/components/upload/style/dnb-upload.min.css +1 -1
- package/cjs/components/upload/style/dnb-upload.scss +12 -2
- package/cjs/components/upload/types.d.ts +4 -0
- package/cjs/components/upload/types.js.map +1 -1
- package/cjs/elements/lists/style/lists-mixins.scss +1 -1
- package/cjs/extensions/forms/Connectors/Bring/address.d.ts +48 -0
- package/cjs/extensions/forms/Connectors/Bring/address.js +185 -0
- package/cjs/extensions/forms/Connectors/Bring/address.js.map +1 -0
- package/cjs/extensions/forms/Connectors/Bring/index.d.ts +1 -0
- package/cjs/extensions/forms/Connectors/Bring/index.js +3 -1
- package/cjs/extensions/forms/Connectors/Bring/index.js.map +1 -1
- package/cjs/extensions/forms/Connectors/Bring/postalCode.js +10 -1
- package/cjs/extensions/forms/Connectors/Bring/postalCode.js.map +1 -1
- package/cjs/extensions/forms/Connectors/createContext.js +3 -0
- package/cjs/extensions/forms/Connectors/createContext.js.map +1 -1
- package/cjs/extensions/forms/Field/Address/Address.d.ts +3 -0
- package/cjs/extensions/forms/Field/Address/Address.js.map +1 -1
- package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js +1 -1
- package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Date/Date.js +11 -8
- package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
- package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.js +3 -3
- package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +15 -6
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/style/dnb-selection.css +0 -2
- package/cjs/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
- package/cjs/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
- package/cjs/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
- package/cjs/extensions/forms/Field/Toggle/Toggle.js +36 -0
- package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/cjs/extensions/forms/Field/Upload/Upload.d.ts +1 -1
- package/cjs/extensions/forms/Field/Upload/Upload.js +26 -7
- package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
- package/cjs/extensions/forms/Field/style/field-sizes.scss +1 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +2 -2
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +1 -1
- package/cjs/extensions/forms/Form/Card/Card.d.ts +3 -6
- package/cjs/extensions/forms/Form/Card/Card.js +1 -1
- package/cjs/extensions/forms/Form/Card/Card.js.map +1 -1
- package/cjs/extensions/forms/Form/Card/CardDocs.d.ts +1 -0
- package/cjs/extensions/forms/Form/Card/CardDocs.js +14 -11
- package/cjs/extensions/forms/Form/Card/CardDocs.js.map +1 -1
- package/cjs/extensions/forms/Value/Date/Date.js +22 -7
- package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
- package/cjs/extensions/forms/Value/style/value-sizes.scss +2 -2
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
- package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/en-GB.d.ts +1 -0
- package/cjs/extensions/forms/constants/locales/en-GB.js +2 -1
- package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/en-US.d.ts +1 -0
- package/cjs/extensions/forms/constants/locales/index.d.ts +2 -0
- package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
- package/cjs/extensions/forms/constants/locales/nb-NO.js +2 -1
- package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
- package/cjs/extensions/forms/constants/locales/sv-SE.js +2 -1
- package/cjs/extensions/forms/constants/locales/sv-SE.js.map +1 -1
- package/cjs/extensions/forms/style/dnb-forms.css +4 -6
- package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
- package/cjs/extensions/payment-card/style/dnb-payment-card.css +1 -0
- package/cjs/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
- package/cjs/fragments/drawer-list/DrawerList.d.ts +6 -3
- package/cjs/fragments/drawer-list/DrawerList.js +6 -5
- package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListHelpers.js +1 -1
- package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListPortal.d.ts +1 -0
- package/cjs/fragments/drawer-list/DrawerListPortal.js +31 -65
- package/cjs/fragments/drawer-list/DrawerListPortal.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListProvider.d.ts +1 -1
- package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/cjs/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
- package/cjs/index.d.ts +3 -1
- package/cjs/index.js +14 -0
- package/cjs/index.js.map +1 -1
- package/cjs/shared/Eufemia.d.ts +2 -2
- package/cjs/shared/Eufemia.js +3 -6
- package/cjs/shared/Eufemia.js.map +1 -1
- package/cjs/shared/build-info/BuildInfo.d.ts +2 -0
- package/cjs/shared/build-info/BuildInfo.js +16 -0
- package/cjs/shared/build-info/BuildInfo.js.map +1 -0
- package/cjs/shared/build-info/BuildInfoData.d.ts +2 -0
- package/cjs/shared/build-info/BuildInfoData.js +9 -0
- package/cjs/shared/build-info/BuildInfoData.js.map +1 -0
- package/cjs/shared/locales/en-GB.d.ts +3 -0
- package/cjs/shared/locales/en-GB.js +3 -0
- package/cjs/shared/locales/en-GB.js.map +1 -1
- package/cjs/shared/locales/en-US.d.ts +3 -0
- package/cjs/shared/locales/index.d.ts +6 -0
- package/cjs/shared/locales/nb-NO.d.ts +3 -0
- package/cjs/shared/locales/nb-NO.js +3 -0
- package/cjs/shared/locales/nb-NO.js.map +1 -1
- package/cjs/shared/locales/sv-SE.d.ts +3 -0
- package/cjs/shared/locales/sv-SE.js +3 -0
- package/cjs/shared/locales/sv-SE.js.map +1 -1
- package/cjs/style/core/scopes.scss +1 -1
- package/cjs/style/dnb-ui-basis.css +1 -1
- package/cjs/style/dnb-ui-basis.min.css +1 -1
- package/cjs/style/dnb-ui-body.css +1 -1
- package/cjs/style/dnb-ui-body.min.css +1 -1
- package/cjs/style/dnb-ui-components.css +27 -14
- package/cjs/style/dnb-ui-components.min.css +4 -4
- package/cjs/style/dnb-ui-core.css +1 -1
- package/cjs/style/dnb-ui-core.min.css +1 -1
- package/cjs/style/dnb-ui-elements.css +1 -1
- package/cjs/style/dnb-ui-elements.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.css +5 -6
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/dnb-ui-forms.css +4 -6
- package/cjs/style/dnb-ui-forms.min.css +1 -1
- package/cjs/style/dnb-ui-fragments.css +1 -1
- package/cjs/style/dnb-ui-fragments.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +2 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +31 -20
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
- package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +5 -6
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +4 -6
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/properties.d.ts +2 -0
- package/cjs/style/themes/theme-eiendom/properties.js +3 -1
- package/cjs/style/themes/theme-eiendom/properties.js.map +1 -1
- package/cjs/style/themes/theme-sbanken/properties.d.ts +2 -0
- package/cjs/style/themes/theme-sbanken/properties.js +2 -0
- package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
- package/cjs/style/themes/theme-sbanken/properties.scss +3 -0
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +2 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +44 -24
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +5 -6
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +4 -6
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-ui/properties.d.ts +2 -0
- package/cjs/style/themes/theme-ui/properties.js +3 -1
- package/cjs/style/themes/theme-ui/properties.js.map +1 -1
- package/cjs/style/themes/theme-ui/properties.scss +3 -0
- package/cjs/style/themes/theme-ui/ui-theme-basis.css +2 -1
- package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +31 -20
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +4 -4
- package/cjs/style/themes/theme-ui/ui-theme-elements.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +5 -6
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-forms.css +4 -6
- package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-properties.css +1 -0
- package/cjs/style/themes/theme-ui/ui-theme-properties.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-tags.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/components/DateFormat.d.ts +12 -0
- package/components/DateFormat.js +4 -0
- package/components/DateFormat.js.map +1 -0
- package/components/PortalRoot.d.ts +12 -0
- package/components/PortalRoot.js +4 -0
- package/components/PortalRoot.js.map +1 -0
- package/components/breadcrumb/Breadcrumb.d.ts +4 -0
- package/components/breadcrumb/Breadcrumb.js +9 -4
- package/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/components/breadcrumb/BreadcrumbDocs.js +5 -0
- package/components/breadcrumb/BreadcrumbDocs.js.map +1 -1
- package/components/card/Card.d.ts +4 -0
- package/components/card/Card.js +13 -4
- package/components/card/Card.js.map +1 -1
- package/components/card/CardDocs.js +1 -1
- package/components/card/CardDocs.js.map +1 -1
- package/components/checkbox/Checkbox.js.map +1 -1
- package/components/date-format/DateFormat.d.ts +30 -0
- package/components/date-format/DateFormat.js +77 -0
- package/components/date-format/DateFormat.js.map +1 -0
- package/components/date-format/DateFormatDocs.d.ts +2 -0
- package/components/date-format/DateFormatDocs.js +28 -0
- package/components/date-format/DateFormatDocs.js.map +1 -0
- package/components/date-format/DateFormatUtils.d.ts +11 -0
- package/components/date-format/DateFormatUtils.js +29 -0
- package/components/date-format/DateFormatUtils.js.map +1 -0
- package/components/date-format/index.d.ts +7 -0
- package/components/date-format/index.js +4 -0
- package/components/date-format/index.js.map +1 -0
- package/components/date-picker/DatePicker.js +3 -6
- package/components/date-picker/DatePicker.js.map +1 -1
- package/components/date-picker/DatePickerCalc.d.ts +0 -13
- package/components/date-picker/DatePickerCalc.js +0 -41
- package/components/date-picker/DatePickerCalc.js.map +1 -1
- package/components/date-picker/DatePickerCalendar.js +7 -6
- package/components/date-picker/DatePickerCalendar.js.map +1 -1
- package/components/date-picker/DatePickerCalendarNavigator.js +4 -4
- package/components/date-picker/DatePickerCalendarNavigator.js.map +1 -1
- package/components/date-picker/DatePickerInput.js +2 -1
- package/components/date-picker/DatePickerInput.js.map +1 -1
- package/components/date-picker/DatePickerPortal.d.ts +1 -1
- package/components/date-picker/DatePickerPortal.js +4 -4
- package/components/date-picker/DatePickerPortal.js.map +1 -1
- package/components/form-status/FormStatus.js +1 -1
- package/components/form-status/FormStatus.js.map +1 -1
- package/components/form-status/style/dnb-form-status.css +1 -1
- package/components/form-status/style/dnb-form-status.min.css +1 -1
- package/components/form-status/style/dnb-form-status.scss +1 -1
- package/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +11 -2
- package/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -1
- package/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +6 -2
- package/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +1 -1
- package/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -1
- package/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +1 -1
- package/components/help-button/style/dnb-help-button-inline.css +1 -1
- package/components/help-button/style/dnb-help-button-inline.min.css +1 -1
- package/components/help-button/style/dnb-help-button-inline.scss +1 -1
- package/components/help-button/style/dnb-help-button.css +1 -1
- package/components/help-button/style/dnb-help-button.min.css +1 -1
- package/components/index.d.ts +3 -1
- package/components/index.js +3 -1
- package/components/index.js.map +1 -1
- package/components/info-card/style/dnb-info-card.css +1 -1
- package/components/info-card/style/dnb-info-card.min.css +1 -1
- package/components/info-card/style/dnb-info-card.scss +1 -1
- package/components/lib.d.ts +5 -1
- package/components/lib.js +5 -1
- package/components/lib.js.map +1 -1
- package/components/modal/ModalRoot.d.ts +2 -7
- package/components/modal/ModalRoot.js +9 -65
- package/components/modal/ModalRoot.js.map +1 -1
- package/components/portal-root/PortalRoot.d.ts +7 -0
- package/components/portal-root/PortalRoot.js +54 -0
- package/components/portal-root/PortalRoot.js.map +1 -0
- package/components/portal-root/PortalRootDocs.d.ts +2 -0
- package/components/portal-root/PortalRootDocs.js +13 -0
- package/components/portal-root/PortalRootDocs.js.map +1 -0
- package/components/portal-root/index.d.ts +7 -0
- package/components/portal-root/index.js +4 -0
- package/components/portal-root/index.js.map +1 -0
- package/components/section/style/themes/dnb-section-theme-sbanken.css +1 -1
- package/components/section/style/themes/dnb-section-theme-sbanken.min.css +1 -1
- package/components/section/style/themes/dnb-section-theme-sbanken.scss +1 -1
- package/components/step-indicator/StepIndicator.js +6 -2
- package/components/step-indicator/StepIndicator.js.map +1 -1
- package/components/step-indicator/StepIndicatorDocs.js +1 -1
- package/components/step-indicator/StepIndicatorDocs.js.map +1 -1
- package/components/step-indicator/StepIndicatorTriggerButton.d.ts +2 -1
- package/components/step-indicator/StepIndicatorTriggerButton.js +5 -3
- package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
- package/components/switch/Switch.d.ts +12 -3
- package/components/switch/Switch.js +40 -16
- package/components/switch/Switch.js.map +1 -1
- package/components/switch/SwitchDocs.js +5 -0
- package/components/switch/SwitchDocs.js.map +1 -1
- package/components/tooltip/TooltipPortal.js +27 -60
- package/components/tooltip/TooltipPortal.js.map +1 -1
- package/components/tooltip/style/dnb-tooltip.css +8 -1
- package/components/tooltip/style/dnb-tooltip.min.css +1 -1
- package/components/tooltip/style/dnb-tooltip.scss +8 -1
- package/components/upload/Upload.js +31 -7
- package/components/upload/Upload.js.map +1 -1
- package/components/upload/UploadContext.d.ts +1 -0
- package/components/upload/UploadContext.js +2 -1
- package/components/upload/UploadContext.js.map +1 -1
- package/components/upload/UploadDocs.js +11 -1
- package/components/upload/UploadDocs.js.map +1 -1
- package/components/upload/UploadDropzone.d.ts +3 -1
- package/components/upload/UploadDropzone.js +5 -4
- package/components/upload/UploadDropzone.js.map +1 -1
- package/components/upload/UploadFileInput.d.ts +3 -1
- package/components/upload/UploadFileInput.js +7 -5
- package/components/upload/UploadFileInput.js.map +1 -1
- package/components/upload/style/dnb-upload.css +10 -2
- package/components/upload/style/dnb-upload.min.css +1 -1
- package/components/upload/style/dnb-upload.scss +12 -2
- package/components/upload/types.d.ts +4 -0
- package/components/upload/types.js.map +1 -1
- package/elements/lists/style/lists-mixins.scss +1 -1
- package/es/components/DateFormat.d.ts +12 -0
- package/es/components/DateFormat.js +4 -0
- package/es/components/DateFormat.js.map +1 -0
- package/es/components/PortalRoot.d.ts +12 -0
- package/es/components/PortalRoot.js +4 -0
- package/es/components/PortalRoot.js.map +1 -0
- package/es/components/breadcrumb/Breadcrumb.d.ts +4 -0
- package/es/components/breadcrumb/Breadcrumb.js +9 -4
- package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/es/components/breadcrumb/BreadcrumbDocs.js +5 -0
- package/es/components/breadcrumb/BreadcrumbDocs.js.map +1 -1
- package/es/components/card/Card.d.ts +4 -0
- package/es/components/card/Card.js +12 -4
- package/es/components/card/Card.js.map +1 -1
- package/es/components/card/CardDocs.js +1 -1
- package/es/components/card/CardDocs.js.map +1 -1
- package/es/components/checkbox/Checkbox.js.map +1 -1
- package/es/components/date-format/DateFormat.d.ts +30 -0
- package/es/components/date-format/DateFormat.js +74 -0
- package/es/components/date-format/DateFormat.js.map +1 -0
- package/es/components/date-format/DateFormatDocs.d.ts +2 -0
- package/es/components/date-format/DateFormatDocs.js +28 -0
- package/es/components/date-format/DateFormatDocs.js.map +1 -0
- package/es/components/date-format/DateFormatUtils.d.ts +11 -0
- package/es/components/date-format/DateFormatUtils.js +27 -0
- package/es/components/date-format/DateFormatUtils.js.map +1 -0
- package/es/components/date-format/index.d.ts +7 -0
- package/es/components/date-format/index.js +4 -0
- package/es/components/date-format/index.js.map +1 -0
- package/es/components/date-picker/DatePicker.js +3 -6
- package/es/components/date-picker/DatePicker.js.map +1 -1
- package/es/components/date-picker/DatePickerCalc.d.ts +0 -13
- package/es/components/date-picker/DatePickerCalc.js +0 -39
- package/es/components/date-picker/DatePickerCalc.js.map +1 -1
- package/es/components/date-picker/DatePickerCalendar.js +7 -6
- package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
- package/es/components/date-picker/DatePickerCalendarNavigator.js +4 -4
- package/es/components/date-picker/DatePickerCalendarNavigator.js.map +1 -1
- package/es/components/date-picker/DatePickerInput.js +2 -1
- package/es/components/date-picker/DatePickerInput.js.map +1 -1
- package/es/components/date-picker/DatePickerPortal.d.ts +1 -1
- package/es/components/date-picker/DatePickerPortal.js +4 -4
- package/es/components/date-picker/DatePickerPortal.js.map +1 -1
- package/es/components/form-status/FormStatus.js +1 -1
- package/es/components/form-status/FormStatus.js.map +1 -1
- package/es/components/form-status/style/dnb-form-status.css +1 -1
- package/es/components/form-status/style/dnb-form-status.min.css +1 -1
- package/es/components/form-status/style/dnb-form-status.scss +1 -1
- package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +11 -2
- package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -1
- package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +6 -2
- package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +1 -1
- package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -1
- package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +1 -1
- package/es/components/help-button/style/dnb-help-button-inline.css +1 -1
- package/es/components/help-button/style/dnb-help-button-inline.min.css +1 -1
- package/es/components/help-button/style/dnb-help-button-inline.scss +1 -1
- package/es/components/help-button/style/dnb-help-button.css +1 -1
- package/es/components/help-button/style/dnb-help-button.min.css +1 -1
- package/es/components/index.d.ts +3 -1
- package/es/components/index.js +3 -1
- package/es/components/index.js.map +1 -1
- package/es/components/info-card/style/dnb-info-card.css +1 -1
- package/es/components/info-card/style/dnb-info-card.min.css +1 -1
- package/es/components/info-card/style/dnb-info-card.scss +1 -1
- package/es/components/lib.d.ts +5 -1
- package/es/components/lib.js +5 -1
- package/es/components/lib.js.map +1 -1
- package/es/components/modal/ModalRoot.d.ts +2 -7
- package/es/components/modal/ModalRoot.js +9 -61
- package/es/components/modal/ModalRoot.js.map +1 -1
- package/es/components/portal-root/PortalRoot.d.ts +7 -0
- package/es/components/portal-root/PortalRoot.js +54 -0
- package/es/components/portal-root/PortalRoot.js.map +1 -0
- package/es/components/portal-root/PortalRootDocs.d.ts +2 -0
- package/es/components/portal-root/PortalRootDocs.js +13 -0
- package/es/components/portal-root/PortalRootDocs.js.map +1 -0
- package/es/components/portal-root/index.d.ts +7 -0
- package/es/components/portal-root/index.js +4 -0
- package/es/components/portal-root/index.js.map +1 -0
- package/es/components/section/style/themes/dnb-section-theme-sbanken.css +1 -1
- package/es/components/section/style/themes/dnb-section-theme-sbanken.min.css +1 -1
- package/es/components/section/style/themes/dnb-section-theme-sbanken.scss +1 -1
- package/es/components/step-indicator/StepIndicator.js +6 -2
- package/es/components/step-indicator/StepIndicator.js.map +1 -1
- package/es/components/step-indicator/StepIndicatorDocs.js +1 -1
- package/es/components/step-indicator/StepIndicatorDocs.js.map +1 -1
- package/es/components/step-indicator/StepIndicatorTriggerButton.d.ts +2 -1
- package/es/components/step-indicator/StepIndicatorTriggerButton.js +5 -3
- package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
- package/es/components/switch/Switch.d.ts +12 -3
- package/es/components/switch/Switch.js +40 -16
- package/es/components/switch/Switch.js.map +1 -1
- package/es/components/switch/SwitchDocs.js +5 -0
- package/es/components/switch/SwitchDocs.js.map +1 -1
- package/es/components/tooltip/TooltipPortal.js +27 -59
- package/es/components/tooltip/TooltipPortal.js.map +1 -1
- package/es/components/tooltip/style/dnb-tooltip.css +8 -1
- package/es/components/tooltip/style/dnb-tooltip.min.css +1 -1
- package/es/components/tooltip/style/dnb-tooltip.scss +8 -1
- package/es/components/upload/Upload.js +31 -7
- package/es/components/upload/Upload.js.map +1 -1
- package/es/components/upload/UploadContext.d.ts +1 -0
- package/es/components/upload/UploadContext.js +2 -1
- package/es/components/upload/UploadContext.js.map +1 -1
- package/es/components/upload/UploadDocs.js +11 -1
- package/es/components/upload/UploadDocs.js.map +1 -1
- package/es/components/upload/UploadDropzone.d.ts +3 -1
- package/es/components/upload/UploadDropzone.js +5 -4
- package/es/components/upload/UploadDropzone.js.map +1 -1
- package/es/components/upload/UploadFileInput.d.ts +3 -1
- package/es/components/upload/UploadFileInput.js +7 -5
- package/es/components/upload/UploadFileInput.js.map +1 -1
- package/es/components/upload/style/dnb-upload.css +10 -2
- package/es/components/upload/style/dnb-upload.min.css +1 -1
- package/es/components/upload/style/dnb-upload.scss +12 -2
- package/es/components/upload/types.d.ts +4 -0
- package/es/components/upload/types.js.map +1 -1
- package/es/elements/lists/style/lists-mixins.scss +1 -1
- package/es/extensions/forms/Connectors/Bring/address.d.ts +48 -0
- package/es/extensions/forms/Connectors/Bring/address.js +169 -0
- package/es/extensions/forms/Connectors/Bring/address.js.map +1 -0
- package/es/extensions/forms/Connectors/Bring/index.d.ts +1 -0
- package/es/extensions/forms/Connectors/Bring/index.js +3 -1
- package/es/extensions/forms/Connectors/Bring/index.js.map +1 -1
- package/es/extensions/forms/Connectors/Bring/postalCode.js +9 -1
- package/es/extensions/forms/Connectors/Bring/postalCode.js.map +1 -1
- package/es/extensions/forms/Connectors/createContext.js +3 -0
- package/es/extensions/forms/Connectors/createContext.js.map +1 -1
- package/es/extensions/forms/Field/Address/Address.d.ts +3 -0
- package/es/extensions/forms/Field/Address/Address.js.map +1 -1
- package/es/extensions/forms/Field/Boolean/BooleanDocs.js +1 -1
- package/es/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
- package/es/extensions/forms/Field/Date/Date.js +5 -2
- package/es/extensions/forms/Field/Date/Date.js.map +1 -1
- package/es/extensions/forms/Field/Indeterminate/Indeterminate.js +3 -3
- package/es/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +15 -6
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/es/extensions/forms/Field/Selection/style/dnb-selection.css +0 -2
- package/es/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
- package/es/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
- package/es/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
- package/es/extensions/forms/Field/Toggle/Toggle.js +37 -1
- package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/es/extensions/forms/Field/Upload/Upload.d.ts +1 -1
- package/es/extensions/forms/Field/Upload/Upload.js +26 -7
- package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
- package/es/extensions/forms/Field/style/field-sizes.scss +1 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +2 -2
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +1 -1
- package/es/extensions/forms/Form/Card/Card.d.ts +3 -6
- package/es/extensions/forms/Form/Card/Card.js +1 -1
- package/es/extensions/forms/Form/Card/Card.js.map +1 -1
- package/es/extensions/forms/Form/Card/CardDocs.d.ts +1 -0
- package/es/extensions/forms/Form/Card/CardDocs.js +12 -10
- package/es/extensions/forms/Form/Card/CardDocs.js.map +1 -1
- package/es/extensions/forms/Value/Date/Date.js +20 -5
- package/es/extensions/forms/Value/Date/Date.js.map +1 -1
- package/es/extensions/forms/Value/style/value-sizes.scss +2 -2
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
- package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
- package/es/extensions/forms/constants/locales/en-GB.d.ts +1 -0
- package/es/extensions/forms/constants/locales/en-GB.js +2 -1
- package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/es/extensions/forms/constants/locales/en-US.d.ts +1 -0
- package/es/extensions/forms/constants/locales/index.d.ts +2 -0
- package/es/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
- package/es/extensions/forms/constants/locales/nb-NO.js +2 -1
- package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/es/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
- package/es/extensions/forms/constants/locales/sv-SE.js +2 -1
- package/es/extensions/forms/constants/locales/sv-SE.js.map +1 -1
- package/es/extensions/forms/style/dnb-forms.css +4 -6
- package/es/extensions/forms/style/dnb-forms.min.css +1 -1
- package/es/extensions/payment-card/style/dnb-payment-card.css +1 -0
- package/es/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
- package/es/fragments/drawer-list/DrawerList.d.ts +6 -3
- package/es/fragments/drawer-list/DrawerList.js +6 -5
- package/es/fragments/drawer-list/DrawerList.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListHelpers.js +1 -1
- package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListPortal.d.ts +1 -0
- package/es/fragments/drawer-list/DrawerListPortal.js +32 -66
- package/es/fragments/drawer-list/DrawerListPortal.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListProvider.d.ts +1 -1
- package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/es/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
- package/es/index.d.ts +3 -1
- package/es/index.js +3 -1
- package/es/index.js.map +1 -1
- package/es/shared/Eufemia.d.ts +2 -2
- package/es/shared/Eufemia.js +3 -3
- package/es/shared/Eufemia.js.map +1 -1
- package/es/shared/build-info/BuildInfo.cjs +22 -0
- package/es/shared/build-info/BuildInfo.d.ts +2 -0
- package/es/shared/build-info/BuildInfo.js +8 -0
- package/es/shared/build-info/BuildInfo.js.map +1 -0
- package/es/shared/build-info/BuildInfoData.cjs +2 -0
- package/es/shared/build-info/BuildInfoData.d.ts +2 -0
- package/es/shared/build-info/BuildInfoData.js +3 -0
- package/es/shared/build-info/BuildInfoData.js.map +1 -0
- package/es/shared/locales/en-GB.d.ts +3 -0
- package/es/shared/locales/en-GB.js +3 -0
- package/es/shared/locales/en-GB.js.map +1 -1
- package/es/shared/locales/en-US.d.ts +3 -0
- package/es/shared/locales/index.d.ts +6 -0
- package/es/shared/locales/nb-NO.d.ts +3 -0
- package/es/shared/locales/nb-NO.js +3 -0
- package/es/shared/locales/nb-NO.js.map +1 -1
- package/es/shared/locales/sv-SE.d.ts +3 -0
- package/es/shared/locales/sv-SE.js +3 -0
- package/es/shared/locales/sv-SE.js.map +1 -1
- package/es/style/core/scopes.scss +1 -1
- package/es/style/dnb-ui-basis.css +1 -1
- package/es/style/dnb-ui-basis.min.css +1 -1
- package/es/style/dnb-ui-body.css +1 -1
- package/es/style/dnb-ui-body.min.css +1 -1
- package/es/style/dnb-ui-components.css +27 -14
- package/es/style/dnb-ui-components.min.css +4 -4
- package/es/style/dnb-ui-core.css +1 -1
- package/es/style/dnb-ui-core.min.css +1 -1
- package/es/style/dnb-ui-elements.css +1 -1
- package/es/style/dnb-ui-elements.min.css +1 -1
- package/es/style/dnb-ui-extensions.css +5 -6
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/dnb-ui-forms.css +4 -6
- package/es/style/dnb-ui-forms.min.css +1 -1
- package/es/style/dnb-ui-fragments.css +1 -1
- package/es/style/dnb-ui-fragments.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +2 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +31 -20
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
- package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +5 -6
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +4 -6
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/es/style/themes/theme-eiendom/properties.d.ts +2 -0
- package/es/style/themes/theme-eiendom/properties.js +3 -1
- package/es/style/themes/theme-eiendom/properties.js.map +1 -1
- package/es/style/themes/theme-sbanken/properties.d.ts +2 -0
- package/es/style/themes/theme-sbanken/properties.js +2 -0
- package/es/style/themes/theme-sbanken/properties.js.map +1 -1
- package/es/style/themes/theme-sbanken/properties.scss +3 -0
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +2 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +44 -24
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +5 -6
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +4 -6
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/es/style/themes/theme-ui/properties.d.ts +2 -0
- package/es/style/themes/theme-ui/properties.js +3 -1
- package/es/style/themes/theme-ui/properties.js.map +1 -1
- package/es/style/themes/theme-ui/properties.scss +3 -0
- package/es/style/themes/theme-ui/ui-theme-basis.css +2 -1
- package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +31 -20
- package/es/style/themes/theme-ui/ui-theme-components.min.css +4 -4
- package/es/style/themes/theme-ui/ui-theme-elements.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-extensions.css +5 -6
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-forms.css +4 -6
- package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-properties.css +1 -0
- package/es/style/themes/theme-ui/ui-theme-properties.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-tags.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +3 -3
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/Connectors/Bring/address.d.ts +48 -0
- package/extensions/forms/Connectors/Bring/address.js +170 -0
- package/extensions/forms/Connectors/Bring/address.js.map +1 -0
- package/extensions/forms/Connectors/Bring/index.d.ts +1 -0
- package/extensions/forms/Connectors/Bring/index.js +2 -0
- package/extensions/forms/Connectors/Bring/index.js.map +1 -1
- package/extensions/forms/Connectors/Bring/postalCode.js +9 -1
- package/extensions/forms/Connectors/Bring/postalCode.js.map +1 -1
- package/extensions/forms/Connectors/createContext.js +3 -0
- package/extensions/forms/Connectors/createContext.js.map +1 -1
- package/extensions/forms/Field/Address/Address.d.ts +3 -0
- package/extensions/forms/Field/Address/Address.js.map +1 -1
- package/extensions/forms/Field/Boolean/BooleanDocs.js +1 -1
- package/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
- package/extensions/forms/Field/Date/Date.js +5 -2
- package/extensions/forms/Field/Date/Date.js.map +1 -1
- package/extensions/forms/Field/Indeterminate/Indeterminate.js +3 -3
- package/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +15 -6
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/extensions/forms/Field/Selection/style/dnb-selection.css +0 -2
- package/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
- package/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
- package/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
- package/extensions/forms/Field/Toggle/Toggle.js +37 -1
- package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/extensions/forms/Field/Upload/Upload.d.ts +1 -1
- package/extensions/forms/Field/Upload/Upload.js +26 -7
- package/extensions/forms/Field/Upload/Upload.js.map +1 -1
- package/extensions/forms/Field/style/field-sizes.scss +1 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.css +2 -2
- package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.scss +1 -1
- package/extensions/forms/Form/Card/Card.d.ts +3 -6
- package/extensions/forms/Form/Card/Card.js +1 -1
- package/extensions/forms/Form/Card/Card.js.map +1 -1
- package/extensions/forms/Form/Card/CardDocs.d.ts +1 -0
- package/extensions/forms/Form/Card/CardDocs.js +12 -10
- package/extensions/forms/Form/Card/CardDocs.js.map +1 -1
- package/extensions/forms/Value/Date/Date.js +20 -5
- package/extensions/forms/Value/Date/Date.js.map +1 -1
- package/extensions/forms/Value/style/value-sizes.scss +2 -2
- package/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
- package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
- package/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
- package/extensions/forms/constants/locales/en-GB.d.ts +1 -0
- package/extensions/forms/constants/locales/en-GB.js +2 -1
- package/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/extensions/forms/constants/locales/en-US.d.ts +1 -0
- package/extensions/forms/constants/locales/index.d.ts +2 -0
- package/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
- package/extensions/forms/constants/locales/nb-NO.js +2 -1
- package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
- package/extensions/forms/constants/locales/sv-SE.js +2 -1
- package/extensions/forms/constants/locales/sv-SE.js.map +1 -1
- package/extensions/forms/style/dnb-forms.css +4 -6
- package/extensions/forms/style/dnb-forms.min.css +1 -1
- package/extensions/payment-card/style/dnb-payment-card.css +1 -0
- package/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
- package/fragments/drawer-list/DrawerList.d.ts +6 -3
- package/fragments/drawer-list/DrawerList.js +6 -5
- package/fragments/drawer-list/DrawerList.js.map +1 -1
- package/fragments/drawer-list/DrawerListHelpers.js +1 -1
- package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
- package/fragments/drawer-list/DrawerListPortal.d.ts +1 -0
- package/fragments/drawer-list/DrawerListPortal.js +32 -66
- package/fragments/drawer-list/DrawerListPortal.js.map +1 -1
- package/fragments/drawer-list/DrawerListProvider.d.ts +1 -1
- package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
- package/index.d.ts +3 -1
- package/index.js +3 -1
- package/index.js.map +1 -1
- package/package.json +1 -1
- package/shared/Eufemia.d.ts +2 -2
- package/shared/Eufemia.js +3 -3
- package/shared/Eufemia.js.map +1 -1
- package/shared/build-info/BuildInfo.cjs +22 -0
- package/shared/build-info/BuildInfo.d.ts +2 -0
- package/shared/build-info/BuildInfo.js +8 -0
- package/shared/build-info/BuildInfo.js.map +1 -0
- package/shared/build-info/BuildInfoData.cjs +2 -0
- package/shared/build-info/BuildInfoData.d.ts +2 -0
- package/shared/build-info/BuildInfoData.js +3 -0
- package/shared/build-info/BuildInfoData.js.map +1 -0
- package/shared/locales/en-GB.d.ts +3 -0
- package/shared/locales/en-GB.js +3 -0
- package/shared/locales/en-GB.js.map +1 -1
- package/shared/locales/en-US.d.ts +3 -0
- package/shared/locales/index.d.ts +6 -0
- package/shared/locales/nb-NO.d.ts +3 -0
- package/shared/locales/nb-NO.js +3 -0
- package/shared/locales/nb-NO.js.map +1 -1
- package/shared/locales/sv-SE.d.ts +3 -0
- package/shared/locales/sv-SE.js +3 -0
- package/shared/locales/sv-SE.js.map +1 -1
- package/style/core/scopes.scss +1 -1
- package/style/dnb-ui-basis.css +1 -1
- package/style/dnb-ui-basis.min.css +1 -1
- package/style/dnb-ui-body.css +1 -1
- package/style/dnb-ui-body.min.css +1 -1
- package/style/dnb-ui-components.css +27 -14
- package/style/dnb-ui-components.min.css +4 -4
- package/style/dnb-ui-core.css +1 -1
- package/style/dnb-ui-core.min.css +1 -1
- package/style/dnb-ui-elements.css +1 -1
- package/style/dnb-ui-elements.min.css +1 -1
- package/style/dnb-ui-extensions.css +5 -6
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/dnb-ui-forms.css +4 -6
- package/style/dnb-ui-forms.min.css +1 -1
- package/style/dnb-ui-fragments.css +1 -1
- package/style/dnb-ui-fragments.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-basis.css +2 -1
- package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.css +31 -20
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
- package/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +5 -6
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-forms.css +4 -6
- package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/style/themes/theme-eiendom/properties.d.ts +2 -0
- package/style/themes/theme-eiendom/properties.js +3 -1
- package/style/themes/theme-eiendom/properties.js.map +1 -1
- package/style/themes/theme-sbanken/properties.d.ts +2 -0
- package/style/themes/theme-sbanken/properties.js +2 -0
- package/style/themes/theme-sbanken/properties.js.map +1 -1
- package/style/themes/theme-sbanken/properties.scss +3 -0
- package/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -1
- package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +2 -2
- package/style/themes/theme-sbanken/sbanken-theme-components.css +44 -24
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
- package/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +5 -6
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-forms.css +4 -6
- package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/style/themes/theme-ui/properties.d.ts +2 -0
- package/style/themes/theme-ui/properties.js +3 -1
- package/style/themes/theme-ui/properties.js.map +1 -1
- package/style/themes/theme-ui/properties.scss +3 -0
- package/style/themes/theme-ui/ui-theme-basis.css +2 -1
- package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-components.css +31 -20
- package/style/themes/theme-ui/ui-theme-components.min.css +4 -4
- package/style/themes/theme-ui/ui-theme-elements.css +1 -1
- package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-extensions.css +5 -6
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-forms.css +4 -6
- package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-properties.css +1 -0
- package/style/themes/theme-ui/ui-theme-properties.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-tags.css +1 -1
- package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +3 -3
- package/umd/dnb-ui-lib.min.js +1 -1
- package/cjs/shared/BuildInfo.d.cts +0 -2
- package/cjs/shared/BuildInfo.js +0 -5
- package/cjs/shared/BuildInfo.js.map +0 -1
- package/es/shared/BuildInfo.cjs +0 -6
- package/es/shared/BuildInfo.d.cts +0 -2
- package/shared/BuildInfo.cjs +0 -6
- package/shared/BuildInfo.d.cts +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawerList.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_componentHelper","_Theme","_SpacingHelper","_DrawerListContext","_DrawerListProvider","_DrawerListPortal","_DrawerListHelpers","_DrawerListItem","_excluded","_excluded2","_excluded3","_excluded4","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_extends","assign","bind","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","propsToFilterOut","on_show","on_hide","handle_dismiss_focus","on_change","on_pre_change","on_resize","on_select","on_state_update","on_key_down","options_render","wrapper_element","DrawerList","props","drawerListContext","useContext","DrawerListContext","drawerList","createElement","DrawerListInstance","data","children","id","rest","_id","makeUniqueId","React","isValidElement","undefined","blurDelay","DrawerListProvider","Component","constructor","keycode","context","hasFocusOnElement","preventDefault","setHidden","event","selected_item","parseFloat","currentTarget","getAttribute","selectItemAndClose","fireSelectEvent","state","componentDidMount","setState","entries","reduce","acc","_ref","key","triangle_position","render","_this$context","extendPropsWithContextInClassComponent","defaultProps","role","align_drawer","fixed_position","independent_width","scrollable","focusable","size","no_animation","no_scroll_animation","prevent_selection","action_menu","is_popup","portal_class","list_class","ignore_events","className","cache_hash","_cache_hash","_wrapper_element","_triangle_position","direction","_direction","max_height","_max_height","_data","opened","_opened","_value","attributes","noNullNumbers","_ref2","active_item","hidden","showFocusRing","closestToTop","closestToBottom","usePortal","addObservers","removeObservers","_refShell","_refTriangle","_refUl","_refRoot","mainParams","classnames","isTrue","createSpacingClasses","listParams","ulParams","tabIndex","style","maxHeight","ref","validateDOMAttributes","ignoreEvents","Items","map","dataItem","__id","hash","liParams","class_name","active","selected","onClick","selectItemHandler","onKeyDown","preventTab","disabled","Item","mainList","Fragment","Options","triangleRef","OnMounted","rootRef","include_owner_width","getThemeClasses","theme","drawerListDefaultProps","memo","forwardRef","prevProps","nextProps","DrawerListItem","HorizontalItem","DrawerListHorizontalItem","PureComponent","componentWillUnmount","_default","exports"],"sources":["../../../../src/fragments/drawer-list/DrawerList.tsx"],"sourcesContent":["/**\n * Web List Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n keycode,\n} from '../../shared/component-helper'\nimport type { SpacingProps } from '../../shared/types'\n\nimport { getThemeClasses } from '../../shared/Theme'\nimport { createSpacingClasses } from '../../components/space/SpacingHelper'\n\nimport DrawerListContext, {\n DrawerListContextProps,\n} from './DrawerListContext'\nimport DrawerListProvider from './DrawerListProvider'\nimport DrawerListPortal from './DrawerListPortal'\nimport { drawerListDefaultProps } from './DrawerListHelpers'\nimport { DrawerListHorizontalItem, DrawerListItem } from './DrawerListItem'\nimport type { DrawerListItemProps } from './DrawerListItem'\n\nconst propsToFilterOut = {\n on_show: null,\n on_hide: null,\n handle_dismiss_focus: null,\n on_change: null,\n on_pre_change: null,\n on_resize: null,\n on_select: null,\n on_state_update: null,\n on_key_down: null,\n options_render: null,\n wrapper_element: null,\n}\n\nexport type DrawerListContent =\n | string\n | React.ReactNode\n | (string | React.ReactNode)[]\nexport type DrawerListDataArrayObject = {\n [customProperty: string]: any\n selected_value?: string | React.ReactNode\n selectedKey?: string | number\n selected_key?: string | number\n suffix_value?: string | React.ReactNode\n content: DrawerListContent\n disabled?: boolean\n /** used by Autocomplete for additional search hits */\n search_content?: string | React.ReactNode | string[]\n /** style prop of the html list item */\n style?: React.CSSProperties\n /** classname added to the html list item */\n class_name?: string\n /** set to true to disable mouse events selected style. Keyboard can still select @deprecated */\n ignore_events?: boolean\n /** internal use only */\n render?: (children: React.ReactNode, id: string) => React.ReactNode\n}\n/** @deprecated use `DrawerListDataArrayItem` */\nexport type DrawerListDataObjectUnion = DrawerListDataArrayItem\nexport type DrawerListDataArrayItem =\n | DrawerListDataArrayObject\n | DrawerListContent\nexport type DrawerListDataArray = DrawerListDataArrayItem[]\nexport type DrawerListDataRecord = Record<string, DrawerListContent>\nexport type DrawerListDataAll = DrawerListDataRecord | DrawerListDataArray\n\nexport type DrawerListOptionsRender = ({\n data,\n Items,\n Item,\n}: {\n data: DrawerListDataArrayObject[]\n Items: React.FunctionComponent\n Item: React.FC<DrawerListItemProps>\n}) => React.ReactNode\nexport type DrawerListValue = string | number\nexport type DrawerListData =\n | string\n | ((...args: any[]) => DrawerListDataAll)\n | DrawerListDataAll\nexport type DrawerListSuffix = React.ReactNode\n\nexport interface DrawerListProps {\n id?: string\n _id?: string\n role?: string\n /**\n * Set a `cache_hash` as a string to enable internal memorizing of the list to enhance rerendering performance. Components like Autocomplete are using this because of the huge data changes due to search and reorder.\n */\n cache_hash?: string\n /**\n * Position of the arrow icon/triangle inside the drawer-list. Set to 'left' or 'right'. Defaults to 'left' if not set.\n */\n triangle_position?: string\n /**\n * Defines if the options list should be scrollable (the `max-height` is set by default to `50vh`).\n */\n scrollable?: boolean\n /**\n * If set to `true`, the element is then focusable by assertive technologies.\n */\n focusable?: boolean\n /**\n * Defines the direction of how the drawer-list shows the options list. Can be 'bottom' or 'top'. Defaults to 'auto'.\n */\n direction?: 'auto' | 'top' | 'bottom'\n size?: 'default' | 'small' | 'medium' | 'large' | number\n /**\n * Defines the minimum height (in `rem`) of the options list.\n */\n min_height?: string | number\n /**\n * Defines the maximum height (in `rem`) of the options list.\n */\n max_height?: string | number\n /**\n * To disable appear/disappear (show/hide) animation.\n */\n no_animation?: boolean\n /**\n * To disable scrolling animation.\n */\n no_scroll_animation?: boolean\n /**\n * If set to `true`, the DrawerList will then not make any permanent selection.\n */\n prevent_selection?: boolean\n action_menu?: boolean\n is_popup?: boolean\n /**\n * Use 'right' to change the options alignment direction. Makes only sense to use in combination with `prevent_selection` or `more_menu` - or if an independent width is used.\n */\n align_drawer?: 'left' | 'right'\n /**\n * Has to be a function, returning the items again. See [example](/uilib/components/fragments/drawer-list#example-usage-of-options_render). This can be used to add additional options above the actual rendered list.\n */\n options_render?: DrawerListOptionsRender\n /**\n * Has to be an HTML Element, ideally a mother element, used to calculate sizes and distances. Also used for the 'click outside' detection. Clicking on the `wrapper_element` will not trigger an outside click.\n */\n wrapper_element?: string | HTMLElement\n /**\n * Define a startup value or handle a re-render without handling the state during the re-render by yourself. Defaults to null.\n */\n default_value?: DrawerListValue\n /**\n * Define a preselected `data` entry. In order of priority, `value` can be set to: object key (if `data` is an object), `selectedKey` prop (if `data` is an array), array index (if no `selectedKey`) or content (if `value` is a non-integer string).\n */\n value?: DrawerListValue\n /**\n * To disable the React Portal behavior.\n */\n skip_portal?: boolean\n /**\n * Define an HTML class that will be set on the DOM portal beside `dnb-drawer-list__portal__style`. Can be useful to handle e.g. a custom `z-index` in relation to a header.\n */\n portal_class?: string\n /**\n * Define an HTML class that will be set on the list, beside `dnb-drawer-list__list`.\n */\n list_class?: string\n /**\n * If set to `true`, the DrawerList will not close on any events.\n */\n prevent_close?: boolean\n /**\n * If set to `true`, the DrawerList will handle its width and position independently of the parent/mother element.\n */\n independent_width?: boolean\n /**\n * If set to `true`, the DrawerList will be fixed in its scroll position by using CSS `position: fixed;`.\n */\n fixed_position?: boolean\n /**\n * If set to `true`, the DrawerList will close on outside clicks, but not on selection.\n */\n keep_open?: boolean\n prevent_focus?: boolean\n /**\n * If set to `true`, search items by the first key will be ignored.\n */\n skip_keysearch?: boolean\n opened?: boolean\n data?: DrawerListData\n prepared_data?: any[]\n /**\n * If set to `true`, all keyboard and mouse events will be ignored.\n */\n ignore_events?: boolean\n className?: string\n /** Accepts the same values as the `data` prop. Will be ignored if `data` is used. Can also accept a single child for custom rendering. */\n children?: DrawerListData | React.ReactElement\n suffix?: DrawerListSuffix\n /**\n * If set to `true`, the HTML body will get locked from scrolling when the Dropdown is open.\n */\n enable_body_lock?: boolean\n /**\n * Defines the available scrollable height. If scrolling should not change the height of the drawer-list, then set it to `0` (useful if the DrawerList is used in fixed positions on contrast to a scrollable page content).\n */\n page_offset?: string | number\n /**\n * Set a HTML element, either as a selector or a DOM element. Can be used to send in an element which will be used to make the direction calculation on.\n */\n observer_element?: string | React.ReactNode\n on_show?: (...args: any[]) => any\n on_hide?: (...args: any[]) => any\n handle_dismiss_focus?: (...args: any[]) => any\n on_change?: (...args: any[]) => any\n on_pre_change?: (...args: any[]) => any\n on_resize?: (...args: any[]) => any\n on_select?: (...args: any[]) => any\n on_state_update?: (...args: any[]) => any\n}\nexport type DrawerListAllProps = DrawerListProps &\n SpacingProps &\n Omit<\n React.HTMLProps<HTMLElement>,\n 'ref' | 'size' | 'label' | 'placeholder' | 'data' | 'children'\n >\nfunction DrawerList(props: DrawerListAllProps) {\n const drawerListContext = useContext(DrawerListContext)\n\n if (drawerListContext?.drawerList) {\n return <DrawerListInstance {...props} />\n }\n\n const { data, children, id, ...rest } = props\n const _id = id || makeUniqueId()\n\n return (\n <DrawerListProvider\n id={_id}\n {...rest}\n data={\n data ||\n (!React.isValidElement(children)\n ? (children as DrawerListData)\n : undefined)\n }\n >\n <DrawerListInstance id={_id} {...props} />\n </DrawerListProvider>\n )\n}\nDrawerList.blurDelay = DrawerListProvider.blurDelay // some ms more than \"DrawerListSlideDown 200ms\" = 201 // some ms more than \"DrawerListSlideDown 200ms\"\n\nclass DrawerListInstance extends React.Component<DrawerListAllProps> {\n static defaultProps = {\n ...drawerListDefaultProps,\n }\n static contextType = DrawerListContext\n context!: React.ContextType<typeof DrawerListContext>\n _id: string\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n this.state = this.state || {}\n }\n\n componentDidMount() {\n // send along the event handlers to the provider state\n\n this.context.drawerList.setState(\n Object.entries(propsToFilterOut).reduce((acc, [key]) => {\n if (this.props[key]) {\n acc[key] = this.props[key]\n }\n return acc\n }, {})\n )\n\n this.context.drawerList.setState({\n triangle_position: this.props.triangle_position,\n })\n }\n preventTab = (e) => {\n switch (keycode(e)) {\n case 'tab':\n if (!this.context.drawerList.hasFocusOnElement) {\n e.preventDefault()\n this.context.drawerList.setHidden()\n }\n break\n\n case 'page down':\n case 'page up':\n e.preventDefault()\n break\n }\n }\n\n selectItemHandler = (event) => {\n // In case we want to stop if the users makes a number selection.\n // Should optional\n // if (getPreviousSibling('dnb-number-format', event.target)) {\n // return // stop\n // }\n const selected_item = parseFloat(\n event.currentTarget.getAttribute('data-item')\n )\n if (selected_item > -1) {\n this.context.drawerList.selectItemAndClose(selected_item, {\n fireSelectEvent: true,\n event,\n })\n }\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n DrawerListInstance.defaultProps\n // TODO: should we only allow getTranslation if we define lang and locale props?\n // this.context.getTranslation(this.props).Button\n )\n\n const {\n role,\n align_drawer,\n fixed_position,\n independent_width,\n scrollable,\n focusable,\n size,\n no_animation,\n no_scroll_animation,\n prevent_selection,\n action_menu,\n is_popup,\n portal_class,\n list_class,\n ignore_events,\n options_render,\n className,\n cache_hash: _cache_hash, // eslint-disable-line\n wrapper_element: _wrapper_element, // eslint-disable-line\n triangle_position: _triangle_position, // eslint-disable-line\n direction: _direction, // eslint-disable-line\n max_height: _max_height, // eslint-disable-line\n id: _id, // eslint-disable-line\n data: _data, // eslint-disable-line\n opened: _opened, // eslint-disable-line\n value: _value, // eslint-disable-line\n children,\n\n ...attributes\n } = props\n\n const id = this._id\n\n function noNullNumbers({\n selected_item,\n active_item,\n max_height,\n ...rest\n }: DrawerListContextProps['drawerList']): DrawerListContextProps['drawerList'] {\n return {\n selected_item: selected_item ?? undefined,\n active_item: active_item ?? undefined,\n max_height: max_height ?? undefined,\n ...rest,\n }\n }\n\n const {\n data,\n opened,\n hidden,\n triangle_position,\n direction,\n max_height,\n cache_hash,\n selected_item,\n active_item,\n showFocusRing,\n closestToTop,\n closestToBottom,\n usePortal,\n addObservers,\n removeObservers,\n _refShell,\n _refTriangle,\n _refUl,\n _refRoot,\n } = noNullNumbers(this.context.drawerList)\n\n const mainParams = {\n id: `${id}-drawer-list`,\n className: classnames(\n 'dnb-drawer-list',\n opened && 'dnb-drawer-list--opened',\n hidden && 'dnb-drawer-list--hidden',\n `dnb-drawer-list--${direction}`,\n triangle_position &&\n `dnb-drawer-list--triangle-position-${triangle_position}`,\n align_drawer && `dnb-drawer-list--${align_drawer}`,\n size && `dnb-drawer-list--${size}`,\n isTrue(action_menu) && `dnb-drawer-list--action-menu`,\n isTrue(is_popup) && 'dnb-drawer-list--is-popup',\n (isTrue(independent_width) || isTrue(action_menu)) &&\n 'dnb-drawer-list--independent-width',\n isTrue(scrollable) && 'dnb-drawer-list--scroll',\n isTrue(no_scroll_animation) &&\n 'dnb-drawer-list--no-scroll-animation',\n createSpacingClasses(props),\n className\n ),\n ...attributes,\n }\n\n const listParams = {\n id: `${id}-listbox`,\n /**\n * We may consider to use the hidden attribute in future\n * Or we may add an prop to put the HTML in the DOM, if needed\n */\n // hidden: hidden !== false,\n className: classnames(\n 'dnb-drawer-list__list',\n isTrue(no_animation) && 'dnb-drawer-list__list--no-animation',\n list_class\n ),\n }\n\n const ulParams = {\n role,\n id: `${id}-ul`,\n 'aria-expanded': opened,\n 'aria-labelledby': `${id}-label`,\n tabIndex: -1,\n style: {\n maxHeight:\n parseFloat(max_height as string) > 0 ? `${max_height}rem` : null,\n },\n ref: _refUl,\n }\n\n if (\n !hidden &&\n (parseFloat(active_item as string) > -1 ||\n (!(parseFloat(active_item as string) > -1) &&\n !(parseFloat(selected_item as string) > -1)))\n ) {\n ulParams['aria-activedescendant'] = `option-${id}-${\n parseFloat(active_item as string) > -1 ? active_item : 0\n }`\n } else if (\n !isTrue(prevent_selection) &&\n !hidden &&\n parseFloat(selected_item as string) > -1\n ) {\n ulParams['aria-activedescendant'] = `option-${id}-${selected_item}`\n }\n\n if (isTrue(focusable)) {\n ulParams.tabIndex = 0\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, mainParams)\n validateDOMAttributes(null, listParams)\n validateDOMAttributes(null, ulParams)\n\n // make it possible to grab the rest attributes and return it with all events\n Object.assign(\n this.context.drawerList.attributes,\n validateDOMAttributes(null, attributes)\n )\n\n const ignoreEvents = isTrue(ignore_events)\n\n const Items = () =>\n data.map((dataItem, i) => {\n const _id = dataItem.__id\n const hash = `option-${id}-${_id}-${i}`\n const liParams = {\n role: role === 'menu' ? 'menuitem' : 'option',\n 'data-item': _id,\n id: `option-${id}-${_id}`,\n hash,\n className: classnames(\n // helper classes\n i === closestToTop && 'closest-to-top',\n i === closestToBottom && 'closest-to-bottom',\n i === 0 && 'first-of-type', // because of the triangle element\n i === data.length - 1 && 'last-of-type', // because of the triangle element\n ignoreEvents || (dataItem.ignore_events && 'ignore-events'),\n dataItem.class_name\n ),\n active: _id == active_item,\n selected: !dataItem.ignore_events && _id == selected_item,\n onClick: this.selectItemHandler,\n onKeyDown: this.preventTab,\n disabled: dataItem.disabled,\n style: dataItem.style,\n }\n\n if (ignoreEvents) {\n liParams.active = null\n liParams.selected = null\n liParams.onClick = null\n liParams.onKeyDown = null\n liParams.className = classnames(\n liParams.className,\n 'dnb-drawer-list__option--ignore'\n )\n }\n\n return (\n <DrawerList.Item key={hash} {...liParams}>\n {dataItem}\n </DrawerList.Item>\n )\n })\n\n const mainList = (\n <span {...mainParams} ref={_refShell}>\n <span {...listParams}>\n {hidden === false && data && data.length > 0 ? (\n <>\n <DrawerList.Options\n cache_hash={\n cache_hash +\n active_item +\n selected_item +\n closestToTop +\n closestToBottom +\n direction +\n max_height\n }\n {...ulParams}\n showFocusRing={showFocusRing}\n triangleRef={_refTriangle}\n >\n {typeof options_render === 'function' ? (\n options_render({ data, Items, Item: DrawerList.Item })\n ) : (\n <Items />\n )}\n </DrawerList.Options>\n <OnMounted\n addObservers={addObservers}\n removeObservers={removeObservers}\n />\n </>\n ) : (\n React.isValidElement(children) && (\n <span className=\"dnb-drawer-list__content\">\n {children}\n <span\n className=\"dnb-drawer-list__triangle\"\n ref={_refTriangle}\n />\n </span>\n )\n )}\n </span>\n </span>\n )\n\n return (\n <span\n className={classnames(\n 'dnb-drawer-list__root',\n usePortal && 'dnb-drawer-list__root--portal'\n )}\n ref={_refRoot}\n >\n {usePortal ? (\n <DrawerListPortal\n id={this._id}\n rootRef={_refRoot}\n opened={hidden === false}\n include_owner_width={align_drawer === 'right'}\n independent_width={isTrue(independent_width)}\n fixed_position={isTrue(fixed_position)}\n className={getThemeClasses(this.context?.theme, portal_class)}\n >\n {mainList}\n </DrawerListPortal>\n ) : (\n mainList\n )}\n </span>\n )\n }\n}\n\nexport type DrawerListOptionsProps = React.HTMLProps<HTMLUListElement> & {\n children: React.ReactNode\n triangleRef?: React.LegacyRef<HTMLLIElement>\n cache_hash?: string\n showFocusRing?: boolean\n}\n// DrawerList List\nDrawerList.Options = React.memo(\n React.forwardRef(\n (\n props: DrawerListOptionsProps,\n ref: React.LegacyRef<HTMLUListElement>\n ) => {\n const {\n children,\n className,\n triangleRef,\n cache_hash, // eslint-disable-line\n showFocusRing = false,\n ...rest\n } = props\n\n return (\n <ul\n className={classnames(\n 'dnb-drawer-list__options',\n showFocusRing && 'dnb-drawer-list__options--focusring',\n className\n )}\n {...rest}\n ref={ref}\n >\n {children}\n <li\n className=\"dnb-drawer-list__triangle\"\n aria-hidden\n ref={triangleRef}\n />\n </ul>\n )\n }\n ),\n (prevProps, nextProps) => {\n if (!prevProps.cache_hash) {\n return null\n }\n return prevProps.cache_hash === nextProps.cache_hash\n }\n)\n\nDrawerList.Item = DrawerListItem\nDrawerList.HorizontalItem = DrawerListHorizontalItem\n\nclass OnMounted extends React.PureComponent<{\n addObservers: () => void\n removeObservers: () => void\n}> {\n componentDidMount() {\n this.props.addObservers()\n }\n componentWillUnmount() {\n this.props.removeObservers()\n }\n render() {\n return null\n }\n}\nexport default DrawerList\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"DrawerList.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_componentHelper","_Theme","_SpacingHelper","_DrawerListContext","_DrawerListProvider","_DrawerListPortal","_DrawerListHelpers","_DrawerListItem","_excluded","_excluded2","_excluded3","_excluded4","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_extends","assign","bind","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","propsToFilterOut","on_show","on_hide","handle_dismiss_focus","on_change","on_pre_change","on_resize","on_select","on_state_update","on_key_down","options_render","wrapper_element","DrawerList","props","drawerListContext","useContext","DrawerListContext","drawerList","createElement","DrawerListInstance","data","children","id","rest","_id","makeUniqueId","React","isValidElement","undefined","blurDelay","DrawerListProvider","Component","constructor","keycode","context","hasFocusOnElement","preventDefault","setHidden","event","selected_item","parseFloat","currentTarget","getAttribute","selectItemAndClose","fireSelectEvent","state","componentDidMount","setState","entries","reduce","acc","_ref","key","triangle_position","render","_this$context","extendPropsWithContextInClassComponent","defaultProps","role","align_drawer","fixed_position","independent_width","scrollable","focusable","size","no_animation","no_scroll_animation","prevent_selection","action_menu","is_popup","portal_class","list_class","ignore_events","className","cache_hash","_cache_hash","_wrapper_element","_triangle_position","direction","_direction","max_height","_max_height","_data","opened","_opened","_value","attributes","noNullNumbers","_ref2","active_item","hidden","showFocusRing","closestToTop","closestToBottom","skipPortal","addObservers","removeObservers","_refShell","_refTriangle","_refUl","_refRoot","mainParams","classnames","isTrue","createSpacingClasses","listParams","ulParams","tabIndex","style","maxHeight","ref","validateDOMAttributes","ignoreEvents","Items","map","dataItem","__id","hash","liParams","class_name","active","selected","onClick","selectItemHandler","onKeyDown","preventTab","disabled","Item","mainList","Fragment","Options","triangleRef","OnMounted","rootRef","include_owner_width","getThemeClasses","theme","drawerListDefaultProps","memo","forwardRef","prevProps","nextProps","DrawerListItem","HorizontalItem","DrawerListHorizontalItem","PureComponent","componentWillUnmount","_default","exports"],"sources":["../../../../src/fragments/drawer-list/DrawerList.tsx"],"sourcesContent":["/**\n * Web List Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n keycode,\n} from '../../shared/component-helper'\nimport type { SpacingProps } from '../../shared/types'\n\nimport { getThemeClasses } from '../../shared/Theme'\nimport { createSpacingClasses } from '../../components/space/SpacingHelper'\n\nimport DrawerListContext, {\n DrawerListContextProps,\n} from './DrawerListContext'\nimport DrawerListProvider from './DrawerListProvider'\nimport DrawerListPortal from './DrawerListPortal'\nimport { drawerListDefaultProps } from './DrawerListHelpers'\nimport { DrawerListHorizontalItem, DrawerListItem } from './DrawerListItem'\nimport type { DrawerListItemProps } from './DrawerListItem'\n\nconst propsToFilterOut = {\n on_show: null,\n on_hide: null,\n handle_dismiss_focus: null,\n on_change: null,\n on_pre_change: null,\n on_resize: null,\n on_select: null,\n on_state_update: null,\n on_key_down: null,\n options_render: null,\n wrapper_element: null,\n}\n\nexport type DrawerListContent =\n | string\n | React.ReactNode\n | (string | React.ReactNode)[]\nexport type DrawerListDataArrayObjectStrict = {\n selected_value?: string | React.ReactNode\n selectedKey?: string | number\n selected_key?: string | number\n suffix_value?: string | React.ReactNode\n content: DrawerListContent\n disabled?: boolean\n /** used by Autocomplete for additional search hits */\n search_content?: string | React.ReactNode | string[]\n /** style prop of the html list item */\n style?: React.CSSProperties\n /** classname added to the html list item */\n class_name?: string\n /** set to true to disable mouse events selected style. Keyboard can still select @deprecated */\n ignore_events?: boolean\n /** internal use only */\n render?: (children: React.ReactNode, id: string) => React.ReactNode\n}\nexport type DrawerListDataArrayObject = {\n [customProperty: string]: any\n} & DrawerListDataArrayObjectStrict\n/** @deprecated use `DrawerListDataArrayItem` */\nexport type DrawerListDataObjectUnion = DrawerListDataArrayItem\nexport type DrawerListDataArrayItem =\n | DrawerListDataArrayObject\n | DrawerListContent\nexport type DrawerListDataArray = DrawerListDataArrayItem[]\nexport type DrawerListDataRecord = Record<string, DrawerListContent>\nexport type DrawerListDataAll = DrawerListDataRecord | DrawerListDataArray\nexport type DrawerListSize =\n | 'default'\n | 'small'\n | 'medium'\n | 'large'\n | number\n\nexport type DrawerListOptionsRender = ({\n data,\n Items,\n Item,\n}: {\n data: DrawerListDataArrayObject[]\n Items: React.FunctionComponent\n Item: React.FC<DrawerListItemProps>\n}) => React.ReactNode\nexport type DrawerListValue = string | number\nexport type DrawerListData =\n | string\n | ((...args: any[]) => DrawerListDataAll)\n | DrawerListDataAll\nexport type DrawerListSuffix = React.ReactNode\n\nexport interface DrawerListProps {\n id?: string\n _id?: string\n role?: string\n /**\n * Set a `cache_hash` as a string to enable internal memorizing of the list to enhance rerendering performance. Components like Autocomplete are using this because of the huge data changes due to search and reorder.\n */\n cache_hash?: string\n /**\n * Position of the arrow icon/triangle inside the drawer-list. Set to 'left' or 'right'. Defaults to 'left' if not set.\n */\n triangle_position?: string\n /**\n * Defines if the options list should be scrollable (the `max-height` is set by default to `50vh`).\n */\n scrollable?: boolean\n /**\n * If set to `true`, the element is then focusable by assertive technologies.\n */\n focusable?: boolean\n /**\n * Defines the direction of how the drawer-list shows the options list. Can be 'bottom' or 'top'. Defaults to 'auto'.\n */\n direction?: 'auto' | 'top' | 'bottom'\n size?: DrawerListSize\n /**\n * Defines the minimum height (in `rem`) of the options list.\n */\n min_height?: string | number\n /**\n * Defines the maximum height (in `rem`) of the options list.\n */\n max_height?: string | number\n /**\n * To disable appear/disappear (show/hide) animation.\n */\n no_animation?: boolean\n /**\n * To disable scrolling animation.\n */\n no_scroll_animation?: boolean\n /**\n * If set to `true`, the DrawerList will then not make any permanent selection.\n */\n prevent_selection?: boolean\n action_menu?: boolean\n is_popup?: boolean\n /**\n * Use 'right' to change the options alignment direction. Makes only sense to use in combination with `prevent_selection` or `more_menu` - or if an independent width is used.\n */\n align_drawer?: 'left' | 'right'\n /**\n * Has to be a function, returning the items again. See [example](/uilib/components/fragments/drawer-list#example-usage-of-options_render). This can be used to add additional options above the actual rendered list.\n */\n options_render?: DrawerListOptionsRender\n /**\n * Has to be an HTML Element, ideally a mother element, used to calculate sizes and distances. Also used for the 'click outside' detection. Clicking on the `wrapper_element` will not trigger an outside click.\n */\n wrapper_element?: string | HTMLElement\n /**\n * Define a startup value or handle a re-render without handling the state during the re-render by yourself. Defaults to null.\n */\n default_value?: DrawerListValue\n /**\n * Define a preselected `data` entry. In order of priority, `value` can be set to: object key (if `data` is an object), `selectedKey` prop (if `data` is an array), array index (if no `selectedKey`) or content (if `value` is a non-integer string).\n */\n value?: DrawerListValue\n /**\n * To disable the React Portal behavior.\n */\n skip_portal?: boolean\n /**\n * Define an HTML class that will be set on the DOM portal beside `dnb-drawer-list__portal__style`. Can be useful to handle e.g. a custom `z-index` in relation to a header.\n */\n portal_class?: string\n /**\n * Define an HTML class that will be set on the list, beside `dnb-drawer-list__list`.\n */\n list_class?: string\n /**\n * If set to `true`, the DrawerList will not close on any events.\n */\n prevent_close?: boolean\n /**\n * If set to `true`, the DrawerList will handle its width and position independently of the parent/mother element.\n */\n independent_width?: boolean\n /**\n * If set to `true`, the DrawerList will be fixed in its scroll position by using CSS `position: fixed;`.\n */\n fixed_position?: boolean\n /**\n * If set to `true`, the DrawerList will close on outside clicks, but not on selection.\n */\n keep_open?: boolean\n prevent_focus?: boolean\n /**\n * If set to `true`, search items by the first key will be ignored.\n */\n skip_keysearch?: boolean\n opened?: boolean\n data?: DrawerListData\n prepared_data?: any[]\n /**\n * If set to `true`, all keyboard and mouse events will be ignored.\n */\n ignore_events?: boolean\n className?: string\n /** Accepts the same values as the `data` prop. Will be ignored if `data` is used. Can also accept a single child for custom rendering. */\n children?: DrawerListData | React.ReactElement\n suffix?: DrawerListSuffix\n /**\n * If set to `true`, the HTML body will get locked from scrolling when the Dropdown is open.\n */\n enable_body_lock?: boolean\n /**\n * Defines the available scrollable height. If scrolling should not change the height of the drawer-list, then set it to `0` (useful if the DrawerList is used in fixed positions on contrast to a scrollable page content).\n */\n page_offset?: string | number\n /**\n * Set a HTML element, either as a selector or a DOM element. Can be used to send in an element which will be used to make the direction calculation on.\n */\n observer_element?: string | React.ReactNode\n on_show?: (...args: any[]) => any\n on_hide?: (...args: any[]) => any\n handle_dismiss_focus?: (...args: any[]) => any\n on_change?: (...args: any[]) => any\n on_pre_change?: (...args: any[]) => any\n on_resize?: (...args: any[]) => any\n on_select?: (...args: any[]) => any\n on_state_update?: (...args: any[]) => any\n}\nexport type DrawerListAllProps = DrawerListProps &\n SpacingProps &\n Omit<\n React.HTMLProps<HTMLElement>,\n 'ref' | 'size' | 'label' | 'placeholder' | 'data' | 'children'\n >\nfunction DrawerList(props: DrawerListAllProps) {\n const drawerListContext = useContext(DrawerListContext)\n\n if (drawerListContext?.drawerList) {\n return <DrawerListInstance {...props} />\n }\n\n const { data, children, id, ...rest } = props\n const _id = id || makeUniqueId()\n\n return (\n <DrawerListProvider\n id={_id}\n {...rest}\n data={\n data ||\n (!React.isValidElement(children)\n ? (children as DrawerListData)\n : undefined)\n }\n >\n <DrawerListInstance id={_id} {...props} />\n </DrawerListProvider>\n )\n}\nDrawerList.blurDelay = DrawerListProvider.blurDelay // some ms more than \"DrawerListSlideDown 200ms\" = 201 // some ms more than \"DrawerListSlideDown 200ms\"\n\nclass DrawerListInstance extends React.Component<DrawerListAllProps> {\n static defaultProps = {\n ...drawerListDefaultProps,\n }\n static contextType = DrawerListContext\n context!: React.ContextType<typeof DrawerListContext>\n _id: string\n\n constructor(props) {\n super(props)\n\n this._id = props.id || makeUniqueId()\n this.state = this.state || {}\n }\n\n componentDidMount() {\n // send along the event handlers to the provider state\n\n this.context.drawerList.setState(\n Object.entries(propsToFilterOut).reduce((acc, [key]) => {\n if (this.props[key]) {\n acc[key] = this.props[key]\n }\n return acc\n }, {})\n )\n\n this.context.drawerList.setState({\n triangle_position: this.props.triangle_position,\n })\n }\n preventTab = (e) => {\n switch (keycode(e)) {\n case 'tab':\n if (!this.context.drawerList.hasFocusOnElement) {\n e.preventDefault()\n this.context.drawerList.setHidden()\n }\n break\n\n case 'page down':\n case 'page up':\n e.preventDefault()\n break\n }\n }\n\n selectItemHandler = (event) => {\n // In case we want to stop if the users makes a number selection.\n // Should optional\n // if (getPreviousSibling('dnb-number-format', event.target)) {\n // return // stop\n // }\n const selected_item = parseFloat(\n event.currentTarget.getAttribute('data-item')\n )\n if (selected_item > -1) {\n this.context.drawerList.selectItemAndClose(selected_item, {\n fireSelectEvent: true,\n event,\n })\n }\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n DrawerListInstance.defaultProps\n // TODO: should we only allow getTranslation if we define lang and locale props?\n // this.context.getTranslation(this.props).Button\n )\n\n const {\n role,\n align_drawer,\n fixed_position,\n independent_width,\n scrollable,\n focusable,\n size,\n no_animation,\n no_scroll_animation,\n prevent_selection,\n action_menu,\n is_popup,\n portal_class,\n list_class,\n ignore_events,\n options_render,\n className,\n cache_hash: _cache_hash, // eslint-disable-line\n wrapper_element: _wrapper_element, // eslint-disable-line\n triangle_position: _triangle_position, // eslint-disable-line\n direction: _direction, // eslint-disable-line\n max_height: _max_height, // eslint-disable-line\n id: _id, // eslint-disable-line\n data: _data, // eslint-disable-line\n opened: _opened, // eslint-disable-line\n value: _value, // eslint-disable-line\n children,\n\n ...attributes\n } = props\n\n const id = this._id\n\n function noNullNumbers({\n selected_item,\n active_item,\n max_height,\n ...rest\n }: DrawerListContextProps['drawerList']): DrawerListContextProps['drawerList'] {\n return {\n selected_item: selected_item ?? undefined,\n active_item: active_item ?? undefined,\n max_height: max_height ?? undefined,\n ...rest,\n }\n }\n\n const {\n data,\n opened,\n hidden,\n triangle_position,\n direction,\n max_height,\n cache_hash,\n selected_item,\n active_item,\n showFocusRing,\n closestToTop,\n closestToBottom,\n skipPortal,\n addObservers,\n removeObservers,\n _refShell,\n _refTriangle,\n _refUl,\n _refRoot,\n } = noNullNumbers(this.context.drawerList)\n\n const mainParams = {\n id: `${id}-drawer-list`,\n className: classnames(\n 'dnb-drawer-list',\n opened && 'dnb-drawer-list--opened',\n hidden && 'dnb-drawer-list--hidden',\n `dnb-drawer-list--${direction}`,\n triangle_position &&\n `dnb-drawer-list--triangle-position-${triangle_position}`,\n align_drawer && `dnb-drawer-list--${align_drawer}`,\n size && `dnb-drawer-list--${size}`,\n isTrue(action_menu) && `dnb-drawer-list--action-menu`,\n isTrue(is_popup) && 'dnb-drawer-list--is-popup',\n (isTrue(independent_width) || isTrue(action_menu)) &&\n 'dnb-drawer-list--independent-width',\n isTrue(scrollable) && 'dnb-drawer-list--scroll',\n isTrue(no_scroll_animation) &&\n 'dnb-drawer-list--no-scroll-animation',\n createSpacingClasses(props),\n className\n ),\n ...attributes,\n }\n\n const listParams = {\n id: `${id}-listbox`,\n /**\n * We may consider to use the hidden attribute in future\n * Or we may add an prop to put the HTML in the DOM, if needed\n */\n // hidden: hidden !== false,\n className: classnames(\n 'dnb-drawer-list__list',\n isTrue(no_animation) && 'dnb-drawer-list__list--no-animation',\n list_class\n ),\n }\n\n const ulParams = {\n role,\n id: `${id}-ul`,\n 'aria-expanded': opened,\n 'aria-labelledby': `${id}-label`,\n tabIndex: -1,\n style: {\n maxHeight:\n parseFloat(max_height as string) > 0 ? `${max_height}rem` : null,\n },\n ref: _refUl,\n }\n\n if (\n !hidden &&\n (parseFloat(active_item as string) > -1 ||\n (!(parseFloat(active_item as string) > -1) &&\n !(parseFloat(selected_item as string) > -1)))\n ) {\n ulParams['aria-activedescendant'] = `option-${id}-${\n parseFloat(active_item as string) > -1 ? active_item : 0\n }`\n } else if (\n !isTrue(prevent_selection) &&\n !hidden &&\n parseFloat(selected_item as string) > -1\n ) {\n ulParams['aria-activedescendant'] = `option-${id}-${selected_item}`\n }\n\n if (isTrue(focusable)) {\n ulParams.tabIndex = 0\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, mainParams)\n validateDOMAttributes(null, listParams)\n validateDOMAttributes(null, ulParams)\n\n // make it possible to grab the rest attributes and return it with all events\n Object.assign(\n this.context.drawerList.attributes,\n validateDOMAttributes(null, attributes)\n )\n\n const ignoreEvents = isTrue(ignore_events)\n\n const Items = () =>\n data.map((dataItem, i) => {\n const _id = dataItem.__id\n const hash = `option-${id}-${_id}-${i}`\n const liParams = {\n role: role === 'menu' ? 'menuitem' : 'option',\n 'data-item': _id,\n id: `option-${id}-${_id}`,\n hash,\n className: classnames(\n // helper classes\n i === closestToTop && 'closest-to-top',\n i === closestToBottom && 'closest-to-bottom',\n i === 0 && 'first-of-type', // because of the triangle element\n i === data.length - 1 && 'last-of-type', // because of the triangle element\n ignoreEvents || (dataItem.ignore_events && 'ignore-events'),\n dataItem.class_name\n ),\n active: _id == active_item,\n selected: !dataItem.ignore_events && _id == selected_item,\n onClick: this.selectItemHandler,\n onKeyDown: this.preventTab,\n disabled: dataItem.disabled,\n style: dataItem.style,\n }\n\n if (ignoreEvents) {\n liParams.active = null\n liParams.selected = null\n liParams.onClick = null\n liParams.onKeyDown = null\n liParams.className = classnames(\n liParams.className,\n 'dnb-drawer-list__option--ignore'\n )\n }\n\n return (\n <DrawerList.Item key={hash} {...liParams}>\n {dataItem}\n </DrawerList.Item>\n )\n })\n\n const mainList = (\n <span {...mainParams} ref={_refShell}>\n <span {...listParams}>\n {hidden === false && data && data.length > 0 ? (\n <>\n <DrawerList.Options\n cache_hash={\n cache_hash +\n active_item +\n selected_item +\n closestToTop +\n closestToBottom +\n direction +\n max_height\n }\n {...ulParams}\n showFocusRing={showFocusRing}\n triangleRef={_refTriangle}\n >\n {typeof options_render === 'function' ? (\n options_render({ data, Items, Item: DrawerList.Item })\n ) : (\n <Items />\n )}\n </DrawerList.Options>\n <OnMounted\n addObservers={addObservers}\n removeObservers={removeObservers}\n />\n </>\n ) : (\n React.isValidElement(children) && (\n <span className=\"dnb-drawer-list__content\">\n {children}\n <span\n className=\"dnb-drawer-list__triangle\"\n ref={_refTriangle}\n />\n </span>\n )\n )}\n </span>\n </span>\n )\n\n return (\n <span\n className={classnames(\n 'dnb-drawer-list__root',\n !skipPortal && 'dnb-drawer-list__root--portal'\n )}\n ref={_refRoot}\n >\n <DrawerListPortal\n id={this._id}\n rootRef={_refRoot}\n opened={hidden === false}\n include_owner_width={align_drawer === 'right'}\n independent_width={isTrue(independent_width)}\n fixed_position={isTrue(fixed_position)}\n className={getThemeClasses(this.context?.theme, portal_class)}\n skipPortal={skipPortal}\n >\n {mainList}\n </DrawerListPortal>\n </span>\n )\n }\n}\n\nexport type DrawerListOptionsProps = React.HTMLProps<HTMLUListElement> & {\n children: React.ReactNode\n triangleRef?: React.LegacyRef<HTMLLIElement>\n cache_hash?: string\n showFocusRing?: boolean\n}\n// DrawerList List\nDrawerList.Options = React.memo(\n React.forwardRef(\n (\n props: DrawerListOptionsProps,\n ref: React.LegacyRef<HTMLUListElement>\n ) => {\n const {\n children,\n className,\n triangleRef,\n cache_hash, // eslint-disable-line\n showFocusRing = false,\n ...rest\n } = props\n\n return (\n <ul\n className={classnames(\n 'dnb-drawer-list__options',\n showFocusRing && 'dnb-drawer-list__options--focusring',\n className\n )}\n {...rest}\n ref={ref}\n >\n {children}\n <li\n className=\"dnb-drawer-list__triangle\"\n aria-hidden\n ref={triangleRef}\n />\n </ul>\n )\n }\n ),\n (prevProps, nextProps) => {\n if (!prevProps.cache_hash) {\n return null\n }\n return prevProps.cache_hash === nextProps.cache_hash\n }\n)\n\nDrawerList.Item = DrawerListItem\nDrawerList.HorizontalItem = DrawerListHorizontalItem\n\nclass OnMounted extends React.PureComponent<{\n addObservers: () => void\n removeObservers: () => void\n}> {\n componentDidMount() {\n this.props.addObservers()\n }\n componentWillUnmount() {\n this.props.removeObservers()\n }\n render() {\n return null\n }\n}\nexport default DrawerList\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -332,7 +332,7 @@ const prepareDerivedState = (props, state) => {
|
|
|
332
332
|
state.data = getData(props);
|
|
333
333
|
state.original_data = getData(props);
|
|
334
334
|
}
|
|
335
|
-
state.
|
|
335
|
+
state.skipPortal = (0, _componentHelper.isTrue)(props.skip_portal);
|
|
336
336
|
if (typeof props.wrapper_element === 'string') {
|
|
337
337
|
if (typeof document !== 'undefined') {
|
|
338
338
|
const wrapper_element = document.querySelector(props.wrapper_element);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawerListHelpers.js","names":["_react","_interopRequireDefault","require","_propTypes","_componentHelper","_SpacingHelper","_Icon","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","drawerListPropTypes","exports","id","PropTypes","string","role","cache_hash","triangle_position","scrollable","oneOfType","bool","focusable","direction","oneOf","size","max_height","number","no_animation","no_scroll_animation","prevent_selection","action_menu","is_popup","align_drawer","options_render","object","func","node","wrapper_element","default_value","skip_portal","portal_class","list_class","prevent_close","independent_width","fixed_position","keep_open","prevent_focus","skip_keysearch","opened","data","arrayOf","shape","selectedKey","selected_key","selected_value","suffix_value","disabled","content","raw_data","array","ignore_events","spacingPropTypes","className","children","on_show","on_hide","handle_dismiss_focus","on_change","on_pre_change","on_resize","on_select","on_state_update","drawerListDefaultProps","drawerListProviderPropTypes","enable_body_lock","page_offset","observer_element","min_height","drawerListProviderDefaultProps","parseContentTitle","dataItem","separator","removeNumericOnlyValues","preferSelectedValue","undefined","normalizeDataItem","ret","onlyNumericRegex","hasValue","Array","isArray","reduce","acc","cur","converted","convertJsxToString","found","match","join","word","_nestedChildren$props","nestedChildren","props","type","Icon","test","hasObjectKeyAsValue","_data","preSelectData","JSON","parse","React","isValidElement","normalizeData","_preSelectData","list","key","map","__id","normalized","markAsTransformed","__isTransformed","getData","getCurrentIndex","findIndex","parseCurrentValue","selectedKeyExists","index","isNaN","parseFloat","l","_data$i","_data$i2","_data$i3","getSelectedItemValue","state","_","current","getEventData","item_index","getCurrentData","find","_ref","prepareStartupState","selected_item","isTrue","original_data","active_item","_value","prepareDerivedState","Date","now","usePortal","document","querySelector","dispatchCustomElementEvent","current_title","getCurrentDataTitle","currentData","findClosest","arr","val","Math","max","v"],"sources":["../../../../src/fragments/drawer-list/DrawerListHelpers.ts"],"sourcesContent":["/**\n * Web DrawerList Helpers\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport {\n isTrue,\n dispatchCustomElementEvent,\n convertJsxToString,\n} from '../../shared/component-helper'\nimport { spacingPropTypes } from '../../components/space/SpacingHelper'\nimport {\n DrawerListDataArrayItem,\n DrawerListDataArrayObject,\n DrawerListData,\n DrawerListDataAll,\n DrawerListDataArray,\n} from './DrawerList'\nimport { DrawerListProviderProps } from './DrawerListProvider'\nimport { DrawerListContextState } from './DrawerListContext'\nimport Icon from '../../components/icon/Icon'\n\n// legacy used by Autocomplete and Dropdown\nexport const drawerListPropTypes = {\n id: PropTypes.string,\n role: PropTypes.string,\n cache_hash: PropTypes.string,\n triangle_position: PropTypes.string,\n scrollable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n focusable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n direction: PropTypes.oneOf(['auto', 'top', 'bottom']),\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n max_height: PropTypes.number,\n no_animation: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_scroll_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n\n prevent_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n action_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n is_popup: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n align_drawer: PropTypes.oneOf(['left', 'right']),\n options_render: PropTypes.oneOfType([\n PropTypes.object,\n PropTypes.func,\n PropTypes.node,\n ]),\n wrapper_element: PropTypes.oneOfType([\n PropTypes.object,\n PropTypes.func,\n PropTypes.node,\n ]),\n default_value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n skip_portal: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n portal_class: PropTypes.string,\n list_class: PropTypes.string,\n prevent_close: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n independent_width: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n fixed_position: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_open: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n prevent_focus: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skip_keysearch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n opened: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n data: PropTypes.oneOfType([\n PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n ]),\n PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n PropTypes.shape({\n selectedKey: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n /** @deprecated use `selectedKey` */\n selected_key: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n suffix_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n disabled: PropTypes.bool,\n content: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n ])\n ),\n ]),\n raw_data: PropTypes.oneOfType([\n PropTypes.array,\n PropTypes.object,\n PropTypes.func,\n ]),\n ignore_events: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n PropTypes.array,\n ]),\n\n on_show: PropTypes.func,\n on_hide: PropTypes.func,\n handle_dismiss_focus: PropTypes.func,\n on_change: PropTypes.func,\n on_pre_change: PropTypes.func,\n on_resize: PropTypes.func,\n on_select: PropTypes.func,\n on_state_update: PropTypes.func,\n}\n\nexport const drawerListDefaultProps = {\n id: null,\n role: 'listbox',\n cache_hash: null,\n triangle_position: 'left',\n scrollable: true,\n focusable: false,\n max_height: null,\n direction: 'auto',\n size: 'default',\n no_animation: false,\n no_scroll_animation: false,\n prevent_selection: false,\n action_menu: false,\n is_popup: false,\n align_drawer: 'left',\n wrapper_element: null,\n default_value: null,\n value: 'initval',\n portal_class: null,\n list_class: null,\n skip_portal: null,\n prevent_close: false,\n keep_open: false,\n prevent_focus: false,\n fixed_position: false,\n independent_width: false,\n skip_keysearch: false,\n opened: null,\n data: null,\n raw_data: null,\n ignore_events: null,\n\n className: null,\n children: null,\n\n on_show: null,\n on_hide: null,\n handle_dismiss_focus: null,\n on_change: null,\n on_pre_change: null,\n on_resize: null,\n on_select: null,\n on_state_update: null,\n options_render: null,\n}\n\n// legacy used by Dropdown\nexport const drawerListProviderPropTypes = {\n enable_body_lock: PropTypes.bool,\n page_offset: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n observer_element: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n min_height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n}\n\nexport const drawerListProviderDefaultProps = {\n enable_body_lock: false,\n page_offset: null,\n observer_element: null,\n min_height: 10, // 10rem = 10x16=160,\n}\n\nexport function parseContentTitle(\n dataItem: DrawerListDataArrayItem,\n {\n separator = '\\n',\n removeNumericOnlyValues = false,\n preferSelectedValue = false,\n } = {}\n): string | null {\n dataItem = normalizeDataItem(dataItem)\n\n if (!dataItem) {\n return null\n }\n\n let ret = ''\n const onlyNumericRegex = /[0-9.,-\\s]+/\n\n const hasValue = dataItem && dataItem.selected_value\n\n if (\n !(preferSelectedValue && hasValue) &&\n Array.isArray(dataItem.content)\n ) {\n ret = dataItem.content\n .reduce<string[]>((acc, cur) => {\n // check if we have React inside, with strings we can use\n const converted = convertJsxToString(cur, ' ')\n if (!converted) {\n return acc\n }\n // remove only numbers\n const found =\n removeNumericOnlyValues && converted.match(onlyNumericRegex)\n if (!(found && found[0].length === converted.length)) {\n acc.push(converted)\n }\n return acc\n }, [])\n .join(separator)\n } else {\n ret = convertJsxToString(dataItem.content, ' ')\n }\n\n if (hasValue) {\n if (preferSelectedValue) {\n ret = String(\n convertJsxToString(dataItem.selected_value, separator, (word) => {\n const nestedChildren =\n !word.props.children &&\n word?.type !== Icon &&\n typeof word?.type === 'function' &&\n (word.type as () => React.ReactElement)()\n\n return nestedChildren?.props?.children ? nestedChildren : word\n })\n )\n } else if (!onlyNumericRegex.test(dataItem.selected_value as string)) {\n ret = separator + ret\n }\n }\n\n return ret\n}\n\nexport const hasObjectKeyAsValue = (data) => {\n data = data?.raw_data || data\n return data && typeof data === 'object' && !Array.isArray(data)\n}\n\nexport function preSelectData(data: DrawerListData): DrawerListDataAll {\n if (typeof data === 'string') {\n data =\n data[0] === '{' || data[0] === '['\n ? (JSON.parse(data) as Array<any> | Record<string, any>)\n : undefined\n } else if (data && React.isValidElement(data)) {\n data = []\n } else if (typeof data === 'function') {\n data = data()\n }\n\n return data\n}\n\n/**\n * Takes any of the forms data can have and returns a normalized array representation of it.\n * If the data is a single React.ReactNode, it will return an empty list.\n * @param {*} props object containing the data in props.data or props.children, or the data itself\n * @returns an array representation of the data\n */\nexport function normalizeData(props): DrawerListDataArrayObject[] {\n let data = preSelectData(props.data || props.children || props) ?? []\n\n if (typeof data === 'object' && !Array.isArray(data)) {\n const list: DrawerListDataArray = []\n for (const key in data) {\n list.push({\n selectedKey: key,\n selected_key: key,\n value: key,\n content: data[key],\n type: 'object',\n })\n }\n data = list\n }\n\n return data.map((dataItem, __id) => {\n const normalized = normalizeDataItem(dataItem, true)\n\n return typeof normalized?.__id !== 'undefined'\n ? normalized\n : { ...normalized, __id }\n })\n}\n\nfunction normalizeDataItem(\n dataItem: DrawerListDataArrayItem,\n markAsTransformed = false\n): DrawerListDataArrayObject {\n return dataItem === null\n ? undefined\n : typeof dataItem === 'object' && 'content' in dataItem\n ? dataItem\n : {\n content: dataItem,\n ...(markAsTransformed ? { __isTransformed: true } : {}),\n }\n}\n\nexport const getData = (props) => {\n return normalizeData(props)\n}\n\nexport const getCurrentIndex = (value, data) => {\n // 1. if a non-numeric value is given\n if (/[^0-9]/.test(String(value))) {\n return data?.findIndex((cur) => parseCurrentValue(cur) === value)\n }\n // 2. if \"selectedKey\" is given in data, we now handle it as a value, and not an index.\n if (selectedKeyExists()) {\n const index = data?.findIndex(\n (cur) => String(parseCurrentValue(cur)) === String(value)\n )\n if (index > -1) {\n return index\n }\n }\n // 3. if is numeric, and no matching \"selectedKey\", handle it as a index.\n if (!isNaN(parseFloat(value))) {\n return value\n }\n\n return null\n\n function selectedKeyExists() {\n for (let i = 0, l = data?.length; i < l; i++) {\n if (i > 10) {\n return false\n }\n if (\n typeof data[i]?.selectedKey !== 'undefined' ||\n typeof data[i]?.selected_key !== 'undefined' ||\n data[i]?.type === 'object'\n ) {\n return true\n }\n }\n }\n}\n\nexport const getSelectedItemValue = (value, state) => {\n if (hasObjectKeyAsValue(state)) {\n return parseCurrentValue(\n state.data.filter((_, i) => i === parseFloat(value))[0]\n )\n }\n\n return value\n}\n\nexport const parseCurrentValue = (current) => {\n if (typeof current?.selectedKey !== 'undefined') {\n return current?.selectedKey\n }\n if (typeof current?.selected_key !== 'undefined') {\n return current?.selected_key\n }\n if (typeof current?.content !== 'undefined') {\n return current?.content\n }\n return current\n}\n\nexport const getEventData = (item_index, data) => {\n data = getCurrentData(item_index, data)\n\n // cleanup\n if (data && data.__id) {\n data = { ...data }\n delete data.__id\n delete data.__isTransformed\n }\n\n return data\n}\n\nexport const getCurrentData = (item_index, data) => {\n if (typeof data === 'function') {\n data = normalizeData(data)\n }\n\n data = (data && data.find(({ __id }) => __id == item_index)) || null\n\n if (data && data.__isTransformed) {\n return data.content\n }\n\n return data\n}\n\nexport function prepareStartupState(\n props: DrawerListProviderProps\n): DrawerListContextState {\n const selected_item = null\n const raw_data = preSelectData(\n props.data ||\n (!React.isValidElement(props.children)\n ? (props.children as DrawerListData)\n : undefined)\n )\n const data = getData(props)\n const opened = props.opened !== null ? isTrue(props.opened) : null\n\n const state: DrawerListContextState = {\n opened,\n data,\n original_data: data, // used to reset in case we reorder data etc.\n raw_data,\n direction: props.direction,\n max_height: props.max_height,\n selected_item,\n active_item: selected_item,\n on_hide: props.on_hide,\n on_show: props.on_show,\n on_change: props.on_change,\n on_select: props.on_select,\n }\n\n if (\n props.value !== null &&\n typeof props.value !== 'undefined' &&\n props.value !== 'initval'\n ) {\n state.selected_item = state.active_item = getCurrentIndex(\n props.value,\n data\n )\n } else if (props.default_value !== null) {\n state.selected_item = state.active_item = getCurrentIndex(\n props.default_value,\n data\n )\n state._value = props.value\n }\n\n return state\n}\n\nexport const prepareDerivedState = (\n props: DrawerListProviderProps,\n state: DrawerListContextState\n) => {\n if (state.opened && !state.data && typeof props.data === 'function') {\n state.data = getData(props)\n }\n\n if (props.data && props.data !== state._data) {\n if (state._data) {\n state.cache_hash = state.cache_hash + Date.now()\n }\n state.data = getData(props)\n state.original_data = getData(props)\n }\n\n state.usePortal =\n props.skip_portal !== null ? !isTrue(props.skip_portal) : true\n\n if (typeof props.wrapper_element === 'string') {\n if (typeof document !== 'undefined') {\n const wrapper_element = document.querySelector<HTMLElement>(\n props.wrapper_element\n )\n if (wrapper_element) {\n state.wrapper_element = wrapper_element\n }\n }\n } else if (props.wrapper_element) {\n state.wrapper_element = props.wrapper_element\n }\n\n if (\n state.selected_item !== props.value &&\n (state._value !== props.value || isTrue(props.prevent_selection))\n ) {\n if (props.value === 'initval') {\n state.selected_item = null\n } else {\n state.selected_item = getCurrentIndex(\n props.value,\n state.original_data\n )\n }\n\n if (typeof props.on_state_update === 'function') {\n dispatchCustomElementEvent({ props }, 'on_state_update', {\n selected_item: state.selected_item,\n value: getSelectedItemValue(state.selected_item, state),\n data: getEventData(state.selected_item, state.data),\n })\n }\n }\n\n // active_item can be -1, so we check for -2\n if (\n !(\n state.active_item !== null &&\n parseFloat(state.active_item as string) > -2\n ) ||\n state._value !== props.value\n ) {\n state.active_item = state.selected_item\n }\n\n if (props.direction !== 'auto' && props.direction !== state.direction) {\n state.direction = props.direction\n }\n\n if (\n state.selected_item !== null &&\n parseFloat(state.selected_item as string) > -1\n ) {\n state.current_title = getCurrentDataTitle(\n state.selected_item,\n state.data\n )\n }\n\n state._data = props.data\n state._value = props.value\n\n return state\n}\n\nexport const getCurrentDataTitle = (selected_item, data) => {\n const currentData = getCurrentData(selected_item, data)\n return parseContentTitle(currentData, {\n separator: ' ',\n preferSelectedValue: true,\n })\n}\n\nexport const findClosest = (arr, val) =>\n Math.max.apply(\n null,\n arr.filter((v) => v <= val)\n )\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"DrawerListHelpers.js","names":["_react","_interopRequireDefault","require","_propTypes","_componentHelper","_SpacingHelper","_Icon","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","drawerListPropTypes","exports","id","PropTypes","string","role","cache_hash","triangle_position","scrollable","oneOfType","bool","focusable","direction","oneOf","size","max_height","number","no_animation","no_scroll_animation","prevent_selection","action_menu","is_popup","align_drawer","options_render","object","func","node","wrapper_element","default_value","skip_portal","portal_class","list_class","prevent_close","independent_width","fixed_position","keep_open","prevent_focus","skip_keysearch","opened","data","arrayOf","shape","selectedKey","selected_key","selected_value","suffix_value","disabled","content","raw_data","array","ignore_events","spacingPropTypes","className","children","on_show","on_hide","handle_dismiss_focus","on_change","on_pre_change","on_resize","on_select","on_state_update","drawerListDefaultProps","drawerListProviderPropTypes","enable_body_lock","page_offset","observer_element","min_height","drawerListProviderDefaultProps","parseContentTitle","dataItem","separator","removeNumericOnlyValues","preferSelectedValue","undefined","normalizeDataItem","ret","onlyNumericRegex","hasValue","Array","isArray","reduce","acc","cur","converted","convertJsxToString","found","match","join","word","_nestedChildren$props","nestedChildren","props","type","Icon","test","hasObjectKeyAsValue","_data","preSelectData","JSON","parse","React","isValidElement","normalizeData","_preSelectData","list","key","map","__id","normalized","markAsTransformed","__isTransformed","getData","getCurrentIndex","findIndex","parseCurrentValue","selectedKeyExists","index","isNaN","parseFloat","l","_data$i","_data$i2","_data$i3","getSelectedItemValue","state","_","current","getEventData","item_index","getCurrentData","find","_ref","prepareStartupState","selected_item","isTrue","original_data","active_item","_value","prepareDerivedState","Date","now","skipPortal","document","querySelector","dispatchCustomElementEvent","current_title","getCurrentDataTitle","currentData","findClosest","arr","val","Math","max","v"],"sources":["../../../../src/fragments/drawer-list/DrawerListHelpers.ts"],"sourcesContent":["/**\n * Web DrawerList Helpers\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport {\n isTrue,\n dispatchCustomElementEvent,\n convertJsxToString,\n} from '../../shared/component-helper'\nimport { spacingPropTypes } from '../../components/space/SpacingHelper'\nimport {\n DrawerListDataArrayItem,\n DrawerListDataArrayObject,\n DrawerListData,\n DrawerListDataAll,\n DrawerListDataArray,\n} from './DrawerList'\nimport { DrawerListProviderProps } from './DrawerListProvider'\nimport { DrawerListContextState } from './DrawerListContext'\nimport Icon from '../../components/icon/Icon'\n\n// legacy used by Autocomplete and Dropdown\nexport const drawerListPropTypes = {\n id: PropTypes.string,\n role: PropTypes.string,\n cache_hash: PropTypes.string,\n triangle_position: PropTypes.string,\n scrollable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n focusable: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n direction: PropTypes.oneOf(['auto', 'top', 'bottom']),\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n max_height: PropTypes.number,\n no_animation: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_scroll_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n\n prevent_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n action_menu: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n is_popup: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n align_drawer: PropTypes.oneOf(['left', 'right']),\n options_render: PropTypes.oneOfType([\n PropTypes.object,\n PropTypes.func,\n PropTypes.node,\n ]),\n wrapper_element: PropTypes.oneOfType([\n PropTypes.object,\n PropTypes.func,\n PropTypes.node,\n ]),\n default_value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n skip_portal: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n portal_class: PropTypes.string,\n list_class: PropTypes.string,\n prevent_close: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n independent_width: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n fixed_position: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_open: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n prevent_focus: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skip_keysearch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n opened: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n data: PropTypes.oneOfType([\n PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n ]),\n PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n PropTypes.shape({\n selectedKey: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n /** @deprecated use `selectedKey` */\n selected_key: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n selected_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n suffix_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n disabled: PropTypes.bool,\n content: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n ])\n ),\n ]),\n raw_data: PropTypes.oneOfType([\n PropTypes.array,\n PropTypes.object,\n PropTypes.func,\n ]),\n ignore_events: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n PropTypes.object,\n PropTypes.array,\n ]),\n\n on_show: PropTypes.func,\n on_hide: PropTypes.func,\n handle_dismiss_focus: PropTypes.func,\n on_change: PropTypes.func,\n on_pre_change: PropTypes.func,\n on_resize: PropTypes.func,\n on_select: PropTypes.func,\n on_state_update: PropTypes.func,\n}\n\nexport const drawerListDefaultProps = {\n id: null,\n role: 'listbox',\n cache_hash: null,\n triangle_position: 'left',\n scrollable: true,\n focusable: false,\n max_height: null,\n direction: 'auto',\n size: 'default',\n no_animation: false,\n no_scroll_animation: false,\n prevent_selection: false,\n action_menu: false,\n is_popup: false,\n align_drawer: 'left',\n wrapper_element: null,\n default_value: null,\n value: 'initval',\n portal_class: null,\n list_class: null,\n skip_portal: null,\n prevent_close: false,\n keep_open: false,\n prevent_focus: false,\n fixed_position: false,\n independent_width: false,\n skip_keysearch: false,\n opened: null,\n data: null,\n raw_data: null,\n ignore_events: null,\n\n className: null,\n children: null,\n\n on_show: null,\n on_hide: null,\n handle_dismiss_focus: null,\n on_change: null,\n on_pre_change: null,\n on_resize: null,\n on_select: null,\n on_state_update: null,\n options_render: null,\n}\n\n// legacy used by Dropdown\nexport const drawerListProviderPropTypes = {\n enable_body_lock: PropTypes.bool,\n page_offset: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n observer_element: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n ]),\n min_height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n}\n\nexport const drawerListProviderDefaultProps = {\n enable_body_lock: false,\n page_offset: null,\n observer_element: null,\n min_height: 10, // 10rem = 10x16=160,\n}\n\nexport function parseContentTitle(\n dataItem: DrawerListDataArrayItem,\n {\n separator = '\\n',\n removeNumericOnlyValues = false,\n preferSelectedValue = false,\n } = {}\n): string | null {\n dataItem = normalizeDataItem(dataItem)\n\n if (!dataItem) {\n return null\n }\n\n let ret = ''\n const onlyNumericRegex = /[0-9.,-\\s]+/\n\n const hasValue = dataItem && dataItem.selected_value\n\n if (\n !(preferSelectedValue && hasValue) &&\n Array.isArray(dataItem.content)\n ) {\n ret = dataItem.content\n .reduce<string[]>((acc, cur) => {\n // check if we have React inside, with strings we can use\n const converted = convertJsxToString(cur, ' ')\n if (!converted) {\n return acc\n }\n // remove only numbers\n const found =\n removeNumericOnlyValues && converted.match(onlyNumericRegex)\n if (!(found && found[0].length === converted.length)) {\n acc.push(converted)\n }\n return acc\n }, [])\n .join(separator)\n } else {\n ret = convertJsxToString(dataItem.content, ' ')\n }\n\n if (hasValue) {\n if (preferSelectedValue) {\n ret = String(\n convertJsxToString(dataItem.selected_value, separator, (word) => {\n const nestedChildren =\n !word.props.children &&\n word?.type !== Icon &&\n typeof word?.type === 'function' &&\n (word.type as () => React.ReactElement)()\n\n return nestedChildren?.props?.children ? nestedChildren : word\n })\n )\n } else if (!onlyNumericRegex.test(dataItem.selected_value as string)) {\n ret = separator + ret\n }\n }\n\n return ret\n}\n\nexport const hasObjectKeyAsValue = (data) => {\n data = data?.raw_data || data\n return data && typeof data === 'object' && !Array.isArray(data)\n}\n\nexport function preSelectData(data: DrawerListData): DrawerListDataAll {\n if (typeof data === 'string') {\n data =\n data[0] === '{' || data[0] === '['\n ? (JSON.parse(data) as Array<any> | Record<string, any>)\n : undefined\n } else if (data && React.isValidElement(data)) {\n data = []\n } else if (typeof data === 'function') {\n data = data()\n }\n\n return data\n}\n\n/**\n * Takes any of the forms data can have and returns a normalized array representation of it.\n * If the data is a single React.ReactNode, it will return an empty list.\n * @param {*} props object containing the data in props.data or props.children, or the data itself\n * @returns an array representation of the data\n */\nexport function normalizeData(props): DrawerListDataArrayObject[] {\n let data = preSelectData(props.data || props.children || props) ?? []\n\n if (typeof data === 'object' && !Array.isArray(data)) {\n const list: DrawerListDataArray = []\n for (const key in data) {\n list.push({\n selectedKey: key,\n selected_key: key,\n value: key,\n content: data[key],\n type: 'object',\n })\n }\n data = list\n }\n\n return data.map((dataItem, __id) => {\n const normalized = normalizeDataItem(dataItem, true)\n\n return typeof normalized?.__id !== 'undefined'\n ? normalized\n : { ...normalized, __id }\n })\n}\n\nfunction normalizeDataItem(\n dataItem: DrawerListDataArrayItem,\n markAsTransformed = false\n): DrawerListDataArrayObject {\n return dataItem === null\n ? undefined\n : typeof dataItem === 'object' && 'content' in dataItem\n ? dataItem\n : {\n content: dataItem,\n ...(markAsTransformed ? { __isTransformed: true } : {}),\n }\n}\n\nexport const getData = (props) => {\n return normalizeData(props)\n}\n\nexport const getCurrentIndex = (value, data) => {\n // 1. if a non-numeric value is given\n if (/[^0-9]/.test(String(value))) {\n return data?.findIndex((cur) => parseCurrentValue(cur) === value)\n }\n // 2. if \"selectedKey\" is given in data, we now handle it as a value, and not an index.\n if (selectedKeyExists()) {\n const index = data?.findIndex(\n (cur) => String(parseCurrentValue(cur)) === String(value)\n )\n if (index > -1) {\n return index\n }\n }\n // 3. if is numeric, and no matching \"selectedKey\", handle it as a index.\n if (!isNaN(parseFloat(value))) {\n return value\n }\n\n return null\n\n function selectedKeyExists() {\n for (let i = 0, l = data?.length; i < l; i++) {\n if (i > 10) {\n return false\n }\n if (\n typeof data[i]?.selectedKey !== 'undefined' ||\n typeof data[i]?.selected_key !== 'undefined' ||\n data[i]?.type === 'object'\n ) {\n return true\n }\n }\n }\n}\n\nexport const getSelectedItemValue = (value, state) => {\n if (hasObjectKeyAsValue(state)) {\n return parseCurrentValue(\n state.data.filter((_, i) => i === parseFloat(value))[0]\n )\n }\n\n return value\n}\n\nexport const parseCurrentValue = (current) => {\n if (typeof current?.selectedKey !== 'undefined') {\n return current?.selectedKey\n }\n if (typeof current?.selected_key !== 'undefined') {\n return current?.selected_key\n }\n if (typeof current?.content !== 'undefined') {\n return current?.content\n }\n return current\n}\n\nexport const getEventData = (item_index, data) => {\n data = getCurrentData(item_index, data)\n\n // cleanup\n if (data && data.__id) {\n data = { ...data }\n delete data.__id\n delete data.__isTransformed\n }\n\n return data\n}\n\nexport const getCurrentData = (item_index, data) => {\n if (typeof data === 'function') {\n data = normalizeData(data)\n }\n\n data = (data && data.find(({ __id }) => __id == item_index)) || null\n\n if (data && data.__isTransformed) {\n return data.content\n }\n\n return data\n}\n\nexport function prepareStartupState(\n props: DrawerListProviderProps\n): DrawerListContextState {\n const selected_item = null\n const raw_data = preSelectData(\n props.data ||\n (!React.isValidElement(props.children)\n ? (props.children as DrawerListData)\n : undefined)\n )\n const data = getData(props)\n const opened = props.opened !== null ? isTrue(props.opened) : null\n\n const state: DrawerListContextState = {\n opened,\n data,\n original_data: data, // used to reset in case we reorder data etc.\n raw_data,\n direction: props.direction,\n max_height: props.max_height,\n selected_item,\n active_item: selected_item,\n on_hide: props.on_hide,\n on_show: props.on_show,\n on_change: props.on_change,\n on_select: props.on_select,\n }\n\n if (\n props.value !== null &&\n typeof props.value !== 'undefined' &&\n props.value !== 'initval'\n ) {\n state.selected_item = state.active_item = getCurrentIndex(\n props.value,\n data\n )\n } else if (props.default_value !== null) {\n state.selected_item = state.active_item = getCurrentIndex(\n props.default_value,\n data\n )\n state._value = props.value\n }\n\n return state\n}\n\nexport const prepareDerivedState = (\n props: DrawerListProviderProps,\n state: DrawerListContextState\n) => {\n if (state.opened && !state.data && typeof props.data === 'function') {\n state.data = getData(props)\n }\n\n if (props.data && props.data !== state._data) {\n if (state._data) {\n state.cache_hash = state.cache_hash + Date.now()\n }\n state.data = getData(props)\n state.original_data = getData(props)\n }\n\n state.skipPortal = isTrue(props.skip_portal)\n\n if (typeof props.wrapper_element === 'string') {\n if (typeof document !== 'undefined') {\n const wrapper_element = document.querySelector<HTMLElement>(\n props.wrapper_element\n )\n if (wrapper_element) {\n state.wrapper_element = wrapper_element\n }\n }\n } else if (props.wrapper_element) {\n state.wrapper_element = props.wrapper_element\n }\n\n if (\n state.selected_item !== props.value &&\n (state._value !== props.value || isTrue(props.prevent_selection))\n ) {\n if (props.value === 'initval') {\n state.selected_item = null\n } else {\n state.selected_item = getCurrentIndex(\n props.value,\n state.original_data\n )\n }\n\n if (typeof props.on_state_update === 'function') {\n dispatchCustomElementEvent({ props }, 'on_state_update', {\n selected_item: state.selected_item,\n value: getSelectedItemValue(state.selected_item, state),\n data: getEventData(state.selected_item, state.data),\n })\n }\n }\n\n // active_item can be -1, so we check for -2\n if (\n !(\n state.active_item !== null &&\n parseFloat(state.active_item as string) > -2\n ) ||\n state._value !== props.value\n ) {\n state.active_item = state.selected_item\n }\n\n if (props.direction !== 'auto' && props.direction !== state.direction) {\n state.direction = props.direction\n }\n\n if (\n state.selected_item !== null &&\n parseFloat(state.selected_item as string) > -1\n ) {\n state.current_title = getCurrentDataTitle(\n state.selected_item,\n state.data\n )\n }\n\n state._data = props.data\n state._value = props.value\n\n return state\n}\n\nexport const getCurrentDataTitle = (selected_item, data) => {\n const currentData = getCurrentData(selected_item, data)\n return parseContentTitle(currentData, {\n separator: ' ',\n preferSelectedValue: true,\n })\n}\n\nexport const findClosest = (arr, val) =>\n Math.max.apply(\n null,\n arr.filter((v) => v <= val)\n )\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -14,6 +14,7 @@ export type DrawerListPortalProps = {
|
|
|
14
14
|
include_owner_width?: boolean;
|
|
15
15
|
independent_width?: boolean;
|
|
16
16
|
fixed_position?: boolean;
|
|
17
|
+
skipPortal?: boolean;
|
|
17
18
|
className?: string;
|
|
18
19
|
};
|
|
19
20
|
declare const _default: React.ForwardRefExoticComponent<Omit<DrawerListPortalProps, "innerRef"> & React.RefAttributes<HTMLSpanElement>>;
|
|
@@ -7,9 +7,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
require("core-js/modules/web.dom-collections.iterator.js");
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
-
var _reactDom = _interopRequireDefault(require("react-dom"));
|
|
11
10
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
12
11
|
var _componentHelper = require("../../shared/component-helper");
|
|
12
|
+
var _PortalRoot = _interopRequireDefault(require("../../components/PortalRoot"));
|
|
13
13
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
14
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
15
15
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -25,73 +25,50 @@ function DrawerListPortal(_ref) {
|
|
|
25
25
|
include_owner_width,
|
|
26
26
|
independent_width,
|
|
27
27
|
fixed_position,
|
|
28
|
+
skipPortal,
|
|
28
29
|
className,
|
|
29
30
|
children
|
|
30
31
|
} = _ref;
|
|
31
32
|
const [isMounted, setIsMounted] = (0, _react.useState)(false);
|
|
32
33
|
const [, setForceRerender] = (0, _react.useState)();
|
|
33
34
|
const ref = innerRef || _react.default.createRef();
|
|
34
|
-
const portalElem = (0, _react.useRef)();
|
|
35
35
|
const setPosition = (0, _react.useRef)();
|
|
36
36
|
const positionTimeout = (0, _react.useRef)();
|
|
37
37
|
const customElem = (0, _react.useRef)();
|
|
38
38
|
const resizeObserver = (0, _react.useRef)();
|
|
39
|
-
const init = () => {
|
|
40
|
-
portalElem.current = getRootElement();
|
|
39
|
+
const init = (0, _react.useCallback)(() => {
|
|
41
40
|
setIsMounted(true);
|
|
42
|
-
};
|
|
41
|
+
}, []);
|
|
42
|
+
const removePositionObserver = (0, _react.useCallback)(() => {
|
|
43
|
+
clearTimeout(positionTimeout.current);
|
|
44
|
+
if (typeof window !== 'undefined' && setPosition.current) {
|
|
45
|
+
if (customElem.current) {
|
|
46
|
+
customElem.current.removeEventListener('scroll', setPosition.current);
|
|
47
|
+
}
|
|
48
|
+
if (resizeObserver.current) {
|
|
49
|
+
resizeObserver.current.disconnect();
|
|
50
|
+
resizeObserver.current = null;
|
|
51
|
+
}
|
|
52
|
+
window.removeEventListener('resize', setPosition.current);
|
|
53
|
+
}
|
|
54
|
+
setPosition.current = null;
|
|
55
|
+
}, []);
|
|
43
56
|
(0, _react.useEffect)(() => {
|
|
44
57
|
if (document.readyState === 'complete') {
|
|
45
58
|
init();
|
|
46
59
|
} else if (typeof window !== 'undefined') {
|
|
47
60
|
window.addEventListener('load', init);
|
|
48
61
|
}
|
|
49
|
-
}, []);
|
|
62
|
+
}, [init]);
|
|
50
63
|
(0, _react.useEffect)(() => {
|
|
51
64
|
return () => {
|
|
52
65
|
if (typeof window !== 'undefined') {
|
|
53
66
|
window.removeEventListener('load', init);
|
|
54
67
|
}
|
|
55
68
|
removePositionObserver();
|
|
56
|
-
portalElem.current = null;
|
|
57
69
|
};
|
|
58
|
-
}, []);
|
|
59
|
-
const
|
|
60
|
-
if (typeof document !== 'undefined') {
|
|
61
|
-
try {
|
|
62
|
-
let elem = document.getElementById(`${id}-portal`);
|
|
63
|
-
if (elem) {
|
|
64
|
-
return elem;
|
|
65
|
-
}
|
|
66
|
-
elem = document.createElement('div');
|
|
67
|
-
elem.setAttribute('id', `${id}-portal`);
|
|
68
|
-
elem.classList.add('dnb-drawer-list__portal');
|
|
69
|
-
createMainElement().appendChild(elem);
|
|
70
|
-
return elem;
|
|
71
|
-
} catch (e) {
|
|
72
|
-
(0, _componentHelper.warn)(e);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
};
|
|
76
|
-
const createMainElement = () => {
|
|
77
|
-
if (typeof document !== 'undefined') {
|
|
78
|
-
try {
|
|
79
|
-
let elem = document.getElementById('dnb-drawer-list__portal');
|
|
80
|
-
if (elem) {
|
|
81
|
-
return elem;
|
|
82
|
-
}
|
|
83
|
-
elem = document.createElement('div');
|
|
84
|
-
elem.setAttribute('role', 'presentation');
|
|
85
|
-
elem.setAttribute('id', 'dnb-drawer-list__portal');
|
|
86
|
-
elem.classList.add('dnb-core-style');
|
|
87
|
-
document.body.appendChild(elem);
|
|
88
|
-
return elem;
|
|
89
|
-
} catch (e) {
|
|
90
|
-
(0, _componentHelper.warn)(e);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
|
-
const makeStyle = () => {
|
|
70
|
+
}, [init, removePositionObserver]);
|
|
71
|
+
const makeStyle = (0, _react.useCallback)(() => {
|
|
95
72
|
if (typeof window === 'undefined' || !isMounted) {
|
|
96
73
|
return;
|
|
97
74
|
}
|
|
@@ -135,8 +112,8 @@ function DrawerListPortal(_ref) {
|
|
|
135
112
|
} catch (e) {
|
|
136
113
|
(0, _componentHelper.warn)(e);
|
|
137
114
|
}
|
|
138
|
-
};
|
|
139
|
-
const addPositionObserver = () => {
|
|
115
|
+
}, [isMounted, rootRef, independent_width, fixed_position, include_owner_width]);
|
|
116
|
+
const addPositionObserver = (0, _react.useCallback)(() => {
|
|
140
117
|
if (setPosition.current || typeof window === 'undefined') {
|
|
141
118
|
return;
|
|
142
119
|
}
|
|
@@ -156,34 +133,23 @@ function DrawerListPortal(_ref) {
|
|
|
156
133
|
} catch (e) {
|
|
157
134
|
window.addEventListener('resize', setPosition.current);
|
|
158
135
|
}
|
|
159
|
-
};
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
if (typeof window !== 'undefined' && setPosition.current) {
|
|
163
|
-
if (customElem.current) {
|
|
164
|
-
customElem.current.removeEventListener('scroll', setPosition.current);
|
|
165
|
-
}
|
|
166
|
-
if (resizeObserver.current) {
|
|
167
|
-
resizeObserver.current.disconnect();
|
|
168
|
-
resizeObserver.current = null;
|
|
169
|
-
}
|
|
170
|
-
window.removeEventListener('resize', setPosition.current);
|
|
171
|
-
}
|
|
172
|
-
setPosition.current = null;
|
|
173
|
-
};
|
|
174
|
-
if (!portalElem.current) {
|
|
175
|
-
return null;
|
|
136
|
+
}, [opened, rootRef]);
|
|
137
|
+
if (skipPortal) {
|
|
138
|
+
return children;
|
|
176
139
|
}
|
|
177
140
|
if (typeof window !== 'undefined' && isMounted) {
|
|
178
141
|
if (opened) {
|
|
179
142
|
addPositionObserver();
|
|
180
143
|
}
|
|
181
144
|
const style = opened ? makeStyle() : {};
|
|
182
|
-
return
|
|
145
|
+
return _react.default.createElement(_PortalRoot.default, null, _react.default.createElement("span", {
|
|
146
|
+
className: "dnb-drawer-list__portal",
|
|
147
|
+
id: `${id}-portal`
|
|
148
|
+
}, _react.default.createElement("span", {
|
|
183
149
|
className: (0, _classnames.default)('dnb-drawer-list__portal__style', className, fixed_position && 'dnb-drawer-list__portal__style--fixed'),
|
|
184
150
|
style: style,
|
|
185
151
|
ref: ref
|
|
186
|
-
}, children)
|
|
152
|
+
}, children)));
|
|
187
153
|
}
|
|
188
154
|
return null;
|
|
189
155
|
}
|