@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,451 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
|
|
3
|
-
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
4
|
-
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
5
|
-
const _excluded = ["name", "error", "warning", "info", "hasError", "isChanged", "autoComplete", "ariaAttributes", "dataContext", "setHasFocus", "handleFocus", "handleBlur", "handleChange", "updateValue", "forceUpdate"];
|
|
6
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
7
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
8
|
-
import { useRef, useEffect, useContext, useCallback, useMemo, useReducer } from 'react';
|
|
9
|
-
import pointer from 'json-pointer';
|
|
10
|
-
import { errorChanged } from '../utils';
|
|
11
|
-
import { ajvErrorsToOneFormError } from '../utils/ajv';
|
|
12
|
-
import { FormError } from '../types';
|
|
13
|
-
import { Context as DataContext } from '../DataContext';
|
|
14
|
-
import { combineDescribedBy } from '../../../shared/component-helper';
|
|
15
|
-
import SharedContext from '../../../shared/Context';
|
|
16
|
-
import FieldBlockContext from '../FieldBlock/FieldBlockContext';
|
|
17
|
-
import IterateElementContext from '../Iterate/IterateElementContext';
|
|
18
|
-
import useMountEffect from './useMountEffect';
|
|
19
|
-
import useUnmountEffect from './useUnmountEffect';
|
|
20
|
-
import useUpdateEffect from './useUpdateEffect';
|
|
21
|
-
import useProcessManager from './useProcessManager';
|
|
22
|
-
import useId from './useId';
|
|
23
|
-
export default function useDataValue(props) {
|
|
24
|
-
var _props$disabled,
|
|
25
|
-
_dataContext$ajvInsta,
|
|
26
|
-
_this = this,
|
|
27
|
-
_ref3,
|
|
28
|
-
_props$path,
|
|
29
|
-
_props$autoComplete;
|
|
30
|
-
const {
|
|
31
|
-
path,
|
|
32
|
-
itemPath,
|
|
33
|
-
emptyValue,
|
|
34
|
-
required,
|
|
35
|
-
info,
|
|
36
|
-
warning,
|
|
37
|
-
error: errorProp,
|
|
38
|
-
errorMessages,
|
|
39
|
-
onFocus,
|
|
40
|
-
onBlur,
|
|
41
|
-
onChange,
|
|
42
|
-
onBlurValidator,
|
|
43
|
-
validator,
|
|
44
|
-
schema,
|
|
45
|
-
validateInitially,
|
|
46
|
-
validateUnchanged,
|
|
47
|
-
continuousValidation,
|
|
48
|
-
toInput = value => value,
|
|
49
|
-
fromInput = value => value,
|
|
50
|
-
toEvent = value => value,
|
|
51
|
-
transformValue = value => value,
|
|
52
|
-
fromExternal = value => value,
|
|
53
|
-
validateRequired = (value, _ref) => {
|
|
54
|
-
let {
|
|
55
|
-
emptyValue,
|
|
56
|
-
required,
|
|
57
|
-
error
|
|
58
|
-
} = _ref;
|
|
59
|
-
const res = required && (value === emptyValue || typeof emptyValue === 'undefined' && value === '') ? error : undefined;
|
|
60
|
-
return res;
|
|
61
|
-
}
|
|
62
|
-
} = props;
|
|
63
|
-
const disabled = (_props$disabled = props.disabled) !== null && _props$disabled !== void 0 ? _props$disabled : props.readOnly;
|
|
64
|
-
const [, forceUpdate] = useReducer(() => ({}), {});
|
|
65
|
-
const {
|
|
66
|
-
startProcess
|
|
67
|
-
} = useProcessManager();
|
|
68
|
-
const id = useId(props.id);
|
|
69
|
-
const dataContext = useContext(DataContext);
|
|
70
|
-
const fieldBlockContext = useContext(FieldBlockContext);
|
|
71
|
-
const iterateElementContext = useContext(IterateElementContext);
|
|
72
|
-
const sharedContext = useContext(SharedContext);
|
|
73
|
-
const tr = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
|
|
74
|
-
const transformers = useRef({
|
|
75
|
-
toInput,
|
|
76
|
-
fromInput,
|
|
77
|
-
toEvent,
|
|
78
|
-
fromExternal,
|
|
79
|
-
transformValue,
|
|
80
|
-
validateRequired
|
|
81
|
-
});
|
|
82
|
-
const {
|
|
83
|
-
handlePathChange: dataContextHandlePathChange,
|
|
84
|
-
updateDataValue: dataContextUpdateDataValue,
|
|
85
|
-
validateData: dataContextValidateData,
|
|
86
|
-
setValueWithError: dataContextSetValueWithError,
|
|
87
|
-
setProps: dataContextSetProps,
|
|
88
|
-
errors: dataContextErrors,
|
|
89
|
-
contextErrorMessages
|
|
90
|
-
} = dataContext !== null && dataContext !== void 0 ? dataContext : {};
|
|
91
|
-
const dataContextError = path ? dataContextErrors === null || dataContextErrors === void 0 ? void 0 : dataContextErrors[path] : undefined;
|
|
92
|
-
const inFieldBlock = Boolean(fieldBlockContext);
|
|
93
|
-
const {
|
|
94
|
-
setFieldState: setFieldBlockState,
|
|
95
|
-
showFieldError: showFieldBlockError
|
|
96
|
-
} = fieldBlockContext !== null && fieldBlockContext !== void 0 ? fieldBlockContext : {};
|
|
97
|
-
const inIterate = Boolean(iterateElementContext);
|
|
98
|
-
const {
|
|
99
|
-
index: iterateElementIndex,
|
|
100
|
-
value: iterateElementValue,
|
|
101
|
-
handleChange: handleIterateElementChange
|
|
102
|
-
} = iterateElementContext !== null && iterateElementContext !== void 0 ? iterateElementContext : {};
|
|
103
|
-
if (path && path.substring(0, 1) !== '/') {
|
|
104
|
-
throw new Error('Invalid path. Data value path JSON Pointers must be from root (starting with a /).');
|
|
105
|
-
}
|
|
106
|
-
if (itemPath && itemPath.substring(0, 1) !== '/') {
|
|
107
|
-
throw new Error('Invalid itemPath. Item pathJSON Pointers must be from root of iterate element (starting with a /).');
|
|
108
|
-
}
|
|
109
|
-
if (itemPath && !iterateElementContext) {
|
|
110
|
-
throw new Error('itemPath cannot be used when not inside an iterate element context. Wrap the component in an Iterate.Loop.');
|
|
111
|
-
}
|
|
112
|
-
const identifier = useMemo(() => {
|
|
113
|
-
return path !== null && path !== void 0 ? path : id;
|
|
114
|
-
}, [path, id]);
|
|
115
|
-
const externalValue = useMemo(() => {
|
|
116
|
-
if (props.value !== undefined) {
|
|
117
|
-
return transformers.current.fromExternal(props.value);
|
|
118
|
-
}
|
|
119
|
-
if (inIterate && itemPath) {
|
|
120
|
-
if (itemPath === '/') {
|
|
121
|
-
return iterateElementValue;
|
|
122
|
-
}
|
|
123
|
-
return pointer.has(iterateElementValue, itemPath) ? pointer.get(iterateElementValue, itemPath) : undefined;
|
|
124
|
-
}
|
|
125
|
-
if (dataContext.data && path) {
|
|
126
|
-
if (path === '/') {
|
|
127
|
-
return dataContext.data;
|
|
128
|
-
}
|
|
129
|
-
return pointer.has(dataContext.data, path) ? pointer.get(dataContext.data, path) : undefined;
|
|
130
|
-
}
|
|
131
|
-
return undefined;
|
|
132
|
-
}, [props.value, inIterate, itemPath, dataContext.data, path, iterateElementValue]);
|
|
133
|
-
const valueRef = useRef(externalValue);
|
|
134
|
-
const changedRef = useRef(false);
|
|
135
|
-
const hasFocusRef = useRef(false);
|
|
136
|
-
const showErrorInitially = validateInitially || errorProp;
|
|
137
|
-
const localErrorRef = useRef();
|
|
138
|
-
const contextErrorRef = useRef(dataContextError);
|
|
139
|
-
dataContextSetProps === null || dataContextSetProps === void 0 ? void 0 : dataContextSetProps(identifier, props);
|
|
140
|
-
const showErrorRef = useRef(Boolean(showErrorInitially));
|
|
141
|
-
const validatorRef = useRef(validator);
|
|
142
|
-
useUpdateEffect(() => {
|
|
143
|
-
validatorRef.current = validator;
|
|
144
|
-
}, [validator]);
|
|
145
|
-
const schemaValidatorRef = useRef(schema ? (_dataContext$ajvInsta = dataContext.ajvInstance) === null || _dataContext$ajvInsta === void 0 ? void 0 : _dataContext$ajvInsta.compile(schema) : undefined);
|
|
146
|
-
const showError = useCallback(() => {
|
|
147
|
-
showErrorRef.current = true;
|
|
148
|
-
showFieldBlockError === null || showFieldBlockError === void 0 ? void 0 : showFieldBlockError(identifier, true);
|
|
149
|
-
}, [showFieldBlockError, identifier]);
|
|
150
|
-
const hideError = useCallback(() => {
|
|
151
|
-
showErrorRef.current = false;
|
|
152
|
-
showFieldBlockError === null || showFieldBlockError === void 0 ? void 0 : showFieldBlockError(identifier, false);
|
|
153
|
-
}, [showFieldBlockError, identifier]);
|
|
154
|
-
const errorMessagesRef = useRef(null);
|
|
155
|
-
errorMessagesRef.current = useMemo(() => {
|
|
156
|
-
return _objectSpread({
|
|
157
|
-
required: tr.fieldErrorRequired
|
|
158
|
-
}, errorMessages);
|
|
159
|
-
}, [errorMessages, tr.fieldErrorRequired]);
|
|
160
|
-
const prepareError = useCallback(error => {
|
|
161
|
-
if (error === undefined) {
|
|
162
|
-
return;
|
|
163
|
-
}
|
|
164
|
-
if (error instanceof FormError) {
|
|
165
|
-
var _error$messageValues;
|
|
166
|
-
let message = error.message;
|
|
167
|
-
const {
|
|
168
|
-
validationRule
|
|
169
|
-
} = error;
|
|
170
|
-
if (typeof validationRule === 'string') {
|
|
171
|
-
var _errorMessagesRef$cur;
|
|
172
|
-
const fieldMessage = (_errorMessagesRef$cur = errorMessagesRef.current) === null || _errorMessagesRef$cur === void 0 ? void 0 : _errorMessagesRef$cur[validationRule];
|
|
173
|
-
if (fieldMessage) {
|
|
174
|
-
message = fieldMessage;
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
const messageWithValues = Object.entries((_error$messageValues = error.messageValues) !== null && _error$messageValues !== void 0 ? _error$messageValues : {}).reduce((message, _ref2) => {
|
|
178
|
-
let [key, value] = _ref2;
|
|
179
|
-
return message.replace(`{${key}}`, value);
|
|
180
|
-
}, message);
|
|
181
|
-
return new FormError(messageWithValues);
|
|
182
|
-
}
|
|
183
|
-
return error;
|
|
184
|
-
}, []);
|
|
185
|
-
const stateId = useId();
|
|
186
|
-
const persistErrorState = useCallback(errorArg => {
|
|
187
|
-
const error = prepareError(errorArg);
|
|
188
|
-
if (!errorChanged(error, localErrorRef.current)) {
|
|
189
|
-
return;
|
|
190
|
-
}
|
|
191
|
-
localErrorRef.current = error;
|
|
192
|
-
dataContextSetValueWithError === null || dataContextSetValueWithError === void 0 ? void 0 : dataContextSetValueWithError(identifier, Boolean(error));
|
|
193
|
-
setFieldBlockState === null || setFieldBlockState === void 0 ? void 0 : setFieldBlockState({
|
|
194
|
-
stateId,
|
|
195
|
-
identifier,
|
|
196
|
-
type: 'error',
|
|
197
|
-
state: error,
|
|
198
|
-
showInitially: Boolean(inFieldBlock && validateInitially)
|
|
199
|
-
});
|
|
200
|
-
forceUpdate();
|
|
201
|
-
}, [stateId, prepareError, dataContextSetValueWithError, identifier, setFieldBlockState, inFieldBlock, validateInitially]);
|
|
202
|
-
const clearErrorState = useCallback(() => persistErrorState(undefined), [persistErrorState]);
|
|
203
|
-
const validateValue = useCallback(async () => {
|
|
204
|
-
const isProcessActive = startProcess();
|
|
205
|
-
if (disabled) {
|
|
206
|
-
if (isProcessActive()) {
|
|
207
|
-
clearErrorState();
|
|
208
|
-
}
|
|
209
|
-
hideError();
|
|
210
|
-
return;
|
|
211
|
-
}
|
|
212
|
-
try {
|
|
213
|
-
const requiredError = transformers.current.validateRequired(valueRef.current, {
|
|
214
|
-
emptyValue,
|
|
215
|
-
required,
|
|
216
|
-
isChanged: changedRef.current,
|
|
217
|
-
error: new FormError('The value is required', {
|
|
218
|
-
validationRule: 'required'
|
|
219
|
-
})
|
|
220
|
-
});
|
|
221
|
-
if (requiredError instanceof Error) {
|
|
222
|
-
throw requiredError;
|
|
223
|
-
}
|
|
224
|
-
if (schemaValidatorRef.current && valueRef.current !== undefined && !schemaValidatorRef.current(valueRef.current)) {
|
|
225
|
-
const error = ajvErrorsToOneFormError(schemaValidatorRef.current.errors);
|
|
226
|
-
throw error;
|
|
227
|
-
}
|
|
228
|
-
if (validatorRef.current) {
|
|
229
|
-
var _validatorRef$current;
|
|
230
|
-
const res = await ((_validatorRef$current = validatorRef.current) === null || _validatorRef$current === void 0 ? void 0 : _validatorRef$current.call(validatorRef, valueRef.current, _objectSpread(_objectSpread({}, contextErrorMessages), errorMessagesRef.current)));
|
|
231
|
-
if (res instanceof Error) {
|
|
232
|
-
throw res;
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
if (isProcessActive()) {
|
|
236
|
-
clearErrorState();
|
|
237
|
-
}
|
|
238
|
-
} catch (error) {
|
|
239
|
-
if (isProcessActive()) {
|
|
240
|
-
persistErrorState(error);
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
}, [startProcess, disabled, hideError, clearErrorState, emptyValue, required, contextErrorMessages, persistErrorState]);
|
|
244
|
-
useUpdateEffect(() => {
|
|
245
|
-
var _dataContext$ajvInsta2;
|
|
246
|
-
schemaValidatorRef.current = schema ? (_dataContext$ajvInsta2 = dataContext.ajvInstance) === null || _dataContext$ajvInsta2 === void 0 ? void 0 : _dataContext$ajvInsta2.compile(schema) : undefined;
|
|
247
|
-
validateValue();
|
|
248
|
-
}, [schema, validateValue]);
|
|
249
|
-
useUpdateEffect(() => {
|
|
250
|
-
valueRef.current = externalValue;
|
|
251
|
-
validateValue();
|
|
252
|
-
forceUpdate();
|
|
253
|
-
}, [externalValue, validateValue]);
|
|
254
|
-
useEffect(() => {
|
|
255
|
-
const error = prepareError(dataContextError);
|
|
256
|
-
if (errorChanged(error, contextErrorRef.current)) {
|
|
257
|
-
contextErrorRef.current = error;
|
|
258
|
-
forceUpdate();
|
|
259
|
-
}
|
|
260
|
-
}, [dataContextError, prepareError]);
|
|
261
|
-
useEffect(() => {
|
|
262
|
-
if (dataContext.showAllErrors) {
|
|
263
|
-
showError();
|
|
264
|
-
forceUpdate();
|
|
265
|
-
}
|
|
266
|
-
}, [dataContext.showAllErrors, showError]);
|
|
267
|
-
useEffect(() => {
|
|
268
|
-
if (path) {
|
|
269
|
-
const hasValue = pointer.has(dataContext.data, path);
|
|
270
|
-
const existingValue = hasValue ? pointer.get(dataContext.data, path) : undefined;
|
|
271
|
-
if (!hasValue || props.value !== existingValue && valueRef.current !== existingValue) {
|
|
272
|
-
dataContextUpdateDataValue === null || dataContextUpdateDataValue === void 0 ? void 0 : dataContextUpdateDataValue(path, props.value, {
|
|
273
|
-
disabled
|
|
274
|
-
});
|
|
275
|
-
dataContextValidateData === null || dataContextValidateData === void 0 ? void 0 : dataContextValidateData();
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
}, [dataContext.data, dataContextUpdateDataValue, dataContextValidateData, disabled, path, props.value]);
|
|
279
|
-
const handleError = useCallback(() => {
|
|
280
|
-
if (continuousValidation || continuousValidation !== false && !hasFocusRef.current) {
|
|
281
|
-
showError();
|
|
282
|
-
} else {
|
|
283
|
-
hideError();
|
|
284
|
-
}
|
|
285
|
-
}, [continuousValidation, hideError, showError]);
|
|
286
|
-
const setHasFocus = useCallback((hasFocus, valueOverride) => {
|
|
287
|
-
if (hasFocus) {
|
|
288
|
-
hasFocusRef.current = true;
|
|
289
|
-
const value = transformers.current.toEvent(valueOverride !== null && valueOverride !== void 0 ? valueOverride : valueRef.current, 'onFocus');
|
|
290
|
-
onFocus === null || onFocus === void 0 ? void 0 : onFocus(value);
|
|
291
|
-
} else {
|
|
292
|
-
hasFocusRef.current = false;
|
|
293
|
-
const value = transformers.current.toEvent(valueOverride !== null && valueOverride !== void 0 ? valueOverride : valueRef.current, 'onBlur');
|
|
294
|
-
onBlur === null || onBlur === void 0 ? void 0 : onBlur(value);
|
|
295
|
-
if (!changedRef.current && !validateUnchanged) {
|
|
296
|
-
return;
|
|
297
|
-
}
|
|
298
|
-
if (typeof onBlurValidator === 'function') {
|
|
299
|
-
const value = transformers.current.toEvent(valueOverride !== null && valueOverride !== void 0 ? valueOverride : valueRef.current, 'onBlurValidator');
|
|
300
|
-
Promise.resolve(onBlurValidator(value)).then(persistErrorState);
|
|
301
|
-
}
|
|
302
|
-
showError();
|
|
303
|
-
forceUpdate();
|
|
304
|
-
}
|
|
305
|
-
}, [onBlur, onBlurValidator, onFocus, persistErrorState, showError, validateUnchanged]);
|
|
306
|
-
const updateValue = useCallback(newValue => {
|
|
307
|
-
if (newValue === valueRef.current) {
|
|
308
|
-
return;
|
|
309
|
-
}
|
|
310
|
-
valueRef.current = newValue;
|
|
311
|
-
validateValue();
|
|
312
|
-
handleError();
|
|
313
|
-
if (path) {
|
|
314
|
-
dataContextHandlePathChange === null || dataContextHandlePathChange === void 0 ? void 0 : dataContextHandlePathChange(path, newValue);
|
|
315
|
-
}
|
|
316
|
-
forceUpdate();
|
|
317
|
-
}, [dataContextHandlePathChange, handleError, path, validateValue]);
|
|
318
|
-
const handleChange = useCallback(function (argFromInput) {
|
|
319
|
-
let additionalArgs = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;
|
|
320
|
-
const currentValue = valueRef.current;
|
|
321
|
-
let newValue = transformers.current.fromInput(argFromInput);
|
|
322
|
-
if (newValue === currentValue) {
|
|
323
|
-
return;
|
|
324
|
-
}
|
|
325
|
-
newValue = transformers.current.transformValue(newValue, currentValue);
|
|
326
|
-
updateValue(newValue);
|
|
327
|
-
changedRef.current = true;
|
|
328
|
-
const value = transformers.current.toEvent(newValue, 'onChange');
|
|
329
|
-
onChange === null || onChange === void 0 ? void 0 : onChange.apply(_this, typeof additionalArgs !== 'undefined' ? [value, additionalArgs] : [value]);
|
|
330
|
-
if (itemPath) {
|
|
331
|
-
const iterateValuePath = `/${iterateElementIndex}${itemPath && itemPath !== '/' ? itemPath : ''}`;
|
|
332
|
-
handleIterateElementChange === null || handleIterateElementChange === void 0 ? void 0 : handleIterateElementChange(iterateValuePath, newValue);
|
|
333
|
-
}
|
|
334
|
-
}, [updateValue, onChange, itemPath, iterateElementIndex, handleIterateElementChange]);
|
|
335
|
-
const handleFocus = useCallback(() => setHasFocus(true), [setHasFocus]);
|
|
336
|
-
const handleBlur = useCallback(() => setHasFocus(false), [setHasFocus]);
|
|
337
|
-
useMountEffect(() => {
|
|
338
|
-
dataContext === null || dataContext === void 0 ? void 0 : dataContext.handleMountField(identifier);
|
|
339
|
-
validateValue();
|
|
340
|
-
});
|
|
341
|
-
useUnmountEffect(() => {
|
|
342
|
-
dataContext === null || dataContext === void 0 ? void 0 : dataContext.handleUnMountField(identifier);
|
|
343
|
-
});
|
|
344
|
-
useMountEffect(() => {
|
|
345
|
-
if (inFieldBlock) {
|
|
346
|
-
if (errorProp) {
|
|
347
|
-
setFieldBlockState === null || setFieldBlockState === void 0 ? void 0 : setFieldBlockState({
|
|
348
|
-
identifier,
|
|
349
|
-
type: 'error',
|
|
350
|
-
state: errorProp,
|
|
351
|
-
showInitially: true,
|
|
352
|
-
show: true
|
|
353
|
-
});
|
|
354
|
-
}
|
|
355
|
-
if (warning) {
|
|
356
|
-
setFieldBlockState === null || setFieldBlockState === void 0 ? void 0 : setFieldBlockState({
|
|
357
|
-
identifier,
|
|
358
|
-
type: 'warning',
|
|
359
|
-
state: warning,
|
|
360
|
-
showInitially: true,
|
|
361
|
-
show: true
|
|
362
|
-
});
|
|
363
|
-
}
|
|
364
|
-
if (info) {
|
|
365
|
-
setFieldBlockState === null || setFieldBlockState === void 0 ? void 0 : setFieldBlockState({
|
|
366
|
-
identifier,
|
|
367
|
-
type: 'info',
|
|
368
|
-
state: info,
|
|
369
|
-
showInitially: true,
|
|
370
|
-
show: true
|
|
371
|
-
});
|
|
372
|
-
}
|
|
373
|
-
return () => {
|
|
374
|
-
if (fieldBlockContext.mountedFieldsRef) {
|
|
375
|
-
fieldBlockContext.mountedFieldsRef.current[identifier] = true;
|
|
376
|
-
}
|
|
377
|
-
};
|
|
378
|
-
}
|
|
379
|
-
});
|
|
380
|
-
const error = showErrorRef.current ? (_ref3 = errorProp !== null && errorProp !== void 0 ? errorProp : localErrorRef.current) !== null && _ref3 !== void 0 ? _ref3 : contextErrorRef.current : undefined;
|
|
381
|
-
const hasError = Boolean(error) || inFieldBlock && fieldBlockContext.hasErrorProp;
|
|
382
|
-
const ariaAttributes = useMemo(() => {
|
|
383
|
-
return Object.keys(props).reduce((acc, cur) => {
|
|
384
|
-
if (!cur.startsWith('aria-')) {
|
|
385
|
-
return acc;
|
|
386
|
-
}
|
|
387
|
-
acc[cur] = props[cur];
|
|
388
|
-
return acc;
|
|
389
|
-
}, {});
|
|
390
|
-
}, [props]);
|
|
391
|
-
if (error) {
|
|
392
|
-
ariaAttributes['aria-invalid'] = error ? 'true' : 'false';
|
|
393
|
-
}
|
|
394
|
-
if (required) {
|
|
395
|
-
ariaAttributes['aria-required'] = required ? 'true' : 'false';
|
|
396
|
-
}
|
|
397
|
-
if (inFieldBlock) {
|
|
398
|
-
var _fieldBlockContext$fi;
|
|
399
|
-
if (fieldBlockContext.mountedFieldsRef) {
|
|
400
|
-
fieldBlockContext.mountedFieldsRef.current[identifier] = true;
|
|
401
|
-
}
|
|
402
|
-
const stateIds = (_fieldBlockContext$fi = fieldBlockContext.fieldStateIdsRef) === null || _fieldBlockContext$fi === void 0 ? void 0 : _fieldBlockContext$fi.current;
|
|
403
|
-
if (stateIds) {
|
|
404
|
-
ariaAttributes['aria-describedby'] = combineDescribedBy(props, [error && stateIds.error, warning && stateIds.warning, info && stateIds.info].filter(Boolean));
|
|
405
|
-
}
|
|
406
|
-
} else {
|
|
407
|
-
ariaAttributes['aria-describedby'] = combineDescribedBy(props, [(error || errorProp) && `${id}-form-status--error`, warning && `${id}-form-status--warning`, info && `${id}-form-status--info`].filter(Boolean));
|
|
408
|
-
}
|
|
409
|
-
return _objectSpread(_objectSpread({}, props), {}, {
|
|
410
|
-
id,
|
|
411
|
-
name: props.name || ((_props$path = props.path) === null || _props$path === void 0 ? void 0 : _props$path.replace('/', '')) || id,
|
|
412
|
-
value: transformers.current.toInput(valueRef.current),
|
|
413
|
-
info: !inFieldBlock ? info : undefined,
|
|
414
|
-
warning: !inFieldBlock ? warning : undefined,
|
|
415
|
-
error: !inFieldBlock ? error : undefined,
|
|
416
|
-
hasError,
|
|
417
|
-
disabled,
|
|
418
|
-
autoComplete: (_props$autoComplete = props.autoComplete) !== null && _props$autoComplete !== void 0 ? _props$autoComplete : dataContext.autoComplete === true ? 'on' : 'off',
|
|
419
|
-
isChanged: changedRef.current,
|
|
420
|
-
ariaAttributes,
|
|
421
|
-
dataContext,
|
|
422
|
-
setHasFocus,
|
|
423
|
-
handleFocus,
|
|
424
|
-
handleBlur,
|
|
425
|
-
handleChange,
|
|
426
|
-
updateValue,
|
|
427
|
-
forceUpdate
|
|
428
|
-
});
|
|
429
|
-
}
|
|
430
|
-
export function omitDataValueProps(props) {
|
|
431
|
-
const {
|
|
432
|
-
name,
|
|
433
|
-
error,
|
|
434
|
-
warning,
|
|
435
|
-
info,
|
|
436
|
-
hasError,
|
|
437
|
-
isChanged,
|
|
438
|
-
autoComplete,
|
|
439
|
-
ariaAttributes,
|
|
440
|
-
dataContext,
|
|
441
|
-
setHasFocus,
|
|
442
|
-
handleFocus,
|
|
443
|
-
handleBlur,
|
|
444
|
-
handleChange,
|
|
445
|
-
updateValue,
|
|
446
|
-
forceUpdate
|
|
447
|
-
} = props,
|
|
448
|
-
restProps = _objectWithoutProperties(props, _excluded);
|
|
449
|
-
return restProps;
|
|
450
|
-
}
|
|
451
|
-
//# sourceMappingURL=useDataValue.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useDataValue.js","names":["useRef","useEffect","useContext","useCallback","useMemo","useReducer","pointer","errorChanged","ajvErrorsToOneFormError","FormError","Context","DataContext","combineDescribedBy","SharedContext","FieldBlockContext","IterateElementContext","useMountEffect","useUnmountEffect","useUpdateEffect","useProcessManager","useId","useDataValue","props","_props$disabled","_dataContext$ajvInsta","_this","_ref3","_props$path","_props$autoComplete","path","itemPath","emptyValue","required","info","warning","error","errorProp","errorMessages","onFocus","onBlur","onChange","onBlurValidator","validator","schema","validateInitially","validateUnchanged","continuousValidation","toInput","value","fromInput","toEvent","transformValue","fromExternal","validateRequired","_ref","res","undefined","disabled","readOnly","forceUpdate","startProcess","id","dataContext","fieldBlockContext","iterateElementContext","sharedContext","tr","translation","Forms","transformers","handlePathChange","dataContextHandlePathChange","updateDataValue","dataContextUpdateDataValue","validateData","dataContextValidateData","setValueWithError","dataContextSetValueWithError","setProps","dataContextSetProps","errors","dataContextErrors","contextErrorMessages","dataContextError","inFieldBlock","Boolean","setFieldState","setFieldBlockState","showFieldError","showFieldBlockError","inIterate","index","iterateElementIndex","iterateElementValue","handleChange","handleIterateElementChange","substring","Error","identifier","externalValue","current","has","get","data","valueRef","changedRef","hasFocusRef","showErrorInitially","localErrorRef","contextErrorRef","showErrorRef","validatorRef","schemaValidatorRef","ajvInstance","compile","showError","hideError","errorMessagesRef","_objectSpread","fieldErrorRequired","prepareError","_error$messageValues","message","validationRule","_errorMessagesRef$cur","fieldMessage","messageWithValues","Object","entries","messageValues","reduce","_ref2","key","replace","stateId","persistErrorState","errorArg","type","state","showInitially","clearErrorState","validateValue","isProcessActive","requiredError","isChanged","_validatorRef$current","call","_dataContext$ajvInsta2","showAllErrors","hasValue","existingValue","handleError","setHasFocus","hasFocus","valueOverride","Promise","resolve","then","updateValue","newValue","argFromInput","additionalArgs","arguments","length","currentValue","apply","iterateValuePath","handleFocus","handleBlur","handleMountField","handleUnMountField","show","mountedFieldsRef","hasError","hasErrorProp","ariaAttributes","keys","acc","cur","startsWith","_fieldBlockContext$fi","stateIds","fieldStateIdsRef","filter","name","autoComplete","omitDataValueProps","restProps","_objectWithoutProperties","_excluded"],"sources":["../../../../../src/extensions/forms/hooks/useDataValue.ts"],"sourcesContent":["import {\n useRef,\n useEffect,\n useContext,\n useCallback,\n useMemo,\n useReducer,\n AriaAttributes,\n} from 'react'\nimport pointer from 'json-pointer'\nimport { ValidateFunction } from 'ajv/dist/2020'\nimport { errorChanged } from '../utils'\nimport { ajvErrorsToOneFormError } from '../utils/ajv'\nimport { FormError, FieldProps, AdditionalEventArgs } from '../types'\nimport { Context as DataContext, ContextState } from '../DataContext'\nimport { combineDescribedBy } from '../../../shared/component-helper'\nimport SharedContext from '../../../shared/Context'\nimport FieldBlockContext from '../FieldBlock/FieldBlockContext'\nimport IterateElementContext from '../Iterate/IterateElementContext'\nimport useMountEffect from './useMountEffect'\nimport useUnmountEffect from './useUnmountEffect'\nimport useUpdateEffect from './useUpdateEffect'\nimport useProcessManager from './useProcessManager'\nimport useId from './useId'\n\nexport default function useDataValue<\n Value = unknown,\n Props extends FieldProps<Value> = FieldProps<Value>,\n>(props: Props): Props & FieldProps<Value> & ReturnAdditional<Value> {\n const {\n path,\n itemPath,\n emptyValue,\n required,\n info,\n warning,\n error: errorProp,\n errorMessages,\n onFocus,\n onBlur,\n onChange,\n onBlurValidator,\n validator,\n schema,\n validateInitially,\n validateUnchanged,\n continuousValidation,\n toInput = (value: Value) => value,\n fromInput = (value: Value) => value,\n toEvent = (value: Value) => value,\n transformValue = (value: Value) => value,\n fromExternal = (value: Value) => value,\n validateRequired = (value: Value, { emptyValue, required, error }) => {\n const res =\n required &&\n (value === emptyValue ||\n (typeof emptyValue === 'undefined' && value === ''))\n ? error\n : undefined\n return res\n },\n } = props\n\n const disabled = props.disabled ?? props.readOnly\n\n const [, forceUpdate] = useReducer(() => ({}), {})\n const { startProcess } = useProcessManager()\n const id = useId(props.id)\n const dataContext = useContext(DataContext)\n const fieldBlockContext = useContext(FieldBlockContext)\n const iterateElementContext = useContext(IterateElementContext)\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const transformers = useRef({\n toInput,\n fromInput,\n toEvent,\n fromExternal,\n transformValue,\n validateRequired,\n })\n\n const {\n handlePathChange: dataContextHandlePathChange,\n updateDataValue: dataContextUpdateDataValue,\n validateData: dataContextValidateData,\n setValueWithError: dataContextSetValueWithError,\n setProps: dataContextSetProps,\n errors: dataContextErrors,\n contextErrorMessages,\n } = dataContext ?? {}\n\n const dataContextError = path ? dataContextErrors?.[path] : undefined\n const inFieldBlock = Boolean(fieldBlockContext)\n const {\n setFieldState: setFieldBlockState,\n showFieldError: showFieldBlockError,\n } = fieldBlockContext ?? {}\n const inIterate = Boolean(iterateElementContext)\n const {\n index: iterateElementIndex,\n value: iterateElementValue,\n handleChange: handleIterateElementChange,\n } = iterateElementContext ?? {}\n\n if (path && path.substring(0, 1) !== '/') {\n throw new Error(\n 'Invalid path. Data value path JSON Pointers must be from root (starting with a /).'\n )\n }\n if (itemPath && itemPath.substring(0, 1) !== '/') {\n throw new Error(\n 'Invalid itemPath. Item pathJSON Pointers must be from root of iterate element (starting with a /).'\n )\n }\n if (itemPath && !iterateElementContext) {\n throw new Error(\n 'itemPath cannot be used when not inside an iterate element context. Wrap the component in an Iterate.Loop.'\n )\n }\n\n const identifier = useMemo(() => {\n // Identifier is used is registries of multiple fields, like in the DataContext keeping track of errors\n return path ?? id\n }, [path, id])\n\n const externalValue = useMemo(() => {\n if (props.value !== undefined) {\n // Value-prop sent directly to the field has highest priority, overriding any surrounding source\n return transformers.current.fromExternal(props.value)\n }\n\n if (inIterate && itemPath) {\n // This field is inside an iterate, and has a pointer from the base of the element being iterated\n if (itemPath === '/') {\n return iterateElementValue\n }\n\n return pointer.has(iterateElementValue, itemPath)\n ? pointer.get(iterateElementValue, itemPath)\n : undefined\n }\n\n if (dataContext.data && path) {\n // There is a surrounding data context and a path for where in the source to find the data\n if (path === '/') {\n return dataContext.data\n }\n\n return pointer.has(dataContext.data, path)\n ? pointer.get(dataContext.data, path)\n : undefined\n }\n return undefined\n }, [\n props.value,\n inIterate,\n itemPath,\n dataContext.data,\n path,\n iterateElementValue,\n ])\n\n // Many variables are kept in refs to avoid triggering unnecessary update loops because updates using\n // useEffect depend on them (like the external `value`)\n\n // Hold an internal copy of the input value in case the input component is used uncontrolled,\n // and to handle errors in Eufemia on components that does not take updated callback functions into account.\n const valueRef = useRef<Value>(externalValue)\n const changedRef = useRef<boolean>(false)\n const hasFocusRef = useRef<boolean>(false)\n\n // Error handling\n // - Should errors received through validation be shown initially. Assume that providing a direct prop to\n // the component means it is supposed to be shown initially.\n const showErrorInitially = validateInitially || errorProp\n // - Local errors are errors based on validation instructions received by\n const localErrorRef = useRef<Error | FormError | undefined>()\n // - Context errors are from outer contexts, like validation for this field as part of the whole data set\n const contextErrorRef = useRef<Error | FormError | undefined>(\n dataContextError\n )\n\n // Put props into the surrounding data context\n dataContextSetProps?.(identifier, props)\n\n const showErrorRef = useRef<boolean>(Boolean(showErrorInitially))\n const validatorRef = useRef(validator)\n useUpdateEffect(() => {\n validatorRef.current = validator\n }, [validator])\n\n const schemaValidatorRef = useRef<ValidateFunction>(\n schema ? dataContext.ajvInstance?.compile(schema) : undefined\n )\n\n const showError = useCallback(() => {\n showErrorRef.current = true\n showFieldBlockError?.(identifier, true)\n }, [showFieldBlockError, identifier])\n\n const hideError = useCallback(() => {\n showErrorRef.current = false\n showFieldBlockError?.(identifier, false)\n }, [showFieldBlockError, identifier])\n\n const errorMessagesRef = useRef(null)\n errorMessagesRef.current = useMemo(() => {\n return {\n required: tr.fieldErrorRequired,\n ...errorMessages,\n }\n }, [errorMessages, tr.fieldErrorRequired])\n\n /**\n * Prepare error from validation logic with correct error messages based on props\n */\n const prepareError = useCallback(\n (error: Error | FormError | undefined): FormError | undefined => {\n if (error === undefined) {\n return\n }\n\n if (error instanceof FormError) {\n let message = error.message\n\n const { validationRule } = error\n if (typeof validationRule === 'string') {\n const fieldMessage = errorMessagesRef.current?.[validationRule]\n if (fieldMessage) {\n message = fieldMessage\n }\n }\n\n const messageWithValues = Object.entries(\n error.messageValues ?? {}\n ).reduce((message, [key, value]) => {\n return message.replace(`{${key}}`, value)\n }, message)\n\n return new FormError(messageWithValues)\n }\n\n return error\n },\n []\n )\n\n /**\n * Based on validation, update error state, locally and relevant surrounding contexts\n */\n const stateId = useId()\n const persistErrorState = useCallback(\n (errorArg: FormError | undefined) => {\n const error = prepareError(errorArg)\n\n if (!errorChanged(error, localErrorRef.current)) {\n // In case different triggers lead to validation with no changes in the result (like still no error, or the same error),\n // avoid unnecessary re-renders by letting the old error object stay in the state and skip re-rendering.\n return\n }\n\n localErrorRef.current = error\n\n // Tell the data context about the error, so it can stop the user from submitting the form until the error has been fixed\n dataContextSetValueWithError?.(identifier, Boolean(error))\n\n setFieldBlockState?.({\n stateId,\n identifier,\n type: 'error',\n state: error,\n showInitially: Boolean(inFieldBlock && validateInitially),\n })\n\n forceUpdate()\n },\n [\n stateId,\n prepareError,\n dataContextSetValueWithError,\n identifier,\n setFieldBlockState,\n inFieldBlock,\n validateInitially,\n ]\n )\n\n const clearErrorState = useCallback(\n () => persistErrorState(undefined),\n [persistErrorState]\n )\n\n /**\n * Validate the current state value by provided validator instructions\n */\n const validateValue = useCallback(async () => {\n const isProcessActive = startProcess()\n\n if (disabled) {\n if (isProcessActive()) {\n clearErrorState()\n }\n hideError()\n return\n }\n\n try {\n // Validate required\n const requiredError = transformers.current.validateRequired(\n valueRef.current,\n {\n emptyValue,\n required,\n isChanged: changedRef.current,\n error: new FormError('The value is required', {\n validationRule: 'required',\n }),\n }\n )\n if (requiredError instanceof Error) {\n throw requiredError\n }\n\n // Validate by provided JSON Schema for this value\n if (\n schemaValidatorRef.current &&\n valueRef.current !== undefined &&\n !schemaValidatorRef.current(valueRef.current)\n ) {\n const error = ajvErrorsToOneFormError(\n schemaValidatorRef.current.errors\n )\n throw error\n }\n\n // Validate by provided derivative validator\n if (validatorRef.current) {\n const res = await validatorRef.current?.(valueRef.current, {\n ...contextErrorMessages,\n ...errorMessagesRef.current,\n })\n if (res instanceof Error) {\n throw res\n }\n }\n\n if (isProcessActive()) {\n clearErrorState()\n }\n } catch (error: unknown) {\n if (isProcessActive()) {\n persistErrorState(error as Error)\n }\n }\n }, [\n startProcess,\n disabled,\n hideError,\n clearErrorState,\n emptyValue,\n required,\n contextErrorMessages,\n persistErrorState,\n ])\n\n useUpdateEffect(() => {\n schemaValidatorRef.current = schema\n ? dataContext.ajvInstance?.compile(schema)\n : undefined\n validateValue()\n }, [schema, validateValue])\n\n useUpdateEffect(() => {\n // Error or removed error for this field from the surrounding data context (by path)\n valueRef.current = externalValue\n validateValue()\n forceUpdate()\n }, [externalValue, validateValue])\n\n useEffect(() => {\n const error = prepareError(dataContextError)\n if (errorChanged(error, contextErrorRef.current)) {\n contextErrorRef.current = error\n forceUpdate()\n }\n }, [dataContextError, prepareError])\n\n useEffect(() => {\n if (dataContext.showAllErrors) {\n // If showError on a surrounding data context was changed and set to true, it is because the user clicked next, submit or\n // something else that should lead to showing the user all errors.\n showError()\n forceUpdate()\n }\n }, [dataContext.showAllErrors, showError])\n\n useEffect(() => {\n if (path) {\n const hasValue = pointer.has(dataContext.data, path)\n const existingValue = hasValue\n ? pointer.get(dataContext.data, path)\n : undefined\n\n if (\n !hasValue ||\n (props.value !== existingValue &&\n // Prevents an infinite loop by skipping the update if the value hasn't changed\n valueRef.current !== existingValue)\n ) {\n // Update the data context when a pointer not exists,\n // but was given initially.\n dataContextUpdateDataValue?.(path, props.value, { disabled })\n dataContextValidateData?.()\n }\n }\n }, [\n dataContext.data,\n dataContextUpdateDataValue,\n dataContextValidateData,\n disabled,\n path,\n props.value,\n ])\n\n const handleError = useCallback(() => {\n if (\n continuousValidation ||\n (continuousValidation !== false && !hasFocusRef.current)\n ) {\n // When there is a change to the value without there having been any focus callback beforehand, it is likely\n // to believe that the blur callback will not be called either, which would trigger the display of the error.\n // The error is therefore displayed immediately (unless instructed not to with continuousValidation set to false).\n showError()\n } else {\n // When changing the value, hide errors to avoid annoying the user before they are finished filling in that value\n hideError()\n }\n }, [continuousValidation, hideError, showError])\n\n const setHasFocus = useCallback(\n (hasFocus: boolean, valueOverride?: Value) => {\n if (hasFocus) {\n // Field was put in focus (like when clicking in a text field or opening a dropdown menu)\n hasFocusRef.current = true\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onFocus'\n )\n onFocus?.(value)\n } else {\n // Field was removed from focus (like when tabbing out of a text field or closing a dropdown menu)\n hasFocusRef.current = false\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onBlur'\n )\n onBlur?.(value)\n\n if (!changedRef.current && !validateUnchanged) {\n // Avoid showing errors when blurring without having changed the value, so tabbing through several\n // fields does not make errors pop up all over the place\n return\n }\n\n // External blur validators makes it possible to validate values but not on every character change in case of\n // expensive validation calling external services etc.\n if (typeof onBlurValidator === 'function') {\n // Since the validator can return either a synchronous result or an asynchronous\n const value = transformers.current.toEvent(\n valueOverride ?? valueRef.current,\n 'onBlurValidator'\n )\n Promise.resolve(onBlurValidator(value)).then(persistErrorState)\n }\n\n // Since the user left the field, show error (if any)\n showError()\n forceUpdate()\n }\n },\n [\n onBlur,\n onBlurValidator,\n onFocus,\n persistErrorState,\n showError,\n validateUnchanged,\n ]\n )\n\n const updateValue = useCallback(\n (newValue: Value) => {\n if (newValue === valueRef.current) {\n // Avoid triggering a change if the value was not actually changed. This may be caused by rendering components\n // calling onChange even if the actual value did not change.\n return\n }\n\n valueRef.current = newValue\n\n // Always validate the value immediately when it is changed\n validateValue()\n\n handleError()\n\n if (path) {\n dataContextHandlePathChange?.(path, newValue)\n }\n\n forceUpdate()\n },\n [dataContextHandlePathChange, handleError, path, validateValue]\n )\n\n const handleChange = useCallback(\n (\n argFromInput: Value,\n additionalArgs: AdditionalEventArgs = undefined\n ) => {\n const currentValue = valueRef.current\n let newValue = transformers.current.fromInput(argFromInput)\n\n if (newValue === currentValue) {\n // Avoid triggering a change if the value was not actually changed. This may be caused by rendering components\n // calling onChange even if the actual value did not change.\n return\n }\n\n newValue = transformers.current.transformValue(\n newValue,\n currentValue\n )\n\n updateValue(newValue)\n\n changedRef.current = true\n\n const value = transformers.current.toEvent(newValue, 'onChange')\n onChange?.apply(\n this,\n typeof additionalArgs !== 'undefined'\n ? [value, additionalArgs]\n : [value]\n )\n\n if (itemPath) {\n const iterateValuePath = `/${iterateElementIndex}${\n itemPath && itemPath !== '/' ? itemPath : ''\n }`\n handleIterateElementChange?.(iterateValuePath, newValue)\n }\n },\n [\n updateValue,\n onChange,\n itemPath,\n iterateElementIndex,\n handleIterateElementChange,\n ]\n )\n\n const handleFocus = useCallback(() => setHasFocus(true), [setHasFocus])\n const handleBlur = useCallback(() => setHasFocus(false), [setHasFocus])\n\n useMountEffect(() => {\n dataContext?.handleMountField(identifier)\n\n validateValue()\n })\n useUnmountEffect(() => {\n dataContext?.handleUnMountField(identifier)\n })\n\n // Set the error in the field block context if this field is inside a field block\n useMountEffect(() => {\n if (inFieldBlock) {\n if (errorProp) {\n setFieldBlockState?.({\n identifier,\n type: 'error',\n state: errorProp,\n showInitially: true,\n show: true,\n })\n }\n if (warning) {\n setFieldBlockState?.({\n identifier,\n type: 'warning',\n state: warning,\n showInitially: true,\n show: true,\n })\n }\n if (info) {\n setFieldBlockState?.({\n identifier,\n type: 'info',\n state: info,\n showInitially: true,\n show: true,\n })\n }\n\n return () => {\n // Unmount procedure\n if (fieldBlockContext.mountedFieldsRef) {\n fieldBlockContext.mountedFieldsRef.current[identifier] = true\n }\n }\n }\n })\n\n const error = showErrorRef.current\n ? errorProp ?? localErrorRef.current ?? contextErrorRef.current\n : undefined\n\n const hasError =\n Boolean(error) || (inFieldBlock && fieldBlockContext.hasErrorProp)\n\n // - Handle ariaAttributes\n const ariaAttributes = useMemo(() => {\n return Object.keys(props).reduce<AriaAttributes>((acc, cur) => {\n if (!cur.startsWith('aria-')) {\n return acc\n }\n acc[cur] = props[cur]\n return acc\n }, {})\n }, [props])\n if (error) {\n ariaAttributes['aria-invalid'] = error ? 'true' : 'false'\n }\n if (required) {\n ariaAttributes['aria-required'] = required ? 'true' : 'false'\n }\n if (inFieldBlock) {\n // Mount the field in the field block context\n if (fieldBlockContext.mountedFieldsRef) {\n fieldBlockContext.mountedFieldsRef.current[identifier] = true\n }\n\n // Check if there are any state IDs to be added to the aria-describedby attribute\n const stateIds = fieldBlockContext.fieldStateIdsRef?.current\n\n if (stateIds) {\n ariaAttributes['aria-describedby'] = combineDescribedBy(\n props,\n [\n error && stateIds.error,\n warning && stateIds.warning,\n info && stateIds.info,\n ].filter(Boolean)\n )\n }\n } else {\n ariaAttributes['aria-describedby'] = combineDescribedBy(\n props,\n [\n (error || errorProp) && `${id}-form-status--error`,\n warning && `${id}-form-status--warning`,\n info && `${id}-form-status--info`,\n ].filter(Boolean)\n )\n }\n\n return {\n ...props,\n id,\n name: props.name || props.path?.replace('/', '') || id,\n value: transformers.current.toInput(valueRef.current),\n info: !inFieldBlock ? info : undefined,\n warning: !inFieldBlock ? warning : undefined,\n error: !inFieldBlock ? error : undefined,\n hasError,\n disabled,\n autoComplete:\n props.autoComplete ??\n (dataContext.autoComplete === true ? 'on' : 'off'),\n\n // Return additional hook related props (ReturnAdditional)\n isChanged: changedRef.current,\n ariaAttributes,\n dataContext,\n setHasFocus,\n handleFocus,\n handleBlur,\n handleChange,\n updateValue,\n forceUpdate,\n }\n}\n\ninterface ReturnAdditional<Value> {\n value: Value\n isChanged: boolean\n ariaAttributes: AriaAttributes\n dataContext: ContextState\n setHasFocus: (hasFocus: boolean, valueOverride?: unknown) => void\n handleFocus: () => void\n handleBlur: () => void\n handleChange: FieldProps<Value>['onChange']\n updateValue: (value: Value) => void\n forceUpdate: () => void\n}\n\nexport function omitDataValueProps<\n Props extends FieldProps<unknown> & ReturnAdditional<unknown>,\n>(props: Props) {\n // Do not include typical HTML attributes\n const {\n name, // eslint-disable-line\n error, // eslint-disable-line\n warning, // eslint-disable-line\n info, // eslint-disable-line\n hasError, // eslint-disable-line\n isChanged, // eslint-disable-line\n autoComplete, // eslint-disable-line\n ariaAttributes, // eslint-disable-line\n dataContext, // eslint-disable-line\n setHasFocus, // eslint-disable-line\n handleFocus, // eslint-disable-line\n handleBlur, // eslint-disable-line\n handleChange, // eslint-disable-line\n updateValue, // eslint-disable-line\n forceUpdate, // eslint-disable-line\n ...restProps\n } = props\n\n return restProps\n}\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useId.js","names":["React","makeUniqueId","useId","customId","_React$useId","id","call","useMemo","_ref","replace"],"sources":["../../../../../src/extensions/forms/hooks/useId.ts"],"sourcesContent":["import React from 'react'\nimport { makeUniqueId } from '../../../shared/component-helper'\n\nexport default function useId(customId?: string) {\n const id = React?.useId?.()\n return React.useMemo(\n () =>\n customId ??\n id?.replace(/:/, 'id-').replace(/:/, '') ??\n makeUniqueId(),\n [customId, id]\n )\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,YAAY,QAAQ,kCAAkC;AAE/D,eAAe,SAASC,KAAKA,CAACC,QAAiB,EAAE;EAAA,IAAAC,YAAA;EAC/C,MAAMC,EAAE,GAAGL,KAAK,aAALA,KAAK,wBAAAI,YAAA,GAALJ,KAAK,CAAEE,KAAK,cAAAE,YAAA,uBAAZA,YAAA,CAAAE,IAAA,CAAAN,KAAe,CAAC;EAC3B,OAAOA,KAAK,CAACO,OAAO,CAClB;IAAA,IAAAC,IAAA;IAAA,QAAAA,IAAA,GACEL,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GACRE,EAAE,aAAFA,EAAE,uBAAFA,EAAE,CAAEI,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAACA,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,cAAAD,IAAA,cAAAA,IAAA,GACxCP,YAAY,CAAC,CAAC;EAAA,GAChB,CAACE,QAAQ,EAAEE,EAAE,CACf,CAAC;AACH"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useMountEffect.js","names":["useEffect","useMountEffect","callback","arguments"],"sources":["../../../../../src/extensions/forms/hooks/useMountEffect.ts"],"sourcesContent":["import { useEffect, EffectCallback } from 'react'\n\n/**\n * UseEffect that only run on the initial mount\n */\nexport default function useMountEffect(callback: EffectCallback) {\n useEffect((...args) => {\n return callback(...args)\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n}\n"],"mappings":";;AAAA,SAASA,SAAS,QAAwB,OAAO;AAKjD,eAAe,SAASC,cAAcA,CAACC,QAAwB,EAAE;EAC/DF,SAAS,CAAC,YAAa;IACrB,OAAOE,QAAQ,CAAC,GAAAC,SAAO,CAAC;EAE1B,CAAC,EAAE,EAAE,CAAC;AACR"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useMounted.js","names":["useEffect","useRef","useMounted","mounted","current"],"sources":["../../../../../src/extensions/forms/hooks/useMounted.ts"],"sourcesContent":["import { useEffect, useRef } from 'react'\n\nexport default function useMounted() {\n const mounted = useRef(false)\n\n useEffect(() => {\n mounted.current = true\n return () => {\n mounted.current = false\n }\n }, [])\n\n return mounted\n}\n"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;AAEzC,eAAe,SAASC,UAAUA,CAAA,EAAG;EACnC,MAAMC,OAAO,GAAGF,MAAM,CAAC,KAAK,CAAC;EAE7BD,SAAS,CAAC,MAAM;IACdG,OAAO,CAACC,OAAO,GAAG,IAAI;IACtB,OAAO,MAAM;MACXD,OAAO,CAACC,OAAO,GAAG,KAAK;IACzB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,OAAOD,OAAO;AAChB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useUnmountEffect.js","names":["useEffect","useUnmountEffect","callback"],"sources":["../../../../../src/extensions/forms/hooks/useUnmountEffect.ts"],"sourcesContent":["import { useEffect } from 'react'\n\n/**\n * UseEffect that only run on the initial mount\n */\nexport default function useUnmountEffect(callback: () => void) {\n useEffect(() => {\n return callback\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n}\n"],"mappings":";;AAAA,SAASA,SAAS,QAAQ,OAAO;AAKjC,eAAe,SAASC,gBAAgBA,CAACC,QAAoB,EAAE;EAC7DF,SAAS,CAAC,MAAM;IACd,OAAOE,QAAQ;EAEjB,CAAC,EAAE,EAAE,CAAC;AACR"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useUpdateEffect.js","names":["useEffect","useRef","useUpdateEffect","callback","deps","wasMounted","current","arguments"],"sources":["../../../../../src/extensions/forms/hooks/useUpdateEffect.ts"],"sourcesContent":["import { useEffect, useRef, EffectCallback, DependencyList } from 'react'\n\n/**\n * UseEffect that does not run on the initial mount\n */\nexport default function useUpdateEffect(\n callback: EffectCallback,\n deps?: DependencyList\n) {\n const wasMounted = useRef(false)\n\n useEffect((...args) => {\n if (!wasMounted.current) {\n wasMounted.current = true\n return\n }\n callback(...args)\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, deps)\n}\n"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,MAAM,QAAwC,OAAO;AAKzE,eAAe,SAASC,eAAeA,CACrCC,QAAwB,EACxBC,IAAqB,EACrB;EACA,MAAMC,UAAU,GAAGJ,MAAM,CAAC,KAAK,CAAC;EAEhCD,SAAS,CAAC,YAAa;IACrB,IAAI,CAACK,UAAU,CAACC,OAAO,EAAE;MACvBD,UAAU,CAACC,OAAO,GAAG,IAAI;MACzB;IACF;IACAH,QAAQ,CAAC,GAAAI,SAAO,CAAC;EAEnB,CAAC,EAAEH,IAAI,CAAC;AACV"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|