@dnb/eufemia 10.14.0 → 10.15.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 +57 -0
- package/cjs/components/accordion/AccordionHeader.d.ts +2 -1
- package/cjs/components/accordion/AccordionHeader.js +3 -2
- package/cjs/components/accordion/AccordionHeader.js.map +1 -1
- package/cjs/components/accordion/style/dnb-accordion.css +13 -5
- package/cjs/components/accordion/style/dnb-accordion.min.css +3 -1
- package/cjs/components/accordion/style/dnb-accordion.scss +16 -5
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +19 -32
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +22 -33
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.css +149 -101
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +27 -1
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.scss +159 -86
- package/cjs/components/anchor/Anchor.d.ts +1 -0
- package/cjs/components/anchor/Anchor.js +7 -5
- package/cjs/components/anchor/Anchor.js.map +1 -1
- package/cjs/components/autocomplete/Autocomplete.d.ts +4 -0
- package/cjs/components/autocomplete/Autocomplete.js +98 -80
- package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +4 -4
- package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
- package/cjs/components/breadcrumb/style/dnb-breadcrumb.scss +2 -7
- package/cjs/components/button/Button.d.ts +1 -1
- package/cjs/components/button/Button.js +9 -5
- package/cjs/components/button/Button.js.map +1 -1
- package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +1 -1
- package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
- package/cjs/components/card/style/dnb-card.css +10 -0
- package/cjs/components/card/style/dnb-card.min.css +1 -1
- package/cjs/components/card/style/dnb-card.scss +8 -0
- package/cjs/components/checkbox/Checkbox.js +9 -3
- package/cjs/components/checkbox/Checkbox.js.map +1 -1
- package/cjs/components/checkbox/style/dnb-checkbox.css +129 -0
- package/cjs/components/checkbox/style/dnb-checkbox.min.css +1 -1
- package/cjs/components/checkbox/style/dnb-checkbox.scss +199 -0
- package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.css +32 -0
- package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.min.css +3 -0
- package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.scss +39 -0
- package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.css +24 -88
- package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.min.css +1 -1
- package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +30 -125
- package/cjs/components/date-picker/DatePicker.d.ts +1 -1
- package/cjs/components/date-picker/DatePicker.js +4 -1
- package/cjs/components/date-picker/DatePicker.js.map +1 -1
- package/cjs/components/date-picker/DatePickerInput.d.ts +1 -1
- package/cjs/components/dropdown/Dropdown.js +2 -2
- package/cjs/components/dropdown/Dropdown.js.map +1 -1
- package/cjs/components/flex/Container.js +2 -1
- package/cjs/components/flex/Container.js.map +1 -1
- package/cjs/components/flex/style/dnb-flex.css +1 -1
- package/cjs/components/flex/style/dnb-flex.min.css +1 -1
- package/cjs/components/flex/style/flex-container.scss +1 -1
- package/cjs/components/form-label/FormLabel.d.ts +8 -3
- package/cjs/components/form-label/FormLabel.js +14 -11
- package/cjs/components/form-label/FormLabel.js.map +1 -1
- package/cjs/components/form-label/style/dnb-form-label.css +0 -1
- package/cjs/components/form-label/style/dnb-form-label.min.css +1 -1
- package/cjs/components/form-label/style/dnb-form-label.scss +0 -5
- package/cjs/components/global-status/GlobalStatus.d.ts +1 -1
- package/cjs/components/global-status/GlobalStatus.js +3 -1
- package/cjs/components/global-status/GlobalStatus.js.map +1 -1
- package/cjs/components/global-status/style/dnb-global-status.css +0 -7
- package/cjs/components/global-status/style/dnb-global-status.min.css +1 -1
- package/cjs/components/global-status/style/dnb-global-status.scss +0 -11
- package/cjs/components/input/style/dnb-input.css +7 -3
- package/cjs/components/input/style/dnb-input.min.css +1 -1
- package/cjs/components/input/style/dnb-input.scss +14 -8
- package/cjs/components/input-masked/MultiInputMask.d.ts +6 -2
- package/cjs/components/input-masked/MultiInputMask.js +21 -17
- package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
- package/cjs/components/input-masked/style/dnb-input-masked.css +3 -3
- package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/cjs/components/input-masked/style/dnb-input-masked.scss +1 -1
- package/cjs/components/number-format/NumberUtils.d.ts +1 -1
- package/cjs/components/radio/Radio.js +13 -7
- package/cjs/components/radio/Radio.js.map +1 -1
- package/cjs/components/radio/RadioGroup.js +3 -2
- package/cjs/components/radio/RadioGroup.js.map +1 -1
- package/cjs/components/radio/style/dnb-radio.css +33 -8
- package/cjs/components/radio/style/dnb-radio.min.css +1 -1
- package/cjs/components/radio/style/dnb-radio.scss +59 -9
- package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.css +17 -8
- package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +5 -1
- package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.scss +17 -8
- package/cjs/components/radio/style/themes/dnb-radio-theme-ui.css +6 -1
- package/cjs/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
- package/cjs/components/radio/style/themes/dnb-radio-theme-ui.scss +6 -1
- package/cjs/components/section/Section.d.ts +5 -0
- package/cjs/components/section/Section.js +3 -2
- package/cjs/components/section/Section.js.map +1 -1
- package/cjs/components/section/style/dnb-section.css +12 -0
- package/cjs/components/section/style/dnb-section.min.css +3 -3
- package/cjs/components/section/style/dnb-section.scss +10 -0
- package/cjs/components/switch/Switch.js +9 -3
- package/cjs/components/switch/Switch.js.map +1 -1
- package/cjs/components/switch/style/dnb-switch.css +43 -9
- package/cjs/components/switch/style/dnb-switch.min.css +1 -1
- package/cjs/components/switch/style/dnb-switch.scss +49 -22
- package/cjs/components/switch/style/themes/dnb-switch-theme-sbanken.css +207 -0
- package/cjs/components/switch/style/themes/dnb-switch-theme-sbanken.min.css +1 -0
- package/cjs/components/switch/style/themes/dnb-switch-theme-sbanken.scss +280 -0
- package/cjs/components/switch/style/themes/dnb-switch-theme-ui.css +11 -30
- package/cjs/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
- package/cjs/components/switch/style/themes/dnb-switch-theme-ui.scss +24 -32
- package/cjs/components/textarea/Textarea.js +4 -1
- package/cjs/components/textarea/Textarea.js.map +1 -1
- package/cjs/components/toggle-button/ToggleButtonGroup.js +3 -2
- package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
- package/cjs/components/toggle-button/style/dnb-toggle-button.css +3 -7
- package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/cjs/components/toggle-button/style/dnb-toggle-button.scss +4 -14
- package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +92 -0
- package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -0
- package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +83 -0
- package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +0 -2
- package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +0 -3
- package/cjs/elements/hr/style/dnb-hr.scss +16 -30
- package/cjs/elements/hr/style/hr-mixins.scss +5 -7
- package/cjs/extensions/forms/DataContext/Context.d.ts +1 -1
- package/cjs/extensions/forms/DataContext/Context.js +1 -1
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +9 -5
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +0 -6
- package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +0 -2
- package/cjs/extensions/forms/Field/Currency/Currency.d.ts +3 -1
- package/cjs/extensions/forms/Field/Currency/Currency.js +7 -2
- package/cjs/extensions/forms/Field/Currency/Currency.js.map +1 -1
- package/cjs/extensions/forms/Field/Expiry/Expiry.js +6 -4
- package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.css +2 -8
- package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -1
- package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.scss +5 -5
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -5
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/Number/Number.js +11 -12
- package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +14 -2
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +134 -70
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.css +2 -8
- package/cjs/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.min.css +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.scss +2 -4
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -3
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -5
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -15
- 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 +0 -14
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +34 -2
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +189 -17
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/Selection.js +1 -0
- package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/style/dnb-selection.css +0 -6
- package/cjs/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
- package/cjs/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
- package/cjs/extensions/forms/Field/String/String.js +8 -9
- package/cjs/extensions/forms/Field/String/String.js.map +1 -1
- package/cjs/extensions/forms/Field/Toggle/Toggle.js +4 -2
- package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js +16 -19
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
- package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -0
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +3 -0
- package/cjs/extensions/forms/constants/countries.d.ts +9 -6
- package/cjs/extensions/forms/constants/countries.js +15 -7
- package/cjs/extensions/forms/constants/countries.js.map +1 -1
- package/cjs/extensions/forms/hooks/useDataValue.d.ts +2 -0
- package/cjs/extensions/forms/hooks/useDataValue.js +31 -21
- package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/cjs/extensions/forms/index.d.ts +1 -1
- package/cjs/extensions/forms/index.js +12 -0
- package/cjs/extensions/forms/index.js.map +1 -1
- package/cjs/extensions/forms/style/dnb-forms.css +101 -129
- package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
- package/cjs/extensions/forms/style/dnb-forms.scss +1 -6
- package/cjs/extensions/forms/types.d.ts +5 -4
- package/cjs/extensions/forms/types.js.map +1 -1
- package/cjs/extensions/payment-card/PaymentCard.d.ts +3 -2
- package/cjs/extensions/payment-card/PaymentCard.js +16 -37
- package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
- package/cjs/extensions/payment-card/icons/index.js +3 -1
- package/cjs/extensions/payment-card/icons/index.js.map +1 -1
- package/cjs/extensions/style/index.d.ts +5 -1
- package/cjs/extensions/style/index.js +2 -0
- package/cjs/extensions/style/index.js.map +1 -1
- package/cjs/icons/dnb/icons-meta.json +2 -2
- package/cjs/icons/icons-meta.json +2 -2
- 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/helpers/filterValidProps.d.ts +3 -7
- package/cjs/shared/helpers/filterValidProps.js +8 -4
- package/cjs/shared/helpers/filterValidProps.js.map +1 -1
- package/cjs/shared/helpers/withCamelCaseProps.d.ts +1 -0
- package/cjs/shared/helpers/withCamelCaseProps.js +6 -4
- package/cjs/shared/helpers/withCamelCaseProps.js.map +1 -1
- package/cjs/shared/helpers/withSnakeCaseProps.js +5 -4
- package/cjs/shared/helpers/withSnakeCaseProps.js.map +1 -1
- package/cjs/shared/locales/en-GB.d.ts +1 -1
- package/cjs/shared/locales/en-GB.js +4 -4
- package/cjs/shared/locales/en-GB.js.map +1 -1
- package/cjs/shared/locales/en-US.d.ts +1 -1
- package/cjs/shared/locales/index.d.ts +2 -2
- package/cjs/shared/locales/nb-NO.d.ts +1 -1
- package/cjs/shared/locales/nb-NO.js +4 -4
- 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 +567 -113
- package/cjs/style/dnb-ui-components.min.css +6 -4
- package/cjs/style/dnb-ui-components.scss +2 -1
- package/cjs/style/dnb-ui-elements.css +19 -26
- package/cjs/style/dnb-ui-elements.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.css +101 -129
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/dnb-ui-forms.css +243 -0
- package/cjs/style/dnb-ui-forms.min.css +1 -0
- package/cjs/style/dnb-ui-forms.scss +19 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -26
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +1033 -359
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +35 -7
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +19 -26
- package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +101 -129
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +252 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.scss +15 -0
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +19 -26
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +1211 -595
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +16 -8
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +4 -3
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +19 -26
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +101 -129
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +252 -0
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -0
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.scss +15 -0
- package/cjs/style/themes/theme-ui/ui-theme-basis.css +19 -26
- package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +1033 -359
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +35 -7
- package/cjs/style/themes/theme-ui/ui-theme-components.scss +1 -0
- package/cjs/style/themes/theme-ui/ui-theme-elements.css +19 -26
- package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +101 -129
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-forms.css +252 -0
- package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -0
- package/cjs/style/themes/theme-ui/ui-theme-forms.scss +15 -0
- package/cjs/style/themes/theme-ui/ui-theme-tags.css +8 -7
- package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/components/accordion/AccordionHeader.d.ts +2 -1
- package/components/accordion/AccordionHeader.js +3 -2
- package/components/accordion/AccordionHeader.js.map +1 -1
- package/components/accordion/style/dnb-accordion.css +13 -5
- package/components/accordion/style/dnb-accordion.min.css +3 -1
- package/components/accordion/style/dnb-accordion.scss +16 -5
- package/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +19 -32
- package/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
- package/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +22 -33
- package/components/accordion/style/themes/dnb-accordion-theme-ui.css +149 -101
- package/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +27 -1
- package/components/accordion/style/themes/dnb-accordion-theme-ui.scss +159 -86
- package/components/anchor/Anchor.d.ts +1 -0
- package/components/anchor/Anchor.js +5 -4
- package/components/anchor/Anchor.js.map +1 -1
- package/components/autocomplete/Autocomplete.d.ts +4 -0
- package/components/autocomplete/Autocomplete.js +98 -80
- package/components/autocomplete/Autocomplete.js.map +1 -1
- package/components/breadcrumb/style/dnb-breadcrumb.css +4 -4
- package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
- package/components/breadcrumb/style/dnb-breadcrumb.scss +2 -7
- package/components/button/Button.d.ts +1 -1
- package/components/button/Button.js +10 -6
- package/components/button/Button.js.map +1 -1
- package/components/button/style/themes/dnb-button-theme-sbanken.scss +1 -1
- package/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
- package/components/card/style/dnb-card.css +10 -0
- package/components/card/style/dnb-card.min.css +1 -1
- package/components/card/style/dnb-card.scss +8 -0
- package/components/checkbox/Checkbox.js +9 -3
- package/components/checkbox/Checkbox.js.map +1 -1
- package/components/checkbox/style/dnb-checkbox.css +129 -0
- package/components/checkbox/style/dnb-checkbox.min.css +1 -1
- package/components/checkbox/style/dnb-checkbox.scss +199 -0
- package/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.css +32 -0
- package/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.min.css +3 -0
- package/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.scss +39 -0
- package/components/checkbox/style/themes/dnb-checkbox-theme-ui.css +24 -88
- package/components/checkbox/style/themes/dnb-checkbox-theme-ui.min.css +1 -1
- package/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +30 -125
- package/components/date-picker/DatePicker.d.ts +1 -1
- package/components/date-picker/DatePicker.js +4 -1
- package/components/date-picker/DatePicker.js.map +1 -1
- package/components/date-picker/DatePickerInput.d.ts +1 -1
- package/components/dropdown/Dropdown.js +2 -2
- package/components/dropdown/Dropdown.js.map +1 -1
- package/components/flex/Container.js +2 -1
- package/components/flex/Container.js.map +1 -1
- package/components/flex/style/dnb-flex.css +1 -1
- package/components/flex/style/dnb-flex.min.css +1 -1
- package/components/flex/style/flex-container.scss +1 -1
- package/components/form-label/FormLabel.d.ts +8 -3
- package/components/form-label/FormLabel.js +14 -11
- package/components/form-label/FormLabel.js.map +1 -1
- package/components/form-label/style/dnb-form-label.css +0 -1
- package/components/form-label/style/dnb-form-label.min.css +1 -1
- package/components/form-label/style/dnb-form-label.scss +0 -5
- package/components/global-status/GlobalStatus.d.ts +1 -1
- package/components/global-status/GlobalStatus.js +3 -1
- package/components/global-status/GlobalStatus.js.map +1 -1
- package/components/global-status/style/dnb-global-status.css +0 -7
- package/components/global-status/style/dnb-global-status.min.css +1 -1
- package/components/global-status/style/dnb-global-status.scss +0 -11
- package/components/input/style/dnb-input.css +7 -3
- package/components/input/style/dnb-input.min.css +1 -1
- package/components/input/style/dnb-input.scss +14 -8
- package/components/input-masked/MultiInputMask.d.ts +6 -2
- package/components/input-masked/MultiInputMask.js +22 -18
- package/components/input-masked/MultiInputMask.js.map +1 -1
- package/components/input-masked/style/dnb-input-masked.css +3 -3
- package/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/components/input-masked/style/dnb-input-masked.scss +1 -1
- package/components/number-format/NumberUtils.d.ts +1 -1
- package/components/radio/Radio.js +13 -7
- package/components/radio/Radio.js.map +1 -1
- package/components/radio/RadioGroup.js +3 -2
- package/components/radio/RadioGroup.js.map +1 -1
- package/components/radio/style/dnb-radio.css +33 -8
- package/components/radio/style/dnb-radio.min.css +1 -1
- package/components/radio/style/dnb-radio.scss +59 -9
- package/components/radio/style/themes/dnb-radio-theme-sbanken.css +17 -8
- package/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +5 -1
- package/components/radio/style/themes/dnb-radio-theme-sbanken.scss +17 -8
- package/components/radio/style/themes/dnb-radio-theme-ui.css +6 -1
- package/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
- package/components/radio/style/themes/dnb-radio-theme-ui.scss +6 -1
- package/components/section/Section.d.ts +5 -0
- package/components/section/Section.js +3 -2
- package/components/section/Section.js.map +1 -1
- package/components/section/style/dnb-section.css +12 -0
- package/components/section/style/dnb-section.min.css +3 -3
- package/components/section/style/dnb-section.scss +10 -0
- package/components/switch/Switch.js +9 -3
- package/components/switch/Switch.js.map +1 -1
- package/components/switch/style/dnb-switch.css +43 -9
- package/components/switch/style/dnb-switch.min.css +1 -1
- package/components/switch/style/dnb-switch.scss +49 -22
- package/components/switch/style/themes/dnb-switch-theme-sbanken.css +207 -0
- package/components/switch/style/themes/dnb-switch-theme-sbanken.min.css +1 -0
- package/components/switch/style/themes/dnb-switch-theme-sbanken.scss +280 -0
- package/components/switch/style/themes/dnb-switch-theme-ui.css +11 -30
- package/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
- package/components/switch/style/themes/dnb-switch-theme-ui.scss +24 -32
- package/components/textarea/Textarea.js +4 -1
- package/components/textarea/Textarea.js.map +1 -1
- package/components/toggle-button/ToggleButtonGroup.js +3 -2
- package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
- package/components/toggle-button/style/dnb-toggle-button.css +3 -7
- package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/components/toggle-button/style/dnb-toggle-button.scss +4 -14
- package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +92 -0
- package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -0
- package/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +83 -0
- package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +0 -2
- package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +0 -3
- package/elements/hr/style/dnb-hr.scss +16 -30
- package/elements/hr/style/hr-mixins.scss +5 -7
- package/es/components/accordion/AccordionHeader.d.ts +2 -1
- package/es/components/accordion/AccordionHeader.js +3 -2
- package/es/components/accordion/AccordionHeader.js.map +1 -1
- package/es/components/accordion/style/dnb-accordion.css +13 -5
- package/es/components/accordion/style/dnb-accordion.min.css +3 -1
- package/es/components/accordion/style/dnb-accordion.scss +16 -5
- package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +19 -32
- package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
- package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +22 -33
- package/es/components/accordion/style/themes/dnb-accordion-theme-ui.css +149 -101
- package/es/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +27 -1
- package/es/components/accordion/style/themes/dnb-accordion-theme-ui.scss +159 -86
- package/es/components/anchor/Anchor.d.ts +1 -0
- package/es/components/anchor/Anchor.js +5 -4
- package/es/components/anchor/Anchor.js.map +1 -1
- package/es/components/autocomplete/Autocomplete.d.ts +4 -0
- package/es/components/autocomplete/Autocomplete.js +94 -75
- package/es/components/autocomplete/Autocomplete.js.map +1 -1
- package/es/components/breadcrumb/style/dnb-breadcrumb.css +4 -4
- package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
- package/es/components/breadcrumb/style/dnb-breadcrumb.scss +2 -7
- package/es/components/button/Button.d.ts +1 -1
- package/es/components/button/Button.js +10 -6
- package/es/components/button/Button.js.map +1 -1
- package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +1 -1
- package/es/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
- package/es/components/card/style/dnb-card.css +10 -0
- package/es/components/card/style/dnb-card.min.css +1 -1
- package/es/components/card/style/dnb-card.scss +8 -0
- package/es/components/checkbox/Checkbox.js +9 -3
- package/es/components/checkbox/Checkbox.js.map +1 -1
- package/es/components/checkbox/style/dnb-checkbox.css +129 -0
- package/es/components/checkbox/style/dnb-checkbox.min.css +1 -1
- package/es/components/checkbox/style/dnb-checkbox.scss +199 -0
- package/es/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.css +32 -0
- package/es/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.min.css +3 -0
- package/es/components/checkbox/style/themes/dnb-checkbox-theme-sbanken.scss +39 -0
- package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.css +24 -88
- package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.min.css +1 -1
- package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +30 -125
- package/es/components/date-picker/DatePicker.d.ts +1 -1
- package/es/components/date-picker/DatePicker.js +4 -1
- package/es/components/date-picker/DatePicker.js.map +1 -1
- package/es/components/date-picker/DatePickerInput.d.ts +1 -1
- package/es/components/dropdown/Dropdown.js +2 -2
- package/es/components/dropdown/Dropdown.js.map +1 -1
- package/es/components/flex/Container.js +2 -1
- package/es/components/flex/Container.js.map +1 -1
- package/es/components/flex/style/dnb-flex.css +1 -1
- package/es/components/flex/style/dnb-flex.min.css +1 -1
- package/es/components/flex/style/flex-container.scss +1 -1
- package/es/components/form-label/FormLabel.d.ts +8 -3
- package/es/components/form-label/FormLabel.js +14 -11
- package/es/components/form-label/FormLabel.js.map +1 -1
- package/es/components/form-label/style/dnb-form-label.css +0 -1
- package/es/components/form-label/style/dnb-form-label.min.css +1 -1
- package/es/components/form-label/style/dnb-form-label.scss +0 -5
- package/es/components/global-status/GlobalStatus.d.ts +1 -1
- package/es/components/global-status/GlobalStatus.js +3 -1
- package/es/components/global-status/GlobalStatus.js.map +1 -1
- package/es/components/global-status/style/dnb-global-status.css +0 -7
- package/es/components/global-status/style/dnb-global-status.min.css +1 -1
- package/es/components/global-status/style/dnb-global-status.scss +0 -11
- package/es/components/input/style/dnb-input.css +7 -3
- package/es/components/input/style/dnb-input.min.css +1 -1
- package/es/components/input/style/dnb-input.scss +14 -8
- package/es/components/input-masked/MultiInputMask.d.ts +6 -2
- package/es/components/input-masked/MultiInputMask.js +24 -19
- package/es/components/input-masked/MultiInputMask.js.map +1 -1
- package/es/components/input-masked/style/dnb-input-masked.css +3 -3
- package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/es/components/input-masked/style/dnb-input-masked.scss +1 -1
- package/es/components/number-format/NumberUtils.d.ts +1 -1
- package/es/components/radio/Radio.js +13 -7
- package/es/components/radio/Radio.js.map +1 -1
- package/es/components/radio/RadioGroup.js +3 -2
- package/es/components/radio/RadioGroup.js.map +1 -1
- package/es/components/radio/style/dnb-radio.css +33 -8
- package/es/components/radio/style/dnb-radio.min.css +1 -1
- package/es/components/radio/style/dnb-radio.scss +59 -9
- package/es/components/radio/style/themes/dnb-radio-theme-sbanken.css +17 -8
- package/es/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +5 -1
- package/es/components/radio/style/themes/dnb-radio-theme-sbanken.scss +17 -8
- package/es/components/radio/style/themes/dnb-radio-theme-ui.css +6 -1
- package/es/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
- package/es/components/radio/style/themes/dnb-radio-theme-ui.scss +6 -1
- package/es/components/section/Section.d.ts +5 -0
- package/es/components/section/Section.js +3 -2
- package/es/components/section/Section.js.map +1 -1
- package/es/components/section/style/dnb-section.css +12 -0
- package/es/components/section/style/dnb-section.min.css +3 -3
- package/es/components/section/style/dnb-section.scss +10 -0
- package/es/components/switch/Switch.js +9 -3
- package/es/components/switch/Switch.js.map +1 -1
- package/es/components/switch/style/dnb-switch.css +43 -9
- package/es/components/switch/style/dnb-switch.min.css +1 -1
- package/es/components/switch/style/dnb-switch.scss +49 -22
- package/es/components/switch/style/themes/dnb-switch-theme-sbanken.css +207 -0
- package/es/components/switch/style/themes/dnb-switch-theme-sbanken.min.css +1 -0
- package/es/components/switch/style/themes/dnb-switch-theme-sbanken.scss +280 -0
- package/es/components/switch/style/themes/dnb-switch-theme-ui.css +11 -30
- package/es/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
- package/es/components/switch/style/themes/dnb-switch-theme-ui.scss +24 -32
- package/es/components/textarea/Textarea.js +4 -1
- package/es/components/textarea/Textarea.js.map +1 -1
- package/es/components/toggle-button/ToggleButtonGroup.js +3 -2
- package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
- package/es/components/toggle-button/style/dnb-toggle-button.css +3 -7
- package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/es/components/toggle-button/style/dnb-toggle-button.scss +4 -14
- package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.css +92 -0
- package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.min.css +1 -0
- package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-sbanken.scss +83 -0
- package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +0 -2
- package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +0 -3
- package/es/elements/hr/style/dnb-hr.scss +16 -30
- package/es/elements/hr/style/hr-mixins.scss +5 -7
- package/es/extensions/forms/DataContext/Context.d.ts +1 -1
- package/es/extensions/forms/DataContext/Context.js +1 -1
- package/es/extensions/forms/DataContext/Context.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.js +9 -5
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +0 -6
- package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
- package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +0 -2
- package/es/extensions/forms/Field/Currency/Currency.d.ts +3 -1
- package/es/extensions/forms/Field/Currency/Currency.js +8 -2
- package/es/extensions/forms/Field/Currency/Currency.js.map +1 -1
- package/es/extensions/forms/Field/Expiry/Expiry.js +6 -4
- package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/es/extensions/forms/Field/Expiry/style/dnb-expiry.css +2 -8
- package/es/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -1
- package/es/extensions/forms/Field/Expiry/style/dnb-expiry.scss +5 -5
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -5
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/es/extensions/forms/Field/Number/Number.js +11 -12
- package/es/extensions/forms/Field/Number/Number.js.map +1 -1
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +14 -2
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +128 -61
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/es/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.css +2 -8
- package/es/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.min.css +1 -1
- package/es/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.scss +2 -4
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -3
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -5
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -15
- 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 +0 -14
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +34 -2
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +176 -18
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/es/extensions/forms/Field/Selection/Selection.js +1 -0
- package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/es/extensions/forms/Field/Selection/style/dnb-selection.css +0 -6
- package/es/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
- package/es/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
- package/es/extensions/forms/Field/String/String.js +8 -9
- package/es/extensions/forms/Field/String/String.js.map +1 -1
- package/es/extensions/forms/Field/Toggle/Toggle.js +4 -2
- package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
- package/es/extensions/forms/FieldBlock/FieldBlock.js +16 -19
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
- package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -0
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +3 -0
- package/es/extensions/forms/constants/countries.d.ts +9 -6
- package/es/extensions/forms/constants/countries.js +13 -6
- package/es/extensions/forms/constants/countries.js.map +1 -1
- package/es/extensions/forms/hooks/useDataValue.d.ts +2 -0
- package/es/extensions/forms/hooks/useDataValue.js +26 -20
- package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/es/extensions/forms/index.d.ts +1 -1
- 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 +101 -129
- package/es/extensions/forms/style/dnb-forms.min.css +1 -1
- package/es/extensions/forms/style/dnb-forms.scss +1 -6
- package/es/extensions/forms/types.d.ts +5 -4
- package/es/extensions/forms/types.js.map +1 -1
- package/es/extensions/payment-card/PaymentCard.d.ts +3 -2
- package/es/extensions/payment-card/PaymentCard.js +16 -37
- package/es/extensions/payment-card/PaymentCard.js.map +1 -1
- package/es/extensions/payment-card/icons/index.js +4 -2
- package/es/extensions/payment-card/icons/index.js.map +1 -1
- package/es/extensions/style/index.d.ts +5 -1
- package/es/extensions/style/index.js +4 -1
- package/es/extensions/style/index.js.map +1 -1
- package/es/icons/dnb/icons-meta.json +2 -2
- package/es/icons/icons-meta.json +2 -2
- 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/helpers/filterValidProps.d.ts +3 -7
- package/es/shared/helpers/filterValidProps.js +9 -3
- package/es/shared/helpers/filterValidProps.js.map +1 -1
- package/es/shared/helpers/withCamelCaseProps.d.ts +1 -0
- package/es/shared/helpers/withCamelCaseProps.js +6 -5
- package/es/shared/helpers/withCamelCaseProps.js.map +1 -1
- package/es/shared/helpers/withSnakeCaseProps.js +5 -4
- package/es/shared/helpers/withSnakeCaseProps.js.map +1 -1
- package/es/shared/locales/en-GB.d.ts +1 -1
- package/es/shared/locales/en-GB.js +4 -4
- package/es/shared/locales/en-GB.js.map +1 -1
- package/es/shared/locales/en-US.d.ts +1 -1
- package/es/shared/locales/index.d.ts +2 -2
- package/es/shared/locales/nb-NO.d.ts +1 -1
- package/es/shared/locales/nb-NO.js +4 -4
- 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 +567 -113
- package/es/style/dnb-ui-components.min.css +6 -4
- package/es/style/dnb-ui-components.scss +2 -1
- package/es/style/dnb-ui-elements.css +19 -26
- package/es/style/dnb-ui-elements.min.css +1 -1
- package/es/style/dnb-ui-extensions.css +101 -129
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/dnb-ui-forms.css +243 -0
- package/es/style/dnb-ui-forms.min.css +1 -0
- package/es/style/dnb-ui-forms.scss +19 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -26
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +1033 -359
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +35 -7
- package/es/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +19 -26
- package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +101 -129
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +252 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.scss +15 -0
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +19 -26
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +1211 -595
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +16 -8
- package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +4 -3
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +19 -26
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +101 -129
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +252 -0
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -0
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.scss +15 -0
- package/es/style/themes/theme-ui/ui-theme-basis.css +19 -26
- package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +1033 -359
- package/es/style/themes/theme-ui/ui-theme-components.min.css +35 -7
- package/es/style/themes/theme-ui/ui-theme-components.scss +1 -0
- package/es/style/themes/theme-ui/ui-theme-elements.css +19 -26
- package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-extensions.css +101 -129
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-forms.css +252 -0
- package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -0
- package/es/style/themes/theme-ui/ui-theme-forms.scss +15 -0
- package/es/style/themes/theme-ui/ui-theme-tags.css +8 -7
- package/es/style/themes/theme-ui/ui-theme-tags.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 +1 -1
- package/extensions/forms/DataContext/Context.js +1 -1
- package/extensions/forms/DataContext/Context.js.map +1 -1
- package/extensions/forms/DataContext/Provider/Provider.js +9 -5
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +0 -6
- package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
- package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +0 -2
- package/extensions/forms/Field/Currency/Currency.d.ts +3 -1
- package/extensions/forms/Field/Currency/Currency.js +8 -2
- package/extensions/forms/Field/Currency/Currency.js.map +1 -1
- package/extensions/forms/Field/Expiry/Expiry.js +6 -4
- package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/extensions/forms/Field/Expiry/style/dnb-expiry.css +2 -8
- package/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -1
- package/extensions/forms/Field/Expiry/style/dnb-expiry.scss +5 -5
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +6 -5
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/extensions/forms/Field/Number/Number.js +11 -12
- package/extensions/forms/Field/Number/Number.js.map +1 -1
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +14 -2
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +135 -71
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.css +2 -8
- package/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.min.css +1 -1
- package/extensions/forms/Field/PhoneNumber/style/dnb-phone-number.scss +2 -4
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +1 -3
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -5
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +0 -15
- 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 +0 -14
- package/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +34 -2
- package/extensions/forms/Field/SelectCountry/SelectCountry.js +188 -18
- package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/extensions/forms/Field/Selection/Selection.js +1 -0
- package/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/extensions/forms/Field/Selection/style/dnb-selection.css +0 -6
- package/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
- package/extensions/forms/Field/Selection/style/dnb-selection.scss +0 -2
- package/extensions/forms/Field/String/String.js +8 -9
- package/extensions/forms/Field/String/String.js.map +1 -1
- package/extensions/forms/Field/Toggle/Toggle.js +4 -2
- package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -2
- package/extensions/forms/FieldBlock/FieldBlock.js +17 -20
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
- package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -0
- package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.scss +3 -0
- package/extensions/forms/constants/countries.d.ts +9 -6
- package/extensions/forms/constants/countries.js +13 -6
- package/extensions/forms/constants/countries.js.map +1 -1
- package/extensions/forms/hooks/useDataValue.d.ts +2 -0
- package/extensions/forms/hooks/useDataValue.js +31 -21
- package/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/extensions/forms/index.d.ts +1 -1
- package/extensions/forms/index.js +1 -0
- package/extensions/forms/index.js.map +1 -1
- package/extensions/forms/style/dnb-forms.css +101 -129
- package/extensions/forms/style/dnb-forms.min.css +1 -1
- package/extensions/forms/style/dnb-forms.scss +1 -6
- package/extensions/forms/types.d.ts +5 -4
- package/extensions/forms/types.js.map +1 -1
- package/extensions/payment-card/PaymentCard.d.ts +3 -2
- package/extensions/payment-card/PaymentCard.js +16 -37
- package/extensions/payment-card/PaymentCard.js.map +1 -1
- package/extensions/payment-card/icons/index.js +4 -2
- package/extensions/payment-card/icons/index.js.map +1 -1
- package/extensions/style/index.d.ts +5 -1
- package/extensions/style/index.js +4 -1
- package/extensions/style/index.js.map +1 -1
- package/icons/dnb/icons-meta.json +2 -2
- package/icons/icons-meta.json +2 -2
- 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/helpers/filterValidProps.d.ts +3 -7
- package/shared/helpers/filterValidProps.js +9 -3
- package/shared/helpers/filterValidProps.js.map +1 -1
- package/shared/helpers/withCamelCaseProps.d.ts +1 -0
- package/shared/helpers/withCamelCaseProps.js +6 -5
- package/shared/helpers/withCamelCaseProps.js.map +1 -1
- package/shared/helpers/withSnakeCaseProps.js +5 -4
- package/shared/helpers/withSnakeCaseProps.js.map +1 -1
- package/shared/locales/en-GB.d.ts +1 -1
- package/shared/locales/en-GB.js +4 -4
- package/shared/locales/en-GB.js.map +1 -1
- package/shared/locales/en-US.d.ts +1 -1
- package/shared/locales/index.d.ts +2 -2
- package/shared/locales/nb-NO.d.ts +1 -1
- package/shared/locales/nb-NO.js +4 -4
- package/shared/locales/nb-NO.js.map +1 -1
- package/style/core/utilities.scss +1 -1
- package/style/dnb-ui-components.css +567 -113
- package/style/dnb-ui-components.min.css +6 -4
- package/style/dnb-ui-components.scss +2 -1
- package/style/dnb-ui-elements.css +19 -26
- package/style/dnb-ui-elements.min.css +1 -1
- package/style/dnb-ui-extensions.css +101 -129
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/dnb-ui-forms.css +243 -0
- package/style/dnb-ui-forms.min.css +1 -0
- package/style/dnb-ui-forms.scss +19 -0
- package/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -26
- package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.css +1033 -359
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +35 -7
- package/style/themes/theme-eiendom/eiendom-theme-components.scss +1 -0
- package/style/themes/theme-eiendom/eiendom-theme-elements.css +19 -26
- package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +101 -129
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-forms.css +252 -0
- package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -0
- package/style/themes/theme-eiendom/eiendom-theme-forms.scss +15 -0
- package/style/themes/theme-sbanken/sbanken-theme-basis.css +19 -26
- package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +1211 -595
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +16 -8
- package/style/themes/theme-sbanken/sbanken-theme-components.scss +4 -3
- package/style/themes/theme-sbanken/sbanken-theme-elements.css +19 -26
- package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +101 -129
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-forms.css +252 -0
- package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -0
- package/style/themes/theme-sbanken/sbanken-theme-forms.scss +15 -0
- package/style/themes/theme-ui/ui-theme-basis.css +19 -26
- package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-components.css +1033 -359
- package/style/themes/theme-ui/ui-theme-components.min.css +35 -7
- package/style/themes/theme-ui/ui-theme-components.scss +1 -0
- package/style/themes/theme-ui/ui-theme-elements.css +19 -26
- package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-extensions.css +101 -129
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-forms.css +252 -0
- package/style/themes/theme-ui/ui-theme-forms.min.css +1 -0
- package/style/themes/theme-ui/ui-theme-forms.scss +15 -0
- package/style/themes/theme-ui/ui-theme-tags.css +8 -7
- package/style/themes/theme-ui/ui-theme-tags.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/button/style/dnb-button--tertiary.css +0 -216
- package/cjs/components/button/style/dnb-button--tertiary.min.css +0 -5
- package/cjs/extensions/forms/Field/style/dnb-forms-field.css +0 -93
- package/cjs/extensions/forms/Field/style/dnb-forms-field.min.css +0 -1
- package/cjs/extensions/forms/Field/style/dnb-forms-field.scss +0 -5
- package/cjs/extensions/forms/Form/style/dnb-forms-form.css +0 -33
- package/cjs/extensions/forms/Form/style/dnb-forms-form.min.css +0 -1
- package/cjs/extensions/forms/Form/style/dnb-forms-form.scss +0 -3
- package/cjs/extensions/forms/Form/style/index.d.ts +0 -5
- package/cjs/extensions/forms/Form/style/index.js +0 -4
- package/cjs/extensions/forms/Form/style/index.js.map +0 -1
- package/cjs/extensions/forms/StepsLayout/style/index.scss +0 -1
- package/cjs/extensions/forms/ValueBlock/style/index.scss +0 -1
- package/cjs/extensions/forms/style/index.d.ts +0 -1
- package/cjs/extensions/forms/style/index.js +0 -4
- package/cjs/extensions/forms/style/index.js.map +0 -1
- package/components/button/style/dnb-button--tertiary.css +0 -216
- package/components/button/style/dnb-button--tertiary.min.css +0 -5
- package/es/components/button/style/dnb-button--tertiary.css +0 -216
- package/es/components/button/style/dnb-button--tertiary.min.css +0 -5
- package/es/extensions/forms/Field/style/dnb-forms-field.css +0 -93
- package/es/extensions/forms/Field/style/dnb-forms-field.min.css +0 -1
- package/es/extensions/forms/Field/style/dnb-forms-field.scss +0 -5
- package/es/extensions/forms/Form/style/dnb-forms-form.css +0 -33
- package/es/extensions/forms/Form/style/dnb-forms-form.min.css +0 -1
- package/es/extensions/forms/Form/style/dnb-forms-form.scss +0 -3
- package/es/extensions/forms/Form/style/index.d.ts +0 -5
- package/es/extensions/forms/Form/style/index.js +0 -1
- package/es/extensions/forms/Form/style/index.js.map +0 -1
- package/es/extensions/forms/StepsLayout/style/index.scss +0 -1
- package/es/extensions/forms/ValueBlock/style/index.scss +0 -1
- package/es/extensions/forms/style/index.d.ts +0 -1
- package/es/extensions/forms/style/index.js +0 -1
- package/es/extensions/forms/style/index.js.map +0 -1
- package/extensions/forms/Field/style/dnb-forms-field.css +0 -93
- package/extensions/forms/Field/style/dnb-forms-field.min.css +0 -1
- package/extensions/forms/Field/style/dnb-forms-field.scss +0 -5
- package/extensions/forms/Form/style/dnb-forms-form.css +0 -33
- package/extensions/forms/Form/style/dnb-forms-form.min.css +0 -1
- package/extensions/forms/Form/style/dnb-forms-form.scss +0 -3
- package/extensions/forms/Form/style/index.d.ts +0 -5
- package/extensions/forms/Form/style/index.js +0 -1
- package/extensions/forms/Form/style/index.js.map +0 -1
- package/extensions/forms/StepsLayout/style/index.scss +0 -1
- package/extensions/forms/ValueBlock/style/index.scss +0 -1
- package/extensions/forms/style/index.d.ts +0 -1
- package/extensions/forms/style/index.js +0 -1
- package/extensions/forms/style/index.js.map +0 -1
- /package/cjs/components/button/style/{dnb-button--tertiary.scss → button--tertiary.scss} +0 -0
- /package/components/button/style/{dnb-button--tertiary.scss → button--tertiary.scss} +0 -0
- /package/es/components/button/style/{dnb-button--tertiary.scss → button--tertiary.scss} +0 -0
|
@@ -11,40 +11,26 @@
|
|
|
11
11
|
|
|
12
12
|
&--fullscreen::after {
|
|
13
13
|
left: -100vw;
|
|
14
|
-
|
|
14
|
+
box-shadow: 100vw 0 0 0 currentcolor;
|
|
15
|
+
border-radius: 0;
|
|
15
16
|
}
|
|
16
17
|
|
|
17
|
-
|
|
18
|
-
border-radius: 0.25px;
|
|
18
|
+
--thickness: calc(var(--hr-thickness, 1px) + var(--modifier, 0px));
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
* Else the line will disappear!
|
|
23
|
-
*/
|
|
24
|
-
background-image: linear-gradient(
|
|
25
|
-
to bottom,
|
|
26
|
-
currentcolor 60%,
|
|
27
|
-
transparent 65%
|
|
28
|
-
);
|
|
29
|
-
background-size: 100% 1px;
|
|
30
|
-
background-color: transparent;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
&--medium::after {
|
|
34
|
-
height: 2px;
|
|
35
|
-
border-radius: 0.75px;
|
|
20
|
+
&--light {
|
|
21
|
+
--hr-thickness: 0.4px;
|
|
36
22
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
23
|
+
// Modify the thickness, because the screenshot does not pick up the line when its under 1px.
|
|
24
|
+
// This may change in a later Playwright/Firefox version.
|
|
25
|
+
html[data-visual-test] & {
|
|
26
|
+
--modifier: 0.7px;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
&--medium {
|
|
30
|
+
--hr-thickness: 1.5px;
|
|
45
31
|
}
|
|
46
|
-
}
|
|
47
32
|
|
|
48
|
-
.dnb-spacing
|
|
49
|
-
|
|
33
|
+
.dnb-spacing & {
|
|
34
|
+
@include ui-spacing.defaultSpacing();
|
|
35
|
+
}
|
|
50
36
|
}
|
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
@mixin hrStyle() {
|
|
4
4
|
position: relative;
|
|
5
5
|
padding: 0;
|
|
6
|
+
width: 100%; // when nested in a flex container, we need this.
|
|
6
7
|
height: 0;
|
|
7
8
|
|
|
8
|
-
display:
|
|
9
|
+
display: flow-root; // avoid margin collapsing on Safari
|
|
9
10
|
|
|
10
11
|
&:not([class*='dnb-space']) {
|
|
11
12
|
margin: 0;
|
|
@@ -16,17 +17,14 @@
|
|
|
16
17
|
&::after {
|
|
17
18
|
content: '';
|
|
18
19
|
position: absolute;
|
|
20
|
+
inset: 0;
|
|
19
21
|
z-index: 1;
|
|
20
|
-
left: 0;
|
|
21
|
-
right: 0;
|
|
22
|
-
top: 0;
|
|
23
22
|
|
|
24
|
-
|
|
25
|
-
height: 1px;
|
|
23
|
+
height: var(--thickness);
|
|
26
24
|
|
|
27
25
|
color: inherit;
|
|
28
26
|
background-color: currentcolor;
|
|
29
|
-
border-radius:
|
|
27
|
+
border-radius: calc(var(--thickness) / 2);
|
|
30
28
|
}
|
|
31
29
|
}
|
|
32
30
|
|
|
@@ -7,7 +7,7 @@ import type { SpacingProps } from '../space/types';
|
|
|
7
7
|
import type { HeadingLevel } from '../Heading';
|
|
8
8
|
import type { IconSize } from '../Icon';
|
|
9
9
|
import type { SkeletonShow } from '../Skeleton';
|
|
10
|
-
import type { AccordionIcon, AccordionIconPosition } from './Accordion';
|
|
10
|
+
import type { AccordionIcon, AccordionIconPosition, AccordionVariant } from './Accordion';
|
|
11
11
|
export type AccordionHeaderTitleProps = SpacingProps & {
|
|
12
12
|
children?: React.ReactNode;
|
|
13
13
|
};
|
|
@@ -56,6 +56,7 @@ export type AccordionHeaderProps = React.HTMLProps<HTMLElement> & SpacingProps &
|
|
|
56
56
|
no_animation?: boolean;
|
|
57
57
|
className?: string;
|
|
58
58
|
children?: string | React.ReactNode | ((...args: any[]) => any);
|
|
59
|
+
variant?: AccordionVariant;
|
|
59
60
|
};
|
|
60
61
|
export declare const AccordionHeader: {
|
|
61
62
|
({ icon_size: icon_size_default, ...restOfProps }: AccordionHeaderProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -123,7 +123,8 @@ export const AccordionHeader = _ref4 => {
|
|
|
123
123
|
icon_size,
|
|
124
124
|
disabled,
|
|
125
125
|
skeleton,
|
|
126
|
-
no_animation
|
|
126
|
+
no_animation,
|
|
127
|
+
variant
|
|
127
128
|
} = extendedProps;
|
|
128
129
|
let {
|
|
129
130
|
icon_position
|
|
@@ -202,7 +203,7 @@ export const AccordionHeader = _ref4 => {
|
|
|
202
203
|
'aria-expanded': context.expanded,
|
|
203
204
|
role: 'button',
|
|
204
205
|
tabIndex: 0,
|
|
205
|
-
className: classnames('dnb-accordion__header', createSkeletonClass('font', skeleton, context), createSpacingClasses(rest), className,
|
|
206
|
+
className: classnames('dnb-accordion__header', createSkeletonClass('font', skeleton, context), createSpacingClasses(rest), className, context.expanded && 'dnb-accordion__header--expanded' + (isHovering && hasClicked ? " dnb-accordion__header--after-click" : ""), variant && `dnb-accordion__header--${variant}`, icon_position && `dnb-accordion__header--icon-${icon_position}`, !canClick() && 'dnb-accordion__header--prevent-click', description && 'dnb-accordion__header--description', no_animation && 'dnb-accordion__header--no-animation'),
|
|
206
207
|
disabled
|
|
207
208
|
}, rest);
|
|
208
209
|
if (disabled || skeleton) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionHeader.js","names":["React","useContext","useState","validateDOMAttributes","extendPropsWithContext","IconPrimary","classnames","AccordionContext","createSpacingClasses","skeletonDOMAttributes","createSkeletonClass","AccordionHeaderTitle","_ref","children","rest","_objectWithoutProperties","_excluded","createElement","className","AccordionHeaderDescription","_ref2","_excluded2","AccordionHeaderContainer","_ref3","_excluded3","AccordionHeaderIcon","icon","expanded","size","icon_position","accordionHeaderDefaultProps","icon_size","AccordionHeader","_ref4","icon_size_default","restOfProps","_excluded4","props","_objectSpread","isHovering","setIsHovering","hasClicked","setHasClicked","context","onKeyDownHandler","event","keyPressed","key","preventDefault","onClickHandler","id","group","canClick","callOnChange","onMouseOverHandler","onMouseOutHandler","allow_close_all","extendedProps","left_component","title","description","element","heading","heading_level","disabled","skeleton","no_animation","_left_component","_expanded","_title","_description","_icon","_icon_size","_disabled","_excluded5","defaultParts","Array","isArray","filter","cur","isValidElement","removeParts","forEach","part","find","c","type","push","index","findIndex","splice","partsToRender","wrapperParts","wrapperComp","undefined","iconIndex","headerParams","role","tabIndex","onClick","onKeyDown","onMouseOver","onMouseOut","Element","String","Number","Container","Icon","Title","Description","_supportsSpacingProps"],"sources":["../../../../src/components/accordion/AccordionHeader.tsx"],"sourcesContent":["/**\n * Web Accordion Component\n *\n */\n\nimport React, { HTMLProps, useContext, useState } from 'react'\nimport type { SpacingProps } from '../space/types'\n\nimport {\n validateDOMAttributes,\n extendPropsWithContext,\n} from '../../shared/component-helper'\nimport IconPrimary from '../icon-primary/IconPrimary'\nimport classnames from 'classnames'\nimport AccordionContext from './AccordionContext'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\n\nimport type { HeadingLevel } from '../Heading'\nimport type { IconSize } from '../Icon'\nimport type { SkeletonShow } from '../Skeleton'\nimport type { AccordionIcon, AccordionIconPosition } from './Accordion'\n\nexport type AccordionHeaderTitleProps = SpacingProps & {\n children?: React.ReactNode\n}\n\nfunction AccordionHeaderTitle({\n children = null,\n ...rest\n}: AccordionHeaderTitleProps) {\n return (\n <span\n className={classnames(\n 'dnb-accordion__header__title',\n createSpacingClasses(rest)\n )}\n >\n {children}\n </span>\n )\n}\n\nexport type AccordionHeaderDescriptionProps = SpacingProps & {\n children?: React.ReactNode\n}\n\nfunction AccordionHeaderDescription({\n children = null,\n ...rest\n}: AccordionHeaderDescriptionProps) {\n return children ? (\n <span\n className={classnames(\n 'dnb-accordion__header__description',\n createSpacingClasses(rest)\n )}\n >\n {children}\n </span>\n ) : null\n}\n\nexport type AccordionHeaderContainerProps = SpacingProps & {\n children?: React.ReactNode\n}\n\nfunction AccordionHeaderContainer({\n children = null,\n ...rest\n}: AccordionHeaderContainerProps) {\n return children ? (\n <span\n className={classnames(\n 'dnb-accordion__header__container',\n createSpacingClasses(rest)\n )}\n >\n {children}\n </span>\n ) : null\n}\n\ntype AccordionHeaderIconIcon =\n | React.ReactNode\n | ((...args: any[]) => React.ReactNode)\n | {\n closed?: React.ReactNode | ((...args: any[]) => React.ReactNode)\n expanded?: React.ReactNode | ((...args: any[]) => React.ReactNode)\n }\n\nexport type AccordionHeaderIconProps = {\n icon?: AccordionHeaderIconIcon\n size?: IconSize\n expanded?: boolean\n icon_position?: AccordionIconPosition\n}\n\nfunction AccordionHeaderIcon({\n icon,\n expanded,\n size = 'medium',\n icon_position,\n}: AccordionHeaderIconProps) {\n return (\n <span\n className={classnames(\n 'dnb-accordion__header__icon',\n icon_position && `dnb-accordion__header__icon--${icon_position}`\n )}\n >\n <IconPrimary\n size={size}\n // There has to be a better way than to do so much casting\n icon={\n icon &&\n typeof icon === 'object' &&\n 'expanded' in icon &&\n typeof icon?.expanded !== 'undefined'\n ? icon[expanded ? 'expanded' : 'closed']\n : (icon as React.ReactNode | ((...args: any[]) => any)) ||\n 'chevron-down'\n }\n aria-hidden\n />\n </span>\n )\n}\n\nexport type AccordionHeaderTitle =\n | string\n | React.ReactNode\n | ((...args: any[]) => any)\nexport type AccordionHeaderDescription =\n | string\n | React.ReactNode\n | ((...args: any[]) => any)\nexport type AccordionHeaderLeftComponent =\n | string\n | React.ReactNode\n | ((...args: any[]) => any)\nexport type AccordionHeaderElement =\n | string\n | React.ReactNode\n | ((...args: any[]) => any)\nexport type AccordionHeaderHeading =\n | boolean\n | string\n | React.ReactNode\n | ((...args: any[]) => any)\nexport type AccordionHeaderIcon =\n | React.ReactNode\n | ((...args: any[]) => any)\n | {\n closed?: React.ReactNode | ((...args: any[]) => any)\n expanded?: React.ReactNode | ((...args: any[]) => any)\n }\n\nexport type AccordionHeaderProps = React.HTMLProps<HTMLElement> &\n SpacingProps & {\n title?: AccordionHeaderTitle\n expanded?: boolean\n description?: AccordionHeaderDescription\n left_component?: AccordionHeaderLeftComponent\n element?: AccordionHeaderElement\n heading?: AccordionHeaderHeading\n heading_level?: HeadingLevel\n icon?: AccordionIcon\n icon_position?: AccordionIconPosition\n icon_size?: IconSize\n disabled?: boolean\n skeleton?: SkeletonShow\n no_animation?: boolean\n className?: string\n children?: string | React.ReactNode | ((...args: any[]) => any)\n }\n\nconst accordionHeaderDefaultProps = {\n icon_size: 'medium',\n}\n\nexport const AccordionHeader = ({\n icon_size: icon_size_default = 'medium',\n ...restOfProps\n}: AccordionHeaderProps) => {\n const props = { icon_size: icon_size_default, ...restOfProps }\n\n const [isHovering, setIsHovering] = useState<boolean>(false)\n const [hasClicked, setHasClicked] = useState<boolean>(false)\n\n const context = useContext(AccordionContext)\n\n function onKeyDownHandler(event: React.KeyboardEvent<HTMLElement>) {\n const keyPressed = event.key\n\n if (keyPressed === 'Enter' || keyPressed === ' ') {\n event.preventDefault()\n onClickHandler(event)\n }\n }\n\n function onClickHandler(\n event: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>\n ) {\n const { id, group } = context\n\n if (canClick()) {\n const expanded = !context.expanded\n context.callOnChange({ id, group, expanded, event })\n\n setHasClicked(true)\n }\n }\n\n function onMouseOverHandler() {\n setIsHovering(true)\n }\n\n function onMouseOutHandler() {\n setIsHovering(false)\n setHasClicked(false)\n }\n\n function canClick() {\n const { expanded, allow_close_all, group } = context\n return !group || (group && !expanded) || allow_close_all\n }\n\n const extendedProps = extendPropsWithContext(\n props,\n accordionHeaderDefaultProps,\n context as Record<string, unknown>\n )\n\n const {\n id,\n\n // 1. these props should be the same as ...\n left_component,\n expanded, // eslint-disable-line\n title,\n description,\n element,\n heading,\n heading_level,\n icon,\n icon_size,\n disabled,\n skeleton,\n no_animation,\n } = extendedProps\n\n let { icon_position } = extendedProps\n\n const {\n children,\n className,\n\n // 2. ... these\n left_component: _left_component, // eslint-disable-line\n expanded: _expanded, // eslint-disable-line\n title: _title, // eslint-disable-line\n description: _description, // eslint-disable-line\n icon: _icon, // eslint-disable-line\n icon_size: _icon_size, // eslint-disable-line\n disabled: _disabled, // eslint-disable-line\n\n ...rest\n } = props\n\n const defaultParts = [\n <AccordionHeaderIcon\n key=\"icon\"\n icon={icon}\n size={icon_size}\n expanded={context.expanded}\n icon_position={icon_position}\n />,\n <AccordionHeaderContainer key=\"container\">\n {left_component as React.ReactNode}\n </AccordionHeaderContainer>,\n <AccordionHeaderTitle key=\"title\">\n {title ||\n (Array.isArray(children)\n ? children.filter((cur) => !React.isValidElement(cur))\n : children)}\n </AccordionHeaderTitle>,\n <AccordionHeaderDescription key=\"description\">\n {description as React.ReactNode}\n </AccordionHeaderDescription>,\n ]\n\n if (Array.isArray(children)) {\n const removeParts = []\n children.forEach((cur) => {\n if (React.isValidElement(cur)) {\n const part = defaultParts.find((c) => c.type === cur.type)\n if (part) {\n removeParts.push(part)\n }\n\n // if (cur.type === AccordionHeaderTitle) {\n // defaultParts.unshift(cur)\n // } else {\n // defaultParts.push(cur)\n // }\n\n defaultParts.push(cur)\n }\n })\n removeParts.forEach((part) => {\n const index = defaultParts.findIndex((c) => c === part)\n if (index > -1) {\n defaultParts.splice(index, 1)\n }\n })\n }\n\n const partsToRender = []\n const wrapperParts = []\n const wrapperComp = (\n <span className=\"dnb-accordion__header__wrapper\" key=\"wrapper\">\n {wrapperParts}\n </span>\n )\n\n defaultParts.forEach((part) => {\n if (\n React.isValidElement(part) &&\n (part.type === AccordionHeaderTitle ||\n part.type === AccordionHeaderDescription)\n ) {\n wrapperParts.push(part)\n if (partsToRender.findIndex((c) => c === wrapperComp) === -1) {\n partsToRender.push(wrapperComp)\n }\n } else {\n partsToRender.push(part)\n }\n })\n\n // position the icon to the right, if the element is not in the beginning\n if (icon_position === undefined) {\n const iconIndex = partsToRender.findIndex(\n (c) => c.type === AccordionHeaderIcon\n )\n // because of the container at the beginning, we use 1\n if (iconIndex > 1) {\n icon_position = 'right'\n }\n\n if (left_component) {\n icon_position = 'right'\n }\n }\n\n const headerParams = {\n id: `${id}-header`,\n 'aria-controls': `${id}-content`,\n 'aria-expanded': context.expanded,\n role: 'button',\n tabIndex: 0,\n className: classnames(\n 'dnb-accordion__header',\n icon_position && `dnb-accordion__header--icon-${icon_position}`,\n isHovering && hasClicked && 'dnb-accordion--hover',\n !canClick() && 'dnb-accordion__header--prevent-click',\n description && 'dnb-accordion__header--description',\n no_animation && 'dnb-accordion__header--no-animation',\n createSkeletonClass('font', skeleton, context),\n createSpacingClasses(rest),\n className\n ),\n disabled,\n ...rest,\n } satisfies HTMLProps<HTMLElement>\n\n if (disabled || skeleton) {\n headerParams.tabIndex = -1\n headerParams.disabled = true\n headerParams['aria-disabled'] = true\n } else {\n headerParams.onClick = onClickHandler\n headerParams.onKeyDown = onKeyDownHandler\n headerParams.onMouseOver = onMouseOverHandler\n headerParams.onMouseOut = onMouseOutHandler\n }\n\n skeletonDOMAttributes(headerParams, skeleton, context)\n\n validateDOMAttributes(props, headerParams)\n\n let Element = 'div'\n\n // (String(heading) === 'true' || String(heading) === '1') extracted from isTrue function\n if (heading && (String(heading) === 'true' || String(heading) === '1')) {\n headerParams.role = 'heading'\n headerParams['aria-level'] = heading_level ? Number(heading_level) : 2\n } else if (heading) {\n headerParams.role = null\n Element = heading as string\n } else if (element) {\n headerParams.role = null\n Element = element as string\n }\n\n return <Element {...headerParams}>{partsToRender}</Element>\n}\n\nAccordionHeader.Container = AccordionHeaderContainer\nAccordionHeader.Icon = AccordionHeaderIcon\nAccordionHeader.Title = AccordionHeaderTitle\nAccordionHeader.Description = AccordionHeaderDescription\n\nAccordionHeader._supportsSpacingProps = true\n\nexport default AccordionHeader\n"],"mappings":";;;;;;;;;;;AAKA,OAAOA,KAAK,IAAeC,UAAU,EAAEC,QAAQ,QAAQ,OAAO;AAG9D,SACEC,qBAAqB,EACrBC,sBAAsB,QACjB,+BAA+B;AACtC,OAAOC,WAAW,MAAM,6BAA6B;AACrD,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,gBAAgB,MAAM,oBAAoB;AACjD,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SACEC,qBAAqB,EACrBC,mBAAmB,QACd,4BAA4B;AAWnC,SAASC,oBAAoBA,CAAAC,IAAA,EAGC;EAAA,IAHA;MAC5BC,QAAQ,GAAG;IAEc,CAAC,GAAAD,IAAA;IADvBE,IAAI,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAEP,OACEhB,KAAA,CAAAiB,aAAA;IACEC,SAAS,EAAEZ,UAAU,CACnB,8BAA8B,EAC9BE,oBAAoB,CAACM,IAAI,CAC3B;EAAE,GAEDD,QACG,CAAC;AAEX;AAMA,SAASM,0BAA0BA,CAAAC,KAAA,EAGC;EAAA,IAHA;MAClCP,QAAQ,GAAG;IAEoB,CAAC,GAAAO,KAAA;IAD7BN,IAAI,GAAAC,wBAAA,CAAAK,KAAA,EAAAC,UAAA;EAEP,OAAOR,QAAQ,GACbb,KAAA,CAAAiB,aAAA;IACEC,SAAS,EAAEZ,UAAU,CACnB,oCAAoC,EACpCE,oBAAoB,CAACM,IAAI,CAC3B;EAAE,GAEDD,QACG,CAAC,GACL,IAAI;AACV;AAMA,SAASS,wBAAwBA,CAAAC,KAAA,EAGC;EAAA,IAHA;MAChCV,QAAQ,GAAG;IAEkB,CAAC,GAAAU,KAAA;IAD3BT,IAAI,GAAAC,wBAAA,CAAAQ,KAAA,EAAAC,UAAA;EAEP,OAAOX,QAAQ,GACbb,KAAA,CAAAiB,aAAA;IACEC,SAAS,EAAEZ,UAAU,CACnB,kCAAkC,EAClCE,oBAAoB,CAACM,IAAI,CAC3B;EAAE,GAEDD,QACG,CAAC,GACL,IAAI;AACV;AAiBA,SAASY,mBAAmBA,CAAC;EAC3BC,IAAI;EACJC,QAAQ;EACRC,IAAI,GAAG,QAAQ;EACfC;AACwB,CAAC,EAAE;EAC3B,OACE7B,KAAA,CAAAiB,aAAA;IACEC,SAAS,EACP,6BAA6B,IAC7BW,aAAa,oCAAoCA,aAAc;EAC/D,GAEF7B,KAAA,CAAAiB,aAAA,CAACZ,WAAW;IACVuB,IAAI,EAAEA,IAAK;IAEXF,IAAI,EACFA,IAAI,IACJ,OAAOA,IAAI,KAAK,QAAQ,IACxB,UAAU,IAAIA,IAAI,IAClB,QAAOA,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEC,QAAQ,MAAK,WAAW,GACjCD,IAAI,CAACC,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC,GACrCD,IAAI,IACL,cACL;IACD;EAAW,CACZ,CACG,CAAC;AAEX;AAkDA,MAAMI,2BAA2B,GAAG;EAClCC,SAAS,EAAE;AACb,CAAC;AAED,OAAO,MAAMC,eAAe,GAAGC,KAAA,IAGH;EAAA,IAHI;MAC9BF,SAAS,EAAEG,iBAAiB,GAAG;IAEX,CAAC,GAAAD,KAAA;IADlBE,WAAW,GAAApB,wBAAA,CAAAkB,KAAA,EAAAG,UAAA;EAEd,MAAMC,KAAK,GAAAC,aAAA;IAAKP,SAAS,EAAEG;EAAiB,GAAKC,WAAW,CAAE;EAE9D,MAAM,CAACI,UAAU,EAAEC,aAAa,CAAC,GAAGtC,QAAQ,CAAU,KAAK,CAAC;EAC5D,MAAM,CAACuC,UAAU,EAAEC,aAAa,CAAC,GAAGxC,QAAQ,CAAU,KAAK,CAAC;EAE5D,MAAMyC,OAAO,GAAG1C,UAAU,CAACM,gBAAgB,CAAC;EAE5C,SAASqC,gBAAgBA,CAACC,KAAuC,EAAE;IACjE,MAAMC,UAAU,GAAGD,KAAK,CAACE,GAAG;IAE5B,IAAID,UAAU,KAAK,OAAO,IAAIA,UAAU,KAAK,GAAG,EAAE;MAChDD,KAAK,CAACG,cAAc,CAAC,CAAC;MACtBC,cAAc,CAACJ,KAAK,CAAC;IACvB;EACF;EAEA,SAASI,cAAcA,CACrBJ,KAAuE,EACvE;IACA,MAAM;MAAEK,EAAE;MAAEC;IAAM,CAAC,GAAGR,OAAO;IAE7B,IAAIS,QAAQ,CAAC,CAAC,EAAE;MACd,MAAMzB,QAAQ,GAAG,CAACgB,OAAO,CAAChB,QAAQ;MAClCgB,OAAO,CAACU,YAAY,CAAC;QAAEH,EAAE;QAAEC,KAAK;QAAExB,QAAQ;QAAEkB;MAAM,CAAC,CAAC;MAEpDH,aAAa,CAAC,IAAI,CAAC;IACrB;EACF;EAEA,SAASY,kBAAkBA,CAAA,EAAG;IAC5Bd,aAAa,CAAC,IAAI,CAAC;EACrB;EAEA,SAASe,iBAAiBA,CAAA,EAAG;IAC3Bf,aAAa,CAAC,KAAK,CAAC;IACpBE,aAAa,CAAC,KAAK,CAAC;EACtB;EAEA,SAASU,QAAQA,CAAA,EAAG;IAClB,MAAM;MAAEzB,QAAQ;MAAE6B,eAAe;MAAEL;IAAM,CAAC,GAAGR,OAAO;IACpD,OAAO,CAACQ,KAAK,IAAKA,KAAK,IAAI,CAACxB,QAAS,IAAI6B,eAAe;EAC1D;EAEA,MAAMC,aAAa,GAAGrD,sBAAsB,CAC1CiC,KAAK,EACLP,2BAA2B,EAC3Ba,OACF,CAAC;EAED,MAAM;IACJO,EAAE;IAGFQ,cAAc;IACd/B,QAAQ;IACRgC,KAAK;IACLC,WAAW;IACXC,OAAO;IACPC,OAAO;IACPC,aAAa;IACbrC,IAAI;IACJK,SAAS;IACTiC,QAAQ;IACRC,QAAQ;IACRC;EACF,CAAC,GAAGT,aAAa;EAEjB,IAAI;IAAE5B;EAAc,CAAC,GAAG4B,aAAa;EAErC,MAAM;MACJ5C,QAAQ;MACRK,SAAS;MAGTwC,cAAc,EAAES,eAAe;MAC/BxC,QAAQ,EAAEyC,SAAS;MACnBT,KAAK,EAAEU,MAAM;MACbT,WAAW,EAAEU,YAAY;MACzB5C,IAAI,EAAE6C,KAAK;MACXxC,SAAS,EAAEyC,UAAU;MACrBR,QAAQ,EAAES;IAGZ,CAAC,GAAGpC,KAAK;IADJvB,IAAI,GAAAC,wBAAA,CACLsB,KAAK,EAAAqC,UAAA;EAET,MAAMC,YAAY,GAAG,CACnB3E,KAAA,CAAAiB,aAAA,CAACQ,mBAAmB;IAClBsB,GAAG,EAAC,MAAM;IACVrB,IAAI,EAAEA,IAAK;IACXE,IAAI,EAAEG,SAAU;IAChBJ,QAAQ,EAAEgB,OAAO,CAAChB,QAAS;IAC3BE,aAAa,EAAEA;EAAc,CAC9B,CAAC,EACF7B,KAAA,CAAAiB,aAAA,CAACK,wBAAwB;IAACyB,GAAG,EAAC;EAAW,GACtCW,cACuB,CAAC,EAC3B1D,KAAA,CAAAiB,aAAA,CAACN,oBAAoB;IAACoC,GAAG,EAAC;EAAO,GAC9BY,KAAK,KACHiB,KAAK,CAACC,OAAO,CAAChE,QAAQ,CAAC,GACpBA,QAAQ,CAACiE,MAAM,CAAEC,GAAG,IAAK,CAAC/E,KAAK,CAACgF,cAAc,CAACD,GAAG,CAAC,CAAC,GACpDlE,QAAQ,CACM,CAAC,EACvBb,KAAA,CAAAiB,aAAA,CAACE,0BAA0B;IAAC4B,GAAG,EAAC;EAAa,GAC1Ca,WACyB,CAAC,CAC9B;EAED,IAAIgB,KAAK,CAACC,OAAO,CAAChE,QAAQ,CAAC,EAAE;IAC3B,MAAMoE,WAAW,GAAG,EAAE;IACtBpE,QAAQ,CAACqE,OAAO,CAAEH,GAAG,IAAK;MACxB,IAAI/E,KAAK,CAACgF,cAAc,CAACD,GAAG,CAAC,EAAE;QAC7B,MAAMI,IAAI,GAAGR,YAAY,CAACS,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACC,IAAI,KAAKP,GAAG,CAACO,IAAI,CAAC;QAC1D,IAAIH,IAAI,EAAE;UACRF,WAAW,CAACM,IAAI,CAACJ,IAAI,CAAC;QACxB;QAQAR,YAAY,CAACY,IAAI,CAACR,GAAG,CAAC;MACxB;IACF,CAAC,CAAC;IACFE,WAAW,CAACC,OAAO,CAAEC,IAAI,IAAK;MAC5B,MAAMK,KAAK,GAAGb,YAAY,CAACc,SAAS,CAAEJ,CAAC,IAAKA,CAAC,KAAKF,IAAI,CAAC;MACvD,IAAIK,KAAK,GAAG,CAAC,CAAC,EAAE;QACdb,YAAY,CAACe,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;MAC/B;IACF,CAAC,CAAC;EACJ;EAEA,MAAMG,aAAa,GAAG,EAAE;EACxB,MAAMC,YAAY,GAAG,EAAE;EACvB,MAAMC,WAAW,GACf7F,KAAA,CAAAiB,aAAA;IAAMC,SAAS,EAAC,gCAAgC;IAAC6B,GAAG,EAAC;EAAS,GAC3D6C,YACG,CACP;EAEDjB,YAAY,CAACO,OAAO,CAAEC,IAAI,IAAK;IAC7B,IACEnF,KAAK,CAACgF,cAAc,CAACG,IAAI,CAAC,KACzBA,IAAI,CAACG,IAAI,KAAK3E,oBAAoB,IACjCwE,IAAI,CAACG,IAAI,KAAKnE,0BAA0B,CAAC,EAC3C;MACAyE,YAAY,CAACL,IAAI,CAACJ,IAAI,CAAC;MACvB,IAAIQ,aAAa,CAACF,SAAS,CAAEJ,CAAC,IAAKA,CAAC,KAAKQ,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE;QAC5DF,aAAa,CAACJ,IAAI,CAACM,WAAW,CAAC;MACjC;IACF,CAAC,MAAM;MACLF,aAAa,CAACJ,IAAI,CAACJ,IAAI,CAAC;IAC1B;EACF,CAAC,CAAC;EAGF,IAAItD,aAAa,KAAKiE,SAAS,EAAE;IAC/B,MAAMC,SAAS,GAAGJ,aAAa,CAACF,SAAS,CACtCJ,CAAC,IAAKA,CAAC,CAACC,IAAI,KAAK7D,mBACpB,CAAC;IAED,IAAIsE,SAAS,GAAG,CAAC,EAAE;MACjBlE,aAAa,GAAG,OAAO;IACzB;IAEA,IAAI6B,cAAc,EAAE;MAClB7B,aAAa,GAAG,OAAO;IACzB;EACF;EAEA,MAAMmE,YAAY,GAAA1D,aAAA;IAChBY,EAAE,EAAG,GAAEA,EAAG,SAAQ;IAClB,eAAe,EAAG,GAAEA,EAAG,UAAS;IAChC,eAAe,EAAEP,OAAO,CAAChB,QAAQ;IACjCsE,IAAI,EAAE,QAAQ;IACdC,QAAQ,EAAE,CAAC;IACXhF,SAAS,EAAEZ,UAAU,CACnB,uBAAuB,EAMvBI,mBAAmB,CAAC,MAAM,EAAEuD,QAAQ,EAAEtB,OAAO,CAAC,EAC9CnC,oBAAoB,CAACM,IAAI,CAAC,EAC1BI,SAAS,EAPTW,aAAa,IAAK,+BAA8BA,aAAc,EAAC,EAC/DU,UAAU,IAAIE,UAAU,IAAI,sBAAsB,EAClD,CAACW,QAAQ,CAAC,CAAC,IAAI,sCAAsC,EACrDQ,WAAW,IAAI,oCAAoC,EACnDM,YAAY,IAAI,qCAIlB,CAAC;IACDF;EAAQ,GACLlD,IAAI,CACyB;EAElC,IAAIkD,QAAQ,IAAIC,QAAQ,EAAE;IACxB+B,YAAY,CAACE,QAAQ,GAAG,CAAC,CAAC;IAC1BF,YAAY,CAAChC,QAAQ,GAAG,IAAI;IAC5BgC,YAAY,CAAC,eAAe,CAAC,GAAG,IAAI;EACtC,CAAC,MAAM;IACLA,YAAY,CAACG,OAAO,GAAGlD,cAAc;IACrC+C,YAAY,CAACI,SAAS,GAAGxD,gBAAgB;IACzCoD,YAAY,CAACK,WAAW,GAAG/C,kBAAkB;IAC7C0C,YAAY,CAACM,UAAU,GAAG/C,iBAAiB;EAC7C;EAEA9C,qBAAqB,CAACuF,YAAY,EAAE/B,QAAQ,EAAEtB,OAAO,CAAC;EAEtDxC,qBAAqB,CAACkC,KAAK,EAAE2D,YAAY,CAAC;EAE1C,IAAIO,OAAO,GAAG,KAAK;EAGnB,IAAIzC,OAAO,KAAK0C,MAAM,CAAC1C,OAAO,CAAC,KAAK,MAAM,IAAI0C,MAAM,CAAC1C,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE;IACtEkC,YAAY,CAACC,IAAI,GAAG,SAAS;IAC7BD,YAAY,CAAC,YAAY,CAAC,GAAGjC,aAAa,GAAG0C,MAAM,CAAC1C,aAAa,CAAC,GAAG,CAAC;EACxE,CAAC,MAAM,IAAID,OAAO,EAAE;IAClBkC,YAAY,CAACC,IAAI,GAAG,IAAI;IACxBM,OAAO,GAAGzC,OAAiB;EAC7B,CAAC,MAAM,IAAID,OAAO,EAAE;IAClBmC,YAAY,CAACC,IAAI,GAAG,IAAI;IACxBM,OAAO,GAAG1C,OAAiB;EAC7B;EAEA,OAAO7D,KAAA,CAAAiB,aAAA,CAACsF,OAAO,EAAKP,YAAY,EAAGL,aAAuB,CAAC;AAC7D,CAAC;AAED3D,eAAe,CAAC0E,SAAS,GAAGpF,wBAAwB;AACpDU,eAAe,CAAC2E,IAAI,GAAGlF,mBAAmB;AAC1CO,eAAe,CAAC4E,KAAK,GAAGjG,oBAAoB;AAC5CqB,eAAe,CAAC6E,WAAW,GAAG1F,0BAA0B;AAExDa,eAAe,CAAC8E,qBAAqB,GAAG,IAAI;AAE5C,eAAe9E,eAAe"}
|
|
1
|
+
{"version":3,"file":"AccordionHeader.js","names":["React","useContext","useState","validateDOMAttributes","extendPropsWithContext","IconPrimary","classnames","AccordionContext","createSpacingClasses","skeletonDOMAttributes","createSkeletonClass","AccordionHeaderTitle","_ref","children","rest","_objectWithoutProperties","_excluded","createElement","className","AccordionHeaderDescription","_ref2","_excluded2","AccordionHeaderContainer","_ref3","_excluded3","AccordionHeaderIcon","icon","expanded","size","icon_position","accordionHeaderDefaultProps","icon_size","AccordionHeader","_ref4","icon_size_default","restOfProps","_excluded4","props","_objectSpread","isHovering","setIsHovering","hasClicked","setHasClicked","context","onKeyDownHandler","event","keyPressed","key","preventDefault","onClickHandler","id","group","canClick","callOnChange","onMouseOverHandler","onMouseOutHandler","allow_close_all","extendedProps","left_component","title","description","element","heading","heading_level","disabled","skeleton","no_animation","variant","_left_component","_expanded","_title","_description","_icon","_icon_size","_disabled","_excluded5","defaultParts","Array","isArray","filter","cur","isValidElement","removeParts","forEach","part","find","c","type","push","index","findIndex","splice","partsToRender","wrapperParts","wrapperComp","undefined","iconIndex","headerParams","role","tabIndex","onClick","onKeyDown","onMouseOver","onMouseOut","Element","String","Number","Container","Icon","Title","Description","_supportsSpacingProps"],"sources":["../../../../src/components/accordion/AccordionHeader.tsx"],"sourcesContent":["/**\n * Web Accordion Component\n *\n */\n\nimport React, { HTMLProps, useContext, useState } from 'react'\nimport type { SpacingProps } from '../space/types'\n\nimport {\n validateDOMAttributes,\n extendPropsWithContext,\n} from '../../shared/component-helper'\nimport IconPrimary from '../icon-primary/IconPrimary'\nimport classnames from 'classnames'\nimport AccordionContext from './AccordionContext'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\n\nimport type { HeadingLevel } from '../Heading'\nimport type { IconSize } from '../Icon'\nimport type { SkeletonShow } from '../Skeleton'\nimport type {\n AccordionIcon,\n AccordionIconPosition,\n AccordionVariant,\n} from './Accordion'\n\nexport type AccordionHeaderTitleProps = SpacingProps & {\n children?: React.ReactNode\n}\n\nfunction AccordionHeaderTitle({\n children = null,\n ...rest\n}: AccordionHeaderTitleProps) {\n return (\n <span\n className={classnames(\n 'dnb-accordion__header__title',\n createSpacingClasses(rest)\n )}\n >\n {children}\n </span>\n )\n}\n\nexport type AccordionHeaderDescriptionProps = SpacingProps & {\n children?: React.ReactNode\n}\n\nfunction AccordionHeaderDescription({\n children = null,\n ...rest\n}: AccordionHeaderDescriptionProps) {\n return children ? (\n <span\n className={classnames(\n 'dnb-accordion__header__description',\n createSpacingClasses(rest)\n )}\n >\n {children}\n </span>\n ) : null\n}\n\nexport type AccordionHeaderContainerProps = SpacingProps & {\n children?: React.ReactNode\n}\n\nfunction AccordionHeaderContainer({\n children = null,\n ...rest\n}: AccordionHeaderContainerProps) {\n return children ? (\n <span\n className={classnames(\n 'dnb-accordion__header__container',\n createSpacingClasses(rest)\n )}\n >\n {children}\n </span>\n ) : null\n}\n\ntype AccordionHeaderIconIcon =\n | React.ReactNode\n | ((...args: any[]) => React.ReactNode)\n | {\n closed?: React.ReactNode | ((...args: any[]) => React.ReactNode)\n expanded?: React.ReactNode | ((...args: any[]) => React.ReactNode)\n }\n\nexport type AccordionHeaderIconProps = {\n icon?: AccordionHeaderIconIcon\n size?: IconSize\n expanded?: boolean\n icon_position?: AccordionIconPosition\n}\n\nfunction AccordionHeaderIcon({\n icon,\n expanded,\n size = 'medium',\n icon_position,\n}: AccordionHeaderIconProps) {\n return (\n <span\n className={classnames(\n 'dnb-accordion__header__icon',\n icon_position && `dnb-accordion__header__icon--${icon_position}`\n )}\n >\n <IconPrimary\n size={size}\n // There has to be a better way than to do so much casting\n icon={\n icon &&\n typeof icon === 'object' &&\n 'expanded' in icon &&\n typeof icon?.expanded !== 'undefined'\n ? icon[expanded ? 'expanded' : 'closed']\n : (icon as React.ReactNode | ((...args: any[]) => any)) ||\n 'chevron-down'\n }\n aria-hidden\n />\n </span>\n )\n}\n\nexport type AccordionHeaderTitle =\n | string\n | React.ReactNode\n | ((...args: any[]) => any)\nexport type AccordionHeaderDescription =\n | string\n | React.ReactNode\n | ((...args: any[]) => any)\nexport type AccordionHeaderLeftComponent =\n | string\n | React.ReactNode\n | ((...args: any[]) => any)\nexport type AccordionHeaderElement =\n | string\n | React.ReactNode\n | ((...args: any[]) => any)\nexport type AccordionHeaderHeading =\n | boolean\n | string\n | React.ReactNode\n | ((...args: any[]) => any)\nexport type AccordionHeaderIcon =\n | React.ReactNode\n | ((...args: any[]) => any)\n | {\n closed?: React.ReactNode | ((...args: any[]) => any)\n expanded?: React.ReactNode | ((...args: any[]) => any)\n }\n\nexport type AccordionHeaderProps = React.HTMLProps<HTMLElement> &\n SpacingProps & {\n title?: AccordionHeaderTitle\n expanded?: boolean\n description?: AccordionHeaderDescription\n left_component?: AccordionHeaderLeftComponent\n element?: AccordionHeaderElement\n heading?: AccordionHeaderHeading\n heading_level?: HeadingLevel\n icon?: AccordionIcon\n icon_position?: AccordionIconPosition\n icon_size?: IconSize\n disabled?: boolean\n skeleton?: SkeletonShow\n no_animation?: boolean\n className?: string\n children?: string | React.ReactNode | ((...args: any[]) => any)\n variant?: AccordionVariant\n }\n\nconst accordionHeaderDefaultProps = {\n icon_size: 'medium',\n}\n\nexport const AccordionHeader = ({\n icon_size: icon_size_default = 'medium',\n ...restOfProps\n}: AccordionHeaderProps) => {\n const props = { icon_size: icon_size_default, ...restOfProps }\n\n const [isHovering, setIsHovering] = useState<boolean>(false)\n const [hasClicked, setHasClicked] = useState<boolean>(false)\n\n const context = useContext(AccordionContext)\n\n function onKeyDownHandler(event: React.KeyboardEvent<HTMLElement>) {\n const keyPressed = event.key\n\n if (keyPressed === 'Enter' || keyPressed === ' ') {\n event.preventDefault()\n onClickHandler(event)\n }\n }\n\n function onClickHandler(\n event: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>\n ) {\n const { id, group } = context\n\n if (canClick()) {\n const expanded = !context.expanded\n context.callOnChange({ id, group, expanded, event })\n\n setHasClicked(true)\n }\n }\n\n function onMouseOverHandler() {\n setIsHovering(true)\n }\n\n function onMouseOutHandler() {\n setIsHovering(false)\n setHasClicked(false)\n }\n\n function canClick() {\n const { expanded, allow_close_all, group } = context\n return !group || (group && !expanded) || allow_close_all\n }\n\n const extendedProps = extendPropsWithContext(\n props,\n accordionHeaderDefaultProps,\n context as Record<string, unknown>\n )\n\n const {\n id,\n\n // 1. these props should be the same as ...\n left_component,\n expanded, // eslint-disable-line\n title,\n description,\n element,\n heading,\n heading_level,\n icon,\n icon_size,\n disabled,\n skeleton,\n no_animation,\n variant,\n } = extendedProps\n\n let { icon_position } = extendedProps\n\n const {\n children,\n className,\n\n // 2. ... these\n left_component: _left_component, // eslint-disable-line\n expanded: _expanded, // eslint-disable-line\n title: _title, // eslint-disable-line\n description: _description, // eslint-disable-line\n icon: _icon, // eslint-disable-line\n icon_size: _icon_size, // eslint-disable-line\n disabled: _disabled, // eslint-disable-line\n\n ...rest\n } = props\n\n const defaultParts = [\n <AccordionHeaderIcon\n key=\"icon\"\n icon={icon}\n size={icon_size}\n expanded={context.expanded}\n icon_position={icon_position}\n />,\n <AccordionHeaderContainer key=\"container\">\n {left_component as React.ReactNode}\n </AccordionHeaderContainer>,\n <AccordionHeaderTitle key=\"title\">\n {title ||\n (Array.isArray(children)\n ? children.filter((cur) => !React.isValidElement(cur))\n : children)}\n </AccordionHeaderTitle>,\n <AccordionHeaderDescription key=\"description\">\n {description as React.ReactNode}\n </AccordionHeaderDescription>,\n ]\n\n if (Array.isArray(children)) {\n const removeParts = []\n children.forEach((cur) => {\n if (React.isValidElement(cur)) {\n const part = defaultParts.find((c) => c.type === cur.type)\n if (part) {\n removeParts.push(part)\n }\n\n // if (cur.type === AccordionHeaderTitle) {\n // defaultParts.unshift(cur)\n // } else {\n // defaultParts.push(cur)\n // }\n\n defaultParts.push(cur)\n }\n })\n removeParts.forEach((part) => {\n const index = defaultParts.findIndex((c) => c === part)\n if (index > -1) {\n defaultParts.splice(index, 1)\n }\n })\n }\n\n const partsToRender = []\n const wrapperParts = []\n const wrapperComp = (\n <span className=\"dnb-accordion__header__wrapper\" key=\"wrapper\">\n {wrapperParts}\n </span>\n )\n\n defaultParts.forEach((part) => {\n if (\n React.isValidElement(part) &&\n (part.type === AccordionHeaderTitle ||\n part.type === AccordionHeaderDescription)\n ) {\n wrapperParts.push(part)\n if (partsToRender.findIndex((c) => c === wrapperComp) === -1) {\n partsToRender.push(wrapperComp)\n }\n } else {\n partsToRender.push(part)\n }\n })\n\n // position the icon to the right, if the element is not in the beginning\n if (icon_position === undefined) {\n const iconIndex = partsToRender.findIndex(\n (c) => c.type === AccordionHeaderIcon\n )\n // because of the container at the beginning, we use 1\n if (iconIndex > 1) {\n icon_position = 'right'\n }\n\n if (left_component) {\n icon_position = 'right'\n }\n }\n\n const headerParams = {\n id: `${id}-header`,\n 'aria-controls': `${id}-content`,\n 'aria-expanded': context.expanded,\n role: 'button',\n tabIndex: 0,\n className: classnames(\n 'dnb-accordion__header',\n variant && `dnb-accordion__header--${variant}`,\n context.expanded && 'dnb-accordion__header--expanded',\n icon_position && `dnb-accordion__header--icon-${icon_position}`,\n isHovering &&\n hasClicked &&\n context.expanded &&\n 'dnb-accordion__header--after-click',\n !canClick() && 'dnb-accordion__header--prevent-click',\n description && 'dnb-accordion__header--description',\n no_animation && 'dnb-accordion__header--no-animation',\n createSkeletonClass('font', skeleton, context),\n createSpacingClasses(rest),\n className\n ),\n disabled,\n ...rest,\n } satisfies HTMLProps<HTMLElement>\n\n if (disabled || skeleton) {\n headerParams.tabIndex = -1\n headerParams.disabled = true\n headerParams['aria-disabled'] = true\n } else {\n headerParams.onClick = onClickHandler\n headerParams.onKeyDown = onKeyDownHandler\n headerParams.onMouseOver = onMouseOverHandler\n headerParams.onMouseOut = onMouseOutHandler\n }\n\n skeletonDOMAttributes(headerParams, skeleton, context)\n\n validateDOMAttributes(props, headerParams)\n\n let Element = 'div'\n\n // (String(heading) === 'true' || String(heading) === '1') extracted from isTrue function\n if (heading && (String(heading) === 'true' || String(heading) === '1')) {\n headerParams.role = 'heading'\n headerParams['aria-level'] = heading_level ? Number(heading_level) : 2\n } else if (heading) {\n headerParams.role = null\n Element = heading as string\n } else if (element) {\n headerParams.role = null\n Element = element as string\n }\n\n return <Element {...headerParams}>{partsToRender}</Element>\n}\n\nAccordionHeader.Container = AccordionHeaderContainer\nAccordionHeader.Icon = AccordionHeaderIcon\nAccordionHeader.Title = AccordionHeaderTitle\nAccordionHeader.Description = AccordionHeaderDescription\n\nAccordionHeader._supportsSpacingProps = true\n\nexport default AccordionHeader\n"],"mappings":"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"}
|
|
@@ -7,14 +7,16 @@
|
|
|
7
7
|
*/
|
|
8
8
|
.dnb-accordion {
|
|
9
9
|
--accordion-border-width: 0.0625rem;
|
|
10
|
-
--accordion-border-radius: 0.
|
|
10
|
+
--accordion-border-radius: 0.5rem;
|
|
11
11
|
--accordion-easing: var(--easing-default);
|
|
12
|
-
--accordion-header-margin-vertical: 1.
|
|
13
|
-
--accordion-header-margin-vertical--description:
|
|
14
|
-
--accordion-header-wrapper-margin:
|
|
12
|
+
--accordion-header-margin-vertical: 1.25rem;
|
|
13
|
+
--accordion-header-margin-vertical--description: 0.75rem;
|
|
14
|
+
--accordion-header-wrapper-margin: 1rem;
|
|
15
15
|
--accordion-header-wrapper-margin--icon-right: 1rem;
|
|
16
16
|
--accordion-header-icon-gutter: 1rem;
|
|
17
17
|
--accordion-header-icon-margin: 1rem;
|
|
18
|
+
--accordion-title-font-weight: var(--font-weight-basis);
|
|
19
|
+
--accordion-title-font-weight--expanded: var(--font-weight-medium);
|
|
18
20
|
position: relative;
|
|
19
21
|
display: flex;
|
|
20
22
|
flex-direction: column;
|
|
@@ -62,7 +64,7 @@
|
|
|
62
64
|
transition: transform 400ms var(--accordion-easing);
|
|
63
65
|
}
|
|
64
66
|
.dnb-accordion__header--description .dnb-accordion__header__icon {
|
|
65
|
-
margin-top:
|
|
67
|
+
margin-top: var(--accordion-header-margin-vertical--description);
|
|
66
68
|
}
|
|
67
69
|
.dnb-accordion__header--icon-right {
|
|
68
70
|
justify-content: space-between;
|
|
@@ -86,9 +88,15 @@
|
|
|
86
88
|
.dnb-accordion__header--icon-right .dnb-accordion__header__container + .dnb-accordion__header__wrapper {
|
|
87
89
|
margin-left: 0;
|
|
88
90
|
}
|
|
91
|
+
.dnb-accordion__header--expanded {
|
|
92
|
+
--accordion-title-font-weight: var(
|
|
93
|
+
--accordion-title-font-weight--expanded
|
|
94
|
+
);
|
|
95
|
+
}
|
|
89
96
|
.dnb-accordion__header__title {
|
|
90
97
|
font-size: var(--font-size-basis);
|
|
91
98
|
line-height: var(--line-height-basis);
|
|
99
|
+
font-weight: var(--accordion-title-font-weight);
|
|
92
100
|
}
|
|
93
101
|
.dnb-accordion__header__description {
|
|
94
102
|
font-size: var(--font-size-small);
|
|
@@ -1 +1,3 @@
|
|
|
1
|
-
.dnb-accordion{--accordion-border-width:0.0625rem;--accordion-border-radius:0.
|
|
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
|
+
--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-accordion__content.dnb-height-animation--hidden .dnb-accordion__content__inner{display:none}.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}
|
|
@@ -7,21 +7,25 @@
|
|
|
7
7
|
|
|
8
8
|
.dnb-accordion {
|
|
9
9
|
--accordion-border-width: 0.0625rem;
|
|
10
|
-
--accordion-border-radius: 0.
|
|
10
|
+
--accordion-border-radius: 0.5rem;
|
|
11
11
|
--accordion-easing: var(--easing-default);
|
|
12
12
|
|
|
13
13
|
// vertical spacing
|
|
14
|
-
--accordion-header-margin-vertical: 1.
|
|
15
|
-
--accordion-header-margin-vertical--description:
|
|
14
|
+
--accordion-header-margin-vertical: 1.25rem;
|
|
15
|
+
--accordion-header-margin-vertical--description: 0.75rem;
|
|
16
16
|
|
|
17
17
|
// wrapper
|
|
18
|
-
--accordion-header-wrapper-margin:
|
|
18
|
+
--accordion-header-wrapper-margin: 1rem;
|
|
19
19
|
--accordion-header-wrapper-margin--icon-right: 1rem;
|
|
20
20
|
|
|
21
21
|
// icon
|
|
22
22
|
--accordion-header-icon-gutter: 1rem;
|
|
23
23
|
--accordion-header-icon-margin: 1rem;
|
|
24
24
|
|
|
25
|
+
// Title
|
|
26
|
+
--accordion-title-font-weight: var(--font-weight-basis);
|
|
27
|
+
--accordion-title-font-weight--expanded: var(--font-weight-medium);
|
|
28
|
+
|
|
25
29
|
position: relative;
|
|
26
30
|
|
|
27
31
|
display: flex;
|
|
@@ -86,7 +90,7 @@
|
|
|
86
90
|
transition: transform 400ms var(--accordion-easing);
|
|
87
91
|
}
|
|
88
92
|
&--description &__icon {
|
|
89
|
-
margin-top:
|
|
93
|
+
margin-top: var(--accordion-header-margin-vertical--description);
|
|
90
94
|
}
|
|
91
95
|
&--icon-right {
|
|
92
96
|
justify-content: space-between;
|
|
@@ -111,9 +115,16 @@
|
|
|
111
115
|
margin-left: 0;
|
|
112
116
|
}
|
|
113
117
|
|
|
118
|
+
&--expanded {
|
|
119
|
+
--accordion-title-font-weight: var(
|
|
120
|
+
--accordion-title-font-weight--expanded
|
|
121
|
+
);
|
|
122
|
+
}
|
|
123
|
+
|
|
114
124
|
&__title {
|
|
115
125
|
font-size: var(--font-size-basis);
|
|
116
126
|
line-height: var(--line-height-basis);
|
|
127
|
+
font-weight: var(--accordion-title-font-weight);
|
|
117
128
|
}
|
|
118
129
|
|
|
119
130
|
&__description {
|
|
@@ -5,39 +5,29 @@
|
|
|
5
5
|
/*
|
|
6
6
|
* Utilities
|
|
7
7
|
*/
|
|
8
|
-
/*
|
|
9
|
-
* Button mixins
|
|
10
|
-
*
|
|
11
|
-
*/
|
|
12
8
|
.dnb-accordion {
|
|
13
9
|
--accordion-border-width: 0;
|
|
14
10
|
--accordion-border-radius: 0;
|
|
15
11
|
--accordion-header-margin-vertical: 1rem;
|
|
16
12
|
--accordion-header-margin-vertical--description: 0.5rem;
|
|
17
|
-
--accordion-header-wrapper-margin: 1rem;
|
|
18
13
|
--accordion-header-wrapper-margin--icon-right: calc(
|
|
19
|
-
1.5rem - var(--accordion-frame-width)
|
|
14
|
+
1.5rem - var(--sb-accordion-frame-width)
|
|
20
15
|
);
|
|
21
16
|
--accordion-header-icon-gutter: 0.5rem;
|
|
22
17
|
--accordion-header-icon-margin: calc(
|
|
23
|
-
1.5rem - var(--accordion-frame-width)
|
|
18
|
+
1.5rem - var(--sb-accordion-frame-width)
|
|
24
19
|
);
|
|
25
|
-
--accordion-frame-color: transparent;
|
|
26
|
-
--accordion-frame-
|
|
27
|
-
--accordion-frame-
|
|
28
|
-
--accordion-
|
|
29
|
-
|
|
30
|
-
--accordion-bg: transparent;
|
|
31
|
-
--accordion-bg--expanded: var(--sb-color-violet-light-4);
|
|
32
|
-
--accordion-bg--disabled: var(--sb-color-gray-light-2);
|
|
33
|
-
--accordion-content-padding-left: calc(
|
|
34
|
-
3.5rem - var(--accordion-frame-width)
|
|
20
|
+
--sb-accordion-frame-color: transparent;
|
|
21
|
+
--sb-accordion-frame-width: 0.1875rem;
|
|
22
|
+
--sb-accordion-frame-width--active: 0rem;
|
|
23
|
+
--sb-accordion-content-padding-left: calc(
|
|
24
|
+
3.5rem - var(--sb-accordion-frame-width)
|
|
35
25
|
);
|
|
36
26
|
color: var(--sb-color-text);
|
|
37
27
|
}
|
|
38
28
|
.dnb-accordion__header, .dnb-accordion__content {
|
|
39
|
-
background-color: var(--accordion-
|
|
40
|
-
border-left: var(--accordion-frame-width) solid var(--accordion-frame-color);
|
|
29
|
+
background-color: var(--sb-accordion-background, transparent);
|
|
30
|
+
border-left: var(--sb-accordion-frame-width) solid var(--sb-accordion-frame-color);
|
|
41
31
|
}
|
|
42
32
|
html:not([data-whatintent=touch]) .dnb-accordion__header.focus-visible[disabled] {
|
|
43
33
|
cursor: not-allowed;
|
|
@@ -88,8 +78,8 @@ html:not([data-whatintent=touch]) .dnb-accordion__header:hover:not([disabled]) {
|
|
|
88
78
|
--border-width: 0.0625rem;
|
|
89
79
|
box-shadow: inset 0 0 0 var(--border-width) var(--border-color);
|
|
90
80
|
--border-color: var(--sb-color-violet);
|
|
91
|
-
border-left-width: var(--accordion-frame-width--active);
|
|
92
|
-
padding-left: calc(var(--accordion-frame-width) - var(--accordion-frame-width--active));
|
|
81
|
+
border-left-width: var(--sb-accordion-frame-width--active);
|
|
82
|
+
padding-left: calc(var(--sb-accordion-frame-width) - var(--sb-accordion-frame-width--active));
|
|
93
83
|
}
|
|
94
84
|
.dnb-accordion__header__icon, .dnb-accordion__header__container {
|
|
95
85
|
color: var(--sb-color-violet);
|
|
@@ -98,8 +88,8 @@ html:not([data-whatintent=touch]) .dnb-accordion__header:hover:not([disabled]) {
|
|
|
98
88
|
--accordion-header-icon-margin: 1.5rem;
|
|
99
89
|
}
|
|
100
90
|
.dnb-accordion__header--icon-right + .dnb-accordion__content {
|
|
101
|
-
--accordion-content-padding-left: calc(
|
|
102
|
-
1.5rem - var(--accordion-frame-width)
|
|
91
|
+
--sb-accordion-content-padding-left: calc(
|
|
92
|
+
1.5rem - var(--sb-accordion-frame-width)
|
|
103
93
|
);
|
|
104
94
|
}
|
|
105
95
|
.dnb-accordion__header[disabled] * {
|
|
@@ -107,18 +97,15 @@ html:not([data-whatintent=touch]) .dnb-accordion__header:hover:not([disabled]) {
|
|
|
107
97
|
}
|
|
108
98
|
.dnb-accordion__content__inner {
|
|
109
99
|
margin-top: 0;
|
|
110
|
-
padding: 0 1rem 1rem var(--accordion-content-padding-left);
|
|
100
|
+
padding: 0 1rem 1rem var(--sb-accordion-content-padding-left);
|
|
111
101
|
}
|
|
112
102
|
.dnb-accordion--expanded {
|
|
113
|
-
--accordion-
|
|
114
|
-
--accordion-frame-color: var(--
|
|
115
|
-
--accordion-frame-width--active: 0.125rem;
|
|
116
|
-
}
|
|
117
|
-
.dnb-accordion--expanded > .dnb-accordion__header {
|
|
118
|
-
font-weight: var(--font-weight-medium);
|
|
103
|
+
--sb-accordion-background: var(--sb-color-violet-light-4);
|
|
104
|
+
--sb-accordion-frame-color: var(--sb-color-violet);
|
|
105
|
+
--sb-accordion-frame-width--active: 0.125rem;
|
|
119
106
|
}
|
|
120
107
|
.dnb-accordion--expanded > .dnb-accordion__header[disabled],
|
|
121
108
|
.dnb-accordion--expanded > .dnb-accordion__header[disabled] + .dnb-accordion__content {
|
|
122
|
-
--accordion-
|
|
123
|
-
--accordion-frame-color: var(--
|
|
109
|
+
--sb-accordion-background: var(--sb-color-gray-light-2);
|
|
110
|
+
--sb-accordion-frame-color: var(--sb-color-gray-dark-2);
|
|
124
111
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.dnb-accordion{--accordion-border-width:0;--accordion-border-radius:0;--accordion-header-margin-vertical:1rem;--accordion-header-margin-vertical--description:0.5rem;--accordion-header-wrapper-margin
|
|
1
|
+
.dnb-accordion{--accordion-border-width:0;--accordion-border-radius:0;--accordion-header-margin-vertical:1rem;--accordion-header-margin-vertical--description:0.5rem;--accordion-header-wrapper-margin--icon-right:calc(1.5rem - var(--sb-accordion-frame-width));--accordion-header-icon-gutter:0.5rem;--accordion-header-icon-margin:calc(1.5rem - var(--sb-accordion-frame-width));--sb-accordion-frame-color:transparent;--sb-accordion-frame-width:0.1875rem;--sb-accordion-frame-width--active:0rem;--sb-accordion-content-padding-left:calc(3.5rem - var(--sb-accordion-frame-width));color:var(--sb-color-text)}.dnb-accordion__content,.dnb-accordion__header{background-color:var(--sb-accordion-background,transparent);border-left:var(--sb-accordion-frame-width) solid var(--sb-accordion-frame-color)}html:not([data-whatintent=touch]) .dnb-accordion__header.focus-visible[disabled]{cursor:not-allowed}html:not([data-whatintent=touch]) .dnb-accordion__header:focus-visible[disabled]{cursor:not-allowed}html:not([data-whatintent=touch]) .dnb-accordion__header.focus-visible:not([disabled]){--border-color:var(--focus-ring-color);--border-width:var(--focus-ring-width);background-color:var(--sb-color-blue-light-3);border-color:transparent;border-radius:.125rem;box-shadow:0 0 0 var(--border-width) var(--border-color);color:var(--border-color);outline:none;z-index:1}html:not([data-whatintent=touch]) .dnb-accordion__header:focus-visible:not([disabled]){--border-color:var(--focus-ring-color);--border-width:var(--focus-ring-width);background-color:var(--sb-color-blue-light-3);border-color:transparent;border-radius:.125rem;box-shadow:0 0 0 var(--border-width) var(--border-color);color:var(--border-color);outline:none;z-index:1}html:not([data-whatintent=touch]) .dnb-accordion__header.focus-visible:not([disabled]) .dnb-accordion__header__icon{color:var(--border-color)}html:not([data-whatintent=touch]) .dnb-accordion__header:focus-visible:not([disabled]) .dnb-accordion__header__icon{color:var(--border-color)}html:not([data-whatintent=touch]) .dnb-accordion__header:hover[disabled]{cursor:not-allowed}html:not([data-whatintent=touch]) .dnb-accordion__header:hover:not([disabled]){background-color:var(--sb-color-violet-light-2)}.dnb-accordion__header:active[disabled],html:not([data-whatintent=touch]) .dnb-accordion__header:active[disabled]{cursor:not-allowed}.dnb-accordion__header:active:not([disabled]),html:not([data-whatintent=touch]) .dnb-accordion__header:active:not([disabled]){--border-color: ;--border-width:0.0625rem;--border-color:var(--sb-color-violet);background-color:var(--sb-color-white);border-left-width:var(--sb-accordion-frame-width--active);box-shadow:inset 0 0 0 var(--border-width) var(--border-color);padding-left:calc(var(--sb-accordion-frame-width) - var(--sb-accordion-frame-width--active))}.dnb-accordion__header__container,.dnb-accordion__header__icon{color:var(--sb-color-violet)}.dnb-accordion__header--icon-right{--accordion-header-icon-margin:1.5rem}.dnb-accordion__header--icon-right+.dnb-accordion__content{--sb-accordion-content-padding-left:calc(1.5rem - var(--sb-accordion-frame-width))}.dnb-accordion__header[disabled] *{color:var(--sb-color-gray-dark-2)}.dnb-accordion__content__inner{margin-top:0;padding:0 1rem 1rem var(--sb-accordion-content-padding-left)}.dnb-accordion--expanded{--sb-accordion-background:var(--sb-color-violet-light-4);--sb-accordion-frame-color:var(--sb-color-violet);--sb-accordion-frame-width--active:0.125rem}.dnb-accordion--expanded>.dnb-accordion__header[disabled],.dnb-accordion--expanded>.dnb-accordion__header[disabled]+.dnb-accordion__content{--sb-accordion-background:var(--sb-color-gray-light-2);--sb-accordion-frame-color:var(--sb-color-gray-dark-2)}
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
@import '../../../../style/core/utilities.scss';
|
|
7
|
-
@import '../../../button/style/themes/button-mixins.scss';
|
|
8
7
|
|
|
9
8
|
.dnb-accordion {
|
|
10
9
|
--accordion-border-width: 0;
|
|
@@ -15,41 +14,33 @@
|
|
|
15
14
|
--accordion-header-margin-vertical--description: 0.5rem;
|
|
16
15
|
|
|
17
16
|
// header
|
|
18
|
-
--accordion-header-wrapper-margin: 1rem;
|
|
19
17
|
--accordion-header-wrapper-margin--icon-right: calc(
|
|
20
|
-
1.5rem - var(--accordion-frame-width)
|
|
18
|
+
1.5rem - var(--sb-accordion-frame-width)
|
|
21
19
|
);
|
|
22
20
|
|
|
23
21
|
// icon
|
|
24
22
|
--accordion-header-icon-gutter: 0.5rem;
|
|
25
23
|
--accordion-header-icon-margin: calc(
|
|
26
|
-
1.5rem - var(--accordion-frame-width)
|
|
24
|
+
1.5rem - var(--sb-accordion-frame-width)
|
|
27
25
|
);
|
|
28
26
|
|
|
29
27
|
// frame (left border on expand)
|
|
30
|
-
--accordion-frame-color: transparent;
|
|
31
|
-
--accordion-frame-
|
|
32
|
-
--accordion-frame-
|
|
33
|
-
--accordion-frame-width: 0.1875rem;
|
|
34
|
-
--accordion-frame-width--active: 0rem;
|
|
35
|
-
|
|
36
|
-
// background
|
|
37
|
-
--accordion-bg: transparent;
|
|
38
|
-
--accordion-bg--expanded: var(--sb-color-violet-light-4);
|
|
39
|
-
--accordion-bg--disabled: var(--sb-color-gray-light-2);
|
|
28
|
+
--sb-accordion-frame-color: transparent;
|
|
29
|
+
--sb-accordion-frame-width: 0.1875rem;
|
|
30
|
+
--sb-accordion-frame-width--active: 0rem;
|
|
40
31
|
|
|
41
32
|
// other
|
|
42
|
-
--accordion-content-padding-left: calc(
|
|
43
|
-
3.5rem - var(--accordion-frame-width)
|
|
33
|
+
--sb-accordion-content-padding-left: calc(
|
|
34
|
+
3.5rem - var(--sb-accordion-frame-width)
|
|
44
35
|
);
|
|
45
36
|
|
|
46
37
|
color: var(--sb-color-text);
|
|
47
38
|
|
|
48
39
|
&__header,
|
|
49
40
|
&__content {
|
|
50
|
-
background-color: var(--accordion-
|
|
51
|
-
border-left: var(--accordion-frame-width) solid
|
|
52
|
-
var(--accordion-frame-color);
|
|
41
|
+
background-color: var(--sb-accordion-background, transparent);
|
|
42
|
+
border-left: var(--sb-accordion-frame-width) solid
|
|
43
|
+
var(--sb-accordion-frame-color);
|
|
53
44
|
}
|
|
54
45
|
|
|
55
46
|
&__header {
|
|
@@ -73,9 +64,11 @@
|
|
|
73
64
|
@include fakeBorder(null, null, inset);
|
|
74
65
|
// must be set after fakeBorder()
|
|
75
66
|
--border-color: var(--sb-color-violet);
|
|
76
|
-
border-left-width: var(--accordion-frame-width--active);
|
|
67
|
+
border-left-width: var(--sb-accordion-frame-width--active);
|
|
77
68
|
padding-left: calc(
|
|
78
|
-
var(--accordion-frame-width) - var(
|
|
69
|
+
var(--sb-accordion-frame-width) - var(
|
|
70
|
+
--sb-accordion-frame-width--active
|
|
71
|
+
)
|
|
79
72
|
);
|
|
80
73
|
}
|
|
81
74
|
|
|
@@ -87,8 +80,8 @@
|
|
|
87
80
|
&--icon-right {
|
|
88
81
|
--accordion-header-icon-margin: 1.5rem;
|
|
89
82
|
+ .dnb-accordion__content {
|
|
90
|
-
--accordion-content-padding-left: calc(
|
|
91
|
-
1.5rem - var(--accordion-frame-width)
|
|
83
|
+
--sb-accordion-content-padding-left: calc(
|
|
84
|
+
1.5rem - var(--sb-accordion-frame-width)
|
|
92
85
|
);
|
|
93
86
|
}
|
|
94
87
|
}
|
|
@@ -103,23 +96,19 @@
|
|
|
103
96
|
|
|
104
97
|
&__content__inner {
|
|
105
98
|
margin-top: 0;
|
|
106
|
-
padding: 0 1rem 1rem var(--accordion-content-padding-left);
|
|
99
|
+
padding: 0 1rem 1rem var(--sb-accordion-content-padding-left);
|
|
107
100
|
}
|
|
108
101
|
|
|
109
102
|
&--expanded {
|
|
110
|
-
--accordion-
|
|
111
|
-
--accordion-frame-color: var(--
|
|
112
|
-
--accordion-frame-width--active: 0.125rem;
|
|
113
|
-
|
|
114
|
-
> .dnb-accordion__header {
|
|
115
|
-
font-weight: var(--font-weight-medium);
|
|
116
|
-
}
|
|
103
|
+
--sb-accordion-background: var(--sb-color-violet-light-4);
|
|
104
|
+
--sb-accordion-frame-color: var(--sb-color-violet);
|
|
105
|
+
--sb-accordion-frame-width--active: 0.125rem;
|
|
117
106
|
|
|
118
107
|
// disabled
|
|
119
108
|
> .dnb-accordion__header[disabled],
|
|
120
109
|
> .dnb-accordion__header[disabled] + .dnb-accordion__content {
|
|
121
|
-
--accordion-
|
|
122
|
-
--accordion-frame-color: var(--
|
|
110
|
+
--sb-accordion-background: var(--sb-color-gray-light-2);
|
|
111
|
+
--sb-accordion-frame-color: var(--sb-color-gray-dark-2);
|
|
123
112
|
}
|
|
124
113
|
}
|
|
125
114
|
}
|