@brandsync/wc 1.10.0 → 1.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +155 -0
- package/custom-elements.json +8333 -4134
- package/dist/brandsync-wc/brandsync-wc.css +33 -0
- package/dist/brandsync-wc/brandsync-wc.esm.js +1 -1
- package/dist/brandsync-wc/{p-9f8852a0.entry.js → p-00a0d489.entry.js} +1 -1
- package/dist/brandsync-wc/{p-360452c2.entry.js → p-09435f41.entry.js} +1 -1
- package/dist/brandsync-wc/{p-dbcbe682.entry.js → p-09bc1923.entry.js} +1 -1
- package/dist/brandsync-wc/{p-1f7208cb.entry.js → p-09cbf05b.entry.js} +1 -1
- package/dist/brandsync-wc/{p-c99b6a66.entry.js → p-0b2d3b7e.entry.js} +1 -1
- package/dist/brandsync-wc/p-0b7c77c1.entry.js +1 -0
- package/dist/brandsync-wc/p-0ee4126c.entry.js +1 -0
- package/dist/brandsync-wc/{p-5f3cd501.entry.js → p-0f8cd2e8.entry.js} +1 -1
- package/dist/brandsync-wc/{p-1c0db4d6.entry.js → p-1261f0b0.entry.js} +1 -1
- package/dist/brandsync-wc/{p-b2074a32.entry.js → p-1978e63c.entry.js} +1 -1
- package/dist/brandsync-wc/p-1aab6d07.entry.js +1 -0
- package/dist/brandsync-wc/{p-96ed9386.entry.js → p-20030f4d.entry.js} +1 -1
- package/dist/brandsync-wc/p-2177042f.entry.js +1 -0
- package/dist/brandsync-wc/{p-a8e2a829.entry.js → p-2368a92e.entry.js} +1 -1
- package/dist/brandsync-wc/{p-2e958566.entry.js → p-247e36ad.entry.js} +1 -1
- package/dist/brandsync-wc/p-2497d128.entry.js +1 -0
- package/dist/brandsync-wc/{p-701ebf4a.entry.js → p-282ddbee.entry.js} +1 -1
- package/dist/brandsync-wc/{p-763876f5.entry.js → p-2f4e08e1.entry.js} +1 -1
- package/dist/brandsync-wc/{p-c3f72584.entry.js → p-34e5feaf.entry.js} +1 -1
- package/dist/brandsync-wc/{p-ea4e20ef.entry.js → p-39a26c64.entry.js} +1 -1
- package/dist/brandsync-wc/p-3a1af63a.entry.js +1 -0
- package/dist/brandsync-wc/{p-9f6fe37d.entry.js → p-3f09296a.entry.js} +1 -1
- package/dist/brandsync-wc/p-416322bd.entry.js +1 -0
- package/dist/brandsync-wc/{p-f89de457.entry.js → p-452f9c1c.entry.js} +1 -1
- package/dist/brandsync-wc/{p-bbcc47b0.entry.js → p-491b51e6.entry.js} +1 -1
- package/dist/brandsync-wc/p-52cb2358.entry.js +1 -0
- package/dist/brandsync-wc/{p-daab6b22.entry.js → p-56c37e0a.entry.js} +1 -1
- package/dist/brandsync-wc/p-5ba90a13.entry.js +1 -0
- package/dist/brandsync-wc/{p-08c99a60.entry.js → p-617bd13a.entry.js} +1 -1
- package/dist/brandsync-wc/p-68fcd4a4.entry.js +1 -0
- package/dist/brandsync-wc/{p-9e88f19c.entry.js → p-69c0a85d.entry.js} +1 -1
- package/dist/brandsync-wc/{p-d3f44cb7.entry.js → p-6a696161.entry.js} +1 -1
- package/dist/brandsync-wc/{p-32cd69f1.entry.js → p-6c6cdf77.entry.js} +1 -1
- package/dist/brandsync-wc/{p-041776c0.entry.js → p-6e735e37.entry.js} +1 -1
- package/dist/brandsync-wc/{p-fc58c663.entry.js → p-73f214ed.entry.js} +1 -1
- package/dist/brandsync-wc/{p-be2c1740.entry.js → p-7796b93f.entry.js} +1 -1
- package/dist/brandsync-wc/p-78a69a59.entry.js +1 -0
- package/dist/brandsync-wc/{p-f370b8fa.entry.js → p-78f4fcf0.entry.js} +1 -1
- package/dist/brandsync-wc/p-7f954939.entry.js +1 -0
- package/dist/brandsync-wc/{p-835a8dc7.entry.js → p-81605b82.entry.js} +1 -1
- package/dist/brandsync-wc/{p-a71d2811.entry.js → p-823ab3b2.entry.js} +1 -1
- package/dist/brandsync-wc/{p-2181378f.entry.js → p-83c90489.entry.js} +1 -1
- package/dist/brandsync-wc/p-89099a39.entry.js +1 -0
- package/dist/brandsync-wc/{p-a92eec48.entry.js → p-89fabf27.entry.js} +1 -1
- package/dist/brandsync-wc/{p-AgoOSYvW.js → p-DqQRXQMx.js} +2 -2
- package/dist/brandsync-wc/{p-18c3c22c.entry.js → p-a9169157.entry.js} +1 -1
- package/dist/brandsync-wc/{p-301b2455.entry.js → p-b84366a7.entry.js} +1 -1
- package/dist/brandsync-wc/{p-a5feaad4.entry.js → p-b8d2ce91.entry.js} +1 -1
- package/dist/brandsync-wc/p-b9a4042e.entry.js +1 -0
- package/dist/brandsync-wc/{p-275072dd.entry.js → p-b9ccd9d1.entry.js} +1 -1
- package/dist/brandsync-wc/{p-61c1a2a3.entry.js → p-be3dd446.entry.js} +1 -1
- package/dist/brandsync-wc/{p-8eba7f90.entry.js → p-d754ee13.entry.js} +1 -1
- package/dist/brandsync-wc/{p-e9b43754.entry.js → p-d75f3f87.entry.js} +1 -1
- package/dist/brandsync-wc/{p-e8a5b8eb.entry.js → p-d8b29a53.entry.js} +1 -1
- package/dist/brandsync-wc/p-de110ad0.entry.js +1 -0
- package/dist/brandsync-wc/p-e2556b4e.entry.js +1 -0
- package/dist/brandsync-wc/{p-af2bf957.entry.js → p-e5daa6ca.entry.js} +1 -1
- package/dist/brandsync-wc/{p-0132a2d1.entry.js → p-f15d9524.entry.js} +1 -1
- package/dist/brandsync-wc/p-f5180578.entry.js +1 -0
- package/dist/brandsync-wc/{p-fd254972.entry.js → p-f7d15fbe.entry.js} +1 -1
- package/dist/brandsync-wc/{p-50a251a4.entry.js → p-fc069773.entry.js} +1 -1
- package/dist/brandsync-wc/p-fcee0dc4.entry.js +1 -0
- package/dist/cjs/brandsync-wc.cjs.js +2 -2
- package/dist/cjs/bs-accordion.cjs.entry.js +1 -1
- package/dist/cjs/bs-ai-disclaimer.cjs.entry.js +2 -2
- package/dist/cjs/bs-ai-greeting.cjs.entry.js +2 -2
- package/dist/cjs/bs-ai-thinking.cjs.entry.js +2 -2
- package/dist/cjs/bs-attachment-list.cjs.entry.js +2 -2
- package/dist/cjs/bs-attachment.cjs.entry.js +1 -1
- 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 +1 -1
- package/dist/cjs/bs-breadcrumb.cjs.entry.js +6 -3
- package/dist/cjs/bs-breadcrumbs.cjs.entry.js +2 -2
- package/dist/cjs/bs-button-skeleton.cjs.entry.js +2 -2
- package/dist/cjs/bs-button.cjs.entry.js +3 -3
- package/dist/cjs/bs-card.cjs.entry.js +3 -3
- 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 +3 -3
- package/dist/cjs/bs-chatbot-response-action.cjs.entry.js +2 -2
- package/dist/cjs/bs-chatbot-sources-drawer.cjs.entry.js +2 -2
- package/dist/cjs/bs-chatbot-suggestion-button.cjs.entry.js +2 -2
- package/dist/cjs/bs-checkbox-skeleton.cjs.entry.js +2 -2
- package/dist/cjs/bs-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/bs-chip-filter.cjs.entry.js +1 -1
- package/dist/cjs/bs-chip-informative.cjs.entry.js +1 -1
- package/dist/cjs/bs-chip-input.cjs.entry.js +1 -1
- package/dist/cjs/bs-composer-status-banner.cjs.entry.js +1 -1
- package/dist/cjs/bs-composer.cjs.entry.js +2 -2
- package/dist/cjs/bs-cookie-consent.cjs.entry.js +186 -0
- package/dist/cjs/bs-data-table.cjs.entry.js +1 -1
- package/dist/cjs/bs-datepicker.cjs.entry.js +13 -9
- package/dist/cjs/bs-dialog.cjs.entry.js +1 -1
- package/dist/cjs/bs-error-page.cjs.entry.js +103 -0
- package/dist/cjs/bs-file-upload-item.cjs.entry.js +2 -2
- package/dist/cjs/bs-file-upload.cjs.entry.js +2 -2
- package/dist/cjs/bs-icon-button.cjs.entry.js +2 -2
- package/dist/cjs/bs-icon-tile.cjs.entry.js +52 -0
- package/dist/cjs/bs-inline-tab.cjs.entry.js +2 -2
- package/dist/cjs/{bs-input_2.cjs.entry.js → bs-input_3.cjs.entry.js} +42 -6
- package/dist/cjs/bs-logo.cjs.entry.js +1 -1
- package/dist/cjs/bs-navigation-drawer-item.cjs.entry.js +2 -2
- package/dist/cjs/bs-navigation-drawer.cjs.entry.js +3 -3
- package/dist/cjs/bs-navigation-header.cjs.entry.js +2 -2
- package/dist/cjs/bs-onboarding-checklist.cjs.entry.js +161 -0
- package/dist/cjs/bs-pagination.cjs.entry.js +2 -2
- package/dist/cjs/bs-product-tour.cjs.entry.js +78 -0
- package/dist/cjs/bs-progress-linear.cjs.entry.js +4 -4
- package/dist/cjs/bs-progress.cjs.entry.js +3 -3
- package/dist/cjs/bs-qr-code.cjs.entry.js +148 -0
- package/dist/cjs/bs-radio.cjs.entry.js +2 -2
- package/dist/cjs/bs-session-timeout.cjs.entry.js +215 -0
- package/dist/cjs/bs-slider.cjs.entry.js +2 -2
- package/dist/cjs/bs-snackbar.cjs.entry.js +9 -3
- package/dist/cjs/bs-source-link.cjs.entry.js +3 -3
- package/dist/cjs/bs-stepper-step.cjs.entry.js +2 -2
- package/dist/cjs/bs-stepper.cjs.entry.js +2 -2
- package/dist/cjs/bs-switch.cjs.entry.js +2 -2
- package/dist/cjs/bs-tab_3.cjs.entry.js +255 -0
- package/dist/cjs/bs-timepicker.cjs.entry.js +4 -4
- package/dist/cjs/bs-toast.cjs.entry.js +2 -2
- package/dist/cjs/bs-tooltip.cjs.entry.js +2 -2
- package/dist/cjs/bs-whats-new.cjs.entry.js +144 -0
- package/dist/cjs/{index-kk9YXF2S.js → index-tFJjflK5.js} +15 -3
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/collection/collection-manifest.json +9 -0
- package/dist/collection/components/bs-a11y.cmp.test.js +22 -0
- package/dist/collection/components/bs-ai-disclaimer/bs-ai-disclaimer.js +1 -1
- package/dist/collection/components/bs-ai-greeting/bs-ai-greeting.js +1 -1
- package/dist/collection/components/bs-ai-thinking/bs-ai-thinking.js +1 -1
- package/dist/collection/components/bs-attachment/bs-attachment.stories.js +4 -3
- package/dist/collection/components/bs-attachment-list/bs-attachment-list.js +1 -1
- package/dist/collection/components/bs-breadcrumb/bs-breadcrumb/bs-breadcrumb.js +6 -3
- package/dist/collection/components/bs-breadcrumb/bs-breadcrumbs/bs-breadcrumbs.js +1 -1
- package/dist/collection/components/bs-button/bs-button/bs-button.cmp.test.js +28 -0
- package/dist/collection/components/bs-button/bs-button/bs-button.css +8 -2
- package/dist/collection/components/bs-button/bs-button/bs-button.js +4 -1
- package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.js +1 -1
- package/dist/collection/components/bs-button-skeleton/bs-button-skeleton.js +1 -1
- package/dist/collection/components/bs-card/bs-card.cmp.test.js +48 -0
- package/dist/collection/components/bs-card/bs-card.css +37 -16
- package/dist/collection/components/bs-card/bs-card.js +2 -2
- package/dist/collection/components/bs-chatbot-feedback/bs-chatbot-feedback.js +1 -1
- package/dist/collection/components/bs-chatbot-header/bs-chatbot-header.cmp.test.js +2 -2
- package/dist/collection/components/bs-chatbot-header/bs-chatbot-header.css +1 -1
- package/dist/collection/components/bs-chatbot-header/bs-chatbot-header.js +1 -1
- package/dist/collection/components/bs-chatbot-response-action/bs-chatbot-response-action.js +1 -1
- package/dist/collection/components/bs-chatbot-sources-drawer/bs-chatbot-sources-drawer.js +1 -1
- package/dist/collection/components/bs-chatbot-suggestion-button/bs-chatbot-suggestion-button.js +1 -1
- package/dist/collection/components/bs-checkbox/bs-checkbox-skeleton/bs-checkbox-skeleton.js +1 -1
- package/dist/collection/components/bs-composer/bs-composer.css +4 -2
- package/dist/collection/components/bs-cookie-consent/bs-cookie-consent.cmp.test.js +217 -0
- package/dist/collection/components/bs-cookie-consent/bs-cookie-consent.css +350 -0
- package/dist/collection/components/bs-cookie-consent/bs-cookie-consent.js +668 -0
- package/dist/collection/components/bs-cookie-consent/bs-cookie-consent.stories.js +103 -0
- package/dist/collection/components/bs-datepicker/bs-datepicker.cmp.test.js +9 -0
- package/dist/collection/components/bs-datepicker/bs-datepicker.css +21 -11
- package/dist/collection/components/bs-datepicker/bs-datepicker.js +13 -7
- package/dist/collection/components/bs-datepicker/bs-datepicker.stories.js +3 -2
- package/dist/collection/components/bs-error-page/bs-error-page.cmp.test.js +99 -0
- package/dist/collection/components/bs-error-page/bs-error-page.css +105 -0
- package/dist/collection/components/bs-error-page/bs-error-page.js +328 -0
- package/dist/collection/components/bs-error-page/bs-error-page.stories.js +57 -0
- package/dist/collection/components/bs-file-upload/bs-file-upload.js +1 -1
- package/dist/collection/components/bs-file-upload-item/bs-file-upload-item.js +1 -1
- package/dist/collection/components/bs-icon-tile/bs-icon-tile.cmp.test.js +175 -0
- package/dist/collection/components/bs-icon-tile/bs-icon-tile.css +112 -0
- package/dist/collection/components/bs-icon-tile/bs-icon-tile.js +158 -0
- package/dist/collection/components/bs-icon-tile/bs-icon-tile.stories.js +45 -0
- package/dist/collection/components/bs-input/bs-input.cmp.test.js +16 -2
- package/dist/collection/components/bs-input/bs-input.css +15 -23
- package/dist/collection/components/bs-input/bs-input.js +8 -4
- package/dist/collection/components/bs-menu/bs-menu.js +1 -1
- package/dist/collection/components/bs-menu-item/bs-menu-item.js +1 -1
- package/dist/collection/components/bs-onboarding-checklist/bs-onboarding-checklist.cmp.test.js +280 -0
- package/dist/collection/components/bs-onboarding-checklist/bs-onboarding-checklist.css +488 -0
- package/dist/collection/components/bs-onboarding-checklist/bs-onboarding-checklist.js +674 -0
- package/dist/collection/components/bs-onboarding-checklist/bs-onboarding-checklist.stories.js +92 -0
- package/dist/collection/components/bs-pagination/bs-pagination.js +1 -1
- package/dist/collection/components/bs-product-tour/bs-product-tour.cmp.test.js +116 -0
- package/dist/collection/components/bs-product-tour/bs-product-tour.css +265 -0
- package/dist/collection/components/bs-product-tour/bs-product-tour.js +391 -0
- package/dist/collection/components/bs-product-tour/bs-product-tour.stories.js +68 -0
- package/dist/collection/components/bs-progress/bs-progress.js +2 -2
- package/dist/collection/components/bs-progress-linear/bs-progress-linear.css +1 -1
- package/dist/collection/components/bs-progress-linear/bs-progress-linear.js +2 -2
- package/dist/collection/components/bs-qr-code/bs-qr-code.cmp.test.js +152 -0
- package/dist/collection/components/bs-qr-code/bs-qr-code.css +307 -0
- package/dist/collection/components/bs-qr-code/bs-qr-code.js +767 -0
- package/dist/collection/components/bs-qr-code/bs-qr-code.stories.js +99 -0
- package/dist/collection/components/bs-radio/bs-radio.js +1 -1
- package/dist/collection/components/bs-session-timeout/bs-session-timeout.cmp.test.js +202 -0
- package/dist/collection/components/bs-session-timeout/bs-session-timeout.css +239 -0
- package/dist/collection/components/bs-session-timeout/bs-session-timeout.js +772 -0
- package/dist/collection/components/bs-session-timeout/bs-session-timeout.stories.js +88 -0
- package/dist/collection/components/bs-slider/bs-slider.js +1 -1
- package/dist/collection/components/bs-snackbar/bs-snackbar.cmp.test.js +20 -0
- package/dist/collection/components/bs-snackbar/bs-snackbar.css +6 -4
- package/dist/collection/components/bs-snackbar/bs-snackbar.js +53 -1
- package/dist/collection/components/bs-source-link/bs-source-link.js +2 -2
- package/dist/collection/components/bs-stepper/bs-stepper/bs-stepper.js +1 -1
- package/dist/collection/components/bs-stepper/bs-stepper-step/bs-stepper-step.js +1 -1
- package/dist/collection/components/bs-switch/bs-switch.js +1 -1
- package/dist/collection/components/bs-tab/bs-inline-tab/bs-inline-tab.js +1 -1
- package/dist/collection/components/bs-tab/bs-tab/bs-tab.js +1 -1
- package/dist/collection/components/bs-tab/bs-tabs/bs-tabs.js +1 -1
- package/dist/collection/components/bs-timepicker/bs-timepicker.css +15 -11
- package/dist/collection/components/bs-timepicker/bs-timepicker.js +4 -2
- package/dist/collection/components/bs-toast/bs-toast.js +1 -1
- package/dist/collection/components/bs-tooltip/bs-tooltip.js +1 -1
- package/dist/collection/components/bs-whats-new/bs-whats-new.cmp.test.js +200 -0
- package/dist/collection/components/bs-whats-new/bs-whats-new.css +315 -0
- package/dist/collection/components/bs-whats-new/bs-whats-new.js +790 -0
- package/dist/collection/components/bs-whats-new/bs-whats-new.stories.js +105 -0
- package/dist/collection/components/bs-whats-new-entry/bs-whats-new-entry.cmp.test.js +79 -0
- package/dist/collection/components/bs-whats-new-entry/bs-whats-new-entry.css +131 -0
- package/dist/collection/components/bs-whats-new-entry/bs-whats-new-entry.js +295 -0
- package/dist/collection/components/bs-whats-new-entry/bs-whats-new-entry.stories.js +67 -0
- package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.js +2 -2
- 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.js +1 -1
- 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-cookie-consent.d.ts +11 -0
- package/dist/components/bs-cookie-consent.js +1 -0
- package/dist/components/bs-data-table.js +1 -1
- package/dist/components/bs-datepicker.js +1 -1
- package/dist/components/bs-dialog.js +1 -1
- package/dist/components/bs-error-page.d.ts +11 -0
- package/dist/components/bs-error-page.js +1 -0
- 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-icon-tile.d.ts +11 -0
- package/dist/components/bs-icon-tile.js +1 -0
- 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-onboarding-checklist.d.ts +11 -0
- package/dist/components/bs-onboarding-checklist.js +1 -0
- package/dist/components/bs-pagination.js +1 -1
- package/dist/components/bs-product-tour.d.ts +11 -0
- package/dist/components/bs-product-tour.js +1 -0
- package/dist/components/bs-progress-linear.js +1 -1
- package/dist/components/bs-progress.js +1 -1
- package/dist/components/bs-qr-code.d.ts +11 -0
- package/dist/components/bs-qr-code.js +1 -0
- package/dist/components/bs-radio.js +1 -1
- package/dist/components/bs-session-timeout.d.ts +11 -0
- package/dist/components/bs-session-timeout.js +1 -0
- 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-timepicker.js +1 -1
- package/dist/components/bs-toast.js +1 -1
- package/dist/components/bs-tooltip.js +1 -1
- package/dist/components/bs-whats-new-entry.d.ts +11 -0
- package/dist/components/bs-whats-new-entry.js +1 -0
- package/dist/components/bs-whats-new.d.ts +11 -0
- package/dist/components/bs-whats-new.js +1 -0
- package/dist/components/index.js +1 -1
- package/dist/components/{p-R2MlkUzD.js → p-BEEoVNRu.js} +1 -1
- package/dist/components/p-BUskqBR6.js +1 -0
- package/dist/components/{p-DkIVyFOP.js → p-BZ3M4lOU.js} +1 -1
- package/dist/components/{p-ZK8p5zax.js → p-Be9L4_Fe.js} +1 -1
- package/dist/components/p-Be_Pmccm.js +1 -0
- package/dist/components/{p-CPvqZNO8.js → p-Bl_tVzeq.js} +1 -1
- package/dist/components/p-C8yT2Ucq.js +1 -0
- package/dist/components/p-CA31vqjL.js +1 -0
- package/dist/components/p-CUfs0ROR.js +1 -0
- package/dist/components/{p-JYlmcxBn.js → p-CVrEuVFo.js} +1 -1
- package/dist/components/{p-B7Icv1ho.js → p-C_j_jDM6.js} +1 -1
- package/dist/components/p-CbimDNGY.js +1 -0
- package/dist/components/p-CeUK3n7D.js +1 -0
- package/dist/components/p-CncySD_-.js +1 -0
- package/dist/components/p-DE8K7fg0.js +1 -0
- package/dist/components/p-Dr0Qk9Zc.js +1 -0
- package/dist/components/p-DuLL7Ouw.js +1 -0
- package/dist/components/p-YsHQLXET.js +1 -0
- package/dist/components/p-qmS2CBqi.js +1 -0
- package/dist/components/{p-BYR_ZC8v.js → p-zTHlbyH6.js} +1 -1
- package/dist/esm/brandsync-wc.js +3 -3
- package/dist/esm/bs-accordion.entry.js +1 -1
- package/dist/esm/bs-ai-disclaimer.entry.js +2 -2
- package/dist/esm/bs-ai-greeting.entry.js +2 -2
- package/dist/esm/bs-ai-thinking.entry.js +2 -2
- package/dist/esm/bs-attachment-list.entry.js +2 -2
- package/dist/esm/bs-attachment.entry.js +1 -1
- 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 +1 -1
- package/dist/esm/bs-breadcrumb.entry.js +6 -3
- package/dist/esm/bs-breadcrumbs.entry.js +2 -2
- package/dist/esm/bs-button-skeleton.entry.js +2 -2
- package/dist/esm/bs-button.entry.js +3 -3
- package/dist/esm/bs-card.entry.js +3 -3
- 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 +3 -3
- package/dist/esm/bs-chatbot-response-action.entry.js +2 -2
- package/dist/esm/bs-chatbot-sources-drawer.entry.js +2 -2
- package/dist/esm/bs-chatbot-suggestion-button.entry.js +2 -2
- package/dist/esm/bs-checkbox-skeleton.entry.js +2 -2
- package/dist/esm/bs-checkbox.entry.js +1 -1
- package/dist/esm/bs-chip-filter.entry.js +1 -1
- package/dist/esm/bs-chip-informative.entry.js +1 -1
- package/dist/esm/bs-chip-input.entry.js +1 -1
- package/dist/esm/bs-composer-status-banner.entry.js +1 -1
- package/dist/esm/bs-composer.entry.js +2 -2
- package/dist/esm/bs-cookie-consent.entry.js +184 -0
- package/dist/esm/bs-data-table.entry.js +1 -1
- package/dist/esm/bs-datepicker.entry.js +13 -9
- package/dist/esm/bs-dialog.entry.js +1 -1
- package/dist/esm/bs-error-page.entry.js +101 -0
- package/dist/esm/bs-file-upload-item.entry.js +2 -2
- package/dist/esm/bs-file-upload.entry.js +2 -2
- package/dist/esm/bs-icon-button.entry.js +2 -2
- package/dist/esm/bs-icon-tile.entry.js +50 -0
- package/dist/esm/bs-inline-tab.entry.js +2 -2
- package/dist/esm/{bs-input_2.entry.js → bs-input_3.entry.js} +42 -7
- package/dist/esm/bs-logo.entry.js +1 -1
- package/dist/esm/bs-navigation-drawer-item.entry.js +2 -2
- package/dist/esm/bs-navigation-drawer.entry.js +3 -3
- package/dist/esm/bs-navigation-header.entry.js +2 -2
- package/dist/esm/bs-onboarding-checklist.entry.js +159 -0
- package/dist/esm/bs-pagination.entry.js +2 -2
- package/dist/esm/bs-product-tour.entry.js +76 -0
- package/dist/esm/bs-progress-linear.entry.js +4 -4
- package/dist/esm/bs-progress.entry.js +3 -3
- package/dist/esm/bs-qr-code.entry.js +146 -0
- package/dist/esm/bs-radio.entry.js +2 -2
- package/dist/esm/bs-session-timeout.entry.js +213 -0
- package/dist/esm/bs-slider.entry.js +2 -2
- package/dist/esm/bs-snackbar.entry.js +9 -3
- package/dist/esm/bs-source-link.entry.js +3 -3
- package/dist/esm/bs-stepper-step.entry.js +2 -2
- package/dist/esm/bs-stepper.entry.js +2 -2
- package/dist/esm/bs-switch.entry.js +2 -2
- package/dist/esm/bs-tab_3.entry.js +251 -0
- package/dist/esm/bs-timepicker.entry.js +4 -4
- package/dist/esm/bs-toast.entry.js +2 -2
- package/dist/esm/bs-tooltip.entry.js +2 -2
- package/dist/esm/bs-whats-new.entry.js +142 -0
- package/dist/esm/{index-AgoOSYvW.js → index-DqQRXQMx.js} +15 -3
- package/dist/esm/loader.js +3 -3
- package/dist/types/components/bs-attachment/bs-attachment.stories.d.ts +1 -1
- package/dist/types/components/bs-breadcrumb/bs-breadcrumb/bs-breadcrumb.d.ts +4 -1
- package/dist/types/components/bs-button/bs-button/bs-button.d.ts +3 -0
- package/dist/types/components/bs-cookie-consent/bs-cookie-consent.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-cookie-consent/bs-cookie-consent.d.ts +136 -0
- package/dist/types/components/bs-cookie-consent/bs-cookie-consent.stories.d.ts +16 -0
- package/dist/types/components/bs-datepicker/bs-datepicker.d.ts +2 -0
- package/dist/types/components/bs-error-page/bs-error-page.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-error-page/bs-error-page.d.ts +60 -0
- package/dist/types/components/bs-error-page/bs-error-page.stories.d.ts +22 -0
- package/dist/types/components/bs-icon-tile/bs-icon-tile.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-icon-tile/bs-icon-tile.d.ts +40 -0
- package/dist/types/components/bs-icon-tile/bs-icon-tile.stories.d.ts +13 -0
- package/dist/types/components/bs-input/bs-input.d.ts +4 -1
- package/dist/types/components/bs-onboarding-checklist/bs-onboarding-checklist.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-onboarding-checklist/bs-onboarding-checklist.d.ts +140 -0
- package/dist/types/components/bs-onboarding-checklist/bs-onboarding-checklist.stories.d.ts +18 -0
- package/dist/types/components/bs-product-tour/bs-product-tour.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-product-tour/bs-product-tour.d.ts +78 -0
- package/dist/types/components/bs-product-tour/bs-product-tour.stories.d.ts +19 -0
- package/dist/types/components/bs-qr-code/bs-qr-code.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-qr-code/bs-qr-code.d.ts +124 -0
- package/dist/types/components/bs-qr-code/bs-qr-code.stories.d.ts +28 -0
- package/dist/types/components/bs-session-timeout/bs-session-timeout.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-session-timeout/bs-session-timeout.d.ts +141 -0
- package/dist/types/components/bs-session-timeout/bs-session-timeout.stories.d.ts +19 -0
- package/dist/types/components/bs-snackbar/bs-snackbar.d.ts +7 -0
- package/dist/types/components/bs-timepicker/bs-timepicker.d.ts +2 -0
- package/dist/types/components/bs-whats-new/bs-whats-new.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-whats-new/bs-whats-new.d.ts +147 -0
- package/dist/types/components/bs-whats-new/bs-whats-new.stories.d.ts +14 -0
- package/dist/types/components/bs-whats-new-entry/bs-whats-new-entry.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-whats-new-entry/bs-whats-new-entry.d.ts +53 -0
- package/dist/types/components/bs-whats-new-entry/bs-whats-new-entry.stories.d.ts +18 -0
- package/dist/types/components.d.ts +2642 -98
- package/package.json +3 -2
- package/dist/brandsync-wc/p-1c3a43c7.entry.js +0 -1
- package/dist/brandsync-wc/p-1c427ffb.entry.js +0 -1
- package/dist/brandsync-wc/p-4f2c4929.entry.js +0 -1
- package/dist/brandsync-wc/p-76e1c295.entry.js +0 -1
- package/dist/brandsync-wc/p-790db8b3.entry.js +0 -1
- package/dist/brandsync-wc/p-796a1860.entry.js +0 -1
- package/dist/brandsync-wc/p-806a5347.entry.js +0 -1
- package/dist/brandsync-wc/p-addfa0a0.entry.js +0 -1
- package/dist/brandsync-wc/p-c9a72416.entry.js +0 -1
- package/dist/brandsync-wc/p-d42b1c2b.entry.js +0 -1
- package/dist/brandsync-wc/p-f006d962.entry.js +0 -1
- package/dist/brandsync-wc/p-f074f94e.entry.js +0 -1
- package/dist/cjs/bs-menu.cjs.entry.js +0 -39
- package/dist/cjs/bs-tab.cjs.entry.js +0 -88
- package/dist/cjs/bs-tabs.cjs.entry.js +0 -133
- package/dist/components/p-BTvme8CE.js +0 -1
- package/dist/components/p-Ba860ej1.js +0 -1
- package/dist/components/p-CpUHnsq9.js +0 -1
- package/dist/components/p-jDO25SfF.js +0 -1
- package/dist/esm/bs-menu.entry.js +0 -37
- package/dist/esm/bs-tab.entry.js +0 -86
- package/dist/esm/bs-tabs.entry.js +0 -131
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { EventEmitter } from '../../stencil-public-runtime';
|
|
2
|
+
export type BsQrCodeType = 'default' | 'payment';
|
|
3
|
+
export type BsQrCodeSize = 'sm' | 'md' | 'lg';
|
|
4
|
+
export type BsQrCodeState = 'default' | 'loading' | 'error' | 'expired' | 'scanned';
|
|
5
|
+
/**
|
|
6
|
+
* A block for sharing a link or taking a payment by QR code: a heading, the code on a white quiet
|
|
7
|
+
* zone, the URL (or the amount, for payments) as text, an optional expiry chip, and Download and
|
|
8
|
+
* Copy link actions. Matches the Figma "QR code" component (3 sizes x 2 types x 5 states, plus the
|
|
9
|
+
* "with logo" variant).
|
|
10
|
+
*
|
|
11
|
+
* **This component draws a code, it doesn't encode one.** Generate the real code in your product
|
|
12
|
+
* with a QR library and hand it over either as a `matrix` (a square `boolean[][]`, `true` = dark
|
|
13
|
+
* module) or as your own element in the `code` slot (an `<img>`, `<svg>` or `<canvas>`).
|
|
14
|
+
*
|
|
15
|
+
* The code always sits on a white quiet zone with black modules, in dark mode too -- scanners need
|
|
16
|
+
* the contrast.
|
|
17
|
+
*
|
|
18
|
+
* **Built from:** `bs-card` (the surface), `bs-button` (Download, Copy link, Retry, Refresh), `bs-progress` (the loading spinner), `bs-chip-informative` (the expiry chip), `bs-icon-button` (the close button).
|
|
19
|
+
*
|
|
20
|
+
* ## When to use
|
|
21
|
+
* - Sharing a link to an order, document or page that someone will open on a phone.
|
|
22
|
+
* - Taking a payment with an amount (`type="payment"`).
|
|
23
|
+
*
|
|
24
|
+
* ## When not to use
|
|
25
|
+
* - Encoding long text blobs -- a QR code that dense is hard to scan at the sizes here.
|
|
26
|
+
*
|
|
27
|
+
* ## States
|
|
28
|
+
* `loading` (generating the code), `error` (couldn't generate it; Retry), `expired` (Refresh) and
|
|
29
|
+
* `scanned` (done: "Scanned", or "Payment received" for payments). Download and Copy link are disabled
|
|
30
|
+
* in every state but `default`, and hidden once `scanned`.
|
|
31
|
+
*
|
|
32
|
+
* @slot code - The code itself (`<img>`, `<svg>`, `<canvas>`), used instead of `matrix`.
|
|
33
|
+
* @slot logo - Optional logo centred over the code. Use a high error-correction level when you
|
|
34
|
+
* generate the code so it still scans.
|
|
35
|
+
* @part container - The outer card.
|
|
36
|
+
* @part close - The close button (when `closable`).
|
|
37
|
+
* @part head - The heading + description.
|
|
38
|
+
* @part title - The heading.
|
|
39
|
+
* @part description - The description under the heading.
|
|
40
|
+
* @part qr - The bordered white box holding the code and any state overlay.
|
|
41
|
+
* @part code - The white square the code is drawn on.
|
|
42
|
+
* @part logo - The wrapper around the logo.
|
|
43
|
+
* @part overlay - The loading/error/expired/scanned panel covering the code.
|
|
44
|
+
* @part url - The URL chip (`type="default"`).
|
|
45
|
+
* @part amount - The amount block (`type="payment"`).
|
|
46
|
+
* @part expiry - The expiry chip.
|
|
47
|
+
* @part actions - The Download/Copy row.
|
|
48
|
+
* @part download - The Download button.
|
|
49
|
+
* @part copy - The Copy link button.
|
|
50
|
+
*/
|
|
51
|
+
export declare class BsQrCode {
|
|
52
|
+
/** `default` shows the URL under the code; `payment` shows the amount instead. */
|
|
53
|
+
type: BsQrCodeType;
|
|
54
|
+
/** Card size: `sm`, `md` (default) or `lg`. */
|
|
55
|
+
size: BsQrCodeSize;
|
|
56
|
+
/** `default`, or one of the overlay states: `loading`, `error`, `expired`, `scanned`. */
|
|
57
|
+
state: BsQrCodeState;
|
|
58
|
+
/** Heading text. */
|
|
59
|
+
heading: string;
|
|
60
|
+
/** Line under the heading. */
|
|
61
|
+
description?: string;
|
|
62
|
+
/** The link shown as text under the code (`type="default"`), and copied by Copy link. */
|
|
63
|
+
url?: string;
|
|
64
|
+
/** The amount shown under the code (`type="payment"`), e.g. `"148,00 kr"`. */
|
|
65
|
+
amount?: string;
|
|
66
|
+
/** Small label above the amount. */
|
|
67
|
+
amountLabel: string;
|
|
68
|
+
/** Text of the expiry chip, e.g. `"Expires in 04:59"`. No chip when empty. */
|
|
69
|
+
expiry?: string;
|
|
70
|
+
/** The code as a square matrix of modules, `true` = dark. Must be set as a JS property, not an
|
|
71
|
+
* HTML attribute -- see CONVENTIONS.md's non-string props rule. Ignored when the `code` slot is
|
|
72
|
+
* used. */
|
|
73
|
+
matrix?: boolean[][];
|
|
74
|
+
/** Accessible name for the code image, e.g. `"QR code for order SO-10482"`. Applies to `matrix`;
|
|
75
|
+
* give a slotted `<img>` its own `alt`. */
|
|
76
|
+
codeLabel: string;
|
|
77
|
+
/** Shows a close button in the corner. */
|
|
78
|
+
closable: boolean;
|
|
79
|
+
/** Hides the Download and Copy link row. */
|
|
80
|
+
hideActions: boolean;
|
|
81
|
+
/** Hides the Download button. */
|
|
82
|
+
hideDownload: boolean;
|
|
83
|
+
/** Hides the Copy link button. */
|
|
84
|
+
hideCopy: boolean;
|
|
85
|
+
/** Label of the Download button. */
|
|
86
|
+
downloadLabel: string;
|
|
87
|
+
/** Label of the Copy link button. */
|
|
88
|
+
copyLabel: string;
|
|
89
|
+
/** Label of the Retry button (`error`). */
|
|
90
|
+
retryLabel: string;
|
|
91
|
+
/** Label of the Refresh button (`expired`). */
|
|
92
|
+
refreshLabel: string;
|
|
93
|
+
/** Text in the `loading` overlay. */
|
|
94
|
+
loadingLabel: string;
|
|
95
|
+
/** Text in the `error` overlay. */
|
|
96
|
+
errorLabel: string;
|
|
97
|
+
/** Text in the `expired` overlay. */
|
|
98
|
+
expiredLabel: string;
|
|
99
|
+
/** Text in the `scanned` overlay. Defaults to "Payment received" for `type="payment"` and
|
|
100
|
+
* "Scanned" otherwise. */
|
|
101
|
+
scannedLabel?: string;
|
|
102
|
+
/** Accessible name of the close button. */
|
|
103
|
+
closeLabel: string;
|
|
104
|
+
/** Fires when Download is pressed. The component doesn't render a file; produce it from the code
|
|
105
|
+
* you generated. */
|
|
106
|
+
bsDownload: EventEmitter<void>;
|
|
107
|
+
/** Fires when Copy link is pressed, after the component tries to put `url` on the clipboard.
|
|
108
|
+
* `{ url }` is the `url` prop. */
|
|
109
|
+
bsCopy: EventEmitter<{
|
|
110
|
+
url?: string;
|
|
111
|
+
}>;
|
|
112
|
+
/** Fires when Retry is pressed (`error` state). Set `state` back to `loading` yourself. */
|
|
113
|
+
bsRetry: EventEmitter<void>;
|
|
114
|
+
/** Fires when Refresh is pressed (`expired` state). Set `state` back to `loading` yourself. */
|
|
115
|
+
bsRefresh: EventEmitter<void>;
|
|
116
|
+
/** Fires when the close button is pressed. */
|
|
117
|
+
bsClose: EventEmitter<void>;
|
|
118
|
+
/** True while something is assigned to the `logo` slot, so the white plate behind it only shows then. */
|
|
119
|
+
hasLogo: boolean;
|
|
120
|
+
private onCopy;
|
|
121
|
+
private renderMatrix;
|
|
122
|
+
private renderOverlay;
|
|
123
|
+
render(): any;
|
|
124
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/web-components-vite';
|
|
2
|
+
interface BsQrCodeArgs {
|
|
3
|
+
type: 'default' | 'payment';
|
|
4
|
+
size: 'sm' | 'md' | 'lg';
|
|
5
|
+
state: 'default' | 'loading' | 'error' | 'expired' | 'scanned';
|
|
6
|
+
heading: string;
|
|
7
|
+
description: string;
|
|
8
|
+
url: string;
|
|
9
|
+
amount: string;
|
|
10
|
+
expiry: string;
|
|
11
|
+
closable: boolean;
|
|
12
|
+
hideActions: boolean;
|
|
13
|
+
}
|
|
14
|
+
declare const meta: Meta<BsQrCodeArgs>;
|
|
15
|
+
export default meta;
|
|
16
|
+
type Story = StoryObj<BsQrCodeArgs>;
|
|
17
|
+
export declare const Default: Story;
|
|
18
|
+
export declare const Payment: Story;
|
|
19
|
+
export declare const WithLogo: Story;
|
|
20
|
+
export declare const Small: Story;
|
|
21
|
+
export declare const Large: Story;
|
|
22
|
+
export declare const Loading: Story;
|
|
23
|
+
export declare const Error: Story;
|
|
24
|
+
export declare const Expired: Story;
|
|
25
|
+
export declare const Scanned: Story;
|
|
26
|
+
export declare const PaymentReceived: Story;
|
|
27
|
+
export declare const WithExpiry: Story;
|
|
28
|
+
export declare const Closable: Story;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { EventEmitter } from '../../stencil-public-runtime';
|
|
2
|
+
export type BsSessionTimeoutType = 'warning' | 'signed-out' | 'confirm-identity';
|
|
3
|
+
export interface BsSessionTimeoutAlternative {
|
|
4
|
+
/** Identifier echoed back in `bsAlternative`. */
|
|
5
|
+
id: string;
|
|
6
|
+
label: string;
|
|
7
|
+
/** Built-in glyph: `fingerprint` (default) or `key`. */
|
|
8
|
+
icon?: 'fingerprint' | 'key';
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* The three moments around an expiring session, as one card. Matches the Figma "Session timeout"
|
|
12
|
+
* component's three types:
|
|
13
|
+
*
|
|
14
|
+
* - `warning` -- "You'll be signed out soon": a live countdown with a draining bar, an optional
|
|
15
|
+
* "your work is saved" note, and Sign out now / Stay signed in.
|
|
16
|
+
* - `signed-out` -- "You've been signed out": who was signed in, with Sign in again and Use a different
|
|
17
|
+
* account.
|
|
18
|
+
* - `confirm-identity` -- "Confirm it's you": a fresh password check before a sensitive action, with
|
|
19
|
+
* passkey / BankID alternatives and Cancel.
|
|
20
|
+
*
|
|
21
|
+
* The component never signs anyone in or out. It shows the state and emits `bsPrimary`, `bsSecondary`,
|
|
22
|
+
* `bsAlternative`, `bsCancel` and `bsExpire`; your app talks to the identity provider.
|
|
23
|
+
*
|
|
24
|
+
* **Built from:** `bs-card` (the surface), `bs-icon-tile` (the icon), `bs-button` (the actions),
|
|
25
|
+
* `bs-progress-linear` (the countdown bar), `bs-avatar` (the signed-in account), `bs-input` (the
|
|
26
|
+
* password field).
|
|
27
|
+
*
|
|
28
|
+
* ## When to use
|
|
29
|
+
* - Warning someone, before it happens, that an inactivity timeout is about to end their session.
|
|
30
|
+
* - Telling someone their session ended, and letting them pick up where they left off.
|
|
31
|
+
* - Asking for a fresh credential before a sensitive action.
|
|
32
|
+
*
|
|
33
|
+
* ## When not to use
|
|
34
|
+
* - A first-time sign-in page -- this assumes there was a session.
|
|
35
|
+
* - Anything that is not about the session or the user's identity -- use `bs-dialog`.
|
|
36
|
+
*
|
|
37
|
+
* ## Accessibility
|
|
38
|
+
* The card is a labelled region. The countdown is a `timer` and is *not* announced every second; a polite
|
|
39
|
+
* live region announces the time left at 60, 30 and 10 seconds instead. Wrap the card in your own modal
|
|
40
|
+
* (`bs-dialog`) if the warning must trap focus.
|
|
41
|
+
*
|
|
42
|
+
* @slot icon - Replaces the default glyph in the icon tile. Draw it with `currentColor`.
|
|
43
|
+
* @part container - The card.
|
|
44
|
+
* @part art - The icon tile.
|
|
45
|
+
* @part heading - The heading.
|
|
46
|
+
* @part description - The paragraph under it.
|
|
47
|
+
* @part countdown - The countdown box (`warning`).
|
|
48
|
+
* @part time - The big `m:ss` time (`warning`).
|
|
49
|
+
* @part saved - The "work is saved" note (`warning`).
|
|
50
|
+
* @part account - The signed-in account summary (`signed-out`).
|
|
51
|
+
* @part password - The password field (`confirm-identity`).
|
|
52
|
+
* @part divider - The "or" divider (`confirm-identity`).
|
|
53
|
+
* @part alternatives - The alternative sign-in buttons (`confirm-identity`).
|
|
54
|
+
* @part actions - The action buttons.
|
|
55
|
+
* @part primary - The primary button.
|
|
56
|
+
* @part secondary - The secondary button.
|
|
57
|
+
* @part cancel - The Cancel button (`confirm-identity`).
|
|
58
|
+
*/
|
|
59
|
+
export declare class BsSessionTimeout {
|
|
60
|
+
el: HTMLElement;
|
|
61
|
+
/** Which moment: `warning`, `signed-out` or `confirm-identity`. */
|
|
62
|
+
type: BsSessionTimeoutType;
|
|
63
|
+
/** Heading. Defaults per `type`. */
|
|
64
|
+
heading?: string;
|
|
65
|
+
/** HTML heading level, 1-6. */
|
|
66
|
+
headingLevel: number;
|
|
67
|
+
/** Paragraph under the heading. Defaults per `type`. */
|
|
68
|
+
description?: string;
|
|
69
|
+
/** Hides the icon tile. */
|
|
70
|
+
hideIcon: boolean;
|
|
71
|
+
/** Label of the primary button. Defaults per `type` ("Stay signed in", "Sign in again", "Confirm"). */
|
|
72
|
+
primaryLabel?: string;
|
|
73
|
+
/** Label of the secondary button. Defaults per `type` ("Sign out now", "Use a different account"); none for
|
|
74
|
+
* `confirm-identity`. Set to an empty string to hide it. */
|
|
75
|
+
secondaryLabel?: string;
|
|
76
|
+
/** Seconds left before the session ends (`warning`). Mutable: with `countdown` the component
|
|
77
|
+
* decrements it itself; otherwise drive it from your own timer. */
|
|
78
|
+
secondsLeft: number;
|
|
79
|
+
/** Length of the warning window in seconds, for the bar: it shows `secondsLeft / totalSeconds`.
|
|
80
|
+
* Defaults to the `secondsLeft` it first had. */
|
|
81
|
+
totalSeconds: number;
|
|
82
|
+
/** Count `secondsLeft` down once a second (`warning`), firing `bsExpire` at zero. */
|
|
83
|
+
countdown: boolean;
|
|
84
|
+
/** Text next to the time while a minute or more is left. */
|
|
85
|
+
timeLeftLabel: string;
|
|
86
|
+
/** Text next to the time under a minute. */
|
|
87
|
+
secondsLeftLabel: string;
|
|
88
|
+
/** Note under the countdown, e.g. "Your draft of INV-2041 is saved automatically." Hidden when empty. */
|
|
89
|
+
savedMessage?: string;
|
|
90
|
+
/** Name of the account that was signed in (`signed-out`). */
|
|
91
|
+
accountName?: string;
|
|
92
|
+
/** Email of the account that was signed in (`signed-out`). */
|
|
93
|
+
accountEmail?: string;
|
|
94
|
+
/** Initials in the avatar (`signed-out`). Derived from `accountName` when not set. */
|
|
95
|
+
accountInitials?: string;
|
|
96
|
+
/** Label of the password field. */
|
|
97
|
+
passwordLabel: string;
|
|
98
|
+
/** Error shown under the password field, e.g. after a wrong password. */
|
|
99
|
+
passwordError?: string;
|
|
100
|
+
/** Label of the divider between the password and the alternatives. */
|
|
101
|
+
dividerLabel: string;
|
|
102
|
+
/** Other ways to confirm, shown as outlined buttons under the divider: `[{ id, label, icon? }]`.
|
|
103
|
+
* Defaults to a passkey and a BankID button. Must be set as a JS property, not an HTML attribute --
|
|
104
|
+
* see CONVENTIONS.md's non-string props rule. Set `[]` to hide them. */
|
|
105
|
+
alternatives: BsSessionTimeoutAlternative[];
|
|
106
|
+
/** Label of the Cancel button (`confirm-identity`). Set to an empty string to hide it. */
|
|
107
|
+
cancelLabel: string;
|
|
108
|
+
/** Fires when the primary button is pressed. For `confirm-identity` the detail is
|
|
109
|
+
* `{ password }`; otherwise it is empty. */
|
|
110
|
+
bsPrimary: EventEmitter<{
|
|
111
|
+
password?: string;
|
|
112
|
+
} | void>;
|
|
113
|
+
/** Fires when the secondary button is pressed. */
|
|
114
|
+
bsSecondary: EventEmitter<void>;
|
|
115
|
+
/** Fires when an alternative method is pressed (`confirm-identity`): `{ id }`. */
|
|
116
|
+
bsAlternative: EventEmitter<{
|
|
117
|
+
id: string;
|
|
118
|
+
}>;
|
|
119
|
+
/** Fires when Cancel is pressed (`confirm-identity`). */
|
|
120
|
+
bsCancel: EventEmitter<void>;
|
|
121
|
+
/** Fires once when `countdown` reaches zero. */
|
|
122
|
+
bsExpire: EventEmitter<void>;
|
|
123
|
+
password: string;
|
|
124
|
+
announcement: string;
|
|
125
|
+
initialTotal: number;
|
|
126
|
+
private timer?;
|
|
127
|
+
componentWillLoad(): void;
|
|
128
|
+
componentDidLoad(): void;
|
|
129
|
+
disconnectedCallback(): void;
|
|
130
|
+
connectedCallback(): void;
|
|
131
|
+
onTimerInputsChange(): void;
|
|
132
|
+
private stopTimer;
|
|
133
|
+
private syncTimer;
|
|
134
|
+
private tick;
|
|
135
|
+
private get defaults();
|
|
136
|
+
private renderHeading;
|
|
137
|
+
private renderWarning;
|
|
138
|
+
private renderAccount;
|
|
139
|
+
private renderConfirm;
|
|
140
|
+
render(): any;
|
|
141
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/web-components-vite';
|
|
2
|
+
interface BsSessionTimeoutArgs {
|
|
3
|
+
type: 'warning' | 'signed-out' | 'confirm-identity';
|
|
4
|
+
secondsLeft: number;
|
|
5
|
+
totalSeconds: number;
|
|
6
|
+
countdown: boolean;
|
|
7
|
+
savedMessage: string;
|
|
8
|
+
accountName: string;
|
|
9
|
+
accountEmail: string;
|
|
10
|
+
passwordError: string;
|
|
11
|
+
}
|
|
12
|
+
declare const meta: Meta<BsSessionTimeoutArgs>;
|
|
13
|
+
export default meta;
|
|
14
|
+
type Story = StoryObj<BsSessionTimeoutArgs>;
|
|
15
|
+
export declare const Warning: Story;
|
|
16
|
+
export declare const LiveCountdown: Story;
|
|
17
|
+
export declare const SignedOut: Story;
|
|
18
|
+
export declare const ConfirmIdentity: Story;
|
|
19
|
+
export declare const WrongPassword: Story;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { EventEmitter } from '../../stencil-public-runtime';
|
|
2
|
+
import type { BsButtonVariant } from '../bs-button/bs-button/bs-button';
|
|
2
3
|
export type BsSnackbarVariant = 'default' | 'info' | 'warning' | 'success' | 'error';
|
|
3
4
|
/**
|
|
4
5
|
* A transient status bar for confirming the result of an action (e.g. "Files uploaded
|
|
@@ -40,6 +41,12 @@ export declare class BsSnackbar {
|
|
|
40
41
|
/** Label for the optional action button (e.g. "Undo", "Retry"). Omit this prop entirely to
|
|
41
42
|
* render no action button at all -- its presence, not a boolean flag, is what shows it. */
|
|
42
43
|
actionLabel?: string;
|
|
44
|
+
/** Variant of the action button. Defaults to the one that matches `variant` (outlined for `default`).
|
|
45
|
+
* Use `subtle` for a plain text action; colour it with `--bs-button-subtle-color` on `::part(action)`. */
|
|
46
|
+
actionVariant?: BsButtonVariant;
|
|
47
|
+
/** Hides the close button, for a confirmation that goes away on its own or whose only control is
|
|
48
|
+
* the action. A snackbar with no way to dismiss it must be removed by the consumer. */
|
|
49
|
+
hideClose: boolean;
|
|
43
50
|
/** Fires when the action button is clicked. Ignored/never fires if `actionLabel` isn't set. */
|
|
44
51
|
bsAction: EventEmitter<void>;
|
|
45
52
|
/** Fires when the close button is clicked. This component doesn't remove itself from the DOM --
|
|
@@ -16,6 +16,8 @@ export interface BsTimepickerChange {
|
|
|
16
16
|
* The picker renders inline at a fixed width; to show it as a popover, put it in your own overlay
|
|
17
17
|
* and close that overlay from `bsChange`/`bsCancel`.
|
|
18
18
|
*
|
|
19
|
+
* **Built from:** `bs-card` (the surface), `bs-switch` (the 24h toggle), `bs-input` (the AM/PM dropdown), `bs-button` (Cancel/Confirm).
|
|
20
|
+
*
|
|
19
21
|
* ## When to use
|
|
20
22
|
* - Picking a time of day where the user steps through hours and minutes.
|
|
21
23
|
*
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import { EventEmitter } from '../../stencil-public-runtime';
|
|
2
|
+
import type { BsWhatsNewEntryTagColor } from '../bs-whats-new-entry/bs-whats-new-entry';
|
|
3
|
+
export type BsWhatsNewType = 'feed' | 'announcement' | 'teaser';
|
|
4
|
+
export interface BsWhatsNewItem {
|
|
5
|
+
/** Identifier echoed back in `bsEntryAction`. */
|
|
6
|
+
id: string;
|
|
7
|
+
/** Which filter tab this entry belongs to (matches a `filters[].value`). */
|
|
8
|
+
category?: string;
|
|
9
|
+
tag?: string;
|
|
10
|
+
tagColor?: BsWhatsNewEntryTagColor;
|
|
11
|
+
/** The date as text, formatted for the reader. */
|
|
12
|
+
date?: string;
|
|
13
|
+
unread?: boolean;
|
|
14
|
+
heading: string;
|
|
15
|
+
description?: string;
|
|
16
|
+
actionLabel?: string;
|
|
17
|
+
/** URL of an image shown above the title. */
|
|
18
|
+
image?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface BsWhatsNewFilter {
|
|
21
|
+
value: string;
|
|
22
|
+
label: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* A product's "What's new" surface, in three forms matching the Figma component:
|
|
26
|
+
*
|
|
27
|
+
* - `feed` -- a docked panel: heading, "Mark all as read", filter tabs, the list of updates (each a
|
|
28
|
+
* `bs-whats-new-entry`) and a link to the full release notes.
|
|
29
|
+
* - `announcement` -- one big update, with a hero image, a tag, a heading, a few bullet points, "1 of 3"
|
|
30
|
+
* and Remind me later / Next.
|
|
31
|
+
* - `teaser` -- a small card pointing at the feed: tag, date, heading, a line of text and "Open What's new".
|
|
32
|
+
*
|
|
33
|
+
* The component only shows what you give it and reports what the user pressed. It doesn't fetch updates,
|
|
34
|
+
* track which the user has seen, or decide when to appear: your app owns `entries` (with their `unread`
|
|
35
|
+
* flags) and reacts to the events.
|
|
36
|
+
*
|
|
37
|
+
* **Built from:** `bs-card` (the surface), `bs-whats-new-entry` (each update), `bs-tabs` (the filters),
|
|
38
|
+
* `bs-chip-informative` (the tags), `bs-button`, `bs-icon-button`.
|
|
39
|
+
*
|
|
40
|
+
* ## When to use
|
|
41
|
+
* - Telling users about changes to the product, in a place they can come back to.
|
|
42
|
+
*
|
|
43
|
+
* ## When not to use
|
|
44
|
+
* - Messages about the user's own data or an action they just took -- use `bs-snackbar`, `bs-toast`.
|
|
45
|
+
* - A guided walk through the interface -- use `bs-product-tour`.
|
|
46
|
+
*
|
|
47
|
+
* @slot hero - The hero image of the `announcement` (or any media). Use `image` for a plain URL.
|
|
48
|
+
* @part container - The card.
|
|
49
|
+
* @part heading - The heading.
|
|
50
|
+
* @part close - The close button.
|
|
51
|
+
* @part mark-all-read - The "Mark all as read" button (`feed`).
|
|
52
|
+
* @part filters - The filter tabs (`feed`).
|
|
53
|
+
* @part entries - The list of updates (`feed`).
|
|
54
|
+
* @part entry - Each update (`feed`).
|
|
55
|
+
* @part release-notes - The release notes link (`feed`).
|
|
56
|
+
* @part hero - The hero area (`announcement`).
|
|
57
|
+
* @part tag - The tag chip (`announcement`, `teaser`).
|
|
58
|
+
* @part points - The bullet list (`announcement`).
|
|
59
|
+
* @part step - The "1 of 3" label (`announcement`).
|
|
60
|
+
* @part secondary - The Remind me later button (`announcement`).
|
|
61
|
+
* @part primary - The Next button (`announcement`).
|
|
62
|
+
* @part date - The date (`teaser`).
|
|
63
|
+
* @part description - The text (`teaser`).
|
|
64
|
+
* @part action - The Open What's new link (`teaser`).
|
|
65
|
+
*/
|
|
66
|
+
export declare class BsWhatsNew {
|
|
67
|
+
/** Which form: `feed`, `announcement` or `teaser`. */
|
|
68
|
+
type: BsWhatsNewType;
|
|
69
|
+
/** Heading. Defaults to "What's new" for `feed`; set it for the other forms. */
|
|
70
|
+
heading?: string;
|
|
71
|
+
/** HTML heading level, 1-6. */
|
|
72
|
+
headingLevel: number;
|
|
73
|
+
/** Shows a close button. */
|
|
74
|
+
closable: boolean;
|
|
75
|
+
/** Accessible name of the close button. */
|
|
76
|
+
closeLabel: string;
|
|
77
|
+
/** The updates in the feed: `[{ id, category?, tag?, tagColor?, date?, unread?, heading, description?,
|
|
78
|
+
* actionLabel?, image? }]`. Must be set as a JS property, not an HTML attribute -- see CONVENTIONS.md's
|
|
79
|
+
* non-string props rule. */
|
|
80
|
+
entries: BsWhatsNewItem[];
|
|
81
|
+
/** The filter tabs: `[{ value, label }]`. `value: "all"` shows every entry; any other value shows the
|
|
82
|
+
* entries whose `category` matches. Defaults to All, New Features, Improvements and Fixes
|
|
83
|
+
* (categories `features`, `improvements`, `fixes`). Set `[]` for no tabs. */
|
|
84
|
+
filters: BsWhatsNewFilter[];
|
|
85
|
+
/** The selected filter's `value`. Mutable: choosing a tab updates it. */
|
|
86
|
+
filter: string;
|
|
87
|
+
/** Label of the "Mark all as read" button, shown while any entry is `unread`. */
|
|
88
|
+
markAllReadLabel: string;
|
|
89
|
+
/** Text of the release notes link. */
|
|
90
|
+
releaseNotesLabel: string;
|
|
91
|
+
/** URL of the full release notes. The link is only shown when this is set. */
|
|
92
|
+
releaseNotesUrl?: string;
|
|
93
|
+
/** Text shown when the selected filter has no entries. */
|
|
94
|
+
emptyLabel: string;
|
|
95
|
+
/** Tag text (`announcement`, `teaser`), e.g. "New feature". */
|
|
96
|
+
tag?: string;
|
|
97
|
+
/** Colour of the tag. */
|
|
98
|
+
tagColor: BsWhatsNewEntryTagColor;
|
|
99
|
+
/** URL of the hero image (`announcement`). Or slot your own into `hero`. */
|
|
100
|
+
image?: string;
|
|
101
|
+
/** The bullet points (`announcement`). Must be set as a JS property -- see CONVENTIONS.md. */
|
|
102
|
+
points: string[];
|
|
103
|
+
/** Current step, 1-based (`announcement`). Used with `total`. */
|
|
104
|
+
step: number;
|
|
105
|
+
/** Number of announcements in the sequence (`announcement`). The step label is hidden when 0. */
|
|
106
|
+
total: number;
|
|
107
|
+
/** Template of the step label; `{step}` and `{total}` are replaced. */
|
|
108
|
+
stepLabel: string;
|
|
109
|
+
/** Label of the secondary button (`announcement`). Empty hides it. */
|
|
110
|
+
secondaryLabel: string;
|
|
111
|
+
/** Label of the primary button (`announcement`). Empty hides it. */
|
|
112
|
+
primaryLabel: string;
|
|
113
|
+
/** The date as text (`teaser`). */
|
|
114
|
+
date?: string;
|
|
115
|
+
/** The line under the heading (`teaser`). */
|
|
116
|
+
description?: string;
|
|
117
|
+
/** Label of the link (`teaser`). */
|
|
118
|
+
actionLabel: string;
|
|
119
|
+
/** Fires when "Mark all as read" is pressed (`feed`). Update the entries' `unread` yourself. */
|
|
120
|
+
bsMarkAllRead: EventEmitter<void>;
|
|
121
|
+
/** Fires when an entry's action link is pressed (`feed`): `{ id }`. */
|
|
122
|
+
bsEntryAction: EventEmitter<{
|
|
123
|
+
id: string;
|
|
124
|
+
}>;
|
|
125
|
+
/** Fires when the user picks a filter tab (`feed`): `{ value }`. */
|
|
126
|
+
bsFilterChange: EventEmitter<{
|
|
127
|
+
value: string;
|
|
128
|
+
}>;
|
|
129
|
+
/** Fires when the close button is pressed. */
|
|
130
|
+
bsClose: EventEmitter<void>;
|
|
131
|
+
/** Fires when the primary button (`announcement`) is pressed. */
|
|
132
|
+
bsPrimary: EventEmitter<void>;
|
|
133
|
+
/** Fires when the secondary button (`announcement`) is pressed. */
|
|
134
|
+
bsSecondary: EventEmitter<void>;
|
|
135
|
+
/** Fires when the teaser's link is pressed (`teaser`) -- open the feed. */
|
|
136
|
+
bsOpen: EventEmitter<void>;
|
|
137
|
+
/** True while something is assigned to the `hero` slot, so the hero area only exists then. */
|
|
138
|
+
hasHeroSlot: boolean;
|
|
139
|
+
private heading_;
|
|
140
|
+
private renderClose;
|
|
141
|
+
private renderTag;
|
|
142
|
+
private renderFeed;
|
|
143
|
+
private onFilter;
|
|
144
|
+
private renderAnnouncement;
|
|
145
|
+
private renderTeaser;
|
|
146
|
+
render(): any;
|
|
147
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/web-components-vite';
|
|
2
|
+
interface BsWhatsNewArgs {
|
|
3
|
+
type: 'feed' | 'announcement' | 'teaser';
|
|
4
|
+
heading: string;
|
|
5
|
+
closable: boolean;
|
|
6
|
+
releaseNotesUrl: string;
|
|
7
|
+
}
|
|
8
|
+
declare const meta: Meta<BsWhatsNewArgs>;
|
|
9
|
+
export default meta;
|
|
10
|
+
type Story = StoryObj<BsWhatsNewArgs>;
|
|
11
|
+
export declare const Feed: Story;
|
|
12
|
+
export declare const Announcement: Story;
|
|
13
|
+
export declare const Teaser: Story;
|
|
14
|
+
export declare const Interactive: Story;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { EventEmitter } from '../../stencil-public-runtime';
|
|
2
|
+
export type BsWhatsNewEntryTagColor = 'info' | 'success' | 'warning' | 'error' | 'neutral';
|
|
3
|
+
/**
|
|
4
|
+
* One update in a "What's new" list: a tag ("New feature", "Improvement", "Fix"), a date, an unread dot,
|
|
5
|
+
* an optional image, a title, a short description and an optional action link ("Try it"). Matches the Figma
|
|
6
|
+
* "What's new / Entry" component. It is a plain block of content -- no card -- so it can sit in a feed
|
|
7
|
+
* (`bs-whats-new`), a list, or a page of release notes.
|
|
8
|
+
*
|
|
9
|
+
* **Built from:** `bs-chip-informative` (the tag) and `bs-button` (the action).
|
|
10
|
+
*
|
|
11
|
+
* ## When to use
|
|
12
|
+
* - Announcing a change to the product, with enough detail to know whether it matters.
|
|
13
|
+
*
|
|
14
|
+
* ## When not to use
|
|
15
|
+
* - A message about the user's own data or an action they just took -- use `bs-snackbar` or `bs-toast`.
|
|
16
|
+
*
|
|
17
|
+
* @slot image - An image (or any media) shown above the title. Nothing is shown when empty.
|
|
18
|
+
* @part meta - The row with the tag, date and unread dot.
|
|
19
|
+
* @part tag - The tag chip.
|
|
20
|
+
* @part date - The date.
|
|
21
|
+
* @part unread - The unread dot.
|
|
22
|
+
* @part image - The wrapper around the image slot.
|
|
23
|
+
* @part heading - The title.
|
|
24
|
+
* @part description - The description.
|
|
25
|
+
* @part action - The action button.
|
|
26
|
+
* @part divider - The rule under the entry.
|
|
27
|
+
*/
|
|
28
|
+
export declare class BsWhatsNewEntry {
|
|
29
|
+
/** The tag text, e.g. "New feature". No tag when empty. */
|
|
30
|
+
tag?: string;
|
|
31
|
+
/** Colour of the tag: `info` (default), `success`, `warning`, `error` or `neutral`. */
|
|
32
|
+
tagColor: BsWhatsNewEntryTagColor;
|
|
33
|
+
/** The date as text, already formatted for the reader (e.g. "24.09.2026"). */
|
|
34
|
+
date?: string;
|
|
35
|
+
/** Shows a dot after the date for an update the user hasn't seen. */
|
|
36
|
+
unread: boolean;
|
|
37
|
+
/** Title. */
|
|
38
|
+
heading?: string;
|
|
39
|
+
/** HTML heading level for the title, 1-6. */
|
|
40
|
+
headingLevel: number;
|
|
41
|
+
/** Short description under the title. */
|
|
42
|
+
description?: string;
|
|
43
|
+
/** Label of the action link (e.g. "Try it"). No action when empty. */
|
|
44
|
+
actionLabel?: string;
|
|
45
|
+
/** Draws a rule under the entry, to separate it from the next one. */
|
|
46
|
+
divider: boolean;
|
|
47
|
+
/** Visually hidden text for the unread dot. */
|
|
48
|
+
unreadLabel: string;
|
|
49
|
+
/** Fires when the action link is pressed. */
|
|
50
|
+
bsAction: EventEmitter<void>;
|
|
51
|
+
hasImage: boolean;
|
|
52
|
+
render(): any;
|
|
53
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/web-components-vite';
|
|
2
|
+
interface BsWhatsNewEntryArgs {
|
|
3
|
+
tag: string;
|
|
4
|
+
tagColor: 'info' | 'success' | 'warning' | 'error' | 'neutral';
|
|
5
|
+
date: string;
|
|
6
|
+
unread: boolean;
|
|
7
|
+
heading: string;
|
|
8
|
+
description: string;
|
|
9
|
+
actionLabel: string;
|
|
10
|
+
divider: boolean;
|
|
11
|
+
}
|
|
12
|
+
declare const meta: Meta<BsWhatsNewEntryArgs>;
|
|
13
|
+
export default meta;
|
|
14
|
+
type Story = StoryObj<BsWhatsNewEntryArgs>;
|
|
15
|
+
export declare const Default: Story;
|
|
16
|
+
export declare const WithImageAndAction: Story;
|
|
17
|
+
export declare const Fix: Story;
|
|
18
|
+
export declare const TitleOnly: Story;
|