@telesign/boreal-web-components 0.1.0-alpha.3 → 0.1.0-alpha.5

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 (588) hide show
  1. package/components-build/bds-avatar.d.ts +11 -0
  2. package/components-build/bds-avatar.js +1 -0
  3. package/components-build/bds-badge.d.ts +11 -0
  4. package/components-build/bds-badge.js +1 -0
  5. package/components-build/bds-banner.js +1 -1
  6. package/components-build/bds-button-group.d.ts +11 -0
  7. package/components-build/bds-button-group.js +1 -0
  8. package/components-build/bds-button.js +1 -1
  9. package/components-build/bds-checkbox-card.d.ts +11 -0
  10. package/components-build/bds-checkbox-card.js +1 -0
  11. package/components-build/bds-checkbox.js +1 -1
  12. package/components-build/bds-dialog.js +1 -1
  13. package/components-build/bds-divider.d.ts +11 -0
  14. package/components-build/bds-divider.js +1 -0
  15. package/components-build/bds-flag.js +1 -1
  16. package/components-build/bds-grid-item.d.ts +11 -0
  17. package/components-build/bds-grid-item.js +1 -0
  18. package/components-build/bds-grid.d.ts +11 -0
  19. package/components-build/bds-grid.js +1 -0
  20. package/components-build/bds-list-menu-item.d.ts +11 -0
  21. package/components-build/bds-list-menu-item.js +1 -0
  22. package/components-build/bds-list-menu.d.ts +11 -0
  23. package/components-build/bds-list-menu.js +1 -0
  24. package/components-build/bds-popover.js +1 -1
  25. package/components-build/bds-radio-button.d.ts +11 -0
  26. package/components-build/bds-radio-button.js +1 -0
  27. package/components-build/bds-radio-card.d.ts +11 -0
  28. package/components-build/bds-radio-card.js +1 -0
  29. package/components-build/bds-radio-group.d.ts +11 -0
  30. package/components-build/bds-radio-group.js +1 -0
  31. package/components-build/bds-radio.d.ts +11 -0
  32. package/components-build/bds-radio.js +1 -0
  33. package/components-build/bds-spinner.js +1 -1
  34. package/components-build/bds-status.d.ts +11 -0
  35. package/components-build/bds-status.js +1 -0
  36. package/components-build/bds-tag.d.ts +11 -0
  37. package/components-build/bds-tag.js +1 -0
  38. package/components-build/bds-text-field.js +1 -1
  39. package/components-build/bds-toggle.d.ts +11 -0
  40. package/components-build/bds-toggle.js +1 -0
  41. package/components-build/bds-tooltip.js +1 -1
  42. package/components-build/bds-typography.js +1 -1
  43. package/components-build/index.js +1 -1
  44. package/components-build/p-BSlaf0ff.js +1 -0
  45. package/components-build/p-Bfazyxqi.js +1 -0
  46. package/components-build/p-CPvuMm5C.js +1 -0
  47. package/components-build/p-Cbibqaz0.js +1 -0
  48. package/components-build/p-ClR-wgiT.js +1 -0
  49. package/components-build/p-DfaYciGa.js +1 -0
  50. package/components-build/p-Dh8DSJs_.js +1 -0
  51. package/components-build/p-DhSchGPI.js +1 -0
  52. package/components-build/p-N_tqtRV2.js +1 -0
  53. package/components-build/p-bAMuJ4Jx.js +1 -0
  54. package/components-build/p-c2z3tneT.js +1 -0
  55. package/components-build/p-dz9-Q2N8.js +1 -0
  56. package/components-build/{p-CaHOghy5.js → p-fUK0GCeC.js} +1 -1
  57. package/components-build/p-iq2UuV7c.js +1 -0
  58. package/components-build/p-kGnB15Lz.js +1 -0
  59. package/components-build/p-nxYzL9uu.js +1 -0
  60. package/custom-elements.json +4611 -891
  61. package/dist/boreal-web-components/boreal-web-components.esm.js +1 -1
  62. package/dist/boreal-web-components/boreal-web-components.js +1 -1
  63. package/dist/boreal-web-components/css/boreal.css +1066 -1074
  64. package/dist/boreal-web-components/css/global.css +403 -407
  65. package/dist/boreal-web-components/css/theme-connect.css +163 -164
  66. package/dist/boreal-web-components/css/theme-engage.css +163 -164
  67. package/dist/boreal-web-components/css/theme-protect.css +163 -164
  68. package/dist/boreal-web-components/css/theme-proximus.css +164 -165
  69. package/dist/boreal-web-components/p-024d90b0.system.entry.js +1 -0
  70. package/dist/boreal-web-components/p-06DrzEMB.system.js +1 -0
  71. package/dist/boreal-web-components/p-11e4c0ec.system.entry.js +1 -0
  72. package/dist/boreal-web-components/p-147d6652.system.entry.js +1 -0
  73. package/dist/boreal-web-components/p-148d510f.entry.js +1 -0
  74. package/dist/boreal-web-components/p-19f9352d.entry.js +1 -0
  75. package/dist/boreal-web-components/p-277f142e.system.entry.js +1 -0
  76. package/dist/boreal-web-components/{p-8c57e06a.entry.js → p-2adf2cd5.entry.js} +1 -1
  77. package/dist/boreal-web-components/p-2be4aa3a.system.entry.js +1 -0
  78. package/dist/boreal-web-components/p-340896b2.entry.js +1 -0
  79. package/dist/boreal-web-components/p-365e8e5c.system.entry.js +1 -0
  80. package/dist/boreal-web-components/p-3d4ce8eb.system.entry.js +1 -0
  81. package/dist/boreal-web-components/p-44a8fde5.entry.js +1 -0
  82. package/dist/boreal-web-components/{p-efe57901.system.entry.js → p-48ebbfbe.system.entry.js} +1 -1
  83. package/dist/boreal-web-components/{p-5fa53a80.system.entry.js → p-4dc01078.system.entry.js} +1 -1
  84. package/dist/boreal-web-components/p-5681b294.system.entry.js +1 -0
  85. package/dist/boreal-web-components/p-5ed75075.entry.js +1 -0
  86. package/dist/boreal-web-components/p-635f676b.system.entry.js +1 -0
  87. package/dist/boreal-web-components/p-6629be14.entry.js +1 -0
  88. package/dist/boreal-web-components/p-68b83680.system.entry.js +1 -0
  89. package/dist/boreal-web-components/p-6a60d134.system.entry.js +1 -0
  90. package/dist/boreal-web-components/p-71ed1e1d.entry.js +1 -0
  91. package/dist/boreal-web-components/p-732e98f1.system.entry.js +1 -0
  92. package/dist/boreal-web-components/p-77658a5b.system.entry.js +1 -0
  93. package/dist/boreal-web-components/p-7aff4c78.entry.js +1 -0
  94. package/dist/boreal-web-components/p-7bb88855.entry.js +1 -0
  95. package/dist/boreal-web-components/p-7d3a8f61.entry.js +1 -0
  96. package/dist/boreal-web-components/p-7e672cce.entry.js +1 -0
  97. package/dist/boreal-web-components/p-7ebc67c9.entry.js +1 -0
  98. package/dist/boreal-web-components/p-81401e2a.system.entry.js +1 -0
  99. package/dist/boreal-web-components/p-8289e506.entry.js +1 -0
  100. package/dist/boreal-web-components/p-82d15372.entry.js +1 -0
  101. package/dist/boreal-web-components/p-851c06f2.entry.js +1 -0
  102. package/dist/boreal-web-components/p-8a3716ec.entry.js +1 -0
  103. package/dist/boreal-web-components/p-8f4f8af0.system.entry.js +1 -0
  104. package/dist/boreal-web-components/p-93066db4.system.entry.js +1 -0
  105. package/dist/boreal-web-components/p-Bfazyxqi.js +1 -0
  106. package/dist/boreal-web-components/{p-D4EFsvs1.js → p-BqJlOB6b.js} +2 -2
  107. package/dist/boreal-web-components/p-BsZkk4oK.system.js +1 -0
  108. package/dist/boreal-web-components/p-C-g3hhl_.system.js +1 -0
  109. package/dist/boreal-web-components/p-C0P3gzq5.system.js +1 -0
  110. package/dist/boreal-web-components/p-C4HM8wQe.js +1 -0
  111. package/dist/boreal-web-components/p-CPvuMm5C.js +1 -0
  112. package/dist/boreal-web-components/p-CRMH6mfq.system.js +1 -0
  113. package/dist/boreal-web-components/p-CU_dRLdk.system.js +1 -0
  114. package/dist/boreal-web-components/p-CW4-dkCF.system.js +1 -0
  115. package/dist/boreal-web-components/p-CXz1RLGi.system.js +1 -0
  116. package/dist/boreal-web-components/p-DCKg5Cg_.system.js +2 -0
  117. package/dist/boreal-web-components/{p-BuxZeJbu.system.js → p-DSU8tkVw.system.js} +1 -1
  118. package/dist/boreal-web-components/p-DYlZcFrB.system.js +1 -0
  119. package/dist/boreal-web-components/p-DfaYciGa.js +1 -0
  120. package/dist/boreal-web-components/p-DhSchGPI.js +1 -0
  121. package/dist/boreal-web-components/p-DlVzZK7o.js +1 -0
  122. package/dist/boreal-web-components/p-DlYG-OVB.js +1 -0
  123. package/dist/boreal-web-components/p-DnIhjwCH.system.js +1 -0
  124. package/dist/boreal-web-components/p-DpnBDSUm.system.js +1 -0
  125. package/dist/boreal-web-components/p-Dwo1hcd9.js +1 -0
  126. package/dist/boreal-web-components/p-RhSdMyWk.system.js +1 -0
  127. package/dist/boreal-web-components/{p-CaHOghy5.js → p-U9yfbs7i.js} +1 -1
  128. package/dist/boreal-web-components/p-a73659ac.system.entry.js +1 -0
  129. package/dist/boreal-web-components/p-b2ad9535.system.entry.js +1 -0
  130. package/dist/boreal-web-components/p-d4c30d2b.entry.js +1 -0
  131. package/dist/boreal-web-components/p-db0c10b9.system.entry.js +1 -0
  132. package/dist/boreal-web-components/p-dc7d429c.entry.js +1 -0
  133. package/dist/boreal-web-components/p-dca16a3d.entry.js +1 -0
  134. package/dist/boreal-web-components/p-de846c43.system.entry.js +1 -0
  135. package/dist/boreal-web-components/p-df087e23.system.entry.js +1 -0
  136. package/dist/boreal-web-components/p-dfb4854e.entry.js +1 -0
  137. package/dist/boreal-web-components/p-dz9-Q2N8.js +1 -0
  138. package/dist/boreal-web-components/p-e09b4d14.system.entry.js +1 -0
  139. package/dist/boreal-web-components/p-e0a41cab.system.entry.js +1 -0
  140. package/dist/boreal-web-components/p-e55f2a8b.entry.js +1 -0
  141. package/dist/boreal-web-components/p-e7af1e1a.entry.js +1 -0
  142. package/dist/boreal-web-components/p-efe159aa.entry.js +1 -0
  143. package/dist/boreal-web-components/p-f65e9d0c.system.entry.js +1 -0
  144. package/dist/boreal-web-components/p-f792aa74.entry.js +1 -0
  145. package/dist/boreal-web-components/p-fb9a0e94.entry.js +1 -0
  146. package/dist/boreal-web-components/p-iq2UuV7c.js +1 -0
  147. package/dist/boreal-web-components/p-kGnB15Lz.js +1 -0
  148. package/dist/boreal-web-components/p-vzZJGcYF.system.js +1 -0
  149. package/dist/boreal-web-components/p-wREMI3WA.js +1 -0
  150. package/dist/boreal-web-components/scss/maps/_primitives.scss +404 -408
  151. package/dist/boreal-web-components/scss/maps/_theme-connect.scss +164 -165
  152. package/dist/boreal-web-components/scss/maps/_theme-engage.scss +164 -165
  153. package/dist/boreal-web-components/scss/maps/_theme-protect.scss +164 -165
  154. package/dist/boreal-web-components/scss/maps/_theme-proximus.scss +165 -166
  155. package/dist/boreal-web-components/scss/variables/_primitives.scss +404 -408
  156. package/dist/boreal-web-components/scss/variables/_theme-connect.scss +164 -165
  157. package/dist/boreal-web-components/scss/variables/_theme-engage.scss +164 -165
  158. package/dist/boreal-web-components/scss/variables/_theme-protect.scss +164 -165
  159. package/dist/boreal-web-components/scss/variables/_theme-proximus.scss +165 -166
  160. package/dist/cjs/BaseAttributes-DBBhKt7O.js +14 -0
  161. package/dist/cjs/Keys-rKl2za5q.js +18 -0
  162. package/dist/cjs/Logger-DnziItRH.js +51 -0
  163. package/dist/cjs/{attributes-wIHueigW.js → attributes-CgRFplrN.js} +3 -0
  164. package/dist/cjs/bds-avatar.cjs.entry.js +89 -0
  165. package/dist/cjs/bds-badge.cjs.entry.js +50 -0
  166. package/dist/cjs/bds-banner.cjs.entry.js +13 -6
  167. package/dist/cjs/bds-button-group.cjs.entry.js +95 -0
  168. package/dist/cjs/bds-button.cjs.entry.js +11 -17
  169. package/dist/cjs/bds-checkbox-card.cjs.entry.js +121 -0
  170. package/dist/cjs/bds-checkbox.cjs.entry.js +13 -6
  171. package/dist/cjs/bds-dialog.cjs.entry.js +8 -7
  172. package/dist/cjs/bds-divider.cjs.entry.js +46 -0
  173. package/dist/cjs/bds-flag.cjs.entry.js +3 -3
  174. package/dist/cjs/bds-grid-item.cjs.entry.js +93 -0
  175. package/dist/cjs/bds-grid.cjs.entry.js +37 -0
  176. package/dist/cjs/bds-list-menu-item.cjs.entry.js +493 -0
  177. package/dist/cjs/bds-list-menu.cjs.entry.js +199 -0
  178. package/dist/cjs/bds-popover.cjs.entry.js +19 -9
  179. package/dist/cjs/bds-radio-button.cjs.entry.js +60 -0
  180. package/dist/cjs/bds-radio-card.cjs.entry.js +76 -0
  181. package/dist/cjs/bds-radio-group.cjs.entry.js +285 -0
  182. package/dist/cjs/bds-radio.cjs.entry.js +60 -0
  183. package/dist/cjs/bds-spinner.cjs.entry.js +4 -4
  184. package/dist/cjs/bds-status.cjs.entry.js +59 -0
  185. package/dist/cjs/bds-tag.cjs.entry.js +140 -0
  186. package/dist/cjs/bds-text-field.cjs.entry.js +8 -17
  187. package/dist/cjs/bds-toggle.cjs.entry.js +187 -0
  188. package/dist/cjs/bds-tooltip_2.cjs.entry.js +321 -0
  189. package/dist/cjs/boreal-web-components.cjs.js +2 -2
  190. package/dist/cjs/coreColors-CQGojc0l.js +10 -0
  191. package/dist/cjs/{enum-DLblRCkQ.js → enum-DeTWfR0D.js} +3 -3
  192. package/dist/cjs/form-associated.mixin-BCR6bj29.js +33 -0
  193. package/dist/cjs/{anchored.mixin-CnIwkaUi.js → getOffset-k4ezB-eT.js} +45 -76
  194. package/dist/cjs/{index-BcSjvXJk.js → index-CwYIVC9N.js} +64 -0
  195. package/dist/cjs/{internals-X77qKxsK.js → internals-D8x7GMfR.js} +0 -31
  196. package/dist/cjs/loader.cjs.js +2 -2
  197. package/dist/cjs/menu-BxKaEajh.js +8 -0
  198. package/dist/cjs/orientation-DQAIleEJ.js +8 -0
  199. package/dist/cjs/{states-iIYiazaM.js → states-BweP5Vpu.js} +8 -0
  200. package/dist/cjs/validateProps-CJe9X5x8.js +42 -0
  201. package/dist/collection/collection-manifest.json +16 -0
  202. package/dist/collection/components/actions/bds-button/bds-button.css +19 -19
  203. package/dist/collection/components/actions/bds-button/bds-button.js +8 -8
  204. package/dist/collection/components/actions/bds-button/types/enum.js +3 -3
  205. package/dist/collection/components/actions/bds-button-group/bds-button-group.css +77 -0
  206. package/dist/collection/components/actions/bds-button-group/bds-button-group.js +245 -0
  207. package/dist/collection/components/actions/bds-button-group/types/IButtonGroup.js +1 -0
  208. package/dist/collection/components/actions/bds-list-menu/bds-list-menu/bds-list-menu.css +51 -0
  209. package/dist/collection/components/actions/bds-list-menu/bds-list-menu/bds-list-menu.js +400 -0
  210. package/dist/collection/components/actions/bds-list-menu/bds-list-menu/types/IListMenu.js +1 -0
  211. package/dist/collection/components/actions/bds-list-menu/bds-list-menu/types/enum.js +4 -0
  212. package/dist/collection/components/actions/bds-list-menu/bds-list-menu/types/types.js +1 -0
  213. package/dist/collection/components/actions/bds-list-menu/bds-list-menu-item/bds-list-menu-item.css +87 -0
  214. package/dist/collection/components/actions/bds-list-menu/bds-list-menu-item/bds-list-menu-item.js +482 -0
  215. package/dist/collection/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.js +1 -0
  216. package/dist/collection/components/actions/bds-list-menu/bds-list-menu-item/types/enum.js +4 -0
  217. package/dist/collection/components/actions/bds-list-menu/bds-list-menu-item/types/types.js +1 -0
  218. package/dist/collection/components/actions/bds-toggle/bds-toggle.css +120 -0
  219. package/dist/collection/components/actions/bds-toggle/bds-toggle.js +544 -0
  220. package/dist/collection/components/actions/bds-toggle/types/IEventChange.js +1 -0
  221. package/dist/collection/components/actions/bds-toggle/types/IToggle.js +1 -0
  222. package/dist/collection/components/actions/bds-toggle/types/enum.js +4 -0
  223. package/dist/collection/components/actions/bds-toggle/types/index.js +4 -0
  224. package/dist/collection/components/actions/bds-toggle/types/types.js +1 -0
  225. package/dist/collection/components/feedback/bds-badge/bds-badge.css +76 -0
  226. package/dist/collection/components/feedback/bds-badge/bds-badge.js +120 -0
  227. package/dist/collection/components/feedback/bds-badge/types/IBadge.js +1 -0
  228. package/dist/collection/components/feedback/bds-badge/types/enum.js +5 -0
  229. package/dist/collection/components/feedback/bds-banner/bds-banner.css +1 -2
  230. package/dist/collection/components/feedback/bds-banner/bds-banner.js +30 -6
  231. package/dist/collection/components/feedback/bds-spinner/bds-spinner.css +7 -8
  232. package/dist/collection/components/feedback/bds-spinner/bds-spinner.js +1 -1
  233. package/dist/collection/components/feedback/bds-status/bds-status.css +101 -0
  234. package/dist/collection/components/feedback/bds-status/bds-status.js +122 -0
  235. package/dist/collection/components/feedback/bds-status/types/IStatus.js +1 -0
  236. package/dist/collection/components/feedback/bds-status/types/enum.js +5 -0
  237. package/dist/collection/components/feedback/bds-status/types/types.js +1 -0
  238. package/dist/collection/components/feedback/bds-tag/bds-tag.css +202 -0
  239. package/dist/collection/components/feedback/bds-tag/bds-tag.js +375 -0
  240. package/dist/collection/components/feedback/bds-tag/types/ITag.js +1 -0
  241. package/dist/collection/components/feedback/bds-tag/types/enum.js +10 -0
  242. package/dist/collection/components/feedback/bds-tag/types/index.js +3 -0
  243. package/dist/collection/components/feedback/bds-tag/types/types.js +1 -0
  244. package/dist/collection/components/forms/bds-checkbox/bds-checkbox.css +9 -8
  245. package/dist/collection/components/forms/bds-checkbox/bds-checkbox.js +7 -1
  246. package/dist/collection/components/forms/bds-checkbox-card/bds-checkbox-card.css +127 -0
  247. package/dist/collection/components/forms/bds-checkbox-card/bds-checkbox-card.js +397 -0
  248. package/dist/collection/components/forms/bds-checkbox-card/types/ICheckboxCard.js +1 -0
  249. package/dist/collection/components/forms/bds-flag/bds-flag.js +1 -1
  250. package/dist/collection/components/forms/bds-radio/bds-radio.css +121 -0
  251. package/dist/collection/components/forms/bds-radio/bds-radio.js +238 -0
  252. package/dist/collection/components/forms/bds-radio/types/IRadio.js +1 -0
  253. package/dist/collection/components/forms/bds-radio-button/bds-radio-button.css +109 -0
  254. package/dist/collection/components/forms/bds-radio-button/bds-radio-button.js +238 -0
  255. package/dist/collection/components/forms/bds-radio-button/types/IRadioButton.js +1 -0
  256. package/dist/collection/components/forms/bds-radio-card/bds-radio-card.css +156 -0
  257. package/dist/collection/components/forms/bds-radio-card/bds-radio-card.js +307 -0
  258. package/dist/collection/components/forms/bds-radio-card/types/IRadioCard.js +1 -0
  259. package/dist/collection/components/forms/bds-radio-group/bds-radio-group.css +55 -0
  260. package/dist/collection/components/forms/bds-radio-group/bds-radio-group.js +620 -0
  261. package/dist/collection/components/forms/bds-radio-group/types/IRadioGroup.js +1 -0
  262. package/dist/collection/components/forms/bds-radio-group/types/enum.js +5 -0
  263. package/dist/collection/components/forms/bds-radio-group/types/types.js +1 -0
  264. package/dist/collection/components/forms/bds-text-field/bds-text-field.js +1 -1
  265. package/dist/collection/components/helpers/bds-divider/bds-divider.css +44 -0
  266. package/dist/collection/components/helpers/bds-divider/bds-divider.js +88 -0
  267. package/dist/collection/components/helpers/bds-divider/types/IDivider.js +1 -0
  268. package/dist/collection/components/helpers/bds-divider/types/enum.js +4 -0
  269. package/dist/collection/components/helpers/bds-divider/types/types.js +1 -0
  270. package/dist/collection/components/images-icons/bds-avatar/bds-avatar.css +52 -0
  271. package/dist/collection/components/images-icons/bds-avatar/bds-avatar.js +219 -0
  272. package/dist/collection/components/images-icons/bds-avatar/types/IAvatar.js +1 -0
  273. package/dist/collection/components/images-icons/bds-avatar/types/enum.js +5 -0
  274. package/dist/collection/components/images-icons/bds-avatar/types/index.js +3 -0
  275. package/dist/collection/components/images-icons/bds-avatar/types/types.js +1 -0
  276. package/dist/collection/components/layouts/bds-grid/grid/bds-grid.css +57 -0
  277. package/dist/collection/components/layouts/bds-grid/grid/bds-grid.js +100 -0
  278. package/dist/collection/components/layouts/bds-grid/grid/types/IGrid.js +1 -0
  279. package/dist/collection/components/layouts/bds-grid/grid/types/enum.js +4 -0
  280. package/dist/collection/components/layouts/bds-grid/grid/types/index.js +3 -0
  281. package/dist/collection/components/layouts/bds-grid/grid/types/types.js +1 -0
  282. package/dist/collection/components/layouts/bds-grid/grid-item/bds-grid-item.css +70 -0
  283. package/dist/collection/components/layouts/bds-grid/grid-item/bds-grid-item.js +306 -0
  284. package/dist/collection/components/layouts/bds-grid/grid-item/types/IGridItem.js +1 -0
  285. package/dist/collection/components/layouts/bds-grid/grid-item/types/enum.js +10 -0
  286. package/dist/collection/components/layouts/bds-grid/grid-item/types/index.js +3 -0
  287. package/dist/collection/components/layouts/bds-grid/grid-item/types/types.js +1 -0
  288. package/dist/collection/components/overlays/bds-dialog/bds-dialog.js +4 -3
  289. package/dist/collection/components/overlays/bds-popover/bds-popover.css +16 -2
  290. package/dist/collection/components/overlays/bds-popover/bds-popover.js +12 -4
  291. package/dist/collection/components/overlays/bds-popover/constants/Offset.js +1 -0
  292. package/dist/collection/components/overlays/bds-tooltip/bds-tooltip.css +2 -13
  293. package/dist/collection/components/overlays/bds-tooltip/bds-tooltip.js +6 -4
  294. package/dist/collection/components/overlays/bds-tooltip/constants/Offset.js +1 -0
  295. package/dist/collection/components/titles-text/bds-typography/bds-typography.css +9 -0
  296. package/dist/collection/components/titles-text/bds-typography/bds-typography.js +20 -19
  297. package/dist/collection/components/titles-text/bds-typography/utils/bds-typography-utils.js +2 -2
  298. package/dist/collection/css/boreal.css +1066 -1074
  299. package/dist/collection/css/global.css +403 -407
  300. package/dist/collection/css/theme-connect.css +163 -164
  301. package/dist/collection/css/theme-engage.css +163 -164
  302. package/dist/collection/css/theme-protect.css +163 -164
  303. package/dist/collection/css/theme-proximus.css +164 -165
  304. package/dist/collection/mixins/anchored.mixin.js +16 -3
  305. package/dist/collection/mixins/index.js +2 -0
  306. package/dist/collection/mixins/links.mixin.js +152 -0
  307. package/dist/collection/mixins/menu-behavior.mixin.js +119 -0
  308. package/dist/collection/scss/maps/_primitives.scss +404 -408
  309. package/dist/collection/scss/maps/_theme-connect.scss +164 -165
  310. package/dist/collection/scss/maps/_theme-engage.scss +164 -165
  311. package/dist/collection/scss/maps/_theme-protect.scss +164 -165
  312. package/dist/collection/scss/maps/_theme-proximus.scss +165 -166
  313. package/dist/collection/scss/variables/_primitives.scss +404 -408
  314. package/dist/collection/scss/variables/_theme-connect.scss +164 -165
  315. package/dist/collection/scss/variables/_theme-engage.scss +164 -165
  316. package/dist/collection/scss/variables/_theme-protect.scss +164 -165
  317. package/dist/collection/scss/variables/_theme-proximus.scss +165 -166
  318. package/dist/collection/services/floating/positioning.service.js +1 -1
  319. package/dist/collection/types/IFormProps.js +1 -0
  320. package/dist/collection/types/index.js +5 -0
  321. package/dist/collection/types/links.js +1 -0
  322. package/dist/collection/types/menu.js +8 -0
  323. package/dist/collection/types/orientation.js +4 -0
  324. package/dist/collection/types/position.js +6 -2
  325. package/dist/collection/utils/constants/common/Keys.js +10 -12
  326. package/dist/collection/utils/helpers/overlays/getOffset.js +13 -0
  327. package/dist/collection/utils/helpers/validateProps.js +21 -0
  328. package/dist/collection/utils/index.js +2 -1
  329. package/dist/collection/utils/menu/index.js +1 -0
  330. package/dist/collection/utils/menu/menu-item.utils.js +82 -0
  331. package/dist/collection/utils/{__test__ → testing}/helpers.js +10 -0
  332. package/dist/collection/utils/{__test__ → testing}/index.js +0 -2
  333. package/dist/collection/utils/testing/mocks/console.js +30 -0
  334. package/dist/collection/utils/testing/mocks/index.js +4 -0
  335. package/dist/css/boreal.css +1066 -1074
  336. package/dist/css/global.css +403 -407
  337. package/dist/css/theme-connect.css +163 -164
  338. package/dist/css/theme-engage.css +163 -164
  339. package/dist/css/theme-protect.css +163 -164
  340. package/dist/css/theme-proximus.css +164 -165
  341. package/dist/esm/BaseAttributes-DhSchGPI.js +12 -0
  342. package/dist/esm/Keys-DlYG-OVB.js +16 -0
  343. package/dist/esm/Logger-iq2UuV7c.js +49 -0
  344. package/dist/esm/{attributes-CaHOghy5.js → attributes-U9yfbs7i.js} +3 -0
  345. package/dist/esm/bds-avatar.entry.js +87 -0
  346. package/dist/esm/bds-badge.entry.js +48 -0
  347. package/dist/esm/bds-banner.entry.js +13 -6
  348. package/dist/esm/bds-button-group.entry.js +93 -0
  349. package/dist/esm/bds-button.entry.js +9 -15
  350. package/dist/esm/bds-checkbox-card.entry.js +119 -0
  351. package/dist/esm/bds-checkbox.entry.js +12 -5
  352. package/dist/esm/bds-dialog.entry.js +8 -7
  353. package/dist/esm/bds-divider.entry.js +44 -0
  354. package/dist/esm/bds-flag.entry.js +3 -3
  355. package/dist/esm/bds-grid-item.entry.js +91 -0
  356. package/dist/esm/bds-grid.entry.js +35 -0
  357. package/dist/esm/bds-list-menu-item.entry.js +491 -0
  358. package/dist/esm/bds-list-menu.entry.js +197 -0
  359. package/dist/esm/bds-popover.entry.js +18 -8
  360. package/dist/esm/bds-radio-button.entry.js +58 -0
  361. package/dist/esm/bds-radio-card.entry.js +74 -0
  362. package/dist/esm/bds-radio-group.entry.js +283 -0
  363. package/dist/esm/bds-radio.entry.js +58 -0
  364. package/dist/esm/bds-spinner.entry.js +4 -4
  365. package/dist/esm/bds-status.entry.js +57 -0
  366. package/dist/esm/bds-tag.entry.js +138 -0
  367. package/dist/esm/bds-text-field.entry.js +6 -15
  368. package/dist/esm/bds-toggle.entry.js +185 -0
  369. package/dist/esm/bds-tooltip_2.entry.js +318 -0
  370. package/dist/esm/boreal-web-components.js +3 -3
  371. package/dist/esm/coreColors-Dwo1hcd9.js +8 -0
  372. package/dist/esm/{enum-C8mRvnTA.js → enum-DlVzZK7o.js} +4 -4
  373. package/dist/esm/form-associated.mixin-C4HM8wQe.js +31 -0
  374. package/dist/esm/{anchored.mixin-Y3MkGc2X.js → getOffset-BYS3c13B.js} +43 -75
  375. package/dist/esm/{index-D4EFsvs1.js → index-BqJlOB6b.js} +64 -0
  376. package/dist/esm/{internals-Dy7QKP9e.js → internals-DfaYciGa.js} +1 -31
  377. package/dist/esm/loader.js +3 -3
  378. package/dist/esm/menu-dz9-Q2N8.js +6 -0
  379. package/dist/esm/orientation-CPvuMm5C.js +6 -0
  380. package/dist/esm/{states-BhTPNsBb.js → states-Bfazyxqi.js} +8 -1
  381. package/dist/esm/validateProps-kGnB15Lz.js +39 -0
  382. package/dist/esm-es5/BaseAttributes-DhSchGPI.js +1 -0
  383. package/dist/esm-es5/Keys-DlYG-OVB.js +1 -0
  384. package/dist/esm-es5/Logger-iq2UuV7c.js +1 -0
  385. package/dist/esm-es5/{attributes-CaHOghy5.js → attributes-U9yfbs7i.js} +1 -1
  386. package/dist/esm-es5/bds-avatar.entry.js +1 -0
  387. package/dist/esm-es5/bds-badge.entry.js +1 -0
  388. package/dist/esm-es5/bds-banner.entry.js +1 -1
  389. package/dist/esm-es5/bds-button-group.entry.js +1 -0
  390. package/dist/esm-es5/bds-button.entry.js +1 -1
  391. package/dist/esm-es5/bds-checkbox-card.entry.js +1 -0
  392. package/dist/esm-es5/bds-checkbox.entry.js +1 -1
  393. package/dist/esm-es5/bds-dialog.entry.js +1 -1
  394. package/dist/esm-es5/bds-divider.entry.js +1 -0
  395. package/dist/esm-es5/bds-flag.entry.js +1 -1
  396. package/dist/esm-es5/bds-grid-item.entry.js +1 -0
  397. package/dist/esm-es5/bds-grid.entry.js +1 -0
  398. package/dist/esm-es5/bds-list-menu-item.entry.js +1 -0
  399. package/dist/esm-es5/bds-list-menu.entry.js +1 -0
  400. package/dist/esm-es5/bds-popover.entry.js +1 -1
  401. package/dist/esm-es5/bds-radio-button.entry.js +1 -0
  402. package/dist/esm-es5/bds-radio-card.entry.js +1 -0
  403. package/dist/esm-es5/bds-radio-group.entry.js +1 -0
  404. package/dist/esm-es5/bds-radio.entry.js +1 -0
  405. package/dist/esm-es5/bds-spinner.entry.js +1 -1
  406. package/dist/esm-es5/bds-status.entry.js +1 -0
  407. package/dist/esm-es5/bds-tag.entry.js +1 -0
  408. package/dist/esm-es5/bds-text-field.entry.js +1 -1
  409. package/dist/esm-es5/bds-toggle.entry.js +1 -0
  410. package/dist/esm-es5/bds-tooltip_2.entry.js +1 -0
  411. package/dist/esm-es5/boreal-web-components.js +1 -1
  412. package/dist/esm-es5/coreColors-Dwo1hcd9.js +1 -0
  413. package/dist/esm-es5/enum-DlVzZK7o.js +1 -0
  414. package/dist/esm-es5/form-associated.mixin-C4HM8wQe.js +1 -0
  415. package/dist/esm-es5/getOffset-BYS3c13B.js +1 -0
  416. package/dist/esm-es5/index-BqJlOB6b.js +2 -0
  417. package/dist/esm-es5/internals-DfaYciGa.js +1 -0
  418. package/dist/esm-es5/loader.js +1 -1
  419. package/dist/esm-es5/menu-dz9-Q2N8.js +1 -0
  420. package/dist/esm-es5/orientation-CPvuMm5C.js +1 -0
  421. package/dist/esm-es5/states-Bfazyxqi.js +1 -0
  422. package/dist/esm-es5/validateProps-kGnB15Lz.js +1 -0
  423. package/dist/scss/maps/_primitives.scss +404 -408
  424. package/dist/scss/maps/_theme-connect.scss +164 -165
  425. package/dist/scss/maps/_theme-engage.scss +164 -165
  426. package/dist/scss/maps/_theme-protect.scss +164 -165
  427. package/dist/scss/maps/_theme-proximus.scss +165 -166
  428. package/dist/scss/variables/_primitives.scss +404 -408
  429. package/dist/scss/variables/_theme-connect.scss +164 -165
  430. package/dist/scss/variables/_theme-engage.scss +164 -165
  431. package/dist/scss/variables/_theme-protect.scss +164 -165
  432. package/dist/scss/variables/_theme-proximus.scss +165 -166
  433. package/dist/types/components/actions/bds-button/bds-button.d.ts +4 -4
  434. package/dist/types/components/actions/bds-button/types/enum.d.ts +3 -3
  435. package/dist/types/components/actions/bds-button-group/bds-button-group.d.ts +36 -0
  436. package/dist/types/components/actions/bds-button-group/types/IButtonGroup.d.ts +11 -0
  437. package/dist/types/components/actions/bds-list-menu/bds-list-menu/bds-list-menu.d.ts +74 -0
  438. package/dist/types/components/actions/bds-list-menu/bds-list-menu/types/IListMenu.d.ts +14 -0
  439. package/dist/types/components/actions/bds-list-menu/bds-list-menu/types/enum.d.ts +5 -0
  440. package/dist/types/components/actions/bds-list-menu/bds-list-menu/types/types.d.ts +3 -0
  441. package/dist/types/components/actions/bds-list-menu/bds-list-menu-item/bds-list-menu-item.d.ts +122 -0
  442. package/dist/types/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.d.ts +13 -0
  443. package/dist/types/components/actions/bds-list-menu/bds-list-menu-item/types/enum.d.ts +5 -0
  444. package/dist/types/components/actions/bds-list-menu/bds-list-menu-item/types/types.d.ts +3 -0
  445. package/dist/types/components/actions/bds-toggle/bds-toggle.d.ts +91 -0
  446. package/dist/types/components/actions/bds-toggle/types/IEventChange.d.ts +5 -0
  447. package/dist/types/components/actions/bds-toggle/types/IToggle.d.ts +12 -0
  448. package/dist/types/components/actions/bds-toggle/types/enum.d.ts +5 -0
  449. package/dist/types/components/actions/bds-toggle/types/index.d.ts +5 -0
  450. package/dist/types/components/actions/bds-toggle/types/types.d.ts +3 -0
  451. package/dist/types/components/feedback/bds-badge/bds-badge.d.ts +31 -0
  452. package/dist/types/components/feedback/bds-badge/types/IBadge.d.ts +6 -0
  453. package/dist/types/components/feedback/bds-badge/types/enum.d.ts +9 -0
  454. package/dist/types/components/feedback/bds-banner/bds-banner.d.ts +8 -4
  455. package/dist/types/components/feedback/bds-status/bds-status.d.ts +26 -0
  456. package/dist/types/components/feedback/bds-status/types/IStatus.d.ts +7 -0
  457. package/dist/types/components/feedback/bds-status/types/enum.d.ts +6 -0
  458. package/dist/types/components/feedback/bds-status/types/types.d.ts +3 -0
  459. package/dist/types/components/feedback/bds-tag/bds-tag.d.ts +71 -0
  460. package/dist/types/components/feedback/bds-tag/types/ITag.d.ts +13 -0
  461. package/dist/types/components/feedback/bds-tag/types/enum.d.ts +11 -0
  462. package/dist/types/components/feedback/bds-tag/types/index.d.ts +4 -0
  463. package/dist/types/components/feedback/bds-tag/types/types.d.ts +8 -0
  464. package/dist/types/components/forms/bds-checkbox/bds-checkbox.d.ts +2 -0
  465. package/dist/types/components/forms/bds-checkbox-card/bds-checkbox-card.d.ts +70 -0
  466. package/dist/types/components/forms/bds-checkbox-card/types/ICheckboxCard.d.ts +8 -0
  467. package/dist/types/components/forms/bds-flag/bds-flag.d.ts +3 -4
  468. package/dist/types/components/forms/bds-radio/bds-radio.d.ts +36 -0
  469. package/dist/types/components/forms/bds-radio/types/IRadio.d.ts +13 -0
  470. package/dist/types/components/forms/bds-radio-button/bds-radio-button.d.ts +36 -0
  471. package/dist/types/components/forms/bds-radio-button/types/IRadioButton.d.ts +13 -0
  472. package/dist/types/components/forms/bds-radio-card/bds-radio-card.d.ts +57 -0
  473. package/dist/types/components/forms/bds-radio-card/types/IRadioCard.d.ts +14 -0
  474. package/dist/types/components/forms/bds-radio-group/bds-radio-group.d.ts +82 -0
  475. package/dist/types/components/forms/bds-radio-group/types/IRadioGroup.d.ts +19 -0
  476. package/dist/types/components/forms/bds-radio-group/types/enum.d.ts +6 -0
  477. package/dist/types/components/forms/bds-radio-group/types/types.d.ts +3 -0
  478. package/dist/types/components/helpers/bds-divider/bds-divider.d.ts +26 -0
  479. package/dist/types/components/helpers/bds-divider/types/IDivider.d.ts +5 -0
  480. package/dist/types/components/helpers/bds-divider/types/enum.d.ts +5 -0
  481. package/dist/types/components/helpers/bds-divider/types/types.d.ts +3 -0
  482. package/dist/types/components/images-icons/bds-avatar/bds-avatar.d.ts +51 -0
  483. package/dist/types/components/images-icons/bds-avatar/types/IAvatar.d.ts +9 -0
  484. package/dist/types/components/images-icons/bds-avatar/types/enum.d.ts +6 -0
  485. package/dist/types/components/images-icons/bds-avatar/types/index.d.ts +4 -0
  486. package/dist/types/components/images-icons/bds-avatar/types/types.d.ts +3 -0
  487. package/dist/types/components/layouts/bds-grid/grid/bds-grid.d.ts +19 -0
  488. package/dist/types/components/layouts/bds-grid/grid/types/IGrid.d.ts +6 -0
  489. package/dist/types/components/layouts/bds-grid/grid/types/enum.d.ts +5 -0
  490. package/dist/types/components/layouts/bds-grid/grid/types/index.d.ts +4 -0
  491. package/dist/types/components/layouts/bds-grid/grid/types/types.d.ts +3 -0
  492. package/dist/types/components/layouts/bds-grid/grid-item/bds-grid-item.d.ts +31 -0
  493. package/dist/types/components/layouts/bds-grid/grid-item/types/IGridItem.d.ts +12 -0
  494. package/dist/types/components/layouts/bds-grid/grid-item/types/enum.d.ts +11 -0
  495. package/dist/types/components/layouts/bds-grid/grid-item/types/index.d.ts +4 -0
  496. package/dist/types/components/layouts/bds-grid/grid-item/types/types.d.ts +3 -0
  497. package/dist/types/components/overlays/bds-dialog/bds-dialog.d.ts +2 -2
  498. package/dist/types/components/overlays/bds-popover/bds-popover.d.ts +1 -0
  499. package/dist/types/components/overlays/bds-popover/constants/Offset.d.ts +2 -0
  500. package/dist/types/components/overlays/bds-tooltip/bds-tooltip.d.ts +1 -0
  501. package/dist/types/components/overlays/bds-tooltip/constants/Offset.d.ts +2 -0
  502. package/dist/types/components/titles-text/bds-typography/bds-typography.d.ts +9 -9
  503. package/dist/types/components/titles-text/bds-typography/types/ITypography.d.ts +2 -2
  504. package/dist/types/components/titles-text/bds-typography/utils/bds-typography-utils.d.ts +1 -1
  505. package/dist/types/components.d.ts +2542 -450
  506. package/dist/types/mixins/anchored.mixin.d.ts +5 -0
  507. package/dist/types/mixins/index.d.ts +2 -0
  508. package/dist/types/mixins/links.mixin.d.ts +85 -0
  509. package/dist/types/mixins/menu-behavior.mixin.d.ts +95 -0
  510. package/dist/types/types/IFormProps.d.ts +25 -0
  511. package/dist/types/types/index.d.ts +5 -0
  512. package/dist/types/types/links.d.ts +14 -0
  513. package/dist/types/types/menu.d.ts +16 -0
  514. package/dist/types/types/orientation.d.ts +6 -0
  515. package/dist/types/types/position.d.ts +6 -2
  516. package/dist/types/utils/constants/common/Keys.d.ts +12 -14
  517. package/dist/types/utils/helpers/overlays/getOffset.d.ts +9 -0
  518. package/dist/types/utils/helpers/validateProps.d.ts +11 -0
  519. package/dist/types/utils/index.d.ts +2 -1
  520. package/dist/types/utils/menu/index.d.ts +2 -0
  521. package/dist/types/utils/menu/menu-item.utils.d.ts +50 -0
  522. package/dist/types/utils/{__test__ → testing}/helpers.d.ts +8 -0
  523. package/dist/types/utils/{__test__ → testing}/index.d.ts +0 -2
  524. package/dist/types/utils/{__test__/backdrop-mock.d.ts → testing/mocks/backdrop.d.ts} +1 -1
  525. package/dist/types/utils/testing/mocks/console.d.ts +17 -0
  526. package/dist/types/utils/{__test__/mocks/ElementInternals.d.ts → testing/mocks/elementInternals.d.ts} +1 -1
  527. package/dist/types/utils/testing/mocks/index.d.ts +5 -0
  528. package/dist/types/utils/{__test__/popover-mock.d.ts → testing/mocks/popover.d.ts} +1 -1
  529. package/package.json +1 -1
  530. package/components-build/p-B6R9EVXK.js +0 -1
  531. package/components-build/p-BSpJ_e9f.js +0 -1
  532. package/components-build/p-BYEAJCas.js +0 -1
  533. package/components-build/p-BhTPNsBb.js +0 -1
  534. package/components-build/p-CYojP4vI.js +0 -1
  535. package/components-build/p-D5omSME4.js +0 -1
  536. package/components-build/p-vfAIdwy0.js +0 -1
  537. package/dist/boreal-web-components/p-07a933df.entry.js +0 -1
  538. package/dist/boreal-web-components/p-1bb2b33f.entry.js +0 -1
  539. package/dist/boreal-web-components/p-1fccea3f.system.entry.js +0 -1
  540. package/dist/boreal-web-components/p-20af732b.system.entry.js +0 -1
  541. package/dist/boreal-web-components/p-22378341.system.entry.js +0 -1
  542. package/dist/boreal-web-components/p-39c26e58.entry.js +0 -1
  543. package/dist/boreal-web-components/p-6210d025.entry.js +0 -1
  544. package/dist/boreal-web-components/p-6de2b44c.system.entry.js +0 -1
  545. package/dist/boreal-web-components/p-91b9e94e.entry.js +0 -1
  546. package/dist/boreal-web-components/p-9e06910d.system.entry.js +0 -1
  547. package/dist/boreal-web-components/p-BIJhHSAt.system.js +0 -1
  548. package/dist/boreal-web-components/p-BKRyWlfr.js +0 -1
  549. package/dist/boreal-web-components/p-BhTPNsBb.js +0 -1
  550. package/dist/boreal-web-components/p-BkDQsB4R.system.js +0 -1
  551. package/dist/boreal-web-components/p-C8mRvnTA.js +0 -1
  552. package/dist/boreal-web-components/p-CdKFZYxk.system.js +0 -1
  553. package/dist/boreal-web-components/p-DoDeP7KR.system.js +0 -1
  554. package/dist/boreal-web-components/p-Dtp4O0H2.system.js +0 -1
  555. package/dist/boreal-web-components/p-Dy7QKP9e.js +0 -1
  556. package/dist/boreal-web-components/p-GjKJvOVG.system.js +0 -2
  557. package/dist/boreal-web-components/p-ac64d4a5.system.entry.js +0 -1
  558. package/dist/boreal-web-components/p-b61fe06c.entry.js +0 -1
  559. package/dist/boreal-web-components/p-cdc87437.entry.js +0 -1
  560. package/dist/boreal-web-components/p-d8ec8557.system.entry.js +0 -1
  561. package/dist/boreal-web-components/p-ea889727.entry.js +0 -1
  562. package/dist/boreal-web-components/p-fa327346.system.entry.js +0 -1
  563. package/dist/boreal-web-components/p-fc2cb919.entry.js +0 -1
  564. package/dist/boreal-web-components/p-sDZFaZMN.system.js +0 -1
  565. package/dist/boreal-web-components/p-vfAIdwy0.js +0 -1
  566. package/dist/cjs/bds-tooltip.cjs.entry.js +0 -152
  567. package/dist/cjs/bds-typography.cjs.entry.js +0 -168
  568. package/dist/cjs/validateProps-BNOBk1Xs.js +0 -20
  569. package/dist/collection/utils/__test__/mocks/index.js +0 -1
  570. package/dist/esm/bds-tooltip.entry.js +0 -150
  571. package/dist/esm/bds-typography.entry.js +0 -166
  572. package/dist/esm/validateProps-vfAIdwy0.js +0 -18
  573. package/dist/esm-es5/anchored.mixin-Y3MkGc2X.js +0 -1
  574. package/dist/esm-es5/bds-tooltip.entry.js +0 -1
  575. package/dist/esm-es5/bds-typography.entry.js +0 -1
  576. package/dist/esm-es5/enum-C8mRvnTA.js +0 -1
  577. package/dist/esm-es5/index-D4EFsvs1.js +0 -2
  578. package/dist/esm-es5/internals-Dy7QKP9e.js +0 -1
  579. package/dist/esm-es5/states-BhTPNsBb.js +0 -1
  580. package/dist/esm-es5/validateProps-vfAIdwy0.js +0 -1
  581. package/dist/types/utils/__test__/mocks/index.d.ts +0 -2
  582. /package/dist/collection/utils/{__test__ → testing}/constants.js +0 -0
  583. /package/dist/collection/utils/{__test__ → testing}/fixtures.js +0 -0
  584. /package/dist/collection/utils/{__test__/backdrop-mock.js → testing/mocks/backdrop.js} +0 -0
  585. /package/dist/collection/utils/{__test__/mocks/ElementInternals.js → testing/mocks/elementInternals.js} +0 -0
  586. /package/dist/collection/utils/{__test__/popover-mock.js → testing/mocks/popover.js} +0 -0
  587. /package/dist/types/utils/{__test__ → testing}/constants.d.ts +0 -0
  588. /package/dist/types/utils/{__test__ → testing}/fixtures.d.ts +0 -0
