@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,"file":"pricing-table-cell.js","names":["customElement","html","settings","ddsSettings","HostListenerMixin","HostListener","StableSelectorMixin","DDSStructuredListCell","styles","DDSPricingTableCellAnnotation","prefix","stablePrefix","ddsPrefix","DDSPricingTableCell","closest","detail","emitter","parentNode","classList","toggle","removeAttribute","slots","shadowRoot","querySelectorAll","defaultSlot","forEach","slot","hasAttribute","slotContents","assignedNodes","filter","node","isAnnotation","isEmpty","textContent","trim","length"],"sources":["components/pricing-table/pricing-table-cell.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,"file":"pricing-table-cell.js","names":["customElement","html","settings","ddsSettings","HostListenerMixin","HostListener","StableSelectorMixin","DDSStructuredListCell","styles","DDSPricingTableCellAnnotation","prefix","stablePrefix","ddsPrefix","DDSPricingTableCell","closest","detail","emitter","parentNode","classList","toggle","removeAttribute","slots","shadowRoot","querySelectorAll","defaultSlot","forEach","slot","hasAttribute","slotContents","assignedNodes","filter","node","isAnnotation","isEmpty","textContent","trim","length"],"sources":["components/pricing-table/pricing-table-cell.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"],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ import DDSPricingTableHead from './pricing-table-head';
|
|
|
13
13
|
import DDSPricingTableHeaderRow from './pricing-table-header-row';
|
|
14
14
|
declare const DDSPricingTable_base: {
|
|
15
15
|
new (...args: any[]): {
|
|
16
|
-
_handles: Set<import("@carbon/
|
|
16
|
+
_handles: Set<import("@carbon/web-components/es/globals/internal/handle").default>;
|
|
17
17
|
connectedCallback(): void;
|
|
18
18
|
disconnectedCallback(): void;
|
|
19
19
|
accessKey: string;
|
|
@@ -63,9 +63,7 @@ declare const DDSPricingTable_base: {
|
|
|
63
63
|
readonly shadowRoot: ShadowRoot | null;
|
|
64
64
|
slot: string;
|
|
65
65
|
readonly tagName: string;
|
|
66
|
-
attachShadow(init: ShadowRootInit): ShadowRoot;
|
|
67
|
-
* Observer that watches this element for resizes.
|
|
68
|
-
*/
|
|
66
|
+
attachShadow(init: ShadowRootInit): ShadowRoot;
|
|
69
67
|
closest<K_2 extends keyof HTMLElementTagNameMap>(selector: K_2): HTMLElementTagNameMap[K_2] | null;
|
|
70
68
|
closest<K_3 extends keyof SVGElementTagNameMap>(selector: K_3): SVGElementTagNameMap[K_3] | null;
|
|
71
69
|
closest<E extends Element = Element>(selectors: string): E | null;
|
|
@@ -174,7 +172,9 @@ declare const DDSPricingTable_base: {
|
|
|
174
172
|
ariaLabel: string | null;
|
|
175
173
|
ariaLevel: string | null;
|
|
176
174
|
ariaLive: string | null;
|
|
177
|
-
ariaModal: string | null;
|
|
175
|
+
ariaModal: string | null; /**
|
|
176
|
+
* Safely disconnects and removes the intersection observer.
|
|
177
|
+
*/
|
|
178
178
|
ariaMultiLine: string | null;
|
|
179
179
|
ariaMultiSelectable: string | null;
|
|
180
180
|
ariaOrientation: string | null;
|
|
@@ -227,9 +227,6 @@ declare const DDSPricingTable_base: {
|
|
|
227
227
|
readonly isContentEditable: boolean;
|
|
228
228
|
onabort: ((this: GlobalEventHandlers, ev: UIEvent) => any) | null;
|
|
229
229
|
onanimationcancel: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;
|
|
230
|
-
/**
|
|
231
|
-
* Collect and store references to current header elements.
|
|
232
|
-
*/
|
|
233
230
|
onanimationend: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;
|
|
234
231
|
onanimationiteration: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;
|
|
235
232
|
onanimationstart: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["components/pricing-table/pricing-table.ts"],"names":[],"mappings":"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","file":"pricing-table.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, property, query, html } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport HostListenerMixin from '@carbon/carbon-web-components/es/globals/mixins/host-listener.js';\nimport HostListener from '@carbon/carbon-web-components/es/globals/decorators/host-listener.js';\nimport ddsSettings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport { slow01 } from '@carbon/motion/es/index';\nimport StickyHeader from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/StickyHeader/StickyHeader';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport DDSStructuredList from '../structured-list/structured-list';\nimport styles from './pricing-table.scss';\nimport DDSPricingTableHeaderCell from './pricing-table-header-cell';\nimport DDSPricingTableHighlightLabel from './pricing-table-highlight-label';\nimport DDSPricingTableHead from './pricing-table-head';\nimport DDSPricingTableHeaderRow from './pricing-table-header-row';\nimport { PRICING_TABLE_HEADER_CELL_TYPES } from './defs';\nimport { slideHidden, slideUnhidden, convertStyleToObject } from './utils';\n\nconst { prefix } = settings;\nconst { stablePrefix: ddsPrefix } = ddsSettings;\nconst animationTiming = Number(slow01.substring(0, slow01.indexOf('ms')));\n\n@customElement(`${ddsPrefix}-pricing-table`)\nclass DDSPricingTable extends HostListenerMixin(\n StableSelectorMixin(DDSStructuredList)\n) {\n @property({ reflect: true, attribute: 'highlight-column' })\n highlightColumn?: number;\n\n @property({ reflect: true, attribute: 'highlight-label' })\n highlightLabel?: string;\n\n @property()\n highlightClass = 'highlighted';\n\n @property()\n highlightGap: number = 0;\n\n /**\n * This table's DDSPricingTableHead node.\n */\n public head?: DDSPricingTableHead;\n\n /**\n * This table's DDSPricingTableHeaderRow node.\n */\n public headerRow?: DDSPricingTableHeaderRow;\n\n /**\n * This table's DDSPricingTableHeaderCell nodes.\n */\n public headerCells?: DDSPricingTableHeaderCell[];\n\n /**\n * Tracks whether the row is set to sticky.\n */\n public isSticky: boolean = false;\n\n /**\n * The width of the pricing table.\n */\n private _elementWidth?: number;\n\n /**\n * Node to track focus going outside of modal content.\n */\n @query('#start-sentinel')\n private _startSentinelNode!: HTMLSpanElement;\n\n /**\n * Node to track focus going outside of modal content.\n */\n @query('#end-sentinel')\n private _endSentinelNode!: HTMLSpanElement;\n\n /**\n * Buffer space used to prevent animation jitters.\n */\n private _startSentinelBuffer = -12;\n\n /**\n * Observer that watches document root for style attribute changes.\n */\n private _mutationObserverHeaderHeight: MutationObserver | null = null;\n\n /**\n * Observer that watches this element for resizes.\n */\n // TODO: Wait for `.d.ts` update to support `ResizeObserver`\n // @ts-ignore\n private _resizeObserver: ResizeObserver | null = null;\n\n /**\n * Observer that watches intersection of window and start of pricing table.\n */\n private _intersectionObserverStart: IntersectionObserver | null = null;\n\n /**\n * Observer that watches intersection of window and end of pricing table.\n */\n private _intersectionObserverEnd: IntersectionObserver | null = null;\n\n /**\n * The height of the header row.\n */\n private _getHeaderHeight(): number {\n return this.headerRow?.getBoundingClientRect().height || 0;\n }\n\n /**\n * The height of the last row in the table body.\n */\n private _getLastRowHeight(): number {\n const rows = this.querySelectorAll(`${ddsPrefix}-pricing-table-row`);\n return rows[rows.length - 1].getBoundingClientRect().height || 0;\n }\n\n /**\n * Creates a mutation observer that watches the root element for style\n * attribute changes and resets the table's intersection observers.\n */\n private _createMutationObserver() {\n const { customPropertyName } = StickyHeader;\n this._mutationObserverHeaderHeight = new MutationObserver((entries) => {\n entries.forEach((entry) => {\n const currentValue = getComputedStyle(\n entry.target as HTMLElement\n ).getPropertyValue(customPropertyName);\n\n // If previously there was no `style` and now we have a valid custom prop value...\n if (entry.oldValue === null && currentValue) {\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n // Else if the old value did include a valid custom prop value and we have a valid current value...\n else if (\n entry.oldValue !== null &&\n entry.oldValue.indexOf(customPropertyName) !== -1 &&\n currentValue\n ) {\n const styleObj = convertStyleToObject(entry.oldValue);\n const oldValue = styleObj[customPropertyName] || null;\n\n if (currentValue !== oldValue) {\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n }\n });\n });\n\n this._mutationObserverHeaderHeight.observe(\n StickyHeader.global.ownerDocument.querySelector('html'),\n {\n attributes: true,\n attributeOldValue: true,\n attributeFilter: ['style'],\n }\n );\n }\n\n /**\n * Safely disconnects and removes the mutation observer.\n */\n private _cleanMutationObserver() {\n if (this._mutationObserverHeaderHeight instanceof MutationObserver) {\n this._mutationObserverHeaderHeight.disconnect();\n }\n this._mutationObserverHeaderHeight = null;\n }\n\n /**\n * Takes actions whenever the pricing table is resized.\n */\n private _createResizeObserver() {\n // TODO: Wait for `.d.ts` update to support `ResizeObserver`\n // @ts-ignore\n this._resizeObserver = new ResizeObserver((entries) => {\n entries.forEach((entry) => {\n // Only reset intersection observers when element width changes.\n if (this._elementWidth !== entry.contentRect.width) {\n this._elementWidth = entry.contentRect.width;\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n });\n });\n this._resizeObserver.observe(this);\n }\n\n /**\n * Safely disconnects and removes the resize observer.\n */\n private _cleanResizeObserver() {\n // TODO: Wait for `.d.ts` update to support `ResizeObserver`\n // @ts-ignore\n if (this._resizeObserver instanceof ResizeObserver) {\n this._resizeObserver.disconnect();\n }\n this._resizeObserver = null;\n }\n\n /**\n * Takes actions whenever the pricing table enters the viewport.\n */\n private _createIntersectionObservers() {\n const { _startSentinelNode, _endSentinelNode } = this;\n const stuckElementsHeight = StickyHeader.global.height || 0;\n const endObserverMargin =\n stuckElementsHeight + this._getLastRowHeight() + 1;\n\n if (this.shadowRoot) {\n this._intersectionObserverStart = new IntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n const { isIntersecting, boundingClientRect } = entry;\n\n const bottomOfHeaderIsWithinViewport = () => {\n const headerBottomPosition =\n (\n this.headerRow as DDSPricingTableHeaderRow\n ).getBoundingClientRect().bottom + window.scrollY;\n const windowBottomPosition = window.innerHeight + window.scrollY;\n\n return headerBottomPosition < windowBottomPosition;\n };\n\n if (\n !isIntersecting &&\n boundingClientRect.top <= stuckElementsHeight &&\n !this.isSticky &&\n bottomOfHeaderIsWithinViewport()\n ) {\n this._setSticky(true);\n } else if (isIntersecting && this.isSticky) {\n this._setSticky(false);\n }\n });\n },\n {\n rootMargin: `${stuckElementsHeight * -1}px 0px 0px 0px`,\n threshold: 0,\n }\n );\n\n this._intersectionObserverEnd = new IntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n const { isIntersecting, boundingClientRect } = entry;\n\n if (\n !isIntersecting &&\n boundingClientRect.top < endObserverMargin &&\n this.headerRow\n ) {\n this.headerRow.style.top = `-${this._getHeaderHeight()}px`;\n }\n\n if (\n isIntersecting &&\n boundingClientRect.top >= -1 &&\n this.headerRow\n ) {\n this.headerRow.style.top = '';\n }\n });\n },\n {\n rootMargin: `-${endObserverMargin}px 0px 0px 0px`,\n threshold: 0,\n }\n );\n\n this._intersectionObserverStart.observe(_startSentinelNode);\n this._intersectionObserverEnd.observe(_endSentinelNode);\n }\n }\n\n /**\n * Safely disconnects and removes the intersection observer.\n */\n private _cleanIntersectionObservers() {\n if (this._intersectionObserverStart instanceof IntersectionObserver) {\n this._intersectionObserverStart.disconnect();\n }\n this._intersectionObserverStart = null;\n\n if (this._intersectionObserverEnd instanceof IntersectionObserver) {\n this._intersectionObserverEnd.disconnect();\n }\n this._intersectionObserverEnd = null;\n }\n\n /**\n * Returns true if a cell's contents are valid to animate when transitioning * between sticky states and false otherwise.\n */\n // eslint-disable-next-line class-methods-use-this\n private _validateCell(cell: HTMLElement): boolean {\n return (\n cell instanceof DDSPricingTableHeaderCell &&\n cell.getAttribute('type') !== PRICING_TABLE_HEADER_CELL_TYPES.SIMPLE &&\n cell.shadowRoot !== null\n );\n }\n\n /**\n * Animates specific cell elements when transitioning between sticky states.\n */\n private _animateCellElements(cell: HTMLElement) {\n const { isSticky } = this;\n const selectors = [\n `.${prefix}--pricing-table-header-cell-tag-wrapper`,\n `.${prefix}--pricing-table-cell-inner`,\n ];\n\n if (this._validateCell(cell)) {\n selectors.forEach((selector) => {\n const element = (cell.shadowRoot as ShadowRoot).querySelector(selector);\n if (element instanceof HTMLElement) {\n if (isSticky) {\n slideHidden(element);\n } else {\n slideUnhidden(element);\n }\n }\n });\n }\n }\n\n /**\n * Animates header cells when transitioning between sticky states.\n */\n private _animateCells() {\n const { headerCells, isSticky } = this;\n const { cellStickyClass } = this.constructor as typeof DDSPricingTable;\n headerCells?.forEach((cell) => {\n if (isSticky) {\n cell.classList.add(cellStickyClass);\n } else {\n cell.classList.remove(cellStickyClass);\n }\n this._animateCellElements(cell);\n });\n }\n\n /**\n * Animates the header row when transitioning between sticky states.\n */\n private _animateHeaderRow() {\n const { headerRow, isSticky } = this;\n const { rowStickyClass } = this.constructor as typeof DDSPricingTable;\n if (headerRow) {\n if (isSticky) {\n headerRow.classList.add(rowStickyClass);\n } else {\n headerRow.classList.remove(rowStickyClass);\n }\n }\n }\n\n /**\n * Set or unset sticky state of pricing table header row.\n */\n private _setSticky(sticky: boolean = !this.isSticky) {\n this.isSticky = sticky;\n if (sticky) {\n this._startSentinelNode.style.top = `${this._startSentinelBuffer}px`;\n this._animateCells();\n setTimeout(() => {\n this._animateHeaderRow();\n }, animationTiming);\n } else {\n this._startSentinelNode.style.top = '';\n this._animateCells();\n this._animateHeaderRow();\n }\n }\n\n /**\n * Collect and store references to current header elements.\n */\n protected _getHeaderElements() {\n this.head = undefined;\n this.headerRow = undefined;\n this.headerCells = undefined;\n\n const head = this.querySelector(`${ddsPrefix}-pricing-table-head`);\n if (head instanceof DDSPricingTableHead) {\n this.head = head;\n }\n\n const headerRow = head?.querySelector(\n `${ddsPrefix}-pricing-table-header-row`\n );\n if (headerRow instanceof DDSPricingTableHeaderRow) {\n this.headerRow = headerRow;\n this.headerCells = Array.from(\n headerRow.children\n ) as DDSPricingTableHeaderCell[];\n }\n }\n\n protected _renderHighlightLabel(): DDSPricingTableHighlightLabel {\n const { highlightLabel } = this;\n const element = this.ownerDocument.createElement(\n `${ddsPrefix}-pricing-table-highlight-label`\n ) as DDSPricingTableHighlightLabel;\n element.innerText = highlightLabel || '';\n return element;\n }\n\n protected _unhighlightCells(cells: NodeListOf<Element>): void {\n const { highlightClass } = this;\n cells.forEach((cell) => {\n cell.classList.remove(highlightClass);\n cell\n .querySelector(`${ddsPrefix}-pricing-table-highlight-label`)\n ?.remove();\n this.style.marginTop = '';\n });\n }\n\n protected _highlightCells(cells: NodeListOf<Element>): void {\n const { highlightLabel, highlightClass } = this;\n cells.forEach((cell) => cell.classList.add(highlightClass));\n if (highlightLabel) {\n const firstCell = cells[0];\n if (firstCell instanceof DDSPricingTableHeaderCell) {\n firstCell.prepend(this._renderHighlightLabel());\n }\n this._setHighlightGap();\n }\n }\n\n protected _setHighlightGap(): void {\n const wrapper =\n this.shadowRoot?.getElementById(DDSStructuredList.wrapperId) || this;\n (async () => {\n return this.querySelector(`${ddsPrefix}-pricing-table-highlight-label`);\n })()\n .then((value) => {\n this.highlightGap = value?.getBoundingClientRect().height || 0;\n wrapper.style.marginTop = `${this.highlightGap}px`;\n })\n .catch(() => {\n wrapper.style.marginTop = '';\n });\n }\n\n /**\n * Host listener for updating header element references when cells are\n * updated.\n *\n * @protected\n */\n @HostListener('document:eventHeaderRowSlotchange')\n protected _handleHeaderRowSlotChange = () => {\n this._getHeaderElements();\n };\n\n updated(): void {\n const { highlightColumn } = this;\n\n this._getHeaderElements();\n\n if (highlightColumn) {\n this._unhighlightCells(\n this.querySelectorAll(`\n ${ddsPrefix}-pricing-table-cell,\n ${ddsPrefix}-pricing-table-header-cell`)\n );\n this._highlightCells(\n this.querySelectorAll(`\n ${ddsPrefix}-pricing-table-cell:nth-child(${highlightColumn}),\n ${ddsPrefix}-pricing-table-header-cell:nth-child(${highlightColumn})\n `)\n );\n }\n\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n\n connectedCallback() {\n this._createMutationObserver();\n this._createResizeObserver();\n super.connectedCallback();\n }\n\n disconnectedCallback() {\n this._cleanIntersectionObservers();\n this._cleanMutationObserver();\n this._cleanResizeObserver();\n super.disconnectedCallback();\n }\n\n render() {\n const sentinelClass = `${ddsPrefix}-pricing-table-sentinel`;\n\n return html`\n <section id=\"section\" class=\"${`${prefix}--structured-list`}\">\n <span class=\"${sentinelClass}\" id=\"start-sentinel\"></span>\n <slot></slot>\n <span class=\"${sentinelClass}\" id=\"end-sentinel\"></span>\n </section>\n `;\n }\n\n static get stableSelector() {\n return `${ddsPrefix}--pricing-table`;\n }\n\n static get rowStickyClass() {\n return `${prefix}--pricing-table-header-row--sticky`;\n }\n\n static get cellStickyClass() {\n return `${prefix}--pricing-table-header-cell--sticky`;\n }\n\n /**\n * The name of the custom event captured when the header row's slot changes.\n */\n static get eventHeaderRowSlotchange() {\n return DDSPricingTableHeaderRow.eventSlotChange;\n }\n\n static styles = styles;\n}\n\nexport default DDSPricingTable;\n"]}
|
|
1
|
+
{"version":3,"sources":["components/pricing-table/pricing-table.ts"],"names":[],"mappings":"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","file":"pricing-table.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, property, query, html } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/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 ddsSettings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport { slow01 } from '@carbon/motion/es/index';\nimport StickyHeader from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/StickyHeader/StickyHeader';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport DDSStructuredList from '../structured-list/structured-list';\nimport styles from './pricing-table.scss';\nimport DDSPricingTableHeaderCell from './pricing-table-header-cell';\nimport DDSPricingTableHighlightLabel from './pricing-table-highlight-label';\nimport DDSPricingTableHead from './pricing-table-head';\nimport DDSPricingTableHeaderRow from './pricing-table-header-row';\nimport { PRICING_TABLE_HEADER_CELL_TYPES } from './defs';\nimport { slideHidden, slideUnhidden, convertStyleToObject } from './utils';\n\nconst { prefix } = settings;\nconst { stablePrefix: ddsPrefix } = ddsSettings;\nconst animationTiming = Number(slow01.substring(0, slow01.indexOf('ms')));\n\n@customElement(`${ddsPrefix}-pricing-table`)\nclass DDSPricingTable extends HostListenerMixin(\n StableSelectorMixin(DDSStructuredList)\n) {\n @property({ reflect: true, attribute: 'highlight-column' })\n highlightColumn?: number;\n\n @property({ reflect: true, attribute: 'highlight-label' })\n highlightLabel?: string;\n\n @property()\n highlightClass = 'highlighted';\n\n @property()\n highlightGap: number = 0;\n\n /**\n * This table's DDSPricingTableHead node.\n */\n public head?: DDSPricingTableHead;\n\n /**\n * This table's DDSPricingTableHeaderRow node.\n */\n public headerRow?: DDSPricingTableHeaderRow;\n\n /**\n * This table's DDSPricingTableHeaderCell nodes.\n */\n public headerCells?: DDSPricingTableHeaderCell[];\n\n /**\n * Tracks whether the row is set to sticky.\n */\n public isSticky: boolean = false;\n\n /**\n * The width of the pricing table.\n */\n private _elementWidth?: number;\n\n /**\n * Node to track focus going outside of modal content.\n */\n @query('#start-sentinel')\n private _startSentinelNode!: HTMLSpanElement;\n\n /**\n * Node to track focus going outside of modal content.\n */\n @query('#end-sentinel')\n private _endSentinelNode!: HTMLSpanElement;\n\n /**\n * Buffer space used to prevent animation jitters.\n */\n private _startSentinelBuffer = -12;\n\n /**\n * Observer that watches document root for style attribute changes.\n */\n private _mutationObserverHeaderHeight: MutationObserver | null = null;\n\n /**\n * Observer that watches this element for resizes.\n */\n // TODO: Wait for `.d.ts` update to support `ResizeObserver`\n // @ts-ignore\n private _resizeObserver: ResizeObserver | null = null;\n\n /**\n * Observer that watches intersection of window and start of pricing table.\n */\n private _intersectionObserverStart: IntersectionObserver | null = null;\n\n /**\n * Observer that watches intersection of window and end of pricing table.\n */\n private _intersectionObserverEnd: IntersectionObserver | null = null;\n\n /**\n * The height of the header row.\n */\n private _getHeaderHeight(): number {\n return this.headerRow?.getBoundingClientRect().height || 0;\n }\n\n /**\n * The height of the last row in the table body.\n */\n private _getLastRowHeight(): number {\n const rows = this.querySelectorAll(`${ddsPrefix}-pricing-table-row`);\n return rows[rows.length - 1].getBoundingClientRect().height || 0;\n }\n\n /**\n * Creates a mutation observer that watches the root element for style\n * attribute changes and resets the table's intersection observers.\n */\n private _createMutationObserver() {\n const { customPropertyName } = StickyHeader;\n this._mutationObserverHeaderHeight = new MutationObserver((entries) => {\n entries.forEach((entry) => {\n const currentValue = getComputedStyle(\n entry.target as HTMLElement\n ).getPropertyValue(customPropertyName);\n\n // If previously there was no `style` and now we have a valid custom prop value...\n if (entry.oldValue === null && currentValue) {\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n // Else if the old value did include a valid custom prop value and we have a valid current value...\n else if (\n entry.oldValue !== null &&\n entry.oldValue.indexOf(customPropertyName) !== -1 &&\n currentValue\n ) {\n const styleObj = convertStyleToObject(entry.oldValue);\n const oldValue = styleObj[customPropertyName] || null;\n\n if (currentValue !== oldValue) {\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n }\n });\n });\n\n this._mutationObserverHeaderHeight.observe(\n StickyHeader.global.ownerDocument.querySelector('html'),\n {\n attributes: true,\n attributeOldValue: true,\n attributeFilter: ['style'],\n }\n );\n }\n\n /**\n * Safely disconnects and removes the mutation observer.\n */\n private _cleanMutationObserver() {\n if (this._mutationObserverHeaderHeight instanceof MutationObserver) {\n this._mutationObserverHeaderHeight.disconnect();\n }\n this._mutationObserverHeaderHeight = null;\n }\n\n /**\n * Takes actions whenever the pricing table is resized.\n */\n private _createResizeObserver() {\n // TODO: Wait for `.d.ts` update to support `ResizeObserver`\n // @ts-ignore\n this._resizeObserver = new ResizeObserver((entries) => {\n entries.forEach((entry) => {\n // Only reset intersection observers when element width changes.\n if (this._elementWidth !== entry.contentRect.width) {\n this._elementWidth = entry.contentRect.width;\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n });\n });\n this._resizeObserver.observe(this);\n }\n\n /**\n * Safely disconnects and removes the resize observer.\n */\n private _cleanResizeObserver() {\n // TODO: Wait for `.d.ts` update to support `ResizeObserver`\n // @ts-ignore\n if (this._resizeObserver instanceof ResizeObserver) {\n this._resizeObserver.disconnect();\n }\n this._resizeObserver = null;\n }\n\n /**\n * Takes actions whenever the pricing table enters the viewport.\n */\n private _createIntersectionObservers() {\n const { _startSentinelNode, _endSentinelNode } = this;\n const stuckElementsHeight = StickyHeader.global.height || 0;\n const endObserverMargin =\n stuckElementsHeight + this._getLastRowHeight() + 1;\n\n if (this.shadowRoot) {\n this._intersectionObserverStart = new IntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n const { isIntersecting, boundingClientRect } = entry;\n\n const bottomOfHeaderIsWithinViewport = () => {\n const headerBottomPosition =\n (\n this.headerRow as DDSPricingTableHeaderRow\n ).getBoundingClientRect().bottom + window.scrollY;\n const windowBottomPosition = window.innerHeight + window.scrollY;\n\n return headerBottomPosition < windowBottomPosition;\n };\n\n if (\n !isIntersecting &&\n boundingClientRect.top <= stuckElementsHeight &&\n !this.isSticky &&\n bottomOfHeaderIsWithinViewport()\n ) {\n this._setSticky(true);\n } else if (isIntersecting && this.isSticky) {\n this._setSticky(false);\n }\n });\n },\n {\n rootMargin: `${stuckElementsHeight * -1}px 0px 0px 0px`,\n threshold: 0,\n }\n );\n\n this._intersectionObserverEnd = new IntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n const { isIntersecting, boundingClientRect } = entry;\n\n if (\n !isIntersecting &&\n boundingClientRect.top < endObserverMargin &&\n this.headerRow\n ) {\n this.headerRow.style.top = `-${this._getHeaderHeight()}px`;\n }\n\n if (\n isIntersecting &&\n boundingClientRect.top >= -1 &&\n this.headerRow\n ) {\n this.headerRow.style.top = '';\n }\n });\n },\n {\n rootMargin: `-${endObserverMargin}px 0px 0px 0px`,\n threshold: 0,\n }\n );\n\n this._intersectionObserverStart.observe(_startSentinelNode);\n this._intersectionObserverEnd.observe(_endSentinelNode);\n }\n }\n\n /**\n * Safely disconnects and removes the intersection observer.\n */\n private _cleanIntersectionObservers() {\n if (this._intersectionObserverStart instanceof IntersectionObserver) {\n this._intersectionObserverStart.disconnect();\n }\n this._intersectionObserverStart = null;\n\n if (this._intersectionObserverEnd instanceof IntersectionObserver) {\n this._intersectionObserverEnd.disconnect();\n }\n this._intersectionObserverEnd = null;\n }\n\n /**\n * Returns true if a cell's contents are valid to animate when transitioning * between sticky states and false otherwise.\n */\n // eslint-disable-next-line class-methods-use-this\n private _validateCell(cell: HTMLElement): boolean {\n return (\n cell instanceof DDSPricingTableHeaderCell &&\n cell.getAttribute('type') !== PRICING_TABLE_HEADER_CELL_TYPES.SIMPLE &&\n cell.shadowRoot !== null\n );\n }\n\n /**\n * Animates specific cell elements when transitioning between sticky states.\n */\n private _animateCellElements(cell: HTMLElement) {\n const { isSticky } = this;\n const selectors = [\n `.${prefix}--pricing-table-header-cell-tag-wrapper`,\n `.${prefix}--pricing-table-cell-inner`,\n ];\n\n if (this._validateCell(cell)) {\n selectors.forEach((selector) => {\n const element = (cell.shadowRoot as ShadowRoot).querySelector(selector);\n if (element instanceof HTMLElement) {\n if (isSticky) {\n slideHidden(element);\n } else {\n slideUnhidden(element);\n }\n }\n });\n }\n }\n\n /**\n * Animates header cells when transitioning between sticky states.\n */\n private _animateCells() {\n const { headerCells, isSticky } = this;\n const { cellStickyClass } = this.constructor as typeof DDSPricingTable;\n headerCells?.forEach((cell) => {\n if (isSticky) {\n cell.classList.add(cellStickyClass);\n } else {\n cell.classList.remove(cellStickyClass);\n }\n this._animateCellElements(cell);\n });\n }\n\n /**\n * Animates the header row when transitioning between sticky states.\n */\n private _animateHeaderRow() {\n const { headerRow, isSticky } = this;\n const { rowStickyClass } = this.constructor as typeof DDSPricingTable;\n if (headerRow) {\n if (isSticky) {\n headerRow.classList.add(rowStickyClass);\n } else {\n headerRow.classList.remove(rowStickyClass);\n }\n }\n }\n\n /**\n * Set or unset sticky state of pricing table header row.\n */\n private _setSticky(sticky: boolean = !this.isSticky) {\n this.isSticky = sticky;\n if (sticky) {\n this._startSentinelNode.style.top = `${this._startSentinelBuffer}px`;\n this._animateCells();\n setTimeout(() => {\n this._animateHeaderRow();\n }, animationTiming);\n } else {\n this._startSentinelNode.style.top = '';\n this._animateCells();\n this._animateHeaderRow();\n }\n }\n\n /**\n * Collect and store references to current header elements.\n */\n protected _getHeaderElements() {\n this.head = undefined;\n this.headerRow = undefined;\n this.headerCells = undefined;\n\n const head = this.querySelector(`${ddsPrefix}-pricing-table-head`);\n if (head instanceof DDSPricingTableHead) {\n this.head = head;\n }\n\n const headerRow = head?.querySelector(\n `${ddsPrefix}-pricing-table-header-row`\n );\n if (headerRow instanceof DDSPricingTableHeaderRow) {\n this.headerRow = headerRow;\n this.headerCells = Array.from(\n headerRow.children\n ) as DDSPricingTableHeaderCell[];\n }\n }\n\n protected _renderHighlightLabel(): DDSPricingTableHighlightLabel {\n const { highlightLabel } = this;\n const element = this.ownerDocument.createElement(\n `${ddsPrefix}-pricing-table-highlight-label`\n ) as DDSPricingTableHighlightLabel;\n element.innerText = highlightLabel || '';\n return element;\n }\n\n protected _unhighlightCells(cells: NodeListOf<Element>): void {\n const { highlightClass } = this;\n cells.forEach((cell) => {\n cell.classList.remove(highlightClass);\n cell\n .querySelector(`${ddsPrefix}-pricing-table-highlight-label`)\n ?.remove();\n this.style.marginTop = '';\n });\n }\n\n protected _highlightCells(cells: NodeListOf<Element>): void {\n const { highlightLabel, highlightClass } = this;\n cells.forEach((cell) => cell.classList.add(highlightClass));\n if (highlightLabel) {\n const firstCell = cells[0];\n if (firstCell instanceof DDSPricingTableHeaderCell) {\n firstCell.prepend(this._renderHighlightLabel());\n }\n this._setHighlightGap();\n }\n }\n\n protected _setHighlightGap(): void {\n const wrapper =\n this.shadowRoot?.getElementById(DDSStructuredList.wrapperId) || this;\n (async () => {\n return this.querySelector(`${ddsPrefix}-pricing-table-highlight-label`);\n })()\n .then((value) => {\n this.highlightGap = value?.getBoundingClientRect().height || 0;\n wrapper.style.marginTop = `${this.highlightGap}px`;\n })\n .catch(() => {\n wrapper.style.marginTop = '';\n });\n }\n\n /**\n * Host listener for updating header element references when cells are\n * updated.\n *\n * @protected\n */\n @HostListener('document:eventHeaderRowSlotchange')\n protected _handleHeaderRowSlotChange = () => {\n this._getHeaderElements();\n };\n\n updated(): void {\n const { highlightColumn } = this;\n\n this._getHeaderElements();\n\n if (highlightColumn) {\n this._unhighlightCells(\n this.querySelectorAll(`\n ${ddsPrefix}-pricing-table-cell,\n ${ddsPrefix}-pricing-table-header-cell`)\n );\n this._highlightCells(\n this.querySelectorAll(`\n ${ddsPrefix}-pricing-table-cell:nth-child(${highlightColumn}),\n ${ddsPrefix}-pricing-table-header-cell:nth-child(${highlightColumn})\n `)\n );\n }\n\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n\n connectedCallback() {\n this._createMutationObserver();\n this._createResizeObserver();\n super.connectedCallback();\n }\n\n disconnectedCallback() {\n this._cleanIntersectionObservers();\n this._cleanMutationObserver();\n this._cleanResizeObserver();\n super.disconnectedCallback();\n }\n\n render() {\n const sentinelClass = `${ddsPrefix}-pricing-table-sentinel`;\n\n return html`\n <section id=\"section\" class=\"${`${prefix}--structured-list`}\">\n <span class=\"${sentinelClass}\" id=\"start-sentinel\"></span>\n <slot></slot>\n <span class=\"${sentinelClass}\" id=\"end-sentinel\"></span>\n </section>\n `;\n }\n\n static get stableSelector() {\n return `${ddsPrefix}--pricing-table`;\n }\n\n static get rowStickyClass() {\n return `${prefix}--pricing-table-header-row--sticky`;\n }\n\n static get cellStickyClass() {\n return `${prefix}--pricing-table-header-cell--sticky`;\n }\n\n /**\n * The name of the custom event captured when the header row's slot changes.\n */\n static get eventHeaderRowSlotchange() {\n return DDSPricingTableHeaderRow.eventSlotChange;\n }\n\n static styles = styles;\n}\n\nexport default DDSPricingTable;\n"]}
|
|
@@ -14,8 +14,8 @@ let _ = t => t,
|
|
|
14
14
|
|
|
15
15
|
import { customElement, property, query, html } from 'lit-element';
|
|
16
16
|
import settings from 'carbon-components/es/globals/js/settings.js';
|
|
17
|
-
import HostListenerMixin from '@carbon/
|
|
18
|
-
import HostListener from '@carbon/
|
|
17
|
+
import HostListenerMixin from '@carbon/web-components/es/globals/mixins/host-listener.js';
|
|
18
|
+
import HostListener from '@carbon/web-components/es/globals/decorators/host-listener.js';
|
|
19
19
|
import ddsSettings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';
|
|
20
20
|
import { slow01 } from '@carbon/motion/es/index';
|
|
21
21
|
import StickyHeader from "../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/StickyHeader/StickyHeader.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pricing-table.js","names":["customElement","property","query","html","settings","HostListenerMixin","HostListener","ddsSettings","slow01","StickyHeader","StableSelectorMixin","DDSStructuredList","styles","DDSPricingTableHeaderCell","DDSPricingTableHead","DDSPricingTableHeaderRow","PRICING_TABLE_HEADER_CELL_TYPES","slideHidden","slideUnhidden","convertStyleToObject","prefix","stablePrefix","ddsPrefix","animationTiming","Number","substring","indexOf","DDSPricingTable","reflect","attribute","headerRow","getBoundingClientRect","height","rows","querySelectorAll","length","customPropertyName","_mutationObserverHeaderHeight","MutationObserver","entries","forEach","entry","currentValue","getComputedStyle","target","getPropertyValue","oldValue","_cleanIntersectionObservers","_createIntersectionObservers","styleObj","observe","global","ownerDocument","querySelector","attributes","attributeOldValue","attributeFilter","disconnect","_resizeObserver","ResizeObserver","_elementWidth","contentRect","width","_startSentinelNode","_endSentinelNode","stuckElementsHeight","endObserverMargin","_getLastRowHeight","shadowRoot","_intersectionObserverStart","IntersectionObserver","isIntersecting","boundingClientRect","bottomOfHeaderIsWithinViewport","headerBottomPosition","bottom","window","scrollY","windowBottomPosition","innerHeight","top","isSticky","_setSticky","rootMargin","threshold","_intersectionObserverEnd","style","_getHeaderHeight","cell","getAttribute","SIMPLE","selectors","_validateCell","selector","element","HTMLElement","headerCells","cellStickyClass","constructor","classList","add","remove","_animateCellElements","rowStickyClass","sticky","_startSentinelBuffer","_animateCells","setTimeout","_animateHeaderRow","head","undefined","Array","from","children","highlightLabel","createElement","innerText","cells","highlightClass","marginTop","firstCell","prepend","_renderHighlightLabel","_setHighlightGap","wrapper","getElementById","wrapperId","then","value","highlightGap","catch","_getHeaderElements","highlightColumn","_unhighlightCells","_highlightCells","_createMutationObserver","_createResizeObserver","_cleanMutationObserver","_cleanResizeObserver","sentinelClass","eventSlotChange"],"sources":["components/pricing-table/pricing-table.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, property, query, html } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport HostListenerMixin from '@carbon/carbon-web-components/es/globals/mixins/host-listener.js';\nimport HostListener from '@carbon/carbon-web-components/es/globals/decorators/host-listener.js';\nimport ddsSettings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport { slow01 } from '@carbon/motion/es/index';\nimport StickyHeader from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/StickyHeader/StickyHeader';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport DDSStructuredList from '../structured-list/structured-list';\nimport styles from './pricing-table.scss';\nimport DDSPricingTableHeaderCell from './pricing-table-header-cell';\nimport DDSPricingTableHighlightLabel from './pricing-table-highlight-label';\nimport DDSPricingTableHead from './pricing-table-head';\nimport DDSPricingTableHeaderRow from './pricing-table-header-row';\nimport { PRICING_TABLE_HEADER_CELL_TYPES } from './defs';\nimport { slideHidden, slideUnhidden, convertStyleToObject } from './utils';\n\nconst { prefix } = settings;\nconst { stablePrefix: ddsPrefix } = ddsSettings;\nconst animationTiming = Number(slow01.substring(0, slow01.indexOf('ms')));\n\n@customElement(`${ddsPrefix}-pricing-table`)\nclass DDSPricingTable extends HostListenerMixin(\n StableSelectorMixin(DDSStructuredList)\n) {\n @property({ reflect: true, attribute: 'highlight-column' })\n highlightColumn?: number;\n\n @property({ reflect: true, attribute: 'highlight-label' })\n highlightLabel?: string;\n\n @property()\n highlightClass = 'highlighted';\n\n @property()\n highlightGap: number = 0;\n\n /**\n * This table's DDSPricingTableHead node.\n */\n public head?: DDSPricingTableHead;\n\n /**\n * This table's DDSPricingTableHeaderRow node.\n */\n public headerRow?: DDSPricingTableHeaderRow;\n\n /**\n * This table's DDSPricingTableHeaderCell nodes.\n */\n public headerCells?: DDSPricingTableHeaderCell[];\n\n /**\n * Tracks whether the row is set to sticky.\n */\n public isSticky: boolean = false;\n\n /**\n * The width of the pricing table.\n */\n private _elementWidth?: number;\n\n /**\n * Node to track focus going outside of modal content.\n */\n @query('#start-sentinel')\n private _startSentinelNode!: HTMLSpanElement;\n\n /**\n * Node to track focus going outside of modal content.\n */\n @query('#end-sentinel')\n private _endSentinelNode!: HTMLSpanElement;\n\n /**\n * Buffer space used to prevent animation jitters.\n */\n private _startSentinelBuffer = -12;\n\n /**\n * Observer that watches document root for style attribute changes.\n */\n private _mutationObserverHeaderHeight: MutationObserver | null = null;\n\n /**\n * Observer that watches this element for resizes.\n */\n // TODO: Wait for `.d.ts` update to support `ResizeObserver`\n // @ts-ignore\n private _resizeObserver: ResizeObserver | null = null;\n\n /**\n * Observer that watches intersection of window and start of pricing table.\n */\n private _intersectionObserverStart: IntersectionObserver | null = null;\n\n /**\n * Observer that watches intersection of window and end of pricing table.\n */\n private _intersectionObserverEnd: IntersectionObserver | null = null;\n\n /**\n * The height of the header row.\n */\n private _getHeaderHeight(): number {\n return this.headerRow?.getBoundingClientRect().height || 0;\n }\n\n /**\n * The height of the last row in the table body.\n */\n private _getLastRowHeight(): number {\n const rows = this.querySelectorAll(`${ddsPrefix}-pricing-table-row`);\n return rows[rows.length - 1].getBoundingClientRect().height || 0;\n }\n\n /**\n * Creates a mutation observer that watches the root element for style\n * attribute changes and resets the table's intersection observers.\n */\n private _createMutationObserver() {\n const { customPropertyName } = StickyHeader;\n this._mutationObserverHeaderHeight = new MutationObserver((entries) => {\n entries.forEach((entry) => {\n const currentValue = getComputedStyle(\n entry.target as HTMLElement\n ).getPropertyValue(customPropertyName);\n\n // If previously there was no `style` and now we have a valid custom prop value...\n if (entry.oldValue === null && currentValue) {\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n // Else if the old value did include a valid custom prop value and we have a valid current value...\n else if (\n entry.oldValue !== null &&\n entry.oldValue.indexOf(customPropertyName) !== -1 &&\n currentValue\n ) {\n const styleObj = convertStyleToObject(entry.oldValue);\n const oldValue = styleObj[customPropertyName] || null;\n\n if (currentValue !== oldValue) {\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n }\n });\n });\n\n this._mutationObserverHeaderHeight.observe(\n StickyHeader.global.ownerDocument.querySelector('html'),\n {\n attributes: true,\n attributeOldValue: true,\n attributeFilter: ['style'],\n }\n );\n }\n\n /**\n * Safely disconnects and removes the mutation observer.\n */\n private _cleanMutationObserver() {\n if (this._mutationObserverHeaderHeight instanceof MutationObserver) {\n this._mutationObserverHeaderHeight.disconnect();\n }\n this._mutationObserverHeaderHeight = null;\n }\n\n /**\n * Takes actions whenever the pricing table is resized.\n */\n private _createResizeObserver() {\n // TODO: Wait for `.d.ts` update to support `ResizeObserver`\n // @ts-ignore\n this._resizeObserver = new ResizeObserver((entries) => {\n entries.forEach((entry) => {\n // Only reset intersection observers when element width changes.\n if (this._elementWidth !== entry.contentRect.width) {\n this._elementWidth = entry.contentRect.width;\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n });\n });\n this._resizeObserver.observe(this);\n }\n\n /**\n * Safely disconnects and removes the resize observer.\n */\n private _cleanResizeObserver() {\n // TODO: Wait for `.d.ts` update to support `ResizeObserver`\n // @ts-ignore\n if (this._resizeObserver instanceof ResizeObserver) {\n this._resizeObserver.disconnect();\n }\n this._resizeObserver = null;\n }\n\n /**\n * Takes actions whenever the pricing table enters the viewport.\n */\n private _createIntersectionObservers() {\n const { _startSentinelNode, _endSentinelNode } = this;\n const stuckElementsHeight = StickyHeader.global.height || 0;\n const endObserverMargin =\n stuckElementsHeight + this._getLastRowHeight() + 1;\n\n if (this.shadowRoot) {\n this._intersectionObserverStart = new IntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n const { isIntersecting, boundingClientRect } = entry;\n\n const bottomOfHeaderIsWithinViewport = () => {\n const headerBottomPosition =\n (\n this.headerRow as DDSPricingTableHeaderRow\n ).getBoundingClientRect().bottom + window.scrollY;\n const windowBottomPosition = window.innerHeight + window.scrollY;\n\n return headerBottomPosition < windowBottomPosition;\n };\n\n if (\n !isIntersecting &&\n boundingClientRect.top <= stuckElementsHeight &&\n !this.isSticky &&\n bottomOfHeaderIsWithinViewport()\n ) {\n this._setSticky(true);\n } else if (isIntersecting && this.isSticky) {\n this._setSticky(false);\n }\n });\n },\n {\n rootMargin: `${stuckElementsHeight * -1}px 0px 0px 0px`,\n threshold: 0,\n }\n );\n\n this._intersectionObserverEnd = new IntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n const { isIntersecting, boundingClientRect } = entry;\n\n if (\n !isIntersecting &&\n boundingClientRect.top < endObserverMargin &&\n this.headerRow\n ) {\n this.headerRow.style.top = `-${this._getHeaderHeight()}px`;\n }\n\n if (\n isIntersecting &&\n boundingClientRect.top >= -1 &&\n this.headerRow\n ) {\n this.headerRow.style.top = '';\n }\n });\n },\n {\n rootMargin: `-${endObserverMargin}px 0px 0px 0px`,\n threshold: 0,\n }\n );\n\n this._intersectionObserverStart.observe(_startSentinelNode);\n this._intersectionObserverEnd.observe(_endSentinelNode);\n }\n }\n\n /**\n * Safely disconnects and removes the intersection observer.\n */\n private _cleanIntersectionObservers() {\n if (this._intersectionObserverStart instanceof IntersectionObserver) {\n this._intersectionObserverStart.disconnect();\n }\n this._intersectionObserverStart = null;\n\n if (this._intersectionObserverEnd instanceof IntersectionObserver) {\n this._intersectionObserverEnd.disconnect();\n }\n this._intersectionObserverEnd = null;\n }\n\n /**\n * Returns true if a cell's contents are valid to animate when transitioning * between sticky states and false otherwise.\n */\n // eslint-disable-next-line class-methods-use-this\n private _validateCell(cell: HTMLElement): boolean {\n return (\n cell instanceof DDSPricingTableHeaderCell &&\n cell.getAttribute('type') !== PRICING_TABLE_HEADER_CELL_TYPES.SIMPLE &&\n cell.shadowRoot !== null\n );\n }\n\n /**\n * Animates specific cell elements when transitioning between sticky states.\n */\n private _animateCellElements(cell: HTMLElement) {\n const { isSticky } = this;\n const selectors = [\n `.${prefix}--pricing-table-header-cell-tag-wrapper`,\n `.${prefix}--pricing-table-cell-inner`,\n ];\n\n if (this._validateCell(cell)) {\n selectors.forEach((selector) => {\n const element = (cell.shadowRoot as ShadowRoot).querySelector(selector);\n if (element instanceof HTMLElement) {\n if (isSticky) {\n slideHidden(element);\n } else {\n slideUnhidden(element);\n }\n }\n });\n }\n }\n\n /**\n * Animates header cells when transitioning between sticky states.\n */\n private _animateCells() {\n const { headerCells, isSticky } = this;\n const { cellStickyClass } = this.constructor as typeof DDSPricingTable;\n headerCells?.forEach((cell) => {\n if (isSticky) {\n cell.classList.add(cellStickyClass);\n } else {\n cell.classList.remove(cellStickyClass);\n }\n this._animateCellElements(cell);\n });\n }\n\n /**\n * Animates the header row when transitioning between sticky states.\n */\n private _animateHeaderRow() {\n const { headerRow, isSticky } = this;\n const { rowStickyClass } = this.constructor as typeof DDSPricingTable;\n if (headerRow) {\n if (isSticky) {\n headerRow.classList.add(rowStickyClass);\n } else {\n headerRow.classList.remove(rowStickyClass);\n }\n }\n }\n\n /**\n * Set or unset sticky state of pricing table header row.\n */\n private _setSticky(sticky: boolean = !this.isSticky) {\n this.isSticky = sticky;\n if (sticky) {\n this._startSentinelNode.style.top = `${this._startSentinelBuffer}px`;\n this._animateCells();\n setTimeout(() => {\n this._animateHeaderRow();\n }, animationTiming);\n } else {\n this._startSentinelNode.style.top = '';\n this._animateCells();\n this._animateHeaderRow();\n }\n }\n\n /**\n * Collect and store references to current header elements.\n */\n protected _getHeaderElements() {\n this.head = undefined;\n this.headerRow = undefined;\n this.headerCells = undefined;\n\n const head = this.querySelector(`${ddsPrefix}-pricing-table-head`);\n if (head instanceof DDSPricingTableHead) {\n this.head = head;\n }\n\n const headerRow = head?.querySelector(\n `${ddsPrefix}-pricing-table-header-row`\n );\n if (headerRow instanceof DDSPricingTableHeaderRow) {\n this.headerRow = headerRow;\n this.headerCells = Array.from(\n headerRow.children\n ) as DDSPricingTableHeaderCell[];\n }\n }\n\n protected _renderHighlightLabel(): DDSPricingTableHighlightLabel {\n const { highlightLabel } = this;\n const element = this.ownerDocument.createElement(\n `${ddsPrefix}-pricing-table-highlight-label`\n ) as DDSPricingTableHighlightLabel;\n element.innerText = highlightLabel || '';\n return element;\n }\n\n protected _unhighlightCells(cells: NodeListOf<Element>): void {\n const { highlightClass } = this;\n cells.forEach((cell) => {\n cell.classList.remove(highlightClass);\n cell\n .querySelector(`${ddsPrefix}-pricing-table-highlight-label`)\n ?.remove();\n this.style.marginTop = '';\n });\n }\n\n protected _highlightCells(cells: NodeListOf<Element>): void {\n const { highlightLabel, highlightClass } = this;\n cells.forEach((cell) => cell.classList.add(highlightClass));\n if (highlightLabel) {\n const firstCell = cells[0];\n if (firstCell instanceof DDSPricingTableHeaderCell) {\n firstCell.prepend(this._renderHighlightLabel());\n }\n this._setHighlightGap();\n }\n }\n\n protected _setHighlightGap(): void {\n const wrapper =\n this.shadowRoot?.getElementById(DDSStructuredList.wrapperId) || this;\n (async () => {\n return this.querySelector(`${ddsPrefix}-pricing-table-highlight-label`);\n })()\n .then((value) => {\n this.highlightGap = value?.getBoundingClientRect().height || 0;\n wrapper.style.marginTop = `${this.highlightGap}px`;\n })\n .catch(() => {\n wrapper.style.marginTop = '';\n });\n }\n\n /**\n * Host listener for updating header element references when cells are\n * updated.\n *\n * @protected\n */\n @HostListener('document:eventHeaderRowSlotchange')\n protected _handleHeaderRowSlotChange = () => {\n this._getHeaderElements();\n };\n\n updated(): void {\n const { highlightColumn } = this;\n\n this._getHeaderElements();\n\n if (highlightColumn) {\n this._unhighlightCells(\n this.querySelectorAll(`\n ${ddsPrefix}-pricing-table-cell,\n ${ddsPrefix}-pricing-table-header-cell`)\n );\n this._highlightCells(\n this.querySelectorAll(`\n ${ddsPrefix}-pricing-table-cell:nth-child(${highlightColumn}),\n ${ddsPrefix}-pricing-table-header-cell:nth-child(${highlightColumn})\n `)\n );\n }\n\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n\n connectedCallback() {\n this._createMutationObserver();\n this._createResizeObserver();\n super.connectedCallback();\n }\n\n disconnectedCallback() {\n this._cleanIntersectionObservers();\n this._cleanMutationObserver();\n this._cleanResizeObserver();\n super.disconnectedCallback();\n }\n\n render() {\n const sentinelClass = `${ddsPrefix}-pricing-table-sentinel`;\n\n return html`\n <section id=\"section\" class=\"${`${prefix}--structured-list`}\">\n <span class=\"${sentinelClass}\" id=\"start-sentinel\"></span>\n <slot></slot>\n <span class=\"${sentinelClass}\" id=\"end-sentinel\"></span>\n </section>\n `;\n }\n\n static get stableSelector() {\n return `${ddsPrefix}--pricing-table`;\n }\n\n static get rowStickyClass() {\n return `${prefix}--pricing-table-header-row--sticky`;\n }\n\n static get cellStickyClass() {\n return `${prefix}--pricing-table-header-cell--sticky`;\n }\n\n /**\n * The name of the custom event captured when the header row's slot changes.\n */\n static get eventHeaderRowSlotchange() {\n return DDSPricingTableHeaderRow.eventSlotChange;\n }\n\n static styles = styles;\n}\n\nexport default DDSPricingTable;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pricing-table.js","names":["customElement","property","query","html","settings","HostListenerMixin","HostListener","ddsSettings","slow01","StickyHeader","StableSelectorMixin","DDSStructuredList","styles","DDSPricingTableHeaderCell","DDSPricingTableHead","DDSPricingTableHeaderRow","PRICING_TABLE_HEADER_CELL_TYPES","slideHidden","slideUnhidden","convertStyleToObject","prefix","stablePrefix","ddsPrefix","animationTiming","Number","substring","indexOf","DDSPricingTable","reflect","attribute","headerRow","getBoundingClientRect","height","rows","querySelectorAll","length","customPropertyName","_mutationObserverHeaderHeight","MutationObserver","entries","forEach","entry","currentValue","getComputedStyle","target","getPropertyValue","oldValue","_cleanIntersectionObservers","_createIntersectionObservers","styleObj","observe","global","ownerDocument","querySelector","attributes","attributeOldValue","attributeFilter","disconnect","_resizeObserver","ResizeObserver","_elementWidth","contentRect","width","_startSentinelNode","_endSentinelNode","stuckElementsHeight","endObserverMargin","_getLastRowHeight","shadowRoot","_intersectionObserverStart","IntersectionObserver","isIntersecting","boundingClientRect","bottomOfHeaderIsWithinViewport","headerBottomPosition","bottom","window","scrollY","windowBottomPosition","innerHeight","top","isSticky","_setSticky","rootMargin","threshold","_intersectionObserverEnd","style","_getHeaderHeight","cell","getAttribute","SIMPLE","selectors","_validateCell","selector","element","HTMLElement","headerCells","cellStickyClass","constructor","classList","add","remove","_animateCellElements","rowStickyClass","sticky","_startSentinelBuffer","_animateCells","setTimeout","_animateHeaderRow","head","undefined","Array","from","children","highlightLabel","createElement","innerText","cells","highlightClass","marginTop","firstCell","prepend","_renderHighlightLabel","_setHighlightGap","wrapper","getElementById","wrapperId","then","value","highlightGap","catch","_getHeaderElements","highlightColumn","_unhighlightCells","_highlightCells","_createMutationObserver","_createResizeObserver","_cleanMutationObserver","_cleanResizeObserver","sentinelClass","eventSlotChange"],"sources":["components/pricing-table/pricing-table.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, property, query, html } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/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 ddsSettings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport { slow01 } from '@carbon/motion/es/index';\nimport StickyHeader from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/StickyHeader/StickyHeader';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport DDSStructuredList from '../structured-list/structured-list';\nimport styles from './pricing-table.scss';\nimport DDSPricingTableHeaderCell from './pricing-table-header-cell';\nimport DDSPricingTableHighlightLabel from './pricing-table-highlight-label';\nimport DDSPricingTableHead from './pricing-table-head';\nimport DDSPricingTableHeaderRow from './pricing-table-header-row';\nimport { PRICING_TABLE_HEADER_CELL_TYPES } from './defs';\nimport { slideHidden, slideUnhidden, convertStyleToObject } from './utils';\n\nconst { prefix } = settings;\nconst { stablePrefix: ddsPrefix } = ddsSettings;\nconst animationTiming = Number(slow01.substring(0, slow01.indexOf('ms')));\n\n@customElement(`${ddsPrefix}-pricing-table`)\nclass DDSPricingTable extends HostListenerMixin(\n StableSelectorMixin(DDSStructuredList)\n) {\n @property({ reflect: true, attribute: 'highlight-column' })\n highlightColumn?: number;\n\n @property({ reflect: true, attribute: 'highlight-label' })\n highlightLabel?: string;\n\n @property()\n highlightClass = 'highlighted';\n\n @property()\n highlightGap: number = 0;\n\n /**\n * This table's DDSPricingTableHead node.\n */\n public head?: DDSPricingTableHead;\n\n /**\n * This table's DDSPricingTableHeaderRow node.\n */\n public headerRow?: DDSPricingTableHeaderRow;\n\n /**\n * This table's DDSPricingTableHeaderCell nodes.\n */\n public headerCells?: DDSPricingTableHeaderCell[];\n\n /**\n * Tracks whether the row is set to sticky.\n */\n public isSticky: boolean = false;\n\n /**\n * The width of the pricing table.\n */\n private _elementWidth?: number;\n\n /**\n * Node to track focus going outside of modal content.\n */\n @query('#start-sentinel')\n private _startSentinelNode!: HTMLSpanElement;\n\n /**\n * Node to track focus going outside of modal content.\n */\n @query('#end-sentinel')\n private _endSentinelNode!: HTMLSpanElement;\n\n /**\n * Buffer space used to prevent animation jitters.\n */\n private _startSentinelBuffer = -12;\n\n /**\n * Observer that watches document root for style attribute changes.\n */\n private _mutationObserverHeaderHeight: MutationObserver | null = null;\n\n /**\n * Observer that watches this element for resizes.\n */\n // TODO: Wait for `.d.ts` update to support `ResizeObserver`\n // @ts-ignore\n private _resizeObserver: ResizeObserver | null = null;\n\n /**\n * Observer that watches intersection of window and start of pricing table.\n */\n private _intersectionObserverStart: IntersectionObserver | null = null;\n\n /**\n * Observer that watches intersection of window and end of pricing table.\n */\n private _intersectionObserverEnd: IntersectionObserver | null = null;\n\n /**\n * The height of the header row.\n */\n private _getHeaderHeight(): number {\n return this.headerRow?.getBoundingClientRect().height || 0;\n }\n\n /**\n * The height of the last row in the table body.\n */\n private _getLastRowHeight(): number {\n const rows = this.querySelectorAll(`${ddsPrefix}-pricing-table-row`);\n return rows[rows.length - 1].getBoundingClientRect().height || 0;\n }\n\n /**\n * Creates a mutation observer that watches the root element for style\n * attribute changes and resets the table's intersection observers.\n */\n private _createMutationObserver() {\n const { customPropertyName } = StickyHeader;\n this._mutationObserverHeaderHeight = new MutationObserver((entries) => {\n entries.forEach((entry) => {\n const currentValue = getComputedStyle(\n entry.target as HTMLElement\n ).getPropertyValue(customPropertyName);\n\n // If previously there was no `style` and now we have a valid custom prop value...\n if (entry.oldValue === null && currentValue) {\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n // Else if the old value did include a valid custom prop value and we have a valid current value...\n else if (\n entry.oldValue !== null &&\n entry.oldValue.indexOf(customPropertyName) !== -1 &&\n currentValue\n ) {\n const styleObj = convertStyleToObject(entry.oldValue);\n const oldValue = styleObj[customPropertyName] || null;\n\n if (currentValue !== oldValue) {\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n }\n });\n });\n\n this._mutationObserverHeaderHeight.observe(\n StickyHeader.global.ownerDocument.querySelector('html'),\n {\n attributes: true,\n attributeOldValue: true,\n attributeFilter: ['style'],\n }\n );\n }\n\n /**\n * Safely disconnects and removes the mutation observer.\n */\n private _cleanMutationObserver() {\n if (this._mutationObserverHeaderHeight instanceof MutationObserver) {\n this._mutationObserverHeaderHeight.disconnect();\n }\n this._mutationObserverHeaderHeight = null;\n }\n\n /**\n * Takes actions whenever the pricing table is resized.\n */\n private _createResizeObserver() {\n // TODO: Wait for `.d.ts` update to support `ResizeObserver`\n // @ts-ignore\n this._resizeObserver = new ResizeObserver((entries) => {\n entries.forEach((entry) => {\n // Only reset intersection observers when element width changes.\n if (this._elementWidth !== entry.contentRect.width) {\n this._elementWidth = entry.contentRect.width;\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n });\n });\n this._resizeObserver.observe(this);\n }\n\n /**\n * Safely disconnects and removes the resize observer.\n */\n private _cleanResizeObserver() {\n // TODO: Wait for `.d.ts` update to support `ResizeObserver`\n // @ts-ignore\n if (this._resizeObserver instanceof ResizeObserver) {\n this._resizeObserver.disconnect();\n }\n this._resizeObserver = null;\n }\n\n /**\n * Takes actions whenever the pricing table enters the viewport.\n */\n private _createIntersectionObservers() {\n const { _startSentinelNode, _endSentinelNode } = this;\n const stuckElementsHeight = StickyHeader.global.height || 0;\n const endObserverMargin =\n stuckElementsHeight + this._getLastRowHeight() + 1;\n\n if (this.shadowRoot) {\n this._intersectionObserverStart = new IntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n const { isIntersecting, boundingClientRect } = entry;\n\n const bottomOfHeaderIsWithinViewport = () => {\n const headerBottomPosition =\n (\n this.headerRow as DDSPricingTableHeaderRow\n ).getBoundingClientRect().bottom + window.scrollY;\n const windowBottomPosition = window.innerHeight + window.scrollY;\n\n return headerBottomPosition < windowBottomPosition;\n };\n\n if (\n !isIntersecting &&\n boundingClientRect.top <= stuckElementsHeight &&\n !this.isSticky &&\n bottomOfHeaderIsWithinViewport()\n ) {\n this._setSticky(true);\n } else if (isIntersecting && this.isSticky) {\n this._setSticky(false);\n }\n });\n },\n {\n rootMargin: `${stuckElementsHeight * -1}px 0px 0px 0px`,\n threshold: 0,\n }\n );\n\n this._intersectionObserverEnd = new IntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n const { isIntersecting, boundingClientRect } = entry;\n\n if (\n !isIntersecting &&\n boundingClientRect.top < endObserverMargin &&\n this.headerRow\n ) {\n this.headerRow.style.top = `-${this._getHeaderHeight()}px`;\n }\n\n if (\n isIntersecting &&\n boundingClientRect.top >= -1 &&\n this.headerRow\n ) {\n this.headerRow.style.top = '';\n }\n });\n },\n {\n rootMargin: `-${endObserverMargin}px 0px 0px 0px`,\n threshold: 0,\n }\n );\n\n this._intersectionObserverStart.observe(_startSentinelNode);\n this._intersectionObserverEnd.observe(_endSentinelNode);\n }\n }\n\n /**\n * Safely disconnects and removes the intersection observer.\n */\n private _cleanIntersectionObservers() {\n if (this._intersectionObserverStart instanceof IntersectionObserver) {\n this._intersectionObserverStart.disconnect();\n }\n this._intersectionObserverStart = null;\n\n if (this._intersectionObserverEnd instanceof IntersectionObserver) {\n this._intersectionObserverEnd.disconnect();\n }\n this._intersectionObserverEnd = null;\n }\n\n /**\n * Returns true if a cell's contents are valid to animate when transitioning * between sticky states and false otherwise.\n */\n // eslint-disable-next-line class-methods-use-this\n private _validateCell(cell: HTMLElement): boolean {\n return (\n cell instanceof DDSPricingTableHeaderCell &&\n cell.getAttribute('type') !== PRICING_TABLE_HEADER_CELL_TYPES.SIMPLE &&\n cell.shadowRoot !== null\n );\n }\n\n /**\n * Animates specific cell elements when transitioning between sticky states.\n */\n private _animateCellElements(cell: HTMLElement) {\n const { isSticky } = this;\n const selectors = [\n `.${prefix}--pricing-table-header-cell-tag-wrapper`,\n `.${prefix}--pricing-table-cell-inner`,\n ];\n\n if (this._validateCell(cell)) {\n selectors.forEach((selector) => {\n const element = (cell.shadowRoot as ShadowRoot).querySelector(selector);\n if (element instanceof HTMLElement) {\n if (isSticky) {\n slideHidden(element);\n } else {\n slideUnhidden(element);\n }\n }\n });\n }\n }\n\n /**\n * Animates header cells when transitioning between sticky states.\n */\n private _animateCells() {\n const { headerCells, isSticky } = this;\n const { cellStickyClass } = this.constructor as typeof DDSPricingTable;\n headerCells?.forEach((cell) => {\n if (isSticky) {\n cell.classList.add(cellStickyClass);\n } else {\n cell.classList.remove(cellStickyClass);\n }\n this._animateCellElements(cell);\n });\n }\n\n /**\n * Animates the header row when transitioning between sticky states.\n */\n private _animateHeaderRow() {\n const { headerRow, isSticky } = this;\n const { rowStickyClass } = this.constructor as typeof DDSPricingTable;\n if (headerRow) {\n if (isSticky) {\n headerRow.classList.add(rowStickyClass);\n } else {\n headerRow.classList.remove(rowStickyClass);\n }\n }\n }\n\n /**\n * Set or unset sticky state of pricing table header row.\n */\n private _setSticky(sticky: boolean = !this.isSticky) {\n this.isSticky = sticky;\n if (sticky) {\n this._startSentinelNode.style.top = `${this._startSentinelBuffer}px`;\n this._animateCells();\n setTimeout(() => {\n this._animateHeaderRow();\n }, animationTiming);\n } else {\n this._startSentinelNode.style.top = '';\n this._animateCells();\n this._animateHeaderRow();\n }\n }\n\n /**\n * Collect and store references to current header elements.\n */\n protected _getHeaderElements() {\n this.head = undefined;\n this.headerRow = undefined;\n this.headerCells = undefined;\n\n const head = this.querySelector(`${ddsPrefix}-pricing-table-head`);\n if (head instanceof DDSPricingTableHead) {\n this.head = head;\n }\n\n const headerRow = head?.querySelector(\n `${ddsPrefix}-pricing-table-header-row`\n );\n if (headerRow instanceof DDSPricingTableHeaderRow) {\n this.headerRow = headerRow;\n this.headerCells = Array.from(\n headerRow.children\n ) as DDSPricingTableHeaderCell[];\n }\n }\n\n protected _renderHighlightLabel(): DDSPricingTableHighlightLabel {\n const { highlightLabel } = this;\n const element = this.ownerDocument.createElement(\n `${ddsPrefix}-pricing-table-highlight-label`\n ) as DDSPricingTableHighlightLabel;\n element.innerText = highlightLabel || '';\n return element;\n }\n\n protected _unhighlightCells(cells: NodeListOf<Element>): void {\n const { highlightClass } = this;\n cells.forEach((cell) => {\n cell.classList.remove(highlightClass);\n cell\n .querySelector(`${ddsPrefix}-pricing-table-highlight-label`)\n ?.remove();\n this.style.marginTop = '';\n });\n }\n\n protected _highlightCells(cells: NodeListOf<Element>): void {\n const { highlightLabel, highlightClass } = this;\n cells.forEach((cell) => cell.classList.add(highlightClass));\n if (highlightLabel) {\n const firstCell = cells[0];\n if (firstCell instanceof DDSPricingTableHeaderCell) {\n firstCell.prepend(this._renderHighlightLabel());\n }\n this._setHighlightGap();\n }\n }\n\n protected _setHighlightGap(): void {\n const wrapper =\n this.shadowRoot?.getElementById(DDSStructuredList.wrapperId) || this;\n (async () => {\n return this.querySelector(`${ddsPrefix}-pricing-table-highlight-label`);\n })()\n .then((value) => {\n this.highlightGap = value?.getBoundingClientRect().height || 0;\n wrapper.style.marginTop = `${this.highlightGap}px`;\n })\n .catch(() => {\n wrapper.style.marginTop = '';\n });\n }\n\n /**\n * Host listener for updating header element references when cells are\n * updated.\n *\n * @protected\n */\n @HostListener('document:eventHeaderRowSlotchange')\n protected _handleHeaderRowSlotChange = () => {\n this._getHeaderElements();\n };\n\n updated(): void {\n const { highlightColumn } = this;\n\n this._getHeaderElements();\n\n if (highlightColumn) {\n this._unhighlightCells(\n this.querySelectorAll(`\n ${ddsPrefix}-pricing-table-cell,\n ${ddsPrefix}-pricing-table-header-cell`)\n );\n this._highlightCells(\n this.querySelectorAll(`\n ${ddsPrefix}-pricing-table-cell:nth-child(${highlightColumn}),\n ${ddsPrefix}-pricing-table-header-cell:nth-child(${highlightColumn})\n `)\n );\n }\n\n this._cleanIntersectionObservers();\n this._createIntersectionObservers();\n }\n\n connectedCallback() {\n this._createMutationObserver();\n this._createResizeObserver();\n super.connectedCallback();\n }\n\n disconnectedCallback() {\n this._cleanIntersectionObservers();\n this._cleanMutationObserver();\n this._cleanResizeObserver();\n super.disconnectedCallback();\n }\n\n render() {\n const sentinelClass = `${ddsPrefix}-pricing-table-sentinel`;\n\n return html`\n <section id=\"section\" class=\"${`${prefix}--structured-list`}\">\n <span class=\"${sentinelClass}\" id=\"start-sentinel\"></span>\n <slot></slot>\n <span class=\"${sentinelClass}\" id=\"end-sentinel\"></span>\n </section>\n `;\n }\n\n static get stableSelector() {\n return `${ddsPrefix}--pricing-table`;\n }\n\n static get rowStickyClass() {\n return `${prefix}--pricing-table-header-row--sticky`;\n }\n\n static get cellStickyClass() {\n return `${prefix}--pricing-table-header-cell--sticky`;\n }\n\n /**\n * The name of the custom event captured when the header row's slot changes.\n */\n static get eventHeaderRowSlotchange() {\n return DDSPricingTableHeaderRow.eventSlotChange;\n }\n\n static styles = styles;\n}\n\nexport default DDSPricingTable;\n"],"mappings":"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"}
|
|
@@ -6,8 +6,8 @@
|
|
|
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 BXSearch from '@carbon/
|
|
10
|
-
export { SEARCH_COLOR_SCHEME } from '@carbon/
|
|
9
|
+
import BXSearch from '@carbon/web-components/es/components/search/search.js';
|
|
10
|
+
export { SEARCH_COLOR_SCHEME } from '@carbon/web-components/es/components/search/search.js';
|
|
11
11
|
/**
|
|
12
12
|
* Expressive search.
|
|
13
13
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["components/search/search.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"sources":["components/search/search.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,QAAQ,MAAM,uDAAuD,CAAC;AAI7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AAI5F;;;;GAIG;AACH,cACM,SAAU,SAAQ,QAAQ;IAC9B;;OAEG;IACH,MAAM,KAAK,UAAU,WAEpB;IAED,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,SAAS,CAAC","file":"search.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 { customElement } from 'lit-element';\nimport BXSearch from '@carbon/web-components/es/components/search/search.js';\nimport ddsSettings from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings';\nimport styles from './search.scss';\n\nexport { SEARCH_COLOR_SCHEME } from '@carbon/web-components/es/components/search/search.js';\n\nconst { stablePrefix: ddsPrefix } = ddsSettings;\n\n/**\n * Expressive search.\n *\n * @element dds-search\n */\n@customElement(`${ddsPrefix}-search`)\nclass DDSSearch extends BXSearch {\n /**\n * The name of the custom event fired after the search content is changed upon a user gesture.\n */\n static get eventInput() {\n return `${ddsPrefix}-search-input`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default DDSSearch;\n"]}
|
|
@@ -9,10 +9,10 @@ import _decorate from "@babel/runtime/helpers/esm/decorate";
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import { customElement } from 'lit-element';
|
|
12
|
-
import BXSearch from '@carbon/
|
|
12
|
+
import BXSearch from '@carbon/web-components/es/components/search/search.js';
|
|
13
13
|
import ddsSettings from "../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings.js";
|
|
14
14
|
import styles from "././search.css.js";
|
|
15
|
-
export { SEARCH_COLOR_SCHEME } from '@carbon/
|
|
15
|
+
export { SEARCH_COLOR_SCHEME } from '@carbon/web-components/es/components/search/search.js';
|
|
16
16
|
const {
|
|
17
17
|
stablePrefix: ddsPrefix
|
|
18
18
|
} = ddsSettings;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","names":["customElement","BXSearch","ddsSettings","styles","SEARCH_COLOR_SCHEME","stablePrefix","ddsPrefix","DDSSearch"],"sources":["components/search/search.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 { customElement } from 'lit-element';\nimport BXSearch from '@carbon/
|
|
1
|
+
{"version":3,"file":"search.js","names":["customElement","BXSearch","ddsSettings","styles","SEARCH_COLOR_SCHEME","stablePrefix","ddsPrefix","DDSSearch"],"sources":["components/search/search.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 { customElement } from 'lit-element';\nimport BXSearch from '@carbon/web-components/es/components/search/search.js';\nimport ddsSettings from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings';\nimport styles from './search.scss';\n\nexport { SEARCH_COLOR_SCHEME } from '@carbon/web-components/es/components/search/search.js';\n\nconst { stablePrefix: ddsPrefix } = ddsSettings;\n\n/**\n * Expressive search.\n *\n * @element dds-search\n */\n@customElement(`${ddsPrefix}-search`)\nclass DDSSearch extends BXSearch {\n /**\n * The name of the custom event fired after the search content is changed upon a user gesture.\n */\n static get eventInput() {\n return `${ddsPrefix}-search-input`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default DDSSearch;\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,aAAa,QAAQ,aAAa;AAC3C,OAAOC,QAAQ,MAAM,uDAAuD;AAC5E,OAAOC,WAAW,MAAM,kFAA+E;AACvG,OAAOC,MAAM,MAAM,mBAAe;AAElC,SAASC,mBAAmB,QAAQ,uDAAuD;AAE3F,MAAM;EAAEC,YAAY,EAAEC;AAAU,CAAC,GAAGJ,WAAW;;AAE/C;AACA;AACA;AACA;AACA;AAJA,IAMMK,SAAS,cADdP,aAAa,CAAE,GAAEM,SAAU,SAAQ,CAAC;EAArC,MACMC,SAAS,mBAAkB;IAAA;MAAA;MAAA;IAAA;EASjC;EAAC;IAAA,GATKA,SAAS;IAAA;MAAA;MAAA;MAAA;MAAA;MACb;AACF;AACA;MACE,sBAAwB;QACtB,OAAQ,GAAED,SAAU,eAAc;MACpC;IAAC;MAAA;MAAA;MAAA;MAAA;QAAA,OAEeH,MAAM;MAAA;IAAA;EAAA;AAAA,GARAF,QAAQ;AAWhC,eAAeM,SAAS"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["components/search-with-typeahead/scoped-search-dropdown-mobile.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA6LH,eAAe,6BAA6B,CAAC","file":"scoped-search-dropdown-mobile.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 { ifDefined } from 'lit-html/directives/if-defined.js';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport Filter20 from '@carbon/
|
|
1
|
+
{"version":3,"sources":["components/search-with-typeahead/scoped-search-dropdown-mobile.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA6LH,eAAe,6BAA6B,CAAC","file":"scoped-search-dropdown-mobile.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 { ifDefined } from 'lit-html/directives/if-defined.js';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport Filter20 from '@carbon/web-components/es/icons/filter/20.js';\nimport { property, customElement, html } from 'lit-element';\nimport BXSelect from '@carbon/web-components/es/components/select/select.js';\nimport { INPUT_SIZE } from '@carbon/web-components/es/components/input/input.js';\nimport { classMap } from 'lit-html/directives/class-map.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 { filter } from '../../globals/internal/collection-helpers';\nimport styles from './search-with-typeahead.scss';\n\nconst { stablePrefix: ddsPrefix } = ddsSettings;\nconst { prefix } = settings;\n\n/**\n * Scoped search dropdown - mobile version.\n * The dropdown to scope the search suggestions in mobile\n *\n * @element dds-scoped-search-dropdown-mobile\n * @internal\n */\n@customElement(`${ddsPrefix}-scoped-search-dropdown-mobile`)\nclass DDSScopedSearchDropdownMobile extends BXSelect {\n /**\n * The `value` for placeholder `<option>`.\n */\n private _placeholderItemValueMobile = `__${prefix}-select-placeholder_${Math.random()\n .toString(36)\n .slice(2)}`;\n\n /**\n * Handles `oninput` event on the `<input>`\n *\n * @param event The event.\n */\n private _handleInputMobile({ target }: Event) {\n const { value } = target as HTMLSelectElement;\n this.value = value;\n const { eventSelect } = this.constructor as typeof BXSelect;\n this.dispatchEvent(\n new CustomEvent(eventSelect, {\n bubbles: true,\n composed: true,\n detail: {\n appId: value,\n },\n })\n );\n }\n\n /**\n * @param element The parent element containing pseudo `<optgroup>`/`<option>`.\n * @returns The template containing child `<optgroup>`/`<option>` that will be rendered to shadow DOM.\n */\n private _renderItemsMobile(element) {\n const { selectorItem, selectorLeafItem } = this\n .constructor as typeof BXSelect;\n // Harvests attributes from `<bx-select-item>` and `<bx-select-item-group>`.\n // Does not use properties to avoid delay in attribute to property mapping, which runs in custom element reaction cycle:\n // https://html.spec.whatwg.org/multipage/custom-elements.html#custom-element-reactions\n return html`\n ${filter(\n element.childNodes,\n (item) =>\n item.nodeType === Node.ELEMENT_NODE &&\n (item as Element).matches(selectorItem)\n ).map((item) => {\n const disabled = item.hasAttribute('disabled');\n const label = item.getAttribute('label');\n const selected = item.hasAttribute('selected');\n const value = item.getAttribute('value');\n const { textContent } = item;\n return item.matches(selectorLeafItem)\n ? html`\n <option\n class=\"${prefix}--select-option\"\n ?disabled=\"${disabled}\"\n label=\"${ifNonNull(label ?? textContent)}\"\n ?selected=\"${selected}\"\n value=\"${ifNonNull(value)}\"\n >\n ${textContent}\n </option>\n `\n : html`\n <optgroup\n class=\"${prefix}--select-optgroup\"\n ?disabled=\"${disabled}\"\n label=\"${ifNonNull(label)}\"\n >\n ${this._renderItemsMobile(item)}\n </optgroup>\n `;\n })}\n `;\n }\n\n /**\n * Property that specifies the Select to have size xl\n *\n * @internal\n */\n @property()\n size = INPUT_SIZE.EXTRA_LARGE;\n\n render() {\n const {\n disabled,\n helperText,\n invalid,\n labelText,\n placeholder,\n size,\n validityMessage,\n value,\n _placeholderItemValueMobile: placeholderItemValue,\n _handleInputMobile: handleInput,\n } = this;\n\n const inputClasses = classMap({\n [`${prefix}--select-input`]: true,\n [`${prefix}--select-input--${size}`]: size,\n });\n\n const labelClasses = classMap({\n [`${prefix}--label`]: true,\n [`${prefix}--label--disabled`]: disabled,\n });\n\n const helperTextClasses = classMap({\n [`${prefix}--form__helper-text`]: true,\n [`${prefix}--form__helper-text--disabled`]: disabled,\n });\n\n const supplementalText = !invalid\n ? html`\n <div class=\"${helperTextClasses}\">\n <slot name=\"helper-text\"> ${helperText} </slot>\n </div>\n `\n : html`\n <div class=\"${prefix}--form-requirement\" id=\"validity-message\">\n <slot name=\"validity-message\"> ${validityMessage} </slot>\n </div>\n `;\n\n return html`\n <label class=\"${labelClasses}\" for=\"input\">\n <slot name=\"label-text\"> ${labelText} </slot>\n </label>\n <div class=\"${prefix}--select-input__wrapper\" ?data-invalid=\"${invalid}\">\n <select\n id=\"input\"\n class=\"${inputClasses}\"\n ?disabled=\"${disabled}\"\n aria-invalid=\"${String(Boolean(invalid))}\"\n aria-describedby=\"${ifDefined(\n !invalid ? undefined : 'validity-message'\n )}\"\n @input=\"${handleInput}\"\n >\n ${!placeholder || value\n ? undefined\n : html`\n <option\n disabled\n hidden\n class=\"${prefix}--select-option\"\n value=\"${placeholderItemValue}\"\n selected\n >\n ${placeholder}\n </option>\n `}\n ${this._renderItemsMobile(this)}\n </select>\n ${Filter20({ class: `${prefix}--select__arrow` })}\n </div>\n ${supplementalText}\n `;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\n/* @__GENERATE_REACT_CUSTOM_ELEMENT_TYPE__ */\nexport default DDSScopedSearchDropdownMobile;\n"]}
|
|
@@ -18,12 +18,12 @@ let _ = t => t,
|
|
|
18
18
|
|
|
19
19
|
import { ifDefined } from 'lit-html/directives/if-defined.js';
|
|
20
20
|
import settings from 'carbon-components/es/globals/js/settings.js';
|
|
21
|
-
import Filter20 from '@carbon/
|
|
21
|
+
import Filter20 from '@carbon/web-components/es/icons/filter/20.js';
|
|
22
22
|
import { property, customElement, html } from 'lit-element';
|
|
23
|
-
import BXSelect from '@carbon/
|
|
24
|
-
import { INPUT_SIZE } from '@carbon/
|
|
23
|
+
import BXSelect from '@carbon/web-components/es/components/select/select.js';
|
|
24
|
+
import { INPUT_SIZE } from '@carbon/web-components/es/components/input/input.js';
|
|
25
25
|
import { classMap } from 'lit-html/directives/class-map.js';
|
|
26
|
-
import ifNonNull from '@carbon/
|
|
26
|
+
import ifNonNull from '@carbon/web-components/es/globals/directives/if-non-null.js';
|
|
27
27
|
import ddsSettings from "../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings.js";
|
|
28
28
|
import { filter } from "../../globals/internal/collection-helpers.js";
|
|
29
29
|
import styles from "././search-with-typeahead.css.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scoped-search-dropdown-mobile.js","names":["ifDefined","settings","Filter20","property","customElement","html","BXSelect","INPUT_SIZE","classMap","ifNonNull","ddsSettings","filter","styles","stablePrefix","ddsPrefix","prefix","DDSScopedSearchDropdownMobile","Math","random","toString","slice","target","value","eventSelect","constructor","dispatchEvent","CustomEvent","bubbles","composed","detail","appId","element","selectorItem","selectorLeafItem","childNodes","item","nodeType","Node","ELEMENT_NODE","matches","map","disabled","hasAttribute","label","getAttribute","selected","textContent","_renderItemsMobile","EXTRA_LARGE","helperText","invalid","labelText","placeholder","size","validityMessage","_placeholderItemValueMobile","placeholderItemValue","_handleInputMobile","handleInput","inputClasses","labelClasses","helperTextClasses","supplementalText","String","Boolean","undefined","class"],"sources":["components/search-with-typeahead/scoped-search-dropdown-mobile.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 { ifDefined } from 'lit-html/directives/if-defined.js';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport Filter20 from '@carbon/carbon-web-components/es/icons/filter/20.js';\nimport { property, customElement, html } from 'lit-element';\nimport BXSelect from '@carbon/carbon-web-components/es/components/select/select.js';\nimport { INPUT_SIZE } from '@carbon/carbon-web-components/es/components/input/input.js';\nimport { classMap } from 'lit-html/directives/class-map.js';\nimport ifNonNull from '@carbon/carbon-web-components/es/globals/directives/if-non-null.js';\nimport ddsSettings from '../../internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings';\nimport { filter } from '../../globals/internal/collection-helpers';\nimport styles from './search-with-typeahead.scss';\n\nconst { stablePrefix: ddsPrefix } = ddsSettings;\nconst { prefix } = settings;\n\n/**\n * Scoped search dropdown - mobile version.\n * The dropdown to scope the search suggestions in mobile\n *\n * @element dds-scoped-search-dropdown-mobile\n * @internal\n */\n@customElement(`${ddsPrefix}-scoped-search-dropdown-mobile`)\nclass DDSScopedSearchDropdownMobile extends BXSelect {\n /**\n * The `value` for placeholder `<option>`.\n */\n private _placeholderItemValueMobile = `__${prefix}-select-placeholder_${Math.random()\n .toString(36)\n .slice(2)}`;\n\n /**\n * Handles `oninput` event on the `<input>`\n *\n * @param event The event.\n */\n private _handleInputMobile({ target }: Event) {\n const { value } = target as HTMLSelectElement;\n this.value = value;\n const { eventSelect } = this.constructor as typeof BXSelect;\n this.dispatchEvent(\n new CustomEvent(eventSelect, {\n bubbles: true,\n composed: true,\n detail: {\n appId: value,\n },\n })\n );\n }\n\n /**\n * @param element The parent element containing pseudo `<optgroup>`/`<option>`.\n * @returns The template containing child `<optgroup>`/`<option>` that will be rendered to shadow DOM.\n */\n private _renderItemsMobile(element) {\n const { selectorItem, selectorLeafItem } = this\n .constructor as typeof BXSelect;\n // Harvests attributes from `<bx-select-item>` and `<bx-select-item-group>`.\n // Does not use properties to avoid delay in attribute to property mapping, which runs in custom element reaction cycle:\n // https://html.spec.whatwg.org/multipage/custom-elements.html#custom-element-reactions\n return html`\n ${filter(\n element.childNodes,\n (item) =>\n item.nodeType === Node.ELEMENT_NODE &&\n (item as Element).matches(selectorItem)\n ).map((item) => {\n const disabled = item.hasAttribute('disabled');\n const label = item.getAttribute('label');\n const selected = item.hasAttribute('selected');\n const value = item.getAttribute('value');\n const { textContent } = item;\n return item.matches(selectorLeafItem)\n ? html`\n <option\n class=\"${prefix}--select-option\"\n ?disabled=\"${disabled}\"\n label=\"${ifNonNull(label ?? textContent)}\"\n ?selected=\"${selected}\"\n value=\"${ifNonNull(value)}\"\n >\n ${textContent}\n </option>\n `\n : html`\n <optgroup\n class=\"${prefix}--select-optgroup\"\n ?disabled=\"${disabled}\"\n label=\"${ifNonNull(label)}\"\n >\n ${this._renderItemsMobile(item)}\n </optgroup>\n `;\n })}\n `;\n }\n\n /**\n * Property that specifies the Select to have size xl\n *\n * @internal\n */\n @property()\n size = INPUT_SIZE.EXTRA_LARGE;\n\n render() {\n const {\n disabled,\n helperText,\n invalid,\n labelText,\n placeholder,\n size,\n validityMessage,\n value,\n _placeholderItemValueMobile: placeholderItemValue,\n _handleInputMobile: handleInput,\n } = this;\n\n const inputClasses = classMap({\n [`${prefix}--select-input`]: true,\n [`${prefix}--select-input--${size}`]: size,\n });\n\n const labelClasses = classMap({\n [`${prefix}--label`]: true,\n [`${prefix}--label--disabled`]: disabled,\n });\n\n const helperTextClasses = classMap({\n [`${prefix}--form__helper-text`]: true,\n [`${prefix}--form__helper-text--disabled`]: disabled,\n });\n\n const supplementalText = !invalid\n ? html`\n <div class=\"${helperTextClasses}\">\n <slot name=\"helper-text\"> ${helperText} </slot>\n </div>\n `\n : html`\n <div class=\"${prefix}--form-requirement\" id=\"validity-message\">\n <slot name=\"validity-message\"> ${validityMessage} </slot>\n </div>\n `;\n\n return html`\n <label class=\"${labelClasses}\" for=\"input\">\n <slot name=\"label-text\"> ${labelText} </slot>\n </label>\n <div class=\"${prefix}--select-input__wrapper\" ?data-invalid=\"${invalid}\">\n <select\n id=\"input\"\n class=\"${inputClasses}\"\n ?disabled=\"${disabled}\"\n aria-invalid=\"${String(Boolean(invalid))}\"\n aria-describedby=\"${ifDefined(\n !invalid ? undefined : 'validity-message'\n )}\"\n @input=\"${handleInput}\"\n >\n ${!placeholder || value\n ? undefined\n : html`\n <option\n disabled\n hidden\n class=\"${prefix}--select-option\"\n value=\"${placeholderItemValue}\"\n selected\n >\n ${placeholder}\n </option>\n `}\n ${this._renderItemsMobile(this)}\n </select>\n ${Filter20({ class: `${prefix}--select__arrow` })}\n </div>\n ${supplementalText}\n `;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\n/* @__GENERATE_REACT_CUSTOM_ELEMENT_TYPE__ */\nexport default DDSScopedSearchDropdownMobile;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scoped-search-dropdown-mobile.js","names":["ifDefined","settings","Filter20","property","customElement","html","BXSelect","INPUT_SIZE","classMap","ifNonNull","ddsSettings","filter","styles","stablePrefix","ddsPrefix","prefix","DDSScopedSearchDropdownMobile","Math","random","toString","slice","target","value","eventSelect","constructor","dispatchEvent","CustomEvent","bubbles","composed","detail","appId","element","selectorItem","selectorLeafItem","childNodes","item","nodeType","Node","ELEMENT_NODE","matches","map","disabled","hasAttribute","label","getAttribute","selected","textContent","_renderItemsMobile","EXTRA_LARGE","helperText","invalid","labelText","placeholder","size","validityMessage","_placeholderItemValueMobile","placeholderItemValue","_handleInputMobile","handleInput","inputClasses","labelClasses","helperTextClasses","supplementalText","String","Boolean","undefined","class"],"sources":["components/search-with-typeahead/scoped-search-dropdown-mobile.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 { ifDefined } from 'lit-html/directives/if-defined.js';\nimport settings from 'carbon-components/es/globals/js/settings.js';\nimport Filter20 from '@carbon/web-components/es/icons/filter/20.js';\nimport { property, customElement, html } from 'lit-element';\nimport BXSelect from '@carbon/web-components/es/components/select/select.js';\nimport { INPUT_SIZE } from '@carbon/web-components/es/components/input/input.js';\nimport { classMap } from 'lit-html/directives/class-map.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 { filter } from '../../globals/internal/collection-helpers';\nimport styles from './search-with-typeahead.scss';\n\nconst { stablePrefix: ddsPrefix } = ddsSettings;\nconst { prefix } = settings;\n\n/**\n * Scoped search dropdown - mobile version.\n * The dropdown to scope the search suggestions in mobile\n *\n * @element dds-scoped-search-dropdown-mobile\n * @internal\n */\n@customElement(`${ddsPrefix}-scoped-search-dropdown-mobile`)\nclass DDSScopedSearchDropdownMobile extends BXSelect {\n /**\n * The `value` for placeholder `<option>`.\n */\n private _placeholderItemValueMobile = `__${prefix}-select-placeholder_${Math.random()\n .toString(36)\n .slice(2)}`;\n\n /**\n * Handles `oninput` event on the `<input>`\n *\n * @param event The event.\n */\n private _handleInputMobile({ target }: Event) {\n const { value } = target as HTMLSelectElement;\n this.value = value;\n const { eventSelect } = this.constructor as typeof BXSelect;\n this.dispatchEvent(\n new CustomEvent(eventSelect, {\n bubbles: true,\n composed: true,\n detail: {\n appId: value,\n },\n })\n );\n }\n\n /**\n * @param element The parent element containing pseudo `<optgroup>`/`<option>`.\n * @returns The template containing child `<optgroup>`/`<option>` that will be rendered to shadow DOM.\n */\n private _renderItemsMobile(element) {\n const { selectorItem, selectorLeafItem } = this\n .constructor as typeof BXSelect;\n // Harvests attributes from `<bx-select-item>` and `<bx-select-item-group>`.\n // Does not use properties to avoid delay in attribute to property mapping, which runs in custom element reaction cycle:\n // https://html.spec.whatwg.org/multipage/custom-elements.html#custom-element-reactions\n return html`\n ${filter(\n element.childNodes,\n (item) =>\n item.nodeType === Node.ELEMENT_NODE &&\n (item as Element).matches(selectorItem)\n ).map((item) => {\n const disabled = item.hasAttribute('disabled');\n const label = item.getAttribute('label');\n const selected = item.hasAttribute('selected');\n const value = item.getAttribute('value');\n const { textContent } = item;\n return item.matches(selectorLeafItem)\n ? html`\n <option\n class=\"${prefix}--select-option\"\n ?disabled=\"${disabled}\"\n label=\"${ifNonNull(label ?? textContent)}\"\n ?selected=\"${selected}\"\n value=\"${ifNonNull(value)}\"\n >\n ${textContent}\n </option>\n `\n : html`\n <optgroup\n class=\"${prefix}--select-optgroup\"\n ?disabled=\"${disabled}\"\n label=\"${ifNonNull(label)}\"\n >\n ${this._renderItemsMobile(item)}\n </optgroup>\n `;\n })}\n `;\n }\n\n /**\n * Property that specifies the Select to have size xl\n *\n * @internal\n */\n @property()\n size = INPUT_SIZE.EXTRA_LARGE;\n\n render() {\n const {\n disabled,\n helperText,\n invalid,\n labelText,\n placeholder,\n size,\n validityMessage,\n value,\n _placeholderItemValueMobile: placeholderItemValue,\n _handleInputMobile: handleInput,\n } = this;\n\n const inputClasses = classMap({\n [`${prefix}--select-input`]: true,\n [`${prefix}--select-input--${size}`]: size,\n });\n\n const labelClasses = classMap({\n [`${prefix}--label`]: true,\n [`${prefix}--label--disabled`]: disabled,\n });\n\n const helperTextClasses = classMap({\n [`${prefix}--form__helper-text`]: true,\n [`${prefix}--form__helper-text--disabled`]: disabled,\n });\n\n const supplementalText = !invalid\n ? html`\n <div class=\"${helperTextClasses}\">\n <slot name=\"helper-text\"> ${helperText} </slot>\n </div>\n `\n : html`\n <div class=\"${prefix}--form-requirement\" id=\"validity-message\">\n <slot name=\"validity-message\"> ${validityMessage} </slot>\n </div>\n `;\n\n return html`\n <label class=\"${labelClasses}\" for=\"input\">\n <slot name=\"label-text\"> ${labelText} </slot>\n </label>\n <div class=\"${prefix}--select-input__wrapper\" ?data-invalid=\"${invalid}\">\n <select\n id=\"input\"\n class=\"${inputClasses}\"\n ?disabled=\"${disabled}\"\n aria-invalid=\"${String(Boolean(invalid))}\"\n aria-describedby=\"${ifDefined(\n !invalid ? undefined : 'validity-message'\n )}\"\n @input=\"${handleInput}\"\n >\n ${!placeholder || value\n ? undefined\n : html`\n <option\n disabled\n hidden\n class=\"${prefix}--select-option\"\n value=\"${placeholderItemValue}\"\n selected\n >\n ${placeholder}\n </option>\n `}\n ${this._renderItemsMobile(this)}\n </select>\n ${Filter20({ class: `${prefix}--select__arrow` })}\n </div>\n ${supplementalText}\n `;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\n/* @__GENERATE_REACT_CUSTOM_ELEMENT_TYPE__ */\nexport default DDSScopedSearchDropdownMobile;\n"],"mappings":"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"}
|
|
@@ -6,12 +6,12 @@
|
|
|
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 BXDropdown from '@carbon/
|
|
10
|
-
import BXDropdownItem from '@carbon/
|
|
9
|
+
import BXDropdown from '@carbon/web-components/es/components/dropdown/dropdown.js';
|
|
10
|
+
import BXDropdownItem from '@carbon/web-components/es/components/dropdown/dropdown-item.js';
|
|
11
11
|
import './search-with-typeahead-item';
|
|
12
12
|
declare const DDSSearchWithTypeahead_base: {
|
|
13
13
|
new (...args: any[]): {
|
|
14
|
-
_handles: Set<import("@carbon/
|
|
14
|
+
_handles: Set<import("@carbon/web-components/es/globals/internal/handle").default>;
|
|
15
15
|
connectedCallback(): void;
|
|
16
16
|
disconnectedCallback(): void;
|
|
17
17
|
accessKey: string;
|
|
@@ -57,12 +57,11 @@ declare const DDSSearchWithTypeahead_base: {
|
|
|
57
57
|
readonly scrollHeight: number;
|
|
58
58
|
scrollLeft: number;
|
|
59
59
|
scrollTop: number;
|
|
60
|
-
readonly scrollWidth: number;
|
|
61
|
-
readonly shadowRoot: ShadowRoot | null;
|
|
62
|
-
/**
|
|
60
|
+
readonly scrollWidth: number; /**
|
|
63
61
|
* The formatter for the placeholder text on the search box.
|
|
64
62
|
* Should be changed upon the locale the UI is rendered with.
|
|
65
63
|
*/
|
|
64
|
+
readonly shadowRoot: ShadowRoot | null;
|
|
66
65
|
slot: string;
|
|
67
66
|
readonly tagName: string;
|
|
68
67
|
attachShadow(init: ShadowRootInit): ShadowRoot;
|
|
@@ -77,17 +76,8 @@ declare const DDSSearchWithTypeahead_base: {
|
|
|
77
76
|
getBoundingClientRect(): DOMRect;
|
|
78
77
|
getClientRects(): DOMRectList;
|
|
79
78
|
getElementsByClassName(classNames: string): HTMLCollectionOf<Element>;
|
|
80
|
-
/**
|
|
81
|
-
* The `<button>` to open the search box.
|
|
82
|
-
*/
|
|
83
79
|
getElementsByTagName<K_4 extends keyof HTMLElementTagNameMap>(qualifiedName: K_4): HTMLCollectionOf<HTMLElementTagNameMap[K_4]>;
|
|
84
|
-
/**
|
|
85
|
-
* The `<button>` to open the search box.
|
|
86
|
-
*/
|
|
87
80
|
getElementsByTagName<K_5 extends keyof SVGElementTagNameMap>(qualifiedName: K_5): HTMLCollectionOf<SVGElementTagNameMap[K_5]>;
|
|
88
|
-
/**
|
|
89
|
-
* The `<button>` to open the search box.
|
|
90
|
-
*/
|
|
91
81
|
getElementsByTagName(qualifiedName: string): HTMLCollectionOf<Element>;
|
|
92
82
|
getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1999/xhtml", localName: string): HTMLCollectionOf<HTMLElement>;
|
|
93
83
|
getElementsByTagNameNS(namespaceURI: "http://www.w3.org/2000/svg", localName: string): HTMLCollectionOf<SVGElement>;
|
|
@@ -283,7 +273,11 @@ declare const DDSSearchWithTypeahead_base: {
|
|
|
283
273
|
onpause: ((this: GlobalEventHandlers, ev: Event) => any) | null;
|
|
284
274
|
onplay: ((this: GlobalEventHandlers, ev: Event) => any) | null;
|
|
285
275
|
onplaying: ((this: GlobalEventHandlers, ev: Event) => any) | null;
|
|
286
|
-
onpointercancel: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
|
|
276
|
+
onpointercancel: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null; /**
|
|
277
|
+
* Navigate through dropdown items.
|
|
278
|
+
*
|
|
279
|
+
* @param direction `-1` to navigate backward, `1` to navigate forward.
|
|
280
|
+
*/
|
|
287
281
|
onpointerdown: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
|
|
288
282
|
onpointerenter: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
|
|
289
283
|
onpointerleave: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
|