@dnb/eufemia 10.52.1 → 10.53.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 +20 -0
- package/cjs/components/number-format/NumberUtils.js.map +1 -1
- package/cjs/components/progress-indicator/ProgressIndicator.js +2 -2
- package/cjs/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/cjs/components/upload/UploadVerify.js +2 -2
- package/cjs/components/upload/UploadVerify.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Context.d.ts +1 -0
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +3 -4
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +5 -1
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.d.ts +3 -1
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +51 -11
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.d.ts +2 -0
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +25 -0
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -0
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +10 -2
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +61 -17
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +5 -0
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Slider/Slider.js +3 -1
- package/cjs/extensions/forms/Field/Slider/Slider.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js +21 -3
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js +2 -2
- package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +6 -0
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +6 -0
- package/cjs/extensions/forms/Iterate/Array/Array.js +51 -27
- package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +4 -12
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +29 -32
- package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
- package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +2 -2
- package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/en-GB.d.ts +2 -1
- package/cjs/extensions/forms/constants/locales/en-GB.js +3 -2
- package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/en-US.d.ts +2 -1
- package/cjs/extensions/forms/constants/locales/index.d.ts +4 -2
- package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +2 -1
- package/cjs/extensions/forms/constants/locales/nb-NO.js +3 -2
- package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/cjs/extensions/forms/hooks/useFieldProps.d.ts +4 -2
- package/cjs/extensions/forms/hooks/useFieldProps.js +40 -8
- package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/cjs/extensions/forms/hooks/useTranslation.d.ts +4 -1
- package/cjs/extensions/forms/hooks/useTranslation.js +6 -3
- package/cjs/extensions/forms/hooks/useTranslation.js.map +1 -1
- package/cjs/extensions/forms/hooks/useValueProps.d.ts +1 -1
- package/cjs/extensions/forms/hooks/useValueProps.js +2 -2
- package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/cjs/extensions/forms/style/dnb-forms.css +6 -0
- package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
- package/cjs/extensions/forms/types.d.ts +2 -1
- package/cjs/extensions/forms/types.js.map +1 -1
- 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/defaults.d.ts +1 -0
- package/cjs/shared/defaults.js +3 -1
- package/cjs/shared/defaults.js.map +1 -1
- package/cjs/shared/useTranslation.d.ts +11 -4
- package/cjs/shared/useTranslation.js +68 -22
- package/cjs/shared/useTranslation.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 +6 -0
- package/cjs/style/dnb-ui-components.min.css +1 -1
- 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 +6 -0
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/dnb-ui-forms.css +6 -0
- package/cjs/style/dnb-ui-forms.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +12 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +6 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +6 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +12 -0
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +6 -0
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +6 -0
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +12 -0
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +6 -0
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-forms.css +6 -0
- package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/components/number-format/NumberUtils.js.map +1 -1
- package/components/progress-indicator/ProgressIndicator.js +2 -2
- package/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/components/upload/UploadVerify.js +2 -2
- package/components/upload/UploadVerify.js.map +1 -1
- package/es/components/number-format/NumberUtils.js.map +1 -1
- package/es/components/progress-indicator/ProgressIndicator.js +2 -2
- package/es/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/es/components/upload/UploadVerify.js +2 -2
- package/es/components/upload/UploadVerify.js.map +1 -1
- package/es/extensions/forms/DataContext/Context.d.ts +1 -0
- package/es/extensions/forms/DataContext/Context.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.js +3 -4
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +5 -1
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.d.ts +3 -1
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +52 -12
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.d.ts +2 -0
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +18 -0
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -0
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +10 -2
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +59 -17
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +5 -0
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
- package/es/extensions/forms/Field/Slider/Slider.js +3 -1
- package/es/extensions/forms/Field/Slider/Slider.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.js +21 -3
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlockDocs.js +2 -2
- package/es/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +6 -0
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +6 -0
- package/es/extensions/forms/Iterate/Array/Array.js +52 -28
- package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +4 -12
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +29 -29
- package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
- package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +2 -2
- package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
- package/es/extensions/forms/constants/locales/en-GB.d.ts +2 -1
- package/es/extensions/forms/constants/locales/en-GB.js +3 -2
- package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/es/extensions/forms/constants/locales/en-US.d.ts +2 -1
- package/es/extensions/forms/constants/locales/index.d.ts +4 -2
- package/es/extensions/forms/constants/locales/nb-NO.d.ts +2 -1
- package/es/extensions/forms/constants/locales/nb-NO.js +3 -2
- package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/es/extensions/forms/hooks/useFieldProps.d.ts +4 -2
- package/es/extensions/forms/hooks/useFieldProps.js +40 -9
- package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/es/extensions/forms/hooks/useTranslation.d.ts +4 -1
- package/es/extensions/forms/hooks/useTranslation.js +7 -4
- package/es/extensions/forms/hooks/useTranslation.js.map +1 -1
- package/es/extensions/forms/hooks/useValueProps.d.ts +1 -1
- package/es/extensions/forms/hooks/useValueProps.js +2 -2
- package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/es/extensions/forms/style/dnb-forms.css +6 -0
- package/es/extensions/forms/style/dnb-forms.min.css +1 -1
- package/es/extensions/forms/types.d.ts +2 -1
- package/es/extensions/forms/types.js.map +1 -1
- 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/defaults.d.ts +1 -0
- package/es/shared/defaults.js +1 -0
- package/es/shared/defaults.js.map +1 -1
- package/es/shared/useTranslation.d.ts +11 -4
- package/es/shared/useTranslation.js +64 -22
- package/es/shared/useTranslation.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 +6 -0
- package/es/style/dnb-ui-components.min.css +1 -1
- 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 +6 -0
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/dnb-ui-forms.css +6 -0
- package/es/style/dnb-ui-forms.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +12 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +6 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +6 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +12 -0
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +6 -0
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +6 -0
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +12 -0
- package/es/style/themes/theme-ui/ui-theme-components.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-extensions.css +6 -0
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-forms.css +6 -0
- package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +5 -5
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/DataContext/Context.d.ts +1 -0
- package/extensions/forms/DataContext/Context.js.map +1 -1
- package/extensions/forms/DataContext/Provider/Provider.js +3 -4
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +5 -1
- package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.d.ts +3 -1
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +52 -12
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.d.ts +2 -0
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +18 -0
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -0
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.d.ts +10 -2
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +59 -17
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +5 -0
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
- package/extensions/forms/Field/Slider/Slider.js +3 -1
- package/extensions/forms/Field/Slider/Slider.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.js +21 -3
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlockDocs.js +2 -2
- package/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.css +6 -0
- package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.scss +6 -0
- package/extensions/forms/Iterate/Array/Array.js +52 -28
- package/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +4 -12
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +29 -32
- package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
- package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js +2 -2
- package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAgeTranslations.js.map +1 -1
- package/extensions/forms/constants/locales/en-GB.d.ts +2 -1
- package/extensions/forms/constants/locales/en-GB.js +3 -2
- package/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/extensions/forms/constants/locales/en-US.d.ts +2 -1
- package/extensions/forms/constants/locales/index.d.ts +4 -2
- package/extensions/forms/constants/locales/nb-NO.d.ts +2 -1
- package/extensions/forms/constants/locales/nb-NO.js +3 -2
- package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/extensions/forms/hooks/useFieldProps.d.ts +4 -2
- package/extensions/forms/hooks/useFieldProps.js +41 -9
- package/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/extensions/forms/hooks/useTranslation.d.ts +4 -1
- package/extensions/forms/hooks/useTranslation.js +7 -4
- package/extensions/forms/hooks/useTranslation.js.map +1 -1
- package/extensions/forms/hooks/useValueProps.d.ts +1 -1
- package/extensions/forms/hooks/useValueProps.js +2 -2
- package/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/extensions/forms/style/dnb-forms.css +6 -0
- package/extensions/forms/style/dnb-forms.min.css +1 -1
- package/extensions/forms/types.d.ts +2 -1
- package/extensions/forms/types.js.map +1 -1
- 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/defaults.d.ts +1 -0
- package/shared/defaults.js +1 -0
- package/shared/defaults.js.map +1 -1
- package/shared/useTranslation.d.ts +11 -4
- package/shared/useTranslation.js +64 -22
- package/shared/useTranslation.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 +6 -0
- package/style/dnb-ui-components.min.css +1 -1
- package/style/dnb-ui-core.css +1 -1
- package/style/dnb-ui-core.min.css +1 -1
- package/style/dnb-ui-extensions.css +6 -0
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/dnb-ui-forms.css +6 -0
- package/style/dnb-ui-forms.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.css +12 -0
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +6 -0
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-forms.css +6 -0
- package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +12 -0
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +6 -0
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-forms.css +6 -0
- package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-components.css +12 -0
- package/style/themes/theme-ui/ui-theme-components.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-extensions.css +6 -0
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-forms.css +6 -0
- package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +5 -5
- package/umd/dnb-ui-lib.min.js +1 -1
|
@@ -55,6 +55,9 @@ fieldset.dnb-forms-field-block:not([class*=space__left]) {
|
|
|
55
55
|
flex-grow: 1;
|
|
56
56
|
}
|
|
57
57
|
@media screen and (min-width: 25.00625em) {
|
|
58
|
+
.dnb-forms-field-block--width-custom {
|
|
59
|
+
width: calc(var(--dnb-forms-field-block-width));
|
|
60
|
+
}
|
|
58
61
|
.dnb-forms-field-block--width-small {
|
|
59
62
|
width: var(--forms-field-width--small);
|
|
60
63
|
}
|
|
@@ -94,6 +97,9 @@ fieldset.dnb-forms-field-block:not([class*=space__left]) {
|
|
|
94
97
|
width: 100%;
|
|
95
98
|
}
|
|
96
99
|
@media screen and (min-width: 25.00625em) {
|
|
100
|
+
.dnb-forms-field-block__contents--width-custom {
|
|
101
|
+
width: calc(var(--dnb-forms-field-block-content-width));
|
|
102
|
+
}
|
|
97
103
|
.dnb-forms-field-block__contents--width-small {
|
|
98
104
|
width: var(--forms-field-width--small);
|
|
99
105
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
: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__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:25.00625em){.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:25.00625em){.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:25.00625em){.dnb-forms-field-block__contents__composition--horizontal{align-items:flex-end}.dnb-forms-field-block__contents__composition--horizontal[class*=align-center]{align-items:center}}@media screen and (max-width:25em){.dnb-forms-field-block__contents__composition--horizontal{flex-flow:column;row-gap:var(--spacing-x-small)}}
|
|
1
|
+
: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__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:25.00625em){.dnb-forms-field-block--width-custom{width:calc(var(--dnb-forms-field-block-width))}.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:25.00625em){.dnb-forms-field-block__contents--width-custom{width:calc(var(--dnb-forms-field-block-content-width))}.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:25.00625em){.dnb-forms-field-block__contents__composition--horizontal{align-items:flex-end}.dnb-forms-field-block__contents__composition--horizontal[class*=align-center]{align-items:center}}@media screen and (max-width:25em){.dnb-forms-field-block__contents__composition--horizontal{flex-flow:column;row-gap:var(--spacing-x-small)}}
|
|
@@ -53,6 +53,9 @@ fieldset.dnb-forms-field-block {
|
|
|
53
53
|
flex-grow: 1;
|
|
54
54
|
}
|
|
55
55
|
@include allAbove(x-small) {
|
|
56
|
+
&-custom {
|
|
57
|
+
width: calc(var(--dnb-forms-field-block-width));
|
|
58
|
+
}
|
|
56
59
|
&-small {
|
|
57
60
|
width: var(--forms-field-width--small);
|
|
58
61
|
}
|
|
@@ -98,6 +101,9 @@ fieldset.dnb-forms-field-block {
|
|
|
98
101
|
width: 100%;
|
|
99
102
|
}
|
|
100
103
|
@include allAbove(x-small) {
|
|
104
|
+
&-custom {
|
|
105
|
+
width: calc(var(--dnb-forms-field-block-content-width));
|
|
106
|
+
}
|
|
101
107
|
&-small {
|
|
102
108
|
width: var(--forms-field-width--small);
|
|
103
109
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
4
4
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
5
5
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
6
|
-
import React, { useMemo, useRef, useEffect, useReducer, createRef, useContext } from 'react';
|
|
6
|
+
import React, { useMemo, useRef, useEffect, useReducer, createRef, useContext, useCallback } from 'react';
|
|
7
7
|
import classnames from 'classnames';
|
|
8
8
|
import pointer from '../../utils/json-pointer';
|
|
9
9
|
import { useFieldProps } from '../../hooks';
|
|
@@ -11,11 +11,13 @@ import { makeUniqueId } from '../../../../shared/component-helper';
|
|
|
11
11
|
import { Flex, FormStatus, HeightAnimation } from '../../../../components';
|
|
12
12
|
import { pickSpacingProps } from '../../../../components/flex/utils';
|
|
13
13
|
import useMountEffect from '../../../../shared/helpers/useMountEffect';
|
|
14
|
+
import useUpdateEffect from '../../../../shared/helpers/useUpdateEffect';
|
|
14
15
|
import { pickFlexContainerProps } from '../../../../components/flex/Container';
|
|
15
16
|
import IterateItemContext from '../IterateItemContext';
|
|
16
17
|
import SummaryListContext from '../../Value/SummaryList/SummaryListContext';
|
|
17
18
|
import ValueBlockContext from '../../ValueBlock/ValueBlockContext';
|
|
18
19
|
import FieldBoundaryProvider from '../../DataContext/FieldBoundary/FieldBoundaryProvider';
|
|
20
|
+
import DataContext from '../../DataContext/Context';
|
|
19
21
|
import useDataValue from '../../hooks/useDataValue';
|
|
20
22
|
import { useArrayLimit, useSwitchContainerMode } from '../hooks';
|
|
21
23
|
import { getMessage } from '../../FieldBlock';
|
|
@@ -23,6 +25,7 @@ import structuredClone from '@ungap/structured-clone';
|
|
|
23
25
|
function ArrayComponent(props) {
|
|
24
26
|
var _props$value;
|
|
25
27
|
const [salt, forceUpdate] = useReducer(() => ({}), {});
|
|
28
|
+
const dataContext = useContext(DataContext);
|
|
26
29
|
const summaryListContext = useContext(SummaryListContext);
|
|
27
30
|
const valueBlockContext = useContext(ValueBlockContext);
|
|
28
31
|
const {
|
|
@@ -34,42 +37,50 @@ function ArrayComponent(props) {
|
|
|
34
37
|
const {
|
|
35
38
|
getValueByPath
|
|
36
39
|
} = useDataValue();
|
|
40
|
+
const {
|
|
41
|
+
countPath,
|
|
42
|
+
countPathLimit = Infinity
|
|
43
|
+
} = props;
|
|
44
|
+
const getCountValue = useCallback(() => {
|
|
45
|
+
if (!countPath) {
|
|
46
|
+
return -1;
|
|
47
|
+
}
|
|
48
|
+
let countValue = parseFloat(getValueByPath(countPath));
|
|
49
|
+
if (!(countValue >= 0)) {
|
|
50
|
+
countValue = 0;
|
|
51
|
+
}
|
|
52
|
+
if (countValue > countPathLimit) {
|
|
53
|
+
countValue = countPathLimit;
|
|
54
|
+
}
|
|
55
|
+
return countValue;
|
|
56
|
+
}, [countPath, countPathLimit, getValueByPath]);
|
|
57
|
+
const countValue = getCountValue();
|
|
37
58
|
const preparedProps = useMemo(() => {
|
|
38
59
|
const {
|
|
39
60
|
path,
|
|
40
61
|
countPath,
|
|
41
|
-
countPathLimit = Infinity,
|
|
42
62
|
countPathTransform
|
|
43
63
|
} = props;
|
|
44
64
|
if (countPath) {
|
|
45
65
|
const arrayValue = getValueByPath(path);
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
if ((arrayValue === null || arrayValue === void 0 ? void 0 : arrayValue.length) !== countValue) {
|
|
54
|
-
const newValue = [];
|
|
55
|
-
for (let i = 0, l = countValue; i < l; i++) {
|
|
56
|
-
const value = arrayValue === null || arrayValue === void 0 ? void 0 : arrayValue[i];
|
|
57
|
-
newValue.push(countPathTransform === null || countPathTransform === void 0 ? void 0 : countPathTransform({
|
|
58
|
-
value,
|
|
59
|
-
index: i
|
|
60
|
-
}));
|
|
61
|
-
}
|
|
62
|
-
return _objectSpread(_objectSpread({
|
|
63
|
-
required: false
|
|
64
|
-
}, props), {}, {
|
|
65
|
-
value: newValue
|
|
66
|
-
});
|
|
66
|
+
const newValue = [];
|
|
67
|
+
for (let i = 0, l = countValue; i < l; i++) {
|
|
68
|
+
const value = arrayValue === null || arrayValue === void 0 ? void 0 : arrayValue[i];
|
|
69
|
+
newValue.push(countPathTransform ? countPathTransform({
|
|
70
|
+
value,
|
|
71
|
+
index: i
|
|
72
|
+
}) : value);
|
|
67
73
|
}
|
|
74
|
+
return _objectSpread(_objectSpread({
|
|
75
|
+
required: false
|
|
76
|
+
}, props), {}, {
|
|
77
|
+
value: newValue
|
|
78
|
+
});
|
|
68
79
|
}
|
|
69
80
|
return _objectSpread({
|
|
70
81
|
required: false
|
|
71
82
|
}, props);
|
|
72
|
-
}, [getValueByPath, props]);
|
|
83
|
+
}, [countValue, getValueByPath, props]);
|
|
73
84
|
const {
|
|
74
85
|
path,
|
|
75
86
|
value: arrayValue,
|
|
@@ -85,8 +96,24 @@ function ArrayComponent(props) {
|
|
|
85
96
|
onChange,
|
|
86
97
|
children
|
|
87
98
|
} = useFieldProps(preparedProps, {
|
|
88
|
-
updateContextDataInSync: true
|
|
99
|
+
updateContextDataInSync: true,
|
|
100
|
+
omitMultiplePathWarning: true,
|
|
101
|
+
forceUpdateWhenContextDataIsSet: Boolean(countPath)
|
|
89
102
|
});
|
|
103
|
+
const countValueRef = useRef();
|
|
104
|
+
useUpdateEffect(() => {
|
|
105
|
+
if (countPath) {
|
|
106
|
+
if (typeof countValueRef.current === 'number' && countValue !== countValueRef.current) {
|
|
107
|
+
window.requestAnimationFrame(() => {
|
|
108
|
+
dataContext.handlePathChange(path, getValueByPath(path));
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
countValueRef.current = countValue;
|
|
112
|
+
}
|
|
113
|
+
}, [countValue]);
|
|
114
|
+
useEffect(() => {
|
|
115
|
+
valueCountRef.current = arrayValue || [];
|
|
116
|
+
}, [arrayValue]);
|
|
90
117
|
useMountEffect(() => {
|
|
91
118
|
setChanged(true);
|
|
92
119
|
});
|
|
@@ -99,9 +126,6 @@ function ArrayComponent(props) {
|
|
|
99
126
|
const hadPushRef = useRef();
|
|
100
127
|
const innerRefs = useRef({});
|
|
101
128
|
const omitFlex = withoutFlex !== null && withoutFlex !== void 0 ? withoutFlex : summaryListContext || valueBlockContext;
|
|
102
|
-
useEffect(() => {
|
|
103
|
-
valueCountRef.current = arrayValue || [];
|
|
104
|
-
}, [arrayValue]);
|
|
105
129
|
const {
|
|
106
130
|
getNextContainerMode
|
|
107
131
|
} = useSwitchContainerMode();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Array.js","names":["React","useMemo","useRef","useEffect","useReducer","createRef","useContext","classnames","pointer","useFieldProps","makeUniqueId","Flex","FormStatus","HeightAnimation","pickSpacingProps","useMountEffect","pickFlexContainerProps","IterateItemContext","SummaryListContext","ValueBlockContext","FieldBoundaryProvider","useDataValue","useArrayLimit","useSwitchContainerMode","getMessage","structuredClone","ArrayComponent","props","_props$value","salt","forceUpdate","summaryListContext","valueBlockContext","setLimitProps","error","limitWarning","path","getValueByPath","preparedProps","countPath","countPathLimit","Infinity","countPathTransform","arrayValue","countValue","parseFloat","length","newValue","i","l","value","push","index","_objectSpread","required","limit","withoutFlex","emptyValue","placeholder","containerMode","animate","handleChange","setChanged","onChange","children","updateContextDataInSync","idsRef","isNewRef","modesRef","valueWhileClosingRef","valueCountRef","containerRef","hadPushRef","innerRefs","omitFlex","current","getNextContainerMode","arrayItems","_ref","list","limitedList","slice","map","_valueCountRef$curren","_modesRef$current$id","id","hasNewItems","isNew","_getNextContainerMode","itemContext","previousContainerMode","previous","initialContainerMode","modeOptions","options","switchContainerMode","mode","_isNewRef$current","preventUpdate","newArrayValue","set","handlePush","element","handleRemove","keepItems","splice","fulfillRemove","_modesRef$current","_isNewRef$current2","findIndex","indexOf","restoreOriginalValue","total","last","flexProps","className","innerRef","arrayElements","itemProps","elementRef","renderChildren","elementChild","contextValue","content","Array","isArray","child","createElement","Provider","key","Item","tabIndex","Stack","Fragment","show","Boolean","state","undefined","shellSpace","top","bottom","no_animation","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/Array/Array.tsx"],"sourcesContent":["import React, {\n useMemo,\n useRef,\n useEffect,\n useReducer,\n createRef,\n useContext,\n} from 'react'\nimport classnames from 'classnames'\nimport pointer from '../../utils/json-pointer'\nimport { useFieldProps } from '../../hooks'\nimport { makeUniqueId } from '../../../../shared/component-helper'\nimport { Flex, FormStatus, HeightAnimation } from '../../../../components'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport useMountEffect from '../../../../shared/helpers/useMountEffect'\nimport {\n BasicProps as FlexContainerProps,\n Props as FlexContainerAllProps,\n pickFlexContainerProps,\n} from '../../../../components/flex/Container'\nimport IterateItemContext, {\n IterateItemContextState,\n ModeOptions,\n} from '../IterateItemContext'\nimport SummaryListContext from '../../Value/SummaryList/SummaryListContext'\nimport ValueBlockContext from '../../ValueBlock/ValueBlockContext'\nimport FieldBoundaryProvider from '../../DataContext/FieldBoundary/FieldBoundaryProvider'\nimport useDataValue from '../../hooks/useDataValue'\nimport { useArrayLimit, useSwitchContainerMode } from '../hooks'\nimport { getMessage } from '../../FieldBlock'\n\nimport type { ContainerMode, ElementChild, Props, Value } from './types'\nimport type { Identifier } from '../../types'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So its a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\nexport type * from './types'\n\nfunction ArrayComponent(props: Props) {\n const [salt, forceUpdate] = useReducer(() => ({}), {})\n\n const summaryListContext = useContext(SummaryListContext)\n const valueBlockContext = useContext(ValueBlockContext)\n const { setLimitProps, error: limitWarning } = useArrayLimit({\n path: props.path,\n })\n\n const { getValueByPath } = useDataValue()\n const preparedProps = useMemo(() => {\n const {\n path,\n countPath,\n countPathLimit = Infinity,\n countPathTransform,\n } = props\n\n if (countPath) {\n const arrayValue = getValueByPath(path)\n let countValue = parseFloat(getValueByPath(countPath))\n if (!(countValue >= 0)) {\n countValue = 0\n }\n if (countValue > countPathLimit) {\n countValue = countPathLimit\n }\n if (arrayValue?.length !== countValue) {\n const newValue = []\n for (let i = 0, l = countValue; i < l; i++) {\n const value = arrayValue?.[i]\n newValue.push(countPathTransform?.({ value, index: i }))\n }\n\n return {\n required: false,\n ...props,\n value: newValue,\n }\n }\n }\n\n return { required: false, ...props }\n }, [getValueByPath, props])\n\n const {\n path,\n value: arrayValue,\n limit,\n error,\n withoutFlex,\n emptyValue,\n placeholder,\n containerMode,\n animate,\n handleChange,\n setChanged,\n onChange,\n children,\n } = useFieldProps(preparedProps, {\n // To ensure the defaultValue set on the Iterate.Array is set in the data context,\n // and will not overwrite defaultValues set by fields inside the Iterate.Array.\n updateContextDataInSync: true,\n })\n\n useMountEffect(() => {\n // To ensure the validator is called when a new item is added\n setChanged(true)\n })\n\n const idsRef = useRef<Array<Identifier>>([])\n const isNewRef = useRef<Record<string, boolean>>({})\n const modesRef = useRef<\n Record<\n Identifier,\n {\n current: ContainerMode\n previous?: ContainerMode\n options?: ModeOptions\n }\n >\n >({})\n const valueWhileClosingRef = useRef<Value>()\n const valueCountRef = useRef(arrayValue)\n const containerRef = useRef<HTMLDivElement>()\n const hadPushRef = useRef<boolean>()\n const innerRefs = useRef<\n Record<string, React.RefObject<HTMLDivElement>>\n >({})\n\n const omitFlex = withoutFlex ?? (summaryListContext || valueBlockContext)\n\n useEffect(() => {\n // Update inside the useEffect, to support React.StrictMode\n valueCountRef.current = arrayValue || []\n }, [arrayValue])\n\n const { getNextContainerMode } = useSwitchContainerMode()\n\n const arrayItems = useMemo(() => {\n const list = (valueWhileClosingRef.current || arrayValue) ?? []\n const limitedList =\n typeof limit === 'number' ? list.slice(0, limit) : list\n\n return limitedList.map((value, index) => {\n const id = idsRef.current[index] || makeUniqueId()\n\n const hasNewItems =\n arrayValue?.length > valueCountRef.current?.length\n\n if (!idsRef.current[index]) {\n isNewRef.current[id] = hasNewItems\n idsRef.current.push(id)\n }\n\n const isNew = isNewRef.current[id] || false\n if (!modesRef.current[id]?.current) {\n modesRef.current[id] = {\n current:\n containerMode ??\n (isNew ? getNextContainerMode() ?? 'edit' : 'auto'),\n }\n }\n\n const itemContext: IterateItemContextState = {\n id,\n path,\n value,\n index,\n arrayValue,\n containerRef,\n isNew,\n containerMode: modesRef.current[id].current,\n previousContainerMode: modesRef.current[id].previous,\n initialContainerMode: containerMode || 'auto',\n modeOptions: modesRef.current[id].options,\n switchContainerMode: (mode, options = {}) => {\n modesRef.current[id].previous = modesRef.current[id].current\n modesRef.current[id].current = mode\n modesRef.current[id].options = options\n delete isNewRef.current?.[id]\n if (options?.preventUpdate !== true) {\n forceUpdate()\n }\n },\n handleChange: (path, value) => {\n const newArrayValue = structuredClone(arrayValue)\n\n // Make sure we have a new object reference,\n // else two new objects will be the same\n newArrayValue[index] = { ...newArrayValue[index] }\n\n pointer.set(newArrayValue, path, value)\n handleChange(newArrayValue)\n },\n handlePush: (element) => {\n hadPushRef.current = true\n handleChange([...(arrayValue || []), element])\n },\n handleRemove: ({ keepItems = false } = {}) => {\n if (keepItems) {\n // Add a backup as the array value while animating\n valueWhileClosingRef.current = arrayValue\n }\n\n const newArrayValue = structuredClone(arrayValue)\n newArrayValue.splice(index, 1)\n handleChange(newArrayValue)\n },\n\n // - Called after animation end\n fulfillRemove: () => {\n valueWhileClosingRef.current = null\n delete modesRef.current?.[id]\n delete isNewRef.current?.[id]\n const findIndex = idsRef.current.indexOf(id)\n idsRef.current.splice(findIndex, 1)\n forceUpdate()\n },\n\n // - Called when cancel button press\n restoreOriginalValue: (value) => {\n if (value) {\n const newArrayValue = structuredClone(arrayValue)\n newArrayValue[index] = value\n handleChange(newArrayValue)\n }\n },\n }\n\n return itemContext\n })\n\n // In order to update \"valueWhileClosingRef\" we need to have \"salt\" in the deps array\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [salt, arrayValue, limit, path, handleChange])\n\n const total = arrayItems.length\n useEffect(() => {\n if (limit) {\n setLimitProps({ limit, total })\n }\n }, [total, limit, setLimitProps])\n\n // - Call the onChange callback when a new element is added without calling \"handlePush\"\n useMemo(() => {\n const last = arrayItems?.[arrayItems.length - 1]\n if (last?.isNew && !hadPushRef.current) {\n onChange?.(arrayValue)\n } else {\n hadPushRef.current = false\n }\n }, [arrayValue, arrayItems, onChange])\n\n const flexProps: FlexContainerProps & {\n innerRef: FlexContainerAllProps['innerRef']\n } = {\n className: classnames(\n 'dnb-forms-iterate',\n 'dnb-forms-section',\n props?.className\n ),\n ...pickFlexContainerProps(props as FlexContainerProps),\n ...pickSpacingProps(props),\n innerRef: containerRef,\n }\n\n const arrayElements =\n arrayValue === emptyValue || props?.value?.length === 0\n ? placeholder\n : arrayItems.map((itemProps) => {\n const { id, value, index } = itemProps\n const elementRef = (innerRefs.current[id] =\n innerRefs.current[id] || createRef<HTMLDivElement>())\n\n const renderChildren = (elementChild: ElementChild) => {\n return typeof elementChild === 'function'\n ? elementChild(value, index)\n : elementChild\n }\n\n const contextValue = {\n ...itemProps,\n elementRef,\n }\n\n const content = Array.isArray(children)\n ? children.map((child) => renderChildren(child))\n : renderChildren(children)\n\n if (omitFlex) {\n return (\n <IterateItemContext.Provider\n key={`element-${id}`}\n value={contextValue}\n >\n <FieldBoundaryProvider>{content}</FieldBoundaryProvider>\n </IterateItemContext.Provider>\n )\n }\n\n return (\n <Flex.Item\n className=\"dnb-forms-iterate__element\"\n tabIndex={-1}\n innerRef={elementRef}\n key={`element-${id}`}\n >\n <IterateItemContext.Provider value={contextValue}>\n <FieldBoundaryProvider>{content}</FieldBoundaryProvider>\n </IterateItemContext.Provider>\n </Flex.Item>\n )\n })\n\n const content = omitFlex ? (\n arrayElements\n ) : (\n <Flex.Stack {...flexProps}>{arrayElements}</Flex.Stack>\n )\n\n return (\n <>\n {animate ? <HeightAnimation>{content}</HeightAnimation> : content}\n\n <FormStatus\n show={Boolean(error || limitWarning)}\n state={!error && limitWarning ? 'warning' : undefined}\n shellSpace={{ top: 0, bottom: 'medium' }}\n no_animation={false}\n >\n {getMessage({ content: error || limitWarning })}\n </FormStatus>\n </>\n )\n}\n\nArrayComponent._supportsSpacingProps = true\nexport default ArrayComponent\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Array.js","names":["React","useMemo","useRef","useEffect","useReducer","createRef","useContext","useCallback","classnames","pointer","useFieldProps","makeUniqueId","Flex","FormStatus","HeightAnimation","pickSpacingProps","useMountEffect","useUpdateEffect","pickFlexContainerProps","IterateItemContext","SummaryListContext","ValueBlockContext","FieldBoundaryProvider","DataContext","useDataValue","useArrayLimit","useSwitchContainerMode","getMessage","structuredClone","ArrayComponent","props","_props$value","salt","forceUpdate","dataContext","summaryListContext","valueBlockContext","setLimitProps","error","limitWarning","path","getValueByPath","countPath","countPathLimit","Infinity","getCountValue","countValue","parseFloat","preparedProps","countPathTransform","arrayValue","newValue","i","l","value","push","index","_objectSpread","required","limit","withoutFlex","emptyValue","placeholder","containerMode","animate","handleChange","setChanged","onChange","children","updateContextDataInSync","omitMultiplePathWarning","forceUpdateWhenContextDataIsSet","Boolean","countValueRef","current","window","requestAnimationFrame","handlePathChange","valueCountRef","idsRef","isNewRef","modesRef","valueWhileClosingRef","containerRef","hadPushRef","innerRefs","omitFlex","getNextContainerMode","arrayItems","_ref","list","limitedList","slice","map","_valueCountRef$curren","_modesRef$current$id","id","hasNewItems","length","isNew","_getNextContainerMode","itemContext","previousContainerMode","previous","initialContainerMode","modeOptions","options","switchContainerMode","mode","_isNewRef$current","preventUpdate","newArrayValue","set","handlePush","element","handleRemove","keepItems","splice","fulfillRemove","_modesRef$current","_isNewRef$current2","findIndex","indexOf","restoreOriginalValue","total","last","flexProps","className","innerRef","arrayElements","itemProps","elementRef","renderChildren","elementChild","contextValue","content","Array","isArray","child","createElement","Provider","key","Item","tabIndex","Stack","Fragment","show","state","undefined","shellSpace","top","bottom","no_animation","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Iterate/Array/Array.tsx"],"sourcesContent":["import React, {\n useMemo,\n useRef,\n useEffect,\n useReducer,\n createRef,\n useContext,\n useCallback,\n} from 'react'\nimport classnames from 'classnames'\nimport pointer from '../../utils/json-pointer'\nimport { useFieldProps } from '../../hooks'\nimport { makeUniqueId } from '../../../../shared/component-helper'\nimport { Flex, FormStatus, HeightAnimation } from '../../../../components'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport useMountEffect from '../../../../shared/helpers/useMountEffect'\nimport useUpdateEffect from '../../../../shared/helpers/useUpdateEffect'\nimport {\n BasicProps as FlexContainerProps,\n Props as FlexContainerAllProps,\n pickFlexContainerProps,\n} from '../../../../components/flex/Container'\nimport IterateItemContext, {\n IterateItemContextState,\n ModeOptions,\n} from '../IterateItemContext'\nimport SummaryListContext from '../../Value/SummaryList/SummaryListContext'\nimport ValueBlockContext from '../../ValueBlock/ValueBlockContext'\nimport FieldBoundaryProvider from '../../DataContext/FieldBoundary/FieldBoundaryProvider'\nimport DataContext from '../../DataContext/Context'\nimport useDataValue from '../../hooks/useDataValue'\nimport { useArrayLimit, useSwitchContainerMode } from '../hooks'\nimport { getMessage } from '../../FieldBlock'\n\nimport type { ContainerMode, ElementChild, Props, Value } from './types'\nimport type { Identifier } from '../../types'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So its a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\nexport type * from './types'\n\nfunction ArrayComponent(props: Props) {\n const [salt, forceUpdate] = useReducer(() => ({}), {})\n\n const dataContext = useContext(DataContext)\n const summaryListContext = useContext(SummaryListContext)\n const valueBlockContext = useContext(ValueBlockContext)\n const { setLimitProps, error: limitWarning } = useArrayLimit({\n path: props.path,\n })\n\n const { getValueByPath } = useDataValue()\n const { countPath, countPathLimit = Infinity } = props\n const getCountValue = useCallback(() => {\n if (!countPath) {\n return -1\n }\n\n let countValue = parseFloat(getValueByPath(countPath))\n if (!(countValue >= 0)) {\n countValue = 0\n }\n if (countValue > countPathLimit) {\n countValue = countPathLimit\n }\n\n return countValue\n }, [countPath, countPathLimit, getValueByPath])\n const countValue = getCountValue()\n\n const preparedProps = useMemo(() => {\n const { path, countPath, countPathTransform } = props\n\n if (countPath) {\n const arrayValue = getValueByPath(path)\n const newValue = []\n for (let i = 0, l = countValue; i < l; i++) {\n const value = arrayValue?.[i]\n newValue.push(\n countPathTransform\n ? countPathTransform({ value, index: i })\n : value\n )\n }\n\n return {\n required: false,\n ...props,\n value: newValue,\n }\n }\n\n return { required: false, ...props }\n }, [countValue, getValueByPath, props])\n\n const {\n path,\n value: arrayValue,\n limit,\n error,\n withoutFlex,\n emptyValue,\n placeholder,\n containerMode,\n animate,\n handleChange,\n setChanged,\n onChange,\n children,\n } = useFieldProps(preparedProps, {\n // To ensure the defaultValue set on the Iterate.Array is set in the data context,\n // and will not overwrite defaultValues set by fields inside the Iterate.Array.\n updateContextDataInSync: true,\n omitMultiplePathWarning: true,\n forceUpdateWhenContextDataIsSet: Boolean(countPath),\n })\n\n // - Call onChange on the data context, if the count value changes\n const countValueRef = useRef<number>()\n useUpdateEffect(() => {\n if (countPath) {\n if (\n typeof countValueRef.current === 'number' &&\n countValue !== countValueRef.current\n ) {\n window.requestAnimationFrame(() => {\n dataContext.handlePathChange(path, getValueByPath(path))\n }) // so we get the correct value inside the array.\n }\n countValueRef.current = countValue\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [countValue])\n\n useEffect(() => {\n // Update inside the useEffect, to support React.StrictMode\n valueCountRef.current = arrayValue || []\n }, [arrayValue])\n\n useMountEffect(() => {\n // To ensure the validator is called when a new item is added\n setChanged(true)\n })\n\n const idsRef = useRef<Array<Identifier>>([])\n const isNewRef = useRef<Record<string, boolean>>({})\n const modesRef = useRef<\n Record<\n Identifier,\n {\n current: ContainerMode\n previous?: ContainerMode\n options?: ModeOptions\n }\n >\n >({})\n const valueWhileClosingRef = useRef<Value>()\n const valueCountRef = useRef(arrayValue)\n const containerRef = useRef<HTMLDivElement>()\n const hadPushRef = useRef<boolean>()\n const innerRefs = useRef<\n Record<string, React.RefObject<HTMLDivElement>>\n >({})\n\n const omitFlex = withoutFlex ?? (summaryListContext || valueBlockContext)\n\n const { getNextContainerMode } = useSwitchContainerMode()\n\n const arrayItems = useMemo(() => {\n const list = (valueWhileClosingRef.current || arrayValue) ?? []\n const limitedList =\n typeof limit === 'number' ? list.slice(0, limit) : list\n\n return limitedList.map((value, index) => {\n const id = idsRef.current[index] || makeUniqueId()\n\n const hasNewItems =\n arrayValue?.length > valueCountRef.current?.length\n\n if (!idsRef.current[index]) {\n isNewRef.current[id] = hasNewItems\n idsRef.current.push(id)\n }\n\n const isNew = isNewRef.current[id] || false\n if (!modesRef.current[id]?.current) {\n modesRef.current[id] = {\n current:\n containerMode ??\n (isNew ? getNextContainerMode() ?? 'edit' : 'auto'),\n }\n }\n\n const itemContext: IterateItemContextState = {\n id,\n path,\n value,\n index,\n arrayValue,\n containerRef,\n isNew,\n containerMode: modesRef.current[id].current,\n previousContainerMode: modesRef.current[id].previous,\n initialContainerMode: containerMode || 'auto',\n modeOptions: modesRef.current[id].options,\n switchContainerMode: (mode, options = {}) => {\n modesRef.current[id].previous = modesRef.current[id].current\n modesRef.current[id].current = mode\n modesRef.current[id].options = options\n delete isNewRef.current?.[id]\n if (options?.preventUpdate !== true) {\n forceUpdate()\n }\n },\n handleChange: (path, value) => {\n const newArrayValue = structuredClone(arrayValue)\n\n // Make sure we have a new object reference,\n // else two new objects will be the same\n newArrayValue[index] = { ...newArrayValue[index] }\n\n pointer.set(newArrayValue, path, value)\n handleChange(newArrayValue)\n },\n handlePush: (element) => {\n hadPushRef.current = true\n handleChange([...(arrayValue || []), element])\n },\n handleRemove: ({ keepItems = false } = {}) => {\n if (keepItems) {\n // Add a backup as the array value while animating\n valueWhileClosingRef.current = arrayValue\n }\n\n const newArrayValue = structuredClone(arrayValue)\n newArrayValue.splice(index, 1)\n handleChange(newArrayValue)\n },\n\n // - Called after animation end\n fulfillRemove: () => {\n valueWhileClosingRef.current = null\n delete modesRef.current?.[id]\n delete isNewRef.current?.[id]\n const findIndex = idsRef.current.indexOf(id)\n idsRef.current.splice(findIndex, 1)\n forceUpdate()\n },\n\n // - Called when cancel button press\n restoreOriginalValue: (value) => {\n if (value) {\n const newArrayValue = structuredClone(arrayValue)\n newArrayValue[index] = value\n handleChange(newArrayValue)\n }\n },\n }\n\n return itemContext\n })\n\n // In order to update \"valueWhileClosingRef\" we need to have \"salt\" in the deps array\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [salt, arrayValue, limit, path, handleChange])\n\n const total = arrayItems.length\n useEffect(() => {\n if (limit) {\n setLimitProps({ limit, total })\n }\n }, [total, limit, setLimitProps])\n\n // - Call the onChange callback when a new element is added without calling \"handlePush\"\n useMemo(() => {\n const last = arrayItems?.[arrayItems.length - 1]\n if (last?.isNew && !hadPushRef.current) {\n onChange?.(arrayValue)\n } else {\n hadPushRef.current = false\n }\n }, [arrayValue, arrayItems, onChange])\n\n const flexProps: FlexContainerProps & {\n innerRef: FlexContainerAllProps['innerRef']\n } = {\n className: classnames(\n 'dnb-forms-iterate',\n 'dnb-forms-section',\n props?.className\n ),\n ...pickFlexContainerProps(props as FlexContainerProps),\n ...pickSpacingProps(props),\n innerRef: containerRef,\n }\n\n const arrayElements =\n arrayValue === emptyValue || props?.value?.length === 0\n ? placeholder\n : arrayItems.map((itemProps) => {\n const { id, value, index } = itemProps\n const elementRef = (innerRefs.current[id] =\n innerRefs.current[id] || createRef<HTMLDivElement>())\n\n const renderChildren = (elementChild: ElementChild) => {\n return typeof elementChild === 'function'\n ? elementChild(value, index)\n : elementChild\n }\n\n const contextValue = {\n ...itemProps,\n elementRef,\n }\n\n const content = Array.isArray(children)\n ? children.map((child) => renderChildren(child))\n : renderChildren(children)\n\n if (omitFlex) {\n return (\n <IterateItemContext.Provider\n key={`element-${id}`}\n value={contextValue}\n >\n <FieldBoundaryProvider>{content}</FieldBoundaryProvider>\n </IterateItemContext.Provider>\n )\n }\n\n return (\n <Flex.Item\n className=\"dnb-forms-iterate__element\"\n tabIndex={-1}\n innerRef={elementRef}\n key={`element-${id}`}\n >\n <IterateItemContext.Provider value={contextValue}>\n <FieldBoundaryProvider>{content}</FieldBoundaryProvider>\n </IterateItemContext.Provider>\n </Flex.Item>\n )\n })\n\n const content = omitFlex ? (\n arrayElements\n ) : (\n <Flex.Stack {...flexProps}>{arrayElements}</Flex.Stack>\n )\n\n return (\n <>\n {animate ? <HeightAnimation>{content}</HeightAnimation> : content}\n\n <FormStatus\n show={Boolean(error || limitWarning)}\n state={!error && limitWarning ? 'warning' : undefined}\n shellSpace={{ top: 0, bottom: 'medium' }}\n no_animation={false}\n >\n {getMessage({ content: error || limitWarning })}\n </FormStatus>\n </>\n )\n}\n\nArrayComponent._supportsSpacingProps = true\nexport default ArrayComponent\n"],"mappings":"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"}
|
|
@@ -6,19 +6,11 @@ import StringValue from '../String';
|
|
|
6
6
|
import useTranslation from '../../hooks/useTranslation';
|
|
7
7
|
import { useValueProps } from '../../hooks';
|
|
8
8
|
function PostalCodeAndCity(props) {
|
|
9
|
-
var _props$value, _props$label;
|
|
9
|
+
var _useValueProps$value, _useValueProps$value2, _props$value, _props$label;
|
|
10
10
|
const translations = useTranslation().PostalCodeAndCity;
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
if (cityProps.value) {
|
|
15
|
-
city.value = cityProps.value;
|
|
16
|
-
}
|
|
17
|
-
const postalCodeProps = useValueProps(postalCode);
|
|
18
|
-
if (postalCodeProps.value) {
|
|
19
|
-
postalCode.value = postalCodeProps.value;
|
|
20
|
-
}
|
|
21
|
-
const value = (_props$value = props.value) !== null && _props$value !== void 0 ? _props$value : (postalCode || city ? [postalCode === null || postalCode === void 0 ? void 0 : postalCode.value, city === null || city === void 0 ? void 0 : city.value].filter(Boolean).join(' ') : undefined) || undefined;
|
|
11
|
+
const cityValue = (_useValueProps$value = useValueProps((props === null || props === void 0 ? void 0 : props.city) || {}).value) !== null && _useValueProps$value !== void 0 ? _useValueProps$value : props.value;
|
|
12
|
+
const postalCodeValue = (_useValueProps$value2 = useValueProps((props === null || props === void 0 ? void 0 : props.postalCode) || {}).value) !== null && _useValueProps$value2 !== void 0 ? _useValueProps$value2 : props.value;
|
|
13
|
+
const value = (_props$value = props.value) !== null && _props$value !== void 0 ? _props$value : (postalCodeValue || cityValue ? [postalCodeValue, cityValue].filter(Boolean).join(' ') : undefined) || undefined;
|
|
22
14
|
const label = (_props$label = props.label) !== null && _props$label !== void 0 ? _props$label : props.inline ? undefined : translations.label;
|
|
23
15
|
const stringValueProps = _objectSpread(_objectSpread({}, props), {}, {
|
|
24
16
|
value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostalCodeAndCity.js","names":["React","StringValue","useTranslation","useValueProps","PostalCodeAndCity","props","_props$value","_props$label","translations","
|
|
1
|
+
{"version":3,"file":"PostalCodeAndCity.js","names":["React","StringValue","useTranslation","useValueProps","PostalCodeAndCity","props","_useValueProps$value","_useValueProps$value2","_props$value","_props$label","translations","cityValue","city","value","postalCodeValue","postalCode","filter","Boolean","join","undefined","label","inline","stringValueProps","_objectSpread","createElement","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.tsx"],"sourcesContent":["import React from 'react'\nimport StringValue, { Props as StringValueProps } from '../String'\nimport useTranslation from '../../hooks/useTranslation'\nimport { useValueProps } from '../../hooks'\n\nexport type Props = StringValueProps &\n Partial<Record<'postalCode' | 'city', StringValueProps>>\n\nfunction PostalCodeAndCity(props: Props) {\n const translations = useTranslation().PostalCodeAndCity\n\n const cityValue = useValueProps(props?.city || {}).value ?? props.value\n const postalCodeValue =\n useValueProps(props?.postalCode || {}).value ?? props.value\n\n const value =\n props.value ??\n ((postalCodeValue || cityValue\n ? [postalCodeValue, cityValue].filter(Boolean).join(' ')\n : undefined) ||\n undefined)\n\n const label =\n props.label ?? (props.inline ? undefined : translations.label)\n\n const stringValueProps: Props = {\n ...props,\n value,\n label,\n }\n\n return <StringValue {...stringValueProps} />\n}\n\nPostalCodeAndCity._supportsSpacingProps = true\nexport default PostalCodeAndCity\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,WAAW,MAAqC,WAAW;AAClE,OAAOC,cAAc,MAAM,4BAA4B;AACvD,SAASC,aAAa,QAAQ,aAAa;AAK3C,SAASC,iBAAiBA,CAACC,KAAY,EAAE;EAAA,IAAAC,oBAAA,EAAAC,qBAAA,EAAAC,YAAA,EAAAC,YAAA;EACvC,MAAMC,YAAY,GAAGR,cAAc,CAAC,CAAC,CAACE,iBAAiB;EAEvD,MAAMO,SAAS,IAAAL,oBAAA,GAAGH,aAAa,CAAC,CAAAE,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEO,IAAI,KAAI,CAAC,CAAC,CAAC,CAACC,KAAK,cAAAP,oBAAA,cAAAA,oBAAA,GAAID,KAAK,CAACQ,KAAK;EACvE,MAAMC,eAAe,IAAAP,qBAAA,GACnBJ,aAAa,CAAC,CAAAE,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEU,UAAU,KAAI,CAAC,CAAC,CAAC,CAACF,KAAK,cAAAN,qBAAA,cAAAA,qBAAA,GAAIF,KAAK,CAACQ,KAAK;EAE7D,MAAMA,KAAK,IAAAL,YAAA,GACTH,KAAK,CAACQ,KAAK,cAAAL,YAAA,cAAAA,YAAA,GACV,CAACM,eAAe,IAAIH,SAAS,GAC1B,CAACG,eAAe,EAAEH,SAAS,CAAC,CAACK,MAAM,CAACC,OAAO,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,GACtDC,SAAS,KACXA,SAAU;EAEd,MAAMC,KAAK,IAAAX,YAAA,GACTJ,KAAK,CAACe,KAAK,cAAAX,YAAA,cAAAA,YAAA,GAAKJ,KAAK,CAACgB,MAAM,GAAGF,SAAS,GAAGT,YAAY,CAACU,KAAM;EAEhE,MAAME,gBAAuB,GAAAC,aAAA,CAAAA,aAAA,KACxBlB,KAAK;IACRQ,KAAK;IACLO;EAAK,EACN;EAED,OAAOpB,KAAA,CAAAwB,aAAA,CAACvB,WAAW,EAAKqB,gBAAmB,CAAC;AAC9C;AAEAlB,iBAAiB,CAACqB,qBAAqB,GAAG,IAAI;AAC9C,eAAerB,iBAAiB"}
|
|
@@ -33,6 +33,10 @@ function EditContainer({
|
|
|
33
33
|
enableAdditionalQuestions
|
|
34
34
|
}) {
|
|
35
35
|
const tr = Form.useTranslation();
|
|
36
|
+
const {
|
|
37
|
+
getValue
|
|
38
|
+
} = Form.useData();
|
|
39
|
+
const hasChildren = getValue('/hasChildren') === true;
|
|
36
40
|
return React.createElement(Card, _extends({
|
|
37
41
|
stack: true
|
|
38
42
|
}, spacingProps), React.createElement(Lead, null, tr.ChildrenWithAge.hasChildren.title), React.createElement(Field.Boolean, {
|
|
@@ -52,19 +56,16 @@ function EditContainer({
|
|
|
52
56
|
minimum: tr.ChildrenWithAge.countChildren.required,
|
|
53
57
|
required: tr.ChildrenWithAge.countChildren.required
|
|
54
58
|
},
|
|
59
|
+
defaultValue: 1,
|
|
55
60
|
width: "small",
|
|
61
|
+
showStepControls: true,
|
|
56
62
|
minimum: 1,
|
|
57
63
|
maximum: 20,
|
|
58
|
-
showStepControls: true,
|
|
59
64
|
decimalLimit: 0,
|
|
60
65
|
allowNegative: false
|
|
61
|
-
}), React.createElement(
|
|
62
|
-
pathTruthy: "/countChildren",
|
|
63
|
-
animate: true
|
|
64
|
-
}, React.createElement(Iterate.Array, {
|
|
66
|
+
}), React.createElement(Iterate.Array, {
|
|
65
67
|
path: "/children",
|
|
66
68
|
countPath: "/countChildren",
|
|
67
|
-
countPathTransform: transformAgeItem,
|
|
68
69
|
countPathLimit: 20,
|
|
69
70
|
animate: true
|
|
70
71
|
}, React.createElement(Field.Number, {
|
|
@@ -79,7 +80,10 @@ function EditContainer({
|
|
|
79
80
|
maximum: 17,
|
|
80
81
|
decimalLimit: 0,
|
|
81
82
|
allowNegative: false
|
|
82
|
-
}))), (enableAdditionalQuestions === null || enableAdditionalQuestions === void 0 ? void 0 : enableAdditionalQuestions.includes('daycare')) && React.createElement(
|
|
83
|
+
}))), (enableAdditionalQuestions === null || enableAdditionalQuestions === void 0 ? void 0 : enableAdditionalQuestions.includes('daycare')) && React.createElement(Form.Visibility, {
|
|
84
|
+
pathTrue: "/hasChildren",
|
|
85
|
+
animate: true
|
|
86
|
+
}, React.createElement(Field.Boolean, {
|
|
83
87
|
path: "/usesDaycare",
|
|
84
88
|
label: tr.ChildrenWithAge.usesDaycare.fieldLabel,
|
|
85
89
|
variant: "buttons",
|
|
@@ -88,9 +92,9 @@ function EditContainer({
|
|
|
88
92
|
},
|
|
89
93
|
help: {
|
|
90
94
|
title: tr.ChildrenWithAge.usesDaycare.fieldLabel,
|
|
91
|
-
content: tr.ChildrenWithAge.usesDaycare.helpText
|
|
95
|
+
content: tr.renderMessage(tr.ChildrenWithAge.usesDaycare.helpText)
|
|
92
96
|
}
|
|
93
|
-
}), (enableAdditionalQuestions === null || enableAdditionalQuestions === void 0 ? void 0 : enableAdditionalQuestions.includes('daycare')) && React.createElement(Form.Visibility, {
|
|
97
|
+
})), (enableAdditionalQuestions === null || enableAdditionalQuestions === void 0 ? void 0 : enableAdditionalQuestions.includes('daycare')) && hasChildren && React.createElement(Form.Visibility, {
|
|
94
98
|
pathTrue: "/usesDaycare",
|
|
95
99
|
animate: true
|
|
96
100
|
}, React.createElement(Field.Currency, {
|
|
@@ -99,16 +103,20 @@ function EditContainer({
|
|
|
99
103
|
errorMessages: {
|
|
100
104
|
required: tr.ChildrenWithAge.dayCareExpenses.required
|
|
101
105
|
},
|
|
102
|
-
minimum:
|
|
106
|
+
minimum: 1,
|
|
107
|
+
decimalLimit: 0,
|
|
103
108
|
allowNegative: false
|
|
104
|
-
})), (enableAdditionalQuestions === null || enableAdditionalQuestions === void 0 ? void 0 : enableAdditionalQuestions.includes('joint-responsibility')) && React.createElement(
|
|
109
|
+
})), (enableAdditionalQuestions === null || enableAdditionalQuestions === void 0 ? void 0 : enableAdditionalQuestions.includes('joint-responsibility')) && React.createElement(Form.Visibility, {
|
|
110
|
+
pathTrue: "/hasChildren",
|
|
111
|
+
animate: true
|
|
112
|
+
}, React.createElement(Field.Boolean, {
|
|
105
113
|
path: "/hasJointResponsibility",
|
|
106
114
|
label: tr.ChildrenWithAge.hasJointResponsibility.fieldLabel,
|
|
107
115
|
variant: "buttons",
|
|
108
116
|
errorMessages: {
|
|
109
117
|
required: tr.ChildrenWithAge.hasJointResponsibility.required
|
|
110
118
|
}
|
|
111
|
-
}), (enableAdditionalQuestions === null || enableAdditionalQuestions === void 0 ? void 0 : enableAdditionalQuestions.includes('joint-responsibility')) && React.createElement(Form.Visibility, {
|
|
119
|
+
})), (enableAdditionalQuestions === null || enableAdditionalQuestions === void 0 ? void 0 : enableAdditionalQuestions.includes('joint-responsibility')) && hasChildren && React.createElement(Form.Visibility, {
|
|
112
120
|
pathTrue: "/hasJointResponsibility",
|
|
113
121
|
animate: true
|
|
114
122
|
}, React.createElement(Field.Currency, {
|
|
@@ -117,19 +125,16 @@ function EditContainer({
|
|
|
117
125
|
errorMessages: {
|
|
118
126
|
required: tr.ChildrenWithAge.jointResponsibilityExpenses.required
|
|
119
127
|
},
|
|
120
|
-
minimum:
|
|
128
|
+
minimum: 1,
|
|
129
|
+
decimalLimit: 0,
|
|
121
130
|
allowNegative: false
|
|
122
|
-
})))
|
|
131
|
+
})));
|
|
123
132
|
}
|
|
124
133
|
function SummaryContainer({
|
|
125
134
|
spacingProps,
|
|
126
135
|
toWizardStep
|
|
127
136
|
}) {
|
|
128
137
|
const tr = Form.useTranslation();
|
|
129
|
-
const {
|
|
130
|
-
getValue
|
|
131
|
-
} = Form.useData();
|
|
132
|
-
const hasNoChildren = getValue('/hasChildren') === false;
|
|
133
138
|
return React.createElement(Card, _extends({
|
|
134
139
|
stack: true
|
|
135
140
|
}, spacingProps), React.createElement(Lead, null, tr.ChildrenWithAge.hasChildren.title), React.createElement(Value.SummaryList, null, React.createElement(Value.Boolean, {
|
|
@@ -141,11 +146,9 @@ function SummaryContainer({
|
|
|
141
146
|
path: "/countChildren",
|
|
142
147
|
label: tr.ChildrenWithAge.countChildren.fieldLabel,
|
|
143
148
|
suffix: tr.ChildrenWithAge.countChildren.suffix,
|
|
144
|
-
maximum: 20
|
|
145
|
-
transformIn: value => hasNoChildren ? 0 : value
|
|
149
|
+
maximum: 20
|
|
146
150
|
}), React.createElement(Iterate.Array, {
|
|
147
|
-
path: "/children"
|
|
148
|
-
limit: hasNoChildren ? 0 : undefined
|
|
151
|
+
path: "/children"
|
|
149
152
|
}, React.createElement(Value.Number, {
|
|
150
153
|
itemPath: "/age",
|
|
151
154
|
label: tr.ChildrenWithAge.childrenAge.fieldLabel,
|
|
@@ -160,7 +163,8 @@ function SummaryContainer({
|
|
|
160
163
|
pathTrue: "/usesDaycare"
|
|
161
164
|
}, React.createElement(Value.Currency, {
|
|
162
165
|
label: tr.ChildrenWithAge.dayCareExpenses.fieldLabel,
|
|
163
|
-
path: "/daycareExpenses"
|
|
166
|
+
path: "/daycareExpenses",
|
|
167
|
+
decimals: "0"
|
|
164
168
|
}))), React.createElement(Form.Visibility, {
|
|
165
169
|
pathDefined: "/hasJointResponsibility"
|
|
166
170
|
}, React.createElement(Value.Boolean, {
|
|
@@ -170,15 +174,11 @@ function SummaryContainer({
|
|
|
170
174
|
pathTrue: "/hasJointResponsibility"
|
|
171
175
|
}, React.createElement(Value.Currency, {
|
|
172
176
|
label: tr.ChildrenWithAge.jointResponsibilityExpenses.fieldLabel,
|
|
173
|
-
path: "/jointResponsibilityExpenses"
|
|
177
|
+
path: "/jointResponsibilityExpenses",
|
|
178
|
+
decimals: "0"
|
|
174
179
|
}))))), typeof toWizardStep === 'number' ? React.createElement(Wizard.EditButton, {
|
|
175
180
|
toStep: toWizardStep
|
|
176
181
|
}) : null);
|
|
177
182
|
}
|
|
178
|
-
const transformAgeItem = ({
|
|
179
|
-
value
|
|
180
|
-
}) => Object.prototype.hasOwnProperty.call(value || {}, 'age') ? value : {
|
|
181
|
-
age: undefined
|
|
182
|
-
};
|
|
183
183
|
ChildrenWithAge._supportsSpacingProps = true;
|
|
184
184
|
//# sourceMappingURL=ChildrenWithAge.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChildrenWithAge.js","names":["React","Field","Form","Iterate","Value","Wizard","Card","Lead","translations","omitSpacingProps","pickSpacingProps","ChildrenWithAge","_ref","mode","enableAdditionalQuestions","toWizardStep","props","_objectWithoutProperties","_excluded","spacingProps","restProps","createElement","Section","_extends","required","SummaryContainer","EditContainer","tr","useTranslation","stack","hasChildren","title","Boolean","path","label","fieldLabel","variant","errorMessages","Visibility","pathTrue","animate","Number","countChildren","minimum","width","maximum","showStepControls","decimalLimit","allowNegative","pathTruthy","Array","countPath","countPathTransform","transformAgeItem","countPathLimit","itemPath","childrenAge","placeholder","includes","usesDaycare","help","content","helpText","Currency","dayCareExpenses","hasJointResponsibility","jointResponsibilityExpenses","getValue","useData","hasNoChildren","SummaryList","suffix","transformIn","value","limit","undefined","defaultValue","pathDefined","EditButton","toStep","Object","prototype","hasOwnProperty","call","age","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.tsx"],"sourcesContent":["import React from 'react'\nimport { Field, Form, Iterate, Value, Wizard } from '../..'\nimport { Card } from '../../../../components'\nimport { Lead } from '../../../../elements'\nimport { Translation, translations } from './ChildrenWithAgeTranslations'\nimport type { SectionProps } from '../../Form/Section'\nimport {\n omitSpacingProps,\n pickSpacingProps,\n} from '../../../../components/flex/utils'\nimport { SpacingProps } from '../../../../shared/types'\n\ntype Mode = 'edit' | 'summary'\ntype Variant = Array<'joint-responsibility' | 'daycare'>\n\nexport type Props = SectionProps & {\n mode?: Mode\n enableAdditionalQuestions?: Variant\n toWizardStep?: number\n} & SpacingProps\n\nexport default function ChildrenWithAge({\n mode,\n enableAdditionalQuestions,\n toWizardStep,\n ...props\n}: Props) {\n const spacingProps = pickSpacingProps<Props>(props)\n const restProps = omitSpacingProps(props)\n return (\n <Form.Section translations={translations} required {...restProps}>\n {mode === 'summary' ? (\n <SummaryContainer\n toWizardStep={toWizardStep}\n spacingProps={spacingProps}\n enableAdditionalQuestions={enableAdditionalQuestions}\n />\n ) : (\n <EditContainer\n enableAdditionalQuestions={enableAdditionalQuestions}\n spacingProps={spacingProps}\n />\n )}\n </Form.Section>\n )\n}\n\nfunction EditContainer({\n spacingProps,\n enableAdditionalQuestions,\n}: Props & {\n spacingProps?: SpacingProps\n}) {\n const tr = Form.useTranslation<Translation>()\n\n return (\n <Card stack {...spacingProps}>\n <Lead>{tr.ChildrenWithAge.hasChildren.title}</Lead>\n\n <Field.Boolean\n path=\"/hasChildren\"\n label={tr.ChildrenWithAge.hasChildren.fieldLabel}\n variant=\"buttons\"\n errorMessages={{\n required: tr.ChildrenWithAge.hasChildren.required,\n }}\n />\n\n <Form.Visibility pathTrue=\"/hasChildren\" animate>\n <Field.Number\n path=\"/countChildren\"\n label={tr.ChildrenWithAge.countChildren.fieldLabel}\n errorMessages={{\n minimum: tr.ChildrenWithAge.countChildren.required,\n required: tr.ChildrenWithAge.countChildren.required,\n }}\n width=\"small\"\n minimum={1}\n maximum={20}\n showStepControls\n decimalLimit={0}\n allowNegative={false}\n />\n\n <Form.Visibility pathTruthy=\"/countChildren\" animate>\n <Iterate.Array\n path=\"/children\"\n countPath=\"/countChildren\"\n countPathTransform={transformAgeItem}\n countPathLimit={20}\n animate\n >\n <Field.Number\n itemPath=\"/age\"\n label={tr.ChildrenWithAge.childrenAge.fieldLabel}\n errorMessages={{\n required: tr.ChildrenWithAge.childrenAge.required,\n }}\n placeholder=\"0\"\n width=\"small\"\n minimum={0}\n maximum={17}\n decimalLimit={0}\n allowNegative={false}\n />\n </Iterate.Array>\n </Form.Visibility>\n\n {enableAdditionalQuestions?.includes('daycare') && (\n <Field.Boolean\n path=\"/usesDaycare\"\n label={tr.ChildrenWithAge.usesDaycare.fieldLabel}\n variant=\"buttons\"\n errorMessages={{\n required: tr.ChildrenWithAge.usesDaycare.required,\n }}\n help={{\n title: tr.ChildrenWithAge.usesDaycare.fieldLabel,\n content: tr.ChildrenWithAge.usesDaycare.helpText,\n }}\n />\n )}\n\n {enableAdditionalQuestions?.includes('daycare') && (\n <Form.Visibility pathTrue=\"/usesDaycare\" animate>\n <Field.Currency\n path=\"/daycareExpenses\"\n label={tr.ChildrenWithAge.dayCareExpenses.fieldLabel}\n errorMessages={{\n required: tr.ChildrenWithAge.dayCareExpenses.required,\n }}\n minimum={0}\n allowNegative={false}\n />\n </Form.Visibility>\n )}\n\n {enableAdditionalQuestions?.includes('joint-responsibility') && (\n <Field.Boolean\n path=\"/hasJointResponsibility\"\n label={tr.ChildrenWithAge.hasJointResponsibility.fieldLabel}\n variant=\"buttons\"\n errorMessages={{\n required: tr.ChildrenWithAge.hasJointResponsibility.required,\n }}\n />\n )}\n {enableAdditionalQuestions?.includes('joint-responsibility') && (\n <Form.Visibility pathTrue=\"/hasJointResponsibility\" animate>\n <Field.Currency\n path=\"/jointResponsibilityExpenses\"\n label={\n tr.ChildrenWithAge.jointResponsibilityExpenses.fieldLabel\n }\n errorMessages={{\n required:\n tr.ChildrenWithAge.jointResponsibilityExpenses.required,\n }}\n minimum={0}\n allowNegative={false}\n />\n </Form.Visibility>\n )}\n </Form.Visibility>\n </Card>\n )\n}\n\nfunction SummaryContainer({\n spacingProps,\n toWizardStep,\n}: Props & {\n spacingProps?: SpacingProps\n}) {\n const tr = Form.useTranslation<Translation>()\n\n const { getValue } = Form.useData()\n const hasNoChildren = getValue('/hasChildren') === false\n\n return (\n <Card stack {...spacingProps}>\n {<Lead>{tr.ChildrenWithAge.hasChildren.title}</Lead>}\n\n <Value.SummaryList>\n <Value.Boolean\n path=\"/hasChildren\"\n label={tr.ChildrenWithAge.hasChildren.fieldLabel}\n />\n <Form.Visibility pathTrue=\"/hasChildren\">\n <Value.Number\n path=\"/countChildren\"\n label={tr.ChildrenWithAge.countChildren.fieldLabel}\n suffix={tr.ChildrenWithAge.countChildren.suffix}\n maximum={20}\n transformIn={(value) => (hasNoChildren ? 0 : value)}\n />\n <Iterate.Array\n path=\"/children\"\n limit={hasNoChildren ? 0 : undefined}\n >\n <Value.Number\n itemPath=\"/age\"\n label={tr.ChildrenWithAge.childrenAge.fieldLabel}\n suffix={tr.ChildrenWithAge.childrenAge.suffix}\n defaultValue=\"–\"\n />\n </Iterate.Array>\n <Form.Visibility pathDefined=\"/usesDaycare\">\n <Value.Boolean\n label={tr.ChildrenWithAge.usesDaycare.fieldLabel}\n path=\"/usesDaycare\"\n />\n <Form.Visibility pathTrue=\"/usesDaycare\">\n <Value.Currency\n label={tr.ChildrenWithAge.dayCareExpenses.fieldLabel}\n path=\"/daycareExpenses\"\n />\n </Form.Visibility>\n </Form.Visibility>\n\n <Form.Visibility pathDefined=\"/hasJointResponsibility\">\n <Value.Boolean\n path=\"/hasJointResponsibility\"\n label={tr.ChildrenWithAge.hasJointResponsibility.fieldLabel}\n />\n <Form.Visibility pathTrue=\"/hasJointResponsibility\">\n <Value.Currency\n label={\n tr.ChildrenWithAge.jointResponsibilityExpenses.fieldLabel\n }\n path=\"/jointResponsibilityExpenses\"\n />\n </Form.Visibility>\n </Form.Visibility>\n </Form.Visibility>\n </Value.SummaryList>\n\n {typeof toWizardStep === 'number' ? (\n <Wizard.EditButton toStep={toWizardStep} />\n ) : null}\n </Card>\n )\n}\n\nconst transformAgeItem = ({ value }) =>\n Object.prototype.hasOwnProperty.call(value || {}, 'age')\n ? value\n : { age: undefined }\n\nChildrenWithAge._supportsSpacingProps = true\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,KAAK,EAAEC,IAAI,EAAEC,OAAO,EAAEC,KAAK,EAAEC,MAAM,QAAQ,OAAO;AAC3D,SAASC,IAAI,QAAQ,wBAAwB;AAC7C,SAASC,IAAI,QAAQ,sBAAsB;AAC3C,SAAsBC,YAAY,QAAQ,+BAA+B;AAEzE,SACEC,gBAAgB,EAChBC,gBAAgB,QACX,mCAAmC;AAY1C,eAAe,SAASC,eAAeA,CAAAC,IAAA,EAK7B;EAAA,IAL8B;MACtCC,IAAI;MACJC,yBAAyB;MACzBC;IAEK,CAAC,GAAAH,IAAA;IADHI,KAAK,GAAAC,wBAAA,CAAAL,IAAA,EAAAM,SAAA;EAER,MAAMC,YAAY,GAAGT,gBAAgB,CAAQM,KAAK,CAAC;EACnD,MAAMI,SAAS,GAAGX,gBAAgB,CAACO,KAAK,CAAC;EACzC,OACEhB,KAAA,CAAAqB,aAAA,CAACnB,IAAI,CAACoB,OAAO,EAAAC,QAAA;IAACf,YAAY,EAAEA,YAAa;IAACgB,QAAQ;EAAA,GAAKJ,SAAS,GAC7DP,IAAI,KAAK,SAAS,GACjBb,KAAA,CAAAqB,aAAA,CAACI,gBAAgB;IACfV,YAAY,EAAEA,YAAa;IAC3BI,YAAY,EAAEA,YAAa;IAC3BL,yBAAyB,EAAEA;EAA0B,CACtD,CAAC,GAEFd,KAAA,CAAAqB,aAAA,CAACK,aAAa;IACZZ,yBAAyB,EAAEA,yBAA0B;IACrDK,YAAY,EAAEA;EAAa,CAC5B,CAES,CAAC;AAEnB;AAEA,SAASO,aAAaA,CAAC;EACrBP,YAAY;EACZL;AAGF,CAAC,EAAE;EACD,MAAMa,EAAE,GAAGzB,IAAI,CAAC0B,cAAc,CAAc,CAAC;EAE7C,OACE5B,KAAA,CAAAqB,aAAA,CAACf,IAAI,EAAAiB,QAAA;IAACM,KAAK;EAAA,GAAKV,YAAY,GAC1BnB,KAAA,CAAAqB,aAAA,CAACd,IAAI,QAAEoB,EAAE,CAAChB,eAAe,CAACmB,WAAW,CAACC,KAAY,CAAC,EAEnD/B,KAAA,CAAAqB,aAAA,CAACpB,KAAK,CAAC+B,OAAO;IACZC,IAAI,EAAC,cAAc;IACnBC,KAAK,EAAEP,EAAE,CAAChB,eAAe,CAACmB,WAAW,CAACK,UAAW;IACjDC,OAAO,EAAC,SAAS;IACjBC,aAAa,EAAE;MACbb,QAAQ,EAAEG,EAAE,CAAChB,eAAe,CAACmB,WAAW,CAACN;IAC3C;EAAE,CACH,CAAC,EAEFxB,KAAA,CAAAqB,aAAA,CAACnB,IAAI,CAACoC,UAAU;IAACC,QAAQ,EAAC,cAAc;IAACC,OAAO;EAAA,GAC9CxC,KAAA,CAAAqB,aAAA,CAACpB,KAAK,CAACwC,MAAM;IACXR,IAAI,EAAC,gBAAgB;IACrBC,KAAK,EAAEP,EAAE,CAAChB,eAAe,CAAC+B,aAAa,CAACP,UAAW;IACnDE,aAAa,EAAE;MACbM,OAAO,EAAEhB,EAAE,CAAChB,eAAe,CAAC+B,aAAa,CAAClB,QAAQ;MAClDA,QAAQ,EAAEG,EAAE,CAAChB,eAAe,CAAC+B,aAAa,CAAClB;IAC7C,CAAE;IACFoB,KAAK,EAAC,OAAO;IACbD,OAAO,EAAE,CAAE;IACXE,OAAO,EAAE,EAAG;IACZC,gBAAgB;IAChBC,YAAY,EAAE,CAAE;IAChBC,aAAa,EAAE;EAAM,CACtB,CAAC,EAEFhD,KAAA,CAAAqB,aAAA,CAACnB,IAAI,CAACoC,UAAU;IAACW,UAAU,EAAC,gBAAgB;IAACT,OAAO;EAAA,GAClDxC,KAAA,CAAAqB,aAAA,CAAClB,OAAO,CAAC+C,KAAK;IACZjB,IAAI,EAAC,WAAW;IAChBkB,SAAS,EAAC,gBAAgB;IAC1BC,kBAAkB,EAAEC,gBAAiB;IACrCC,cAAc,EAAE,EAAG;IACnBd,OAAO;EAAA,GAEPxC,KAAA,CAAAqB,aAAA,CAACpB,KAAK,CAACwC,MAAM;IACXc,QAAQ,EAAC,MAAM;IACfrB,KAAK,EAAEP,EAAE,CAAChB,eAAe,CAAC6C,WAAW,CAACrB,UAAW;IACjDE,aAAa,EAAE;MACbb,QAAQ,EAAEG,EAAE,CAAChB,eAAe,CAAC6C,WAAW,CAAChC;IAC3C,CAAE;IACFiC,WAAW,EAAC,GAAG;IACfb,KAAK,EAAC,OAAO;IACbD,OAAO,EAAE,CAAE;IACXE,OAAO,EAAE,EAAG;IACZE,YAAY,EAAE,CAAE;IAChBC,aAAa,EAAE;EAAM,CACtB,CACY,CACA,CAAC,EAEjB,CAAAlC,yBAAyB,aAAzBA,yBAAyB,uBAAzBA,yBAAyB,CAAE4C,QAAQ,CAAC,SAAS,CAAC,KAC7C1D,KAAA,CAAAqB,aAAA,CAACpB,KAAK,CAAC+B,OAAO;IACZC,IAAI,EAAC,cAAc;IACnBC,KAAK,EAAEP,EAAE,CAAChB,eAAe,CAACgD,WAAW,CAACxB,UAAW;IACjDC,OAAO,EAAC,SAAS;IACjBC,aAAa,EAAE;MACbb,QAAQ,EAAEG,EAAE,CAAChB,eAAe,CAACgD,WAAW,CAACnC;IAC3C,CAAE;IACFoC,IAAI,EAAE;MACJ7B,KAAK,EAAEJ,EAAE,CAAChB,eAAe,CAACgD,WAAW,CAACxB,UAAU;MAChD0B,OAAO,EAAElC,EAAE,CAAChB,eAAe,CAACgD,WAAW,CAACG;IAC1C;EAAE,CACH,CACF,EAEA,CAAAhD,yBAAyB,aAAzBA,yBAAyB,uBAAzBA,yBAAyB,CAAE4C,QAAQ,CAAC,SAAS,CAAC,KAC7C1D,KAAA,CAAAqB,aAAA,CAACnB,IAAI,CAACoC,UAAU;IAACC,QAAQ,EAAC,cAAc;IAACC,OAAO;EAAA,GAC9CxC,KAAA,CAAAqB,aAAA,CAACpB,KAAK,CAAC8D,QAAQ;IACb9B,IAAI,EAAC,kBAAkB;IACvBC,KAAK,EAAEP,EAAE,CAAChB,eAAe,CAACqD,eAAe,CAAC7B,UAAW;IACrDE,aAAa,EAAE;MACbb,QAAQ,EAAEG,EAAE,CAAChB,eAAe,CAACqD,eAAe,CAACxC;IAC/C,CAAE;IACFmB,OAAO,EAAE,CAAE;IACXK,aAAa,EAAE;EAAM,CACtB,CACc,CAClB,EAEA,CAAAlC,yBAAyB,aAAzBA,yBAAyB,uBAAzBA,yBAAyB,CAAE4C,QAAQ,CAAC,sBAAsB,CAAC,KAC1D1D,KAAA,CAAAqB,aAAA,CAACpB,KAAK,CAAC+B,OAAO;IACZC,IAAI,EAAC,yBAAyB;IAC9BC,KAAK,EAAEP,EAAE,CAAChB,eAAe,CAACsD,sBAAsB,CAAC9B,UAAW;IAC5DC,OAAO,EAAC,SAAS;IACjBC,aAAa,EAAE;MACbb,QAAQ,EAAEG,EAAE,CAAChB,eAAe,CAACsD,sBAAsB,CAACzC;IACtD;EAAE,CACH,CACF,EACA,CAAAV,yBAAyB,aAAzBA,yBAAyB,uBAAzBA,yBAAyB,CAAE4C,QAAQ,CAAC,sBAAsB,CAAC,KAC1D1D,KAAA,CAAAqB,aAAA,CAACnB,IAAI,CAACoC,UAAU;IAACC,QAAQ,EAAC,yBAAyB;IAACC,OAAO;EAAA,GACzDxC,KAAA,CAAAqB,aAAA,CAACpB,KAAK,CAAC8D,QAAQ;IACb9B,IAAI,EAAC,8BAA8B;IACnCC,KAAK,EACHP,EAAE,CAAChB,eAAe,CAACuD,2BAA2B,CAAC/B,UAChD;IACDE,aAAa,EAAE;MACbb,QAAQ,EACNG,EAAE,CAAChB,eAAe,CAACuD,2BAA2B,CAAC1C;IACnD,CAAE;IACFmB,OAAO,EAAE,CAAE;IACXK,aAAa,EAAE;EAAM,CACtB,CACc,CAEJ,CACb,CAAC;AAEX;AAEA,SAASvB,gBAAgBA,CAAC;EACxBN,YAAY;EACZJ;AAGF,CAAC,EAAE;EACD,MAAMY,EAAE,GAAGzB,IAAI,CAAC0B,cAAc,CAAc,CAAC;EAE7C,MAAM;IAAEuC;EAAS,CAAC,GAAGjE,IAAI,CAACkE,OAAO,CAAC,CAAC;EACnC,MAAMC,aAAa,GAAGF,QAAQ,CAAC,cAAc,CAAC,KAAK,KAAK;EAExD,OACEnE,KAAA,CAAAqB,aAAA,CAACf,IAAI,EAAAiB,QAAA;IAACM,KAAK;EAAA,GAAKV,YAAY,GACzBnB,KAAA,CAAAqB,aAAA,CAACd,IAAI,QAAEoB,EAAE,CAAChB,eAAe,CAACmB,WAAW,CAACC,KAAY,CAAC,EAEpD/B,KAAA,CAAAqB,aAAA,CAACjB,KAAK,CAACkE,WAAW,QAChBtE,KAAA,CAAAqB,aAAA,CAACjB,KAAK,CAAC4B,OAAO;IACZC,IAAI,EAAC,cAAc;IACnBC,KAAK,EAAEP,EAAE,CAAChB,eAAe,CAACmB,WAAW,CAACK;EAAW,CAClD,CAAC,EACFnC,KAAA,CAAAqB,aAAA,CAACnB,IAAI,CAACoC,UAAU;IAACC,QAAQ,EAAC;EAAc,GACtCvC,KAAA,CAAAqB,aAAA,CAACjB,KAAK,CAACqC,MAAM;IACXR,IAAI,EAAC,gBAAgB;IACrBC,KAAK,EAAEP,EAAE,CAAChB,eAAe,CAAC+B,aAAa,CAACP,UAAW;IACnDoC,MAAM,EAAE5C,EAAE,CAAChB,eAAe,CAAC+B,aAAa,CAAC6B,MAAO;IAChD1B,OAAO,EAAE,EAAG;IACZ2B,WAAW,EAAGC,KAAK,IAAMJ,aAAa,GAAG,CAAC,GAAGI;EAAO,CACrD,CAAC,EACFzE,KAAA,CAAAqB,aAAA,CAAClB,OAAO,CAAC+C,KAAK;IACZjB,IAAI,EAAC,WAAW;IAChByC,KAAK,EAAEL,aAAa,GAAG,CAAC,GAAGM;EAAU,GAErC3E,KAAA,CAAAqB,aAAA,CAACjB,KAAK,CAACqC,MAAM;IACXc,QAAQ,EAAC,MAAM;IACfrB,KAAK,EAAEP,EAAE,CAAChB,eAAe,CAAC6C,WAAW,CAACrB,UAAW;IACjDoC,MAAM,EAAE5C,EAAE,CAAChB,eAAe,CAAC6C,WAAW,CAACe,MAAO;IAC9CK,YAAY,EAAC;EAAG,CACjB,CACY,CAAC,EAChB5E,KAAA,CAAAqB,aAAA,CAACnB,IAAI,CAACoC,UAAU;IAACuC,WAAW,EAAC;EAAc,GACzC7E,KAAA,CAAAqB,aAAA,CAACjB,KAAK,CAAC4B,OAAO;IACZE,KAAK,EAAEP,EAAE,CAAChB,eAAe,CAACgD,WAAW,CAACxB,UAAW;IACjDF,IAAI,EAAC;EAAc,CACpB,CAAC,EACFjC,KAAA,CAAAqB,aAAA,CAACnB,IAAI,CAACoC,UAAU;IAACC,QAAQ,EAAC;EAAc,GACtCvC,KAAA,CAAAqB,aAAA,CAACjB,KAAK,CAAC2D,QAAQ;IACb7B,KAAK,EAAEP,EAAE,CAAChB,eAAe,CAACqD,eAAe,CAAC7B,UAAW;IACrDF,IAAI,EAAC;EAAkB,CACxB,CACc,CACF,CAAC,EAElBjC,KAAA,CAAAqB,aAAA,CAACnB,IAAI,CAACoC,UAAU;IAACuC,WAAW,EAAC;EAAyB,GACpD7E,KAAA,CAAAqB,aAAA,CAACjB,KAAK,CAAC4B,OAAO;IACZC,IAAI,EAAC,yBAAyB;IAC9BC,KAAK,EAAEP,EAAE,CAAChB,eAAe,CAACsD,sBAAsB,CAAC9B;EAAW,CAC7D,CAAC,EACFnC,KAAA,CAAAqB,aAAA,CAACnB,IAAI,CAACoC,UAAU;IAACC,QAAQ,EAAC;EAAyB,GACjDvC,KAAA,CAAAqB,aAAA,CAACjB,KAAK,CAAC2D,QAAQ;IACb7B,KAAK,EACHP,EAAE,CAAChB,eAAe,CAACuD,2BAA2B,CAAC/B,UAChD;IACDF,IAAI,EAAC;EAA8B,CACpC,CACc,CACF,CACF,CACA,CAAC,EAEnB,OAAOlB,YAAY,KAAK,QAAQ,GAC/Bf,KAAA,CAAAqB,aAAA,CAAChB,MAAM,CAACyE,UAAU;IAACC,MAAM,EAAEhE;EAAa,CAAE,CAAC,GACzC,IACA,CAAC;AAEX;AAEA,MAAMsC,gBAAgB,GAAGA,CAAC;EAAEoB;AAAM,CAAC,KACjCO,MAAM,CAACC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACV,KAAK,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,GACpDA,KAAK,GACL;EAAEW,GAAG,EAAET;AAAU,CAAC;AAExBhE,eAAe,CAAC0E,qBAAqB,GAAG,IAAI"}
|
|
1
|
+
{"version":3,"file":"ChildrenWithAge.js","names":["React","Field","Form","Iterate","Value","Wizard","Card","Lead","translations","omitSpacingProps","pickSpacingProps","ChildrenWithAge","_ref","mode","enableAdditionalQuestions","toWizardStep","props","_objectWithoutProperties","_excluded","spacingProps","restProps","createElement","Section","_extends","required","SummaryContainer","EditContainer","tr","useTranslation","getValue","useData","hasChildren","stack","title","Boolean","path","label","fieldLabel","variant","errorMessages","Visibility","pathTrue","animate","Number","countChildren","minimum","defaultValue","width","showStepControls","maximum","decimalLimit","allowNegative","Array","countPath","countPathLimit","itemPath","childrenAge","placeholder","includes","usesDaycare","help","content","renderMessage","helpText","Currency","dayCareExpenses","hasJointResponsibility","jointResponsibilityExpenses","SummaryList","suffix","pathDefined","decimals","EditButton","toStep","_supportsSpacingProps"],"sources":["../../../../../../src/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.tsx"],"sourcesContent":["import React from 'react'\nimport { Field, Form, Iterate, Value, Wizard } from '../..'\nimport { Card } from '../../../../components'\nimport { Lead } from '../../../../elements'\nimport { Translation, translations } from './ChildrenWithAgeTranslations'\nimport type { SectionProps } from '../../Form/Section'\nimport {\n omitSpacingProps,\n pickSpacingProps,\n} from '../../../../components/flex/utils'\nimport { SpacingProps } from '../../../../shared/types'\n\ntype Mode = 'edit' | 'summary'\ntype Variant = Array<'joint-responsibility' | 'daycare'>\n\nexport type Props = SectionProps & {\n mode?: Mode\n enableAdditionalQuestions?: Variant\n toWizardStep?: number\n} & SpacingProps\n\nexport default function ChildrenWithAge({\n mode,\n enableAdditionalQuestions,\n toWizardStep,\n ...props\n}: Props) {\n const spacingProps = pickSpacingProps<Props>(props)\n const restProps = omitSpacingProps(props)\n return (\n <Form.Section translations={translations} required {...restProps}>\n {mode === 'summary' ? (\n <SummaryContainer\n toWizardStep={toWizardStep}\n spacingProps={spacingProps}\n enableAdditionalQuestions={enableAdditionalQuestions}\n />\n ) : (\n <EditContainer\n enableAdditionalQuestions={enableAdditionalQuestions}\n spacingProps={spacingProps}\n />\n )}\n </Form.Section>\n )\n}\n\nfunction EditContainer({\n spacingProps,\n enableAdditionalQuestions,\n}: Props & {\n spacingProps?: SpacingProps\n}) {\n const tr = Form.useTranslation<Translation>()\n\n const { getValue } = Form.useData()\n const hasChildren = getValue('/hasChildren') === true\n\n return (\n <Card stack {...spacingProps}>\n <Lead>{tr.ChildrenWithAge.hasChildren.title}</Lead>\n\n <Field.Boolean\n path=\"/hasChildren\"\n label={tr.ChildrenWithAge.hasChildren.fieldLabel}\n variant=\"buttons\"\n errorMessages={{\n required: tr.ChildrenWithAge.hasChildren.required,\n }}\n />\n\n <Form.Visibility pathTrue=\"/hasChildren\" animate>\n <Field.Number\n path=\"/countChildren\"\n label={tr.ChildrenWithAge.countChildren.fieldLabel}\n errorMessages={{\n minimum: tr.ChildrenWithAge.countChildren.required,\n required: tr.ChildrenWithAge.countChildren.required,\n }}\n defaultValue={1}\n width=\"small\"\n showStepControls\n minimum={1}\n maximum={20}\n decimalLimit={0}\n allowNegative={false}\n />\n\n <Iterate.Array\n path=\"/children\"\n countPath=\"/countChildren\"\n countPathLimit={20}\n animate\n >\n <Field.Number\n itemPath=\"/age\"\n label={tr.ChildrenWithAge.childrenAge.fieldLabel}\n errorMessages={{\n required: tr.ChildrenWithAge.childrenAge.required,\n }}\n placeholder=\"0\"\n width=\"small\"\n minimum={0}\n maximum={17}\n decimalLimit={0}\n allowNegative={false}\n />\n </Iterate.Array>\n </Form.Visibility>\n\n {enableAdditionalQuestions?.includes('daycare') && (\n <Form.Visibility pathTrue=\"/hasChildren\" animate>\n <Field.Boolean\n path=\"/usesDaycare\"\n label={tr.ChildrenWithAge.usesDaycare.fieldLabel}\n variant=\"buttons\"\n errorMessages={{\n required: tr.ChildrenWithAge.usesDaycare.required,\n }}\n help={{\n title: tr.ChildrenWithAge.usesDaycare.fieldLabel,\n content: tr.renderMessage(\n tr.ChildrenWithAge.usesDaycare.helpText\n ),\n }}\n />\n </Form.Visibility>\n )}\n\n {enableAdditionalQuestions?.includes('daycare') && hasChildren && (\n <Form.Visibility pathTrue=\"/usesDaycare\" animate>\n <Field.Currency\n path=\"/daycareExpenses\"\n label={tr.ChildrenWithAge.dayCareExpenses.fieldLabel}\n errorMessages={{\n required: tr.ChildrenWithAge.dayCareExpenses.required,\n }}\n minimum={1}\n decimalLimit={0}\n allowNegative={false}\n />\n </Form.Visibility>\n )}\n\n {enableAdditionalQuestions?.includes('joint-responsibility') && (\n <Form.Visibility pathTrue=\"/hasChildren\" animate>\n <Field.Boolean\n path=\"/hasJointResponsibility\"\n label={tr.ChildrenWithAge.hasJointResponsibility.fieldLabel}\n variant=\"buttons\"\n errorMessages={{\n required: tr.ChildrenWithAge.hasJointResponsibility.required,\n }}\n />\n </Form.Visibility>\n )}\n\n {enableAdditionalQuestions?.includes('joint-responsibility') &&\n hasChildren && (\n <Form.Visibility pathTrue=\"/hasJointResponsibility\" animate>\n <Field.Currency\n path=\"/jointResponsibilityExpenses\"\n label={\n tr.ChildrenWithAge.jointResponsibilityExpenses.fieldLabel\n }\n errorMessages={{\n required:\n tr.ChildrenWithAge.jointResponsibilityExpenses.required,\n }}\n minimum={1}\n decimalLimit={0}\n allowNegative={false}\n />\n </Form.Visibility>\n )}\n </Card>\n )\n}\n\nfunction SummaryContainer({\n spacingProps,\n toWizardStep,\n}: Props & {\n spacingProps?: SpacingProps\n}) {\n const tr = Form.useTranslation<Translation>()\n\n return (\n <Card stack {...spacingProps}>\n {<Lead>{tr.ChildrenWithAge.hasChildren.title}</Lead>}\n\n <Value.SummaryList>\n <Value.Boolean\n path=\"/hasChildren\"\n label={tr.ChildrenWithAge.hasChildren.fieldLabel}\n />\n <Form.Visibility pathTrue=\"/hasChildren\">\n <Value.Number\n path=\"/countChildren\"\n label={tr.ChildrenWithAge.countChildren.fieldLabel}\n suffix={tr.ChildrenWithAge.countChildren.suffix}\n maximum={20}\n />\n <Iterate.Array path=\"/children\">\n <Value.Number\n itemPath=\"/age\"\n label={tr.ChildrenWithAge.childrenAge.fieldLabel}\n suffix={tr.ChildrenWithAge.childrenAge.suffix}\n defaultValue=\"–\"\n />\n </Iterate.Array>\n <Form.Visibility pathDefined=\"/usesDaycare\">\n <Value.Boolean\n label={tr.ChildrenWithAge.usesDaycare.fieldLabel}\n path=\"/usesDaycare\"\n />\n <Form.Visibility pathTrue=\"/usesDaycare\">\n <Value.Currency\n label={tr.ChildrenWithAge.dayCareExpenses.fieldLabel}\n path=\"/daycareExpenses\"\n decimals=\"0\"\n />\n </Form.Visibility>\n </Form.Visibility>\n\n <Form.Visibility pathDefined=\"/hasJointResponsibility\">\n <Value.Boolean\n path=\"/hasJointResponsibility\"\n label={tr.ChildrenWithAge.hasJointResponsibility.fieldLabel}\n />\n <Form.Visibility pathTrue=\"/hasJointResponsibility\">\n <Value.Currency\n label={\n tr.ChildrenWithAge.jointResponsibilityExpenses.fieldLabel\n }\n path=\"/jointResponsibilityExpenses\"\n decimals=\"0\"\n />\n </Form.Visibility>\n </Form.Visibility>\n </Form.Visibility>\n </Value.SummaryList>\n\n {typeof toWizardStep === 'number' ? (\n <Wizard.EditButton toStep={toWizardStep} />\n ) : null}\n </Card>\n )\n}\n\nChildrenWithAge._supportsSpacingProps = true\n"],"mappings":"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"}
|
|
@@ -25,7 +25,7 @@ const nbNO = {
|
|
|
25
25
|
usesDaycare: {
|
|
26
26
|
fieldLabel: 'Har du/dere utgifter til SFO/AKS?',
|
|
27
27
|
required: 'Du må angi om du/dere har utgifter til SFO/AKS.',
|
|
28
|
-
helpText: 'Oppgi totalt beløp per måned som du betaler til Skolefritidsordningen (SFO) eller Aktivitetsskolen (AKS)
|
|
28
|
+
helpText: 'Oppgi totalt beløp per måned som du betaler til Skolefritidsordningen (SFO) eller Aktivitetsskolen (AKS).{br}{br}Barnehageutgifter skal ikke tas med her.'
|
|
29
29
|
},
|
|
30
30
|
dayCareExpenses: {
|
|
31
31
|
fieldLabel: 'Oppgi utgifter til SFO/AKS per måned',
|
|
@@ -59,7 +59,7 @@ const enGB = {
|
|
|
59
59
|
usesDaycare: {
|
|
60
60
|
fieldLabel: 'Do you have expenses for SFO/AKS?',
|
|
61
61
|
required: 'You must state whether you have any expenses for SFO/AKS.',
|
|
62
|
-
helpText: 'State the total amount per month that you pay to Skolefritidsordningen (SFO) or Aktivitetsskolen (AKS)
|
|
62
|
+
helpText: 'State the total amount per month that you pay to Skolefritidsordningen (SFO) or Aktivitetsskolen (AKS).{br}{br}Kindergarten expenses are not to be included here.'
|
|
63
63
|
},
|
|
64
64
|
dayCareExpenses: {
|
|
65
65
|
fieldLabel: 'Enter expenses for SFO/AKS per month',
|