@dnb/eufemia 10.12.0 → 10.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +58 -0
- package/cjs/components/accordion/Accordion.js +1 -0
- package/cjs/components/accordion/Accordion.js.map +1 -1
- package/cjs/components/accordion/AccordionContent.js +1 -0
- package/cjs/components/accordion/AccordionContent.js.map +1 -1
- package/cjs/components/accordion/AccordionGroup.js +1 -0
- package/cjs/components/accordion/AccordionGroup.js.map +1 -1
- package/cjs/components/accordion/AccordionHeader.js +5 -15
- package/cjs/components/accordion/AccordionHeader.js.map +1 -1
- package/cjs/components/accordion/style/dnb-accordion.css +2 -2
- package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
- package/cjs/components/accordion/style/dnb-accordion.scss +3 -8
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +1 -1
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
- package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +1 -1
- package/cjs/components/anchor/Anchor.js +1 -0
- package/cjs/components/anchor/Anchor.js.map +1 -1
- package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +2 -2
- package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
- package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +1 -2
- package/cjs/components/autocomplete/Autocomplete.d.ts +2 -2
- package/cjs/components/autocomplete/Autocomplete.js +118 -90
- package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/avatar/Avatar.js +1 -0
- package/cjs/components/avatar/Avatar.js.map +1 -1
- package/cjs/components/avatar/AvatarGroup.js +1 -0
- package/cjs/components/avatar/AvatarGroup.js.map +1 -1
- package/cjs/components/badge/Badge.js +1 -0
- package/cjs/components/badge/Badge.js.map +1 -1
- package/cjs/components/breadcrumb/Breadcrumb.js +1 -0
- package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/cjs/components/breadcrumb/BreadcrumbItem.js +1 -0
- package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/cjs/components/button/Button.js +2 -0
- package/cjs/components/button/Button.js.map +1 -1
- package/cjs/components/button/style/themes/dnb-button-theme-eiendom.scss +1 -1
- package/cjs/components/button/style/themes/dnb-button-theme-sbanken.css +2 -2
- package/cjs/components/button/style/themes/dnb-button-theme-sbanken.min.css +1 -1
- package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +2 -2
- package/cjs/components/card/Card.js +2 -2
- package/cjs/components/card/Card.js.map +1 -1
- package/cjs/components/checkbox/Checkbox.js +2 -0
- package/cjs/components/checkbox/Checkbox.js.map +1 -1
- package/cjs/components/date-picker/DatePicker.js +2 -0
- package/cjs/components/date-picker/DatePicker.js.map +1 -1
- package/cjs/components/date-picker/DatePickerProvider.js +1 -0
- package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
- package/cjs/components/dialog/Dialog.js +1 -0
- package/cjs/components/dialog/Dialog.js.map +1 -1
- package/cjs/components/dialog/DialogContent.js +1 -0
- package/cjs/components/dialog/DialogContent.js.map +1 -1
- package/cjs/components/dialog/parts/DialogAction.js +1 -0
- package/cjs/components/dialog/parts/DialogAction.js.map +1 -1
- package/cjs/components/drawer/Drawer.js +1 -0
- package/cjs/components/drawer/Drawer.js.map +1 -1
- package/cjs/components/drawer/DrawerContent.js +1 -0
- package/cjs/components/drawer/DrawerContent.js.map +1 -1
- package/cjs/components/drawer/parts/DrawerContentContext.js +1 -0
- package/cjs/components/drawer/parts/DrawerContentContext.js.map +1 -1
- package/cjs/components/dropdown/Dropdown.js +1 -0
- package/cjs/components/dropdown/Dropdown.js.map +1 -1
- package/cjs/components/flex/Container.js +7 -4
- package/cjs/components/flex/Container.js.map +1 -1
- package/cjs/components/flex/Flex.d.ts +1 -1
- package/cjs/components/flex/Flex.js +1 -1
- package/cjs/components/flex/Flex.js.map +1 -1
- package/cjs/components/flex/export.d.ts +5 -0
- package/cjs/components/flex/export.js +42 -0
- package/cjs/components/flex/export.js.map +1 -0
- package/cjs/components/flex/index.d.ts +2 -5
- package/cjs/components/flex/index.js +5 -36
- package/cjs/components/flex/index.js.map +1 -1
- package/cjs/components/flex/utils.js +2 -2
- package/cjs/components/flex/utils.js.map +1 -1
- package/cjs/components/form-label/FormLabel.d.ts +1 -0
- package/cjs/components/form-label/FormLabel.js +2 -0
- package/cjs/components/form-label/FormLabel.js.map +1 -1
- package/cjs/components/form-row/FormRow.js +1 -0
- package/cjs/components/form-row/FormRow.js.map +1 -1
- package/cjs/components/form-row/style/dnb-form-row.scss +1 -1
- package/cjs/components/form-set/FormSet.js +1 -0
- package/cjs/components/form-set/FormSet.js.map +1 -1
- package/cjs/components/form-status/FormStatus.js +1 -0
- package/cjs/components/form-status/FormStatus.js.map +1 -1
- package/cjs/components/global-error/GlobalError.js +1 -0
- package/cjs/components/global-error/GlobalError.js.map +1 -1
- package/cjs/components/global-status/GlobalStatus.js +1 -0
- package/cjs/components/global-status/GlobalStatus.js.map +1 -1
- package/cjs/components/grid/Grid.d.ts +1 -1
- package/cjs/components/grid/Grid.js +1 -1
- package/cjs/components/grid/Grid.js.map +1 -1
- package/cjs/components/grid/export.d.ts +2 -0
- package/cjs/components/grid/export.js +21 -0
- package/cjs/components/grid/export.js.map +1 -0
- package/cjs/components/grid/index.d.ts +2 -2
- package/cjs/components/grid/index.js +5 -15
- package/cjs/components/grid/index.js.map +1 -1
- package/cjs/components/heading/Heading.js +1 -0
- package/cjs/components/heading/Heading.js.map +1 -1
- package/cjs/components/help-button/HelpButton.js +1 -0
- package/cjs/components/help-button/HelpButton.js.map +1 -1
- package/cjs/components/help-button/HelpButtonInstance.js +1 -0
- package/cjs/components/help-button/HelpButtonInstance.js.map +1 -1
- package/cjs/components/icon/Icon.js +1 -0
- package/cjs/components/icon/Icon.js.map +1 -1
- package/cjs/components/icon/style/dnb-icon.scss +1 -1
- package/cjs/components/icon-primary/IconPrimary.js +1 -0
- package/cjs/components/icon-primary/IconPrimary.js.map +1 -1
- package/cjs/components/info-card/InfoCard.js +1 -0
- package/cjs/components/info-card/InfoCard.js.map +1 -1
- package/cjs/components/input/Input.d.ts +4 -0
- package/cjs/components/input/Input.js +12 -2
- package/cjs/components/input/Input.js.map +1 -1
- package/cjs/components/input/InputPassword.js +2 -0
- package/cjs/components/input/InputPassword.js.map +1 -1
- package/cjs/components/input-masked/InputMasked.d.ts +1 -1
- package/cjs/components/input-masked/InputMasked.js +2 -0
- package/cjs/components/input-masked/InputMasked.js.map +1 -1
- package/cjs/components/input-masked/MultiInputMask.d.ts +12 -4
- package/cjs/components/input-masked/MultiInputMask.js +16 -8
- package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
- package/cjs/components/input-masked/TextMask.d.ts +1 -1
- package/cjs/components/input-masked/hooks/useHandleCursorPosition.js +2 -1
- package/cjs/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
- package/cjs/components/input-masked/hooks/useMultiInputValues.js +1 -0
- package/cjs/components/input-masked/hooks/useMultiInputValues.js.map +1 -1
- package/cjs/components/lib.d.ts +2 -0
- package/cjs/components/logo/Logo.js +1 -0
- package/cjs/components/logo/Logo.js.map +1 -1
- package/cjs/components/modal/Modal.js +1 -0
- package/cjs/components/modal/Modal.js.map +1 -1
- package/cjs/components/modal/ModalContent.js +1 -0
- package/cjs/components/modal/ModalContent.js.map +1 -1
- package/cjs/components/modal/parts/CloseButton.js +1 -0
- package/cjs/components/modal/parts/CloseButton.js.map +1 -1
- package/cjs/components/number-format/NumberFormat.js +1 -0
- package/cjs/components/number-format/NumberFormat.js.map +1 -1
- package/cjs/components/number-format/NumberUtils.js +1 -0
- package/cjs/components/number-format/NumberUtils.js.map +1 -1
- package/cjs/components/number-format/useNumberFormat.js +1 -0
- package/cjs/components/number-format/useNumberFormat.js.map +1 -1
- package/cjs/components/pagination/PaginationBar.js +1 -0
- package/cjs/components/pagination/PaginationBar.js.map +1 -1
- package/cjs/components/pagination/PaginationHelpers.js +1 -0
- package/cjs/components/pagination/PaginationHelpers.js.map +1 -1
- package/cjs/components/pagination/PaginationInfinity.js +1 -0
- package/cjs/components/pagination/PaginationInfinity.js.map +1 -1
- package/cjs/components/pagination/PaginationProvider.js +1 -0
- package/cjs/components/pagination/PaginationProvider.js.map +1 -1
- package/cjs/components/progress-indicator/ProgressIndicator.js +1 -0
- package/cjs/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/cjs/components/radio/Radio.js +4 -2
- package/cjs/components/radio/Radio.js.map +1 -1
- package/cjs/components/radio/RadioGroup.js +5 -4
- package/cjs/components/radio/RadioGroup.js.map +1 -1
- package/cjs/components/radio/style/dnb-radio.css +106 -0
- package/cjs/components/radio/style/dnb-radio.min.css +1 -1
- package/cjs/components/radio/style/dnb-radio.scss +202 -0
- package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.css +26 -0
- package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +1 -0
- package/cjs/components/radio/style/themes/dnb-radio-theme-sbanken.scss +33 -0
- package/cjs/components/radio/style/themes/dnb-radio-theme-ui.css +20 -86
- package/cjs/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
- package/cjs/components/radio/style/themes/dnb-radio-theme-ui.scss +26 -143
- package/cjs/components/section/Section.js +1 -0
- package/cjs/components/section/Section.js.map +1 -1
- package/cjs/components/skeleton/Skeleton.js +1 -0
- package/cjs/components/skeleton/Skeleton.js.map +1 -1
- package/cjs/components/skeleton/figures/Article.js +1 -0
- package/cjs/components/skeleton/figures/Article.js.map +1 -1
- package/cjs/components/skeleton/figures/Circle.js +1 -0
- package/cjs/components/skeleton/figures/Circle.js.map +1 -1
- package/cjs/components/skeleton/figures/Product.js +1 -0
- package/cjs/components/skeleton/figures/Product.js.map +1 -1
- package/cjs/components/skeleton/figures/Table.js +1 -0
- package/cjs/components/skeleton/figures/Table.js.map +1 -1
- package/cjs/components/slider/Slider.d.ts +1 -0
- package/cjs/components/slider/Slider.js +1 -0
- package/cjs/components/slider/Slider.js.map +1 -1
- package/cjs/components/slider/SliderInstance.js +1 -0
- package/cjs/components/slider/SliderInstance.js.map +1 -1
- package/cjs/components/slider/SliderProvider.js +1 -0
- package/cjs/components/slider/SliderProvider.js.map +1 -1
- package/cjs/components/space/Space.js +1 -0
- package/cjs/components/space/Space.js.map +1 -1
- package/cjs/components/step-indicator/StepIndicatorContext.js +1 -0
- package/cjs/components/step-indicator/StepIndicatorContext.js.map +1 -1
- package/cjs/components/step-indicator/StepIndicatorItem.js +3 -2
- package/cjs/components/step-indicator/StepIndicatorItem.js.map +1 -1
- package/cjs/components/step-indicator/StepIndicatorList.js +1 -0
- package/cjs/components/step-indicator/StepIndicatorList.js.map +1 -1
- package/cjs/components/step-indicator/StepIndicatorModal.js +1 -0
- package/cjs/components/step-indicator/StepIndicatorModal.js.map +1 -1
- package/cjs/components/step-indicator/StepIndicatorSidebar.js +1 -0
- package/cjs/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
- package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +1 -0
- package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
- package/cjs/components/switch/Switch.js +2 -0
- package/cjs/components/switch/Switch.js.map +1 -1
- package/cjs/components/table/Table.js +1 -0
- package/cjs/components/table/Table.js.map +1 -1
- package/cjs/components/table/style/themes/dnb-table-theme-sbanken.css +1 -0
- package/cjs/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
- package/cjs/components/table/style/themes/dnb-table-theme-sbanken.scss +1 -0
- package/cjs/components/tabs/Tabs.js +1 -0
- package/cjs/components/tabs/Tabs.js.map +1 -1
- package/cjs/components/tag/Tag.d.ts +1 -0
- package/cjs/components/tag/Tag.js +2 -0
- package/cjs/components/tag/Tag.js.map +1 -1
- package/cjs/components/tag/TagGroup.js +1 -0
- package/cjs/components/tag/TagGroup.js.map +1 -1
- package/cjs/components/textarea/Textarea.js +2 -0
- package/cjs/components/textarea/Textarea.js.map +1 -1
- package/cjs/components/timeline/Timeline.js +1 -0
- package/cjs/components/timeline/Timeline.js.map +1 -1
- package/cjs/components/timeline/TimelineItem.js +1 -0
- package/cjs/components/timeline/TimelineItem.js.map +1 -1
- package/cjs/components/toggle-button/ToggleButton.js +2 -0
- package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
- package/cjs/components/toggle-button/ToggleButtonGroup.js +5 -4
- package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
- package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +1 -1
- package/cjs/components/tooltip/Tooltip.js +1 -0
- package/cjs/components/tooltip/Tooltip.js.map +1 -1
- package/cjs/components/tooltip/TooltipPortal.js +1 -0
- package/cjs/components/tooltip/TooltipPortal.js.map +1 -1
- package/cjs/components/tooltip/TooltipWithEvents.js.map +1 -1
- package/cjs/components/upload/Upload.d.ts +1 -0
- package/cjs/components/upload/Upload.js +2 -0
- package/cjs/components/upload/Upload.js.map +1 -1
- package/cjs/components/upload/UploadContext.js +1 -0
- package/cjs/components/upload/UploadContext.js.map +1 -1
- package/cjs/components/upload/UploadFileInput.js +1 -0
- package/cjs/components/upload/UploadFileInput.js.map +1 -1
- package/cjs/components/upload/UploadFileListCell.js +1 -0
- package/cjs/components/upload/UploadFileListCell.js.map +1 -1
- package/cjs/components/upload/useUpload.js +1 -0
- package/cjs/components/upload/useUpload.js.map +1 -1
- package/cjs/components/visually-hidden/VisuallyHidden.js +1 -0
- package/cjs/components/visually-hidden/VisuallyHidden.js.map +1 -1
- package/cjs/elements/Element.js +1 -0
- package/cjs/elements/Element.js.map +1 -1
- package/cjs/elements/lists/Dl.d.ts +1 -1
- package/cjs/elements/lists/Dl.js.map +1 -1
- package/cjs/elements/typography/H.js +1 -0
- package/cjs/elements/typography/H.js.map +1 -1
- package/cjs/elements/typography/style/dnb-typography.scss +1 -1
- package/cjs/elements/typography/style/typography-mixins.scss +2 -2
- package/cjs/extensions/forms/DataContext/At/At.js +1 -0
- package/cjs/extensions/forms/DataContext/At/At.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +54 -42
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +12 -9
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +13 -8
- package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/Boolean/Boolean.js +3 -2
- package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
- package/cjs/extensions/forms/Field/Currency/Currency.js +3 -2
- package/cjs/extensions/forms/Field/Currency/Currency.js.map +1 -1
- package/cjs/extensions/forms/Field/Date/Date.js +2 -1
- package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
- package/cjs/extensions/forms/Field/Email/Email.js +11 -7
- package/cjs/extensions/forms/Field/Email/Email.js.map +1 -1
- package/cjs/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
- package/cjs/extensions/forms/Field/Expiry/Expiry.js +99 -0
- package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
- package/cjs/extensions/forms/Field/Expiry/index.d.ts +2 -0
- package/cjs/extensions/forms/Field/Expiry/index.js +27 -0
- package/cjs/extensions/forms/Field/Expiry/index.js.map +1 -0
- package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.css +12 -0
- package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
- package/cjs/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +13 -8
- package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/Number/Number.js +48 -25
- package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
- package/cjs/extensions/forms/Field/Option/Option.js +1 -1
- package/cjs/extensions/forms/Field/Option/Option.js.map +1 -1
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +13 -8
- package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +5 -0
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +75 -22
- package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +6 -4
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +17 -11
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/Selection.js +29 -20
- package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/cjs/extensions/forms/Field/String/String.js +37 -26
- package/cjs/extensions/forms/Field/String/String.js.map +1 -1
- package/cjs/extensions/forms/Field/Toggle/Toggle.js +5 -4
- package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/cjs/extensions/forms/Field/index.d.ts +1 -0
- package/cjs/extensions/forms/Field/index.js +7 -0
- package/cjs/extensions/forms/Field/index.js.map +1 -1
- package/cjs/extensions/forms/Field/style/dnb-forms-field.css +13 -0
- package/cjs/extensions/forms/Field/style/dnb-forms-field.min.css +1 -1
- package/cjs/extensions/forms/Field/style/dnb-forms-field.scss +1 -0
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js +37 -2
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/Form/Element/Element.js +1 -0
- package/cjs/extensions/forms/Form/Element/Element.js.map +1 -1
- package/cjs/extensions/forms/Form/Handler/Handler.js +1 -0
- package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js +1 -0
- package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Array/Array.js +2 -2
- package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +3 -2
- package/cjs/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +2 -1
- package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.js +1 -0
- package/cjs/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +1 -0
- package/cjs/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/Step/Step.js +1 -0
- package/cjs/extensions/forms/StepsLayout/Step/Step.js.map +1 -1
- package/cjs/extensions/forms/StepsLayout/StepsLayout.js +3 -1
- package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
- package/cjs/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +3 -1
- package/cjs/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/cjs/extensions/forms/Value/Boolean/Boolean.js +1 -0
- package/cjs/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
- package/cjs/extensions/forms/Value/Currency/Currency.js +3 -2
- package/cjs/extensions/forms/Value/Currency/Currency.js.map +1 -1
- package/cjs/extensions/forms/Value/Date/Date.js +3 -1
- package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
- package/cjs/extensions/forms/Value/Email/Email.js +3 -1
- package/cjs/extensions/forms/Value/Email/Email.js.map +1 -1
- package/cjs/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +3 -1
- package/cjs/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js +3 -1
- package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js +1 -1
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/cjs/extensions/forms/Visibility/Visibility.js +1 -0
- package/cjs/extensions/forms/Visibility/Visibility.js.map +1 -1
- package/cjs/extensions/forms/hooks/index.d.ts +3 -0
- package/cjs/extensions/forms/hooks/index.js +21 -0
- package/cjs/extensions/forms/hooks/index.js.map +1 -1
- package/cjs/extensions/forms/hooks/useDataValue.js +138 -68
- package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/cjs/extensions/forms/hooks/useMountEffect.d.ts +5 -0
- package/cjs/extensions/forms/hooks/useMountEffect.js +14 -0
- package/cjs/extensions/forms/hooks/useMountEffect.js.map +1 -0
- package/cjs/extensions/forms/hooks/useProcessManager.d.ts +6 -0
- package/cjs/extensions/forms/hooks/useProcessManager.js +21 -0
- package/cjs/extensions/forms/hooks/useProcessManager.js.map +1 -0
- package/cjs/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
- package/cjs/extensions/forms/hooks/useUpdateEffect.js +19 -0
- package/cjs/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
- package/cjs/extensions/forms/style/dnb-forms.css +13 -0
- package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
- package/cjs/extensions/forms/types.d.ts +10 -2
- package/cjs/extensions/forms/types.js +8 -6
- package/cjs/extensions/forms/types.js.map +1 -1
- package/cjs/extensions/forms/utils/ajv.js +28 -3
- package/cjs/extensions/forms/utils/ajv.js.map +1 -1
- package/cjs/extensions/forms/utils/errors.d.ts +2 -0
- package/cjs/extensions/forms/utils/errors.js +16 -0
- package/cjs/extensions/forms/utils/errors.js.map +1 -0
- package/cjs/extensions/forms/utils/index.d.ts +1 -0
- package/cjs/extensions/forms/utils/index.js +12 -0
- package/cjs/extensions/forms/utils/index.js.map +1 -1
- package/cjs/extensions/forms/utils/numbers.js +2 -2
- package/cjs/extensions/forms/utils/numbers.js.map +1 -1
- package/cjs/extensions/forms/utils/useWasChanged.js +8 -6
- package/cjs/extensions/forms/utils/useWasChanged.js.map +1 -1
- package/cjs/extensions/payment-card/PaymentCard.js +1 -0
- package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListHelpers.js +1 -1
- package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerListProvider.js +1 -0
- package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/cjs/fragments/drawer-list/style/themes/dnb-drawer-list-theme-sbanken.scss +1 -1
- package/cjs/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +2 -2
- package/cjs/fragments/scroll-view/ScrollView.js +1 -0
- package/cjs/fragments/scroll-view/ScrollView.js.map +1 -1
- package/cjs/shared/Eufemia.d.ts +1 -1
- package/cjs/shared/Eufemia.js +2 -2
- package/cjs/shared/Eufemia.js.map +1 -1
- package/cjs/shared/MediaQuery.js +1 -0
- package/cjs/shared/MediaQuery.js.map +1 -1
- package/cjs/shared/Provider.js +1 -0
- package/cjs/shared/Provider.js.map +1 -1
- package/cjs/shared/Theme.js +1 -0
- package/cjs/shared/Theme.js.map +1 -1
- package/cjs/shared/VisibilityByTheme.js +1 -0
- package/cjs/shared/VisibilityByTheme.js.map +1 -1
- package/cjs/shared/index.js +1 -0
- package/cjs/shared/index.js.map +1 -1
- package/cjs/shared/locales/en-GB.d.ts +11 -0
- package/cjs/shared/locales/en-GB.js +12 -1
- package/cjs/shared/locales/en-GB.js.map +1 -1
- package/cjs/shared/locales/en-US.d.ts +11 -0
- package/cjs/shared/locales/index.d.ts +22 -0
- package/cjs/shared/locales/nb-NO.d.ts +11 -0
- package/cjs/shared/locales/nb-NO.js +12 -1
- package/cjs/shared/locales/nb-NO.js.map +1 -1
- package/cjs/shared/useMedia.js +1 -0
- package/cjs/shared/useMedia.js.map +1 -1
- package/cjs/shared/useMediaQuery.js +1 -0
- package/cjs/shared/useMediaQuery.js.map +1 -1
- package/cjs/shared/useTheme.js +1 -0
- package/cjs/shared/useTheme.js.map +1 -1
- package/cjs/shared/useTranslation.js +1 -0
- package/cjs/shared/useTranslation.js.map +1 -1
- package/cjs/style/dnb-ui-components.css +108 -2
- package/cjs/style/dnb-ui-components.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.css +13 -0
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +128 -88
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/fonts.scss +5 -4
- package/cjs/style/themes/theme-sbanken/properties.js +2 -2
- package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +141 -100
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +5 -5
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -0
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/theme-mapping.scss +2 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +128 -88
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +13 -0
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/components/accordion/Accordion.js +2 -0
- package/components/accordion/Accordion.js.map +1 -1
- package/components/accordion/AccordionContent.js +2 -0
- package/components/accordion/AccordionContent.js.map +1 -1
- package/components/accordion/AccordionGroup.js +2 -0
- package/components/accordion/AccordionGroup.js.map +1 -1
- package/components/accordion/AccordionHeader.js +6 -15
- package/components/accordion/AccordionHeader.js.map +1 -1
- package/components/accordion/style/dnb-accordion.css +2 -2
- package/components/accordion/style/dnb-accordion.min.css +1 -1
- package/components/accordion/style/dnb-accordion.scss +3 -8
- package/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +1 -1
- package/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
- package/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +1 -1
- package/components/anchor/Anchor.js +2 -0
- package/components/anchor/Anchor.js.map +1 -1
- package/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +2 -2
- package/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
- package/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +1 -2
- package/components/autocomplete/Autocomplete.d.ts +2 -2
- package/components/autocomplete/Autocomplete.js +119 -91
- package/components/autocomplete/Autocomplete.js.map +1 -1
- package/components/avatar/Avatar.js +2 -0
- package/components/avatar/Avatar.js.map +1 -1
- package/components/avatar/AvatarGroup.js +2 -0
- package/components/avatar/AvatarGroup.js.map +1 -1
- package/components/badge/Badge.js +2 -0
- package/components/badge/Badge.js.map +1 -1
- package/components/breadcrumb/Breadcrumb.js +2 -0
- package/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/components/breadcrumb/BreadcrumbItem.js +2 -0
- package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/components/button/Button.js +3 -0
- package/components/button/Button.js.map +1 -1
- package/components/button/style/themes/dnb-button-theme-eiendom.scss +1 -1
- package/components/button/style/themes/dnb-button-theme-sbanken.css +2 -2
- package/components/button/style/themes/dnb-button-theme-sbanken.min.css +1 -1
- package/components/button/style/themes/dnb-button-theme-sbanken.scss +2 -2
- package/components/card/Card.js +2 -2
- package/components/card/Card.js.map +1 -1
- package/components/checkbox/Checkbox.js +3 -0
- package/components/checkbox/Checkbox.js.map +1 -1
- package/components/date-picker/DatePicker.js +3 -0
- package/components/date-picker/DatePicker.js.map +1 -1
- package/components/date-picker/DatePickerProvider.js +2 -0
- package/components/date-picker/DatePickerProvider.js.map +1 -1
- package/components/dialog/Dialog.js +2 -0
- package/components/dialog/Dialog.js.map +1 -1
- package/components/dialog/DialogContent.js +2 -0
- package/components/dialog/DialogContent.js.map +1 -1
- package/components/dialog/parts/DialogAction.js +2 -0
- package/components/dialog/parts/DialogAction.js.map +1 -1
- package/components/drawer/Drawer.js +2 -0
- package/components/drawer/Drawer.js.map +1 -1
- package/components/drawer/DrawerContent.js +2 -0
- package/components/drawer/DrawerContent.js.map +1 -1
- package/components/drawer/parts/DrawerContentContext.js +2 -0
- package/components/drawer/parts/DrawerContentContext.js.map +1 -1
- package/components/dropdown/Dropdown.js +1 -0
- package/components/dropdown/Dropdown.js.map +1 -1
- package/components/flex/Container.js +8 -4
- package/components/flex/Container.js.map +1 -1
- package/components/flex/Flex.d.ts +1 -1
- package/components/flex/Flex.js +1 -1
- package/components/flex/Flex.js.map +1 -1
- package/components/flex/export.d.ts +5 -0
- package/components/flex/export.js +6 -0
- package/components/flex/export.js.map +1 -0
- package/components/flex/index.d.ts +2 -5
- package/components/flex/index.js +2 -5
- package/components/flex/index.js.map +1 -1
- package/components/flex/utils.js +2 -2
- package/components/flex/utils.js.map +1 -1
- package/components/form-label/FormLabel.d.ts +1 -0
- package/components/form-label/FormLabel.js +3 -0
- package/components/form-label/FormLabel.js.map +1 -1
- package/components/form-row/FormRow.js +2 -0
- package/components/form-row/FormRow.js.map +1 -1
- package/components/form-row/style/dnb-form-row.scss +1 -1
- package/components/form-set/FormSet.js +2 -0
- package/components/form-set/FormSet.js.map +1 -1
- package/components/form-status/FormStatus.js +2 -0
- package/components/form-status/FormStatus.js.map +1 -1
- package/components/global-error/GlobalError.js +2 -0
- package/components/global-error/GlobalError.js.map +1 -1
- package/components/global-status/GlobalStatus.js +2 -0
- package/components/global-status/GlobalStatus.js.map +1 -1
- package/components/grid/Grid.d.ts +1 -1
- package/components/grid/Grid.js +1 -1
- package/components/grid/Grid.js.map +1 -1
- package/components/grid/export.d.ts +2 -0
- package/components/grid/export.js +3 -0
- package/components/grid/export.js.map +1 -0
- package/components/grid/index.d.ts +2 -2
- package/components/grid/index.js +2 -2
- package/components/grid/index.js.map +1 -1
- package/components/heading/Heading.js +2 -0
- package/components/heading/Heading.js.map +1 -1
- package/components/help-button/HelpButton.js +2 -0
- package/components/help-button/HelpButton.js.map +1 -1
- package/components/help-button/HelpButtonInstance.js +2 -0
- package/components/help-button/HelpButtonInstance.js.map +1 -1
- package/components/icon/Icon.js +2 -0
- package/components/icon/Icon.js.map +1 -1
- package/components/icon/style/dnb-icon.scss +1 -1
- package/components/icon-primary/IconPrimary.js +2 -0
- package/components/icon-primary/IconPrimary.js.map +1 -1
- package/components/info-card/InfoCard.js +2 -0
- package/components/info-card/InfoCard.js.map +1 -1
- package/components/input/Input.d.ts +4 -0
- package/components/input/Input.js +13 -2
- package/components/input/Input.js.map +1 -1
- package/components/input/InputPassword.js +3 -0
- package/components/input/InputPassword.js.map +1 -1
- package/components/input-masked/InputMasked.d.ts +1 -1
- package/components/input-masked/InputMasked.js +3 -0
- package/components/input-masked/InputMasked.js.map +1 -1
- package/components/input-masked/MultiInputMask.d.ts +12 -4
- package/components/input-masked/MultiInputMask.js +17 -8
- package/components/input-masked/MultiInputMask.js.map +1 -1
- package/components/input-masked/TextMask.d.ts +1 -1
- package/components/input-masked/hooks/useHandleCursorPosition.js +3 -1
- package/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
- package/components/input-masked/hooks/useMultiInputValues.js +2 -0
- package/components/input-masked/hooks/useMultiInputValues.js.map +1 -1
- package/components/lib.d.ts +2 -0
- package/components/logo/Logo.js +2 -0
- package/components/logo/Logo.js.map +1 -1
- package/components/modal/Modal.js +2 -0
- package/components/modal/Modal.js.map +1 -1
- package/components/modal/ModalContent.js +2 -0
- package/components/modal/ModalContent.js.map +1 -1
- package/components/modal/parts/CloseButton.js +2 -0
- package/components/modal/parts/CloseButton.js.map +1 -1
- package/components/number-format/NumberFormat.js +2 -0
- package/components/number-format/NumberFormat.js.map +1 -1
- package/components/number-format/NumberUtils.js +2 -0
- package/components/number-format/NumberUtils.js.map +1 -1
- package/components/number-format/useNumberFormat.js +2 -0
- package/components/number-format/useNumberFormat.js.map +1 -1
- package/components/pagination/PaginationBar.js +2 -0
- package/components/pagination/PaginationBar.js.map +1 -1
- package/components/pagination/PaginationHelpers.js +2 -0
- package/components/pagination/PaginationHelpers.js.map +1 -1
- package/components/pagination/PaginationInfinity.js +2 -0
- package/components/pagination/PaginationInfinity.js.map +1 -1
- package/components/pagination/PaginationProvider.js +2 -0
- package/components/pagination/PaginationProvider.js.map +1 -1
- package/components/progress-indicator/ProgressIndicator.js +2 -0
- package/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/components/radio/Radio.js +5 -2
- package/components/radio/Radio.js.map +1 -1
- package/components/radio/RadioGroup.js +6 -4
- package/components/radio/RadioGroup.js.map +1 -1
- package/components/radio/style/dnb-radio.css +106 -0
- package/components/radio/style/dnb-radio.min.css +1 -1
- package/components/radio/style/dnb-radio.scss +202 -0
- package/components/radio/style/themes/dnb-radio-theme-sbanken.css +26 -0
- package/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +1 -0
- package/components/radio/style/themes/dnb-radio-theme-sbanken.scss +33 -0
- package/components/radio/style/themes/dnb-radio-theme-ui.css +20 -86
- package/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
- package/components/radio/style/themes/dnb-radio-theme-ui.scss +26 -143
- package/components/section/Section.js +2 -0
- package/components/section/Section.js.map +1 -1
- package/components/skeleton/Skeleton.js +2 -0
- package/components/skeleton/Skeleton.js.map +1 -1
- package/components/skeleton/figures/Article.js +2 -0
- package/components/skeleton/figures/Article.js.map +1 -1
- package/components/skeleton/figures/Circle.js +2 -0
- package/components/skeleton/figures/Circle.js.map +1 -1
- package/components/skeleton/figures/Product.js +2 -0
- package/components/skeleton/figures/Product.js.map +1 -1
- package/components/skeleton/figures/Table.js +2 -0
- package/components/skeleton/figures/Table.js.map +1 -1
- package/components/slider/Slider.d.ts +1 -0
- package/components/slider/Slider.js +1 -0
- package/components/slider/Slider.js.map +1 -1
- package/components/slider/SliderInstance.js +2 -0
- package/components/slider/SliderInstance.js.map +1 -1
- package/components/slider/SliderProvider.js +2 -0
- package/components/slider/SliderProvider.js.map +1 -1
- package/components/space/Space.js +2 -0
- package/components/space/Space.js.map +1 -1
- package/components/step-indicator/StepIndicatorContext.js +2 -0
- package/components/step-indicator/StepIndicatorContext.js.map +1 -1
- package/components/step-indicator/StepIndicatorItem.js +4 -2
- package/components/step-indicator/StepIndicatorItem.js.map +1 -1
- package/components/step-indicator/StepIndicatorList.js +2 -0
- package/components/step-indicator/StepIndicatorList.js.map +1 -1
- package/components/step-indicator/StepIndicatorModal.js +2 -0
- package/components/step-indicator/StepIndicatorModal.js.map +1 -1
- package/components/step-indicator/StepIndicatorSidebar.js +2 -0
- package/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
- package/components/step-indicator/StepIndicatorTriggerButton.js +2 -0
- package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
- package/components/switch/Switch.js +3 -0
- package/components/switch/Switch.js.map +1 -1
- package/components/table/Table.js +2 -0
- package/components/table/Table.js.map +1 -1
- package/components/table/style/themes/dnb-table-theme-sbanken.css +1 -0
- package/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
- package/components/table/style/themes/dnb-table-theme-sbanken.scss +1 -0
- package/components/tabs/Tabs.js +2 -0
- package/components/tabs/Tabs.js.map +1 -1
- package/components/tag/Tag.d.ts +1 -0
- package/components/tag/Tag.js +3 -0
- package/components/tag/Tag.js.map +1 -1
- package/components/tag/TagGroup.js +2 -0
- package/components/tag/TagGroup.js.map +1 -1
- package/components/textarea/Textarea.js +3 -0
- package/components/textarea/Textarea.js.map +1 -1
- package/components/timeline/Timeline.js +2 -0
- package/components/timeline/Timeline.js.map +1 -1
- package/components/timeline/TimelineItem.js +2 -0
- package/components/timeline/TimelineItem.js.map +1 -1
- package/components/toggle-button/ToggleButton.js +3 -0
- package/components/toggle-button/ToggleButton.js.map +1 -1
- package/components/toggle-button/ToggleButtonGroup.js +6 -4
- package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
- package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +1 -1
- package/components/tooltip/Tooltip.js +2 -0
- package/components/tooltip/Tooltip.js.map +1 -1
- package/components/tooltip/TooltipPortal.js +2 -0
- package/components/tooltip/TooltipPortal.js.map +1 -1
- package/components/tooltip/TooltipWithEvents.js.map +1 -1
- package/components/upload/Upload.d.ts +1 -0
- package/components/upload/Upload.js +3 -0
- package/components/upload/Upload.js.map +1 -1
- package/components/upload/UploadContext.js +2 -0
- package/components/upload/UploadContext.js.map +1 -1
- package/components/upload/UploadFileInput.js +2 -0
- package/components/upload/UploadFileInput.js.map +1 -1
- package/components/upload/UploadFileListCell.js +2 -0
- package/components/upload/UploadFileListCell.js.map +1 -1
- package/components/upload/useUpload.js +2 -0
- package/components/upload/useUpload.js.map +1 -1
- package/components/visually-hidden/VisuallyHidden.js +2 -0
- package/components/visually-hidden/VisuallyHidden.js.map +1 -1
- package/elements/Element.js +2 -0
- package/elements/Element.js.map +1 -1
- package/elements/lists/Dl.d.ts +1 -1
- package/elements/lists/Dl.js.map +1 -1
- package/elements/typography/H.js +2 -0
- package/elements/typography/H.js.map +1 -1
- package/elements/typography/style/dnb-typography.scss +1 -1
- package/elements/typography/style/typography-mixins.scss +2 -2
- package/es/components/accordion/Accordion.js +2 -0
- package/es/components/accordion/Accordion.js.map +1 -1
- package/es/components/accordion/AccordionContent.js +2 -0
- package/es/components/accordion/AccordionContent.js.map +1 -1
- package/es/components/accordion/AccordionGroup.js +2 -0
- package/es/components/accordion/AccordionGroup.js.map +1 -1
- package/es/components/accordion/AccordionHeader.js +6 -15
- package/es/components/accordion/AccordionHeader.js.map +1 -1
- package/es/components/accordion/style/dnb-accordion.css +2 -2
- package/es/components/accordion/style/dnb-accordion.min.css +1 -1
- package/es/components/accordion/style/dnb-accordion.scss +3 -8
- package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +1 -1
- package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -1
- package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +1 -1
- package/es/components/anchor/Anchor.js +2 -0
- package/es/components/anchor/Anchor.js.map +1 -1
- package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +2 -2
- package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
- package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +1 -2
- package/es/components/autocomplete/Autocomplete.d.ts +2 -2
- package/es/components/autocomplete/Autocomplete.js +118 -91
- package/es/components/autocomplete/Autocomplete.js.map +1 -1
- package/es/components/avatar/Avatar.js +2 -0
- package/es/components/avatar/Avatar.js.map +1 -1
- package/es/components/avatar/AvatarGroup.js +2 -0
- package/es/components/avatar/AvatarGroup.js.map +1 -1
- package/es/components/badge/Badge.js +2 -0
- package/es/components/badge/Badge.js.map +1 -1
- package/es/components/breadcrumb/Breadcrumb.js +2 -0
- package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/es/components/breadcrumb/BreadcrumbItem.js +2 -0
- package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/es/components/button/Button.js +3 -0
- package/es/components/button/Button.js.map +1 -1
- package/es/components/button/style/themes/dnb-button-theme-eiendom.scss +1 -1
- package/es/components/button/style/themes/dnb-button-theme-sbanken.css +2 -2
- package/es/components/button/style/themes/dnb-button-theme-sbanken.min.css +1 -1
- package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +2 -2
- package/es/components/card/Card.js +2 -2
- package/es/components/card/Card.js.map +1 -1
- package/es/components/checkbox/Checkbox.js +3 -0
- package/es/components/checkbox/Checkbox.js.map +1 -1
- package/es/components/date-picker/DatePicker.js +3 -0
- package/es/components/date-picker/DatePicker.js.map +1 -1
- package/es/components/date-picker/DatePickerProvider.js +2 -0
- package/es/components/date-picker/DatePickerProvider.js.map +1 -1
- package/es/components/dialog/Dialog.js +2 -0
- package/es/components/dialog/Dialog.js.map +1 -1
- package/es/components/dialog/DialogContent.js +2 -0
- package/es/components/dialog/DialogContent.js.map +1 -1
- package/es/components/dialog/parts/DialogAction.js +2 -0
- package/es/components/dialog/parts/DialogAction.js.map +1 -1
- package/es/components/drawer/Drawer.js +2 -0
- package/es/components/drawer/Drawer.js.map +1 -1
- package/es/components/drawer/DrawerContent.js +2 -0
- package/es/components/drawer/DrawerContent.js.map +1 -1
- package/es/components/drawer/parts/DrawerContentContext.js +2 -0
- package/es/components/drawer/parts/DrawerContentContext.js.map +1 -1
- package/es/components/dropdown/Dropdown.js +1 -0
- package/es/components/dropdown/Dropdown.js.map +1 -1
- package/es/components/flex/Container.js +8 -4
- package/es/components/flex/Container.js.map +1 -1
- package/es/components/flex/Flex.d.ts +1 -1
- package/es/components/flex/Flex.js +1 -1
- package/es/components/flex/Flex.js.map +1 -1
- package/es/components/flex/export.d.ts +5 -0
- package/es/components/flex/export.js +6 -0
- package/es/components/flex/export.js.map +1 -0
- package/es/components/flex/index.d.ts +2 -5
- package/es/components/flex/index.js +2 -5
- package/es/components/flex/index.js.map +1 -1
- package/es/components/flex/utils.js +2 -2
- package/es/components/flex/utils.js.map +1 -1
- package/es/components/form-label/FormLabel.d.ts +1 -0
- package/es/components/form-label/FormLabel.js +3 -0
- package/es/components/form-label/FormLabel.js.map +1 -1
- package/es/components/form-row/FormRow.js +2 -0
- package/es/components/form-row/FormRow.js.map +1 -1
- package/es/components/form-row/style/dnb-form-row.scss +1 -1
- package/es/components/form-set/FormSet.js +2 -0
- package/es/components/form-set/FormSet.js.map +1 -1
- package/es/components/form-status/FormStatus.js +2 -0
- package/es/components/form-status/FormStatus.js.map +1 -1
- package/es/components/global-error/GlobalError.js +2 -0
- package/es/components/global-error/GlobalError.js.map +1 -1
- package/es/components/global-status/GlobalStatus.js +2 -0
- package/es/components/global-status/GlobalStatus.js.map +1 -1
- package/es/components/grid/Grid.d.ts +1 -1
- package/es/components/grid/Grid.js +1 -1
- package/es/components/grid/Grid.js.map +1 -1
- package/es/components/grid/export.d.ts +2 -0
- package/es/components/grid/export.js +3 -0
- package/es/components/grid/export.js.map +1 -0
- package/es/components/grid/index.d.ts +2 -2
- package/es/components/grid/index.js +2 -2
- package/es/components/grid/index.js.map +1 -1
- package/es/components/heading/Heading.js +2 -0
- package/es/components/heading/Heading.js.map +1 -1
- package/es/components/help-button/HelpButton.js +2 -0
- package/es/components/help-button/HelpButton.js.map +1 -1
- package/es/components/help-button/HelpButtonInstance.js +2 -0
- package/es/components/help-button/HelpButtonInstance.js.map +1 -1
- package/es/components/icon/Icon.js +2 -0
- package/es/components/icon/Icon.js.map +1 -1
- package/es/components/icon/style/dnb-icon.scss +1 -1
- package/es/components/icon-primary/IconPrimary.js +2 -0
- package/es/components/icon-primary/IconPrimary.js.map +1 -1
- package/es/components/info-card/InfoCard.js +2 -0
- package/es/components/info-card/InfoCard.js.map +1 -1
- package/es/components/input/Input.d.ts +4 -0
- package/es/components/input/Input.js +13 -2
- package/es/components/input/Input.js.map +1 -1
- package/es/components/input/InputPassword.js +3 -0
- package/es/components/input/InputPassword.js.map +1 -1
- package/es/components/input-masked/InputMasked.d.ts +1 -1
- package/es/components/input-masked/InputMasked.js +3 -0
- package/es/components/input-masked/InputMasked.js.map +1 -1
- package/es/components/input-masked/MultiInputMask.d.ts +12 -4
- package/es/components/input-masked/MultiInputMask.js +17 -8
- package/es/components/input-masked/MultiInputMask.js.map +1 -1
- package/es/components/input-masked/TextMask.d.ts +1 -1
- package/es/components/input-masked/hooks/useHandleCursorPosition.js +3 -1
- package/es/components/input-masked/hooks/useHandleCursorPosition.js.map +1 -1
- package/es/components/input-masked/hooks/useMultiInputValues.js +2 -0
- package/es/components/input-masked/hooks/useMultiInputValues.js.map +1 -1
- package/es/components/lib.d.ts +2 -0
- package/es/components/logo/Logo.js +2 -0
- package/es/components/logo/Logo.js.map +1 -1
- package/es/components/modal/Modal.js +2 -0
- package/es/components/modal/Modal.js.map +1 -1
- package/es/components/modal/ModalContent.js +2 -0
- package/es/components/modal/ModalContent.js.map +1 -1
- package/es/components/modal/parts/CloseButton.js +2 -0
- package/es/components/modal/parts/CloseButton.js.map +1 -1
- package/es/components/number-format/NumberFormat.js +2 -0
- package/es/components/number-format/NumberFormat.js.map +1 -1
- package/es/components/number-format/NumberUtils.js +2 -0
- package/es/components/number-format/NumberUtils.js.map +1 -1
- package/es/components/number-format/useNumberFormat.js +2 -0
- package/es/components/number-format/useNumberFormat.js.map +1 -1
- package/es/components/pagination/PaginationBar.js +2 -0
- package/es/components/pagination/PaginationBar.js.map +1 -1
- package/es/components/pagination/PaginationHelpers.js +2 -0
- package/es/components/pagination/PaginationHelpers.js.map +1 -1
- package/es/components/pagination/PaginationInfinity.js +2 -0
- package/es/components/pagination/PaginationInfinity.js.map +1 -1
- package/es/components/pagination/PaginationProvider.js +2 -0
- package/es/components/pagination/PaginationProvider.js.map +1 -1
- package/es/components/progress-indicator/ProgressIndicator.js +2 -0
- package/es/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/es/components/radio/Radio.js +5 -2
- package/es/components/radio/Radio.js.map +1 -1
- package/es/components/radio/RadioGroup.js +6 -4
- package/es/components/radio/RadioGroup.js.map +1 -1
- package/es/components/radio/style/dnb-radio.css +106 -0
- package/es/components/radio/style/dnb-radio.min.css +1 -1
- package/es/components/radio/style/dnb-radio.scss +202 -0
- package/es/components/radio/style/themes/dnb-radio-theme-sbanken.css +26 -0
- package/es/components/radio/style/themes/dnb-radio-theme-sbanken.min.css +1 -0
- package/es/components/radio/style/themes/dnb-radio-theme-sbanken.scss +33 -0
- package/es/components/radio/style/themes/dnb-radio-theme-ui.css +20 -86
- package/es/components/radio/style/themes/dnb-radio-theme-ui.min.css +1 -1
- package/es/components/radio/style/themes/dnb-radio-theme-ui.scss +26 -143
- package/es/components/section/Section.js +2 -0
- package/es/components/section/Section.js.map +1 -1
- package/es/components/skeleton/Skeleton.js +2 -0
- package/es/components/skeleton/Skeleton.js.map +1 -1
- package/es/components/skeleton/figures/Article.js +2 -0
- package/es/components/skeleton/figures/Article.js.map +1 -1
- package/es/components/skeleton/figures/Circle.js +2 -0
- package/es/components/skeleton/figures/Circle.js.map +1 -1
- package/es/components/skeleton/figures/Product.js +2 -0
- package/es/components/skeleton/figures/Product.js.map +1 -1
- package/es/components/skeleton/figures/Table.js +2 -0
- package/es/components/skeleton/figures/Table.js.map +1 -1
- package/es/components/slider/Slider.d.ts +1 -0
- package/es/components/slider/Slider.js +1 -0
- package/es/components/slider/Slider.js.map +1 -1
- package/es/components/slider/SliderInstance.js +2 -0
- package/es/components/slider/SliderInstance.js.map +1 -1
- package/es/components/slider/SliderProvider.js +2 -0
- package/es/components/slider/SliderProvider.js.map +1 -1
- package/es/components/space/Space.js +2 -0
- package/es/components/space/Space.js.map +1 -1
- package/es/components/step-indicator/StepIndicatorContext.js +2 -0
- package/es/components/step-indicator/StepIndicatorContext.js.map +1 -1
- package/es/components/step-indicator/StepIndicatorItem.js +4 -2
- package/es/components/step-indicator/StepIndicatorItem.js.map +1 -1
- package/es/components/step-indicator/StepIndicatorList.js +2 -0
- package/es/components/step-indicator/StepIndicatorList.js.map +1 -1
- package/es/components/step-indicator/StepIndicatorModal.js +2 -0
- package/es/components/step-indicator/StepIndicatorModal.js.map +1 -1
- package/es/components/step-indicator/StepIndicatorSidebar.js +2 -0
- package/es/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
- package/es/components/step-indicator/StepIndicatorTriggerButton.js +2 -0
- package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
- package/es/components/switch/Switch.js +3 -0
- package/es/components/switch/Switch.js.map +1 -1
- package/es/components/table/Table.js +2 -0
- package/es/components/table/Table.js.map +1 -1
- package/es/components/table/style/themes/dnb-table-theme-sbanken.css +1 -0
- package/es/components/table/style/themes/dnb-table-theme-sbanken.min.css +1 -1
- package/es/components/table/style/themes/dnb-table-theme-sbanken.scss +1 -0
- package/es/components/tabs/Tabs.js +2 -0
- package/es/components/tabs/Tabs.js.map +1 -1
- package/es/components/tag/Tag.d.ts +1 -0
- package/es/components/tag/Tag.js +3 -0
- package/es/components/tag/Tag.js.map +1 -1
- package/es/components/tag/TagGroup.js +2 -0
- package/es/components/tag/TagGroup.js.map +1 -1
- package/es/components/textarea/Textarea.js +3 -0
- package/es/components/textarea/Textarea.js.map +1 -1
- package/es/components/timeline/Timeline.js +2 -0
- package/es/components/timeline/Timeline.js.map +1 -1
- package/es/components/timeline/TimelineItem.js +2 -0
- package/es/components/timeline/TimelineItem.js.map +1 -1
- package/es/components/toggle-button/ToggleButton.js +3 -0
- package/es/components/toggle-button/ToggleButton.js.map +1 -1
- package/es/components/toggle-button/ToggleButtonGroup.js +6 -4
- package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
- package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +1 -1
- package/es/components/tooltip/Tooltip.js +2 -0
- package/es/components/tooltip/Tooltip.js.map +1 -1
- package/es/components/tooltip/TooltipPortal.js +2 -0
- package/es/components/tooltip/TooltipPortal.js.map +1 -1
- package/es/components/tooltip/TooltipWithEvents.js.map +1 -1
- package/es/components/upload/Upload.d.ts +1 -0
- package/es/components/upload/Upload.js +3 -0
- package/es/components/upload/Upload.js.map +1 -1
- package/es/components/upload/UploadContext.js +2 -0
- package/es/components/upload/UploadContext.js.map +1 -1
- package/es/components/upload/UploadFileInput.js +2 -0
- package/es/components/upload/UploadFileInput.js.map +1 -1
- package/es/components/upload/UploadFileListCell.js +2 -0
- package/es/components/upload/UploadFileListCell.js.map +1 -1
- package/es/components/upload/useUpload.js +2 -0
- package/es/components/upload/useUpload.js.map +1 -1
- package/es/components/visually-hidden/VisuallyHidden.js +2 -0
- package/es/components/visually-hidden/VisuallyHidden.js.map +1 -1
- package/es/elements/Element.js +2 -0
- package/es/elements/Element.js.map +1 -1
- package/es/elements/lists/Dl.d.ts +1 -1
- package/es/elements/lists/Dl.js.map +1 -1
- package/es/elements/typography/H.js +2 -0
- package/es/elements/typography/H.js.map +1 -1
- package/es/elements/typography/style/dnb-typography.scss +1 -1
- package/es/elements/typography/style/typography-mixins.scss +2 -2
- package/es/extensions/forms/DataContext/At/At.js +2 -0
- package/es/extensions/forms/DataContext/At/At.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.js +56 -43
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +12 -9
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +15 -9
- package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/es/extensions/forms/Field/Boolean/Boolean.js +4 -2
- package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
- package/es/extensions/forms/Field/Currency/Currency.js +3 -2
- package/es/extensions/forms/Field/Currency/Currency.js.map +1 -1
- package/es/extensions/forms/Field/Date/Date.js +3 -1
- package/es/extensions/forms/Field/Date/Date.js.map +1 -1
- package/es/extensions/forms/Field/Email/Email.js +13 -8
- package/es/extensions/forms/Field/Email/Email.js.map +1 -1
- package/es/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
- package/es/extensions/forms/Field/Expiry/Expiry.js +88 -0
- package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
- package/es/extensions/forms/Field/Expiry/index.d.ts +2 -0
- package/es/extensions/forms/Field/Expiry/index.js +3 -0
- package/es/extensions/forms/Field/Expiry/index.js.map +1 -0
- package/es/extensions/forms/Field/Expiry/style/dnb-expiry.css +12 -0
- package/es/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
- package/es/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +15 -9
- package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/es/extensions/forms/Field/Number/Number.js +49 -25
- package/es/extensions/forms/Field/Number/Number.js.map +1 -1
- package/es/extensions/forms/Field/Option/Option.js +1 -1
- package/es/extensions/forms/Field/Option/Option.js.map +1 -1
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +15 -9
- package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +5 -0
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +67 -22
- package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -4
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +18 -11
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/es/extensions/forms/Field/Selection/Selection.js +30 -20
- package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/es/extensions/forms/Field/String/String.js +38 -26
- package/es/extensions/forms/Field/String/String.js.map +1 -1
- package/es/extensions/forms/Field/Toggle/Toggle.js +6 -4
- package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/es/extensions/forms/Field/index.d.ts +1 -0
- package/es/extensions/forms/Field/index.js +1 -0
- package/es/extensions/forms/Field/index.js.map +1 -1
- package/es/extensions/forms/Field/style/dnb-forms-field.css +13 -0
- package/es/extensions/forms/Field/style/dnb-forms-field.min.css +1 -1
- package/es/extensions/forms/Field/style/dnb-forms-field.scss +1 -0
- package/es/extensions/forms/FieldBlock/FieldBlock.js +38 -3
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/Form/Element/Element.js +2 -0
- package/es/extensions/forms/Form/Element/Element.js.map +1 -1
- package/es/extensions/forms/Form/Handler/Handler.js +2 -0
- package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/es/extensions/forms/Form/SubmitButton/SubmitButton.js +2 -0
- package/es/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
- package/es/extensions/forms/Iterate/Array/Array.js +2 -2
- package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/es/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +4 -2
- package/es/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
- package/es/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +3 -1
- package/es/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
- package/es/extensions/forms/StepsLayout/NextButton/NextButton.js +2 -0
- package/es/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
- package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +2 -0
- package/es/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
- package/es/extensions/forms/StepsLayout/Step/Step.js +2 -0
- package/es/extensions/forms/StepsLayout/Step/Step.js.map +1 -1
- package/es/extensions/forms/StepsLayout/StepsLayout.js +4 -1
- package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
- package/es/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +4 -1
- package/es/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/es/extensions/forms/Value/Boolean/Boolean.js +2 -0
- package/es/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
- package/es/extensions/forms/Value/Currency/Currency.js +3 -2
- package/es/extensions/forms/Value/Currency/Currency.js.map +1 -1
- package/es/extensions/forms/Value/Date/Date.js +4 -1
- package/es/extensions/forms/Value/Date/Date.js.map +1 -1
- package/es/extensions/forms/Value/Email/Email.js +4 -1
- package/es/extensions/forms/Value/Email/Email.js.map +1 -1
- package/es/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +4 -1
- package/es/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js +4 -1
- package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
- package/es/extensions/forms/ValueBlock/ValueBlock.js +1 -1
- package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/es/extensions/forms/Visibility/Visibility.js +2 -0
- package/es/extensions/forms/Visibility/Visibility.js.map +1 -1
- package/es/extensions/forms/hooks/index.d.ts +3 -0
- package/es/extensions/forms/hooks/index.js +5 -1
- package/es/extensions/forms/hooks/index.js.map +1 -1
- package/es/extensions/forms/hooks/useDataValue.js +139 -69
- package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/es/extensions/forms/hooks/useMountEffect.d.ts +5 -0
- package/es/extensions/forms/hooks/useMountEffect.js +9 -0
- package/es/extensions/forms/hooks/useMountEffect.js.map +1 -0
- package/es/extensions/forms/hooks/useProcessManager.d.ts +6 -0
- package/es/extensions/forms/hooks/useProcessManager.js +16 -0
- package/es/extensions/forms/hooks/useProcessManager.js.map +1 -0
- package/es/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
- package/es/extensions/forms/hooks/useUpdateEffect.js +14 -0
- package/es/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
- package/es/extensions/forms/style/dnb-forms.css +13 -0
- package/es/extensions/forms/style/dnb-forms.min.css +1 -1
- package/es/extensions/forms/types.d.ts +10 -2
- package/es/extensions/forms/types.js +8 -6
- package/es/extensions/forms/types.js.map +1 -1
- package/es/extensions/forms/utils/ajv.js +28 -3
- package/es/extensions/forms/utils/ajv.js.map +1 -1
- package/es/extensions/forms/utils/errors.d.ts +2 -0
- package/es/extensions/forms/utils/errors.js +10 -0
- package/es/extensions/forms/utils/errors.js.map +1 -0
- package/es/extensions/forms/utils/index.d.ts +1 -0
- package/es/extensions/forms/utils/index.js +1 -0
- package/es/extensions/forms/utils/index.js.map +1 -1
- package/es/extensions/forms/utils/numbers.js +2 -2
- package/es/extensions/forms/utils/numbers.js.map +1 -1
- package/es/extensions/forms/utils/useWasChanged.js +9 -6
- package/es/extensions/forms/utils/useWasChanged.js.map +1 -1
- package/es/extensions/payment-card/PaymentCard.js +2 -0
- package/es/extensions/payment-card/PaymentCard.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListHelpers.js +1 -1
- package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
- package/es/fragments/drawer-list/DrawerListProvider.js +2 -0
- package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/es/fragments/drawer-list/style/themes/dnb-drawer-list-theme-sbanken.scss +1 -1
- package/es/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +2 -2
- package/es/fragments/scroll-view/ScrollView.js +2 -0
- package/es/fragments/scroll-view/ScrollView.js.map +1 -1
- package/es/shared/Eufemia.d.ts +1 -1
- package/es/shared/Eufemia.js +2 -2
- package/es/shared/Eufemia.js.map +1 -1
- package/es/shared/MediaQuery.js +2 -0
- package/es/shared/MediaQuery.js.map +1 -1
- package/es/shared/Provider.js +2 -0
- package/es/shared/Provider.js.map +1 -1
- package/es/shared/Theme.js +2 -0
- package/es/shared/Theme.js.map +1 -1
- package/es/shared/VisibilityByTheme.js +2 -0
- package/es/shared/VisibilityByTheme.js.map +1 -1
- package/es/shared/index.js +2 -0
- package/es/shared/index.js.map +1 -1
- package/es/shared/locales/en-GB.d.ts +11 -0
- package/es/shared/locales/en-GB.js +12 -1
- package/es/shared/locales/en-GB.js.map +1 -1
- package/es/shared/locales/en-US.d.ts +11 -0
- package/es/shared/locales/index.d.ts +22 -0
- package/es/shared/locales/nb-NO.d.ts +11 -0
- package/es/shared/locales/nb-NO.js +12 -1
- package/es/shared/locales/nb-NO.js.map +1 -1
- package/es/shared/useMedia.js +2 -0
- package/es/shared/useMedia.js.map +1 -1
- package/es/shared/useMediaQuery.js +2 -0
- package/es/shared/useMediaQuery.js.map +1 -1
- package/es/shared/useTheme.js +2 -0
- package/es/shared/useTheme.js.map +1 -1
- package/es/shared/useTranslation.js +2 -0
- package/es/shared/useTranslation.js.map +1 -1
- package/es/style/dnb-ui-components.css +108 -2
- package/es/style/dnb-ui-components.min.css +1 -1
- package/es/style/dnb-ui-extensions.css +13 -0
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +128 -88
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/fonts.scss +5 -4
- package/es/style/themes/theme-sbanken/properties.js +2 -2
- package/es/style/themes/theme-sbanken/properties.js.map +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +141 -100
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +5 -5
- package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -0
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/theme-mapping.scss +2 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +128 -88
- package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/es/style/themes/theme-ui/ui-theme-extensions.css +13 -0
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +3 -3
- package/esm/dnb-ui-lib.min.mjs +1 -1
- package/extensions/forms/DataContext/At/At.js +2 -0
- package/extensions/forms/DataContext/At/At.js.map +1 -1
- package/extensions/forms/DataContext/Provider/Provider.js +56 -43
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/Field/ArraySelection/ArraySelection.js +12 -9
- package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +15 -9
- package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/extensions/forms/Field/Boolean/Boolean.js +4 -2
- package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
- package/extensions/forms/Field/Currency/Currency.js +3 -2
- package/extensions/forms/Field/Currency/Currency.js.map +1 -1
- package/extensions/forms/Field/Date/Date.js +3 -1
- package/extensions/forms/Field/Date/Date.js.map +1 -1
- package/extensions/forms/Field/Email/Email.js +13 -8
- package/extensions/forms/Field/Email/Email.js.map +1 -1
- package/extensions/forms/Field/Expiry/Expiry.d.ts +7 -0
- package/extensions/forms/Field/Expiry/Expiry.js +88 -0
- package/extensions/forms/Field/Expiry/Expiry.js.map +1 -0
- package/extensions/forms/Field/Expiry/index.d.ts +2 -0
- package/extensions/forms/Field/Expiry/index.js +3 -0
- package/extensions/forms/Field/Expiry/index.js.map +1 -0
- package/extensions/forms/Field/Expiry/style/dnb-expiry.css +12 -0
- package/extensions/forms/Field/Expiry/style/dnb-expiry.min.css +1 -0
- package/extensions/forms/Field/Expiry/style/dnb-expiry.scss +9 -0
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +15 -9
- package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/extensions/forms/Field/Number/Number.js +50 -26
- package/extensions/forms/Field/Number/Number.js.map +1 -1
- package/extensions/forms/Field/Option/Option.js +1 -1
- package/extensions/forms/Field/Option/Option.js.map +1 -1
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +15 -9
- package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +5 -0
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +76 -22
- package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js +7 -4
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -1
- package/extensions/forms/Field/SelectCountry/SelectCountry.js +18 -11
- package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/extensions/forms/Field/Selection/Selection.js +30 -20
- package/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/extensions/forms/Field/String/String.js +39 -27
- package/extensions/forms/Field/String/String.js.map +1 -1
- package/extensions/forms/Field/Toggle/Toggle.js +6 -4
- package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
- package/extensions/forms/Field/index.d.ts +1 -0
- package/extensions/forms/Field/index.js +1 -0
- package/extensions/forms/Field/index.js.map +1 -1
- package/extensions/forms/Field/style/dnb-forms-field.css +13 -0
- package/extensions/forms/Field/style/dnb-forms-field.min.css +1 -1
- package/extensions/forms/Field/style/dnb-forms-field.scss +1 -0
- package/extensions/forms/FieldBlock/FieldBlock.js +39 -3
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/Form/Element/Element.js +2 -0
- package/extensions/forms/Form/Element/Element.js.map +1 -1
- package/extensions/forms/Form/Handler/Handler.js +2 -0
- package/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/extensions/forms/Form/SubmitButton/SubmitButton.js +2 -0
- package/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
- package/extensions/forms/Iterate/Array/Array.js +2 -2
- package/extensions/forms/Iterate/Array/Array.js.map +1 -1
- package/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js +4 -2
- package/extensions/forms/Iterate/ArrayPushButton/ArrayPushButton.js.map +1 -1
- package/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js +3 -1
- package/extensions/forms/Iterate/ArrayRemoveElementButton/ArrayRemoveElementButton.js.map +1 -1
- package/extensions/forms/StepsLayout/NextButton/NextButton.js +2 -0
- package/extensions/forms/StepsLayout/NextButton/NextButton.js.map +1 -1
- package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js +2 -0
- package/extensions/forms/StepsLayout/PreviousButton/PreviousButton.js.map +1 -1
- package/extensions/forms/StepsLayout/Step/Step.js +2 -0
- package/extensions/forms/StepsLayout/Step/Step.js.map +1 -1
- package/extensions/forms/StepsLayout/StepsLayout.js +4 -1
- package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
- package/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js +4 -1
- package/extensions/forms/Value/BankAccountNumber/BankAccountNumber.js.map +1 -1
- package/extensions/forms/Value/Boolean/Boolean.js +2 -0
- package/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
- package/extensions/forms/Value/Currency/Currency.js +3 -2
- package/extensions/forms/Value/Currency/Currency.js.map +1 -1
- package/extensions/forms/Value/Date/Date.js +4 -1
- package/extensions/forms/Value/Date/Date.js.map +1 -1
- package/extensions/forms/Value/Email/Email.js +4 -1
- package/extensions/forms/Value/Email/Email.js.map +1 -1
- package/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js +4 -1
- package/extensions/forms/Value/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
- package/extensions/forms/Value/PhoneNumber/PhoneNumber.js +4 -1
- package/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
- package/extensions/forms/ValueBlock/ValueBlock.js +1 -1
- package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/extensions/forms/Visibility/Visibility.js +2 -0
- package/extensions/forms/Visibility/Visibility.js.map +1 -1
- package/extensions/forms/hooks/index.d.ts +3 -0
- package/extensions/forms/hooks/index.js +5 -1
- package/extensions/forms/hooks/index.js.map +1 -1
- package/extensions/forms/hooks/useDataValue.js +140 -69
- package/extensions/forms/hooks/useDataValue.js.map +1 -1
- package/extensions/forms/hooks/useMountEffect.d.ts +5 -0
- package/extensions/forms/hooks/useMountEffect.js +9 -0
- package/extensions/forms/hooks/useMountEffect.js.map +1 -0
- package/extensions/forms/hooks/useProcessManager.d.ts +6 -0
- package/extensions/forms/hooks/useProcessManager.js +16 -0
- package/extensions/forms/hooks/useProcessManager.js.map +1 -0
- package/extensions/forms/hooks/useUpdateEffect.d.ts +5 -0
- package/extensions/forms/hooks/useUpdateEffect.js +14 -0
- package/extensions/forms/hooks/useUpdateEffect.js.map +1 -0
- package/extensions/forms/style/dnb-forms.css +13 -0
- package/extensions/forms/style/dnb-forms.min.css +1 -1
- package/extensions/forms/types.d.ts +10 -2
- package/extensions/forms/types.js +8 -6
- package/extensions/forms/types.js.map +1 -1
- package/extensions/forms/utils/ajv.js +28 -3
- package/extensions/forms/utils/ajv.js.map +1 -1
- package/extensions/forms/utils/errors.d.ts +2 -0
- package/extensions/forms/utils/errors.js +10 -0
- package/extensions/forms/utils/errors.js.map +1 -0
- package/extensions/forms/utils/index.d.ts +1 -0
- package/extensions/forms/utils/index.js +1 -0
- package/extensions/forms/utils/index.js.map +1 -1
- package/extensions/forms/utils/numbers.js +2 -2
- package/extensions/forms/utils/numbers.js.map +1 -1
- package/extensions/forms/utils/useWasChanged.js +9 -6
- package/extensions/forms/utils/useWasChanged.js.map +1 -1
- package/extensions/payment-card/PaymentCard.js +2 -0
- package/extensions/payment-card/PaymentCard.js.map +1 -1
- package/fragments/drawer-list/DrawerListHelpers.js +1 -1
- package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
- package/fragments/drawer-list/DrawerListProvider.js +2 -0
- package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
- package/fragments/drawer-list/style/themes/dnb-drawer-list-theme-sbanken.scss +1 -1
- package/fragments/drawer-list/style/themes/dnb-drawer-list-theme-ui.scss +2 -2
- package/fragments/scroll-view/ScrollView.js +2 -0
- package/fragments/scroll-view/ScrollView.js.map +1 -1
- package/package.json +11 -1
- package/shared/Eufemia.d.ts +1 -1
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/shared/MediaQuery.js +2 -0
- package/shared/MediaQuery.js.map +1 -1
- package/shared/Provider.js +2 -0
- package/shared/Provider.js.map +1 -1
- package/shared/Theme.js +2 -0
- package/shared/Theme.js.map +1 -1
- package/shared/VisibilityByTheme.js +2 -0
- package/shared/VisibilityByTheme.js.map +1 -1
- package/shared/index.js +2 -0
- package/shared/index.js.map +1 -1
- package/shared/locales/en-GB.d.ts +11 -0
- package/shared/locales/en-GB.js +12 -1
- package/shared/locales/en-GB.js.map +1 -1
- package/shared/locales/en-US.d.ts +11 -0
- package/shared/locales/index.d.ts +22 -0
- package/shared/locales/nb-NO.d.ts +11 -0
- package/shared/locales/nb-NO.js +12 -1
- package/shared/locales/nb-NO.js.map +1 -1
- package/shared/useMedia.js +2 -0
- package/shared/useMedia.js.map +1 -1
- package/shared/useMediaQuery.js +2 -0
- package/shared/useMediaQuery.js.map +1 -1
- package/shared/useTheme.js +2 -0
- package/shared/useTheme.js.map +1 -1
- package/shared/useTranslation.js +2 -0
- package/shared/useTranslation.js.map +1 -1
- package/style/dnb-ui-components.css +108 -2
- package/style/dnb-ui-components.min.css +1 -1
- package/style/dnb-ui-extensions.css +13 -0
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-components.css +128 -88
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +13 -0
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/fonts.scss +5 -4
- package/style/themes/theme-sbanken/properties.js +2 -2
- package/style/themes/theme-sbanken/properties.js.map +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -2
- package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +141 -100
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +5 -5
- package/style/themes/theme-sbanken/sbanken-theme-components.scss +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +13 -0
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/theme-mapping.scss +2 -1
- package/style/themes/theme-ui/ui-theme-components.css +128 -88
- package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/style/themes/theme-ui/ui-theme-extensions.css +13 -0
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +2 -2
- package/umd/dnb-ui-lib.min.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","names":["_react","_interopRequireDefault","require","_classnames","_Suffix","_Context","_componentHelper","_SpacingHelper","_HelpButtonInstance","_helpers","_ModalInner","_ModalHeader","_ModalHeaderBar","_CloseButton","_ModalRoot","_withCamelCaseProps","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","ANIMATION_DURATION","exports","Modal","React","PureComponent","getContent","props","modal_content","processChildren","getDerivedStateFromProps","state","open_state","_open_state","hide","isTrue","no_animation","modalActive","constructor","_this","this","event","showModal","preventDefault","toggleNow","animation_duration","timeoutDuration","parseFloat","isInTransition","doItNow","setState","handleSideEffects","_closeTimeout","setTimeout","waitBeforeOpen","open_delay","delay","_openTimeout","clearTimeout","open_modal","fn","_onUnmount","close_modal","toggleOpenClose","setActiveState","_id","_this$_triggerRef","focus","elem","setAttribute","preventScroll","Promise","resolve","removeAttribute","_triggerRef","current","activeElement","HTMLElement","then","e","removeActiveState","ifIsLatest","triggeredBy","prevent_close","id","dispatchCustomElementEvent","close","list","getListOfModalRoots","last","getModalRoot","makeUniqueId","createRef","componentDidMount","openBasedOnStateUpdate","componentWillUnmount","componentDidUpdate","prevProps","document","documentElement","warn","modalId","render","extendPropsWithContextInClassComponent","defaultProps","context","getTranslation","root_id","content_id","disabled","labelled_by","focus_selector","header_content","bar_content","bypass_invalidation_selectors","omit_trigger_button","trigger","trigger_attributes","rest","children","freeze","suffixProps","triggerAttributes","hidden","variant","icon_position","fallbackTitle","title","translation","HelpButton","TriggerButton","HelpButtonInstance","text","createElement","Fragment","onClick","innerRef","className","classnames","createSpacingClasses","class","SuffixContext","Consumer","OriginalComponent","Context","ModalHeaderBar","ModalHeader","ModalInner","spacing","dialog_title","close_title","hide_close_button","close_button_attributes","prevent_core_style","no_animation_on_mobile","fullscreen","min_width","max_width","align_content","container_placement","direct_dom_return","on_open","on_close","on_close_prevent","overlay_class","content_class","_default","classWithCamelCaseProps"],"sources":["../../../../src/components/modal/Modal.tsx"],"sourcesContent":["/**\n * Web Modal Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport { SuffixContext } from '../../shared/helpers/Suffix'\nimport Context, { ContextProps } from '../../shared/Context'\nimport {\n warn,\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n processChildren,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport HelpButtonInstance from '../help-button/HelpButtonInstance'\nimport { getListOfModalRoots, getModalRoot } from './helpers'\nimport ModalInner from './parts/ModalInner'\nimport { ModalProps } from './types'\n\nimport ModalHeader from './parts/ModalHeader'\nimport ModalHeaderBar from './parts/ModalHeaderBar'\nimport { ScrollViewAllProps } from '../../fragments/scroll-view/ScrollView'\nimport CloseButton from './parts/CloseButton'\nimport ModalRoot from './ModalRoot'\nimport type { SpacingProps } from '../../shared/types'\nimport {\n classWithCamelCaseProps,\n ToCamelCasePartial,\n} from '../../shared/helpers/withCamelCaseProps'\nimport type { ButtonProps } from '../button/Button'\n\nexport const ANIMATION_DURATION = 300\n\ninterface ModalState {\n hide: boolean\n modalActive: boolean\n}\n\nexport type ModalPropTypes = ModalProps &\n SpacingProps &\n Omit<ScrollViewAllProps, 'children'>\n\nclass Modal extends React.PureComponent<\n ModalPropTypes & ToCamelCasePartial<ModalPropTypes>,\n ModalState\n> {\n static contextType = Context\n\n context!: ContextProps\n\n static Bar = ModalHeaderBar\n static Header = ModalHeader\n static Content = ModalInner\n\n static getContent(props) {\n if (typeof props.modal_content === 'string') {\n return props.modal_content\n } else if (typeof props.modal_content === 'function') {\n return props.modal_content(props)\n }\n return processChildren(props)\n }\n\n _id: string\n _triggerRef: React.RefObject<any>\n _onUnmount: Array<() => void>\n _openTimeout: NodeJS.Timeout\n _closeTimeout: NodeJS.Timeout\n _sideEffectsTimeout: NodeJS.Timeout\n _tryToOpenTimeout: NodeJS.Timeout\n activeElement: Element\n isInTransition: boolean\n\n state = {\n hide: false,\n modalActive: false,\n }\n\n static defaultProps = {\n id: null,\n focus_selector: null,\n labelled_by: null,\n title: null,\n disabled: null,\n spacing: true,\n open_delay: null,\n content_id: null,\n dialog_title: 'Vindu',\n close_title: 'Lukk', // Close Modal Window\n hide_close_button: false,\n close_button_attributes: null,\n prevent_close: false,\n prevent_core_style: false,\n animation_duration: ANIMATION_DURATION,\n no_animation: false,\n no_animation_on_mobile: false,\n fullscreen: 'auto',\n min_width: null,\n max_width: null,\n align_content: 'left',\n container_placement: null,\n open_state: null,\n direct_dom_return: false,\n class: null,\n root_id: 'root',\n omit_trigger_button: false,\n\n className: null,\n children: null,\n\n on_open: null,\n on_close: null,\n on_close_prevent: null,\n open_modal: null,\n close_modal: null,\n\n trigger: null,\n trigger_attributes: null,\n\n overlay_class: null,\n content_class: null,\n\n modal_content: null,\n header_content: null,\n bar_content: null,\n }\n\n static getDerivedStateFromProps(props, state) {\n if (props.open_state !== state._open_state) {\n switch (props.open_state) {\n case 'opened':\n case true:\n state.hide = false\n if (isTrue(props.no_animation)) {\n state.modalActive = true\n }\n break\n case 'closed':\n case false:\n state.hide = true\n if (isTrue(props.no_animation)) {\n state.modalActive = false\n }\n break\n }\n }\n state._open_state = props.open_state\n\n return state\n }\n\n constructor(props) {\n super(props)\n this._id = props.id || makeUniqueId('modal-')\n\n this._triggerRef = React.createRef()\n\n this._onUnmount = []\n }\n\n componentDidMount() {\n this.openBasedOnStateUpdate()\n }\n\n componentWillUnmount() {\n clearTimeout(this._openTimeout)\n clearTimeout(this._closeTimeout)\n\n this.removeActiveState()\n\n this._onUnmount.forEach((fn) => {\n if (typeof fn === 'function') {\n fn()\n }\n })\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.openBasedOnStateUpdate()\n }\n }\n\n openBasedOnStateUpdate() {\n const { hide } = this.state\n const { open_state } = this.props\n\n if (!this.activeElement && typeof document !== 'undefined') {\n this.activeElement = document.activeElement\n }\n\n if (!hide && (open_state === 'opened' || open_state === true)) {\n this.toggleOpenClose(null, true)\n } else if (hide && (open_state === 'closed' || open_state === false)) {\n this.toggleOpenClose(null, false)\n }\n }\n\n toggleOpenClose = (event = null, showModal = null) => {\n if (event && event.preventDefault) {\n event.preventDefault()\n }\n\n const toggleNow = () => {\n const {\n animation_duration = ANIMATION_DURATION,\n no_animation = false,\n } = this.props\n const timeoutDuration =\n typeof animation_duration === 'string'\n ? parseFloat(animation_duration)\n : animation_duration\n\n const modalActive =\n typeof showModal === 'boolean'\n ? showModal\n : !this.state.modalActive\n\n this.isInTransition = true\n\n const doItNow = () => {\n this.setState(\n {\n hide: false,\n modalActive,\n },\n () => {\n this.isInTransition = false\n this.handleSideEffects()\n }\n )\n }\n\n if (modalActive === false && !isTrue(no_animation)) {\n this.setState({\n hide: true,\n })\n\n this._closeTimeout = setTimeout(doItNow, timeoutDuration) // delay because of the animation\n } else {\n doItNow()\n }\n }\n\n const waitBeforeOpen = () => {\n const { open_delay, no_animation } = this.props\n const delay =\n typeof open_delay === 'string'\n ? parseFloat(open_delay)\n : open_delay\n if (delay > 0 && !isTrue(no_animation)) {\n this._openTimeout = setTimeout(toggleNow, delay) // custom delay\n } else {\n toggleNow()\n }\n }\n\n clearTimeout(this._closeTimeout)\n clearTimeout(this._openTimeout)\n\n const { open_modal } = this.props\n if (typeof open_modal === 'function') {\n const fn = open_modal(waitBeforeOpen, this)\n if (fn) {\n this._onUnmount.push(fn)\n }\n } else {\n waitBeforeOpen()\n }\n }\n\n handleSideEffects = () => {\n const { modalActive } = this.state\n const { close_modal, open_state, animation_duration } = this.props\n\n if (modalActive) {\n if (typeof close_modal === 'function') {\n const fn = close_modal(() => {\n this.toggleOpenClose(null, false)\n }, this)\n if (fn) {\n this._onUnmount.push(fn)\n }\n }\n\n this.setActiveState(this._id)\n } else if (modalActive === false) {\n const focus = (elem: HTMLElement) => {\n // So we can omit showing a Tooltip on the trigger button\n elem.setAttribute('data-autofocus', 'true')\n\n elem.focus({ preventScroll: true })\n\n return new Promise<void>((resolve) => {\n setTimeout(\n () => {\n elem?.removeAttribute('data-autofocus')\n resolve()\n },\n parseFloat(String(animation_duration)) / 3\n )\n })\n }\n\n if (this._triggerRef?.current) {\n focus(this._triggerRef.current)\n }\n\n // because the open_state was set to opened, we force\n if (\n (open_state === 'opened' || open_state === true) &&\n this.activeElement instanceof HTMLElement\n ) {\n try {\n focus(this.activeElement).then(() => {\n this.activeElement = null\n })\n } catch (e) {\n //\n }\n }\n\n this.removeActiveState()\n }\n }\n\n open = (e: Event) => {\n this.toggleOpenClose(e, true)\n }\n\n close = (\n event: Event,\n { ifIsLatest, triggeredBy = null } = { ifIsLatest: true }\n ) => {\n const { prevent_close = false } = this.props\n\n if (isTrue(prevent_close)) {\n const id = this._id\n dispatchCustomElementEvent(this, 'on_close_prevent', {\n id,\n event,\n triggeredBy,\n close: (e) => {\n this.toggleOpenClose(e, false)\n },\n })\n } else {\n if (ifIsLatest) {\n const list = getListOfModalRoots()\n if (list.length > 1) {\n const last = getModalRoot(-1)\n if (last !== this) {\n return // stop here\n }\n }\n }\n\n this.toggleOpenClose(event, false)\n }\n }\n\n removeActiveState() {\n const last = getModalRoot(-1)\n\n // If this instance is not the last one,\n // make the current one to as the active one\n if (last?._id && last._id !== this._id) {\n return this.setActiveState(last._id)\n }\n\n try {\n document.documentElement.removeAttribute('data-dnb-modal-active')\n } catch (e) {\n warn('Modal: Error on remove \"data-dnb-modal-active\"', e)\n }\n }\n\n /**\n * Prevent scrolling on the background\n * But checks if this instance was the last one or not\n *\n * @param {string} modalId Will remove the attribute if false is given\n */\n setActiveState(modalId: string) {\n if (!modalId) {\n warn('Modal: A valid modalId is required')\n }\n // prevent scrolling on the background\n if (typeof document !== 'undefined') {\n try {\n document.documentElement.setAttribute(\n 'data-dnb-modal-active',\n modalId\n )\n } catch (e) {\n warn('Modal: Error on set \"data-dnb-modal-active\"', e)\n }\n }\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Modal.defaultProps,\n this.context.getTranslation(this.props).Modal,\n this.context.Modal\n )\n\n const {\n root_id = 'root',\n content_id = null,\n disabled = null,\n labelled_by = null,\n focus_selector = null,\n header_content = null,\n bar_content = null,\n bypass_invalidation_selectors = null,\n\n id, // eslint-disable-line\n open_state, // eslint-disable-line\n open_delay, // eslint-disable-line\n\n omit_trigger_button = false,\n trigger = null,\n trigger_attributes = null,\n ...rest\n } = props\n\n const { hide, modalActive } = this.state\n const modal_content = Modal.getContent(\n typeof this.props.children === 'function'\n ? Object.freeze({ ...this.props, close: this.close })\n : this.props\n )\n\n const render = (suffixProps) => {\n const triggerAttributes = {\n hidden: false,\n variant: 'secondary',\n icon_position: 'left',\n ...trigger_attributes,\n } as ButtonProps\n\n if (isTrue(disabled)) {\n triggerAttributes.disabled = true\n }\n\n if (triggerAttributes.id) {\n this._id = triggerAttributes.id\n }\n\n let fallbackTitle: string\n if (triggerAttributes.title) {\n fallbackTitle = triggerAttributes.title\n }\n // in case the modal is used in suffix and no title is given\n // suffixProps.label is also available, so we could use that too\n else if (suffixProps) {\n fallbackTitle = this.context.translation.HelpButton.title\n }\n\n const TriggerButton = trigger\n ? (trigger as React.FC)\n : HelpButtonInstance\n\n const title = (\n !triggerAttributes.text ? rest.title || fallbackTitle : null\n ) as string\n\n return (\n <>\n {TriggerButton && !isTrue(omit_trigger_button) && (\n <TriggerButton\n {...triggerAttributes}\n id={this._id}\n title={title}\n onClick={this.toggleOpenClose}\n innerRef={this._triggerRef}\n className={classnames(\n 'dnb-modal__trigger',\n createSpacingClasses(props),\n triggerAttributes.class,\n triggerAttributes.className\n )}\n />\n )}\n\n {modalActive && modal_content && (\n <ModalRoot\n {...rest}\n id={this._id}\n root_id={root_id}\n content_id={content_id || `dnb-modal-${this._id}`}\n labelled_by={labelled_by}\n focus_selector={focus_selector}\n modal_content={modal_content}\n header_content={header_content}\n bar_content={bar_content}\n bypass_invalidation_selectors={bypass_invalidation_selectors}\n close={this.close}\n hide={hide}\n title={rest.title || fallbackTitle}\n />\n )}\n </>\n )\n }\n\n return <SuffixContext.Consumer>{render}</SuffixContext.Consumer>\n }\n}\n\nexport { CloseButton, Modal as OriginalComponent }\n\nexport default classWithCamelCaseProps(Modal)\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Modal.js","names":["_react","_interopRequireDefault","require","_classnames","_Suffix","_Context","_componentHelper","_SpacingHelper","_HelpButtonInstance","_helpers","_ModalInner","_ModalHeader","_ModalHeaderBar","_CloseButton","_ModalRoot","_withCamelCaseProps","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","ANIMATION_DURATION","exports","Modal","React","PureComponent","getContent","props","modal_content","processChildren","getDerivedStateFromProps","state","open_state","_open_state","hide","isTrue","no_animation","modalActive","constructor","_this","this","event","showModal","preventDefault","toggleNow","animation_duration","timeoutDuration","parseFloat","isInTransition","doItNow","setState","handleSideEffects","_closeTimeout","setTimeout","waitBeforeOpen","open_delay","delay","_openTimeout","clearTimeout","open_modal","fn","_onUnmount","close_modal","toggleOpenClose","setActiveState","_id","_this$_triggerRef","focus","elem","setAttribute","preventScroll","Promise","resolve","removeAttribute","_triggerRef","current","activeElement","HTMLElement","then","e","removeActiveState","ifIsLatest","triggeredBy","prevent_close","id","dispatchCustomElementEvent","close","list","getListOfModalRoots","last","getModalRoot","makeUniqueId","createRef","componentDidMount","openBasedOnStateUpdate","componentWillUnmount","componentDidUpdate","prevProps","document","documentElement","warn","modalId","render","extendPropsWithContextInClassComponent","defaultProps","context","getTranslation","root_id","content_id","disabled","labelled_by","focus_selector","header_content","bar_content","bypass_invalidation_selectors","omit_trigger_button","trigger","trigger_attributes","rest","children","freeze","suffixProps","triggerAttributes","hidden","variant","icon_position","fallbackTitle","title","translation","HelpButton","TriggerButton","HelpButtonInstance","text","createElement","Fragment","onClick","innerRef","className","classnames","createSpacingClasses","class","SuffixContext","Consumer","OriginalComponent","Context","ModalHeaderBar","ModalHeader","ModalInner","spacing","dialog_title","close_title","hide_close_button","close_button_attributes","prevent_core_style","no_animation_on_mobile","fullscreen","min_width","max_width","align_content","container_placement","direct_dom_return","on_open","on_close","on_close_prevent","overlay_class","content_class","_default","classWithCamelCaseProps"],"sources":["../../../../src/components/modal/Modal.tsx"],"sourcesContent":["/**\n * Web Modal Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport { SuffixContext } from '../../shared/helpers/Suffix'\nimport Context, { ContextProps } from '../../shared/Context'\nimport {\n warn,\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n processChildren,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport HelpButtonInstance from '../help-button/HelpButtonInstance'\nimport { getListOfModalRoots, getModalRoot } from './helpers'\nimport ModalInner from './parts/ModalInner'\nimport { ModalProps } from './types'\n\nimport ModalHeader from './parts/ModalHeader'\nimport ModalHeaderBar from './parts/ModalHeaderBar'\nimport { ScrollViewAllProps } from '../../fragments/scroll-view/ScrollView'\nimport CloseButton from './parts/CloseButton'\nimport ModalRoot from './ModalRoot'\nimport type { SpacingProps } from '../../shared/types'\nimport {\n classWithCamelCaseProps,\n ToCamelCasePartial,\n} from '../../shared/helpers/withCamelCaseProps'\nimport type { ButtonProps } from '../button/Button'\n\nexport const ANIMATION_DURATION = 300\n\ninterface ModalState {\n hide: boolean\n modalActive: boolean\n}\n\nexport type ModalPropTypes = ModalProps &\n SpacingProps &\n Omit<ScrollViewAllProps, 'children'>\n\nclass Modal extends React.PureComponent<\n ModalPropTypes & ToCamelCasePartial<ModalPropTypes>,\n ModalState\n> {\n static contextType = Context\n\n context!: ContextProps\n\n static Bar = ModalHeaderBar\n static Header = ModalHeader\n static Content = ModalInner\n\n static getContent(props) {\n if (typeof props.modal_content === 'string') {\n return props.modal_content\n } else if (typeof props.modal_content === 'function') {\n return props.modal_content(props)\n }\n return processChildren(props)\n }\n\n _id: string\n _triggerRef: React.RefObject<any>\n _onUnmount: Array<() => void>\n _openTimeout: NodeJS.Timeout\n _closeTimeout: NodeJS.Timeout\n _sideEffectsTimeout: NodeJS.Timeout\n _tryToOpenTimeout: NodeJS.Timeout\n activeElement: Element\n isInTransition: boolean\n\n state = {\n hide: false,\n modalActive: false,\n }\n\n static defaultProps = {\n id: null,\n focus_selector: null,\n labelled_by: null,\n title: null,\n disabled: null,\n spacing: true,\n open_delay: null,\n content_id: null,\n dialog_title: 'Vindu',\n close_title: 'Lukk', // Close Modal Window\n hide_close_button: false,\n close_button_attributes: null,\n prevent_close: false,\n prevent_core_style: false,\n animation_duration: ANIMATION_DURATION,\n no_animation: false,\n no_animation_on_mobile: false,\n fullscreen: 'auto',\n min_width: null,\n max_width: null,\n align_content: 'left',\n container_placement: null,\n open_state: null,\n direct_dom_return: false,\n class: null,\n root_id: 'root',\n omit_trigger_button: false,\n\n className: null,\n children: null,\n\n on_open: null,\n on_close: null,\n on_close_prevent: null,\n open_modal: null,\n close_modal: null,\n\n trigger: null,\n trigger_attributes: null,\n\n overlay_class: null,\n content_class: null,\n\n modal_content: null,\n header_content: null,\n bar_content: null,\n }\n\n static getDerivedStateFromProps(props, state) {\n if (props.open_state !== state._open_state) {\n switch (props.open_state) {\n case 'opened':\n case true:\n state.hide = false\n if (isTrue(props.no_animation)) {\n state.modalActive = true\n }\n break\n case 'closed':\n case false:\n state.hide = true\n if (isTrue(props.no_animation)) {\n state.modalActive = false\n }\n break\n }\n }\n state._open_state = props.open_state\n\n return state\n }\n\n constructor(props) {\n super(props)\n this._id = props.id || makeUniqueId('modal-')\n\n this._triggerRef = React.createRef()\n\n this._onUnmount = []\n }\n\n componentDidMount() {\n this.openBasedOnStateUpdate()\n }\n\n componentWillUnmount() {\n clearTimeout(this._openTimeout)\n clearTimeout(this._closeTimeout)\n\n this.removeActiveState()\n\n this._onUnmount.forEach((fn) => {\n if (typeof fn === 'function') {\n fn()\n }\n })\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps !== this.props) {\n this.openBasedOnStateUpdate()\n }\n }\n\n openBasedOnStateUpdate() {\n const { hide } = this.state\n const { open_state } = this.props\n\n if (!this.activeElement && typeof document !== 'undefined') {\n this.activeElement = document.activeElement\n }\n\n if (!hide && (open_state === 'opened' || open_state === true)) {\n this.toggleOpenClose(null, true)\n } else if (hide && (open_state === 'closed' || open_state === false)) {\n this.toggleOpenClose(null, false)\n }\n }\n\n toggleOpenClose = (event = null, showModal = null) => {\n if (event && event.preventDefault) {\n event.preventDefault()\n }\n\n const toggleNow = () => {\n const {\n animation_duration = ANIMATION_DURATION,\n no_animation = false,\n } = this.props\n const timeoutDuration =\n typeof animation_duration === 'string'\n ? parseFloat(animation_duration)\n : animation_duration\n\n const modalActive =\n typeof showModal === 'boolean'\n ? showModal\n : !this.state.modalActive\n\n this.isInTransition = true\n\n const doItNow = () => {\n this.setState(\n {\n hide: false,\n modalActive,\n },\n () => {\n this.isInTransition = false\n this.handleSideEffects()\n }\n )\n }\n\n if (modalActive === false && !isTrue(no_animation)) {\n this.setState({\n hide: true,\n })\n\n this._closeTimeout = setTimeout(doItNow, timeoutDuration) // delay because of the animation\n } else {\n doItNow()\n }\n }\n\n const waitBeforeOpen = () => {\n const { open_delay, no_animation } = this.props\n const delay =\n typeof open_delay === 'string'\n ? parseFloat(open_delay)\n : open_delay\n if (delay > 0 && !isTrue(no_animation)) {\n this._openTimeout = setTimeout(toggleNow, delay) // custom delay\n } else {\n toggleNow()\n }\n }\n\n clearTimeout(this._closeTimeout)\n clearTimeout(this._openTimeout)\n\n const { open_modal } = this.props\n if (typeof open_modal === 'function') {\n const fn = open_modal(waitBeforeOpen, this)\n if (fn) {\n this._onUnmount.push(fn)\n }\n } else {\n waitBeforeOpen()\n }\n }\n\n handleSideEffects = () => {\n const { modalActive } = this.state\n const { close_modal, open_state, animation_duration } = this.props\n\n if (modalActive) {\n if (typeof close_modal === 'function') {\n const fn = close_modal(() => {\n this.toggleOpenClose(null, false)\n }, this)\n if (fn) {\n this._onUnmount.push(fn)\n }\n }\n\n this.setActiveState(this._id)\n } else if (modalActive === false) {\n const focus = (elem: HTMLElement) => {\n // So we can omit showing a Tooltip on the trigger button\n elem.setAttribute('data-autofocus', 'true')\n\n elem.focus({ preventScroll: true })\n\n return new Promise<void>((resolve) => {\n setTimeout(\n () => {\n elem?.removeAttribute('data-autofocus')\n resolve()\n },\n parseFloat(String(animation_duration)) / 3\n )\n })\n }\n\n if (this._triggerRef?.current) {\n focus(this._triggerRef.current)\n }\n\n // because the open_state was set to opened, we force\n if (\n (open_state === 'opened' || open_state === true) &&\n this.activeElement instanceof HTMLElement\n ) {\n try {\n focus(this.activeElement).then(() => {\n this.activeElement = null\n })\n } catch (e) {\n //\n }\n }\n\n this.removeActiveState()\n }\n }\n\n open = (e: Event) => {\n this.toggleOpenClose(e, true)\n }\n\n close = (\n event: Event,\n { ifIsLatest, triggeredBy = null } = { ifIsLatest: true }\n ) => {\n const { prevent_close = false } = this.props\n\n if (isTrue(prevent_close)) {\n const id = this._id\n dispatchCustomElementEvent(this, 'on_close_prevent', {\n id,\n event,\n triggeredBy,\n close: (e) => {\n this.toggleOpenClose(e, false)\n },\n })\n } else {\n if (ifIsLatest) {\n const list = getListOfModalRoots()\n if (list.length > 1) {\n const last = getModalRoot(-1)\n if (last !== this) {\n return // stop here\n }\n }\n }\n\n this.toggleOpenClose(event, false)\n }\n }\n\n removeActiveState() {\n const last = getModalRoot(-1)\n\n // If this instance is not the last one,\n // make the current one to as the active one\n if (last?._id && last._id !== this._id) {\n return this.setActiveState(last._id)\n }\n\n try {\n document.documentElement.removeAttribute('data-dnb-modal-active')\n } catch (e) {\n warn('Modal: Error on remove \"data-dnb-modal-active\"', e)\n }\n }\n\n /**\n * Prevent scrolling on the background\n * But checks if this instance was the last one or not\n *\n * @param {string} modalId Will remove the attribute if false is given\n */\n setActiveState(modalId: string) {\n if (!modalId) {\n warn('Modal: A valid modalId is required')\n }\n // prevent scrolling on the background\n if (typeof document !== 'undefined') {\n try {\n document.documentElement.setAttribute(\n 'data-dnb-modal-active',\n modalId\n )\n } catch (e) {\n warn('Modal: Error on set \"data-dnb-modal-active\"', e)\n }\n }\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Modal.defaultProps,\n this.context.getTranslation(this.props).Modal,\n this.context.Modal\n )\n\n const {\n root_id = 'root',\n content_id = null,\n disabled = null,\n labelled_by = null,\n focus_selector = null,\n header_content = null,\n bar_content = null,\n bypass_invalidation_selectors = null,\n\n id, // eslint-disable-line\n open_state, // eslint-disable-line\n open_delay, // eslint-disable-line\n\n omit_trigger_button = false,\n trigger = null,\n trigger_attributes = null,\n ...rest\n } = props\n\n const { hide, modalActive } = this.state\n const modal_content = Modal.getContent(\n typeof this.props.children === 'function'\n ? Object.freeze({ ...this.props, close: this.close })\n : this.props\n )\n\n const render = (suffixProps) => {\n const triggerAttributes = {\n hidden: false,\n variant: 'secondary',\n icon_position: 'left',\n ...trigger_attributes,\n } as ButtonProps\n\n if (isTrue(disabled)) {\n triggerAttributes.disabled = true\n }\n\n if (triggerAttributes.id) {\n this._id = triggerAttributes.id\n }\n\n let fallbackTitle: string\n if (triggerAttributes.title) {\n fallbackTitle = triggerAttributes.title\n }\n // in case the modal is used in suffix and no title is given\n // suffixProps.label is also available, so we could use that too\n else if (suffixProps) {\n fallbackTitle = this.context.translation.HelpButton.title\n }\n\n const TriggerButton = trigger\n ? (trigger as React.FC)\n : HelpButtonInstance\n\n const title = (\n !triggerAttributes.text ? rest.title || fallbackTitle : null\n ) as string\n\n return (\n <>\n {TriggerButton && !isTrue(omit_trigger_button) && (\n <TriggerButton\n {...triggerAttributes}\n id={this._id}\n title={title}\n onClick={this.toggleOpenClose}\n innerRef={this._triggerRef}\n className={classnames(\n 'dnb-modal__trigger',\n createSpacingClasses(props),\n triggerAttributes.class,\n triggerAttributes.className\n )}\n />\n )}\n\n {modalActive && modal_content && (\n <ModalRoot\n {...rest}\n id={this._id}\n root_id={root_id}\n content_id={content_id || `dnb-modal-${this._id}`}\n labelled_by={labelled_by}\n focus_selector={focus_selector}\n modal_content={modal_content}\n header_content={header_content}\n bar_content={bar_content}\n bypass_invalidation_selectors={bypass_invalidation_selectors}\n close={this.close}\n hide={hide}\n title={rest.title || fallbackTitle}\n />\n )}\n </>\n )\n }\n\n return <SuffixContext.Consumer>{render}</SuffixContext.Consumer>\n }\n}\n\nexport { CloseButton, Modal as OriginalComponent }\n\nexport default classWithCamelCaseProps(Modal)\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalContent.js","names":["_react","_interopRequireDefault","require","_classnames","_keycode","_bodyScrollLock","_componentHelper","_ModalContext","_helpers","_helpers2","_Theme","_shared","_excluded","_excluded2","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","ModalContent","React","PureComponent","constructor","props","triggeredBy","triggeredByEvent","color","modalRoots","getListOfModalRoots","firstLevel","_this$props","_ii","InteractionInvalidation","setBypassSelector","root_id","bypass_invalidation_selectors","Boolean","activate","modal","_iiLocal","_scrollRef","current","document","addEventListener","onKeyDownHandler","animation_duration","timeoutDuration","parseFloat","clearTimeout","_androidFocusTimeout","setTimeout","_document$activeEleme","_document$activeEleme2","activeElement","tagName","scrollIntoView","e","event","stopPropagation","closeModalContent","_overlayClickRef","currentTarget","prevent_overlay_close","isTrue","ifIsLatest","keycode","mostCurrent","getModalRoot","preventDefault","setState","_contentRef","content_ref","createRef","scroll_ref","_id","id","componentDidMount","no_animation","addToIndex","removeScrollPossibility","setFocus","setAndroidFocusHelper","dispatchCustomElementEvent","process","env","NODE_ENV","lockBody","_lockTimeout","componentWillUnmount","_focusTimeout","removeLocks","removeFromIndex","_this$_ii","revert","revertScrollPossibility","warn","removeAndroidFocusHelper","state","removeEventListener","window","isAndroid","_androidFocusHelper","focus_selector","elem","_focusElement","_focusElement$focus","_focusElement2","_focusElement2$select","focusElement","querySelector","focus","select","noH1Elem","disableBodyScroll","enableBodyScroll","clearAllBodyScrollLocks","_ref","_event$persist","params","persist","close","render","_this$context","_this$props2","hide","title","labelled_by","close_title","dialog_title","hide_close_button","close_button_attributes","no_animation_on_mobile","fullscreen","container_placement","content_class","overlay_class","content_id","children","dialog_role","rest","contentId","makeUniqueId","useDialogRole","IS_MAC","IS_SAFARI","IS_IOS","role","contentParams","combineLabelledBy","combineDescribedBy","className","classnames","getThemeClasses","context","theme","onMouseDown","onContentMouseDownHandler","onClick","onContentClickHandler","content","createElement","Provider","setBackgroundColor","onCloseClickHandler","preventClick","contentRef","scrollRef","style","exports","Context"],"sources":["../../../../src/components/modal/ModalContent.tsx"],"sourcesContent":["/**\n * Web Modal Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\nimport {\n disableBodyScroll,\n enableBodyScroll,\n clearAllBodyScrollLocks,\n} from './bodyScrollLock'\nimport {\n warn,\n isTrue,\n makeUniqueId,\n InteractionInvalidation,\n combineLabelledBy,\n combineDescribedBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport ModalContext from './ModalContext'\nimport { IS_IOS, IS_SAFARI, IS_MAC, isAndroid } from '../../shared/helpers'\nimport { ModalContentProps } from './types'\nimport {\n getListOfModalRoots,\n getModalRoot,\n addToIndex,\n removeFromIndex,\n} from './helpers'\nimport { getThemeClasses } from '../../shared/Theme'\nimport { Context } from '../../shared'\nimport { ContextProps } from '../../shared/Context'\n\ninterface ModalContentState {\n triggeredBy: string\n triggeredByEvent: Event\n color: string\n}\n\ndeclare global {\n interface Window {\n __modalStack: any[]\n }\n}\n\ninterface CSSPropertiesWithVars extends React.CSSProperties {\n '--modal-background-color': string\n}\n\nexport default class ModalContent extends React.PureComponent<\n ModalContentProps,\n ModalContentState\n> {\n state = { triggeredBy: null, triggeredByEvent: null, color: null }\n\n _contentRef: React.RefObject<HTMLElement>\n _scrollRef: React.RefObject<HTMLElement>\n _overlayClickRef: { current: null | HTMLElement }\n _id: string\n _lockTimeout: NodeJS.Timeout\n _focusTimeout: NodeJS.Timeout\n _androidFocusTimeout: NodeJS.Timeout\n _ii: InteractionInvalidation\n _iiLocal: InteractionInvalidation\n\n static contextType = Context\n\n context!: ContextProps\n\n constructor(props: ModalContentProps) {\n super(props)\n this._contentRef = this.props.content_ref || React.createRef()\n this._scrollRef = this.props.scroll_ref || React.createRef()\n this._overlayClickRef = React.createRef()\n\n // NB: The \"\"._id\" is used in the __modalStack as \"last._id\"\n this._id = props.id\n }\n\n componentDidMount() {\n const {\n id = null,\n no_animation = false,\n animation_duration = null,\n } = this.props\n\n const timeoutDuration: number =\n typeof animation_duration === 'string'\n ? parseFloat(animation_duration)\n : animation_duration\n\n // Add it to the index at first\n // we use it later with getListOfModalRoots\n addToIndex(this)\n\n // Because of nested modals/drawers, we run this regardless\n // has to be run at first – so the scrollbar gets removed\n this.removeScrollPossibility() // forces browser to re-paint\n\n this.setFocus()\n this.setAndroidFocusHelper()\n\n dispatchCustomElementEvent(this, 'on_open', {\n id,\n })\n\n if (isTrue(no_animation) || process.env.NODE_ENV === 'test') {\n this.lockBody() // forces browser to re-paint\n } else {\n this._lockTimeout = setTimeout(this.lockBody, timeoutDuration * 1.2) // a little over --modal-animation-duration\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this._focusTimeout)\n clearTimeout(this._lockTimeout)\n this.removeLocks()\n }\n\n lockBody = () => {\n const modalRoots = getListOfModalRoots()\n const firstLevel = modalRoots[0]\n\n if (firstLevel === this) {\n this._ii = new InteractionInvalidation()\n this._ii.setBypassSelector(\n [\n // Bypass modal content\n '.dnb-modal__content *',\n `#dnb-modal-${this.props.root_id || 'root'}`,\n `#dnb-modal-${this.props.root_id || 'root'} *`,\n\n // TODO: Eventually in future, make it possible to bypass invalidation from outside\n // '.dnb-modal--bypass_invalidation',\n // '.dnb-modal--bypass_invalidation_deep *',\n\n ...(this.props?.bypass_invalidation_selectors || []),\n ].filter(Boolean)\n )\n this._ii.activate()\n } else {\n modalRoots.forEach((modal) => {\n if (\n modal !== this &&\n typeof modal._iiLocal === 'undefined' &&\n typeof modal._scrollRef !== 'undefined'\n ) {\n modal._iiLocal = new InteractionInvalidation()\n modal._iiLocal.activate(modal._scrollRef.current)\n }\n })\n }\n\n if (typeof document !== 'undefined') {\n /** To ensure, we have always a working keydown, we call it both on the element and document */\n document.addEventListener('keydown', this.onKeyDownHandler)\n }\n }\n\n removeLocks() {\n const modalRoots = getListOfModalRoots()\n const firstLevel = modalRoots[0]\n\n removeFromIndex(this)\n\n if (firstLevel === this) {\n this._ii?.revert()\n this.revertScrollPossibility()\n } else {\n try {\n const modal = modalRoots[modalRoots.length - 2]\n if (modal !== this && modal._iiLocal) {\n modal._iiLocal.revert()\n delete modal._iiLocal\n }\n } catch (e) {\n warn(e)\n }\n }\n\n this.removeAndroidFocusHelper()\n\n const id = this.props.id\n const { triggeredBy, triggeredByEvent } = this.state\n dispatchCustomElementEvent(this, 'on_close', {\n id,\n event: triggeredByEvent,\n triggeredBy: triggeredBy || 'unmount',\n })\n\n if (typeof document !== 'undefined') {\n document.removeEventListener('keydown', this.onKeyDownHandler)\n }\n }\n\n setAndroidFocusHelper() {\n if (typeof window !== 'undefined' && isAndroid()) {\n window.addEventListener('resize', this._androidFocusHelper)\n }\n }\n\n removeAndroidFocusHelper() {\n window.removeEventListener('resize', this._androidFocusHelper)\n clearTimeout(this._androidFocusTimeout)\n }\n\n _androidFocusHelper = () => {\n const { animation_duration = null } = this.props\n const timeoutDuration: number =\n typeof animation_duration === 'string'\n ? parseFloat(animation_duration)\n : animation_duration\n\n clearTimeout(this._androidFocusTimeout)\n this._androidFocusTimeout = setTimeout(() => {\n try {\n if (\n document.activeElement?.tagName == 'INPUT' ||\n document.activeElement?.tagName == 'TEXTAREA'\n ) {\n document.activeElement.scrollIntoView()\n }\n } catch (e) {\n //\n }\n }, timeoutDuration / 2) // Older Android needs a delay here\n }\n\n setFocus() {\n const {\n focus_selector = null,\n no_animation = null,\n animation_duration = null,\n } = this.props\n const elem = this._contentRef.current\n const timeoutDuration: number =\n typeof animation_duration === 'string'\n ? parseFloat(animation_duration)\n : animation_duration\n\n if (elem) {\n clearTimeout(this._focusTimeout)\n this._focusTimeout = setTimeout(\n () => {\n try {\n let focusElement = elem as HTMLInputElement\n\n // Try to use the \"first-focus\" method first\n if (typeof focus_selector === 'string') {\n focusElement = elem.querySelector(focus_selector)\n }\n\n focusElement?.focus?.()\n focusElement?.select?.()\n\n const noH1Elem = elem.querySelector('h1, h2, h3')\n if (noH1Elem?.tagName !== 'H1') {\n warn('A Dialog or Drawer needs a h1 as its first element!')\n }\n } catch (e) {\n warn(e)\n }\n },\n isTrue(no_animation) ? 0 : timeoutDuration || 0\n ) // with this delay, the user can press esc without an focus action first\n }\n }\n\n removeScrollPossibility() {\n if (this._scrollRef.current) {\n disableBodyScroll(this._scrollRef.current)\n }\n }\n\n revertScrollPossibility() {\n enableBodyScroll(this._scrollRef.current)\n clearAllBodyScrollLocks()\n }\n\n preventClick = (event) => {\n if (event) {\n event.stopPropagation()\n }\n }\n\n onCloseClickHandler = (event: React.SyntheticEvent) => {\n this.closeModalContent(event, { triggeredBy: 'button' })\n }\n\n onContentMouseDownHandler = (event: React.SyntheticEvent) => {\n this._overlayClickRef.current =\n event.target === event.currentTarget\n ? (event.target as HTMLElement)\n : null\n }\n\n onContentClickHandler = (event: React.SyntheticEvent) => {\n /**\n * Prevent false-positive Modal close,\n * when e.g. selecting text inside and moving the mouse outside,\n * we would still get this event fired. There we check if the current click,\n * has the same target as where the click got initiated.\n */\n if (this._overlayClickRef.current !== event.target) {\n return // stop here\n }\n this._overlayClickRef.current = null\n\n const { prevent_overlay_close } = this.props\n\n if (!isTrue(prevent_overlay_close)) {\n this.closeModalContent(event, {\n triggeredBy: 'overlay',\n ifIsLatest: false,\n })\n }\n }\n\n onKeyDownHandler = (event) => {\n switch (keycode(event)) {\n case 'esc': {\n const mostCurrent = getModalRoot(-1)\n\n if (mostCurrent === this) {\n event.preventDefault()\n this.closeModalContent(event, {\n triggeredBy: 'keyboard',\n })\n }\n\n break\n }\n }\n }\n\n closeModalContent(event, { triggeredBy, ...params }) {\n event?.persist?.()\n this.setState({ triggeredBy, triggeredByEvent: event }, () => {\n this.props.close(event, {\n triggeredBy,\n ...params,\n })\n })\n }\n\n setBackgroundColor = (color: string) => {\n this.setState({ color })\n }\n\n render() {\n const {\n hide,\n title,\n labelled_by,\n id: _id, // eslint-disable-line\n close_title = 'Lukk',\n dialog_title = 'Vindu',\n hide_close_button = false,\n close_button_attributes,\n no_animation = false,\n no_animation_on_mobile = false,\n fullscreen = 'auto',\n container_placement = 'right',\n close,\n content_class,\n overlay_class,\n content_id,\n children, // eslint-disable-line\n dialog_role = null,\n ...rest\n } = this.props\n const { color } = this.state\n\n const contentId = content_id || makeUniqueId('modal-')\n\n const useDialogRole = !(IS_MAC || IS_SAFARI || IS_IOS)\n let role = dialog_role || 'dialog'\n if (!useDialogRole && role === 'dialog') {\n role = 'region'\n }\n\n const contentParams = {\n /**\n * Do not use role=\"dialog\" on Safari\n *\n * VoiceOver has troubles with role=\"dialog\" and \"Modal in Modal\",\n * the result is, only the first Modal gets focus (set by Safari)\n *\n * Tests have shown: Both VoiceOver are working fine with the:\n * \"aria-labelledby\" and \"aria-describedby\" approach\n *\n */\n role,\n 'aria-modal': useDialogRole ? true : undefined,\n\n /**\n * ARIA references\n */\n 'aria-labelledby': combineLabelledBy(\n this.props,\n title ? contentId + '-title' : null,\n labelled_by\n ),\n 'aria-describedby': combineDescribedBy(\n this.props,\n contentId + '-content'\n ),\n\n /**\n * If no labelled_by and no title is given,\n * set a fallback \"dialog_title\"\n */\n 'aria-label': !title && !labelled_by ? dialog_title : undefined,\n\n className: classnames(\n 'dnb-modal__content',\n isTrue(fullscreen)\n ? 'dnb-modal__content--fullscreen'\n : fullscreen === 'auto' && 'dnb-modal__content--auto-fullscreen',\n container_placement\n ? `dnb-modal__content--${container_placement || 'right'}`\n : null,\n getThemeClasses(this.context?.theme),\n content_class\n ),\n onMouseDown: this.onContentMouseDownHandler,\n onClick: this.onContentClickHandler,\n }\n\n const content =\n typeof children === 'function'\n ? children({ ...rest, close })\n : children\n\n return (\n <ModalContext.Provider\n value={{\n id: this.props.id,\n title,\n hide_close_button,\n close_button_attributes,\n close_title,\n hide,\n setBackgroundColor: this.setBackgroundColor,\n onCloseClickHandler: this.onCloseClickHandler,\n preventClick: this.preventClick,\n onKeyDownHandler: this.onKeyDownHandler,\n contentRef: this._contentRef,\n scrollRef: this._scrollRef,\n contentId,\n close,\n }}\n >\n <div\n id={contentId}\n /** Sets the color on scroll overflow (at the bottom) */\n style={\n (color\n ? { '--modal-background-color': `var(--color-${color})` }\n : null) as CSSPropertiesWithVars\n }\n {...contentParams}\n >\n {content}\n </div>\n\n <span\n className={classnames(\n 'dnb-modal__overlay',\n hide && 'dnb-modal__overlay--hide',\n isTrue(no_animation) && 'dnb-modal__overlay--no-animation',\n isTrue(no_animation_on_mobile) &&\n 'dnb-modal__overlay--no-animation-on-mobile',\n overlay_class\n )}\n aria-hidden={true}\n />\n </ModalContext.Provider>\n )\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ModalContent.js","names":["_react","_interopRequireDefault","require","_classnames","_keycode","_bodyScrollLock","_componentHelper","_ModalContext","_helpers","_helpers2","_Theme","_shared","_excluded","_excluded2","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","ModalContent","React","PureComponent","constructor","props","triggeredBy","triggeredByEvent","color","modalRoots","getListOfModalRoots","firstLevel","_this$props","_ii","InteractionInvalidation","setBypassSelector","root_id","bypass_invalidation_selectors","Boolean","activate","modal","_iiLocal","_scrollRef","current","document","addEventListener","onKeyDownHandler","animation_duration","timeoutDuration","parseFloat","clearTimeout","_androidFocusTimeout","setTimeout","_document$activeEleme","_document$activeEleme2","activeElement","tagName","scrollIntoView","e","event","stopPropagation","closeModalContent","_overlayClickRef","currentTarget","prevent_overlay_close","isTrue","ifIsLatest","keycode","mostCurrent","getModalRoot","preventDefault","setState","_contentRef","content_ref","createRef","scroll_ref","_id","id","componentDidMount","no_animation","addToIndex","removeScrollPossibility","setFocus","setAndroidFocusHelper","dispatchCustomElementEvent","process","env","NODE_ENV","lockBody","_lockTimeout","componentWillUnmount","_focusTimeout","removeLocks","removeFromIndex","_this$_ii","revert","revertScrollPossibility","warn","removeAndroidFocusHelper","state","removeEventListener","window","isAndroid","_androidFocusHelper","focus_selector","elem","_focusElement","_focusElement$focus","_focusElement2","_focusElement2$select","focusElement","querySelector","focus","select","noH1Elem","disableBodyScroll","enableBodyScroll","clearAllBodyScrollLocks","_ref","_event$persist","params","persist","close","render","_this$context","_this$props2","hide","title","labelled_by","close_title","dialog_title","hide_close_button","close_button_attributes","no_animation_on_mobile","fullscreen","container_placement","content_class","overlay_class","content_id","children","dialog_role","rest","contentId","makeUniqueId","useDialogRole","IS_MAC","IS_SAFARI","IS_IOS","role","contentParams","combineLabelledBy","combineDescribedBy","className","classnames","getThemeClasses","context","theme","onMouseDown","onContentMouseDownHandler","onClick","onContentClickHandler","content","createElement","Provider","setBackgroundColor","onCloseClickHandler","preventClick","contentRef","scrollRef","style","exports","Context"],"sources":["../../../../src/components/modal/ModalContent.tsx"],"sourcesContent":["/**\n * Web Modal Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport keycode from 'keycode'\nimport {\n disableBodyScroll,\n enableBodyScroll,\n clearAllBodyScrollLocks,\n} from './bodyScrollLock'\nimport {\n warn,\n isTrue,\n makeUniqueId,\n InteractionInvalidation,\n combineLabelledBy,\n combineDescribedBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport ModalContext from './ModalContext'\nimport { IS_IOS, IS_SAFARI, IS_MAC, isAndroid } from '../../shared/helpers'\nimport { ModalContentProps } from './types'\nimport {\n getListOfModalRoots,\n getModalRoot,\n addToIndex,\n removeFromIndex,\n} from './helpers'\nimport { getThemeClasses } from '../../shared/Theme'\nimport { Context } from '../../shared'\nimport { ContextProps } from '../../shared/Context'\n\ninterface ModalContentState {\n triggeredBy: string\n triggeredByEvent: Event\n color: string\n}\n\ndeclare global {\n interface Window {\n __modalStack: any[]\n }\n}\n\ninterface CSSPropertiesWithVars extends React.CSSProperties {\n '--modal-background-color': string\n}\n\nexport default class ModalContent extends React.PureComponent<\n ModalContentProps,\n ModalContentState\n> {\n state = { triggeredBy: null, triggeredByEvent: null, color: null }\n\n _contentRef: React.RefObject<HTMLElement>\n _scrollRef: React.RefObject<HTMLElement>\n _overlayClickRef: { current: null | HTMLElement }\n _id: string\n _lockTimeout: NodeJS.Timeout\n _focusTimeout: NodeJS.Timeout\n _androidFocusTimeout: NodeJS.Timeout\n _ii: InteractionInvalidation\n _iiLocal: InteractionInvalidation\n\n static contextType = Context\n\n context!: ContextProps\n\n constructor(props: ModalContentProps) {\n super(props)\n this._contentRef = this.props.content_ref || React.createRef()\n this._scrollRef = this.props.scroll_ref || React.createRef()\n this._overlayClickRef = React.createRef()\n\n // NB: The \"\"._id\" is used in the __modalStack as \"last._id\"\n this._id = props.id\n }\n\n componentDidMount() {\n const {\n id = null,\n no_animation = false,\n animation_duration = null,\n } = this.props\n\n const timeoutDuration: number =\n typeof animation_duration === 'string'\n ? parseFloat(animation_duration)\n : animation_duration\n\n // Add it to the index at first\n // we use it later with getListOfModalRoots\n addToIndex(this)\n\n // Because of nested modals/drawers, we run this regardless\n // has to be run at first – so the scrollbar gets removed\n this.removeScrollPossibility() // forces browser to re-paint\n\n this.setFocus()\n this.setAndroidFocusHelper()\n\n dispatchCustomElementEvent(this, 'on_open', {\n id,\n })\n\n if (isTrue(no_animation) || process.env.NODE_ENV === 'test') {\n this.lockBody() // forces browser to re-paint\n } else {\n this._lockTimeout = setTimeout(this.lockBody, timeoutDuration * 1.2) // a little over --modal-animation-duration\n }\n }\n\n componentWillUnmount() {\n clearTimeout(this._focusTimeout)\n clearTimeout(this._lockTimeout)\n this.removeLocks()\n }\n\n lockBody = () => {\n const modalRoots = getListOfModalRoots()\n const firstLevel = modalRoots[0]\n\n if (firstLevel === this) {\n this._ii = new InteractionInvalidation()\n this._ii.setBypassSelector(\n [\n // Bypass modal content\n '.dnb-modal__content *',\n `#dnb-modal-${this.props.root_id || 'root'}`,\n `#dnb-modal-${this.props.root_id || 'root'} *`,\n\n // TODO: Eventually in future, make it possible to bypass invalidation from outside\n // '.dnb-modal--bypass_invalidation',\n // '.dnb-modal--bypass_invalidation_deep *',\n\n ...(this.props?.bypass_invalidation_selectors || []),\n ].filter(Boolean)\n )\n this._ii.activate()\n } else {\n modalRoots.forEach((modal) => {\n if (\n modal !== this &&\n typeof modal._iiLocal === 'undefined' &&\n typeof modal._scrollRef !== 'undefined'\n ) {\n modal._iiLocal = new InteractionInvalidation()\n modal._iiLocal.activate(modal._scrollRef.current)\n }\n })\n }\n\n if (typeof document !== 'undefined') {\n /** To ensure, we have always a working keydown, we call it both on the element and document */\n document.addEventListener('keydown', this.onKeyDownHandler)\n }\n }\n\n removeLocks() {\n const modalRoots = getListOfModalRoots()\n const firstLevel = modalRoots[0]\n\n removeFromIndex(this)\n\n if (firstLevel === this) {\n this._ii?.revert()\n this.revertScrollPossibility()\n } else {\n try {\n const modal = modalRoots[modalRoots.length - 2]\n if (modal !== this && modal._iiLocal) {\n modal._iiLocal.revert()\n delete modal._iiLocal\n }\n } catch (e) {\n warn(e)\n }\n }\n\n this.removeAndroidFocusHelper()\n\n const id = this.props.id\n const { triggeredBy, triggeredByEvent } = this.state\n dispatchCustomElementEvent(this, 'on_close', {\n id,\n event: triggeredByEvent,\n triggeredBy: triggeredBy || 'unmount',\n })\n\n if (typeof document !== 'undefined') {\n document.removeEventListener('keydown', this.onKeyDownHandler)\n }\n }\n\n setAndroidFocusHelper() {\n if (typeof window !== 'undefined' && isAndroid()) {\n window.addEventListener('resize', this._androidFocusHelper)\n }\n }\n\n removeAndroidFocusHelper() {\n window.removeEventListener('resize', this._androidFocusHelper)\n clearTimeout(this._androidFocusTimeout)\n }\n\n _androidFocusHelper = () => {\n const { animation_duration = null } = this.props\n const timeoutDuration: number =\n typeof animation_duration === 'string'\n ? parseFloat(animation_duration)\n : animation_duration\n\n clearTimeout(this._androidFocusTimeout)\n this._androidFocusTimeout = setTimeout(() => {\n try {\n if (\n document.activeElement?.tagName == 'INPUT' ||\n document.activeElement?.tagName == 'TEXTAREA'\n ) {\n document.activeElement.scrollIntoView()\n }\n } catch (e) {\n //\n }\n }, timeoutDuration / 2) // Older Android needs a delay here\n }\n\n setFocus() {\n const {\n focus_selector = null,\n no_animation = null,\n animation_duration = null,\n } = this.props\n const elem = this._contentRef.current\n const timeoutDuration: number =\n typeof animation_duration === 'string'\n ? parseFloat(animation_duration)\n : animation_duration\n\n if (elem) {\n clearTimeout(this._focusTimeout)\n this._focusTimeout = setTimeout(\n () => {\n try {\n let focusElement = elem as HTMLInputElement\n\n // Try to use the \"first-focus\" method first\n if (typeof focus_selector === 'string') {\n focusElement = elem.querySelector(focus_selector)\n }\n\n focusElement?.focus?.()\n focusElement?.select?.()\n\n const noH1Elem = elem.querySelector('h1, h2, h3')\n if (noH1Elem?.tagName !== 'H1') {\n warn('A Dialog or Drawer needs a h1 as its first element!')\n }\n } catch (e) {\n warn(e)\n }\n },\n isTrue(no_animation) ? 0 : timeoutDuration || 0\n ) // with this delay, the user can press esc without an focus action first\n }\n }\n\n removeScrollPossibility() {\n if (this._scrollRef.current) {\n disableBodyScroll(this._scrollRef.current)\n }\n }\n\n revertScrollPossibility() {\n enableBodyScroll(this._scrollRef.current)\n clearAllBodyScrollLocks()\n }\n\n preventClick = (event) => {\n if (event) {\n event.stopPropagation()\n }\n }\n\n onCloseClickHandler = (event: React.SyntheticEvent) => {\n this.closeModalContent(event, { triggeredBy: 'button' })\n }\n\n onContentMouseDownHandler = (event: React.SyntheticEvent) => {\n this._overlayClickRef.current =\n event.target === event.currentTarget\n ? (event.target as HTMLElement)\n : null\n }\n\n onContentClickHandler = (event: React.SyntheticEvent) => {\n /**\n * Prevent false-positive Modal close,\n * when e.g. selecting text inside and moving the mouse outside,\n * we would still get this event fired. There we check if the current click,\n * has the same target as where the click got initiated.\n */\n if (this._overlayClickRef.current !== event.target) {\n return // stop here\n }\n this._overlayClickRef.current = null\n\n const { prevent_overlay_close } = this.props\n\n if (!isTrue(prevent_overlay_close)) {\n this.closeModalContent(event, {\n triggeredBy: 'overlay',\n ifIsLatest: false,\n })\n }\n }\n\n onKeyDownHandler = (event) => {\n switch (keycode(event)) {\n case 'esc': {\n const mostCurrent = getModalRoot(-1)\n\n if (mostCurrent === this) {\n event.preventDefault()\n this.closeModalContent(event, {\n triggeredBy: 'keyboard',\n })\n }\n\n break\n }\n }\n }\n\n closeModalContent(event, { triggeredBy, ...params }) {\n event?.persist?.()\n this.setState({ triggeredBy, triggeredByEvent: event }, () => {\n this.props.close(event, {\n triggeredBy,\n ...params,\n })\n })\n }\n\n setBackgroundColor = (color: string) => {\n this.setState({ color })\n }\n\n render() {\n const {\n hide,\n title,\n labelled_by,\n id: _id, // eslint-disable-line\n close_title = 'Lukk',\n dialog_title = 'Vindu',\n hide_close_button = false,\n close_button_attributes,\n no_animation = false,\n no_animation_on_mobile = false,\n fullscreen = 'auto',\n container_placement = 'right',\n close,\n content_class,\n overlay_class,\n content_id,\n children, // eslint-disable-line\n dialog_role = null,\n ...rest\n } = this.props\n const { color } = this.state\n\n const contentId = content_id || makeUniqueId('modal-')\n\n const useDialogRole = !(IS_MAC || IS_SAFARI || IS_IOS)\n let role = dialog_role || 'dialog'\n if (!useDialogRole && role === 'dialog') {\n role = 'region'\n }\n\n const contentParams = {\n /**\n * Do not use role=\"dialog\" on Safari\n *\n * VoiceOver has troubles with role=\"dialog\" and \"Modal in Modal\",\n * the result is, only the first Modal gets focus (set by Safari)\n *\n * Tests have shown: Both VoiceOver are working fine with the:\n * \"aria-labelledby\" and \"aria-describedby\" approach\n *\n */\n role,\n 'aria-modal': useDialogRole ? true : undefined,\n\n /**\n * ARIA references\n */\n 'aria-labelledby': combineLabelledBy(\n this.props,\n title ? contentId + '-title' : null,\n labelled_by\n ),\n 'aria-describedby': combineDescribedBy(\n this.props,\n contentId + '-content'\n ),\n\n /**\n * If no labelled_by and no title is given,\n * set a fallback \"dialog_title\"\n */\n 'aria-label': !title && !labelled_by ? dialog_title : undefined,\n\n className: classnames(\n 'dnb-modal__content',\n isTrue(fullscreen)\n ? 'dnb-modal__content--fullscreen'\n : fullscreen === 'auto' && 'dnb-modal__content--auto-fullscreen',\n container_placement\n ? `dnb-modal__content--${container_placement || 'right'}`\n : null,\n getThemeClasses(this.context?.theme),\n content_class\n ),\n onMouseDown: this.onContentMouseDownHandler,\n onClick: this.onContentClickHandler,\n }\n\n const content =\n typeof children === 'function'\n ? children({ ...rest, close })\n : children\n\n return (\n <ModalContext.Provider\n value={{\n id: this.props.id,\n title,\n hide_close_button,\n close_button_attributes,\n close_title,\n hide,\n setBackgroundColor: this.setBackgroundColor,\n onCloseClickHandler: this.onCloseClickHandler,\n preventClick: this.preventClick,\n onKeyDownHandler: this.onKeyDownHandler,\n contentRef: this._contentRef,\n scrollRef: this._scrollRef,\n contentId,\n close,\n }}\n >\n <div\n id={contentId}\n /** Sets the color on scroll overflow (at the bottom) */\n style={\n (color\n ? { '--modal-background-color': `var(--color-${color})` }\n : null) as CSSPropertiesWithVars\n }\n {...contentParams}\n >\n {content}\n </div>\n\n <span\n className={classnames(\n 'dnb-modal__overlay',\n hide && 'dnb-modal__overlay--hide',\n isTrue(no_animation) && 'dnb-modal__overlay--no-animation',\n isTrue(no_animation_on_mobile) &&\n 'dnb-modal__overlay--no-animation-on-mobile',\n overlay_class\n )}\n aria-hidden={true}\n />\n </ModalContext.Provider>\n )\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CloseButton.js","names":["_react","_interopRequireDefault","require","_classnames","_componentHelper","_Button","_Context","_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","_defineProperty","value","_toPropertyKey","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","CloseButton","React","PureComponent","constructor","render","_extendPropsWithConte","extendPropsWithContextInClassComponent","props","defaultProps","context","getTranslation","Modal","close_title","size","icon_position","className","button_props","createElement","type","variant","icon","text","classnames","exports","Context"],"sources":["../../../../../src/components/modal/parts/CloseButton.tsx"],"sourcesContent":["/**\n * Web Modal Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport { extendPropsWithContextInClassComponent } from '../../../shared/component-helper'\nimport Button from '../../button/Button'\nimport Context, { ContextProps } from '../../../shared/Context'\nimport type { ButtonProps } from '../../button/Button'\n\nexport type CloseButtonProps = {\n /**\n * The title of the close button. Defaults to <em>Close</em> or <em>Lukk</em>.\n */\n close_title?: string\n} & Partial<ButtonProps>\n\nexport default class CloseButton extends React.PureComponent<CloseButtonProps> {\n static contextType = Context\n\n context!: ContextProps\n\n static defaultProps = {\n close_title: null,\n size: 'default',\n icon_position: 'left',\n className: null,\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const {\n close_title = null,\n size = 'default',\n icon_position = 'left',\n className = null,\n ...button_props\n } = extendPropsWithContextInClassComponent(\n this.props,\n CloseButton.defaultProps,\n this.context.getTranslation(this.props).Modal\n )\n\n return (\n <Button\n type=\"button\"\n variant=\"tertiary\"\n icon=\"close\"\n text={close_title}\n size={size}\n icon_position={icon_position}\n className={classnames('dnb-modal__close-button', className)}\n {...button_props}\n />\n )\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"CloseButton.js","names":["_react","_interopRequireDefault","require","_classnames","_componentHelper","_Button","_Context","_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","_defineProperty","value","_toPropertyKey","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","CloseButton","React","PureComponent","constructor","render","_extendPropsWithConte","extendPropsWithContextInClassComponent","props","defaultProps","context","getTranslation","Modal","close_title","size","icon_position","className","button_props","createElement","type","variant","icon","text","classnames","exports","Context"],"sources":["../../../../../src/components/modal/parts/CloseButton.tsx"],"sourcesContent":["/**\n * Web Modal Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport { extendPropsWithContextInClassComponent } from '../../../shared/component-helper'\nimport Button from '../../button/Button'\nimport Context, { ContextProps } from '../../../shared/Context'\nimport type { ButtonProps } from '../../button/Button'\n\nexport type CloseButtonProps = {\n /**\n * The title of the close button. Defaults to <em>Close</em> or <em>Lukk</em>.\n */\n close_title?: string\n} & Partial<ButtonProps>\n\nexport default class CloseButton extends React.PureComponent<CloseButtonProps> {\n static contextType = Context\n\n context!: ContextProps\n\n static defaultProps = {\n close_title: null,\n size: 'default',\n icon_position: 'left',\n className: null,\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const {\n close_title = null,\n size = 'default',\n icon_position = 'left',\n className = null,\n ...button_props\n } = extendPropsWithContextInClassComponent(\n this.props,\n CloseButton.defaultProps,\n this.context.getTranslation(this.props).Modal\n )\n\n return (\n <Button\n type=\"button\"\n variant=\"tertiary\"\n icon=\"close\"\n text={close_title}\n size={size}\n icon_position={icon_position}\n className={classnames('dnb-modal__close-button', className)}\n {...button_props}\n />\n )\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NumberFormat.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_Context","_componentHelper","_helpers","_SpacingHelper","_SkeletonHelper","_Tooltip","_interopRequireWildcard","_NumberUtils","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","NumberFormat","React","PureComponent","constructor","props","_this$context$getTran","_this$context$getTran2","showSelectionNotice","cleanedValue","label","context","getTranslation","clipboard_copy","run","_ref","current","setState","selected","hasSelectedText","clearTimeout","_selectAllTimeout","setTimeout","setFocus","isTrue","always_selectall","createRef","_selectionRef","_id","id","makeUniqueId","state","omitCurrencySign","componentDidMount","IS_IOS","hasiOSFix","runIOSSelectionFix","componentWillUnmount","_this$outsideClick","outsideClick","remove","_this$_selectionRef$c","focus","selectAll","copy_selection","detectOutsideClick","onBlurHandler","elem","selection","window","getSelection","range","document","createRange","selectNodeContents","removeAllRanges","addRange","e","warn","runFix","comp","className","isValidElement","cloneElement","classnames","createElement","render","extendPropsWithContextInClassComponent","defaultProps","_value","prefix","suffix","children","currency","currency_display","currency_position","compact","ban","nin","phone","org","percent","link","_link","tooltip","skeleton","options","locale","decimals","omit_rounding","clean","selectall","clean_copy_value","srLabel","element","class","_className","_rest","rest","formatOptions","omit_currency_sign","returnAria","useContext","extend","number","display","aria","lang","format","injectTooltipSemantic","attributes","ref","createSpacingClasses","displayParams","onClick","onClickHandler","onContextMenu","onContextMenuHandler","validateDOMAttributes","skeletonDOMAttributes","Fragment","convertJsxToString","href","Element","createSkeletonClass","tabIndex","onBlur","onCopy","shortcutHandler","targetElement","exports","Context","process","env","NODE_ENV","propTypes","PropTypes","string","oneOfType","node","func","bool","oneOf","spacingPropTypes","_supportsSpacingProps"],"sources":["../../../../src/components/number-format/NumberFormat.js"],"sourcesContent":["/**\n * Web NumberFormat Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport Context from '../../shared/Context'\nimport {\n warn,\n isTrue,\n makeUniqueId,\n validateDOMAttributes,\n convertJsxToString,\n extendPropsWithContextInClassComponent,\n extend,\n detectOutsideClick,\n} from '../../shared/component-helper'\nimport { hasSelectedText, IS_IOS } from '../../shared/helpers'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\nimport Tooltip, { injectTooltipSemantic } from '../tooltip/Tooltip'\nimport {\n format,\n showSelectionNotice,\n runIOSSelectionFix,\n} from './NumberUtils'\n\nexport default class NumberFormat extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n id: PropTypes.string,\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n locale: PropTypes.string,\n prefix: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n suffix: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n // currency\n currency: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n currency_display: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.oneOf(['code', 'name', 'symbol', 'narrowSymbol', '']),\n ]),\n currency_position: PropTypes.oneOf(['auto', 'before', 'after']),\n\n // shortens any number or currency including an abbreviation\n compact: PropTypes.oneOfType([\n PropTypes.oneOf(['short', 'long']),\n PropTypes.bool,\n ]),\n\n // bank account number\n ban: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // national identification number\n nin: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // phone number\n phone: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // organization number\n org: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // percentage\n percent: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // can be tel or sms\n link: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n options: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n decimals: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n selectall: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n always_selectall: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n copy_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n clean_copy_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n omit_rounding: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n clean: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n srLabel: PropTypes.node,\n element: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n tooltip: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n ...spacingPropTypes,\n\n class: PropTypes.string,\n className: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n }\n static defaultProps = {\n id: null,\n value: null,\n locale: null,\n prefix: null,\n suffix: null,\n currency: null,\n currency_display: null, // code, name, symbol\n currency_position: null, // null, before, after\n compact: null,\n ban: null,\n nin: null,\n phone: null,\n org: null,\n percent: null,\n link: null,\n options: null,\n decimals: null,\n selectall: true,\n always_selectall: false,\n copy_selection: true,\n clean_copy_value: false,\n omit_rounding: null,\n clean: null,\n srLabel: null,\n element: 'span', // span or abbr\n tooltip: null,\n skeleton: null,\n class: null,\n\n className: null,\n children: null,\n }\n\n constructor(props) {\n super(props)\n this._ref = React.createRef()\n this._selectionRef = React.createRef()\n\n this._id = props.id || makeUniqueId()\n this.state = { selected: false, omitCurrencySign: false }\n }\n\n componentDidMount() {\n clearTimeout(this._selectAllTimeout)\n\n // NB: This hack may be removed in future iOS versions\n // in order that iOS v13 can select something on the first try, we run this add range trick\n if (IS_IOS && !hasiOSFix) {\n hasiOSFix = true\n runIOSSelectionFix()\n }\n }\n\n shortcutHandler = () => {\n showSelectionNotice({\n value: this.cleanedValue,\n label: this.context.getTranslation(this.props)?.NumberFormat\n ?.clipboard_copy,\n }).run(this._ref.current)\n }\n\n onBlurHandler = () => {\n this.setState({ selected: false })\n }\n\n onContextMenuHandler = () => {\n if (!hasSelectedText()) {\n clearTimeout(this._selectAllTimeout)\n this._selectAllTimeout = setTimeout(() => {\n this.setFocus()\n }, 1)\n }\n }\n\n onClickHandler = () => {\n if (!hasSelectedText() || isTrue(this.props.always_selectall)) {\n this.setFocus()\n }\n }\n\n componentWillUnmount() {\n this.outsideClick?.remove()\n }\n\n setFocus() {\n this.setState({ selected: true }, () => {\n this._selectionRef.current?.focus()\n this.selectAll()\n\n if (!isTrue(this.props.copy_selection)) {\n this.outsideClick = detectOutsideClick(\n this._ref.current,\n this.onBlurHandler\n )\n }\n })\n }\n\n selectAll() {\n try {\n const elem = this._selectionRef.current || this._ref.current\n if (elem) {\n const selection = window.getSelection()\n const range = document.createRange()\n range.selectNodeContents(elem)\n selection.removeAllRanges()\n selection.addRange(range)\n }\n } catch (e) {\n warn(e)\n }\n }\n\n runFix(comp, className) {\n if (typeof comp === 'function') {\n comp = comp()\n }\n if (React.isValidElement(comp)) {\n return React.cloneElement(comp, {\n className: classnames(comp.props.className, className),\n })\n }\n return <span className={className}>{comp}</span>\n }\n\n render() {\n // consume the global context\n const props = extendPropsWithContextInClassComponent(\n this.props,\n NumberFormat.defaultProps,\n this.context.getTranslation(this.props).NumberFormat,\n this.context.NumberFormat\n )\n\n const {\n id, // eslint-disable-line\n value: _value,\n prefix,\n suffix,\n children,\n currency,\n currency_display,\n currency_position,\n compact,\n ban,\n nin,\n phone,\n org,\n percent,\n link: _link,\n tooltip,\n skeleton,\n options,\n locale,\n decimals,\n omit_rounding,\n clean,\n selectall,\n copy_selection,\n clean_copy_value,\n srLabel,\n element,\n class: _className,\n className,\n ..._rest\n } = props\n let rest = _rest\n\n let link = _link\n let value = _value\n\n if (value === null && children !== null) {\n value = children\n }\n\n const formatOptions = {\n locale,\n currency,\n currency_display,\n currency_position,\n omit_currency_sign: this.state.omitCurrencySign,\n compact,\n ban,\n nin,\n phone,\n org,\n percent,\n decimals,\n omit_rounding: isTrue(omit_rounding),\n options,\n clean: isTrue(clean),\n clean_copy_value: isTrue(clean_copy_value),\n returnAria: true,\n }\n\n // use only the props from context, who are available here anyway\n const useContext = extend(\n true,\n { locale: null, currency: null },\n this.context\n )\n\n if (useContext) {\n if (useContext.locale && !locale) {\n formatOptions.locale = useContext.locale\n }\n\n // only replace if the prop is \"true\" and not actually a currency\n if (useContext.currency && isTrue(currency)) {\n formatOptions.options = formatOptions.options\n ? { ...formatOptions.options }\n : {}\n formatOptions.options.currency = useContext.currency\n }\n }\n\n let {\n cleanedValue,\n number: display,\n aria,\n locale: lang,\n } = format(value, formatOptions)\n this.cleanedValue = cleanedValue\n\n if (tooltip) {\n rest = injectTooltipSemantic(rest)\n }\n\n const attributes = {\n ref: this._ref,\n className: classnames(\n 'dnb-number-format',\n className,\n _className,\n (isTrue(currency) || typeof currency === 'string') &&\n 'dnb-number-format--currency',\n isTrue(selectall) && 'dnb-number-format--selectall',\n this.state.selected && 'dnb-number-format--selected',\n link && 'dnb-anchor',\n createSpacingClasses(this.props)\n ),\n ...rest,\n }\n\n /**\n * Works in VoiceOver and NVDA\n * Makes the span with it's roles etc. appear as text.\n * Special useful if a number is in side e.g. a paragraph alongside with numbers\n */\n attributes['role'] = 'text' // role=\"text\"\n\n const displayParams = {}\n if (isTrue(selectall) || isTrue(copy_selection)) {\n displayParams.onClick = this.onClickHandler\n displayParams.onContextMenu = this.onContextMenuHandler\n }\n\n validateDOMAttributes(this.props, attributes)\n skeletonDOMAttributes(attributes, skeleton, this.context)\n\n if (prefix) {\n display = (\n <>\n {this.runFix(prefix, 'dnb-number-format__prefix')} {display}\n </>\n )\n aria = String(\n `${convertJsxToString(\n this.runFix(prefix, 'dnb-number-format__prefix')\n )} ${aria}`\n )\n }\n if (suffix) {\n display = (\n <>\n {display} {this.runFix(suffix, 'dnb-number-format__suffix')}\n </>\n )\n aria = `${aria} ${convertJsxToString(\n this.runFix(suffix, 'dnb-number-format__suffix')\n )}`\n }\n\n if (link) {\n if (isTrue(link)) {\n link = 'tel'\n }\n return (\n <a href={`${link}:${display}`} {...attributes}>\n {display}\n </a>\n )\n }\n\n const Element = element\n\n /**\n * This approach is most NVDA friendly, and we used it now also for mac,\n * because if the consistency and SSR JAM Stack build\n */\n return (\n <Element lang={lang} {...attributes}>\n {srLabel && (\n <span className=\"dnb-sr-only\" data-text={srLabel + ' '} />\n )}\n\n <span\n className={classnames(\n 'dnb-number-format__visible',\n createSkeletonClass('font', skeleton, this.context)\n )}\n aria-describedby={this._id}\n aria-hidden\n {...displayParams}\n >\n {display}\n </span>\n\n <span\n id={this._id}\n className=\"dnb-number-format__sr-only dnb-sr-only\"\n data-text={aria}\n />\n\n {isTrue(copy_selection) && (\n <span\n className=\"dnb-number-format__selection dnb-no-focus\"\n ref={this._selectionRef}\n tabIndex={-1}\n onBlur={this.onBlurHandler}\n onCopy={this.shortcutHandler}\n aria-hidden\n >\n {this.state.selected && cleanedValue}\n </span>\n )}\n\n {tooltip && (\n <Tooltip\n id={this._id + '-tooltip'}\n targetElement={this._ref}\n tooltip={tooltip}\n />\n )}\n </Element>\n )\n }\n}\n\nlet hasiOSFix = false\n\nNumberFormat._supportsSpacingProps = true\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NumberFormat.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_Context","_componentHelper","_helpers","_SpacingHelper","_SkeletonHelper","_Tooltip","_interopRequireWildcard","_NumberUtils","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","NumberFormat","React","PureComponent","constructor","props","_this$context$getTran","_this$context$getTran2","showSelectionNotice","cleanedValue","label","context","getTranslation","clipboard_copy","run","_ref","current","setState","selected","hasSelectedText","clearTimeout","_selectAllTimeout","setTimeout","setFocus","isTrue","always_selectall","createRef","_selectionRef","_id","id","makeUniqueId","state","omitCurrencySign","componentDidMount","IS_IOS","hasiOSFix","runIOSSelectionFix","componentWillUnmount","_this$outsideClick","outsideClick","remove","_this$_selectionRef$c","focus","selectAll","copy_selection","detectOutsideClick","onBlurHandler","elem","selection","window","getSelection","range","document","createRange","selectNodeContents","removeAllRanges","addRange","e","warn","runFix","comp","className","isValidElement","cloneElement","classnames","createElement","render","extendPropsWithContextInClassComponent","defaultProps","_value","prefix","suffix","children","currency","currency_display","currency_position","compact","ban","nin","phone","org","percent","link","_link","tooltip","skeleton","options","locale","decimals","omit_rounding","clean","selectall","clean_copy_value","srLabel","element","class","_className","_rest","rest","formatOptions","omit_currency_sign","returnAria","useContext","extend","number","display","aria","lang","format","injectTooltipSemantic","attributes","ref","createSpacingClasses","displayParams","onClick","onClickHandler","onContextMenu","onContextMenuHandler","validateDOMAttributes","skeletonDOMAttributes","Fragment","convertJsxToString","href","Element","createSkeletonClass","tabIndex","onBlur","onCopy","shortcutHandler","targetElement","exports","Context","process","env","NODE_ENV","propTypes","PropTypes","string","oneOfType","node","func","bool","oneOf","spacingPropTypes","_supportsSpacingProps"],"sources":["../../../../src/components/number-format/NumberFormat.js"],"sourcesContent":["/**\n * Web NumberFormat Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport Context from '../../shared/Context'\nimport {\n warn,\n isTrue,\n makeUniqueId,\n validateDOMAttributes,\n convertJsxToString,\n extendPropsWithContextInClassComponent,\n extend,\n detectOutsideClick,\n} from '../../shared/component-helper'\nimport { hasSelectedText, IS_IOS } from '../../shared/helpers'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\nimport Tooltip, { injectTooltipSemantic } from '../tooltip/Tooltip'\nimport {\n format,\n showSelectionNotice,\n runIOSSelectionFix,\n} from './NumberUtils'\n\nexport default class NumberFormat extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n id: PropTypes.string,\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n locale: PropTypes.string,\n prefix: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n suffix: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n // currency\n currency: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n currency_display: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.oneOf(['code', 'name', 'symbol', 'narrowSymbol', '']),\n ]),\n currency_position: PropTypes.oneOf(['auto', 'before', 'after']),\n\n // shortens any number or currency including an abbreviation\n compact: PropTypes.oneOfType([\n PropTypes.oneOf(['short', 'long']),\n PropTypes.bool,\n ]),\n\n // bank account number\n ban: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // national identification number\n nin: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // phone number\n phone: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // organization number\n org: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // percentage\n percent: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n // can be tel or sms\n link: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n options: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n decimals: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n selectall: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n always_selectall: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n copy_selection: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n clean_copy_value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n omit_rounding: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n clean: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n srLabel: PropTypes.node,\n element: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n tooltip: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n\n ...spacingPropTypes,\n\n class: PropTypes.string,\n className: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n }\n static defaultProps = {\n id: null,\n value: null,\n locale: null,\n prefix: null,\n suffix: null,\n currency: null,\n currency_display: null, // code, name, symbol\n currency_position: null, // null, before, after\n compact: null,\n ban: null,\n nin: null,\n phone: null,\n org: null,\n percent: null,\n link: null,\n options: null,\n decimals: null,\n selectall: true,\n always_selectall: false,\n copy_selection: true,\n clean_copy_value: false,\n omit_rounding: null,\n clean: null,\n srLabel: null,\n element: 'span', // span or abbr\n tooltip: null,\n skeleton: null,\n class: null,\n\n className: null,\n children: null,\n }\n\n constructor(props) {\n super(props)\n this._ref = React.createRef()\n this._selectionRef = React.createRef()\n\n this._id = props.id || makeUniqueId()\n this.state = { selected: false, omitCurrencySign: false }\n }\n\n componentDidMount() {\n clearTimeout(this._selectAllTimeout)\n\n // NB: This hack may be removed in future iOS versions\n // in order that iOS v13 can select something on the first try, we run this add range trick\n if (IS_IOS && !hasiOSFix) {\n hasiOSFix = true\n runIOSSelectionFix()\n }\n }\n\n shortcutHandler = () => {\n showSelectionNotice({\n value: this.cleanedValue,\n label: this.context.getTranslation(this.props)?.NumberFormat\n ?.clipboard_copy,\n }).run(this._ref.current)\n }\n\n onBlurHandler = () => {\n this.setState({ selected: false })\n }\n\n onContextMenuHandler = () => {\n if (!hasSelectedText()) {\n clearTimeout(this._selectAllTimeout)\n this._selectAllTimeout = setTimeout(() => {\n this.setFocus()\n }, 1)\n }\n }\n\n onClickHandler = () => {\n if (!hasSelectedText() || isTrue(this.props.always_selectall)) {\n this.setFocus()\n }\n }\n\n componentWillUnmount() {\n this.outsideClick?.remove()\n }\n\n setFocus() {\n this.setState({ selected: true }, () => {\n this._selectionRef.current?.focus()\n this.selectAll()\n\n if (!isTrue(this.props.copy_selection)) {\n this.outsideClick = detectOutsideClick(\n this._ref.current,\n this.onBlurHandler\n )\n }\n })\n }\n\n selectAll() {\n try {\n const elem = this._selectionRef.current || this._ref.current\n if (elem) {\n const selection = window.getSelection()\n const range = document.createRange()\n range.selectNodeContents(elem)\n selection.removeAllRanges()\n selection.addRange(range)\n }\n } catch (e) {\n warn(e)\n }\n }\n\n runFix(comp, className) {\n if (typeof comp === 'function') {\n comp = comp()\n }\n if (React.isValidElement(comp)) {\n return React.cloneElement(comp, {\n className: classnames(comp.props.className, className),\n })\n }\n return <span className={className}>{comp}</span>\n }\n\n render() {\n // consume the global context\n const props = extendPropsWithContextInClassComponent(\n this.props,\n NumberFormat.defaultProps,\n this.context.getTranslation(this.props).NumberFormat,\n this.context.NumberFormat\n )\n\n const {\n id, // eslint-disable-line\n value: _value,\n prefix,\n suffix,\n children,\n currency,\n currency_display,\n currency_position,\n compact,\n ban,\n nin,\n phone,\n org,\n percent,\n link: _link,\n tooltip,\n skeleton,\n options,\n locale,\n decimals,\n omit_rounding,\n clean,\n selectall,\n copy_selection,\n clean_copy_value,\n srLabel,\n element,\n class: _className,\n className,\n ..._rest\n } = props\n let rest = _rest\n\n let link = _link\n let value = _value\n\n if (value === null && children !== null) {\n value = children\n }\n\n const formatOptions = {\n locale,\n currency,\n currency_display,\n currency_position,\n omit_currency_sign: this.state.omitCurrencySign,\n compact,\n ban,\n nin,\n phone,\n org,\n percent,\n decimals,\n omit_rounding: isTrue(omit_rounding),\n options,\n clean: isTrue(clean),\n clean_copy_value: isTrue(clean_copy_value),\n returnAria: true,\n }\n\n // use only the props from context, who are available here anyway\n const useContext = extend(\n true,\n { locale: null, currency: null },\n this.context\n )\n\n if (useContext) {\n if (useContext.locale && !locale) {\n formatOptions.locale = useContext.locale\n }\n\n // only replace if the prop is \"true\" and not actually a currency\n if (useContext.currency && isTrue(currency)) {\n formatOptions.options = formatOptions.options\n ? { ...formatOptions.options }\n : {}\n formatOptions.options.currency = useContext.currency\n }\n }\n\n let {\n cleanedValue,\n number: display,\n aria,\n locale: lang,\n } = format(value, formatOptions)\n this.cleanedValue = cleanedValue\n\n if (tooltip) {\n rest = injectTooltipSemantic(rest)\n }\n\n const attributes = {\n ref: this._ref,\n className: classnames(\n 'dnb-number-format',\n className,\n _className,\n (isTrue(currency) || typeof currency === 'string') &&\n 'dnb-number-format--currency',\n isTrue(selectall) && 'dnb-number-format--selectall',\n this.state.selected && 'dnb-number-format--selected',\n link && 'dnb-anchor',\n createSpacingClasses(this.props)\n ),\n ...rest,\n }\n\n /**\n * Works in VoiceOver and NVDA\n * Makes the span with it's roles etc. appear as text.\n * Special useful if a number is in side e.g. a paragraph alongside with numbers\n */\n attributes['role'] = 'text' // role=\"text\"\n\n const displayParams = {}\n if (isTrue(selectall) || isTrue(copy_selection)) {\n displayParams.onClick = this.onClickHandler\n displayParams.onContextMenu = this.onContextMenuHandler\n }\n\n validateDOMAttributes(this.props, attributes)\n skeletonDOMAttributes(attributes, skeleton, this.context)\n\n if (prefix) {\n display = (\n <>\n {this.runFix(prefix, 'dnb-number-format__prefix')} {display}\n </>\n )\n aria = String(\n `${convertJsxToString(\n this.runFix(prefix, 'dnb-number-format__prefix')\n )} ${aria}`\n )\n }\n if (suffix) {\n display = (\n <>\n {display} {this.runFix(suffix, 'dnb-number-format__suffix')}\n </>\n )\n aria = `${aria} ${convertJsxToString(\n this.runFix(suffix, 'dnb-number-format__suffix')\n )}`\n }\n\n if (link) {\n if (isTrue(link)) {\n link = 'tel'\n }\n return (\n <a href={`${link}:${display}`} {...attributes}>\n {display}\n </a>\n )\n }\n\n const Element = element\n\n /**\n * This approach is most NVDA friendly, and we used it now also for mac,\n * because if the consistency and SSR JAM Stack build\n */\n return (\n <Element lang={lang} {...attributes}>\n {srLabel && (\n <span className=\"dnb-sr-only\" data-text={srLabel + ' '} />\n )}\n\n <span\n className={classnames(\n 'dnb-number-format__visible',\n createSkeletonClass('font', skeleton, this.context)\n )}\n aria-describedby={this._id}\n aria-hidden\n {...displayParams}\n >\n {display}\n </span>\n\n <span\n id={this._id}\n className=\"dnb-number-format__sr-only dnb-sr-only\"\n data-text={aria}\n />\n\n {isTrue(copy_selection) && (\n <span\n className=\"dnb-number-format__selection dnb-no-focus\"\n ref={this._selectionRef}\n tabIndex={-1}\n onBlur={this.onBlurHandler}\n onCopy={this.shortcutHandler}\n aria-hidden\n >\n {this.state.selected && cleanedValue}\n </span>\n )}\n\n {tooltip && (\n <Tooltip\n id={this._id + '-tooltip'}\n targetElement={this._ref}\n tooltip={tooltip}\n />\n )}\n </Element>\n )\n }\n}\n\nlet hasiOSFix = false\n\nNumberFormat._supportsSpacingProps = true\n"],"mappings":"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"}
|