@dnb/eufemia 10.8.0 → 10.9.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 +36 -0
- package/cjs/components/breadcrumb/BreadcrumbItem.js +1 -1
- package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
- package/cjs/components/input-masked/InputMaskedHooks.js +1 -1
- package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
- package/cjs/components/modal/ModalContent.js +3 -1
- package/cjs/components/modal/ModalContent.js.map +1 -1
- package/cjs/components/progress-indicator/style/dnb-progress-indicator.css +59 -2
- package/cjs/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
- package/cjs/components/progress-indicator/style/dnb-progress-indicator.scss +70 -2
- package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.css +18 -0
- package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.min.css +9 -0
- package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.scss +19 -0
- package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.css +5 -64
- package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.min.css +1 -1
- package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.scss +4 -86
- package/cjs/components/section/Section.js +1 -1
- package/cjs/components/section/Section.js.map +1 -1
- package/cjs/components/skeleton/style/dnb-skeleton.css +50 -0
- package/cjs/components/skeleton/style/dnb-skeleton.min.css +1 -1
- package/cjs/components/skeleton/style/dnb-skeleton.scss +66 -0
- package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.css +7 -0
- package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.min.css +0 -0
- package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.scss +7 -0
- package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-ui.css +5 -60
- package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-ui.min.css +0 -1
- package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-ui.scss +4 -86
- package/cjs/components/tooltip/style/dnb-tooltip.css +10 -0
- package/cjs/components/tooltip/style/dnb-tooltip.min.css +1 -1
- package/cjs/components/tooltip/style/dnb-tooltip.scss +14 -0
- package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.css +9 -0
- package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.min.css +1 -0
- package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.scss +10 -0
- package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-ui.css +3 -11
- package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-ui.min.css +1 -1
- package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-ui.scss +3 -15
- package/cjs/elements/blockquote/style/blockquote-mixins.scss +22 -11
- package/cjs/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +20 -11
- package/cjs/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +1 -0
- package/cjs/extensions/forms/DataContext/At.d.ts +1 -1
- package/cjs/extensions/forms/DataContext/At.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Context.d.ts +1 -0
- package/cjs/extensions/forms/DataContext/Context.js +2 -1
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider.js +7 -3
- package/cjs/extensions/forms/DataContext/Provider.js.map +1 -1
- package/cjs/extensions/forms/DataContext/index.d.ts +0 -2
- package/cjs/extensions/forms/DataContext/index.js +0 -2
- package/cjs/extensions/forms/DataContext/index.js.map +1 -1
- package/cjs/extensions/forms/Field/ArraySelection.d.ts +2 -3
- package/cjs/extensions/forms/Field/ArraySelection.js +4 -4
- package/cjs/extensions/forms/Field/ArraySelection.js.map +1 -1
- package/cjs/extensions/forms/Field/CountryCode.d.ts +2 -3
- package/cjs/extensions/forms/Field/CountryCode.js +3 -4
- package/cjs/extensions/forms/Field/CountryCode.js.map +1 -1
- package/cjs/extensions/forms/Field/Currency.d.ts +2 -3
- package/cjs/extensions/forms/Field/Currency.js.map +1 -1
- package/cjs/extensions/forms/Field/Date.d.ts +2 -3
- package/cjs/extensions/forms/Field/Date.js +4 -4
- package/cjs/extensions/forms/Field/Date.js.map +1 -1
- package/cjs/extensions/forms/Field/Number.d.ts +2 -3
- package/cjs/extensions/forms/Field/Number.js +4 -4
- package/cjs/extensions/forms/Field/Number.js.map +1 -1
- package/cjs/extensions/forms/Field/Option.d.ts +2 -3
- package/cjs/extensions/forms/Field/Option.js.map +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber.d.ts +2 -3
- package/cjs/extensions/forms/Field/PhoneNumber.js +4 -4
- package/cjs/extensions/forms/Field/PhoneNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/PostalCodeAndCity.d.ts +2 -2
- package/cjs/extensions/forms/Field/PostalCodeAndCity.js +4 -4
- package/cjs/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection.d.ts +2 -3
- package/cjs/extensions/forms/Field/Selection.js +5 -6
- package/cjs/extensions/forms/Field/Selection.js.map +1 -1
- package/cjs/extensions/forms/Field/String.d.ts +2 -3
- package/cjs/extensions/forms/Field/String.js +5 -7
- package/cjs/extensions/forms/Field/String.js.map +1 -1
- package/cjs/extensions/forms/Field/Toggle.d.ts +2 -3
- package/cjs/extensions/forms/Field/Toggle.js +5 -5
- package/cjs/extensions/forms/Field/Toggle.js.map +1 -1
- package/cjs/extensions/forms/Field/index.d.ts +0 -4
- package/cjs/extensions/forms/Field/index.js +0 -4
- package/cjs/extensions/forms/Field/index.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -3
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js +76 -8
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +8 -0
- package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js +12 -0
- package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -0
- package/cjs/extensions/forms/FieldBlock/index.d.ts +1 -0
- package/cjs/extensions/forms/FieldBlock/index.js +15 -2
- package/cjs/extensions/forms/FieldBlock/index.js.map +1 -1
- package/cjs/extensions/forms/Form/FormElement.d.ts +4 -0
- package/cjs/extensions/forms/Form/FormElement.js +39 -0
- package/cjs/extensions/forms/Form/FormElement.js.map +1 -0
- package/cjs/extensions/forms/Form/FormHandler.d.ts +6 -0
- package/cjs/extensions/forms/Form/FormHandler.js +41 -0
- package/cjs/extensions/forms/Form/FormHandler.js.map +1 -0
- package/cjs/extensions/forms/{DataContext → Form}/SubmitButton.d.ts +3 -4
- package/cjs/extensions/forms/Form/SubmitButton.js +36 -0
- package/cjs/extensions/forms/Form/SubmitButton.js.map +1 -0
- package/cjs/extensions/forms/Form/index.d.ts +9 -0
- package/cjs/extensions/forms/Form/index.js +18 -0
- package/cjs/extensions/forms/Form/index.js.map +1 -0
- package/cjs/extensions/forms/Iterate/Array.d.ts +17 -0
- package/cjs/extensions/forms/Iterate/Array.js +91 -0
- package/cjs/extensions/forms/Iterate/Array.js.map +1 -0
- package/cjs/extensions/forms/Iterate/ArrayPushButton.d.ts +10 -0
- package/cjs/extensions/forms/Iterate/ArrayPushButton.js +53 -0
- package/cjs/extensions/forms/Iterate/ArrayPushButton.js.map +1 -0
- package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton.d.ts +8 -0
- package/cjs/extensions/forms/{DataContext/SubmitButton.js → Iterate/ArrayRemoveElementButton.js} +25 -15
- package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton.js.map +1 -0
- package/cjs/extensions/forms/Iterate/IterateElementContext.d.ts +11 -0
- package/cjs/extensions/forms/Iterate/IterateElementContext.js +12 -0
- package/cjs/extensions/forms/Iterate/IterateElementContext.js.map +1 -0
- package/cjs/extensions/forms/Iterate/index.d.ts +11 -0
- package/cjs/extensions/forms/Iterate/index.js +25 -0
- package/cjs/extensions/forms/Iterate/index.js.map +1 -0
- package/cjs/extensions/forms/Layout/ButtonRow.d.ts +1 -1
- package/cjs/extensions/forms/Layout/ButtonRow.js +2 -2
- package/cjs/extensions/forms/Layout/ButtonRow.js.map +1 -1
- package/cjs/extensions/forms/Layout/Card.d.ts +1 -1
- package/cjs/extensions/forms/Layout/Card.js +4 -4
- package/cjs/extensions/forms/Layout/Card.js.map +1 -1
- package/cjs/extensions/forms/Layout/FlexContainer.d.ts +1 -1
- package/cjs/extensions/forms/Layout/FlexContainer.js +3 -3
- package/cjs/extensions/forms/Layout/FlexContainer.js.map +1 -1
- package/cjs/extensions/forms/Layout/FlexItem.d.ts +1 -1
- package/cjs/extensions/forms/Layout/FlexItem.js +2 -2
- package/cjs/extensions/forms/Layout/FlexItem.js.map +1 -1
- package/cjs/extensions/forms/Layout/MainHeading.d.ts +4 -2
- package/cjs/extensions/forms/Layout/MainHeading.js +11 -4
- package/cjs/extensions/forms/Layout/MainHeading.js.map +1 -1
- package/cjs/extensions/forms/Layout/Section.d.ts +1 -1
- package/cjs/extensions/forms/Layout/Section.js +2 -2
- package/cjs/extensions/forms/Layout/Section.js.map +1 -1
- package/cjs/extensions/forms/Layout/SubHeading.d.ts +4 -2
- package/cjs/extensions/forms/Layout/SubHeading.js +11 -4
- package/cjs/extensions/forms/Layout/SubHeading.js.map +1 -1
- package/cjs/extensions/forms/Layout/index.d.ts +0 -2
- package/cjs/extensions/forms/Layout/index.js +1 -3
- package/cjs/extensions/forms/Layout/index.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/Buttons.d.ts +1 -1
- package/cjs/extensions/forms/StepsLayout/Buttons.js +2 -2
- package/cjs/extensions/forms/StepsLayout/Buttons.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/NextButton.d.ts +1 -1
- package/cjs/extensions/forms/StepsLayout/NextButton.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/PreviousButton.d.ts +1 -1
- package/cjs/extensions/forms/StepsLayout/PreviousButton.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/Step.d.ts +1 -1
- package/cjs/extensions/forms/StepsLayout/Step.js +2 -2
- package/cjs/extensions/forms/StepsLayout/Step.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/StepsLayout.d.ts +1 -1
- package/cjs/extensions/forms/StepsLayout/StepsLayout.js +2 -2
- package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
- package/cjs/extensions/forms/Value/Boolean.d.ts +2 -3
- package/cjs/extensions/forms/Value/Boolean.js +4 -4
- package/cjs/extensions/forms/Value/Boolean.js.map +1 -1
- package/cjs/extensions/forms/Value/Number.d.ts +2 -3
- package/cjs/extensions/forms/Value/Number.js +4 -3
- package/cjs/extensions/forms/Value/Number.js.map +1 -1
- package/cjs/extensions/forms/Value/String.d.ts +2 -3
- package/cjs/extensions/forms/Value/String.js +4 -4
- package/cjs/extensions/forms/Value/String.js.map +1 -1
- package/cjs/extensions/forms/Value/index.d.ts +0 -4
- package/cjs/extensions/forms/Value/index.js +0 -4
- package/cjs/extensions/forms/Value/index.js.map +1 -1
- package/cjs/extensions/forms/ValueBlock/ValueBlock.d.ts +2 -3
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js +2 -2
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/cjs/extensions/forms/hooks/index.d.ts +1 -0
- package/cjs/extensions/forms/{Field/hooks → hooks}/index.js +3 -3
- package/cjs/extensions/forms/hooks/index.js.map +1 -0
- package/cjs/extensions/forms/hooks/useDataValue.d.ts +12 -0
- package/cjs/extensions/forms/{Field/hooks/useField.js → hooks/useDataValue.js} +60 -26
- package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -0
- package/cjs/extensions/forms/index.d.ts +4 -4
- package/cjs/extensions/forms/index.js +20 -12
- package/cjs/extensions/forms/index.js.map +1 -1
- package/cjs/extensions/forms/types.d.ts +95 -2
- package/cjs/extensions/forms/types.js +71 -0
- package/cjs/extensions/forms/types.js.map +1 -1
- package/cjs/extensions/forms/utils/index.d.ts +0 -1
- package/cjs/extensions/forms/utils/index.js +0 -12
- package/cjs/extensions/forms/utils/index.js.map +1 -1
- package/cjs/extensions/lib.d.ts +0 -2
- package/cjs/extensions/payment-card/style/dnb-payment-card.css +7 -7
- package/cjs/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
- package/cjs/extensions/payment-card/style/dnb-payment-card.scss +7 -7
- 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/useMedia.js +33 -23
- package/cjs/shared/useMedia.js.map +1 -1
- package/cjs/style/dnb-ui-components.css +119 -2
- package/cjs/style/dnb-ui-components.min.css +1 -1
- package/cjs/style/dnb-ui-elements.css +17 -11
- package/cjs/style/dnb-ui-elements.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.css +7 -7
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -11
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +131 -136
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +7 -7
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/customisations.scss +4 -0
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +40 -21
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +155 -152
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +11 -3
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +3 -3
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +38 -21
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +7 -7
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-basis.css +19 -11
- package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-basis.scss +4 -0
- package/cjs/style/themes/theme-ui/ui-theme-components.css +131 -136
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +3 -3
- package/cjs/style/themes/theme-ui/ui-theme-elements.css +17 -11
- package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +7 -7
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-tags.css +17 -11
- package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/components/breadcrumb/BreadcrumbItem.js +1 -1
- package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/components/date-picker/DatePickerInput.js.map +1 -1
- package/components/input-masked/InputMaskedHooks.js +1 -1
- package/components/input-masked/InputMaskedHooks.js.map +1 -1
- package/components/modal/ModalContent.js +3 -1
- package/components/modal/ModalContent.js.map +1 -1
- package/components/progress-indicator/style/dnb-progress-indicator.css +59 -2
- package/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
- package/components/progress-indicator/style/dnb-progress-indicator.scss +70 -2
- package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.css +18 -0
- package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.min.css +9 -0
- package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.scss +19 -0
- package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.css +5 -64
- package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.min.css +1 -1
- package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.scss +4 -86
- package/components/section/Section.js +1 -1
- package/components/section/Section.js.map +1 -1
- package/components/skeleton/style/dnb-skeleton.css +50 -0
- package/components/skeleton/style/dnb-skeleton.min.css +1 -1
- package/components/skeleton/style/dnb-skeleton.scss +66 -0
- package/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.css +7 -0
- package/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.min.css +0 -0
- package/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.scss +7 -0
- package/components/skeleton/style/themes/dnb-skeleton-theme-ui.css +5 -60
- package/components/skeleton/style/themes/dnb-skeleton-theme-ui.min.css +0 -1
- package/components/skeleton/style/themes/dnb-skeleton-theme-ui.scss +4 -86
- package/components/tooltip/style/dnb-tooltip.css +10 -0
- package/components/tooltip/style/dnb-tooltip.min.css +1 -1
- package/components/tooltip/style/dnb-tooltip.scss +14 -0
- package/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.css +9 -0
- package/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.min.css +1 -0
- package/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.scss +10 -0
- package/components/tooltip/style/themes/dnb-tooltip-theme-ui.css +3 -11
- package/components/tooltip/style/themes/dnb-tooltip-theme-ui.min.css +1 -1
- package/components/tooltip/style/themes/dnb-tooltip-theme-ui.scss +3 -15
- package/elements/blockquote/style/blockquote-mixins.scss +22 -11
- package/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +20 -11
- package/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +1 -0
- package/es/components/breadcrumb/BreadcrumbItem.js +1 -1
- package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/es/components/date-picker/DatePickerInput.js.map +1 -1
- package/es/components/input-masked/InputMaskedHooks.js +1 -1
- package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
- package/es/components/modal/ModalContent.js +3 -1
- package/es/components/modal/ModalContent.js.map +1 -1
- package/es/components/progress-indicator/style/dnb-progress-indicator.css +59 -2
- package/es/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
- package/es/components/progress-indicator/style/dnb-progress-indicator.scss +70 -2
- package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.css +18 -0
- package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.min.css +9 -0
- package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.scss +19 -0
- package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.css +5 -64
- package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.min.css +1 -1
- package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.scss +4 -86
- package/es/components/section/Section.js +1 -1
- package/es/components/section/Section.js.map +1 -1
- package/es/components/skeleton/style/dnb-skeleton.css +50 -0
- package/es/components/skeleton/style/dnb-skeleton.min.css +1 -1
- package/es/components/skeleton/style/dnb-skeleton.scss +66 -0
- package/es/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.css +7 -0
- package/es/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.min.css +0 -0
- package/es/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.scss +7 -0
- package/es/components/skeleton/style/themes/dnb-skeleton-theme-ui.css +5 -60
- package/es/components/skeleton/style/themes/dnb-skeleton-theme-ui.min.css +0 -1
- package/es/components/skeleton/style/themes/dnb-skeleton-theme-ui.scss +4 -86
- package/es/components/tooltip/style/dnb-tooltip.css +10 -0
- package/es/components/tooltip/style/dnb-tooltip.min.css +1 -1
- package/es/components/tooltip/style/dnb-tooltip.scss +14 -0
- package/es/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.css +9 -0
- package/es/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.min.css +1 -0
- package/es/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.scss +10 -0
- package/es/components/tooltip/style/themes/dnb-tooltip-theme-ui.css +3 -11
- package/es/components/tooltip/style/themes/dnb-tooltip-theme-ui.min.css +1 -1
- package/es/components/tooltip/style/themes/dnb-tooltip-theme-ui.scss +3 -15
- package/es/elements/blockquote/style/blockquote-mixins.scss +22 -11
- package/es/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +20 -11
- package/es/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +1 -0
- package/es/extensions/forms/DataContext/At.d.ts +1 -1
- package/es/extensions/forms/DataContext/At.js.map +1 -1
- package/es/extensions/forms/DataContext/Context.d.ts +1 -0
- package/es/extensions/forms/DataContext/Context.js +2 -1
- package/es/extensions/forms/DataContext/Context.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider.js +7 -3
- package/es/extensions/forms/DataContext/Provider.js.map +1 -1
- package/es/extensions/forms/DataContext/index.d.ts +0 -2
- package/es/extensions/forms/DataContext/index.js +0 -2
- package/es/extensions/forms/DataContext/index.js.map +1 -1
- package/es/extensions/forms/Field/ArraySelection.d.ts +2 -3
- package/es/extensions/forms/Field/ArraySelection.js +4 -4
- package/es/extensions/forms/Field/ArraySelection.js.map +1 -1
- package/es/extensions/forms/Field/CountryCode.d.ts +2 -3
- package/es/extensions/forms/Field/CountryCode.js +4 -5
- package/es/extensions/forms/Field/CountryCode.js.map +1 -1
- package/es/extensions/forms/Field/Currency.d.ts +2 -3
- package/es/extensions/forms/Field/Currency.js.map +1 -1
- package/es/extensions/forms/Field/Date.d.ts +2 -3
- package/es/extensions/forms/Field/Date.js +4 -4
- package/es/extensions/forms/Field/Date.js.map +1 -1
- package/es/extensions/forms/Field/Number.d.ts +2 -3
- package/es/extensions/forms/Field/Number.js +4 -4
- package/es/extensions/forms/Field/Number.js.map +1 -1
- package/es/extensions/forms/Field/Option.d.ts +2 -3
- package/es/extensions/forms/Field/Option.js.map +1 -1
- package/es/extensions/forms/Field/PhoneNumber.d.ts +2 -3
- package/es/extensions/forms/Field/PhoneNumber.js +4 -4
- package/es/extensions/forms/Field/PhoneNumber.js.map +1 -1
- package/es/extensions/forms/Field/PostalCodeAndCity.d.ts +2 -2
- package/es/extensions/forms/Field/PostalCodeAndCity.js +4 -4
- package/es/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
- package/es/extensions/forms/Field/Selection.d.ts +2 -3
- package/es/extensions/forms/Field/Selection.js +6 -7
- package/es/extensions/forms/Field/Selection.js.map +1 -1
- package/es/extensions/forms/Field/String.d.ts +2 -3
- package/es/extensions/forms/Field/String.js +5 -7
- package/es/extensions/forms/Field/String.js.map +1 -1
- package/es/extensions/forms/Field/Toggle.d.ts +2 -3
- package/es/extensions/forms/Field/Toggle.js +5 -5
- package/es/extensions/forms/Field/Toggle.js.map +1 -1
- package/es/extensions/forms/Field/index.d.ts +0 -4
- package/es/extensions/forms/Field/index.js +0 -4
- package/es/extensions/forms/Field/index.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -3
- package/es/extensions/forms/FieldBlock/FieldBlock.js +68 -9
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +8 -0
- package/es/extensions/forms/FieldBlock/FieldBlockContext.js +4 -0
- package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -0
- package/es/extensions/forms/FieldBlock/index.d.ts +1 -0
- package/es/extensions/forms/FieldBlock/index.js +3 -1
- package/es/extensions/forms/FieldBlock/index.js.map +1 -1
- package/es/extensions/forms/Form/FormElement.d.ts +4 -0
- package/es/extensions/forms/Form/FormElement.js +31 -0
- package/es/extensions/forms/Form/FormElement.js.map +1 -0
- package/es/extensions/forms/Form/FormHandler.d.ts +6 -0
- package/es/extensions/forms/Form/FormHandler.js +33 -0
- package/es/extensions/forms/Form/FormHandler.js.map +1 -0
- package/es/extensions/forms/{DataContext → Form}/SubmitButton.d.ts +3 -4
- package/es/extensions/forms/Form/SubmitButton.js +25 -0
- package/es/extensions/forms/Form/SubmitButton.js.map +1 -0
- package/es/extensions/forms/Form/index.d.ts +9 -0
- package/es/extensions/forms/Form/index.js +10 -0
- package/es/extensions/forms/Form/index.js.map +1 -0
- package/es/extensions/forms/Iterate/Array.d.ts +17 -0
- package/es/extensions/forms/Iterate/Array.js +80 -0
- package/es/extensions/forms/Iterate/Array.js.map +1 -0
- package/es/extensions/forms/Iterate/ArrayPushButton.d.ts +10 -0
- package/es/extensions/forms/Iterate/ArrayPushButton.js +42 -0
- package/es/extensions/forms/Iterate/ArrayPushButton.js.map +1 -0
- package/es/extensions/forms/Iterate/ArrayRemoveElementButton.d.ts +8 -0
- package/es/extensions/forms/Iterate/ArrayRemoveElementButton.js +30 -0
- package/es/extensions/forms/Iterate/ArrayRemoveElementButton.js.map +1 -0
- package/es/extensions/forms/Iterate/IterateElementContext.d.ts +11 -0
- package/es/extensions/forms/Iterate/IterateElementContext.js +4 -0
- package/es/extensions/forms/Iterate/IterateElementContext.js.map +1 -0
- package/es/extensions/forms/Iterate/index.d.ts +11 -0
- package/es/extensions/forms/Iterate/index.js +12 -0
- package/es/extensions/forms/Iterate/index.js.map +1 -0
- package/es/extensions/forms/Layout/ButtonRow.d.ts +1 -1
- package/es/extensions/forms/Layout/ButtonRow.js +2 -2
- package/es/extensions/forms/Layout/ButtonRow.js.map +1 -1
- package/es/extensions/forms/Layout/Card.d.ts +1 -1
- package/es/extensions/forms/Layout/Card.js +4 -4
- package/es/extensions/forms/Layout/Card.js.map +1 -1
- package/es/extensions/forms/Layout/FlexContainer.d.ts +1 -1
- package/es/extensions/forms/Layout/FlexContainer.js +3 -3
- package/es/extensions/forms/Layout/FlexContainer.js.map +1 -1
- package/es/extensions/forms/Layout/FlexItem.d.ts +1 -1
- package/es/extensions/forms/Layout/FlexItem.js +2 -2
- package/es/extensions/forms/Layout/FlexItem.js.map +1 -1
- package/es/extensions/forms/Layout/MainHeading.d.ts +4 -2
- package/es/extensions/forms/Layout/MainHeading.js +10 -4
- package/es/extensions/forms/Layout/MainHeading.js.map +1 -1
- package/es/extensions/forms/Layout/Section.d.ts +1 -1
- package/es/extensions/forms/Layout/Section.js +2 -2
- package/es/extensions/forms/Layout/Section.js.map +1 -1
- package/es/extensions/forms/Layout/SubHeading.d.ts +4 -2
- package/es/extensions/forms/Layout/SubHeading.js +10 -4
- package/es/extensions/forms/Layout/SubHeading.js.map +1 -1
- package/es/extensions/forms/Layout/index.d.ts +0 -2
- package/es/extensions/forms/Layout/index.js +1 -3
- package/es/extensions/forms/Layout/index.js.map +1 -1
- package/es/extensions/forms/StepsLayout/Buttons.d.ts +1 -1
- package/es/extensions/forms/StepsLayout/Buttons.js +2 -2
- package/es/extensions/forms/StepsLayout/Buttons.js.map +1 -1
- package/es/extensions/forms/StepsLayout/NextButton.d.ts +1 -1
- package/es/extensions/forms/StepsLayout/NextButton.js.map +1 -1
- package/es/extensions/forms/StepsLayout/PreviousButton.d.ts +1 -1
- package/es/extensions/forms/StepsLayout/PreviousButton.js.map +1 -1
- package/es/extensions/forms/StepsLayout/Step.d.ts +1 -1
- package/es/extensions/forms/StepsLayout/Step.js +2 -2
- package/es/extensions/forms/StepsLayout/Step.js.map +1 -1
- package/es/extensions/forms/StepsLayout/StepsLayout.d.ts +1 -1
- package/es/extensions/forms/StepsLayout/StepsLayout.js +2 -2
- package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
- package/es/extensions/forms/Value/Boolean.d.ts +2 -3
- package/es/extensions/forms/Value/Boolean.js +4 -4
- package/es/extensions/forms/Value/Boolean.js.map +1 -1
- package/es/extensions/forms/Value/Number.d.ts +2 -3
- package/es/extensions/forms/Value/Number.js +5 -4
- package/es/extensions/forms/Value/Number.js.map +1 -1
- package/es/extensions/forms/Value/String.d.ts +2 -3
- package/es/extensions/forms/Value/String.js +4 -4
- package/es/extensions/forms/Value/String.js.map +1 -1
- package/es/extensions/forms/Value/index.d.ts +0 -4
- package/es/extensions/forms/Value/index.js +0 -4
- package/es/extensions/forms/Value/index.js.map +1 -1
- package/es/extensions/forms/ValueBlock/ValueBlock.d.ts +2 -3
- package/es/extensions/forms/ValueBlock/ValueBlock.js +2 -2
- package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/es/extensions/forms/hooks/index.d.ts +1 -0
- package/es/extensions/forms/hooks/index.js +1 -0
- package/es/extensions/forms/hooks/index.js.map +1 -0
- package/es/extensions/forms/hooks/useDataValue.d.ts +12 -0
- package/{extensions/forms/Field/hooks/useField.js → es/extensions/forms/hooks/useDataValue.js} +59 -25
- package/es/extensions/forms/hooks/useDataValue.js.map +1 -0
- package/es/extensions/forms/index.d.ts +4 -4
- package/es/extensions/forms/index.js +3 -2
- package/es/extensions/forms/index.js.map +1 -1
- package/es/extensions/forms/types.d.ts +95 -2
- package/es/extensions/forms/types.js +42 -0
- package/es/extensions/forms/types.js.map +1 -1
- package/es/extensions/forms/utils/index.d.ts +0 -1
- package/es/extensions/forms/utils/index.js +0 -1
- package/es/extensions/forms/utils/index.js.map +1 -1
- package/es/extensions/lib.d.ts +0 -2
- package/es/extensions/payment-card/style/dnb-payment-card.css +7 -7
- package/es/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
- package/es/extensions/payment-card/style/dnb-payment-card.scss +7 -7
- 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/useMedia.js +30 -21
- package/es/shared/useMedia.js.map +1 -1
- package/es/style/dnb-ui-components.css +119 -2
- package/es/style/dnb-ui-components.min.css +1 -1
- package/es/style/dnb-ui-elements.css +17 -11
- package/es/style/dnb-ui-elements.min.css +1 -1
- package/es/style/dnb-ui-extensions.css +7 -7
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -11
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +131 -136
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +7 -7
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/customisations.scss +4 -0
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +40 -21
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +155 -152
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +11 -3
- package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +3 -3
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +38 -21
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +7 -7
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-basis.css +19 -11
- package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-basis.scss +4 -0
- package/es/style/themes/theme-ui/ui-theme-components.css +131 -136
- package/es/style/themes/theme-ui/ui-theme-components.min.css +3 -3
- package/es/style/themes/theme-ui/ui-theme-elements.css +17 -11
- package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-extensions.css +7 -7
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-tags.css +17 -11
- package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +3 -3
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/DataContext/At.d.ts +1 -1
- package/extensions/forms/DataContext/At.js.map +1 -1
- package/extensions/forms/DataContext/Context.d.ts +1 -0
- package/extensions/forms/DataContext/Context.js +2 -1
- package/extensions/forms/DataContext/Context.js.map +1 -1
- package/extensions/forms/DataContext/Provider.js +7 -3
- package/extensions/forms/DataContext/Provider.js.map +1 -1
- package/extensions/forms/DataContext/index.d.ts +0 -2
- package/extensions/forms/DataContext/index.js +0 -2
- package/extensions/forms/DataContext/index.js.map +1 -1
- package/extensions/forms/Field/ArraySelection.d.ts +2 -3
- package/extensions/forms/Field/ArraySelection.js +4 -4
- package/extensions/forms/Field/ArraySelection.js.map +1 -1
- package/extensions/forms/Field/CountryCode.d.ts +2 -3
- package/extensions/forms/Field/CountryCode.js +4 -5
- package/extensions/forms/Field/CountryCode.js.map +1 -1
- package/extensions/forms/Field/Currency.d.ts +2 -3
- package/extensions/forms/Field/Currency.js.map +1 -1
- package/extensions/forms/Field/Date.d.ts +2 -3
- package/extensions/forms/Field/Date.js +4 -4
- package/extensions/forms/Field/Date.js.map +1 -1
- package/extensions/forms/Field/Number.d.ts +2 -3
- package/extensions/forms/Field/Number.js +4 -4
- package/extensions/forms/Field/Number.js.map +1 -1
- package/extensions/forms/Field/Option.d.ts +2 -3
- package/extensions/forms/Field/Option.js.map +1 -1
- package/extensions/forms/Field/PhoneNumber.d.ts +2 -3
- package/extensions/forms/Field/PhoneNumber.js +4 -4
- package/extensions/forms/Field/PhoneNumber.js.map +1 -1
- package/extensions/forms/Field/PostalCodeAndCity.d.ts +2 -2
- package/extensions/forms/Field/PostalCodeAndCity.js +4 -4
- package/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
- package/extensions/forms/Field/Selection.d.ts +2 -3
- package/extensions/forms/Field/Selection.js +6 -7
- package/extensions/forms/Field/Selection.js.map +1 -1
- package/extensions/forms/Field/String.d.ts +2 -3
- package/extensions/forms/Field/String.js +5 -7
- package/extensions/forms/Field/String.js.map +1 -1
- package/extensions/forms/Field/Toggle.d.ts +2 -3
- package/extensions/forms/Field/Toggle.js +5 -5
- package/extensions/forms/Field/Toggle.js.map +1 -1
- package/extensions/forms/Field/index.d.ts +0 -4
- package/extensions/forms/Field/index.js +0 -4
- package/extensions/forms/Field/index.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.d.ts +2 -3
- package/extensions/forms/FieldBlock/FieldBlock.js +74 -9
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +8 -0
- package/extensions/forms/FieldBlock/FieldBlockContext.js +4 -0
- package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -0
- package/extensions/forms/FieldBlock/index.d.ts +1 -0
- package/extensions/forms/FieldBlock/index.js +3 -1
- package/extensions/forms/FieldBlock/index.js.map +1 -1
- package/extensions/forms/Form/FormElement.d.ts +4 -0
- package/extensions/forms/Form/FormElement.js +31 -0
- package/extensions/forms/Form/FormElement.js.map +1 -0
- package/extensions/forms/Form/FormHandler.d.ts +6 -0
- package/extensions/forms/Form/FormHandler.js +33 -0
- package/extensions/forms/Form/FormHandler.js.map +1 -0
- package/extensions/forms/{DataContext → Form}/SubmitButton.d.ts +3 -4
- package/extensions/forms/Form/SubmitButton.js +25 -0
- package/extensions/forms/Form/SubmitButton.js.map +1 -0
- package/extensions/forms/Form/index.d.ts +9 -0
- package/extensions/forms/Form/index.js +10 -0
- package/extensions/forms/Form/index.js.map +1 -0
- package/extensions/forms/Iterate/Array.d.ts +17 -0
- package/extensions/forms/Iterate/Array.js +81 -0
- package/extensions/forms/Iterate/Array.js.map +1 -0
- package/extensions/forms/Iterate/ArrayPushButton.d.ts +10 -0
- package/extensions/forms/Iterate/ArrayPushButton.js +42 -0
- package/extensions/forms/Iterate/ArrayPushButton.js.map +1 -0
- package/extensions/forms/Iterate/ArrayRemoveElementButton.d.ts +8 -0
- package/extensions/forms/Iterate/ArrayRemoveElementButton.js +30 -0
- package/extensions/forms/Iterate/ArrayRemoveElementButton.js.map +1 -0
- package/extensions/forms/Iterate/IterateElementContext.d.ts +11 -0
- package/extensions/forms/Iterate/IterateElementContext.js +4 -0
- package/extensions/forms/Iterate/IterateElementContext.js.map +1 -0
- package/extensions/forms/Iterate/index.d.ts +11 -0
- package/extensions/forms/Iterate/index.js +12 -0
- package/extensions/forms/Iterate/index.js.map +1 -0
- package/extensions/forms/Layout/ButtonRow.d.ts +1 -1
- package/extensions/forms/Layout/ButtonRow.js +2 -2
- package/extensions/forms/Layout/ButtonRow.js.map +1 -1
- package/extensions/forms/Layout/Card.d.ts +1 -1
- package/extensions/forms/Layout/Card.js +4 -4
- package/extensions/forms/Layout/Card.js.map +1 -1
- package/extensions/forms/Layout/FlexContainer.d.ts +1 -1
- package/extensions/forms/Layout/FlexContainer.js +3 -3
- package/extensions/forms/Layout/FlexContainer.js.map +1 -1
- package/extensions/forms/Layout/FlexItem.d.ts +1 -1
- package/extensions/forms/Layout/FlexItem.js +2 -2
- package/extensions/forms/Layout/FlexItem.js.map +1 -1
- package/extensions/forms/Layout/MainHeading.d.ts +4 -2
- package/extensions/forms/Layout/MainHeading.js +10 -4
- package/extensions/forms/Layout/MainHeading.js.map +1 -1
- package/extensions/forms/Layout/Section.d.ts +1 -1
- package/extensions/forms/Layout/Section.js +2 -2
- package/extensions/forms/Layout/Section.js.map +1 -1
- package/extensions/forms/Layout/SubHeading.d.ts +4 -2
- package/extensions/forms/Layout/SubHeading.js +10 -4
- package/extensions/forms/Layout/SubHeading.js.map +1 -1
- package/extensions/forms/Layout/index.d.ts +0 -2
- package/extensions/forms/Layout/index.js +1 -3
- package/extensions/forms/Layout/index.js.map +1 -1
- package/extensions/forms/StepsLayout/Buttons.d.ts +1 -1
- package/extensions/forms/StepsLayout/Buttons.js +2 -2
- package/extensions/forms/StepsLayout/Buttons.js.map +1 -1
- package/extensions/forms/StepsLayout/NextButton.d.ts +1 -1
- package/extensions/forms/StepsLayout/NextButton.js.map +1 -1
- package/extensions/forms/StepsLayout/PreviousButton.d.ts +1 -1
- package/extensions/forms/StepsLayout/PreviousButton.js.map +1 -1
- package/extensions/forms/StepsLayout/Step.d.ts +1 -1
- package/extensions/forms/StepsLayout/Step.js +2 -2
- package/extensions/forms/StepsLayout/Step.js.map +1 -1
- package/extensions/forms/StepsLayout/StepsLayout.d.ts +1 -1
- package/extensions/forms/StepsLayout/StepsLayout.js +2 -2
- package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
- package/extensions/forms/Value/Boolean.d.ts +2 -3
- package/extensions/forms/Value/Boolean.js +4 -4
- package/extensions/forms/Value/Boolean.js.map +1 -1
- package/extensions/forms/Value/Number.d.ts +2 -3
- package/extensions/forms/Value/Number.js +5 -4
- package/extensions/forms/Value/Number.js.map +1 -1
- package/extensions/forms/Value/String.d.ts +2 -3
- package/extensions/forms/Value/String.js +4 -4
- package/extensions/forms/Value/String.js.map +1 -1
- package/extensions/forms/Value/index.d.ts +0 -4
- package/extensions/forms/Value/index.js +0 -4
- package/extensions/forms/Value/index.js.map +1 -1
- package/extensions/forms/ValueBlock/ValueBlock.d.ts +2 -3
- package/extensions/forms/ValueBlock/ValueBlock.js +2 -2
- package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/extensions/forms/hooks/index.d.ts +1 -0
- package/extensions/forms/hooks/index.js +1 -0
- package/extensions/forms/hooks/index.js.map +1 -0
- package/extensions/forms/hooks/useDataValue.d.ts +12 -0
- package/{es/extensions/forms/Field/hooks/useField.js → extensions/forms/hooks/useDataValue.js} +59 -25
- package/extensions/forms/hooks/useDataValue.js.map +1 -0
- package/extensions/forms/index.d.ts +4 -4
- package/extensions/forms/index.js +3 -2
- package/extensions/forms/index.js.map +1 -1
- package/extensions/forms/types.d.ts +95 -2
- package/extensions/forms/types.js +60 -0
- package/extensions/forms/types.js.map +1 -1
- package/extensions/forms/utils/index.d.ts +0 -1
- package/extensions/forms/utils/index.js +0 -1
- package/extensions/forms/utils/index.js.map +1 -1
- package/extensions/lib.d.ts +0 -2
- package/extensions/payment-card/style/dnb-payment-card.css +7 -7
- package/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
- package/extensions/payment-card/style/dnb-payment-card.scss +7 -7
- package/package.json +2 -1
- package/shared/Eufemia.d.ts +1 -1
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/shared/useMedia.js +33 -23
- package/shared/useMedia.js.map +1 -1
- package/style/dnb-ui-components.css +119 -2
- package/style/dnb-ui-components.min.css +1 -1
- package/style/dnb-ui-elements.css +17 -11
- package/style/dnb-ui-elements.min.css +1 -1
- package/style/dnb-ui-extensions.css +7 -7
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-basis.css +19 -11
- package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.css +131 -136
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +7 -7
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/customisations.scss +4 -0
- package/style/themes/theme-sbanken/sbanken-theme-basis.css +40 -21
- package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +155 -152
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +11 -3
- package/style/themes/theme-sbanken/sbanken-theme-components.scss +3 -3
- package/style/themes/theme-sbanken/sbanken-theme-elements.css +38 -21
- package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +7 -7
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-basis.css +19 -11
- package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-basis.scss +4 -0
- package/style/themes/theme-ui/ui-theme-components.css +131 -136
- package/style/themes/theme-ui/ui-theme-components.min.css +3 -3
- package/style/themes/theme-ui/ui-theme-elements.css +17 -11
- package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-extensions.css +7 -7
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-tags.css +17 -11
- package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +3 -3
- package/umd/dnb-ui-lib.min.js +1 -1
- package/cjs/extensions/forms/DataContext/SubmitButton.js.map +0 -1
- package/cjs/extensions/forms/Field/FirstName.d.ts +0 -7
- package/cjs/extensions/forms/Field/FirstName.js +0 -31
- package/cjs/extensions/forms/Field/FirstName.js.map +0 -1
- package/cjs/extensions/forms/Field/LastName.d.ts +0 -7
- package/cjs/extensions/forms/Field/LastName.js +0 -31
- package/cjs/extensions/forms/Field/LastName.js.map +0 -1
- package/cjs/extensions/forms/Field/hooks/index.d.ts +0 -1
- package/cjs/extensions/forms/Field/hooks/index.js.map +0 -1
- package/cjs/extensions/forms/Field/hooks/useField.d.ts +0 -9
- package/cjs/extensions/forms/Field/hooks/useField.js.map +0 -1
- package/cjs/extensions/forms/FieldGroup/FieldGroup.d.ts +0 -17
- package/cjs/extensions/forms/FieldGroup/FieldGroup.js +0 -95
- package/cjs/extensions/forms/FieldGroup/FieldGroup.js.map +0 -1
- package/cjs/extensions/forms/FieldGroup/index.d.ts +0 -2
- package/cjs/extensions/forms/FieldGroup/index.js +0 -27
- package/cjs/extensions/forms/FieldGroup/index.js.map +0 -1
- package/cjs/extensions/forms/Layout/InfoCardSection.d.ts +0 -8
- package/cjs/extensions/forms/Layout/InfoCardSection.js +0 -25
- package/cjs/extensions/forms/Layout/InfoCardSection.js.map +0 -1
- package/cjs/extensions/forms/Value/FirstName.d.ts +0 -7
- package/cjs/extensions/forms/Value/FirstName.js +0 -28
- package/cjs/extensions/forms/Value/FirstName.js.map +0 -1
- package/cjs/extensions/forms/Value/LastName.d.ts +0 -7
- package/cjs/extensions/forms/Value/LastName.js +0 -28
- package/cjs/extensions/forms/Value/LastName.js.map +0 -1
- package/cjs/extensions/forms/Value/hooks/index.d.ts +0 -1
- package/cjs/extensions/forms/Value/hooks/index.js +0 -14
- package/cjs/extensions/forms/Value/hooks/index.js.map +0 -1
- package/cjs/extensions/forms/Value/hooks/useValue.d.ts +0 -2
- package/cjs/extensions/forms/Value/hooks/useValue.js +0 -31
- package/cjs/extensions/forms/Value/hooks/useValue.js.map +0 -1
- package/cjs/extensions/forms/component-types.d.ts +0 -4
- package/cjs/extensions/forms/component-types.js +0 -1
- package/cjs/extensions/forms/component-types.js.map +0 -1
- package/cjs/extensions/forms/field-types.d.ts +0 -58
- package/cjs/extensions/forms/field-types.js +0 -1
- package/cjs/extensions/forms/field-types.js.map +0 -1
- package/cjs/extensions/forms/utils/components.d.ts +0 -3
- package/cjs/extensions/forms/utils/components.js +0 -32
- package/cjs/extensions/forms/utils/components.js.map +0 -1
- package/cjs/extensions/forms/value-types.d.ts +0 -15
- package/cjs/extensions/forms/value-types.js +0 -1
- package/cjs/extensions/forms/value-types.js.map +0 -1
- package/es/extensions/forms/DataContext/SubmitButton.js +0 -20
- package/es/extensions/forms/DataContext/SubmitButton.js.map +0 -1
- package/es/extensions/forms/Field/FirstName.d.ts +0 -7
- package/es/extensions/forms/Field/FirstName.js +0 -19
- package/es/extensions/forms/Field/FirstName.js.map +0 -1
- package/es/extensions/forms/Field/LastName.d.ts +0 -7
- package/es/extensions/forms/Field/LastName.js +0 -19
- package/es/extensions/forms/Field/LastName.js.map +0 -1
- package/es/extensions/forms/Field/hooks/index.d.ts +0 -1
- package/es/extensions/forms/Field/hooks/index.js +0 -1
- package/es/extensions/forms/Field/hooks/index.js.map +0 -1
- package/es/extensions/forms/Field/hooks/useField.d.ts +0 -9
- package/es/extensions/forms/Field/hooks/useField.js.map +0 -1
- package/es/extensions/forms/FieldGroup/FieldGroup.d.ts +0 -17
- package/es/extensions/forms/FieldGroup/FieldGroup.js +0 -77
- package/es/extensions/forms/FieldGroup/FieldGroup.js.map +0 -1
- package/es/extensions/forms/FieldGroup/index.d.ts +0 -2
- package/es/extensions/forms/FieldGroup/index.js +0 -3
- package/es/extensions/forms/FieldGroup/index.js.map +0 -1
- package/es/extensions/forms/Layout/InfoCardSection.d.ts +0 -8
- package/es/extensions/forms/Layout/InfoCardSection.js +0 -17
- package/es/extensions/forms/Layout/InfoCardSection.js.map +0 -1
- package/es/extensions/forms/Value/FirstName.d.ts +0 -7
- package/es/extensions/forms/Value/FirstName.js +0 -16
- package/es/extensions/forms/Value/FirstName.js.map +0 -1
- package/es/extensions/forms/Value/LastName.d.ts +0 -7
- package/es/extensions/forms/Value/LastName.js +0 -16
- package/es/extensions/forms/Value/LastName.js.map +0 -1
- package/es/extensions/forms/Value/hooks/index.d.ts +0 -1
- package/es/extensions/forms/Value/hooks/index.js +0 -1
- package/es/extensions/forms/Value/hooks/index.js.map +0 -1
- package/es/extensions/forms/Value/hooks/useValue.d.ts +0 -2
- package/es/extensions/forms/Value/hooks/useValue.js +0 -22
- package/es/extensions/forms/Value/hooks/useValue.js.map +0 -1
- package/es/extensions/forms/component-types.d.ts +0 -4
- package/es/extensions/forms/component-types.js +0 -1
- package/es/extensions/forms/component-types.js.map +0 -1
- package/es/extensions/forms/field-types.d.ts +0 -58
- package/es/extensions/forms/field-types.js +0 -1
- package/es/extensions/forms/field-types.js.map +0 -1
- package/es/extensions/forms/utils/components.d.ts +0 -3
- package/es/extensions/forms/utils/components.js +0 -23
- package/es/extensions/forms/utils/components.js.map +0 -1
- package/es/extensions/forms/value-types.d.ts +0 -15
- package/es/extensions/forms/value-types.js +0 -1
- package/es/extensions/forms/value-types.js.map +0 -1
- package/extensions/forms/DataContext/SubmitButton.js +0 -20
- package/extensions/forms/DataContext/SubmitButton.js.map +0 -1
- package/extensions/forms/Field/FirstName.d.ts +0 -7
- package/extensions/forms/Field/FirstName.js +0 -19
- package/extensions/forms/Field/FirstName.js.map +0 -1
- package/extensions/forms/Field/LastName.d.ts +0 -7
- package/extensions/forms/Field/LastName.js +0 -19
- package/extensions/forms/Field/LastName.js.map +0 -1
- package/extensions/forms/Field/hooks/index.d.ts +0 -1
- package/extensions/forms/Field/hooks/index.js +0 -1
- package/extensions/forms/Field/hooks/index.js.map +0 -1
- package/extensions/forms/Field/hooks/useField.d.ts +0 -9
- package/extensions/forms/Field/hooks/useField.js.map +0 -1
- package/extensions/forms/FieldGroup/FieldGroup.d.ts +0 -17
- package/extensions/forms/FieldGroup/FieldGroup.js +0 -83
- package/extensions/forms/FieldGroup/FieldGroup.js.map +0 -1
- package/extensions/forms/FieldGroup/index.d.ts +0 -2
- package/extensions/forms/FieldGroup/index.js +0 -3
- package/extensions/forms/FieldGroup/index.js.map +0 -1
- package/extensions/forms/Layout/InfoCardSection.d.ts +0 -8
- package/extensions/forms/Layout/InfoCardSection.js +0 -17
- package/extensions/forms/Layout/InfoCardSection.js.map +0 -1
- package/extensions/forms/Value/FirstName.d.ts +0 -7
- package/extensions/forms/Value/FirstName.js +0 -16
- package/extensions/forms/Value/FirstName.js.map +0 -1
- package/extensions/forms/Value/LastName.d.ts +0 -7
- package/extensions/forms/Value/LastName.js +0 -16
- package/extensions/forms/Value/LastName.js.map +0 -1
- package/extensions/forms/Value/hooks/index.d.ts +0 -1
- package/extensions/forms/Value/hooks/index.js +0 -1
- package/extensions/forms/Value/hooks/index.js.map +0 -1
- package/extensions/forms/Value/hooks/useValue.d.ts +0 -2
- package/extensions/forms/Value/hooks/useValue.js +0 -22
- package/extensions/forms/Value/hooks/useValue.js.map +0 -1
- package/extensions/forms/component-types.d.ts +0 -4
- package/extensions/forms/component-types.js +0 -1
- package/extensions/forms/component-types.js.map +0 -1
- package/extensions/forms/field-types.d.ts +0 -58
- package/extensions/forms/field-types.js +0 -1
- package/extensions/forms/field-types.js.map +0 -1
- package/extensions/forms/utils/components.d.ts +0 -3
- package/extensions/forms/utils/components.js +0 -23
- package/extensions/forms/utils/components.js.map +0 -1
- package/extensions/forms/value-types.d.ts +0 -15
- package/extensions/forms/value-types.js +0 -1
- package/extensions/forms/value-types.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldBlock.js","names":["React","classnames","Div","Span","FormLabel","FormStatus","forwardSpaceProps","FormError","FieldBlock","props","className","forId","layout","label","labelDescription","labelSecondary","info","warning","error","width","contentsWidth","contentClassName","children","cn","undefined","createElement","_extends","for_id","space","bottom","Fragment","state","id","text","message","top","Error","toString","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/FieldBlock/FieldBlock.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { Div, Span } from '../../../elements'\nimport { FormLabel, FormStatus } from '../../../components'\nimport { forwardSpaceProps } from '../utils'\nimport type { ComponentProps } from '../component-types'\nimport { FormError } from '../types'\nimport type { FieldProps } from '../field-types'\n\nexport type Props = ComponentProps &\n Pick<\n FieldProps,\n | 'layout'\n | 'label'\n | 'labelDescription'\n | 'labelSecondary'\n | 'info'\n | 'warning'\n | 'error'\n > & {\n forId?: string\n contentClassName?: string\n children: React.ReactNode\n /** Width of outer block element */\n width?: 'small' | 'medium' | 'large'\n /** Width of contents block, while label etc can be wider if space is available */\n contentsWidth?: 'small' | 'medium' | 'large' | 'stretch'\n }\n\nfunction FieldBlock(props: Props) {\n const {\n className,\n forId,\n layout = 'vertical',\n label,\n labelDescription,\n labelSecondary,\n info,\n warning,\n error,\n width,\n contentsWidth,\n contentClassName,\n children,\n } = props\n\n const cn = classnames(\n 'dnb-forms-field-block',\n `dnb-forms-field-block--layout-${layout}`,\n width !== undefined && `dnb-forms-field-block--width-${width}`,\n className\n )\n\n return (\n <Div className={cn} {...forwardSpaceProps(props)}>\n {labelDescription || labelSecondary ? (\n <div className={classnames('dnb-forms-field-block__label')}>\n {label || labelDescription ? (\n <FormLabel for_id={forId} space={{ bottom: 'x-small' }}>\n {label}\n {labelDescription && (\n <span className=\"dnb-forms-field-block__label-description\">\n {labelDescription}\n </span>\n )}\n </FormLabel>\n ) : (\n <> </>\n )}\n {labelSecondary && (\n <Span className=\"dnb-forms-field-block__label-secondary\">\n {labelSecondary}\n </Span>\n )}\n </div>\n ) : (\n label && (\n <FormLabel for_id={forId} space={{ bottom: 'x-small' }}>\n {label}\n </FormLabel>\n )\n )}\n\n <div\n className={classnames(\n 'dnb-forms-field-block__contents',\n contentsWidth !== undefined &&\n `dnb-forms-field-block__contents--width-${contentsWidth}`,\n contentClassName\n )}\n >\n {children}\n </div>\n\n {error && (\n <div className=\"dnb-forms-field-block__status\">\n <FormStatus\n state=\"error\"\n id={forId ? `${forId}-form-status` : undefined}\n text={error?.message}\n label={label}\n space={{ top: 'x-small' }}\n />\n </div>\n )}\n {warning && (\n <div className=\"dnb-forms-field-block__status\">\n <FormStatus\n state=\"warn\"\n id={forId ? `${forId}-form-status` : undefined}\n text={\n (warning instanceof Error && warning.message) ||\n (warning instanceof FormError && warning.message) ||\n warning?.toString()\n }\n label={label}\n space={{ top: 'x-small' }}\n />\n </div>\n )}\n {info && (\n <div className=\"dnb-forms-field-block__status\">\n <FormStatus\n state=\"info\"\n id={forId ? `${forId}-form-status` : undefined}\n text={\n (info instanceof Error && info.message) ||\n (info instanceof FormError && info.message) ||\n info?.toString()\n }\n label={label}\n space={{ top: 'x-small' }}\n />\n </div>\n )}\n </Div>\n )\n}\n\nFieldBlock._supportsEufemiaSpacingProps = true\nexport default FieldBlock\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FieldBlock.js","names":["React","useMemo","useContext","useState","useCallback","classnames","Div","Span","FormLabel","FormStatus","FormError","pickSpacingProps","FieldBlockContext","FieldBlock","props","nestedFieldBlockContext","className","forId","layout","label","labelDescription","labelSecondary","info","warning","error","errorProp","width","contentsWidth","contentClassName","children","fieldErrorRecord","setFieldErrorRecord","showFieldErrorRecord","setShowFieldErrorRecord","setError","id","existing","_objectSpread","removed","newRecord","_objectWithoutProperties","map","_toPropertyKey","setShowError","show","errors","Object","entries","filter","length","Error","message","join","undefined","cn","createElement","Provider","value","_extends","for_id","space","bottom","Fragment","state","text","top","toString","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/FieldBlock/FieldBlock.tsx"],"sourcesContent":["import React, { useMemo, useContext, useState, useCallback } from 'react'\nimport classnames from 'classnames'\nimport { Div, Span } from '../../../elements'\nimport { FormLabel, FormStatus } from '../../../components'\nimport {\n FormError,\n ComponentProps,\n FieldProps,\n pickSpacingProps,\n} from '../types'\nimport FieldBlockContext from './FieldBlockContext'\n\nexport type Props = Pick<\n FieldProps,\n | keyof ComponentProps\n | 'layout'\n | 'label'\n | 'labelDescription'\n | 'labelSecondary'\n | 'info'\n | 'warning'\n | 'error'\n> & {\n forId?: string\n contentClassName?: string\n children: React.ReactNode\n /** Width of outer block element */\n width?: 'small' | 'medium' | 'large'\n /** Width of contents block, while label etc can be wider if space is available */\n contentsWidth?: 'small' | 'medium' | 'large' | 'stretch'\n}\n\nfunction FieldBlock(props: Props) {\n const nestedFieldBlockContext = useContext(FieldBlockContext)\n\n const {\n className,\n forId,\n layout = 'vertical',\n label,\n labelDescription,\n labelSecondary,\n info,\n warning,\n error: errorProp,\n width,\n contentsWidth,\n contentClassName,\n children,\n } = props\n\n const [fieldErrorRecord, setFieldErrorRecord] = useState<\n Record<string, FormError>\n >({})\n const [showFieldErrorRecord, setShowFieldErrorRecord] = useState<\n Record<string, boolean>\n >({})\n\n const setError = useCallback(\n (id, error) => {\n if (nestedFieldBlockContext) {\n // If this FieldBlock is inside another one, forward the call to the outer one\n nestedFieldBlockContext.setError(id, error)\n return\n }\n\n setFieldErrorRecord((existing) => {\n if (error) {\n return {\n ...existing,\n [id]: error,\n }\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { [id]: removed, ...newRecord } = existing\n return newRecord\n }\n })\n },\n [nestedFieldBlockContext]\n )\n\n const setShowError = useCallback(\n (id, show) => {\n if (nestedFieldBlockContext) {\n // If this FieldBlock is inside another one, forward the call to the outer one\n nestedFieldBlockContext.setShowError(id, show)\n return\n }\n\n setShowFieldErrorRecord((existing) => {\n if (show) {\n return {\n ...existing,\n [id]: true,\n }\n } else {\n const { [id]: removed, ...newRecord } = existing\n return newRecord\n }\n })\n },\n [nestedFieldBlockContext]\n )\n\n const error = useMemo(() => {\n if (errorProp) {\n return errorProp\n }\n const errors = Object.entries(fieldErrorRecord)\n .filter(([id]) => showFieldErrorRecord[id] === true)\n .map(([, error]) => error)\n return errors.length > 0\n ? new Error(errors.map((error) => error.message).join(' | '))\n : undefined\n }, [errorProp, fieldErrorRecord, showFieldErrorRecord])\n\n const cn = classnames(\n 'dnb-forms-field-block',\n `dnb-forms-field-block--layout-${layout}`,\n width !== undefined && `dnb-forms-field-block--width-${width}`,\n className\n )\n\n return (\n <FieldBlockContext.Provider\n value={{\n setError,\n setShowError,\n }}\n >\n <Div className={cn} {...pickSpacingProps(props)}>\n {labelDescription || labelSecondary ? (\n <div className={classnames('dnb-forms-field-block__label')}>\n {label || labelDescription ? (\n <FormLabel for_id={forId} space={{ bottom: 'x-small' }}>\n {label}\n {labelDescription && (\n <span className=\"dnb-forms-field-block__label-description\">\n {labelDescription}\n </span>\n )}\n </FormLabel>\n ) : (\n <> </>\n )}\n {labelSecondary && (\n <Span className=\"dnb-forms-field-block__label-secondary\">\n {labelSecondary}\n </Span>\n )}\n </div>\n ) : (\n label && (\n <FormLabel for_id={forId} space={{ bottom: 'x-small' }}>\n {label}\n </FormLabel>\n )\n )}\n\n <div\n className={classnames(\n 'dnb-forms-field-block__contents',\n contentsWidth !== undefined &&\n `dnb-forms-field-block__contents--width-${contentsWidth}`,\n contentClassName\n )}\n >\n {children}\n </div>\n\n {(error && (\n <div className=\"dnb-forms-field-block__status\">\n <FormStatus\n state=\"error\"\n id={forId ? `${forId}-form-status` : undefined}\n text={error?.message}\n label={label}\n space={{ top: 'x-small' }}\n />\n </div>\n )) ||\n (warning && (\n <div className=\"dnb-forms-field-block__status\">\n <FormStatus\n state=\"warn\"\n id={forId ? `${forId}-form-status` : undefined}\n text={\n (warning instanceof Error && warning.message) ||\n (warning instanceof FormError && warning.message) ||\n warning?.toString()\n }\n label={label}\n space={{ top: 'x-small' }}\n />\n </div>\n )) ||\n (info && (\n <div className=\"dnb-forms-field-block__status\">\n <FormStatus\n state=\"info\"\n id={forId ? `${forId}-form-status` : undefined}\n text={\n (info instanceof Error && info.message) ||\n (info instanceof FormError && info.message) ||\n info?.toString()\n }\n label={label}\n space={{ top: 'x-small' }}\n />\n </div>\n ))}\n </Div>\n </FieldBlockContext.Provider>\n )\n}\n\nFieldBlock._supportsEufemiaSpacingProps = true\nexport default FieldBlock\n"],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FormError } from '../types';
|
|
3
|
+
export interface FieldBlockContextState {
|
|
4
|
+
setError?: (id: string, error: FormError) => void;
|
|
5
|
+
setShowError?: (id: string, showError: boolean) => void;
|
|
6
|
+
}
|
|
7
|
+
declare const FieldBlockContext: React.Context<FieldBlockContextState>;
|
|
8
|
+
export default FieldBlockContext;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldBlockContext.js","names":["React","FieldBlockContext","createContext","undefined"],"sources":["../../../../../src/extensions/forms/FieldBlock/FieldBlockContext.ts"],"sourcesContent":["import React from 'react'\nimport { FormError } from '../types'\n\nexport interface FieldBlockContextState {\n setError?: (id: string, error: FormError) => void\n setShowError?: (id: string, showError: boolean) => void\n}\n\nconst FieldBlockContext = React.createContext<\n FieldBlockContextState | undefined\n>(undefined)\n\nexport default FieldBlockContext\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAQzB,MAAMC,iBAAiB,GAAGD,KAAK,CAACE,aAAa,CAE3CC,SAAS,CAAC;AAEZ,eAAeF,iBAAiB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["default"],"sources":["../../../../../src/extensions/forms/FieldBlock/index.ts"],"sourcesContent":["export { default } from './FieldBlock'\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,cAAc"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["default"],"sources":["../../../../../src/extensions/forms/FieldBlock/index.ts"],"sourcesContent":["export { default } from './FieldBlock'\nexport * from './FieldBlock'\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,cAAc;AACtC,cAAc,cAAc"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { SpacingProps } from '../../../shared/types';
|
|
3
|
+
export type Props = React.HTMLAttributes<HTMLFormElement> & SpacingProps;
|
|
4
|
+
export default function FormElement({ children, className, onSubmit, ...rest }: Props): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
+
const _excluded = ["children", "className", "onSubmit"];
|
|
4
|
+
import React from 'react';
|
|
5
|
+
import Context from '../DataContext/Context';
|
|
6
|
+
import Space from '../../../components/space/Space';
|
|
7
|
+
import classnames from 'classnames';
|
|
8
|
+
export default function FormElement(_ref) {
|
|
9
|
+
let {
|
|
10
|
+
children,
|
|
11
|
+
className = null,
|
|
12
|
+
onSubmit = null
|
|
13
|
+
} = _ref,
|
|
14
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
15
|
+
const dataContext = React.useContext(Context);
|
|
16
|
+
dataContext._isInsideFormElement = true;
|
|
17
|
+
return React.createElement(Space, _extends({
|
|
18
|
+
element: "form",
|
|
19
|
+
className: classnames('dnb-forms__form', className),
|
|
20
|
+
onSubmit: onSubmitHandler
|
|
21
|
+
}, rest), children);
|
|
22
|
+
function onSubmitHandler(event) {
|
|
23
|
+
var _dataContext$handleSu;
|
|
24
|
+
event === null || event === void 0 ? void 0 : event.preventDefault();
|
|
25
|
+
dataContext === null || dataContext === void 0 ? void 0 : (_dataContext$handleSu = dataContext.handleSubmit) === null || _dataContext$handleSu === void 0 ? void 0 : _dataContext$handleSu.call(dataContext);
|
|
26
|
+
if (typeof onSubmit === 'function') {
|
|
27
|
+
onSubmit(event);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=FormElement.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormElement.js","names":["React","Context","Space","classnames","FormElement","_ref","children","className","onSubmit","rest","_objectWithoutProperties","_excluded","dataContext","useContext","_isInsideFormElement","createElement","_extends","element","onSubmitHandler","event","_dataContext$handleSu","preventDefault","handleSubmit","call"],"sources":["../../../../../src/extensions/forms/Form/FormElement.tsx"],"sourcesContent":["import React from 'react'\nimport Context from '../DataContext/Context'\nimport Space from '../../../components/space/Space'\nimport classnames from 'classnames'\nimport type { SpacingProps } from '../../../shared/types'\n\nexport type Props = React.HTMLAttributes<HTMLFormElement> & SpacingProps\n\nexport default function FormElement({\n children,\n className = null,\n onSubmit = null,\n ...rest\n}: Props) {\n const dataContext = React.useContext(Context)\n\n /**\n * Set to true,\n * this way we prevent \"handleSubmit\" to be called twice when the SubmitButton is pressed.\n */\n dataContext._isInsideFormElement = true\n\n return (\n <Space\n element=\"form\"\n className={classnames('dnb-forms__form', className)}\n onSubmit={onSubmitHandler}\n {...rest}\n >\n {children}\n </Space>\n )\n\n function onSubmitHandler(event: React.SyntheticEvent<HTMLFormElement>) {\n event?.preventDefault()\n\n dataContext?.handleSubmit?.()\n\n if (typeof onSubmit === 'function') {\n onSubmit(event)\n }\n }\n}\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,OAAO,MAAM,wBAAwB;AAC5C,OAAOC,KAAK,MAAM,iCAAiC;AACnD,OAAOC,UAAU,MAAM,YAAY;AAKnC,eAAe,SAASC,WAAWA,CAAAC,IAAA,EAKzB;EAAA,IAL0B;MAClCC,QAAQ;MACRC,SAAS,GAAG,IAAI;MAChBC,QAAQ,GAAG;IAEN,CAAC,GAAAH,IAAA;IADHI,IAAI,GAAAC,wBAAA,CAAAL,IAAA,EAAAM,SAAA;EAEP,MAAMC,WAAW,GAAGZ,KAAK,CAACa,UAAU,CAACZ,OAAO,CAAC;EAM7CW,WAAW,CAACE,oBAAoB,GAAG,IAAI;EAEvC,OACEd,KAAA,CAAAe,aAAA,CAACb,KAAK,EAAAc,QAAA;IACJC,OAAO,EAAC,MAAM;IACdV,SAAS,EAAEJ,UAAU,CAAC,iBAAiB,EAAEI,SAAS,CAAE;IACpDC,QAAQ,EAAEU;EAAgB,GACtBT,IAAI,GAEPH,QACI,CAAC;EAGV,SAASY,eAAeA,CAACC,KAA4C,EAAE;IAAA,IAAAC,qBAAA;IACrED,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,cAAc,CAAC,CAAC;IAEvBT,WAAW,aAAXA,WAAW,wBAAAQ,qBAAA,GAAXR,WAAW,CAAEU,YAAY,cAAAF,qBAAA,uBAAzBA,qBAAA,CAAAG,IAAA,CAAAX,WAA4B,CAAC;IAE7B,IAAI,OAAOJ,QAAQ,KAAK,UAAU,EAAE;MAClCA,QAAQ,CAACW,KAAK,CAAC;IACjB;EACF;AACF"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { JsonObject } from 'json-pointer';
|
|
3
|
+
import { Props as ProviderProps } from '../DataContext/Provider';
|
|
4
|
+
import type { SpacingProps } from '../../../shared/types';
|
|
5
|
+
export type Props = React.HTMLAttributes<HTMLFormElement> & SpacingProps;
|
|
6
|
+
export default function FormHandler<Data extends JsonObject>({ children, data, schema, onChange, onPathChange, onSubmit, onSubmitRequest, scrollTopOnSubmit, ...rest }: ProviderProps<Data> & Props): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
2
|
+
const _excluded = ["children", "data", "schema", "onChange", "onPathChange", "onSubmit", "onSubmitRequest", "scrollTopOnSubmit"];
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import Provider from '../DataContext/Provider';
|
|
5
|
+
import FormElement from './FormElement';
|
|
6
|
+
export default function FormHandler(_ref) {
|
|
7
|
+
let {
|
|
8
|
+
children,
|
|
9
|
+
data,
|
|
10
|
+
schema,
|
|
11
|
+
onChange,
|
|
12
|
+
onPathChange,
|
|
13
|
+
onSubmit,
|
|
14
|
+
onSubmitRequest,
|
|
15
|
+
scrollTopOnSubmit
|
|
16
|
+
} = _ref,
|
|
17
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
18
|
+
const ProviderProps = {
|
|
19
|
+
data,
|
|
20
|
+
schema,
|
|
21
|
+
onChange,
|
|
22
|
+
onPathChange,
|
|
23
|
+
onSubmit: data => {
|
|
24
|
+
if (typeof onSubmit === 'function') {
|
|
25
|
+
onSubmit(data);
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
onSubmitRequest,
|
|
29
|
+
scrollTopOnSubmit
|
|
30
|
+
};
|
|
31
|
+
return React.createElement(Provider, ProviderProps, React.createElement(FormElement, rest, children));
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=FormHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormHandler.js","names":["React","Provider","FormElement","FormHandler","_ref","children","data","schema","onChange","onPathChange","onSubmit","onSubmitRequest","scrollTopOnSubmit","rest","_objectWithoutProperties","_excluded","ProviderProps","createElement"],"sources":["../../../../../src/extensions/forms/Form/FormHandler.tsx"],"sourcesContent":["import React from 'react'\nimport { JsonObject } from 'json-pointer'\nimport Provider, { Props as ProviderProps } from '../DataContext/Provider'\nimport FormElement from './FormElement'\nimport type { SpacingProps } from '../../../shared/types'\n\nexport type Props = React.HTMLAttributes<HTMLFormElement> & SpacingProps\n\nexport default function FormHandler<Data extends JsonObject>({\n children,\n data,\n schema,\n onChange,\n onPathChange,\n onSubmit,\n onSubmitRequest,\n scrollTopOnSubmit,\n ...rest\n}: ProviderProps<Data> & Props) {\n const ProviderProps = {\n data,\n schema,\n onChange,\n onPathChange,\n onSubmit: (data: Data) => {\n if (typeof onSubmit === 'function') {\n onSubmit(data)\n }\n },\n onSubmitRequest,\n scrollTopOnSubmit,\n }\n\n return (\n <Provider {...ProviderProps}>\n <FormElement {...rest}>{children}</FormElement>\n </Provider>\n )\n}\n"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,QAAQ,MAAkC,yBAAyB;AAC1E,OAAOC,WAAW,MAAM,eAAe;AAKvC,eAAe,SAASC,WAAWA,CAAAC,IAAA,EAUH;EAAA,IAV6B;MAC3DC,QAAQ;MACRC,IAAI;MACJC,MAAM;MACNC,QAAQ;MACRC,YAAY;MACZC,QAAQ;MACRC,eAAe;MACfC;IAE2B,CAAC,GAAAR,IAAA;IADzBS,IAAI,GAAAC,wBAAA,CAAAV,IAAA,EAAAW,SAAA;EAEP,MAAMC,aAAa,GAAG;IACpBV,IAAI;IACJC,MAAM;IACNC,QAAQ;IACRC,YAAY;IACZC,QAAQ,EAAGJ,IAAU,IAAK;MACxB,IAAI,OAAOI,QAAQ,KAAK,UAAU,EAAE;QAClCA,QAAQ,CAACJ,IAAI,CAAC;MAChB;IACF,CAAC;IACDK,eAAe;IACfC;EACF,CAAC;EAED,OACEZ,KAAA,CAAAiB,aAAA,CAAChB,QAAQ,EAAKe,aAAa,EACzBhB,KAAA,CAAAiB,aAAA,CAACf,WAAW,EAAKW,IAAI,EAAGR,QAAsB,CACtC,CAAC;AAEf"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ComponentProps } from '../types';
|
|
3
|
+
export type Props = ComponentProps & Partial<React.HTMLAttributes<HTMLButtonElement | HTMLAnchorElement>>;
|
|
5
4
|
declare function SubmitButton(props: Props): import("react/jsx-runtime").JSX.Element;
|
|
6
5
|
declare namespace SubmitButton {
|
|
7
6
|
var _supportsEufemiaSpacingProps: boolean;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
+
const _excluded = ["className", "children"];
|
|
4
|
+
import React, { useContext } from 'react';
|
|
5
|
+
import classnames from 'classnames';
|
|
6
|
+
import { Button } from '../../../components';
|
|
7
|
+
import SharedContext from '../../../shared/Context';
|
|
8
|
+
import Context from '../DataContext/Context';
|
|
9
|
+
function SubmitButton(props) {
|
|
10
|
+
const sharedContext = useContext(SharedContext);
|
|
11
|
+
const {
|
|
12
|
+
className,
|
|
13
|
+
children = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.contextSubmit
|
|
14
|
+
} = props,
|
|
15
|
+
rest = _objectWithoutProperties(props, _excluded);
|
|
16
|
+
const dataContext = useContext(Context);
|
|
17
|
+
return React.createElement(Button, _extends({
|
|
18
|
+
className: classnames('dnb-forms__submit-button', className),
|
|
19
|
+
onClick: dataContext._isInsideFormElement ? null : dataContext.handleSubmit,
|
|
20
|
+
type: "submit"
|
|
21
|
+
}, rest), children);
|
|
22
|
+
}
|
|
23
|
+
SubmitButton._supportsEufemiaSpacingProps = true;
|
|
24
|
+
export default SubmitButton;
|
|
25
|
+
//# sourceMappingURL=SubmitButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SubmitButton.js","names":["React","useContext","classnames","Button","SharedContext","Context","SubmitButton","props","sharedContext","className","children","translation","Forms","contextSubmit","rest","_objectWithoutProperties","_excluded","dataContext","createElement","_extends","onClick","_isInsideFormElement","handleSubmit","type","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Form/SubmitButton.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport type { ComponentProps } from '../types'\nimport { Button } from '../../../components'\nimport SharedContext from '../../../shared/Context'\nimport Context from '../DataContext/Context'\n\nexport type Props = ComponentProps &\n Partial<React.HTMLAttributes<HTMLButtonElement | HTMLAnchorElement>>\n\nfunction SubmitButton(props: Props) {\n const sharedContext = useContext(SharedContext)\n const {\n className,\n children = sharedContext?.translation.Forms.contextSubmit,\n ...rest\n } = props\n const dataContext = useContext(Context)\n\n return (\n <Button\n className={classnames('dnb-forms__submit-button', className)}\n onClick={\n dataContext._isInsideFormElement ? null : dataContext.handleSubmit\n }\n type=\"submit\"\n {...rest}\n >\n {children}\n </Button>\n )\n}\n\nSubmitButton._supportsEufemiaSpacingProps = true\nexport default SubmitButton\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,UAAU,MAAM,YAAY;AAEnC,SAASC,MAAM,QAAQ,qBAAqB;AAC5C,OAAOC,aAAa,MAAM,yBAAyB;AACnD,OAAOC,OAAO,MAAM,wBAAwB;AAK5C,SAASC,YAAYA,CAACC,KAAY,EAAE;EAClC,MAAMC,aAAa,GAAGP,UAAU,CAACG,aAAa,CAAC;EAC/C,MAAM;MACJK,SAAS;MACTC,QAAQ,GAAGF,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEG,WAAW,CAACC,KAAK,CAACC;IAE9C,CAAC,GAAGN,KAAK;IADJO,IAAI,GAAAC,wBAAA,CACLR,KAAK,EAAAS,SAAA;EACT,MAAMC,WAAW,GAAGhB,UAAU,CAACI,OAAO,CAAC;EAEvC,OACEL,KAAA,CAAAkB,aAAA,CAACf,MAAM,EAAAgB,QAAA;IACLV,SAAS,EAAEP,UAAU,CAAC,0BAA0B,EAAEO,SAAS,CAAE;IAC7DW,OAAO,EACLH,WAAW,CAACI,oBAAoB,GAAG,IAAI,GAAGJ,WAAW,CAACK,YACvD;IACDC,IAAI,EAAC;EAAQ,GACTT,IAAI,GAEPJ,QACK,CAAC;AAEb;AAEAJ,YAAY,CAACkB,4BAA4B,GAAG,IAAI;AAChD,eAAelB,YAAY"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import SubmitButton from './SubmitButton';
|
|
2
|
+
import Element from './FormElement';
|
|
3
|
+
import Handler from './FormHandler';
|
|
4
|
+
declare const FormExport: {
|
|
5
|
+
Handler: typeof Handler;
|
|
6
|
+
Element: typeof Element;
|
|
7
|
+
SubmitButton: typeof SubmitButton;
|
|
8
|
+
};
|
|
9
|
+
export default FormExport;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["SubmitButton","Element","Handler","FormExport"],"sources":["../../../../../src/extensions/forms/Form/index.ts"],"sourcesContent":["import SubmitButton from './SubmitButton'\nimport Element from './FormElement'\nimport Handler from './FormHandler'\n\nconst FormExport = {\n Handler,\n Element,\n SubmitButton,\n}\n\nexport default FormExport\n"],"mappings":"AAAA,OAAOA,YAAY,MAAM,gBAAgB;AACzC,OAAOC,OAAO,MAAM,eAAe;AACnC,OAAOC,OAAO,MAAM,eAAe;AAEnC,MAAMC,UAAU,GAAG;EACjBD,OAAO;EACPD,OAAO;EACPD;AACF,CAAC;AAED,eAAeG,UAAU"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Props as FlexContainerProps } from '../Layout/FlexContainer';
|
|
3
|
+
import { FieldProps, FieldHelpProps } from '../types';
|
|
4
|
+
interface ErrorMessages {
|
|
5
|
+
required?: string;
|
|
6
|
+
schema?: string;
|
|
7
|
+
}
|
|
8
|
+
export type Props = FieldHelpProps & FieldProps<unknown[], undefined, ErrorMessages> & {
|
|
9
|
+
width?: false | 'small' | 'medium' | 'large' | 'stretch';
|
|
10
|
+
spacing?: FlexContainerProps['spacing'];
|
|
11
|
+
children: React.ReactNode | ((value: any, index: number) => React.ReactNode) | Array<React.ReactNode | ((value: any, index: number) => React.ReactNode)>;
|
|
12
|
+
};
|
|
13
|
+
declare function ArrayComponent(props: Props): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
declare namespace ArrayComponent {
|
|
15
|
+
var _supportsEufemiaSpacingProps: boolean;
|
|
16
|
+
}
|
|
17
|
+
export default ArrayComponent;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import React, { useMemo, useCallback } from 'react';
|
|
3
|
+
import FlexContainer from '../Layout/FlexContainer';
|
|
4
|
+
import classnames from 'classnames';
|
|
5
|
+
import pointer from 'json-pointer';
|
|
6
|
+
import IterateElementContext from './IterateElementContext';
|
|
7
|
+
import FieldBlock from '../FieldBlock';
|
|
8
|
+
import { useDataValue } from '../hooks';
|
|
9
|
+
import { pickSpacingProps } from '../types';
|
|
10
|
+
function ArrayComponent(props) {
|
|
11
|
+
const {
|
|
12
|
+
className,
|
|
13
|
+
layout = 'vertical',
|
|
14
|
+
placeholder,
|
|
15
|
+
label,
|
|
16
|
+
labelDescription,
|
|
17
|
+
labelSecondary,
|
|
18
|
+
path,
|
|
19
|
+
value: arrayValue,
|
|
20
|
+
info,
|
|
21
|
+
warning,
|
|
22
|
+
error,
|
|
23
|
+
emptyValue,
|
|
24
|
+
width,
|
|
25
|
+
spacing = 'small',
|
|
26
|
+
handleChange,
|
|
27
|
+
children
|
|
28
|
+
} = useDataValue(props);
|
|
29
|
+
const elementData = useMemo(() => {
|
|
30
|
+
return (arrayValue ?? []).map((elementValue, elementIndex) => ({
|
|
31
|
+
elementValue,
|
|
32
|
+
handleElementChange: (path, value) => {
|
|
33
|
+
const newArrayValue = structuredClone(arrayValue);
|
|
34
|
+
pointer.set(newArrayValue, path, value);
|
|
35
|
+
handleChange === null || handleChange === void 0 ? void 0 : handleChange(newArrayValue);
|
|
36
|
+
},
|
|
37
|
+
handleRemoveElement: () => {
|
|
38
|
+
const newArrayValue = structuredClone(arrayValue);
|
|
39
|
+
newArrayValue.splice(elementIndex, 1);
|
|
40
|
+
handleChange === null || handleChange === void 0 ? void 0 : handleChange(newArrayValue);
|
|
41
|
+
}
|
|
42
|
+
}));
|
|
43
|
+
}, [arrayValue, handleChange]);
|
|
44
|
+
const handlePush = useCallback(element => {
|
|
45
|
+
handleChange([...(arrayValue ?? []), element]);
|
|
46
|
+
}, [arrayValue, handleChange]);
|
|
47
|
+
return React.createElement(FieldBlock, _extends({
|
|
48
|
+
className: classnames('dnb-forms-field-number', className),
|
|
49
|
+
layout: layout,
|
|
50
|
+
label: label,
|
|
51
|
+
labelDescription: labelDescription,
|
|
52
|
+
labelSecondary: labelSecondary,
|
|
53
|
+
info: info,
|
|
54
|
+
warning: warning,
|
|
55
|
+
error: error,
|
|
56
|
+
contentsWidth: width !== false ? width : undefined
|
|
57
|
+
}, pickSpacingProps(props)), React.createElement(FlexContainer, {
|
|
58
|
+
direction: layout === 'horizontal' ? 'row' : 'column',
|
|
59
|
+
spacing: spacing
|
|
60
|
+
}, arrayValue === emptyValue ? React.createElement("em", null, placeholder) : elementData.map(({
|
|
61
|
+
elementValue,
|
|
62
|
+
handleElementChange,
|
|
63
|
+
handleRemoveElement
|
|
64
|
+
}, elementIndex) => {
|
|
65
|
+
return React.createElement(IterateElementContext.Provider, {
|
|
66
|
+
key: `element-${elementIndex}`,
|
|
67
|
+
value: {
|
|
68
|
+
index: elementIndex,
|
|
69
|
+
value: elementValue,
|
|
70
|
+
path,
|
|
71
|
+
handleChange: handleElementChange,
|
|
72
|
+
handleRemove: handleRemoveElement,
|
|
73
|
+
handlePush
|
|
74
|
+
}
|
|
75
|
+
}, Array.isArray(children) ? children.map(childElement => typeof childElement === 'function' ? childElement(elementValue, elementIndex) : childElement) : typeof children === 'function' ? children(elementValue, elementIndex) : children);
|
|
76
|
+
})));
|
|
77
|
+
}
|
|
78
|
+
ArrayComponent._supportsEufemiaSpacingProps = true;
|
|
79
|
+
export default ArrayComponent;
|
|
80
|
+
//# sourceMappingURL=Array.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Array.js","names":["React","useMemo","useCallback","FlexContainer","classnames","pointer","IterateElementContext","FieldBlock","useDataValue","pickSpacingProps","ArrayComponent","props","className","layout","placeholder","label","labelDescription","labelSecondary","path","value","arrayValue","info","warning","error","emptyValue","width","spacing","handleChange","children","elementData","map","elementValue","elementIndex","handleElementChange","newArrayValue","structuredClone","set","handleRemoveElement","splice","handlePush","element","createElement","_extends","contentsWidth","undefined","direction","Provider","key","index","handleRemove","Array","isArray","childElement","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Iterate/Array.tsx"],"sourcesContent":["import React, { useMemo, useCallback } from 'react'\nimport FlexContainer, {\n Props as FlexContainerProps,\n} from '../Layout/FlexContainer'\nimport classnames from 'classnames'\nimport pointer from 'json-pointer'\nimport IterateElementContext from './IterateElementContext'\nimport FieldBlock from '../FieldBlock'\nimport { useDataValue } from '../hooks'\nimport { FieldProps, FieldHelpProps, pickSpacingProps } from '../types'\n\ninterface ErrorMessages {\n required?: string\n schema?: string\n}\n\nexport type Props = FieldHelpProps &\n FieldProps<unknown[], undefined, ErrorMessages> & {\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n spacing?: FlexContainerProps['spacing']\n children:\n | React.ReactNode\n | ((value: any, index: number) => React.ReactNode)\n | Array<\n | React.ReactNode\n | ((value: any, index: number) => React.ReactNode)\n >\n }\n\nfunction ArrayComponent(props: Props) {\n const {\n className,\n layout = 'vertical',\n placeholder,\n label,\n labelDescription,\n labelSecondary,\n path,\n value: arrayValue,\n info,\n warning,\n error,\n emptyValue,\n width,\n spacing = 'small',\n handleChange,\n children,\n } = useDataValue(props)\n\n const elementData: {\n elementValue: unknown\n handleElementChange: (path: string, value: unknown) => void\n handleRemoveElement: () => void\n }[] = useMemo(() => {\n return (arrayValue ?? []).map((elementValue, elementIndex) => ({\n elementValue,\n handleElementChange: (path, value) => {\n const newArrayValue = structuredClone(arrayValue)\n pointer.set(newArrayValue, path, value)\n handleChange?.(newArrayValue)\n },\n handleRemoveElement: () => {\n const newArrayValue = structuredClone(arrayValue)\n newArrayValue.splice(elementIndex, 1)\n handleChange?.(newArrayValue)\n },\n }))\n }, [arrayValue, handleChange])\n\n const handlePush = useCallback(\n (element: unknown) => {\n handleChange([...(arrayValue ?? []), element])\n },\n [arrayValue, handleChange]\n )\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-number', className)}\n layout={layout}\n label={label}\n labelDescription={labelDescription}\n labelSecondary={labelSecondary}\n info={info}\n warning={warning}\n error={error}\n contentsWidth={width !== false ? width : undefined}\n {...pickSpacingProps(props)}\n >\n <FlexContainer\n direction={layout === 'horizontal' ? 'row' : 'column'}\n spacing={spacing}\n >\n {arrayValue === emptyValue ? (\n <em>{placeholder}</em>\n ) : (\n elementData.map(\n (\n { elementValue, handleElementChange, handleRemoveElement },\n elementIndex\n ) => {\n return (\n <IterateElementContext.Provider\n key={`element-${elementIndex}`}\n value={{\n index: elementIndex,\n value: elementValue,\n path,\n handleChange: handleElementChange,\n handleRemove: handleRemoveElement,\n handlePush,\n }}\n >\n {Array.isArray(children)\n ? children.map((childElement) =>\n typeof childElement === 'function'\n ? childElement(elementValue, elementIndex)\n : childElement\n )\n : typeof children === 'function'\n ? children(elementValue, elementIndex)\n : children}\n </IterateElementContext.Provider>\n )\n }\n )\n )}\n </FlexContainer>\n </FieldBlock>\n )\n}\n\nArrayComponent._supportsEufemiaSpacingProps = true\nexport default ArrayComponent\n"],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ButtonProps } from '../../../components/Button';
|
|
2
|
+
import { DataValueReadWriteComponentProps } from '../types';
|
|
3
|
+
export type Props = ButtonProps & DataValueReadWriteComponentProps<unknown[]> & {
|
|
4
|
+
pushValue: unknown;
|
|
5
|
+
};
|
|
6
|
+
declare function ArrayPushButton(props: Props): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
declare namespace ArrayPushButton {
|
|
8
|
+
var _supportsEufemiaSpacingProps: boolean;
|
|
9
|
+
}
|
|
10
|
+
export default ArrayPushButton;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
+
const _excluded = ["pushValue"];
|
|
4
|
+
import React, { useCallback, useContext } from 'react';
|
|
5
|
+
import classnames from 'classnames';
|
|
6
|
+
import { Button } from '../../../components';
|
|
7
|
+
import IterateElementContext from './IterateElementContext';
|
|
8
|
+
import { useDataValue } from '../hooks';
|
|
9
|
+
import { omitDataValueReadWriteProps } from '../types';
|
|
10
|
+
function ArrayPushButton(props) {
|
|
11
|
+
const iterateElementContext = useContext(IterateElementContext);
|
|
12
|
+
const {
|
|
13
|
+
handlePush
|
|
14
|
+
} = iterateElementContext ?? {};
|
|
15
|
+
const {
|
|
16
|
+
pushValue
|
|
17
|
+
} = props,
|
|
18
|
+
restProps = _objectWithoutProperties(props, _excluded);
|
|
19
|
+
const buttonProps = omitDataValueReadWriteProps(restProps);
|
|
20
|
+
const {
|
|
21
|
+
value,
|
|
22
|
+
handleChange,
|
|
23
|
+
children
|
|
24
|
+
} = useDataValue(restProps);
|
|
25
|
+
if (value !== undefined && !Array.isArray(value)) {
|
|
26
|
+
throw new Error('ArrayPushButton received a non-array value.');
|
|
27
|
+
}
|
|
28
|
+
const handleClick = useCallback(() => {
|
|
29
|
+
if (handlePush) {
|
|
30
|
+
handlePush(pushValue);
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
handleChange([...(value ?? []), pushValue]);
|
|
34
|
+
}, [value, pushValue, handlePush, handleChange]);
|
|
35
|
+
return React.createElement(Button, _extends({
|
|
36
|
+
className: classnames('dnb-forms-array-push-button', props.className),
|
|
37
|
+
on_click: handleClick
|
|
38
|
+
}, buttonProps), children);
|
|
39
|
+
}
|
|
40
|
+
ArrayPushButton._supportsEufemiaSpacingProps = true;
|
|
41
|
+
export default ArrayPushButton;
|
|
42
|
+
//# sourceMappingURL=ArrayPushButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArrayPushButton.js","names":["React","useCallback","useContext","classnames","Button","IterateElementContext","useDataValue","omitDataValueReadWriteProps","ArrayPushButton","props","iterateElementContext","handlePush","pushValue","restProps","_objectWithoutProperties","_excluded","buttonProps","value","handleChange","children","undefined","Array","isArray","Error","handleClick","createElement","_extends","className","on_click","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Iterate/ArrayPushButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button } from '../../../components'\nimport { ButtonProps } from '../../../components/Button'\nimport IterateElementContext from './IterateElementContext'\nimport { useDataValue } from '../hooks'\nimport {\n DataValueReadWriteComponentProps,\n omitDataValueReadWriteProps,\n} from '../types'\n\nexport type Props = ButtonProps &\n DataValueReadWriteComponentProps<unknown[]> & {\n pushValue: unknown\n }\n\nfunction ArrayPushButton(props: Props) {\n const iterateElementContext = useContext(IterateElementContext)\n const { handlePush } = iterateElementContext ?? {}\n\n const { pushValue, ...restProps } = props\n const buttonProps = omitDataValueReadWriteProps(restProps)\n const { value, handleChange, children } = useDataValue(restProps)\n\n if (value !== undefined && !Array.isArray(value)) {\n throw new Error('ArrayPushButton received a non-array value.')\n }\n\n const handleClick = useCallback(() => {\n if (handlePush) {\n // Inside an Iterate element - make the change through the Iterate component\n handlePush(pushValue)\n return\n }\n\n // If not inside an iterate, it could still manipulate a source data set through useDataValue\n handleChange([...(value ?? []), pushValue])\n }, [value, pushValue, handlePush, handleChange])\n\n return (\n <Button\n className={classnames(\n 'dnb-forms-array-push-button',\n props.className\n )}\n on_click={handleClick}\n {...buttonProps}\n >\n {children}\n </Button>\n )\n}\n\nArrayPushButton._supportsEufemiaSpacingProps = true\nexport default ArrayPushButton\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,QAAQ,OAAO;AACtD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,MAAM,QAAQ,qBAAqB;AAE5C,OAAOC,qBAAqB,MAAM,yBAAyB;AAC3D,SAASC,YAAY,QAAQ,UAAU;AACvC,SAEEC,2BAA2B,QACtB,UAAU;AAOjB,SAASC,eAAeA,CAACC,KAAY,EAAE;EACrC,MAAMC,qBAAqB,GAAGR,UAAU,CAACG,qBAAqB,CAAC;EAC/D,MAAM;IAAEM;EAAW,CAAC,GAAGD,qBAAqB,IAAI,CAAC,CAAC;EAElD,MAAM;MAAEE;IAAwB,CAAC,GAAGH,KAAK;IAAnBI,SAAS,GAAAC,wBAAA,CAAKL,KAAK,EAAAM,SAAA;EACzC,MAAMC,WAAW,GAAGT,2BAA2B,CAACM,SAAS,CAAC;EAC1D,MAAM;IAAEI,KAAK;IAAEC,YAAY;IAAEC;EAAS,CAAC,GAAGb,YAAY,CAACO,SAAS,CAAC;EAEjE,IAAII,KAAK,KAAKG,SAAS,IAAI,CAACC,KAAK,CAACC,OAAO,CAACL,KAAK,CAAC,EAAE;IAChD,MAAM,IAAIM,KAAK,CAAC,6CAA6C,CAAC;EAChE;EAEA,MAAMC,WAAW,GAAGvB,WAAW,CAAC,MAAM;IACpC,IAAIU,UAAU,EAAE;MAEdA,UAAU,CAACC,SAAS,CAAC;MACrB;IACF;IAGAM,YAAY,CAAC,CAAC,IAAID,KAAK,IAAI,EAAE,CAAC,EAAEL,SAAS,CAAC,CAAC;EAC7C,CAAC,EAAE,CAACK,KAAK,EAAEL,SAAS,EAAED,UAAU,EAAEO,YAAY,CAAC,CAAC;EAEhD,OACElB,KAAA,CAAAyB,aAAA,CAACrB,MAAM,EAAAsB,QAAA;IACLC,SAAS,EAAExB,UAAU,CACnB,6BAA6B,EAC7BM,KAAK,CAACkB,SACR,CAAE;IACFC,QAAQ,EAAEJ;EAAY,GAClBR,WAAW,GAEdG,QACK,CAAC;AAEb;AAEAX,eAAe,CAACqB,4BAA4B,GAAG,IAAI;AACnD,eAAerB,eAAe"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ButtonProps } from '../../../components/Button';
|
|
2
|
+
import { DataValueReadWriteComponentProps } from '../types';
|
|
3
|
+
export type Props = ButtonProps & DataValueReadWriteComponentProps<unknown[]>;
|
|
4
|
+
declare function ArrayRemoveElementButton(props: Props): import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
declare namespace ArrayRemoveElementButton {
|
|
6
|
+
var _supportsEufemiaSpacingProps: boolean;
|
|
7
|
+
}
|
|
8
|
+
export default ArrayRemoveElementButton;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import React, { useCallback, useContext } from 'react';
|
|
3
|
+
import classnames from 'classnames';
|
|
4
|
+
import { Button } from '../../../components';
|
|
5
|
+
import IterateElementContext from './IterateElementContext';
|
|
6
|
+
import { useDataValue } from '../hooks';
|
|
7
|
+
import { omitDataValueReadWriteProps } from '../types';
|
|
8
|
+
function ArrayRemoveElementButton(props) {
|
|
9
|
+
const iterateElementContext = useContext(IterateElementContext);
|
|
10
|
+
const {
|
|
11
|
+
handleRemove
|
|
12
|
+
} = iterateElementContext ?? {};
|
|
13
|
+
if (!iterateElementContext) {
|
|
14
|
+
throw new Error('ArrayRemoveElementButton must be inside an Iterate.Array component.');
|
|
15
|
+
}
|
|
16
|
+
const buttonProps = omitDataValueReadWriteProps(props);
|
|
17
|
+
const {
|
|
18
|
+
children
|
|
19
|
+
} = useDataValue(props);
|
|
20
|
+
const handleClick = useCallback(() => {
|
|
21
|
+
handleRemove();
|
|
22
|
+
}, [handleRemove]);
|
|
23
|
+
return React.createElement(Button, _extends({
|
|
24
|
+
className: classnames('dnb-forms-array-remove-element-button', props.className),
|
|
25
|
+
on_click: handleClick
|
|
26
|
+
}, buttonProps), children);
|
|
27
|
+
}
|
|
28
|
+
ArrayRemoveElementButton._supportsEufemiaSpacingProps = true;
|
|
29
|
+
export default ArrayRemoveElementButton;
|
|
30
|
+
//# sourceMappingURL=ArrayRemoveElementButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArrayRemoveElementButton.js","names":["React","useCallback","useContext","classnames","Button","IterateElementContext","useDataValue","omitDataValueReadWriteProps","ArrayRemoveElementButton","props","iterateElementContext","handleRemove","Error","buttonProps","children","handleClick","createElement","_extends","className","on_click","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Iterate/ArrayRemoveElementButton.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport classnames from 'classnames'\nimport { Button } from '../../../components'\nimport { ButtonProps } from '../../../components/Button'\nimport IterateElementContext from './IterateElementContext'\nimport { useDataValue } from '../hooks'\nimport {\n DataValueReadWriteComponentProps,\n omitDataValueReadWriteProps,\n} from '../types'\n\nexport type Props = ButtonProps &\n DataValueReadWriteComponentProps<unknown[]>\n\nfunction ArrayRemoveElementButton(props: Props) {\n const iterateElementContext = useContext(IterateElementContext)\n const { handleRemove } = iterateElementContext ?? {}\n\n if (!iterateElementContext) {\n throw new Error(\n 'ArrayRemoveElementButton must be inside an Iterate.Array component.'\n )\n }\n\n const buttonProps = omitDataValueReadWriteProps(props)\n\n const { children } = useDataValue(props)\n\n const handleClick = useCallback(() => {\n handleRemove()\n }, [handleRemove])\n\n return (\n <Button\n className={classnames(\n 'dnb-forms-array-remove-element-button',\n props.className\n )}\n on_click={handleClick}\n {...buttonProps}\n >\n {children}\n </Button>\n )\n}\n\nArrayRemoveElementButton._supportsEufemiaSpacingProps = true\nexport default ArrayRemoveElementButton\n"],"mappings":";AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,UAAU,QAAQ,OAAO;AACtD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,MAAM,QAAQ,qBAAqB;AAE5C,OAAOC,qBAAqB,MAAM,yBAAyB;AAC3D,SAASC,YAAY,QAAQ,UAAU;AACvC,SAEEC,2BAA2B,QACtB,UAAU;AAKjB,SAASC,wBAAwBA,CAACC,KAAY,EAAE;EAC9C,MAAMC,qBAAqB,GAAGR,UAAU,CAACG,qBAAqB,CAAC;EAC/D,MAAM;IAAEM;EAAa,CAAC,GAAGD,qBAAqB,IAAI,CAAC,CAAC;EAEpD,IAAI,CAACA,qBAAqB,EAAE;IAC1B,MAAM,IAAIE,KAAK,CACb,qEACF,CAAC;EACH;EAEA,MAAMC,WAAW,GAAGN,2BAA2B,CAACE,KAAK,CAAC;EAEtD,MAAM;IAAEK;EAAS,CAAC,GAAGR,YAAY,CAACG,KAAK,CAAC;EAExC,MAAMM,WAAW,GAAGd,WAAW,CAAC,MAAM;IACpCU,YAAY,CAAC,CAAC;EAChB,CAAC,EAAE,CAACA,YAAY,CAAC,CAAC;EAElB,OACEX,KAAA,CAAAgB,aAAA,CAACZ,MAAM,EAAAa,QAAA;IACLC,SAAS,EAAEf,UAAU,CACnB,uCAAuC,EACvCM,KAAK,CAACS,SACR,CAAE;IACFC,QAAQ,EAAEJ;EAAY,GAClBF,WAAW,GAEdC,QACK,CAAC;AAEb;AAEAN,wBAAwB,CAACY,4BAA4B,GAAG,IAAI;AAC5D,eAAeZ,wBAAwB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface IterateElementContextState {
|
|
3
|
+
index: number;
|
|
4
|
+
value: unknown;
|
|
5
|
+
path?: string;
|
|
6
|
+
handleChange: (path: string, value: unknown) => void;
|
|
7
|
+
handleRemove: () => void;
|
|
8
|
+
handlePush: (value: unknown) => void;
|
|
9
|
+
}
|
|
10
|
+
declare const IterateElementContext: React.Context<IterateElementContextState>;
|
|
11
|
+
export default IterateElementContext;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IterateElementContext.js","names":["React","IterateElementContext","createContext","undefined"],"sources":["../../../../../src/extensions/forms/Iterate/IterateElementContext.ts"],"sourcesContent":["import React from 'react'\n\nexport interface IterateElementContextState {\n index: number\n value: unknown\n path?: string\n handleChange: (path: string, value: unknown) => void\n handleRemove: () => void\n handlePush: (value: unknown) => void\n}\n\nconst IterateElementContext = React.createContext<\n IterateElementContextState | undefined\n>(undefined)\n\nexport default IterateElementContext\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAWzB,MAAMC,qBAAqB,GAAGD,KAAK,CAACE,aAAa,CAE/CC,SAAS,CAAC;AAEZ,eAAeF,qBAAqB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import ArrayComponent from './Array';
|
|
2
|
+
import ArrayPushButton from './ArrayPushButton';
|
|
3
|
+
import ArrayRemoveElementButton from './ArrayRemoveElementButton';
|
|
4
|
+
import IterateElementContext from './IterateElementContext';
|
|
5
|
+
declare const Iterate: {
|
|
6
|
+
Array: typeof ArrayComponent;
|
|
7
|
+
ArrayPushButton: typeof ArrayPushButton;
|
|
8
|
+
ArrayRemoveElementButton: typeof ArrayRemoveElementButton;
|
|
9
|
+
};
|
|
10
|
+
export default Iterate;
|
|
11
|
+
export { IterateElementContext };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import ArrayComponent from './Array';
|
|
2
|
+
import ArrayPushButton from './ArrayPushButton';
|
|
3
|
+
import ArrayRemoveElementButton from './ArrayRemoveElementButton';
|
|
4
|
+
import IterateElementContext from './IterateElementContext';
|
|
5
|
+
const Iterate = {
|
|
6
|
+
Array: ArrayComponent,
|
|
7
|
+
ArrayPushButton,
|
|
8
|
+
ArrayRemoveElementButton
|
|
9
|
+
};
|
|
10
|
+
export default Iterate;
|
|
11
|
+
export { IterateElementContext };
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["ArrayComponent","ArrayPushButton","ArrayRemoveElementButton","IterateElementContext","Iterate","Array"],"sources":["../../../../../src/extensions/forms/Iterate/index.ts"],"sourcesContent":["import ArrayComponent from './Array'\nimport ArrayPushButton from './ArrayPushButton'\nimport ArrayRemoveElementButton from './ArrayRemoveElementButton'\nimport IterateElementContext from './IterateElementContext'\n\nconst Iterate = {\n Array: ArrayComponent,\n ArrayPushButton,\n ArrayRemoveElementButton,\n}\n\nexport default Iterate\n\nexport { IterateElementContext }\n"],"mappings":"AAAA,OAAOA,cAAc,MAAM,SAAS;AACpC,OAAOC,eAAe,MAAM,mBAAmB;AAC/C,OAAOC,wBAAwB,MAAM,4BAA4B;AACjE,OAAOC,qBAAqB,MAAM,yBAAyB;AAE3D,MAAMC,OAAO,GAAG;EACdC,KAAK,EAAEL,cAAc;EACrBC,eAAe;EACfC;AACF,CAAC;AAED,eAAeE,OAAO;AAEtB,SAASD,qBAAqB"}
|
|
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
4
|
import { Div } from '../../../elements';
|
|
5
|
-
import {
|
|
5
|
+
import { pickSpacingProps } from '../types';
|
|
6
6
|
function ButtonRow(props) {
|
|
7
7
|
const {
|
|
8
8
|
className,
|
|
@@ -10,7 +10,7 @@ function ButtonRow(props) {
|
|
|
10
10
|
} = props;
|
|
11
11
|
return React.createElement(Div, _extends({
|
|
12
12
|
className: classnames('dnb-forms-button-row', className)
|
|
13
|
-
},
|
|
13
|
+
}, pickSpacingProps(props)), children);
|
|
14
14
|
}
|
|
15
15
|
ButtonRow._supportsEufemiaSpacingProps = true;
|
|
16
16
|
export default ButtonRow;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonRow.js","names":["React","classnames","Div","
|
|
1
|
+
{"version":3,"file":"ButtonRow.js","names":["React","classnames","Div","pickSpacingProps","ButtonRow","props","className","children","createElement","_extends","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Layout/ButtonRow.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { Div } from '../../../elements'\nimport { ComponentProps, pickSpacingProps } from '../types'\n\nexport type Props = ComponentProps & {\n children?: React.ReactNode\n}\n\nfunction ButtonRow(props: Props) {\n const { className, children } = props\n return (\n <Div\n className={classnames('dnb-forms-button-row', className)}\n {...pickSpacingProps(props)}\n >\n {children}\n </Div>\n )\n}\n\nButtonRow._supportsEufemiaSpacingProps = true\nexport default ButtonRow\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,GAAG,QAAQ,mBAAmB;AACvC,SAAyBC,gBAAgB,QAAQ,UAAU;AAM3D,SAASC,SAASA,CAACC,KAAY,EAAE;EAC/B,MAAM;IAAEC,SAAS;IAAEC;EAAS,CAAC,GAAGF,KAAK;EACrC,OACEL,KAAA,CAAAQ,aAAA,CAACN,GAAG,EAAAO,QAAA;IACFH,SAAS,EAAEL,UAAU,CAAC,sBAAsB,EAAEK,SAAS;EAAE,GACrDH,gBAAgB,CAACE,KAAK,CAAC,GAE1BE,QACE,CAAC;AAEV;AAEAH,SAAS,CAACM,4BAA4B,GAAG,IAAI;AAC7C,eAAeN,SAAS"}
|