@brandsync/wc 1.16.0 → 1.18.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 +20 -0
- package/REFERENCE.md +476 -0
- package/custom-elements.json +10039 -5497
- package/dist/brandsync-wc/brandsync-wc.esm.js +1 -1
- package/dist/brandsync-wc/{p-f271e1d2.entry.js → p-0082db6a.entry.js} +1 -1
- package/dist/brandsync-wc/p-07e0b444.entry.js +1 -0
- package/dist/brandsync-wc/{p-b67a0c8f.entry.js → p-08e0e704.entry.js} +1 -1
- package/dist/brandsync-wc/{p-d165a742.entry.js → p-0a6f22fe.entry.js} +1 -1
- package/dist/brandsync-wc/{p-8390a155.entry.js → p-14b4f4c4.entry.js} +1 -1
- package/dist/brandsync-wc/p-15f06226.entry.js +1 -0
- package/dist/brandsync-wc/{p-a5659499.entry.js → p-186e3b78.entry.js} +1 -1
- package/dist/brandsync-wc/{p-c85fe37b.entry.js → p-1a47774e.entry.js} +1 -1
- package/dist/brandsync-wc/p-1a62e5b7.entry.js +1 -0
- package/dist/brandsync-wc/p-1aa0f9a3.entry.js +1 -0
- package/dist/brandsync-wc/{p-e9b6b30f.entry.js → p-1d8c2ec1.entry.js} +1 -1
- package/dist/brandsync-wc/p-246036cd.entry.js +1 -0
- package/dist/brandsync-wc/{p-45986ad4.entry.js → p-31ca98c3.entry.js} +1 -1
- package/dist/brandsync-wc/p-344695a8.entry.js +1 -0
- package/dist/brandsync-wc/{p-c25553bc.entry.js → p-345b5ef3.entry.js} +1 -1
- package/dist/brandsync-wc/{p-dcacee29.entry.js → p-34851d6d.entry.js} +1 -1
- package/dist/brandsync-wc/{p-6cb21302.entry.js → p-348fef11.entry.js} +1 -1
- package/dist/brandsync-wc/p-3e6f430a.entry.js +1 -0
- package/dist/brandsync-wc/p-43f8afda.entry.js +1 -0
- package/dist/brandsync-wc/{p-361aef36.entry.js → p-47929dca.entry.js} +1 -1
- package/dist/brandsync-wc/{p-cc4c8c1d.entry.js → p-47ce984f.entry.js} +1 -1
- package/dist/brandsync-wc/{p-d5a6098d.entry.js → p-4d4997af.entry.js} +1 -1
- package/dist/brandsync-wc/p-4ff649f1.entry.js +1 -0
- package/dist/brandsync-wc/p-50c116eb.entry.js +1 -0
- package/dist/brandsync-wc/{p-f3eca1ce.entry.js → p-50f60ed6.entry.js} +1 -1
- package/dist/brandsync-wc/p-52d61070.entry.js +1 -0
- package/dist/brandsync-wc/{p-2e285364.entry.js → p-55d336da.entry.js} +1 -1
- package/dist/brandsync-wc/{p-38fe9d07.entry.js → p-55d97d1d.entry.js} +1 -1
- package/dist/brandsync-wc/{p-9beeb30c.entry.js → p-56a45582.entry.js} +1 -1
- package/dist/brandsync-wc/{p-e9afb553.entry.js → p-58179e15.entry.js} +1 -1
- package/dist/brandsync-wc/{p-1ca8b01e.entry.js → p-5868793d.entry.js} +1 -1
- package/dist/brandsync-wc/{p-38ac9aad.entry.js → p-5ac75555.entry.js} +1 -1
- package/dist/brandsync-wc/{p-7b3518b8.entry.js → p-5cd1abc7.entry.js} +1 -1
- package/dist/brandsync-wc/{p-dfad8c0a.entry.js → p-5e36d46f.entry.js} +1 -1
- package/dist/brandsync-wc/{p-54f9529f.entry.js → p-64f8eb7e.entry.js} +1 -1
- package/dist/brandsync-wc/p-6b019a88.entry.js +1 -0
- package/dist/brandsync-wc/{p-f0be9125.entry.js → p-6c987bc9.entry.js} +1 -1
- package/dist/brandsync-wc/{p-5ed1f45e.entry.js → p-757cd066.entry.js} +1 -1
- package/dist/brandsync-wc/{p-47b7fe76.entry.js → p-78114ea3.entry.js} +1 -1
- package/dist/brandsync-wc/p-7c29678d.entry.js +1 -0
- package/dist/brandsync-wc/{p-9d12b1fb.entry.js → p-7cfb1be6.entry.js} +1 -1
- package/dist/brandsync-wc/{p-4ed00786.entry.js → p-841a80b4.entry.js} +1 -1
- package/dist/brandsync-wc/{p-a56bc608.entry.js → p-87a10ee1.entry.js} +1 -1
- package/dist/brandsync-wc/{p-c05ee501.entry.js → p-8962abe0.entry.js} +1 -1
- package/dist/brandsync-wc/p-8e46a262.entry.js +1 -0
- package/dist/brandsync-wc/p-8f82ea7e.entry.js +1 -0
- package/dist/brandsync-wc/p-95c7f350.entry.js +1 -0
- package/dist/brandsync-wc/{p-3488c4fc.entry.js → p-9787bc0f.entry.js} +1 -1
- package/dist/brandsync-wc/{p-0159f0da.entry.js → p-998b95d3.entry.js} +1 -1
- package/dist/brandsync-wc/p-9bd739e5.entry.js +1 -0
- package/dist/brandsync-wc/p-a424a709.entry.js +1 -0
- package/dist/brandsync-wc/{p-b6081bba.entry.js → p-a51355d9.entry.js} +1 -1
- package/dist/brandsync-wc/{p-4ca40386.entry.js → p-a8c2855c.entry.js} +1 -1
- package/dist/brandsync-wc/{p-b663ee67.entry.js → p-a9d0a730.entry.js} +1 -1
- package/dist/brandsync-wc/{p-15f4c343.entry.js → p-ae207fd5.entry.js} +1 -1
- package/dist/brandsync-wc/{p-8048d033.entry.js → p-b1edc9b7.entry.js} +1 -1
- package/dist/brandsync-wc/{p-949a4270.entry.js → p-b759ae72.entry.js} +1 -1
- package/dist/brandsync-wc/{p-7dc59e0b.entry.js → p-b7bbc52f.entry.js} +1 -1
- package/dist/brandsync-wc/{p-912629c6.entry.js → p-bd901b06.entry.js} +1 -1
- package/dist/brandsync-wc/p-be7272ce.entry.js +1 -0
- package/dist/brandsync-wc/{p-401b3d3d.entry.js → p-bfff7cbb.entry.js} +1 -1
- package/dist/brandsync-wc/{p-298158da.entry.js → p-c020ffdf.entry.js} +1 -1
- package/dist/brandsync-wc/{p-abfa43f5.entry.js → p-c02ed03d.entry.js} +1 -1
- package/dist/brandsync-wc/{p-baa3d37a.entry.js → p-cb002195.entry.js} +1 -1
- package/dist/brandsync-wc/{p-ffc07eb5.entry.js → p-d3fe8cea.entry.js} +1 -1
- package/dist/brandsync-wc/{p-42b79d95.entry.js → p-d42a26c1.entry.js} +1 -1
- package/dist/brandsync-wc/{p-e72dd05e.entry.js → p-d985e569.entry.js} +1 -1
- package/dist/brandsync-wc/{p-cf287ff1.entry.js → p-e2491db8.entry.js} +1 -1
- package/dist/brandsync-wc/{p-36fe783a.entry.js → p-e32a6df1.entry.js} +1 -1
- package/dist/brandsync-wc/{p-65fa1b21.entry.js → p-e3e15670.entry.js} +1 -1
- package/dist/brandsync-wc/{p-67629178.entry.js → p-e4e9c961.entry.js} +1 -1
- package/dist/brandsync-wc/{p-521d0fc2.entry.js → p-e99c0937.entry.js} +1 -1
- package/dist/brandsync-wc/{p-89ea6366.entry.js → p-e9adfa44.entry.js} +1 -1
- package/dist/brandsync-wc/{p-76748795.entry.js → p-eb3bacb9.entry.js} +1 -1
- package/dist/brandsync-wc/p-ee00d3a5.entry.js +1 -0
- package/dist/brandsync-wc/{p-ed71eb02.entry.js → p-ee63423c.entry.js} +1 -1
- package/dist/brandsync-wc/p-f4628861.entry.js +1 -0
- package/dist/brandsync-wc/{p-d81c4f58.entry.js → p-f47b8673.entry.js} +1 -1
- package/dist/brandsync-wc/{p-b9c9bcba.entry.js → p-f6caa623.entry.js} +1 -1
- package/dist/brandsync-wc/p-f86b58bf.entry.js +1 -0
- package/dist/brandsync-wc/{p-00be9a64.entry.js → p-fa91106e.entry.js} +1 -1
- package/dist/brandsync-wc/{p-538d5b58.entry.js → p-fb84002e.entry.js} +1 -1
- package/dist/brandsync-wc/{p-a12691d8.entry.js → p-fbc219c6.entry.js} +1 -1
- package/dist/brandsync-wc/{p-f3cc961b.entry.js → p-fd78ff22.entry.js} +1 -1
- package/dist/cjs/brandsync-wc.cjs.js +1 -1
- package/dist/cjs/bs-accordion-group.cjs.entry.js +1 -1
- 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-app-recent-item_3.cjs.entry.js +133 -0
- package/dist/cjs/bs-app-shell.cjs.entry.js +1 -1
- package/dist/cjs/bs-app-switcher.cjs.entry.js +208 -0
- package/dist/cjs/bs-attachment-list.cjs.entry.js +1 -1
- 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 +1 -1
- 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 +1 -1
- package/dist/cjs/bs-card.cjs.entry.js +1 -1
- package/dist/cjs/bs-carousel.cjs.entry.js +1 -1
- package/dist/cjs/bs-chatbot-feedback.cjs.entry.js +1 -1
- package/dist/cjs/bs-chatbot-header.cjs.entry.js +1 -1
- package/dist/cjs/bs-chatbot-response-action.cjs.entry.js +1 -1
- 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 +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-citation-preview.cjs.entry.js +1 -1
- package/dist/cjs/bs-command-palette.cjs.entry.js +374 -0
- package/dist/cjs/bs-compact-menu-block_2.cjs.entry.js +46 -0
- package/dist/cjs/bs-company-switcher.cjs.entry.js +211 -0
- 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-container.cjs.entry.js +1 -1
- package/dist/cjs/bs-data-table.cjs.entry.js +2 -2
- package/dist/cjs/bs-datepicker.cjs.entry.js +1 -1
- package/dist/cjs/bs-divider.cjs.entry.js +1 -1
- package/dist/cjs/bs-empty-state.cjs.entry.js +47 -0
- package/dist/cjs/bs-error-page.cjs.entry.js +1 -1
- 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-global-search.cjs.entry.js +326 -0
- package/dist/cjs/bs-grid.cjs.entry.js +2 -2
- package/dist/cjs/bs-icon-button.cjs.entry.js +8 -1
- package/dist/cjs/bs-icon-tile.cjs.entry.js +10 -2
- package/dist/cjs/bs-inline-tab.cjs.entry.js +1 -1
- package/dist/cjs/bs-input_3.cjs.entry.js +4 -4
- package/dist/cjs/bs-key-caps.cjs.entry.js +39 -0
- package/dist/cjs/bs-key.cjs.entry.js +28 -0
- package/dist/cjs/bs-keyboard-shortcuts.cjs.entry.js +112 -0
- package/dist/cjs/bs-list-item_2.cjs.entry.js +215 -0
- package/dist/cjs/bs-list.cjs.entry.js +1 -1
- package/dist/cjs/bs-mega-menu.cjs.entry.js +70 -0
- package/dist/cjs/bs-message-list.cjs.entry.js +1 -1
- package/dist/cjs/bs-message.cjs.entry.js +1 -1
- package/dist/cjs/bs-navigation-drawer-item.cjs.entry.js +1 -1
- package/dist/cjs/bs-navigation-drawer.cjs.entry.js +2 -2
- package/dist/cjs/bs-navigation-header.cjs.entry.js +5 -2
- package/dist/cjs/bs-page-header.cjs.entry.js +66 -0
- package/dist/cjs/bs-pagination.cjs.entry.js +1 -1
- package/dist/cjs/bs-progress-linear.cjs.entry.js +2 -2
- package/dist/cjs/bs-progress.cjs.entry.js +2 -2
- package/dist/cjs/bs-qr-code.cjs.entry.js +1 -1
- package/dist/cjs/bs-radio.cjs.entry.js +1 -1
- package/dist/cjs/bs-search-item.cjs.entry.js +47 -0
- package/dist/cjs/bs-session-timeout.cjs.entry.js +1 -1
- package/dist/cjs/bs-shortcut-row.cjs.entry.js +27 -0
- package/dist/cjs/bs-slider.cjs.entry.js +1 -1
- 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-spinner.cjs.entry.js +1 -1
- package/dist/cjs/bs-split-pane.cjs.entry.js +1 -1
- package/dist/cjs/bs-stack.cjs.entry.js +1 -1
- package/dist/cjs/bs-stepper-step.cjs.entry.js +1 -1
- package/dist/cjs/bs-stepper.cjs.entry.js +1 -1
- package/dist/cjs/bs-switch.cjs.entry.js +1 -1
- package/dist/cjs/bs-tab_3.cjs.entry.js +3 -3
- package/dist/cjs/bs-timepicker.cjs.entry.js +2 -2
- package/dist/cjs/bs-toast.cjs.entry.js +1 -1
- package/dist/cjs/bs-tooltip-trigger.cjs.entry.js +1 -1
- package/dist/cjs/bs-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/bs-tree-item.cjs.entry.js +2 -2
- package/dist/cjs/bs-tree.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +17 -1
- package/dist/collection/components/bs-accordion-group/bs-accordion-group.js +1 -1
- 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-app-recent-item/bs-app-recent-item.cmp.test.js +52 -0
- package/dist/collection/components/bs-app-recent-item/bs-app-recent-item.css +111 -0
- package/dist/collection/components/bs-app-recent-item/bs-app-recent-item.js +184 -0
- package/dist/collection/components/bs-app-recent-item/bs-app-recent-item.stories.js +28 -0
- package/dist/collection/components/bs-app-shell/bs-app-shell.js +1 -1
- package/dist/collection/components/bs-app-switcher/bs-app-switcher.cmp.test.js +179 -0
- package/dist/collection/components/bs-app-switcher/bs-app-switcher.css +173 -0
- package/dist/collection/components/bs-app-switcher/bs-app-switcher.js +902 -0
- package/dist/collection/components/bs-app-switcher/bs-app-switcher.stories.js +91 -0
- package/dist/collection/components/bs-app-tile/bs-app-tile.cmp.test.js +58 -0
- package/dist/collection/components/bs-app-tile/bs-app-tile.css +104 -0
- package/dist/collection/components/bs-app-tile/bs-app-tile.js +190 -0
- package/dist/collection/components/bs-app-tile/bs-app-tile.stories.js +43 -0
- package/dist/collection/components/bs-attachment/bs-attachment.js +1 -1
- package/dist/collection/components/bs-attachment-list/bs-attachment-list.js +1 -1
- package/dist/collection/components/bs-avatar/bs-avatar.css +3 -3
- package/dist/collection/components/bs-badge/bs-badge.js +1 -1
- package/dist/collection/components/bs-breadcrumb/bs-breadcrumb/bs-breadcrumb.js +1 -1
- package/dist/collection/components/bs-breadcrumb/bs-breadcrumb-overflow/bs-breadcrumb-overflow.js +1 -1
- package/dist/collection/components/bs-breadcrumb/bs-breadcrumbs/bs-breadcrumbs.js +1 -1
- package/dist/collection/components/bs-button/bs-button/bs-button.js +1 -1
- package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.cmp.test.js +13 -0
- package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.js +27 -1
- package/dist/collection/components/bs-button-skeleton/bs-button-skeleton.js +1 -1
- package/dist/collection/components/bs-card/bs-card.js +1 -1
- package/dist/collection/components/bs-carousel/bs-carousel.js +1 -1
- package/dist/collection/components/bs-chatbot-feedback/bs-chatbot-feedback.js +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-checkbox/bs-checkbox.js +1 -1
- package/dist/collection/components/bs-chip/bs-chip-filter/bs-chip-filter.js +1 -1
- package/dist/collection/components/bs-chip/bs-chip-informative/bs-chip-informative.js +1 -1
- package/dist/collection/components/bs-chip/bs-chip-input/bs-chip-input.js +1 -1
- package/dist/collection/components/bs-citation-preview/bs-citation-preview.js +1 -1
- package/dist/collection/components/bs-command-palette/bs-command-palette.cmp.test.js +207 -0
- package/dist/collection/components/bs-command-palette/bs-command-palette.css +214 -0
- package/dist/collection/components/bs-command-palette/bs-command-palette.js +1114 -0
- package/dist/collection/components/bs-command-palette/bs-command-palette.stories.js +194 -0
- package/dist/collection/components/bs-compact-menu-block/bs-compact-menu-block.cmp.test.js +32 -0
- package/dist/collection/components/bs-compact-menu-block/bs-compact-menu-block.css +43 -0
- package/dist/collection/components/bs-compact-menu-block/bs-compact-menu-block.js +67 -0
- package/dist/collection/components/bs-compact-menu-block/bs-compact-menu-block.stories.js +25 -0
- package/dist/collection/components/bs-company-switcher/bs-company-switcher.cmp.test.js +171 -0
- package/dist/collection/components/bs-company-switcher/bs-company-switcher.css +196 -0
- package/dist/collection/components/bs-company-switcher/bs-company-switcher.js +720 -0
- package/dist/collection/components/bs-company-switcher/bs-company-switcher.stories.js +78 -0
- package/dist/collection/components/bs-composer/bs-composer.js +1 -1
- package/dist/collection/components/bs-composer-status-banner/bs-composer-status-banner.js +1 -1
- package/dist/collection/components/bs-container/bs-container.js +1 -1
- package/dist/collection/components/bs-data-table/bs-data-table.js +2 -2
- package/dist/collection/components/bs-datepicker/bs-datepicker.js +1 -1
- package/dist/collection/components/bs-divider/bs-divider.js +1 -1
- package/dist/collection/components/bs-empty-state/bs-empty-state.cmp.test.js +102 -0
- package/dist/collection/components/bs-empty-state/bs-empty-state.css +45 -0
- package/dist/collection/components/bs-empty-state/bs-empty-state.js +175 -0
- package/dist/collection/components/bs-empty-state/bs-empty-state.stories.js +52 -0
- package/dist/collection/components/bs-error-page/bs-error-page.js +1 -1
- 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-global-search/bs-global-search.cmp.test.js +491 -0
- package/dist/collection/components/bs-global-search/bs-global-search.css +115 -0
- package/dist/collection/components/bs-global-search/bs-global-search.js +1024 -0
- package/dist/collection/components/bs-global-search/bs-global-search.stories.js +146 -0
- package/dist/collection/components/bs-grid/bs-grid.js +2 -2
- package/dist/collection/components/bs-icon-tile/bs-icon-tile.js +11 -2
- package/dist/collection/components/bs-input/bs-input.js +2 -2
- package/dist/collection/components/bs-key/bs-key.cmp.test.js +59 -0
- package/dist/collection/components/bs-key/bs-key.css +58 -0
- package/dist/collection/components/bs-key/bs-key.js +84 -0
- package/dist/collection/components/bs-key/bs-key.stories.js +19 -0
- package/dist/collection/components/bs-key-caps/bs-key-caps.cmp.test.js +60 -0
- package/dist/collection/components/bs-key-caps/bs-key-caps.css +28 -0
- package/dist/collection/components/bs-key-caps/bs-key-caps.js +120 -0
- package/dist/collection/components/bs-key-caps/bs-key-caps.stories.js +29 -0
- package/dist/collection/components/bs-keyboard-shortcuts/bs-keyboard-shortcuts.cmp.test.js +194 -0
- package/dist/collection/components/bs-keyboard-shortcuts/bs-keyboard-shortcuts.css +138 -0
- package/dist/collection/components/bs-keyboard-shortcuts/bs-keyboard-shortcuts.js +485 -0
- package/dist/collection/components/bs-keyboard-shortcuts/bs-keyboard-shortcuts.stories.js +111 -0
- package/dist/collection/components/bs-list/bs-list.js +1 -1
- package/dist/collection/components/bs-list-item/bs-list-item.js +1 -1
- package/dist/collection/components/bs-mega-menu/bs-mega-menu.cmp.test.js +131 -0
- package/dist/collection/components/bs-mega-menu/bs-mega-menu.css +139 -0
- package/dist/collection/components/bs-mega-menu/bs-mega-menu.js +358 -0
- package/dist/collection/components/bs-mega-menu/bs-mega-menu.stories.js +188 -0
- package/dist/collection/components/bs-menu/bs-menu.js +1 -1
- package/dist/collection/components/bs-menu-block/bs-menu-block.cmp.test.js +44 -0
- package/dist/collection/components/bs-menu-block/bs-menu-block.css +106 -0
- package/dist/collection/components/bs-menu-block/bs-menu-block.js +147 -0
- package/dist/collection/components/bs-menu-block/bs-menu-block.stories.js +36 -0
- package/dist/collection/components/bs-menu-item/bs-menu-item.js +1 -1
- package/dist/collection/components/bs-message/bs-message.js +1 -1
- package/dist/collection/components/bs-message-list/bs-message-list.js +1 -1
- package/dist/collection/components/bs-page-header/bs-page-header.cmp.test.js +206 -0
- package/dist/collection/components/bs-page-header/bs-page-header.css +252 -0
- package/dist/collection/components/bs-page-header/bs-page-header.js +351 -0
- package/dist/collection/components/bs-page-header/bs-page-header.stories.js +177 -0
- package/dist/collection/components/bs-pagination/bs-pagination.js +1 -1
- package/dist/collection/components/bs-popover/bs-popover.js +1 -1
- package/dist/collection/components/bs-progress/bs-progress.js +2 -2
- package/dist/collection/components/bs-progress-linear/bs-progress-linear.js +2 -2
- package/dist/collection/components/bs-qr-code/bs-qr-code.js +1 -1
- package/dist/collection/components/bs-radio/bs-radio.js +1 -1
- package/dist/collection/components/bs-search-item/bs-search-item.cmp.test.js +147 -0
- package/dist/collection/components/bs-search-item/bs-search-item.css +112 -0
- package/dist/collection/components/bs-search-item/bs-search-item.js +222 -0
- package/dist/collection/components/bs-search-item/bs-search-item.stories.js +31 -0
- package/dist/collection/components/bs-session-timeout/bs-session-timeout.js +1 -1
- package/dist/collection/components/bs-shortcut-row/bs-shortcut-row.cmp.test.js +60 -0
- package/dist/collection/components/bs-shortcut-row/bs-shortcut-row.css +42 -0
- package/dist/collection/components/bs-shortcut-row/bs-shortcut-row.js +154 -0
- package/dist/collection/components/bs-shortcut-row/bs-shortcut-row.stories.js +24 -0
- package/dist/collection/components/bs-skeleton/bs-skeleton.js +1 -1
- package/dist/collection/components/bs-slider/bs-slider.js +1 -1
- package/dist/collection/components/bs-snackbar/bs-snackbar.js +1 -1
- package/dist/collection/components/bs-source-link/bs-source-link.js +2 -2
- package/dist/collection/components/bs-spinner/bs-spinner.js +1 -1
- package/dist/collection/components/bs-split-pane/bs-split-pane.js +1 -1
- package/dist/collection/components/bs-stack/bs-stack.js +1 -1
- 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.js +2 -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-tooltip-trigger/bs-tooltip-trigger.js +1 -1
- package/dist/collection/components/bs-tree/bs-tree.js +1 -1
- package/dist/collection/components/bs-tree-item/bs-tree-item.js +2 -2
- package/dist/collection/components/bs-whats-new-entry/bs-whats-new-entry.js +1 -1
- 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.cmp.test.js +79 -0
- package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.css +46 -0
- package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.js +10 -1
- package/dist/components/bs-accordion-group.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-app-recent-item.d.ts +11 -0
- package/dist/components/bs-app-recent-item.js +1 -0
- package/dist/components/bs-app-shell.js +1 -1
- package/dist/components/bs-app-switcher.d.ts +11 -0
- package/dist/components/bs-app-switcher.js +1 -0
- package/dist/components/bs-app-tile.d.ts +11 -0
- package/dist/components/bs-app-tile.js +1 -0
- 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-citation-preview.js +1 -1
- package/dist/components/bs-command-palette.d.ts +11 -0
- package/dist/components/bs-command-palette.js +1 -0
- package/dist/components/bs-compact-menu-block.d.ts +11 -0
- package/dist/components/bs-compact-menu-block.js +1 -0
- package/dist/components/bs-company-switcher.d.ts +11 -0
- package/dist/components/bs-company-switcher.js +1 -0
- package/dist/components/bs-composer-status-banner.js +1 -1
- package/dist/components/bs-composer.js +1 -1
- package/dist/components/bs-container.js +1 -1
- package/dist/components/bs-cookie-consent.js +1 -1
- 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-divider.js +1 -1
- package/dist/components/bs-empty-state.d.ts +11 -0
- package/dist/components/bs-empty-state.js +1 -0
- package/dist/components/bs-error-page.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-global-search.d.ts +11 -0
- package/dist/components/bs-global-search.js +1 -0
- package/dist/components/bs-grid.js +1 -1
- package/dist/components/bs-icon-button.js +1 -1
- package/dist/components/bs-icon-tile.js +1 -1
- package/dist/components/bs-inline-tab.js +1 -1
- package/dist/components/bs-input.js +1 -1
- package/dist/components/bs-key-caps.d.ts +11 -0
- package/dist/components/bs-key-caps.js +1 -0
- package/dist/components/bs-key.d.ts +11 -0
- package/dist/components/bs-key.js +1 -0
- package/dist/components/bs-keyboard-shortcuts.d.ts +11 -0
- package/dist/components/bs-keyboard-shortcuts.js +1 -0
- package/dist/components/bs-list-item.js +1 -1
- package/dist/components/bs-list.js +1 -1
- package/dist/components/bs-mega-menu.d.ts +11 -0
- package/dist/components/bs-mega-menu.js +1 -0
- package/dist/components/bs-menu-block.d.ts +11 -0
- package/dist/components/bs-menu-block.js +1 -0
- package/dist/components/bs-menu-item.js +1 -1
- package/dist/components/bs-menu.js +1 -1
- package/dist/components/bs-message-list.js +1 -1
- package/dist/components/bs-message.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.js +1 -1
- package/dist/components/bs-page-header.d.ts +11 -0
- package/dist/components/bs-page-header.js +1 -0
- package/dist/components/bs-pagination.js +1 -1
- package/dist/components/bs-popover.js +1 -1
- package/dist/components/bs-product-tour.js +1 -1
- package/dist/components/bs-progress-linear.js +1 -1
- package/dist/components/bs-progress.js +1 -1
- package/dist/components/bs-qr-code.js +1 -1
- package/dist/components/bs-radio.js +1 -1
- package/dist/components/bs-search-item.d.ts +11 -0
- package/dist/components/bs-search-item.js +1 -0
- package/dist/components/bs-session-timeout.js +1 -1
- package/dist/components/bs-shortcut-row.d.ts +11 -0
- package/dist/components/bs-shortcut-row.js +1 -0
- package/dist/components/bs-side-panel.js +1 -1
- package/dist/components/bs-skeleton.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-spinner.js +1 -1
- package/dist/components/bs-split-pane.js +1 -1
- package/dist/components/bs-stack.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-trigger.js +1 -1
- package/dist/components/bs-tooltip.js +1 -1
- package/dist/components/bs-tree-item.js +1 -1
- package/dist/components/bs-tree.js +1 -1
- package/dist/components/bs-whats-new-entry.js +1 -1
- package/dist/components/bs-whats-new.js +1 -1
- package/dist/components/p-B6KgEbdM.js +1 -0
- package/dist/components/{p-CQjSDdH7.js → p-B8kw9EOx.js} +1 -1
- package/dist/components/p-BLPNwyiT.js +1 -0
- package/dist/components/{p-J9cxcDhY.js → p-BP1l6Q3Z.js} +1 -1
- package/dist/components/p-BS7ySxJZ.js +1 -0
- package/dist/components/{p-DYuzgzxI.js → p-BmdSbmFg.js} +1 -1
- package/dist/components/{p-CRtvJlh8.js → p-C1owRphU.js} +1 -1
- package/dist/components/{p-BsbtyRJV.js → p-C2rRVRIu.js} +1 -1
- package/dist/components/p-C3erqJFy.js +1 -0
- package/dist/components/p-Cd7p-48Q.js +1 -0
- package/dist/components/{p-CK7fiES5.js → p-CmlzHRkn.js} +1 -1
- package/dist/components/p-Co36mHEU.js +1 -0
- package/dist/components/p-D4_8H0vn.js +1 -0
- package/dist/components/{p-D0KM1R2i.js → p-D9dDFyPB.js} +1 -1
- package/dist/components/{p-DvNED6Lb.js → p-DBvhi__l.js} +1 -1
- package/dist/components/{p-kDJsWjTN.js → p-DFd4pP4i.js} +1 -1
- package/dist/components/{p-BdkE4auv.js → p-DVjuZdjF.js} +1 -1
- package/dist/components/{p-Bb1-2M8K.js → p-DW0Dw2LS.js} +1 -1
- package/dist/components/p-DcdFuKG9.js +1 -0
- package/dist/components/p-Deq0LzGO.js +1 -0
- package/dist/components/{p-BaJEv6rL.js → p-DgY5pxXd.js} +1 -1
- package/dist/components/{p-ByLUtXxO.js → p-DhhXayh6.js} +1 -1
- package/dist/components/p-DiORQQg3.js +1 -0
- package/dist/components/p-Dl0FedE5.js +1 -0
- package/dist/components/p-DsBToIYE.js +1 -0
- package/dist/components/{p-DFKc3lLA.js → p-DtbeCgXo.js} +1 -1
- package/dist/components/{p-C7RZ6qZC.js → p-DzvXbBvk.js} +1 -1
- package/dist/components/p-I1_Q3HQu.js +1 -0
- package/dist/components/{p-C93ymWm7.js → p-TXAiCnSZ.js} +1 -1
- package/dist/components/p-c-g3-oVu.js +1 -0
- package/dist/components/p-erdtytMq.js +1 -0
- package/dist/components/{p-B128GX8H.js → p-qXdgl7VG.js} +1 -1
- package/dist/esm/brandsync-wc.js +1 -1
- package/dist/esm/bs-accordion-group.entry.js +1 -1
- 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-app-recent-item_3.entry.js +129 -0
- package/dist/esm/bs-app-shell.entry.js +1 -1
- package/dist/esm/bs-app-switcher.entry.js +206 -0
- package/dist/esm/bs-attachment-list.entry.js +1 -1
- 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 +1 -1
- 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 +1 -1
- package/dist/esm/bs-card.entry.js +1 -1
- package/dist/esm/bs-carousel.entry.js +1 -1
- package/dist/esm/bs-chatbot-feedback.entry.js +1 -1
- package/dist/esm/bs-chatbot-header.entry.js +1 -1
- package/dist/esm/bs-chatbot-response-action.entry.js +1 -1
- 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 +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-citation-preview.entry.js +1 -1
- package/dist/esm/bs-command-palette.entry.js +372 -0
- package/dist/esm/bs-compact-menu-block_2.entry.js +43 -0
- package/dist/esm/bs-company-switcher.entry.js +209 -0
- package/dist/esm/bs-composer-status-banner.entry.js +1 -1
- package/dist/esm/bs-composer.entry.js +1 -1
- package/dist/esm/bs-container.entry.js +1 -1
- package/dist/esm/bs-data-table.entry.js +2 -2
- package/dist/esm/bs-datepicker.entry.js +1 -1
- package/dist/esm/bs-divider.entry.js +1 -1
- package/dist/esm/bs-empty-state.entry.js +45 -0
- package/dist/esm/bs-error-page.entry.js +1 -1
- 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-global-search.entry.js +324 -0
- package/dist/esm/bs-grid.entry.js +2 -2
- package/dist/esm/bs-icon-button.entry.js +8 -1
- package/dist/esm/bs-icon-tile.entry.js +11 -3
- package/dist/esm/bs-inline-tab.entry.js +1 -1
- package/dist/esm/bs-input_3.entry.js +4 -4
- package/dist/esm/bs-key-caps.entry.js +37 -0
- package/dist/esm/bs-key.entry.js +26 -0
- package/dist/esm/bs-keyboard-shortcuts.entry.js +110 -0
- package/dist/esm/bs-list-item_2.entry.js +212 -0
- package/dist/esm/bs-list.entry.js +1 -1
- package/dist/esm/bs-mega-menu.entry.js +68 -0
- package/dist/esm/bs-message-list.entry.js +1 -1
- package/dist/esm/bs-message.entry.js +1 -1
- package/dist/esm/bs-navigation-drawer-item.entry.js +1 -1
- package/dist/esm/bs-navigation-drawer.entry.js +2 -2
- package/dist/esm/bs-navigation-header.entry.js +5 -2
- package/dist/esm/bs-page-header.entry.js +64 -0
- package/dist/esm/bs-pagination.entry.js +1 -1
- package/dist/esm/bs-progress-linear.entry.js +2 -2
- package/dist/esm/bs-progress.entry.js +2 -2
- package/dist/esm/bs-qr-code.entry.js +1 -1
- package/dist/esm/bs-radio.entry.js +1 -1
- package/dist/esm/bs-search-item.entry.js +45 -0
- package/dist/esm/bs-session-timeout.entry.js +1 -1
- package/dist/esm/bs-shortcut-row.entry.js +25 -0
- package/dist/esm/bs-slider.entry.js +1 -1
- package/dist/esm/bs-snackbar.entry.js +1 -1
- package/dist/esm/bs-source-link.entry.js +2 -2
- package/dist/esm/bs-spinner.entry.js +1 -1
- package/dist/esm/bs-split-pane.entry.js +1 -1
- package/dist/esm/bs-stack.entry.js +1 -1
- package/dist/esm/bs-stepper-step.entry.js +1 -1
- package/dist/esm/bs-stepper.entry.js +1 -1
- package/dist/esm/bs-switch.entry.js +1 -1
- package/dist/esm/bs-tab_3.entry.js +3 -3
- package/dist/esm/bs-timepicker.entry.js +2 -2
- package/dist/esm/bs-toast.entry.js +1 -1
- package/dist/esm/bs-tooltip-trigger.entry.js +1 -1
- package/dist/esm/bs-tooltip.entry.js +1 -1
- package/dist/esm/bs-tree-item.entry.js +2 -2
- package/dist/esm/bs-tree.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/bs-app-recent-item/bs-app-recent-item.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-app-recent-item/bs-app-recent-item.d.ts +51 -0
- package/dist/types/components/bs-app-recent-item/bs-app-recent-item.stories.d.ts +15 -0
- package/dist/types/components/bs-app-switcher/bs-app-switcher.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-app-switcher/bs-app-switcher.d.ts +159 -0
- package/dist/types/components/bs-app-switcher/bs-app-switcher.stories.d.ts +34 -0
- package/dist/types/components/bs-app-tile/bs-app-tile.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-app-tile/bs-app-tile.d.ts +51 -0
- package/dist/types/components/bs-app-tile/bs-app-tile.stories.d.ts +18 -0
- package/dist/types/components/bs-button/bs-icon-button/bs-icon-button.d.ts +7 -0
- package/dist/types/components/bs-command-palette/bs-command-palette.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-command-palette/bs-command-palette.d.ts +172 -0
- package/dist/types/components/bs-command-palette/bs-command-palette.stories.d.ts +56 -0
- package/dist/types/components/bs-compact-menu-block/bs-compact-menu-block.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-compact-menu-block/bs-compact-menu-block.d.ts +28 -0
- package/dist/types/components/bs-compact-menu-block/bs-compact-menu-block.stories.d.ts +10 -0
- package/dist/types/components/bs-company-switcher/bs-company-switcher.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-company-switcher/bs-company-switcher.d.ts +130 -0
- package/dist/types/components/bs-company-switcher/bs-company-switcher.stories.d.ts +25 -0
- package/dist/types/components/bs-empty-state/bs-empty-state.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-empty-state/bs-empty-state.d.ts +50 -0
- package/dist/types/components/bs-empty-state/bs-empty-state.stories.d.ts +13 -0
- package/dist/types/components/bs-global-search/bs-global-search.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-global-search/bs-global-search.d.ts +166 -0
- package/dist/types/components/bs-global-search/bs-global-search.stories.d.ts +61 -0
- package/dist/types/components/bs-icon-tile/bs-icon-tile.d.ts +5 -0
- package/dist/types/components/bs-key/bs-key.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-key/bs-key.d.ts +36 -0
- package/dist/types/components/bs-key/bs-key.stories.d.ts +11 -0
- package/dist/types/components/bs-key-caps/bs-key-caps.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-key-caps/bs-key-caps.d.ts +31 -0
- package/dist/types/components/bs-key-caps/bs-key-caps.stories.d.ts +15 -0
- package/dist/types/components/bs-keyboard-shortcuts/bs-keyboard-shortcuts.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-keyboard-shortcuts/bs-keyboard-shortcuts.d.ts +95 -0
- package/dist/types/components/bs-keyboard-shortcuts/bs-keyboard-shortcuts.stories.d.ts +43 -0
- package/dist/types/components/bs-mega-menu/bs-mega-menu.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-mega-menu/bs-mega-menu.d.ts +110 -0
- package/dist/types/components/bs-mega-menu/bs-mega-menu.stories.d.ts +55 -0
- package/dist/types/components/bs-menu-block/bs-menu-block.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-menu-block/bs-menu-block.d.ts +47 -0
- package/dist/types/components/bs-menu-block/bs-menu-block.stories.d.ts +15 -0
- package/dist/types/components/bs-page-header/bs-page-header.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-page-header/bs-page-header.d.ts +100 -0
- package/dist/types/components/bs-page-header/bs-page-header.stories.d.ts +41 -0
- package/dist/types/components/bs-search-item/bs-search-item.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-search-item/bs-search-item.d.ts +61 -0
- package/dist/types/components/bs-search-item/bs-search-item.stories.d.ts +13 -0
- package/dist/types/components/bs-shortcut-row/bs-shortcut-row.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-shortcut-row/bs-shortcut-row.d.ts +38 -0
- package/dist/types/components/bs-shortcut-row/bs-shortcut-row.stories.d.ts +13 -0
- package/dist/types/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.d.ts +7 -1
- package/dist/types/components.d.ts +3920 -71
- package/dist/types/svg-inline.d.ts +5 -0
- package/package.json +2 -1
- package/reference.d.ts +50 -2
- package/reference.json +1701 -31
- package/dist/brandsync-wc/p-0228a584.entry.js +0 -1
- package/dist/brandsync-wc/p-0f97fe35.entry.js +0 -1
- package/dist/brandsync-wc/p-23379d7c.entry.js +0 -1
- package/dist/brandsync-wc/p-34b0c048.entry.js +0 -1
- package/dist/brandsync-wc/p-3789c7a5.entry.js +0 -1
- package/dist/brandsync-wc/p-5a45ef51.entry.js +0 -1
- package/dist/brandsync-wc/p-769c5b4a.entry.js +0 -1
- package/dist/brandsync-wc/p-86774165.entry.js +0 -1
- package/dist/brandsync-wc/p-e5f50e93.entry.js +0 -1
- package/dist/brandsync-wc/p-f4d1d56e.entry.js +0 -1
- package/dist/cjs/bs-list-item.cjs.entry.js +0 -66
- package/dist/cjs/bs-popover.cjs.entry.js +0 -153
- package/dist/cjs/bs-skeleton.cjs.entry.js +0 -51
- package/dist/components/p-B80vOwH6.js +0 -1
- package/dist/components/p-ChcaPfNL.js +0 -1
- package/dist/components/p-GTDI4Ibw.js +0 -1
- package/dist/esm/bs-list-item.entry.js +0 -64
- package/dist/esm/bs-popover.entry.js +0 -151
- package/dist/esm/bs-skeleton.entry.js +0 -49
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { html } from "lit";
|
|
2
|
+
import { componentDescription } from "../../stories-utils";
|
|
3
|
+
/** Sample data (invented for the stories and tests, not real organisations). */
|
|
4
|
+
export const COMPANIES = [
|
|
5
|
+
{ id: 'nordic', name: 'Nordic Sports AS', orgNumber: '923 456 789', country: 'NO' },
|
|
6
|
+
{ id: 'fjord', name: 'Fjord Logistics AS', orgNumber: '918 220 114', country: 'NO' },
|
|
7
|
+
{ id: 'aurora', name: 'Aurora Retail Group', orgNumber: '927 003 551', country: 'NO' },
|
|
8
|
+
{ id: 'baltic', name: 'Baltic Freight AB', orgNumber: '556 781 2340', country: 'SE' },
|
|
9
|
+
{ id: 'kobenhavn', name: 'København Design ApS', orgNumber: '34 12 56 78', country: 'DK' },
|
|
10
|
+
{ id: 'helsinki', name: 'Helsinki Tech Oy', orgNumber: '2847561-3', country: 'FI' },
|
|
11
|
+
];
|
|
12
|
+
export const RECENT_IDS = ['fjord', 'aurora'];
|
|
13
|
+
const meta = {
|
|
14
|
+
excludeStories: /^[A-Z0-9_]+$/,
|
|
15
|
+
title: 'Components/bs-company-switcher',
|
|
16
|
+
parameters: { layout: 'padded', docs: { description: { component: componentDescription('bs-company-switcher') } } },
|
|
17
|
+
argTypes: {
|
|
18
|
+
currentId: { control: 'select', options: COMPANIES.map(c => c.id) },
|
|
19
|
+
switchingId: { control: 'select', options: [undefined, ...COMPANIES.map(c => c.id)] },
|
|
20
|
+
open: { control: 'boolean' },
|
|
21
|
+
},
|
|
22
|
+
args: { currentId: 'nordic', recentIds: RECENT_IDS, switchingId: undefined, open: false },
|
|
23
|
+
render: args => html `
|
|
24
|
+
<div style="min-height: 560px">
|
|
25
|
+
<bs-company-switcher
|
|
26
|
+
.companies=${COMPANIES}
|
|
27
|
+
.currentId=${args.currentId}
|
|
28
|
+
.recentIds=${args.recentIds}
|
|
29
|
+
.switchingId=${args.switchingId}
|
|
30
|
+
.open=${args.open}
|
|
31
|
+
></bs-company-switcher>
|
|
32
|
+
</div>
|
|
33
|
+
`,
|
|
34
|
+
};
|
|
35
|
+
export default meta;
|
|
36
|
+
export const Closed = {};
|
|
37
|
+
export const Open = { args: { open: true } };
|
|
38
|
+
export const Switching = { args: { open: true, switchingId: 'fjord' } };
|
|
39
|
+
export const SwitchingClosed = { args: { open: false, switchingId: 'fjord' } };
|
|
40
|
+
/** Types a query into the search field the way a user would (the component reads `bsInput` from `bs-input`). */
|
|
41
|
+
const typeQuery = (query) => async ({ canvasElement }) => {
|
|
42
|
+
const cs = canvasElement.querySelector('bs-company-switcher');
|
|
43
|
+
await new Promise(r => setTimeout(r, 100));
|
|
44
|
+
const input = cs?.shadowRoot?.querySelector('bs-input');
|
|
45
|
+
input?.dispatchEvent(new CustomEvent('bsInput', { detail: query, bubbles: true, composed: true }));
|
|
46
|
+
};
|
|
47
|
+
export const Search = { args: { open: true }, play: typeQuery('nord') };
|
|
48
|
+
export const NoResults = { args: { open: true }, play: typeQuery('zzz') };
|
|
49
|
+
export const Interactive = {
|
|
50
|
+
args: { open: false },
|
|
51
|
+
render: args => {
|
|
52
|
+
const wrap = document.createElement('div');
|
|
53
|
+
wrap.style.minHeight = '560px';
|
|
54
|
+
const out = document.createElement('output');
|
|
55
|
+
out.style.cssText = 'display:block;margin-top:8px;font:14px/20px monospace;color:var(--bs-text-secondary)';
|
|
56
|
+
out.textContent = 'Open the switcher, search, use the arrow keys, press Enter or Esc.';
|
|
57
|
+
const cs = document.createElement('bs-company-switcher');
|
|
58
|
+
cs.companies = COMPANIES;
|
|
59
|
+
cs.currentId = args.currentId;
|
|
60
|
+
cs.recentIds = args.recentIds;
|
|
61
|
+
cs.addEventListener('bsCompanySwitch', e => {
|
|
62
|
+
const c = e.detail;
|
|
63
|
+
out.textContent = `bsCompanySwitch ${c.name}`;
|
|
64
|
+
// Simulate a 1.2 s switch: show the spinner, then make it current and close.
|
|
65
|
+
cs.switchingId = c.id;
|
|
66
|
+
setTimeout(() => {
|
|
67
|
+
cs.currentId = c.id;
|
|
68
|
+
cs.switchingId = undefined;
|
|
69
|
+
cs.open = false;
|
|
70
|
+
}, 1200);
|
|
71
|
+
});
|
|
72
|
+
for (const n of ['bsManageCompanies', 'bsAddCompanies', 'bsOpenChange']) {
|
|
73
|
+
cs.addEventListener(n, e => (out.textContent = `${n} ${JSON.stringify(e.detail ?? '')}`));
|
|
74
|
+
}
|
|
75
|
+
wrap.append(cs, out);
|
|
76
|
+
return wrap;
|
|
77
|
+
},
|
|
78
|
+
};
|
|
@@ -234,7 +234,7 @@ export class BsComposer {
|
|
|
234
234
|
const placeholder = this.placeholder ?? DEFAULT_PLACEHOLDERS[this.variant];
|
|
235
235
|
const disabled = this.state === 'disabled';
|
|
236
236
|
const recording = this.state === 'recording';
|
|
237
|
-
return (h("div", { key: '
|
|
237
|
+
return (h("div", { key: 'ec6fd11d15f862e5d5633ee153572831562f8635', class: `bs-composer bs-composer--${this.state} bs-composer--${this.variant}` }, h("div", { key: '4de8e636ad98cf8cd280f35bab8723df0c59bcee', part: "attachments", class: `bs-composer__attachments-row ${this.hasAttachments ? 'bs-composer__attachments-row--visible' : ''}` }, h("slot", { key: '8abb10aca311a2d53d1e2980f7a9985b8467e9af', name: "attachments", onSlotchange: this.onAttachmentsSlotchange })), h("div", { key: '2e8de5850afda9498f9f08bbe5e2e5fbf86005dc', class: "bs-composer__text-row" }, h("textarea", { key: '8f75958b9a04785e32f347d87e5362e0e83a7aec', ref: el => (this.inputEl = el), part: "input", class: "bs-composer__input", rows: 1, value: this.value, placeholder: placeholder, disabled: disabled, maxLength: this.maxLength, "aria-label": this.ariaLabel, onInput: this.onInput, onKeyDown: this.onInputKeydown })), h("div", { key: 'd18ad65d7aefaa3b23ee0be475cdfa97dbcea546', class: "bs-composer__controls-row" }, !this.hideAttach && (h("button", { key: 'e953064c20184d159f0ef7b352bee7b7c1a28d1d', type: "button", part: "attach", class: "bs-composer__attach", "aria-label": this.attachLabel, onClick: this.onAttachClick }, h(PlusIcon, { key: '459ac92ed2c057f2882715f3cadbbf70faf1d180' }))), recording ? (h("span", { class: "bs-composer__waveform", "aria-hidden": "true" }, WAVEFORM_BAR_HEIGHTS.map(height => (h("span", { class: "bs-composer__waveform-bar", style: { '--bs-composer-bar-height': `${height}px` } }))))) : (h("span", { class: "bs-composer__spacer" })), !this.hideMic && (h("button", { key: '4f1039338eb4ae672f32da55fdd67ccb820983be', type: "button", part: "mic", class: `bs-composer__mic ${recording ? 'bs-composer__mic--recording' : ''}`, "aria-label": recording ? this.stopRecordingLabel : this.micLabel, disabled: disabled, onClick: this.onMicClick }, recording ? h(StopIcon, null) : h(MicIcon, null))), h("button", { key: '07b8f71f8d5a9ce1288e5cd42179935389b8aef8', type: "button", part: "action", class: `bs-composer__action bs-composer__action--${this.state}`, "aria-label": this.actionLabel(), disabled: disabled, "aria-busy": this.loading && this.state === 'idle' ? 'true' : undefined, onClick: this.onActionClick }, this.renderActionIcon()), h("slot", { key: '5e14d6db5a96be5123d7374bd66d5d044ffb767d', name: "actions-end" }))));
|
|
238
238
|
}
|
|
239
239
|
static get is() { return "bs-composer"; }
|
|
240
240
|
static get encapsulation() { return "shadow"; }
|
|
@@ -113,7 +113,7 @@ export class BsComposerStatusBanner {
|
|
|
113
113
|
return this.type === 'error' || this.type === 'warning' ? h(WarningIcon, null) : h(ClockIcon, null);
|
|
114
114
|
}
|
|
115
115
|
render() {
|
|
116
|
-
return (h("div", { key: '
|
|
116
|
+
return (h("div", { key: 'e7ee5d0dca888ba5126a292fd7ff9cefbdc47eda', role: this.roleForType(), "aria-busy": this.loading ? 'true' : undefined, class: `bs-composer-status-banner bs-composer-status-banner--${this.type}` }, h("div", { key: 'c44a8f911942a310b8cc706a10a97180f75013ff', class: "bs-composer-status-banner__message-group" }, this.showIcon && (h("span", { key: '7787871c8f6885068739d9fffd8d589b6babbd43', part: "icon", class: "bs-composer-status-banner__icon" }, h("slot", { key: 'a8dd0077f51e4a8b872ab6778d0387999022285b', name: "icon" }, this.renderDefaultIcon()))), h("p", { key: '398fb7946e36d45bd8ade95154d9d686fc5de6e1', part: "message", class: "bs-composer-status-banner__message" }, this.message)), this.showButton && (h("button", { key: '18874261ba3638533d3fdb876d19303d79c75259', type: "button", part: "action", class: "bs-composer-status-banner__action", onClick: this.onActionClick }, this.actionLabel)), this.allowClose && (h("button", { key: '187e50bbe911683937a7895cfe862028cc9f775a', type: "button", part: "close", class: "bs-composer-status-banner__close", "aria-label": this.closeLabel, onClick: this.onCloseClick }, h(CloseIcon, { key: 'c9dac11a2af23ba04d7c6836cbda7adbace51d8d' })))));
|
|
117
117
|
}
|
|
118
118
|
static get is() { return "bs-composer-status-banner"; }
|
|
119
119
|
static get encapsulation() { return "shadow"; }
|
|
@@ -21,7 +21,7 @@ export class BsContainer {
|
|
|
21
21
|
padding = '300';
|
|
22
22
|
render() {
|
|
23
23
|
const pad = SPACING_TOKENS.includes(String(this.padding)) ? String(this.padding) : '300';
|
|
24
|
-
return (h(Host, { key: '
|
|
24
|
+
return (h(Host, { key: 'c72bb071abd58c825dcd4b87351362de82a402fa', style: { '--bs-container-padding-token': `var(--bs-spacing-${pad})` } }, h("slot", { key: '341e67abd2a13b47d9d852696f212847c2624b38' })));
|
|
25
25
|
}
|
|
26
26
|
static get is() { return "bs-container"; }
|
|
27
27
|
static get encapsulation() { return "shadow"; }
|
|
@@ -87,11 +87,11 @@ export class BsDataTable {
|
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
89
|
render() {
|
|
90
|
-
return (h("table", { key: '
|
|
90
|
+
return (h("table", { key: 'd6b278e5252570f3b97ef3fdd53b132974041e6c', part: "table", class: "bs-data-table" }, h("thead", { key: '16280faa094841550a637466fa37ec2df6950e4b', part: "head" }, h("tr", { key: 'e78510a9b1b7966257cb626218aaf9f51bde402e' }, this.selectable && (h("th", { key: '1a79de8886d8d394fc0b06f283258db94e0f3b1f', class: "bs-data-table__select-col" }, this.rows.length > 0 && (h("input", { key: 'c34bd5b47dcea30418fce8674a2aefff7f8bf601', type: "checkbox", "aria-label": this.selectAllLabel, checked: this.selectedIds.size > 0 && this.selectedIds.size === this.rows.length, indeterminate: this.selectedIds.size > 0 && this.selectedIds.size < this.rows.length, onChange: this.onSelectAllChange })))), this.columns.map(column => {
|
|
91
91
|
const isSorted = this.sortColumn === column.key;
|
|
92
92
|
const ariaSort = column.sortable ? (isSorted ? (this.sortDirection === 'asc' ? 'ascending' : 'descending') : 'none') : undefined;
|
|
93
93
|
return (h("th", { part: "header-cell", class: "bs-data-table__header-cell", "aria-sort": ariaSort }, column.sortable ? (h("button", { type: "button", class: "bs-data-table__sort-button", onClick: () => this.onHeaderClick(column) }, column.label, isSorted && h("span", { class: "bs-data-table__sort-indicator" }, this.sortDirection === 'asc' ? ' ▲' : ' ▼'))) : (column.label)));
|
|
94
|
-
}))), h("tbody", { key: '
|
|
94
|
+
}))), h("tbody", { key: '80266f8d66ffdf7132bf2f331568db34ed53ed28', part: "body" }, this.rows.map(row => (h("tr", { part: "row", class: "bs-data-table__row" }, this.selectable && (h("td", { class: "bs-data-table__select-col" }, h("input", { type: "checkbox", checked: this.selectedIds.has(row.id), onChange: ev => this.onRowCheckboxChange(row, ev) }))), this.columns.map(column => this.cellRenderer ? (
|
|
95
95
|
// cellRenderer is a developer-supplied, trusted function (JS-property-only, never
|
|
96
96
|
// derived from untrusted input) -- its HTML output is intentionally not escaped,
|
|
97
97
|
// same trust model as React's dangerouslySetInnerHTML.
|
|
@@ -340,7 +340,7 @@ export class BsDatepicker {
|
|
|
340
340
|
: this.defaultTabbable(days);
|
|
341
341
|
const isInRange = (iso) => !!selectedStart && !!previewEnd && iso > selectedStart && iso < previewEnd;
|
|
342
342
|
const weekdays = this.weekdays();
|
|
343
|
-
return (h("bs-card", { key: '
|
|
343
|
+
return (h("bs-card", { key: 'cdb34fb56c5dd485e68fdbaf846c13ecc0547117', part: "container", class: "bs-datepicker", surface: "raised" }, h("div", { key: '348836d221ea9d88f81d74c756f6e33749185e77', class: "bs-datepicker__body" }, this.renderHeader(), h("div", { key: '19192cd83a674a876ddebb3048cf61392f5ce1b4', part: "nav", class: "bs-datepicker__nav" }, h("button", { key: '936dd7846972754b3e3e12e0b5d1ebf459f6626b', part: "prev", type: "button", class: "bs-datepicker__nav-button", "aria-label": this.previousLabel, onClick: () => this.moveView(-1) }, h("svg", { key: '8adff95c2ac4160773ba27b2bba2690376bf7b6e', viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true" }, h("path", { key: 'e07e13f74b49ef8676ef9b2b61648f2fbcd7ff26', d: "M15 18L9 12L15 6", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }))), h("div", { key: '60e2dccce60ce780002b5a37b7bce2cb77a7ded2', part: "title", class: "bs-datepicker__title", "aria-live": "polite" }, this.titleText()), h("button", { key: '4ea132ee9b1d1b7df1dd3595dc52e9cd977dc9d4', part: "next", type: "button", class: "bs-datepicker__nav-button", "aria-label": this.nextLabel, onClick: () => this.moveView(1) }, h("svg", { key: 'e648752590a0483c152a06ff2ebe1a4c7f459fd1', viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true" }, h("path", { key: '61f9ebdc93a4636284fe3215f0ff6699ef7bb8de', d: "M9 18L15 12L9 6", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" })))), h("div", { key: 'd94bd61c202b575b3ae4b8312224f302cf13330e', part: "grid", class: "bs-datepicker__grid", role: "grid", "aria-label": this.titleText() }, h("div", { key: 'ac7713f2ebdc1d429641d14856ed597866fb5a07', class: "bs-datepicker__row", role: "row" }, weekdays.map(w => (h("div", { part: "weekday", class: "bs-datepicker__weekday", role: "columnheader" }, w)))), Array.from({ length: 6 }, (_, r) => {
|
|
344
344
|
const row = days.slice(r * 7, r * 7 + 7);
|
|
345
345
|
return (h("div", { class: "bs-datepicker__row", role: "row" }, row.map((d, c) => {
|
|
346
346
|
const iso = toIso(d);
|
|
@@ -28,7 +28,7 @@ export class BsDivider {
|
|
|
28
28
|
const a11y = this.decorative
|
|
29
29
|
? { role: 'none', 'aria-hidden': 'true' }
|
|
30
30
|
: { role: 'separator', 'aria-orientation': orientation };
|
|
31
|
-
return (h(Host, { key: '
|
|
31
|
+
return (h(Host, { key: '858582c09f3f2712a3ee9d51a80a1f53b2a29dfb', ...a11y }, h("div", { key: '184d290fbfdabab256850af57792e7d6c5ebf563', class: "line", part: "line" })));
|
|
32
32
|
}
|
|
33
33
|
static get is() { return "bs-divider"; }
|
|
34
34
|
static get encapsulation() { return "shadow"; }
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { render, h, describe, it, expect } from "@stencil/vitest";
|
|
2
|
+
import { assertShadowParts, runAxeCheck } from "../../test/helpers/conventions";
|
|
3
|
+
const q = (el, s) => el.shadowRoot.querySelector(s);
|
|
4
|
+
describe('bs-empty-state', () => {
|
|
5
|
+
it('has the Figma geometry', async () => {
|
|
6
|
+
const { root } = await render(h("bs-empty-state", { heading: "No results", description: "Try again", style: { width: '480px' } }, h("svg", { slot: "icon", viewBox: "0 0 24 24" }), h("bs-button", { slot: "action", variant: "outlined" }, "Clear")));
|
|
7
|
+
const c = getComputedStyle(q(root, '[part="container"]'));
|
|
8
|
+
expect(c.paddingTop).toBe('56px');
|
|
9
|
+
expect(c.paddingLeft).toBe('24px');
|
|
10
|
+
expect(c.rowGap).toBe('12px');
|
|
11
|
+
expect(c.alignItems).toBe('center');
|
|
12
|
+
expect(c.textAlign).toBe('center');
|
|
13
|
+
const tile = q(root, '[part="icon"]');
|
|
14
|
+
expect(tile.getAttribute('size')).toBe('lg');
|
|
15
|
+
expect(Math.round(tile.shadowRoot.querySelector('[part="container"]').getBoundingClientRect().width)).toBe(48);
|
|
16
|
+
const hd = getComputedStyle(q(root, '[part="heading"]'));
|
|
17
|
+
expect(hd.fontSize).toBe('20px');
|
|
18
|
+
expect(hd.lineHeight).toBe('24px');
|
|
19
|
+
expect(hd.fontWeight).toBe('700');
|
|
20
|
+
const ds = getComputedStyle(q(root, '[part="description"]'));
|
|
21
|
+
expect(ds.fontSize).toBe('14px');
|
|
22
|
+
expect(ds.lineHeight).toBe('20px');
|
|
23
|
+
// description fills the container width (480 - 2 * 24)
|
|
24
|
+
expect(Math.round(q(root, '[part="description"]').getBoundingClientRect().width)).toBe(432);
|
|
25
|
+
assertShadowParts(root.shadowRoot, ['container', 'icon', 'heading', 'description', 'action']);
|
|
26
|
+
});
|
|
27
|
+
it('renders an h3 by default and honours headingLevel (clamped to 2-6)', async () => {
|
|
28
|
+
const { root, waitForChanges } = await render(h("bs-empty-state", { heading: "H" }));
|
|
29
|
+
expect(q(root, '[part="heading"]').tagName).toBe('H3');
|
|
30
|
+
root.headingLevel = 5;
|
|
31
|
+
await waitForChanges();
|
|
32
|
+
expect(q(root, '[part="heading"]').tagName).toBe('H5');
|
|
33
|
+
root.headingLevel = 1;
|
|
34
|
+
await waitForChanges();
|
|
35
|
+
expect(q(root, '[part="heading"]').tagName).toBe('H2');
|
|
36
|
+
root.headingLevel = 9;
|
|
37
|
+
await waitForChanges();
|
|
38
|
+
expect(q(root, '[part="heading"]').tagName).toBe('H6');
|
|
39
|
+
});
|
|
40
|
+
it('passes intent to the icon tile and has no role', async () => {
|
|
41
|
+
const { root, waitForChanges } = await render(h("bs-empty-state", { heading: "H" }));
|
|
42
|
+
expect(q(root, '[part="icon"]').getAttribute('intent')).toBe('default');
|
|
43
|
+
expect(root.hasAttribute('role')).toBe(false);
|
|
44
|
+
expect(q(root, '[part="container"]').hasAttribute('role')).toBe(false);
|
|
45
|
+
root.setAttribute('intent', 'error');
|
|
46
|
+
await waitForChanges();
|
|
47
|
+
expect(q(root, '[part="icon"]').getAttribute('intent')).toBe('error');
|
|
48
|
+
});
|
|
49
|
+
it('only renders the action wrapper when the action slot is filled, and the default slot replaces the description', async () => {
|
|
50
|
+
const { root, waitForChanges } = await render(h("bs-empty-state", { heading: "H", description: "Prop text" }));
|
|
51
|
+
expect(q(root, '[part="action"]')).toBeNull();
|
|
52
|
+
expect(q(root, '[part="description"]').textContent).toBe('Prop text');
|
|
53
|
+
const btn = document.createElement('bs-button');
|
|
54
|
+
btn.setAttribute('slot', 'action');
|
|
55
|
+
root.appendChild(btn);
|
|
56
|
+
const rich = document.createElement('span');
|
|
57
|
+
rich.textContent = 'Slotted';
|
|
58
|
+
root.appendChild(rich);
|
|
59
|
+
await new Promise(r => setTimeout(r, 50));
|
|
60
|
+
await waitForChanges();
|
|
61
|
+
expect(q(root, '[part="action"]')).not.toBeNull();
|
|
62
|
+
const slot = q(root, '[part="description"] slot');
|
|
63
|
+
expect(slot.assignedNodes()[0]).toBe(rich);
|
|
64
|
+
});
|
|
65
|
+
it('shows the slotted icon inside the tile', async () => {
|
|
66
|
+
const { root } = await render(h("bs-empty-state", { heading: "H" }, h("svg", { slot: "icon", viewBox: "0 0 24 24" })));
|
|
67
|
+
const tile = q(root, '[part="icon"]');
|
|
68
|
+
const slot = q(root, '[part="icon"] slot[name="icon"]');
|
|
69
|
+
expect(slot.assignedElements()[0].tagName.toLowerCase()).toBe('svg');
|
|
70
|
+
expect(tile).not.toBeNull();
|
|
71
|
+
});
|
|
72
|
+
it('uses the light and dark heading colour from tokens', async () => {
|
|
73
|
+
const { root } = await render(h("bs-empty-state", { heading: "H" }));
|
|
74
|
+
const light = getComputedStyle(q(root, '[part="heading"]')).color;
|
|
75
|
+
document.documentElement.setAttribute('data-theme', 'dark');
|
|
76
|
+
try {
|
|
77
|
+
await new Promise(r => setTimeout(r, 100));
|
|
78
|
+
expect(getComputedStyle(q(root, '[part="heading"]')).color).not.toBe(light);
|
|
79
|
+
}
|
|
80
|
+
finally {
|
|
81
|
+
document.documentElement.removeAttribute('data-theme');
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
it('passes axe', async () => {
|
|
85
|
+
const { root } = await render(h("bs-empty-state", { heading: "No results", description: "Try again", intent: "error" }, h("svg", { slot: "icon", viewBox: "0 0 24 24" }), h("bs-button", { slot: "action", variant: "outlined" }, "Retry")));
|
|
86
|
+
await runAxeCheck(root);
|
|
87
|
+
});
|
|
88
|
+
it('shows the description prop even when formatted markup puts whitespace text nodes in the default slot', async () => {
|
|
89
|
+
const { root } = await render(h("div", null));
|
|
90
|
+
root.innerHTML = `
|
|
91
|
+
<bs-empty-state heading="No results" description="Try a wider date range.">
|
|
92
|
+
<svg slot="icon" viewBox="0 0 24 24"></svg>
|
|
93
|
+
<bs-button slot="action" variant="outlined">Clear</bs-button>
|
|
94
|
+
</bs-empty-state>`;
|
|
95
|
+
const es = root.querySelector('bs-empty-state');
|
|
96
|
+
await new Promise(r => setTimeout(r, 200));
|
|
97
|
+
const d = q(es, '[part="description"]');
|
|
98
|
+
expect(d).not.toBeNull();
|
|
99
|
+
expect(d.textContent.trim()).toBe('Try a wider date range.');
|
|
100
|
+
expect(d.getBoundingClientRect().height).toBeGreaterThan(0);
|
|
101
|
+
});
|
|
102
|
+
});
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
:host {
|
|
2
|
+
display: block;
|
|
3
|
+
box-sizing: border-box;
|
|
4
|
+
--bs-empty-state-padding-y: var(--bs-spacing-700);
|
|
5
|
+
/* Figma: 24px; --bs-spacing-300 is 24px. */
|
|
6
|
+
--bs-empty-state-padding-x: var(--bs-spacing-300);
|
|
7
|
+
--bs-empty-state-gap: var(--bs-spacing-150);
|
|
8
|
+
--bs-empty-state-heading-color: var(--bs-text-default);
|
|
9
|
+
--bs-empty-state-description-color: var(--bs-text-secondary);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.bs-empty-state {
|
|
13
|
+
box-sizing: border-box;
|
|
14
|
+
display: flex;
|
|
15
|
+
flex-direction: column;
|
|
16
|
+
align-items: center;
|
|
17
|
+
gap: var(--bs-empty-state-gap);
|
|
18
|
+
padding: var(--bs-empty-state-padding-y) var(--bs-empty-state-padding-x);
|
|
19
|
+
text-align: center;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.bs-empty-state__heading {
|
|
23
|
+
margin: 0;
|
|
24
|
+
align-self: stretch;
|
|
25
|
+
color: var(--bs-empty-state-heading-color);
|
|
26
|
+
font-family: inherit;
|
|
27
|
+
font-size: var(--bs-font-size-xl);
|
|
28
|
+
font-weight: var(--bs-font-weight-bold);
|
|
29
|
+
line-height: 24px;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.bs-empty-state__description {
|
|
33
|
+
margin: 0;
|
|
34
|
+
align-self: stretch;
|
|
35
|
+
color: var(--bs-empty-state-description-color);
|
|
36
|
+
font-family: inherit;
|
|
37
|
+
font-size: var(--bs-font-size-sm);
|
|
38
|
+
font-weight: var(--bs-font-weight-regular);
|
|
39
|
+
line-height: 20px;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.bs-empty-state__action {
|
|
43
|
+
display: flex;
|
|
44
|
+
justify-content: center;
|
|
45
|
+
}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
/**
|
|
3
|
+
* A centered "nothing to show" block: an icon tile, a heading, a description and an optional action.
|
|
4
|
+
* Used for empty lists, "no results" and error states inside a panel, card or page section.
|
|
5
|
+
*
|
|
6
|
+
* Built from `bs-icon-tile` (and, in your `action` slot, usually a `bs-button`).
|
|
7
|
+
*
|
|
8
|
+
* The component has no role. Live regions belong on a wrapper you control (e.g. `role="status"` on the
|
|
9
|
+
* element that stays in the DOM while this block appears and disappears).
|
|
10
|
+
*
|
|
11
|
+
* ## When to use
|
|
12
|
+
* - A list, table or search result that has nothing to show, or failed to load.
|
|
13
|
+
*
|
|
14
|
+
* ## When not to use
|
|
15
|
+
* - A full-page error with a status code -- use `bs-error-page`.
|
|
16
|
+
* - A transient message -- use `bs-toast` or `bs-snackbar`.
|
|
17
|
+
*
|
|
18
|
+
* @slot icon - The glyph inside the icon tile (24px, `currentColor`). Falls back to the tile's intent glyph.
|
|
19
|
+
* @slot - The description (overrides the `description` prop).
|
|
20
|
+
* @slot action - An optional action, e.g. `<bs-button variant="outlined">`.
|
|
21
|
+
* @part container - The centered column.
|
|
22
|
+
* @part icon - The icon tile (`bs-icon-tile`).
|
|
23
|
+
* @part heading - The heading element.
|
|
24
|
+
* @part description - The description paragraph.
|
|
25
|
+
* @part action - The action wrapper (only rendered while the `action` slot is filled).
|
|
26
|
+
* @prop --bs-empty-state-padding-y - Vertical padding. Aliased to `--bs-spacing-700` (56px).
|
|
27
|
+
* @prop --bs-empty-state-padding-x - Horizontal padding. Aliased to `--bs-spacing-300` (24px).
|
|
28
|
+
* @prop --bs-empty-state-gap - Gap between tile, heading, description and action. Aliased to `--bs-spacing-150`.
|
|
29
|
+
* @prop --bs-empty-state-heading-color - Aliased to `--bs-text-default`.
|
|
30
|
+
* @prop --bs-empty-state-description-color - Aliased to `--bs-text-secondary`.
|
|
31
|
+
*/
|
|
32
|
+
export class BsEmptyState {
|
|
33
|
+
el;
|
|
34
|
+
/** The heading text. */
|
|
35
|
+
heading;
|
|
36
|
+
/** The description text. The default slot overrides it. */
|
|
37
|
+
description;
|
|
38
|
+
/** Colour and default glyph of the icon tile. Use `error` for failures. */
|
|
39
|
+
intent = 'default';
|
|
40
|
+
/** Heading level, 2 to 6 (renders `h2`..`h6`). Pick the one that fits the page outline. */
|
|
41
|
+
headingLevel = 3;
|
|
42
|
+
hasIcon = false;
|
|
43
|
+
hasDescriptionSlot = false;
|
|
44
|
+
hasAction = false;
|
|
45
|
+
observer;
|
|
46
|
+
componentWillLoad() {
|
|
47
|
+
this.readSlots();
|
|
48
|
+
this.observer = new MutationObserver(() => this.readSlots());
|
|
49
|
+
this.observer.observe(this.el, { childList: true, subtree: false, characterData: false });
|
|
50
|
+
}
|
|
51
|
+
disconnectedCallback() {
|
|
52
|
+
this.observer?.disconnect();
|
|
53
|
+
}
|
|
54
|
+
readSlots() {
|
|
55
|
+
const nodes = Array.from(this.el.childNodes);
|
|
56
|
+
const slotOf = (n) => (n.nodeType === Node.ELEMENT_NODE ? n.getAttribute('slot') : null);
|
|
57
|
+
this.hasIcon = nodes.some(n => slotOf(n) === 'icon');
|
|
58
|
+
this.hasAction = nodes.some(n => slotOf(n) === 'action');
|
|
59
|
+
this.hasDescriptionSlot = nodes.some(n => !slotOf(n) && (n.nodeType === Node.ELEMENT_NODE || (n.nodeType === Node.TEXT_NODE && !!n.textContent?.trim())));
|
|
60
|
+
}
|
|
61
|
+
render() {
|
|
62
|
+
const level = Math.min(6, Math.max(2, Math.round(Number(this.headingLevel)) || 3));
|
|
63
|
+
const Heading = `h${level}`;
|
|
64
|
+
return (h("div", { key: 'dabc994fcb254cb35958f8bde54d7935bb6ff70a', part: "container", class: "bs-empty-state" }, h("bs-icon-tile", { key: 'efec1cc06eb3447fbd81b12634c12ee96f9fd0d2', part: "icon", size: "lg", intent: this.intent }, this.hasIcon && h("slot", { key: 'd8a7482e2b32f6361b82232652edcc1aadb74a5b', name: "icon" })), this.heading && (h(Heading, { key: '6625baa3d00097951042608aeb888f7c1665e987', part: "heading", class: "bs-empty-state__heading" }, this.heading)), (this.description || this.hasDescriptionSlot) && (h("p", { key: 'c367d9d3aa154e8413c04ca47de7cd9f5eed6883', part: "description", class: "bs-empty-state__description" }, this.hasDescriptionSlot ? h("slot", null) : this.description)), this.hasAction && (h("div", { key: '7b9b78de4e71e6d07d94d4595290492542d7bf62', part: "action", class: "bs-empty-state__action" }, h("slot", { key: '7b57218ca03edfd6f972a2bb6ce458db8dc33d9a', name: "action" })))));
|
|
65
|
+
}
|
|
66
|
+
static get is() { return "bs-empty-state"; }
|
|
67
|
+
static get encapsulation() { return "shadow"; }
|
|
68
|
+
static get originalStyleUrls() {
|
|
69
|
+
return {
|
|
70
|
+
"$": ["bs-empty-state.css"]
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
static get styleUrls() {
|
|
74
|
+
return {
|
|
75
|
+
"$": ["bs-empty-state.css"]
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
static get properties() {
|
|
79
|
+
return {
|
|
80
|
+
"heading": {
|
|
81
|
+
"type": "string",
|
|
82
|
+
"mutable": false,
|
|
83
|
+
"complexType": {
|
|
84
|
+
"original": "string",
|
|
85
|
+
"resolved": "string",
|
|
86
|
+
"references": {}
|
|
87
|
+
},
|
|
88
|
+
"required": false,
|
|
89
|
+
"optional": true,
|
|
90
|
+
"docs": {
|
|
91
|
+
"tags": [],
|
|
92
|
+
"text": "The heading text."
|
|
93
|
+
},
|
|
94
|
+
"getter": false,
|
|
95
|
+
"setter": false,
|
|
96
|
+
"reflect": false,
|
|
97
|
+
"attribute": "heading"
|
|
98
|
+
},
|
|
99
|
+
"description": {
|
|
100
|
+
"type": "string",
|
|
101
|
+
"mutable": false,
|
|
102
|
+
"complexType": {
|
|
103
|
+
"original": "string",
|
|
104
|
+
"resolved": "string",
|
|
105
|
+
"references": {}
|
|
106
|
+
},
|
|
107
|
+
"required": false,
|
|
108
|
+
"optional": true,
|
|
109
|
+
"docs": {
|
|
110
|
+
"tags": [],
|
|
111
|
+
"text": "The description text. The default slot overrides it."
|
|
112
|
+
},
|
|
113
|
+
"getter": false,
|
|
114
|
+
"setter": false,
|
|
115
|
+
"reflect": false,
|
|
116
|
+
"attribute": "description"
|
|
117
|
+
},
|
|
118
|
+
"intent": {
|
|
119
|
+
"type": "string",
|
|
120
|
+
"mutable": false,
|
|
121
|
+
"complexType": {
|
|
122
|
+
"original": "BsIconTileIntent",
|
|
123
|
+
"resolved": "\"brand\" | \"default\" | \"error\" | \"information\" | \"success\" | \"warning\"",
|
|
124
|
+
"references": {
|
|
125
|
+
"BsIconTileIntent": {
|
|
126
|
+
"location": "import",
|
|
127
|
+
"path": "../bs-icon-tile/bs-icon-tile",
|
|
128
|
+
"id": "src/components/bs-icon-tile/bs-icon-tile.tsx::BsIconTileIntent",
|
|
129
|
+
"referenceLocation": "BsIconTileIntent"
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
},
|
|
133
|
+
"required": false,
|
|
134
|
+
"optional": false,
|
|
135
|
+
"docs": {
|
|
136
|
+
"tags": [],
|
|
137
|
+
"text": "Colour and default glyph of the icon tile. Use `error` for failures."
|
|
138
|
+
},
|
|
139
|
+
"getter": false,
|
|
140
|
+
"setter": false,
|
|
141
|
+
"reflect": true,
|
|
142
|
+
"attribute": "intent",
|
|
143
|
+
"defaultValue": "'default'"
|
|
144
|
+
},
|
|
145
|
+
"headingLevel": {
|
|
146
|
+
"type": "number",
|
|
147
|
+
"mutable": false,
|
|
148
|
+
"complexType": {
|
|
149
|
+
"original": "2 | 3 | 4 | 5 | 6",
|
|
150
|
+
"resolved": "2 | 3 | 4 | 5 | 6",
|
|
151
|
+
"references": {}
|
|
152
|
+
},
|
|
153
|
+
"required": false,
|
|
154
|
+
"optional": false,
|
|
155
|
+
"docs": {
|
|
156
|
+
"tags": [],
|
|
157
|
+
"text": "Heading level, 2 to 6 (renders `h2`..`h6`). Pick the one that fits the page outline."
|
|
158
|
+
},
|
|
159
|
+
"getter": false,
|
|
160
|
+
"setter": false,
|
|
161
|
+
"reflect": false,
|
|
162
|
+
"attribute": "heading-level",
|
|
163
|
+
"defaultValue": "3"
|
|
164
|
+
}
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
static get states() {
|
|
168
|
+
return {
|
|
169
|
+
"hasIcon": {},
|
|
170
|
+
"hasDescriptionSlot": {},
|
|
171
|
+
"hasAction": {}
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
static get elementRef() { return "el"; }
|
|
175
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { html } from "lit";
|
|
2
|
+
import { componentDescription } from "../../stories-utils";
|
|
3
|
+
const SEARCH_ICON = html `<svg slot="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="11" cy="11" r="7" /><path d="m20 20-3.5-3.5" /></svg>`;
|
|
4
|
+
const WARNING_ICON = html `<svg slot="icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="9" /><path d="M12 7.5v5M12 16.2v.1" /></svg>`;
|
|
5
|
+
const meta = {
|
|
6
|
+
title: 'Components/bs-empty-state',
|
|
7
|
+
parameters: { docs: { description: { component: componentDescription('bs-empty-state') } } },
|
|
8
|
+
argTypes: {
|
|
9
|
+
heading: { control: 'text' },
|
|
10
|
+
description: { control: 'text' },
|
|
11
|
+
intent: { control: 'select', options: ['default', 'success', 'warning', 'error', 'brand', 'information'] },
|
|
12
|
+
headingLevel: { control: 'select', options: [2, 3, 4, 5, 6] },
|
|
13
|
+
},
|
|
14
|
+
args: {
|
|
15
|
+
heading: 'No events match these filters',
|
|
16
|
+
description: 'Try a wider date range or clear filters.',
|
|
17
|
+
intent: 'default',
|
|
18
|
+
headingLevel: 3,
|
|
19
|
+
},
|
|
20
|
+
render: args => html `
|
|
21
|
+
<div style="width: 480px">
|
|
22
|
+
<bs-empty-state heading=${args.heading} description=${args.description} intent=${args.intent} .headingLevel=${args.headingLevel}>
|
|
23
|
+
${SEARCH_ICON}
|
|
24
|
+
<bs-button slot="action" variant="outlined">Clear filters</bs-button>
|
|
25
|
+
</bs-empty-state>
|
|
26
|
+
</div>
|
|
27
|
+
`,
|
|
28
|
+
};
|
|
29
|
+
export default meta;
|
|
30
|
+
export const NoResults = {};
|
|
31
|
+
export const Error = {
|
|
32
|
+
args: {
|
|
33
|
+
heading: 'Search isn’t available right now',
|
|
34
|
+
description: 'We couldn’t reach the server. Your query is kept — try again in a moment.',
|
|
35
|
+
intent: 'error',
|
|
36
|
+
},
|
|
37
|
+
render: args => html `
|
|
38
|
+
<div style="width: 480px">
|
|
39
|
+
<bs-empty-state heading=${args.heading} description=${args.description} intent=${args.intent}>
|
|
40
|
+
${WARNING_ICON}
|
|
41
|
+
<bs-button slot="action" variant="outlined">Try again</bs-button>
|
|
42
|
+
</bs-empty-state>
|
|
43
|
+
</div>
|
|
44
|
+
`,
|
|
45
|
+
};
|
|
46
|
+
export const WithoutAction = {
|
|
47
|
+
render: args => html `
|
|
48
|
+
<div style="width: 480px">
|
|
49
|
+
<bs-empty-state heading=${args.heading} description=${args.description}>${SEARCH_ICON}</bs-empty-state>
|
|
50
|
+
</div>
|
|
51
|
+
`,
|
|
52
|
+
};
|
|
@@ -65,7 +65,7 @@ export class BsErrorPage {
|
|
|
65
65
|
const primary = this.primaryLabel ?? d.primary;
|
|
66
66
|
const secondary = this.secondaryLabel ?? d.secondary;
|
|
67
67
|
const level = Math.min(6, Math.max(1, Math.trunc(Number(this.headingLevel)) || 1));
|
|
68
|
-
return (h("bs-card", { key: '
|
|
68
|
+
return (h("bs-card", { key: '4214c79438721c66089be3a4ae64fcd6bdcbdea6', part: "container", class: "bs-error-page", surface: "base" }, h("div", { key: '39b2a7292d488442fc2465635a5be9dd704dc42e', class: "bs-error-page__body" }, h("div", { key: 'beb353eefb6b77b03fe7d1ea3894b6a625eebe06', class: "bs-error-page__art-group" }, h("bs-icon-tile", { key: '516a9c87ddb3ac5140d2880d4638eb5eca01db73', part: "art", class: `bs-error-page__art ${d.info ? 'bs-error-page__art--info' : ''}`, intent: d.intent, size: "lg" }, h("slot", { key: '3c3029ce78413f49c4bb839260c432848329b428', name: "icon" }, d.glyph())), code && (h("span", { key: 'fc4058b507c0b60ca417f09f7838664716b17fc3', part: "code", class: "bs-error-page__code" }, code))), h(`h${level}`, { part: 'heading', class: { 'bs-error-page__heading': true } }, heading), description && (h("p", { key: 'b914f77506217b401e26694205104d623596d270', part: "description", class: "bs-error-page__description" }, description)), (primary || secondary) && (h("div", { key: 'b6dc2e92b34960f754a54b31a659337135e63607', part: "actions", class: "bs-error-page__actions" }, primary && (h("bs-button", { key: 'e4f85bf6e86a80fbf1bd09fc77e16768c435a97b', part: "primary", variant: "primary", onClick: () => this.bsPrimary.emit() }, primary)), secondary && (h("bs-button", { key: 'a1469448cfbf1edb0bb8fe1d613101782dc87145', part: "secondary", variant: "outlined", onClick: () => this.bsSecondary.emit() }, secondary)))), this.reference && (h("p", { key: 'e8f32f0cc84051d02418bb48bc6116675ec55097', part: "reference", class: "bs-error-page__reference" }, this.reference)))));
|
|
69
69
|
}
|
|
70
70
|
static get is() { return "bs-error-page"; }
|
|
71
71
|
static get encapsulation() { return "shadow"; }
|
|
@@ -112,7 +112,7 @@ export class BsFileUpload {
|
|
|
112
112
|
this.handleFiles(files);
|
|
113
113
|
};
|
|
114
114
|
render() {
|
|
115
|
-
return (h("div", { key: '
|
|
115
|
+
return (h("div", { key: '5312a866a1db63fd378f265fc200a509bfd50ce1', part: "dropzone", class: `bs-file-upload bs-file-upload--${this.direction} ${this.dragging ? 'bs-file-upload--dragging' : ''} ${this.disabled ? 'bs-file-upload--disabled' : ''}`, onDragEnter: this.onDragOver, onDragOver: this.onDragOver, onDragLeave: this.onDragLeave, onDrop: this.onDrop }, h("div", { key: '7276ccfa10a086d933b5563a208393a75e0dd821', part: "icon", class: "bs-file-upload__icon" }, h("slot", { key: 'e828eaa70303c82cb2bea5e647807079946b62e7', name: "icon" }, h(UploadIcon, { key: 'bd6ee5b8b20996ee68f972cb79db7c47f645c4d3' }))), h("div", { key: '784440974685713b31ba97642b931b99e64433a3', class: "bs-file-upload__content" }, h("div", { key: 'c7568214218e02ecb794f3429b843462f88bf216', class: "bs-file-upload__text" }, this.heading && (h("span", { key: '4872f617be4f30b9ab98aeca2dca7012d9391905', part: "heading", class: "bs-file-upload__heading" }, this.heading)), this.description && (h("span", { key: 'd8f446f1f8690ec773b094aeeb66af49ec1de291', part: "description", id: "description", class: "bs-file-upload__description" }, this.description))), h("bs-button", { key: 'bb0634e3e0dcb4a4ef59fa7c5daeaacbff5bceda', part: "browse", variant: "neutral", size: "sm", disabled: this.disabled, onClick: this.onBrowse }, this.buttonLabel)), h("input", { key: 'f55602446ec222ca46b7dab95aaff26d6d5b1632', ref: el => (this.inputEl = el), class: "bs-file-upload__input", type: "file", hidden: true, tabindex: -1, accept: this.accept, multiple: this.multiple, disabled: this.disabled, "aria-describedby": this.description ? 'description' : undefined, onChange: this.onInputChange })));
|
|
116
116
|
}
|
|
117
117
|
static get is() { return "bs-file-upload"; }
|
|
118
118
|
static get encapsulation() { return "shadow"; }
|
|
@@ -86,7 +86,7 @@ export class BsFileUploadItem {
|
|
|
86
86
|
}
|
|
87
87
|
render() {
|
|
88
88
|
const removing = this.state === 'success';
|
|
89
|
-
return (h("div", { key: '
|
|
89
|
+
return (h("div", { key: '26933845798c1cee2739c2a5a3d402175244717b', part: "item", class: `bs-file-upload-item bs-file-upload-item--${this.state}` }, h("div", { key: 'b7312bfd0a7bcbeac8e098be4cb6d565283f2e0f', part: "thumbnail", class: "bs-file-upload-item__thumbnail" }, h("slot", { key: '69350d5224f540e0f4d5033e3ac92ccff397b565', name: "thumbnail" }, this.thumbnailSrc ? (h("img", { class: "bs-file-upload-item__image", src: this.thumbnailSrc, alt: this.thumbnailAlt })) : (h(ImageIcon, null)))), h("div", { key: 'fbe429e0dd56af6fe5d955ce384a335c9ce3843a', class: "bs-file-upload-item__content" }, h("div", { key: 'b45f5b5500d760dcfb0d8fe3e87638db9325ae99', class: "bs-file-upload-item__meta" }, h("span", { key: '7e5a8cd3ccca37c88182d0e430841f36f29f56e7', part: "name", class: "bs-file-upload-item__name" }, this.fileName), this.fileSize && (h("span", { key: '114e9167c4542c9e071ebb21ee77d25d5c9221b4', part: "size", class: "bs-file-upload-item__size" }, this.fileSize))), this.renderStatus()), h("bs-icon-button", { key: 'f6a9a212a6436ac50eaab6b0224b58245171a7de', part: "action", variant: "subtle", size: "lg", ariaLabel: removing ? this.removeLabel : this.cancelLabel, onClick: this.onAction }, removing ? h(TrashIcon, null) : h(CloseIcon, null))));
|
|
90
90
|
}
|
|
91
91
|
static get is() { return "bs-file-upload-item"; }
|
|
92
92
|
static get encapsulation() { return "shadow"; }
|