@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","skip","_objectSpread","Object","fromEntries","entries","filter","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","_ref","_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":";;;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,KAAK,MAAM,gBAAgB;AAClC,SAASC,EAAE,QAAQ,gBAAgB;AACnC,OAAOC,QAAQ,MAAM,uBAAuB;AAC5C,SACEC,aAAa,EACbC,gBAAgB,EAChBC,iBAAiB,QACZ,SAAS;AA2ChB,MAAMC,SAA6B,GAAG,CACpC,WAAW,EACX,MAAM,EACN,SAAS,EACT,OAAO,EACP,SAAS,EACT,SAAS,CACV;AAED,OAAO,SAASC,sBAAsBA,CACpCC,KAAQ,EACRC,QAAwB,GAAG,CAAC,CAAC,EAC7BC,IAAwB,GAAG,EAAE,EACJ;EACzB,OAAAC,aAAA,CAAAA,aAAA,KACKF,QAAQ,GACRG,MAAM,CAACC,WAAW,CACnBD,MAAM,CAACE,OAAO,CAACN,KAAK,aAALA,KAAK,cAALA,KAAK,GAAI,CAAC,CAAC,CAAC,CAACO,MAAM,CAChC,CAAC,CAACC,GAAG,CAAC,KACJV,SAAS,CAACW,QAAQ,CAACD,GAAkB,CAAC,IACtC,CAACN,IAAI,CAACO,QAAQ,CAACD,GAAkB,CACrC,CACF,CAAC;AAEL;AAEA,SAASE,aAAaA,CAACV,KAAY,EAAE;EACnC,MAAM;MACJW,SAAS;MACTC,KAAK;MACLC,QAAQ;MACRC,OAAO,GAAG,KAAK;MACfC,SAAS,GAAG,YAAY;MACxBC,IAAI,GAAG,IAAI;MACXC,SAAS,GAAG,EAAE;MACdC,MAAM;MACNC,OAAO,GAAG,YAAY;MACtBC,KAAK,GAAG,YAAY;MACpBC,SAAS;MACTC,OAAO,GAAG,OAAO;MACjBC,OAAO,GAAG,OAAO;MACjBC,WAAW;MACXC;IAEF,CAAC,GAAGzB,KAAK;IADJ0B,IAAI,GAAAC,wBAAA,CACL3B,KAAK,EAAA4B,SAAA;EAET,MAAMC,aAAa,GAAGvC,KAAK,CAACwC,QAAQ,CAACC,OAAO,CAAClB,QAAQ,CAAC;EACtD,MAAMmB,UAAU,GAAGH,aAAa,CAACI,IAAI,CAAC,CAACC,KAAK,EAAEC,CAAC,KAAK;IAClD,MAAMC,aAAa,GAAGP,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAGM,CAAC,GAAG,CAAC,CAAC;IAC5C,OACEvC,gBAAgB,CAACsC,KAAK,CAAC,IAAKC,CAAC,GAAG,CAAC,IAAIvC,gBAAgB,CAACwC,aAAa,CAAE;EAEzE,CAAC,CAAC;EACF,MAAMC,WAAW,GACf,CAACL,UAAU,IACXjB,SAAS,KAAK,YAAY,IAC1Bc,aAAa,CAACI,IAAI,CAAEC,KAAK;IAAA,IAAAI,YAAA;IAAA,QAAAA,YAAA,GAAKJ,KAAK,CAAC,OAAO,CAAC,cAAAI,YAAA,uBAAdA,YAAA,CAAgBC,IAAI;EAAA,EAAC;EAErD,MAAM;IAAE/B,GAAG,EAAEgC;EAAS,CAAC,GAAG9C,QAAQ,CAAC;IACjC+C,QAAQ,EAAE,CAACJ,WAAW;IACtBb,WAAW;IACXC;EACF,CAAC,CAAC;EAEF,MAAMiB,OAAO,GAAGb,aAAa,CAACc,GAAG,CAAC,CAACT,KAAK,EAAEC,CAAC,KAAK;IAI9C,MAAMS,OAAO,GAAGT,CAAC,KAAK,CAAC;IACvB,MAAMC,aAAa,GAAGP,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAGM,CAAC,GAAG,CAAC,CAAC;IAI5C,MAAMU,KAAY,GAAG9B,SAAS,KAAK,YAAY,GAAG,MAAM,GAAG,KAAK;IAChE,MAAM+B,GAAQ,GAAG/B,SAAS,KAAK,YAAY,GAAG,OAAO,GAAG,QAAQ;IAGhE,MAAMgC,UAAU,GAAG,CAAC;IACpB,IAAIC,YAAY,GAAG,IAAI;IAEvB,IACE1B,OAAO,KAAK,MAAM,IAElB,CAACsB,OAAO,IAER,CAACZ,UAAU,EACX;MAAA,IAAAiB,cAAA,EAAAC,eAAA;MACA,MAAMC,cAAc,IAAAF,cAAA,GAAGtD,aAAa,CAACmD,GAAG,EAAEV,aAAa,CAAC,cAAAa,cAAA,cAAAA,cAAA,GAAI1B,OAAO;MACnEyB,YAAY,IAAAE,eAAA,GAAIvD,aAAa,CAACkD,KAAK,EAAEX,KAAK,CAAC,cAAAgB,eAAA,cAAAA,eAAA,GAAI3B,OAAqB;MAEpE,OACEjC,KAAA,CAAA8D,aAAA,CAAC9D,KAAK,CAAC+D,QAAQ;QAAC7C,GAAG,EAAG,WAAU2B,CAAE;MAAE,GAClC7C,KAAA,CAAA8D,aAAA,CAAC5D,KAAK;QAAC8D,GAAG,EAAEH;MAAe,CAAE,CAAC,EAAAI,GAAA,KAAAA,GAAA,GAC9BjE,KAAA,CAAA8D,aAAA,CAAC3D,EAAE;QAAC+D,KAAK,EAAE;MAAE,CAAE,CAAC,GACf3D,iBAAiB,CAACqC,KAAK,EAAE;QACxBsB,KAAK,EAAE;UAAE,CAACX,KAAK,GAAGG,YAAY;UAAE,CAACF,GAAG,GAAGC;QAAW;MACpD,CAAC,CACa,CAAC;IAErB;IAGA,IAAIH,OAAO,IAAI7B,SAAS,KAAK,YAAY,EAAE;MACzCiC,YAAY,GAAG,CAAC;IAClB,CAAC,MAAM;MAAA,IAAAS,IAAA,EAAAC,eAAA;MAELV,YAAY,IAAAS,IAAA,IAAAC,eAAA,GACV/D,aAAa,CAACkD,KAAK,EAAEX,KAAK,CAAC,cAAAwB,eAAA,cAAAA,eAAA,GAC3B/D,aAAa,CAACmD,GAAG,EAAEV,aAAa,CAAC,cAAAqB,IAAA,cAAAA,IAAA,GACjClC,OAAO;IACX;IAEA,MAAMiC,KAAK,GACTzC,SAAS,KAAK,YAAY,GACtB;MAAE,CAAC8B,KAAK,GAAGE,UAAU;MAAE,CAACD,GAAG,GAAGE;IAAa,CAAC,GAC5C;MAAE,CAACH,KAAK,GAAGG,YAAY;MAAE,CAACF,GAAG,GAAGC;IAAW,CAAC;IAElD,OAAOlD,iBAAiB,CAACqC,KAAK,EAAE;MAC9B1B,GAAG,EAAG,WAAU2B,CAAE,EAAC;MACnBqB;IACF,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,MAAMG,CAAC,GAAG,oBAAoB;EAC9B,MAAMC,EAAE,GAAGrE,UAAU,CACnB,oBAAoB,EAUpBoB,SAAS,EATTI,SAAS,IAAK,GAAE4C,CAAE,eAAc5C,SAAU,EAAC,EAC3CI,OAAO,IAAK,GAAEwC,CAAE,aAAYxC,OAAQ,EAAC,EACrCC,KAAK,IAAK,GAAEuC,CAAE,WAAUvC,KAAM,EAAC,EAC/BC,SAAS,IAAK,GAAEsC,CAAE,gBAAetC,SAAU,EAAC,EAC5CE,OAAO,IAAK,GAAEoC,CAAE,aAAYpC,OAAQ,EAAC,EACrCP,IAAI,IAAK,GAAE2C,CAAE,QAAO,EACpBzC,MAAM,IAAK,GAAEyC,CAAE,aAAYzC,MAAM,KAAK,IAAI,GAAG,OAAO,GAAGA,MAAO,EAAC,EAC/DmB,WAAW,IAAK,GAAEsB,CAAE,YAAW,EAC/BrC,OAAO,IAAK,GAAEqC,CAAE,aAAYrC,OAAQ,EAEtC,CAAC;EAED,OACEhC,KAAA,CAAA8D,aAAA,CAAC5D,KAAK,EAAAqE,QAAA;IACJ/C,OAAO,EAAEA,OAAQ;IACjBH,SAAS,EAAEiD,EAAG;IACd,kBAAgBpB,QAAS;IACzB5B,KAAK,EACHyB,WAAW,GAAAlC,aAAA;MACJ,aAAa,EAAEc;IAAS,GAAKL,KAAK,IACrCA;EACL,GACGc,IAAI,GAEPgB,OACI,CAAC;AAEZ;AAEAhC,aAAa,CAACoD,qBAAqB,GAAG,IAAI;AAE1C,eAAepD,aAAa"}
|
|
1
|
+
{"version":3,"file":"Container.js","names":["React","classnames","Space","Hr","useMedia","getSpaceValue","isHeadingElement","renderWithSpacing","propNames","pickFlexContainerProps","props","defaults","skip","_objectSpread","Object","fromEntries","entries","filter","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","_ref","_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 };
|
|
@@ -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 };
|
|
@@ -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","k","v","attributes","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","k","v","attributes","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","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","_ref","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","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","length","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","getAttribute","replace","sumElementWidth","maxWidth","remWidth","style","getComputedStyle","hasCustomWidth","minWidth","e","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","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","_ref","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","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","length","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","getAttribute","replace","sumElementWidth","maxWidth","remWidth","style","getComputedStyle","hasCustomWidth","minWidth","e","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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"}
|