@brandsync/wc 1.21.0 → 1.22.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.
Files changed (576) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/REFERENCE.md +2 -1
  3. package/custom-elements.json +136 -4
  4. package/dist/brandsync-wc/brandsync-wc.esm.js +1 -1
  5. package/dist/brandsync-wc/{p-7ee43b50.entry.js → p-018ab194.entry.js} +1 -1
  6. package/dist/brandsync-wc/{p-faea22be.entry.js → p-020a274b.entry.js} +1 -1
  7. package/dist/brandsync-wc/{p-3937bc23.entry.js → p-0276bca4.entry.js} +1 -1
  8. package/dist/brandsync-wc/p-03acdd56.entry.js +1 -0
  9. package/dist/brandsync-wc/{p-f5bbbff2.entry.js → p-06a5fe99.entry.js} +1 -1
  10. package/dist/brandsync-wc/{p-383c076f.entry.js → p-0a0798c4.entry.js} +1 -1
  11. package/dist/brandsync-wc/{p-b6b880c0.entry.js → p-0b92d0d7.entry.js} +1 -1
  12. package/dist/brandsync-wc/{p-bd37c086.entry.js → p-0be65af0.entry.js} +1 -1
  13. package/dist/brandsync-wc/{p-c700a860.entry.js → p-0ce29fc2.entry.js} +1 -1
  14. package/dist/brandsync-wc/{p-34dd0976.entry.js → p-1436ae47.entry.js} +1 -1
  15. package/dist/brandsync-wc/{p-6cf303f1.entry.js → p-181a8372.entry.js} +1 -1
  16. package/dist/brandsync-wc/{p-2eed5ff2.entry.js → p-1bd3756c.entry.js} +1 -1
  17. package/dist/brandsync-wc/p-1c2402eb.entry.js +1 -0
  18. package/dist/brandsync-wc/{p-c1207ce6.entry.js → p-214b32bb.entry.js} +1 -1
  19. package/dist/brandsync-wc/{p-c305bde7.entry.js → p-21a592a4.entry.js} +1 -1
  20. package/dist/brandsync-wc/{p-64ef4a9f.entry.js → p-23e3bffe.entry.js} +1 -1
  21. package/dist/brandsync-wc/{p-324f0d11.entry.js → p-284e4e1e.entry.js} +1 -1
  22. package/dist/brandsync-wc/{p-fbd33eb3.entry.js → p-2c167f83.entry.js} +1 -1
  23. package/dist/brandsync-wc/p-2e2dc322.entry.js +1 -0
  24. package/dist/brandsync-wc/{p-b3284eca.entry.js → p-37da7465.entry.js} +1 -1
  25. package/dist/brandsync-wc/{p-56bd821c.entry.js → p-38f4552f.entry.js} +1 -1
  26. package/dist/brandsync-wc/{p-c542d67f.entry.js → p-39afd9b8.entry.js} +1 -1
  27. package/dist/brandsync-wc/{p-08af052c.entry.js → p-3a13747b.entry.js} +1 -1
  28. package/dist/brandsync-wc/{p-c5fa5d02.entry.js → p-3b3a9587.entry.js} +1 -1
  29. package/dist/brandsync-wc/{p-1ddcd867.entry.js → p-3de7989e.entry.js} +1 -1
  30. package/dist/brandsync-wc/{p-189eb922.entry.js → p-43a792a3.entry.js} +1 -1
  31. package/dist/brandsync-wc/{p-cf615c99.entry.js → p-4907f66e.entry.js} +1 -1
  32. package/dist/brandsync-wc/{p-0d3d8b6c.entry.js → p-4a8c2eca.entry.js} +1 -1
  33. package/dist/brandsync-wc/{p-da934f7b.entry.js → p-4ff5bc4b.entry.js} +1 -1
  34. package/dist/brandsync-wc/{p-2be42af3.entry.js → p-51e9d375.entry.js} +1 -1
  35. package/dist/brandsync-wc/{p-a30d456d.entry.js → p-5399e163.entry.js} +1 -1
  36. package/dist/brandsync-wc/{p-2e654764.entry.js → p-55db935b.entry.js} +1 -1
  37. package/dist/brandsync-wc/p-5f26d601.entry.js +1 -0
  38. package/dist/brandsync-wc/{p-83ea17b6.entry.js → p-60e4e07a.entry.js} +1 -1
  39. package/dist/brandsync-wc/{p-ea4ea55d.entry.js → p-645e1a78.entry.js} +1 -1
  40. package/dist/brandsync-wc/{p-05698f65.entry.js → p-682b9f3e.entry.js} +1 -1
  41. package/dist/brandsync-wc/{p-59ddf12e.entry.js → p-697de2b2.entry.js} +1 -1
  42. package/dist/brandsync-wc/{p-fc859e89.entry.js → p-6aa3dcef.entry.js} +1 -1
  43. package/dist/brandsync-wc/{p-9065d825.entry.js → p-6b11aebb.entry.js} +1 -1
  44. package/dist/brandsync-wc/{p-aea1e4f9.entry.js → p-6d18ba79.entry.js} +1 -1
  45. package/dist/brandsync-wc/p-6fcfd7d7.entry.js +1 -0
  46. package/dist/brandsync-wc/{p-4ec0dca9.entry.js → p-71ea6c1c.entry.js} +1 -1
  47. package/dist/brandsync-wc/{p-205a1ccf.entry.js → p-74dd9146.entry.js} +1 -1
  48. package/dist/brandsync-wc/{p-b9014d87.entry.js → p-75ec385a.entry.js} +1 -1
  49. package/dist/brandsync-wc/{p-82c8fde1.entry.js → p-78fdcd05.entry.js} +1 -1
  50. package/dist/brandsync-wc/{p-b0b73f22.entry.js → p-7a291cfc.entry.js} +1 -1
  51. package/dist/brandsync-wc/{p-0762a4dd.entry.js → p-7f3c8416.entry.js} +1 -1
  52. package/dist/brandsync-wc/{p-1187a158.entry.js → p-7f50ae81.entry.js} +1 -1
  53. package/dist/brandsync-wc/{p-21781ce5.entry.js → p-82533674.entry.js} +1 -1
  54. package/dist/brandsync-wc/{p-40aeeacf.entry.js → p-83977d40.entry.js} +1 -1
  55. package/dist/brandsync-wc/{p-5c1ccf35.entry.js → p-851c1498.entry.js} +1 -1
  56. package/dist/brandsync-wc/{p-cd1adef0.entry.js → p-87b91d38.entry.js} +1 -1
  57. package/dist/brandsync-wc/{p-1b41823c.entry.js → p-8a85e144.entry.js} +1 -1
  58. package/dist/brandsync-wc/{p-e56cc6ac.entry.js → p-9301f01e.entry.js} +1 -1
  59. package/dist/brandsync-wc/{p-dae0348e.entry.js → p-978c46d9.entry.js} +1 -1
  60. package/dist/brandsync-wc/{p-5f96d808.entry.js → p-9988ebab.entry.js} +1 -1
  61. package/dist/brandsync-wc/p-9a45899c.entry.js +1 -0
  62. package/dist/brandsync-wc/{p-7c627563.entry.js → p-9bd0c4a7.entry.js} +1 -1
  63. package/dist/brandsync-wc/{p-ab74da02.entry.js → p-9c1ea6f0.entry.js} +1 -1
  64. package/dist/brandsync-wc/{p-abaab890.entry.js → p-9c353a03.entry.js} +1 -1
  65. package/dist/brandsync-wc/{p-001f3790.entry.js → p-9d90d3b8.entry.js} +1 -1
  66. package/dist/brandsync-wc/{p-05a9cbda.entry.js → p-a59b4c08.entry.js} +1 -1
  67. package/dist/brandsync-wc/{p-4cdb1c8c.entry.js → p-ad53d283.entry.js} +1 -1
  68. package/dist/brandsync-wc/{p-8a3095d5.entry.js → p-ad9c3eea.entry.js} +1 -1
  69. package/dist/brandsync-wc/{p-1d2bc5b4.entry.js → p-aeb99b7d.entry.js} +1 -1
  70. package/dist/brandsync-wc/{p-f89d12d7.entry.js → p-b145997c.entry.js} +1 -1
  71. package/dist/brandsync-wc/{p-f0596399.entry.js → p-b6350eab.entry.js} +1 -1
  72. package/dist/brandsync-wc/{p-fe070433.entry.js → p-b90c8b7d.entry.js} +1 -1
  73. package/dist/brandsync-wc/{p-ac7f9aa0.entry.js → p-b93ce581.entry.js} +1 -1
  74. package/dist/brandsync-wc/p-ba933f3b.entry.js +1 -0
  75. package/dist/brandsync-wc/{p-dd8f593a.entry.js → p-bb1b2350.entry.js} +1 -1
  76. package/dist/brandsync-wc/{p-8560fb54.entry.js → p-bcb09ba4.entry.js} +1 -1
  77. package/dist/brandsync-wc/{p-9ca0d2db.entry.js → p-bde099fb.entry.js} +1 -1
  78. package/dist/brandsync-wc/{p-237f583d.entry.js → p-bf8da1b5.entry.js} +1 -1
  79. package/dist/brandsync-wc/{p-5e3fcc47.entry.js → p-c36f68a2.entry.js} +1 -1
  80. package/dist/brandsync-wc/{p-023dae02.entry.js → p-c4026551.entry.js} +1 -1
  81. package/dist/brandsync-wc/{p-513fa325.entry.js → p-c7c3c4ae.entry.js} +1 -1
  82. package/dist/brandsync-wc/{p-3592e6f3.entry.js → p-ca71e180.entry.js} +1 -1
  83. package/dist/brandsync-wc/p-cc664465.entry.js +1 -0
  84. package/dist/brandsync-wc/{p-953d0191.entry.js → p-ce3a762e.entry.js} +1 -1
  85. package/dist/brandsync-wc/{p-7cdcf7e7.entry.js → p-d38394ce.entry.js} +1 -1
  86. package/dist/brandsync-wc/{p-171db2b0.entry.js → p-d4caa814.entry.js} +1 -1
  87. package/dist/brandsync-wc/{p-1cf40f44.entry.js → p-d8dd2230.entry.js} +1 -1
  88. package/dist/brandsync-wc/{p-bc489296.entry.js → p-da091255.entry.js} +1 -1
  89. package/dist/brandsync-wc/{p-eb8da874.entry.js → p-dd7bb223.entry.js} +1 -1
  90. package/dist/brandsync-wc/{p-44c7fa4a.entry.js → p-e0d47019.entry.js} +1 -1
  91. package/dist/brandsync-wc/{p-eadbc160.entry.js → p-e8fe79bc.entry.js} +1 -1
  92. package/dist/brandsync-wc/{p-ffeea95f.entry.js → p-e90e4991.entry.js} +1 -1
  93. package/dist/brandsync-wc/{p-5cd95a12.entry.js → p-ee4f3b3d.entry.js} +1 -1
  94. package/dist/brandsync-wc/{p-cf297373.entry.js → p-f43615f7.entry.js} +1 -1
  95. package/dist/brandsync-wc/{p-64fbd43a.entry.js → p-fca95aae.entry.js} +1 -1
  96. package/dist/cjs/brandsync-wc.cjs.js +1 -1
  97. package/dist/cjs/bs-accordion-group.cjs.entry.js +1 -1
  98. package/dist/cjs/bs-ai-disclaimer.cjs.entry.js +1 -1
  99. package/dist/cjs/bs-ai-greeting.cjs.entry.js +1 -1
  100. package/dist/cjs/bs-ai-thinking.cjs.entry.js +1 -1
  101. package/dist/cjs/bs-app-recent-item_3.cjs.entry.js +4 -4
  102. package/dist/cjs/bs-app-shell.cjs.entry.js +1 -1
  103. package/dist/cjs/bs-attachment-list.cjs.entry.js +1 -1
  104. package/dist/cjs/bs-breadcrumbs.cjs.entry.js +1 -1
  105. package/dist/cjs/bs-button-skeleton.cjs.entry.js +1 -1
  106. package/dist/cjs/bs-button_2.cjs.entry.js +1 -1
  107. package/dist/cjs/bs-chatbot-feedback.cjs.entry.js +1 -1
  108. package/dist/cjs/bs-chatbot-header.cjs.entry.js +1 -1
  109. package/dist/cjs/bs-chatbot-response-action.cjs.entry.js +1 -1
  110. package/dist/cjs/bs-chatbot-sources-drawer.cjs.entry.js +1 -1
  111. package/dist/cjs/bs-chatbot-suggestion-button.cjs.entry.js +1 -1
  112. package/dist/cjs/bs-checkbox-skeleton.cjs.entry.js +1 -1
  113. package/dist/cjs/bs-chip-informative.cjs.entry.js +31 -2
  114. package/dist/cjs/bs-chip-input.cjs.entry.js +1 -1
  115. package/dist/cjs/bs-citation-preview.cjs.entry.js +1 -1
  116. package/dist/cjs/bs-command-palette.cjs.entry.js +1 -1
  117. package/dist/cjs/bs-compact-menu-block_2.cjs.entry.js +4 -4
  118. package/dist/cjs/bs-company-switcher.cjs.entry.js +2 -2
  119. package/dist/cjs/bs-composer-status-banner.cjs.entry.js +1 -1
  120. package/dist/cjs/bs-composer.cjs.entry.js +1 -1
  121. package/dist/cjs/bs-container.cjs.entry.js +1 -1
  122. package/dist/cjs/bs-data-table.cjs.entry.js +4 -2
  123. package/dist/cjs/bs-datepicker.cjs.entry.js +1 -1
  124. package/dist/cjs/bs-description-item.cjs.entry.js +1 -1
  125. package/dist/cjs/bs-description-list.cjs.entry.js +1 -1
  126. package/dist/cjs/bs-divider.cjs.entry.js +1 -1
  127. package/dist/cjs/bs-dropdown.cjs.entry.js +1 -1
  128. package/dist/cjs/bs-empty-state.cjs.entry.js +1 -1
  129. package/dist/cjs/bs-error-page.cjs.entry.js +1 -1
  130. package/dist/cjs/bs-file-upload-item.cjs.entry.js +1 -1
  131. package/dist/cjs/bs-file-upload.cjs.entry.js +1 -1
  132. package/dist/cjs/bs-global-search.cjs.entry.js +2 -2
  133. package/dist/cjs/bs-grid.cjs.entry.js +2 -2
  134. package/dist/cjs/bs-heading.cjs.entry.js +1 -1
  135. package/dist/cjs/bs-icon-button.cjs.entry.js +1 -1
  136. package/dist/cjs/bs-icon-tile.cjs.entry.js +2 -2
  137. package/dist/cjs/bs-icon.cjs.entry.js +1 -1
  138. package/dist/cjs/bs-inline-tab.cjs.entry.js +1 -1
  139. package/dist/cjs/bs-input_4.cjs.entry.js +9 -6
  140. package/dist/cjs/bs-key-caps.cjs.entry.js +1 -1
  141. package/dist/cjs/bs-key.cjs.entry.js +1 -1
  142. package/dist/cjs/bs-keyboard-shortcuts.cjs.entry.js +2 -2
  143. package/dist/cjs/bs-link.cjs.entry.js +1 -1
  144. package/dist/cjs/bs-list-item.cjs.entry.js +1 -1
  145. package/dist/cjs/bs-list.cjs.entry.js +1 -1
  146. package/dist/cjs/bs-mega-menu.cjs.entry.js +1 -1
  147. package/dist/cjs/bs-message-list.cjs.entry.js +1 -1
  148. package/dist/cjs/bs-message.cjs.entry.js +1 -1
  149. package/dist/cjs/bs-navigation-drawer-item.cjs.entry.js +1 -1
  150. package/dist/cjs/bs-navigation-drawer.cjs.entry.js +2 -2
  151. package/dist/cjs/bs-navigation-header.cjs.entry.js +2 -2
  152. package/dist/cjs/bs-page-header.cjs.entry.js +1 -1
  153. package/dist/cjs/bs-pagination.cjs.entry.js +1 -1
  154. package/dist/cjs/bs-popover.cjs.entry.js +1 -1
  155. package/dist/cjs/bs-presence.cjs.entry.js +1 -1
  156. package/dist/cjs/bs-progress-linear.cjs.entry.js +2 -2
  157. package/dist/cjs/bs-progress.cjs.entry.js +2 -2
  158. package/dist/cjs/bs-qr-code.cjs.entry.js +1 -1
  159. package/dist/cjs/bs-radio-group.cjs.entry.js +1 -1
  160. package/dist/cjs/bs-radio.cjs.entry.js +1 -1
  161. package/dist/cjs/bs-search-item.cjs.entry.js +1 -1
  162. package/dist/cjs/bs-select.cjs.entry.js +1 -1
  163. package/dist/cjs/bs-session-timeout.cjs.entry.js +1 -1
  164. package/dist/cjs/bs-shortcut-row.cjs.entry.js +1 -1
  165. package/dist/cjs/bs-skip-link.cjs.entry.js +1 -1
  166. package/dist/cjs/bs-slider.cjs.entry.js +1 -1
  167. package/dist/cjs/bs-snackbar.cjs.entry.js +1 -1
  168. package/dist/cjs/bs-source-link.cjs.entry.js +3 -3
  169. package/dist/cjs/bs-split-pane.cjs.entry.js +27 -2
  170. package/dist/cjs/bs-stack.cjs.entry.js +1 -1
  171. package/dist/cjs/bs-stat.cjs.entry.js +1 -1
  172. package/dist/cjs/bs-stepper-step.cjs.entry.js +1 -1
  173. package/dist/cjs/bs-stepper.cjs.entry.js +1 -1
  174. package/dist/cjs/bs-switch.cjs.entry.js +1 -1
  175. package/dist/cjs/bs-tab_3.cjs.entry.js +3 -3
  176. package/dist/cjs/bs-table-of-contents.cjs.entry.js +1 -1
  177. package/dist/cjs/bs-tag.cjs.entry.js +2 -2
  178. package/dist/cjs/bs-text.cjs.entry.js +1 -1
  179. package/dist/cjs/bs-timepicker.cjs.entry.js +2 -2
  180. package/dist/cjs/bs-toast.cjs.entry.js +1 -1
  181. package/dist/cjs/bs-toggle-button-group.cjs.entry.js +1 -1
  182. package/dist/cjs/bs-toggle-button.cjs.entry.js +9 -1
  183. package/dist/cjs/bs-toolbar.cjs.entry.js +1 -1
  184. package/dist/cjs/bs-tooltip-trigger.cjs.entry.js +1 -1
  185. package/dist/cjs/bs-tooltip.cjs.entry.js +1 -1
  186. package/dist/cjs/bs-tree-item.cjs.entry.js +2 -2
  187. package/dist/cjs/bs-tree.cjs.entry.js +1 -1
  188. package/dist/cjs/loader.cjs.js +1 -1
  189. package/dist/collection/components/bs-accordion/bs-accordion.stories.js +25 -1
  190. package/dist/collection/components/bs-accordion-group/bs-accordion-group.js +1 -1
  191. package/dist/collection/components/bs-ai-disclaimer/bs-ai-disclaimer.js +1 -1
  192. package/dist/collection/components/bs-ai-greeting/bs-ai-greeting.js +1 -1
  193. package/dist/collection/components/bs-ai-thinking/bs-ai-thinking.js +1 -1
  194. package/dist/collection/components/bs-app-recent-item/bs-app-recent-item.js +3 -3
  195. package/dist/collection/components/bs-app-shell/bs-app-shell.js +1 -1
  196. package/dist/collection/components/bs-attachment-list/bs-attachment-list.js +1 -1
  197. package/dist/collection/components/bs-breadcrumb/bs-breadcrumbs/bs-breadcrumbs.js +1 -1
  198. package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.js +1 -1
  199. package/dist/collection/components/bs-button-skeleton/bs-button-skeleton.js +1 -1
  200. package/dist/collection/components/bs-chatbot-feedback/bs-chatbot-feedback.js +1 -1
  201. package/dist/collection/components/bs-chatbot-header/bs-chatbot-header.js +1 -1
  202. package/dist/collection/components/bs-chatbot-response-action/bs-chatbot-response-action.js +1 -1
  203. package/dist/collection/components/bs-chatbot-sources-drawer/bs-chatbot-sources-drawer.js +1 -1
  204. package/dist/collection/components/bs-chatbot-suggestion-button/bs-chatbot-suggestion-button.js +1 -1
  205. package/dist/collection/components/bs-checkbox/bs-checkbox-skeleton/bs-checkbox-skeleton.js +1 -1
  206. package/dist/collection/components/bs-checkbox/bs-checkbox.stories.js +25 -1
  207. package/dist/collection/components/bs-chip/bs-chip-informative/bs-chip-informative.cmp.test.js +44 -0
  208. package/dist/collection/components/bs-chip/bs-chip-informative/bs-chip-informative.css +30 -0
  209. package/dist/collection/components/bs-chip/bs-chip-informative/bs-chip-informative.js +139 -7
  210. package/dist/collection/components/bs-chip/bs-chip-informative/bs-chip-informative.stories.js +7 -0
  211. package/dist/collection/components/bs-chip/bs-chip-input/bs-chip-input.js +1 -1
  212. package/dist/collection/components/bs-citation-preview/bs-citation-preview.js +1 -1
  213. package/dist/collection/components/bs-command-palette/bs-command-palette.js +1 -1
  214. package/dist/collection/components/bs-compact-menu-block/bs-compact-menu-block.js +1 -1
  215. package/dist/collection/components/bs-company-switcher/bs-company-switcher.js +2 -2
  216. package/dist/collection/components/bs-composer/bs-composer.js +1 -1
  217. package/dist/collection/components/bs-composer-status-banner/bs-composer-status-banner.js +1 -1
  218. package/dist/collection/components/bs-container/bs-container.js +1 -1
  219. package/dist/collection/components/bs-data-table/bs-data-table.cmp.test.js +9 -0
  220. package/dist/collection/components/bs-data-table/bs-data-table.js +24 -2
  221. package/dist/collection/components/bs-datepicker/bs-datepicker.js +1 -1
  222. package/dist/collection/components/bs-description-item/bs-description-item.js +1 -1
  223. package/dist/collection/components/bs-description-list/bs-description-list.js +1 -1
  224. package/dist/collection/components/bs-divider/bs-divider.js +1 -1
  225. package/dist/collection/components/bs-dropdown/bs-dropdown.js +1 -1
  226. package/dist/collection/components/bs-empty-state/bs-empty-state.js +1 -1
  227. package/dist/collection/components/bs-error-page/bs-error-page.js +1 -1
  228. package/dist/collection/components/bs-file-upload/bs-file-upload.js +1 -1
  229. package/dist/collection/components/bs-file-upload-item/bs-file-upload-item.js +1 -1
  230. package/dist/collection/components/bs-global-search/bs-global-search.js +2 -2
  231. package/dist/collection/components/bs-grid/bs-grid.js +2 -2
  232. package/dist/collection/components/bs-heading/bs-heading.js +1 -1
  233. package/dist/collection/components/bs-icon/bs-icon.js +1 -1
  234. package/dist/collection/components/bs-icon-tile/bs-icon-tile.js +2 -2
  235. package/dist/collection/components/bs-input/bs-input.cmp.test.js +12 -0
  236. package/dist/collection/components/bs-input/bs-input.js +26 -3
  237. package/dist/collection/components/bs-input/bs-input.stories.js +14 -0
  238. package/dist/collection/components/bs-key/bs-key.js +1 -1
  239. package/dist/collection/components/bs-key-caps/bs-key-caps.js +1 -1
  240. package/dist/collection/components/bs-keyboard-shortcuts/bs-keyboard-shortcuts.js +2 -2
  241. package/dist/collection/components/bs-link/bs-link.js +1 -1
  242. package/dist/collection/components/bs-list/bs-list.js +1 -1
  243. package/dist/collection/components/bs-list-item/bs-list-item.js +1 -1
  244. package/dist/collection/components/bs-mega-menu/bs-mega-menu.js +1 -1
  245. package/dist/collection/components/bs-menu/bs-menu.js +1 -1
  246. package/dist/collection/components/bs-menu-block/bs-menu-block.js +3 -3
  247. package/dist/collection/components/bs-menu-item/bs-menu-item.js +1 -1
  248. package/dist/collection/components/bs-message/bs-message.js +1 -1
  249. package/dist/collection/components/bs-message-list/bs-message-list.js +1 -1
  250. package/dist/collection/components/bs-page-header/bs-page-header.js +1 -1
  251. package/dist/collection/components/bs-pagination/bs-pagination.js +1 -1
  252. package/dist/collection/components/bs-popover/bs-popover.js +1 -1
  253. package/dist/collection/components/bs-presence/bs-presence.js +1 -1
  254. package/dist/collection/components/bs-progress/bs-progress.js +2 -2
  255. package/dist/collection/components/bs-progress/bs-progress.stories.js +6 -3
  256. package/dist/collection/components/bs-progress-linear/bs-progress-linear.js +2 -2
  257. package/dist/collection/components/bs-progress-linear/bs-progress-linear.stories.js +7 -5
  258. package/dist/collection/components/bs-qr-code/bs-qr-code.js +1 -1
  259. package/dist/collection/components/bs-radio/bs-radio.js +1 -1
  260. package/dist/collection/components/bs-radio-group/bs-radio-group.js +1 -1
  261. package/dist/collection/components/bs-radio-group/bs-radio-group.stories.js +15 -1
  262. package/dist/collection/components/bs-ripple/bs-ripple.js +1 -1
  263. package/dist/collection/components/bs-search-item/bs-search-item.js +1 -1
  264. package/dist/collection/components/bs-select/bs-select.js +1 -1
  265. package/dist/collection/components/bs-select/bs-select.stories.js +21 -1
  266. package/dist/collection/components/bs-session-timeout/bs-session-timeout.js +1 -1
  267. package/dist/collection/components/bs-shortcut-row/bs-shortcut-row.js +1 -1
  268. package/dist/collection/components/bs-skeleton/bs-skeleton.js +1 -1
  269. package/dist/collection/components/bs-skip-link/bs-skip-link.js +1 -1
  270. package/dist/collection/components/bs-slider/bs-slider.js +1 -1
  271. package/dist/collection/components/bs-snackbar/bs-snackbar.js +1 -1
  272. package/dist/collection/components/bs-source-link/bs-source-link.js +3 -3
  273. package/dist/collection/components/bs-spinner/bs-spinner.js +1 -1
  274. package/dist/collection/components/bs-split-pane/bs-split-pane.cmp.test.js +8 -0
  275. package/dist/collection/components/bs-split-pane/bs-split-pane.js +26 -1
  276. package/dist/collection/components/bs-stack/bs-stack.js +1 -1
  277. package/dist/collection/components/bs-stat/bs-stat.js +1 -1
  278. package/dist/collection/components/bs-stepper/bs-stepper/bs-stepper.js +1 -1
  279. package/dist/collection/components/bs-stepper/bs-stepper-step/bs-stepper-step.js +1 -1
  280. package/dist/collection/components/bs-switch/bs-switch.js +1 -1
  281. package/dist/collection/components/bs-switch/bs-switch.stories.js +33 -9
  282. package/dist/collection/components/bs-tab/bs-inline-tab/bs-inline-tab.js +1 -1
  283. package/dist/collection/components/bs-tab/bs-tab/bs-tab.js +1 -1
  284. package/dist/collection/components/bs-tab/bs-tabs/bs-tabs.js +1 -1
  285. package/dist/collection/components/bs-tab/bs-tabs/bs-tabs.stories.js +19 -1
  286. package/dist/collection/components/bs-table-of-contents/bs-table-of-contents.js +1 -1
  287. package/dist/collection/components/bs-tag/bs-tag.js +6 -2
  288. package/dist/collection/components/bs-text/bs-text.js +1 -1
  289. package/dist/collection/components/bs-timepicker/bs-timepicker.js +2 -2
  290. package/dist/collection/components/bs-toast/bs-toast.js +1 -1
  291. package/dist/collection/components/bs-toggle-button/bs-toggle-button.cmp.test.js +11 -0
  292. package/dist/collection/components/bs-toggle-button/bs-toggle-button.js +9 -1
  293. package/dist/collection/components/bs-toggle-button/bs-toggle-button.stories.js +1 -1
  294. package/dist/collection/components/bs-toggle-button-group/bs-toggle-button-group.js +1 -1
  295. package/dist/collection/components/bs-toggle-button-group/bs-toggle-button-group.stories.js +33 -3
  296. package/dist/collection/components/bs-toolbar/bs-toolbar.js +1 -1
  297. package/dist/collection/components/bs-tooltip/bs-tooltip.js +1 -1
  298. package/dist/collection/components/bs-tooltip-trigger/bs-tooltip-trigger.js +1 -1
  299. package/dist/collection/components/bs-tree/bs-tree.js +1 -1
  300. package/dist/collection/components/bs-tree-item/bs-tree-item.js +2 -2
  301. package/dist/collection/components/bs-whats-new-entry/bs-whats-new-entry.js +1 -1
  302. package/dist/collection/components/tokens/tokens.stories.js +90 -0
  303. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.js +2 -2
  304. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer-item/bs-navigation-drawer-item.js +1 -1
  305. package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.js +2 -2
  306. package/dist/collection/play-utils.js +24 -0
  307. package/dist/components/bs-accordion-group.js +1 -1
  308. package/dist/components/bs-ai-disclaimer.js +1 -1
  309. package/dist/components/bs-ai-greeting.js +1 -1
  310. package/dist/components/bs-ai-thinking.js +1 -1
  311. package/dist/components/bs-app-recent-item.js +1 -1
  312. package/dist/components/bs-app-shell.js +1 -1
  313. package/dist/components/bs-app-switcher.js +1 -1
  314. package/dist/components/bs-app-tile.js +1 -1
  315. package/dist/components/bs-attachment-list.js +1 -1
  316. package/dist/components/bs-attachment.js +1 -1
  317. package/dist/components/bs-avatar.js +1 -1
  318. package/dist/components/bs-breadcrumb-overflow.js +1 -1
  319. package/dist/components/bs-breadcrumbs.js +1 -1
  320. package/dist/components/bs-button-skeleton.js +1 -1
  321. package/dist/components/bs-button.js +1 -1
  322. package/dist/components/bs-carousel.js +1 -1
  323. package/dist/components/bs-chatbot-feedback.js +1 -1
  324. package/dist/components/bs-chatbot-header.js +1 -1
  325. package/dist/components/bs-chatbot-response-action.js +1 -1
  326. package/dist/components/bs-chatbot-sources-drawer.js +1 -1
  327. package/dist/components/bs-chatbot-suggestion-button.js +1 -1
  328. package/dist/components/bs-checkbox-skeleton.js +1 -1
  329. package/dist/components/bs-checkbox.js +1 -1
  330. package/dist/components/bs-chip-filter.js +1 -1
  331. package/dist/components/bs-chip-informative.js +1 -1
  332. package/dist/components/bs-chip-input.js +1 -1
  333. package/dist/components/bs-citation-preview.js +1 -1
  334. package/dist/components/bs-code-block.js +1 -1
  335. package/dist/components/bs-command-palette.js +1 -1
  336. package/dist/components/bs-compact-menu-block.js +1 -1
  337. package/dist/components/bs-company-switcher.js +1 -1
  338. package/dist/components/bs-composer-status-banner.js +1 -1
  339. package/dist/components/bs-composer.js +1 -1
  340. package/dist/components/bs-container.js +1 -1
  341. package/dist/components/bs-cookie-consent.js +1 -1
  342. package/dist/components/bs-data-table.js +1 -1
  343. package/dist/components/bs-datepicker.js +1 -1
  344. package/dist/components/bs-description-item.js +1 -1
  345. package/dist/components/bs-description-list.js +1 -1
  346. package/dist/components/bs-dialog.js +1 -1
  347. package/dist/components/bs-divider.js +1 -1
  348. package/dist/components/bs-dropdown.js +1 -1
  349. package/dist/components/bs-empty-state.js +1 -1
  350. package/dist/components/bs-error-page.js +1 -1
  351. package/dist/components/bs-file-upload-item.js +1 -1
  352. package/dist/components/bs-file-upload.js +1 -1
  353. package/dist/components/bs-global-search.js +1 -1
  354. package/dist/components/bs-grid.js +1 -1
  355. package/dist/components/bs-heading.js +1 -1
  356. package/dist/components/bs-icon-button.js +1 -1
  357. package/dist/components/bs-icon-tile.js +1 -1
  358. package/dist/components/bs-icon.js +1 -1
  359. package/dist/components/bs-inline-tab.js +1 -1
  360. package/dist/components/bs-input.js +1 -1
  361. package/dist/components/bs-key-caps.js +1 -1
  362. package/dist/components/bs-key.js +1 -1
  363. package/dist/components/bs-keyboard-shortcuts.js +1 -1
  364. package/dist/components/bs-link.js +1 -1
  365. package/dist/components/bs-list-item.js +1 -1
  366. package/dist/components/bs-list.js +1 -1
  367. package/dist/components/bs-mega-menu.js +1 -1
  368. package/dist/components/bs-menu-block.js +1 -1
  369. package/dist/components/bs-menu-item.js +1 -1
  370. package/dist/components/bs-menu.js +1 -1
  371. package/dist/components/bs-message-list.js +1 -1
  372. package/dist/components/bs-message.js +1 -1
  373. package/dist/components/bs-navigation-drawer-item.js +1 -1
  374. package/dist/components/bs-navigation-drawer.js +1 -1
  375. package/dist/components/bs-navigation-header.js +1 -1
  376. package/dist/components/bs-onboarding-checklist.js +1 -1
  377. package/dist/components/bs-page-header.js +1 -1
  378. package/dist/components/bs-pagination.js +1 -1
  379. package/dist/components/bs-popover.js +1 -1
  380. package/dist/components/bs-presence.js +1 -1
  381. package/dist/components/bs-product-tour.js +1 -1
  382. package/dist/components/bs-progress-linear.js +1 -1
  383. package/dist/components/bs-progress.js +1 -1
  384. package/dist/components/bs-qr-code.js +1 -1
  385. package/dist/components/bs-radio-group.js +1 -1
  386. package/dist/components/bs-radio.js +1 -1
  387. package/dist/components/bs-ripple.js +1 -1
  388. package/dist/components/bs-search-item.js +1 -1
  389. package/dist/components/bs-select.js +1 -1
  390. package/dist/components/bs-session-timeout.js +1 -1
  391. package/dist/components/bs-shortcut-row.js +1 -1
  392. package/dist/components/bs-side-panel.js +1 -1
  393. package/dist/components/bs-skeleton.js +1 -1
  394. package/dist/components/bs-skip-link.js +1 -1
  395. package/dist/components/bs-slider.js +1 -1
  396. package/dist/components/bs-snackbar.js +1 -1
  397. package/dist/components/bs-source-link.js +1 -1
  398. package/dist/components/bs-spinner.js +1 -1
  399. package/dist/components/bs-split-pane.js +1 -1
  400. package/dist/components/bs-stack.js +1 -1
  401. package/dist/components/bs-stat.js +1 -1
  402. package/dist/components/bs-stepper-step.js +1 -1
  403. package/dist/components/bs-stepper.js +1 -1
  404. package/dist/components/bs-switch.js +1 -1
  405. package/dist/components/bs-tab.js +1 -1
  406. package/dist/components/bs-table-of-contents.js +1 -1
  407. package/dist/components/bs-tabs.js +1 -1
  408. package/dist/components/bs-tag.js +1 -1
  409. package/dist/components/bs-text.js +1 -1
  410. package/dist/components/bs-timepicker.js +1 -1
  411. package/dist/components/bs-toast.js +1 -1
  412. package/dist/components/bs-toggle-button-group.js +1 -1
  413. package/dist/components/bs-toggle-button.js +1 -1
  414. package/dist/components/bs-toolbar.js +1 -1
  415. package/dist/components/bs-tooltip-trigger.js +1 -1
  416. package/dist/components/bs-tooltip.js +1 -1
  417. package/dist/components/bs-tree-item.js +1 -1
  418. package/dist/components/bs-tree.js +1 -1
  419. package/dist/components/bs-whats-new-entry.js +1 -1
  420. package/dist/components/bs-whats-new.js +1 -1
  421. package/dist/components/{p-B1Id2OKX.js → p--3dR13A5.js} +1 -1
  422. package/dist/components/{p-CJw83LkA.js → p-5OSJi5Hq.js} +1 -1
  423. package/dist/components/{p-Bn3Yxpe1.js → p-5yADpXI0.js} +1 -1
  424. package/dist/components/p-B1pqQBKC.js +1 -0
  425. package/dist/components/{p-i5Q__opK.js → p-B6bXreGu.js} +1 -1
  426. package/dist/components/{p-BabS3w3f.js → p-BDqzHL7T.js} +1 -1
  427. package/dist/components/{p-DY2EHN4U.js → p-BSaspygR.js} +1 -1
  428. package/dist/components/{p-CGFmvCoE.js → p-BYZ1TxxS.js} +1 -1
  429. package/dist/components/{p-BVX8P6fl.js → p-BenlMTiB.js} +1 -1
  430. package/dist/components/{p-BFv-3K2u.js → p-BkzRLgh4.js} +1 -1
  431. package/dist/components/{p-CWcci6TX.js → p-BpD6hqIE.js} +1 -1
  432. package/dist/components/{p-CvaS1abm.js → p-Bu47NRjs.js} +1 -1
  433. package/dist/components/{p-C7Qr4akd.js → p-C4NrLy_y.js} +1 -1
  434. package/dist/components/{p-AlcZrDeY.js → p-CA1qkJ9m.js} +1 -1
  435. package/dist/components/{p-C0RV5-An.js → p-CMhON6jB.js} +1 -1
  436. package/dist/components/{p-CFjeYXmC.js → p-Cau06t9C.js} +1 -1
  437. package/dist/components/{p-Bm1A449h.js → p-D9TQ0LLX.js} +1 -1
  438. package/dist/components/{p-DrlNm0Cv.js → p-DJqNdSU4.js} +1 -1
  439. package/dist/components/{p-hfcWxH0R.js → p-DLGXRivO.js} +1 -1
  440. package/dist/components/{p-bsKorXp2.js → p-DPIDWFCa.js} +1 -1
  441. package/dist/components/{p-C7IrV6pt.js → p-DQY3n0nR.js} +1 -1
  442. package/dist/components/{p-BanNal67.js → p-DfYJCczy.js} +1 -1
  443. package/dist/components/p-DoCH1kV9.js +1 -0
  444. package/dist/components/p-DpMqdknQ.js +1 -0
  445. package/dist/components/p-Dsyt34TD.js +1 -0
  446. package/dist/components/{p--AN2lu8b.js → p-Dx10cRTc.js} +1 -1
  447. package/dist/components/p-EQrsaDKp.js +1 -0
  448. package/dist/components/{p-BPxT7mqc.js → p-ESiaIgGU.js} +1 -1
  449. package/dist/components/p-OhKj-S2c.js +1 -0
  450. package/dist/components/{p-CrSwhBz7.js → p-TRtv6fbe.js} +1 -1
  451. package/dist/components/{p-B-gdXga9.js → p-_oStzQSx.js} +1 -1
  452. package/dist/components/{p-oc6e6_D0.js → p-bOSY8sKI.js} +1 -1
  453. package/dist/components/{p-Cm-s0vin.js → p-hjzkd-La.js} +1 -1
  454. package/dist/esm/brandsync-wc.js +1 -1
  455. package/dist/esm/bs-accordion-group.entry.js +1 -1
  456. package/dist/esm/bs-ai-disclaimer.entry.js +1 -1
  457. package/dist/esm/bs-ai-greeting.entry.js +1 -1
  458. package/dist/esm/bs-ai-thinking.entry.js +1 -1
  459. package/dist/esm/bs-app-recent-item_3.entry.js +4 -4
  460. package/dist/esm/bs-app-shell.entry.js +1 -1
  461. package/dist/esm/bs-attachment-list.entry.js +1 -1
  462. package/dist/esm/bs-breadcrumbs.entry.js +1 -1
  463. package/dist/esm/bs-button-skeleton.entry.js +1 -1
  464. package/dist/esm/bs-button_2.entry.js +1 -1
  465. package/dist/esm/bs-chatbot-feedback.entry.js +1 -1
  466. package/dist/esm/bs-chatbot-header.entry.js +1 -1
  467. package/dist/esm/bs-chatbot-response-action.entry.js +1 -1
  468. package/dist/esm/bs-chatbot-sources-drawer.entry.js +1 -1
  469. package/dist/esm/bs-chatbot-suggestion-button.entry.js +1 -1
  470. package/dist/esm/bs-checkbox-skeleton.entry.js +1 -1
  471. package/dist/esm/bs-chip-informative.entry.js +32 -3
  472. package/dist/esm/bs-chip-input.entry.js +1 -1
  473. package/dist/esm/bs-citation-preview.entry.js +1 -1
  474. package/dist/esm/bs-command-palette.entry.js +1 -1
  475. package/dist/esm/bs-compact-menu-block_2.entry.js +4 -4
  476. package/dist/esm/bs-company-switcher.entry.js +2 -2
  477. package/dist/esm/bs-composer-status-banner.entry.js +1 -1
  478. package/dist/esm/bs-composer.entry.js +1 -1
  479. package/dist/esm/bs-container.entry.js +1 -1
  480. package/dist/esm/bs-data-table.entry.js +4 -2
  481. package/dist/esm/bs-datepicker.entry.js +1 -1
  482. package/dist/esm/bs-description-item.entry.js +1 -1
  483. package/dist/esm/bs-description-list.entry.js +1 -1
  484. package/dist/esm/bs-divider.entry.js +1 -1
  485. package/dist/esm/bs-dropdown.entry.js +1 -1
  486. package/dist/esm/bs-empty-state.entry.js +1 -1
  487. package/dist/esm/bs-error-page.entry.js +1 -1
  488. package/dist/esm/bs-file-upload-item.entry.js +1 -1
  489. package/dist/esm/bs-file-upload.entry.js +1 -1
  490. package/dist/esm/bs-global-search.entry.js +2 -2
  491. package/dist/esm/bs-grid.entry.js +2 -2
  492. package/dist/esm/bs-heading.entry.js +1 -1
  493. package/dist/esm/bs-icon-button.entry.js +1 -1
  494. package/dist/esm/bs-icon-tile.entry.js +2 -2
  495. package/dist/esm/bs-icon.entry.js +1 -1
  496. package/dist/esm/bs-inline-tab.entry.js +1 -1
  497. package/dist/esm/bs-input_4.entry.js +9 -6
  498. package/dist/esm/bs-key-caps.entry.js +1 -1
  499. package/dist/esm/bs-key.entry.js +1 -1
  500. package/dist/esm/bs-keyboard-shortcuts.entry.js +2 -2
  501. package/dist/esm/bs-link.entry.js +1 -1
  502. package/dist/esm/bs-list-item.entry.js +1 -1
  503. package/dist/esm/bs-list.entry.js +1 -1
  504. package/dist/esm/bs-mega-menu.entry.js +1 -1
  505. package/dist/esm/bs-message-list.entry.js +1 -1
  506. package/dist/esm/bs-message.entry.js +1 -1
  507. package/dist/esm/bs-navigation-drawer-item.entry.js +1 -1
  508. package/dist/esm/bs-navigation-drawer.entry.js +2 -2
  509. package/dist/esm/bs-navigation-header.entry.js +2 -2
  510. package/dist/esm/bs-page-header.entry.js +1 -1
  511. package/dist/esm/bs-pagination.entry.js +1 -1
  512. package/dist/esm/bs-popover.entry.js +1 -1
  513. package/dist/esm/bs-presence.entry.js +1 -1
  514. package/dist/esm/bs-progress-linear.entry.js +2 -2
  515. package/dist/esm/bs-progress.entry.js +2 -2
  516. package/dist/esm/bs-qr-code.entry.js +1 -1
  517. package/dist/esm/bs-radio-group.entry.js +1 -1
  518. package/dist/esm/bs-radio.entry.js +1 -1
  519. package/dist/esm/bs-search-item.entry.js +1 -1
  520. package/dist/esm/bs-select.entry.js +1 -1
  521. package/dist/esm/bs-session-timeout.entry.js +1 -1
  522. package/dist/esm/bs-shortcut-row.entry.js +1 -1
  523. package/dist/esm/bs-skip-link.entry.js +1 -1
  524. package/dist/esm/bs-slider.entry.js +1 -1
  525. package/dist/esm/bs-snackbar.entry.js +1 -1
  526. package/dist/esm/bs-source-link.entry.js +3 -3
  527. package/dist/esm/bs-split-pane.entry.js +27 -2
  528. package/dist/esm/bs-stack.entry.js +1 -1
  529. package/dist/esm/bs-stat.entry.js +1 -1
  530. package/dist/esm/bs-stepper-step.entry.js +1 -1
  531. package/dist/esm/bs-stepper.entry.js +1 -1
  532. package/dist/esm/bs-switch.entry.js +1 -1
  533. package/dist/esm/bs-tab_3.entry.js +3 -3
  534. package/dist/esm/bs-table-of-contents.entry.js +1 -1
  535. package/dist/esm/bs-tag.entry.js +2 -2
  536. package/dist/esm/bs-text.entry.js +1 -1
  537. package/dist/esm/bs-timepicker.entry.js +2 -2
  538. package/dist/esm/bs-toast.entry.js +1 -1
  539. package/dist/esm/bs-toggle-button-group.entry.js +1 -1
  540. package/dist/esm/bs-toggle-button.entry.js +9 -1
  541. package/dist/esm/bs-toolbar.entry.js +1 -1
  542. package/dist/esm/bs-tooltip-trigger.entry.js +1 -1
  543. package/dist/esm/bs-tooltip.entry.js +1 -1
  544. package/dist/esm/bs-tree-item.entry.js +2 -2
  545. package/dist/esm/bs-tree.entry.js +1 -1
  546. package/dist/esm/loader.js +1 -1
  547. package/dist/types/components/bs-chip/bs-chip-informative/bs-chip-informative.d.ts +29 -5
  548. package/dist/types/components/bs-chip/bs-chip-informative/bs-chip-informative.stories.d.ts +2 -0
  549. package/dist/types/components/bs-data-table/bs-data-table.d.ts +2 -0
  550. package/dist/types/components/bs-input/bs-input.d.ts +3 -0
  551. package/dist/types/components/bs-progress/bs-progress.stories.d.ts +1 -0
  552. package/dist/types/components/bs-progress-linear/bs-progress-linear.stories.d.ts +1 -0
  553. package/dist/types/components/bs-split-pane/bs-split-pane.d.ts +3 -0
  554. package/dist/types/components/bs-tag/bs-tag.d.ts +4 -0
  555. package/dist/types/components/bs-toggle-button/bs-toggle-button.d.ts +1 -0
  556. package/dist/types/components/tokens/tokens.stories.d.ts +12 -0
  557. package/dist/types/components.d.ts +129 -16
  558. package/dist/types/play-utils.d.ts +6 -0
  559. package/dist/types/raw-css.d.ts +4 -0
  560. package/package.json +1 -1
  561. package/reference.d.ts +1 -1
  562. package/reference.json +6 -1
  563. package/dist/brandsync-wc/p-06277bb8.entry.js +0 -1
  564. package/dist/brandsync-wc/p-0d3d56ef.entry.js +0 -1
  565. package/dist/brandsync-wc/p-4865d4e1.entry.js +0 -1
  566. package/dist/brandsync-wc/p-48ce098c.entry.js +0 -1
  567. package/dist/brandsync-wc/p-6f0b5a91.entry.js +0 -1
  568. package/dist/brandsync-wc/p-80feac7e.entry.js +0 -1
  569. package/dist/brandsync-wc/p-99db8fca.entry.js +0 -1
  570. package/dist/brandsync-wc/p-bcb1730e.entry.js +0 -1
  571. package/dist/components/p-BCbaDQnq.js +0 -1
  572. package/dist/components/p-BoAmKy-C.js +0 -1
  573. package/dist/components/p-CkQ7TJdL.js +0 -1
  574. package/dist/components/p-Cz7CuNiM.js +0 -1
  575. package/dist/components/p-DE2x8-lX.js +0 -1
  576. package/dist/components/p-U9f09E0n.js +0 -1
