@dnb/eufemia 10.62.4 → 10.63.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 +52 -0
- package/cjs/components/accordion/Accordion.d.ts +1 -125
- package/cjs/components/accordion/Accordion.js +0 -1
- package/cjs/components/accordion/Accordion.js.map +1 -1
- package/cjs/components/autocomplete/Autocomplete.js +3 -2
- package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/button/Button.d.ts +3 -6
- package/cjs/components/button/Button.js +8 -18
- package/cjs/components/button/Button.js.map +1 -1
- package/cjs/components/button/ButtonDocs.d.ts +2 -0
- package/cjs/components/button/ButtonDocs.js +135 -0
- package/cjs/components/button/ButtonDocs.js.map +1 -0
- package/cjs/components/date-picker/DatePicker.d.ts +4 -0
- package/cjs/components/date-picker/DatePicker.js +24 -10
- package/cjs/components/date-picker/DatePicker.js.map +1 -1
- package/cjs/components/date-picker/DatePickerDocs.js +5 -0
- package/cjs/components/date-picker/DatePickerDocs.js.map +1 -1
- package/cjs/components/date-picker/DatePickerPortal.d.ts +9 -0
- package/cjs/components/date-picker/DatePickerPortal.js +61 -0
- package/cjs/components/date-picker/DatePickerPortal.js.map +1 -0
- package/cjs/components/date-picker/style/dnb-date-picker.css +64 -55
- package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
- package/cjs/components/date-picker/style/dnb-date-picker.scss +90 -75
- package/cjs/components/form-row/FormRow.js +2 -7
- package/cjs/components/form-row/FormRow.js.map +1 -1
- package/cjs/components/form-row/style/dnb-form-row.css +3 -3
- package/cjs/components/form-row/style/dnb-form-row.min.css +1 -1
- package/cjs/components/form-status/FormStatus.js +17 -19
- package/cjs/components/form-status/FormStatus.js.map +1 -1
- package/cjs/components/height-animation/HeightAnimationInstance.d.ts +1 -0
- package/cjs/components/height-animation/HeightAnimationInstance.js +26 -1
- package/cjs/components/height-animation/HeightAnimationInstance.js.map +1 -1
- package/cjs/components/input-masked/InputMasked.d.ts +1 -1
- package/cjs/components/input-masked/InputMasked.js +2 -2
- package/cjs/components/input-masked/InputMasked.js.map +1 -1
- package/cjs/components/input-masked/InputMaskedDocs.js +1 -1
- package/cjs/components/input-masked/InputMaskedDocs.js.map +1 -1
- package/cjs/components/input-masked/InputMaskedHooks.js +1 -1
- package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
- package/cjs/components/input-masked/InputMaskedUtils.js +1 -1
- package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
- package/cjs/components/input-masked/style/dnb-input-masked.css +3 -3
- package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/cjs/components/pagination/Pagination.d.ts +12 -0
- package/cjs/components/pagination/Pagination.js +7 -3
- package/cjs/components/pagination/Pagination.js.map +1 -1
- package/cjs/components/pagination/PaginationBar.d.ts +2 -1
- package/cjs/components/pagination/PaginationBar.js +10 -3
- package/cjs/components/pagination/PaginationBar.js.map +1 -1
- package/cjs/components/radio/style/dnb-radio.css +3 -3
- package/cjs/components/radio/style/dnb-radio.min.css +1 -1
- package/cjs/components/space/style/dnb-space.css +4 -4
- package/cjs/components/space/style/dnb-space.min.css +1 -1
- package/cjs/components/space/style/dnb-space.scss +2 -12
- package/cjs/components/space/style/space-mixins.scss +21 -0
- package/cjs/components/tabs/Tabs.d.ts +1 -1
- package/cjs/components/tabs/Tabs.js +4 -12
- package/cjs/components/tabs/Tabs.js.map +1 -1
- package/cjs/components/toggle-button/ToggleButton.d.ts +9 -5
- package/cjs/components/toggle-button/ToggleButton.js +2 -0
- package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
- package/cjs/components/toggle-button/ToggleButtonDocs.d.ts +2 -0
- package/cjs/components/toggle-button/ToggleButtonDocs.js +87 -0
- package/cjs/components/toggle-button/ToggleButtonDocs.js.map +1 -0
- package/cjs/components/toggle-button/ToggleButtonGroup.d.ts +21 -6
- package/cjs/components/toggle-button/ToggleButtonGroupDocs.d.ts +2 -0
- package/cjs/components/toggle-button/ToggleButtonGroupDocs.js +90 -0
- package/cjs/components/toggle-button/ToggleButtonGroupDocs.js.map +1 -0
- package/cjs/components/toggle-button/style/dnb-toggle-button.css +3 -3
- package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/cjs/elements/blockquote/style/blockquote-mixins.scss +5 -3
- package/cjs/elements/code/style/code-mixins.scss +2 -3
- package/cjs/elements/hr/style/hr-mixins.scss +2 -3
- package/cjs/elements/img/style/img-mixins.scss +3 -3
- package/cjs/elements/lists/style/lists-mixins.scss +3 -6
- package/cjs/elements/typography/style/typography-mixins.scss +2 -3
- package/cjs/extensions/forms/DataContext/Context.d.ts +15 -4
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
- package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +1 -1
- package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +28 -17
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/cjs/extensions/forms/Field/Date/Date.js +5 -4
- package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
- package/cjs/extensions/forms/Field/Expiry/Expiry.js +4 -3
- package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js +7 -7
- package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
- package/cjs/extensions/forms/Field/Number/Number.js +2 -2
- package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
- package/cjs/extensions/forms/Field/Option/Option.d.ts +2 -1
- package/cjs/extensions/forms/Field/Option/Option.js +2 -14
- package/cjs/extensions/forms/Field/Option/Option.js.map +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +10 -5
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +4 -3
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +12 -4
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/Selection.d.ts +8 -1
- package/cjs/extensions/forms/Field/Selection/Selection.js +19 -12
- package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/SelectionDocs.js +5 -0
- package/cjs/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/Slider/Slider.js +4 -3
- package/cjs/extensions/forms/Field/Slider/Slider.js.map +1 -1
- package/cjs/extensions/forms/Field/String/String.js +2 -2
- package/cjs/extensions/forms/Field/String/String.js.map +1 -1
- package/cjs/extensions/forms/Field/Toggle/Toggle.js +14 -4
- package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/cjs/extensions/forms/Field/Upload/Upload.js +21 -21
- package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js +14 -38
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
- package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/cjs/extensions/forms/Form/Isolation/Isolation.js +17 -3
- package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/cjs/extensions/forms/Form/MainHeading/MainHeadingDocs.d.ts +2 -0
- package/cjs/extensions/forms/Form/MainHeading/MainHeadingDocs.js +27 -0
- package/cjs/extensions/forms/Form/MainHeading/MainHeadingDocs.js.map +1 -0
- package/cjs/extensions/forms/Form/Section/EditContainer/CancelButton.js +7 -18
- package/cjs/extensions/forms/Form/Section/EditContainer/CancelButton.js.map +1 -1
- package/cjs/extensions/forms/Form/SubHeading/SubHeadingDocs.d.ts +2 -0
- package/cjs/extensions/forms/Form/SubHeading/SubHeadingDocs.js +27 -0
- package/cjs/extensions/forms/Form/SubHeading/SubHeadingDocs.js.map +1 -0
- package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +11 -1
- package/cjs/extensions/forms/Form/Visibility/Visibility.js +18 -10
- package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/cjs/extensions/forms/Form/Visibility/VisibilityContext.d.ts +2 -0
- package/cjs/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
- package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
- package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
- package/cjs/extensions/forms/Form/Visibility/useVisibility.js +18 -9
- package/cjs/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Array/Array.js +49 -29
- package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Array/ArrayDocs.js +14 -4
- package/cjs/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Array/types.d.ts +8 -3
- package/cjs/extensions/forms/Iterate/Array/types.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.js +5 -15
- package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/DoneButton.js +10 -1
- package/cjs/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js +1 -3
- package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ItemNo/useIItemNo.d.ts +5 -0
- package/cjs/extensions/forms/Iterate/ItemNo/useIItemNo.js +50 -0
- package/cjs/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +1 -0
- package/cjs/extensions/forms/Iterate/IterateItemContext.d.ts +2 -0
- package/cjs/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushButton/PushButton.d.ts +1 -0
- package/cjs/extensions/forms/Iterate/PushButton/PushButton.js +16 -14
- package/cjs/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushButton/PushButtonDocs.js +5 -0
- package/cjs/extensions/forms/Iterate/PushButton/PushButtonDocs.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +17 -1
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +30 -15
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainerContext.d.ts +1 -0
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainerContext.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +10 -0
- package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
- package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +7 -6
- package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -0
- package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Visibility/Visibility.d.ts +7 -0
- package/cjs/extensions/forms/Iterate/Visibility/Visibility.js +31 -0
- package/cjs/extensions/forms/Iterate/Visibility/Visibility.js.map +1 -0
- package/cjs/extensions/forms/Iterate/Visibility/index.d.ts +2 -0
- package/cjs/extensions/forms/Iterate/Visibility/index.js +27 -0
- package/cjs/extensions/forms/Iterate/Visibility/index.js.map +1 -0
- package/cjs/extensions/forms/Iterate/hooks/index.d.ts +1 -0
- package/cjs/extensions/forms/Iterate/hooks/index.js +7 -0
- package/cjs/extensions/forms/Iterate/hooks/index.js.map +1 -1
- package/cjs/extensions/forms/Iterate/hooks/useArrayLimit.d.ts +1 -3
- package/cjs/extensions/forms/Iterate/hooks/useArrayLimit.js +1 -4
- package/cjs/extensions/forms/Iterate/hooks/useArrayLimit.js.map +1 -1
- package/cjs/extensions/forms/Iterate/hooks/useItemPath.d.ts +4 -0
- package/cjs/extensions/forms/Iterate/hooks/useItemPath.js +22 -0
- package/cjs/extensions/forms/Iterate/hooks/useItemPath.js.map +1 -0
- package/cjs/extensions/forms/Iterate/hooks/useSwitchContainerMode.d.ts +1 -3
- package/cjs/extensions/forms/Iterate/hooks/useSwitchContainerMode.js +1 -4
- package/cjs/extensions/forms/Iterate/hooks/useSwitchContainerMode.js.map +1 -1
- package/cjs/extensions/forms/Iterate/index.d.ts +1 -0
- package/cjs/extensions/forms/Iterate/index.js +7 -0
- package/cjs/extensions/forms/Iterate/index.js.map +1 -1
- package/cjs/extensions/forms/Tools/GenerateSchema.js +15 -9
- package/cjs/extensions/forms/Tools/GenerateSchema.js.map +1 -1
- package/cjs/extensions/forms/Tools/ListAllProps.js +11 -7
- package/cjs/extensions/forms/Tools/ListAllProps.js.map +1 -1
- package/cjs/extensions/forms/Tools/Log.js +2 -1
- package/cjs/extensions/forms/Tools/Log.js.map +1 -1
- package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js +4 -4
- package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
- package/cjs/extensions/forms/Value/Selection/Selection.js +5 -5
- package/cjs/extensions/forms/Value/Selection/Selection.js.map +1 -1
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js +25 -7
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +6 -1
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.scss +22 -10
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +6 -3
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +2 -1
- package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +4 -3
- package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -1
- package/cjs/extensions/forms/hooks/DataValueWritePropsDocs.js +9 -9
- package/cjs/extensions/forms/hooks/DataValueWritePropsDocs.js.map +1 -1
- package/cjs/extensions/forms/hooks/useDataValue.d.ts +2 -2
- package/cjs/extensions/forms/hooks/useDataValue.js +5 -9
- package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/cjs/extensions/forms/hooks/useExternalValue.js.map +1 -1
- package/cjs/extensions/forms/hooks/useFieldProps.d.ts +8 -2
- package/cjs/extensions/forms/hooks/useFieldProps.js +164 -76
- package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/cjs/extensions/forms/hooks/usePath.js.map +1 -1
- package/cjs/extensions/forms/hooks/useValueProps.js +5 -5
- package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/cjs/extensions/forms/style/dnb-forms.css +9 -4
- package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
- package/cjs/extensions/forms/types.d.ts +33 -6
- package/cjs/extensions/forms/types.js.map +1 -1
- package/cjs/extensions/forms/utils/json-pointer/json-pointer.js +8 -0
- package/cjs/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -1
- package/cjs/extensions/payment-card/PaymentCard.js +3 -12
- package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerList.d.ts +4 -2
- package/cjs/fragments/drawer-list/DrawerList.js +33 -47
- package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListDocs.js +3 -3
- package/cjs/fragments/drawer-list/DrawerListDocs.js.map +1 -1
- package/cjs/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
- package/cjs/shared/AlignmentHelper.js +0 -4
- package/cjs/shared/AlignmentHelper.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/component-helper.js +2 -1
- package/cjs/shared/component-helper.js.map +1 -1
- package/cjs/style/core/scopes.scss +1 -1
- package/cjs/style/core/utilities.scss +3 -12
- package/cjs/style/dnb-ui-basis.css +1 -1
- package/cjs/style/dnb-ui-basis.min.css +1 -1
- package/cjs/style/dnb-ui-body.css +1 -1
- package/cjs/style/dnb-ui-body.min.css +1 -1
- package/cjs/style/dnb-ui-components.css +90 -76
- package/cjs/style/dnb-ui-components.min.css +4 -4
- package/cjs/style/dnb-ui-core.css +1 -1
- package/cjs/style/dnb-ui-core.min.css +1 -1
- package/cjs/style/dnb-ui-elements.css +151 -31
- package/cjs/style/dnb-ui-elements.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.css +9 -4
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/dnb-ui-forms.css +9 -4
- package/cjs/style/dnb-ui-forms.min.css +1 -1
- package/cjs/style/dnb-ui-fragments.css +1 -1
- package/cjs/style/dnb-ui-fragments.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +151 -31
- package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +99 -80
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
- package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +151 -31
- package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +9 -4
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +9 -4
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +151 -31
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +99 -80
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +151 -31
- package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +9 -4
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +9 -4
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-basis.css +151 -31
- package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +99 -80
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +4 -4
- package/cjs/style/themes/theme-ui/ui-theme-elements.css +151 -31
- package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +9 -4
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-forms.css +9 -4
- package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-tags.css +100 -19
- package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/components/accordion/Accordion.d.ts +1 -125
- package/components/accordion/Accordion.js +0 -1
- package/components/accordion/Accordion.js.map +1 -1
- package/components/autocomplete/Autocomplete.js +3 -2
- package/components/autocomplete/Autocomplete.js.map +1 -1
- package/components/button/Button.d.ts +3 -6
- package/components/button/Button.js +8 -18
- package/components/button/Button.js.map +1 -1
- package/components/button/ButtonDocs.d.ts +2 -0
- package/components/button/ButtonDocs.js +128 -0
- package/components/button/ButtonDocs.js.map +1 -0
- package/components/date-picker/DatePicker.d.ts +4 -0
- package/components/date-picker/DatePicker.js +25 -11
- package/components/date-picker/DatePicker.js.map +1 -1
- package/components/date-picker/DatePickerDocs.js +5 -0
- package/components/date-picker/DatePickerDocs.js.map +1 -1
- package/components/date-picker/DatePickerPortal.d.ts +9 -0
- package/components/date-picker/DatePickerPortal.js +53 -0
- package/components/date-picker/DatePickerPortal.js.map +1 -0
- package/components/date-picker/style/dnb-date-picker.css +64 -55
- package/components/date-picker/style/dnb-date-picker.min.css +1 -1
- package/components/date-picker/style/dnb-date-picker.scss +90 -75
- package/components/form-row/FormRow.js +2 -7
- package/components/form-row/FormRow.js.map +1 -1
- package/components/form-row/style/dnb-form-row.css +3 -3
- package/components/form-row/style/dnb-form-row.min.css +1 -1
- package/components/form-status/FormStatus.js +17 -19
- package/components/form-status/FormStatus.js.map +1 -1
- package/components/height-animation/HeightAnimationInstance.d.ts +1 -0
- package/components/height-animation/HeightAnimationInstance.js +26 -1
- package/components/height-animation/HeightAnimationInstance.js.map +1 -1
- package/components/input-masked/InputMasked.d.ts +1 -1
- package/components/input-masked/InputMasked.js +2 -2
- package/components/input-masked/InputMasked.js.map +1 -1
- package/components/input-masked/InputMaskedDocs.js +1 -1
- package/components/input-masked/InputMaskedDocs.js.map +1 -1
- package/components/input-masked/InputMaskedHooks.js +1 -1
- package/components/input-masked/InputMaskedHooks.js.map +1 -1
- package/components/input-masked/InputMaskedUtils.js +1 -1
- package/components/input-masked/InputMaskedUtils.js.map +1 -1
- package/components/input-masked/style/dnb-input-masked.css +3 -3
- package/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/components/pagination/Pagination.d.ts +12 -0
- package/components/pagination/Pagination.js +7 -3
- package/components/pagination/Pagination.js.map +1 -1
- package/components/pagination/PaginationBar.d.ts +2 -1
- package/components/pagination/PaginationBar.js +10 -3
- package/components/pagination/PaginationBar.js.map +1 -1
- package/components/radio/style/dnb-radio.css +3 -3
- package/components/radio/style/dnb-radio.min.css +1 -1
- package/components/space/style/dnb-space.css +4 -4
- package/components/space/style/dnb-space.min.css +1 -1
- package/components/space/style/dnb-space.scss +2 -12
- package/components/space/style/space-mixins.scss +21 -0
- package/components/tabs/Tabs.d.ts +1 -1
- package/components/tabs/Tabs.js +4 -12
- package/components/tabs/Tabs.js.map +1 -1
- package/components/toggle-button/ToggleButton.d.ts +9 -5
- package/components/toggle-button/ToggleButton.js +2 -0
- package/components/toggle-button/ToggleButton.js.map +1 -1
- package/components/toggle-button/ToggleButtonDocs.d.ts +2 -0
- package/components/toggle-button/ToggleButtonDocs.js +80 -0
- package/components/toggle-button/ToggleButtonDocs.js.map +1 -0
- package/components/toggle-button/ToggleButtonGroup.d.ts +21 -6
- package/components/toggle-button/ToggleButtonGroupDocs.d.ts +2 -0
- package/components/toggle-button/ToggleButtonGroupDocs.js +83 -0
- package/components/toggle-button/ToggleButtonGroupDocs.js.map +1 -0
- package/components/toggle-button/style/dnb-toggle-button.css +3 -3
- package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/elements/blockquote/style/blockquote-mixins.scss +5 -3
- package/elements/code/style/code-mixins.scss +2 -3
- package/elements/hr/style/hr-mixins.scss +2 -3
- package/elements/img/style/img-mixins.scss +3 -3
- package/elements/lists/style/lists-mixins.scss +3 -6
- package/elements/typography/style/typography-mixins.scss +2 -3
- package/es/components/accordion/Accordion.d.ts +1 -125
- package/es/components/accordion/Accordion.js +0 -1
- package/es/components/accordion/Accordion.js.map +1 -1
- package/es/components/autocomplete/Autocomplete.js +3 -2
- package/es/components/autocomplete/Autocomplete.js.map +1 -1
- package/es/components/button/Button.d.ts +3 -6
- package/es/components/button/Button.js +8 -18
- package/es/components/button/Button.js.map +1 -1
- package/es/components/button/ButtonDocs.d.ts +2 -0
- package/es/components/button/ButtonDocs.js +128 -0
- package/es/components/button/ButtonDocs.js.map +1 -0
- package/es/components/date-picker/DatePicker.d.ts +4 -0
- package/es/components/date-picker/DatePicker.js +25 -11
- package/es/components/date-picker/DatePicker.js.map +1 -1
- package/es/components/date-picker/DatePickerDocs.js +5 -0
- package/es/components/date-picker/DatePickerDocs.js.map +1 -1
- package/es/components/date-picker/DatePickerPortal.d.ts +9 -0
- package/es/components/date-picker/DatePickerPortal.js +52 -0
- package/es/components/date-picker/DatePickerPortal.js.map +1 -0
- package/es/components/date-picker/style/dnb-date-picker.css +64 -55
- package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
- package/es/components/date-picker/style/dnb-date-picker.scss +90 -75
- package/es/components/form-row/FormRow.js +2 -7
- package/es/components/form-row/FormRow.js.map +1 -1
- package/es/components/form-row/style/dnb-form-row.css +3 -3
- package/es/components/form-row/style/dnb-form-row.min.css +1 -1
- package/es/components/form-status/FormStatus.js +17 -19
- package/es/components/form-status/FormStatus.js.map +1 -1
- package/es/components/height-animation/HeightAnimationInstance.d.ts +1 -0
- package/es/components/height-animation/HeightAnimationInstance.js +26 -1
- package/es/components/height-animation/HeightAnimationInstance.js.map +1 -1
- package/es/components/input-masked/InputMasked.d.ts +1 -1
- package/es/components/input-masked/InputMasked.js +2 -2
- package/es/components/input-masked/InputMasked.js.map +1 -1
- package/es/components/input-masked/InputMaskedDocs.js +1 -1
- package/es/components/input-masked/InputMaskedDocs.js.map +1 -1
- package/es/components/input-masked/InputMaskedHooks.js +1 -1
- package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
- package/es/components/input-masked/InputMaskedUtils.js +1 -1
- package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
- package/es/components/input-masked/style/dnb-input-masked.css +3 -3
- package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/es/components/pagination/Pagination.d.ts +12 -0
- package/es/components/pagination/Pagination.js +7 -3
- package/es/components/pagination/Pagination.js.map +1 -1
- package/es/components/pagination/PaginationBar.d.ts +2 -1
- package/es/components/pagination/PaginationBar.js +10 -3
- package/es/components/pagination/PaginationBar.js.map +1 -1
- package/es/components/radio/style/dnb-radio.css +3 -3
- package/es/components/radio/style/dnb-radio.min.css +1 -1
- package/es/components/space/style/dnb-space.css +4 -4
- package/es/components/space/style/dnb-space.min.css +1 -1
- package/es/components/space/style/dnb-space.scss +2 -12
- package/es/components/space/style/space-mixins.scss +21 -0
- package/es/components/tabs/Tabs.d.ts +1 -1
- package/es/components/tabs/Tabs.js +4 -12
- package/es/components/tabs/Tabs.js.map +1 -1
- package/es/components/toggle-button/ToggleButton.d.ts +9 -5
- package/es/components/toggle-button/ToggleButton.js +2 -0
- package/es/components/toggle-button/ToggleButton.js.map +1 -1
- package/es/components/toggle-button/ToggleButtonDocs.d.ts +2 -0
- package/es/components/toggle-button/ToggleButtonDocs.js +80 -0
- package/es/components/toggle-button/ToggleButtonDocs.js.map +1 -0
- package/es/components/toggle-button/ToggleButtonGroup.d.ts +21 -6
- package/es/components/toggle-button/ToggleButtonGroupDocs.d.ts +2 -0
- package/es/components/toggle-button/ToggleButtonGroupDocs.js +83 -0
- package/es/components/toggle-button/ToggleButtonGroupDocs.js.map +1 -0
- package/es/components/toggle-button/style/dnb-toggle-button.css +3 -3
- package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/es/elements/blockquote/style/blockquote-mixins.scss +5 -3
- package/es/elements/code/style/code-mixins.scss +2 -3
- package/es/elements/hr/style/hr-mixins.scss +2 -3
- package/es/elements/img/style/img-mixins.scss +3 -3
- package/es/elements/lists/style/lists-mixins.scss +3 -6
- package/es/elements/typography/style/typography-mixins.scss +2 -3
- package/es/extensions/forms/DataContext/Context.d.ts +15 -4
- package/es/extensions/forms/DataContext/Context.js.map +1 -1
- package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +1 -1
- package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.js +27 -16
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/es/extensions/forms/Field/Date/Date.js +5 -4
- package/es/extensions/forms/Field/Date/Date.js.map +1 -1
- package/es/extensions/forms/Field/Expiry/Expiry.js +4 -3
- package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js +7 -7
- package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
- package/es/extensions/forms/Field/Number/Number.js +2 -2
- package/es/extensions/forms/Field/Number/Number.js.map +1 -1
- package/es/extensions/forms/Field/Option/Option.d.ts +2 -1
- package/es/extensions/forms/Field/Option/Option.js +2 -12
- package/es/extensions/forms/Field/Option/Option.js.map +1 -1
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +10 -5
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +4 -3
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +12 -4
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/es/extensions/forms/Field/Selection/Selection.d.ts +8 -1
- package/es/extensions/forms/Field/Selection/Selection.js +22 -14
- package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/es/extensions/forms/Field/Selection/SelectionDocs.js +5 -0
- package/es/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
- package/es/extensions/forms/Field/Slider/Slider.js +4 -3
- package/es/extensions/forms/Field/Slider/Slider.js.map +1 -1
- package/es/extensions/forms/Field/String/String.js +2 -2
- package/es/extensions/forms/Field/String/String.js.map +1 -1
- package/es/extensions/forms/Field/Toggle/Toggle.js +14 -4
- package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/es/extensions/forms/Field/Upload/Upload.js +21 -20
- package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.js +14 -38
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
- package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/es/extensions/forms/Form/Isolation/Isolation.js +17 -3
- package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/es/extensions/forms/Form/MainHeading/MainHeadingDocs.d.ts +2 -0
- package/es/extensions/forms/Form/MainHeading/MainHeadingDocs.js +20 -0
- package/es/extensions/forms/Form/MainHeading/MainHeadingDocs.js.map +1 -0
- package/es/extensions/forms/Form/Section/EditContainer/CancelButton.js +7 -18
- package/es/extensions/forms/Form/Section/EditContainer/CancelButton.js.map +1 -1
- package/es/extensions/forms/Form/SubHeading/SubHeadingDocs.d.ts +2 -0
- package/es/extensions/forms/Form/SubHeading/SubHeadingDocs.js +20 -0
- package/es/extensions/forms/Form/SubHeading/SubHeadingDocs.js.map +1 -0
- package/es/extensions/forms/Form/Visibility/Visibility.d.ts +11 -1
- package/es/extensions/forms/Form/Visibility/Visibility.js +20 -11
- package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/es/extensions/forms/Form/Visibility/VisibilityContext.d.ts +2 -0
- package/es/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
- package/es/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
- package/es/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
- package/es/extensions/forms/Form/Visibility/useVisibility.js +18 -9
- package/es/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
- package/es/extensions/forms/Iterate/Array/Array.js +47 -28
- package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/es/extensions/forms/Iterate/Array/ArrayDocs.js +14 -4
- package/es/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
- package/es/extensions/forms/Iterate/Array/types.d.ts +8 -3
- package/es/extensions/forms/Iterate/Array/types.js.map +1 -1
- package/es/extensions/forms/Iterate/EditContainer/CancelButton.js +5 -15
- package/es/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
- package/es/extensions/forms/Iterate/EditContainer/DoneButton.js +9 -1
- package/es/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -1
- package/es/extensions/forms/Iterate/EditContainer/EditContainer.js +1 -3
- package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/ItemNo/useIItemNo.d.ts +5 -0
- package/es/extensions/forms/Iterate/ItemNo/useIItemNo.js +41 -0
- package/es/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +1 -0
- package/es/extensions/forms/Iterate/IterateItemContext.d.ts +2 -0
- package/es/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
- package/es/extensions/forms/Iterate/PushButton/PushButton.d.ts +1 -0
- package/es/extensions/forms/Iterate/PushButton/PushButton.js +17 -15
- package/es/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
- package/es/extensions/forms/Iterate/PushButton/PushButtonDocs.js +5 -0
- package/es/extensions/forms/Iterate/PushButton/PushButtonDocs.js.map +1 -1
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +17 -1
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +32 -17
- package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/PushContainer/PushContainerContext.d.ts +1 -0
- package/es/extensions/forms/Iterate/PushContainer/PushContainerContext.js.map +1 -1
- package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +10 -0
- package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
- package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +7 -6
- package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -0
- package/es/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
- package/es/extensions/forms/Iterate/Visibility/Visibility.d.ts +7 -0
- package/es/extensions/forms/Iterate/Visibility/Visibility.js +11 -0
- package/es/extensions/forms/Iterate/Visibility/Visibility.js.map +1 -0
- package/es/extensions/forms/Iterate/Visibility/index.d.ts +2 -0
- package/es/extensions/forms/Iterate/Visibility/index.js +3 -0
- package/es/extensions/forms/Iterate/Visibility/index.js.map +1 -0
- package/es/extensions/forms/Iterate/hooks/index.d.ts +1 -0
- package/es/extensions/forms/Iterate/hooks/index.js +1 -0
- package/es/extensions/forms/Iterate/hooks/index.js.map +1 -1
- package/es/extensions/forms/Iterate/hooks/useArrayLimit.d.ts +1 -3
- package/es/extensions/forms/Iterate/hooks/useArrayLimit.js +1 -3
- package/es/extensions/forms/Iterate/hooks/useArrayLimit.js.map +1 -1
- package/es/extensions/forms/Iterate/hooks/useItemPath.d.ts +4 -0
- package/es/extensions/forms/Iterate/hooks/useItemPath.js +16 -0
- package/es/extensions/forms/Iterate/hooks/useItemPath.js.map +1 -0
- package/es/extensions/forms/Iterate/hooks/useSwitchContainerMode.d.ts +1 -3
- package/es/extensions/forms/Iterate/hooks/useSwitchContainerMode.js +1 -3
- package/es/extensions/forms/Iterate/hooks/useSwitchContainerMode.js.map +1 -1
- package/es/extensions/forms/Iterate/index.d.ts +1 -0
- package/es/extensions/forms/Iterate/index.js +1 -0
- package/es/extensions/forms/Iterate/index.js.map +1 -1
- package/es/extensions/forms/Tools/GenerateSchema.js +12 -6
- package/es/extensions/forms/Tools/GenerateSchema.js.map +1 -1
- package/es/extensions/forms/Tools/ListAllProps.js +9 -5
- package/es/extensions/forms/Tools/ListAllProps.js.map +1 -1
- package/es/extensions/forms/Tools/Log.js +2 -1
- package/es/extensions/forms/Tools/Log.js.map +1 -1
- package/es/extensions/forms/Value/ArraySelection/ArraySelection.js +4 -4
- package/es/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
- package/es/extensions/forms/Value/Selection/Selection.js +5 -5
- package/es/extensions/forms/Value/Selection/Selection.js.map +1 -1
- package/es/extensions/forms/ValueBlock/ValueBlock.js +26 -9
- package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +6 -1
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.scss +22 -10
- package/es/extensions/forms/Wizard/Container/WizardContainer.js +6 -3
- package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +2 -1
- package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +4 -3
- package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -1
- package/es/extensions/forms/hooks/DataValueWritePropsDocs.js +9 -9
- package/es/extensions/forms/hooks/DataValueWritePropsDocs.js.map +1 -1
- package/es/extensions/forms/hooks/useDataValue.d.ts +2 -2
- package/es/extensions/forms/hooks/useDataValue.js +4 -8
- package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/es/extensions/forms/hooks/useExternalValue.js +2 -2
- package/es/extensions/forms/hooks/useExternalValue.js.map +1 -1
- package/es/extensions/forms/hooks/useFieldProps.d.ts +8 -2
- package/es/extensions/forms/hooks/useFieldProps.js +163 -76
- package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/es/extensions/forms/hooks/usePath.js +2 -2
- package/es/extensions/forms/hooks/usePath.js.map +1 -1
- package/es/extensions/forms/hooks/useValueProps.js +5 -5
- package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/es/extensions/forms/style/dnb-forms.css +9 -4
- package/es/extensions/forms/style/dnb-forms.min.css +1 -1
- package/es/extensions/forms/types.d.ts +33 -6
- package/es/extensions/forms/types.js.map +1 -1
- package/es/extensions/forms/utils/json-pointer/json-pointer.js +6 -0
- package/es/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -1
- package/es/extensions/payment-card/PaymentCard.js +3 -12
- package/es/extensions/payment-card/PaymentCard.js.map +1 -1
- package/es/fragments/drawer-list/DrawerList.d.ts +4 -2
- package/es/fragments/drawer-list/DrawerList.js +33 -47
- package/es/fragments/drawer-list/DrawerList.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListDocs.js +3 -3
- package/es/fragments/drawer-list/DrawerListDocs.js.map +1 -1
- package/es/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
- package/es/shared/AlignmentHelper.js +0 -4
- package/es/shared/AlignmentHelper.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/component-helper.js +2 -1
- package/es/shared/component-helper.js.map +1 -1
- package/es/style/core/scopes.scss +1 -1
- package/es/style/core/utilities.scss +3 -12
- package/es/style/dnb-ui-basis.css +1 -1
- package/es/style/dnb-ui-basis.min.css +1 -1
- package/es/style/dnb-ui-body.css +1 -1
- package/es/style/dnb-ui-body.min.css +1 -1
- package/es/style/dnb-ui-components.css +90 -76
- package/es/style/dnb-ui-components.min.css +4 -4
- package/es/style/dnb-ui-core.css +1 -1
- package/es/style/dnb-ui-core.min.css +1 -1
- package/es/style/dnb-ui-elements.css +151 -31
- package/es/style/dnb-ui-elements.min.css +1 -1
- package/es/style/dnb-ui-extensions.css +9 -4
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/dnb-ui-forms.css +9 -4
- package/es/style/dnb-ui-forms.min.css +1 -1
- package/es/style/dnb-ui-fragments.css +1 -1
- package/es/style/dnb-ui-fragments.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +151 -31
- package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +99 -80
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
- package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +151 -31
- package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +9 -4
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +9 -4
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +151 -31
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +99 -80
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +151 -31
- package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +9 -4
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +9 -4
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-basis.css +151 -31
- package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +99 -80
- package/es/style/themes/theme-ui/ui-theme-components.min.css +4 -4
- package/es/style/themes/theme-ui/ui-theme-elements.css +151 -31
- package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-extensions.css +9 -4
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-forms.css +9 -4
- package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-tags.css +100 -19
- package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +5 -5
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/DataContext/Context.d.ts +15 -4
- package/extensions/forms/DataContext/Context.js.map +1 -1
- package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +1 -1
- package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
- package/extensions/forms/DataContext/Provider/Provider.js +28 -17
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/Field/ArraySelection/ArraySelection.js +3 -3
- package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/extensions/forms/Field/Date/Date.js +5 -4
- package/extensions/forms/Field/Date/Date.js.map +1 -1
- package/extensions/forms/Field/Expiry/Expiry.js +4 -3
- package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
- package/extensions/forms/Field/Indeterminate/useDependencePaths.js +7 -7
- package/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
- package/extensions/forms/Field/Number/Number.js +2 -2
- package/extensions/forms/Field/Number/Number.js.map +1 -1
- package/extensions/forms/Field/Option/Option.d.ts +2 -1
- package/extensions/forms/Field/Option/Option.js +2 -13
- package/extensions/forms/Field/Option/Option.js.map +1 -1
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +10 -5
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/extensions/forms/Field/Provider/useFieldProvider.d.ts +4 -3
- package/extensions/forms/Field/SelectCountry/SelectCountry.js +12 -4
- package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/extensions/forms/Field/Selection/Selection.d.ts +8 -1
- package/extensions/forms/Field/Selection/Selection.js +19 -12
- package/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/extensions/forms/Field/Selection/SelectionDocs.js +5 -0
- package/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
- package/extensions/forms/Field/Slider/Slider.js +4 -3
- package/extensions/forms/Field/Slider/Slider.js.map +1 -1
- package/extensions/forms/Field/String/String.js +2 -2
- package/extensions/forms/Field/String/String.js.map +1 -1
- package/extensions/forms/Field/Toggle/Toggle.js +14 -4
- package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/extensions/forms/Field/Upload/Upload.js +21 -21
- package/extensions/forms/Field/Upload/Upload.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.js +14 -38
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/FieldBlock/style/dnb-field-block.css +3 -3
- package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
- package/extensions/forms/Form/Isolation/Isolation.js +17 -3
- package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
- package/extensions/forms/Form/MainHeading/MainHeadingDocs.d.ts +2 -0
- package/extensions/forms/Form/MainHeading/MainHeadingDocs.js +20 -0
- package/extensions/forms/Form/MainHeading/MainHeadingDocs.js.map +1 -0
- package/extensions/forms/Form/Section/EditContainer/CancelButton.js +7 -18
- package/extensions/forms/Form/Section/EditContainer/CancelButton.js.map +1 -1
- package/extensions/forms/Form/SubHeading/SubHeadingDocs.d.ts +2 -0
- package/extensions/forms/Form/SubHeading/SubHeadingDocs.js +20 -0
- package/extensions/forms/Form/SubHeading/SubHeadingDocs.js.map +1 -0
- package/extensions/forms/Form/Visibility/Visibility.d.ts +11 -1
- package/extensions/forms/Form/Visibility/Visibility.js +20 -11
- package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/extensions/forms/Form/Visibility/VisibilityContext.d.ts +2 -0
- package/extensions/forms/Form/Visibility/VisibilityContext.js.map +1 -1
- package/extensions/forms/Form/Visibility/VisibilityDocs.js +1 -1
- package/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
- package/extensions/forms/Form/Visibility/useVisibility.js +18 -9
- package/extensions/forms/Form/Visibility/useVisibility.js.map +1 -1
- package/extensions/forms/Iterate/Array/Array.js +50 -30
- package/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/extensions/forms/Iterate/Array/ArrayDocs.js +14 -4
- package/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
- package/extensions/forms/Iterate/Array/types.d.ts +8 -3
- package/extensions/forms/Iterate/Array/types.js.map +1 -1
- package/extensions/forms/Iterate/EditContainer/CancelButton.js +5 -15
- package/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
- package/extensions/forms/Iterate/EditContainer/DoneButton.js +9 -1
- package/extensions/forms/Iterate/EditContainer/DoneButton.js.map +1 -1
- package/extensions/forms/Iterate/EditContainer/EditContainer.js +1 -3
- package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/extensions/forms/Iterate/ItemNo/useIItemNo.d.ts +5 -0
- package/extensions/forms/Iterate/ItemNo/useIItemNo.js +42 -0
- package/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +1 -0
- package/extensions/forms/Iterate/IterateItemContext.d.ts +2 -0
- package/extensions/forms/Iterate/IterateItemContext.js.map +1 -1
- package/extensions/forms/Iterate/PushButton/PushButton.d.ts +1 -0
- package/extensions/forms/Iterate/PushButton/PushButton.js +17 -15
- package/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
- package/extensions/forms/Iterate/PushButton/PushButtonDocs.js +5 -0
- package/extensions/forms/Iterate/PushButton/PushButtonDocs.js.map +1 -1
- package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +17 -1
- package/extensions/forms/Iterate/PushContainer/PushContainer.js +32 -17
- package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
- package/extensions/forms/Iterate/PushContainer/PushContainerContext.d.ts +1 -0
- package/extensions/forms/Iterate/PushContainer/PushContainerContext.js.map +1 -1
- package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +10 -0
- package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
- package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +7 -6
- package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
- package/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -0
- package/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
- package/extensions/forms/Iterate/Visibility/Visibility.d.ts +7 -0
- package/extensions/forms/Iterate/Visibility/Visibility.js +11 -0
- package/extensions/forms/Iterate/Visibility/Visibility.js.map +1 -0
- package/extensions/forms/Iterate/Visibility/index.d.ts +2 -0
- package/extensions/forms/Iterate/Visibility/index.js +3 -0
- package/extensions/forms/Iterate/Visibility/index.js.map +1 -0
- package/extensions/forms/Iterate/hooks/index.d.ts +1 -0
- package/extensions/forms/Iterate/hooks/index.js +1 -0
- package/extensions/forms/Iterate/hooks/index.js.map +1 -1
- package/extensions/forms/Iterate/hooks/useArrayLimit.d.ts +1 -3
- package/extensions/forms/Iterate/hooks/useArrayLimit.js +1 -4
- package/extensions/forms/Iterate/hooks/useArrayLimit.js.map +1 -1
- package/extensions/forms/Iterate/hooks/useItemPath.d.ts +4 -0
- package/extensions/forms/Iterate/hooks/useItemPath.js +16 -0
- package/extensions/forms/Iterate/hooks/useItemPath.js.map +1 -0
- package/extensions/forms/Iterate/hooks/useSwitchContainerMode.d.ts +1 -3
- package/extensions/forms/Iterate/hooks/useSwitchContainerMode.js +1 -4
- package/extensions/forms/Iterate/hooks/useSwitchContainerMode.js.map +1 -1
- package/extensions/forms/Iterate/index.d.ts +1 -0
- package/extensions/forms/Iterate/index.js +1 -0
- package/extensions/forms/Iterate/index.js.map +1 -1
- package/extensions/forms/Tools/GenerateSchema.js +15 -9
- package/extensions/forms/Tools/GenerateSchema.js.map +1 -1
- package/extensions/forms/Tools/ListAllProps.js +11 -7
- package/extensions/forms/Tools/ListAllProps.js.map +1 -1
- package/extensions/forms/Tools/Log.js +2 -1
- package/extensions/forms/Tools/Log.js.map +1 -1
- package/extensions/forms/Value/ArraySelection/ArraySelection.js +4 -4
- package/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
- package/extensions/forms/Value/Selection/Selection.js +5 -5
- package/extensions/forms/Value/Selection/Selection.js.map +1 -1
- package/extensions/forms/ValueBlock/ValueBlock.js +27 -9
- package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/extensions/forms/ValueBlock/style/dnb-value-block.css +6 -1
- package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/extensions/forms/ValueBlock/style/dnb-value-block.scss +22 -10
- package/extensions/forms/Wizard/Container/WizardContainer.js +6 -3
- package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +2 -1
- package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +4 -3
- package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -1
- package/extensions/forms/hooks/DataValueWritePropsDocs.js +9 -9
- package/extensions/forms/hooks/DataValueWritePropsDocs.js.map +1 -1
- package/extensions/forms/hooks/useDataValue.d.ts +2 -2
- package/extensions/forms/hooks/useDataValue.js +5 -9
- package/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/extensions/forms/hooks/useExternalValue.js +2 -2
- package/extensions/forms/hooks/useExternalValue.js.map +1 -1
- package/extensions/forms/hooks/useFieldProps.d.ts +8 -2
- package/extensions/forms/hooks/useFieldProps.js +164 -76
- package/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/extensions/forms/hooks/usePath.js +2 -2
- package/extensions/forms/hooks/usePath.js.map +1 -1
- package/extensions/forms/hooks/useValueProps.js +5 -5
- package/extensions/forms/hooks/useValueProps.js.map +1 -1
- package/extensions/forms/style/dnb-forms.css +9 -4
- package/extensions/forms/style/dnb-forms.min.css +1 -1
- package/extensions/forms/types.d.ts +33 -6
- package/extensions/forms/types.js.map +1 -1
- package/extensions/forms/utils/json-pointer/json-pointer.js +6 -0
- package/extensions/forms/utils/json-pointer/json-pointer.js.map +1 -1
- package/extensions/payment-card/PaymentCard.js +3 -12
- package/extensions/payment-card/PaymentCard.js.map +1 -1
- package/fragments/drawer-list/DrawerList.d.ts +4 -2
- package/fragments/drawer-list/DrawerList.js +33 -47
- package/fragments/drawer-list/DrawerList.js.map +1 -1
- package/fragments/drawer-list/DrawerListDocs.js +3 -3
- package/fragments/drawer-list/DrawerListDocs.js.map +1 -1
- package/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
- package/package.json +1 -1
- package/shared/AlignmentHelper.js +0 -4
- package/shared/AlignmentHelper.js.map +1 -1
- package/shared/Eufemia.d.ts +1 -1
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/shared/component-helper.js +2 -1
- package/shared/component-helper.js.map +1 -1
- package/style/core/scopes.scss +1 -1
- package/style/core/utilities.scss +3 -12
- package/style/dnb-ui-basis.css +1 -1
- package/style/dnb-ui-basis.min.css +1 -1
- package/style/dnb-ui-body.css +1 -1
- package/style/dnb-ui-body.min.css +1 -1
- package/style/dnb-ui-components.css +90 -76
- package/style/dnb-ui-components.min.css +4 -4
- package/style/dnb-ui-core.css +1 -1
- package/style/dnb-ui-core.min.css +1 -1
- package/style/dnb-ui-elements.css +151 -31
- package/style/dnb-ui-elements.min.css +1 -1
- package/style/dnb-ui-extensions.css +9 -4
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/dnb-ui-forms.css +9 -4
- package/style/dnb-ui-forms.min.css +1 -1
- package/style/dnb-ui-fragments.css +1 -1
- package/style/dnb-ui-fragments.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-basis.css +151 -31
- package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.css +99 -80
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
- package/style/themes/theme-eiendom/eiendom-theme-elements.css +151 -31
- package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +9 -4
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-forms.css +9 -4
- package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-basis.css +151 -31
- package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +99 -80
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
- package/style/themes/theme-sbanken/sbanken-theme-elements.css +151 -31
- package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +9 -4
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-forms.css +9 -4
- package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-basis.css +151 -31
- package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-components.css +99 -80
- package/style/themes/theme-ui/ui-theme-components.min.css +4 -4
- package/style/themes/theme-ui/ui-theme-elements.css +151 -31
- package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-extensions.css +9 -4
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-forms.css +9 -4
- package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-tags.css +100 -19
- package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +3 -3
- package/umd/dnb-ui-lib.min.js +1 -1
|
@@ -352,6 +352,9 @@ process.env.NODE_ENV !== "production" ? FormStatus.propTypes = _objectSpread(_ob
|
|
|
352
352
|
}) : void 0;
|
|
353
353
|
const ErrorIcon = props => {
|
|
354
354
|
var _useTheme;
|
|
355
|
+
const {
|
|
356
|
+
title = 'error'
|
|
357
|
+
} = props || {};
|
|
355
358
|
const isSbankenTheme = ((_useTheme = (0, _shared.useTheme)()) === null || _useTheme === void 0 ? void 0 : _useTheme.name) === 'sbanken';
|
|
356
359
|
const fill = isSbankenTheme ? properties.sbanken['--sb-color-magenta'] : properties.ui['--color-fire-red'];
|
|
357
360
|
const line = isSbankenTheme ? properties.sbanken['--sb-color-magenta-light-2'] : properties.ui['--color-white'];
|
|
@@ -360,7 +363,7 @@ const ErrorIcon = props => {
|
|
|
360
363
|
height: "24",
|
|
361
364
|
viewBox: "0 0 24 24",
|
|
362
365
|
fill: "none"
|
|
363
|
-
}, props),
|
|
366
|
+
}, props), _react.default.createElement("title", null, title), _react.default.createElement("path", {
|
|
364
367
|
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",
|
|
365
368
|
fill: fill
|
|
366
369
|
}), _react.default.createElement("path", {
|
|
@@ -378,11 +381,11 @@ exports.ErrorIcon = ErrorIcon;
|
|
|
378
381
|
process.env.NODE_ENV !== "production" ? ErrorIcon.propTypes = {
|
|
379
382
|
title: _propTypes.default.string
|
|
380
383
|
} : void 0;
|
|
381
|
-
ErrorIcon.defaultProps = {
|
|
382
|
-
title: 'error'
|
|
383
|
-
};
|
|
384
384
|
const WarnIcon = props => {
|
|
385
385
|
var _useTheme2;
|
|
386
|
+
const {
|
|
387
|
+
title = 'error'
|
|
388
|
+
} = props || {};
|
|
386
389
|
const isSbankenTheme = ((_useTheme2 = (0, _shared.useTheme)()) === null || _useTheme2 === void 0 ? void 0 : _useTheme2.name) === 'sbanken';
|
|
387
390
|
const fill = isSbankenTheme ? properties.sbanken['--sb-color-yellow-dark'] : properties.ui['--color-accent-yellow'];
|
|
388
391
|
const line = isSbankenTheme ? properties.sbanken['--sb-color-black'] : properties.ui['--color-black-80'];
|
|
@@ -391,7 +394,7 @@ const WarnIcon = props => {
|
|
|
391
394
|
height: "24",
|
|
392
395
|
viewBox: "0 0 24 24",
|
|
393
396
|
fill: "none"
|
|
394
|
-
}, props),
|
|
397
|
+
}, props), _react.default.createElement("title", null, title), _react.default.createElement("path", {
|
|
395
398
|
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",
|
|
396
399
|
fill: fill
|
|
397
400
|
}), _react.default.createElement("path", {
|
|
@@ -409,11 +412,11 @@ exports.WarnIcon = WarnIcon;
|
|
|
409
412
|
process.env.NODE_ENV !== "production" ? WarnIcon.propTypes = {
|
|
410
413
|
title: _propTypes.default.string
|
|
411
414
|
} : void 0;
|
|
412
|
-
WarnIcon.defaultProps = {
|
|
413
|
-
title: 'error'
|
|
414
|
-
};
|
|
415
415
|
const InfoIcon = props => {
|
|
416
416
|
var _useTheme3;
|
|
417
|
+
const {
|
|
418
|
+
title = 'info'
|
|
419
|
+
} = props || {};
|
|
417
420
|
const isSbankenTheme = ((_useTheme3 = (0, _shared.useTheme)()) === null || _useTheme3 === void 0 ? void 0 : _useTheme3.name) === 'sbanken';
|
|
418
421
|
let fill = isSbankenTheme ? properties.sbanken['--sb-color-violet-light'] : properties.ui['--color-sea-green'];
|
|
419
422
|
if (props && (props === null || props === void 0 ? void 0 : props.state) === 'success') {
|
|
@@ -425,7 +428,7 @@ const InfoIcon = props => {
|
|
|
425
428
|
height: "24",
|
|
426
429
|
viewBox: "0 0 24 24",
|
|
427
430
|
fill: "none"
|
|
428
|
-
}, props),
|
|
431
|
+
}, props), _react.default.createElement("title", null, title), _react.default.createElement("path", {
|
|
429
432
|
fillRule: "evenodd",
|
|
430
433
|
clipRule: "evenodd",
|
|
431
434
|
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",
|
|
@@ -446,15 +449,13 @@ const InfoIcon = props => {
|
|
|
446
449
|
};
|
|
447
450
|
exports.InfoIcon = InfoIcon;
|
|
448
451
|
process.env.NODE_ENV !== "production" ? InfoIcon.propTypes = {
|
|
449
|
-
title: _propTypes.default.string
|
|
450
|
-
state: _propTypes.default.string
|
|
452
|
+
title: _propTypes.default.string
|
|
451
453
|
} : void 0;
|
|
452
|
-
InfoIcon.defaultProps = {
|
|
453
|
-
title: 'info',
|
|
454
|
-
state: 'info'
|
|
455
|
-
};
|
|
456
454
|
const MarketingIcon = props => {
|
|
457
455
|
var _useTheme4;
|
|
456
|
+
const {
|
|
457
|
+
title = 'marketing'
|
|
458
|
+
} = props || {};
|
|
458
459
|
const isSbankenTheme = ((_useTheme4 = (0, _shared.useTheme)()) === null || _useTheme4 === void 0 ? void 0 : _useTheme4.name) === 'sbanken';
|
|
459
460
|
const fill = isSbankenTheme ? properties.sbanken['--sb-color-violet-light'] : properties.ui['--color-black-80'];
|
|
460
461
|
return _react.default.createElement("svg", _extends({
|
|
@@ -462,7 +463,7 @@ const MarketingIcon = props => {
|
|
|
462
463
|
height: "24",
|
|
463
464
|
fill: "none",
|
|
464
465
|
xmlns: "http://www.w3.org/2000/svg"
|
|
465
|
-
}, props),
|
|
466
|
+
}, props), _react.default.createElement("title", null, title), _react.default.createElement("path", {
|
|
466
467
|
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",
|
|
467
468
|
fill: fill
|
|
468
469
|
}));
|
|
@@ -471,9 +472,6 @@ exports.MarketingIcon = MarketingIcon;
|
|
|
471
472
|
process.env.NODE_ENV !== "production" ? MarketingIcon.propTypes = {
|
|
472
473
|
title: _propTypes.default.string
|
|
473
474
|
} : void 0;
|
|
474
|
-
MarketingIcon.defaultProps = {
|
|
475
|
-
title: 'marketing'
|
|
476
|
-
};
|
|
477
475
|
function setMaxWidthToElement(_ref2) {
|
|
478
476
|
let {
|
|
479
477
|
element,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormStatus.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_shared","_componentHelper","_HeightAnimation","_SpacingHelper","_Icon","_GlobalStatusProvider","_SkeletonHelper","_filterValidProps","_properties","_properties2","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","properties","ui","sbanken","FormStatus","React","PureComponent","getContent","props","text","isTrue","processChildren","correctStatus","state","getIcon","_ref","icon","icon_size","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$","_isMounted","_globalStatus","isReady","updateWidth","fillCache","current","width_element","width_selector","setMaxWidthToElement","element","widthElement","widthSelector","makeUniqueId","GlobalStatusProvider","init","globalStatus","FormRow","formElement","provider","isReadyToGetVisible","label","getProps","add","status_id","getStatusId","item","item_id","message","status_anchor_label","status_anchor_url","createRef","componentDidMount","document","readyState","window","addEventListener","shouldAnimate","content","contentCache","stateCache","componentWillUnmount","remove","removeEventListener","componentDidUpdate","prevProps","_prevProps$globalStat","show","children","update","preventRestack","extendPropsWithContextInClassComponent","defaultProps","skeleton","pickFormElementProps","no_animation","render","rawState","variant","className","stretch","shellSpace","text_id","role","rest","iconToRender","contentToRender","hasStringContent","params","classnames","createSpacingClasses","startsWith","textParams","createSkeletonClass","shellParams","space","skeletonDOMAttributes","validateDOMAttributes","open","animate","duration","innerRef","exports","Context","attributes","process","env","NODE_ENV","propTypes","PropTypes","string","oneOfType","bool","func","node","oneOf","shape","spacingPropTypes","_useTheme","isSbankenTheme","useTheme","name","fill","line","width","height","viewBox","d","stroke","strokeWidth","strokeLinecap","strokeLinejoin","_useTheme2","_useTheme3","fillRule","clipRule","cx","cy","r","_useTheme4","xmlns","_ref2","getAttribute","replace","sumElementWidth","maxWidth","remWidth","style","getComputedStyle","hasCustomWidth","minWidth","e","_ref3","ids","split","reduce","acc","cur","elem","querySelector","getElementById","offsetWidth","test","parseFloat","_supportsSpacingProps"],"sources":["../../../../src/components/form-status/FormStatus.js"],"sourcesContent":["/**\n * Web FormStatus Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport { useTheme, Context } from '../../shared'\nimport {\n isTrue,\n makeUniqueId,\n validateDOMAttributes,\n processChildren,\n extendPropsWithContextInClassComponent,\n} from '../../shared/component-helper'\nimport HeightAnimation from '../height-animation/HeightAnimation'\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'\nimport ui from '../../style/themes/theme-ui/properties'\nimport sbanken from '../../style/themes/theme-sbanken/properties'\n\nconst properties = { ui, sbanken }\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 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 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 }) {\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} />}\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 }\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 || // Deprecated – can be removed in v11\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 } =\n this.getProps(context)\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 ...globalStatus,\n })\n }\n }\n )\n\n this._ref = React.createRef()\n }\n\n init = () => {\n if (this._isMounted) {\n this._globalStatus.isReady()\n\n this.updateWidth()\n this.fillCache()\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 fillCache() {\n const shouldAnimate = this.shouldAnimate()\n\n // Content\n const content = shouldAnimate && FormStatus.getContent(this.props)\n if (content && content !== this.contentCache) {\n this.contentCache = content\n }\n\n // State\n const state =\n shouldAnimate && FormStatus.correctStatus(this.props.state)\n if (state) {\n this.stateCache = state\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 }\n\n componentDidUpdate(prevProps) {\n const { state, show, text, globalStatus, children, label } =\n this.getProps()\n\n if (\n prevProps.text !== text ||\n prevProps.children !== children ||\n prevProps.show !== show ||\n prevProps.globalStatus?.show !== globalStatus?.show ||\n prevProps.state !== state\n ) {\n this.fillCache()\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 ...globalStatus,\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 }\n }\n }\n\n getProps(context = this.context) {\n return extendPropsWithContextInClassComponent(\n this.props,\n FormStatus.defaultProps,\n { skeleton: context?.skeleton },\n // Deprecated – can be removed in v11\n pickFormElementProps(context?.FormRow),\n pickFormElementProps(context?.formElement),\n context?.FormStatus\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 shouldAnimate() {\n return this.props.no_animation === false\n }\n\n isReadyToGetVisible(props = this.props) {\n return isTrue(props.show) && FormStatus.getContent(props)\n ? true\n : false\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = this.getProps()\n\n const {\n title,\n state: rawState,\n size,\n variant,\n className,\n stretch,\n shellSpace,\n text_id,\n\n show, // eslint-disable-line\n no_animation, // eslint-disable-line\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) || this.stateCache\n const iconToRender = FormStatus.getIcon({\n state,\n icon,\n icon_size,\n })\n\n const contentToRender = FormStatus.getContent(this.props)\n\n const hasStringContent =\n typeof contentToRender === 'string' && contentToRender.length > 0\n\n const params = {\n className: classnames(\n 'dnb-form-status',\n state && `dnb-form-status--${state}`,\n `dnb-form-status__size--${size}`,\n variant && `dnb-form-status__variant--${variant}`,\n stretch && 'dnb-form-status--stretch',\n hasStringContent ? 'dnb-form-status--has-content' : null,\n createSpacingClasses(props),\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 const shellParams = {\n className: classnames(\n 'dnb-form-status__shell',\n createSpacingClasses({ space: shellSpace })\n ),\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 <HeightAnimation\n element=\"span\"\n open={this.isReadyToGetVisible()}\n animate={this.shouldAnimate()}\n duration={600}\n {...params}\n innerRef={this._ref}\n >\n <span {...shellParams}>\n {iconToRender}\n <span {...textParams}>\n {contentToRender || this.contentCache}\n </span>\n </span>\n </HeightAnimation>\n )\n }\n}\n\nexport const ErrorIcon = (props) => {\n const isSbankenTheme = useTheme()?.name === 'sbanken'\n const fill = isSbankenTheme\n ? properties.sbanken['--sb-color-magenta']\n : properties.ui['--color-fire-red']\n const line = isSbankenTheme\n ? properties.sbanken['--sb-color-magenta-light-2']\n : properties.ui['--color-white']\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 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={fill}\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={line}\n />\n <path\n d=\"M12 13.818v-5\"\n stroke={line}\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n )\n}\nErrorIcon.propTypes = {\n title: PropTypes.string,\n}\nErrorIcon.defaultProps = {\n title: 'error',\n}\n\nexport const WarnIcon = (props) => {\n const isSbankenTheme = useTheme()?.name === 'sbanken'\n const fill = isSbankenTheme\n ? properties.sbanken['--sb-color-yellow-dark']\n : properties.ui['--color-accent-yellow']\n const line = isSbankenTheme\n ? properties.sbanken['--sb-color-black']\n : properties.ui['--color-black-80']\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 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={fill}\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={line}\n />\n <path\n d=\"M12 13.818v-5\"\n stroke={line}\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n )\n}\nWarnIcon.propTypes = {\n title: PropTypes.string,\n}\nWarnIcon.defaultProps = {\n title: 'error',\n}\n\nexport const InfoIcon = (props) => {\n const isSbankenTheme = useTheme()?.name === 'sbanken'\n let fill = isSbankenTheme\n ? properties.sbanken['--sb-color-violet-light']\n : properties.ui['--color-sea-green']\n if (props && props?.state === 'success') {\n fill = isSbankenTheme\n ? properties.sbanken['--sb-color-green-dark-3']\n : properties.ui['--color-summer-green']\n }\n\n const line = isSbankenTheme\n ? properties.sbanken['--sb-color-green-light-2']\n : properties.ui['--color-white']\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={line} />\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={line}\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}\nInfoIcon.defaultProps = {\n title: 'info',\n state: 'info',\n}\n\nexport const MarketingIcon = (props) => {\n const isSbankenTheme = useTheme()?.name === 'sbanken'\n const fill = isSbankenTheme\n ? properties.sbanken['--sb-color-violet-light']\n : properties.ui['--color-black-80']\n\n return (\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={fill}\n />\n </svg>\n )\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","_interopRequireDefault","require","_propTypes","_classnames","_shared","_componentHelper","_HeightAnimation","_SpacingHelper","_Icon","_GlobalStatusProvider","_SkeletonHelper","_filterValidProps","_properties","_properties2","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","properties","ui","sbanken","FormStatus","React","PureComponent","getContent","props","text","isTrue","processChildren","correctStatus","state","getIcon","_ref","icon","icon_size","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$","_isMounted","_globalStatus","isReady","updateWidth","fillCache","current","width_element","width_selector","setMaxWidthToElement","element","widthElement","widthSelector","makeUniqueId","GlobalStatusProvider","init","globalStatus","FormRow","formElement","provider","isReadyToGetVisible","label","getProps","add","status_id","getStatusId","item","item_id","message","status_anchor_label","status_anchor_url","createRef","componentDidMount","document","readyState","window","addEventListener","shouldAnimate","content","contentCache","stateCache","componentWillUnmount","remove","removeEventListener","componentDidUpdate","prevProps","_prevProps$globalStat","show","children","update","preventRestack","extendPropsWithContextInClassComponent","defaultProps","skeleton","pickFormElementProps","no_animation","render","rawState","variant","className","stretch","shellSpace","text_id","role","rest","iconToRender","contentToRender","hasStringContent","params","classnames","createSpacingClasses","startsWith","textParams","createSkeletonClass","shellParams","space","skeletonDOMAttributes","validateDOMAttributes","open","animate","duration","innerRef","exports","Context","attributes","process","env","NODE_ENV","propTypes","PropTypes","string","oneOfType","bool","func","node","oneOf","shape","spacingPropTypes","_useTheme","isSbankenTheme","useTheme","name","fill","line","width","height","viewBox","d","stroke","strokeWidth","strokeLinecap","strokeLinejoin","_useTheme2","_useTheme3","fillRule","clipRule","cx","cy","r","_useTheme4","xmlns","_ref2","getAttribute","replace","sumElementWidth","maxWidth","remWidth","style","getComputedStyle","hasCustomWidth","minWidth","e","_ref3","ids","split","reduce","acc","cur","elem","querySelector","getElementById","offsetWidth","test","parseFloat","_supportsSpacingProps"],"sources":["../../../../src/components/form-status/FormStatus.js"],"sourcesContent":["/**\n * Web FormStatus Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport { useTheme, Context } from '../../shared'\nimport {\n isTrue,\n makeUniqueId,\n validateDOMAttributes,\n processChildren,\n extendPropsWithContextInClassComponent,\n} from '../../shared/component-helper'\nimport HeightAnimation from '../height-animation/HeightAnimation'\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'\nimport ui from '../../style/themes/theme-ui/properties'\nimport sbanken from '../../style/themes/theme-sbanken/properties'\n\nconst properties = { ui, sbanken }\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 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 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 }) {\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} />}\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 }\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 || // Deprecated – can be removed in v11\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 } =\n this.getProps(context)\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 ...globalStatus,\n })\n }\n }\n )\n\n this._ref = React.createRef()\n }\n\n init = () => {\n if (this._isMounted) {\n this._globalStatus.isReady()\n\n this.updateWidth()\n this.fillCache()\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 fillCache() {\n const shouldAnimate = this.shouldAnimate()\n\n // Content\n const content = shouldAnimate && FormStatus.getContent(this.props)\n if (content && content !== this.contentCache) {\n this.contentCache = content\n }\n\n // State\n const state =\n shouldAnimate && FormStatus.correctStatus(this.props.state)\n if (state) {\n this.stateCache = state\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 }\n\n componentDidUpdate(prevProps) {\n const { state, show, text, globalStatus, children, label } =\n this.getProps()\n\n if (\n prevProps.text !== text ||\n prevProps.children !== children ||\n prevProps.show !== show ||\n prevProps.globalStatus?.show !== globalStatus?.show ||\n prevProps.state !== state\n ) {\n this.fillCache()\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 ...globalStatus,\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 }\n }\n }\n\n getProps(context = this.context) {\n return extendPropsWithContextInClassComponent(\n this.props,\n FormStatus.defaultProps,\n { skeleton: context?.skeleton },\n // Deprecated – can be removed in v11\n pickFormElementProps(context?.FormRow),\n pickFormElementProps(context?.formElement),\n context?.FormStatus\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 shouldAnimate() {\n return this.props.no_animation === false\n }\n\n isReadyToGetVisible(props = this.props) {\n return isTrue(props.show) && FormStatus.getContent(props)\n ? true\n : false\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = this.getProps()\n\n const {\n title,\n state: rawState,\n size,\n variant,\n className,\n stretch,\n shellSpace,\n text_id,\n\n show, // eslint-disable-line\n no_animation, // eslint-disable-line\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) || this.stateCache\n const iconToRender = FormStatus.getIcon({\n state,\n icon,\n icon_size,\n })\n\n const contentToRender = FormStatus.getContent(this.props)\n\n const hasStringContent =\n typeof contentToRender === 'string' && contentToRender.length > 0\n\n const params = {\n className: classnames(\n 'dnb-form-status',\n state && `dnb-form-status--${state}`,\n `dnb-form-status__size--${size}`,\n variant && `dnb-form-status__variant--${variant}`,\n stretch && 'dnb-form-status--stretch',\n hasStringContent ? 'dnb-form-status--has-content' : null,\n createSpacingClasses(props),\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 const shellParams = {\n className: classnames(\n 'dnb-form-status__shell',\n createSpacingClasses({ space: shellSpace })\n ),\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 <HeightAnimation\n element=\"span\"\n open={this.isReadyToGetVisible()}\n animate={this.shouldAnimate()}\n duration={600}\n {...params}\n innerRef={this._ref}\n >\n <span {...shellParams}>\n {iconToRender}\n <span {...textParams}>\n {contentToRender || this.contentCache}\n </span>\n </span>\n </HeightAnimation>\n )\n }\n}\n\nexport const ErrorIcon = (props) => {\n const { title = 'error' } = props || {}\n const isSbankenTheme = useTheme()?.name === 'sbanken'\n const fill = isSbankenTheme\n ? properties.sbanken['--sb-color-magenta']\n : properties.ui['--color-fire-red']\n const line = isSbankenTheme\n ? properties.sbanken['--sb-color-magenta-light-2']\n : properties.ui['--color-white']\n\n return (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n <title>{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={fill}\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={line}\n />\n <path\n d=\"M12 13.818v-5\"\n stroke={line}\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n )\n}\nErrorIcon.propTypes = {\n title: PropTypes.string,\n}\n\nexport const WarnIcon = (props) => {\n const { title = 'error' } = props || {}\n const isSbankenTheme = useTheme()?.name === 'sbanken'\n const fill = isSbankenTheme\n ? properties.sbanken['--sb-color-yellow-dark']\n : properties.ui['--color-accent-yellow']\n const line = isSbankenTheme\n ? properties.sbanken['--sb-color-black']\n : properties.ui['--color-black-80']\n\n return (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n <title>{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={fill}\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={line}\n />\n <path\n d=\"M12 13.818v-5\"\n stroke={line}\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n )\n}\nWarnIcon.propTypes = {\n title: PropTypes.string,\n}\n\nexport const InfoIcon = (props) => {\n const { title = 'info' } = props || {}\n const isSbankenTheme = useTheme()?.name === 'sbanken'\n let fill = isSbankenTheme\n ? properties.sbanken['--sb-color-violet-light']\n : properties.ui['--color-sea-green']\n if (props && props?.state === 'success') {\n fill = isSbankenTheme\n ? properties.sbanken['--sb-color-green-dark-3']\n : properties.ui['--color-summer-green']\n }\n\n const line = isSbankenTheme\n ? properties.sbanken['--sb-color-green-light-2']\n : properties.ui['--color-white']\n\n return (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n <title>{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={line} />\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={line}\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n )\n}\nInfoIcon.propTypes = {\n title: PropTypes.string,\n}\n\nexport const MarketingIcon = (props) => {\n const { title = 'marketing' } = props || {}\n const isSbankenTheme = useTheme()?.name === 'sbanken'\n const fill = isSbankenTheme\n ? properties.sbanken['--sb-color-violet-light']\n : properties.ui['--color-black-80']\n\n return (\n <svg\n width=\"24\"\n height=\"24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <title>{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={fill}\n />\n </svg>\n )\n}\nMarketingIcon.propTypes = {\n title: PropTypes.string,\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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"}
|
|
@@ -59,6 +59,7 @@ export default class HeightAnimation {
|
|
|
59
59
|
open(): void;
|
|
60
60
|
close(): void;
|
|
61
61
|
adjustTo(fromHeight?: HeightAnimationFromHeight, toHeight?: HeightAnimationToHeight): void;
|
|
62
|
+
stopOuterAnimations(): () => void;
|
|
62
63
|
readjust(): void;
|
|
63
64
|
/**
|
|
64
65
|
* Determines whether the animation can finish.
|
|
@@ -194,8 +194,9 @@ class HeightAnimation {
|
|
|
194
194
|
}
|
|
195
195
|
this.stop();
|
|
196
196
|
this.isAnimating = true;
|
|
197
|
+
const cleanup = this.stopOuterAnimations();
|
|
197
198
|
this.reqId1 = window.requestAnimationFrame(() => {
|
|
198
|
-
if (!this.elem) {
|
|
199
|
+
if (!this.elem || this.elem.classList.contains('dnb-height-animation--stop')) {
|
|
199
200
|
return;
|
|
200
201
|
}
|
|
201
202
|
this.elem.style.height = `${fromHeight}px`;
|
|
@@ -204,6 +205,7 @@ class HeightAnimation {
|
|
|
204
205
|
return;
|
|
205
206
|
}
|
|
206
207
|
this.elem.style.height = `${toHeight}px`;
|
|
208
|
+
cleanup();
|
|
207
209
|
});
|
|
208
210
|
});
|
|
209
211
|
}
|
|
@@ -284,6 +286,29 @@ class HeightAnimation {
|
|
|
284
286
|
});
|
|
285
287
|
this.start(fromHeight, toHeight);
|
|
286
288
|
}
|
|
289
|
+
stopOuterAnimations() {
|
|
290
|
+
const elements = [];
|
|
291
|
+
const getCloses = elem => {
|
|
292
|
+
var _elem$parentElement;
|
|
293
|
+
return (_elem$parentElement = elem.parentElement) === null || _elem$parentElement === void 0 ? void 0 : _elem$parentElement.closest('.dnb-height-animation');
|
|
294
|
+
};
|
|
295
|
+
let elem = getCloses(this.elem);
|
|
296
|
+
while (elem) {
|
|
297
|
+
elements.push(elem);
|
|
298
|
+
elem = getCloses(elem);
|
|
299
|
+
}
|
|
300
|
+
elements.forEach(elem => {
|
|
301
|
+
elem.classList.add('dnb-height-animation--stop');
|
|
302
|
+
});
|
|
303
|
+
return () => {
|
|
304
|
+
elements.forEach(elem => {
|
|
305
|
+
if (elem) {
|
|
306
|
+
elem.classList.remove('dnb-height-animation--stop');
|
|
307
|
+
}
|
|
308
|
+
});
|
|
309
|
+
elements.length = 0;
|
|
310
|
+
};
|
|
311
|
+
}
|
|
287
312
|
readjust() {
|
|
288
313
|
const endHeight = this.getHeight();
|
|
289
314
|
if (this.elem) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeightAnimationInstance.js","names":["HeightAnimation","constructor","opts","arguments","length","undefined","_defineProperty","animate","visibility","opacity","height","isInBrowser","window","setState","setOptions","callAnimationStart","startTime","Date","now","firstTime","onStartStack","forEach","fn","state","callAnimationEnd","isAnimating","__currentHeight","removeEndEvents","onEndStack","addEndEvent","listener","_this$elem","_this$elem$addEventLi","handleTransitionEnd","e","canFinish","delay","duration","timeouts","push","setTimeout","events","elem","addEventListener","call","_this$elem2","_this$elem2$removeEve","removeEventListener","setElement","_this$elem3","_globalThis$animation","document","createElement","String","nodeName","toLowerCase","parentElement","globalThis","animationDuration","parseFloat","getComputedStyle","transitionDuration","Object","freeze","_objectSpread","getOptions","remove","stop","setAsOpen","setAsClosed","getHeight","_this$withFallback","withFallback","getUnknownHeight","_this$elem$parentNode","_this$withFallback2","_this$withFallback3","_clonedElem$parentNod","clonedElem","cloneNode","inputs","querySelectorAll","input","removeAttribute","key","firstPaintStyle","style","position","parentNode","insertBefore","nextSibling","elemWidth","clientWidth","clonedWidth","width","removeChild","fallback","val","hasAttribute","getAttribute","isNaN","onStart","onEnd","start","fromHeight","toHeight","requestAnimationFrame","reqId1","reqId2","id","clearTimeout","cancelAnimationFrame","open","shouldBypassAnimation","target","currentTarget","overflowY","readjust","close","adjustTo","endHeight","newHeight","_globalThis$animation2","Boolean","_globalThis$bypassTim","IS_TEST","bypassTime","exports","default"],"sources":["../../../../src/components/height-animation/HeightAnimationInstance.ts"],"sourcesContent":["export type HeightAnimationOnStartStates =\n | 'opening'\n | 'closing'\n | 'adjusting'\nexport type HeightAnimationOnEndStates = 'opened' | 'closed' | 'adjusted'\nexport type HeightAnimationStates =\n | HeightAnimationOnStartStates\n | HeightAnimationOnEndStates\n | 'init'\nexport type HeightAnimationOptions = {\n animate?: boolean\n}\nexport type HeightAnimationOnStartCallback = (\n state: HeightAnimationStates\n) => void\nexport type HeightAnimationOnEndCallback = (\n state: HeightAnimationStates\n) => void\nexport type HeightAnimationOnStartStack =\n Array<HeightAnimationOnStartCallback>\nexport type HeightAnimationOnEndStack = Array<HeightAnimationOnEndCallback>\nexport type HeightAnimationEventListener = (e: Event) => void\nexport type HeightAnimationEvents = Array<HeightAnimationEventListener>\nexport type HeightAnimationElement = HTMLElement\nexport type HeightAnimationContainer = HTMLElement\nexport type HeightAnimationFromHeight = number\nexport type HeightAnimationToHeight = number\n\nexport default class HeightAnimation {\n private state: Readonly<HeightAnimationStates>\n isInBrowser: boolean\n onStartStack: HeightAnimationOnStartStack = []\n onEndStack: HeightAnimationOnEndStack = []\n events: HeightAnimationEvents = []\n opts: HeightAnimationOptions = { animate: true }\n elem: HeightAnimationElement\n reqId1: number\n reqId2: number\n resizeTimeout: NodeJS.Timeout\n timeouts: NodeJS.Timeout[] = []\n firstTime?: number = 0\n startTime?: number = 0\n duration?: number = 0\n isAnimating: boolean\n __currentHeight: number\n\n firstPaintStyle = {\n visibility: 'hidden',\n opacity: '0', // prevents before/after elements to be visible\n height: 'auto',\n } as const\n\n constructor(opts: HeightAnimationOptions = {}) {\n this.isInBrowser = typeof window !== 'undefined'\n this.setState('init')\n this.setOptions(opts)\n }\n\n callAnimationStart() {\n this.startTime = Date.now()\n if (!this.firstTime) {\n this.firstTime = this.startTime\n }\n if (this.onStartStack) {\n this.onStartStack.forEach((fn) => {\n if (typeof fn === 'function') {\n fn(this.state)\n }\n })\n }\n }\n callAnimationEnd() {\n this.isAnimating = false\n\n if (this.state !== 'opened') {\n delete this.__currentHeight\n }\n\n this.removeEndEvents()\n\n if (this.onEndStack) {\n this.onEndStack.forEach((fn) => {\n if (typeof fn === 'function') {\n fn(this.state)\n }\n })\n }\n }\n addEndEvent(listener: HeightAnimationEventListener) {\n this.removeEndEvents() // also, remove events on every open (but not on close!)\n\n const handleTransitionEnd = (e) => {\n if (this.canFinish()) {\n listener(e)\n } else {\n const delay = this.duration - (Date.now() - this.startTime)\n\n if (delay === -1) {\n listener(e)\n } else {\n this.timeouts.push(setTimeout(() => listener(e), delay))\n }\n }\n }\n\n this.events.push(handleTransitionEnd)\n this.elem?.addEventListener?.('transitionend', handleTransitionEnd)\n }\n removeEndEvents() {\n this.events.forEach((listener) => {\n this.elem?.removeEventListener?.('transitionend', listener)\n })\n this.events = []\n }\n\n // Public methods\n setElement(elem: HeightAnimationElement) {\n this.elem =\n elem ||\n (typeof document !== 'undefined' && document.createElement('div'))\n\n // TODO: remove when responsive tables are supported\n if (String(this.elem?.nodeName).toLowerCase() === 'td') {\n this.elem = this.elem.parentElement\n }\n\n this.duration =\n globalThis.animationDuration ??\n (parseFloat(window.getComputedStyle(this.elem).transitionDuration) *\n 1000 ||\n 400) // The default duration\n }\n setState(state: HeightAnimationStates) {\n this.state = Object.freeze(state)\n }\n setOptions(opts: HeightAnimationOptions) {\n this.opts = Object.freeze({ ...this.opts, ...opts })\n }\n getOptions() {\n return this.opts\n }\n remove() {\n this.stop()\n this.removeEndEvents()\n this.setState('init')\n this.isAnimating = false\n this.onEndStack = []\n this.onStartStack = []\n this.__currentHeight = undefined\n this.elem = undefined\n }\n setAsOpen() {\n if (this.state === 'opened') {\n return\n }\n this.setState('opening')\n this.callAnimationStart()\n this.setState('opened')\n this.callAnimationEnd()\n }\n setAsClosed() {\n if (this.state === 'closed') {\n return\n }\n this.setState('closing')\n this.callAnimationStart()\n this.setState('closed')\n this.callAnimationEnd()\n }\n getHeight() {\n return this.withFallback(this.elem, 'clientHeight') ?? null\n }\n getUnknownHeight() {\n if (!this.elem) {\n return null\n }\n\n if (this.isAnimating && typeof this.__currentHeight !== 'undefined') {\n return this.__currentHeight\n }\n\n const clonedElem = this.elem.cloneNode(true) as HTMLElement\n const inputs = clonedElem.querySelectorAll('input')\n inputs.forEach((input) => {\n input.removeAttribute('name') // because type=\"radio\" will be else effected negatively\n input.removeAttribute('id') // don't put IDs twice in the DOM\n })\n\n // Hide the cloned element\n for (const key in this.firstPaintStyle) {\n clonedElem.style[key] = this.firstPaintStyle[key]\n }\n clonedElem.style.position = 'absolute' // not a part of the \"firstPaintStyle\"\n\n this.elem.parentNode?.insertBefore(clonedElem, this.elem.nextSibling)\n\n // When text is wrapped, we get different widths,\n // so we need to set the width to the original width\n const elemWidth = this.elem.clientWidth\n const clonedWidth =\n this.withFallback(clonedElem, 'clientWidth', 'data-width') ?? 0\n\n if (clonedWidth > elemWidth) {\n clonedElem.style.width = `${elemWidth}px`\n }\n\n const height =\n // data-height is used for mockup testing with \"mockHeight\"\n this.withFallback(this.elem, 'clientHeight', 'data-height') ?? null\n\n clonedElem.parentNode?.removeChild(clonedElem)\n\n if (height) {\n this.__currentHeight = height\n }\n\n return height\n }\n withFallback(\n elem: HTMLElement,\n key: 'clientHeight' | 'clientWidth',\n fallback?: 'data-height' | 'data-width'\n ) {\n const val =\n fallback && elem.hasAttribute(fallback)\n ? parseFloat(elem.getAttribute(fallback))\n : elem?.[key]\n\n if (isNaN(val)) {\n return null\n }\n\n return val\n }\n onStart(fn: HeightAnimationOnStartCallback) {\n this.onStartStack.push(fn)\n }\n onEnd(fn: HeightAnimationOnEndCallback) {\n this.onEndStack.push(fn)\n }\n start(\n fromHeight: HeightAnimationFromHeight,\n toHeight: HeightAnimationToHeight\n ) {\n if (\n !this.elem ||\n !(\n this.isInBrowser &&\n typeof window.requestAnimationFrame === 'function'\n )\n ) {\n return\n }\n\n const opts = this.getOptions()\n if (opts.animate === false) {\n return\n }\n\n this.stop()\n this.isAnimating = true\n\n // make the animation\n this.reqId1 = window.requestAnimationFrame(() => {\n if (!this.elem) {\n return\n }\n\n this.elem.style.height = `${fromHeight}px`\n\n this.reqId2 = window.requestAnimationFrame(() => {\n if (!this.elem) {\n return\n }\n\n this.elem.style.height = `${toHeight}px`\n })\n })\n }\n stop() {\n this.timeouts.forEach((id) => clearTimeout(id))\n this.timeouts = []\n\n if (\n this.isInBrowser &&\n typeof window.requestAnimationFrame === 'function'\n ) {\n window.cancelAnimationFrame(this.reqId1)\n window.cancelAnimationFrame(this.reqId2)\n }\n }\n open() {\n if (\n this.state === 'opened' ||\n this.state === 'opening' ||\n this.shouldBypassAnimation()\n ) {\n this.setAsOpen()\n return\n }\n\n this.setState('opening')\n this.callAnimationStart()\n\n const toHeight = this.getUnknownHeight()\n\n this.addEndEvent((e) => {\n if (e.target === e.currentTarget || !e.currentTarget) {\n if (this.elem) {\n this.elem.style.overflowY = ''\n }\n this.setState('opened')\n this.readjust()\n }\n })\n\n this.start(0, toHeight)\n }\n close() {\n if (\n this.state === 'closed' ||\n this.state === 'closing' ||\n this.shouldBypassAnimation()\n ) {\n this.setAsClosed()\n return\n }\n\n this.setState('closing')\n this.callAnimationStart()\n\n const fromHeight = this.getHeight()\n\n this.addEndEvent((e) => {\n if (e.target === e.currentTarget || !e.currentTarget) {\n if (this.elem) {\n this.elem.style.visibility = 'hidden'\n this.elem.style.overflowY = 'clip'\n }\n this.setState('closed')\n this.callAnimationEnd()\n }\n })\n\n this.start(fromHeight, 0)\n }\n adjustTo(\n fromHeight: HeightAnimationFromHeight = null,\n toHeight: HeightAnimationToHeight = null\n ) {\n const opts = this.getOptions()\n\n if (\n !this.elem ||\n opts.animate === false ||\n this.state === 'opening' ||\n this.state === 'closing'\n ) {\n return\n }\n\n if (fromHeight === null) {\n fromHeight = this.getHeight()\n }\n if (toHeight === null) {\n toHeight = this.getUnknownHeight()\n }\n\n if (fromHeight === toHeight) {\n this.setState('adjusted')\n return\n }\n\n this.setState('adjusting')\n this.callAnimationStart()\n\n this.addEndEvent((e) => {\n if (\n this.state === 'adjusting' &&\n (e.target === e.currentTarget || !e.currentTarget)\n ) {\n if (this.elem) {\n this.elem.style.height = 'auto'\n }\n this.setState('adjusted')\n this.callAnimationEnd()\n }\n })\n\n this.start(fromHeight, toHeight)\n }\n readjust() {\n const endHeight = this.getHeight()\n\n if (this.elem) {\n this.elem.style.height = 'auto'\n }\n\n this.__currentHeight = undefined\n const newHeight = this.getUnknownHeight()\n\n // If the height has changed during the animation, we need to adjust it\n if (endHeight !== newHeight) {\n this.adjustTo(endHeight, newHeight)\n } else {\n this.callAnimationEnd()\n }\n }\n /**\n * Determines whether the animation can finish.\n * Check for certain states and if the time passed is too short.\n * With a so short first state change, we do not call animation end.\n */\n canFinish() {\n return Boolean(\n this.startTime &&\n Date.now() - this.startTime >\n (globalThis.animationDuration ?? this.duration)\n )\n }\n /**\n * Determines whether the animation should be bypassed.\n * Check for certain states and if the time passed is too short to be correct.\n * With a very short first state change, we skip animation.\n */\n shouldBypassAnimation() {\n const opts = this.getOptions()\n\n if (!this.elem || opts.animate === false) {\n return true\n }\n\n if (\n this.isInBrowser &&\n (globalThis.IS_TEST || globalThis.bypassTime === -1)\n ) {\n return false\n }\n\n return Boolean(\n this.firstTime &&\n Date.now() - this.firstTime < (globalThis.bypassTime ?? 100)\n )\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HeightAnimationInstance.js","names":["HeightAnimation","constructor","opts","arguments","length","undefined","_defineProperty","animate","visibility","opacity","height","isInBrowser","window","setState","setOptions","callAnimationStart","startTime","Date","now","firstTime","onStartStack","forEach","fn","state","callAnimationEnd","isAnimating","__currentHeight","removeEndEvents","onEndStack","addEndEvent","listener","_this$elem","_this$elem$addEventLi","handleTransitionEnd","e","canFinish","delay","duration","timeouts","push","setTimeout","events","elem","addEventListener","call","_this$elem2","_this$elem2$removeEve","removeEventListener","setElement","_this$elem3","_globalThis$animation","document","createElement","String","nodeName","toLowerCase","parentElement","globalThis","animationDuration","parseFloat","getComputedStyle","transitionDuration","Object","freeze","_objectSpread","getOptions","remove","stop","setAsOpen","setAsClosed","getHeight","_this$withFallback","withFallback","getUnknownHeight","_this$elem$parentNode","_this$withFallback2","_this$withFallback3","_clonedElem$parentNod","clonedElem","cloneNode","inputs","querySelectorAll","input","removeAttribute","key","firstPaintStyle","style","position","parentNode","insertBefore","nextSibling","elemWidth","clientWidth","clonedWidth","width","removeChild","fallback","val","hasAttribute","getAttribute","isNaN","onStart","onEnd","start","fromHeight","toHeight","requestAnimationFrame","cleanup","stopOuterAnimations","reqId1","classList","contains","reqId2","id","clearTimeout","cancelAnimationFrame","open","shouldBypassAnimation","target","currentTarget","overflowY","readjust","close","adjustTo","elements","getCloses","_elem$parentElement","closest","add","endHeight","newHeight","_globalThis$animation2","Boolean","_globalThis$bypassTim","IS_TEST","bypassTime","exports","default"],"sources":["../../../../src/components/height-animation/HeightAnimationInstance.ts"],"sourcesContent":["export type HeightAnimationOnStartStates =\n | 'opening'\n | 'closing'\n | 'adjusting'\nexport type HeightAnimationOnEndStates = 'opened' | 'closed' | 'adjusted'\nexport type HeightAnimationStates =\n | HeightAnimationOnStartStates\n | HeightAnimationOnEndStates\n | 'init'\nexport type HeightAnimationOptions = {\n animate?: boolean\n}\nexport type HeightAnimationOnStartCallback = (\n state: HeightAnimationStates\n) => void\nexport type HeightAnimationOnEndCallback = (\n state: HeightAnimationStates\n) => void\nexport type HeightAnimationOnStartStack =\n Array<HeightAnimationOnStartCallback>\nexport type HeightAnimationOnEndStack = Array<HeightAnimationOnEndCallback>\nexport type HeightAnimationEventListener = (e: Event) => void\nexport type HeightAnimationEvents = Array<HeightAnimationEventListener>\nexport type HeightAnimationElement = HTMLElement\nexport type HeightAnimationContainer = HTMLElement\nexport type HeightAnimationFromHeight = number\nexport type HeightAnimationToHeight = number\n\nexport default class HeightAnimation {\n private state: Readonly<HeightAnimationStates>\n isInBrowser: boolean\n onStartStack: HeightAnimationOnStartStack = []\n onEndStack: HeightAnimationOnEndStack = []\n events: HeightAnimationEvents = []\n opts: HeightAnimationOptions = { animate: true }\n elem: HeightAnimationElement\n reqId1: number\n reqId2: number\n resizeTimeout: NodeJS.Timeout\n timeouts: NodeJS.Timeout[] = []\n firstTime?: number = 0\n startTime?: number = 0\n duration?: number = 0\n isAnimating: boolean\n __currentHeight: number\n\n firstPaintStyle = {\n visibility: 'hidden',\n opacity: '0', // prevents before/after elements to be visible\n height: 'auto',\n } as const\n\n constructor(opts: HeightAnimationOptions = {}) {\n this.isInBrowser = typeof window !== 'undefined'\n this.setState('init')\n this.setOptions(opts)\n }\n\n callAnimationStart() {\n this.startTime = Date.now()\n if (!this.firstTime) {\n this.firstTime = this.startTime\n }\n if (this.onStartStack) {\n this.onStartStack.forEach((fn) => {\n if (typeof fn === 'function') {\n fn(this.state)\n }\n })\n }\n }\n callAnimationEnd() {\n this.isAnimating = false\n\n if (this.state !== 'opened') {\n delete this.__currentHeight\n }\n\n this.removeEndEvents()\n\n if (this.onEndStack) {\n this.onEndStack.forEach((fn) => {\n if (typeof fn === 'function') {\n fn(this.state)\n }\n })\n }\n }\n addEndEvent(listener: HeightAnimationEventListener) {\n this.removeEndEvents() // also, remove events on every open (but not on close!)\n\n const handleTransitionEnd = (e) => {\n if (this.canFinish()) {\n listener(e)\n } else {\n const delay = this.duration - (Date.now() - this.startTime)\n\n if (delay === -1) {\n listener(e)\n } else {\n this.timeouts.push(setTimeout(() => listener(e), delay))\n }\n }\n }\n\n this.events.push(handleTransitionEnd)\n this.elem?.addEventListener?.('transitionend', handleTransitionEnd)\n }\n removeEndEvents() {\n this.events.forEach((listener) => {\n this.elem?.removeEventListener?.('transitionend', listener)\n })\n this.events = []\n }\n\n // Public methods\n setElement(elem: HeightAnimationElement) {\n this.elem =\n elem ||\n (typeof document !== 'undefined' && document.createElement('div'))\n\n // TODO: remove when responsive tables are supported\n if (String(this.elem?.nodeName).toLowerCase() === 'td') {\n this.elem = this.elem.parentElement\n }\n\n this.duration =\n globalThis.animationDuration ??\n (parseFloat(window.getComputedStyle(this.elem).transitionDuration) *\n 1000 ||\n 400) // The default duration\n }\n setState(state: HeightAnimationStates) {\n this.state = Object.freeze(state)\n }\n setOptions(opts: HeightAnimationOptions) {\n this.opts = Object.freeze({ ...this.opts, ...opts })\n }\n getOptions() {\n return this.opts\n }\n remove() {\n this.stop()\n this.removeEndEvents()\n this.setState('init')\n this.isAnimating = false\n this.onEndStack = []\n this.onStartStack = []\n this.__currentHeight = undefined\n this.elem = undefined\n }\n setAsOpen() {\n if (this.state === 'opened') {\n return\n }\n this.setState('opening')\n this.callAnimationStart()\n this.setState('opened')\n this.callAnimationEnd()\n }\n setAsClosed() {\n if (this.state === 'closed') {\n return\n }\n this.setState('closing')\n this.callAnimationStart()\n this.setState('closed')\n this.callAnimationEnd()\n }\n getHeight() {\n return this.withFallback(this.elem, 'clientHeight') ?? null\n }\n getUnknownHeight() {\n if (!this.elem) {\n return null\n }\n\n if (this.isAnimating && typeof this.__currentHeight !== 'undefined') {\n return this.__currentHeight\n }\n\n const clonedElem = this.elem.cloneNode(true) as HTMLElement\n const inputs = clonedElem.querySelectorAll('input')\n inputs.forEach((input) => {\n input.removeAttribute('name') // because type=\"radio\" will be else effected negatively\n input.removeAttribute('id') // don't put IDs twice in the DOM\n })\n\n // Hide the cloned element\n for (const key in this.firstPaintStyle) {\n clonedElem.style[key] = this.firstPaintStyle[key]\n }\n clonedElem.style.position = 'absolute' // not a part of the \"firstPaintStyle\"\n\n this.elem.parentNode?.insertBefore(clonedElem, this.elem.nextSibling)\n\n // When text is wrapped, we get different widths,\n // so we need to set the width to the original width\n const elemWidth = this.elem.clientWidth\n const clonedWidth =\n this.withFallback(clonedElem, 'clientWidth', 'data-width') ?? 0\n\n if (clonedWidth > elemWidth) {\n clonedElem.style.width = `${elemWidth}px`\n }\n\n const height =\n // data-height is used for mockup testing with \"mockHeight\"\n this.withFallback(this.elem, 'clientHeight', 'data-height') ?? null\n\n clonedElem.parentNode?.removeChild(clonedElem)\n\n if (height) {\n this.__currentHeight = height\n }\n\n return height\n }\n withFallback(\n elem: HTMLElement,\n key: 'clientHeight' | 'clientWidth',\n fallback?: 'data-height' | 'data-width'\n ) {\n const val =\n fallback && elem.hasAttribute(fallback)\n ? parseFloat(elem.getAttribute(fallback))\n : elem?.[key]\n\n if (isNaN(val)) {\n return null\n }\n\n return val\n }\n onStart(fn: HeightAnimationOnStartCallback) {\n this.onStartStack.push(fn)\n }\n onEnd(fn: HeightAnimationOnEndCallback) {\n this.onEndStack.push(fn)\n }\n start(\n fromHeight: HeightAnimationFromHeight,\n toHeight: HeightAnimationToHeight\n ) {\n if (\n !this.elem ||\n !(\n this.isInBrowser &&\n typeof window.requestAnimationFrame === 'function'\n )\n ) {\n return\n }\n\n const opts = this.getOptions()\n if (opts.animate === false) {\n return\n }\n\n this.stop()\n this.isAnimating = true\n\n const cleanup = this.stopOuterAnimations()\n\n // make the animation\n this.reqId1 = window.requestAnimationFrame(() => {\n if (\n !this.elem ||\n this.elem.classList.contains('dnb-height-animation--stop')\n ) {\n return\n }\n\n this.elem.style.height = `${fromHeight}px`\n\n this.reqId2 = window.requestAnimationFrame(() => {\n if (!this.elem) {\n return\n }\n\n this.elem.style.height = `${toHeight}px`\n\n cleanup()\n })\n })\n }\n stop() {\n this.timeouts.forEach((id) => clearTimeout(id))\n this.timeouts = []\n\n if (\n this.isInBrowser &&\n typeof window.requestAnimationFrame === 'function'\n ) {\n window.cancelAnimationFrame(this.reqId1)\n window.cancelAnimationFrame(this.reqId2)\n }\n }\n open() {\n if (\n this.state === 'opened' ||\n this.state === 'opening' ||\n this.shouldBypassAnimation()\n ) {\n this.setAsOpen()\n return\n }\n\n this.setState('opening')\n this.callAnimationStart()\n\n const toHeight = this.getUnknownHeight()\n\n this.addEndEvent((e) => {\n if (e.target === e.currentTarget || !e.currentTarget) {\n if (this.elem) {\n this.elem.style.overflowY = ''\n }\n this.setState('opened')\n this.readjust()\n }\n })\n\n this.start(0, toHeight)\n }\n close() {\n if (\n this.state === 'closed' ||\n this.state === 'closing' ||\n this.shouldBypassAnimation()\n ) {\n this.setAsClosed()\n return\n }\n\n this.setState('closing')\n this.callAnimationStart()\n\n const fromHeight = this.getHeight()\n\n this.addEndEvent((e) => {\n if (e.target === e.currentTarget || !e.currentTarget) {\n if (this.elem) {\n this.elem.style.visibility = 'hidden'\n this.elem.style.overflowY = 'clip'\n }\n this.setState('closed')\n this.callAnimationEnd()\n }\n })\n\n this.start(fromHeight, 0)\n }\n adjustTo(\n fromHeight: HeightAnimationFromHeight = null,\n toHeight: HeightAnimationToHeight = null\n ) {\n const opts = this.getOptions()\n\n if (\n !this.elem ||\n opts.animate === false ||\n this.state === 'opening' ||\n this.state === 'closing'\n ) {\n return\n }\n\n if (fromHeight === null) {\n fromHeight = this.getHeight()\n }\n if (toHeight === null) {\n toHeight = this.getUnknownHeight()\n }\n\n if (fromHeight === toHeight) {\n this.setState('adjusted')\n return\n }\n\n this.setState('adjusting')\n this.callAnimationStart()\n\n this.addEndEvent((e) => {\n if (\n this.state === 'adjusting' &&\n (e.target === e.currentTarget || !e.currentTarget)\n ) {\n if (this.elem) {\n this.elem.style.height = 'auto'\n }\n this.setState('adjusted')\n this.callAnimationEnd()\n }\n })\n\n this.start(fromHeight, toHeight)\n }\n stopOuterAnimations() {\n // When animating nested height animations,\n // we need to stop the outer animation,\n // because it has a fixed height. We want it to be \"auto\".\n\n const elements = []\n\n const getCloses = (elem: HTMLElement) =>\n elem.parentElement?.closest('.dnb-height-animation') as HTMLElement\n\n let elem = getCloses(this.elem)\n while (elem) {\n elements.push(elem)\n elem = getCloses(elem)\n }\n\n elements.forEach((elem) => {\n elem.classList.add('dnb-height-animation--stop')\n })\n\n return () => {\n elements.forEach((elem) => {\n if (elem) {\n elem.classList.remove('dnb-height-animation--stop')\n }\n })\n elements.length = 0 // reset the array\n }\n }\n readjust() {\n const endHeight = this.getHeight()\n\n if (this.elem) {\n this.elem.style.height = 'auto'\n }\n\n this.__currentHeight = undefined\n const newHeight = this.getUnknownHeight()\n\n // If the height has changed during the animation, we need to adjust it\n if (endHeight !== newHeight) {\n this.adjustTo(endHeight, newHeight)\n } else {\n this.callAnimationEnd()\n }\n }\n /**\n * Determines whether the animation can finish.\n * Check for certain states and if the time passed is too short.\n * With a so short first state change, we do not call animation end.\n */\n canFinish() {\n return Boolean(\n this.startTime &&\n Date.now() - this.startTime >\n (globalThis.animationDuration ?? this.duration)\n )\n }\n /**\n * Determines whether the animation should be bypassed.\n * Check for certain states and if the time passed is too short to be correct.\n * With a very short first state change, we skip animation.\n */\n shouldBypassAnimation() {\n const opts = this.getOptions()\n\n if (!this.elem || opts.animate === false) {\n return true\n }\n\n if (\n this.isInBrowser &&\n (globalThis.IS_TEST || globalThis.bypassTime === -1)\n ) {\n return false\n }\n\n return Boolean(\n this.firstTime &&\n Date.now() - this.firstTime < (globalThis.bypassTime ?? 100)\n )\n }\n}\n"],"mappings":"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"}
|
|
@@ -51,7 +51,7 @@ export interface InputMaskedProps
|
|
|
51
51
|
extends Omit<React.HTMLProps<HTMLElement>, 'ref'>,
|
|
52
52
|
SpacingProps {
|
|
53
53
|
/**
|
|
54
|
-
* A mask can be defined both as a [RegExp style of characters](https://github.com/text-mask/text-mask/blob/master/componentDocumentation.md#readme) or a callback function. Example below.
|
|
54
|
+
* A mask can be defined both as a [RegExp style of characters](https://github.com/text-mask/text-mask/blob/master/componentDocumentation.md#readme) or a callback function. Example below. Defaults to number mask.
|
|
55
55
|
*/
|
|
56
56
|
mask?: InputMaskedMask;
|
|
57
57
|
/**
|
|
@@ -32,7 +32,7 @@ const InputMasked = props => {
|
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
const contextAndProps = _react.default.useMemo(() => {
|
|
35
|
-
return (0, _componentHelper.extendPropsWithContext)(props,
|
|
35
|
+
return (0, _componentHelper.extendPropsWithContext)(props, defaultProps, context === null || context === void 0 ? void 0 : context.InputMasked);
|
|
36
36
|
}, [context === null || context === void 0 ? void 0 : context.InputMasked, props]);
|
|
37
37
|
return _react.default.createElement(_InputMaskedContext.default.Provider, {
|
|
38
38
|
value: {
|
|
@@ -64,7 +64,7 @@ process.env.NODE_ENV !== "production" ? InputMasked.propTypes = _objectSpread({
|
|
|
64
64
|
on_submit_focus: _propTypes.default.func,
|
|
65
65
|
on_submit_blur: _propTypes.default.func
|
|
66
66
|
}, _Input.inputPropTypes) : void 0;
|
|
67
|
-
|
|
67
|
+
const defaultProps = _objectSpread(_objectSpread({}, _Input.default.defaultProps), {}, {
|
|
68
68
|
mask: null,
|
|
69
69
|
number_mask: null,
|
|
70
70
|
currency_mask: null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputMasked.js","names":["_react","_interopRequireDefault","require","_propTypes","_componentHelper","_InputMaskedContext","_InputMaskedElement2","_Input","_interopRequireWildcard","_Context","_InputMaskedElement","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","InputMasked","props","context","React","useContext","Context","mask","alias","test","contextAndProps","useMemo","extendPropsWithContext","defaultProps","createElement","Provider","process","env","NODE_ENV","propTypes","PropTypes","oneOfType","array","func","number_mask","string","bool","currency_mask","mask_options","number_format","locale","as_currency","as_number","as_percent","show_mask","show_guide","pipe","keep_char_positions","placeholder_char","inner_ref","on_change","on_submit","on_focus","on_blur","on_submit_focus","on_submit_blur","inputPropTypes","Input","_formElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/components/input-masked/InputMasked.js"],"sourcesContent":["/* eslint-disable react/no-unused-prop-types */\n/**\n * Web InputMasked Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport { extendPropsWithContext } from '../../shared/component-helper'\nimport InputMaskedContext from './InputMaskedContext'\nimport InputMaskedElement from './InputMaskedElement'\nimport Input, { inputPropTypes } from '../input/Input'\nimport Context from '../../shared/Context'\n\nconst InputMasked = (props) => {\n const context = React.useContext(Context)\n\n // Remove masks defined in Provider/Context, because it overwrites a custom mask\n if (props?.mask) {\n const alias = context?.InputMasked\n for (const key in alias) {\n if (/^as[_A-Z]|number_mask|currency_mask/.test(key)) {\n delete alias[key]\n }\n }\n }\n\n const contextAndProps = React.useMemo(() => {\n return extendPropsWithContext(\n props,\n InputMasked.defaultProps,\n context?.InputMasked\n )\n }, [context?.InputMasked, props])\n\n return (\n <InputMaskedContext.Provider\n value={{\n props: contextAndProps,\n context,\n }}\n >\n <InputMaskedElement />\n </InputMaskedContext.Provider>\n )\n}\n\nInputMasked.propTypes = {\n mask: PropTypes.oneOfType([\n PropTypes.object,\n PropTypes.array,\n PropTypes.func,\n ]),\n number_mask: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.object,\n ]),\n currency_mask: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.object,\n ]),\n mask_options: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n number_format: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n locale: PropTypes.string,\n as_currency: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n as_number: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n as_percent: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n show_mask: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n show_guide: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n pipe: PropTypes.func,\n keep_char_positions: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n placeholder_char: PropTypes.string,\n inner_ref: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n\n on_change: PropTypes.func,\n on_submit: PropTypes.func,\n on_focus: PropTypes.func,\n on_blur: PropTypes.func,\n on_submit_focus: PropTypes.func,\n on_submit_blur: PropTypes.func,\n\n ...inputPropTypes,\n}\n\nInputMasked.defaultProps = {\n ...Input.defaultProps,\n\n mask: null,\n number_mask: null,\n currency_mask: null,\n mask_options: null,\n number_format: null,\n as_currency: null,\n as_number: null,\n as_percent: null,\n locale: null,\n show_mask: false,\n show_guide: true,\n pipe: null,\n keep_char_positions: false,\n placeholder_char: null,\n inner_ref: null,\n\n on_change: null,\n on_submit: null,\n on_focus: null,\n on_blur: null,\n on_submit_focus: null,\n on_submit_blur: null,\n}\n\nInputMasked._formElement = true\nInputMasked._supportsSpacingProps = true\n\nexport default InputMasked\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InputMasked.js","names":["_react","_interopRequireDefault","require","_propTypes","_componentHelper","_InputMaskedContext","_InputMaskedElement2","_Input","_interopRequireWildcard","_Context","_InputMaskedElement","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","InputMasked","props","context","React","useContext","Context","mask","alias","test","contextAndProps","useMemo","extendPropsWithContext","defaultProps","createElement","Provider","process","env","NODE_ENV","propTypes","PropTypes","oneOfType","array","func","number_mask","string","bool","currency_mask","mask_options","number_format","locale","as_currency","as_number","as_percent","show_mask","show_guide","pipe","keep_char_positions","placeholder_char","inner_ref","on_change","on_submit","on_focus","on_blur","on_submit_focus","on_submit_blur","inputPropTypes","Input","_formElement","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/components/input-masked/InputMasked.js"],"sourcesContent":["/* eslint-disable react/no-unused-prop-types */\n/**\n * Web InputMasked Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport { extendPropsWithContext } from '../../shared/component-helper'\nimport InputMaskedContext from './InputMaskedContext'\nimport InputMaskedElement from './InputMaskedElement'\nimport Input, { inputPropTypes } from '../input/Input'\nimport Context from '../../shared/Context'\n\nconst InputMasked = (props) => {\n const context = React.useContext(Context)\n\n // Remove masks defined in Provider/Context, because it overwrites a custom mask\n if (props?.mask) {\n const alias = context?.InputMasked\n for (const key in alias) {\n if (/^as[_A-Z]|number_mask|currency_mask/.test(key)) {\n delete alias[key]\n }\n }\n }\n\n const contextAndProps = React.useMemo(() => {\n return extendPropsWithContext(\n props,\n defaultProps,\n context?.InputMasked\n )\n }, [context?.InputMasked, props])\n\n return (\n <InputMaskedContext.Provider\n value={{\n props: contextAndProps,\n context,\n }}\n >\n <InputMaskedElement />\n </InputMaskedContext.Provider>\n )\n}\n\nInputMasked.propTypes = {\n mask: PropTypes.oneOfType([\n PropTypes.object,\n PropTypes.array,\n PropTypes.func,\n ]),\n number_mask: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.object,\n ]),\n currency_mask: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.object,\n ]),\n mask_options: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n number_format: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n locale: PropTypes.string,\n as_currency: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n as_number: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n as_percent: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n show_mask: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n show_guide: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n pipe: PropTypes.func,\n keep_char_positions: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n placeholder_char: PropTypes.string,\n inner_ref: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n\n on_change: PropTypes.func,\n on_submit: PropTypes.func,\n on_focus: PropTypes.func,\n on_blur: PropTypes.func,\n on_submit_focus: PropTypes.func,\n on_submit_blur: PropTypes.func,\n\n ...inputPropTypes,\n}\n\nconst defaultProps = {\n ...Input.defaultProps,\n\n mask: null,\n number_mask: null,\n currency_mask: null,\n mask_options: null,\n number_format: null,\n as_currency: null,\n as_number: null,\n as_percent: null,\n locale: null,\n show_mask: false,\n show_guide: true,\n pipe: null,\n keep_char_positions: false,\n placeholder_char: null,\n inner_ref: null,\n\n on_change: null,\n on_submit: null,\n on_focus: null,\n on_blur: null,\n on_submit_focus: null,\n on_submit_blur: null,\n}\n\nInputMasked._formElement = true\nInputMasked._supportsSpacingProps = true\n\nexport default InputMasked\n"],"mappings":"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"}
|