@brandsync/wc 1.19.0 → 1.20.1

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 (883) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/REFERENCE.md +266 -11
  3. package/custom-elements.json +11415 -6969
  4. package/dist/brandsync-wc/brandsync-wc.css +1 -1
  5. package/dist/brandsync-wc/brandsync-wc.esm.js +1 -1
  6. package/dist/brandsync-wc/index.esm.js +1 -1
  7. package/dist/brandsync-wc/p-040d4755.entry.js +1 -0
  8. package/dist/brandsync-wc/{p-a688a7ca.entry.js → p-08a5e178.entry.js} +1 -1
  9. package/dist/brandsync-wc/{p-a50c5e68.entry.js → p-08d08dc9.entry.js} +1 -1
  10. package/dist/brandsync-wc/{p-568de1b0.entry.js → p-0ebb60a8.entry.js} +1 -1
  11. package/dist/brandsync-wc/{p-10b8937f.entry.js → p-11fefb5a.entry.js} +1 -1
  12. package/dist/brandsync-wc/{p-313ec145.entry.js → p-13d98ec3.entry.js} +1 -1
  13. package/dist/brandsync-wc/p-14719554.entry.js +1 -0
  14. package/dist/brandsync-wc/{p-42fcf134.entry.js → p-18cfec13.entry.js} +1 -1
  15. package/dist/brandsync-wc/{p-9751a12d.entry.js → p-1a549f9a.entry.js} +1 -1
  16. package/dist/brandsync-wc/{p-a28ef52e.entry.js → p-1bf8a54a.entry.js} +1 -1
  17. package/dist/brandsync-wc/{p-5371b31c.entry.js → p-1ce4395a.entry.js} +1 -1
  18. package/dist/brandsync-wc/{p-de0dfd1c.entry.js → p-1daf48b1.entry.js} +1 -1
  19. package/dist/brandsync-wc/{p-86f04e9e.entry.js → p-20dd8b76.entry.js} +1 -1
  20. package/dist/brandsync-wc/{p-391504ab.entry.js → p-2210c680.entry.js} +1 -1
  21. package/dist/brandsync-wc/{p-f10b19a8.entry.js → p-23367a4d.entry.js} +1 -1
  22. package/dist/brandsync-wc/{p-02314404.entry.js → p-238be384.entry.js} +1 -1
  23. package/dist/brandsync-wc/p-23affb5d.entry.js +1 -0
  24. package/dist/brandsync-wc/p-23b3958e.entry.js +1 -0
  25. package/dist/brandsync-wc/{p-03ad83a3.entry.js → p-2621b1b2.entry.js} +1 -1
  26. package/dist/brandsync-wc/p-28723df1.entry.js +1 -0
  27. package/dist/brandsync-wc/{p-d484e976.entry.js → p-28a34097.entry.js} +1 -1
  28. package/dist/brandsync-wc/{p-129a4de7.entry.js → p-2a96ce61.entry.js} +1 -1
  29. package/dist/brandsync-wc/{p-7160a72e.entry.js → p-2f58b161.entry.js} +1 -1
  30. package/dist/brandsync-wc/p-319b7baa.entry.js +1 -0
  31. package/dist/brandsync-wc/{p-8a606b38.entry.js → p-32004fb3.entry.js} +1 -1
  32. package/dist/brandsync-wc/{p-78c94cfe.entry.js → p-32157c7a.entry.js} +1 -1
  33. package/dist/brandsync-wc/{p-ab99b8c3.entry.js → p-32d83763.entry.js} +1 -1
  34. package/dist/brandsync-wc/{p-8b21f623.entry.js → p-338b5e39.entry.js} +1 -1
  35. package/dist/brandsync-wc/p-39c50762.entry.js +1 -0
  36. package/dist/brandsync-wc/p-3f6be3f7.entry.js +1 -0
  37. package/dist/brandsync-wc/p-409cf56b.entry.js +1 -0
  38. package/dist/brandsync-wc/{p-8e107d7a.entry.js → p-452f6c13.entry.js} +1 -1
  39. package/dist/brandsync-wc/{p-527fd08d.entry.js → p-47fc5f29.entry.js} +1 -1
  40. package/dist/brandsync-wc/p-4810bcc8.entry.js +1 -0
  41. package/dist/brandsync-wc/p-484a6546.entry.js +1 -0
  42. package/dist/brandsync-wc/p-4ae7b8b9.entry.js +1 -0
  43. package/dist/brandsync-wc/p-4d6f2fec.entry.js +1 -0
  44. package/dist/brandsync-wc/{p-4ffcf41a.entry.js → p-4f19e8d8.entry.js} +1 -1
  45. package/dist/brandsync-wc/p-50a154b8.entry.js +1 -0
  46. package/dist/brandsync-wc/{p-26e0ab15.entry.js → p-50ac6889.entry.js} +1 -1
  47. package/dist/brandsync-wc/p-520b277a.entry.js +1 -0
  48. package/dist/brandsync-wc/p-53b1c545.entry.js +1 -0
  49. package/dist/brandsync-wc/{p-90d8d45f.entry.js → p-548b96f7.entry.js} +1 -1
  50. package/dist/brandsync-wc/{p-144b6ac8.entry.js → p-57ed5ac6.entry.js} +1 -1
  51. package/dist/brandsync-wc/{p-028d3244.entry.js → p-587be2c6.entry.js} +1 -1
  52. package/dist/brandsync-wc/p-5a35d573.entry.js +1 -0
  53. package/dist/brandsync-wc/p-5b48a6c7.entry.js +1 -0
  54. package/dist/brandsync-wc/{p-4d1ee16e.entry.js → p-5ea899c4.entry.js} +1 -1
  55. package/dist/brandsync-wc/p-60636c6c.entry.js +1 -0
  56. package/dist/brandsync-wc/p-6096900b.entry.js +1 -0
  57. package/dist/brandsync-wc/{p-fc76031e.entry.js → p-630d41ab.entry.js} +1 -1
  58. package/dist/brandsync-wc/p-66f1ca2e.entry.js +1 -0
  59. package/dist/brandsync-wc/p-69489f45.entry.js +1 -0
  60. package/dist/brandsync-wc/p-6adc9c4f.entry.js +1 -0
  61. package/dist/brandsync-wc/p-6ae75ed0.entry.js +1 -0
  62. package/dist/brandsync-wc/p-6b1ba5ec.entry.js +1 -0
  63. package/dist/brandsync-wc/p-6bdd9ef9.entry.js +1 -0
  64. package/dist/brandsync-wc/{p-dc2ea372.entry.js → p-6db03e96.entry.js} +1 -1
  65. package/dist/brandsync-wc/{p-64e19200.entry.js → p-70924681.entry.js} +1 -1
  66. package/dist/brandsync-wc/{p-590deea0.entry.js → p-78e4dd14.entry.js} +1 -1
  67. package/dist/brandsync-wc/{p-f96f45ae.entry.js → p-806bb471.entry.js} +1 -1
  68. package/dist/brandsync-wc/{p-8a18864a.entry.js → p-89dbb3c8.entry.js} +1 -1
  69. package/dist/brandsync-wc/{p-ebcd105d.entry.js → p-8a4d64fd.entry.js} +1 -1
  70. package/dist/brandsync-wc/p-8c83cc99.entry.js +1 -0
  71. package/dist/brandsync-wc/p-8ccd1735.entry.js +1 -0
  72. package/dist/brandsync-wc/p-8d674f11.entry.js +1 -0
  73. package/dist/brandsync-wc/{p-8d1ad4b0.entry.js → p-90442341.entry.js} +1 -1
  74. package/dist/brandsync-wc/{p-a2bfbf02.entry.js → p-9e93b482.entry.js} +1 -1
  75. package/dist/brandsync-wc/{p-020cb767.entry.js → p-9f852c8b.entry.js} +1 -1
  76. package/dist/brandsync-wc/p-Vo0zbGRB.js +1 -0
  77. package/dist/brandsync-wc/p-a1d34ff3.entry.js +1 -0
  78. package/dist/brandsync-wc/{p-15c6f0f3.entry.js → p-a3c7b4e7.entry.js} +1 -1
  79. package/dist/brandsync-wc/{p-9ba500f1.entry.js → p-a6cbb6c6.entry.js} +1 -1
  80. package/dist/brandsync-wc/{p-70a5897b.entry.js → p-a86560e6.entry.js} +1 -1
  81. package/dist/brandsync-wc/p-aa70e80c.entry.js +1 -0
  82. package/dist/brandsync-wc/p-aa99b1f8.entry.js +1 -0
  83. package/dist/brandsync-wc/{p-0dff9822.entry.js → p-b0f4cbca.entry.js} +1 -1
  84. package/dist/brandsync-wc/{p-3c6980b9.entry.js → p-b1663378.entry.js} +1 -1
  85. package/dist/brandsync-wc/{p-25914efc.entry.js → p-b1b14615.entry.js} +1 -1
  86. package/dist/brandsync-wc/p-b6dc9234.entry.js +1 -0
  87. package/dist/brandsync-wc/{p-2389f473.entry.js → p-b7545d9b.entry.js} +1 -1
  88. package/dist/brandsync-wc/{p-d80eecf4.entry.js → p-baca1abf.entry.js} +1 -1
  89. package/dist/brandsync-wc/{p-a92c0f06.entry.js → p-bfdd135b.entry.js} +1 -1
  90. package/dist/brandsync-wc/p-c0e5db3d.entry.js +1 -0
  91. package/dist/brandsync-wc/{p-89fa7567.entry.js → p-c23e274a.entry.js} +1 -1
  92. package/dist/brandsync-wc/{p-4928c4ad.entry.js → p-c39e6be9.entry.js} +1 -1
  93. package/dist/brandsync-wc/{p-30736034.entry.js → p-c6c15b9f.entry.js} +1 -1
  94. package/dist/brandsync-wc/p-ca8a1e51.entry.js +1 -0
  95. package/dist/brandsync-wc/{p-9fa7bd83.entry.js → p-d263deec.entry.js} +1 -1
  96. package/dist/brandsync-wc/p-d555984e.entry.js +1 -0
  97. package/dist/brandsync-wc/p-d6600c7c.entry.js +1 -0
  98. package/dist/brandsync-wc/{p-e5235e76.entry.js → p-d67840f5.entry.js} +1 -1
  99. package/dist/brandsync-wc/p-d8a299a9.entry.js +1 -0
  100. package/dist/brandsync-wc/{p-8ac86d16.entry.js → p-dc59a735.entry.js} +1 -1
  101. package/dist/brandsync-wc/{p-f4796801.entry.js → p-dd3499ab.entry.js} +1 -1
  102. package/dist/brandsync-wc/p-debc308d.entry.js +1 -0
  103. package/dist/brandsync-wc/{p-c01e231e.entry.js → p-e18cb639.entry.js} +1 -1
  104. package/dist/brandsync-wc/{p-7bff3aa5.entry.js → p-e18e45bc.entry.js} +1 -1
  105. package/dist/brandsync-wc/{p-4c51da66.entry.js → p-e2268c96.entry.js} +1 -1
  106. package/dist/brandsync-wc/p-e4033ebc.entry.js +1 -0
  107. package/dist/brandsync-wc/p-e8027825.entry.js +1 -0
  108. package/dist/brandsync-wc/{p-7c741b8d.entry.js → p-eb1b1497.entry.js} +1 -1
  109. package/dist/brandsync-wc/{p-9868ee72.entry.js → p-eb4ad606.entry.js} +1 -1
  110. package/dist/brandsync-wc/p-ecb1a27d.entry.js +1 -0
  111. package/dist/brandsync-wc/p-f229f59a.entry.js +1 -0
  112. package/dist/brandsync-wc/{p-0819add7.entry.js → p-f22d2db8.entry.js} +1 -1
  113. package/dist/brandsync-wc/{p-feb46fa6.entry.js → p-f71d7582.entry.js} +1 -1
  114. package/dist/brandsync-wc/p-fa894893.entry.js +1 -0
  115. package/dist/brandsync-wc/p-fbd204b6.entry.js +1 -0
  116. package/dist/brandsync-wc/{p-21e5d4d6.entry.js → p-fc7df528.entry.js} +1 -1
  117. package/dist/brandsync-wc/{p-27663faf.entry.js → p-fe6f71da.entry.js} +1 -1
  118. package/dist/brandsync-wc/p-ff85a9d8.entry.js +1 -0
  119. package/dist/brandsync-wc/p-wz7B473u.js +3 -0
  120. package/dist/cjs/brandsync-wc.cjs.js +2 -2
  121. package/dist/cjs/bs-accordion-group.cjs.entry.js +2 -2
  122. package/dist/cjs/bs-accordion.cjs.entry.js +2 -2
  123. package/dist/cjs/bs-ai-disclaimer.cjs.entry.js +2 -2
  124. package/dist/cjs/bs-ai-greeting.cjs.entry.js +2 -2
  125. package/dist/cjs/bs-ai-thinking.cjs.entry.js +2 -2
  126. package/dist/cjs/bs-app-recent-item_3.cjs.entry.js +5 -5
  127. package/dist/cjs/bs-app-shell.cjs.entry.js +2 -2
  128. package/dist/cjs/bs-app-switcher.cjs.entry.js +1 -1
  129. package/dist/cjs/bs-attachment-list.cjs.entry.js +2 -2
  130. package/dist/cjs/bs-attachment.cjs.entry.js +2 -2
  131. package/dist/cjs/bs-avatar.cjs.entry.js +3 -10
  132. package/dist/cjs/bs-badge.cjs.entry.js +2 -2
  133. package/dist/cjs/bs-breadcrumb-overflow.cjs.entry.js +1 -1
  134. package/dist/cjs/bs-breadcrumb.cjs.entry.js +3 -3
  135. package/dist/cjs/bs-breadcrumbs.cjs.entry.js +10 -2
  136. package/dist/cjs/bs-button-skeleton.cjs.entry.js +2 -2
  137. package/dist/cjs/bs-button_2.cjs.entry.js +17 -4
  138. package/dist/cjs/bs-card.cjs.entry.js +44 -3
  139. package/dist/cjs/bs-carousel.cjs.entry.js +2 -2
  140. package/dist/cjs/bs-chatbot-feedback.cjs.entry.js +3 -7
  141. package/dist/cjs/bs-chatbot-header.cjs.entry.js +3 -7
  142. package/dist/cjs/bs-chatbot-response-action.cjs.entry.js +2 -2
  143. package/dist/cjs/bs-chatbot-sources-drawer.cjs.entry.js +2 -2
  144. package/dist/cjs/bs-chatbot-suggestion-button.cjs.entry.js +3 -3
  145. package/dist/cjs/bs-checkbox-group.cjs.entry.js +80 -0
  146. package/dist/cjs/bs-checkbox-skeleton.cjs.entry.js +2 -2
  147. package/dist/cjs/bs-checkbox.cjs.entry.js +1 -1
  148. package/dist/cjs/bs-chip-filter.cjs.entry.js +2 -2
  149. package/dist/cjs/bs-chip-informative.cjs.entry.js +2 -2
  150. package/dist/cjs/bs-chip-input.cjs.entry.js +2 -2
  151. package/dist/cjs/bs-citation-preview.cjs.entry.js +2 -2
  152. package/dist/cjs/bs-code-block.cjs.entry.js +75 -0
  153. package/dist/cjs/bs-command-palette.cjs.entry.js +2 -2
  154. package/dist/cjs/bs-compact-menu-block_2.cjs.entry.js +5 -5
  155. package/dist/cjs/bs-company-switcher.cjs.entry.js +3 -3
  156. package/dist/cjs/bs-composer-status-banner.cjs.entry.js +2 -2
  157. package/dist/cjs/bs-composer.cjs.entry.js +6 -4
  158. package/dist/cjs/bs-container.cjs.entry.js +2 -2
  159. package/dist/cjs/bs-cookie-consent.cjs.entry.js +1 -1
  160. package/dist/cjs/bs-data-table.cjs.entry.js +8 -5
  161. package/dist/cjs/bs-datepicker.cjs.entry.js +2 -2
  162. package/dist/cjs/bs-description-item.cjs.entry.js +23 -0
  163. package/dist/cjs/bs-description-list.cjs.entry.js +40 -0
  164. package/dist/cjs/bs-dialog.cjs.entry.js +1 -1
  165. package/dist/cjs/bs-divider.cjs.entry.js +2 -2
  166. package/dist/cjs/bs-dropdown.cjs.entry.js +96 -0
  167. package/dist/cjs/bs-empty-state.cjs.entry.js +7 -3
  168. package/dist/cjs/bs-error-page.cjs.entry.js +2 -2
  169. package/dist/cjs/bs-file-upload-item.cjs.entry.js +2 -2
  170. package/dist/cjs/bs-file-upload.cjs.entry.js +2 -2
  171. package/dist/cjs/bs-global-search.cjs.entry.js +3 -3
  172. package/dist/cjs/bs-grid.cjs.entry.js +3 -3
  173. package/dist/cjs/bs-heading.cjs.entry.js +28 -0
  174. package/dist/cjs/bs-icon-button.cjs.entry.js +10 -3
  175. package/dist/cjs/bs-icon-tile.cjs.entry.js +3 -3
  176. package/dist/cjs/bs-icon.cjs.entry.js +35 -0
  177. package/dist/cjs/bs-inline-tab.cjs.entry.js +3 -3
  178. package/dist/cjs/bs-input_4.cjs.entry.js +794 -0
  179. package/dist/cjs/bs-key-caps.cjs.entry.js +2 -2
  180. package/dist/cjs/bs-key.cjs.entry.js +2 -2
  181. package/dist/cjs/bs-keyboard-shortcuts.cjs.entry.js +3 -3
  182. package/dist/cjs/bs-link.cjs.entry.js +52 -0
  183. package/dist/cjs/bs-list-item.cjs.entry.js +68 -0
  184. package/dist/cjs/bs-list.cjs.entry.js +9 -3
  185. package/dist/cjs/bs-logo.cjs.entry.js +1 -1
  186. package/dist/cjs/bs-mega-menu.cjs.entry.js +2 -2
  187. package/dist/cjs/bs-message-list.cjs.entry.js +2 -2
  188. package/dist/cjs/bs-message.cjs.entry.js +2 -2
  189. package/dist/cjs/bs-navigation-drawer-item.cjs.entry.js +26 -5
  190. package/dist/cjs/bs-navigation-drawer.cjs.entry.js +4 -4
  191. package/dist/cjs/bs-navigation-header.cjs.entry.js +4 -4
  192. package/dist/cjs/bs-onboarding-checklist.cjs.entry.js +1 -1
  193. package/dist/cjs/bs-page-header.cjs.entry.js +2 -2
  194. package/dist/cjs/bs-pagination.cjs.entry.js +2 -2
  195. package/dist/cjs/bs-popover.cjs.entry.js +223 -0
  196. package/dist/cjs/bs-presence.cjs.entry.js +2 -2
  197. package/dist/cjs/bs-product-tour.cjs.entry.js +1 -1
  198. package/dist/cjs/bs-progress-linear.cjs.entry.js +4 -4
  199. package/dist/cjs/bs-progress.cjs.entry.js +3 -3
  200. package/dist/cjs/bs-qr-code.cjs.entry.js +2 -2
  201. package/dist/cjs/bs-radio-group.cjs.entry.js +90 -0
  202. package/dist/cjs/bs-radio.cjs.entry.js +6 -2
  203. package/dist/cjs/bs-search-item.cjs.entry.js +2 -2
  204. package/dist/cjs/bs-select.cjs.entry.js +234 -0
  205. package/dist/cjs/bs-session-timeout.cjs.entry.js +2 -2
  206. package/dist/cjs/bs-shortcut-row.cjs.entry.js +2 -2
  207. package/dist/cjs/bs-side-panel.cjs.entry.js +1 -1
  208. package/dist/cjs/bs-skip-link.cjs.entry.js +52 -0
  209. package/dist/cjs/bs-slider.cjs.entry.js +3 -3
  210. package/dist/cjs/bs-snackbar.cjs.entry.js +3 -3
  211. package/dist/cjs/bs-source-link.cjs.entry.js +4 -4
  212. package/dist/cjs/bs-split-pane.cjs.entry.js +2 -2
  213. package/dist/cjs/bs-stack.cjs.entry.js +2 -2
  214. package/dist/cjs/bs-stat.cjs.entry.js +53 -0
  215. package/dist/cjs/bs-stepper-step.cjs.entry.js +2 -2
  216. package/dist/cjs/bs-stepper.cjs.entry.js +2 -2
  217. package/dist/cjs/bs-switch.cjs.entry.js +2 -2
  218. package/dist/cjs/bs-tab_3.cjs.entry.js +16 -9
  219. package/dist/cjs/bs-table-of-contents.cjs.entry.js +171 -0
  220. package/dist/cjs/bs-tag.cjs.entry.js +51 -0
  221. package/dist/cjs/bs-text.cjs.entry.js +24 -0
  222. package/dist/cjs/bs-timepicker.cjs.entry.js +3 -3
  223. package/dist/cjs/bs-toast.cjs.entry.js +2 -2
  224. package/dist/cjs/bs-toggle-button-group.cjs.entry.js +108 -0
  225. package/dist/cjs/bs-toggle-button.cjs.entry.js +57 -0
  226. package/dist/cjs/bs-toolbar.cjs.entry.js +195 -0
  227. package/dist/cjs/bs-tooltip-trigger.cjs.entry.js +2 -2
  228. package/dist/cjs/bs-tooltip.cjs.entry.js +2 -2
  229. package/dist/cjs/bs-tree-item.cjs.entry.js +3 -3
  230. package/dist/cjs/bs-tree.cjs.entry.js +2 -2
  231. package/dist/cjs/bs-whats-new.cjs.entry.js +1 -1
  232. package/dist/cjs/icon-registry-DWYCqjKw.js +64 -0
  233. package/dist/cjs/{index-BYfMRtlW.js → index-BFxk-bY6.js} +1 -1
  234. package/dist/cjs/index.cjs.js +4 -0
  235. package/dist/cjs/loader.cjs.js +2 -2
  236. package/dist/collection/collection-manifest.json +19 -1
  237. package/dist/collection/components/bs-a11y.cmp.test.js +9 -0
  238. package/dist/collection/components/bs-accordion/bs-accordion.js +1 -1
  239. package/dist/collection/components/bs-accordion-group/bs-accordion-group.js +1 -1
  240. package/dist/collection/components/bs-ai-disclaimer/bs-ai-disclaimer.js +1 -1
  241. package/dist/collection/components/bs-ai-greeting/bs-ai-greeting.js +1 -1
  242. package/dist/collection/components/bs-ai-thinking/bs-ai-thinking.js +1 -1
  243. package/dist/collection/components/bs-app-recent-item/bs-app-recent-item.js +3 -3
  244. package/dist/collection/components/bs-app-shell/bs-app-shell.js +1 -1
  245. package/dist/collection/components/bs-attachment/bs-attachment.cmp.test.js +10 -0
  246. package/dist/collection/components/bs-attachment/bs-attachment.css +6 -6
  247. package/dist/collection/components/bs-attachment-list/bs-attachment-list.js +1 -1
  248. package/dist/collection/components/bs-avatar/bs-avatar.cmp.test.js +11 -1
  249. package/dist/collection/components/bs-avatar/bs-avatar.css +9 -4
  250. package/dist/collection/components/bs-avatar/bs-avatar.js +1 -8
  251. package/dist/collection/components/bs-badge/bs-badge.css +4 -1
  252. package/dist/collection/components/bs-breadcrumb/bs-breadcrumb/bs-breadcrumb.cmp.test.js +13 -0
  253. package/dist/collection/components/bs-breadcrumb/bs-breadcrumb/bs-breadcrumb.css +8 -0
  254. package/dist/collection/components/bs-breadcrumb/bs-breadcrumb/bs-breadcrumb.js +1 -1
  255. package/dist/collection/components/bs-breadcrumb/bs-breadcrumbs/bs-breadcrumbs.js +26 -1
  256. package/dist/collection/components/bs-button/bs-button/bs-button.cmp.test.js +31 -2
  257. package/dist/collection/components/bs-button/bs-button/bs-button.css +16 -18
  258. package/dist/collection/components/bs-button/bs-button/bs-button.js +102 -7
  259. package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.cmp.test.js +43 -0
  260. package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.css +32 -2
  261. package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.js +68 -1
  262. package/dist/collection/components/bs-button-skeleton/bs-button-skeleton.js +1 -1
  263. package/dist/collection/components/bs-card/bs-card.cmp.test.js +78 -0
  264. package/dist/collection/components/bs-card/bs-card.css +75 -0
  265. package/dist/collection/components/bs-card/bs-card.js +200 -1
  266. package/dist/collection/components/bs-card/bs-card.stories.js +32 -0
  267. package/dist/collection/components/bs-carousel/bs-carousel.js +2 -2
  268. package/dist/collection/components/bs-carousel/bs-carousel.stories.js +9 -5
  269. package/dist/collection/components/bs-chatbot-feedback/bs-chatbot-feedback.cmp.test.js +8 -0
  270. package/dist/collection/components/bs-chatbot-feedback/bs-chatbot-feedback.css +11 -8
  271. package/dist/collection/components/bs-chatbot-feedback/bs-chatbot-feedback.js +1 -5
  272. package/dist/collection/components/bs-chatbot-header/bs-chatbot-header.css +2 -3
  273. package/dist/collection/components/bs-chatbot-header/bs-chatbot-header.js +1 -5
  274. package/dist/collection/components/bs-chatbot-response-action/bs-chatbot-response-action.js +1 -1
  275. package/dist/collection/components/bs-chatbot-sources-drawer/bs-chatbot-sources-drawer.js +1 -1
  276. package/dist/collection/components/bs-chatbot-suggestion-button/bs-chatbot-suggestion-button.cmp.test.js +18 -0
  277. package/dist/collection/components/bs-chatbot-suggestion-button/bs-chatbot-suggestion-button.css +8 -2
  278. package/dist/collection/components/bs-chatbot-suggestion-button/bs-chatbot-suggestion-button.js +4 -1
  279. package/dist/collection/components/bs-checkbox/bs-checkbox-skeleton/bs-checkbox-skeleton.js +1 -1
  280. package/dist/collection/components/bs-checkbox-group/bs-checkbox-group.cmp.test.js +58 -0
  281. package/dist/collection/components/bs-checkbox-group/bs-checkbox-group.css +65 -0
  282. package/dist/collection/components/bs-checkbox-group/bs-checkbox-group.js +254 -0
  283. package/dist/collection/components/bs-checkbox-group/bs-checkbox-group.stories.js +34 -0
  284. package/dist/collection/components/bs-chip/bs-chip-filter/bs-chip-filter.js +1 -1
  285. package/dist/collection/components/bs-chip/bs-chip-informative/bs-chip-informative.js +1 -1
  286. package/dist/collection/components/bs-chip/bs-chip-input/bs-chip-input.js +1 -1
  287. package/dist/collection/components/bs-citation-preview/bs-citation-preview.js +1 -1
  288. package/dist/collection/components/bs-code-block/bs-code-block.cmp.test.js +78 -0
  289. package/dist/collection/components/bs-code-block/bs-code-block.css +132 -0
  290. package/dist/collection/components/bs-code-block/bs-code-block.js +317 -0
  291. package/dist/collection/components/bs-code-block/bs-code-block.stories.js +56 -0
  292. package/dist/collection/components/bs-command-palette/bs-command-palette.js +1 -1
  293. package/dist/collection/components/bs-compact-menu-block/bs-compact-menu-block.js +1 -1
  294. package/dist/collection/components/bs-company-switcher/bs-company-switcher.cmp.test.js +13 -7
  295. package/dist/collection/components/bs-company-switcher/bs-company-switcher.js +2 -2
  296. package/dist/collection/components/bs-composer/bs-composer.cmp.test.js +29 -0
  297. package/dist/collection/components/bs-composer/bs-composer.css +2 -1
  298. package/dist/collection/components/bs-composer/bs-composer.js +4 -2
  299. package/dist/collection/components/bs-composer/bs-composer.stories.js +1 -2
  300. package/dist/collection/components/bs-composer-status-banner/bs-composer-status-banner.js +1 -1
  301. package/dist/collection/components/bs-container/bs-container.js +1 -1
  302. package/dist/collection/components/bs-cookie-consent/bs-cookie-consent.cmp.test.js +1 -1
  303. package/dist/collection/components/bs-data-table/bs-data-table.cmp.test.js +39 -0
  304. package/dist/collection/components/bs-data-table/bs-data-table.css +12 -0
  305. package/dist/collection/components/bs-data-table/bs-data-table.js +34 -3
  306. package/dist/collection/components/bs-data-table/bs-data-table.stories.js +1 -1
  307. package/dist/collection/components/bs-datepicker/bs-datepicker.js +1 -1
  308. package/dist/collection/components/bs-description-item/bs-description-item.cmp.test.js +14 -0
  309. package/dist/collection/components/bs-description-item/bs-description-item.css +47 -0
  310. package/dist/collection/components/bs-description-item/bs-description-item.js +111 -0
  311. package/dist/collection/components/bs-description-list/bs-description-list.cmp.test.js +58 -0
  312. package/dist/collection/components/bs-description-list/bs-description-list.css +15 -0
  313. package/dist/collection/components/bs-description-list/bs-description-list.js +127 -0
  314. package/dist/collection/components/bs-description-list/bs-description-list.stories.js +34 -0
  315. package/dist/collection/components/bs-divider/bs-divider.js +1 -1
  316. package/dist/collection/components/bs-dropdown/bs-dropdown.cmp.test.js +133 -0
  317. package/dist/collection/components/bs-dropdown/bs-dropdown.css +3 -0
  318. package/dist/collection/components/bs-dropdown/bs-dropdown.js +218 -0
  319. package/dist/collection/components/bs-dropdown/bs-dropdown.stories.js +42 -0
  320. package/dist/collection/components/bs-empty-state/bs-empty-state.cmp.test.js +15 -0
  321. package/dist/collection/components/bs-empty-state/bs-empty-state.css +30 -1
  322. package/dist/collection/components/bs-empty-state/bs-empty-state.js +29 -1
  323. package/dist/collection/components/bs-empty-state/bs-empty-state.stories.js +24 -1
  324. package/dist/collection/components/bs-error-page/bs-error-page.js +1 -1
  325. package/dist/collection/components/bs-file-upload/bs-file-upload.js +1 -1
  326. package/dist/collection/components/bs-file-upload-item/bs-file-upload-item.js +1 -1
  327. package/dist/collection/components/bs-global-search/bs-global-search.js +2 -2
  328. package/dist/collection/components/bs-grid/bs-grid.js +2 -2
  329. package/dist/collection/components/bs-heading/bs-heading.cmp.test.js +38 -0
  330. package/dist/collection/components/bs-heading/bs-heading.css +42 -0
  331. package/dist/collection/components/bs-heading/bs-heading.js +154 -0
  332. package/dist/collection/components/bs-heading/bs-heading.stories.js +28 -0
  333. package/dist/collection/components/bs-icon/bs-icon.cmp.test.js +78 -0
  334. package/dist/collection/components/bs-icon/bs-icon.css +47 -0
  335. package/dist/collection/components/bs-icon/bs-icon.js +155 -0
  336. package/dist/collection/components/bs-icon/bs-icon.stories.js +52 -0
  337. package/dist/collection/components/bs-icon/icon-registry.js +58 -0
  338. package/dist/collection/components/bs-icon-tile/bs-icon-tile.js +2 -2
  339. package/dist/collection/components/bs-input/bs-input.cmp.test.js +431 -45
  340. package/dist/collection/components/bs-input/bs-input.css +196 -12
  341. package/dist/collection/components/bs-input/bs-input.js +565 -46
  342. package/dist/collection/components/bs-input/bs-input.stories.js +32 -4
  343. package/dist/collection/components/bs-key/bs-key.js +1 -1
  344. package/dist/collection/components/bs-key-caps/bs-key-caps.js +1 -1
  345. package/dist/collection/components/bs-keyboard-shortcuts/bs-keyboard-shortcuts.js +2 -2
  346. package/dist/collection/components/bs-link/bs-link.cmp.test.js +52 -0
  347. package/dist/collection/components/bs-link/bs-link.css +129 -0
  348. package/dist/collection/components/bs-link/bs-link.js +257 -0
  349. package/dist/collection/components/bs-link/bs-link.stories.js +31 -0
  350. package/dist/collection/components/bs-list/bs-list.cmp.test.js +23 -0
  351. package/dist/collection/components/bs-list/bs-list.js +32 -2
  352. package/dist/collection/components/bs-list/bs-list.stories.js +35 -2
  353. package/dist/collection/components/bs-list-item/bs-list-item.css +8 -0
  354. package/dist/collection/components/bs-list-item/bs-list-item.js +24 -1
  355. package/dist/collection/components/bs-mega-menu/bs-mega-menu.js +1 -1
  356. package/dist/collection/components/bs-menu/bs-menu.js +1 -1
  357. package/dist/collection/components/bs-menu-block/bs-menu-block.js +3 -3
  358. package/dist/collection/components/bs-menu-item/bs-menu-item.js +1 -1
  359. package/dist/collection/components/bs-menu-item/bs-menu-item.stories.js +19 -15
  360. package/dist/collection/components/bs-message/bs-message.js +1 -1
  361. package/dist/collection/components/bs-message-list/bs-message-list.js +1 -1
  362. package/dist/collection/components/bs-page-header/bs-page-header.js +1 -1
  363. package/dist/collection/components/bs-pagination/bs-pagination.js +1 -1
  364. package/dist/collection/components/bs-popover/bs-popover.cmp.test.js +11 -4
  365. package/dist/collection/components/bs-popover/bs-popover.js +26 -2
  366. package/dist/collection/components/bs-presence/bs-presence.js +1 -1
  367. package/dist/collection/components/bs-progress/bs-progress.js +2 -2
  368. package/dist/collection/components/bs-progress-linear/bs-progress-linear.css +4 -1
  369. package/dist/collection/components/bs-progress-linear/bs-progress-linear.js +2 -2
  370. package/dist/collection/components/bs-qr-code/bs-qr-code.js +1 -1
  371. package/dist/collection/components/bs-radio/bs-radio.cmp.test.js +8 -0
  372. package/dist/collection/components/bs-radio/bs-radio.js +25 -1
  373. package/dist/collection/components/bs-radio-group/bs-radio-group.cmp.test.js +85 -0
  374. package/dist/collection/components/bs-radio-group/bs-radio-group.css +59 -0
  375. package/dist/collection/components/bs-radio-group/bs-radio-group.js +309 -0
  376. package/dist/collection/components/bs-radio-group/bs-radio-group.stories.js +35 -0
  377. package/dist/collection/components/bs-ripple/bs-ripple.js +1 -1
  378. package/dist/collection/components/bs-search-item/bs-search-item.js +1 -1
  379. package/dist/collection/components/bs-select/bs-select.cmp.test.js +108 -0
  380. package/dist/collection/components/bs-select/bs-select.css +231 -0
  381. package/dist/collection/components/bs-select/bs-select.js +506 -0
  382. package/dist/collection/components/bs-select/bs-select.stories.js +58 -0
  383. package/dist/collection/components/bs-session-timeout/bs-session-timeout.js +1 -1
  384. package/dist/collection/components/bs-shortcut-row/bs-shortcut-row.js +1 -1
  385. package/dist/collection/components/bs-skeleton/bs-skeleton.js +1 -1
  386. package/dist/collection/components/bs-skip-link/bs-skip-link.cmp.test.js +60 -0
  387. package/dist/collection/components/bs-skip-link/bs-skip-link.css +58 -0
  388. package/dist/collection/components/bs-skip-link/bs-skip-link.js +123 -0
  389. package/dist/collection/components/bs-skip-link/bs-skip-link.stories.js +27 -0
  390. package/dist/collection/components/bs-slider/bs-slider.cmp.test.js +13 -0
  391. package/dist/collection/components/bs-slider/bs-slider.css +3 -2
  392. package/dist/collection/components/bs-slider/bs-slider.js +1 -1
  393. package/dist/collection/components/bs-snackbar/bs-snackbar.cmp.test.js +22 -0
  394. package/dist/collection/components/bs-snackbar/bs-snackbar.css +23 -0
  395. package/dist/collection/components/bs-snackbar/bs-snackbar.js +1 -1
  396. package/dist/collection/components/bs-source-link/bs-source-link.js +3 -3
  397. package/dist/collection/components/bs-spinner/bs-spinner.js +1 -1
  398. package/dist/collection/components/bs-split-pane/bs-split-pane.js +1 -1
  399. package/dist/collection/components/bs-stack/bs-stack.js +1 -1
  400. package/dist/collection/components/bs-stat/bs-stat.cmp.test.js +49 -0
  401. package/dist/collection/components/bs-stat/bs-stat.css +116 -0
  402. package/dist/collection/components/bs-stat/bs-stat.js +284 -0
  403. package/dist/collection/components/bs-stat/bs-stat.stories.js +44 -0
  404. package/dist/collection/components/bs-stepper/bs-stepper/bs-stepper.js +1 -1
  405. package/dist/collection/components/bs-stepper/bs-stepper-step/bs-stepper-step.js +1 -1
  406. package/dist/collection/components/bs-switch/bs-switch.js +1 -1
  407. package/dist/collection/components/bs-tab/bs-inline-tab/bs-inline-tab.css +2 -2
  408. package/dist/collection/components/bs-tab/bs-inline-tab/bs-inline-tab.js +1 -1
  409. package/dist/collection/components/bs-tab/bs-inline-tab/bs-inline-tab.stories.js +0 -4
  410. package/dist/collection/components/bs-tab/bs-tab/bs-tab.js +1 -1
  411. package/dist/collection/components/bs-tab/bs-tab/bs-tab.stories.js +7 -7
  412. package/dist/collection/components/bs-tab/bs-tabs/bs-tabs.cmp.test.js +35 -0
  413. package/dist/collection/components/bs-tab/bs-tabs/bs-tabs.css +6 -2
  414. package/dist/collection/components/bs-tab/bs-tabs/bs-tabs.js +13 -6
  415. package/dist/collection/components/bs-table-of-contents/bs-table-of-contents.cmp.test.js +125 -0
  416. package/dist/collection/components/bs-table-of-contents/bs-table-of-contents.css +115 -0
  417. package/dist/collection/components/bs-table-of-contents/bs-table-of-contents.js +392 -0
  418. package/dist/collection/components/bs-table-of-contents/bs-table-of-contents.stories.js +58 -0
  419. package/dist/collection/components/bs-tag/bs-tag.cmp.test.js +66 -0
  420. package/dist/collection/components/bs-tag/bs-tag.css +101 -0
  421. package/dist/collection/components/bs-tag/bs-tag.js +233 -0
  422. package/dist/collection/components/bs-tag/bs-tag.stories.js +59 -0
  423. package/dist/collection/components/bs-text/bs-text.cmp.test.js +33 -0
  424. package/dist/collection/components/bs-text/bs-text.css +48 -0
  425. package/dist/collection/components/bs-text/bs-text.js +126 -0
  426. package/dist/collection/components/bs-text/bs-text.stories.js +25 -0
  427. package/dist/collection/components/bs-timepicker/bs-timepicker.js +2 -2
  428. package/dist/collection/components/bs-toast/bs-toast.js +1 -1
  429. package/dist/collection/components/bs-toggle-button/bs-toggle-button.cmp.test.js +47 -0
  430. package/dist/collection/components/bs-toggle-button/bs-toggle-button.css +125 -0
  431. package/dist/collection/components/bs-toggle-button/bs-toggle-button.js +234 -0
  432. package/dist/collection/components/bs-toggle-button/bs-toggle-button.stories.js +22 -0
  433. package/dist/collection/components/bs-toggle-button-group/bs-toggle-button-group.cmp.test.js +69 -0
  434. package/dist/collection/components/bs-toggle-button-group/bs-toggle-button-group.css +43 -0
  435. package/dist/collection/components/bs-toggle-button-group/bs-toggle-button-group.js +264 -0
  436. package/dist/collection/components/bs-toggle-button-group/bs-toggle-button-group.stories.js +42 -0
  437. package/dist/collection/components/bs-toolbar/bs-toolbar.cmp.test.js +144 -0
  438. package/dist/collection/components/bs-toolbar/bs-toolbar.css +82 -0
  439. package/dist/collection/components/bs-toolbar/bs-toolbar.js +345 -0
  440. package/dist/collection/components/bs-toolbar/bs-toolbar.stories.js +49 -0
  441. package/dist/collection/components/bs-tooltip/bs-tooltip.js +1 -1
  442. package/dist/collection/components/bs-tooltip-trigger/bs-tooltip-trigger.js +1 -1
  443. package/dist/collection/components/bs-tree/bs-tree.js +1 -1
  444. package/dist/collection/components/bs-tree-item/bs-tree-item.js +2 -2
  445. package/dist/collection/components/bs-tree-item/bs-tree-item.stories.js +6 -4
  446. package/dist/collection/components/bs-whats-new-entry/bs-whats-new-entry.js +1 -1
  447. package/dist/collection/components/disabled-aria.cmp.test.js +19 -0
  448. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.cmp.test.js +25 -0
  449. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.css +2 -2
  450. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.js +2 -2
  451. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer-item/bs-navigation-drawer-item.cmp.test.js +58 -0
  452. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer-item/bs-navigation-drawer-item.css +10 -2
  453. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer-item/bs-navigation-drawer-item.js +63 -4
  454. package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.cmp.test.js +42 -9
  455. package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.css +44 -37
  456. package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.js +2 -2
  457. package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.stories.js +22 -0
  458. package/dist/collection/index.js +1 -0
  459. package/dist/collection/test/helpers/block-link-navigation.js +13 -0
  460. package/dist/collection/test/helpers/contrast.js +57 -0
  461. package/dist/components/bs-accordion-group.js +1 -1
  462. package/dist/components/bs-accordion.js +1 -1
  463. package/dist/components/bs-ai-disclaimer.js +1 -1
  464. package/dist/components/bs-ai-greeting.js +1 -1
  465. package/dist/components/bs-ai-thinking.js +1 -1
  466. package/dist/components/bs-app-recent-item.js +1 -1
  467. package/dist/components/bs-app-shell.js +1 -1
  468. package/dist/components/bs-app-switcher.js +1 -1
  469. package/dist/components/bs-app-tile.js +1 -1
  470. package/dist/components/bs-attachment-list.js +1 -1
  471. package/dist/components/bs-attachment.js +1 -1
  472. package/dist/components/bs-avatar.js +1 -1
  473. package/dist/components/bs-badge.js +1 -1
  474. package/dist/components/bs-breadcrumb-overflow.js +1 -1
  475. package/dist/components/bs-breadcrumb.js +1 -1
  476. package/dist/components/bs-breadcrumbs.js +1 -1
  477. package/dist/components/bs-button-skeleton.js +1 -1
  478. package/dist/components/bs-button.js +1 -1
  479. package/dist/components/bs-card.js +1 -1
  480. package/dist/components/bs-carousel.js +1 -1
  481. package/dist/components/bs-chatbot-feedback.js +1 -1
  482. package/dist/components/bs-chatbot-header.js +1 -1
  483. package/dist/components/bs-chatbot-response-action.js +1 -1
  484. package/dist/components/bs-chatbot-sources-drawer.js +1 -1
  485. package/dist/components/bs-chatbot-suggestion-button.js +1 -1
  486. package/dist/components/bs-checkbox-group.d.ts +11 -0
  487. package/dist/components/bs-checkbox-group.js +1 -0
  488. package/dist/components/bs-checkbox-skeleton.js +1 -1
  489. package/dist/components/bs-checkbox.js +1 -1
  490. package/dist/components/bs-chip-filter.js +1 -1
  491. package/dist/components/bs-chip-informative.js +1 -1
  492. package/dist/components/bs-chip-input.js +1 -1
  493. package/dist/components/bs-citation-preview.js +1 -1
  494. package/dist/components/bs-code-block.d.ts +11 -0
  495. package/dist/components/bs-code-block.js +1 -0
  496. package/dist/components/bs-command-palette.js +1 -1
  497. package/dist/components/bs-compact-menu-block.js +1 -1
  498. package/dist/components/bs-company-switcher.js +1 -1
  499. package/dist/components/bs-composer-status-banner.js +1 -1
  500. package/dist/components/bs-composer.js +1 -1
  501. package/dist/components/bs-container.js +1 -1
  502. package/dist/components/bs-cookie-consent.js +1 -1
  503. package/dist/components/bs-data-table.js +1 -1
  504. package/dist/components/bs-datepicker.js +1 -1
  505. package/dist/components/bs-description-item.d.ts +11 -0
  506. package/dist/components/bs-description-item.js +1 -0
  507. package/dist/components/bs-description-list.d.ts +11 -0
  508. package/dist/components/bs-description-list.js +1 -0
  509. package/dist/components/bs-dialog.js +1 -1
  510. package/dist/components/bs-divider.js +1 -1
  511. package/dist/components/bs-dropdown.d.ts +11 -0
  512. package/dist/components/bs-dropdown.js +1 -0
  513. package/dist/components/bs-empty-state.js +1 -1
  514. package/dist/components/bs-error-page.js +1 -1
  515. package/dist/components/bs-file-upload-item.js +1 -1
  516. package/dist/components/bs-file-upload.js +1 -1
  517. package/dist/components/bs-global-search.js +1 -1
  518. package/dist/components/bs-grid.js +1 -1
  519. package/dist/components/bs-heading.d.ts +11 -0
  520. package/dist/components/bs-heading.js +1 -0
  521. package/dist/components/bs-icon-button.js +1 -1
  522. package/dist/components/bs-icon-tile.js +1 -1
  523. package/dist/components/bs-icon.d.ts +11 -0
  524. package/dist/components/bs-icon.js +1 -0
  525. package/dist/components/bs-inline-tab.js +1 -1
  526. package/dist/components/bs-input.js +1 -1
  527. package/dist/components/bs-key-caps.js +1 -1
  528. package/dist/components/bs-key.js +1 -1
  529. package/dist/components/bs-keyboard-shortcuts.js +1 -1
  530. package/dist/components/bs-link.d.ts +11 -0
  531. package/dist/components/bs-link.js +1 -0
  532. package/dist/components/bs-list-item.js +1 -1
  533. package/dist/components/bs-list.js +1 -1
  534. package/dist/components/bs-logo.js +1 -1
  535. package/dist/components/bs-mega-menu.js +1 -1
  536. package/dist/components/bs-menu-block.js +1 -1
  537. package/dist/components/bs-menu-item.js +1 -1
  538. package/dist/components/bs-menu.js +1 -1
  539. package/dist/components/bs-message-list.js +1 -1
  540. package/dist/components/bs-message.js +1 -1
  541. package/dist/components/bs-navigation-drawer-item.js +1 -1
  542. package/dist/components/bs-navigation-drawer.js +1 -1
  543. package/dist/components/bs-navigation-header.js +1 -1
  544. package/dist/components/bs-onboarding-checklist.js +1 -1
  545. package/dist/components/bs-page-header.js +1 -1
  546. package/dist/components/bs-pagination.js +1 -1
  547. package/dist/components/bs-popover.js +1 -1
  548. package/dist/components/bs-presence.js +1 -1
  549. package/dist/components/bs-product-tour.js +1 -1
  550. package/dist/components/bs-progress-linear.js +1 -1
  551. package/dist/components/bs-progress.js +1 -1
  552. package/dist/components/bs-qr-code.js +1 -1
  553. package/dist/components/bs-radio-group.d.ts +11 -0
  554. package/dist/components/bs-radio-group.js +1 -0
  555. package/dist/components/bs-radio.js +1 -1
  556. package/dist/components/bs-ripple.js +1 -1
  557. package/dist/components/bs-search-item.js +1 -1
  558. package/dist/components/bs-select.d.ts +11 -0
  559. package/dist/components/bs-select.js +1 -0
  560. package/dist/components/bs-session-timeout.js +1 -1
  561. package/dist/components/bs-shortcut-row.js +1 -1
  562. package/dist/components/bs-side-panel.js +1 -1
  563. package/dist/components/bs-skeleton.js +1 -1
  564. package/dist/components/bs-skip-link.d.ts +11 -0
  565. package/dist/components/bs-skip-link.js +1 -0
  566. package/dist/components/bs-slider.js +1 -1
  567. package/dist/components/bs-snackbar.js +1 -1
  568. package/dist/components/bs-source-link.js +1 -1
  569. package/dist/components/bs-spinner.js +1 -1
  570. package/dist/components/bs-split-pane.js +1 -1
  571. package/dist/components/bs-stack.js +1 -1
  572. package/dist/components/bs-stat.d.ts +11 -0
  573. package/dist/components/bs-stat.js +1 -0
  574. package/dist/components/bs-stepper-step.js +1 -1
  575. package/dist/components/bs-stepper.js +1 -1
  576. package/dist/components/bs-switch.js +1 -1
  577. package/dist/components/bs-tab.js +1 -1
  578. package/dist/components/bs-table-of-contents.d.ts +11 -0
  579. package/dist/components/bs-table-of-contents.js +1 -0
  580. package/dist/components/bs-tabs.js +1 -1
  581. package/dist/components/bs-tag.d.ts +11 -0
  582. package/dist/components/bs-tag.js +1 -0
  583. package/dist/components/bs-text.d.ts +11 -0
  584. package/dist/components/bs-text.js +1 -0
  585. package/dist/components/bs-timepicker.js +1 -1
  586. package/dist/components/bs-toast.js +1 -1
  587. package/dist/components/bs-toggle-button-group.d.ts +11 -0
  588. package/dist/components/bs-toggle-button-group.js +1 -0
  589. package/dist/components/bs-toggle-button.d.ts +11 -0
  590. package/dist/components/bs-toggle-button.js +1 -0
  591. package/dist/components/bs-toolbar.d.ts +11 -0
  592. package/dist/components/bs-toolbar.js +1 -0
  593. package/dist/components/bs-tooltip-trigger.js +1 -1
  594. package/dist/components/bs-tooltip.js +1 -1
  595. package/dist/components/bs-tree-item.js +1 -1
  596. package/dist/components/bs-tree.js +1 -1
  597. package/dist/components/bs-whats-new-entry.js +1 -1
  598. package/dist/components/bs-whats-new.js +1 -1
  599. package/dist/components/index.js +1 -1
  600. package/dist/components/p-B5yjDh8h.js +1 -0
  601. package/dist/components/p-B81aicKA.js +1 -0
  602. package/dist/components/{p-CFR3Q0io.js → p-BB1HiIxJ.js} +1 -1
  603. package/dist/components/p-BLJL4BVY.js +1 -0
  604. package/dist/components/{p-D5eN9Lfa.js → p-BR7C-aKy.js} +1 -1
  605. package/dist/components/{p-D3PuUD8Z.js → p-Ba8J2kHD.js} +1 -1
  606. package/dist/components/{p-DF2FcJPs.js → p-C3YETziz.js} +1 -1
  607. package/dist/components/p-CALH_mHQ.js +1 -0
  608. package/dist/components/{p-DcD5eV_Z.js → p-CKTbatgt.js} +1 -1
  609. package/dist/components/{p-lPTgyF9v.js → p-CL99S8-7.js} +1 -1
  610. package/dist/components/{p-Dj393s3S.js → p-CZfbB-t_.js} +1 -1
  611. package/dist/components/p-CcAX4o5o.js +1 -0
  612. package/dist/components/{p-6Rr9bjVN.js → p-Cso2DKAz.js} +1 -1
  613. package/dist/components/{p-CVQycAap.js → p-CxNNy2m6.js} +1 -1
  614. package/dist/components/{p-CHZE_FrW.js → p-Cz38kNDe.js} +1 -1
  615. package/dist/components/{p-Y5FyLR8G.js → p-D4W5LcEW.js} +1 -1
  616. package/dist/components/{p--Tyv3LIl.js → p-DARbgzSz.js} +1 -1
  617. package/dist/components/p-DHZ_DStJ.js +1 -0
  618. package/dist/components/{p-BQ4rSQDm.js → p-DK1uv2fu.js} +1 -1
  619. package/dist/components/{p-DLnZG_G9.js → p-DL9HtG41.js} +1 -1
  620. package/dist/components/{p-Cr8cHmpM.js → p-DLNoxNuW.js} +1 -1
  621. package/dist/components/{p-4yShCgRb.js → p-DMp5CvEJ.js} +1 -1
  622. package/dist/components/p-DO4sVZCh.js +1 -0
  623. package/dist/components/{p-DDgzEg1C.js → p-DOW-YekD.js} +1 -1
  624. package/dist/components/p-DUV80kt-.js +1 -0
  625. package/dist/components/{p-BTPdjnXT.js → p-DVqoLSEW.js} +1 -1
  626. package/dist/components/{p-DtkTnaOp.js → p-DaKBSL2O.js} +1 -1
  627. package/dist/components/{p-ZfE38vXZ.js → p-Dlp2c-Ii.js} +1 -1
  628. package/dist/components/{p-XZXdZpt4.js → p-DnagAPBF.js} +1 -1
  629. package/dist/components/p-Dt3b6VYT.js +1 -0
  630. package/dist/components/{p-BWRkbt0f.js → p-KiyJJwzr.js} +1 -1
  631. package/dist/components/p-Vo0zbGRB.js +1 -0
  632. package/dist/components/p-_zxYDrzi.js +1 -0
  633. package/dist/components/p-abyVFrPp.js +1 -0
  634. package/dist/components/p-mxDA3wKn.js +1 -0
  635. package/dist/components/p-wd9-vGpQ.js +1 -0
  636. package/dist/components/p-wscU7FUD.js +1 -0
  637. package/dist/esm/brandsync-wc.js +3 -3
  638. package/dist/esm/bs-accordion-group.entry.js +2 -2
  639. package/dist/esm/bs-accordion.entry.js +2 -2
  640. package/dist/esm/bs-ai-disclaimer.entry.js +2 -2
  641. package/dist/esm/bs-ai-greeting.entry.js +2 -2
  642. package/dist/esm/bs-ai-thinking.entry.js +2 -2
  643. package/dist/esm/bs-app-recent-item_3.entry.js +5 -5
  644. package/dist/esm/bs-app-shell.entry.js +2 -2
  645. package/dist/esm/bs-app-switcher.entry.js +1 -1
  646. package/dist/esm/bs-attachment-list.entry.js +2 -2
  647. package/dist/esm/bs-attachment.entry.js +2 -2
  648. package/dist/esm/bs-avatar.entry.js +3 -10
  649. package/dist/esm/bs-badge.entry.js +2 -2
  650. package/dist/esm/bs-breadcrumb-overflow.entry.js +1 -1
  651. package/dist/esm/bs-breadcrumb.entry.js +3 -3
  652. package/dist/esm/bs-breadcrumbs.entry.js +10 -2
  653. package/dist/esm/bs-button-skeleton.entry.js +2 -2
  654. package/dist/esm/bs-button_2.entry.js +17 -4
  655. package/dist/esm/bs-card.entry.js +44 -3
  656. package/dist/esm/bs-carousel.entry.js +2 -2
  657. package/dist/esm/bs-chatbot-feedback.entry.js +3 -7
  658. package/dist/esm/bs-chatbot-header.entry.js +3 -7
  659. package/dist/esm/bs-chatbot-response-action.entry.js +2 -2
  660. package/dist/esm/bs-chatbot-sources-drawer.entry.js +2 -2
  661. package/dist/esm/bs-chatbot-suggestion-button.entry.js +3 -3
  662. package/dist/esm/bs-checkbox-group.entry.js +78 -0
  663. package/dist/esm/bs-checkbox-skeleton.entry.js +2 -2
  664. package/dist/esm/bs-checkbox.entry.js +1 -1
  665. package/dist/esm/bs-chip-filter.entry.js +2 -2
  666. package/dist/esm/bs-chip-informative.entry.js +2 -2
  667. package/dist/esm/bs-chip-input.entry.js +2 -2
  668. package/dist/esm/bs-citation-preview.entry.js +2 -2
  669. package/dist/esm/bs-code-block.entry.js +73 -0
  670. package/dist/esm/bs-command-palette.entry.js +2 -2
  671. package/dist/esm/bs-compact-menu-block_2.entry.js +5 -5
  672. package/dist/esm/bs-company-switcher.entry.js +3 -3
  673. package/dist/esm/bs-composer-status-banner.entry.js +2 -2
  674. package/dist/esm/bs-composer.entry.js +6 -4
  675. package/dist/esm/bs-container.entry.js +2 -2
  676. package/dist/esm/bs-cookie-consent.entry.js +1 -1
  677. package/dist/esm/bs-data-table.entry.js +8 -5
  678. package/dist/esm/bs-datepicker.entry.js +2 -2
  679. package/dist/esm/bs-description-item.entry.js +21 -0
  680. package/dist/esm/bs-description-list.entry.js +38 -0
  681. package/dist/esm/bs-dialog.entry.js +1 -1
  682. package/dist/esm/bs-divider.entry.js +2 -2
  683. package/dist/esm/bs-dropdown.entry.js +94 -0
  684. package/dist/esm/bs-empty-state.entry.js +7 -3
  685. package/dist/esm/bs-error-page.entry.js +2 -2
  686. package/dist/esm/bs-file-upload-item.entry.js +2 -2
  687. package/dist/esm/bs-file-upload.entry.js +2 -2
  688. package/dist/esm/bs-global-search.entry.js +3 -3
  689. package/dist/esm/bs-grid.entry.js +3 -3
  690. package/dist/esm/bs-heading.entry.js +26 -0
  691. package/dist/esm/bs-icon-button.entry.js +10 -3
  692. package/dist/esm/bs-icon-tile.entry.js +3 -3
  693. package/dist/esm/bs-icon.entry.js +33 -0
  694. package/dist/esm/bs-inline-tab.entry.js +3 -3
  695. package/dist/esm/bs-input_4.entry.js +789 -0
  696. package/dist/esm/bs-key-caps.entry.js +2 -2
  697. package/dist/esm/bs-key.entry.js +2 -2
  698. package/dist/esm/bs-keyboard-shortcuts.entry.js +3 -3
  699. package/dist/esm/bs-link.entry.js +50 -0
  700. package/dist/esm/bs-list-item.entry.js +66 -0
  701. package/dist/esm/bs-list.entry.js +9 -3
  702. package/dist/esm/bs-logo.entry.js +1 -1
  703. package/dist/esm/bs-mega-menu.entry.js +2 -2
  704. package/dist/esm/bs-message-list.entry.js +2 -2
  705. package/dist/esm/bs-message.entry.js +2 -2
  706. package/dist/esm/bs-navigation-drawer-item.entry.js +26 -5
  707. package/dist/esm/bs-navigation-drawer.entry.js +4 -4
  708. package/dist/esm/bs-navigation-header.entry.js +4 -4
  709. package/dist/esm/bs-onboarding-checklist.entry.js +1 -1
  710. package/dist/esm/bs-page-header.entry.js +2 -2
  711. package/dist/esm/bs-pagination.entry.js +2 -2
  712. package/dist/esm/bs-popover.entry.js +221 -0
  713. package/dist/esm/bs-presence.entry.js +2 -2
  714. package/dist/esm/bs-product-tour.entry.js +1 -1
  715. package/dist/esm/bs-progress-linear.entry.js +4 -4
  716. package/dist/esm/bs-progress.entry.js +3 -3
  717. package/dist/esm/bs-qr-code.entry.js +2 -2
  718. package/dist/esm/bs-radio-group.entry.js +88 -0
  719. package/dist/esm/bs-radio.entry.js +6 -2
  720. package/dist/esm/bs-search-item.entry.js +2 -2
  721. package/dist/esm/bs-select.entry.js +232 -0
  722. package/dist/esm/bs-session-timeout.entry.js +2 -2
  723. package/dist/esm/bs-shortcut-row.entry.js +2 -2
  724. package/dist/esm/bs-side-panel.entry.js +1 -1
  725. package/dist/esm/bs-skip-link.entry.js +50 -0
  726. package/dist/esm/bs-slider.entry.js +3 -3
  727. package/dist/esm/bs-snackbar.entry.js +3 -3
  728. package/dist/esm/bs-source-link.entry.js +4 -4
  729. package/dist/esm/bs-split-pane.entry.js +2 -2
  730. package/dist/esm/bs-stack.entry.js +2 -2
  731. package/dist/esm/bs-stat.entry.js +51 -0
  732. package/dist/esm/bs-stepper-step.entry.js +2 -2
  733. package/dist/esm/bs-stepper.entry.js +2 -2
  734. package/dist/esm/bs-switch.entry.js +2 -2
  735. package/dist/esm/bs-tab_3.entry.js +16 -9
  736. package/dist/esm/bs-table-of-contents.entry.js +169 -0
  737. package/dist/esm/bs-tag.entry.js +49 -0
  738. package/dist/esm/bs-text.entry.js +22 -0
  739. package/dist/esm/bs-timepicker.entry.js +3 -3
  740. package/dist/esm/bs-toast.entry.js +2 -2
  741. package/dist/esm/bs-toggle-button-group.entry.js +106 -0
  742. package/dist/esm/bs-toggle-button.entry.js +55 -0
  743. package/dist/esm/bs-toolbar.entry.js +193 -0
  744. package/dist/esm/bs-tooltip-trigger.entry.js +2 -2
  745. package/dist/esm/bs-tooltip.entry.js +2 -2
  746. package/dist/esm/bs-tree-item.entry.js +3 -3
  747. package/dist/esm/bs-tree.entry.js +2 -2
  748. package/dist/esm/bs-whats-new.entry.js +1 -1
  749. package/dist/esm/icon-registry-Vo0zbGRB.js +60 -0
  750. package/dist/esm/{index-D3SkQJpw.js → index-wz7B473u.js} +1 -1
  751. package/dist/esm/index.js +2 -0
  752. package/dist/esm/loader.js +3 -3
  753. package/dist/types/components/bs-breadcrumb/bs-breadcrumbs/bs-breadcrumbs.d.ts +9 -0
  754. package/dist/types/components/bs-button/bs-button/bs-button.d.ts +22 -6
  755. package/dist/types/components/bs-button/bs-icon-button/bs-icon-button.d.ts +7 -0
  756. package/dist/types/components/bs-card/bs-card.d.ts +35 -0
  757. package/dist/types/components/bs-card/bs-card.stories.d.ts +3 -0
  758. package/dist/types/components/bs-carousel/bs-carousel.d.ts +1 -1
  759. package/dist/types/components/bs-chatbot-suggestion-button/bs-chatbot-suggestion-button.d.ts +3 -0
  760. package/dist/types/components/bs-checkbox-group/bs-checkbox-group.cmp.test.d.ts +1 -0
  761. package/dist/types/components/bs-checkbox-group/bs-checkbox-group.d.ts +48 -0
  762. package/dist/types/components/bs-checkbox-group/bs-checkbox-group.stories.d.ts +15 -0
  763. package/dist/types/components/bs-code-block/bs-code-block.cmp.test.d.ts +1 -0
  764. package/dist/types/components/bs-code-block/bs-code-block.d.ts +68 -0
  765. package/dist/types/components/bs-code-block/bs-code-block.stories.d.ts +18 -0
  766. package/dist/types/components/bs-data-table/bs-data-table.d.ts +11 -0
  767. package/dist/types/components/bs-description-item/bs-description-item.cmp.test.d.ts +1 -0
  768. package/dist/types/components/bs-description-item/bs-description-item.d.ts +34 -0
  769. package/dist/types/components/bs-description-list/bs-description-list.cmp.test.d.ts +1 -0
  770. package/dist/types/components/bs-description-list/bs-description-list.d.ts +33 -0
  771. package/dist/types/components/bs-description-list/bs-description-list.stories.d.ts +11 -0
  772. package/dist/types/components/bs-dropdown/bs-dropdown.cmp.test.d.ts +1 -0
  773. package/dist/types/components/bs-dropdown/bs-dropdown.d.ts +51 -0
  774. package/dist/types/components/bs-dropdown/bs-dropdown.stories.d.ts +12 -0
  775. package/dist/types/components/bs-empty-state/bs-empty-state.d.ts +6 -0
  776. package/dist/types/components/bs-empty-state/bs-empty-state.stories.d.ts +3 -0
  777. package/dist/types/components/bs-heading/bs-heading.cmp.test.d.ts +1 -0
  778. package/dist/types/components/bs-heading/bs-heading.d.ts +34 -0
  779. package/dist/types/components/bs-heading/bs-heading.stories.d.ts +15 -0
  780. package/dist/types/components/bs-icon/bs-icon.cmp.test.d.ts +1 -0
  781. package/dist/types/components/bs-icon/bs-icon.d.ts +39 -0
  782. package/dist/types/components/bs-icon/bs-icon.stories.d.ts +16 -0
  783. package/dist/types/components/bs-icon/icon-registry.d.ts +16 -0
  784. package/dist/types/components/bs-input/bs-input.d.ts +83 -12
  785. package/dist/types/components/bs-input/bs-input.stories.d.ts +3 -1
  786. package/dist/types/components/bs-link/bs-link.cmp.test.d.ts +1 -0
  787. package/dist/types/components/bs-link/bs-link.d.ts +48 -0
  788. package/dist/types/components/bs-link/bs-link.stories.d.ts +19 -0
  789. package/dist/types/components/bs-list/bs-list.d.ts +6 -0
  790. package/dist/types/components/bs-list/bs-list.stories.d.ts +4 -0
  791. package/dist/types/components/bs-list-item/bs-list-item.d.ts +3 -0
  792. package/dist/types/components/bs-popover/bs-popover.d.ts +9 -1
  793. package/dist/types/components/bs-radio/bs-radio.d.ts +4 -0
  794. package/dist/types/components/bs-radio-group/bs-radio-group.cmp.test.d.ts +1 -0
  795. package/dist/types/components/bs-radio-group/bs-radio-group.d.ts +57 -0
  796. package/dist/types/components/bs-radio-group/bs-radio-group.stories.d.ts +16 -0
  797. package/dist/types/components/bs-select/bs-select.cmp.test.d.ts +1 -0
  798. package/dist/types/components/bs-select/bs-select.d.ts +85 -0
  799. package/dist/types/components/bs-select/bs-select.stories.d.ts +19 -0
  800. package/dist/types/components/bs-skip-link/bs-skip-link.cmp.test.d.ts +1 -0
  801. package/dist/types/components/bs-skip-link/bs-skip-link.d.ts +40 -0
  802. package/dist/types/components/bs-skip-link/bs-skip-link.stories.d.ts +10 -0
  803. package/dist/types/components/bs-stat/bs-stat.cmp.test.d.ts +1 -0
  804. package/dist/types/components/bs-stat/bs-stat.d.ts +56 -0
  805. package/dist/types/components/bs-stat/bs-stat.stories.d.ts +16 -0
  806. package/dist/types/components/bs-tab/bs-inline-tab/bs-inline-tab.stories.d.ts +0 -1
  807. package/dist/types/components/bs-tab/bs-tabs/bs-tabs.d.ts +5 -3
  808. package/dist/types/components/bs-table-of-contents/bs-table-of-contents.cmp.test.d.ts +1 -0
  809. package/dist/types/components/bs-table-of-contents/bs-table-of-contents.d.ts +96 -0
  810. package/dist/types/components/bs-table-of-contents/bs-table-of-contents.stories.d.ts +13 -0
  811. package/dist/types/components/bs-tag/bs-tag.cmp.test.d.ts +1 -0
  812. package/dist/types/components/bs-tag/bs-tag.d.ts +49 -0
  813. package/dist/types/components/bs-tag/bs-tag.stories.d.ts +16 -0
  814. package/dist/types/components/bs-text/bs-text.cmp.test.d.ts +1 -0
  815. package/dist/types/components/bs-text/bs-text.d.ts +31 -0
  816. package/dist/types/components/bs-text/bs-text.stories.d.ts +14 -0
  817. package/dist/types/components/bs-toggle-button/bs-toggle-button.cmp.test.d.ts +1 -0
  818. package/dist/types/components/bs-toggle-button/bs-toggle-button.d.ts +48 -0
  819. package/dist/types/components/bs-toggle-button/bs-toggle-button.stories.d.ts +13 -0
  820. package/dist/types/components/bs-toggle-button-group/bs-toggle-button-group.cmp.test.d.ts +1 -0
  821. package/dist/types/components/bs-toggle-button-group/bs-toggle-button-group.d.ts +42 -0
  822. package/dist/types/components/bs-toggle-button-group/bs-toggle-button-group.stories.d.ts +13 -0
  823. package/dist/types/components/bs-toolbar/bs-toolbar.cmp.test.d.ts +1 -0
  824. package/dist/types/components/bs-toolbar/bs-toolbar.d.ts +88 -0
  825. package/dist/types/components/bs-toolbar/bs-toolbar.stories.d.ts +13 -0
  826. package/dist/types/components/disabled-aria.cmp.test.d.ts +1 -0
  827. package/dist/types/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer-item/bs-navigation-drawer-item.d.ts +11 -1
  828. package/dist/types/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.stories.d.ts +3 -0
  829. package/dist/types/components.d.ts +3107 -88
  830. package/dist/types/index.d.ts +1 -0
  831. package/dist/types/test/helpers/block-link-navigation.d.ts +8 -0
  832. package/dist/types/test/helpers/contrast.d.ts +5 -0
  833. package/package.json +6 -1
  834. package/reference.d.ts +63 -9
  835. package/reference.json +670 -17
  836. package/dist/brandsync-wc/p-08649f52.entry.js +0 -1
  837. package/dist/brandsync-wc/p-1580c56c.entry.js +0 -1
  838. package/dist/brandsync-wc/p-171fa239.entry.js +0 -1
  839. package/dist/brandsync-wc/p-197ac73f.entry.js +0 -1
  840. package/dist/brandsync-wc/p-1e33bc10.entry.js +0 -1
  841. package/dist/brandsync-wc/p-270b2cb0.entry.js +0 -1
  842. package/dist/brandsync-wc/p-28c38959.entry.js +0 -1
  843. package/dist/brandsync-wc/p-2a8b2ac9.entry.js +0 -1
  844. package/dist/brandsync-wc/p-2a967b45.entry.js +0 -1
  845. package/dist/brandsync-wc/p-2b3d0bd4.entry.js +0 -1
  846. package/dist/brandsync-wc/p-30ff0659.entry.js +0 -1
  847. package/dist/brandsync-wc/p-3627e0c6.entry.js +0 -1
  848. package/dist/brandsync-wc/p-38a2210a.entry.js +0 -1
  849. package/dist/brandsync-wc/p-3b212a8a.entry.js +0 -1
  850. package/dist/brandsync-wc/p-4dfd4715.entry.js +0 -1
  851. package/dist/brandsync-wc/p-6afacd47.entry.js +0 -1
  852. package/dist/brandsync-wc/p-6f32a08e.entry.js +0 -1
  853. package/dist/brandsync-wc/p-776b677f.entry.js +0 -1
  854. package/dist/brandsync-wc/p-D3SkQJpw.js +0 -3
  855. package/dist/brandsync-wc/p-ab301e9d.entry.js +0 -1
  856. package/dist/brandsync-wc/p-d15e48eb.entry.js +0 -1
  857. package/dist/brandsync-wc/p-e1d30e31.entry.js +0 -1
  858. package/dist/brandsync-wc/p-e776d145.entry.js +0 -1
  859. package/dist/brandsync-wc/p-e7c80f48.entry.js +0 -1
  860. package/dist/brandsync-wc/p-eb680cff.entry.js +0 -1
  861. package/dist/brandsync-wc/p-f3b60029.entry.js +0 -1
  862. package/dist/brandsync-wc/p-f4628861.entry.js +0 -1
  863. package/dist/brandsync-wc/p-f5e6fdf8.entry.js +0 -1
  864. package/dist/brandsync-wc/p-f93127e1.entry.js +0 -1
  865. package/dist/cjs/bs-input_3.cjs.entry.js +0 -461
  866. package/dist/cjs/bs-list-item_2.cjs.entry.js +0 -261
  867. package/dist/cjs/bs-spinner.cjs.entry.js +0 -24
  868. package/dist/components/p-B2gx7SZk.js +0 -1
  869. package/dist/components/p-BHzj13sd.js +0 -1
  870. package/dist/components/p-BIxcCDgl.js +0 -1
  871. package/dist/components/p-BfCah-Ij.js +0 -1
  872. package/dist/components/p-BpkPo4ay.js +0 -1
  873. package/dist/components/p-CvSewXZF.js +0 -1
  874. package/dist/components/p-DXbcyEgd.js +0 -1
  875. package/dist/components/p-DXwatzvM.js +0 -1
  876. package/dist/components/p-DsBToIYE.js +0 -1
  877. package/dist/components/p-EGNLb4cQ.js +0 -1
  878. package/dist/components/p-Jik5UkAe.js +0 -1
  879. package/dist/components/p-syO0ipbw.js +0 -1
  880. package/dist/components/p-up01gvHY.js +0 -1
  881. package/dist/esm/bs-input_3.entry.js +0 -457
  882. package/dist/esm/bs-list-item_2.entry.js +0 -258
  883. package/dist/esm/bs-spinner.entry.js +0 -22
