@dnb/eufemia 10.19.0 → 10.20.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 +40 -0
- package/cjs/components/accordion/AccordionContent.d.ts +1 -1
- package/cjs/components/accordion/AccordionContent.js.map +1 -1
- package/cjs/components/accordion/style/dnb-accordion.css +0 -3
- package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
- package/cjs/components/accordion/style/dnb-accordion.scss +0 -5
- package/cjs/components/breadcrumb/Breadcrumb.js +11 -2
- package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/cjs/components/breadcrumb/BreadcrumbItem.js +11 -8
- package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/cjs/components/card/Card.d.ts +6 -4
- package/cjs/components/card/Card.js +11 -15
- package/cjs/components/card/Card.js.map +1 -1
- package/cjs/components/card/style/dnb-card.css +29 -0
- package/cjs/components/card/style/dnb-card.min.css +1 -1
- package/cjs/components/card/style/dnb-card.scss +41 -0
- package/cjs/components/card/style/themes/dnb-card-theme-ui.css +1 -19
- package/cjs/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
- package/cjs/components/card/style/themes/dnb-card-theme-ui.scss +1 -27
- package/cjs/components/date-picker/DatePickerProvider.js +10 -10
- package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
- package/cjs/components/flex/Container.js +1 -1
- package/cjs/components/flex/Container.js.map +1 -1
- package/cjs/components/flex/Item.js +8 -13
- package/cjs/components/flex/Item.js.map +1 -1
- package/cjs/components/flex/style/dnb-flex.css +3 -0
- package/cjs/components/flex/style/dnb-flex.min.css +1 -1
- package/cjs/components/flex/style/flex-container.scss +3 -0
- package/cjs/components/flex/utils.d.ts +35 -7
- package/cjs/components/flex/utils.js +65 -33
- package/cjs/components/flex/utils.js.map +1 -1
- package/cjs/components/form-status/FormStatus.d.ts +5 -1
- package/cjs/components/form-status/FormStatus.js +38 -44
- package/cjs/components/form-status/FormStatus.js.map +1 -1
- package/cjs/components/form-status/style/dnb-form-status.css +0 -18
- package/cjs/components/form-status/style/dnb-form-status.min.css +1 -1
- package/cjs/components/form-status/style/dnb-form-status.scss +0 -45
- package/cjs/components/global-status/GlobalStatus.js +52 -138
- package/cjs/components/global-status/GlobalStatus.js.map +1 -1
- package/cjs/components/global-status/style/dnb-global-status.css +6 -16
- package/cjs/components/global-status/style/dnb-global-status.min.css +1 -1
- package/cjs/components/global-status/style/dnb-global-status.scss +11 -23
- package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.css +0 -3
- package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
- package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.scss +0 -10
- package/cjs/components/height-animation/HeightAnimation.d.ts +12 -4
- package/cjs/components/height-animation/HeightAnimation.js +31 -14
- package/cjs/components/height-animation/HeightAnimation.js.map +1 -1
- package/cjs/components/height-animation/HeightAnimationInstance.d.ts +35 -18
- package/cjs/components/height-animation/HeightAnimationInstance.js +186 -158
- package/cjs/components/height-animation/HeightAnimationInstance.js.map +1 -1
- package/cjs/components/height-animation/style/dnb-height-animation.css +16 -2
- package/cjs/components/height-animation/style/dnb-height-animation.min.css +1 -1
- package/cjs/components/height-animation/style/dnb-height-animation.scss +18 -2
- package/cjs/components/height-animation/useHeightAnimation.d.ts +6 -1
- package/cjs/components/height-animation/useHeightAnimation.js +125 -92
- package/cjs/components/height-animation/useHeightAnimation.js.map +1 -1
- package/cjs/components/number-format/NumberFormat.d.ts +7 -12
- package/cjs/components/step-indicator/StepIndicatorItem.js +3 -21
- package/cjs/components/step-indicator/StepIndicatorItem.js.map +1 -1
- package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +2 -16
- package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
- package/cjs/components/step-indicator/style/dnb-step-indicator.css +0 -5
- package/cjs/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
- package/cjs/components/step-indicator/style/dnb-step-indicator.scss +0 -7
- package/cjs/components/table/TableAccordionContent.js +51 -23
- package/cjs/components/table/TableAccordionContent.js.map +1 -1
- package/cjs/components/table/style/dnb-table.css +6 -3
- package/cjs/components/table/style/dnb-table.min.css +1 -1
- package/cjs/components/table/style/table-accordion.scss +6 -3
- package/cjs/components/tabs/Tabs.js +2 -1
- package/cjs/components/tabs/Tabs.js.map +1 -1
- package/cjs/components/tabs/TabsContentWrapper.d.ts +1 -0
- package/cjs/components/tabs/TabsContentWrapper.js +8 -6
- package/cjs/components/tabs/TabsContentWrapper.js.map +1 -1
- package/cjs/components/upload/Upload.js +15 -18
- package/cjs/components/upload/Upload.js.map +1 -1
- package/cjs/components/upload/UploadFileInput.js +3 -1
- package/cjs/components/upload/UploadFileInput.js.map +1 -1
- package/cjs/components/upload/UploadFileList.js +1 -1
- package/cjs/components/upload/UploadFileList.js.map +1 -1
- package/cjs/components/upload/UploadStatus.js +6 -2
- package/cjs/components/upload/UploadStatus.js.map +1 -1
- package/cjs/components/upload/useUpload.js +5 -6
- package/cjs/components/upload/useUpload.js.map +1 -1
- package/cjs/elements/lib.d.ts +6 -0
- package/cjs/elements/typography/H1.d.ts +1 -0
- package/cjs/elements/typography/H1.js +1 -1
- package/cjs/elements/typography/H1.js.map +1 -1
- package/cjs/elements/typography/H2.d.ts +1 -0
- package/cjs/elements/typography/H2.js +1 -1
- package/cjs/elements/typography/H2.js.map +1 -1
- package/cjs/elements/typography/H3.d.ts +1 -0
- package/cjs/elements/typography/H3.js +1 -1
- package/cjs/elements/typography/H3.js.map +1 -1
- package/cjs/elements/typography/H4.d.ts +1 -0
- package/cjs/elements/typography/H4.js +1 -1
- package/cjs/elements/typography/H4.js.map +1 -1
- package/cjs/elements/typography/H5.d.ts +1 -0
- package/cjs/elements/typography/H5.js +1 -1
- package/cjs/elements/typography/H5.js.map +1 -1
- package/cjs/elements/typography/H6.d.ts +1 -0
- package/cjs/elements/typography/H6.js +1 -1
- package/cjs/elements/typography/H6.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Context.d.ts +18 -5
- package/cjs/extensions/forms/DataContext/Context.js +9 -0
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +57 -19
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +127 -57
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +3 -2
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/Date/Date.js +4 -3
- package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
- package/cjs/extensions/forms/Field/Email/Email.js +3 -2
- package/cjs/extensions/forms/Field/Email/Email.js.map +1 -1
- package/cjs/extensions/forms/Field/Expiry/Expiry.js +4 -3
- package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +3 -2
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/Number/Number.d.ts +2 -4
- package/cjs/extensions/forms/Field/Number/Number.js +14 -15
- package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +3 -2
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +3 -2
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +9 -0
- package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
- package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +7 -0
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +3 -2
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/cjs/extensions/forms/Field/String/String.d.ts +2 -2
- package/cjs/extensions/forms/Field/String/String.js +5 -3
- package/cjs/extensions/forms/Field/String/String.js.map +1 -1
- package/cjs/extensions/forms/Field/Toggle/Toggle.js +5 -2
- package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js +2 -4
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +19 -5
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +25 -1
- package/cjs/extensions/forms/Form/Handler/Handler.d.ts +1 -1
- package/cjs/extensions/forms/Form/Handler/Handler.js +7 -1
- package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +6 -1
- package/cjs/extensions/forms/Form/Visibility/Visibility.js +54 -39
- package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/cjs/extensions/forms/Form/data-context/getData.d.ts +8 -0
- package/cjs/extensions/forms/Form/data-context/getData.js +21 -0
- package/cjs/extensions/forms/Form/data-context/getData.js.map +1 -0
- package/cjs/extensions/forms/Form/data-context/setData.d.ts +2 -0
- package/cjs/extensions/forms/Form/data-context/setData.js +12 -0
- package/cjs/extensions/forms/Form/data-context/setData.js.map +1 -0
- package/cjs/extensions/forms/Form/data-context/useData.d.ts +22 -0
- package/cjs/extensions/forms/Form/data-context/useData.js +65 -0
- package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -0
- package/cjs/extensions/forms/Form/data-context/useError.d.ts +5 -0
- package/cjs/extensions/forms/Form/data-context/useError.js +18 -0
- package/cjs/extensions/forms/Form/data-context/useError.js.map +1 -0
- package/cjs/extensions/forms/Form/index.d.ts +4 -1
- package/cjs/extensions/forms/Form/index.js +22 -1
- package/cjs/extensions/forms/Form/index.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Array/Array.d.ts +2 -2
- package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/StepsLayout.d.ts +3 -0
- package/cjs/extensions/forms/StepsLayout/StepsLayout.js +30 -21
- package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -0
- package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
- package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +7 -0
- package/cjs/extensions/forms/Value/Currency/Currency.js +2 -3
- package/cjs/extensions/forms/Value/Currency/Currency.js.map +1 -1
- package/cjs/extensions/forms/Value/Number/Number.d.ts +6 -10
- package/cjs/extensions/forms/Value/Number/Number.js +25 -27
- package/cjs/extensions/forms/Value/Number/Number.js.map +1 -1
- package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js +6 -4
- package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
- package/cjs/extensions/forms/hooks/index.d.ts +1 -0
- package/cjs/extensions/forms/hooks/index.js +7 -0
- package/cjs/extensions/forms/hooks/index.js.map +1 -1
- package/cjs/extensions/forms/hooks/useDataValue.d.ts +6 -1
- package/cjs/extensions/forms/hooks/useDataValue.js +76 -21
- package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/cjs/extensions/forms/hooks/useErrorMessage.d.ts +10 -0
- package/cjs/extensions/forms/hooks/useErrorMessage.js +23 -0
- package/cjs/extensions/forms/hooks/useErrorMessage.js.map +1 -0
- package/cjs/extensions/forms/index.d.ts +1 -0
- package/cjs/extensions/forms/index.js +9 -1
- package/cjs/extensions/forms/index.js.map +1 -1
- package/cjs/extensions/forms/style/dnb-forms.css +34 -5
- package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
- package/cjs/extensions/forms/types.d.ts +22 -7
- package/cjs/extensions/forms/types.js.map +1 -1
- package/cjs/extensions/forms/utils/ajv.d.ts +47 -6
- package/cjs/extensions/forms/utils/ajv.js +29 -13
- package/cjs/extensions/forms/utils/ajv.js.map +1 -1
- package/cjs/extensions/forms/utils/index.d.ts +0 -1
- package/cjs/extensions/forms/utils/index.js +0 -12
- package/cjs/extensions/forms/utils/index.js.map +1 -1
- package/cjs/shared/Eufemia.d.ts +1 -1
- package/cjs/shared/Eufemia.js +2 -2
- package/cjs/shared/Eufemia.js.map +1 -1
- package/cjs/shared/component-helper.js +0 -3
- package/cjs/shared/component-helper.js.map +1 -1
- package/cjs/shared/helpers/useSharedState.d.ts +28 -7
- package/cjs/shared/helpers/useSharedState.js +62 -43
- package/cjs/shared/helpers/useSharedState.js.map +1 -1
- package/cjs/shared/locales/en-GB.d.ts +1 -0
- package/cjs/shared/locales/en-GB.js +1 -0
- package/cjs/shared/locales/en-GB.js.map +1 -1
- package/cjs/shared/locales/en-US.d.ts +1 -0
- package/cjs/shared/locales/index.d.ts +2 -0
- package/cjs/shared/locales/nb-NO.d.ts +1 -0
- package/cjs/shared/locales/nb-NO.js +1 -0
- package/cjs/shared/locales/nb-NO.js.map +1 -1
- package/cjs/style/core/utilities.scss +1 -1
- package/cjs/style/dnb-ui-components.css +94 -52
- package/cjs/style/dnb-ui-components.min.css +3 -3
- package/cjs/style/dnb-ui-extensions.css +34 -5
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/dnb-ui-forms.css +34 -5
- package/cjs/style/dnb-ui-forms.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +129 -79
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +34 -5
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +34 -5
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +129 -76
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +34 -5
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +34 -5
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +129 -79
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +4 -4
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +34 -5
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-forms.css +34 -5
- package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/components/accordion/AccordionContent.d.ts +1 -1
- package/components/accordion/AccordionContent.js.map +1 -1
- package/components/accordion/style/dnb-accordion.css +0 -3
- package/components/accordion/style/dnb-accordion.min.css +1 -1
- package/components/accordion/style/dnb-accordion.scss +0 -5
- package/components/breadcrumb/Breadcrumb.js +11 -2
- package/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/components/breadcrumb/BreadcrumbItem.js +11 -8
- package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/components/card/Card.d.ts +6 -4
- package/components/card/Card.js +11 -15
- package/components/card/Card.js.map +1 -1
- package/components/card/style/dnb-card.css +29 -0
- package/components/card/style/dnb-card.min.css +1 -1
- package/components/card/style/dnb-card.scss +41 -0
- package/components/card/style/themes/dnb-card-theme-ui.css +1 -19
- package/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
- package/components/card/style/themes/dnb-card-theme-ui.scss +1 -27
- package/components/date-picker/DatePickerProvider.js +10 -10
- package/components/date-picker/DatePickerProvider.js.map +1 -1
- package/components/flex/Container.js +1 -1
- package/components/flex/Container.js.map +1 -1
- package/components/flex/Item.js +8 -11
- package/components/flex/Item.js.map +1 -1
- package/components/flex/style/dnb-flex.css +3 -0
- package/components/flex/style/dnb-flex.min.css +1 -1
- package/components/flex/style/flex-container.scss +3 -0
- package/components/flex/utils.d.ts +35 -7
- package/components/flex/utils.js +56 -24
- package/components/flex/utils.js.map +1 -1
- package/components/form-status/FormStatus.d.ts +5 -1
- package/components/form-status/FormStatus.js +38 -44
- package/components/form-status/FormStatus.js.map +1 -1
- package/components/form-status/style/dnb-form-status.css +0 -18
- package/components/form-status/style/dnb-form-status.min.css +1 -1
- package/components/form-status/style/dnb-form-status.scss +0 -45
- package/components/global-status/GlobalStatus.js +53 -139
- package/components/global-status/GlobalStatus.js.map +1 -1
- package/components/global-status/style/dnb-global-status.css +6 -16
- package/components/global-status/style/dnb-global-status.min.css +1 -1
- package/components/global-status/style/dnb-global-status.scss +11 -23
- package/components/global-status/style/themes/dnb-global-status-theme-ui.css +0 -3
- package/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
- package/components/global-status/style/themes/dnb-global-status-theme-ui.scss +0 -10
- package/components/height-animation/HeightAnimation.d.ts +12 -4
- package/components/height-animation/HeightAnimation.js +27 -14
- package/components/height-animation/HeightAnimation.js.map +1 -1
- package/components/height-animation/HeightAnimationInstance.d.ts +35 -18
- package/components/height-animation/HeightAnimationInstance.js +186 -158
- package/components/height-animation/HeightAnimationInstance.js.map +1 -1
- package/components/height-animation/style/dnb-height-animation.css +16 -2
- package/components/height-animation/style/dnb-height-animation.min.css +1 -1
- package/components/height-animation/style/dnb-height-animation.scss +18 -2
- package/components/height-animation/useHeightAnimation.d.ts +6 -1
- package/components/height-animation/useHeightAnimation.js +124 -92
- package/components/height-animation/useHeightAnimation.js.map +1 -1
- package/components/number-format/NumberFormat.d.ts +7 -12
- package/components/step-indicator/StepIndicatorItem.js +4 -22
- package/components/step-indicator/StepIndicatorItem.js.map +1 -1
- package/components/step-indicator/StepIndicatorTriggerButton.js +3 -17
- package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
- package/components/step-indicator/style/dnb-step-indicator.css +0 -5
- package/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
- package/components/step-indicator/style/dnb-step-indicator.scss +0 -7
- package/components/table/TableAccordionContent.js +48 -23
- package/components/table/TableAccordionContent.js.map +1 -1
- package/components/table/style/dnb-table.css +6 -3
- package/components/table/style/dnb-table.min.css +1 -1
- package/components/table/style/table-accordion.scss +6 -3
- package/components/tabs/Tabs.js +2 -1
- package/components/tabs/Tabs.js.map +1 -1
- package/components/tabs/TabsContentWrapper.d.ts +1 -0
- package/components/tabs/TabsContentWrapper.js +8 -6
- package/components/tabs/TabsContentWrapper.js.map +1 -1
- package/components/upload/Upload.js +13 -18
- package/components/upload/Upload.js.map +1 -1
- package/components/upload/UploadFileInput.js +3 -1
- package/components/upload/UploadFileInput.js.map +1 -1
- package/components/upload/UploadFileList.js +1 -1
- package/components/upload/UploadFileList.js.map +1 -1
- package/components/upload/UploadStatus.js +6 -2
- package/components/upload/UploadStatus.js.map +1 -1
- package/components/upload/useUpload.js +5 -7
- package/components/upload/useUpload.js.map +1 -1
- package/elements/lib.d.ts +6 -0
- package/elements/typography/H1.d.ts +1 -0
- package/elements/typography/H1.js +1 -1
- package/elements/typography/H1.js.map +1 -1
- package/elements/typography/H2.d.ts +1 -0
- package/elements/typography/H2.js +1 -1
- package/elements/typography/H2.js.map +1 -1
- package/elements/typography/H3.d.ts +1 -0
- package/elements/typography/H3.js +1 -1
- package/elements/typography/H3.js.map +1 -1
- package/elements/typography/H4.d.ts +1 -0
- package/elements/typography/H4.js +1 -1
- package/elements/typography/H4.js.map +1 -1
- package/elements/typography/H5.d.ts +1 -0
- package/elements/typography/H5.js +1 -1
- package/elements/typography/H5.js.map +1 -1
- package/elements/typography/H6.d.ts +1 -0
- package/elements/typography/H6.js +1 -1
- package/elements/typography/H6.js.map +1 -1
- package/es/components/accordion/AccordionContent.d.ts +1 -1
- package/es/components/accordion/AccordionContent.js.map +1 -1
- package/es/components/accordion/style/dnb-accordion.css +0 -3
- package/es/components/accordion/style/dnb-accordion.min.css +1 -1
- package/es/components/accordion/style/dnb-accordion.scss +0 -5
- package/es/components/breadcrumb/Breadcrumb.js +11 -2
- package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/es/components/breadcrumb/BreadcrumbItem.js +11 -8
- package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/es/components/card/Card.d.ts +6 -4
- package/es/components/card/Card.js +11 -15
- package/es/components/card/Card.js.map +1 -1
- package/es/components/card/style/dnb-card.css +29 -0
- package/es/components/card/style/dnb-card.min.css +1 -1
- package/es/components/card/style/dnb-card.scss +41 -0
- package/es/components/card/style/themes/dnb-card-theme-ui.css +1 -19
- package/es/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
- package/es/components/card/style/themes/dnb-card-theme-ui.scss +1 -27
- package/es/components/date-picker/DatePickerProvider.js +10 -10
- package/es/components/date-picker/DatePickerProvider.js.map +1 -1
- package/es/components/flex/Container.js +1 -1
- package/es/components/flex/Container.js.map +1 -1
- package/es/components/flex/Item.js +8 -11
- package/es/components/flex/Item.js.map +1 -1
- package/es/components/flex/style/dnb-flex.css +3 -0
- package/es/components/flex/style/dnb-flex.min.css +1 -1
- package/es/components/flex/style/flex-container.scss +3 -0
- package/es/components/flex/utils.d.ts +35 -7
- package/es/components/flex/utils.js +55 -24
- package/es/components/flex/utils.js.map +1 -1
- package/es/components/form-status/FormStatus.d.ts +5 -1
- package/es/components/form-status/FormStatus.js +38 -44
- package/es/components/form-status/FormStatus.js.map +1 -1
- package/es/components/form-status/style/dnb-form-status.css +0 -18
- package/es/components/form-status/style/dnb-form-status.min.css +1 -1
- package/es/components/form-status/style/dnb-form-status.scss +0 -45
- package/es/components/global-status/GlobalStatus.js +51 -133
- package/es/components/global-status/GlobalStatus.js.map +1 -1
- package/es/components/global-status/style/dnb-global-status.css +6 -16
- package/es/components/global-status/style/dnb-global-status.min.css +1 -1
- package/es/components/global-status/style/dnb-global-status.scss +11 -23
- package/es/components/global-status/style/themes/dnb-global-status-theme-ui.css +0 -3
- package/es/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
- package/es/components/global-status/style/themes/dnb-global-status-theme-ui.scss +0 -10
- package/es/components/height-animation/HeightAnimation.d.ts +12 -4
- package/es/components/height-animation/HeightAnimation.js +27 -14
- package/es/components/height-animation/HeightAnimation.js.map +1 -1
- package/es/components/height-animation/HeightAnimationInstance.d.ts +35 -18
- package/es/components/height-animation/HeightAnimationInstance.js +188 -155
- package/es/components/height-animation/HeightAnimationInstance.js.map +1 -1
- package/es/components/height-animation/style/dnb-height-animation.css +16 -2
- package/es/components/height-animation/style/dnb-height-animation.min.css +1 -1
- package/es/components/height-animation/style/dnb-height-animation.scss +18 -2
- package/es/components/height-animation/useHeightAnimation.d.ts +6 -1
- package/es/components/height-animation/useHeightAnimation.js +124 -92
- package/es/components/height-animation/useHeightAnimation.js.map +1 -1
- package/es/components/number-format/NumberFormat.d.ts +7 -12
- package/es/components/step-indicator/StepIndicatorItem.js +4 -22
- package/es/components/step-indicator/StepIndicatorItem.js.map +1 -1
- package/es/components/step-indicator/StepIndicatorTriggerButton.js +3 -17
- package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
- package/es/components/step-indicator/style/dnb-step-indicator.css +0 -5
- package/es/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
- package/es/components/step-indicator/style/dnb-step-indicator.scss +0 -7
- package/es/components/table/TableAccordionContent.js +47 -23
- package/es/components/table/TableAccordionContent.js.map +1 -1
- package/es/components/table/style/dnb-table.css +6 -3
- package/es/components/table/style/dnb-table.min.css +1 -1
- package/es/components/table/style/table-accordion.scss +6 -3
- package/es/components/tabs/Tabs.js +2 -1
- package/es/components/tabs/Tabs.js.map +1 -1
- package/es/components/tabs/TabsContentWrapper.d.ts +1 -0
- package/es/components/tabs/TabsContentWrapper.js +8 -6
- package/es/components/tabs/TabsContentWrapper.js.map +1 -1
- package/es/components/upload/Upload.js +13 -18
- package/es/components/upload/Upload.js.map +1 -1
- package/es/components/upload/UploadFileInput.js +3 -1
- package/es/components/upload/UploadFileInput.js.map +1 -1
- package/es/components/upload/UploadFileList.js +1 -1
- package/es/components/upload/UploadFileList.js.map +1 -1
- package/es/components/upload/UploadStatus.js +6 -2
- package/es/components/upload/UploadStatus.js.map +1 -1
- package/es/components/upload/useUpload.js +5 -7
- package/es/components/upload/useUpload.js.map +1 -1
- package/es/elements/lib.d.ts +6 -0
- package/es/elements/typography/H1.d.ts +1 -0
- package/es/elements/typography/H1.js +1 -1
- package/es/elements/typography/H1.js.map +1 -1
- package/es/elements/typography/H2.d.ts +1 -0
- package/es/elements/typography/H2.js +1 -1
- package/es/elements/typography/H2.js.map +1 -1
- package/es/elements/typography/H3.d.ts +1 -0
- package/es/elements/typography/H3.js +1 -1
- package/es/elements/typography/H3.js.map +1 -1
- package/es/elements/typography/H4.d.ts +1 -0
- package/es/elements/typography/H4.js +1 -1
- package/es/elements/typography/H4.js.map +1 -1
- package/es/elements/typography/H5.d.ts +1 -0
- package/es/elements/typography/H5.js +1 -1
- package/es/elements/typography/H5.js.map +1 -1
- package/es/elements/typography/H6.d.ts +1 -0
- package/es/elements/typography/H6.js +1 -1
- package/es/elements/typography/H6.js.map +1 -1
- package/es/extensions/forms/DataContext/Context.d.ts +18 -5
- package/es/extensions/forms/DataContext/Context.js +9 -0
- package/es/extensions/forms/DataContext/Context.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.d.ts +57 -19
- package/es/extensions/forms/DataContext/Provider/Provider.js +126 -58
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +3 -2
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/es/extensions/forms/Field/Date/Date.js +4 -3
- package/es/extensions/forms/Field/Date/Date.js.map +1 -1
- package/es/extensions/forms/Field/Email/Email.js +4 -3
- package/es/extensions/forms/Field/Email/Email.js.map +1 -1
- package/es/extensions/forms/Field/Expiry/Expiry.js +5 -4
- package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +3 -2
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/es/extensions/forms/Field/Number/Number.d.ts +2 -4
- package/es/extensions/forms/Field/Number/Number.js +14 -15
- package/es/extensions/forms/Field/Number/Number.js.map +1 -1
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +3 -2
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +3 -2
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +9 -0
- package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
- package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +7 -0
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +3 -2
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/es/extensions/forms/Field/String/String.d.ts +2 -2
- package/es/extensions/forms/Field/String/String.js +5 -3
- package/es/extensions/forms/Field/String/String.js.map +1 -1
- package/es/extensions/forms/Field/Toggle/Toggle.js +5 -2
- package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.js +2 -4
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +19 -5
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +25 -1
- package/es/extensions/forms/Form/Handler/Handler.d.ts +1 -1
- package/es/extensions/forms/Form/Handler/Handler.js +7 -1
- package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/es/extensions/forms/Form/Visibility/Visibility.d.ts +6 -1
- package/es/extensions/forms/Form/Visibility/Visibility.js +55 -40
- package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/es/extensions/forms/Form/data-context/getData.d.ts +8 -0
- package/es/extensions/forms/Form/data-context/getData.js +15 -0
- package/es/extensions/forms/Form/data-context/getData.js.map +1 -0
- package/es/extensions/forms/Form/data-context/setData.d.ts +2 -0
- package/es/extensions/forms/Form/data-context/setData.js +6 -0
- package/es/extensions/forms/Form/data-context/setData.js.map +1 -0
- package/es/extensions/forms/Form/data-context/useData.d.ts +22 -0
- package/es/extensions/forms/Form/data-context/useData.js +58 -0
- package/es/extensions/forms/Form/data-context/useData.js.map +1 -0
- package/es/extensions/forms/Form/data-context/useError.d.ts +5 -0
- package/es/extensions/forms/Form/data-context/useError.js +13 -0
- package/es/extensions/forms/Form/data-context/useError.js.map +1 -0
- package/es/extensions/forms/Form/index.d.ts +4 -1
- package/es/extensions/forms/Form/index.js +4 -1
- package/es/extensions/forms/Form/index.js.map +1 -1
- package/es/extensions/forms/Iterate/Array/Array.d.ts +2 -2
- package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/es/extensions/forms/StepsLayout/StepsLayout.d.ts +3 -0
- package/es/extensions/forms/StepsLayout/StepsLayout.js +31 -22
- package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
- package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -0
- package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
- package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +7 -0
- package/es/extensions/forms/Value/Currency/Currency.js +2 -3
- package/es/extensions/forms/Value/Currency/Currency.js.map +1 -1
- package/es/extensions/forms/Value/Number/Number.d.ts +6 -10
- package/es/extensions/forms/Value/Number/Number.js +22 -27
- package/es/extensions/forms/Value/Number/Number.js.map +1 -1
- package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js +6 -4
- package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
- package/es/extensions/forms/hooks/index.d.ts +1 -0
- package/es/extensions/forms/hooks/index.js +1 -0
- package/es/extensions/forms/hooks/index.js.map +1 -1
- package/es/extensions/forms/hooks/useDataValue.d.ts +6 -1
- package/es/extensions/forms/hooks/useDataValue.js +72 -19
- package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/es/extensions/forms/hooks/useErrorMessage.d.ts +10 -0
- package/es/extensions/forms/hooks/useErrorMessage.js +15 -0
- package/es/extensions/forms/hooks/useErrorMessage.js.map +1 -0
- package/es/extensions/forms/index.d.ts +1 -0
- package/es/extensions/forms/index.js +1 -0
- package/es/extensions/forms/index.js.map +1 -1
- package/es/extensions/forms/style/dnb-forms.css +34 -5
- package/es/extensions/forms/style/dnb-forms.min.css +1 -1
- package/es/extensions/forms/types.d.ts +22 -7
- package/es/extensions/forms/types.js.map +1 -1
- package/es/extensions/forms/utils/ajv.d.ts +47 -6
- package/es/extensions/forms/utils/ajv.js +23 -15
- package/es/extensions/forms/utils/ajv.js.map +1 -1
- package/es/extensions/forms/utils/index.d.ts +0 -1
- package/es/extensions/forms/utils/index.js +0 -1
- package/es/extensions/forms/utils/index.js.map +1 -1
- package/es/shared/Eufemia.d.ts +1 -1
- package/es/shared/Eufemia.js +2 -2
- package/es/shared/Eufemia.js.map +1 -1
- package/es/shared/component-helper.js +0 -3
- package/es/shared/component-helper.js.map +1 -1
- package/es/shared/helpers/useSharedState.d.ts +28 -7
- package/es/shared/helpers/useSharedState.js +62 -43
- package/es/shared/helpers/useSharedState.js.map +1 -1
- package/es/shared/locales/en-GB.d.ts +1 -0
- package/es/shared/locales/en-GB.js +1 -0
- package/es/shared/locales/en-GB.js.map +1 -1
- package/es/shared/locales/en-US.d.ts +1 -0
- package/es/shared/locales/index.d.ts +2 -0
- package/es/shared/locales/nb-NO.d.ts +1 -0
- package/es/shared/locales/nb-NO.js +1 -0
- package/es/shared/locales/nb-NO.js.map +1 -1
- package/es/style/core/utilities.scss +1 -1
- package/es/style/dnb-ui-components.css +94 -52
- package/es/style/dnb-ui-components.min.css +3 -3
- package/es/style/dnb-ui-extensions.css +34 -5
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/dnb-ui-forms.css +34 -5
- package/es/style/dnb-ui-forms.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +129 -79
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +34 -5
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +34 -5
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +129 -76
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +34 -5
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +34 -5
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +129 -79
- package/es/style/themes/theme-ui/ui-theme-components.min.css +4 -4
- package/es/style/themes/theme-ui/ui-theme-extensions.css +34 -5
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-forms.css +34 -5
- package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/esm/dnb-ui-basis.min.mjs +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/DataContext/Context.d.ts +18 -5
- package/extensions/forms/DataContext/Context.js +9 -0
- package/extensions/forms/DataContext/Context.js.map +1 -1
- package/extensions/forms/DataContext/Provider/Provider.d.ts +57 -19
- package/extensions/forms/DataContext/Provider/Provider.js +128 -58
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +3 -2
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/extensions/forms/Field/Date/Date.js +4 -3
- package/extensions/forms/Field/Date/Date.js.map +1 -1
- package/extensions/forms/Field/Email/Email.js +4 -3
- package/extensions/forms/Field/Email/Email.js.map +1 -1
- package/extensions/forms/Field/Expiry/Expiry.js +5 -4
- package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +3 -2
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/extensions/forms/Field/Number/Number.d.ts +2 -4
- package/extensions/forms/Field/Number/Number.js +14 -15
- package/extensions/forms/Field/Number/Number.js.map +1 -1
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +3 -2
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +3 -2
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +9 -0
- package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
- package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +7 -0
- package/extensions/forms/Field/SelectCountry/SelectCountry.js +3 -2
- package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/extensions/forms/Field/String/String.d.ts +2 -2
- package/extensions/forms/Field/String/String.js +5 -3
- package/extensions/forms/Field/String/String.js.map +1 -1
- package/extensions/forms/Field/Toggle/Toggle.js +5 -2
- package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.js +2 -4
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.css +19 -5
- package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.scss +25 -1
- package/extensions/forms/Form/Handler/Handler.d.ts +1 -1
- package/extensions/forms/Form/Handler/Handler.js +7 -1
- package/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/extensions/forms/Form/Visibility/Visibility.d.ts +6 -1
- package/extensions/forms/Form/Visibility/Visibility.js +53 -39
- package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/extensions/forms/Form/data-context/getData.d.ts +8 -0
- package/extensions/forms/Form/data-context/getData.js +15 -0
- package/extensions/forms/Form/data-context/getData.js.map +1 -0
- package/extensions/forms/Form/data-context/setData.d.ts +2 -0
- package/extensions/forms/Form/data-context/setData.js +6 -0
- package/extensions/forms/Form/data-context/setData.js.map +1 -0
- package/extensions/forms/Form/data-context/useData.d.ts +22 -0
- package/extensions/forms/Form/data-context/useData.js +59 -0
- package/extensions/forms/Form/data-context/useData.js.map +1 -0
- package/extensions/forms/Form/data-context/useError.d.ts +5 -0
- package/extensions/forms/Form/data-context/useError.js +13 -0
- package/extensions/forms/Form/data-context/useError.js.map +1 -0
- package/extensions/forms/Form/index.d.ts +4 -1
- package/extensions/forms/Form/index.js +4 -1
- package/extensions/forms/Form/index.js.map +1 -1
- package/extensions/forms/Iterate/Array/Array.d.ts +2 -2
- package/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/extensions/forms/StepsLayout/StepsLayout.d.ts +3 -0
- package/extensions/forms/StepsLayout/StepsLayout.js +31 -22
- package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
- package/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -0
- package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
- package/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +7 -0
- package/extensions/forms/Value/Currency/Currency.js +2 -3
- package/extensions/forms/Value/Currency/Currency.js.map +1 -1
- package/extensions/forms/Value/Number/Number.d.ts +6 -10
- package/extensions/forms/Value/Number/Number.js +22 -27
- package/extensions/forms/Value/Number/Number.js.map +1 -1
- package/extensions/forms/Value/PhoneNumber/PhoneNumber.js +6 -4
- package/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
- package/extensions/forms/hooks/index.d.ts +1 -0
- package/extensions/forms/hooks/index.js +1 -0
- package/extensions/forms/hooks/index.js.map +1 -1
- package/extensions/forms/hooks/useDataValue.d.ts +6 -1
- package/extensions/forms/hooks/useDataValue.js +74 -19
- package/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/extensions/forms/hooks/useErrorMessage.d.ts +10 -0
- package/extensions/forms/hooks/useErrorMessage.js +15 -0
- package/extensions/forms/hooks/useErrorMessage.js.map +1 -0
- package/extensions/forms/index.d.ts +1 -0
- package/extensions/forms/index.js +1 -0
- package/extensions/forms/index.js.map +1 -1
- package/extensions/forms/style/dnb-forms.css +34 -5
- package/extensions/forms/style/dnb-forms.min.css +1 -1
- package/extensions/forms/types.d.ts +22 -7
- package/extensions/forms/types.js.map +1 -1
- package/extensions/forms/utils/ajv.d.ts +47 -6
- package/extensions/forms/utils/ajv.js +23 -15
- package/extensions/forms/utils/ajv.js.map +1 -1
- package/extensions/forms/utils/index.d.ts +0 -1
- package/extensions/forms/utils/index.js +0 -1
- package/extensions/forms/utils/index.js.map +1 -1
- package/package.json +1 -1
- package/shared/Eufemia.d.ts +1 -1
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/shared/component-helper.js +0 -3
- package/shared/component-helper.js.map +1 -1
- package/shared/helpers/useSharedState.d.ts +28 -7
- package/shared/helpers/useSharedState.js +62 -43
- package/shared/helpers/useSharedState.js.map +1 -1
- package/shared/locales/en-GB.d.ts +1 -0
- package/shared/locales/en-GB.js +1 -0
- package/shared/locales/en-GB.js.map +1 -1
- package/shared/locales/en-US.d.ts +1 -0
- package/shared/locales/index.d.ts +2 -0
- package/shared/locales/nb-NO.d.ts +1 -0
- package/shared/locales/nb-NO.js +1 -0
- package/shared/locales/nb-NO.js.map +1 -1
- package/style/core/utilities.scss +1 -1
- package/style/dnb-ui-components.css +94 -52
- package/style/dnb-ui-components.min.css +3 -3
- package/style/dnb-ui-extensions.css +34 -5
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/dnb-ui-forms.css +34 -5
- package/style/dnb-ui-forms.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.css +129 -79
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +34 -5
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-forms.css +34 -5
- package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +129 -76
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +34 -5
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-forms.css +34 -5
- package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-components.css +129 -79
- package/style/themes/theme-ui/ui-theme-components.min.css +4 -4
- package/style/themes/theme-ui/ui-theme-extensions.css +34 -5
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-forms.css +34 -5
- package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/umd/dnb-ui-basis.min.js +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/components/global-status/AnimationHelper.d.ts +0 -12
- package/cjs/components/global-status/AnimationHelper.js +0 -109
- package/cjs/components/global-status/AnimationHelper.js.map +0 -1
- package/cjs/extensions/forms/Form/hooks/useData.d.ts +0 -10
- package/cjs/extensions/forms/Form/hooks/useData.js +0 -39
- package/cjs/extensions/forms/Form/hooks/useData.js.map +0 -1
- package/cjs/extensions/forms/utils/numbers.d.ts +0 -17
- package/cjs/extensions/forms/utils/numbers.js +0 -42
- package/cjs/extensions/forms/utils/numbers.js.map +0 -1
- package/components/global-status/AnimationHelper.d.ts +0 -12
- package/components/global-status/AnimationHelper.js +0 -100
- package/components/global-status/AnimationHelper.js.map +0 -1
- package/es/components/global-status/AnimationHelper.d.ts +0 -12
- package/es/components/global-status/AnimationHelper.js +0 -100
- package/es/components/global-status/AnimationHelper.js.map +0 -1
- package/es/extensions/forms/Form/hooks/useData.d.ts +0 -10
- package/es/extensions/forms/Form/hooks/useData.js +0 -32
- package/es/extensions/forms/Form/hooks/useData.js.map +0 -1
- package/es/extensions/forms/utils/numbers.d.ts +0 -17
- package/es/extensions/forms/utils/numbers.js +0 -35
- package/es/extensions/forms/utils/numbers.js.map +0 -1
- package/extensions/forms/Form/hooks/useData.d.ts +0 -10
- package/extensions/forms/Form/hooks/useData.js +0 -33
- package/extensions/forms/Form/hooks/useData.js.map +0 -1
- package/extensions/forms/utils/numbers.d.ts +0 -17
- package/extensions/forms/utils/numbers.js +0 -35
- package/extensions/forms/utils/numbers.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UploadFileList.js","names":["React","UploadContext","UploadFileListCell","useUpload","UploadFileList","context","useContext","id","fileListAriaLabel","deleteButton","loadingText","onFileDelete","onChange","files","setFiles","setInternalFiles","length","createElement","className","map","uploadFile","index","onDeleteHandler","fileItem","cleanedFiles","filter","fileListElement","file","key","onDelete","deleteButtonText"],"sources":["../../../../src/components/upload/UploadFileList.tsx"],"sourcesContent":["import React from 'react'\nimport { UploadFile } from './types'\nimport { UploadContext } from './UploadContext'\nimport UploadFileListCell from './UploadFileListCell'\nimport useUpload from './useUpload'\n\nfunction UploadFileList() {\n const context = React.useContext(UploadContext)\n\n const {\n id,\n fileListAriaLabel,\n deleteButton,\n loadingText,\n onFileDelete,\n onChange,\n } = context\n\n const { files, setFiles, setInternalFiles } = useUpload(id)\n\n if (files
|
|
1
|
+
{"version":3,"file":"UploadFileList.js","names":["React","UploadContext","UploadFileListCell","useUpload","UploadFileList","context","useContext","id","fileListAriaLabel","deleteButton","loadingText","onFileDelete","onChange","files","setFiles","setInternalFiles","length","createElement","className","map","uploadFile","index","onDeleteHandler","fileItem","cleanedFiles","filter","fileListElement","file","key","onDelete","deleteButtonText"],"sources":["../../../../src/components/upload/UploadFileList.tsx"],"sourcesContent":["import React from 'react'\nimport { UploadFile } from './types'\nimport { UploadContext } from './UploadContext'\nimport UploadFileListCell from './UploadFileListCell'\nimport useUpload from './useUpload'\n\nfunction UploadFileList() {\n const context = React.useContext(UploadContext)\n\n const {\n id,\n fileListAriaLabel,\n deleteButton,\n loadingText,\n onFileDelete,\n onChange,\n } = context\n\n const { files, setFiles, setInternalFiles } = useUpload(id)\n\n if (files === null || files.length < 1) {\n return null\n }\n\n return (\n <ul className=\"dnb-upload__file-list\" aria-label={fileListAriaLabel}>\n {files.map((uploadFile: UploadFile, index: number) => {\n const onDeleteHandler = () => {\n if (typeof onFileDelete === 'function') {\n onFileDelete({ fileItem: uploadFile })\n }\n\n const cleanedFiles = files.filter(\n (fileListElement) => fileListElement.file != uploadFile.file\n )\n\n setFiles(cleanedFiles)\n setInternalFiles(cleanedFiles)\n\n if (typeof onChange === 'function') {\n onChange({ files: cleanedFiles })\n }\n }\n\n return (\n <UploadFileListCell\n key={index}\n id={id}\n uploadFile={uploadFile}\n onDelete={onDeleteHandler}\n deleteButtonText={deleteButton}\n loadingText={loadingText}\n />\n )\n })}\n </ul>\n )\n}\n\nexport default UploadFileList\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,OAAOC,kBAAkB,MAAM,sBAAsB;AACrD,OAAOC,SAAS,MAAM,aAAa;AAEnC,SAASC,cAAcA,CAAA,EAAG;EACxB,MAAMC,OAAO,GAAGL,KAAK,CAACM,UAAU,CAACL,aAAa,CAAC;EAE/C,MAAM;IACJM,EAAE;IACFC,iBAAiB;IACjBC,YAAY;IACZC,WAAW;IACXC,YAAY;IACZC;EACF,CAAC,GAAGP,OAAO;EAEX,MAAM;IAAEQ,KAAK;IAAEC,QAAQ;IAAEC;EAAiB,CAAC,GAAGZ,SAAS,CAACI,EAAE,CAAC;EAE3D,IAAIM,KAAK,KAAK,IAAI,IAAIA,KAAK,CAACG,MAAM,GAAG,CAAC,EAAE;IACtC,OAAO,IAAI;EACb;EAEA,OACEhB,KAAA,CAAAiB,aAAA;IAAIC,SAAS,EAAC,uBAAuB;IAAC,cAAYV;EAAkB,GACjEK,KAAK,CAACM,GAAG,CAAC,CAACC,UAAsB,EAAEC,KAAa,KAAK;IACpD,MAAMC,eAAe,GAAGA,CAAA,KAAM;MAC5B,IAAI,OAAOX,YAAY,KAAK,UAAU,EAAE;QACtCA,YAAY,CAAC;UAAEY,QAAQ,EAAEH;QAAW,CAAC,CAAC;MACxC;MAEA,MAAMI,YAAY,GAAGX,KAAK,CAACY,MAAM,CAC9BC,eAAe,IAAKA,eAAe,CAACC,IAAI,IAAIP,UAAU,CAACO,IAC1D,CAAC;MAEDb,QAAQ,CAACU,YAAY,CAAC;MACtBT,gBAAgB,CAACS,YAAY,CAAC;MAE9B,IAAI,OAAOZ,QAAQ,KAAK,UAAU,EAAE;QAClCA,QAAQ,CAAC;UAAEC,KAAK,EAAEW;QAAa,CAAC,CAAC;MACnC;IACF,CAAC;IAED,OACExB,KAAA,CAAAiB,aAAA,CAACf,kBAAkB;MACjB0B,GAAG,EAAEP,KAAM;MACXd,EAAE,EAAEA,EAAG;MACPa,UAAU,EAAEA,UAAW;MACvBS,QAAQ,EAAEP,eAAgB;MAC1BQ,gBAAgB,EAAErB,YAAa;MAC/BC,WAAW,EAAEA;IAAY,CAC1B,CAAC;EAEN,CAAC,CACC,CAAC;AAET;AAEA,eAAeN,cAAc"}
|
|
@@ -13,10 +13,14 @@ const UploadStatus = () => {
|
|
|
13
13
|
const {
|
|
14
14
|
internalFiles
|
|
15
15
|
} = useUpload(id);
|
|
16
|
+
const open = internalFiles.length > filesAmountLimit;
|
|
16
17
|
return React.createElement(HeightAnimation, {
|
|
17
|
-
open:
|
|
18
|
+
open: open,
|
|
19
|
+
delay: 500
|
|
18
20
|
}, React.createElement(FormStatus, {
|
|
19
|
-
|
|
21
|
+
shellSpace: {
|
|
22
|
+
top: 'small'
|
|
23
|
+
},
|
|
20
24
|
stretch: true
|
|
21
25
|
}, String(errorAmountLimit).replace('%amount', String(filesAmountLimit))));
|
|
22
26
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UploadStatus.js","names":["React","UploadContext","FormStatus","useUpload","HeightAnimation","UploadStatus","context","useContext","id","filesAmountLimit","errorAmountLimit","internalFiles","createElement","
|
|
1
|
+
{"version":3,"file":"UploadStatus.js","names":["React","UploadContext","FormStatus","useUpload","HeightAnimation","UploadStatus","context","useContext","id","filesAmountLimit","errorAmountLimit","internalFiles","open","length","createElement","delay","shellSpace","top","stretch","String","replace"],"sources":["../../../../src/components/upload/UploadStatus.tsx"],"sourcesContent":["import React from 'react'\nimport { UploadContext } from './UploadContext'\nimport FormStatus from '../FormStatus'\nimport useUpload from './useUpload'\nimport HeightAnimation from '../height-animation/HeightAnimation'\n\nconst UploadStatus = () => {\n const context = React.useContext(UploadContext)\n\n const { id, filesAmountLimit, errorAmountLimit } = context\n const { internalFiles } = useUpload(id)\n const open = internalFiles.length > filesAmountLimit\n\n return (\n <HeightAnimation\n open={open}\n delay={\n 500 /* delay the animation to avoid flickering while each file animates */\n }\n >\n <FormStatus shellSpace={{ top: 'small' }} stretch>\n {String(errorAmountLimit).replace(\n '%amount',\n String(filesAmountLimit)\n )}\n </FormStatus>\n </HeightAnimation>\n )\n}\n\nexport default UploadStatus\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,OAAOC,UAAU,MAAM,eAAe;AACtC,OAAOC,SAAS,MAAM,aAAa;AACnC,OAAOC,eAAe,MAAM,qCAAqC;AAEjE,MAAMC,YAAY,GAAGA,CAAA,KAAM;EACzB,MAAMC,OAAO,GAAGN,KAAK,CAACO,UAAU,CAACN,aAAa,CAAC;EAE/C,MAAM;IAAEO,EAAE;IAAEC,gBAAgB;IAAEC;EAAiB,CAAC,GAAGJ,OAAO;EAC1D,MAAM;IAAEK;EAAc,CAAC,GAAGR,SAAS,CAACK,EAAE,CAAC;EACvC,MAAMI,IAAI,GAAGD,aAAa,CAACE,MAAM,GAAGJ,gBAAgB;EAEpD,OACET,KAAA,CAAAc,aAAA,CAACV,eAAe;IACdQ,IAAI,EAAEA,IAAK;IACXG,KAAK,EACH;EACD,GAEDf,KAAA,CAAAc,aAAA,CAACZ,UAAU;IAACc,UAAU,EAAE;MAAEC,GAAG,EAAE;IAAQ,CAAE;IAACC,OAAO;EAAA,GAC9CC,MAAM,CAACT,gBAAgB,CAAC,CAACU,OAAO,CAC/B,SAAS,EACTD,MAAM,CAACV,gBAAgB,CACzB,CACU,CACG,CAAC;AAEtB,CAAC;AAED,eAAeJ,YAAY"}
|
|
@@ -1,18 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import { useEventEmitter } from '../../shared/component-helper';
|
|
1
|
+
import { useSharedState } from '../../shared/helpers/useSharedState';
|
|
4
2
|
function useUpload(id) {
|
|
5
3
|
const {
|
|
6
4
|
data,
|
|
7
|
-
|
|
8
|
-
} =
|
|
5
|
+
extend
|
|
6
|
+
} = useSharedState(id);
|
|
9
7
|
const setFiles = files => {
|
|
10
|
-
|
|
8
|
+
extend({
|
|
11
9
|
files
|
|
12
10
|
});
|
|
13
11
|
};
|
|
14
12
|
const setInternalFiles = internalFiles => {
|
|
15
|
-
|
|
13
|
+
extend({
|
|
16
14
|
internalFiles
|
|
17
15
|
});
|
|
18
16
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useUpload.js","names":["
|
|
1
|
+
{"version":3,"file":"useUpload.js","names":["useSharedState","useUpload","id","data","extend","setFiles","files","setInternalFiles","internalFiles","getExistingFile","file","fileItems","arguments","length","undefined","find","_ref","f","name","size","lastModified"],"sources":["../../../../src/components/upload/useUpload.ts"],"sourcesContent":["import { useSharedState } from '../../shared/helpers/useSharedState'\nimport type { UploadFile } from './types'\n\nexport type useUploadReturn = {\n files: UploadFile[]\n setFiles: (files: UploadFile[]) => void\n internalFiles: UploadFile[]\n setInternalFiles: (files: UploadFile[]) => void\n getExistingFile: (file: File, fileItems?: UploadFile[]) => UploadFile\n}\n\n/**\n * Use together with Upload with the same id to manage the files from outside the component.\n */\nfunction useUpload(id: string): useUploadReturn {\n const { data, extend } = useSharedState<{\n files?: UploadFile[]\n internalFiles?: UploadFile[]\n }>(id)\n\n const setFiles = (files: UploadFile[]) => {\n extend({ files })\n }\n\n const setInternalFiles = (internalFiles: UploadFile[]) => {\n extend({ internalFiles })\n }\n\n const files = data?.files || []\n const internalFiles = data?.internalFiles || []\n\n const getExistingFile = (\n file: File,\n fileItems: UploadFile[] = files\n ) => {\n return fileItems.find(({ file: f }) => {\n return (\n f.name === file.name &&\n f.size === file.size &&\n f.lastModified === file.lastModified\n )\n })\n }\n\n return {\n files,\n setFiles,\n internalFiles,\n setInternalFiles,\n getExistingFile,\n }\n}\n\nexport default useUpload\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,qCAAqC;AAcpE,SAASC,SAASA,CAACC,EAAU,EAAmB;EAC9C,MAAM;IAAEC,IAAI;IAAEC;EAAO,CAAC,GAAGJ,cAAc,CAGpCE,EAAE,CAAC;EAEN,MAAMG,QAAQ,GAAIC,KAAmB,IAAK;IACxCF,MAAM,CAAC;MAAEE;IAAM,CAAC,CAAC;EACnB,CAAC;EAED,MAAMC,gBAAgB,GAAIC,aAA2B,IAAK;IACxDJ,MAAM,CAAC;MAAEI;IAAc,CAAC,CAAC;EAC3B,CAAC;EAED,MAAMF,KAAK,GAAG,CAAAH,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEG,KAAK,KAAI,EAAE;EAC/B,MAAME,aAAa,GAAG,CAAAL,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEK,aAAa,KAAI,EAAE;EAE/C,MAAMC,eAAe,GAAG,SAAAA,CACtBC,IAAU,EAEP;IAAA,IADHC,SAAuB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAGN,KAAK;IAE/B,OAAOK,SAAS,CAACI,IAAI,CAACC,IAAA,IAAiB;MAAA,IAAhB;QAAEN,IAAI,EAAEO;MAAE,CAAC,GAAAD,IAAA;MAChC,OACEC,CAAC,CAACC,IAAI,KAAKR,IAAI,CAACQ,IAAI,IACpBD,CAAC,CAACE,IAAI,KAAKT,IAAI,CAACS,IAAI,IACpBF,CAAC,CAACG,YAAY,KAAKV,IAAI,CAACU,YAAY;IAExC,CAAC,CAAC;EACJ,CAAC;EAED,OAAO;IACLd,KAAK;IACLD,QAAQ;IACRG,aAAa;IACbD,gBAAgB;IAChBE;EACF,CAAC;AACH;AAEA,eAAeR,SAAS"}
|
package/elements/lib.d.ts
CHANGED
|
@@ -89,26 +89,32 @@ export declare const getElements: () => {
|
|
|
89
89
|
H1: {
|
|
90
90
|
({ size, ...props }: import("./H").SharedHProps): import("react/jsx-runtime").JSX.Element;
|
|
91
91
|
_isHeadingElement: boolean;
|
|
92
|
+
_supportsSpacingProps: boolean;
|
|
92
93
|
};
|
|
93
94
|
H2: {
|
|
94
95
|
({ size, ...props }: import("./H").SharedHProps): import("react/jsx-runtime").JSX.Element;
|
|
95
96
|
_isHeadingElement: boolean;
|
|
97
|
+
_supportsSpacingProps: boolean;
|
|
96
98
|
};
|
|
97
99
|
H3: {
|
|
98
100
|
({ size, ...props }: import("./H").SharedHProps): import("react/jsx-runtime").JSX.Element;
|
|
99
101
|
_isHeadingElement: boolean;
|
|
102
|
+
_supportsSpacingProps: boolean;
|
|
100
103
|
};
|
|
101
104
|
H4: {
|
|
102
105
|
({ size, ...props }: import("./H").SharedHProps): import("react/jsx-runtime").JSX.Element;
|
|
103
106
|
_isHeadingElement: boolean;
|
|
107
|
+
_supportsSpacingProps: boolean;
|
|
104
108
|
};
|
|
105
109
|
H5: {
|
|
106
110
|
({ size, ...props }: import("./H").SharedHProps): import("react/jsx-runtime").JSX.Element;
|
|
107
111
|
_isHeadingElement: boolean;
|
|
112
|
+
_supportsSpacingProps: boolean;
|
|
108
113
|
};
|
|
109
114
|
H6: {
|
|
110
115
|
({ size, ...props }: import("./H").SharedHProps): import("react/jsx-runtime").JSX.Element;
|
|
111
116
|
_isHeadingElement: boolean;
|
|
117
|
+
_supportsSpacingProps: boolean;
|
|
112
118
|
};
|
|
113
119
|
Hr: {
|
|
114
120
|
({ fullscreen, light, medium, className, ...props }?: import("../shared/types").SpacingElementProps & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"H1.js","names":["React","H","H1","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H1.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H1 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h1\" size={size || 'auto'} {...props} />\n)\n\nH1._isHeadingElement = true\
|
|
1
|
+
{"version":3,"file":"H1.js","names":["React","H","H1","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H1.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H1 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h1\" size={size || 'auto'} {...props} />\n)\n\nH1._isHeadingElement = true\nH1._supportsSpacingProps = true\n\nexport default H1\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BT,EAAE,CAACU,qBAAqB,GAAG,IAAI;AAE/B,eAAeV,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"H2.js","names":["React","H","H2","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H2.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H2 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h2\" size={size || 'auto'} {...props} />\n)\n\nH2._isHeadingElement = true\
|
|
1
|
+
{"version":3,"file":"H2.js","names":["React","H","H2","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H2.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H2 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h2\" size={size || 'auto'} {...props} />\n)\n\nH2._isHeadingElement = true\nH2._supportsSpacingProps = true\n\nexport default H2\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BT,EAAE,CAACU,qBAAqB,GAAG,IAAI;AAE/B,eAAeV,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"H3.js","names":["React","H","H3","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H3.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H3 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h3\" size={size || 'auto'} {...props} />\n)\n\nH3._isHeadingElement = true\
|
|
1
|
+
{"version":3,"file":"H3.js","names":["React","H","H3","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H3.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H3 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h3\" size={size || 'auto'} {...props} />\n)\n\nH3._isHeadingElement = true\nH3._supportsSpacingProps = true\n\nexport default H3\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BT,EAAE,CAACU,qBAAqB,GAAG,IAAI;AAE/B,eAAeV,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"H4.js","names":["React","H","H4","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H4.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H4 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h4\" size={size || 'auto'} {...props} />\n)\n\nH4._isHeadingElement = true\
|
|
1
|
+
{"version":3,"file":"H4.js","names":["React","H","H4","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H4.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H4 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h4\" size={size || 'auto'} {...props} />\n)\n\nH4._isHeadingElement = true\nH4._supportsSpacingProps = true\n\nexport default H4\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BT,EAAE,CAACU,qBAAqB,GAAG,IAAI;AAE/B,eAAeV,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"H5.js","names":["React","H","H5","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H5.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H5 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h5\" size={size || 'auto'} {...props} />\n)\n\nH5._isHeadingElement = true\
|
|
1
|
+
{"version":3,"file":"H5.js","names":["React","H","H5","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H5.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H5 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h5\" size={size || 'auto'} {...props} />\n)\n\nH5._isHeadingElement = true\nH5._supportsSpacingProps = true\n\nexport default H5\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BT,EAAE,CAACU,qBAAqB,GAAG,IAAI;AAE/B,eAAeV,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"H6.js","names":["React","H","H6","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H6.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H6 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h6\" size={size || 'auto'} {...props} />\n)\n\nH6._isHeadingElement = true\
|
|
1
|
+
{"version":3,"file":"H6.js","names":["React","H","H6","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H6.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H6 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h6\" size={size || 'auto'} {...props} />\n)\n\nH6._isHeadingElement = true\nH6._supportsSpacingProps = true\n\nexport default H6\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BT,EAAE,CAACU,qBAAqB,GAAG,IAAI;AAE/B,eAAeV,EAAE"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import React from 'react';
|
|
6
6
|
import { SpacingProps } from '../space/types';
|
|
7
|
-
export type AccordionContentProps = Omit<React.HTMLProps<HTMLElement>, 'onAnimationEnd' | 'children'> & SpacingProps & {
|
|
7
|
+
export type AccordionContentProps = Omit<React.HTMLProps<HTMLElement>, 'onAnimationStart' | 'onAnimationEnd' | 'children'> & SpacingProps & {
|
|
8
8
|
instance?: React.MutableRefObject<unknown>;
|
|
9
9
|
className?: string;
|
|
10
10
|
children?: React.ReactNode | ((...args: any[]) => any);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionContent.js","names":["React","classnames","warn","validateDOMAttributes","processChildren","getPreviousSibling","useMediaQuery","AccordionContext","createSpacingClasses","HeightAnimation","AccordionContent","props","context","useContext","id","expanded","prerender","prevent_rerender","single_container","disabled","no_animation","contentRef","className","children","instance","rest","_objectWithoutProperties","_excluded","elementRef","useRef","cacheRef","setContainerHeight","contentElem","current","style","height","containerElement","transitionDuration","minHeight","offsetHeight","offsetTop","e","renderContent","prevent_rerender_conditional","content","createElement","useEffect","useState","Object","prototype","hasOwnProperty","call","isSmallScreen","when","max","wrapperParams","_objectSpread","keepInDOM","innerParams","animate","_extends","open","innerRef","_supportsSpacingProps"],"sources":["../../../../src/components/accordion/AccordionContent.tsx"],"sourcesContent":["/**\n * Web Accordion Component\n *\n */\n\nimport React, { HTMLProps } from 'react'\nimport classnames from 'classnames'\nimport {\n warn,\n validateDOMAttributes,\n processChildren,\n getPreviousSibling,\n} from '../../shared/component-helper'\nimport { useMediaQuery } from '../../shared'\nimport AccordionContext, {\n AccordionContextProps,\n} from './AccordionContext'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport HeightAnimation from '../height-animation/HeightAnimation'\nimport { SpacingProps } from '../space/types'\n\nexport type AccordionContentProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onAnimationEnd' | 'children'\n> &\n SpacingProps & {\n instance?: React.MutableRefObject<unknown>\n className?: string\n children?: React.ReactNode | ((...args: any[]) => any)\n }\n\nexport default function AccordionContent(props: AccordionContentProps) {\n const context = React.useContext<AccordionContextProps>(AccordionContext)\n\n const {\n id,\n expanded,\n prerender,\n prevent_rerender,\n single_container,\n disabled,\n no_animation,\n contentRef,\n } = context\n\n const { className, children, instance, ...rest } = props\n\n let elementRef = React.useRef(null)\n const cacheRef = React.useRef(null)\n\n if (contentRef) {\n elementRef = contentRef\n }\n\n const setContainerHeight = () => {\n const { single_container } = context\n\n if (single_container) {\n const contentElem = elementRef.current\n if (contentElem) {\n try {\n contentElem.style.height = ''\n\n const containerElement = getPreviousSibling(\n 'dnb-accordion-group--single-container',\n contentElem\n ) as HTMLElement\n\n if (no_animation) {\n containerElement.style.transitionDuration = '1ms'\n }\n\n const minHeight =\n (contentElem.offsetHeight + contentElem.offsetTop) / 16\n containerElement.style.minHeight = `${minHeight}rem`\n } catch (e) {\n warn(e)\n }\n }\n }\n }\n\n const renderContent = () => {\n const children = processChildren(props)\n\n const {\n expanded,\n prerender,\n prevent_rerender,\n prevent_rerender_conditional,\n } = context\n\n let content = children\n\n if (typeof content === 'string') {\n content = <p className=\"dnb-p\">{content}</p>\n }\n\n if (prevent_rerender) {\n /**\n * Ensure we do not render, if it is not expanded\n */\n if (!(expanded || prerender)) {\n content = null\n }\n\n // update the cache if children is not the same anymore\n if (prevent_rerender_conditional && cacheRef.current !== content) {\n cacheRef.current = content\n }\n\n if (cacheRef.current) {\n content = cacheRef.current\n } else {\n cacheRef.current = content\n }\n }\n\n return content\n }\n\n React.useEffect(() => {\n if (expanded && single_container) {\n setContainerHeight()\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [children, expanded, single_container])\n\n React.useState(() => {\n if (\n instance &&\n Object.prototype.hasOwnProperty.call(instance, 'current')\n ) {\n instance.current = { setContainerHeight }\n }\n })\n\n const isSmallScreen = useMediaQuery({\n when: { max: 'small' },\n })\n\n const content = renderContent()\n\n const wrapperParams = {\n className: classnames('dnb-accordion__content', className),\n ...rest,\n }\n\n const keepInDOM = prerender || prevent_rerender\n\n const innerParams = {\n id: `${id}-content`,\n 'aria-labelledby': `${id}-header`,\n className: classnames(\n 'dnb-accordion__content__inner',\n createSpacingClasses(rest)\n ),\n } as HTMLProps<HTMLElement>\n\n if (expanded) {\n innerParams['aria-expanded'] = true\n }\n\n if (!expanded || disabled) {\n innerParams.disabled = true\n innerParams['aria-hidden'] = true\n }\n\n // to remove spacing props\n validateDOMAttributes(props, wrapperParams)\n validateDOMAttributes(null, innerParams)\n\n const animate =\n !no_animation && (single_container ? isSmallScreen : true)\n\n return (\n <HeightAnimation\n {...wrapperParams}\n open={expanded}\n animate={animate}\n keepInDOM={keepInDOM}\n innerRef={elementRef}\n >\n <section {...innerParams}>{content}</section>\n </HeightAnimation>\n )\n}\n\nAccordionContent._supportsSpacingProps = true\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AccordionContent.js","names":["React","classnames","warn","validateDOMAttributes","processChildren","getPreviousSibling","useMediaQuery","AccordionContext","createSpacingClasses","HeightAnimation","AccordionContent","props","context","useContext","id","expanded","prerender","prevent_rerender","single_container","disabled","no_animation","contentRef","className","children","instance","rest","_objectWithoutProperties","_excluded","elementRef","useRef","cacheRef","setContainerHeight","contentElem","current","style","height","containerElement","transitionDuration","minHeight","offsetHeight","offsetTop","e","renderContent","prevent_rerender_conditional","content","createElement","useEffect","useState","Object","prototype","hasOwnProperty","call","isSmallScreen","when","max","wrapperParams","_objectSpread","keepInDOM","innerParams","animate","_extends","open","innerRef","_supportsSpacingProps"],"sources":["../../../../src/components/accordion/AccordionContent.tsx"],"sourcesContent":["/**\n * Web Accordion Component\n *\n */\n\nimport React, { HTMLProps } from 'react'\nimport classnames from 'classnames'\nimport {\n warn,\n validateDOMAttributes,\n processChildren,\n getPreviousSibling,\n} from '../../shared/component-helper'\nimport { useMediaQuery } from '../../shared'\nimport AccordionContext, {\n AccordionContextProps,\n} from './AccordionContext'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport HeightAnimation from '../height-animation/HeightAnimation'\nimport { SpacingProps } from '../space/types'\n\nexport type AccordionContentProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onAnimationStart' | 'onAnimationEnd' | 'children'\n> &\n SpacingProps & {\n instance?: React.MutableRefObject<unknown>\n className?: string\n children?: React.ReactNode | ((...args: any[]) => any)\n }\n\nexport default function AccordionContent(props: AccordionContentProps) {\n const context = React.useContext<AccordionContextProps>(AccordionContext)\n\n const {\n id,\n expanded,\n prerender,\n prevent_rerender,\n single_container,\n disabled,\n no_animation,\n contentRef,\n } = context\n\n const { className, children, instance, ...rest } = props\n\n let elementRef = React.useRef(null)\n const cacheRef = React.useRef(null)\n\n if (contentRef) {\n elementRef = contentRef\n }\n\n const setContainerHeight = () => {\n const { single_container } = context\n\n if (single_container) {\n const contentElem = elementRef.current\n if (contentElem) {\n try {\n contentElem.style.height = ''\n\n const containerElement = getPreviousSibling(\n 'dnb-accordion-group--single-container',\n contentElem\n ) as HTMLElement\n\n if (no_animation) {\n containerElement.style.transitionDuration = '1ms'\n }\n\n const minHeight =\n (contentElem.offsetHeight + contentElem.offsetTop) / 16\n containerElement.style.minHeight = `${minHeight}rem`\n } catch (e) {\n warn(e)\n }\n }\n }\n }\n\n const renderContent = () => {\n const children = processChildren(props)\n\n const {\n expanded,\n prerender,\n prevent_rerender,\n prevent_rerender_conditional,\n } = context\n\n let content = children\n\n if (typeof content === 'string') {\n content = <p className=\"dnb-p\">{content}</p>\n }\n\n if (prevent_rerender) {\n /**\n * Ensure we do not render, if it is not expanded\n */\n if (!(expanded || prerender)) {\n content = null\n }\n\n // update the cache if children is not the same anymore\n if (prevent_rerender_conditional && cacheRef.current !== content) {\n cacheRef.current = content\n }\n\n if (cacheRef.current) {\n content = cacheRef.current\n } else {\n cacheRef.current = content\n }\n }\n\n return content\n }\n\n React.useEffect(() => {\n if (expanded && single_container) {\n setContainerHeight()\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [children, expanded, single_container])\n\n React.useState(() => {\n if (\n instance &&\n Object.prototype.hasOwnProperty.call(instance, 'current')\n ) {\n instance.current = { setContainerHeight }\n }\n })\n\n const isSmallScreen = useMediaQuery({\n when: { max: 'small' },\n })\n\n const content = renderContent()\n\n const wrapperParams = {\n className: classnames('dnb-accordion__content', className),\n ...rest,\n }\n\n const keepInDOM = prerender || prevent_rerender\n\n const innerParams = {\n id: `${id}-content`,\n 'aria-labelledby': `${id}-header`,\n className: classnames(\n 'dnb-accordion__content__inner',\n createSpacingClasses(rest)\n ),\n } as HTMLProps<HTMLElement>\n\n if (expanded) {\n innerParams['aria-expanded'] = true\n }\n\n if (!expanded || disabled) {\n innerParams.disabled = true\n innerParams['aria-hidden'] = true\n }\n\n // to remove spacing props\n validateDOMAttributes(props, wrapperParams)\n validateDOMAttributes(null, innerParams)\n\n const animate =\n !no_animation && (single_container ? isSmallScreen : true)\n\n return (\n <HeightAnimation\n {...wrapperParams}\n open={expanded}\n animate={animate}\n keepInDOM={keepInDOM}\n innerRef={elementRef}\n >\n <section {...innerParams}>{content}</section>\n </HeightAnimation>\n )\n}\n\nAccordionContent._supportsSpacingProps = true\n"],"mappings":"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"}
|
|
@@ -122,9 +122,6 @@
|
|
|
122
122
|
width: 100%;
|
|
123
123
|
margin-top: 1rem;
|
|
124
124
|
}
|
|
125
|
-
.dnb-accordion__content.dnb-height-animation--hidden .dnb-accordion__content__inner {
|
|
126
|
-
display: none;
|
|
127
|
-
}
|
|
128
125
|
.dnb-accordion-group--single-container {
|
|
129
126
|
transition: min-height 1s var(--accordion-easing);
|
|
130
127
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
.dnb-accordion{--accordion-border-width:0.0625rem;--accordion-border-radius:0.5rem;--accordion-easing:var(--easing-default);--accordion-header-margin-vertical:1.25rem;--accordion-header-margin-vertical--description:0.75rem;--accordion-header-wrapper-margin:1rem;--accordion-header-wrapper-margin--icon-right:1rem;--accordion-header-icon-gutter:1rem;--accordion-header-icon-margin:1rem;--accordion-title-font-weight:var(--font-weight-basis);--accordion-title-font-weight--expanded:var(--font-weight-medium);display:flex;flex-direction:column;font-size:var(--font-size-small);line-height:var(--line-height-basis);position:relative}.dnb-accordion__header{align-items:center;border:var(--accordion-border-width) solid transparent;border-radius:var(--accordion-border-radius);cursor:pointer;display:flex;outline:none}.dnb-accordion__header:focus{-webkit-user-select:none;user-select:none}.dnb-accordion__header *{pointer-events:none}.dnb-accordion__header--prevent-click{pointer-events:none;-webkit-user-select:none;user-select:none}.dnb-accordion__header__wrapper{display:flex;flex-direction:column;margin:var(--accordion-header-margin-vertical) var(--accordion-header-wrapper-margin) var(--accordion-header-margin-vertical) 0;width:100%}.dnb-accordion__header--description .dnb-accordion__header__wrapper{margin-bottom:var(--accordion-header-margin-vertical--description);margin-top:var(--accordion-header-margin-vertical--description)}.dnb-accordion__header__container{margin:0 1rem}.dnb-accordion__header__icon{align-self:flex-start;font-size:var(--font-size-small);line-height:var(--line-height-small);margin:var(--accordion-header-margin-vertical) var(--accordion-header-icon-gutter) var(--accordion-header-margin-vertical) var(--accordion-header-icon-margin);transition:transform .4s var(--accordion-easing)}.dnb-accordion__header--description .dnb-accordion__header__icon{margin-top:var(--accordion-header-margin-vertical--description)}.dnb-accordion__header--icon-right{justify-content:space-between}.dnb-accordion__header--icon-right .dnb-accordion__header__icon{margin-left:var(--accordion-header-icon-gutter);margin-right:var(--accordion-header-icon-margin);order:3}.dnb-accordion__header--icon-right .dnb-accordion__header__container{order:1}.dnb-accordion__header--icon-right .dnb-accordion__header__wrapper{margin-left:var(--accordion-header-wrapper-margin--icon-right);margin-right:0;order:2}.dnb-accordion__header--icon-right .dnb-accordion__header__wrapper+.dnb-accordion__header__container{margin-right:0}.dnb-accordion__header--icon-right .dnb-accordion__header__container+.dnb-accordion__header__wrapper{margin-left:0}.dnb-accordion__header--expanded{--accordion-title-font-weight:var(
|
|
2
2
|
--accordion-title-font-weight--expanded
|
|
3
|
-
)}.dnb-accordion__header__title{font-size:var(--font-size-basis);font-weight:var(--accordion-title-font-weight);line-height:var(--line-height-basis)}.dnb-accordion__header__description{font-size:var(--font-size-small);font-weight:var(--font-weight-basis);line-height:var(--line-height-small)}.dnb-accordion__header__description+.dnb-accordion__header__title,.dnb-accordion__header__title+.dnb-accordion__header__description{margin-top:.25rem}.dnb-accordion--expanded>.dnb-accordion__header .dnb-accordion__header__icon{transform:rotate(-180deg)}.dnb-accordion__content{display:flex;transition:height .4s var(--accordion-easing),opacity .6s var(--accordion-easing);width:100%;will-change:height}.dnb-accordion__content__inner{margin-top:1rem;width:100%}.dnb-
|
|
3
|
+
)}.dnb-accordion__header__title{font-size:var(--font-size-basis);font-weight:var(--accordion-title-font-weight);line-height:var(--line-height-basis)}.dnb-accordion__header__description{font-size:var(--font-size-small);font-weight:var(--font-weight-basis);line-height:var(--line-height-small)}.dnb-accordion__header__description+.dnb-accordion__header__title,.dnb-accordion__header__title+.dnb-accordion__header__description{margin-top:.25rem}.dnb-accordion--expanded>.dnb-accordion__header .dnb-accordion__header__icon{transform:rotate(-180deg)}.dnb-accordion__content{display:flex;transition:height .4s var(--accordion-easing),opacity .6s var(--accordion-easing);width:100%;will-change:height}.dnb-accordion__content__inner{margin-top:1rem;width:100%}.dnb-accordion-group--single-container{transition:min-height 1s var(--accordion-easing)}.dnb-accordion-group--single-container .dnb-accordion{max-width:60rem;position:static}@media screen and (min-width:40em){.dnb-accordion-group--single-container .dnb-accordion__header{width:40%}.dnb-accordion-group--single-container .dnb-accordion__content{margin-left:1rem;transition:opacity 1s var(--accordion-easing)}.dnb-accordion-group--single-container .dnb-accordion__content__inner{margin-top:0}.dnb-accordion-group--single-container .dnb-accordion>.dnb-accordion__header .dnb-accordion__header__icon{transform:rotate(-90deg)}}.dnb-accordion-group--single-container .dnb-accordion-group__children{max-width:60rem}@media screen and (min-width:40em){.dnb-accordion-group--single-container .dnb-accordion-group__children{display:flex;flex-direction:column;position:relative}.dnb-accordion-group--single-container .dnb-accordion-group__children .dnb-accordion__content{position:absolute;right:0;top:0;width:60%;z-index:10}}.dnb-accordion>.dnb-accordion__header--no-animation .dnb-accordion__header__icon,html[data-visual-test] .dnb-accordion .dnb-accordion__header .dnb-accordion__header__icon{transition:none}
|
|
@@ -13,6 +13,7 @@ import Context from '../../shared/Context';
|
|
|
13
13
|
import BreadcrumbItem from './BreadcrumbItem';
|
|
14
14
|
import { convertJsxToString, isTrue, validateDOMAttributes, extendPropsWithContext } from '../../shared/component-helper';
|
|
15
15
|
import { BreadcrumbMultiple } from './BreadcrumbMultiple';
|
|
16
|
+
import { useMedia } from '../../shared';
|
|
16
17
|
export const defaultProps = {
|
|
17
18
|
skeleton: false,
|
|
18
19
|
navText: 'Back',
|
|
@@ -52,6 +53,9 @@ const Breadcrumb = localProps => {
|
|
|
52
53
|
const skeletonClasses = createSkeletonClass('font', skeleton, context);
|
|
53
54
|
const spacingClasses = createSpacingClasses(props);
|
|
54
55
|
const [isCollapsed, setCollapse] = useState(overrideIsCollapsed);
|
|
56
|
+
const {
|
|
57
|
+
isLarge
|
|
58
|
+
} = useMedia();
|
|
55
59
|
let currentVariant = variant;
|
|
56
60
|
if (!variant) {
|
|
57
61
|
if (items || data) {
|
|
@@ -63,15 +67,20 @@ const Breadcrumb = localProps => {
|
|
|
63
67
|
useEffect(() => {
|
|
64
68
|
setCollapse(overrideIsCollapsed);
|
|
65
69
|
}, [overrideIsCollapsed]);
|
|
70
|
+
useEffect(() => {
|
|
71
|
+
if (isLarge && overrideIsCollapsed !== false) {
|
|
72
|
+
setCollapse(true);
|
|
73
|
+
}
|
|
74
|
+
}, [isLarge]);
|
|
66
75
|
validateDOMAttributes(allProps, props);
|
|
67
|
-
const
|
|
76
|
+
const innerSpace = isTrue(spacing) ? 'small' : spacing;
|
|
68
77
|
return React.createElement("nav", _extends({
|
|
69
78
|
"aria-label": convertJsxToString(navText),
|
|
70
79
|
className: classnames(`dnb-breadcrumb dnb-breadcrumb--variant-${currentVariant}`, skeletonClasses, spacingClasses, className)
|
|
71
80
|
}, props), React.createElement(Section, {
|
|
72
81
|
className: "dnb-breadcrumb__bar",
|
|
73
82
|
style_type: styleType || 'transparent',
|
|
74
|
-
|
|
83
|
+
innerSpace: innerSpace
|
|
75
84
|
}, currentVariant === 'single' ? React.createElement(Button, {
|
|
76
85
|
text: goBackText,
|
|
77
86
|
variant: "tertiary",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumb.js","names":["React","useEffect","useState","classnames","createSkeletonClass","createSpacingClasses","Section","Button","Context","BreadcrumbItem","convertJsxToString","isTrue","validateDOMAttributes","extendPropsWithContext","BreadcrumbMultiple","defaultProps","skeleton","navText","goBackText","homeText","backToText","isCollapsed","styleType","collapsedStyleType","spacing","Breadcrumb","localProps","_context$translation","context","useContext","allProps","translation","className","children","items","variant","onClick","overrideIsCollapsed","noAnimation","data","href","props","_objectWithoutProperties","_excluded","skeletonClasses","spacingClasses","setCollapse","currentVariant","innerSpacing","createElement","_extends","style_type","text","icon","icon_position","Fragment","Item","_supportsSpacingProps"],"sources":["../../../../src/components/breadcrumb/Breadcrumb.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react'\nimport classnames from 'classnames'\n\n// Components\nimport { createSkeletonClass } from '../skeleton/SkeletonHelper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport Section, {\n SectionSpacing,\n SectionStyleTypes,\n} from '../section/Section'\nimport Button from '../button/Button'\n\n// Shared\nimport Context from '../../shared/Context'\nimport type { SpacingProps } from '../../shared/types'\nimport type { SkeletonShow } from '../skeleton/Skeleton'\n\n// Internal\nimport BreadcrumbItem, { BreadcrumbItemProps } from './BreadcrumbItem'\nimport {\n convertJsxToString,\n isTrue,\n validateDOMAttributes,\n extendPropsWithContext,\n} from '../../shared/component-helper'\nimport { BreadcrumbMultiple } from './BreadcrumbMultiple'\n\nexport type BreadcrumbProps = {\n /**\n * Custom className on the component root\n * Default: null\n */\n className?: string\n\n /**\n * Skeleton should be applied when loading content\n * Default: null\n */\n skeleton?: SkeletonShow\n\n /**\n * Pass in a list of your pages as objects of breadcrumbitem to render them as breadcrumbitems.\n * Default: null\n */\n data?: Array<BreadcrumbItemProps>\n\n /**\n * The content of the component. Can be used instead of prop \"data\".\n * Default: null\n */\n children?:\n | React.ReactElement<BreadcrumbItemProps>\n | Array<React.ReactElement<BreadcrumbItemProps>>\n\n /**\n * The variant of the component.\n * Default: When children and data is not defined, it defaults to \"single\". If they are defined, the variant depends on the viewport.\n */\n variant?: 'single' | 'multiple' | 'collapse'\n\n /**\n * Handle the click event on 'single'/'collapse'\n * Default: null\n */\n onClick?: React.MouseEventHandler<HTMLButtonElement>\n\n /**\n * For variant 'single', use href (or onClick) to set href when clicking \"Back\"\n * Default: null\n */\n href?: string\n\n /**\n * Every <nav> on a page needs an unique aria-label text\n * Default: Page hierarchy\n */\n navText?: React.ReactNode\n\n /**\n * Add custom 'Back' text for variant 'single'\n * Default: 'Back' or defined by Context translation\n */\n goBackText?: React.ReactNode\n\n /**\n * Add custom 'Home' text\n * Default: 'Home' or defined by Context translation\n */\n homeText?: React.ReactNode\n\n /**\n * Add custom 'Back to...' text, for variant collapse\n * Default 'Back to...' or defined by Context translation\n */\n backToText?: React.ReactNode\n\n /**\n * If variant='collapse', you can override isCollapsed for the collapsed content by updating this value.\n * Default: null\n */\n isCollapsed?: boolean\n\n /**\n * Use one of the Section component style types (style_type)\n * Default: transparent\n */\n styleType?: SectionStyleTypes\n\n /**\n * Use one of the Section component style types (style_type)\n * Default: pistachio\n */\n collapsedStyleType?: SectionStyleTypes\n\n /**\n * Include spacing properties from the Section component in breadcrumb. If only `true` is given, the spacing will be `small`.\n * Default: false\n */\n spacing?: SectionSpacing\n\n /**\n * Will disable the height animation\n * Default: false\n */\n noAnimation?: boolean\n}\n\nexport const defaultProps = {\n skeleton: false,\n navText: 'Back',\n goBackText: 'Back',\n homeText: 'Home',\n backToText: 'Back to...',\n isCollapsed: true,\n styleType: 'transparent',\n collapsedStyleType: 'info',\n spacing: false,\n}\n\nconst Breadcrumb = (localProps: BreadcrumbProps & SpacingProps) => {\n // Every component should have a context\n const context = React.useContext(Context)\n\n // Extract additional props from global context\n const allProps = extendPropsWithContext(\n localProps,\n defaultProps,\n context?.translation?.Breadcrumb,\n context?.Breadcrumb,\n { skeleton: context?.skeleton }\n )\n\n const {\n className,\n skeleton,\n children: items,\n variant,\n onClick,\n navText, // has a translation in context\n goBackText, // has a translation in context\n homeText, // eslint-disable-line\n backToText, // has a translation in context\n styleType,\n collapsedStyleType,\n isCollapsed: overrideIsCollapsed,\n spacing,\n noAnimation,\n data,\n href,\n ...props\n } = allProps\n const skeletonClasses = createSkeletonClass('font', skeleton, context)\n const spacingClasses = createSpacingClasses(props)\n\n const [isCollapsed, setCollapse] = useState(overrideIsCollapsed)\n\n let currentVariant = variant\n if (!variant) {\n if (items || data) {\n currentVariant = 'multiple'\n } else {\n currentVariant = 'single'\n }\n }\n\n useEffect(() => {\n setCollapse(overrideIsCollapsed)\n }, [overrideIsCollapsed])\n\n validateDOMAttributes(allProps, props)\n\n const innerSpacing = isTrue(spacing) ? 'small' : spacing\n\n return (\n <nav\n aria-label={convertJsxToString(navText)}\n className={classnames(\n 'dnb-breadcrumb',\n `dnb-breadcrumb--variant-${currentVariant}`,\n skeletonClasses,\n spacingClasses,\n className\n )}\n {...props}\n >\n <Section\n className=\"dnb-breadcrumb__bar\"\n style_type={styleType || 'transparent'}\n spacing={innerSpacing}\n >\n {currentVariant === 'single' ? (\n <Button\n text={goBackText}\n variant=\"tertiary\"\n icon=\"chevron_left\"\n icon_position=\"left\"\n onClick={onClick}\n href={href}\n />\n ) : (\n <>\n <Button\n className=\"dnb-breadcrumb__toggle\"\n text={backToText}\n variant=\"tertiary\"\n icon=\"chevron_left\"\n icon_position=\"left\"\n onClick={\n onClick ||\n (() => {\n setCollapse(!isCollapsed)\n })\n }\n aria-expanded={!isCollapsed}\n />\n\n {currentVariant !== 'collapse' && (\n <BreadcrumbMultiple\n data={data}\n items={items}\n isCollapsed={false}\n noAnimation={noAnimation}\n />\n )}\n </>\n )}\n </Section>\n\n <Section\n variant={collapsedStyleType}\n className=\"dnb-breadcrumb__collapse\"\n >\n <BreadcrumbMultiple\n data={data}\n items={items}\n isCollapsed={isCollapsed}\n noAnimation={noAnimation}\n />\n </Section>\n </nav>\n )\n}\n\nBreadcrumb.Item = BreadcrumbItem\nBreadcrumb._supportsSpacingProps = true\n\nexport { BreadcrumbItem }\nexport default Breadcrumb\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAClD,OAAOC,UAAU,MAAM,YAAY;AAGnC,SAASC,mBAAmB,QAAQ,4BAA4B;AAChE,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,OAAOC,OAAO,MAGP,oBAAoB;AAC3B,OAAOC,MAAM,MAAM,kBAAkB;AAGrC,OAAOC,OAAO,MAAM,sBAAsB;AAK1C,OAAOC,cAAc,MAA+B,kBAAkB;AACtE,SACEC,kBAAkB,EAClBC,MAAM,EACNC,qBAAqB,EACrBC,sBAAsB,QACjB,+BAA+B;AACtC,SAASC,kBAAkB,QAAQ,sBAAsB;AAsGzD,OAAO,MAAMC,YAAY,GAAG;EAC1BC,QAAQ,EAAE,KAAK;EACfC,OAAO,EAAE,MAAM;EACfC,UAAU,EAAE,MAAM;EAClBC,QAAQ,EAAE,MAAM;EAChBC,UAAU,EAAE,YAAY;EACxBC,WAAW,EAAE,IAAI;EACjBC,SAAS,EAAE,aAAa;EACxBC,kBAAkB,EAAE,MAAM;EAC1BC,OAAO,EAAE;AACX,CAAC;AAED,MAAMC,UAAU,GAAIC,UAA0C,IAAK;EAAA,IAAAC,oBAAA;EAEjE,MAAMC,OAAO,GAAG5B,KAAK,CAAC6B,UAAU,CAACrB,OAAO,CAAC;EAGzC,MAAMsB,QAAQ,GAAGjB,sBAAsB,CACrCa,UAAU,EACVX,YAAY,EACZa,OAAO,aAAPA,OAAO,wBAAAD,oBAAA,GAAPC,OAAO,CAAEG,WAAW,cAAAJ,oBAAA,uBAApBA,oBAAA,CAAsBF,UAAU,EAChCG,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEH,UAAU,EACnB;IAAET,QAAQ,EAAEY,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEZ;EAAS,CAChC,CAAC;EAED,MAAM;MACJgB,SAAS;MACThB,QAAQ;MACRiB,QAAQ,EAAEC,KAAK;MACfC,OAAO;MACPC,OAAO;MACPnB,OAAO;MACPC,UAAU;MACVC,QAAQ;MACRC,UAAU;MACVE,SAAS;MACTC,kBAAkB;MAClBF,WAAW,EAAEgB,mBAAmB;MAChCb,OAAO;MACPc,WAAW;MACXC,IAAI;MACJC;IAEF,CAAC,GAAGV,QAAQ;IADPW,KAAK,GAAAC,wBAAA,CACNZ,QAAQ,EAAAa,SAAA;EACZ,MAAMC,eAAe,GAAGxC,mBAAmB,CAAC,MAAM,EAAEY,QAAQ,EAAEY,OAAO,CAAC;EACtE,MAAMiB,cAAc,GAAGxC,oBAAoB,CAACoC,KAAK,CAAC;EAElD,MAAM,CAACpB,WAAW,EAAEyB,WAAW,CAAC,GAAG5C,QAAQ,CAACmC,mBAAmB,CAAC;EAEhE,IAAIU,cAAc,GAAGZ,OAAO;EAC5B,IAAI,CAACA,OAAO,EAAE;IACZ,IAAID,KAAK,IAAIK,IAAI,EAAE;MACjBQ,cAAc,GAAG,UAAU;IAC7B,CAAC,MAAM;MACLA,cAAc,GAAG,QAAQ;IAC3B;EACF;EAEA9C,SAAS,CAAC,MAAM;IACd6C,WAAW,CAACT,mBAAmB,CAAC;EAClC,CAAC,EAAE,CAACA,mBAAmB,CAAC,CAAC;EAEzBzB,qBAAqB,CAACkB,QAAQ,EAAEW,KAAK,CAAC;EAEtC,MAAMO,YAAY,GAAGrC,MAAM,CAACa,OAAO,CAAC,GAAG,OAAO,GAAGA,OAAO;EAExD,OACExB,KAAA,CAAAiD,aAAA,QAAAC,QAAA;IACE,cAAYxC,kBAAkB,CAACO,OAAO,CAAE;IACxCe,SAAS,EAAE7B,UAAU,2CAEQ4C,cAAe,IAC1CH,eAAe,EACfC,cAAc,EACdb,SACF;EAAE,GACES,KAAK,GAETzC,KAAA,CAAAiD,aAAA,CAAC3C,OAAO;IACN0B,SAAS,EAAC,qBAAqB;IAC/BmB,UAAU,EAAE7B,SAAS,IAAI,aAAc;IACvCE,OAAO,EAAEwB;EAAa,GAErBD,cAAc,KAAK,QAAQ,GAC1B/C,KAAA,CAAAiD,aAAA,CAAC1C,MAAM;IACL6C,IAAI,EAAElC,UAAW;IACjBiB,OAAO,EAAC,UAAU;IAClBkB,IAAI,EAAC,cAAc;IACnBC,aAAa,EAAC,MAAM;IACpBlB,OAAO,EAAEA,OAAQ;IACjBI,IAAI,EAAEA;EAAK,CACZ,CAAC,GAEFxC,KAAA,CAAAiD,aAAA,CAAAjD,KAAA,CAAAuD,QAAA,QACEvD,KAAA,CAAAiD,aAAA,CAAC1C,MAAM;IACLyB,SAAS,EAAC,wBAAwB;IAClCoB,IAAI,EAAEhC,UAAW;IACjBe,OAAO,EAAC,UAAU;IAClBkB,IAAI,EAAC,cAAc;IACnBC,aAAa,EAAC,MAAM;IACpBlB,OAAO,EACLA,OAAO,KACN,MAAM;MACLU,WAAW,CAAC,CAACzB,WAAW,CAAC;IAC3B,CAAC,CACF;IACD,iBAAe,CAACA;EAAY,CAC7B,CAAC,EAED0B,cAAc,KAAK,UAAU,IAC5B/C,KAAA,CAAAiD,aAAA,CAACnC,kBAAkB;IACjByB,IAAI,EAAEA,IAAK;IACXL,KAAK,EAAEA,KAAM;IACbb,WAAW,EAAE,KAAM;IACnBiB,WAAW,EAAEA;EAAY,CAC1B,CAEH,CAEG,CAAC,EAEVtC,KAAA,CAAAiD,aAAA,CAAC3C,OAAO;IACN6B,OAAO,EAAEZ,kBAAmB;IAC5BS,SAAS,EAAC;EAA0B,GAEpChC,KAAA,CAAAiD,aAAA,CAACnC,kBAAkB;IACjByB,IAAI,EAAEA,IAAK;IACXL,KAAK,EAAEA,KAAM;IACbb,WAAW,EAAEA,WAAY;IACzBiB,WAAW,EAAEA;EAAY,CAC1B,CACM,CACN,CAAC;AAEV,CAAC;AAEDb,UAAU,CAAC+B,IAAI,GAAG/C,cAAc;AAChCgB,UAAU,CAACgC,qBAAqB,GAAG,IAAI;AAEvC,SAAShD,cAAc;AACvB,eAAegB,UAAU"}
|
|
1
|
+
{"version":3,"file":"Breadcrumb.js","names":["React","useEffect","useState","classnames","createSkeletonClass","createSpacingClasses","Section","Button","Context","BreadcrumbItem","convertJsxToString","isTrue","validateDOMAttributes","extendPropsWithContext","BreadcrumbMultiple","useMedia","defaultProps","skeleton","navText","goBackText","homeText","backToText","isCollapsed","styleType","collapsedStyleType","spacing","Breadcrumb","localProps","_context$translation","context","useContext","allProps","translation","className","children","items","variant","onClick","overrideIsCollapsed","noAnimation","data","href","props","_objectWithoutProperties","_excluded","skeletonClasses","spacingClasses","setCollapse","isLarge","currentVariant","innerSpace","createElement","_extends","style_type","text","icon","icon_position","Fragment","Item","_supportsSpacingProps"],"sources":["../../../../src/components/breadcrumb/Breadcrumb.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react'\nimport classnames from 'classnames'\n\n// Components\nimport { createSkeletonClass } from '../skeleton/SkeletonHelper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport Section, {\n SectionSpacing,\n SectionStyleTypes,\n} from '../section/Section'\nimport Button from '../button/Button'\n\n// Shared\nimport Context from '../../shared/Context'\nimport type { SpacingProps } from '../../shared/types'\nimport type { SkeletonShow } from '../skeleton/Skeleton'\n\n// Internal\nimport BreadcrumbItem, { BreadcrumbItemProps } from './BreadcrumbItem'\nimport {\n convertJsxToString,\n isTrue,\n validateDOMAttributes,\n extendPropsWithContext,\n} from '../../shared/component-helper'\nimport { BreadcrumbMultiple } from './BreadcrumbMultiple'\nimport { useMedia } from '../../shared'\n\nexport type BreadcrumbProps = {\n /**\n * Custom className on the component root\n * Default: null\n */\n className?: string\n\n /**\n * Skeleton should be applied when loading content\n * Default: null\n */\n skeleton?: SkeletonShow\n\n /**\n * Pass in a list of your pages as objects of breadcrumbitem to render them as breadcrumbitems.\n * Default: null\n */\n data?: Array<BreadcrumbItemProps>\n\n /**\n * The content of the component. Can be used instead of prop \"data\".\n * Default: null\n */\n children?:\n | React.ReactElement<BreadcrumbItemProps>\n | Array<React.ReactElement<BreadcrumbItemProps>>\n\n /**\n * The variant of the component.\n * Default: When children and data is not defined, it defaults to \"single\". If they are defined, the variant depends on the viewport.\n */\n variant?: 'single' | 'multiple' | 'collapse'\n\n /**\n * Handle the click event on 'single'/'collapse'\n * Default: null\n */\n onClick?: React.MouseEventHandler<HTMLButtonElement>\n\n /**\n * For variant 'single', use href (or onClick) to set href when clicking \"Back\"\n * Default: null\n */\n href?: string\n\n /**\n * Every <nav> on a page needs an unique aria-label text\n * Default: Page hierarchy\n */\n navText?: React.ReactNode\n\n /**\n * Add custom 'Back' text for variant 'single'\n * Default: 'Back' or defined by Context translation\n */\n goBackText?: React.ReactNode\n\n /**\n * Add custom 'Home' text\n * Default: 'Home' or defined by Context translation\n */\n homeText?: React.ReactNode\n\n /**\n * Add custom 'Back to...' text, for variant collapse\n * Default 'Back to...' or defined by Context translation\n */\n backToText?: React.ReactNode\n\n /**\n * If variant='collapse', you can override isCollapsed for the collapsed content by updating this value.\n * Default: null\n */\n isCollapsed?: boolean\n\n /**\n * Use one of the Section component style types (style_type)\n * Default: transparent\n */\n styleType?: SectionStyleTypes\n\n /**\n * Use one of the Section component style types (style_type)\n * Default: pistachio\n */\n collapsedStyleType?: SectionStyleTypes\n\n /**\n * Include spacing properties from the Section component in breadcrumb. If only `true` is given, the spacing will be `small`.\n * Default: false\n */\n spacing?: SectionSpacing\n\n /**\n * Will disable the height animation\n * Default: false\n */\n noAnimation?: boolean\n}\n\nexport const defaultProps = {\n skeleton: false,\n navText: 'Back',\n goBackText: 'Back',\n homeText: 'Home',\n backToText: 'Back to...',\n isCollapsed: true,\n styleType: 'transparent',\n collapsedStyleType: 'info',\n spacing: false,\n}\n\nconst Breadcrumb = (localProps: BreadcrumbProps & SpacingProps) => {\n // Every component should have a context\n const context = React.useContext(Context)\n\n // Extract additional props from global context\n const allProps = extendPropsWithContext(\n localProps,\n defaultProps,\n context?.translation?.Breadcrumb,\n context?.Breadcrumb,\n { skeleton: context?.skeleton }\n )\n\n const {\n className,\n skeleton,\n children: items,\n variant,\n onClick,\n navText, // has a translation in context\n goBackText, // has a translation in context\n homeText, // eslint-disable-line\n backToText, // has a translation in context\n styleType,\n collapsedStyleType,\n isCollapsed: overrideIsCollapsed,\n spacing,\n noAnimation,\n data,\n href,\n ...props\n } = allProps\n const skeletonClasses = createSkeletonClass('font', skeleton, context)\n const spacingClasses = createSpacingClasses(props)\n\n const [isCollapsed, setCollapse] = useState(overrideIsCollapsed)\n\n const { isLarge } = useMedia()\n\n let currentVariant = variant\n if (!variant) {\n if (items || data) {\n currentVariant = 'multiple'\n } else {\n currentVariant = 'single'\n }\n }\n\n useEffect(() => {\n setCollapse(overrideIsCollapsed)\n }, [overrideIsCollapsed])\n\n // Auto-collapse breadcrumbs if going from small screen to large screen.\n useEffect(() => {\n if (isLarge && overrideIsCollapsed !== false) {\n setCollapse(true)\n }\n }, [isLarge])\n\n validateDOMAttributes(allProps, props)\n\n const innerSpace = isTrue(spacing) ? 'small' : spacing\n\n return (\n <nav\n aria-label={convertJsxToString(navText)}\n className={classnames(\n 'dnb-breadcrumb',\n `dnb-breadcrumb--variant-${currentVariant}`,\n skeletonClasses,\n spacingClasses,\n className\n )}\n {...props}\n >\n <Section\n className=\"dnb-breadcrumb__bar\"\n style_type={styleType || 'transparent'}\n innerSpace={innerSpace}\n >\n {currentVariant === 'single' ? (\n <Button\n text={goBackText}\n variant=\"tertiary\"\n icon=\"chevron_left\"\n icon_position=\"left\"\n onClick={onClick}\n href={href}\n />\n ) : (\n <>\n <Button\n className=\"dnb-breadcrumb__toggle\"\n text={backToText}\n variant=\"tertiary\"\n icon=\"chevron_left\"\n icon_position=\"left\"\n onClick={\n onClick ||\n (() => {\n setCollapse(!isCollapsed)\n })\n }\n aria-expanded={!isCollapsed}\n />\n\n {currentVariant !== 'collapse' && (\n <BreadcrumbMultiple\n data={data}\n items={items}\n isCollapsed={false}\n noAnimation={noAnimation}\n />\n )}\n </>\n )}\n </Section>\n\n <Section\n variant={collapsedStyleType}\n className=\"dnb-breadcrumb__collapse\"\n >\n <BreadcrumbMultiple\n data={data}\n items={items}\n isCollapsed={isCollapsed}\n noAnimation={noAnimation}\n />\n </Section>\n </nav>\n )\n}\n\nBreadcrumb.Item = BreadcrumbItem\nBreadcrumb._supportsSpacingProps = true\n\nexport { BreadcrumbItem }\nexport default Breadcrumb\n"],"mappings":"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"}
|
|
@@ -23,7 +23,7 @@ const defaultProps = {
|
|
|
23
23
|
const determineSbankenIcon = (variant, isSmallScreen) => {
|
|
24
24
|
switch (variant) {
|
|
25
25
|
case 'home':
|
|
26
|
-
return
|
|
26
|
+
return 'home-icon';
|
|
27
27
|
case 'single':
|
|
28
28
|
case 'collapse':
|
|
29
29
|
return 'chevron_left';
|
|
@@ -58,13 +58,15 @@ const BreadcrumbItem = localProps => {
|
|
|
58
58
|
max: 'medium'
|
|
59
59
|
}
|
|
60
60
|
});
|
|
61
|
-
const [currentIcon, setCurrentIcon] = React.useState(
|
|
61
|
+
const [currentIcon, setCurrentIcon] = React.useState('chevron_left');
|
|
62
62
|
useLayoutEffect(() => {
|
|
63
63
|
if (!icon && (theme === null || theme === void 0 ? void 0 : theme.name) === 'sbanken') {
|
|
64
|
-
const
|
|
65
|
-
setCurrentIcon(
|
|
64
|
+
const icon = determineSbankenIcon(variant, isSmallScreen);
|
|
65
|
+
setCurrentIcon(icon);
|
|
66
66
|
} else {
|
|
67
|
-
|
|
67
|
+
if (variant !== 'home') {
|
|
68
|
+
setCurrentIcon(icon !== null && icon !== void 0 ? icon : 'chevron_left');
|
|
69
|
+
}
|
|
68
70
|
}
|
|
69
71
|
}, [icon, isSmallScreen, theme === null || theme === void 0 ? void 0 : theme.name, variant]);
|
|
70
72
|
const currentText = text || variant === 'home' && homeText || '';
|
|
@@ -72,6 +74,7 @@ const BreadcrumbItem = localProps => {
|
|
|
72
74
|
const style = {
|
|
73
75
|
'--delay': String(itemNr)
|
|
74
76
|
};
|
|
77
|
+
const iconToUse = variant === 'home' || currentIcon === 'home-icon' ? homeIcon : currentIcon;
|
|
75
78
|
return React.createElement("li", {
|
|
76
79
|
className: "dnb-breadcrumb__item",
|
|
77
80
|
"aria-current": variant === 'current' ? 'page' : undefined,
|
|
@@ -79,15 +82,15 @@ const BreadcrumbItem = localProps => {
|
|
|
79
82
|
}, isInteractive ? React.createElement(Button, _extends({
|
|
80
83
|
variant: "tertiary",
|
|
81
84
|
href: href,
|
|
82
|
-
icon:
|
|
85
|
+
icon: iconToUse,
|
|
83
86
|
icon_position: "left",
|
|
84
87
|
on_click: onClick,
|
|
85
88
|
text: currentText,
|
|
86
89
|
skeleton: skeleton
|
|
87
90
|
}, props)) : React.createElement("span", _extends({
|
|
88
91
|
className: "dnb-breadcrumb__item__span"
|
|
89
|
-
}, filterProps(props, key => !key.includes('-'))),
|
|
90
|
-
icon:
|
|
92
|
+
}, filterProps(props, key => !key.includes('-'))), React.createElement(IconPrimary, {
|
|
93
|
+
icon: iconToUse,
|
|
91
94
|
className: "dnb-breadcrumb__item__span__icon"
|
|
92
95
|
}), React.createElement(P, {
|
|
93
96
|
space: "0"
|