@brandsync/wc 1.7.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +340 -24
- package/dist/brandsync-wc/brandsync-wc.esm.js +1 -1
- package/dist/brandsync-wc/{p-fde5e9f1.entry.js → p-051d3064.entry.js} +1 -1
- package/dist/brandsync-wc/{p-f243683f.entry.js → p-05c7de28.entry.js} +1 -1
- package/dist/brandsync-wc/{p-2d6955d6.entry.js → p-062cfa34.entry.js} +1 -1
- package/dist/brandsync-wc/p-0e39b9cc.entry.js +1 -0
- package/dist/brandsync-wc/p-0eed6813.entry.js +1 -0
- package/dist/brandsync-wc/{p-d25b7b74.entry.js → p-107b1c5d.entry.js} +1 -1
- package/dist/brandsync-wc/{p-538cc08e.entry.js → p-114d2fd8.entry.js} +1 -1
- package/dist/brandsync-wc/{p-6754dfa9.entry.js → p-1c0db4d6.entry.js} +1 -1
- package/dist/brandsync-wc/{p-4a1a5d6e.entry.js → p-1f7208cb.entry.js} +1 -1
- package/dist/brandsync-wc/p-2181378f.entry.js +1 -0
- package/dist/brandsync-wc/{p-d06543a5.entry.js → p-235ae012.entry.js} +1 -1
- package/dist/brandsync-wc/{p-2700a63e.entry.js → p-275072dd.entry.js} +1 -1
- package/dist/brandsync-wc/p-27bbed83.entry.js +1 -0
- package/dist/brandsync-wc/p-2891d40b.entry.js +1 -0
- package/dist/brandsync-wc/p-29027559.entry.js +1 -0
- package/dist/brandsync-wc/{p-a36a0e6a.entry.js → p-3176d1d3.entry.js} +1 -1
- package/dist/brandsync-wc/{p-0d86c22d.entry.js → p-33e44094.entry.js} +1 -1
- package/dist/brandsync-wc/{p-e427bbda.entry.js → p-360452c2.entry.js} +1 -1
- package/dist/brandsync-wc/p-36bf37d9.entry.js +1 -0
- package/dist/brandsync-wc/p-3b64e3cd.entry.js +1 -0
- package/dist/brandsync-wc/p-3ec74d35.entry.js +1 -0
- package/dist/brandsync-wc/p-4574a707.entry.js +1 -0
- package/dist/brandsync-wc/p-4e5dcaff.entry.js +1 -0
- package/dist/brandsync-wc/{p-61db6ce2.entry.js → p-61c1a2a3.entry.js} +1 -1
- package/dist/brandsync-wc/{p-85c70f6d.entry.js → p-6331de9c.entry.js} +1 -1
- package/dist/brandsync-wc/{p-9c1be2a0.entry.js → p-6bf2f116.entry.js} +1 -1
- package/dist/brandsync-wc/p-6fd7dd6a.entry.js +1 -0
- package/dist/brandsync-wc/{p-c3a28a89.entry.js → p-70f64b25.entry.js} +1 -1
- package/dist/brandsync-wc/{p-06e9b45d.entry.js → p-7b00dd36.entry.js} +1 -1
- package/dist/brandsync-wc/{p-13e4966c.entry.js → p-7c94e6ae.entry.js} +1 -1
- package/dist/brandsync-wc/p-835a8dc7.entry.js +1 -0
- package/dist/brandsync-wc/{p-77433277.entry.js → p-8ee0153b.entry.js} +1 -1
- package/dist/brandsync-wc/{p-e1069ba9.entry.js → p-9f65f998.entry.js} +1 -1
- package/dist/brandsync-wc/p-9f6fe37d.entry.js +1 -0
- package/dist/brandsync-wc/{p-b2dc9886.entry.js → p-9f8852a0.entry.js} +1 -1
- package/dist/brandsync-wc/{p-DuyFft7h.js → p-AgoOSYvW.js} +2 -2
- package/dist/brandsync-wc/{p-fba01c96.entry.js → p-a09e157f.entry.js} +1 -1
- package/dist/brandsync-wc/{p-55e6438c.entry.js → p-a0d5a620.entry.js} +1 -1
- package/dist/brandsync-wc/{p-8b2ab522.entry.js → p-a5feaad4.entry.js} +1 -1
- package/dist/brandsync-wc/{p-cbaa19ab.entry.js → p-a92eec48.entry.js} +1 -1
- package/dist/brandsync-wc/{p-3eab22a5.entry.js → p-ae978c9a.entry.js} +1 -1
- package/dist/brandsync-wc/{p-f2ce9a1f.entry.js → p-bbcc47b0.entry.js} +1 -1
- package/dist/brandsync-wc/{p-80cf96ff.entry.js → p-be2c1740.entry.js} +1 -1
- package/dist/brandsync-wc/p-c10d2529.entry.js +1 -0
- package/dist/brandsync-wc/{p-819a3dae.entry.js → p-c3f72584.entry.js} +1 -1
- package/dist/brandsync-wc/{p-8b57f606.entry.js → p-c4de155c.entry.js} +1 -1
- package/dist/brandsync-wc/{p-c197cc95.entry.js → p-cfcf3f0a.entry.js} +1 -1
- package/dist/brandsync-wc/{p-f8f03334.entry.js → p-de7c946d.entry.js} +1 -1
- package/dist/brandsync-wc/{p-600b5434.entry.js → p-e9b43754.entry.js} +1 -1
- package/dist/brandsync-wc/{p-4bff9b4b.entry.js → p-f006d962.entry.js} +1 -1
- package/dist/brandsync-wc/p-f074f94e.entry.js +1 -0
- package/dist/brandsync-wc/{p-7ed5670e.entry.js → p-f7d47c17.entry.js} +1 -1
- package/dist/brandsync-wc/p-fc240aa0.entry.js +1 -0
- package/dist/brandsync-wc/{p-f518f486.entry.js → p-fc58c663.entry.js} +1 -1
- package/dist/brandsync-wc/{p-be14f99f.entry.js → p-fddc7bd1.entry.js} +1 -1
- package/dist/cjs/brandsync-wc.cjs.js +2 -2
- package/dist/cjs/bs-accordion.cjs.entry.js +2 -2
- package/dist/cjs/bs-ai-disclaimer.cjs.entry.js +1 -1
- package/dist/cjs/bs-ai-greeting.cjs.entry.js +1 -1
- package/dist/cjs/bs-ai-thinking.cjs.entry.js +1 -1
- package/dist/cjs/bs-attachment-list.cjs.entry.js +2 -2
- package/dist/cjs/bs-attachment.cjs.entry.js +2 -2
- package/dist/cjs/bs-avatar.cjs.entry.js +1 -1
- package/dist/cjs/bs-badge.cjs.entry.js +1 -1
- package/dist/cjs/bs-breadcrumb-overflow.cjs.entry.js +15 -3
- package/dist/cjs/bs-breadcrumb.cjs.entry.js +16 -2
- package/dist/cjs/bs-breadcrumbs.cjs.entry.js +1 -1
- package/dist/cjs/bs-button-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/bs-button.cjs.entry.js +23 -4
- package/dist/cjs/bs-card.cjs.entry.js +2 -2
- package/dist/cjs/bs-carousel.cjs.entry.js +1 -1
- package/dist/cjs/bs-chatbot-feedback.cjs.entry.js +2 -2
- package/dist/cjs/bs-chatbot-header.cjs.entry.js +1 -1
- package/dist/cjs/bs-chatbot-response-action.cjs.entry.js +2 -2
- package/dist/cjs/bs-chatbot-sources-drawer.cjs.entry.js +1 -1
- package/dist/cjs/bs-chatbot-suggestion-button.cjs.entry.js +1 -1
- package/dist/cjs/bs-checkbox-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/bs-checkbox.cjs.entry.js +48 -3
- package/dist/cjs/bs-chip-filter.cjs.entry.js +2 -2
- package/dist/cjs/bs-chip-informative.cjs.entry.js +2 -2
- package/dist/cjs/bs-chip-input.cjs.entry.js +2 -2
- package/dist/cjs/bs-composer-status-banner.cjs.entry.js +1 -1
- package/dist/cjs/bs-composer.cjs.entry.js +1 -1
- package/dist/cjs/bs-data-table.cjs.entry.js +20 -6
- package/dist/cjs/bs-dialog.cjs.entry.js +2 -2
- package/dist/cjs/bs-file-upload-item.cjs.entry.js +1 -1
- package/dist/cjs/bs-file-upload.cjs.entry.js +1 -1
- package/dist/cjs/bs-icon-button.cjs.entry.js +23 -4
- package/dist/cjs/bs-inline-tab.cjs.entry.js +11 -3
- package/dist/cjs/bs-input.cjs.entry.js +69 -5
- package/dist/cjs/bs-logo.cjs.entry.js +1 -1
- package/dist/cjs/bs-menu-item.cjs.entry.js +1 -1
- package/dist/cjs/bs-menu.cjs.entry.js +25 -3
- package/dist/cjs/bs-navigation-drawer-item.cjs.entry.js +2 -2
- package/dist/cjs/bs-navigation-drawer.cjs.entry.js +119 -6
- package/dist/cjs/bs-navigation-header.cjs.entry.js +2 -2
- package/dist/cjs/bs-pagination.cjs.entry.js +1 -1
- package/dist/cjs/bs-progress-linear.cjs.entry.js +1 -1
- package/dist/cjs/bs-progress.cjs.entry.js +8 -3
- package/dist/cjs/bs-radio.cjs.entry.js +81 -12
- package/dist/cjs/bs-slider.cjs.entry.js +54 -2
- package/dist/cjs/bs-snackbar.cjs.entry.js +1 -1
- package/dist/cjs/bs-source-link.cjs.entry.js +2 -2
- package/dist/cjs/bs-stepper-step.cjs.entry.js +2 -2
- package/dist/cjs/bs-stepper.cjs.entry.js +3 -2
- package/dist/cjs/bs-switch.cjs.entry.js +36 -3
- package/dist/cjs/bs-tab.cjs.entry.js +11 -3
- package/dist/cjs/bs-tabs.cjs.entry.js +97 -3
- package/dist/cjs/bs-toast.cjs.entry.js +1 -1
- package/dist/cjs/bs-tooltip.cjs.entry.js +2 -2
- package/dist/cjs/{index-D7e6DfLV.js → index-kk9YXF2S.js} +43 -5
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/collection/components/bs-a11y.cmp.test.js +54 -0
- package/dist/collection/components/bs-accordion/bs-accordion.css +5 -5
- package/dist/collection/components/bs-attachment/bs-attachment.css +1 -1
- package/dist/collection/components/bs-attachment-list/bs-attachment-list.css +1 -1
- package/dist/collection/components/bs-breadcrumb/bs-breadcrumb/bs-breadcrumb.cmp.test.js +63 -0
- package/dist/collection/components/bs-breadcrumb/bs-breadcrumb/bs-breadcrumb.js +32 -1
- package/dist/collection/components/bs-breadcrumb/bs-breadcrumb-overflow/bs-breadcrumb-overflow.cmp.test.js +45 -0
- package/dist/collection/components/bs-breadcrumb/bs-breadcrumb-overflow/bs-breadcrumb-overflow.css +1 -1
- package/dist/collection/components/bs-breadcrumb/bs-breadcrumb-overflow/bs-breadcrumb-overflow.js +30 -1
- package/dist/collection/components/bs-button/bs-button/bs-button.css +17 -10
- package/dist/collection/components/bs-button/bs-button/bs-button.js +16 -3
- package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.cmp.test.js +20 -0
- package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.css +21 -4
- package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.js +18 -4
- package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.stories.js +10 -0
- package/dist/collection/components/bs-card/bs-card.css +4 -0
- package/dist/collection/components/bs-chatbot-feedback/bs-chatbot-feedback.css +1 -1
- package/dist/collection/components/bs-chatbot-response-action/bs-chatbot-response-action.css +3 -3
- package/dist/collection/components/bs-checkbox/bs-checkbox.css +8 -1
- package/dist/collection/components/bs-checkbox/bs-checkbox.js +100 -2
- package/dist/collection/components/bs-chip/bs-chip-filter/bs-chip-filter.css +4 -4
- package/dist/collection/components/bs-chip/bs-chip-informative/bs-chip-informative.css +4 -4
- package/dist/collection/components/bs-chip/bs-chip-input/bs-chip-input.css +5 -5
- package/dist/collection/components/bs-data-table/bs-data-table.cmp.test.js +19 -0
- package/dist/collection/components/bs-data-table/bs-data-table.css +1 -1
- package/dist/collection/components/bs-data-table/bs-data-table.js +19 -5
- package/dist/collection/components/bs-data-table/bs-data-table.stories.js +8 -1
- package/dist/collection/components/bs-dialog/bs-dialog.css +5 -1
- package/dist/collection/components/bs-form-association.cmp.test.js +172 -0
- package/dist/collection/components/bs-input/bs-input.css +10 -4
- package/dist/collection/components/bs-input/bs-input.js +82 -4
- package/dist/collection/components/bs-keyboard-nav.cmp.test.js +100 -0
- package/dist/collection/components/bs-logo/bs-logo.cmp.test.js +52 -3
- package/dist/collection/components/bs-menu/bs-menu.css +4 -0
- package/dist/collection/components/bs-menu/bs-menu.js +33 -1
- package/dist/collection/components/bs-menu/bs-menu.stories.js +54 -0
- package/dist/collection/components/bs-progress/bs-progress.js +27 -2
- package/dist/collection/components/bs-radio/bs-radio.cmp.test.js +4 -10
- package/dist/collection/components/bs-radio/bs-radio.css +7 -1
- package/dist/collection/components/bs-radio/bs-radio.js +92 -14
- package/dist/collection/components/bs-radio/bs-radio.stories.js +1 -10
- package/dist/collection/components/bs-slider/bs-slider.js +68 -2
- package/dist/collection/components/bs-source-link/bs-source-link.css +2 -2
- package/dist/collection/components/bs-stepper/bs-stepper/bs-stepper.js +3 -2
- package/dist/collection/components/bs-stepper/bs-stepper-step/bs-stepper-step.css +3 -3
- package/dist/collection/components/bs-switch/bs-switch.css +10 -1
- package/dist/collection/components/bs-switch/bs-switch.js +69 -2
- package/dist/collection/components/bs-tab/bs-inline-tab/bs-inline-tab.css +2 -2
- package/dist/collection/components/bs-tab/bs-inline-tab/bs-inline-tab.js +47 -1
- package/dist/collection/components/bs-tab/bs-tab/bs-tab.css +2 -2
- package/dist/collection/components/bs-tab/bs-tab/bs-tab.js +47 -1
- package/dist/collection/components/bs-tab/bs-tabs/bs-tabs.cmp.test.js +88 -0
- package/dist/collection/components/bs-tab/bs-tabs/bs-tabs.js +139 -2
- package/dist/collection/components/bs-tab/bs-tabs/bs-tabs.stories.js +24 -0
- package/dist/collection/components/bs-tooltip/bs-tooltip.js +1 -1
- package/dist/collection/components/forms/forms.stories.js +63 -0
- package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.cmp.test.js +173 -5
- package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.css +106 -34
- package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.js +181 -5
- package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.stories.js +48 -0
- package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer-item/bs-navigation-drawer-item.js +1 -1
- package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.cmp.test.js +68 -0
- package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.css +31 -17
- package/dist/components/bs-accordion.js +1 -1
- package/dist/components/bs-ai-disclaimer.js +1 -1
- package/dist/components/bs-ai-greeting.js +1 -1
- package/dist/components/bs-ai-thinking.js +1 -1
- package/dist/components/bs-attachment-list.js +1 -1
- package/dist/components/bs-attachment.js +1 -1
- package/dist/components/bs-avatar.js +1 -1
- package/dist/components/bs-badge.js +1 -1
- package/dist/components/bs-breadcrumb-overflow.js +1 -1
- package/dist/components/bs-breadcrumb.js +1 -1
- package/dist/components/bs-breadcrumbs.js +1 -1
- package/dist/components/bs-button-skeleton.js +1 -1
- package/dist/components/bs-button.js +1 -1
- package/dist/components/bs-card.js +1 -1
- package/dist/components/bs-carousel.js +1 -1
- package/dist/components/bs-chatbot-feedback.js +1 -1
- package/dist/components/bs-chatbot-header.js +1 -1
- package/dist/components/bs-chatbot-response-action.js +1 -1
- package/dist/components/bs-chatbot-sources-drawer.js +1 -1
- package/dist/components/bs-chatbot-suggestion-button.js +1 -1
- package/dist/components/bs-checkbox-skeleton.js +1 -1
- package/dist/components/bs-checkbox.js +1 -1
- package/dist/components/bs-chip-filter.js +1 -1
- package/dist/components/bs-chip-informative.js +1 -1
- package/dist/components/bs-chip-input.js +1 -1
- package/dist/components/bs-composer-status-banner.js +1 -1
- package/dist/components/bs-composer.js +1 -1
- package/dist/components/bs-data-table.js +1 -1
- package/dist/components/bs-dialog.js +1 -1
- package/dist/components/bs-file-upload-item.js +1 -1
- package/dist/components/bs-file-upload.js +1 -1
- package/dist/components/bs-icon-button.js +1 -1
- package/dist/components/bs-inline-tab.js +1 -1
- package/dist/components/bs-input.js +1 -1
- package/dist/components/bs-logo.js +1 -1
- package/dist/components/bs-menu-item.js +1 -1
- package/dist/components/bs-menu.js +1 -1
- package/dist/components/bs-navigation-drawer-item.js +1 -1
- package/dist/components/bs-navigation-drawer.js +1 -1
- package/dist/components/bs-navigation-header.js +1 -1
- package/dist/components/bs-pagination.js +1 -1
- package/dist/components/bs-progress-linear.js +1 -1
- package/dist/components/bs-progress.js +1 -1
- package/dist/components/bs-radio.js +1 -1
- package/dist/components/bs-slider.js +1 -1
- package/dist/components/bs-snackbar.js +1 -1
- package/dist/components/bs-source-link.js +1 -1
- package/dist/components/bs-stepper-step.js +1 -1
- package/dist/components/bs-stepper.js +1 -1
- package/dist/components/bs-switch.js +1 -1
- package/dist/components/bs-tab.js +1 -1
- package/dist/components/bs-tabs.js +1 -1
- package/dist/components/bs-toast.js +1 -1
- package/dist/components/bs-tooltip.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/{p-LYvoWZt4.js → p-BA3c9Rom.js} +1 -1
- package/dist/components/{p-Dqt-Qp4W.js → p-BfEyD6Ku.js} +1 -1
- package/dist/components/p-BoeorHNv.js +1 -0
- package/dist/components/p-Buly0d5G.js +1 -0
- package/dist/components/p-CpUHnsq9.js +1 -0
- package/dist/components/{p-BxFJ74fI.js → p-EtXc94lJ.js} +1 -1
- package/dist/components/{p-mnGJPH85.js → p-JYlmcxBn.js} +1 -1
- package/dist/components/{p-BhvV55-6.js → p-R2MlkUzD.js} +1 -1
- package/dist/components/{p-Dx8gAOVC.js → p-wei0Ija2.js} +1 -1
- package/dist/esm/brandsync-wc.js +3 -3
- package/dist/esm/bs-accordion.entry.js +2 -2
- package/dist/esm/bs-ai-disclaimer.entry.js +1 -1
- package/dist/esm/bs-ai-greeting.entry.js +1 -1
- package/dist/esm/bs-ai-thinking.entry.js +1 -1
- package/dist/esm/bs-attachment-list.entry.js +2 -2
- package/dist/esm/bs-attachment.entry.js +2 -2
- package/dist/esm/bs-avatar.entry.js +1 -1
- package/dist/esm/bs-badge.entry.js +1 -1
- package/dist/esm/bs-breadcrumb-overflow.entry.js +15 -3
- package/dist/esm/bs-breadcrumb.entry.js +16 -2
- package/dist/esm/bs-breadcrumbs.entry.js +1 -1
- package/dist/esm/bs-button-skeleton.entry.js +1 -1
- package/dist/esm/bs-button.entry.js +23 -4
- package/dist/esm/bs-card.entry.js +2 -2
- package/dist/esm/bs-carousel.entry.js +1 -1
- package/dist/esm/bs-chatbot-feedback.entry.js +2 -2
- package/dist/esm/bs-chatbot-header.entry.js +1 -1
- package/dist/esm/bs-chatbot-response-action.entry.js +2 -2
- package/dist/esm/bs-chatbot-sources-drawer.entry.js +1 -1
- package/dist/esm/bs-chatbot-suggestion-button.entry.js +1 -1
- package/dist/esm/bs-checkbox-skeleton.entry.js +1 -1
- package/dist/esm/bs-checkbox.entry.js +48 -3
- package/dist/esm/bs-chip-filter.entry.js +2 -2
- package/dist/esm/bs-chip-informative.entry.js +2 -2
- package/dist/esm/bs-chip-input.entry.js +2 -2
- package/dist/esm/bs-composer-status-banner.entry.js +1 -1
- package/dist/esm/bs-composer.entry.js +1 -1
- package/dist/esm/bs-data-table.entry.js +20 -6
- package/dist/esm/bs-dialog.entry.js +2 -2
- package/dist/esm/bs-file-upload-item.entry.js +1 -1
- package/dist/esm/bs-file-upload.entry.js +1 -1
- package/dist/esm/bs-icon-button.entry.js +23 -4
- package/dist/esm/bs-inline-tab.entry.js +11 -3
- package/dist/esm/bs-input.entry.js +69 -5
- package/dist/esm/bs-logo.entry.js +1 -1
- package/dist/esm/bs-menu-item.entry.js +1 -1
- package/dist/esm/bs-menu.entry.js +25 -3
- package/dist/esm/bs-navigation-drawer-item.entry.js +2 -2
- package/dist/esm/bs-navigation-drawer.entry.js +119 -6
- package/dist/esm/bs-navigation-header.entry.js +2 -2
- package/dist/esm/bs-pagination.entry.js +1 -1
- package/dist/esm/bs-progress-linear.entry.js +1 -1
- package/dist/esm/bs-progress.entry.js +8 -3
- package/dist/esm/bs-radio.entry.js +81 -12
- package/dist/esm/bs-slider.entry.js +54 -2
- package/dist/esm/bs-snackbar.entry.js +1 -1
- package/dist/esm/bs-source-link.entry.js +2 -2
- package/dist/esm/bs-stepper-step.entry.js +2 -2
- package/dist/esm/bs-stepper.entry.js +3 -2
- package/dist/esm/bs-switch.entry.js +36 -3
- package/dist/esm/bs-tab.entry.js +11 -3
- package/dist/esm/bs-tabs.entry.js +97 -3
- package/dist/esm/bs-toast.entry.js +1 -1
- package/dist/esm/bs-tooltip.entry.js +2 -2
- package/dist/esm/{index-DuyFft7h.js → index-AgoOSYvW.js} +43 -5
- package/dist/esm/loader.js +3 -3
- package/dist/types/components/bs-a11y.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-breadcrumb/bs-breadcrumb/bs-breadcrumb.d.ts +10 -0
- package/dist/types/components/bs-breadcrumb/bs-breadcrumb-overflow/bs-breadcrumb-overflow.d.ts +8 -0
- package/dist/types/components/bs-button/bs-button/bs-button.d.ts +4 -1
- package/dist/types/components/bs-button/bs-icon-button/bs-icon-button.d.ts +6 -2
- package/dist/types/components/bs-button/bs-icon-button/bs-icon-button.stories.d.ts +1 -0
- package/dist/types/components/bs-checkbox/bs-checkbox.d.ts +12 -0
- package/dist/types/components/bs-data-table/bs-data-table.d.ts +16 -2
- package/dist/types/components/bs-form-association.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-input/bs-input.d.ts +12 -0
- package/dist/types/components/bs-keyboard-nav.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-menu/bs-menu.d.ts +4 -0
- package/dist/types/components/bs-menu/bs-menu.stories.d.ts +1 -0
- package/dist/types/components/bs-progress/bs-progress.d.ts +5 -0
- package/dist/types/components/bs-radio/bs-radio.d.ts +23 -9
- package/dist/types/components/bs-slider/bs-slider.d.ts +9 -0
- package/dist/types/components/bs-switch/bs-switch.d.ts +10 -0
- package/dist/types/components/bs-tab/bs-inline-tab/bs-inline-tab.d.ts +8 -0
- package/dist/types/components/bs-tab/bs-tab/bs-tab.d.ts +8 -0
- package/dist/types/components/bs-tab/bs-tabs/bs-tabs.d.ts +24 -0
- package/dist/types/components/bs-tab/bs-tabs/bs-tabs.stories.d.ts +1 -0
- package/dist/types/components/forms/forms.stories.d.ts +6 -0
- package/dist/types/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.d.ts +50 -1
- package/dist/types/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.stories.d.ts +2 -0
- package/dist/types/components.d.ts +271 -9
- package/package.json +1 -1
- package/readme.md +14 -0
- package/dist/brandsync-wc/p-18021c05.entry.js +0 -1
- package/dist/brandsync-wc/p-1c8160c2.entry.js +0 -1
- package/dist/brandsync-wc/p-21c14465.entry.js +0 -1
- package/dist/brandsync-wc/p-27100489.entry.js +0 -1
- package/dist/brandsync-wc/p-309f920e.entry.js +0 -1
- package/dist/brandsync-wc/p-30d6a6d0.entry.js +0 -1
- package/dist/brandsync-wc/p-387ed85f.entry.js +0 -1
- package/dist/brandsync-wc/p-4b0938a5.entry.js +0 -1
- package/dist/brandsync-wc/p-5312b6a5.entry.js +0 -1
- package/dist/brandsync-wc/p-70e035ed.entry.js +0 -1
- package/dist/brandsync-wc/p-777a9dbf.entry.js +0 -1
- package/dist/brandsync-wc/p-a96856fd.entry.js +0 -1
- package/dist/brandsync-wc/p-b0634051.entry.js +0 -1
- package/dist/brandsync-wc/p-bcee3d60.entry.js +0 -1
- package/dist/brandsync-wc/p-d03eba2b.entry.js +0 -1
- package/dist/brandsync-wc/p-e61efe4d.entry.js +0 -1
- package/dist/brandsync-wc/p-f14bda01.entry.js +0 -1
- package/dist/components/p-BaxFLlKS.js +0 -1
- package/dist/components/p-DI5GgSqL.js +0 -1
- package/dist/components/p-v4T0qPVn.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h } from "@stencil/core";
|
|
1
|
+
import { Host, h } from "@stencil/core";
|
|
2
2
|
/**
|
|
3
3
|
* A left-side persistent navigation sidebar: the BrandSync logo, a "Main Menu" title with a
|
|
4
4
|
* collapse toggle, a reserved slot for a search field, and a scrollable list of nav items.
|
|
@@ -37,6 +37,14 @@ import { h } from "@stencil/core";
|
|
|
37
37
|
* that state, so this deliberately does not add the same "flip on toggle" idiom the drawer item's
|
|
38
38
|
* own disclosure chevron does (that one really is an unconfirmed addition; this one was checked).
|
|
39
39
|
*
|
|
40
|
+
* **Small screens (768px and below)** switch to an off-canvas overlay instead of a permanent rail:
|
|
41
|
+
* the drawer is hidden until `open` is set, then slides in over the page with a backdrop, fully
|
|
42
|
+
* expanded (labels visible, nested items reachable). Escape or a click on the backdrop closes it and
|
|
43
|
+
* emits `bsClose`; focus moves into it on open and back to whatever opened it on close. The
|
|
44
|
+
* collapse toggle and the compact search trigger are not shown in this mode (nothing sits behind
|
|
45
|
+
* them). The drawer has no trigger of its own -- put a button in your header and set `open` from it.
|
|
46
|
+
* On wider screens `open` is ignored and nothing changes.
|
|
47
|
+
*
|
|
40
48
|
* @slot search - Reserved for a search field, e.g. a `bs-input type="search"`. This component
|
|
41
49
|
* does not build one itself. Hidden while `collapsed` (see above).
|
|
42
50
|
* @slot - Default slot: the scrollable list of nav items, typically one or more
|
|
@@ -52,6 +60,7 @@ import { h } from "@stencil/core";
|
|
|
52
60
|
* @part search - The wrapper around the `search` slot.
|
|
53
61
|
* @part search-trigger - The compact search button shown instead of the `search` slot while `collapsed`.
|
|
54
62
|
* @part items - The wrapper around the default (items) slot.
|
|
63
|
+
* @part backdrop - The scrim behind the overlay (small screens only; clicking it closes the overlay).
|
|
55
64
|
*/
|
|
56
65
|
// Note: this component's CSS Custom Properties are documented via @prop comments in
|
|
57
66
|
// bs-navigation-drawer.css, not here -- see bs-navigation-header.css's identical note.
|
|
@@ -92,11 +101,112 @@ export class BsNavigationDrawer {
|
|
|
92
101
|
* pairing works too: a header that keeps its own logo (`alignment="default"`) paired with this
|
|
93
102
|
* drawer set to `showLogo={false}`, so the brand mark only ever appears once. */
|
|
94
103
|
showLogo = true;
|
|
95
|
-
|
|
96
|
-
|
|
104
|
+
/** Small screens only (768px and below): whether the off-canvas overlay is shown. Mutable and
|
|
105
|
+
* reflected -- the drawer sets it back to `false` itself when the user dismisses it (Escape or
|
|
106
|
+
* the backdrop), and emits `bsClose`. Ignored on wider screens, where the drawer is always in
|
|
107
|
+
* the page flow. There is no built-in trigger: set this from your own button. */
|
|
108
|
+
open = false;
|
|
109
|
+
/** Fires when the user dismisses the overlay (Escape, or a click on the backdrop), after `open`
|
|
110
|
+
* has been set back to `false`. Does not fire when you set `open = false` yourself. */
|
|
111
|
+
bsClose;
|
|
112
|
+
/** Whether the viewport is in the small-screen range (<= 768px), tracked with `matchMedia`. */
|
|
113
|
+
mobile = false;
|
|
114
|
+
mediaQuery;
|
|
115
|
+
focusPending = false;
|
|
116
|
+
navRef;
|
|
117
|
+
previouslyFocused;
|
|
118
|
+
bodyOverflowBefore;
|
|
119
|
+
get overlayOpen() {
|
|
120
|
+
return this.mobile && this.open;
|
|
121
|
+
}
|
|
122
|
+
connectedCallback() {
|
|
123
|
+
this.mediaQuery = window.matchMedia?.('(max-width: 768px)');
|
|
124
|
+
if (this.mediaQuery) {
|
|
125
|
+
this.mobile = this.mediaQuery.matches;
|
|
126
|
+
this.mediaQuery.addEventListener('change', this.onMediaChange);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
disconnectedCallback() {
|
|
130
|
+
this.mediaQuery?.removeEventListener('change', this.onMediaChange);
|
|
131
|
+
this.unlockScroll();
|
|
132
|
+
}
|
|
133
|
+
onMediaChange = (ev) => {
|
|
134
|
+
this.mobile = ev.matches;
|
|
135
|
+
};
|
|
136
|
+
onCollapsedChange() {
|
|
137
|
+
this.syncItems();
|
|
138
|
+
}
|
|
139
|
+
onMobileChange() {
|
|
140
|
+
this.syncItems();
|
|
141
|
+
this.applyOverlayState();
|
|
142
|
+
}
|
|
143
|
+
onOpenChange() {
|
|
144
|
+
this.applyOverlayState();
|
|
97
145
|
}
|
|
98
146
|
componentDidLoad() {
|
|
99
|
-
this.
|
|
147
|
+
this.syncItems();
|
|
148
|
+
this.applyOverlayState();
|
|
149
|
+
this.flushFocus();
|
|
150
|
+
}
|
|
151
|
+
componentDidRender() {
|
|
152
|
+
this.flushFocus();
|
|
153
|
+
}
|
|
154
|
+
/** Focus is moved only after the render that makes the panel visible -- focusing earlier races the
|
|
155
|
+
* re-render (the panel is still `visibility: hidden`), and a hidden element can't take focus. */
|
|
156
|
+
flushFocus() {
|
|
157
|
+
if (this.focusPending && this.overlayOpen) {
|
|
158
|
+
this.focusPending = false;
|
|
159
|
+
requestAnimationFrame(() => this.navRef?.focus());
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
/** In the small-screen overlay the items always use their expanded layout -- the collapsed
|
|
163
|
+
* (icon-above-caption) layout is for the desktop rail, and would clip labels in a full-width
|
|
164
|
+
* panel and hide nested items. */
|
|
165
|
+
syncItems() {
|
|
166
|
+
this.syncItemsCollapsed(this.mobile ? false : this.collapsed);
|
|
167
|
+
}
|
|
168
|
+
/** Scroll lock, focus entry and focus return for the overlay, mirroring `bs-dialog`: the focus
|
|
169
|
+
* move is deferred a frame because focusing right after the panel becomes visible does not
|
|
170
|
+
* reliably land. */
|
|
171
|
+
applyOverlayState() {
|
|
172
|
+
if (this.overlayOpen) {
|
|
173
|
+
if (this.bodyOverflowBefore === undefined) {
|
|
174
|
+
this.bodyOverflowBefore = document.body.style.overflow;
|
|
175
|
+
document.body.style.overflow = 'hidden';
|
|
176
|
+
}
|
|
177
|
+
if (!this.previouslyFocused) {
|
|
178
|
+
this.previouslyFocused = document.activeElement;
|
|
179
|
+
}
|
|
180
|
+
this.focusPending = true;
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
this.focusPending = false;
|
|
184
|
+
this.unlockScroll();
|
|
185
|
+
if (this.previouslyFocused?.isConnected)
|
|
186
|
+
this.previouslyFocused.focus();
|
|
187
|
+
this.previouslyFocused = undefined;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
unlockScroll() {
|
|
191
|
+
if (this.bodyOverflowBefore !== undefined) {
|
|
192
|
+
document.body.style.overflow = this.bodyOverflowBefore;
|
|
193
|
+
this.bodyOverflowBefore = undefined;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
requestClose = () => {
|
|
197
|
+
this.open = false;
|
|
198
|
+
this.bsClose.emit();
|
|
199
|
+
};
|
|
200
|
+
onDocumentKeydown(ev) {
|
|
201
|
+
if (this.overlayOpen && ev.key === 'Escape')
|
|
202
|
+
this.requestClose();
|
|
203
|
+
}
|
|
204
|
+
/** Keeps focus inside the open overlay: focus that lands anywhere outside this component is
|
|
205
|
+
* pulled back in. `composedPath()` is used so this works across shadow-DOM boundaries (same
|
|
206
|
+
* approach as `bs-dialog`). */
|
|
207
|
+
onDocumentFocusIn(ev) {
|
|
208
|
+
if (this.overlayOpen && !ev.composedPath().includes(this.el))
|
|
209
|
+
this.navRef?.focus();
|
|
100
210
|
}
|
|
101
211
|
/** Keeps every direct-child `bs-navigation-drawer-item`'s `collapsed` prop in sync with this
|
|
102
212
|
* component's own -- same direct-children-prop-sync approach `bs-tabs` uses for `selected`
|
|
@@ -117,7 +227,12 @@ export class BsNavigationDrawer {
|
|
|
117
227
|
this.bsSearchClick.emit();
|
|
118
228
|
};
|
|
119
229
|
render() {
|
|
120
|
-
|
|
230
|
+
const classes = ['bs-navigation-drawer', this.mobile ? 'bs-navigation-drawer--overlay' : '', this.overlayOpen ? 'bs-navigation-drawer--open' : ''].filter(Boolean).join(' ');
|
|
231
|
+
return (h(Host, { key: '94c3fbfb2d9826979f2f90ec0c9571aadc484450', "data-overlay": this.mobile ? '' : undefined }, this.mobile && h("div", { key: 'cc8b62b02a561dfbb0a15918e4bbbf241919ea7d', part: "backdrop", class: "bs-navigation-drawer__backdrop", onClick: this.requestClose }), h("nav", { key: 'ad3e970438fca27636992cc434584bfae7888895', ref: el => (this.navRef = el), class: classes, "aria-label": this.heading,
|
|
232
|
+
// Stays a plain <nav> landmark in every state: ARIA does not allow role="dialog" on <nav>
|
|
233
|
+
// (axe: aria-allowed-role). Modality is behavioral -- focus is held inside, the page behind is
|
|
234
|
+
// scrimmed, Escape closes -- rather than announced through aria-modal.
|
|
235
|
+
tabIndex: this.mobile ? -1 : undefined }, this.showLogo && (h("div", { key: '41552cc9bc1fd33081119b6b6a475e9a81281e97', part: "logo", class: "bs-navigation-drawer__logo bs-navigation-drawer__logo--full" }, h("bs-logo", { key: '96503cee7e467c535747171f46ab8b36f2d9262a', variant: "full", background: this.logoBackground }))), this.showLogo && (h("div", { key: '6b4e91b0296772ea492a2e12c1f81933be1af02b', part: "logo", class: "bs-navigation-drawer__logo bs-navigation-drawer__logo--mark" }, h("bs-logo", { key: '72c4cae8f25aebef923d2b346ee3a3224a1a4550', variant: "mark", background: this.logoBackground }))), h("div", { key: '2fde5f92e629d34321e0e0e6eaf776027614836a', class: "bs-navigation-drawer__title-row" }, h("span", { key: 'fde5717eeec30bbade48f574e44f9eec841bab36', part: "title", class: "bs-navigation-drawer__title" }, this.heading), this.collapsible && (h("button", { key: '59d514aec296c5b4eb459de259aa29d77a435ecf', type: "button", part: "collapse", class: "bs-navigation-drawer__collapse", "aria-label": this.collapsed ? 'Expand' : 'Collapse', "aria-pressed": this.collapsed ? 'true' : 'false', onClick: this.onCollapseClick }, h(CaretLeftIcon, { key: 'a992c1fcaa3e143ee9f1469958eeab12e03bce03' })))), h("div", { key: '1a74885abe2e50b3a6eccd7d4cacca4582dc5fa9', part: "search", class: "bs-navigation-drawer__search" }, h("slot", { key: 'ac98f9ca62a289e21fcbf0f005c6c0f7e02d9967', name: "search" })), h("button", { key: 'c7c50e5cf2c81ec8445a557505faf2ea40add094', type: "button", part: "search-trigger", class: "bs-navigation-drawer__search-trigger", "aria-label": "Search", onClick: this.onSearchTriggerClick }, h(SearchIcon, { key: '538bcfc474036d2c79fe821011490bf7cbd4d018' })), h("div", { key: '1a7aa824a99823b2d06309c5192a200afe378a7b', part: "items", class: "bs-navigation-drawer__items" }, h("slot", { key: '1a79d4f0e809b16a9d19efb06d36052c0539bba2' })))));
|
|
121
236
|
}
|
|
122
237
|
static get is() { return "bs-navigation-drawer"; }
|
|
123
238
|
static get encapsulation() { return "shadow"; }
|
|
@@ -232,9 +347,34 @@ export class BsNavigationDrawer {
|
|
|
232
347
|
"reflect": false,
|
|
233
348
|
"attribute": "show-logo",
|
|
234
349
|
"defaultValue": "true"
|
|
350
|
+
},
|
|
351
|
+
"open": {
|
|
352
|
+
"type": "boolean",
|
|
353
|
+
"mutable": true,
|
|
354
|
+
"complexType": {
|
|
355
|
+
"original": "boolean",
|
|
356
|
+
"resolved": "boolean",
|
|
357
|
+
"references": {}
|
|
358
|
+
},
|
|
359
|
+
"required": false,
|
|
360
|
+
"optional": false,
|
|
361
|
+
"docs": {
|
|
362
|
+
"tags": [],
|
|
363
|
+
"text": "Small screens only (768px and below): whether the off-canvas overlay is shown. Mutable and\nreflected -- the drawer sets it back to `false` itself when the user dismisses it (Escape or\nthe backdrop), and emits `bsClose`. Ignored on wider screens, where the drawer is always in\nthe page flow. There is no built-in trigger: set this from your own button."
|
|
364
|
+
},
|
|
365
|
+
"getter": false,
|
|
366
|
+
"setter": false,
|
|
367
|
+
"reflect": true,
|
|
368
|
+
"attribute": "open",
|
|
369
|
+
"defaultValue": "false"
|
|
235
370
|
}
|
|
236
371
|
};
|
|
237
372
|
}
|
|
373
|
+
static get states() {
|
|
374
|
+
return {
|
|
375
|
+
"mobile": {}
|
|
376
|
+
};
|
|
377
|
+
}
|
|
238
378
|
static get events() {
|
|
239
379
|
return [{
|
|
240
380
|
"method": "bsCollapse",
|
|
@@ -266,6 +406,21 @@ export class BsNavigationDrawer {
|
|
|
266
406
|
"resolved": "void",
|
|
267
407
|
"references": {}
|
|
268
408
|
}
|
|
409
|
+
}, {
|
|
410
|
+
"method": "bsClose",
|
|
411
|
+
"name": "bsClose",
|
|
412
|
+
"bubbles": true,
|
|
413
|
+
"cancelable": true,
|
|
414
|
+
"composed": true,
|
|
415
|
+
"docs": {
|
|
416
|
+
"tags": [],
|
|
417
|
+
"text": "Fires when the user dismisses the overlay (Escape, or a click on the backdrop), after `open`\nhas been set back to `false`. Does not fire when you set `open = false` yourself."
|
|
418
|
+
},
|
|
419
|
+
"complexType": {
|
|
420
|
+
"original": "void",
|
|
421
|
+
"resolved": "void",
|
|
422
|
+
"references": {}
|
|
423
|
+
}
|
|
269
424
|
}];
|
|
270
425
|
}
|
|
271
426
|
static get elementRef() { return "el"; }
|
|
@@ -273,6 +428,27 @@ export class BsNavigationDrawer {
|
|
|
273
428
|
return [{
|
|
274
429
|
"propName": "collapsed",
|
|
275
430
|
"methodName": "onCollapsedChange"
|
|
431
|
+
}, {
|
|
432
|
+
"propName": "mobile",
|
|
433
|
+
"methodName": "onMobileChange"
|
|
434
|
+
}, {
|
|
435
|
+
"propName": "open",
|
|
436
|
+
"methodName": "onOpenChange"
|
|
437
|
+
}];
|
|
438
|
+
}
|
|
439
|
+
static get listeners() {
|
|
440
|
+
return [{
|
|
441
|
+
"name": "keydown",
|
|
442
|
+
"method": "onDocumentKeydown",
|
|
443
|
+
"target": "document",
|
|
444
|
+
"capture": false,
|
|
445
|
+
"passive": false
|
|
446
|
+
}, {
|
|
447
|
+
"name": "focusin",
|
|
448
|
+
"method": "onDocumentFocusIn",
|
|
449
|
+
"target": "document",
|
|
450
|
+
"capture": false,
|
|
451
|
+
"passive": false
|
|
276
452
|
}];
|
|
277
453
|
}
|
|
278
454
|
}
|
|
@@ -272,3 +272,51 @@ export const LargeItemList = {
|
|
|
272
272
|
</div>
|
|
273
273
|
`,
|
|
274
274
|
};
|
|
275
|
+
// The overlay only exists at <= 768px of WINDOW width (a media query), so it can't be shown inline on
|
|
276
|
+
// a wide docs page. This story therefore renders the real demo page (`MobileOverlayPage`, below) inside
|
|
277
|
+
// a 390px-wide iframe, where the media query matches.
|
|
278
|
+
export const MobileOverlay = {
|
|
279
|
+
name: 'Mobile overlay',
|
|
280
|
+
parameters: { layout: 'padded' },
|
|
281
|
+
render: () => html `
|
|
282
|
+
<iframe
|
|
283
|
+
title="Navigation drawer on a 390px-wide screen"
|
|
284
|
+
src="iframe.html?id=ui-shell-bs-navigation-drawer-bs-navigation-drawer--mobile-overlay-page&viewMode=story"
|
|
285
|
+
style="width: 390px; height: 640px; border: 1px solid var(--bs-border-default); border-radius: 8px;"
|
|
286
|
+
></iframe>
|
|
287
|
+
`,
|
|
288
|
+
};
|
|
289
|
+
// A small-screen page: a header with a hamburger that sets `open` on the drawer. Open this story in
|
|
290
|
+
// the canvas and narrow the window (or pick a mobile viewport in the toolbar) to try the overlay on
|
|
291
|
+
// its own; it is also what the "Mobile overlay" story embeds.
|
|
292
|
+
export const MobileOverlayPage = {
|
|
293
|
+
name: 'Mobile overlay (page)',
|
|
294
|
+
parameters: { layout: 'fullscreen' },
|
|
295
|
+
render: () => {
|
|
296
|
+
const openDrawer = (ev) => {
|
|
297
|
+
const page = ev.currentTarget.closest('[data-demo]');
|
|
298
|
+
page.querySelector('bs-navigation-drawer').open = true;
|
|
299
|
+
};
|
|
300
|
+
// The drawer closes itself on Escape / backdrop; a real app also closes it after navigating.
|
|
301
|
+
const closeAfterSelect = (ev) => {
|
|
302
|
+
ev.currentTarget.open = false;
|
|
303
|
+
};
|
|
304
|
+
return html `
|
|
305
|
+
<div data-demo style="min-height: 100vh; font-family: var(--bs-typography-font-family-body, sans-serif);">
|
|
306
|
+
<div style="display: flex; align-items: center; gap: 12px; padding: 8px 16px; border-bottom: 1px solid var(--bs-border-default);">
|
|
307
|
+
<bs-icon-button variant="subtle" aria-label="Open menu" @click=${openDrawer}>
|
|
308
|
+
<svg viewBox="0 0 24 24" fill="none" aria-hidden="true">
|
|
309
|
+
<path d="M4 7h16M4 12h16M4 17h16" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
|
|
310
|
+
</svg>
|
|
311
|
+
</bs-icon-button>
|
|
312
|
+
<strong>My app</strong>
|
|
313
|
+
</div>
|
|
314
|
+
<p style="padding: 0 16px;">Page content. On a wide window the drawer sits beside it; at 768px and below it is hidden until the menu button opens it.</p>
|
|
315
|
+
<bs-navigation-drawer @bsSelect=${closeAfterSelect}>
|
|
316
|
+
<bs-input slot="search" type="search" placeholder="Search"></bs-input>
|
|
317
|
+
${ITEMS_NO_ICONS}
|
|
318
|
+
</bs-navigation-drawer>
|
|
319
|
+
</div>
|
|
320
|
+
`;
|
|
321
|
+
},
|
|
322
|
+
};
|
|
@@ -131,7 +131,7 @@ export class BsNavigationDrawerItem {
|
|
|
131
131
|
// incorrectly also toggle this parent row on every child click. Both are wrapped in a
|
|
132
132
|
// `display: contents` container so render() still returns a single root node (this codebase's
|
|
133
133
|
// convention, e.g. bs-input.tsx) without that wrapper affecting layout at all.
|
|
134
|
-
return (h("div", { key: '
|
|
134
|
+
return (h("div", { key: '34d31ff7c612fa135b6dc14b757d66d4b00f99e4', class: "bs-navigation-drawer-item__root" }, h("button", { key: '08e244c8ada605dc7705df5b1d45ebce80165f3e', type: "button", part: "item", class: rowClasses, "aria-expanded": this.expandable ? String(this.expanded) : undefined, "aria-label": this.ariaLabel ?? undefined, onClick: this.onClick }, !this.nested && (h("span", { key: 'a6e09b5edb35ec8f76ed6d6a78ddd1eb141f87b6', part: "icon", class: `bs-navigation-drawer-item__icon ${this.hasIcon ? 'bs-navigation-drawer-item__icon--has-content' : ''}` }, h("slot", { key: '851289379dacae965639ed7963d800c8a92472c2', name: "icon", onSlotchange: this.onIconSlotchange }))), h("span", { key: '4b46c2ca6a5bf4d5e777ae72c9ea826ffcffea02', part: "label", class: "bs-navigation-drawer-item__label" }, h("slot", { key: 'df214a2bcea435a678c18d0f461d9011c767a995' })), this.expandable && (h("span", { key: 'd12e91043617e96567acd5497a53dd98c612c6af', part: "chevron", class: `bs-navigation-drawer-item__chevron ${this.expanded ? 'bs-navigation-drawer-item__chevron--expanded' : ''}` }, h(ChevronDownIcon, { key: 'c278774ae33cf86e7d1b3f70f4e99b8c7afc4d68' })))), this.expandable && (h("span", { key: '85081ed698d078b94225c7b984eaee1edfd22b49', part: "children", class: "bs-navigation-drawer-item__children" }, h("slot", { key: '85c22788467a67f18b9cca6018c179a28d06fa19', name: "children" })))));
|
|
135
135
|
}
|
|
136
136
|
static get is() { return "bs-navigation-drawer-item"; }
|
|
137
137
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { render, h, describe, it, expect } from "@stencil/vitest";
|
|
2
|
+
import { page } from "vitest/browser";
|
|
2
3
|
describe('bs-navigation-header', () => {
|
|
3
4
|
it('renders a <header> landmark with the logo by default', async () => {
|
|
4
5
|
const { root } = await render(h("bs-navigation-header", null));
|
|
@@ -75,3 +76,70 @@ describe('bs-navigation-header', () => {
|
|
|
75
76
|
});
|
|
76
77
|
});
|
|
77
78
|
});
|
|
79
|
+
// The test browser (and its viewport) is shared across test files, so each test restores the
|
|
80
|
+
// viewport it found.
|
|
81
|
+
async function withViewport(width, height, fn) {
|
|
82
|
+
const prev = { w: window.innerWidth, h: window.innerHeight };
|
|
83
|
+
await page.viewport(width, height);
|
|
84
|
+
try {
|
|
85
|
+
return await fn();
|
|
86
|
+
}
|
|
87
|
+
finally {
|
|
88
|
+
await page.viewport(prev.w, prev.h);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
describe('bs-navigation-header: width and small screens', () => {
|
|
92
|
+
it('defaults --bs-navigation-header-max-width to none', async () => {
|
|
93
|
+
const { root } = await render(h("bs-navigation-header", null));
|
|
94
|
+
expect(getComputedStyle(root).getPropertyValue('--bs-navigation-header-max-width').trim()).toBe('none');
|
|
95
|
+
});
|
|
96
|
+
it('spans a container wider than 1920px instead of stopping short', async () => {
|
|
97
|
+
await withViewport(2600, 800, async () => {
|
|
98
|
+
const { root, waitForChanges } = await render(h("div", { style: { width: '2400px' } }, h("bs-navigation-header", null)));
|
|
99
|
+
await waitForChanges();
|
|
100
|
+
const bar = root.querySelector('bs-navigation-header').shadowRoot.querySelector('header');
|
|
101
|
+
expect(Math.round(bar.getBoundingClientRect().width)).toBe(2400);
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
it('--bs-navigation-header-max-width still caps the bar when set', async () => {
|
|
105
|
+
await withViewport(2600, 800, async () => {
|
|
106
|
+
const { root, waitForChanges } = await render(h("div", { style: { width: '2400px' } }, h("bs-navigation-header", { style: { '--bs-navigation-header-max-width': '1920px' } })));
|
|
107
|
+
await waitForChanges();
|
|
108
|
+
const bar = root.querySelector('bs-navigation-header').shadowRoot.querySelector('header');
|
|
109
|
+
expect(Math.round(bar.getBoundingClientRect().width)).toBe(1920);
|
|
110
|
+
});
|
|
111
|
+
});
|
|
112
|
+
// Issue: at <=768px a left slot with intrinsic width (e.g. a search field) made the right slot
|
|
113
|
+
// drop to its own row, because right was forced to flex: 1 1 100%.
|
|
114
|
+
// `default` also has the logo and two 40px gaps in the row, so only a single action icon fits
|
|
115
|
+
// beside it at 390px (more would correctly wrap -- see the next test).
|
|
116
|
+
for (const [alignment, icons] of [
|
|
117
|
+
['with-navigation-drawer', 3],
|
|
118
|
+
['default', 1],
|
|
119
|
+
]) {
|
|
120
|
+
it(`${alignment}: a wide left slot yields, so the right slot stays on the same row at 390px`, async () => {
|
|
121
|
+
await withViewport(390, 800, async () => {
|
|
122
|
+
const { root, waitForChanges } = await render(h("bs-navigation-header", { alignment: alignment }, h("input", { slot: "left", style: { width: '380px' }, "aria-label": "Search" }), h("div", { slot: "right", style: { display: 'flex', gap: '8px' } }, Array.from({ length: icons }, (_, i) => (h("bs-icon-button", { ariaLabel: `Action ${i + 1}` }, "x"))))));
|
|
123
|
+
await waitForChanges();
|
|
124
|
+
const left = root.shadowRoot.querySelector('[part="left"]');
|
|
125
|
+
const right = root.shadowRoot.querySelector('[part="right"]');
|
|
126
|
+
// Same row = the two boxes overlap vertically (they have different heights and are
|
|
127
|
+
// center-aligned, so their tops legitimately differ).
|
|
128
|
+
const l = left.getBoundingClientRect();
|
|
129
|
+
const r = right.getBoundingClientRect();
|
|
130
|
+
expect(r.top < l.bottom && l.top < r.bottom).toBe(true);
|
|
131
|
+
// and it stays inside the viewport (no horizontal overflow from the right slot)
|
|
132
|
+
expect(r.right).toBeLessThanOrEqual(390);
|
|
133
|
+
});
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
it('still wraps the right slot below when the logo and right slot cannot share a row', async () => {
|
|
137
|
+
await withViewport(320, 800, async () => {
|
|
138
|
+
const { root, waitForChanges } = await render(h("bs-navigation-header", null, h("div", { slot: "right", style: { display: 'flex', gap: '8px' } }, h("bs-icon-button", { ariaLabel: "1" }, "x"), h("bs-icon-button", { ariaLabel: "2" }, "x"), h("bs-icon-button", { ariaLabel: "3" }, "x"), h("bs-icon-button", { ariaLabel: "4" }, "x"), h("bs-icon-button", { ariaLabel: "5" }, "x"))));
|
|
139
|
+
await waitForChanges();
|
|
140
|
+
const logo = root.shadowRoot.querySelector('[part="logo"]');
|
|
141
|
+
const right = root.shadowRoot.querySelector('[part="right"]');
|
|
142
|
+
expect(right.getBoundingClientRect().top).toBeGreaterThan(logo.getBoundingClientRect().bottom - 1);
|
|
143
|
+
});
|
|
144
|
+
});
|
|
145
|
+
});
|
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @prop --bs-navigation-header-bg: Background of the bar. Aliased to --bs-surface-base.
|
|
3
3
|
* @prop --bs-navigation-header-border: Bottom border color. Aliased to --bs-border-default.
|
|
4
|
-
* @prop --bs-navigation-header-padding-top: Aliased to --bs-spacing-200.
|
|
5
|
-
*
|
|
4
|
+
* @prop --bs-navigation-header-padding-top: Aliased to --bs-spacing-200 (16px). Deliberately larger
|
|
5
|
+
* than the bottom padding to match the Figma design, so slotted content sits about 4px below the
|
|
6
|
+
* bar's vertical center. For true vertical centering set both paddings to --bs-spacing-150.
|
|
7
|
+
* @prop --bs-navigation-header-padding-bottom: Aliased to --bs-spacing-100 (8px). See the top
|
|
8
|
+
* padding above for why it is smaller.
|
|
6
9
|
* @prop --bs-navigation-header-padding-x: Aliased to --bs-margin-fluid.
|
|
7
|
-
* @prop --bs-navigation-header-max-width: Overall max-width of the bar.
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
10
|
+
* @prop --bs-navigation-header-max-width: Overall max-width of the bar. Defaults to `none`, so an
|
|
11
|
+
* app-shell header spans its container (a 1920px default stopped the bar short on screens wider
|
|
12
|
+
* than that while the content below kept going). Set a length, e.g. `1920px`, to cap it. The global
|
|
13
|
+
* vendored --bs-breakpoints-max-width token is not used: it is malformed (`1920rem` instead of
|
|
14
|
+
* `1920px`).
|
|
11
15
|
* @prop --bs-navigation-header-item-gap: Gap between the logo and the `left` slot (`default`
|
|
12
16
|
* alignment), or between the `left` and `right` slots (`with-navigation-drawer` alignment, which
|
|
13
17
|
* has no logo). Not used in `center` alignment -- see the class doc in bs-navigation-header.tsx.
|
|
@@ -29,7 +33,7 @@
|
|
|
29
33
|
--bs-navigation-header-padding-top: var(--bs-spacing-200);
|
|
30
34
|
--bs-navigation-header-padding-bottom: var(--bs-spacing-100);
|
|
31
35
|
--bs-navigation-header-padding-x: var(--bs-margin-fluid);
|
|
32
|
-
--bs-navigation-header-max-width:
|
|
36
|
+
--bs-navigation-header-max-width: none;
|
|
33
37
|
--bs-navigation-header-item-gap: calc(var(--bs-navigation-header-gap) * 1px);
|
|
34
38
|
--bs-navigation-header-slot-gap: var(--bs-spacing-100);
|
|
35
39
|
--bs-navigation-header-skip-link-bg: var(--bs-surface-action);
|
|
@@ -107,15 +111,18 @@
|
|
|
107
111
|
|
|
108
112
|
/* Below 768px (same breakpoint bs-navigation-drawer's own small-screen treatment uses, for
|
|
109
113
|
consistency -- this library has no other width-based @media precedent to follow, see that
|
|
110
|
-
component's CSS for the full reasoning), the
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
(
|
|
117
|
-
|
|
118
|
-
|
|
114
|
+
component's CSS for the full reasoning), the fixed-width `bs-logo` (flex-shrink: 0 on `__logo`
|
|
115
|
+
above) and the `right` slot's action icons no longer reliably fit in one row at real
|
|
116
|
+
small-screen widths (e.g. 390px) -- the icon buttons inside `right` don't shrink, so they
|
|
117
|
+
overflowed past the logo, reading as an overlap/collision. The bar therefore wraps, but only when
|
|
118
|
+
it has to: `left` takes a zero flex-basis (`flex: 1 1 0%; min-width: 0`) so it yields all its
|
|
119
|
+
space to the logo and `right` instead of forcing `right` onto its own row whenever `left` has
|
|
120
|
+
intrinsic width (e.g. a search field), and `right` keeps its natural width (`flex: 0 0 auto`),
|
|
121
|
+
pushed to the end. When logo + `right` fit together they share one row; when they don't, `right`
|
|
122
|
+
wraps below, right-aligned. Content slotted into `left` should itself be able to shrink
|
|
123
|
+
(`width: 100%` / `min-width: 0`) -- a fixed-width element would overflow its container.
|
|
124
|
+
Only `default`/`with-navigation-drawer` need this -- `center`'s logo/right are already flex: 1
|
|
125
|
+
and absorb the narrower width themselves. */
|
|
119
126
|
@media (max-width: 768px) {
|
|
120
127
|
.bs-navigation-header--default,
|
|
121
128
|
.bs-navigation-header--with-navigation-drawer {
|
|
@@ -123,9 +130,16 @@
|
|
|
123
130
|
row-gap: var(--bs-navigation-header-slot-gap);
|
|
124
131
|
}
|
|
125
132
|
|
|
133
|
+
.bs-navigation-header--default .bs-navigation-header__left,
|
|
134
|
+
.bs-navigation-header--with-navigation-drawer .bs-navigation-header__left {
|
|
135
|
+
flex: 1 1 0%;
|
|
136
|
+
min-width: 0;
|
|
137
|
+
}
|
|
138
|
+
|
|
126
139
|
.bs-navigation-header--default .bs-navigation-header__right,
|
|
127
140
|
.bs-navigation-header--with-navigation-drawer .bs-navigation-header__right {
|
|
128
|
-
flex:
|
|
141
|
+
flex: 0 0 auto;
|
|
142
|
+
margin-inline-start: auto;
|
|
129
143
|
justify-content: flex-end;
|
|
130
144
|
}
|
|
131
145
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as o,p as a,H as i,c as e,h as c}from"./p-
|
|
1
|
+
import{t as o,p as a,H as i,c as e,h as c}from"./p-JYlmcxBn.js";const n=a(class extends i{constructor(o){super(),!1!==o&&this.__registerHost(),this.__attachShadow(),this.bsToggle=e(this,"bsToggle")}expanded=!1;size="medium";disabled=!1;showIcon=!0;showPreview=!0;bsToggle;onActivate=()=>{this.disabled||this.bsToggle.emit(!this.expanded)};render(){return c("div",{key:"2774538f3bc8d52e5a295edafbdad5e2a12dddda",part:"container",class:`bs-accordion bs-accordion--${this.size} ${this.disabled?"bs-accordion--disabled":""}`},c("button",{key:"7e1942dca9082ac653dd7e3d55d9b919790bcd5b",type:"button",part:"header",class:`bs-accordion__header bs-accordion__header--${this.size} ${this.showIcon?"":"bs-accordion__header--no-icon"}`,disabled:this.disabled,"aria-expanded":this.expanded+"",onClick:this.onActivate},this.showIcon&&c("span",{key:"abd274cb295ae34e9220846a1e8466623f65663a",part:"icon",class:"bs-accordion__icon bs-accordion__icon--"+this.size,"aria-hidden":"true"},c("slot",{key:"d9c4c429852c77f4a10c05eb247a9d3d35559ef6",name:"icon"},c(d,{key:"2fb492c43754a517e4e98b684f811be21777e849"}))),c("span",{key:"a02484f1a47148493fbc193bc4b9daa8e4c634e7",part:"label",class:"bs-accordion__label "+(this.showIcon?"":"bs-accordion__label--no-icon")},c("slot",{key:"8241ccee7233e85c2d69c225c07e67b982674ef7",name:"label"})),c("span",{key:"6e36ee8dbd22ca924f9d8ea8b5c3017c5478f058",part:"caret",class:"bs-accordion__caret bs-accordion__caret--"+this.size,"aria-hidden":"true"},c(this.expanded?s:r,null))),(this.expanded||this.showPreview)&&c("div",{key:"1e3ad6fe654c633a4094ea9014ef79d82feae2db",part:"content",class:`bs-accordion__content ${this.showIcon?"":"bs-accordion__content--no-icon"} ${this.expanded?"bs-accordion__content--expanded":"bs-accordion__content--collapsed"}`},c("slot",{key:"6a60fd12ed4ec7e3b4ab0e56414e0a90c4f5d889"})))}static get style(){return":host{display:block;--bs-accordion-radius:var(--bs-border-radius-100);--bs-accordion-header-padding-y-medium:var(--bs-spacing-150);--bs-accordion-header-padding-y-large:var(--bs-spacing-250);--bs-accordion-header-padding-x:var(--bs-spacing-200);--bs-accordion-content-padding-bottom:var(--bs-spacing-150);--bs-accordion-content-padding-right:var(--bs-spacing-200);--bs-accordion-content-padding-left:var(--bs-spacing-800);--bs-accordion-content-padding-left-no-icon:var(--bs-spacing-200);--bs-accordion-icon-width-medium:var(--bs-spacing-800);--bs-accordion-icon-height-medium:48px;--bs-accordion-icon-size-large:var(--bs-spacing-800);--bs-accordion-font-size:var(--bs-font-size-md);--bs-accordion-line-height:var(--bs-line-height-body-md);--bs-accordion-font-weight:var(--bs-font-weight-semibold);--bs-accordion-text-default:var(--bs-text-default);--bs-accordion-bg-hover:var(--bs-surface-hover);--bs-accordion-bg-disabled:var(--bs-surface-action-disabled);--bs-accordion-text-disabled:var(--bs-text-on-disabled);--bs-accordion-focus-ring:var(--bs-border-neutral-focus)}.bs-accordion{display:block;border-radius:var(--bs-accordion-radius);overflow:hidden;font-family:inherit}.bs-accordion:has(.bs-accordion__header:hover),.bs-accordion:has(.bs-accordion__header:active){background:var(--bs-accordion-bg-hover)}.bs-accordion:has(.bs-accordion__header:focus-visible){background:var(--bs-accordion-bg-hover);outline:2px solid var(--bs-accordion-focus-ring);outline-offset:2px;border-radius:calc(var(--bs-accordion-radius) + 2px)}.bs-accordion__header{display:flex;align-items:center;width:100%;border:none;background:transparent;color:var(--bs-accordion-text-default);padding:0;cursor:pointer;font-family:inherit;text-align:start}.bs-accordion__header:focus-visible{outline:none}.bs-accordion__header--medium{padding-top:var(--bs-accordion-header-padding-y-medium);padding-bottom:var(--bs-accordion-header-padding-y-medium)}.bs-accordion__header--large{padding-top:var(--bs-accordion-header-padding-y-large);padding-bottom:var(--bs-accordion-header-padding-y-large)}.bs-accordion__header:disabled{background:var(--bs-accordion-bg-disabled);color:var(--bs-accordion-text-disabled);cursor:default}.bs-accordion__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:inherit}.bs-accordion__icon svg{width:24px;height:24px}.bs-accordion__icon--medium{width:var(--bs-accordion-icon-width-medium);height:var(--bs-accordion-icon-height-medium)}.bs-accordion__icon--large{width:var(--bs-accordion-icon-size-large);height:var(--bs-accordion-icon-size-large)}.bs-accordion__label{flex:1 1 auto;min-width:0;font-size:var(--bs-accordion-font-size);line-height:calc(var(--bs-accordion-line-height) * 1px);font-weight:var(--bs-accordion-font-weight)}.bs-accordion__label--no-icon{padding-inline-start:var(--bs-accordion-header-padding-x)}.bs-accordion__caret{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:inherit}.bs-accordion__caret svg{width:24px;height:24px}.bs-accordion__caret--medium{width:var(--bs-accordion-icon-width-medium);height:var(--bs-accordion-icon-height-medium)}.bs-accordion__caret--large{width:var(--bs-accordion-icon-size-large);height:var(--bs-accordion-icon-size-large)}.bs-accordion__content{padding-top:0;padding-bottom:var(--bs-accordion-content-padding-bottom);padding-inline-end:var(--bs-accordion-content-padding-right);padding-inline-start:var(--bs-accordion-content-padding-left);color:var(--bs-accordion-text-default);font-size:var(--bs-accordion-font-size);line-height:calc(var(--bs-accordion-line-height) * 1px)}.bs-accordion__content--no-icon{padding-inline-start:var(--bs-accordion-content-padding-left-no-icon)}.bs-accordion__content--collapsed{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bs-accordion--disabled .bs-accordion__content{background:var(--bs-accordion-bg-disabled);color:var(--bs-accordion-text-disabled)}"}},[769,"bs-accordion",{expanded:[516],size:[1],disabled:[4],showIcon:[4,"show-icon"],showPreview:[4,"show-preview"]}]),d=()=>c("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},c("path",{d:"M12 5V19",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),c("path",{d:"M5 12H19",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})),r=()=>c("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},c("path",{d:"M6 9.75L12 15.75L18 9.75",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})),s=()=>c("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},c("path",{d:"M6 14.25L12 8.25L18 14.25",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}));function t(){"undefined"!=typeof customElements&&["bs-accordion"].forEach((a=>{"bs-accordion"===a&&(customElements.get(o(a))||customElements.define(o(a),n))}))}t();const b=n,l=t;export{b as BsAccordion,l as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as i,p as e,H as s,h as a}from"./p-
|
|
1
|
+
import{t as i,p as e,H as s,h as a}from"./p-JYlmcxBn.js";const t=e(class extends s{constructor(i){super(),!1!==i&&this.__registerHost(),this.__attachShadow()}render(){return a("div",{key:"2df50141b934d044d68015cc40b0cc525f374ec7",class:"bs-ai-disclaimer"},a("p",{key:"42e735a432c16d16c4daa786bbd3e2757d298e68",part:"text",class:"bs-ai-disclaimer__text"},a("slot",{key:"fe037a3b1bd4bf6135448abd6ce2de8aa4cec6d5"})))}static get style(){return":host{display:block;--bs-ai-disclaimer-padding-x:var(--bs-spacing-200);--bs-ai-disclaimer-text-color:var(--bs-text-secondary);--bs-ai-disclaimer-font-size:var(--bs-font-size-sm);--bs-ai-disclaimer-line-height:var(--bs-line-height-body-sm)}.bs-ai-disclaimer{box-sizing:border-box;display:flex;align-items:center;justify-content:center;padding:0 var(--bs-ai-disclaimer-padding-x);font-family:inherit}.bs-ai-disclaimer__text{margin:0;flex:1 0 0;min-width:0;color:var(--bs-ai-disclaimer-text-color);font-size:var(--bs-ai-disclaimer-font-size);line-height:calc(var(--bs-ai-disclaimer-line-height) * 1px);text-align:center;word-break:break-word}"}},[257,"bs-ai-disclaimer"]);function r(){"undefined"!=typeof customElements&&["bs-ai-disclaimer"].forEach((e=>{"bs-ai-disclaimer"===e&&(customElements.get(i(e))||customElements.define(i(e),t))}))}r();const c=t,d=r;export{c as BsAiDisclaimer,d as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e,p as i,H as t,h as a}from"./p-
|
|
1
|
+
import{t as e,p as i,H as t,h as a}from"./p-JYlmcxBn.js";const n=i(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow()}assistantName="Genie";productName;render(){const e=this.productName?`How can I help you with ${this.productName} today?`:"How can I help you today?";return a("div",{key:"36ef1fa16f576af16387a9119c6fb3003fde61de",class:"bs-ai-greeting"},a("div",{key:"397127700354b1a9b46b3adc5c4e7bec3803b5cf",part:"heading",class:"bs-ai-greeting__heading"},a("p",{key:"3bf51034fa5fc1ea28856e1d44b629f6614cdf1a",class:"bs-ai-greeting__heading-line"},"Hi. I'm ",this.assistantName,","),a("p",{key:"b718d68dfb5c602eb035950b9ff661ab569b9302",class:"bs-ai-greeting__heading-line"},"your AI assistant.")),a("p",{key:"1d271a06cfc0909c8c8c6487a05da3aebf925c09",part:"subtext",class:"bs-ai-greeting__subtext"},e))}static get style(){return":host{display:block;--bs-ai-greeting-gap:var(--bs-spacing-200);--bs-ai-greeting-max-width:490px;--bs-ai-greeting-heading-color:var(--bs-text-default);--bs-ai-greeting-heading-font-size:var(--bs-font-size-4xl);--bs-ai-greeting-heading-line-height:var(--bs-line-height-body-lg);--bs-ai-greeting-heading-weight:var(--bs-font-weight-bold);--bs-ai-greeting-heading-gap:var(--bs-spacing-200);--bs-ai-greeting-subtext-color:var(--bs-text-secondary);--bs-ai-greeting-subtext-font-size:var(--bs-font-size-xl);--bs-ai-greeting-subtext-line-height:var(--bs-line-height-body-lg)}.bs-ai-greeting{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--bs-ai-greeting-gap);max-width:var(--bs-ai-greeting-max-width);margin:0 auto;text-align:center;font-family:inherit}.bs-ai-greeting__heading{display:flex;flex-direction:column;gap:var(--bs-ai-greeting-heading-gap);color:var(--bs-ai-greeting-heading-color);font-size:var(--bs-ai-greeting-heading-font-size);font-weight:var(--bs-ai-greeting-heading-weight);line-height:calc(var(--bs-ai-greeting-heading-line-height) * 1px)}.bs-ai-greeting__heading-line{margin:0}.bs-ai-greeting__subtext{margin:0;color:var(--bs-ai-greeting-subtext-color);font-size:var(--bs-ai-greeting-subtext-font-size);font-weight:var(--bs-font-weight-regular);line-height:calc(var(--bs-ai-greeting-subtext-line-height) * 1px)}"}},[513,"bs-ai-greeting",{assistantName:[1,"assistant-name"],productName:[1,"product-name"]}]);function s(){"undefined"!=typeof customElements&&["bs-ai-greeting"].forEach((i=>{"bs-ai-greeting"===i&&(customElements.get(e(i))||customElements.define(e(i),n))}))}s();const g=n,r=s;export{g as BsAiGreeting,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as i,p as n,H as a,h as t}from"./p-mnGJPH85.js";const g=n(class extends a{constructor(i){super(),!1!==i&&this.__registerHost(),this.__attachShadow()}label="Thinking";render(){return t("div",{key:"310fa2c79337dd330219ea2f0c11c5105692f964",class:"bs-ai-thinking",role:"status","aria-live":"polite"},t("img",{key:"0e6b3bf38aeff1166675e6761ada150ddfc344b1",part:"icon",class:"bs-ai-thinking__icon",src:"data:image/png;base64,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",alt:"","aria-hidden":"true"}),t("span",{key:"5611170fc41f29361c79be7e30599ae61ef5a976",part:"label",class:"bs-ai-thinking__label"},this.label))}static get style(){return":host{display:inline-flex;--bs-ai-thinking-gap:var(--bs-spacing-100);--bs-ai-thinking-icon-size:24px;--bs-ai-thinking-text:var(--bs-text-muted);--bs-ai-thinking-shimmer-highlight:var(--bs-text-default);--bs-ai-thinking-font-size:var(--bs-font-size-md);--bs-ai-thinking-line-height:var(--bs-line-height-body-md);--bs-ai-thinking-cycle-duration:2s}.bs-ai-thinking{display:inline-flex;align-items:center;gap:var(--bs-ai-thinking-gap);font-family:inherit}.bs-ai-thinking__icon{display:block;width:var(--bs-ai-thinking-icon-size);height:var(--bs-ai-thinking-icon-size);flex-shrink:0;object-fit:contain}.bs-ai-thinking__label{font-size:var(--bs-ai-thinking-font-size);line-height:calc(var(--bs-ai-thinking-line-height) * 1px);background-image:linear-gradient( 90deg, var(--bs-ai-thinking-text) 0%, var(--bs-ai-thinking-text) 44%, var(--bs-ai-thinking-shimmer-highlight) 50%, var(--bs-ai-thinking-text) 56%, var(--bs-ai-thinking-text) 100% );background-size:200% 100%;background-position:200% 0;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:bs-ai-thinking-shimmer var(--bs-ai-thinking-cycle-duration) linear infinite}@keyframes bs-ai-thinking-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.bs-ai-thinking__label{animation:none;background-image:none;-webkit-text-fill-color:currentcolor;color:var(--bs-ai-thinking-text)}}"}},[513,"bs-ai-thinking",{label:[1]}]);function s(){"undefined"!=typeof customElements&&["bs-ai-thinking"].forEach((n=>{"bs-ai-thinking"===n&&(customElements.get(i(n))||customElements.define(i(n),g))}))}s();const o=g,e=s;export{o as BsAiThinking,e as defineCustomElement}
|
|
1
|
+
import{t as i,p as n,H as a,h as t}from"./p-JYlmcxBn.js";const g=n(class extends a{constructor(i){super(),!1!==i&&this.__registerHost(),this.__attachShadow()}label="Thinking";render(){return t("div",{key:"310fa2c79337dd330219ea2f0c11c5105692f964",class:"bs-ai-thinking",role:"status","aria-live":"polite"},t("img",{key:"0e6b3bf38aeff1166675e6761ada150ddfc344b1",part:"icon",class:"bs-ai-thinking__icon",src:"data:image/png;base64,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",alt:"","aria-hidden":"true"}),t("span",{key:"5611170fc41f29361c79be7e30599ae61ef5a976",part:"label",class:"bs-ai-thinking__label"},this.label))}static get style(){return":host{display:inline-flex;--bs-ai-thinking-gap:var(--bs-spacing-100);--bs-ai-thinking-icon-size:24px;--bs-ai-thinking-text:var(--bs-text-muted);--bs-ai-thinking-shimmer-highlight:var(--bs-text-default);--bs-ai-thinking-font-size:var(--bs-font-size-md);--bs-ai-thinking-line-height:var(--bs-line-height-body-md);--bs-ai-thinking-cycle-duration:2s}.bs-ai-thinking{display:inline-flex;align-items:center;gap:var(--bs-ai-thinking-gap);font-family:inherit}.bs-ai-thinking__icon{display:block;width:var(--bs-ai-thinking-icon-size);height:var(--bs-ai-thinking-icon-size);flex-shrink:0;object-fit:contain}.bs-ai-thinking__label{font-size:var(--bs-ai-thinking-font-size);line-height:calc(var(--bs-ai-thinking-line-height) * 1px);background-image:linear-gradient( 90deg, var(--bs-ai-thinking-text) 0%, var(--bs-ai-thinking-text) 44%, var(--bs-ai-thinking-shimmer-highlight) 50%, var(--bs-ai-thinking-text) 56%, var(--bs-ai-thinking-text) 100% );background-size:200% 100%;background-position:200% 0;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:bs-ai-thinking-shimmer var(--bs-ai-thinking-cycle-duration) linear infinite}@keyframes bs-ai-thinking-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.bs-ai-thinking__label{animation:none;background-image:none;-webkit-text-fill-color:currentcolor;color:var(--bs-ai-thinking-text)}}"}},[513,"bs-ai-thinking",{label:[1]}]);function s(){"undefined"!=typeof customElements&&["bs-ai-thinking"].forEach((n=>{"bs-ai-thinking"===n&&(customElements.get(i(n))||customElements.define(i(n),g))}))}s();const o=g,e=s;export{o as BsAiThinking,e as defineCustomElement}
|