@dnb/eufemia 10.22.0 → 10.24.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 +61 -0
- package/cjs/components/accordion/Accordion.js +1 -1
- package/cjs/components/accordion/Accordion.js.map +1 -1
- package/cjs/components/accordion/AccordionContext.d.ts +1 -1
- package/cjs/components/accordion/AccordionGroup.js +1 -1
- package/cjs/components/accordion/AccordionGroup.js.map +1 -1
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +18 -0
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +20 -0
- package/cjs/components/anchor/Anchor.d.ts +3 -4
- package/cjs/components/anchor/Anchor.js +16 -25
- package/cjs/components/anchor/Anchor.js.map +1 -1
- package/cjs/components/anchor/style/anchor-mixins.scss +62 -13
- package/cjs/components/anchor/style/dnb-anchor.css +79 -16
- package/cjs/components/anchor/style/dnb-anchor.min.css +1 -1
- package/cjs/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +10 -30
- package/cjs/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
- package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +82 -78
- 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 +25 -53
- package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.css +10 -30
- 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 +1 -8
- package/cjs/components/aria-live/useAriaLive.d.ts +1 -1
- package/cjs/components/breadcrumb/Breadcrumb.js +26 -17
- package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/cjs/components/breadcrumb/BreadcrumbItem.d.ts +6 -4
- package/cjs/components/breadcrumb/BreadcrumbItem.js +17 -9
- package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/cjs/components/breadcrumb/style/dnb-breadcrumb.css +29 -4
- package/cjs/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
- package/cjs/components/breadcrumb/style/dnb-breadcrumb.scss +32 -4
- package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +9 -0
- package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -1
- package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +7 -0
- package/cjs/components/button/Button.js +1 -1
- package/cjs/components/button/Button.js.map +1 -1
- package/cjs/components/button/style/button--tertiary.scss +30 -75
- package/cjs/components/button/style/dnb-button.css +43 -49
- package/cjs/components/button/style/dnb-button.min.css +1 -1
- package/cjs/components/button/style/dnb-button.scss +46 -59
- package/cjs/components/button/style/themes/button-mixins.scss +26 -5
- package/cjs/components/button/style/themes/dnb-button-theme-eiendom.css +29 -60
- package/cjs/components/button/style/themes/dnb-button-theme-eiendom.min.css +12 -2
- package/cjs/components/button/style/themes/dnb-button-theme-sbanken.css +44 -72
- package/cjs/components/button/style/themes/dnb-button-theme-sbanken.min.css +16 -4
- package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +14 -16
- package/cjs/components/button/style/themes/dnb-button-theme-ui.css +29 -60
- package/cjs/components/button/style/themes/dnb-button-theme-ui.min.css +12 -2
- package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
- package/cjs/components/card/Card.d.ts +15 -2
- package/cjs/components/card/Card.js +19 -7
- package/cjs/components/card/Card.js.map +1 -1
- package/cjs/components/card/CardDocs.d.ts +2 -0
- package/cjs/components/card/CardDocs.js +65 -0
- package/cjs/components/card/CardDocs.js.map +1 -0
- package/cjs/components/card/style/dnb-card.css +24 -5
- package/cjs/components/card/style/dnb-card.min.css +1 -1
- package/cjs/components/card/style/dnb-card.scss +47 -16
- package/cjs/components/checkbox/style/dnb-checkbox.css +3 -0
- package/cjs/components/checkbox/style/dnb-checkbox.min.css +1 -1
- package/cjs/components/checkbox/style/dnb-checkbox.scss +7 -0
- package/cjs/components/date-picker/DatePicker.d.ts +2 -0
- package/cjs/components/date-picker/DatePicker.js +2 -1
- package/cjs/components/date-picker/DatePicker.js.map +1 -1
- package/cjs/components/date-picker/DatePickerInput.js +19 -3
- package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
- package/cjs/components/date-picker/DatePickerProvider.js +8 -3
- package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
- package/cjs/components/dropdown/style/dnb-dropdown.css +3 -0
- package/cjs/components/dropdown/style/dnb-dropdown.min.css +1 -1
- package/cjs/components/dropdown/style/dnb-dropdown.scss +4 -0
- package/cjs/components/flex/style/dnb-flex.css +1 -1
- package/cjs/components/flex/style/dnb-flex.min.css +1 -1
- package/cjs/components/flex/style/flex-stack.scss +1 -1
- package/cjs/components/form-label/FormLabel.js +1 -1
- package/cjs/components/form-label/FormLabel.js.map +1 -1
- package/cjs/components/form-label/style/dnb-form-label.css +3 -0
- package/cjs/components/form-label/style/dnb-form-label.min.css +1 -1
- package/cjs/components/form-label/style/dnb-form-label.scss +4 -0
- package/cjs/components/form-label/style/themes/dnb-form-label-theme-sbanken.css +0 -3
- package/cjs/components/form-label/style/themes/dnb-form-label-theme-sbanken.min.css +1 -1
- package/cjs/components/form-label/style/themes/dnb-form-label-theme-sbanken.scss +0 -8
- package/cjs/components/form-label/style/themes/dnb-form-label-theme-ui.css +0 -6
- package/cjs/components/form-label/style/themes/dnb-form-label-theme-ui.min.css +1 -1
- package/cjs/components/form-label/style/themes/dnb-form-label-theme-ui.scss +0 -8
- package/cjs/components/heading/HeadingContext.d.ts +1 -1
- package/cjs/components/height-animation/style/dnb-height-animation.css +2 -2
- package/cjs/components/height-animation/style/dnb-height-animation.min.css +1 -1
- package/cjs/components/height-animation/style/dnb-height-animation.scss +3 -2
- package/cjs/components/icon/style/dnb-icon.css +2 -2
- package/cjs/components/icon/style/dnb-icon.min.css +1 -1
- package/cjs/components/icon/style/dnb-icon.scss +1 -1
- package/cjs/components/input/Input.js +1 -1
- package/cjs/components/input/Input.js.map +1 -1
- package/cjs/components/number-format/NumberUtils.d.ts +1 -1
- package/cjs/components/radio/style/dnb-radio.css +4 -0
- package/cjs/components/radio/style/dnb-radio.min.css +1 -1
- package/cjs/components/radio/style/dnb-radio.scss +9 -0
- package/cjs/components/section/style/themes/dnb-section-theme-ui.css +3 -6
- package/cjs/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
- package/cjs/components/skeleton/SkeletonHelper.d.ts +6 -6
- package/cjs/components/skeleton/style/dnb-skeleton.css +1 -0
- package/cjs/components/skeleton/style/dnb-skeleton.min.css +1 -1
- package/cjs/components/skeleton/style/dnb-skeleton.scss +1 -0
- package/cjs/components/slider/SliderInstance.js +1 -0
- package/cjs/components/slider/SliderInstance.js.map +1 -1
- package/cjs/components/slider/SliderThumb.js +4 -2
- package/cjs/components/slider/SliderThumb.js.map +1 -1
- package/cjs/components/step-indicator/StepIndicator.js +11 -5
- package/cjs/components/step-indicator/StepIndicator.js.map +1 -1
- package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.css +1 -1
- package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.min.css +1 -1
- package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.scss +1 -1
- package/cjs/components/table/TableScrollView.d.ts +5 -1
- package/cjs/components/table/TableScrollView.js +1 -0
- package/cjs/components/table/TableScrollView.js.map +1 -1
- package/cjs/components/table/TableTr.d.ts +1 -2
- package/cjs/components/table/TableTr.js.map +1 -1
- package/cjs/components/table/style/dnb-table.css +14 -1
- package/cjs/components/table/style/dnb-table.min.css +1 -1
- package/cjs/components/table/style/dnb-table.scss +7 -1
- package/cjs/components/table/style/table-header-buttons.scss +4 -1
- package/cjs/components/table/style/table-th.scss +9 -25
- package/cjs/components/table/style/themes/dnb-table-theme-sbanken.css +1 -1
- package/cjs/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
- package/cjs/components/table/style/themes/dnb-table-theme-sbanken.scss +2 -1
- package/cjs/components/table/style/themes/dnb-table-theme-ui.css +1 -1
- package/cjs/components/table/style/themes/dnb-table-theme-ui.min.css +1 -1
- package/cjs/components/table/style/themes/dnb-table-theme-ui.scss +2 -2
- package/cjs/components/table/useTableAnimationHandler.d.ts +1 -1
- package/cjs/components/table/useTableAnimationHandler.js +3 -3
- package/cjs/components/table/useTableAnimationHandler.js.map +1 -1
- package/cjs/components/tag/Tag.d.ts +11 -0
- package/cjs/components/tag/Tag.js +55 -40
- package/cjs/components/tag/Tag.js.map +1 -1
- package/cjs/components/tag/style/dnb-tag.css +50 -86
- package/cjs/components/tag/style/dnb-tag.min.css +1 -1
- package/cjs/components/tag/style/dnb-tag.scss +37 -45
- package/cjs/components/tag/style/themes/tag-mixins.scss +24 -6
- package/cjs/components/textarea/Textarea.d.ts +9 -0
- package/cjs/components/textarea/Textarea.js +21 -5
- package/cjs/components/textarea/Textarea.js.map +1 -1
- package/cjs/components/textarea/TextareaDocs.js +10 -0
- package/cjs/components/textarea/TextareaDocs.js.map +1 -1
- package/cjs/components/textarea/style/dnb-textarea.css +69 -26
- package/cjs/components/textarea/style/dnb-textarea.min.css +1 -1
- package/cjs/components/textarea/style/dnb-textarea.scss +83 -31
- package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +15 -21
- package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -1
- package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +17 -28
- package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.css +12 -23
- 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 +11 -27
- package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +1 -2
- package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.min.css +1 -1
- package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +1 -2
- package/cjs/components/tooltip/Tooltip.js +1 -1
- package/cjs/components/tooltip/Tooltip.js.map +1 -1
- package/cjs/elements/Element.d.ts +3 -4
- package/cjs/elements/Element.js.map +1 -1
- package/cjs/elements/code/style/themes/dnb-code-theme-sbanken.scss +5 -3
- package/cjs/extensions/forms/DataContext/At/At.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Context.d.ts +31 -8
- package/cjs/extensions/forms/DataContext/Context.js +14 -3
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +29 -16
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +324 -77
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.d.ts +3 -0
- package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js +93 -0
- package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -0
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/cjs/extensions/forms/Field/Date/Date.js +3 -3
- package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
- package/cjs/extensions/forms/Field/Expiry/Expiry.js +4 -4
- package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/cjs/extensions/forms/Field/Number/Number.js +3 -3
- package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
- package/cjs/extensions/forms/Field/Password/Password.d.ts +1 -1
- package/cjs/extensions/forms/Field/Password/Password.js.map +1 -1
- package/cjs/extensions/forms/Field/Password/style/dnb-password.scss +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +4 -4
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +3 -1
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +3 -3
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/Selection.js +5 -5
- package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/cjs/extensions/forms/Field/String/String.d.ts +6 -6
- package/cjs/extensions/forms/Field/String/String.js +16 -14
- package/cjs/extensions/forms/Field/String/String.js.map +1 -1
- package/cjs/extensions/forms/Field/String/StringDocs.js +9 -4
- package/cjs/extensions/forms/Field/String/StringDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Toggle/Toggle.js +7 -7
- package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js +41 -19
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
- package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
- package/cjs/extensions/forms/Form/Appearance/Appearance.js +3 -0
- package/cjs/extensions/forms/Form/Appearance/Appearance.js.map +1 -1
- package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +2 -2
- package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
- package/cjs/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.scss +2 -1
- package/cjs/extensions/forms/Form/Handler/Handler.d.ts +1 -1
- package/cjs/extensions/forms/Form/Handler/Handler.js +50 -8
- package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/cjs/extensions/forms/Form/Handler/HandlerDocs.d.ts +3 -0
- package/cjs/extensions/forms/Form/Handler/HandlerDocs.js +49 -0
- package/cjs/extensions/forms/Form/Handler/HandlerDocs.js.map +1 -0
- package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.d.ts +6 -1
- package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js +19 -10
- package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
- package/cjs/extensions/forms/Form/SubmitButton/SubmitButtonDocs.d.ts +2 -0
- package/cjs/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js +30 -0
- package/cjs/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js.map +1 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.d.ts +14 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +81 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.d.ts +2 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js +25 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js.map +1 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/index.d.ts +2 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/index.js +27 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/index.js.map +1 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +99 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +117 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/style/index.d.ts +5 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/style/index.js +4 -0
- package/cjs/extensions/forms/Form/SubmitIndicator/style/index.js.map +1 -0
- package/cjs/extensions/forms/Form/data-context/getData.d.ts +1 -1
- package/cjs/extensions/forms/Form/data-context/getData.js.map +1 -1
- package/cjs/extensions/forms/Form/data-context/useData.d.ts +3 -3
- package/cjs/extensions/forms/Form/data-context/useData.js +32 -12
- package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
- package/cjs/extensions/forms/Form/data-context/useError.d.ts +3 -2
- package/cjs/extensions/forms/Form/data-context/useError.js +8 -5
- package/cjs/extensions/forms/Form/data-context/useError.js.map +1 -1
- package/cjs/extensions/forms/Form/index.d.ts +1 -0
- package/cjs/extensions/forms/Form/index.js +7 -0
- package/cjs/extensions/forms/Form/index.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Array/Array.js +1 -1
- package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +1 -1
- package/cjs/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +1 -1
- package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.d.ts +1 -3
- package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.js +4 -3
- package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.d.ts +1 -3
- package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +6 -2
- package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/Step/Step.js +2 -3
- package/cjs/extensions/forms/StepsLayout/Step/Step.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/StepsContext.d.ts +6 -4
- package/cjs/extensions/forms/StepsLayout/StepsContext.js +6 -1
- package/cjs/extensions/forms/StepsLayout/StepsContext.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/StepsLayout.d.ts +5 -3
- package/cjs/extensions/forms/StepsLayout/StepsLayout.js +112 -50
- package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/StepsLayoutDocs.d.ts +3 -0
- package/cjs/extensions/forms/StepsLayout/StepsLayoutDocs.js +58 -0
- package/cjs/extensions/forms/StepsLayout/StepsLayoutDocs.js.map +1 -0
- package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -1
- package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
- package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +11 -1
- package/cjs/extensions/forms/StepsLayout/useStep.d.ts +3 -0
- package/cjs/extensions/forms/StepsLayout/useStep.js +19 -0
- package/cjs/extensions/forms/StepsLayout/useStep.js.map +1 -0
- package/cjs/extensions/forms/Value/Boolean/Boolean.js +1 -1
- package/cjs/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
- package/cjs/extensions/forms/Value/Number/Number.js +5 -5
- package/cjs/extensions/forms/Value/Number/Number.js.map +1 -1
- package/cjs/extensions/forms/Value/String/String.js +1 -1
- package/cjs/extensions/forms/Value/String/String.js.map +1 -1
- package/cjs/extensions/forms/hooks/DataValueDocs.js +3 -3
- package/cjs/extensions/forms/hooks/DataValueDocs.js.map +1 -1
- package/cjs/extensions/forms/hooks/index.d.ts +6 -3
- package/cjs/extensions/forms/hooks/index.js +4 -12
- package/cjs/extensions/forms/hooks/index.js.map +1 -1
- package/cjs/extensions/forms/hooks/useFieldProps.d.ts +23 -0
- package/cjs/extensions/forms/hooks/useFieldProps.js +774 -0
- package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -0
- package/cjs/extensions/forms/style/dnb-forms.css +107 -3
- package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
- package/cjs/extensions/forms/types.d.ts +69 -6
- package/cjs/extensions/forms/types.js +3 -2
- package/cjs/extensions/forms/types.js.map +1 -1
- package/cjs/extensions/forms/utils/ajv.d.ts +9 -7
- package/cjs/extensions/forms/utils/ajv.js +34 -17
- package/cjs/extensions/forms/utils/ajv.js.map +1 -1
- package/cjs/fragments/scroll-view/ScrollView.d.ts +2 -2
- package/cjs/fragments/scroll-view/ScrollView.js +4 -1
- package/cjs/fragments/scroll-view/ScrollView.js.map +1 -1
- package/cjs/shared/Context.d.ts +20 -11
- package/cjs/shared/Context.js.map +1 -1
- package/cjs/shared/Eufemia.d.ts +2 -2
- package/cjs/shared/Eufemia.js +2 -2
- package/cjs/shared/Eufemia.js.map +1 -1
- package/cjs/shared/Provider.js.map +1 -1
- package/cjs/shared/defaults.d.ts +3 -3
- package/cjs/shared/defaults.js.map +1 -1
- package/cjs/shared/helpers/debounce.d.ts +21 -30
- package/cjs/shared/helpers/debounce.js +23 -11
- package/cjs/shared/helpers/debounce.js.map +1 -1
- package/cjs/shared/helpers/isAsync.d.ts +7 -0
- package/cjs/shared/helpers/isAsync.js +20 -0
- package/cjs/shared/helpers/isAsync.js.map +1 -0
- package/cjs/shared/helpers/runCssVersionMismatchWarning.d.ts +8 -0
- package/cjs/shared/helpers/runCssVersionMismatchWarning.js +31 -0
- package/cjs/shared/helpers/runCssVersionMismatchWarning.js.map +1 -0
- package/cjs/{extensions/forms/hooks → shared/helpers}/useId.js +1 -1
- package/cjs/shared/helpers/useId.js.map +1 -0
- package/cjs/shared/helpers/useMountEffect.js.map +1 -0
- package/cjs/shared/helpers/useMounted.js.map +1 -0
- package/cjs/shared/helpers/useSharedState.js +15 -9
- package/cjs/shared/helpers/useSharedState.js.map +1 -1
- package/cjs/shared/helpers/useUnmountEffect.js.map +1 -0
- package/cjs/shared/helpers/useUpdateEffect.js.map +1 -0
- package/cjs/shared/helpers.js +2 -0
- package/cjs/shared/helpers.js.map +1 -1
- package/cjs/shared/index.d.ts +10 -10
- package/cjs/shared/index.js +7 -1
- package/cjs/shared/index.js.map +1 -1
- package/cjs/shared/locales/en-GB.d.ts +1 -0
- package/cjs/shared/locales/en-GB.js +2 -1
- package/cjs/shared/locales/en-GB.js.map +1 -1
- package/cjs/shared/locales/en-US.d.ts +1 -0
- package/cjs/shared/locales/index.d.ts +4 -2
- package/cjs/shared/locales/index.js +2 -1
- package/cjs/shared/locales/index.js.map +1 -1
- package/cjs/shared/locales/nb-NO.d.ts +1 -0
- package/cjs/shared/locales/nb-NO.js +2 -1
- package/cjs/shared/locales/nb-NO.js.map +1 -1
- package/cjs/shared/types.d.ts +4 -1
- package/cjs/shared/types.js.map +1 -1
- package/cjs/shared/useLocale.d.ts +2 -0
- package/cjs/shared/useLocale.js +37 -0
- package/cjs/shared/useLocale.js.map +1 -0
- package/cjs/style/core/scopes.scss +3 -0
- package/cjs/style/dnb-ui-basis.css +1 -0
- package/cjs/style/dnb-ui-basis.min.css +1 -1
- package/cjs/style/dnb-ui-body.css +1 -0
- package/cjs/style/dnb-ui-body.min.css +1 -1
- package/cjs/style/dnb-ui-components.css +433 -195
- package/cjs/style/dnb-ui-components.min.css +3 -3
- package/cjs/style/dnb-ui-core.css +1 -0
- package/cjs/style/dnb-ui-core.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.css +107 -3
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/dnb-ui-forms.css +107 -3
- package/cjs/style/dnb-ui-forms.min.css +1 -1
- package/cjs/style/dnb-ui-forms.scss +1 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +3 -6
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +596 -328
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +17 -7
- package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +3 -6
- package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +107 -3
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +107 -3
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +5 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +710 -374
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +21 -9
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +5 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +107 -3
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +107 -3
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-basis.css +3 -6
- package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +596 -326
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +17 -7
- package/cjs/style/themes/theme-ui/ui-theme-elements.css +3 -6
- package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +107 -3
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-forms.css +107 -3
- package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-tags.css +40 -15
- package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/components/accordion/Accordion.js +1 -1
- package/components/accordion/Accordion.js.map +1 -1
- package/components/accordion/AccordionContext.d.ts +1 -1
- package/components/accordion/AccordionGroup.js +1 -1
- package/components/accordion/AccordionGroup.js.map +1 -1
- package/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +18 -0
- package/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
- package/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +20 -0
- package/components/anchor/Anchor.d.ts +3 -4
- package/components/anchor/Anchor.js +16 -25
- package/components/anchor/Anchor.js.map +1 -1
- package/components/anchor/style/anchor-mixins.scss +62 -13
- package/components/anchor/style/dnb-anchor.css +79 -16
- package/components/anchor/style/dnb-anchor.min.css +1 -1
- package/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +10 -30
- package/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
- package/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +82 -78
- package/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
- package/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +25 -53
- package/components/anchor/style/themes/dnb-anchor-theme-ui.css +10 -30
- package/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
- package/components/anchor/style/themes/dnb-anchor-theme-ui.scss +1 -8
- package/components/aria-live/useAriaLive.d.ts +1 -1
- package/components/breadcrumb/Breadcrumb.js +27 -18
- package/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/components/breadcrumb/BreadcrumbItem.d.ts +6 -4
- package/components/breadcrumb/BreadcrumbItem.js +18 -10
- package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/components/breadcrumb/style/dnb-breadcrumb.css +29 -4
- package/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
- package/components/breadcrumb/style/dnb-breadcrumb.scss +32 -4
- package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +9 -0
- package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -1
- package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +7 -0
- package/components/button/Button.js +1 -1
- package/components/button/Button.js.map +1 -1
- package/components/button/style/button--tertiary.scss +30 -75
- package/components/button/style/dnb-button.css +43 -49
- package/components/button/style/dnb-button.min.css +1 -1
- package/components/button/style/dnb-button.scss +46 -59
- package/components/button/style/themes/button-mixins.scss +26 -5
- package/components/button/style/themes/dnb-button-theme-eiendom.css +29 -60
- package/components/button/style/themes/dnb-button-theme-eiendom.min.css +12 -2
- package/components/button/style/themes/dnb-button-theme-sbanken.css +44 -72
- package/components/button/style/themes/dnb-button-theme-sbanken.min.css +16 -4
- package/components/button/style/themes/dnb-button-theme-sbanken.scss +14 -16
- package/components/button/style/themes/dnb-button-theme-ui.css +29 -60
- package/components/button/style/themes/dnb-button-theme-ui.min.css +12 -2
- package/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
- package/components/card/Card.d.ts +15 -2
- package/components/card/Card.js +19 -7
- package/components/card/Card.js.map +1 -1
- package/components/card/CardDocs.d.ts +2 -0
- package/components/card/CardDocs.js +58 -0
- package/components/card/CardDocs.js.map +1 -0
- package/components/card/style/dnb-card.css +24 -5
- package/components/card/style/dnb-card.min.css +1 -1
- package/components/card/style/dnb-card.scss +47 -16
- package/components/checkbox/style/dnb-checkbox.css +3 -0
- package/components/checkbox/style/dnb-checkbox.min.css +1 -1
- package/components/checkbox/style/dnb-checkbox.scss +7 -0
- package/components/date-picker/DatePicker.d.ts +2 -0
- package/components/date-picker/DatePicker.js +2 -1
- package/components/date-picker/DatePicker.js.map +1 -1
- package/components/date-picker/DatePickerInput.js +19 -3
- package/components/date-picker/DatePickerInput.js.map +1 -1
- package/components/date-picker/DatePickerProvider.js +8 -3
- package/components/date-picker/DatePickerProvider.js.map +1 -1
- package/components/dropdown/style/dnb-dropdown.css +3 -0
- package/components/dropdown/style/dnb-dropdown.min.css +1 -1
- package/components/dropdown/style/dnb-dropdown.scss +4 -0
- package/components/flex/style/dnb-flex.css +1 -1
- package/components/flex/style/dnb-flex.min.css +1 -1
- package/components/flex/style/flex-stack.scss +1 -1
- package/components/form-label/FormLabel.js +1 -1
- package/components/form-label/FormLabel.js.map +1 -1
- package/components/form-label/style/dnb-form-label.css +3 -0
- package/components/form-label/style/dnb-form-label.min.css +1 -1
- package/components/form-label/style/dnb-form-label.scss +4 -0
- package/components/form-label/style/themes/dnb-form-label-theme-sbanken.css +0 -3
- package/components/form-label/style/themes/dnb-form-label-theme-sbanken.min.css +1 -1
- package/components/form-label/style/themes/dnb-form-label-theme-sbanken.scss +0 -8
- package/components/form-label/style/themes/dnb-form-label-theme-ui.css +0 -6
- package/components/form-label/style/themes/dnb-form-label-theme-ui.min.css +1 -1
- package/components/form-label/style/themes/dnb-form-label-theme-ui.scss +0 -8
- package/components/heading/HeadingContext.d.ts +1 -1
- package/components/height-animation/style/dnb-height-animation.css +2 -2
- package/components/height-animation/style/dnb-height-animation.min.css +1 -1
- package/components/height-animation/style/dnb-height-animation.scss +3 -2
- package/components/icon/style/dnb-icon.css +2 -2
- package/components/icon/style/dnb-icon.min.css +1 -1
- package/components/icon/style/dnb-icon.scss +1 -1
- package/components/input/Input.js +1 -1
- package/components/input/Input.js.map +1 -1
- package/components/number-format/NumberUtils.d.ts +1 -1
- package/components/radio/style/dnb-radio.css +4 -0
- package/components/radio/style/dnb-radio.min.css +1 -1
- package/components/radio/style/dnb-radio.scss +9 -0
- package/components/section/style/themes/dnb-section-theme-ui.css +3 -6
- package/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
- package/components/skeleton/SkeletonHelper.d.ts +6 -6
- package/components/skeleton/style/dnb-skeleton.css +1 -0
- package/components/skeleton/style/dnb-skeleton.min.css +1 -1
- package/components/skeleton/style/dnb-skeleton.scss +1 -0
- package/components/slider/SliderInstance.js +1 -0
- package/components/slider/SliderInstance.js.map +1 -1
- package/components/slider/SliderThumb.js +4 -2
- package/components/slider/SliderThumb.js.map +1 -1
- package/components/step-indicator/StepIndicator.js +11 -6
- package/components/step-indicator/StepIndicator.js.map +1 -1
- package/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.css +1 -1
- package/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.min.css +1 -1
- package/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.scss +1 -1
- package/components/table/TableScrollView.d.ts +5 -1
- package/components/table/TableScrollView.js +1 -0
- package/components/table/TableScrollView.js.map +1 -1
- package/components/table/TableTr.d.ts +1 -2
- package/components/table/TableTr.js.map +1 -1
- package/components/table/style/dnb-table.css +14 -1
- package/components/table/style/dnb-table.min.css +1 -1
- package/components/table/style/dnb-table.scss +7 -1
- package/components/table/style/table-header-buttons.scss +4 -1
- package/components/table/style/table-th.scss +9 -25
- package/components/table/style/themes/dnb-table-theme-sbanken.css +1 -1
- package/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
- package/components/table/style/themes/dnb-table-theme-sbanken.scss +2 -1
- package/components/table/style/themes/dnb-table-theme-ui.css +1 -1
- package/components/table/style/themes/dnb-table-theme-ui.min.css +1 -1
- package/components/table/style/themes/dnb-table-theme-ui.scss +2 -2
- package/components/table/useTableAnimationHandler.d.ts +1 -1
- package/components/table/useTableAnimationHandler.js +3 -3
- package/components/table/useTableAnimationHandler.js.map +1 -1
- package/components/tag/Tag.d.ts +11 -0
- package/components/tag/Tag.js +54 -39
- package/components/tag/Tag.js.map +1 -1
- package/components/tag/style/dnb-tag.css +50 -86
- package/components/tag/style/dnb-tag.min.css +1 -1
- package/components/tag/style/dnb-tag.scss +37 -45
- package/components/tag/style/themes/tag-mixins.scss +24 -6
- package/components/textarea/Textarea.d.ts +9 -0
- package/components/textarea/Textarea.js +21 -5
- package/components/textarea/Textarea.js.map +1 -1
- package/components/textarea/TextareaDocs.js +10 -0
- package/components/textarea/TextareaDocs.js.map +1 -1
- package/components/textarea/style/dnb-textarea.css +69 -26
- package/components/textarea/style/dnb-textarea.min.css +1 -1
- package/components/textarea/style/dnb-textarea.scss +83 -31
- package/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +15 -21
- package/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -1
- package/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +17 -28
- package/components/textarea/style/themes/dnb-textarea-theme-ui.css +12 -23
- package/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
- package/components/textarea/style/themes/dnb-textarea-theme-ui.scss +11 -27
- package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +1 -2
- package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.min.css +1 -1
- package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +1 -2
- package/components/tooltip/Tooltip.js +1 -1
- package/components/tooltip/Tooltip.js.map +1 -1
- package/elements/Element.d.ts +3 -4
- package/elements/Element.js.map +1 -1
- package/elements/code/style/themes/dnb-code-theme-sbanken.scss +5 -3
- package/es/components/accordion/Accordion.js +1 -1
- package/es/components/accordion/Accordion.js.map +1 -1
- package/es/components/accordion/AccordionContext.d.ts +1 -1
- package/es/components/accordion/AccordionGroup.js +1 -1
- package/es/components/accordion/AccordionGroup.js.map +1 -1
- package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +18 -0
- package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
- package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +20 -0
- package/es/components/anchor/Anchor.d.ts +3 -4
- package/es/components/anchor/Anchor.js +16 -25
- package/es/components/anchor/Anchor.js.map +1 -1
- package/es/components/anchor/style/anchor-mixins.scss +62 -13
- package/es/components/anchor/style/dnb-anchor.css +79 -16
- package/es/components/anchor/style/dnb-anchor.min.css +1 -1
- package/es/components/anchor/style/themes/dnb-anchor-theme-eiendom.css +10 -30
- package/es/components/anchor/style/themes/dnb-anchor-theme-eiendom.min.css +1 -1
- package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +82 -78
- 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 +25 -53
- package/es/components/anchor/style/themes/dnb-anchor-theme-ui.css +10 -30
- 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 +1 -8
- package/es/components/aria-live/useAriaLive.d.ts +1 -1
- package/es/components/breadcrumb/Breadcrumb.js +27 -18
- package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/es/components/breadcrumb/BreadcrumbItem.d.ts +6 -4
- package/es/components/breadcrumb/BreadcrumbItem.js +18 -10
- package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/es/components/breadcrumb/style/dnb-breadcrumb.css +29 -4
- package/es/components/breadcrumb/style/dnb-breadcrumb.min.css +1 -1
- package/es/components/breadcrumb/style/dnb-breadcrumb.scss +32 -4
- package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +9 -0
- package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -1
- package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +7 -0
- package/es/components/button/Button.js +1 -1
- package/es/components/button/Button.js.map +1 -1
- package/es/components/button/style/button--tertiary.scss +30 -75
- package/es/components/button/style/dnb-button.css +43 -49
- package/es/components/button/style/dnb-button.min.css +1 -1
- package/es/components/button/style/dnb-button.scss +46 -59
- package/es/components/button/style/themes/button-mixins.scss +26 -5
- package/es/components/button/style/themes/dnb-button-theme-eiendom.css +29 -60
- package/es/components/button/style/themes/dnb-button-theme-eiendom.min.css +12 -2
- package/es/components/button/style/themes/dnb-button-theme-sbanken.css +44 -72
- package/es/components/button/style/themes/dnb-button-theme-sbanken.min.css +16 -4
- package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +14 -16
- package/es/components/button/style/themes/dnb-button-theme-ui.css +29 -60
- package/es/components/button/style/themes/dnb-button-theme-ui.min.css +12 -2
- package/es/components/button/style/themes/dnb-button-theme-ui.scss +1 -1
- package/es/components/card/Card.d.ts +15 -2
- package/es/components/card/Card.js +19 -7
- package/es/components/card/Card.js.map +1 -1
- package/es/components/card/CardDocs.d.ts +2 -0
- package/es/components/card/CardDocs.js +58 -0
- package/es/components/card/CardDocs.js.map +1 -0
- package/es/components/card/style/dnb-card.css +24 -5
- package/es/components/card/style/dnb-card.min.css +1 -1
- package/es/components/card/style/dnb-card.scss +47 -16
- package/es/components/checkbox/style/dnb-checkbox.css +3 -0
- package/es/components/checkbox/style/dnb-checkbox.min.css +1 -1
- package/es/components/checkbox/style/dnb-checkbox.scss +7 -0
- package/es/components/date-picker/DatePicker.d.ts +2 -0
- package/es/components/date-picker/DatePicker.js +2 -1
- package/es/components/date-picker/DatePicker.js.map +1 -1
- package/es/components/date-picker/DatePickerInput.js +19 -3
- package/es/components/date-picker/DatePickerInput.js.map +1 -1
- package/es/components/date-picker/DatePickerProvider.js +8 -3
- package/es/components/date-picker/DatePickerProvider.js.map +1 -1
- package/es/components/dropdown/style/dnb-dropdown.css +3 -0
- package/es/components/dropdown/style/dnb-dropdown.min.css +1 -1
- package/es/components/dropdown/style/dnb-dropdown.scss +4 -0
- package/es/components/flex/style/dnb-flex.css +1 -1
- package/es/components/flex/style/dnb-flex.min.css +1 -1
- package/es/components/flex/style/flex-stack.scss +1 -1
- package/es/components/form-label/FormLabel.js +1 -1
- package/es/components/form-label/FormLabel.js.map +1 -1
- package/es/components/form-label/style/dnb-form-label.css +3 -0
- package/es/components/form-label/style/dnb-form-label.min.css +1 -1
- package/es/components/form-label/style/dnb-form-label.scss +4 -0
- package/es/components/form-label/style/themes/dnb-form-label-theme-sbanken.css +0 -3
- package/es/components/form-label/style/themes/dnb-form-label-theme-sbanken.min.css +1 -1
- package/es/components/form-label/style/themes/dnb-form-label-theme-sbanken.scss +0 -8
- package/es/components/form-label/style/themes/dnb-form-label-theme-ui.css +0 -6
- package/es/components/form-label/style/themes/dnb-form-label-theme-ui.min.css +1 -1
- package/es/components/form-label/style/themes/dnb-form-label-theme-ui.scss +0 -8
- package/es/components/heading/HeadingContext.d.ts +1 -1
- package/es/components/height-animation/style/dnb-height-animation.css +2 -2
- package/es/components/height-animation/style/dnb-height-animation.min.css +1 -1
- package/es/components/height-animation/style/dnb-height-animation.scss +3 -2
- package/es/components/icon/style/dnb-icon.css +2 -2
- package/es/components/icon/style/dnb-icon.min.css +1 -1
- package/es/components/icon/style/dnb-icon.scss +1 -1
- package/es/components/input/Input.js +1 -1
- package/es/components/input/Input.js.map +1 -1
- package/es/components/number-format/NumberUtils.d.ts +1 -1
- package/es/components/radio/style/dnb-radio.css +4 -0
- package/es/components/radio/style/dnb-radio.min.css +1 -1
- package/es/components/radio/style/dnb-radio.scss +9 -0
- package/es/components/section/style/themes/dnb-section-theme-ui.css +3 -6
- package/es/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
- package/es/components/skeleton/SkeletonHelper.d.ts +6 -6
- package/es/components/skeleton/style/dnb-skeleton.css +1 -0
- package/es/components/skeleton/style/dnb-skeleton.min.css +1 -1
- package/es/components/skeleton/style/dnb-skeleton.scss +1 -0
- package/es/components/slider/SliderInstance.js +1 -0
- package/es/components/slider/SliderInstance.js.map +1 -1
- package/es/components/slider/SliderThumb.js +4 -2
- package/es/components/slider/SliderThumb.js.map +1 -1
- package/es/components/step-indicator/StepIndicator.js +11 -6
- package/es/components/step-indicator/StepIndicator.js.map +1 -1
- package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.css +1 -1
- package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.min.css +1 -1
- package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-ui.scss +1 -1
- package/es/components/table/TableScrollView.d.ts +5 -1
- package/es/components/table/TableScrollView.js +1 -0
- package/es/components/table/TableScrollView.js.map +1 -1
- package/es/components/table/TableTr.d.ts +1 -2
- package/es/components/table/TableTr.js.map +1 -1
- package/es/components/table/style/dnb-table.css +14 -1
- package/es/components/table/style/dnb-table.min.css +1 -1
- package/es/components/table/style/dnb-table.scss +7 -1
- package/es/components/table/style/table-header-buttons.scss +4 -1
- package/es/components/table/style/table-th.scss +9 -25
- package/es/components/table/style/themes/dnb-table-theme-sbanken.css +1 -1
- package/es/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
- package/es/components/table/style/themes/dnb-table-theme-sbanken.scss +2 -1
- package/es/components/table/style/themes/dnb-table-theme-ui.css +1 -1
- package/es/components/table/style/themes/dnb-table-theme-ui.min.css +1 -1
- package/es/components/table/style/themes/dnb-table-theme-ui.scss +2 -2
- package/es/components/table/useTableAnimationHandler.d.ts +1 -1
- package/es/components/table/useTableAnimationHandler.js +3 -3
- package/es/components/table/useTableAnimationHandler.js.map +1 -1
- package/es/components/tag/Tag.d.ts +11 -0
- package/es/components/tag/Tag.js +54 -39
- package/es/components/tag/Tag.js.map +1 -1
- package/es/components/tag/style/dnb-tag.css +50 -86
- package/es/components/tag/style/dnb-tag.min.css +1 -1
- package/es/components/tag/style/dnb-tag.scss +37 -45
- package/es/components/tag/style/themes/tag-mixins.scss +24 -6
- package/es/components/textarea/Textarea.d.ts +9 -0
- package/es/components/textarea/Textarea.js +21 -5
- package/es/components/textarea/Textarea.js.map +1 -1
- package/es/components/textarea/TextareaDocs.js +10 -0
- package/es/components/textarea/TextareaDocs.js.map +1 -1
- package/es/components/textarea/style/dnb-textarea.css +69 -26
- package/es/components/textarea/style/dnb-textarea.min.css +1 -1
- package/es/components/textarea/style/dnb-textarea.scss +83 -31
- package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +15 -21
- package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -1
- package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +17 -28
- package/es/components/textarea/style/themes/dnb-textarea-theme-ui.css +12 -23
- 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 +11 -27
- package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.css +1 -2
- package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.min.css +1 -1
- package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +1 -2
- package/es/components/tooltip/Tooltip.js +1 -1
- package/es/components/tooltip/Tooltip.js.map +1 -1
- package/es/elements/Element.d.ts +3 -4
- package/es/elements/Element.js.map +1 -1
- package/es/elements/code/style/themes/dnb-code-theme-sbanken.scss +5 -3
- package/es/extensions/forms/DataContext/At/At.js.map +1 -1
- package/es/extensions/forms/DataContext/Context.d.ts +31 -8
- package/es/extensions/forms/DataContext/Context.js +14 -3
- package/es/extensions/forms/DataContext/Context.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.d.ts +29 -16
- package/es/extensions/forms/DataContext/Provider/Provider.js +321 -75
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/ProviderDocs.d.ts +3 -0
- package/es/extensions/forms/DataContext/Provider/ProviderDocs.js +85 -0
- package/es/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -0
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +2 -2
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/es/extensions/forms/Field/Date/Date.js +4 -4
- package/es/extensions/forms/Field/Date/Date.js.map +1 -1
- package/es/extensions/forms/Field/Expiry/Expiry.js +5 -5
- package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/es/extensions/forms/Field/Number/Number.js +4 -4
- package/es/extensions/forms/Field/Number/Number.js.map +1 -1
- package/es/extensions/forms/Field/Password/Password.d.ts +1 -1
- package/es/extensions/forms/Field/Password/Password.js.map +1 -1
- package/es/extensions/forms/Field/Password/style/dnb-password.scss +1 -1
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +5 -5
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +3 -1
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/es/extensions/forms/Field/Selection/Selection.js +6 -6
- package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/es/extensions/forms/Field/String/String.d.ts +6 -6
- package/es/extensions/forms/Field/String/String.js +17 -15
- package/es/extensions/forms/Field/String/String.js.map +1 -1
- package/es/extensions/forms/Field/String/StringDocs.js +9 -4
- package/es/extensions/forms/Field/String/StringDocs.js.map +1 -1
- package/es/extensions/forms/Field/Toggle/Toggle.js +8 -8
- package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.js +41 -20
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
- package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
- package/es/extensions/forms/Form/Appearance/Appearance.js +3 -0
- package/es/extensions/forms/Form/Appearance/Appearance.js.map +1 -1
- package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +2 -2
- package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
- package/es/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.scss +2 -1
- package/es/extensions/forms/Form/Handler/Handler.d.ts +1 -1
- package/es/extensions/forms/Form/Handler/Handler.js +45 -9
- package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/es/extensions/forms/Form/Handler/HandlerDocs.d.ts +3 -0
- package/es/extensions/forms/Form/Handler/HandlerDocs.js +39 -0
- package/es/extensions/forms/Form/Handler/HandlerDocs.js.map +1 -0
- package/es/extensions/forms/Form/SubmitButton/SubmitButton.d.ts +6 -1
- package/es/extensions/forms/Form/SubmitButton/SubmitButton.js +21 -12
- package/es/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
- package/es/extensions/forms/Form/SubmitButton/SubmitButtonDocs.d.ts +2 -0
- package/es/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js +23 -0
- package/es/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js.map +1 -0
- package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.d.ts +14 -0
- package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +69 -0
- package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -0
- package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.d.ts +2 -0
- package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js +18 -0
- package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js.map +1 -0
- package/es/extensions/forms/Form/SubmitIndicator/index.d.ts +2 -0
- package/es/extensions/forms/Form/SubmitIndicator/index.js +3 -0
- package/es/extensions/forms/Form/SubmitIndicator/index.js.map +1 -0
- package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +99 -0
- package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -0
- package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +117 -0
- package/es/extensions/forms/Form/SubmitIndicator/style/index.d.ts +5 -0
- package/es/extensions/forms/Form/SubmitIndicator/style/index.js +1 -0
- package/es/extensions/forms/Form/SubmitIndicator/style/index.js.map +1 -0
- package/es/extensions/forms/Form/data-context/getData.d.ts +1 -1
- package/es/extensions/forms/Form/data-context/getData.js.map +1 -1
- package/es/extensions/forms/Form/data-context/useData.d.ts +3 -3
- package/es/extensions/forms/Form/data-context/useData.js +30 -12
- package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
- package/es/extensions/forms/Form/data-context/useError.d.ts +3 -2
- package/es/extensions/forms/Form/data-context/useError.js +7 -6
- package/es/extensions/forms/Form/data-context/useError.js.map +1 -1
- package/es/extensions/forms/Form/index.d.ts +1 -0
- package/es/extensions/forms/Form/index.js +1 -0
- package/es/extensions/forms/Form/index.js.map +1 -1
- package/es/extensions/forms/Iterate/Array/Array.js +2 -2
- package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/es/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +2 -2
- package/es/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
- package/es/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +2 -2
- package/es/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
- package/es/extensions/forms/StepsLayout/NextButton/NextButton.d.ts +1 -3
- package/es/extensions/forms/StepsLayout/NextButton/NextButton.js +4 -3
- package/es/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
- package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.d.ts +1 -3
- package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +6 -2
- package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
- package/es/extensions/forms/StepsLayout/Step/Step.js +2 -3
- package/es/extensions/forms/StepsLayout/Step/Step.js.map +1 -1
- package/es/extensions/forms/StepsLayout/StepsContext.d.ts +6 -4
- package/es/extensions/forms/StepsLayout/StepsContext.js +6 -1
- package/es/extensions/forms/StepsLayout/StepsContext.js.map +1 -1
- package/es/extensions/forms/StepsLayout/StepsLayout.d.ts +5 -3
- package/es/extensions/forms/StepsLayout/StepsLayout.js +108 -49
- package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
- package/es/extensions/forms/StepsLayout/StepsLayoutDocs.d.ts +3 -0
- package/es/extensions/forms/StepsLayout/StepsLayoutDocs.js +50 -0
- package/es/extensions/forms/StepsLayout/StepsLayoutDocs.js.map +1 -0
- package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -1
- package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
- package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +11 -1
- package/es/extensions/forms/StepsLayout/useStep.d.ts +3 -0
- package/es/extensions/forms/StepsLayout/useStep.js +12 -0
- package/es/extensions/forms/StepsLayout/useStep.js.map +1 -0
- package/es/extensions/forms/Value/Boolean/Boolean.js +2 -2
- package/es/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
- package/es/extensions/forms/Value/Number/Number.js +5 -5
- package/es/extensions/forms/Value/Number/Number.js.map +1 -1
- package/es/extensions/forms/Value/String/String.js +2 -2
- package/es/extensions/forms/Value/String/String.js.map +1 -1
- package/es/extensions/forms/hooks/DataValueDocs.js +3 -3
- package/es/extensions/forms/hooks/DataValueDocs.js.map +1 -1
- package/es/extensions/forms/hooks/index.d.ts +6 -3
- package/es/extensions/forms/hooks/index.js +2 -3
- package/es/extensions/forms/hooks/index.js.map +1 -1
- package/es/extensions/forms/hooks/useFieldProps.d.ts +23 -0
- package/es/extensions/forms/hooks/useFieldProps.js +749 -0
- package/es/extensions/forms/hooks/useFieldProps.js.map +1 -0
- package/es/extensions/forms/style/dnb-forms.css +107 -3
- package/es/extensions/forms/style/dnb-forms.min.css +1 -1
- package/es/extensions/forms/types.d.ts +69 -6
- package/es/extensions/forms/types.js +3 -2
- package/es/extensions/forms/types.js.map +1 -1
- package/es/extensions/forms/utils/ajv.d.ts +9 -7
- package/es/extensions/forms/utils/ajv.js +34 -15
- package/es/extensions/forms/utils/ajv.js.map +1 -1
- package/es/fragments/scroll-view/ScrollView.d.ts +2 -2
- package/es/fragments/scroll-view/ScrollView.js +4 -1
- package/es/fragments/scroll-view/ScrollView.js.map +1 -1
- package/es/shared/Context.d.ts +20 -11
- package/es/shared/Context.js.map +1 -1
- package/es/shared/Eufemia.d.ts +2 -2
- package/es/shared/Eufemia.js +2 -2
- package/es/shared/Eufemia.js.map +1 -1
- package/es/shared/Provider.js.map +1 -1
- package/es/shared/defaults.d.ts +3 -3
- package/es/shared/defaults.js.map +1 -1
- package/es/shared/helpers/debounce.d.ts +21 -30
- package/es/shared/helpers/debounce.js +21 -9
- package/es/shared/helpers/debounce.js.map +1 -1
- package/es/shared/helpers/isAsync.d.ts +7 -0
- package/es/shared/helpers/isAsync.js +14 -0
- package/es/shared/helpers/isAsync.js.map +1 -0
- package/es/shared/helpers/runCssVersionMismatchWarning.d.ts +8 -0
- package/es/shared/helpers/runCssVersionMismatchWarning.js +25 -0
- package/es/shared/helpers/runCssVersionMismatchWarning.js.map +1 -0
- package/es/{extensions/forms/hooks → shared/helpers}/useId.js +1 -1
- package/es/shared/helpers/useId.js.map +1 -0
- package/es/shared/helpers/useMountEffect.js.map +1 -0
- package/es/shared/helpers/useMounted.js.map +1 -0
- package/es/shared/helpers/useSharedState.js +15 -9
- package/es/shared/helpers/useSharedState.js.map +1 -1
- package/es/shared/helpers/useUnmountEffect.js.map +1 -0
- package/es/shared/helpers/useUpdateEffect.js.map +1 -0
- package/es/shared/helpers.js +2 -0
- package/es/shared/helpers.js.map +1 -1
- package/es/shared/index.d.ts +10 -10
- package/es/shared/index.js +9 -11
- package/es/shared/index.js.map +1 -1
- package/es/shared/locales/en-GB.d.ts +1 -0
- package/es/shared/locales/en-GB.js +2 -1
- package/es/shared/locales/en-GB.js.map +1 -1
- package/es/shared/locales/en-US.d.ts +1 -0
- package/es/shared/locales/index.d.ts +4 -2
- package/es/shared/locales/index.js +2 -1
- package/es/shared/locales/index.js.map +1 -1
- package/es/shared/locales/nb-NO.d.ts +1 -0
- package/es/shared/locales/nb-NO.js +2 -1
- package/es/shared/locales/nb-NO.js.map +1 -1
- package/es/shared/types.d.ts +4 -1
- package/es/shared/types.js.map +1 -1
- package/es/shared/useLocale.d.ts +2 -0
- package/es/shared/useLocale.js +29 -0
- package/es/shared/useLocale.js.map +1 -0
- package/es/style/core/scopes.scss +3 -0
- package/es/style/dnb-ui-basis.css +1 -0
- package/es/style/dnb-ui-basis.min.css +1 -1
- package/es/style/dnb-ui-body.css +1 -0
- package/es/style/dnb-ui-body.min.css +1 -1
- package/es/style/dnb-ui-components.css +433 -195
- package/es/style/dnb-ui-components.min.css +3 -3
- package/es/style/dnb-ui-core.css +1 -0
- package/es/style/dnb-ui-core.min.css +1 -1
- package/es/style/dnb-ui-extensions.css +107 -3
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/dnb-ui-forms.css +107 -3
- package/es/style/dnb-ui-forms.min.css +1 -1
- package/es/style/dnb-ui-forms.scss +1 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +3 -6
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +596 -328
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +17 -7
- package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +3 -6
- package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +107 -3
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +107 -3
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +5 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +710 -374
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +21 -9
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +5 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +107 -3
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +107 -3
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-basis.css +3 -6
- package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +596 -326
- package/es/style/themes/theme-ui/ui-theme-components.min.css +17 -7
- package/es/style/themes/theme-ui/ui-theme-elements.css +3 -6
- package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-extensions.css +107 -3
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-forms.css +107 -3
- package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-tags.css +40 -15
- package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +3 -3
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/DataContext/At/At.js.map +1 -1
- package/extensions/forms/DataContext/Context.d.ts +31 -8
- package/extensions/forms/DataContext/Context.js +14 -3
- package/extensions/forms/DataContext/Context.js.map +1 -1
- package/extensions/forms/DataContext/Provider/Provider.d.ts +29 -16
- package/extensions/forms/DataContext/Provider/Provider.js +325 -78
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/DataContext/Provider/ProviderDocs.d.ts +3 -0
- package/extensions/forms/DataContext/Provider/ProviderDocs.js +85 -0
- package/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -0
- package/extensions/forms/Field/ArraySelection/ArraySelection.js +2 -2
- package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/extensions/forms/Field/Date/Date.js +4 -4
- package/extensions/forms/Field/Date/Date.js.map +1 -1
- package/extensions/forms/Field/Expiry/Expiry.js +5 -5
- package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/extensions/forms/Field/Number/Number.js +4 -4
- package/extensions/forms/Field/Number/Number.js.map +1 -1
- package/extensions/forms/Field/Password/Password.d.ts +1 -1
- package/extensions/forms/Field/Password/Password.js.map +1 -1
- package/extensions/forms/Field/Password/style/dnb-password.scss +1 -1
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +5 -5
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +3 -1
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/extensions/forms/Field/SelectCountry/SelectCountry.js +4 -4
- package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/extensions/forms/Field/Selection/Selection.js +6 -6
- package/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/extensions/forms/Field/String/String.d.ts +6 -6
- package/extensions/forms/Field/String/String.js +17 -15
- package/extensions/forms/Field/String/String.js.map +1 -1
- package/extensions/forms/Field/String/StringDocs.js +9 -4
- package/extensions/forms/Field/String/StringDocs.js.map +1 -1
- package/extensions/forms/Field/Toggle/Toggle.js +8 -8
- package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -1
- package/extensions/forms/FieldBlock/FieldBlock.js +42 -20
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +2 -2
- package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
- package/extensions/forms/Form/Appearance/Appearance.js +3 -0
- package/extensions/forms/Form/Appearance/Appearance.js.map +1 -1
- package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.css +2 -2
- package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.min.css +1 -1
- package/extensions/forms/Form/ButtonRow/style/dnb-form-button-row.scss +2 -1
- package/extensions/forms/Form/Handler/Handler.d.ts +1 -1
- package/extensions/forms/Form/Handler/Handler.js +49 -9
- package/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/extensions/forms/Form/Handler/HandlerDocs.d.ts +3 -0
- package/extensions/forms/Form/Handler/HandlerDocs.js +39 -0
- package/extensions/forms/Form/Handler/HandlerDocs.js.map +1 -0
- package/extensions/forms/Form/SubmitButton/SubmitButton.d.ts +6 -1
- package/extensions/forms/Form/SubmitButton/SubmitButton.js +21 -12
- package/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
- package/extensions/forms/Form/SubmitButton/SubmitButtonDocs.d.ts +2 -0
- package/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js +23 -0
- package/extensions/forms/Form/SubmitButton/SubmitButtonDocs.js.map +1 -0
- package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.d.ts +14 -0
- package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +69 -0
- package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -0
- package/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.d.ts +2 -0
- package/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js +18 -0
- package/extensions/forms/Form/SubmitIndicator/SubmitIndicatorDocs.js.map +1 -0
- package/extensions/forms/Form/SubmitIndicator/index.d.ts +2 -0
- package/extensions/forms/Form/SubmitIndicator/index.js +3 -0
- package/extensions/forms/Form/SubmitIndicator/index.js.map +1 -0
- package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +99 -0
- package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -0
- package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +117 -0
- package/extensions/forms/Form/SubmitIndicator/style/index.d.ts +5 -0
- package/extensions/forms/Form/SubmitIndicator/style/index.js +1 -0
- package/extensions/forms/Form/SubmitIndicator/style/index.js.map +1 -0
- package/extensions/forms/Form/data-context/getData.d.ts +1 -1
- package/extensions/forms/Form/data-context/getData.js.map +1 -1
- package/extensions/forms/Form/data-context/useData.d.ts +3 -3
- package/extensions/forms/Form/data-context/useData.js +32 -12
- package/extensions/forms/Form/data-context/useData.js.map +1 -1
- package/extensions/forms/Form/data-context/useError.d.ts +3 -2
- package/extensions/forms/Form/data-context/useError.js +8 -6
- package/extensions/forms/Form/data-context/useError.js.map +1 -1
- package/extensions/forms/Form/index.d.ts +1 -0
- package/extensions/forms/Form/index.js +1 -0
- package/extensions/forms/Form/index.js.map +1 -1
- package/extensions/forms/Iterate/Array/Array.js +2 -2
- package/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +2 -2
- package/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
- package/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +2 -2
- package/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
- package/extensions/forms/StepsLayout/NextButton/NextButton.d.ts +1 -3
- package/extensions/forms/StepsLayout/NextButton/NextButton.js +4 -3
- package/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
- package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.d.ts +1 -3
- package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +6 -2
- package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
- package/extensions/forms/StepsLayout/Step/Step.js +2 -3
- package/extensions/forms/StepsLayout/Step/Step.js.map +1 -1
- package/extensions/forms/StepsLayout/StepsContext.d.ts +6 -4
- package/extensions/forms/StepsLayout/StepsContext.js +6 -1
- package/extensions/forms/StepsLayout/StepsContext.js.map +1 -1
- package/extensions/forms/StepsLayout/StepsLayout.d.ts +5 -3
- package/extensions/forms/StepsLayout/StepsLayout.js +111 -51
- package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
- package/extensions/forms/StepsLayout/StepsLayoutDocs.d.ts +3 -0
- package/extensions/forms/StepsLayout/StepsLayoutDocs.js +50 -0
- package/extensions/forms/StepsLayout/StepsLayoutDocs.js.map +1 -0
- package/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -1
- package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
- package/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +11 -1
- package/extensions/forms/StepsLayout/useStep.d.ts +3 -0
- package/extensions/forms/StepsLayout/useStep.js +13 -0
- package/extensions/forms/StepsLayout/useStep.js.map +1 -0
- package/extensions/forms/Value/Boolean/Boolean.js +2 -2
- package/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
- package/extensions/forms/Value/Number/Number.js +5 -5
- package/extensions/forms/Value/Number/Number.js.map +1 -1
- package/extensions/forms/Value/String/String.js +2 -2
- package/extensions/forms/Value/String/String.js.map +1 -1
- package/extensions/forms/hooks/DataValueDocs.js +3 -3
- package/extensions/forms/hooks/DataValueDocs.js.map +1 -1
- package/extensions/forms/hooks/index.d.ts +6 -3
- package/extensions/forms/hooks/index.js +2 -3
- package/extensions/forms/hooks/index.js.map +1 -1
- package/extensions/forms/hooks/useFieldProps.d.ts +23 -0
- package/extensions/forms/hooks/useFieldProps.js +764 -0
- package/extensions/forms/hooks/useFieldProps.js.map +1 -0
- package/extensions/forms/style/dnb-forms.css +107 -3
- package/extensions/forms/style/dnb-forms.min.css +1 -1
- package/extensions/forms/types.d.ts +69 -6
- package/extensions/forms/types.js +3 -2
- package/extensions/forms/types.js.map +1 -1
- package/extensions/forms/utils/ajv.d.ts +9 -7
- package/extensions/forms/utils/ajv.js +34 -15
- package/extensions/forms/utils/ajv.js.map +1 -1
- package/fragments/scroll-view/ScrollView.d.ts +2 -2
- package/fragments/scroll-view/ScrollView.js +4 -1
- package/fragments/scroll-view/ScrollView.js.map +1 -1
- package/package.json +1 -1
- package/shared/Context.d.ts +20 -11
- package/shared/Context.js.map +1 -1
- package/shared/Eufemia.d.ts +2 -2
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/shared/Provider.js.map +1 -1
- package/shared/defaults.d.ts +3 -3
- package/shared/defaults.js.map +1 -1
- package/shared/helpers/debounce.d.ts +21 -30
- package/shared/helpers/debounce.js +23 -11
- package/shared/helpers/debounce.js.map +1 -1
- package/shared/helpers/isAsync.d.ts +7 -0
- package/shared/helpers/isAsync.js +14 -0
- package/shared/helpers/isAsync.js.map +1 -0
- package/shared/helpers/runCssVersionMismatchWarning.d.ts +8 -0
- package/shared/helpers/runCssVersionMismatchWarning.js +25 -0
- package/shared/helpers/runCssVersionMismatchWarning.js.map +1 -0
- package/{extensions/forms/hooks → shared/helpers}/useId.js +1 -1
- package/shared/helpers/useId.js.map +1 -0
- package/shared/helpers/useMountEffect.js.map +1 -0
- package/shared/helpers/useMounted.js.map +1 -0
- package/shared/helpers/useSharedState.js +15 -9
- package/shared/helpers/useSharedState.js.map +1 -1
- package/shared/helpers/useUnmountEffect.js.map +1 -0
- package/shared/helpers/useUpdateEffect.js.map +1 -0
- package/shared/helpers.js +2 -0
- package/shared/helpers.js.map +1 -1
- package/shared/index.d.ts +10 -10
- package/shared/index.js +9 -11
- package/shared/index.js.map +1 -1
- package/shared/locales/en-GB.d.ts +1 -0
- package/shared/locales/en-GB.js +2 -1
- package/shared/locales/en-GB.js.map +1 -1
- package/shared/locales/en-US.d.ts +1 -0
- package/shared/locales/index.d.ts +4 -2
- package/shared/locales/index.js +2 -1
- package/shared/locales/index.js.map +1 -1
- package/shared/locales/nb-NO.d.ts +1 -0
- package/shared/locales/nb-NO.js +2 -1
- package/shared/locales/nb-NO.js.map +1 -1
- package/shared/types.d.ts +4 -1
- package/shared/types.js.map +1 -1
- package/shared/useLocale.d.ts +2 -0
- package/shared/useLocale.js +29 -0
- package/shared/useLocale.js.map +1 -0
- package/style/core/scopes.scss +3 -0
- package/style/dnb-ui-basis.css +1 -0
- package/style/dnb-ui-basis.min.css +1 -1
- package/style/dnb-ui-body.css +1 -0
- package/style/dnb-ui-body.min.css +1 -1
- package/style/dnb-ui-components.css +433 -195
- package/style/dnb-ui-components.min.css +3 -3
- package/style/dnb-ui-core.css +1 -0
- package/style/dnb-ui-core.min.css +1 -1
- package/style/dnb-ui-extensions.css +107 -3
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/dnb-ui-forms.css +107 -3
- package/style/dnb-ui-forms.min.css +1 -1
- package/style/dnb-ui-forms.scss +1 -0
- package/style/themes/theme-eiendom/eiendom-theme-basis.css +3 -6
- package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.css +596 -328
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +17 -7
- package/style/themes/theme-eiendom/eiendom-theme-elements.css +3 -6
- package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +107 -3
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-forms.css +107 -3
- package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-basis.css +5 -2
- package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +710 -374
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +21 -9
- package/style/themes/theme-sbanken/sbanken-theme-elements.css +5 -2
- package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +107 -3
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-forms.css +107 -3
- package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-basis.css +3 -6
- package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-components.css +596 -326
- package/style/themes/theme-ui/ui-theme-components.min.css +17 -7
- package/style/themes/theme-ui/ui-theme-elements.css +3 -6
- package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-extensions.css +107 -3
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-forms.css +107 -3
- package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-tags.css +40 -15
- package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +3 -3
- package/umd/dnb-ui-lib.min.js +1 -1
- package/cjs/extensions/forms/hooks/useDataValue.d.ts +0 -18
- package/cjs/extensions/forms/hooks/useDataValue.js +0 -461
- package/cjs/extensions/forms/hooks/useDataValue.js.map +0 -1
- package/cjs/extensions/forms/hooks/useId.js.map +0 -1
- package/cjs/extensions/forms/hooks/useMountEffect.js.map +0 -1
- package/cjs/extensions/forms/hooks/useMounted.js.map +0 -1
- package/cjs/extensions/forms/hooks/useUnmountEffect.js.map +0 -1
- package/cjs/extensions/forms/hooks/useUpdateEffect.js.map +0 -1
- package/es/extensions/forms/hooks/useDataValue.d.ts +0 -18
- package/es/extensions/forms/hooks/useDataValue.js +0 -443
- package/es/extensions/forms/hooks/useDataValue.js.map +0 -1
- package/es/extensions/forms/hooks/useId.js.map +0 -1
- package/es/extensions/forms/hooks/useMountEffect.js.map +0 -1
- package/es/extensions/forms/hooks/useMounted.js.map +0 -1
- package/es/extensions/forms/hooks/useUnmountEffect.js.map +0 -1
- package/es/extensions/forms/hooks/useUpdateEffect.js.map +0 -1
- package/extensions/forms/hooks/useDataValue.d.ts +0 -18
- package/extensions/forms/hooks/useDataValue.js +0 -451
- package/extensions/forms/hooks/useDataValue.js.map +0 -1
- package/extensions/forms/hooks/useId.js.map +0 -1
- package/extensions/forms/hooks/useMountEffect.js.map +0 -1
- package/extensions/forms/hooks/useMounted.js.map +0 -1
- package/extensions/forms/hooks/useUnmountEffect.js.map +0 -1
- package/extensions/forms/hooks/useUpdateEffect.js.map +0 -1
- /package/cjs/{extensions/forms/hooks → shared/helpers}/useId.d.ts +0 -0
- /package/cjs/{extensions/forms/hooks → shared/helpers}/useMountEffect.d.ts +0 -0
- /package/cjs/{extensions/forms/hooks → shared/helpers}/useMountEffect.js +0 -0
- /package/cjs/{extensions/forms/hooks → shared/helpers}/useMounted.d.ts +0 -0
- /package/cjs/{extensions/forms/hooks → shared/helpers}/useMounted.js +0 -0
- /package/cjs/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.d.ts +0 -0
- /package/cjs/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.js +0 -0
- /package/cjs/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.d.ts +0 -0
- /package/cjs/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.js +0 -0
- /package/es/{extensions/forms/hooks → shared/helpers}/useId.d.ts +0 -0
- /package/es/{extensions/forms/hooks → shared/helpers}/useMountEffect.d.ts +0 -0
- /package/es/{extensions/forms/hooks → shared/helpers}/useMountEffect.js +0 -0
- /package/es/{extensions/forms/hooks → shared/helpers}/useMounted.d.ts +0 -0
- /package/es/{extensions/forms/hooks → shared/helpers}/useMounted.js +0 -0
- /package/es/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.d.ts +0 -0
- /package/es/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.js +0 -0
- /package/es/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.d.ts +0 -0
- /package/es/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.js +0 -0
- /package/{extensions/forms/hooks → shared/helpers}/useId.d.ts +0 -0
- /package/{extensions/forms/hooks → shared/helpers}/useMountEffect.d.ts +0 -0
- /package/{extensions/forms/hooks → shared/helpers}/useMountEffect.js +0 -0
- /package/{extensions/forms/hooks → shared/helpers}/useMounted.d.ts +0 -0
- /package/{extensions/forms/hooks → shared/helpers}/useMounted.js +0 -0
- /package/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.d.ts +0 -0
- /package/{extensions/forms/hooks → shared/helpers}/useUnmountEffect.js +0 -0
- /package/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.d.ts +0 -0
- /package/{extensions/forms/hooks → shared/helpers}/useUpdateEffect.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectCountry.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Context","_components","_utils","_countries","_hooks","_FieldBlock","_useErrorMessage","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SelectCountry","props","_sharedContext$locale","sharedContext","useContext","SharedContext","tr","translation","Forms","lang","locale","split","errorMessages","useErrorMessage","path","required","selectCountryErrorRequired","defaultProps","preparedProps","className","placeholder","selectCountryPlaceholder","label","selectCountryLabel","countries","ccFilter","info","warning","error","hasError","disabled","width","help","ariaAttributes","handleFocus","handleBlur","handleChange","updateValue","forceUpdate","filterCountries","makeCountryFilterSet","useDataValue","dataRef","React","useRef","langRef","wasFilled","useMemo","isLangChange","current","getCountryData","country","iso","sort","window","requestAnimationFrame","handleCountryChange","useCallback","_ref","data","newValue","selectedKey","find","_ref2","fillData","onFocusHandler","_ref3","updateData","onTypeHandler","_ref4","_event$nativeEvent","currentValue","setHidden","event","nativeEvent","search","toLowerCase","_ref5","i18n","values","some","s","includes","createElement","classnames","pickSpacingProps","Autocomplete","label_direction","input_icon","on_show","on_focus","on_blur","on_change","on_type","stretch","status","show_submit_button","suffix","HelpButton","title","content","autoComplete","no_animation","noAnimation","makeObject","_country$i18n$lang","en","_ref6","_ref7","a","b","indexA","prioritizedCountries","indexOf","indexB","priorityA","priorityB","localeCompare","map","_country$regions","regions","continent","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/SelectCountry/SelectCountry.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo } from 'react'\nimport classnames from 'classnames'\nimport SharedContext from '../../../../shared/Context'\nimport { Autocomplete, HelpButton } from '../../../../components'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport countries, {\n prioritizedCountries,\n CountryType,\n} from '../../constants/countries'\nimport { useDataValue } from '../../hooks'\nimport { FieldHelpProps, FieldProps } from '../../types'\nimport FieldBlock from '../../FieldBlock'\nimport useErrorMessage from '../../hooks/useErrorMessage'\n\nexport type CountryFilterSet =\n | 'Scandinavia'\n | 'Nordic'\n | 'Europe'\n | 'Prioritized'\n\nexport type Props = FieldHelpProps &\n FieldProps<string, undefined | string> & {\n countries?: CountryFilterSet\n\n // Styling\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n\n /**\n * For internal use only.\n *\n * @param country\n * @returns boolean\n */\n filterCountries?: (country: CountryType) => boolean\n\n /**\n * For internal testing purposes\n */\n noAnimation?: boolean\n }\n\nfunction SelectCountry(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n const lang = sharedContext.locale?.split('-')[0]\n\n const errorMessages = useErrorMessage(props.path, props.errorMessages, {\n required: tr.selectCountryErrorRequired,\n })\n\n const defaultProps: Partial<Props> = {\n errorMessages,\n }\n const preparedProps: Props = {\n ...defaultProps,\n ...props,\n }\n\n const {\n className,\n placeholder = sharedContext?.translation.Forms\n .selectCountryPlaceholder,\n label = sharedContext?.translation.Forms.selectCountryLabel,\n countries: ccFilter = 'Prioritized',\n info,\n warning,\n error,\n hasError,\n disabled,\n value,\n width = 'large',\n help,\n ariaAttributes,\n handleFocus,\n handleBlur,\n handleChange,\n updateValue,\n forceUpdate,\n filterCountries = ccFilter !== 'Prioritized'\n ? makeCountryFilterSet(ccFilter)\n : undefined,\n } = useDataValue(preparedProps)\n\n const dataRef = React.useRef(null)\n const langRef = React.useRef(lang)\n const wasFilled = React.useRef(false)\n\n /**\n * We do not process the whole country list at the first render.\n * Only when the Autocomplete opens (focus).\n * To achieve this, we use memo instead of effect to update refs in sync.\n *\n * We set or update the data list depending on if the countrycode changes or lang changes.\n * We then update data set when value changes.\n */\n useMemo(() => {\n const isLangChange = lang !== langRef.current\n\n if (isLangChange || !wasFilled.current) {\n langRef.current = lang\n dataRef.current = getCountryData({\n lang,\n filter: !wasFilled.current\n ? (country) => country.iso === props.value\n : filterCountries,\n sort: ccFilter as Extract<CountryFilterSet, 'Prioritized'>,\n })\n\n // To force Autocomplete to re-evaluate the internal data\n if (isLangChange && props.value && typeof window !== 'undefined') {\n updateValue(null)\n window.requestAnimationFrame(() => {\n updateValue(props.value)\n })\n }\n }\n }, [lang, filterCountries, ccFilter, updateValue, props.value])\n\n const handleCountryChange = useCallback(\n ({ data }: { data: { selectedKey: string } }) => {\n const newValue = data?.selectedKey\n const country = countries.find(({ iso }) => newValue === iso)\n if (country?.iso) {\n handleChange(country.iso, country)\n }\n },\n [handleChange]\n )\n\n const fillData = useCallback(() => {\n if (!wasFilled.current) {\n wasFilled.current = true\n dataRef.current = getCountryData({\n lang: langRef.current,\n filter: filterCountries,\n sort: ccFilter as Extract<CountryFilterSet, 'Prioritized'>,\n })\n forceUpdate()\n }\n }, [ccFilter, filterCountries, forceUpdate])\n\n const onFocusHandler = useCallback(\n ({ updateData }) => {\n fillData()\n updateData(dataRef.current)\n handleFocus()\n },\n [fillData, handleFocus]\n )\n\n const onTypeHandler = useCallback(\n ({ value: currentValue, setHidden, event }) => {\n // Handle browser autofill/autocomplete\n if (typeof event?.nativeEvent?.data === 'undefined') {\n const search = currentValue.toLowerCase()\n const country = countries.find(({ i18n }) =>\n Object.values(i18n).some((s) => s.toLowerCase().includes(search))\n )\n if (country?.iso) {\n setHidden()\n handleChange(country.iso, country)\n }\n }\n },\n [handleChange]\n )\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-select-country', className)}\n width={width}\n info={info}\n warning={warning}\n error={error}\n {...pickSpacingProps(props)}\n >\n <Autocomplete\n placeholder={placeholder}\n label_direction=\"vertical\"\n label={label}\n input_icon={false}\n data={dataRef.current}\n value={value}\n disabled={disabled}\n on_show={fillData}\n on_focus={onFocusHandler}\n on_blur={handleBlur}\n on_change={handleCountryChange}\n on_type={onTypeHandler}\n stretch\n status={hasError ? 'error' : undefined}\n show_submit_button\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.content}</HelpButton>\n ) : undefined\n }\n autoComplete=\"country-name\"\n no_animation={props.noAnimation}\n {...ariaAttributes}\n />\n </FieldBlock>\n )\n}\n\ntype GetCountryData = {\n lang?: string\n filter?: Props['filterCountries']\n sort?: Extract<CountryFilterSet, 'Prioritized'>\n makeObject?: (\n country: CountryType,\n lang: string\n ) => {\n selectedKey: string\n selected_value?: string\n content: string\n }\n}\n\nexport function getCountryData({\n lang = 'no',\n filter = null,\n sort = null,\n makeObject = (country: CountryType, lang: string) => {\n const content = country.i18n[lang] ?? country.i18n.en\n return {\n selectedKey: country.iso,\n content,\n }\n },\n}: GetCountryData = {}) {\n return countries\n .filter((country) => {\n if (typeof filter === 'function') {\n return filter(country)\n }\n\n return !filter\n })\n .sort(({ i18n: a }, { i18n: b }) => {\n if (sort === 'Prioritized') {\n const indexA = prioritizedCountries.indexOf(a['en'])\n const indexB = prioritizedCountries.indexOf(b['en'])\n\n const priorityA = indexA !== -1\n const priorityB = indexB !== -1\n\n if (priorityA && priorityB) {\n return indexA - indexB\n } else if (priorityA) {\n return -1\n } else if (priorityB) {\n return 1\n }\n }\n\n return a[lang].localeCompare(b[lang])\n })\n .map((country) => makeObject(country, lang))\n}\n\nexport function makeCountryFilterSet(ccFilter: CountryFilterSet) {\n return (country: CountryType) => {\n switch (ccFilter) {\n case 'Scandinavia':\n case 'Nordic':\n return country.regions?.includes(ccFilter)\n case 'Europe':\n return country.continent.includes(ccFilter)\n }\n return true\n }\n}\n\nSelectCountry._supportsSpacingProps = true\nexport default SelectCountry\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SelectCountry.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Context","_components","_utils","_countries","_hooks","_FieldBlock","_useErrorMessage","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SelectCountry","props","_sharedContext$locale","sharedContext","useContext","SharedContext","tr","translation","Forms","lang","locale","split","errorMessages","useErrorMessage","path","required","selectCountryErrorRequired","defaultProps","preparedProps","className","placeholder","selectCountryPlaceholder","label","selectCountryLabel","countries","ccFilter","info","warning","error","hasError","disabled","width","help","htmlAttributes","handleFocus","handleBlur","handleChange","updateValue","forceUpdate","filterCountries","makeCountryFilterSet","useFieldProps","dataRef","React","useRef","langRef","wasFilled","useMemo","isLangChange","current","getCountryData","country","iso","sort","window","requestAnimationFrame","handleCountryChange","useCallback","_ref","data","newValue","selectedKey","find","_ref2","fillData","onFocusHandler","_ref3","updateData","onTypeHandler","_ref4","_event$nativeEvent","currentValue","setHidden","event","nativeEvent","search","toLowerCase","_ref5","i18n","values","some","s","includes","createElement","classnames","pickSpacingProps","Autocomplete","label_direction","input_icon","on_show","on_focus","on_blur","on_change","on_type","stretch","status","show_submit_button","suffix","HelpButton","title","content","autoComplete","no_animation","noAnimation","makeObject","_country$i18n$lang","en","_ref6","_ref7","a","b","indexA","prioritizedCountries","indexOf","indexB","priorityA","priorityB","localeCompare","map","_country$regions","regions","continent","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/SelectCountry/SelectCountry.tsx"],"sourcesContent":["import React, { useCallback, useContext, useMemo } from 'react'\nimport classnames from 'classnames'\nimport SharedContext from '../../../../shared/Context'\nimport { Autocomplete, HelpButton } from '../../../../components'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport countries, {\n prioritizedCountries,\n CountryType,\n} from '../../constants/countries'\nimport { useFieldProps } from '../../hooks'\nimport { FieldHelpProps, FieldProps } from '../../types'\nimport FieldBlock from '../../FieldBlock'\nimport useErrorMessage from '../../hooks/useErrorMessage'\n\nexport type CountryFilterSet =\n | 'Scandinavia'\n | 'Nordic'\n | 'Europe'\n | 'Prioritized'\n\nexport type Props = FieldHelpProps &\n FieldProps<string, undefined | string> & {\n countries?: CountryFilterSet\n\n // Styling\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n\n /**\n * For internal use only.\n *\n * @param country\n * @returns boolean\n */\n filterCountries?: (country: CountryType) => boolean\n\n /**\n * For internal testing purposes\n */\n noAnimation?: boolean\n }\n\nfunction SelectCountry(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n const lang = sharedContext.locale?.split('-')[0]\n\n const errorMessages = useErrorMessage(props.path, props.errorMessages, {\n required: tr.selectCountryErrorRequired,\n })\n\n const defaultProps: Partial<Props> = {\n errorMessages,\n }\n const preparedProps: Props = {\n ...defaultProps,\n ...props,\n }\n\n const {\n className,\n placeholder = sharedContext?.translation.Forms\n .selectCountryPlaceholder,\n label = sharedContext?.translation.Forms.selectCountryLabel,\n countries: ccFilter = 'Prioritized',\n info,\n warning,\n error,\n hasError,\n disabled,\n value,\n width = 'large',\n help,\n htmlAttributes,\n handleFocus,\n handleBlur,\n handleChange,\n updateValue,\n forceUpdate,\n filterCountries = ccFilter !== 'Prioritized'\n ? makeCountryFilterSet(ccFilter)\n : undefined,\n } = useFieldProps(preparedProps)\n\n const dataRef = React.useRef(null)\n const langRef = React.useRef(lang)\n const wasFilled = React.useRef(false)\n\n /**\n * We do not process the whole country list at the first render.\n * Only when the Autocomplete opens (focus).\n * To achieve this, we use memo instead of effect to update refs in sync.\n *\n * We set or update the data list depending on if the countrycode changes or lang changes.\n * We then update data set when value changes.\n */\n useMemo(() => {\n const isLangChange = lang !== langRef.current\n\n if (isLangChange || !wasFilled.current) {\n langRef.current = lang\n dataRef.current = getCountryData({\n lang,\n filter: !wasFilled.current\n ? (country) => country.iso === props.value\n : filterCountries,\n sort: ccFilter as Extract<CountryFilterSet, 'Prioritized'>,\n })\n\n // To force Autocomplete to re-evaluate the internal data\n if (isLangChange && props.value && typeof window !== 'undefined') {\n updateValue(null)\n window.requestAnimationFrame(() => {\n updateValue(props.value)\n })\n }\n }\n }, [lang, filterCountries, ccFilter, updateValue, props.value])\n\n const handleCountryChange = useCallback(\n ({ data }: { data: { selectedKey: string } }) => {\n const newValue = data?.selectedKey\n const country = countries.find(({ iso }) => newValue === iso)\n if (country?.iso) {\n handleChange(country.iso, country)\n }\n },\n [handleChange]\n )\n\n const fillData = useCallback(() => {\n if (!wasFilled.current) {\n wasFilled.current = true\n dataRef.current = getCountryData({\n lang: langRef.current,\n filter: filterCountries,\n sort: ccFilter as Extract<CountryFilterSet, 'Prioritized'>,\n })\n forceUpdate()\n }\n }, [ccFilter, filterCountries, forceUpdate])\n\n const onFocusHandler = useCallback(\n ({ updateData }) => {\n fillData()\n updateData(dataRef.current)\n handleFocus()\n },\n [fillData, handleFocus]\n )\n\n const onTypeHandler = useCallback(\n ({ value: currentValue, setHidden, event }) => {\n // Handle browser autofill/autocomplete\n if (typeof event?.nativeEvent?.data === 'undefined') {\n const search = currentValue.toLowerCase()\n const country = countries.find(({ i18n }) =>\n Object.values(i18n).some((s) => s.toLowerCase().includes(search))\n )\n if (country?.iso) {\n setHidden()\n handleChange(country.iso, country)\n }\n }\n },\n [handleChange]\n )\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-select-country', className)}\n width={width}\n info={info}\n warning={warning}\n error={error}\n {...pickSpacingProps(props)}\n >\n <Autocomplete\n placeholder={placeholder}\n label_direction=\"vertical\"\n label={label}\n input_icon={false}\n data={dataRef.current}\n value={value}\n disabled={disabled}\n on_show={fillData}\n on_focus={onFocusHandler}\n on_blur={handleBlur}\n on_change={handleCountryChange}\n on_type={onTypeHandler}\n stretch\n status={hasError ? 'error' : undefined}\n show_submit_button\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.content}</HelpButton>\n ) : undefined\n }\n autoComplete=\"country-name\"\n no_animation={props.noAnimation}\n {...htmlAttributes}\n />\n </FieldBlock>\n )\n}\n\ntype GetCountryData = {\n lang?: string\n filter?: Props['filterCountries']\n sort?: Extract<CountryFilterSet, 'Prioritized'>\n makeObject?: (\n country: CountryType,\n lang: string\n ) => {\n selectedKey: string\n selected_value?: string\n content: string\n }\n}\n\nexport function getCountryData({\n lang = 'no',\n filter = null,\n sort = null,\n makeObject = (country: CountryType, lang: string) => {\n const content = country.i18n[lang] ?? country.i18n.en\n return {\n selectedKey: country.iso,\n content,\n }\n },\n}: GetCountryData = {}) {\n return countries\n .filter((country) => {\n if (typeof filter === 'function') {\n return filter(country)\n }\n\n return !filter\n })\n .sort(({ i18n: a }, { i18n: b }) => {\n if (sort === 'Prioritized') {\n const indexA = prioritizedCountries.indexOf(a['en'])\n const indexB = prioritizedCountries.indexOf(b['en'])\n\n const priorityA = indexA !== -1\n const priorityB = indexB !== -1\n\n if (priorityA && priorityB) {\n return indexA - indexB\n } else if (priorityA) {\n return -1\n } else if (priorityB) {\n return 1\n }\n }\n\n return a[lang].localeCompare(b[lang])\n })\n .map((country) => makeObject(country, lang))\n}\n\nexport function makeCountryFilterSet(ccFilter: CountryFilterSet) {\n return (country: CountryType) => {\n switch (ccFilter) {\n case 'Scandinavia':\n case 'Nordic':\n return country.regions?.includes(ccFilter)\n case 'Europe':\n return country.continent.includes(ccFilter)\n }\n return true\n }\n}\n\nSelectCountry._supportsSpacingProps = true\nexport default SelectCountry\n"],"mappings":"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"}
|
|
@@ -47,11 +47,11 @@ function Selection(props) {
|
|
|
47
47
|
help,
|
|
48
48
|
emptyValue,
|
|
49
49
|
width = 'large',
|
|
50
|
-
|
|
50
|
+
htmlAttributes,
|
|
51
51
|
setHasFocus,
|
|
52
52
|
handleChange,
|
|
53
53
|
children
|
|
54
|
-
} = (0, _hooks.
|
|
54
|
+
} = (0, _hooks.useFieldProps)(props);
|
|
55
55
|
const handleDropdownChange = (0, _react.useCallback)(_ref => {
|
|
56
56
|
let {
|
|
57
57
|
data: {
|
|
@@ -135,8 +135,8 @@ function Selection(props) {
|
|
|
135
135
|
label: variant === 'radio' ? title : undefined,
|
|
136
136
|
text: variant === 'button' ? title : undefined,
|
|
137
137
|
value: String(value !== null && value !== void 0 ? value : ''),
|
|
138
|
-
status: status
|
|
139
|
-
},
|
|
138
|
+
status: (hasError || status) && 'error'
|
|
139
|
+
}, htmlAttributes, rest));
|
|
140
140
|
})));
|
|
141
141
|
}
|
|
142
142
|
case 'dropdown':
|
|
@@ -166,7 +166,7 @@ function Selection(props) {
|
|
|
166
166
|
value: String(value !== null && value !== void 0 ? value : ''),
|
|
167
167
|
status: (hasError || status) && 'error',
|
|
168
168
|
disabled: disabled
|
|
169
|
-
},
|
|
169
|
+
}, htmlAttributes, {
|
|
170
170
|
data: optionsData,
|
|
171
171
|
suffix: help ? _react.default.createElement(_components.HelpButton, {
|
|
172
172
|
title: help.title
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Selection.js","names":["_react","_interopRequireWildcard","require","_components","_classnames","_interopRequireDefault","_componentHelper","_Option","_hooks","_types","_utils","_FieldBlock","_em","_excluded","_excluded2","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Selection","props","clearValue","useMemo","makeUniqueId","id","className","variant","label","labelDescription","layout","optionsLayout","placeholder","info","warning","error","hasError","disabled","help","emptyValue","width","ariaAttributes","setHasFocus","handleChange","children","useDataValue","handleDropdownChange","useCallback","_ref","data","selectedKey","onChangeHandler","_ref2","handleShow","_ref3","handleHide","_ref4","cn","classnames","fieldBlockProps","forId","pickSpacingProps","getStatus","_error$message","message","Error","FormError","toString","options","React","Children","toArray","child","isValidElement","type","OptionField","map","option","_option$props","v","title","rest","status","Component","Radio","ToggleButton","createElement","Group","layout_direction","on_change","text","optionsData","_child$props$value","_ref5","_child$props$children","_child$props$children2","content","Dropdown","list_class","portal_class","suffix","HelpButton","on_show","on_hide","stretch","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Selection/Selection.tsx"],"sourcesContent":["import React, { useMemo, useCallback } from 'react'\nimport {\n ToggleButton,\n Dropdown,\n Radio,\n HelpButton,\n} from '../../../../components'\nimport classnames from 'classnames'\nimport { makeUniqueId } from '../../../../shared/component-helper'\nimport OptionField from '../Option'\nimport { useDataValue } from '../../hooks'\nimport { FormError, FieldProps, FieldHelpProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport type { FormStatusText } from '../../../../components/FormStatus'\nimport FieldBlock from '../../FieldBlock'\n\ninterface IOption {\n title: string | React.ReactNode\n value: number | string\n status: FormStatusText\n}\n\nexport type Props = FieldHelpProps &\n FieldProps<IOption['value']> & {\n children?: React.ReactNode\n variant?: 'dropdown' | 'radio' | 'button'\n optionsLayout?: 'horizontal' | 'vertical'\n width?: 'small' | 'medium' | 'large' | 'stretch'\n }\n\nfunction Selection(props: Props) {\n const clearValue = useMemo(() => `clear-option-${makeUniqueId()}`, [])\n\n const {\n id,\n className,\n variant = 'dropdown',\n label,\n labelDescription,\n layout = 'vertical',\n optionsLayout = 'vertical',\n placeholder,\n value,\n info,\n warning,\n error,\n hasError,\n disabled,\n help,\n emptyValue,\n width = 'large',\n ariaAttributes,\n setHasFocus,\n handleChange,\n children,\n } = useDataValue(props)\n\n const handleDropdownChange = useCallback(\n ({ data: { selectedKey } }) => {\n handleChange?.(\n !selectedKey || selectedKey === clearValue\n ? emptyValue\n : selectedKey\n )\n },\n [handleChange, emptyValue, clearValue]\n )\n\n const onChangeHandler = useCallback(\n ({ value }) => {\n handleChange?.(value === undefined ? emptyValue : value)\n },\n [handleChange, emptyValue]\n )\n\n // Specific handleShow and handleHide because Dropdown preserve the initially received callbacks, so changes\n // due to `useCallback` usage will have no effect, leading to useDataValues handleFocus and handleBlur sending out old\n // copies of value as arguments.\n const handleShow = useCallback(\n ({ data }) => {\n setHasFocus(true, data?.selectedKey)\n },\n [setHasFocus]\n )\n\n const handleHide = useCallback(\n ({ data }) => {\n setHasFocus(false, data?.selectedKey)\n },\n [setHasFocus]\n )\n\n const cn = classnames(\n 'dnb-forms-field-selection',\n `dnb-forms-field-selection__variant--${variant}`,\n `dnb-forms-field-selection__options-layout--${optionsLayout}`,\n className\n )\n\n const fieldBlockProps = {\n forId: id,\n className: cn,\n ...pickSpacingProps(props),\n info,\n warning,\n error,\n layout,\n label,\n labelDescription,\n }\n\n const getStatus = useCallback(\n (error: Error | FormError | undefined) => {\n return (\n error?.message ??\n ((warning instanceof Error && warning.message) ||\n (warning instanceof FormError && warning.message) ||\n warning?.toString() ||\n (info instanceof Error && info.message) ||\n (info instanceof FormError && info.message) ||\n info?.toString())\n )\n },\n [info, warning]\n )\n\n const options: IOption[] = useMemo(\n () =>\n React.Children.toArray(children)\n .filter(\n (child) =>\n React.isValidElement(child) && child.type === OptionField\n )\n .map((option: React.ReactElement) => {\n const {\n value: v,\n error,\n title,\n children,\n ...rest\n } = option.props\n\n const status = getStatus(error)\n\n return {\n title: title ?? children,\n value: v,\n status,\n ...rest,\n }\n }),\n [children, getStatus]\n )\n\n const status = getStatus(error)\n\n switch (variant) {\n case 'radio':\n case 'button': {\n const Component = (\n variant === 'radio' ? Radio : ToggleButton\n ) as typeof Radio & typeof ToggleButton\n\n return (\n <FieldBlock {...fieldBlockProps}>\n <Component.Group\n className={cn}\n layout_direction={\n optionsLayout === 'horizontal' ? 'row' : 'column'\n }\n disabled={disabled}\n on_change={onChangeHandler}\n value={String(value ?? '')}\n >\n {options.map((option, i) => {\n const { value, title, status, ...rest } = option\n return (\n <Component\n id={options.length === 1 ? id : undefined}\n key={`option-${i}-${value}`}\n label={variant === 'radio' ? title : undefined}\n text={variant === 'button' ? title : undefined}\n value={String(value ?? '')}\n status={status}\n {...ariaAttributes}\n {...rest}\n />\n )\n })}\n </Component.Group>\n </FieldBlock>\n )\n }\n\n case 'dropdown': {\n const optionsData = React.Children.map(children, (child) => {\n if (React.isValidElement(child) && child.type === OptionField) {\n // Option components\n return child.props.text\n ? {\n selectedKey: String(child.props.value ?? ''),\n content: [\n child.props.children ?? child.props.title ?? (\n <em>Untitled</em>\n ),\n child.props.text,\n ],\n }\n : {\n selectedKey: child.props.value,\n content: child.props.children ?? child.props.title,\n }\n }\n\n // For other children, just show them as content\n return {\n content: child,\n }\n })\n\n return (\n <FieldBlock {...fieldBlockProps} width={width}>\n <Dropdown\n id={id}\n list_class=\"dnb-forms-field-selection__list\"\n portal_class=\"dnb-forms-field-selection__portal\"\n title={placeholder}\n value={String(value ?? '')}\n status={(hasError || status) && 'error'}\n disabled={disabled}\n {...ariaAttributes}\n data={optionsData}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.content}</HelpButton>\n ) : undefined\n }\n on_change={handleDropdownChange}\n on_show={handleShow}\n on_hide={handleHide}\n stretch\n />\n </FieldBlock>\n )\n }\n }\n}\n\nSelection._supportsSpacingProps = true\nexport default Selection\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Selection.js","names":["_react","_interopRequireWildcard","require","_components","_classnames","_interopRequireDefault","_componentHelper","_Option","_hooks","_types","_utils","_FieldBlock","_em","_excluded","_excluded2","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Selection","props","clearValue","useMemo","makeUniqueId","id","className","variant","label","labelDescription","layout","optionsLayout","placeholder","info","warning","error","hasError","disabled","help","emptyValue","width","htmlAttributes","setHasFocus","handleChange","children","useFieldProps","handleDropdownChange","useCallback","_ref","data","selectedKey","onChangeHandler","_ref2","handleShow","_ref3","handleHide","_ref4","cn","classnames","fieldBlockProps","forId","pickSpacingProps","getStatus","_error$message","message","Error","FormError","toString","options","React","Children","toArray","child","isValidElement","type","OptionField","map","option","_option$props","v","title","rest","status","Component","Radio","ToggleButton","createElement","Group","layout_direction","on_change","text","optionsData","_child$props$value","_ref5","_child$props$children","_child$props$children2","content","Dropdown","list_class","portal_class","suffix","HelpButton","on_show","on_hide","stretch","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Selection/Selection.tsx"],"sourcesContent":["import React, { useMemo, useCallback } from 'react'\nimport {\n ToggleButton,\n Dropdown,\n Radio,\n HelpButton,\n} from '../../../../components'\nimport classnames from 'classnames'\nimport { makeUniqueId } from '../../../../shared/component-helper'\nimport OptionField from '../Option'\nimport { useFieldProps } from '../../hooks'\nimport { FormError, FieldProps, FieldHelpProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport type { FormStatusText } from '../../../../components/FormStatus'\nimport FieldBlock from '../../FieldBlock'\n\ninterface IOption {\n title: string | React.ReactNode\n value: number | string\n status: FormStatusText\n}\n\nexport type Props = FieldHelpProps &\n FieldProps<IOption['value']> & {\n children?: React.ReactNode\n variant?: 'dropdown' | 'radio' | 'button'\n optionsLayout?: 'horizontal' | 'vertical'\n width?: 'small' | 'medium' | 'large' | 'stretch'\n }\n\nfunction Selection(props: Props) {\n const clearValue = useMemo(() => `clear-option-${makeUniqueId()}`, [])\n\n const {\n id,\n className,\n variant = 'dropdown',\n label,\n labelDescription,\n layout = 'vertical',\n optionsLayout = 'vertical',\n placeholder,\n value,\n info,\n warning,\n error,\n hasError,\n disabled,\n help,\n emptyValue,\n width = 'large',\n htmlAttributes,\n setHasFocus,\n handleChange,\n children,\n } = useFieldProps(props)\n\n const handleDropdownChange = useCallback(\n ({ data: { selectedKey } }) => {\n handleChange?.(\n !selectedKey || selectedKey === clearValue\n ? emptyValue\n : selectedKey\n )\n },\n [handleChange, emptyValue, clearValue]\n )\n\n const onChangeHandler = useCallback(\n ({ value }) => {\n handleChange?.(value === undefined ? emptyValue : value)\n },\n [handleChange, emptyValue]\n )\n\n // Specific handleShow and handleHide because Dropdown preserve the initially received callbacks, so changes\n // due to `useCallback` usage will have no effect, leading to useFieldPropss handleFocus and handleBlur sending out old\n // copies of value as arguments.\n const handleShow = useCallback(\n ({ data }) => {\n setHasFocus(true, data?.selectedKey)\n },\n [setHasFocus]\n )\n\n const handleHide = useCallback(\n ({ data }) => {\n setHasFocus(false, data?.selectedKey)\n },\n [setHasFocus]\n )\n\n const cn = classnames(\n 'dnb-forms-field-selection',\n `dnb-forms-field-selection__variant--${variant}`,\n `dnb-forms-field-selection__options-layout--${optionsLayout}`,\n className\n )\n\n const fieldBlockProps = {\n forId: id,\n className: cn,\n ...pickSpacingProps(props),\n info,\n warning,\n error,\n layout,\n label,\n labelDescription,\n }\n\n const getStatus = useCallback(\n (error: Error | FormError | undefined) => {\n return (\n error?.message ??\n ((warning instanceof Error && warning.message) ||\n (warning instanceof FormError && warning.message) ||\n warning?.toString() ||\n (info instanceof Error && info.message) ||\n (info instanceof FormError && info.message) ||\n info?.toString())\n )\n },\n [info, warning]\n )\n\n const options: IOption[] = useMemo(\n () =>\n React.Children.toArray(children)\n .filter(\n (child) =>\n React.isValidElement(child) && child.type === OptionField\n )\n .map((option: React.ReactElement) => {\n const {\n value: v,\n error,\n title,\n children,\n ...rest\n } = option.props\n\n const status = getStatus(error)\n\n return {\n title: title ?? children,\n value: v,\n status,\n ...rest,\n }\n }),\n [children, getStatus]\n )\n\n const status = getStatus(error)\n\n switch (variant) {\n case 'radio':\n case 'button': {\n const Component = (\n variant === 'radio' ? Radio : ToggleButton\n ) as typeof Radio & typeof ToggleButton\n\n return (\n <FieldBlock {...fieldBlockProps}>\n <Component.Group\n className={cn}\n layout_direction={\n optionsLayout === 'horizontal' ? 'row' : 'column'\n }\n disabled={disabled}\n on_change={onChangeHandler}\n value={String(value ?? '')}\n >\n {options.map((option, i) => {\n const { value, title, status, ...rest } = option\n return (\n <Component\n id={options.length === 1 ? id : undefined}\n key={`option-${i}-${value}`}\n label={variant === 'radio' ? title : undefined}\n text={variant === 'button' ? title : undefined}\n value={String(value ?? '')}\n status={(hasError || status) && 'error'}\n {...htmlAttributes}\n {...rest}\n />\n )\n })}\n </Component.Group>\n </FieldBlock>\n )\n }\n\n case 'dropdown': {\n const optionsData = React.Children.map(children, (child) => {\n if (React.isValidElement(child) && child.type === OptionField) {\n // Option components\n return child.props.text\n ? {\n selectedKey: String(child.props.value ?? ''),\n content: [\n child.props.children ?? child.props.title ?? (\n <em>Untitled</em>\n ),\n child.props.text,\n ],\n }\n : {\n selectedKey: child.props.value,\n content: child.props.children ?? child.props.title,\n }\n }\n\n // For other children, just show them as content\n return {\n content: child,\n }\n })\n\n return (\n <FieldBlock {...fieldBlockProps} width={width}>\n <Dropdown\n id={id}\n list_class=\"dnb-forms-field-selection__list\"\n portal_class=\"dnb-forms-field-selection__portal\"\n title={placeholder}\n value={String(value ?? '')}\n status={(hasError || status) && 'error'}\n disabled={disabled}\n {...htmlAttributes}\n data={optionsData}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.content}</HelpButton>\n ) : undefined\n }\n on_change={handleDropdownChange}\n on_show={handleShow}\n on_hide={handleHide}\n stretch\n />\n </FieldBlock>\n )\n }\n }\n}\n\nSelection._supportsSpacingProps = true\nexport default Selection\n"],"mappings":"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"}
|
|
@@ -13,22 +13,22 @@ interface ErrorMessages extends CustomErrorMessages {
|
|
|
13
13
|
}
|
|
14
14
|
export type Props = FieldHelpProps & FieldProps<string, undefined | string, ErrorMessages> & {
|
|
15
15
|
multiline?: boolean;
|
|
16
|
-
mask?: InputMaskedProps['mask'];
|
|
17
|
-
leftIcon?: string;
|
|
18
|
-
rightIcon?: string;
|
|
19
16
|
inputClassName?: string;
|
|
20
17
|
innerRef?: React.RefObject<HTMLInputElement | HTMLTextAreaElement>;
|
|
21
|
-
submitElement?: InputProps['submit_element'];
|
|
22
18
|
width?: false | 'small' | 'medium' | 'large' | 'stretch';
|
|
19
|
+
size?: InputProps['size'] | TextareaProps['size'];
|
|
20
|
+
keepPlaceholder?: InputProps['keep_placeholder'];
|
|
23
21
|
minLength?: number;
|
|
24
22
|
maxLength?: number;
|
|
25
23
|
pattern?: string;
|
|
26
24
|
type?: InputProps['type'];
|
|
27
|
-
size?: InputProps['size'];
|
|
28
25
|
align?: InputProps['align'];
|
|
29
26
|
selectall?: InputProps['selectall'];
|
|
30
27
|
clear?: boolean;
|
|
31
|
-
|
|
28
|
+
mask?: InputMaskedProps['mask'];
|
|
29
|
+
leftIcon?: string;
|
|
30
|
+
rightIcon?: string;
|
|
31
|
+
submitElement?: InputProps['submit_element'];
|
|
32
32
|
rows?: TextareaProps['rows'];
|
|
33
33
|
autoresizeMaxRows?: TextareaProps['autoresize_max_rows'];
|
|
34
34
|
autoresize?: TextareaProps['autoresize'];
|
|
@@ -103,7 +103,7 @@ function StringComponent(props) {
|
|
|
103
103
|
leftIcon,
|
|
104
104
|
rightIcon,
|
|
105
105
|
width,
|
|
106
|
-
|
|
106
|
+
htmlAttributes,
|
|
107
107
|
submitElement,
|
|
108
108
|
type,
|
|
109
109
|
clear,
|
|
@@ -124,7 +124,7 @@ function StringComponent(props) {
|
|
|
124
124
|
handleFocus,
|
|
125
125
|
handleBlur,
|
|
126
126
|
handleChange
|
|
127
|
-
} = (0, _hooks.
|
|
127
|
+
} = (0, _hooks.useFieldProps)(preparedProps);
|
|
128
128
|
const transformInstantly = (0, _react.useCallback)(value => props.capitalize ? (0, _componentHelper.toCapitalized)(value) : value, [props.capitalize]);
|
|
129
129
|
const cn = (0, _classnames.default)('dnb-forms-field-string__input', inputClassName);
|
|
130
130
|
const sharedProps = _objectSpread(_objectSpread({
|
|
@@ -145,18 +145,25 @@ function StringComponent(props) {
|
|
|
145
145
|
on_blur: handleBlur,
|
|
146
146
|
on_change: handleChange,
|
|
147
147
|
disabled
|
|
148
|
-
},
|
|
148
|
+
}, htmlAttributes), {}, {
|
|
149
149
|
stretch: Boolean(width !== undefined || (fieldBlockContext === null || fieldBlockContext === void 0 ? void 0 : fieldBlockContext.composition)),
|
|
150
150
|
inner_ref: innerRef,
|
|
151
151
|
status: hasError ? 'error' : undefined,
|
|
152
152
|
value: transformInstantly((_value$toString = value === null || value === void 0 ? void 0 : value.toString()) !== null && _value$toString !== void 0 ? _value$toString : '')
|
|
153
153
|
});
|
|
154
|
+
const textareaProps = {
|
|
155
|
+
keepPlaceholder,
|
|
156
|
+
rows,
|
|
157
|
+
autoresize_max_rows: autoresizeMaxRows,
|
|
158
|
+
autoresize,
|
|
159
|
+
characterCounter
|
|
160
|
+
};
|
|
154
161
|
const inputProps = {
|
|
155
|
-
type,
|
|
156
|
-
clear,
|
|
157
|
-
size,
|
|
158
|
-
align,
|
|
159
|
-
selectall,
|
|
162
|
+
type: type,
|
|
163
|
+
clear: clear,
|
|
164
|
+
size: size,
|
|
165
|
+
align: align,
|
|
166
|
+
selectall: selectall,
|
|
160
167
|
icon: leftIcon !== null && leftIcon !== void 0 ? leftIcon : rightIcon,
|
|
161
168
|
icon_position: rightIcon && !leftIcon ? 'right' : undefined,
|
|
162
169
|
submit_element: submitElement,
|
|
@@ -175,12 +182,7 @@ function StringComponent(props) {
|
|
|
175
182
|
width: width === 'stretch' || fieldBlockContext !== null && fieldBlockContext !== void 0 && fieldBlockContext.composition ? width : undefined,
|
|
176
183
|
contentWidth: width !== false ? width : undefined
|
|
177
184
|
}, (0, _utils.pickSpacingProps)(props));
|
|
178
|
-
return _react.default.createElement(_FieldBlock.default, fieldBlockProps, multiline ? _react.default.createElement(_components.Textarea, _extends({}, sharedProps, {
|
|
179
|
-
rows: rows,
|
|
180
|
-
autoresize_max_rows: autoresizeMaxRows,
|
|
181
|
-
autoresize: autoresize,
|
|
182
|
-
characterCounter: characterCounter
|
|
183
|
-
})) : mask ? _react.default.createElement(_InputMasked.default, _extends({}, sharedProps, inputProps, {
|
|
185
|
+
return _react.default.createElement(_FieldBlock.default, fieldBlockProps, multiline ? _react.default.createElement(_components.Textarea, _extends({}, sharedProps, textareaProps)) : mask ? _react.default.createElement(_InputMasked.default, _extends({}, sharedProps, inputProps, {
|
|
184
186
|
mask: mask
|
|
185
187
|
})) : _react.default.createElement(_components.Input, _extends({}, sharedProps, inputProps)));
|
|
186
188
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"String.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_components","_InputMasked","_Context","_FieldBlockContext","_FieldBlock","_hooks","_utils","_componentHelper","_useErrorMessage","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","StringComponent","props","_props$width","_value$toString","fieldBlockContext","useContext","FieldBlockContext","sharedContext","SharedContext","tr","translation","Forms","errorMessages","useErrorMessage","path","required","inputErrorRequired","minLength","stringInputErrorMinLength","maxLength","stringInputErrorMaxLength","pattern","inputErrorPattern","schema","useMemo","_props$schema","type","fromInput","useCallback","event","_event","_event$cleanedValue","_event2","_event3","emptyValue","cleanedValue","toEvent","trim","spaces","RegExp","test","replace","handleChange","transformValue","capitalize","toCapitalized","preparedProps","width","composition","id","name","className","innerRef","inputClassName","layout","placeholder","label","labelDescription","info","warning","error","hasError","disabled","help","multiline","mask","leftIcon","rightIcon","ariaAttributes","submitElement","clear","align","size","selectall","keepPlaceholder","rows","autoresizeMaxRows","autoresize","characterCounter","autoComplete","inputMode","autoCorrect","spellCheck","autoFocus","autoCapitalize","handleFocus","handleBlur","useDataValue","transformInstantly","cn","classnames","sharedProps","suffix","createElement","HelpButton","title","content","on_focus","on_blur","on_change","stretch","Boolean","inner_ref","status","toString","inputProps","icon","icon_position","submit_element","keep_placeholder","fieldBlockProps","forId","contentWidth","pickSpacingProps","Textarea","autoresize_max_rows","Input","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/String/String.tsx"],"sourcesContent":["import React, { useContext, useMemo, useCallback } from 'react'\nimport classnames from 'classnames'\nimport { HelpButton, Input, Textarea } from '../../../../components'\nimport { InputProps } from '../../../../components/input/Input'\nimport InputMasked, {\n InputMaskedProps,\n} from '../../../../components/InputMasked'\nimport { TextareaProps } from '../../../../components/Textarea'\nimport SharedContext from '../../../../shared/Context'\nimport FieldBlockContext from '../../FieldBlock/FieldBlockContext'\nimport FieldBlock from '../../FieldBlock'\nimport { useDataValue } from '../../hooks'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport { toCapitalized } from '../../../../shared/component-helper'\nimport type { TextCounterProps } from '../../../../fragments/TextCounter'\nimport type {\n FieldProps,\n FieldHelpProps,\n CustomErrorMessages,\n AllJSONSchemaVersions,\n} from '../../types'\nimport useErrorMessage from '../../hooks/useErrorMessage'\n\ninterface ErrorMessages extends CustomErrorMessages {\n required?: string\n schema?: string\n minLength?: string\n maxLength?: string\n pattern?: string\n}\nexport type Props = FieldHelpProps &\n FieldProps<string, undefined | string, ErrorMessages> & {\n // - String props\n multiline?: boolean\n mask?: InputMaskedProps['mask']\n leftIcon?: string\n rightIcon?: string\n inputClassName?: string\n innerRef?: React.RefObject<HTMLInputElement | HTMLTextAreaElement>\n submitElement?: InputProps['submit_element']\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n\n // - Validation\n minLength?: number\n maxLength?: number\n pattern?: string\n\n // - Input props\n type?: InputProps['type']\n size?: InputProps['size']\n align?: InputProps['align']\n selectall?: InputProps['selectall']\n clear?: boolean\n keepPlaceholder?: InputProps['keep_placeholder']\n\n // - Textarea props\n rows?: TextareaProps['rows']\n autoresizeMaxRows?: TextareaProps['autoresize_max_rows']\n autoresize?: TextareaProps['autoresize']\n characterCounter?: Omit<TextCounterProps, 'text'> | number\n\n // - Html props\n autoComplete?: HTMLInputElement['autocomplete']\n inputMode?: React.HTMLAttributes<HTMLInputElement>['inputMode']\n autoCorrect?: React.HTMLAttributes<HTMLInputElement>['autoCorrect']\n spellCheck?: React.HTMLAttributes<HTMLInputElement>['spellCheck']\n autoFocus?: React.HTMLAttributes<HTMLInputElement>['autoFocus']\n autoCapitalize?: React.HTMLAttributes<HTMLInputElement>['autoCapitalize']\n }\n\nfunction StringComponent(props: Props) {\n const fieldBlockContext = useContext(FieldBlockContext)\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const errorMessages = useErrorMessage(props.path, props.errorMessages, {\n required: tr.inputErrorRequired,\n minLength: tr.stringInputErrorMinLength,\n maxLength: tr.stringInputErrorMaxLength,\n pattern: tr.inputErrorPattern,\n })\n\n const schema = useMemo<AllJSONSchemaVersions>(\n () =>\n props.schema ?? {\n type: 'string',\n minLength: props.minLength,\n maxLength: props.maxLength,\n pattern: props.pattern,\n },\n [props.schema, props.minLength, props.maxLength, props.pattern]\n )\n const fromInput = useCallback(\n (event: { value: string; cleanedValue?: string }) => {\n if (typeof event === 'string') {\n event = { value: event }\n }\n if (event?.value === '') {\n return props.emptyValue\n }\n // Cleaned value for masked\n return event?.cleanedValue ?? event?.value\n },\n [props.emptyValue]\n )\n const toEvent = useCallback(\n (value: string, type: string) => {\n if (props.trim && type === 'onBlur') {\n const spaces = '[\\\\s ]'\n if (new RegExp(`^${spaces}|${spaces}$`).test(value)) {\n value = value.replace(\n new RegExp(`^${spaces}+|${spaces}+$`, 'g'),\n ''\n )\n handleChange(value)\n }\n }\n return value\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [props.trim]\n )\n const transformValue = useCallback(\n (value: string) => {\n if (props.capitalize) {\n value = toCapitalized(String(value || ''))\n }\n return value\n },\n [props.capitalize]\n )\n\n const preparedProps: Props = {\n ...props,\n errorMessages,\n schema,\n fromInput,\n toEvent,\n transformValue,\n width:\n props.width ??\n (fieldBlockContext?.composition ? 'stretch' : 'large'),\n }\n\n const {\n id,\n name,\n className,\n\n innerRef,\n inputClassName,\n layout,\n placeholder,\n label,\n labelDescription,\n value,\n info,\n warning,\n error,\n hasError,\n disabled,\n help,\n multiline,\n mask,\n leftIcon,\n rightIcon,\n width,\n ariaAttributes,\n submitElement,\n\n // - Input props\n type,\n clear,\n align,\n size,\n selectall,\n keepPlaceholder,\n\n // - Textarea props\n rows,\n // formId,\n autoresizeMaxRows = 6,\n autoresize = true,\n characterCounter,\n\n // - Html props\n\n autoComplete,\n inputMode,\n autoCorrect,\n spellCheck,\n autoFocus,\n autoCapitalize,\n\n // - Events\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue(preparedProps)\n\n const transformInstantly = useCallback(\n (value: string) => (props.capitalize ? toCapitalized(value) : value),\n [props.capitalize]\n )\n\n const cn = classnames('dnb-forms-field-string__input', inputClassName)\n\n const sharedProps: InputProps & TextareaProps = {\n id,\n name,\n autoComplete,\n autoCorrect,\n spellCheck,\n autoFocus,\n autoCapitalize,\n inputMode,\n className: cn,\n placeholder: placeholder,\n suffix: help ? (\n <HelpButton title={help.title}>{help.content}</HelpButton>\n ) : undefined,\n on_focus: handleFocus,\n on_blur: handleBlur,\n on_change: handleChange,\n disabled,\n ...ariaAttributes,\n stretch: Boolean(\n width !== undefined || fieldBlockContext?.composition\n ),\n inner_ref: innerRef,\n status: hasError ? 'error' : undefined,\n value: transformInstantly(value?.toString() ?? ''),\n }\n\n const inputProps: InputProps = {\n type,\n clear,\n size,\n align,\n selectall,\n icon: leftIcon ?? rightIcon,\n icon_position: rightIcon && !leftIcon ? 'right' : undefined,\n submit_element: submitElement,\n keep_placeholder: keepPlaceholder,\n }\n\n const fieldBlockProps = {\n className: classnames('dnb-forms-field-string', className),\n forId: id,\n layout,\n label,\n labelDescription,\n info,\n warning,\n error,\n disabled,\n width:\n width === 'stretch' || fieldBlockContext?.composition\n ? width\n : undefined,\n contentWidth: width !== false ? width : undefined,\n ...pickSpacingProps(props),\n }\n\n return (\n <FieldBlock {...fieldBlockProps}>\n {multiline ? (\n <Textarea\n {...sharedProps}\n rows={rows}\n autoresize_max_rows={autoresizeMaxRows}\n autoresize={autoresize}\n characterCounter={characterCounter}\n />\n ) : mask ? (\n <InputMasked {...sharedProps} {...inputProps} mask={mask} />\n ) : (\n <Input {...sharedProps} {...inputProps} />\n )}\n </FieldBlock>\n )\n}\n\nStringComponent._supportsSpacingProps = true\nexport default StringComponent\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"String.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_components","_InputMasked","_Context","_FieldBlockContext","_FieldBlock","_hooks","_utils","_componentHelper","_useErrorMessage","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","StringComponent","props","_props$width","_value$toString","fieldBlockContext","useContext","FieldBlockContext","sharedContext","SharedContext","tr","translation","Forms","errorMessages","useErrorMessage","path","required","inputErrorRequired","minLength","stringInputErrorMinLength","maxLength","stringInputErrorMaxLength","pattern","inputErrorPattern","schema","useMemo","_props$schema","type","fromInput","useCallback","event","_event","_event$cleanedValue","_event2","_event3","emptyValue","cleanedValue","toEvent","trim","spaces","RegExp","test","replace","handleChange","transformValue","capitalize","toCapitalized","preparedProps","width","composition","id","name","className","innerRef","inputClassName","layout","placeholder","label","labelDescription","info","warning","error","hasError","disabled","help","multiline","mask","leftIcon","rightIcon","htmlAttributes","submitElement","clear","align","size","selectall","keepPlaceholder","rows","autoresizeMaxRows","autoresize","characterCounter","autoComplete","inputMode","autoCorrect","spellCheck","autoFocus","autoCapitalize","handleFocus","handleBlur","useFieldProps","transformInstantly","cn","classnames","sharedProps","suffix","createElement","HelpButton","title","content","on_focus","on_blur","on_change","stretch","Boolean","inner_ref","status","toString","textareaProps","autoresize_max_rows","inputProps","icon","icon_position","submit_element","keep_placeholder","fieldBlockProps","forId","contentWidth","pickSpacingProps","Textarea","Input","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/String/String.tsx"],"sourcesContent":["import React, { useContext, useMemo, useCallback } from 'react'\nimport classnames from 'classnames'\nimport { HelpButton, Input, Textarea } from '../../../../components'\nimport { InputProps } from '../../../../components/input/Input'\nimport InputMasked, {\n InputMaskedProps,\n} from '../../../../components/InputMasked'\nimport { TextareaProps } from '../../../../components/Textarea'\nimport SharedContext from '../../../../shared/Context'\nimport FieldBlockContext from '../../FieldBlock/FieldBlockContext'\nimport FieldBlock from '../../FieldBlock'\nimport { useFieldProps } from '../../hooks'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport { toCapitalized } from '../../../../shared/component-helper'\nimport type { TextCounterProps } from '../../../../fragments/TextCounter'\nimport type {\n FieldProps,\n FieldHelpProps,\n CustomErrorMessages,\n AllJSONSchemaVersions,\n} from '../../types'\nimport useErrorMessage from '../../hooks/useErrorMessage'\n\ninterface ErrorMessages extends CustomErrorMessages {\n required?: string\n schema?: string\n minLength?: string\n maxLength?: string\n pattern?: string\n}\nexport type Props = FieldHelpProps &\n FieldProps<string, undefined | string, ErrorMessages> & {\n // - Shared props\n multiline?: boolean\n inputClassName?: string\n innerRef?: React.RefObject<HTMLInputElement | HTMLTextAreaElement>\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n size?: InputProps['size'] | TextareaProps['size']\n keepPlaceholder?: InputProps['keep_placeholder']\n\n // - Validation\n minLength?: number\n maxLength?: number\n pattern?: string\n\n // - Input props\n type?: InputProps['type']\n align?: InputProps['align']\n selectall?: InputProps['selectall']\n clear?: boolean\n mask?: InputMaskedProps['mask']\n leftIcon?: string\n rightIcon?: string\n submitElement?: InputProps['submit_element']\n\n // - Textarea props\n rows?: TextareaProps['rows']\n autoresizeMaxRows?: TextareaProps['autoresize_max_rows']\n autoresize?: TextareaProps['autoresize']\n characterCounter?: Omit<TextCounterProps, 'text'> | number\n\n // - Html props\n autoComplete?: HTMLInputElement['autocomplete']\n inputMode?: React.HTMLAttributes<HTMLInputElement>['inputMode']\n autoCorrect?: React.HTMLAttributes<HTMLInputElement>['autoCorrect']\n spellCheck?: React.HTMLAttributes<HTMLInputElement>['spellCheck']\n autoFocus?: React.HTMLAttributes<HTMLInputElement>['autoFocus']\n autoCapitalize?: React.HTMLAttributes<HTMLInputElement>['autoCapitalize']\n }\n\nfunction StringComponent(props: Props) {\n const fieldBlockContext = useContext(FieldBlockContext)\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const errorMessages = useErrorMessage(props.path, props.errorMessages, {\n required: tr.inputErrorRequired,\n minLength: tr.stringInputErrorMinLength,\n maxLength: tr.stringInputErrorMaxLength,\n pattern: tr.inputErrorPattern,\n })\n\n const schema = useMemo<AllJSONSchemaVersions>(\n () =>\n props.schema ?? {\n type: 'string',\n minLength: props.minLength,\n maxLength: props.maxLength,\n pattern: props.pattern,\n },\n [props.schema, props.minLength, props.maxLength, props.pattern]\n )\n const fromInput = useCallback(\n (event: { value: string; cleanedValue?: string }) => {\n if (typeof event === 'string') {\n event = { value: event }\n }\n if (event?.value === '') {\n return props.emptyValue\n }\n // Cleaned value for masked\n return event?.cleanedValue ?? event?.value\n },\n [props.emptyValue]\n )\n const toEvent = useCallback(\n (value: string, type: string) => {\n if (props.trim && type === 'onBlur') {\n const spaces = '[\\\\s ]'\n if (new RegExp(`^${spaces}|${spaces}$`).test(value)) {\n value = value.replace(\n new RegExp(`^${spaces}+|${spaces}+$`, 'g'),\n ''\n )\n handleChange(value)\n }\n }\n return value\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [props.trim]\n )\n const transformValue = useCallback(\n (value: string) => {\n if (props.capitalize) {\n value = toCapitalized(String(value || ''))\n }\n return value\n },\n [props.capitalize]\n )\n\n const preparedProps: Props = {\n ...props,\n errorMessages,\n schema,\n fromInput,\n toEvent,\n transformValue,\n width:\n props.width ??\n (fieldBlockContext?.composition ? 'stretch' : 'large'),\n }\n\n const {\n id,\n name,\n className,\n\n innerRef,\n inputClassName,\n layout,\n placeholder,\n label,\n labelDescription,\n value,\n info,\n warning,\n error,\n hasError,\n disabled,\n help,\n multiline,\n mask,\n leftIcon,\n rightIcon,\n width,\n htmlAttributes,\n submitElement,\n\n // - Input props\n type,\n clear,\n align,\n size,\n selectall,\n keepPlaceholder,\n\n // - Textarea props\n rows,\n // formId,\n autoresizeMaxRows = 6,\n autoresize = true,\n characterCounter,\n\n // - Html props\n\n autoComplete,\n inputMode,\n autoCorrect,\n spellCheck,\n autoFocus,\n autoCapitalize,\n\n // - Events\n handleFocus,\n handleBlur,\n handleChange,\n } = useFieldProps(preparedProps)\n\n const transformInstantly = useCallback(\n (value: string) => (props.capitalize ? toCapitalized(value) : value),\n [props.capitalize]\n )\n\n const cn = classnames('dnb-forms-field-string__input', inputClassName)\n\n const sharedProps: InputProps & TextareaProps = {\n id,\n name,\n autoComplete,\n autoCorrect,\n spellCheck,\n autoFocus,\n autoCapitalize,\n inputMode,\n className: cn,\n placeholder: placeholder,\n suffix: help ? (\n <HelpButton title={help.title}>{help.content}</HelpButton>\n ) : undefined,\n on_focus: handleFocus,\n on_blur: handleBlur,\n on_change: handleChange,\n disabled,\n ...htmlAttributes,\n stretch: Boolean(\n width !== undefined || fieldBlockContext?.composition\n ),\n inner_ref: innerRef,\n status: hasError ? 'error' : undefined,\n value: transformInstantly(value?.toString() ?? ''),\n }\n\n const textareaProps: TextareaProps = {\n keepPlaceholder,\n rows,\n autoresize_max_rows: autoresizeMaxRows,\n autoresize,\n characterCounter,\n }\n\n const inputProps: InputProps = {\n type: type,\n clear: clear,\n size: size,\n align: align,\n selectall: selectall,\n icon: leftIcon ?? rightIcon,\n icon_position: rightIcon && !leftIcon ? 'right' : undefined,\n submit_element: submitElement,\n keep_placeholder: keepPlaceholder,\n }\n\n const fieldBlockProps = {\n className: classnames('dnb-forms-field-string', className),\n forId: id,\n layout,\n label,\n labelDescription,\n info,\n warning,\n error,\n disabled,\n width:\n width === 'stretch' || fieldBlockContext?.composition\n ? width\n : undefined,\n contentWidth: width !== false ? width : undefined,\n ...pickSpacingProps(props),\n }\n\n return (\n <FieldBlock {...fieldBlockProps}>\n {multiline ? (\n <Textarea {...sharedProps} {...textareaProps} />\n ) : mask ? (\n <InputMasked {...sharedProps} {...inputProps} mask={mask} />\n ) : (\n <Input {...sharedProps} {...inputProps} />\n )}\n </FieldBlock>\n )\n}\n\nStringComponent._supportsSpacingProps = true\nexport default StringComponent\n"],"mappings":"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"}
|
|
@@ -71,13 +71,13 @@ const stringProperties = {
|
|
|
71
71
|
selectall: _InputDocs.inputProperties.selectall,
|
|
72
72
|
clear: _InputDocs.inputProperties.clear,
|
|
73
73
|
keepPlaceholder: _InputDocs.inputProperties.keep_placeholder,
|
|
74
|
-
|
|
75
|
-
doc: 'For multiline, set
|
|
76
|
-
type: '
|
|
74
|
+
rows: {
|
|
75
|
+
doc: 'For multiline, set how many rows of text can be shown by default. Defaults to 2.',
|
|
76
|
+
type: 'number',
|
|
77
77
|
status: 'optional'
|
|
78
78
|
},
|
|
79
79
|
autoresizeMaxRows: {
|
|
80
|
-
doc: 'For multiline, set how many rows of text can be shown at max.',
|
|
80
|
+
doc: 'For multiline, set how many rows of text can be shown at max. Defaults to 6',
|
|
81
81
|
type: 'number',
|
|
82
82
|
status: 'optional'
|
|
83
83
|
},
|
|
@@ -86,6 +86,11 @@ const stringProperties = {
|
|
|
86
86
|
type: ['number', 'object'],
|
|
87
87
|
status: 'optional'
|
|
88
88
|
},
|
|
89
|
+
autoresize: {
|
|
90
|
+
doc: 'For multiline, set true to expand when writing longer texts. Defaults to true.',
|
|
91
|
+
type: 'boolean',
|
|
92
|
+
status: 'optional'
|
|
93
|
+
},
|
|
89
94
|
inputClassName: {
|
|
90
95
|
doc: 'Class name set on the <input> DOM element.',
|
|
91
96
|
type: 'string',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StringDocs.js","names":["_InputDocs","require","stringProperties","multiline","doc","type","status","leftIcon","rightIcon","capitalize","trim","inputMode","autoComplete","minLength","maxLength","pattern","width","help","size","inputProperties","align","selectall","clear","keepPlaceholder","keep_placeholder","
|
|
1
|
+
{"version":3,"file":"StringDocs.js","names":["_InputDocs","require","stringProperties","multiline","doc","type","status","leftIcon","rightIcon","capitalize","trim","inputMode","autoComplete","minLength","maxLength","pattern","width","help","size","inputProperties","align","selectall","clear","keepPlaceholder","keep_placeholder","rows","autoresizeMaxRows","characterCounter","autoresize","inputClassName","innerRef","submitElement","exports"],"sources":["../../../../../../src/extensions/forms/Field/String/StringDocs.ts"],"sourcesContent":["import { inputProperties } from '../../../../components/input/InputDocs'\nimport { PropertiesTableProps } from '../../../../shared/types'\n\nexport const stringProperties: PropertiesTableProps = {\n multiline: {\n doc: 'True to be able to write in multiple lines (switching from input-element to textarea-element).',\n type: 'boolean',\n status: 'optional',\n },\n leftIcon: {\n doc: 'For icon at the left side of the text input.',\n type: 'string',\n status: 'optional',\n },\n rightIcon: {\n doc: 'For icon at the right side of the text input.',\n type: 'string',\n status: 'optional',\n },\n capitalize: {\n doc: 'When set to true, it will capitalize the first letter of every word, transforming the rest to lowercase.',\n type: 'boolean',\n status: 'optional',\n },\n trim: {\n doc: 'When true, it will trim leading and trailing whitespaces on blur, triggering onChange if the value changes.',\n type: 'boolean',\n status: 'optional',\n },\n inputMode: {\n doc: 'Define an [inputmode](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/inputmode).',\n type: 'string',\n status: 'optional',\n },\n autoComplete: {\n doc: 'For HTML [autocomplete](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) attributes.',\n type: ['on', 'string'],\n status: 'optional',\n },\n minLength: {\n doc: 'Validation for minimum length of the text (number of characters).',\n type: 'number',\n status: 'optional',\n },\n maxLength: {\n doc: 'Validation for maximum length of the text (number of characters).',\n type: 'number',\n status: 'optional',\n },\n pattern: {\n doc: 'Validation based on regex pattern.',\n type: 'string',\n status: 'optional',\n },\n width: {\n doc: '`false` for no width (use browser default), small, medium or large for predefined standard widths, stretch for fill available width.',\n type: ['string', 'false'],\n status: 'optional',\n },\n help: {\n doc: 'Provide a help button. Object consisting of title and content.',\n type: 'object',\n status: 'optional',\n },\n\n // - Input props\n size: inputProperties.size,\n align: inputProperties.align,\n selectall: inputProperties.selectall,\n clear: inputProperties.clear,\n keepPlaceholder: inputProperties.keep_placeholder,\n\n // - Textarea props\n rows: {\n doc: 'For multiline, set how many rows of text can be shown by default. Defaults to 2.',\n type: 'number',\n status: 'optional',\n },\n autoresizeMaxRows: {\n doc: 'For multiline, set how many rows of text can be shown at max. Defaults to 6',\n type: 'number',\n status: 'optional',\n },\n characterCounter: {\n doc: \"For multiline, use a number to define the displayed max length e.g. `40` or `{ max: 40, variant: 'down' }`.\",\n type: ['number', 'object'],\n status: 'optional',\n },\n autoresize: {\n doc: 'For multiline, set true to expand when writing longer texts. Defaults to true.',\n type: 'boolean',\n status: 'optional',\n },\n\n // - Additional props\n inputClassName: {\n doc: 'Class name set on the <input> DOM element.',\n type: 'string',\n status: 'optional',\n },\n innerRef: {\n doc: 'By providing a React.Ref we can get the internally used input element (DOM).',\n type: 'React.Ref',\n status: 'optional',\n },\n submitElement: {\n doc: 'Accepts a React element which will show up like the \"submit button\" would do on type=\"search\".',\n type: 'React.Element',\n status: 'optional',\n },\n}\n"],"mappings":"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"}
|
|
@@ -45,9 +45,9 @@ function Toggle(props) {
|
|
|
45
45
|
warning,
|
|
46
46
|
error,
|
|
47
47
|
hasError,
|
|
48
|
-
|
|
48
|
+
htmlAttributes,
|
|
49
49
|
handleChange
|
|
50
|
-
} = (0, _hooks.
|
|
50
|
+
} = (0, _hooks.useFieldProps)(preparedProps);
|
|
51
51
|
const handleCheckboxChange = (0, _react.useCallback)(_ref => {
|
|
52
52
|
let {
|
|
53
53
|
checked
|
|
@@ -89,7 +89,7 @@ function Toggle(props) {
|
|
|
89
89
|
disabled: disabled,
|
|
90
90
|
status: hasError ? 'error' : undefined,
|
|
91
91
|
on_change: handleCheckboxChange
|
|
92
|
-
},
|
|
92
|
+
}, htmlAttributes)));
|
|
93
93
|
case 'button':
|
|
94
94
|
return _react.default.createElement(_FieldBlock.default, fieldBlockProps, _react.default.createElement(_components.ToggleButton, _extends({
|
|
95
95
|
id: id,
|
|
@@ -99,7 +99,7 @@ function Toggle(props) {
|
|
|
99
99
|
status: hasError ? 'error' : undefined,
|
|
100
100
|
value: value ? 'true' : 'false',
|
|
101
101
|
on_change: handleCheckboxChange
|
|
102
|
-
},
|
|
102
|
+
}, htmlAttributes)));
|
|
103
103
|
case 'buttons':
|
|
104
104
|
return _react.default.createElement(_FieldBlock.default, _extends({}, fieldBlockProps, {
|
|
105
105
|
asFieldset: true
|
|
@@ -115,10 +115,10 @@ function Toggle(props) {
|
|
|
115
115
|
}, _react.default.createElement(_components.ToggleButton, _extends({
|
|
116
116
|
text: textOn !== null && textOn !== void 0 ? textOn : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanYes,
|
|
117
117
|
value: "on"
|
|
118
|
-
},
|
|
118
|
+
}, htmlAttributes)), _react.default.createElement(_components.ToggleButton, _extends({
|
|
119
119
|
text: textOff !== null && textOff !== void 0 ? textOff : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.booleanNo,
|
|
120
120
|
value: "off"
|
|
121
|
-
},
|
|
121
|
+
}, htmlAttributes)))));
|
|
122
122
|
case 'checkbox-button':
|
|
123
123
|
return _react.default.createElement(_FieldBlock.default, fieldBlockProps, _react.default.createElement(_components.ToggleButton, _extends({
|
|
124
124
|
id: id,
|
|
@@ -129,7 +129,7 @@ function Toggle(props) {
|
|
|
129
129
|
status: hasError ? 'error' : undefined,
|
|
130
130
|
value: value ? 'true' : 'false',
|
|
131
131
|
on_change: handleCheckboxChange
|
|
132
|
-
},
|
|
132
|
+
}, htmlAttributes)));
|
|
133
133
|
}
|
|
134
134
|
}
|
|
135
135
|
Toggle._supportsSpacingProps = true;
|