wcs-core 7.3.0 → 7.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (802) hide show
  1. package/README.md +11 -9
  2. package/bundle/index.d.ts +45 -0
  3. package/bundle/index.js +2 -0
  4. package/bundle/index.js.map +1 -0
  5. package/bundle/p-010cf905.js +2 -0
  6. package/bundle/p-010cf905.js.map +1 -0
  7. package/bundle/p-2751ddc1.js +2 -0
  8. package/bundle/p-2751ddc1.js.map +1 -0
  9. package/bundle/p-2bef72c7.js +2 -0
  10. package/bundle/p-2bef72c7.js.map +1 -0
  11. package/bundle/p-2e9b9605.js +2 -0
  12. package/bundle/p-2e9b9605.js.map +1 -0
  13. package/bundle/p-35d7af48.js +2 -0
  14. package/bundle/p-35d7af48.js.map +1 -0
  15. package/bundle/p-38e45350.js +2 -0
  16. package/bundle/p-38e45350.js.map +1 -0
  17. package/bundle/p-3abf8a42.js +2 -0
  18. package/bundle/p-3abf8a42.js.map +1 -0
  19. package/bundle/p-44a3b0b9.js +2 -0
  20. package/bundle/p-44a3b0b9.js.map +1 -0
  21. package/bundle/p-60193ef5.js +2 -0
  22. package/bundle/p-60193ef5.js.map +1 -0
  23. package/bundle/p-6bc981dd.js +156 -0
  24. package/bundle/p-6bc981dd.js.map +1 -0
  25. package/bundle/p-763371a0.js +16 -0
  26. package/bundle/p-763371a0.js.map +1 -0
  27. package/bundle/p-8bfdf6f6.js +2 -0
  28. package/bundle/p-8bfdf6f6.js.map +1 -0
  29. package/bundle/p-97e70e10.js +2 -0
  30. package/bundle/p-97e70e10.js.map +1 -0
  31. package/bundle/p-98bd8a96.js +2 -0
  32. package/bundle/p-98bd8a96.js.map +1 -0
  33. package/bundle/p-a0f32ead.js +2 -0
  34. package/bundle/p-a0f32ead.js.map +1 -0
  35. package/bundle/p-a7468a3a.js +2 -0
  36. package/bundle/p-a7468a3a.js.map +1 -0
  37. package/bundle/p-c8b73e93.js +2 -0
  38. package/bundle/p-c8b73e93.js.map +1 -0
  39. package/bundle/p-d23d7658.js +2 -0
  40. package/bundle/p-d23d7658.js.map +1 -0
  41. package/bundle/p-d3404c52.js +2 -0
  42. package/bundle/p-d3404c52.js.map +1 -0
  43. package/bundle/p-e1fb3625.js +2 -0
  44. package/bundle/p-e1fb3625.js.map +1 -0
  45. package/bundle/p-f0dda0b8.js +2 -0
  46. package/bundle/p-f0dda0b8.js.map +1 -0
  47. package/bundle/p-fb2751c2.js +2 -0
  48. package/bundle/p-fb2751c2.js.map +1 -0
  49. package/bundle/p-fc9ba34d.js +2 -0
  50. package/bundle/p-fc9ba34d.js.map +1 -0
  51. package/bundle/package.json +8 -0
  52. package/bundle/wcs-accordion-content.d.ts +11 -0
  53. package/bundle/wcs-accordion-content.js +2 -0
  54. package/bundle/wcs-accordion-content.js.map +1 -0
  55. package/bundle/wcs-accordion-header.d.ts +11 -0
  56. package/bundle/wcs-accordion-header.js +2 -0
  57. package/bundle/wcs-accordion-header.js.map +1 -0
  58. package/bundle/wcs-accordion-panel.d.ts +11 -0
  59. package/bundle/wcs-accordion-panel.js +2 -0
  60. package/bundle/wcs-accordion-panel.js.map +1 -0
  61. package/bundle/wcs-accordion.d.ts +11 -0
  62. package/bundle/wcs-accordion.js +2 -0
  63. package/bundle/wcs-accordion.js.map +1 -0
  64. package/bundle/wcs-action-bar.d.ts +11 -0
  65. package/bundle/wcs-action-bar.js +2 -0
  66. package/bundle/wcs-action-bar.js.map +1 -0
  67. package/bundle/wcs-alert-drawer.d.ts +11 -0
  68. package/bundle/wcs-alert-drawer.js +2 -0
  69. package/bundle/wcs-alert-drawer.js.map +1 -0
  70. package/bundle/wcs-alert.d.ts +11 -0
  71. package/bundle/wcs-alert.js +2 -0
  72. package/bundle/wcs-alert.js.map +1 -0
  73. package/bundle/wcs-app.d.ts +11 -0
  74. package/bundle/wcs-app.js +2 -0
  75. package/bundle/wcs-app.js.map +1 -0
  76. package/bundle/wcs-badge.d.ts +11 -0
  77. package/bundle/wcs-badge.js +2 -0
  78. package/bundle/wcs-badge.js.map +1 -0
  79. package/bundle/wcs-breadcrumb-item.d.ts +11 -0
  80. package/bundle/wcs-breadcrumb-item.js +2 -0
  81. package/bundle/wcs-breadcrumb-item.js.map +1 -0
  82. package/bundle/wcs-breadcrumb.d.ts +11 -0
  83. package/bundle/wcs-breadcrumb.js +2 -0
  84. package/bundle/wcs-breadcrumb.js.map +1 -0
  85. package/bundle/wcs-button.d.ts +11 -0
  86. package/bundle/wcs-button.js +2 -0
  87. package/bundle/wcs-button.js.map +1 -0
  88. package/bundle/wcs-card-body.d.ts +11 -0
  89. package/bundle/wcs-card-body.js +2 -0
  90. package/bundle/wcs-card-body.js.map +1 -0
  91. package/bundle/wcs-card-content.d.ts +11 -0
  92. package/bundle/wcs-card-content.js +2 -0
  93. package/bundle/wcs-card-content.js.map +1 -0
  94. package/bundle/wcs-card-footer.d.ts +11 -0
  95. package/bundle/wcs-card-footer.js +2 -0
  96. package/bundle/wcs-card-footer.js.map +1 -0
  97. package/bundle/wcs-card-header.d.ts +11 -0
  98. package/bundle/wcs-card-header.js +2 -0
  99. package/bundle/wcs-card-header.js.map +1 -0
  100. package/bundle/wcs-card-media.d.ts +11 -0
  101. package/bundle/wcs-card-media.js +2 -0
  102. package/bundle/wcs-card-media.js.map +1 -0
  103. package/bundle/wcs-card.d.ts +11 -0
  104. package/bundle/wcs-card.js +2 -0
  105. package/bundle/wcs-card.js.map +1 -0
  106. package/bundle/wcs-checkbox.d.ts +11 -0
  107. package/bundle/wcs-checkbox.js +2 -0
  108. package/bundle/wcs-checkbox.js.map +1 -0
  109. package/bundle/wcs-chip.d.ts +11 -0
  110. package/bundle/wcs-chip.js +2 -0
  111. package/bundle/wcs-chip.js.map +1 -0
  112. package/bundle/wcs-com-nav-category.d.ts +11 -0
  113. package/bundle/wcs-com-nav-category.js +2 -0
  114. package/bundle/wcs-com-nav-category.js.map +1 -0
  115. package/bundle/wcs-com-nav-item.d.ts +11 -0
  116. package/bundle/wcs-com-nav-item.js +2 -0
  117. package/bundle/wcs-com-nav-item.js.map +1 -0
  118. package/bundle/wcs-com-nav-submenu.d.ts +11 -0
  119. package/bundle/wcs-com-nav-submenu.js +2 -0
  120. package/bundle/wcs-com-nav-submenu.js.map +1 -0
  121. package/bundle/wcs-com-nav.d.ts +11 -0
  122. package/bundle/wcs-com-nav.js +2 -0
  123. package/bundle/wcs-com-nav.js.map +1 -0
  124. package/bundle/wcs-counter.d.ts +11 -0
  125. package/bundle/wcs-counter.js +2 -0
  126. package/bundle/wcs-counter.js.map +1 -0
  127. package/bundle/wcs-divider.d.ts +11 -0
  128. package/bundle/wcs-divider.js +2 -0
  129. package/bundle/wcs-divider.js.map +1 -0
  130. package/bundle/wcs-dropdown-divider.d.ts +11 -0
  131. package/bundle/wcs-dropdown-divider.js +2 -0
  132. package/bundle/wcs-dropdown-divider.js.map +1 -0
  133. package/bundle/wcs-dropdown-header.d.ts +11 -0
  134. package/bundle/wcs-dropdown-header.js +2 -0
  135. package/bundle/wcs-dropdown-header.js.map +1 -0
  136. package/bundle/wcs-dropdown-item.d.ts +11 -0
  137. package/bundle/wcs-dropdown-item.js +2 -0
  138. package/bundle/wcs-dropdown-item.js.map +1 -0
  139. package/bundle/wcs-dropdown.d.ts +11 -0
  140. package/bundle/wcs-dropdown.js +2 -0
  141. package/bundle/wcs-dropdown.js.map +1 -0
  142. package/bundle/wcs-editable-field.d.ts +11 -0
  143. package/bundle/wcs-editable-field.js +2 -0
  144. package/bundle/wcs-editable-field.js.map +1 -0
  145. package/bundle/wcs-error.d.ts +11 -0
  146. package/bundle/wcs-error.js +2 -0
  147. package/bundle/wcs-error.js.map +1 -0
  148. package/bundle/wcs-field-content.d.ts +11 -0
  149. package/bundle/wcs-field-content.js +2 -0
  150. package/bundle/wcs-field-content.js.map +1 -0
  151. package/bundle/wcs-field-label.d.ts +11 -0
  152. package/bundle/wcs-field-label.js +2 -0
  153. package/bundle/wcs-field-label.js.map +1 -0
  154. package/bundle/wcs-field.d.ts +11 -0
  155. package/bundle/wcs-field.js +2 -0
  156. package/bundle/wcs-field.js.map +1 -0
  157. package/bundle/wcs-footer.d.ts +11 -0
  158. package/bundle/wcs-footer.js +2 -0
  159. package/bundle/wcs-footer.js.map +1 -0
  160. package/bundle/wcs-form-field.d.ts +11 -0
  161. package/bundle/wcs-form-field.js +2 -0
  162. package/bundle/wcs-form-field.js.map +1 -0
  163. package/bundle/wcs-galactic-menu.d.ts +11 -0
  164. package/bundle/wcs-galactic-menu.js +2 -0
  165. package/bundle/wcs-galactic-menu.js.map +1 -0
  166. package/bundle/wcs-galactic.d.ts +11 -0
  167. package/bundle/wcs-galactic.js +2 -0
  168. package/bundle/wcs-galactic.js.map +1 -0
  169. package/bundle/wcs-grid-column.d.ts +11 -0
  170. package/bundle/wcs-grid-column.js +2 -0
  171. package/bundle/wcs-grid-column.js.map +1 -0
  172. package/bundle/wcs-grid-custom-cell.d.ts +11 -0
  173. package/bundle/wcs-grid-custom-cell.js +2 -0
  174. package/bundle/wcs-grid-custom-cell.js.map +1 -0
  175. package/bundle/wcs-grid-pagination.d.ts +11 -0
  176. package/bundle/wcs-grid-pagination.js +2 -0
  177. package/bundle/wcs-grid-pagination.js.map +1 -0
  178. package/bundle/wcs-grid.d.ts +11 -0
  179. package/bundle/wcs-grid.js +2 -0
  180. package/bundle/wcs-grid.js.map +1 -0
  181. package/bundle/wcs-header.d.ts +11 -0
  182. package/bundle/wcs-header.js +2 -0
  183. package/bundle/wcs-header.js.map +1 -0
  184. package/bundle/wcs-hint.d.ts +11 -0
  185. package/bundle/wcs-hint.js +2 -0
  186. package/bundle/wcs-hint.js.map +1 -0
  187. package/bundle/wcs-horizontal-stepper.d.ts +11 -0
  188. package/bundle/wcs-horizontal-stepper.js +2 -0
  189. package/bundle/wcs-horizontal-stepper.js.map +1 -0
  190. package/bundle/wcs-icon.d.ts +11 -0
  191. package/bundle/wcs-icon.js +2 -0
  192. package/bundle/wcs-icon.js.map +1 -0
  193. package/bundle/wcs-input.d.ts +11 -0
  194. package/bundle/wcs-input.js +2 -0
  195. package/bundle/wcs-input.js.map +1 -0
  196. package/bundle/wcs-label.d.ts +11 -0
  197. package/bundle/wcs-label.js +2 -0
  198. package/bundle/wcs-label.js.map +1 -0
  199. package/bundle/wcs-list-item-properties.d.ts +11 -0
  200. package/bundle/wcs-list-item-properties.js +2 -0
  201. package/bundle/wcs-list-item-properties.js.map +1 -0
  202. package/bundle/wcs-list-item-property.d.ts +11 -0
  203. package/bundle/wcs-list-item-property.js +2 -0
  204. package/bundle/wcs-list-item-property.js.map +1 -0
  205. package/bundle/wcs-list-item.d.ts +11 -0
  206. package/bundle/wcs-list-item.js +2 -0
  207. package/bundle/wcs-list-item.js.map +1 -0
  208. package/bundle/wcs-mat-icon.d.ts +11 -0
  209. package/bundle/wcs-mat-icon.js +2 -0
  210. package/bundle/wcs-mat-icon.js.map +1 -0
  211. package/bundle/wcs-modal.d.ts +11 -0
  212. package/bundle/wcs-modal.js +2 -0
  213. package/bundle/wcs-modal.js.map +1 -0
  214. package/bundle/wcs-native-select.d.ts +11 -0
  215. package/bundle/wcs-native-select.js +2 -0
  216. package/bundle/wcs-native-select.js.map +1 -0
  217. package/bundle/wcs-nav-item.d.ts +11 -0
  218. package/bundle/wcs-nav-item.js +2 -0
  219. package/bundle/wcs-nav-item.js.map +1 -0
  220. package/bundle/wcs-nav.d.ts +11 -0
  221. package/bundle/wcs-nav.js +2 -0
  222. package/bundle/wcs-nav.js.map +1 -0
  223. package/bundle/wcs-progress-bar.d.ts +11 -0
  224. package/bundle/wcs-progress-bar.js +2 -0
  225. package/bundle/wcs-progress-bar.js.map +1 -0
  226. package/bundle/wcs-progress-radial.d.ts +11 -0
  227. package/bundle/wcs-progress-radial.js +2 -0
  228. package/bundle/wcs-progress-radial.js.map +1 -0
  229. package/bundle/wcs-radio-group.d.ts +11 -0
  230. package/bundle/wcs-radio-group.js +2 -0
  231. package/bundle/wcs-radio-group.js.map +1 -0
  232. package/bundle/wcs-radio.d.ts +11 -0
  233. package/bundle/wcs-radio.js +2 -0
  234. package/bundle/wcs-radio.js.map +1 -0
  235. package/bundle/wcs-select-option.d.ts +11 -0
  236. package/bundle/wcs-select-option.js +2 -0
  237. package/bundle/wcs-select-option.js.map +1 -0
  238. package/bundle/wcs-select.d.ts +11 -0
  239. package/bundle/wcs-select.js +2 -0
  240. package/bundle/wcs-select.js.map +1 -0
  241. package/bundle/wcs-skeleton-circle.d.ts +11 -0
  242. package/bundle/wcs-skeleton-circle.js +2 -0
  243. package/bundle/wcs-skeleton-circle.js.map +1 -0
  244. package/bundle/wcs-skeleton-rectangle.d.ts +11 -0
  245. package/bundle/wcs-skeleton-rectangle.js +2 -0
  246. package/bundle/wcs-skeleton-rectangle.js.map +1 -0
  247. package/bundle/wcs-skeleton-text.d.ts +11 -0
  248. package/bundle/wcs-skeleton-text.js +2 -0
  249. package/bundle/wcs-skeleton-text.js.map +1 -0
  250. package/bundle/wcs-spinner.d.ts +11 -0
  251. package/bundle/wcs-spinner.js +2 -0
  252. package/bundle/wcs-spinner.js.map +1 -0
  253. package/bundle/wcs-switch.d.ts +11 -0
  254. package/bundle/wcs-switch.js +2 -0
  255. package/bundle/wcs-switch.js.map +1 -0
  256. package/bundle/wcs-tab.d.ts +11 -0
  257. package/bundle/wcs-tab.js +2 -0
  258. package/bundle/wcs-tab.js.map +1 -0
  259. package/bundle/wcs-tabs.d.ts +11 -0
  260. package/bundle/wcs-tabs.js +2 -0
  261. package/bundle/wcs-tabs.js.map +1 -0
  262. package/bundle/wcs-textarea.d.ts +11 -0
  263. package/bundle/wcs-textarea.js +2 -0
  264. package/bundle/wcs-textarea.js.map +1 -0
  265. package/bundle/wcs-tooltip.d.ts +11 -0
  266. package/bundle/wcs-tooltip.js +7 -0
  267. package/bundle/wcs-tooltip.js.map +1 -0
  268. package/composite-elements/index.d.ts +33 -0
  269. package/composite-elements/index.js +2 -0
  270. package/composite-elements/index.js.map +1 -0
  271. package/composite-elements/p-04663560.js +2 -0
  272. package/composite-elements/p-04663560.js.map +1 -0
  273. package/composite-elements/p-0c306f8c.js +2 -0
  274. package/composite-elements/p-0c306f8c.js.map +1 -0
  275. package/composite-elements/p-2454bcae.js +2 -0
  276. package/composite-elements/p-2454bcae.js.map +1 -0
  277. package/composite-elements/p-2bef72c7.js +2 -0
  278. package/composite-elements/p-2bef72c7.js.map +1 -0
  279. package/composite-elements/p-35d7af48.js +2 -0
  280. package/composite-elements/p-35d7af48.js.map +1 -0
  281. package/composite-elements/p-3abf8a42.js +2 -0
  282. package/composite-elements/p-3abf8a42.js.map +1 -0
  283. package/composite-elements/p-46f752d5.js +2 -0
  284. package/composite-elements/p-46f752d5.js.map +1 -0
  285. package/composite-elements/p-55668982.js +2 -0
  286. package/composite-elements/p-55668982.js.map +1 -0
  287. package/composite-elements/p-5a3d7fec.js +2 -0
  288. package/composite-elements/p-5a3d7fec.js.map +1 -0
  289. package/composite-elements/p-6dd2b564.js +156 -0
  290. package/composite-elements/p-6dd2b564.js.map +1 -0
  291. package/composite-elements/p-a0f32ead.js +2 -0
  292. package/composite-elements/p-a0f32ead.js.map +1 -0
  293. package/composite-elements/p-a14aec19.js +2 -0
  294. package/composite-elements/p-a14aec19.js.map +1 -0
  295. package/composite-elements/p-a7468a3a.js +2 -0
  296. package/composite-elements/p-a7468a3a.js.map +1 -0
  297. package/composite-elements/p-a90bb01e.js +2 -0
  298. package/composite-elements/p-a90bb01e.js.map +1 -0
  299. package/composite-elements/p-af24fb0d.js +16 -0
  300. package/composite-elements/p-af24fb0d.js.map +1 -0
  301. package/composite-elements/p-b83afff9.js +2 -0
  302. package/composite-elements/p-b83afff9.js.map +1 -0
  303. package/composite-elements/p-b92e818b.js +2 -0
  304. package/composite-elements/p-b92e818b.js.map +1 -0
  305. package/composite-elements/p-d3404c52.js +2 -0
  306. package/composite-elements/p-d3404c52.js.map +1 -0
  307. package/composite-elements/p-e1fb3625.js +2 -0
  308. package/composite-elements/p-e1fb3625.js.map +1 -0
  309. package/composite-elements/p-e803bb26.js +2 -0
  310. package/composite-elements/p-e803bb26.js.map +1 -0
  311. package/composite-elements/p-ef26b4d8.js +2 -0
  312. package/composite-elements/p-ef26b4d8.js.map +1 -0
  313. package/composite-elements/p-fb2751c2.js +2 -0
  314. package/composite-elements/p-fb2751c2.js.map +1 -0
  315. package/composite-elements/p-fe1f9cc5.js +2 -0
  316. package/composite-elements/p-fe1f9cc5.js.map +1 -0
  317. package/composite-elements/package.json +12 -0
  318. package/composite-elements/wcs-accordion-content.d.ts +11 -0
  319. package/composite-elements/wcs-accordion-content.js +2 -0
  320. package/composite-elements/wcs-accordion-content.js.map +1 -0
  321. package/composite-elements/wcs-accordion-header.d.ts +11 -0
  322. package/composite-elements/wcs-accordion-header.js +2 -0
  323. package/composite-elements/wcs-accordion-header.js.map +1 -0
  324. package/composite-elements/wcs-accordion-panel.d.ts +11 -0
  325. package/composite-elements/wcs-accordion-panel.js +2 -0
  326. package/composite-elements/wcs-accordion-panel.js.map +1 -0
  327. package/composite-elements/wcs-accordion.d.ts +11 -0
  328. package/composite-elements/wcs-accordion.js +2 -0
  329. package/composite-elements/wcs-accordion.js.map +1 -0
  330. package/composite-elements/wcs-action-bar.d.ts +11 -0
  331. package/composite-elements/wcs-action-bar.js +2 -0
  332. package/composite-elements/wcs-action-bar.js.map +1 -0
  333. package/composite-elements/wcs-alert-drawer.d.ts +11 -0
  334. package/composite-elements/wcs-alert-drawer.js +2 -0
  335. package/composite-elements/wcs-alert-drawer.js.map +1 -0
  336. package/composite-elements/wcs-alert.d.ts +11 -0
  337. package/composite-elements/wcs-alert.js +2 -0
  338. package/composite-elements/wcs-alert.js.map +1 -0
  339. package/composite-elements/wcs-app.d.ts +11 -0
  340. package/composite-elements/wcs-app.js +2 -0
  341. package/composite-elements/wcs-app.js.map +1 -0
  342. package/composite-elements/wcs-badge.d.ts +11 -0
  343. package/composite-elements/wcs-badge.js +2 -0
  344. package/composite-elements/wcs-badge.js.map +1 -0
  345. package/composite-elements/wcs-breadcrumb-item.d.ts +11 -0
  346. package/composite-elements/wcs-breadcrumb-item.js +2 -0
  347. package/composite-elements/wcs-breadcrumb-item.js.map +1 -0
  348. package/composite-elements/wcs-breadcrumb.d.ts +11 -0
  349. package/composite-elements/wcs-breadcrumb.js +2 -0
  350. package/composite-elements/wcs-breadcrumb.js.map +1 -0
  351. package/composite-elements/wcs-button.d.ts +11 -0
  352. package/composite-elements/wcs-button.js +2 -0
  353. package/composite-elements/wcs-button.js.map +1 -0
  354. package/composite-elements/wcs-card-body.d.ts +11 -0
  355. package/composite-elements/wcs-card-body.js +2 -0
  356. package/composite-elements/wcs-card-body.js.map +1 -0
  357. package/composite-elements/wcs-card-content.d.ts +11 -0
  358. package/composite-elements/wcs-card-content.js +2 -0
  359. package/composite-elements/wcs-card-content.js.map +1 -0
  360. package/composite-elements/wcs-card-footer.d.ts +11 -0
  361. package/composite-elements/wcs-card-footer.js +2 -0
  362. package/composite-elements/wcs-card-footer.js.map +1 -0
  363. package/composite-elements/wcs-card-header.d.ts +11 -0
  364. package/composite-elements/wcs-card-header.js +2 -0
  365. package/composite-elements/wcs-card-header.js.map +1 -0
  366. package/composite-elements/wcs-card-media.d.ts +11 -0
  367. package/composite-elements/wcs-card-media.js +2 -0
  368. package/composite-elements/wcs-card-media.js.map +1 -0
  369. package/composite-elements/wcs-card.d.ts +11 -0
  370. package/composite-elements/wcs-card.js +2 -0
  371. package/composite-elements/wcs-card.js.map +1 -0
  372. package/composite-elements/wcs-checkbox.d.ts +11 -0
  373. package/composite-elements/wcs-checkbox.js +2 -0
  374. package/composite-elements/wcs-checkbox.js.map +1 -0
  375. package/composite-elements/wcs-chip.d.ts +11 -0
  376. package/composite-elements/wcs-chip.js +2 -0
  377. package/composite-elements/wcs-chip.js.map +1 -0
  378. package/composite-elements/wcs-com-nav-category.d.ts +11 -0
  379. package/composite-elements/wcs-com-nav-category.js +2 -0
  380. package/composite-elements/wcs-com-nav-category.js.map +1 -0
  381. package/composite-elements/wcs-com-nav-item.d.ts +11 -0
  382. package/composite-elements/wcs-com-nav-item.js +2 -0
  383. package/composite-elements/wcs-com-nav-item.js.map +1 -0
  384. package/composite-elements/wcs-com-nav-submenu.d.ts +11 -0
  385. package/composite-elements/wcs-com-nav-submenu.js +2 -0
  386. package/composite-elements/wcs-com-nav-submenu.js.map +1 -0
  387. package/composite-elements/wcs-com-nav.d.ts +11 -0
  388. package/composite-elements/wcs-com-nav.js +2 -0
  389. package/composite-elements/wcs-com-nav.js.map +1 -0
  390. package/composite-elements/wcs-counter.d.ts +11 -0
  391. package/composite-elements/wcs-counter.js +2 -0
  392. package/composite-elements/wcs-counter.js.map +1 -0
  393. package/composite-elements/wcs-divider.d.ts +11 -0
  394. package/composite-elements/wcs-divider.js +2 -0
  395. package/composite-elements/wcs-divider.js.map +1 -0
  396. package/composite-elements/wcs-dropdown-divider.d.ts +11 -0
  397. package/composite-elements/wcs-dropdown-divider.js +2 -0
  398. package/composite-elements/wcs-dropdown-divider.js.map +1 -0
  399. package/composite-elements/wcs-dropdown-header.d.ts +11 -0
  400. package/composite-elements/wcs-dropdown-header.js +2 -0
  401. package/composite-elements/wcs-dropdown-header.js.map +1 -0
  402. package/composite-elements/wcs-dropdown-item.d.ts +11 -0
  403. package/composite-elements/wcs-dropdown-item.js +2 -0
  404. package/composite-elements/wcs-dropdown-item.js.map +1 -0
  405. package/composite-elements/wcs-dropdown.d.ts +11 -0
  406. package/composite-elements/wcs-dropdown.js +2 -0
  407. package/composite-elements/wcs-dropdown.js.map +1 -0
  408. package/composite-elements/wcs-editable-field.d.ts +11 -0
  409. package/composite-elements/wcs-editable-field.js +2 -0
  410. package/composite-elements/wcs-editable-field.js.map +1 -0
  411. package/composite-elements/wcs-error.d.ts +11 -0
  412. package/composite-elements/wcs-error.js +2 -0
  413. package/composite-elements/wcs-error.js.map +1 -0
  414. package/composite-elements/wcs-field-content.d.ts +11 -0
  415. package/composite-elements/wcs-field-content.js +2 -0
  416. package/composite-elements/wcs-field-content.js.map +1 -0
  417. package/composite-elements/wcs-field-label.d.ts +11 -0
  418. package/composite-elements/wcs-field-label.js +2 -0
  419. package/composite-elements/wcs-field-label.js.map +1 -0
  420. package/composite-elements/wcs-field.d.ts +11 -0
  421. package/composite-elements/wcs-field.js +2 -0
  422. package/composite-elements/wcs-field.js.map +1 -0
  423. package/composite-elements/wcs-footer.d.ts +11 -0
  424. package/composite-elements/wcs-footer.js +2 -0
  425. package/composite-elements/wcs-footer.js.map +1 -0
  426. package/composite-elements/wcs-form-field.d.ts +11 -0
  427. package/composite-elements/wcs-form-field.js +2 -0
  428. package/composite-elements/wcs-form-field.js.map +1 -0
  429. package/composite-elements/wcs-galactic-menu.d.ts +11 -0
  430. package/composite-elements/wcs-galactic-menu.js +2 -0
  431. package/composite-elements/wcs-galactic-menu.js.map +1 -0
  432. package/composite-elements/wcs-galactic.d.ts +11 -0
  433. package/composite-elements/wcs-galactic.js +2 -0
  434. package/composite-elements/wcs-galactic.js.map +1 -0
  435. package/composite-elements/wcs-grid-column.d.ts +11 -0
  436. package/composite-elements/wcs-grid-column.js +2 -0
  437. package/composite-elements/wcs-grid-column.js.map +1 -0
  438. package/composite-elements/wcs-grid-custom-cell.d.ts +11 -0
  439. package/composite-elements/wcs-grid-custom-cell.js +2 -0
  440. package/composite-elements/wcs-grid-custom-cell.js.map +1 -0
  441. package/composite-elements/wcs-grid-pagination.d.ts +11 -0
  442. package/composite-elements/wcs-grid-pagination.js +2 -0
  443. package/composite-elements/wcs-grid-pagination.js.map +1 -0
  444. package/composite-elements/wcs-grid.d.ts +11 -0
  445. package/composite-elements/wcs-grid.js +2 -0
  446. package/composite-elements/wcs-grid.js.map +1 -0
  447. package/composite-elements/wcs-header.d.ts +11 -0
  448. package/composite-elements/wcs-header.js +2 -0
  449. package/composite-elements/wcs-header.js.map +1 -0
  450. package/composite-elements/wcs-hint.d.ts +11 -0
  451. package/composite-elements/wcs-hint.js +2 -0
  452. package/composite-elements/wcs-hint.js.map +1 -0
  453. package/composite-elements/wcs-horizontal-stepper.d.ts +11 -0
  454. package/composite-elements/wcs-horizontal-stepper.js +2 -0
  455. package/composite-elements/wcs-horizontal-stepper.js.map +1 -0
  456. package/composite-elements/wcs-icon.d.ts +11 -0
  457. package/composite-elements/wcs-icon.js +2 -0
  458. package/composite-elements/wcs-icon.js.map +1 -0
  459. package/composite-elements/wcs-input.d.ts +11 -0
  460. package/composite-elements/wcs-input.js +2 -0
  461. package/composite-elements/wcs-input.js.map +1 -0
  462. package/composite-elements/wcs-label.d.ts +11 -0
  463. package/composite-elements/wcs-label.js +2 -0
  464. package/composite-elements/wcs-label.js.map +1 -0
  465. package/composite-elements/wcs-list-item-properties.d.ts +11 -0
  466. package/composite-elements/wcs-list-item-properties.js +2 -0
  467. package/composite-elements/wcs-list-item-properties.js.map +1 -0
  468. package/composite-elements/wcs-list-item-property.d.ts +11 -0
  469. package/composite-elements/wcs-list-item-property.js +2 -0
  470. package/composite-elements/wcs-list-item-property.js.map +1 -0
  471. package/composite-elements/wcs-list-item.d.ts +11 -0
  472. package/composite-elements/wcs-list-item.js +2 -0
  473. package/composite-elements/wcs-list-item.js.map +1 -0
  474. package/composite-elements/wcs-mat-icon.d.ts +11 -0
  475. package/composite-elements/wcs-mat-icon.js +2 -0
  476. package/composite-elements/wcs-mat-icon.js.map +1 -0
  477. package/composite-elements/wcs-modal.d.ts +11 -0
  478. package/composite-elements/wcs-modal.js +2 -0
  479. package/composite-elements/wcs-modal.js.map +1 -0
  480. package/composite-elements/wcs-native-select.d.ts +11 -0
  481. package/composite-elements/wcs-native-select.js +2 -0
  482. package/composite-elements/wcs-native-select.js.map +1 -0
  483. package/composite-elements/wcs-nav-item.d.ts +11 -0
  484. package/composite-elements/wcs-nav-item.js +2 -0
  485. package/composite-elements/wcs-nav-item.js.map +1 -0
  486. package/composite-elements/wcs-nav.d.ts +11 -0
  487. package/composite-elements/wcs-nav.js +2 -0
  488. package/composite-elements/wcs-nav.js.map +1 -0
  489. package/composite-elements/wcs-progress-bar.d.ts +11 -0
  490. package/composite-elements/wcs-progress-bar.js +2 -0
  491. package/composite-elements/wcs-progress-bar.js.map +1 -0
  492. package/composite-elements/wcs-progress-radial.d.ts +11 -0
  493. package/composite-elements/wcs-progress-radial.js +2 -0
  494. package/composite-elements/wcs-progress-radial.js.map +1 -0
  495. package/composite-elements/wcs-radio-group.d.ts +11 -0
  496. package/composite-elements/wcs-radio-group.js +2 -0
  497. package/composite-elements/wcs-radio-group.js.map +1 -0
  498. package/composite-elements/wcs-radio.d.ts +11 -0
  499. package/composite-elements/wcs-radio.js +2 -0
  500. package/composite-elements/wcs-radio.js.map +1 -0
  501. package/composite-elements/wcs-select-option.d.ts +11 -0
  502. package/composite-elements/wcs-select-option.js +2 -0
  503. package/composite-elements/wcs-select-option.js.map +1 -0
  504. package/composite-elements/wcs-select.d.ts +11 -0
  505. package/composite-elements/wcs-select.js +2 -0
  506. package/composite-elements/wcs-select.js.map +1 -0
  507. package/composite-elements/wcs-skeleton-circle.d.ts +11 -0
  508. package/composite-elements/wcs-skeleton-circle.js +2 -0
  509. package/composite-elements/wcs-skeleton-circle.js.map +1 -0
  510. package/composite-elements/wcs-skeleton-rectangle.d.ts +11 -0
  511. package/composite-elements/wcs-skeleton-rectangle.js +2 -0
  512. package/composite-elements/wcs-skeleton-rectangle.js.map +1 -0
  513. package/composite-elements/wcs-skeleton-text.d.ts +11 -0
  514. package/composite-elements/wcs-skeleton-text.js +2 -0
  515. package/composite-elements/wcs-skeleton-text.js.map +1 -0
  516. package/composite-elements/wcs-spinner.d.ts +11 -0
  517. package/composite-elements/wcs-spinner.js +2 -0
  518. package/composite-elements/wcs-spinner.js.map +1 -0
  519. package/composite-elements/wcs-switch.d.ts +11 -0
  520. package/composite-elements/wcs-switch.js +2 -0
  521. package/composite-elements/wcs-switch.js.map +1 -0
  522. package/composite-elements/wcs-tab.d.ts +11 -0
  523. package/composite-elements/wcs-tab.js +2 -0
  524. package/composite-elements/wcs-tab.js.map +1 -0
  525. package/composite-elements/wcs-tabs.d.ts +11 -0
  526. package/composite-elements/wcs-tabs.js +2 -0
  527. package/composite-elements/wcs-tabs.js.map +1 -0
  528. package/composite-elements/wcs-textarea.d.ts +11 -0
  529. package/composite-elements/wcs-textarea.js +2 -0
  530. package/composite-elements/wcs-textarea.js.map +1 -0
  531. package/composite-elements/wcs-tooltip.d.ts +11 -0
  532. package/composite-elements/wcs-tooltip.js +7 -0
  533. package/composite-elements/wcs-tooltip.js.map +1 -0
  534. package/design-tokens/dist/sncf-groupe-root-scoped.css +227 -227
  535. package/design-tokens/dist/sncf-groupe.css +227 -227
  536. package/design-tokens/dist/sncf-holding-root-scoped.css +227 -227
  537. package/design-tokens/dist/sncf-holding.css +227 -227
  538. package/design-tokens/dist/sncf-reseau-root-scoped.css +227 -227
  539. package/design-tokens/dist/sncf-reseau.css +227 -227
  540. package/design-tokens/dist/sncf-voyageurs-root-scoped.css +242 -242
  541. package/design-tokens/dist/sncf-voyageurs.css +242 -242
  542. package/dist/cjs/{popper-8d6e7fca.js → popper-1b61df21.js} +10 -17
  543. package/dist/cjs/popper-1b61df21.js.map +1 -0
  544. package/dist/cjs/wcs-accordion-panel.cjs.entry.js +2 -1
  545. package/dist/cjs/wcs-accordion-panel.cjs.entry.js.map +1 -1
  546. package/dist/cjs/wcs-accordion.cjs.entry.js +5 -1
  547. package/dist/cjs/wcs-accordion.cjs.entry.js.map +1 -1
  548. package/dist/cjs/wcs-breadcrumb.cjs.entry.js +1 -1
  549. package/dist/cjs/wcs-breadcrumb.cjs.entry.js.map +1 -1
  550. package/dist/cjs/wcs-com-nav-item.cjs.entry.js +1 -1
  551. package/dist/cjs/wcs-com-nav-item.cjs.entry.js.map +1 -1
  552. package/dist/cjs/wcs-com-nav.cjs.entry.js +3 -3
  553. package/dist/cjs/wcs-com-nav.cjs.entry.js.map +1 -1
  554. package/dist/cjs/wcs-dropdown.cjs.entry.js +1 -1
  555. package/dist/cjs/wcs-error_3.cjs.entry.js +1 -1
  556. package/dist/cjs/wcs-error_3.cjs.entry.js.map +1 -1
  557. package/dist/cjs/wcs-galactic-menu.cjs.entry.js +1 -1
  558. package/dist/cjs/wcs-grid.cjs.entry.js +5 -4
  559. package/dist/cjs/wcs-grid.cjs.entry.js.map +1 -1
  560. package/dist/cjs/wcs-horizontal-stepper.cjs.entry.js +3 -2
  561. package/dist/cjs/wcs-horizontal-stepper.cjs.entry.js.map +1 -1
  562. package/dist/cjs/wcs-modal.cjs.entry.js +2 -2
  563. package/dist/cjs/wcs-modal.cjs.entry.js.map +1 -1
  564. package/dist/cjs/wcs-select_2.cjs.entry.js +59 -24
  565. package/dist/cjs/wcs-select_2.cjs.entry.js.map +1 -1
  566. package/dist/cjs/wcs-tabs.cjs.entry.js +1 -1
  567. package/dist/cjs/wcs-tooltip.cjs.entry.js +1 -1
  568. package/dist/collection/components/accordion/accordion.e2e.playwright.js +245 -0
  569. package/dist/collection/components/accordion/accordion.e2e.playwright.js.map +1 -0
  570. package/dist/collection/components/accordion/accordion.js +5 -1
  571. package/dist/collection/components/accordion/accordion.js.map +1 -1
  572. package/dist/collection/components/accordion-panel/accordion-panel.js +3 -2
  573. package/dist/collection/components/accordion-panel/accordion-panel.js.map +1 -1
  574. package/dist/collection/components/alert/alert.e2e.playwright.js +125 -0
  575. package/dist/collection/components/alert/alert.e2e.playwright.js.map +1 -0
  576. package/dist/collection/components/alert-drawer/alert-drawer.e2e.playwright.js +107 -0
  577. package/dist/collection/components/alert-drawer/alert-drawer.e2e.playwright.js.map +1 -0
  578. package/dist/collection/components/breadcrumb/breadcrumb.e2e.playwright.js +188 -0
  579. package/dist/collection/components/breadcrumb/breadcrumb.e2e.playwright.js.map +1 -0
  580. package/dist/collection/components/breadcrumb/breadcrumb.js +2 -2
  581. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  582. package/dist/collection/components/button/button.e2e.playwright.js +26 -0
  583. package/dist/collection/components/button/button.e2e.playwright.js.map +1 -0
  584. package/dist/collection/components/button/button.js +1 -1
  585. package/dist/collection/components/checkbox/checkbox.e2e.playwright.js +39 -0
  586. package/dist/collection/components/checkbox/checkbox.e2e.playwright.js.map +1 -0
  587. package/dist/collection/components/checkbox/checkbox.js +1 -1
  588. package/dist/collection/components/chip/chip.e2e.playwright.js +190 -0
  589. package/dist/collection/components/chip/chip.e2e.playwright.js.map +1 -0
  590. package/dist/collection/components/com-nav/com-nav.css +15 -0
  591. package/dist/collection/components/com-nav/{com-nav.e2e.js → com-nav.e2e.playwright.js} +60 -44
  592. package/dist/collection/components/com-nav/com-nav.e2e.playwright.js.map +1 -0
  593. package/dist/collection/components/com-nav/com-nav.js +3 -3
  594. package/dist/collection/components/com-nav/com-nav.js.map +1 -1
  595. package/dist/collection/components/com-nav-category/com-nav-category.js +1 -1
  596. package/dist/collection/components/com-nav-item/com-nav-item.css +2 -2
  597. package/dist/collection/components/com-nav-submenu/com-nav-submenu.js +1 -1
  598. package/dist/collection/components/counter/counter.e2e.playwright.js +187 -0
  599. package/dist/collection/components/counter/counter.e2e.playwright.js.map +1 -0
  600. package/dist/collection/components/counter/counter.js +1 -1
  601. package/dist/collection/components/dropdown/dropdown.e2e.playwright.js +320 -0
  602. package/dist/collection/components/dropdown/dropdown.e2e.playwright.js.map +1 -0
  603. package/dist/collection/components/dropdown/dropdown.js +1 -1
  604. package/dist/collection/components/editable-field/editable-field.e2e.playwright.js +156 -0
  605. package/dist/collection/components/editable-field/editable-field.e2e.playwright.js.map +1 -0
  606. package/dist/collection/components/form-field/form-field.e2e.playwright.js +104 -0
  607. package/dist/collection/components/form-field/form-field.e2e.playwright.js.map +1 -0
  608. package/dist/collection/components/galactic-menu/galactic-menu.js +1 -1
  609. package/dist/collection/components/grid/grid.e2e.playwright.js +153 -0
  610. package/dist/collection/components/grid/grid.e2e.playwright.js.map +1 -0
  611. package/dist/collection/components/grid/grid.js +6 -5
  612. package/dist/collection/components/grid/grid.js.map +1 -1
  613. package/dist/collection/components/grid-column/grid-column.js +1 -1
  614. package/dist/collection/components/grid-pagination/grid-pagination.js +1 -1
  615. package/dist/collection/components/header/header.js +1 -1
  616. package/dist/collection/components/horizontal-stepper/horizontal-step.js +2 -1
  617. package/dist/collection/components/horizontal-stepper/horizontal-step.js.map +1 -1
  618. package/dist/collection/components/horizontal-stepper/horizontal-stepper-interface.js.map +1 -1
  619. package/dist/collection/components/horizontal-stepper/horizontal-stepper.js +5 -1
  620. package/dist/collection/components/horizontal-stepper/horizontal-stepper.js.map +1 -1
  621. package/dist/collection/components/icon/icon.js +1 -1
  622. package/dist/collection/components/input/input.e2e.playwright.js +157 -0
  623. package/dist/collection/components/input/input.e2e.playwright.js.map +1 -0
  624. package/dist/collection/components/input/input.js +2 -2
  625. package/dist/collection/components/label/label.css +4 -6
  626. package/dist/collection/components/label/label.js +1 -1
  627. package/dist/collection/components/mat-icon/mat-icon.js +1 -1
  628. package/dist/collection/components/modal/modal.css +4 -0
  629. package/dist/collection/components/modal/modal.e2e.playwright.js +35 -0
  630. package/dist/collection/components/modal/modal.e2e.playwright.js.map +1 -0
  631. package/dist/collection/components/modal/modal.js +2 -2
  632. package/dist/collection/components/modal/modal.js.map +1 -1
  633. package/dist/collection/components/native-select/native-select.js +1 -1
  634. package/dist/collection/components/nav/nav.js +1 -1
  635. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  636. package/dist/collection/components/progress-radial/progress-radial.js +1 -1
  637. package/dist/collection/components/radio/radio.js +1 -1
  638. package/dist/collection/components/radio-group/radio-group.e2e.playwright.js +231 -0
  639. package/dist/collection/components/radio-group/radio-group.e2e.playwright.js.map +1 -0
  640. package/dist/collection/components/radio-group/radio-group.js +1 -1
  641. package/dist/collection/components/select/select.e2e.playwright.js +1702 -0
  642. package/dist/collection/components/select/select.e2e.playwright.js.map +1 -0
  643. package/dist/collection/components/select/select.js +49 -20
  644. package/dist/collection/components/select/select.js.map +1 -1
  645. package/dist/collection/components/select-option/select-option.js +3 -3
  646. package/dist/collection/components/select-option/select-option.js.map +1 -1
  647. package/dist/collection/components/switch/switch.e2e.playwright.js +40 -0
  648. package/dist/collection/components/switch/switch.e2e.playwright.js.map +1 -0
  649. package/dist/collection/components/switch/switch.js +1 -1
  650. package/dist/collection/components/tabs/tabs.e2e.playwright.js +205 -0
  651. package/dist/collection/components/tabs/tabs.e2e.playwright.js.map +1 -0
  652. package/dist/collection/components/tabs/tabs.js +1 -1
  653. package/dist/collection/components/textarea/textarea.e2e.playwright.js +133 -0
  654. package/dist/collection/components/textarea/textarea.e2e.playwright.js.map +1 -0
  655. package/dist/collection/components/textarea/textarea.js +1 -1
  656. package/dist/collection/utils/playwright/test-expect.js +2 -0
  657. package/dist/collection/utils/playwright/test-expect.js.map +1 -0
  658. package/dist/collection/utils/playwright/test.js +16 -0
  659. package/dist/collection/utils/playwright/test.js.map +1 -0
  660. package/dist/esm/{popper-e491c314.js → popper-ac238961.js} +10 -17
  661. package/dist/esm/popper-ac238961.js.map +1 -0
  662. package/dist/esm/wcs-accordion-panel.entry.js +2 -1
  663. package/dist/esm/wcs-accordion-panel.entry.js.map +1 -1
  664. package/dist/esm/wcs-accordion.entry.js +5 -1
  665. package/dist/esm/wcs-accordion.entry.js.map +1 -1
  666. package/dist/esm/wcs-breadcrumb.entry.js +1 -1
  667. package/dist/esm/wcs-breadcrumb.entry.js.map +1 -1
  668. package/dist/esm/wcs-com-nav-item.entry.js +1 -1
  669. package/dist/esm/wcs-com-nav-item.entry.js.map +1 -1
  670. package/dist/esm/wcs-com-nav.entry.js +3 -3
  671. package/dist/esm/wcs-com-nav.entry.js.map +1 -1
  672. package/dist/esm/wcs-dropdown.entry.js +1 -1
  673. package/dist/esm/wcs-error_3.entry.js +1 -1
  674. package/dist/esm/wcs-error_3.entry.js.map +1 -1
  675. package/dist/esm/wcs-galactic-menu.entry.js +1 -1
  676. package/dist/esm/wcs-grid.entry.js +5 -4
  677. package/dist/esm/wcs-grid.entry.js.map +1 -1
  678. package/dist/esm/wcs-horizontal-stepper.entry.js +3 -2
  679. package/dist/esm/wcs-horizontal-stepper.entry.js.map +1 -1
  680. package/dist/esm/wcs-modal.entry.js +2 -2
  681. package/dist/esm/wcs-modal.entry.js.map +1 -1
  682. package/dist/esm/wcs-select_2.entry.js +59 -24
  683. package/dist/esm/wcs-select_2.entry.js.map +1 -1
  684. package/dist/esm/wcs-tabs.entry.js +1 -1
  685. package/dist/esm/wcs-tooltip.entry.js +1 -1
  686. package/dist/types/components/accordion/accordion.d.ts +1 -0
  687. package/dist/types/components/accordion/accordion.e2e.playwright.d.ts +1 -0
  688. package/dist/types/components/alert/alert.e2e.playwright.d.ts +1 -0
  689. package/dist/types/components/alert-drawer/alert-drawer.e2e.playwright.d.ts +1 -0
  690. package/dist/types/components/breadcrumb/breadcrumb.e2e.playwright.d.ts +1 -0
  691. package/dist/types/components/button/button.e2e.playwright.d.ts +1 -0
  692. package/dist/types/components/checkbox/checkbox.e2e.playwright.d.ts +1 -0
  693. package/dist/types/components/chip/chip.e2e.playwright.d.ts +1 -0
  694. package/dist/types/components/com-nav/com-nav.e2e.playwright.d.ts +1 -0
  695. package/dist/types/components/counter/counter.e2e.playwright.d.ts +1 -0
  696. package/dist/types/components/dropdown/dropdown.e2e.playwright.d.ts +1 -0
  697. package/dist/types/components/editable-field/editable-field.e2e.playwright.d.ts +1 -0
  698. package/dist/types/components/form-field/form-field.e2e.playwright.d.ts +1 -0
  699. package/dist/types/components/grid/grid.e2e.playwright.d.ts +1 -0
  700. package/dist/types/components/horizontal-stepper/horizontal-stepper-interface.d.ts +2 -0
  701. package/dist/types/components/horizontal-stepper/horizontal-stepper.d.ts +4 -0
  702. package/dist/types/components/input/input.e2e.playwright.d.ts +1 -0
  703. package/dist/types/components/modal/modal.e2e.playwright.d.ts +1 -0
  704. package/dist/types/components/radio-group/radio-group.e2e.playwright.d.ts +1 -0
  705. package/dist/types/components/select/select.d.ts +7 -1
  706. package/dist/types/components/select/select.e2e.playwright.d.ts +1 -0
  707. package/dist/types/components/switch/switch.e2e.playwright.d.ts +1 -0
  708. package/dist/types/components/tabs/tabs.e2e.playwright.d.ts +1 -0
  709. package/dist/types/components/textarea/textarea.e2e.playwright.d.ts +1 -0
  710. package/dist/types/components.d.ts +12 -0
  711. package/dist/types/utils/playwright/test-expect.d.ts +33 -0
  712. package/dist/types/utils/playwright/test.d.ts +7 -0
  713. package/dist/wcs/{p-8e9bd0f1.entry.js → p-0326f834.entry.js} +2 -2
  714. package/dist/wcs/{p-8e9bd0f1.entry.js.map → p-0326f834.entry.js.map} +1 -1
  715. package/dist/wcs/p-2221bf0c.entry.js +16 -0
  716. package/dist/wcs/p-2221bf0c.entry.js.map +1 -0
  717. package/dist/wcs/{p-f2eeb249.entry.js → p-2329af04.entry.js} +2 -2
  718. package/dist/wcs/{p-f2eeb249.entry.js.map → p-2329af04.entry.js.map} +1 -1
  719. package/dist/wcs/p-4ae08567.entry.js +2 -0
  720. package/dist/wcs/p-4ae08567.entry.js.map +1 -0
  721. package/dist/wcs/p-4e2d6227.entry.js +2 -0
  722. package/dist/wcs/p-4e2d6227.entry.js.map +1 -0
  723. package/dist/wcs/p-5d598d35.entry.js +2 -0
  724. package/dist/wcs/p-5d598d35.entry.js.map +1 -0
  725. package/dist/wcs/p-8332a7e3.entry.js +2 -0
  726. package/dist/wcs/p-8332a7e3.entry.js.map +1 -0
  727. package/dist/wcs/{p-ec383729.entry.js → p-9b76b8e6.entry.js} +2 -2
  728. package/dist/wcs/{p-ec383729.entry.js.map → p-9b76b8e6.entry.js.map} +1 -1
  729. package/dist/wcs/{p-1f593d06.entry.js → p-abd8d5a0.entry.js} +2 -2
  730. package/dist/wcs/{p-622f7403.entry.js → p-c6f8c45c.entry.js} +2 -2
  731. package/dist/wcs/{p-a94e685c.entry.js → p-db7ba599.entry.js} +2 -2
  732. package/dist/wcs/p-e1fb3625.js +2 -0
  733. package/dist/wcs/p-e1fb3625.js.map +1 -0
  734. package/dist/wcs/{p-a956dc84.entry.js → p-f2f7595e.entry.js} +2 -2
  735. package/dist/wcs/{p-a956dc84.entry.js.map → p-f2f7595e.entry.js.map} +1 -1
  736. package/dist/wcs/p-fbd68522.entry.js +2 -0
  737. package/dist/wcs/p-fbd68522.entry.js.map +1 -0
  738. package/dist/wcs/{p-8c2605fd.entry.js → p-fe303f58.entry.js} +2 -2
  739. package/dist/wcs/wcs.esm.js +1 -1
  740. package/package.json +18 -24
  741. package/dist/cjs/popper-8d6e7fca.js.map +0 -1
  742. package/dist/collection/components/accordion/accordion.e2e.js +0 -187
  743. package/dist/collection/components/accordion/accordion.e2e.js.map +0 -1
  744. package/dist/collection/components/alert/alert.e2e.js +0 -142
  745. package/dist/collection/components/alert/alert.e2e.js.map +0 -1
  746. package/dist/collection/components/alert-drawer/alert-drawer.e2e.js +0 -111
  747. package/dist/collection/components/alert-drawer/alert-drawer.e2e.js.map +0 -1
  748. package/dist/collection/components/breadcrumb/breadcrumb.e2e.js +0 -223
  749. package/dist/collection/components/breadcrumb/breadcrumb.e2e.js.map +0 -1
  750. package/dist/collection/components/button/button.e2e.js +0 -25
  751. package/dist/collection/components/button/button.e2e.js.map +0 -1
  752. package/dist/collection/components/checkbox/checkbox.e2e.js +0 -45
  753. package/dist/collection/components/checkbox/checkbox.e2e.js.map +0 -1
  754. package/dist/collection/components/chip/chip.e2e.js +0 -209
  755. package/dist/collection/components/chip/chip.e2e.js.map +0 -1
  756. package/dist/collection/components/com-nav/com-nav.e2e.js.map +0 -1
  757. package/dist/collection/components/counter/counter.e2e.js +0 -206
  758. package/dist/collection/components/counter/counter.e2e.js.map +0 -1
  759. package/dist/collection/components/dropdown/dropdown.e2e.js +0 -156
  760. package/dist/collection/components/dropdown/dropdown.e2e.js.map +0 -1
  761. package/dist/collection/components/editable-field/editable-field.e2e.js +0 -176
  762. package/dist/collection/components/editable-field/editable-field.e2e.js.map +0 -1
  763. package/dist/collection/components/form-field/form-field.e2e.js +0 -122
  764. package/dist/collection/components/form-field/form-field.e2e.js.map +0 -1
  765. package/dist/collection/components/grid/grid.e2e.js +0 -147
  766. package/dist/collection/components/grid/grid.e2e.js.map +0 -1
  767. package/dist/collection/components/input/input.e2e.js +0 -152
  768. package/dist/collection/components/input/input.e2e.js.map +0 -1
  769. package/dist/collection/components/modal/modal.e2e.js +0 -36
  770. package/dist/collection/components/modal/modal.e2e.js.map +0 -1
  771. package/dist/collection/components/radio-group/radio-group.e2e.js +0 -239
  772. package/dist/collection/components/radio-group/radio-group.e2e.js.map +0 -1
  773. package/dist/collection/components/select/select.e2e.js +0 -1081
  774. package/dist/collection/components/select/select.e2e.js.map +0 -1
  775. package/dist/collection/components/switch/switch.e2e.js +0 -45
  776. package/dist/collection/components/switch/switch.e2e.js.map +0 -1
  777. package/dist/collection/components/tabs/tabs.e2e.js +0 -207
  778. package/dist/collection/components/tabs/tabs.e2e.js.map +0 -1
  779. package/dist/collection/components/textarea/textarea.e2e.js +0 -132
  780. package/dist/collection/components/textarea/textarea.e2e.js.map +0 -1
  781. package/dist/collection/utils/tests.js +0 -23
  782. package/dist/collection/utils/tests.js.map +0 -1
  783. package/dist/esm/popper-e491c314.js.map +0 -1
  784. package/dist/types/utils/tests.d.ts +0 -4
  785. package/dist/wcs/p-0dd07842.entry.js +0 -2
  786. package/dist/wcs/p-0dd07842.entry.js.map +0 -1
  787. package/dist/wcs/p-0f864e86.js +0 -2
  788. package/dist/wcs/p-0f864e86.js.map +0 -1
  789. package/dist/wcs/p-1244daa0.entry.js +0 -2
  790. package/dist/wcs/p-1244daa0.entry.js.map +0 -1
  791. package/dist/wcs/p-1fbe0328.entry.js +0 -2
  792. package/dist/wcs/p-1fbe0328.entry.js.map +0 -1
  793. package/dist/wcs/p-828b45b4.entry.js +0 -2
  794. package/dist/wcs/p-828b45b4.entry.js.map +0 -1
  795. package/dist/wcs/p-b94a09b6.entry.js +0 -16
  796. package/dist/wcs/p-b94a09b6.entry.js.map +0 -1
  797. package/dist/wcs/p-fd187bce.entry.js +0 -2
  798. package/dist/wcs/p-fd187bce.entry.js.map +0 -1
  799. /package/dist/wcs/{p-1f593d06.entry.js.map → p-abd8d5a0.entry.js.map} +0 -0
  800. /package/dist/wcs/{p-622f7403.entry.js.map → p-c6f8c45c.entry.js.map} +0 -0
  801. /package/dist/wcs/{p-a94e685c.entry.js.map → p-db7ba599.entry.js.map} +0 -0
  802. /package/dist/wcs/{p-8c2605fd.entry.js.map → p-fe303f58.entry.js.map} +0 -0
