@brandsync/wc 1.17.0 → 1.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (691) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/REFERENCE.md +316 -8
  3. package/custom-elements.json +9323 -6758
  4. package/dist/brandsync-wc/brandsync-wc.esm.js +1 -1
  5. package/dist/brandsync-wc/p-02314404.entry.js +1 -0
  6. package/dist/brandsync-wc/{p-0bbaef51.entry.js → p-028d3244.entry.js} +1 -1
  7. package/dist/brandsync-wc/{p-8c4dfccb.entry.js → p-03ad83a3.entry.js} +1 -1
  8. package/dist/brandsync-wc/{p-f82a9f0d.entry.js → p-0819add7.entry.js} +1 -1
  9. package/dist/brandsync-wc/{p-67f125e8.entry.js → p-08649f52.entry.js} +1 -1
  10. package/dist/brandsync-wc/p-0dff9822.entry.js +1 -0
  11. package/dist/brandsync-wc/{p-9d12b1fb.entry.js → p-10b8937f.entry.js} +1 -1
  12. package/dist/brandsync-wc/{p-aec2dfeb.entry.js → p-129a4de7.entry.js} +1 -1
  13. package/dist/brandsync-wc/p-1580c56c.entry.js +1 -0
  14. package/dist/brandsync-wc/p-15c6f0f3.entry.js +1 -0
  15. package/dist/brandsync-wc/{p-9d740928.entry.js → p-171fa239.entry.js} +1 -1
  16. package/dist/brandsync-wc/p-197ac73f.entry.js +1 -0
  17. package/dist/brandsync-wc/p-1e33bc10.entry.js +1 -0
  18. package/dist/brandsync-wc/{p-b5710db6.entry.js → p-21e5d4d6.entry.js} +1 -1
  19. package/dist/brandsync-wc/{p-90ba3032.entry.js → p-2389f473.entry.js} +1 -1
  20. package/dist/brandsync-wc/p-25914efc.entry.js +1 -0
  21. package/dist/brandsync-wc/{p-4f4c0c68.entry.js → p-26e0ab15.entry.js} +1 -1
  22. package/dist/brandsync-wc/{p-6ea02b98.entry.js → p-270b2cb0.entry.js} +1 -1
  23. package/dist/brandsync-wc/{p-54d91ac9.entry.js → p-27663faf.entry.js} +1 -1
  24. package/dist/brandsync-wc/p-28c38959.entry.js +1 -0
  25. package/dist/brandsync-wc/{p-70c650b2.entry.js → p-2a8b2ac9.entry.js} +1 -1
  26. package/dist/brandsync-wc/{p-84d6d6eb.entry.js → p-2a967b45.entry.js} +1 -1
  27. package/dist/brandsync-wc/p-2b3d0bd4.entry.js +1 -0
  28. package/dist/brandsync-wc/p-30736034.entry.js +1 -0
  29. package/dist/brandsync-wc/{p-9396c67e.entry.js → p-30ff0659.entry.js} +1 -1
  30. package/dist/brandsync-wc/{p-a7fa839a.entry.js → p-313ec145.entry.js} +1 -1
  31. package/dist/brandsync-wc/{p-3c6ec5d0.entry.js → p-3627e0c6.entry.js} +1 -1
  32. package/dist/brandsync-wc/{p-e8ae626d.entry.js → p-38a2210a.entry.js} +1 -1
  33. package/dist/brandsync-wc/{p-3bad5e1b.entry.js → p-391504ab.entry.js} +1 -1
  34. package/dist/brandsync-wc/{p-47b7fe76.entry.js → p-3b212a8a.entry.js} +1 -1
  35. package/dist/brandsync-wc/p-3c6980b9.entry.js +1 -0
  36. package/dist/brandsync-wc/{p-d5a6098d.entry.js → p-42fcf134.entry.js} +1 -1
  37. package/dist/brandsync-wc/p-4928c4ad.entry.js +1 -0
  38. package/dist/brandsync-wc/{p-844205d9.entry.js → p-4c51da66.entry.js} +1 -1
  39. package/dist/brandsync-wc/{p-f3eca1ce.entry.js → p-4d1ee16e.entry.js} +1 -1
  40. package/dist/brandsync-wc/{p-5b933ff4.entry.js → p-4dfd4715.entry.js} +1 -1
  41. package/dist/brandsync-wc/p-4ffcf41a.entry.js +1 -0
  42. package/dist/brandsync-wc/{p-11d80e17.entry.js → p-527fd08d.entry.js} +1 -1
  43. package/dist/brandsync-wc/{p-43d5f708.entry.js → p-5371b31c.entry.js} +1 -1
  44. package/dist/brandsync-wc/p-568de1b0.entry.js +1 -0
  45. package/dist/brandsync-wc/{p-dcbeb143.entry.js → p-590deea0.entry.js} +1 -1
  46. package/dist/brandsync-wc/{p-2bd30709.entry.js → p-64e19200.entry.js} +1 -1
  47. package/dist/brandsync-wc/p-6afacd47.entry.js +1 -0
  48. package/dist/brandsync-wc/p-6f32a08e.entry.js +1 -0
  49. package/dist/brandsync-wc/{p-5c61eb06.entry.js → p-70a5897b.entry.js} +1 -1
  50. package/dist/brandsync-wc/{p-8134f97c.entry.js → p-7160a72e.entry.js} +1 -1
  51. package/dist/brandsync-wc/p-776b677f.entry.js +1 -0
  52. package/dist/brandsync-wc/{p-b142d8c9.entry.js → p-78c94cfe.entry.js} +1 -1
  53. package/dist/brandsync-wc/p-7bff3aa5.entry.js +1 -0
  54. package/dist/brandsync-wc/{p-fdc168ec.entry.js → p-7c741b8d.entry.js} +1 -1
  55. package/dist/brandsync-wc/p-86f04e9e.entry.js +1 -0
  56. package/dist/brandsync-wc/{p-4eaa9ed4.entry.js → p-8a18864a.entry.js} +1 -1
  57. package/dist/brandsync-wc/{p-35f76ea7.entry.js → p-8a606b38.entry.js} +1 -1
  58. package/dist/brandsync-wc/p-8ac86d16.entry.js +1 -0
  59. package/dist/brandsync-wc/p-8b21f623.entry.js +1 -0
  60. package/dist/brandsync-wc/{p-1bd99669.entry.js → p-8d1ad4b0.entry.js} +1 -1
  61. package/dist/brandsync-wc/{p-07673a48.entry.js → p-8e107d7a.entry.js} +1 -1
  62. package/dist/brandsync-wc/{p-d9184940.entry.js → p-90d8d45f.entry.js} +1 -1
  63. package/dist/brandsync-wc/p-9751a12d.entry.js +1 -0
  64. package/dist/brandsync-wc/{p-857987f9.entry.js → p-9868ee72.entry.js} +1 -1
  65. package/dist/brandsync-wc/{p-f98dfa85.entry.js → p-9ba500f1.entry.js} +1 -1
  66. package/dist/brandsync-wc/p-9fa7bd83.entry.js +1 -0
  67. package/dist/brandsync-wc/p-BSt9HeTa.js +1 -0
  68. package/dist/brandsync-wc/{p-c835afb7.entry.js → p-a2bfbf02.entry.js} +1 -1
  69. package/dist/brandsync-wc/{p-ffccc1ee.entry.js → p-a50c5e68.entry.js} +1 -1
  70. package/dist/brandsync-wc/{p-3bdeeb9d.entry.js → p-a688a7ca.entry.js} +1 -1
  71. package/dist/brandsync-wc/{p-f43a7f16.entry.js → p-a92c0f06.entry.js} +1 -1
  72. package/dist/brandsync-wc/p-ab301e9d.entry.js +1 -0
  73. package/dist/brandsync-wc/{p-065c7e7c.entry.js → p-ab99b8c3.entry.js} +1 -1
  74. package/dist/brandsync-wc/{p-3cb79512.entry.js → p-c01e231e.entry.js} +1 -1
  75. package/dist/brandsync-wc/p-d15e48eb.entry.js +1 -0
  76. package/dist/brandsync-wc/p-d484e976.entry.js +1 -0
  77. package/dist/brandsync-wc/{p-d25adab2.entry.js → p-d80eecf4.entry.js} +1 -1
  78. package/dist/brandsync-wc/p-dc2ea372.entry.js +1 -0
  79. package/dist/brandsync-wc/p-de0dfd1c.entry.js +1 -0
  80. package/dist/brandsync-wc/p-e1d30e31.entry.js +1 -0
  81. package/dist/brandsync-wc/{p-a7fb0b59.entry.js → p-e5235e76.entry.js} +1 -1
  82. package/dist/brandsync-wc/{p-00be9a64.entry.js → p-e776d145.entry.js} +1 -1
  83. package/dist/brandsync-wc/{p-ffc07eb5.entry.js → p-e7c80f48.entry.js} +1 -1
  84. package/dist/brandsync-wc/{p-e0a9f2d1.entry.js → p-eb680cff.entry.js} +1 -1
  85. package/dist/brandsync-wc/p-ebcd105d.entry.js +1 -0
  86. package/dist/brandsync-wc/p-f10b19a8.entry.js +1 -0
  87. package/dist/brandsync-wc/{p-5057e4fe.entry.js → p-f3b60029.entry.js} +1 -1
  88. package/dist/brandsync-wc/p-f4628861.entry.js +1 -0
  89. package/dist/brandsync-wc/{p-b02bf1ca.entry.js → p-f4796801.entry.js} +1 -1
  90. package/dist/brandsync-wc/p-f5e6fdf8.entry.js +1 -0
  91. package/dist/brandsync-wc/p-f93127e1.entry.js +1 -0
  92. package/dist/brandsync-wc/{p-57ff14ca.entry.js → p-f96f45ae.entry.js} +1 -1
  93. package/dist/brandsync-wc/{p-debc83cc.entry.js → p-feb46fa6.entry.js} +1 -1
  94. package/dist/cjs/brandsync-wc.cjs.js +1 -1
  95. package/dist/cjs/bs-accordion-group.cjs.entry.js +1 -1
  96. package/dist/cjs/bs-accordion.cjs.entry.js +60 -3
  97. package/dist/cjs/bs-ai-disclaimer.cjs.entry.js +1 -1
  98. package/dist/cjs/bs-ai-greeting.cjs.entry.js +1 -1
  99. package/dist/cjs/bs-ai-thinking.cjs.entry.js +1 -1
  100. package/dist/cjs/bs-app-recent-item_3.cjs.entry.js +133 -0
  101. package/dist/cjs/bs-app-shell.cjs.entry.js +1 -1
  102. package/dist/cjs/bs-app-switcher.cjs.entry.js +208 -0
  103. package/dist/cjs/bs-attachment-list.cjs.entry.js +1 -1
  104. package/dist/cjs/bs-attachment.cjs.entry.js +1 -1
  105. package/dist/cjs/bs-avatar.cjs.entry.js +1 -1
  106. package/dist/cjs/bs-badge.cjs.entry.js +1 -1
  107. package/dist/cjs/bs-breadcrumb-overflow.cjs.entry.js +1 -1
  108. package/dist/cjs/bs-breadcrumb.cjs.entry.js +1 -1
  109. package/dist/cjs/bs-breadcrumbs.cjs.entry.js +1 -1
  110. package/dist/cjs/bs-button-skeleton.cjs.entry.js +1 -1
  111. package/dist/cjs/bs-button_2.cjs.entry.js +198 -0
  112. package/dist/cjs/bs-card.cjs.entry.js +1 -1
  113. package/dist/cjs/bs-carousel.cjs.entry.js +70 -5
  114. package/dist/cjs/bs-chatbot-feedback.cjs.entry.js +1 -1
  115. package/dist/cjs/bs-chatbot-header.cjs.entry.js +1 -1
  116. package/dist/cjs/bs-chatbot-response-action.cjs.entry.js +2 -2
  117. package/dist/cjs/bs-chatbot-sources-drawer.cjs.entry.js +1 -1
  118. package/dist/cjs/bs-chatbot-suggestion-button.cjs.entry.js +2 -2
  119. package/dist/cjs/bs-checkbox-skeleton.cjs.entry.js +1 -1
  120. package/dist/cjs/bs-checkbox.cjs.entry.js +2 -2
  121. package/dist/cjs/bs-chip-filter.cjs.entry.js +2 -2
  122. package/dist/cjs/bs-chip-informative.cjs.entry.js +1 -1
  123. package/dist/cjs/bs-chip-input.cjs.entry.js +2 -2
  124. package/dist/cjs/bs-citation-preview.cjs.entry.js +1 -1
  125. package/dist/cjs/bs-command-palette.cjs.entry.js +1 -1
  126. package/dist/cjs/bs-compact-menu-block_2.cjs.entry.js +46 -0
  127. package/dist/cjs/bs-company-switcher.cjs.entry.js +211 -0
  128. package/dist/cjs/bs-composer-status-banner.cjs.entry.js +1 -1
  129. package/dist/cjs/bs-composer.cjs.entry.js +1 -1
  130. package/dist/cjs/bs-container.cjs.entry.js +1 -1
  131. package/dist/cjs/bs-data-table.cjs.entry.js +2 -2
  132. package/dist/cjs/bs-datepicker.cjs.entry.js +1 -1
  133. package/dist/cjs/bs-dialog.cjs.entry.js +54 -3
  134. package/dist/cjs/bs-divider.cjs.entry.js +1 -1
  135. package/dist/cjs/bs-empty-state.cjs.entry.js +1 -1
  136. package/dist/cjs/bs-error-page.cjs.entry.js +1 -1
  137. package/dist/cjs/bs-file-upload-item.cjs.entry.js +1 -1
  138. package/dist/cjs/bs-file-upload.cjs.entry.js +1 -1
  139. package/dist/cjs/bs-global-search.cjs.entry.js +2 -2
  140. package/dist/cjs/bs-grid.cjs.entry.js +2 -2
  141. package/dist/cjs/bs-icon-button.cjs.entry.js +9 -2
  142. package/dist/cjs/bs-icon-tile.cjs.entry.js +10 -2
  143. package/dist/cjs/bs-inline-tab.cjs.entry.js +2 -2
  144. package/dist/cjs/bs-input_3.cjs.entry.js +5 -5
  145. package/dist/cjs/bs-key-caps.cjs.entry.js +1 -1
  146. package/dist/cjs/bs-key.cjs.entry.js +1 -1
  147. package/dist/cjs/bs-keyboard-shortcuts.cjs.entry.js +2 -2
  148. package/dist/cjs/bs-list-item_2.cjs.entry.js +261 -0
  149. package/dist/cjs/bs-list.cjs.entry.js +1 -1
  150. package/dist/cjs/bs-mega-menu.cjs.entry.js +120 -0
  151. package/dist/cjs/bs-message-list.cjs.entry.js +1 -1
  152. package/dist/cjs/bs-message.cjs.entry.js +1 -1
  153. package/dist/cjs/bs-navigation-drawer-item.cjs.entry.js +1 -1
  154. package/dist/cjs/bs-navigation-drawer.cjs.entry.js +2 -2
  155. package/dist/cjs/bs-navigation-header.cjs.entry.js +5 -2
  156. package/dist/cjs/bs-page-header.cjs.entry.js +66 -0
  157. package/dist/cjs/bs-pagination.cjs.entry.js +2 -2
  158. package/dist/cjs/bs-presence.cjs.entry.js +88 -0
  159. package/dist/cjs/bs-progress-linear.cjs.entry.js +2 -2
  160. package/dist/cjs/bs-progress.cjs.entry.js +2 -2
  161. package/dist/cjs/bs-qr-code.cjs.entry.js +1 -1
  162. package/dist/cjs/bs-radio.cjs.entry.js +4 -4
  163. package/dist/cjs/bs-search-item.cjs.entry.js +2 -2
  164. package/dist/cjs/bs-session-timeout.cjs.entry.js +1 -1
  165. package/dist/cjs/bs-shortcut-row.cjs.entry.js +1 -1
  166. package/dist/cjs/bs-side-panel.cjs.entry.js +52 -3
  167. package/dist/cjs/bs-slider.cjs.entry.js +1 -1
  168. package/dist/cjs/bs-snackbar.cjs.entry.js +1 -1
  169. package/dist/cjs/bs-source-link.cjs.entry.js +4 -3
  170. package/dist/cjs/bs-spinner.cjs.entry.js +1 -1
  171. package/dist/cjs/bs-split-pane.cjs.entry.js +1 -1
  172. package/dist/cjs/bs-stack.cjs.entry.js +1 -1
  173. package/dist/cjs/bs-stepper-step.cjs.entry.js +1 -1
  174. package/dist/cjs/bs-stepper.cjs.entry.js +1 -1
  175. package/dist/cjs/bs-switch.cjs.entry.js +4 -11
  176. package/dist/cjs/bs-tab_3.cjs.entry.js +3 -3
  177. package/dist/cjs/bs-timepicker.cjs.entry.js +2 -2
  178. package/dist/cjs/bs-toast.cjs.entry.js +1 -1
  179. package/dist/cjs/bs-tooltip-trigger.cjs.entry.js +61 -3
  180. package/dist/cjs/bs-tooltip.cjs.entry.js +1 -1
  181. package/dist/cjs/bs-tree-item.cjs.entry.js +3 -3
  182. package/dist/cjs/bs-tree.cjs.entry.js +1 -1
  183. package/dist/cjs/loader.cjs.js +1 -1
  184. package/dist/cjs/motion-DOlI71lc.js +43 -0
  185. package/dist/collection/collection-manifest.json +10 -0
  186. package/dist/collection/components/bs-accordion/bs-accordion.cmp.test.js +21 -6
  187. package/dist/collection/components/bs-accordion/bs-accordion.css +15 -0
  188. package/dist/collection/components/bs-accordion/bs-accordion.js +71 -2
  189. package/dist/collection/components/bs-accordion-group/bs-accordion-group.js +1 -1
  190. package/dist/collection/components/bs-ai-disclaimer/bs-ai-disclaimer.js +1 -1
  191. package/dist/collection/components/bs-ai-greeting/bs-ai-greeting.js +1 -1
  192. package/dist/collection/components/bs-ai-thinking/bs-ai-thinking.js +1 -1
  193. package/dist/collection/components/bs-app-recent-item/bs-app-recent-item.cmp.test.js +52 -0
  194. package/dist/collection/components/bs-app-recent-item/bs-app-recent-item.css +111 -0
  195. package/dist/collection/components/bs-app-recent-item/bs-app-recent-item.js +184 -0
  196. package/dist/collection/components/bs-app-recent-item/bs-app-recent-item.stories.js +28 -0
  197. package/dist/collection/components/bs-app-shell/bs-app-shell.js +1 -1
  198. package/dist/collection/components/bs-app-switcher/bs-app-switcher.cmp.test.js +179 -0
  199. package/dist/collection/components/bs-app-switcher/bs-app-switcher.css +173 -0
  200. package/dist/collection/components/bs-app-switcher/bs-app-switcher.js +902 -0
  201. package/dist/collection/components/bs-app-switcher/bs-app-switcher.stories.js +91 -0
  202. package/dist/collection/components/bs-app-tile/bs-app-tile.cmp.test.js +58 -0
  203. package/dist/collection/components/bs-app-tile/bs-app-tile.css +104 -0
  204. package/dist/collection/components/bs-app-tile/bs-app-tile.js +190 -0
  205. package/dist/collection/components/bs-app-tile/bs-app-tile.stories.js +43 -0
  206. package/dist/collection/components/bs-attachment/bs-attachment.js +1 -1
  207. package/dist/collection/components/bs-attachment-list/bs-attachment-list.js +1 -1
  208. package/dist/collection/components/bs-avatar/bs-avatar.css +3 -3
  209. package/dist/collection/components/bs-badge/bs-badge.js +1 -1
  210. package/dist/collection/components/bs-breadcrumb/bs-breadcrumb/bs-breadcrumb.js +1 -1
  211. package/dist/collection/components/bs-breadcrumb/bs-breadcrumb-overflow/bs-breadcrumb-overflow.js +1 -1
  212. package/dist/collection/components/bs-breadcrumb/bs-breadcrumbs/bs-breadcrumbs.js +1 -1
  213. package/dist/collection/components/bs-button/bs-button/bs-button.cmp.test.js +12 -0
  214. package/dist/collection/components/bs-button/bs-button/bs-button.css +2 -0
  215. package/dist/collection/components/bs-button/bs-button/bs-button.js +4 -1
  216. package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.cmp.test.js +13 -0
  217. package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.css +2 -0
  218. package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.js +28 -1
  219. package/dist/collection/components/bs-button-skeleton/bs-button-skeleton.js +1 -1
  220. package/dist/collection/components/bs-card/bs-card.js +1 -1
  221. package/dist/collection/components/bs-carousel/bs-carousel.cmp.test.js +39 -1
  222. package/dist/collection/components/bs-carousel/bs-carousel.css +9 -0
  223. package/dist/collection/components/bs-carousel/bs-carousel.js +75 -4
  224. package/dist/collection/components/bs-chatbot-feedback/bs-chatbot-feedback.js +1 -1
  225. package/dist/collection/components/bs-chatbot-header/bs-chatbot-header.js +1 -1
  226. package/dist/collection/components/bs-chatbot-response-action/bs-chatbot-response-action.css +2 -0
  227. package/dist/collection/components/bs-chatbot-response-action/bs-chatbot-response-action.js +2 -1
  228. package/dist/collection/components/bs-chatbot-sources-drawer/bs-chatbot-sources-drawer.js +1 -1
  229. package/dist/collection/components/bs-chatbot-suggestion-button/bs-chatbot-suggestion-button.css +2 -0
  230. package/dist/collection/components/bs-chatbot-suggestion-button/bs-chatbot-suggestion-button.js +2 -1
  231. package/dist/collection/components/bs-checkbox/bs-checkbox-skeleton/bs-checkbox-skeleton.js +1 -1
  232. package/dist/collection/components/bs-checkbox/bs-checkbox.css +7 -0
  233. package/dist/collection/components/bs-checkbox/bs-checkbox.js +2 -1
  234. package/dist/collection/components/bs-chip/bs-chip-filter/bs-chip-filter.css +2 -0
  235. package/dist/collection/components/bs-chip/bs-chip-filter/bs-chip-filter.js +2 -1
  236. package/dist/collection/components/bs-chip/bs-chip-informative/bs-chip-informative.js +1 -1
  237. package/dist/collection/components/bs-chip/bs-chip-input/bs-chip-input.css +7 -0
  238. package/dist/collection/components/bs-chip/bs-chip-input/bs-chip-input.js +2 -1
  239. package/dist/collection/components/bs-citation-preview/bs-citation-preview.js +1 -1
  240. package/dist/collection/components/bs-command-palette/bs-command-palette.js +1 -1
  241. package/dist/collection/components/bs-compact-menu-block/bs-compact-menu-block.cmp.test.js +32 -0
  242. package/dist/collection/components/bs-compact-menu-block/bs-compact-menu-block.css +43 -0
  243. package/dist/collection/components/bs-compact-menu-block/bs-compact-menu-block.js +67 -0
  244. package/dist/collection/components/bs-compact-menu-block/bs-compact-menu-block.stories.js +25 -0
  245. package/dist/collection/components/bs-company-switcher/bs-company-switcher.cmp.test.js +171 -0
  246. package/dist/collection/components/bs-company-switcher/bs-company-switcher.css +196 -0
  247. package/dist/collection/components/bs-company-switcher/bs-company-switcher.js +720 -0
  248. package/dist/collection/components/bs-company-switcher/bs-company-switcher.stories.js +78 -0
  249. package/dist/collection/components/bs-composer/bs-composer.js +1 -1
  250. package/dist/collection/components/bs-composer-status-banner/bs-composer-status-banner.js +1 -1
  251. package/dist/collection/components/bs-container/bs-container.js +1 -1
  252. package/dist/collection/components/bs-data-table/bs-data-table.js +2 -2
  253. package/dist/collection/components/bs-datepicker/bs-datepicker.js +1 -1
  254. package/dist/collection/components/bs-dialog/bs-dialog.cmp.test.js +32 -0
  255. package/dist/collection/components/bs-dialog/bs-dialog.css +16 -0
  256. package/dist/collection/components/bs-dialog/bs-dialog.js +61 -3
  257. package/dist/collection/components/bs-divider/bs-divider.js +1 -1
  258. package/dist/collection/components/bs-empty-state/bs-empty-state.js +1 -1
  259. package/dist/collection/components/bs-error-page/bs-error-page.js +1 -1
  260. package/dist/collection/components/bs-file-upload/bs-file-upload.js +1 -1
  261. package/dist/collection/components/bs-file-upload-item/bs-file-upload-item.js +1 -1
  262. package/dist/collection/components/bs-global-search/bs-global-search.js +2 -2
  263. package/dist/collection/components/bs-grid/bs-grid.js +2 -2
  264. package/dist/collection/components/bs-icon-tile/bs-icon-tile.js +11 -2
  265. package/dist/collection/components/bs-input/bs-input.js +2 -2
  266. package/dist/collection/components/bs-key/bs-key.js +1 -1
  267. package/dist/collection/components/bs-key-caps/bs-key-caps.js +1 -1
  268. package/dist/collection/components/bs-keyboard-shortcuts/bs-keyboard-shortcuts.js +2 -2
  269. package/dist/collection/components/bs-list/bs-list.js +1 -1
  270. package/dist/collection/components/bs-list-item/bs-list-item.css +2 -0
  271. package/dist/collection/components/bs-list-item/bs-list-item.js +2 -1
  272. package/dist/collection/components/bs-mega-menu/bs-mega-menu.cmp.test.js +204 -0
  273. package/dist/collection/components/bs-mega-menu/bs-mega-menu.css +143 -0
  274. package/dist/collection/components/bs-mega-menu/bs-mega-menu.js +443 -0
  275. package/dist/collection/components/bs-mega-menu/bs-mega-menu.stories.js +188 -0
  276. package/dist/collection/components/bs-menu/bs-menu.js +1 -1
  277. package/dist/collection/components/bs-menu-block/bs-menu-block.cmp.test.js +44 -0
  278. package/dist/collection/components/bs-menu-block/bs-menu-block.css +106 -0
  279. package/dist/collection/components/bs-menu-block/bs-menu-block.js +147 -0
  280. package/dist/collection/components/bs-menu-block/bs-menu-block.stories.js +36 -0
  281. package/dist/collection/components/bs-menu-item/bs-menu-item.css +2 -0
  282. package/dist/collection/components/bs-menu-item/bs-menu-item.js +2 -1
  283. package/dist/collection/components/bs-message/bs-message.js +1 -1
  284. package/dist/collection/components/bs-message-list/bs-message-list.js +1 -1
  285. package/dist/collection/components/bs-page-header/bs-page-header.cmp.test.js +206 -0
  286. package/dist/collection/components/bs-page-header/bs-page-header.css +252 -0
  287. package/dist/collection/components/bs-page-header/bs-page-header.js +351 -0
  288. package/dist/collection/components/bs-page-header/bs-page-header.stories.js +177 -0
  289. package/dist/collection/components/bs-pagination/bs-pagination.css +2 -0
  290. package/dist/collection/components/bs-pagination/bs-pagination.js +2 -1
  291. package/dist/collection/components/bs-popover/bs-popover.cmp.test.js +20 -0
  292. package/dist/collection/components/bs-popover/bs-popover.css +3 -0
  293. package/dist/collection/components/bs-popover/bs-popover.js +59 -2
  294. package/dist/collection/components/bs-presence/bs-presence.cmp.test.js +64 -0
  295. package/dist/collection/components/bs-presence/bs-presence.css +80 -0
  296. package/dist/collection/components/bs-presence/bs-presence.js +233 -0
  297. package/dist/collection/components/bs-presence/bs-presence.stories.js +101 -0
  298. package/dist/collection/components/bs-progress/bs-progress.js +2 -2
  299. package/dist/collection/components/bs-progress-linear/bs-progress-linear.js +2 -2
  300. package/dist/collection/components/bs-qr-code/bs-qr-code.js +1 -1
  301. package/dist/collection/components/bs-radio/bs-radio.css +6 -0
  302. package/dist/collection/components/bs-radio/bs-radio.js +4 -3
  303. package/dist/collection/components/bs-ripple/bs-ripple.cmp.test.js +45 -0
  304. package/dist/collection/components/bs-ripple/bs-ripple.css +32 -0
  305. package/dist/collection/components/bs-ripple/bs-ripple.js +188 -0
  306. package/dist/collection/components/bs-ripple/bs-ripple.stories.js +33 -0
  307. package/dist/collection/components/bs-search-item/bs-search-item.css +2 -0
  308. package/dist/collection/components/bs-search-item/bs-search-item.js +2 -1
  309. package/dist/collection/components/bs-session-timeout/bs-session-timeout.js +1 -1
  310. package/dist/collection/components/bs-shortcut-row/bs-shortcut-row.js +1 -1
  311. package/dist/collection/components/bs-side-panel/bs-side-panel.cmp.test.js +19 -0
  312. package/dist/collection/components/bs-side-panel/bs-side-panel.css +8 -0
  313. package/dist/collection/components/bs-side-panel/bs-side-panel.js +58 -2
  314. package/dist/collection/components/bs-skeleton/bs-skeleton.js +1 -1
  315. package/dist/collection/components/bs-slider/bs-slider.js +1 -1
  316. package/dist/collection/components/bs-snackbar/bs-snackbar.js +1 -1
  317. package/dist/collection/components/bs-source-link/bs-source-link.css +2 -0
  318. package/dist/collection/components/bs-source-link/bs-source-link.js +4 -2
  319. package/dist/collection/components/bs-spinner/bs-spinner.js +1 -1
  320. package/dist/collection/components/bs-split-pane/bs-split-pane.js +1 -1
  321. package/dist/collection/components/bs-stack/bs-stack.js +1 -1
  322. package/dist/collection/components/bs-stepper/bs-stepper/bs-stepper.js +1 -1
  323. package/dist/collection/components/bs-stepper/bs-stepper-step/bs-stepper-step.js +1 -1
  324. package/dist/collection/components/bs-switch/bs-switch.css +9 -0
  325. package/dist/collection/components/bs-switch/bs-switch.js +4 -10
  326. package/dist/collection/components/bs-tab/bs-inline-tab/bs-inline-tab.css +2 -0
  327. package/dist/collection/components/bs-tab/bs-inline-tab/bs-inline-tab.js +2 -1
  328. package/dist/collection/components/bs-tab/bs-tab/bs-tab.js +2 -1
  329. package/dist/collection/components/bs-tab/bs-tabs/bs-tabs.js +1 -1
  330. package/dist/collection/components/bs-timepicker/bs-timepicker.js +2 -2
  331. package/dist/collection/components/bs-toast/bs-toast.js +1 -1
  332. package/dist/collection/components/bs-tooltip/bs-tooltip.js +1 -1
  333. package/dist/collection/components/bs-tooltip-trigger/bs-tooltip-trigger.cmp.test.js +53 -2
  334. package/dist/collection/components/bs-tooltip-trigger/bs-tooltip-trigger.css +3 -0
  335. package/dist/collection/components/bs-tooltip-trigger/bs-tooltip-trigger.js +70 -3
  336. package/dist/collection/components/bs-tree/bs-tree.js +1 -1
  337. package/dist/collection/components/bs-tree-item/bs-tree-item.css +2 -0
  338. package/dist/collection/components/bs-tree-item/bs-tree-item.js +3 -2
  339. package/dist/collection/components/bs-whats-new-entry/bs-whats-new-entry.js +1 -1
  340. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.js +2 -2
  341. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer-item/bs-navigation-drawer-item.js +1 -1
  342. package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.cmp.test.js +79 -0
  343. package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.css +46 -0
  344. package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.js +10 -1
  345. package/dist/collection/utils/motion.js +37 -0
  346. package/dist/components/bs-accordion-group.js +1 -1
  347. package/dist/components/bs-accordion.js +1 -1
  348. package/dist/components/bs-ai-disclaimer.js +1 -1
  349. package/dist/components/bs-ai-greeting.js +1 -1
  350. package/dist/components/bs-ai-thinking.js +1 -1
  351. package/dist/components/bs-app-recent-item.d.ts +11 -0
  352. package/dist/components/bs-app-recent-item.js +1 -0
  353. package/dist/components/bs-app-shell.js +1 -1
  354. package/dist/components/bs-app-switcher.d.ts +11 -0
  355. package/dist/components/bs-app-switcher.js +1 -0
  356. package/dist/components/bs-app-tile.d.ts +11 -0
  357. package/dist/components/bs-app-tile.js +1 -0
  358. package/dist/components/bs-attachment-list.js +1 -1
  359. package/dist/components/bs-attachment.js +1 -1
  360. package/dist/components/bs-avatar.js +1 -1
  361. package/dist/components/bs-badge.js +1 -1
  362. package/dist/components/bs-breadcrumb-overflow.js +1 -1
  363. package/dist/components/bs-breadcrumb.js +1 -1
  364. package/dist/components/bs-breadcrumbs.js +1 -1
  365. package/dist/components/bs-button-skeleton.js +1 -1
  366. package/dist/components/bs-button.js +1 -1
  367. package/dist/components/bs-card.js +1 -1
  368. package/dist/components/bs-carousel.js +1 -1
  369. package/dist/components/bs-chatbot-feedback.js +1 -1
  370. package/dist/components/bs-chatbot-header.js +1 -1
  371. package/dist/components/bs-chatbot-response-action.js +1 -1
  372. package/dist/components/bs-chatbot-sources-drawer.js +1 -1
  373. package/dist/components/bs-chatbot-suggestion-button.js +1 -1
  374. package/dist/components/bs-checkbox-skeleton.js +1 -1
  375. package/dist/components/bs-checkbox.js +1 -1
  376. package/dist/components/bs-chip-filter.js +1 -1
  377. package/dist/components/bs-chip-informative.js +1 -1
  378. package/dist/components/bs-chip-input.js +1 -1
  379. package/dist/components/bs-citation-preview.js +1 -1
  380. package/dist/components/bs-command-palette.js +1 -1
  381. package/dist/components/bs-compact-menu-block.d.ts +11 -0
  382. package/dist/components/bs-compact-menu-block.js +1 -0
  383. package/dist/components/bs-company-switcher.d.ts +11 -0
  384. package/dist/components/bs-company-switcher.js +1 -0
  385. package/dist/components/bs-composer-status-banner.js +1 -1
  386. package/dist/components/bs-composer.js +1 -1
  387. package/dist/components/bs-container.js +1 -1
  388. package/dist/components/bs-cookie-consent.js +1 -1
  389. package/dist/components/bs-data-table.js +1 -1
  390. package/dist/components/bs-datepicker.js +1 -1
  391. package/dist/components/bs-dialog.js +1 -1
  392. package/dist/components/bs-divider.js +1 -1
  393. package/dist/components/bs-empty-state.js +1 -1
  394. package/dist/components/bs-error-page.js +1 -1
  395. package/dist/components/bs-file-upload-item.js +1 -1
  396. package/dist/components/bs-file-upload.js +1 -1
  397. package/dist/components/bs-global-search.js +1 -1
  398. package/dist/components/bs-grid.js +1 -1
  399. package/dist/components/bs-icon-button.js +1 -1
  400. package/dist/components/bs-icon-tile.js +1 -1
  401. package/dist/components/bs-inline-tab.js +1 -1
  402. package/dist/components/bs-input.js +1 -1
  403. package/dist/components/bs-key-caps.js +1 -1
  404. package/dist/components/bs-key.js +1 -1
  405. package/dist/components/bs-keyboard-shortcuts.js +1 -1
  406. package/dist/components/bs-list-item.js +1 -1
  407. package/dist/components/bs-list.js +1 -1
  408. package/dist/components/bs-mega-menu.d.ts +11 -0
  409. package/dist/components/bs-mega-menu.js +1 -0
  410. package/dist/components/bs-menu-block.d.ts +11 -0
  411. package/dist/components/bs-menu-block.js +1 -0
  412. package/dist/components/bs-menu-item.js +1 -1
  413. package/dist/components/bs-menu.js +1 -1
  414. package/dist/components/bs-message-list.js +1 -1
  415. package/dist/components/bs-message.js +1 -1
  416. package/dist/components/bs-navigation-drawer-item.js +1 -1
  417. package/dist/components/bs-navigation-drawer.js +1 -1
  418. package/dist/components/bs-navigation-header.js +1 -1
  419. package/dist/components/bs-onboarding-checklist.js +1 -1
  420. package/dist/components/bs-page-header.d.ts +11 -0
  421. package/dist/components/bs-page-header.js +1 -0
  422. package/dist/components/bs-pagination.js +1 -1
  423. package/dist/components/bs-popover.js +1 -1
  424. package/dist/components/bs-presence.d.ts +11 -0
  425. package/dist/components/bs-presence.js +1 -0
  426. package/dist/components/bs-product-tour.js +1 -1
  427. package/dist/components/bs-progress-linear.js +1 -1
  428. package/dist/components/bs-progress.js +1 -1
  429. package/dist/components/bs-qr-code.js +1 -1
  430. package/dist/components/bs-radio.js +1 -1
  431. package/dist/components/bs-ripple.d.ts +11 -0
  432. package/dist/components/bs-ripple.js +1 -0
  433. package/dist/components/bs-search-item.js +1 -1
  434. package/dist/components/bs-session-timeout.js +1 -1
  435. package/dist/components/bs-shortcut-row.js +1 -1
  436. package/dist/components/bs-side-panel.js +1 -1
  437. package/dist/components/bs-skeleton.js +1 -1
  438. package/dist/components/bs-slider.js +1 -1
  439. package/dist/components/bs-snackbar.js +1 -1
  440. package/dist/components/bs-source-link.js +1 -1
  441. package/dist/components/bs-spinner.js +1 -1
  442. package/dist/components/bs-split-pane.js +1 -1
  443. package/dist/components/bs-stack.js +1 -1
  444. package/dist/components/bs-stepper-step.js +1 -1
  445. package/dist/components/bs-stepper.js +1 -1
  446. package/dist/components/bs-switch.js +1 -1
  447. package/dist/components/bs-tab.js +1 -1
  448. package/dist/components/bs-tabs.js +1 -1
  449. package/dist/components/bs-timepicker.js +1 -1
  450. package/dist/components/bs-toast.js +1 -1
  451. package/dist/components/bs-tooltip-trigger.js +1 -1
  452. package/dist/components/bs-tooltip.js +1 -1
  453. package/dist/components/bs-tree-item.js +1 -1
  454. package/dist/components/bs-tree.js +1 -1
  455. package/dist/components/bs-whats-new-entry.js +1 -1
  456. package/dist/components/bs-whats-new.js +1 -1
  457. package/dist/components/p--Tyv3LIl.js +1 -0
  458. package/dist/components/p-4yShCgRb.js +1 -0
  459. package/dist/components/p-6Rr9bjVN.js +1 -0
  460. package/dist/components/{p-CervX0wH.js → p-BHzj13sd.js} +1 -1
  461. package/dist/components/p-BIxcCDgl.js +1 -0
  462. package/dist/components/p-BQ4rSQDm.js +1 -0
  463. package/dist/components/p-BSt9HeTa.js +1 -0
  464. package/dist/components/p-BWRkbt0f.js +1 -0
  465. package/dist/components/p-BfCah-Ij.js +1 -0
  466. package/dist/components/p-BpkPo4ay.js +1 -0
  467. package/dist/components/{p-Bp3DIxjT.js → p-CFR3Q0io.js} +1 -1
  468. package/dist/components/p-CHZE_FrW.js +1 -0
  469. package/dist/components/{p-CYzBTzzf.js → p-CVQycAap.js} +1 -1
  470. package/dist/components/{p-DtYTs9Kh.js → p-Cr8cHmpM.js} +1 -1
  471. package/dist/components/p-CvSewXZF.js +1 -0
  472. package/dist/components/{p-Dt4JNhHT.js → p-D3PuUD8Z.js} +1 -1
  473. package/dist/components/p-D5eN9Lfa.js +1 -0
  474. package/dist/components/{p-BDnZvjlq.js → p-DDgzEg1C.js} +1 -1
  475. package/dist/components/p-DF2FcJPs.js +1 -0
  476. package/dist/components/{p-DcjgRtSQ.js → p-DLnZG_G9.js} +1 -1
  477. package/dist/components/{p-CH5atin4.js → p-DXbcyEgd.js} +1 -1
  478. package/dist/components/{p-CRtvJlh8.js → p-DXwatzvM.js} +1 -1
  479. package/dist/components/p-DcD5eV_Z.js +1 -0
  480. package/dist/components/p-Dj393s3S.js +1 -0
  481. package/dist/components/p-DsBToIYE.js +1 -0
  482. package/dist/components/p-DtkTnaOp.js +1 -0
  483. package/dist/components/{p-DvNED6Lb.js → p-EGNLb4cQ.js} +1 -1
  484. package/dist/components/{p-CRM1wIX9.js → p-Jik5UkAe.js} +1 -1
  485. package/dist/components/p-XZXdZpt4.js +1 -0
  486. package/dist/components/{p-BcYNrEOB.js → p-Y5FyLR8G.js} +1 -1
  487. package/dist/components/{p-DG9eT5yi.js → p-ZfE38vXZ.js} +1 -1
  488. package/dist/components/p-lPTgyF9v.js +1 -0
  489. package/dist/components/p-syO0ipbw.js +1 -0
  490. package/dist/components/p-up01gvHY.js +1 -0
  491. package/dist/esm/brandsync-wc.js +1 -1
  492. package/dist/esm/bs-accordion-group.entry.js +1 -1
  493. package/dist/esm/bs-accordion.entry.js +61 -4
  494. package/dist/esm/bs-ai-disclaimer.entry.js +1 -1
  495. package/dist/esm/bs-ai-greeting.entry.js +1 -1
  496. package/dist/esm/bs-ai-thinking.entry.js +1 -1
  497. package/dist/esm/bs-app-recent-item_3.entry.js +129 -0
  498. package/dist/esm/bs-app-shell.entry.js +1 -1
  499. package/dist/esm/bs-app-switcher.entry.js +206 -0
  500. package/dist/esm/bs-attachment-list.entry.js +1 -1
  501. package/dist/esm/bs-attachment.entry.js +1 -1
  502. package/dist/esm/bs-avatar.entry.js +1 -1
  503. package/dist/esm/bs-badge.entry.js +1 -1
  504. package/dist/esm/bs-breadcrumb-overflow.entry.js +1 -1
  505. package/dist/esm/bs-breadcrumb.entry.js +1 -1
  506. package/dist/esm/bs-breadcrumbs.entry.js +1 -1
  507. package/dist/esm/bs-button-skeleton.entry.js +1 -1
  508. package/dist/esm/bs-button_2.entry.js +195 -0
  509. package/dist/esm/bs-card.entry.js +1 -1
  510. package/dist/esm/bs-carousel.entry.js +70 -5
  511. package/dist/esm/bs-chatbot-feedback.entry.js +1 -1
  512. package/dist/esm/bs-chatbot-header.entry.js +1 -1
  513. package/dist/esm/bs-chatbot-response-action.entry.js +2 -2
  514. package/dist/esm/bs-chatbot-sources-drawer.entry.js +1 -1
  515. package/dist/esm/bs-chatbot-suggestion-button.entry.js +2 -2
  516. package/dist/esm/bs-checkbox-skeleton.entry.js +1 -1
  517. package/dist/esm/bs-checkbox.entry.js +2 -2
  518. package/dist/esm/bs-chip-filter.entry.js +2 -2
  519. package/dist/esm/bs-chip-informative.entry.js +1 -1
  520. package/dist/esm/bs-chip-input.entry.js +2 -2
  521. package/dist/esm/bs-citation-preview.entry.js +1 -1
  522. package/dist/esm/bs-command-palette.entry.js +1 -1
  523. package/dist/esm/bs-compact-menu-block_2.entry.js +43 -0
  524. package/dist/esm/bs-company-switcher.entry.js +209 -0
  525. package/dist/esm/bs-composer-status-banner.entry.js +1 -1
  526. package/dist/esm/bs-composer.entry.js +1 -1
  527. package/dist/esm/bs-container.entry.js +1 -1
  528. package/dist/esm/bs-data-table.entry.js +2 -2
  529. package/dist/esm/bs-datepicker.entry.js +1 -1
  530. package/dist/esm/bs-dialog.entry.js +55 -4
  531. package/dist/esm/bs-divider.entry.js +1 -1
  532. package/dist/esm/bs-empty-state.entry.js +1 -1
  533. package/dist/esm/bs-error-page.entry.js +1 -1
  534. package/dist/esm/bs-file-upload-item.entry.js +1 -1
  535. package/dist/esm/bs-file-upload.entry.js +1 -1
  536. package/dist/esm/bs-global-search.entry.js +2 -2
  537. package/dist/esm/bs-grid.entry.js +2 -2
  538. package/dist/esm/bs-icon-button.entry.js +9 -2
  539. package/dist/esm/bs-icon-tile.entry.js +11 -3
  540. package/dist/esm/bs-inline-tab.entry.js +2 -2
  541. package/dist/esm/bs-input_3.entry.js +5 -5
  542. package/dist/esm/bs-key-caps.entry.js +1 -1
  543. package/dist/esm/bs-key.entry.js +1 -1
  544. package/dist/esm/bs-keyboard-shortcuts.entry.js +2 -2
  545. package/dist/esm/bs-list-item_2.entry.js +258 -0
  546. package/dist/esm/bs-list.entry.js +1 -1
  547. package/dist/esm/bs-mega-menu.entry.js +118 -0
  548. package/dist/esm/bs-message-list.entry.js +1 -1
  549. package/dist/esm/bs-message.entry.js +1 -1
  550. package/dist/esm/bs-navigation-drawer-item.entry.js +1 -1
  551. package/dist/esm/bs-navigation-drawer.entry.js +2 -2
  552. package/dist/esm/bs-navigation-header.entry.js +5 -2
  553. package/dist/esm/bs-page-header.entry.js +64 -0
  554. package/dist/esm/bs-pagination.entry.js +2 -2
  555. package/dist/esm/bs-presence.entry.js +86 -0
  556. package/dist/esm/bs-progress-linear.entry.js +2 -2
  557. package/dist/esm/bs-progress.entry.js +2 -2
  558. package/dist/esm/bs-qr-code.entry.js +1 -1
  559. package/dist/esm/bs-radio.entry.js +4 -4
  560. package/dist/esm/bs-search-item.entry.js +2 -2
  561. package/dist/esm/bs-session-timeout.entry.js +1 -1
  562. package/dist/esm/bs-shortcut-row.entry.js +1 -1
  563. package/dist/esm/bs-side-panel.entry.js +52 -3
  564. package/dist/esm/bs-slider.entry.js +1 -1
  565. package/dist/esm/bs-snackbar.entry.js +1 -1
  566. package/dist/esm/bs-source-link.entry.js +4 -3
  567. package/dist/esm/bs-spinner.entry.js +1 -1
  568. package/dist/esm/bs-split-pane.entry.js +1 -1
  569. package/dist/esm/bs-stack.entry.js +1 -1
  570. package/dist/esm/bs-stepper-step.entry.js +1 -1
  571. package/dist/esm/bs-stepper.entry.js +1 -1
  572. package/dist/esm/bs-switch.entry.js +4 -11
  573. package/dist/esm/bs-tab_3.entry.js +3 -3
  574. package/dist/esm/bs-timepicker.entry.js +2 -2
  575. package/dist/esm/bs-toast.entry.js +1 -1
  576. package/dist/esm/bs-tooltip-trigger.entry.js +62 -4
  577. package/dist/esm/bs-tooltip.entry.js +1 -1
  578. package/dist/esm/bs-tree-item.entry.js +3 -3
  579. package/dist/esm/bs-tree.entry.js +1 -1
  580. package/dist/esm/loader.js +1 -1
  581. package/dist/esm/motion-BSt9HeTa.js +39 -0
  582. package/dist/types/components/bs-accordion/bs-accordion.d.ts +22 -0
  583. package/dist/types/components/bs-app-recent-item/bs-app-recent-item.cmp.test.d.ts +1 -0
  584. package/dist/types/components/bs-app-recent-item/bs-app-recent-item.d.ts +51 -0
  585. package/dist/types/components/bs-app-recent-item/bs-app-recent-item.stories.d.ts +15 -0
  586. package/dist/types/components/bs-app-switcher/bs-app-switcher.cmp.test.d.ts +1 -0
  587. package/dist/types/components/bs-app-switcher/bs-app-switcher.d.ts +159 -0
  588. package/dist/types/components/bs-app-switcher/bs-app-switcher.stories.d.ts +34 -0
  589. package/dist/types/components/bs-app-tile/bs-app-tile.cmp.test.d.ts +1 -0
  590. package/dist/types/components/bs-app-tile/bs-app-tile.d.ts +51 -0
  591. package/dist/types/components/bs-app-tile/bs-app-tile.stories.d.ts +18 -0
  592. package/dist/types/components/bs-button/bs-button/bs-button.d.ts +3 -0
  593. package/dist/types/components/bs-button/bs-icon-button/bs-icon-button.d.ts +8 -0
  594. package/dist/types/components/bs-carousel/bs-carousel.d.ts +21 -1
  595. package/dist/types/components/bs-chatbot-response-action/bs-chatbot-response-action.d.ts +1 -0
  596. package/dist/types/components/bs-chatbot-suggestion-button/bs-chatbot-suggestion-button.d.ts +1 -0
  597. package/dist/types/components/bs-checkbox/bs-checkbox.d.ts +1 -0
  598. package/dist/types/components/bs-chip/bs-chip-filter/bs-chip-filter.d.ts +1 -0
  599. package/dist/types/components/bs-chip/bs-chip-input/bs-chip-input.d.ts +1 -0
  600. package/dist/types/components/bs-compact-menu-block/bs-compact-menu-block.cmp.test.d.ts +1 -0
  601. package/dist/types/components/bs-compact-menu-block/bs-compact-menu-block.d.ts +28 -0
  602. package/dist/types/components/bs-compact-menu-block/bs-compact-menu-block.stories.d.ts +10 -0
  603. package/dist/types/components/bs-company-switcher/bs-company-switcher.cmp.test.d.ts +1 -0
  604. package/dist/types/components/bs-company-switcher/bs-company-switcher.d.ts +130 -0
  605. package/dist/types/components/bs-company-switcher/bs-company-switcher.stories.d.ts +25 -0
  606. package/dist/types/components/bs-dialog/bs-dialog.d.ts +14 -0
  607. package/dist/types/components/bs-icon-tile/bs-icon-tile.d.ts +5 -0
  608. package/dist/types/components/bs-list-item/bs-list-item.d.ts +1 -0
  609. package/dist/types/components/bs-mega-menu/bs-mega-menu.cmp.test.d.ts +1 -0
  610. package/dist/types/components/bs-mega-menu/bs-mega-menu.d.ts +134 -0
  611. package/dist/types/components/bs-mega-menu/bs-mega-menu.stories.d.ts +55 -0
  612. package/dist/types/components/bs-menu-block/bs-menu-block.cmp.test.d.ts +1 -0
  613. package/dist/types/components/bs-menu-block/bs-menu-block.d.ts +47 -0
  614. package/dist/types/components/bs-menu-block/bs-menu-block.stories.d.ts +15 -0
  615. package/dist/types/components/bs-menu-item/bs-menu-item.d.ts +1 -0
  616. package/dist/types/components/bs-page-header/bs-page-header.cmp.test.d.ts +1 -0
  617. package/dist/types/components/bs-page-header/bs-page-header.d.ts +100 -0
  618. package/dist/types/components/bs-page-header/bs-page-header.stories.d.ts +41 -0
  619. package/dist/types/components/bs-pagination/bs-pagination.d.ts +1 -0
  620. package/dist/types/components/bs-popover/bs-popover.d.ts +15 -0
  621. package/dist/types/components/bs-presence/bs-presence.cmp.test.d.ts +1 -0
  622. package/dist/types/components/bs-presence/bs-presence.d.ts +50 -0
  623. package/dist/types/components/bs-presence/bs-presence.stories.d.ts +15 -0
  624. package/dist/types/components/bs-radio/bs-radio.d.ts +1 -0
  625. package/dist/types/components/bs-ripple/bs-ripple.cmp.test.d.ts +1 -0
  626. package/dist/types/components/bs-ripple/bs-ripple.d.ts +52 -0
  627. package/dist/types/components/bs-ripple/bs-ripple.stories.d.ts +11 -0
  628. package/dist/types/components/bs-search-item/bs-search-item.d.ts +1 -0
  629. package/dist/types/components/bs-side-panel/bs-side-panel.d.ts +13 -0
  630. package/dist/types/components/bs-source-link/bs-source-link.d.ts +1 -0
  631. package/dist/types/components/bs-switch/bs-switch.d.ts +1 -0
  632. package/dist/types/components/bs-tab/bs-inline-tab/bs-inline-tab.d.ts +1 -0
  633. package/dist/types/components/bs-tab/bs-tab/bs-tab.d.ts +1 -0
  634. package/dist/types/components/bs-tooltip-trigger/bs-tooltip-trigger.d.ts +18 -0
  635. package/dist/types/components/bs-tree-item/bs-tree-item.d.ts +1 -0
  636. package/dist/types/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.d.ts +7 -1
  637. package/dist/types/components.d.ts +2422 -0
  638. package/dist/types/svg-inline.d.ts +5 -0
  639. package/dist/types/utils/motion.d.ts +21 -0
  640. package/package.json +2 -1
  641. package/reference.d.ts +53 -23
  642. package/reference.json +1210 -98
  643. package/dist/brandsync-wc/p-044ac86c.entry.js +0 -1
  644. package/dist/brandsync-wc/p-046a53de.entry.js +0 -1
  645. package/dist/brandsync-wc/p-08e96f13.entry.js +0 -1
  646. package/dist/brandsync-wc/p-225148be.entry.js +0 -1
  647. package/dist/brandsync-wc/p-23b56775.entry.js +0 -1
  648. package/dist/brandsync-wc/p-32297416.entry.js +0 -1
  649. package/dist/brandsync-wc/p-361aef36.entry.js +0 -1
  650. package/dist/brandsync-wc/p-3789c7a5.entry.js +0 -1
  651. package/dist/brandsync-wc/p-3d2c62a6.entry.js +0 -1
  652. package/dist/brandsync-wc/p-3d7b0708.entry.js +0 -1
  653. package/dist/brandsync-wc/p-4b460eda.entry.js +0 -1
  654. package/dist/brandsync-wc/p-5eb5795f.entry.js +0 -1
  655. package/dist/brandsync-wc/p-61deb48c.entry.js +0 -1
  656. package/dist/brandsync-wc/p-79fc849c.entry.js +0 -1
  657. package/dist/brandsync-wc/p-7ed071fb.entry.js +0 -1
  658. package/dist/brandsync-wc/p-8048d033.entry.js +0 -1
  659. package/dist/brandsync-wc/p-8c9938a5.entry.js +0 -1
  660. package/dist/brandsync-wc/p-a5659499.entry.js +0 -1
  661. package/dist/brandsync-wc/p-ab14a07d.entry.js +0 -1
  662. package/dist/brandsync-wc/p-b4511ad3.entry.js +0 -1
  663. package/dist/brandsync-wc/p-baa39c08.entry.js +0 -1
  664. package/dist/brandsync-wc/p-be7aac52.entry.js +0 -1
  665. package/dist/brandsync-wc/p-c05ee501.entry.js +0 -1
  666. package/dist/brandsync-wc/p-d2a15599.entry.js +0 -1
  667. package/dist/brandsync-wc/p-d7956c51.entry.js +0 -1
  668. package/dist/brandsync-wc/p-dfad8c0a.entry.js +0 -1
  669. package/dist/brandsync-wc/p-e123b391.entry.js +0 -1
  670. package/dist/brandsync-wc/p-e8e22238.entry.js +0 -1
  671. package/dist/brandsync-wc/p-eb0dc5bf.entry.js +0 -1
  672. package/dist/cjs/bs-button.cjs.entry.js +0 -107
  673. package/dist/cjs/bs-list-item.cjs.entry.js +0 -66
  674. package/dist/cjs/bs-popover.cjs.entry.js +0 -153
  675. package/dist/cjs/bs-skeleton.cjs.entry.js +0 -51
  676. package/dist/components/p-B32Kl4IB.js +0 -1
  677. package/dist/components/p-BUpnOUIM.js +0 -1
  678. package/dist/components/p-BcbaiZLh.js +0 -1
  679. package/dist/components/p-ChcaPfNL.js +0 -1
  680. package/dist/components/p-Cpe2k7ZC.js +0 -1
  681. package/dist/components/p-D7AXo5NT.js +0 -1
  682. package/dist/components/p-D8bvv9QQ.js +0 -1
  683. package/dist/components/p-DMLfXpva.js +0 -1
  684. package/dist/components/p-DYDk73TF.js +0 -1
  685. package/dist/components/p-DYuzgzxI.js +0 -1
  686. package/dist/components/p-TAY9S9yG.js +0 -1
  687. package/dist/components/p-w-DkdA4O.js +0 -1
  688. package/dist/esm/bs-button.entry.js +0 -105
  689. package/dist/esm/bs-list-item.entry.js +0 -64
  690. package/dist/esm/bs-popover.entry.js +0 -151
  691. package/dist/esm/bs-skeleton.entry.js +0 -49
