@dnb/eufemia 10.28.0 → 10.30.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 +45 -0
- package/cjs/components/aria-live/useAriaLive.d.ts +1 -1
- package/cjs/components/autocomplete/Autocomplete.d.ts +19 -5
- package/cjs/components/dropdown/Dropdown.d.ts +22 -5
- package/cjs/components/height-animation/HeightAnimationInstance.js +5 -0
- package/cjs/components/height-animation/HeightAnimationInstance.js.map +1 -1
- package/cjs/components/icon/style/dnb-icon.css +1 -0
- package/cjs/components/icon/style/dnb-icon.min.css +1 -1
- package/cjs/components/icon/style/dnb-icon.scss +1 -0
- package/cjs/components/progress-indicator/ProgressIndicator.d.ts +2 -52
- package/cjs/components/progress-indicator/ProgressIndicator.js +27 -14
- package/cjs/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/cjs/components/progress-indicator/ProgressIndicatorCircular.d.ts +2 -23
- package/cjs/components/progress-indicator/ProgressIndicatorCircular.js +63 -27
- package/cjs/components/progress-indicator/ProgressIndicatorCircular.js.map +1 -1
- package/cjs/components/progress-indicator/ProgressIndicatorDocs.d.ts +1 -0
- package/cjs/components/progress-indicator/ProgressIndicatorDocs.js +45 -11
- package/cjs/components/progress-indicator/ProgressIndicatorDocs.js.map +1 -1
- package/cjs/components/progress-indicator/ProgressIndicatorLinear.d.ts +2 -22
- package/cjs/components/progress-indicator/ProgressIndicatorLinear.js +18 -10
- package/cjs/components/progress-indicator/ProgressIndicatorLinear.js.map +1 -1
- package/cjs/components/progress-indicator/style/dnb-progress-indicator.css +52 -55
- package/cjs/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
- package/cjs/components/progress-indicator/style/dnb-progress-indicator.scss +65 -69
- package/cjs/components/progress-indicator/types.d.ts +95 -0
- package/cjs/components/progress-indicator/types.js +11 -0
- package/cjs/components/progress-indicator/types.js.map +1 -0
- package/cjs/extensions/forms/DataContext/Context.d.ts +7 -2
- package/cjs/extensions/forms/DataContext/Context.js +0 -2
- package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +30 -5
- package/cjs/extensions/forms/DataContext/Provider/Provider.js +69 -35
- package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js +27 -2
- package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +5 -2
- package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
- package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +5 -2
- package/cjs/extensions/forms/Field/Name/Name.d.ts +10 -0
- package/cjs/extensions/forms/Field/Name/Name.js +73 -0
- package/cjs/extensions/forms/Field/Name/Name.js.map +1 -0
- package/cjs/extensions/forms/Field/Name/NameDocs.d.ts +2 -0
- package/cjs/extensions/forms/Field/Name/NameDocs.js +15 -0
- package/cjs/extensions/forms/Field/Name/NameDocs.js.map +1 -0
- package/cjs/extensions/forms/Field/Name/index.d.ts +2 -0
- package/cjs/extensions/forms/Field/Name/index.js +27 -0
- package/cjs/extensions/forms/Field/Name/index.js.map +1 -0
- package/cjs/extensions/forms/Field/Number/Number.d.ts +2 -2
- package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
- package/cjs/extensions/forms/Field/Option/Option.d.ts +2 -0
- package/cjs/extensions/forms/Field/Option/Option.js +21 -0
- package/cjs/extensions/forms/Field/Option/Option.js.map +1 -1
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +25 -0
- package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -2
- package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/Selection.d.ts +11 -4
- package/cjs/extensions/forms/Field/Selection/Selection.js +20 -32
- package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/cjs/extensions/forms/Field/Selection/SelectionDocs.d.ts +2 -0
- package/cjs/extensions/forms/Field/Selection/SelectionDocs.js +45 -0
- package/cjs/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -0
- package/cjs/extensions/forms/Field/String/String.d.ts +2 -2
- package/cjs/extensions/forms/Field/String/String.js.map +1 -1
- package/cjs/extensions/forms/Field/index.d.ts +1 -0
- package/cjs/extensions/forms/Field/index.js +7 -0
- package/cjs/extensions/forms/Field/index.js.map +1 -1
- package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -3
- package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/cjs/extensions/forms/Form/FieldProps/FieldProps.d.ts +13 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldProps.js +80 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +8 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.js +15 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts +2 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsDocs.js +18 -0
- package/cjs/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +1 -0
- package/cjs/extensions/forms/Form/FieldProps/index.d.ts +2 -0
- package/cjs/extensions/forms/Form/FieldProps/index.js +27 -0
- package/cjs/extensions/forms/Form/FieldProps/index.js.map +1 -0
- package/cjs/extensions/forms/Form/Handler/Handler.d.ts +1 -1
- package/cjs/extensions/forms/Form/Handler/Handler.js +18 -4
- package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/cjs/extensions/forms/Form/MainHeading/MainHeading.js +1 -1
- package/cjs/extensions/forms/Form/MainHeading/MainHeading.js.map +1 -1
- package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +3 -3
- package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
- package/cjs/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.scss +1 -1
- package/cjs/extensions/forms/Form/SubHeading/SubHeading.js +1 -1
- package/cjs/extensions/forms/Form/SubHeading/SubHeading.js.map +1 -1
- package/cjs/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.css +2 -2
- package/cjs/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.min.css +1 -1
- package/cjs/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.scss +1 -1
- package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +2 -2
- package/cjs/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -1
- package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +13 -13
- package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -1
- package/cjs/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +1 -1
- package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +4 -1
- package/cjs/extensions/forms/Form/Visibility/Visibility.js +7 -4
- package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js +5 -0
- package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
- package/cjs/extensions/forms/Form/index.d.ts +1 -0
- package/cjs/extensions/forms/Form/index.js +7 -0
- package/cjs/extensions/forms/Form/index.js.map +1 -1
- package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +4 -4
- package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.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/EditContainer/EditContainer.js +1 -1
- package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
- package/cjs/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
- package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
- package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
- package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js +1 -1
- package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.css +14 -14
- package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
- package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.scss +1 -1
- package/cjs/extensions/forms/Value/Boolean/Boolean.js +8 -3
- package/cjs/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
- package/cjs/extensions/forms/Value/Name/Name.d.ts +10 -0
- package/cjs/extensions/forms/Value/Name/Name.js +50 -0
- package/cjs/extensions/forms/Value/Name/Name.js.map +1 -0
- package/cjs/extensions/forms/Value/Name/index.d.ts +2 -0
- package/cjs/extensions/forms/Value/Name/index.js +27 -0
- package/cjs/extensions/forms/Value/Name/index.js.map +1 -0
- package/cjs/extensions/forms/Value/OrganizationNumber/OrganizationNumber.d.ts +7 -0
- package/cjs/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js +36 -0
- package/cjs/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js.map +1 -0
- package/cjs/extensions/forms/Value/OrganizationNumber/index.d.ts +2 -0
- package/cjs/extensions/forms/Value/OrganizationNumber/index.js +27 -0
- package/cjs/extensions/forms/Value/OrganizationNumber/index.js.map +1 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.d.ts +7 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +41 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js +20 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/index.d.ts +2 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/index.js +27 -0
- package/cjs/extensions/forms/Value/PostalCodeAndCity/index.js.map +1 -0
- package/cjs/extensions/forms/Value/String/String.js +8 -3
- package/cjs/extensions/forms/Value/String/String.js.map +1 -1
- package/cjs/extensions/forms/Value/SummaryList/SummaryList.js +1 -1
- package/cjs/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
- package/cjs/extensions/forms/Value/ValueDocs.js +6 -1
- package/cjs/extensions/forms/Value/ValueDocs.js.map +1 -1
- package/cjs/extensions/forms/Value/index.d.ts +3 -0
- package/cjs/extensions/forms/Value/index.js +21 -0
- package/cjs/extensions/forms/Value/index.js.map +1 -1
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js +2 -1
- package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +11 -6
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.scss +11 -3
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +17 -52
- package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +9 -0
- package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +53 -0
- package/cjs/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -0
- package/cjs/extensions/forms/Wizard/Container/useStepAnimation.d.ts +4 -0
- package/cjs/extensions/forms/Wizard/Container/useStepAnimation.js +37 -0
- package/cjs/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -0
- package/cjs/extensions/forms/Wizard/Step/Step.js +13 -1
- package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/cjs/extensions/forms/Wizard/hooks/useStep.js +5 -2
- package/cjs/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.css +29 -2
- package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
- package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.scss +35 -2
- package/cjs/extensions/forms/constants/locales/en-GB.d.ts +9 -0
- package/cjs/extensions/forms/constants/locales/en-GB.js +12 -3
- package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/cjs/extensions/forms/constants/locales/en-US.d.ts +9 -0
- package/cjs/extensions/forms/constants/locales/index.d.ts +18 -0
- package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +9 -0
- package/cjs/extensions/forms/constants/locales/nb-NO.js +11 -2
- package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/cjs/extensions/forms/hooks/useFieldProps.js +8 -4
- package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/cjs/extensions/forms/hooks/useTranslation.js +3 -1
- package/cjs/extensions/forms/hooks/useTranslation.js.map +1 -1
- package/cjs/extensions/forms/style/dnb-forms.css +77 -43
- package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
- package/cjs/extensions/forms/types.d.ts +3 -2
- package/cjs/extensions/forms/types.js.map +1 -1
- package/cjs/fragments/drawer-list/DrawerList.d.ts +8 -4
- package/cjs/shared/Context.d.ts +4 -4
- package/cjs/shared/Context.js.map +1 -1
- package/cjs/shared/Eufemia.d.ts +1 -1
- package/cjs/shared/Eufemia.js +2 -2
- package/cjs/shared/Eufemia.js.map +1 -1
- package/cjs/shared/component-helper.d.ts +1 -0
- package/cjs/shared/component-helper.js +8 -1
- package/cjs/shared/component-helper.js.map +1 -1
- package/cjs/shared/helpers/assignPropsWithContext.d.ts +1 -0
- package/cjs/shared/helpers/assignPropsWithContext.js +22 -0
- package/cjs/shared/helpers/assignPropsWithContext.js.map +1 -0
- package/cjs/shared/helpers/extendPropsWithContext.d.ts +1 -0
- package/cjs/shared/helpers/extendPropsWithContext.js +1 -0
- package/cjs/shared/helpers/extendPropsWithContext.js.map +1 -1
- package/cjs/shared/helpers/filterValidProps.d.ts +1 -0
- package/cjs/shared/helpers/filterValidProps.js.map +1 -1
- package/cjs/shared/helpers/runCssVersionMismatchWarning.js +14 -3
- package/cjs/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
- package/cjs/style/core/scopes.scss +1 -1
- package/cjs/style/dnb-ui-basis.css +1 -1
- package/cjs/style/dnb-ui-basis.min.css +1 -1
- package/cjs/style/dnb-ui-body.css +1 -1
- package/cjs/style/dnb-ui-body.min.css +1 -1
- package/cjs/style/dnb-ui-components.css +129 -98
- package/cjs/style/dnb-ui-components.min.css +2 -2
- package/cjs/style/dnb-ui-core.css +1 -1
- package/cjs/style/dnb-ui-core.min.css +1 -1
- package/cjs/style/dnb-ui-extensions.css +77 -43
- package/cjs/style/dnb-ui-extensions.min.css +1 -1
- package/cjs/style/dnb-ui-forms.css +77 -43
- package/cjs/style/dnb-ui-forms.min.css +1 -1
- package/cjs/style/dnb-ui-forms.scss +1 -1
- package/cjs/style/themes/eiendom/basis.js +4 -0
- package/cjs/style/themes/eiendom/basis.js.map +1 -0
- package/cjs/style/themes/eiendom/index.js +5 -0
- package/cjs/style/themes/eiendom/index.js.map +1 -0
- package/cjs/style/themes/sbanken/basis.js +4 -0
- package/cjs/style/themes/sbanken/basis.js.map +1 -0
- package/cjs/style/themes/sbanken/index.js +5 -0
- package/cjs/style/themes/sbanken/index.js.map +1 -0
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +205 -141
- package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +77 -43
- package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +77 -43
- package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +205 -141
- package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +77 -43
- package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +77 -43
- package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-components.css +205 -141
- package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/cjs/style/themes/theme-ui/ui-theme-extensions.css +77 -43
- package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/cjs/style/themes/theme-ui/ui-theme-forms.css +77 -43
- package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/cjs/style/themes/ui/basis.js +4 -0
- package/cjs/style/themes/ui/basis.js.map +1 -0
- package/cjs/style/themes/ui/index.js +5 -0
- package/cjs/style/themes/ui/index.js.map +1 -0
- package/components/aria-live/useAriaLive.d.ts +1 -1
- package/components/autocomplete/Autocomplete.d.ts +19 -5
- package/components/dropdown/Dropdown.d.ts +22 -5
- package/components/height-animation/HeightAnimationInstance.js +5 -0
- package/components/height-animation/HeightAnimationInstance.js.map +1 -1
- package/components/icon/style/dnb-icon.css +1 -0
- package/components/icon/style/dnb-icon.min.css +1 -1
- package/components/icon/style/dnb-icon.scss +1 -0
- package/components/progress-indicator/ProgressIndicator.d.ts +2 -52
- package/components/progress-indicator/ProgressIndicator.js +27 -14
- package/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/components/progress-indicator/ProgressIndicatorCircular.d.ts +2 -23
- package/components/progress-indicator/ProgressIndicatorCircular.js +63 -27
- package/components/progress-indicator/ProgressIndicatorCircular.js.map +1 -1
- package/components/progress-indicator/ProgressIndicatorDocs.d.ts +1 -0
- package/components/progress-indicator/ProgressIndicatorDocs.js +43 -10
- package/components/progress-indicator/ProgressIndicatorDocs.js.map +1 -1
- package/components/progress-indicator/ProgressIndicatorLinear.d.ts +2 -22
- package/components/progress-indicator/ProgressIndicatorLinear.js +18 -10
- package/components/progress-indicator/ProgressIndicatorLinear.js.map +1 -1
- package/components/progress-indicator/style/dnb-progress-indicator.css +52 -55
- package/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
- package/components/progress-indicator/style/dnb-progress-indicator.scss +65 -69
- package/components/progress-indicator/types.d.ts +95 -0
- package/components/progress-indicator/types.js +5 -0
- package/components/progress-indicator/types.js.map +1 -0
- package/es/components/aria-live/useAriaLive.d.ts +1 -1
- package/es/components/autocomplete/Autocomplete.d.ts +19 -5
- package/es/components/dropdown/Dropdown.d.ts +22 -5
- package/es/components/height-animation/HeightAnimationInstance.js +5 -0
- package/es/components/height-animation/HeightAnimationInstance.js.map +1 -1
- package/es/components/icon/style/dnb-icon.css +1 -0
- package/es/components/icon/style/dnb-icon.min.css +1 -1
- package/es/components/icon/style/dnb-icon.scss +1 -0
- package/es/components/progress-indicator/ProgressIndicator.d.ts +2 -52
- package/es/components/progress-indicator/ProgressIndicator.js +27 -14
- package/es/components/progress-indicator/ProgressIndicator.js.map +1 -1
- package/es/components/progress-indicator/ProgressIndicatorCircular.d.ts +2 -23
- package/es/components/progress-indicator/ProgressIndicatorCircular.js +62 -27
- package/es/components/progress-indicator/ProgressIndicatorCircular.js.map +1 -1
- package/es/components/progress-indicator/ProgressIndicatorDocs.d.ts +1 -0
- package/es/components/progress-indicator/ProgressIndicatorDocs.js +43 -10
- package/es/components/progress-indicator/ProgressIndicatorDocs.js.map +1 -1
- package/es/components/progress-indicator/ProgressIndicatorLinear.d.ts +2 -22
- package/es/components/progress-indicator/ProgressIndicatorLinear.js +18 -10
- package/es/components/progress-indicator/ProgressIndicatorLinear.js.map +1 -1
- package/es/components/progress-indicator/style/dnb-progress-indicator.css +52 -55
- package/es/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
- package/es/components/progress-indicator/style/dnb-progress-indicator.scss +65 -69
- package/es/components/progress-indicator/types.d.ts +95 -0
- package/es/components/progress-indicator/types.js +5 -0
- package/es/components/progress-indicator/types.js.map +1 -0
- package/es/extensions/forms/DataContext/Context.d.ts +7 -2
- package/es/extensions/forms/DataContext/Context.js +0 -2
- package/es/extensions/forms/DataContext/Context.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/Provider.d.ts +30 -5
- package/es/extensions/forms/DataContext/Provider/Provider.js +67 -34
- package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/es/extensions/forms/DataContext/Provider/ProviderDocs.js +27 -2
- package/es/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -1
- package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +5 -2
- package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
- package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +5 -2
- package/es/extensions/forms/Field/Name/Name.d.ts +10 -0
- package/es/extensions/forms/Field/Name/Name.js +63 -0
- package/es/extensions/forms/Field/Name/Name.js.map +1 -0
- package/es/extensions/forms/Field/Name/NameDocs.d.ts +2 -0
- package/es/extensions/forms/Field/Name/NameDocs.js +8 -0
- package/es/extensions/forms/Field/Name/NameDocs.js.map +1 -0
- package/es/extensions/forms/Field/Name/index.d.ts +2 -0
- package/es/extensions/forms/Field/Name/index.js +3 -0
- package/es/extensions/forms/Field/Name/index.js.map +1 -0
- package/es/extensions/forms/Field/Number/Number.d.ts +2 -2
- package/es/extensions/forms/Field/Number/Number.js.map +1 -1
- package/es/extensions/forms/Field/Option/Option.d.ts +2 -0
- package/es/extensions/forms/Field/Option/Option.js +20 -0
- package/es/extensions/forms/Field/Option/Option.js.map +1 -1
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +18 -0
- package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -2
- package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/es/extensions/forms/Field/Selection/Selection.d.ts +11 -4
- package/es/extensions/forms/Field/Selection/Selection.js +20 -32
- package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/es/extensions/forms/Field/Selection/SelectionDocs.d.ts +2 -0
- package/es/extensions/forms/Field/Selection/SelectionDocs.js +38 -0
- package/es/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -0
- package/es/extensions/forms/Field/String/String.d.ts +2 -2
- package/es/extensions/forms/Field/String/String.js.map +1 -1
- package/es/extensions/forms/Field/index.d.ts +1 -0
- package/es/extensions/forms/Field/index.js +1 -0
- package/es/extensions/forms/Field/index.js.map +1 -1
- package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -3
- package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/es/extensions/forms/Form/FieldProps/FieldProps.d.ts +13 -0
- package/es/extensions/forms/Form/FieldProps/FieldProps.js +71 -0
- package/es/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -0
- package/es/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +8 -0
- package/es/extensions/forms/Form/FieldProps/FieldPropsContext.js +7 -0
- package/es/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -0
- package/es/extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts +2 -0
- package/es/extensions/forms/Form/FieldProps/FieldPropsDocs.js +11 -0
- package/es/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +1 -0
- package/es/extensions/forms/Form/FieldProps/index.d.ts +2 -0
- package/es/extensions/forms/Form/FieldProps/index.js +3 -0
- package/es/extensions/forms/Form/FieldProps/index.js.map +1 -0
- package/es/extensions/forms/Form/Handler/Handler.d.ts +1 -1
- package/es/extensions/forms/Form/Handler/Handler.js +18 -4
- package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/es/extensions/forms/Form/MainHeading/MainHeading.js +1 -1
- package/es/extensions/forms/Form/MainHeading/MainHeading.js.map +1 -1
- package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +3 -3
- package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
- package/es/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.scss +1 -1
- package/es/extensions/forms/Form/SubHeading/SubHeading.js +1 -1
- package/es/extensions/forms/Form/SubHeading/SubHeading.js.map +1 -1
- package/es/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.css +2 -2
- package/es/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.min.css +1 -1
- package/es/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.scss +1 -1
- package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +2 -2
- package/es/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -1
- package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +13 -13
- package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -1
- package/es/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +1 -1
- package/es/extensions/forms/Form/Visibility/Visibility.d.ts +4 -1
- package/es/extensions/forms/Form/Visibility/Visibility.js +7 -4
- package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/es/extensions/forms/Form/Visibility/VisibilityDocs.js +5 -0
- package/es/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
- package/es/extensions/forms/Form/index.d.ts +1 -0
- package/es/extensions/forms/Form/index.js +1 -0
- package/es/extensions/forms/Form/index.js.map +1 -1
- package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +4 -4
- package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.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/EditContainer/EditContainer.js +1 -1
- package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
- package/es/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
- package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
- package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
- package/es/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
- package/es/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js +1 -1
- package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/es/extensions/forms/Iterate/style/dnb-form-iterate.css +14 -14
- package/es/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
- package/es/extensions/forms/Iterate/style/dnb-form-iterate.scss +1 -1
- package/es/extensions/forms/Value/Boolean/Boolean.js +8 -3
- package/es/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
- package/es/extensions/forms/Value/Name/Name.d.ts +10 -0
- package/es/extensions/forms/Value/Name/Name.js +40 -0
- package/es/extensions/forms/Value/Name/Name.js.map +1 -0
- package/es/extensions/forms/Value/Name/index.d.ts +2 -0
- package/es/extensions/forms/Value/Name/index.js +3 -0
- package/es/extensions/forms/Value/Name/index.js.map +1 -0
- package/es/extensions/forms/Value/OrganizationNumber/OrganizationNumber.d.ts +7 -0
- package/es/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js +24 -0
- package/es/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js.map +1 -0
- package/es/extensions/forms/Value/OrganizationNumber/index.d.ts +2 -0
- package/es/extensions/forms/Value/OrganizationNumber/index.js +3 -0
- package/es/extensions/forms/Value/OrganizationNumber/index.js.map +1 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.d.ts +7 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +31 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js +13 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/index.d.ts +2 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/index.js +3 -0
- package/es/extensions/forms/Value/PostalCodeAndCity/index.js.map +1 -0
- package/es/extensions/forms/Value/String/String.js +8 -3
- package/es/extensions/forms/Value/String/String.js.map +1 -1
- package/es/extensions/forms/Value/SummaryList/SummaryList.js +1 -1
- package/es/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
- package/es/extensions/forms/Value/ValueDocs.js +6 -1
- package/es/extensions/forms/Value/ValueDocs.js.map +1 -1
- package/es/extensions/forms/Value/index.d.ts +3 -0
- package/es/extensions/forms/Value/index.js +3 -0
- package/es/extensions/forms/Value/index.js.map +1 -1
- package/es/extensions/forms/ValueBlock/ValueBlock.js +2 -1
- package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +11 -6
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/es/extensions/forms/ValueBlock/style/dnb-value-block.scss +11 -3
- package/es/extensions/forms/Wizard/Container/WizardContainer.js +17 -51
- package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +9 -0
- package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +46 -0
- package/es/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -0
- package/es/extensions/forms/Wizard/Container/useStepAnimation.d.ts +4 -0
- package/es/extensions/forms/Wizard/Container/useStepAnimation.js +29 -0
- package/es/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -0
- package/es/extensions/forms/Wizard/Step/Step.js +14 -2
- package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/es/extensions/forms/Wizard/hooks/useStep.js +3 -2
- package/es/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/es/extensions/forms/Wizard/style/dnb-wizard-layout.css +29 -2
- package/es/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
- package/es/extensions/forms/Wizard/style/dnb-wizard-layout.scss +35 -2
- package/es/extensions/forms/constants/locales/en-GB.d.ts +9 -0
- package/es/extensions/forms/constants/locales/en-GB.js +12 -3
- package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/es/extensions/forms/constants/locales/en-US.d.ts +9 -0
- package/es/extensions/forms/constants/locales/index.d.ts +18 -0
- package/es/extensions/forms/constants/locales/nb-NO.d.ts +9 -0
- package/es/extensions/forms/constants/locales/nb-NO.js +11 -2
- package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/es/extensions/forms/hooks/useFieldProps.js +8 -3
- package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/es/extensions/forms/hooks/useTranslation.js +3 -1
- package/es/extensions/forms/hooks/useTranslation.js.map +1 -1
- package/es/extensions/forms/style/dnb-forms.css +77 -43
- package/es/extensions/forms/style/dnb-forms.min.css +1 -1
- package/es/extensions/forms/types.d.ts +3 -2
- package/es/extensions/forms/types.js.map +1 -1
- package/es/fragments/drawer-list/DrawerList.d.ts +8 -4
- package/es/shared/Context.d.ts +4 -4
- package/es/shared/Context.js.map +1 -1
- package/es/shared/Eufemia.d.ts +1 -1
- package/es/shared/Eufemia.js +2 -2
- package/es/shared/Eufemia.js.map +1 -1
- package/es/shared/component-helper.d.ts +1 -0
- package/es/shared/component-helper.js +2 -1
- package/es/shared/component-helper.js.map +1 -1
- package/es/shared/helpers/assignPropsWithContext.d.ts +1 -0
- package/es/shared/helpers/assignPropsWithContext.js +12 -0
- package/es/shared/helpers/assignPropsWithContext.js.map +1 -0
- package/es/shared/helpers/extendPropsWithContext.d.ts +1 -0
- package/es/shared/helpers/extendPropsWithContext.js +1 -1
- package/es/shared/helpers/extendPropsWithContext.js.map +1 -1
- package/es/shared/helpers/filterValidProps.d.ts +1 -0
- package/es/shared/helpers/filterValidProps.js.map +1 -1
- package/es/shared/helpers/runCssVersionMismatchWarning.js +14 -3
- package/es/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
- package/es/style/core/scopes.scss +1 -1
- package/es/style/dnb-ui-basis.css +1 -1
- package/es/style/dnb-ui-basis.min.css +1 -1
- package/es/style/dnb-ui-body.css +1 -1
- package/es/style/dnb-ui-body.min.css +1 -1
- package/es/style/dnb-ui-components.css +129 -98
- package/es/style/dnb-ui-components.min.css +2 -2
- package/es/style/dnb-ui-core.css +1 -1
- package/es/style/dnb-ui-core.min.css +1 -1
- package/es/style/dnb-ui-extensions.css +77 -43
- package/es/style/dnb-ui-extensions.min.css +1 -1
- package/es/style/dnb-ui-forms.css +77 -43
- package/es/style/dnb-ui-forms.min.css +1 -1
- package/es/style/dnb-ui-forms.scss +1 -1
- package/es/style/themes/eiendom/basis.js +1 -0
- package/es/style/themes/eiendom/basis.js.map +1 -0
- package/es/style/themes/eiendom/index.js +3 -0
- package/es/style/themes/eiendom/index.js.map +1 -0
- package/es/style/themes/sbanken/basis.js +1 -0
- package/es/style/themes/sbanken/basis.js.map +1 -0
- package/es/style/themes/sbanken/index.d.ts +1 -0
- package/es/style/themes/sbanken/index.js +3 -0
- package/es/style/themes/sbanken/index.js.map +1 -0
- package/es/style/themes/theme-eiendom/eiendom-theme-components.css +205 -141
- package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +77 -43
- package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +77 -43
- package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-components.css +205 -141
- package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +77 -43
- package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +77 -43
- package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-components.css +205 -141
- package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/es/style/themes/theme-ui/ui-theme-extensions.css +77 -43
- package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/es/style/themes/theme-ui/ui-theme-forms.css +77 -43
- package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/es/style/themes/ui/basis.d.ts +1 -0
- package/es/style/themes/ui/basis.js +1 -0
- package/es/style/themes/ui/basis.js.map +1 -0
- package/es/style/themes/ui/index.d.ts +1 -0
- package/es/style/themes/ui/index.js +3 -0
- package/es/style/themes/ui/index.js.map +1 -0
- 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/Context.d.ts +7 -2
- package/extensions/forms/DataContext/Context.js +0 -2
- package/extensions/forms/DataContext/Context.js.map +1 -1
- package/extensions/forms/DataContext/Provider/Provider.d.ts +30 -5
- package/extensions/forms/DataContext/Provider/Provider.js +69 -35
- package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
- package/extensions/forms/DataContext/Provider/ProviderDocs.js +27 -2
- package/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
- package/extensions/forms/Field/ArraySelection/ArraySelection.js +1 -1
- package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
- package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +5 -2
- package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
- package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +5 -2
- package/extensions/forms/Field/Name/Name.d.ts +10 -0
- package/extensions/forms/Field/Name/Name.js +63 -0
- package/extensions/forms/Field/Name/Name.js.map +1 -0
- package/extensions/forms/Field/Name/NameDocs.d.ts +2 -0
- package/extensions/forms/Field/Name/NameDocs.js +8 -0
- package/extensions/forms/Field/Name/NameDocs.js.map +1 -0
- package/extensions/forms/Field/Name/index.d.ts +2 -0
- package/extensions/forms/Field/Name/index.js +3 -0
- package/extensions/forms/Field/Name/index.js.map +1 -0
- package/extensions/forms/Field/Number/Number.d.ts +2 -2
- package/extensions/forms/Field/Number/Number.js.map +1 -1
- package/extensions/forms/Field/Option/Option.d.ts +2 -0
- package/extensions/forms/Field/Option/Option.js +20 -0
- package/extensions/forms/Field/Option/Option.js.map +1 -1
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +18 -0
- package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
- package/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -2
- package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
- package/extensions/forms/Field/Selection/Selection.d.ts +11 -4
- package/extensions/forms/Field/Selection/Selection.js +20 -32
- package/extensions/forms/Field/Selection/Selection.js.map +1 -1
- package/extensions/forms/Field/Selection/SelectionDocs.d.ts +2 -0
- package/extensions/forms/Field/Selection/SelectionDocs.js +38 -0
- package/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -0
- package/extensions/forms/Field/String/String.d.ts +2 -2
- package/extensions/forms/Field/String/String.js.map +1 -1
- package/extensions/forms/Field/index.d.ts +1 -0
- package/extensions/forms/Field/index.js +1 -0
- package/extensions/forms/Field/index.js.map +1 -1
- package/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -3
- package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
- package/extensions/forms/Form/FieldProps/FieldProps.d.ts +13 -0
- package/extensions/forms/Form/FieldProps/FieldProps.js +71 -0
- package/extensions/forms/Form/FieldProps/FieldProps.js.map +1 -0
- package/extensions/forms/Form/FieldProps/FieldPropsContext.d.ts +8 -0
- package/extensions/forms/Form/FieldProps/FieldPropsContext.js +7 -0
- package/extensions/forms/Form/FieldProps/FieldPropsContext.js.map +1 -0
- package/extensions/forms/Form/FieldProps/FieldPropsDocs.d.ts +2 -0
- package/extensions/forms/Form/FieldProps/FieldPropsDocs.js +11 -0
- package/extensions/forms/Form/FieldProps/FieldPropsDocs.js.map +1 -0
- package/extensions/forms/Form/FieldProps/index.d.ts +2 -0
- package/extensions/forms/Form/FieldProps/index.js +3 -0
- package/extensions/forms/Form/FieldProps/index.js.map +1 -0
- package/extensions/forms/Form/Handler/Handler.d.ts +1 -1
- package/extensions/forms/Form/Handler/Handler.js +18 -4
- package/extensions/forms/Form/Handler/Handler.js.map +1 -1
- package/extensions/forms/Form/MainHeading/MainHeading.js +1 -1
- package/extensions/forms/Form/MainHeading/MainHeading.js.map +1 -1
- package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.css +3 -3
- package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.min.css +1 -1
- package/extensions/forms/Form/MainHeading/style/dnb-form-main-heading.scss +1 -1
- package/extensions/forms/Form/SubHeading/SubHeading.js +1 -1
- package/extensions/forms/Form/SubHeading/SubHeading.js.map +1 -1
- package/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.css +2 -2
- package/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.min.css +1 -1
- package/extensions/forms/Form/SubHeading/style/dnb-form-sub-heading.scss +1 -1
- package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js +2 -2
- package/extensions/forms/Form/SubmitIndicator/SubmitIndicator.js.map +1 -1
- package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.css +13 -13
- package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.min.css +1 -1
- package/extensions/forms/Form/SubmitIndicator/style/dnb-form-submit-indicator.scss +1 -1
- package/extensions/forms/Form/Visibility/Visibility.d.ts +4 -1
- package/extensions/forms/Form/Visibility/Visibility.js +7 -4
- package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
- package/extensions/forms/Form/Visibility/VisibilityDocs.js +5 -0
- package/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
- package/extensions/forms/Form/index.d.ts +1 -0
- package/extensions/forms/Form/index.js +1 -0
- package/extensions/forms/Form/index.js.map +1 -1
- package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +4 -4
- package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.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/EditContainer/EditContainer.js +1 -1
- package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
- package/extensions/forms/Iterate/PushButton/PushButton.js +1 -1
- package/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
- package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +1 -1
- package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
- package/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
- package/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
- package/extensions/forms/Iterate/ViewContainer/ViewContainer.js +1 -1
- package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
- package/extensions/forms/Iterate/style/dnb-form-iterate.css +14 -14
- package/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
- package/extensions/forms/Iterate/style/dnb-form-iterate.scss +1 -1
- package/extensions/forms/Value/Boolean/Boolean.js +8 -3
- package/extensions/forms/Value/Boolean/Boolean.js.map +1 -1
- package/extensions/forms/Value/Name/Name.d.ts +10 -0
- package/extensions/forms/Value/Name/Name.js +40 -0
- package/extensions/forms/Value/Name/Name.js.map +1 -0
- package/extensions/forms/Value/Name/index.d.ts +2 -0
- package/extensions/forms/Value/Name/index.js +3 -0
- package/extensions/forms/Value/Name/index.js.map +1 -0
- package/extensions/forms/Value/OrganizationNumber/OrganizationNumber.d.ts +7 -0
- package/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js +24 -0
- package/extensions/forms/Value/OrganizationNumber/OrganizationNumber.js.map +1 -0
- package/extensions/forms/Value/OrganizationNumber/index.d.ts +2 -0
- package/extensions/forms/Value/OrganizationNumber/index.js +3 -0
- package/extensions/forms/Value/OrganizationNumber/index.js.map +1 -0
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.d.ts +7 -0
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js +31 -0
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCity.js.map +1 -0
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.d.ts +2 -0
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js +13 -0
- package/extensions/forms/Value/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -0
- package/extensions/forms/Value/PostalCodeAndCity/index.d.ts +2 -0
- package/extensions/forms/Value/PostalCodeAndCity/index.js +3 -0
- package/extensions/forms/Value/PostalCodeAndCity/index.js.map +1 -0
- package/extensions/forms/Value/String/String.js +8 -3
- package/extensions/forms/Value/String/String.js.map +1 -1
- package/extensions/forms/Value/SummaryList/SummaryList.js +1 -1
- package/extensions/forms/Value/SummaryList/SummaryList.js.map +1 -1
- package/extensions/forms/Value/ValueDocs.js +6 -1
- package/extensions/forms/Value/ValueDocs.js.map +1 -1
- package/extensions/forms/Value/index.d.ts +3 -0
- package/extensions/forms/Value/index.js +3 -0
- package/extensions/forms/Value/index.js.map +1 -1
- package/extensions/forms/ValueBlock/ValueBlock.js +2 -1
- package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
- package/extensions/forms/ValueBlock/style/dnb-value-block.css +11 -6
- package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
- package/extensions/forms/ValueBlock/style/dnb-value-block.scss +11 -3
- package/extensions/forms/Wizard/Container/WizardContainer.js +17 -52
- package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
- package/extensions/forms/Wizard/Container/useHandleLayoutEffect.d.ts +9 -0
- package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js +47 -0
- package/extensions/forms/Wizard/Container/useHandleLayoutEffect.js.map +1 -0
- package/extensions/forms/Wizard/Container/useStepAnimation.d.ts +4 -0
- package/extensions/forms/Wizard/Container/useStepAnimation.js +30 -0
- package/extensions/forms/Wizard/Container/useStepAnimation.js.map +1 -0
- package/extensions/forms/Wizard/Step/Step.js +14 -2
- package/extensions/forms/Wizard/Step/Step.js.map +1 -1
- package/extensions/forms/Wizard/hooks/useStep.js +3 -2
- package/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
- package/extensions/forms/Wizard/style/dnb-wizard-layout.css +29 -2
- package/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
- package/extensions/forms/Wizard/style/dnb-wizard-layout.scss +35 -2
- package/extensions/forms/constants/locales/en-GB.d.ts +9 -0
- package/extensions/forms/constants/locales/en-GB.js +12 -3
- package/extensions/forms/constants/locales/en-GB.js.map +1 -1
- package/extensions/forms/constants/locales/en-US.d.ts +9 -0
- package/extensions/forms/constants/locales/index.d.ts +18 -0
- package/extensions/forms/constants/locales/nb-NO.d.ts +9 -0
- package/extensions/forms/constants/locales/nb-NO.js +11 -2
- package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
- package/extensions/forms/hooks/useFieldProps.js +8 -4
- package/extensions/forms/hooks/useFieldProps.js.map +1 -1
- package/extensions/forms/hooks/useTranslation.js +3 -1
- package/extensions/forms/hooks/useTranslation.js.map +1 -1
- package/extensions/forms/style/dnb-forms.css +77 -43
- package/extensions/forms/style/dnb-forms.min.css +1 -1
- package/extensions/forms/types.d.ts +3 -2
- package/extensions/forms/types.js.map +1 -1
- package/fragments/drawer-list/DrawerList.d.ts +8 -4
- package/package.json +1 -1
- package/shared/Context.d.ts +4 -4
- package/shared/Context.js.map +1 -1
- package/shared/Eufemia.d.ts +1 -1
- package/shared/Eufemia.js +2 -2
- package/shared/Eufemia.js.map +1 -1
- package/shared/component-helper.d.ts +1 -0
- package/shared/component-helper.js +2 -1
- package/shared/component-helper.js.map +1 -1
- package/shared/helpers/assignPropsWithContext.d.ts +1 -0
- package/shared/helpers/assignPropsWithContext.js +16 -0
- package/shared/helpers/assignPropsWithContext.js.map +1 -0
- package/shared/helpers/extendPropsWithContext.d.ts +1 -0
- package/shared/helpers/extendPropsWithContext.js +1 -1
- package/shared/helpers/extendPropsWithContext.js.map +1 -1
- package/shared/helpers/filterValidProps.d.ts +1 -0
- package/shared/helpers/filterValidProps.js.map +1 -1
- package/shared/helpers/runCssVersionMismatchWarning.js +14 -3
- package/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
- package/style/core/scopes.scss +1 -1
- package/style/dnb-ui-basis.css +1 -1
- package/style/dnb-ui-basis.min.css +1 -1
- package/style/dnb-ui-body.css +1 -1
- package/style/dnb-ui-body.min.css +1 -1
- package/style/dnb-ui-components.css +129 -98
- package/style/dnb-ui-components.min.css +2 -2
- package/style/dnb-ui-core.css +1 -1
- package/style/dnb-ui-core.min.css +1 -1
- package/style/dnb-ui-extensions.css +77 -43
- package/style/dnb-ui-extensions.min.css +1 -1
- package/style/dnb-ui-forms.css +77 -43
- package/style/dnb-ui-forms.min.css +1 -1
- package/style/dnb-ui-forms.scss +1 -1
- package/style/themes/eiendom/basis.d.ts +1 -0
- package/style/themes/eiendom/basis.js +1 -0
- package/style/themes/eiendom/basis.js.map +1 -0
- package/style/themes/eiendom/index.d.ts +1 -0
- package/style/themes/eiendom/index.js +3 -0
- package/style/themes/eiendom/index.js.map +1 -0
- package/style/themes/sbanken/basis.d.ts +1 -0
- package/style/themes/sbanken/basis.js +1 -0
- package/style/themes/sbanken/basis.js.map +1 -0
- package/style/themes/sbanken/index.d.ts +1 -0
- package/style/themes/sbanken/index.js +3 -0
- package/style/themes/sbanken/index.js.map +1 -0
- package/style/themes/theme-eiendom/eiendom-theme-components.css +205 -141
- package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
- package/style/themes/theme-eiendom/eiendom-theme-extensions.css +77 -43
- package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
- package/style/themes/theme-eiendom/eiendom-theme-forms.css +77 -43
- package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-components.css +205 -141
- package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
- package/style/themes/theme-sbanken/sbanken-theme-extensions.css +77 -43
- package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
- package/style/themes/theme-sbanken/sbanken-theme-forms.css +77 -43
- package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-components.css +205 -141
- package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
- package/style/themes/theme-ui/ui-theme-extensions.css +77 -43
- package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
- package/style/themes/theme-ui/ui-theme-forms.css +77 -43
- package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
- package/style/themes/ui/basis.d.ts +1 -0
- package/style/themes/ui/basis.js +1 -0
- package/style/themes/ui/basis.js.map +1 -0
- package/style/themes/ui/index.d.ts +1 -0
- package/style/themes/ui/index.js +3 -0
- package/style/themes/ui/index.js.map +1 -0
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +1 -1
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +3 -3
- package/umd/dnb-ui-lib.min.js +1 -1
- package/cjs/style/themes/eiendom.js +0 -5
- package/cjs/style/themes/eiendom.js.map +0 -1
- package/cjs/style/themes/sbanken.js +0 -5
- package/cjs/style/themes/sbanken.js.map +0 -1
- package/cjs/style/themes/ui.js +0 -5
- package/cjs/style/themes/ui.js.map +0 -1
- package/es/style/themes/eiendom.js +0 -3
- package/es/style/themes/eiendom.js.map +0 -1
- package/es/style/themes/sbanken.js +0 -3
- package/es/style/themes/sbanken.js.map +0 -1
- package/es/style/themes/ui.js +0 -3
- package/es/style/themes/ui.js.map +0 -1
- package/style/themes/eiendom.js +0 -3
- package/style/themes/eiendom.js.map +0 -1
- package/style/themes/sbanken.js +0 -3
- package/style/themes/sbanken.js.map +0 -1
- package/style/themes/ui.js +0 -3
- package/style/themes/ui.js.map +0 -1
- /package/cjs/extensions/forms/Form/Element/style/{dnb-forms-element.css → dnb-form-element.css} +0 -0
- /package/cjs/extensions/forms/Form/Element/style/{dnb-forms-element.min.css → dnb-form-element.min.css} +0 -0
- /package/cjs/extensions/forms/Form/Element/style/{dnb-forms-element.scss → dnb-form-element.scss} +0 -0
- /package/cjs/style/themes/{eiendom.d.ts → eiendom/basis.d.ts} +0 -0
- /package/cjs/style/themes/{sbanken.d.ts → eiendom/index.d.ts} +0 -0
- /package/cjs/style/themes/{ui.d.ts → sbanken/basis.d.ts} +0 -0
- /package/{es/style/themes/eiendom.d.ts → cjs/style/themes/sbanken/index.d.ts} +0 -0
- /package/{es/style/themes/sbanken.d.ts → cjs/style/themes/ui/basis.d.ts} +0 -0
- /package/{es/style/themes/ui.d.ts → cjs/style/themes/ui/index.d.ts} +0 -0
- /package/es/extensions/forms/Form/Element/style/{dnb-forms-element.css → dnb-form-element.css} +0 -0
- /package/es/extensions/forms/Form/Element/style/{dnb-forms-element.min.css → dnb-form-element.min.css} +0 -0
- /package/es/extensions/forms/Form/Element/style/{dnb-forms-element.scss → dnb-form-element.scss} +0 -0
- /package/{style/themes/eiendom.d.ts → es/style/themes/eiendom/basis.d.ts} +0 -0
- /package/{style/themes/sbanken.d.ts → es/style/themes/eiendom/index.d.ts} +0 -0
- /package/{style/themes/ui.d.ts → es/style/themes/sbanken/basis.d.ts} +0 -0
- /package/extensions/forms/Form/Element/style/{dnb-forms-element.css → dnb-form-element.css} +0 -0
- /package/extensions/forms/Form/Element/style/{dnb-forms-element.min.css → dnb-form-element.min.css} +0 -0
- /package/extensions/forms/Form/Element/style/{dnb-forms-element.scss → dnb-form-element.scss} +0 -0
package/shared/Eufemia.js
CHANGED
package/shared/Eufemia.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Eufemia.js","names":["version","init","window","Eufemia"],"sources":["../../../src/shared/Eufemia.ts"],"sourcesContent":["export const version = '10.
|
|
1
|
+
{"version":3,"file":"Eufemia.js","names":["version","init","window","Eufemia"],"sources":["../../../src/shared/Eufemia.ts"],"sourcesContent":["export const version = '10.30.0'\n\nexport function init() {\n if (typeof window !== 'undefined') {\n class Eufemia {\n get version() {\n return '10.30.0'\n }\n }\n\n window.Eufemia = new Eufemia()\n }\n}\n"],"mappings":"AAAA,OAAO,MAAMA,OAAO,GAAG,SAAS;AAEhC,OAAO,SAASC,IAAIA,CAAA,EAAG;EACrB,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE;IACjC,MAAMC,OAAO,CAAC;MACZ,IAAIH,OAAOA,CAAA,EAAG;QACZ,OAAO,SAAS;MAClB;IACF;IAEAE,MAAM,CAACC,OAAO,GAAG,IAAIA,OAAO,CAAC,CAAC;EAChC;AACF"}
|
|
@@ -13,6 +13,7 @@ export function findElementInChildren(children: any, find: any): any;
|
|
|
13
13
|
export function escapeRegexChars(str: any): any;
|
|
14
14
|
export function removeUndefinedProps(object: any): any;
|
|
15
15
|
export { InteractionInvalidation } from "./helpers/InteractionInvalidation";
|
|
16
|
+
export { assignPropsWithContext } from "./helpers/assignPropsWithContext";
|
|
16
17
|
export { filterProps } from "./helpers/filterProps";
|
|
17
18
|
export function validateDOMAttributes(props: any, params: any): any;
|
|
18
19
|
export function processChildren(props: any): any;
|
|
@@ -9,6 +9,7 @@ import { getPreviousSibling } from './helpers/getPreviousSibling';
|
|
|
9
9
|
import { init } from './Eufemia';
|
|
10
10
|
export { InteractionInvalidation } from './helpers/InteractionInvalidation';
|
|
11
11
|
export { extendPropsWithContext, extendPropsWithContextInClassComponent } from './helpers/extendPropsWithContext';
|
|
12
|
+
export { assignPropsWithContext } from './helpers/assignPropsWithContext';
|
|
12
13
|
export { filterProps } from './helpers/filterProps';
|
|
13
14
|
export { getPreviousSibling, warn };
|
|
14
15
|
init();
|
|
@@ -260,7 +261,7 @@ export const toPascalCase = s => s.split(/_/g).reduce((acc, cur) => acc + cur.re
|
|
|
260
261
|
export const toSnakeCase = str => str.replace(/\B[A-Z]/g, letter => `_${letter}`).toLowerCase();
|
|
261
262
|
export const toKebabCase = str => str.replace(/\B[A-Z]/g, letter => `-${letter}`).toLowerCase();
|
|
262
263
|
export function toCapitalized(str) {
|
|
263
|
-
return str.toLowerCase().replace(/(?<=(^|\s))(.)/g, l => l.toUpperCase());
|
|
264
|
+
return typeof str === 'string' ? str.toLowerCase().replace(/(?<=(^|\s|-))(.)/g, l => l.toUpperCase()) : str;
|
|
264
265
|
}
|
|
265
266
|
export const detectOutsideClick = (ignoreElements, onSuccess, options) => new DetectOutsideClickClass(ignoreElements, onSuccess, options);
|
|
266
267
|
export class DetectOutsideClickClass {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-helper.js","names":["React","keycode","whatInput","warn","PLATFORM_MAC","PLATFORM_WIN","PLATFORM_LINUX","getPreviousSibling","init","InteractionInvalidation","extendPropsWithContext","extendPropsWithContextInClassComponent","filterProps","specificKeys","defineNavigator","isTouchDevice","document","intent","documentElement","getAttribute","e","handleNavigator","window","navigator","IS_TEST","platform","match","RegExp","setAttribute","removeEventListener","readyState","addEventListener","validateDOMAttributes","props","params","attributes","attr","JSON","parse","Object","entries","forEach","_ref","key","value","assign","disabled","space","top","right","bottom","left","no_collapse","innerSpace","tabindex","tabIndex","i","test","processChildren","global","Array","isArray","registeredElements","length","cache","reverse","map","_ref2","cb","includes","isFrozen","_objectSpread","children","createElement","Fragment","filter","Boolean","res","onlyTexts","reduce","pV","cV","push","join","extend","first","_len","arguments","objects","_key","keepRef","shift","acc1","object","acc2","_ref3","keys","isTrue","String","dispatchCustomElementEvent","src","eventName","eventObjectOrig","ret","undefined","eventObject","event","currentTarget","dataset","replace","target","r","apply","toCamelCase","toSnakeCase","s","split","acc","cur","g0","g1","g2","toUpperCase","toLowerCase","toPascalCase","str","letter","toKebabCase","toCapitalized","l","detectOutsideClick","ignoreElements","onSuccess","options","DetectOutsideClickClass","constructor","_defineProperty","_ref4","currentElement","tagName","pageX","clientWidth","pageY","clientHeight","checkIfHasScrollbar","elem","parentNode","handleClickOutside","checkOutsideClick","keydownCallback","keyCode","includedKeys","keyupCallback","remove","scrollHeight","offsetHeight","scrollWidth","offsetWidth","overflowIsScrollable","style","getComputedStyle","overflow","overflowX","overflowY","makeUniqueId","prefix","Math","random","toString","substr","idIncrement","slice","slugify","matchAll","string","regex","from","matches","exec","isChildOfElement","element","callback","contains","parentElement","roundToNearest","num","diff","getClosestScrollViewElement","convertJsxToString","elements","separator","process","word","isValidElement","trim","convertStatusToStateOnly","status","state","getStatusState","combineLabelledBy","_len2","_key2","combineAriaBy","combineDescribedBy","_len3","_key3","combineDetails","_len4","_key4","type","findElementInChildren","find","result","some","escapeRegexChars","removeUndefinedProps"],"sources":["../../../src/shared/component-helper.js"],"sourcesContent":["/**\n * Component helpers\n *\n */\n\nimport React from 'react'\nimport keycode from 'keycode'\nimport whatInput from 'what-input'\nimport {\n warn,\n PLATFORM_MAC,\n PLATFORM_WIN,\n PLATFORM_LINUX,\n} from './helpers'\nimport { getPreviousSibling } from './helpers/getPreviousSibling'\nimport { init } from './Eufemia'\n\nexport { InteractionInvalidation } from './helpers/InteractionInvalidation'\nexport {\n extendPropsWithContext,\n extendPropsWithContextInClassComponent,\n} from './helpers/extendPropsWithContext'\nexport { filterProps } from './helpers/filterProps'\n\nexport { getPreviousSibling, warn }\n\ninit()\n\n// run component helper functions\nwhatInput.specificKeys([9])\ndefineNavigator()\n\n/**\n * Check if device is touch device or not\n */\nexport function isTouchDevice() {\n if (typeof document !== 'undefined') {\n let intent = false\n try {\n intent = document.documentElement.getAttribute('data-whatintent')\n } catch (e) {\n //\n }\n return intent === 'touch'\n }\n return false\n}\n\nexport function defineNavigator() {\n const handleNavigator = () => {\n if (\n typeof document === 'undefined' ||\n typeof window === 'undefined' ||\n typeof navigator === 'undefined'\n ) {\n return\n }\n\n try {\n if (!(typeof window !== 'undefined' && window.IS_TEST)) {\n if (navigator.platform.match(new RegExp(PLATFORM_MAC)) !== null) {\n document.documentElement.setAttribute('data-os', 'mac')\n } else if (\n navigator.platform.match(new RegExp(PLATFORM_WIN)) !== null\n ) {\n document.documentElement.setAttribute('data-os', 'win')\n } else if (\n navigator.platform.match(new RegExp(PLATFORM_LINUX)) !== null\n ) {\n document.documentElement.setAttribute('data-os', 'linux')\n }\n } else {\n document.documentElement.setAttribute('data-os', 'other')\n }\n } catch (e) {\n warn(e)\n }\n\n document.removeEventListener('DOMContentLoaded', handleNavigator)\n }\n\n if (\n typeof document !== 'undefined' &&\n document.readyState === 'loading'\n ) {\n document.addEventListener('DOMContentLoaded', handleNavigator)\n } else {\n handleNavigator()\n }\n}\n\nexport const validateDOMAttributes = (props, params) => {\n // if there is an \"attributes\" prop, prepare these\n // mostly used for prop example usage\n if (props && props.attributes) {\n let attr = props.attributes\n if (attr) {\n if (attr[0] === '{') {\n attr = JSON.parse(attr)\n }\n if (attr && typeof attr === 'object') {\n Object.entries(attr).forEach(([key, value]) => {\n Object.assign(params, { [key]: value })\n })\n }\n delete params.attributes\n }\n }\n\n // remove disabled, in case it is false (this is for web components support)\n if (params.disabled === null || params.disabled === 'false') {\n delete params.disabled\n }\n if (typeof params.space !== 'undefined') {\n delete params.space\n }\n if (typeof params.top !== 'undefined') {\n delete params.top\n }\n if (typeof params.right !== 'undefined') {\n delete params.right\n }\n if (typeof params.bottom !== 'undefined') {\n delete params.bottom\n }\n if (typeof params.left !== 'undefined') {\n delete params.left\n }\n if (typeof params.no_collapse !== 'undefined') {\n delete params.no_collapse\n }\n if (typeof params.innerSpace !== 'undefined') {\n delete params.innerSpace\n }\n\n // in case disabled is a string, it its enabled, send it in as a true (this is for web components support)\n else if (params.disabled === 'true') {\n params.disabled = true\n }\n if (params.disabled === true) {\n params['aria-disabled'] = true\n }\n\n if (props && props.tabindex) {\n let tabIndex = props.tabindex\n if (tabIndex === 'off') {\n tabIndex = '-1'\n }\n params['tabIndex'] = tabIndex\n }\n\n // make sure we don't return a render prop as a DOM attribute\n if (params && typeof params === 'object') {\n for (const i in params) {\n if (\n // is React\n typeof params[i] === 'function' &&\n // only React Style props, like onClick are allowed\n !/(^[a-z]{1,}[A-Z]{1})/.test(i)\n ) {\n delete params[i]\n\n // filter out invalid attributes\n } else if (\n // we don't want NULL values\n params[i] === null ||\n // we don't want\n /[^a-z-]/i.test(i)\n // (typeof params[i] !== 'string' && /[^a-z-]/i.test(i))\n ) {\n delete params[i]\n }\n }\n }\n\n return params\n}\n\nexport const processChildren = (props) => {\n if (!props) {\n return null\n }\n\n // If used in WB, call functions who starts with \"render_\"\n if (\n typeof global !== 'undefined' &&\n Array.isArray(global.registeredElements) &&\n global.registeredElements.length > 0\n ) {\n let cache = null\n Object.entries(props)\n .reverse()\n .map(([key, cb]) => {\n if (key.includes('render_') && /^render_/.test(key)) {\n if (typeof cb === 'function') {\n if (cache) {\n if (Object.isFrozen(props)) {\n props = { ...props }\n }\n props.children = cache\n }\n return (cache = (\n <React.Fragment key={key}>{cb(props)}</React.Fragment>\n ))\n }\n }\n\n return null\n })\n .filter(Boolean)\n if (cache) {\n return cache\n }\n }\n\n const res =\n typeof props.children === 'function'\n ? props.children(props)\n : props.children\n\n // if we get several react children which represents only a text\n if (Array.isArray(res)) {\n const onlyTexts = res.reduce((pV, cV) => {\n if (typeof cV === 'string' || typeof cV === 'number') {\n pV.push(cV)\n }\n return pV\n }, [])\n\n // if there was one or more text elements\n if (onlyTexts.length === res.length && onlyTexts.length > 0) {\n return onlyTexts.join('')\n }\n }\n\n return res\n}\n\n// extends given objects recursively and removes entries with null values\n// makes sure that we by default return a totally new object every time\nexport const extend = (...objects) => {\n let first = {}\n const keepRef = objects[0]\n\n if (keepRef === true || keepRef === false) {\n // remove settings value\n objects.shift()\n\n if (keepRef) {\n // by extracting the first, we keep the same main object reference\n first = objects.shift()\n }\n }\n\n return objects.reduce((acc1, object) => {\n if (object) {\n acc1 = Object.assign(\n acc1,\n Object.entries(object).reduce((acc2, [key, value]) => {\n if (value !== null) {\n // go recursively\n if (typeof value === 'object') {\n value = extend(acc1[key] || {}, value)\n if (Object.keys(value).length > 0) {\n acc2[key] = value\n }\n } else {\n acc2[key] = value\n }\n }\n return acc2\n }, {})\n )\n }\n return acc1\n }, first)\n}\n\n// check if value is \"truthy\"\nexport const isTrue = (value) => {\n if (\n value !== null &&\n typeof value !== 'undefined' &&\n (String(value) === 'true' || String(value) === '1')\n ) {\n return true\n }\n return false\n}\n\nexport const dispatchCustomElementEvent = (\n src,\n eventName,\n eventObjectOrig\n) => {\n let ret = undefined\n\n const eventObject = {\n ...((eventObjectOrig && eventObjectOrig.event) || {}),\n ...eventObjectOrig,\n }\n\n // distribute dataset like \"data-*\" to both currentTarget and target\n if (eventObject && eventObject.attributes && eventObject.event) {\n const currentTarget = eventObject.event.currentTarget\n if (currentTarget) {\n try {\n // 1. create new dataset, and copy if exists\n const dataset = { ...(currentTarget.dataset || {}) }\n\n // 2. copy in our attributes if they are of \"data-\" type\n const attributes = { ...eventObject.attributes }\n for (const i in attributes) {\n if (/^data-/.test(i)) {\n dataset[String(i).replace(/^data-/, '')] = attributes[i]\n }\n }\n\n // 3. and distribute them to the targets. Use the for method because of immutability\n for (const i in dataset) {\n if (eventObject.event.currentTarget.dataset) {\n eventObject.event.currentTarget.dataset[i] = dataset[i]\n }\n if (\n eventObject.event.target &&\n eventObject.event.target.dataset\n ) {\n eventObject.event.target.dataset[i] = dataset[i]\n }\n }\n } catch (e) {\n warn('Error on handling dataset:', e)\n }\n }\n }\n\n const props = (src && src.props) || src\n\n // call the default snake case event\n if (eventName.includes('_')) {\n if (typeof props[eventName] === 'function') {\n const r = props[eventName].apply(src, [eventObject])\n if (typeof r !== 'undefined') {\n ret = r\n }\n }\n\n // call Synthetic React event camelCase naming events\n eventName = toCamelCase(eventName)\n if (typeof props[eventName] === 'function') {\n const r = props[eventName].apply(src, [eventObject])\n if (typeof r !== 'undefined') {\n ret = r\n }\n }\n } else {\n if (typeof props[eventName] === 'function') {\n const r = props[eventName].apply(src, [eventObject])\n if (typeof r !== 'undefined') {\n ret = r\n }\n }\n\n // call (in future deprecated) event snake case naming events\n eventName = toSnakeCase(eventName)\n if (typeof props[eventName] === 'function') {\n const r = props[eventName].apply(src, [eventObject])\n if (typeof r !== 'undefined') {\n ret = r\n }\n }\n }\n\n return ret\n}\n\n// transform on_click to onClick\nexport const toCamelCase = (s) =>\n s\n .split(/_/g)\n .reduce(\n (acc, cur, i) =>\n acc +\n (i === 0\n ? cur\n : cur.replace(\n /(\\w)(\\w*)/g,\n (g0, g1, g2) => g1.toUpperCase() + g2.toLowerCase()\n )),\n ''\n )\n\n// TODO: Test if this solution is faster\n// const toCamelCase = (str) =>\n// str.replace(/([-_][a-z])/g, (group) =>\n// group.toUpperCase().replace('-', '').replace('_', '')\n// )\n\n// transform my_component to MyComponent\nexport const toPascalCase = (s) =>\n s\n .split(/_/g)\n .reduce(\n (acc, cur) =>\n acc +\n cur.replace(\n /(\\w)(\\w*)/g,\n (g0, g1, g2) => g1.toUpperCase() + g2.toLowerCase()\n ),\n ''\n )\n\n// transform MyComponent to my_component\nexport const toSnakeCase = (str) =>\n str.replace(/\\B[A-Z]/g, (letter) => `_${letter}`).toLowerCase()\n\n// transform MyComponent to my-component\nexport const toKebabCase = (str) =>\n str.replace(/\\B[A-Z]/g, (letter) => `-${letter}`).toLowerCase()\n\nexport function toCapitalized(str) {\n return str\n .toLowerCase()\n .replace(/(?<=(^|\\s))(.)/g, (l) => l.toUpperCase())\n}\n\n/**\n * [detectOutsideClick Detects a click outside a given DOM element]\n * @param {[type]} ignoreElement [The element we want to protect from a click]\n * @param {[type]} onSuccess [Will be called on outside click]\n * @return {[type]} [void]\n */\nexport const detectOutsideClick = (ignoreElements, onSuccess, options) =>\n new DetectOutsideClickClass(ignoreElements, onSuccess, options)\n\n// Used by detectOutsideClick\nexport class DetectOutsideClickClass {\n constructor(ignoreElements, onSuccess, options = {}) {\n if (\n !this.handleClickOutside &&\n typeof document !== 'undefined' &&\n typeof window !== 'undefined'\n ) {\n if (!Array.isArray(ignoreElements)) {\n ignoreElements = [ignoreElements]\n }\n this.handleClickOutside = (event) => {\n this.checkOutsideClick(\n {\n event,\n ignoreElements,\n },\n () => typeof onSuccess === 'function' && onSuccess({ event })\n )\n }\n document.addEventListener('mousedown', this.handleClickOutside)\n\n this.keydownCallback = (event) => {\n const keyCode = keycode(event)\n if (keyCode === 'esc') {\n window.removeEventListener('keydown', this.keydownCallback)\n if (typeof onSuccess === 'function') {\n onSuccess({ event })\n }\n }\n }\n window.addEventListener('keydown', this.keydownCallback)\n\n // e.g. includedKeys = ['tab']\n if (options.includedKeys) {\n // use keyup so we get the correct new target\n this.keyupCallback = (event) => {\n const keyCode = keycode(event)\n if (\n options.includedKeys.includes(keyCode) &&\n typeof this.handleClickOutside === 'function'\n ) {\n this.handleClickOutside(event, () => {\n if (this.keyupCallback)\n window.removeEventListener('keyup', this.keyupCallback)\n })\n }\n }\n window.addEventListener('keyup', this.keyupCallback)\n }\n }\n }\n\n remove() {\n if (this.handleClickOutside && typeof document !== 'undefined') {\n document.removeEventListener('mousedown', this.handleClickOutside)\n this.handleClickOutside = null\n }\n if (this.keydownCallback && typeof window !== 'undefined') {\n window.removeEventListener('keydown', this.keydownCallback)\n this.keydownCallback = null\n }\n if (this.keyupCallback && typeof window !== 'undefined') {\n window.removeEventListener('keyup', this.keyupCallback)\n this.keyupCallback = null\n }\n }\n\n checkOutsideClick = ({ event, ignoreElements }, onSuccess = null) => {\n try {\n const currentElement = event.target\n\n // we also check if currentElement is documentElement\n // and if it has scrollbars, we then ignore the click\n if (\n currentElement?.tagName === 'HTML' &&\n (event.pageX > document.documentElement.clientWidth - 40 ||\n event.pageY > document.documentElement.clientHeight - 40)\n ) {\n return // stop here\n }\n\n // check if element has e.g. \"overflow: scroll\"\n if (checkIfHasScrollbar(currentElement)) {\n return // stop here\n }\n\n // check the rest\n for (let i = 0, elem, l = ignoreElements.length; i < l; ++i) {\n elem = currentElement\n if (!ignoreElements[i]) {\n continue\n }\n do {\n if (elem === ignoreElements[i]) {\n return // stop here\n }\n elem = elem && elem.parentNode\n } while (elem)\n }\n\n if (typeof onSuccess === 'function') {\n onSuccess()\n }\n } catch (e) {\n warn(e)\n }\n }\n}\n\nexport const checkIfHasScrollbar = (elem) => {\n return (\n elem &&\n (elem.scrollHeight > elem.offsetHeight ||\n elem.scrollWidth > elem.offsetWidth) &&\n overflowIsScrollable(elem)\n )\n}\nconst overflowIsScrollable = (elem) => {\n const style =\n typeof window !== 'undefined' ? window.getComputedStyle(elem) : {}\n return /scroll|auto/i.test(\n (style.overflow || '') +\n (style.overflowX || '') +\n (style.overflowY || '')\n )\n}\n\nexport const makeUniqueId = (prefix = 'id-', length = 8) =>\n prefix +\n String(\n Math.random().toString(36).substr(2, length) + idIncrement++\n ).slice(-length)\nlet idIncrement = 0\n\nexport const slugify = (s) =>\n String(s)\n .toLowerCase()\n .replace(/[^\\w\\s-]/g, '')\n .replace(/[\\s_-]+/g, '-')\n .replace(/^-+|-+$/g, '')\n\n// NB: in future we can use String.matchAll() instead\nexport const matchAll = (string, regex) => {\n if (typeof string.matchAll === 'function') {\n return Array.from(string.matchAll(regex))\n }\n const matches = []\n let match\n while ((match = regex.exec(string))) {\n matches.push(match)\n }\n return matches\n}\n\n/**\n * Check if an element exists in its children\n * If it finds it, the child \"element\" of target will be returned.\n *\n * @param {HTMLElement} element The DOM Element to find\n * @param {HTMLElement} target The DOM Element that should contain \"element\"\n * @param {function} callback (optional)\n * @returns {HTMLElement | null} Returns the found child of all existing dom elements inside of \"target\"\n */\nexport const isChildOfElement = (element, target, callback = null) => {\n try {\n const contains = (element) => {\n if (callback) {\n const res = callback(element)\n if (res) {\n return element\n }\n }\n return element && element === target\n }\n\n if (contains(element)) {\n return element\n }\n\n while (\n (element = element && element.parentElement) &&\n !contains(element)\n );\n } catch (e) {\n //\n }\n\n return element\n}\n\n// Round number to nearest target number\nexport const roundToNearest = (num, target) => {\n const diff = num % target\n return diff > target / 2 ? num - diff + target : num - diff\n}\n\nexport const getClosestScrollViewElement = (currentElement) => {\n return getPreviousSibling('.dnb-scroll-view', currentElement)\n}\n\nexport const convertJsxToString = (elements, separator = undefined) => {\n if (!Array.isArray(elements)) {\n elements = [elements]\n }\n\n const process = (word) => {\n if (React.isValidElement(word)) {\n if (typeof word.props.children === 'string') {\n word = word.props.children.trim()\n } else if (Array.isArray(word.props.children)) {\n word = word.props.children.reduce((acc, word) => {\n if (typeof word !== 'string') {\n word = process(word)\n }\n if (typeof word === 'string') {\n acc = (acc + (separator || '') + word).trim()\n }\n return acc\n }, '')\n } else {\n return null\n }\n }\n\n return word\n }\n\n return elements\n .map((word) => process(word))\n .filter(Boolean)\n .join(separator)\n .trim()\n}\n\nexport function convertStatusToStateOnly(status, state) {\n return status ? state : null\n}\n\nexport function getStatusState(status) {\n return (\n status && status !== 'error' && status !== 'warn' && status !== 'info'\n )\n}\n\nexport function combineLabelledBy(...params) {\n return combineAriaBy('aria-labelledby', params)\n}\nexport function combineDescribedBy(...params) {\n return combineAriaBy('aria-describedby', params)\n}\nexport function combineDetails(...params) {\n return combineAriaBy('aria-details', params)\n}\nfunction combineAriaBy(type, params) {\n params = params.map((cur) => {\n if (Array.isArray(cur)) {\n return cur.join(' ')\n }\n if (cur && params.includes(cur[type])) {\n return null\n }\n if (cur && typeof cur[type] !== 'undefined') {\n cur = cur[type]\n }\n if (typeof cur !== 'string') {\n cur = null\n }\n return cur\n })\n params = params.filter(Boolean).join(' ')\n if (params === '') {\n params = undefined\n }\n return params\n}\n\nexport function findElementInChildren(children, find) {\n if (!Array.isArray(children)) {\n children = [children]\n }\n\n let result = null\n children.some((cur) => {\n if (cur && cur.props && cur.props.children) {\n const res = findElementInChildren(cur.props.children, find)\n if (res) {\n return (result = res)\n }\n }\n if (React.isValidElement(cur) && find(cur)) {\n return (result = cur)\n }\n return null\n })\n\n return result\n}\n\nexport function escapeRegexChars(str) {\n return str.replace(/[-[\\]{}()*+?.,\\\\^$|#]/g, '\\\\$&')\n}\n\nexport function removeUndefinedProps(object) {\n Object.keys(object).forEach((key) => {\n if (object[key] === undefined) {\n delete object[key]\n }\n })\n return object\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"component-helper.js","names":["React","keycode","whatInput","warn","PLATFORM_MAC","PLATFORM_WIN","PLATFORM_LINUX","getPreviousSibling","init","InteractionInvalidation","extendPropsWithContext","extendPropsWithContextInClassComponent","assignPropsWithContext","filterProps","specificKeys","defineNavigator","isTouchDevice","document","intent","documentElement","getAttribute","e","handleNavigator","window","navigator","IS_TEST","platform","match","RegExp","setAttribute","removeEventListener","readyState","addEventListener","validateDOMAttributes","props","params","attributes","attr","JSON","parse","Object","entries","forEach","_ref","key","value","assign","disabled","space","top","right","bottom","left","no_collapse","innerSpace","tabindex","tabIndex","i","test","processChildren","global","Array","isArray","registeredElements","length","cache","reverse","map","_ref2","cb","includes","isFrozen","_objectSpread","children","createElement","Fragment","filter","Boolean","res","onlyTexts","reduce","pV","cV","push","join","extend","first","_len","arguments","objects","_key","keepRef","shift","acc1","object","acc2","_ref3","keys","isTrue","String","dispatchCustomElementEvent","src","eventName","eventObjectOrig","ret","undefined","eventObject","event","currentTarget","dataset","replace","target","r","apply","toCamelCase","toSnakeCase","s","split","acc","cur","g0","g1","g2","toUpperCase","toLowerCase","toPascalCase","str","letter","toKebabCase","toCapitalized","l","detectOutsideClick","ignoreElements","onSuccess","options","DetectOutsideClickClass","constructor","_defineProperty","_ref4","currentElement","tagName","pageX","clientWidth","pageY","clientHeight","checkIfHasScrollbar","elem","parentNode","handleClickOutside","checkOutsideClick","keydownCallback","keyCode","includedKeys","keyupCallback","remove","scrollHeight","offsetHeight","scrollWidth","offsetWidth","overflowIsScrollable","style","getComputedStyle","overflow","overflowX","overflowY","makeUniqueId","prefix","Math","random","toString","substr","idIncrement","slice","slugify","matchAll","string","regex","from","matches","exec","isChildOfElement","element","callback","contains","parentElement","roundToNearest","num","diff","getClosestScrollViewElement","convertJsxToString","elements","separator","process","word","isValidElement","trim","convertStatusToStateOnly","status","state","getStatusState","combineLabelledBy","_len2","_key2","combineAriaBy","combineDescribedBy","_len3","_key3","combineDetails","_len4","_key4","type","findElementInChildren","find","result","some","escapeRegexChars","removeUndefinedProps"],"sources":["../../../src/shared/component-helper.js"],"sourcesContent":["/**\n * Component helpers\n *\n */\n\nimport React from 'react'\nimport keycode from 'keycode'\nimport whatInput from 'what-input'\nimport {\n warn,\n PLATFORM_MAC,\n PLATFORM_WIN,\n PLATFORM_LINUX,\n} from './helpers'\nimport { getPreviousSibling } from './helpers/getPreviousSibling'\nimport { init } from './Eufemia'\n\nexport { InteractionInvalidation } from './helpers/InteractionInvalidation'\nexport {\n extendPropsWithContext,\n extendPropsWithContextInClassComponent,\n} from './helpers/extendPropsWithContext'\nexport { assignPropsWithContext } from './helpers/assignPropsWithContext'\nexport { filterProps } from './helpers/filterProps'\n\nexport { getPreviousSibling, warn }\n\ninit()\n\n// run component helper functions\nwhatInput.specificKeys([9])\ndefineNavigator()\n\n/**\n * Check if device is touch device or not\n */\nexport function isTouchDevice() {\n if (typeof document !== 'undefined') {\n let intent = false\n try {\n intent = document.documentElement.getAttribute('data-whatintent')\n } catch (e) {\n //\n }\n return intent === 'touch'\n }\n return false\n}\n\nexport function defineNavigator() {\n const handleNavigator = () => {\n if (\n typeof document === 'undefined' ||\n typeof window === 'undefined' ||\n typeof navigator === 'undefined'\n ) {\n return\n }\n\n try {\n if (!(typeof window !== 'undefined' && window.IS_TEST)) {\n if (navigator.platform.match(new RegExp(PLATFORM_MAC)) !== null) {\n document.documentElement.setAttribute('data-os', 'mac')\n } else if (\n navigator.platform.match(new RegExp(PLATFORM_WIN)) !== null\n ) {\n document.documentElement.setAttribute('data-os', 'win')\n } else if (\n navigator.platform.match(new RegExp(PLATFORM_LINUX)) !== null\n ) {\n document.documentElement.setAttribute('data-os', 'linux')\n }\n } else {\n document.documentElement.setAttribute('data-os', 'other')\n }\n } catch (e) {\n warn(e)\n }\n\n document.removeEventListener('DOMContentLoaded', handleNavigator)\n }\n\n if (\n typeof document !== 'undefined' &&\n document.readyState === 'loading'\n ) {\n document.addEventListener('DOMContentLoaded', handleNavigator)\n } else {\n handleNavigator()\n }\n}\n\nexport const validateDOMAttributes = (props, params) => {\n // if there is an \"attributes\" prop, prepare these\n // mostly used for prop example usage\n if (props && props.attributes) {\n let attr = props.attributes\n if (attr) {\n if (attr[0] === '{') {\n attr = JSON.parse(attr)\n }\n if (attr && typeof attr === 'object') {\n Object.entries(attr).forEach(([key, value]) => {\n Object.assign(params, { [key]: value })\n })\n }\n delete params.attributes\n }\n }\n\n // remove disabled, in case it is false (this is for web components support)\n if (params.disabled === null || params.disabled === 'false') {\n delete params.disabled\n }\n if (typeof params.space !== 'undefined') {\n delete params.space\n }\n if (typeof params.top !== 'undefined') {\n delete params.top\n }\n if (typeof params.right !== 'undefined') {\n delete params.right\n }\n if (typeof params.bottom !== 'undefined') {\n delete params.bottom\n }\n if (typeof params.left !== 'undefined') {\n delete params.left\n }\n if (typeof params.no_collapse !== 'undefined') {\n delete params.no_collapse\n }\n if (typeof params.innerSpace !== 'undefined') {\n delete params.innerSpace\n }\n\n // in case disabled is a string, it its enabled, send it in as a true (this is for web components support)\n else if (params.disabled === 'true') {\n params.disabled = true\n }\n if (params.disabled === true) {\n params['aria-disabled'] = true\n }\n\n if (props && props.tabindex) {\n let tabIndex = props.tabindex\n if (tabIndex === 'off') {\n tabIndex = '-1'\n }\n params['tabIndex'] = tabIndex\n }\n\n // make sure we don't return a render prop as a DOM attribute\n if (params && typeof params === 'object') {\n for (const i in params) {\n if (\n // is React\n typeof params[i] === 'function' &&\n // only React Style props, like onClick are allowed\n !/(^[a-z]{1,}[A-Z]{1})/.test(i)\n ) {\n delete params[i]\n\n // filter out invalid attributes\n } else if (\n // we don't want NULL values\n params[i] === null ||\n // we don't want\n /[^a-z-]/i.test(i)\n // (typeof params[i] !== 'string' && /[^a-z-]/i.test(i))\n ) {\n delete params[i]\n }\n }\n }\n\n return params\n}\n\nexport const processChildren = (props) => {\n if (!props) {\n return null\n }\n\n // If used in WB, call functions who starts with \"render_\"\n if (\n typeof global !== 'undefined' &&\n Array.isArray(global.registeredElements) &&\n global.registeredElements.length > 0\n ) {\n let cache = null\n Object.entries(props)\n .reverse()\n .map(([key, cb]) => {\n if (key.includes('render_') && /^render_/.test(key)) {\n if (typeof cb === 'function') {\n if (cache) {\n if (Object.isFrozen(props)) {\n props = { ...props }\n }\n props.children = cache\n }\n return (cache = (\n <React.Fragment key={key}>{cb(props)}</React.Fragment>\n ))\n }\n }\n\n return null\n })\n .filter(Boolean)\n if (cache) {\n return cache\n }\n }\n\n const res =\n typeof props.children === 'function'\n ? props.children(props)\n : props.children\n\n // if we get several react children which represents only a text\n if (Array.isArray(res)) {\n const onlyTexts = res.reduce((pV, cV) => {\n if (typeof cV === 'string' || typeof cV === 'number') {\n pV.push(cV)\n }\n return pV\n }, [])\n\n // if there was one or more text elements\n if (onlyTexts.length === res.length && onlyTexts.length > 0) {\n return onlyTexts.join('')\n }\n }\n\n return res\n}\n\n// extends given objects recursively and removes entries with null values\n// makes sure that we by default return a totally new object every time\nexport const extend = (...objects) => {\n let first = {}\n const keepRef = objects[0]\n\n if (keepRef === true || keepRef === false) {\n // remove settings value\n objects.shift()\n\n if (keepRef) {\n // by extracting the first, we keep the same main object reference\n first = objects.shift()\n }\n }\n\n return objects.reduce((acc1, object) => {\n if (object) {\n acc1 = Object.assign(\n acc1,\n Object.entries(object).reduce((acc2, [key, value]) => {\n if (value !== null) {\n // go recursively\n if (typeof value === 'object') {\n value = extend(acc1[key] || {}, value)\n if (Object.keys(value).length > 0) {\n acc2[key] = value\n }\n } else {\n acc2[key] = value\n }\n }\n return acc2\n }, {})\n )\n }\n return acc1\n }, first)\n}\n\n// check if value is \"truthy\"\nexport const isTrue = (value) => {\n if (\n value !== null &&\n typeof value !== 'undefined' &&\n (String(value) === 'true' || String(value) === '1')\n ) {\n return true\n }\n return false\n}\n\nexport const dispatchCustomElementEvent = (\n src,\n eventName,\n eventObjectOrig\n) => {\n let ret = undefined\n\n const eventObject = {\n ...((eventObjectOrig && eventObjectOrig.event) || {}),\n ...eventObjectOrig,\n }\n\n // distribute dataset like \"data-*\" to both currentTarget and target\n if (eventObject && eventObject.attributes && eventObject.event) {\n const currentTarget = eventObject.event.currentTarget\n if (currentTarget) {\n try {\n // 1. create new dataset, and copy if exists\n const dataset = { ...(currentTarget.dataset || {}) }\n\n // 2. copy in our attributes if they are of \"data-\" type\n const attributes = { ...eventObject.attributes }\n for (const i in attributes) {\n if (/^data-/.test(i)) {\n dataset[String(i).replace(/^data-/, '')] = attributes[i]\n }\n }\n\n // 3. and distribute them to the targets. Use the for method because of immutability\n for (const i in dataset) {\n if (eventObject.event.currentTarget.dataset) {\n eventObject.event.currentTarget.dataset[i] = dataset[i]\n }\n if (\n eventObject.event.target &&\n eventObject.event.target.dataset\n ) {\n eventObject.event.target.dataset[i] = dataset[i]\n }\n }\n } catch (e) {\n warn('Error on handling dataset:', e)\n }\n }\n }\n\n const props = (src && src.props) || src\n\n // call the default snake case event\n if (eventName.includes('_')) {\n if (typeof props[eventName] === 'function') {\n const r = props[eventName].apply(src, [eventObject])\n if (typeof r !== 'undefined') {\n ret = r\n }\n }\n\n // call Synthetic React event camelCase naming events\n eventName = toCamelCase(eventName)\n if (typeof props[eventName] === 'function') {\n const r = props[eventName].apply(src, [eventObject])\n if (typeof r !== 'undefined') {\n ret = r\n }\n }\n } else {\n if (typeof props[eventName] === 'function') {\n const r = props[eventName].apply(src, [eventObject])\n if (typeof r !== 'undefined') {\n ret = r\n }\n }\n\n // call (in future deprecated) event snake case naming events\n eventName = toSnakeCase(eventName)\n if (typeof props[eventName] === 'function') {\n const r = props[eventName].apply(src, [eventObject])\n if (typeof r !== 'undefined') {\n ret = r\n }\n }\n }\n\n return ret\n}\n\n// transform on_click to onClick\nexport const toCamelCase = (s) =>\n s\n .split(/_/g)\n .reduce(\n (acc, cur, i) =>\n acc +\n (i === 0\n ? cur\n : cur.replace(\n /(\\w)(\\w*)/g,\n (g0, g1, g2) => g1.toUpperCase() + g2.toLowerCase()\n )),\n ''\n )\n\n// TODO: Test if this solution is faster\n// const toCamelCase = (str) =>\n// str.replace(/([-_][a-z])/g, (group) =>\n// group.toUpperCase().replace('-', '').replace('_', '')\n// )\n\n// transform my_component to MyComponent\nexport const toPascalCase = (s) =>\n s\n .split(/_/g)\n .reduce(\n (acc, cur) =>\n acc +\n cur.replace(\n /(\\w)(\\w*)/g,\n (g0, g1, g2) => g1.toUpperCase() + g2.toLowerCase()\n ),\n ''\n )\n\n// transform MyComponent to my_component\nexport const toSnakeCase = (str) =>\n str.replace(/\\B[A-Z]/g, (letter) => `_${letter}`).toLowerCase()\n\n// transform MyComponent to my-component\nexport const toKebabCase = (str) =>\n str.replace(/\\B[A-Z]/g, (letter) => `-${letter}`).toLowerCase()\n\nexport function toCapitalized(str) {\n return typeof str === 'string'\n ? str\n .toLowerCase()\n .replace(/(?<=(^|\\s|-))(.)/g, (l) => l.toUpperCase())\n : str\n}\n\n/**\n * [detectOutsideClick Detects a click outside a given DOM element]\n * @param {[type]} ignoreElement [The element we want to protect from a click]\n * @param {[type]} onSuccess [Will be called on outside click]\n * @return {[type]} [void]\n */\nexport const detectOutsideClick = (ignoreElements, onSuccess, options) =>\n new DetectOutsideClickClass(ignoreElements, onSuccess, options)\n\n// Used by detectOutsideClick\nexport class DetectOutsideClickClass {\n constructor(ignoreElements, onSuccess, options = {}) {\n if (\n !this.handleClickOutside &&\n typeof document !== 'undefined' &&\n typeof window !== 'undefined'\n ) {\n if (!Array.isArray(ignoreElements)) {\n ignoreElements = [ignoreElements]\n }\n this.handleClickOutside = (event) => {\n this.checkOutsideClick(\n {\n event,\n ignoreElements,\n },\n () => typeof onSuccess === 'function' && onSuccess({ event })\n )\n }\n document.addEventListener('mousedown', this.handleClickOutside)\n\n this.keydownCallback = (event) => {\n const keyCode = keycode(event)\n if (keyCode === 'esc') {\n window.removeEventListener('keydown', this.keydownCallback)\n if (typeof onSuccess === 'function') {\n onSuccess({ event })\n }\n }\n }\n window.addEventListener('keydown', this.keydownCallback)\n\n // e.g. includedKeys = ['tab']\n if (options.includedKeys) {\n // use keyup so we get the correct new target\n this.keyupCallback = (event) => {\n const keyCode = keycode(event)\n if (\n options.includedKeys.includes(keyCode) &&\n typeof this.handleClickOutside === 'function'\n ) {\n this.handleClickOutside(event, () => {\n if (this.keyupCallback)\n window.removeEventListener('keyup', this.keyupCallback)\n })\n }\n }\n window.addEventListener('keyup', this.keyupCallback)\n }\n }\n }\n\n remove() {\n if (this.handleClickOutside && typeof document !== 'undefined') {\n document.removeEventListener('mousedown', this.handleClickOutside)\n this.handleClickOutside = null\n }\n if (this.keydownCallback && typeof window !== 'undefined') {\n window.removeEventListener('keydown', this.keydownCallback)\n this.keydownCallback = null\n }\n if (this.keyupCallback && typeof window !== 'undefined') {\n window.removeEventListener('keyup', this.keyupCallback)\n this.keyupCallback = null\n }\n }\n\n checkOutsideClick = ({ event, ignoreElements }, onSuccess = null) => {\n try {\n const currentElement = event.target\n\n // we also check if currentElement is documentElement\n // and if it has scrollbars, we then ignore the click\n if (\n currentElement?.tagName === 'HTML' &&\n (event.pageX > document.documentElement.clientWidth - 40 ||\n event.pageY > document.documentElement.clientHeight - 40)\n ) {\n return // stop here\n }\n\n // check if element has e.g. \"overflow: scroll\"\n if (checkIfHasScrollbar(currentElement)) {\n return // stop here\n }\n\n // check the rest\n for (let i = 0, elem, l = ignoreElements.length; i < l; ++i) {\n elem = currentElement\n if (!ignoreElements[i]) {\n continue\n }\n do {\n if (elem === ignoreElements[i]) {\n return // stop here\n }\n elem = elem && elem.parentNode\n } while (elem)\n }\n\n if (typeof onSuccess === 'function') {\n onSuccess()\n }\n } catch (e) {\n warn(e)\n }\n }\n}\n\nexport const checkIfHasScrollbar = (elem) => {\n return (\n elem &&\n (elem.scrollHeight > elem.offsetHeight ||\n elem.scrollWidth > elem.offsetWidth) &&\n overflowIsScrollable(elem)\n )\n}\nconst overflowIsScrollable = (elem) => {\n const style =\n typeof window !== 'undefined' ? window.getComputedStyle(elem) : {}\n return /scroll|auto/i.test(\n (style.overflow || '') +\n (style.overflowX || '') +\n (style.overflowY || '')\n )\n}\n\nexport const makeUniqueId = (prefix = 'id-', length = 8) =>\n prefix +\n String(\n Math.random().toString(36).substr(2, length) + idIncrement++\n ).slice(-length)\nlet idIncrement = 0\n\nexport const slugify = (s) =>\n String(s)\n .toLowerCase()\n .replace(/[^\\w\\s-]/g, '')\n .replace(/[\\s_-]+/g, '-')\n .replace(/^-+|-+$/g, '')\n\n// NB: in future we can use String.matchAll() instead\nexport const matchAll = (string, regex) => {\n if (typeof string.matchAll === 'function') {\n return Array.from(string.matchAll(regex))\n }\n const matches = []\n let match\n while ((match = regex.exec(string))) {\n matches.push(match)\n }\n return matches\n}\n\n/**\n * Check if an element exists in its children\n * If it finds it, the child \"element\" of target will be returned.\n *\n * @param {HTMLElement} element The DOM Element to find\n * @param {HTMLElement} target The DOM Element that should contain \"element\"\n * @param {function} callback (optional)\n * @returns {HTMLElement | null} Returns the found child of all existing dom elements inside of \"target\"\n */\nexport const isChildOfElement = (element, target, callback = null) => {\n try {\n const contains = (element) => {\n if (callback) {\n const res = callback(element)\n if (res) {\n return element\n }\n }\n return element && element === target\n }\n\n if (contains(element)) {\n return element\n }\n\n while (\n (element = element && element.parentElement) &&\n !contains(element)\n );\n } catch (e) {\n //\n }\n\n return element\n}\n\n// Round number to nearest target number\nexport const roundToNearest = (num, target) => {\n const diff = num % target\n return diff > target / 2 ? num - diff + target : num - diff\n}\n\nexport const getClosestScrollViewElement = (currentElement) => {\n return getPreviousSibling('.dnb-scroll-view', currentElement)\n}\n\nexport const convertJsxToString = (elements, separator = undefined) => {\n if (!Array.isArray(elements)) {\n elements = [elements]\n }\n\n const process = (word) => {\n if (React.isValidElement(word)) {\n if (typeof word.props.children === 'string') {\n word = word.props.children.trim()\n } else if (Array.isArray(word.props.children)) {\n word = word.props.children.reduce((acc, word) => {\n if (typeof word !== 'string') {\n word = process(word)\n }\n if (typeof word === 'string') {\n acc = (acc + (separator || '') + word).trim()\n }\n return acc\n }, '')\n } else {\n return null\n }\n }\n\n return word\n }\n\n return elements\n .map((word) => process(word))\n .filter(Boolean)\n .join(separator)\n .trim()\n}\n\nexport function convertStatusToStateOnly(status, state) {\n return status ? state : null\n}\n\nexport function getStatusState(status) {\n return (\n status && status !== 'error' && status !== 'warn' && status !== 'info'\n )\n}\n\nexport function combineLabelledBy(...params) {\n return combineAriaBy('aria-labelledby', params)\n}\nexport function combineDescribedBy(...params) {\n return combineAriaBy('aria-describedby', params)\n}\nexport function combineDetails(...params) {\n return combineAriaBy('aria-details', params)\n}\nfunction combineAriaBy(type, params) {\n params = params.map((cur) => {\n if (Array.isArray(cur)) {\n return cur.join(' ')\n }\n if (cur && params.includes(cur[type])) {\n return null\n }\n if (cur && typeof cur[type] !== 'undefined') {\n cur = cur[type]\n }\n if (typeof cur !== 'string') {\n cur = null\n }\n return cur\n })\n params = params.filter(Boolean).join(' ')\n if (params === '') {\n params = undefined\n }\n return params\n}\n\nexport function findElementInChildren(children, find) {\n if (!Array.isArray(children)) {\n children = [children]\n }\n\n let result = null\n children.some((cur) => {\n if (cur && cur.props && cur.props.children) {\n const res = findElementInChildren(cur.props.children, find)\n if (res) {\n return (result = res)\n }\n }\n if (React.isValidElement(cur) && find(cur)) {\n return (result = cur)\n }\n return null\n })\n\n return result\n}\n\nexport function escapeRegexChars(str) {\n return str.replace(/[-[\\]{}()*+?.,\\\\^$|#]/g, '\\\\$&')\n}\n\nexport function removeUndefinedProps(object) {\n Object.keys(object).forEach((key) => {\n if (object[key] === undefined) {\n delete object[key]\n }\n })\n return object\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function assignPropsWithContext<Props>(props: Props, ...contexts: Array<Record<string, unknown>>): {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { reduceContext } from './extendPropsWithContext';
|
|
2
|
+
export function assignPropsWithContext(props) {
|
|
3
|
+
props = Object.isFrozen(props) ? Object.assign({}, props) : props;
|
|
4
|
+
for (var _len = arguments.length, contexts = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
5
|
+
contexts[_key - 1] = arguments[_key];
|
|
6
|
+
}
|
|
7
|
+
const context = reduceContext(contexts);
|
|
8
|
+
return Object.entries(context).reduce((acc, _ref) => {
|
|
9
|
+
let [key, value] = _ref;
|
|
10
|
+
if (!(props && Object.prototype.hasOwnProperty.call(props, key))) {
|
|
11
|
+
acc[key] = value;
|
|
12
|
+
}
|
|
13
|
+
return acc;
|
|
14
|
+
}, props || {});
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=assignPropsWithContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assignPropsWithContext.js","names":["reduceContext","assignPropsWithContext","props","Object","isFrozen","assign","_len","arguments","length","contexts","Array","_key","context","entries","reduce","acc","_ref","key","value","prototype","hasOwnProperty","call"],"sources":["../../../../src/shared/helpers/assignPropsWithContext.ts"],"sourcesContent":["import { reduceContext } from './extendPropsWithContext'\n\nexport function assignPropsWithContext<Props>(\n props: Props,\n ...contexts: Array<Record<string, unknown>>\n) {\n props = Object.isFrozen(props) ? Object.assign({}, props) : props\n const context = reduceContext(contexts)\n return Object.entries(context).reduce((acc, [key, value]) => {\n if (!(props && Object.prototype.hasOwnProperty.call(props, key))) {\n // if (key !== 'disabled') {\n // console.log('key', key)\n acc[key] = value\n // }\n }\n return acc\n }, props || {})\n}\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,0BAA0B;AAExD,OAAO,SAASC,sBAAsBA,CACpCC,KAAY,EAEZ;EACAA,KAAK,GAAGC,MAAM,CAACC,QAAQ,CAACF,KAAK,CAAC,GAAGC,MAAM,CAACE,MAAM,CAAC,CAAC,CAAC,EAAEH,KAAK,CAAC,GAAGA,KAAK;EAAA,SAAAI,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAF9DC,QAAQ,OAAAC,KAAA,CAAAJ,IAAA,OAAAA,IAAA,WAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;IAARF,QAAQ,CAAAE,IAAA,QAAAJ,SAAA,CAAAI,IAAA;EAAA;EAGX,MAAMC,OAAO,GAAGZ,aAAa,CAACS,QAAQ,CAAC;EACvC,OAAON,MAAM,CAACU,OAAO,CAACD,OAAO,CAAC,CAACE,MAAM,CAAC,CAACC,GAAG,EAAAC,IAAA,KAAmB;IAAA,IAAjB,CAACC,GAAG,EAAEC,KAAK,CAAC,GAAAF,IAAA;IACtD,IAAI,EAAEd,KAAK,IAAIC,MAAM,CAACgB,SAAS,CAACC,cAAc,CAACC,IAAI,CAACnB,KAAK,EAAEe,GAAG,CAAC,CAAC,EAAE;MAGhEF,GAAG,CAACE,GAAG,CAAC,GAAGC,KAAK;IAElB;IACA,OAAOH,GAAG;EACZ,CAAC,EAAEb,KAAK,IAAI,CAAC,CAAC,CAAC;AACjB"}
|
|
@@ -13,3 +13,4 @@ export type Contexts = Array<Record<string, unknown>>;
|
|
|
13
13
|
*/
|
|
14
14
|
export declare function extendPropsWithContext<Props>(props: Props, defaults?: DefaultsProps, ...contexts: Contexts): Props & {};
|
|
15
15
|
export declare function extendPropsWithContextInClassComponent<Props>(props: Props, defaults?: DefaultsProps, ...contexts: Contexts): Props & {};
|
|
16
|
+
export declare function reduceContext(contexts: Contexts): Record<string, unknown>;
|
|
@@ -18,7 +18,7 @@ export function extendPropsWithContextInClassComponent(props) {
|
|
|
18
18
|
onlyMergeExistingProps: true
|
|
19
19
|
}));
|
|
20
20
|
}
|
|
21
|
-
function reduceContext(contexts) {
|
|
21
|
+
export function reduceContext(contexts) {
|
|
22
22
|
return contexts.reduce((acc, cur) => {
|
|
23
23
|
if (cur) {
|
|
24
24
|
acc = _objectSpread(_objectSpread({}, acc), cur);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extendPropsWithContext.js","names":["extendPropsWithContext","props","defaults","arguments","length","undefined","_objectSpread","_len","contexts","Array","_key","reduceContextWithValue","extendPropsWithContextInClassComponent","_len2","_key2","onlyMergeExistingProps","reduceContext","reduce","acc","cur","context","Object","entries","_ref","key","value","prototype","hasOwnProperty","call"],"sources":["../../../../src/shared/helpers/extendPropsWithContext.ts"],"sourcesContent":["export type DefaultsProps = Record<string, unknown>\nexport type Contexts = Array<Record<string, unknown>>\n\n/**\n * Overrides default props with values from context.\n *\n * \"undefined\" is considered the default value of a prop\n * unless otherwise provided\n *\n * @param props object of component properties\n * @param defaults object of default values\n * @param contexts one or more contexts to merge\n * @returns merged properties\n */\nexport function extendPropsWithContext<Props>(\n props: Props,\n defaults: DefaultsProps = {},\n ...contexts: Contexts\n) {\n props = { ...defaults, ...props }\n return {\n ...props,\n ...reduceContextWithValue(props, defaults, contexts),\n }\n}\n\nexport function extendPropsWithContextInClassComponent<Props>(\n props: Props,\n defaults: DefaultsProps = {},\n ...contexts: Contexts\n) {\n return {\n ...props,\n ...reduceContextWithValue(props, defaults, contexts, {\n onlyMergeExistingProps: true,\n }),\n }\n}\n\
|
|
1
|
+
{"version":3,"file":"extendPropsWithContext.js","names":["extendPropsWithContext","props","defaults","arguments","length","undefined","_objectSpread","_len","contexts","Array","_key","reduceContextWithValue","extendPropsWithContextInClassComponent","_len2","_key2","onlyMergeExistingProps","reduceContext","reduce","acc","cur","context","Object","entries","_ref","key","value","prototype","hasOwnProperty","call"],"sources":["../../../../src/shared/helpers/extendPropsWithContext.ts"],"sourcesContent":["export type DefaultsProps = Record<string, unknown>\nexport type Contexts = Array<Record<string, unknown>>\n\n/**\n * Overrides default props with values from context.\n *\n * \"undefined\" is considered the default value of a prop\n * unless otherwise provided\n *\n * @param props object of component properties\n * @param defaults object of default values\n * @param contexts one or more contexts to merge\n * @returns merged properties\n */\nexport function extendPropsWithContext<Props>(\n props: Props,\n defaults: DefaultsProps = {},\n ...contexts: Contexts\n) {\n props = { ...defaults, ...props }\n return {\n ...props,\n ...reduceContextWithValue(props, defaults, contexts),\n }\n}\n\nexport function extendPropsWithContextInClassComponent<Props>(\n props: Props,\n defaults: DefaultsProps = {},\n ...contexts: Contexts\n) {\n return {\n ...props,\n ...reduceContextWithValue(props, defaults, contexts, {\n onlyMergeExistingProps: true,\n }),\n }\n}\n\nexport function reduceContext(contexts: Contexts) {\n return contexts.reduce((acc, cur) => {\n if (cur) {\n acc = { ...acc, ...cur }\n }\n return acc\n }, {})\n}\n\nfunction reduceContextWithValue<Props>(\n props: Props,\n defaults: DefaultsProps,\n contexts: Contexts,\n { onlyMergeExistingProps = false } = {}\n) {\n const context = reduceContext(contexts)\n return Object.entries(context).reduce((acc, [key, value]) => {\n if (\n // An optional check to only merge existing props from context\n !onlyMergeExistingProps ||\n Object.prototype.hasOwnProperty.call(props, key)\n ) {\n if (props[key] === defaults?.[key]) {\n // Existing props can only be overridden if it has default value\n // But a prop that does not exist will also be merged (as long as the default value is \"undefined\")\n acc[key] = value\n }\n }\n\n return acc\n }, {})\n}\n"],"mappings":";;;AAcA,OAAO,SAASA,sBAAsBA,CACpCC,KAAY,EAGZ;EAAA,IAFAC,QAAuB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAG5BF,KAAK,GAAAK,aAAA,CAAAA,aAAA,KAAQJ,QAAQ,GAAKD,KAAK,CAAE;EAAA,SAAAM,IAAA,GAAAJ,SAAA,CAAAC,MAAA,EAF9BI,QAAQ,OAAAC,KAAA,CAAAF,IAAA,OAAAA,IAAA,WAAAG,IAAA,MAAAA,IAAA,GAAAH,IAAA,EAAAG,IAAA;IAARF,QAAQ,CAAAE,IAAA,QAAAP,SAAA,CAAAO,IAAA;EAAA;EAGX,OAAAJ,aAAA,CAAAA,aAAA,KACKL,KAAK,GACLU,sBAAsB,CAACV,KAAK,EAAEC,QAAQ,EAAEM,QAAQ,CAAC;AAExD;AAEA,OAAO,SAASI,sCAAsCA,CACpDX,KAAY,EAGZ;EAAA,IAFAC,QAAuB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAAA,SAAAU,KAAA,GAAAV,SAAA,CAAAC,MAAA,EACzBI,QAAQ,OAAAC,KAAA,CAAAI,KAAA,OAAAA,KAAA,WAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;IAARN,QAAQ,CAAAM,KAAA,QAAAX,SAAA,CAAAW,KAAA;EAAA;EAEX,OAAAR,aAAA,CAAAA,aAAA,KACKL,KAAK,GACLU,sBAAsB,CAACV,KAAK,EAAEC,QAAQ,EAAEM,QAAQ,EAAE;IACnDO,sBAAsB,EAAE;EAC1B,CAAC,CAAC;AAEN;AAEA,OAAO,SAASC,aAAaA,CAACR,QAAkB,EAAE;EAChD,OAAOA,QAAQ,CAACS,MAAM,CAAC,CAACC,GAAG,EAAEC,GAAG,KAAK;IACnC,IAAIA,GAAG,EAAE;MACPD,GAAG,GAAAZ,aAAA,CAAAA,aAAA,KAAQY,GAAG,GAAKC,GAAG,CAAE;IAC1B;IACA,OAAOD,GAAG;EACZ,CAAC,EAAE,CAAC,CAAC,CAAC;AACR;AAEA,SAASP,sBAAsBA,CAC7BV,KAAY,EACZC,QAAuB,EACvBM,QAAkB,EAElB;EAAA,IADA;IAAEO,sBAAsB,GAAG;EAAM,CAAC,GAAAZ,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAEvC,MAAMiB,OAAO,GAAGJ,aAAa,CAACR,QAAQ,CAAC;EACvC,OAAOa,MAAM,CAACC,OAAO,CAACF,OAAO,CAAC,CAACH,MAAM,CAAC,CAACC,GAAG,EAAAK,IAAA,KAAmB;IAAA,IAAjB,CAACC,GAAG,EAAEC,KAAK,CAAC,GAAAF,IAAA;IACtD,IAEE,CAACR,sBAAsB,IACvBM,MAAM,CAACK,SAAS,CAACC,cAAc,CAACC,IAAI,CAAC3B,KAAK,EAAEuB,GAAG,CAAC,EAChD;MACA,IAAIvB,KAAK,CAACuB,GAAG,CAAC,MAAKtB,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAGsB,GAAG,CAAC,GAAE;QAGlCN,GAAG,CAACM,GAAG,CAAC,GAAGC,KAAK;MAClB;IACF;IAEA,OAAOP,GAAG;EACZ,CAAC,EAAE,CAAC,CAAC,CAAC;AACR"}
|
|
@@ -19,6 +19,7 @@ export declare function filterValidProps<T extends Record<string, unknown>>(prop
|
|
|
19
19
|
export declare function pickFormElementProps(props: FormElementProps, excludeProps?: Record<string, unknown>): Record<string, unknown>;
|
|
20
20
|
export declare function prepareFormElementContext<Props>(props: Props & FormElementProps): Props & FormElementProps;
|
|
21
21
|
export type FormElementProps = {
|
|
22
|
+
disabled?: boolean;
|
|
22
23
|
vertical?: boolean;
|
|
23
24
|
labelDirection?: 'vertical' | 'horizontal';
|
|
24
25
|
/** @deprecated use labelDirection instead */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filterValidProps.js","names":["isTrue","filterValidProps","props","validKeys","excludeKeys","res","o","Object","prototype","hasOwnProperty","key","call","pickFormElementProps","excludeProps","validFormElementProps","prepareFormElementContext","vertical","labelDirection","label_direction","skeleton","disabled"],"sources":["../../../../src/shared/helpers/filterValidProps.tsx"],"sourcesContent":["import { isTrue } from '../component-helper'\n\n/**\n * Filters out props from a given object/context\n * It returns a new object, with keys defined in validKeys\n *\n * @param props object of component properties\n * @param validKeys object with keys that should get returned\n * @param excludeKeys object with keys that should be excluded\n * @returns filtered properties\n */\nexport function filterValidProps<T extends Record<string, unknown>>(\n props: T | any,\n validKeys?: Record<string, unknown>,\n excludeKeys?: Record<string, unknown>\n): T {\n const res = {}\n const o = Object.prototype.hasOwnProperty\n\n for (const key in props) {\n if (\n (!validKeys || (validKeys && o.call(validKeys, key))) &&\n (!excludeKeys || (excludeKeys && !o.call(excludeKeys, key)))\n ) {\n res[key] = props[key]\n }\n }\n\n return res as T\n}\n\n/**\n * Filters out props from a given object/context\n * It returns a new object, with keys defined in validKeys\n *\n * @param props object of form component properties\n * @param excludeProps object with keys that should be excluded\n * @returns filtered properties\n */\nexport function pickFormElementProps(\n props: FormElementProps,\n excludeProps?: Record<string, unknown>\n) {\n return filterValidProps(props, validFormElementProps, excludeProps)\n}\nexport function prepareFormElementContext<Props>(\n props: Props & FormElementProps\n) {\n if (isTrue(props.vertical)) {\n if (typeof props.labelDirection === 'undefined') {\n props.labelDirection = 'vertical'\n }\n if (typeof props.label_direction === 'undefined') {\n props.label_direction = 'vertical'\n }\n }\n return props\n}\nexport type FormElementProps = {\n vertical?: boolean\n labelDirection?: 'vertical' | 'horizontal'\n\n /** @deprecated use labelDirection instead */\n label_direction?: 'vertical' | 'horizontal'\n}\nconst validFormElementProps = {\n skeleton: null,\n disabled: null,\n vertical: null,\n labelDirection: null,\n\n /** @deprecated use labelDirection instead */\n label_direction: null,\n}\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAW5C,OAAO,SAASC,gBAAgBA,CAC9BC,KAAc,EACdC,SAAmC,EACnCC,WAAqC,EAClC;EACH,MAAMC,GAAG,GAAG,CAAC,CAAC;EACd,MAAMC,CAAC,GAAGC,MAAM,CAACC,SAAS,CAACC,cAAc;EAEzC,KAAK,MAAMC,GAAG,IAAIR,KAAK,EAAE;IACvB,IACE,CAAC,CAACC,SAAS,IAAKA,SAAS,IAAIG,CAAC,CAACK,IAAI,CAACR,SAAS,EAAEO,GAAG,CAAE,MACnD,CAACN,WAAW,IAAKA,WAAW,IAAI,CAACE,CAAC,CAACK,IAAI,CAACP,WAAW,EAAEM,GAAG,CAAE,CAAC,EAC5D;MACAL,GAAG,CAACK,GAAG,CAAC,GAAGR,KAAK,CAACQ,GAAG,CAAC;IACvB;EACF;EAEA,OAAOL,GAAG;AACZ;AAUA,OAAO,SAASO,oBAAoBA,CAClCV,KAAuB,EACvBW,YAAsC,EACtC;EACA,OAAOZ,gBAAgB,CAACC,KAAK,EAAEY,qBAAqB,EAAED,YAAY,CAAC;AACrE;AACA,OAAO,SAASE,yBAAyBA,CACvCb,KAA+B,EAC/B;EACA,IAAIF,MAAM,CAACE,KAAK,CAACc,QAAQ,CAAC,EAAE;IAC1B,IAAI,OAAOd,KAAK,CAACe,cAAc,KAAK,WAAW,EAAE;MAC/Cf,KAAK,CAACe,cAAc,GAAG,UAAU;IACnC;IACA,IAAI,OAAOf,KAAK,CAACgB,eAAe,KAAK,WAAW,EAAE;MAChDhB,KAAK,CAACgB,eAAe,GAAG,UAAU;IACpC;EACF;EACA,OAAOhB,KAAK;AACd;
|
|
1
|
+
{"version":3,"file":"filterValidProps.js","names":["isTrue","filterValidProps","props","validKeys","excludeKeys","res","o","Object","prototype","hasOwnProperty","key","call","pickFormElementProps","excludeProps","validFormElementProps","prepareFormElementContext","vertical","labelDirection","label_direction","skeleton","disabled"],"sources":["../../../../src/shared/helpers/filterValidProps.tsx"],"sourcesContent":["import { isTrue } from '../component-helper'\n\n/**\n * Filters out props from a given object/context\n * It returns a new object, with keys defined in validKeys\n *\n * @param props object of component properties\n * @param validKeys object with keys that should get returned\n * @param excludeKeys object with keys that should be excluded\n * @returns filtered properties\n */\nexport function filterValidProps<T extends Record<string, unknown>>(\n props: T | any,\n validKeys?: Record<string, unknown>,\n excludeKeys?: Record<string, unknown>\n): T {\n const res = {}\n const o = Object.prototype.hasOwnProperty\n\n for (const key in props) {\n if (\n (!validKeys || (validKeys && o.call(validKeys, key))) &&\n (!excludeKeys || (excludeKeys && !o.call(excludeKeys, key)))\n ) {\n res[key] = props[key]\n }\n }\n\n return res as T\n}\n\n/**\n * Filters out props from a given object/context\n * It returns a new object, with keys defined in validKeys\n *\n * @param props object of form component properties\n * @param excludeProps object with keys that should be excluded\n * @returns filtered properties\n */\nexport function pickFormElementProps(\n props: FormElementProps,\n excludeProps?: Record<string, unknown>\n) {\n return filterValidProps(props, validFormElementProps, excludeProps)\n}\nexport function prepareFormElementContext<Props>(\n props: Props & FormElementProps\n) {\n if (isTrue(props.vertical)) {\n if (typeof props.labelDirection === 'undefined') {\n props.labelDirection = 'vertical'\n }\n if (typeof props.label_direction === 'undefined') {\n props.label_direction = 'vertical'\n }\n }\n return props\n}\nexport type FormElementProps = {\n disabled?: boolean\n vertical?: boolean\n labelDirection?: 'vertical' | 'horizontal'\n\n /** @deprecated use labelDirection instead */\n label_direction?: 'vertical' | 'horizontal'\n}\nconst validFormElementProps = {\n skeleton: null,\n disabled: null,\n vertical: null,\n labelDirection: null,\n\n /** @deprecated use labelDirection instead */\n label_direction: null,\n}\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAW5C,OAAO,SAASC,gBAAgBA,CAC9BC,KAAc,EACdC,SAAmC,EACnCC,WAAqC,EAClC;EACH,MAAMC,GAAG,GAAG,CAAC,CAAC;EACd,MAAMC,CAAC,GAAGC,MAAM,CAACC,SAAS,CAACC,cAAc;EAEzC,KAAK,MAAMC,GAAG,IAAIR,KAAK,EAAE;IACvB,IACE,CAAC,CAACC,SAAS,IAAKA,SAAS,IAAIG,CAAC,CAACK,IAAI,CAACR,SAAS,EAAEO,GAAG,CAAE,MACnD,CAACN,WAAW,IAAKA,WAAW,IAAI,CAACE,CAAC,CAACK,IAAI,CAACP,WAAW,EAAEM,GAAG,CAAE,CAAC,EAC5D;MACAL,GAAG,CAACK,GAAG,CAAC,GAAGR,KAAK,CAACQ,GAAG,CAAC;IACvB;EACF;EAEA,OAAOL,GAAG;AACZ;AAUA,OAAO,SAASO,oBAAoBA,CAClCV,KAAuB,EACvBW,YAAsC,EACtC;EACA,OAAOZ,gBAAgB,CAACC,KAAK,EAAEY,qBAAqB,EAAED,YAAY,CAAC;AACrE;AACA,OAAO,SAASE,yBAAyBA,CACvCb,KAA+B,EAC/B;EACA,IAAIF,MAAM,CAACE,KAAK,CAACc,QAAQ,CAAC,EAAE;IAC1B,IAAI,OAAOd,KAAK,CAACe,cAAc,KAAK,WAAW,EAAE;MAC/Cf,KAAK,CAACe,cAAc,GAAG,UAAU;IACnC;IACA,IAAI,OAAOf,KAAK,CAACgB,eAAe,KAAK,WAAW,EAAE;MAChDhB,KAAK,CAACgB,eAAe,GAAG,UAAU;IACpC;EACF;EACA,OAAOhB,KAAK;AACd;AASA,MAAMY,qBAAqB,GAAG;EAC5BK,QAAQ,EAAE,IAAI;EACdC,QAAQ,EAAE,IAAI;EACdJ,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE,IAAI;EAGpBC,eAAe,EAAE;AACnB,CAAC"}
|
|
@@ -2,14 +2,25 @@ export function runCssVersionMismatchWarning() {
|
|
|
2
2
|
try {
|
|
3
3
|
if (typeof document !== 'undefined' && process.env.NODE_ENV === 'development') {
|
|
4
4
|
const runCheck = () => {
|
|
5
|
-
var _window$Eufemia
|
|
5
|
+
var _window$Eufemia;
|
|
6
6
|
const jsVersion = (_window$Eufemia = window.Eufemia) === null || _window$Eufemia === void 0 ? void 0 : _window$Eufemia.version;
|
|
7
7
|
if (jsVersion === '__VERSION__') {
|
|
8
8
|
return;
|
|
9
9
|
}
|
|
10
|
-
const
|
|
10
|
+
const getCssVersion = element => {
|
|
11
|
+
var _window$getComputedSt;
|
|
12
|
+
console.log(element);
|
|
13
|
+
return element ? (_window$getComputedSt = window.getComputedStyle(element).getPropertyValue('--eufemia-version')) === null || _window$getComputedSt === void 0 ? void 0 : _window$getComputedSt.replace(/["']/g, '') : undefined;
|
|
14
|
+
};
|
|
15
|
+
const cssVersion = getCssVersion(document.body) || getCssVersion(document.getElementsByClassName('dnb-core-style')[0]) || 'unknown';
|
|
11
16
|
if (cssVersion !== jsVersion) {
|
|
12
|
-
|
|
17
|
+
const isUnknown = cssVersion === 'unknown';
|
|
18
|
+
const consoleArguments = [`Eufemia CSS and JS version mismatch!${isUnknown ? ' CSS version is either not loaded (are you perhaps using lazy loading?), or older than "10.25.0"' : ''}`, `\nCSS: ${cssVersion}`, `\nJS: ${jsVersion}`];
|
|
19
|
+
if (isUnknown) {
|
|
20
|
+
console.warn(...consoleArguments);
|
|
21
|
+
} else {
|
|
22
|
+
console.error(...consoleArguments);
|
|
23
|
+
}
|
|
13
24
|
}
|
|
14
25
|
};
|
|
15
26
|
if (document.readyState === 'complete') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runCssVersionMismatchWarning.js","names":["runCssVersionMismatchWarning","document","process","env","NODE_ENV","runCheck","_window$Eufemia","_window$getComputedSt","
|
|
1
|
+
{"version":3,"file":"runCssVersionMismatchWarning.js","names":["runCssVersionMismatchWarning","document","process","env","NODE_ENV","runCheck","_window$Eufemia","jsVersion","window","Eufemia","version","getCssVersion","element","_window$getComputedSt","console","log","getComputedStyle","getPropertyValue","replace","undefined","cssVersion","body","getElementsByClassName","isUnknown","consoleArguments","warn","error","readyState","requestAnimationFrame","addEventListener"],"sources":["../../../../src/shared/helpers/runCssVersionMismatchWarning.ts"],"sourcesContent":["declare global {\n interface Window {\n Eufemia?: {\n version: string\n }\n }\n}\n\nexport function runCssVersionMismatchWarning() {\n try {\n if (\n typeof document !== 'undefined' &&\n process.env.NODE_ENV === 'development'\n ) {\n const runCheck = () => {\n const jsVersion = window.Eufemia?.version\n\n if (jsVersion === '__VERSION__') {\n return\n }\n\n const getCssVersion = (element) => {\n console.log(element)\n return element\n ? window\n .getComputedStyle(element)\n .getPropertyValue('--eufemia-version')\n ?.replace(/[\"']/g, '')\n : undefined\n }\n\n const cssVersion =\n getCssVersion(document.body) ||\n getCssVersion(\n document.getElementsByClassName('dnb-core-style')[0]\n ) ||\n 'unknown'\n\n if (cssVersion !== jsVersion) {\n const isUnknown = cssVersion === 'unknown'\n\n const consoleArguments = [\n `Eufemia CSS and JS version mismatch!${\n isUnknown\n ? ' CSS version is either not loaded (are you perhaps using lazy loading?), or older than \"10.25.0\"'\n : ''\n }`,\n `\\nCSS: ${cssVersion}`,\n `\\nJS: ${jsVersion}`,\n ]\n\n if (isUnknown) {\n console.warn(...consoleArguments)\n } else {\n console.error(...consoleArguments)\n }\n }\n }\n\n if (document.readyState === 'complete') {\n window.requestAnimationFrame(runCheck)\n } else {\n window.addEventListener('load', runCheck)\n }\n }\n } catch (error) {\n console.error(error)\n }\n}\n"],"mappings":"AAQA,OAAO,SAASA,4BAA4BA,CAAA,EAAG;EAC7C,IAAI;IACF,IACE,OAAOC,QAAQ,KAAK,WAAW,IAC/BC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,EACtC;MACA,MAAMC,QAAQ,GAAGA,CAAA,KAAM;QAAA,IAAAC,eAAA;QACrB,MAAMC,SAAS,IAAAD,eAAA,GAAGE,MAAM,CAACC,OAAO,cAAAH,eAAA,uBAAdA,eAAA,CAAgBI,OAAO;QAEzC,IAAIH,SAAS,KAAK,aAAa,EAAE;UAC/B;QACF;QAEA,MAAMI,aAAa,GAAIC,OAAO,IAAK;UAAA,IAAAC,qBAAA;UACjCC,OAAO,CAACC,GAAG,CAACH,OAAO,CAAC;UACpB,OAAOA,OAAO,IAAAC,qBAAA,GACVL,MAAM,CACHQ,gBAAgB,CAACJ,OAAO,CAAC,CACzBK,gBAAgB,CAAC,mBAAmB,CAAC,cAAAJ,qBAAA,uBAFxCA,qBAAA,CAGIK,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,GACxBC,SAAS;QACf,CAAC;QAED,MAAMC,UAAU,GACdT,aAAa,CAACV,QAAQ,CAACoB,IAAI,CAAC,IAC5BV,aAAa,CACXV,QAAQ,CAACqB,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CACrD,CAAC,IACD,SAAS;QAEX,IAAIF,UAAU,KAAKb,SAAS,EAAE;UAC5B,MAAMgB,SAAS,GAAGH,UAAU,KAAK,SAAS;UAE1C,MAAMI,gBAAgB,GAAG,CACtB,uCACCD,SAAS,GACL,kGAAkG,GAClG,EACL,EAAC,EACD,UAASH,UAAW,EAAC,EACrB,SAAQb,SAAU,EAAC,CACrB;UAED,IAAIgB,SAAS,EAAE;YACbT,OAAO,CAACW,IAAI,CAAC,GAAGD,gBAAgB,CAAC;UACnC,CAAC,MAAM;YACLV,OAAO,CAACY,KAAK,CAAC,GAAGF,gBAAgB,CAAC;UACpC;QACF;MACF,CAAC;MAED,IAAIvB,QAAQ,CAAC0B,UAAU,KAAK,UAAU,EAAE;QACtCnB,MAAM,CAACoB,qBAAqB,CAACvB,QAAQ,CAAC;MACxC,CAAC,MAAM;QACLG,MAAM,CAACqB,gBAAgB,CAAC,MAAM,EAAExB,QAAQ,CAAC;MAC3C;IACF;EACF,CAAC,CAAC,OAAOqB,KAAK,EAAE;IACdZ,OAAO,CAACY,KAAK,CAACA,KAAK,CAAC;EACtB;AACF"}
|
package/style/core/scopes.scss
CHANGED
package/style/dnb-ui-basis.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@charset "UTF-8";html{font-size:100%}html:not([data-visual-test]){scroll-behavior:smooth}@supports (-webkit-touch-callout:none){@supports (font:-apple-system-body){html{font:-apple-system-body}}}html[xmlns="http://www.w3.org/1999/xhtml"] a:hover{-webkit-text-decoration:none;text-decoration:none}html[xmlns="http://www.w3.org/1999/xhtml"] .dnb-anchor--active{color:var(--color-mint-green)!important}html[xmlns="http://www.w3.org/1999/xhtml"] .dnb-anchor--contrast:not(:hover){color:var(--color-white)!important}html[xmlns="http://www.w3.org/1999/xhtml"] a.dnb-button--primary{color:var(--color-white)}html[xmlns="http://www.w3.org/1999/xhtml"] ul{list-style:initial}html[xmlns="http://www.w3.org/1999/xhtml"] p{background-color:initial;overflow:initial;text-align:inherit}html[xmlns="http://www.w3.org/1999/xhtml"] i{font-style:italic}html[xmlns="http://www.w3.org/1999/xhtml"] #column_left,html[xmlns="http://www.w3.org/1999/xhtml"] #root{width:100%}html[xmlns="http://www.w3.org/1999/xhtml"] body#dnbLayoutDefault #wrapper,html[xmlns="http://www.w3.org/1999/xhtml"] body#dnbLayoutDefaultStartPage #wrapper{max-width:60rem;width:100%}html[xmlns="http://www.w3.org/1999/xhtml"] #column_content{box-shadow:none}body{margin:0}.dnb-core-style{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(0,0,0,0);-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;--eufemia-version:"10.
|
|
1
|
+
@charset "UTF-8";html{font-size:100%}html:not([data-visual-test]){scroll-behavior:smooth}@supports (-webkit-touch-callout:none){@supports (font:-apple-system-body){html{font:-apple-system-body}}}html[xmlns="http://www.w3.org/1999/xhtml"] a:hover{-webkit-text-decoration:none;text-decoration:none}html[xmlns="http://www.w3.org/1999/xhtml"] .dnb-anchor--active{color:var(--color-mint-green)!important}html[xmlns="http://www.w3.org/1999/xhtml"] .dnb-anchor--contrast:not(:hover){color:var(--color-white)!important}html[xmlns="http://www.w3.org/1999/xhtml"] a.dnb-button--primary{color:var(--color-white)}html[xmlns="http://www.w3.org/1999/xhtml"] ul{list-style:initial}html[xmlns="http://www.w3.org/1999/xhtml"] p{background-color:initial;overflow:initial;text-align:inherit}html[xmlns="http://www.w3.org/1999/xhtml"] i{font-style:italic}html[xmlns="http://www.w3.org/1999/xhtml"] #column_left,html[xmlns="http://www.w3.org/1999/xhtml"] #root{width:100%}html[xmlns="http://www.w3.org/1999/xhtml"] body#dnbLayoutDefault #wrapper,html[xmlns="http://www.w3.org/1999/xhtml"] body#dnbLayoutDefaultStartPage #wrapper{max-width:60rem;width:100%}html[xmlns="http://www.w3.org/1999/xhtml"] #column_content{box-shadow:none}body{margin:0}.dnb-core-style{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(0,0,0,0);-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;--eufemia-version:"10.30.0";color:var(--theme-color-body,var(--color-black-80,#333));font-family:var(--font-family-default);font-size:var(--font-size-small);font-style:normal;font-weight:var(--font-weight-basis);line-height:var(--line-height-basis);tab-size:4;-moz-tab-size:4;word-break:break-word}.dnb-core-style *,.dnb-core-style :after,.dnb-core-style :before{background-repeat:no-repeat;box-sizing:border-box}.dnb-core-style :after,.dnb-core-style :before{text-decoration:inherit;vertical-align:inherit}.dnb-core-style hr{height:0;overflow:visible}.dnb-core-style main{display:block}.dnb-core-style nav ol,.dnb-core-style nav ul{list-style:none}.dnb-core-style abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.dnb-core-style b,.dnb-core-style strong{font-weight:bolder}.dnb-core-style code,.dnb-core-style kbd,.dnb-core-style pre,.dnb-core-style samp{font-family:var(--font-family-monospace)}.dnb-core-style ::selection{background-color:#b3d4fc;color:#000;text-shadow:none}.dnb-core-style audio,.dnb-core-style canvas,.dnb-core-style iframe,.dnb-core-style img,.dnb-core-style svg,.dnb-core-style video{vertical-align:middle}.dnb-core-style audio,.dnb-core-style video{display:inline-block}.dnb-core-style audio:not([controls]){display:none;height:0}.dnb-core-style img{border-style:none}.dnb-core-style svg:not([fill]){fill:currentcolor}.dnb-core-style svg:not(:root){overflow:hidden}.dnb-core-style table{border-collapse:collapse}.dnb-core-style button,.dnb-core-style input,.dnb-core-style select,.dnb-core-style textarea{font-family:inherit;font-size:inherit;line-height:inherit}.dnb-core-style button,.dnb-core-style figure,.dnb-core-style input,.dnb-core-style select{margin:0}.dnb-core-style button{overflow:visible;text-transform:none}.dnb-core-style fieldset{padding:.35rem .75rem .625rem}.dnb-core-style input{overflow:visible;word-break:normal}.dnb-core-style legend{color:inherit;display:table;max-width:100%;white-space:normal}.dnb-core-style progress{display:inline-block;vertical-align:baseline}.dnb-core-style select{text-transform:none}.dnb-core-style textarea{overflow:auto;resize:vertical}.dnb-core-style [type=checkbox],.dnb-core-style [type=radio]{padding:0}.dnb-core-style input[type=search]{-webkit-appearance:textfield;appearance:textfield;outline-offset:-2px}.dnb-core-style ::-webkit-inner-spin-button,.dnb-core-style ::-webkit-outer-spin-button{height:auto}.dnb-core-style ::input-placeholder{color:inherit;opacity:.54}.dnb-core-style ::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.dnb-core-style ::-webkit-file-upload-button{background-color:transparent;border:none;font:inherit}.dnb-core-style ::-moz-focus-inner{border-style:none;padding:0}.dnb-core-style details{display:block}.dnb-core-style summary{display:list-item}.dnb-core-style canvas{display:inline-block}.dnb-core-style template{display:none}.dnb-core-style [tabindex],.dnb-core-style a,.dnb-core-style area,.dnb-core-style button,.dnb-core-style input,.dnb-core-style label,.dnb-core-style select,.dnb-core-style summary,.dnb-core-style textarea{touch-action:manipulation}.dnb-core-style [hidden]{display:none}.dnb-core-style [aria-busy=true]{cursor:progress}.dnb-core-style [aria-controls]:not(input){cursor:pointer}.dnb-core-style [aria-disabled=true],.dnb-core-style [disabled]{cursor:not-allowed}.dnb-core-style [aria-hidden=false][hidden]:not(:focus){clip:rect(0,0,0,0);display:inherit;position:absolute}@media print{.dnb-core-style{background-color:#fff;color:#000}}.dnb-core-style .eufemia-theme{color:var(--theme-color-body,var(--color-black-80,#333));font-family:var(--font-family-default);font-size:var(--font-size-small);font-style:normal;font-weight:var(--font-weight-basis);line-height:var(--line-height-basis)}.dnb-no-focus,.dnb-tab-focus,.dnb-tab-focus:focus{outline:none}html[data-whatinput=keyboard] .dnb-tab-focus:focus{--border-color:var(--focus-ring-color);--border-width:var(--focus-ring-width);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-mouse-focus,.dnb-mouse-focus:focus{outline:none}html[data-whatinput=mouse] .dnb-mouse-focus:focus{box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-focus-ring,html[data-whatinput=mouse] .dnb-mouse-focus:focus{--border-color:var(--focus-ring-color);--border-width:var(--focus-ring-width);border-color:transparent}.dnb-focus-ring{box-shadow:0 0 0 var(--border-width) var(--border-color)!important}.dnb-scrollbar-appearance{-webkit-overflow-scrolling:touch;-ms-overflow-style:auto;scrollbar-color:var(--scrollbar-thumb-color,#888) transparent}@supports not (scrollbar-color:auto){.dnb-scrollbar-appearance::-webkit-scrollbar{background-color:var(--scrollbar-track-color,#eee);border-radius:var(--scrollbar-thumb-width,.5rem)}.dnb-scrollbar-appearance::-webkit-scrollbar:vertical{width:var(--scrollbar-track-width,.5rem)}.dnb-scrollbar-appearance::-webkit-scrollbar:horizontal{height:var(--scrollbar-track-width,.5rem)}.dnb-scrollbar-appearance::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb-color,#888);border-radius:var(--scrollbar-thumb-width,.5rem)}.dnb-scrollbar-appearance::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover-color,#666)}}.dnb-skip-link{opacity:.3;position:absolute;top:-100vh;transition:opacity .3s ease-out;z-index:0}.dnb-skip-link--active,.dnb-skip-link:focus{background-color:transparent;border:none;border-radius:0;box-shadow:none;color:var(--skip-link-color);font-size:var(--font-size-basis);left:40%;margin:0;outline:none;padding:.5rem 1rem;position:fixed;text-align:center;-webkit-text-decoration:none;text-decoration:none;top:5%;user-select:none;-webkit-user-select:none;white-space:nowrap;z-index:9999}.dnb-skip-link--active:after,.dnb-skip-link:focus:after{background-color:hsla(0,0%,100%,.85);box-shadow:150vw 150vh 0 0 hsla(0,0%,100%,.85);content:"";height:150vh;left:-200vw;position:absolute;top:-200vh;width:150vw;z-index:-2}.dnb-skip-link--active:before,.dnb-skip-link:focus:before{background-color:var(--skip-link-background);border-radius:1.5rem;content:"";height:100%;left:0;outline:none;position:absolute;top:0;width:100%;z-index:-1}html[data-whatinput=mouse] .dnb-skip-link--active:before,html[data-whatinput=mouse] .dnb-skip-link:focus:before{--border-color:var(--focus-ring-color);--border-width:var(--focus-ring-width);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-skip-link--active:hover:before,.dnb-skip-link:focus:hover:before{background-color:var(--skip-link-background--hover)}.dnb-skip-link--active:active:before,.dnb-skip-link:focus:active:before{background-color:var(--skip-link-background--active)}.dnb-skip-link--active:focus:not(:active):before,.dnb-skip-link:focus:focus:not(:active):before{outline:none}html[data-whatinput=keyboard] .dnb-skip-link--active:focus:not(:active):before,html[data-whatinput=keyboard] .dnb-skip-link:focus:focus:not(:active):before{--border-color:var(--focus-ring-color);--border-width:var(--focus-ring-width);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-skip-link--active:focus,.dnb-skip-link:focus:focus{opacity:1}.dnb-skip-link--active:hover,.dnb-skip-link:focus:hover{background-color:transparent;box-shadow:none;color:var(--skip-link-color--hover)}.dnb-skip-link--active:focus:not(:hover):not(:active),.dnb-skip-link:focus:focus:not(:hover):not(:active){background-color:transparent;box-shadow:none;color:var(--skip-link-color)}.dnb-skip-link--active:active,.dnb-skip-link:focus:active{background-color:transparent;color:var(--skip-link-color--active)}html[data-whatintent=touch] .dnb-skip-link{display:none}.dnb-alignment-helper,.dnb-alignment-helper:before{speak:none;display:inline-block;font-size:var(--font-size-small);height:0;width:0}.dnb-alignment-helper:before{content:""}.dnb-drop-shadow{box-shadow:var(--shadow-default)}.dnb-sr-only{-webkit-touch-callout:none!important;border:0!important;-webkit-clip-path:inset(50%)!important;clip-path:inset(50%)!important;margin:0!important;max-height:1px!important;max-width:1px!important;overflow:hidden!important;padding:0!important;pointer-events:none!important;position:absolute!important;-webkit-user-select:none!important;user-select:none!important;white-space:nowrap!important}.dnb-suffix{font-size:var(--font-size-basis);line-height:var(--line-height-basis);padding-left:.5rem;word-break:normal}
|
package/style/dnb-ui-body.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;cursor:default;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:var(--line-height-basis);-moz-tab-size:4;tab-size:4;word-break:break-word}body{margin:0}html{font-size:100%}html:not([data-visual-test]){scroll-behavior:smooth}@supports (-webkit-touch-callout:none){@supports (font:-apple-system-body){html{font:-apple-system-body}}}html[xmlns="http://www.w3.org/1999/xhtml"] a:hover{-webkit-text-decoration:none;text-decoration:none}html[xmlns="http://www.w3.org/1999/xhtml"] .dnb-anchor--active{color:var(--color-mint-green)!important}html[xmlns="http://www.w3.org/1999/xhtml"] .dnb-anchor--contrast:not(:hover){color:var(--color-white)!important}html[xmlns="http://www.w3.org/1999/xhtml"] a.dnb-button--primary{color:var(--color-white)}html[xmlns="http://www.w3.org/1999/xhtml"] ul{list-style:initial}html[xmlns="http://www.w3.org/1999/xhtml"] p{background-color:initial;overflow:initial;text-align:inherit}html[xmlns="http://www.w3.org/1999/xhtml"] i{font-style:italic}html[xmlns="http://www.w3.org/1999/xhtml"] #column_left,html[xmlns="http://www.w3.org/1999/xhtml"] #root{width:100%}html[xmlns="http://www.w3.org/1999/xhtml"] body#dnbLayoutDefault #wrapper,html[xmlns="http://www.w3.org/1999/xhtml"] body#dnbLayoutDefaultStartPage #wrapper{max-width:60rem;width:100%}html[xmlns="http://www.w3.org/1999/xhtml"] #column_content{box-shadow:none}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(0,0,0,0);-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;--eufemia-version:"10.
|
|
1
|
+
html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;cursor:default;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:var(--line-height-basis);-moz-tab-size:4;tab-size:4;word-break:break-word}body{margin:0}html{font-size:100%}html:not([data-visual-test]){scroll-behavior:smooth}@supports (-webkit-touch-callout:none){@supports (font:-apple-system-body){html{font:-apple-system-body}}}html[xmlns="http://www.w3.org/1999/xhtml"] a:hover{-webkit-text-decoration:none;text-decoration:none}html[xmlns="http://www.w3.org/1999/xhtml"] .dnb-anchor--active{color:var(--color-mint-green)!important}html[xmlns="http://www.w3.org/1999/xhtml"] .dnb-anchor--contrast:not(:hover){color:var(--color-white)!important}html[xmlns="http://www.w3.org/1999/xhtml"] a.dnb-button--primary{color:var(--color-white)}html[xmlns="http://www.w3.org/1999/xhtml"] ul{list-style:initial}html[xmlns="http://www.w3.org/1999/xhtml"] p{background-color:initial;overflow:initial;text-align:inherit}html[xmlns="http://www.w3.org/1999/xhtml"] i{font-style:italic}html[xmlns="http://www.w3.org/1999/xhtml"] #column_left,html[xmlns="http://www.w3.org/1999/xhtml"] #root{width:100%}html[xmlns="http://www.w3.org/1999/xhtml"] body#dnbLayoutDefault #wrapper,html[xmlns="http://www.w3.org/1999/xhtml"] body#dnbLayoutDefaultStartPage #wrapper{max-width:60rem;width:100%}html[xmlns="http://www.w3.org/1999/xhtml"] #column_content{box-shadow:none}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(0,0,0,0);-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;--eufemia-version:"10.30.0";color:var(--theme-color-body,var(--color-black-80,#333));font-family:var(--font-family-default);font-size:var(--font-size-small);font-style:normal;font-weight:var(--font-weight-basis);line-height:var(--line-height-basis);tab-size:4;-moz-tab-size:4;word-break:break-word}body *,body :after,body :before{background-repeat:no-repeat;box-sizing:border-box}body :after,body :before{text-decoration:inherit;vertical-align:inherit}body hr{height:0;overflow:visible}body main{display:block}body nav ol,body nav ul{list-style:none}body abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}body b,body strong{font-weight:bolder}body code,body kbd,body pre,body samp{font-family:var(--font-family-monospace)}body ::selection{background-color:#b3d4fc;color:#000;text-shadow:none}body audio,body canvas,body iframe,body img,body svg,body video{vertical-align:middle}body audio,body video{display:inline-block}body audio:not([controls]){display:none;height:0}body img{border-style:none}body svg:not([fill]){fill:currentcolor}body svg:not(:root){overflow:hidden}body table{border-collapse:collapse}body button,body input,body select,body textarea{font-family:inherit;font-size:inherit;line-height:inherit}body button,body figure,body input,body select{margin:0}body button{overflow:visible;text-transform:none}body fieldset{padding:.35rem .75rem .625rem}body input{overflow:visible;word-break:normal}body legend{color:inherit;display:table;max-width:100%;white-space:normal}body progress{display:inline-block;vertical-align:baseline}body select{text-transform:none}body textarea{overflow:auto;resize:vertical}body [type=checkbox],body [type=radio]{padding:0}body input[type=search]{-webkit-appearance:textfield;appearance:textfield;outline-offset:-2px}body ::-webkit-inner-spin-button,body ::-webkit-outer-spin-button{height:auto}body ::input-placeholder{color:inherit;opacity:.54}body ::-webkit-search-decoration{-webkit-appearance:none;appearance:none}body ::-webkit-file-upload-button{background-color:transparent;border:none;font:inherit}body ::-moz-focus-inner{border-style:none;padding:0}body details{display:block}body summary{display:list-item}body canvas{display:inline-block}body template{display:none}body [tabindex],body a,body area,body button,body input,body label,body select,body summary,body textarea{touch-action:manipulation}body [hidden]{display:none}body [aria-busy=true]{cursor:progress}body [aria-controls]:not(input){cursor:pointer}body [aria-disabled=true],body [disabled]{cursor:not-allowed}body [aria-hidden=false][hidden]:not(:focus){clip:rect(0,0,0,0);display:inherit;position:absolute}@media print{body{background-color:#fff;color:#000}}body .eufemia-theme{color:var(--theme-color-body,var(--color-black-80,#333));font-family:var(--font-family-default);font-size:var(--font-size-small);font-style:normal;font-weight:var(--font-weight-basis);line-height:var(--line-height-basis)}
|