@@ -0,0 +1,190 @@
1
+ import { setWcsContent } from "../../utils/playwright/test";
2
+ import { test } from "@stencil/playwright";
3
+ import { expect } from "@playwright/test";
4
+ test.describe('Chip component', () => {
5
+ test.describe('Events', () => {
6
+ test('should emit wcsChipSelectChange with selected=true on click (selectable by default)', async ({ page }) => {
7
+ // Given
8
+ await setWcsContent(page, `
9
+ <wcs-chip value="chip-id" label="Chip"></wcs-chip>
10
+ `);
11
+ const chip = page.locator('wcs-chip');
12
+ const wcsChipSelectChangeEventSpy = await chip.spyOnEvent('wcsChipSelectChange');
13
+ // When
14
+ await chip.click();
15
+ await page.waitForChanges();
16
+ // Then
17
+ expect(wcsChipSelectChangeEventSpy).toHaveReceivedEventDetail({ value: 'chip-id', selected: true });
18
+ });
19
+ test('should toggle selection and emit on Space/Enter (selectable)', async ({ page }) => {
20
+ // Given
21
+ await setWcsContent(page, `
22
+ <wcs-chip value="chip-id" label="Chip"></wcs-chip>
23
+ `);
24
+ const chip = page.locator('wcs-chip');
25
+ const wcsChipSelectChangeEventSpy = await chip.spyOnEvent('wcsChipSelectChange');
26
+ // When - Space selects
27
+ await chip.focus();
28
+ await chip.press('Space');
29
+ // When - Enter toggles back
30
+ await chip.press('Enter');
31
+ await page.waitForChanges();
32
+ // Then
33
+ expect(wcsChipSelectChangeEventSpy).toHaveReceivedEventTimes(2);
34
+ expect(wcsChipSelectChangeEventSpy).toHaveNthReceivedEventDetail(1, { value: 'chip-id', selected: false });
35
+ });
36
+ test('should emit wcsChipDismiss when clicking dismiss button (dismissible)', async ({ page }) => {
37
+ // Given
38
+ await setWcsContent(page, `
39
+ <wcs-chip mode="dismissible" value="chip-id" label="Chip"></wcs-chip>
40
+ `);
41
+ const chip = page.locator('wcs-chip');
42
+ const wcsChipDismissEventSpy = await chip.spyOnEvent('wcsChipDismiss');
43
+ const dismissBtn = page.locator('wcs-chip button');
44
+ // When
45
+ await dismissBtn.click();
46
+ await page.waitForChanges();
47
+ // Then
48
+ expect(wcsChipDismissEventSpy).toHaveReceivedEventDetail({ value: 'chip-id' });
49
+ // open prop should be false -> attribute removed
50
+ await expect(chip).not.toHaveAttribute('open');
51
+ });
52
+ });
53
+ test.describe('Keyboard', () => {
54
+ test('Delete/Backspace on dismiss button dismisses the chip', async ({ page }) => {
55
+ // Given
56
+ await setWcsContent(page, `
57
+ <wcs-chip mode="dismissible" value="chip-id" label="Chip"></wcs-chip>
58
+ `);
59
+ const chip = page.locator('wcs-chip');
60
+ const wcsChipDismissEventSpy = await chip.spyOnEvent('wcsChipDismiss');
61
+ const dismissBtn = page.locator('wcs-chip button');
62
+ // When
63
+ await dismissBtn.focus();
64
+ await page.keyboard.press('Delete');
65
+ await page.waitForChanges();
66
+ // Then
67
+ await expect(wcsChipDismissEventSpy).toHaveReceivedEventTimes(1);
68
+ await expect(chip).not.toHaveAttribute('open');
69
+ });
70
+ });
71
+ test.describe('Accessibility', () => {
72
+ test('exposes proper ARIA for selectable: role=checkbox, aria-checked toggles, tabindex respects disabled', async ({ page }) => {
73
+ // Given
74
+ await setWcsContent(page, `
75
+ <wcs-chip value="chip-id" label="Chip"></wcs-chip>
76
+ `);
77
+ const chip = page.locator('wcs-chip');
78
+ // Then default
79
+ await expect(chip).toHaveAttribute('role', 'checkbox');
80
+ await expect(chip).toHaveAttribute('aria-checked', 'false');
81
+ await expect(chip).toHaveAttribute('tabindex', '0');
82
+ // When
83
+ await chip.click();
84
+ await page.waitForChanges();
85
+ // Then toggled
86
+ await expect(chip).toHaveAttribute('aria-checked', 'true');
87
+ });
88
+ test('exposes proper ARIA/disabled for dismissible: button has label and respects disabled', async ({ page }) => {
89
+ // Given
90
+ await setWcsContent(page, `
91
+ <wcs-chip mode="dismissible" value="chip-id" label="Chip"></wcs-chip>
92
+ `);
93
+ const chip = page.locator('wcs-chip');
94
+ const btn = page.locator('wcs-chip button');
95
+ // Then
96
+ await expect(btn).toHaveAttribute('aria-label', 'Supprimer Chip');
97
+ // When disabled
98
+ await chip.evaluate((el) => el.disabled = true);
99
+ await page.waitForChanges();
100
+ // Then
101
+ await expect(chip).toHaveAttribute('aria-disabled', 'true');
102
+ await expect(btn).toBeDisabled();
103
+ });
104
+ });
105
+ test.describe('Disabled state', () => {
106
+ test('does not emit select event when disabled (click and Space)', async ({ page }) => {
107
+ // Given
108
+ await setWcsContent(page, `
109
+ <wcs-chip disabled value="chip-id" label="Chip"></wcs-chip>
110
+ `);
111
+ const chip = page.locator('wcs-chip');
112
+ const wcsChipSelectChangeEventSpy = await chip.spyOnEvent('wcsChipSelectChange');
113
+ // When
114
+ await chip.click({ force: true });
115
+ await chip.press('Space');
116
+ await page.waitForChanges();
117
+ // Then
118
+ expect(wcsChipSelectChangeEventSpy).toHaveReceivedEventTimes(0);
119
+ await expect(chip).toHaveAttribute('tabindex', '-1');
120
+ await expect(chip).toHaveAttribute('aria-checked', 'false');
121
+ });
122
+ test('does not emit dismiss event when disabled', async ({ page }) => {
123
+ // Given
124
+ await setWcsContent(page, `
125
+ <wcs-chip disabled mode="dismissible" value="chip-id" label="Chip"></wcs-chip>
126
+ `);
127
+ const chip = page.locator('wcs-chip');
128
+ const wcsChipDismissEventSpy = await chip.spyOnEvent('wcsChipDismiss');
129
+ const btn = page.locator('wcs-chip button');
130
+ // When
131
+ await btn.click({ force: true });
132
+ await page.waitForChanges();
133
+ // Then
134
+ expect(wcsChipDismissEventSpy).toHaveReceivedEventTimes(0);
135
+ await expect(chip).toHaveAttribute('open', '');
136
+ });
137
+ });
138
+ test.describe('Focus management', () => {
139
+ test('after dismiss, focus moves to next actionable chip (selectable host)', async ({ page }) => {
140
+ // Given
141
+ await setWcsContent(page, `
142
+ <div>
143
+ <wcs-chip id="c1" mode="dismissible" value="c1" label="One"></wcs-chip>
144
+ <wcs-chip id="c2" value="c2" label="Two"></wcs-chip>
145
+ </div>
146
+ `);
147
+ const btn = page.locator('#c1 button');
148
+ // When
149
+ await btn.click();
150
+ await page.waitForChanges();
151
+ // Then
152
+ const c2 = page.locator('#c2');
153
+ await expect(c2).toBeFocused();
154
+ });
155
+ test('after dismiss, focus moves to next actionable chip (dismissable host)', async ({ page }) => {
156
+ // Given
157
+ await setWcsContent(page, `
158
+ <div>
159
+ <wcs-chip id="c1" mode="dismissible" value="c1" label="One"></wcs-chip>
160
+ <wcs-chip id="c2" mode="dismissible" value="c2" label="Two"></wcs-chip>
161
+ </div>
162
+ `);
163
+ const c1 = page.locator('#c1 button');
164
+ // When
165
+ await c1.click();
166
+ await page.waitForChanges();
167
+ // Then
168
+ const c2 = page.locator('#c2');
169
+ await expect(c2).toBeFocused();
170
+ });
171
+ test('skips disabled chips when moving focus after dismiss', async ({ page }) => {
172
+ // Given
173
+ await setWcsContent(page, `
174
+ <div>
175
+ <wcs-chip id="c1" mode="dismissible" value="c1" label="One"></wcs-chip>
176
+ <wcs-chip id="c2" disabled value="c2" label="Two"></wcs-chip>
177
+ <wcs-chip id="c3" value="c3" label="Three"></wcs-chip>
178
+ </div>
179
+ `);
180
+ const btn = page.locator('#c1 button');
181
+ // When
182
+ await btn.click();
183
+ await page.waitForChanges();
184
+ // Then
185
+ const c3 = page.locator('#c3');
186
+ await expect(c3).toBeFocused();
187
+ });
188
+ });
189
+ });
190
+ //# sourceMappingURL=chip.e2e.playwright.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chip.e2e.playwright.js","sourceRoot":"","sources":["../../../src/components/chip/chip.e2e.playwright.ts"],"names":[],"mappings":"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","sourcesContent":["import { setWcsContent } from '../../utils/playwright/test';\nimport { test, E2EPage } from \"@stencil/playwright\";\n\nimport { expect } from \"@playwright/test\";\n\ntest.describe('Chip component', () => {\n test.describe('Events', () => {\n test('should emit wcsChipSelectChange with selected=true on click (selectable by default)', async ({ page }: { page: E2EPage }) => {\n // Given\n await setWcsContent(page, `\n <wcs-chip value=\"chip-id\" label=\"Chip\"></wcs-chip>\n `);\n\n const chip = page.locator('wcs-chip');\n const wcsChipSelectChangeEventSpy = await chip.spyOnEvent('wcsChipSelectChange');\n\n // When\n await chip.click();\n await page.waitForChanges();\n\n // Then\n expect(wcsChipSelectChangeEventSpy).toHaveReceivedEventDetail({ value: 'chip-id', selected: true });\n });\n\n test('should toggle selection and emit on Space/Enter (selectable)', async ({ page }: { page: E2EPage }) => {\n // Given\n await setWcsContent(page, `\n <wcs-chip value=\"chip-id\" label=\"Chip\"></wcs-chip>\n `);\n\n const chip = page.locator('wcs-chip');\n const wcsChipSelectChangeEventSpy = await chip.spyOnEvent('wcsChipSelectChange');\n\n // When - Space selects\n await chip.focus();\n await chip.press('Space');\n // When - Enter toggles back\n await chip.press('Enter');\n await page.waitForChanges();\n\n // Then\n expect(wcsChipSelectChangeEventSpy).toHaveReceivedEventTimes(2);\n expect(wcsChipSelectChangeEventSpy).toHaveNthReceivedEventDetail(1, { value: 'chip-id', selected: false });\n });\n\n test('should emit wcsChipDismiss when clicking dismiss button (dismissible)', async ({ page }: { page: E2EPage }) => {\n // Given\n await setWcsContent(page, `\n <wcs-chip mode=\"dismissible\" value=\"chip-id\" label=\"Chip\"></wcs-chip>\n `);\n\n const chip = page.locator('wcs-chip');\n const wcsChipDismissEventSpy = await chip.spyOnEvent('wcsChipDismiss');\n const dismissBtn = page.locator('wcs-chip button');\n\n // When\n await dismissBtn.click();\n await page.waitForChanges();\n\n // Then\n expect(wcsChipDismissEventSpy).toHaveReceivedEventDetail({ value: 'chip-id' });\n // open prop should be false -> attribute removed\n await expect(chip).not.toHaveAttribute('open');\n });\n });\n\n test.describe('Keyboard', () => {\n test('Delete/Backspace on dismiss button dismisses the chip', async ({ page }: { page: E2EPage }) => {\n // Given\n await setWcsContent(page, `\n <wcs-chip mode=\"dismissible\" value=\"chip-id\" label=\"Chip\"></wcs-chip>\n `);\n\n const chip = page.locator('wcs-chip');\n const wcsChipDismissEventSpy = await chip.spyOnEvent('wcsChipDismiss');\n const dismissBtn = page.locator('wcs-chip button');\n\n // When\n await dismissBtn.focus();\n await page.keyboard.press('Delete');\n await page.waitForChanges();\n\n // Then\n await expect(wcsChipDismissEventSpy).toHaveReceivedEventTimes(1);\n await expect(chip).not.toHaveAttribute('open');\n });\n });\n\n test.describe('Accessibility', () => {\n test('exposes proper ARIA for selectable: role=checkbox, aria-checked toggles, tabindex respects disabled', async ({ page }: { page: E2EPage }) => {\n // Given\n await setWcsContent(page, `\n <wcs-chip value=\"chip-id\" label=\"Chip\"></wcs-chip>\n `);\n\n const chip = page.locator('wcs-chip');\n\n // Then default\n await expect(chip).toHaveAttribute('role', 'checkbox');\n await expect(chip).toHaveAttribute('aria-checked', 'false');\n await expect(chip).toHaveAttribute('tabindex', '0');\n\n // When\n await chip.click();\n await page.waitForChanges();\n\n // Then toggled\n await expect(chip).toHaveAttribute('aria-checked', 'true');\n });\n\n test('exposes proper ARIA/disabled for dismissible: button has label and respects disabled', async ({ page }: { page: E2EPage }) => {\n // Given\n await setWcsContent(page, `\n <wcs-chip mode=\"dismissible\" value=\"chip-id\" label=\"Chip\"></wcs-chip>\n `);\n\n const chip = page.locator('wcs-chip');\n const btn = page.locator('wcs-chip button');\n\n // Then\n await expect(btn).toHaveAttribute('aria-label', 'Supprimer Chip');\n\n // When disabled\n await chip.evaluate((el: any) => el.disabled = true);\n await page.waitForChanges();\n\n // Then\n await expect(chip).toHaveAttribute('aria-disabled', 'true');\n await expect(btn).toBeDisabled();\n });\n });\n\n test.describe('Disabled state', () => {\n test('does not emit select event when disabled (click and Space)', async ({ page }: { page: E2EPage }) => {\n // Given\n await setWcsContent(page, `\n <wcs-chip disabled value=\"chip-id\" label=\"Chip\"></wcs-chip>\n `);\n\n const chip = page.locator('wcs-chip');\n const wcsChipSelectChangeEventSpy = await chip.spyOnEvent('wcsChipSelectChange');\n\n // When\n await chip.click({ force: true });\n await chip.press('Space');\n await page.waitForChanges();\n\n // Then\n expect(wcsChipSelectChangeEventSpy).toHaveReceivedEventTimes(0);\n await expect(chip).toHaveAttribute('tabindex', '-1');\n await expect(chip).toHaveAttribute('aria-checked', 'false');\n });\n\n test('does not emit dismiss event when disabled', async ({ page }: { page: E2EPage }) => {\n // Given\n await setWcsContent(page, `\n <wcs-chip disabled mode=\"dismissible\" value=\"chip-id\" label=\"Chip\"></wcs-chip>\n `);\n\n const chip = page.locator('wcs-chip');\n const wcsChipDismissEventSpy = await chip.spyOnEvent('wcsChipDismiss');\n const btn = page.locator('wcs-chip button');\n\n // When\n await btn.click({ force: true });\n await page.waitForChanges();\n\n // Then\n expect(wcsChipDismissEventSpy).toHaveReceivedEventTimes(0);\n await expect(chip).toHaveAttribute('open', '');\n });\n });\n\n test.describe('Focus management', () => {\n test('after dismiss, focus moves to next actionable chip (selectable host)', async ({ page }: { page: E2EPage }) => {\n // Given\n await setWcsContent(page, `\n <div>\n <wcs-chip id=\"c1\" mode=\"dismissible\" value=\"c1\" label=\"One\"></wcs-chip>\n <wcs-chip id=\"c2\" value=\"c2\" label=\"Two\"></wcs-chip>\n </div>\n `);\n\n const btn = page.locator('#c1 button');\n\n // When\n await btn.click();\n await page.waitForChanges();\n\n // Then\n const c2 = page.locator('#c2');\n await expect(c2).toBeFocused();\n });\n\n test('after dismiss, focus moves to next actionable chip (dismissable host)', async ({ page }: { page: E2EPage }) => {\n // Given\n await setWcsContent(page, `\n <div>\n <wcs-chip id=\"c1\" mode=\"dismissible\" value=\"c1\" label=\"One\"></wcs-chip>\n <wcs-chip id=\"c2\" mode=\"dismissible\" value=\"c2\" label=\"Two\"></wcs-chip>\n </div>\n `);\n\n const c1 = page.locator('#c1 button');\n\n // When\n await c1.click();\n await page.waitForChanges();\n\n // Then\n const c2 = page.locator('#c2');\n await expect(c2).toBeFocused();\n });\n\n test('skips disabled chips when moving focus after dismiss', async ({ page }: { page: E2EPage }) => {\n // Given\n await setWcsContent(page, `\n <div>\n <wcs-chip id=\"c1\" mode=\"dismissible\" value=\"c1\" label=\"One\"></wcs-chip>\n <wcs-chip id=\"c2\" disabled value=\"c2\" label=\"Two\"></wcs-chip>\n <wcs-chip id=\"c3\" value=\"c3\" label=\"Three\"></wcs-chip>\n </div>\n `);\n\n const btn = page.locator('#c1 button');\n\n // When\n await btn.click();\n await page.waitForChanges();\n\n // Then\n const c3 = page.locator('#c3');\n await expect(c3).toBeFocused();\n });\n });\n});\n"]}
@@ -61,6 +61,21 @@
61
61
  line-height: var(--wcs-com-nav-app-name-line-height);
