@dnb/eufemia 10.4.2 → 10.6.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 +37 -0
- package/cjs/components/accordion/Accordion.d.ts +240 -136
- package/cjs/components/accordion/Accordion.js +217 -252
- package/cjs/components/accordion/Accordion.js.map +1 -1
- package/cjs/components/accordion/AccordionContent.d.ts +12 -14
- package/cjs/components/accordion/AccordionContent.js +3 -15
- package/cjs/components/accordion/AccordionContent.js.map +1 -1
- package/cjs/components/accordion/AccordionContext.d.ts +17 -2
- package/cjs/components/accordion/AccordionContext.js.map +1 -1
- package/cjs/components/accordion/AccordionGroup.d.ts +10 -12
- package/cjs/components/accordion/AccordionGroup.js +63 -72
- package/cjs/components/accordion/AccordionGroup.js.map +1 -1
- package/cjs/components/accordion/AccordionHeader.d.ts +62 -92
- package/cjs/components/accordion/AccordionHeader.js +178 -251
- package/cjs/components/accordion/AccordionHeader.js.map +1 -1
- package/cjs/components/accordion/AccordionProviderContext.d.ts +16 -2
- package/cjs/components/accordion/AccordionProviderContext.js.map +1 -1
- package/cjs/components/accordion/AccordionStore.d.ts +7 -6
- package/cjs/components/accordion/AccordionStore.js +1 -1
- package/cjs/components/accordion/AccordionStore.js.map +1 -1
- package/cjs/components/accordion/defaultProps.d.ts +2 -0
- package/cjs/components/accordion/defaultProps.js +12 -0
- package/cjs/components/accordion/defaultProps.js.map +1 -0
- package/cjs/components/anchor/style/anchor-mixins.scss +26 -27
- package/cjs/components/anchor/style/dnb-anchor.css +27 -16
- package/cjs/components/anchor/style/dnb-anchor.min.css +1 -1
- package/cjs/components/anchor/style/dnb-anchor.scss +1 -1
- package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +97 -44
- package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
- package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +48 -22
- package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.css +20 -10
- package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
- package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.scss +4 -9
- package/cjs/components/autocomplete/Autocomplete.js +2 -2
- package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/button/style/themes/button-mixins.scss +23 -4
- package/cjs/components/button/style/themes/dnb-button-theme-sbanken.css +80 -82
- package/cjs/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -1
- package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +82 -54
- package/cjs/components/date-picker/DatePicker.js.map +1 -1
- package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
- package/cjs/components/dialog/Dialog.d.ts +1 -1
- package/cjs/components/dialog/DialogContent.d.ts +1 -1
- package/cjs/components/dialog/DialogContent.js +4 -2
- package/cjs/components/dialog/DialogContent.js.map +1 -1
- package/cjs/components/dialog/parts/DialogAction.d.ts +5 -1
- package/cjs/components/dialog/parts/DialogAction.js +3 -2
- package/cjs/components/dialog/parts/DialogAction.js.map +1 -1
- package/cjs/components/form-row/FormRow.js.map +1 -1
- package/cjs/components/form-row/style/dnb-form-row.scss +2 -2
- package/cjs/components/form-set/FormSet.js.map +1 -1
- package/cjs/components/height-animation/HeightAnimation.d.ts +1 -1
- package/cjs/components/height-animation/HeightAnimation.js.map +1 -1
- package/cjs/components/height-animation/useHeightAnimation.js.map +1 -1
- package/cjs/components/icon/lib/SvgComparison.js.map +1 -1
- package/cjs/components/input/style/dnb-input.css +5 -0
- package/cjs/components/input/style/dnb-input.min.css +1 -1
- package/cjs/components/input/style/dnb-input.scss +7 -1
- package/cjs/components/input/style/themes/dnb-input-theme-sbanken.css +104 -0
- package/cjs/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -0
- package/cjs/components/input/style/themes/dnb-input-theme-sbanken.scss +126 -0
- package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
- package/cjs/components/input-masked/TextMask.js.map +1 -1
- package/cjs/components/modal/Modal.js +0 -2
- package/cjs/components/modal/Modal.js.map +1 -1
- package/cjs/components/modal/bodyScrollLock.js.map +1 -1
- package/cjs/components/number-format/NumberUtils.js +8 -6
- package/cjs/components/number-format/NumberUtils.js.map +1 -1
- package/cjs/components/number-format/style/dnb-number-format.css +0 -7
- package/cjs/components/number-format/style/dnb-number-format.scss +0 -1
- package/cjs/components/pagination/PaginationInfinity.js.map +1 -1
- package/cjs/components/radio/Radio.js.map +1 -1
- package/cjs/components/section/style/themes/dnb-section-theme-ui.css +14 -7
- package/cjs/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
- package/cjs/components/slider/hooks/useSliderEvents.js.map +1 -1
- package/cjs/components/slider/types.d.ts +1 -1
- package/cjs/components/slider/types.js.map +1 -1
- package/cjs/components/space/Space.d.ts +2 -2
- package/cjs/components/space/SpacingHelper.js.map +1 -1
- package/cjs/components/step-indicator/StepIndicatorProps.d.ts +1 -1
- package/cjs/components/table/TableAccordion.js.map +1 -1
- package/cjs/components/table/TableTr.js.map +1 -1
- package/cjs/components/textarea/Textarea.js.map +1 -1
- package/cjs/components/textarea/style/dnb-textarea.css +39 -1
- package/cjs/components/textarea/style/dnb-textarea.min.css +1 -1
- package/cjs/components/textarea/style/dnb-textarea.scss +20 -1
- package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +61 -0
- package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -0
- package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +72 -0
- package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.css +0 -41
- package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
- package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.scss +0 -22
- package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
- package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
- package/cjs/components/tooltip/TooltipContainer.js.map +1 -1
- package/cjs/components/upload/Upload.js +2 -2
- package/cjs/components/upload/Upload.js.map +1 -1
- package/cjs/components/upload/useUpload.d.ts +1 -1
- package/cjs/components/upload/useUpload.js +2 -2
- package/cjs/components/upload/useUpload.js.map +1 -1
- package/cjs/elements/blockquote/Blockquote.d.ts +1 -1
- package/cjs/elements/blockquote/Blockquote.js.map +1 -1
- package/cjs/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +0 -2
- package/cjs/extensions/forms/DataContext/At.d.ts +13 -0
- package/cjs/extensions/forms/DataContext/At.js +60 -0
- package/cjs/extensions/forms/DataContext/At.js.map +1 -0
- package/cjs/extensions/forms/DataContext/Context.d.ts +19 -0
- package/cjs/extensions/forms/DataContext/Context.js +25 -0
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -0
- package/cjs/extensions/forms/DataContext/Provider.d.ts +19 -0
- package/cjs/extensions/forms/DataContext/Provider.js +112 -0
- package/cjs/extensions/forms/DataContext/Provider.js.map +1 -0
- package/cjs/extensions/forms/DataContext/SubmitButton.d.ts +9 -0
- package/cjs/extensions/forms/DataContext/SubmitButton.js +30 -0
- package/cjs/extensions/forms/DataContext/SubmitButton.js.map +1 -0
- package/cjs/extensions/forms/DataContext/index.d.ts +13 -0
- package/cjs/extensions/forms/DataContext/index.js +20 -0
- package/cjs/extensions/forms/DataContext/index.js.map +1 -0
- package/cjs/extensions/forms/Field/ArraySelection.d.ts +12 -0
- package/cjs/extensions/forms/Field/ArraySelection.js +68 -0
- package/cjs/extensions/forms/Field/ArraySelection.js.map +1 -0
- package/cjs/extensions/forms/Field/BankAccountNumber.d.ts +10 -0
- package/cjs/extensions/forms/Field/BankAccountNumber.js +40 -0
- package/cjs/extensions/forms/Field/BankAccountNumber.js.map +1 -0
- package/cjs/extensions/forms/Field/Boolean.d.ts +10 -0
- package/cjs/extensions/forms/Field/Boolean.js +34 -0
- package/cjs/extensions/forms/Field/Boolean.js.map +1 -0
- package/cjs/extensions/forms/Field/Currency.d.ts +10 -0
- package/cjs/extensions/forms/Field/Currency.js +61 -0
- package/cjs/extensions/forms/Field/Currency.js.map +1 -0
- package/cjs/extensions/forms/Field/Date.d.ts +8 -0
- package/cjs/extensions/forms/Field/Date.js +59 -0
- package/cjs/extensions/forms/Field/Date.js.map +1 -0
- package/cjs/extensions/forms/Field/Email.d.ts +7 -0
- package/cjs/extensions/forms/Field/Email.js +34 -0
- package/cjs/extensions/forms/Field/Email.js.map +1 -0
- package/cjs/extensions/forms/Field/FirstName.d.ts +7 -0
- package/cjs/extensions/forms/Field/FirstName.js +31 -0
- package/cjs/extensions/forms/Field/FirstName.js.map +1 -0
- package/cjs/extensions/forms/Field/LastName.d.ts +7 -0
- package/cjs/extensions/forms/Field/LastName.js +31 -0
- package/cjs/extensions/forms/Field/LastName.js.map +1 -0
- package/cjs/extensions/forms/Field/NationalIdentityNumber.d.ts +10 -0
- package/cjs/extensions/forms/Field/NationalIdentityNumber.js +39 -0
- package/cjs/extensions/forms/Field/NationalIdentityNumber.js.map +1 -0
- package/cjs/extensions/forms/Field/Number.d.ts +31 -0
- package/cjs/extensions/forms/Field/Number.js +111 -0
- package/cjs/extensions/forms/Field/Number.js.map +1 -0
- package/cjs/extensions/forms/Field/Option.d.ts +9 -0
- package/cjs/extensions/forms/Field/Option.js +22 -0
- package/cjs/extensions/forms/Field/Option.js.map +1 -0
- package/cjs/extensions/forms/Field/OrganizationNumber.d.ts +10 -0
- package/cjs/extensions/forms/Field/OrganizationNumber.js +40 -0
- package/cjs/extensions/forms/Field/OrganizationNumber.js.map +1 -0
- package/cjs/extensions/forms/Field/PhoneNumber.d.ts +12 -0
- package/cjs/extensions/forms/Field/PhoneNumber.js +101 -0
- package/cjs/extensions/forms/Field/PhoneNumber.js.map +1 -0
- package/cjs/extensions/forms/Field/PostalCodeAndCity.d.ts +10 -0
- package/cjs/extensions/forms/Field/PostalCodeAndCity.js +59 -0
- package/cjs/extensions/forms/Field/PostalCodeAndCity.js.map +1 -0
- package/cjs/extensions/forms/Field/SelectCountry.d.ts +7 -0
- package/cjs/extensions/forms/Field/SelectCountry.js +38 -0
- package/cjs/extensions/forms/Field/SelectCountry.js.map +1 -0
- package/cjs/extensions/forms/Field/Selection.d.ts +13 -0
- package/cjs/extensions/forms/Field/Selection.js +120 -0
- package/cjs/extensions/forms/Field/Selection.js.map +1 -0
- package/cjs/extensions/forms/Field/String.d.ts +32 -0
- package/cjs/extensions/forms/Field/String.js +135 -0
- package/cjs/extensions/forms/Field/String.js.map +1 -0
- package/cjs/extensions/forms/Field/Toggle.d.ts +14 -0
- package/cjs/extensions/forms/Field/Toggle.js +129 -0
- package/cjs/extensions/forms/Field/Toggle.js.map +1 -0
- package/cjs/extensions/forms/Field/fields.scss +2 -0
- package/cjs/extensions/forms/Field/hooks/index.d.ts +1 -0
- package/cjs/extensions/forms/Field/hooks/index.js +14 -0
- package/cjs/extensions/forms/Field/hooks/index.js.map +1 -0
- package/cjs/extensions/forms/Field/hooks/useField.d.ts +11 -0
- package/cjs/extensions/forms/Field/hooks/useField.js +163 -0
- package/cjs/extensions/forms/Field/hooks/useField.js.map +1 -0
- package/cjs/extensions/forms/Field/index.d.ts +39 -0
- package/cjs/extensions/forms/Field/index.js +48 -0
- package/cjs/extensions/forms/Field/index.js.map +1 -0
- package/cjs/extensions/forms/Field/style/dnb-number.css +11 -0
- package/cjs/extensions/forms/Field/style/dnb-number.min.css +1 -0
- package/cjs/extensions/forms/Field/style/dnb-number.scss +19 -0
- package/cjs/extensions/forms/Field/style/dnb-phone-number.css +23 -0
- package/cjs/extensions/forms/Field/style/dnb-phone-number.min.css +1 -0
- package/cjs/extensions/forms/Field/style/dnb-phone-number.scss +28 -0
- package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.css +19 -0
- package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -0
- package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.scss +25 -0
- package/cjs/extensions/forms/Field/style/dnb-selection.css +6 -0
- package/cjs/extensions/forms/Field/style/dnb-selection.min.css +1 -0
- package/cjs/extensions/forms/Field/style/dnb-selection.scss +15 -0
- package/cjs/extensions/forms/Field/style/dnb-string.css +11 -0
- package/cjs/extensions/forms/Field/style/dnb-string.min.css +1 -0
- package/cjs/extensions/forms/Field/style/dnb-string.scss +19 -0
- package/cjs/extensions/forms/Field/style/index.d.ts +6 -0
- package/cjs/extensions/forms/Field/style/index.js +5 -0
- package/cjs/extensions/forms/Field/style/index.js.map +1 -0
- package/cjs/extensions/forms/Field/style/index.scss +5 -0
- package/cjs/extensions/forms/Field/style.d.ts +5 -0
- package/cjs/extensions/forms/Field/style.js +4 -0
- package/cjs/extensions/forms/Field/style.js.map +1 -0
- package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +12 -0
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js +77 -0
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -0
- package/cjs/extensions/forms/FieldBlock/index.d.ts +1 -0
- package/cjs/extensions/forms/FieldBlock/index.js +14 -0
- package/cjs/extensions/forms/FieldBlock/index.js.map +1 -0
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +15 -0
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -0
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +19 -0
- package/cjs/extensions/forms/FieldBlock/style/index.d.ts +5 -0
- package/cjs/extensions/forms/FieldBlock/style/index.js +4 -0
- package/cjs/extensions/forms/FieldBlock/style/index.js.map +1 -0
- package/cjs/extensions/forms/FieldBlock/style.d.ts +5 -0
- package/cjs/extensions/forms/FieldBlock/style.js +4 -0
- package/cjs/extensions/forms/FieldBlock/style.js.map +1 -0
- package/cjs/extensions/forms/FieldGroup/FieldGroup.d.ts +17 -0
- package/cjs/extensions/forms/FieldGroup/FieldGroup.js +95 -0
- package/cjs/extensions/forms/FieldGroup/FieldGroup.js.map +1 -0
- package/cjs/extensions/forms/FieldGroup/index.d.ts +2 -0
- package/cjs/extensions/forms/FieldGroup/index.js +27 -0
- package/cjs/extensions/forms/FieldGroup/index.js.map +1 -0
- package/cjs/extensions/forms/Forms.d.ts +3 -0
- package/cjs/extensions/forms/Forms.js +22 -0
- package/cjs/extensions/forms/Forms.js.map +1 -0
- package/cjs/extensions/forms/Layout/ButtonRow.d.ts +10 -0
- package/cjs/extensions/forms/Layout/ButtonRow.js +25 -0
- package/cjs/extensions/forms/Layout/ButtonRow.js.map +1 -0
- package/cjs/extensions/forms/Layout/Card.d.ts +14 -0
- package/cjs/extensions/forms/Layout/Card.js +45 -0
- package/cjs/extensions/forms/Layout/Card.js.map +1 -0
- package/cjs/extensions/forms/Layout/Column.d.ts +7 -0
- package/cjs/extensions/forms/Layout/Column.js +26 -0
- package/cjs/extensions/forms/Layout/Column.js.map +1 -0
- package/cjs/extensions/forms/Layout/FlexContainer.d.ts +23 -0
- package/cjs/extensions/forms/Layout/FlexContainer.js +104 -0
- package/cjs/extensions/forms/Layout/FlexContainer.js.map +1 -0
- package/cjs/extensions/forms/Layout/FlexItem.d.ts +12 -0
- package/cjs/extensions/forms/Layout/FlexItem.js +28 -0
- package/cjs/extensions/forms/Layout/FlexItem.js.map +1 -0
- package/cjs/extensions/forms/Layout/InfoCardSection.d.ts +8 -0
- package/cjs/extensions/forms/Layout/InfoCardSection.js +25 -0
- package/cjs/extensions/forms/Layout/InfoCardSection.js.map +1 -0
- package/cjs/extensions/forms/Layout/MainHeading.d.ts +10 -0
- package/cjs/extensions/forms/Layout/MainHeading.js +27 -0
- package/cjs/extensions/forms/Layout/MainHeading.js.map +1 -0
- package/cjs/extensions/forms/Layout/Row.d.ts +7 -0
- package/cjs/extensions/forms/Layout/Row.js +26 -0
- package/cjs/extensions/forms/Layout/Row.js.map +1 -0
- package/cjs/extensions/forms/Layout/Section.d.ts +13 -0
- package/cjs/extensions/forms/Layout/Section.js +29 -0
- package/cjs/extensions/forms/Layout/Section.js.map +1 -0
- package/cjs/extensions/forms/Layout/SubHeading.d.ts +10 -0
- package/cjs/extensions/forms/Layout/SubHeading.js +26 -0
- package/cjs/extensions/forms/Layout/SubHeading.js.map +1 -0
- package/cjs/extensions/forms/Layout/index.d.ts +23 -0
- package/cjs/extensions/forms/Layout/index.js +32 -0
- package/cjs/extensions/forms/Layout/index.js.map +1 -0
- package/cjs/extensions/forms/Layout/style/dnb-button-row.css +7 -0
- package/cjs/extensions/forms/Layout/style/dnb-button-row.min.css +1 -0
- package/cjs/extensions/forms/Layout/style/dnb-button-row.scss +5 -0
- package/cjs/extensions/forms/Layout/style/dnb-card.css +13 -0
- package/cjs/extensions/forms/Layout/style/dnb-card.min.css +1 -0
- package/cjs/extensions/forms/Layout/style/dnb-card.scss +15 -0
- package/cjs/extensions/forms/Layout/style/dnb-flex-container.css +63 -0
- package/cjs/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -0
- package/cjs/extensions/forms/Layout/style/dnb-flex-container.scss +84 -0
- package/cjs/extensions/forms/Layout/style/dnb-flex-item.css +6 -0
- package/cjs/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -0
- package/cjs/extensions/forms/Layout/style/dnb-flex-item.scss +9 -0
- package/cjs/extensions/forms/Layout/style/dnb-section.css +3 -0
- package/cjs/extensions/forms/Layout/style/dnb-section.min.css +1 -0
- package/cjs/extensions/forms/Layout/style/dnb-section.scss +3 -0
- package/cjs/extensions/forms/Layout/style/index.d.ts +9 -0
- package/cjs/extensions/forms/Layout/style/index.js +8 -0
- package/cjs/extensions/forms/Layout/style/index.js.map +1 -0
- package/cjs/extensions/forms/Layout/style/index.scss +5 -0
- package/cjs/extensions/forms/Layout/style.d.ts +5 -0
- package/cjs/extensions/forms/Layout/style.js +4 -0
- package/cjs/extensions/forms/Layout/style.js.map +1 -0
- package/cjs/extensions/forms/StepsLayout/Buttons.d.ts +9 -0
- package/cjs/extensions/forms/StepsLayout/Buttons.js +27 -0
- package/cjs/extensions/forms/StepsLayout/Buttons.js.map +1 -0
- package/cjs/extensions/forms/StepsLayout/NextButton.d.ts +10 -0
- package/cjs/extensions/forms/StepsLayout/NextButton.js +37 -0
- package/cjs/extensions/forms/StepsLayout/NextButton.js.map +1 -0
- package/cjs/extensions/forms/StepsLayout/PreviousButton.d.ts +10 -0
- package/cjs/extensions/forms/StepsLayout/PreviousButton.js +37 -0
- package/cjs/extensions/forms/StepsLayout/PreviousButton.js.map +1 -0
- package/cjs/extensions/forms/StepsLayout/Step.d.ts +15 -0
- package/cjs/extensions/forms/StepsLayout/Step.js +37 -0
- package/cjs/extensions/forms/StepsLayout/Step.js.map +1 -0
- package/cjs/extensions/forms/StepsLayout/StepsContext.d.ts +8 -0
- package/cjs/extensions/forms/StepsLayout/StepsContext.js +12 -0
- package/cjs/extensions/forms/StepsLayout/StepsContext.js.map +1 -0
- package/cjs/extensions/forms/StepsLayout/StepsLayout.d.ts +19 -0
- package/cjs/extensions/forms/StepsLayout/StepsLayout.js +116 -0
- package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -0
- package/cjs/extensions/forms/StepsLayout/index.d.ts +3 -0
- package/cjs/extensions/forms/StepsLayout/index.js +18 -0
- package/cjs/extensions/forms/StepsLayout/index.js.map +1 -0
- package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css +25 -0
- package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -0
- package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +23 -0
- package/cjs/extensions/forms/StepsLayout/style/index.d.ts +5 -0
- package/cjs/extensions/forms/StepsLayout/style/index.js +4 -0
- package/cjs/extensions/forms/StepsLayout/style/index.js.map +1 -0
- package/cjs/extensions/forms/StepsLayout/style/index.scss +1 -0
- package/cjs/extensions/forms/StepsLayout/style.d.ts +5 -0
- package/cjs/extensions/forms/StepsLayout/style.js +4 -0
- package/cjs/extensions/forms/StepsLayout/style.js.map +1 -0
- package/cjs/extensions/forms/Value/BankAccountNumber.d.ts +7 -0
- package/cjs/extensions/forms/Value/BankAccountNumber.js +32 -0
- package/cjs/extensions/forms/Value/BankAccountNumber.js.map +1 -0
- package/cjs/extensions/forms/Value/Boolean.d.ts +8 -0
- package/cjs/extensions/forms/Value/Boolean.js +37 -0
- package/cjs/extensions/forms/Value/Boolean.js.map +1 -0
- package/cjs/extensions/forms/Value/Currency.d.ts +7 -0
- package/cjs/extensions/forms/Value/Currency.js +26 -0
- package/cjs/extensions/forms/Value/Currency.js.map +1 -0
- package/cjs/extensions/forms/Value/Date.d.ts +7 -0
- package/cjs/extensions/forms/Value/Date.js +28 -0
- package/cjs/extensions/forms/Value/Date.js.map +1 -0
- package/cjs/extensions/forms/Value/Email.d.ts +7 -0
- package/cjs/extensions/forms/Value/Email.js +28 -0
- package/cjs/extensions/forms/Value/Email.js.map +1 -0
- package/cjs/extensions/forms/Value/FirstName.d.ts +7 -0
- package/cjs/extensions/forms/Value/FirstName.js +28 -0
- package/cjs/extensions/forms/Value/FirstName.js.map +1 -0
- package/cjs/extensions/forms/Value/LastName.d.ts +7 -0
- package/cjs/extensions/forms/Value/LastName.js +28 -0
- package/cjs/extensions/forms/Value/LastName.js.map +1 -0
- package/cjs/extensions/forms/Value/NationalIdentityNumber.d.ts +7 -0
- package/cjs/extensions/forms/Value/NationalIdentityNumber.js +32 -0
- package/cjs/extensions/forms/Value/NationalIdentityNumber.js.map +1 -0
- package/cjs/extensions/forms/Value/Number.d.ts +14 -0
- package/cjs/extensions/forms/Value/Number.js +44 -0
- package/cjs/extensions/forms/Value/Number.js.map +1 -0
- package/cjs/extensions/forms/Value/PhoneNumber.d.ts +7 -0
- package/cjs/extensions/forms/Value/PhoneNumber.js +32 -0
- package/cjs/extensions/forms/Value/PhoneNumber.js.map +1 -0
- package/cjs/extensions/forms/Value/String.d.ts +8 -0
- package/cjs/extensions/forms/Value/String.js +34 -0
- package/cjs/extensions/forms/Value/String.js.map +1 -0
- package/cjs/extensions/forms/Value/hooks/index.d.ts +1 -0
- package/cjs/extensions/forms/Value/hooks/index.js +14 -0
- package/cjs/extensions/forms/Value/hooks/index.js.map +1 -0
- package/cjs/extensions/forms/Value/hooks/useValue.d.ts +2 -0
- package/cjs/extensions/forms/Value/hooks/useValue.js +31 -0
- package/cjs/extensions/forms/Value/hooks/useValue.js.map +1 -0
- package/cjs/extensions/forms/Value/index.d.ts +25 -0
- package/cjs/extensions/forms/Value/index.js +34 -0
- package/cjs/extensions/forms/Value/index.js.map +1 -0
- package/cjs/extensions/forms/ValueBlock/ValueBlock.d.ts +11 -0
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js +38 -0
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -0
- package/cjs/extensions/forms/ValueBlock/index.d.ts +1 -0
- package/cjs/extensions/forms/ValueBlock/index.js +14 -0
- package/cjs/extensions/forms/ValueBlock/index.js.map +1 -0
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +16 -0
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -0
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.scss +19 -0
- package/cjs/extensions/forms/ValueBlock/style/index.d.ts +5 -0
- package/cjs/extensions/forms/ValueBlock/style/index.js +4 -0
- package/cjs/extensions/forms/ValueBlock/style/index.js.map +1 -0
- package/cjs/extensions/forms/ValueBlock/style/index.scss +1 -0
- package/cjs/extensions/forms/ValueBlock/style.d.ts +5 -0
- package/cjs/extensions/forms/ValueBlock/style.js +4 -0
- package/cjs/extensions/forms/ValueBlock/style.js.map +1 -0
- package/cjs/extensions/forms/Visibility/Visibility.d.ts +24 -0
- package/cjs/extensions/forms/Visibility/Visibility.js +55 -0
- package/cjs/extensions/forms/Visibility/Visibility.js.map +1 -0
- package/cjs/extensions/forms/Visibility/index.d.ts +1 -0
- package/cjs/extensions/forms/Visibility/index.js +14 -0
- package/cjs/extensions/forms/Visibility/index.js.map +1 -0
- package/cjs/extensions/forms/component-types.d.ts +4 -0
- package/cjs/extensions/forms/component-types.js +1 -0
- package/cjs/extensions/forms/component-types.js.map +1 -0
- package/cjs/extensions/forms/constants/countries.d.ts +6 -0
- package/cjs/extensions/forms/constants/countries.js +969 -0
- package/cjs/extensions/forms/constants/countries.js.map +1 -0
- package/cjs/extensions/forms/field-types.d.ts +52 -0
- package/cjs/extensions/forms/field-types.js +1 -0
- package/cjs/extensions/forms/field-types.js.map +1 -0
- package/cjs/extensions/forms/index.d.ts +13 -0
- package/cjs/extensions/forms/index.js +110 -0
- package/cjs/extensions/forms/index.js.map +1 -0
- package/cjs/extensions/forms/style/dnb-forms.css +237 -0
- package/cjs/extensions/forms/style/dnb-forms.min.css +1 -0
- package/cjs/extensions/forms/style/dnb-forms.scss +6 -0
- package/cjs/extensions/forms/style.d.ts +5 -0
- package/cjs/extensions/forms/style.js +4 -0
- package/cjs/extensions/forms/style.js.map +1 -0
- package/cjs/extensions/forms/types.d.ts +11 -0
- package/cjs/extensions/forms/types.js +20 -0
- package/cjs/extensions/forms/types.js.map +1 -0
- package/cjs/extensions/forms/utils/TestElement/TestElement.d.ts +6 -0
- package/cjs/extensions/forms/utils/TestElement/TestElement.js +17 -0
- package/cjs/extensions/forms/utils/TestElement/TestElement.js.map +1 -0
- package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.css +6 -0
- package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -0
- package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.scss +6 -0
- package/cjs/extensions/forms/utils/TestElement/style/index.d.ts +5 -0
- package/cjs/extensions/forms/utils/TestElement/style/index.js +4 -0
- package/cjs/extensions/forms/utils/TestElement/style/index.js.map +1 -0
- package/cjs/extensions/forms/utils/TestElement/style.d.ts +5 -0
- package/cjs/extensions/forms/utils/TestElement/style.js +4 -0
- package/cjs/extensions/forms/utils/TestElement/style.js.map +1 -0
- package/cjs/extensions/forms/utils/ajv.d.ts +14 -0
- package/cjs/extensions/forms/utils/ajv.js +69 -0
- package/cjs/extensions/forms/utils/ajv.js.map +1 -0
- package/cjs/extensions/forms/utils/components.d.ts +3 -0
- package/cjs/extensions/forms/utils/components.js +32 -0
- package/cjs/extensions/forms/utils/components.js.map +1 -0
- package/cjs/extensions/forms/utils/index.d.ts +3 -0
- package/cjs/extensions/forms/utils/index.js +41 -0
- package/cjs/extensions/forms/utils/index.js.map +1 -0
- package/cjs/extensions/forms/utils/numbers.d.ts +17 -0
- package/cjs/extensions/forms/utils/numbers.js +42 -0
- package/cjs/extensions/forms/utils/numbers.js.map +1 -0
- package/cjs/extensions/forms/value-types.d.ts +15 -0
- package/cjs/extensions/forms/value-types.js +1 -0
- package/cjs/extensions/forms/value-types.js.map +1 -0
- package/cjs/extensions/index.d.ts +2 -1
- package/cjs/extensions/index.js +7 -0
- package/cjs/extensions/index.js.map +1 -1
- package/cjs/extensions/lib.d.ts +22 -1
- package/cjs/extensions/lib.js +8 -0
- package/cjs/extensions/lib.js.map +1 -1
- package/cjs/extensions/payment-card/utils/Types.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/cjs/shared/Context.d.ts +2 -0
- package/cjs/shared/Context.js.map +1 -1
- package/cjs/shared/Eufemia.d.ts +1 -1
- package/cjs/shared/Eufemia.js +2 -2
- package/cjs/shared/Eufemia.js.map +1 -1
- package/cjs/shared/VisibilityByTheme.d.ts +1 -1
- package/cjs/shared/VisibilityByTheme.js.map +1 -1
- package/cjs/shared/helpers.d.ts +2 -2
- package/cjs/shared/helpers.js.map +1 -1
- package/cjs/shared/locales/en-GB.d.ts +39 -0
- package/cjs/shared/locales/en-GB.js +39 -0
- package/cjs/shared/locales/en-GB.js.map +1 -1
- package/cjs/shared/locales/en-US.d.ts +39 -0
- package/cjs/shared/locales/index.d.ts +78 -0
- package/cjs/shared/locales/nb-NO.d.ts +39 -0
- package/cjs/shared/locales/nb-NO.js +39 -0
- package/cjs/shared/locales/nb-NO.js.map +1 -1
- package/cjs/style/core/utilities.scss +40 -8
- package/cjs/style/dnb-ui-components.css +71 -24
- package/cjs/style/dnb-ui-components.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.css +238 -0
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.scss +1 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +17 -11
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +105 -82
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +238 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/properties.js +4 -4
- package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
- package/cjs/style/themes/theme-sbanken/properties.scss +4 -4
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +4 -11
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +429 -333
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +0 -7
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +238 -0
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-basis.css +17 -11
- package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +105 -82
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-elements.css +17 -11
- package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +238 -0
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-tags.css +24 -12
- package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/components/accordion/Accordion.d.ts +240 -136
- package/components/accordion/Accordion.js +214 -251
- package/components/accordion/Accordion.js.map +1 -1
- package/components/accordion/AccordionContent.d.ts +12 -14
- package/components/accordion/AccordionContent.js +5 -17
- package/components/accordion/AccordionContent.js.map +1 -1
- package/components/accordion/AccordionContext.d.ts +17 -2
- package/components/accordion/AccordionContext.js.map +1 -1
- package/components/accordion/AccordionGroup.d.ts +10 -12
- package/components/accordion/AccordionGroup.js +60 -71
- package/components/accordion/AccordionGroup.js.map +1 -1
- package/components/accordion/AccordionHeader.d.ts +62 -92
- package/components/accordion/AccordionHeader.js +175 -251
- package/components/accordion/AccordionHeader.js.map +1 -1
- package/components/accordion/AccordionProviderContext.d.ts +16 -2
- package/components/accordion/AccordionProviderContext.js.map +1 -1
- package/components/accordion/AccordionStore.d.ts +7 -6
- package/components/accordion/AccordionStore.js +2 -2
- package/components/accordion/AccordionStore.js.map +1 -1
- package/components/accordion/defaultProps.d.ts +2 -0
- package/components/accordion/defaultProps.js +5 -0
- package/components/accordion/defaultProps.js.map +1 -0
- package/components/anchor/style/anchor-mixins.scss +26 -27
- package/components/anchor/style/dnb-anchor.css +27 -16
- package/components/anchor/style/dnb-anchor.min.css +1 -1
- package/components/anchor/style/dnb-anchor.scss +1 -1
- package/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +97 -44
- package/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
- package/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +48 -22
- package/components/anchor/style/themes/dnb-anchor-theme-ui.css +20 -10
- package/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
- package/components/anchor/style/themes/dnb-anchor-theme-ui.scss +4 -9
- package/components/autocomplete/Autocomplete.js +2 -2
- package/components/autocomplete/Autocomplete.js.map +1 -1
- package/components/button/style/themes/button-mixins.scss +23 -4
- package/components/button/style/themes/dnb-button-theme-sbanken.css +80 -82
- package/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -1
- package/components/button/style/themes/dnb-button-theme-sbanken.scss +82 -54
- package/components/date-picker/DatePicker.js.map +1 -1
- package/components/date-picker/DatePickerCalendar.js.map +1 -1
- package/components/dialog/Dialog.d.ts +1 -1
- package/components/dialog/DialogContent.d.ts +1 -1
- package/components/dialog/DialogContent.js +4 -2
- package/components/dialog/DialogContent.js.map +1 -1
- package/components/dialog/parts/DialogAction.d.ts +5 -1
- package/components/dialog/parts/DialogAction.js +3 -2
- package/components/dialog/parts/DialogAction.js.map +1 -1
- package/components/form-row/FormRow.js.map +1 -1
- package/components/form-row/style/dnb-form-row.scss +2 -2
- package/components/form-set/FormSet.js.map +1 -1
- package/components/height-animation/HeightAnimation.d.ts +1 -1
- package/components/height-animation/HeightAnimation.js.map +1 -1
- package/components/height-animation/useHeightAnimation.js.map +1 -1
- package/components/icon/lib/SvgComparison.js.map +1 -1
- package/components/input/style/dnb-input.css +5 -0
- package/components/input/style/dnb-input.min.css +1 -1
- package/components/input/style/dnb-input.scss +7 -1
- package/components/input/style/themes/dnb-input-theme-sbanken.css +104 -0
- package/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -0
- package/components/input/style/themes/dnb-input-theme-sbanken.scss +126 -0
- package/components/input-masked/InputMaskedUtils.js.map +1 -1
- package/components/input-masked/TextMask.js.map +1 -1
- package/components/modal/Modal.js +0 -2
- package/components/modal/Modal.js.map +1 -1
- package/components/modal/bodyScrollLock.js.map +1 -1
- package/components/number-format/NumberUtils.js +8 -6
- package/components/number-format/NumberUtils.js.map +1 -1
- package/components/number-format/style/dnb-number-format.css +0 -7
- package/components/number-format/style/dnb-number-format.scss +0 -1
- package/components/pagination/PaginationInfinity.js.map +1 -1
- package/components/radio/Radio.js.map +1 -1
- package/components/section/style/themes/dnb-section-theme-ui.css +14 -7
- package/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
- package/components/slider/hooks/useSliderEvents.js.map +1 -1
- package/components/slider/types.d.ts +1 -1
- package/components/slider/types.js.map +1 -1
- package/components/space/Space.d.ts +2 -2
- package/components/space/SpacingHelper.js.map +1 -1
- package/components/step-indicator/StepIndicatorProps.d.ts +1 -1
- package/components/table/TableAccordion.js.map +1 -1
- package/components/table/TableTr.js.map +1 -1
- package/components/textarea/Textarea.js.map +1 -1
- package/components/textarea/style/dnb-textarea.css +39 -1
- package/components/textarea/style/dnb-textarea.min.css +1 -1
- package/components/textarea/style/dnb-textarea.scss +20 -1
- package/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +61 -0
- package/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -0
- package/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +72 -0
- package/components/textarea/style/themes/dnb-textarea-theme-ui.css +0 -41
- package/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
- package/components/textarea/style/themes/dnb-textarea-theme-ui.scss +0 -22
- package/components/toggle-button/ToggleButton.js.map +1 -1
- package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
- package/components/tooltip/TooltipContainer.js.map +1 -1
- package/components/upload/Upload.js +2 -2
- package/components/upload/Upload.js.map +1 -1
- package/components/upload/useUpload.d.ts +1 -1
- package/components/upload/useUpload.js +2 -2
- package/components/upload/useUpload.js.map +1 -1
- package/elements/blockquote/Blockquote.d.ts +1 -1
- package/elements/blockquote/Blockquote.js.map +1 -1
- package/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +0 -2
- package/es/components/accordion/Accordion.d.ts +240 -136
- package/es/components/accordion/Accordion.js +210 -244
- package/es/components/accordion/Accordion.js.map +1 -1
- package/es/components/accordion/AccordionContent.d.ts +12 -14
- package/es/components/accordion/AccordionContent.js +5 -17
- package/es/components/accordion/AccordionContent.js.map +1 -1
- package/es/components/accordion/AccordionContext.d.ts +17 -2
- package/es/components/accordion/AccordionContext.js.map +1 -1
- package/es/components/accordion/AccordionGroup.d.ts +10 -12
- package/es/components/accordion/AccordionGroup.js +60 -71
- package/es/components/accordion/AccordionGroup.js.map +1 -1
- package/es/components/accordion/AccordionHeader.d.ts +62 -92
- package/es/components/accordion/AccordionHeader.js +176 -253
- package/es/components/accordion/AccordionHeader.js.map +1 -1
- package/es/components/accordion/AccordionProviderContext.d.ts +16 -2
- package/es/components/accordion/AccordionProviderContext.js.map +1 -1
- package/es/components/accordion/AccordionStore.d.ts +7 -6
- package/es/components/accordion/AccordionStore.js +2 -2
- package/es/components/accordion/AccordionStore.js.map +1 -1
- package/es/components/accordion/defaultProps.d.ts +2 -0
- package/es/components/accordion/defaultProps.js +5 -0
- package/es/components/accordion/defaultProps.js.map +1 -0
- package/es/components/anchor/style/anchor-mixins.scss +26 -27
- package/es/components/anchor/style/dnb-anchor.css +27 -16
- package/es/components/anchor/style/dnb-anchor.min.css +1 -1
- package/es/components/anchor/style/dnb-anchor.scss +1 -1
- package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +97 -44
- package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
- package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +48 -22
- package/es/components/anchor/style/themes/dnb-anchor-theme-ui.css +20 -10
- package/es/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
- package/es/components/anchor/style/themes/dnb-anchor-theme-ui.scss +4 -9
- package/es/components/autocomplete/Autocomplete.js +2 -2
- package/es/components/autocomplete/Autocomplete.js.map +1 -1
- package/es/components/button/style/themes/button-mixins.scss +23 -4
- package/es/components/button/style/themes/dnb-button-theme-sbanken.css +80 -82
- package/es/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -1
- package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +82 -54
- package/es/components/date-picker/DatePicker.js.map +1 -1
- package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
- package/es/components/dialog/Dialog.d.ts +1 -1
- package/es/components/dialog/DialogContent.d.ts +1 -1
- package/es/components/dialog/DialogContent.js +4 -2
- package/es/components/dialog/DialogContent.js.map +1 -1
- package/es/components/dialog/parts/DialogAction.d.ts +5 -1
- package/es/components/dialog/parts/DialogAction.js +3 -2
- package/es/components/dialog/parts/DialogAction.js.map +1 -1
- package/es/components/form-row/FormRow.js.map +1 -1
- package/es/components/form-row/style/dnb-form-row.scss +2 -2
- package/es/components/form-set/FormSet.js.map +1 -1
- package/es/components/height-animation/HeightAnimation.d.ts +1 -1
- package/es/components/height-animation/HeightAnimation.js.map +1 -1
- package/es/components/height-animation/useHeightAnimation.js.map +1 -1
- package/es/components/icon/lib/SvgComparison.js.map +1 -1
- package/es/components/input/style/dnb-input.css +5 -0
- package/es/components/input/style/dnb-input.min.css +1 -1
- package/es/components/input/style/dnb-input.scss +7 -1
- package/es/components/input/style/themes/dnb-input-theme-sbanken.css +104 -0
- package/es/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -0
- package/es/components/input/style/themes/dnb-input-theme-sbanken.scss +126 -0
- package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
- package/es/components/input-masked/TextMask.js.map +1 -1
- package/es/components/modal/Modal.js +0 -2
- package/es/components/modal/Modal.js.map +1 -1
- package/es/components/modal/bodyScrollLock.js.map +1 -1
- package/es/components/number-format/NumberUtils.js +8 -6
- package/es/components/number-format/NumberUtils.js.map +1 -1
- package/es/components/number-format/style/dnb-number-format.css +0 -7
- package/es/components/number-format/style/dnb-number-format.scss +0 -1
- package/es/components/pagination/PaginationInfinity.js.map +1 -1
- package/es/components/radio/Radio.js.map +1 -1
- package/es/components/section/style/themes/dnb-section-theme-ui.css +14 -7
- package/es/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
- package/es/components/slider/hooks/useSliderEvents.js.map +1 -1
- package/es/components/slider/types.d.ts +1 -1
- package/es/components/slider/types.js.map +1 -1
- package/es/components/space/Space.d.ts +2 -2
- package/es/components/space/SpacingHelper.js.map +1 -1
- package/es/components/step-indicator/StepIndicatorProps.d.ts +1 -1
- package/es/components/table/TableAccordion.js.map +1 -1
- package/es/components/table/TableTr.js.map +1 -1
- package/es/components/textarea/Textarea.js.map +1 -1
- package/es/components/textarea/style/dnb-textarea.css +39 -1
- package/es/components/textarea/style/dnb-textarea.min.css +1 -1
- package/es/components/textarea/style/dnb-textarea.scss +20 -1
- package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +61 -0
- package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -0
- package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +72 -0
- package/es/components/textarea/style/themes/dnb-textarea-theme-ui.css +0 -41
- package/es/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
- package/es/components/textarea/style/themes/dnb-textarea-theme-ui.scss +0 -22
- package/es/components/toggle-button/ToggleButton.js.map +1 -1
- package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
- package/es/components/tooltip/TooltipContainer.js.map +1 -1
- package/es/components/upload/Upload.js +2 -2
- package/es/components/upload/Upload.js.map +1 -1
- package/es/components/upload/useUpload.d.ts +1 -1
- package/es/components/upload/useUpload.js +2 -2
- package/es/components/upload/useUpload.js.map +1 -1
- package/es/elements/blockquote/Blockquote.d.ts +1 -1
- package/es/elements/blockquote/Blockquote.js.map +1 -1
- package/es/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +0 -2
- package/es/extensions/forms/DataContext/At.d.ts +13 -0
- package/es/extensions/forms/DataContext/At.js +48 -0
- package/es/extensions/forms/DataContext/At.js.map +1 -0
- package/es/extensions/forms/DataContext/Context.d.ts +19 -0
- package/es/extensions/forms/DataContext/Context.js +16 -0
- package/es/extensions/forms/DataContext/Context.js.map +1 -0
- package/es/extensions/forms/DataContext/Provider.d.ts +19 -0
- package/es/extensions/forms/DataContext/Provider.js +102 -0
- package/es/extensions/forms/DataContext/Provider.js.map +1 -0
- package/es/extensions/forms/DataContext/SubmitButton.d.ts +9 -0
- package/es/extensions/forms/DataContext/SubmitButton.js +20 -0
- package/es/extensions/forms/DataContext/SubmitButton.js.map +1 -0
- package/es/extensions/forms/DataContext/index.d.ts +13 -0
- package/es/extensions/forms/DataContext/index.js +12 -0
- package/es/extensions/forms/DataContext/index.js.map +1 -0
- package/es/extensions/forms/Field/ArraySelection.d.ts +12 -0
- package/es/extensions/forms/Field/ArraySelection.js +60 -0
- package/es/extensions/forms/Field/ArraySelection.js.map +1 -0
- package/es/extensions/forms/Field/BankAccountNumber.d.ts +10 -0
- package/es/extensions/forms/Field/BankAccountNumber.js +28 -0
- package/es/extensions/forms/Field/BankAccountNumber.js.map +1 -0
- package/es/extensions/forms/Field/Boolean.d.ts +10 -0
- package/es/extensions/forms/Field/Boolean.js +23 -0
- package/es/extensions/forms/Field/Boolean.js.map +1 -0
- package/es/extensions/forms/Field/Currency.d.ts +10 -0
- package/es/extensions/forms/Field/Currency.js +50 -0
- package/es/extensions/forms/Field/Currency.js.map +1 -0
- package/es/extensions/forms/Field/Date.d.ts +8 -0
- package/es/extensions/forms/Field/Date.js +46 -0
- package/es/extensions/forms/Field/Date.js.map +1 -0
- package/es/extensions/forms/Field/Email.d.ts +7 -0
- package/es/extensions/forms/Field/Email.js +22 -0
- package/es/extensions/forms/Field/Email.js.map +1 -0
- package/es/extensions/forms/Field/FirstName.d.ts +7 -0
- package/es/extensions/forms/Field/FirstName.js +19 -0
- package/es/extensions/forms/Field/FirstName.js.map +1 -0
- package/es/extensions/forms/Field/LastName.d.ts +7 -0
- package/es/extensions/forms/Field/LastName.js +19 -0
- package/es/extensions/forms/Field/LastName.js.map +1 -0
- package/es/extensions/forms/Field/NationalIdentityNumber.d.ts +10 -0
- package/es/extensions/forms/Field/NationalIdentityNumber.js +27 -0
- package/es/extensions/forms/Field/NationalIdentityNumber.js.map +1 -0
- package/es/extensions/forms/Field/Number.d.ts +31 -0
- package/es/extensions/forms/Field/Number.js +100 -0
- package/es/extensions/forms/Field/Number.js.map +1 -0
- package/es/extensions/forms/Field/Option.d.ts +9 -0
- package/es/extensions/forms/Field/Option.js +14 -0
- package/es/extensions/forms/Field/Option.js.map +1 -0
- package/es/extensions/forms/Field/OrganizationNumber.d.ts +10 -0
- package/es/extensions/forms/Field/OrganizationNumber.js +28 -0
- package/es/extensions/forms/Field/OrganizationNumber.js.map +1 -0
- package/es/extensions/forms/Field/PhoneNumber.d.ts +12 -0
- package/es/extensions/forms/Field/PhoneNumber.js +87 -0
- package/es/extensions/forms/Field/PhoneNumber.js.map +1 -0
- package/es/extensions/forms/Field/PostalCodeAndCity.d.ts +10 -0
- package/es/extensions/forms/Field/PostalCodeAndCity.js +46 -0
- package/es/extensions/forms/Field/PostalCodeAndCity.js.map +1 -0
- package/es/extensions/forms/Field/SelectCountry.d.ts +7 -0
- package/es/extensions/forms/Field/SelectCountry.js +26 -0
- package/es/extensions/forms/Field/SelectCountry.js.map +1 -0
- package/es/extensions/forms/Field/Selection.d.ts +13 -0
- package/es/extensions/forms/Field/Selection.js +107 -0
- package/es/extensions/forms/Field/Selection.js.map +1 -0
- package/es/extensions/forms/Field/String.d.ts +32 -0
- package/es/extensions/forms/Field/String.js +122 -0
- package/es/extensions/forms/Field/String.js.map +1 -0
- package/es/extensions/forms/Field/Toggle.d.ts +14 -0
- package/es/extensions/forms/Field/Toggle.js +116 -0
- package/es/extensions/forms/Field/Toggle.js.map +1 -0
- package/es/extensions/forms/Field/fields.scss +2 -0
- package/es/extensions/forms/Field/hooks/index.d.ts +1 -0
- package/es/extensions/forms/Field/hooks/index.js +1 -0
- package/es/extensions/forms/Field/hooks/index.js.map +1 -0
- package/es/extensions/forms/Field/hooks/useField.d.ts +11 -0
- package/es/extensions/forms/Field/hooks/useField.js +150 -0
- package/es/extensions/forms/Field/hooks/useField.js.map +1 -0
- package/es/extensions/forms/Field/index.d.ts +39 -0
- package/es/extensions/forms/Field/index.js +40 -0
- package/es/extensions/forms/Field/index.js.map +1 -0
- package/es/extensions/forms/Field/style/dnb-number.css +11 -0
- package/es/extensions/forms/Field/style/dnb-number.min.css +1 -0
- package/es/extensions/forms/Field/style/dnb-number.scss +19 -0
- package/es/extensions/forms/Field/style/dnb-phone-number.css +23 -0
- package/es/extensions/forms/Field/style/dnb-phone-number.min.css +1 -0
- package/es/extensions/forms/Field/style/dnb-phone-number.scss +28 -0
- package/es/extensions/forms/Field/style/dnb-postal-code-and-city.css +19 -0
- package/es/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -0
- package/es/extensions/forms/Field/style/dnb-postal-code-and-city.scss +25 -0
- package/es/extensions/forms/Field/style/dnb-selection.css +6 -0
- package/es/extensions/forms/Field/style/dnb-selection.min.css +1 -0
- package/es/extensions/forms/Field/style/dnb-selection.scss +15 -0
- package/es/extensions/forms/Field/style/dnb-string.css +11 -0
- package/es/extensions/forms/Field/style/dnb-string.min.css +1 -0
- package/es/extensions/forms/Field/style/dnb-string.scss +19 -0
- package/es/extensions/forms/Field/style/index.d.ts +6 -0
- package/es/extensions/forms/Field/style/index.js +3 -0
- package/es/extensions/forms/Field/style/index.js.map +1 -0
- package/es/extensions/forms/Field/style/index.scss +5 -0
- package/es/extensions/forms/Field/style.d.ts +5 -0
- package/es/extensions/forms/Field/style.js +1 -0
- package/es/extensions/forms/Field/style.js.map +1 -0
- package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +12 -0
- package/es/extensions/forms/FieldBlock/FieldBlock.js +69 -0
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -0
- package/es/extensions/forms/FieldBlock/index.d.ts +1 -0
- package/es/extensions/forms/FieldBlock/index.js +1 -0
- package/es/extensions/forms/FieldBlock/index.js.map +1 -0
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +15 -0
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -0
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +19 -0
- package/es/extensions/forms/FieldBlock/style/index.d.ts +5 -0
- package/es/extensions/forms/FieldBlock/style/index.js +1 -0
- package/es/extensions/forms/FieldBlock/style/index.js.map +1 -0
- package/es/extensions/forms/FieldBlock/style.d.ts +5 -0
- package/es/extensions/forms/FieldBlock/style.js +1 -0
- package/es/extensions/forms/FieldBlock/style.js.map +1 -0
- package/es/extensions/forms/FieldGroup/FieldGroup.d.ts +17 -0
- package/es/extensions/forms/FieldGroup/FieldGroup.js +77 -0
- package/es/extensions/forms/FieldGroup/FieldGroup.js.map +1 -0
- package/es/extensions/forms/FieldGroup/index.d.ts +2 -0
- package/es/extensions/forms/FieldGroup/index.js +3 -0
- package/es/extensions/forms/FieldGroup/index.js.map +1 -0
- package/es/extensions/forms/Forms.d.ts +3 -0
- package/es/extensions/forms/Forms.js +4 -0
- package/es/extensions/forms/Forms.js.map +1 -0
- package/es/extensions/forms/Layout/ButtonRow.d.ts +10 -0
- package/es/extensions/forms/Layout/ButtonRow.js +17 -0
- package/es/extensions/forms/Layout/ButtonRow.js.map +1 -0
- package/es/extensions/forms/Layout/Card.d.ts +14 -0
- package/es/extensions/forms/Layout/Card.js +37 -0
- package/es/extensions/forms/Layout/Card.js.map +1 -0
- package/es/extensions/forms/Layout/Column.d.ts +7 -0
- package/es/extensions/forms/Layout/Column.js +17 -0
- package/es/extensions/forms/Layout/Column.js.map +1 -0
- package/es/extensions/forms/Layout/FlexContainer.d.ts +23 -0
- package/es/extensions/forms/Layout/FlexContainer.js +91 -0
- package/es/extensions/forms/Layout/FlexContainer.js.map +1 -0
- package/es/extensions/forms/Layout/FlexItem.d.ts +12 -0
- package/es/extensions/forms/Layout/FlexItem.js +20 -0
- package/es/extensions/forms/Layout/FlexItem.js.map +1 -0
- package/es/extensions/forms/Layout/InfoCardSection.d.ts +8 -0
- package/es/extensions/forms/Layout/InfoCardSection.js +17 -0
- package/es/extensions/forms/Layout/InfoCardSection.js.map +1 -0
- package/es/extensions/forms/Layout/MainHeading.d.ts +10 -0
- package/es/extensions/forms/Layout/MainHeading.js +19 -0
- package/es/extensions/forms/Layout/MainHeading.js.map +1 -0
- package/es/extensions/forms/Layout/Row.d.ts +7 -0
- package/es/extensions/forms/Layout/Row.js +17 -0
- package/es/extensions/forms/Layout/Row.js.map +1 -0
- package/es/extensions/forms/Layout/Section.d.ts +13 -0
- package/es/extensions/forms/Layout/Section.js +21 -0
- package/es/extensions/forms/Layout/Section.js.map +1 -0
- package/es/extensions/forms/Layout/SubHeading.d.ts +10 -0
- package/es/extensions/forms/Layout/SubHeading.js +18 -0
- package/es/extensions/forms/Layout/SubHeading.js.map +1 -0
- package/es/extensions/forms/Layout/index.d.ts +23 -0
- package/es/extensions/forms/Layout/index.js +24 -0
- package/es/extensions/forms/Layout/index.js.map +1 -0
- package/es/extensions/forms/Layout/style/dnb-button-row.css +7 -0
- package/es/extensions/forms/Layout/style/dnb-button-row.min.css +1 -0
- package/es/extensions/forms/Layout/style/dnb-button-row.scss +5 -0
- package/es/extensions/forms/Layout/style/dnb-card.css +13 -0
- package/es/extensions/forms/Layout/style/dnb-card.min.css +1 -0
- package/es/extensions/forms/Layout/style/dnb-card.scss +15 -0
- package/es/extensions/forms/Layout/style/dnb-flex-container.css +63 -0
- package/es/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -0
- package/es/extensions/forms/Layout/style/dnb-flex-container.scss +84 -0
- package/es/extensions/forms/Layout/style/dnb-flex-item.css +6 -0
- package/es/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -0
- package/es/extensions/forms/Layout/style/dnb-flex-item.scss +9 -0
- package/es/extensions/forms/Layout/style/dnb-section.css +3 -0
- package/es/extensions/forms/Layout/style/dnb-section.min.css +1 -0
- package/es/extensions/forms/Layout/style/dnb-section.scss +3 -0
- package/es/extensions/forms/Layout/style/index.d.ts +9 -0
- package/es/extensions/forms/Layout/style/index.js +6 -0
- package/es/extensions/forms/Layout/style/index.js.map +1 -0
- package/es/extensions/forms/Layout/style/index.scss +5 -0
- package/es/extensions/forms/Layout/style.d.ts +5 -0
- package/es/extensions/forms/Layout/style.js +1 -0
- package/es/extensions/forms/Layout/style.js.map +1 -0
- package/es/extensions/forms/StepsLayout/Buttons.d.ts +9 -0
- package/es/extensions/forms/StepsLayout/Buttons.js +19 -0
- package/es/extensions/forms/StepsLayout/Buttons.js.map +1 -0
- package/es/extensions/forms/StepsLayout/NextButton.d.ts +10 -0
- package/es/extensions/forms/StepsLayout/NextButton.js +27 -0
- package/es/extensions/forms/StepsLayout/NextButton.js.map +1 -0
- package/es/extensions/forms/StepsLayout/PreviousButton.d.ts +10 -0
- package/es/extensions/forms/StepsLayout/PreviousButton.js +27 -0
- package/es/extensions/forms/StepsLayout/PreviousButton.js.map +1 -0
- package/es/extensions/forms/StepsLayout/Step.d.ts +15 -0
- package/es/extensions/forms/StepsLayout/Step.js +27 -0
- package/es/extensions/forms/StepsLayout/Step.js.map +1 -0
- package/es/extensions/forms/StepsLayout/StepsContext.d.ts +8 -0
- package/es/extensions/forms/StepsLayout/StepsContext.js +4 -0
- package/es/extensions/forms/StepsLayout/StepsContext.js.map +1 -0
- package/es/extensions/forms/StepsLayout/StepsLayout.d.ts +19 -0
- package/es/extensions/forms/StepsLayout/StepsLayout.js +105 -0
- package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -0
- package/es/extensions/forms/StepsLayout/index.d.ts +3 -0
- package/es/extensions/forms/StepsLayout/index.js +4 -0
- package/es/extensions/forms/StepsLayout/index.js.map +1 -0
- package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.css +25 -0
- package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -0
- package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +23 -0
- package/es/extensions/forms/StepsLayout/style/index.d.ts +5 -0
- package/es/extensions/forms/StepsLayout/style/index.js +1 -0
- package/es/extensions/forms/StepsLayout/style/index.js.map +1 -0
- package/es/extensions/forms/StepsLayout/style/index.scss +1 -0
- package/es/extensions/forms/StepsLayout/style.d.ts +5 -0
- package/es/extensions/forms/StepsLayout/style.js +1 -0
- package/es/extensions/forms/StepsLayout/style.js.map +1 -0
- package/es/extensions/forms/Value/BankAccountNumber.d.ts +7 -0
- package/es/extensions/forms/Value/BankAccountNumber.js +20 -0
- package/es/extensions/forms/Value/BankAccountNumber.js.map +1 -0
- package/es/extensions/forms/Value/Boolean.d.ts +8 -0
- package/es/extensions/forms/Value/Boolean.js +27 -0
- package/es/extensions/forms/Value/Boolean.js.map +1 -0
- package/es/extensions/forms/Value/Currency.d.ts +7 -0
- package/es/extensions/forms/Value/Currency.js +16 -0
- package/es/extensions/forms/Value/Currency.js.map +1 -0
- package/es/extensions/forms/Value/Date.d.ts +7 -0
- package/es/extensions/forms/Value/Date.js +16 -0
- package/es/extensions/forms/Value/Date.js.map +1 -0
- package/es/extensions/forms/Value/Email.d.ts +7 -0
- package/es/extensions/forms/Value/Email.js +16 -0
- package/es/extensions/forms/Value/Email.js.map +1 -0
- package/es/extensions/forms/Value/FirstName.d.ts +7 -0
- package/es/extensions/forms/Value/FirstName.js +16 -0
- package/es/extensions/forms/Value/FirstName.js.map +1 -0
- package/es/extensions/forms/Value/LastName.d.ts +7 -0
- package/es/extensions/forms/Value/LastName.js +16 -0
- package/es/extensions/forms/Value/LastName.js.map +1 -0
- package/es/extensions/forms/Value/NationalIdentityNumber.d.ts +7 -0
- package/es/extensions/forms/Value/NationalIdentityNumber.js +20 -0
- package/es/extensions/forms/Value/NationalIdentityNumber.js.map +1 -0
- package/es/extensions/forms/Value/Number.d.ts +14 -0
- package/es/extensions/forms/Value/Number.js +36 -0
- package/es/extensions/forms/Value/Number.js.map +1 -0
- package/es/extensions/forms/Value/PhoneNumber.d.ts +7 -0
- package/es/extensions/forms/Value/PhoneNumber.js +20 -0
- package/es/extensions/forms/Value/PhoneNumber.js.map +1 -0
- package/es/extensions/forms/Value/String.d.ts +8 -0
- package/es/extensions/forms/Value/String.js +26 -0
- package/es/extensions/forms/Value/String.js.map +1 -0
- package/es/extensions/forms/Value/hooks/index.d.ts +1 -0
- package/es/extensions/forms/Value/hooks/index.js +1 -0
- package/es/extensions/forms/Value/hooks/index.js.map +1 -0
- package/es/extensions/forms/Value/hooks/useValue.d.ts +2 -0
- package/es/extensions/forms/Value/hooks/useValue.js +22 -0
- package/es/extensions/forms/Value/hooks/useValue.js.map +1 -0
- package/es/extensions/forms/Value/index.d.ts +25 -0
- package/es/extensions/forms/Value/index.js +26 -0
- package/es/extensions/forms/Value/index.js.map +1 -0
- package/es/extensions/forms/ValueBlock/ValueBlock.d.ts +11 -0
- package/es/extensions/forms/ValueBlock/ValueBlock.js +30 -0
- package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -0
- package/es/extensions/forms/ValueBlock/index.d.ts +1 -0
- package/es/extensions/forms/ValueBlock/index.js +1 -0
- package/es/extensions/forms/ValueBlock/index.js.map +1 -0
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +16 -0
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -0
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.scss +19 -0
- package/es/extensions/forms/ValueBlock/style/index.d.ts +5 -0
- package/es/extensions/forms/ValueBlock/style/index.js +1 -0
- package/es/extensions/forms/ValueBlock/style/index.js.map +1 -0
- package/es/extensions/forms/ValueBlock/style/index.scss +1 -0
- package/es/extensions/forms/ValueBlock/style.d.ts +5 -0
- package/es/extensions/forms/ValueBlock/style.js +1 -0
- package/es/extensions/forms/ValueBlock/style.js.map +1 -0
- package/es/extensions/forms/Visibility/Visibility.d.ts +24 -0
- package/es/extensions/forms/Visibility/Visibility.js +44 -0
- package/es/extensions/forms/Visibility/Visibility.js.map +1 -0
- package/es/extensions/forms/Visibility/index.d.ts +1 -0
- package/es/extensions/forms/Visibility/index.js +1 -0
- package/es/extensions/forms/Visibility/index.js.map +1 -0
- package/es/extensions/forms/component-types.d.ts +4 -0
- package/es/extensions/forms/component-types.js +1 -0
- package/es/extensions/forms/component-types.js.map +1 -0
- package/es/extensions/forms/constants/countries.d.ts +6 -0
- package/es/extensions/forms/constants/countries.js +962 -0
- package/es/extensions/forms/constants/countries.js.map +1 -0
- package/es/extensions/forms/field-types.d.ts +52 -0
- package/es/extensions/forms/field-types.js +1 -0
- package/es/extensions/forms/field-types.js.map +1 -0
- package/es/extensions/forms/index.d.ts +13 -0
- package/es/extensions/forms/index.js +12 -0
- package/es/extensions/forms/index.js.map +1 -0
- package/es/extensions/forms/style/dnb-forms.css +237 -0
- package/es/extensions/forms/style/dnb-forms.min.css +1 -0
- package/es/extensions/forms/style/dnb-forms.scss +6 -0
- package/es/extensions/forms/style.d.ts +5 -0
- package/es/extensions/forms/style.js +1 -0
- package/es/extensions/forms/style.js.map +1 -0
- package/es/extensions/forms/types.d.ts +11 -0
- package/es/extensions/forms/types.js +11 -0
- package/es/extensions/forms/types.js.map +1 -0
- package/es/extensions/forms/utils/TestElement/TestElement.d.ts +6 -0
- package/es/extensions/forms/utils/TestElement/TestElement.js +9 -0
- package/es/extensions/forms/utils/TestElement/TestElement.js.map +1 -0
- package/es/extensions/forms/utils/TestElement/style/dnb-test-element.css +6 -0
- package/es/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -0
- package/es/extensions/forms/utils/TestElement/style/dnb-test-element.scss +6 -0
- package/es/extensions/forms/utils/TestElement/style/index.d.ts +5 -0
- package/es/extensions/forms/utils/TestElement/style/index.js +1 -0
- package/es/extensions/forms/utils/TestElement/style/index.js.map +1 -0
- package/es/extensions/forms/utils/TestElement/style.d.ts +5 -0
- package/es/extensions/forms/utils/TestElement/style.js +1 -0
- package/es/extensions/forms/utils/TestElement/style.js.map +1 -0
- package/es/extensions/forms/utils/ajv.d.ts +14 -0
- package/es/extensions/forms/utils/ajv.js +56 -0
- package/es/extensions/forms/utils/ajv.js.map +1 -0
- package/es/extensions/forms/utils/components.d.ts +3 -0
- package/es/extensions/forms/utils/components.js +23 -0
- package/es/extensions/forms/utils/components.js.map +1 -0
- package/es/extensions/forms/utils/index.d.ts +3 -0
- package/es/extensions/forms/utils/index.js +4 -0
- package/es/extensions/forms/utils/index.js.map +1 -0
- package/es/extensions/forms/utils/numbers.d.ts +17 -0
- package/es/extensions/forms/utils/numbers.js +35 -0
- package/es/extensions/forms/utils/numbers.js.map +1 -0
- package/es/extensions/forms/value-types.d.ts +15 -0
- package/es/extensions/forms/value-types.js +1 -0
- package/es/extensions/forms/value-types.js.map +1 -0
- package/es/extensions/index.d.ts +2 -1
- package/es/extensions/index.js +2 -1
- package/es/extensions/index.js.map +1 -1
- package/es/extensions/lib.d.ts +22 -1
- package/es/extensions/lib.js +3 -1
- package/es/extensions/lib.js.map +1 -1
- package/es/extensions/payment-card/utils/Types.js.map +1 -1
- package/es/fragments/drawer-list/DrawerList.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/es/shared/Context.d.ts +2 -0
- package/es/shared/Context.js.map +1 -1
- package/es/shared/Eufemia.d.ts +1 -1
- package/es/shared/Eufemia.js +2 -2
- package/es/shared/Eufemia.js.map +1 -1
- package/es/shared/VisibilityByTheme.d.ts +1 -1
- package/es/shared/VisibilityByTheme.js.map +1 -1
- package/es/shared/helpers.d.ts +2 -2
- package/es/shared/helpers.js.map +1 -1
- package/es/shared/locales/en-GB.d.ts +39 -0
- package/es/shared/locales/en-GB.js +39 -0
- package/es/shared/locales/en-GB.js.map +1 -1
- package/es/shared/locales/en-US.d.ts +39 -0
- package/es/shared/locales/index.d.ts +78 -0
- package/es/shared/locales/nb-NO.d.ts +39 -0
- package/es/shared/locales/nb-NO.js +39 -0
- package/es/shared/locales/nb-NO.js.map +1 -1
- package/es/style/core/utilities.scss +40 -8
- package/es/style/dnb-ui-components.css +71 -24
- package/es/style/dnb-ui-components.min.css +1 -1
- package/es/style/dnb-ui-extensions.css +238 -0
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/dnb-ui-extensions.scss +1 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +17 -11
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +105 -82
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +238 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/properties.js +4 -4
- package/es/style/themes/theme-sbanken/properties.js.map +1 -1
- package/es/style/themes/theme-sbanken/properties.scss +4 -4
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +4 -11
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +429 -333
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +0 -7
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +238 -0
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-basis.css +17 -11
- package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +105 -82
- package/es/style/themes/theme-ui/ui-theme-components.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-elements.css +17 -11
- package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-extensions.css +238 -0
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-tags.css +24 -12
- 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 +7 -1
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/DataContext/At.d.ts +13 -0
- package/extensions/forms/DataContext/At.js +48 -0
- package/extensions/forms/DataContext/At.js.map +1 -0
- package/extensions/forms/DataContext/Context.d.ts +19 -0
- package/extensions/forms/DataContext/Context.js +16 -0
- package/extensions/forms/DataContext/Context.js.map +1 -0
- package/extensions/forms/DataContext/Provider.d.ts +19 -0
- package/extensions/forms/DataContext/Provider.js +103 -0
- package/extensions/forms/DataContext/Provider.js.map +1 -0
- package/extensions/forms/DataContext/SubmitButton.d.ts +9 -0
- package/extensions/forms/DataContext/SubmitButton.js +20 -0
- package/extensions/forms/DataContext/SubmitButton.js.map +1 -0
- package/extensions/forms/DataContext/index.d.ts +13 -0
- package/extensions/forms/DataContext/index.js +12 -0
- package/extensions/forms/DataContext/index.js.map +1 -0
- package/extensions/forms/Field/ArraySelection.d.ts +12 -0
- package/extensions/forms/Field/ArraySelection.js +60 -0
- package/extensions/forms/Field/ArraySelection.js.map +1 -0
- package/extensions/forms/Field/BankAccountNumber.d.ts +10 -0
- package/extensions/forms/Field/BankAccountNumber.js +28 -0
- package/extensions/forms/Field/BankAccountNumber.js.map +1 -0
- package/extensions/forms/Field/Boolean.d.ts +10 -0
- package/extensions/forms/Field/Boolean.js +23 -0
- package/extensions/forms/Field/Boolean.js.map +1 -0
- package/extensions/forms/Field/Currency.d.ts +10 -0
- package/extensions/forms/Field/Currency.js +51 -0
- package/extensions/forms/Field/Currency.js.map +1 -0
- package/extensions/forms/Field/Date.d.ts +8 -0
- package/extensions/forms/Field/Date.js +47 -0
- package/extensions/forms/Field/Date.js.map +1 -0
- package/extensions/forms/Field/Email.d.ts +7 -0
- package/extensions/forms/Field/Email.js +22 -0
- package/extensions/forms/Field/Email.js.map +1 -0
- package/extensions/forms/Field/FirstName.d.ts +7 -0
- package/extensions/forms/Field/FirstName.js +19 -0
- package/extensions/forms/Field/FirstName.js.map +1 -0
- package/extensions/forms/Field/LastName.d.ts +7 -0
- package/extensions/forms/Field/LastName.js +19 -0
- package/extensions/forms/Field/LastName.js.map +1 -0
- package/extensions/forms/Field/NationalIdentityNumber.d.ts +10 -0
- package/extensions/forms/Field/NationalIdentityNumber.js +27 -0
- package/extensions/forms/Field/NationalIdentityNumber.js.map +1 -0
- package/extensions/forms/Field/Number.d.ts +31 -0
- package/extensions/forms/Field/Number.js +101 -0
- package/extensions/forms/Field/Number.js.map +1 -0
- package/extensions/forms/Field/Option.d.ts +9 -0
- package/extensions/forms/Field/Option.js +15 -0
- package/extensions/forms/Field/Option.js.map +1 -0
- package/extensions/forms/Field/OrganizationNumber.d.ts +10 -0
- package/extensions/forms/Field/OrganizationNumber.js +28 -0
- package/extensions/forms/Field/OrganizationNumber.js.map +1 -0
- package/extensions/forms/Field/PhoneNumber.d.ts +12 -0
- package/extensions/forms/Field/PhoneNumber.js +89 -0
- package/extensions/forms/Field/PhoneNumber.js.map +1 -0
- package/extensions/forms/Field/PostalCodeAndCity.d.ts +10 -0
- package/extensions/forms/Field/PostalCodeAndCity.js +46 -0
- package/extensions/forms/Field/PostalCodeAndCity.js.map +1 -0
- package/extensions/forms/Field/SelectCountry.d.ts +7 -0
- package/extensions/forms/Field/SelectCountry.js +26 -0
- package/extensions/forms/Field/SelectCountry.js.map +1 -0
- package/extensions/forms/Field/Selection.d.ts +13 -0
- package/extensions/forms/Field/Selection.js +110 -0
- package/extensions/forms/Field/Selection.js.map +1 -0
- package/extensions/forms/Field/String.d.ts +32 -0
- package/extensions/forms/Field/String.js +123 -0
- package/extensions/forms/Field/String.js.map +1 -0
- package/extensions/forms/Field/Toggle.d.ts +14 -0
- package/extensions/forms/Field/Toggle.js +117 -0
- package/extensions/forms/Field/Toggle.js.map +1 -0
- package/extensions/forms/Field/fields.scss +2 -0
- package/extensions/forms/Field/hooks/index.d.ts +1 -0
- package/extensions/forms/Field/hooks/index.js +1 -0
- package/extensions/forms/Field/hooks/index.js.map +1 -0
- package/extensions/forms/Field/hooks/useField.d.ts +11 -0
- package/extensions/forms/Field/hooks/useField.js +152 -0
- package/extensions/forms/Field/hooks/useField.js.map +1 -0
- package/extensions/forms/Field/index.d.ts +39 -0
- package/extensions/forms/Field/index.js +40 -0
- package/extensions/forms/Field/index.js.map +1 -0
- package/extensions/forms/Field/style/dnb-number.css +11 -0
- package/extensions/forms/Field/style/dnb-number.min.css +1 -0
- package/extensions/forms/Field/style/dnb-number.scss +19 -0
- package/extensions/forms/Field/style/dnb-phone-number.css +23 -0
- package/extensions/forms/Field/style/dnb-phone-number.min.css +1 -0
- package/extensions/forms/Field/style/dnb-phone-number.scss +28 -0
- package/extensions/forms/Field/style/dnb-postal-code-and-city.css +19 -0
- package/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -0
- package/extensions/forms/Field/style/dnb-postal-code-and-city.scss +25 -0
- package/extensions/forms/Field/style/dnb-selection.css +6 -0
- package/extensions/forms/Field/style/dnb-selection.min.css +1 -0
- package/extensions/forms/Field/style/dnb-selection.scss +15 -0
- package/extensions/forms/Field/style/dnb-string.css +11 -0
- package/extensions/forms/Field/style/dnb-string.min.css +1 -0
- package/extensions/forms/Field/style/dnb-string.scss +19 -0
- package/extensions/forms/Field/style/index.d.ts +6 -0
- package/extensions/forms/Field/style/index.js +3 -0
- package/extensions/forms/Field/style/index.js.map +1 -0
- package/extensions/forms/Field/style/index.scss +5 -0
- package/extensions/forms/Field/style.d.ts +5 -0
- package/extensions/forms/Field/style.js +1 -0
- package/extensions/forms/Field/style.js.map +1 -0
- package/extensions/forms/FieldBlock/FieldBlock.d.ts +12 -0
- package/extensions/forms/FieldBlock/FieldBlock.js +69 -0
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -0
- package/extensions/forms/FieldBlock/index.d.ts +1 -0
- package/extensions/forms/FieldBlock/index.js +1 -0
- package/extensions/forms/FieldBlock/index.js.map +1 -0
- package/extensions/forms/FieldBlock/style/dnb-field-block.css +15 -0
- package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -0
- package/extensions/forms/FieldBlock/style/dnb-field-block.scss +19 -0
- package/extensions/forms/FieldBlock/style/index.d.ts +5 -0
- package/extensions/forms/FieldBlock/style/index.js +1 -0
- package/extensions/forms/FieldBlock/style/index.js.map +1 -0
- package/extensions/forms/FieldBlock/style.d.ts +5 -0
- package/extensions/forms/FieldBlock/style.js +1 -0
- package/extensions/forms/FieldBlock/style.js.map +1 -0
- package/extensions/forms/FieldGroup/FieldGroup.d.ts +17 -0
- package/extensions/forms/FieldGroup/FieldGroup.js +83 -0
- package/extensions/forms/FieldGroup/FieldGroup.js.map +1 -0
- package/extensions/forms/FieldGroup/index.d.ts +2 -0
- package/extensions/forms/FieldGroup/index.js +3 -0
- package/extensions/forms/FieldGroup/index.js.map +1 -0
- package/extensions/forms/Forms.d.ts +3 -0
- package/extensions/forms/Forms.js +4 -0
- package/extensions/forms/Forms.js.map +1 -0
- package/extensions/forms/Layout/ButtonRow.d.ts +10 -0
- package/extensions/forms/Layout/ButtonRow.js +17 -0
- package/extensions/forms/Layout/ButtonRow.js.map +1 -0
- package/extensions/forms/Layout/Card.d.ts +14 -0
- package/extensions/forms/Layout/Card.js +37 -0
- package/extensions/forms/Layout/Card.js.map +1 -0
- package/extensions/forms/Layout/Column.d.ts +7 -0
- package/extensions/forms/Layout/Column.js +17 -0
- package/extensions/forms/Layout/Column.js.map +1 -0
- package/extensions/forms/Layout/FlexContainer.d.ts +23 -0
- package/extensions/forms/Layout/FlexContainer.js +91 -0
- package/extensions/forms/Layout/FlexContainer.js.map +1 -0
- package/extensions/forms/Layout/FlexItem.d.ts +12 -0
- package/extensions/forms/Layout/FlexItem.js +20 -0
- package/extensions/forms/Layout/FlexItem.js.map +1 -0
- package/extensions/forms/Layout/InfoCardSection.d.ts +8 -0
- package/extensions/forms/Layout/InfoCardSection.js +17 -0
- package/extensions/forms/Layout/InfoCardSection.js.map +1 -0
- package/extensions/forms/Layout/MainHeading.d.ts +10 -0
- package/extensions/forms/Layout/MainHeading.js +19 -0
- package/extensions/forms/Layout/MainHeading.js.map +1 -0
- package/extensions/forms/Layout/Row.d.ts +7 -0
- package/extensions/forms/Layout/Row.js +17 -0
- package/extensions/forms/Layout/Row.js.map +1 -0
- package/extensions/forms/Layout/Section.d.ts +13 -0
- package/extensions/forms/Layout/Section.js +21 -0
- package/extensions/forms/Layout/Section.js.map +1 -0
- package/extensions/forms/Layout/SubHeading.d.ts +10 -0
- package/extensions/forms/Layout/SubHeading.js +18 -0
- package/extensions/forms/Layout/SubHeading.js.map +1 -0
- package/extensions/forms/Layout/index.d.ts +23 -0
- package/extensions/forms/Layout/index.js +24 -0
- package/extensions/forms/Layout/index.js.map +1 -0
- package/extensions/forms/Layout/style/dnb-button-row.css +7 -0
- package/extensions/forms/Layout/style/dnb-button-row.min.css +1 -0
- package/extensions/forms/Layout/style/dnb-button-row.scss +5 -0
- package/extensions/forms/Layout/style/dnb-card.css +13 -0
- package/extensions/forms/Layout/style/dnb-card.min.css +1 -0
- package/extensions/forms/Layout/style/dnb-card.scss +15 -0
- package/extensions/forms/Layout/style/dnb-flex-container.css +63 -0
- package/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -0
- package/extensions/forms/Layout/style/dnb-flex-container.scss +84 -0
- package/extensions/forms/Layout/style/dnb-flex-item.css +6 -0
- package/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -0
- package/extensions/forms/Layout/style/dnb-flex-item.scss +9 -0
- package/extensions/forms/Layout/style/dnb-section.css +3 -0
- package/extensions/forms/Layout/style/dnb-section.min.css +1 -0
- package/extensions/forms/Layout/style/dnb-section.scss +3 -0
- package/extensions/forms/Layout/style/index.d.ts +9 -0
- package/extensions/forms/Layout/style/index.js +6 -0
- package/extensions/forms/Layout/style/index.js.map +1 -0
- package/extensions/forms/Layout/style/index.scss +5 -0
- package/extensions/forms/Layout/style.d.ts +5 -0
- package/extensions/forms/Layout/style.js +1 -0
- package/extensions/forms/Layout/style.js.map +1 -0
- package/extensions/forms/StepsLayout/Buttons.d.ts +9 -0
- package/extensions/forms/StepsLayout/Buttons.js +19 -0
- package/extensions/forms/StepsLayout/Buttons.js.map +1 -0
- package/extensions/forms/StepsLayout/NextButton.d.ts +10 -0
- package/extensions/forms/StepsLayout/NextButton.js +27 -0
- package/extensions/forms/StepsLayout/NextButton.js.map +1 -0
- package/extensions/forms/StepsLayout/PreviousButton.d.ts +10 -0
- package/extensions/forms/StepsLayout/PreviousButton.js +27 -0
- package/extensions/forms/StepsLayout/PreviousButton.js.map +1 -0
- package/extensions/forms/StepsLayout/Step.d.ts +15 -0
- package/extensions/forms/StepsLayout/Step.js +27 -0
- package/extensions/forms/StepsLayout/Step.js.map +1 -0
- package/extensions/forms/StepsLayout/StepsContext.d.ts +8 -0
- package/extensions/forms/StepsLayout/StepsContext.js +4 -0
- package/extensions/forms/StepsLayout/StepsContext.js.map +1 -0
- package/extensions/forms/StepsLayout/StepsLayout.d.ts +19 -0
- package/extensions/forms/StepsLayout/StepsLayout.js +106 -0
- package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -0
- package/extensions/forms/StepsLayout/index.d.ts +3 -0
- package/extensions/forms/StepsLayout/index.js +4 -0
- package/extensions/forms/StepsLayout/index.js.map +1 -0
- package/extensions/forms/StepsLayout/style/dnb-steps-layout.css +25 -0
- package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -0
- package/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +23 -0
- package/extensions/forms/StepsLayout/style/index.d.ts +5 -0
- package/extensions/forms/StepsLayout/style/index.js +1 -0
- package/extensions/forms/StepsLayout/style/index.js.map +1 -0
- package/extensions/forms/StepsLayout/style/index.scss +1 -0
- package/extensions/forms/StepsLayout/style.d.ts +5 -0
- package/extensions/forms/StepsLayout/style.js +1 -0
- package/extensions/forms/StepsLayout/style.js.map +1 -0
- package/extensions/forms/Value/BankAccountNumber.d.ts +7 -0
- package/extensions/forms/Value/BankAccountNumber.js +20 -0
- package/extensions/forms/Value/BankAccountNumber.js.map +1 -0
- package/extensions/forms/Value/Boolean.d.ts +8 -0
- package/extensions/forms/Value/Boolean.js +27 -0
- package/extensions/forms/Value/Boolean.js.map +1 -0
- package/extensions/forms/Value/Currency.d.ts +7 -0
- package/extensions/forms/Value/Currency.js +16 -0
- package/extensions/forms/Value/Currency.js.map +1 -0
- package/extensions/forms/Value/Date.d.ts +7 -0
- package/extensions/forms/Value/Date.js +16 -0
- package/extensions/forms/Value/Date.js.map +1 -0
- package/extensions/forms/Value/Email.d.ts +7 -0
- package/extensions/forms/Value/Email.js +16 -0
- package/extensions/forms/Value/Email.js.map +1 -0
- package/extensions/forms/Value/FirstName.d.ts +7 -0
- package/extensions/forms/Value/FirstName.js +16 -0
- package/extensions/forms/Value/FirstName.js.map +1 -0
- package/extensions/forms/Value/LastName.d.ts +7 -0
- package/extensions/forms/Value/LastName.js +16 -0
- package/extensions/forms/Value/LastName.js.map +1 -0
- package/extensions/forms/Value/NationalIdentityNumber.d.ts +7 -0
- package/extensions/forms/Value/NationalIdentityNumber.js +20 -0
- package/extensions/forms/Value/NationalIdentityNumber.js.map +1 -0
- package/extensions/forms/Value/Number.d.ts +14 -0
- package/extensions/forms/Value/Number.js +36 -0
- package/extensions/forms/Value/Number.js.map +1 -0
- package/extensions/forms/Value/PhoneNumber.d.ts +7 -0
- package/extensions/forms/Value/PhoneNumber.js +20 -0
- package/extensions/forms/Value/PhoneNumber.js.map +1 -0
- package/extensions/forms/Value/String.d.ts +8 -0
- package/extensions/forms/Value/String.js +26 -0
- package/extensions/forms/Value/String.js.map +1 -0
- package/extensions/forms/Value/hooks/index.d.ts +1 -0
- package/extensions/forms/Value/hooks/index.js +1 -0
- package/extensions/forms/Value/hooks/index.js.map +1 -0
- package/extensions/forms/Value/hooks/useValue.d.ts +2 -0
- package/extensions/forms/Value/hooks/useValue.js +22 -0
- package/extensions/forms/Value/hooks/useValue.js.map +1 -0
- package/extensions/forms/Value/index.d.ts +25 -0
- package/extensions/forms/Value/index.js +26 -0
- package/extensions/forms/Value/index.js.map +1 -0
- package/extensions/forms/ValueBlock/ValueBlock.d.ts +11 -0
- package/extensions/forms/ValueBlock/ValueBlock.js +30 -0
- package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -0
- package/extensions/forms/ValueBlock/index.d.ts +1 -0
- package/extensions/forms/ValueBlock/index.js +1 -0
- package/extensions/forms/ValueBlock/index.js.map +1 -0
- package/extensions/forms/ValueBlock/style/dnb-value-block.css +16 -0
- package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -0
- package/extensions/forms/ValueBlock/style/dnb-value-block.scss +19 -0
- package/extensions/forms/ValueBlock/style/index.d.ts +5 -0
- package/extensions/forms/ValueBlock/style/index.js +1 -0
- package/extensions/forms/ValueBlock/style/index.js.map +1 -0
- package/extensions/forms/ValueBlock/style/index.scss +1 -0
- package/extensions/forms/ValueBlock/style.d.ts +5 -0
- package/extensions/forms/ValueBlock/style.js +1 -0
- package/extensions/forms/ValueBlock/style.js.map +1 -0
- package/extensions/forms/Visibility/Visibility.d.ts +24 -0
- package/extensions/forms/Visibility/Visibility.js +45 -0
- package/extensions/forms/Visibility/Visibility.js.map +1 -0
- package/extensions/forms/Visibility/index.d.ts +1 -0
- package/extensions/forms/Visibility/index.js +1 -0
- package/extensions/forms/Visibility/index.js.map +1 -0
- package/extensions/forms/component-types.d.ts +4 -0
- package/extensions/forms/component-types.js +1 -0
- package/extensions/forms/component-types.js.map +1 -0
- package/extensions/forms/constants/countries.d.ts +6 -0
- package/extensions/forms/constants/countries.js +962 -0
- package/extensions/forms/constants/countries.js.map +1 -0
- package/extensions/forms/field-types.d.ts +52 -0
- package/extensions/forms/field-types.js +1 -0
- package/extensions/forms/field-types.js.map +1 -0
- package/extensions/forms/index.d.ts +13 -0
- package/extensions/forms/index.js +12 -0
- package/extensions/forms/index.js.map +1 -0
- package/extensions/forms/style/dnb-forms.css +237 -0
- package/extensions/forms/style/dnb-forms.min.css +1 -0
- package/extensions/forms/style/dnb-forms.scss +6 -0
- package/extensions/forms/style.d.ts +5 -0
- package/extensions/forms/style.js +1 -0
- package/extensions/forms/style.js.map +1 -0
- package/extensions/forms/types.d.ts +11 -0
- package/extensions/forms/types.js +11 -0
- package/extensions/forms/types.js.map +1 -0
- package/extensions/forms/utils/TestElement/TestElement.d.ts +6 -0
- package/extensions/forms/utils/TestElement/TestElement.js +10 -0
- package/extensions/forms/utils/TestElement/TestElement.js.map +1 -0
- package/extensions/forms/utils/TestElement/style/dnb-test-element.css +6 -0
- package/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -0
- package/extensions/forms/utils/TestElement/style/dnb-test-element.scss +6 -0
- package/extensions/forms/utils/TestElement/style/index.d.ts +5 -0
- package/extensions/forms/utils/TestElement/style/index.js +1 -0
- package/extensions/forms/utils/TestElement/style/index.js.map +1 -0
- package/extensions/forms/utils/TestElement/style.d.ts +5 -0
- package/extensions/forms/utils/TestElement/style.js +1 -0
- package/extensions/forms/utils/TestElement/style.js.map +1 -0
- package/extensions/forms/utils/ajv.d.ts +14 -0
- package/extensions/forms/utils/ajv.js +56 -0
- package/extensions/forms/utils/ajv.js.map +1 -0
- package/extensions/forms/utils/components.d.ts +3 -0
- package/extensions/forms/utils/components.js +23 -0
- package/extensions/forms/utils/components.js.map +1 -0
- package/extensions/forms/utils/index.d.ts +3 -0
- package/extensions/forms/utils/index.js +4 -0
- package/extensions/forms/utils/index.js.map +1 -0
- package/extensions/forms/utils/numbers.d.ts +17 -0
- package/extensions/forms/utils/numbers.js +35 -0
- package/extensions/forms/utils/numbers.js.map +1 -0
- package/extensions/forms/value-types.d.ts +15 -0
- package/extensions/forms/value-types.js +1 -0
- package/extensions/forms/value-types.js.map +1 -0
- package/extensions/index.d.ts +2 -1
- package/extensions/index.js +2 -1
- package/extensions/index.js.map +1 -1
- package/extensions/lib.d.ts +22 -1
- package/extensions/lib.js +3 -1
- package/extensions/lib.js.map +1 -1
- package/extensions/payment-card/utils/Types.js.map +1 -1
- package/fragments/drawer-list/DrawerList.js.map +1 -1
- package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/package.json +4 -1
- package/shared/Context.d.ts +2 -0
- package/shared/Context.js.map +1 -1
- package/shared/Eufemia.d.ts +1 -1
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/shared/VisibilityByTheme.d.ts +1 -1
- package/shared/VisibilityByTheme.js.map +1 -1
- package/shared/helpers.d.ts +2 -2
- package/shared/helpers.js.map +1 -1
- package/shared/locales/en-GB.d.ts +39 -0
- package/shared/locales/en-GB.js +39 -0
- package/shared/locales/en-GB.js.map +1 -1
- package/shared/locales/en-US.d.ts +39 -0
- package/shared/locales/index.d.ts +78 -0
- package/shared/locales/nb-NO.d.ts +39 -0
- package/shared/locales/nb-NO.js +39 -0
- package/shared/locales/nb-NO.js.map +1 -1
- package/style/core/utilities.scss +40 -8
- package/style/dnb-ui-components.css +71 -24
- package/style/dnb-ui-components.min.css +1 -1
- package/style/dnb-ui-extensions.css +238 -0
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/dnb-ui-extensions.scss +1 -0
- package/style/themes/theme-eiendom/eiendom-theme-basis.css +17 -11
- package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.css +105 -82
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +238 -0
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/properties.js +4 -4
- package/style/themes/theme-sbanken/properties.js.map +1 -1
- package/style/themes/theme-sbanken/properties.scss +4 -4
- package/style/themes/theme-sbanken/sbanken-theme-basis.css +4 -11
- package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +429 -333
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
- package/style/themes/theme-sbanken/sbanken-theme-elements.css +0 -7
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +238 -0
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-basis.css +17 -11
- package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-components.css +105 -82
- package/style/themes/theme-ui/ui-theme-components.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-elements.css +17 -11
- package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-extensions.css +238 -0
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-tags.css +24 -12
- 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 +7 -1
- package/umd/dnb-ui-lib.min.js +1 -1
- package/cjs/components/accordion/AccordionPropTypes.d.ts +0 -79
- package/cjs/components/accordion/AccordionPropTypes.js +0 -85
- package/cjs/components/accordion/AccordionPropTypes.js.map +0 -1
- package/components/accordion/AccordionPropTypes.d.ts +0 -79
- package/components/accordion/AccordionPropTypes.js +0 -74
- package/components/accordion/AccordionPropTypes.js.map +0 -1
- package/es/components/accordion/AccordionPropTypes.d.ts +0 -79
- package/es/components/accordion/AccordionPropTypes.js +0 -74
- package/es/components/accordion/AccordionPropTypes.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableAccordion.js","names":["_react","_interopRequireDefault","require","_classnames","_Button","_IconPrimary","_TableTh","_TableTd","_TableContext","_keycode","_helpers","_TableAccordionContent","_interopRequireWildcard","_TableTdAccordionIcon","_TableThAccordionIcon","_Td","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","useTableAccordion","_ref","_tableContext$allProp","_tableContext$allProp2","children","className","props","expanded","disabled","noAnimation","onClick","onOpened","onClosed","tableContext","React","useContext","TableContext","trIsOpen","setOpen","useState","location","id","hash","trIsHover","setHover","trHadClick","setHadClick","content","Children","toArray","allProps","accordion","accordionContent","find","element","type","TableAccordionContent","hasAccordionContent","isValidElement","countTds","filter","Td","trParams","toggleOpenTr","onMouseEnter","onMouseEnterHandler","onMouseLeave","onMouseLeaveHandler","onKeyDown","onKeydownHandler","hasContent","tdElem","createElement","TableTdAccordionIcon","accordionChevronPlacement","push","unshift","isTh","some","Th","thElem","TableThAccordionIcon","TrContext","Provider","value","tabIndex","undefined","classnames","event","keycode","document","activeElement","tagName","preventDefault","hasSelectedText","TableAccordionToggleButton","_React$useContext","trContext","iconSize","size","icon","accordionToggleButtonSR","Boolean","on_click","_tableContext$allProp3"],"sources":["../../../../src/components/table/TableAccordion.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport Button from '../button/Button'\nimport IconPrimary from '../icon/IconPrimary'\nimport Th from './TableTh'\nimport Td from './TableTd'\nimport TableContext from './TableContext'\nimport keycode from 'keycode'\nimport { hasSelectedText } from '../../shared/helpers'\nimport { TableTrProps } from './TableTr'\n\nimport TableAccordionContent, { TrContext } from './TableAccordionContent'\nimport type { TableAccordionContentProps } from './TableAccordionContent'\n\nexport function useTableAccordion({\n children,\n className,\n props,\n expanded,\n disabled,\n noAnimation,\n onClick,\n onOpened,\n onClosed,\n}) {\n const tableContext = React.useContext(TableContext)\n\n const [trIsOpen, setOpen] = React.useState(() => {\n if (typeof expanded === 'boolean') {\n return expanded\n } else if (typeof location !== 'undefined') {\n const id = props?.id\n if (id && '#' + id === location.hash) {\n return true\n }\n }\n\n return false\n })\n const [trIsHover, setHover] = React.useState(false)\n const [trHadClick, setHadClick] = React.useState(false)\n\n let content = React.Children.toArray(children)\n\n if (!tableContext?.allProps?.accordion) {\n return null\n }\n\n /**\n * Handle Accordion Content\n */\n const accordionContent = content.find((element: React.ReactElement) => {\n return element.type === TableAccordionContent\n }) as React.ReactElement<TableAccordionContentProps>\n const hasAccordionContent = React.isValidElement(accordionContent)\n const countTds = hasAccordionContent\n ? children.filter((element: React.ReactElement) => {\n return element.type === Td // TODO: We may need to include this in future --> || component.type === Td.MainCell\n }).length + 1 // +1 because we push the TableAccordionToggleButton\n : null\n\n const trParams =\n !disabled && hasAccordionContent\n ? {\n onClick: toggleOpenTr,\n onMouseEnter: onMouseEnterHandler,\n onMouseLeave: onMouseLeaveHandler,\n onKeyDown: onKeydownHandler,\n }\n : {}\n\n if (hasAccordionContent) {\n // Remove the AccordionContent, and use it outside of the tr\n content = content.filter((element) => {\n const hasContent =\n (element as React.ReactElement<TableTrProps>).type ===\n TableAccordionContent\n return !hasContent\n })\n\n const tdElem = <TableTdAccordionIcon key=\"td-icon\" />\n\n if (tableContext.allProps.accordionChevronPlacement === 'end') {\n content.push(tdElem)\n } else {\n content.unshift(tdElem)\n }\n } else if (tableContext?.allProps?.accordion) {\n const isTh = content.some((element) => {\n return (element as React.ReactElement<TableTrProps>).type === Th\n })\n\n if (isTh) {\n const thElem = <TableThAccordionIcon key=\"th-icon\" />\n\n if (tableContext.allProps.accordionChevronPlacement === 'end') {\n content.push(thElem)\n } else {\n content.unshift(thElem)\n }\n }\n }\n\n return (\n <TrContext.Provider\n value={{\n toggleOpenTr,\n trIsOpen,\n noAnimation,\n countTds,\n hasAccordionContent,\n onOpened,\n onClosed,\n }}\n >\n <tr\n tabIndex={accordionContent && !disabled ? 0 : undefined}\n className={classnames(\n className,\n hasAccordionContent && 'dnb-table__tr--has-accordion-content',\n trIsOpen && 'dnb-table__tr--expanded',\n disabled && 'dnb-table__tr--disabled',\n noAnimation && 'dnb-table__tr--no-animation',\n trIsHover && trHadClick && 'dnb-table__tr--hover'\n )}\n {...trParams}\n {...props}\n >\n {content}\n </tr>\n {accordionContent}\n </TrContext.Provider>\n )\n\n function onKeydownHandler(event: KeyboardEvent) {\n switch (keycode(event)) {\n case 'space':\n case 'enter':\n {\n const target = event.target as HTMLElement\n if (\n document.activeElement !== target ||\n target.tagName === 'TR'\n ) {\n setOpen(!trIsOpen)\n event.preventDefault()\n }\n }\n break\n }\n }\n function onMouseEnterHandler() {\n setHover(true)\n }\n function onMouseLeaveHandler() {\n setHover(false)\n setHadClick(false)\n }\n function toggleOpenTr(event: MouseEvent) {\n const target = event.target as HTMLElement\n if (\n /**\n * Interactive elements to set activeElement on mouseDown,\n * we we can check agains it.\n */\n document.activeElement !== target &&\n /**\n * Safari on macOS needs this extra check:\n *\n * > For example, on macOS systems, elements that aren't text input elements are not typically focusable by default.\n * https://developer.mozilla.org/en-US/docs/Web/API/Document/activeElement\n */\n target.tagName !== 'INPUT' &&\n /**\n * Let the user select text,\n * without triggering the accrodion.\n */\n !hasSelectedText()\n ) {\n setOpen(!trIsOpen)\n setHadClick(true)\n\n onClick?.(event)\n }\n }\n}\n\nexport function TableAccordionToggleButton() {\n const trContext = React.useContext(TrContext)\n const allProps = React.useContext(TableContext)?.allProps\n const iconSize =\n allProps.size === 'medium' || allProps.size === 'small'\n ? 'basis'\n : 'medium'\n\n return (\n <span className=\"dnb-table__toggle-button\">\n <IconPrimary icon=\"chevron_down\" size={iconSize} />\n <Button\n className=\"dnb-sr-only\"\n tabIndex={-1}\n aria-label={allProps?.accordionToggleButtonSR}\n aria-expanded={Boolean(trContext?.trIsOpen)}\n on_click={trContext?.toggleOpenTr}\n />\n </span>\n )\n}\n\nfunction TableThAccordionIcon() {\n const tableContext = React.useContext(TableContext)\n return (\n <Th aria-hidden className=\"dnb-table__th__accordion-icon\">\n <div>{tableContext?.allProps?.accordionToggleButtonSR}</div>\n </Th>\n )\n}\n\nfunction TableTdAccordionIcon() {\n return (\n <Td className=\"dnb-table__td__accordion-icon\">\n <TableAccordionToggleButton />\n </Td>\n )\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TableAccordion.js","names":["_react","_interopRequireDefault","require","_classnames","_Button","_IconPrimary","_TableTh","_TableTd","_TableContext","_keycode","_helpers","_TableAccordionContent","_interopRequireWildcard","_TableTdAccordionIcon","_TableThAccordionIcon","_Td","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","useTableAccordion","_ref","_tableContext$allProp","_tableContext$allProp2","children","className","props","expanded","disabled","noAnimation","onClick","onOpened","onClosed","tableContext","React","useContext","TableContext","trIsOpen","setOpen","useState","location","id","hash","trIsHover","setHover","trHadClick","setHadClick","content","Children","toArray","allProps","accordion","accordionContent","find","element","type","TableAccordionContent","hasAccordionContent","isValidElement","countTds","filter","Td","trParams","toggleOpenTr","onMouseEnter","onMouseEnterHandler","onMouseLeave","onMouseLeaveHandler","onKeyDown","onKeydownHandler","hasContent","tdElem","createElement","TableTdAccordionIcon","accordionChevronPlacement","push","unshift","isTh","some","Th","thElem","TableThAccordionIcon","TrContext","Provider","value","tabIndex","undefined","classnames","event","keycode","document","activeElement","tagName","preventDefault","hasSelectedText","TableAccordionToggleButton","_React$useContext","trContext","iconSize","size","icon","accordionToggleButtonSR","Boolean","on_click","_tableContext$allProp3"],"sources":["../../../../src/components/table/TableAccordion.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport Button from '../button/Button'\nimport IconPrimary from '../icon/IconPrimary'\nimport Th from './TableTh'\nimport Td from './TableTd'\nimport TableContext from './TableContext'\nimport keycode from 'keycode'\nimport { hasSelectedText } from '../../shared/helpers'\nimport { TableTrProps } from './TableTr'\n\nimport TableAccordionContent, { TrContext } from './TableAccordionContent'\nimport type { TableAccordionContentProps } from './TableAccordionContent'\n\nexport function useTableAccordion({\n children,\n className,\n props,\n expanded,\n disabled,\n noAnimation,\n onClick,\n onOpened,\n onClosed,\n}) {\n const tableContext = React.useContext(TableContext)\n\n const [trIsOpen, setOpen] = React.useState(() => {\n if (typeof expanded === 'boolean') {\n return expanded\n } else if (typeof location !== 'undefined') {\n const id = props?.id\n if (id && '#' + id === location.hash) {\n return true\n }\n }\n\n return false\n })\n const [trIsHover, setHover] = React.useState(false)\n const [trHadClick, setHadClick] = React.useState(false)\n\n let content = React.Children.toArray(children)\n\n if (!tableContext?.allProps?.accordion) {\n return null\n }\n\n /**\n * Handle Accordion Content\n */\n const accordionContent = content.find((element: React.ReactElement) => {\n return element.type === TableAccordionContent\n }) as React.ReactElement<TableAccordionContentProps>\n const hasAccordionContent = React.isValidElement(accordionContent)\n const countTds = hasAccordionContent\n ? children.filter((element: React.ReactElement) => {\n return element.type === Td // TODO: We may need to include this in future --> || component.type === Td.MainCell\n }).length + 1 // +1 because we push the TableAccordionToggleButton\n : null\n\n const trParams =\n !disabled && hasAccordionContent\n ? {\n onClick: toggleOpenTr,\n onMouseEnter: onMouseEnterHandler,\n onMouseLeave: onMouseLeaveHandler,\n onKeyDown: onKeydownHandler,\n }\n : {}\n\n if (hasAccordionContent) {\n // Remove the AccordionContent, and use it outside of the tr\n content = content.filter((element) => {\n const hasContent =\n (element as React.ReactElement<TableTrProps>).type ===\n TableAccordionContent\n return !hasContent\n })\n\n const tdElem = <TableTdAccordionIcon key=\"td-icon\" />\n\n if (tableContext.allProps.accordionChevronPlacement === 'end') {\n content.push(tdElem)\n } else {\n content.unshift(tdElem)\n }\n } else if (tableContext?.allProps?.accordion) {\n const isTh = content.some((element) => {\n return (element as React.ReactElement<TableTrProps>).type === Th\n })\n\n if (isTh) {\n const thElem = <TableThAccordionIcon key=\"th-icon\" />\n\n if (tableContext.allProps.accordionChevronPlacement === 'end') {\n content.push(thElem)\n } else {\n content.unshift(thElem)\n }\n }\n }\n\n return (\n <TrContext.Provider\n value={{\n toggleOpenTr,\n trIsOpen,\n noAnimation,\n countTds,\n hasAccordionContent,\n onOpened,\n onClosed,\n }}\n >\n <tr\n tabIndex={accordionContent && !disabled ? 0 : undefined}\n className={classnames(\n className,\n hasAccordionContent && 'dnb-table__tr--has-accordion-content',\n trIsOpen && 'dnb-table__tr--expanded',\n disabled && 'dnb-table__tr--disabled',\n noAnimation && 'dnb-table__tr--no-animation',\n trIsHover && trHadClick && 'dnb-table__tr--hover'\n )}\n {...trParams}\n {...props}\n >\n {content}\n </tr>\n {accordionContent}\n </TrContext.Provider>\n )\n\n function onKeydownHandler(event: KeyboardEvent) {\n switch (keycode(event)) {\n case 'space':\n case 'enter':\n {\n const target = event.target as HTMLElement\n if (\n document.activeElement !== target ||\n target.tagName === 'TR'\n ) {\n setOpen(!trIsOpen)\n event.preventDefault()\n }\n }\n break\n }\n }\n function onMouseEnterHandler() {\n setHover(true)\n }\n function onMouseLeaveHandler() {\n setHover(false)\n setHadClick(false)\n }\n function toggleOpenTr(event: MouseEvent) {\n const target = event.target as HTMLElement\n if (\n /**\n * Interactive elements to set activeElement on mouseDown,\n * we we can check against it.\n */\n document.activeElement !== target &&\n /**\n * Safari on macOS needs this extra check:\n *\n * > For example, on macOS systems, elements that aren't text input elements are not typically focusable by default.\n * https://developer.mozilla.org/en-US/docs/Web/API/Document/activeElement\n */\n target.tagName !== 'INPUT' &&\n /**\n * Let the user select text,\n * without triggering the accordion.\n */\n !hasSelectedText()\n ) {\n setOpen(!trIsOpen)\n setHadClick(true)\n\n onClick?.(event)\n }\n }\n}\n\nexport function TableAccordionToggleButton() {\n const trContext = React.useContext(TrContext)\n const allProps = React.useContext(TableContext)?.allProps\n const iconSize =\n allProps.size === 'medium' || allProps.size === 'small'\n ? 'basis'\n : 'medium'\n\n return (\n <span className=\"dnb-table__toggle-button\">\n <IconPrimary icon=\"chevron_down\" size={iconSize} />\n <Button\n className=\"dnb-sr-only\"\n tabIndex={-1}\n aria-label={allProps?.accordionToggleButtonSR}\n aria-expanded={Boolean(trContext?.trIsOpen)}\n on_click={trContext?.toggleOpenTr}\n />\n </span>\n )\n}\n\nfunction TableThAccordionIcon() {\n const tableContext = React.useContext(TableContext)\n return (\n <Th aria-hidden className=\"dnb-table__th__accordion-icon\">\n <div>{tableContext?.allProps?.accordionToggleButtonSR}</div>\n </Th>\n )\n}\n\nfunction TableTdAccordionIcon() {\n return (\n <Td className=\"dnb-table__td__accordion-icon\">\n <TableAccordionToggleButton />\n </Td>\n )\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableTr.js","names":["_react","_interopRequireDefault","require","_classnames","_TableAccordion","_TableContext","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Tr","componentProps","variant","noWrap","expanded","disabled","noAnimation","onClick","onOpened","onClosed","children","className","_className","props","currentVariant","useHandleTrVariant","classnames","accordionTr","useTableAccordion","createElement","role","_ref","tableContext","React","useContext","TableContext","countRef","trCountRef","current","increment","count","setCount","useState","window","useEffect","rerenderAlias","useHandleOddEven","_ref2","useRef","setRerenderAlias","isMounted","forceRerender"],"sources":["../../../../src/components/table/TableTr.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { useTableAccordion } from './TableAccordion'\nimport { TableTdProps } from './TableTd'\nimport TableContext from './TableContext'\n\nexport type TableTrProps = {\n /**\n * The variant of the tr\n */\n variant?: 'even' | 'odd'\n\n /**\n * If set to true, the inherited header text will not wrap to new lines\n * Default: false\n */\n noWrap?: boolean\n\n /**\n * Set true to render the tr initially as expanded\n * Is part of the accordion feature and needs to be enabled with `accordion` prop in main Table\n * Default: false\n */\n expanded?: boolean\n\n /**\n * Set true to disable the tr to be accessible as an interactive element\n * Is part of the accordion feature and needs to be enabled with `accordion` prop in main Table\n * Default: false\n */\n disabled?: boolean\n\n /**\n * Set to true to skip animation\n * Is part of the accordion feature and needs to be enabled with `accordion` prop in main Table\n * Default: false\n */\n noAnimation?: boolean\n\n /**\n * Will emit when user clicks/expands the table row\n * Is part of the accordion feature and needs to be enabled with `accordion` prop in main Table\n */\n onClick?: (event?: React.SyntheticEvent) => void\n\n /**\n * Will emit when table row is expanded\n * Is part of the accordion feature and needs to be enabled with `accordion` prop in main Table\n */\n onOpened?: (event?: React.SyntheticEvent) => void\n\n /**\n * Will emit when table row is closed (after it was open)\n * Is part of the accordion feature and needs to be enabled with `accordion` prop in main Table\n */\n onClosed?: (event?: React.SyntheticEvent) => void\n\n /**\n * The content of the component.\n */\n children:\n | React.ReactElement<TableTdProps>\n | Array<React.ReactElement<TableTdProps>>\n}\n\nexport default function Tr(\n componentProps: TableTrProps &\n React.TableHTMLAttributes<HTMLTableRowElement>\n) {\n const {\n variant,\n noWrap,\n expanded,\n disabled,\n noAnimation,\n onClick,\n onOpened,\n onClosed,\n children,\n className: _className,\n ...props\n } = componentProps\n\n const { currentVariant } = useHandleTrVariant({ variant })\n\n const className = classnames(\n 'dnb-table__tr',\n currentVariant && `dnb-table__tr--${currentVariant}`,\n noWrap && 'dnb-table--no-wrap',\n _className\n )\n\n const accordionTr = useTableAccordion({\n className,\n children,\n props,\n expanded,\n disabled,\n noAnimation,\n onClick,\n onOpened,\n onClosed,\n })\n\n if (accordionTr) {\n return accordionTr\n }\n\n return (\n <tr role=\"row\" className={className} {...props}>\n {children}\n </tr>\n )\n}\n\nfunction useHandleTrVariant({ variant }) {\n const tableContext = React.useContext(TableContext)\n\n /**\n * Handle odd/even\n */\n const countRef = tableContext?.trCountRef.current\n const increment = () => {\n if (typeof countRef === 'undefined') {\n return 0\n }\n if (\n !variant ||\n (variant === 'even' && countRef.count % 2 === 1) ||\n (variant === 'odd' && countRef.count % 2 === 0)\n ) {\n countRef.count++\n }\n\n return countRef.count\n }\n\n const [count, setCount] = React.useState(() => {\n // SSR Support\n if (typeof window === 'undefined') {\n return increment()\n }\n })\n\n // StrictMode support\n React.useEffect(() => {\n // SSR will not execute useEffect\n setCount(increment())\n }, [tableContext?.rerenderAlias]) // eslint-disable-line react-hooks/exhaustive-deps\n\n /**\n * Find out the current odd/even when \"accordionContent\" is used.\n * Because we have now an additional \"tr\" element.\n * Then the CSS can't figure out the correct nth element (nth-of-type)\n * and we need to set it manually (nth-child and nth-of-type do not respect classes, so we can't ignore this one).\n */\n let currentVariant = variant\n if (!currentVariant) {\n currentVariant = count % 2 ? 'odd' : 'even'\n }\n\n return {\n currentVariant,\n }\n}\n\n/**\n * Handle odd/even on re-render and React.StrictMode\n */\nexport function useHandleOddEven({ children }) {\n // Create this ref in order to \"auto\" set even/odd class in tr elements\n const trCountRef = React.useRef({ count: 0 })\n\n // When the alias changes, all tr's will rerender and get a new even/odd color\n // This is
|
|
1
|
+
{"version":3,"file":"TableTr.js","names":["_react","_interopRequireDefault","require","_classnames","_TableAccordion","_TableContext","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Tr","componentProps","variant","noWrap","expanded","disabled","noAnimation","onClick","onOpened","onClosed","children","className","_className","props","currentVariant","useHandleTrVariant","classnames","accordionTr","useTableAccordion","createElement","role","_ref","tableContext","React","useContext","TableContext","countRef","trCountRef","current","increment","count","setCount","useState","window","useEffect","rerenderAlias","useHandleOddEven","_ref2","useRef","setRerenderAlias","isMounted","forceRerender"],"sources":["../../../../src/components/table/TableTr.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { useTableAccordion } from './TableAccordion'\nimport { TableTdProps } from './TableTd'\nimport TableContext from './TableContext'\n\nexport type TableTrProps = {\n /**\n * The variant of the tr\n */\n variant?: 'even' | 'odd'\n\n /**\n * If set to true, the inherited header text will not wrap to new lines\n * Default: false\n */\n noWrap?: boolean\n\n /**\n * Set true to render the tr initially as expanded\n * Is part of the accordion feature and needs to be enabled with `accordion` prop in main Table\n * Default: false\n */\n expanded?: boolean\n\n /**\n * Set true to disable the tr to be accessible as an interactive element\n * Is part of the accordion feature and needs to be enabled with `accordion` prop in main Table\n * Default: false\n */\n disabled?: boolean\n\n /**\n * Set to true to skip animation\n * Is part of the accordion feature and needs to be enabled with `accordion` prop in main Table\n * Default: false\n */\n noAnimation?: boolean\n\n /**\n * Will emit when user clicks/expands the table row\n * Is part of the accordion feature and needs to be enabled with `accordion` prop in main Table\n */\n onClick?: (event?: React.SyntheticEvent) => void\n\n /**\n * Will emit when table row is expanded\n * Is part of the accordion feature and needs to be enabled with `accordion` prop in main Table\n */\n onOpened?: (event?: React.SyntheticEvent) => void\n\n /**\n * Will emit when table row is closed (after it was open)\n * Is part of the accordion feature and needs to be enabled with `accordion` prop in main Table\n */\n onClosed?: (event?: React.SyntheticEvent) => void\n\n /**\n * The content of the component.\n */\n children:\n | React.ReactElement<TableTdProps>\n | Array<React.ReactElement<TableTdProps>>\n}\n\nexport default function Tr(\n componentProps: TableTrProps &\n React.TableHTMLAttributes<HTMLTableRowElement>\n) {\n const {\n variant,\n noWrap,\n expanded,\n disabled,\n noAnimation,\n onClick,\n onOpened,\n onClosed,\n children,\n className: _className,\n ...props\n } = componentProps\n\n const { currentVariant } = useHandleTrVariant({ variant })\n\n const className = classnames(\n 'dnb-table__tr',\n currentVariant && `dnb-table__tr--${currentVariant}`,\n noWrap && 'dnb-table--no-wrap',\n _className\n )\n\n const accordionTr = useTableAccordion({\n className,\n children,\n props,\n expanded,\n disabled,\n noAnimation,\n onClick,\n onOpened,\n onClosed,\n })\n\n if (accordionTr) {\n return accordionTr\n }\n\n return (\n <tr role=\"row\" className={className} {...props}>\n {children}\n </tr>\n )\n}\n\nfunction useHandleTrVariant({ variant }) {\n const tableContext = React.useContext(TableContext)\n\n /**\n * Handle odd/even\n */\n const countRef = tableContext?.trCountRef.current\n const increment = () => {\n if (typeof countRef === 'undefined') {\n return 0\n }\n if (\n !variant ||\n (variant === 'even' && countRef.count % 2 === 1) ||\n (variant === 'odd' && countRef.count % 2 === 0)\n ) {\n countRef.count++\n }\n\n return countRef.count\n }\n\n const [count, setCount] = React.useState(() => {\n // SSR Support\n if (typeof window === 'undefined') {\n return increment()\n }\n })\n\n // StrictMode support\n React.useEffect(() => {\n // SSR will not execute useEffect\n setCount(increment())\n }, [tableContext?.rerenderAlias]) // eslint-disable-line react-hooks/exhaustive-deps\n\n /**\n * Find out the current odd/even when \"accordionContent\" is used.\n * Because we have now an additional \"tr\" element.\n * Then the CSS can't figure out the correct nth element (nth-of-type)\n * and we need to set it manually (nth-child and nth-of-type do not respect classes, so we can't ignore this one).\n */\n let currentVariant = variant\n if (!currentVariant) {\n currentVariant = count % 2 ? 'odd' : 'even'\n }\n\n return {\n currentVariant,\n }\n}\n\n/**\n * Handle odd/even on re-render and React.StrictMode\n */\nexport function useHandleOddEven({ children }) {\n // Create this ref in order to \"auto\" set even/odd class in tr elements\n const trCountRef = React.useRef({ count: 0 })\n\n // When the alias changes, all tr's will rerender and get a new even/odd color\n // This is useful, when one tr gets removed\n const [rerenderAlias, setRerenderAlias] = React.useState({}) // eslint-disable-line no-unused-vars\n\n const isMounted = React.useRef(false)\n React.useEffect(() => {\n if (isMounted.current) {\n forceRerender()\n }\n isMounted.current = true\n }, [children]) // eslint-disable-line react-hooks/exhaustive-deps\n\n return { trCountRef, rerenderAlias, setRerenderAlias }\n\n function forceRerender() {\n trCountRef.current.count = 0\n setRerenderAlias({})\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Textarea.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_FormLabel","_FormStatus","_componentHelper","_FormRowHelpers","_AlignmentHelper2","_SpacingHelper","_SkeletonHelper","_Context","_Suffix","_AlignmentHelper","_span","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Textarea","React","PureComponent","getDerivedStateFromProps","props","state","getValue","_listenForPropChanges","_value","on_state_update","dispatchCustomElementEvent","textarea_state","textareaState","hasValue","processChildren","constructor","_this","this","event","_ref","current","setState","isTrue","autoresize","prepareAutosize","rows","getRows","ret","setAutosize","elem","style","height","e","warn","_heightOffset","offsetHeight","clientHeight","lineHeight","getLineHeight","newHeight","scrollHeight","maxRows","parseFloat","autoresize_max_rows","maxHeight","inner_ref","createRef","_id","id","makeUniqueId","componentDidMount","window","resizeObserver","ResizeObserver","observe","document","body","addEventListener","componentWillUnmount","disconnect","removeEventListener","Math","floor","getComputedStyle","render","_this$context","extendPropsWithContextInClassComponent","defaultProps","skeleton","context","getTranslation","includeValidProps","FormRow","label","label_direction","label_sr_only","status","status_state","status_props","status_no_animation","globalStatus","suffix","disabled","stretch","placeholder","align","textarea_class","readOnly","textarea_attributes","class","_className","className","children","textarea_element","_textarea_element","attributes","showStatus","getStatusState","TextareaElement","textareaAttributes","JSON","parse","textareaParams","classnames","role","name","onChange","onChangeHandler","onFocus","onFocusHandler","onBlur","onBlurHandler","onKeyDown","onKeyDownHandler","combineDescribedBy","mainParams","createSkeletonClass","createSpacingClasses","innerParams","shellParams","placeholderStyle","skeletonDOMAttributes","validateDOMAttributes","createElement","for_id","text","sr_only","show","text_id","no_animation","ref","exports","Context","cols","on_change","on_focus","on_blur","on_key_down","process","env","NODE_ENV","propTypes","PropTypes","string","oneOfType","func","node","oneOf","bool","shape","message","number","spacingPropTypes"],"sources":["../../../../src/components/textarea/Textarea.js"],"sourcesContent":["/**\n * Web Textarea Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n processChildren,\n getStatusState,\n combineDescribedBy,\n warn,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { includeValidProps } from '../form-row/FormRowHelpers'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\n\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\n\n/**\n * The textarea component is an umbrella component for all textareas which share the same style as the classic `text` textarea field.\n */\nexport default class Textarea extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n value: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n textarea_state: PropTypes.string,\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n placeholder: PropTypes.string,\n align: PropTypes.oneOf(['left', 'right']),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n autoresize: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n autoresize_max_rows: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n class: PropTypes.string,\n textarea_class: PropTypes.string,\n textarea_attributes: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n ]),\n readOnly: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n rows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n cols: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n inner_ref: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n textarea_element: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.node,\n ]),\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n on_change: PropTypes.func,\n on_focus: PropTypes.func,\n on_blur: PropTypes.func,\n on_key_down: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n value: 'initval',\n id: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n status: null,\n textarea_state: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n placeholder: null,\n align: null,\n stretch: null,\n disabled: null,\n skeleton: null,\n autoresize: null,\n autoresize_max_rows: null,\n textarea_class: null,\n class: null,\n textarea_attributes: null,\n readOnly: false,\n rows: null,\n cols: null,\n inner_ref: null,\n\n className: null,\n textarea_element: null,\n children: null,\n\n on_change: null,\n on_focus: null,\n on_blur: null,\n on_key_down: null,\n on_state_update: null,\n }\n\n static getDerivedStateFromProps(props, state) {\n const value = Textarea.getValue(props)\n if (\n state._listenForPropChanges &&\n value !== 'initval' &&\n value !== state.value\n ) {\n if (\n value !== state.value &&\n value !== state._value &&\n typeof props.on_state_update === 'function'\n ) {\n dispatchCustomElementEvent({ props }, 'on_state_update', { value })\n }\n state.value = value\n }\n if (props.textarea_state) {\n state.textareaState = props.textarea_state\n }\n state._listenForPropChanges = true\n return state\n }\n\n static hasValue(value) {\n return (\n ((typeof value === 'string' || typeof value === 'number') &&\n String(value).length > 0) ||\n false\n )\n }\n\n static getValue(props) {\n const value = processChildren(props)\n if (value === '' || Textarea.hasValue(value)) {\n return value\n }\n return props.value\n }\n\n state = {\n textareaState: 'virgin',\n value: null,\n _value: null,\n }\n\n constructor(props) {\n super(props)\n\n this._ref = props.inner_ref || React.createRef()\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n\n // make sure we don't trigger getDerivedStateFromProps on startup\n this.state._listenForPropChanges = true\n if (props.textarea_state) {\n this.state.textareaState = props.textarea_state\n }\n this.state._value = props.value\n }\n componentDidMount() {\n if (isTrue(this.props.autoresize) && typeof window !== 'undefined') {\n this.setAutosize()\n try {\n this.resizeObserver = new ResizeObserver(this.setAutosize)\n this.resizeObserver.observe(document.body)\n } catch (e) {\n window.addEventListener('resize', this.setAutosize)\n }\n }\n }\n componentWillUnmount() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect()\n this.resizeObserver = null\n }\n if (typeof window !== 'undefined') {\n window.removeEventListener('resize', this.setAutosize)\n }\n }\n onFocusHandler = (event) => {\n const { value } = this._ref.current\n this.setState({\n value,\n _listenForPropChanges: false,\n textareaState: 'focus',\n })\n dispatchCustomElementEvent(this, 'on_focus', { value, event })\n }\n onBlurHandler = (event) => {\n const { value } = event.target\n this.setState({\n value,\n _listenForPropChanges: false,\n textareaState: Textarea.hasValue(value) ? 'dirty' : 'initial',\n })\n dispatchCustomElementEvent(this, 'on_blur', { value, event })\n }\n onChangeHandler = (event) => {\n const { value } = event.target\n\n if (isTrue(this.props.autoresize)) {\n this.prepareAutosize()\n }\n\n const rows = this.getRows(value)\n\n const ret = dispatchCustomElementEvent(this, 'on_change', {\n value,\n rows,\n event,\n })\n if (ret !== false) {\n this.setState({ value, _listenForPropChanges: false })\n if (isTrue(this.props.autoresize)) {\n this.setAutosize(rows)\n }\n }\n }\n onKeyDownHandler = (event) => {\n const rows = this.getRows()\n const { value } = event.target\n dispatchCustomElementEvent(this, 'on_key_down', {\n value,\n rows,\n event,\n })\n }\n prepareAutosize = () => {\n const elem = this._ref.current\n if (!elem) {\n return // stop here if no element was gotten\n }\n try {\n elem.style.height = 'auto'\n } catch (e) {\n warn(e)\n }\n }\n setAutosize = (rows = null) => {\n const elem = this._ref.current\n if (!elem) {\n return // stop here if no element was gotten\n }\n try {\n if (typeof this._heightOffset === 'undefined') {\n this._heightOffset = elem.offsetHeight - elem.clientHeight\n }\n\n elem.style.height = 'auto'\n\n // get rows after we set height to auto, this way we get 100% correct rows\n const lineHeight = this.getLineHeight()\n let newHeight = elem.scrollHeight + this._heightOffset\n if (!rows) {\n rows = this.getRows()\n }\n\n if (rows === 1) {\n if (newHeight > lineHeight) {\n newHeight = lineHeight\n }\n }\n\n const maxRows = parseFloat(this.props.autoresize_max_rows)\n if (maxRows > 0) {\n const maxHeight = maxRows * lineHeight\n\n if (rows > maxRows || newHeight > maxHeight) {\n newHeight = maxHeight\n }\n }\n\n elem.style.height = newHeight + 'px'\n } catch (e) {\n warn(e)\n }\n }\n getRows() {\n return (\n Math.floor(this._ref.current.scrollHeight / this.getLineHeight()) ||\n 1\n )\n }\n getLineHeight() {\n return parseFloat(getComputedStyle(this._ref.current).lineHeight) || 0\n }\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Textarea.defaultProps,\n { skeleton: this.context?.skeleton },\n this.context.getTranslation(this.props).Textarea,\n includeValidProps(this.context.FormRow),\n this.context.Textarea\n )\n\n const {\n label,\n label_direction,\n label_sr_only,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n disabled,\n skeleton,\n stretch,\n placeholder,\n align,\n textarea_class,\n readOnly,\n textarea_attributes,\n class: _className,\n className,\n\n autoresize,\n autoresize_max_rows, //eslint-disable-line\n id: _id, //eslint-disable-line\n children, //eslint-disable-line\n value: _value, //eslint-disable-line\n textarea_element: _textarea_element, //eslint-disable-line\n\n ...attributes\n } = props\n\n const { value, textareaState } = this.state\n\n const id = this._id\n const showStatus = getStatusState(status)\n const hasValue = Textarea.hasValue(value)\n\n // pass along all props we wish to have as params\n let { textarea_element: TextareaElement } = props\n\n const textareaAttributes = textarea_attributes\n ? typeof textarea_attributes === 'string'\n ? JSON.parse(textarea_attributes)\n : textarea_attributes\n : {}\n\n const textareaParams = {\n className: classnames('dnb-textarea__textarea', textarea_class),\n role: 'textbox',\n value: hasValue ? value : '',\n id,\n disabled: isTrue(disabled) || isTrue(skeleton),\n name: id,\n 'aria-placeholder': placeholder,\n ...attributes,\n ...textareaAttributes,\n onChange: this.onChangeHandler,\n onFocus: this.onFocusHandler,\n onBlur: this.onBlurHandler,\n // onPaste: this.onChangeHandler,\n onKeyDown: this.onKeyDownHandler,\n }\n\n // we may considder using: aria-details\n if (showStatus || suffix) {\n textareaParams['aria-describedby'] = combineDescribedBy(\n textareaParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (readOnly) {\n textareaParams['aria-readonly'] = textareaParams.readOnly = true\n }\n\n const mainParams = {\n className: classnames(\n 'dnb-textarea',\n `dnb-textarea--${textareaState}`,\n hasValue && 'dnb-textarea--has-content',\n align && `dnb-textarea__align--${align}`,\n status && `dnb-textarea__status--${status_state}`,\n autoresize && 'dnb-textarea__autoresize',\n label_direction && `dnb-textarea--${label_direction}`,\n isTrue(stretch) && `dnb-textarea--stretch`,\n 'dnb-form-component',\n createSkeletonClass(null, skeleton),\n createSpacingClasses(props),\n _className,\n className\n ),\n }\n\n const innerParams = {\n className: classnames(\n 'dnb-textarea__inner',\n createSkeletonClass('shape', skeleton, this.context)\n ),\n }\n\n const shellParams = {\n className: classnames('dnb-textarea__shell'),\n }\n\n if (isTrue(disabled) || isTrue(skeleton)) {\n shellParams['aria-disabled'] = true\n }\n\n // to show the ending dots on a placeholder, if the text is longer\n const placeholderStyle =\n parseFloat(this.props.rows) > 0\n ? {\n '--textarea-rows': parseFloat(this.props.rows),\n // '--textarea-cols': parseFloat(this.props.cols)\n }\n : null\n\n skeletonDOMAttributes(innerParams, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, textareaParams)\n validateDOMAttributes(null, innerParams)\n validateDOMAttributes(null, shellParams)\n\n if (TextareaElement && typeof TextareaElement === 'function') {\n TextareaElement = TextareaElement(textareaParams, this._ref)\n } else if (!TextareaElement && _textarea_element) {\n TextareaElement = _textarea_element\n }\n\n return (\n <span {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n for_id={id}\n text={label}\n label_direction={label_direction}\n sr_only={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n />\n )}\n\n <span {...innerParams}>\n <AlignmentHelper />\n\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span className=\"dnb-textarea__row\">\n <span {...shellParams}>\n {TextareaElement || (\n <textarea ref={this._ref} {...textareaParams} />\n )}\n\n {placeholder && (\n <span\n aria-hidden\n className={classnames(\n 'dnb-textarea__placeholder',\n align ? `dnb-textarea__align--${align}` : null\n )}\n style={placeholderStyle}\n >\n {placeholder}\n </span>\n )}\n\n <span className=\"dnb-textarea__state\" />\n </span>\n\n {suffix && (\n <Suffix\n className=\"dnb-textarea__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </span>\n )\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Textarea.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_FormLabel","_FormStatus","_componentHelper","_FormRowHelpers","_AlignmentHelper2","_SpacingHelper","_SkeletonHelper","_Context","_Suffix","_AlignmentHelper","_span","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Textarea","React","PureComponent","getDerivedStateFromProps","props","state","getValue","_listenForPropChanges","_value","on_state_update","dispatchCustomElementEvent","textarea_state","textareaState","hasValue","processChildren","constructor","_this","this","event","_ref","current","setState","isTrue","autoresize","prepareAutosize","rows","getRows","ret","setAutosize","elem","style","height","e","warn","_heightOffset","offsetHeight","clientHeight","lineHeight","getLineHeight","newHeight","scrollHeight","maxRows","parseFloat","autoresize_max_rows","maxHeight","inner_ref","createRef","_id","id","makeUniqueId","componentDidMount","window","resizeObserver","ResizeObserver","observe","document","body","addEventListener","componentWillUnmount","disconnect","removeEventListener","Math","floor","getComputedStyle","render","_this$context","extendPropsWithContextInClassComponent","defaultProps","skeleton","context","getTranslation","includeValidProps","FormRow","label","label_direction","label_sr_only","status","status_state","status_props","status_no_animation","globalStatus","suffix","disabled","stretch","placeholder","align","textarea_class","readOnly","textarea_attributes","class","_className","className","children","textarea_element","_textarea_element","attributes","showStatus","getStatusState","TextareaElement","textareaAttributes","JSON","parse","textareaParams","classnames","role","name","onChange","onChangeHandler","onFocus","onFocusHandler","onBlur","onBlurHandler","onKeyDown","onKeyDownHandler","combineDescribedBy","mainParams","createSkeletonClass","createSpacingClasses","innerParams","shellParams","placeholderStyle","skeletonDOMAttributes","validateDOMAttributes","createElement","for_id","text","sr_only","show","text_id","no_animation","ref","exports","Context","cols","on_change","on_focus","on_blur","on_key_down","process","env","NODE_ENV","propTypes","PropTypes","string","oneOfType","func","node","oneOf","bool","shape","message","number","spacingPropTypes"],"sources":["../../../../src/components/textarea/Textarea.js"],"sourcesContent":["/**\n * Web Textarea Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n processChildren,\n getStatusState,\n combineDescribedBy,\n warn,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { includeValidProps } from '../form-row/FormRowHelpers'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\n\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\n\n/**\n * The textarea component is an umbrella component for all textareas which share the same style as the classic `text` textarea field.\n */\nexport default class Textarea extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n value: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n textarea_state: PropTypes.string,\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n placeholder: PropTypes.string,\n align: PropTypes.oneOf(['left', 'right']),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n autoresize: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n autoresize_max_rows: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n ]),\n class: PropTypes.string,\n textarea_class: PropTypes.string,\n textarea_attributes: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n ]),\n readOnly: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n rows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n cols: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n inner_ref: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n textarea_element: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.node,\n ]),\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n on_change: PropTypes.func,\n on_focus: PropTypes.func,\n on_blur: PropTypes.func,\n on_key_down: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n value: 'initval',\n id: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n status: null,\n textarea_state: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n placeholder: null,\n align: null,\n stretch: null,\n disabled: null,\n skeleton: null,\n autoresize: null,\n autoresize_max_rows: null,\n textarea_class: null,\n class: null,\n textarea_attributes: null,\n readOnly: false,\n rows: null,\n cols: null,\n inner_ref: null,\n\n className: null,\n textarea_element: null,\n children: null,\n\n on_change: null,\n on_focus: null,\n on_blur: null,\n on_key_down: null,\n on_state_update: null,\n }\n\n static getDerivedStateFromProps(props, state) {\n const value = Textarea.getValue(props)\n if (\n state._listenForPropChanges &&\n value !== 'initval' &&\n value !== state.value\n ) {\n if (\n value !== state.value &&\n value !== state._value &&\n typeof props.on_state_update === 'function'\n ) {\n dispatchCustomElementEvent({ props }, 'on_state_update', { value })\n }\n state.value = value\n }\n if (props.textarea_state) {\n state.textareaState = props.textarea_state\n }\n state._listenForPropChanges = true\n return state\n }\n\n static hasValue(value) {\n return (\n ((typeof value === 'string' || typeof value === 'number') &&\n String(value).length > 0) ||\n false\n )\n }\n\n static getValue(props) {\n const value = processChildren(props)\n if (value === '' || Textarea.hasValue(value)) {\n return value\n }\n return props.value\n }\n\n state = {\n textareaState: 'virgin',\n value: null,\n _value: null,\n }\n\n constructor(props) {\n super(props)\n\n this._ref = props.inner_ref || React.createRef()\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n\n // make sure we don't trigger getDerivedStateFromProps on startup\n this.state._listenForPropChanges = true\n if (props.textarea_state) {\n this.state.textareaState = props.textarea_state\n }\n this.state._value = props.value\n }\n componentDidMount() {\n if (isTrue(this.props.autoresize) && typeof window !== 'undefined') {\n this.setAutosize()\n try {\n this.resizeObserver = new ResizeObserver(this.setAutosize)\n this.resizeObserver.observe(document.body)\n } catch (e) {\n window.addEventListener('resize', this.setAutosize)\n }\n }\n }\n componentWillUnmount() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect()\n this.resizeObserver = null\n }\n if (typeof window !== 'undefined') {\n window.removeEventListener('resize', this.setAutosize)\n }\n }\n onFocusHandler = (event) => {\n const { value } = this._ref.current\n this.setState({\n value,\n _listenForPropChanges: false,\n textareaState: 'focus',\n })\n dispatchCustomElementEvent(this, 'on_focus', { value, event })\n }\n onBlurHandler = (event) => {\n const { value } = event.target\n this.setState({\n value,\n _listenForPropChanges: false,\n textareaState: Textarea.hasValue(value) ? 'dirty' : 'initial',\n })\n dispatchCustomElementEvent(this, 'on_blur', { value, event })\n }\n onChangeHandler = (event) => {\n const { value } = event.target\n\n if (isTrue(this.props.autoresize)) {\n this.prepareAutosize()\n }\n\n const rows = this.getRows(value)\n\n const ret = dispatchCustomElementEvent(this, 'on_change', {\n value,\n rows,\n event,\n })\n if (ret !== false) {\n this.setState({ value, _listenForPropChanges: false })\n if (isTrue(this.props.autoresize)) {\n this.setAutosize(rows)\n }\n }\n }\n onKeyDownHandler = (event) => {\n const rows = this.getRows()\n const { value } = event.target\n dispatchCustomElementEvent(this, 'on_key_down', {\n value,\n rows,\n event,\n })\n }\n prepareAutosize = () => {\n const elem = this._ref.current\n if (!elem) {\n return // stop here if no element was gotten\n }\n try {\n elem.style.height = 'auto'\n } catch (e) {\n warn(e)\n }\n }\n setAutosize = (rows = null) => {\n const elem = this._ref.current\n if (!elem) {\n return // stop here if no element was gotten\n }\n try {\n if (typeof this._heightOffset === 'undefined') {\n this._heightOffset = elem.offsetHeight - elem.clientHeight\n }\n\n elem.style.height = 'auto'\n\n // get rows after we set height to auto, this way we get 100% correct rows\n const lineHeight = this.getLineHeight()\n let newHeight = elem.scrollHeight + this._heightOffset\n if (!rows) {\n rows = this.getRows()\n }\n\n if (rows === 1) {\n if (newHeight > lineHeight) {\n newHeight = lineHeight\n }\n }\n\n const maxRows = parseFloat(this.props.autoresize_max_rows)\n if (maxRows > 0) {\n const maxHeight = maxRows * lineHeight\n\n if (rows > maxRows || newHeight > maxHeight) {\n newHeight = maxHeight\n }\n }\n\n elem.style.height = newHeight + 'px'\n } catch (e) {\n warn(e)\n }\n }\n getRows() {\n return (\n Math.floor(this._ref.current.scrollHeight / this.getLineHeight()) ||\n 1\n )\n }\n getLineHeight() {\n return parseFloat(getComputedStyle(this._ref.current).lineHeight) || 0\n }\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Textarea.defaultProps,\n { skeleton: this.context?.skeleton },\n this.context.getTranslation(this.props).Textarea,\n includeValidProps(this.context.FormRow),\n this.context.Textarea\n )\n\n const {\n label,\n label_direction,\n label_sr_only,\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n disabled,\n skeleton,\n stretch,\n placeholder,\n align,\n textarea_class,\n readOnly,\n textarea_attributes,\n class: _className,\n className,\n\n autoresize,\n autoresize_max_rows, //eslint-disable-line\n id: _id, //eslint-disable-line\n children, //eslint-disable-line\n value: _value, //eslint-disable-line\n textarea_element: _textarea_element, //eslint-disable-line\n\n ...attributes\n } = props\n\n const { value, textareaState } = this.state\n\n const id = this._id\n const showStatus = getStatusState(status)\n const hasValue = Textarea.hasValue(value)\n\n // pass along all props we wish to have as params\n let { textarea_element: TextareaElement } = props\n\n const textareaAttributes = textarea_attributes\n ? typeof textarea_attributes === 'string'\n ? JSON.parse(textarea_attributes)\n : textarea_attributes\n : {}\n\n const textareaParams = {\n className: classnames('dnb-textarea__textarea', textarea_class),\n role: 'textbox',\n value: hasValue ? value : '',\n id,\n disabled: isTrue(disabled) || isTrue(skeleton),\n name: id,\n 'aria-placeholder': placeholder,\n ...attributes,\n ...textareaAttributes,\n onChange: this.onChangeHandler,\n onFocus: this.onFocusHandler,\n onBlur: this.onBlurHandler,\n // onPaste: this.onChangeHandler,\n onKeyDown: this.onKeyDownHandler,\n }\n\n // we may consider using: aria-details\n if (showStatus || suffix) {\n textareaParams['aria-describedby'] = combineDescribedBy(\n textareaParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (readOnly) {\n textareaParams['aria-readonly'] = textareaParams.readOnly = true\n }\n\n const mainParams = {\n className: classnames(\n 'dnb-textarea',\n `dnb-textarea--${textareaState}`,\n hasValue && 'dnb-textarea--has-content',\n align && `dnb-textarea__align--${align}`,\n status && `dnb-textarea__status--${status_state}`,\n autoresize && 'dnb-textarea__autoresize',\n label_direction && `dnb-textarea--${label_direction}`,\n isTrue(stretch) && `dnb-textarea--stretch`,\n 'dnb-form-component',\n createSkeletonClass(null, skeleton),\n createSpacingClasses(props),\n _className,\n className\n ),\n }\n\n const innerParams = {\n className: classnames(\n 'dnb-textarea__inner',\n createSkeletonClass('shape', skeleton, this.context)\n ),\n }\n\n const shellParams = {\n className: classnames('dnb-textarea__shell'),\n }\n\n if (isTrue(disabled) || isTrue(skeleton)) {\n shellParams['aria-disabled'] = true\n }\n\n // to show the ending dots on a placeholder, if the text is longer\n const placeholderStyle =\n parseFloat(this.props.rows) > 0\n ? {\n '--textarea-rows': parseFloat(this.props.rows),\n // '--textarea-cols': parseFloat(this.props.cols)\n }\n : null\n\n skeletonDOMAttributes(innerParams, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, textareaParams)\n validateDOMAttributes(null, innerParams)\n validateDOMAttributes(null, shellParams)\n\n if (TextareaElement && typeof TextareaElement === 'function') {\n TextareaElement = TextareaElement(textareaParams, this._ref)\n } else if (!TextareaElement && _textarea_element) {\n TextareaElement = _textarea_element\n }\n\n return (\n <span {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n for_id={id}\n text={label}\n label_direction={label_direction}\n sr_only={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n />\n )}\n\n <span {...innerParams}>\n <AlignmentHelper />\n\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span className=\"dnb-textarea__row\">\n <span {...shellParams}>\n {TextareaElement || (\n <textarea ref={this._ref} {...textareaParams} />\n )}\n\n {placeholder && (\n <span\n aria-hidden\n className={classnames(\n 'dnb-textarea__placeholder',\n align ? `dnb-textarea__align--${align}` : null\n )}\n style={placeholderStyle}\n >\n {placeholder}\n </span>\n )}\n\n <span className=\"dnb-textarea__state\" />\n </span>\n\n {suffix && (\n <Suffix\n className=\"dnb-textarea__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </span>\n )\n }\n}\n"],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
.dnb-textarea {
|
|
9
9
|
--textarea-padding-width: 0.5rem;
|
|
10
|
+
--textarea-rows: 2;
|
|
10
11
|
display: inline-flex;
|
|
11
12
|
font-size: var(--font-size-small);
|
|
12
13
|
line-height: var(--line-height-basis);
|
|
@@ -48,6 +49,33 @@
|
|
|
48
49
|
outline: none;
|
|
49
50
|
font-size: var(--font-size-basis);
|
|
50
51
|
line-height: var(--line-height-basis);
|
|
52
|
+
overflow-y: auto;
|
|
53
|
+
overscroll-behavior: contain;
|
|
54
|
+
-webkit-overflow-scrolling: touch;
|
|
55
|
+
-ms-overflow-style: auto;
|
|
56
|
+
scrollbar-color: var(--scrollbar-thumb-color, #888) transparent;
|
|
57
|
+
}
|
|
58
|
+
html:not([data-visual-test]) .dnb-textarea__textarea {
|
|
59
|
+
scroll-behavior: smooth;
|
|
60
|
+
}
|
|
61
|
+
@supports not (scrollbar-color: auto) {
|
|
62
|
+
.dnb-textarea__textarea::-webkit-scrollbar {
|
|
63
|
+
border-radius: var(--scrollbar-thumb-width, 0.5rem);
|
|
64
|
+
background-color: var(--scrollbar-track-color, #eee);
|
|
65
|
+
}
|
|
66
|
+
.dnb-textarea__textarea::-webkit-scrollbar:vertical {
|
|
67
|
+
width: var(--scrollbar-track-width, 0.5rem);
|
|
68
|
+
}
|
|
69
|
+
.dnb-textarea__textarea::-webkit-scrollbar:horizontal {
|
|
70
|
+
height: var(--scrollbar-track-width, 0.5rem);
|
|
71
|
+
}
|
|
72
|
+
.dnb-textarea__textarea::-webkit-scrollbar-thumb {
|
|
73
|
+
background-color: var(--scrollbar-thumb-color, #888);
|
|
74
|
+
border-radius: var(--scrollbar-thumb-width, 0.5rem);
|
|
75
|
+
}
|
|
76
|
+
.dnb-textarea__textarea::-webkit-scrollbar-thumb:hover {
|
|
77
|
+
background-color: var(--scrollbar-thumb-hover-color, #666);
|
|
78
|
+
}
|
|
51
79
|
}
|
|
52
80
|
.dnb-textarea__placeholder {
|
|
53
81
|
pointer-events: none;
|
|
@@ -58,6 +86,9 @@
|
|
|
58
86
|
overflow: hidden;
|
|
59
87
|
width: 100%;
|
|
60
88
|
height: 100%;
|
|
89
|
+
display: -webkit-box;
|
|
90
|
+
-webkit-box-orient: vertical;
|
|
91
|
+
-webkit-line-clamp: var(--textarea-rows, 2);
|
|
61
92
|
cursor: auto;
|
|
62
93
|
border: none;
|
|
63
94
|
margin: 0;
|
|
@@ -75,8 +106,15 @@
|
|
|
75
106
|
.dnb-textarea__autoresize .dnb-textarea__textarea {
|
|
76
107
|
resize: none;
|
|
77
108
|
}
|
|
109
|
+
.dnb-textarea--disabled .dnb-textarea__textarea, .dnb-textarea__textarea[disabled] {
|
|
110
|
+
-webkit-user-select: none;
|
|
111
|
+
user-select: none;
|
|
112
|
+
}
|
|
113
|
+
.dnb-textarea--disabled .dnb-textarea__textarea::-webkit-scrollbar, .dnb-textarea__textarea[disabled]::-webkit-scrollbar {
|
|
114
|
+
width: 0;
|
|
115
|
+
}
|
|
78
116
|
.dnb-textarea--has-content .dnb-textarea__textarea ~ .dnb-textarea__placeholder, .dnb-textarea--focus .dnb-textarea__textarea:not([disabled]):not([readonly]) ~ .dnb-textarea__placeholder {
|
|
79
|
-
|
|
117
|
+
display: none;
|
|
80
118
|
}
|
|
81
119
|
.dnb-textarea__inner > .dnb-form-status {
|
|
82
120
|
order: 2;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.dnb-textarea{--textarea-padding-width:0.5rem;display:inline-flex;font-size:var(--font-size-small);line-height:var(--line-height-basis)}.dnb-textarea__inner{display:inline-flex;flex-direction:column;margin:var(--textarea-padding-width)}.dnb-textarea__shell{display:inline-flex;font-size:var(--font-size-basis);position:relative}.dnb-textarea__state{background-color:var(--color-white);border-radius:.25rem;bottom:-.5rem;box-shadow:0 0 0 .0625rem var(--color-sea-green);left:-.5rem;position:absolute;right:-.5rem;top:-.5rem;z-index:1}.dnb-textarea__row{display:inline-flex}.dnb-textarea__suffix{padding-left:1.5rem}.dnb-textarea__textarea{
|
|
1
|
+
.dnb-textarea{--textarea-padding-width:0.5rem;--textarea-rows:2;display:inline-flex;font-size:var(--font-size-small);line-height:var(--line-height-basis)}.dnb-textarea__inner{display:inline-flex;flex-direction:column;margin:var(--textarea-padding-width)}.dnb-textarea__shell{display:inline-flex;font-size:var(--font-size-basis);position:relative}.dnb-textarea__state{background-color:var(--color-white);border-radius:.25rem;bottom:-.5rem;box-shadow:0 0 0 .0625rem var(--color-sea-green);left:-.5rem;position:absolute;right:-.5rem;top:-.5rem;z-index:1}.dnb-textarea__row{display:inline-flex}.dnb-textarea__suffix{padding-left:1.5rem}.dnb-textarea__textarea{-webkit-overflow-scrolling:touch;-ms-overflow-style:auto;border:none;cursor:auto;font-size:var(--font-size-basis);line-height:var(--line-height-basis);margin:0;outline:none;overflow-y:auto;overscroll-behavior:contain;padding:0 var(--textarea-padding-width);position:relative;scrollbar-color:var(--scrollbar-thumb-color,#888) transparent;z-index:2}html:not([data-visual-test]) .dnb-textarea__textarea{scroll-behavior:smooth}@supports not (scrollbar-color:auto){.dnb-textarea__textarea::-webkit-scrollbar{background-color:var(--scrollbar-track-color,#eee);border-radius:var(--scrollbar-thumb-width,.5rem)}.dnb-textarea__textarea::-webkit-scrollbar:vertical{width:var(--scrollbar-track-width,.5rem)}.dnb-textarea__textarea::-webkit-scrollbar:horizontal{height:var(--scrollbar-track-width,.5rem)}.dnb-textarea__textarea::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb-color,#888);border-radius:var(--scrollbar-thumb-width,.5rem)}.dnb-textarea__textarea::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover-color,#666)}}.dnb-textarea__placeholder{-webkit-box-orient:vertical;-webkit-line-clamp:var(--textarea-rows,2);border:none;cursor:auto;display:-webkit-box;font-size:var(--font-size-basis);height:100%;left:0;line-height:var(--line-height-basis);margin:0;outline:none;overflow:hidden;padding:0 var(--textarea-padding-width);pointer-events:none;position:absolute;top:0;width:100%;z-index:3}.dnb-textarea__placeholder,.dnb-textarea__textarea{text-align:left}.dnb-textarea__align--right .dnb-textarea__placeholder,.dnb-textarea__align--right .dnb-textarea__textarea{text-align:right}.dnb-textarea__autoresize .dnb-textarea__textarea{resize:none}.dnb-textarea--disabled .dnb-textarea__textarea,.dnb-textarea__textarea[disabled]{-webkit-user-select:none;user-select:none}.dnb-textarea--disabled .dnb-textarea__textarea::-webkit-scrollbar,.dnb-textarea__textarea[disabled]::-webkit-scrollbar{width:0}.dnb-textarea--focus .dnb-textarea__textarea:not([disabled]):not([readonly])~.dnb-textarea__placeholder,.dnb-textarea--has-content .dnb-textarea__textarea~.dnb-textarea__placeholder{display:none}.dnb-textarea__inner>.dnb-form-status{margin:1rem 0 0 calc(0px - var(--textarea-padding-width));order:2}.dnb-textarea:not(.dnb-textarea--vertical) .dnb-form-label{margin-top:.5rem}.dnb-textarea--vertical{align-items:flex-start;display:flex;flex-direction:column}.dnb-textarea:not(.dnb-textarea--vertical)[class*=__status]{align-items:flex-start}.dnb-textarea:not(.dnb-textarea--vertical)[class*=__status]>.dnb-form-label{margin-top:.25rem}@media screen and (max-width:40em){.dnb-textarea{flex-wrap:wrap}.dnb-textarea>.dnb-form-label{margin-bottom:.5rem;margin-top:.5rem}}.dnb-textarea--stretch{display:flex;flex-grow:1}.dnb-textarea--stretch .dnb-textarea__inner{flex-grow:1}.dnb-textarea--stretch .dnb-textarea__inner,.dnb-textarea--stretch .dnb-textarea__shell,.dnb-textarea--stretch .dnb-textarea__textarea{width:100%}.dnb-textarea--stretch .dnb-form-label+.dnb-textarea__inner{width:auto}.dnb-form-row--horizontal .dnb-textarea--stretch,.dnb-textarea--vertical.dnb-textarea--stretch .dnb-textarea__inner{width:100%}@media screen and (max-width:40em){.dnb-responsive-component .dnb-textarea{align-items:flex-start;display:flex;flex-direction:column;margin-bottom:.5rem}.dnb-responsive-component .dnb-textarea>.dnb-form-label{margin-bottom:.5rem}}html[data-visual-test] .dnb-textarea__textarea{caret-color:var(--color-white)}.dnb-textarea.dnb-skeleton .dnb-textarea__inner{border-radius:.25rem;margin:0}.dnb-textarea.dnb-skeleton .dnb-textarea__inner .dnb-textarea__shell{margin:var(--textarea-padding-width)}.dnb-textarea.dnb-skeleton .dnb-textarea__state,.dnb-textarea.dnb-skeleton .dnb-textarea__textarea{visibility:hidden}
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
|
|
20
20
|
.dnb-textarea {
|
|
21
21
|
--textarea-padding-width: 0.5rem;
|
|
22
|
+
--textarea-rows: 2; // using variable so it can be dynamically changed by react component
|
|
22
23
|
|
|
23
24
|
display: inline-flex;
|
|
24
25
|
|
|
@@ -67,6 +68,8 @@
|
|
|
67
68
|
z-index: 2;
|
|
68
69
|
|
|
69
70
|
@include textareaStyleCommon();
|
|
71
|
+
|
|
72
|
+
@include scrollY(auto);
|
|
70
73
|
}
|
|
71
74
|
|
|
72
75
|
&__placeholder {
|
|
@@ -81,6 +84,13 @@
|
|
|
81
84
|
width: 100%; // to get overflow working properly
|
|
82
85
|
height: 100%; // to get overflow working properly
|
|
83
86
|
|
|
87
|
+
// Required for line-clamp
|
|
88
|
+
display: -webkit-box;
|
|
89
|
+
-webkit-box-orient: vertical;
|
|
90
|
+
|
|
91
|
+
// Limit the text block to two lines
|
|
92
|
+
-webkit-line-clamp: var(--textarea-rows, 2);
|
|
93
|
+
|
|
84
94
|
@include textareaStyleCommon();
|
|
85
95
|
}
|
|
86
96
|
|
|
@@ -98,10 +108,19 @@
|
|
|
98
108
|
resize: none;
|
|
99
109
|
}
|
|
100
110
|
|
|
111
|
+
// disabled
|
|
112
|
+
&--disabled &__textarea,
|
|
113
|
+
&__textarea[disabled] {
|
|
114
|
+
user-select: none; // Safari / Touch fix
|
|
115
|
+
&::-webkit-scrollbar {
|
|
116
|
+
width: 0;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
101
120
|
// hide placeholder on focus
|
|
102
121
|
&--has-content &__textarea ~ &__placeholder,
|
|
103
122
|
&--focus &__textarea:not([disabled], [readonly]) ~ &__placeholder {
|
|
104
|
-
|
|
123
|
+
display: none;
|
|
105
124
|
}
|
|
106
125
|
|
|
107
126
|
&__inner > .dnb-form-status {
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Textarea theme
|
|
3
|
+
*
|
|
4
|
+
*/
|
|
5
|
+
/*
|
|
6
|
+
* Utilities
|
|
7
|
+
*/
|
|
8
|
+
.dnb-textarea {
|
|
9
|
+
--textarea-border-color: var(--sb-color-gray-dark-2);
|
|
10
|
+
--textarea-border-width: 0.0625rem;
|
|
11
|
+
}
|
|
12
|
+
.dnb-textarea__state {
|
|
13
|
+
transition: border-radius 0.25s ease-out;
|
|
14
|
+
--border-color: var(--textarea-border-color);
|
|
15
|
+
--border-width: var(--textarea-border-width);
|
|
16
|
+
box-shadow: inset 0 0 0 var(--border-width) var(--border-color);
|
|
17
|
+
border-color: transparent;
|
|
18
|
+
}
|
|
19
|
+
.dnb-textarea__textarea {
|
|
20
|
+
--textarea-color: var(--textarea-color--default);
|
|
21
|
+
--textarea-color--default: var(--color-black);
|
|
22
|
+
--textarea-color--active: var(--color-black);
|
|
23
|
+
color: var(--textarea-color);
|
|
24
|
+
background-color: transparent;
|
|
25
|
+
}
|
|
26
|
+
.dnb-textarea__placeholder {
|
|
27
|
+
color: var(--sb-color-gray-dark-3);
|
|
28
|
+
}
|
|
29
|
+
.dnb-textarea__textarea:not([disabled]):not(.dnb-textarea--disabled):hover ~ .dnb-textarea__state {
|
|
30
|
+
--textarea-border-color: var(--sb-color-violet);
|
|
31
|
+
--textarea-border-width: 0.125rem;
|
|
32
|
+
}
|
|
33
|
+
.dnb-textarea__textarea:not([disabled]):not(.dnb-textarea--disabled):focus {
|
|
34
|
+
--textarea-color: var(--textarea-color--active);
|
|
35
|
+
}
|
|
36
|
+
.dnb-textarea__textarea:not([disabled]):not(.dnb-textarea--disabled):focus ~ .dnb-textarea__state {
|
|
37
|
+
--textarea-border-color: var(--sb-color-violet);
|
|
38
|
+
border-radius: 1.5rem;
|
|
39
|
+
outline: none;
|
|
40
|
+
}
|
|
41
|
+
html[data-whatinput=keyboard] .dnb-textarea__textarea:not([disabled]):not(.dnb-textarea--disabled):focus ~ .dnb-textarea__state {
|
|
42
|
+
--border-color: var(--focus-ring-color);
|
|
43
|
+
--border-width: var(--focus-ring-width);
|
|
44
|
+
box-shadow: inset 0 0 0 var(--border-width) var(--border-color);
|
|
45
|
+
border-color: transparent;
|
|
46
|
+
}
|
|
47
|
+
.dnb-textarea--disabled .dnb-textarea__textarea, .dnb-textarea__textarea[disabled] {
|
|
48
|
+
color: var(--sb-color-gray-dark-2);
|
|
49
|
+
background-color: var(--sb-color-gray-light);
|
|
50
|
+
}
|
|
51
|
+
.dnb-textarea--disabled .dnb-textarea__textarea ~ .dnb-textarea__state, .dnb-textarea__textarea[disabled] ~ .dnb-textarea__state {
|
|
52
|
+
--textarea-border-color: var(--sb-color-gray-dark-2);
|
|
53
|
+
background-color: var(--sb-color-gray-light);
|
|
54
|
+
}
|
|
55
|
+
.dnb-textarea__status--error .dnb-textarea__textarea:not([disabled]):not(.dnb-textarea--disabled) {
|
|
56
|
+
--textarea-color--default: var(--sb-color-red);
|
|
57
|
+
--textarea-color--active: var(--color-black);
|
|
58
|
+
}
|
|
59
|
+
.dnb-textarea__status--error .dnb-textarea__textarea:not([disabled]):not(.dnb-textarea--disabled) ~ .dnb-textarea__state {
|
|
60
|
+
--textarea-border-color: var(--sb-color-red);
|
|
61
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.dnb-textarea{--textarea-border-color:var(--sb-color-gray-dark-2);--textarea-border-width:0.0625rem}.dnb-textarea__state{--border-color:var(--textarea-border-color);--border-width:var(--textarea-border-width);border-color:transparent;box-shadow:inset 0 0 0 var(--border-width) var(--border-color);transition:border-radius .25s ease-out}.dnb-textarea__textarea{--textarea-color:var(--textarea-color--default);--textarea-color--default:var(--color-black);--textarea-color--active:var(--color-black);background-color:transparent;color:var(--textarea-color)}.dnb-textarea__placeholder{color:var(--sb-color-gray-dark-3)}.dnb-textarea__textarea:not([disabled]):not(.dnb-textarea--disabled):hover~.dnb-textarea__state{--textarea-border-color:var(--sb-color-violet);--textarea-border-width:0.125rem}.dnb-textarea__textarea:not([disabled]):not(.dnb-textarea--disabled):focus{--textarea-color:var(--textarea-color--active)}.dnb-textarea__textarea:not([disabled]):not(.dnb-textarea--disabled):focus~.dnb-textarea__state{--textarea-border-color:var(--sb-color-violet);border-radius:1.5rem;outline:none}html[data-whatinput=keyboard] .dnb-textarea__textarea:not([disabled]):not(.dnb-textarea--disabled):focus~.dnb-textarea__state{--border-color:var(--focus-ring-color);--border-width:var(--focus-ring-width);border-color:transparent;box-shadow:inset 0 0 0 var(--border-width) var(--border-color)}.dnb-textarea--disabled .dnb-textarea__textarea,.dnb-textarea__textarea[disabled]{background-color:var(--sb-color-gray-light);color:var(--sb-color-gray-dark-2)}.dnb-textarea--disabled .dnb-textarea__textarea~.dnb-textarea__state,.dnb-textarea__textarea[disabled]~.dnb-textarea__state{--textarea-border-color:var(--sb-color-gray-dark-2);background-color:var(--sb-color-gray-light)}.dnb-textarea__status--error .dnb-textarea__textarea:not([disabled]):not(.dnb-textarea--disabled){--textarea-color--default:var(--sb-color-red);--textarea-color--active:var(--color-black)}.dnb-textarea__status--error .dnb-textarea__textarea:not([disabled]):not(.dnb-textarea--disabled)~.dnb-textarea__state{--textarea-border-color:var(--sb-color-red)}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Textarea theme
|
|
3
|
+
*
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
@import '../../../../style/core/utilities.scss';
|
|
7
|
+
|
|
8
|
+
.dnb-textarea {
|
|
9
|
+
--textarea-border-color: var(--sb-color-gray-dark-2);
|
|
10
|
+
--textarea-border-width: 0.0625rem;
|
|
11
|
+
|
|
12
|
+
&__state {
|
|
13
|
+
transition: border-radius 0.25s ease-out;
|
|
14
|
+
@include fakeBorder(
|
|
15
|
+
var(--textarea-border-color),
|
|
16
|
+
var(--textarea-border-width),
|
|
17
|
+
inset
|
|
18
|
+
);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
&__textarea {
|
|
22
|
+
--textarea-color: var(--textarea-color--default);
|
|
23
|
+
--textarea-color--default: var(--color-black);
|
|
24
|
+
--textarea-color--active: var(--color-black);
|
|
25
|
+
|
|
26
|
+
color: var(--textarea-color);
|
|
27
|
+
background-color: transparent;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
&__placeholder {
|
|
31
|
+
color: var(--sb-color-gray-dark-3);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// hover
|
|
35
|
+
&__textarea:not([disabled]):not(#{&}--disabled):hover ~ &__state {
|
|
36
|
+
--textarea-border-color: var(--sb-color-violet);
|
|
37
|
+
--textarea-border-width: 0.125rem;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// focus
|
|
41
|
+
&__textarea:not([disabled]):not(#{&}--disabled):focus {
|
|
42
|
+
--textarea-color: var(--textarea-color--active);
|
|
43
|
+
|
|
44
|
+
~ .dnb-textarea__state {
|
|
45
|
+
--textarea-border-color: var(--sb-color-violet);
|
|
46
|
+
border-radius: 1.5rem;
|
|
47
|
+
@include focusRing(null, null, inset);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// disabled
|
|
52
|
+
&--disabled &__textarea,
|
|
53
|
+
&__textarea[disabled] {
|
|
54
|
+
color: var(--sb-color-gray-dark-2);
|
|
55
|
+
background-color: var(--sb-color-gray-light);
|
|
56
|
+
|
|
57
|
+
~ .dnb-textarea__state {
|
|
58
|
+
--textarea-border-color: var(--sb-color-gray-dark-2);
|
|
59
|
+
background-color: var(--sb-color-gray-light);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
// with status_state = "error"
|
|
64
|
+
&__status--error &__textarea:not([disabled]):not(#{&}--disabled) {
|
|
65
|
+
--textarea-color--default: var(--sb-color-red);
|
|
66
|
+
--textarea-color--active: var(--color-black);
|
|
67
|
+
|
|
68
|
+
~ .dnb-textarea__state {
|
|
69
|
+
--textarea-border-color: var(--sb-color-red);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|