@dnb/eufemia 10.28.0 → 10.30.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 +45 -0
- package/cjs/components/aria-live/useAriaLive.d.ts +1 -1
- package/cjs/components/autocomplete/Autocomplete.d.ts +19 -5
- package/cjs/components/dropdown/Dropdown.d.ts +22 -5
- package/cjs/components/height-animation/HeightAnimationInstance.js +5 -0
- package/cjs/components/height-animation/HeightAnimationInstance.js.map +1 -1
- package/cjs/components/icon/style/dnb-icon.css +1 -0
- package/cjs/components/icon/style/dnb-icon.min.css +1 -1
- package/cjs/components/icon/style/dnb-icon.scss +1 -0
- package/cjs/components/progress-indicator/ProgressIndicator.d.ts +2 -52
- package/cjs/components/progress-indicator/ProgressIndicator.js +27 -14
- package/cjs/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/cjs/components/progress-indicator/ProgressIndicatorCircular.d.ts +2 -23
- package/cjs/components/progress-indicator/ProgressIndicatorCircular.js +63 -27
- package/cjs/components/progress-indicator/ProgressIndicatorCircular.js.map +1 -1
- package/cjs/components/progress-indicator/ProgressIndicatorDocs.d.ts +1 -0
- package/cjs/components/progress-indicator/ProgressIndicatorDocs.js +45 -11
- package/cjs/components/progress-indicator/ProgressIndicatorDocs.js.map +1 -1
- package/cjs/components/progress-indicator/ProgressIndicatorLinear.d.ts +2 -22
- package/cjs/components/progress-indicator/ProgressIndicatorLinear.js +18 -10
- package/cjs/components/progress-indicator/ProgressIndicatorLinear.js.map +1 -1
- package/cjs/components/progress-indicator/style/dnb-progress-indicator.css +52 -55
- package/cjs/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
- package/cjs/components/progress-indicator/style/dnb-progress-indicator.scss +65 -69
- package/cjs/components/progress-indicator/types.d.ts +95 -0
- package/cjs/components/progress-indicator/types.js +11 -0
- package/cjs/components/progress-indicator/types.js.map +1 -0
- package/cjs/extensions/forms/DataContext/Context.d.ts +7 -2
- package/cjs/extensions/forms/DataContext/Context.js +0 -2
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +30 -5
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +69 -35
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js +27 -2
- package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
- 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/ArraySelection/style/dnb-array-selection.css +5 -2
- package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +5 -2
- package/cjs/extensions/forms/Field/Name/Name.d.ts +10 -0
- package/cjs/extensions/forms/Field/Name/Name.js +73 -0
- package/cjs/extensions/forms/Field/Name/Name.js.map +1 -0
- package/cjs/extensions/forms/Field/Name/NameDocs.d.ts +2 -0
- package/cjs/extensions/forms/Field/Name/NameDocs.js +15 -0
- package/cjs/extensions/forms/Field/Name/NameDocs.js.map +1 -0
- package/cjs/extensions/forms/Field/Name/index.d.ts +2 -0
- package/cjs/extensions/forms/Field/Name/index.js +27 -0
- package/cjs/extensions/forms/Field/Name/index.js.map +1 -0
- package/cjs/extensions/forms/Field/Number/Number.d.ts +2 -2
- package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
- package/cjs/extensions/forms/Field/Option/Option.d.ts +2 -0
- package/cjs/extensions/forms/Field/Option/Option.js +21 -0
- package/cjs/extensions/forms/Field/Option/Option.js.map +1 -1
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +25 -0
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -2
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/Selection.d.ts +11 -4
- package/cjs/extensions/forms/Field/Selection/Selection.js +20 -32
- package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/SelectionDocs.d.ts +2 -0
- package/cjs/extensions/forms/Field/Selection/SelectionDocs.js +45 -0
- package/cjs/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -0
- package/cjs/extensions/forms/Field/String/String.d.ts +2 -2
- package/cjs/extensions/forms/Field/String/String.js.map +1 -1
- package/cjs/extensions/forms/Field/index.d.ts +1 -0
- package/cjs/extensions/forms/Field/index.js +7 -0
- package/cjs/extensions/forms/Field/index.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -3
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/Form/FieldProps/FieldProps.d.ts +13 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldProps.js +80 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +8 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.js +15 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts +2 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsDocs.js +18 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +1 -0
- package/cjs/extensions/forms/Form/FieldProps/index.d.ts +2 -0
- package/cjs/extensions/forms/Form/FieldProps/index.js +27 -0
- package/cjs/extensions/forms/Form/FieldProps/index.js.map +1 -0
- package/cjs/extensions/forms/Form/Handler/Handler.d.ts +1 -1
- package/cjs/extensions/forms/Form/Handler/Handler.js +18 -4
- package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/cjs/extensions/forms/Form/MainHeading/MainHeading.js +1 -1
- package/cjs/extensions/forms/Form/MainHeading/MainHeading.js.map +1 -1
- package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +3 -3
- package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
- package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.scss +1 -1
- package/cjs/extensions/forms/Form/SubHeading/SubHeading.js +1 -1
- package/cjs/extensions/forms/Form/SubHeading/SubHeading.js.map +1 -1
- package/cjs/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.css +2 -2
- package/cjs/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.min.css +1 -1
- package/cjs/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.scss +1 -1
- package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +2 -2
- package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -1
- package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +13 -13
- package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -1
- package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +1 -1
- package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +4 -1
- package/cjs/extensions/forms/Form/Visibility/Visibility.js +7 -4
- package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js +5 -0
- package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.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/AnimatedContainer/ElementBlock.js +4 -4
- package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Array/Array.js +2 -2
- package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
- package/cjs/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
- package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
- package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.css +14 -14
- package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
- package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.scss +1 -1
- package/cjs/extensions/forms/Value/Boolean/Boolean.js +8 -3
- package/cjs/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
- package/cjs/extensions/forms/Value/Name/Name.d.ts +10 -0
- package/cjs/extensions/forms/Value/Name/Name.js +50 -0
- package/cjs/extensions/forms/Value/Name/Name.js.map +1 -0
- package/cjs/extensions/forms/Value/Name/index.d.ts +2 -0
- package/cjs/extensions/forms/Value/Name/index.js +27 -0
- package/cjs/extensions/forms/Value/Name/index.js.map +1 -0
- package/cjs/extensions/forms/Value/OrganizationNumber/OrganizationNumber.d.ts +7 -0
- package/cjs/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js +36 -0
- package/cjs/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js.map +1 -0
- package/cjs/extensions/forms/Value/OrganizationNumber/index.d.ts +2 -0
- package/cjs/extensions/forms/Value/OrganizationNumber/index.js +27 -0
- package/cjs/extensions/forms/Value/OrganizationNumber/index.js.map +1 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.d.ts +7 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +41 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js +20 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/index.d.ts +2 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/index.js +27 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/index.js.map +1 -0
- package/cjs/extensions/forms/Value/String/String.js +8 -3
- package/cjs/extensions/forms/Value/String/String.js.map +1 -1
- package/cjs/extensions/forms/Value/SummaryList/SummaryList.js +1 -1
- package/cjs/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
- package/cjs/extensions/forms/Value/ValueDocs.js +6 -1
- package/cjs/extensions/forms/Value/ValueDocs.js.map +1 -1
- package/cjs/extensions/forms/Value/index.d.ts +3 -0
- package/cjs/extensions/forms/Value/index.js +21 -0
- package/cjs/extensions/forms/Value/index.js.map +1 -1
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js +2 -1
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +11 -6
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.scss +11 -3
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +17 -52
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +9 -0
- package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +53 -0
- package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -0
- package/cjs/extensions/forms/Wizard/Container/useStepAnimation.d.ts +4 -0
- package/cjs/extensions/forms/Wizard/Container/useStepAnimation.js +37 -0
- package/cjs/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -0
- package/cjs/extensions/forms/Wizard/Step/Step.js +13 -1
- package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/cjs/extensions/forms/Wizard/hooks/useStep.js +5 -2
- package/cjs/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.css +29 -2
- package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
- package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.scss +35 -2
- package/cjs/extensions/forms/constants/locales/en-GB.d.ts +9 -0
- package/cjs/extensions/forms/constants/locales/en-GB.js +12 -3
- package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/en-US.d.ts +9 -0
- package/cjs/extensions/forms/constants/locales/index.d.ts +18 -0
- package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +9 -0
- package/cjs/extensions/forms/constants/locales/nb-NO.js +11 -2
- package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/cjs/extensions/forms/hooks/useFieldProps.js +8 -4
- package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/cjs/extensions/forms/hooks/useTranslation.js +3 -1
- package/cjs/extensions/forms/hooks/useTranslation.js.map +1 -1
- package/cjs/extensions/forms/style/dnb-forms.css +77 -43
- package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
- package/cjs/extensions/forms/types.d.ts +3 -2
- package/cjs/extensions/forms/types.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerList.d.ts +8 -4
- package/cjs/shared/Context.d.ts +4 -4
- package/cjs/shared/Context.js.map +1 -1
- package/cjs/shared/Eufemia.d.ts +1 -1
- package/cjs/shared/Eufemia.js +2 -2
- package/cjs/shared/Eufemia.js.map +1 -1
- package/cjs/shared/component-helper.d.ts +1 -0
- package/cjs/shared/component-helper.js +8 -1
- package/cjs/shared/component-helper.js.map +1 -1
- package/cjs/shared/helpers/assignPropsWithContext.d.ts +1 -0
- package/cjs/shared/helpers/assignPropsWithContext.js +22 -0
- package/cjs/shared/helpers/assignPropsWithContext.js.map +1 -0
- package/cjs/shared/helpers/extendPropsWithContext.d.ts +1 -0
- package/cjs/shared/helpers/extendPropsWithContext.js +1 -0
- package/cjs/shared/helpers/extendPropsWithContext.js.map +1 -1
- package/cjs/shared/helpers/filterValidProps.d.ts +1 -0
- package/cjs/shared/helpers/filterValidProps.js.map +1 -1
- package/cjs/shared/helpers/runCssVersionMismatchWarning.js +14 -3
- package/cjs/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
- package/cjs/style/core/scopes.scss +1 -1
- package/cjs/style/dnb-ui-basis.css +1 -1
- package/cjs/style/dnb-ui-basis.min.css +1 -1
- package/cjs/style/dnb-ui-body.css +1 -1
- package/cjs/style/dnb-ui-body.min.css +1 -1
- package/cjs/style/dnb-ui-components.css +129 -98
- package/cjs/style/dnb-ui-components.min.css +2 -2
- package/cjs/style/dnb-ui-core.css +1 -1
- package/cjs/style/dnb-ui-core.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.css +77 -43
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/dnb-ui-forms.css +77 -43
- package/cjs/style/dnb-ui-forms.min.css +1 -1
- package/cjs/style/dnb-ui-forms.scss +1 -1
- package/cjs/style/themes/eiendom/basis.js +4 -0
- package/cjs/style/themes/eiendom/basis.js.map +1 -0
- package/cjs/style/themes/eiendom/index.js +5 -0
- package/cjs/style/themes/eiendom/index.js.map +1 -0
- package/cjs/style/themes/sbanken/basis.js +4 -0
- package/cjs/style/themes/sbanken/basis.js.map +1 -0
- package/cjs/style/themes/sbanken/index.js +5 -0
- package/cjs/style/themes/sbanken/index.js.map +1 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +205 -141
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +77 -43
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +77 -43
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +205 -141
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +77 -43
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +77 -43
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +205 -141
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +77 -43
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-forms.css +77 -43
- package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/cjs/style/themes/ui/basis.js +4 -0
- package/cjs/style/themes/ui/basis.js.map +1 -0
- package/cjs/style/themes/ui/index.js +5 -0
- package/cjs/style/themes/ui/index.js.map +1 -0
- package/components/aria-live/useAriaLive.d.ts +1 -1
- package/components/autocomplete/Autocomplete.d.ts +19 -5
- package/components/dropdown/Dropdown.d.ts +22 -5
- package/components/height-animation/HeightAnimationInstance.js +5 -0
- package/components/height-animation/HeightAnimationInstance.js.map +1 -1
- package/components/icon/style/dnb-icon.css +1 -0
- package/components/icon/style/dnb-icon.min.css +1 -1
- package/components/icon/style/dnb-icon.scss +1 -0
- package/components/progress-indicator/ProgressIndicator.d.ts +2 -52
- package/components/progress-indicator/ProgressIndicator.js +27 -14
- package/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/components/progress-indicator/ProgressIndicatorCircular.d.ts +2 -23
- package/components/progress-indicator/ProgressIndicatorCircular.js +63 -27
- package/components/progress-indicator/ProgressIndicatorCircular.js.map +1 -1
- package/components/progress-indicator/ProgressIndicatorDocs.d.ts +1 -0
- package/components/progress-indicator/ProgressIndicatorDocs.js +43 -10
- package/components/progress-indicator/ProgressIndicatorDocs.js.map +1 -1
- package/components/progress-indicator/ProgressIndicatorLinear.d.ts +2 -22
- package/components/progress-indicator/ProgressIndicatorLinear.js +18 -10
- package/components/progress-indicator/ProgressIndicatorLinear.js.map +1 -1
- package/components/progress-indicator/style/dnb-progress-indicator.css +52 -55
- package/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
- package/components/progress-indicator/style/dnb-progress-indicator.scss +65 -69
- package/components/progress-indicator/types.d.ts +95 -0
- package/components/progress-indicator/types.js +5 -0
- package/components/progress-indicator/types.js.map +1 -0
- package/es/components/aria-live/useAriaLive.d.ts +1 -1
- package/es/components/autocomplete/Autocomplete.d.ts +19 -5
- package/es/components/dropdown/Dropdown.d.ts +22 -5
- package/es/components/height-animation/HeightAnimationInstance.js +5 -0
- package/es/components/height-animation/HeightAnimationInstance.js.map +1 -1
- package/es/components/icon/style/dnb-icon.css +1 -0
- package/es/components/icon/style/dnb-icon.min.css +1 -1
- package/es/components/icon/style/dnb-icon.scss +1 -0
- package/es/components/progress-indicator/ProgressIndicator.d.ts +2 -52
- package/es/components/progress-indicator/ProgressIndicator.js +27 -14
- package/es/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/es/components/progress-indicator/ProgressIndicatorCircular.d.ts +2 -23
- package/es/components/progress-indicator/ProgressIndicatorCircular.js +62 -27
- package/es/components/progress-indicator/ProgressIndicatorCircular.js.map +1 -1
- package/es/components/progress-indicator/ProgressIndicatorDocs.d.ts +1 -0
- package/es/components/progress-indicator/ProgressIndicatorDocs.js +43 -10
- package/es/components/progress-indicator/ProgressIndicatorDocs.js.map +1 -1
- package/es/components/progress-indicator/ProgressIndicatorLinear.d.ts +2 -22
- package/es/components/progress-indicator/ProgressIndicatorLinear.js +18 -10
- package/es/components/progress-indicator/ProgressIndicatorLinear.js.map +1 -1
- package/es/components/progress-indicator/style/dnb-progress-indicator.css +52 -55
- package/es/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
- package/es/components/progress-indicator/style/dnb-progress-indicator.scss +65 -69
- package/es/components/progress-indicator/types.d.ts +95 -0
- package/es/components/progress-indicator/types.js +5 -0
- package/es/components/progress-indicator/types.js.map +1 -0
- package/es/extensions/forms/DataContext/Context.d.ts +7 -2
- package/es/extensions/forms/DataContext/Context.js +0 -2
- package/es/extensions/forms/DataContext/Context.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.d.ts +30 -5
- package/es/extensions/forms/DataContext/Provider/Provider.js +67 -34
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/ProviderDocs.js +27 -2
- package/es/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -1
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +5 -2
- package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
- package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +5 -2
- package/es/extensions/forms/Field/Name/Name.d.ts +10 -0
- package/es/extensions/forms/Field/Name/Name.js +63 -0
- package/es/extensions/forms/Field/Name/Name.js.map +1 -0
- package/es/extensions/forms/Field/Name/NameDocs.d.ts +2 -0
- package/es/extensions/forms/Field/Name/NameDocs.js +8 -0
- package/es/extensions/forms/Field/Name/NameDocs.js.map +1 -0
- package/es/extensions/forms/Field/Name/index.d.ts +2 -0
- package/es/extensions/forms/Field/Name/index.js +3 -0
- package/es/extensions/forms/Field/Name/index.js.map +1 -0
- package/es/extensions/forms/Field/Number/Number.d.ts +2 -2
- package/es/extensions/forms/Field/Number/Number.js.map +1 -1
- package/es/extensions/forms/Field/Option/Option.d.ts +2 -0
- package/es/extensions/forms/Field/Option/Option.js +20 -0
- package/es/extensions/forms/Field/Option/Option.js.map +1 -1
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +18 -0
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -2
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/es/extensions/forms/Field/Selection/Selection.d.ts +11 -4
- package/es/extensions/forms/Field/Selection/Selection.js +20 -32
- package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/es/extensions/forms/Field/Selection/SelectionDocs.d.ts +2 -0
- package/es/extensions/forms/Field/Selection/SelectionDocs.js +38 -0
- package/es/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -0
- package/es/extensions/forms/Field/String/String.d.ts +2 -2
- package/es/extensions/forms/Field/String/String.js.map +1 -1
- package/es/extensions/forms/Field/index.d.ts +1 -0
- package/es/extensions/forms/Field/index.js +1 -0
- package/es/extensions/forms/Field/index.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -3
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/Form/FieldProps/FieldProps.d.ts +13 -0
- package/es/extensions/forms/Form/FieldProps/FieldProps.js +71 -0
- package/es/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -0
- package/es/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +8 -0
- package/es/extensions/forms/Form/FieldProps/FieldPropsContext.js +7 -0
- package/es/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -0
- package/es/extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts +2 -0
- package/es/extensions/forms/Form/FieldProps/FieldPropsDocs.js +11 -0
- package/es/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +1 -0
- package/es/extensions/forms/Form/FieldProps/index.d.ts +2 -0
- package/es/extensions/forms/Form/FieldProps/index.js +3 -0
- package/es/extensions/forms/Form/FieldProps/index.js.map +1 -0
- package/es/extensions/forms/Form/Handler/Handler.d.ts +1 -1
- package/es/extensions/forms/Form/Handler/Handler.js +18 -4
- package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/es/extensions/forms/Form/MainHeading/MainHeading.js +1 -1
- package/es/extensions/forms/Form/MainHeading/MainHeading.js.map +1 -1
- package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +3 -3
- package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
- package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.scss +1 -1
- package/es/extensions/forms/Form/SubHeading/SubHeading.js +1 -1
- package/es/extensions/forms/Form/SubHeading/SubHeading.js.map +1 -1
- package/es/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.css +2 -2
- package/es/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.min.css +1 -1
- package/es/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.scss +1 -1
- package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +2 -2
- package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -1
- package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +13 -13
- package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -1
- package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +1 -1
- package/es/extensions/forms/Form/Visibility/Visibility.d.ts +4 -1
- package/es/extensions/forms/Form/Visibility/Visibility.js +7 -4
- package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/es/extensions/forms/Form/Visibility/VisibilityDocs.js +5 -0
- package/es/extensions/forms/Form/Visibility/VisibilityDocs.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/AnimatedContainer/ElementBlock.js +4 -4
- package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.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/EditContainer/EditContainer.js +1 -1
- package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
- package/es/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
- package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
- package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
- package/es/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
- package/es/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/style/dnb-form-iterate.css +14 -14
- package/es/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
- package/es/extensions/forms/Iterate/style/dnb-form-iterate.scss +1 -1
- package/es/extensions/forms/Value/Boolean/Boolean.js +8 -3
- package/es/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
- package/es/extensions/forms/Value/Name/Name.d.ts +10 -0
- package/es/extensions/forms/Value/Name/Name.js +40 -0
- package/es/extensions/forms/Value/Name/Name.js.map +1 -0
- package/es/extensions/forms/Value/Name/index.d.ts +2 -0
- package/es/extensions/forms/Value/Name/index.js +3 -0
- package/es/extensions/forms/Value/Name/index.js.map +1 -0
- package/es/extensions/forms/Value/OrganizationNumber/OrganizationNumber.d.ts +7 -0
- package/es/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js +24 -0
- package/es/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js.map +1 -0
- package/es/extensions/forms/Value/OrganizationNumber/index.d.ts +2 -0
- package/es/extensions/forms/Value/OrganizationNumber/index.js +3 -0
- package/es/extensions/forms/Value/OrganizationNumber/index.js.map +1 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.d.ts +7 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +31 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js +13 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/index.d.ts +2 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/index.js +3 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/index.js.map +1 -0
- package/es/extensions/forms/Value/String/String.js +8 -3
- package/es/extensions/forms/Value/String/String.js.map +1 -1
- package/es/extensions/forms/Value/SummaryList/SummaryList.js +1 -1
- package/es/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
- package/es/extensions/forms/Value/ValueDocs.js +6 -1
- package/es/extensions/forms/Value/ValueDocs.js.map +1 -1
- package/es/extensions/forms/Value/index.d.ts +3 -0
- package/es/extensions/forms/Value/index.js +3 -0
- package/es/extensions/forms/Value/index.js.map +1 -1
- package/es/extensions/forms/ValueBlock/ValueBlock.js +2 -1
- package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +11 -6
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.scss +11 -3
- package/es/extensions/forms/Wizard/Container/WizardContainer.js +17 -51
- package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +9 -0
- package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +46 -0
- package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -0
- package/es/extensions/forms/Wizard/Container/useStepAnimation.d.ts +4 -0
- package/es/extensions/forms/Wizard/Container/useStepAnimation.js +29 -0
- package/es/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -0
- package/es/extensions/forms/Wizard/Step/Step.js +14 -2
- package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/es/extensions/forms/Wizard/hooks/useStep.js +3 -2
- package/es/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/es/extensions/forms/Wizard/style/dnb-wizard-layout.css +29 -2
- package/es/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
- package/es/extensions/forms/Wizard/style/dnb-wizard-layout.scss +35 -2
- package/es/extensions/forms/constants/locales/en-GB.d.ts +9 -0
- package/es/extensions/forms/constants/locales/en-GB.js +12 -3
- package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/es/extensions/forms/constants/locales/en-US.d.ts +9 -0
- package/es/extensions/forms/constants/locales/index.d.ts +18 -0
- package/es/extensions/forms/constants/locales/nb-NO.d.ts +9 -0
- package/es/extensions/forms/constants/locales/nb-NO.js +11 -2
- package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/es/extensions/forms/hooks/useFieldProps.js +8 -3
- package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/es/extensions/forms/hooks/useTranslation.js +3 -1
- package/es/extensions/forms/hooks/useTranslation.js.map +1 -1
- package/es/extensions/forms/style/dnb-forms.css +77 -43
- package/es/extensions/forms/style/dnb-forms.min.css +1 -1
- package/es/extensions/forms/types.d.ts +3 -2
- package/es/extensions/forms/types.js.map +1 -1
- package/es/fragments/drawer-list/DrawerList.d.ts +8 -4
- package/es/shared/Context.d.ts +4 -4
- package/es/shared/Context.js.map +1 -1
- package/es/shared/Eufemia.d.ts +1 -1
- package/es/shared/Eufemia.js +2 -2
- package/es/shared/Eufemia.js.map +1 -1
- package/es/shared/component-helper.d.ts +1 -0
- package/es/shared/component-helper.js +2 -1
- package/es/shared/component-helper.js.map +1 -1
- package/es/shared/helpers/assignPropsWithContext.d.ts +1 -0
- package/es/shared/helpers/assignPropsWithContext.js +12 -0
- package/es/shared/helpers/assignPropsWithContext.js.map +1 -0
- package/es/shared/helpers/extendPropsWithContext.d.ts +1 -0
- package/es/shared/helpers/extendPropsWithContext.js +1 -1
- package/es/shared/helpers/extendPropsWithContext.js.map +1 -1
- package/es/shared/helpers/filterValidProps.d.ts +1 -0
- package/es/shared/helpers/filterValidProps.js.map +1 -1
- package/es/shared/helpers/runCssVersionMismatchWarning.js +14 -3
- package/es/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
- package/es/style/core/scopes.scss +1 -1
- package/es/style/dnb-ui-basis.css +1 -1
- package/es/style/dnb-ui-basis.min.css +1 -1
- package/es/style/dnb-ui-body.css +1 -1
- package/es/style/dnb-ui-body.min.css +1 -1
- package/es/style/dnb-ui-components.css +129 -98
- package/es/style/dnb-ui-components.min.css +2 -2
- package/es/style/dnb-ui-core.css +1 -1
- package/es/style/dnb-ui-core.min.css +1 -1
- package/es/style/dnb-ui-extensions.css +77 -43
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/dnb-ui-forms.css +77 -43
- package/es/style/dnb-ui-forms.min.css +1 -1
- package/es/style/dnb-ui-forms.scss +1 -1
- package/es/style/themes/eiendom/basis.js +1 -0
- package/es/style/themes/eiendom/basis.js.map +1 -0
- package/es/style/themes/eiendom/index.js +3 -0
- package/es/style/themes/eiendom/index.js.map +1 -0
- package/es/style/themes/sbanken/basis.js +1 -0
- package/es/style/themes/sbanken/basis.js.map +1 -0
- package/es/style/themes/sbanken/index.d.ts +1 -0
- package/es/style/themes/sbanken/index.js +3 -0
- package/es/style/themes/sbanken/index.js.map +1 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +205 -141
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +77 -43
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +77 -43
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +205 -141
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +77 -43
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +77 -43
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +205 -141
- package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/es/style/themes/theme-ui/ui-theme-extensions.css +77 -43
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-forms.css +77 -43
- package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/es/style/themes/ui/basis.d.ts +1 -0
- package/es/style/themes/ui/basis.js +1 -0
- package/es/style/themes/ui/basis.js.map +1 -0
- package/es/style/themes/ui/index.d.ts +1 -0
- package/es/style/themes/ui/index.js +3 -0
- package/es/style/themes/ui/index.js.map +1 -0
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +3 -3
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/DataContext/Context.d.ts +7 -2
- package/extensions/forms/DataContext/Context.js +0 -2
- package/extensions/forms/DataContext/Context.js.map +1 -1
- package/extensions/forms/DataContext/Provider/Provider.d.ts +30 -5
- package/extensions/forms/DataContext/Provider/Provider.js +69 -35
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/DataContext/Provider/ProviderDocs.js +27 -2
- package/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
- package/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -1
- package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +5 -2
- package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
- package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +5 -2
- package/extensions/forms/Field/Name/Name.d.ts +10 -0
- package/extensions/forms/Field/Name/Name.js +63 -0
- package/extensions/forms/Field/Name/Name.js.map +1 -0
- package/extensions/forms/Field/Name/NameDocs.d.ts +2 -0
- package/extensions/forms/Field/Name/NameDocs.js +8 -0
- package/extensions/forms/Field/Name/NameDocs.js.map +1 -0
- package/extensions/forms/Field/Name/index.d.ts +2 -0
- package/extensions/forms/Field/Name/index.js +3 -0
- package/extensions/forms/Field/Name/index.js.map +1 -0
- package/extensions/forms/Field/Number/Number.d.ts +2 -2
- package/extensions/forms/Field/Number/Number.js.map +1 -1
- package/extensions/forms/Field/Option/Option.d.ts +2 -0
- package/extensions/forms/Field/Option/Option.js +20 -0
- package/extensions/forms/Field/Option/Option.js.map +1 -1
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +18 -0
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
- package/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -2
- package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/extensions/forms/Field/Selection/Selection.d.ts +11 -4
- package/extensions/forms/Field/Selection/Selection.js +20 -32
- package/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/extensions/forms/Field/Selection/SelectionDocs.d.ts +2 -0
- package/extensions/forms/Field/Selection/SelectionDocs.js +38 -0
- package/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -0
- package/extensions/forms/Field/String/String.d.ts +2 -2
- package/extensions/forms/Field/String/String.js.map +1 -1
- package/extensions/forms/Field/index.d.ts +1 -0
- package/extensions/forms/Field/index.js +1 -0
- package/extensions/forms/Field/index.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -3
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/Form/FieldProps/FieldProps.d.ts +13 -0
- package/extensions/forms/Form/FieldProps/FieldProps.js +71 -0
- package/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -0
- package/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +8 -0
- package/extensions/forms/Form/FieldProps/FieldPropsContext.js +7 -0
- package/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -0
- package/extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts +2 -0
- package/extensions/forms/Form/FieldProps/FieldPropsDocs.js +11 -0
- package/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +1 -0
- package/extensions/forms/Form/FieldProps/index.d.ts +2 -0
- package/extensions/forms/Form/FieldProps/index.js +3 -0
- package/extensions/forms/Form/FieldProps/index.js.map +1 -0
- package/extensions/forms/Form/Handler/Handler.d.ts +1 -1
- package/extensions/forms/Form/Handler/Handler.js +18 -4
- package/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/extensions/forms/Form/MainHeading/MainHeading.js +1 -1
- package/extensions/forms/Form/MainHeading/MainHeading.js.map +1 -1
- package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +3 -3
- package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
- package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.scss +1 -1
- package/extensions/forms/Form/SubHeading/SubHeading.js +1 -1
- package/extensions/forms/Form/SubHeading/SubHeading.js.map +1 -1
- package/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.css +2 -2
- package/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.min.css +1 -1
- package/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.scss +1 -1
- package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +2 -2
- package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -1
- package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +13 -13
- package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -1
- package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +1 -1
- package/extensions/forms/Form/Visibility/Visibility.d.ts +4 -1
- package/extensions/forms/Form/Visibility/Visibility.js +7 -4
- package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/extensions/forms/Form/Visibility/VisibilityDocs.js +5 -0
- package/extensions/forms/Form/Visibility/VisibilityDocs.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/AnimatedContainer/ElementBlock.js +4 -4
- package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.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/EditContainer/EditContainer.js +1 -1
- package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
- package/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
- package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
- package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
- package/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
- package/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
- package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +1 -1
- package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/extensions/forms/Iterate/style/dnb-form-iterate.css +14 -14
- package/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
- package/extensions/forms/Iterate/style/dnb-form-iterate.scss +1 -1
- package/extensions/forms/Value/Boolean/Boolean.js +8 -3
- package/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
- package/extensions/forms/Value/Name/Name.d.ts +10 -0
- package/extensions/forms/Value/Name/Name.js +40 -0
- package/extensions/forms/Value/Name/Name.js.map +1 -0
- package/extensions/forms/Value/Name/index.d.ts +2 -0
- package/extensions/forms/Value/Name/index.js +3 -0
- package/extensions/forms/Value/Name/index.js.map +1 -0
- package/extensions/forms/Value/OrganizationNumber/OrganizationNumber.d.ts +7 -0
- package/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js +24 -0
- package/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js.map +1 -0
- package/extensions/forms/Value/OrganizationNumber/index.d.ts +2 -0
- package/extensions/forms/Value/OrganizationNumber/index.js +3 -0
- package/extensions/forms/Value/OrganizationNumber/index.js.map +1 -0
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.d.ts +7 -0
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +31 -0
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -0
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js +13 -0
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
- package/extensions/forms/Value/PostalCodeAndCity/index.d.ts +2 -0
- package/extensions/forms/Value/PostalCodeAndCity/index.js +3 -0
- package/extensions/forms/Value/PostalCodeAndCity/index.js.map +1 -0
- package/extensions/forms/Value/String/String.js +8 -3
- package/extensions/forms/Value/String/String.js.map +1 -1
- package/extensions/forms/Value/SummaryList/SummaryList.js +1 -1
- package/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
- package/extensions/forms/Value/ValueDocs.js +6 -1
- package/extensions/forms/Value/ValueDocs.js.map +1 -1
- package/extensions/forms/Value/index.d.ts +3 -0
- package/extensions/forms/Value/index.js +3 -0
- package/extensions/forms/Value/index.js.map +1 -1
- package/extensions/forms/ValueBlock/ValueBlock.js +2 -1
- package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/extensions/forms/ValueBlock/style/dnb-value-block.css +11 -6
- package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/extensions/forms/ValueBlock/style/dnb-value-block.scss +11 -3
- package/extensions/forms/Wizard/Container/WizardContainer.js +17 -52
- package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +9 -0
- package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +47 -0
- package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -0
- package/extensions/forms/Wizard/Container/useStepAnimation.d.ts +4 -0
- package/extensions/forms/Wizard/Container/useStepAnimation.js +30 -0
- package/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -0
- package/extensions/forms/Wizard/Step/Step.js +14 -2
- package/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/extensions/forms/Wizard/hooks/useStep.js +3 -2
- package/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/extensions/forms/Wizard/style/dnb-wizard-layout.css +29 -2
- package/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
- package/extensions/forms/Wizard/style/dnb-wizard-layout.scss +35 -2
- package/extensions/forms/constants/locales/en-GB.d.ts +9 -0
- package/extensions/forms/constants/locales/en-GB.js +12 -3
- package/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/extensions/forms/constants/locales/en-US.d.ts +9 -0
- package/extensions/forms/constants/locales/index.d.ts +18 -0
- package/extensions/forms/constants/locales/nb-NO.d.ts +9 -0
- package/extensions/forms/constants/locales/nb-NO.js +11 -2
- package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/extensions/forms/hooks/useFieldProps.js +8 -4
- package/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/extensions/forms/hooks/useTranslation.js +3 -1
- package/extensions/forms/hooks/useTranslation.js.map +1 -1
- package/extensions/forms/style/dnb-forms.css +77 -43
- package/extensions/forms/style/dnb-forms.min.css +1 -1
- package/extensions/forms/types.d.ts +3 -2
- package/extensions/forms/types.js.map +1 -1
- package/fragments/drawer-list/DrawerList.d.ts +8 -4
- package/package.json +1 -1
- package/shared/Context.d.ts +4 -4
- package/shared/Context.js.map +1 -1
- package/shared/Eufemia.d.ts +1 -1
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/shared/component-helper.d.ts +1 -0
- package/shared/component-helper.js +2 -1
- package/shared/component-helper.js.map +1 -1
- package/shared/helpers/assignPropsWithContext.d.ts +1 -0
- package/shared/helpers/assignPropsWithContext.js +16 -0
- package/shared/helpers/assignPropsWithContext.js.map +1 -0
- package/shared/helpers/extendPropsWithContext.d.ts +1 -0
- package/shared/helpers/extendPropsWithContext.js +1 -1
- package/shared/helpers/extendPropsWithContext.js.map +1 -1
- package/shared/helpers/filterValidProps.d.ts +1 -0
- package/shared/helpers/filterValidProps.js.map +1 -1
- package/shared/helpers/runCssVersionMismatchWarning.js +14 -3
- package/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
- package/style/core/scopes.scss +1 -1
- package/style/dnb-ui-basis.css +1 -1
- package/style/dnb-ui-basis.min.css +1 -1
- package/style/dnb-ui-body.css +1 -1
- package/style/dnb-ui-body.min.css +1 -1
- package/style/dnb-ui-components.css +129 -98
- package/style/dnb-ui-components.min.css +2 -2
- package/style/dnb-ui-core.css +1 -1
- package/style/dnb-ui-core.min.css +1 -1
- package/style/dnb-ui-extensions.css +77 -43
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/dnb-ui-forms.css +77 -43
- package/style/dnb-ui-forms.min.css +1 -1
- package/style/dnb-ui-forms.scss +1 -1
- package/style/themes/eiendom/basis.d.ts +1 -0
- package/style/themes/eiendom/basis.js +1 -0
- package/style/themes/eiendom/basis.js.map +1 -0
- package/style/themes/eiendom/index.d.ts +1 -0
- package/style/themes/eiendom/index.js +3 -0
- package/style/themes/eiendom/index.js.map +1 -0
- package/style/themes/sbanken/basis.d.ts +1 -0
- package/style/themes/sbanken/basis.js +1 -0
- package/style/themes/sbanken/basis.js.map +1 -0
- package/style/themes/sbanken/index.d.ts +1 -0
- package/style/themes/sbanken/index.js +3 -0
- package/style/themes/sbanken/index.js.map +1 -0
- package/style/themes/theme-eiendom/eiendom-theme-components.css +205 -141
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +77 -43
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-forms.css +77 -43
- package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +205 -141
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +77 -43
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-forms.css +77 -43
- package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-components.css +205 -141
- package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/style/themes/theme-ui/ui-theme-extensions.css +77 -43
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-forms.css +77 -43
- package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/style/themes/ui/basis.d.ts +1 -0
- package/style/themes/ui/basis.js +1 -0
- package/style/themes/ui/basis.js.map +1 -0
- package/style/themes/ui/index.d.ts +1 -0
- package/style/themes/ui/index.js +3 -0
- package/style/themes/ui/index.js.map +1 -0
- 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/style/themes/eiendom.js +0 -5
- package/cjs/style/themes/eiendom.js.map +0 -1
- package/cjs/style/themes/sbanken.js +0 -5
- package/cjs/style/themes/sbanken.js.map +0 -1
- package/cjs/style/themes/ui.js +0 -5
- package/cjs/style/themes/ui.js.map +0 -1
- package/es/style/themes/eiendom.js +0 -3
- package/es/style/themes/eiendom.js.map +0 -1
- package/es/style/themes/sbanken.js +0 -3
- package/es/style/themes/sbanken.js.map +0 -1
- package/es/style/themes/ui.js +0 -3
- package/es/style/themes/ui.js.map +0 -1
- package/style/themes/eiendom.js +0 -3
- package/style/themes/eiendom.js.map +0 -1
- package/style/themes/sbanken.js +0 -3
- package/style/themes/sbanken.js.map +0 -1
- package/style/themes/ui.js +0 -3
- package/style/themes/ui.js.map +0 -1
- /package/cjs/extensions/forms/Form/Element/style/{dnb-forms-element.css → dnb-form-element.css} +0 -0
- /package/cjs/extensions/forms/Form/Element/style/{dnb-forms-element.min.css → dnb-form-element.min.css} +0 -0
- /package/cjs/extensions/forms/Form/Element/style/{dnb-forms-element.scss → dnb-form-element.scss} +0 -0
- /package/cjs/style/themes/{eiendom.d.ts → eiendom/basis.d.ts} +0 -0
- /package/cjs/style/themes/{sbanken.d.ts → eiendom/index.d.ts} +0 -0
- /package/cjs/style/themes/{ui.d.ts → sbanken/basis.d.ts} +0 -0
- /package/{es/style/themes/eiendom.d.ts → cjs/style/themes/sbanken/index.d.ts} +0 -0
- /package/{es/style/themes/sbanken.d.ts → cjs/style/themes/ui/basis.d.ts} +0 -0
- /package/{es/style/themes/ui.d.ts → cjs/style/themes/ui/index.d.ts} +0 -0
- /package/es/extensions/forms/Form/Element/style/{dnb-forms-element.css → dnb-form-element.css} +0 -0
- /package/es/extensions/forms/Form/Element/style/{dnb-forms-element.min.css → dnb-form-element.min.css} +0 -0
- /package/es/extensions/forms/Form/Element/style/{dnb-forms-element.scss → dnb-form-element.scss} +0 -0
- /package/{style/themes/eiendom.d.ts → es/style/themes/eiendom/basis.d.ts} +0 -0
- /package/{style/themes/sbanken.d.ts → es/style/themes/eiendom/index.d.ts} +0 -0
- /package/{style/themes/ui.d.ts → es/style/themes/sbanken/basis.d.ts} +0 -0
- /package/extensions/forms/Form/Element/style/{dnb-forms-element.css → dnb-form-element.css} +0 -0
- /package/extensions/forms/Form/Element/style/{dnb-forms-element.min.css → dnb-form-element.min.css} +0 -0
- /package/extensions/forms/Form/Element/style/{dnb-forms-element.scss → dnb-form-element.scss} +0 -0
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
@charset "UTF-8";
|
|
1
2
|
/**
|
|
2
3
|
* ATTENTION: This file is auto generated by using "styleFactory".
|
|
3
4
|
* Do not change the content!
|
|
@@ -9,12 +10,15 @@
|
|
|
9
10
|
/*
|
|
10
11
|
* Utilities
|
|
11
12
|
*/
|
|
12
|
-
.dnb-forms-field-array-selection--layout-vertical .dnb-forms-field-array-selection__options {
|
|
13
|
+
.dnb-forms-field-array-selection--options-layout-vertical .dnb-forms-field-array-selection__options {
|
|
13
14
|
display: flex;
|
|
14
15
|
flex-flow: column;
|
|
15
16
|
row-gap: var(--spacing-x-small);
|
|
16
17
|
}
|
|
17
|
-
.dnb-forms-field-array-selection--layout-horizontal .dnb-forms-field-array-selection__options {
|
|
18
|
+
.dnb-forms-field-array-selection--options-layout-vertical.dnb-forms-field-array-selection--layout-horizontal .dnb-forms-field-array-selection__options {
|
|
19
|
+
row-gap: 0;
|
|
20
|
+
}
|
|
21
|
+
.dnb-forms-field-array-selection--options-layout-horizontal .dnb-forms-field-array-selection__options {
|
|
18
22
|
display: flex;
|
|
19
23
|
flex-flow: row wrap;
|
|
20
24
|
-moz-column-gap: var(--spacing-small);
|
|
@@ -364,42 +368,42 @@ fieldset.dnb-forms-field-block:not([class*=space__left]) {
|
|
|
364
368
|
/*
|
|
365
369
|
* Utilities
|
|
366
370
|
*/
|
|
367
|
-
.dnb-spacing .dnb-
|
|
371
|
+
.dnb-spacing .dnb-forms-main-heading.dnb-h--large:not([class*=space__]) {
|
|
368
372
|
margin: 0;
|
|
369
373
|
}
|
|
370
374
|
@media screen and (min-width: 40em) {
|
|
371
|
-
.dnb-
|
|
375
|
+
.dnb-forms-main-heading:has(+ .dnb-flex-stack > .dnb-card, + .dnb-card):not([class*=space__left]) {
|
|
372
376
|
margin-left: var(--spacing-medium);
|
|
373
377
|
}
|
|
374
378
|
}
|
|
375
|
-
.dnb-
|
|
379
|
+
.dnb-forms-main-heading:has(+ .dnb-flex-stack > .dnb-card, + .dnb-card):not([class*=space__bottom]) {
|
|
376
380
|
margin-bottom: var(--spacing-small);
|
|
377
381
|
}
|
|
378
382
|
|
|
379
383
|
/*
|
|
380
384
|
* Utilities
|
|
381
385
|
*/
|
|
382
|
-
.dnb-spacing .dnb-
|
|
386
|
+
.dnb-spacing .dnb-forms-sub-heading.dnb-h--medium:not([class*=space__]) {
|
|
383
387
|
margin: 0;
|
|
384
388
|
}
|
|
385
|
-
.dnb-
|
|
389
|
+
.dnb-forms-sub-heading:has(+ .dnb-flex-stack > .dnb-card, + .dnb-card):not([class*=space__bottom]) {
|
|
386
390
|
margin-bottom: var(--spacing-small);
|
|
387
391
|
}
|
|
388
392
|
|
|
389
393
|
/*
|
|
390
394
|
* Utilities
|
|
391
395
|
*/
|
|
392
|
-
.dnb-
|
|
396
|
+
.dnb-forms-submit-indicator {
|
|
393
397
|
display: inline;
|
|
394
398
|
--padding-left: 0.5em;
|
|
395
399
|
}
|
|
396
|
-
.dnb-
|
|
400
|
+
.dnb-forms-submit-indicator__content {
|
|
397
401
|
font-size: 0;
|
|
398
402
|
line-height: 1em;
|
|
399
403
|
will-change: font-size;
|
|
400
404
|
transition: font-size 800ms var(--easing-default);
|
|
401
405
|
}
|
|
402
|
-
.dnb-
|
|
406
|
+
.dnb-forms-submit-indicator__content b {
|
|
403
407
|
padding-left: 0.125em;
|
|
404
408
|
color: var(--dots-color, currentColor);
|
|
405
409
|
opacity: 0.2;
|
|
@@ -408,38 +412,38 @@ fieldset.dnb-forms-field-block:not([class*=space__left]) {
|
|
|
408
412
|
animation-duration: 1.3s;
|
|
409
413
|
animation-delay: 200ms;
|
|
410
414
|
}
|
|
411
|
-
.dnb-
|
|
415
|
+
.dnb-forms-submit-indicator__content b:nth-of-type(1) {
|
|
412
416
|
padding-left: var(--padding-left);
|
|
413
417
|
animation-delay: 50ms;
|
|
414
418
|
}
|
|
415
|
-
.dnb-
|
|
419
|
+
.dnb-forms-submit-indicator__content b:nth-of-type(2) {
|
|
416
420
|
animation-delay: 200ms;
|
|
417
421
|
}
|
|
418
|
-
.dnb-
|
|
422
|
+
.dnb-forms-submit-indicator__content b:nth-of-type(3) {
|
|
419
423
|
animation-delay: 400ms;
|
|
420
424
|
}
|
|
421
|
-
html[data-visual-test] .dnb-
|
|
425
|
+
html[data-visual-test] .dnb-forms-submit-indicator__content b {
|
|
422
426
|
animation: none;
|
|
423
427
|
}
|
|
424
|
-
.dnb-
|
|
428
|
+
.dnb-forms-submit-indicator--state-pending .dnb-forms-submit-indicator__content {
|
|
425
429
|
font-size: 1em;
|
|
426
430
|
font-weight: var(--font-weight-bold);
|
|
427
431
|
}
|
|
428
|
-
.dnb-
|
|
432
|
+
.dnb-forms-submit-indicator--state-success .dnb-forms-submit-indicator__content {
|
|
429
433
|
font-size: 1em;
|
|
430
434
|
}
|
|
431
|
-
.dnb-
|
|
435
|
+
.dnb-forms-submit-indicator--state-success .dnb-forms-submit-indicator__content .dnb-icon {
|
|
432
436
|
padding-left: var(--padding-left);
|
|
433
437
|
color: var(--color-success-green);
|
|
434
438
|
}
|
|
435
|
-
.dnb-
|
|
439
|
+
.dnb-forms-submit-indicator--state-success .dnb-forms-submit-indicator__content .dnb-icon--default {
|
|
436
440
|
font-size: 1em;
|
|
437
441
|
}
|
|
438
|
-
.dnb-
|
|
442
|
+
.dnb-forms-submit-indicator--state-success .dnb-forms-submit-indicator__content__label {
|
|
439
443
|
font-size: var(--font-size-small);
|
|
440
444
|
padding-left: calc(var(--padding-left) * 2);
|
|
441
445
|
}
|
|
442
|
-
.dnb-
|
|
446
|
+
.dnb-forms-submit-indicator--inline-wrap .dnb-forms-submit-indicator__content {
|
|
443
447
|
display: flex;
|
|
444
448
|
--padding-left: 0.25em;
|
|
445
449
|
}
|
|
@@ -485,68 +489,68 @@ html[data-visual-test] .dnb-form-submit-indicator__content b {
|
|
|
485
489
|
font-size: 0;
|
|
486
490
|
}
|
|
487
491
|
}
|
|
488
|
-
.dnb-
|
|
492
|
+
.dnb-forms-iterate-block {
|
|
489
493
|
--block-outline-color: var(--outline-color, var(--color-lavender));
|
|
490
494
|
}
|
|
491
|
-
.dnb-
|
|
495
|
+
.dnb-forms-iterate-block--error:has(.dnb-form-status--error) {
|
|
492
496
|
--block-outline-color: var(--color-fire-red);
|
|
493
497
|
}
|
|
494
|
-
.dnb-
|
|
498
|
+
.dnb-forms-iterate-block:not(.dnb-height-animation--hidden) {
|
|
495
499
|
display: flex;
|
|
496
500
|
flex-direction: column;
|
|
497
501
|
}
|
|
498
|
-
.dnb-
|
|
502
|
+
.dnb-forms-iterate-block__inner {
|
|
499
503
|
flex: 1;
|
|
500
504
|
margin-bottom: var(--space);
|
|
501
505
|
padding: var(--padding, 1rem);
|
|
502
506
|
transition: transform 400ms var(--easing-default) 50ms, box-shadow 0.8s var(--easing-default);
|
|
503
507
|
transform: translateY(-2.5rem);
|
|
504
508
|
}
|
|
505
|
-
.dnb-
|
|
509
|
+
.dnb-forms-iterate-block__inner:not([class*=dnb-flex-container--spacing]) {
|
|
506
510
|
--padding: 0;
|
|
507
511
|
}
|
|
508
|
-
.dnb-
|
|
512
|
+
.dnb-forms-iterate-block__inner[class*=dnb-flex-container--spacing] {
|
|
509
513
|
border-radius: 0.375rem;
|
|
510
514
|
box-shadow: inset 0 0 0 2px var(--block-outline-color);
|
|
511
515
|
}
|
|
512
|
-
.dnb-
|
|
516
|
+
.dnb-forms-iterate-block__inner[class*=dnb-flex-container--spacing].dnb-flex-container--spacing-small {
|
|
513
517
|
--space: var(--spacing-small);
|
|
514
518
|
}
|
|
515
|
-
.dnb-
|
|
519
|
+
.dnb-forms-iterate-block__inner[class*=dnb-flex-container--spacing].dnb-flex-container--spacing-medium {
|
|
516
520
|
--space: var(--spacing-medium);
|
|
517
521
|
}
|
|
518
|
-
.dnb-
|
|
522
|
+
.dnb-forms-iterate-block__inner[class*=dnb-flex-container--spacing].dnb-flex-container--spacing-large {
|
|
519
523
|
--space: var(--spacing-large);
|
|
520
524
|
}
|
|
521
|
-
.dnb-
|
|
525
|
+
.dnb-forms-iterate-block__inner .dnb-dl .dnb-dd {
|
|
522
526
|
margin-bottom: 0;
|
|
523
527
|
}
|
|
524
|
-
.dnb-
|
|
528
|
+
.dnb-forms-iterate-block.dnb-height-animation--is-visible .dnb-forms-iterate-block__inner {
|
|
525
529
|
transform: translateY(-0.5rem);
|
|
526
530
|
}
|
|
527
|
-
.dnb-
|
|
531
|
+
.dnb-forms-iterate-block.dnb-height-animation--parallax .dnb-forms-iterate-block__inner {
|
|
528
532
|
transform: translateY(0);
|
|
529
533
|
}
|
|
530
|
-
.dnb-
|
|
534
|
+
.dnb-forms-iterate__element {
|
|
531
535
|
outline: none;
|
|
532
536
|
}
|
|
533
|
-
.dnb-
|
|
537
|
+
.dnb-forms-iterate > .dnb-forms-iterate__element:has(.dnb-forms-iterate-block) {
|
|
534
538
|
margin-top: 0;
|
|
535
539
|
}
|
|
536
540
|
|
|
537
541
|
/*
|
|
538
542
|
* Utilities
|
|
539
543
|
*/
|
|
540
|
-
.dnb-
|
|
544
|
+
.dnb-forms-summary-list.dnb-dl .dnb-dt, .dnb-forms-summary-list.dnb-dl > .dnb-dd > .dnb-dl, .dnb-forms-summary-list.dnb-dl:not([class*=dnb-space]) > .dnb-dd > .dnb-dl {
|
|
541
545
|
margin: 0;
|
|
542
546
|
}
|
|
543
|
-
.dnb-
|
|
547
|
+
.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--grid) > .dnb-dd {
|
|
544
548
|
margin-bottom: var(--spacing-medium);
|
|
545
549
|
}
|
|
546
|
-
.dnb-
|
|
550
|
+
.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--grid) > .dnb-dd:last-of-type {
|
|
547
551
|
margin-bottom: 0;
|
|
548
552
|
}
|
|
549
|
-
.dnb-
|
|
553
|
+
.dnb-forms-summary-list.dnb-dl.dnb-dl__layout--grid {
|
|
550
554
|
row-gap: var(--spacing-medium);
|
|
551
555
|
}
|
|
552
556
|
|
|
@@ -557,8 +561,12 @@ html[data-visual-test] .dnb-form-submit-indicator__content b {
|
|
|
557
561
|
.dnb-forms-value-block--inline:not([class*=__composition]) {
|
|
558
562
|
display: inline-block;
|
|
559
563
|
font-size: inherit;
|
|
560
|
-
|
|
561
|
-
|
|
564
|
+
}
|
|
565
|
+
.dnb-forms-value-block--inline:not([class*=__composition])::before, .dnb-forms-value-block--inline:not([class*=__composition])::after {
|
|
566
|
+
content: " ";
|
|
567
|
+
}
|
|
568
|
+
.dnb-forms-value-block + .dnb-forms-value-block--inline:not([class*=__composition])::before {
|
|
569
|
+
content: none;
|
|
562
570
|
}
|
|
563
571
|
.dnb-forms-value-block__label, .dnb-forms-value-block__label strong {
|
|
564
572
|
font-weight: var(--font-weight-medium);
|
|
@@ -645,10 +653,35 @@ html[data-visual-test] .dnb-form-submit-indicator__content b {
|
|
|
645
653
|
.dnb-forms-wizard-layout__contents {
|
|
646
654
|
flex: 1;
|
|
647
655
|
}
|
|
656
|
+
.dnb-forms-wizard-layout__contents .dnb-forms-step {
|
|
657
|
+
outline: none;
|
|
658
|
+
}
|
|
648
659
|
.dnb-forms-wizard-layout__contents .dnb-card {
|
|
649
660
|
--border-color: var(--color-pistachio);
|
|
650
661
|
max-width: var(--forms-card-max-width);
|
|
651
662
|
}
|
|
663
|
+
.dnb-forms-wizard-layout__contents .dnb-forms-step > .appear-fx,
|
|
664
|
+
.dnb-forms-wizard-layout__contents .dnb-forms-button-row > .appear-fx {
|
|
665
|
+
--appear-opacity: 0;
|
|
666
|
+
--appear-offset: -0.25rem;
|
|
667
|
+
opacity: var(--appear-opacity);
|
|
668
|
+
transform: translate3d(var(--appear-offset), 0, 0);
|
|
669
|
+
animation: appear 600ms var(--easing-default) forwards;
|
|
670
|
+
animation-delay: calc(var(--element-index, 0) * 30ms);
|
|
671
|
+
}
|
|
672
|
+
@keyframes appear {
|
|
673
|
+
0% {
|
|
674
|
+
opacity: var(--appear-opacity);
|
|
675
|
+
transform: translate3d(var(--appear-offset), 0, 0);
|
|
676
|
+
}
|
|
677
|
+
80% {
|
|
678
|
+
opacity: 1;
|
|
679
|
+
}
|
|
680
|
+
100% {
|
|
681
|
+
opacity: 1;
|
|
682
|
+
transform: translate3d(0, 0, 0);
|
|
683
|
+
}
|
|
684
|
+
}
|
|
652
685
|
@media screen and (min-width: 40em) {
|
|
653
686
|
.dnb-forms-wizard-layout + .dnb-form-status:not([class*=space__left]), .dnb-forms-wizard-layout + .dnb-form-status + .dnb-form-status:not([class*=space__left]) {
|
|
654
687
|
margin-left: var(--spacing-medium);
|
|
@@ -668,10 +701,11 @@ html[data-visual-test] .dnb-form-submit-indicator__content b {
|
|
|
668
701
|
margin-right: 0;
|
|
669
702
|
}
|
|
670
703
|
|
|
671
|
-
|
|
672
|
-
|
|
704
|
+
@media screen and (min-width: 60em) {
|
|
705
|
+
.dnb-forms-form:has(.dnb-forms-wizard-layout--sidebar) .dnb-forms-status {
|
|
706
|
+
margin-left: 23rem;
|
|
707
|
+
}
|
|
673
708
|
}
|
|
674
|
-
|
|
675
709
|
.dnb-forms-test-element {
|
|
676
710
|
border: 1px dashed #808080;
|
|
677
711
|
border-radius: 0.5rem;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.dnb-forms-field-array-selection--layout-vertical .dnb-forms-field-array-selection__options{display:flex;flex-flow:column;row-gap:var(--spacing-x-small)}.dnb-forms-field-array-selection--layout-horizontal .dnb-forms-field-array-selection__options{-moz-column-gap:var(--spacing-small);column-gap:var(--spacing-small);display:flex;flex-flow:row wrap;row-gap:var(--spacing-x-small)}@media screen and (min-width:40em){.dnb-forms-field-array-selection .dnb-forms-field-block--layout-horizontal .dnb-form-label{line-height:2.5rem;margin-bottom:0}}.dnb-forms-field-expiry .dnb-multi-input-mask{width:var(--forms-field-width--small)}.dnb-forms-field-expiry .dnb-multi-input-mask .dnb-input__shell{justify-content:center}.dnb-forms-field-number{--number-control-button-border-color:#000;--number-control-button-border-color--hover:#a9a9a9;--number-control-button-border-color--focus:#a9a9a9;--number-control-button-border-width--focus:0.125rem;--number-control-button-background-color--hover:grey;--number-control-button-color--hover:#000;--number-control-button-background-color--active:#000;--number-control-button-color--active:#d3d3d3;--number-control-button--error:red;--number-control-button--error-contrast:#fff;--number-control-button-width--small:2rem;--number-control-button-width--medium:2.5rem;--number-control-button-width--large:3rem;--forms-field-block--number-control-buttons-width--small:calc(var(--number-control-button-width--small)*2);--forms-field-block--number-control-buttons-width--medium:calc(var(--number-control-button-width--medium)*2);--forms-field-block--number-control-buttons-width--large:calc(var(--number-control-button-width--large)*2)}.dnb-forms-field-number__contents{display:flex}.dnb-forms-field-number__contents--has-controls .dnb-input__input{align-items:center}.dnb-forms-field-number__contents--has-controls .dnb-input .dnb-input__border{border-radius:0}.dnb-forms-field-number__contents--has-controls .dnb-input .dnb-input__border,.dnb-forms-field-number__contents--has-controls .dnb-input .dnb-input__border:focus-within,.dnb-forms-field-number__contents--has-controls .dnb-input .dnb-input__border:hover,html[data-whatinput=keyboard] .dnb-forms-field-number__contents--has-controls .dnb-input .dnb-input__border:focus-within{box-shadow:none}.dnb-forms-field-number__contents--has-controls>.dnb-input__border--root{--input-border-inset: ;--input-border-inset--hover: ;--input-border-inset--active: ;--input-border-inset--focus: ;--input-border-inset--disabled: }html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-after:hover[disabled],html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-before:hover[disabled]{cursor:not-allowed}html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-after:hover:not([disabled]),html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-before:hover:not([disabled]){background-color:var(--number-control-button-background-color--hover);color:var(--number-control-button-color--hover)}.dnb-forms-field-number__contents--has-controls .dnb-button--control-after:active[disabled],.dnb-forms-field-number__contents--has-controls .dnb-button--control-before:active[disabled],html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-after:active[disabled],html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-before:active[disabled]{cursor:not-allowed}.dnb-forms-field-number__contents--has-controls .dnb-button--control-after:active:not([disabled]),.dnb-forms-field-number__contents--has-controls .dnb-button--control-before:active:not([disabled]),html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-after:active:not([disabled]),html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-before:active:not([disabled]){background-color:var(--number-control-button-background-color--active);color:var(--number-control-button-color--active)}.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after,.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before{color:var(--number-control-button--error)}html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after:hover[disabled],html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before:hover[disabled]{cursor:not-allowed}html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after:hover:not([disabled]),html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before:hover:not([disabled]){background-color:var(--number-control-button--error-contrast);color:var(--number-control-button--error)}.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after:active[disabled],.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before:active[disabled],html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after:active[disabled],html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before:active[disabled]{cursor:not-allowed}.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after:active:not([disabled]),.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before:active:not([disabled]),html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after:active:not([disabled]),html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before:active:not([disabled]){background-color:var(--number-control-button--error);color:var(--number-control-button--error-contrast)}.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after[disabled],.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before[disabled]{color:var(--number-control-button--error-contrast)}.dnb-forms-field-number__contents--has-controls.dnb-input--disabled .dnb-button--control-after[disabled],.dnb-forms-field-number__contents--has-controls.dnb-input--disabled .dnb-button--control-before[disabled]{background-color:var(--color-black-3);color:var(--color-black-20)}.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-small{width:calc(var(--forms-field-width--small) + var(--forms-field-block--number-control-buttons-width--small))}.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-small .dnb-button--control-after,.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-small .dnb-button--control-before{width:var(--number-control-button-width--small)}.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-medium{width:calc(var(--forms-field-width--medium) + var(--forms-field-block--number-control-buttons-width--medium))}.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-medium .dnb-button--control-after,.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-medium .dnb-button--control-before{width:var(--number-control-button-width--medium)}.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-large{width:calc(var(--forms-field-width--large) + var(--forms-field-block--number-control-buttons-width--large))}.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-large .dnb-button--control-after,.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-large .dnb-button--control-before{width:var(--number-control-button-width--large)}.dnb-forms-field-password .dnb-input__status--error .dnb-input__submit-button__button{color:var(--color-fire-red)}.dnb-forms-field-password .dnb-input__status--error .dnb-input__submit-button__button:hover{color:var(--color-white)}.dnb-forms-field-phone-number__country-code,.dnb-forms-field-phone-number__country-code .dnb-autocomplete__shell{width:calc(var(--forms-field-width--medium) - 2rem)}.dnb-forms-field-phone-number__number{flex:1}.dnb-forms-field-phone-number .dnb-form-label{max-width:14ch}.dnb-forms-field-postal-code-and-city__postal-code{flex:0 5rem}.dnb-forms-field-postal-code-and-city__city{flex:1}.dnb-forms-field-selection__variant--dropdown .dnb-forms-field-block--layout-horizontal .dnb-form-label{align-self:center}.dnb-forms-field-selection__options-layout--horizontal .dnb-forms-field-block--layout-horizontal .dnb-form-label,.dnb-forms-field-selection__variant--dropdown .dnb-forms-field-block--layout-horizontal .dnb-form-label{margin-bottom:0}.dnb-forms-field-selection__variant--button .dnb-forms-field-block--layout-horizontal .dnb-form-label{line-height:2.5rem}:root{--forms-field-width--small:5rem;--forms-field-width--medium:11rem;--forms-field-width--large:21rem}@media screen and (max-width:15em){.dnb-forms-field-number .dnb-input__shell,.dnb-forms-field-string .dnb-input__shell{width:90%}}fieldset.dnb-forms-field-block{border:none;padding:0}fieldset.dnb-forms-field-block:not([class*=space__top]){margin-top:0}fieldset.dnb-forms-field-block:not([class*=space__right]){margin-right:0}fieldset.dnb-forms-field-block:not([class*=space__bottom]){margin-bottom:0}fieldset.dnb-forms-field-block:not([class*=space__left]){margin-left:0}.dnb-forms-field-block{width:100%}.dnb-forms-field-block__grid{display:grid}@media screen and (max-width:40em){.dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid{flex-wrap:wrap}.dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid>.dnb-form-label{margin-bottom:.5rem;margin-top:.5rem}}.dnb-forms-field-block--layout-vertical{grid-template-areas:"label" "contents" "status";grid-template-columns:auto}.dnb-forms-field-block--layout-horizontal{grid-template-areas:"label contents" "status status";grid-template-columns:fit-content(100%) auto}.dnb-forms-field-block--width-stretch{flex-grow:1}@media screen and (min-width:25em){.dnb-forms-field-block--width-small{width:var(--forms-field-width--small)}.dnb-forms-field-block--width-medium{width:var(--forms-field-width--medium)}.dnb-forms-field-block--width-large{width:var(--forms-field-width--large)}}.dnb-forms-field-block__label{align-items:center;display:flex;flex-flow:row;grid-area:label;justify-content:space-between}.dnb-forms-field-block__label-description{margin-left:.3em}.dnb-forms-field-block__status{grid-area:status}.dnb-forms-field-block__status .dnb-form-status__shell{margin-top:.5rem}@media screen and (max-width:15em){.dnb-forms-field-block__status{width:90%}}.dnb-forms-field-block__contents{grid-area:contents;width:100%}.dnb-forms-field-block__contents--width-stretch{width:100%}@media screen and (min-width:25em){.dnb-forms-field-block__contents--width-small{width:var(--forms-field-width--small)}.dnb-forms-field-block__contents--width-medium{width:var(--forms-field-width--medium)}.dnb-forms-field-block__contents--width-large{width:var(--forms-field-width--large)}}.dnb-forms-field-block__contents__composition--vertical{display:flex;flex-flow:column;row-gap:var(--spacing-small)}.dnb-forms-field-block__contents__composition--horizontal{-moz-column-gap:var(--spacing-small);column-gap:var(--spacing-small);display:flex;flex-flow:row}@media screen and (min-width:25em){.dnb-forms-field-block__contents__composition--horizontal{align-items:flex-end}}@media screen and (max-width:25em){.dnb-forms-field-block__contents__composition--horizontal{flex-flow:column;row-gap:var(--spacing-x-small)}}.dnb-forms-button-row{display:flex;flex-flow:row;flex-wrap:wrap;gap:var(--spacing-small)}.dnb-card+.dnb-button--primary:not([class*=space__top]),.dnb-card+.dnb-forms-button-row:not([class*=space__top]){margin-top:var(--spacing-small)}.dnb-card+.dnb-button--primary:not([class*=space__top]) .dnb-button[class*=space__top],.dnb-card+.dnb-forms-button-row:not([class*=space__top]) .dnb-button[class*=space__top]{margin-top:0}@media screen and (min-width:40em){.dnb-card+.dnb-button--primary:not([class*=space__left]),.dnb-card+.dnb-forms-button-row:not([class*=space__left]){margin-left:var(--spacing-medium)}}:root{--forms-card-max-width:36.5rem}.dnb-forms-form .dnb-card{max-width:var(--forms-card-max-width)}.dnb-spacing .dnb-form-main-heading.dnb-h--large:not([class*=space__]){margin:0}@media screen and (min-width:40em){.dnb-form-main-heading:has(+.dnb-flex-stack>.dnb-card,+.dnb-card):not([class*=space__left]){margin-left:var(--spacing-medium)}}.dnb-form-main-heading:has(+.dnb-flex-stack>.dnb-card,+.dnb-card):not([class*=space__bottom]){margin-bottom:var(--spacing-small)}.dnb-spacing .dnb-form-sub-heading.dnb-h--medium:not([class*=space__]){margin:0}.dnb-form-sub-heading:has(+.dnb-flex-stack>.dnb-card,+.dnb-card):not([class*=space__bottom]){margin-bottom:var(--spacing-small)}.dnb-form-submit-indicator{--padding-left:0.5em;display:inline}.dnb-form-submit-indicator__content{font-size:0;line-height:1em;transition:font-size .8s var(--easing-default);will-change:font-size}.dnb-form-submit-indicator__content b{animation-delay:.2s;animation-duration:1.3s;animation-iteration-count:infinite;animation-name:submit-indicator-dot;color:var(--dots-color,currentColor);opacity:.2;padding-left:.125em}.dnb-form-submit-indicator__content b:first-of-type{animation-delay:50ms;padding-left:var(--padding-left)}.dnb-form-submit-indicator__content b:nth-of-type(2){animation-delay:.2s}.dnb-form-submit-indicator__content b:nth-of-type(3){animation-delay:.4s}html[data-visual-test] .dnb-form-submit-indicator__content b{animation:none}.dnb-form-submit-indicator--state-pending .dnb-form-submit-indicator__content{font-size:1em;font-weight:var(--font-weight-bold)}.dnb-form-submit-indicator--state-success .dnb-form-submit-indicator__content{font-size:1em}.dnb-form-submit-indicator--state-success .dnb-form-submit-indicator__content .dnb-icon{color:var(--color-success-green);padding-left:var(--padding-left)}.dnb-form-submit-indicator--state-success .dnb-form-submit-indicator__content .dnb-icon--default{font-size:1em}.dnb-form-submit-indicator--state-success .dnb-form-submit-indicator__content__label{font-size:var(--font-size-small);padding-left:calc(var(--padding-left)*2)}.dnb-form-submit-indicator--inline-wrap .dnb-form-submit-indicator__content{--padding-left:0.25em;display:flex}@keyframes submit-indicator-dot{0%{opacity:.2}15%{opacity:1}50%{opacity:1}60%{opacity:.3}to{opacity:.2}}@keyframes submit-indicator-success{0%{font-size:1em;opacity:.2}20%{font-size:1em;opacity:1}80%{opacity:1}85%{font-size:1em;opacity:.3}90%{opacity:0}to{font-size:0;opacity:0}}.dnb-form-iterate-block{--block-outline-color:var(--outline-color,var(--color-lavender))}.dnb-form-iterate-block--error:has(.dnb-form-status--error){--block-outline-color:var(--color-fire-red)}.dnb-form-iterate-block:not(.dnb-height-animation--hidden){display:flex;flex-direction:column}.dnb-form-iterate-block__inner{flex:1;margin-bottom:var(--space);padding:var(--padding,1rem);transform:translateY(-2.5rem);transition:transform .4s var(--easing-default) 50ms,box-shadow .8s var(--easing-default)}.dnb-form-iterate-block__inner:not([class*=dnb-flex-container--spacing]){--padding:0}.dnb-form-iterate-block__inner[class*=dnb-flex-container--spacing]{border-radius:.375rem;box-shadow:inset 0 0 0 2px var(--block-outline-color)}.dnb-form-iterate-block__inner[class*=dnb-flex-container--spacing].dnb-flex-container--spacing-small{--space:var(--spacing-small)}.dnb-form-iterate-block__inner[class*=dnb-flex-container--spacing].dnb-flex-container--spacing-medium{--space:var(--spacing-medium)}.dnb-form-iterate-block__inner[class*=dnb-flex-container--spacing].dnb-flex-container--spacing-large{--space:var(--spacing-large)}.dnb-form-iterate-block__inner .dnb-dl .dnb-dd{margin-bottom:0}.dnb-form-iterate-block.dnb-height-animation--is-visible .dnb-form-iterate-block__inner{transform:translateY(-.5rem)}.dnb-form-iterate-block.dnb-height-animation--parallax .dnb-form-iterate-block__inner{transform:translateY(0)}.dnb-form-iterate__element{outline:none}.dnb-form-iterate>.dnb-form-iterate__element:has(.dnb-form-iterate-block){margin-top:0}.dnb-form-summary-list.dnb-dl .dnb-dt,.dnb-form-summary-list.dnb-dl:not([class*=dnb-space])>.dnb-dd>.dnb-dl,.dnb-form-summary-list.dnb-dl>.dnb-dd>.dnb-dl{margin:0}.dnb-form-summary-list.dnb-dl:not(.dnb-dl__layout--grid)>.dnb-dd{margin-bottom:var(--spacing-medium)}.dnb-form-summary-list.dnb-dl:not(.dnb-dl__layout--grid)>.dnb-dd:last-of-type{margin-bottom:0}.dnb-form-summary-list.dnb-dl.dnb-dl__layout--grid{row-gap:var(--spacing-medium)}.dnb-forms-value-block{display:block;font-size:var(--font-size-basis)}.dnb-forms-value-block--inline:not([class*=__composition]){display:inline-block;font-size:inherit;margin-left:var(--spacing-xx-small);margin-right:var(--spacing-xx-small)}.dnb-forms-value-block__label,.dnb-forms-value-block__label strong{font-weight:var(--font-weight-medium)}.dnb-forms-value-block__placeholder{color:var(--color-black-80)}.dnb-forms-value-block--max-width-stretch{width:100%}@media screen and (min-width:25em){.dnb-forms-value-block--max-width-small{max-width:var(--forms-field-width--small)}.dnb-forms-value-block--max-width-medium{max-width:var(--forms-field-width--medium)}.dnb-forms-value-block--max-width-large{max-width:var(--forms-field-width--large)}}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content{-moz-column-gap:var(--column-gap,0);column-gap:var(--column-gap,0);display:flex;flex-flow:row;row-gap:var(--row-gap,var(--spacing-medium))}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-xx-small{--column-gap:var(--spacing-xx-small)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-x-small{--column-gap:var(--spacing-x-small)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-small{--column-gap:var(--spacing-small)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-medium{--column-gap:var(--spacing-medium)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-large{--column-gap:var(--spacing-large)}@media screen and (min-width:25em){.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content{align-items:flex-start}}@media screen and (max-width:25em){.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content{flex-flow:column}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content:not(:has(.dnb-forms-value-block__label)){--row-gap:var(--spacing-x-small)}}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content:not([class*=dnb-space])>.dnb-dl,.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dd,.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dl,.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dt{margin:0}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dl>.dnb-dd{margin-bottom:0}.dnb-forms-wizard-layout{-moz-column-gap:var(--spacing-medium);column-gap:var(--spacing-medium);display:flex;flex-flow:row wrap}.dnb-forms-wizard-layout--drawer{align-items:stretch;flex-direction:column;justify-content:stretch}.dnb-forms-wizard-layout__sidebar{flex:0;margin-bottom:2rem}.dnb-forms-wizard-layout__contents{flex:1}.dnb-forms-wizard-layout__contents .dnb-card{--border-color:var(--color-pistachio);max-width:var(--forms-card-max-width)}@media screen and (min-width:40em){.dnb-forms-wizard-layout+.dnb-form-status+.dnb-form-status:not([class*=space__left]),.dnb-forms-wizard-layout+.dnb-form-status:not([class*=space__left]){margin-left:var(--spacing-medium)}}@media screen and (max-width:60em){.dnb-forms-wizard-layout{align-items:stretch;flex-direction:column;justify-content:stretch}.dnb-forms-wizard-layout__contents{flex-basis:auto}}.dnb-forms-wizard-layout .dnb-step-indicator__sidebar{margin-right:0}.dnb-forms-step{outline:none}.dnb-forms-test-element{border:1px dashed grey;border-radius:.5rem;color:#909090;padding:.5rem 1rem}
|
|
1
|
+
@charset "UTF-8";.dnb-forms-field-array-selection--options-layout-vertical .dnb-forms-field-array-selection__options{display:flex;flex-flow:column;row-gap:var(--spacing-x-small)}.dnb-forms-field-array-selection--options-layout-vertical.dnb-forms-field-array-selection--layout-horizontal .dnb-forms-field-array-selection__options{row-gap:0}.dnb-forms-field-array-selection--options-layout-horizontal .dnb-forms-field-array-selection__options{-moz-column-gap:var(--spacing-small);column-gap:var(--spacing-small);display:flex;flex-flow:row wrap;row-gap:var(--spacing-x-small)}@media screen and (min-width:40em){.dnb-forms-field-array-selection .dnb-forms-field-block--layout-horizontal .dnb-form-label{line-height:2.5rem;margin-bottom:0}}.dnb-forms-field-expiry .dnb-multi-input-mask{width:var(--forms-field-width--small)}.dnb-forms-field-expiry .dnb-multi-input-mask .dnb-input__shell{justify-content:center}.dnb-forms-field-number{--number-control-button-border-color:#000;--number-control-button-border-color--hover:#a9a9a9;--number-control-button-border-color--focus:#a9a9a9;--number-control-button-border-width--focus:0.125rem;--number-control-button-background-color--hover:grey;--number-control-button-color--hover:#000;--number-control-button-background-color--active:#000;--number-control-button-color--active:#d3d3d3;--number-control-button--error:red;--number-control-button--error-contrast:#fff;--number-control-button-width--small:2rem;--number-control-button-width--medium:2.5rem;--number-control-button-width--large:3rem;--forms-field-block--number-control-buttons-width--small:calc(var(--number-control-button-width--small)*2);--forms-field-block--number-control-buttons-width--medium:calc(var(--number-control-button-width--medium)*2);--forms-field-block--number-control-buttons-width--large:calc(var(--number-control-button-width--large)*2)}.dnb-forms-field-number__contents{display:flex}.dnb-forms-field-number__contents--has-controls .dnb-input__input{align-items:center}.dnb-forms-field-number__contents--has-controls .dnb-input .dnb-input__border{border-radius:0}.dnb-forms-field-number__contents--has-controls .dnb-input .dnb-input__border,.dnb-forms-field-number__contents--has-controls .dnb-input .dnb-input__border:focus-within,.dnb-forms-field-number__contents--has-controls .dnb-input .dnb-input__border:hover,html[data-whatinput=keyboard] .dnb-forms-field-number__contents--has-controls .dnb-input .dnb-input__border:focus-within{box-shadow:none}.dnb-forms-field-number__contents--has-controls>.dnb-input__border--root{--input-border-inset: ;--input-border-inset--hover: ;--input-border-inset--active: ;--input-border-inset--focus: ;--input-border-inset--disabled: }html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-after:hover[disabled],html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-before:hover[disabled]{cursor:not-allowed}html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-after:hover:not([disabled]),html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-before:hover:not([disabled]){background-color:var(--number-control-button-background-color--hover);color:var(--number-control-button-color--hover)}.dnb-forms-field-number__contents--has-controls .dnb-button--control-after:active[disabled],.dnb-forms-field-number__contents--has-controls .dnb-button--control-before:active[disabled],html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-after:active[disabled],html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-before:active[disabled]{cursor:not-allowed}.dnb-forms-field-number__contents--has-controls .dnb-button--control-after:active:not([disabled]),.dnb-forms-field-number__contents--has-controls .dnb-button--control-before:active:not([disabled]),html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-after:active:not([disabled]),html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls .dnb-button--control-before:active:not([disabled]){background-color:var(--number-control-button-background-color--active);color:var(--number-control-button-color--active)}.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after,.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before{color:var(--number-control-button--error)}html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after:hover[disabled],html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before:hover[disabled]{cursor:not-allowed}html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after:hover:not([disabled]),html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before:hover:not([disabled]){background-color:var(--number-control-button--error-contrast);color:var(--number-control-button--error)}.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after:active[disabled],.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before:active[disabled],html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after:active[disabled],html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before:active[disabled]{cursor:not-allowed}.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after:active:not([disabled]),.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before:active:not([disabled]),html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after:active:not([disabled]),html:not([data-whatintent=touch]) .dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before:active:not([disabled]){background-color:var(--number-control-button--error);color:var(--number-control-button--error-contrast)}.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-after[disabled],.dnb-forms-field-number__contents--has-controls.dnb-input__status--error .dnb-button--control-before[disabled]{color:var(--number-control-button--error-contrast)}.dnb-forms-field-number__contents--has-controls.dnb-input--disabled .dnb-button--control-after[disabled],.dnb-forms-field-number__contents--has-controls.dnb-input--disabled .dnb-button--control-before[disabled]{background-color:var(--color-black-3);color:var(--color-black-20)}.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-small{width:calc(var(--forms-field-width--small) + var(--forms-field-block--number-control-buttons-width--small))}.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-small .dnb-button--control-after,.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-small .dnb-button--control-before{width:var(--number-control-button-width--small)}.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-medium{width:calc(var(--forms-field-width--medium) + var(--forms-field-block--number-control-buttons-width--medium))}.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-medium .dnb-button--control-after,.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-medium .dnb-button--control-before{width:var(--number-control-button-width--medium)}.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-large{width:calc(var(--forms-field-width--large) + var(--forms-field-block--number-control-buttons-width--large))}.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-large .dnb-button--control-after,.dnb-forms-field-number__contents--has-controls.dnb-forms-field-block__contents--width-large .dnb-button--control-before{width:var(--number-control-button-width--large)}.dnb-forms-field-password .dnb-input__status--error .dnb-input__submit-button__button{color:var(--color-fire-red)}.dnb-forms-field-password .dnb-input__status--error .dnb-input__submit-button__button:hover{color:var(--color-white)}.dnb-forms-field-phone-number__country-code,.dnb-forms-field-phone-number__country-code .dnb-autocomplete__shell{width:calc(var(--forms-field-width--medium) - 2rem)}.dnb-forms-field-phone-number__number{flex:1}.dnb-forms-field-phone-number .dnb-form-label{max-width:14ch}.dnb-forms-field-postal-code-and-city__postal-code{flex:0 5rem}.dnb-forms-field-postal-code-and-city__city{flex:1}.dnb-forms-field-selection__variant--dropdown .dnb-forms-field-block--layout-horizontal .dnb-form-label{align-self:center}.dnb-forms-field-selection__options-layout--horizontal .dnb-forms-field-block--layout-horizontal .dnb-form-label,.dnb-forms-field-selection__variant--dropdown .dnb-forms-field-block--layout-horizontal .dnb-form-label{margin-bottom:0}.dnb-forms-field-selection__variant--button .dnb-forms-field-block--layout-horizontal .dnb-form-label{line-height:2.5rem}:root{--forms-field-width--small:5rem;--forms-field-width--medium:11rem;--forms-field-width--large:21rem}@media screen and (max-width:15em){.dnb-forms-field-number .dnb-input__shell,.dnb-forms-field-string .dnb-input__shell{width:90%}}fieldset.dnb-forms-field-block{border:none;padding:0}fieldset.dnb-forms-field-block:not([class*=space__top]){margin-top:0}fieldset.dnb-forms-field-block:not([class*=space__right]){margin-right:0}fieldset.dnb-forms-field-block:not([class*=space__bottom]){margin-bottom:0}fieldset.dnb-forms-field-block:not([class*=space__left]){margin-left:0}.dnb-forms-field-block{width:100%}.dnb-forms-field-block__grid{display:grid}@media screen and (max-width:40em){.dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid{flex-wrap:wrap}.dnb-forms-field-block--layout-vertical .dnb-forms-field-block__grid>.dnb-form-label{margin-bottom:.5rem;margin-top:.5rem}}.dnb-forms-field-block--layout-vertical{grid-template-areas:"label" "contents" "status";grid-template-columns:auto}.dnb-forms-field-block--layout-horizontal{grid-template-areas:"label contents" "status status";grid-template-columns:fit-content(100%) auto}.dnb-forms-field-block--width-stretch{flex-grow:1}@media screen and (min-width:25em){.dnb-forms-field-block--width-small{width:var(--forms-field-width--small)}.dnb-forms-field-block--width-medium{width:var(--forms-field-width--medium)}.dnb-forms-field-block--width-large{width:var(--forms-field-width--large)}}.dnb-forms-field-block__label{align-items:center;display:flex;flex-flow:row;grid-area:label;justify-content:space-between}.dnb-forms-field-block__label-description{margin-left:.3em}.dnb-forms-field-block__status{grid-area:status}.dnb-forms-field-block__status .dnb-form-status__shell{margin-top:.5rem}@media screen and (max-width:15em){.dnb-forms-field-block__status{width:90%}}.dnb-forms-field-block__contents{grid-area:contents;width:100%}.dnb-forms-field-block__contents--width-stretch{width:100%}@media screen and (min-width:25em){.dnb-forms-field-block__contents--width-small{width:var(--forms-field-width--small)}.dnb-forms-field-block__contents--width-medium{width:var(--forms-field-width--medium)}.dnb-forms-field-block__contents--width-large{width:var(--forms-field-width--large)}}.dnb-forms-field-block__contents__composition--vertical{display:flex;flex-flow:column;row-gap:var(--spacing-small)}.dnb-forms-field-block__contents__composition--horizontal{-moz-column-gap:var(--spacing-small);column-gap:var(--spacing-small);display:flex;flex-flow:row}@media screen and (min-width:25em){.dnb-forms-field-block__contents__composition--horizontal{align-items:flex-end}}@media screen and (max-width:25em){.dnb-forms-field-block__contents__composition--horizontal{flex-flow:column;row-gap:var(--spacing-x-small)}}.dnb-forms-button-row{display:flex;flex-flow:row;flex-wrap:wrap;gap:var(--spacing-small)}.dnb-card+.dnb-button--primary:not([class*=space__top]),.dnb-card+.dnb-forms-button-row:not([class*=space__top]){margin-top:var(--spacing-small)}.dnb-card+.dnb-button--primary:not([class*=space__top]) .dnb-button[class*=space__top],.dnb-card+.dnb-forms-button-row:not([class*=space__top]) .dnb-button[class*=space__top]{margin-top:0}@media screen and (min-width:40em){.dnb-card+.dnb-button--primary:not([class*=space__left]),.dnb-card+.dnb-forms-button-row:not([class*=space__left]){margin-left:var(--spacing-medium)}}:root{--forms-card-max-width:36.5rem}.dnb-forms-form .dnb-card{max-width:var(--forms-card-max-width)}.dnb-spacing .dnb-forms-main-heading.dnb-h--large:not([class*=space__]){margin:0}@media screen and (min-width:40em){.dnb-forms-main-heading:has(+.dnb-flex-stack>.dnb-card,+.dnb-card):not([class*=space__left]){margin-left:var(--spacing-medium)}}.dnb-forms-main-heading:has(+.dnb-flex-stack>.dnb-card,+.dnb-card):not([class*=space__bottom]){margin-bottom:var(--spacing-small)}.dnb-spacing .dnb-forms-sub-heading.dnb-h--medium:not([class*=space__]){margin:0}.dnb-forms-sub-heading:has(+.dnb-flex-stack>.dnb-card,+.dnb-card):not([class*=space__bottom]){margin-bottom:var(--spacing-small)}.dnb-forms-submit-indicator{--padding-left:0.5em;display:inline}.dnb-forms-submit-indicator__content{font-size:0;line-height:1em;transition:font-size .8s var(--easing-default);will-change:font-size}.dnb-forms-submit-indicator__content b{animation-delay:.2s;animation-duration:1.3s;animation-iteration-count:infinite;animation-name:submit-indicator-dot;color:var(--dots-color,currentColor);opacity:.2;padding-left:.125em}.dnb-forms-submit-indicator__content b:first-of-type{animation-delay:50ms;padding-left:var(--padding-left)}.dnb-forms-submit-indicator__content b:nth-of-type(2){animation-delay:.2s}.dnb-forms-submit-indicator__content b:nth-of-type(3){animation-delay:.4s}html[data-visual-test] .dnb-forms-submit-indicator__content b{animation:none}.dnb-forms-submit-indicator--state-pending .dnb-forms-submit-indicator__content{font-size:1em;font-weight:var(--font-weight-bold)}.dnb-forms-submit-indicator--state-success .dnb-forms-submit-indicator__content{font-size:1em}.dnb-forms-submit-indicator--state-success .dnb-forms-submit-indicator__content .dnb-icon{color:var(--color-success-green);padding-left:var(--padding-left)}.dnb-forms-submit-indicator--state-success .dnb-forms-submit-indicator__content .dnb-icon--default{font-size:1em}.dnb-forms-submit-indicator--state-success .dnb-forms-submit-indicator__content__label{font-size:var(--font-size-small);padding-left:calc(var(--padding-left)*2)}.dnb-forms-submit-indicator--inline-wrap .dnb-forms-submit-indicator__content{--padding-left:0.25em;display:flex}@keyframes submit-indicator-dot{0%{opacity:.2}15%{opacity:1}50%{opacity:1}60%{opacity:.3}to{opacity:.2}}@keyframes submit-indicator-success{0%{font-size:1em;opacity:.2}20%{font-size:1em;opacity:1}80%{opacity:1}85%{font-size:1em;opacity:.3}90%{opacity:0}to{font-size:0;opacity:0}}.dnb-forms-iterate-block{--block-outline-color:var(--outline-color,var(--color-lavender))}.dnb-forms-iterate-block--error:has(.dnb-form-status--error){--block-outline-color:var(--color-fire-red)}.dnb-forms-iterate-block:not(.dnb-height-animation--hidden){display:flex;flex-direction:column}.dnb-forms-iterate-block__inner{flex:1;margin-bottom:var(--space);padding:var(--padding,1rem);transform:translateY(-2.5rem);transition:transform .4s var(--easing-default) 50ms,box-shadow .8s var(--easing-default)}.dnb-forms-iterate-block__inner:not([class*=dnb-flex-container--spacing]){--padding:0}.dnb-forms-iterate-block__inner[class*=dnb-flex-container--spacing]{border-radius:.375rem;box-shadow:inset 0 0 0 2px var(--block-outline-color)}.dnb-forms-iterate-block__inner[class*=dnb-flex-container--spacing].dnb-flex-container--spacing-small{--space:var(--spacing-small)}.dnb-forms-iterate-block__inner[class*=dnb-flex-container--spacing].dnb-flex-container--spacing-medium{--space:var(--spacing-medium)}.dnb-forms-iterate-block__inner[class*=dnb-flex-container--spacing].dnb-flex-container--spacing-large{--space:var(--spacing-large)}.dnb-forms-iterate-block__inner .dnb-dl .dnb-dd{margin-bottom:0}.dnb-forms-iterate-block.dnb-height-animation--is-visible .dnb-forms-iterate-block__inner{transform:translateY(-.5rem)}.dnb-forms-iterate-block.dnb-height-animation--parallax .dnb-forms-iterate-block__inner{transform:translateY(0)}.dnb-forms-iterate__element{outline:none}.dnb-forms-iterate>.dnb-forms-iterate__element:has(.dnb-forms-iterate-block){margin-top:0}.dnb-forms-summary-list.dnb-dl .dnb-dt,.dnb-forms-summary-list.dnb-dl:not([class*=dnb-space])>.dnb-dd>.dnb-dl,.dnb-forms-summary-list.dnb-dl>.dnb-dd>.dnb-dl{margin:0}.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--grid)>.dnb-dd{margin-bottom:var(--spacing-medium)}.dnb-forms-summary-list.dnb-dl:not(.dnb-dl__layout--grid)>.dnb-dd:last-of-type{margin-bottom:0}.dnb-forms-summary-list.dnb-dl.dnb-dl__layout--grid{row-gap:var(--spacing-medium)}.dnb-forms-value-block{display:block;font-size:var(--font-size-basis)}.dnb-forms-value-block--inline:not([class*=__composition]){display:inline-block;font-size:inherit}.dnb-forms-value-block--inline:not([class*=__composition]):after,.dnb-forms-value-block--inline:not([class*=__composition]):before{content:" "}.dnb-forms-value-block+.dnb-forms-value-block--inline:not([class*=__composition]):before{content:none}.dnb-forms-value-block__label,.dnb-forms-value-block__label strong{font-weight:var(--font-weight-medium)}.dnb-forms-value-block__placeholder{color:var(--color-black-80)}.dnb-forms-value-block--max-width-stretch{width:100%}@media screen and (min-width:25em){.dnb-forms-value-block--max-width-small{max-width:var(--forms-field-width--small)}.dnb-forms-value-block--max-width-medium{max-width:var(--forms-field-width--medium)}.dnb-forms-value-block--max-width-large{max-width:var(--forms-field-width--large)}}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content{-moz-column-gap:var(--column-gap,0);column-gap:var(--column-gap,0);display:flex;flex-flow:row;row-gap:var(--row-gap,var(--spacing-medium))}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-xx-small{--column-gap:var(--spacing-xx-small)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-x-small{--column-gap:var(--spacing-x-small)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-small{--column-gap:var(--spacing-small)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-medium{--column-gap:var(--spacing-medium)}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content--gap-large{--column-gap:var(--spacing-large)}@media screen and (min-width:25em){.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content{align-items:flex-start}}@media screen and (max-width:25em){.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content{flex-flow:column}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content:not(:has(.dnb-forms-value-block__label)){--row-gap:var(--spacing-x-small)}}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content:not([class*=dnb-space])>.dnb-dl,.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dd,.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dl,.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dt{margin:0}.dnb-forms-value-block__composition--horizontal .dnb-forms-value-block__content>.dnb-dl>.dnb-dd{margin-bottom:0}.dnb-forms-wizard-layout{-moz-column-gap:var(--spacing-medium);column-gap:var(--spacing-medium);display:flex;flex-flow:row wrap}.dnb-forms-wizard-layout--drawer{align-items:stretch;flex-direction:column;justify-content:stretch}.dnb-forms-wizard-layout__sidebar{flex:0;margin-bottom:2rem}.dnb-forms-wizard-layout__contents{flex:1}.dnb-forms-wizard-layout__contents .dnb-forms-step{outline:none}.dnb-forms-wizard-layout__contents .dnb-card{--border-color:var(--color-pistachio);max-width:var(--forms-card-max-width)}.dnb-forms-wizard-layout__contents .dnb-forms-button-row>.appear-fx,.dnb-forms-wizard-layout__contents .dnb-forms-step>.appear-fx{--appear-opacity:0;--appear-offset:-0.25rem;animation:appear .6s var(--easing-default) forwards;animation-delay:calc(var(--element-index, 0)*30ms);opacity:var(--appear-opacity);transform:translate3d(var(--appear-offset),0,0)}@keyframes appear{0%{opacity:var(--appear-opacity);transform:translate3d(var(--appear-offset),0,0)}80%{opacity:1}to{opacity:1;transform:translateZ(0)}}@media screen and (min-width:40em){.dnb-forms-wizard-layout+.dnb-form-status+.dnb-form-status:not([class*=space__left]),.dnb-forms-wizard-layout+.dnb-form-status:not([class*=space__left]){margin-left:var(--spacing-medium)}}@media screen and (max-width:60em){.dnb-forms-wizard-layout{align-items:stretch;flex-direction:column;justify-content:stretch}.dnb-forms-wizard-layout__contents{flex-basis:auto}}.dnb-forms-wizard-layout .dnb-step-indicator__sidebar{margin-right:0}@media screen and (min-width:60em){.dnb-forms-form:has(.dnb-forms-wizard-layout--sidebar) .dnb-forms-status{margin-left:23rem}}.dnb-forms-test-element{border:1px dashed grey;border-radius:.5rem;color:#909090;padding:.5rem 1rem}
|
|
@@ -87,6 +87,7 @@ export type FieldBlockProps = {
|
|
|
87
87
|
*/
|
|
88
88
|
placeholder?: React.ReactNode;
|
|
89
89
|
};
|
|
90
|
+
export type FieldBlockWidth = false | 'small' | 'medium' | 'large' | 'stretch';
|
|
90
91
|
export interface UseFieldProps<Value = unknown, EmptyValue = undefined | unknown, ErrorMessages extends DefaultErrorMessages = DefaultErrorMessages> extends DataValueReadWriteComponentProps<Value, EmptyValue>, AriaAttributes {
|
|
91
92
|
/**
|
|
92
93
|
* ID added to the actual field component, and linked to the label via for-attribute
|
|
@@ -172,7 +173,7 @@ export interface ValueProps<Value> extends DataValueReadComponentProps<Value> {
|
|
|
172
173
|
*/
|
|
173
174
|
label?: React.ReactNode;
|
|
174
175
|
/**
|
|
175
|
-
*
|
|
176
|
+
* Shows the value even if it is empty.
|
|
176
177
|
*/
|
|
177
178
|
showEmpty?: boolean;
|
|
178
179
|
/**
|
|
@@ -260,6 +261,6 @@ export type OnSubmitParams = {
|
|
|
260
261
|
/** Will empty the whole internal data set of the form */
|
|
261
262
|
clearData: () => void;
|
|
262
263
|
};
|
|
263
|
-
export type OnSubmit<Data = JsonObject> = (data:
|
|
264
|
+
export type OnSubmit<Data = JsonObject> = (data: Data, { resetForm, clearData }: OnSubmitParams) => EventReturnWithStateObject | void | Promise<EventReturnWithStateObject | void>;
|
|
264
265
|
export type OnChange<Data = unknown> = (data: Data) => EventReturnWithStateObjectAndSuccess | void | Promise<EventReturnWithStateObjectAndSuccess | void>;
|
|
265
266
|
export type OnChangeValue<Value = unknown, EmptyValue = undefined | unknown> = (value: Value | EmptyValue, additionalArgs?: AdditionalEventArgs) => EventReturnWithStateObjectAndSuccess | void | Promise<EventReturnWithStateObjectAndSuccess | void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":["FormError","Error","constructor","message","options","_defineProperty","key","dataValueReadProps","pickDataValueReadProps","props","Object","fromEntries","entries","filter","_ref","includes","omitDataValueReadProps","_ref2","dataValueWriteProps","pickDataValueWriteProps","_ref3","omitDataValueWriteProps","_ref4","pickDataValueReadWriteProps","_ref5","omitDataValueReadWriteProps","_ref6"],"sources":["../../../../src/extensions/forms/types.ts"],"sourcesContent":["import type { SpacingProps } from '../../components/space/types'\nimport type { JSONSchema4, JSONSchema6, JSONSchema7 } from 'json-schema'\nimport type { JSONSchemaType } from 'ajv/dist/2020'\nimport { JsonObject } from 'json-pointer'\nimport { AriaAttributes } from 'react'\n\nexport type * from 'json-schema'\nexport type JSONSchema = JSONSchema7\nexport type AllJSONSchemaVersions =\n | JSONSchema4\n | JSONSchema6\n | JSONSchema7\n | JSONSchemaType<unknown>\nexport { JSONSchemaType }\n\ntype ValidationRule = 'type' | 'pattern' | 'required' | string\ntype MessageValues = Record<string, string>\n\ninterface IFormErrorOptions {\n validationRule?: ValidationRule\n messageValues?: MessageValues\n}\n\n/**\n * Standard error object for Eufemia Forms, extending the built-in error with additional information for data handling\n */\nexport class FormError extends Error {\n /**\n * What validation rule did the error occur based on? (i.e: minLength, required or maximum)\n */\n validationRule?: ValidationRule\n\n /**\n * Replacement values relevant for this error.\n * @example { minLength: 3 } to be able to replace values in a message like \"Minimum {minLength} characters\"\n */\n messageValues?: MessageValues\n\n constructor(message: string, options?: IFormErrorOptions) {\n super(message)\n\n if (options) {\n for (const key in options) {\n this[key] = options[key]\n }\n }\n }\n}\n\n/**\n * Accept any key, so custom message keys can be used\n */\nexport type CustomErrorMessages = Record<string, string>\n\n/**\n * Accept any key, so custom message keys can be used\n * including the path to the field the message is for\n */\nexport type CustomErrorMessagesWithPaths =\n | CustomErrorMessages\n | {\n // eslint-disable-next-line no-unused-vars\n [K in `/${string}`]?: CustomErrorMessages\n }\n\nexport interface DefaultErrorMessages {\n required?: string\n pattern?: string\n}\n\nexport interface DataValueReadProps<Value = unknown> {\n /** JSON Pointer for where the data for this field is located in the source dataset */\n path?: string\n /** JSON Pointer for where the data for this field is located in the source iterate loop element */\n itemPath?: string\n value?: Value\n}\n\nconst dataValueReadProps = ['path', 'itemPath', 'value']\n\nexport function pickDataValueReadProps<Props extends DataValueReadProps>(\n props: Props\n): DataValueReadProps {\n return Object.fromEntries(\n Object.entries(props ?? {}).filter(([key]) =>\n dataValueReadProps.includes(key)\n )\n )\n}\n\nexport function omitDataValueReadProps<Props extends DataValueReadProps>(\n props: Props\n): Omit<DataValueReadProps, keyof DataValueReadProps> {\n return Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) => !dataValueReadProps.includes(key)\n )\n )\n}\n\nexport interface DataValueWriteProps<\n Value = unknown,\n EmptyValue = undefined | unknown,\n> {\n emptyValue?: EmptyValue\n onFocus?: (value: Value | EmptyValue) => void\n onBlur?: (value: Value | EmptyValue) => void\n onChange?: OnChangeValue<Value, EmptyValue>\n}\n\nconst dataValueWriteProps = ['emptyValue', 'onFocus', 'onBlur', 'onChange']\n\nexport function pickDataValueWriteProps<Props extends DataValueWriteProps>(\n props: Props\n): DataValueWriteProps {\n return Object.fromEntries(\n Object.entries(props ?? {}).filter(([key]) =>\n dataValueWriteProps.includes(key)\n )\n )\n}\n\nexport function omitDataValueWriteProps<Props extends DataValueWriteProps>(\n props: Props\n): Omit<DataValueWriteProps, keyof DataValueWriteProps> {\n return Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) => !dataValueWriteProps.includes(key)\n )\n )\n}\n\nexport type DataValueReadWriteProps<\n Value = unknown,\n EmptyValue = undefined | unknown,\n> = DataValueReadProps<Value> & DataValueWriteProps<Value, EmptyValue>\n\nexport function pickDataValueReadWriteProps<\n Props extends DataValueReadWriteProps,\n>(props: Props): DataValueReadWriteProps {\n return Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) =>\n dataValueReadProps.includes(key) ||\n dataValueWriteProps.includes(key)\n )\n )\n}\n\nexport function omitDataValueReadWriteProps<\n Props extends DataValueReadWriteProps,\n>(\n props: Props\n): Omit<DataValueReadWriteProps, keyof DataValueReadWriteProps> {\n return Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) =>\n !dataValueReadProps.includes(key) &&\n !dataValueWriteProps.includes(key)\n )\n )\n}\n\nexport type ComponentProps = SpacingProps & {\n className?: string\n}\n\nexport type AdditionalEventArgs = Record<string, unknown>\n\nexport type DataValueReadComponentProps<Value = unknown> = ComponentProps &\n DataValueReadProps<Value>\n\nexport type DataValueReadWriteComponentProps<\n Value = unknown,\n EmptyValue = undefined | unknown,\n> = ComponentProps &\n DataValueReadProps<Value> &\n DataValueWriteProps<Value, EmptyValue>\n\nexport type FieldBlockProps = {\n /**\n * The layout of the field block\n */\n layout?: 'horizontal' | 'vertical'\n /**\n * Main label text for the field\n */\n label?: React.ReactNode\n /**\n * A more discreet text displayed beside the label\n */\n labelDescription?: React.ReactNode\n /**\n * Text showing in place of the value if no value is given\n */\n placeholder?: React.ReactNode\n}\n\nexport interface UseFieldProps<\n Value = unknown,\n EmptyValue = undefined | unknown,\n ErrorMessages extends DefaultErrorMessages = DefaultErrorMessages,\n> extends DataValueReadWriteComponentProps<Value, EmptyValue>,\n AriaAttributes {\n // - HTML Element Attributes\n /**\n * ID added to the actual field component, and linked to the label via for-attribute\n */\n id?: Identifier\n name?: string\n disabled?: boolean\n readOnly?: boolean\n autoComplete?:\n | HTMLInputElement['autocomplete']\n | HTMLTextAreaElement['autocomplete']\n\n // - Used by useFieldProps and FieldBlock\n info?: React.ReactNode\n warning?: React.ReactNode\n error?: Error | FormError\n\n // - Validation\n required?: boolean\n schema?: AllJSONSchemaVersions\n validator?: (\n value: Value | EmptyValue,\n errorMessages?: ErrorMessages\n ) => Error | undefined | void | Promise<Error | undefined | void>\n onBlurValidator?: (\n value: Value | EmptyValue\n ) => Error | undefined | void | Promise<Error | undefined | void>\n validateRequired?: (\n internal: Value,\n {\n emptyValue,\n required,\n isChanged,\n error,\n }: {\n emptyValue: EmptyValue\n required: boolean\n isChanged: boolean\n error: FormError | undefined\n }\n ) => FormError | undefined\n /**\n * Should error messages based on validation be shown initially (from given value-prop or source data)\n * before the user interacts with the field?\n * @default false\n */\n validateInitially?: boolean\n /**\n * Should error messages be shown when touching (like focusing a field and blurring) without having changed\n * the value? So the user did not introduce a new error, but it was invalid based on validation initially.\n */\n validateUnchanged?: boolean\n /**\n * Should validation be done while writing, not just when blurring the field?\n */\n continuousValidation?: boolean\n /**\n * Provide custom error messages for the field\n */\n errorMessages?: ErrorMessages\n\n // - Derivatives\n\n /**\n * Transforms the `value` before its displayed in the field (e.g. input).\n * Public API. Should not be used internally.\n */\n transformIn?: (external: Value | unknown) => Value | unknown\n\n /**\n * Transforms the value before it gets forwarded to the form data object or returned as the onChange value parameter.\n * Public API. Should not be used internally.\n */\n transformOut?: (internal: Value | unknown) => Value\n\n /**\n * Transforms the value given by `handleChange` after `fromInput` and before `updateValue` and `toEvent`. The second parameter returns the current value.\n */\n transformValue?: (value: Value, currentValue?: Value) => Value\n\n /**\n * Transforms the value before it gets returned as the `value`.\n */\n toInput?: (external: Value | unknown) => Value | unknown\n\n /**\n * Transforms the internal value before it gets returned by even callbacks such as `onChange`, `onFocus` and `onBlur`. The second parameter returns the event type: `onChange`, `onFocus`, `onBlur` or `onBlurValidator`.\n */\n toEvent?: (\n internal: Value,\n type: 'onChange' | 'onFocus' | 'onBlur' | 'onBlurValidator'\n ) => Value\n\n /**\n * Transforms the value given by `handleChange` before it is used in the further process flow. Use it to destruct the value form the original event object.\n */\n fromInput?: (external: Value | unknown) => Value\n\n /**\n * Transforms the given props `value` before any other step gets entered.\n */\n fromExternal?: (external: Value) => Value\n}\n\nexport type FieldProps<\n Value = unknown,\n EmptyValue = undefined | unknown,\n ErrorMessages extends DefaultErrorMessages = DefaultErrorMessages,\n> = UseFieldProps<Value, EmptyValue, ErrorMessages> & FieldBlockProps\n\nexport interface FieldHelpProps {\n help?: {\n title?: string\n content?: string\n }\n}\n\nexport interface ValueProps<Value>\n extends DataValueReadComponentProps<Value> {\n /**\n * Field label to show above the data value.\n */\n label?: React.ReactNode\n\n /**\n * Field label to show above the data value.\n */\n showEmpty?: boolean\n\n /**\n * Text showing in place of the value if no value is given.\n */\n placeholder?: React.ReactNode\n\n /**\n * For showing the value inline (not as a block element)\n */\n inline?: boolean\n\n /** The max-width of a value block. Defaults to large */\n maxWidth?: 'small' | 'medium' | 'large' | 'auto'\n\n /**\n * Transforms the `value` before its displayed in the field (e.g. input).\n * Public API. Should not be used internally.\n */\n transformIn?: (external: Value | unknown) => Value | unknown\n\n /**\n * Transforms the value before it gets returned as the `value`.\n */\n toInput?: (external: Value | unknown) => Value | unknown\n\n /**\n * Transforms the given props `value` before any other step gets entered.\n */\n fromExternal?: (external: Value) => Value\n}\n\nexport type Path = string\nexport type Identifier = string\n\nexport type SubmitState =\n | 'pending' // Used for async operations\n | 'complete' // Used to hide the submit indicator\n | 'success' // Used for fields\n | 'error' // Used when error is shown\n | 'abort' // Used to abort the state regardless (step change)\n\n/**\n * Provide a error that shows in the FormStatus of a field.\n */\ntype EventStateObjectError = Error\n/**\n * Provide a warning that shows in the FormStatus of a field.\n */\ntype EventStateObjectWarning = React.ReactNode\n/**\n * Provide an info that shows in the FormStatus of a field.\n */\ntype EventStateObjectInfo = React.ReactNode\n\n/**\n * Provide a status that will enforce the form to stay in pending state\n */\ntype EventStateObjectStatus = 'pending'\n\n/**\n * Provide a success state that will show an indicator on the related field label\n */\ntype EventStateObjectSuccess = 'saved'\n\n/**\n * Provide an error or status messages that shows in the FormStatus of a field\n */\nexport type EventStateObjectOr = {\n error?: EventStateObjectError\n warning?: EventStateObjectWarning\n info?: EventStateObjectInfo\n pending?: EventStateObjectStatus\n}\n\nexport type EventStateObjectEitherOr =\n | { error: EventStateObjectError }\n | { warning: EventStateObjectWarning }\n | { info: EventStateObjectInfo }\n | { status: EventStateObjectStatus }\n\nexport type EventStateObject = EventStateObjectOr &\n EventStateObjectEitherOr\n\n/**\n * Provide 'saved' to indicate the data has been saved successfully. Can not be combined with `error`.\n */\nexport type EventStateObjectWithSuccess = EventStateObjectOr & {\n success?: EventStateObjectSuccess\n} & (EventStateObjectEitherOr | { success: EventStateObjectSuccess })\n\n/**\n * Provide an error or status messages that shows in the FormStatus of a field\n */\nexport type EventReturnWithStateObject = Error | EventStateObject\n\nexport type EventReturnWithStateObjectAndSuccess =\n | Error\n | EventStateObjectWithSuccess\n\nexport type OnSubmitParams = {\n /** Will remove browser-side stored autocomplete data */\n resetForm: () => void\n\n /** Will empty the whole internal data set of the form */\n clearData: () => void\n}\n\nexport type OnSubmit<Data = JsonObject> = (\n data: Partial<Data>,\n { resetForm, clearData }: OnSubmitParams\n) =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n\nexport type OnChange<Data = unknown> = (\n data: Data\n) =>\n | EventReturnWithStateObjectAndSuccess\n | void\n | Promise<EventReturnWithStateObjectAndSuccess | void>\n\nexport type OnChangeValue<\n Value = unknown,\n EmptyValue = undefined | unknown,\n> = (\n value: Value | EmptyValue,\n additionalArgs?: AdditionalEventArgs\n) =>\n | EventReturnWithStateObjectAndSuccess\n | void\n | Promise<EventReturnWithStateObjectAndSuccess | void>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.js","names":["FormError","Error","constructor","message","options","_defineProperty","key","dataValueReadProps","pickDataValueReadProps","props","Object","fromEntries","entries","filter","_ref","includes","omitDataValueReadProps","_ref2","dataValueWriteProps","pickDataValueWriteProps","_ref3","omitDataValueWriteProps","_ref4","pickDataValueReadWriteProps","_ref5","omitDataValueReadWriteProps","_ref6"],"sources":["../../../../src/extensions/forms/types.ts"],"sourcesContent":["import type { SpacingProps } from '../../components/space/types'\nimport type { JSONSchema4, JSONSchema6, JSONSchema7 } from 'json-schema'\nimport type { JSONSchemaType } from 'ajv/dist/2020'\nimport { JsonObject } from 'json-pointer'\nimport { AriaAttributes } from 'react'\n\nexport type * from 'json-schema'\nexport type JSONSchema = JSONSchema7\nexport type AllJSONSchemaVersions =\n | JSONSchema4\n | JSONSchema6\n | JSONSchema7\n | JSONSchemaType<unknown>\nexport { JSONSchemaType }\n\ntype ValidationRule = 'type' | 'pattern' | 'required' | string\ntype MessageValues = Record<string, string>\n\ninterface IFormErrorOptions {\n validationRule?: ValidationRule\n messageValues?: MessageValues\n}\n\n/**\n * Standard error object for Eufemia Forms, extending the built-in error with additional information for data handling\n */\nexport class FormError extends Error {\n /**\n * What validation rule did the error occur based on? (i.e: minLength, required or maximum)\n */\n validationRule?: ValidationRule\n\n /**\n * Replacement values relevant for this error.\n * @example { minLength: 3 } to be able to replace values in a message like \"Minimum {minLength} characters\"\n */\n messageValues?: MessageValues\n\n constructor(message: string, options?: IFormErrorOptions) {\n super(message)\n\n if (options) {\n for (const key in options) {\n this[key] = options[key]\n }\n }\n }\n}\n\n/**\n * Accept any key, so custom message keys can be used\n */\nexport type CustomErrorMessages = Record<string, string>\n\n/**\n * Accept any key, so custom message keys can be used\n * including the path to the field the message is for\n */\nexport type CustomErrorMessagesWithPaths =\n | CustomErrorMessages\n | {\n // eslint-disable-next-line no-unused-vars\n [K in `/${string}`]?: CustomErrorMessages\n }\n\nexport interface DefaultErrorMessages {\n required?: string\n pattern?: string\n}\n\nexport interface DataValueReadProps<Value = unknown> {\n /** JSON Pointer for where the data for this field is located in the source dataset */\n path?: string\n /** JSON Pointer for where the data for this field is located in the source iterate loop element */\n itemPath?: string\n value?: Value\n}\n\nconst dataValueReadProps = ['path', 'itemPath', 'value']\n\nexport function pickDataValueReadProps<Props extends DataValueReadProps>(\n props: Props\n): DataValueReadProps {\n return Object.fromEntries(\n Object.entries(props ?? {}).filter(([key]) =>\n dataValueReadProps.includes(key)\n )\n )\n}\n\nexport function omitDataValueReadProps<Props extends DataValueReadProps>(\n props: Props\n): Omit<DataValueReadProps, keyof DataValueReadProps> {\n return Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) => !dataValueReadProps.includes(key)\n )\n )\n}\n\nexport interface DataValueWriteProps<\n Value = unknown,\n EmptyValue = undefined | unknown,\n> {\n emptyValue?: EmptyValue\n onFocus?: (value: Value | EmptyValue) => void\n onBlur?: (value: Value | EmptyValue) => void\n onChange?: OnChangeValue<Value, EmptyValue>\n}\n\nconst dataValueWriteProps = ['emptyValue', 'onFocus', 'onBlur', 'onChange']\n\nexport function pickDataValueWriteProps<Props extends DataValueWriteProps>(\n props: Props\n): DataValueWriteProps {\n return Object.fromEntries(\n Object.entries(props ?? {}).filter(([key]) =>\n dataValueWriteProps.includes(key)\n )\n )\n}\n\nexport function omitDataValueWriteProps<Props extends DataValueWriteProps>(\n props: Props\n): Omit<DataValueWriteProps, keyof DataValueWriteProps> {\n return Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) => !dataValueWriteProps.includes(key)\n )\n )\n}\n\nexport type DataValueReadWriteProps<\n Value = unknown,\n EmptyValue = undefined | unknown,\n> = DataValueReadProps<Value> & DataValueWriteProps<Value, EmptyValue>\n\nexport function pickDataValueReadWriteProps<\n Props extends DataValueReadWriteProps,\n>(props: Props): DataValueReadWriteProps {\n return Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) =>\n dataValueReadProps.includes(key) ||\n dataValueWriteProps.includes(key)\n )\n )\n}\n\nexport function omitDataValueReadWriteProps<\n Props extends DataValueReadWriteProps,\n>(\n props: Props\n): Omit<DataValueReadWriteProps, keyof DataValueReadWriteProps> {\n return Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) =>\n !dataValueReadProps.includes(key) &&\n !dataValueWriteProps.includes(key)\n )\n )\n}\n\nexport type ComponentProps = SpacingProps & {\n className?: string\n}\n\nexport type AdditionalEventArgs = Record<string, unknown>\n\nexport type DataValueReadComponentProps<Value = unknown> = ComponentProps &\n DataValueReadProps<Value>\n\nexport type DataValueReadWriteComponentProps<\n Value = unknown,\n EmptyValue = undefined | unknown,\n> = ComponentProps &\n DataValueReadProps<Value> &\n DataValueWriteProps<Value, EmptyValue>\n\nexport type FieldBlockProps = {\n /**\n * The layout of the field block\n */\n layout?: 'horizontal' | 'vertical'\n /**\n * Main label text for the field\n */\n label?: React.ReactNode\n /**\n * A more discreet text displayed beside the label\n */\n labelDescription?: React.ReactNode\n /**\n * Text showing in place of the value if no value is given\n */\n placeholder?: React.ReactNode\n}\n\nexport type FieldBlockWidth =\n | false\n | 'small'\n | 'medium'\n | 'large'\n | 'stretch'\n\nexport interface UseFieldProps<\n Value = unknown,\n EmptyValue = undefined | unknown,\n ErrorMessages extends DefaultErrorMessages = DefaultErrorMessages,\n> extends DataValueReadWriteComponentProps<Value, EmptyValue>,\n AriaAttributes {\n // - HTML Element Attributes\n /**\n * ID added to the actual field component, and linked to the label via for-attribute\n */\n id?: Identifier\n name?: string\n disabled?: boolean\n readOnly?: boolean\n autoComplete?:\n | HTMLInputElement['autocomplete']\n | HTMLTextAreaElement['autocomplete']\n\n // - Used by useFieldProps and FieldBlock\n info?: React.ReactNode\n warning?: React.ReactNode\n error?: Error | FormError\n\n // - Validation\n required?: boolean\n schema?: AllJSONSchemaVersions\n validator?: (\n value: Value | EmptyValue,\n errorMessages?: ErrorMessages\n ) => Error | undefined | void | Promise<Error | undefined | void>\n onBlurValidator?: (\n value: Value | EmptyValue\n ) => Error | undefined | void | Promise<Error | undefined | void>\n validateRequired?: (\n internal: Value,\n {\n emptyValue,\n required,\n isChanged,\n error,\n }: {\n emptyValue: EmptyValue\n required: boolean\n isChanged: boolean\n error: FormError | undefined\n }\n ) => FormError | undefined\n /**\n * Should error messages based on validation be shown initially (from given value-prop or source data)\n * before the user interacts with the field?\n * @default false\n */\n validateInitially?: boolean\n /**\n * Should error messages be shown when touching (like focusing a field and blurring) without having changed\n * the value? So the user did not introduce a new error, but it was invalid based on validation initially.\n */\n validateUnchanged?: boolean\n /**\n * Should validation be done while writing, not just when blurring the field?\n */\n continuousValidation?: boolean\n /**\n * Provide custom error messages for the field\n */\n errorMessages?: ErrorMessages\n\n // - Derivatives\n\n /**\n * Transforms the `value` before its displayed in the field (e.g. input).\n * Public API. Should not be used internally.\n */\n transformIn?: (external: Value | unknown) => Value | unknown\n\n /**\n * Transforms the value before it gets forwarded to the form data object or returned as the onChange value parameter.\n * Public API. Should not be used internally.\n */\n transformOut?: (internal: Value | unknown) => Value\n\n /**\n * Transforms the value given by `handleChange` after `fromInput` and before `updateValue` and `toEvent`. The second parameter returns the current value.\n */\n transformValue?: (value: Value, currentValue?: Value) => Value\n\n /**\n * Transforms the value before it gets returned as the `value`.\n */\n toInput?: (external: Value | unknown) => Value | unknown\n\n /**\n * Transforms the internal value before it gets returned by even callbacks such as `onChange`, `onFocus` and `onBlur`. The second parameter returns the event type: `onChange`, `onFocus`, `onBlur` or `onBlurValidator`.\n */\n toEvent?: (\n internal: Value,\n type: 'onChange' | 'onFocus' | 'onBlur' | 'onBlurValidator'\n ) => Value\n\n /**\n * Transforms the value given by `handleChange` before it is used in the further process flow. Use it to destruct the value form the original event object.\n */\n fromInput?: (external: Value | unknown) => Value\n\n /**\n * Transforms the given props `value` before any other step gets entered.\n */\n fromExternal?: (external: Value) => Value\n}\n\nexport type FieldProps<\n Value = unknown,\n EmptyValue = undefined | unknown,\n ErrorMessages extends DefaultErrorMessages = DefaultErrorMessages,\n> = UseFieldProps<Value, EmptyValue, ErrorMessages> & FieldBlockProps\n\nexport interface FieldHelpProps {\n help?: {\n title?: string\n content?: string\n }\n}\n\nexport interface ValueProps<Value>\n extends DataValueReadComponentProps<Value> {\n /**\n * Field label to show above the data value.\n */\n label?: React.ReactNode\n\n /**\n * Shows the value even if it is empty.\n */\n showEmpty?: boolean\n\n /**\n * Text showing in place of the value if no value is given.\n */\n placeholder?: React.ReactNode\n\n /**\n * For showing the value inline (not as a block element)\n */\n inline?: boolean\n\n /** The max-width of a value block. Defaults to large */\n maxWidth?: 'small' | 'medium' | 'large' | 'auto'\n\n /**\n * Transforms the `value` before its displayed in the field (e.g. input).\n * Public API. Should not be used internally.\n */\n transformIn?: (external: Value | unknown) => Value | unknown\n\n /**\n * Transforms the value before it gets returned as the `value`.\n */\n toInput?: (external: Value | unknown) => Value | unknown\n\n /**\n * Transforms the given props `value` before any other step gets entered.\n */\n fromExternal?: (external: Value) => Value\n}\n\nexport type Path = string\nexport type Identifier = string\n\nexport type SubmitState =\n | 'pending' // Used for async operations\n | 'complete' // Used to hide the submit indicator\n | 'success' // Used for fields\n | 'error' // Used when error is shown\n | 'abort' // Used to abort the state regardless (step change)\n\n/**\n * Provide a error that shows in the FormStatus of a field.\n */\ntype EventStateObjectError = Error\n/**\n * Provide a warning that shows in the FormStatus of a field.\n */\ntype EventStateObjectWarning = React.ReactNode\n/**\n * Provide an info that shows in the FormStatus of a field.\n */\ntype EventStateObjectInfo = React.ReactNode\n\n/**\n * Provide a status that will enforce the form to stay in pending state\n */\ntype EventStateObjectStatus = 'pending'\n\n/**\n * Provide a success state that will show an indicator on the related field label\n */\ntype EventStateObjectSuccess = 'saved'\n\n/**\n * Provide an error or status messages that shows in the FormStatus of a field\n */\nexport type EventStateObjectOr = {\n error?: EventStateObjectError\n warning?: EventStateObjectWarning\n info?: EventStateObjectInfo\n pending?: EventStateObjectStatus\n}\n\nexport type EventStateObjectEitherOr =\n | { error: EventStateObjectError }\n | { warning: EventStateObjectWarning }\n | { info: EventStateObjectInfo }\n | { status: EventStateObjectStatus }\n\nexport type EventStateObject = EventStateObjectOr &\n EventStateObjectEitherOr\n\n/**\n * Provide 'saved' to indicate the data has been saved successfully. Can not be combined with `error`.\n */\nexport type EventStateObjectWithSuccess = EventStateObjectOr & {\n success?: EventStateObjectSuccess\n} & (EventStateObjectEitherOr | { success: EventStateObjectSuccess })\n\n/**\n * Provide an error or status messages that shows in the FormStatus of a field\n */\nexport type EventReturnWithStateObject = Error | EventStateObject\n\nexport type EventReturnWithStateObjectAndSuccess =\n | Error\n | EventStateObjectWithSuccess\n\nexport type OnSubmitParams = {\n /** Will remove browser-side stored autocomplete data */\n resetForm: () => void\n\n /** Will empty the whole internal data set of the form */\n clearData: () => void\n}\n\nexport type OnSubmit<Data = JsonObject> = (\n data: Data,\n { resetForm, clearData }: OnSubmitParams\n) =>\n | EventReturnWithStateObject\n | void\n | Promise<EventReturnWithStateObject | void>\n\nexport type OnChange<Data = unknown> = (\n data: Data\n) =>\n | EventReturnWithStateObjectAndSuccess\n | void\n | Promise<EventReturnWithStateObjectAndSuccess | void>\n\nexport type OnChangeValue<\n Value = unknown,\n EmptyValue = undefined | unknown,\n> = (\n value: Value | EmptyValue,\n additionalArgs?: AdditionalEventArgs\n) =>\n | EventReturnWithStateObjectAndSuccess\n | void\n | Promise<EventReturnWithStateObjectAndSuccess | void>\n"],"mappings":"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"}
|
|
@@ -45,9 +45,7 @@ export type DrawerListChildren =
|
|
|
45
45
|
| Record<string, unknown>
|
|
46
46
|
| any[];
|
|
47
47
|
export type DrawerListSuffix = React.ReactNode;
|
|
48
|
-
export interface DrawerListProps
|
|
49
|
-
extends Omit<React.HTMLProps<HTMLElement>, 'ref'>,
|
|
50
|
-
SpacingProps {
|
|
48
|
+
export interface DrawerListProps {
|
|
51
49
|
id?: string;
|
|
52
50
|
role?: string;
|
|
53
51
|
/**
|
|
@@ -204,8 +202,14 @@ export type DrawerListItemProps = {
|
|
|
204
202
|
value: string;
|
|
205
203
|
}) => void;
|
|
206
204
|
};
|
|
205
|
+
export type DrawerListAllProps = DrawerListProps &
|
|
206
|
+
SpacingProps &
|
|
207
|
+
Omit<
|
|
208
|
+
React.HTMLProps<HTMLElement>,
|
|
209
|
+
'ref' | 'size' | 'label' | 'placeholder' | 'data' | 'children'
|
|
210
|
+
>;
|
|
207
211
|
export default class DrawerList extends React.Component<
|
|
208
|
-
|
|
212
|
+
DrawerListAllProps,
|
|
209
213
|
any
|
|
210
214
|
> {
|
|
211
215
|
static defaultProps: object;
|
package/package.json
CHANGED
package/shared/Context.d.ts
CHANGED
|
@@ -36,7 +36,8 @@ import type { StepIndicatorProps } from '../components/StepIndicator';
|
|
|
36
36
|
import type { FormLabelProps } from '../components/FormLabel';
|
|
37
37
|
import type { InputProps } from '../components/Input';
|
|
38
38
|
import type { NumberFormatCurrency } from '../components/NumberFormat';
|
|
39
|
-
import type { ProgressIndicatorProps } from '../components/
|
|
39
|
+
import type { ProgressIndicatorProps } from '../components/progress-indicator/types';
|
|
40
|
+
import type { FormStatusProps } from '../components/FormStatus';
|
|
40
41
|
import type { FormElementProps } from './helpers/filterValidProps';
|
|
41
42
|
import type { ThemeProps } from './Theme';
|
|
42
43
|
import type { FormsTranslation } from '../extensions/forms/hooks/useTranslation';
|
|
@@ -73,6 +74,7 @@ export type ContextComponents = {
|
|
|
73
74
|
FormLabel?: Partial<FormLabelProps>;
|
|
74
75
|
Input?: Partial<InputProps>;
|
|
75
76
|
ProgressIndicator?: Partial<ProgressIndicatorProps>;
|
|
77
|
+
FormStatus?: Partial<FormStatusProps>;
|
|
76
78
|
NumberFormat?: Record<string, unknown>;
|
|
77
79
|
Pagination?: Record<string, unknown>;
|
|
78
80
|
/**
|
|
@@ -144,9 +146,7 @@ export type GetTranslationProps = Partial<{
|
|
|
144
146
|
}>;
|
|
145
147
|
export type Locale = TranslationLocale | 'en-US';
|
|
146
148
|
export type AnyLocale = string;
|
|
147
|
-
export type InternalLocale = Locale
|
|
148
|
-
/** Used in tests and stories */
|
|
149
|
-
| 'no' | 'en' | 'sv-SE' | 'de-CH' | 'de-DE' | 'fr-CH';
|
|
149
|
+
export type InternalLocale = Locale | AnyLocale;
|
|
150
150
|
export type ComponentTranslationsName = keyof ContextComponents | string;
|
|
151
151
|
export type ComponentTranslation = string;
|
|
152
152
|
export type Locales = Partial<Record<InternalLocale, Translation | TranslationFlat>> | Partial<Record<InternalLocale, FormsTranslation>>;
|
package/shared/Context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Context.js","names":["React","LOCALE","CURRENCY","CURRENCY_DISPLAY","defaultLocales","extend","prepareContext","props","arguments","length","undefined","locales","translations","__context__","Object","assign","key","handleLocaleFallbacks","locale","translation","destruct","context","_objectSpread","updateTranslation","getTranslation","lang","breakpoints","skeleton","split","Context","createContext","currency","currency_display","source","validKeys","k","String","includes","list","val","last","forEach","i"],"sources":["../../../src/shared/Context.tsx"],"sourcesContent":["/**\n * Web Context Context\n *\n */\n\nimport React from 'react'\nimport { LOCALE, CURRENCY, CURRENCY_DISPLAY } from './defaults'\nimport defaultLocales from './locales'\nimport { extend } from './component-helper'\n\n// All TypeScript based Eufemia elements\nimport type { ScrollViewProps } from '../fragments/scroll-view/ScrollView'\n\n// All TypeScript based Eufemia components\nimport type { AnchorProps } from '../components/Anchor'\nimport type { ButtonProps } from '../components/button/Button'\nimport type { AvatarProps } from '../components/avatar/Avatar'\nimport type { AvatarGroupProps } from '../components/avatar/AvatarGroup'\nimport type { BadgeProps } from '../components/badge/Badge'\nimport type { BreadcrumbProps } from '../components/breadcrumb/Breadcrumb'\nimport type { BreadcrumbItemProps } from '../components/breadcrumb/BreadcrumbItem'\nimport type { CheckboxProps } from '../components/Checkbox'\nimport type { InfoCardProps } from '../components/info-card/InfoCard'\nimport type { SliderProps } from '../components/slider/Slider'\nimport type { TagProps } from '../components/tag/Tag'\nimport type { TagGroupProps } from '../components/tag/TagGroup'\nimport type { TimelineProps } from '../components/timeline/Timeline'\nimport type { TimelineItemProps } from '../components/timeline/TimelineItem'\nimport type { VisuallyHiddenProps } from '../components/visually-hidden/VisuallyHidden'\nimport type { DrawerProps } from '../components/drawer/types'\nimport type { DialogProps } from '../components/dialog/types'\nimport type { TooltipProps } from '../components/tooltip/types'\nimport type { SectionProps } from '../components/section/Section'\nimport type { FormRowProps } from '../components/form-row/FormRowHelpers'\nimport type { UploadProps } from '../components/upload/types'\nimport type { SkeletonProps, SkeletonShow } from '../components/Skeleton'\nimport type { HelpButtonProps } from '../components/HelpButton'\nimport type { TableProps } from '../components/Table'\nimport type { GlobalErrorProps } from '../components/GlobalError'\nimport type { ModalProps } from '../components/modal/types'\nimport type { AccordionProps } from '../components/Accordion'\nimport type { StepIndicatorProps } from '../components/StepIndicator'\nimport type { FormLabelProps } from '../components/FormLabel'\nimport type { InputProps } from '../components/Input'\nimport type { NumberFormatCurrency } from '../components/NumberFormat'\nimport type { ProgressIndicatorProps } from '../components/ProgressIndicator'\n\nimport type { FormElementProps } from './helpers/filterValidProps'\nimport type { ThemeProps } from './Theme'\nimport type { FormsTranslation } from '../extensions/forms/hooks/useTranslation'\nimport type { DeepPartial } from './types'\n\nexport type ContextComponents = {\n Button?: Partial<ButtonProps>\n Anchor?: Partial<AnchorProps>\n Avatar?: Partial<AvatarProps>\n AvatarGroup?: Partial<AvatarGroupProps>\n Badge?: Partial<BadgeProps>\n Breadcrumb?: Partial<BreadcrumbProps>\n BreadcrumbItem?: Partial<BreadcrumbItemProps>\n Checkbox?: Partial<CheckboxProps>\n InfoCard?: Partial<InfoCardProps>\n Slider?: Partial<SliderProps>\n Tag?: Partial<TagProps>\n TagGroup?: Partial<TagGroupProps>\n Timeline?: Partial<TimelineProps>\n TimelineItem?: Partial<TimelineItemProps>\n VisuallyHidden?: Partial<VisuallyHiddenProps>\n Drawer?: Partial<DrawerProps>\n Dialog?: Partial<DialogProps>\n Tooltip?: Partial<TooltipProps>\n Section?: Partial<SectionProps>\n ScrollView?: Partial<ScrollViewProps>\n Upload?: Partial<UploadProps>\n Skeleton?: Partial<SkeletonProps>\n HelpButton?: Partial<HelpButtonProps>\n Table?: Partial<TableProps>\n GlobalError?: Partial<GlobalErrorProps>\n Modal?: Partial<ModalProps>\n Accordion?: Partial<AccordionProps>\n StepIndicator?: Partial<StepIndicatorProps>\n FormLabel?: Partial<FormLabelProps>\n Input?: Partial<InputProps>\n ProgressIndicator?: Partial<ProgressIndicatorProps>\n\n // -- TODO: Not converted yet --\n NumberFormat?: Record<string, unknown>\n Pagination?: Record<string, unknown>\n\n /**\n * @deprecated – can be removed in v11\n */\n FormRow?: FormRowProps\n\n // Common props\n formElement?: FormElementProps\n}\n\nexport type ContextProps = ContextComponents & {\n // -- All TypeScript based Eufemia components --\n\n // -- Global properties --\n\n /**\n * Contains theme related properties, such as a theme name\n */\n theme?: ThemeProps\n\n /**\n * Will enable all skeletons inside this provider/context scope\n */\n skeleton?: SkeletonShow\n\n /**\n * Define what breakpoints should be used by the MediaQuery component and hook\n */\n breakpoints?: Record<string, string>\n\n /**\n * Defines the locale (internal translation) used by some components\n */\n locale?: InternalLocale\n\n /**\n * Provide your own translations. Use the same format as defined in the translation files\n */\n translation?: Translation\n\n /**\n * Defines the currency used by the NumberFormat component\n */\n currency?: NumberFormatCurrency\n\n /**\n * Defines the currencyDisplay used by the NumberFormat component\n */\n currency_display?: string\n\n /**\n * Update any given provider/context properties\n */\n update?: (props: ContextProps) => void\n\n /**\n * Update any given provider/context properties, but only for the particular scope\n */\n updateCurrent?: (props: ContextProps) => void\n\n /**\n * Update the used locale from within the context\n */\n setLocale?: (locale: InternalLocale) => void\n\n /**\n * Update the used locale from within the context, but only for the particular scope\n */\n setCurrentLocale?: (locale: InternalLocale) => void\n\n /**\n * Overwrite existing internal translation strings or define new strings via the Provider\n */\n translations?: Locales | TranslationCustomLocales\n\n /**\n * @deprecated Use `translations` instead\n */\n locales?: Locales | TranslationCustomLocales\n\n // -- For internal use --\n __context__?: Record<string, unknown>\n updateTranslation?: (\n locale: InternalLocale,\n translation: Translation\n ) => void\n getTranslation?: (props: GetTranslationProps) => Translation\n}\n\nexport type GetTranslationProps = Partial<{\n lang?: InternalLocale | HTMLElement['lang']\n locale?: InternalLocale\n}>\n\nexport type Locale = TranslationLocale | 'en-US'\nexport type AnyLocale = string\nexport type InternalLocale =\n | Locale\n\n /** Used in tests and stories */\n | 'no'\n | 'en'\n | 'sv-SE'\n | 'de-CH'\n | 'de-DE'\n | 'fr-CH'\nexport type ComponentTranslationsName = keyof ContextComponents | string\nexport type ComponentTranslation = string\nexport type Locales =\n | Partial<Record<InternalLocale, Translation | TranslationFlat>>\n | Partial<Record<InternalLocale, FormsTranslation>>\nexport type TranslationDefaultLocales = typeof defaultLocales\nexport type TranslationLocale = keyof TranslationDefaultLocales\nexport type TranslationKeys =\n keyof TranslationDefaultLocales[TranslationLocale]\nexport type TranslationValues =\n TranslationDefaultLocales[TranslationLocale] & {\n Forms?: Record<string, unknown>\n }\nexport type TranslationCustomLocales = Record<\n never,\n string | Record<string, string>\n>\n\n/**\n * E.g. \"HelpButton: { title: '...' }\"\n */\nexport type Translation = DeepPartial<TranslationValues>\n\n/**\n * E.g. \"HelpButton.title\"\n */\nexport type TranslationFlat = Record<\n ComponentTranslationsName,\n TranslationKeys | ComponentTranslation\n>\n\nexport function prepareContext<Props>(\n props: ContextProps = {}\n): Props & ContextProps {\n const locales: Locales =\n props.translations || props.locales\n ? extend(defaultLocales, props.translations || props.locales)\n : defaultLocales\n\n if (props.__context__) {\n Object.assign(props, props.__context__)\n delete props.__context__\n }\n\n const key = handleLocaleFallbacks(props.locale || LOCALE, locales)\n const translation = locales[key] || defaultLocales[LOCALE] || {} // here we could use Object.freeze\n\n /**\n * The code above adds support for strings, defined like:\n * {\n * \"Modal.close_title\": \"Lukk\",\n * }\n */\n if (locales[key]) {\n locales[key] = destruct(locales[key] as TranslationFlat, translation)\n }\n\n const context = {\n // We may use that in future\n updateTranslation: (locale, translation) => {\n context.translation = (context.translations || context.locales)[\n locale\n ] = translation\n },\n getTranslation: (props) => {\n if (props) {\n const lang = props.lang || props.locale\n if (\n lang &&\n (context.translations || context.locales)[lang] &&\n lang !== key\n ) {\n return (context.translations || context.locales)[lang]\n }\n }\n return context.translation\n },\n\n locales,\n locale: null,\n breakpoints: null,\n skeleton: null,\n\n ...props,\n\n /**\n * Make sure we set this after props, since we update this one!\n */\n translation,\n } as Props & ContextProps\n\n return context\n}\n\nfunction handleLocaleFallbacks(\n locale: InternalLocale | AnyLocale,\n locales: Locales\n) {\n if (!locales[locale]) {\n if (locale === 'en' || locale.split('-')[0] === 'en') {\n return 'en-GB'\n }\n }\n return locale\n}\n\n// If no provider is given, we use the default context from here\nconst Context = React.createContext<ContextProps>(\n prepareContext({\n locale: LOCALE,\n currency: CURRENCY,\n currency_display: CURRENCY_DISPLAY,\n })\n)\n\nexport default Context\n\nfunction destruct(\n source: TranslationFlat,\n validKeys: Record<string, unknown>\n): TranslationFlat {\n for (const k in source) {\n if (String(k).includes('.')) {\n const list = k.split('.')\n\n if (validKeys[list[0]]) {\n const val = source[k]\n const last = list.length - 1\n\n list.forEach((k, i) => {\n source[k] = i === last ? val : source[k]\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n source = source[k] || {}\n })\n }\n }\n }\n\n return source\n}\n"],"mappings":";;;AAKA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,MAAM,EAAEC,QAAQ,EAAEC,gBAAgB,QAAQ,YAAY;AAC/D,OAAOC,cAAc,MAAM,WAAW;AACtC,SAASC,MAAM,QAAQ,oBAAoB;AAyN3C,OAAO,SAASC,cAAcA,CAAA,EAEN;EAAA,IADtBC,KAAmB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAExB,MAAMG,OAAgB,GACpBJ,KAAK,CAACK,YAAY,IAAIL,KAAK,CAACI,OAAO,GAC/BN,MAAM,CAACD,cAAc,EAAEG,KAAK,CAACK,YAAY,IAAIL,KAAK,CAACI,OAAO,CAAC,GAC3DP,cAAc;EAEpB,IAAIG,KAAK,CAACM,WAAW,EAAE;IACrBC,MAAM,CAACC,MAAM,CAACR,KAAK,EAAEA,KAAK,CAACM,WAAW,CAAC;IACvC,OAAON,KAAK,CAACM,WAAW;EAC1B;EAEA,MAAMG,GAAG,GAAGC,qBAAqB,CAACV,KAAK,CAACW,MAAM,IAAIjB,MAAM,EAAEU,OAAO,CAAC;EAClE,MAAMQ,WAAW,GAAGR,OAAO,CAACK,GAAG,CAAC,IAAIZ,cAAc,CAACH,MAAM,CAAC,IAAI,CAAC,CAAC;EAQhE,IAAIU,OAAO,CAACK,GAAG,CAAC,EAAE;IAChBL,OAAO,CAACK,GAAG,CAAC,GAAGI,QAAQ,CAACT,OAAO,CAACK,GAAG,CAAC,EAAqBG,WAAW,CAAC;EACvE;EAEA,MAAME,OAAO,GAAAC,aAAA,CAAAA,aAAA;IAEXC,iBAAiB,EAAEA,CAACL,MAAM,EAAEC,WAAW,KAAK;MAC1CE,OAAO,CAACF,WAAW,GAAG,CAACE,OAAO,CAACT,YAAY,IAAIS,OAAO,CAACV,OAAO,EAC5DO,MAAM,CACP,GAAGC,WAAW;IACjB,CAAC;IACDK,cAAc,EAAGjB,KAAK,IAAK;MACzB,IAAIA,KAAK,EAAE;QACT,MAAMkB,IAAI,GAAGlB,KAAK,CAACkB,IAAI,IAAIlB,KAAK,CAACW,MAAM;QACvC,IACEO,IAAI,IACJ,CAACJ,OAAO,CAACT,YAAY,IAAIS,OAAO,CAACV,OAAO,EAAEc,IAAI,CAAC,IAC/CA,IAAI,KAAKT,GAAG,EACZ;UACA,OAAO,CAACK,OAAO,CAACT,YAAY,IAAIS,OAAO,CAACV,OAAO,EAAEc,IAAI,CAAC;QACxD;MACF;MACA,OAAOJ,OAAO,CAACF,WAAW;IAC5B,CAAC;IAEDR,OAAO;IACPO,MAAM,EAAE,IAAI;IACZQ,WAAW,EAAE,IAAI;IACjBC,QAAQ,EAAE;EAAI,GAEXpB,KAAK;IAKRY;EAAW,EACY;EAEzB,OAAOE,OAAO;AAChB;AAEA,SAASJ,qBAAqBA,CAC5BC,MAAkC,EAClCP,OAAgB,EAChB;EACA,IAAI,CAACA,OAAO,CAACO,MAAM,CAAC,EAAE;IACpB,IAAIA,MAAM,KAAK,IAAI,IAAIA,MAAM,CAACU,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;MACpD,OAAO,OAAO;IAChB;EACF;EACA,OAAOV,MAAM;AACf;AAGA,MAAMW,OAAO,GAAG7B,KAAK,CAAC8B,aAAa,CACjCxB,cAAc,CAAC;EACbY,MAAM,EAAEjB,MAAM;EACd8B,QAAQ,EAAE7B,QAAQ;EAClB8B,gBAAgB,EAAE7B;AACpB,CAAC,CACH,CAAC;AAED,eAAe0B,OAAO;AAEtB,SAAST,QAAQA,CACfa,MAAuB,EACvBC,SAAkC,EACjB;EACjB,KAAK,MAAMC,CAAC,IAAIF,MAAM,EAAE;IACtB,IAAIG,MAAM,CAACD,CAAC,CAAC,CAACE,QAAQ,CAAC,GAAG,CAAC,EAAE;MAC3B,MAAMC,IAAI,GAAGH,CAAC,CAACP,KAAK,CAAC,GAAG,CAAC;MAEzB,IAAIM,SAAS,CAACI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;QACtB,MAAMC,GAAG,GAAGN,MAAM,CAACE,CAAC,CAAC;QACrB,MAAMK,IAAI,GAAGF,IAAI,CAAC7B,MAAM,GAAG,CAAC;QAE5B6B,IAAI,CAACG,OAAO,CAAC,CAACN,CAAC,EAAEO,CAAC,KAAK;UACrBT,MAAM,CAACE,CAAC,CAAC,GAAGO,CAAC,KAAKF,IAAI,GAAGD,GAAG,GAAGN,MAAM,CAACE,CAAC,CAAC;UAIxCF,MAAM,GAAGA,MAAM,CAACE,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC,CAAC;MACJ;IACF;EACF;EAEA,OAAOF,MAAM;AACf"}
|
|
1
|
+
{"version":3,"file":"Context.js","names":["React","LOCALE","CURRENCY","CURRENCY_DISPLAY","defaultLocales","extend","prepareContext","props","arguments","length","undefined","locales","translations","__context__","Object","assign","key","handleLocaleFallbacks","locale","translation","destruct","context","_objectSpread","updateTranslation","getTranslation","lang","breakpoints","skeleton","split","Context","createContext","currency","currency_display","source","validKeys","k","String","includes","list","val","last","forEach","i"],"sources":["../../../src/shared/Context.tsx"],"sourcesContent":["/**\n * Web Context Context\n *\n */\n\nimport React from 'react'\nimport { LOCALE, CURRENCY, CURRENCY_DISPLAY } from './defaults'\nimport defaultLocales from './locales'\nimport { extend } from './component-helper'\n\n// All TypeScript based Eufemia elements\nimport type { ScrollViewProps } from '../fragments/scroll-view/ScrollView'\n\n// All TypeScript based Eufemia components\nimport type { AnchorProps } from '../components/Anchor'\nimport type { ButtonProps } from '../components/button/Button'\nimport type { AvatarProps } from '../components/avatar/Avatar'\nimport type { AvatarGroupProps } from '../components/avatar/AvatarGroup'\nimport type { BadgeProps } from '../components/badge/Badge'\nimport type { BreadcrumbProps } from '../components/breadcrumb/Breadcrumb'\nimport type { BreadcrumbItemProps } from '../components/breadcrumb/BreadcrumbItem'\nimport type { CheckboxProps } from '../components/Checkbox'\nimport type { InfoCardProps } from '../components/info-card/InfoCard'\nimport type { SliderProps } from '../components/slider/Slider'\nimport type { TagProps } from '../components/tag/Tag'\nimport type { TagGroupProps } from '../components/tag/TagGroup'\nimport type { TimelineProps } from '../components/timeline/Timeline'\nimport type { TimelineItemProps } from '../components/timeline/TimelineItem'\nimport type { VisuallyHiddenProps } from '../components/visually-hidden/VisuallyHidden'\nimport type { DrawerProps } from '../components/drawer/types'\nimport type { DialogProps } from '../components/dialog/types'\nimport type { TooltipProps } from '../components/tooltip/types'\nimport type { SectionProps } from '../components/section/Section'\nimport type { FormRowProps } from '../components/form-row/FormRowHelpers'\nimport type { UploadProps } from '../components/upload/types'\nimport type { SkeletonProps, SkeletonShow } from '../components/Skeleton'\nimport type { HelpButtonProps } from '../components/HelpButton'\nimport type { TableProps } from '../components/Table'\nimport type { GlobalErrorProps } from '../components/GlobalError'\nimport type { ModalProps } from '../components/modal/types'\nimport type { AccordionProps } from '../components/Accordion'\nimport type { StepIndicatorProps } from '../components/StepIndicator'\nimport type { FormLabelProps } from '../components/FormLabel'\nimport type { InputProps } from '../components/Input'\nimport type { NumberFormatCurrency } from '../components/NumberFormat'\nimport type { ProgressIndicatorProps } from '../components/progress-indicator/types'\nimport type { FormStatusProps } from '../components/FormStatus'\n\nimport type { FormElementProps } from './helpers/filterValidProps'\nimport type { ThemeProps } from './Theme'\nimport type { FormsTranslation } from '../extensions/forms/hooks/useTranslation'\nimport type { DeepPartial } from './types'\n\nexport type ContextComponents = {\n Button?: Partial<ButtonProps>\n Anchor?: Partial<AnchorProps>\n Avatar?: Partial<AvatarProps>\n AvatarGroup?: Partial<AvatarGroupProps>\n Badge?: Partial<BadgeProps>\n Breadcrumb?: Partial<BreadcrumbProps>\n BreadcrumbItem?: Partial<BreadcrumbItemProps>\n Checkbox?: Partial<CheckboxProps>\n InfoCard?: Partial<InfoCardProps>\n Slider?: Partial<SliderProps>\n Tag?: Partial<TagProps>\n TagGroup?: Partial<TagGroupProps>\n Timeline?: Partial<TimelineProps>\n TimelineItem?: Partial<TimelineItemProps>\n VisuallyHidden?: Partial<VisuallyHiddenProps>\n Drawer?: Partial<DrawerProps>\n Dialog?: Partial<DialogProps>\n Tooltip?: Partial<TooltipProps>\n Section?: Partial<SectionProps>\n ScrollView?: Partial<ScrollViewProps>\n Upload?: Partial<UploadProps>\n Skeleton?: Partial<SkeletonProps>\n HelpButton?: Partial<HelpButtonProps>\n Table?: Partial<TableProps>\n GlobalError?: Partial<GlobalErrorProps>\n Modal?: Partial<ModalProps>\n Accordion?: Partial<AccordionProps>\n StepIndicator?: Partial<StepIndicatorProps>\n FormLabel?: Partial<FormLabelProps>\n Input?: Partial<InputProps>\n ProgressIndicator?: Partial<ProgressIndicatorProps>\n FormStatus?: Partial<FormStatusProps>\n\n // -- TODO: Not converted yet --\n NumberFormat?: Record<string, unknown>\n Pagination?: Record<string, unknown>\n\n /**\n * @deprecated – can be removed in v11\n */\n FormRow?: FormRowProps\n\n // Common props\n formElement?: FormElementProps\n}\n\nexport type ContextProps = ContextComponents & {\n // -- All TypeScript based Eufemia components --\n\n // -- Global properties --\n\n /**\n * Contains theme related properties, such as a theme name\n */\n theme?: ThemeProps\n\n /**\n * Will enable all skeletons inside this provider/context scope\n */\n skeleton?: SkeletonShow\n\n /**\n * Define what breakpoints should be used by the MediaQuery component and hook\n */\n breakpoints?: Record<string, string>\n\n /**\n * Defines the locale (internal translation) used by some components\n */\n locale?: InternalLocale\n\n /**\n * Provide your own translations. Use the same format as defined in the translation files\n */\n translation?: Translation\n\n /**\n * Defines the currency used by the NumberFormat component\n */\n currency?: NumberFormatCurrency\n\n /**\n * Defines the currencyDisplay used by the NumberFormat component\n */\n currency_display?: string\n\n /**\n * Update any given provider/context properties\n */\n update?: (props: ContextProps) => void\n\n /**\n * Update any given provider/context properties, but only for the particular scope\n */\n updateCurrent?: (props: ContextProps) => void\n\n /**\n * Update the used locale from within the context\n */\n setLocale?: (locale: InternalLocale) => void\n\n /**\n * Update the used locale from within the context, but only for the particular scope\n */\n setCurrentLocale?: (locale: InternalLocale) => void\n\n /**\n * Overwrite existing internal translation strings or define new strings via the Provider\n */\n translations?: Locales | TranslationCustomLocales\n\n /**\n * @deprecated Use `translations` instead\n */\n locales?: Locales | TranslationCustomLocales\n\n // -- For internal use --\n __context__?: Record<string, unknown>\n updateTranslation?: (\n locale: InternalLocale,\n translation: Translation\n ) => void\n getTranslation?: (props: GetTranslationProps) => Translation\n}\n\nexport type GetTranslationProps = Partial<{\n lang?: InternalLocale | HTMLElement['lang']\n locale?: InternalLocale\n}>\n\nexport type Locale = TranslationLocale | 'en-US'\nexport type AnyLocale = string\nexport type InternalLocale =\n | Locale\n // more strict type definitions than string breaks applications using React Intl.\n | AnyLocale\nexport type ComponentTranslationsName = keyof ContextComponents | string\nexport type ComponentTranslation = string\nexport type Locales =\n | Partial<Record<InternalLocale, Translation | TranslationFlat>>\n | Partial<Record<InternalLocale, FormsTranslation>>\nexport type TranslationDefaultLocales = typeof defaultLocales\nexport type TranslationLocale = keyof TranslationDefaultLocales\nexport type TranslationKeys =\n keyof TranslationDefaultLocales[TranslationLocale]\nexport type TranslationValues =\n TranslationDefaultLocales[TranslationLocale] & {\n Forms?: Record<string, unknown>\n }\nexport type TranslationCustomLocales = Record<\n never,\n string | Record<string, string>\n>\n\n/**\n * E.g. \"HelpButton: { title: '...' }\"\n */\nexport type Translation = DeepPartial<TranslationValues>\n\n/**\n * E.g. \"HelpButton.title\"\n */\nexport type TranslationFlat = Record<\n ComponentTranslationsName,\n TranslationKeys | ComponentTranslation\n>\n\nexport function prepareContext<Props>(\n props: ContextProps = {}\n): Props & ContextProps {\n const locales: Locales =\n props.translations || props.locales\n ? extend(defaultLocales, props.translations || props.locales)\n : defaultLocales\n\n if (props.__context__) {\n Object.assign(props, props.__context__)\n delete props.__context__\n }\n\n const key = handleLocaleFallbacks(props.locale || LOCALE, locales)\n const translation = locales[key] || defaultLocales[LOCALE] || {} // here we could use Object.freeze\n\n /**\n * The code above adds support for strings, defined like:\n * {\n * \"Modal.close_title\": \"Lukk\",\n * }\n */\n if (locales[key]) {\n locales[key] = destruct(locales[key] as TranslationFlat, translation)\n }\n\n const context = {\n // We may use that in future\n updateTranslation: (locale, translation) => {\n context.translation = (context.translations || context.locales)[\n locale\n ] = translation\n },\n getTranslation: (props) => {\n if (props) {\n const lang = props.lang || props.locale\n if (\n lang &&\n (context.translations || context.locales)[lang] &&\n lang !== key\n ) {\n return (context.translations || context.locales)[lang]\n }\n }\n return context.translation\n },\n\n locales,\n locale: null,\n breakpoints: null,\n skeleton: null,\n\n ...props,\n\n /**\n * Make sure we set this after props, since we update this one!\n */\n translation,\n } as Props & ContextProps\n\n return context\n}\n\nfunction handleLocaleFallbacks(\n locale: InternalLocale | AnyLocale,\n locales: Locales\n) {\n if (!locales[locale]) {\n if (locale === 'en' || locale.split('-')[0] === 'en') {\n return 'en-GB'\n }\n }\n return locale\n}\n\n// If no provider is given, we use the default context from here\nconst Context = React.createContext<ContextProps>(\n prepareContext({\n locale: LOCALE,\n currency: CURRENCY,\n currency_display: CURRENCY_DISPLAY,\n })\n)\n\nexport default Context\n\nfunction destruct(\n source: TranslationFlat,\n validKeys: Record<string, unknown>\n): TranslationFlat {\n for (const k in source) {\n if (String(k).includes('.')) {\n const list = k.split('.')\n\n if (validKeys[list[0]]) {\n const val = source[k]\n const last = list.length - 1\n\n list.forEach((k, i) => {\n source[k] = i === last ? val : source[k]\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n source = source[k] || {}\n })\n }\n }\n }\n\n return source\n}\n"],"mappings":"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"}
|
package/shared/Eufemia.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "10.
|
|
1
|
+
export declare const version = "10.30.0";
|
|
2
2
|
export declare function init(): void;
|