@dnb/eufemia 10.13.0 → 10.14.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 +30 -0
- package/cjs/components/accordion/AccordionContent.js +1 -0
- package/cjs/components/accordion/AccordionContent.js.map +1 -1
- package/cjs/components/anchor/Anchor.js +1 -0
- package/cjs/components/anchor/Anchor.js.map +1 -1
- package/cjs/components/autocomplete/Autocomplete.js +80 -77
- package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/avatar/Avatar.js +1 -0
- package/cjs/components/avatar/Avatar.js.map +1 -1
- package/cjs/components/avatar/AvatarGroup.js +1 -0
- package/cjs/components/avatar/AvatarGroup.js.map +1 -1
- package/cjs/components/badge/Badge.js +1 -0
- package/cjs/components/badge/Badge.js.map +1 -1
- package/cjs/components/breadcrumb/BreadcrumbItem.js +1 -0
- package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/cjs/components/button/Button.js +2 -0
- package/cjs/components/button/Button.js.map +1 -1
- package/cjs/components/checkbox/Checkbox.js +2 -0
- package/cjs/components/checkbox/Checkbox.js.map +1 -1
- package/cjs/components/date-picker/DatePicker.js +2 -0
- package/cjs/components/date-picker/DatePicker.js.map +1 -1
- package/cjs/components/date-picker/DatePickerProvider.js +1 -0
- package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
- package/cjs/components/dropdown/Dropdown.js +1 -0
- package/cjs/components/dropdown/Dropdown.js.map +1 -1
- package/cjs/components/flex/Container.js +1 -0
- package/cjs/components/flex/Container.js.map +1 -1
- package/cjs/components/flex/Flex.d.ts +1 -1
- package/cjs/components/flex/Flex.js +1 -1
- package/cjs/components/flex/Flex.js.map +1 -1
- package/cjs/components/flex/export.d.ts +5 -0
- package/cjs/components/flex/export.js +42 -0
- package/cjs/components/flex/export.js.map +1 -0
- package/cjs/components/flex/index.d.ts +2 -5
- package/cjs/components/flex/index.js +5 -36
- package/cjs/components/flex/index.js.map +1 -1
- package/cjs/components/form-label/FormLabel.d.ts +1 -0
- package/cjs/components/form-label/FormLabel.js +2 -0
- package/cjs/components/form-label/FormLabel.js.map +1 -1
- package/cjs/components/form-row/FormRow.js +1 -0
- package/cjs/components/form-row/FormRow.js.map +1 -1
- package/cjs/components/form-set/FormSet.js +1 -0
- package/cjs/components/form-set/FormSet.js.map +1 -1
- package/cjs/components/form-status/FormStatus.js +1 -0
- package/cjs/components/form-status/FormStatus.js.map +1 -1
- package/cjs/components/global-error/GlobalError.js +1 -0
- package/cjs/components/global-error/GlobalError.js.map +1 -1
- package/cjs/components/global-status/GlobalStatus.js +1 -0
- package/cjs/components/global-status/GlobalStatus.js.map +1 -1
- package/cjs/components/grid/Grid.d.ts +1 -1
- package/cjs/components/grid/Grid.js +1 -1
- package/cjs/components/grid/Grid.js.map +1 -1
- package/cjs/components/grid/export.d.ts +2 -0
- package/cjs/components/grid/export.js +21 -0
- package/cjs/components/grid/export.js.map +1 -0
- package/cjs/components/grid/index.d.ts +2 -2
- package/cjs/components/grid/index.js +5 -15
- package/cjs/components/grid/index.js.map +1 -1
- package/cjs/components/heading/Heading.js +1 -0
- package/cjs/components/heading/Heading.js.map +1 -1
- package/cjs/components/help-button/HelpButton.js +1 -0
- package/cjs/components/help-button/HelpButton.js.map +1 -1
- package/cjs/components/help-button/HelpButtonInstance.js +1 -0
- package/cjs/components/help-button/HelpButtonInstance.js.map +1 -1
- package/cjs/components/icon/Icon.js +1 -0
- package/cjs/components/icon/Icon.js.map +1 -1
- package/cjs/components/icon-primary/IconPrimary.js +1 -0
- package/cjs/components/icon-primary/IconPrimary.js.map +1 -1
- package/cjs/components/info-card/InfoCard.js +1 -0
- package/cjs/components/info-card/InfoCard.js.map +1 -1
- package/cjs/components/input/Input.d.ts +4 -0
- package/cjs/components/input/Input.js +12 -2
- package/cjs/components/input/Input.js.map +1 -1
- package/cjs/components/input/InputPassword.js +2 -0
- package/cjs/components/input/InputPassword.js.map +1 -1
- package/cjs/components/input-masked/InputMasked.js +2 -0
- package/cjs/components/input-masked/InputMasked.js.map +1 -1
- package/cjs/components/input-masked/MultiInputMask.d.ts +9 -1
- package/cjs/components/input-masked/MultiInputMask.js +14 -7
- package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
- package/cjs/components/input-masked/TextMask.d.ts +1 -1
- package/cjs/components/input-masked/hooks/useHandleCursorPosition.js +1 -1
- package/cjs/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
- package/cjs/components/lib.d.ts +2 -0
- package/cjs/components/logo/Logo.js +1 -0
- package/cjs/components/logo/Logo.js.map +1 -1
- package/cjs/components/modal/Modal.js +1 -0
- package/cjs/components/modal/Modal.js.map +1 -1
- package/cjs/components/modal/ModalContent.js +1 -0
- package/cjs/components/modal/ModalContent.js.map +1 -1
- package/cjs/components/modal/parts/CloseButton.js +1 -0
- package/cjs/components/modal/parts/CloseButton.js.map +1 -1
- package/cjs/components/number-format/NumberFormat.js +1 -0
- package/cjs/components/number-format/NumberFormat.js.map +1 -1
- package/cjs/components/number-format/NumberUtils.js +1 -0
- package/cjs/components/number-format/NumberUtils.js.map +1 -1
- package/cjs/components/pagination/PaginationHelpers.js +1 -0
- package/cjs/components/pagination/PaginationHelpers.js.map +1 -1
- package/cjs/components/pagination/PaginationInfinity.js +1 -0
- package/cjs/components/pagination/PaginationInfinity.js.map +1 -1
- package/cjs/components/pagination/PaginationProvider.js +1 -0
- package/cjs/components/pagination/PaginationProvider.js.map +1 -1
- package/cjs/components/progress-indicator/ProgressIndicator.js +1 -0
- package/cjs/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/cjs/components/radio/Radio.js +4 -2
- package/cjs/components/radio/Radio.js.map +1 -1
- package/cjs/components/radio/RadioGroup.js +5 -4
- package/cjs/components/radio/RadioGroup.js.map +1 -1
- package/cjs/components/radio/style/dnb-radio.css +106 -0
- package/cjs/components/radio/style/dnb-radio.min.css +1 -1
- package/cjs/components/radio/style/dnb-radio.scss +202 -0
- package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.css +26 -0
- package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +1 -0
- package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.scss +33 -0
- package/cjs/components/radio/style/themes/dnb-radio-theme-ui.css +20 -86
- package/cjs/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
- package/cjs/components/radio/style/themes/dnb-radio-theme-ui.scss +26 -143
- package/cjs/components/section/Section.js +1 -0
- package/cjs/components/section/Section.js.map +1 -1
- package/cjs/components/skeleton/Skeleton.js +1 -0
- package/cjs/components/skeleton/Skeleton.js.map +1 -1
- package/cjs/components/skeleton/figures/Article.js +1 -0
- package/cjs/components/skeleton/figures/Article.js.map +1 -1
- package/cjs/components/skeleton/figures/Circle.js +1 -0
- package/cjs/components/skeleton/figures/Circle.js.map +1 -1
- package/cjs/components/skeleton/figures/Product.js +1 -0
- package/cjs/components/skeleton/figures/Product.js.map +1 -1
- package/cjs/components/skeleton/figures/Table.js +1 -0
- package/cjs/components/skeleton/figures/Table.js.map +1 -1
- package/cjs/components/slider/Slider.d.ts +1 -0
- package/cjs/components/slider/Slider.js +1 -0
- package/cjs/components/slider/Slider.js.map +1 -1
- package/cjs/components/slider/SliderInstance.js +1 -0
- package/cjs/components/slider/SliderInstance.js.map +1 -1
- package/cjs/components/slider/SliderProvider.js +1 -0
- package/cjs/components/slider/SliderProvider.js.map +1 -1
- package/cjs/components/space/Space.js +1 -0
- package/cjs/components/space/Space.js.map +1 -1
- package/cjs/components/switch/Switch.js +2 -0
- package/cjs/components/switch/Switch.js.map +1 -1
- package/cjs/components/table/Table.js +1 -0
- package/cjs/components/table/Table.js.map +1 -1
- package/cjs/components/tabs/Tabs.js +1 -0
- package/cjs/components/tabs/Tabs.js.map +1 -1
- package/cjs/components/tag/Tag.d.ts +1 -0
- package/cjs/components/tag/Tag.js +2 -0
- package/cjs/components/tag/Tag.js.map +1 -1
- package/cjs/components/tag/TagGroup.js +1 -0
- package/cjs/components/tag/TagGroup.js.map +1 -1
- package/cjs/components/textarea/Textarea.js +2 -0
- package/cjs/components/textarea/Textarea.js.map +1 -1
- package/cjs/components/timeline/Timeline.js +1 -0
- package/cjs/components/timeline/Timeline.js.map +1 -1
- package/cjs/components/timeline/TimelineItem.js +1 -0
- package/cjs/components/timeline/TimelineItem.js.map +1 -1
- package/cjs/components/toggle-button/ToggleButton.js +2 -0
- package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
- package/cjs/components/toggle-button/ToggleButtonGroup.js +5 -4
- package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
- package/cjs/components/tooltip/Tooltip.js +1 -0
- package/cjs/components/tooltip/Tooltip.js.map +1 -1
- package/cjs/components/tooltip/TooltipPortal.js +1 -0
- package/cjs/components/tooltip/TooltipPortal.js.map +1 -1
- package/cjs/components/upload/Upload.d.ts +1 -0
- package/cjs/components/upload/Upload.js +2 -0
- package/cjs/components/upload/Upload.js.map +1 -1
- package/cjs/components/upload/useUpload.js +1 -0
- package/cjs/components/upload/useUpload.js.map +1 -1
- package/cjs/components/visually-hidden/VisuallyHidden.js +1 -0
- package/cjs/components/visually-hidden/VisuallyHidden.js.map +1 -1
- package/cjs/elements/Element.js +1 -0
- package/cjs/elements/Element.js.map +1 -1
- package/cjs/elements/typography/H.js +1 -0
- package/cjs/elements/typography/H.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +52 -42
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +8 -5
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/Email/Email.js +6 -4
- package/cjs/extensions/forms/Field/Email/Email.js.map +1 -1
- package/cjs/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
- package/cjs/extensions/forms/Field/Expiry/Expiry.js +99 -0
- package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
- package/cjs/extensions/forms/Field/Expiry/index.d.ts +2 -0
- package/cjs/extensions/forms/Field/Expiry/index.js +27 -0
- package/cjs/extensions/forms/Field/Expiry/index.js.map +1 -0
- package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.css +12 -0
- package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
- package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +8 -5
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/Number/Number.js +47 -25
- package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +8 -5
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +46 -33
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +6 -4
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/cjs/extensions/forms/Field/String/String.js +30 -20
- package/cjs/extensions/forms/Field/String/String.js.map +1 -1
- package/cjs/extensions/forms/Field/index.d.ts +1 -0
- package/cjs/extensions/forms/Field/index.js +7 -0
- package/cjs/extensions/forms/Field/index.js.map +1 -1
- package/cjs/extensions/forms/Field/style/dnb-forms-field.css +13 -0
- package/cjs/extensions/forms/Field/style/dnb-forms-field.min.css +1 -1
- package/cjs/extensions/forms/Field/style/dnb-forms-field.scss +1 -0
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js +36 -2
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/Form/Element/Element.js +1 -0
- package/cjs/extensions/forms/Form/Element/Element.js.map +1 -1
- package/cjs/extensions/forms/Form/Handler/Handler.js +1 -0
- package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/cjs/extensions/forms/hooks/index.d.ts +3 -0
- package/cjs/extensions/forms/hooks/index.js +21 -0
- package/cjs/extensions/forms/hooks/index.js.map +1 -1
- package/cjs/extensions/forms/hooks/useDataValue.js +127 -61
- package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/cjs/extensions/forms/hooks/useMountEffect.d.ts +5 -0
- package/cjs/extensions/forms/hooks/useMountEffect.js +14 -0
- package/cjs/extensions/forms/hooks/useMountEffect.js.map +1 -0
- package/cjs/extensions/forms/hooks/useProcessManager.d.ts +6 -0
- package/cjs/extensions/forms/hooks/useProcessManager.js +21 -0
- package/cjs/extensions/forms/hooks/useProcessManager.js.map +1 -0
- package/cjs/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
- package/cjs/extensions/forms/hooks/useUpdateEffect.js +19 -0
- package/cjs/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
- package/cjs/extensions/forms/style/dnb-forms.css +13 -0
- package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
- package/cjs/extensions/forms/types.d.ts +10 -2
- package/cjs/extensions/forms/types.js +2 -0
- package/cjs/extensions/forms/types.js.map +1 -1
- package/cjs/extensions/forms/utils/ajv.js +25 -1
- package/cjs/extensions/forms/utils/ajv.js.map +1 -1
- package/cjs/extensions/forms/utils/errors.d.ts +2 -0
- package/cjs/extensions/forms/utils/errors.js +16 -0
- package/cjs/extensions/forms/utils/errors.js.map +1 -0
- package/cjs/extensions/forms/utils/index.d.ts +1 -0
- package/cjs/extensions/forms/utils/index.js +12 -0
- package/cjs/extensions/forms/utils/index.js.map +1 -1
- package/cjs/extensions/payment-card/PaymentCard.js +1 -0
- package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListProvider.js +1 -0
- package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/cjs/fragments/scroll-view/ScrollView.js +1 -0
- package/cjs/fragments/scroll-view/ScrollView.js.map +1 -1
- package/cjs/shared/Eufemia.d.ts +1 -1
- package/cjs/shared/Eufemia.js +2 -2
- package/cjs/shared/Eufemia.js.map +1 -1
- package/cjs/shared/MediaQuery.js +1 -0
- package/cjs/shared/MediaQuery.js.map +1 -1
- package/cjs/shared/Provider.js +1 -0
- package/cjs/shared/Provider.js.map +1 -1
- package/cjs/shared/Theme.js +1 -0
- package/cjs/shared/Theme.js.map +1 -1
- package/cjs/shared/VisibilityByTheme.js +1 -0
- package/cjs/shared/VisibilityByTheme.js.map +1 -1
- package/cjs/shared/index.js +1 -0
- package/cjs/shared/index.js.map +1 -1
- package/cjs/shared/locales/en-GB.d.ts +11 -0
- package/cjs/shared/locales/en-GB.js +12 -1
- package/cjs/shared/locales/en-GB.js.map +1 -1
- package/cjs/shared/locales/en-US.d.ts +11 -0
- package/cjs/shared/locales/index.d.ts +22 -0
- package/cjs/shared/locales/nb-NO.d.ts +11 -0
- package/cjs/shared/locales/nb-NO.js +12 -1
- package/cjs/shared/locales/nb-NO.js.map +1 -1
- package/cjs/shared/useMedia.js +1 -0
- package/cjs/shared/useMedia.js.map +1 -1
- package/cjs/shared/useMediaQuery.js +1 -0
- package/cjs/shared/useMediaQuery.js.map +1 -1
- package/cjs/shared/useTheme.js +1 -0
- package/cjs/shared/useTheme.js.map +1 -1
- package/cjs/shared/useTranslation.js +1 -0
- package/cjs/shared/useTranslation.js.map +1 -1
- package/cjs/style/dnb-ui-components.css +106 -0
- package/cjs/style/dnb-ui-components.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.css +13 -0
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +126 -86
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +133 -93
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -0
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +126 -86
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +13 -0
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/components/accordion/AccordionContent.js +2 -0
- package/components/accordion/AccordionContent.js.map +1 -1
- package/components/anchor/Anchor.js +2 -0
- package/components/anchor/Anchor.js.map +1 -1
- package/components/autocomplete/Autocomplete.js +80 -77
- package/components/autocomplete/Autocomplete.js.map +1 -1
- package/components/avatar/Avatar.js +2 -0
- package/components/avatar/Avatar.js.map +1 -1
- package/components/avatar/AvatarGroup.js +2 -0
- package/components/avatar/AvatarGroup.js.map +1 -1
- package/components/badge/Badge.js +2 -0
- package/components/badge/Badge.js.map +1 -1
- package/components/breadcrumb/BreadcrumbItem.js +2 -0
- package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/components/button/Button.js +3 -0
- package/components/button/Button.js.map +1 -1
- package/components/checkbox/Checkbox.js +3 -0
- package/components/checkbox/Checkbox.js.map +1 -1
- package/components/date-picker/DatePicker.js +3 -0
- package/components/date-picker/DatePicker.js.map +1 -1
- package/components/date-picker/DatePickerProvider.js +2 -0
- package/components/date-picker/DatePickerProvider.js.map +1 -1
- package/components/dropdown/Dropdown.js +1 -0
- package/components/dropdown/Dropdown.js.map +1 -1
- package/components/flex/Container.js +2 -0
- package/components/flex/Container.js.map +1 -1
- package/components/flex/Flex.d.ts +1 -1
- package/components/flex/Flex.js +1 -1
- package/components/flex/Flex.js.map +1 -1
- package/components/flex/export.d.ts +5 -0
- package/components/flex/export.js +6 -0
- package/components/flex/export.js.map +1 -0
- package/components/flex/index.d.ts +2 -5
- package/components/flex/index.js +2 -5
- package/components/flex/index.js.map +1 -1
- package/components/form-label/FormLabel.d.ts +1 -0
- package/components/form-label/FormLabel.js +3 -0
- package/components/form-label/FormLabel.js.map +1 -1
- package/components/form-row/FormRow.js +2 -0
- package/components/form-row/FormRow.js.map +1 -1
- package/components/form-set/FormSet.js +2 -0
- package/components/form-set/FormSet.js.map +1 -1
- package/components/form-status/FormStatus.js +2 -0
- package/components/form-status/FormStatus.js.map +1 -1
- package/components/global-error/GlobalError.js +2 -0
- package/components/global-error/GlobalError.js.map +1 -1
- package/components/global-status/GlobalStatus.js +2 -0
- package/components/global-status/GlobalStatus.js.map +1 -1
- package/components/grid/Grid.d.ts +1 -1
- package/components/grid/Grid.js +1 -1
- package/components/grid/Grid.js.map +1 -1
- package/components/grid/export.d.ts +2 -0
- package/components/grid/export.js +3 -0
- package/components/grid/export.js.map +1 -0
- package/components/grid/index.d.ts +2 -2
- package/components/grid/index.js +2 -2
- package/components/grid/index.js.map +1 -1
- package/components/heading/Heading.js +2 -0
- package/components/heading/Heading.js.map +1 -1
- package/components/help-button/HelpButton.js +2 -0
- package/components/help-button/HelpButton.js.map +1 -1
- package/components/help-button/HelpButtonInstance.js +2 -0
- package/components/help-button/HelpButtonInstance.js.map +1 -1
- package/components/icon/Icon.js +2 -0
- package/components/icon/Icon.js.map +1 -1
- package/components/icon-primary/IconPrimary.js +2 -0
- package/components/icon-primary/IconPrimary.js.map +1 -1
- package/components/info-card/InfoCard.js +2 -0
- package/components/info-card/InfoCard.js.map +1 -1
- package/components/input/Input.d.ts +4 -0
- package/components/input/Input.js +13 -2
- package/components/input/Input.js.map +1 -1
- package/components/input/InputPassword.js +3 -0
- package/components/input/InputPassword.js.map +1 -1
- package/components/input-masked/InputMasked.js +3 -0
- package/components/input-masked/InputMasked.js.map +1 -1
- package/components/input-masked/MultiInputMask.d.ts +9 -1
- package/components/input-masked/MultiInputMask.js +14 -7
- package/components/input-masked/MultiInputMask.js.map +1 -1
- package/components/input-masked/TextMask.d.ts +1 -1
- package/components/input-masked/hooks/useHandleCursorPosition.js +1 -1
- package/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
- package/components/lib.d.ts +2 -0
- package/components/logo/Logo.js +2 -0
- package/components/logo/Logo.js.map +1 -1
- package/components/modal/Modal.js +2 -0
- package/components/modal/Modal.js.map +1 -1
- package/components/modal/ModalContent.js +2 -0
- package/components/modal/ModalContent.js.map +1 -1
- package/components/modal/parts/CloseButton.js +2 -0
- package/components/modal/parts/CloseButton.js.map +1 -1
- package/components/number-format/NumberFormat.js +2 -0
- package/components/number-format/NumberFormat.js.map +1 -1
- package/components/number-format/NumberUtils.js +2 -0
- package/components/number-format/NumberUtils.js.map +1 -1
- package/components/pagination/PaginationHelpers.js +2 -0
- package/components/pagination/PaginationHelpers.js.map +1 -1
- package/components/pagination/PaginationInfinity.js +2 -0
- package/components/pagination/PaginationInfinity.js.map +1 -1
- package/components/pagination/PaginationProvider.js +2 -0
- package/components/pagination/PaginationProvider.js.map +1 -1
- package/components/progress-indicator/ProgressIndicator.js +2 -0
- package/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/components/radio/Radio.js +5 -2
- package/components/radio/Radio.js.map +1 -1
- package/components/radio/RadioGroup.js +6 -4
- package/components/radio/RadioGroup.js.map +1 -1
- package/components/radio/style/dnb-radio.css +106 -0
- package/components/radio/style/dnb-radio.min.css +1 -1
- package/components/radio/style/dnb-radio.scss +202 -0
- package/components/radio/style/themes/dnb-radio-theme-sbanken.css +26 -0
- package/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +1 -0
- package/components/radio/style/themes/dnb-radio-theme-sbanken.scss +33 -0
- package/components/radio/style/themes/dnb-radio-theme-ui.css +20 -86
- package/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
- package/components/radio/style/themes/dnb-radio-theme-ui.scss +26 -143
- package/components/section/Section.js +2 -0
- package/components/section/Section.js.map +1 -1
- package/components/skeleton/Skeleton.js +2 -0
- package/components/skeleton/Skeleton.js.map +1 -1
- package/components/skeleton/figures/Article.js +2 -0
- package/components/skeleton/figures/Article.js.map +1 -1
- package/components/skeleton/figures/Circle.js +2 -0
- package/components/skeleton/figures/Circle.js.map +1 -1
- package/components/skeleton/figures/Product.js +2 -0
- package/components/skeleton/figures/Product.js.map +1 -1
- package/components/skeleton/figures/Table.js +2 -0
- package/components/skeleton/figures/Table.js.map +1 -1
- package/components/slider/Slider.d.ts +1 -0
- package/components/slider/Slider.js +1 -0
- package/components/slider/Slider.js.map +1 -1
- package/components/slider/SliderInstance.js +2 -0
- package/components/slider/SliderInstance.js.map +1 -1
- package/components/slider/SliderProvider.js +2 -0
- package/components/slider/SliderProvider.js.map +1 -1
- package/components/space/Space.js +2 -0
- package/components/space/Space.js.map +1 -1
- package/components/switch/Switch.js +3 -0
- package/components/switch/Switch.js.map +1 -1
- package/components/table/Table.js +2 -0
- package/components/table/Table.js.map +1 -1
- package/components/tabs/Tabs.js +2 -0
- package/components/tabs/Tabs.js.map +1 -1
- package/components/tag/Tag.d.ts +1 -0
- package/components/tag/Tag.js +3 -0
- package/components/tag/Tag.js.map +1 -1
- package/components/tag/TagGroup.js +2 -0
- package/components/tag/TagGroup.js.map +1 -1
- package/components/textarea/Textarea.js +3 -0
- package/components/textarea/Textarea.js.map +1 -1
- package/components/timeline/Timeline.js +2 -0
- package/components/timeline/Timeline.js.map +1 -1
- package/components/timeline/TimelineItem.js +2 -0
- package/components/timeline/TimelineItem.js.map +1 -1
- package/components/toggle-button/ToggleButton.js +3 -0
- package/components/toggle-button/ToggleButton.js.map +1 -1
- package/components/toggle-button/ToggleButtonGroup.js +6 -4
- package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
- package/components/tooltip/Tooltip.js +2 -0
- package/components/tooltip/Tooltip.js.map +1 -1
- package/components/tooltip/TooltipPortal.js +2 -0
- package/components/tooltip/TooltipPortal.js.map +1 -1
- package/components/upload/Upload.d.ts +1 -0
- package/components/upload/Upload.js +3 -0
- package/components/upload/Upload.js.map +1 -1
- package/components/upload/useUpload.js +2 -0
- package/components/upload/useUpload.js.map +1 -1
- package/components/visually-hidden/VisuallyHidden.js +2 -0
- package/components/visually-hidden/VisuallyHidden.js.map +1 -1
- package/elements/Element.js +2 -0
- package/elements/Element.js.map +1 -1
- package/elements/typography/H.js +2 -0
- package/elements/typography/H.js.map +1 -1
- package/es/components/accordion/AccordionContent.js +2 -0
- package/es/components/accordion/AccordionContent.js.map +1 -1
- package/es/components/anchor/Anchor.js +2 -0
- package/es/components/anchor/Anchor.js.map +1 -1
- package/es/components/autocomplete/Autocomplete.js +79 -77
- package/es/components/autocomplete/Autocomplete.js.map +1 -1
- package/es/components/avatar/Avatar.js +2 -0
- package/es/components/avatar/Avatar.js.map +1 -1
- package/es/components/avatar/AvatarGroup.js +2 -0
- package/es/components/avatar/AvatarGroup.js.map +1 -1
- package/es/components/badge/Badge.js +2 -0
- package/es/components/badge/Badge.js.map +1 -1
- package/es/components/breadcrumb/BreadcrumbItem.js +2 -0
- package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/es/components/button/Button.js +3 -0
- package/es/components/button/Button.js.map +1 -1
- package/es/components/checkbox/Checkbox.js +3 -0
- package/es/components/checkbox/Checkbox.js.map +1 -1
- package/es/components/date-picker/DatePicker.js +3 -0
- package/es/components/date-picker/DatePicker.js.map +1 -1
- package/es/components/date-picker/DatePickerProvider.js +2 -0
- package/es/components/date-picker/DatePickerProvider.js.map +1 -1
- package/es/components/dropdown/Dropdown.js +1 -0
- package/es/components/dropdown/Dropdown.js.map +1 -1
- package/es/components/flex/Container.js +2 -0
- package/es/components/flex/Container.js.map +1 -1
- package/es/components/flex/Flex.d.ts +1 -1
- package/es/components/flex/Flex.js +1 -1
- package/es/components/flex/Flex.js.map +1 -1
- package/es/components/flex/export.d.ts +5 -0
- package/es/components/flex/export.js +6 -0
- package/es/components/flex/export.js.map +1 -0
- package/es/components/flex/index.d.ts +2 -5
- package/es/components/flex/index.js +2 -5
- package/es/components/flex/index.js.map +1 -1
- package/es/components/form-label/FormLabel.d.ts +1 -0
- package/es/components/form-label/FormLabel.js +3 -0
- package/es/components/form-label/FormLabel.js.map +1 -1
- package/es/components/form-row/FormRow.js +2 -0
- package/es/components/form-row/FormRow.js.map +1 -1
- package/es/components/form-set/FormSet.js +2 -0
- package/es/components/form-set/FormSet.js.map +1 -1
- package/es/components/form-status/FormStatus.js +2 -0
- package/es/components/form-status/FormStatus.js.map +1 -1
- package/es/components/global-error/GlobalError.js +2 -0
- package/es/components/global-error/GlobalError.js.map +1 -1
- package/es/components/global-status/GlobalStatus.js +2 -0
- package/es/components/global-status/GlobalStatus.js.map +1 -1
- package/es/components/grid/Grid.d.ts +1 -1
- package/es/components/grid/Grid.js +1 -1
- package/es/components/grid/Grid.js.map +1 -1
- package/es/components/grid/export.d.ts +2 -0
- package/es/components/grid/export.js +3 -0
- package/es/components/grid/export.js.map +1 -0
- package/es/components/grid/index.d.ts +2 -2
- package/es/components/grid/index.js +2 -2
- package/es/components/grid/index.js.map +1 -1
- package/es/components/heading/Heading.js +2 -0
- package/es/components/heading/Heading.js.map +1 -1
- package/es/components/help-button/HelpButton.js +2 -0
- package/es/components/help-button/HelpButton.js.map +1 -1
- package/es/components/help-button/HelpButtonInstance.js +2 -0
- package/es/components/help-button/HelpButtonInstance.js.map +1 -1
- package/es/components/icon/Icon.js +2 -0
- package/es/components/icon/Icon.js.map +1 -1
- package/es/components/icon-primary/IconPrimary.js +2 -0
- package/es/components/icon-primary/IconPrimary.js.map +1 -1
- package/es/components/info-card/InfoCard.js +2 -0
- package/es/components/info-card/InfoCard.js.map +1 -1
- package/es/components/input/Input.d.ts +4 -0
- package/es/components/input/Input.js +13 -2
- package/es/components/input/Input.js.map +1 -1
- package/es/components/input/InputPassword.js +3 -0
- package/es/components/input/InputPassword.js.map +1 -1
- package/es/components/input-masked/InputMasked.js +3 -0
- package/es/components/input-masked/InputMasked.js.map +1 -1
- package/es/components/input-masked/MultiInputMask.d.ts +9 -1
- package/es/components/input-masked/MultiInputMask.js +14 -7
- package/es/components/input-masked/MultiInputMask.js.map +1 -1
- package/es/components/input-masked/TextMask.d.ts +1 -1
- package/es/components/input-masked/hooks/useHandleCursorPosition.js +1 -1
- package/es/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
- package/es/components/lib.d.ts +2 -0
- package/es/components/logo/Logo.js +2 -0
- package/es/components/logo/Logo.js.map +1 -1
- package/es/components/modal/Modal.js +2 -0
- package/es/components/modal/Modal.js.map +1 -1
- package/es/components/modal/ModalContent.js +2 -0
- package/es/components/modal/ModalContent.js.map +1 -1
- package/es/components/modal/parts/CloseButton.js +2 -0
- package/es/components/modal/parts/CloseButton.js.map +1 -1
- package/es/components/number-format/NumberFormat.js +2 -0
- package/es/components/number-format/NumberFormat.js.map +1 -1
- package/es/components/number-format/NumberUtils.js +2 -0
- package/es/components/number-format/NumberUtils.js.map +1 -1
- package/es/components/pagination/PaginationHelpers.js +2 -0
- package/es/components/pagination/PaginationHelpers.js.map +1 -1
- package/es/components/pagination/PaginationInfinity.js +2 -0
- package/es/components/pagination/PaginationInfinity.js.map +1 -1
- package/es/components/pagination/PaginationProvider.js +2 -0
- package/es/components/pagination/PaginationProvider.js.map +1 -1
- package/es/components/progress-indicator/ProgressIndicator.js +2 -0
- package/es/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/es/components/radio/Radio.js +5 -2
- package/es/components/radio/Radio.js.map +1 -1
- package/es/components/radio/RadioGroup.js +6 -4
- package/es/components/radio/RadioGroup.js.map +1 -1
- package/es/components/radio/style/dnb-radio.css +106 -0
- package/es/components/radio/style/dnb-radio.min.css +1 -1
- package/es/components/radio/style/dnb-radio.scss +202 -0
- package/es/components/radio/style/themes/dnb-radio-theme-sbanken.css +26 -0
- package/es/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +1 -0
- package/es/components/radio/style/themes/dnb-radio-theme-sbanken.scss +33 -0
- package/es/components/radio/style/themes/dnb-radio-theme-ui.css +20 -86
- package/es/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
- package/es/components/radio/style/themes/dnb-radio-theme-ui.scss +26 -143
- package/es/components/section/Section.js +2 -0
- package/es/components/section/Section.js.map +1 -1
- package/es/components/skeleton/Skeleton.js +2 -0
- package/es/components/skeleton/Skeleton.js.map +1 -1
- package/es/components/skeleton/figures/Article.js +2 -0
- package/es/components/skeleton/figures/Article.js.map +1 -1
- package/es/components/skeleton/figures/Circle.js +2 -0
- package/es/components/skeleton/figures/Circle.js.map +1 -1
- package/es/components/skeleton/figures/Product.js +2 -0
- package/es/components/skeleton/figures/Product.js.map +1 -1
- package/es/components/skeleton/figures/Table.js +2 -0
- package/es/components/skeleton/figures/Table.js.map +1 -1
- package/es/components/slider/Slider.d.ts +1 -0
- package/es/components/slider/Slider.js +1 -0
- package/es/components/slider/Slider.js.map +1 -1
- package/es/components/slider/SliderInstance.js +2 -0
- package/es/components/slider/SliderInstance.js.map +1 -1
- package/es/components/slider/SliderProvider.js +2 -0
- package/es/components/slider/SliderProvider.js.map +1 -1
- package/es/components/space/Space.js +2 -0
- package/es/components/space/Space.js.map +1 -1
- package/es/components/switch/Switch.js +3 -0
- package/es/components/switch/Switch.js.map +1 -1
- package/es/components/table/Table.js +2 -0
- package/es/components/table/Table.js.map +1 -1
- package/es/components/tabs/Tabs.js +2 -0
- package/es/components/tabs/Tabs.js.map +1 -1
- package/es/components/tag/Tag.d.ts +1 -0
- package/es/components/tag/Tag.js +3 -0
- package/es/components/tag/Tag.js.map +1 -1
- package/es/components/tag/TagGroup.js +2 -0
- package/es/components/tag/TagGroup.js.map +1 -1
- package/es/components/textarea/Textarea.js +3 -0
- package/es/components/textarea/Textarea.js.map +1 -1
- package/es/components/timeline/Timeline.js +2 -0
- package/es/components/timeline/Timeline.js.map +1 -1
- package/es/components/timeline/TimelineItem.js +2 -0
- package/es/components/timeline/TimelineItem.js.map +1 -1
- package/es/components/toggle-button/ToggleButton.js +3 -0
- package/es/components/toggle-button/ToggleButton.js.map +1 -1
- package/es/components/toggle-button/ToggleButtonGroup.js +6 -4
- package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
- package/es/components/tooltip/Tooltip.js +2 -0
- package/es/components/tooltip/Tooltip.js.map +1 -1
- package/es/components/tooltip/TooltipPortal.js +2 -0
- package/es/components/tooltip/TooltipPortal.js.map +1 -1
- package/es/components/upload/Upload.d.ts +1 -0
- package/es/components/upload/Upload.js +3 -0
- package/es/components/upload/Upload.js.map +1 -1
- package/es/components/upload/useUpload.js +2 -0
- package/es/components/upload/useUpload.js.map +1 -1
- package/es/components/visually-hidden/VisuallyHidden.js +2 -0
- package/es/components/visually-hidden/VisuallyHidden.js.map +1 -1
- package/es/elements/Element.js +2 -0
- package/es/elements/Element.js.map +1 -1
- package/es/elements/typography/H.js +2 -0
- package/es/elements/typography/H.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.js +53 -43
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +9 -6
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/es/extensions/forms/Field/Email/Email.js +7 -5
- package/es/extensions/forms/Field/Email/Email.js.map +1 -1
- package/es/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
- package/es/extensions/forms/Field/Expiry/Expiry.js +88 -0
- package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
- package/es/extensions/forms/Field/Expiry/index.d.ts +2 -0
- package/es/extensions/forms/Field/Expiry/index.js +3 -0
- package/es/extensions/forms/Field/Expiry/index.js.map +1 -0
- package/es/extensions/forms/Field/Expiry/style/dnb-expiry.css +12 -0
- package/es/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
- package/es/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +9 -6
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/es/extensions/forms/Field/Number/Number.js +48 -25
- package/es/extensions/forms/Field/Number/Number.js.map +1 -1
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +9 -6
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +34 -21
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +6 -4
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/es/extensions/forms/Field/String/String.js +30 -20
- package/es/extensions/forms/Field/String/String.js.map +1 -1
- package/es/extensions/forms/Field/index.d.ts +1 -0
- package/es/extensions/forms/Field/index.js +1 -0
- package/es/extensions/forms/Field/index.js.map +1 -1
- package/es/extensions/forms/Field/style/dnb-forms-field.css +13 -0
- package/es/extensions/forms/Field/style/dnb-forms-field.min.css +1 -1
- package/es/extensions/forms/Field/style/dnb-forms-field.scss +1 -0
- package/es/extensions/forms/FieldBlock/FieldBlock.js +36 -3
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/Form/Element/Element.js +2 -0
- package/es/extensions/forms/Form/Element/Element.js.map +1 -1
- package/es/extensions/forms/Form/Handler/Handler.js +2 -0
- package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/es/extensions/forms/hooks/index.d.ts +3 -0
- package/es/extensions/forms/hooks/index.js +5 -1
- package/es/extensions/forms/hooks/index.js.map +1 -1
- package/es/extensions/forms/hooks/useDataValue.js +127 -62
- package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/es/extensions/forms/hooks/useMountEffect.d.ts +5 -0
- package/es/extensions/forms/hooks/useMountEffect.js +9 -0
- package/es/extensions/forms/hooks/useMountEffect.js.map +1 -0
- package/es/extensions/forms/hooks/useProcessManager.d.ts +6 -0
- package/es/extensions/forms/hooks/useProcessManager.js +16 -0
- package/es/extensions/forms/hooks/useProcessManager.js.map +1 -0
- package/es/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
- package/es/extensions/forms/hooks/useUpdateEffect.js +14 -0
- package/es/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
- package/es/extensions/forms/style/dnb-forms.css +13 -0
- package/es/extensions/forms/style/dnb-forms.min.css +1 -1
- package/es/extensions/forms/types.d.ts +10 -2
- package/es/extensions/forms/types.js +2 -0
- package/es/extensions/forms/types.js.map +1 -1
- package/es/extensions/forms/utils/ajv.js +25 -1
- package/es/extensions/forms/utils/ajv.js.map +1 -1
- package/es/extensions/forms/utils/errors.d.ts +2 -0
- package/es/extensions/forms/utils/errors.js +10 -0
- package/es/extensions/forms/utils/errors.js.map +1 -0
- package/es/extensions/forms/utils/index.d.ts +1 -0
- package/es/extensions/forms/utils/index.js +1 -0
- package/es/extensions/forms/utils/index.js.map +1 -1
- package/es/extensions/payment-card/PaymentCard.js +2 -0
- package/es/extensions/payment-card/PaymentCard.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListProvider.js +2 -0
- package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/es/fragments/scroll-view/ScrollView.js +2 -0
- package/es/fragments/scroll-view/ScrollView.js.map +1 -1
- package/es/shared/Eufemia.d.ts +1 -1
- package/es/shared/Eufemia.js +2 -2
- package/es/shared/Eufemia.js.map +1 -1
- package/es/shared/MediaQuery.js +2 -0
- package/es/shared/MediaQuery.js.map +1 -1
- package/es/shared/Provider.js +2 -0
- package/es/shared/Provider.js.map +1 -1
- package/es/shared/Theme.js +2 -0
- package/es/shared/Theme.js.map +1 -1
- package/es/shared/VisibilityByTheme.js +2 -0
- package/es/shared/VisibilityByTheme.js.map +1 -1
- package/es/shared/index.js +2 -0
- package/es/shared/index.js.map +1 -1
- package/es/shared/locales/en-GB.d.ts +11 -0
- package/es/shared/locales/en-GB.js +12 -1
- package/es/shared/locales/en-GB.js.map +1 -1
- package/es/shared/locales/en-US.d.ts +11 -0
- package/es/shared/locales/index.d.ts +22 -0
- package/es/shared/locales/nb-NO.d.ts +11 -0
- package/es/shared/locales/nb-NO.js +12 -1
- package/es/shared/locales/nb-NO.js.map +1 -1
- package/es/shared/useMedia.js +2 -0
- package/es/shared/useMedia.js.map +1 -1
- package/es/shared/useMediaQuery.js +2 -0
- package/es/shared/useMediaQuery.js.map +1 -1
- package/es/shared/useTheme.js +2 -0
- package/es/shared/useTheme.js.map +1 -1
- package/es/shared/useTranslation.js +2 -0
- package/es/shared/useTranslation.js.map +1 -1
- package/es/style/dnb-ui-components.css +106 -0
- package/es/style/dnb-ui-components.min.css +1 -1
- package/es/style/dnb-ui-extensions.css +13 -0
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +126 -86
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +133 -93
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
- package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -0
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +126 -86
- package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/es/style/themes/theme-ui/ui-theme-extensions.css +13 -0
- package/es/style/themes/theme-ui/ui-theme-extensions.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/Provider/Provider.js +53 -43
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +9 -6
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/extensions/forms/Field/Email/Email.js +7 -5
- package/extensions/forms/Field/Email/Email.js.map +1 -1
- package/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
- package/extensions/forms/Field/Expiry/Expiry.js +88 -0
- package/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
- package/extensions/forms/Field/Expiry/index.d.ts +2 -0
- package/extensions/forms/Field/Expiry/index.js +3 -0
- package/extensions/forms/Field/Expiry/index.js.map +1 -0
- package/extensions/forms/Field/Expiry/style/dnb-expiry.css +12 -0
- package/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
- package/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +9 -6
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/extensions/forms/Field/Number/Number.js +49 -26
- package/extensions/forms/Field/Number/Number.js.map +1 -1
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +9 -6
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +46 -33
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/extensions/forms/Field/SelectCountry/SelectCountry.js +6 -4
- package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/extensions/forms/Field/String/String.js +31 -21
- package/extensions/forms/Field/String/String.js.map +1 -1
- package/extensions/forms/Field/index.d.ts +1 -0
- package/extensions/forms/Field/index.js +1 -0
- package/extensions/forms/Field/index.js.map +1 -1
- package/extensions/forms/Field/style/dnb-forms-field.css +13 -0
- package/extensions/forms/Field/style/dnb-forms-field.min.css +1 -1
- package/extensions/forms/Field/style/dnb-forms-field.scss +1 -0
- package/extensions/forms/FieldBlock/FieldBlock.js +37 -3
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/Form/Element/Element.js +2 -0
- package/extensions/forms/Form/Element/Element.js.map +1 -1
- package/extensions/forms/Form/Handler/Handler.js +2 -0
- package/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/extensions/forms/hooks/index.d.ts +3 -0
- package/extensions/forms/hooks/index.js +5 -1
- package/extensions/forms/hooks/index.js.map +1 -1
- package/extensions/forms/hooks/useDataValue.js +128 -62
- package/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/extensions/forms/hooks/useMountEffect.d.ts +5 -0
- package/extensions/forms/hooks/useMountEffect.js +9 -0
- package/extensions/forms/hooks/useMountEffect.js.map +1 -0
- package/extensions/forms/hooks/useProcessManager.d.ts +6 -0
- package/extensions/forms/hooks/useProcessManager.js +16 -0
- package/extensions/forms/hooks/useProcessManager.js.map +1 -0
- package/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
- package/extensions/forms/hooks/useUpdateEffect.js +14 -0
- package/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
- package/extensions/forms/style/dnb-forms.css +13 -0
- package/extensions/forms/style/dnb-forms.min.css +1 -1
- package/extensions/forms/types.d.ts +10 -2
- package/extensions/forms/types.js +2 -0
- package/extensions/forms/types.js.map +1 -1
- package/extensions/forms/utils/ajv.js +25 -1
- package/extensions/forms/utils/ajv.js.map +1 -1
- package/extensions/forms/utils/errors.d.ts +2 -0
- package/extensions/forms/utils/errors.js +10 -0
- package/extensions/forms/utils/errors.js.map +1 -0
- package/extensions/forms/utils/index.d.ts +1 -0
- package/extensions/forms/utils/index.js +1 -0
- package/extensions/forms/utils/index.js.map +1 -1
- package/extensions/payment-card/PaymentCard.js +2 -0
- package/extensions/payment-card/PaymentCard.js.map +1 -1
- package/fragments/drawer-list/DrawerListProvider.js +2 -0
- package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/fragments/scroll-view/ScrollView.js +2 -0
- package/fragments/scroll-view/ScrollView.js.map +1 -1
- package/package.json +1 -1
- package/shared/Eufemia.d.ts +1 -1
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/shared/MediaQuery.js +2 -0
- package/shared/MediaQuery.js.map +1 -1
- package/shared/Provider.js +2 -0
- package/shared/Provider.js.map +1 -1
- package/shared/Theme.js +2 -0
- package/shared/Theme.js.map +1 -1
- package/shared/VisibilityByTheme.js +2 -0
- package/shared/VisibilityByTheme.js.map +1 -1
- package/shared/index.js +2 -0
- package/shared/index.js.map +1 -1
- package/shared/locales/en-GB.d.ts +11 -0
- package/shared/locales/en-GB.js +12 -1
- package/shared/locales/en-GB.js.map +1 -1
- package/shared/locales/en-US.d.ts +11 -0
- package/shared/locales/index.d.ts +22 -0
- package/shared/locales/nb-NO.d.ts +11 -0
- package/shared/locales/nb-NO.js +12 -1
- package/shared/locales/nb-NO.js.map +1 -1
- package/shared/useMedia.js +2 -0
- package/shared/useMedia.js.map +1 -1
- package/shared/useMediaQuery.js +2 -0
- package/shared/useMediaQuery.js.map +1 -1
- package/shared/useTheme.js +2 -0
- package/shared/useTheme.js.map +1 -1
- package/shared/useTranslation.js +2 -0
- package/shared/useTranslation.js.map +1 -1
- package/style/dnb-ui-components.css +106 -0
- package/style/dnb-ui-components.min.css +1 -1
- package/style/dnb-ui-extensions.css +13 -0
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.css +126 -86
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -0
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +133 -93
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
- package/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -0
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-components.css +126 -86
- package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/style/themes/theme-ui/ui-theme-extensions.css +13 -0
- package/style/themes/theme-ui/ui-theme-extensions.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 +2 -2
- package/umd/dnb-ui-lib.min.js +1 -1
|
@@ -8,6 +8,8 @@ exports.default = Provider;
|
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _jsonPointer = _interopRequireDefault(require("json-pointer"));
|
|
10
10
|
var _ajv = _interopRequireWildcard(require("../../utils/ajv"));
|
|
11
|
+
var _useMountEffect = _interopRequireDefault(require("../../hooks/useMountEffect"));
|
|
12
|
+
var _useUpdateEffect = _interopRequireDefault(require("../../hooks/useUpdateEffect"));
|
|
11
13
|
var _Context = _interopRequireDefault(require("../Context"));
|
|
12
14
|
var _structuredClone = _interopRequireDefault(require("@ungap/structured-clone"));
|
|
13
15
|
const _excluded = ["defaultData", "data", "schema", "onChange", "onPathChange", "onSubmit", "onSubmitRequest", "scrollTopOnSubmit", "sessionStorageId", "children"];
|
|
@@ -42,10 +44,17 @@ function Provider(_ref) {
|
|
|
42
44
|
children
|
|
43
45
|
} = _ref,
|
|
44
46
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
47
|
+
const [, forceUpdate] = (0, _react.useReducer)(() => ({}), {});
|
|
45
48
|
if (data !== undefined && sessionStorageId !== undefined) {
|
|
46
49
|
console.error('Providing both data and sessionStorageId could lead to competing data sources. To provide default data to use only before anything is changed in the interface, use defaultData.');
|
|
47
50
|
}
|
|
48
|
-
const
|
|
51
|
+
const mountedFieldPathsRef = (0, _react.useRef)([]);
|
|
52
|
+
const errorsRef = (0, _react.useRef)();
|
|
53
|
+
const showAllErrorsRef = (0, _react.useRef)(false);
|
|
54
|
+
const setShowAllErrors = (0, _react.useCallback)(showAllErrors => {
|
|
55
|
+
showAllErrorsRef.current = showAllErrors;
|
|
56
|
+
}, []);
|
|
57
|
+
const pathsWithErrorRef = (0, _react.useRef)([]);
|
|
49
58
|
const initialData = (0, _react.useMemo)(() => {
|
|
50
59
|
if (sessionStorageId && typeof window !== 'undefined') {
|
|
51
60
|
var _window$sessionStorag;
|
|
@@ -55,45 +64,42 @@ function Provider(_ref) {
|
|
|
55
64
|
}
|
|
56
65
|
}
|
|
57
66
|
return data !== null && data !== void 0 ? data : defaultData;
|
|
58
|
-
}, [
|
|
59
|
-
const
|
|
60
|
-
const
|
|
61
|
-
const
|
|
62
|
-
|
|
63
|
-
const [showAllErrors, setShowAllErrors] = (0, _react.useState)(false);
|
|
64
|
-
const pathsWithErrorRef = (0, _react.useRef)([]);
|
|
65
|
-
const hasErrors = (0, _react.useCallback)(() => Boolean(mountedFieldPathsRef.current.find(mountedFieldPath => errorsRef.current[mountedFieldPath] !== undefined || pathsWithErrorRef.current.includes(mountedFieldPath))), []);
|
|
66
|
-
(0, _react.useEffect)(() => {
|
|
67
|
-
if (!wasMounted.current) {
|
|
68
|
-
wasMounted.current = true;
|
|
69
|
-
return;
|
|
70
|
-
}
|
|
71
|
-
setInternalData(data);
|
|
72
|
-
}, [data]);
|
|
73
|
-
const validateBySchema = (0, _react.useCallback)(data => {
|
|
74
|
-
if (!ajvSchemaValidator) {
|
|
67
|
+
}, []);
|
|
68
|
+
const internalDataRef = (0, _react.useRef)(initialData);
|
|
69
|
+
const ajvSchemaValidatorRef = (0, _react.useRef)();
|
|
70
|
+
const validateData = (0, _react.useCallback)(() => {
|
|
71
|
+
if (!ajvSchemaValidatorRef.current) {
|
|
75
72
|
return;
|
|
76
73
|
}
|
|
77
|
-
if (!
|
|
78
|
-
const errors = (0, _ajv.ajvErrorsToFormErrors)(
|
|
79
|
-
|
|
74
|
+
if (!ajvSchemaValidatorRef.current(internalDataRef.current)) {
|
|
75
|
+
const errors = (0, _ajv.ajvErrorsToFormErrors)(ajvSchemaValidatorRef.current.errors);
|
|
76
|
+
errorsRef.current = errors;
|
|
80
77
|
} else {
|
|
78
|
+
errorsRef.current = undefined;
|
|
79
|
+
}
|
|
80
|
+
forceUpdate();
|
|
81
|
+
}, []);
|
|
82
|
+
(0, _react.useEffect)(() => {
|
|
83
|
+
if (!schema) {
|
|
81
84
|
return;
|
|
82
85
|
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
86
|
+
ajvSchemaValidatorRef.current = _ajv.default.compile(schema);
|
|
87
|
+
validateData();
|
|
88
|
+
}, [schema, validateData]);
|
|
89
|
+
const hasErrors = (0, _react.useCallback)(() => Boolean(mountedFieldPathsRef.current.find(mountedFieldPath => {
|
|
90
|
+
var _errorsRef$current;
|
|
91
|
+
return ((_errorsRef$current = errorsRef.current) === null || _errorsRef$current === void 0 ? void 0 : _errorsRef$current[mountedFieldPath]) !== undefined || pathsWithErrorRef.current.includes(mountedFieldPath);
|
|
92
|
+
})), []);
|
|
88
93
|
const setPathWithError = (0, _react.useCallback)((path, hasError) => {
|
|
89
94
|
pathsWithErrorRef.current = hasError ? addListPath(pathsWithErrorRef.current, path) : removeListPath(pathsWithErrorRef.current, path);
|
|
90
95
|
}, []);
|
|
91
96
|
const handlePathChange = (0, _react.useCallback)((path, value) => {
|
|
97
|
+
var _internalDataRef$curr;
|
|
92
98
|
if (!path) {
|
|
93
99
|
return;
|
|
94
100
|
}
|
|
95
101
|
onPathChange === null || onPathChange === void 0 ? void 0 : onPathChange(path, value);
|
|
96
|
-
const newData = (0, _structuredClone.default)(path === '/' ? value :
|
|
102
|
+
const newData = (0, _structuredClone.default)(path === '/' ? value : (_internalDataRef$curr = internalDataRef.current) !== null && _internalDataRef$curr !== void 0 ? _internalDataRef$curr : path.match(isArrayJsonPointer) ? [] : {});
|
|
97
103
|
if (path !== '/') {
|
|
98
104
|
_jsonPointer.default.set(newData, path, value);
|
|
99
105
|
}
|
|
@@ -102,10 +108,11 @@ function Provider(_ref) {
|
|
|
102
108
|
var _window$sessionStorag2;
|
|
103
109
|
(_window$sessionStorag2 = window.sessionStorage) === null || _window$sessionStorag2 === void 0 ? void 0 : _window$sessionStorag2.setItem(sessionStorageId, JSON.stringify(newData));
|
|
104
110
|
}
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
111
|
+
internalDataRef.current = newData;
|
|
112
|
+
validateData();
|
|
113
|
+
showAllErrorsRef.current = false;
|
|
114
|
+
forceUpdate();
|
|
115
|
+
}, [onChange, onPathChange, validateData, sessionStorageId]);
|
|
109
116
|
const handleMountField = (0, _react.useCallback)(path => {
|
|
110
117
|
mountedFieldPathsRef.current = addListPath(mountedFieldPathsRef.current, path);
|
|
111
118
|
}, []);
|
|
@@ -118,7 +125,7 @@ function Provider(_ref) {
|
|
|
118
125
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
119
126
|
if (!hasErrors()) {
|
|
120
127
|
var _formElement$reset;
|
|
121
|
-
onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(
|
|
128
|
+
onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(internalDataRef.current);
|
|
122
129
|
formElement === null || formElement === void 0 ? void 0 : (_formElement$reset = formElement.reset) === null || _formElement$reset === void 0 ? void 0 : _formElement$reset.call(formElement);
|
|
123
130
|
if (typeof window !== 'undefined') {
|
|
124
131
|
if (sessionStorageId) {
|
|
@@ -133,24 +140,27 @@ function Provider(_ref) {
|
|
|
133
140
|
}
|
|
134
141
|
}
|
|
135
142
|
} else {
|
|
136
|
-
|
|
143
|
+
showAllErrorsRef.current = true;
|
|
137
144
|
onSubmitRequest === null || onSubmitRequest === void 0 ? void 0 : onSubmitRequest();
|
|
138
145
|
}
|
|
139
|
-
return
|
|
140
|
-
}, [
|
|
141
|
-
(0,
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
+
return internalDataRef.current;
|
|
147
|
+
}, [scrollTopOnSubmit, hasErrors, onSubmit, onSubmitRequest, sessionStorageId]);
|
|
148
|
+
(0, _useMountEffect.default)(() => {
|
|
149
|
+
validateData();
|
|
150
|
+
});
|
|
151
|
+
(0, _useUpdateEffect.default)(() => {
|
|
152
|
+
internalDataRef.current = data;
|
|
153
|
+
validateData();
|
|
154
|
+
forceUpdate();
|
|
155
|
+
}, [data, validateData, forceUpdate]);
|
|
146
156
|
return _react.default.createElement(_Context.default.Provider, {
|
|
147
157
|
value: _objectSpread(_objectSpread({
|
|
148
|
-
data:
|
|
158
|
+
data: internalDataRef.current
|
|
149
159
|
}, rest), {}, {
|
|
150
160
|
handlePathChange,
|
|
151
161
|
handleSubmit,
|
|
152
162
|
errors: errorsRef.current,
|
|
153
|
-
showAllErrors,
|
|
163
|
+
showAllErrors: showAllErrorsRef.current,
|
|
154
164
|
setShowAllErrors,
|
|
155
165
|
mountedFieldPaths: mountedFieldPathsRef.current,
|
|
156
166
|
handleMountField,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Provider.js","names":["_react","_interopRequireWildcard","require","_jsonPointer","_interopRequireDefault","_ajv","_Context","_structuredClone","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","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","addListPath","paths","path","includes","concat","removeListPath","thisPath","isArrayJsonPointer","Provider","_ref","defaultData","data","schema","onChange","onPathChange","onSubmit","onSubmitRequest","scrollTopOnSubmit","sessionStorageId","children","rest","console","error","wasMounted","useRef","initialData","useMemo","window","_window$sessionStorag","sessionDataJSON","sessionStorage","getItem","JSON","parse","ajvSchemaValidator","ajv","compile","internalData","setInternalData","useState","mountedFieldPathsRef","errorsRef","showAllErrors","setShowAllErrors","pathsWithErrorRef","hasErrors","useCallback","Boolean","current","find","mountedFieldPath","useEffect","validateBySchema","errors","ajvErrorsToFormErrors","validateBySchemaAndUpdateState","_validateBySchema","setPathWithError","hasError","handlePathChange","newData","structuredClone","match","pointer","_window$sessionStorag2","setItem","stringify","handleMountField","handleUnMountField","handleSubmit","formElement","_formElement$reset","reset","removeItem","_window","scrollTo","top","behavior","createElement","mountedFieldPaths"],"sources":["../../../../../../src/extensions/forms/DataContext/Provider/Provider.tsx"],"sourcesContent":["import React, {\n useEffect,\n useRef,\n useMemo,\n useCallback,\n useState,\n} from 'react'\nimport pointer, { JsonObject } from 'json-pointer'\nimport { JSONSchema7 } from 'json-schema'\nimport ajv, { ajvErrorsToFormErrors } from '../../utils/ajv'\nimport { FormError } from '../../types'\nimport Context, { ContextState } from '../Context'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So its a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\nexport interface Props<Data extends JsonObject> {\n /** Default source data, only used if no other source is available, and not leading to updates if changed after mount */\n defaultData?: Partial<Data>\n /** Dynamic source data used as both initial data, and updates internal data if changed after mount */\n data?: Partial<Data>\n /** JSON Schema for validating the data, like during input or after attempting submit */\n schema?: JSONSchema7\n /** Change handler for the whole data set */\n onChange?: (data: Data) => void\n /** Change handler for each value */\n onPathChange?: (path: string, value: any) => void\n /** Submit called, data was valid (if validation available) */\n onSubmit?: (data: Data) => void\n /** Submit was requested, but data was invalid */\n onSubmitRequest?: () => void\n scrollTopOnSubmit?: boolean\n /** Key for caching the data in session storage */\n sessionStorageId?: string\n children: React.ReactNode\n}\n\ntype PathList = string[]\n\nfunction addListPath(paths: PathList, path: string): PathList {\n return paths.includes(path) ? paths : paths.concat(path)\n}\n\nfunction removeListPath(paths: PathList, path: string): PathList {\n return paths.filter((thisPath) => thisPath !== path)\n}\n\nconst isArrayJsonPointer = /^\\/\\d+(\\/|$)/\n\nexport default function Provider<Data extends JsonObject>({\n defaultData,\n data,\n schema,\n onChange,\n onPathChange,\n onSubmit,\n onSubmitRequest,\n scrollTopOnSubmit,\n sessionStorageId,\n children,\n ...rest\n}: Props<Data>) {\n // Prop error handling\n if (data !== undefined && sessionStorageId !== undefined) {\n console.error(\n 'Providing both data and sessionStorageId could lead to competing data sources. To provide default data to use only before anything is changed in the interface, use defaultData.'\n )\n }\n\n // State\n const wasMounted = useRef(false)\n const initialData = useMemo(() => {\n if (sessionStorageId && typeof window !== 'undefined') {\n const sessionDataJSON =\n window.sessionStorage?.getItem(sessionStorageId)\n if (sessionDataJSON) {\n return JSON.parse(sessionDataJSON)\n }\n }\n return data ?? defaultData\n }, [data, defaultData, sessionStorageId])\n const ajvSchemaValidator = useMemo(\n () => (schema ? ajv.compile(schema) : undefined),\n [schema]\n )\n const [internalData, setInternalData] =\n useState<Partial<Data>>(initialData)\n const mountedFieldPathsRef = useRef<string[]>([])\n\n // Errors from provider validation (the whole data set)\n const errorsRef = useRef<Record<string, FormError>>({})\n const [showAllErrors, setShowAllErrors] = useState<boolean>(false)\n // Errors reported by fields, based on their direct validation rules\n const pathsWithErrorRef = useRef<string[]>([])\n\n const hasErrors = useCallback(\n () =>\n Boolean(\n mountedFieldPathsRef.current.find(\n (mountedFieldPath) =>\n errorsRef.current[mountedFieldPath] !== undefined ||\n pathsWithErrorRef.current.includes(mountedFieldPath)\n )\n ),\n []\n )\n\n useEffect(() => {\n if (!wasMounted.current) {\n wasMounted.current = true\n return\n }\n // When receiving the initial data, or receiving updated data by props, update the internal data (controlled state)\n setInternalData(data)\n }, [data])\n\n const validateBySchema = useCallback(\n (data: Partial<Data>): Record<string, Error> | undefined => {\n if (!ajvSchemaValidator) {\n // No schema-based validator. Assume data is valid.\n return\n }\n\n if (!ajvSchemaValidator(data)) {\n // Errors found\n const errors = ajvErrorsToFormErrors(ajvSchemaValidator.errors)\n return errors\n } else {\n return\n }\n },\n [ajvSchemaValidator]\n )\n\n const validateBySchemaAndUpdateState = useCallback(\n (data: Partial<Data>) => {\n errorsRef.current = validateBySchema(data) ?? {}\n },\n [validateBySchema]\n )\n\n const setPathWithError = useCallback(\n (path: string, hasError: boolean) => {\n pathsWithErrorRef.current = hasError\n ? addListPath(pathsWithErrorRef.current, path)\n : removeListPath(pathsWithErrorRef.current, path)\n },\n []\n )\n\n const handlePathChange = useCallback(\n (path, value) => {\n if (!path) {\n return\n }\n onPathChange?.(path, value)\n\n // Update the data even if it contains errors. Submit/SubmitRequest will be called accordingly\n const newData = structuredClone(\n path === '/'\n ? // When setting the root of the data, the whole data set should be the new value\n value\n : // For sub paths, use the the existing data set (or empty array/object), but modify it below (since pointer.set is not immutable)\n internalData ?? (path.match(isArrayJsonPointer) ? [] : {})\n )\n if (path !== '/') {\n pointer.set(newData as Data, path, value)\n }\n\n onChange?.(newData as Data)\n\n if (sessionStorageId && typeof window !== 'undefined') {\n window.sessionStorage?.setItem(\n sessionStorageId,\n JSON.stringify(newData)\n )\n }\n\n validateBySchemaAndUpdateState(newData)\n\n setInternalData(newData)\n\n setShowAllErrors(false)\n },\n [internalData, onChange, onPathChange, validateBySchemaAndUpdateState]\n )\n\n // Mounted fields\n const handleMountField = useCallback((path: string) => {\n mountedFieldPathsRef.current = addListPath(\n mountedFieldPathsRef.current,\n path\n )\n }, [])\n\n const handleUnMountField = useCallback((path: string) => {\n mountedFieldPathsRef.current = removeListPath(\n mountedFieldPathsRef.current,\n path\n )\n }, [])\n\n /**\n * Request to submit the whole form\n */\n const handleSubmit = useCallback<ContextState['handleSubmit']>(\n ({ formElement = null } = {}) => {\n if (!hasErrors()) {\n onSubmit?.(internalData as Data)\n\n formElement?.reset?.()\n\n if (typeof window !== 'undefined') {\n if (sessionStorageId) {\n window.sessionStorage.removeItem(sessionStorageId)\n }\n\n if (scrollTopOnSubmit) {\n window?.scrollTo({ top: 0, behavior: 'smooth' })\n }\n }\n } else {\n setShowAllErrors(true)\n onSubmitRequest?.()\n }\n return internalData\n },\n [internalData, scrollTopOnSubmit, hasErrors, onSubmit, onSubmitRequest]\n )\n\n useEffect(() => {\n // Mount procedure\n if (initialData) {\n // Validate the initial data to know if the user can submit, and to show errors if inputs are requested to with props\n validateBySchemaAndUpdateState(initialData)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- Only run for mount and unmount\n }, [])\n\n return (\n <Context.Provider\n value={{\n data: internalData,\n ...rest,\n handlePathChange,\n handleSubmit,\n errors: errorsRef.current,\n showAllErrors,\n setShowAllErrors,\n mountedFieldPaths: mountedFieldPathsRef.current,\n handleMountField,\n handleUnMountField,\n hasErrors,\n setPathWithError,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAOA,IAAAC,YAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,IAAA,GAAAJ,uBAAA,CAAAC,OAAA;AAEA,IAAAI,QAAA,GAAAF,sBAAA,CAAAF,OAAA;AAMA,IAAAK,gBAAA,GAAAH,sBAAA,CAAAF,OAAA;AAAqD,MAAAM,SAAA;AAAA,SAAAJ,uBAAAK,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAZ,wBAAAQ,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAAA,SAAAW,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAZ,MAAA,CAAAY,IAAA,CAAAF,MAAA,OAAAV,MAAA,CAAAa,qBAAA,QAAAC,OAAA,GAAAd,MAAA,CAAAa,qBAAA,CAAAH,MAAA,GAAAC,cAAA,KAAAG,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAhB,MAAA,CAAAE,wBAAA,CAAAQ,MAAA,EAAAM,GAAA,EAAAC,UAAA,OAAAL,IAAA,CAAAM,IAAA,CAAAC,KAAA,CAAAP,IAAA,EAAAE,OAAA,YAAAF,IAAA;AAAA,SAAAQ,cAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAb,OAAA,CAAAT,MAAA,CAAAyB,MAAA,OAAAC,OAAA,WAAAvB,GAAA,IAAAwB,eAAA,CAAAN,MAAA,EAAAlB,GAAA,EAAAsB,MAAA,CAAAtB,GAAA,SAAAH,MAAA,CAAA4B,yBAAA,GAAA5B,MAAA,CAAA6B,gBAAA,CAAAR,MAAA,EAAArB,MAAA,CAAA4B,yBAAA,CAAAH,MAAA,KAAAhB,OAAA,CAAAT,MAAA,CAAAyB,MAAA,GAAAC,OAAA,WAAAvB,GAAA,IAAAH,MAAA,CAAAC,cAAA,CAAAoB,MAAA,EAAAlB,GAAA,EAAAH,MAAA,CAAAE,wBAAA,CAAAuB,MAAA,EAAAtB,GAAA,iBAAAkB,MAAA;AAAA,SAAAM,gBAAAxC,GAAA,EAAAgB,GAAA,EAAA2B,KAAA,IAAA3B,GAAA,GAAA4B,cAAA,CAAA5B,GAAA,OAAAA,GAAA,IAAAhB,GAAA,IAAAa,MAAA,CAAAC,cAAA,CAAAd,GAAA,EAAAgB,GAAA,IAAA2B,KAAA,EAAAA,KAAA,EAAAb,UAAA,QAAAe,YAAA,QAAAC,QAAA,oBAAA9C,GAAA,CAAAgB,GAAA,IAAA2B,KAAA,WAAA3C,GAAA;AAAA,SAAA4C,eAAAG,GAAA,QAAA/B,GAAA,GAAAgC,YAAA,CAAAD,GAAA,2BAAA/B,GAAA,gBAAAA,GAAA,GAAAiC,MAAA,CAAAjC,GAAA;AAAA,SAAAgC,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAjC,IAAA,CAAA+B,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAC,SAAA,4DAAAN,IAAA,gBAAAF,MAAA,GAAAS,MAAA,EAAAR,KAAA;AAAA,SAAAS,yBAAArB,MAAA,EAAAsB,QAAA,QAAAtB,MAAA,yBAAAJ,MAAA,GAAA2B,6BAAA,CAAAvB,MAAA,EAAAsB,QAAA,OAAA5C,GAAA,EAAAmB,CAAA,MAAAtB,MAAA,CAAAa,qBAAA,QAAAoC,gBAAA,GAAAjD,MAAA,CAAAa,qBAAA,CAAAY,MAAA,QAAAH,CAAA,MAAAA,CAAA,GAAA2B,gBAAA,CAAAzB,MAAA,EAAAF,CAAA,MAAAnB,GAAA,GAAA8C,gBAAA,CAAA3B,CAAA,OAAAyB,QAAA,CAAAG,OAAA,CAAA/C,GAAA,uBAAAH,MAAA,CAAAI,SAAA,CAAA+C,oBAAA,CAAA7C,IAAA,CAAAmB,MAAA,EAAAtB,GAAA,aAAAkB,MAAA,CAAAlB,GAAA,IAAAsB,MAAA,CAAAtB,GAAA,cAAAkB,MAAA;AAAA,SAAA2B,8BAAAvB,MAAA,EAAAsB,QAAA,QAAAtB,MAAA,yBAAAJ,MAAA,WAAA+B,UAAA,GAAApD,MAAA,CAAAY,IAAA,CAAAa,MAAA,OAAAtB,GAAA,EAAAmB,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAA8B,UAAA,CAAA5B,MAAA,EAAAF,CAAA,MAAAnB,GAAA,GAAAiD,UAAA,CAAA9B,CAAA,OAAAyB,QAAA,CAAAG,OAAA,CAAA/C,GAAA,kBAAAkB,MAAA,CAAAlB,GAAA,IAAAsB,MAAA,CAAAtB,GAAA,YAAAkB,MAAA;AAyBrD,SAASgC,WAAWA,CAACC,KAAe,EAAEC,IAAY,EAAY;EAC5D,OAAOD,KAAK,CAACE,QAAQ,CAACD,IAAI,CAAC,GAAGD,KAAK,GAAGA,KAAK,CAACG,MAAM,CAACF,IAAI,CAAC;AAC1D;AAEA,SAASG,cAAcA,CAACJ,KAAe,EAAEC,IAAY,EAAY;EAC/D,OAAOD,KAAK,CAACvC,MAAM,CAAE4C,QAAQ,IAAKA,QAAQ,KAAKJ,IAAI,CAAC;AACtD;AAEA,MAAMK,kBAAkB,GAAG,cAAc;AAE1B,SAASC,QAAQA,CAAAC,IAAA,EAYhB;EAAA,IAZ0C;MACxDC,WAAW;MACXC,IAAI;MACJC,MAAM;MACNC,QAAQ;MACRC,YAAY;MACZC,QAAQ;MACRC,eAAe;MACfC,iBAAiB;MACjBC,gBAAgB;MAChBC;IAEW,CAAC,GAAAV,IAAA;IADTW,IAAI,GAAA3B,wBAAA,CAAAgB,IAAA,EAAA5E,SAAA;EAGP,IAAI8E,IAAI,KAAKtB,SAAS,IAAI6B,gBAAgB,KAAK7B,SAAS,EAAE;IACxDgC,OAAO,CAACC,KAAK,CACX,kLACF,CAAC;EACH;EAGA,MAAMC,UAAU,GAAG,IAAAC,aAAM,EAAC,KAAK,CAAC;EAChC,MAAMC,WAAW,GAAG,IAAAC,cAAO,EAAC,MAAM;IAChC,IAAIR,gBAAgB,IAAI,OAAOS,MAAM,KAAK,WAAW,EAAE;MAAA,IAAAC,qBAAA;MACrD,MAAMC,eAAe,IAAAD,qBAAA,GACnBD,MAAM,CAACG,cAAc,cAAAF,qBAAA,uBAArBA,qBAAA,CAAuBG,OAAO,CAACb,gBAAgB,CAAC;MAClD,IAAIW,eAAe,EAAE;QACnB,OAAOG,IAAI,CAACC,KAAK,CAACJ,eAAe,CAAC;MACpC;IACF;IACA,OAAOlB,IAAI,aAAJA,IAAI,cAAJA,IAAI,GAAID,WAAW;EAC5B,CAAC,EAAE,CAACC,IAAI,EAAED,WAAW,EAAEQ,gBAAgB,CAAC,CAAC;EACzC,MAAMgB,kBAAkB,GAAG,IAAAR,cAAO,EAChC,MAAOd,MAAM,GAAGuB,YAAG,CAACC,OAAO,CAACxB,MAAM,CAAC,GAAGvB,SAAU,EAChD,CAACuB,MAAM,CACT,CAAC;EACD,MAAM,CAACyB,YAAY,EAAEC,eAAe,CAAC,GACnC,IAAAC,eAAQ,EAAgBd,WAAW,CAAC;EACtC,MAAMe,oBAAoB,GAAG,IAAAhB,aAAM,EAAW,EAAE,CAAC;EAGjD,MAAMiB,SAAS,GAAG,IAAAjB,aAAM,EAA4B,CAAC,CAAC,CAAC;EACvD,MAAM,CAACkB,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAJ,eAAQ,EAAU,KAAK,CAAC;EAElE,MAAMK,iBAAiB,GAAG,IAAApB,aAAM,EAAW,EAAE,CAAC;EAE9C,MAAMqB,SAAS,GAAG,IAAAC,kBAAW,EAC3B,MACEC,OAAO,CACLP,oBAAoB,CAACQ,OAAO,CAACC,IAAI,CAC9BC,gBAAgB,IACfT,SAAS,CAACO,OAAO,CAACE,gBAAgB,CAAC,KAAK7D,SAAS,IACjDuD,iBAAiB,CAACI,OAAO,CAAC7C,QAAQ,CAAC+C,gBAAgB,CACvD,CACF,CAAC,EACH,EACF,CAAC;EAED,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAI,CAAC5B,UAAU,CAACyB,OAAO,EAAE;MACvBzB,UAAU,CAACyB,OAAO,GAAG,IAAI;MACzB;IACF;IAEAV,eAAe,CAAC3B,IAAI,CAAC;EACvB,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,MAAMyC,gBAAgB,GAAG,IAAAN,kBAAW,EACjCnC,IAAmB,IAAwC;IAC1D,IAAI,CAACuB,kBAAkB,EAAE;MAEvB;IACF;IAEA,IAAI,CAACA,kBAAkB,CAACvB,IAAI,CAAC,EAAE;MAE7B,MAAM0C,MAAM,GAAG,IAAAC,0BAAqB,EAACpB,kBAAkB,CAACmB,MAAM,CAAC;MAC/D,OAAOA,MAAM;IACf,CAAC,MAAM;MACL;IACF;EACF,CAAC,EACD,CAACnB,kBAAkB,CACrB,CAAC;EAED,MAAMqB,8BAA8B,GAAG,IAAAT,kBAAW,EAC/CnC,IAAmB,IAAK;IAAA,IAAA6C,iBAAA;IACvBf,SAAS,CAACO,OAAO,IAAAQ,iBAAA,GAAGJ,gBAAgB,CAACzC,IAAI,CAAC,cAAA6C,iBAAA,cAAAA,iBAAA,GAAI,CAAC,CAAC;EAClD,CAAC,EACD,CAACJ,gBAAgB,CACnB,CAAC;EAED,MAAMK,gBAAgB,GAAG,IAAAX,kBAAW,EAClC,CAAC5C,IAAY,EAAEwD,QAAiB,KAAK;IACnCd,iBAAiB,CAACI,OAAO,GAAGU,QAAQ,GAChC1D,WAAW,CAAC4C,iBAAiB,CAACI,OAAO,EAAE9C,IAAI,CAAC,GAC5CG,cAAc,CAACuC,iBAAiB,CAACI,OAAO,EAAE9C,IAAI,CAAC;EACrD,CAAC,EACD,EACF,CAAC;EAED,MAAMyD,gBAAgB,GAAG,IAAAb,kBAAW,EAClC,CAAC5C,IAAI,EAAEzB,KAAK,KAAK;IACf,IAAI,CAACyB,IAAI,EAAE;MACT;IACF;IACAY,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAGZ,IAAI,EAAEzB,KAAK,CAAC;IAG3B,MAAMmF,OAAO,GAAG,IAAAC,wBAAe,EAC7B3D,IAAI,KAAK,GAAG,GAERzB,KAAK,GAEL4D,YAAY,aAAZA,YAAY,cAAZA,YAAY,GAAKnC,IAAI,CAAC4D,KAAK,CAACvD,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,CAC9D,CAAC;IACD,IAAIL,IAAI,KAAK,GAAG,EAAE;MAChB6D,oBAAO,CAAC5G,GAAG,CAACyG,OAAO,EAAU1D,IAAI,EAAEzB,KAAK,CAAC;IAC3C;IAEAoC,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAG+C,OAAe,CAAC;IAE3B,IAAI1C,gBAAgB,IAAI,OAAOS,MAAM,KAAK,WAAW,EAAE;MAAA,IAAAqC,sBAAA;MACrD,CAAAA,sBAAA,GAAArC,MAAM,CAACG,cAAc,cAAAkC,sBAAA,uBAArBA,sBAAA,CAAuBC,OAAO,CAC5B/C,gBAAgB,EAChBc,IAAI,CAACkC,SAAS,CAACN,OAAO,CACxB,CAAC;IACH;IAEAL,8BAA8B,CAACK,OAAO,CAAC;IAEvCtB,eAAe,CAACsB,OAAO,CAAC;IAExBjB,gBAAgB,CAAC,KAAK,CAAC;EACzB,CAAC,EACD,CAACN,YAAY,EAAExB,QAAQ,EAAEC,YAAY,EAAEyC,8BAA8B,CACvE,CAAC;EAGD,MAAMY,gBAAgB,GAAG,IAAArB,kBAAW,EAAE5C,IAAY,IAAK;IACrDsC,oBAAoB,CAACQ,OAAO,GAAGhD,WAAW,CACxCwC,oBAAoB,CAACQ,OAAO,EAC5B9C,IACF,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMkE,kBAAkB,GAAG,IAAAtB,kBAAW,EAAE5C,IAAY,IAAK;IACvDsC,oBAAoB,CAACQ,OAAO,GAAG3C,cAAc,CAC3CmC,oBAAoB,CAACQ,OAAO,EAC5B9C,IACF,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAKN,MAAMmE,YAAY,GAAG,IAAAvB,kBAAW,EAC9B,YAAiC;IAAA,IAAhC;MAAEwB,WAAW,GAAG;IAAK,CAAC,GAAApG,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAmB,SAAA,GAAAnB,SAAA,MAAG,CAAC,CAAC;IAC1B,IAAI,CAAC2E,SAAS,CAAC,CAAC,EAAE;MAAA,IAAA0B,kBAAA;MAChBxD,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAGsB,YAAoB,CAAC;MAEhCiC,WAAW,aAAXA,WAAW,wBAAAC,kBAAA,GAAXD,WAAW,CAAEE,KAAK,cAAAD,kBAAA,uBAAlBA,kBAAA,CAAAtH,IAAA,CAAAqH,WAAqB,CAAC;MAEtB,IAAI,OAAO3C,MAAM,KAAK,WAAW,EAAE;QACjC,IAAIT,gBAAgB,EAAE;UACpBS,MAAM,CAACG,cAAc,CAAC2C,UAAU,CAACvD,gBAAgB,CAAC;QACpD;QAEA,IAAID,iBAAiB,EAAE;UAAA,IAAAyD,OAAA;UACrB,CAAAA,OAAA,GAAA/C,MAAM,cAAA+C,OAAA,uBAANA,OAAA,CAAQC,QAAQ,CAAC;YAAEC,GAAG,EAAE,CAAC;YAAEC,QAAQ,EAAE;UAAS,CAAC,CAAC;QAClD;MACF;IACF,CAAC,MAAM;MACLlC,gBAAgB,CAAC,IAAI,CAAC;MACtB3B,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAG,CAAC;IACrB;IACA,OAAOqB,YAAY;EACrB,CAAC,EACD,CAACA,YAAY,EAAEpB,iBAAiB,EAAE4B,SAAS,EAAE9B,QAAQ,EAAEC,eAAe,CACxE,CAAC;EAED,IAAAmC,gBAAS,EAAC,MAAM;IAEd,IAAI1B,WAAW,EAAE;MAEf8B,8BAA8B,CAAC9B,WAAW,CAAC;IAC7C;EAEF,CAAC,EAAE,EAAE,CAAC;EAEN,OACEpG,MAAA,CAAAW,OAAA,CAAA8I,aAAA,CAACnJ,QAAA,CAAAK,OAAO,CAACwE,QAAQ;IACf/B,KAAK,EAAAV,aAAA,CAAAA,aAAA;MACH4C,IAAI,EAAE0B;IAAY,GACfjB,IAAI;MACPuC,gBAAgB;MAChBU,YAAY;MACZhB,MAAM,EAAEZ,SAAS,CAACO,OAAO;MACzBN,aAAa;MACbC,gBAAgB;MAChBoC,iBAAiB,EAAEvC,oBAAoB,CAACQ,OAAO;MAC/CmB,gBAAgB;MAChBC,kBAAkB;MAClBvB,SAAS;MACTY;IAAgB;EAChB,GAEDtC,QACe,CAAC;AAEvB"}
|
|
1
|
+
{"version":3,"file":"Provider.js","names":["_react","_interopRequireWildcard","require","_jsonPointer","_interopRequireDefault","_ajv","_useMountEffect","_useUpdateEffect","_Context","_structuredClone","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","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","addListPath","paths","path","includes","concat","removeListPath","thisPath","isArrayJsonPointer","Provider","_ref","defaultData","data","schema","onChange","onPathChange","onSubmit","onSubmitRequest","scrollTopOnSubmit","sessionStorageId","children","rest","forceUpdate","useReducer","console","error","mountedFieldPathsRef","useRef","errorsRef","showAllErrorsRef","setShowAllErrors","useCallback","showAllErrors","current","pathsWithErrorRef","initialData","useMemo","window","_window$sessionStorag","sessionDataJSON","sessionStorage","getItem","JSON","parse","internalDataRef","ajvSchemaValidatorRef","validateData","errors","ajvErrorsToFormErrors","useEffect","ajv","compile","hasErrors","Boolean","find","mountedFieldPath","_errorsRef$current","setPathWithError","hasError","handlePathChange","_internalDataRef$curr","newData","structuredClone","match","pointer","_window$sessionStorag2","setItem","stringify","handleMountField","handleUnMountField","handleSubmit","formElement","_formElement$reset","reset","removeItem","_window","scrollTo","top","behavior","useMountEffect","useUpdateEffect","createElement","mountedFieldPaths"],"sources":["../../../../../../src/extensions/forms/DataContext/Provider/Provider.tsx"],"sourcesContent":["import React, {\n useEffect,\n useRef,\n useMemo,\n useCallback,\n useReducer,\n} from 'react'\nimport pointer, { JsonObject } from 'json-pointer'\nimport { JSONSchema7 } from 'json-schema'\nimport { ValidateFunction } from 'ajv'\nimport ajv, { ajvErrorsToFormErrors } from '../../utils/ajv'\nimport { FormError } from '../../types'\nimport useMountEffect from '../../hooks/useMountEffect'\nimport useUpdateEffect from '../../hooks/useUpdateEffect'\nimport Context, { ContextState } from '../Context'\n\n/**\n * Deprecated, as it is supported by all major browsers and Node.js >=v18\n * So its a question of time, when we will remove this polyfill\n */\nimport structuredClone from '@ungap/structured-clone'\n\nexport interface Props<Data extends JsonObject> {\n /** Default source data, only used if no other source is available, and not leading to updates if changed after mount */\n defaultData?: Partial<Data>\n /** Dynamic source data used as both initial data, and updates internal data if changed after mount */\n data?: Partial<Data>\n /** JSON Schema for validating the data, like during input or after attempting submit */\n schema?: JSONSchema7\n /** Change handler for the whole data set */\n onChange?: (data: Data) => void\n /** Change handler for each value */\n onPathChange?: (path: string, value: any) => void\n /** Submit called, data was valid (if validation available) */\n onSubmit?: (data: Data) => void\n /** Submit was requested, but data was invalid */\n onSubmitRequest?: () => void\n scrollTopOnSubmit?: boolean\n /** Key for caching the data in session storage */\n sessionStorageId?: string\n children: React.ReactNode\n}\n\ntype PathList = string[]\n\nfunction addListPath(paths: PathList, path: string): PathList {\n return paths.includes(path) ? paths : paths.concat(path)\n}\n\nfunction removeListPath(paths: PathList, path: string): PathList {\n return paths.filter((thisPath) => thisPath !== path)\n}\n\nconst isArrayJsonPointer = /^\\/\\d+(\\/|$)/\n\nexport default function Provider<Data extends JsonObject>({\n defaultData,\n data,\n schema,\n onChange,\n onPathChange,\n onSubmit,\n onSubmitRequest,\n scrollTopOnSubmit,\n sessionStorageId,\n children,\n ...rest\n}: Props<Data>) {\n const [, forceUpdate] = useReducer(() => ({}), {})\n // Prop error handling\n if (data !== undefined && sessionStorageId !== undefined) {\n console.error(\n 'Providing both data and sessionStorageId could lead to competing data sources. To provide default data to use only before anything is changed in the interface, use defaultData.'\n )\n }\n\n // State\n const mountedFieldPathsRef = useRef<string[]>([])\n // - Errors from provider validation (the whole data set)\n const errorsRef = useRef<Record<string, FormError> | undefined>()\n const showAllErrorsRef = useRef<boolean>(false)\n const setShowAllErrors = useCallback((showAllErrors: boolean) => {\n showAllErrorsRef.current = showAllErrors\n }, [])\n // - Errors reported by fields, based on their direct validation rules\n const pathsWithErrorRef = useRef<string[]>([])\n // - Data\n const initialData = useMemo(() => {\n if (sessionStorageId && typeof window !== 'undefined') {\n const sessionDataJSON =\n window.sessionStorage?.getItem(sessionStorageId)\n if (sessionDataJSON) {\n return JSON.parse(sessionDataJSON)\n }\n }\n return data ?? defaultData\n // eslint-disable-next-line react-hooks/exhaustive-deps -- Avoid triggering code that should only run initially\n }, [])\n const internalDataRef = useRef<Partial<Data>>(initialData)\n // - Validator\n const ajvSchemaValidatorRef = useRef<ValidateFunction>()\n\n const validateData = useCallback(() => {\n if (!ajvSchemaValidatorRef.current) {\n // No schema-based validator. Assume data is valid.\n return\n }\n\n if (!ajvSchemaValidatorRef.current(internalDataRef.current)) {\n // Errors found\n const errors = ajvErrorsToFormErrors(\n ajvSchemaValidatorRef.current.errors\n )\n errorsRef.current = errors\n } else {\n errorsRef.current = undefined\n }\n forceUpdate()\n }, [])\n\n useEffect(() => {\n if (!schema) {\n return\n }\n ajvSchemaValidatorRef.current = ajv.compile(schema)\n validateData()\n }, [schema, validateData])\n\n // Error handling\n const hasErrors = useCallback(\n () =>\n Boolean(\n mountedFieldPathsRef.current.find(\n (mountedFieldPath) =>\n errorsRef.current?.[mountedFieldPath] !== undefined ||\n pathsWithErrorRef.current.includes(mountedFieldPath)\n )\n ),\n []\n )\n\n const setPathWithError = useCallback(\n (path: string, hasError: boolean) => {\n pathsWithErrorRef.current = hasError\n ? addListPath(pathsWithErrorRef.current, path)\n : removeListPath(pathsWithErrorRef.current, path)\n },\n []\n )\n\n const handlePathChange = useCallback(\n (path, value) => {\n if (!path) {\n return\n }\n onPathChange?.(path, value)\n\n // Update the data even if it contains errors. Submit/SubmitRequest will be called accordingly\n const newData = structuredClone(\n path === '/'\n ? // When setting the root of the data, the whole data set should be the new value\n value\n : // For sub paths, use the the existing data set (or empty array/object), but modify it below (since pointer.set is not immutable)\n internalDataRef.current ??\n (path.match(isArrayJsonPointer) ? [] : {})\n )\n if (path !== '/') {\n pointer.set(newData as Data, path, value)\n }\n\n onChange?.(newData as Data)\n\n if (sessionStorageId && typeof window !== 'undefined') {\n window.sessionStorage?.setItem(\n sessionStorageId,\n JSON.stringify(newData)\n )\n }\n\n internalDataRef.current = newData\n\n validateData()\n showAllErrorsRef.current = false\n forceUpdate()\n },\n [onChange, onPathChange, validateData, sessionStorageId]\n )\n\n // Mounted fields\n const handleMountField = useCallback((path: string) => {\n mountedFieldPathsRef.current = addListPath(\n mountedFieldPathsRef.current,\n path\n )\n }, [])\n\n const handleUnMountField = useCallback((path: string) => {\n mountedFieldPathsRef.current = removeListPath(\n mountedFieldPathsRef.current,\n path\n )\n }, [])\n\n /**\n * Request to submit the whole form\n */\n const handleSubmit = useCallback<ContextState['handleSubmit']>(\n ({ formElement = null } = {}) => {\n if (!hasErrors()) {\n onSubmit?.(internalDataRef.current as Data)\n\n formElement?.reset?.()\n\n if (typeof window !== 'undefined') {\n if (sessionStorageId) {\n window.sessionStorage.removeItem(sessionStorageId)\n }\n\n if (scrollTopOnSubmit) {\n window?.scrollTo({ top: 0, behavior: 'smooth' })\n }\n }\n } else {\n showAllErrorsRef.current = true\n onSubmitRequest?.()\n }\n return internalDataRef.current\n },\n [\n scrollTopOnSubmit,\n hasErrors,\n onSubmit,\n onSubmitRequest,\n sessionStorageId,\n ]\n )\n\n useMountEffect(() => {\n // Validate the initial data\n validateData()\n })\n\n useUpdateEffect(() => {\n // Update and validate changes to the external data set\n internalDataRef.current = data\n validateData()\n forceUpdate()\n }, [data, validateData, forceUpdate])\n\n return (\n <Context.Provider\n value={{\n data: internalDataRef.current,\n ...rest,\n handlePathChange,\n handleSubmit,\n errors: errorsRef.current,\n showAllErrors: showAllErrorsRef.current,\n setShowAllErrors,\n mountedFieldPaths: mountedFieldPathsRef.current,\n handleMountField,\n handleUnMountField,\n hasErrors,\n setPathWithError,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n"],"mappings":"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"}
|
|
@@ -19,19 +19,22 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
|
|
|
19
19
|
function BankAccountNumber(props) {
|
|
20
20
|
var _props$pattern, _props$label, _props$width;
|
|
21
21
|
const sharedContext = (0, _react.useContext)(_Context.default);
|
|
22
|
+
const tr = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
|
|
22
23
|
const {
|
|
23
24
|
validate = true,
|
|
24
25
|
omitMask
|
|
25
26
|
} = props;
|
|
27
|
+
const errorMessages = (0, _react.useMemo)(() => _objectSpread({
|
|
28
|
+
required: tr.bankAccountNumberErrorRequired,
|
|
29
|
+
pattern: tr.bankAccountNumberErrorPattern
|
|
30
|
+
}, props.errorMessages), [tr, props.errorMessages]);
|
|
31
|
+
const mask = (0, _react.useMemo)(() => omitMask ? [/\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/] : [/\d/, /\d/, /\d/, /\d/, ' ', /\d/, /\d/, ' ', /\d/, /\d/, /\d/, /\d/, /\d/], [omitMask]);
|
|
26
32
|
const stringComponentProps = _objectSpread(_objectSpread({}, props), {}, {
|
|
27
33
|
className: 'dnb-forms-field-bank-account-number',
|
|
28
34
|
pattern: (_props$pattern = props.pattern) !== null && _props$pattern !== void 0 ? _props$pattern : validate ? '^[0-9]{11}$' : undefined,
|
|
29
35
|
label: (_props$label = props.label) !== null && _props$label !== void 0 ? _props$label : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.bankAccountNumberLabel,
|
|
30
|
-
errorMessages
|
|
31
|
-
|
|
32
|
-
pattern: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.bankAccountNumberErrorPattern
|
|
33
|
-
}, props.errorMessages),
|
|
34
|
-
mask: omitMask ? [/\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/, /\d/] : [/\d/, /\d/, /\d/, /\d/, ' ', /\d/, /\d/, ' ', /\d/, /\d/, /\d/, /\d/, /\d/],
|
|
36
|
+
errorMessages,
|
|
37
|
+
mask,
|
|
35
38
|
width: (_props$width = props.width) !== null && _props$width !== void 0 ? _props$width : 'medium'
|
|
36
39
|
});
|
|
37
40
|
return _react.default.createElement(_String.default, stringComponentProps);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BankAccountNumber.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","BankAccountNumber","props","_props$pattern","_props$label","_props$width","sharedContext","useContext","SharedContext","
|
|
1
|
+
{"version":3,"file":"BankAccountNumber.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","BankAccountNumber","props","_props$pattern","_props$label","_props$width","sharedContext","useContext","SharedContext","tr","translation","Forms","validate","omitMask","errorMessages","useMemo","required","bankAccountNumberErrorRequired","pattern","bankAccountNumberErrorPattern","mask","stringComponentProps","className","label","bankAccountNumberLabel","width","createElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/BankAccountNumber/BankAccountNumber.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport StringComponent, { Props as StringComponentProps } from '../String'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = StringComponentProps & {\n validate?: boolean\n omitMask?: boolean\n}\n\nfunction BankAccountNumber(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n const { validate = true, omitMask } = props\n\n const errorMessages = useMemo(\n () => ({\n required: tr.bankAccountNumberErrorRequired,\n pattern: tr.bankAccountNumberErrorPattern,\n ...props.errorMessages,\n }),\n [tr, props.errorMessages]\n )\n const mask = useMemo(\n () =>\n omitMask\n ? [\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ]\n : [\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n ' ',\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n /\\d/,\n ],\n [omitMask]\n )\n\n const stringComponentProps: Props = {\n ...props,\n className: 'dnb-forms-field-bank-account-number',\n pattern: props.pattern ?? (validate ? '^[0-9]{11}$' : undefined),\n label:\n props.label ??\n sharedContext?.translation.Forms.bankAccountNumberLabel,\n errorMessages,\n mask,\n width: props.width ?? 'medium',\n }\n\n return <StringComponent {...stringComponentProps} />\n}\n\nBankAccountNumber._supportsSpacingProps = true\nexport default BankAccountNumber\n"],"mappings":"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"}
|
|
@@ -19,14 +19,16 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
|
|
|
19
19
|
function Email(props) {
|
|
20
20
|
var _props$type, _props$pattern, _props$label;
|
|
21
21
|
const sharedContext = (0, _react.useContext)(_Context.default);
|
|
22
|
+
const tr = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms;
|
|
23
|
+
const errorMessages = (0, _react.useMemo)(() => _objectSpread({
|
|
24
|
+
required: tr.emailErrorRequired,
|
|
25
|
+
pattern: tr.emailErrorPattern
|
|
26
|
+
}, props.errorMessages), [tr, props.errorMessages]);
|
|
22
27
|
const stringComponentProps = _objectSpread(_objectSpread({}, props), {}, {
|
|
23
28
|
type: (_props$type = props.type) !== null && _props$type !== void 0 ? _props$type : 'email',
|
|
24
29
|
pattern: (_props$pattern = props.pattern) !== null && _props$pattern !== void 0 ? _props$pattern : "^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:.[a-zA-Z0-9-]+)*$",
|
|
25
30
|
label: (_props$label = props.label) !== null && _props$label !== void 0 ? _props$label : sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.emailLabel,
|
|
26
|
-
errorMessages
|
|
27
|
-
required: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.emailErrorRequired,
|
|
28
|
-
pattern: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.emailErrorPattern
|
|
29
|
-
}, props.errorMessages)
|
|
31
|
+
errorMessages
|
|
30
32
|
});
|
|
31
33
|
return _react.default.createElement(_String.default, stringComponentProps);
|
|
32
34
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Email.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Email","props","_props$type","_props$pattern","_props$label","sharedContext","useContext","SharedContext","
|
|
1
|
+
{"version":3,"file":"Email.js","names":["_react","_interopRequireWildcard","require","_String","_interopRequireDefault","_Context","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","Email","props","_props$type","_props$pattern","_props$label","sharedContext","useContext","SharedContext","tr","translation","Forms","errorMessages","useMemo","required","emailErrorRequired","pattern","emailErrorPattern","stringComponentProps","type","label","emailLabel","createElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Email/Email.tsx"],"sourcesContent":["import React, { useContext, useMemo } from 'react'\nimport StringComponent, { Props as StringComponentProps } from '../String'\nimport SharedContext from '../../../../shared/Context'\n\nexport type Props = StringComponentProps\n\nfunction Email(props: Props) {\n const sharedContext = useContext(SharedContext)\n const tr = sharedContext?.translation.Forms\n\n const errorMessages = useMemo(\n () => ({\n required: tr.emailErrorRequired,\n pattern: tr.emailErrorPattern,\n ...props.errorMessages,\n }),\n [tr, props.errorMessages]\n )\n\n const stringComponentProps: Props = {\n ...props,\n type: props.type ?? 'email',\n pattern:\n props.pattern ??\n \"^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:.[a-zA-Z0-9-]+)*$\",\n label: props.label ?? sharedContext?.translation.Forms.emailLabel,\n errorMessages,\n }\n\n return <StringComponent {...stringComponentProps} />\n}\n\nEmail._supportsSpacingProps = true\nexport default Email\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,QAAA,GAAAD,sBAAA,CAAAF,OAAA;AAAsD,SAAAE,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAT,wBAAAK,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAAA,SAAAW,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAZ,MAAA,CAAAY,IAAA,CAAAF,MAAA,OAAAV,MAAA,CAAAa,qBAAA,QAAAC,OAAA,GAAAd,MAAA,CAAAa,qBAAA,CAAAH,MAAA,GAAAC,cAAA,KAAAG,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAhB,MAAA,CAAAE,wBAAA,CAAAQ,MAAA,EAAAM,GAAA,EAAAC,UAAA,OAAAL,IAAA,CAAAM,IAAA,CAAAC,KAAA,CAAAP,IAAA,EAAAE,OAAA,YAAAF,IAAA;AAAA,SAAAQ,cAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAb,OAAA,CAAAT,MAAA,CAAAyB,MAAA,OAAAC,OAAA,WAAAvB,GAAA,IAAAwB,eAAA,CAAAN,MAAA,EAAAlB,GAAA,EAAAsB,MAAA,CAAAtB,GAAA,SAAAH,MAAA,CAAA4B,yBAAA,GAAA5B,MAAA,CAAA6B,gBAAA,CAAAR,MAAA,EAAArB,MAAA,CAAA4B,yBAAA,CAAAH,MAAA,KAAAhB,OAAA,CAAAT,MAAA,CAAAyB,MAAA,GAAAC,OAAA,WAAAvB,GAAA,IAAAH,MAAA,CAAAC,cAAA,CAAAoB,MAAA,EAAAlB,GAAA,EAAAH,MAAA,CAAAE,wBAAA,CAAAuB,MAAA,EAAAtB,GAAA,iBAAAkB,MAAA;AAAA,SAAAM,gBAAAxC,GAAA,EAAAgB,GAAA,EAAA2B,KAAA,IAAA3B,GAAA,GAAA4B,cAAA,CAAA5B,GAAA,OAAAA,GAAA,IAAAhB,GAAA,IAAAa,MAAA,CAAAC,cAAA,CAAAd,GAAA,EAAAgB,GAAA,IAAA2B,KAAA,EAAAA,KAAA,EAAAb,UAAA,QAAAe,YAAA,QAAAC,QAAA,oBAAA9C,GAAA,CAAAgB,GAAA,IAAA2B,KAAA,WAAA3C,GAAA;AAAA,SAAA4C,eAAAG,GAAA,QAAA/B,GAAA,GAAAgC,YAAA,CAAAD,GAAA,2BAAA/B,GAAA,gBAAAA,GAAA,GAAAiC,MAAA,CAAAjC,GAAA;AAAA,SAAAgC,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAjC,IAAA,CAAA+B,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAC,SAAA,4DAAAN,IAAA,gBAAAF,MAAA,GAAAS,MAAA,EAAAR,KAAA;AAItD,SAASS,KAAKA,CAACC,KAAY,EAAE;EAAA,IAAAC,WAAA,EAAAC,cAAA,EAAAC,YAAA;EAC3B,MAAMC,aAAa,GAAG,IAAAC,iBAAU,EAACC,gBAAa,CAAC;EAC/C,MAAMC,EAAE,GAAGH,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEI,WAAW,CAACC,KAAK;EAE3C,MAAMC,aAAa,GAAG,IAAAC,cAAO,EAC3B,MAAAtC,aAAA;IACEuC,QAAQ,EAAEL,EAAE,CAACM,kBAAkB;IAC/BC,OAAO,EAAEP,EAAE,CAACQ;EAAiB,GAC1Bf,KAAK,CAACU,aAAa,CACtB,EACF,CAACH,EAAE,EAAEP,KAAK,CAACU,aAAa,CAC1B,CAAC;EAED,MAAMM,oBAA2B,GAAA3C,aAAA,CAAAA,aAAA,KAC5B2B,KAAK;IACRiB,IAAI,GAAAhB,WAAA,GAAED,KAAK,CAACiB,IAAI,cAAAhB,WAAA,cAAAA,WAAA,GAAI,OAAO;IAC3Ba,OAAO,GAAAZ,cAAA,GACLF,KAAK,CAACc,OAAO,cAAAZ,cAAA,cAAAA,cAAA,GACb,qEAAqE;IACvEgB,KAAK,GAAAf,YAAA,GAAEH,KAAK,CAACkB,KAAK,cAAAf,YAAA,cAAAA,YAAA,GAAIC,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEI,WAAW,CAACC,KAAK,CAACU,UAAU;IACjET;EAAa,EACd;EAED,OAAO5E,MAAA,CAAAQ,OAAA,CAAA8E,aAAA,CAACnF,OAAA,CAAAK,OAAe,EAAK0E,oBAAuB,CAAC;AACtD;AAEAjB,KAAK,CAACsB,qBAAqB,GAAG,IAAI;AAAA,IAAAC,QAAA,GACnBvB,KAAK;AAAAwB,OAAA,CAAAjF,OAAA,GAAAgF,QAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { FieldHelpProps, FieldProps } from '../../types';
|
|
2
|
+
export type ExpiryProps = FieldProps<string> & FieldHelpProps;
|
|
3
|
+
declare function Expiry(props: ExpiryProps): import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
declare namespace Expiry {
|
|
5
|
+
var _supportsEufemiaSpacingProps: boolean;
|
|
6
|
+
}
|
|
7
|
+
export default Expiry;
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _componentHelper = require("../../../../shared/component-helper");
|
|
10
|
+
var _Context = _interopRequireDefault(require("../../../../shared/Context"));
|
|
11
|
+
var _utils = require("../../../../components/flex/utils");
|
|
12
|
+
var _hooks = require("../../hooks");
|
|
13
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
14
|
+
var _FieldBlock = _interopRequireDefault(require("../../FieldBlock"));
|
|
15
|
+
var _inputMasked = require("../../../../components/input-masked");
|
|
16
|
+
var _components = require("../../../../components");
|
|
17
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
18
|
+
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); }
|
|
19
|
+
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; }
|
|
20
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
21
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
22
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
23
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
24
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
25
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
26
|
+
function Expiry(props) {
|
|
27
|
+
var _value$substring, _value$substring2;
|
|
28
|
+
const sharedContext = (0, _react.useContext)(_Context.default);
|
|
29
|
+
const placeholders = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.DatePicker.placeholder_characters;
|
|
30
|
+
const {
|
|
31
|
+
id: propsId,
|
|
32
|
+
className,
|
|
33
|
+
label = sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.Forms.expiryLabel,
|
|
34
|
+
error,
|
|
35
|
+
info,
|
|
36
|
+
warning,
|
|
37
|
+
help,
|
|
38
|
+
disabled,
|
|
39
|
+
value = '',
|
|
40
|
+
labelDescription,
|
|
41
|
+
labelSecondary,
|
|
42
|
+
layout = 'vertical',
|
|
43
|
+
required,
|
|
44
|
+
handleFocus,
|
|
45
|
+
handleBlur,
|
|
46
|
+
handleChange
|
|
47
|
+
} = (0, _hooks.useDataValue)(_objectSpread(_objectSpread({}, props), {}, {
|
|
48
|
+
emptyValue: ''
|
|
49
|
+
}));
|
|
50
|
+
const expiry = {
|
|
51
|
+
month: (_value$substring = value.substring(0, 2)) !== null && _value$substring !== void 0 ? _value$substring : '',
|
|
52
|
+
year: (_value$substring2 = value.substring(2, 4)) !== null && _value$substring2 !== void 0 ? _value$substring2 : ''
|
|
53
|
+
};
|
|
54
|
+
const idRef = (0, _react.useRef)(propsId || (0, _componentHelper.makeUniqueId)()).current;
|
|
55
|
+
const status = error ? 'error' : warning ? 'warn' : info ? 'info' : null;
|
|
56
|
+
return _react.default.createElement(_FieldBlock.default, _extends({
|
|
57
|
+
className: (0, _classnames.default)(className),
|
|
58
|
+
labelSecondary: labelSecondary,
|
|
59
|
+
labelDescription: labelDescription,
|
|
60
|
+
info: info,
|
|
61
|
+
warning: warning,
|
|
62
|
+
error: error
|
|
63
|
+
}, (0, _utils.pickSpacingProps)(props)), _react.default.createElement(_inputMasked.MultiInputMask, {
|
|
64
|
+
id: `${idRef}__input`,
|
|
65
|
+
className: "dnb-forms-field-expiry",
|
|
66
|
+
label: label,
|
|
67
|
+
labelDirection: layout,
|
|
68
|
+
values: expiry,
|
|
69
|
+
status: status,
|
|
70
|
+
statusState: disabled ? 'disabled' : undefined,
|
|
71
|
+
disabled: disabled,
|
|
72
|
+
required: required,
|
|
73
|
+
onChange: expiry => handleChange(expiryToString(expiry)),
|
|
74
|
+
onBlur: handleBlur,
|
|
75
|
+
onFocus: handleFocus,
|
|
76
|
+
delimiter: "/",
|
|
77
|
+
inputs: [{
|
|
78
|
+
id: 'month',
|
|
79
|
+
label: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.DatePicker['month'],
|
|
80
|
+
mask: [/[0-1]/, expiry.month.charAt(0) === '0' || expiry.month.charAt(0) === '' ? /[1-9]/ : /[0-2]/],
|
|
81
|
+
placeholderCharacter: placeholders['month']
|
|
82
|
+
}, {
|
|
83
|
+
id: 'year',
|
|
84
|
+
label: sharedContext === null || sharedContext === void 0 ? void 0 : sharedContext.translation.DatePicker['year'],
|
|
85
|
+
mask: [/[0-9]/, /[0-9]/],
|
|
86
|
+
placeholderCharacter: placeholders['year']
|
|
87
|
+
}],
|
|
88
|
+
suffix: help ? _react.default.createElement(_components.HelpButton, {
|
|
89
|
+
title: help.title
|
|
90
|
+
}, help.contents) : undefined
|
|
91
|
+
}));
|
|
92
|
+
function expiryToString(values) {
|
|
93
|
+
return Object.values(values).join('');
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
Expiry._supportsEufemiaSpacingProps = true;
|
|
97
|
+
var _default = Expiry;
|
|
98
|
+
exports.default = _default;
|
|
99
|
+
//# sourceMappingURL=Expiry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Expiry.js","names":["_react","_interopRequireWildcard","require","_componentHelper","_Context","_interopRequireDefault","_utils","_hooks","_classnames","_FieldBlock","_inputMasked","_components","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","Expiry","props","_value$substring","_value$substring2","sharedContext","useContext","SharedContext","placeholders","translation","DatePicker","placeholder_characters","id","propsId","className","label","Forms","expiryLabel","error","info","warning","help","disabled","labelDescription","labelSecondary","layout","required","handleFocus","handleBlur","handleChange","useDataValue","emptyValue","expiry","month","substring","year","idRef","useRef","makeUniqueId","current","status","createElement","classnames","pickSpacingProps","MultiInputMask","labelDirection","values","statusState","onChange","expiryToString","onBlur","onFocus","delimiter","inputs","mask","charAt","placeholderCharacter","suffix","HelpButton","title","contents","join","_supportsEufemiaSpacingProps","_default","exports"],"sources":["../../../../../../src/extensions/forms/Field/Expiry/Expiry.tsx"],"sourcesContent":["import React, { useContext, useRef } from 'react'\nimport { makeUniqueId } from '../../../../shared/component-helper'\nimport SharedContext from '../../../../shared/Context'\nimport { FieldHelpProps, FieldProps } from '../../types'\nimport { pickSpacingProps } from '../../../../components/flex/utils'\nimport { useDataValue } from '../../hooks'\nimport classnames from 'classnames'\nimport FieldBlock from '../../FieldBlock'\nimport { MultiInputMask } from '../../../../components/input-masked'\nimport type { MultiInputMaskValue } from '../../../../components/input-masked'\nimport { HelpButton } from '../../../../components'\n\ntype ExpiryValue = MultiInputMaskValue<'month' | 'year'>\n\nexport type ExpiryProps = FieldProps<string> & FieldHelpProps\n\nfunction Expiry(props: ExpiryProps) {\n const sharedContext = useContext(SharedContext)\n const placeholders =\n sharedContext?.translation.DatePicker.placeholder_characters\n\n const {\n id: propsId,\n className,\n label = sharedContext?.translation.Forms.expiryLabel,\n error,\n info,\n warning,\n help,\n disabled,\n value = '',\n labelDescription,\n labelSecondary,\n layout = 'vertical',\n required,\n handleFocus,\n handleBlur,\n handleChange,\n } = useDataValue({\n ...props,\n emptyValue: '',\n })\n\n const expiry: ExpiryValue = {\n month: value.substring(0, 2) ?? '',\n year: value.substring(2, 4) ?? '',\n }\n\n const idRef = useRef(propsId || makeUniqueId()).current\n\n const status = error ? 'error' : warning ? 'warn' : info ? 'info' : null\n\n return (\n <FieldBlock\n className={classnames(className)}\n labelSecondary={labelSecondary}\n labelDescription={labelDescription}\n info={info}\n warning={warning}\n error={error}\n {...pickSpacingProps(props)}\n >\n <MultiInputMask\n id={`${idRef}__input`}\n className=\"dnb-forms-field-expiry\"\n label={label}\n labelDirection={layout}\n values={expiry}\n status={status}\n statusState={disabled ? 'disabled' : undefined}\n disabled={disabled}\n required={required}\n onChange={(expiry) => handleChange(expiryToString(expiry))}\n onBlur={handleBlur}\n onFocus={handleFocus}\n delimiter=\"/\"\n inputs={[\n {\n id: 'month',\n label: sharedContext?.translation.DatePicker['month'],\n mask: [\n /[0-1]/,\n expiry.month.charAt(0) === '0' ||\n expiry.month.charAt(0) === ''\n ? /[1-9]/\n : /[0-2]/,\n ],\n placeholderCharacter: placeholders['month'],\n },\n {\n id: 'year',\n label: sharedContext?.translation.DatePicker['year'],\n mask: [/[0-9]/, /[0-9]/],\n placeholderCharacter: placeholders['year'],\n },\n ]}\n suffix={\n help ? (\n <HelpButton title={help.title}>{help.contents}</HelpButton>\n ) : undefined\n }\n />\n </FieldBlock>\n )\n\n function expiryToString(values: ExpiryValue) {\n return Object.values(values).join('')\n }\n}\n\nExpiry._supportsEufemiaSpacingProps = true\nexport default Expiry\n"],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _exportNames = {};
|
|
7
|
+
Object.defineProperty(exports, "default", {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: function () {
|
|
10
|
+
return _Expiry.default;
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
var _Expiry = _interopRequireWildcard(require("./Expiry"));
|
|
14
|
+
Object.keys(_Expiry).forEach(function (key) {
|
|
15
|
+
if (key === "default" || key === "__esModule") return;
|
|
16
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
17
|
+
if (key in exports && exports[key] === _Expiry[key]) return;
|
|
18
|
+
Object.defineProperty(exports, key, {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _Expiry[key];
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
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); }
|
|
26
|
+
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; }
|
|
27
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["_Expiry","_interopRequireWildcard","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set"],"sources":["../../../../../../src/extensions/forms/Field/Expiry/index.ts"],"sourcesContent":["export { default } from './Expiry'\nexport * from './Expiry'\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,uBAAA,CAAAC,OAAA;AACAC,MAAA,CAAAC,IAAA,CAAAJ,OAAA,EAAAK,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAN,OAAA,CAAAM,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAd,OAAA,CAAAM,GAAA;IAAA;EAAA;AAAA;AAAwB,SAAAS,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAf,wBAAAmB,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAT,GAAA,CAAAM,GAAA,SAAAK,MAAA,WAAAC,qBAAA,GAAAvB,MAAA,CAAAS,cAAA,IAAAT,MAAA,CAAAwB,wBAAA,WAAArB,GAAA,IAAAc,GAAA,QAAAd,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAW,GAAA,EAAAd,GAAA,SAAAsB,IAAA,GAAAF,qBAAA,GAAAvB,MAAA,CAAAwB,wBAAA,CAAAP,GAAA,EAAAd,GAAA,cAAAsB,IAAA,KAAAA,IAAA,CAAAd,GAAA,IAAAc,IAAA,CAAAC,GAAA,KAAA1B,MAAA,CAAAS,cAAA,CAAAa,MAAA,EAAAnB,GAAA,EAAAsB,IAAA,YAAAH,MAAA,CAAAnB,GAAA,IAAAc,GAAA,CAAAd,GAAA,SAAAmB,MAAA,CAAAH,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAM,GAAA,CAAAT,GAAA,EAAAK,MAAA,YAAAA,MAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--forms-field-width--small: 5rem;
|
|
3
|
+
--forms-field-width--medium: 11rem;
|
|
4
|
+
--forms-field-width--large: 21rem;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.dnb-forms-field-expiry {
|
|
8
|
+
width: var(--forms-field-width--small);
|
|
9
|
+
}
|
|
10
|
+
.dnb-forms-field-expiry .dnb-input__shell {
|
|
11
|
+
justify-content: center;
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{--forms-field-width--small:5rem;--forms-field-width--medium:11rem;--forms-field-width--large:21rem}.dnb-forms-field-expiry{width:var(--forms-field-width--small)}.dnb-forms-field-expiry .dnb-input__shell{justify-content:center}
|