@carbon/ibmdotcom-web-components 1.26.0-rc.1 → 1.26.0-rc.3
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/es/component-mixins/cta/cta.d.ts.map +1 -1
- package/es/component-mixins/cta/cta.js +12 -12
- package/es/component-mixins/cta/cta.js.map +1 -1
- package/es/component-mixins/cta/video.d.ts.map +1 -1
- package/es/component-mixins/cta/video.js +5 -5
- package/es/component-mixins/cta/video.js.map +1 -1
- package/es/components/back-to-top/__stories__/data/content.d.ts.map +1 -1
- package/es/components/back-to-top/__stories__/data/content.js +1 -1
- package/es/components/back-to-top/__stories__/data/content.js.map +1 -1
- package/es/components/back-to-top/back-to-top.d.ts +1 -1
- package/es/components/back-to-top/back-to-top.d.ts.map +1 -1
- package/es/components/back-to-top/back-to-top.js +3 -3
- package/es/components/back-to-top/back-to-top.js.map +1 -1
- package/es/components/background-media/background-media.d.ts.map +1 -1
- package/es/components/background-media/background-media.js +2 -2
- package/es/components/background-media/background-media.js.map +1 -1
- package/es/components/button/button.d.ts +1 -4
- package/es/components/button/button.d.ts.map +1 -1
- package/es/components/button/button.js +3 -3
- package/es/components/button/button.js.map +1 -1
- package/es/components/button-group/button-group.d.ts.map +1 -1
- package/es/components/button-group/button-group.js +1 -1
- package/es/components/button-group/button-group.js.map +1 -1
- package/es/components/card/card.d.ts +1 -1
- package/es/components/card/card.d.ts.map +1 -1
- package/es/components/card/card.js +1 -1
- package/es/components/card/card.js.map +1 -1
- package/es/components/card-in-card/card-in-card.d.ts.map +1 -1
- package/es/components/card-in-card/card-in-card.js +1 -1
- package/es/components/card-in-card/card-in-card.js.map +1 -1
- package/es/components/carousel/carousel.d.ts +10 -1
- package/es/components/carousel/carousel.d.ts.map +1 -1
- package/es/components/carousel/carousel.js +6 -6
- package/es/components/carousel/carousel.js.map +1 -1
- package/es/components/content-item-horizontal/content-item-horizontal-media.d.ts +3 -9
- package/es/components/content-item-horizontal/content-item-horizontal-media.d.ts.map +1 -1
- package/es/components/content-item-horizontal/content-item-horizontal-media.js +2 -2
- package/es/components/content-item-horizontal/content-item-horizontal-media.js.map +1 -1
- package/es/components/cta/card-cta.d.ts.map +1 -1
- package/es/components/cta/card-cta.js +1 -1
- package/es/components/cta/card-cta.js.map +1 -1
- package/es/components/cta/feature-cta.d.ts +4 -1
- package/es/components/cta/feature-cta.d.ts.map +1 -1
- package/es/components/cta/feature-cta.js +1 -1
- package/es/components/cta/feature-cta.js.map +1 -1
- package/es/components/cta/video-cta-composite.d.ts +9 -6
- package/es/components/cta/video-cta-composite.d.ts.map +1 -1
- package/es/components/cta/video-cta-composite.js +3 -3
- package/es/components/cta/video-cta-composite.js.map +1 -1
- package/es/components/dotcom-shell/__stories__/data/content.d.ts.map +1 -1
- package/es/components/dotcom-shell/__stories__/data/content.js +1 -1
- package/es/components/dotcom-shell/__stories__/data/content.js.map +1 -1
- package/es/components/expressive-modal/expressive-modal-body.d.ts +1 -1
- package/es/components/expressive-modal/expressive-modal-body.d.ts.map +1 -1
- package/es/components/expressive-modal/expressive-modal-body.js +1 -1
- package/es/components/expressive-modal/expressive-modal-body.js.map +1 -1
- package/es/components/expressive-modal/expressive-modal-close-button.d.ts +1 -1
- package/es/components/expressive-modal/expressive-modal-close-button.d.ts.map +1 -1
- package/es/components/expressive-modal/expressive-modal-close-button.js +1 -1
- package/es/components/expressive-modal/expressive-modal-close-button.js.map +1 -1
- package/es/components/expressive-modal/expressive-modal-footer.d.ts +1 -1
- package/es/components/expressive-modal/expressive-modal-footer.d.ts.map +1 -1
- package/es/components/expressive-modal/expressive-modal-footer.js +1 -1
- package/es/components/expressive-modal/expressive-modal-footer.js.map +1 -1
- package/es/components/expressive-modal/expressive-modal-header.d.ts +1 -1
- package/es/components/expressive-modal/expressive-modal-header.d.ts.map +1 -1
- package/es/components/expressive-modal/expressive-modal-header.js +1 -1
- package/es/components/expressive-modal/expressive-modal-header.js.map +1 -1
- package/es/components/expressive-modal/expressive-modal-heading.d.ts +1 -1
- package/es/components/expressive-modal/expressive-modal-heading.d.ts.map +1 -1
- package/es/components/expressive-modal/expressive-modal-heading.js +1 -1
- package/es/components/expressive-modal/expressive-modal-heading.js.map +1 -1
- package/es/components/expressive-modal/expressive-modal.d.ts +5 -10
- package/es/components/expressive-modal/expressive-modal.d.ts.map +1 -1
- package/es/components/expressive-modal/expressive-modal.js +3 -3
- package/es/components/expressive-modal/expressive-modal.js.map +1 -1
- package/es/components/filter-panel/filter-group-item.d.ts +2 -4
- package/es/components/filter-panel/filter-group-item.d.ts.map +1 -1
- package/es/components/filter-panel/filter-group-item.js +1 -1
- package/es/components/filter-panel/filter-group-item.js.map +1 -1
- package/es/components/filter-panel/filter-group.d.ts +1 -1
- package/es/components/filter-panel/filter-group.d.ts.map +1 -1
- package/es/components/filter-panel/filter-group.js +1 -1
- package/es/components/filter-panel/filter-group.js.map +1 -1
- package/es/components/filter-panel/filter-modal-button.d.ts +1 -1
- package/es/components/filter-panel/filter-modal-button.d.ts.map +1 -1
- package/es/components/filter-panel/filter-modal-button.js +1 -1
- package/es/components/filter-panel/filter-modal-button.js.map +1 -1
- package/es/components/filter-panel/filter-modal-footer.d.ts +1 -1
- package/es/components/filter-panel/filter-modal-footer.d.ts.map +1 -1
- package/es/components/filter-panel/filter-modal-footer.js +1 -1
- package/es/components/filter-panel/filter-modal-footer.js.map +1 -1
- package/es/components/filter-panel/filter-modal-heading.d.ts +1 -1
- package/es/components/filter-panel/filter-modal-heading.d.ts.map +1 -1
- package/es/components/filter-panel/filter-modal-heading.js +1 -1
- package/es/components/filter-panel/filter-modal-heading.js.map +1 -1
- package/es/components/filter-panel/filter-panel-checkbox.d.ts +2 -2
- package/es/components/filter-panel/filter-panel-checkbox.d.ts.map +1 -1
- package/es/components/filter-panel/filter-panel-checkbox.js +3 -3
- package/es/components/filter-panel/filter-panel-checkbox.js.map +1 -1
- package/es/components/filter-panel/filter-panel-composite.d.ts +20 -12
- package/es/components/filter-panel/filter-panel-composite.d.ts.map +1 -1
- package/es/components/filter-panel/filter-panel-composite.js +4 -4
- package/es/components/filter-panel/filter-panel-composite.js.map +1 -1
- package/es/components/filter-panel/filter-panel-input-select-item.d.ts +0 -3
- package/es/components/filter-panel/filter-panel-input-select-item.d.ts.map +1 -1
- package/es/components/filter-panel/filter-panel-input-select-item.js +2 -2
- package/es/components/filter-panel/filter-panel-input-select-item.js.map +1 -1
- package/es/components/filter-panel/filter-panel-input-select.d.ts +5 -1
- package/es/components/filter-panel/filter-panel-input-select.d.ts.map +1 -1
- package/es/components/filter-panel/filter-panel-input-select.js +2 -2
- package/es/components/filter-panel/filter-panel-input-select.js.map +1 -1
- package/es/components/filter-panel/filter-panel-modal.d.ts +4 -6
- package/es/components/filter-panel/filter-panel-modal.d.ts.map +1 -1
- package/es/components/filter-panel/filter-panel-modal.js +3 -3
- package/es/components/filter-panel/filter-panel-modal.js.map +1 -1
- package/es/components/filter-panel/filter-panel.d.ts +4 -2
- package/es/components/filter-panel/filter-panel.d.ts.map +1 -1
- package/es/components/filter-panel/filter-panel.js +2 -2
- package/es/components/filter-panel/filter-panel.js.map +1 -1
- package/es/components/footer/combo-box.d.ts +1 -1
- package/es/components/footer/combo-box.d.ts.map +1 -1
- package/es/components/footer/combo-box.js +1 -1
- package/es/components/footer/combo-box.js.map +1 -1
- package/es/components/footer/defs.d.ts +1 -1
- package/es/components/footer/defs.d.ts.map +1 -1
- package/es/components/footer/defs.js +1 -1
- package/es/components/footer/defs.js.map +1 -1
- package/es/components/footer/dropdown.d.ts +1 -1
- package/es/components/footer/dropdown.d.ts.map +1 -1
- package/es/components/footer/dropdown.js +3 -3
- package/es/components/footer/dropdown.js.map +1 -1
- package/es/components/footer/footer-composite.d.ts +3 -8
- package/es/components/footer/footer-composite.d.ts.map +1 -1
- package/es/components/footer/footer-composite.js +5 -5
- package/es/components/footer/footer-composite.js.map +1 -1
- package/es/components/footer/footer-logo.d.ts.map +1 -1
- package/es/components/footer/footer-logo.js +2 -2
- package/es/components/footer/footer-logo.js.map +1 -1
- package/es/components/footer/footer-nav-group.d.ts.map +1 -1
- package/es/components/footer/footer-nav-group.js +1 -1
- package/es/components/footer/footer-nav-group.js.map +1 -1
- package/es/components/footer/footer-nav-item.d.ts +1 -1
- package/es/components/footer/footer-nav-item.d.ts.map +1 -1
- package/es/components/footer/footer-nav-item.js +1 -1
- package/es/components/footer/footer-nav-item.js.map +1 -1
- package/es/components/footer/language-selector-desktop.d.ts.map +1 -1
- package/es/components/footer/language-selector-desktop.js +2 -2
- package/es/components/footer/language-selector-desktop.js.map +1 -1
- package/es/components/footer/language-selector-mobile.d.ts.map +1 -1
- package/es/components/footer/language-selector-mobile.js +2 -2
- package/es/components/footer/language-selector-mobile.js.map +1 -1
- package/es/components/footer/locale-button.d.ts +3 -1
- package/es/components/footer/locale-button.d.ts.map +1 -1
- package/es/components/footer/locale-button.js +3 -3
- package/es/components/footer/locale-button.js.map +1 -1
- package/es/components/image/image.d.ts +5 -1
- package/es/components/image/image.d.ts.map +1 -1
- package/es/components/image/image.js +3 -3
- package/es/components/image/image.js.map +1 -1
- package/es/components/image-with-caption/image-with-caption.d.ts.map +1 -1
- package/es/components/image-with-caption/image-with-caption.js +3 -3
- package/es/components/image-with-caption/image-with-caption.js.map +1 -1
- package/es/components/leadspace/breadcrumb-item.d.ts +1 -1
- package/es/components/leadspace/breadcrumb-item.d.ts.map +1 -1
- package/es/components/leadspace/breadcrumb-item.js +1 -1
- package/es/components/leadspace/breadcrumb-item.js.map +1 -1
- package/es/components/leadspace/breadcrumb-link.d.ts +1 -1
- package/es/components/leadspace/breadcrumb-link.d.ts.map +1 -1
- package/es/components/leadspace/breadcrumb-link.js +1 -1
- package/es/components/leadspace/breadcrumb-link.js.map +1 -1
- package/es/components/leadspace/breadcrumb.d.ts +1 -1
- package/es/components/leadspace/breadcrumb.d.ts.map +1 -1
- package/es/components/leadspace/breadcrumb.js +1 -1
- package/es/components/leadspace/breadcrumb.js.map +1 -1
- package/es/components/leaving-ibm/leaving-ibm-composite.d.ts +8 -6
- package/es/components/leaving-ibm/leaving-ibm-composite.d.ts.map +1 -1
- package/es/components/leaving-ibm/leaving-ibm-composite.js +7 -7
- package/es/components/leaving-ibm/leaving-ibm-composite.js.map +1 -1
- package/es/components/leaving-ibm/leaving-ibm-modal-body.d.ts +2 -2
- package/es/components/leaving-ibm/leaving-ibm-modal-body.d.ts.map +1 -1
- package/es/components/leaving-ibm/leaving-ibm-modal-body.js +3 -3
- package/es/components/leaving-ibm/leaving-ibm-modal-body.js.map +1 -1
- package/es/components/leaving-ibm/leaving-ibm-modal-heading.d.ts +1 -1
- package/es/components/leaving-ibm/leaving-ibm-modal-heading.d.ts.map +1 -1
- package/es/components/leaving-ibm/leaving-ibm-modal-heading.js +1 -1
- package/es/components/leaving-ibm/leaving-ibm-modal-heading.js.map +1 -1
- package/es/components/leaving-ibm/leaving-ibm-modal.d.ts +1 -1
- package/es/components/leaving-ibm/leaving-ibm-modal.d.ts.map +1 -1
- package/es/components/leaving-ibm/leaving-ibm-modal.js +2 -2
- package/es/components/leaving-ibm/leaving-ibm-modal.js.map +1 -1
- package/es/components/lightbox-media-viewer/lightbox-image-viewer.d.ts.map +1 -1
- package/es/components/lightbox-media-viewer/lightbox-image-viewer.js +1 -1
- package/es/components/lightbox-media-viewer/lightbox-image-viewer.js.map +1 -1
- package/es/components/lightbox-media-viewer/lightbox-media-viewer-body.d.ts +3 -1
- package/es/components/lightbox-media-viewer/lightbox-media-viewer-body.d.ts.map +1 -1
- package/es/components/lightbox-media-viewer/lightbox-media-viewer-body.js +1 -1
- package/es/components/lightbox-media-viewer/lightbox-media-viewer-body.js.map +1 -1
- package/es/components/lightbox-media-viewer/lightbox-video-player-composite.d.ts +1 -3
- package/es/components/lightbox-media-viewer/lightbox-video-player-composite.d.ts.map +1 -1
- package/es/components/lightbox-media-viewer/lightbox-video-player-composite.js +2 -2
- package/es/components/lightbox-media-viewer/lightbox-video-player-composite.js.map +1 -1
- package/es/components/link-with-icon/link-with-icon.d.ts +1 -1
- package/es/components/link-with-icon/link-with-icon.d.ts.map +1 -1
- package/es/components/link-with-icon/link-with-icon.js +1 -1
- package/es/components/link-with-icon/link-with-icon.js.map +1 -1
- package/es/components/locale-modal/locale-item.d.ts +1 -1
- package/es/components/locale-modal/locale-item.d.ts.map +1 -1
- package/es/components/locale-modal/locale-item.js +1 -1
- package/es/components/locale-modal/locale-item.js.map +1 -1
- package/es/components/locale-modal/locale-modal-composite.d.ts.map +1 -1
- package/es/components/locale-modal/locale-modal-composite.js +1 -1
- package/es/components/locale-modal/locale-modal-composite.js.map +1 -1
- package/es/components/locale-modal/locale-modal.d.ts.map +1 -1
- package/es/components/locale-modal/locale-modal.js +5 -5
- package/es/components/locale-modal/locale-modal.js.map +1 -1
- package/es/components/locale-modal/locale-search.d.ts.map +1 -1
- package/es/components/locale-modal/locale-search.js +1 -1
- package/es/components/locale-modal/locale-search.js.map +1 -1
- package/es/components/locale-modal/region-item.d.ts +1 -1
- package/es/components/locale-modal/region-item.d.ts.map +1 -1
- package/es/components/locale-modal/region-item.js +3 -3
- package/es/components/locale-modal/region-item.js.map +1 -1
- package/es/components/locale-modal/regions.d.ts +1 -1
- package/es/components/locale-modal/regions.d.ts.map +1 -1
- package/es/components/locale-modal/regions.js +1 -1
- package/es/components/locale-modal/regions.js.map +1 -1
- package/es/components/markdown/markdown.d.ts +4 -4
- package/es/components/markdown/markdown.d.ts.map +1 -1
- package/es/components/markdown/markdown.js +4 -4
- package/es/components/markdown/markdown.js.map +1 -1
- package/es/components/masthead/cloud/cloud-left-nav-item.d.ts +1 -1
- package/es/components/masthead/cloud/cloud-left-nav-item.d.ts.map +1 -1
- package/es/components/masthead/cloud/cloud-left-nav-item.js +1 -1
- package/es/components/masthead/cloud/cloud-left-nav-item.js.map +1 -1
- package/es/components/masthead/cloud/cloud-masthead-composite.d.ts.map +1 -1
- package/es/components/masthead/cloud/cloud-masthead-composite.js +1 -1
- package/es/components/masthead/cloud/cloud-masthead-composite.js.map +1 -1
- package/es/components/masthead/cloud/cloud-masthead-profile.d.ts.map +1 -1
- package/es/components/masthead/cloud/cloud-masthead-profile.js +1 -1
- package/es/components/masthead/cloud/cloud-masthead-profile.js.map +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-category-heading.d.ts.map +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-category-heading.js +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-category-heading.js.map +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-category-link.d.ts +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-category-link.d.ts.map +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-category-link.js +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-category-link.js.map +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-tab.d.ts +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-tab.d.ts.map +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-tab.js +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-tab.js.map +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-tabs.d.ts +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-tabs.d.ts.map +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-tabs.js +1 -1
- package/es/components/masthead/cloud/cloud-megamenu-tabs.js.map +1 -1
- package/es/components/masthead/left-nav-item.d.ts +1 -1
- package/es/components/masthead/left-nav-item.d.ts.map +1 -1
- package/es/components/masthead/left-nav-item.js +1 -1
- package/es/components/masthead/left-nav-item.js.map +1 -1
- package/es/components/masthead/left-nav-menu-item.d.ts +1 -1
- package/es/components/masthead/left-nav-menu-item.d.ts.map +1 -1
- package/es/components/masthead/left-nav-menu-item.js +1 -1
- package/es/components/masthead/left-nav-menu-item.js.map +1 -1
- package/es/components/masthead/left-nav-menu-section.d.ts +11 -12
- package/es/components/masthead/left-nav-menu-section.d.ts.map +1 -1
- package/es/components/masthead/left-nav-menu-section.js +6 -6
- package/es/components/masthead/left-nav-menu-section.js.map +1 -1
- package/es/components/masthead/left-nav-menu.d.ts +3 -0
- package/es/components/masthead/left-nav-menu.d.ts.map +1 -1
- package/es/components/masthead/left-nav-menu.js +2 -2
- package/es/components/masthead/left-nav-menu.js.map +1 -1
- package/es/components/masthead/left-nav-name.d.ts +1 -1
- package/es/components/masthead/left-nav-name.d.ts.map +1 -1
- package/es/components/masthead/left-nav-name.js +2 -2
- package/es/components/masthead/left-nav-name.js.map +1 -1
- package/es/components/masthead/left-nav.d.ts +1 -1
- package/es/components/masthead/left-nav.d.ts.map +1 -1
- package/es/components/masthead/left-nav.js +3 -3
- package/es/components/masthead/left-nav.js.map +1 -1
- package/es/components/masthead/masthead-composite.d.ts.map +1 -1
- package/es/components/masthead/masthead-composite.js +2 -2
- package/es/components/masthead/masthead-composite.js.map +1 -1
- package/es/components/masthead/masthead-global-bar.d.ts +7 -4
- package/es/components/masthead/masthead-global-bar.d.ts.map +1 -1
- package/es/components/masthead/masthead-global-bar.js +3 -3
- package/es/components/masthead/masthead-global-bar.js.map +1 -1
- package/es/components/masthead/masthead-logo.d.ts +7 -12
- package/es/components/masthead/masthead-logo.d.ts.map +1 -1
- package/es/components/masthead/masthead-logo.js +4 -4
- package/es/components/masthead/masthead-logo.js.map +1 -1
- package/es/components/masthead/masthead-menu-button.d.ts +2 -2
- package/es/components/masthead/masthead-menu-button.d.ts.map +1 -1
- package/es/components/masthead/masthead-menu-button.js +3 -3
- package/es/components/masthead/masthead-menu-button.js.map +1 -1
- package/es/components/masthead/masthead-profile-item.d.ts +1 -1
- package/es/components/masthead/masthead-profile-item.d.ts.map +1 -1
- package/es/components/masthead/masthead-profile-item.js +1 -1
- package/es/components/masthead/masthead-profile-item.js.map +1 -1
- package/es/components/masthead/masthead-profile.d.ts +1 -1
- package/es/components/masthead/masthead-profile.d.ts.map +1 -1
- package/es/components/masthead/masthead-profile.js +5 -5
- package/es/components/masthead/masthead-profile.js.map +1 -1
- package/es/components/masthead/megamenu-category-group.d.ts.map +1 -1
- package/es/components/masthead/megamenu-category-group.js +2 -2
- package/es/components/masthead/megamenu-category-group.js.map +1 -1
- package/es/components/masthead/megamenu-category-link.d.ts +1 -1
- package/es/components/masthead/megamenu-category-link.d.ts.map +1 -1
- package/es/components/masthead/megamenu-category-link.js +1 -1
- package/es/components/masthead/megamenu-category-link.js.map +1 -1
- package/es/components/masthead/megamenu-link-with-icon.d.ts +1 -1
- package/es/components/masthead/megamenu-link-with-icon.d.ts.map +1 -1
- package/es/components/masthead/megamenu-link-with-icon.js +1 -1
- package/es/components/masthead/megamenu-link-with-icon.js.map +1 -1
- package/es/components/masthead/megamenu-right-navigation.d.ts.map +1 -1
- package/es/components/masthead/megamenu-right-navigation.js +1 -1
- package/es/components/masthead/megamenu-right-navigation.js.map +1 -1
- package/es/components/masthead/skip-to-content.d.ts +1 -1
- package/es/components/masthead/skip-to-content.d.ts.map +1 -1
- package/es/components/masthead/skip-to-content.js +1 -1
- package/es/components/masthead/skip-to-content.js.map +1 -1
- package/es/components/masthead/top-nav-item.d.ts +1 -1
- package/es/components/masthead/top-nav-item.d.ts.map +1 -1
- package/es/components/masthead/top-nav-item.js +1 -1
- package/es/components/masthead/top-nav-item.js.map +1 -1
- package/es/components/masthead/top-nav-menu-item.d.ts +1 -1
- package/es/components/masthead/top-nav-menu-item.d.ts.map +1 -1
- package/es/components/masthead/top-nav-menu-item.js +1 -1
- package/es/components/masthead/top-nav-menu-item.js.map +1 -1
- package/es/components/masthead/top-nav-menu.d.ts +1 -1
- package/es/components/masthead/top-nav-menu.d.ts.map +1 -1
- package/es/components/masthead/top-nav-menu.js +1 -1
- package/es/components/masthead/top-nav-menu.js.map +1 -1
- package/es/components/masthead/top-nav-name.d.ts.map +1 -1
- package/es/components/masthead/top-nav-name.js +1 -1
- package/es/components/masthead/top-nav-name.js.map +1 -1
- package/es/components/masthead/top-nav.d.ts +2 -11
- package/es/components/masthead/top-nav.d.ts.map +1 -1
- package/es/components/masthead/top-nav.js +6 -6
- package/es/components/masthead/top-nav.js.map +1 -1
- package/es/components/pricing-table/pricing-table-annotation-toggle.d.ts.map +1 -1
- package/es/components/pricing-table/pricing-table-annotation-toggle.js +2 -2
- package/es/components/pricing-table/pricing-table-annotation-toggle.js.map +1 -1
- package/es/components/pricing-table/pricing-table-cell.d.ts +1 -1
- package/es/components/pricing-table/pricing-table-cell.d.ts.map +1 -1
- package/es/components/pricing-table/pricing-table-cell.js +2 -2
- package/es/components/pricing-table/pricing-table-cell.js.map +1 -1
- package/es/components/pricing-table/pricing-table.d.ts +5 -8
- package/es/components/pricing-table/pricing-table.d.ts.map +1 -1
- package/es/components/pricing-table/pricing-table.js +2 -2
- package/es/components/pricing-table/pricing-table.js.map +1 -1
- package/es/components/search/search.d.ts +2 -2
- package/es/components/search/search.d.ts.map +1 -1
- package/es/components/search/search.js +2 -2
- package/es/components/search/search.js.map +1 -1
- package/es/components/search-with-typeahead/scoped-search-dropdown-mobile.d.ts.map +1 -1
- package/es/components/search-with-typeahead/scoped-search-dropdown-mobile.js +4 -4
- package/es/components/search-with-typeahead/scoped-search-dropdown-mobile.js.map +1 -1
- package/es/components/search-with-typeahead/search-with-typeahead.d.ts +10 -16
- package/es/components/search-with-typeahead/search-with-typeahead.d.ts.map +1 -1
- package/es/components/search-with-typeahead/search-with-typeahead.js +6 -6
- package/es/components/search-with-typeahead/search-with-typeahead.js.map +1 -1
- package/es/components/structured-list/index.d.ts +2 -2
- package/es/components/structured-list/index.d.ts.map +1 -1
- package/es/components/structured-list/index.js +2 -2
- package/es/components/structured-list/index.js.map +1 -1
- package/es/components/structured-list/structured-list-body.d.ts +1 -1
- package/es/components/structured-list/structured-list-body.d.ts.map +1 -1
- package/es/components/structured-list/structured-list-body.js +1 -1
- package/es/components/structured-list/structured-list-body.js.map +1 -1
- package/es/components/structured-list/structured-list-cell.d.ts +1 -1
- package/es/components/structured-list/structured-list-cell.d.ts.map +1 -1
- package/es/components/structured-list/structured-list-cell.js +4 -4
- package/es/components/structured-list/structured-list-cell.js.map +1 -1
- package/es/components/structured-list/structured-list-head.d.ts +1 -1
- package/es/components/structured-list/structured-list-head.d.ts.map +1 -1
- package/es/components/structured-list/structured-list-head.js +1 -1
- package/es/components/structured-list/structured-list-head.js.map +1 -1
- package/es/components/structured-list/structured-list-header-cell.d.ts +1 -1
- package/es/components/structured-list/structured-list-header-cell.d.ts.map +1 -1
- package/es/components/structured-list/structured-list-header-cell.js +1 -1
- package/es/components/structured-list/structured-list-header-cell.js.map +1 -1
- package/es/components/structured-list/structured-list-header-row.d.ts +1 -1
- package/es/components/structured-list/structured-list-header-row.d.ts.map +1 -1
- package/es/components/structured-list/structured-list-header-row.js +1 -1
- package/es/components/structured-list/structured-list-header-row.js.map +1 -1
- package/es/components/structured-list/structured-list-row.d.ts +1 -1
- package/es/components/structured-list/structured-list-row.d.ts.map +1 -1
- package/es/components/structured-list/structured-list-row.js +1 -1
- package/es/components/structured-list/structured-list-row.js.map +1 -1
- package/es/components/table-of-contents/table-of-contents.d.ts +24 -6
- package/es/components/table-of-contents/table-of-contents.d.ts.map +1 -1
- package/es/components/table-of-contents/table-of-contents.js +5 -5
- package/es/components/table-of-contents/table-of-contents.js.map +1 -1
- package/es/components/tabs-extended/tabs-extended.d.ts.map +1 -1
- package/es/components/tabs-extended/tabs-extended.js +1 -1
- package/es/components/tabs-extended/tabs-extended.js.map +1 -1
- package/es/components/tag-link/tag-link.d.ts.map +1 -1
- package/es/components/tag-link/tag-link.js +1 -1
- package/es/components/tag-link/tag-link.js.map +1 -1
- package/es/components/video-player/video-player-composite.d.ts +7 -2
- package/es/components/video-player/video-player-composite.d.ts.map +1 -1
- package/es/components/video-player/video-player-composite.js +3 -3
- package/es/components/video-player/video-player-composite.js.map +1 -1
- package/es/components/video-player/video-player.d.ts +6 -0
- package/es/components/video-player/video-player.d.ts.map +1 -1
- package/es/components/video-player/video-player.js +2 -2
- package/es/components/video-player/video-player.js.map +1 -1
- package/es/components-react/back-to-top/back-to-top.js +1 -1
- package/es/components-react/background-media/background-media.js +1 -1
- package/es/components-react/button/button.js +2 -2
- package/es/components-react/button-group/button-group-item.js +1 -1
- package/es/components-react/button-group/button-group.js +1 -1
- package/es/components-react/callout-quote/callout-link-with-icon.js +1 -1
- package/es/components-react/callout-quote/callout-quote.js +1 -1
- package/es/components-react/callout-with-media/callout-with-media-copy.js +1 -1
- package/es/components-react/callout-with-media/callout-with-media-image.js +1 -1
- package/es/components-react/callout-with-media/callout-with-media-video.js +1 -1
- package/es/components-react/callout-with-media/callout-with-media.js +1 -1
- package/es/components-react/card/card-eyebrow.js +1 -1
- package/es/components-react/card/card-footer.js +1 -1
- package/es/components-react/card/card-heading.js +1 -1
- package/es/components-react/card/card.js +3 -3
- package/es/components-react/card/image-logo.js +1 -1
- package/es/components-react/card-group/card-group-card-link-item.js +1 -1
- package/es/components-react/card-group/card-group-item.js +1 -1
- package/es/components-react/card-group/card-group.js +1 -1
- package/es/components-react/card-in-card/card-in-card-image.js +1 -1
- package/es/components-react/card-in-card/card-in-card.js +1 -1
- package/es/components-react/card-link/card-link-heading.js +1 -1
- package/es/components-react/card-link/card-link.js +1 -1
- package/es/components-react/card-section-carousel/card-section-carousel.js +1 -1
- package/es/components-react/card-section-offset/card-section-offset.js +1 -1
- package/es/components-react/card-section-simple/card-section-simple.js +1 -1
- package/es/components-react/carousel/carousel.js +1 -1
- package/es/components-react/content-block/content-block-complementary.js +1 -1
- package/es/components-react/content-block/content-block-copy.js +1 -1
- package/es/components-react/content-block/content-block-heading.js +1 -1
- package/es/components-react/content-block/content-block-paragraph.js +1 -1
- package/es/components-react/content-block/content-block.js +1 -1
- package/es/components-react/content-block-cards/content-block-cards.js +1 -1
- package/es/components-react/content-block-horizontal/content-block-horizontal.js +1 -1
- package/es/components-react/content-block-media/content-block-media-content.js +1 -1
- package/es/components-react/content-block-media/content-block-media.js +1 -1
- package/es/components-react/content-block-mixed/content-block-mixed.js +1 -1
- package/es/components-react/content-block-segmented/content-block-segmented-item.js +1 -1
- package/es/components-react/content-block-segmented/content-block-segmented.js +1 -1
- package/es/components-react/content-block-simple/content-block-simple.js +1 -1
- package/es/components-react/content-group/content-group-copy.js +1 -1
- package/es/components-react/content-group/content-group-heading.js +1 -1
- package/es/components-react/content-group/content-group-paragraph.js +1 -1
- package/es/components-react/content-group/content-group.js +1 -1
- package/es/components-react/content-group-banner/content-group-banner.js +1 -1
- package/es/components-react/content-group-cards/content-group-cards-item.js +1 -1
- package/es/components-react/content-group-cards/content-group-cards.js +1 -1
- package/es/components-react/content-group-pictograms/content-group-pictograms.js +1 -1
- package/es/components-react/content-group-simple/content-group-simple.js +1 -1
- package/es/components-react/content-item/content-item-copy.js +1 -1
- package/es/components-react/content-item/content-item-heading.js +1 -1
- package/es/components-react/content-item/content-item-paragraph.js +1 -1
- package/es/components-react/content-item/content-item.js +1 -1
- package/es/components-react/content-item-horizontal/content-item-horizontal-copy.js +1 -1
- package/es/components-react/content-item-horizontal/content-item-horizontal-eyebrow.js +1 -1
- package/es/components-react/content-item-horizontal/content-item-horizontal-media-copy.js +1 -1
- package/es/components-react/content-item-horizontal/content-item-horizontal-media-featured.js +1 -1
- package/es/components-react/content-item-horizontal/content-item-horizontal-media-video.js +1 -1
- package/es/components-react/content-item-horizontal/content-item-horizontal-media.js +1 -1
- package/es/components-react/content-item-horizontal/content-item-horizontal-thumbnail-copy.js +1 -1
- package/es/components-react/content-item-horizontal/content-item-horizontal.js +1 -1
- package/es/components-react/content-section/content-section-copy.js +1 -1
- package/es/components-react/content-section/content-section-heading.js +1 -1
- package/es/components-react/content-section/content-section.js +1 -1
- package/es/components-react/cta/button-cta.js +1 -1
- package/es/components-react/cta/card-cta-footer.js +1 -1
- package/es/components-react/cta/card-cta-image.js +1 -1
- package/es/components-react/cta/card-cta.js +1 -1
- package/es/components-react/cta/card-link-cta.js +1 -1
- package/es/components-react/cta/feature-cta-footer.js +1 -1
- package/es/components-react/cta/feature-cta.js +1 -1
- package/es/components-react/cta/link-list-item-card-cta.js +1 -1
- package/es/components-react/cta/link-list-item-cta.js +1 -1
- package/es/components-react/cta/text-cta.js +1 -1
- package/es/components-react/cta/video-cta-composite.js +1 -1
- package/es/components-react/cta/video-cta-container.js +1 -1
- package/es/components-react/cta-block/cta-block-item-row.js +1 -1
- package/es/components-react/cta-block/cta-block-item.js +1 -1
- package/es/components-react/cta-block/cta-block.js +1 -1
- package/es/components-react/cta-section/cta-section.js +1 -1
- package/es/components-react/dotcom-shell/dotcom-shell-composite.js +1 -1
- package/es/components-react/dotcom-shell/dotcom-shell-container.js +1 -1
- package/es/components-react/dotcom-shell/dotcom-shell.js +1 -1
- package/es/components-react/expressive-modal/expressive-modal-body.js +3 -3
- package/es/components-react/expressive-modal/expressive-modal-close-button.js +3 -3
- package/es/components-react/expressive-modal/expressive-modal-footer.js +3 -3
- package/es/components-react/expressive-modal/expressive-modal-header.js +3 -3
- package/es/components-react/expressive-modal/expressive-modal-heading.js +3 -3
- package/es/components-react/expressive-modal/expressive-modal.js +1 -1
- package/es/components-react/feature-card/feature-card-footer.js +1 -1
- package/es/components-react/feature-card/feature-card.js +1 -1
- package/es/components-react/feature-section/feature-section-card-link.js +1 -1
- package/es/components-react/feature-section/feature-section.js +1 -1
- package/es/components-react/filter-panel/filter-group-item.js +3 -3
- package/es/components-react/filter-panel/filter-group.js +3 -3
- package/es/components-react/filter-panel/filter-modal-button.js +3 -3
- package/es/components-react/filter-panel/filter-modal-footer.js +3 -3
- package/es/components-react/filter-panel/filter-modal-heading.js +3 -3
- package/es/components-react/filter-panel/filter-panel-checkbox.js +3 -3
- package/es/components-react/filter-panel/filter-panel-composite.js +1 -1
- package/es/components-react/filter-panel/filter-panel-heading.js +1 -1
- package/es/components-react/filter-panel/filter-panel-input-select-item.js +1 -1
- package/es/components-react/filter-panel/filter-panel-input-select.js +1 -1
- package/es/components-react/filter-panel/filter-panel-modal.js +3 -3
- package/es/components-react/filter-panel/filter-panel.js +1 -1
- package/es/components-react/footer/dropdown.js +3 -3
- package/es/components-react/footer/footer-composite.js +1 -1
- package/es/components-react/footer/footer-container.js +1 -1
- package/es/components-react/horizontal-rule/horizontal-rule.js +1 -1
- package/es/components-react/image/image-item.js +1 -1
- package/es/components-react/image/image.js +1 -1
- package/es/components-react/leadspace/breadcrumb-item.js +3 -3
- package/es/components-react/leadspace/breadcrumb-link.js +3 -3
- package/es/components-react/leadspace/breadcrumb.js +3 -3
- package/es/components-react/leadspace/leadspace-heading.js +1 -1
- package/es/components-react/leadspace/leadspace-image.js +1 -1
- package/es/components-react/leadspace/leadspace.js +1 -1
- package/es/components-react/leadspace-block/leadspace-block-content.js +1 -1
- package/es/components-react/leadspace-block/leadspace-block-cta.js +1 -1
- package/es/components-react/leadspace-block/leadspace-block-heading.js +1 -1
- package/es/components-react/leadspace-block/leadspace-block-media.js +1 -1
- package/es/components-react/leadspace-block/leadspace-block.js +1 -1
- package/es/components-react/leadspace-with-search/leadspace-with-search-content-copy.js +1 -1
- package/es/components-react/leadspace-with-search/leadspace-with-search-content-heading.js +1 -1
- package/es/components-react/leadspace-with-search/leadspace-with-search-content.js +1 -1
- package/es/components-react/leadspace-with-search/leadspace-with-search-heading.js +1 -1
- package/es/components-react/leadspace-with-search/leadspace-with-search.js +1 -1
- package/es/components-react/leaving-ibm/leaving-ibm-composite.js +1 -1
- package/es/components-react/leaving-ibm/leaving-ibm-container.js +1 -1
- package/es/components-react/leaving-ibm/leaving-ibm-modal-body.js +3 -3
- package/es/components-react/leaving-ibm/leaving-ibm-modal-heading.js +3 -3
- package/es/components-react/leaving-ibm/leaving-ibm-modal-supplemental.js +1 -1
- package/es/components-react/leaving-ibm/leaving-ibm-modal.js +3 -3
- package/es/components-react/lightbox-media-viewer/lightbox-image-viewer.js +1 -1
- package/es/components-react/lightbox-media-viewer/lightbox-media-viewer.js +1 -1
- package/es/components-react/lightbox-media-viewer/lightbox-video-player-composite.js +1 -1
- package/es/components-react/lightbox-media-viewer/lightbox-video-player-container.js +1 -1
- package/es/components-react/lightbox-media-viewer/lightbox-video-player.js +1 -1
- package/es/components-react/link-list/link-list-heading.js +1 -1
- package/es/components-react/link-list/link-list-item-card.js +1 -1
- package/es/components-react/link-list/link-list-item.js +1 -1
- package/es/components-react/link-list/link-list.js +1 -1
- package/es/components-react/link-list-section/link-list-section.js +1 -1
- package/es/components-react/link-with-icon/link-with-icon.js +3 -3
- package/es/components-react/locale-modal/locale-modal-composite.js +1 -1
- package/es/components-react/locale-modal/locale-modal-container.js +1 -1
- package/es/components-react/logo-grid/logo-grid-item.js +1 -1
- package/es/components-react/logo-grid/logo-grid-link.js +1 -1
- package/es/components-react/logo-grid/logo-grid.js +1 -1
- package/es/components-react/markdown/markdown.js +1 -1
- package/es/components-react/masthead/masthead-composite.js +1 -1
- package/es/components-react/masthead/masthead-container.js +1 -1
- package/es/components-react/masthead/masthead.js +1 -1
- package/es/components-react/pictogram-item/pictogram-item.js +1 -1
- package/es/components-react/quote/quote-link-with-icon.js +1 -1
- package/es/components-react/quote/quote-source-bottom-copy.js +1 -1
- package/es/components-react/quote/quote-source-copy.js +1 -1
- package/es/components-react/quote/quote-source-heading.js +1 -1
- package/es/components-react/quote/quote.js +1 -1
- package/es/components-react/search-with-typeahead/scoped-search-dropdown-mobile.js +3 -3
- package/es/components-react/search-with-typeahead/scoped-search-dropdown.js +1 -1
- package/es/components-react/search-with-typeahead/search-with-typeahead-item.js +1 -1
- package/es/components-react/search-with-typeahead/search-with-typeahead.js +3 -3
- package/es/components-react/structured-list/structured-list-body.js +3 -3
- package/es/components-react/structured-list/structured-list-cell.js +3 -3
- package/es/components-react/structured-list/structured-list-group.js +1 -1
- package/es/components-react/structured-list/structured-list-head.js +3 -3
- package/es/components-react/structured-list/structured-list-header-cell.js +3 -3
- package/es/components-react/structured-list/structured-list-header-row.js +3 -3
- package/es/components-react/structured-list/structured-list-row.js +3 -3
- package/es/components-react/structured-list/structured-list.js +1 -1
- package/es/components-react/table-of-contents/table-of-contents.js +1 -1
- package/es/components-react/tabs-extended/tab.js +1 -1
- package/es/components-react/tabs-extended/tabs-extended.js +1 -1
- package/es/components-react/tabs-extended-media/tabs-extended-media.js +1 -1
- package/es/components-react/tag-group/tag-group.js +1 -1
- package/es/components-react/tag-link/tag-link.js +1 -1
- package/es/components-react/universal-banner/universal-banner-copy.js +1 -1
- package/es/components-react/universal-banner/universal-banner-heading.js +1 -1
- package/es/components-react/universal-banner/universal-banner-image.js +1 -1
- package/es/components-react/universal-banner/universal-banner.js +1 -1
- package/es/components-react/video-player/video-player-composite.js +1 -1
- package/es/components-react/video-player/video-player-container.js +1 -1
- package/es/components-react/video-player/video-player.js +1 -1
- package/es/icons/IBM-8bar-logo--h23.js +1 -1
- package/es/icons/IBM-8bar-logo--h65-white.js +1 -1
- package/es/icons/play-video.js +1 -1
- package/lib/components-react-node/back-to-top/back-to-top.js +1 -1
- package/lib/components-react-node/background-media/background-media.js +1 -1
- package/lib/components-react-node/button/button.js +2 -2
- package/lib/components-react-node/button-group/button-group-item.js +1 -1
- package/lib/components-react-node/button-group/button-group.js +1 -1
- package/lib/components-react-node/callout-quote/callout-link-with-icon.js +1 -1
- package/lib/components-react-node/callout-quote/callout-quote.js +1 -1
- package/lib/components-react-node/callout-with-media/callout-with-media-copy.js +1 -1
- package/lib/components-react-node/callout-with-media/callout-with-media-image.js +1 -1
- package/lib/components-react-node/callout-with-media/callout-with-media-video.js +1 -1
- package/lib/components-react-node/callout-with-media/callout-with-media.js +1 -1
- package/lib/components-react-node/card/card-eyebrow.js +1 -1
- package/lib/components-react-node/card/card-footer.js +1 -1
- package/lib/components-react-node/card/card-heading.js +1 -1
- package/lib/components-react-node/card/card.js +2 -2
- package/lib/components-react-node/card/image-logo.js +1 -1
- package/lib/components-react-node/card-group/card-group-card-link-item.js +1 -1
- package/lib/components-react-node/card-group/card-group-item.js +1 -1
- package/lib/components-react-node/card-group/card-group.js +1 -1
- package/lib/components-react-node/card-in-card/card-in-card-image.js +1 -1
- package/lib/components-react-node/card-in-card/card-in-card.js +1 -1
- package/lib/components-react-node/card-link/card-link-heading.js +1 -1
- package/lib/components-react-node/card-link/card-link.js +1 -1
- package/lib/components-react-node/card-section-carousel/card-section-carousel.js +1 -1
- package/lib/components-react-node/card-section-offset/card-section-offset.js +1 -1
- package/lib/components-react-node/card-section-simple/card-section-simple.js +1 -1
- package/lib/components-react-node/carousel/carousel.js +1 -1
- package/lib/components-react-node/content-block/content-block-complementary.js +1 -1
- package/lib/components-react-node/content-block/content-block-copy.js +1 -1
- package/lib/components-react-node/content-block/content-block-heading.js +1 -1
- package/lib/components-react-node/content-block/content-block-paragraph.js +1 -1
- package/lib/components-react-node/content-block/content-block.js +1 -1
- package/lib/components-react-node/content-block-cards/content-block-cards.js +1 -1
- package/lib/components-react-node/content-block-horizontal/content-block-horizontal.js +1 -1
- package/lib/components-react-node/content-block-media/content-block-media-content.js +1 -1
- package/lib/components-react-node/content-block-media/content-block-media.js +1 -1
- package/lib/components-react-node/content-block-mixed/content-block-mixed.js +1 -1
- package/lib/components-react-node/content-block-segmented/content-block-segmented-item.js +1 -1
- package/lib/components-react-node/content-block-segmented/content-block-segmented.js +1 -1
- package/lib/components-react-node/content-block-simple/content-block-simple.js +1 -1
- package/lib/components-react-node/content-group/content-group-copy.js +1 -1
- package/lib/components-react-node/content-group/content-group-heading.js +1 -1
- package/lib/components-react-node/content-group/content-group-paragraph.js +1 -1
- package/lib/components-react-node/content-group/content-group.js +1 -1
- package/lib/components-react-node/content-group-banner/content-group-banner.js +1 -1
- package/lib/components-react-node/content-group-cards/content-group-cards-item.js +1 -1
- package/lib/components-react-node/content-group-cards/content-group-cards.js +1 -1
- package/lib/components-react-node/content-group-pictograms/content-group-pictograms.js +1 -1
- package/lib/components-react-node/content-group-simple/content-group-simple.js +1 -1
- package/lib/components-react-node/content-item/content-item-copy.js +1 -1
- package/lib/components-react-node/content-item/content-item-heading.js +1 -1
- package/lib/components-react-node/content-item/content-item-paragraph.js +1 -1
- package/lib/components-react-node/content-item/content-item.js +1 -1
- package/lib/components-react-node/content-item-horizontal/content-item-horizontal-copy.js +1 -1
- package/lib/components-react-node/content-item-horizontal/content-item-horizontal-eyebrow.js +1 -1
- package/lib/components-react-node/content-item-horizontal/content-item-horizontal-media-copy.js +1 -1
- package/lib/components-react-node/content-item-horizontal/content-item-horizontal-media-featured.js +1 -1
- package/lib/components-react-node/content-item-horizontal/content-item-horizontal-media-video.js +1 -1
- package/lib/components-react-node/content-item-horizontal/content-item-horizontal-media.js +1 -1
- package/lib/components-react-node/content-item-horizontal/content-item-horizontal-thumbnail-copy.js +1 -1
- package/lib/components-react-node/content-item-horizontal/content-item-horizontal.js +1 -1
- package/lib/components-react-node/content-section/content-section-copy.js +1 -1
- package/lib/components-react-node/content-section/content-section-heading.js +1 -1
- package/lib/components-react-node/content-section/content-section.js +1 -1
- package/lib/components-react-node/cta/button-cta.js +1 -1
- package/lib/components-react-node/cta/card-cta-footer.js +1 -1
- package/lib/components-react-node/cta/card-cta-image.js +1 -1
- package/lib/components-react-node/cta/card-cta.js +1 -1
- package/lib/components-react-node/cta/card-link-cta.js +1 -1
- package/lib/components-react-node/cta/feature-cta-footer.js +1 -1
- package/lib/components-react-node/cta/feature-cta.js +1 -1
- package/lib/components-react-node/cta/link-list-item-card-cta.js +1 -1
- package/lib/components-react-node/cta/link-list-item-cta.js +1 -1
- package/lib/components-react-node/cta/text-cta.js +1 -1
- package/lib/components-react-node/cta/video-cta-composite.js +1 -1
- package/lib/components-react-node/cta/video-cta-container.js +1 -1
- package/lib/components-react-node/cta-block/cta-block-item-row.js +1 -1
- package/lib/components-react-node/cta-block/cta-block-item.js +1 -1
- package/lib/components-react-node/cta-block/cta-block.js +1 -1
- package/lib/components-react-node/cta-section/cta-section.js +1 -1
- package/lib/components-react-node/dotcom-shell/dotcom-shell-composite.js +1 -1
- package/lib/components-react-node/dotcom-shell/dotcom-shell-container.js +1 -1
- package/lib/components-react-node/dotcom-shell/dotcom-shell.js +1 -1
- package/lib/components-react-node/expressive-modal/expressive-modal-body.js +2 -2
- package/lib/components-react-node/expressive-modal/expressive-modal-close-button.js +2 -2
- package/lib/components-react-node/expressive-modal/expressive-modal-footer.js +2 -2
- package/lib/components-react-node/expressive-modal/expressive-modal-header.js +2 -2
- package/lib/components-react-node/expressive-modal/expressive-modal-heading.js +2 -2
- package/lib/components-react-node/expressive-modal/expressive-modal.js +1 -1
- package/lib/components-react-node/feature-card/feature-card-footer.js +1 -1
- package/lib/components-react-node/feature-card/feature-card.js +1 -1
- package/lib/components-react-node/feature-section/feature-section-card-link.js +1 -1
- package/lib/components-react-node/feature-section/feature-section.js +1 -1
- package/lib/components-react-node/filter-panel/filter-group-item.js +2 -2
- package/lib/components-react-node/filter-panel/filter-group.js +2 -2
- package/lib/components-react-node/filter-panel/filter-modal-button.js +2 -2
- package/lib/components-react-node/filter-panel/filter-modal-footer.js +2 -2
- package/lib/components-react-node/filter-panel/filter-modal-heading.js +2 -2
- package/lib/components-react-node/filter-panel/filter-panel-checkbox.js +2 -2
- package/lib/components-react-node/filter-panel/filter-panel-composite.js +1 -1
- package/lib/components-react-node/filter-panel/filter-panel-heading.js +1 -1
- package/lib/components-react-node/filter-panel/filter-panel-input-select-item.js +1 -1
- package/lib/components-react-node/filter-panel/filter-panel-input-select.js +1 -1
- package/lib/components-react-node/filter-panel/filter-panel-modal.js +2 -2
- package/lib/components-react-node/filter-panel/filter-panel.js +1 -1
- package/lib/components-react-node/footer/dropdown.js +2 -2
- package/lib/components-react-node/footer/footer-composite.js +1 -1
- package/lib/components-react-node/footer/footer-container.js +1 -1
- package/lib/components-react-node/horizontal-rule/horizontal-rule.js +1 -1
- package/lib/components-react-node/image/image-item.js +1 -1
- package/lib/components-react-node/image/image.js +1 -1
- package/lib/components-react-node/leadspace/breadcrumb-item.js +2 -2
- package/lib/components-react-node/leadspace/breadcrumb-link.js +2 -2
- package/lib/components-react-node/leadspace/breadcrumb.js +2 -2
- package/lib/components-react-node/leadspace/leadspace-heading.js +1 -1
- package/lib/components-react-node/leadspace/leadspace-image.js +1 -1
- package/lib/components-react-node/leadspace/leadspace.js +1 -1
- package/lib/components-react-node/leadspace-block/leadspace-block-content.js +1 -1
- package/lib/components-react-node/leadspace-block/leadspace-block-cta.js +1 -1
- package/lib/components-react-node/leadspace-block/leadspace-block-heading.js +1 -1
- package/lib/components-react-node/leadspace-block/leadspace-block-media.js +1 -1
- package/lib/components-react-node/leadspace-block/leadspace-block.js +1 -1
- package/lib/components-react-node/leadspace-with-search/leadspace-with-search-content-copy.js +1 -1
- package/lib/components-react-node/leadspace-with-search/leadspace-with-search-content-heading.js +1 -1
- package/lib/components-react-node/leadspace-with-search/leadspace-with-search-content.js +1 -1
- package/lib/components-react-node/leadspace-with-search/leadspace-with-search-heading.js +1 -1
- package/lib/components-react-node/leadspace-with-search/leadspace-with-search.js +1 -1
- package/lib/components-react-node/leaving-ibm/leaving-ibm-composite.js +1 -1
- package/lib/components-react-node/leaving-ibm/leaving-ibm-container.js +1 -1
- package/lib/components-react-node/leaving-ibm/leaving-ibm-modal-body.js +2 -2
- package/lib/components-react-node/leaving-ibm/leaving-ibm-modal-heading.js +2 -2
- package/lib/components-react-node/leaving-ibm/leaving-ibm-modal-supplemental.js +1 -1
- package/lib/components-react-node/leaving-ibm/leaving-ibm-modal.js +2 -2
- package/lib/components-react-node/lightbox-media-viewer/lightbox-image-viewer.js +1 -1
- package/lib/components-react-node/lightbox-media-viewer/lightbox-media-viewer.js +1 -1
- package/lib/components-react-node/lightbox-media-viewer/lightbox-video-player-composite.js +1 -1
- package/lib/components-react-node/lightbox-media-viewer/lightbox-video-player-container.js +1 -1
- package/lib/components-react-node/lightbox-media-viewer/lightbox-video-player.js +1 -1
- package/lib/components-react-node/link-list/link-list-heading.js +1 -1
- package/lib/components-react-node/link-list/link-list-item-card.js +1 -1
- package/lib/components-react-node/link-list/link-list-item.js +1 -1
- package/lib/components-react-node/link-list/link-list.js +1 -1
- package/lib/components-react-node/link-list-section/link-list-section.js +1 -1
- package/lib/components-react-node/link-with-icon/link-with-icon.js +2 -2
- package/lib/components-react-node/locale-modal/locale-modal-composite.js +1 -1
- package/lib/components-react-node/locale-modal/locale-modal-container.js +1 -1
- package/lib/components-react-node/logo-grid/logo-grid-item.js +1 -1
- package/lib/components-react-node/logo-grid/logo-grid-link.js +1 -1
- package/lib/components-react-node/logo-grid/logo-grid.js +1 -1
- package/lib/components-react-node/markdown/markdown.js +1 -1
- package/lib/components-react-node/masthead/masthead-composite.js +1 -1
- package/lib/components-react-node/masthead/masthead-container.js +1 -1
- package/lib/components-react-node/masthead/masthead.js +1 -1
- package/lib/components-react-node/pictogram-item/pictogram-item.js +1 -1
- package/lib/components-react-node/quote/quote-link-with-icon.js +1 -1
- package/lib/components-react-node/quote/quote-source-bottom-copy.js +1 -1
- package/lib/components-react-node/quote/quote-source-copy.js +1 -1
- package/lib/components-react-node/quote/quote-source-heading.js +1 -1
- package/lib/components-react-node/quote/quote.js +1 -1
- package/lib/components-react-node/search-with-typeahead/scoped-search-dropdown-mobile.js +2 -2
- package/lib/components-react-node/search-with-typeahead/scoped-search-dropdown.js +1 -1
- package/lib/components-react-node/search-with-typeahead/search-with-typeahead-item.js +1 -1
- package/lib/components-react-node/search-with-typeahead/search-with-typeahead.js +2 -2
- package/lib/components-react-node/structured-list/structured-list-body.js +2 -2
- package/lib/components-react-node/structured-list/structured-list-cell.js +2 -2
- package/lib/components-react-node/structured-list/structured-list-group.js +1 -1
- package/lib/components-react-node/structured-list/structured-list-head.js +2 -2
- package/lib/components-react-node/structured-list/structured-list-header-cell.js +2 -2
- package/lib/components-react-node/structured-list/structured-list-header-row.js +2 -2
- package/lib/components-react-node/structured-list/structured-list-row.js +2 -2
- package/lib/components-react-node/structured-list/structured-list.js +1 -1
- package/lib/components-react-node/table-of-contents/table-of-contents.js +1 -1
- package/lib/components-react-node/tabs-extended/tab.js +1 -1
- package/lib/components-react-node/tabs-extended/tabs-extended.js +1 -1
- package/lib/components-react-node/tabs-extended-media/tabs-extended-media.js +1 -1
- package/lib/components-react-node/tag-group/tag-group.js +1 -1
- package/lib/components-react-node/tag-link/tag-link.js +1 -1
- package/lib/components-react-node/universal-banner/universal-banner-copy.js +1 -1
- package/lib/components-react-node/universal-banner/universal-banner-heading.js +1 -1
- package/lib/components-react-node/universal-banner/universal-banner-image.js +1 -1
- package/lib/components-react-node/universal-banner/universal-banner.js +1 -1
- package/lib/components-react-node/video-player/video-player-composite.js +1 -1
- package/lib/components-react-node/video-player/video-player-container.js +1 -1
- package/lib/components-react-node/video-player/video-player.js +1 -1
- package/package.json +4 -4
- package/scss/components/background-media/background-media.scss +1 -1
- package/scss/components/button/button.scss +1 -1
- package/scss/components/expressive-modal/expressive-modal.scss +1 -1
- package/scss/components/filter-panel/filter-panel.scss +1 -1
- package/scss/components/leadspace/leadspace.scss +1 -1
- package/scss/components/leaving-ibm/leaving-ibm.scss +1 -1
- package/scss/components/masthead/masthead.scss +3 -3
- package/scss/components/search/search.scss +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["components/masthead/top-nav-menu.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,YAAY,MAAM,
|
|
1
|
+
{"version":3,"sources":["components/masthead/top-nav-menu.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,YAAY,MAAM,8DAA8D,CAAC;AAMxF;;;;GAIG;AACH,cACM,aAAc,SAAQ,YAAY;IACtC;;OAEG;IAEH,OAAO,CAAC,YAAY,CAAC,CAAoB;IAEzC;;OAEG;IAEH,MAAM,UAAS;IAEf,OAAO,CAAC,iBAAiB,KAAA;IAczB,iBAAiB;IAKjB,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,aAAa,CAAC","file":"top-nav-menu.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { property, query, customElement } from 'lit-element';\nimport BXHeaderMenu from '@carbon/web-components/es/components/ui-shell/header-menu.js';\nimport ddsSettings from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings';\nimport styles from './masthead.scss';\n\nconst { stablePrefix: ddsPrefix } = ddsSettings;\n\n/**\n * Masthead top nav submenu.\n *\n * @element dds-top-nav-menu\n */\n@customElement(`${ddsPrefix}-top-nav-menu`)\nclass DDSTopNavMenu extends BXHeaderMenu {\n /**\n * The trigger button.\n */\n @query('[part=\"trigger\"]')\n private _triggerNode?: HTMLAnchorElement;\n\n /**\n * `true` if this submenu should be in its active state.\n */\n @property({ type: Boolean, reflect: true })\n active = false;\n\n updated(changedProperties) {\n super.updated(changedProperties);\n if (changedProperties.has('active')) {\n const { active, _triggerNode: triggerNode } = this;\n if (triggerNode) {\n triggerNode.setAttribute('data-selected', String(Boolean(active)));\n }\n }\n\n this.shadowRoot\n ?.querySelectorAll('[role=\"menuitem\"]')\n .forEach((menuItem) => menuItem.removeAttribute('role'));\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.removeAttribute('role');\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default DDSTopNavMenu;\n"]}
|
|
@@ -11,7 +11,7 @@ import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
13
|
import { property, query, customElement } from 'lit-element';
|
|
14
|
-
import BXHeaderMenu from '@carbon/
|
|
14
|
+
import BXHeaderMenu from '@carbon/web-components/es/components/ui-shell/header-menu.js';
|
|
15
15
|
import ddsSettings from "../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings.js";
|
|
16
16
|
import styles from "././masthead.css.js";
|
|
17
17
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"top-nav-menu.js","names":["property","query","customElement","BXHeaderMenu","ddsSettings","styles","stablePrefix","ddsPrefix","DDSTopNavMenu","type","Boolean","reflect","changedProperties","has","active","_triggerNode","triggerNode","setAttribute","String","shadowRoot","querySelectorAll","forEach","menuItem","removeAttribute"],"sources":["components/masthead/top-nav-menu.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { property, query, customElement } from 'lit-element';\nimport BXHeaderMenu from '@carbon/
|
|
1
|
+
{"version":3,"file":"top-nav-menu.js","names":["property","query","customElement","BXHeaderMenu","ddsSettings","styles","stablePrefix","ddsPrefix","DDSTopNavMenu","type","Boolean","reflect","changedProperties","has","active","_triggerNode","triggerNode","setAttribute","String","shadowRoot","querySelectorAll","forEach","menuItem","removeAttribute"],"sources":["components/masthead/top-nav-menu.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { property, query, customElement } from 'lit-element';\nimport BXHeaderMenu from '@carbon/web-components/es/components/ui-shell/header-menu.js';\nimport ddsSettings from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings';\nimport styles from './masthead.scss';\n\nconst { stablePrefix: ddsPrefix } = ddsSettings;\n\n/**\n * Masthead top nav submenu.\n *\n * @element dds-top-nav-menu\n */\n@customElement(`${ddsPrefix}-top-nav-menu`)\nclass DDSTopNavMenu extends BXHeaderMenu {\n /**\n * The trigger button.\n */\n @query('[part=\"trigger\"]')\n private _triggerNode?: HTMLAnchorElement;\n\n /**\n * `true` if this submenu should be in its active state.\n */\n @property({ type: Boolean, reflect: true })\n active = false;\n\n updated(changedProperties) {\n super.updated(changedProperties);\n if (changedProperties.has('active')) {\n const { active, _triggerNode: triggerNode } = this;\n if (triggerNode) {\n triggerNode.setAttribute('data-selected', String(Boolean(active)));\n }\n }\n\n this.shadowRoot\n ?.querySelectorAll('[role=\"menuitem\"]')\n .forEach((menuItem) => menuItem.removeAttribute('role'));\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.removeAttribute('role');\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default DDSTopNavMenu;\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,QAAQ,EAAEC,KAAK,EAAEC,aAAa,QAAQ,aAAa;AAC5D,OAAOC,YAAY,MAAM,8DAA8D;AACvF,OAAOC,WAAW,MAAM,kFAA+E;AACvG,OAAOC,MAAM,MAAM,qBAAiB;AAEpC,MAAM;EAAEC,YAAY,EAAEC;AAAU,CAAC,GAAGH,WAAW;;AAE/C;AACA;AACA;AACA;AACA;AAJA,IAMMI,aAAa,cADlBN,aAAa,CAAE,GAAEK,SAAU,eAAc,CAAC;EAA3C,MACMC,aAAa,uBAAsB;IAAA;MAAA;MAAA;IAAA;EAiCzC;EAAC;IAAA,GAjCKA,aAAa;IAAA;MAAA;MAAA,aAIhBP,KAAK,CAAC,kBAAkB,CAAC;MAAA;MAAA;IAAA;MAAA;MAAA,aAMzBD,QAAQ,CAAC;QAAES,IAAI,EAAEC,OAAO;QAAEC,OAAO,EAAE;MAAK,CAAC,CAAC;MAAA;MAAA;QAAA,OAClC,KAAK;MAAA;IAAA;MAAA;MAAA;MAAA;MAVd;AACF;AACA;;MAIE;AACF;AACA;;MAIE,iBAAQC,iBAAiB,EAAE;QAAA;QACzB,qBAdEJ,aAAa,yCAcDI,iBAAiB;QAC/B,IAAIA,iBAAiB,CAACC,GAAG,CAAC,QAAQ,CAAC,EAAE;UACnC,MAAM;YAAEC,MAAM;YAAEC,YAAY,EAAEC;UAAY,CAAC,GAAG,IAAI;UAClD,IAAIA,WAAW,EAAE;YACfA,WAAW,CAACC,YAAY,CAAC,eAAe,EAAEC,MAAM,CAACR,OAAO,CAACI,MAAM,CAAC,CAAC,CAAC;UACpE;QACF;QAEA,wBAAI,CAACK,UAAU,qDAAf,iBACIC,gBAAgB,CAAC,mBAAmB,CAAC,CACtCC,OAAO,CAAEC,QAAQ,IAAKA,QAAQ,CAACC,eAAe,CAAC,MAAM,CAAC,CAAC;MAC5D;IAAC;MAAA;MAAA;MAAA,OAED,6BAAoB;QAClB,qBA5BEf,aAAa;QA6Bf,IAAI,CAACe,eAAe,CAAC,MAAM,CAAC;MAC9B;IAAC;MAAA;MAAA;MAAA;MAAA;QAAA,OAEelB,MAAM;MAAA;IAAA;EAAA;AAAA,GAhCIF,YAAY;AAmCxC,eAAeK,aAAa"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["components/masthead/top-nav-name.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,OAAO,cAAc,MAAM,iBAAiB,CAAC;AAM7C;;;;GAIG;AACH,cACM,aAAc,SAAQ,cAAc;IACxC,iBAAiB;IASjB,oBAAoB;IASpB,MAAM;IAeN;;OAEG;IACH,MAAM,KAAK,cAAc,WAExB;IAED,MAAM,KAAK,cAAc,WAExB;IAED,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,aAAa,CAAC","file":"top-nav-name.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, customElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport ifNonNull from '@carbon/
|
|
1
|
+
{"version":3,"sources":["components/masthead/top-nav-name.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,OAAO,cAAc,MAAM,iBAAiB,CAAC;AAM7C;;;;GAIG;AACH,cACM,aAAc,SAAQ,cAAc;IACxC,iBAAiB;IASjB,oBAAoB;IASpB,MAAM;IAeN;;OAEG;IACH,MAAM,KAAK,cAAc,WAExB;IAED,MAAM,KAAK,cAAc,WAExB;IAED,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,aAAa,CAAC","file":"top-nav-name.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, customElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport ifNonNull from '@carbon/web-components/es/globals/directives/if-non-null.js';\nimport ddsSettings from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings';\nimport DDSMastheadTopNav from './top-nav';\nimport DDSLeftNavName from './left-nav-name';\nimport styles from './masthead.scss';\n\nconst { prefix } = settings;\nconst { stablePrefix: ddsPrefix } = ddsSettings;\n\n/**\n * The brand name UI in top nav.\n *\n * @element dds-top-nav-name\n */\n@customElement(`${ddsPrefix}-top-nav-name`)\nclass DDSTopNavName extends DDSLeftNavName {\n connectedCallback() {\n super.connectedCallback();\n const { selectorTopNav } = this.constructor as typeof DDSTopNavName;\n const { nextElementSibling } = this;\n if (nextElementSibling && nextElementSibling.matches(selectorTopNav)) {\n (nextElementSibling as DDSMastheadTopNav).hideDivider = true;\n }\n }\n\n disconnectedCallback() {\n const { selectorTopNav } = this.constructor as typeof DDSTopNavName;\n const { nextElementSibling } = this;\n if (nextElementSibling && nextElementSibling.matches(selectorTopNav)) {\n (nextElementSibling as DDSMastheadTopNav).hideDivider = false;\n }\n super.disconnectedCallback();\n }\n\n render() {\n const { href, prefix: namePrefix } = this;\n const namePrefixPart = !namePrefix\n ? undefined\n : html`\n <span class=\"${prefix}--header__name--prefix\">${namePrefix}</span\n > \n `;\n return html`\n <a class=\"${prefix}--header__name\" href=\"${ifNonNull(href)}\"\n >${namePrefixPart}<slot></slot\n ></a>\n `;\n }\n\n /**\n * A selector that will return the nav bar.\n */\n static get selectorTopNav() {\n return `${ddsPrefix}-top-nav`;\n }\n\n static get stableSelector() {\n return `${ddsPrefix}--masthead__platform-name`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default DDSTopNavName;\n"]}
|
|
@@ -15,7 +15,7 @@ let _ = t => t,
|
|
|
15
15
|
|
|
16
16
|
import { html, customElement } from 'lit-element';
|
|
17
17
|
import settings from 'carbon-components/es/globals/js/settings.js';
|
|
18
|
-
import ifNonNull from '@carbon/
|
|
18
|
+
import ifNonNull from '@carbon/web-components/es/globals/directives/if-non-null.js';
|
|
19
19
|
import ddsSettings from "../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings.js";
|
|
20
20
|
import DDSLeftNavName from "./left-nav-name.js";
|
|
21
21
|
import styles from "././masthead.css.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"top-nav-name.js","names":["html","customElement","settings","ifNonNull","ddsSettings","DDSLeftNavName","styles","prefix","stablePrefix","ddsPrefix","DDSTopNavName","selectorTopNav","constructor","nextElementSibling","matches","hideDivider","href","namePrefix","namePrefixPart","undefined"],"sources":["components/masthead/top-nav-name.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, customElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport ifNonNull from '@carbon/
|
|
1
|
+
{"version":3,"file":"top-nav-name.js","names":["html","customElement","settings","ifNonNull","ddsSettings","DDSLeftNavName","styles","prefix","stablePrefix","ddsPrefix","DDSTopNavName","selectorTopNav","constructor","nextElementSibling","matches","hideDivider","href","namePrefix","namePrefixPart","undefined"],"sources":["components/masthead/top-nav-name.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, customElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport ifNonNull from '@carbon/web-components/es/globals/directives/if-non-null.js';\nimport ddsSettings from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings';\nimport DDSMastheadTopNav from './top-nav';\nimport DDSLeftNavName from './left-nav-name';\nimport styles from './masthead.scss';\n\nconst { prefix } = settings;\nconst { stablePrefix: ddsPrefix } = ddsSettings;\n\n/**\n * The brand name UI in top nav.\n *\n * @element dds-top-nav-name\n */\n@customElement(`${ddsPrefix}-top-nav-name`)\nclass DDSTopNavName extends DDSLeftNavName {\n connectedCallback() {\n super.connectedCallback();\n const { selectorTopNav } = this.constructor as typeof DDSTopNavName;\n const { nextElementSibling } = this;\n if (nextElementSibling && nextElementSibling.matches(selectorTopNav)) {\n (nextElementSibling as DDSMastheadTopNav).hideDivider = true;\n }\n }\n\n disconnectedCallback() {\n const { selectorTopNav } = this.constructor as typeof DDSTopNavName;\n const { nextElementSibling } = this;\n if (nextElementSibling && nextElementSibling.matches(selectorTopNav)) {\n (nextElementSibling as DDSMastheadTopNav).hideDivider = false;\n }\n super.disconnectedCallback();\n }\n\n render() {\n const { href, prefix: namePrefix } = this;\n const namePrefixPart = !namePrefix\n ? undefined\n : html`\n <span class=\"${prefix}--header__name--prefix\">${namePrefix}</span\n > \n `;\n return html`\n <a class=\"${prefix}--header__name\" href=\"${ifNonNull(href)}\"\n >${namePrefixPart}<slot></slot\n ></a>\n `;\n }\n\n /**\n * A selector that will return the nav bar.\n */\n static get selectorTopNav() {\n return `${ddsPrefix}-top-nav`;\n }\n\n static get stableSelector() {\n return `${ddsPrefix}--masthead__platform-name`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default DDSTopNavName;\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,EAAEC,aAAa,QAAQ,aAAa;AACjD,OAAOC,QAAQ,MAAM,6CAA6C;AAClE,OAAOC,SAAS,MAAM,6DAA6D;AACnF,OAAOC,WAAW,MAAM,kFAA+E;AAEvG,OAAOC,cAAc,MAAM,oBAAiB;AAC5C,OAAOC,MAAM,MAAM,qBAAiB;AAEpC,MAAM;EAAEC;AAAO,CAAC,GAAGL,QAAQ;AAC3B,MAAM;EAAEM,YAAY,EAAEC;AAAU,CAAC,GAAGL,WAAW;;AAE/C;AACA;AACA;AACA;AACA;AAJA,IAMMM,aAAa,cADlBT,aAAa,CAAE,GAAEQ,SAAU,eAAc,CAAC;EAA3C,MACMC,aAAa,yBAAwB;IAAA;MAAA;MAAA;IAAA;EA8C3C;EAAC;IAAA,GA9CKA,aAAa;IAAA;MAAA;MAAA;MAAA,OACjB,6BAAoB;QAClB,qBAFEA,aAAa;QAGf,MAAM;UAAEC;QAAe,CAAC,GAAG,IAAI,CAACC,WAAmC;QACnE,MAAM;UAAEC;QAAmB,CAAC,GAAG,IAAI;QACnC,IAAIA,kBAAkB,IAAIA,kBAAkB,CAACC,OAAO,CAACH,cAAc,CAAC,EAAE;UACnEE,kBAAkB,CAAuBE,WAAW,GAAG,IAAI;QAC9D;MACF;IAAC;MAAA;MAAA;MAAA,OAED,gCAAuB;QACrB,MAAM;UAAEJ;QAAe,CAAC,GAAG,IAAI,CAACC,WAAmC;QACnE,MAAM;UAAEC;QAAmB,CAAC,GAAG,IAAI;QACnC,IAAIA,kBAAkB,IAAIA,kBAAkB,CAACC,OAAO,CAACH,cAAc,CAAC,EAAE;UACnEE,kBAAkB,CAAuBE,WAAW,GAAG,KAAK;QAC/D;QACA,qBAhBEL,aAAa;MAiBjB;IAAC;MAAA;MAAA;MAAA,OAED,kBAAS;QACP,MAAM;UAAEM,IAAI;UAAET,MAAM,EAAEU;QAAW,CAAC,GAAG,IAAI;QACzC,MAAMC,cAAc,GAAG,CAACD,UAAU,GAC9BE,SAAS,GACTnB,IAAI,cAAC;AACb,yBAAuB,CAAS,2BAAwB,CAAa;AACrE;AACA,SAAQ,GAFiBO,MAAM,EAA2BU,UAAU,CAE3D;QACL,OAAOjB,IAAI,gBAAC;AAChB,kBAAgB,CAAS,yBAAsB,CAAkB;AACjE,WAAS,CAAiB;AAC1B;AACA,KAAI,GAHcO,MAAM,EAAyBJ,SAAS,CAACa,IAAI,CAAC,EACrDE,cAAc;MAGvB;;MAEA;AACF;AACA;IAFE;MAAA;MAAA;MAAA;MAAA,OAGA,0BAA4B;QAC1B,OAAQ,GAAET,SAAU,UAAS;MAC/B;IAAC;MAAA;MAAA;MAAA;MAAA,OAED,0BAA4B;QAC1B,OAAQ,GAAEA,SAAU,2BAA0B;MAChD;IAAC;MAAA;MAAA;MAAA;MAAA;QAAA,OAEeH,MAAM;MAAA;IAAA;EAAA;AAAA,GA7CID,cAAc;AAgD1C,eAAeK,aAAa"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
7
7
|
* LICENSE file in the root directory of this source tree.
|
|
8
8
|
*/
|
|
9
|
-
import BXHeaderNav from '@carbon/
|
|
9
|
+
import BXHeaderNav from '@carbon/web-components/es/components/ui-shell/header-nav.js';
|
|
10
10
|
declare const DDSTopNav_base: (abstract new (...args: any[]) => {
|
|
11
11
|
dynamicStylesNode: any;
|
|
12
12
|
_globalDynamicStyle?: HTMLStyleElement | undefined;
|
|
@@ -634,7 +634,7 @@ declare const DDSTopNav_base: (abstract new (...args: any[]) => {
|
|
|
634
634
|
stableSelector: string;
|
|
635
635
|
} & {
|
|
636
636
|
new (...args: any[]): {
|
|
637
|
-
_handles: Set<import("@carbon/
|
|
637
|
+
_handles: Set<import("@carbon/web-components/es/globals/internal/handle").default>;
|
|
638
638
|
connectedCallback(): void;
|
|
639
639
|
disconnectedCallback(): void;
|
|
640
640
|
accessKey: string;
|
|
@@ -685,17 +685,8 @@ declare const DDSTopNav_base: (abstract new (...args: any[]) => {
|
|
|
685
685
|
slot: string;
|
|
686
686
|
readonly tagName: string;
|
|
687
687
|
attachShadow(init: ShadowRootInit): ShadowRoot;
|
|
688
|
-
/**
|
|
689
|
-
* The current scroll position.
|
|
690
|
-
*/
|
|
691
688
|
closest<K_2 extends keyof HTMLElementTagNameMap>(selector: K_2): HTMLElementTagNameMap[K_2] | null;
|
|
692
|
-
/**
|
|
693
|
-
* The current scroll position.
|
|
694
|
-
*/
|
|
695
689
|
closest<K_3 extends keyof SVGElementTagNameMap>(selector: K_3): SVGElementTagNameMap[K_3] | null;
|
|
696
|
-
/**
|
|
697
|
-
* The current scroll position.
|
|
698
|
-
*/
|
|
699
690
|
closest<E_3 extends Element = Element>(selectors: string): E_3 | null;
|
|
700
691
|
getAttribute(qualifiedName: string): string | null;
|
|
701
692
|
getAttributeNS(namespace: string | null, localName: string): string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["components/masthead/top-nav.ts"],"names":[],"mappings":"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","file":"top-nav.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit-html/directives/class-map.js';\nimport { html, property, state, query, customElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport CaretLeft20 from '@carbon/carbon-web-components/es/icons/caret--left/20.js';\nimport CaretRight20 from '@carbon/carbon-web-components/es/icons/caret--right/20.js';\nimport BXHeaderNav from '@carbon/carbon-web-components/es/components/ui-shell/header-nav.js';\nimport ifNonNull from '@carbon/carbon-web-components/es/globals/directives/if-non-null.js';\nimport HostListener from '@carbon/carbon-web-components/es/globals/decorators/host-listener.js';\nimport HostListenerMixin from '@carbon/carbon-web-components/es/globals/mixins/host-listener.js';\nimport ddsSettings from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport styles from './masthead.scss';\nimport CspComplianceMixin from '../../globals/mixins/csp-compliance';\n\nconst { prefix } = settings;\nconst { stablePrefix: ddsPrefix } = ddsSettings;\n\n// button gradient width size\nconst buttonGradientWidth = 8;\n\n/**\n * @param a An array.\n * @param predicate The callback function.\n * @param [thisObject] The context object for the given callback function.\n * @returns The index of the last item in the given array where `predicate` returns `true`. `-1` if no such item is found.\n */\nfunction findLastIndex<T>(\n a: T[],\n predicate: (search: T, index?: number, thisObject?: any) => boolean,\n thisObject?: any\n): number {\n for (let i = a.length - 1; i >= 0; --i) {\n if (predicate(a[i], i, thisObject)) {\n return i;\n }\n }\n return -1;\n}\n\n/**\n * Masthead top nav.\n *\n * @element dds-top-nav\n * @csspart nav The element containing the menu bar.\n * @csspart menubar The menu bar.\n * @csspart prev-button The button to go to the previous page.\n * @csspart next-button The button to go to the next page.\n */\n@customElement(`${ddsPrefix}-top-nav`)\nclass DDSTopNav extends CspComplianceMixin(\n StableSelectorMixin(HostListenerMixin(BXHeaderNav))\n) {\n /**\n * The left-hand paginator button.\n */\n @query(`.${prefix}--header__nav-caret-left`)\n private _caretLeftNode?: HTMLElement;\n\n /**\n * The right-hand paginator button.\n */\n @query(`.${prefix}--header__nav-caret-right`)\n private _caretRightNode?: HTMLElement;\n\n /**\n * The `<nav>`.\n */\n @query(`.${prefix}--header__nav`)\n private _navNode?: HTMLElement;\n\n /**\n * The scrolling container.\n */\n @query(`.${ddsPrefix}-ce--header__nav-content-container`)\n private _contentContainerNode?: HTMLElement;\n\n /**\n * The scrolling content.\n */\n @query(`.${prefix}--header__nav-content`)\n private _contentNode?: HTMLElement;\n\n /**\n * The current scroll position.\n */\n @state()\n private _currentScrollPosition = 0;\n\n /**\n * The left-hand sentinel to track intersection with the host element.\n * If they intersect, the left-hand paginator button should be hidden.\n */\n @query(`.${prefix}--sub-content-left`)\n private _intersectionLeftSentinelNode?: HTMLElement;\n\n /**\n * The right-hand sentinel to track intersection with the host element.\n * If they intersect, the right-hand paginator button should be hidden.\n */\n @query(`.${prefix}--sub-content-right`)\n private _intersectionRightSentinelNode?: HTMLElement;\n\n /**\n * `true` if the search is open and nav should be hidden\n */\n @property({ type: Boolean, reflect: true })\n hideNav = false;\n\n /**\n * The English title of the selected nav item.\n */\n @property({ attribute: 'selected-menu-item' })\n selectedMenuItem!: string;\n\n /**\n * Array to hold the card-heading elements within child items.\n */\n private _childItems: any[] = [];\n\n /**\n * `true` if left-hand scroll intersection sentinel intersects with the host element.\n * In this condition, the left-hand paginator button should be hidden.\n */\n @state()\n private _isIntersectionLeftTrackerInContent = true;\n\n /**\n * `true` if right-hand scroll intersection sentinel intersects with the host element.\n * In this condition, the right-hand paginator button should be hidden.\n */\n @state()\n private _isIntersectionRightTrackerInContent = true;\n\n /**\n * The observer for the intersection of left-side content edge.\n */\n private _observerIntersection: IntersectionObserver | null = null;\n\n /**\n * Boolean checking if page is RTL\n */\n @state()\n private _pageIsRTL: Boolean =\n this.ownerDocument!.documentElement.dir === 'rtl';\n\n @query('slot')\n private _slotNode?: HTMLSlotElement;\n\n /**\n * Cleans-up and creats the intersection observer for the scrolling container.\n *\n * @param [options] The options.\n * @param [options.create] `true` to create the new intersection observer.\n */\n private _cleanAndCreateIntersectionObserverContainer({\n create,\n }: { create?: boolean } = {}) {\n const {\n _intersectionLeftSentinelNode: intersectionLeftSentinelNode,\n _intersectionRightSentinelNode: intersectionRightSentinelNode,\n } = this;\n if (this._observerIntersection) {\n this._observerIntersection.disconnect();\n this._observerIntersection = null;\n }\n if (create) {\n this._observerIntersection = new IntersectionObserver(\n this._observeIntersectionContainer,\n {\n root: this,\n threshold: 0,\n }\n );\n if (intersectionLeftSentinelNode) {\n this._observerIntersection.observe(intersectionLeftSentinelNode);\n }\n if (intersectionRightSentinelNode) {\n this._observerIntersection.observe(intersectionRightSentinelNode);\n }\n }\n }\n\n /**\n * Handles `slotchange` event on the default `<slot>`.\n */\n\n private _handleSlotChange(event) {\n this._childItems = (event.target as HTMLSlotElement)\n .assignedNodes()\n .filter((elem) =>\n (elem as HTMLElement).matches?.('dds-megamenu-top-nav-menu')\n );\n this._paginateRight({ onLoad: true });\n }\n\n /**\n * The intersection observer callback for the scrolling container.\n *\n * @param records The intersection observer records.\n */\n private _observeIntersectionContainer = (records) => {\n const {\n _intersectionLeftSentinelNode: intersectionLeftSentinelNode,\n _intersectionRightSentinelNode: intersectionRightSentinelNode,\n } = this;\n records.forEach(({ isIntersecting, target }) => {\n if (target === intersectionLeftSentinelNode) {\n this._isIntersectionLeftTrackerInContent = isIntersecting;\n }\n if (target === intersectionRightSentinelNode) {\n this._isIntersectionRightTrackerInContent = isIntersecting;\n }\n });\n };\n\n /**\n * Handles `click` event on the left-hand paginator button.\n */\n private _paginateLeft() {\n const {\n _caretLeftNode: caretLeftNode,\n _caretRightNode: caretRightNode,\n _contentContainerNode: contentContainerNode,\n _currentScrollPosition: currentScrollPosition,\n _isIntersectionRightTrackerInContent: isIntersectionRightTrackerInContent,\n _navNode: navNode,\n _pageIsRTL: pageIsRTL,\n _slotNode: slotNode,\n } = this;\n // If the right-side intersection sentinel is in the view, it means that right-side caret button is hidden.\n // Given scrolling to left makes it shown,\n // `contentContainerNode!.offsetWidth` will shrink as we scroll and we need to adjust for it.\n\n const elems = slotNode?.assignedElements() as HTMLElement[];\n if (elems) {\n if (pageIsRTL) {\n const caretLeftNodeWidthAdjustment = this\n ._isIntersectionLeftTrackerInContent\n ? caretLeftNode!.offsetWidth\n : 0;\n const navRight = navNode!.getBoundingClientRect().right;\n const lastVisibleElementIndex = elems.findIndex(\n (elem) =>\n elem.getBoundingClientRect().left <\n navRight - currentScrollPosition - caretRightNode!.offsetWidth\n );\n if (lastVisibleElementIndex >= 0) {\n this._currentScrollPosition = Math.max(\n navRight -\n elems[lastVisibleElementIndex].getBoundingClientRect().left -\n contentContainerNode!.offsetWidth +\n caretLeftNodeWidthAdjustment +\n caretRightNode!.offsetWidth +\n buttonGradientWidth,\n 0\n );\n }\n } else {\n const caretRightNodeWidthAdjustment =\n isIntersectionRightTrackerInContent\n ? caretRightNode!.offsetWidth + buttonGradientWidth\n : buttonGradientWidth;\n const caretLeftNodeWidthAdjustment = this\n ._isIntersectionLeftTrackerInContent\n ? caretLeftNode!.offsetWidth + buttonGradientWidth\n : 0;\n const navLeft = navNode!.getBoundingClientRect().left;\n const lastVisibleElementIndex = findLastIndex(\n elems,\n (elem) =>\n elem.getBoundingClientRect().left - navLeft < currentScrollPosition\n );\n if (lastVisibleElementIndex >= 0) {\n const lastVisibleElementRight =\n elems[lastVisibleElementIndex].getBoundingClientRect().right -\n navLeft;\n const newScrollPosition =\n lastVisibleElementRight -\n (contentContainerNode!.offsetWidth +\n caretLeftNodeWidthAdjustment -\n caretRightNodeWidthAdjustment);\n // If the new scroll position is less than the width of the left caret button,\n // it means that hiding the left caret button reveals the whole of the left-most nav item.\n // Snaps the left-most nav item to the left edge of nav container in this case.\n this._currentScrollPosition =\n newScrollPosition <= caretLeftNode!.offsetWidth\n ? 0\n : newScrollPosition;\n }\n }\n }\n }\n\n /**\n * Handles `click` event on the right-hand paginator button.\n */\n private async _paginateRight({ onLoad }: { onLoad?: boolean } = {}) {\n const {\n _caretLeftNode: caretLeftNode,\n _caretRightNode: caretRightNode,\n _contentContainerNode: contentContainerNode,\n _contentNode: contentNode,\n _currentScrollPosition: currentScrollPosition,\n _isIntersectionLeftTrackerInContent: isIntersectionLeftTrackerInContent,\n _isIntersectionRightTrackerInContent: isIntersectionRightTrackerInContent,\n _navNode: navNode,\n _pageIsRTL: pageIsRTL,\n _slotNode: slotNode,\n } = this;\n await this.updateComplete;\n\n const elems =\n (slotNode?.assignedElements() as HTMLElement[]) || this._childItems;\n\n if (elems && contentContainerNode) {\n const interimLeft =\n currentScrollPosition + contentContainerNode!.offsetWidth;\n if (pageIsRTL) {\n const caretLeftNodeWidthAdjustment = isIntersectionLeftTrackerInContent\n ? caretLeftNode!.offsetWidth\n : 0;\n const navRight = navNode!.getBoundingClientRect().right;\n const firstVisibleElementIndex = onLoad\n ? elems.findIndex(\n (elem) =>\n navRight - elem.getBoundingClientRect().left >\n interimLeft -\n caretLeftNode!.offsetWidth -\n buttonGradientWidth && elem.hasAttribute('active')\n )\n : elems.findIndex(\n (elem) =>\n navRight - elem.getBoundingClientRect().left >\n interimLeft - caretLeftNode!.offsetWidth - buttonGradientWidth\n );\n if (firstVisibleElementIndex > 0) {\n const firstVisibleElementLeft = Math.abs(\n elems[firstVisibleElementIndex].getBoundingClientRect().right -\n navRight +\n caretLeftNode!.offsetWidth +\n buttonGradientWidth\n );\n const maxLeft =\n contentNode!.scrollWidth -\n contentContainerNode!.offsetWidth +\n caretLeftNodeWidthAdjustment;\n this._currentScrollPosition = Math.min(\n firstVisibleElementLeft,\n maxLeft\n );\n }\n } else {\n const caretLeftNodeWidthAdjustment = isIntersectionLeftTrackerInContent\n ? 0\n : caretLeftNode!.offsetWidth;\n const caretRightNodeWidthAdjustment =\n isIntersectionRightTrackerInContent ? caretRightNode!.offsetWidth : 0;\n const navLeft = navNode!.getBoundingClientRect().left;\n const firstVisibleElementIndex = onLoad\n ? elems.findIndex(\n (elem) =>\n elem.getBoundingClientRect().right - navLeft > interimLeft &&\n elem.hasAttribute('active')\n )\n : elems.findIndex(\n (elem) =>\n elem.getBoundingClientRect().right - navLeft > interimLeft\n );\n if (firstVisibleElementIndex > 0) {\n const firstVisibleElementLeft =\n elems[firstVisibleElementIndex].getBoundingClientRect().left -\n navLeft -\n buttonGradientWidth;\n // Ensures that is there is no blank area at the right hand side in scroll area\n // if we see the right remainder nav items can be contained in a page\n const maxLeft =\n contentNode!.scrollWidth -\n (contentContainerNode!.offsetWidth -\n caretRightNodeWidthAdjustment +\n caretLeftNodeWidthAdjustment);\n this._currentScrollPosition = Math.min(\n firstVisibleElementLeft,\n maxLeft\n );\n }\n }\n }\n }\n\n protected _handleOnKeyDown(event: KeyboardEvent) {\n const target = event.target as HTMLAnchorElement;\n const {\n _pageIsRTL: pageIsRTL,\n _navNode: navNode,\n _currentScrollPosition: currentScrollPosition,\n _contentContainerNode: contentContainerNode,\n _caretRightNode: caretRightNode,\n } = this;\n if (target) {\n if (pageIsRTL) {\n if (event.key === 'Tab') {\n if (event.shiftKey) {\n if (\n target.previousElementSibling &&\n caretRightNode &&\n target.previousElementSibling.getBoundingClientRect().right +\n currentScrollPosition >\n navNode!.getBoundingClientRect().right -\n caretRightNode.offsetWidth\n ) {\n this._paginateLeft();\n }\n } else if (\n target.nextElementSibling &&\n caretRightNode &&\n navNode!.getBoundingClientRect().right -\n target.nextElementSibling.getBoundingClientRect().left >\n currentScrollPosition +\n contentContainerNode!.offsetWidth -\n caretRightNode.offsetWidth\n ) {\n this._paginateRight();\n }\n }\n } else if (event.key === 'Tab') {\n if (event.shiftKey) {\n if (\n target.previousElementSibling &&\n target.previousElementSibling.getBoundingClientRect().left -\n navNode!.getBoundingClientRect().left <\n currentScrollPosition\n ) {\n this._paginateLeft();\n }\n } else if (\n target.nextElementSibling &&\n Math.floor(\n target.nextElementSibling.getBoundingClientRect().right -\n navNode!.getBoundingClientRect().left\n ) >\n currentScrollPosition + contentContainerNode!.offsetWidth\n ) {\n this._paginateRight();\n }\n }\n }\n }\n\n /**\n * Handles toggle event from the search component.\n *\n * @param event The event.\n */\n @HostListener('parentRoot:eventToggleSearch')\n protected _handleSearchToggle = (event: Event) => {\n if ((event as CustomEvent).detail.active !== undefined) {\n this.hideNav = (event as CustomEvent).detail.active;\n }\n };\n\n /**\n * `true` to hide the divider.\n */\n @property({ type: Boolean, reflect: true, attribute: 'hide-divider' })\n hideDivider = false;\n\n connectedCallback() {\n super.connectedCallback();\n this._cleanAndCreateIntersectionObserverContainer({ create: true });\n this.removeAttribute('role');\n }\n\n disconnectedCallback() {\n this._cleanAndCreateIntersectionObserverContainer();\n super.disconnectedCallback();\n }\n\n firstUpdated(changedProperties) {\n if (changedProperties.has('selectedMenuItem')) {\n this._paginateRight({ onLoad: true });\n }\n }\n\n shouldUpdate(changedProperties) {\n if (changedProperties.has('hideNav')) {\n this._cleanAndCreateIntersectionObserverContainer();\n }\n return true;\n }\n\n updated(changedProperties) {\n if (changedProperties.has('hideNav')) {\n this._cleanAndCreateIntersectionObserverContainer({ create: true });\n }\n\n // Update the values in the CSP-safe stylesheet.\n if (\n changedProperties.has('_currentScrollPosition') &&\n this.dynamicStylesNode\n ) {\n this.setStyleBySelector(\n '.bx--header__nav-content',\n 'inset-inline-start',\n `-${this._currentScrollPosition}px`\n );\n }\n }\n\n render() {\n const {\n _isIntersectionLeftTrackerInContent: isIntersectionLeftTrackerInContent,\n _isIntersectionRightTrackerInContent: isIntersectionRightTrackerInContent,\n _handleSlotChange: handleSlotChange,\n _paginateLeft: paginateLeft,\n _paginateRight: paginateRight,\n _pageIsRTL: pageIsRTL,\n _handleOnKeyDown: handleOnKeyDown,\n } = this;\n const caretLeftContainerClasses = classMap({\n [`${prefix}--header__nav-caret-left-container`]: true,\n [`${ddsPrefix}-ce--header__nav-caret-container--hidden`]:\n isIntersectionLeftTrackerInContent,\n });\n const caretRightContainerClasses = classMap({\n [`${prefix}--header__nav-caret-right-container`]: true,\n [`${ddsPrefix}-ce--header__nav-caret-container--hidden`]:\n isIntersectionRightTrackerInContent,\n });\n\n return this.hideNav\n ? undefined!\n : html`\n ${this._renderDynamicStyles()}\n ${pageIsRTL\n ? html`\n <div class=\"${caretRightContainerClasses}\">\n <div\n class=\"${prefix}--header__nav-caret-right-gradient\"\n ></div>\n <button\n part=\"next-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-right\"\n @click=\"${paginateRight}\"\n >\n ${CaretLeft20()}\n </button>\n </div>\n <div class=\"${ddsPrefix}-ce--header__nav-content-container\">\n <div class=\"${prefix}--header__nav-content\">\n <nav part=\"nav\" class=\"${prefix}--header__nav\">\n <div class=\"${prefix}--sub-content-right\"></div>\n <div\n part=\"menubar\"\n class=\"${prefix}--header__menu-bar\"\n aria-label=\"${ifNonNull(this.menuBarLabel)}\"\n >\n <slot\n @slotchange=${handleSlotChange}\n @keydown=\"${handleOnKeyDown}\"\n ></slot>\n </div>\n <div class=\"${prefix}--sub-content-left\"></div>\n </nav>\n </div>\n </div>\n <div class=\"${caretLeftContainerClasses}\">\n <button\n part=\"prev-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-left\"\n @click=\"${paginateLeft}\"\n >\n ${CaretRight20()}\n </button>\n <div class=\"${prefix}--header__nav-caret-left-gradient\"></div>\n </div>\n `\n : html`\n <div class=\"${caretLeftContainerClasses}\">\n <button\n part=\"prev-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-left\"\n @click=\"${paginateLeft}\"\n >\n ${CaretLeft20()}\n </button>\n <div class=\"${prefix}--header__nav-caret-left-gradient\"></div>\n </div>\n <div class=\"${ddsPrefix}-ce--header__nav-content-container\">\n <div class=\"${prefix}--header__nav-content\">\n <nav part=\"nav\" class=\"${prefix}--header__nav\">\n <div class=\"${prefix}--sub-content-left\"></div>\n <div\n part=\"menubar\"\n class=\"${prefix}--header__menu-bar\"\n aria-label=\"${ifNonNull(this.menuBarLabel)}\"\n >\n <slot\n @slotchange=${handleSlotChange}\n @keydown=\"${handleOnKeyDown}\"\n ></slot>\n </div>\n <div class=\"${prefix}--sub-content-right\"></div>\n </nav>\n </div>\n </div>\n <div class=\"${caretRightContainerClasses}\">\n <div\n class=\"${prefix}--header__nav-caret-right-gradient\"\n ></div>\n <button\n part=\"next-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-right\"\n @click=\"${paginateRight}\"\n >\n ${CaretRight20()}\n </button>\n </div>\n `}\n `;\n }\n\n static get stableSelector() {\n return `${ddsPrefix}--masthead__l0-nav`;\n }\n\n /**\n * The name of the custom event fired after the search is toggled.\n */\n static get eventToggleSearch() {\n return `${ddsPrefix}-search-with-typeahead-toggled`; // TODO hook up the new event\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader.\n}\n\nexport default DDSTopNav;\n"]}
|
|
1
|
+
{"version":3,"sources":["components/masthead/top-nav.ts"],"names":[],"mappings":"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","file":"top-nav.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit-html/directives/class-map.js';\nimport { html, property, state, query, customElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport CaretLeft20 from '@carbon/web-components/es/icons/caret--left/20.js';\nimport CaretRight20 from '@carbon/web-components/es/icons/caret--right/20.js';\nimport BXHeaderNav from '@carbon/web-components/es/components/ui-shell/header-nav.js';\nimport ifNonNull from '@carbon/web-components/es/globals/directives/if-non-null.js';\nimport HostListener from '@carbon/web-components/es/globals/decorators/host-listener.js';\nimport HostListenerMixin from '@carbon/web-components/es/globals/mixins/host-listener.js';\nimport ddsSettings from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport styles from './masthead.scss';\nimport CspComplianceMixin from '../../globals/mixins/csp-compliance';\n\nconst { prefix } = settings;\nconst { stablePrefix: ddsPrefix } = ddsSettings;\n\n// button gradient width size\nconst buttonGradientWidth = 8;\n\n/**\n * @param a An array.\n * @param predicate The callback function.\n * @param [thisObject] The context object for the given callback function.\n * @returns The index of the last item in the given array where `predicate` returns `true`. `-1` if no such item is found.\n */\nfunction findLastIndex<T>(\n a: T[],\n predicate: (search: T, index?: number, thisObject?: any) => boolean,\n thisObject?: any\n): number {\n for (let i = a.length - 1; i >= 0; --i) {\n if (predicate(a[i], i, thisObject)) {\n return i;\n }\n }\n return -1;\n}\n\n/**\n * Masthead top nav.\n *\n * @element dds-top-nav\n * @csspart nav The element containing the menu bar.\n * @csspart menubar The menu bar.\n * @csspart prev-button The button to go to the previous page.\n * @csspart next-button The button to go to the next page.\n */\n@customElement(`${ddsPrefix}-top-nav`)\nclass DDSTopNav extends CspComplianceMixin(\n StableSelectorMixin(HostListenerMixin(BXHeaderNav))\n) {\n /**\n * The left-hand paginator button.\n */\n @query(`.${prefix}--header__nav-caret-left`)\n private _caretLeftNode?: HTMLElement;\n\n /**\n * The right-hand paginator button.\n */\n @query(`.${prefix}--header__nav-caret-right`)\n private _caretRightNode?: HTMLElement;\n\n /**\n * The `<nav>`.\n */\n @query(`.${prefix}--header__nav`)\n private _navNode?: HTMLElement;\n\n /**\n * The scrolling container.\n */\n @query(`.${ddsPrefix}-ce--header__nav-content-container`)\n private _contentContainerNode?: HTMLElement;\n\n /**\n * The scrolling content.\n */\n @query(`.${prefix}--header__nav-content`)\n private _contentNode?: HTMLElement;\n\n /**\n * The current scroll position.\n */\n @state()\n private _currentScrollPosition = 0;\n\n /**\n * The left-hand sentinel to track intersection with the host element.\n * If they intersect, the left-hand paginator button should be hidden.\n */\n @query(`.${prefix}--sub-content-left`)\n private _intersectionLeftSentinelNode?: HTMLElement;\n\n /**\n * The right-hand sentinel to track intersection with the host element.\n * If they intersect, the right-hand paginator button should be hidden.\n */\n @query(`.${prefix}--sub-content-right`)\n private _intersectionRightSentinelNode?: HTMLElement;\n\n /**\n * `true` if the search is open and nav should be hidden\n */\n @property({ type: Boolean, reflect: true })\n hideNav = false;\n\n /**\n * The English title of the selected nav item.\n */\n @property({ attribute: 'selected-menu-item' })\n selectedMenuItem!: string;\n\n /**\n * Array to hold the card-heading elements within child items.\n */\n private _childItems: any[] = [];\n\n /**\n * `true` if left-hand scroll intersection sentinel intersects with the host element.\n * In this condition, the left-hand paginator button should be hidden.\n */\n @state()\n private _isIntersectionLeftTrackerInContent = true;\n\n /**\n * `true` if right-hand scroll intersection sentinel intersects with the host element.\n * In this condition, the right-hand paginator button should be hidden.\n */\n @state()\n private _isIntersectionRightTrackerInContent = true;\n\n /**\n * The observer for the intersection of left-side content edge.\n */\n private _observerIntersection: IntersectionObserver | null = null;\n\n /**\n * Boolean checking if page is RTL\n */\n @state()\n private _pageIsRTL: Boolean =\n this.ownerDocument!.documentElement.dir === 'rtl';\n\n @query('slot')\n private _slotNode?: HTMLSlotElement;\n\n /**\n * Cleans-up and creats the intersection observer for the scrolling container.\n *\n * @param [options] The options.\n * @param [options.create] `true` to create the new intersection observer.\n */\n private _cleanAndCreateIntersectionObserverContainer({\n create,\n }: { create?: boolean } = {}) {\n const {\n _intersectionLeftSentinelNode: intersectionLeftSentinelNode,\n _intersectionRightSentinelNode: intersectionRightSentinelNode,\n } = this;\n if (this._observerIntersection) {\n this._observerIntersection.disconnect();\n this._observerIntersection = null;\n }\n if (create) {\n this._observerIntersection = new IntersectionObserver(\n this._observeIntersectionContainer,\n {\n root: this,\n threshold: 0,\n }\n );\n if (intersectionLeftSentinelNode) {\n this._observerIntersection.observe(intersectionLeftSentinelNode);\n }\n if (intersectionRightSentinelNode) {\n this._observerIntersection.observe(intersectionRightSentinelNode);\n }\n }\n }\n\n /**\n * Handles `slotchange` event on the default `<slot>`.\n */\n\n private _handleSlotChange(event) {\n this._childItems = (event.target as HTMLSlotElement)\n .assignedNodes()\n .filter((elem) =>\n (elem as HTMLElement).matches?.('dds-megamenu-top-nav-menu')\n );\n this._paginateRight({ onLoad: true });\n }\n\n /**\n * The intersection observer callback for the scrolling container.\n *\n * @param records The intersection observer records.\n */\n private _observeIntersectionContainer = (records) => {\n const {\n _intersectionLeftSentinelNode: intersectionLeftSentinelNode,\n _intersectionRightSentinelNode: intersectionRightSentinelNode,\n } = this;\n records.forEach(({ isIntersecting, target }) => {\n if (target === intersectionLeftSentinelNode) {\n this._isIntersectionLeftTrackerInContent = isIntersecting;\n }\n if (target === intersectionRightSentinelNode) {\n this._isIntersectionRightTrackerInContent = isIntersecting;\n }\n });\n };\n\n /**\n * Handles `click` event on the left-hand paginator button.\n */\n private _paginateLeft() {\n const {\n _caretLeftNode: caretLeftNode,\n _caretRightNode: caretRightNode,\n _contentContainerNode: contentContainerNode,\n _currentScrollPosition: currentScrollPosition,\n _isIntersectionRightTrackerInContent: isIntersectionRightTrackerInContent,\n _navNode: navNode,\n _pageIsRTL: pageIsRTL,\n _slotNode: slotNode,\n } = this;\n // If the right-side intersection sentinel is in the view, it means that right-side caret button is hidden.\n // Given scrolling to left makes it shown,\n // `contentContainerNode!.offsetWidth` will shrink as we scroll and we need to adjust for it.\n\n const elems = slotNode?.assignedElements() as HTMLElement[];\n if (elems) {\n if (pageIsRTL) {\n const caretLeftNodeWidthAdjustment = this\n ._isIntersectionLeftTrackerInContent\n ? caretLeftNode!.offsetWidth\n : 0;\n const navRight = navNode!.getBoundingClientRect().right;\n const lastVisibleElementIndex = elems.findIndex(\n (elem) =>\n elem.getBoundingClientRect().left <\n navRight - currentScrollPosition - caretRightNode!.offsetWidth\n );\n if (lastVisibleElementIndex >= 0) {\n this._currentScrollPosition = Math.max(\n navRight -\n elems[lastVisibleElementIndex].getBoundingClientRect().left -\n contentContainerNode!.offsetWidth +\n caretLeftNodeWidthAdjustment +\n caretRightNode!.offsetWidth +\n buttonGradientWidth,\n 0\n );\n }\n } else {\n const caretRightNodeWidthAdjustment =\n isIntersectionRightTrackerInContent\n ? caretRightNode!.offsetWidth + buttonGradientWidth\n : buttonGradientWidth;\n const caretLeftNodeWidthAdjustment = this\n ._isIntersectionLeftTrackerInContent\n ? caretLeftNode!.offsetWidth + buttonGradientWidth\n : 0;\n const navLeft = navNode!.getBoundingClientRect().left;\n const lastVisibleElementIndex = findLastIndex(\n elems,\n (elem) =>\n elem.getBoundingClientRect().left - navLeft < currentScrollPosition\n );\n if (lastVisibleElementIndex >= 0) {\n const lastVisibleElementRight =\n elems[lastVisibleElementIndex].getBoundingClientRect().right -\n navLeft;\n const newScrollPosition =\n lastVisibleElementRight -\n (contentContainerNode!.offsetWidth +\n caretLeftNodeWidthAdjustment -\n caretRightNodeWidthAdjustment);\n // If the new scroll position is less than the width of the left caret button,\n // it means that hiding the left caret button reveals the whole of the left-most nav item.\n // Snaps the left-most nav item to the left edge of nav container in this case.\n this._currentScrollPosition =\n newScrollPosition <= caretLeftNode!.offsetWidth\n ? 0\n : newScrollPosition;\n }\n }\n }\n }\n\n /**\n * Handles `click` event on the right-hand paginator button.\n */\n private async _paginateRight({ onLoad }: { onLoad?: boolean } = {}) {\n const {\n _caretLeftNode: caretLeftNode,\n _caretRightNode: caretRightNode,\n _contentContainerNode: contentContainerNode,\n _contentNode: contentNode,\n _currentScrollPosition: currentScrollPosition,\n _isIntersectionLeftTrackerInContent: isIntersectionLeftTrackerInContent,\n _isIntersectionRightTrackerInContent: isIntersectionRightTrackerInContent,\n _navNode: navNode,\n _pageIsRTL: pageIsRTL,\n _slotNode: slotNode,\n } = this;\n await this.updateComplete;\n\n const elems =\n (slotNode?.assignedElements() as HTMLElement[]) || this._childItems;\n\n if (elems && contentContainerNode) {\n const interimLeft =\n currentScrollPosition + contentContainerNode!.offsetWidth;\n if (pageIsRTL) {\n const caretLeftNodeWidthAdjustment = isIntersectionLeftTrackerInContent\n ? caretLeftNode!.offsetWidth\n : 0;\n const navRight = navNode!.getBoundingClientRect().right;\n const firstVisibleElementIndex = onLoad\n ? elems.findIndex(\n (elem) =>\n navRight - elem.getBoundingClientRect().left >\n interimLeft -\n caretLeftNode!.offsetWidth -\n buttonGradientWidth && elem.hasAttribute('active')\n )\n : elems.findIndex(\n (elem) =>\n navRight - elem.getBoundingClientRect().left >\n interimLeft - caretLeftNode!.offsetWidth - buttonGradientWidth\n );\n if (firstVisibleElementIndex > 0) {\n const firstVisibleElementLeft = Math.abs(\n elems[firstVisibleElementIndex].getBoundingClientRect().right -\n navRight +\n caretLeftNode!.offsetWidth +\n buttonGradientWidth\n );\n const maxLeft =\n contentNode!.scrollWidth -\n contentContainerNode!.offsetWidth +\n caretLeftNodeWidthAdjustment;\n this._currentScrollPosition = Math.min(\n firstVisibleElementLeft,\n maxLeft\n );\n }\n } else {\n const caretLeftNodeWidthAdjustment = isIntersectionLeftTrackerInContent\n ? 0\n : caretLeftNode!.offsetWidth;\n const caretRightNodeWidthAdjustment =\n isIntersectionRightTrackerInContent ? caretRightNode!.offsetWidth : 0;\n const navLeft = navNode!.getBoundingClientRect().left;\n const firstVisibleElementIndex = onLoad\n ? elems.findIndex(\n (elem) =>\n elem.getBoundingClientRect().right - navLeft > interimLeft &&\n elem.hasAttribute('active')\n )\n : elems.findIndex(\n (elem) =>\n elem.getBoundingClientRect().right - navLeft > interimLeft\n );\n if (firstVisibleElementIndex > 0) {\n const firstVisibleElementLeft =\n elems[firstVisibleElementIndex].getBoundingClientRect().left -\n navLeft -\n buttonGradientWidth;\n // Ensures that is there is no blank area at the right hand side in scroll area\n // if we see the right remainder nav items can be contained in a page\n const maxLeft =\n contentNode!.scrollWidth -\n (contentContainerNode!.offsetWidth -\n caretRightNodeWidthAdjustment +\n caretLeftNodeWidthAdjustment);\n this._currentScrollPosition = Math.min(\n firstVisibleElementLeft,\n maxLeft\n );\n }\n }\n }\n }\n\n protected _handleOnKeyDown(event: KeyboardEvent) {\n const target = event.target as HTMLAnchorElement;\n const {\n _pageIsRTL: pageIsRTL,\n _navNode: navNode,\n _currentScrollPosition: currentScrollPosition,\n _contentContainerNode: contentContainerNode,\n _caretRightNode: caretRightNode,\n } = this;\n if (target) {\n if (pageIsRTL) {\n if (event.key === 'Tab') {\n if (event.shiftKey) {\n if (\n target.previousElementSibling &&\n caretRightNode &&\n target.previousElementSibling.getBoundingClientRect().right +\n currentScrollPosition >\n navNode!.getBoundingClientRect().right -\n caretRightNode.offsetWidth\n ) {\n this._paginateLeft();\n }\n } else if (\n target.nextElementSibling &&\n caretRightNode &&\n navNode!.getBoundingClientRect().right -\n target.nextElementSibling.getBoundingClientRect().left >\n currentScrollPosition +\n contentContainerNode!.offsetWidth -\n caretRightNode.offsetWidth\n ) {\n this._paginateRight();\n }\n }\n } else if (event.key === 'Tab') {\n if (event.shiftKey) {\n if (\n target.previousElementSibling &&\n target.previousElementSibling.getBoundingClientRect().left -\n navNode!.getBoundingClientRect().left <\n currentScrollPosition\n ) {\n this._paginateLeft();\n }\n } else if (\n target.nextElementSibling &&\n Math.floor(\n target.nextElementSibling.getBoundingClientRect().right -\n navNode!.getBoundingClientRect().left\n ) >\n currentScrollPosition + contentContainerNode!.offsetWidth\n ) {\n this._paginateRight();\n }\n }\n }\n }\n\n /**\n * Handles toggle event from the search component.\n *\n * @param event The event.\n */\n @HostListener('parentRoot:eventToggleSearch')\n protected _handleSearchToggle = (event: Event) => {\n if ((event as CustomEvent).detail.active !== undefined) {\n this.hideNav = (event as CustomEvent).detail.active;\n }\n };\n\n /**\n * `true` to hide the divider.\n */\n @property({ type: Boolean, reflect: true, attribute: 'hide-divider' })\n hideDivider = false;\n\n connectedCallback() {\n super.connectedCallback();\n this._cleanAndCreateIntersectionObserverContainer({ create: true });\n this.removeAttribute('role');\n }\n\n disconnectedCallback() {\n this._cleanAndCreateIntersectionObserverContainer();\n super.disconnectedCallback();\n }\n\n firstUpdated(changedProperties) {\n if (changedProperties.has('selectedMenuItem')) {\n this._paginateRight({ onLoad: true });\n }\n }\n\n shouldUpdate(changedProperties) {\n if (changedProperties.has('hideNav')) {\n this._cleanAndCreateIntersectionObserverContainer();\n }\n return true;\n }\n\n updated(changedProperties) {\n if (changedProperties.has('hideNav')) {\n this._cleanAndCreateIntersectionObserverContainer({ create: true });\n }\n\n // Update the values in the CSP-safe stylesheet.\n if (\n changedProperties.has('_currentScrollPosition') &&\n this.dynamicStylesNode\n ) {\n this.setStyleBySelector(\n '.bx--header__nav-content',\n 'inset-inline-start',\n `-${this._currentScrollPosition}px`\n );\n }\n }\n\n render() {\n const {\n _isIntersectionLeftTrackerInContent: isIntersectionLeftTrackerInContent,\n _isIntersectionRightTrackerInContent: isIntersectionRightTrackerInContent,\n _handleSlotChange: handleSlotChange,\n _paginateLeft: paginateLeft,\n _paginateRight: paginateRight,\n _pageIsRTL: pageIsRTL,\n _handleOnKeyDown: handleOnKeyDown,\n } = this;\n const caretLeftContainerClasses = classMap({\n [`${prefix}--header__nav-caret-left-container`]: true,\n [`${ddsPrefix}-ce--header__nav-caret-container--hidden`]:\n isIntersectionLeftTrackerInContent,\n });\n const caretRightContainerClasses = classMap({\n [`${prefix}--header__nav-caret-right-container`]: true,\n [`${ddsPrefix}-ce--header__nav-caret-container--hidden`]:\n isIntersectionRightTrackerInContent,\n });\n\n return this.hideNav\n ? undefined!\n : html`\n ${this._renderDynamicStyles()}\n ${pageIsRTL\n ? html`\n <div class=\"${caretRightContainerClasses}\">\n <div\n class=\"${prefix}--header__nav-caret-right-gradient\"\n ></div>\n <button\n part=\"next-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-right\"\n @click=\"${paginateRight}\"\n >\n ${CaretLeft20()}\n </button>\n </div>\n <div class=\"${ddsPrefix}-ce--header__nav-content-container\">\n <div class=\"${prefix}--header__nav-content\">\n <nav part=\"nav\" class=\"${prefix}--header__nav\">\n <div class=\"${prefix}--sub-content-right\"></div>\n <div\n part=\"menubar\"\n class=\"${prefix}--header__menu-bar\"\n aria-label=\"${ifNonNull(this.menuBarLabel)}\"\n >\n <slot\n @slotchange=${handleSlotChange}\n @keydown=\"${handleOnKeyDown}\"\n ></slot>\n </div>\n <div class=\"${prefix}--sub-content-left\"></div>\n </nav>\n </div>\n </div>\n <div class=\"${caretLeftContainerClasses}\">\n <button\n part=\"prev-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-left\"\n @click=\"${paginateLeft}\"\n >\n ${CaretRight20()}\n </button>\n <div class=\"${prefix}--header__nav-caret-left-gradient\"></div>\n </div>\n `\n : html`\n <div class=\"${caretLeftContainerClasses}\">\n <button\n part=\"prev-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-left\"\n @click=\"${paginateLeft}\"\n >\n ${CaretLeft20()}\n </button>\n <div class=\"${prefix}--header__nav-caret-left-gradient\"></div>\n </div>\n <div class=\"${ddsPrefix}-ce--header__nav-content-container\">\n <div class=\"${prefix}--header__nav-content\">\n <nav part=\"nav\" class=\"${prefix}--header__nav\">\n <div class=\"${prefix}--sub-content-left\"></div>\n <div\n part=\"menubar\"\n class=\"${prefix}--header__menu-bar\"\n aria-label=\"${ifNonNull(this.menuBarLabel)}\"\n >\n <slot\n @slotchange=${handleSlotChange}\n @keydown=\"${handleOnKeyDown}\"\n ></slot>\n </div>\n <div class=\"${prefix}--sub-content-right\"></div>\n </nav>\n </div>\n </div>\n <div class=\"${caretRightContainerClasses}\">\n <div\n class=\"${prefix}--header__nav-caret-right-gradient\"\n ></div>\n <button\n part=\"next-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-right\"\n @click=\"${paginateRight}\"\n >\n ${CaretRight20()}\n </button>\n </div>\n `}\n `;\n }\n\n static get stableSelector() {\n return `${ddsPrefix}--masthead__l0-nav`;\n }\n\n /**\n * The name of the custom event fired after the search is toggled.\n */\n static get eventToggleSearch() {\n return `${ddsPrefix}-search-with-typeahead-toggled`; // TODO hook up the new event\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader.\n}\n\nexport default DDSTopNav;\n"]}
|
|
@@ -17,12 +17,12 @@ let _ = t => t,
|
|
|
17
17
|
import { classMap } from 'lit-html/directives/class-map.js';
|
|
18
18
|
import { html, property, state, query, customElement } from 'lit-element';
|
|
19
19
|
import settings from 'carbon-components/es/globals/js/settings.js';
|
|
20
|
-
import CaretLeft20 from '@carbon/
|
|
21
|
-
import CaretRight20 from '@carbon/
|
|
22
|
-
import BXHeaderNav from '@carbon/
|
|
23
|
-
import ifNonNull from '@carbon/
|
|
24
|
-
import HostListener from '@carbon/
|
|
25
|
-
import HostListenerMixin from '@carbon/
|
|
20
|
+
import CaretLeft20 from '@carbon/web-components/es/icons/caret--left/20.js';
|
|
21
|
+
import CaretRight20 from '@carbon/web-components/es/icons/caret--right/20.js';
|
|
22
|
+
import BXHeaderNav from '@carbon/web-components/es/components/ui-shell/header-nav.js';
|
|
23
|
+
import ifNonNull from '@carbon/web-components/es/globals/directives/if-non-null.js';
|
|
24
|
+
import HostListener from '@carbon/web-components/es/globals/decorators/host-listener.js';
|
|
25
|
+
import HostListenerMixin from '@carbon/web-components/es/globals/mixins/host-listener.js';
|
|
26
26
|
import ddsSettings from "../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings.js";
|
|
27
27
|
import StableSelectorMixin from "../../globals/mixins/stable-selector.js";
|
|
28
28
|
import styles from "././masthead.css.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"top-nav.js","names":["classMap","html","property","state","query","customElement","settings","CaretLeft20","CaretRight20","BXHeaderNav","ifNonNull","HostListener","HostListenerMixin","ddsSettings","StableSelectorMixin","styles","CspComplianceMixin","prefix","stablePrefix","ddsPrefix","buttonGradientWidth","findLastIndex","a","predicate","thisObject","i","length","DDSTopNav","type","Boolean","reflect","attribute","ownerDocument","documentElement","dir","create","_intersectionLeftSentinelNode","intersectionLeftSentinelNode","_intersectionRightSentinelNode","intersectionRightSentinelNode","_observerIntersection","disconnect","IntersectionObserver","_observeIntersectionContainer","root","threshold","observe","event","_childItems","target","assignedNodes","filter","elem","matches","_paginateRight","onLoad","records","forEach","isIntersecting","_isIntersectionLeftTrackerInContent","_isIntersectionRightTrackerInContent","_caretLeftNode","caretLeftNode","_caretRightNode","caretRightNode","_contentContainerNode","contentContainerNode","_currentScrollPosition","currentScrollPosition","isIntersectionRightTrackerInContent","_navNode","navNode","_pageIsRTL","pageIsRTL","_slotNode","slotNode","elems","assignedElements","caretLeftNodeWidthAdjustment","offsetWidth","navRight","getBoundingClientRect","right","lastVisibleElementIndex","findIndex","left","Math","max","caretRightNodeWidthAdjustment","navLeft","lastVisibleElementRight","newScrollPosition","_contentNode","contentNode","isIntersectionLeftTrackerInContent","updateComplete","interimLeft","firstVisibleElementIndex","hasAttribute","firstVisibleElementLeft","abs","maxLeft","scrollWidth","min","key","shiftKey","previousElementSibling","_paginateLeft","nextElementSibling","floor","detail","active","undefined","hideNav","_cleanAndCreateIntersectionObserverContainer","removeAttribute","changedProperties","has","dynamicStylesNode","setStyleBySelector","_handleSlotChange","handleSlotChange","paginateLeft","paginateRight","_handleOnKeyDown","handleOnKeyDown","caretLeftContainerClasses","caretRightContainerClasses","_renderDynamicStyles","menuBarLabel"],"sources":["components/masthead/top-nav.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit-html/directives/class-map.js';\nimport { html, property, state, query, customElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport CaretLeft20 from '@carbon/carbon-web-components/es/icons/caret--left/20.js';\nimport CaretRight20 from '@carbon/carbon-web-components/es/icons/caret--right/20.js';\nimport BXHeaderNav from '@carbon/carbon-web-components/es/components/ui-shell/header-nav.js';\nimport ifNonNull from '@carbon/carbon-web-components/es/globals/directives/if-non-null.js';\nimport HostListener from '@carbon/carbon-web-components/es/globals/decorators/host-listener.js';\nimport HostListenerMixin from '@carbon/carbon-web-components/es/globals/mixins/host-listener.js';\nimport ddsSettings from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport styles from './masthead.scss';\nimport CspComplianceMixin from '../../globals/mixins/csp-compliance';\n\nconst { prefix } = settings;\nconst { stablePrefix: ddsPrefix } = ddsSettings;\n\n// button gradient width size\nconst buttonGradientWidth = 8;\n\n/**\n * @param a An array.\n * @param predicate The callback function.\n * @param [thisObject] The context object for the given callback function.\n * @returns The index of the last item in the given array where `predicate` returns `true`. `-1` if no such item is found.\n */\nfunction findLastIndex<T>(\n a: T[],\n predicate: (search: T, index?: number, thisObject?: any) => boolean,\n thisObject?: any\n): number {\n for (let i = a.length - 1; i >= 0; --i) {\n if (predicate(a[i], i, thisObject)) {\n return i;\n }\n }\n return -1;\n}\n\n/**\n * Masthead top nav.\n *\n * @element dds-top-nav\n * @csspart nav The element containing the menu bar.\n * @csspart menubar The menu bar.\n * @csspart prev-button The button to go to the previous page.\n * @csspart next-button The button to go to the next page.\n */\n@customElement(`${ddsPrefix}-top-nav`)\nclass DDSTopNav extends CspComplianceMixin(\n StableSelectorMixin(HostListenerMixin(BXHeaderNav))\n) {\n /**\n * The left-hand paginator button.\n */\n @query(`.${prefix}--header__nav-caret-left`)\n private _caretLeftNode?: HTMLElement;\n\n /**\n * The right-hand paginator button.\n */\n @query(`.${prefix}--header__nav-caret-right`)\n private _caretRightNode?: HTMLElement;\n\n /**\n * The `<nav>`.\n */\n @query(`.${prefix}--header__nav`)\n private _navNode?: HTMLElement;\n\n /**\n * The scrolling container.\n */\n @query(`.${ddsPrefix}-ce--header__nav-content-container`)\n private _contentContainerNode?: HTMLElement;\n\n /**\n * The scrolling content.\n */\n @query(`.${prefix}--header__nav-content`)\n private _contentNode?: HTMLElement;\n\n /**\n * The current scroll position.\n */\n @state()\n private _currentScrollPosition = 0;\n\n /**\n * The left-hand sentinel to track intersection with the host element.\n * If they intersect, the left-hand paginator button should be hidden.\n */\n @query(`.${prefix}--sub-content-left`)\n private _intersectionLeftSentinelNode?: HTMLElement;\n\n /**\n * The right-hand sentinel to track intersection with the host element.\n * If they intersect, the right-hand paginator button should be hidden.\n */\n @query(`.${prefix}--sub-content-right`)\n private _intersectionRightSentinelNode?: HTMLElement;\n\n /**\n * `true` if the search is open and nav should be hidden\n */\n @property({ type: Boolean, reflect: true })\n hideNav = false;\n\n /**\n * The English title of the selected nav item.\n */\n @property({ attribute: 'selected-menu-item' })\n selectedMenuItem!: string;\n\n /**\n * Array to hold the card-heading elements within child items.\n */\n private _childItems: any[] = [];\n\n /**\n * `true` if left-hand scroll intersection sentinel intersects with the host element.\n * In this condition, the left-hand paginator button should be hidden.\n */\n @state()\n private _isIntersectionLeftTrackerInContent = true;\n\n /**\n * `true` if right-hand scroll intersection sentinel intersects with the host element.\n * In this condition, the right-hand paginator button should be hidden.\n */\n @state()\n private _isIntersectionRightTrackerInContent = true;\n\n /**\n * The observer for the intersection of left-side content edge.\n */\n private _observerIntersection: IntersectionObserver | null = null;\n\n /**\n * Boolean checking if page is RTL\n */\n @state()\n private _pageIsRTL: Boolean =\n this.ownerDocument!.documentElement.dir === 'rtl';\n\n @query('slot')\n private _slotNode?: HTMLSlotElement;\n\n /**\n * Cleans-up and creats the intersection observer for the scrolling container.\n *\n * @param [options] The options.\n * @param [options.create] `true` to create the new intersection observer.\n */\n private _cleanAndCreateIntersectionObserverContainer({\n create,\n }: { create?: boolean } = {}) {\n const {\n _intersectionLeftSentinelNode: intersectionLeftSentinelNode,\n _intersectionRightSentinelNode: intersectionRightSentinelNode,\n } = this;\n if (this._observerIntersection) {\n this._observerIntersection.disconnect();\n this._observerIntersection = null;\n }\n if (create) {\n this._observerIntersection = new IntersectionObserver(\n this._observeIntersectionContainer,\n {\n root: this,\n threshold: 0,\n }\n );\n if (intersectionLeftSentinelNode) {\n this._observerIntersection.observe(intersectionLeftSentinelNode);\n }\n if (intersectionRightSentinelNode) {\n this._observerIntersection.observe(intersectionRightSentinelNode);\n }\n }\n }\n\n /**\n * Handles `slotchange` event on the default `<slot>`.\n */\n\n private _handleSlotChange(event) {\n this._childItems = (event.target as HTMLSlotElement)\n .assignedNodes()\n .filter((elem) =>\n (elem as HTMLElement).matches?.('dds-megamenu-top-nav-menu')\n );\n this._paginateRight({ onLoad: true });\n }\n\n /**\n * The intersection observer callback for the scrolling container.\n *\n * @param records The intersection observer records.\n */\n private _observeIntersectionContainer = (records) => {\n const {\n _intersectionLeftSentinelNode: intersectionLeftSentinelNode,\n _intersectionRightSentinelNode: intersectionRightSentinelNode,\n } = this;\n records.forEach(({ isIntersecting, target }) => {\n if (target === intersectionLeftSentinelNode) {\n this._isIntersectionLeftTrackerInContent = isIntersecting;\n }\n if (target === intersectionRightSentinelNode) {\n this._isIntersectionRightTrackerInContent = isIntersecting;\n }\n });\n };\n\n /**\n * Handles `click` event on the left-hand paginator button.\n */\n private _paginateLeft() {\n const {\n _caretLeftNode: caretLeftNode,\n _caretRightNode: caretRightNode,\n _contentContainerNode: contentContainerNode,\n _currentScrollPosition: currentScrollPosition,\n _isIntersectionRightTrackerInContent: isIntersectionRightTrackerInContent,\n _navNode: navNode,\n _pageIsRTL: pageIsRTL,\n _slotNode: slotNode,\n } = this;\n // If the right-side intersection sentinel is in the view, it means that right-side caret button is hidden.\n // Given scrolling to left makes it shown,\n // `contentContainerNode!.offsetWidth` will shrink as we scroll and we need to adjust for it.\n\n const elems = slotNode?.assignedElements() as HTMLElement[];\n if (elems) {\n if (pageIsRTL) {\n const caretLeftNodeWidthAdjustment = this\n ._isIntersectionLeftTrackerInContent\n ? caretLeftNode!.offsetWidth\n : 0;\n const navRight = navNode!.getBoundingClientRect().right;\n const lastVisibleElementIndex = elems.findIndex(\n (elem) =>\n elem.getBoundingClientRect().left <\n navRight - currentScrollPosition - caretRightNode!.offsetWidth\n );\n if (lastVisibleElementIndex >= 0) {\n this._currentScrollPosition = Math.max(\n navRight -\n elems[lastVisibleElementIndex].getBoundingClientRect().left -\n contentContainerNode!.offsetWidth +\n caretLeftNodeWidthAdjustment +\n caretRightNode!.offsetWidth +\n buttonGradientWidth,\n 0\n );\n }\n } else {\n const caretRightNodeWidthAdjustment =\n isIntersectionRightTrackerInContent\n ? caretRightNode!.offsetWidth + buttonGradientWidth\n : buttonGradientWidth;\n const caretLeftNodeWidthAdjustment = this\n ._isIntersectionLeftTrackerInContent\n ? caretLeftNode!.offsetWidth + buttonGradientWidth\n : 0;\n const navLeft = navNode!.getBoundingClientRect().left;\n const lastVisibleElementIndex = findLastIndex(\n elems,\n (elem) =>\n elem.getBoundingClientRect().left - navLeft < currentScrollPosition\n );\n if (lastVisibleElementIndex >= 0) {\n const lastVisibleElementRight =\n elems[lastVisibleElementIndex].getBoundingClientRect().right -\n navLeft;\n const newScrollPosition =\n lastVisibleElementRight -\n (contentContainerNode!.offsetWidth +\n caretLeftNodeWidthAdjustment -\n caretRightNodeWidthAdjustment);\n // If the new scroll position is less than the width of the left caret button,\n // it means that hiding the left caret button reveals the whole of the left-most nav item.\n // Snaps the left-most nav item to the left edge of nav container in this case.\n this._currentScrollPosition =\n newScrollPosition <= caretLeftNode!.offsetWidth\n ? 0\n : newScrollPosition;\n }\n }\n }\n }\n\n /**\n * Handles `click` event on the right-hand paginator button.\n */\n private async _paginateRight({ onLoad }: { onLoad?: boolean } = {}) {\n const {\n _caretLeftNode: caretLeftNode,\n _caretRightNode: caretRightNode,\n _contentContainerNode: contentContainerNode,\n _contentNode: contentNode,\n _currentScrollPosition: currentScrollPosition,\n _isIntersectionLeftTrackerInContent: isIntersectionLeftTrackerInContent,\n _isIntersectionRightTrackerInContent: isIntersectionRightTrackerInContent,\n _navNode: navNode,\n _pageIsRTL: pageIsRTL,\n _slotNode: slotNode,\n } = this;\n await this.updateComplete;\n\n const elems =\n (slotNode?.assignedElements() as HTMLElement[]) || this._childItems;\n\n if (elems && contentContainerNode) {\n const interimLeft =\n currentScrollPosition + contentContainerNode!.offsetWidth;\n if (pageIsRTL) {\n const caretLeftNodeWidthAdjustment = isIntersectionLeftTrackerInContent\n ? caretLeftNode!.offsetWidth\n : 0;\n const navRight = navNode!.getBoundingClientRect().right;\n const firstVisibleElementIndex = onLoad\n ? elems.findIndex(\n (elem) =>\n navRight - elem.getBoundingClientRect().left >\n interimLeft -\n caretLeftNode!.offsetWidth -\n buttonGradientWidth && elem.hasAttribute('active')\n )\n : elems.findIndex(\n (elem) =>\n navRight - elem.getBoundingClientRect().left >\n interimLeft - caretLeftNode!.offsetWidth - buttonGradientWidth\n );\n if (firstVisibleElementIndex > 0) {\n const firstVisibleElementLeft = Math.abs(\n elems[firstVisibleElementIndex].getBoundingClientRect().right -\n navRight +\n caretLeftNode!.offsetWidth +\n buttonGradientWidth\n );\n const maxLeft =\n contentNode!.scrollWidth -\n contentContainerNode!.offsetWidth +\n caretLeftNodeWidthAdjustment;\n this._currentScrollPosition = Math.min(\n firstVisibleElementLeft,\n maxLeft\n );\n }\n } else {\n const caretLeftNodeWidthAdjustment = isIntersectionLeftTrackerInContent\n ? 0\n : caretLeftNode!.offsetWidth;\n const caretRightNodeWidthAdjustment =\n isIntersectionRightTrackerInContent ? caretRightNode!.offsetWidth : 0;\n const navLeft = navNode!.getBoundingClientRect().left;\n const firstVisibleElementIndex = onLoad\n ? elems.findIndex(\n (elem) =>\n elem.getBoundingClientRect().right - navLeft > interimLeft &&\n elem.hasAttribute('active')\n )\n : elems.findIndex(\n (elem) =>\n elem.getBoundingClientRect().right - navLeft > interimLeft\n );\n if (firstVisibleElementIndex > 0) {\n const firstVisibleElementLeft =\n elems[firstVisibleElementIndex].getBoundingClientRect().left -\n navLeft -\n buttonGradientWidth;\n // Ensures that is there is no blank area at the right hand side in scroll area\n // if we see the right remainder nav items can be contained in a page\n const maxLeft =\n contentNode!.scrollWidth -\n (contentContainerNode!.offsetWidth -\n caretRightNodeWidthAdjustment +\n caretLeftNodeWidthAdjustment);\n this._currentScrollPosition = Math.min(\n firstVisibleElementLeft,\n maxLeft\n );\n }\n }\n }\n }\n\n protected _handleOnKeyDown(event: KeyboardEvent) {\n const target = event.target as HTMLAnchorElement;\n const {\n _pageIsRTL: pageIsRTL,\n _navNode: navNode,\n _currentScrollPosition: currentScrollPosition,\n _contentContainerNode: contentContainerNode,\n _caretRightNode: caretRightNode,\n } = this;\n if (target) {\n if (pageIsRTL) {\n if (event.key === 'Tab') {\n if (event.shiftKey) {\n if (\n target.previousElementSibling &&\n caretRightNode &&\n target.previousElementSibling.getBoundingClientRect().right +\n currentScrollPosition >\n navNode!.getBoundingClientRect().right -\n caretRightNode.offsetWidth\n ) {\n this._paginateLeft();\n }\n } else if (\n target.nextElementSibling &&\n caretRightNode &&\n navNode!.getBoundingClientRect().right -\n target.nextElementSibling.getBoundingClientRect().left >\n currentScrollPosition +\n contentContainerNode!.offsetWidth -\n caretRightNode.offsetWidth\n ) {\n this._paginateRight();\n }\n }\n } else if (event.key === 'Tab') {\n if (event.shiftKey) {\n if (\n target.previousElementSibling &&\n target.previousElementSibling.getBoundingClientRect().left -\n navNode!.getBoundingClientRect().left <\n currentScrollPosition\n ) {\n this._paginateLeft();\n }\n } else if (\n target.nextElementSibling &&\n Math.floor(\n target.nextElementSibling.getBoundingClientRect().right -\n navNode!.getBoundingClientRect().left\n ) >\n currentScrollPosition + contentContainerNode!.offsetWidth\n ) {\n this._paginateRight();\n }\n }\n }\n }\n\n /**\n * Handles toggle event from the search component.\n *\n * @param event The event.\n */\n @HostListener('parentRoot:eventToggleSearch')\n protected _handleSearchToggle = (event: Event) => {\n if ((event as CustomEvent).detail.active !== undefined) {\n this.hideNav = (event as CustomEvent).detail.active;\n }\n };\n\n /**\n * `true` to hide the divider.\n */\n @property({ type: Boolean, reflect: true, attribute: 'hide-divider' })\n hideDivider = false;\n\n connectedCallback() {\n super.connectedCallback();\n this._cleanAndCreateIntersectionObserverContainer({ create: true });\n this.removeAttribute('role');\n }\n\n disconnectedCallback() {\n this._cleanAndCreateIntersectionObserverContainer();\n super.disconnectedCallback();\n }\n\n firstUpdated(changedProperties) {\n if (changedProperties.has('selectedMenuItem')) {\n this._paginateRight({ onLoad: true });\n }\n }\n\n shouldUpdate(changedProperties) {\n if (changedProperties.has('hideNav')) {\n this._cleanAndCreateIntersectionObserverContainer();\n }\n return true;\n }\n\n updated(changedProperties) {\n if (changedProperties.has('hideNav')) {\n this._cleanAndCreateIntersectionObserverContainer({ create: true });\n }\n\n // Update the values in the CSP-safe stylesheet.\n if (\n changedProperties.has('_currentScrollPosition') &&\n this.dynamicStylesNode\n ) {\n this.setStyleBySelector(\n '.bx--header__nav-content',\n 'inset-inline-start',\n `-${this._currentScrollPosition}px`\n );\n }\n }\n\n render() {\n const {\n _isIntersectionLeftTrackerInContent: isIntersectionLeftTrackerInContent,\n _isIntersectionRightTrackerInContent: isIntersectionRightTrackerInContent,\n _handleSlotChange: handleSlotChange,\n _paginateLeft: paginateLeft,\n _paginateRight: paginateRight,\n _pageIsRTL: pageIsRTL,\n _handleOnKeyDown: handleOnKeyDown,\n } = this;\n const caretLeftContainerClasses = classMap({\n [`${prefix}--header__nav-caret-left-container`]: true,\n [`${ddsPrefix}-ce--header__nav-caret-container--hidden`]:\n isIntersectionLeftTrackerInContent,\n });\n const caretRightContainerClasses = classMap({\n [`${prefix}--header__nav-caret-right-container`]: true,\n [`${ddsPrefix}-ce--header__nav-caret-container--hidden`]:\n isIntersectionRightTrackerInContent,\n });\n\n return this.hideNav\n ? undefined!\n : html`\n ${this._renderDynamicStyles()}\n ${pageIsRTL\n ? html`\n <div class=\"${caretRightContainerClasses}\">\n <div\n class=\"${prefix}--header__nav-caret-right-gradient\"\n ></div>\n <button\n part=\"next-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-right\"\n @click=\"${paginateRight}\"\n >\n ${CaretLeft20()}\n </button>\n </div>\n <div class=\"${ddsPrefix}-ce--header__nav-content-container\">\n <div class=\"${prefix}--header__nav-content\">\n <nav part=\"nav\" class=\"${prefix}--header__nav\">\n <div class=\"${prefix}--sub-content-right\"></div>\n <div\n part=\"menubar\"\n class=\"${prefix}--header__menu-bar\"\n aria-label=\"${ifNonNull(this.menuBarLabel)}\"\n >\n <slot\n @slotchange=${handleSlotChange}\n @keydown=\"${handleOnKeyDown}\"\n ></slot>\n </div>\n <div class=\"${prefix}--sub-content-left\"></div>\n </nav>\n </div>\n </div>\n <div class=\"${caretLeftContainerClasses}\">\n <button\n part=\"prev-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-left\"\n @click=\"${paginateLeft}\"\n >\n ${CaretRight20()}\n </button>\n <div class=\"${prefix}--header__nav-caret-left-gradient\"></div>\n </div>\n `\n : html`\n <div class=\"${caretLeftContainerClasses}\">\n <button\n part=\"prev-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-left\"\n @click=\"${paginateLeft}\"\n >\n ${CaretLeft20()}\n </button>\n <div class=\"${prefix}--header__nav-caret-left-gradient\"></div>\n </div>\n <div class=\"${ddsPrefix}-ce--header__nav-content-container\">\n <div class=\"${prefix}--header__nav-content\">\n <nav part=\"nav\" class=\"${prefix}--header__nav\">\n <div class=\"${prefix}--sub-content-left\"></div>\n <div\n part=\"menubar\"\n class=\"${prefix}--header__menu-bar\"\n aria-label=\"${ifNonNull(this.menuBarLabel)}\"\n >\n <slot\n @slotchange=${handleSlotChange}\n @keydown=\"${handleOnKeyDown}\"\n ></slot>\n </div>\n <div class=\"${prefix}--sub-content-right\"></div>\n </nav>\n </div>\n </div>\n <div class=\"${caretRightContainerClasses}\">\n <div\n class=\"${prefix}--header__nav-caret-right-gradient\"\n ></div>\n <button\n part=\"next-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-right\"\n @click=\"${paginateRight}\"\n >\n ${CaretRight20()}\n </button>\n </div>\n `}\n `;\n }\n\n static get stableSelector() {\n return `${ddsPrefix}--masthead__l0-nav`;\n }\n\n /**\n * The name of the custom event fired after the search is toggled.\n */\n static get eventToggleSearch() {\n return `${ddsPrefix}-search-with-typeahead-toggled`; // TODO hook up the new event\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader.\n}\n\nexport default DDSTopNav;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"top-nav.js","names":["classMap","html","property","state","query","customElement","settings","CaretLeft20","CaretRight20","BXHeaderNav","ifNonNull","HostListener","HostListenerMixin","ddsSettings","StableSelectorMixin","styles","CspComplianceMixin","prefix","stablePrefix","ddsPrefix","buttonGradientWidth","findLastIndex","a","predicate","thisObject","i","length","DDSTopNav","type","Boolean","reflect","attribute","ownerDocument","documentElement","dir","create","_intersectionLeftSentinelNode","intersectionLeftSentinelNode","_intersectionRightSentinelNode","intersectionRightSentinelNode","_observerIntersection","disconnect","IntersectionObserver","_observeIntersectionContainer","root","threshold","observe","event","_childItems","target","assignedNodes","filter","elem","matches","_paginateRight","onLoad","records","forEach","isIntersecting","_isIntersectionLeftTrackerInContent","_isIntersectionRightTrackerInContent","_caretLeftNode","caretLeftNode","_caretRightNode","caretRightNode","_contentContainerNode","contentContainerNode","_currentScrollPosition","currentScrollPosition","isIntersectionRightTrackerInContent","_navNode","navNode","_pageIsRTL","pageIsRTL","_slotNode","slotNode","elems","assignedElements","caretLeftNodeWidthAdjustment","offsetWidth","navRight","getBoundingClientRect","right","lastVisibleElementIndex","findIndex","left","Math","max","caretRightNodeWidthAdjustment","navLeft","lastVisibleElementRight","newScrollPosition","_contentNode","contentNode","isIntersectionLeftTrackerInContent","updateComplete","interimLeft","firstVisibleElementIndex","hasAttribute","firstVisibleElementLeft","abs","maxLeft","scrollWidth","min","key","shiftKey","previousElementSibling","_paginateLeft","nextElementSibling","floor","detail","active","undefined","hideNav","_cleanAndCreateIntersectionObserverContainer","removeAttribute","changedProperties","has","dynamicStylesNode","setStyleBySelector","_handleSlotChange","handleSlotChange","paginateLeft","paginateRight","_handleOnKeyDown","handleOnKeyDown","caretLeftContainerClasses","caretRightContainerClasses","_renderDynamicStyles","menuBarLabel"],"sources":["components/masthead/top-nav.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit-html/directives/class-map.js';\nimport { html, property, state, query, customElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport CaretLeft20 from '@carbon/web-components/es/icons/caret--left/20.js';\nimport CaretRight20 from '@carbon/web-components/es/icons/caret--right/20.js';\nimport BXHeaderNav from '@carbon/web-components/es/components/ui-shell/header-nav.js';\nimport ifNonNull from '@carbon/web-components/es/globals/directives/if-non-null.js';\nimport HostListener from '@carbon/web-components/es/globals/decorators/host-listener.js';\nimport HostListenerMixin from '@carbon/web-components/es/globals/mixins/host-listener.js';\nimport ddsSettings from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport styles from './masthead.scss';\nimport CspComplianceMixin from '../../globals/mixins/csp-compliance';\n\nconst { prefix } = settings;\nconst { stablePrefix: ddsPrefix } = ddsSettings;\n\n// button gradient width size\nconst buttonGradientWidth = 8;\n\n/**\n * @param a An array.\n * @param predicate The callback function.\n * @param [thisObject] The context object for the given callback function.\n * @returns The index of the last item in the given array where `predicate` returns `true`. `-1` if no such item is found.\n */\nfunction findLastIndex<T>(\n a: T[],\n predicate: (search: T, index?: number, thisObject?: any) => boolean,\n thisObject?: any\n): number {\n for (let i = a.length - 1; i >= 0; --i) {\n if (predicate(a[i], i, thisObject)) {\n return i;\n }\n }\n return -1;\n}\n\n/**\n * Masthead top nav.\n *\n * @element dds-top-nav\n * @csspart nav The element containing the menu bar.\n * @csspart menubar The menu bar.\n * @csspart prev-button The button to go to the previous page.\n * @csspart next-button The button to go to the next page.\n */\n@customElement(`${ddsPrefix}-top-nav`)\nclass DDSTopNav extends CspComplianceMixin(\n StableSelectorMixin(HostListenerMixin(BXHeaderNav))\n) {\n /**\n * The left-hand paginator button.\n */\n @query(`.${prefix}--header__nav-caret-left`)\n private _caretLeftNode?: HTMLElement;\n\n /**\n * The right-hand paginator button.\n */\n @query(`.${prefix}--header__nav-caret-right`)\n private _caretRightNode?: HTMLElement;\n\n /**\n * The `<nav>`.\n */\n @query(`.${prefix}--header__nav`)\n private _navNode?: HTMLElement;\n\n /**\n * The scrolling container.\n */\n @query(`.${ddsPrefix}-ce--header__nav-content-container`)\n private _contentContainerNode?: HTMLElement;\n\n /**\n * The scrolling content.\n */\n @query(`.${prefix}--header__nav-content`)\n private _contentNode?: HTMLElement;\n\n /**\n * The current scroll position.\n */\n @state()\n private _currentScrollPosition = 0;\n\n /**\n * The left-hand sentinel to track intersection with the host element.\n * If they intersect, the left-hand paginator button should be hidden.\n */\n @query(`.${prefix}--sub-content-left`)\n private _intersectionLeftSentinelNode?: HTMLElement;\n\n /**\n * The right-hand sentinel to track intersection with the host element.\n * If they intersect, the right-hand paginator button should be hidden.\n */\n @query(`.${prefix}--sub-content-right`)\n private _intersectionRightSentinelNode?: HTMLElement;\n\n /**\n * `true` if the search is open and nav should be hidden\n */\n @property({ type: Boolean, reflect: true })\n hideNav = false;\n\n /**\n * The English title of the selected nav item.\n */\n @property({ attribute: 'selected-menu-item' })\n selectedMenuItem!: string;\n\n /**\n * Array to hold the card-heading elements within child items.\n */\n private _childItems: any[] = [];\n\n /**\n * `true` if left-hand scroll intersection sentinel intersects with the host element.\n * In this condition, the left-hand paginator button should be hidden.\n */\n @state()\n private _isIntersectionLeftTrackerInContent = true;\n\n /**\n * `true` if right-hand scroll intersection sentinel intersects with the host element.\n * In this condition, the right-hand paginator button should be hidden.\n */\n @state()\n private _isIntersectionRightTrackerInContent = true;\n\n /**\n * The observer for the intersection of left-side content edge.\n */\n private _observerIntersection: IntersectionObserver | null = null;\n\n /**\n * Boolean checking if page is RTL\n */\n @state()\n private _pageIsRTL: Boolean =\n this.ownerDocument!.documentElement.dir === 'rtl';\n\n @query('slot')\n private _slotNode?: HTMLSlotElement;\n\n /**\n * Cleans-up and creats the intersection observer for the scrolling container.\n *\n * @param [options] The options.\n * @param [options.create] `true` to create the new intersection observer.\n */\n private _cleanAndCreateIntersectionObserverContainer({\n create,\n }: { create?: boolean } = {}) {\n const {\n _intersectionLeftSentinelNode: intersectionLeftSentinelNode,\n _intersectionRightSentinelNode: intersectionRightSentinelNode,\n } = this;\n if (this._observerIntersection) {\n this._observerIntersection.disconnect();\n this._observerIntersection = null;\n }\n if (create) {\n this._observerIntersection = new IntersectionObserver(\n this._observeIntersectionContainer,\n {\n root: this,\n threshold: 0,\n }\n );\n if (intersectionLeftSentinelNode) {\n this._observerIntersection.observe(intersectionLeftSentinelNode);\n }\n if (intersectionRightSentinelNode) {\n this._observerIntersection.observe(intersectionRightSentinelNode);\n }\n }\n }\n\n /**\n * Handles `slotchange` event on the default `<slot>`.\n */\n\n private _handleSlotChange(event) {\n this._childItems = (event.target as HTMLSlotElement)\n .assignedNodes()\n .filter((elem) =>\n (elem as HTMLElement).matches?.('dds-megamenu-top-nav-menu')\n );\n this._paginateRight({ onLoad: true });\n }\n\n /**\n * The intersection observer callback for the scrolling container.\n *\n * @param records The intersection observer records.\n */\n private _observeIntersectionContainer = (records) => {\n const {\n _intersectionLeftSentinelNode: intersectionLeftSentinelNode,\n _intersectionRightSentinelNode: intersectionRightSentinelNode,\n } = this;\n records.forEach(({ isIntersecting, target }) => {\n if (target === intersectionLeftSentinelNode) {\n this._isIntersectionLeftTrackerInContent = isIntersecting;\n }\n if (target === intersectionRightSentinelNode) {\n this._isIntersectionRightTrackerInContent = isIntersecting;\n }\n });\n };\n\n /**\n * Handles `click` event on the left-hand paginator button.\n */\n private _paginateLeft() {\n const {\n _caretLeftNode: caretLeftNode,\n _caretRightNode: caretRightNode,\n _contentContainerNode: contentContainerNode,\n _currentScrollPosition: currentScrollPosition,\n _isIntersectionRightTrackerInContent: isIntersectionRightTrackerInContent,\n _navNode: navNode,\n _pageIsRTL: pageIsRTL,\n _slotNode: slotNode,\n } = this;\n // If the right-side intersection sentinel is in the view, it means that right-side caret button is hidden.\n // Given scrolling to left makes it shown,\n // `contentContainerNode!.offsetWidth` will shrink as we scroll and we need to adjust for it.\n\n const elems = slotNode?.assignedElements() as HTMLElement[];\n if (elems) {\n if (pageIsRTL) {\n const caretLeftNodeWidthAdjustment = this\n ._isIntersectionLeftTrackerInContent\n ? caretLeftNode!.offsetWidth\n : 0;\n const navRight = navNode!.getBoundingClientRect().right;\n const lastVisibleElementIndex = elems.findIndex(\n (elem) =>\n elem.getBoundingClientRect().left <\n navRight - currentScrollPosition - caretRightNode!.offsetWidth\n );\n if (lastVisibleElementIndex >= 0) {\n this._currentScrollPosition = Math.max(\n navRight -\n elems[lastVisibleElementIndex].getBoundingClientRect().left -\n contentContainerNode!.offsetWidth +\n caretLeftNodeWidthAdjustment +\n caretRightNode!.offsetWidth +\n buttonGradientWidth,\n 0\n );\n }\n } else {\n const caretRightNodeWidthAdjustment =\n isIntersectionRightTrackerInContent\n ? caretRightNode!.offsetWidth + buttonGradientWidth\n : buttonGradientWidth;\n const caretLeftNodeWidthAdjustment = this\n ._isIntersectionLeftTrackerInContent\n ? caretLeftNode!.offsetWidth + buttonGradientWidth\n : 0;\n const navLeft = navNode!.getBoundingClientRect().left;\n const lastVisibleElementIndex = findLastIndex(\n elems,\n (elem) =>\n elem.getBoundingClientRect().left - navLeft < currentScrollPosition\n );\n if (lastVisibleElementIndex >= 0) {\n const lastVisibleElementRight =\n elems[lastVisibleElementIndex].getBoundingClientRect().right -\n navLeft;\n const newScrollPosition =\n lastVisibleElementRight -\n (contentContainerNode!.offsetWidth +\n caretLeftNodeWidthAdjustment -\n caretRightNodeWidthAdjustment);\n // If the new scroll position is less than the width of the left caret button,\n // it means that hiding the left caret button reveals the whole of the left-most nav item.\n // Snaps the left-most nav item to the left edge of nav container in this case.\n this._currentScrollPosition =\n newScrollPosition <= caretLeftNode!.offsetWidth\n ? 0\n : newScrollPosition;\n }\n }\n }\n }\n\n /**\n * Handles `click` event on the right-hand paginator button.\n */\n private async _paginateRight({ onLoad }: { onLoad?: boolean } = {}) {\n const {\n _caretLeftNode: caretLeftNode,\n _caretRightNode: caretRightNode,\n _contentContainerNode: contentContainerNode,\n _contentNode: contentNode,\n _currentScrollPosition: currentScrollPosition,\n _isIntersectionLeftTrackerInContent: isIntersectionLeftTrackerInContent,\n _isIntersectionRightTrackerInContent: isIntersectionRightTrackerInContent,\n _navNode: navNode,\n _pageIsRTL: pageIsRTL,\n _slotNode: slotNode,\n } = this;\n await this.updateComplete;\n\n const elems =\n (slotNode?.assignedElements() as HTMLElement[]) || this._childItems;\n\n if (elems && contentContainerNode) {\n const interimLeft =\n currentScrollPosition + contentContainerNode!.offsetWidth;\n if (pageIsRTL) {\n const caretLeftNodeWidthAdjustment = isIntersectionLeftTrackerInContent\n ? caretLeftNode!.offsetWidth\n : 0;\n const navRight = navNode!.getBoundingClientRect().right;\n const firstVisibleElementIndex = onLoad\n ? elems.findIndex(\n (elem) =>\n navRight - elem.getBoundingClientRect().left >\n interimLeft -\n caretLeftNode!.offsetWidth -\n buttonGradientWidth && elem.hasAttribute('active')\n )\n : elems.findIndex(\n (elem) =>\n navRight - elem.getBoundingClientRect().left >\n interimLeft - caretLeftNode!.offsetWidth - buttonGradientWidth\n );\n if (firstVisibleElementIndex > 0) {\n const firstVisibleElementLeft = Math.abs(\n elems[firstVisibleElementIndex].getBoundingClientRect().right -\n navRight +\n caretLeftNode!.offsetWidth +\n buttonGradientWidth\n );\n const maxLeft =\n contentNode!.scrollWidth -\n contentContainerNode!.offsetWidth +\n caretLeftNodeWidthAdjustment;\n this._currentScrollPosition = Math.min(\n firstVisibleElementLeft,\n maxLeft\n );\n }\n } else {\n const caretLeftNodeWidthAdjustment = isIntersectionLeftTrackerInContent\n ? 0\n : caretLeftNode!.offsetWidth;\n const caretRightNodeWidthAdjustment =\n isIntersectionRightTrackerInContent ? caretRightNode!.offsetWidth : 0;\n const navLeft = navNode!.getBoundingClientRect().left;\n const firstVisibleElementIndex = onLoad\n ? elems.findIndex(\n (elem) =>\n elem.getBoundingClientRect().right - navLeft > interimLeft &&\n elem.hasAttribute('active')\n )\n : elems.findIndex(\n (elem) =>\n elem.getBoundingClientRect().right - navLeft > interimLeft\n );\n if (firstVisibleElementIndex > 0) {\n const firstVisibleElementLeft =\n elems[firstVisibleElementIndex].getBoundingClientRect().left -\n navLeft -\n buttonGradientWidth;\n // Ensures that is there is no blank area at the right hand side in scroll area\n // if we see the right remainder nav items can be contained in a page\n const maxLeft =\n contentNode!.scrollWidth -\n (contentContainerNode!.offsetWidth -\n caretRightNodeWidthAdjustment +\n caretLeftNodeWidthAdjustment);\n this._currentScrollPosition = Math.min(\n firstVisibleElementLeft,\n maxLeft\n );\n }\n }\n }\n }\n\n protected _handleOnKeyDown(event: KeyboardEvent) {\n const target = event.target as HTMLAnchorElement;\n const {\n _pageIsRTL: pageIsRTL,\n _navNode: navNode,\n _currentScrollPosition: currentScrollPosition,\n _contentContainerNode: contentContainerNode,\n _caretRightNode: caretRightNode,\n } = this;\n if (target) {\n if (pageIsRTL) {\n if (event.key === 'Tab') {\n if (event.shiftKey) {\n if (\n target.previousElementSibling &&\n caretRightNode &&\n target.previousElementSibling.getBoundingClientRect().right +\n currentScrollPosition >\n navNode!.getBoundingClientRect().right -\n caretRightNode.offsetWidth\n ) {\n this._paginateLeft();\n }\n } else if (\n target.nextElementSibling &&\n caretRightNode &&\n navNode!.getBoundingClientRect().right -\n target.nextElementSibling.getBoundingClientRect().left >\n currentScrollPosition +\n contentContainerNode!.offsetWidth -\n caretRightNode.offsetWidth\n ) {\n this._paginateRight();\n }\n }\n } else if (event.key === 'Tab') {\n if (event.shiftKey) {\n if (\n target.previousElementSibling &&\n target.previousElementSibling.getBoundingClientRect().left -\n navNode!.getBoundingClientRect().left <\n currentScrollPosition\n ) {\n this._paginateLeft();\n }\n } else if (\n target.nextElementSibling &&\n Math.floor(\n target.nextElementSibling.getBoundingClientRect().right -\n navNode!.getBoundingClientRect().left\n ) >\n currentScrollPosition + contentContainerNode!.offsetWidth\n ) {\n this._paginateRight();\n }\n }\n }\n }\n\n /**\n * Handles toggle event from the search component.\n *\n * @param event The event.\n */\n @HostListener('parentRoot:eventToggleSearch')\n protected _handleSearchToggle = (event: Event) => {\n if ((event as CustomEvent).detail.active !== undefined) {\n this.hideNav = (event as CustomEvent).detail.active;\n }\n };\n\n /**\n * `true` to hide the divider.\n */\n @property({ type: Boolean, reflect: true, attribute: 'hide-divider' })\n hideDivider = false;\n\n connectedCallback() {\n super.connectedCallback();\n this._cleanAndCreateIntersectionObserverContainer({ create: true });\n this.removeAttribute('role');\n }\n\n disconnectedCallback() {\n this._cleanAndCreateIntersectionObserverContainer();\n super.disconnectedCallback();\n }\n\n firstUpdated(changedProperties) {\n if (changedProperties.has('selectedMenuItem')) {\n this._paginateRight({ onLoad: true });\n }\n }\n\n shouldUpdate(changedProperties) {\n if (changedProperties.has('hideNav')) {\n this._cleanAndCreateIntersectionObserverContainer();\n }\n return true;\n }\n\n updated(changedProperties) {\n if (changedProperties.has('hideNav')) {\n this._cleanAndCreateIntersectionObserverContainer({ create: true });\n }\n\n // Update the values in the CSP-safe stylesheet.\n if (\n changedProperties.has('_currentScrollPosition') &&\n this.dynamicStylesNode\n ) {\n this.setStyleBySelector(\n '.bx--header__nav-content',\n 'inset-inline-start',\n `-${this._currentScrollPosition}px`\n );\n }\n }\n\n render() {\n const {\n _isIntersectionLeftTrackerInContent: isIntersectionLeftTrackerInContent,\n _isIntersectionRightTrackerInContent: isIntersectionRightTrackerInContent,\n _handleSlotChange: handleSlotChange,\n _paginateLeft: paginateLeft,\n _paginateRight: paginateRight,\n _pageIsRTL: pageIsRTL,\n _handleOnKeyDown: handleOnKeyDown,\n } = this;\n const caretLeftContainerClasses = classMap({\n [`${prefix}--header__nav-caret-left-container`]: true,\n [`${ddsPrefix}-ce--header__nav-caret-container--hidden`]:\n isIntersectionLeftTrackerInContent,\n });\n const caretRightContainerClasses = classMap({\n [`${prefix}--header__nav-caret-right-container`]: true,\n [`${ddsPrefix}-ce--header__nav-caret-container--hidden`]:\n isIntersectionRightTrackerInContent,\n });\n\n return this.hideNav\n ? undefined!\n : html`\n ${this._renderDynamicStyles()}\n ${pageIsRTL\n ? html`\n <div class=\"${caretRightContainerClasses}\">\n <div\n class=\"${prefix}--header__nav-caret-right-gradient\"\n ></div>\n <button\n part=\"next-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-right\"\n @click=\"${paginateRight}\"\n >\n ${CaretLeft20()}\n </button>\n </div>\n <div class=\"${ddsPrefix}-ce--header__nav-content-container\">\n <div class=\"${prefix}--header__nav-content\">\n <nav part=\"nav\" class=\"${prefix}--header__nav\">\n <div class=\"${prefix}--sub-content-right\"></div>\n <div\n part=\"menubar\"\n class=\"${prefix}--header__menu-bar\"\n aria-label=\"${ifNonNull(this.menuBarLabel)}\"\n >\n <slot\n @slotchange=${handleSlotChange}\n @keydown=\"${handleOnKeyDown}\"\n ></slot>\n </div>\n <div class=\"${prefix}--sub-content-left\"></div>\n </nav>\n </div>\n </div>\n <div class=\"${caretLeftContainerClasses}\">\n <button\n part=\"prev-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-left\"\n @click=\"${paginateLeft}\"\n >\n ${CaretRight20()}\n </button>\n <div class=\"${prefix}--header__nav-caret-left-gradient\"></div>\n </div>\n `\n : html`\n <div class=\"${caretLeftContainerClasses}\">\n <button\n part=\"prev-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-left\"\n @click=\"${paginateLeft}\"\n >\n ${CaretLeft20()}\n </button>\n <div class=\"${prefix}--header__nav-caret-left-gradient\"></div>\n </div>\n <div class=\"${ddsPrefix}-ce--header__nav-content-container\">\n <div class=\"${prefix}--header__nav-content\">\n <nav part=\"nav\" class=\"${prefix}--header__nav\">\n <div class=\"${prefix}--sub-content-left\"></div>\n <div\n part=\"menubar\"\n class=\"${prefix}--header__menu-bar\"\n aria-label=\"${ifNonNull(this.menuBarLabel)}\"\n >\n <slot\n @slotchange=${handleSlotChange}\n @keydown=\"${handleOnKeyDown}\"\n ></slot>\n </div>\n <div class=\"${prefix}--sub-content-right\"></div>\n </nav>\n </div>\n </div>\n <div class=\"${caretRightContainerClasses}\">\n <div\n class=\"${prefix}--header__nav-caret-right-gradient\"\n ></div>\n <button\n part=\"next-button\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n class=\"${prefix}--header__nav-caret-right\"\n @click=\"${paginateRight}\"\n >\n ${CaretRight20()}\n </button>\n </div>\n `}\n `;\n }\n\n static get stableSelector() {\n return `${ddsPrefix}--masthead__l0-nav`;\n }\n\n /**\n * The name of the custom event fired after the search is toggled.\n */\n static get eventToggleSearch() {\n return `${ddsPrefix}-search-with-typeahead-toggled`; // TODO hook up the new event\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader.\n}\n\nexport default DDSTopNav;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["components/pricing-table/pricing-table-annotation-toggle.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAuB,UAAU,EAAY,MAAM,aAAa,CAAC;AAMxE,OAAO,kBAAkB,MAAM,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIrD,cACM,+BAAgC,SAAQ,oCAA+B;IAE3E,IAAI,SAAY;IAGhB,OAAO,EAAE,OAAO,CAAS;IAGzB,SAAS,EAAE,kBAAkB,GAAG,IAAI,CAAQ;IAE5C,OAAO,CAAC,YAAY,CAclB;IAEF,iBAAiB,IAAI,IAAI;IAKzB,MAAM;IAcN,MAAM,KAAK,cAAc,WAExB;IAED,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,+BAA+B,CAAC","file":"pricing-table-annotation-toggle.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { customElement, html, LitElement, property } from 'lit-element';\nimport ddsSettings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport ChevronDown16 from '@carbon/
|
|
1
|
+
{"version":3,"sources":["components/pricing-table/pricing-table-annotation-toggle.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAuB,UAAU,EAAY,MAAM,aAAa,CAAC;AAMxE,OAAO,kBAAkB,MAAM,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIrD,cACM,+BAAgC,SAAQ,oCAA+B;IAE3E,IAAI,SAAY;IAGhB,OAAO,EAAE,OAAO,CAAS;IAGzB,SAAS,EAAE,kBAAkB,GAAG,IAAI,CAAQ;IAE5C,OAAO,CAAC,YAAY,CAclB;IAEF,iBAAiB,IAAI,IAAI;IAKzB,MAAM;IAcN,MAAM,KAAK,cAAc,WAExB;IAED,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,+BAA+B,CAAC","file":"pricing-table-annotation-toggle.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { customElement, html, LitElement, property } from 'lit-element';\nimport ddsSettings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport ChevronDown16 from '@carbon/web-components/es/icons/chevron--down/16.js';\nimport Close16 from '@carbon/web-components/es/icons/close/16.js';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport styles from './pricing-table.scss';\nimport DDSPricingTableRow from './pricing-table-row';\n\nconst { stablePrefix: ddsPrefix } = ddsSettings;\n\n@customElement(`${ddsPrefix}-pricing-table-annotation-toggle`)\nclass DDSPricingTableAnnotationToggle extends StableSelectorMixin(LitElement) {\n @property({ reflect: true })\n slot = 'toggle';\n\n @property()\n toggled: boolean = false;\n\n @property()\n parentRow: DDSPricingTableRow | null = null;\n\n private _handleClick = () => {\n const newVal = !this.toggled;\n this.toggled = newVal;\n this.dispatchEvent(\n new CustomEvent('event-toggle-annotations', {\n bubbles: true,\n cancelable: true,\n composed: true,\n detail: {\n emitter: this.parentRow,\n value: newVal,\n },\n })\n );\n };\n\n connectedCallback(): void {\n this.parentRow = this.closest(`${ddsPrefix}-pricing-table-row`);\n super.connectedCallback();\n }\n\n render() {\n const { toggled } = this;\n return html`\n <button\n @click=\"${this._handleClick}\"\n type=\"button\"\n aria-pressed=\"${toggled}\"\n aria-label=\"cell annotations visibility\"\n >\n ${toggled ? Close16() : ChevronDown16()}\n </button>\n `;\n }\n\n static get stableSelector() {\n return `${ddsPrefix}--pricing-table-annotation-toggle`;\n }\n\n static styles = styles;\n}\n\nexport default DDSPricingTableAnnotationToggle;\n"]}
|
|
@@ -14,8 +14,8 @@ let _ = t => t,
|
|
|
14
14
|
|
|
15
15
|
import { customElement, html, LitElement, property } from 'lit-element';
|
|
16
16
|
import ddsSettings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';
|
|
17
|
-
import ChevronDown16 from '@carbon/
|
|
18
|
-
import Close16 from '@carbon/
|
|
17
|
+
import ChevronDown16 from '@carbon/web-components/es/icons/chevron--down/16.js';
|
|
18
|
+
import Close16 from '@carbon/web-components/es/icons/close/16.js';
|
|
19
19
|
import StableSelectorMixin from "../../globals/mixins/stable-selector.js";
|
|
20
20
|
import styles from "././pricing-table.css.js";
|
|
21
21
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pricing-table-annotation-toggle.js","names":["customElement","html","LitElement","property","ddsSettings","ChevronDown16","Close16","StableSelectorMixin","styles","stablePrefix","ddsPrefix","DDSPricingTableAnnotationToggle","reflect","newVal","toggled","dispatchEvent","CustomEvent","bubbles","cancelable","composed","detail","emitter","parentRow","value","closest","_handleClick"],"sources":["components/pricing-table/pricing-table-annotation-toggle.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { customElement, html, LitElement, property } from 'lit-element';\nimport ddsSettings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport ChevronDown16 from '@carbon/
|
|
1
|
+
{"version":3,"file":"pricing-table-annotation-toggle.js","names":["customElement","html","LitElement","property","ddsSettings","ChevronDown16","Close16","StableSelectorMixin","styles","stablePrefix","ddsPrefix","DDSPricingTableAnnotationToggle","reflect","newVal","toggled","dispatchEvent","CustomEvent","bubbles","cancelable","composed","detail","emitter","parentRow","value","closest","_handleClick"],"sources":["components/pricing-table/pricing-table-annotation-toggle.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { customElement, html, LitElement, property } from 'lit-element';\nimport ddsSettings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport ChevronDown16 from '@carbon/web-components/es/icons/chevron--down/16.js';\nimport Close16 from '@carbon/web-components/es/icons/close/16.js';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport styles from './pricing-table.scss';\nimport DDSPricingTableRow from './pricing-table-row';\n\nconst { stablePrefix: ddsPrefix } = ddsSettings;\n\n@customElement(`${ddsPrefix}-pricing-table-annotation-toggle`)\nclass DDSPricingTableAnnotationToggle extends StableSelectorMixin(LitElement) {\n @property({ reflect: true })\n slot = 'toggle';\n\n @property()\n toggled: boolean = false;\n\n @property()\n parentRow: DDSPricingTableRow | null = null;\n\n private _handleClick = () => {\n const newVal = !this.toggled;\n this.toggled = newVal;\n this.dispatchEvent(\n new CustomEvent('event-toggle-annotations', {\n bubbles: true,\n cancelable: true,\n composed: true,\n detail: {\n emitter: this.parentRow,\n value: newVal,\n },\n })\n );\n };\n\n connectedCallback(): void {\n this.parentRow = this.closest(`${ddsPrefix}-pricing-table-row`);\n super.connectedCallback();\n }\n\n render() {\n const { toggled } = this;\n return html`\n <button\n @click=\"${this._handleClick}\"\n type=\"button\"\n aria-pressed=\"${toggled}\"\n aria-label=\"cell annotations visibility\"\n >\n ${toggled ? Close16() : ChevronDown16()}\n </button>\n `;\n }\n\n static get stableSelector() {\n return `${ddsPrefix}--pricing-table-annotation-toggle`;\n }\n\n static styles = styles;\n}\n\nexport default DDSPricingTableAnnotationToggle;\n"],"mappings":";;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,aAAa,EAAEC,IAAI,EAAEC,UAAU,EAAEC,QAAQ,QAAQ,aAAa;AACvE,OAAOC,WAAW,MAAM,+DAA+D;AACvF,OAAOC,aAAa,MAAM,qDAAqD;AAC/E,OAAOC,OAAO,MAAM,6CAA6C;AACjE,OAAOC,mBAAmB,MAAM,yCAAsC;AACtE,OAAOC,MAAM,MAAM,0BAAsB;AAGzC,MAAM;EAAEC,YAAY,EAAEC;AAAU,CAAC,GAAGN,WAAW;AAAC,IAG1CO,+BAA+B,cADpCX,aAAa,CAAE,GAAEU,SAAU,kCAAiC,CAAC;EAA9D,MACMC,+BAA+B,8BAAyC;IAAA;MAAA;MAAA;IAAA;EAkD9E;EAAC;IAAA,GAlDKA,+BAA+B;IAAA;MAAA;MAAA,aAClCR,QAAQ,CAAC;QAAES,OAAO,EAAE;MAAK,CAAC,CAAC;MAAA;MAAA;QAAA,OACrB,QAAQ;MAAA;IAAA;MAAA;MAAA,aAEdT,QAAQ,EAAE;MAAA;MAAA;QAAA,OACQ,KAAK;MAAA;IAAA;MAAA;MAAA,aAEvBA,QAAQ,EAAE;MAAA;MAAA;QAAA,OAC4B,IAAI;MAAA;IAAA;MAAA;MAAA;MAAA;QAAA,OAEpB,MAAM;UAC3B,MAAMU,MAAM,GAAG,CAAC,IAAI,CAACC,OAAO;UAC5B,IAAI,CAACA,OAAO,GAAGD,MAAM;UACrB,IAAI,CAACE,aAAa,CAChB,IAAIC,WAAW,CAAC,0BAA0B,EAAE;YAC1CC,OAAO,EAAE,IAAI;YACbC,UAAU,EAAE,IAAI;YAChBC,QAAQ,EAAE,IAAI;YACdC,MAAM,EAAE;cACNC,OAAO,EAAE,IAAI,CAACC,SAAS;cACvBC,KAAK,EAAEV;YACT;UACF,CAAC,CAAC,CACH;QACH,CAAC;MAAA;IAAA;MAAA;MAAA;MAAA,OAED,6BAA0B;QACxB,IAAI,CAACS,SAAS,GAAG,IAAI,CAACE,OAAO,CAAE,GAAEd,SAAU,oBAAmB,CAAC;QAC/D,qBA5BEC,+BAA+B;MA6BnC;IAAC;MAAA;MAAA;MAAA,OAED,kBAAS;QACP,MAAM;UAAEG;QAAQ,CAAC,GAAG,IAAI;QACxB,OAAOb,IAAI,cAAC;AAChB;AACA,kBAAgB,CAAoB;AACpC;AACA,wBAAsB,CAAU;AAChC;AACA;AACA,UAAQ,CAAwC;AAChD;AACA,KAAI,GAPc,IAAI,CAACwB,YAAY,EAEXX,OAAO,EAGrBA,OAAO,GAAGR,OAAO,EAAE,GAAGD,aAAa,EAAE;MAG7C;IAAC;MAAA;MAAA;MAAA;MAAA,OAED,0BAA4B;QAC1B,OAAQ,GAAEK,SAAU,mCAAkC;MACxD;IAAC;MAAA;MAAA;MAAA;MAAA;QAAA,OAEeF,MAAM;MAAA;IAAA;EAAA;AAAA,GAjDsBD,mBAAmB,CAACL,UAAU,CAAC;AAoD7E,eAAeS,+BAA+B"}
|
|
@@ -325,7 +325,7 @@ declare const DDSPricingTableCell_base: {
|
|
|
325
325
|
stableSelector: string;
|
|
326
326
|
} & {
|
|
327
327
|
new (...args: any[]): {
|
|
328
|
-
_handles: Set<import("@carbon/
|
|
328
|
+
_handles: Set<import("@carbon/web-components/es/globals/internal/handle").default>;
|
|
329
329
|
connectedCallback(): void;
|
|
330
330
|
disconnectedCallback(): void;
|
|
331
331
|
accessKey: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["components/pricing-table/pricing-table-cell.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH,OAAO,qBAAqB,MAAM,yCAAyC,CAAC;AAC5E,OAAO,oBAAoB,MAAM,uBAAuB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOzD,cACM,mBAAoB,SAAQ,wBAEjC;IACC,YAAY,EAAE,oBAAoB,GAAG,IAAI,CAEvC;IAGF,SAAS,CAAC,uBAAuB;;eAI/B;IAEF,iBAAiB,IAAI,IAAI;IAMzB,SAAS,CAAC,YAAY,IAAI,IAAI;IA0B9B,MAAM;IAYN,MAAM,KAAK,cAAc,WAExB;IAED,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,mBAAmB,CAAC","file":"pricing-table-cell.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { customElement, html } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport ddsSettings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport HostListenerMixin from '@carbon/
|
|
1
|
+
{"version":3,"sources":["components/pricing-table/pricing-table-cell.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH,OAAO,qBAAqB,MAAM,yCAAyC,CAAC;AAC5E,OAAO,oBAAoB,MAAM,uBAAuB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOzD,cACM,mBAAoB,SAAQ,wBAEjC;IACC,YAAY,EAAE,oBAAoB,GAAG,IAAI,CAEvC;IAGF,SAAS,CAAC,uBAAuB;;eAI/B;IAEF,iBAAiB,IAAI,IAAI;IAMzB,SAAS,CAAC,YAAY,IAAI,IAAI;IA0B9B,MAAM;IAYN,MAAM,KAAK,cAAc,WAExB;IAED,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,mBAAmB,CAAC","file":"pricing-table-cell.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { customElement, html } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport ddsSettings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport HostListenerMixin from '@carbon/web-components/es/globals/mixins/host-listener.js';\nimport HostListener from '@carbon/web-components/es/globals/decorators/host-listener.js';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport DDSStructuredListCell from '../structured-list/structured-list-cell';\nimport DDSPricingTableGroup from './pricing-table-group';\nimport styles from './pricing-table.scss';\nimport DDSPricingTableCellAnnotation from './pricing-table-cell-annotation';\n\nconst { prefix } = settings;\nconst { stablePrefix: ddsPrefix } = ddsSettings;\n\n@customElement(`${ddsPrefix}-pricing-table-cell`)\nclass DDSPricingTableCell extends StableSelectorMixin(\n HostListenerMixin(DDSStructuredListCell)\n) {\n _parentGroup: DDSPricingTableGroup | null = this.closest(\n `${ddsPrefix}-pricing-table-group`\n );\n\n @HostListener('document:event-toggle-annotations')\n protected _handleAnnotationToggle = ({ detail }) => {\n if (detail.emitter === this.parentNode) {\n this.classList.toggle('annotation-visible');\n }\n };\n\n connectedCallback(): void {\n // Disable inherited tags functionality\n this.removeAttribute('tags');\n super.connectedCallback();\n }\n\n protected firstUpdated(): void {\n const slots = this.shadowRoot?.querySelectorAll('slot');\n\n // Get default slot\n let defaultSlot;\n slots?.forEach((slot) => {\n if (!slot.hasAttribute('name')) {\n defaultSlot = slot;\n }\n });\n\n // Filter out annotations, which should be in the \"annotation\" slot but\n // sometimes appear as inside the default slot. Also filter out empty\n // text nodes.\n const slotContents = (defaultSlot?.assignedNodes() || []).filter((node) => {\n const isAnnotation = node instanceof DDSPricingTableCellAnnotation;\n const isEmpty = node.textContent?.trim() === '';\n\n return !isAnnotation && !isEmpty;\n });\n\n if (slotContents.length === 0) {\n this.classList.toggle('no-cell-content');\n }\n }\n\n render() {\n return html`\n <div class=\"${prefix}--pricing-table-cell-inner\">\n <div class=\"${prefix}--pricing-table-cell-content\">\n ${super.render()}\n </div>\n <slot name=\"toggle\"></slot>\n </div>\n <slot name=\"annotation\"></slot>\n `;\n }\n\n static get stableSelector() {\n return `${ddsPrefix}--pricing-table-cell`;\n }\n\n static styles = styles;\n}\n\nexport default DDSPricingTableCell;\n"]}
|
|
@@ -15,8 +15,8 @@ let _ = t => t,
|
|
|
15
15
|
import { customElement, html } from 'lit-element';
|
|
16
16
|
import settings from 'carbon-components/es/globals/js/settings.js';
|
|
17
17
|
import ddsSettings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';
|
|
18
|
-
import HostListenerMixin from '@carbon/
|
|
19
|
-
import HostListener from '@carbon/
|
|
18
|
+
import HostListenerMixin from '@carbon/web-components/es/globals/mixins/host-listener.js';
|
|
19
|
+
import HostListener from '@carbon/web-components/es/globals/decorators/host-listener.js';
|
|
20
20
|
import StableSelectorMixin from "../../globals/mixins/stable-selector.js";
|
|
21
21
|
import DDSStructuredListCell from "../structured-list/structured-list-cell.js";
|
|
22
22
|
import styles from "././pricing-table.css.js";
|