@dnb/eufemia 9.23.0-beta.3 → 9.23.1
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 +15 -11
- package/cjs/components/accordion/style/dnb-accordion.css +92 -0
- package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
- package/cjs/components/accordion/style/dnb-accordion.scss +3 -0
- package/cjs/components/autocomplete/style/dnb-autocomplete.css +1652 -64
- package/cjs/components/autocomplete/style/dnb-autocomplete.min.css +2 -2
- package/cjs/components/autocomplete/style/dnb-autocomplete.scss +1 -2
- package/cjs/components/button/style/dnb-button.css +192 -0
- package/cjs/components/button/style/dnb-button.min.css +1 -1
- package/cjs/components/button/style/dnb-button.scss +1 -1
- package/cjs/components/date-picker/style/dnb-date-picker.css +729 -0
- package/cjs/components/date-picker/style/dnb-date-picker.min.css +2 -2
- package/cjs/components/dialog/style/dnb-dialog.css +1883 -79
- package/cjs/components/dialog/style/dnb-dialog.min.css +1 -1
- package/cjs/components/dialog/style/dnb-dialog.scss +1 -1
- package/cjs/components/drawer/Drawer.js +2 -1
- package/cjs/components/drawer/style/dnb-drawer.css +1883 -79
- package/cjs/components/drawer/style/dnb-drawer.min.css +1 -1
- package/cjs/components/drawer/style/dnb-drawer.scss +1 -1
- package/cjs/components/dropdown/style/dnb-dropdown.css +192 -0
- package/cjs/components/dropdown/style/dnb-dropdown.min.css +1 -1
- package/cjs/components/dropdown/style/themes/dnb-dropdown-theme-ui.css +12 -11
- package/cjs/components/dropdown/style/themes/dnb-dropdown-theme-ui.min.css +1 -1
- package/cjs/components/dropdown/style/themes/dnb-dropdown-theme-ui.scss +4 -1
- package/cjs/components/global-error/style/dnb-global-error.css +192 -0
- package/cjs/components/global-error/style/dnb-global-error.min.css +1 -1
- package/cjs/components/global-status/style/dnb-global-status.css +192 -0
- package/cjs/components/global-status/style/dnb-global-status.min.css +1 -1
- package/cjs/components/help-button/style/dnb-help-button.css +773 -0
- package/cjs/components/help-button/style/dnb-help-button.min.css +1 -1
- package/cjs/components/help-button/style/dnb-help-button.scss +3 -0
- package/cjs/components/icon/Icon.d.ts +1 -1
- package/cjs/components/icon-primary/IconPrimary.d.ts +1 -1
- package/cjs/components/info-card/InfoCard.js +2 -2
- package/cjs/components/info-card/style/_info-card.scss +3 -0
- package/cjs/components/info-card/style/dnb-info-card.css +4 -1
- package/cjs/components/info-card/style/dnb-info-card.min.css +1 -1
- package/cjs/components/input/style/dnb-input.css +371 -0
- package/cjs/components/input/style/dnb-input.min.css +1 -1
- package/cjs/components/input/style/dnb-input.scss +1 -0
- package/cjs/components/input-masked/style/dnb-input-masked.css +371 -0
- package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/cjs/components/modal/style/_modal.scss +6 -0
- package/cjs/components/modal/style/dnb-modal.css +282 -1
- package/cjs/components/modal/style/dnb-modal.min.css +1 -1
- package/cjs/components/modal/style/dnb-modal.scss +1 -1
- package/cjs/components/pagination/style/dnb-pagination.css +192 -0
- package/cjs/components/pagination/style/dnb-pagination.min.css +1 -1
- package/cjs/components/slider/style/dnb-slider.css +192 -0
- package/cjs/components/slider/style/dnb-slider.min.css +1 -1
- package/cjs/components/step-indicator/style/dnb-step-indicator.css +773 -0
- package/cjs/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
- package/cjs/components/step-indicator/style/dnb-step-indicator.scss +2 -0
- package/cjs/components/tabs/Tabs.d.ts +6 -0
- package/cjs/components/tabs/Tabs.js +193 -162
- package/cjs/components/tabs/style/_tabs.scss +59 -61
- package/cjs/components/tabs/style/dnb-tabs.css +176 -180
- package/cjs/components/tabs/style/dnb-tabs.min.css +1 -1
- package/cjs/components/tag/style/_tag.scss +10 -6
- package/cjs/components/tag/style/dnb-tag.css +205 -5
- package/cjs/components/tag/style/dnb-tag.min.css +1 -1
- package/cjs/components/toggle-button/style/dnb-toggle-button.css +192 -0
- package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/cjs/components/toggle-button/style/dnb-toggle-button.scss +2 -0
- package/cjs/shared/Eufemia.js +1 -1
- package/cjs/shared/hooks/usePropsWithContext.js +1 -1
- package/cjs/style/dnb-ui-components.css +207 -187
- package/cjs/style/dnb-ui-components.min.css +3 -3
- package/cjs/style/themes/theme-open-banking/dnb-theme-open-banking.css +12 -11
- package/cjs/style/themes/theme-open-banking/dnb-theme-open-banking.min.css +1 -1
- package/cjs/style/themes/theme-ui/dnb-theme-ui.css +12 -11
- package/cjs/style/themes/theme-ui/dnb-theme-ui.min.css +1 -1
- package/components/accordion/style/dnb-accordion.css +92 -0
- package/components/accordion/style/dnb-accordion.min.css +1 -1
- package/components/accordion/style/dnb-accordion.scss +3 -0
- package/components/autocomplete/style/dnb-autocomplete.css +1652 -64
- package/components/autocomplete/style/dnb-autocomplete.min.css +2 -2
- package/components/autocomplete/style/dnb-autocomplete.scss +1 -2
- package/components/button/style/dnb-button.css +192 -0
- package/components/button/style/dnb-button.min.css +1 -1
- package/components/button/style/dnb-button.scss +1 -1
- package/components/date-picker/style/dnb-date-picker.css +729 -0
- package/components/date-picker/style/dnb-date-picker.min.css +2 -2
- package/components/dialog/style/dnb-dialog.css +1883 -79
- package/components/dialog/style/dnb-dialog.min.css +1 -1
- package/components/dialog/style/dnb-dialog.scss +1 -1
- package/components/drawer/Drawer.js +2 -1
- package/components/drawer/style/dnb-drawer.css +1883 -79
- package/components/drawer/style/dnb-drawer.min.css +1 -1
- package/components/drawer/style/dnb-drawer.scss +1 -1
- package/components/dropdown/style/dnb-dropdown.css +192 -0
- package/components/dropdown/style/dnb-dropdown.min.css +1 -1
- package/components/dropdown/style/themes/dnb-dropdown-theme-ui.css +12 -11
- package/components/dropdown/style/themes/dnb-dropdown-theme-ui.min.css +1 -1
- package/components/dropdown/style/themes/dnb-dropdown-theme-ui.scss +4 -1
- package/components/global-error/style/dnb-global-error.css +192 -0
- package/components/global-error/style/dnb-global-error.min.css +1 -1
- package/components/global-status/style/dnb-global-status.css +192 -0
- package/components/global-status/style/dnb-global-status.min.css +1 -1
- package/components/help-button/style/dnb-help-button.css +773 -0
- package/components/help-button/style/dnb-help-button.min.css +1 -1
- package/components/help-button/style/dnb-help-button.scss +3 -0
- package/components/icon/Icon.d.ts +1 -1
- package/components/icon-primary/IconPrimary.d.ts +1 -1
- package/components/info-card/InfoCard.js +2 -2
- package/components/info-card/style/_info-card.scss +3 -0
- package/components/info-card/style/dnb-info-card.css +4 -1
- package/components/info-card/style/dnb-info-card.min.css +1 -1
- package/components/input/style/dnb-input.css +371 -0
- package/components/input/style/dnb-input.min.css +1 -1
- package/components/input/style/dnb-input.scss +1 -0
- package/components/input-masked/style/dnb-input-masked.css +371 -0
- package/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/components/modal/style/_modal.scss +6 -0
- package/components/modal/style/dnb-modal.css +282 -1
- package/components/modal/style/dnb-modal.min.css +1 -1
- package/components/modal/style/dnb-modal.scss +1 -1
- package/components/pagination/style/dnb-pagination.css +192 -0
- package/components/pagination/style/dnb-pagination.min.css +1 -1
- package/components/slider/style/dnb-slider.css +192 -0
- package/components/slider/style/dnb-slider.min.css +1 -1
- package/components/step-indicator/style/dnb-step-indicator.css +773 -0
- package/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
- package/components/step-indicator/style/dnb-step-indicator.scss +2 -0
- package/components/tabs/Tabs.d.ts +6 -0
- package/components/tabs/Tabs.js +192 -161
- package/components/tabs/style/_tabs.scss +59 -61
- package/components/tabs/style/dnb-tabs.css +176 -180
- package/components/tabs/style/dnb-tabs.min.css +1 -1
- package/components/tag/style/_tag.scss +10 -6
- package/components/tag/style/dnb-tag.css +205 -5
- package/components/tag/style/dnb-tag.min.css +1 -1
- package/components/toggle-button/style/dnb-toggle-button.css +192 -0
- package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/components/toggle-button/style/dnb-toggle-button.scss +2 -0
- package/es/components/accordion/style/dnb-accordion.css +92 -0
- package/es/components/accordion/style/dnb-accordion.min.css +1 -1
- package/es/components/accordion/style/dnb-accordion.scss +3 -0
- package/es/components/autocomplete/style/dnb-autocomplete.css +1652 -64
- package/es/components/autocomplete/style/dnb-autocomplete.min.css +2 -2
- package/es/components/autocomplete/style/dnb-autocomplete.scss +1 -2
- package/es/components/button/style/dnb-button.css +192 -0
- package/es/components/button/style/dnb-button.min.css +1 -1
- package/es/components/button/style/dnb-button.scss +1 -1
- package/es/components/date-picker/style/dnb-date-picker.css +729 -0
- package/es/components/date-picker/style/dnb-date-picker.min.css +2 -2
- package/es/components/dialog/style/dnb-dialog.css +1883 -79
- package/es/components/dialog/style/dnb-dialog.min.css +1 -1
- package/es/components/dialog/style/dnb-dialog.scss +1 -1
- package/es/components/drawer/Drawer.js +2 -1
- package/es/components/drawer/style/dnb-drawer.css +1883 -79
- package/es/components/drawer/style/dnb-drawer.min.css +1 -1
- package/es/components/drawer/style/dnb-drawer.scss +1 -1
- package/es/components/dropdown/style/dnb-dropdown.css +192 -0
- package/es/components/dropdown/style/dnb-dropdown.min.css +1 -1
- package/es/components/dropdown/style/themes/dnb-dropdown-theme-ui.css +12 -11
- package/es/components/dropdown/style/themes/dnb-dropdown-theme-ui.min.css +1 -1
- package/es/components/dropdown/style/themes/dnb-dropdown-theme-ui.scss +4 -1
- package/es/components/global-error/style/dnb-global-error.css +192 -0
- package/es/components/global-error/style/dnb-global-error.min.css +1 -1
- package/es/components/global-status/style/dnb-global-status.css +192 -0
- package/es/components/global-status/style/dnb-global-status.min.css +1 -1
- package/es/components/help-button/style/dnb-help-button.css +773 -0
- package/es/components/help-button/style/dnb-help-button.min.css +1 -1
- package/es/components/help-button/style/dnb-help-button.scss +3 -0
- package/es/components/icon/Icon.d.ts +1 -1
- package/es/components/icon-primary/IconPrimary.d.ts +1 -1
- package/es/components/info-card/InfoCard.js +2 -2
- package/es/components/info-card/style/_info-card.scss +3 -0
- package/es/components/info-card/style/dnb-info-card.css +4 -1
- package/es/components/info-card/style/dnb-info-card.min.css +1 -1
- package/es/components/input/style/dnb-input.css +371 -0
- package/es/components/input/style/dnb-input.min.css +1 -1
- package/es/components/input/style/dnb-input.scss +1 -0
- package/es/components/input-masked/style/dnb-input-masked.css +371 -0
- package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
- package/es/components/modal/style/_modal.scss +6 -0
- package/es/components/modal/style/dnb-modal.css +282 -1
- package/es/components/modal/style/dnb-modal.min.css +1 -1
- package/es/components/modal/style/dnb-modal.scss +1 -1
- package/es/components/pagination/style/dnb-pagination.css +192 -0
- package/es/components/pagination/style/dnb-pagination.min.css +1 -1
- package/es/components/slider/style/dnb-slider.css +192 -0
- package/es/components/slider/style/dnb-slider.min.css +1 -1
- package/es/components/step-indicator/style/dnb-step-indicator.css +773 -0
- package/es/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
- package/es/components/step-indicator/style/dnb-step-indicator.scss +2 -0
- package/es/components/tabs/Tabs.d.ts +6 -0
- package/es/components/tabs/Tabs.js +134 -108
- package/es/components/tabs/style/_tabs.scss +59 -61
- package/es/components/tabs/style/dnb-tabs.css +176 -180
- package/es/components/tabs/style/dnb-tabs.min.css +1 -1
- package/es/components/tag/style/_tag.scss +10 -6
- package/es/components/tag/style/dnb-tag.css +205 -5
- package/es/components/tag/style/dnb-tag.min.css +1 -1
- package/es/components/toggle-button/style/dnb-toggle-button.css +192 -0
- package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
- package/es/components/toggle-button/style/dnb-toggle-button.scss +2 -0
- package/es/shared/Eufemia.js +1 -1
- package/es/shared/hooks/usePropsWithContext.js +1 -1
- package/es/style/dnb-ui-components.css +207 -187
- package/es/style/dnb-ui-components.min.css +3 -3
- package/es/style/themes/theme-open-banking/dnb-theme-open-banking.css +12 -11
- package/es/style/themes/theme-open-banking/dnb-theme-open-banking.min.css +1 -1
- package/es/style/themes/theme-ui/dnb-theme-ui.css +12 -11
- package/es/style/themes/theme-ui/dnb-theme-ui.min.css +1 -1
- package/esm/dnb-ui-basis.min.mjs +1 -1
- package/esm/dnb-ui-components.min.mjs +1 -1
- package/esm/dnb-ui-elements.min.mjs +1 -1
- package/esm/dnb-ui-extensions.min.mjs +1 -1
- package/esm/dnb-ui-lib.min.mjs +3 -3
- package/esm/dnb-ui-web-components.min.mjs +2 -2
- package/package.json +1 -1
- package/shared/Eufemia.js +1 -1
- package/shared/hooks/usePropsWithContext.js +1 -1
- package/style/dnb-ui-components.css +207 -187
- package/style/dnb-ui-components.min.css +3 -3
- package/style/themes/theme-open-banking/dnb-theme-open-banking.css +12 -11
- package/style/themes/theme-open-banking/dnb-theme-open-banking.min.css +1 -1
- package/style/themes/theme-ui/dnb-theme-ui.css +12 -11
- package/style/themes/theme-ui/dnb-theme-ui.min.css +1 -1
- package/umd/dnb-ui-basis.min.js +1 -1
- package/umd/dnb-ui-components.min.js +3 -3
- package/umd/dnb-ui-elements.min.js +1 -1
- package/umd/dnb-ui-extensions.min.js +1 -1
- package/umd/dnb-ui-lib.min.js +3 -3
- package/umd/dnb-ui-web-components.min.js +3 -3
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
.dnb-step-indicator{-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%;color:#333;color:var(--color-black-80,#333);font-family:DNB,sans-serif;font-family:var(--font-family-default);font-size:1rem;font-size:var(--font-size-small);font-style:normal;font-weight:400;font-weight:var(--font-weight-basis);line-height:1.5rem;line-height:var(--line-height-basis);margin:0;padding:0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;word-break:break-word}.dnb-step-indicator *,.dnb-step-indicator :after,.dnb-step-indicator :before{background-repeat:no-repeat;-webkit-box-sizing:border-box;box-sizing:border-box}.dnb-step-indicator :after,.dnb-step-indicator :before{text-decoration:inherit;vertical-align:inherit}.dnb-step-indicator-v1 .dnb-step-indicator{display:block;padding:0;position:relative;z-index:1}.dnb-step-indicator-v1 .dnb-step-indicator__list{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;list-style:none;margin:0;padding:0}.dnb-spacing .dnb-step-indicator-v1 .dnb-step-indicator__list,.dnb-spacing .dnb-step-indicator-v1 .dnb-step-indicator__list li{margin-bottom:0;margin-top:0}.dnb-step-indicator-v1 .dnb-step-indicator__item{-ms-flex-item-align:end;align-self:flex-end}.dnb-step-indicator-v1 .dnb-step-indicator__item-content{font-size:1.125rem;font-size:var(--font-size-basis)}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--link,.dnb-step-indicator-v1 .dnb-step-indicator__item-content--static,.dnb-step-indicator-v1 .dnb-step-indicator__item-content.dnb-anchor,.dnb-step-indicator-v1 .dnb-step-indicator__item-contenta{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;border-bottom:none;-webkit-box-shadow:none;box-shadow:none;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;height:100%;margin:0;padding:.25rem;position:relative;text-decoration:none;z-index:2}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--link.dnb-anchor{line-height:1.5rem;line-height:var(--line-height-basis)}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus[disabled],html:not([data-whatintent=touch]) .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus[disabled]{cursor:not-allowed}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]),html:not([data-whatintent=touch]) .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]){outline:none}html[data-whatinput=keyboard] .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]),html[data-whatinput=keyboard] html:not([data-whatintent=touch]) .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]){--border-color:var(--color-emerald-green);border-color:transparent;-webkit-box-shadow:0 0 0 .125rem var(--border-color);box-shadow:0 0 0 .125rem var(--border-color)}@media screen and (-ms-high-contrast:none){html[data-whatinput=keyboard] .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]),html[data-whatinput=keyboard] html:not([data-whatintent=touch]) .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]){-webkit-box-shadow:0 0 0 .125rem #14555a;box-shadow:0 0 0 .125rem #14555a;-webkit-box-shadow:0 0 0 .125rem var(--color-emerald-green);box-shadow:0 0 0 .125rem var(--color-emerald-green)}}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]):after,html:not([data-whatintent=touch]) .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]):after{content:none}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--number{padding-right:.25rem;white-space:nowrap}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--text{text-align:left}.dnb-step-indicator-v1 .dnb-step-indicator__item-content:after{border-radius:1.5px;bottom:0;content:"";height:3px;left:0;position:absolute;width:100%;z-index:1}.dnb-step-indicator-v1 .dnb-step-indicator:after{background-color:currentColor;bottom:0;-webkit-box-shadow:100vw 0 0 0 currentColor;box-shadow:100vw 0 0 0 currentColor;color:#000;color:var(--color-black);content:"";height:1px;left:-100vw;position:absolute;width:100vw;z-index:-1}@media screen and (min-width:50.1em){.dnb-step-indicator__sidebar{margin-right:3rem;margin-right:var(--spacing-x-large);max-width:20rem}.dnb-step-indicator__sidebar .dnb-step-indicator__item{min-width:320px}}@media screen and (max-width:50.1em){.dnb-step-indicator__sidebar--ssr-skeleton{height:5.5rem;overflow:hidden;visibility:hidden;width:0}}.dnb-step-indicator-v2 .dnb-step-indicator__list{list-style:none;margin:0;padding:0}.dnb-step-indicator-v2 .dnb-step-indicator__list,.dnb-step-indicator-v2 .dnb-step-indicator__trigger{-webkit-box-orient:vertical;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button,.dnb-step-indicator-v2 .dnb-step-indicator__trigger__button{-webkit-box-pack:justify;-ms-flex-pack:justify;border-radius:.25rem;justify-content:space-between;overflow:hidden;-webkit-transition:height .4s cubic-bezier(.42,0,0,1);transition:height .4s cubic-bezier(.42,0,0,1);will-change:height}.dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button .dnb-button__text,.dnb-step-indicator-v2 .dnb-step-indicator__trigger__button .dnb-button__text{text-align:left}.dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button.dnb-button--has-icon .dnb-button__text,.dnb-step-indicator-v2 .dnb-step-indicator__trigger__button.dnb-button--has-icon .dnb-button__text{margin-right:1rem}.dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button .dnb-button__alignment,.dnb-step-indicator-v2 .dnb-step-indicator__trigger__button .dnb-button__alignment{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}html[data-visual-test] .dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button,html[data-visual-test] .dnb-step-indicator-v2 .dnb-step-indicator__trigger__button{-webkit-transition-duration:1ms!important;transition-duration:1ms!important}.dnb-step-indicator-v2 .dnb-step-indicator__trigger button.dnb-step-indicator-v2 .dnb-step-indicator__trigger__button{margin-top:.5rem}.dnb-step-indicator-v2 .dnb-step-indicator__item{margin-bottom:1rem}.dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button__icon{opacity:1;-webkit-transition:opacity 1.4s ease-in-out;transition:opacity 1.4s ease-in-out}html[data-visual-test] .dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button__icon{-webkit-transition-duration:1ms!important;transition-duration:1ms!important}.dnb-step-indicator-v2 .dnb-step-indicator__item:not(.dnb-step-indicator__item--visited) .dnb-button:not(.dnb-step-indicator__button__status)
|
|
1
|
+
.dnb-icon{color:inherit;display:inline-block;font-size:1rem;height:1em;line-height:1rem;vertical-align:middle;width:1em}.dnb-icon img,.dnb-icon svg{shape-rendering:geometricPrecision;height:inherit;vertical-align:top;width:inherit}.dnb-icon svg[width="100%"]{width:inherit}.dnb-icon svg[height="100%"]{height:inherit}.dnb-icon--inherit-color svg:not([fill]),.dnb-icon--inherit-color svg [fill]{fill:currentColor}.dnb-icon--inherit-color svg [stroke]{stroke:currentColor}.dnb-icon--small{font-size:.75rem}.dnb-icon--default{font-size:1rem}.dnb-icon--medium{font-size:1.5rem}.dnb-icon--large{font-size:2rem}.dnb-icon--x-large{font-size:2.5rem}.dnb-icon--xx-large{font-size:3rem}.dnb-icon--custom-size{height:auto;width:auto}.dnb-icon--auto{font-size:1em}.dnb-icon--auto>.dnb-icon--wrapper{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;justify-content:center}h1 .dnb-icon,h2 .dnb-icon,h3 .dnb-icon,h4 .dnb-icon,h5 .dnb-icon,h6 .dnb-icon{vertical-align:middle}.dnb-icon.dnb-skeleton{color:#ebebeb!important;color:var(--skeleton-color)!important}.dnb-icon.dnb-skeleton:after,.dnb-icon.dnb-skeleton:before{content:none!important}@media screen and (-ms-high-contrast:none){.dnb-icon{-webkit-box-flex:0;-ms-flex:none;flex:none}}.dnb-tooltip{-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%;color:#333;color:var(--color-black-80,#333);font-family:DNB,sans-serif;font-family:var(--font-family-default);font-size:1rem;font-size:var(--font-size-small);font-style:normal;font-weight:400;font-weight:var(--font-weight-basis);line-height:1.5rem;line-height:var(--line-height-basis);margin:0;padding:0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;word-break:break-word}.dnb-tooltip *,.dnb-tooltip :after,.dnb-tooltip :before{background-repeat:no-repeat;-webkit-box-sizing:border-box;box-sizing:border-box}.dnb-tooltip :after,.dnb-tooltip :before{text-decoration:inherit;vertical-align:inherit}.dnb-tooltip{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;justify-content:center;opacity:0;padding:0 1rem;position:absolute;-webkit-transition:opacity .2s ease-out;transition:opacity .2s ease-out;visibility:hidden;z-index:3100}.dnb-tooltip--large{padding:.25rem 1rem}.dnb-tooltip--animate_position{-webkit-transition:all .3s ease-in-out,opacity .2s ease-out;transition:all .3s ease-in-out,opacity .2s ease-out}.dnb-tooltip--active{-webkit-animation:show-tooltip .2s ease-out forwards;animation:show-tooltip .2s ease-out forwards;visibility:visible}.dnb-tooltip--active.dnb-tooltip--no-animation,html[data-visual-test] .dnb-tooltip--active{-webkit-animation:show-tooltip 1ms ease-out forwards;animation:show-tooltip 1ms ease-out forwards}.dnb-tooltip--hide{-webkit-animation:hide-tooltip .2s ease-in-out forwards;animation:hide-tooltip .2s ease-in-out forwards;visibility:visible}.dnb-tooltip--hide.dnb-tooltip--no-animation{-webkit-animation:hide-tooltip 1ms ease-out forwards;animation:hide-tooltip 1ms ease-out forwards}.dnb-tooltip--fixed{position:fixed}html[data-visual-test] .dnb-tooltip--hide{-webkit-animation:hide-tooltip 1ms ease-out 1s forwards;animation:hide-tooltip 1ms ease-out 1s forwards}.dnb-tooltip__content{min-height:1.5rem;min-width:2rem;padding:0}.dnb-tooltip__arrow{height:.5rem;margin:0;overflow:hidden;pointer-events:none;position:absolute;width:1rem}.dnb-tooltip__arrow:before{bottom:0;content:"";height:1rem;left:0;position:absolute;-webkit-transform:translateY(70%) rotate(45deg);transform:translateY(70%) rotate(45deg);width:1rem}.dnb-tooltip__arrow__position--bottom{top:-.5rem}.dnb-tooltip__arrow__position--top{bottom:-.5rem;-webkit-transform:rotate(180deg);transform:rotate(180deg)}.dnb-tooltip__arrow__position--left{margin-right:3px;right:-.75rem;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.dnb-tooltip__arrow__position--right{left:-.75rem;margin-left:3px;-webkit-transform:rotate(270deg);transform:rotate(270deg)}.dnb-tooltip__arrow__arrow--left{-ms-flex-item-align:start;align-self:flex-start}.dnb-tooltip__arrow__arrow--right{-ms-flex-item-align:end;align-self:flex-end}@-webkit-keyframes show-tooltip{0%{opacity:0}to{opacity:1}}@keyframes show-tooltip{0%{opacity:0}to{opacity:1}}@-webkit-keyframes hide-tooltip{0%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes hide-tooltip{0%{opacity:1}to{opacity:0;visibility:hidden}}.dnb-form-status{-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%;color:#333;color:var(--color-black-80,#333);font-family:DNB,sans-serif;font-family:var(--font-family-default);font-size:1rem;font-size:var(--font-size-small);font-style:normal;font-weight:400;font-weight:var(--font-weight-basis);line-height:1.5rem;line-height:var(--line-height-basis);margin:0;padding:0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;word-break:break-word}.dnb-form-status *,.dnb-form-status :after,.dnb-form-status :before{background-repeat:no-repeat;-webkit-box-sizing:border-box;box-sizing:border-box}.dnb-form-status :after,.dnb-form-status :before{text-decoration:inherit;vertical-align:inherit}:root{--form-status-radius:0.25rem}.dnb-form-status{display:-webkit-box;display:-ms-flexbox;display:flex;opacity:1;-webkit-transition:height .4s cubic-bezier(.42,0,0,1),opacity .4s cubic-bezier(.42,0,0,1),margin .4s cubic-bezier(.42,0,0,1),padding .4s cubic-bezier(.42,0,0,1);transition:height .4s cubic-bezier(.42,0,0,1),opacity .4s cubic-bezier(.42,0,0,1),margin .4s cubic-bezier(.42,0,0,1),padding .4s cubic-bezier(.42,0,0,1)}.dnb-form-status--hidden{height:0;opacity:0;width:0;will-change:height,opacity,margin,padding}.dnb-form-status--is-animating{overflow:hidden;width:auto}.dnb-form-status--disappear,.dnb-form-status--hidden{margin:0!important;padding:0!important}.dnb-form-status__shell{-webkit-box-pack:start;-ms-flex-pack:start;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;border-radius:.25rem;border-radius:var(--form-status-radius);display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:flex-start;min-width:inherit}.dnb-form-status__text{color:inherit;cursor:text;font-size:1rem;font-size:var(--font-size-small);line-height:1.25rem;line-height:var(--line-height-small);padding:.625rem 1rem;white-space:normal}button .dnb-form-status__text{cursor:inherit}.dnb-form-status__text .dnb-anchor{font-size:inherit}.dnb-icon+.dnb-form-status__text{padding-left:.5rem}.dnb-form-status__shell>.dnb-icon{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:center;margin:.3333333em .3333333em .3333333em .6666666em}.dnb-form-status__size--large .dnb-form-status__text{padding-bottom:1.125rem;padding-top:1.125rem}.dnb-form-status__size--large .dnb-form-status__shell>.dnb-icon{margin-bottom:.6666666em;margin-top:.6666666em}.dnb-form-status--stretch{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.dnb-form-status--stretch .dnb-form-status__shell{width:100%}.dnb-form-status--stretch .dnb-form-status__text{max-width:47rem}.dnb-form-status[hidden]{display:none}.dnb-form-status--no-animation,html[data-visual-test] .dnb-form-status{-webkit-transition-duration:1ms!important;transition-duration:1ms!important}@media screen and (-ms-high-contrast:none){.dnb-form-status__shell>.dnb-icon{border-width:1px}}.dnb-button{-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%;color:#333;color:var(--color-black-80,#333);font-family:DNB,sans-serif;font-family:var(--font-family-default);font-style:normal;font-weight:400;font-weight:var(--font-weight-basis);line-height:1.5rem;line-height:var(--line-height-basis);margin:0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;word-break:break-word}.dnb-button *,.dnb-button :after,.dnb-button :before{background-repeat:no-repeat;-webkit-box-sizing:border-box;box-sizing:border-box}.dnb-button :after,.dnb-button :before{text-decoration:inherit;vertical-align:inherit}:root{--button-font-size:var(--font-size-basis);--button-font-size-small:var(--font-size-small);--button-width:2.5rem;--button-height:2.5rem;--button-width--small:1.5rem;--button-height--small:1.5rem;--button-width--medium:2rem;--button-height--medium:2rem;--button-width--large:3rem;--button-height--large:3rem;--button-icon-size:1rem;--button-border-width:0.0625rem;--button-border-width--hover:0.1875rem;--button-border-radius:calc(var(--button-height)/2);--button-border-radius--small:calc(var(--button-height--small)/2);--button-border-radius--medium:calc(var(--button-height--medium)/2);--button-border-radius--large:calc(var(--button-height--large)/2)}.dnb-button{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:.0625rem solid transparent;border:var(--button-border-width) solid transparent;border-radius:1.25rem;border-radius:var(--button-border-radius);cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:1rem;font-size:var(--font-size-small);height:auto;justify-content:center;padding:0;position:relative;text-decoration:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;white-space:nowrap;width:2.5rem;width:var(--button-width)}.dnb-button--wrap{word-wrap:break-word;white-space:normal}.dnb-button,.dnb-core-style .dnb-button{line-height:2.5rem;line-height:var(--button-height)}.dnb-button__text{color:inherit;font-size:1.125rem;font-size:var(--button-font-size);line-height:1.5rem;line-height:var(--line-height-basis);margin:.5rem 0;-webkit-transform:translateY(-.03125rem);transform:translateY(-.03125rem)}.dnb-button__text [data-os=linux]{-webkit-transform:translateY(-.035rem);transform:translateY(-.035rem)}.dnb-button__alignment{display:inline-block;width:0}.dnb-button__bounding{background-color:transparent;border-radius:1.25rem;border-radius:var(--button-border-radius);bottom:0;left:0;position:absolute;right:0;top:0;-webkit-transform:scale(1.1,1.4);transform:scale(1.1,1.4)}.dnb-button--has-text{padding-left:1.5rem;padding-right:1.5rem}.dnb-button--size-small{border-radius:.75rem;border-radius:var(--button-border-radius--small);font-size:1rem;font-size:var(--button-font-size-small);width:1.5rem;width:var(--button-width--small)}.dnb-button--size-small,.dnb-core-style .dnb-button--size-small{line-height:1.5rem;line-height:var(--button-height--small)}.dnb-button--size-small .dnb-button__text{margin:0}.dnb-button--has-text.dnb-button--size-small{padding-left:1rem;padding-right:1rem}.dnb-button--has-text.dnb-button--icon-position-left.dnb-button--size-small{padding-left:.5rem}.dnb-button--has-text.dnb-button--icon-position-right.dnb-button--size-small{padding-right:.5rem}.dnb-button--size-medium{border-radius:1rem;border-radius:var(--button-border-radius--medium);width:2rem;width:var(--button-width--medium)}.dnb-button--size-medium,.dnb-core-style .dnb-button--size-medium{line-height:2rem;line-height:var(--button-height--medium)}.dnb-button--size-medium .dnb-button__text{margin:0}.dnb-button--has-text.dnb-button--size-medium{padding-left:1rem;padding-right:1rem}.dnb-button--has-text.dnb-button--icon-position-left.dnb-button--size-medium{padding-left:.5rem}.dnb-button--has-text.dnb-button--icon-position-right.dnb-button--size-medium{padding-right:.5rem}.dnb-button--size-large{border-radius:1.5rem;border-radius:var(--button-border-radius--large);width:3rem;width:var(--button-width--large)}.dnb-button--size-large,.dnb-core-style .dnb-button--size-large{line-height:3rem;line-height:var(--button-height--large)}.dnb-button--has-text.dnb-button--size-large{padding-left:2rem;padding-right:2rem}.dnb-button--has-text.dnb-button--icon-position-left.dnb-button--size-large{padding-left:1rem}.dnb-button--has-text.dnb-button--icon-position-right.dnb-button--size-large{padding-right:1rem}.dnb-button--has-text{width:auto}.dnb-button--has-text .dnb-button__icon{margin:0 .5rem;margin:0 calc(var(--button-icon-size)/2)}.dnb-button--has-text.dnb-button--icon-position-left{padding-left:.5rem}.dnb-button--has-text.dnb-button--icon-position-right{padding-right:.5rem}.dnb-button--has-text.dnb-button--has-icon .dnb-button__icon{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.dnb-button--has-text.dnb-button--has-icon .dnb-button__text{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.dnb-button:not(.dnb-button--has-text) .dnb-button__icon{width:inherit}.dnb-button__icon.dnb-icon svg:not([width]):not([height]){height:1rem;height:var(--button-icon-size);width:1rem;width:var(--button-icon-size)}[href]>.dnb-button__icon.dnb-icon{line-height:1.125rem;line-height:var(--button-font-size)}.dnb-button--has-text.dnb-button--has-icon.dnb-button--icon-position-left .dnb-button__icon,.dnb-button--has-text.dnb-button--has-icon.dnb-button--icon-position-top .dnb-button__icon{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.dnb-button--has-text.dnb-button--has-icon.dnb-button--icon-position-left .dnb-button__text,.dnb-button--has-text.dnb-button--has-icon.dnb-button--icon-position-left>*,.dnb-button--has-text.dnb-button--has-icon.dnb-button--icon-position-top .dnb-button__text,.dnb-button--has-text.dnb-button--has-icon.dnb-button--icon-position-top>*{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.dnb-button--stretch{width:100%}.dnb-button--reset{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:none;border-radius:0;-webkit-box-shadow:none;box-shadow:none;color:inherit;font:inherit;height:auto;line-height:inherit;margin:0;overflow:visible;padding:0;text-align:inherit;width:auto}html:not([data-whatintent=touch]) .dnb-button--reset:hover[disabled]{cursor:not-allowed}html:not([data-whatintent=touch]) .dnb-button--reset:hover:not([disabled]){border:none;-webkit-box-shadow:none;box-shadow:none}.dnb-button--reset:not([disabled]):active,.dnb-button--reset:not([disabled]):focus{outline:none}html[data-whatinput=keyboard] .dnb-button--reset:not([disabled]):active,html[data-whatinput=keyboard] .dnb-button--reset:not([disabled]):focus{--border-color:var(--color-emerald-green);border-color:transparent;-webkit-box-shadow:0 0 0 .125rem var(--border-color);box-shadow:0 0 0 .125rem var(--border-color)}@media screen and (-ms-high-contrast:none){html[data-whatinput=keyboard] .dnb-button--reset:not([disabled]):active,html[data-whatinput=keyboard] .dnb-button--reset:not([disabled]):focus{-webkit-box-shadow:0 0 0 .125rem #14555a;box-shadow:0 0 0 .125rem #14555a;-webkit-box-shadow:0 0 0 .125rem var(--color-emerald-green);box-shadow:0 0 0 .125rem var(--color-emerald-green)}}html[data-whatinput=mouse] .dnb-button--reset:not([disabled]):active,html[data-whatinput=mouse] .dnb-button--reset:not([disabled]):focus{border:none;-webkit-box-shadow:none;box-shadow:none;color:inherit}.dnb-button[type=button],.dnb-button[type=reset],.dnb-button[type=submit]{appearance:none;-moz-appearance:none;-webkit-appearance:none}.dnb-button[disabled]{cursor:not-allowed}.dnb-form-row--vertical .dnb-form-row__content>.dnb-button{-ms-flex-item-align:start;align-self:flex-start}.dnb-form-row--horizontal .dnb-form-row__content .dnb-button__text{white-space:nowrap}.dnb-button+.dnb-form-status{margin-top:.5rem}@media screen and (-ms-high-contrast:none){.dnb-button{-webkit-box-flex:0;-ms-flex:none;flex:none}.dnb-button__icon,.dnb-button__text{-webkit-transform:translateY(-.0625rem);transform:translateY(-.0625rem)}}button.dnb-button::-moz-focus-inner{border:none}.dnb-step-indicator{-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%;color:#333;color:var(--color-black-80,#333);font-family:DNB,sans-serif;font-family:var(--font-family-default);font-size:1rem;font-size:var(--font-size-small);font-style:normal;font-weight:400;font-weight:var(--font-weight-basis);line-height:1.5rem;line-height:var(--line-height-basis);margin:0;padding:0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;word-break:break-word}.dnb-step-indicator *,.dnb-step-indicator :after,.dnb-step-indicator :before{background-repeat:no-repeat;-webkit-box-sizing:border-box;box-sizing:border-box}.dnb-step-indicator :after,.dnb-step-indicator :before{text-decoration:inherit;vertical-align:inherit}.dnb-step-indicator-v1 .dnb-step-indicator{display:block;padding:0;position:relative;z-index:1}.dnb-step-indicator-v1 .dnb-step-indicator__list{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;list-style:none;margin:0;padding:0}.dnb-spacing .dnb-step-indicator-v1 .dnb-step-indicator__list,.dnb-spacing .dnb-step-indicator-v1 .dnb-step-indicator__list li{margin-bottom:0;margin-top:0}.dnb-step-indicator-v1 .dnb-step-indicator__item{-ms-flex-item-align:end;align-self:flex-end}.dnb-step-indicator-v1 .dnb-step-indicator__item-content{font-size:1.125rem;font-size:var(--font-size-basis)}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--link,.dnb-step-indicator-v1 .dnb-step-indicator__item-content--static,.dnb-step-indicator-v1 .dnb-step-indicator__item-content.dnb-anchor,.dnb-step-indicator-v1 .dnb-step-indicator__item-contenta{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;border-bottom:none;-webkit-box-shadow:none;box-shadow:none;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;height:100%;margin:0;padding:.25rem;position:relative;text-decoration:none;z-index:2}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--link.dnb-anchor{line-height:1.5rem;line-height:var(--line-height-basis)}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus[disabled],html:not([data-whatintent=touch]) .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus[disabled]{cursor:not-allowed}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]),html:not([data-whatintent=touch]) .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]){outline:none}html[data-whatinput=keyboard] .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]),html[data-whatinput=keyboard] html:not([data-whatintent=touch]) .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]){--border-color:var(--color-emerald-green);border-color:transparent;-webkit-box-shadow:0 0 0 .125rem var(--border-color);box-shadow:0 0 0 .125rem var(--border-color)}@media screen and (-ms-high-contrast:none){html[data-whatinput=keyboard] .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]),html[data-whatinput=keyboard] html:not([data-whatintent=touch]) .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]){-webkit-box-shadow:0 0 0 .125rem #14555a;box-shadow:0 0 0 .125rem #14555a;-webkit-box-shadow:0 0 0 .125rem var(--color-emerald-green);box-shadow:0 0 0 .125rem var(--color-emerald-green)}}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]):after,html:not([data-whatintent=touch]) .dnb-step-indicator-v1 .dnb-step-indicator__item-content--link:focus:not([disabled]):after{content:none}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--number{padding-right:.25rem;white-space:nowrap}.dnb-step-indicator-v1 .dnb-step-indicator__item-content--text{text-align:left}.dnb-step-indicator-v1 .dnb-step-indicator__item-content:after{border-radius:1.5px;bottom:0;content:"";height:3px;left:0;position:absolute;width:100%;z-index:1}.dnb-step-indicator-v1 .dnb-step-indicator:after{background-color:currentColor;bottom:0;-webkit-box-shadow:100vw 0 0 0 currentColor;box-shadow:100vw 0 0 0 currentColor;color:#000;color:var(--color-black);content:"";height:1px;left:-100vw;position:absolute;width:100vw;z-index:-1}@media screen and (min-width:50.1em){.dnb-step-indicator__sidebar{margin-right:3rem;margin-right:var(--spacing-x-large);max-width:20rem}.dnb-step-indicator__sidebar .dnb-step-indicator__item{min-width:320px}}@media screen and (max-width:50.1em){.dnb-step-indicator__sidebar--ssr-skeleton{height:5.5rem;overflow:hidden;visibility:hidden;width:0}}.dnb-step-indicator-v2 .dnb-step-indicator__list{list-style:none;margin:0;padding:0}.dnb-step-indicator-v2 .dnb-step-indicator__list,.dnb-step-indicator-v2 .dnb-step-indicator__trigger{-webkit-box-orient:vertical;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button,.dnb-step-indicator-v2 .dnb-step-indicator__trigger__button{-webkit-box-pack:justify;-ms-flex-pack:justify;border-radius:.25rem;justify-content:space-between;overflow:hidden;-webkit-transition:height .4s cubic-bezier(.42,0,0,1);transition:height .4s cubic-bezier(.42,0,0,1);will-change:height}.dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button .dnb-button__text,.dnb-step-indicator-v2 .dnb-step-indicator__trigger__button .dnb-button__text{text-align:left}.dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button.dnb-button--has-icon .dnb-button__text,.dnb-step-indicator-v2 .dnb-step-indicator__trigger__button.dnb-button--has-icon .dnb-button__text{margin-right:1rem}.dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button .dnb-button__alignment,.dnb-step-indicator-v2 .dnb-step-indicator__trigger__button .dnb-button__alignment{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}html[data-visual-test] .dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button,html[data-visual-test] .dnb-step-indicator-v2 .dnb-step-indicator__trigger__button{-webkit-transition-duration:1ms!important;transition-duration:1ms!important}.dnb-step-indicator-v2 .dnb-step-indicator__trigger button.dnb-step-indicator-v2 .dnb-step-indicator__trigger__button{margin-top:.5rem}.dnb-step-indicator-v2 .dnb-step-indicator__item{margin-bottom:1rem}.dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button__icon{opacity:1;-webkit-transition:opacity 1.4s ease-in-out;transition:opacity 1.4s ease-in-out}html[data-visual-test] .dnb-step-indicator-v2 .dnb-step-indicator__item .dnb-button__icon{-webkit-transition-duration:1ms!important;transition-duration:1ms!important}.dnb-step-indicator-v2 .dnb-step-indicator__item:not(.dnb-step-indicator__item--visited) .dnb-button:not(.dnb-step-indicator__button__status)
|
|
2
2
|
.dnb-button__icon{opacity:0}.dnb-step-indicator-v2 .dnb-step-indicator__item-content{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;padding:.5rem 0}.dnb-step-indicator-v2 .dnb-step-indicator__item-content__number{padding-right:.5rem;white-space:nowrap}.dnb-step-indicator-v2 .dnb-step-indicator__item-content__wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.dnb-step-indicator-v2 .dnb-step-indicator__button__status .dnb-step-indicator__item-content__status{color:#333;color:var(--color-black-80);font-size:.875rem;font-size:var(--font-size-x-small)}
|
|
@@ -23,6 +23,7 @@ export type TabsSelectedKey = string | number;
|
|
|
23
23
|
export type TabsAlign = 'left' | 'center' | 'right';
|
|
24
24
|
export type TabsTabsSpacing = string | boolean;
|
|
25
25
|
export type TabsNoBorder = string | boolean;
|
|
26
|
+
export type TabsNavButtonEdge = string | boolean;
|
|
26
27
|
export type TabsUseHash = string | boolean;
|
|
27
28
|
export type TabsPrerender = string | boolean;
|
|
28
29
|
export type TabsPreventRerender = string | boolean;
|
|
@@ -116,6 +117,11 @@ export interface TabsProps extends React.HTMLProps<HTMLElement> {
|
|
|
116
117
|
* If set to `true`, the default horizontal border line under the tablist will be removed. Defaults to `false`.
|
|
117
118
|
*/
|
|
118
119
|
no_border?: TabsNoBorder;
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* If set to `true`, the navigation icons will have a straight border at their outside. This feature is meant to be used when the Tabs component goes all the way to the browser window. Defaults to `false`.
|
|
123
|
+
*/
|
|
124
|
+
nav_button_edge?: TabsNavButtonEdge;
|
|
119
125
|
use_hash?: TabsUseHash;
|
|
120
126
|
|
|
121
127
|
/**
|
|
@@ -134,60 +134,49 @@ export default class Tabs extends React.PureComponent {
|
|
|
134
134
|
_defineProperty(this, "init", () => {
|
|
135
135
|
if (this._isMounted) {
|
|
136
136
|
this.addScrollBehaviour();
|
|
137
|
-
this.
|
|
138
|
-
this.
|
|
137
|
+
const hasScrollbar = this.hasScrollbar();
|
|
138
|
+
const hasLastPosition = this.hasLastPosition();
|
|
139
|
+
this.setScrollbarState({
|
|
140
|
+
hasScrollbar
|
|
141
|
+
});
|
|
142
|
+
|
|
143
|
+
if (hasLastPosition) {
|
|
144
|
+
this.setLeftPosition(this.state.lastPosition);
|
|
145
|
+
}
|
|
139
146
|
|
|
140
|
-
if (
|
|
141
|
-
this.
|
|
147
|
+
if (hasScrollbar) {
|
|
148
|
+
this.scrollToTab({
|
|
149
|
+
type: 'selected',
|
|
150
|
+
behavior: hasLastPosition ? 'smooth' : 'auto'
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
if (this.hasLastUsedTab() !== null) {
|
|
155
|
+
this.setState(null, this.setFocusOnTabButton);
|
|
142
156
|
}
|
|
143
157
|
}
|
|
144
158
|
});
|
|
145
159
|
|
|
146
|
-
_defineProperty(this, "
|
|
147
|
-
|
|
148
|
-
|
|
160
|
+
_defineProperty(this, "setScrollbarState", ({
|
|
161
|
+
hasScrollbar = this.hasScrollbar()
|
|
162
|
+
} = {}) => {
|
|
149
163
|
if (hasScrollbar !== this.state.hasScrollbar) {
|
|
150
164
|
this.setState({
|
|
151
165
|
hasScrollbar
|
|
152
166
|
});
|
|
153
167
|
}
|
|
168
|
+
});
|
|
154
169
|
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
const tabsStyle = window.getComputedStyle(this._tabsRef.current);
|
|
160
|
-
|
|
161
|
-
if (!(Math.abs(parseFloat(tabsStyle.marginLeft)) > 0)) {
|
|
162
|
-
const diff = window.innerWidth - this._tabsRef.current.offsetWidth;
|
|
163
|
-
let val = Math.round(diff / 16) / 2 * 16;
|
|
164
|
-
this._tabsRef.current.style.marginLeft = `-${val}px`;
|
|
165
|
-
this._tabsRef.current.style.marginRight = `-${val}px`;
|
|
166
|
-
|
|
167
|
-
if (val < 32) {
|
|
168
|
-
val = 32;
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
const tablistStyle = window.getComputedStyle(this._tablistRef.current);
|
|
172
|
-
this._tablistRef.current.style.paddingLeft = `${(parseFloat(tablistStyle.paddingLeft) || 0) + val}px`;
|
|
173
|
-
this._tablistRef.current.style.paddingRight = `${(parseFloat(tablistStyle.paddingRight) || 0) + val}px`;
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
} else {
|
|
177
|
-
this._tabsRef.current.style.marginLeft = '';
|
|
178
|
-
this._tabsRef.current.style.marginRight = '';
|
|
179
|
-
this._tablistRef.current.style.paddingLeft = '';
|
|
180
|
-
this._tablistRef.current.style.paddingRight = '';
|
|
181
|
-
}
|
|
182
|
-
} catch (e) {}
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
this.setState({
|
|
186
|
-
atEdge: this.isAtEdge()
|
|
170
|
+
_defineProperty(this, "onResizeHandler", () => {
|
|
171
|
+
const hasScrollbar = this.hasScrollbar();
|
|
172
|
+
this.setScrollbarState({
|
|
173
|
+
hasScrollbar
|
|
187
174
|
});
|
|
188
175
|
|
|
189
176
|
if (hasScrollbar) {
|
|
190
|
-
this.scrollToTab(
|
|
177
|
+
this.scrollToTab({
|
|
178
|
+
type: 'selected'
|
|
179
|
+
});
|
|
191
180
|
}
|
|
192
181
|
});
|
|
193
182
|
|
|
@@ -222,33 +211,45 @@ export default class Tabs extends React.PureComponent {
|
|
|
222
211
|
_defineProperty(this, "focusFirstTab", e => {
|
|
223
212
|
const key = this.state.data[0].key;
|
|
224
213
|
this.focusTab(key, e, 'step');
|
|
225
|
-
this.scrollToTab(
|
|
214
|
+
this.scrollToTab({
|
|
215
|
+
type: 'focus'
|
|
216
|
+
});
|
|
226
217
|
});
|
|
227
218
|
|
|
228
219
|
_defineProperty(this, "focusLastTab", e => {
|
|
229
220
|
const key = this.state.data[this.state.data.length - 1].key;
|
|
230
221
|
this.focusTab(key, e, 'step');
|
|
231
|
-
this.scrollToTab(
|
|
222
|
+
this.scrollToTab({
|
|
223
|
+
type: 'focus'
|
|
224
|
+
});
|
|
232
225
|
});
|
|
233
226
|
|
|
234
227
|
_defineProperty(this, "focusPrevTab", e => {
|
|
235
228
|
this.focusTab(-1, e, 'step');
|
|
236
|
-
this.scrollToTab(
|
|
229
|
+
this.scrollToTab({
|
|
230
|
+
type: 'focus'
|
|
231
|
+
});
|
|
237
232
|
});
|
|
238
233
|
|
|
239
234
|
_defineProperty(this, "focusNextTab", e => {
|
|
240
235
|
this.focusTab(+1, e, 'step');
|
|
241
|
-
this.scrollToTab(
|
|
236
|
+
this.scrollToTab({
|
|
237
|
+
type: 'focus'
|
|
238
|
+
});
|
|
242
239
|
});
|
|
243
240
|
|
|
244
241
|
_defineProperty(this, "openPrevTab", e => {
|
|
245
242
|
this.openTab(-1, e, 'step');
|
|
246
|
-
this.scrollToTab(
|
|
243
|
+
this.scrollToTab({
|
|
244
|
+
type: 'selected'
|
|
245
|
+
});
|
|
247
246
|
});
|
|
248
247
|
|
|
249
248
|
_defineProperty(this, "openNextTab", e => {
|
|
250
249
|
this.openTab(+1, e, 'step');
|
|
251
|
-
this.scrollToTab(
|
|
250
|
+
this.scrollToTab({
|
|
251
|
+
type: 'selected'
|
|
252
|
+
});
|
|
252
253
|
});
|
|
253
254
|
|
|
254
255
|
_defineProperty(this, "handleVerticalScroll", () => {
|
|
@@ -260,14 +261,20 @@ export default class Tabs extends React.PureComponent {
|
|
|
260
261
|
}
|
|
261
262
|
});
|
|
262
263
|
|
|
264
|
+
_defineProperty(this, "onMouseDown", event => {
|
|
265
|
+
event.preventDefault();
|
|
266
|
+
});
|
|
267
|
+
|
|
263
268
|
_defineProperty(this, "onKeyDownHandler", event => {
|
|
264
269
|
switch (keycode(event)) {
|
|
265
270
|
case 'enter':
|
|
266
271
|
try {
|
|
267
272
|
const elem = document.getElementById(`${this._id}-content`);
|
|
268
|
-
elem.focus(
|
|
273
|
+
elem.focus({
|
|
274
|
+
preventScroll: true
|
|
275
|
+
});
|
|
269
276
|
} catch (e) {
|
|
270
|
-
|
|
277
|
+
this.warnAboutMissingContainer();
|
|
271
278
|
}
|
|
272
279
|
|
|
273
280
|
break;
|
|
@@ -296,7 +303,9 @@ export default class Tabs extends React.PureComponent {
|
|
|
296
303
|
|
|
297
304
|
if (ret !== false) {
|
|
298
305
|
this.openTab(selected_key, event);
|
|
299
|
-
this.scrollToTab(
|
|
306
|
+
this.scrollToTab({
|
|
307
|
+
type: 'selected'
|
|
308
|
+
});
|
|
300
309
|
}
|
|
301
310
|
}
|
|
302
311
|
});
|
|
@@ -332,7 +341,7 @@ export default class Tabs extends React.PureComponent {
|
|
|
332
341
|
this.setState({
|
|
333
342
|
focus_key,
|
|
334
343
|
_listenForPropChanges: false
|
|
335
|
-
}, this.
|
|
344
|
+
}, this.setFocusOnTabButton);
|
|
336
345
|
dispatchCustomElementEvent(this, 'on_focus', this.getEventArgs({
|
|
337
346
|
event,
|
|
338
347
|
focus_key
|
|
@@ -340,14 +349,16 @@ export default class Tabs extends React.PureComponent {
|
|
|
340
349
|
this.setWhatInput();
|
|
341
350
|
});
|
|
342
351
|
|
|
343
|
-
_defineProperty(this, "
|
|
352
|
+
_defineProperty(this, "setFocusOnTabButton", () => {
|
|
344
353
|
try {
|
|
345
354
|
const elem = this._tablistRef.current.querySelector('.dnb-tabs__button.focus');
|
|
346
355
|
|
|
347
|
-
elem.focus(
|
|
356
|
+
elem.focus({
|
|
357
|
+
preventScroll: true
|
|
358
|
+
});
|
|
348
359
|
|
|
349
360
|
if (!document.getElementById(`${this._id}-content`) && typeof process !== 'undefined' && process.env.NODE_ENV !== 'test') {
|
|
350
|
-
|
|
361
|
+
this.warnAboutMissingContainer();
|
|
351
362
|
}
|
|
352
363
|
} catch (e) {
|
|
353
364
|
warn(e);
|
|
@@ -469,23 +480,23 @@ export default class Tabs extends React.PureComponent {
|
|
|
469
480
|
align,
|
|
470
481
|
tabs_style,
|
|
471
482
|
tabs_spacing,
|
|
472
|
-
no_border
|
|
483
|
+
no_border,
|
|
484
|
+
nav_button_edge
|
|
473
485
|
} = this.props;
|
|
474
486
|
const {
|
|
475
|
-
hasScrollbar
|
|
476
|
-
atEdge
|
|
487
|
+
hasScrollbar
|
|
477
488
|
} = this.state;
|
|
478
489
|
return React.createElement("div", _extends({
|
|
479
|
-
className: classnames('dnb-tabs__tabs', className, align && `dnb-tabs__tabs--${align}`, tabs_style && `dnb-section dnb-section--${tabs_style}`, tabs_spacing && `dnb-section--spacing-${isTrue(tabs_spacing) ? 'default' : tabs_spacing}`, hasScrollbar && 'dnb-tabs--has-scrollbar',
|
|
490
|
+
className: classnames('dnb-tabs__tabs', className, align && `dnb-tabs__tabs--${align}`, tabs_style && `dnb-section dnb-section--${tabs_style}`, tabs_spacing && `dnb-section--spacing-${isTrue(tabs_spacing) ? 'default' : tabs_spacing}`, hasScrollbar && 'dnb-tabs--has-scrollbar', nav_button_edge && 'dnb-tabs--at-edge', no_border && 'dnb-tabs__tabs--no-border'),
|
|
480
491
|
ref: this._tabsRef
|
|
481
492
|
}, rest), React.createElement(ScrollNavButton, {
|
|
482
493
|
onMouseDown: this.openPrevTab,
|
|
483
494
|
icon: "chevron_left",
|
|
484
|
-
className: classnames(hasScrollbar && 'dnb-tabs__scroll-nav-button--visible', this.state.isFirst && 'dnb-tabs__scroll-nav-button--hide')
|
|
495
|
+
className: classnames(hasScrollbar && (typeof this.state.isFirst !== 'undefined' || this.hasLastPosition()) && 'dnb-tabs__scroll-nav-button--visible', this.state.isFirst && 'dnb-tabs__scroll-nav-button--hide')
|
|
485
496
|
}), children, React.createElement(ScrollNavButton, {
|
|
486
497
|
onMouseDown: this.openNextTab,
|
|
487
498
|
icon: "chevron_right",
|
|
488
|
-
className: classnames(hasScrollbar && 'dnb-tabs__scroll-nav-button--visible', this.state.isLast && 'dnb-tabs__scroll-nav-button--hide')
|
|
499
|
+
className: classnames(hasScrollbar && (typeof this.state.isLast !== 'undefined' || this.hasLastPosition()) && 'dnb-tabs__scroll-nav-button--visible', this.state.isLast && 'dnb-tabs__scroll-nav-button--hide')
|
|
489
500
|
}));
|
|
490
501
|
});
|
|
491
502
|
|
|
@@ -560,6 +571,7 @@ Tip: Check out other solutions like <Tabs.Content id="unique">Your content, outs
|
|
|
560
571
|
onMouseEnter: this.onMouseEnterHandler,
|
|
561
572
|
onClick: this.onClickHandler,
|
|
562
573
|
onKeyUp: this.onKeyDownHandler,
|
|
574
|
+
onMouseDown: this.onMouseDown,
|
|
563
575
|
"data-tab-key": key
|
|
564
576
|
}, itemParams), React.createElement("span", {
|
|
565
577
|
className: classnames('dnb-tabs__button__title', createSkeletonClass('font', skeleton, this.context))
|
|
@@ -602,10 +614,10 @@ Tip: Check out other solutions like <Tabs.Content id="unique">Your content, outs
|
|
|
602
614
|
const lastPosition = this.getLastPosition();
|
|
603
615
|
this.state = {
|
|
604
616
|
data,
|
|
605
|
-
lastPosition,
|
|
606
617
|
selected_key: _selected_key,
|
|
607
618
|
focus_key: _selected_key,
|
|
608
619
|
atEdge: false,
|
|
620
|
+
lastPosition,
|
|
609
621
|
hasScrollbar: lastPosition > -1,
|
|
610
622
|
_selected_key: _selected_key,
|
|
611
623
|
_data: _props.data || _props.children,
|
|
@@ -643,8 +655,6 @@ Tip: Check out other solutions like <Tabs.Content id="unique">Your content, outs
|
|
|
643
655
|
this._eventEmitter = null;
|
|
644
656
|
}
|
|
645
657
|
|
|
646
|
-
clearTimeout(this._scrollToTabTimeout);
|
|
647
|
-
|
|
648
658
|
if (typeof window !== 'undefined') {
|
|
649
659
|
window.removeEventListener('resize', this.onResizeHandler);
|
|
650
660
|
window.removeEventListener('load', this.init);
|
|
@@ -652,23 +662,29 @@ Tip: Check out other solutions like <Tabs.Content id="unique">Your content, outs
|
|
|
652
662
|
}
|
|
653
663
|
|
|
654
664
|
componentDidUpdate(props) {
|
|
655
|
-
this.
|
|
665
|
+
if (this._eventEmitter && (this.props.selected_key !== props.selected_key || this.props.data !== props.data)) {
|
|
666
|
+
this.onResizeHandler();
|
|
656
667
|
|
|
657
|
-
|
|
658
|
-
|
|
668
|
+
if (this._eventEmitter) {
|
|
669
|
+
const selected_key = this.state.selected_key;
|
|
659
670
|
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
671
|
+
this._eventEmitter.update(this.getEventArgs({
|
|
672
|
+
selected_key
|
|
673
|
+
}));
|
|
674
|
+
}
|
|
663
675
|
}
|
|
664
676
|
}
|
|
665
677
|
|
|
678
|
+
hasLastPosition() {
|
|
679
|
+
return this.state.lastPosition > -1;
|
|
680
|
+
}
|
|
681
|
+
|
|
666
682
|
getLastPosition() {
|
|
667
683
|
if (typeof window !== 'undefined') {
|
|
668
684
|
try {
|
|
669
|
-
const pos = parseFloat(window.localStorage.getItem(
|
|
670
|
-
window.localStorage.removeItem(
|
|
671
|
-
return pos;
|
|
685
|
+
const pos = parseFloat(window.localStorage.getItem(`tabs-pos-${this._id}`));
|
|
686
|
+
window.localStorage.removeItem(`tabs-pos-${this._id}`);
|
|
687
|
+
return isNaN(pos) ? -1 : pos;
|
|
672
688
|
} catch (e) {
|
|
673
689
|
warn(e);
|
|
674
690
|
}
|
|
@@ -677,11 +693,11 @@ Tip: Check out other solutions like <Tabs.Content id="unique">Your content, outs
|
|
|
677
693
|
return -1;
|
|
678
694
|
}
|
|
679
695
|
|
|
680
|
-
|
|
696
|
+
hasLastUsedTab() {
|
|
681
697
|
if (typeof window !== 'undefined') {
|
|
682
698
|
try {
|
|
683
|
-
const key = window.localStorage.getItem(
|
|
684
|
-
window.localStorage.removeItem(
|
|
699
|
+
const key = window.localStorage.getItem(`tabs-last-${this._id}`) || null;
|
|
700
|
+
window.localStorage.removeItem(`tabs-last-${this._id}`);
|
|
685
701
|
return key;
|
|
686
702
|
} catch (e) {
|
|
687
703
|
warn(e);
|
|
@@ -694,17 +710,17 @@ Tip: Check out other solutions like <Tabs.Content id="unique">Your content, outs
|
|
|
694
710
|
saveLastUsedTab() {
|
|
695
711
|
if (typeof window !== 'undefined') {
|
|
696
712
|
try {
|
|
697
|
-
window.localStorage.setItem(
|
|
713
|
+
window.localStorage.setItem(`tabs-last-${this._id}`, this.state.selected_key);
|
|
698
714
|
} catch (e) {
|
|
699
715
|
warn(e);
|
|
700
716
|
}
|
|
701
717
|
}
|
|
702
718
|
}
|
|
703
719
|
|
|
704
|
-
saveLastPosition(
|
|
720
|
+
saveLastPosition(position = this._tablistRef.current.scrollLeft) {
|
|
705
721
|
if (typeof window !== 'undefined') {
|
|
706
722
|
try {
|
|
707
|
-
window.localStorage.setItem(
|
|
723
|
+
window.localStorage.setItem(`tabs-pos-${this._id}`, position);
|
|
708
724
|
} catch (e) {
|
|
709
725
|
warn(e);
|
|
710
726
|
}
|
|
@@ -715,46 +731,35 @@ Tip: Check out other solutions like <Tabs.Content id="unique">Your content, outs
|
|
|
715
731
|
return this._tablistRef.current.scrollWidth - 1 > this._tablistRef.current.offsetWidth;
|
|
716
732
|
}
|
|
717
733
|
|
|
718
|
-
isAtEdge() {
|
|
719
|
-
if (!this._hasScrollbar || typeof window === 'undefined') {
|
|
720
|
-
return false;
|
|
721
|
-
}
|
|
722
|
-
|
|
723
|
-
try {
|
|
724
|
-
const padding = parseFloat(window.getComputedStyle(this._tablistRef.current).paddingLeft);
|
|
725
|
-
const width = this._tablistRef.current.offsetWidth + 2 + 64 - padding;
|
|
726
|
-
const screenWidth = window.innerWidth;
|
|
727
|
-
return width >= screenWidth;
|
|
728
|
-
} catch (e) {}
|
|
729
|
-
|
|
730
|
-
return false;
|
|
731
|
-
}
|
|
732
|
-
|
|
733
734
|
addScrollBehaviour() {
|
|
734
|
-
this.onResizeHandler();
|
|
735
|
-
|
|
736
735
|
if (typeof window !== 'undefined') {
|
|
737
736
|
window.addEventListener('resize', this.onResizeHandler);
|
|
738
737
|
}
|
|
739
738
|
}
|
|
740
739
|
|
|
741
|
-
|
|
740
|
+
setLeftPosition(scrollLeft) {
|
|
742
741
|
try {
|
|
743
742
|
this._tablistRef.current.style.scrollBehavior = 'auto';
|
|
744
|
-
this._tablistRef.current.scrollLeft =
|
|
743
|
+
this._tablistRef.current.scrollLeft = scrollLeft;
|
|
745
744
|
this._tablistRef.current.style.scrollBehavior = 'smooth';
|
|
746
745
|
} catch (e) {}
|
|
747
746
|
}
|
|
748
747
|
|
|
749
|
-
scrollToTab(
|
|
748
|
+
scrollToTab({
|
|
749
|
+
type,
|
|
750
|
+
behavior = 'smooth'
|
|
751
|
+
}) {
|
|
750
752
|
if (typeof window === 'undefined') {
|
|
751
753
|
return;
|
|
752
754
|
}
|
|
753
755
|
|
|
754
|
-
|
|
755
|
-
|
|
756
|
+
if (window.IS_TEST) {
|
|
757
|
+
behavior = 'auto';
|
|
758
|
+
}
|
|
759
|
+
|
|
760
|
+
const delay = () => {
|
|
756
761
|
try {
|
|
757
|
-
if (
|
|
762
|
+
if (this.state.hasScrollbar && this._tablistRef.current) {
|
|
758
763
|
const first = this._tablistRef.current.querySelector('.dnb-tabs__button__snap:first-of-type');
|
|
759
764
|
|
|
760
765
|
const isFirst = first.classList.contains(type);
|
|
@@ -769,20 +774,30 @@ Tip: Check out other solutions like <Tabs.Content id="unique">Your content, outs
|
|
|
769
774
|
const margin = parseFloat(style.marginLeft);
|
|
770
775
|
let padding = margin < 0 ? parseFloat(style.paddingLeft) : 0;
|
|
771
776
|
|
|
772
|
-
if (!isFirst &&
|
|
777
|
+
if (!isFirst && !isLast && parseFloat(style.paddingLeft) < 16) {
|
|
773
778
|
const navButton = this._tabsRef.current.querySelector('.dnb-tabs__scroll-nav-button:first-of-type');
|
|
774
779
|
|
|
775
|
-
|
|
780
|
+
const additionalSpace = parseFloat(window.getComputedStyle(navButton).width) * 1.5;
|
|
781
|
+
padding += additionalSpace;
|
|
776
782
|
}
|
|
777
783
|
|
|
778
|
-
|
|
779
|
-
const
|
|
784
|
+
let leftPadding = (margin < 0 ? Math.abs(margin) : 0) + padding + parseFloat(window.getComputedStyle(first).paddingLeft);
|
|
785
|
+
const offsetLeft = elem.offsetLeft;
|
|
786
|
+
const left = elem && !isFirst ? offsetLeft - leftPadding : 0;
|
|
787
|
+
|
|
788
|
+
if (behavior === 'auto') {
|
|
789
|
+
this._tablistRef.current.style.scrollBehavior = 'auto';
|
|
790
|
+
}
|
|
780
791
|
|
|
781
792
|
this._tablistRef.current.scrollTo({
|
|
782
793
|
left,
|
|
783
|
-
behavior
|
|
794
|
+
behavior
|
|
784
795
|
});
|
|
785
796
|
|
|
797
|
+
if (behavior === 'auto') {
|
|
798
|
+
this._tablistRef.current.style.scrollBehavior = '';
|
|
799
|
+
}
|
|
800
|
+
|
|
786
801
|
this.setState({
|
|
787
802
|
isFirst,
|
|
788
803
|
isLast
|
|
@@ -791,7 +806,13 @@ Tip: Check out other solutions like <Tabs.Content id="unique">Your content, outs
|
|
|
791
806
|
} catch (e) {
|
|
792
807
|
warn(e);
|
|
793
808
|
}
|
|
794
|
-
}
|
|
809
|
+
};
|
|
810
|
+
|
|
811
|
+
if (window.IS_TEST) {
|
|
812
|
+
delay();
|
|
813
|
+
} else {
|
|
814
|
+
window.requestAnimationFrame(delay);
|
|
815
|
+
}
|
|
795
816
|
}
|
|
796
817
|
|
|
797
818
|
getStepKey(useKey, stateKey) {
|
|
@@ -824,6 +845,10 @@ Tip: Check out other solutions like <Tabs.Content id="unique">Your content, outs
|
|
|
824
845
|
whatInput.specificKeys([9]);
|
|
825
846
|
}
|
|
826
847
|
|
|
848
|
+
warnAboutMissingContainer() {
|
|
849
|
+
warn(`Could not find the required <Tabs.Content id="${this._id}-content" ... /> that provides role="tabpanel"`);
|
|
850
|
+
}
|
|
851
|
+
|
|
827
852
|
getEventArgs(args) {
|
|
828
853
|
const {
|
|
829
854
|
selected_key,
|
|
@@ -950,6 +975,7 @@ _defineProperty(Tabs, "defaultProps", {
|
|
|
950
975
|
tabs_style: null,
|
|
951
976
|
tabs_spacing: null,
|
|
952
977
|
no_border: false,
|
|
978
|
+
nav_button_edge: false,
|
|
953
979
|
use_hash: false,
|
|
954
980
|
prerender: false,
|
|
955
981
|
prevent_rerender: false,
|
|
@@ -991,6 +1017,7 @@ process.env.NODE_ENV !== "production" ? Tabs.propTypes = _objectSpread(_objectSp
|
|
|
991
1017
|
tabs_style: PropTypes.string,
|
|
992
1018
|
tabs_spacing: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
|
|
993
1019
|
no_border: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
|
|
1020
|
+
nav_button_edge: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
|
|
994
1021
|
use_hash: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
|
|
995
1022
|
prerender: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
|
|
996
1023
|
prevent_rerender: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
|
|
@@ -1026,8 +1053,7 @@ const ScrollNavButton = props => {
|
|
|
1026
1053
|
variant: "primary",
|
|
1027
1054
|
tabIndex: "-1",
|
|
1028
1055
|
bounding: true,
|
|
1029
|
-
"aria-hidden": true
|
|
1030
|
-
icon_size: "medium"
|
|
1056
|
+
"aria-hidden": true
|
|
1031
1057
|
}, props, {
|
|
1032
1058
|
className: classnames('dnb-tabs__scroll-nav-button', props.className)
|
|
1033
1059
|
}));
|