@@ -0,0 +1,443 @@
1
+ import { Host, h } from "@stencil/core";
2
+ import { cancelMotion, play, readMotion } from "../../utils/motion";
3
+ let uid = 0;
4
+ /**
5
+ * The dropdown panel under a navigation header tab: columns of links grouped under headings, an optional
6
+ * featured area on the right, and a footer with recently used items and a shortcut hint. Matches the Figma
7
+ * "Mega menu" (types Columns, Column with featured, Compact and Compact with featured).
8
+ *
9
+ * This is the panel only. Put it in `bs-navigation-header`'s `menu` slot, which anchors it under the bar at the
10
+ * header's full width, and show it from the tab that opens it; the panel does not open or close itself. Escape
11
+ * inside the panel fires `bsClose` so you can close it.
12
+ *
13
+ * There are two ways to show and hide it. Toggle the host's `hidden` attribute and it appears and disappears at once
14
+ * (the original contract, unchanged). Or set `open` and it fades and drops in from under the bar, then fades back out
15
+ * and is removed once the exit finishes. Leave `open` unset to keep using `hidden` only. `hidden` always wins: with it
16
+ * set the panel is not shown whatever `open` says.
17
+ *
18
+ * Built from `bs-card` (panel surface), `bs-menu-block` or `bs-compact-menu-block` (the links), `bs-divider` and
19
+ * `bs-key-caps` (the shortcut). The column layout, headings, featured text and footer row are plain layout
20
+ * markup: no component covers them.
21
+ *
22
+ * ## Responsive
23
+ * The panel reacts to its own width (a container query), not the viewport's. Below 600px it becomes one column (heading
24
+ * above its links, featured area below), titles and descriptions wrap, links are at least 44px tall, the footer stacks
25
+ * and the default shortcut hint is hidden (`display: none`; a keyboard hint means nothing on a touch screen). A custom
26
+ * `footer-end` slot is not hidden.
27
+ *
28
+ * ## When to use
29
+ * - A header tab that leads to many destinations that need grouping (Sell, Finance, Inventory).
30
+ *
31
+ * ## When not to use
32
+ * - A short list of commands -- use `bs-menu` in a `bs-popover`.
33
+ * - Switching app or company -- use `bs-app-switcher` or `bs-company-switcher`.
34
+ *
35
+ * `columns`, `featured` and `recent` are arrays or objects and must be set as JS properties. Each item's `icon` is
36
+ * the URL of a monochrome SVG. You own the data: listen to `bsMenuSelect` (cancelable: `preventDefault()` cancels the
37
+ * originating click).
38
+ *
39
+ * @slot featured - The featured area on the right. Overrides the `featured` prop.
40
+ * @slot footer-start - Left side of the footer. Overrides the recently used line.
41
+ * @slot footer-end - Right side of the footer. Overrides the shortcut hint.
42
+ * @part panel - The panel surface (`bs-card`).
43
+ * @part columns - The grid of columns and the featured area.
44
+ * @part column - One column (group).
45
+ * @part heading - A column heading.
46
+ * @part list - A column's list of links.
47
+ * @part block - A link (`bs-menu-block` or `bs-compact-menu-block`).
48
+ * @part featured - The featured area.
49
+ * @part featured-title - The featured title.
50
+ * @part featured-description - The featured description.
51
+ * @part footer - The footer.
52
+ * @part shortcut - The shortcut hint's key caps (`bs-key-caps`).
53
+ * @prop --bs-mega-menu-width - Panel width. Defaults to `1100px` (Figma); capped at the viewport.
54
+ * @prop --bs-mega-menu-radius - Panel corner radius. Aliased to `--bs-border-radius-150`.
55
+ * @prop --bs-mega-menu-bg - Panel background. Aliased to `--bs-surface-base`.
56
+ * @prop --bs-mega-menu-border-color - Panel border. Aliased to `--bs-border-default`.
57
+ * @prop --bs-mega-menu-shadow - Panel shadow (elevation level 3). Aliased to the `--bs-shadow-*` position and blur tokens and `--bs-elevation-high`.
58
+ * @prop --bs-mega-menu-padding - Padding around the columns. Aliased to `--bs-spacing-300` and `--bs-spacing-350`.
59
+ * @prop --bs-mega-menu-gap - Gap between columns. Aliased to `--bs-spacing-300`.
60
+ * @prop --bs-mega-menu-heading-color - Column headings. Aliased to `--bs-text-muted`.
61
+ * @prop --bs-mega-menu-text-color - Featured title. Aliased to `--bs-text-default`.
62
+ * @prop --bs-mega-menu-muted-color - Featured description and footer text. Aliased to `--bs-text-secondary`.
63
+ * @prop --bs-mega-menu-duration - Length of the open/close motion (`open` only). Aliased to `--bs-duration-default`.
64
+ * @prop --bs-mega-menu-easing - Curve of the open/close motion. Aliased to `--bs-easing-standard`.
65
+ * @prop --bs-mega-menu-distance - How far the panel drops while it fades. Aliased to `--bs-spacing-100`.
66
+ *
67
+ * Under `prefers-reduced-motion: reduce` (or a duration of `0ms`) setting `open` shows and hides the panel instantly.
68
+ */
69
+ export class BsMegaMenu {
70
+ el;
71
+ id = `bs-mm-${++uid}`;
72
+ /** `columns` shows menu blocks with icon and description; `compact` plain text links. */
73
+ type = 'columns';
74
+ /**
75
+ * Shows the panel with an enter/exit motion. Unset (the default) leaves visibility to the host's `hidden`
76
+ * attribute, which shows and hides instantly. `true` shows the panel; `false` fades it out and then removes it.
77
+ * The panel stays in the DOM and is `inert` while it fades out.
78
+ */
79
+ open;
80
+ /** The groups of links. JS property only (an array cannot be an attribute). */
81
+ columns = [];
82
+ /** The featured area on the right. JS property only. The `featured` slot overrides it. */
83
+ featured;
84
+ /** Recently used destinations, already translated, shown in the footer. JS property only. */
85
+ recent = [];
86
+ /** Accessible name of the panel. */
87
+ label = 'Menu';
88
+ /** Text before the recently used items. */
89
+ recentLabel = 'Recently used:';
90
+ /** Text before the shortcut keys. */
91
+ shortcutLabel = 'Can’t find it? Press';
92
+ /** The shortcut keys, joined by "+". */
93
+ shortcutKeys = 'Ctrl+K';
94
+ /** Accessible name of the shortcut keys. Defaults to the keys joined with " plus ". */
95
+ shortcutKeysLabel;
96
+ /** Fires when a link is chosen (click or Enter), with the item. Cancelable: `preventDefault()` cancels the originating click. */
97
+ bsMenuSelect;
98
+ /** Fires when Escape is pressed inside the panel, so you can close it. */
99
+ bsClose;
100
+ /** True while the exit motion plays after `open` went false, so the panel stays visible for it. */
101
+ closing = false;
102
+ panelEl;
103
+ enterPending = false;
104
+ exitPending = false;
105
+ motionRun = 0;
106
+ onOpenChange(next, prev) {
107
+ this.motionRun++;
108
+ cancelMotion(this.panelEl);
109
+ this.closing = false;
110
+ if (next === true) {
111
+ this.enterPending = true;
112
+ }
113
+ else if (next === false && prev === true && !this.el.hidden && readMotion(this.el, 'bs-mega-menu').ms > 0) {
114
+ this.closing = true;
115
+ this.exitPending = true;
116
+ }
117
+ }
118
+ componentDidRender() {
119
+ if (this.exitPending) {
120
+ this.exitPending = false;
121
+ if (this.closing && this.open === false) {
122
+ const { ms, easing, distance } = readMotion(this.el, 'bs-mega-menu');
123
+ const run = ++this.motionRun;
124
+ play(this.panelEl, [{ opacity: 1, transform: 'none' }, { opacity: 0, transform: `translateY(${-distance}px)` }], ms, easing, 'forwards').then(() => {
125
+ if (run === this.motionRun)
126
+ this.closing = false;
127
+ });
128
+ }
129
+ }
130
+ if (this.enterPending) {
131
+ this.enterPending = false;
132
+ const { ms, easing, distance } = readMotion(this.el, 'bs-mega-menu');
133
+ if (ms > 0 && this.open === true)
134
+ play(this.panelEl, [{ opacity: 0, transform: `translateY(${-distance}px)` }, { opacity: 1, transform: 'none' }], ms, easing);
135
+ }
136
+ }
137
+ select(item, ev) {
138
+ const e = this.bsMenuSelect.emit(item);
139
+ if (e.defaultPrevented)
140
+ ev.preventDefault();
141
+ }
142
+ onKeyDown = (ev) => {
143
+ if (ev.key === 'Escape')
144
+ this.bsClose.emit();
145
+ };
146
+ renderItem(item) {
147
+ const onClick = (ev) => this.select(item, ev);
148
+ return (h("li", null, this.type === 'compact' ? (h("bs-compact-menu-block", { part: "block", name: item.label, onClick: onClick })) : (h("bs-menu-block", { part: "block", name: item.label, description: item.description, icon: item.icon, badge: item.badge, onClick: onClick }))));
149
+ }
150
+ renderColumn(col) {
151
+ const hid = `${this.id}-h-${col.id}`;
152
+ return (h("div", { part: "column", class: "bs-mega-menu__column", role: "group", "aria-labelledby": hid }, h("div", { part: "heading", id: hid, class: "bs-mega-menu__heading" }, col.label), h("ul", { part: "list", role: "list", class: "bs-mega-menu__list" }, col.items.map(item => this.renderItem(item)))));
153
+ }
154
+ renderFeatured() {
155
+ const tid = `${this.id}-featured`;
156
+ return (h("div", { part: "featured", class: "bs-mega-menu__featured", role: "group", "aria-labelledby": this.featured ? tid : undefined }, h("slot", { name: "featured" }, this.featured && [
157
+ h("p", { part: "featured-title", id: tid, class: "bs-mega-menu__featured-title" }, this.featured.title),
158
+ this.featured.description && (h("p", { part: "featured-description", class: "bs-mega-menu__featured-description" }, this.featured.description)),
159
+ ])));
160
+ }
161
+ render() {
162
+ const hasFeatured = !!this.featured || !!this.el.querySelector(':scope > [slot="featured"]');
163
+ const tracks = this.columns.length + (hasFeatured ? 1 : 0);
164
+ const removed = this.open === false && !this.closing;
165
+ return (h(Host, { key: '036de0d22f6fd097b063cf3e18db04bbffac3590', "data-closed": removed ? '' : undefined }, h("bs-card", { key: '551c8aa2d4d2dcaca5d50d6fa1b694007685cde9', part: "panel", class: "bs-mega-menu", surface: "base", role: "navigation", "aria-label": this.label, onKeyDown: this.onKeyDown, inert: this.closing, ref: el => (this.panelEl = el) }, h("div", { key: '00fd782414ca6032b20fd5bb9d07c892389dd9fe', part: "columns", class: "bs-mega-menu__columns", style: { '--bs-mega-menu-tracks': String(Math.max(tracks, 1)) } }, this.columns.map(col => this.renderColumn(col)), hasFeatured && this.renderFeatured()), h("bs-divider", { key: 'f1e4ea55ae169e992cf7b48698016cc9c13382ff', decorative: true }), h("div", { key: '4a71517320983a6f01f81fdb44a893750ecc0516', part: "footer", class: "bs-mega-menu__footer" }, h("span", { key: 'b4192ab9c345ce706aaab400c0445b0ac50472f0', class: "bs-mega-menu__footer-start" }, h("slot", { key: 'ebdb724b4546c04243c7c5d65f9b2acfb001df6b', name: "footer-start" }, this.recent.length > 0 && `${this.recentLabel} ${this.recent.join(', ')}`)), h("span", { key: '78554ecd4de584ed7aedec599f6dd8556f4652cc', class: "bs-mega-menu__footer-end" }, h("slot", { key: '68bd8c2fc4a76dc78e4f0399a875bf509974d760', name: "footer-end" }, h("span", { key: '5a26bb373a4b3a0934df88c2f4b138fe153332e2', class: "bs-mega-menu__shortcut" }, this.shortcutLabel, h("bs-key-caps", { key: 'be2bc62ab7d2aaada1ab1539d341bead5d2f8897', part: "shortcut", keys: this.shortcutKeys, label: this.shortcutKeysLabel }))))))));
166
+ }
167
+ static get is() { return "bs-mega-menu"; }
168
+ static get encapsulation() { return "shadow"; }
169
+ static get originalStyleUrls() {
170
+ return {
171
+ "$": ["bs-mega-menu.css"]
172
+ };
173
+ }
174
+ static get styleUrls() {
175
+ return {
176
+ "$": ["bs-mega-menu.css"]
177
+ };
178
+ }
179
+ static get properties() {
180
+ return {
181
+ "type": {
182
+ "type": "string",
183
+ "mutable": false,
184
+ "complexType": {
185
+ "original": "BsMegaMenuType",
186
+ "resolved": "\"columns\" | \"compact\"",
187
+ "references": {
188
+ "BsMegaMenuType": {
189
+ "location": "local",
190
+ "path": "/home/runner/work/eg-brandsync-storybook/eg-brandsync-storybook/packages/wc/src/components/bs-mega-menu/bs-mega-menu.tsx",
191
+ "id": "src/components/bs-mega-menu/bs-mega-menu.tsx::BsMegaMenuType"
192
+ }
193
+ }
194
+ },
195
+ "required": false,
196
+ "optional": false,
197
+ "docs": {
198
+ "tags": [],
199
+ "text": "`columns` shows menu blocks with icon and description; `compact` plain text links."
200
+ },
201
+ "getter": false,
202
+ "setter": false,
203
+ "reflect": true,
204
+ "attribute": "type",
205
+ "defaultValue": "'columns'"
206
+ },
207
+ "open": {
208
+ "type": "boolean",
209
+ "mutable": false,
210
+ "complexType": {
211
+ "original": "boolean",
212
+ "resolved": "boolean",
213
+ "references": {}
214
+ },
215
+ "required": false,
216
+ "optional": true,
217
+ "docs": {
218
+ "tags": [],
219
+ "text": "Shows the panel with an enter/exit motion. Unset (the default) leaves visibility to the host's `hidden`\nattribute, which shows and hides instantly. `true` shows the panel; `false` fades it out and then removes it.\nThe panel stays in the DOM and is `inert` while it fades out."
220
+ },
221
+ "getter": false,
222
+ "setter": false,
223
+ "reflect": true,
224
+ "attribute": "open"
225
+ },
226
+ "columns": {
227
+ "type": "unknown",
228
+ "mutable": false,
229
+ "complexType": {
230
+ "original": "BsMegaMenuColumn[]",
231
+ "resolved": "BsMegaMenuColumn[]",
232
+ "references": {
233
+ "BsMegaMenuColumn": {
234
+ "location": "local",
235
+ "path": "/home/runner/work/eg-brandsync-storybook/eg-brandsync-storybook/packages/wc/src/components/bs-mega-menu/bs-mega-menu.tsx",
236
+ "id": "src/components/bs-mega-menu/bs-mega-menu.tsx::BsMegaMenuColumn"
237
+ }
238
+ }
239
+ },
240
+ "required": false,
241
+ "optional": false,
242
+ "docs": {
243
+ "tags": [],
244
+ "text": "The groups of links. JS property only (an array cannot be an attribute)."
245
+ },
246
+ "getter": false,
247
+ "setter": false,
248
+ "defaultValue": "[]"
249
+ },
250
+ "featured": {
251
+ "type": "unknown",
252
+ "mutable": false,
253
+ "complexType": {
254
+ "original": "BsMegaMenuFeatured",
255
+ "resolved": "BsMegaMenuFeatured",
256
+ "references": {
257
+ "BsMegaMenuFeatured": {
258
+ "location": "local",
259
+ "path": "/home/runner/work/eg-brandsync-storybook/eg-brandsync-storybook/packages/wc/src/components/bs-mega-menu/bs-mega-menu.tsx",
260
+ "id": "src/components/bs-mega-menu/bs-mega-menu.tsx::BsMegaMenuFeatured"
261
+ }
262
+ }
263
+ },
264
+ "required": false,
265
+ "optional": true,
266
+ "docs": {
267
+ "tags": [],
268
+ "text": "The featured area on the right. JS property only. The `featured` slot overrides it."
269
+ },
270
+ "getter": false,
271
+ "setter": false
272
+ },
273
+ "recent": {
274
+ "type": "unknown",
275
+ "mutable": false,
276
+ "complexType": {
277
+ "original": "string[]",
278
+ "resolved": "string[]",
279
+ "references": {}
280
+ },
281
+ "required": false,
282
+ "optional": false,
283
+ "docs": {
284
+ "tags": [],
285
+ "text": "Recently used destinations, already translated, shown in the footer. JS property only."
286
+ },
287
+ "getter": false,
288
+ "setter": false,
289
+ "defaultValue": "[]"
290
+ },
291
+ "label": {
292
+ "type": "string",
293
+ "mutable": false,
294
+ "complexType": {
295
+ "original": "string",
296
+ "resolved": "string",
297
+ "references": {}
298
+ },
299
+ "required": false,
300
+ "optional": false,
301
+ "docs": {
302
+ "tags": [],
303
+ "text": "Accessible name of the panel."
304
+ },
305
+ "getter": false,
306
+ "setter": false,
307
+ "reflect": false,
308
+ "attribute": "label",
309
+ "defaultValue": "'Menu'"
310
+ },
311
+ "recentLabel": {
312
+ "type": "string",
313
+ "mutable": false,
314
+ "complexType": {
315
+ "original": "string",
316
+ "resolved": "string",
317
+ "references": {}
318
+ },
319
+ "required": false,
320
+ "optional": false,
321
+ "docs": {
322
+ "tags": [],
323
+ "text": "Text before the recently used items."
324
+ },
325
+ "getter": false,
326
+ "setter": false,
327
+ "reflect": false,
328
+ "attribute": "recent-label",
329
+ "defaultValue": "'Recently used:'"
330
+ },
331
+ "shortcutLabel": {
332
+ "type": "string",
333
+ "mutable": false,
334
+ "complexType": {
335
+ "original": "string",
336
+ "resolved": "string",
337
+ "references": {}
338
+ },
339
+ "required": false,
340
+ "optional": false,
341
+ "docs": {
342
+ "tags": [],
343
+ "text": "Text before the shortcut keys."
344
+ },
345
+ "getter": false,
346
+ "setter": false,
347
+ "reflect": false,
348
+ "attribute": "shortcut-label",
349
+ "defaultValue": "'Can\u2019t find it? Press'"
350
+ },
351
+ "shortcutKeys": {
352
+ "type": "string",
353
+ "mutable": false,
354
+ "complexType": {
355
+ "original": "string",
356
+ "resolved": "string",
357
+ "references": {}
358
+ },
359
+ "required": false,
360
+ "optional": false,
361
+ "docs": {
362
+ "tags": [],
363
+ "text": "The shortcut keys, joined by \"+\"."
364
+ },
365
+ "getter": false,
366
+ "setter": false,
367
+ "reflect": false,
368
+ "attribute": "shortcut-keys",
369
+ "defaultValue": "'Ctrl+K'"
370
+ },
371
+ "shortcutKeysLabel": {
372
+ "type": "string",
373
+ "mutable": false,
374
+ "complexType": {
375
+ "original": "string",
376
+ "resolved": "string",
377
+ "references": {}
378
+ },
379
+ "required": false,
380
+ "optional": true,
381
+ "docs": {
382
+ "tags": [],
383
+ "text": "Accessible name of the shortcut keys. Defaults to the keys joined with \" plus \"."
384
+ },
385
+ "getter": false,
386
+ "setter": false,
387
+ "reflect": false,
388
+ "attribute": "shortcut-keys-label"
389
+ }
390
+ };
391
+ }
392
+ static get states() {
393
+ return {
394
+ "closing": {}
395
+ };
396
+ }
397
+ static get events() {
398
+ return [{
399
+ "method": "bsMenuSelect",
400
+ "name": "bsMenuSelect",
401
+ "bubbles": true,
402
+ "cancelable": true,
403
+ "composed": true,
404
+ "docs": {
405
+ "tags": [],
406
+ "text": "Fires when a link is chosen (click or Enter), with the item. Cancelable: `preventDefault()` cancels the originating click."
407
+ },
408
+ "complexType": {
409
+ "original": "BsMegaMenuItem",
410
+ "resolved": "BsMegaMenuItem",
411
+ "references": {
412
+ "BsMegaMenuItem": {
413
+ "location": "local",
414
+ "path": "/home/runner/work/eg-brandsync-storybook/eg-brandsync-storybook/packages/wc/src/components/bs-mega-menu/bs-mega-menu.tsx",
415
+ "id": "src/components/bs-mega-menu/bs-mega-menu.tsx::BsMegaMenuItem"
416
+ }
417
+ }
418
+ }
419
+ }, {
420
+ "method": "bsClose",
421
+ "name": "bsClose",
422
+ "bubbles": true,
423
+ "cancelable": true,
424
+ "composed": true,
425
+ "docs": {
426
+ "tags": [],
427
+ "text": "Fires when Escape is pressed inside the panel, so you can close it."
428
+ },
429
+ "complexType": {
430
+ "original": "void",
431
+ "resolved": "void",
432
+ "references": {}
433
+ }
434
+ }];
435
+ }
436
+ static get elementRef() { return "el"; }
437
+ static get watchers() {
438
+ return [{
439
+ "propName": "open",
440
+ "methodName": "onOpenChange"
441
+ }];
442
+ }
443
+ }
@@ -0,0 +1,188 @@
1
+ import { html } from "lit";
2
+ import { componentDescription } from "../../stories-utils";
3
+ import quotesIcon from "@phosphor-icons/core/assets/regular/file-text.svg?inline";
4
+ import ordersIcon from "@phosphor-icons/core/assets/regular/shopping-cart.svg?inline";
5
+ import invoicesIcon from "@phosphor-icons/core/assets/regular/currency-circle-dollar.svg?inline";
6
+ import subscriptionsIcon from "@phosphor-icons/core/assets/regular/arrows-clockwise.svg?inline";
7
+ import customersIcon from "@phosphor-icons/core/assets/regular/users.svg?inline";
8
+ import priceListsIcon from "@phosphor-icons/core/assets/regular/tag.svg?inline";
9
+ /** Phosphor (regular) icons as monochrome SVG data URIs; a real app supplies its own URLs. */
10
+ export const ICONS = {
11
+ quotes: quotesIcon,
12
+ orders: ordersIcon,
13
+ invoices: invoicesIcon,
14
+ subscriptions: subscriptionsIcon,
15
+ customers: customersIcon,
16
+ priceLists: priceListsIcon,
17
+ };
18
+ /** Sample data (invented for the stories and tests; not real EG products). */
19
+ export const COLUMNS = [
20
+ {
21
+ id: 'sell',
22
+ label: 'Sell',
23
+ items: [
24
+ { id: 'quotes', label: 'Quotes', description: 'Create and send price quotes', icon: ICONS.quotes },
25
+ { id: 'orders', label: 'Sales orders', description: 'Track orders from confirmation to delivery', icon: ICONS.orders },
26
+ ],
27
+ },
28
+ {
29
+ id: 'paid',
30
+ label: 'Get paid',
31
+ items: [
32
+ { id: 'invoices', label: 'Invoices', description: 'Send, remind and credit invoices', icon: ICONS.invoices },
33
+ { id: 'subscriptions', label: 'Subscriptions', description: 'Recurring billing for services', icon: ICONS.subscriptions, badge: 'New' },
34
+ ],
35
+ },
36
+ {
37
+ id: 'customers',
38
+ label: 'Customers',
39
+ items: [
40
+ { id: 'customers', label: 'Customers', description: 'Contacts, credit limits and history', icon: ICONS.customers },
41
+ { id: 'prices', label: 'Price lists', description: 'Customer-specific prices and discounts', icon: ICONS.priceLists },
42
+ ],
43
+ },
44
+ ];
45
+ export const COMPACT_COLUMNS = [
46
+ { id: 'accounting', label: 'Accounting', items: ['General ledger', 'Journal entries', 'Chart of accounts', 'Year-end closing'] },
47
+ { id: 'bank', label: 'Bank', items: ['Bank reconciliation', 'Payments', 'Direct debit', 'Bank rules'] },
48
+ { id: 'tax', label: 'Tax', items: ['VAT returns', 'SAF-T export', 'Tax codes'] },
49
+ { id: 'assets', label: 'Assets', items: ['Fixed assets', 'Depreciation', 'Disposals'] },
50
+ ].map(c => ({ id: c.id, label: c.label, items: c.items.map(label => ({ id: label, label })) }));
51
+ export const FEATURED = { title: 'Smarter payment reminders', description: 'Reminders are now sent at the time each customer is most likely to pay.' };
52
+ export const RECENT = ['Invoices', 'Sales orders'];
53
+ const meta = {
54
+ title: 'Components/bs-mega-menu',
55
+ excludeStories: /^[A-Z0-9_]+$/,
56
+ parameters: { layout: 'padded', docs: { description: { component: componentDescription('bs-mega-menu') } } },
57
+ argTypes: { type: { control: 'inline-radio', options: ['columns', 'compact'] }, featured: { control: 'boolean' } },
58
+ args: { type: 'columns', featured: false },
59
+ render: args => {
60
+ const compact = args.type === 'compact';
61
+ // Two columns fit beside the featured area in `columns`, three in `compact` (as in the Figma).
62
+ const columns = compact ? COMPACT_COLUMNS.slice(0, args.featured ? 3 : 4) : COLUMNS.slice(0, args.featured ? 2 : 3);
63
+ return html ` <bs-mega-menu .type=${args.type} .columns=${columns} .featured=${args.featured ? FEATURED : undefined} .recent=${RECENT} label="Sales menu"></bs-mega-menu> `;
64
+ },
65
+ };
66
+ export default meta;
67
+ export const Columns = {};
68
+ export const ColumnWithFeatured = { args: { featured: true } };
69
+ export const Compact = { args: { type: 'compact' } };
70
+ export const CompactWithFeatured = { args: { type: 'compact', featured: true } };
71
+ /** Wired up: pick a link, press Escape, and the last event is printed below. */
72
+ export const Interactive = {
73
+ render: () => {
74
+ const wrap = document.createElement('div');
75
+ const out = document.createElement('output');
76
+ out.style.cssText = 'display:block;margin-top:8px;font:14px/20px monospace;color:var(--bs-text-secondary)';
77
+ out.textContent = 'Pick a link or press Escape.';
78
+ const mm = document.createElement('bs-mega-menu');
79
+ mm.columns = COLUMNS;
80
+ mm.featured = undefined;
81
+ mm.recent = RECENT;
82
+ mm.setAttribute('label', 'Sales menu');
83
+ mm.addEventListener('bsMenuSelect', e => (out.textContent = `bsMenuSelect ${e.detail.label}`));
84
+ mm.addEventListener('bsClose', () => (out.textContent = 'bsClose'));
85
+ wrap.append(mm, out);
86
+ return wrap;
87
+ },
88
+ };
89
+ /**
90
+ * The consumer-owned trigger for the header's `menu` slot: the "Sales" tab toggles the panel's `open` (so it fades in and out),
91
+ * keeps `aria-expanded` in step (`aria-controls`/`aria-haspopup` are left off: `bs-tab` does not forward them to
92
+ * its inner button and axe rejects them on the host, see the mdx), closes it on `bsClose` (Escape), on an outside click and on a second
93
+ * click, and returns focus to the tab. `bs-navigation-header` only positions the panel.
94
+ */
95
+ function inNavigationHeader(type, featured) {
96
+ const compact = type === 'compact';
97
+ const columns = compact ? COMPACT_COLUMNS.slice(0, featured ? 3 : 4) : COLUMNS.slice(0, featured ? 2 : 3);
98
+ const menuId = `nav-header-mega-menu-${type}`;
99
+ // Each story instance gets its own state through these closures; the trigger/menu are looked up from the event.
100
+ const parts = (from) => {
101
+ const root = from.closest('[data-nav-header-story]');
102
+ return { root, tab: root.querySelector('bs-tab[data-controls]'), menu: root.querySelector('bs-mega-menu') };
103
+ };
104
+ const setOpen = (from, open, restoreFocus = false) => {
105
+ const { tab, menu } = parts(from);
106
+ menu.open = open;
107
+ tab.setAttribute('aria-expanded', String(open));
108
+ if (!open && restoreFocus)
109
+ tab.shadowRoot?.querySelector('button')?.focus();
110
+ };
111
+ const onTabClick = (e) => {
112
+ const { root, menu } = parts(e.currentTarget);
113
+ const opening = !menu.open;
114
+ setOpen(root, opening);
115
+ // Outside click closes it; attached once the panel opens, removed when it closes.
116
+ if (opening) {
117
+ const outside = (ev) => {
118
+ const path = ev.composedPath();
119
+ if (!menu.open || !root.isConnected)
120
+ return document.removeEventListener('click', outside);
121
+ if (!path.includes(menu) && !path.includes(e.currentTarget)) {
122
+ setOpen(root, false);
123
+ document.removeEventListener('click', outside);
124
+ }
125
+ };
126
+ setTimeout(() => document.addEventListener('click', outside));
127
+ }
128
+ };
129
+ const onClose = (e) => setOpen(e.currentTarget, false, true);
130
+ return html `
131
+ <div data-nav-header-story style="min-height: 560px; background: var(--bs-surface-base);">
132
+ <bs-navigation-header aria-label="Sample header">
133
+ <bs-tabs slot="left" type="bs-tab">
134
+ <bs-tab selected data-controls=${menuId} aria-expanded="false" @click=${onTabClick}>Sales</bs-tab>
135
+ <bs-tab>Finance</bs-tab>
136
+ <bs-tab>Inventory</bs-tab>
137
+ <bs-tab>Reports</bs-tab>
138
+ </bs-tabs>
139
+ <bs-input slot="right" type="search" placeholder="Search" style="width: 160px;"></bs-input>
140
+ <bs-avatar slot="right" type="initials" initials="SL" aria-label="Signed in as SL (sample)"></bs-avatar>
141
+ <bs-mega-menu
142
+ slot="menu"
143
+ id=${menuId}
144
+ .open=${false}
145
+ @bsClose=${onClose}
146
+ .type=${type}
147
+ .columns=${columns}
148
+ .featured=${featured ? FEATURED : undefined}
149
+ .recent=${RECENT}
150
+ label="Sales menu"
151
+ ></bs-mega-menu>
152
+ </bs-navigation-header>
153
+ <main style="padding: var(--bs-spacing-400); font-family: sans-serif; color: var(--bs-text-secondary);">Page content (sample). The open panel overlays this area.</main>
154
+ </div>
155
+ `;
156
+ }
157
+ /** The mega menu in `bs-navigation-header`'s `menu` slot, opened by the "Sales" tab (sample data; columns type). */
158
+ export const InNavigationHeader = {
159
+ name: 'In navigation header',
160
+ parameters: { layout: 'fullscreen' },
161
+ render: () => inNavigationHeader('columns', false),
162
+ };
163
+ /** Compact type with the featured area, in the same header composition. */
164
+ export const InNavigationHeaderCompact = {
165
+ args: {
166
+ featured: false,
167
+ },
168
+ name: 'In navigation header (compact with featured)',
169
+ parameters: { layout: 'fullscreen' },
170
+ render: () => inNavigationHeader('compact', true),
171
+ };
172
+ const PHONE_VIEWPORT = {
173
+ options: { phone375: { name: 'Phone (375px)', styles: { width: '375px', height: '812px' }, type: 'mobile' } },
174
+ };
175
+ /** The same composition at 375px: the tabs scroll inside the bar, the panel is one column with no shortcut hint. */
176
+ export const InNavigationHeaderMobile = {
177
+ name: 'In navigation header (mobile)',
178
+ parameters: { layout: 'fullscreen', viewport: PHONE_VIEWPORT },
179
+ globals: { viewport: { value: 'phone375', isRotated: false } },
180
+ render: () => inNavigationHeader('columns', false),
181
+ };
182
+ /** Compact with featured at 375px. */
183
+ export const InNavigationHeaderCompactMobile = {
184
+ name: 'In navigation header (compact with featured, mobile)',
185
+ parameters: { layout: 'fullscreen', viewport: PHONE_VIEWPORT },
186
+ globals: { viewport: { value: 'phone375', isRotated: false } },
187
+ render: () => inNavigationHeader('compact', true),
188
+ };
@@ -44,7 +44,7 @@ export class BsMenu {
44
44
  items[next].shadowRoot?.querySelector('button')?.focus();
45
45
  }
46
46
  render() {
47
- return (h("div", { key: '8acfe07941922ce4ad0bbb5eef11bb6eecba2c08', part: "list", class: "bs-menu", role: "menu" }, h("slot", { key: 'a3482ba2653512937d3c1f2b4fa798f1bd81859c' })));
47
+ return (h("div", { key: 'b6cc3be6f6df9dab73a50bc0c398ec48e9c81c04', part: "list", class: "bs-menu", role: "menu" }, h("slot", { key: 'ee7a51748f40144e04f9deac9117b175e9cc2f3d' })));
48
48
  }
49
49
  static get is() { return "bs-menu"; }
50
50
  static get encapsulation() { return "shadow"; }