@@ -0,0 +1,482 @@
1
+ import { Host, Mixin, h } from "@stencil/core";
2
+ import { COMPONENT_STATES, MENU_ROLES } from "../../../../types/index";
3
+ import { validatePropValue } from "../../../../utils/helpers/validateProps";
4
+ import { MenuItemBehavior, WithLinks } from "../../../../mixins/index";
5
+ import { LIST_MENU_ITEM_VARIANTS } from "./types/enum";
6
+ import { KEYBOARD } from "../../../../utils/index";
7
+ /**
8
+ * Component representing an individual item within a list menu for navigations and selection.
9
+ *
10
+ * @summary A menu item component that supports different variants, disabled state, and selection state, it also supports link behavior when the href prop is provided.
11
+ *
12
+ * @slot - Default slot for the content of the menu item.
13
+ *
14
+ * @attr {string} variant - Defines the visual style of the list menu item. Can be 'button' or 'label'. Default is 'button'.
15
+ * @attr {string} name - The name of the list menu item.
16
+ * @attr {boolean} disabled - If true, the menu item is non-interactive and styled as disabled.
17
+ * @attr {boolean} selected - If true, the menu item is styled as selected.
18
+ * @attr {boolean} activeItem - If true, the menu item is styled as active.
19
+ * @attr {string} value - The value associated with the menu item, emitted in events when activated.\
20
+ * @attr {string} href - The URL for the link. If provided, the menu item will behave as a link.
21
+ * @attr {boolean} newTab - If true, the link will open in a new tab. Only applicable if href is provided.
22
+ * @attr {boolean} downloadable - If true, the link will be treated as a download link. Only applicable if href is provided.
23
+ * @attr {string} filename - The suggested filename for the download. Only applicable if downloadable is true.
24
+ *
25
+ * @property {string} variant - Defines the visual style of the list menu item. Can be 'button' or 'label'. Default is 'button'.
26
+ * @property {string} name - The name of the list menu item.
27
+ * @property {boolean} disabled - If true, the menu item is non-interactive and styled as disabled.
28
+ * @property {boolean} selected - If true, the menu item is styled as selected.
29
+ * @property {boolean} activeItem - If true, the menu item is styled as active.
30
+ * @property {string} value - The value associated with the menu item, emitted in events when activated.
31
+ * @property {string} href - The URL for the link. If provided, the menu item will behave as a link.
32
+ * @property {boolean} newTab - If true, the link will open in a new tab. Only applicable if href is provided.
33
+ * @property {boolean} downloadable - If true, the link will be treated as a download link. Only applicable if href is provided.
34
+ * @property {string} filename - The suggested filename for the download. Only applicable if downloadable is true.
35
+ *
36
+ * @default 'button' - The default variant for the menu item is 'button', which is a standard clickable item.
37
+ * @default '' - By default, the name of the menu item is an empty string.
38
+ * @default false - By default, the menu item is not disabled and is interactive.
39
+ * @default false - By default, the menu item is not selected.
40
+ * @default false - By default, the menu item is not active.
41
+ * @default '' - By default, the value of the menu item is an empty string.
42
+ * @default '' - By default, the href is an empty string, meaning the menu item will not behave as a link.
43
+ * @default false - By default, the newTab property is false, meaning links will open in the same tab.
44
+ * @default false - By default, the downloadable property is false, meaning links will not be treated as download links.
45
+ * @default '' - By default, the filename is an empty string, meaning no suggested filename for downloads.
46
+ */
47
+ export class BdsListMenuItem extends Mixin(MenuItemBehavior, WithLinks) {
48
+ constructor() {
49
+ /**
50
+ * Defines the visual style of the list menu item.
51
+ * - 'button': A standard clickable item.
52
+ * - 'label': A non-interactive label, typically used for grouping items.
53
+ */
54
+ this.variant = LIST_MENU_ITEM_VARIANTS.BUTTON;
55
+ /** The name of the list menu item */
56
+ this.name = '';
57
+ /** Disabled state item */
58
+ this.disabled = false;
59
+ /** Selected item state */
60
+ this.selected = false;
61
+ /** Value associated with the menu item */
62
+ this.value = '';
63
+ /** Checkable state item, if is activated should be visible a checkbox */
64
+ this.checkable = false;
65
+ /** Active state item */
66
+ this.activeItem = false;
67
+ /** Link behavior props */
68
+ this.href = '';
69
+ /** Opens the link in a new tab if true */
70
+ this.newTab = false;
71
+ /** Makes the link downloadable if true */
72
+ this.download = '';
73
+ /** State to manage click and keyboard interaction states */
74
+ this.currentState = COMPONENT_STATES.DEFAULT;
75
+ /** Event to notify when the menu item is clicked */
76
+ this.handleClick = (e) => {
77
+ if (this.disabled || this.isLabelVariant)
78
+ return;
79
+ e.stopPropagation();
80
+ if (this.isLink) {
81
+ this.handleLinkClick(e);
82
+ return;
83
+ }
84
+ if (this.checkable && this.parentRole !== MENU_ROLES.LISTBOX)
85
+ this.selected = !this.selected;
86
+ this.bdsSelectItem.emit({
87
+ value: this.value,
88
+ selected: !this.selected,
89
+ });
90
+ };
91
+ /** Event to handle keydown navigation and trigger click */
92
+ this.handleKeyDown = (e) => {
93
+ if (this.disabled || this.isLabelVariant)
94
+ return;
95
+ this.handleKeyDownLogic(e, () => this.handleClick(e));
96
+ // If the item is a link, we dont activate this animation
97
+ if (!this.isLink || this.linkAttributes.download !== undefined) {
98
+ this.currentState =
99
+ e.key === KEYBOARD.Enter || e.key === KEYBOARD.Space ? COMPONENT_STATES.ACTIVE : this.currentState;
100
+ }
101
+ };
102
+ /** Event to handle keyup navigation and reset active state */
103
+ this.handleKeyUp = () => {
104
+ if (this.disabled || this.isLabelVariant)
105
+ return;
106
+ this.currentState = COMPONENT_STATES.DEFAULT;
107
+ };
108
+ super();
109
+ }
110
+ checkPropsVariant() {
111
+ validatePropValue(Object.values(LIST_MENU_ITEM_VARIANTS), LIST_MENU_ITEM_VARIANTS.BUTTON, this.el, 'variant');
112
+ }
113
+ /** Lifecycle method called before the component is loaded */
114
+ componentWillLoad() {
115
+ this.checkPropsVariant();
116
+ }
117
+ /** Improve aria resolve for checkable items */
118
+ get menuItemRoleExtended() {
119
+ if (!this.checkable)
120
+ return this.menuItemRole;
121
+ if (this.parentRole === 'listbox')
122
+ return 'checkbox';
123
+ return 'menuitemcheckbox';
124
+ }
125
+ /** Checks if the variant is a label */
126
+ get isLabelVariant() {
127
+ return this.variant === LIST_MENU_ITEM_VARIANTS.LABEL;
128
+ }
129
+ /** Returns the class map for the list menu item */
130
+ get classMap() {
131
+ return {
132
+ 'bds-list-item': true,
133
+ 'bds-list-item--disabled': this.disabled,
134
+ 'bds-list-item--selected': this.selected,
135
+ [`bds-list-item--state-${this.currentState}`]: true,
136
+ [`bds-list-item--${this.variant}`]: true,
137
+ };
138
+ }
139
+ /** Return the render for the label variant of the list menu item */
140
+ renderTypeLabel() {
141
+ return (h("bds-typography", { variant: "label", element: "label", align: "start", role: "presentation" }, h("slot", { name: "left-content" }), " ", h("slot", null)));
142
+ }
143
+ renderCheckbox() {
144
+ if (!this.checkable)
145
+ return null;
146
+ return (h("bds-checkbox", { checked: this.selected, disabled: this.disabled, name: `checkbox-${this.value}`, tabindex: "-1", style: { pointerEvents: 'none' }, inert: true }));
147
+ }
148
+ /** Return the render for the button variant of the list menu item */
149
+ renderTypeButton() {
150
+ return (h("div", { class: "bds-list-item__content" }, h("div", { class: "bds-list-item__content-left" }, this.renderCheckbox(), h("span", { class: "bds-list-item__content-left__icon" }, h("slot", { name: "left-content" })), h("span", { class: "bds-list-item__content-left__text" }, h("slot", null))), h("div", { class: "bds-list-item__content-right" }, h("slot", { name: "right-content" }))));
151
+ }
152
+ /** Main render */
153
+ render() {
154
+ let renderItem = this.renderTypeButton();
155
+ if (this.isLabelVariant)
156
+ renderItem = this.renderTypeLabel();
157
+ const linkAttributes = this.isLink ? { ...this.linkAttributes, tabindex: this.activeItem ? 0 : -1 } : {};
158
+ return (h(Host, { key: '0882d4cb677f6621518113c48e92d7e94cb71916', class: this.classMap, role: this.isLabelVariant ? 'presentation' : this.menuItemRoleExtended, "aria-selected": !this.checkable ? this.ariaSelected : false, "aria-checked": this.checkable ? this.ariaSelected : undefined, ...linkAttributes, tabIndex: this.isLabelVariant ? -1 : this.itemTabIndex, onClick: this.handleClick, onKeyDown: this.handleKeyDown, onKeyUp: this.handleKeyUp }, renderItem));
159
+ }
160
+ static get is() { return "bds-list-menu-item"; }
161
+ static get originalStyleUrls() {
162
+ return {
163
+ "$": ["bds-list-menu-item.scss"]
164
+ };
165
+ }
166
+ static get styleUrls() {
167
+ return {
168
+ "$": ["bds-list-menu-item.css"]
169
+ };
170
+ }
171
+ static get properties() {
172
+ return {
173
+ "variant": {
174
+ "type": "string",
175
+ "mutable": false,
176
+ "complexType": {
177
+ "original": "IListMenuItem['variant']",
178
+ "resolved": "\"button\" | \"label\"",
179
+ "references": {
180
+ "IListMenuItem": {
181
+ "location": "import",
182
+ "path": "./types/IListMenuItem",
183
+ "id": "src/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.ts::IListMenuItem",
184
+ "referenceLocation": "IListMenuItem"
185
+ }
186
+ }
187
+ },
188
+ "required": false,
189
+ "optional": false,
190
+ "docs": {
191
+ "tags": [],
192
+ "text": "Defines the visual style of the list menu item.\n- 'button': A standard clickable item.\n- 'label': A non-interactive label, typically used for grouping items."
193
+ },
194
+ "getter": false,
195
+ "setter": false,
196
+ "reflect": true,
197
+ "attribute": "variant",
198
+ "defaultValue": "LIST_MENU_ITEM_VARIANTS.BUTTON"
199
+ },
200
+ "name": {
201
+ "type": "string",
202
+ "mutable": false,
203
+ "complexType": {
204
+ "original": "IListMenuItem['name']",
205
+ "resolved": "string",
206
+ "references": {
207
+ "IListMenuItem": {
208
+ "location": "import",
209
+ "path": "./types/IListMenuItem",
210
+ "id": "src/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.ts::IListMenuItem",
211
+ "referenceLocation": "IListMenuItem"
212
+ }
213
+ }
214
+ },
215
+ "required": false,
216
+ "optional": false,
217
+ "docs": {
218
+ "tags": [],
219
+ "text": "The name of the list menu item"
220
+ },
221
+ "getter": false,
222
+ "setter": false,
223
+ "reflect": false,
224
+ "attribute": "name",
225
+ "defaultValue": "''"
226
+ },
227
+ "disabled": {
228
+ "type": "boolean",
229
+ "mutable": false,
230
+ "complexType": {
231
+ "original": "IListMenuItem['disabled']",
232
+ "resolved": "boolean",
233
+ "references": {
234
+ "IListMenuItem": {
235
+ "location": "import",
236
+ "path": "./types/IListMenuItem",
237
+ "id": "src/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.ts::IListMenuItem",
238
+ "referenceLocation": "IListMenuItem"
239
+ }
240
+ }
241
+ },
242
+ "required": false,
243
+ "optional": false,
244
+ "docs": {
245
+ "tags": [],
246
+ "text": "Disabled state item"
247
+ },
248
+ "getter": false,
249
+ "setter": false,
250
+ "reflect": true,
251
+ "attribute": "disabled",
252
+ "defaultValue": "false"
253
+ },
254
+ "selected": {
255
+ "type": "boolean",
256
+ "mutable": true,
257
+ "complexType": {
258
+ "original": "IListMenuItem['selected']",
259
+ "resolved": "boolean",
260
+ "references": {
261
+ "IListMenuItem": {
262
+ "location": "import",
263
+ "path": "./types/IListMenuItem",
264
+ "id": "src/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.ts::IListMenuItem",
265
+ "referenceLocation": "IListMenuItem"
266
+ }
267
+ }
268
+ },
269
+ "required": false,
270
+ "optional": false,
271
+ "docs": {
272
+ "tags": [],
273
+ "text": "Selected item state"
274
+ },
275
+ "getter": false,
276
+ "setter": false,
277
+ "reflect": true,
278
+ "attribute": "selected",
279
+ "defaultValue": "false"
280
+ },
281
+ "value": {
282
+ "type": "string",
283
+ "mutable": false,
284
+ "complexType": {
285
+ "original": "IListMenuItem['value']",
286
+ "resolved": "string",
287
+ "references": {
288
+ "IListMenuItem": {
289
+ "location": "import",
290
+ "path": "./types/IListMenuItem",
291
+ "id": "src/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.ts::IListMenuItem",
292
+ "referenceLocation": "IListMenuItem"
293
+ }
294
+ }
295
+ },
296
+ "required": false,
297
+ "optional": false,
298
+ "docs": {
299
+ "tags": [],
300
+ "text": "Value associated with the menu item"
301
+ },
302
+ "getter": false,
303
+ "setter": false,
304
+ "reflect": true,
305
+ "attribute": "value",
306
+ "defaultValue": "''"
307
+ },
308
+ "checkable": {
309
+ "type": "boolean",
310
+ "mutable": false,
311
+ "complexType": {
312
+ "original": "IListMenuItem['checkable']",
313
+ "resolved": "boolean",
314
+ "references": {
315
+ "IListMenuItem": {
316
+ "location": "import",
317
+ "path": "./types/IListMenuItem",
318
+ "id": "src/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.ts::IListMenuItem",
319
+ "referenceLocation": "IListMenuItem"
320
+ }
321
+ }
322
+ },
323
+ "required": false,
324
+ "optional": false,
325
+ "docs": {
326
+ "tags": [],
327
+ "text": "Checkable state item, if is activated should be visible a checkbox"
328
+ },
329
+ "getter": false,
330
+ "setter": false,
331
+ "reflect": true,
332
+ "attribute": "checkable",
333
+ "defaultValue": "false"
334
+ },
335
+ "activeItem": {
336
+ "type": "boolean",
337
+ "mutable": false,
338
+ "complexType": {
339
+ "original": "IListMenuItem['activeItem']",
340
+ "resolved": "boolean",
341
+ "references": {
342
+ "IListMenuItem": {
343
+ "location": "import",
344
+ "path": "./types/IListMenuItem",
345
+ "id": "src/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.ts::IListMenuItem",
346
+ "referenceLocation": "IListMenuItem"
347
+ }
348
+ }
349
+ },
350
+ "required": false,
351
+ "optional": false,
352
+ "docs": {
353
+ "tags": [],
354
+ "text": "Active state item"
355
+ },
356
+ "getter": false,
357
+ "setter": false,
358
+ "reflect": true,
359
+ "attribute": "active-item",
360
+ "defaultValue": "false"
361
+ },
362
+ "href": {
363
+ "type": "string",
364
+ "mutable": false,
365
+ "complexType": {
366
+ "original": "IListMenuItem['href']",
367
+ "resolved": "string",
368
+ "references": {
369
+ "IListMenuItem": {
370
+ "location": "import",
371
+ "path": "./types/IListMenuItem",
372
+ "id": "src/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.ts::IListMenuItem",
373
+ "referenceLocation": "IListMenuItem"
374
+ }
375
+ }
376
+ },
377
+ "required": false,
378
+ "optional": false,
379
+ "docs": {
380
+ "tags": [],
381
+ "text": "Link behavior props"
382
+ },
383
+ "getter": false,
384
+ "setter": false,
385
+ "reflect": false,
386
+ "attribute": "href",
387
+ "defaultValue": "''"
388
+ },
389
+ "newTab": {
390
+ "type": "boolean",
391
+ "mutable": false,
392
+ "complexType": {
393
+ "original": "IListMenuItem['newTab']",
394
+ "resolved": "boolean",
395
+ "references": {
396
+ "IListMenuItem": {
397
+ "location": "import",
398
+ "path": "./types/IListMenuItem",
399
+ "id": "src/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.ts::IListMenuItem",
400
+ "referenceLocation": "IListMenuItem"
401
+ }
402
+ }
403
+ },
404
+ "required": false,
405
+ "optional": false,
406
+ "docs": {
407
+ "tags": [],
408
+ "text": "Opens the link in a new tab if true"
409
+ },
410
+ "getter": false,
411
+ "setter": false,
412
+ "reflect": false,
413
+ "attribute": "new-tab",
414
+ "defaultValue": "false"
415
+ },
416
+ "download": {
417
+ "type": "string",
418
+ "mutable": false,
419
+ "complexType": {
420
+ "original": "IListMenuItem['download']",
421
+ "resolved": "string",
422
+ "references": {
423
+ "IListMenuItem": {
424
+ "location": "import",
425
+ "path": "./types/IListMenuItem",
426
+ "id": "src/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.ts::IListMenuItem",
427
+ "referenceLocation": "IListMenuItem"
428
+ }
429
+ }
430
+ },
431
+ "required": false,
432
+ "optional": false,
433
+ "docs": {
434
+ "tags": [],
435
+ "text": "Makes the link downloadable if true"
436
+ },
437
+ "getter": false,
438
+ "setter": false,
439
+ "reflect": false,
440
+ "attribute": "download",
441
+ "defaultValue": "''"
442
+ }
443
+ };
444
+ }
445
+ static get states() {
446
+ return {
447
+ "currentState": {}
448
+ };
449
+ }
450
+ static get events() {
451
+ return [{
452
+ "method": "bdsSelectItem",
453
+ "name": "bdsSelectItem",
454
+ "bubbles": true,
455
+ "cancelable": true,
456
+ "composed": true,
457
+ "docs": {
458
+ "tags": [],
459
+ "text": "Event handler for activation"
460
+ },
461
+ "complexType": {
462
+ "original": "IListMenuItemEvent",
463
+ "resolved": "IListMenuItemEvent",
464
+ "references": {
465
+ "IListMenuItemEvent": {
466
+ "location": "import",
467
+ "path": "./types/IListMenuItem",
468
+ "id": "src/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.ts::IListMenuItemEvent",
469
+ "referenceLocation": "IListMenuItemEvent"
470
+ }
471
+ }
472
+ }
473
+ }];
474
+ }
475
+ static get elementRef() { return "el"; }
476
+ static get watchers() {
477
+ return [{
478
+ "propName": "variant",
479
+ "methodName": "checkPropsVariant"
480
+ }];
481
+ }
482
+ }
@@ -0,0 +1,4 @@
1
+ export const LIST_MENU_ITEM_VARIANTS = {
2
+ LABEL: 'label',
3
+ BUTTON: 'button',
4
+ };
@@ -0,0 +1,120 @@
1
+ @charset "UTF-8";
2
+ /**
3
+ * Common SCSS placeholder selectors shared across form and layout components.
4
+ * This file is injected globally via `injectGlobalPaths` in `stencil.config.ts`,
5
+ * so all component stylesheets can `@extend` these placeholders without an explicit import.
6
+ *
7
+ * NOTE: Placeholders must only use raw CSS values — `$boreal-*` token variables
8
+ * are not available at this level util use style-guidelines.
9
+ */
10
+ /**
11
+ * TODO: Refactor to use styleguidelines this work as first draft
12
+ **/
13
+ /**
14
+ * This file contains mixins and functions for common interactions styles such as focus rings and transitions.
15
+ * These are used across multiple components to ensure consistency in interaction feedback.
16
+ */
17
+ .bds-toggle {
18
+ font-family: var(--boreal-typography-font-family-primary);
19
+ display: inline-block;
20
+ }
21
+ .bds-toggle__container {
22
+ display: flex;
23
+ align-items: center;
24
+ gap: var(--boreal-spacing-2xs);
25
+ outline: none;
26
+ width: max-content;
27
+ }
28
+ .bds-toggle__container:focus {
29
+ outline: none;
30
+ }
31
+ .bds-toggle__container--inverse {
32
+ flex-direction: row-reverse;
33
+ }
34
+ .bds-toggle:active, .bds-toggle:focus-visible {
35
+ outline: none;
36
+ }
37
+ .bds-toggle:active .bds-toggle__input:not([disabled]) + .bds-toggle__slider, .bds-toggle:focus-visible .bds-toggle__input:not([disabled]) + .bds-toggle__slider {
38
+ box-shadow: 0 0 0 1px var(--boreal-ui-inverse), 0 0 0 3px var(--boreal-stroke-focus);
39
+ }
40
+ .bds-toggle .bds-toggle__input:active:not([disabled]) + .bds-toggle__slider,
41
+ .bds-toggle .bds-toggle__input:focus-visible:not([disabled]) + .bds-toggle__slider {
42
+ box-shadow: 0 0 0 1px var(--boreal-ui-inverse), 0 0 0 3px var(--boreal-stroke-focus);
43
+ }
44
+ .bds-toggle:hover:not(:active):not([checked]):not([disabled]) .bds-toggle__slider, .bds-toggle:hover:not(:active):focus-within:not([checked]) .bds-toggle__slider {
45
+ box-shadow: 0 1px 2px 0 var(--boreal-stroke-default-light);
46
+ }
47
+ .bds-toggle__switch {
48
+ position: relative;
49
+ display: inline-block;
50
+ width: var(--boreal-spacing-3xl);
51
+ height: var(--boreal-spacing-l);
52
+ }
53
+ .bds-toggle__input {
54
+ opacity: 0;
55
+ width: 0;
56
+ height: 0;
57
+ }
58
+ .bds-toggle__input:not(:checked) + .bds-toggle__slider {
59
+ border: 1px solid var(--boreal-stroke-default-light);
60
+ }
61
+ .bds-toggle__input:checked + .bds-toggle__slider {
62
+ background-color: var(--boreal-ui-primary-base);
63
+ }
64
+ .bds-toggle__input:checked + .bds-toggle__slider::before {
65
+ -webkit-transform: translateX(var(--boreal-spacing-l));
66
+ -ms-transform: translateX(var(--boreal-spacing-l));
67
+ transform: translateX(var(--boreal-spacing-l));
68
+ }
69
+ .bds-toggle__input:disabled + .bds-toggle__slider {
70
+ background-color: var(--boreal-ui-disabled);
71
+ cursor: default;
72
+ }
73
+ .bds-toggle__input:disabled + .bds-toggle__slider::before {
74
+ background-color: var(--boreal-icon-default-light);
75
+ }
76
+ .bds-toggle__input:disabled:checked + .bds-toggle__slider {
77
+ background-color: var(--boreal-ui-primary-light);
78
+ }
79
+ .bds-toggle__input:disabled:checked + .bds-toggle__slider::before {
80
+ background-color: var(--boreal-icon-inverse);
81
+ }
82
+ .bds-toggle__slider {
83
+ position: absolute;
84
+ cursor: pointer;
85
+ top: 0;
86
+ left: 0;
87
+ right: 0;
88
+ bottom: 0;
89
+ background-color: var(--boreal-ui-base-light);
90
+ transition: all 0.4s, border-color 0s;
91
+ }
92
+ .bds-toggle__slider::before {
93
+ position: absolute;
94
+ content: "";
95
+ height: var(--boreal-typography-font-size-md);
96
+ width: var(--boreal-typography-font-size-md);
97
+ left: var(--boreal-spacing-2xs);
98
+ background-color: var(--boreal-text-inverse);
99
+ bottom: 0;
100
+ top: 0;
101
+ margin: auto;
102
+ transition: 0.3s;
103
+ }
104
+ .bds-toggle__slider--round {
105
+ border-radius: var(--boreal-radius-m);
106
+ }
107
+ .bds-toggle__slider--round::before {
108
+ border-radius: var(--boreal-radius-full);
109
+ }
110
+ .bds-toggle__label {
111
+ font-size: var(--boreal-typography-font-size-sm);
112
+ color: var(--boreal-text-default);
113
+ }
114
+ .bds-toggle__helper-text {
115
+ display: flex;
116
+ position: relative;
117
+ color: var(--boreal-text-default-light);
118
+ font-size: var(--boreal-typography-font-size-xs);
119
+ margin-top: var(--boreal-spacing-2xs);
120
+ }