@@ -68,7 +68,7 @@ export class BsEmptyState {
68
68
  render() {
69
69
  const level = Math.min(6, Math.max(2, Math.round(Number(this.headingLevel)) || 3));
70
70
  const Heading = `h${level}`;
71
- return (h("div", { key: '142a329392b2d99b356be8debc4e8597c6f6f84e', part: "container", class: "bs-empty-state" }, this.hasIllustration ? (h("div", { part: "illustration", class: "bs-empty-state__illustration" }, h("slot", { name: "illustration" }))) : (h("bs-icon-tile", { part: "icon", size: "lg", intent: this.intent }, this.hasIcon && h("slot", { name: "icon" }))), this.heading && (h(Heading, { key: '961136e1fdffce443965fabbc654756ae5ad5924', part: "heading", class: "bs-empty-state__heading" }, this.heading)), (this.description || this.hasDescriptionSlot) && (h("p", { key: 'f9b8343a64b4a631bddb8eb4a5d7bb6848306854', part: "description", class: "bs-empty-state__description" }, this.hasDescriptionSlot ? h("slot", null) : this.description)), this.hasAction && (h("div", { key: '3fe746161c32b08af3d60cf5c362034e7341c854', part: "action", class: "bs-empty-state__action" }, h("slot", { key: '6b2cfbdac1f7a5183ed1a55a7da0f00ef1805aa8', name: "action" })))));
71
+ return (h("div", { key: 'ffdf706be4116dc017712d0e8224ae0ac19fdd86', part: "container", class: "bs-empty-state" }, this.hasIllustration ? (h("div", { part: "illustration", class: "bs-empty-state__illustration" }, h("slot", { name: "illustration" }))) : (h("bs-icon-tile", { part: "icon", size: "lg", intent: this.intent }, this.hasIcon && h("slot", { name: "icon" }))), this.heading && (h(Heading, { key: '5b0787b3afdc2792aaf198eda2c22c2d918f7743', part: "heading", class: "bs-empty-state__heading" }, this.heading)), (this.description || this.hasDescriptionSlot) && (h("p", { key: 'b8f23d2049e1c451c6ebf058479776d7620b30c6', part: "description", class: "bs-empty-state__description" }, this.hasDescriptionSlot ? h("slot", null) : this.description)), this.hasAction && (h("div", { key: '0d90b309f70235864cddb9051457a023fb035cff', part: "action", class: "bs-empty-state__action" }, h("slot", { key: 'bf4df45020fe85c49b5eeb22f83c37759fd6cbbe', name: "action" })))));
72
72
  }
73
73
  static get is() { return "bs-empty-state"; }
74
74
  static get encapsulation() { return "shadow"; }
@@ -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: 'bb20d902ed1c197bfc61b1052f92d6226a8412d7', part: "container", class: "bs-error-page", surface: "base" }, h("div", { key: '5be90fc6fb83875fa8518808c10269cefb72940c', class: "bs-error-page__body" }, h("div", { key: '76fedaef28a480a01ec1d33e9f95a5389a5e3d67', class: "bs-error-page__art-group" }, h("bs-icon-tile", { key: 'ad58c97bad019254db2d0b0fb5c659d77a6a3b90', part: "art", class: `bs-error-page__art ${d.info ? 'bs-error-page__art--info' : ''}`, intent: d.intent, size: "lg" }, h("slot", { key: 'ca2740bc44806d2fa74ad4927e43587e6b526c3d', name: "icon" }, d.glyph())), code && (h("span", { key: '45593b82fefc69fec1bb64bd103cd57cdf642b87', part: "code", class: "bs-error-page__code" }, code))), h(`h${level}`, { part: 'heading', class: { 'bs-error-page__heading': true } }, heading), description && (h("p", { key: '9fc68fab74d9b138fe22ad8126ee5a01e6f48e15', part: "description", class: "bs-error-page__description" }, description)), (primary || secondary) && (h("div", { key: '97f420c71d67766083d32176539e7531d56ae7f8', part: "actions", class: "bs-error-page__actions" }, primary && (h("bs-button", { key: 'fcb1b99dea4a6a10edb996ee52fe2f11a66cfa75', part: "primary", variant: "primary", onClick: () => this.bsPrimary.emit() }, primary)), secondary && (h("bs-button", { key: '0e79f04999dd9f78a8c3d610e039e8f7b2eabcca', part: "secondary", variant: "outlined", onClick: () => this.bsSecondary.emit() }, secondary)))), this.reference && (h("p", { key: '8b60aed28e215b822e05ce8dc498088181683f67', part: "reference", class: "bs-error-page__reference" }, this.reference)))));
68
+ return (h("bs-card", { key: '8aff9c8d96ef4b11da092a77ebf5825d15927352', part: "container", class: "bs-error-page", surface: "base" }, h("div", { key: '19257d7f087c9e129a100a233f2b347f91bf94e3', class: "bs-error-page__body" }, h("div", { key: '626069ac9658d54560ff3b7fe1ee33d4e61d2120', class: "bs-error-page__art-group" }, h("bs-icon-tile", { key: '906074042657ea36412905e28db696beb48fca20', part: "art", class: `bs-error-page__art ${d.info ? 'bs-error-page__art--info' : ''}`, intent: d.intent, size: "lg" }, h("slot", { key: '08e00c6308418f3de6cee8574bf59b59c7749853', name: "icon" }, d.glyph())), code && (h("span", { key: '927bc4a8cb649c62dae21c512d444b6bc5c5bae8', part: "code", class: "bs-error-page__code" }, code))), h(`h${level}`, { part: 'heading', class: { 'bs-error-page__heading': true } }, heading), description && (h("p", { key: '213c0da80e469597d3964b8b91d643dbcc11caf3', part: "description", class: "bs-error-page__description" }, description)), (primary || secondary) && (h("div", { key: '85c062187fab0d14c29a826649fe84b515caf791', part: "actions", class: "bs-error-page__actions" }, primary && (h("bs-button", { key: 'c884d4cb3a054b1be6b53cdefba6219ad47a577b', part: "primary", variant: "primary", onClick: () => this.bsPrimary.emit() }, primary)), secondary && (h("bs-button", { key: '3e36ee75d488483d9d9a5385cf6ff6d632e8fee3', part: "secondary", variant: "outlined", onClick: () => this.bsSecondary.emit() }, secondary)))), this.reference && (h("p", { key: '7bf4f351eda32d20c2529e166b02b1da66851c64', 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: '7097cdbe1555c09f01a24b6d8612746ec1a06c9e', 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: '3af10df2bb885e3e6cbb3c083d323ce6722adaac', part: "icon", class: "bs-file-upload__icon" }, h("slot", { key: '51c41410ce9702cb4645563e073e3c382c473001', name: "icon" }, h(UploadIcon, { key: '9459a3634f6d22c9dd73cfddb388ef98ad4ea756' }))), h("div", { key: 'e5a0e2d2a207154918805317d48a9ec89cbb8584', class: "bs-file-upload__content" }, h("div", { key: '248e47855e5faf5094646acec3c16e12c80062de', class: "bs-file-upload__text" }, this.heading && (h("span", { key: 'c06b5534f79feea1d69b030e968cbeb4a1529fab', part: "heading", class: "bs-file-upload__heading" }, this.heading)), this.description && (h("span", { key: 'aa5c4095e807d4842f05cd97577f983be4f68ac8', part: "description", id: "description", class: "bs-file-upload__description" }, this.description))), h("bs-button", { key: '144dca8f0bbcffe846ea8d6fb297f2122970c83b', part: "browse", variant: "neutral", size: "sm", disabled: this.disabled, onClick: this.onBrowse }, this.buttonLabel)), h("input", { key: '12aefd76b33175fb69ebc00b02f1939d1c0ee84a', 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 })));
115
+ return (h("div", { key: 'a36d673f20523d6384240fa4cabac8389b57b29f', 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: 'c769eb48169ccdea3d9b2ec461fc131be8deec6e', part: "icon", class: "bs-file-upload__icon" }, h("slot", { key: 'e09c8fe53baaf4a42171799ce3c26595fc214321', name: "icon" }, h(UploadIcon, { key: 'e7687bf38d08a9d650c424efecf4ab1cee2fdbbd' }))), h("div", { key: 'c437654a93b2d8bca60b1bf5e9d883cba66b9514', class: "bs-file-upload__content" }, h("div", { key: '36c4fa07235bdaf27401d23d064b53910505bb3b', class: "bs-file-upload__text" }, this.heading && (h("span", { key: '232df19561f275bd62c9829ebe70c1e6155a8ce0', part: "heading", class: "bs-file-upload__heading" }, this.heading)), this.description && (h("span", { key: '493bb2708692a92b669d75d1f0ab075e9fb41355', part: "description", id: "description", class: "bs-file-upload__description" }, this.description))), h("bs-button", { key: '7f2955d2054a30efeec35252f776028b06a390df', part: "browse", variant: "neutral", size: "sm", disabled: this.disabled, onClick: this.onBrowse }, this.buttonLabel)), h("input", { key: '367b7d2fbbbf7ddfe0ebc063d0cef22c8510e713', 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: '3050c182622707760aa9e9d448f0da195526c68f', part: "item", class: `bs-file-upload-item bs-file-upload-item--${this.state}` }, h("div", { key: 'b2c516ed23a14e7bfc1a5987ca19722e49694768', part: "thumbnail", class: "bs-file-upload-item__thumbnail" }, h("slot", { key: 'fb13e169ff6083fdf8a24ee1ac848a7c1a18ef4e', name: "thumbnail" }, this.thumbnailSrc ? (h("img", { class: "bs-file-upload-item__image", src: this.thumbnailSrc, alt: this.thumbnailAlt })) : (h(ImageIcon, null)))), h("div", { key: 'ea045c9503e4ba50b44cdadb2d207680b649494a', class: "bs-file-upload-item__content" }, h("div", { key: 'fbe744afdf97ab1919868418ace733b19043ca8d', class: "bs-file-upload-item__meta" }, h("span", { key: '624c5d30fb30b7f4f3ba036db0431c7b1251c9cb', part: "name", class: "bs-file-upload-item__name" }, this.fileName), this.fileSize && (h("span", { key: 'f9206de4e5eadfb8d5639de8fb0a372c4d89a224', part: "size", class: "bs-file-upload-item__size" }, this.fileSize))), this.renderStatus()), h("bs-icon-button", { key: 'e528e00e232aecd0aeff616e5d086e9b9dad0466', part: "action", variant: "subtle", size: "lg", ariaLabel: removing ? this.removeLabel : this.cancelLabel, onClick: this.onAction }, removing ? h(TrashIcon, null) : h(CloseIcon, null))));
89
+ return (h("div", { key: 'b3dfe347e900ba5f452e6d653f17b66956eba4b7', part: "item", class: `bs-file-upload-item bs-file-upload-item--${this.state}` }, h("div", { key: '619821ac9b479d7dc78d98fb0344942c1b205d53', part: "thumbnail", class: "bs-file-upload-item__thumbnail" }, h("slot", { key: '879934c913d92097e079faa64b05322720e28467', name: "thumbnail" }, this.thumbnailSrc ? (h("img", { class: "bs-file-upload-item__image", src: this.thumbnailSrc, alt: this.thumbnailAlt })) : (h(ImageIcon, null)))), h("div", { key: '54e8b1582cb66122a5a7d7a0125e2bd99df28f8f', class: "bs-file-upload-item__content" }, h("div", { key: '3d79114f91830c4f22586da37bfb4f3e71f8ee04', class: "bs-file-upload-item__meta" }, h("span", { key: '450b9ac9b96506884fdf8ebc50adb57055f5d4bd', part: "name", class: "bs-file-upload-item__name" }, this.fileName), this.fileSize && (h("span", { key: '0ee574ac068a6f4dbc2c59a9c9bac31ab9087001', part: "size", class: "bs-file-upload-item__size" }, this.fileSize))), this.renderStatus()), h("bs-icon-button", { key: 'bbb36dc36d633a7a3d9150df5d1992b1b3e356ce', 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"; }
@@ -342,10 +342,10 @@ export class BsGlobalSearch {
342
342
  const listId = `${this.id}-listbox`;
343
343
  const isList = this.status === 'default' || this.status === 'results';
344
344
  const showFooter = this.showFooter && isList;
345
- return (h("div", { key: 'a1130242c3066d405a965b6f12b0d8a5599aaf9d', class: "bs-global-search" }, h("div", { key: 'ceb372cb4f91ebfc982c87c8ae68f93ead1af968', part: "field", class: "bs-global-search__field", role: "combobox", "aria-label": this.label || this.placeholder, "aria-expanded": String(this.open && showList), "aria-haspopup": "listbox", "aria-controls": this.open && showList ? listId : undefined, "aria-activedescendant": this.open && this.activeId ? this.activeId : undefined, onKeyDown: this.onKeyDown, onFocusin: () => this.setOpen(true), onClick: () => this.setOpen(true) }, h("bs-input", { key: '8b6ffe6b1a9cb02c9b0337d51bee28fdaa9985f7', ref: el => (this.inputEl = el), type: "search", value: this.value, placeholder: this.placeholder, disabled: this.disabled, onBsInput: this.onInput })), this.open && (h("div", { key: 'be1e96068830019ec49ff74e76c81105e6a9252d', part: "panel", class: "bs-global-search__panel", onMouseDown: (ev) => ev.preventDefault(), onMouseOver: this.onPanelMouseOver }, isList && showList && (h("div", { key: '9b0b20314cdecfbb2a8508d0b559bab523bc2d01', id: listId, class: "bs-global-search__list", role: "listbox", "aria-label": this.listLabel }, sections.map(s => {
345
+ return (h("div", { key: 'badb002b67175179a79d0bc9c1366632d4a0645e', class: "bs-global-search" }, h("div", { key: '1902883e1e2a341bb78d57b0c2efc0695e2d50cc', part: "field", class: "bs-global-search__field", role: "combobox", "aria-label": this.label || this.placeholder, "aria-expanded": String(this.open && showList), "aria-haspopup": "listbox", "aria-controls": this.open && showList ? listId : undefined, "aria-activedescendant": this.open && this.activeId ? this.activeId : undefined, onKeyDown: this.onKeyDown, onFocusin: () => this.setOpen(true), onClick: () => this.setOpen(true) }, h("bs-input", { key: 'b8f8c00f00eef0051252ea8bc5b9e7bc299dc04e', ref: el => (this.inputEl = el), type: "search", value: this.value, placeholder: this.placeholder, disabled: this.disabled, onBsInput: this.onInput })), this.open && (h("div", { key: '08102c3daa1c44ed47c141c7aa010fbe68d322f8', part: "panel", class: "bs-global-search__panel", onMouseDown: (ev) => ev.preventDefault(), onMouseOver: this.onPanelMouseOver }, isList && showList && (h("div", { key: 'b14315ba3ced12ea89f961b889fcd514720b331d', id: listId, class: "bs-global-search__list", role: "listbox", "aria-label": this.listLabel }, sections.map(s => {
346
346
  const hid = `${this.id}-h-${s}`;
347
347
  return (h("div", { part: "section", class: "bs-global-search__section", role: "group", "aria-labelledby": hid }, h("div", { part: "section-header", id: hid, class: "bs-global-search__section-header" }, this.sectionLabel(s)), h("slot", { name: s })));
348
- }))), this.status === 'empty' && this.renderStateBlock('empty'), this.status === 'error' && this.renderStateBlock('error'), showFooter && this.renderFooter())), h("span", { key: '4b7efc2118e676b9f6c356eb04f74b0343cac360', class: "bs-global-search__live", "aria-live": "polite" }, this.announcement())));
348
+ }))), this.status === 'empty' && this.renderStateBlock('empty'), this.status === 'error' && this.renderStateBlock('error'), showFooter && this.renderFooter())), h("span", { key: 'c5acca23be3dab4b04a2590f079973fef8ac28c1', class: "bs-global-search__live", "aria-live": "polite" }, this.announcement())));
349
349
  }
350
350
  static get is() { return "bs-global-search"; }
351
351
  static get encapsulation() { return "shadow"; }
@@ -59,12 +59,12 @@ export class BsGrid {
59
59
  const row = this.rowGap ? this.token(this.rowGap) : gapValue;
60
60
  const col = this.columnGap ? this.token(this.columnGap) : gapValue;
61
61
  const align = ALIGNS.includes(this.align) ? this.align : 'stretch';
62
- return (h("div", { key: 'ce19818147e46e05e3f8bdbe0ec66791f7291514', class: "bs-grid", part: "container", style: {
62
+ return (h("div", { key: '9507109de1fe2a61cb12fdf10249eea822aca4fd', class: "bs-grid", part: "container", style: {
63
63
  gridTemplateColumns: this.template(),
64
64
  rowGap: `var(--bs-grid-row-gap, ${row})`,
65
65
  columnGap: `var(--bs-grid-column-gap, ${col})`,
66
66
  alignItems: align,
67
- } }, h("slot", { key: 'a0350d01ee8d538d92f125faaa94536498e80736' })));
67
+ } }, h("slot", { key: '71f053d7d6be8bc917c44bec3a0c2f220836322c' })));
68
68
  }
69
69
  static get is() { return "bs-grid"; }
70
70
  static get encapsulation() { return "shadow"; }
@@ -31,7 +31,7 @@ export class BsHeading {
31
31
  const level = Math.min(6, Math.max(1, Number(this.level) || 2));
32
32
  const Tag = (this.as ?? `h${level}`);
33
33
  const size = this.size ?? String(level);
34
- return (h(Tag, { key: 'ef59e0b219eb1ca65817ed8c942c0a99635b0ec9', part: "heading", class: `bs-heading bs-heading--${size}` }, h("slot", { key: 'b1cbfba6f8b3842cd77fa1741d48db77ddac7682' })));
34
+ return (h(Tag, { key: 'd30a0c74c61d89c6acaba89ef5133bdb4c9598aa', part: "heading", class: `bs-heading bs-heading--${size}` }, h("slot", { key: 'c9ec8694882323cc5dd98e771c70c296902d29e8' })));
35
35
  }
36
36
  static get is() { return "bs-heading"; }
37
37
  static get encapsulation() { return "shadow"; }
@@ -40,7 +40,7 @@ export class BsIcon {
40
40
  const filled = typeof markup === 'object';
41
41
  const inner = typeof markup === 'string' ? markup : markup?.body;
42
42
  const labelled = !!this.label;
43
- return (h("span", { key: 'b5a98541e91d0143d696707c0221458146e20a25', part: "icon", class: "bs-icon", role: labelled ? 'img' : undefined, "aria-label": labelled ? this.label : undefined, "aria-hidden": labelled ? undefined : 'true' }, markup ? (h("svg", { viewBox: filled ? markup.viewBox : '0 0 24 24', fill: filled ? 'currentColor' : 'none', stroke: filled ? undefined : 'currentColor', "stroke-width": filled ? undefined : '2', "stroke-linecap": filled ? undefined : 'round', "stroke-linejoin": filled ? undefined : 'round', "aria-hidden": "true", focusable: "false", ref: (svg) => {
43
+ return (h("span", { key: '92c14176ca0b3ae936d5a34103c7e8fb5fb797fa', part: "icon", class: "bs-icon", role: labelled ? 'img' : undefined, "aria-label": labelled ? this.label : undefined, "aria-hidden": labelled ? undefined : 'true' }, markup ? (h("svg", { viewBox: filled ? markup.viewBox : '0 0 24 24', fill: filled ? 'currentColor' : 'none', stroke: filled ? undefined : 'currentColor', "stroke-width": filled ? undefined : '2', "stroke-linecap": filled ? undefined : 'round', "stroke-linejoin": filled ? undefined : 'round', "aria-hidden": "true", focusable: "false", ref: (svg) => {
44
44
  if (svg && svg.innerHTML !== inner)
45
45
  svg.innerHTML = inner;
46
46
  } })) : (h("slot", null))));
@@ -46,8 +46,8 @@ export class BsIconTile {
46
46
  render() {
47
47
  const labelled = !!this.label;
48
48
  return [
49
- h("div", { key: '93e750f5adc2334319281b7db3b49e45d6e477ec', part: "container", class: "bs-icon-tile", role: labelled ? 'img' : undefined, "aria-label": labelled ? this.label : undefined, "aria-hidden": labelled ? undefined : 'true' }, h("span", { key: '345d80c8400f37db8bfc4001a1aad6193b423390', part: "icon", class: "bs-icon-tile__icon" }, h("slot", { key: '05c4f47cb4ae96b73af3ca73348e10f91c4fdf0d', onSlotchange: (ev) => (this.hasCustomIcon = hasContent(ev.target)) }), !this.hasCustomIcon && (GLYPHS[this.intent] ?? GLYPHS.default))),
50
- h("span", { key: 'a26e45ecd93f0989728d83c1def3ad18271a7376', part: "text", class: { 'bs-icon-tile__text': true, 'bs-icon-tile__text--visible': this.hasText } }, h("slot", { key: 'a477971ec0476c444b165ebb88d4b961210325d2', name: "text", onSlotchange: (ev) => (this.hasText = ev.target.assignedNodes().length > 0) })),
49
+ h("div", { key: 'bf6404159383eea8bc502471fe9050b3b756b44b', part: "container", class: "bs-icon-tile", role: labelled ? 'img' : undefined, "aria-label": labelled ? this.label : undefined, "aria-hidden": labelled ? undefined : 'true' }, h("span", { key: '68388ac2d1736c4f988aa4891ba98ed782e8e73e', part: "icon", class: "bs-icon-tile__icon" }, h("slot", { key: '63912e42c3858d1c893cd648772f014c1a9e0a0c', onSlotchange: (ev) => (this.hasCustomIcon = hasContent(ev.target)) }), !this.hasCustomIcon && (GLYPHS[this.intent] ?? GLYPHS.default))),
50
+ h("span", { key: '5e33734bd960efbd3432ad827261bed80fa60e76', part: "text", class: { 'bs-icon-tile__text': true, 'bs-icon-tile__text--visible': this.hasText } }, h("slot", { key: '09f2d6c09e4592f6796187fd320ddbc6058f255e', name: "text", onSlotchange: (ev) => (this.hasText = ev.target.assignedNodes().length > 0) })),
51
51
  ];
52
52
  }
53
53
  static get is() { return "bs-icon-tile"; }
@@ -579,6 +579,18 @@ describe('bs-input', () => {
579
579
  });
580
580
  });
581
581
  describe('type="pin"', () => {
582
+ it('names every cell, keeping the visible label for the first when there is one', async () => {
583
+ const { root } = await render(h("bs-input", { type: "pin", length: 3, label: "Verification code" }));
584
+ const cells = Array.from(root.shadowRoot.querySelectorAll('.bs-input__pin-cell'));
585
+ expect(cells[0].hasAttribute('aria-label')).toBe(false);
586
+ expect(cells[1].getAttribute('aria-label')).toBe('Digit 2 of 3');
587
+ expect(cells[2].getAttribute('aria-label')).toBe('Digit 3 of 3');
588
+ });
589
+ it('names the first cell too when there is no label, and honours pinCellLabel', async () => {
590
+ const { root } = await render(h("bs-input", { type: "pin", length: 2, pinCellLabel: "Ziffer {n} von {total}" }));
591
+ const cells = Array.from(root.shadowRoot.querySelectorAll('.bs-input__pin-cell'));
592
+ expect(cells.map(c => c.getAttribute('aria-label'))).toEqual(['Ziffer 1 von 2', 'Ziffer 2 von 2']);
593
+ });
582
594
  it('renders one input cell per length', async () => {
583
595
  const { root } = await render(h("bs-input", { type: "pin", length: 4 }));
584
596
  const cells = root.shadowRoot.querySelectorAll('.bs-input__pin-cell');
@@ -118,6 +118,9 @@ export class BsInput {
118
118
  countryLabel = 'Country';
119
119
  /** Number of cells for `type="pin"`. */
120
120
  length = 4;
121
+ /** `type="pin"`: accessible name of each cell, with `{n}` replaced by its 1-based position and `{total}` by `length`. The
122
+ * first cell keeps the field's visible `label` as its name when there is one. */
123
+ pinCellLabel = 'Digit {n} of {total}';
121
124
  /** `type="combobox"`: shows a loading indicator and, while no options match, a loading message
122
125
  * in the popup instead of "no results". Use while fetching `options` asynchronously. */
123
126
  loading = false;
@@ -710,13 +713,13 @@ export class BsInput {
710
713
  this.pinInputs = [];
711
714
  const errorClass = this.error ? 'bs-input__field--error' : '';
712
715
  const disabledClass = this.disabled ? 'bs-input__field--disabled' : '';
713
- return (h("div", { part: "field", class: `bs-input__field bs-input__field--pin ${errorClass} ${disabledClass}` }, Array.from({ length: this.length }).map((_, i) => (h("input", { id: i === 0 ? 'control' : undefined, ref: el => (this.pinInputs[i] = el), part: "control", class: "bs-input__pin-cell", type: "text", inputMode: "numeric", maxLength: 1, value: this.value[i] ?? '', disabled: this.disabled, "aria-required": this.required ? 'true' : undefined, onInput: this.onPinInput(i), onKeyDown: this.onPinKeydown(i) })))));
716
+ return (h("div", { part: "field", class: `bs-input__field bs-input__field--pin ${errorClass} ${disabledClass}` }, Array.from({ length: this.length }).map((_, i) => (h("input", { id: i === 0 ? 'control' : undefined, ref: el => (this.pinInputs[i] = el), part: "control", class: "bs-input__pin-cell", type: "text", inputMode: "numeric", maxLength: 1, "aria-label": i === 0 && this.label ? undefined : this.pinCellLabel.replace('{n}', String(i + 1)).replace('{total}', String(this.length)), value: this.value[i] ?? '', disabled: this.disabled, "aria-required": this.required ? 'true' : undefined, onInput: this.onPinInput(i), onKeyDown: this.onPinKeydown(i) })))));
714
717
  }
715
718
  render() {
716
- return (h("div", { key: '988091164902005cd72c21493db2722a3ad42ae2', class: `bs-input ${this.error ? 'bs-input--error' : ''}` }, this.label && (
719
+ return (h("div", { key: '2607d492f534549e07c0f03474452e57ee8d1e62', class: `bs-input ${this.error ? 'bs-input--error' : ''}` }, this.label && (
717
720
  // "control" is a fixed id, not a generated one -- safe because Shadow DOM scopes ids
718
721
  // to this instance's own shadow root, so it can never collide with another bs-input.
719
- h("label", { key: '7bd3f2330086e373d97408be70af68ab8f9e289c', part: "label", class: "bs-input__label", htmlFor: "control" }, this.label, this.required && (h("span", { key: '29a387f0b8b937fa49837111135353665b1e54e7', part: "required", class: "bs-input__required", "aria-hidden": "true" }, "*")))), this.type === 'pin' ? this.renderPinField() : this.type === 'initials' ? this.renderInitialsField() : this.type === 'country' ? this.renderCountryField() : this.renderField(), this.error ? (h("span", { id: "description-or-error", part: "error", class: "bs-input__error" }, h("svg", { part: "error-icon", class: "bs-input__error-icon", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true" }, h("circle", { cx: "8", cy: "8", r: "6.5", stroke: "currentColor", "stroke-width": "1.2" }), h("path", { d: "M8 5V8.5", stroke: "currentColor", "stroke-width": "1.2", "stroke-linecap": "round" }), h("circle", { cx: "8", cy: "11", r: "0.75", fill: "currentColor" })), this.error)) : this.description ? (h("span", { id: "description-or-error", part: "description", class: "bs-input__description" }, this.description)) : null));
722
+ h("label", { key: '6c8d72b986a0ca92360778318c66dc66753737b5', part: "label", class: "bs-input__label", htmlFor: "control" }, this.label, this.required && (h("span", { key: '2a37224b19126d5de000592dec29f366a0298630', part: "required", class: "bs-input__required", "aria-hidden": "true" }, "*")))), this.type === 'pin' ? this.renderPinField() : this.type === 'initials' ? this.renderInitialsField() : this.type === 'country' ? this.renderCountryField() : this.renderField(), this.error ? (h("span", { id: "description-or-error", part: "error", class: "bs-input__error" }, h("svg", { part: "error-icon", class: "bs-input__error-icon", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true" }, h("circle", { cx: "8", cy: "8", r: "6.5", stroke: "currentColor", "stroke-width": "1.2" }), h("path", { d: "M8 5V8.5", stroke: "currentColor", "stroke-width": "1.2", "stroke-linecap": "round" }), h("circle", { cx: "8", cy: "11", r: "0.75", fill: "currentColor" })), this.error)) : this.description ? (h("span", { id: "description-or-error", part: "description", class: "bs-input__description" }, this.description)) : null));
720
723
  }
721
724
  static get is() { return "bs-input"; }
722
725
  static get encapsulation() { return "shadow"; }
@@ -1259,6 +1262,26 @@ export class BsInput {
1259
1262
  "attribute": "length",
1260
1263
  "defaultValue": "4"
1261
1264
  },
1265
+ "pinCellLabel": {
1266
+ "type": "string",
1267
+ "mutable": false,
1268
+ "complexType": {
1269
+ "original": "string",
1270
+ "resolved": "string",
1271
+ "references": {}
1272
+ },
1273
+ "required": false,
1274
+ "optional": false,
1275
+ "docs": {
1276
+ "tags": [],
1277
+ "text": "`type=\"pin\"`: accessible name of each cell, with `{n}` replaced by its 1-based position and `{total}` by `length`. The\nfirst cell keeps the field's visible `label` as its name when there is one."
1278
+ },
1279
+ "getter": false,
1280
+ "setter": false,
1281
+ "reflect": false,
1282
+ "attribute": "pin-cell-label",
1283
+ "defaultValue": "'Digit {n} of {total}'"
1284
+ },
1262
1285
  "loading": {
1263
1286
  "type": "boolean",
1264
1287
  "mutable": false,
@@ -1,5 +1,7 @@
1
1
  import { html } from "lit";
2
2
  import { componentDescription, propDescription } from "../../stories-utils";
3
+ import { expect, userEvent, waitFor } from "storybook/test";
4
+ import { ready, inShadow, recordEvents } from "../../play-utils";
3
5
  const inputTypes = ['text', 'email', 'password', 'number', 'search', 'date', 'dropdown', 'select', 'textarea', 'chip', 'initials', 'country', 'pin', 'combobox'];
4
6
  const mailIcon = html `
5
7
  <svg slot="icon" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
@@ -59,6 +61,18 @@ export const Default = {
59
61
  args: {
60
62
  type: 'email',
61
63
  },
64
+ play: async ({ canvasElement }) => {
65
+ const host = await ready(canvasElement, 'bs-input');
66
+ const inputs = recordEvents(host, 'bsInput');
67
+ const control = inShadow(host, '[part="control"]');
68
+ await expect(control).toHaveValue('');
69
+ await userEvent.type(control, 'ada@example.com');
70
+ await expect(control).toHaveValue('ada@example.com');
71
+ await waitFor(() => expect(host.value).toBe('ada@example.com'));
72
+ // One bsInput per keystroke, each carrying the value so far.
73
+ await expect(inputs.at(-1)?.detail).toBe('ada@example.com');
74
+ await expect(inputs).toHaveLength('ada@example.com'.length);
75
+ },
62
76
  };
63
77
  export const WithDescription = {
64
78
  args: { description: "We'll never share your email." },
@@ -38,7 +38,7 @@ export class BsKey {
38
38
  this.hasIcon = ev.target.assignedNodes().length > 0;
39
39
  };
40
40
  render() {
41
- return (h("kbd", { key: '1eec11ad37a81cda96d05e6becf0aa3cfa46d70f', part: "container", class: "bs-key" }, !this.hasIcon && (h("span", { key: 'cbbd54a649ff36ae3f8c75ff9b6e9784026ca678', part: "label", class: "bs-key__label" }, h("slot", { key: '4ffc5cfe5dd6f34891d869a3d97bffbfcbd1bdac' }, this.label))), h("span", { key: '37bc81c50ff341503597f55d956a6ede7d55e513', part: "icon", class: { 'bs-key__icon': true, 'bs-key__icon--hidden': !this.hasIcon } }, h("slot", { key: '83c6bdf1c3df9b84f70d86e3e9a9bea5b840df14', name: "icon", onSlotchange: this.onIconSlotChange }))));
41
+ return (h("kbd", { key: '696939056f306280e640f5bfb9a23d3282fd3bdd', part: "container", class: "bs-key" }, !this.hasIcon && (h("span", { key: 'b51ef1e566756374c22ecbd5d744bef23e25efd8', part: "label", class: "bs-key__label" }, h("slot", { key: 'c12e9f373c0da8c981bf13107f464407bb28f5a4' }, this.label))), h("span", { key: 'a0f88845c5a4ebfd6695f23eb204492862620a4d', part: "icon", class: { 'bs-key__icon': true, 'bs-key__icon--hidden': !this.hasIcon } }, h("slot", { key: '5a4209c004c9c30523c7128a61cd7f082a77a06d', name: "icon", onSlotchange: this.onIconSlotChange }))));
42
42
  }
43
43
  static get is() { return "bs-key"; }
44
44
  static get encapsulation() { return "shadow"; }
@@ -41,7 +41,7 @@ export class BsKeyCaps {
41
41
  render() {
42
42
  const keys = this.keyList();
43
43
  const name = this.label ?? (keys.length ? keys.join(' plus ') : undefined);
44
- return (h("span", { key: 'bf9430af3a97eed8aaa0585b4dddb6534a3bb14a', part: "container", class: "bs-key-caps", role: "group", "aria-label": name, "aria-disabled": this.disabled ? 'true' : undefined }, keys.map(k => (h("bs-key", { label: k }))), h("slot", { key: '84105a60a9167a5e76f9b9807256ecf9c91816a1' })));
44
+ return (h("span", { key: '46f3da326c7901ced8a486f32d552a28ac394c77', part: "container", class: "bs-key-caps", role: "group", "aria-label": name, "aria-disabled": this.disabled ? 'true' : undefined }, keys.map(k => (h("bs-key", { label: k }))), h("slot", { key: '072587ad1177338f6477d589431a7bb9d961963a' })));
45
45
  }
46
46
  static get is() { return "bs-key-caps"; }
47
47
  static get encapsulation() { return "shadow"; }
@@ -129,10 +129,10 @@ export class BsKeyboardShortcuts {
129
129
  const headId = `${this.id}-heading`;
130
130
  const noResults = count === 0 && (this.query ?? '').trim() !== '';
131
131
  let gi = 0;
132
- return (h("bs-card", { key: '21af2ce5ac7e6acd9d6061ad360a59c5640d7e54', part: "container", class: "bs-keyboard-shortcuts", surface: "base", role: "region", "aria-labelledby": headId, onKeyDown: this.onKeyDown }, h("div", { key: 'b6f2ddca83786219c1ef36f77308b94601c01f99', class: "bs-keyboard-shortcuts__body" }, h("div", { key: '2245b7e4c01fbc92690a211584343ebf8745143b', part: "head", class: "bs-keyboard-shortcuts__head" }, h("svg", { key: 'c8b3e8ae05a905c23b98f251e5dc24d1cfa04b7d', class: "bs-keyboard-shortcuts__icon", viewBox: "0 0 24 24", width: "20", height: "20", fill: "none", stroke: "currentColor", "stroke-width": "1.8", "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true" }, h("rect", { key: 'd86f9e56a12913a6f1224bfe773a66e24ac371a4', x: "2", y: "5", width: "20", height: "14", rx: "2" }), h("path", { key: 'e4bfc81bd805b634d15e1434dad55a03caaf8a44', d: "M6 9h.01M10 9h.01M14 9h.01M18 9h.01M6 13h.01M18 13h.01M9 15.5h6" })), h("h4", { key: 'dfdb6d3d5ab0703b94d90541d30c7b8110b9a8a7', part: "heading", id: headId, class: "bs-keyboard-shortcuts__heading" }, h("slot", { key: '17419c9a9d289863c6770a9c1a30731a049b4019', name: "heading" }, this.heading)), h("bs-icon-button", { key: '0af57e576c3324dae8dd816a52fc7dcb6683862d', part: "close", variant: "subtle", size: "md", "aria-label": this.closeLabel, onClick: () => this.bsClose.emit() }, h("svg", { key: '3d9785b24a5d4a77326db0142855f46801864526', viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "aria-hidden": "true" }, h("path", { key: '07fb8c79d8d542f01796198fb35fda1f15157ae9', d: "M6 6l12 12M18 6 6 18" })))), h("bs-input", { key: '284fd4865c93a5d9b8c8fa928fd47c41f5b70a5e', part: "search", type: "search", placeholder: this.searchPlaceholder, value: this.query, onBsInput: this.onInput }), this.showSingleKeySwitch && (h("div", { key: '8648cfd3e60857859682d7f656c43f0adf729575', part: "switch", class: "bs-keyboard-shortcuts__switch" }, h("div", { key: 'cdc80176e9e9767da1c930dbfb944031dcd8bc03', class: "bs-keyboard-shortcuts__switch-text" }, h("span", { key: '3a26031fdcdb0beb723122ef3c4b0d77422d1c5e', class: "bs-keyboard-shortcuts__switch-title" }, this.singleKeyLabel), h("span", { key: '41cdcf06a30f9ce30ba09ce8ac1c7a6aa2c2ae09', class: "bs-keyboard-shortcuts__switch-caption" }, this.singleKeyDescription)), h("bs-switch", { key: '0cff1938fb2b64e5921490cf09628f42c12e1d3d', ariaLabel: this.singleKeyLabel, checked: this.singleKeyEnabled, onBsChange: this.onSwitch }))), h("span", { key: 'e321954a4186f62838361ffe3f442eb87135eac9', class: "bs-keyboard-shortcuts__live", "aria-live": "polite" }, `${count} shortcut${count === 1 ? '' : 's'}`), noResults ? (h("p", { part: "empty", class: "bs-keyboard-shortcuts__empty", role: "status" }, this.noResultsText)) : (h("div", { part: "groups", class: "bs-keyboard-shortcuts__groups" }, cols.map(col => (h("div", { class: "bs-keyboard-shortcuts__column" }, col.map(g => {
132
+ return (h("bs-card", { key: 'a5053480ccd41dd6d915a47cb7745b3932ba9931', part: "container", class: "bs-keyboard-shortcuts", surface: "base", role: "region", "aria-labelledby": headId, onKeyDown: this.onKeyDown }, h("div", { key: '8b6e9c7bf16a6cb0e2d81243ae60106cb52c49a4', class: "bs-keyboard-shortcuts__body" }, h("div", { key: 'fbdb6317e9c0e8a270bc5f9fb713654f68796b8f', part: "head", class: "bs-keyboard-shortcuts__head" }, h("svg", { key: '16342385b62757c866386cf0b692ec15cf8dc28c', class: "bs-keyboard-shortcuts__icon", viewBox: "0 0 24 24", width: "20", height: "20", fill: "none", stroke: "currentColor", "stroke-width": "1.8", "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true" }, h("rect", { key: '6337f691c61999614a84f501c056aae96c6d5d08', x: "2", y: "5", width: "20", height: "14", rx: "2" }), h("path", { key: 'adfff1e7dbff765e0b14b3676119fa6c4be3b159', d: "M6 9h.01M10 9h.01M14 9h.01M18 9h.01M6 13h.01M18 13h.01M9 15.5h6" })), h("h4", { key: 'f5cb2b86082b0e8c50d19da03f398767889a39ba', part: "heading", id: headId, class: "bs-keyboard-shortcuts__heading" }, h("slot", { key: '3839ba626c94bada3ba752e0cbacf96d8a5f0738', name: "heading" }, this.heading)), h("bs-icon-button", { key: '70a67f9f43899e59fff392968335fec6d1cf4b2d', part: "close", variant: "subtle", size: "md", "aria-label": this.closeLabel, onClick: () => this.bsClose.emit() }, h("svg", { key: '186d78eca1df5cac3c80a8dcfbf66d2301f3165b', viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "aria-hidden": "true" }, h("path", { key: '8099ce12121ea5340cb578f1f2e338af2f909087', d: "M6 6l12 12M18 6 6 18" })))), h("bs-input", { key: 'dd0a5e9f35849c13499e18d458ddeb1153a9bb2a', part: "search", type: "search", placeholder: this.searchPlaceholder, value: this.query, onBsInput: this.onInput }), this.showSingleKeySwitch && (h("div", { key: '88584be755995426dfa0c33a81f8c68dc4f0b65d', part: "switch", class: "bs-keyboard-shortcuts__switch" }, h("div", { key: '7a530f7760d6593a5ab031636b6ed93bfdf3e9bf', class: "bs-keyboard-shortcuts__switch-text" }, h("span", { key: '992e5d015f9195d7577e38f18ffeaf169b626d7d', class: "bs-keyboard-shortcuts__switch-title" }, this.singleKeyLabel), h("span", { key: 'f6f29ec213290f68aaa5a09f7b1e4f00eb77b3b4', class: "bs-keyboard-shortcuts__switch-caption" }, this.singleKeyDescription)), h("bs-switch", { key: '9e9531d7bebf08f84c8d5d238ab90072683a9172', ariaLabel: this.singleKeyLabel, checked: this.singleKeyEnabled, onBsChange: this.onSwitch }))), h("span", { key: '4c9bbb0b4f6fadec2c63c5b8b4ec1ad7dea9f000', class: "bs-keyboard-shortcuts__live", "aria-live": "polite" }, `${count} shortcut${count === 1 ? '' : 's'}`), noResults ? (h("p", { part: "empty", class: "bs-keyboard-shortcuts__empty", role: "status" }, this.noResultsText)) : (h("div", { part: "groups", class: "bs-keyboard-shortcuts__groups" }, cols.map(col => (h("div", { class: "bs-keyboard-shortcuts__column" }, col.map(g => {
133
133
  const tid = `${this.id}-g${gi++}`;
134
134
  return (h("div", { part: "group", class: "bs-keyboard-shortcuts__group", role: "group", "aria-labelledby": tid }, h("div", { part: "group-title", id: tid, class: "bs-keyboard-shortcuts__group-title" }, g.title), h("div", { class: "bs-keyboard-shortcuts__rows", role: "list" }, g.shortcuts.map(s => (h("bs-shortcut-row", { part: "row", action: s.action, keys: s.keys, selectionRole: "listitem", disabled: !!s.disabled || (!this.singleKeyEnabled && isSingleKey(s)) }))))));
135
- })))))), this.showFooterHint && (h("div", { key: '84f3ae05197dcb7d20113928bd5427b5e549d40e', part: "footer", class: "bs-keyboard-shortcuts__footer" }, h("slot", { key: 'c9f289a3ec31bccb9133de653947228cce424e0a', name: "footer" }, h("span", { key: 'af7f80eab782ac7d6a0d756399ecf68edb03745c' }, this.footerPrefix), h("bs-key", { key: '2a3f2887a0c3d55043a125a9e44048ef661e7c5d', label: this.footerKey }), h("span", { key: '81d4c71b4149634033dc921fdc4322ea8d4e501b' }, this.footerText)))))));
135
+ })))))), this.showFooterHint && (h("div", { key: '021ae63bd1633851bc032eb5f22eecfa468a5c68', part: "footer", class: "bs-keyboard-shortcuts__footer" }, h("slot", { key: 'cff2d6f675a885c11b47a3d8fa742397f3c20003', name: "footer" }, h("span", { key: '531c8be2c0afddf6b2aa038b79983f0299baaec9' }, this.footerPrefix), h("bs-key", { key: 'e4a4c98c0cebd3c7436e095a86225e7aa31e492c', label: this.footerKey }), h("span", { key: 'bc4cb7dec5d3c24b2a7058b5da2c8ad2c62e056d' }, this.footerText)))))));
136
136
  }
137
137
  static get is() { return "bs-keyboard-shortcuts"; }
138
138
  static get encapsulation() { return "shadow"; }
@@ -54,7 +54,7 @@ export class BsLink {
54
54
  const newTab = this.target === '_blank';
55
55
  const showIcon = this.external || newTab;
56
56
  const rel = this.rel ?? (newTab ? 'noopener noreferrer' : undefined);
57
- return (h("a", { key: 'b24a7dbafbe00b28f6b34a62bdf82d43e9e09c99', part: "link", class: `bs-link bs-link--${this.variant}`, href: this.href, target: this.target, rel: rel, "aria-label": this.ariaLabel, "aria-current": this.current ? 'page' : undefined, onClick: this.onClick }, h("span", { key: 'c0be414d7c6682c747478c3d6f0ae017d8ee0ae5', part: "label", class: "bs-link__label" }, h("slot", { key: '7c877980a329730ff01d422d3cc9d99e8b613bc7' })), newTab && h("span", { key: '60c76ac83d008070537057bdf2f808082f0a6bda', class: "bs-link__sr" }, this.externalLabel), showIcon && (h("svg", { key: '0b7c3fc732d4ae22c3b28e7392e383b767f95515', part: "icon", class: "bs-link__icon", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true" }, h("path", { key: '887f86dbf2c091648d7a8846ce757841fa8dce0b', d: "M9 3h4v4M13 3L7.5 8.5M12 9v3a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h3", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" })))));
57
+ return (h("a", { key: 'abc72ce657667f084a11086e2ddee9f764979cd7', part: "link", class: `bs-link bs-link--${this.variant}`, href: this.href, target: this.target, rel: rel, "aria-label": this.ariaLabel, "aria-current": this.current ? 'page' : undefined, onClick: this.onClick }, h("span", { key: '1afba0c22b50f07300b1b431434ca3f9b38a7b33', part: "label", class: "bs-link__label" }, h("slot", { key: 'dcfa6947cfd6821b4810624a87c5d5cb3d270282' })), newTab && h("span", { key: '1faaa4ea78634a7bb2d44f160564d87408c3e79b', class: "bs-link__sr" }, this.externalLabel), showIcon && (h("svg", { key: '889b39655b35270de1fd4ef966fca9077a140935', part: "icon", class: "bs-link__icon", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true" }, h("path", { key: 'd5393bd505b27536bc19c86d7d21f674d7a75704', d: "M9 3h4v4M13 3L7.5 8.5M12 9v3a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h3", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" })))));
58
58
  }
59
59
  static get is() { return "bs-link"; }
60
60
  static get encapsulation() { return "shadow"; }
@@ -104,7 +104,7 @@ export class BsList {
104
104
  enabled[next].focus();
105
105
  }
106
106
  render() {
107
- return (h("div", { key: 'c8066e4f9be832931db79a5ef4351d4cf9301549', part: "list", class: "bs-list", role: this.selectable ? 'listbox' : 'list', "aria-label": this.ariaLabel ?? undefined }, h("slot", { key: 'c957f74f015037e305b3b18b9bd2010702cfd76d', onSlotchange: () => this.sync() })));
107
+ return (h("div", { key: 'f117bd6ecbbfc4571684dfa2ebea07ea70723672', part: "list", class: "bs-list", role: this.selectable ? 'listbox' : 'list', "aria-label": this.ariaLabel ?? undefined }, h("slot", { key: 'de9bf097921079f34f97bfbbbb19e2896c340de7', onSlotchange: () => this.sync() })));
108
108
  }
109
109
  static get is() { return "bs-list"; }
110
110
  static get encapsulation() { return "shadow"; }
@@ -105,7 +105,7 @@ export class BsListItem {
105
105
  const role = this.selectionRole === 'option' ? 'option' : this.selectionRole === 'listitem' ? 'listitem' : this.interactive ? 'button' : undefined;
106
106
  const standaloneFocusable = this.interactive && !this.selectionRole && !this.disabled;
107
107
  const showTrailing = this.showArrow || this.hasTrailing;
108
- return (h(Host, { key: 'fdf4948938fa51a2980b0d13c254eb21c7ded62f', role: role, tabindex: standaloneFocusable ? '0' : undefined, "aria-selected": this.selectionRole === 'option' ? String(this.selected) : undefined, "aria-disabled": this.disabled ? 'true' : undefined, class: { 'bs-list-item--interactive': interactive && !this.disabled } }, h("div", { key: '1e3f15d35fd65dd070031edde0d4b1aa517d445e', part: "container", class: "bs-list-item" }, interactive && !this.disabled && h("bs-ripple", { key: '14e9fe3c11e48af22f9e0bb12795c6374f76e87b', part: "ripple" }), this.marker && (h("span", { key: '908061bb029ceda4ec3a3593f594068bb0e9236e', part: "marker", class: "bs-list-item__marker", "aria-hidden": "true" }, this.marker)), h("div", { key: '7a2d5ec1d1440ca8e276d0edcbf81eed2a897b2f', part: "leading", class: { 'bs-list-item__leading': true, 'bs-list-item__leading--has-content': this.hasLeading } }, h("slot", { key: 'f38b817abcca020be4134a17df98ba1802d351e7', name: "leading", onSlotchange: (e) => (this.hasLeading = this.slotHas(e)) })), h("div", { key: '598edee3eb3f9fedb30938bbed0663560b72fb87', part: "content", class: "bs-list-item__content" }, !this.hasDefault && this.label && (h("div", { key: '736f971fc786e202552b448f5dbecf13c9b838ea', part: "label", class: "bs-list-item__label" }, this.label)), !this.hasDefault && this.description && (h("div", { key: 'b17af2b501ca2bd3b81af71446421c297364b0ab', part: "description", class: "bs-list-item__description" }, this.description)), !this.hasDefault && this.supportText && (h("div", { key: '338fe438703e6a8e3ffd1bfe5d943612757c568e', part: "support-text", class: "bs-list-item__support" }, this.supportText)), h("slot", { key: 'a93ebdbc28d14f698ffc498a6cf5ecef44ad5f00', onSlotchange: (e) => (this.hasDefault = this.slotHas(e)) })), h("div", { key: 'bea35073b085f98027a3de109108d9f20c7b848e', part: "trailing", class: { 'bs-list-item__trailing': true, 'bs-list-item__trailing--shown': showTrailing } }, h("slot", { key: '012e364368c90d40026564a6afbf03e54447a2e8', name: "trailing", onSlotchange: (e) => (this.hasTrailing = this.slotHas(e)) }, this.showArrow && (h("svg", { key: '4355a805d6814b76bb080fcb2660de5295d1101b', viewBox: "0 0 32 32", width: "32", height: "32", fill: "none", "aria-hidden": "true" }, h("path", { key: '9d7cd5926a940157e6366eca4d082bfce9b01eb1', d: "M12 7L21 16L12 25", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }))))))));
108
+ return (h(Host, { key: 'a83772eaf4984154c79368244bdb0132f2a61292', role: role, tabindex: standaloneFocusable ? '0' : undefined, "aria-selected": this.selectionRole === 'option' ? String(this.selected) : undefined, "aria-disabled": this.disabled ? 'true' : undefined, class: { 'bs-list-item--interactive': interactive && !this.disabled } }, h("div", { key: '9e32856f6c9ba224c2dc560d9e184af3d6826349', part: "container", class: "bs-list-item" }, interactive && !this.disabled && h("bs-ripple", { key: 'f0132b98663f07bd209a85e25ca1aa73e5ba79ef', part: "ripple" }), this.marker && (h("span", { key: '7030b2bc2968a4cb86bdc31ca07b0b175a49d2c4', part: "marker", class: "bs-list-item__marker", "aria-hidden": "true" }, this.marker)), h("div", { key: '78f9b066a5f65fe807c26661930e7f81993380fb', part: "leading", class: { 'bs-list-item__leading': true, 'bs-list-item__leading--has-content': this.hasLeading } }, h("slot", { key: '0f0b7bd65e809e9d4f2210831554228d6c0ab3ac', name: "leading", onSlotchange: (e) => (this.hasLeading = this.slotHas(e)) })), h("div", { key: '1281075bcedd3c19c910cb5ad8a95b29c1b25693', part: "content", class: "bs-list-item__content" }, !this.hasDefault && this.label && (h("div", { key: '58255d974d1652d40d341168a062de1c91d41cca', part: "label", class: "bs-list-item__label" }, this.label)), !this.hasDefault && this.description && (h("div", { key: 'f906a96348e4bf453e89bc1a7f05acc663959619', part: "description", class: "bs-list-item__description" }, this.description)), !this.hasDefault && this.supportText && (h("div", { key: '5bab72a6f2334ad2efb8821501049e5363104176', part: "support-text", class: "bs-list-item__support" }, this.supportText)), h("slot", { key: '1baffcbdbd56cba0f07ab2c3e04383a05660fe00', onSlotchange: (e) => (this.hasDefault = this.slotHas(e)) })), h("div", { key: '371a502c89bf8113e45fb63b4a11dfffa75d98b0', part: "trailing", class: { 'bs-list-item__trailing': true, 'bs-list-item__trailing--shown': showTrailing } }, h("slot", { key: '8e2f738727a5a7eafe35e354aa422bfbd31dc2c4', name: "trailing", onSlotchange: (e) => (this.hasTrailing = this.slotHas(e)) }, this.showArrow && (h("svg", { key: 'c371e14d29fecdb1509a83465460eb0c01326cd1', viewBox: "0 0 32 32", width: "32", height: "32", fill: "none", "aria-hidden": "true" }, h("path", { key: '088e1ab871e1c8386a0c7196c4c66c8a8c180951', d: "M12 7L21 16L12 25", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }))))))));
109
109
  }
110
110
  static get is() { return "bs-list-item"; }
111
111
  static get encapsulation() { return "shadow"; }
@@ -162,7 +162,7 @@ export class BsMegaMenu {
162
162
  const hasFeatured = !!this.featured || !!this.el.querySelector(':scope > [slot="featured"]');
163
163
  const tracks = this.columns.length + (hasFeatured ? 1 : 0);
164
164
  const removed = this.open === false && !this.closing;
165
- return (h(Host, { key: '45208381f067bfda8ef501c0d6a039e502515fca', "data-closed": removed ? '' : undefined }, h("bs-card", { key: '9b3f930124f6c6bf76106fc27045635f1c436efe', part: "panel", class: "bs-mega-menu", surface: "base", role: "navigation", "aria-label": this.label, onKeyDown: this.onKeyDown, inert: this.closing, ref: el => (this.panelEl = el) }, h("div", { key: '52ed226040594af9c21877ad03d42c27b4eb932f', part: "columns", class: "bs-mega-menu__columns", style: { '--bs-mega-menu-tracks': String(Math.max(tracks, 1)) } }, this.columns.map(col => this.renderColumn(col)), hasFeatured && this.renderFeatured()), h("bs-divider", { key: 'db1a36f92f32c19dabcc55d99bbd86eb3e1e57e0', decorative: true }), h("div", { key: 'c164f4fbfab086f962a1b3eb37d448b0dfea5232', part: "footer", class: "bs-mega-menu__footer" }, h("span", { key: 'b224e71457976273e4eb986ba3541a7bc28abcb9', class: "bs-mega-menu__footer-start" }, h("slot", { key: '1fa4aefedba1f415886ef9849fdac47a5d52b42f', name: "footer-start" }, this.recent.length > 0 && `${this.recentLabel} ${this.recent.join(', ')}`)), h("span", { key: '4ed15967e32c1d65ef1822a54dda30a7956dd06e', class: "bs-mega-menu__footer-end" }, h("slot", { key: '021c5b12e47d2f6875d6d150a7359ec2e9e43b7a', name: "footer-end" }, h("span", { key: '2caff5c834a0f5dc9056cd04c38328112f03d596', class: "bs-mega-menu__shortcut" }, this.shortcutLabel, h("bs-key-caps", { key: 'e25c03ddc9b4686661771f1966ebdf8826d92b98', part: "shortcut", keys: this.shortcutKeys, label: this.shortcutKeysLabel }))))))));
165
+ return (h(Host, { key: '4832adcf0042dc4e9a3fe440b97659b953069507', "data-closed": removed ? '' : undefined }, h("bs-card", { key: '9ff246ab840b03384b682729ee548c1daad8b455', part: "panel", class: "bs-mega-menu", surface: "base", role: "navigation", "aria-label": this.label, onKeyDown: this.onKeyDown, inert: this.closing, ref: el => (this.panelEl = el) }, h("div", { key: '95aacf86956b74daf5d5ac09e5c9f89e017a81c8', part: "columns", class: "bs-mega-menu__columns", style: { '--bs-mega-menu-tracks': String(Math.max(tracks, 1)) } }, this.columns.map(col => this.renderColumn(col)), hasFeatured && this.renderFeatured()), h("bs-divider", { key: '3da7484d4e7738fa84139e5bf742dfdd76c2a062', decorative: true }), h("div", { key: '56c6a6eb9412079ac41c460038dbd31ff45ddc8e', part: "footer", class: "bs-mega-menu__footer" }, h("span", { key: '4e7ce483d8d849e0dbd3d21c7d79aef657bcd881', class: "bs-mega-menu__footer-start" }, h("slot", { key: '359bd9f163c92557cd9466a808b10f98fccbe522', name: "footer-start" }, this.recent.length > 0 && `${this.recentLabel} ${this.recent.join(', ')}`)), h("span", { key: '689361415321b6bd4c5eb9f30e8396a12c38863b', class: "bs-mega-menu__footer-end" }, h("slot", { key: '9a39392d5f2ba62797929ed9a8afd1ec5ab41175', name: "footer-end" }, h("span", { key: '89e2764e2359818c07a7241717ac59c0f1ff289c', class: "bs-mega-menu__shortcut" }, this.shortcutLabel, h("bs-key-caps", { key: '472ab949a7a6182adff32d0d954e83c1f59cb0c6', part: "shortcut", keys: this.shortcutKeys, label: this.shortcutKeysLabel }))))))));
166
166
  }
167
167
  static get is() { return "bs-mega-menu"; }
168
168
  static get encapsulation() { return "shadow"; }
@@ -44,7 +44,7 @@ export class BsMenu {
44
44
  items[next].shadowRoot?.querySelector('button')?.focus();
45
45
  }
46
46
  render() {
47
- return (h("div", { key: '25e39e3703fbdcf7b4257c77fb07f356bb41afdd', part: "list", class: "bs-menu", role: "menu" }, h("slot", { key: '76a0f6d4c3f1b9de2882db4d0a285cf2758402d1' })));
47
+ return (h("div", { key: '1661d57a19b11cb3dc3217ff2e3c9b5990240e0f', part: "list", class: "bs-menu", role: "menu" }, h("slot", { key: 'f8534652090ba02a20e2429d4be04ff300e96e6c' })));
48
48
  }
49
49
  static get is() { return "bs-menu"; }
50
50
  static get encapsulation() { return "shadow"; }
@@ -47,10 +47,10 @@ export class BsMenuBlock {
47
47
  render() {
48
48
  const common = { part: 'container', class: 'bs-menu-block' };
49
49
  const body = [
50
- h("bs-icon-tile", { key: '646016b2a8686fc0a2cb2f1bfce4cd5978be3c66', part: "icon", class: "bs-menu-block__icon", size: "md" }, this.icon ? h("span", { class: "bs-menu-block__glyph", style: { '--bs-menu-block-glyph': `url(${JSON.stringify(this.icon)})` } }) : h("slot", null)),
51
- h("span", { key: '936d7b5b56bcecf7c45f86cc8945ef918042d7da', class: "bs-menu-block__text" }, h("span", { key: 'd1ddb1420d3788e1c0f00528a89c321c4a7ee3e1', class: "bs-menu-block__title" }, h("span", { key: '44fc5880d740df2385df229447492b830c47ebc4', part: "name", class: "bs-menu-block__name" }, this.name), this.badge && (h("bs-chip-informative", { key: '6aca0352af4fea7481cb7fb8b8323faa141ca1b4', part: "badge", class: "bs-menu-block__badge", color: "info", size: "sm" }, this.badge))), this.description && (h("span", { key: '23f187da1d7fd3657c0c2a0b203c280aade5d45d', part: "description", class: "bs-menu-block__description" }, this.description))),
50
+ h("bs-icon-tile", { key: '54af23c0a7db510b37703ffb14121001d5574244', part: "icon", class: "bs-menu-block__icon", size: "md" }, this.icon ? h("span", { class: "bs-menu-block__glyph", style: { '--bs-menu-block-glyph': `url(${JSON.stringify(this.icon)})` } }) : h("slot", null)),
51
+ h("span", { key: '423222927ae442229eee28de485626e14fc0868e', class: "bs-menu-block__text" }, h("span", { key: '9f8e5377a88767a9eed7e02352611a15b557be9c', class: "bs-menu-block__title" }, h("span", { key: 'e81410938ab92cb30948792865a848e19e02e2ae', part: "name", class: "bs-menu-block__name" }, this.name), this.badge && (h("bs-chip-informative", { key: '1bdc625c01bc151c99ceffc4bebe3edea86ff447', part: "badge", class: "bs-menu-block__badge", color: "info", size: "sm" }, this.badge))), this.description && (h("span", { key: '344c58c52f98142eb2c82fb8683f5b339731ba95', part: "description", class: "bs-menu-block__description" }, this.description))),
52
52
  ];
53
- return (h("button", { key: '9e7737b87c9da42a9bb42f462d1f72d2077c80c2', ...common, type: "button" }, body));
53
+ return (h("button", { key: 'a55e7bc09ed48a33630f497f8896d14b32e2f5a0', ...common, type: "button" }, body));
54
54
  }
55
55
  static get is() { return "bs-menu-block"; }
56
56
  static get encapsulation() { return "shadow"; }
@@ -48,7 +48,7 @@ export class BsMenuItem {
48
48
  this.bsSelect.emit();
49
49
  };
50
50
  render() {
51
- return (h("button", { key: '5e59968dab6032af25243342e2039f64c43a583c', type: "button", part: "item", role: "menuitem", class: `bs-menu-item ${this.disabled ? 'bs-menu-item--disabled' : ''}`, disabled: this.disabled, "aria-disabled": this.disabled ? 'true' : undefined, onClick: this.onClick }, h("bs-ripple", { key: 'a11c96b8091a09d6f3d877b10caf1717ca60cd8f', part: "ripple", centered: false, disabled: this.disabled }), h("span", { key: '22506ef27de03181206362560ee8eaaf778248a7', part: "icon", class: `bs-menu-item__icon ${this.hasIcon ? 'bs-menu-item__icon--has-content' : ''}` }, h("slot", { key: '1e18f3444d2650821c90e39174aa45a512fa79b6', name: "icon", onSlotchange: this.onIconSlotchange })), h("span", { key: '4975a565fbd8d991d916b2715b2371294c1b2372', part: "label", class: "bs-menu-item__label" }, h("slot", { key: '6e0551a6623e17d0cc2d93445a41cf7f8a992981' }))));
51
+ return (h("button", { key: 'a969a082bd83d038db27827975e43e8b0e7b1657', type: "button", part: "item", role: "menuitem", class: `bs-menu-item ${this.disabled ? 'bs-menu-item--disabled' : ''}`, disabled: this.disabled, "aria-disabled": this.disabled ? 'true' : undefined, onClick: this.onClick }, h("bs-ripple", { key: 'cd7f6fd09f9a6922e352f319f827aa16bba89ec7', part: "ripple", centered: false, disabled: this.disabled }), h("span", { key: '35f79184bdeab4a3234bd2379f866a774382f16a', part: "icon", class: `bs-menu-item__icon ${this.hasIcon ? 'bs-menu-item__icon--has-content' : ''}` }, h("slot", { key: '1df32c3926df82957599d444f4ab4261a25a724d', name: "icon", onSlotchange: this.onIconSlotchange })), h("span", { key: '02101db2f542e7b0b5fa9417f01606a3f4c7d504', part: "label", class: "bs-menu-item__label" }, h("slot", { key: 'c66e294bf3ad3bc9433ac7c6718207a4f2837229' }))));
52
52
  }
53
53
  static get is() { return "bs-menu-item"; }
54
54
  static get encapsulation() { return "shadow"; }
@@ -45,7 +45,7 @@ export class BsMessage {
45
45
  /** Delivery/render state. `error` uses error colours; `pending` dims the bubble and sets `aria-busy`. */
46
46
  status = 'default';
47
47
  render() {
48
- return (h("div", { key: '3f9f6d74c18034a41b3938cd061fe0fae540c79a', class: "bs-message", "aria-busy": this.status === 'pending' ? 'true' : undefined }, h("div", { key: 'f5606b35a7fb70dc4917134771d77343bcbb1e36', part: "avatar", class: "bs-message__avatar" }, h("slot", { key: '0beffeb731ac64aa460c9d5d9d5f2127a3dc6d91', name: "avatar" })), h("div", { key: '8af6cf842240c59f76a15fbb86911be002782977', class: "bs-message__column" }, h("bs-card", { key: '5016ee1041ec0ba7752dbaf6efd65626f62e69ba', part: "container", class: "bs-message__bubble", surface: "base" }, h("div", { key: '05c380d812bd9d35e310a82e283de6b121229c02', part: "content", class: "bs-message__content" }, h("slot", { key: '8997a30bf2e848eb08e3a2b1370b7030458a60e2' }))), h("div", { key: 'fc8ec2e61464860a9d51977b4295c029cad05733', part: "footer", class: "bs-message__footer" }, h("slot", { key: '6d96f88a5422d22ff4e106c63dd5cf05c824eb60', name: "footer" })), h("div", { key: '5888010264d0cbb12644424a93b486b4b4fd4430', part: "timestamp", class: "bs-message__timestamp" }, h("slot", { key: '67c72df9f594346ff2a6ac3b38675dab84f92962', name: "timestamp" }, this.timestamp && h("time", { key: '949c7da15c29fb0c4cec22860378f887397aeca2', dateTime: this.datetime }, this.timestamp))))));
48
+ return (h("div", { key: 'd40a50874c4336c07e68e1113b69f7cf1f201dda', class: "bs-message", "aria-busy": this.status === 'pending' ? 'true' : undefined }, h("div", { key: 'a1e25df59ff3080fb4d35ebcf4ad02c620decdb4', part: "avatar", class: "bs-message__avatar" }, h("slot", { key: '89af0b568aa96d390277b0d8132e0c189b02d34c', name: "avatar" })), h("div", { key: 'e2acecd9ae7820e1e3424fe33a89e2dce43b360e', class: "bs-message__column" }, h("bs-card", { key: 'aa435f285ea9301a331168108039a14841f7171c', part: "container", class: "bs-message__bubble", surface: "base" }, h("div", { key: '30553499b79c236c74800190e3aca2f6e43b1ae5', part: "content", class: "bs-message__content" }, h("slot", { key: 'da5f656f9d2436a3c12dbd67fa34f5e28d5626aa' }))), h("div", { key: '98525da85571288f502755eea863ff117a31c42f', part: "footer", class: "bs-message__footer" }, h("slot", { key: '42ac8fcc4dd4e23c657d68b0398974acb37a478f', name: "footer" })), h("div", { key: '2bf6597ed48e6f3c252ff42d75eee48129b1a3d7', part: "timestamp", class: "bs-message__timestamp" }, h("slot", { key: 'd57875d2b2e86b7c5115eae8f26a80852537bdc2', name: "timestamp" }, this.timestamp && h("time", { key: 'ec840e7a0c5c525f501919b743e1dc79a45363d3', dateTime: this.datetime }, this.timestamp))))));
49
49
  }
50
50
  static get is() { return "bs-message"; }
51
51
  static get encapsulation() { return "shadow"; }
@@ -75,7 +75,7 @@ export class BsMessageList {
75
75
  }
76
76
  };
77
77
  render() {
78
- return (h("div", { key: '12927a4ddaadf555a427fe07ff5dd128fa2651b4', class: "bs-message-list" }, h("div", { key: '74770ff42ba4cd8208b98f0057feb1875c729f92', part: "viewport", class: "bs-message-list__viewport", role: "log", "aria-live": "polite", tabindex: "0", ref: el => (this.viewport = el), onScroll: this.onScroll }, h("slot", { key: '93e3bc699ecf49944b5709976fee533e9ae281ec' })), this.showScrollButton && (h("bs-icon-button", { key: '7871fc76177cae034e7c4f76c940dd33402ff327', part: "scroll-to-latest", class: "bs-message-list__scroll", variant: "neutral", ariaLabel: this.scrollToLatestLabel, onClick: () => this.scrollToLatest() }, h("svg", { key: '31cc721616e5d4841802e18ae7b004dd357ebc39', width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true" }, h("path", { key: 'cd133124826c625e34402e8b433a7d3eb562bee1', d: "M8 3v10M3.5 8.5L8 13l4.5-4.5", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }))))));
78
+ return (h("div", { key: '90058e1e0ad1efad987f4f1ec05c2f59cdfdba38', class: "bs-message-list" }, h("div", { key: '4173ba965f98a6cbc70f7d7edc683d35dc4601fd', part: "viewport", class: "bs-message-list__viewport", role: "log", "aria-live": "polite", tabindex: "0", ref: el => (this.viewport = el), onScroll: this.onScroll }, h("slot", { key: 'fa1f5d0a571d3948c432ec500ecf7e88e4c5f549' })), this.showScrollButton && (h("bs-icon-button", { key: 'e15d2d71a9f8f620de9b63367f1df3bea2cb8eae', part: "scroll-to-latest", class: "bs-message-list__scroll", variant: "neutral", ariaLabel: this.scrollToLatestLabel, onClick: () => this.scrollToLatest() }, h("svg", { key: '1266a003b4472d0572b867a150b40416a80ec560', width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true" }, h("path", { key: 'c6cf46e95668f5b09f67c123f3aa4caaa221cead', d: "M8 3v10M3.5 8.5L8 13l4.5-4.5", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }))))));
79
79
  }
80
80
  static get is() { return "bs-message-list"; }
81
81
  static get encapsulation() { return "shadow"; }
@@ -109,7 +109,7 @@ export class BsPageHeader {
109
109
  const level = Math.min(6, Math.max(1, Math.trunc(Number(this.headingLevel)) || 1));
110
110
  const showMeta = !!this.meta || this.slotted.meta;
111
111
  const hasTabs = this.slotted.tabs && !this.compact;
112
- return (h("div", { key: 'a469f1c878c18792ddfe5543c769e8532a14d286', part: "container", class: { 'bs-page-header': true, 'bs-page-header--compact': this.compact, 'bs-page-header--tabs': hasTabs } }, h("div", { key: 'f521d13ff55dde674dd751152ea523ca02e09967', part: "breadcrumb", class: { 'bs-page-header__breadcrumb': true, 'bs-page-header__empty': !this.slotted.breadcrumb } }, h("slot", { key: 'a9a6035be05eb96da26c08aa10eb82fd2d434bd4', name: "breadcrumb", onSlotchange: this.onSlotChange('breadcrumb') })), h("div", { key: 'bd9aeef1feb104eefb5a385fbb7ecfec8b6c5ed3', part: "row", class: "bs-page-header__row" }, h("div", { key: '65ce0eb8d77c1a00963b19570f4346a27987fad9', part: "main", class: { 'bs-page-header__main': true, 'bs-page-header__main--back': this.back } }, this.back && (h("bs-icon-button", { key: '4083d59309cdc5222bd3a41e8c5c75b30fb9f7e9', part: "back", class: "bs-page-header__back", variant: "subtle", size: "sm", ariaLabel: this.backLabel, onClick: () => this.bsBack.emit() }, h(ArrowLeftIcon, { key: '525886b66443c8ff8e044880e0c5eacd4c8ce6aa' }))), h("div", { key: '4c03f9f11f42809b822f1e827068096951a65e71', part: "title", class: { 'bs-page-header__title': true, 'bs-page-header__title--controls': this.back || this.favoritable } }, h(`h${level}`, { part: 'heading', class: { 'bs-page-header__heading': true } }, this.heading), h("span", { key: '739ac812368229ea084a43f0ac601c5b247f78b1', part: "status", class: { 'bs-page-header__status': true, 'bs-page-header__empty': !this.slotted.status } }, h("slot", { key: '61178a4c48e7eeaf031fdfb70f6f14da11bc8e8c', name: "status", onSlotchange: this.onSlotChange('status') })), this.favoritable && (h("bs-icon-button", { key: '1e1bae3f165a452eaa17a46fd102c6281c787e3f', part: "favorite", class: "bs-page-header__favorite", variant: "subtle", size: "sm", ariaLabel: this.favoriteLabel, pressed: this.favorite, onClick: this.onFavoriteClick }, this.favorite ? h(StarFillIcon, null) : h(StarIcon, null)))), h("div", { key: '8208069cf42463ca179842b7f83ad21aad332659', part: "meta", class: { 'bs-page-header__meta': true, 'bs-page-header__empty': !showMeta } }, h("slot", { key: '60d0c693784b12146d9b04168528fcecbfdec922', name: "meta", onSlotchange: this.onSlotChange('meta') }, this.meta))), h("div", { key: '23c938afbe4f28ec2094056b485d0ac6cd6af47b', part: "actions", class: { 'bs-page-header__actions': true, 'bs-page-header__empty': !this.slotted.actions } }, h("slot", { key: '4526fc55acd84205ccdf4760968164b438eededd', name: "actions", onSlotchange: this.onSlotChange('actions') }))), h("div", { key: 'bb305e5321e998c31fc768a3dcaf27646356a9f4', part: "tabs", class: { 'bs-page-header__tabs': true, 'bs-page-header__empty': !this.slotted.tabs } }, h("slot", { key: 'fa4e392f34f72363a7da75c446fa1039ea7b9ea7', name: "tabs", onSlotchange: this.onSlotChange('tabs') })), hasTabs && h("bs-divider", { key: '31326f1ab16eca04ca813f8d523800270f7151b0', part: "divider", class: "bs-page-header__divider", decorative: true })));
112
+ return (h("div", { key: '08cdd135e8420658d83746e92e73add8a504fe39', part: "container", class: { 'bs-page-header': true, 'bs-page-header--compact': this.compact, 'bs-page-header--tabs': hasTabs } }, h("div", { key: 'e435828cd6e8fe3d9e2fa96c2b6ee625c71b8868', part: "breadcrumb", class: { 'bs-page-header__breadcrumb': true, 'bs-page-header__empty': !this.slotted.breadcrumb } }, h("slot", { key: '71d3e23d947495131ff3bf0a64cc9f50d62205c5', name: "breadcrumb", onSlotchange: this.onSlotChange('breadcrumb') })), h("div", { key: '00d8ddb37350152ad4b39b9b555057ce943cd24b', part: "row", class: "bs-page-header__row" }, h("div", { key: 'ac41b44a107ac68f44b5f90094d6d6c5fbe1a26f', part: "main", class: { 'bs-page-header__main': true, 'bs-page-header__main--back': this.back } }, this.back && (h("bs-icon-button", { key: '6b609f18bd356f23bf4223acf50b66b317437152', part: "back", class: "bs-page-header__back", variant: "subtle", size: "sm", ariaLabel: this.backLabel, onClick: () => this.bsBack.emit() }, h(ArrowLeftIcon, { key: '001d13bd7b0d186aa4335272e1f3705dd31c09e2' }))), h("div", { key: '97f89eaf3d7c6411c290697df525ff46d4de3597', part: "title", class: { 'bs-page-header__title': true, 'bs-page-header__title--controls': this.back || this.favoritable } }, h(`h${level}`, { part: 'heading', class: { 'bs-page-header__heading': true } }, this.heading), h("span", { key: '55b632d4c2be435c1377c64a483739ef6c4c1990', part: "status", class: { 'bs-page-header__status': true, 'bs-page-header__empty': !this.slotted.status } }, h("slot", { key: '08960a3d58aff6c5b84439711240b765c057b68c', name: "status", onSlotchange: this.onSlotChange('status') })), this.favoritable && (h("bs-icon-button", { key: '55deea361072d0cf1042a9db56c6c6c71fe8fcca', part: "favorite", class: "bs-page-header__favorite", variant: "subtle", size: "sm", ariaLabel: this.favoriteLabel, pressed: this.favorite, onClick: this.onFavoriteClick }, this.favorite ? h(StarFillIcon, null) : h(StarIcon, null)))), h("div", { key: 'bf050e21ca626669cfb8df020bcc958d2e161d16', part: "meta", class: { 'bs-page-header__meta': true, 'bs-page-header__empty': !showMeta } }, h("slot", { key: '2626ea276e9a97d13415a61f3b7c81c85569a4b3', name: "meta", onSlotchange: this.onSlotChange('meta') }, this.meta))), h("div", { key: 'b893aa531395b189528a8244c1d1fd8b7ea3aecf', part: "actions", class: { 'bs-page-header__actions': true, 'bs-page-header__empty': !this.slotted.actions } }, h("slot", { key: '182d1782edd1a8ea39c261b3171ad09e333005a3', name: "actions", onSlotchange: this.onSlotChange('actions') }))), h("div", { key: '4fbb805c8c59841b893a19aa2ef10a186a1eaee7', part: "tabs", class: { 'bs-page-header__tabs': true, 'bs-page-header__empty': !this.slotted.tabs } }, h("slot", { key: 'fe7bd2aee357dcc1756242b0f270ee7bf9aeee59', name: "tabs", onSlotchange: this.onSlotChange('tabs') })), hasTabs && h("bs-divider", { key: '934d82094f2af340028b58bff79fefb705b7e2c5', part: "divider", class: "bs-page-header__divider", decorative: true })));
113
113
  }
114
114
  static get is() { return "bs-page-header"; }
115
115
  static get encapsulation() { return "shadow"; }
@@ -92,7 +92,7 @@ export class BsPagination {
92
92
  }
93
93
  render() {
94
94
  const pageList = this.getPageList();
95
- return (h("nav", { key: '2e61374a3b2d6538ec297915b6a0791e5e5a637f', "aria-label": this.navLabel }, h("ul", { key: 'a2abe1a24e79bd01be23832861cdc4d534810b4c', part: "list", class: "bs-pagination__list" }, h("li", { key: '3be6627a6369222829cffca7cd6de47a346dc1b6', part: "item", class: "bs-pagination__item" }, h("button", { key: 'f08b5e4ec7d2d71b3ccc2db3be9171663a5311cb', part: "prev", type: "button", class: "bs-pagination__control", "aria-label": this.previousLabel, disabled: this.currentPage <= 1, onClick: () => this.goToPage(this.currentPage - 1) }, h("bs-ripple", { key: 'a81b48cbbc64d406f5c9ed0eac96066cbe5735ec', part: "ripple", centered: true }), h(ChevronLeftIcon, { key: '024845aee202d65979b2fb802e603fa3c190fdbd' }))), pageList.map((item, index) => item === 'ellipsis' ? (h("li", { part: "item", class: "bs-pagination__item", key: `ellipsis-${index}` }, h("span", { part: "ellipsis", class: "bs-pagination__ellipsis", "aria-hidden": "true" }, h(EllipsisIcon, null)))) : (h("li", { part: "item", class: "bs-pagination__item", key: item }, h("button", { part: item === this.currentPage ? 'page current' : 'page', type: "button", class: `bs-pagination__control bs-pagination__page ${item === this.currentPage ? 'bs-pagination__page--current' : ''}`, "aria-label": `${this.pageLabel} ${item}`, "aria-current": item === this.currentPage ? 'page' : undefined, onClick: () => this.goToPage(item) }, h("bs-ripple", { part: "ripple", centered: true }), item)))), h("li", { key: 'ab1300cedccb62502d5b9b18d24d6d0567ea60b1', part: "item", class: "bs-pagination__item" }, h("button", { key: '9a1013034a9e0ab1cb29f7946b8a3e848ab959ea', part: "next", type: "button", class: "bs-pagination__control", "aria-label": this.nextLabel, disabled: this.currentPage >= this.safeTotalPages, onClick: () => this.goToPage(this.currentPage + 1) }, h("bs-ripple", { key: 'd8bf1df86d661bade1a9518c748674298e4dc840', part: "ripple", centered: true }), h(ChevronRightIcon, { key: 'e81e07440ba141dfe1ed85fd43c76223452a5805' }))))));
95
+ return (h("nav", { key: '4d0e0678cb546e757076f52dd332353f5dceb89c', "aria-label": this.navLabel }, h("ul", { key: '4c37e78c17484799dee3ab9b8d4b5470f1713d69', part: "list", class: "bs-pagination__list" }, h("li", { key: '46cf1afd5ec8ef00775f6b9f8053633eaa87010f', part: "item", class: "bs-pagination__item" }, h("button", { key: '86995ca4df3985acf8aa982ead66033900aab8b0', part: "prev", type: "button", class: "bs-pagination__control", "aria-label": this.previousLabel, disabled: this.currentPage <= 1, onClick: () => this.goToPage(this.currentPage - 1) }, h("bs-ripple", { key: '4186e24d5b783b39361c1fc3afbee75e762acbac', part: "ripple", centered: true }), h(ChevronLeftIcon, { key: '78390e8caa95e368afc32c46d762e02172e6915e' }))), pageList.map((item, index) => item === 'ellipsis' ? (h("li", { part: "item", class: "bs-pagination__item", key: `ellipsis-${index}` }, h("span", { part: "ellipsis", class: "bs-pagination__ellipsis", "aria-hidden": "true" }, h(EllipsisIcon, null)))) : (h("li", { part: "item", class: "bs-pagination__item", key: item }, h("button", { part: item === this.currentPage ? 'page current' : 'page', type: "button", class: `bs-pagination__control bs-pagination__page ${item === this.currentPage ? 'bs-pagination__page--current' : ''}`, "aria-label": `${this.pageLabel} ${item}`, "aria-current": item === this.currentPage ? 'page' : undefined, onClick: () => this.goToPage(item) }, h("bs-ripple", { part: "ripple", centered: true }), item)))), h("li", { key: '9323263102672c32d82dff25b58858128f8dee52', part: "item", class: "bs-pagination__item" }, h("button", { key: '6cdffee730ece68573a887fa6a498afec2c6ad00', part: "next", type: "button", class: "bs-pagination__control", "aria-label": this.nextLabel, disabled: this.currentPage >= this.safeTotalPages, onClick: () => this.goToPage(this.currentPage + 1) }, h("bs-ripple", { key: '7f32878954accdfba2a3a44389b4a686b09ae95d', part: "ripple", centered: true }), h(ChevronRightIcon, { key: '778e7c931627aafbe460f156130902be945bdcbc' }))))));
96
96
  }
97
97
  static get is() { return "bs-pagination"; }
98
98
  static get encapsulation() { return "shadow"; }
@@ -228,7 +228,7 @@ export class BsPopover {
228
228
  }
229
229
  };
230
230
  render() {
231
- return (h("div", { key: 'a3da61665e619ba9d2f26692a17e7ab97e3c611a', class: "bs-popover" }, h("div", { key: '66f7eb97ee176b76da0f60879cbfb4b885a55989', part: "trigger", class: "bs-popover__trigger", onClick: this.onTriggerClick, onKeyDown: this.onTriggerKeyDown }, h("slot", { key: 'd39f84fd9473da623666d6d37847064160f9d06a', name: "trigger", ref: el => (this.triggerSlot = el), onSlotchange: this.syncTriggerAria })), h("div", { key: 'efdaf551223223bb8249a63d2cde6cdb23343495', part: "popup", id: this.popupId, class: "bs-popover__popup", tabindex: "-1", hidden: !this.open && !this.closing, ref: el => (this.popupEl = el) }, h("slot", { key: '7e9557a3caebaedf33c0fd3bb56225192a8e918c' }))));
231
+ return (h("div", { key: 'ce6f02434397af383d01cf626f5fa90959a848a7', class: "bs-popover" }, h("div", { key: '6ae450e861221506fb3d585c78c5b9374c34b186', part: "trigger", class: "bs-popover__trigger", onClick: this.onTriggerClick, onKeyDown: this.onTriggerKeyDown }, h("slot", { key: 'e7c496e62d278a8a08a369b424e908e20afe0a73', name: "trigger", ref: el => (this.triggerSlot = el), onSlotchange: this.syncTriggerAria })), h("div", { key: 'f0ac77bd675a740524c071d91801a1a7ae6211c0', part: "popup", id: this.popupId, class: "bs-popover__popup", tabindex: "-1", hidden: !this.open && !this.closing, ref: el => (this.popupEl = el) }, h("slot", { key: 'c76842cf3f034d1985ec4dcff1217e60b2107220' }))));
232
232
  }
233
233
  static get is() { return "bs-popover"; }
234
234
  static get encapsulation() { return "shadow"; }
@@ -89,7 +89,7 @@ export class BsPresence {
89
89
  }
90
90
  render() {
91
91
  const preset = PRESETS.includes(this.preset) ? this.preset : 'fade';
92
- return (h(Host, { key: 'f96345233704eec650210f1c8eeadb04973a9dc6', inert: this.active ? undefined : true, "aria-hidden": this.active ? null : 'true' }, h("div", { key: '2a4e0edb4156e57c74f8fa45ff21458428602dcb', part: "content", class: `bs-presence bs-presence--${preset}${this.active ? '' : ' bs-presence--closed'}`, ref: el => (this.shell = el) }, h("div", { key: '64986252539745f6609fc677376c4d128dcd89e8', class: "bs-presence__clip", ref: el => (this.clip = el) }, h("slot", { key: '92e5ddf2147dbde7146a4642de8e44f8e38d373b' })))));
92
+ return (h(Host, { key: '1df0759e9d2134565616f08ad97bd79b2f0cfcd3', inert: this.active ? undefined : true, "aria-hidden": this.active ? null : 'true' }, h("div", { key: 'f3938c98f3db377b696d6d290583684a17b44d52', part: "content", class: `bs-presence bs-presence--${preset}${this.active ? '' : ' bs-presence--closed'}`, ref: el => (this.shell = el) }, h("div", { key: 'aed0115b7dc4e0dcf6d7ff6b4413a8cb09c7c3ff', class: "bs-presence__clip", ref: el => (this.clip = el) }, h("slot", { key: '82b3089138460f818a1d18561a77c67d155c9ca4' })))));
93
93
  }
94
94
  static get is() { return "bs-presence"; }
95
95
  static get encapsulation() { return "shadow"; }
@@ -69,7 +69,7 @@ export class BsProgress {
69
69
  const isDeterminate = this.type === 'determinate';
70
70
  const value = this.clampedValue;
71
71
  const dashOffset = circumference * (1 - value / 100);
72
- return (h("div", { key: '26f361ccddc2265363c058cfa4ddc85a6707643d', part: "container", class: "bs-progress" }, h("div", { key: 'cdf756b2152c95d42dbd44a4ac2c296e0579ca68', class: "bs-progress__box", style: { width: `${diameter}px`, height: `${diameter}px` }, role: "progressbar", "aria-label": this.ariaLabel, "aria-valuemin": isDeterminate ? '0' : undefined, "aria-valuemax": isDeterminate ? '100' : undefined, "aria-valuenow": isDeterminate ? String(value) : undefined, "aria-busy": isDeterminate ? undefined : 'true' }, isDeterminate ? (h("svg", { class: "bs-progress__ring", width: diameter, height: diameter, viewBox: `0 0 ${diameter} ${diameter}` }, h("circle", { part: "track", class: "bs-progress__track", cx: diameter / 2, cy: diameter / 2, r: radius, "stroke-width": this.strokeWidth, fill: "none" }), h("circle", { part: "arc", class: "bs-progress__arc", cx: diameter / 2, cy: diameter / 2, r: radius, "stroke-width": this.strokeWidth, fill: "none", "stroke-linecap": "round", "stroke-dasharray": circumference, "stroke-dashoffset": dashOffset }))) : (
72
+ return (h("div", { key: '65b3c545f862919e2106e405fc2f77f1b2fd8db1', part: "container", class: "bs-progress" }, h("div", { key: '9cb0c0c8396a3eb9f06a446172449363af1ff68c', class: "bs-progress__box", style: { width: `${diameter}px`, height: `${diameter}px` }, role: "progressbar", "aria-label": this.ariaLabel, "aria-valuemin": isDeterminate ? '0' : undefined, "aria-valuemax": isDeterminate ? '100' : undefined, "aria-valuenow": isDeterminate ? String(value) : undefined, "aria-busy": isDeterminate ? undefined : 'true' }, isDeterminate ? (h("svg", { class: "bs-progress__ring", width: diameter, height: diameter, viewBox: `0 0 ${diameter} ${diameter}` }, h("circle", { part: "track", class: "bs-progress__track", cx: diameter / 2, cy: diameter / 2, r: radius, "stroke-width": this.strokeWidth, fill: "none" }), h("circle", { part: "arc", class: "bs-progress__arc", cx: diameter / 2, cy: diameter / 2, r: radius, "stroke-width": this.strokeWidth, fill: "none", "stroke-linecap": "round", "stroke-dasharray": circumference, "stroke-dashoffset": dashOffset }))) : (
73
73
  // Figma's indeterminate ring is a fading "comet tail" (transparent -> solid color),
74
74
  // not a flat-colored partial arc -- SVG has no angular/conic gradient primitive, so a
75
75
  // CSS conic-gradient (color varying by angle) + a radial-gradient mask (carving the
@@ -78,7 +78,7 @@ export class BsProgress {
78
78
  h("div", { part: "arc", class: "bs-progress__spinner", style: {
79
79
  '--bs-progress-spinner-stroke-width': `${this.strokeWidth}px`,
80
80
  '--bs-progress-spinner-sweep': `${INDETERMINATE_SWEEP_DEGREES}deg`,
81
- } }))), isDeterminate && this.showLabel && (h("span", { key: '3880f17dd4c3b9fe71e10ed5da5e0f6ee33b72e2', part: "label", class: `bs-progress__label bs-progress__label--${this.size}` }, value, "%"))));
81
+ } }))), isDeterminate && this.showLabel && (h("span", { key: '085949315490ac6febaf59defdb6815d5d7c909a', part: "label", class: `bs-progress__label bs-progress__label--${this.size}` }, value, "%"))));
82
82
  }
83
83
  static get is() { return "bs-progress"; }
84
84
  static get encapsulation() { return "shadow"; }