@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,6 +1,5 @@
|
|
|
1
1
|
import { InputMaskedProps } from '../../../components/InputMasked';
|
|
2
|
-
import
|
|
3
|
-
import type { FieldProps, FieldHelpProps } from '../field-types';
|
|
2
|
+
import { FieldProps, FieldHelpProps } from '../types';
|
|
4
3
|
interface ErrorMessages {
|
|
5
4
|
required?: string;
|
|
6
5
|
schema?: string;
|
|
@@ -10,7 +9,7 @@ interface ErrorMessages {
|
|
|
10
9
|
exclusiveMaximum?: string;
|
|
11
10
|
multipleOf?: string;
|
|
12
11
|
}
|
|
13
|
-
export type Props =
|
|
12
|
+
export type Props = FieldHelpProps & FieldProps<number, undefined, ErrorMessages> & {
|
|
14
13
|
inputClassName?: string;
|
|
15
14
|
currency?: InputMaskedProps['as_currency'];
|
|
16
15
|
percent?: InputMaskedProps['as_percent'];
|
|
@@ -7,9 +7,9 @@ exports.default = void 0;
|
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _components = require("../../../components");
|
|
9
9
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
10
|
-
var _utils = require("../utils");
|
|
11
10
|
var _FieldBlock = _interopRequireDefault(require("../FieldBlock"));
|
|
12
|
-
var _hooks = require("
|
|
11
|
+
var _hooks = require("../hooks");
|
|
12
|
+
var _types = require("../types");
|
|
13
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
14
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
15
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -102,7 +102,7 @@ function NumberComponent(props) {
|
|
|
102
102
|
handleFocus,
|
|
103
103
|
handleBlur,
|
|
104
104
|
handleChange
|
|
105
|
-
} = (0, _hooks.
|
|
105
|
+
} = (0, _hooks.useDataValue)(preparedProps);
|
|
106
106
|
return _react.default.createElement(_FieldBlock.default, _extends({
|
|
107
107
|
className: (0, _classnames.default)('dnb-forms-field-number', className),
|
|
108
108
|
forId: id,
|
|
@@ -114,7 +114,7 @@ function NumberComponent(props) {
|
|
|
114
114
|
warning: warning,
|
|
115
115
|
error: error,
|
|
116
116
|
contentsWidth: width !== false ? width : undefined
|
|
117
|
-
}, (0,
|
|
117
|
+
}, (0, _types.pickSpacingProps)(props)), _react.default.createElement(_components.InputMasked, _extends({
|
|
118
118
|
id: id,
|
|
119
119
|
className: (0, _classnames.default)('dnb-forms-field-number__input', inputClassName),
|
|
120
120
|
placeholder: placeholder,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Number.js","names":["_react","_interopRequireWildcard","require","_components","_classnames","_interopRequireDefault","_utils","_FieldBlock","_hooks","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","NumberComponent","props","currency","percent","mask","thousandSeparator","decimalSymbol","decimalLimit","prefix","suffix","rightAligned","maskProps","useMemo","as_currency","as_percent","as_number","number_mask","includeThousandsSeparator","thousandsSeparatorSymbol","preparedProps","schema","type","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","toInput","external","fromInput","_ref","numberValue","emptyValue","width","id","className","inputClassName","layout","placeholder","label","labelDescription","labelSecondary","disabled","info","warning","error","help","handleFocus","handleBlur","handleChange","useField","createElement","classnames","forId","contentsWidth","forwardSpaceProps","InputMasked","right","on_focus","on_blur","on_change","stretch","HelpButton","title","contents","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/Number.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport { InputMasked, HelpButton } from '../../../components'\nimport { InputMaskedProps } from '../../../components/InputMasked'\nimport classnames from 'classnames'\nimport { forwardSpaceProps } from '../utils'\nimport FieldBlock from '../FieldBlock'\nimport { useField } from './hooks'\nimport type { ComponentProps } from '../component-types'\nimport type { FieldProps, FieldHelpProps } from '../field-types'\n\ninterface ErrorMessages {\n required?: string\n schema?: string\n minimum?: string\n maximum?: string\n exclusiveMinimum?: string\n exclusiveMaximum?: string\n multipleOf?: string\n}\n\nexport type Props = ComponentProps &\n FieldHelpProps &\n FieldProps<number, undefined, ErrorMessages> & {\n inputClassName?: string\n currency?: InputMaskedProps['as_currency']\n percent?: InputMaskedProps['as_percent']\n mask?: InputMaskedProps['mask']\n // Formatting\n thousandSeparator?: string | true\n decimalSymbol?: string\n decimalLimit?: number\n prefix?: string\n suffix?: string\n // Validation\n minimum?: number // aka greater than or equal to\n maximum?: number // aka less than or equal to\n exclusiveMinimum?: number // aka greater than\n exclusiveMaximum?: number // aka less than\n multipleOf?: number\n // Styling\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n rightAligned?: boolean\n }\n\nfunction NumberComponent(props: Props) {\n const {\n currency,\n percent,\n mask,\n thousandSeparator,\n decimalSymbol = ',',\n decimalLimit = 12,\n prefix,\n suffix,\n rightAligned,\n } = props\n\n const maskProps: Partial<InputMaskedProps> = useMemo(() => {\n if (currency) {\n return {\n as_currency: currency,\n }\n }\n if (percent) {\n return {\n as_percent: percent,\n }\n }\n // Custom mask based on props\n return {\n as_number: true,\n mask,\n number_mask: {\n decimalLimit,\n decimalSymbol,\n includeThousandsSeparator: thousandSeparator !== undefined,\n thousandsSeparatorSymbol:\n thousandSeparator === true ? ' ' : thousandSeparator,\n prefix,\n suffix,\n },\n }\n }, [\n currency,\n percent,\n mask,\n decimalLimit,\n decimalSymbol,\n thousandSeparator,\n prefix,\n suffix,\n ])\n\n const preparedProps: Props = {\n ...props,\n schema: props.schema ?? {\n type: 'number',\n minimum: props.minimum,\n maximum: props.maximum,\n exclusiveMinimum: props.exclusiveMinimum,\n exclusiveMaximum: props.exclusiveMaximum,\n multipleOf: props.multipleOf,\n },\n toInput: (external: number | undefined) => {\n if (external === undefined) {\n return ''\n }\n return external\n },\n fromInput: ({\n value,\n numberValue,\n }: {\n value: string\n numberValue: number\n }) => {\n if (value === '') {\n return emptyValue\n }\n return numberValue\n },\n width: props.width ?? 'medium',\n }\n\n const {\n id,\n className,\n inputClassName,\n layout,\n placeholder,\n label,\n labelDescription,\n labelSecondary,\n value,\n disabled,\n info,\n warning,\n error,\n help,\n emptyValue,\n width,\n handleFocus,\n handleBlur,\n handleChange,\n } = useField(preparedProps)\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-number', className)}\n forId={id}\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 {...forwardSpaceProps(props)}\n >\n <InputMasked\n id={id}\n className={classnames(\n 'dnb-forms-field-number__input',\n inputClassName\n )}\n placeholder={placeholder}\n value={value}\n {...maskProps}\n right={rightAligned}\n on_focus={handleFocus}\n on_blur={handleBlur}\n on_change={handleChange}\n disabled={disabled}\n stretch={width !== undefined}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n />\n </FieldBlock>\n )\n}\n\nNumberComponent._supportsEufemiaSpacingProps = true\nexport default NumberComponent\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Number.js","names":["_react","_interopRequireWildcard","require","_components","_classnames","_interopRequireDefault","_FieldBlock","_hooks","_types","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","NumberComponent","props","currency","percent","mask","thousandSeparator","decimalSymbol","decimalLimit","prefix","suffix","rightAligned","maskProps","useMemo","as_currency","as_percent","as_number","number_mask","includeThousandsSeparator","thousandsSeparatorSymbol","preparedProps","schema","type","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","toInput","external","fromInput","_ref","numberValue","emptyValue","width","id","className","inputClassName","layout","placeholder","label","labelDescription","labelSecondary","disabled","info","warning","error","help","handleFocus","handleBlur","handleChange","useDataValue","createElement","classnames","forId","contentsWidth","pickSpacingProps","InputMasked","right","on_focus","on_blur","on_change","stretch","HelpButton","title","contents","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/Number.tsx"],"sourcesContent":["import React, { useMemo } from 'react'\nimport { InputMasked, HelpButton } from '../../../components'\nimport { InputMaskedProps } from '../../../components/InputMasked'\nimport classnames from 'classnames'\nimport FieldBlock from '../FieldBlock'\nimport { useDataValue } from '../hooks'\nimport { FieldProps, FieldHelpProps, pickSpacingProps } from '../types'\n\ninterface ErrorMessages {\n required?: string\n schema?: string\n minimum?: string\n maximum?: string\n exclusiveMinimum?: string\n exclusiveMaximum?: string\n multipleOf?: string\n}\n\nexport type Props = FieldHelpProps &\n FieldProps<number, undefined, ErrorMessages> & {\n inputClassName?: string\n currency?: InputMaskedProps['as_currency']\n percent?: InputMaskedProps['as_percent']\n mask?: InputMaskedProps['mask']\n // Formatting\n thousandSeparator?: string | true\n decimalSymbol?: string\n decimalLimit?: number\n prefix?: string\n suffix?: string\n // Validation\n minimum?: number // aka greater than or equal to\n maximum?: number // aka less than or equal to\n exclusiveMinimum?: number // aka greater than\n exclusiveMaximum?: number // aka less than\n multipleOf?: number\n // Styling\n width?: false | 'small' | 'medium' | 'large' | 'stretch'\n rightAligned?: boolean\n }\n\nfunction NumberComponent(props: Props) {\n const {\n currency,\n percent,\n mask,\n thousandSeparator,\n decimalSymbol = ',',\n decimalLimit = 12,\n prefix,\n suffix,\n rightAligned,\n } = props\n\n const maskProps: Partial<InputMaskedProps> = useMemo(() => {\n if (currency) {\n return {\n as_currency: currency,\n }\n }\n if (percent) {\n return {\n as_percent: percent,\n }\n }\n // Custom mask based on props\n return {\n as_number: true,\n mask,\n number_mask: {\n decimalLimit,\n decimalSymbol,\n includeThousandsSeparator: thousandSeparator !== undefined,\n thousandsSeparatorSymbol:\n thousandSeparator === true ? ' ' : thousandSeparator,\n prefix,\n suffix,\n },\n }\n }, [\n currency,\n percent,\n mask,\n decimalLimit,\n decimalSymbol,\n thousandSeparator,\n prefix,\n suffix,\n ])\n\n const preparedProps: Props = {\n ...props,\n schema: props.schema ?? {\n type: 'number',\n minimum: props.minimum,\n maximum: props.maximum,\n exclusiveMinimum: props.exclusiveMinimum,\n exclusiveMaximum: props.exclusiveMaximum,\n multipleOf: props.multipleOf,\n },\n toInput: (external: number | undefined) => {\n if (external === undefined) {\n return ''\n }\n return external\n },\n fromInput: ({\n value,\n numberValue,\n }: {\n value: string\n numberValue: number\n }) => {\n if (value === '') {\n return emptyValue\n }\n return numberValue\n },\n width: props.width ?? 'medium',\n }\n\n const {\n id,\n className,\n inputClassName,\n layout,\n placeholder,\n label,\n labelDescription,\n labelSecondary,\n value,\n disabled,\n info,\n warning,\n error,\n help,\n emptyValue,\n width,\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue(preparedProps)\n\n return (\n <FieldBlock\n className={classnames('dnb-forms-field-number', className)}\n forId={id}\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 <InputMasked\n id={id}\n className={classnames(\n 'dnb-forms-field-number__input',\n inputClassName\n )}\n placeholder={placeholder}\n value={value}\n {...maskProps}\n right={rightAligned}\n on_focus={handleFocus}\n on_blur={handleBlur}\n on_change={handleChange}\n disabled={disabled}\n stretch={width !== undefined}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n />\n </FieldBlock>\n )\n}\n\nNumberComponent._supportsEufemiaSpacingProps = true\nexport default NumberComponent\n"],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type {
|
|
3
|
-
|
|
4
|
-
export type Props = ComponentProps & FieldProps<number | string> & {
|
|
2
|
+
import type { FieldProps } from '../types';
|
|
3
|
+
export type Props = FieldProps<number | string> & {
|
|
5
4
|
title?: string;
|
|
6
5
|
text?: string;
|
|
7
6
|
children?: React.ReactNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Option.js","names":["_react","_interopRequireDefault","require","_classnames","obj","__esModule","default","Option","_ref","className","title","text","children","createElement","classnames","role"],"sources":["../../../../../src/extensions/forms/Field/Option.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport type {
|
|
1
|
+
{"version":3,"file":"Option.js","names":["_react","_interopRequireDefault","require","_classnames","obj","__esModule","default","Option","_ref","className","title","text","children","createElement","classnames","role"],"sources":["../../../../../src/extensions/forms/Field/Option.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport type { FieldProps } from '../types'\n\nexport type Props = FieldProps<number | string> & {\n title?: string\n text?: string\n children?: React.ReactNode\n}\n\nexport default function Option({\n className,\n title,\n text,\n children,\n}: Props) {\n return (\n <span\n className={classnames('dnb-forms-field-option', className)}\n // eslint-disable-next-line jsx-a11y/role-has-required-aria-props\n role=\"option\"\n >\n {children ?? title}\n {text}\n </span>\n )\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AAAmC,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AASpB,SAASG,MAAMA,CAAAC,IAAA,EAKpB;EAAA,IALqB;IAC7BC,SAAS;IACTC,KAAK;IACLC,IAAI;IACJC;EACK,CAAC,GAAAJ,IAAA;EACN,OACER,MAAA,CAAAM,OAAA,CAAAO,aAAA;IACEJ,SAAS,EAAE,IAAAK,mBAAU,EAAC,wBAAwB,EAAEL,SAAS,CAAE;IAE3DM,IAAI,EAAC;EAAQ,GAEZH,QAAQ,IAAIF,KAAK,EACjBC,IACG,CAAC;AAEX"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { InputMaskedProps } from '../../../components/InputMasked';
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
export type Props = ComponentProps & FieldProps<string, undefined> & {
|
|
2
|
+
import { FieldProps } from '../types';
|
|
3
|
+
export type Props = FieldProps<string, undefined> & {
|
|
5
4
|
countryCodeFieldClassName?: string;
|
|
6
5
|
numberFieldClassName?: string;
|
|
7
6
|
countryCodeLabel?: string;
|
|
@@ -9,8 +9,8 @@ var _elements = require("../../../elements");
|
|
|
9
9
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
10
10
|
var _CountryCode = _interopRequireDefault(require("./CountryCode"));
|
|
11
11
|
var _String = _interopRequireDefault(require("./String"));
|
|
12
|
-
var
|
|
13
|
-
var
|
|
12
|
+
var _hooks = require("../hooks");
|
|
13
|
+
var _types = require("../types");
|
|
14
14
|
var _Context = _interopRequireDefault(require("../../../shared/Context"));
|
|
15
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
16
16
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -49,7 +49,7 @@ function PhoneNumber(props) {
|
|
|
49
49
|
handleChange,
|
|
50
50
|
onCountryCodeChange,
|
|
51
51
|
onNumberChange
|
|
52
|
-
} = (0, _hooks.
|
|
52
|
+
} = (0, _hooks.useDataValue)(preparedProps);
|
|
53
53
|
const [, countryCode, phoneNumber] = value !== undefined ? value.match(/^(\+[^ ]+)? ?(.*)$/) : [undefined, '', ''];
|
|
54
54
|
const handleCountryCodeChange = (0, _react.useCallback)(countryCode => {
|
|
55
55
|
if (!countryCode && !phoneNumber) {
|
|
@@ -71,7 +71,7 @@ function PhoneNumber(props) {
|
|
|
71
71
|
}, [countryCode, emptyValue, handleChange, onNumberChange]);
|
|
72
72
|
return _react.default.createElement(_elements.Div, _extends({
|
|
73
73
|
className: (0, _classnames.default)('dnb-forms-field-phone-number', className, width !== undefined && `dnb-forms-field-phone-number--width-${width}`)
|
|
74
|
-
}, (0,
|
|
74
|
+
}, (0, _types.pickSpacingProps)(preparedProps)), _react.default.createElement(_CountryCode.default, {
|
|
75
75
|
className: (0, _classnames.default)('dnb-forms-field-phone-number__country-code', countryCodeFieldClassName),
|
|
76
76
|
label: countryCodeLabel,
|
|
77
77
|
value: countryCode ?? '+47',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PhoneNumber.js","names":["_react","_interopRequireWildcard","require","_elements","_classnames","_interopRequireDefault","_CountryCode","_String","_utils","_hooks","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","PhoneNumber","props","sharedContext","useContext","SharedContext","preparedProps","errorMessages","required","translation","Forms","phoneNumberErrorRequired","className","countryCodeFieldClassName","numberFieldClassName","placeholder","countryCodeLabel","label","phoneNumberLabel","numberMask","emptyValue","info","warning","error","disabled","width","handleFocus","handleBlur","handleChange","onCountryCodeChange","onNumberChange","useField","countryCode","phoneNumber","match","handleCountryCodeChange","useCallback","Boolean","join","handleNumberChange","createElement","Div","classnames","forwardSpaceProps","onChange","type","layout","mask","onFocus","onBlur","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/PhoneNumber.tsx"],"sourcesContent":["import React, { useContext, useCallback } from 'react'\nimport { Div } from '../../../elements'\nimport { InputMaskedProps } from '../../../components/InputMasked'\nimport classnames from 'classnames'\nimport CountryCode from './CountryCode'\nimport StringComponent from './String'\nimport { forwardSpaceProps } from '../utils'\nimport { useField } from './hooks'\nimport type { ComponentProps } from '../component-types'\nimport type { FieldProps } from '../field-types'\nimport SharedContext from '../../../shared/Context'\n\nexport type Props = ComponentProps &\n FieldProps<string, undefined> & {\n countryCodeFieldClassName?: string\n numberFieldClassName?: string\n countryCodeLabel?: string\n numberMask?: InputMaskedProps['mask']\n width?: 'large' | 'stretch'\n onCountryCodeChange?: (value: string | undefined) => void\n onNumberChange?: (value: string | undefined) => void\n }\n\nfunction PhoneNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const preparedProps: Props = {\n ...props,\n // Important for the default value to be defined here, and not after the useField call, to avoid the UI jumping\n // back to +47 once the user empty the field so handleChange send out undefined.\n value: '+47',\n errorMessages: {\n required: sharedContext?.translation.Forms.phoneNumberErrorRequired,\n ...props?.errorMessages,\n },\n }\n\n const {\n className,\n countryCodeFieldClassName,\n numberFieldClassName,\n placeholder,\n countryCodeLabel,\n label = sharedContext?.translation.Forms.phoneNumberLabel,\n value,\n numberMask,\n emptyValue,\n info,\n warning,\n error,\n disabled,\n width = 'large',\n handleFocus,\n handleBlur,\n handleChange,\n onCountryCodeChange,\n onNumberChange,\n } = useField(preparedProps)\n\n const [, countryCode, phoneNumber] =\n value !== undefined\n ? value.match(/^(\\+[^ ]+)? ?(.*)$/)\n : [undefined, '', '']\n\n const handleCountryCodeChange = useCallback(\n (countryCode: string) => {\n if (!countryCode && !phoneNumber) {\n handleChange?.(emptyValue)\n onCountryCodeChange?.(emptyValue)\n return\n }\n\n handleChange?.([countryCode, phoneNumber].filter(Boolean).join(' '))\n onCountryCodeChange?.(countryCode)\n },\n [phoneNumber, emptyValue, handleChange, onCountryCodeChange]\n )\n\n const handleNumberChange = useCallback(\n (phoneNumber: string) => {\n if (!countryCode && !phoneNumber) {\n handleChange?.(emptyValue)\n onNumberChange?.(emptyValue)\n return\n }\n\n handleChange?.([countryCode, phoneNumber].filter(Boolean).join(' '))\n onNumberChange?.(phoneNumber)\n },\n [countryCode, emptyValue, handleChange, onNumberChange]\n )\n\n return (\n <Div\n className={classnames(\n 'dnb-forms-field-phone-number',\n width !== undefined &&\n `dnb-forms-field-phone-number--width-${width}`,\n className\n )}\n {...forwardSpaceProps(preparedProps)}\n >\n <CountryCode\n className={classnames(\n 'dnb-forms-field-phone-number__country-code',\n countryCodeFieldClassName\n )}\n label={countryCodeLabel}\n value={countryCode ?? '+47'}\n disabled={disabled}\n onChange={handleCountryCodeChange}\n />\n\n <StringComponent\n className={classnames(\n 'dnb-forms-field-phone-number__number',\n numberFieldClassName\n )}\n type=\"tel\"\n emptyValue=\"\"\n layout=\"vertical\"\n label={label ?? ' '}\n placeholder={placeholder ?? '00 00 00 00'}\n mask={\n numberMask ?? [\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ]\n }\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChange={handleNumberChange}\n value={phoneNumber}\n info={info}\n warning={warning}\n error={error}\n disabled={disabled}\n width=\"stretch\"\n />\n </Div>\n )\n}\n\nPhoneNumber._supportsEufemiaSpacingProps = true\nexport default PhoneNumber\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PhoneNumber.js","names":["_react","_interopRequireWildcard","require","_elements","_classnames","_interopRequireDefault","_CountryCode","_String","_hooks","_types","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","PhoneNumber","props","sharedContext","useContext","SharedContext","preparedProps","errorMessages","required","translation","Forms","phoneNumberErrorRequired","className","countryCodeFieldClassName","numberFieldClassName","placeholder","countryCodeLabel","label","phoneNumberLabel","numberMask","emptyValue","info","warning","error","disabled","width","handleFocus","handleBlur","handleChange","onCountryCodeChange","onNumberChange","useDataValue","countryCode","phoneNumber","match","handleCountryCodeChange","useCallback","Boolean","join","handleNumberChange","createElement","Div","classnames","pickSpacingProps","onChange","type","layout","mask","onFocus","onBlur","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/PhoneNumber.tsx"],"sourcesContent":["import React, { useContext, useCallback } from 'react'\nimport { Div } from '../../../elements'\nimport { InputMaskedProps } from '../../../components/InputMasked'\nimport classnames from 'classnames'\nimport CountryCode from './CountryCode'\nimport StringComponent from './String'\nimport { useDataValue } from '../hooks'\nimport { FieldProps, pickSpacingProps } from '../types'\nimport SharedContext from '../../../shared/Context'\n\nexport type Props = FieldProps<string, undefined> & {\n countryCodeFieldClassName?: string\n numberFieldClassName?: string\n countryCodeLabel?: string\n numberMask?: InputMaskedProps['mask']\n width?: 'large' | 'stretch'\n onCountryCodeChange?: (value: string | undefined) => void\n onNumberChange?: (value: string | undefined) => void\n}\n\nfunction PhoneNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const preparedProps: Props = {\n ...props,\n // Important for the default value to be defined here, and not after the useDataValue call, to avoid the UI jumping\n // back to +47 once the user empty the field so handleChange send out undefined.\n value: '+47',\n errorMessages: {\n required: sharedContext?.translation.Forms.phoneNumberErrorRequired,\n ...props?.errorMessages,\n },\n }\n\n const {\n className,\n countryCodeFieldClassName,\n numberFieldClassName,\n placeholder,\n countryCodeLabel,\n label = sharedContext?.translation.Forms.phoneNumberLabel,\n value,\n numberMask,\n emptyValue,\n info,\n warning,\n error,\n disabled,\n width = 'large',\n handleFocus,\n handleBlur,\n handleChange,\n onCountryCodeChange,\n onNumberChange,\n } = useDataValue(preparedProps)\n\n const [, countryCode, phoneNumber] =\n value !== undefined\n ? value.match(/^(\\+[^ ]+)? ?(.*)$/)\n : [undefined, '', '']\n\n const handleCountryCodeChange = useCallback(\n (countryCode: string) => {\n if (!countryCode && !phoneNumber) {\n handleChange?.(emptyValue)\n onCountryCodeChange?.(emptyValue)\n return\n }\n\n handleChange?.([countryCode, phoneNumber].filter(Boolean).join(' '))\n onCountryCodeChange?.(countryCode)\n },\n [phoneNumber, emptyValue, handleChange, onCountryCodeChange]\n )\n\n const handleNumberChange = useCallback(\n (phoneNumber: string) => {\n if (!countryCode && !phoneNumber) {\n handleChange?.(emptyValue)\n onNumberChange?.(emptyValue)\n return\n }\n\n handleChange?.([countryCode, phoneNumber].filter(Boolean).join(' '))\n onNumberChange?.(phoneNumber)\n },\n [countryCode, emptyValue, handleChange, onNumberChange]\n )\n\n return (\n <Div\n className={classnames(\n 'dnb-forms-field-phone-number',\n width !== undefined &&\n `dnb-forms-field-phone-number--width-${width}`,\n className\n )}\n {...pickSpacingProps(preparedProps)}\n >\n <CountryCode\n className={classnames(\n 'dnb-forms-field-phone-number__country-code',\n countryCodeFieldClassName\n )}\n label={countryCodeLabel}\n value={countryCode ?? '+47'}\n disabled={disabled}\n onChange={handleCountryCodeChange}\n />\n\n <StringComponent\n className={classnames(\n 'dnb-forms-field-phone-number__number',\n numberFieldClassName\n )}\n type=\"tel\"\n emptyValue=\"\"\n layout=\"vertical\"\n label={label ?? ' '}\n placeholder={placeholder ?? '00 00 00 00'}\n mask={\n numberMask ?? [\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ]\n }\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChange={handleNumberChange}\n value={phoneNumber}\n info={info}\n warning={warning}\n error={error}\n disabled={disabled}\n width=\"stretch\"\n />\n </Div>\n )\n}\n\nPhoneNumber._supportsEufemiaSpacingProps = true\nexport default PhoneNumber\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Props as
|
|
1
|
+
import { Props as FieldBlockProps } from '../FieldBlock';
|
|
2
2
|
import { Props as StringComponentProps } from './String';
|
|
3
|
-
export type Props = Omit<
|
|
3
|
+
export type Props = Omit<FieldBlockProps, 'children'> & Record<'postalCode' | 'city', StringComponentProps> & {
|
|
4
4
|
width?: 'small' | 'medium' | 'large';
|
|
5
5
|
};
|
|
6
6
|
declare function PostalCodeAndCity(props: Props): import("react/jsx-runtime").JSX.Element;
|
|
@@ -7,7 +7,7 @@ exports.default = void 0;
|
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
9
9
|
var _Context = _interopRequireDefault(require("../../../shared/Context"));
|
|
10
|
-
var
|
|
10
|
+
var _FieldBlock = _interopRequireDefault(require("../FieldBlock"));
|
|
11
11
|
var _String = _interopRequireDefault(require("./String"));
|
|
12
12
|
const _excluded = ["postalCode", "city", "width"];
|
|
13
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -28,10 +28,10 @@ function PostalCodeAndCity(props) {
|
|
|
28
28
|
city = {},
|
|
29
29
|
width = 'large'
|
|
30
30
|
} = props,
|
|
31
|
-
|
|
32
|
-
return _react.default.createElement(
|
|
31
|
+
fieldBlockProps = _objectWithoutProperties(props, _excluded);
|
|
32
|
+
return _react.default.createElement(_FieldBlock.default, _extends({
|
|
33
33
|
className: (0, _classnames.default)('dnb-forms-field-postal-code-and-city', props.className)
|
|
34
|
-
},
|
|
34
|
+
}, fieldBlockProps), _react.default.createElement("div", {
|
|
35
35
|
className: 'dnb-forms-field-postal-code-and-city__fields' + (width !== undefined ? ` dnb-forms-field-postal-code-and-city--width-${width}` : "")
|
|
36
36
|
}, _react.default.createElement(_String.default, _extends({}, postalCode, {
|
|
37
37
|
pattern: postalCode.pattern ?? '^[0-9]{4}$',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostalCodeAndCity.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Context","
|
|
1
|
+
{"version":3,"file":"PostalCodeAndCity.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Context","_FieldBlock","_String","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","PostalCodeAndCity","props","sharedContext","useContext","SharedContext","postalCode","city","width","fieldBlockProps","createElement","className","classnames","pattern","label","translation","Forms","postalCodeLabel","errorMessages","required","postalCodeErrorRequired","postalCodeErrorPattern","placeholder","inputClassName","cityLabel","cityErrorRequired","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/PostalCodeAndCity.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport classnames from 'classnames'\nimport SharedContext from '../../../shared/Context'\nimport FieldBlock, { Props as FieldBlockProps } from '../FieldBlock'\nimport StringComponent, { Props as StringComponentProps } from './String'\n\nexport type Props = Omit<FieldBlockProps, 'children'> &\n Record<'postalCode' | 'city', StringComponentProps> & {\n width?: 'small' | 'medium' | 'large'\n }\n\nfunction PostalCodeAndCity(props: Props) {\n const sharedContext = useContext(SharedContext)\n\n const {\n postalCode = {},\n city = {},\n width = 'large',\n ...fieldBlockProps\n } = props\n\n return (\n <FieldBlock\n className={classnames(\n 'dnb-forms-field-postal-code-and-city',\n props.className\n )}\n {...fieldBlockProps}\n >\n <div\n className={classnames(\n 'dnb-forms-field-postal-code-and-city__fields',\n width !== undefined &&\n `dnb-forms-field-postal-code-and-city--width-${width}`\n )}\n >\n <StringComponent\n {...postalCode}\n pattern={postalCode.pattern ?? '^[0-9]{4}$'}\n className={classnames(\n 'dnb-forms-field-postal-code-and-city__postal-code',\n postalCode.className\n )}\n label={\n postalCode.label ??\n sharedContext?.translation.Forms.postalCodeLabel\n }\n errorMessages={{\n required:\n sharedContext?.translation.Forms.postalCodeErrorRequired,\n pattern:\n sharedContext?.translation.Forms.postalCodeErrorPattern,\n ...postalCode.errorMessages,\n }}\n placeholder={postalCode.placeholder ?? '0000'}\n width={false}\n inputClassName=\"dnb-forms-field-postal-code-and-city__postal-code-input\"\n />\n <StringComponent\n {...city}\n className={classnames(\n 'dnb-forms-field-postal-code-and-city__city',\n city.className\n )}\n label={city.label ?? sharedContext?.translation.Forms.cityLabel}\n errorMessages={{\n required: sharedContext?.translation.Forms.cityErrorRequired,\n ...city.errorMessages,\n }}\n width=\"stretch\"\n />\n </div>\n </FieldBlock>\n )\n}\n\nPostalCodeAndCity._supportsEufemiaSpacingProps = true\nexport default PostalCodeAndCity\n"],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
export type Props = ComponentProps & FieldHelpProps & FieldProps<string | number> & {
|
|
2
|
+
import { FieldProps, FieldHelpProps } from '../types';
|
|
3
|
+
export type Props = FieldHelpProps & FieldProps<string | number> & {
|
|
5
4
|
children?: React.ReactNode;
|
|
6
5
|
variant?: 'dropdown' | 'radio' | 'button';
|
|
7
6
|
clear?: boolean;
|
|
@@ -9,11 +9,10 @@ var _components = require("../../../components");
|
|
|
9
9
|
var _ButtonRow = _interopRequireDefault(require("../Layout/ButtonRow"));
|
|
10
10
|
var _FieldBlock = _interopRequireDefault(require("../FieldBlock"));
|
|
11
11
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
12
|
-
var _utils = require("../utils");
|
|
13
12
|
var _componentHelper = require("../../../shared/component-helper");
|
|
14
13
|
var _Context = _interopRequireDefault(require("../../../shared/Context"));
|
|
15
14
|
var _Option = _interopRequireDefault(require("./Option"));
|
|
16
|
-
var _hooks = require("
|
|
15
|
+
var _hooks = require("../hooks");
|
|
17
16
|
var _types = require("../types");
|
|
18
17
|
var _em;
|
|
19
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -50,7 +49,7 @@ function Selection(props) {
|
|
|
50
49
|
setHasFocus,
|
|
51
50
|
handleChange,
|
|
52
51
|
children
|
|
53
|
-
} = (0, _hooks.
|
|
52
|
+
} = (0, _hooks.useDataValue)(props);
|
|
54
53
|
const handleDropdownChange = (0, _react.useCallback)(_ref => {
|
|
55
54
|
let {
|
|
56
55
|
data: {
|
|
@@ -81,7 +80,7 @@ function Selection(props) {
|
|
|
81
80
|
const fieldBlockProps = _objectSpread(_objectSpread({
|
|
82
81
|
forId: id,
|
|
83
82
|
className: cn
|
|
84
|
-
}, (0,
|
|
83
|
+
}, (0, _types.pickSpacingProps)(props)), {}, {
|
|
85
84
|
info,
|
|
86
85
|
warning,
|
|
87
86
|
error,
|
|
@@ -107,7 +106,7 @@ function Selection(props) {
|
|
|
107
106
|
vertical: layout === 'vertical',
|
|
108
107
|
on_change: handleRadioChange,
|
|
109
108
|
value: String(value ?? '')
|
|
110
|
-
}, (0,
|
|
109
|
+
}, (0, _types.pickSpacingProps)(props)), options.map((option, i) => _react.default.createElement(_components.Radio, {
|
|
111
110
|
key: `option-${i}-${option.value}`,
|
|
112
111
|
label: option.title,
|
|
113
112
|
value: String(option.value ?? '')
|
|
@@ -159,7 +158,7 @@ function Selection(props) {
|
|
|
159
158
|
on_change: handleDropdownChange,
|
|
160
159
|
on_show: handleShow,
|
|
161
160
|
on_hide: handleHide
|
|
162
|
-
}, (0,
|
|
161
|
+
}, (0, _types.pickSpacingProps)(props), {
|
|
163
162
|
stretch: width === 'stretch'
|
|
164
163
|
}));
|
|
165
164
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Selection.js","names":["_react","_interopRequireWildcard","require","_components","_ButtonRow","_interopRequireDefault","_FieldBlock","_classnames","_utils","_componentHelper","_Context","_Option","_hooks","_types","_em","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Selection","props","sharedContext","useContext","SharedContext","clearValue","useMemo","makeUniqueId","id","className","variant","clear","label","labelDescription","labelSecondary","layout","optionsLayout","placeholder","info","warning","error","disabled","help","emptyValue","width","setHasFocus","handleChange","children","useField","handleDropdownChange","useCallback","_ref","data","selected_key","handleRadioChange","_ref2","handleShow","_ref3","handleHide","_ref4","cn","classnames","fieldBlockProps","forId","forwardSpaceProps","options","React","Children","toArray","child","isValidElement","type","Option","map","option","title","handleSelect","selected","createElement","Radio","Group","layout_direction","vertical","on_change","Button","text","on_click","status","optionsData","content","translation","Forms","selectionClearSelected","Boolean","Dropdown","list_class","portal_class","label_direction","message","Error","FormError","toString","suffix","HelpButton","contents","on_show","on_hide","stretch","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/Selection.tsx"],"sourcesContent":["import React, { useMemo, useContext, useCallback } from 'react'\nimport { Button, Dropdown, Radio, HelpButton } from '../../../components'\nimport ButtonRow from '../Layout/ButtonRow'\nimport FieldBlock from '../FieldBlock'\nimport classnames from 'classnames'\nimport { forwardSpaceProps } from '../utils'\nimport { makeUniqueId } from '../../../shared/component-helper'\nimport SharedContext from '../../../shared/Context'\nimport Option from './Option'\nimport { useField } from './hooks'\nimport { FormError } from '../types'\nimport type { ComponentProps } from '../component-types'\nimport type { FieldProps, FieldHelpProps } from '../field-types'\n\ninterface IOption {\n title: string | React.ReactNode\n value: number | string\n handleSelect: () => void\n}\n\nexport type Props = ComponentProps &\n FieldHelpProps &\n FieldProps<string | number> & {\n children?: React.ReactNode\n variant?: 'dropdown' | 'radio' | 'button'\n clear?: boolean\n optionsLayout?: 'horizontal' | 'vertical'\n width?: 'small' | 'medium' | 'large' | 'stretch'\n }\n\nfunction Selection(props: Props) {\n const sharedContext = useContext(SharedContext)\n const clearValue = useMemo(() => `clear-option-${makeUniqueId()}`, [])\n\n const {\n id,\n className,\n variant = 'dropdown',\n clear,\n label,\n labelDescription,\n labelSecondary,\n layout = 'vertical',\n optionsLayout = 'vertical',\n placeholder,\n value,\n info,\n warning,\n error,\n disabled,\n help,\n emptyValue,\n width = 'large',\n setHasFocus,\n handleChange,\n children,\n } = useField(props)\n\n const handleDropdownChange = useCallback(\n ({ data: { selected_key } }) => {\n handleChange?.(\n !selected_key || selected_key === clearValue\n ? emptyValue\n : selected_key\n )\n },\n [handleChange, emptyValue, clearValue]\n )\n\n const handleRadioChange = useCallback(\n ({ value }) => {\n handleChange?.(value === undefined ? emptyValue : value)\n },\n [handleChange, emptyValue]\n )\n\n // Specific handleShow and handleHide because Dropdown preserve the initially received callbacks, so changes\n // due to `useCallback` usage will have no effect, leading to useFields handleFocus and handleBlur sending out old\n // copies of value as arguments.\n const handleShow = useCallback(\n ({ data }) => {\n setHasFocus(true, data?.selected_key)\n },\n [setHasFocus]\n )\n\n const handleHide = useCallback(\n ({ data }) => {\n setHasFocus(false, data?.selected_key)\n },\n [setHasFocus]\n )\n\n const cn = classnames('dnb-forms-field-selection', className)\n\n const fieldBlockProps = {\n forId: id,\n className: cn,\n ...forwardSpaceProps(props),\n info,\n warning,\n error,\n layout,\n label,\n labelDescription,\n labelSecondary,\n }\n\n const options: IOption[] = useMemo(\n () =>\n React.Children.toArray(children)\n .filter(\n (child) => React.isValidElement(child) && child.type === Option\n )\n .map((option: React.ReactElement) => ({\n title: option.props.title ?? option.props.children,\n value: option.props.value,\n handleSelect: () => {\n const selected = option.props.value\n\n handleChange?.(selected === value ? emptyValue : selected)\n },\n })),\n [children, value, emptyValue, handleChange]\n )\n\n switch (variant) {\n case 'radio':\n return (\n <Radio.Group\n className={cn}\n label={label}\n layout_direction={\n optionsLayout === 'horizontal' ? 'row' : 'column'\n }\n vertical={layout === 'vertical'}\n on_change={handleRadioChange}\n value={String(value ?? '')}\n {...forwardSpaceProps(props)}\n >\n {options.map((option, i) => (\n <Radio\n key={`option-${i}-${option.value}`}\n label={option.title}\n value={String(option.value ?? '')}\n />\n ))}\n </Radio.Group>\n )\n case 'button':\n return (\n <FieldBlock {...fieldBlockProps}>\n <ButtonRow>\n {options.map((option, i) => (\n <Button\n key={`option-${i}-${option.value}`}\n id={id}\n text={option.title}\n on_click={option.handleSelect}\n variant={option.value === value ? undefined : 'secondary'}\n status={error ? 'error' : undefined}\n disabled={disabled}\n />\n ))}\n </ButtonRow>\n </FieldBlock>\n )\n case 'dropdown': {\n const optionsData = React.Children.map(children, (child) => {\n if (React.isValidElement(child) && child.type === Option) {\n // Option components\n return child.props.text\n ? {\n selected_key: String(child.props.value ?? ''),\n content: [\n child.props.title ?? child.props.children ?? (\n <em>Untitled</em>\n ),\n child.props.text,\n ],\n }\n : {\n selected_key: child.props.value,\n content: child.props.title ?? child.props.children,\n }\n }\n\n // For other children, just show them as content\n return {\n content: child,\n }\n })\n const data = [\n clear\n ? {\n selected_key: clearValue,\n content: (\n <em>\n {sharedContext?.translation.Forms.selectionClearSelected}\n </em>\n ),\n }\n : undefined,\n ...(optionsData ?? []),\n ].filter(Boolean)\n\n return (\n <Dropdown\n className={classnames(\n 'dnb-forms-field-selection',\n width !== 'stretch' &&\n `dnb-forms-field-selection--width-${width}`,\n className\n )}\n list_class=\"dnb-forms-field-selection__list\"\n portal_class=\"dnb-forms-field-selection__portal\"\n title={placeholder}\n value={String(value ?? '')}\n label={label}\n label_direction={layout}\n status={\n error?.message ??\n ((warning instanceof Error && warning.message) ||\n (warning instanceof FormError && warning.message) ||\n warning?.toString() ||\n (info instanceof Error && info.message) ||\n (info instanceof FormError && info.message) ||\n info?.toString())\n }\n disabled={disabled}\n data={data}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n on_change={handleDropdownChange}\n on_show={handleShow}\n on_hide={handleHide}\n {...forwardSpaceProps(props)}\n stretch={width === 'stretch'}\n />\n )\n }\n }\n}\n\nSelection._supportsEufemiaSpacingProps = true\nexport default Selection\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Selection.js","names":["_react","_interopRequireWildcard","require","_components","_ButtonRow","_interopRequireDefault","_FieldBlock","_classnames","_componentHelper","_Context","_Option","_hooks","_types","_em","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Selection","props","sharedContext","useContext","SharedContext","clearValue","useMemo","makeUniqueId","id","className","variant","clear","label","labelDescription","labelSecondary","layout","optionsLayout","placeholder","info","warning","error","disabled","help","emptyValue","width","setHasFocus","handleChange","children","useDataValue","handleDropdownChange","useCallback","_ref","data","selected_key","handleRadioChange","_ref2","handleShow","_ref3","handleHide","_ref4","cn","classnames","fieldBlockProps","forId","pickSpacingProps","options","React","Children","toArray","child","isValidElement","type","Option","map","option","title","handleSelect","selected","createElement","Radio","Group","layout_direction","vertical","on_change","Button","text","on_click","status","optionsData","content","translation","Forms","selectionClearSelected","Boolean","Dropdown","list_class","portal_class","label_direction","message","Error","FormError","toString","suffix","HelpButton","contents","on_show","on_hide","stretch","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../src/extensions/forms/Field/Selection.tsx"],"sourcesContent":["import React, { useMemo, useContext, useCallback } from 'react'\nimport { Button, Dropdown, Radio, HelpButton } from '../../../components'\nimport ButtonRow from '../Layout/ButtonRow'\nimport FieldBlock from '../FieldBlock'\nimport classnames from 'classnames'\nimport { makeUniqueId } from '../../../shared/component-helper'\nimport SharedContext from '../../../shared/Context'\nimport Option from './Option'\nimport { useDataValue } from '../hooks'\nimport {\n FormError,\n FieldProps,\n FieldHelpProps,\n pickSpacingProps,\n} from '../types'\n\ninterface IOption {\n title: string | React.ReactNode\n value: number | string\n handleSelect: () => void\n}\n\nexport type Props = FieldHelpProps &\n FieldProps<string | number> & {\n children?: React.ReactNode\n variant?: 'dropdown' | 'radio' | 'button'\n clear?: boolean\n optionsLayout?: 'horizontal' | 'vertical'\n width?: 'small' | 'medium' | 'large' | 'stretch'\n }\n\nfunction Selection(props: Props) {\n const sharedContext = useContext(SharedContext)\n const clearValue = useMemo(() => `clear-option-${makeUniqueId()}`, [])\n\n const {\n id,\n className,\n variant = 'dropdown',\n clear,\n label,\n labelDescription,\n labelSecondary,\n layout = 'vertical',\n optionsLayout = 'vertical',\n placeholder,\n value,\n info,\n warning,\n error,\n disabled,\n help,\n emptyValue,\n width = 'large',\n setHasFocus,\n handleChange,\n children,\n } = useDataValue(props)\n\n const handleDropdownChange = useCallback(\n ({ data: { selected_key } }) => {\n handleChange?.(\n !selected_key || selected_key === clearValue\n ? emptyValue\n : selected_key\n )\n },\n [handleChange, emptyValue, clearValue]\n )\n\n const handleRadioChange = useCallback(\n ({ value }) => {\n handleChange?.(value === undefined ? emptyValue : value)\n },\n [handleChange, emptyValue]\n )\n\n // Specific handleShow and handleHide because Dropdown preserve the initially received callbacks, so changes\n // due to `useCallback` usage will have no effect, leading to useDataValues handleFocus and handleBlur sending out old\n // copies of value as arguments.\n const handleShow = useCallback(\n ({ data }) => {\n setHasFocus(true, data?.selected_key)\n },\n [setHasFocus]\n )\n\n const handleHide = useCallback(\n ({ data }) => {\n setHasFocus(false, data?.selected_key)\n },\n [setHasFocus]\n )\n\n const cn = classnames('dnb-forms-field-selection', className)\n\n const fieldBlockProps = {\n forId: id,\n className: cn,\n ...pickSpacingProps(props),\n info,\n warning,\n error,\n layout,\n label,\n labelDescription,\n labelSecondary,\n }\n\n const options: IOption[] = useMemo(\n () =>\n React.Children.toArray(children)\n .filter(\n (child) => React.isValidElement(child) && child.type === Option\n )\n .map((option: React.ReactElement) => ({\n title: option.props.title ?? option.props.children,\n value: option.props.value,\n handleSelect: () => {\n const selected = option.props.value\n\n handleChange?.(selected === value ? emptyValue : selected)\n },\n })),\n [children, value, emptyValue, handleChange]\n )\n\n switch (variant) {\n case 'radio':\n return (\n <Radio.Group\n className={cn}\n label={label}\n layout_direction={\n optionsLayout === 'horizontal' ? 'row' : 'column'\n }\n vertical={layout === 'vertical'}\n on_change={handleRadioChange}\n value={String(value ?? '')}\n {...pickSpacingProps(props)}\n >\n {options.map((option, i) => (\n <Radio\n key={`option-${i}-${option.value}`}\n label={option.title}\n value={String(option.value ?? '')}\n />\n ))}\n </Radio.Group>\n )\n case 'button':\n return (\n <FieldBlock {...fieldBlockProps}>\n <ButtonRow>\n {options.map((option, i) => (\n <Button\n key={`option-${i}-${option.value}`}\n id={id}\n text={option.title}\n on_click={option.handleSelect}\n variant={option.value === value ? undefined : 'secondary'}\n status={error ? 'error' : undefined}\n disabled={disabled}\n />\n ))}\n </ButtonRow>\n </FieldBlock>\n )\n case 'dropdown': {\n const optionsData = React.Children.map(children, (child) => {\n if (React.isValidElement(child) && child.type === Option) {\n // Option components\n return child.props.text\n ? {\n selected_key: String(child.props.value ?? ''),\n content: [\n child.props.title ?? child.props.children ?? (\n <em>Untitled</em>\n ),\n child.props.text,\n ],\n }\n : {\n selected_key: child.props.value,\n content: child.props.title ?? child.props.children,\n }\n }\n\n // For other children, just show them as content\n return {\n content: child,\n }\n })\n const data = [\n clear\n ? {\n selected_key: clearValue,\n content: (\n <em>\n {sharedContext?.translation.Forms.selectionClearSelected}\n </em>\n ),\n }\n : undefined,\n ...(optionsData ?? []),\n ].filter(Boolean)\n\n return (\n <Dropdown\n className={classnames(\n 'dnb-forms-field-selection',\n width !== 'stretch' &&\n `dnb-forms-field-selection--width-${width}`,\n className\n )}\n list_class=\"dnb-forms-field-selection__list\"\n portal_class=\"dnb-forms-field-selection__portal\"\n title={placeholder}\n value={String(value ?? '')}\n label={label}\n label_direction={layout}\n status={\n error?.message ??\n ((warning instanceof Error && warning.message) ||\n (warning instanceof FormError && warning.message) ||\n warning?.toString() ||\n (info instanceof Error && info.message) ||\n (info instanceof FormError && info.message) ||\n info?.toString())\n }\n disabled={disabled}\n data={data}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n on_change={handleDropdownChange}\n on_show={handleShow}\n on_hide={handleHide}\n {...pickSpacingProps(props)}\n stretch={width === 'stretch'}\n />\n )\n }\n }\n}\n\nSelection._supportsEufemiaSpacingProps = true\nexport default Selection\n"],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { InputProps } from '../../../components/input/Input';
|
|
2
2
|
import { InputMaskedProps } from '../../../components/InputMasked';
|
|
3
|
-
import
|
|
4
|
-
import type { FieldProps, FieldHelpProps } from '../field-types';
|
|
3
|
+
import { FieldProps, FieldHelpProps } from '../types';
|
|
5
4
|
interface ErrorMessages {
|
|
6
5
|
required?: string;
|
|
7
6
|
schema?: string;
|
|
@@ -9,7 +8,7 @@ interface ErrorMessages {
|
|
|
9
8
|
maxLength?: string;
|
|
10
9
|
pattern?: string;
|
|
11
10
|
}
|
|
12
|
-
export type Props =
|
|
11
|
+
export type Props = FieldHelpProps & FieldProps<string, undefined | string, ErrorMessages> & {
|
|
13
12
|
inputClassName?: string;
|
|
14
13
|
type?: InputProps['type'];
|
|
15
14
|
multiline?: boolean;
|
|
@@ -8,10 +8,10 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
8
8
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
9
9
|
var _components = require("../../../components");
|
|
10
10
|
var _InputMasked = _interopRequireDefault(require("../../../components/InputMasked"));
|
|
11
|
-
var _utils = require("../utils");
|
|
12
11
|
var _Context = _interopRequireDefault(require("../../../shared/Context"));
|
|
13
12
|
var _FieldBlock = _interopRequireDefault(require("../FieldBlock"));
|
|
14
|
-
var _hooks = require("
|
|
13
|
+
var _hooks = require("../hooks");
|
|
14
|
+
var _types = require("../types");
|
|
15
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
16
16
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
17
17
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -45,9 +45,6 @@ function StringComponent(props) {
|
|
|
45
45
|
if (value === '') {
|
|
46
46
|
return props.emptyValue;
|
|
47
47
|
}
|
|
48
|
-
if (value.charAt(0) === '0' && cleanedValue === '') {
|
|
49
|
-
return '0';
|
|
50
|
-
}
|
|
51
48
|
return cleanedValue ?? value;
|
|
52
49
|
},
|
|
53
50
|
width: props.width ?? 'large'
|
|
@@ -80,7 +77,7 @@ function StringComponent(props) {
|
|
|
80
77
|
handleFocus,
|
|
81
78
|
handleBlur,
|
|
82
79
|
handleChange
|
|
83
|
-
} = (0, _hooks.
|
|
80
|
+
} = (0, _hooks.useDataValue)(preparedProps);
|
|
84
81
|
const characterCounterElement = characterCounter ? props.maxLength ? `${(value === null || value === void 0 ? void 0 : value.length) ?? '0'}/${props.maxLength}` : `${(value === null || value === void 0 ? void 0 : value.length) ?? '0'}` : undefined;
|
|
85
82
|
const cn = (0, _classnames.default)('dnb-forms-field-string__input', inputClassName);
|
|
86
83
|
return _react.default.createElement(_FieldBlock.default, _extends({
|
|
@@ -94,7 +91,7 @@ function StringComponent(props) {
|
|
|
94
91
|
warning: warning,
|
|
95
92
|
error: error,
|
|
96
93
|
contentsWidth: width !== false ? width : undefined
|
|
97
|
-
}, (0,
|
|
94
|
+
}, (0, _types.pickSpacingProps)(props)), multiline ? _react.default.createElement(_components.Textarea, {
|
|
98
95
|
id: id,
|
|
99
96
|
className: cn,
|
|
100
97
|
placeholder: placeholder,
|
|
@@ -111,6 +108,7 @@ function StringComponent(props) {
|
|
|
111
108
|
disabled: disabled,
|
|
112
109
|
stretch: width !== undefined
|
|
113
110
|
}) : mask ? _react.default.createElement(_InputMasked.default, {
|
|
111
|
+
id: id,
|
|
114
112
|
className: cn,
|
|
115
113
|
mask: mask,
|
|
116
114
|
placeholder: placeholder,
|