@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Container.js","names":["React","classnames","Space","Hr","useMedia","getSpaceValue","isHeadingElement","renderWithSpacing","propNames","pickFlexContainerProps","props","defaults","arguments","length","undefined","skip","_objectSpread","Object","fromEntries","entries","filter","_ref","key","includes","FlexContainer","className","style","children","element","direction","wrap","sizeCount","rowGap","justify","align","alignSelf","divider","spacing","breakpoints","queries","rest","_objectWithoutProperties","_excluded","childrenArray","Children","toArray","hasHeading","some","child","i","previousChild","hasSizeProp","_child$props","size","mediaKey","disabled","content","map","isFirst","start","end","endSpacing","startSpacing","_getSpaceValue","_getSpaceValue2","spaceAboveLine","createElement","Fragment","top","_Hr","space","_ref2","_getSpaceValue3","n","cn","_extends","_supportsSpacingProps"],"sources":["../../../../src/components/flex/Container.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport Space from '../space/Space'\nimport { Hr } from '../../elements'\nimport useMedia from '../../shared/useMedia'\nimport {\n getSpaceValue,\n isHeadingElement,\n renderWithSpacing,\n} from './utils'\n\nimport type { MediaQueryBreakpoints } from '../../shared/MediaQueryUtils'\nimport type { DynamicElement } from '../../shared/types'\nimport type { SpaceType, SpacingProps } from '../space/types'\nimport type { UseMediaQueries } from '../../shared/useMedia'\nimport type { End, Start } from './types'\n\nexport type BasicProps = {\n direction?: 'horizontal' | 'vertical'\n wrap?: boolean\n rowGap?: 'small' | 'medium' | 'large' | true\n sizeCount?: number\n justify?:\n | 'flex-start'\n | 'flex-end'\n | 'center'\n | 'space-between'\n | 'space-around'\n | 'space-evenly'\n align?: 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'\n // For when used as a flex item in an outer container in addition to being a container:\n alignSelf?: 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch'\n divider?: 'space' | 'line'\n /** Spacing between items inside */\n spacing?:\n | false\n | 'xx-small'\n | 'x-small'\n | 'small'\n | 'medium'\n | 'large'\n | 'x-large'\n | 'xx-large'\n element?: DynamicElement\n breakpoints?: MediaQueryBreakpoints\n queries?: UseMediaQueries\n}\n\nexport type Props = BasicProps &\n SpacingProps &\n Omit<React.HTMLProps<HTMLElement>, 'ref' | 'wrap'>\n\nconst propNames: Array<keyof Props> = [\n 'direction',\n 'wrap',\n 'justify',\n 'align',\n 'divider',\n 'spacing',\n]\n\nexport function pickFlexContainerProps<T extends Props>(\n props: T,\n defaults: Partial<Props> = {},\n skip: Array<keyof Props> = []\n): Omit<Props, 'children'> {\n return {\n ...defaults,\n ...Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) =>\n propNames.includes(key as keyof Props) &&\n !skip.includes(key as keyof Props)\n )\n ),\n }\n}\n\nfunction FlexContainer(props: Props) {\n const {\n className,\n style,\n children,\n element = 'div',\n direction = 'horizontal',\n wrap = true,\n sizeCount = 12,\n rowGap,\n justify = 'flex-start',\n align = 'flex-start',\n alignSelf,\n divider = 'space',\n spacing = 'small',\n breakpoints,\n queries,\n ...rest\n } = props\n\n const childrenArray = React.Children.toArray(children)\n const hasHeading = childrenArray.some((child, i) => {\n const previousChild = childrenArray?.[i - 1]\n return (\n isHeadingElement(child) || (i > 0 && isHeadingElement(previousChild))\n )\n })\n const hasSizeProp =\n !hasHeading &&\n direction === 'horizontal' &&\n childrenArray.some((child) => child['props']?.size)\n\n const { key: mediaKey } = useMedia({\n disabled: !hasSizeProp,\n breakpoints,\n queries,\n })\n\n const content = childrenArray.map((child, i) => {\n // Set spacing on child components by props (instead of CSS) to be able to dynamically override by props on each child. The default\n // is the spacing-props that controls space between children. Then override with props sent to the children, including both top\n // and bottom when th\n const isFirst = i === 0\n const previousChild = childrenArray?.[i - 1]\n\n // Always set spacing between elements in the vertical layout on the top props, and 0 on bottom, to avoid\n // having to divide spacing between both with smaller values.\n const start: Start = direction === 'horizontal' ? 'left' : 'top'\n const end: End = direction === 'horizontal' ? 'right' : 'bottom'\n // const start: Start | End = direction === 'horizontal' ? 'right' : 'top'\n // const end: Start | End = direction === 'horizontal' ? 'left' : 'bottom'\n const endSpacing = 0\n let startSpacing = null\n\n if (\n divider === 'line' &&\n // No line above first element\n !isFirst &&\n // No line above/below headings\n !hasHeading\n ) {\n const spaceAboveLine = getSpaceValue(end, previousChild) ?? spacing\n startSpacing = (getSpaceValue(start, child) ?? spacing) as SpaceType\n\n return (\n <React.Fragment key={`element-${i}`}>\n <Space top={spaceAboveLine} />\n <Hr space={0} />\n {renderWithSpacing(child, {\n space: { [start]: startSpacing, [end]: endSpacing },\n })}\n </React.Fragment>\n )\n }\n\n // No space above first element.\n if (isFirst && direction !== 'horizontal') {\n startSpacing = 0\n } else {\n // Since top space of current and bottom space of previous component is the same\n startSpacing =\n getSpaceValue(start, child) ??\n getSpaceValue(end, previousChild) ??\n spacing\n }\n\n const space =\n direction === 'horizontal'\n ? { [start]: endSpacing, [end]: startSpacing }\n : { [start]: startSpacing, [end]: endSpacing }\n\n return renderWithSpacing(child, {\n key: `element-${i}`,\n space,\n })\n })\n\n const n = 'dnb-flex-container'\n const cn = classnames(\n 'dnb-flex-container',\n direction && `${n}--direction-${direction}`,\n justify && `${n}--justify-${justify}`,\n align && `${n}--align-${align}`,\n alignSelf && `${n}--align-self-${alignSelf}`,\n spacing && `${n}--spacing-${spacing}`,\n wrap && `${n}--wrap`,\n rowGap && `${n}--row-gap-${rowGap === true ? 'small' : rowGap}`,\n hasSizeProp && `${n}--has-size`,\n divider && `${n}--divider-${divider}`,\n className\n )\n\n return (\n <Space\n element={element}\n className={cn}\n data-media-key={mediaKey}\n style={\n hasSizeProp\n ? ({ '--sizeCount': sizeCount, ...style } as React.CSSProperties)\n : style\n }\n {...rest}\n >\n {content}\n </Space>\n )\n}\n\nFlexContainer._supportsSpacingProps = true\n\nexport default FlexContainer\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Container.js","names":["React","classnames","Space","Hr","useMedia","getSpaceValue","isHeadingElement","renderWithSpacing","propNames","pickFlexContainerProps","props","defaults","arguments","length","undefined","skip","_objectSpread","Object","fromEntries","entries","filter","_ref","key","includes","FlexContainer","className","style","children","element","direction","wrap","sizeCount","rowGap","justify","align","alignSelf","divider","spacing","breakpoints","queries","rest","_objectWithoutProperties","_excluded","childrenArray","Children","toArray","hasHeading","some","child","i","previousChild","hasSizeProp","_child$props","size","mediaKey","disabled","content","map","isFirst","start","end","endSpacing","startSpacing","_getSpaceValue","_getSpaceValue2","spaceAboveLine","createElement","Fragment","top","_Hr","space","_ref2","_getSpaceValue3","n","cn","_extends","_supportsSpacingProps"],"sources":["../../../../src/components/flex/Container.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport Space from '../space/Space'\nimport { Hr } from '../../elements'\nimport useMedia from '../../shared/useMedia'\nimport {\n getSpaceValue,\n isHeadingElement,\n renderWithSpacing,\n} from './utils'\n\nimport type { MediaQueryBreakpoints } from '../../shared/MediaQueryUtils'\nimport type { DynamicElement } from '../../shared/types'\nimport type { SpaceType, SpacingProps } from '../space/types'\nimport type { UseMediaQueries } from '../../shared/useMedia'\nimport type { End, Start } from './types'\n\nexport type BasicProps = {\n direction?: 'horizontal' | 'vertical'\n wrap?: boolean\n rowGap?: 'small' | 'medium' | 'large' | true\n sizeCount?: number\n justify?:\n | 'flex-start'\n | 'flex-end'\n | 'center'\n | 'space-between'\n | 'space-around'\n | 'space-evenly'\n align?: 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'\n // For when used as a flex item in an outer container in addition to being a container:\n alignSelf?: 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch'\n divider?: 'space' | 'line'\n /** Spacing between items inside */\n spacing?:\n | false\n | 'xx-small'\n | 'x-small'\n | 'small'\n | 'medium'\n | 'large'\n | 'x-large'\n | 'xx-large'\n element?: DynamicElement\n breakpoints?: MediaQueryBreakpoints\n queries?: UseMediaQueries\n}\n\nexport type Props = BasicProps &\n SpacingProps &\n Omit<React.HTMLProps<HTMLElement>, 'ref' | 'wrap'>\n\nconst propNames: Array<keyof Props> = [\n 'direction',\n 'wrap',\n 'justify',\n 'align',\n 'divider',\n 'spacing',\n]\n\nexport function pickFlexContainerProps<T extends Props>(\n props: T,\n defaults: Partial<Props> = {},\n skip: Array<keyof Props> = []\n): Omit<Props, 'children'> {\n return {\n ...defaults,\n ...Object.fromEntries(\n Object.entries(props ?? {}).filter(\n ([key]) =>\n propNames.includes(key as keyof Props) &&\n !skip.includes(key as keyof Props)\n )\n ),\n }\n}\n\nfunction FlexContainer(props: Props) {\n const {\n className,\n style,\n children,\n element = 'div',\n direction = 'horizontal',\n wrap = true,\n sizeCount = 12,\n rowGap,\n justify = 'flex-start',\n align = 'flex-start',\n alignSelf,\n divider = 'space',\n spacing = 'small',\n breakpoints,\n queries,\n ...rest\n } = props\n\n const childrenArray = React.Children.toArray(children)\n const hasHeading = childrenArray.some((child, i) => {\n const previousChild = childrenArray?.[i - 1]\n return (\n isHeadingElement(child) || (i > 0 && isHeadingElement(previousChild))\n )\n })\n const hasSizeProp =\n !hasHeading &&\n direction === 'horizontal' &&\n childrenArray.some((child) => child['props']?.size)\n\n const { key: mediaKey } = useMedia({\n disabled: !hasSizeProp,\n breakpoints,\n queries,\n })\n\n const content = childrenArray.map((child, i) => {\n // Set spacing on child components by props (instead of CSS) to be able to dynamically override by props on each child. The default\n // is the spacing-props that controls space between children. Then override with props sent to the children, including both top\n // and bottom when th\n const isFirst = i === 0\n const previousChild = childrenArray?.[i - 1]\n\n // Always set spacing between elements in the vertical layout on the top props, and 0 on bottom, to avoid\n // having to divide spacing between both with smaller values.\n const start: Start = direction === 'horizontal' ? 'left' : 'top'\n const end: End = direction === 'horizontal' ? 'right' : 'bottom'\n // const start: Start | End = direction === 'horizontal' ? 'right' : 'top'\n // const end: Start | End = direction === 'horizontal' ? 'left' : 'bottom'\n const endSpacing = 0\n let startSpacing = null\n\n if (\n divider === 'line' &&\n // No line above first element\n !isFirst &&\n // No line above/below headings\n !hasHeading\n ) {\n const spaceAboveLine = getSpaceValue(end, previousChild) ?? spacing\n startSpacing = (getSpaceValue(start, child) ?? spacing) as SpaceType\n\n return (\n <React.Fragment key={`element-${i}`}>\n <Space top={spaceAboveLine} />\n <Hr space={0} />\n {renderWithSpacing(child, {\n space: { [start]: startSpacing, [end]: endSpacing },\n })}\n </React.Fragment>\n )\n }\n\n // No space above first element.\n if (isFirst && direction !== 'horizontal') {\n startSpacing = 0\n } else {\n // Since top space of current and bottom space of previous component is the same\n startSpacing =\n getSpaceValue(start, child) ??\n getSpaceValue(end, previousChild) ??\n spacing\n }\n\n const space =\n direction === 'horizontal'\n ? { [start]: endSpacing, [end]: startSpacing }\n : { [start]: startSpacing, [end]: endSpacing }\n\n return renderWithSpacing(child, {\n key: `element-${i}`,\n space,\n })\n })\n\n const n = 'dnb-flex-container'\n const cn = classnames(\n 'dnb-flex-container',\n direction && `${n}--direction-${direction}`,\n justify && `${n}--justify-${justify}`,\n align && `${n}--align-${align}`,\n alignSelf && `${n}--align-self-${alignSelf}`,\n spacing && `${n}--spacing-${spacing}`,\n wrap && `${n}--wrap`,\n rowGap && `${n}--row-gap-${rowGap === true ? 'small' : rowGap}`,\n hasSizeProp && `${n}--has-size`,\n divider && `${n}--divider-${divider}`,\n className\n )\n\n return (\n <Space\n element={element}\n className={cn}\n data-media-key={mediaKey}\n style={\n hasSizeProp\n ? ({ '--sizeCount': sizeCount, ...style } as React.CSSProperties)\n : style\n }\n {...rest}\n >\n {content}\n </Space>\n )\n}\n\nFlexContainer._supportsSpacingProps = true\n\nexport default FlexContainer\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import * as _default from './';
|
|
1
|
+
import * as _default from './export';
|
|
2
2
|
export { _default as default };
|
package/components/flex/Flex.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Flex.js","names":["_default","default"],"sources":["../../../../src/components/flex/Flex.tsx"],"sourcesContent":["// For TypeScript compatibility we import and export it this way\nimport * as _default from './'\nexport { _default as default }\n"],"mappings":"AACA,OAAO,KAAKA,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"Flex.js","names":["_default","default"],"sources":["../../../../src/components/flex/Flex.tsx"],"sourcesContent":["// For TypeScript compatibility we import and export it this way\nimport * as _default from './export'\nexport { _default as default }\n"],"mappings":"AACA,OAAO,KAAKA,QAAQ,MAAM,UAAU;AACpC,SAASA,QAAQ,IAAIC,OAAO"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { default as Container } from './Container';
|
|
2
|
+
export { default as Item } from './Item';
|
|
3
|
+
export { default as Stack } from './Stack';
|
|
4
|
+
export { default as Horizontal } from './Horizontal';
|
|
5
|
+
export { default as Vertical } from './Vertical';
|
|
6
|
+
//# sourceMappingURL=export.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export.js","names":["default","Container","Item","Stack","Horizontal","Vertical"],"sources":["../../../../src/components/flex/export.ts"],"sourcesContent":["export { default as Container } from './Container'\nexport { default as Item } from './Item'\nexport { default as Stack } from './Stack'\nexport { default as Horizontal } from './Horizontal'\nexport { default as Vertical } from './Vertical'\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,SAAS,QAAQ,aAAa;AAClD,SAASD,OAAO,IAAIE,IAAI,QAAQ,QAAQ;AACxC,SAASF,OAAO,IAAIG,KAAK,QAAQ,SAAS;AAC1C,SAASH,OAAO,IAAII,UAAU,QAAQ,cAAc;AACpD,SAASJ,OAAO,IAAIK,QAAQ,QAAQ,YAAY"}
|
|
@@ -1,5 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
export {
|
|
3
|
-
export { default as Stack } from './Stack';
|
|
4
|
-
export { default as Horizontal } from './Horizontal';
|
|
5
|
-
export { default as Vertical } from './Vertical';
|
|
1
|
+
import * as _default from './export';
|
|
2
|
+
export { _default as default };
|
package/components/flex/index.js
CHANGED
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
export {
|
|
3
|
-
export { default as Stack } from './Stack';
|
|
4
|
-
export { default as Horizontal } from './Horizontal';
|
|
5
|
-
export { default as Vertical } from './Vertical';
|
|
1
|
+
import * as _default from './export';
|
|
2
|
+
export { _default as default };
|
|
6
3
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["
|
|
1
|
+
{"version":3,"file":"index.js","names":["_default","default"],"sources":["../../../../src/components/flex/index.ts"],"sourcesContent":["// For TypeScript compatibility we import and export it this way\nimport * as _default from './export'\nexport { _default as default }\n"],"mappings":"AACA,OAAO,KAAKA,QAAQ,MAAM,UAAU;AACpC,SAASA,QAAQ,IAAIC,OAAO"}
|
|
@@ -27,6 +27,7 @@ export type FormLabelProps = {
|
|
|
27
27
|
export type FormLabelAllProps = FormLabelProps & React.HTMLAttributes<HTMLLabelElement> & SpacingProps;
|
|
28
28
|
declare function FormLabel(localProps: FormLabelAllProps): import("react/jsx-runtime").JSX.Element;
|
|
29
29
|
declare namespace FormLabel {
|
|
30
|
+
var _formElement: boolean;
|
|
30
31
|
var _supportsSpacingProps: boolean;
|
|
31
32
|
}
|
|
32
33
|
export default FormLabel;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
1
3
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
4
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
5
|
const _excluded = ["forId", "text", "srOnly", "vertical", "size", "skeleton", "element", "innerRef", "className", "children", "for_id", "sr_only", "label_direction"];
|
|
@@ -41,5 +43,6 @@ export default function FormLabel(localProps) {
|
|
|
41
43
|
validateDOMAttributes(localProps, params);
|
|
42
44
|
return React.createElement(Element, params, text || children);
|
|
43
45
|
}
|
|
46
|
+
FormLabel._formElement = true;
|
|
44
47
|
FormLabel._supportsSpacingProps = true;
|
|
45
48
|
//# sourceMappingURL=FormLabel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormLabel.js","names":["React","classnames","extendPropsWithContext","isTrue","validateDOMAttributes","createSpacingClasses","createSkeletonClass","skeletonDOMAttributes","pickFormElementProps","Context","FormLabel","localProps","context","useContext","props","skeleton","FormRow","formElement","forId","text","srOnly","vertical","size","element","Element","innerRef","className","children","for_id","sr_only","label_direction","attributes","_objectWithoutProperties","_excluded","isInteractive","disabled","onClick","params","_objectSpread","htmlFor","createElement","_supportsSpacingProps"],"sources":["../../../../src/components/form-label/FormLabel.tsx"],"sourcesContent":["/**\n * Web FormLabel Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport {\n extendPropsWithContext,\n isTrue,\n validateDOMAttributes,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport {\n createSkeletonClass,\n skeletonDOMAttributes,\n} from '../skeleton/SkeletonHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\nimport Context from '../../shared/Context'\nimport {\n DynamicElement,\n DynamicElementParams,\n SpacingProps,\n} from '../../shared/types'\n\nexport type FormLabelProps = {\n forId?: string\n element?: DynamicElement<HTMLLabelElement>\n text?: React.ReactNode\n size?: 'basis' | 'medium' | 'large'\n id?: string\n skeleton?: boolean\n label?: React.ReactNode\n vertical?: boolean\n srOnly?: boolean\n innerRef?: React.RefObject<HTMLElement>\n\n /** Is not a part of HTMLLabelElement and not documented as of now */\n disabled?: boolean\n\n /** @deprecated use forId instead */\n for_id?: string\n /** @deprecated use srOnly instead */\n sr_only?: boolean\n /** @deprecated use labelDirection instead (was not documented before) */\n label_direction?: 'vertical' | 'horizontal'\n}\n\nexport type FormLabelAllProps = FormLabelProps &\n React.HTMLAttributes<HTMLLabelElement> &\n SpacingProps\n\nexport default function FormLabel(localProps: FormLabelAllProps) {\n const context = React.useContext(Context)\n\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContext(\n localProps,\n null,\n { skeleton: context?.skeleton },\n pickFormElementProps(context?.FormRow), // Deprecated – can be removed in v11\n pickFormElementProps(context?.formElement),\n context?.FormLabel\n )\n\n const {\n forId,\n text,\n srOnly,\n vertical,\n size,\n skeleton,\n element: Element = 'label',\n innerRef,\n className,\n children,\n\n /** @deprecated can be removed in v11 */\n for_id,\n sr_only,\n label_direction,\n\n ...attributes\n } = props\n\n const isInteractive =\n !props.disabled &&\n !srOnly &&\n (typeof props.onClick === 'function' || forId || for_id)\n\n const params = {\n className: classnames(\n 'dnb-form-label',\n (isTrue(vertical) || label_direction === 'vertical') &&\n `dnb-form-label--vertical`,\n (srOnly || isTrue(sr_only)) && 'dnb-sr-only',\n size && `dnb-h--${size}`,\n isInteractive && 'dnb-form-label--interactive',\n createSkeletonClass('font', skeleton, context),\n createSpacingClasses(props),\n className\n ),\n htmlFor: forId || for_id,\n ...(attributes as DynamicElementParams),\n }\n\n params['ref'] = innerRef\n\n skeletonDOMAttributes(params, skeleton, context)\n validateDOMAttributes(localProps, params)\n\n return <Element {...params}>{text || children}</Element>\n}\n\nFormLabel._supportsSpacingProps = true\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"FormLabel.js","names":["React","classnames","extendPropsWithContext","isTrue","validateDOMAttributes","createSpacingClasses","createSkeletonClass","skeletonDOMAttributes","pickFormElementProps","Context","FormLabel","localProps","context","useContext","props","skeleton","FormRow","formElement","forId","text","srOnly","vertical","size","element","Element","innerRef","className","children","for_id","sr_only","label_direction","attributes","_objectWithoutProperties","_excluded","isInteractive","disabled","onClick","params","_objectSpread","htmlFor","createElement","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/form-label/FormLabel.tsx"],"sourcesContent":["/**\n * Web FormLabel Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport {\n extendPropsWithContext,\n isTrue,\n validateDOMAttributes,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport {\n createSkeletonClass,\n skeletonDOMAttributes,\n} from '../skeleton/SkeletonHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\nimport Context from '../../shared/Context'\nimport {\n DynamicElement,\n DynamicElementParams,\n SpacingProps,\n} from '../../shared/types'\n\nexport type FormLabelProps = {\n forId?: string\n element?: DynamicElement<HTMLLabelElement>\n text?: React.ReactNode\n size?: 'basis' | 'medium' | 'large'\n id?: string\n skeleton?: boolean\n label?: React.ReactNode\n vertical?: boolean\n srOnly?: boolean\n innerRef?: React.RefObject<HTMLElement>\n\n /** Is not a part of HTMLLabelElement and not documented as of now */\n disabled?: boolean\n\n /** @deprecated use forId instead */\n for_id?: string\n /** @deprecated use srOnly instead */\n sr_only?: boolean\n /** @deprecated use labelDirection instead (was not documented before) */\n label_direction?: 'vertical' | 'horizontal'\n}\n\nexport type FormLabelAllProps = FormLabelProps &\n React.HTMLAttributes<HTMLLabelElement> &\n SpacingProps\n\nexport default function FormLabel(localProps: FormLabelAllProps) {\n const context = React.useContext(Context)\n\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContext(\n localProps,\n null,\n { skeleton: context?.skeleton },\n pickFormElementProps(context?.FormRow), // Deprecated – can be removed in v11\n pickFormElementProps(context?.formElement),\n context?.FormLabel\n )\n\n const {\n forId,\n text,\n srOnly,\n vertical,\n size,\n skeleton,\n element: Element = 'label',\n innerRef,\n className,\n children,\n\n /** @deprecated can be removed in v11 */\n for_id,\n sr_only,\n label_direction,\n\n ...attributes\n } = props\n\n const isInteractive =\n !props.disabled &&\n !srOnly &&\n (typeof props.onClick === 'function' || forId || for_id)\n\n const params = {\n className: classnames(\n 'dnb-form-label',\n (isTrue(vertical) || label_direction === 'vertical') &&\n `dnb-form-label--vertical`,\n (srOnly || isTrue(sr_only)) && 'dnb-sr-only',\n size && `dnb-h--${size}`,\n isInteractive && 'dnb-form-label--interactive',\n createSkeletonClass('font', skeleton, context),\n createSpacingClasses(props),\n className\n ),\n htmlFor: forId || for_id,\n ...(attributes as DynamicElementParams),\n }\n\n params['ref'] = innerRef\n\n skeletonDOMAttributes(params, skeleton, context)\n validateDOMAttributes(localProps, params)\n\n return <Element {...params}>{text || children}</Element>\n}\n\nFormLabel._formElement = true\nFormLabel._supportsSpacingProps = true\n"],"mappings":";;;;;;;AAKA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,SACEC,sBAAsB,EACtBC,MAAM,EACNC,qBAAqB,QAChB,+BAA+B;AACtC,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SACEC,mBAAmB,EACnBC,qBAAqB,QAChB,4BAA4B;AACnC,SAASC,oBAAoB,QAAQ,uCAAuC;AAC5E,OAAOC,OAAO,MAAM,sBAAsB;AAkC1C,eAAe,SAASC,SAASA,CAACC,UAA6B,EAAE;EAC/D,MAAMC,OAAO,GAAGZ,KAAK,CAACa,UAAU,CAACJ,OAAO,CAAC;EAGzC,MAAMK,KAAK,GAAGZ,sBAAsB,CAClCS,UAAU,EACV,IAAI,EACJ;IAAEI,QAAQ,EAAEH,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEG;EAAS,CAAC,EAC/BP,oBAAoB,CAACI,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEI,OAAO,CAAC,EACtCR,oBAAoB,CAACI,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEK,WAAW,CAAC,EAC1CL,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEF,SACX,CAAC;EAED,MAAM;MACJQ,KAAK;MACLC,IAAI;MACJC,MAAM;MACNC,QAAQ;MACRC,IAAI;MACJP,QAAQ;MACRQ,OAAO,EAAEC,OAAO,GAAG,OAAO;MAC1BC,QAAQ;MACRC,SAAS;MACTC,QAAQ;MAGRC,MAAM;MACNC,OAAO;MACPC;IAGF,CAAC,GAAGhB,KAAK;IADJiB,UAAU,GAAAC,wBAAA,CACXlB,KAAK,EAAAmB,SAAA;EAET,MAAMC,aAAa,GACjB,CAACpB,KAAK,CAACqB,QAAQ,IACf,CAACf,MAAM,KACN,OAAON,KAAK,CAACsB,OAAO,KAAK,UAAU,IAAIlB,KAAK,IAAIU,MAAM,CAAC;EAE1D,MAAMS,MAAM,GAAAC,aAAA;IACVZ,SAAS,EAAEzB,UAAU,CACnB,gBAAgB,EAChB,CAACE,MAAM,CAACkB,QAAQ,CAAC,IAAIS,eAAe,KAAK,UAAU,KAChD,0BAAyB,EAC5B,CAACV,MAAM,IAAIjB,MAAM,CAAC0B,OAAO,CAAC,KAAK,aAAa,EAG5CvB,mBAAmB,CAAC,MAAM,EAAES,QAAQ,EAAEH,OAAO,CAAC,EAC9CP,oBAAoB,CAACS,KAAK,CAAC,EAC3BY,SAAS,EAJTJ,IAAI,IAAK,UAASA,IAAK,EAAC,EACxBY,aAAa,IAAI,6BAInB,CAAC;IACDK,OAAO,EAAErB,KAAK,IAAIU;EAAM,GACpBG,UAAU,CACf;EAEDM,MAAM,CAAC,KAAK,CAAC,GAAGZ,QAAQ;EAExBlB,qBAAqB,CAAC8B,MAAM,EAAEtB,QAAQ,EAAEH,OAAO,CAAC;EAChDR,qBAAqB,CAACO,UAAU,EAAE0B,MAAM,CAAC;EAEzC,OAAOrC,KAAA,CAAAwC,aAAA,CAAChB,OAAO,EAAKa,MAAM,EAAGlB,IAAI,IAAIQ,QAAkB,CAAC;AAC1D;AAEAjB,SAAS,CAAC+B,YAAY,GAAG,IAAI;AAC7B/B,SAAS,CAACgC,qBAAqB,GAAG,IAAI"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormRow.js","names":["React","PropTypes","classnames","extend","extendPropsWithContextInClassComponent","isTrue","makeUniqueId","validateDOMAttributes","AlignmentHelper","Context","FormLabel","Section","spacingPropTypes","createSpacingClasses","formRowPropTypes","_objectSpread","id","string","label","oneOfType","func","node","label_direction","oneOf","label_sr_only","bool","label_id","label_class","no_label","no_fieldset","locale","wrap","direction","vertical","centered","section_style","section_spacing","globalStatus","shape","message","responsive","disabled","skeleton","class","skipContentWrapperIfNested","className","children","formRowDefaultProps","FormRow","PureComponent","getContent","props","Array","isArray","reduce","pV","cV","type","name","push","constructor","_id","render","_this$context","_this$context2","_this$context3","_this$context3$FormRo","_this$context4","_this$context4$formEl","defaultProps","context","formElement","_className","_label","attributes","_objectWithoutProperties","_excluded","isNested","itsMeAgain","nestedLabel","hasLabel","length","params","useId","isIsUsed","providerContext","useFieldset","createElement","Provider","value","Fieldset","_extends","style_type","spacing","element","_AlignmentHelper","for_id","text","sr_only","_span","_defineProperty","process","env","NODE_ENV","propTypes","_ref","_excluded2","_supportsSpacingProps"],"sources":["../../../../src/components/form-row/FormRow.js"],"sourcesContent":["/**\n * Web FormRow Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n extend,\n extendPropsWithContextInClassComponent,\n isTrue,\n makeUniqueId,\n validateDOMAttributes,\n} from '../../shared/component-helper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\n\nimport Context from '../../shared/Context'\nimport FormLabel from '../form-label/FormLabel'\nimport Section from '../section/Section'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\n\nexport const formRowPropTypes = {\n id: PropTypes.string,\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['vertical', 'horizontal']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n label_id: PropTypes.string,\n label_class: PropTypes.string,\n no_label: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_fieldset: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n locale: PropTypes.string,\n wrap: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n direction: PropTypes.oneOf(['vertical', 'horizontal']),\n vertical: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n centered: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n section_style: PropTypes.string,\n section_spacing: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n responsive: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n class: PropTypes.string,\n\n skipContentWrapperIfNested: PropTypes.bool,\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n}\n\nexport const formRowDefaultProps = {\n id: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n label_id: null,\n label_class: null,\n no_label: false,\n no_fieldset: null,\n locale: null,\n wrap: null,\n direction: null,\n vertical: null,\n centered: null,\n section_style: null,\n section_spacing: null,\n globalStatus: null,\n responsive: null,\n disabled: null,\n skeleton: null,\n class: null,\n\n skipContentWrapperIfNested: false,\n className: null,\n children: null,\n}\n\nexport default class FormRow extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n ...formRowPropTypes,\n }\n\n static defaultProps = {\n ...formRowDefaultProps,\n }\n\n static getContent(props) {\n let label = null\n let children =\n typeof props.children === 'function'\n ? props.children(props)\n : props.children\n\n if (Array.isArray(props.children)) {\n children = children.reduce((pV, cV) => {\n if (cV && cV.type && cV.type.name === 'FormLabel') {\n label = cV.props.children\n } else {\n pV.push(cV)\n }\n return pV\n }, [])\n }\n\n return { label, children }\n }\n\n constructor(props) {\n super(props)\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n\n // We may consider to use this later to check if we are inside FormSet\n // this.isInsideFormSet =\n // context.FormRow && context.FormRow.isInsideFormSet\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n FormRow.defaultProps,\n this.context?.FormRow, // nested FormRow\n this.context?.formElement // nested formElement\n )\n\n const {\n label_direction,\n label_sr_only,\n label_id,\n label_class,\n no_fieldset,\n no_label,\n locale,\n direction,\n vertical,\n centered,\n section_style,\n section_spacing,\n globalStatus,\n responsive,\n disabled,\n skeleton,\n wrap,\n className,\n class: _className,\n skipContentWrapperIfNested,\n\n id: _id, // eslint-disable-line\n label: _label, // eslint-disable-line\n\n ...attributes\n } = props\n\n let { label } = props\n\n const isNested =\n this.context?.FormRow?.itsMeAgain ||\n this.context?.formElement?.itsMeAgain\n\n // in case we have a label already, we split this out and use this one instead\n const { label: nestedLabel, children } = FormRow.getContent(this.props)\n if (!label && nestedLabel) {\n label = nestedLabel\n }\n const hasLabel =\n (typeof label === 'string' && label.length > 0) || label\n ? true\n : false\n\n const id = this._id\n const params = {\n className: classnames(\n 'dnb-form-row',\n (isTrue(vertical) || direction) &&\n `dnb-form-row--${isTrue(vertical) ? 'vertical' : direction}`,\n (isTrue(vertical) || label_direction) &&\n `dnb-form-row--${\n isTrue(vertical) ? 'vertical' : label_direction\n }-label`, // <-- has label\n centered && 'dnb-form-row--centered',\n isNested && 'dnb-form-row--nested',\n createSpacingClasses(props),\n className,\n _className\n ),\n ...attributes,\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n\n const formElement = {\n useId: () => {\n if (this.isIsUsed) {\n // make a new ID, as we used one\n return makeUniqueId() // cause we need an id anyway\n }\n this.isIsUsed = true\n return id\n },\n itsMeAgain: true,\n hasLabel,\n globalStatus,\n direction,\n vertical,\n label_direction: isTrue(vertical) ? 'vertical' : label_direction,\n responsive,\n disabled,\n skeleton,\n }\n\n const providerContext = extend(this.context, {\n locale: locale ? locale : this.context.locale,\n formElement,\n FormRow: formElement,\n })\n\n const useFieldset = !isTrue(no_fieldset) && hasLabel\n\n return (\n <Context.Provider value={providerContext}>\n <Fieldset useFieldset={useFieldset}>\n <Section\n style_type={section_style || 'transparent'}\n spacing={section_spacing}\n element=\"div\"\n {...params}\n >\n <AlignmentHelper />\n\n {label && (\n <FormLabel\n className={classnames('dnb-form-row__label', label_class)}\n id={label_id ? label_id : id + '-label'}\n for_id={useFieldset ? null : id} // we don't use for_id, because we don't have a single element to target to\n text={label}\n element={useFieldset ? 'legend' : 'label'}\n label_direction={label_direction}\n sr_only={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n />\n )}\n\n {isTrue(no_label) && (\n <span\n className=\"dnb-form-label dnb-form-row__label-dummy\"\n aria-hidden\n />\n )}\n\n {isNested && skipContentWrapperIfNested ? (\n children\n ) : (\n <div\n className={classnames(\n 'dnb-form-row__content',\n isTrue(wrap) && 'dnb-form-row__content--wrap',\n label && !isTrue(vertical) && direction !== 'vertical',\n responsive && 'dnb-responsive-component'\n )}\n >\n {children}\n </div>\n )}\n </Section>\n </Fieldset>\n </Context.Provider>\n )\n }\n}\n\nconst Fieldset = ({\n useFieldset,\n children,\n className = null,\n ...props\n}) => {\n if (useFieldset) {\n return (\n <fieldset\n className={classnames('dnb-form-row__fieldset', className)}\n {...props}\n >\n {children}\n </fieldset>\n )\n }\n return (\n <div\n className={classnames('dnb-form-row__fieldset', className)}\n {...props}\n >\n {children}\n </div>\n )\n}\n\n// docs (or use ptd): https://github.com/facebook/prop-types#usage\nFieldset.propTypes = {\n children: PropTypes.node,\n useFieldset: PropTypes.bool,\n className: PropTypes.string,\n}\nFieldset.defaultProps = {\n children: null,\n useFieldset: false,\n className: null,\n}\n\nFormRow._supportsSpacingProps = true\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FormRow.js","names":["React","PropTypes","classnames","extend","extendPropsWithContextInClassComponent","isTrue","makeUniqueId","validateDOMAttributes","AlignmentHelper","Context","FormLabel","Section","spacingPropTypes","createSpacingClasses","formRowPropTypes","_objectSpread","id","string","label","oneOfType","func","node","label_direction","oneOf","label_sr_only","bool","label_id","label_class","no_label","no_fieldset","locale","wrap","direction","vertical","centered","section_style","section_spacing","globalStatus","shape","message","responsive","disabled","skeleton","class","skipContentWrapperIfNested","className","children","formRowDefaultProps","FormRow","PureComponent","getContent","props","Array","isArray","reduce","pV","cV","type","name","push","constructor","_id","render","_this$context","_this$context2","_this$context3","_this$context3$FormRo","_this$context4","_this$context4$formEl","defaultProps","context","formElement","_className","_label","attributes","_objectWithoutProperties","_excluded","isNested","itsMeAgain","nestedLabel","hasLabel","length","params","useId","isIsUsed","providerContext","useFieldset","createElement","Provider","value","Fieldset","_extends","style_type","spacing","element","_AlignmentHelper","for_id","text","sr_only","_span","_defineProperty","process","env","NODE_ENV","propTypes","_ref","_excluded2","_supportsSpacingProps"],"sources":["../../../../src/components/form-row/FormRow.js"],"sourcesContent":["/**\n * Web FormRow Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n extend,\n extendPropsWithContextInClassComponent,\n isTrue,\n makeUniqueId,\n validateDOMAttributes,\n} from '../../shared/component-helper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\n\nimport Context from '../../shared/Context'\nimport FormLabel from '../form-label/FormLabel'\nimport Section from '../section/Section'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\n\nexport const formRowPropTypes = {\n id: PropTypes.string,\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['vertical', 'horizontal']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n label_id: PropTypes.string,\n label_class: PropTypes.string,\n no_label: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n no_fieldset: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n locale: PropTypes.string,\n wrap: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n direction: PropTypes.oneOf(['vertical', 'horizontal']),\n vertical: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n centered: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n section_style: PropTypes.string,\n section_spacing: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n responsive: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n class: PropTypes.string,\n\n skipContentWrapperIfNested: PropTypes.bool,\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n}\n\nexport const formRowDefaultProps = {\n id: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n label_id: null,\n label_class: null,\n no_label: false,\n no_fieldset: null,\n locale: null,\n wrap: null,\n direction: null,\n vertical: null,\n centered: null,\n section_style: null,\n section_spacing: null,\n globalStatus: null,\n responsive: null,\n disabled: null,\n skeleton: null,\n class: null,\n\n skipContentWrapperIfNested: false,\n className: null,\n children: null,\n}\n\nexport default class FormRow extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n ...formRowPropTypes,\n }\n\n static defaultProps = {\n ...formRowDefaultProps,\n }\n\n static getContent(props) {\n let label = null\n let children =\n typeof props.children === 'function'\n ? props.children(props)\n : props.children\n\n if (Array.isArray(props.children)) {\n children = children.reduce((pV, cV) => {\n if (cV && cV.type && cV.type.name === 'FormLabel') {\n label = cV.props.children\n } else {\n pV.push(cV)\n }\n return pV\n }, [])\n }\n\n return { label, children }\n }\n\n constructor(props) {\n super(props)\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n\n // We may consider to use this later to check if we are inside FormSet\n // this.isInsideFormSet =\n // context.FormRow && context.FormRow.isInsideFormSet\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n FormRow.defaultProps,\n this.context?.FormRow, // nested FormRow\n this.context?.formElement // nested formElement\n )\n\n const {\n label_direction,\n label_sr_only,\n label_id,\n label_class,\n no_fieldset,\n no_label,\n locale,\n direction,\n vertical,\n centered,\n section_style,\n section_spacing,\n globalStatus,\n responsive,\n disabled,\n skeleton,\n wrap,\n className,\n class: _className,\n skipContentWrapperIfNested,\n\n id: _id, // eslint-disable-line\n label: _label, // eslint-disable-line\n\n ...attributes\n } = props\n\n let { label } = props\n\n const isNested =\n this.context?.FormRow?.itsMeAgain ||\n this.context?.formElement?.itsMeAgain\n\n // in case we have a label already, we split this out and use this one instead\n const { label: nestedLabel, children } = FormRow.getContent(this.props)\n if (!label && nestedLabel) {\n label = nestedLabel\n }\n const hasLabel =\n (typeof label === 'string' && label.length > 0) || label\n ? true\n : false\n\n const id = this._id\n const params = {\n className: classnames(\n 'dnb-form-row',\n (isTrue(vertical) || direction) &&\n `dnb-form-row--${isTrue(vertical) ? 'vertical' : direction}`,\n (isTrue(vertical) || label_direction) &&\n `dnb-form-row--${\n isTrue(vertical) ? 'vertical' : label_direction\n }-label`, // <-- has label\n centered && 'dnb-form-row--centered',\n isNested && 'dnb-form-row--nested',\n createSpacingClasses(props),\n className,\n _className\n ),\n ...attributes,\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n\n const formElement = {\n useId: () => {\n if (this.isIsUsed) {\n // make a new ID, as we used one\n return makeUniqueId() // cause we need an id anyway\n }\n this.isIsUsed = true\n return id\n },\n itsMeAgain: true,\n hasLabel,\n globalStatus,\n direction,\n vertical,\n label_direction: isTrue(vertical) ? 'vertical' : label_direction,\n responsive,\n disabled,\n skeleton,\n }\n\n const providerContext = extend(this.context, {\n locale: locale ? locale : this.context.locale,\n formElement,\n FormRow: formElement,\n })\n\n const useFieldset = !isTrue(no_fieldset) && hasLabel\n\n return (\n <Context.Provider value={providerContext}>\n <Fieldset useFieldset={useFieldset}>\n <Section\n style_type={section_style || 'transparent'}\n spacing={section_spacing}\n element=\"div\"\n {...params}\n >\n <AlignmentHelper />\n\n {label && (\n <FormLabel\n className={classnames('dnb-form-row__label', label_class)}\n id={label_id ? label_id : id + '-label'}\n for_id={useFieldset ? null : id} // we don't use for_id, because we don't have a single element to target to\n text={label}\n element={useFieldset ? 'legend' : 'label'}\n label_direction={label_direction}\n sr_only={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n />\n )}\n\n {isTrue(no_label) && (\n <span\n className=\"dnb-form-label dnb-form-row__label-dummy\"\n aria-hidden\n />\n )}\n\n {isNested && skipContentWrapperIfNested ? (\n children\n ) : (\n <div\n className={classnames(\n 'dnb-form-row__content',\n isTrue(wrap) && 'dnb-form-row__content--wrap',\n label && !isTrue(vertical) && direction !== 'vertical',\n responsive && 'dnb-responsive-component'\n )}\n >\n {children}\n </div>\n )}\n </Section>\n </Fieldset>\n </Context.Provider>\n )\n }\n}\n\nconst Fieldset = ({\n useFieldset,\n children,\n className = null,\n ...props\n}) => {\n if (useFieldset) {\n return (\n <fieldset\n className={classnames('dnb-form-row__fieldset', className)}\n {...props}\n >\n {children}\n </fieldset>\n )\n }\n return (\n <div\n className={classnames('dnb-form-row__fieldset', className)}\n {...props}\n >\n {children}\n </div>\n )\n}\n\n// docs (or use ptd): https://github.com/facebook/prop-types#usage\nFieldset.propTypes = {\n children: PropTypes.node,\n useFieldset: PropTypes.bool,\n className: PropTypes.string,\n}\nFieldset.defaultProps = {\n children: null,\n useFieldset: false,\n className: null,\n}\n\nFormRow._supportsSpacingProps = true\n"],"mappings":"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"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
1
3
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
2
4
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
3
5
|
const _excluded = ["element", "locale", "no_form", "prevent_submit", "id", "className", "class"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormSet.js","names":["React","PropTypes","classnames","isTrue","makeUniqueId","extend","extendPropsWithContextInClassComponent","validateDOMAttributes","processChildren","dispatchCustomElementEvent","createSpacingClasses","Context","formRowDefaultProps","formRowPropTypes","FormSet","PureComponent","getContent","props","constructor","_defineProperty","event","prevent_submit","preventDefault","_id","id","render","defaultProps","context","element","locale","no_form","className","class","_className","rest","_objectWithoutProperties","_excluded","allowedProps","Object","entries","reduce","acc","_ref","k","v","attributes","_ref2","params","_objectSpread","onSubmit","onSubmitHandler","content","providerContext","FormRow","Element","createElement","Provider","value","disabled","skeleton","on_submit","process","env","NODE_ENV","propTypes","string","oneOfType","bool","func","_supportsSpacingProps"],"sources":["../../../../src/components/form-set/FormSet.js"],"sourcesContent":["/**\n * Web FormSet Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n isTrue,\n makeUniqueId,\n extend,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n processChildren,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport Context from '../../shared/Context'\nimport { formRowDefaultProps, formRowPropTypes } from '../form-row/FormRow'\n\nexport default class FormSet extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n element: PropTypes.string,\n no_form: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n prevent_submit: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n\n ...formRowPropTypes,\n\n on_submit: PropTypes.func,\n }\n\n static defaultProps = {\n element: 'form',\n no_form: false,\n disabled: null,\n skeleton: null,\n prevent_submit: false,\n\n on_submit: null,\n }\n\n static getContent(props) {\n return processChildren(props)\n }\n\n constructor(props) {\n super(props)\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n }\n\n onSubmitHandler = (event) => {\n const { prevent_submit } = this.props\n if (isTrue(prevent_submit)) {\n event.preventDefault()\n }\n dispatchCustomElementEvent(this, 'on_submit', { event })\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n FormSet.defaultProps,\n this.context.FormSet\n )\n\n const {\n element,\n locale,\n no_form,\n prevent_submit, // eslint-disable-line\n id, // eslint-disable-line\n className,\n class: _className,\n\n ...rest\n } = props\n\n const allowedProps = Object.entries(rest).reduce((acc, [k, v]) => {\n if (\n typeof formRowDefaultProps[k] !== 'undefined' &&\n k !== 'id' &&\n k !== 'children' &&\n k !== 'label'\n ) {\n acc[k] = v\n }\n return acc\n }, {})\n const attributes = Object.entries(rest).reduce((acc, [k, v]) => {\n if (typeof allowedProps[k] === 'undefined' && k !== 'children') {\n acc[k] = v\n }\n return acc\n }, {})\n\n const params = {\n className: classnames(\n 'dnb-form-set',\n createSpacingClasses(this.props),\n className,\n _className\n ),\n ...attributes,\n }\n\n if (!isTrue(no_form)) {\n params.onSubmit = this.onSubmitHandler\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n\n const content = FormSet.getContent(this.props)\n\n const providerContext = extend(this.context, {\n locale: locale ? locale : this.context.locale,\n FormRow: allowedProps,\n // isInsideFormSet: true // We may consider to use this later to check if we are inside FormSet\n })\n\n const Element = isTrue(no_form) ? 'div' : element\n\n return (\n <Context.Provider value={providerContext}>\n <Element {...params}>{content}</Element>\n </Context.Provider>\n )\n }\n}\n\nFormSet._supportsSpacingProps = true\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"FormSet.js","names":["React","PropTypes","classnames","isTrue","makeUniqueId","extend","extendPropsWithContextInClassComponent","validateDOMAttributes","processChildren","dispatchCustomElementEvent","createSpacingClasses","Context","formRowDefaultProps","formRowPropTypes","FormSet","PureComponent","getContent","props","constructor","_defineProperty","event","prevent_submit","preventDefault","_id","id","render","defaultProps","context","element","locale","no_form","className","class","_className","rest","_objectWithoutProperties","_excluded","allowedProps","Object","entries","reduce","acc","_ref","k","v","attributes","_ref2","params","_objectSpread","onSubmit","onSubmitHandler","content","providerContext","FormRow","Element","createElement","Provider","value","disabled","skeleton","on_submit","process","env","NODE_ENV","propTypes","string","oneOfType","bool","func","_supportsSpacingProps"],"sources":["../../../../src/components/form-set/FormSet.js"],"sourcesContent":["/**\n * Web FormSet Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n isTrue,\n makeUniqueId,\n extend,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n processChildren,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport Context from '../../shared/Context'\nimport { formRowDefaultProps, formRowPropTypes } from '../form-row/FormRow'\n\nexport default class FormSet extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n element: PropTypes.string,\n no_form: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n prevent_submit: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n\n ...formRowPropTypes,\n\n on_submit: PropTypes.func,\n }\n\n static defaultProps = {\n element: 'form',\n no_form: false,\n disabled: null,\n skeleton: null,\n prevent_submit: false,\n\n on_submit: null,\n }\n\n static getContent(props) {\n return processChildren(props)\n }\n\n constructor(props) {\n super(props)\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n }\n\n onSubmitHandler = (event) => {\n const { prevent_submit } = this.props\n if (isTrue(prevent_submit)) {\n event.preventDefault()\n }\n dispatchCustomElementEvent(this, 'on_submit', { event })\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n FormSet.defaultProps,\n this.context.FormSet\n )\n\n const {\n element,\n locale,\n no_form,\n prevent_submit, // eslint-disable-line\n id, // eslint-disable-line\n className,\n class: _className,\n\n ...rest\n } = props\n\n const allowedProps = Object.entries(rest).reduce((acc, [k, v]) => {\n if (\n typeof formRowDefaultProps[k] !== 'undefined' &&\n k !== 'id' &&\n k !== 'children' &&\n k !== 'label'\n ) {\n acc[k] = v\n }\n return acc\n }, {})\n const attributes = Object.entries(rest).reduce((acc, [k, v]) => {\n if (typeof allowedProps[k] === 'undefined' && k !== 'children') {\n acc[k] = v\n }\n return acc\n }, {})\n\n const params = {\n className: classnames(\n 'dnb-form-set',\n createSpacingClasses(this.props),\n className,\n _className\n ),\n ...attributes,\n }\n\n if (!isTrue(no_form)) {\n params.onSubmit = this.onSubmitHandler\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n\n const content = FormSet.getContent(this.props)\n\n const providerContext = extend(this.context, {\n locale: locale ? locale : this.context.locale,\n FormRow: allowedProps,\n // isInsideFormSet: true // We may consider to use this later to check if we are inside FormSet\n })\n\n const Element = isTrue(no_form) ? 'div' : element\n\n return (\n <Context.Provider value={providerContext}>\n <Element {...params}>{content}</Element>\n </Context.Provider>\n )\n }\n}\n\nFormSet._supportsSpacingProps = true\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormStatus.js","names":["React","PropTypes","classnames","Context","isTrue","makeUniqueId","validateDOMAttributes","processChildren","extendPropsWithContextInClassComponent","HeightAnimationInstance","spacingPropTypes","createSpacingClasses","Icon","GlobalStatusProvider","skeletonDOMAttributes","createSkeletonClass","pickFormElementProps","FormStatus","PureComponent","getContent","props","text","correctStatus","state","getIcon","_ref","icon","icon_size","theme","IconToLoad","InfoIcon","WarnIcon","MarketingIcon","ErrorIcon","createElement","title","size","inherit_color","getDerivedStateFromProps","_id","id","constructor","context","_props$globalStatus","_context$FormStatus","_context$FormStatus$g","_context$FormRow","_context$FormRow$glob","_context$formElement","_context$formElement$","_defineProperty","keepContentInDom","_isMounted","_globalStatus","isReady","updateWidth","current","width_element","width_selector","setMaxWidthToElement","element","widthElement","widthSelector","init","globalStatus","FormRow","formElement","provider","isReadyToGetVisible","label","add","status_id","getStatusId","item","item_id","message","status_anchor_label","status_anchor_url","createRef","_heightAnim","animate","no_animation","onStart","setState","isAnimating","onEnd","show","componentDidMount","document","readyState","window","addEventListener","componentWillUnmount","remove","removeEventListener","componentDidUpdate","prevProps","children","update","preventRestack","setElement","open","close","arguments","length","undefined","render","_this$context","_this$context2","_this$context3","_this$context3$theme","defaultProps","skeleton","rawState","variant","className","stretch","class","_className","text_id","role","rest","_objectWithoutProperties","_excluded","iconToRender","name","contentToRender","_cachedContent","hasStringContent","params","_objectSpread","String","startsWith","textParams","_extends","ref","attributes","process","env","NODE_ENV","propTypes","string","oneOfType","bool","func","node","oneOf","shape","object","width","height","viewBox","fill","_path","d","_path2","_path3","stroke","strokeWidth","strokeLinecap","strokeLinejoin","_path4","_path5","_path6","isSbankenTheme","fillRule","clipRule","_circle","cx","cy","r","_path7","xmlns","_path8","_ref2","getAttribute","replace","sumElementWidth","maxWidth","remWidth","style","getComputedStyle","hasCustomWidth","minWidth","e","_ref3","ids","split","reduce","acc","cur","elem","querySelector","getElementById","offsetWidth","test","parseFloat","_supportsSpacingProps"],"sources":["../../../../src/components/form-status/FormStatus.js"],"sourcesContent":["/**\n * Web FormStatus Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport Context from '../../shared/Context'\nimport {\n isTrue,\n makeUniqueId,\n validateDOMAttributes,\n processChildren,\n extendPropsWithContextInClassComponent,\n} from '../../shared/component-helper'\nimport HeightAnimationInstance from '../height-animation/HeightAnimationInstance'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport Icon from '../icon/Icon'\nimport GlobalStatusProvider from '../global-status/GlobalStatusProvider'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\n\nexport default class FormStatus extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n id: PropTypes.string,\n title: PropTypes.string,\n show: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n text: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n label: PropTypes.node,\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n icon_size: PropTypes.string,\n state: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.string,\n PropTypes.oneOf(['error', 'warn', 'info', 'marketing']),\n ]),\n variant: PropTypes.oneOf(['flat', 'outlined']),\n size: PropTypes.oneOf(['default', 'large']),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n attributes: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n text_id: PropTypes.string,\n width_selector: PropTypes.string,\n width_element: PropTypes.object,\n class: PropTypes.string,\n no_animation: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n role: PropTypes.string,\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n }\n\n static defaultProps = {\n id: null,\n title: null,\n show: true,\n text: null,\n globalStatus: null,\n label: null,\n icon: 'error',\n icon_size: 'medium',\n size: 'default',\n variant: null,\n state: 'error',\n attributes: null,\n text_id: null,\n width_selector: null,\n width_element: null,\n class: null,\n no_animation: null,\n skeleton: null,\n stretch: null,\n role: null,\n className: null,\n children: null,\n }\n\n static getContent(props) {\n if (props.text) {\n if (isTrue(props.text)) {\n return null\n }\n return props.text\n }\n return processChildren(props)\n }\n\n static correctStatus(state) {\n switch (state) {\n case 'information':\n state = 'info'\n break\n case 'warning':\n state = 'warn'\n break\n }\n return state\n }\n\n static getIcon({ state, icon, icon_size, theme }) {\n if (typeof icon !== 'string') {\n return icon\n }\n\n let IconToLoad = icon\n\n switch (FormStatus.correctStatus(state)) {\n case 'info':\n case 'success':\n IconToLoad = InfoIcon\n break\n case 'warn':\n IconToLoad = WarnIcon\n break\n case 'marketing':\n IconToLoad = MarketingIcon\n break\n case 'error':\n default:\n IconToLoad = ErrorIcon\n }\n\n return (\n <Icon\n icon={<IconToLoad title={null} state={state} theme={theme} />}\n size={icon_size}\n inherit_color={false}\n />\n )\n }\n\n static getDerivedStateFromProps(props, state) {\n if (state._id !== props.id && props.id) {\n state.id = props.id\n }\n\n state._id = props.id\n\n return state\n }\n\n state = { id: null, keepContentInDom: null }\n\n constructor(props, context) {\n super(props)\n\n // we do not use a random ID here, as we don't need it for now\n this.state.id = props.id || makeUniqueId()\n\n this._globalStatus = GlobalStatusProvider.init(\n props?.globalStatus?.id ||\n context?.FormStatus?.globalStatus?.id ||\n context?.FormRow?.globalStatus?.id ||\n context?.formElement?.globalStatus?.id ||\n 'main',\n (provider) => {\n // gets called once ready\n if (this.props.state === 'error' && this.isReadyToGetVisible()) {\n const { state, text, globalStatus, label } = this.props\n provider.add({\n state,\n status_id: this.getStatusId(),\n item: {\n item_id: this.state.id,\n text: globalStatus?.message || text,\n status_anchor_label: label,\n status_anchor_url: true,\n },\n })\n }\n }\n )\n\n this._ref = React.createRef()\n\n this._heightAnim = new HeightAnimationInstance({\n animate: props.no_animation === false,\n\n /** TODO: consider to enable animation by default */\n // animate: !isTrue(props.no_animation),\n })\n\n this._heightAnim.onStart(() => {\n this.setState({\n isAnimating: true,\n keepContentInDom: true,\n })\n })\n\n this._heightAnim.onEnd(() => {\n this.setState({\n isAnimating: false,\n keepContentInDom: isTrue(this.props.show),\n })\n })\n }\n\n init = () => {\n if (this._isMounted) {\n this._globalStatus.isReady()\n\n this.updateWidth()\n }\n }\n\n componentDidMount() {\n this._isMounted = true\n if (document.readyState === 'complete') {\n this.init()\n } else if (typeof window !== 'undefined') {\n window.addEventListener('load', this.init)\n }\n if (typeof window !== 'undefined') {\n window.addEventListener('resize', this.updateWidth)\n }\n }\n\n componentWillUnmount() {\n this._isMounted = false\n const status_id = this.getStatusId()\n this._globalStatus.remove(status_id)\n if (typeof window !== 'undefined') {\n window.removeEventListener('load', this.init)\n window.removeEventListener('resize', this.updateWidth)\n }\n this._heightAnim.remove()\n }\n\n componentDidUpdate(prevProps) {\n const { state, show, text, globalStatus, children, label } = this.props\n\n if (\n prevProps.text !== text ||\n prevProps.children !== children ||\n prevProps.show !== show ||\n prevProps.state !== state\n ) {\n // ensure we update the content\n this.setState({ keepContentInDom: false })\n\n if (state === 'error') {\n const status_id = this.getStatusId()\n\n if (isTrue(show)) {\n this._globalStatus.update(\n status_id,\n {\n state,\n status_id,\n item: {\n item_id: this.state.id,\n text: globalStatus?.message || text,\n status_anchor_label: label,\n status_anchor_url: true,\n },\n },\n {\n preventRestack: true, // because of the internal \"close\"\n }\n )\n } else if (!FormStatus.getContent(this.props)) {\n const status_id = this.getStatusId()\n this._globalStatus.remove(status_id)\n }\n }\n\n if (this.isReadyToGetVisible()) {\n this.updateWidth()\n this._heightAnim.setElement(this._ref.current)\n this._heightAnim.open()\n } else {\n this._heightAnim.close()\n }\n }\n }\n\n getStatusId() {\n return `${this.state.id}-gs`\n }\n\n updateWidth = () => {\n // set max-width to this form-status, using the \"linked mother\"\n if (this._ref.current) {\n const { width_element, width_selector } = this.props\n setMaxWidthToElement({\n element: this._ref.current,\n widthElement: width_element && width_element.current,\n widthSelector: width_selector,\n })\n }\n }\n\n isReadyToGetVisible(props = this.props) {\n return isTrue(props.show) && FormStatus.getContent(props)\n ? true\n : false\n }\n\n render() {\n const isReadyToGetVisible = this.isReadyToGetVisible()\n\n if (!isReadyToGetVisible && !this.state.keepContentInDom) {\n return null\n }\n\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n FormStatus.defaultProps,\n { skeleton: this.context && this.context.skeleton },\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.FormStatus\n )\n\n const {\n show, // eslint-disable-line\n title,\n state: rawState,\n size,\n variant,\n className,\n no_animation,\n stretch,\n class: _className,\n text_id,\n\n label, // eslint-disable-line\n status_id, // eslint-disable-line\n globalStatus, // eslint-disable-line\n id, // eslint-disable-line\n text, // eslint-disable-line\n icon, // eslint-disable-line\n icon_size, // eslint-disable-line\n skeleton, // eslint-disable-line\n children, // eslint-disable-line\n role,\n\n ...rest\n } = props\n\n const state = FormStatus.correctStatus(rawState)\n const iconToRender = FormStatus.getIcon({\n state,\n icon,\n icon_size,\n theme: this.context?.theme?.name,\n })\n\n const contentToRender =\n this.state.keepContentInDom && this._cachedContent\n ? this._cachedContent\n : FormStatus.getContent(this.props)\n\n // Add a cache, we use this during the \"hide\" period when animating\n if (!this.state.isAnimating) {\n this._cachedContent = contentToRender\n }\n\n const hasStringContent =\n typeof contentToRender === 'string' && contentToRender.length > 0\n\n const params = {\n className: classnames(\n 'dnb-form-status',\n `dnb-form-status--${state}`,\n `dnb-form-status__size--${size}`,\n variant && `dnb-form-status__variant--${variant}`,\n this.state.isAnimating && 'dnb-form-status--is-animating',\n !isReadyToGetVisible &&\n !this.state.keepContentInDom &&\n 'dnb-form-status--hidden',\n !isReadyToGetVisible &&\n this.state.keepContentInDom &&\n 'dnb-form-status--disappear',\n isTrue(no_animation) && 'dnb-form-status--no-animation',\n stretch && 'dnb-form-status--stretch',\n hasStringContent ? 'dnb-form-status--has-content' : null,\n createSpacingClasses(props),\n className,\n _className\n ),\n id: !String(id).startsWith('null') ? this.state.id : null,\n title,\n role,\n ...rest,\n }\n\n if (!role) {\n switch (state) {\n case 'info':\n params.role = 'status'\n break\n default:\n params.role = 'alert'\n }\n }\n\n const textParams = {\n className: classnames(\n 'dnb-form-status__text',\n createSkeletonClass('font', skeleton, this.context)\n ),\n id: !String(text_id).startsWith('null') ? text_id : null,\n }\n\n skeletonDOMAttributes(params, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n validateDOMAttributes(null, textParams)\n\n return (\n <span {...params} ref={this._ref}>\n <span className=\"dnb-form-status__shell\">\n {iconToRender}\n <span {...textParams}>{contentToRender}</span>\n </span>\n </span>\n )\n }\n}\n\nexport const ErrorIcon = (props) => (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n {props && props.title && <title>{props.title}</title>}\n <path\n d=\"M23.625 17.864A3.547 3.547 0 0120.45 23H3.548a3.546 3.546 0 01-3.172-5.136l8.45-14.902a3.548 3.548 0 016.347 0l8.452 14.902z\"\n fill=\"#DC2A2A\"\n />\n <path\n d=\"M12 16.286a1.286 1.286 0 100 2.572 1.286 1.286 0 000-2.572z\"\n fill=\"#fff\"\n />\n <path\n d=\"M12 13.818v-5\"\n stroke=\"#fff\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n)\nErrorIcon.propTypes = {\n title: PropTypes.string,\n}\nErrorIcon.defaultProps = {\n title: 'error',\n}\n\nexport const WarnIcon = (props) => (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n {props && props.title && <title>{props.title}</title>}\n <path\n d=\"M23.625 17.864A3.547 3.547 0 0120.45 23H3.548a3.546 3.546 0 01-3.172-5.136l8.45-14.902a3.548 3.548 0 016.347 0l8.452 14.902z\"\n fill=\"#FDBB31\"\n />\n <path\n d=\"M12 16.286a1.286 1.286 0 100 2.572 1.286 1.286 0 000-2.572z\"\n fill=\"#333\"\n />\n <path\n d=\"M12 13.818v-5\"\n stroke=\"#333\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n)\nWarnIcon.propTypes = {\n title: PropTypes.string,\n}\nWarnIcon.defaultProps = {\n title: 'error',\n}\n\nexport const InfoIcon = (props) => {\n const isSbankenTheme = props && props?.theme === 'sbanken'\n let fill = isSbankenTheme ? '#000' : '#007272'\n if (props && props?.state === 'success') {\n fill = isSbankenTheme ? '#02A56A' : '#28B482'\n }\n\n return (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n {props && props.title && <title>{props.title}</title>}\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M11.268 0a11.25 11.25 0 105.566 21.017l6.112 2.91a.75.75 0 001-1l-2.911-6.112A11.234 11.234 0 0011.268 0z\"\n fill={fill}\n />\n <circle cx=\"11\" cy=\"6.5\" r=\".5\" fill=\"#fff\" stroke=\"#fff\" />\n <path\n d=\"M13.75 16H13a1.5 1.5 0 01-1.5-1.5v-3.75a.75.75 0 00-.75-.75H10\"\n stroke=\"#fff\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n )\n}\nInfoIcon.propTypes = {\n title: PropTypes.string,\n state: PropTypes.string,\n theme: PropTypes.string,\n}\nInfoIcon.defaultProps = {\n title: 'info',\n state: 'info',\n theme: 'ui',\n}\n\nexport const MarketingIcon = (props) => (\n <svg\n width=\"24\"\n height=\"24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n {props && props.title && <title>{props.title}</title>}\n <path\n d=\"M6 15.25H4.5c-2.042 0-3.75-1.707-3.75-3.75S2.458 7.75 4.5 7.75H6v7.5ZM7.5 15.25c4.801 0 8.846 1.897 12.75 4.5V3.25c-3.904 2.603-7.949 4.5-12.75 4.5v7.5ZM23.25 10a.75.75 0 0 0-1.5 0h1.5Zm-1.5 3a.75.75 0 0 0 1.5 0h-1.5ZM8.483 21.043a.75.75 0 1 0 1.034-1.086l-1.034 1.086ZM21.75 10v3h1.5v-3h-1.5ZM6 15.25a8.058 8.058 0 0 0 2.483 5.793l1.034-1.086A6.559 6.559 0 0 1 7.5 15.25H6Z\"\n fill=\"#333\"\n />\n </svg>\n)\nMarketingIcon.propTypes = {\n title: PropTypes.string,\n}\nMarketingIcon.defaultProps = {\n title: 'marketing',\n}\n\nexport function setMaxWidthToElement({\n element,\n id = null,\n widthElement = null,\n widthSelector = null,\n}) {\n if (!(element && typeof window !== 'undefined')) {\n return // stop here\n }\n try {\n if (!id && !widthSelector) {\n id = element.getAttribute('id')\n }\n widthSelector = widthSelector || id?.replace('-form-status', '') || id\n\n let width = sumElementWidth({\n widthElement,\n widthSelector,\n })\n\n if (width > 40) {\n const maxWidth = 30 * 16 // use 12rem, because that's the default width in chrome for an input\n if (width < maxWidth) {\n width = maxWidth\n }\n\n const remWidth = `${width / 16}rem`\n\n const style = window.getComputedStyle(element)\n const hasCustomWidth = element.style.maxWidth\n ? false\n : (style.minWidth !== '' && style.minWidth !== 'auto') ||\n (style.maxWidth !== '' && style.maxWidth !== 'none')\n\n if (!hasCustomWidth) {\n element.style.maxWidth = remWidth\n }\n }\n } catch (e) {\n // skip logging\n }\n}\n\nfunction sumElementWidth({ widthElement, widthSelector }) {\n let width = 0\n if (typeof document === 'undefined') {\n return width // stop here\n }\n try {\n // beside \"selector\" - which is straight forward, we\n // also check if we can get an ID given by text_id\n const ids = widthElement\n ? [widthElement]\n : widthSelector.split(/, |,/g)\n\n width = ids.reduce((acc, cur) => {\n const elem =\n typeof cur === 'string'\n ? cur[0] === '.'\n ? document.querySelector(cur)\n : document.getElementById(cur)\n : cur\n\n let width =\n (elem && elem.offsetWidth) || window.getComputedStyle(elem).width\n if (/em|rem/.test(width)) {\n width = parseFloat(width) * 16\n }\n\n if (width > 0) {\n // add additional one more spacing unit\n // to make it more correct for small elements\n if (acc > 0) {\n acc += 16\n }\n acc += width\n }\n\n return acc\n }, width)\n } catch (e) {\n // skip logging\n }\n\n return width\n}\n\nFormStatus._supportsSpacingProps = true\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FormStatus.js","names":["React","PropTypes","classnames","Context","isTrue","makeUniqueId","validateDOMAttributes","processChildren","extendPropsWithContextInClassComponent","HeightAnimationInstance","spacingPropTypes","createSpacingClasses","Icon","GlobalStatusProvider","skeletonDOMAttributes","createSkeletonClass","pickFormElementProps","FormStatus","PureComponent","getContent","props","text","correctStatus","state","getIcon","_ref","icon","icon_size","theme","IconToLoad","InfoIcon","WarnIcon","MarketingIcon","ErrorIcon","createElement","title","size","inherit_color","getDerivedStateFromProps","_id","id","constructor","context","_props$globalStatus","_context$FormStatus","_context$FormStatus$g","_context$FormRow","_context$FormRow$glob","_context$formElement","_context$formElement$","_defineProperty","keepContentInDom","_isMounted","_globalStatus","isReady","updateWidth","current","width_element","width_selector","setMaxWidthToElement","element","widthElement","widthSelector","init","globalStatus","FormRow","formElement","provider","isReadyToGetVisible","label","add","status_id","getStatusId","item","item_id","message","status_anchor_label","status_anchor_url","createRef","_heightAnim","animate","no_animation","onStart","setState","isAnimating","onEnd","show","componentDidMount","document","readyState","window","addEventListener","componentWillUnmount","remove","removeEventListener","componentDidUpdate","prevProps","children","update","preventRestack","setElement","open","close","arguments","length","undefined","render","_this$context","_this$context2","_this$context3","_this$context3$theme","defaultProps","skeleton","rawState","variant","className","stretch","class","_className","text_id","role","rest","_objectWithoutProperties","_excluded","iconToRender","name","contentToRender","_cachedContent","hasStringContent","params","_objectSpread","String","startsWith","textParams","_extends","ref","attributes","process","env","NODE_ENV","propTypes","string","oneOfType","bool","func","node","oneOf","shape","object","width","height","viewBox","fill","_path","d","_path2","_path3","stroke","strokeWidth","strokeLinecap","strokeLinejoin","_path4","_path5","_path6","isSbankenTheme","fillRule","clipRule","_circle","cx","cy","r","_path7","xmlns","_path8","_ref2","getAttribute","replace","sumElementWidth","maxWidth","remWidth","style","getComputedStyle","hasCustomWidth","minWidth","e","_ref3","ids","split","reduce","acc","cur","elem","querySelector","getElementById","offsetWidth","test","parseFloat","_supportsSpacingProps"],"sources":["../../../../src/components/form-status/FormStatus.js"],"sourcesContent":["/**\n * Web FormStatus Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport Context from '../../shared/Context'\nimport {\n isTrue,\n makeUniqueId,\n validateDOMAttributes,\n processChildren,\n extendPropsWithContextInClassComponent,\n} from '../../shared/component-helper'\nimport HeightAnimationInstance from '../height-animation/HeightAnimationInstance'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport Icon from '../icon/Icon'\nimport GlobalStatusProvider from '../global-status/GlobalStatusProvider'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\n\nexport default class FormStatus extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n id: PropTypes.string,\n title: PropTypes.string,\n show: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n text: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n label: PropTypes.node,\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n icon_size: PropTypes.string,\n state: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.string,\n PropTypes.oneOf(['error', 'warn', 'info', 'marketing']),\n ]),\n variant: PropTypes.oneOf(['flat', 'outlined']),\n size: PropTypes.oneOf(['default', 'large']),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n attributes: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n text_id: PropTypes.string,\n width_selector: PropTypes.string,\n width_element: PropTypes.object,\n class: PropTypes.string,\n no_animation: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n role: PropTypes.string,\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n }\n\n static defaultProps = {\n id: null,\n title: null,\n show: true,\n text: null,\n globalStatus: null,\n label: null,\n icon: 'error',\n icon_size: 'medium',\n size: 'default',\n variant: null,\n state: 'error',\n attributes: null,\n text_id: null,\n width_selector: null,\n width_element: null,\n class: null,\n no_animation: null,\n skeleton: null,\n stretch: null,\n role: null,\n className: null,\n children: null,\n }\n\n static getContent(props) {\n if (props.text) {\n if (isTrue(props.text)) {\n return null\n }\n return props.text\n }\n return processChildren(props)\n }\n\n static correctStatus(state) {\n switch (state) {\n case 'information':\n state = 'info'\n break\n case 'warning':\n state = 'warn'\n break\n }\n return state\n }\n\n static getIcon({ state, icon, icon_size, theme }) {\n if (typeof icon !== 'string') {\n return icon\n }\n\n let IconToLoad = icon\n\n switch (FormStatus.correctStatus(state)) {\n case 'info':\n case 'success':\n IconToLoad = InfoIcon\n break\n case 'warn':\n IconToLoad = WarnIcon\n break\n case 'marketing':\n IconToLoad = MarketingIcon\n break\n case 'error':\n default:\n IconToLoad = ErrorIcon\n }\n\n return (\n <Icon\n icon={<IconToLoad title={null} state={state} theme={theme} />}\n size={icon_size}\n inherit_color={false}\n />\n )\n }\n\n static getDerivedStateFromProps(props, state) {\n if (state._id !== props.id && props.id) {\n state.id = props.id\n }\n\n state._id = props.id\n\n return state\n }\n\n state = { id: null, keepContentInDom: null }\n\n constructor(props, context) {\n super(props)\n\n // we do not use a random ID here, as we don't need it for now\n this.state.id = props.id || makeUniqueId()\n\n this._globalStatus = GlobalStatusProvider.init(\n props?.globalStatus?.id ||\n context?.FormStatus?.globalStatus?.id ||\n context?.FormRow?.globalStatus?.id ||\n context?.formElement?.globalStatus?.id ||\n 'main',\n (provider) => {\n // gets called once ready\n if (this.props.state === 'error' && this.isReadyToGetVisible()) {\n const { state, text, globalStatus, label } = this.props\n provider.add({\n state,\n status_id: this.getStatusId(),\n item: {\n item_id: this.state.id,\n text: globalStatus?.message || text,\n status_anchor_label: label,\n status_anchor_url: true,\n },\n })\n }\n }\n )\n\n this._ref = React.createRef()\n\n this._heightAnim = new HeightAnimationInstance({\n animate: props.no_animation === false,\n\n /** TODO: consider to enable animation by default */\n // animate: !isTrue(props.no_animation),\n })\n\n this._heightAnim.onStart(() => {\n this.setState({\n isAnimating: true,\n keepContentInDom: true,\n })\n })\n\n this._heightAnim.onEnd(() => {\n this.setState({\n isAnimating: false,\n keepContentInDom: isTrue(this.props.show),\n })\n })\n }\n\n init = () => {\n if (this._isMounted) {\n this._globalStatus.isReady()\n\n this.updateWidth()\n }\n }\n\n componentDidMount() {\n this._isMounted = true\n if (document.readyState === 'complete') {\n this.init()\n } else if (typeof window !== 'undefined') {\n window.addEventListener('load', this.init)\n }\n if (typeof window !== 'undefined') {\n window.addEventListener('resize', this.updateWidth)\n }\n }\n\n componentWillUnmount() {\n this._isMounted = false\n const status_id = this.getStatusId()\n this._globalStatus.remove(status_id)\n if (typeof window !== 'undefined') {\n window.removeEventListener('load', this.init)\n window.removeEventListener('resize', this.updateWidth)\n }\n this._heightAnim.remove()\n }\n\n componentDidUpdate(prevProps) {\n const { state, show, text, globalStatus, children, label } = this.props\n\n if (\n prevProps.text !== text ||\n prevProps.children !== children ||\n prevProps.show !== show ||\n prevProps.state !== state\n ) {\n // ensure we update the content\n this.setState({ keepContentInDom: false })\n\n if (state === 'error') {\n const status_id = this.getStatusId()\n\n if (isTrue(show)) {\n this._globalStatus.update(\n status_id,\n {\n state,\n status_id,\n item: {\n item_id: this.state.id,\n text: globalStatus?.message || text,\n status_anchor_label: label,\n status_anchor_url: true,\n },\n },\n {\n preventRestack: true, // because of the internal \"close\"\n }\n )\n } else if (!FormStatus.getContent(this.props)) {\n const status_id = this.getStatusId()\n this._globalStatus.remove(status_id)\n }\n }\n\n if (this.isReadyToGetVisible()) {\n this.updateWidth()\n this._heightAnim.setElement(this._ref.current)\n this._heightAnim.open()\n } else {\n this._heightAnim.close()\n }\n }\n }\n\n getStatusId() {\n return `${this.state.id}-gs`\n }\n\n updateWidth = () => {\n // set max-width to this form-status, using the \"linked mother\"\n if (this._ref.current) {\n const { width_element, width_selector } = this.props\n setMaxWidthToElement({\n element: this._ref.current,\n widthElement: width_element && width_element.current,\n widthSelector: width_selector,\n })\n }\n }\n\n isReadyToGetVisible(props = this.props) {\n return isTrue(props.show) && FormStatus.getContent(props)\n ? true\n : false\n }\n\n render() {\n const isReadyToGetVisible = this.isReadyToGetVisible()\n\n if (!isReadyToGetVisible && !this.state.keepContentInDom) {\n return null\n }\n\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n FormStatus.defaultProps,\n { skeleton: this.context && this.context.skeleton },\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.FormStatus\n )\n\n const {\n show, // eslint-disable-line\n title,\n state: rawState,\n size,\n variant,\n className,\n no_animation,\n stretch,\n class: _className,\n text_id,\n\n label, // eslint-disable-line\n status_id, // eslint-disable-line\n globalStatus, // eslint-disable-line\n id, // eslint-disable-line\n text, // eslint-disable-line\n icon, // eslint-disable-line\n icon_size, // eslint-disable-line\n skeleton, // eslint-disable-line\n children, // eslint-disable-line\n role,\n\n ...rest\n } = props\n\n const state = FormStatus.correctStatus(rawState)\n const iconToRender = FormStatus.getIcon({\n state,\n icon,\n icon_size,\n theme: this.context?.theme?.name,\n })\n\n const contentToRender =\n this.state.keepContentInDom && this._cachedContent\n ? this._cachedContent\n : FormStatus.getContent(this.props)\n\n // Add a cache, we use this during the \"hide\" period when animating\n if (!this.state.isAnimating) {\n this._cachedContent = contentToRender\n }\n\n const hasStringContent =\n typeof contentToRender === 'string' && contentToRender.length > 0\n\n const params = {\n className: classnames(\n 'dnb-form-status',\n `dnb-form-status--${state}`,\n `dnb-form-status__size--${size}`,\n variant && `dnb-form-status__variant--${variant}`,\n this.state.isAnimating && 'dnb-form-status--is-animating',\n !isReadyToGetVisible &&\n !this.state.keepContentInDom &&\n 'dnb-form-status--hidden',\n !isReadyToGetVisible &&\n this.state.keepContentInDom &&\n 'dnb-form-status--disappear',\n isTrue(no_animation) && 'dnb-form-status--no-animation',\n stretch && 'dnb-form-status--stretch',\n hasStringContent ? 'dnb-form-status--has-content' : null,\n createSpacingClasses(props),\n className,\n _className\n ),\n id: !String(id).startsWith('null') ? this.state.id : null,\n title,\n role,\n ...rest,\n }\n\n if (!role) {\n switch (state) {\n case 'info':\n params.role = 'status'\n break\n default:\n params.role = 'alert'\n }\n }\n\n const textParams = {\n className: classnames(\n 'dnb-form-status__text',\n createSkeletonClass('font', skeleton, this.context)\n ),\n id: !String(text_id).startsWith('null') ? text_id : null,\n }\n\n skeletonDOMAttributes(params, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n validateDOMAttributes(null, textParams)\n\n return (\n <span {...params} ref={this._ref}>\n <span className=\"dnb-form-status__shell\">\n {iconToRender}\n <span {...textParams}>{contentToRender}</span>\n </span>\n </span>\n )\n }\n}\n\nexport const ErrorIcon = (props) => (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n {props && props.title && <title>{props.title}</title>}\n <path\n d=\"M23.625 17.864A3.547 3.547 0 0120.45 23H3.548a3.546 3.546 0 01-3.172-5.136l8.45-14.902a3.548 3.548 0 016.347 0l8.452 14.902z\"\n fill=\"#DC2A2A\"\n />\n <path\n d=\"M12 16.286a1.286 1.286 0 100 2.572 1.286 1.286 0 000-2.572z\"\n fill=\"#fff\"\n />\n <path\n d=\"M12 13.818v-5\"\n stroke=\"#fff\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n)\nErrorIcon.propTypes = {\n title: PropTypes.string,\n}\nErrorIcon.defaultProps = {\n title: 'error',\n}\n\nexport const WarnIcon = (props) => (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n {props && props.title && <title>{props.title}</title>}\n <path\n d=\"M23.625 17.864A3.547 3.547 0 0120.45 23H3.548a3.546 3.546 0 01-3.172-5.136l8.45-14.902a3.548 3.548 0 016.347 0l8.452 14.902z\"\n fill=\"#FDBB31\"\n />\n <path\n d=\"M12 16.286a1.286 1.286 0 100 2.572 1.286 1.286 0 000-2.572z\"\n fill=\"#333\"\n />\n <path\n d=\"M12 13.818v-5\"\n stroke=\"#333\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n)\nWarnIcon.propTypes = {\n title: PropTypes.string,\n}\nWarnIcon.defaultProps = {\n title: 'error',\n}\n\nexport const InfoIcon = (props) => {\n const isSbankenTheme = props && props?.theme === 'sbanken'\n let fill = isSbankenTheme ? '#000' : '#007272'\n if (props && props?.state === 'success') {\n fill = isSbankenTheme ? '#02A56A' : '#28B482'\n }\n\n return (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n {props && props.title && <title>{props.title}</title>}\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M11.268 0a11.25 11.25 0 105.566 21.017l6.112 2.91a.75.75 0 001-1l-2.911-6.112A11.234 11.234 0 0011.268 0z\"\n fill={fill}\n />\n <circle cx=\"11\" cy=\"6.5\" r=\".5\" fill=\"#fff\" stroke=\"#fff\" />\n <path\n d=\"M13.75 16H13a1.5 1.5 0 01-1.5-1.5v-3.75a.75.75 0 00-.75-.75H10\"\n stroke=\"#fff\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n )\n}\nInfoIcon.propTypes = {\n title: PropTypes.string,\n state: PropTypes.string,\n theme: PropTypes.string,\n}\nInfoIcon.defaultProps = {\n title: 'info',\n state: 'info',\n theme: 'ui',\n}\n\nexport const MarketingIcon = (props) => (\n <svg\n width=\"24\"\n height=\"24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n {props && props.title && <title>{props.title}</title>}\n <path\n d=\"M6 15.25H4.5c-2.042 0-3.75-1.707-3.75-3.75S2.458 7.75 4.5 7.75H6v7.5ZM7.5 15.25c4.801 0 8.846 1.897 12.75 4.5V3.25c-3.904 2.603-7.949 4.5-12.75 4.5v7.5ZM23.25 10a.75.75 0 0 0-1.5 0h1.5Zm-1.5 3a.75.75 0 0 0 1.5 0h-1.5ZM8.483 21.043a.75.75 0 1 0 1.034-1.086l-1.034 1.086ZM21.75 10v3h1.5v-3h-1.5ZM6 15.25a8.058 8.058 0 0 0 2.483 5.793l1.034-1.086A6.559 6.559 0 0 1 7.5 15.25H6Z\"\n fill=\"#333\"\n />\n </svg>\n)\nMarketingIcon.propTypes = {\n title: PropTypes.string,\n}\nMarketingIcon.defaultProps = {\n title: 'marketing',\n}\n\nexport function setMaxWidthToElement({\n element,\n id = null,\n widthElement = null,\n widthSelector = null,\n}) {\n if (!(element && typeof window !== 'undefined')) {\n return // stop here\n }\n try {\n if (!id && !widthSelector) {\n id = element.getAttribute('id')\n }\n widthSelector = widthSelector || id?.replace('-form-status', '') || id\n\n let width = sumElementWidth({\n widthElement,\n widthSelector,\n })\n\n if (width > 40) {\n const maxWidth = 30 * 16 // use 12rem, because that's the default width in chrome for an input\n if (width < maxWidth) {\n width = maxWidth\n }\n\n const remWidth = `${width / 16}rem`\n\n const style = window.getComputedStyle(element)\n const hasCustomWidth = element.style.maxWidth\n ? false\n : (style.minWidth !== '' && style.minWidth !== 'auto') ||\n (style.maxWidth !== '' && style.maxWidth !== 'none')\n\n if (!hasCustomWidth) {\n element.style.maxWidth = remWidth\n }\n }\n } catch (e) {\n // skip logging\n }\n}\n\nfunction sumElementWidth({ widthElement, widthSelector }) {\n let width = 0\n if (typeof document === 'undefined') {\n return width // stop here\n }\n try {\n // beside \"selector\" - which is straight forward, we\n // also check if we can get an ID given by text_id\n const ids = widthElement\n ? [widthElement]\n : widthSelector.split(/, |,/g)\n\n width = ids.reduce((acc, cur) => {\n const elem =\n typeof cur === 'string'\n ? cur[0] === '.'\n ? document.querySelector(cur)\n : document.getElementById(cur)\n : cur\n\n let width =\n (elem && elem.offsetWidth) || window.getComputedStyle(elem).width\n if (/em|rem/.test(width)) {\n width = parseFloat(width) * 16\n }\n\n if (width > 0) {\n // add additional one more spacing unit\n // to make it more correct for small elements\n if (acc > 0) {\n acc += 16\n }\n acc += width\n }\n\n return acc\n }, width)\n } catch (e) {\n // skip logging\n }\n\n return width\n}\n\nFormStatus._supportsSpacingProps = true\n"],"mappings":"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"}
|