62
62
  color: var(--wcs-com-nav-app-name-color);
63
63
  }
64
+ :host .app-name ::slotted(a) {
65
+ user-select: none;
66
+ cursor: pointer;
67
+ text-decoration: none;
68
+ color: inherit;
69
+ font-weight: inherit;
70
+ }
71
+ :host .app-name ::slotted(a:focus-visible) {
72
+ outline: none;
73
+ }
74
+ :host .app-name:focus-within {
75
+ outline: var(--wcs-semantic-border-width-large) dashed var(--wcs-com-nav-focus-outline-color);
76
+ outline-offset: var(--wcs-semantic-spacing-small);
77
+ border-radius: 0.1rem;
78
+ }
64
79
  :host .menu-bar {
65
80
  display: none;
66
81
  }
@@ -1,13 +1,12 @@
1
- import { newE2EPage } from "@stencil/core/testing";
2
- import { setWcsContent } from "../../utils/tests";
3
- describe('Com nav', () => {
4
- describe('Keyboard navigation', () => {
5
- describe('Mobile menu', () => {
6
- let page;
7
- beforeEach(async () => {
1
+ import { setWcsContent } from "../../utils/playwright/test";
2
+ import { test } from "@stencil/playwright";
3
+ import { expect } from "@playwright/test";
4
+ test.describe('Com nav', () => {
5
+ test.describe('Keyboard navigation', () => {
6
+ test.describe('Mobile menu', () => {
7
+ test.beforeEach(async ({ page }) => {
8
8
  // Given
9
- page = await newE2EPage();
10
- await page.setViewport({
9
+ await page.setViewportSize({
11
10
  width: 320,
12
11
  height: 480,
13
12
  });
@@ -65,49 +64,67 @@ describe('Com nav', () => {
65
64
  </wcs-com-nav>
66
65
  `);
67
66
  });
68
- it.each(['Enter', 'Space'])('should open menu when press %s key on mobile menu icon', async (key) => {
69
- // Given the content is set in beforeEach method
67
+ test('should open menu when press Enter key on mobile menu icon', async ({ page }) => {
70
68
  // When
71
- const menuIcon = await page.find('wcs-com-nav >>> #mobile-menu-icon');
69
+ const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');
72
70
  await menuIcon.focus();
73
- await page.keyboard.press(key);
71
+ await page.keyboard.press('Enter');
74
72
  await page.waitForChanges();
75
73
  // Then
76
- const menu = await page.find('wcs-com-nav >>> .mobile-overlay');
77
- expect(menu).toBeDefined();
78
- expect(menu).toHaveAttribute('data-mobile-open');
74
+ const menu = page.locator('wcs-com-nav .mobile-overlay');
75
+ await expect(menu).toHaveAttribute('data-mobile-open');
79
76
  });
80
- it.each(['Enter', 'Space'])('should close menu when it opens and press %s key on mobile menu icon', async (key) => {
77
+ test('should open menu when press Space key on mobile menu icon', async ({ page }) => {
78
+ // When
79
+ const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');
80
+ await menuIcon.focus();
81
+ await page.keyboard.press('Space');
82
+ await page.waitForChanges();
83
+ // Then
84
+ const menu = page.locator('wcs-com-nav .mobile-overlay');
85
+ await expect(menu).toHaveAttribute('data-mobile-open');
86
+ });
87
+ test('should close menu when it opens and press Enter key on mobile menu icon', async ({ page }) => {
81
88
  // Given
82
- // the content is set in beforeEach method
83
- const menuIcon = await page.find('wcs-com-nav >>> #mobile-menu-icon');
89
+ const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');
84
90
  await menuIcon.focus();
85
- await page.keyboard.press(key);
86
- // Wait for menu to open
91
+ await page.keyboard.press('Enter');
87
92
  await page.waitForChanges();
88
93
  // Close the menu
89
- await page.keyboard.press(key);
94
+ await page.keyboard.press('Enter');
90
95
  await page.waitForChanges();
91
96
  // Then
92
- const menu = await page.find('wcs-com-nav >>> .mobile-overlay');
93
- expect(menu).not.toHaveAttribute('data-mobile-open');
97
+ const menu = page.locator('wcs-com-nav .mobile-overlay');
98
+ await expect(menu).not.toHaveAttribute('data-mobile-open');
94
99
  });
95
- it('should be touchable on mobile and open the menu', async () => {
100
+ test('should close menu when it opens and press Space key on mobile menu icon', async ({ page }) => {
96
101
  // Given
97
- // the content is set in beforeEach method
98
- const menuIcon = await page.find('wcs-com-nav >>> #mobile-menu-icon');
99
- await menuIcon.tap();
102
+ const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');
103
+ await menuIcon.focus();
104
+ await page.keyboard.press('Space');
105
+ await page.waitForChanges();
106
+ // Close the menu
107
+ await page.keyboard.press('Space');
108
+ await page.waitForChanges();
109
+ // Then
110
+ const menu = page.locator('wcs-com-nav .mobile-overlay');
111
+ await expect(menu).not.toHaveAttribute('data-mobile-open');
112
+ });
113
+ test('should be touchable on mobile and open the menu', async ({ page }) => {
114
+ // Given
115
+ const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');
116
+ await menuIcon.click();
117
+ await page.waitForChanges();
100
118
  // Then
101
- const menu = await page.find('wcs-com-nav >>> .mobile-overlay');
102
- expect(menu).toBeDefined();
103
- expect(menu).toHaveAttribute('data-mobile-open');
119
+ const menu = page.locator('wcs-com-nav .mobile-overlay');
120
+ await expect(menu).toHaveAttribute('data-mobile-open');
104
121
  });
105
- it('should close menu when it opens and press escape key anywhere', async () => {
122
+ test('should close menu when it opens and press escape key anywhere', async ({ page }) => {
106
123
  // Given
107
- // the content is set in beforeEach method
108
- const menuIcon = await page.find('wcs-com-nav >>> #mobile-menu-icon');
124
+ const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');
109
125
  await menuIcon.focus();
110
126
  await page.keyboard.press('Enter');
127
+ await page.waitForChanges();
111
128
  // When
112
129
  // Navigate on menu
113
130
  await page.keyboard.press('Tab');
@@ -116,24 +133,23 @@ describe('Com nav', () => {
116
133
  await page.keyboard.press('Escape');
117
134
  await page.waitForChanges();
118
135
  // Then
119
- const menu = await page.find('wcs-com-nav >>> .mobile-overlay');
120
- expect(menu).not.toHaveAttribute('data-mobile-open');
136
+ const menu = page.locator('wcs-com-nav .mobile-overlay');
137
+ await expect(menu).not.toHaveAttribute('data-mobile-open');
121
138
  });
122
- it('should close the mobile menu when clicking on a wcs-com-nav-item', async () => {
139
+ test('should close the mobile menu when clicking on a wcs-com-nav-item', async ({ page }) => {
123
140
  // Given
124
- const menuIcon = await page.find('wcs-com-nav >>> #mobile-menu-icon');
125
- await menuIcon.tap();
126
- // Wait for menu to open
141
+ const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');
142
+ await menuIcon.click();
127
143
  await page.waitForChanges();
128
144
  // When
129
- const navItem = await page.find('#com-nav-item-last-item');
145
+ const navItem = page.locator('#com-nav-item-last-item');
130
146
  await navItem.click();
131
147
  await page.waitForChanges();
132
148
  // Then
133
- const menu = await page.find('wcs-com-nav >>> .mobile-overlay');
134
- expect(menu).not.toHaveAttribute('data-mobile-open');
149
+ const menu = page.locator('wcs-com-nav .mobile-overlay');
150
+ await expect(menu).not.toHaveAttribute('data-mobile-open');
135
151
  });
136
152
  });
137
153
  });
138
154
  });
139
- //# sourceMappingURL=com-nav.e2e.js.map
155
+ //# sourceMappingURL=com-nav.e2e.playwright.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"com-nav.e2e.playwright.js","sourceRoot":"","sources":["../../../src/components/com-nav/com-nav.e2e.playwright.ts"],"names":[],"mappings":"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","sourcesContent":["import { setWcsContent } from '../../utils/playwright/test';\nimport { test, E2EPage } from \"@stencil/playwright\";\n\nimport { expect } from \"@playwright/test\";\n\ntest.describe('Com nav', () => {\n test.describe('Keyboard navigation', () => {\n test.describe('Mobile menu', () => {\n test.beforeEach(async ({ page }: { page: E2EPage }) => {\n // Given\n await page.setViewportSize({\n width: 320,\n height: 480,\n });\n\n await setWcsContent(page, `\n <wcs-com-nav app-name=\"App Test\">\n <wcs-com-nav-submenu label=\"Sous menu\" panel-title=\"Sous Menu\"\n panel-description=\"Nullam id dolor id nibh ultricies vehicula ut id elit. Cras mattis consectetur purus sit amet fermentum. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.\">\n <wcs-com-nav-item>\n <a href=\"#\">Loisirs & Tourisme</a>\n </wcs-com-nav-item>\n <wcs-com-nav-item>\n <a href=\"#\">Toutes les lignes</a>\n </wcs-com-nav-item>\n <wcs-com-nav-item>\n <a href=\"#\">Services mobiles</a>\n </wcs-com-nav-item>\n <wcs-com-nav-item>\n <a href=\"#\">Au quotidien</a>\n </wcs-com-nav-item>\n <wcs-com-nav-item>\n <a href=\"#\">Le réseau</a>\n </wcs-com-nav-item>\n </wcs-com-nav-submenu>\n <wcs-com-nav-submenu label=\"Autre sous menu\" panel-title=\"Autre Sous Menu\"\n panel-description=\"Un autre sous menu avec des catégories. Cras mattis consectetur purus sit amet fermentum. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.\">\n <wcs-com-nav-item>\n <a href=\"#\">Le réseau</a>\n </wcs-com-nav-item>\n <wcs-com-nav-category label=\"Une catégorie\">\n <wcs-com-nav-item>\n <a href=\"#\">Services mobiles text plus long</a>\n </wcs-com-nav-item>\n <wcs-com-nav-item>\n <a href=\"#\">Au quotidien</a>\n </wcs-com-nav-item>\n <wcs-com-nav-item>\n <a href=\"#\">Le réseau</a>\n </wcs-com-nav-item>\n </wcs-com-nav-category>\n <wcs-com-nav-category label=\"Une catégorie\">\n <wcs-com-nav-item>\n <a href=\"#\">1</a>\n </wcs-com-nav-item>\n <wcs-com-nav-item>\n <a href=\"#\">2</a>\n </wcs-com-nav-item>\n </wcs-com-nav-category>\n </wcs-com-nav-submenu>\n <wcs-com-nav-item id=\"com-nav-item-last-item\">\n <a href=\"https://sncf.com\" target=\"_blank\">Ressource externe</a>\n </wcs-com-nav-item>\n <div slot=\"actions\">\n <wcs-button mode=\"clear\" class=\"wcs-dark\">Connexion</wcs-button>\n </div>\n </wcs-com-nav>\n `);\n });\n\n test('should open menu when press Enter key on mobile menu icon', async ({ page }: { page: E2EPage }) => {\n // When\n const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');\n await menuIcon.focus();\n await page.keyboard.press('Enter');\n await page.waitForChanges();\n\n // Then\n const menu = page.locator('wcs-com-nav .mobile-overlay');\n await expect(menu).toHaveAttribute('data-mobile-open');\n });\n\n test('should open menu when press Space key on mobile menu icon', async ({ page }: { page: E2EPage }) => {\n // When\n const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');\n await menuIcon.focus();\n await page.keyboard.press('Space');\n await page.waitForChanges();\n\n // Then\n const menu = page.locator('wcs-com-nav .mobile-overlay');\n await expect(menu).toHaveAttribute('data-mobile-open');\n });\n\n test('should close menu when it opens and press Enter key on mobile menu icon', async ({ page }: { page: E2EPage }) => {\n // Given\n const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');\n await menuIcon.focus();\n await page.keyboard.press('Enter');\n await page.waitForChanges();\n\n // Close the menu\n await page.keyboard.press('Enter');\n await page.waitForChanges();\n\n // Then\n const menu = page.locator('wcs-com-nav .mobile-overlay');\n await expect(menu).not.toHaveAttribute('data-mobile-open');\n });\n\n test('should close menu when it opens and press Space key on mobile menu icon', async ({ page }: { page: E2EPage }) => {\n // Given\n const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');\n await menuIcon.focus();\n await page.keyboard.press('Space');\n await page.waitForChanges();\n\n // Close the menu\n await page.keyboard.press('Space');\n await page.waitForChanges();\n\n // Then\n const menu = page.locator('wcs-com-nav .mobile-overlay');\n await expect(menu).not.toHaveAttribute('data-mobile-open');\n });\n\n test('should be touchable on mobile and open the menu', async ({ page }: { page: E2EPage }) => {\n // Given\n const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');\n await menuIcon.click();\n await page.waitForChanges();\n\n // Then\n const menu = page.locator('wcs-com-nav .mobile-overlay');\n await expect(menu).toHaveAttribute('data-mobile-open');\n });\n\n test('should close menu when it opens and press escape key anywhere', async ({ page }: { page: E2EPage }) => {\n // Given\n const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');\n await menuIcon.focus();\n await page.keyboard.press('Enter');\n await page.waitForChanges();\n\n // When\n // Navigate on menu\n await page.keyboard.press('Tab');\n await page.keyboard.press('Tab');\n await page.keyboard.press('Tab');\n await page.keyboard.press('Escape');\n await page.waitForChanges();\n\n // Then\n const menu = page.locator('wcs-com-nav .mobile-overlay');\n await expect(menu).not.toHaveAttribute('data-mobile-open');\n });\n\n test('should close the mobile menu when clicking on a wcs-com-nav-item', async ({ page }: { page: E2EPage }) => {\n // Given\n const menuIcon = page.locator('wcs-com-nav #mobile-menu-icon');\n await menuIcon.click();\n await page.waitForChanges();\n\n // When\n const navItem = page.locator('#com-nav-item-last-item');\n await navItem.click();\n await page.waitForChanges();\n\n // Then\n const menu = page.locator('wcs-com-nav .mobile-overlay');\n await expect(menu).not.toHaveAttribute('data-mobile-open');\n });\n });\n });\n});\n"]}
@@ -78,11 +78,11 @@ export class ComNav {
78
78
  }
79
79
  render() {
80
80
  const menuAriaLabel = this.inheritedAttributes['aria-label'] || undefined;
81
- return (h(Host, { key: 'b39ff3dbd6d304ad0252e0fcfd2e0c5716b666db' }, h("div", { key: 'f84b73c9cee6295a7776576afeb61b65b71ea34e', class: "container" }, h("div", { key: 'a39b867e9d102abb4e4c13503a544681cd9b7fd8', class: "container-left" }, h("div", { key: '49db5dd80f097a9b2ccaf39fc64be9f6100108be', class: "app-name" }, this.appName, h("slot", { key: '2936888d5a805c67a3be4079a7eea62d460d42fe', name: "app-name" })), this.currentActiveSizing === 'desktop' ?
81
+ return (h(Host, { key: 'b39ff3dbd6d304ad0252e0fcfd2e0c5716b666db' }, h("div", { key: 'f84b73c9cee6295a7776576afeb61b65b71ea34e', class: "container" }, h("div", { key: 'a39b867e9d102abb4e4c13503a544681cd9b7fd8', class: "container-left" }, h("div", { key: '49db5dd80f097a9b2ccaf39fc64be9f6100108be', class: "app-name" }, this.appName, h("slot", { key: '3cfe05e6e510826ffd2168e6edc3380bc92ad459', name: "app-name" })), this.currentActiveSizing === 'desktop' ?
82
82
  h("nav", Object.assign({ role: "navigation" }, this.inheritedAttributes), h("div", { class: "menu-bar", role: "list" }, this.currentActiveSizing === 'desktop'
83
83
  ? h("slot", null)
84
84
  : null))
85
- : null), h("div", { key: 'c2c97d21d21d542a18fb141f90ce7ce91d0b12c0', class: "container-right" }, h("slot", { key: '51912b232ac4d51baf1d2c164e90ab59a787924e', name: "actions" }), this.currentActiveSizing === 'mobile' ?
85
+ : null), h("div", { key: '83496cccd32eec07f5a508dbf36b591442e668e2', class: "container-right" }, h("slot", { key: 'cf68946afcefa0b77fb57019f9734e5ff1e763aa', name: "actions" }), this.currentActiveSizing === 'mobile' ?
86
86
  h("nav", Object.assign({ id: "wcs-com-nav-mobile-menu", role: "navigation" }, this.inheritedAttributes), h("button", { id: "mobile-menu-icon", "aria-label": menuAriaLabel, "aria-expanded": this.mobileMenuOpen ? "true" : "false", "aria-controls": "wcs-com-nav-mobile-menu", onClick: () => this.mobileMenuIconClick() }), this.currentActiveSizing === 'mobile'
87
87
  ? h("div", { class: "mobile-overlay", "data-mobile-open": this.mobileMenuOpen, role: "list" }, h("slot", null))
88
88
  : null)
@@ -143,7 +143,7 @@ export class ComNav {
143
143
  "signature": "(attr: AriaAttributeName, value: string | null | undefined) => Promise<void>",
144
144
  "parameters": [{
145
145
  "name": "attr",
146
- "type": "\"role\" | `aria-${string}`",
146
+ "type": "`aria-${string}` | \"role\"",
147
147
  "docs": ""
148
148
  }, {
149
149
  "name": "value",
@@ -1 +1 @@
1
- {"version":3,"file":"com-nav.js","sourceRoot":"","sources":["../../../src/components/com-nav/com-nav.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n ComponentInterface,\n Element,\n forceUpdate,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport { comNavDidLoadWithResizeObserver, registerCloseHandlerForFocusOutEventOn } from \"./com-nav-utils\";\nimport { inheritAriaAttributes, inheritAttributes, isEscapeKey } from \"../../utils/helpers\";\nimport { AriaAttributeName, MutableAriaAttribute } from \"../../utils/mutable-aria-attribute\";\nimport { ComNavSize } from \"./com-nav-size\";\n\n\nconst COM_NAV_INHERITED_ATTRS = ['title'];\n\nconst WCS_COM_NAV_SUBMENU_TAG_NAME = 'WCS-COM-NAV-SUBMENU';\n\n/**\n * *Part of communication design system*\n *\n * The com-nav component is a container for navigation links to external or internal pages of the website.\n *\n * @slot <no-name> - Default slot containing all the menu declarations\n * @slot app-name - (Optional) Extra slot for the application name\n * @slot actions - Slot for actions placed on the right part of the container\n * \n * @cssprop --wcs-com-nav-menu-bar-height - Height of the menu bar\n * @cssprop --wcs-com-nav-border-color - Border color of the bottom border of the com-nav\n * @cssprop --wcs-com-nav-border-width - Border width of the border below com-nav\n * @cssprop --wcs-com-nav-background-color - Background color of the com-nav;\n * @cssprop --wcs-com-nav-app-name-color - App name color\n * @cssprop --wcs-com-nav-app-name-font-weight - App name font-weight\n * @cssprop --wcs-com-nav-app-name-font-size - Font size of the App name text\n * @cssprop --wcs-com-nav-app-name-line-height - Line height of the App name text\n * @cssprop --wcs-com-nav-item-color - Color of the wcs-nav-item inside menu-bar\n * @cssprop --wcs-com-nav-item-font-weight - Font weight of the wcs-nav-item inside menu-bar\n * @cssprop --wcs-com-nav-focus-outline-color - Focus outline color of the wcs-nav-item inside menu-bar\n * @cssprop --wcs-com-nav-horizontal-padding - Horizontal padding of wcs-com-nav\n * @cssprop --wcs-com-nav-vertical-padding - Vertical padding of wcs-com-nav\n * @cssprop --wcs-com-nav-mobile-overlay-gap - Gap between each items section in mobile overlay\n * @cssprop --wcs-com-nav-mobile-overlay-padding - Padding inside mobile overlay\n * @cssprop --wcs-com-nav-mobile-menu-icon-border-color - Bar border color on the left of icon mobile menu\n * @cssprop --wcs-com-nav-mobile-menu-icon-gap- Gap between icon mobile menu and separator on the left\n * @cssprop --wcs-com-nav-mobile-menu-icon-margin-left - Margin left of icon mobile menu\n * @cssprop --wcs-com-nav-menu-bar-gap - Gap between each item inside menu-bar\n * @cssprop --wcs-com-nav-menu-bar-margin-left - Margin left between menu bar and the app-name section\n */\n@Component({\n tag: 'wcs-com-nav',\n styleUrl: 'com-nav.scss',\n shadow: true,\n})\nexport class ComNav implements ComponentInterface, MutableAriaAttribute {\n @Element() private el!: HTMLWcsComNavElement;\n private inheritedAttributes: { [k: string]: any } = {};\n\n /** Name of the application to be displayed in the menu bar */\n @Prop() appName: string;\n\n @State() private mobileMenuOpen: boolean = false;\n @State() public currentActiveSizing: ComNavSize;\n private resizeObserver: ResizeObserver;\n\n private mobileMenuIconClick() {\n this.mobileMenuOpen = !this.mobileMenuOpen;\n }\n\n disconnectedCallback() {\n this.resizeObserver?.disconnect();\n }\n\n componentWillLoad(): Promise<void> | void {\n this.inheritedAttributes = {\n ...inheritAriaAttributes(this.el),\n ...inheritAttributes(this.el, COM_NAV_INHERITED_ATTRS)\n };\n\n const slottedNavigableItems = this.el.querySelectorAll(':scope > wcs-com-nav-submenu:not([slot]), :scope > a:not([slot])');\n registerCloseHandlerForFocusOutEventOn<HTMLWcsComNavSubmenuElement>(slottedNavigableItems, WCS_COM_NAV_SUBMENU_TAG_NAME);\n }\n\n componentDidLoad(): void {\n if(!this.resizeObserver) {\n this.resizeObserver = comNavDidLoadWithResizeObserver(this);\n this.resizeObserver.observe(document.body);\n }\n }\n \n @Method()\n async setAriaAttribute(attr: AriaAttributeName, value: string | null | undefined) {\n // XXX: Special case on this component because of the desktop / mobile mode that re-renders the <nav> element,\n // making it lose all its attribute\n this.inheritedAttributes[attr] = value;\n forceUpdate(this);\n }\n\n private closeMobileMenu() {\n this.mobileMenuOpen = false;\n }\n\n // In mobile mode, we have only one global drawer to display the menu, that why we have to listen the clicks events\n // in the root component (this component). In desktop mode, all submenus and categories manage their drawer its\n // opening state.\n //\n // We listen to the click events fired by the submenu component and we close the mobile menu.\n // In desktop mode, the submenu itself manages the closing of the menu.\n @Listen('wcsClickOnFinalAction')\n onClickOnFinalAction() {\n this.closeMobileMenu();\n }\n \n render() {\n const menuAriaLabel = this.inheritedAttributes['aria-label'] || undefined;\n \n return (\n <Host>\n <div class=\"container\">\n <div class=\"container-left\">\n <div class=\"app-name\">{this.appName}\n <slot name=\"app-name\"/>\n </div>\n {this.currentActiveSizing === 'desktop' ?\n <nav role=\"navigation\" {...this.inheritedAttributes}>\n <div class=\"menu-bar\" role=\"list\">\n {this.currentActiveSizing === 'desktop' \n ? <slot/> \n : null}\n </div>\n </nav>\n : null}\n </div>\n <div class=\"container-right\">\n <slot name=\"actions\"/>\n {this.currentActiveSizing === 'mobile' ?\n <nav id=\"wcs-com-nav-mobile-menu\" role=\"navigation\" {...this.inheritedAttributes}>\n <button id=\"mobile-menu-icon\"\n aria-label={menuAriaLabel}\n aria-expanded={this.mobileMenuOpen ? \"true\" : \"false\"}\n aria-controls=\"wcs-com-nav-mobile-menu\"\n onClick={() => this.mobileMenuIconClick()}></button>\n {this.currentActiveSizing === 'mobile'\n ? <div class=\"mobile-overlay\" data-mobile-open={this.mobileMenuOpen} role=\"list\"><slot /></div>\n : null}\n </nav>\n : null}\n </div>\n </div>\n </Host>\n );\n }\n\n /**\n * Close the mobile menu if the user press escape.\n * @param evt keydown event on window target.\n */\n @Listen('keydown', {target: 'window'})\n exitMobileMenuOnKeyDown(evt: KeyboardEvent) {\n if (isEscapeKey(evt)) {\n this.closeMobileMenu();\n }\n }\n}\n"]}
1
+ {"version":3,"file":"com-nav.js","sourceRoot":"","sources":["../../../src/components/com-nav/com-nav.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n ComponentInterface,\n Element,\n forceUpdate,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n} from '@stencil/core';\nimport { comNavDidLoadWithResizeObserver, registerCloseHandlerForFocusOutEventOn } from \"./com-nav-utils\";\nimport { inheritAriaAttributes, inheritAttributes, isEscapeKey } from \"../../utils/helpers\";\nimport { AriaAttributeName, MutableAriaAttribute } from \"../../utils/mutable-aria-attribute\";\nimport { ComNavSize } from \"./com-nav-size\";\n\n\nconst COM_NAV_INHERITED_ATTRS = ['title'];\n\nconst WCS_COM_NAV_SUBMENU_TAG_NAME = 'WCS-COM-NAV-SUBMENU';\n\n/**\n * *Part of communication design system*\n *\n * The com-nav component is a container for navigation links to external or internal pages of the website.\n *\n * @slot <no-name> - Default slot containing all the menu declarations\n * @slot app-name - (Optional) Extra slot for the application name\n * @slot actions - Slot for actions placed on the right part of the container\n * \n * @cssprop --wcs-com-nav-menu-bar-height - Height of the menu bar\n * @cssprop --wcs-com-nav-border-color - Border color of the bottom border of the com-nav\n * @cssprop --wcs-com-nav-border-width - Border width of the border below com-nav\n * @cssprop --wcs-com-nav-background-color - Background color of the com-nav;\n * @cssprop --wcs-com-nav-app-name-color - App name color\n * @cssprop --wcs-com-nav-app-name-font-weight - App name font-weight\n * @cssprop --wcs-com-nav-app-name-font-size - Font size of the App name text\n * @cssprop --wcs-com-nav-app-name-line-height - Line height of the App name text\n * @cssprop --wcs-com-nav-item-color - Color of the wcs-nav-item inside menu-bar\n * @cssprop --wcs-com-nav-item-font-weight - Font weight of the wcs-nav-item inside menu-bar\n * @cssprop --wcs-com-nav-focus-outline-color - Focus outline color of the wcs-nav-item inside menu-bar\n * @cssprop --wcs-com-nav-horizontal-padding - Horizontal padding of wcs-com-nav\n * @cssprop --wcs-com-nav-vertical-padding - Vertical padding of wcs-com-nav\n * @cssprop --wcs-com-nav-mobile-overlay-gap - Gap between each items section in mobile overlay\n * @cssprop --wcs-com-nav-mobile-overlay-padding - Padding inside mobile overlay\n * @cssprop --wcs-com-nav-mobile-menu-icon-border-color - Bar border color on the left of icon mobile menu\n * @cssprop --wcs-com-nav-mobile-menu-icon-gap- Gap between icon mobile menu and separator on the left\n * @cssprop --wcs-com-nav-mobile-menu-icon-margin-left - Margin left of icon mobile menu\n * @cssprop --wcs-com-nav-menu-bar-gap - Gap between each item inside menu-bar\n * @cssprop --wcs-com-nav-menu-bar-margin-left - Margin left between menu bar and the app-name section\n */\n@Component({\n tag: 'wcs-com-nav',\n styleUrl: 'com-nav.scss',\n shadow: true,\n})\nexport class ComNav implements ComponentInterface, MutableAriaAttribute {\n @Element() private el!: HTMLWcsComNavElement;\n private inheritedAttributes: { [k: string]: any } = {};\n\n /** Name of the application to be displayed in the menu bar */\n @Prop() appName: string;\n\n @State() private mobileMenuOpen: boolean = false;\n @State() public currentActiveSizing: ComNavSize;\n private resizeObserver: ResizeObserver;\n\n private mobileMenuIconClick() {\n this.mobileMenuOpen = !this.mobileMenuOpen;\n }\n\n disconnectedCallback() {\n this.resizeObserver?.disconnect();\n }\n\n componentWillLoad(): Promise<void> | void {\n this.inheritedAttributes = {\n ...inheritAriaAttributes(this.el),\n ...inheritAttributes(this.el, COM_NAV_INHERITED_ATTRS)\n };\n\n const slottedNavigableItems = this.el.querySelectorAll(':scope > wcs-com-nav-submenu:not([slot]), :scope > a:not([slot])');\n registerCloseHandlerForFocusOutEventOn<HTMLWcsComNavSubmenuElement>(slottedNavigableItems, WCS_COM_NAV_SUBMENU_TAG_NAME);\n }\n\n componentDidLoad(): void {\n if(!this.resizeObserver) {\n this.resizeObserver = comNavDidLoadWithResizeObserver(this);\n this.resizeObserver.observe(document.body);\n }\n }\n \n @Method()\n async setAriaAttribute(attr: AriaAttributeName, value: string | null | undefined) {\n // XXX: Special case on this component because of the desktop / mobile mode that re-renders the <nav> element,\n // making it lose all its attribute\n this.inheritedAttributes[attr] = value;\n forceUpdate(this);\n }\n\n private closeMobileMenu() {\n this.mobileMenuOpen = false;\n }\n\n // In mobile mode, we have only one global drawer to display the menu, that why we have to listen the clicks events\n // in the root component (this component). In desktop mode, all submenus and categories manage their drawer its\n // opening state.\n //\n // We listen to the click events fired by the submenu component and we close the mobile menu.\n // In desktop mode, the submenu itself manages the closing of the menu.\n @Listen('wcsClickOnFinalAction')\n onClickOnFinalAction() {\n this.closeMobileMenu();\n }\n \n render() {\n const menuAriaLabel = this.inheritedAttributes['aria-label'] || undefined;\n \n return (\n <Host>\n <div class=\"container\">\n <div class=\"container-left\">\n <div class=\"app-name\">\n {this.appName}\n <slot name=\"app-name\"/>\n </div>\n {this.currentActiveSizing === 'desktop' ?\n <nav role=\"navigation\" {...this.inheritedAttributes}>\n <div class=\"menu-bar\" role=\"list\">\n {this.currentActiveSizing === 'desktop' \n ? <slot/> \n : null}\n </div>\n </nav>\n : null}\n </div>\n <div class=\"container-right\">\n <slot name=\"actions\"/>\n {this.currentActiveSizing === 'mobile' ?\n <nav id=\"wcs-com-nav-mobile-menu\" role=\"navigation\" {...this.inheritedAttributes}>\n <button id=\"mobile-menu-icon\"\n aria-label={menuAriaLabel}\n aria-expanded={this.mobileMenuOpen ? \"true\" : \"false\"}\n aria-controls=\"wcs-com-nav-mobile-menu\"\n onClick={() => this.mobileMenuIconClick()}></button>\n {this.currentActiveSizing === 'mobile'\n ? <div class=\"mobile-overlay\" data-mobile-open={this.mobileMenuOpen} role=\"list\"><slot /></div>\n : null}\n </nav>\n : null}\n </div>\n </div>\n </Host>\n );\n }\n\n /**\n * Close the mobile menu if the user press escape.\n * @param evt keydown event on window target.\n */\n @Listen('keydown', {target: 'window'})\n exitMobileMenuOnKeyDown(evt: KeyboardEvent) {\n if (isEscapeKey(evt)) {\n this.closeMobileMenu();\n }\n }\n}\n"]}
@@ -177,7 +177,7 @@ export class ComNavCategory {
177
177
  "signature": "(attr: AriaAttributeName, value: string | null | undefined) => Promise<void>",
178
178
  "parameters": [{
179
179
  "name": "attr",
180
- "type": "\"role\" | `aria-${string}`",
180
+ "type": "`aria-${string}` | \"role\"",
181
181
  "docs": ""
182
182
  }, {
183
183
  "name": "value",
@@ -5,7 +5,8 @@
5
5
  /**
6
6
  Applies all the outline properties useful to show a dashed-focus ring around a component.
7
7
  TODO: replace `$border-radius: 0.1rem` with semantic border-radius but keep in mind some components that must stay at 2px border-radius: checkbox, radio, links, ...
8
- */ /* Default style and mobile behaviour */
8
+ */
9
+ /* Default style and mobile behaviour */
9
10
  :host {
10
11
  --wcs-com-nav-item-gap: var(--wcs-semantic-spacing-base);
11
12
  --wcs-com-nav-item-font-size: var(--wcs-semantic-font-size-label-1);
@@ -29,7 +30,6 @@
29
30
  user-select: none;
30
31
  cursor: pointer;
31
32
  text-decoration: none;
32
- font-size: var(--wcs-com-nav-item-font-size);
33
33
  color: inherit;
34
34
  font-weight: inherit;
35
35
  display: flex;
@@ -229,7 +229,7 @@ export class ComNavSubmenu {
229
229
  "signature": "(attr: AriaAttributeName, value: string | null | undefined) => Promise<void>",
230
230
  "parameters": [{
231
231
  "name": "attr",
232
- "type": "\"role\" | `aria-${string}`",
232
+ "type": "`aria-${string}` | \"role\"",
233
233
  "docs": ""
234
234
  }, {
235
235
  "name": "value",