@@ -0,0 +1,345 @@
1
+ import { h } from "@stencil/core";
2
+ const OVERFLOW_ATTR = 'data-bs-toolbar-overflowed';
3
+ /**
4
+ * A bar of related controls (buttons, toggles, selects) with a left and a right group, grouped
5
+ * separators, a single tab stop and arrow-key navigation between the controls (WAI-ARIA toolbar
6
+ * pattern). Optionally, controls that do not fit collapse into a "more" menu.
7
+ *
8
+ * Keyboard: the toolbar is ONE tab stop. Left/Right arrows (Up/Down when `orientation="vertical"`,
9
+ * mirrored in RTL) move focus between the controls and wrap; Home/End jump to the first/last. The
10
+ * control last focused is the one Tab returns to. Disabled controls are skipped.
11
+ *
12
+ * Direct children of the `left`/`right` slots are the toolbar's controls. A slotted `bs-divider` is a
13
+ * separator: the toolbar sets its `orientation` perpendicular to its own and skips it when navigating.
14
+ *
15
+ * ## When to use
16
+ * - Several related actions that act on the same content (a text editor's formatting row, a table's
17
+ * bulk actions, a viewer's zoom controls).
18
+ *
19
+ * ## When not to use
20
+ * - Navigating between pages or sections -- use `bs-tabs`, `bs-navigation-header` or a nav.
21
+ * - A single action or a form's submit row -- place the `bs-button`s directly.
22
+ * - A menu of actions that opens on demand -- use `bs-popover` with `bs-menu`.
23
+ *
24
+ * ## Overflow
25
+ * With `overflow` set (horizontal only), controls from the end of the bar that do not fit are hidden and
26
+ * listed in a `bs-menu` behind a "more" button; choosing an entry activates the original control. An
27
+ * entry's text is the control's `data-label`, else its `aria-label`, else its text content, else `title`:
28
+ * give icon-only controls one of these.
29
+ *
30
+ * Composition: built from `bs-icon-button`, `bs-popover`, `bs-menu` and `bs-menu-item` (overflow) and
31
+ * expects `bs-button`, `bs-icon-button`, `bs-divider` etc. as slotted content.
32
+ *
33
+ * @slot left - The left (leading) group of controls.
34
+ * @slot right - The right (trailing) group of controls; pushed to the far end of the bar.
35
+ * @part container - The element carrying `role="toolbar"`.
36
+ * @part left - The wrapper around the `left` slot.
37
+ * @part right - The wrapper around the `right` slot.
38
+ * @part overflow - The overflow `bs-popover` (only rendered when `overflow` is set).
39
+ */
40
+ // Note: CSS Custom Properties (--bs-toolbar-*) are documented via @prop comments in bs-toolbar.css.
41
+ export class BsToolbar {
42
+ el;
43
+ /** Accessible name of the toolbar (`aria-label`). Required for a good experience, and essential
44
+ * when a page has more than one toolbar -- say what it controls ("Text formatting"). */
45
+ label;
46
+ /** Direction of the bar. Sets `aria-orientation`, switches which arrow keys navigate, and sets the
47
+ * orientation of slotted `bs-divider`s to the perpendicular one. */
48
+ orientation = 'horizontal';
49
+ /** Collapse controls that do not fit into a "more" menu (see Overflow in the description).
50
+ * Horizontal toolbars only; ignored when `orientation="vertical"`. */
51
+ overflow = false;
52
+ /** Accessible name and tooltip of the overflow button. */
53
+ overflowLabel = 'More actions';
54
+ overflowed = [];
55
+ activeEl;
56
+ resizeObserver;
57
+ containerEl;
58
+ triggerEl;
59
+ popoverEl;
60
+ componentDidLoad() {
61
+ this.syncItems();
62
+ this.observe();
63
+ }
64
+ disconnectedCallback() {
65
+ this.resizeObserver?.disconnect();
66
+ this.resizeObserver = undefined;
67
+ }
68
+ connectedCallback() {
69
+ // Re-attached after a disconnect (componentDidLoad only runs once).
70
+ if (this.containerEl)
71
+ this.observe();
72
+ }
73
+ onConfigChange() {
74
+ this.syncItems();
75
+ this.observe();
76
+ }
77
+ observe() {
78
+ this.resizeObserver?.disconnect();
79
+ this.resizeObserver = undefined;
80
+ if (!this.overflowActive() || typeof ResizeObserver === 'undefined' || !this.containerEl)
81
+ return;
82
+ this.resizeObserver = new ResizeObserver(() => this.syncItems());
83
+ this.resizeObserver.observe(this.containerEl);
84
+ }
85
+ overflowActive() {
86
+ return this.overflow && this.orientation === 'horizontal';
87
+ }
88
+ /** Every direct child of the two groups, in visual order (left group, then right group). */
89
+ children() {
90
+ const slots = Array.from(this.el.shadowRoot?.querySelectorAll('slot') ?? []);
91
+ return slots.flatMap(s => s.assignedElements({ flatten: true }));
92
+ }
93
+ isDivider(el) {
94
+ return el.tagName === 'BS-DIVIDER';
95
+ }
96
+ /** Controls that arrow keys can land on: not separators, not disabled, not collapsed into the menu. */
97
+ navigable() {
98
+ const items = this.children().filter(c => !this.isDivider(c) && !c.disabled && c.getAttribute('aria-disabled') !== 'true' && !c.hasAttribute(OVERFLOW_ATTR) && !c.hidden);
99
+ if (this.triggerEl && this.overflowed.length > 0)
100
+ items.push(this.triggerEl);
101
+ return items;
102
+ }
103
+ labelOf(el) {
104
+ return (el.dataset.label || el.getAttribute('aria-label') || el.textContent?.trim() || el.getAttribute('title') || '').trim();
105
+ }
106
+ /** Single pass: perpendicular dividers, overflow partitioning, roving tabindex. */
107
+ syncItems = () => {
108
+ const perpendicular = this.orientation === 'horizontal' ? 'vertical' : 'horizontal';
109
+ this.children().forEach(c => {
110
+ if (this.isDivider(c))
111
+ c.orientation = perpendicular;
112
+ });
113
+ this.updateOverflow();
114
+ this.syncRoving();
115
+ };
116
+ updateOverflow() {
117
+ const items = this.children();
118
+ items.forEach(c => c.removeAttribute(OVERFLOW_ATTR));
119
+ if (!this.overflowActive() || !this.containerEl) {
120
+ if (this.overflowed.length)
121
+ this.overflowed = [];
122
+ return;
123
+ }
124
+ const container = this.containerEl;
125
+ // Reserve room for the "more" button while measuring.
126
+ if (this.popoverEl)
127
+ this.popoverEl.hidden = false;
128
+ const collapsed = [];
129
+ for (let i = items.length - 1; i >= 0 && container.scrollWidth > container.clientWidth + 0.5; i--) {
130
+ items[i].setAttribute(OVERFLOW_ATTR, '');
131
+ if (!this.isDivider(items[i]))
132
+ collapsed.unshift(items[i]);
133
+ }
134
+ // Do not leave a separator dangling at the end of what is still visible.
135
+ for (let i = items.length - 1; i >= 0; i--) {
136
+ if (items[i].hasAttribute(OVERFLOW_ATTR))
137
+ continue;
138
+ if (this.isDivider(items[i]) && collapsed.length)
139
+ items[i].setAttribute(OVERFLOW_ATTR, '');
140
+ else
141
+ break;
142
+ }
143
+ if (this.popoverEl)
144
+ this.popoverEl.hidden = collapsed.length === 0;
145
+ const next = collapsed.map(el => ({ el, label: this.labelOf(el) }));
146
+ const same = next.length === this.overflowed.length && next.every((n, i) => n.el === this.overflowed[i].el && n.label === this.overflowed[i].label);
147
+ if (!same)
148
+ this.overflowed = next;
149
+ }
150
+ /** Roving tabindex: exactly one control is in the tab order. */
151
+ syncRoving() {
152
+ const nav = this.navigable();
153
+ const all = [...this.children().filter(c => !this.isDivider(c)), ...(this.triggerEl ? [this.triggerEl] : [])];
154
+ if (!this.activeEl || !nav.includes(this.activeEl))
155
+ this.activeEl = nav[0];
156
+ all.forEach(c => c.setAttribute('tabindex', c === this.activeEl ? '0' : '-1'));
157
+ }
158
+ componentDidRender() {
159
+ // The trigger/popover only exist after a render; re-sync tabindex for them.
160
+ this.syncRoving();
161
+ }
162
+ onFocusIn(ev) {
163
+ const path = ev.composedPath();
164
+ const hit = this.navigable().find(c => path.includes(c));
165
+ if (hit && hit !== this.activeEl) {
166
+ this.activeEl = hit;
167
+ this.syncRoving();
168
+ }
169
+ }
170
+ onKeyDown(ev) {
171
+ const vertical = this.orientation === 'vertical';
172
+ const rtl = getComputedStyle(this.el).direction === 'rtl';
173
+ const prevKey = vertical ? 'ArrowUp' : rtl ? 'ArrowRight' : 'ArrowLeft';
174
+ const nextKey = vertical ? 'ArrowDown' : rtl ? 'ArrowLeft' : 'ArrowRight';
175
+ if (![prevKey, nextKey, 'Home', 'End'].includes(ev.key))
176
+ return;
177
+ // An open overflow menu uses its own arrow keys.
178
+ if (this.popoverEl?.open)
179
+ return;
180
+ const nav = this.navigable();
181
+ const path = ev.composedPath();
182
+ const current = nav.findIndex(c => path.includes(c));
183
+ if (current === -1)
184
+ return;
185
+ // Controls that use the arrow keys themselves (text fields, selects) keep them.
186
+ const origin = path[0];
187
+ if (origin?.matches?.('input:not([type="button"]):not([type="checkbox"]):not([type="radio"]), textarea, select') && ev.key !== 'Home' && ev.key !== 'End')
188
+ return;
189
+ ev.preventDefault();
190
+ let next = current;
191
+ if (ev.key === nextKey)
192
+ next = (current + 1) % nav.length;
193
+ else if (ev.key === prevKey)
194
+ next = (current - 1 + nav.length) % nav.length;
195
+ else if (ev.key === 'Home')
196
+ next = 0;
197
+ else
198
+ next = nav.length - 1;
199
+ this.activeEl = nav[next];
200
+ this.syncRoving();
201
+ nav[next].focus();
202
+ }
203
+ activate(entry) {
204
+ if (this.popoverEl)
205
+ this.popoverEl.open = false;
206
+ const inner = entry.el.shadowRoot?.querySelector('button, a');
207
+ (inner ?? entry.el).click();
208
+ }
209
+ render() {
210
+ const showOverflow = this.overflowActive();
211
+ return (h("div", { key: '93257f14c9265acd97ba79c3f0fb194ed5d6a9c1', part: "container", role: "toolbar", "aria-label": this.label, "aria-orientation": this.orientation, class: `bs-toolbar bs-toolbar--${this.orientation}`, ref: el => (this.containerEl = el) }, h("div", { key: 'c7354cad6a03fb6f2fa844a37212612111619451', part: "left", class: "bs-toolbar__group bs-toolbar__group--left" }, h("slot", { key: 'f5c27b8a5e4402c1d2e29435b9037980cac485e7', name: "left", onSlotchange: this.syncItems })), h("div", { key: '22e411c3e07a31a5227fcc4acbb6ab86d7a26969', part: "right", class: "bs-toolbar__group bs-toolbar__group--right" }, h("slot", { key: 'c5233aab6977a57022bd98cb3f439808680997db', name: "right", onSlotchange: this.syncItems })), showOverflow && (h("bs-popover", { key: '0f2e2537a2a1ec1d5617bb149a57f4ecba5b4943', part: "overflow", class: "bs-toolbar__overflow", placement: "bottom-end", hidden: this.overflowed.length === 0, ref: el => (this.popoverEl = el) }, h("bs-icon-button", { key: '5fc3dd6a5e2022a1fb6e550fd24ac5c37eab4ba0', slot: "trigger", variant: "subtle", size: "md", ariaLabel: this.overflowLabel, title: this.overflowLabel, ref: el => (this.triggerEl = el) }, h(MoreIcon, { key: '860ac10129d78cf94554c8a21a98dd02aec17372' })), h("bs-menu", { key: '29900699fb44356d6d0e3ff2b8f2bebb3c14395f' }, this.overflowed.map(entry => (h("bs-menu-item", { onBsSelect: () => this.activate(entry) }, entry.label))))))));
212
+ }
213
+ static get is() { return "bs-toolbar"; }
214
+ static get encapsulation() { return "shadow"; }
215
+ static get originalStyleUrls() {
216
+ return {
217
+ "$": ["bs-toolbar.css"]
218
+ };
219
+ }
220
+ static get styleUrls() {
221
+ return {
222
+ "$": ["bs-toolbar.css"]
223
+ };
224
+ }
225
+ static get properties() {
226
+ return {
227
+ "label": {
228
+ "type": "string",
229
+ "mutable": false,
230
+ "complexType": {
231
+ "original": "string",
232
+ "resolved": "string",
233
+ "references": {}
234
+ },
235
+ "required": false,
236
+ "optional": true,
237
+ "docs": {
238
+ "tags": [],
239
+ "text": "Accessible name of the toolbar (`aria-label`). Required for a good experience, and essential\nwhen a page has more than one toolbar -- say what it controls (\"Text formatting\")."
240
+ },
241
+ "getter": false,
242
+ "setter": false,
243
+ "reflect": false,
244
+ "attribute": "label"
245
+ },
246
+ "orientation": {
247
+ "type": "string",
248
+ "mutable": false,
249
+ "complexType": {
250
+ "original": "BsToolbarOrientation",
251
+ "resolved": "\"horizontal\" | \"vertical\"",
252
+ "references": {
253
+ "BsToolbarOrientation": {
254
+ "location": "local",
255
+ "path": "/home/runner/work/eg-brandsync-storybook/eg-brandsync-storybook/packages/wc/src/components/bs-toolbar/bs-toolbar.tsx",
256
+ "id": "src/components/bs-toolbar/bs-toolbar.tsx::BsToolbarOrientation"
257
+ }
258
+ }
259
+ },
260
+ "required": false,
261
+ "optional": false,
262
+ "docs": {
263
+ "tags": [],
264
+ "text": "Direction of the bar. Sets `aria-orientation`, switches which arrow keys navigate, and sets the\norientation of slotted `bs-divider`s to the perpendicular one."
265
+ },
266
+ "getter": false,
267
+ "setter": false,
268
+ "reflect": true,
269
+ "attribute": "orientation",
270
+ "defaultValue": "'horizontal'"
271
+ },
272
+ "overflow": {
273
+ "type": "boolean",
274
+ "mutable": false,
275
+ "complexType": {
276
+ "original": "boolean",
277
+ "resolved": "boolean",
278
+ "references": {}
279
+ },
280
+ "required": false,
281
+ "optional": false,
282
+ "docs": {
283
+ "tags": [],
284
+ "text": "Collapse controls that do not fit into a \"more\" menu (see Overflow in the description).\nHorizontal toolbars only; ignored when `orientation=\"vertical\"`."
285
+ },
286
+ "getter": false,
287
+ "setter": false,
288
+ "reflect": true,
289
+ "attribute": "overflow",
290
+ "defaultValue": "false"
291
+ },
292
+ "overflowLabel": {
293
+ "type": "string",
294
+ "mutable": false,
295
+ "complexType": {
296
+ "original": "string",
297
+ "resolved": "string",
298
+ "references": {}
299
+ },
300
+ "required": false,
301
+ "optional": false,
302
+ "docs": {
303
+ "tags": [],
304
+ "text": "Accessible name and tooltip of the overflow button."
305
+ },
306
+ "getter": false,
307
+ "setter": false,
308
+ "reflect": false,
309
+ "attribute": "overflow-label",
310
+ "defaultValue": "'More actions'"
311
+ }
312
+ };
313
+ }
314
+ static get states() {
315
+ return {
316
+ "overflowed": {}
317
+ };
318
+ }
319
+ static get elementRef() { return "el"; }
320
+ static get watchers() {
321
+ return [{
322
+ "propName": "orientation",
323
+ "methodName": "onConfigChange"
324
+ }, {
325
+ "propName": "overflow",
326
+ "methodName": "onConfigChange"
327
+ }];
328
+ }
329
+ static get listeners() {
330
+ return [{
331
+ "name": "focusin",
332
+ "method": "onFocusIn",
333
+ "target": undefined,
334
+ "capture": false,
335
+ "passive": false
336
+ }, {
337
+ "name": "keydown",
338
+ "method": "onKeyDown",
339
+ "target": undefined,
340
+ "capture": false,
341
+ "passive": false
342
+ }];
343
+ }
344
+ }
345
+ const MoreIcon = () => (h("svg", { viewBox: "0 0 24 24", width: "24", height: "24", fill: "currentColor", "aria-hidden": "true" }, h("circle", { cx: "5", cy: "12", r: "1.75" }), h("circle", { cx: "12", cy: "12", r: "1.75" }), h("circle", { cx: "19", cy: "12", r: "1.75" })));
@@ -0,0 +1,49 @@
1
+ import { html } from "lit";
2
+ import { componentDescription, propDescription } from "../../stories-utils";
3
+ const meta = {
4
+ title: 'Components/bs-toolbar',
5
+ parameters: { docs: { description: { component: componentDescription('bs-toolbar') } } },
6
+ render: args => html `
7
+ <bs-toolbar label=${args.label} orientation=${args.orientation} ?overflow=${args.overflow} overflow-label=${args.overflowLabel}>
8
+ <bs-button slot="left" variant="subtle" size="sm">Bold</bs-button>
9
+ <bs-button slot="left" variant="subtle" size="sm">Italic</bs-button>
10
+ <bs-button slot="left" variant="subtle" size="sm">Underline</bs-button>
11
+ <bs-divider slot="left"></bs-divider>
12
+ <bs-button slot="left" variant="subtle" size="sm">Link</bs-button>
13
+ <bs-button slot="left" variant="subtle" size="sm" disabled>Image</bs-button>
14
+ <bs-button slot="right" variant="outlined" size="sm">Preview</bs-button>
15
+ <bs-button slot="right" size="sm">Publish</bs-button>
16
+ </bs-toolbar>
17
+ `,
18
+ argTypes: {
19
+ label: { control: 'text', description: propDescription('bs-toolbar', 'label') },
20
+ orientation: { control: 'select', options: ['horizontal', 'vertical'], description: propDescription('bs-toolbar', 'orientation') },
21
+ overflow: { control: 'boolean', description: propDescription('bs-toolbar', 'overflow') },
22
+ overflowLabel: { control: 'text', description: propDescription('bs-toolbar', 'overflowLabel') },
23
+ },
24
+ args: { label: 'Text formatting', orientation: 'horizontal', overflow: false, overflowLabel: 'More actions' },
25
+ };
26
+ export default meta;
27
+ export const Default = {};
28
+ export const Vertical = {
29
+ args: { orientation: 'vertical' },
30
+ };
31
+ export const WithOverflow = {
32
+ name: 'With overflow',
33
+ args: { overflow: true },
34
+ render: args => html `
35
+ <p>Resize the frame: controls that do not fit move into the "more" menu.</p>
36
+ <div style="width: 360px; resize: horizontal; overflow: hidden; border: 1px dashed var(--bs-border-default); padding: 4px;">
37
+ <bs-toolbar label=${args.label} ?overflow=${args.overflow} overflow-label=${args.overflowLabel}>
38
+ <bs-button slot="left" variant="subtle" size="sm">Bold</bs-button>
39
+ <bs-button slot="left" variant="subtle" size="sm">Italic</bs-button>
40
+ <bs-button slot="left" variant="subtle" size="sm">Underline</bs-button>
41
+ <bs-divider slot="left"></bs-divider>
42
+ <bs-button slot="left" variant="subtle" size="sm">Link</bs-button>
43
+ <bs-button slot="left" variant="subtle" size="sm">Image</bs-button>
44
+ <bs-button slot="right" variant="subtle" size="sm">Preview</bs-button>
45
+ <bs-button slot="right" variant="subtle" size="sm">Share</bs-button>
46
+ </bs-toolbar>
47
+ </div>
48
+ `,
49
+ };
@@ -42,7 +42,7 @@ export class BsTooltip {
42
42
  */
43
43
  placement = 'top';
44
44
  render() {
45
- return (h("div", { key: 'c2d5db93c82893e1fda6baab1b3d238cb18a258c', class: "bs-tooltip" }, h("span", { key: '028716108a7e548e8e5747cb36349f386d279380', part: "arrow", class: "bs-tooltip__arrow" }), h("div", { key: '09d56d5c90014d5bfe752de30fbe50f02a63343c', part: "bubble", class: "bs-tooltip__bubble" }, h("slot", { key: '473eb298bd6b402555d0b42922dbf9ee1384785e' }))));
45
+ return (h("div", { key: '7438b2bc709f2d62040070103f75a4dd0e726114', class: "bs-tooltip" }, h("span", { key: 'cd88ccd274ee0350e98ea445389fcd84ab7d02dc', part: "arrow", class: "bs-tooltip__arrow" }), h("div", { key: 'c3729dae5e62fd114a16f6ab4fa4022d85b7fc7b', part: "bubble", class: "bs-tooltip__bubble" }, h("slot", { key: '37b8b395d40fb5736780013d968be1ff5ce428fc' }))));
46
46
  }
47
47
  static get is() { return "bs-tooltip"; }
48
48
  static get encapsulation() { return "shadow"; }
@@ -107,7 +107,7 @@ export class BsTooltipTrigger {
107
107
  };
108
108
  render() {
109
109
  const show = (this.visible && !!this.text) || (this.closing && !!this.text);
110
- return (h("div", { key: '06db867226380b3fcee2542a04b9697426a0107f', part: "trigger", class: "bs-tooltip-trigger", "aria-describedby": this.tooltipId, onMouseEnter: this.show, onMouseLeave: this.hide, onFocusin: this.show, onFocusout: this.hide, onKeyDown: this.onKeyDown }, h("slot", { key: '7f86ca80968a51df576aafb577457bcbbd4c4a6a' }), h("div", { key: '6d5c5600ea220ca7b6189f05a83b93fce16584cb', part: "tooltip", id: this.tooltipId, class: "bs-tooltip-trigger__tooltip", role: "tooltip", hidden: !show, ref: el => (this.tipEl = el) }, h("bs-tooltip", { key: 'feb9d57972b2d8e7e21846b0cf39a532b0004f9b', ref: el => (this.bubbleEl = el) }, this.text))));
110
+ return (h("div", { key: '0c851c6c284a63da84ff11fd411764c705513245', part: "trigger", class: "bs-tooltip-trigger", "aria-describedby": this.tooltipId, onMouseEnter: this.show, onMouseLeave: this.hide, onFocusin: this.show, onFocusout: this.hide, onKeyDown: this.onKeyDown }, h("slot", { key: '3653d362eafdd977e8b9d250d1852195e7ba270f' }), h("div", { key: '64619b9d59eb00b3e453d6bb924ad982a7e2bec6', part: "tooltip", id: this.tooltipId, class: "bs-tooltip-trigger__tooltip", role: "tooltip", hidden: !show, ref: el => (this.tipEl = el) }, h("bs-tooltip", { key: 'a160e7016cf49323d410dc10930d6994e8f41c3f', ref: el => (this.bubbleEl = el) }, this.text))));
111
111
  }
112
112
  static get is() { return "bs-tooltip-trigger"; }
113
113
  static get encapsulation() { return "shadow"; }
@@ -189,7 +189,7 @@ export class BsTree {
189
189
  e.preventDefault();
190
190
  }
191
191
  render() {
192
- return (h("div", { key: '7d6223a9fa7bf6b434d3051a4a48e88c4006d907', part: "container", class: "bs-tree", role: "tree", "aria-label": this.ariaLabel }, h("slot", { key: '0cd83d4fe6acfda0d4c4ab789af4b2f5fc1c12d7' })));
192
+ return (h("div", { key: '019cf7e2aaefd8b3f51c40ea0570fa9b89b5e649', part: "container", class: "bs-tree", role: "tree", "aria-label": this.ariaLabel }, h("slot", { key: 'ffe3e5e88c82965542974fa1433c43310d197c66' })));
193
193
  }
194
194
  static get is() { return "bs-tree"; }
195
195
  static get encapsulation() { return "shadow"; }
@@ -93,11 +93,11 @@ export class BsTreeItem {
93
93
  const isParent = this.hasChildren;
94
94
  const managed = !!this.el.closest('bs-tree');
95
95
  const showChildren = isParent && this.expanded;
96
- return (h(Host, { key: '12205542fd8cd7558c9fb3e421c92c06d1809e40', role: "treeitem", "aria-level": String(this.level), "aria-expanded": isParent ? String(this.expanded) : null, "aria-selected": String(this.selected), "aria-disabled": this.disabled ? 'true' : null, ...(managed || this.disabled ? {} : { tabindex: '0' }) }, h("div", { key: '11d9fe5a0ed281f9ad898bf5221dd00f22e2701d', class: "bs-tree-item__row", style: { '--bs-tree-item-level': String(this.level) } }, h("div", { key: '4ffe7bf7fb24d06fdcde825b9b72370538543854', part: "container", class: {
96
+ return (h(Host, { key: '6f3c66ebc9521308d5d62c2bf99686aa9a6b81bf', role: "treeitem", "aria-level": String(this.level), "aria-expanded": isParent ? String(this.expanded) : null, "aria-selected": String(this.selected), "aria-disabled": this.disabled ? 'true' : null, ...(managed || this.disabled ? {} : { tabindex: '0' }) }, h("div", { key: '8e12e8462f1a44affa4497aea0e9a0479b803856', class: "bs-tree-item__row", style: { '--bs-tree-item-level': String(this.level) } }, h("div", { key: 'f741901613fc37b68543bdd9653fee29e4f796fc', part: "container", class: {
97
97
  'bs-tree-item__container': true,
98
98
  'bs-tree-item__container--selected': this.selected,
99
99
  'bs-tree-item__container--disabled': this.disabled,
100
- }, onClick: this.onRowClick }, !this.disabled && h("bs-ripple", { key: '3469a524f59373948dafd9b16bb7eedf1a6f1000', part: "ripple" }), isParent && (h("span", { key: 'd4365c571e5fd5388debcc09e92d4c7fc5bfbe6c', part: "caret", class: { 'bs-tree-item__caret': true, 'bs-tree-item__caret--open': this.expanded }, "aria-hidden": "true", onClick: this.onCaretClick }, h(CaretRightIcon, { key: '1f68d7131a8e9e24bdca9d42c82c1af9af8bb09d' }))), h("span", { key: 'f525e26ee5ff9a0ca603e5e96ae7156da97f0fa0', class: "bs-tree-item__content" }, this.showIcon && (h("span", { key: '81a0810e006cf932cbfc141b87673f7602f19727', part: "icon", class: "bs-tree-item__icon", "aria-hidden": "true" }, h("slot", { key: 'f51ed15e89cbaa18f0f6e70e62f050399d6b339a', name: "icon" }, isParent ? h(FolderIcon, null) : h(FileIcon, null)))), h("span", { key: '181ccdf186bc1d0138094fb689366881301c1960', part: "label", class: "bs-tree-item__label" }, h("slot", { key: 'cc449375c076dc296a1c5047d7aa0d4b27cdc592', name: "label" }, this.label))))), showChildren && (h("div", { key: '535958746bc51e1efde29862f54413b2c9e6b51d', part: "group", class: "bs-tree-item__group", role: "group" }, h("slot", { key: 'f0fc63938c90ea7ebb620db8f2abdf5eedb7f2d1' })))));
100
+ }, onClick: this.onRowClick }, !this.disabled && h("bs-ripple", { key: 'ecf50e0d6aa5301e1d20c35315472df2350c7096', part: "ripple" }), isParent && (h("span", { key: 'd74db0427a8aabf2af0ea5bd43eaefd7945e014f', part: "caret", class: { 'bs-tree-item__caret': true, 'bs-tree-item__caret--open': this.expanded }, "aria-hidden": "true", onClick: this.onCaretClick }, h(CaretRightIcon, { key: '2f4e12fe239b2527406204e0e3a7f41648dfa4d5' }))), h("span", { key: '4da3bb534d15625c414df6997b7dc7a290b66a29', class: "bs-tree-item__content" }, this.showIcon && (h("span", { key: '17031fb35aabc2e10d030c4434a4e6134d87a76a', part: "icon", class: "bs-tree-item__icon", "aria-hidden": "true" }, h("slot", { key: 'a8893678e82949127398b93cbfd0ab5e6bd83a2c', name: "icon" }, isParent ? h(FolderIcon, null) : h(FileIcon, null)))), h("span", { key: 'ff63bf09058f4e09bde9adcccdc57a0a6b9ffa37', part: "label", class: "bs-tree-item__label" }, h("slot", { key: '556b43ed85f0996034a0ca8b214cca6cc619ed26', name: "label" }, this.label))))), showChildren && (h("div", { key: 'd4d5ffa0b6b9697dd39cc89bb15a752647abb0b6', part: "group", class: "bs-tree-item__group", role: "group" }, h("slot", { key: 'eaec9a53f467af86637e040358bf75eff76dd139' })))));
101
101
  }
102
102
  static get is() { return "bs-tree-item"; }
103
103
  static get encapsulation() { return "shadow"; }
@@ -1,10 +1,12 @@
1
1
  import { html } from "lit";
2
2
  import { componentDescription } from "../../stories-utils";
3
+ // A bs-tree-item is role="treeitem", which must sit inside a role="tree" -- a bare `div` stands in for
4
+ // bs-tree here so the item is shown on its own without the tree's roving-tabindex behaviour.
3
5
  const meta = {
4
6
  title: 'Components/bs-tree-item',
5
7
  parameters: { docs: { description: { component: componentDescription('bs-tree-item') } } },
6
8
  render: args => html `
7
- <div style="width: 360px">
9
+ <div role="tree" aria-label="Example tree" style="width: 360px">
8
10
  <bs-tree-item label=${args.label} ?expanded=${args.expanded} ?selected=${args.selected} ?disabled=${args.disabled} .showIcon=${args.showIcon}>
9
11
  <bs-tree-item label="Child item"></bs-tree-item>
10
12
  </bs-tree-item>
@@ -27,12 +29,12 @@ export const Disabled = { args: { disabled: true } };
27
29
  export const WithoutIcon = { args: { showIcon: false } };
28
30
  export const Child = {
29
31
  render: () => html `
30
- <div style="width: 360px"><bs-tree-item label="Leaf item"></bs-tree-item></div>
32
+ <div role="tree" aria-label="Example tree" style="width: 360px"><bs-tree-item label="Leaf item"></bs-tree-item></div>
31
33
  `,
32
34
  };
33
35
  export const Levels = {
34
36
  render: () => html `
35
- <div style="width: 360px">
37
+ <div role="tree" aria-label="Example tree" style="width: 360px">
36
38
  <bs-tree-item label="Level 1" expanded>
37
39
  <bs-tree-item label="Level 2" expanded>
38
40
  <bs-tree-item label="Level 3"></bs-tree-item>
@@ -43,7 +45,7 @@ export const Levels = {
43
45
  };
44
46
  export const CustomIcon = {
45
47
  render: () => html `
46
- <div style="width: 360px">
48
+ <div role="tree" aria-label="Example tree" style="width: 360px">
47
49
  <bs-tree-item label="Starred">
48
50
  <svg slot="icon" viewBox="0 0 24 24" fill="none" aria-hidden="true">
49
51
  <path d="M12 3.75L14.6 9.1L20.5 9.9L16.2 14L17.3 19.9L12 17.1L6.7 19.9L7.8 14L3.5 9.9L9.4 9.1L12 3.75Z" stroke="currentColor" stroke-width="1.5" stroke-linejoin="round" />
@@ -50,7 +50,7 @@ export class BsWhatsNewEntry {
50
50
  hasImage = false;
51
51
  render() {
52
52
  const level = Math.min(6, Math.max(1, Math.trunc(Number(this.headingLevel)) || 3));
53
- return (h("div", { key: '94bd61474a16e5bb5f139017903ccd2c7a00a29e', class: "bs-whats-new-entry" }, (this.tag || this.date || this.unread) && (h("div", { key: 'f19308efc7626e97d1f3b6200cc619f1c6cfef53', part: "meta", class: "bs-whats-new-entry__meta" }, this.tag && (h("bs-chip-informative", { key: 'f296dc3fe97ec2c88e56f08a4aa599326d8ab31f', part: "tag", size: "sm", color: this.tagColor }, this.tag)), this.date && (h("span", { key: '2182add62fff635204bc82fc7244a0c9e86f402c', part: "date", class: "bs-whats-new-entry__date" }, this.date)), this.unread && (h("span", { key: 'd0d7fe472b04e36cebfce769b41b0ec0a03c1189', part: "unread", class: "bs-whats-new-entry__unread" }, h("span", { key: 'f0cecdf0217e1d37de21391aaed2ec9f8e84e2db', class: "bs-whats-new-entry__sr-only" }, this.unreadLabel))))), h("div", { key: 'a91c74c0749d4c3e8753f0ae099db3527b4708bf', part: "image", class: { 'bs-whats-new-entry__image': true, 'bs-whats-new-entry__image--visible': this.hasImage } }, h("slot", { key: '27df8b523ae98ba0ae50bd351b71d33d33fcec79', name: "image", onSlotchange: (ev) => (this.hasImage = ev.target.assignedNodes().length > 0) })), h("div", { key: '0569d8579c03f7acabc42735c7698692cc8e0f7c', class: "bs-whats-new-entry__content" }, this.heading && h(`h${level}`, { part: 'heading', class: { 'bs-whats-new-entry__heading': true } }, this.heading), this.description && (h("p", { key: 'b3044456157b53439ca1c1cb48974ec300a938de', part: "description", class: "bs-whats-new-entry__description" }, this.description)), this.actionLabel && (h("bs-button", { key: 'd57c182eb2a655c1dbff70c97f5aa98327dbb03e', part: "action", class: "bs-whats-new-entry__action", variant: "subtle", size: "sm", onClick: () => this.bsAction.emit() }, this.actionLabel, h("svg", { key: '106945e585e6b38071a0041aa9ab56b48d47a517', slot: "end-icon", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true" }, h("path", { key: 'b5a1586a5a2e2831191082d1818971d8c29a54b3', d: "M5 12H19" }), h("path", { key: '273362647cd1098d2d865c9249b3f416d924c54f', d: "M13 6L19 12L13 18" }))))), this.divider && h("div", { key: '29d89b64905a1e0bde5e43540602134fb972cc6a', part: "divider", class: "bs-whats-new-entry__divider" })));
53
+ return (h("div", { key: 'b0baa810350e1d1ba94e195e5bb71568916648c1', class: "bs-whats-new-entry" }, (this.tag || this.date || this.unread) && (h("div", { key: 'f6aceea84fa2d8093fee7bf1f12e1a33d157773a', part: "meta", class: "bs-whats-new-entry__meta" }, this.tag && (h("bs-chip-informative", { key: '5177b66addbdb1bc0a8896f14bfde2d165bdc22d', part: "tag", size: "sm", color: this.tagColor }, this.tag)), this.date && (h("span", { key: 'bd9e2492cf9b78d808676211be29283a3853a5f1', part: "date", class: "bs-whats-new-entry__date" }, this.date)), this.unread && (h("span", { key: '2a99186b9ac53f76cf8e4e148971dd96bebc3339', part: "unread", class: "bs-whats-new-entry__unread" }, h("span", { key: '777d53e3498d5b9ccc33b196ddefda132ec8966d', class: "bs-whats-new-entry__sr-only" }, this.unreadLabel))))), h("div", { key: '685ca45b3fa9677a29c6cfceb2f142bbd10aeaaa', part: "image", class: { 'bs-whats-new-entry__image': true, 'bs-whats-new-entry__image--visible': this.hasImage } }, h("slot", { key: '39cb638562151a700da6221de805d277fc38a912', name: "image", onSlotchange: (ev) => (this.hasImage = ev.target.assignedNodes().length > 0) })), h("div", { key: '6d93a6efef38d79e711772bd674812721d6c4036', class: "bs-whats-new-entry__content" }, this.heading && h(`h${level}`, { part: 'heading', class: { 'bs-whats-new-entry__heading': true } }, this.heading), this.description && (h("p", { key: '2178e908d195961d7af63f96483978a7727f2daa', part: "description", class: "bs-whats-new-entry__description" }, this.description)), this.actionLabel && (h("bs-button", { key: '1e63a9582f52578d4507b509b1cc31f85f29518f', part: "action", class: "bs-whats-new-entry__action", variant: "subtle", size: "sm", onClick: () => this.bsAction.emit() }, this.actionLabel, h("svg", { key: '5e81c66251de6ac1fadc34acfe38ba69296d1a80', slot: "end-icon", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true" }, h("path", { key: '4909c3ab738167ff9c4b43a4f3091c5ebc9708ee', d: "M5 12H19" }), h("path", { key: 'e5316c0212c03d7fb576d99e4e823cc23b820d65', d: "M13 6L19 12L13 18" }))))), this.divider && h("div", { key: '77fa0ba2722d89185b6084c50526083e5ce0ddcb', part: "divider", class: "bs-whats-new-entry__divider" })));
54
54
  }
55
55
  static get is() { return "bs-whats-new-entry"; }
56
56
  static get encapsulation() { return "shadow"; }
@@ -0,0 +1,19 @@
1
+ import { render, h, describe, it, expect } from "@stencil/vitest";
2
+ const cases = [
3
+ { name: 'bs-accordion', mount: d => h("bs-accordion", { disabled: d }, "Body"), target: r => r.shadowRoot.querySelector('[part="container"]') },
4
+ { name: 'bs-chip-informative', mount: d => h("bs-chip-informative", { disabled: d }, "Label"), target: r => r },
5
+ { name: 'bs-shortcut-row', mount: d => h("bs-shortcut-row", { action: "Save", keys: ['s'], disabled: d }), target: r => r.shadowRoot.querySelector('[part="container"]') },
6
+ { name: 'bs-search-item', mount: d => h("bs-search-item", { disabled: d }, "Result"), target: r => r.shadowRoot.querySelector('[part="container"]') },
7
+ { name: 'bs-slider', mount: d => h("bs-slider", { disabled: d, ariaLabel: "Volume" }), target: r => r.shadowRoot.querySelector('.bs-slider') },
8
+ { name: 'bs-stepper-step', mount: d => h("bs-stepper-step", { name: "Confirm", disabled: d }), target: r => r },
9
+ ];
10
+ describe('aria-disabled on disabled components', () => {
11
+ cases.forEach(({ name, mount, target }) => {
12
+ it(`${name} sets aria-disabled only while disabled`, async () => {
13
+ const off = await render(mount(false));
14
+ expect(target(off.root)?.hasAttribute('aria-disabled')).toBe(false);
15
+ const on = await render(mount(true));
16
+ expect(target(on.root)).toEqualAttribute('aria-disabled', 'true');
17
+ });
18
+ });
19
+ });
@@ -314,4 +314,29 @@ describe('bs-navigation-drawer: small-screen overlay (<= 768px)', () => {
314
314
  await new Promise(r => setTimeout(r, 350));
315
315
  await runAxeCheck(root);
316
316
  });
317
+ describe('item spacing', () => {
318
+ const rows = (els) => els.map(e => e.getBoundingClientRect());
319
+ it('rendered gap between top-level and nested rows is 12px (spacing-150)', async () => {
320
+ const { root, waitForChanges } = await render(h("bs-navigation-drawer", { heading: "Docs" }, h("bs-navigation-drawer-item", null, "One"), h("bs-navigation-drawer-item", { expandable: true, expanded: true }, "Two", h("bs-navigation-drawer-item", { slot: "children", nested: true }, "Child A"), h("bs-navigation-drawer-item", { slot: "children", nested: true }, "Child B")), h("bs-navigation-drawer-item", null, "Three")));
321
+ await waitForChanges();
322
+ const btn = (el) => el.shadowRoot.querySelector('[part="item"]');
323
+ const tops = Array.from(root.querySelectorAll(':scope > bs-navigation-drawer-item'));
324
+ const kids = Array.from(root.querySelectorAll('bs-navigation-drawer-item[slot="children"]'));
325
+ const [a, b, c] = rows(tops.map(btn));
326
+ const [k1, k2] = rows(kids.map(btn));
327
+ // item "Two": its row button, then children wrapper, then next top-level row
328
+ expect(Math.round(b.top - a.bottom)).toBe(12);
329
+ expect(Math.round(k2.top - k1.bottom)).toBe(12);
330
+ expect(Math.round(c.top - k2.bottom)).toBe(12);
331
+ expect(Math.round(k1.top - b.bottom)).toBe(12);
332
+ // section gap (logo/title/search/list) stays 24px
333
+ expect(getComputedStyle(root.shadowRoot.querySelector('nav')).rowGap).toBe('24px');
334
+ });
335
+ it('collapsed rows are also 12px apart', async () => {
336
+ const { root, waitForChanges } = await render(h("bs-navigation-drawer", { collapsed: true }, h("bs-navigation-drawer-item", { collapsed: true }, "One"), h("bs-navigation-drawer-item", { collapsed: true }, "Two")));
337
+ await waitForChanges();
338
+ const [a, b] = rows(Array.from(root.querySelectorAll('bs-navigation-drawer-item')).map(e => e.shadowRoot.querySelector('[part="item"]')));
339
+ expect(Math.round(b.top - a.bottom)).toBe(12);
340
+ });
341
+ });
317
342
  });
@@ -38,7 +38,7 @@
38
38
  * @prop --bs-navigation-drawer-collapse-icon: Collapse toggle icon color. Aliased to
39
39
  * --bs-icon-default.
40
40
  * @prop --bs-navigation-drawer-items-gap: Gap between top-level item rows in the items list.
41
- * Aliased to --bs-spacing-100.
41
+ * Aliased to --bs-spacing-150 (12px).
42
42
  * @prop --bs-navigation-drawer-collapsed-width: Width of the drawer when `collapsed`. 96px, per
43
43
  * Figma node 8028:135374's own frame ("Type=Collapsed").
44
44
  * @prop --bs-navigation-drawer-search-trigger-size: Width/height of the compact search-trigger
@@ -81,7 +81,7 @@
81
81
  --bs-navigation-drawer-collapse-pressed: var(--bs-color-neutral-container-pressed);
82
82
  --bs-navigation-drawer-collapse-icon: var(--bs-icon-default);
83
83
 
84
- --bs-navigation-drawer-items-gap: var(--bs-spacing-100);
84
+ --bs-navigation-drawer-items-gap: var(--bs-spacing-150);
85
85
 
86
86
  --bs-navigation-drawer-collapsed-width: 96px;
87
87
 
@@ -234,11 +234,11 @@ export class BsNavigationDrawer {
234
234
  };
235
235
  render() {
236
236
  const classes = ['bs-navigation-drawer', this.mobile ? 'bs-navigation-drawer--overlay' : '', this.overlayOpen ? 'bs-navigation-drawer--open' : ''].filter(Boolean).join(' ');
237
- return (h(Host, { key: '49c52b23f8cd7ded807c916a3d9ca7baae3f10ba', "data-overlay": this.mobile ? '' : undefined }, this.mobile && h("div", { key: 'b852ee92942a375d441320a95c1bd11a07754624', part: "backdrop", class: "bs-navigation-drawer__backdrop", onClick: this.requestClose }), h("nav", { key: 'f5e2aa57f8757f2fbd8dd305aac40504e90fec3f', ref: el => (this.navRef = el), class: classes, "aria-label": this.heading,
237
+ return (h(Host, { key: 'f95176f9c590fde2d2d6a9dcade6b921510ce653', "data-overlay": this.mobile ? '' : undefined }, this.mobile && h("div", { key: '2d9bdef1463962ca2e2f1f5aee7024636904c5c7', part: "backdrop", class: "bs-navigation-drawer__backdrop", onClick: this.requestClose }), h("nav", { key: 'b527d2a521652628c5b4dfda7004be716dba3b2e', ref: el => (this.navRef = el), class: classes, "aria-label": this.heading,
238
238
  // Stays a plain <nav> landmark in every state: ARIA does not allow role="dialog" on <nav>
239
239
  // (axe: aria-allowed-role). Modality is behavioral -- focus is held inside, the page behind is
240
240
  // scrimmed, Escape closes -- rather than announced through aria-modal.
241
- tabIndex: this.mobile ? -1 : undefined }, this.showLogo && (h("div", { key: '505457c0e4ef405aae32ede16e34195996d46a2f', part: "logo", class: "bs-navigation-drawer__logo bs-navigation-drawer__logo--full" }, h("bs-logo", { key: '7f18718b910241ce69d796853b0abdf451a89ac6', variant: "full", background: this.logoBackground }))), this.showLogo && (h("div", { key: '05d02bf25de16dcb7c02b71c385277eafef9ac28', part: "logo", class: "bs-navigation-drawer__logo bs-navigation-drawer__logo--mark" }, h("bs-logo", { key: '63f77b0363d7d262ac87c482e2aa48aee1edc612', variant: "mark", background: this.logoBackground }))), h("div", { key: 'db96e7dc889e58231b1112b9badd7e282c9a6d07', class: "bs-navigation-drawer__title-row" }, h("span", { key: '8d8f37baf13a92325dd1f2912831a5fffcbe2ac8', part: "title", class: "bs-navigation-drawer__title" }, this.heading), this.collapsible && (h("button", { key: '2f8cfcec017a5f4af5963367c0331b09ee6dd5e4', type: "button", part: "collapse", class: "bs-navigation-drawer__collapse", "aria-label": this.collapsed ? this.expandLabel : this.collapseLabel, "aria-pressed": this.collapsed ? 'true' : 'false', onClick: this.onCollapseClick }, h(CaretLeftIcon, { key: '6e6e1d837f20f6837fe2b77cfd7f0c873747e7de' })))), h("div", { key: '3b758c225881964df28f99c6fe477260df86eed6', part: "search", class: "bs-navigation-drawer__search" }, h("slot", { key: 'cbb3553aa7b80985b58494395a3595fff0fb868d', name: "search" })), h("button", { key: '4661d0113e00a3dbf5e6d06609bd563d7cac9800', type: "button", part: "search-trigger", class: "bs-navigation-drawer__search-trigger", "aria-label": this.searchLabel, onClick: this.onSearchTriggerClick }, h(SearchIcon, { key: '6ff77355d5132b608056e8ca7188a37962d6e1e4' })), h("div", { key: '369e4c1c9a17cddf4954b3d666c6c55335bc7876', part: "items", class: "bs-navigation-drawer__items" }, h("slot", { key: '56a50dc4c123db7cb2efa15c39cc6f49e819ee3f' })))));
241
+ tabIndex: this.mobile ? -1 : undefined }, this.showLogo && (h("div", { key: '14dcefaf6fac6349b44dfd0cfeaf0f8b28d48014', part: "logo", class: "bs-navigation-drawer__logo bs-navigation-drawer__logo--full" }, h("bs-logo", { key: 'f76b740e5f9378c19f9ca933c0f7910075c473b3', variant: "full", background: this.logoBackground }))), this.showLogo && (h("div", { key: '1978885ce2cfca859118159384e093e70bc8c2d9', part: "logo", class: "bs-navigation-drawer__logo bs-navigation-drawer__logo--mark" }, h("bs-logo", { key: '5087b539af51e373703256b9913b4a074e2917f4', variant: "mark", background: this.logoBackground }))), h("div", { key: '31b5f080ce98b4ba96aad0f9ba9df7b31ecfd5b9', class: "bs-navigation-drawer__title-row" }, h("span", { key: 'bf2880d7b095a6ca46d38782b0f9de8aa7cedbb8', part: "title", class: "bs-navigation-drawer__title" }, this.heading), this.collapsible && (h("button", { key: 'cf6f2d98894c664e38d97563a616912e9d6fef3e', type: "button", part: "collapse", class: "bs-navigation-drawer__collapse", "aria-label": this.collapsed ? this.expandLabel : this.collapseLabel, "aria-pressed": this.collapsed ? 'true' : 'false', onClick: this.onCollapseClick }, h(CaretLeftIcon, { key: 'c89adbac8d05ae9d3367683b960d8d35d0422e76' })))), h("div", { key: 'b018a42d16190db2bd6f95365fe36d38eb627300', part: "search", class: "bs-navigation-drawer__search" }, h("slot", { key: '1d217d7ad3c67d1b5e8a8655fd94bdbc77149b4f', name: "search" })), h("button", { key: '2b1bc189a5474dfc76e3d73e9c1623105002fd22', type: "button", part: "search-trigger", class: "bs-navigation-drawer__search-trigger", "aria-label": this.searchLabel, onClick: this.onSearchTriggerClick }, h(SearchIcon, { key: '634ab26e0bf8c38c9e4ba97305a94003112450b4' })), h("div", { key: 'df8559db4c5c25ff5d98b858759d142b1639fdc3', part: "items", class: "bs-navigation-drawer__items" }, h("slot", { key: 'b643a037ec21cc62d3ae60491028d26cb19e099c' })))));
242
242
  }
243
243
  static get is() { return "bs-navigation-drawer"; }
244
244
  static get encapsulation() { return "shadow"; }