@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":"Radio.js","names":["React","PropTypes","classnames","keycode","isTrue","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","getStatusState","combineDescribedBy","dispatchCustomElementEvent","AlignmentHelper","spacingPropTypes","createSpacingClasses","skeletonDOMAttributes","createSkeletonClass","FormLabel","FormStatus","RadioGroup","RadioGroupContext","Context","Suffix","includeValidProps","Radio","PureComponent","getDerivedStateFromProps","props","state","_listenForPropChanges","checked","_checked","parseChecked","__checked","constructor","_defineProperty","event","key","isInNoGroup","onChangeHandler","isContextGroupOrSingle","value","context","preventDefault","setState","_event","readOnly","target","isPlainGroup","setTimeout","callOnChange","group","_ref","onChange","_refInput","current","focus","createRef","_id","id","render","createElement","Consumer","contextProps","defaultProps","skeleton","FormRow","status","status_state","status_props","status_no_animation","globalStatus","suffix","element","label","label_sr_only","label_position","size","className","class","_className","_group","_value","disabled","_disabled","children","on_change","on_state_update","rest","_objectWithoutProperties","_excluded","hasContext","name","showStatus","mainParams","inputParams","role","type","Object","assign","labelComp","for_id","text","sr_only","Element","_AlignmentHelper","_extends","show","text_id","width_selector","no_animation","undefined","ref","onClick","onClickHandler","onKeyDown","onKeyDownHandler","_span","_span2","attributes","test","String","process","env","NODE_ENV","propTypes","_objectSpread","oneOfType","string","func","node","bool","oneOf","object","shape","message"],"sources":["../../../../src/components/radio/Radio.js"],"sourcesContent":["/**\n * Web Radio Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\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 FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport RadioGroup from './RadioGroup'\nimport RadioGroupContext from './RadioGroupContext'\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\nimport { includeValidProps } from '../form-row/FormRowHelpers'\n\n/**\n * The radio component is our enhancement of the classic radio button.\n */\nexport default class Radio extends React.PureComponent {\n static contextType = RadioGroupContext\n\n static propTypes = {\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n label_position: PropTypes.oneOf(['left', 'right']),\n checked: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n id: PropTypes.string,\n element: PropTypes.node,\n group: PropTypes.string,\n size: PropTypes.oneOf(['default', 'medium', 'large']),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\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 value: PropTypes.string,\n attributes: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n readOnly: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n ...spacingPropTypes,\n\n class: PropTypes.string,\n className: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n\n on_change: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n label: null,\n label_sr_only: null,\n label_position: null,\n checked: null,\n disabled: null,\n id: null,\n size: null,\n element: 'input',\n group: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n value: '',\n attributes: null,\n readOnly: false,\n skeleton: null,\n class: null,\n\n className: null,\n children: null,\n\n on_change: null,\n on_state_update: null,\n }\n\n static Group = RadioGroup\n\n static parseChecked = (state) => /true|on/.test(String(state))\n\n static getDerivedStateFromProps(props, state) {\n if (state._listenForPropChanges) {\n if (props.checked !== state._checked) {\n state.checked = Radio.parseChecked(props.checked)\n }\n }\n state._listenForPropChanges = true\n\n if (state.checked !== state.__checked) {\n dispatchCustomElementEvent({ props }, 'on_state_update', {\n checked: state.checked,\n })\n }\n\n state._checked = props.checked\n state.__checked = state.checked\n\n return state\n }\n\n constructor(props) {\n super(props)\n this._refInput = React.createRef()\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n this.state = {\n _listenForPropChanges: true,\n }\n }\n\n onKeyDownHandler = (event) => {\n const key = keycode(event)\n // only have key support if there is only a single radio\n if (this.isInNoGroup()) {\n switch (key) {\n case 'enter':\n this.onChangeHandler(event)\n break\n }\n } else if (this.isContextGroupOrSingle()) {\n switch (key) {\n case 'space':\n case 'enter': {\n const { value } = this.context\n if (value !== null && typeof value !== 'undefined') {\n event.preventDefault()\n }\n if (key === 'enter') {\n const checked = !this.state.checked\n this.setState({ checked, _listenForPropChanges: false })\n }\n break\n }\n }\n } else {\n // else we only use the native support, and don't want space support\n // because only arrow keys has to be used\n switch (key) {\n case 'space': {\n event.preventDefault()\n break\n }\n }\n }\n dispatchCustomElementEvent(this, 'on_key_down', { event })\n }\n\n onChangeHandler = (_event) => {\n const event = _event\n if (isTrue(this.props.readOnly)) {\n return event.preventDefault()\n }\n const value = event.target.value\n const checked = !this.state.checked\n\n // delay in case we have a props group only\n if (this.isPlainGroup()) {\n // in case we have a false \"hasContext\" but a \"group\"\n // then we have to use a delay, to overwrite the uncrontrolled state\n setTimeout(() => {\n this.setState({ checked, _listenForPropChanges: false }, () =>\n this.callOnChange({ value, checked, event })\n )\n }, 1)\n } else {\n this.setState({ checked, _listenForPropChanges: false })\n this.callOnChange({ value, checked, event })\n }\n }\n\n // only support on change if there is either:\n // 1. context group usage\n // 2. or a single, no group usage\n isContextGroupOrSingle = () =>\n typeof this.context.value !== 'undefined' && !this.props.group\n isPlainGroup = () =>\n typeof this.context.value === 'undefined' && this.props.group\n isInNoGroup = () =>\n typeof this.context.value === 'undefined' && !this.props.group\n\n onClickHandler = (event) => {\n if (isTrue(this.props.readOnly)) {\n return event.preventDefault()\n }\n // only have click support if there are more plain radio\n if (!this.isPlainGroup()) {\n return\n }\n const value = event.target.value\n const checked = event.target.checked\n this.callOnChange({ value, checked, event })\n }\n\n callOnChange = ({ value, checked, event }) => {\n const { group } = this.props\n if (this.context.onChange) {\n this.context.onChange({\n value,\n })\n }\n dispatchCustomElementEvent(this, 'on_change', {\n group,\n checked,\n value,\n event,\n })\n\n // help firefox and safari to have an correct state after a click\n if (this._refInput.current) {\n this._refInput.current.focus()\n }\n }\n\n render() {\n return (\n <Context.Consumer>\n {(context) => {\n // from internal context\n const contextProps = extendPropsWithContextInClassComponent(\n this.props,\n Radio.defaultProps,\n this.context\n )\n\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Radio.defaultProps,\n contextProps,\n { skeleton: context?.skeleton },\n includeValidProps(context.FormRow),\n context.Radio\n )\n\n const {\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n element,\n label,\n label_sr_only,\n label_position,\n size,\n readOnly,\n skeleton,\n className,\n class: _className,\n id: _id, // eslint-disable-line\n group: _group, // eslint-disable-line\n value: _value, // eslint-disable-line\n checked: _checked, // eslint-disable-line\n disabled: _disabled, // eslint-disable-line\n children, // eslint-disable-line\n on_change, // eslint-disable-line\n on_state_update, // eslint-disable-line\n\n ...rest\n } = props\n\n let { checked } = this.state\n let { value, group, disabled } = props // get it from context also\n\n const hasContext = typeof this.context.name !== 'undefined'\n\n if (hasContext) {\n if (typeof this.context.value !== 'undefined') {\n checked = this.context.value === value\n }\n group = this.context.name\n if (isTrue(this.context.disabled) && disabled !== false) {\n disabled = true\n }\n } else if (typeof rest.name !== 'undefined') {\n group = rest.name\n }\n\n const id = this._id\n const showStatus = getStatusState(status)\n\n const mainParams = {\n className: classnames(\n 'dnb-radio',\n status && `dnb-radio__status--${status_state}`,\n size && `dnb-radio--${size}`,\n label &&\n `dnb-radio--label-position-${label_position || 'right'}`,\n createSpacingClasses(props),\n className,\n _className\n ),\n }\n\n let inputParams = {\n role: hasContext || group ? 'radio' : null,\n type: hasContext || group ? 'radio' : 'checkbox', // overwriting the type\n }\n\n if (!group) {\n inputParams.type = 'checkbox'\n inputParams.role = 'radio' // breaks axe test\n }\n\n if (showStatus || suffix) {\n inputParams['aria-describedby'] = combineDescribedBy(\n inputParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (readOnly) {\n inputParams['aria-readonly'] = inputParams.readOnly = true\n }\n\n inputParams = Object.assign(inputParams, rest)\n\n skeletonDOMAttributes(inputParams, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, inputParams)\n\n const labelComp = label && (\n <FormLabel\n id={id + '-label'}\n for_id={id}\n text={label}\n disabled={disabled}\n skeleton={skeleton}\n sr_only={label_sr_only}\n />\n )\n\n const Element = element || 'input'\n\n return (\n <span {...mainParams}>\n <span className=\"dnb-radio__order\">\n {label_position === 'left' && labelComp}\n\n <span className=\"dnb-radio__inner\">\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 width_selector={id + ', ' + id + '-label'}\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-radio__row\">\n <span className=\"dnb-radio__shell\">\n <Element\n type=\"radio\"\n value={value}\n id={id}\n name={group}\n className=\"dnb-radio__input\"\n checked={checked}\n aria-checked={\n this.isPlainGroup() ? undefined : checked\n }\n disabled={isTrue(disabled)}\n ref={this._refInput}\n {...inputParams}\n onChange={this.onChangeHandler}\n onClick={this.onClickHandler}\n onKeyDown={this.onKeyDownHandler}\n />\n\n <span\n className={classnames(\n 'dnb-radio__button',\n createSkeletonClass(\n 'shape',\n skeleton,\n this.context\n )\n )}\n aria-hidden\n />\n <span className=\"dnb-radio__focus\" aria-hidden />\n <span className=\"dnb-radio__dot\" aria-hidden />\n </span>\n\n {label_position !== 'left' && labelComp}\n\n {suffix && (\n <Suffix\n className=\"dnb-radio__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 </span>\n )\n }}\n </Context.Consumer>\n )\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Radio.js","names":["React","PropTypes","classnames","keycode","isTrue","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","getStatusState","combineDescribedBy","dispatchCustomElementEvent","AlignmentHelper","spacingPropTypes","createSpacingClasses","skeletonDOMAttributes","createSkeletonClass","FormLabel","FormStatus","RadioGroup","RadioGroupContext","Context","Suffix","includeValidProps","Radio","PureComponent","getDerivedStateFromProps","props","state","_listenForPropChanges","checked","_checked","parseChecked","__checked","constructor","_defineProperty","event","key","isInNoGroup","onChangeHandler","isContextGroupOrSingle","value","context","preventDefault","setState","_event","readOnly","target","isPlainGroup","setTimeout","callOnChange","group","_ref","onChange","_refInput","current","focus","createRef","_id","id","render","createElement","Consumer","contextProps","defaultProps","skeleton","FormRow","status","status_state","status_props","status_no_animation","globalStatus","suffix","element","label","label_sr_only","label_position","size","className","class","_className","_group","_value","disabled","_disabled","children","on_change","on_state_update","rest","_objectWithoutProperties","_excluded","hasContext","name","showStatus","mainParams","inputParams","role","type","Object","assign","labelComp","for_id","text","sr_only","Element","_AlignmentHelper","_extends","show","text_id","width_selector","no_animation","undefined","ref","onClick","onClickHandler","onKeyDown","onKeyDownHandler","_span","_span2","attributes","test","String","process","env","NODE_ENV","propTypes","_objectSpread","oneOfType","string","func","node","bool","oneOf","object","shape","message"],"sources":["../../../../src/components/radio/Radio.js"],"sourcesContent":["/**\n * Web Radio Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\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 FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport RadioGroup from './RadioGroup'\nimport RadioGroupContext from './RadioGroupContext'\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\nimport { includeValidProps } from '../form-row/FormRowHelpers'\n\n/**\n * The radio component is our enhancement of the classic radio button.\n */\nexport default class Radio extends React.PureComponent {\n static contextType = RadioGroupContext\n\n static propTypes = {\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n label_position: PropTypes.oneOf(['left', 'right']),\n checked: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n id: PropTypes.string,\n element: PropTypes.node,\n group: PropTypes.string,\n size: PropTypes.oneOf(['default', 'medium', 'large']),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\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 value: PropTypes.string,\n attributes: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n readOnly: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n ...spacingPropTypes,\n\n class: PropTypes.string,\n className: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n\n on_change: PropTypes.func,\n on_state_update: PropTypes.func,\n }\n\n static defaultProps = {\n label: null,\n label_sr_only: null,\n label_position: null,\n checked: null,\n disabled: null,\n id: null,\n size: null,\n element: 'input',\n group: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n value: '',\n attributes: null,\n readOnly: false,\n skeleton: null,\n class: null,\n\n className: null,\n children: null,\n\n on_change: null,\n on_state_update: null,\n }\n\n static Group = RadioGroup\n\n static parseChecked = (state) => /true|on/.test(String(state))\n\n static getDerivedStateFromProps(props, state) {\n if (state._listenForPropChanges) {\n if (props.checked !== state._checked) {\n state.checked = Radio.parseChecked(props.checked)\n }\n }\n state._listenForPropChanges = true\n\n if (state.checked !== state.__checked) {\n dispatchCustomElementEvent({ props }, 'on_state_update', {\n checked: state.checked,\n })\n }\n\n state._checked = props.checked\n state.__checked = state.checked\n\n return state\n }\n\n constructor(props) {\n super(props)\n this._refInput = React.createRef()\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n this.state = {\n _listenForPropChanges: true,\n }\n }\n\n onKeyDownHandler = (event) => {\n const key = keycode(event)\n // only have key support if there is only a single radio\n if (this.isInNoGroup()) {\n switch (key) {\n case 'enter':\n this.onChangeHandler(event)\n break\n }\n } else if (this.isContextGroupOrSingle()) {\n switch (key) {\n case 'space':\n case 'enter': {\n const { value } = this.context\n if (value !== null && typeof value !== 'undefined') {\n event.preventDefault()\n }\n if (key === 'enter') {\n const checked = !this.state.checked\n this.setState({ checked, _listenForPropChanges: false })\n }\n break\n }\n }\n } else {\n // else we only use the native support, and don't want space support\n // because only arrow keys has to be used\n switch (key) {\n case 'space': {\n event.preventDefault()\n break\n }\n }\n }\n dispatchCustomElementEvent(this, 'on_key_down', { event })\n }\n\n onChangeHandler = (_event) => {\n const event = _event\n if (isTrue(this.props.readOnly)) {\n return event.preventDefault()\n }\n const value = event.target.value\n const checked = !this.state.checked\n\n // delay in case we have a props group only\n if (this.isPlainGroup()) {\n // in case we have a false \"hasContext\" but a \"group\"\n // then we have to use a delay, to overwrite the uncontrolled state\n setTimeout(() => {\n this.setState({ checked, _listenForPropChanges: false }, () =>\n this.callOnChange({ value, checked, event })\n )\n }, 1)\n } else {\n this.setState({ checked, _listenForPropChanges: false })\n this.callOnChange({ value, checked, event })\n }\n }\n\n // only support on change if there is either:\n // 1. context group usage\n // 2. or a single, no group usage\n isContextGroupOrSingle = () =>\n typeof this.context.value !== 'undefined' && !this.props.group\n isPlainGroup = () =>\n typeof this.context.value === 'undefined' && this.props.group\n isInNoGroup = () =>\n typeof this.context.value === 'undefined' && !this.props.group\n\n onClickHandler = (event) => {\n if (isTrue(this.props.readOnly)) {\n return event.preventDefault()\n }\n // only have click support if there are more plain radio\n if (!this.isPlainGroup()) {\n return\n }\n const value = event.target.value\n const checked = event.target.checked\n this.callOnChange({ value, checked, event })\n }\n\n callOnChange = ({ value, checked, event }) => {\n const { group } = this.props\n if (this.context.onChange) {\n this.context.onChange({\n value,\n })\n }\n dispatchCustomElementEvent(this, 'on_change', {\n group,\n checked,\n value,\n event,\n })\n\n // help firefox and safari to have an correct state after a click\n if (this._refInput.current) {\n this._refInput.current.focus()\n }\n }\n\n render() {\n return (\n <Context.Consumer>\n {(context) => {\n // from internal context\n const contextProps = extendPropsWithContextInClassComponent(\n this.props,\n Radio.defaultProps,\n this.context\n )\n\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Radio.defaultProps,\n contextProps,\n { skeleton: context?.skeleton },\n includeValidProps(context.FormRow),\n context.Radio\n )\n\n const {\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n element,\n label,\n label_sr_only,\n label_position,\n size,\n readOnly,\n skeleton,\n className,\n class: _className,\n id: _id, // eslint-disable-line\n group: _group, // eslint-disable-line\n value: _value, // eslint-disable-line\n checked: _checked, // eslint-disable-line\n disabled: _disabled, // eslint-disable-line\n children, // eslint-disable-line\n on_change, // eslint-disable-line\n on_state_update, // eslint-disable-line\n\n ...rest\n } = props\n\n let { checked } = this.state\n let { value, group, disabled } = props // get it from context also\n\n const hasContext = typeof this.context.name !== 'undefined'\n\n if (hasContext) {\n if (typeof this.context.value !== 'undefined') {\n checked = this.context.value === value\n }\n group = this.context.name\n if (isTrue(this.context.disabled) && disabled !== false) {\n disabled = true\n }\n } else if (typeof rest.name !== 'undefined') {\n group = rest.name\n }\n\n const id = this._id\n const showStatus = getStatusState(status)\n\n const mainParams = {\n className: classnames(\n 'dnb-radio',\n status && `dnb-radio__status--${status_state}`,\n size && `dnb-radio--${size}`,\n label &&\n `dnb-radio--label-position-${label_position || 'right'}`,\n createSpacingClasses(props),\n className,\n _className\n ),\n }\n\n let inputParams = {\n role: hasContext || group ? 'radio' : null,\n type: hasContext || group ? 'radio' : 'checkbox', // overwriting the type\n }\n\n if (!group) {\n inputParams.type = 'checkbox'\n inputParams.role = 'radio' // breaks axe test\n }\n\n if (showStatus || suffix) {\n inputParams['aria-describedby'] = combineDescribedBy(\n inputParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (readOnly) {\n inputParams['aria-readonly'] = inputParams.readOnly = true\n }\n\n inputParams = Object.assign(inputParams, rest)\n\n skeletonDOMAttributes(inputParams, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, inputParams)\n\n const labelComp = label && (\n <FormLabel\n id={id + '-label'}\n for_id={id}\n text={label}\n disabled={disabled}\n skeleton={skeleton}\n sr_only={label_sr_only}\n />\n )\n\n const Element = element || 'input'\n\n return (\n <span {...mainParams}>\n <span className=\"dnb-radio__order\">\n {label_position === 'left' && labelComp}\n\n <span className=\"dnb-radio__inner\">\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 width_selector={id + ', ' + id + '-label'}\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-radio__row\">\n <span className=\"dnb-radio__shell\">\n <Element\n type=\"radio\"\n value={value}\n id={id}\n name={group}\n className=\"dnb-radio__input\"\n checked={checked}\n aria-checked={\n this.isPlainGroup() ? undefined : checked\n }\n disabled={isTrue(disabled)}\n ref={this._refInput}\n {...inputParams}\n onChange={this.onChangeHandler}\n onClick={this.onClickHandler}\n onKeyDown={this.onKeyDownHandler}\n />\n\n <span\n className={classnames(\n 'dnb-radio__button',\n createSkeletonClass(\n 'shape',\n skeleton,\n this.context\n )\n )}\n aria-hidden\n />\n <span className=\"dnb-radio__focus\" aria-hidden />\n <span className=\"dnb-radio__dot\" aria-hidden />\n </span>\n\n {label_position !== 'left' && labelComp}\n\n {suffix && (\n <Suffix\n className=\"dnb-radio__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 </span>\n )\n }}\n </Context.Consumer>\n )\n }\n}\n"],"mappings":"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"}
|
|
@@ -88,21 +88,28 @@
|
|
|
88
88
|
.dnb-section--fire-red .dnb-anchor, .dnb-section--emerald-green .dnb-anchor, .dnb-section--sea-green .dnb-anchor {
|
|
89
89
|
color: var(--color-white);
|
|
90
90
|
}
|
|
91
|
-
.dnb-section--fire-red .dnb-anchor:hover, .dnb-section--
|
|
91
|
+
.dnb-section--fire-red .dnb-anchor:hover, .dnb-section--emerald-green .dnb-anchor:hover, .dnb-section--sea-green .dnb-anchor:hover {
|
|
92
92
|
color: var(--color-emerald-green);
|
|
93
|
-
|
|
94
|
-
text-decoration: none;
|
|
93
|
+
box-shadow: inset 100vw 100vw 0 0 var(--color-white), -0.125em 0 0 0 var(--color-white), 0.125em 0 0 0 var(--color-white);
|
|
95
94
|
}
|
|
96
95
|
.dnb-section--fire-red .dnb-anchor:active, .dnb-section--emerald-green .dnb-anchor:active, .dnb-section--sea-green .dnb-anchor:active {
|
|
97
|
-
color: var(--color-
|
|
98
|
-
background-color:
|
|
96
|
+
color: var(--color-white);
|
|
97
|
+
background-color: transparent;
|
|
98
|
+
box-shadow: inset 100vw 100vw 0 0 transparent, -0.125em 0 0 0 transparent, 0.125em 0 0 0 transparent;
|
|
99
99
|
}
|
|
100
|
-
.dnb-section--fire-red .dnb-anchor
|
|
100
|
+
.dnb-section--fire-red .dnb-anchor.focus-visible, .dnb-section--emerald-green .dnb-anchor.focus-visible, .dnb-section--sea-green .dnb-anchor.focus-visible {
|
|
101
101
|
color: var(--color-white);
|
|
102
102
|
background-color: transparent;
|
|
103
103
|
outline: none;
|
|
104
|
+
--border-color: var(--color-white);
|
|
105
|
+
--border-width: var(--focus-ring-width);
|
|
106
|
+
box-shadow: 0 0 0 var(--border-width) var(--border-color);
|
|
107
|
+
border-color: transparent;
|
|
104
108
|
}
|
|
105
|
-
|
|
109
|
+
.dnb-section--fire-red .dnb-anchor:focus-visible, .dnb-section--emerald-green .dnb-anchor:focus-visible, .dnb-section--sea-green .dnb-anchor:focus-visible {
|
|
110
|
+
color: var(--color-white);
|
|
111
|
+
background-color: transparent;
|
|
112
|
+
outline: none;
|
|
106
113
|
--border-color: var(--color-white);
|
|
107
114
|
--border-width: var(--focus-ring-width);
|
|
108
115
|
box-shadow: 0 0 0 var(--border-width) var(--border-color);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.dnb-section--divider{color:var(--color-black-80)}.dnb-section--divider:after{box-shadow:99vw 0 0 0 currentcolor,198vw 0 0 0 currentcolor,297vw 0 0 0 currentcolor,396vw 0 0 0 currentcolor,0 .0625rem 0 0 var(--color-mint-green-50),99vw .0625rem 0 0 var(--color-mint-green-50),0 -.0625rem 0 0 var(--color-mint-green-50),99vw -.0625rem 0 0 var(--color-mint-green-50),198vw .0625rem 0 0 var(--color-mint-green-50),198vw -.0625rem 0 0 var(--color-mint-green-50);color:var(--color-white)}.dnb-section--transparent:after{color:transparent}.dnb-section--mint-green-12{color:var(--color-black-80)}.dnb-section--mint-green-12:after{color:var(--color-mint-green-12)}.dnb-section--white{color:var(--color-black-80)}.dnb-section--white:after{color:var(--color-white)}.dnb-section--mint-green{color:var(--color-black-80)}.dnb-section--mint-green:after{color:var(--color-mint-green)}.dnb-section--lavender{color:var(--color-black-80)}.dnb-section--lavender:after{color:var(--color-lavender)}.dnb-section--sand-yellow{color:var(--color-black-80)}.dnb-section--sand-yellow:after{color:var(--color-sand-yellow)}.dnb-section--pistachio{color:var(--color-black-80)}.dnb-section--pistachio:after{color:var(--color-pistachio)}.dnb-section--black-3{color:var(--color-black-80)}.dnb-section--black-3:after{color:var(--color-black-3)}.dnb-section--emerald-green{color:var(--color-mint-green)}.dnb-section--emerald-green:after{color:var(--color-emerald-green)}.dnb-section--sea-green{color:var(--color-white)}.dnb-section--sea-green:after{color:var(--color-sea-green)}.dnb-section--fire-red{color:var(--color-white)}.dnb-section--fire-red:after{color:var(--color-fire-red)}.dnb-section--fire-red-8{color:var(--color-black-80)}.dnb-section--fire-red-8:after{color:var(--color-fire-red-8)}.dnb-section--emerald-green .dnb-anchor,.dnb-section--fire-red .dnb-anchor,.dnb-section--sea-green .dnb-anchor{color:var(--color-white)}.dnb-section--emerald-green .dnb-anchor:
|
|
1
|
+
.dnb-section--divider{color:var(--color-black-80)}.dnb-section--divider:after{box-shadow:99vw 0 0 0 currentcolor,198vw 0 0 0 currentcolor,297vw 0 0 0 currentcolor,396vw 0 0 0 currentcolor,0 .0625rem 0 0 var(--color-mint-green-50),99vw .0625rem 0 0 var(--color-mint-green-50),0 -.0625rem 0 0 var(--color-mint-green-50),99vw -.0625rem 0 0 var(--color-mint-green-50),198vw .0625rem 0 0 var(--color-mint-green-50),198vw -.0625rem 0 0 var(--color-mint-green-50);color:var(--color-white)}.dnb-section--transparent:after{color:transparent}.dnb-section--mint-green-12{color:var(--color-black-80)}.dnb-section--mint-green-12:after{color:var(--color-mint-green-12)}.dnb-section--white{color:var(--color-black-80)}.dnb-section--white:after{color:var(--color-white)}.dnb-section--mint-green{color:var(--color-black-80)}.dnb-section--mint-green:after{color:var(--color-mint-green)}.dnb-section--lavender{color:var(--color-black-80)}.dnb-section--lavender:after{color:var(--color-lavender)}.dnb-section--sand-yellow{color:var(--color-black-80)}.dnb-section--sand-yellow:after{color:var(--color-sand-yellow)}.dnb-section--pistachio{color:var(--color-black-80)}.dnb-section--pistachio:after{color:var(--color-pistachio)}.dnb-section--black-3{color:var(--color-black-80)}.dnb-section--black-3:after{color:var(--color-black-3)}.dnb-section--emerald-green{color:var(--color-mint-green)}.dnb-section--emerald-green:after{color:var(--color-emerald-green)}.dnb-section--sea-green{color:var(--color-white)}.dnb-section--sea-green:after{color:var(--color-sea-green)}.dnb-section--fire-red{color:var(--color-white)}.dnb-section--fire-red:after{color:var(--color-fire-red)}.dnb-section--fire-red-8{color:var(--color-black-80)}.dnb-section--fire-red-8:after{color:var(--color-fire-red-8)}.dnb-section--emerald-green .dnb-anchor,.dnb-section--fire-red .dnb-anchor,.dnb-section--sea-green .dnb-anchor{color:var(--color-white)}.dnb-section--emerald-green .dnb-anchor:hover,.dnb-section--fire-red .dnb-anchor:hover,.dnb-section--sea-green .dnb-anchor:hover{box-shadow:inset 100vw 100vw 0 0 var(--color-white),-.125em 0 0 0 var(--color-white),.125em 0 0 0 var(--color-white);color:var(--color-emerald-green)}.dnb-section--emerald-green .dnb-anchor:active,.dnb-section--fire-red .dnb-anchor:active,.dnb-section--sea-green .dnb-anchor:active{background-color:transparent;box-shadow:inset 100vw 100vw 0 0 transparent,-.125em 0 0 0 transparent,.125em 0 0 0 transparent;color:var(--color-white)}.dnb-section--emerald-green .dnb-anchor.focus-visible,.dnb-section--fire-red .dnb-anchor.focus-visible,.dnb-section--sea-green .dnb-anchor.focus-visible{--border-color:var(--color-white);--border-width:var(--focus-ring-width);background-color:transparent;border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color);color:var(--color-white);outline:none}.dnb-section--emerald-green .dnb-anchor:focus-visible,.dnb-section--fire-red .dnb-anchor:focus-visible,.dnb-section--sea-green .dnb-anchor:focus-visible{--border-color:var(--color-white);--border-width:var(--focus-ring-width);background-color:transparent;border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color);color:var(--color-white);outline:none}.dnb-section--emerald-green .dnb-button--tertiary,.dnb-section--emerald-green .dnb-button--tertiary:hover,.dnb-section--fire-red .dnb-button--tertiary,.dnb-section--fire-red .dnb-button--tertiary:hover,.dnb-section--sea-green .dnb-button--tertiary,.dnb-section--sea-green .dnb-button--tertiary:hover{color:var(--color-white)}.dnb-section--emerald-green .dnb-button--tertiary:hover .dnb-button__text:after,.dnb-section--fire-red .dnb-button--tertiary:hover .dnb-button__text:after,.dnb-section--sea-green .dnb-button--tertiary:hover .dnb-button__text:after{color:var(--color-white)!important}.dnb-section--emerald-green .dnb-button--tertiary:focus,.dnb-section--fire-red .dnb-button--tertiary:focus,.dnb-section--sea-green .dnb-button--tertiary:focus{color:var(--color-white)}.dnb-section--emerald-green .dnb-button--tertiary:focus:before,.dnb-section--fire-red .dnb-button--tertiary:focus:before,.dnb-section--sea-green .dnb-button--tertiary:focus:before{outline:none}html[data-whatinput=keyboard] .dnb-section--emerald-green .dnb-button--tertiary:focus:before,html[data-whatinput=keyboard] .dnb-section--fire-red .dnb-button--tertiary:focus:before,html[data-whatinput=keyboard] .dnb-section--sea-green .dnb-button--tertiary:focus:before{--border-color:var(--color-white);--border-width:var(--focus-ring-width);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-section--fire-red ::selection,.dnb-section--mint-green ::selection{background-color:var(--color-white)}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSliderEvents.js","names":["React","dispatchCustomElementEvent","warn","calculatePercent","createMockDiv","percentToValue","SliderContext","useSliderEvents","isReverse","emitChange","trackRef","isVertical","setShouldAnimate","setThumbState","setThumbIndex","allProps","useContext","min","max","onDragStart","onDragEnd","onTrackMouseDownHandler","event","onThumbMouseDownHandler","percent","current","target","parseFloat","dataset","index","document","body","addEventListener","onBodyMouseMoveHandler","onBodyMouseUpHandler","e","onThumbMouseUpHandler","removeEvents","removeEventListener","preventDefault","elem","process","env","NODE_ENV","detail","onHelperChangeHandler","emitEvent","currentTarget","value","onHelperFocusHandler"],"sources":["../../../../../src/components/slider/hooks/useSliderEvents.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-ts-comment */\nimport React from 'react'\nimport {\n dispatchCustomElementEvent,\n warn,\n} from '../../../shared/component-helper'\nimport {\n calculatePercent,\n createMockDiv,\n percentToValue,\n} from '../SliderHelpers'\nimport { SliderContext } from '../SliderProvider'\n\nexport function useSliderEvents() {\n const {\n isReverse,\n emitChange,\n trackRef,\n isVertical,\n setShouldAnimate,\n setThumbState,\n setThumbIndex,\n allProps,\n } = React.useContext(SliderContext)\n const { min, max, onDragStart, onDragEnd } = allProps\n\n const onTrackMouseDownHandler = (event: MouseEvent | TouchEvent) => {\n onThumbMouseDownHandler(event)\n\n const percent = calculatePercent(trackRef.current, event, isVertical)\n\n emitChange(event, percentToValue(percent, min, max, isReverse))\n setShouldAnimate(true)\n }\n\n const onThumbMouseDownHandler = (\n event: MouseEvent | TouchEvent | React.SyntheticEvent\n ) => {\n const target = event.target as HTMLButtonElement\n\n setThumbIndex(parseFloat(target.dataset.index))\n setThumbState('activated')\n\n if (typeof onDragStart === 'function') {\n dispatchCustomElementEvent(allProps, 'onDragStart', {\n event,\n })\n }\n\n if (typeof document !== 'undefined') {\n try {\n document.body.addEventListener('touchmove', onBodyMouseMoveHandler)\n document.body.addEventListener('touchend', onBodyMouseUpHandler)\n document.body.addEventListener('mousemove', onBodyMouseMoveHandler)\n document.body.addEventListener('mouseup', onBodyMouseUpHandler)\n } catch (e) {\n warn(e)\n }\n }\n }\n\n const onThumbMouseUpHandler = () => {\n setThumbState('released')\n }\n\n const removeEvents = () => {\n if (typeof document !== 'undefined') {\n try {\n document.body.removeEventListener(\n 'touchmove',\n onBodyMouseMoveHandler\n )\n document.body.removeEventListener('touchend', onBodyMouseUpHandler)\n document.body.removeEventListener(\n 'mousemove',\n onBodyMouseMoveHandler\n )\n document.body.removeEventListener('mouseup', onBodyMouseUpHandler)\n } catch (e) {\n warn(e)\n }\n }\n }\n\n const onBodyMouseUpHandler = (event: MouseEvent | TouchEvent) => {\n removeEvents()\n\n setThumbIndex(-1)\n setThumbState('normal')\n\n if (typeof onDragEnd === 'function') {\n dispatchCustomElementEvent(allProps, 'onDragEnd', {\n event,\n })\n }\n }\n\n const onBodyMouseMoveHandler = (event: MouseEvent) => {\n event.preventDefault() // ensures correct cursor in Safari (
|
|
1
|
+
{"version":3,"file":"useSliderEvents.js","names":["React","dispatchCustomElementEvent","warn","calculatePercent","createMockDiv","percentToValue","SliderContext","useSliderEvents","isReverse","emitChange","trackRef","isVertical","setShouldAnimate","setThumbState","setThumbIndex","allProps","useContext","min","max","onDragStart","onDragEnd","onTrackMouseDownHandler","event","onThumbMouseDownHandler","percent","current","target","parseFloat","dataset","index","document","body","addEventListener","onBodyMouseMoveHandler","onBodyMouseUpHandler","e","onThumbMouseUpHandler","removeEvents","removeEventListener","preventDefault","elem","process","env","NODE_ENV","detail","onHelperChangeHandler","emitEvent","currentTarget","value","onHelperFocusHandler"],"sources":["../../../../../src/components/slider/hooks/useSliderEvents.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-ts-comment */\nimport React from 'react'\nimport {\n dispatchCustomElementEvent,\n warn,\n} from '../../../shared/component-helper'\nimport {\n calculatePercent,\n createMockDiv,\n percentToValue,\n} from '../SliderHelpers'\nimport { SliderContext } from '../SliderProvider'\n\nexport function useSliderEvents() {\n const {\n isReverse,\n emitChange,\n trackRef,\n isVertical,\n setShouldAnimate,\n setThumbState,\n setThumbIndex,\n allProps,\n } = React.useContext(SliderContext)\n const { min, max, onDragStart, onDragEnd } = allProps\n\n const onTrackMouseDownHandler = (event: MouseEvent | TouchEvent) => {\n onThumbMouseDownHandler(event)\n\n const percent = calculatePercent(trackRef.current, event, isVertical)\n\n emitChange(event, percentToValue(percent, min, max, isReverse))\n setShouldAnimate(true)\n }\n\n const onThumbMouseDownHandler = (\n event: MouseEvent | TouchEvent | React.SyntheticEvent\n ) => {\n const target = event.target as HTMLButtonElement\n\n setThumbIndex(parseFloat(target.dataset.index))\n setThumbState('activated')\n\n if (typeof onDragStart === 'function') {\n dispatchCustomElementEvent(allProps, 'onDragStart', {\n event,\n })\n }\n\n if (typeof document !== 'undefined') {\n try {\n document.body.addEventListener('touchmove', onBodyMouseMoveHandler)\n document.body.addEventListener('touchend', onBodyMouseUpHandler)\n document.body.addEventListener('mousemove', onBodyMouseMoveHandler)\n document.body.addEventListener('mouseup', onBodyMouseUpHandler)\n } catch (e) {\n warn(e)\n }\n }\n }\n\n const onThumbMouseUpHandler = () => {\n setThumbState('released')\n }\n\n const removeEvents = () => {\n if (typeof document !== 'undefined') {\n try {\n document.body.removeEventListener(\n 'touchmove',\n onBodyMouseMoveHandler\n )\n document.body.removeEventListener('touchend', onBodyMouseUpHandler)\n document.body.removeEventListener(\n 'mousemove',\n onBodyMouseMoveHandler\n )\n document.body.removeEventListener('mouseup', onBodyMouseUpHandler)\n } catch (e) {\n warn(e)\n }\n }\n }\n\n const onBodyMouseUpHandler = (event: MouseEvent | TouchEvent) => {\n removeEvents()\n\n setThumbIndex(-1)\n setThumbState('normal')\n\n if (typeof onDragEnd === 'function') {\n dispatchCustomElementEvent(allProps, 'onDragEnd', {\n event,\n })\n }\n }\n\n const onBodyMouseMoveHandler = (event: MouseEvent) => {\n event.preventDefault() // ensures correct cursor in Safari (desktop)\n\n let elem = trackRef.current\n\n // we have to mock this for jsdom.\n if (process.env.NODE_ENV === 'test') {\n // @ts-ignore\n elem = createMockDiv(event.detail)\n // @ts-ignore\n event = event.detail\n }\n\n if (elem) {\n const percent = calculatePercent(elem, event, isVertical)\n emitChange(event, percentToValue(percent, min, max, isReverse))\n }\n\n setShouldAnimate(false)\n }\n\n const onHelperChangeHandler = (\n event: React.FormEvent<HTMLInputElement>\n ) => {\n const emitEvent = event as unknown\n emitChange(\n emitEvent as MouseEvent,\n parseFloat(event.currentTarget.value)\n )\n }\n\n const onHelperFocusHandler = (\n event: React.FormEvent<HTMLInputElement>\n ) => {\n const target = event.target as HTMLInputElement\n setThumbIndex(parseFloat(target.dataset.index))\n }\n\n return {\n onThumbMouseDownHandler,\n onThumbMouseUpHandler,\n onTrackMouseDownHandler,\n onHelperChangeHandler,\n onHelperFocusHandler,\n removeEvents,\n }\n}\n"],"mappings":"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"}
|
|
@@ -42,7 +42,7 @@ export type SliderProps = IncludeSnakeCase<{
|
|
|
42
42
|
min?: number;
|
|
43
43
|
/** the maximum value. Defaults to `100`. */
|
|
44
44
|
max?: number;
|
|
45
|
-
/** the `value` of the slider as a number. If an array with numbers is provided, each number will represent a thumb button (the `+` and `-` button will be hidden on
|
|
45
|
+
/** the `value` of the slider as a number. If an array with numbers is provided, each number will represent a thumb button (the `+` and `-` button will be hidden on multiple thumbs). */
|
|
46
46
|
value?: ValueTypes;
|
|
47
47
|
/** the steps the slider takes on changing the value. Defaults to `null`. */
|
|
48
48
|
step?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":[],"sources":["../../../../src/components/slider/types.ts"],"sourcesContent":["import React from 'react'\n\nimport type { SuffixChildren } from '../../shared/helpers/Suffix'\nimport type {\n formatReturnType,\n formatOptionParams,\n} from '../number-format/NumberUtils'\nimport { IncludeSnakeCase } from '../../shared/helpers/withSnakeCaseProps'\nimport type { SpacingProps } from '../../shared/types'\nimport type { SkeletonShow } from '../Skeleton'\nimport type { GlobalStatusConfigObject } from '../GlobalStatus'\n\nexport type ValueTypes = number | Array<number>\nexport type NumberFormatTypes =\n | formatOptionParams\n | ((value: number) => unknown)\nexport type onChangeEventProps = {\n value: ValueTypes\n rawValue: number\n number?: formatReturnType | null\n event?: Event\n}\n\nexport type SliderProps = IncludeSnakeCase<{\n /** prepends the Form Label component. If no ID is provided, a random ID is created. */\n label?: React.ReactNode\n\n /** use `labelDirection=\"vertical\"` to change the label layout direction. Defaults to `horizontal`. */\n labelDirection?: 'vertical' | 'horizontal'\n\n /** use `true` to make the label only readable by screen readers. */\n labelSrOnly?: boolean\n\n /** text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message. */\n status?: string | boolean\n\n /** defines the state of the status. Currently, there are two statuses `[error, info]`. Defaults to `error`. */\n statusState?: 'error' | 'info'\n\n /** use an object to define additional FormStatus properties. */\n statusProps?: Record<string, unknown>\n statusNoAnimation?: boolean\n\n /** the `status_id` used for the target [GlobalStatus](/uilib/components/global-status). */\n globalStatus?: GlobalStatusConfigObject\n\n /** text describing the content of the Slider more than the label. You can also send in a React component, so it gets wrapped inside the Slider component. */\n suffix?: SuffixChildren\n\n /** give the slider thumb button a title for accessibility reasons. Defaults to `null`. */\n thumbTitle?: string\n\n /** give the add button a title for accessibility reasons. Defaults to `+`. */\n addTitle?: string\n\n /** give the subtract button a title for accessibility reasons. Defaults to `−`. */\n subtractTitle?: string\n\n /** the minimum value. Defaults to `0`. */\n min?: number\n\n /** the maximum value. Defaults to `100`. */\n max?: number\n\n /** the `value` of the slider as a number. If an array with numbers is provided, each number will represent a thumb button (the `+` and `-` button will be hidden on
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../../src/components/slider/types.ts"],"sourcesContent":["import React from 'react'\n\nimport type { SuffixChildren } from '../../shared/helpers/Suffix'\nimport type {\n formatReturnType,\n formatOptionParams,\n} from '../number-format/NumberUtils'\nimport { IncludeSnakeCase } from '../../shared/helpers/withSnakeCaseProps'\nimport type { SpacingProps } from '../../shared/types'\nimport type { SkeletonShow } from '../Skeleton'\nimport type { GlobalStatusConfigObject } from '../GlobalStatus'\n\nexport type ValueTypes = number | Array<number>\nexport type NumberFormatTypes =\n | formatOptionParams\n | ((value: number) => unknown)\nexport type onChangeEventProps = {\n value: ValueTypes\n rawValue: number\n number?: formatReturnType | null\n event?: Event\n}\n\nexport type SliderProps = IncludeSnakeCase<{\n /** prepends the Form Label component. If no ID is provided, a random ID is created. */\n label?: React.ReactNode\n\n /** use `labelDirection=\"vertical\"` to change the label layout direction. Defaults to `horizontal`. */\n labelDirection?: 'vertical' | 'horizontal'\n\n /** use `true` to make the label only readable by screen readers. */\n labelSrOnly?: boolean\n\n /** text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message. */\n status?: string | boolean\n\n /** defines the state of the status. Currently, there are two statuses `[error, info]`. Defaults to `error`. */\n statusState?: 'error' | 'info'\n\n /** use an object to define additional FormStatus properties. */\n statusProps?: Record<string, unknown>\n statusNoAnimation?: boolean\n\n /** the `status_id` used for the target [GlobalStatus](/uilib/components/global-status). */\n globalStatus?: GlobalStatusConfigObject\n\n /** text describing the content of the Slider more than the label. You can also send in a React component, so it gets wrapped inside the Slider component. */\n suffix?: SuffixChildren\n\n /** give the slider thumb button a title for accessibility reasons. Defaults to `null`. */\n thumbTitle?: string\n\n /** give the add button a title for accessibility reasons. Defaults to `+`. */\n addTitle?: string\n\n /** give the subtract button a title for accessibility reasons. Defaults to `−`. */\n subtractTitle?: string\n\n /** the minimum value. Defaults to `0`. */\n min?: number\n\n /** the maximum value. Defaults to `100`. */\n max?: number\n\n /** the `value` of the slider as a number. If an array with numbers is provided, each number will represent a thumb button (the `+` and `-` button will be hidden on multiple thumbs). */\n value?: ValueTypes\n\n /** the steps the slider takes on changing the value. Defaults to `null`. */\n step?: number\n\n /** show the slider vertically. Defaults to `false`. */\n vertical?: boolean\n\n /** show the slider reversed. Defaults to `false`. */\n reverse?: boolean\n\n /** if set to `true`, then the slider will be 100% in `width`. */\n stretch?: boolean\n\n /** provide a function callback or use the options from the [NumberFormat](/uilib/components/number-format/properties) component. It will show a formatted number in the Tooltip (`tooltip={true}`) and enhance the screen reader UX. It will also extend the `onChange` event return object with a formatted `number` property. */\n numberFormat?: NumberFormatTypes\n\n /** use `true` to show a tooltip on `mouseOver`, `touchStart` and `focus`, showing the current number (if `numberFormat` is given) or the raw value. Defaults to `null`. */\n tooltip: boolean\n\n /** use `true` to always show the tooltip, in addition to the `tooltip` property. */\n alwaysShowTooltip: boolean\n\n /** removes the helper buttons. Defaults to `false`. */\n hideButtons?: boolean\n\n /** use either `omit`, `push` or `swap`. This property only works for two (range) or more thumb buttons, while `omit` will stop the thumb from swapping, `push` will push its nearest thumb along. Defaults to `swap`. */\n multiThumbBehavior?: 'swap' | 'omit' | 'push'\n\n /** if set to `true`, an overlaying skeleton with animation will be shown. */\n skeleton?: SkeletonShow\n\n id?: string\n disabled?: boolean\n className?: string\n\n /** will be called on state changes made by the user. The callback `value` and `rawValue` is a number `{ value, rawValue, event }`. But if the prop `numberFormat` is given, then it will return an additional `number` with the given format `{ value, number, rawValue, event }`. */\n onChange?: (props: onChangeEventProps) => void\n\n /** will be called once the user stops dragging. Returns `{ event }`. */\n onDragStart?: (props: { event: MouseEvent | TouchEvent }) => void\n\n /** will be called once the user starts dragging. Returns `{ event }`. */\n onDragEnd?: (props: { event: MouseEvent | TouchEvent }) => void\n\n children?: React.ReactChild\n}>\n\nexport type SliderAllProps = SliderProps &\n SpacingProps &\n Omit<React.HTMLProps<HTMLElement>, keyof SliderProps>\n\nexport type ThumbStateEnums =\n | 'initial'\n | 'normal'\n | 'activated'\n | 'released'\n\nexport type SliderContextTypes = {\n isMulti: boolean\n isReverse: boolean\n isVertical: boolean\n shouldAnimate: boolean\n thumbState: ThumbStateEnums\n thumbIndex: React.RefObject<number>\n showStatus: boolean\n showButtons: boolean\n attributes: unknown\n allProps: SliderProps\n value: ValueTypes\n values: Array<number>\n setValue: (value: ValueTypes) => void\n setThumbState: (thumbState: ThumbStateEnums) => void\n setThumbIndex: (thumbIndex: number) => void\n emitChange: (emitEvent: MouseEvent | TouchEvent, value: number) => void\n trackRef: React.RefObject<HTMLElement>\n setShouldAnimate: (state: boolean) => void\n animationTimeout: React.RefObject<NodeJS.Timeout>\n}\n"],"mappings":""}
|
|
@@ -50,7 +50,7 @@ export default class Space extends React.PureComponent<SpaceAllProps | React.HTM
|
|
|
50
50
|
skeleton: PropTypes.Requireable<NonNullable<string | boolean>>;
|
|
51
51
|
innerRef: PropTypes.Requireable<object>;
|
|
52
52
|
className: PropTypes.Requireable<string>;
|
|
53
|
-
children: PropTypes.Requireable<NonNullable<
|
|
53
|
+
children: PropTypes.Requireable<NonNullable<((...args: any[]) => any) | PropTypes.ReactNodeLike>>;
|
|
54
54
|
space: PropTypes.Requireable<NonNullable<string | number | boolean | PropTypes.InferProps<{
|
|
55
55
|
top: PropTypes.Requireable<NonNullable<string | number | boolean>>;
|
|
56
56
|
right: PropTypes.Requireable<NonNullable<string | number | boolean>>;
|
|
@@ -61,7 +61,7 @@ export default class Space extends React.PureComponent<SpaceAllProps | React.HTM
|
|
|
61
61
|
right: PropTypes.Requireable<NonNullable<string | number | boolean>>;
|
|
62
62
|
bottom: PropTypes.Requireable<NonNullable<string | number | boolean>>;
|
|
63
63
|
left: PropTypes.Requireable<NonNullable<string | number | boolean>>;
|
|
64
|
-
element: PropTypes.Requireable<NonNullable<
|
|
64
|
+
element: PropTypes.Requireable<NonNullable<((...args: any[]) => any) | PropTypes.ReactNodeLike>>;
|
|
65
65
|
inline: PropTypes.Requireable<NonNullable<string | boolean>>;
|
|
66
66
|
no_collapse: PropTypes.Requireable<NonNullable<string | boolean>>;
|
|
67
67
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpacingHelper.js","names":["PropTypes","createSpacingClasses","removeSpaceProps","spacingPropTypes","space","oneOfType","string","number","bool","shape","top","right","bottom","left"],"sources":["../../../../src/components/space/SpacingHelper.js"],"sourcesContent":["/**\n * Space helper\n * NB: Because it contains \"PropTypes\" we keep this file as a
|
|
1
|
+
{"version":3,"file":"SpacingHelper.js","names":["PropTypes","createSpacingClasses","removeSpaceProps","spacingPropTypes","space","oneOfType","string","number","bool","shape","top","right","bottom","left"],"sources":["../../../../src/components/space/SpacingHelper.js"],"sourcesContent":["/**\n * Space helper\n * NB: Because it contains \"PropTypes\" we keep this file as a JavaScript file.\n */\n\nimport PropTypes from 'prop-types'\nimport { createSpacingClasses, removeSpaceProps } from './SpacingUtils'\n\nexport { createSpacingClasses, removeSpaceProps } // because of ESLint import plugin\n\nexport const spacingPropTypes = {\n space: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.bool,\n PropTypes.shape({\n top: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.bool,\n ]),\n right: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.bool,\n ]),\n bottom: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.bool,\n ]),\n left: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.bool,\n ]),\n }),\n ]),\n top: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.bool,\n ]),\n right: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.bool,\n ]),\n bottom: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.bool,\n ]),\n left: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.bool,\n ]),\n}\n"],"mappings":"AAKA,OAAOA,SAAS,MAAM,YAAY;AAClC,SAASC,oBAAoB,EAAEC,gBAAgB,QAAQ,gBAAgB;AAEvE,SAASD,oBAAoB,EAAEC,gBAAgB;AAE/C,OAAO,MAAMC,gBAAgB,GAAG;EAC9BC,KAAK,EAAEJ,SAAS,CAACK,SAAS,CAAC,CACzBL,SAAS,CAACM,MAAM,EAChBN,SAAS,CAACO,MAAM,EAChBP,SAAS,CAACQ,IAAI,EACdR,SAAS,CAACS,KAAK,CAAC;IACdC,GAAG,EAAEV,SAAS,CAACK,SAAS,CAAC,CACvBL,SAAS,CAACM,MAAM,EAChBN,SAAS,CAACO,MAAM,EAChBP,SAAS,CAACQ,IAAI,CACf,CAAC;IACFG,KAAK,EAAEX,SAAS,CAACK,SAAS,CAAC,CACzBL,SAAS,CAACM,MAAM,EAChBN,SAAS,CAACO,MAAM,EAChBP,SAAS,CAACQ,IAAI,CACf,CAAC;IACFI,MAAM,EAAEZ,SAAS,CAACK,SAAS,CAAC,CAC1BL,SAAS,CAACM,MAAM,EAChBN,SAAS,CAACO,MAAM,EAChBP,SAAS,CAACQ,IAAI,CACf,CAAC;IACFK,IAAI,EAAEb,SAAS,CAACK,SAAS,CAAC,CACxBL,SAAS,CAACM,MAAM,EAChBN,SAAS,CAACO,MAAM,EAChBP,SAAS,CAACQ,IAAI,CACf;EACH,CAAC,CAAC,CACH,CAAC;EACFE,GAAG,EAAEV,SAAS,CAACK,SAAS,CAAC,CACvBL,SAAS,CAACM,MAAM,EAChBN,SAAS,CAACO,MAAM,EAChBP,SAAS,CAACQ,IAAI,CACf,CAAC;EACFG,KAAK,EAAEX,SAAS,CAACK,SAAS,CAAC,CACzBL,SAAS,CAACM,MAAM,EAChBN,SAAS,CAACO,MAAM,EAChBP,SAAS,CAACQ,IAAI,CACf,CAAC;EACFI,MAAM,EAAEZ,SAAS,CAACK,SAAS,CAAC,CAC1BL,SAAS,CAACM,MAAM,EAChBN,SAAS,CAACO,MAAM,EAChBP,SAAS,CAACQ,IAAI,CACf,CAAC;EACFK,IAAI,EAAEb,SAAS,CAACK,SAAS,CAAC,CACxBL,SAAS,CAACM,MAAM,EAChBN,SAAS,CAACO,MAAM,EAChBP,SAAS,CAACQ,IAAI,CACf;AACH,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export const stepIndicatorPropTypes: {
|
|
2
2
|
class: PropTypes.Requireable<string>;
|
|
3
3
|
className: PropTypes.Requireable<string>;
|
|
4
|
-
children: PropTypes.Requireable<NonNullable<
|
|
4
|
+
children: PropTypes.Requireable<NonNullable<((...args: any[]) => any) | PropTypes.ReactNodeLike>>;
|
|
5
5
|
on_change: PropTypes.Requireable<(...args: any[]) => any>;
|
|
6
6
|
on_click: PropTypes.Requireable<(...args: any[]) => any>;
|
|
7
7
|
space: PropTypes.Requireable<NonNullable<string | number | boolean | PropTypes.InferProps<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableAccordion.js","names":["React","classnames","Button","IconPrimary","Th","Td","TableContext","keycode","hasSelectedText","TableAccordionContent","TrContext","useTableAccordion","_ref","_tableContext$allProp","_tableContext$allProp2","children","className","props","expanded","disabled","noAnimation","onClick","onOpened","onClosed","tableContext","useContext","trIsOpen","setOpen","useState","location","id","hash","trIsHover","setHover","trHadClick","setHadClick","content","Children","toArray","allProps","accordion","accordionContent","find","element","type","hasAccordionContent","isValidElement","countTds","filter","length","trParams","toggleOpenTr","onMouseEnter","onMouseEnterHandler","onMouseLeave","onMouseLeaveHandler","onKeyDown","onKeydownHandler","hasContent","tdElem","_TableTdAccordionIcon","createElement","TableTdAccordionIcon","key","accordionChevronPlacement","push","unshift","isTh","some","thElem","_TableThAccordionIcon","TableThAccordionIcon","Provider","value","_extends","tabIndex","undefined","event","target","document","activeElement","tagName","preventDefault","TableAccordionToggleButton","_React$useContext","trContext","iconSize","size","icon","accordionToggleButtonSR","Boolean","on_click","_tableContext$allProp3","_Td"],"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","classnames","Button","IconPrimary","Th","Td","TableContext","keycode","hasSelectedText","TableAccordionContent","TrContext","useTableAccordion","_ref","_tableContext$allProp","_tableContext$allProp2","children","className","props","expanded","disabled","noAnimation","onClick","onOpened","onClosed","tableContext","useContext","trIsOpen","setOpen","useState","location","id","hash","trIsHover","setHover","trHadClick","setHadClick","content","Children","toArray","allProps","accordion","accordionContent","find","element","type","hasAccordionContent","isValidElement","countTds","filter","length","trParams","toggleOpenTr","onMouseEnter","onMouseEnterHandler","onMouseLeave","onMouseLeaveHandler","onKeyDown","onKeydownHandler","hasContent","tdElem","_TableTdAccordionIcon","createElement","TableTdAccordionIcon","key","accordionChevronPlacement","push","unshift","isTh","some","thElem","_TableThAccordionIcon","TableThAccordionIcon","Provider","value","_extends","tabIndex","undefined","event","target","document","activeElement","tagName","preventDefault","TableAccordionToggleButton","_React$useContext","trContext","iconSize","size","icon","accordionToggleButtonSR","Boolean","on_click","_tableContext$allProp3","_Td"],"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","classnames","useTableAccordion","TableContext","Tr","componentProps","variant","noWrap","expanded","disabled","noAnimation","onClick","onOpened","onClosed","children","className","_className","props","_objectWithoutProperties","_excluded","currentVariant","useHandleTrVariant","accordionTr","createElement","_extends","role","_ref","tableContext","useContext","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","classnames","useTableAccordion","TableContext","Tr","componentProps","variant","noWrap","expanded","disabled","noAnimation","onClick","onOpened","onClosed","children","className","_className","props","_objectWithoutProperties","_excluded","currentVariant","useHandleTrVariant","accordionTr","createElement","_extends","role","_ref","tableContext","useContext","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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"}
|