@spw-ds/spw-stencil-library 1.10.2 → 1.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (560) hide show
  1. package/dist/cem.json +1124 -157
  2. package/dist/cjs/{animation-DMuoVGnA.js → animation-tH5DQHbp.js} +7 -2
  3. package/dist/cjs/index-B9VTdKwF.js +3187 -0
  4. package/dist/cjs/loader.cjs.js +2 -2
  5. package/dist/cjs/spw-accordion_4.cjs.entry.js +5 -5
  6. package/dist/cjs/spw-avatar.cjs.entry.js +2 -2
  7. package/dist/cjs/spw-block-content.cjs.entry.js +2 -2
  8. package/dist/cjs/spw-box.cjs.entry.js +62 -0
  9. package/dist/cjs/spw-breadcrumb-item.cjs.entry.js +2 -2
  10. package/dist/cjs/spw-breadcrumb.cjs.entry.js +2 -2
  11. package/dist/cjs/spw-button_2.cjs.entry.js +4 -4
  12. package/dist/cjs/spw-card-content.cjs.entry.js +2 -2
  13. package/dist/cjs/spw-card-excerpt.cjs.entry.js +2 -2
  14. package/dist/cjs/spw-card-image.cjs.entry.js +2 -2
  15. package/dist/cjs/spw-card-subtag-item.cjs.entry.js +2 -2
  16. package/dist/cjs/spw-card-subtags.cjs.entry.js +2 -2
  17. package/dist/cjs/spw-card-title.cjs.entry.js +2 -2
  18. package/dist/cjs/spw-card.cjs.entry.js +2 -2
  19. package/dist/cjs/spw-checkbox.cjs.entry.js +2 -2
  20. package/dist/cjs/spw-cookies.cjs.entry.js +1 -1
  21. package/dist/cjs/spw-custom-select.cjs.entry.js +65 -6
  22. package/dist/cjs/spw-date-picker.cjs.entry.js +2 -2
  23. package/dist/cjs/spw-dropdown-container.cjs.entry.js +2 -2
  24. package/dist/cjs/spw-dropdown-item.cjs.entry.js +2 -2
  25. package/dist/cjs/spw-dropdown.cjs.entry.js +2 -2
  26. package/dist/cjs/spw-field-label_7.cjs.entry.js +8 -8
  27. package/dist/cjs/spw-field-message.cjs.entry.js +2 -2
  28. package/dist/cjs/spw-file-upload.cjs.entry.js +3 -3
  29. package/dist/cjs/spw-footer-bottom.cjs.entry.js +2 -2
  30. package/dist/cjs/spw-footer-content-col.cjs.entry.js +2 -2
  31. package/dist/cjs/spw-footer-content.cjs.entry.js +2 -2
  32. package/dist/cjs/spw-footer-link.cjs.entry.js +2 -2
  33. package/dist/cjs/spw-footer.cjs.entry.js +2 -2
  34. package/dist/cjs/spw-grid-item.cjs.entry.js +3 -3
  35. package/dist/cjs/spw-grid.cjs.entry.js +6 -4
  36. package/dist/cjs/spw-header-lang.cjs.entry.js +2 -2
  37. package/dist/cjs/spw-header-navigation-dropdown.cjs.entry.js +2 -2
  38. package/dist/cjs/spw-header-navigation-item.cjs.entry.js +2 -2
  39. package/dist/cjs/spw-header-navigation.cjs.entry.js +2 -2
  40. package/dist/cjs/spw-header-persona-item.cjs.entry.js +2 -2
  41. package/dist/cjs/spw-header-persona.cjs.entry.js +2 -2
  42. package/dist/cjs/spw-header.cjs.entry.js +13 -2
  43. package/dist/cjs/spw-hero.cjs.entry.js +21 -5
  44. package/dist/cjs/spw-illustration.cjs.entry.js +1 -1
  45. package/dist/cjs/spw-input-slider.cjs.entry.js +2 -2
  46. package/dist/cjs/spw-lightbox-item.cjs.entry.js +53 -0
  47. package/dist/cjs/spw-lightbox.cjs.entry.js +235 -0
  48. package/dist/cjs/spw-list-description.cjs.entry.js +2 -2
  49. package/dist/cjs/spw-list-item.cjs.entry.js +2 -2
  50. package/dist/cjs/spw-list-title.cjs.entry.js +2 -2
  51. package/dist/cjs/spw-list.cjs.entry.js +2 -2
  52. package/dist/cjs/spw-message.cjs.entry.js +1 -1
  53. package/dist/cjs/spw-modal.cjs.entry.js +5 -5
  54. package/dist/cjs/spw-mosaic-item.cjs.entry.js +2 -2
  55. package/dist/cjs/spw-mosaic.cjs.entry.js +2 -2
  56. package/dist/cjs/spw-pagination.cjs.entry.js +7 -7
  57. package/dist/cjs/spw-radio.cjs.entry.js +2 -2
  58. package/dist/cjs/spw-scrolltop.cjs.entry.js +2 -2
  59. package/dist/cjs/spw-search-field.cjs.entry.js +12 -6
  60. package/dist/cjs/spw-select.cjs.entry.js +2 -2
  61. package/dist/cjs/spw-sidebar-navigation-dropdown.cjs.entry.js +2 -2
  62. package/dist/cjs/spw-sidebar-navigation-item.cjs.entry.js +4 -4
  63. package/dist/cjs/spw-sidebar-navigation-separator.cjs.entry.js +2 -2
  64. package/dist/cjs/spw-sidebar.cjs.entry.js +2 -2
  65. package/dist/cjs/spw-skeleton.cjs.entry.js +2 -2
  66. package/dist/cjs/spw-slider-item.cjs.entry.js +2 -2
  67. package/dist/cjs/spw-slider.cjs.entry.js +16 -7
  68. package/dist/cjs/spw-socials.cjs.entry.js +2 -2
  69. package/dist/cjs/spw-stencil-library.cjs.js +2 -2
  70. package/dist/cjs/spw-table-body.cjs.entry.js +2 -2
  71. package/dist/cjs/spw-table-cell.cjs.entry.js +2 -2
  72. package/dist/cjs/spw-table-container.cjs.entry.js +2 -2
  73. package/dist/cjs/spw-table-footer.cjs.entry.js +2 -2
  74. package/dist/cjs/spw-table-head.cjs.entry.js +2 -2
  75. package/dist/cjs/spw-table-header.cjs.entry.js +3 -3
  76. package/dist/cjs/spw-table-row.cjs.entry.js +2 -2
  77. package/dist/cjs/spw-table-sidebar.cjs.entry.js +2 -2
  78. package/dist/cjs/spw-table.cjs.entry.js +3 -3
  79. package/dist/cjs/spw-tabs-content.cjs.entry.js +1 -1
  80. package/dist/cjs/spw-tabs-navigation-item.cjs.entry.js +2 -2
  81. package/dist/cjs/spw-tabs-navigation.cjs.entry.js +2 -2
  82. package/dist/cjs/spw-tabs.cjs.entry.js +2 -2
  83. package/dist/cjs/spw-tag.cjs.entry.js +2 -2
  84. package/dist/cjs/spw-text-field.cjs.entry.js +69 -10
  85. package/dist/cjs/spw-textarea.cjs.entry.js +2 -2
  86. package/dist/cjs/spw-tile-description.cjs.entry.js +2 -2
  87. package/dist/cjs/spw-tile-title.cjs.entry.js +2 -2
  88. package/dist/cjs/spw-tile.cjs.entry.js +2 -2
  89. package/dist/cjs/spw-timeline-item.cjs.entry.js +3 -3
  90. package/dist/cjs/spw-timeline.cjs.entry.js +3 -3
  91. package/dist/cjs/spw-toast-controller.cjs.entry.js +2 -2
  92. package/dist/cjs/spw-toast.cjs.entry.js +2 -2
  93. package/dist/cjs/spw-toc-container.cjs.entry.js +2 -2
  94. package/dist/cjs/spw-toc-navigation.cjs.entry.js +1 -1
  95. package/dist/cjs/spw-toc.cjs.entry.js +2 -2
  96. package/dist/cjs/spw-topbar.cjs.entry.js +2 -2
  97. package/dist/cjs/spw-wizard-item.cjs.entry.js +2 -2
  98. package/dist/cjs/spw-wizard.cjs.entry.js +2 -2
  99. package/dist/collection/collection-manifest.json +3 -0
  100. package/dist/collection/components/spw-accordion/spw-accordion-content/spw-accordion-content.js +1 -1
  101. package/dist/collection/components/spw-accordion/spw-accordion-item/spw-accordion-item.js +1 -1
  102. package/dist/collection/components/spw-accordion/spw-accordion-title/spw-accordion-title.js +1 -1
  103. package/dist/collection/components/spw-accordion/spw-accordion.js +1 -1
  104. package/dist/collection/components/spw-avatar/spw-avatar.js +1 -1
  105. package/dist/collection/components/spw-block-content/spw-block-content.js +1 -1
  106. package/dist/collection/components/spw-box/spw-box.css +507 -0
  107. package/dist/collection/components/spw-box/spw-box.js +213 -0
  108. package/dist/collection/components/spw-breadcrumb/spw-breadcrumb-item/spw-breadcrumb-item.js +1 -1
  109. package/dist/collection/components/spw-breadcrumb/spw-breadcrumb.js +1 -1
  110. package/dist/collection/components/spw-button/spw-button.css +2 -2
  111. package/dist/collection/components/spw-button/spw-button.js +2 -2
  112. package/dist/collection/components/spw-card/spw-card-content/spw-card-content.js +1 -1
  113. package/dist/collection/components/spw-card/spw-card-excerpt/spw-card-excerpt.js +1 -1
  114. package/dist/collection/components/spw-card/spw-card-image/spw-card-image.js +1 -1
  115. package/dist/collection/components/spw-card/spw-card-subtag-item/spw-card-subtag-item.js +1 -1
  116. package/dist/collection/components/spw-card/spw-card-subtags/spw-card-subtags.js +1 -1
  117. package/dist/collection/components/spw-card/spw-card-title/spw-card-title.js +1 -1
  118. package/dist/collection/components/spw-card/spw-card.js +1 -1
  119. package/dist/collection/components/spw-checkbox/spw-checkbox.js +1 -1
  120. package/dist/collection/components/spw-custom-select/spw-custom-select.css +61 -3
  121. package/dist/collection/components/spw-custom-select/spw-custom-select.js +124 -5
  122. package/dist/collection/components/spw-date-picker/spw-date-picker.js +2 -2
  123. package/dist/collection/components/spw-dropdown/spw-dropdown-container/spw-dropdown-container.js +1 -1
  124. package/dist/collection/components/spw-dropdown/spw-dropdown-item/spw-dropdown-item.js +1 -1
  125. package/dist/collection/components/spw-dropdown/spw-dropdown.js +1 -1
  126. package/dist/collection/components/spw-field-label/spw-field-label.js +1 -1
  127. package/dist/collection/components/spw-field-message/spw-field-message.js +1 -1
  128. package/dist/collection/components/spw-file-upload/spw-file-upload.js +2 -2
  129. package/dist/collection/components/spw-footer/spw-footer-bottom/spw-footer-bottom.js +1 -1
  130. package/dist/collection/components/spw-footer/spw-footer-content/spw-footer-content.js +1 -1
  131. package/dist/collection/components/spw-footer/spw-footer-content-col/spw-footer-content-col.js +1 -1
  132. package/dist/collection/components/spw-footer/spw-footer-link/spw-footer-link.js +1 -1
  133. package/dist/collection/components/spw-footer/spw-footer.js +1 -1
  134. package/dist/collection/components/spw-grid/spw-grid-item/spw-grid-item.js +2 -2
  135. package/dist/collection/components/spw-grid/spw-grid.css +18 -1
  136. package/dist/collection/components/spw-grid/spw-grid.js +24 -2
  137. package/dist/collection/components/spw-group/spw-group.js +1 -1
  138. package/dist/collection/components/spw-header/spw-header-lang/spw-header-lang.js +1 -1
  139. package/dist/collection/components/spw-header/spw-header-navigation/spw-header-navigation.js +1 -1
  140. package/dist/collection/components/spw-header/spw-header-navigation-dropdown/spw-header-navigation-dropdown.js +1 -1
  141. package/dist/collection/components/spw-header/spw-header-navigation-item/spw-header-navigation-item.js +1 -1
  142. package/dist/collection/components/spw-header/spw-header-persona/spw-header-persona.js +1 -1
  143. package/dist/collection/components/spw-header/spw-header-persona-item/spw-header-persona-item.js +1 -1
  144. package/dist/collection/components/spw-header/spw-header.js +12 -1
  145. package/dist/collection/components/spw-hero/spw-hero.css +37 -0
  146. package/dist/collection/components/spw-hero/spw-hero.js +97 -5
  147. package/dist/collection/components/spw-icon/spw-icon.js +1 -1
  148. package/dist/collection/components/spw-input-slider/spw-input-slider.js +1 -1
  149. package/dist/collection/components/spw-lightbox/spw-lightbox-item/spw-lightbox-item.css +436 -0
  150. package/dist/collection/components/spw-lightbox/spw-lightbox-item/spw-lightbox-item.js +292 -0
  151. package/dist/collection/components/spw-lightbox/spw-lightbox.css +614 -0
  152. package/dist/collection/components/spw-lightbox/spw-lightbox.js +511 -0
  153. package/dist/collection/components/spw-link/spw-link.js +1 -1
  154. package/dist/collection/components/spw-list/spw-list-description/spw-list-description.js +1 -1
  155. package/dist/collection/components/spw-list/spw-list-item/spw-list-item.js +1 -1
  156. package/dist/collection/components/spw-list/spw-list-title/spw-list-title.js +1 -1
  157. package/dist/collection/components/spw-list/spw-list.js +1 -1
  158. package/dist/collection/components/spw-loading/spw-loading.js +1 -1
  159. package/dist/collection/components/spw-modal/spw-modal.js +3 -3
  160. package/dist/collection/components/spw-mosaic/spw-mosaic-item/spw-mosaic-item.js +1 -1
  161. package/dist/collection/components/spw-mosaic/spw-mosaic.js +1 -1
  162. package/dist/collection/components/spw-pagination/spw-pagination.js +6 -6
  163. package/dist/collection/components/spw-radio/spw-radio.js +1 -1
  164. package/dist/collection/components/spw-scrolltop/spw-scrolltop.js +1 -1
  165. package/dist/collection/components/spw-search-field/spw-search-field.css +6 -3
  166. package/dist/collection/components/spw-search-field/spw-search-field.js +51 -5
  167. package/dist/collection/components/spw-select/spw-select.js +2 -2
  168. package/dist/collection/components/spw-separator/spw-separator.js +1 -1
  169. package/dist/collection/components/spw-sidebar/spw-sidebar-navigation-dropdown/spw-sidebar-navigation-dropdown.js +1 -1
  170. package/dist/collection/components/spw-sidebar/spw-sidebar-navigation-item/spw-sidebar-navigation-item.js +3 -3
  171. package/dist/collection/components/spw-sidebar/spw-sidebar-navigation-separator/spw-sidebar-navigation-separator.js +1 -1
  172. package/dist/collection/components/spw-sidebar/spw-sidebar.js +1 -1
  173. package/dist/collection/components/spw-skeleton/spw-skeleton.js +1 -1
  174. package/dist/collection/components/spw-slider/spw-slider-item/spw-slider-item.js +1 -1
  175. package/dist/collection/components/spw-slider/spw-slider.js +60 -6
  176. package/dist/collection/components/spw-socials/spw-socials.js +1 -1
  177. package/dist/collection/components/spw-table/spw-table-body/spw-table-body.js +1 -1
  178. package/dist/collection/components/spw-table/spw-table-cell/spw-table-cell.js +1 -1
  179. package/dist/collection/components/spw-table/spw-table-container/spw-table-container.js +1 -1
  180. package/dist/collection/components/spw-table/spw-table-footer/spw-table-footer.js +1 -1
  181. package/dist/collection/components/spw-table/spw-table-head/spw-table-head.js +1 -1
  182. package/dist/collection/components/spw-table/spw-table-header/spw-table-header.js +2 -2
  183. package/dist/collection/components/spw-table/spw-table-row/spw-table-row.js +1 -1
  184. package/dist/collection/components/spw-table/spw-table-sidebar/spw-table-sidebar.js +1 -1
  185. package/dist/collection/components/spw-table/spw-table.js +2 -2
  186. package/dist/collection/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.js +1 -1
  187. package/dist/collection/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.js +1 -1
  188. package/dist/collection/components/spw-tabs/spw-tabs.js +1 -1
  189. package/dist/collection/components/spw-tag/spw-tag.js +1 -1
  190. package/dist/collection/components/spw-text-field/spw-text-field.js +88 -10
  191. package/dist/collection/components/spw-textarea/spw-textarea.js +2 -2
  192. package/dist/collection/components/spw-theme-provider/spw-theme-provider.js +1 -1
  193. package/dist/collection/components/spw-tile/spw-tile-description/spw-tile-description.js +1 -1
  194. package/dist/collection/components/spw-tile/spw-tile-title/spw-tile-title.js +1 -1
  195. package/dist/collection/components/spw-tile/spw-tile.js +1 -1
  196. package/dist/collection/components/spw-timeline/spw-timeline-item/spw-timeline-item.js +2 -2
  197. package/dist/collection/components/spw-timeline/spw-timeline.js +2 -2
  198. package/dist/collection/components/spw-toast/spw-toast-controller/spw-toast-controller.js +1 -1
  199. package/dist/collection/components/spw-toc/spw-toc-container/spw-toc-container.js +1 -1
  200. package/dist/collection/components/spw-toc/spw-toc.js +1 -1
  201. package/dist/collection/components/spw-tooltip/spw-tooltip.js +1 -1
  202. package/dist/collection/components/spw-topbar/spw-topbar.js +1 -1
  203. package/dist/collection/components/spw-wizard/spw-wizard-item/spw-wizard-item.js +1 -1
  204. package/dist/collection/components/spw-wizard/spw-wizard.js +1 -1
  205. package/dist/collection/stories/components/spw-box/spw-box.stories.js +312 -0
  206. package/dist/collection/stories/components/spw-custom-select/spw-custom-select.stories.js +23 -2
  207. package/dist/collection/stories/organisms/spw-hero/spw-hero.stories.js +61 -0
  208. package/dist/collection/stories/organisms/spw-toc/spw-toc.stories.js +40 -34
  209. package/dist/collection/utils/animation.js +7 -2
  210. package/dist/components/index.js +1 -1
  211. package/dist/components/{p-CMLl0RMI.js → p-BNVh4npd.js} +1 -1
  212. package/dist/components/{p-LSa_rZXb.js → p-BNsbxGcj.js} +1 -1
  213. package/dist/components/p-BRFNx2DL.js +1 -0
  214. package/dist/components/{p-BhdoYDTm.js → p-BRlLi9Ar.js} +1 -1
  215. package/dist/components/{p-D6LWZKvR.js → p-BqEbo61A.js} +1 -1
  216. package/dist/components/{p-BjLZzV7o.js → p-C8Vf9QlU.js} +1 -1
  217. package/dist/components/{p-CDlTW4jP.js → p-CLCgZYzK.js} +1 -1
  218. package/dist/components/{p-BxRsJDtg.js → p-CNmnvMAU.js} +1 -1
  219. package/dist/components/{p-DbSA5Qg5.js → p-CyuzNTuL.js} +1 -1
  220. package/dist/components/{p-DJvzArBD.js → p-D0jLTe4Y.js} +1 -1
  221. package/dist/components/{p-DwCnnHgn.js → p-D2bR89OY.js} +1 -1
  222. package/dist/components/p-D3lAXshq.js +1 -0
  223. package/dist/components/{p-JuqrTYPp.js → p-DdZeGXq7.js} +1 -1
  224. package/dist/components/{p-BlIs4luv.js → p-HzgF73Oa.js} +1 -1
  225. package/dist/components/p-lA7JXY3H.js +1 -0
  226. package/dist/components/{p-DiO72wMf.js → p-oVOlDrOp.js} +1 -1
  227. package/dist/components/{p-D8N138f1.js → p-w411zfAm.js} +1 -1
  228. package/dist/components/spw-accordion-content.js +1 -1
  229. package/dist/components/spw-accordion-item.js +1 -1
  230. package/dist/components/spw-accordion-title.js +1 -1
  231. package/dist/components/spw-accordion.js +1 -1
  232. package/dist/components/spw-avatar.js +1 -1
  233. package/dist/components/spw-block-content.js +1 -1
  234. package/dist/components/spw-box.d.ts +11 -0
  235. package/dist/components/spw-box.js +1 -0
  236. package/dist/components/spw-breadcrumb-item.js +1 -1
  237. package/dist/components/spw-breadcrumb.js +1 -1
  238. package/dist/components/spw-button.js +1 -1
  239. package/dist/components/spw-card-content.js +1 -1
  240. package/dist/components/spw-card-excerpt.js +1 -1
  241. package/dist/components/spw-card-image.js +1 -1
  242. package/dist/components/spw-card-subtag-item.js +1 -1
  243. package/dist/components/spw-card-subtags.js +1 -1
  244. package/dist/components/spw-card-title.js +1 -1
  245. package/dist/components/spw-card.js +1 -1
  246. package/dist/components/spw-checkbox.js +1 -1
  247. package/dist/components/spw-cookies.js +1 -1
  248. package/dist/components/spw-custom-select.js +1 -1
  249. package/dist/components/spw-date-picker.js +1 -1
  250. package/dist/components/spw-dropdown-container.js +1 -1
  251. package/dist/components/spw-dropdown-item.js +1 -1
  252. package/dist/components/spw-dropdown.js +1 -1
  253. package/dist/components/spw-field-label.js +1 -1
  254. package/dist/components/spw-field-message.js +1 -1
  255. package/dist/components/spw-file-upload.js +1 -1
  256. package/dist/components/spw-footer-bottom.js +1 -1
  257. package/dist/components/spw-footer-content-col.js +1 -1
  258. package/dist/components/spw-footer-content.js +1 -1
  259. package/dist/components/spw-footer-link.js +1 -1
  260. package/dist/components/spw-footer.js +1 -1
  261. package/dist/components/spw-grid-item.js +1 -1
  262. package/dist/components/spw-grid.js +1 -1
  263. package/dist/components/spw-group.js +1 -1
  264. package/dist/components/spw-header-lang.js +1 -1
  265. package/dist/components/spw-header-navigation-dropdown.js +1 -1
  266. package/dist/components/spw-header-navigation-item.js +1 -1
  267. package/dist/components/spw-header-navigation.js +1 -1
  268. package/dist/components/spw-header-persona-item.js +1 -1
  269. package/dist/components/spw-header-persona.js +1 -1
  270. package/dist/components/spw-header.js +1 -1
  271. package/dist/components/spw-hero.js +1 -1
  272. package/dist/components/spw-icon.js +1 -1
  273. package/dist/components/spw-input-slider.js +1 -1
  274. package/dist/components/spw-lightbox-item.d.ts +11 -0
  275. package/dist/components/spw-lightbox-item.js +1 -0
  276. package/dist/components/spw-lightbox.d.ts +11 -0
  277. package/dist/components/spw-lightbox.js +1 -0
  278. package/dist/components/spw-link.js +1 -1
  279. package/dist/components/spw-list-description.js +1 -1
  280. package/dist/components/spw-list-item.js +1 -1
  281. package/dist/components/spw-list-title.js +1 -1
  282. package/dist/components/spw-list.js +1 -1
  283. package/dist/components/spw-loading.js +1 -1
  284. package/dist/components/spw-message.js +1 -1
  285. package/dist/components/spw-modal.js +1 -1
  286. package/dist/components/spw-mosaic-item.js +1 -1
  287. package/dist/components/spw-mosaic.js +4 -4
  288. package/dist/components/spw-pagination.js +1 -1
  289. package/dist/components/spw-radio.js +1 -1
  290. package/dist/components/spw-scrolltop.js +1 -1
  291. package/dist/components/spw-search-field.js +1 -1
  292. package/dist/components/spw-select.js +1 -1
  293. package/dist/components/spw-separator.js +1 -1
  294. package/dist/components/spw-sidebar-navigation-dropdown.js +1 -1
  295. package/dist/components/spw-sidebar-navigation-item.js +1 -1
  296. package/dist/components/spw-sidebar-navigation-separator.js +1 -1
  297. package/dist/components/spw-sidebar.js +1 -1
  298. package/dist/components/spw-skeleton.js +1 -1
  299. package/dist/components/spw-slider-item.js +1 -1
  300. package/dist/components/spw-slider.js +1 -1
  301. package/dist/components/spw-socials.js +1 -1
  302. package/dist/components/spw-table-body.js +1 -1
  303. package/dist/components/spw-table-cell.js +1 -1
  304. package/dist/components/spw-table-container.js +1 -1
  305. package/dist/components/spw-table-footer.js +1 -1
  306. package/dist/components/spw-table-head.js +1 -1
  307. package/dist/components/spw-table-header.js +1 -1
  308. package/dist/components/spw-table-row.js +1 -1
  309. package/dist/components/spw-table-sidebar.js +1 -1
  310. package/dist/components/spw-table.js +1 -1
  311. package/dist/components/spw-tabs-navigation-item.js +1 -1
  312. package/dist/components/spw-tabs-navigation.js +1 -1
  313. package/dist/components/spw-tabs.js +1 -1
  314. package/dist/components/spw-tag.js +1 -1
  315. package/dist/components/spw-text-field.js +1 -1
  316. package/dist/components/spw-textarea.js +1 -1
  317. package/dist/components/spw-theme-provider.js +1 -1
  318. package/dist/components/spw-tile-description.js +1 -1
  319. package/dist/components/spw-tile-title.js +1 -1
  320. package/dist/components/spw-tile.js +1 -1
  321. package/dist/components/spw-timeline-item.js +1 -1
  322. package/dist/components/spw-timeline.js +1 -1
  323. package/dist/components/spw-toast-controller.js +1 -1
  324. package/dist/components/spw-toast.js +1 -1
  325. package/dist/components/spw-toc-container.js +1 -1
  326. package/dist/components/spw-toc.js +1 -1
  327. package/dist/components/spw-tooltip.js +1 -1
  328. package/dist/components/spw-topbar.js +1 -1
  329. package/dist/components/spw-wizard-item.js +1 -1
  330. package/dist/components/spw-wizard.js +1 -1
  331. package/dist/components_json.json +1545 -122
  332. package/dist/esm/{animation-BO7xVlWo.js → animation-BRFNx2DL.js} +7 -2
  333. package/dist/esm/index-BU-5xOtc.js +3158 -0
  334. package/dist/esm/loader.js +3 -3
  335. package/dist/esm/spw-accordion_4.entry.js +5 -5
  336. package/dist/esm/spw-avatar.entry.js +2 -2
  337. package/dist/esm/spw-block-content.entry.js +2 -2
  338. package/dist/esm/spw-box.entry.js +60 -0
  339. package/dist/esm/spw-breadcrumb-item.entry.js +2 -2
  340. package/dist/esm/spw-breadcrumb.entry.js +2 -2
  341. package/dist/esm/spw-button_2.entry.js +4 -4
  342. package/dist/esm/spw-card-content.entry.js +2 -2
  343. package/dist/esm/spw-card-excerpt.entry.js +2 -2
  344. package/dist/esm/spw-card-image.entry.js +2 -2
  345. package/dist/esm/spw-card-subtag-item.entry.js +2 -2
  346. package/dist/esm/spw-card-subtags.entry.js +2 -2
  347. package/dist/esm/spw-card-title.entry.js +2 -2
  348. package/dist/esm/spw-card.entry.js +2 -2
  349. package/dist/esm/spw-checkbox.entry.js +2 -2
  350. package/dist/esm/spw-cookies.entry.js +1 -1
  351. package/dist/esm/spw-custom-select.entry.js +65 -6
  352. package/dist/esm/spw-date-picker.entry.js +2 -2
  353. package/dist/esm/spw-dropdown-container.entry.js +2 -2
  354. package/dist/esm/spw-dropdown-item.entry.js +2 -2
  355. package/dist/esm/spw-dropdown.entry.js +2 -2
  356. package/dist/esm/spw-field-label_7.entry.js +8 -8
  357. package/dist/esm/spw-field-message.entry.js +2 -2
  358. package/dist/esm/spw-file-upload.entry.js +3 -3
  359. package/dist/esm/spw-footer-bottom.entry.js +2 -2
  360. package/dist/esm/spw-footer-content-col.entry.js +2 -2
  361. package/dist/esm/spw-footer-content.entry.js +2 -2
  362. package/dist/esm/spw-footer-link.entry.js +2 -2
  363. package/dist/esm/spw-footer.entry.js +2 -2
  364. package/dist/esm/spw-grid-item.entry.js +3 -3
  365. package/dist/esm/spw-grid.entry.js +6 -4
  366. package/dist/esm/spw-header-lang.entry.js +2 -2
  367. package/dist/esm/spw-header-navigation-dropdown.entry.js +2 -2
  368. package/dist/esm/spw-header-navigation-item.entry.js +2 -2
  369. package/dist/esm/spw-header-navigation.entry.js +2 -2
  370. package/dist/esm/spw-header-persona-item.entry.js +2 -2
  371. package/dist/esm/spw-header-persona.entry.js +2 -2
  372. package/dist/esm/spw-header.entry.js +13 -2
  373. package/dist/esm/spw-hero.entry.js +21 -5
  374. package/dist/esm/spw-illustration.entry.js +1 -1
  375. package/dist/esm/spw-input-slider.entry.js +2 -2
  376. package/dist/esm/spw-lightbox-item.entry.js +51 -0
  377. package/dist/esm/spw-lightbox.entry.js +233 -0
  378. package/dist/esm/spw-list-description.entry.js +2 -2
  379. package/dist/esm/spw-list-item.entry.js +2 -2
  380. package/dist/esm/spw-list-title.entry.js +2 -2
  381. package/dist/esm/spw-list.entry.js +2 -2
  382. package/dist/esm/spw-message.entry.js +1 -1
  383. package/dist/esm/spw-modal.entry.js +5 -5
  384. package/dist/esm/spw-mosaic-item.entry.js +2 -2
  385. package/dist/esm/spw-mosaic.entry.js +2 -2
  386. package/dist/esm/spw-pagination.entry.js +7 -7
  387. package/dist/esm/spw-radio.entry.js +2 -2
  388. package/dist/esm/spw-scrolltop.entry.js +2 -2
  389. package/dist/esm/spw-search-field.entry.js +12 -6
  390. package/dist/esm/spw-select.entry.js +2 -2
  391. package/dist/esm/spw-sidebar-navigation-dropdown.entry.js +2 -2
  392. package/dist/esm/spw-sidebar-navigation-item.entry.js +4 -4
  393. package/dist/esm/spw-sidebar-navigation-separator.entry.js +2 -2
  394. package/dist/esm/spw-sidebar.entry.js +2 -2
  395. package/dist/esm/spw-skeleton.entry.js +2 -2
  396. package/dist/esm/spw-slider-item.entry.js +2 -2
  397. package/dist/esm/spw-slider.entry.js +16 -7
  398. package/dist/esm/spw-socials.entry.js +2 -2
  399. package/dist/esm/spw-stencil-library.js +3 -3
  400. package/dist/esm/spw-table-body.entry.js +2 -2
  401. package/dist/esm/spw-table-cell.entry.js +2 -2
  402. package/dist/esm/spw-table-container.entry.js +2 -2
  403. package/dist/esm/spw-table-footer.entry.js +2 -2
  404. package/dist/esm/spw-table-head.entry.js +2 -2
  405. package/dist/esm/spw-table-header.entry.js +3 -3
  406. package/dist/esm/spw-table-row.entry.js +2 -2
  407. package/dist/esm/spw-table-sidebar.entry.js +2 -2
  408. package/dist/esm/spw-table.entry.js +3 -3
  409. package/dist/esm/spw-tabs-content.entry.js +1 -1
  410. package/dist/esm/spw-tabs-navigation-item.entry.js +2 -2
  411. package/dist/esm/spw-tabs-navigation.entry.js +2 -2
  412. package/dist/esm/spw-tabs.entry.js +2 -2
  413. package/dist/esm/spw-tag.entry.js +2 -2
  414. package/dist/esm/spw-text-field.entry.js +69 -10
  415. package/dist/esm/spw-textarea.entry.js +2 -2
  416. package/dist/esm/spw-tile-description.entry.js +2 -2
  417. package/dist/esm/spw-tile-title.entry.js +2 -2
  418. package/dist/esm/spw-tile.entry.js +2 -2
  419. package/dist/esm/spw-timeline-item.entry.js +3 -3
  420. package/dist/esm/spw-timeline.entry.js +3 -3
  421. package/dist/esm/spw-toast-controller.entry.js +2 -2
  422. package/dist/esm/spw-toast.entry.js +2 -2
  423. package/dist/esm/spw-toc-container.entry.js +2 -2
  424. package/dist/esm/spw-toc-navigation.entry.js +1 -1
  425. package/dist/esm/spw-toc.entry.js +2 -2
  426. package/dist/esm/spw-topbar.entry.js +2 -2
  427. package/dist/esm/spw-wizard-item.entry.js +2 -2
  428. package/dist/esm/spw-wizard.entry.js +2 -2
  429. package/dist/spw-stencil-library/{p-bc6051f9.entry.js → p-024a26e8.entry.js} +1 -1
  430. package/dist/spw-stencil-library/p-03addc15.entry.js +1 -0
  431. package/dist/spw-stencil-library/{p-fd8ae317.entry.js → p-05378ed8.entry.js} +1 -1
  432. package/dist/spw-stencil-library/p-0583eb9e.entry.js +1 -0
  433. package/dist/spw-stencil-library/{p-e88d700b.entry.js → p-074758e0.entry.js} +1 -1
  434. package/dist/spw-stencil-library/p-0fbae5ce.entry.js +1 -0
  435. package/dist/spw-stencil-library/{p-d9b44e31.entry.js → p-123bfbc0.entry.js} +1 -1
  436. package/dist/spw-stencil-library/{p-f5b3255d.entry.js → p-1337adf5.entry.js} +1 -1
  437. package/dist/spw-stencil-library/{p-e1b7565b.entry.js → p-170c4262.entry.js} +1 -1
  438. package/dist/spw-stencil-library/{p-231fbcc9.entry.js → p-1bdcb44c.entry.js} +1 -1
  439. package/dist/spw-stencil-library/p-1cd657f6.entry.js +1 -0
  440. package/dist/spw-stencil-library/p-1cd68465.entry.js +1 -0
  441. package/dist/spw-stencil-library/{p-68c8ab55.entry.js → p-1eb101b8.entry.js} +1 -1
  442. package/dist/spw-stencil-library/{p-ce6499ac.entry.js → p-2fb76b1e.entry.js} +1 -1
  443. package/dist/spw-stencil-library/{p-21ac7e70.entry.js → p-31035d04.entry.js} +1 -1
  444. package/dist/spw-stencil-library/{p-c84743b7.entry.js → p-311be1c9.entry.js} +1 -1
  445. package/dist/spw-stencil-library/{p-536082bb.entry.js → p-32340c8d.entry.js} +1 -1
  446. package/dist/spw-stencil-library/{p-bb50f1c6.entry.js → p-3374ac92.entry.js} +1 -1
  447. package/dist/spw-stencil-library/p-3703f96f.entry.js +1 -0
  448. package/dist/spw-stencil-library/{p-9bcade02.entry.js → p-38f286b7.entry.js} +1 -1
  449. package/dist/spw-stencil-library/{p-5b6d907b.entry.js → p-3cee0356.entry.js} +1 -1
  450. package/dist/spw-stencil-library/{p-fc3463d2.entry.js → p-404a11b2.entry.js} +1 -1
  451. package/dist/spw-stencil-library/{p-77c9e985.entry.js → p-4265f6e5.entry.js} +1 -1
  452. package/dist/spw-stencil-library/{p-a4336c0c.entry.js → p-4504a51e.entry.js} +1 -1
  453. package/dist/spw-stencil-library/{p-d8967e7d.entry.js → p-47ee3609.entry.js} +1 -1
  454. package/dist/spw-stencil-library/{p-bef41011.entry.js → p-49be0d9e.entry.js} +1 -1
  455. package/dist/spw-stencil-library/{p-017e66d3.entry.js → p-4a8766cc.entry.js} +1 -1
  456. package/dist/spw-stencil-library/{p-12e209dc.entry.js → p-4f163e66.entry.js} +1 -1
  457. package/dist/spw-stencil-library/{p-7d0fb1fc.entry.js → p-50bf3984.entry.js} +1 -1
  458. package/dist/spw-stencil-library/{p-33b37c7f.entry.js → p-543d3e89.entry.js} +1 -1
  459. package/dist/spw-stencil-library/{p-899045e0.entry.js → p-5631f2de.entry.js} +1 -1
  460. package/dist/spw-stencil-library/{p-1e21eb78.entry.js → p-56b73f04.entry.js} +1 -1
  461. package/dist/spw-stencil-library/{p-53b60fa8.entry.js → p-5ac48320.entry.js} +1 -1
  462. package/dist/spw-stencil-library/{p-ed5c4229.entry.js → p-66b30373.entry.js} +1 -1
  463. package/dist/spw-stencil-library/{p-428c33de.entry.js → p-699e435e.entry.js} +1 -1
  464. package/dist/spw-stencil-library/{p-8cfe9a5c.entry.js → p-6dabae01.entry.js} +1 -1
  465. package/dist/spw-stencil-library/{p-c195597b.entry.js → p-6ea95517.entry.js} +1 -1
  466. package/dist/spw-stencil-library/{p-937eeeeb.entry.js → p-79c6f599.entry.js} +1 -1
  467. package/dist/spw-stencil-library/{p-c7f64bb6.entry.js → p-79f8babf.entry.js} +1 -1
  468. package/dist/spw-stencil-library/{p-04208e52.entry.js → p-7a3131fa.entry.js} +1 -1
  469. package/dist/spw-stencil-library/{p-461f9d48.entry.js → p-7ae08cea.entry.js} +1 -1
  470. package/dist/spw-stencil-library/{p-3049cc60.entry.js → p-7fe2e659.entry.js} +1 -1
  471. package/dist/spw-stencil-library/{p-ce6317dd.entry.js → p-7ffe8116.entry.js} +1 -1
  472. package/dist/spw-stencil-library/{p-72d6b4cb.entry.js → p-82b5e1a1.entry.js} +1 -1
  473. package/dist/spw-stencil-library/{p-9911694d.entry.js → p-8901c312.entry.js} +1 -1
  474. package/dist/spw-stencil-library/{p-989fa86f.entry.js → p-8e8f253e.entry.js} +1 -1
  475. package/dist/spw-stencil-library/{p-eb71cf55.entry.js → p-910755a9.entry.js} +1 -1
  476. package/dist/spw-stencil-library/{p-1c25df2f.entry.js → p-94158325.entry.js} +1 -1
  477. package/dist/spw-stencil-library/{p-335b9ec2.entry.js → p-98f51dbc.entry.js} +1 -1
  478. package/dist/spw-stencil-library/{p-6c67f42e.entry.js → p-9b28f86c.entry.js} +1 -1
  479. package/dist/spw-stencil-library/{p-9f3abef5.entry.js → p-9ddfa4ef.entry.js} +1 -1
  480. package/dist/spw-stencil-library/{p-584f8ba5.entry.js → p-9ee8fd30.entry.js} +1 -1
  481. package/dist/spw-stencil-library/p-BRFNx2DL.js +1 -0
  482. package/dist/spw-stencil-library/p-BU-5xOtc.js +2 -0
  483. package/dist/spw-stencil-library/{p-4aa5759c.entry.js → p-a09e3914.entry.js} +1 -1
  484. package/dist/spw-stencil-library/{p-dd9a9e15.entry.js → p-a7b665db.entry.js} +2 -2
  485. package/dist/spw-stencil-library/{p-326f87ff.entry.js → p-a8d2e217.entry.js} +1 -1
  486. package/dist/spw-stencil-library/{p-ef377fc3.entry.js → p-ac6f9351.entry.js} +1 -1
  487. package/dist/spw-stencil-library/{p-862ebaf0.entry.js → p-afb26e73.entry.js} +1 -1
  488. package/dist/spw-stencil-library/{p-a77de6f3.entry.js → p-b15db228.entry.js} +1 -1
  489. package/dist/spw-stencil-library/{p-11039299.entry.js → p-b1b6f3cb.entry.js} +1 -1
  490. package/dist/spw-stencil-library/{p-2ef62013.entry.js → p-b218aeda.entry.js} +1 -1
  491. package/dist/spw-stencil-library/{p-12878c95.entry.js → p-b3152418.entry.js} +1 -1
  492. package/dist/spw-stencil-library/{p-6ac1cfdb.entry.js → p-b53d9fdb.entry.js} +1 -1
  493. package/dist/spw-stencil-library/{p-935f19f8.entry.js → p-bd26c928.entry.js} +1 -1
  494. package/dist/spw-stencil-library/p-be220196.entry.js +1 -0
  495. package/dist/spw-stencil-library/{p-b82b3af6.entry.js → p-bebfe3cd.entry.js} +1 -1
  496. package/dist/spw-stencil-library/{p-39cae775.entry.js → p-bfd908c9.entry.js} +1 -1
  497. package/dist/spw-stencil-library/{p-3694301c.entry.js → p-c41fe381.entry.js} +1 -1
  498. package/dist/spw-stencil-library/p-c5824697.entry.js +1 -0
  499. package/dist/spw-stencil-library/{p-92b69e67.entry.js → p-cdff9c53.entry.js} +1 -1
  500. package/dist/spw-stencil-library/{p-a574c1f7.entry.js → p-ce6af096.entry.js} +1 -1
  501. package/dist/spw-stencil-library/{p-d21b0833.entry.js → p-d2cabbe3.entry.js} +1 -1
  502. package/dist/spw-stencil-library/{p-5c58ca89.entry.js → p-da0a8272.entry.js} +1 -1
  503. package/dist/spw-stencil-library/{p-72e7b957.entry.js → p-daf0d53e.entry.js} +1 -1
  504. package/dist/spw-stencil-library/{p-eba031ea.entry.js → p-dc802ca2.entry.js} +1 -1
  505. package/dist/spw-stencil-library/{p-9eeeb874.entry.js → p-dcd5fa8d.entry.js} +1 -1
  506. package/dist/spw-stencil-library/{p-06e9e52e.entry.js → p-deca1884.entry.js} +1 -1
  507. package/dist/spw-stencil-library/{p-862856bf.entry.js → p-dee97ef5.entry.js} +1 -1
  508. package/dist/spw-stencil-library/{p-e53ff9dd.entry.js → p-df311267.entry.js} +1 -1
  509. package/dist/spw-stencil-library/{p-9397da21.entry.js → p-e0b50329.entry.js} +1 -1
  510. package/dist/spw-stencil-library/{p-acd69768.entry.js → p-e1c2b8f8.entry.js} +1 -1
  511. package/dist/spw-stencil-library/{p-1a85816b.entry.js → p-e4710721.entry.js} +1 -1
  512. package/dist/spw-stencil-library/{p-46256b79.entry.js → p-e5579295.entry.js} +1 -1
  513. package/dist/spw-stencil-library/{p-6b8ad6ec.entry.js → p-e7115b5c.entry.js} +1 -1
  514. package/dist/spw-stencil-library/{p-5779ce33.entry.js → p-e7dbe743.entry.js} +1 -1
  515. package/dist/spw-stencil-library/{p-8fc73ffb.entry.js → p-e86c4192.entry.js} +1 -1
  516. package/dist/spw-stencil-library/{p-f413fe3a.entry.js → p-e96bccc1.entry.js} +1 -1
  517. package/dist/spw-stencil-library/{p-c9cb2441.entry.js → p-eda2cbd9.entry.js} +1 -1
  518. package/dist/spw-stencil-library/{p-b460afdc.entry.js → p-f2aaa06a.entry.js} +1 -1
  519. package/dist/spw-stencil-library/{p-218ae66c.entry.js → p-f43e54c9.entry.js} +1 -1
  520. package/dist/spw-stencil-library/p-f7b152f7.entry.js +1 -0
  521. package/dist/spw-stencil-library/{p-3ad3b8d1.entry.js → p-f880da57.entry.js} +1 -1
  522. package/dist/spw-stencil-library/{p-fb0820ba.entry.js → p-fbbacf1e.entry.js} +1 -1
  523. package/dist/spw-stencil-library/p-ff26da9e.entry.js +1 -0
  524. package/dist/spw-stencil-library/spw-stencil-library.css +3 -3
  525. package/dist/spw-stencil-library/spw-stencil-library.esm.js +1 -1
  526. package/dist/stats.json +13077 -10025
  527. package/dist/types/components/spw-box/spw-box.d.ts +25 -0
  528. package/dist/types/components/spw-custom-select/spw-custom-select.d.ts +12 -1
  529. package/dist/types/components/spw-date-picker/spw-date-picker.d.ts +1 -1
  530. package/dist/types/components/spw-grid/spw-grid.d.ts +2 -0
  531. package/dist/types/components/spw-hero/spw-hero.d.ts +9 -1
  532. package/dist/types/components/spw-lightbox/spw-lightbox-item/spw-lightbox-item.d.ts +37 -0
  533. package/dist/types/components/spw-lightbox/spw-lightbox.d.ts +69 -0
  534. package/dist/types/components/spw-search-field/spw-search-field.d.ts +7 -1
  535. package/dist/types/components/spw-select/spw-select.d.ts +1 -1
  536. package/dist/types/components/spw-slider/spw-slider.d.ts +14 -0
  537. package/dist/types/components/spw-text-field/spw-text-field.d.ts +6 -1
  538. package/dist/types/components/spw-textarea/spw-textarea.d.ts +1 -1
  539. package/dist/types/components.d.ts +507 -15
  540. package/dist/types/stories/components/spw-box/spw-box.stories.d.ts +10 -0
  541. package/dist/types/stories/components/spw-custom-select/spw-custom-select.stories.d.ts +1 -0
  542. package/dist/types/stories/organisms/spw-hero/spw-hero.stories.d.ts +3 -0
  543. package/hydrate/index.js +737 -164
  544. package/hydrate/index.mjs +737 -164
  545. package/package.json +1 -1
  546. package/dist/cjs/index-CX9is0m-.js +0 -3175
  547. package/dist/components/p-BO7xVlWo.js +0 -1
  548. package/dist/components/p-CANbQKSH.js +0 -1
  549. package/dist/components/p-D4YZDvw0.js +0 -1
  550. package/dist/components_vscode.json +0 -4824
  551. package/dist/esm/index-Dk6w7kAO.js +0 -3146
  552. package/dist/spw-stencil-library/p-17891524.entry.js +0 -1
  553. package/dist/spw-stencil-library/p-438fedef.entry.js +0 -1
  554. package/dist/spw-stencil-library/p-9e73b259.entry.js +0 -1
  555. package/dist/spw-stencil-library/p-BO7xVlWo.js +0 -1
  556. package/dist/spw-stencil-library/p-Dk6w7kAO.js +0 -2
  557. package/dist/spw-stencil-library/p-b4391972.entry.js +0 -1
  558. package/dist/spw-stencil-library/p-c452d5b0.entry.js +0 -1
  559. package/dist/spw-stencil-library/p-c8800fc9.entry.js +0 -1
  560. package/dist/spw-stencil-library/p-dd4fe0fb.entry.js +0 -1
@@ -0,0 +1,312 @@
1
+ let componentsData;
2
+ try {
3
+ componentsData = require('../../../../dist/components_json.json');
4
+ }
5
+ catch (error) {
6
+ console.warn('components_json.json non trouvé. Utilisation de valeurs par défaut.');
7
+ componentsData = {};
8
+ }
9
+ import { withComponentControls, toKebabCase } from "../../../utils/utils";
10
+ const elementTag = 'spw-box';
11
+ const argTypes = withComponentControls(componentsData, { tag: elementTag });
12
+ const meta = {
13
+ title: 'Composants/Box',
14
+ component: elementTag,
15
+ argTypes,
16
+ tags: ['autodocs'],
17
+ parameters: {
18
+ docs: {
19
+ description: {
20
+ component: `
21
+ <strong class="mr-2">Statut du composant :</strong> <spw-tag size="small" variant="green">Prêt</spw-tag>
22
+
23
+ La Box est un conteneur générique servant de structure d'accueil pour différents types de contenus. Elle permet de cadrer visuellement une information, de la détacher du reste de la page et de faciliter la lecture, sans imposer de contenu ou de hiérarchie prédéfinie.
24
+
25
+ ## Styles
26
+
27
+ - **Avec fond** : fond blanc, coins arrondis et ombre légère (has-radius + has-shadow + padding). Détache clairement le contenu du reste de la page et crée un point de focalisation visuel.
28
+ - **Sans fond** : sans fond, sans ombre, sans bord arrondi, sans padding. S'intègre directement dans le flux de la page. À utiliser quand le cadre visuel n'est pas nécessaire mais qu'une structuration logique reste utile.
29
+
30
+ ## Fonctionnalités
31
+
32
+ - Padding configurable (none, small, medium, large)
33
+ - Ombre portée et border-radius optionnels
34
+ - Position sticky à partir du breakpoint lg (1024px)
35
+ - Mode collapsible avec animation et breakpoint configurable (sm, md, lg, xl, xxl, always)
36
+ - Slot header pour le titre, toujours visible même en mode collapsible
37
+ - Icône chevron animée au collapse/expand
38
+
39
+ [<spw-link>Consulter la documentation</spw-link>](https://zeroheight.com/2310c7a1e/p/225c31-box)
40
+ `,
41
+ },
42
+ },
43
+ },
44
+ };
45
+ export default meta;
46
+ const Template = args => {
47
+ const element = document.createElement(elementTag);
48
+ const controls = withComponentControls(componentsData, { tag: elementTag }) || {};
49
+ const masterProps = controls.__realProps || Object.keys(controls);
50
+ Object.entries(args).forEach(([key, val]) => {
51
+ if (masterProps.includes(key)) {
52
+ element.setAttribute(toKebabCase(key), val);
53
+ }
54
+ else if (key.startsWith('on')) {
55
+ element.addEventListener(key.substring(2).toLowerCase(), val);
56
+ }
57
+ });
58
+ element.innerHTML = /* HTML */ `
59
+ <div slot="header">
60
+ <h2 class="spw-ds-typography-heading-03 mb-0">Titre de la box</h2>
61
+ </div>
62
+ <div class="spw-ds-typography-body-01 mt-3">
63
+ <p class="mb-3">Contenu de la box. Ce composant est un conteneur polyvalent qui peut accueillir n'importe quel type de contenu : texte, listes, composants, etc.</p>
64
+ <spw-group orientation="vertical">
65
+ <spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
66
+ <spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
67
+ </spw-group>
68
+ </div>
69
+ `;
70
+ return element;
71
+ };
72
+ export const Default = Template.bind({});
73
+ Default.args = {
74
+ padding: 'medium',
75
+ hasRadius: true,
76
+ hasShadow: true,
77
+ };
78
+ Default.parameters = {
79
+ docs: {
80
+ description: {
81
+ story: `Box de base avec padding medium, border-radius et ombre portée. Cas d'usage type : widget de sidebar, encart de contenu secondaire.`,
82
+ },
83
+ },
84
+ };
85
+ export const Styles = () => {
86
+ const container = document.createElement('div');
87
+ container.style.cssText = 'display: flex; flex-direction: column; gap: 24px;';
88
+ container.innerHTML = /* HTML */ `
89
+ <spw-box padding="medium" has-radius="true" has-shadow="true">
90
+ <div slot="header">
91
+ <h3 class="spw-ds-typography-heading-04 mb-0">Style avec fond</h3>
92
+ </div>
93
+ <div class="mt-3">
94
+ <p class="spw-ds-typography-body-01 mb-3">
95
+ Fond blanc, coins arrondis et ombre légère. Détache clairement le contenu du reste de la page et crée un point de focalisation visuel.
96
+ </p>
97
+ <spw-group orientation="vertical">
98
+ <spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
99
+ <spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
100
+ </spw-group>
101
+ </div>
102
+ </spw-box>
103
+ <spw-box>
104
+ <div slot="header">
105
+ <h3 class="spw-ds-typography-heading-04 mb-0">Style sans fond</h3>
106
+ </div>
107
+ <div class="mt-3">
108
+ <p class="spw-ds-typography-body-01 mb-3">
109
+ Sans fond, sans ombre, sans border-radius, sans padding. S'intègre directement dans le flux de la page. À utiliser quand le cadre visuel n'est pas nécessaire mais qu'une
110
+ structuration logique reste utile.
111
+ </p>
112
+ <spw-group orientation="vertical">
113
+ <spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
114
+ <spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
115
+ </spw-group>
116
+ </div>
117
+ </spw-box>
118
+ `;
119
+ return container;
120
+ };
121
+ Styles.parameters = {
122
+ docs: {
123
+ description: {
124
+ story: `Les deux styles principaux de la box. Style avec fond (has-radius + has-shadow + padding) : crée un point de focalisation visuel fort. Style sans fond (aucune prop de décoration) : structuration logique discrète, intégrée dans le flux de la page.`,
125
+ },
126
+ },
127
+ };
128
+ export const PaddingVariants = () => {
129
+ const container = document.createElement('div');
130
+ container.style.cssText = 'display: flex; flex-direction: column; gap: 16px;';
131
+ container.innerHTML = /* HTML */ `
132
+ <spw-box has-radius="true" has-shadow="false" padding="none">
133
+ <div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Padding none (défaut)</h3></div>
134
+ <p class="spw-ds-typography-body-01">Aucun padding interne. Utile quand le contenu gère lui-même son espacement.</p>
135
+ </spw-box>
136
+ <spw-box has-radius="true" has-shadow="true" padding="small">
137
+ <div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Padding small — 16px</h3></div>
138
+ <p class="spw-ds-typography-body-01">Padding compact pour les widgets ou encarts de taille réduite.</p>
139
+ </spw-box>
140
+ <spw-box has-radius="true" has-shadow="true" padding="medium">
141
+ <div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Padding medium — 24px</h3></div>
142
+ <p class="spw-ds-typography-body-01">Padding standard, recommandé pour la majorité des cas d'usage.</p>
143
+ </spw-box>
144
+ <spw-box has-radius="true" has-shadow="true" padding="large">
145
+ <div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Padding large — 48px</h3></div>
146
+ <p class="spw-ds-typography-body-01">Padding généreux pour des sections mises en avant ou des contenus éditoriaux.</p>
147
+ </spw-box>
148
+ `;
149
+ return container;
150
+ };
151
+ PaddingVariants.parameters = {
152
+ docs: {
153
+ description: {
154
+ story: `Les quatre valeurs de padding disponibles : none, small (16px), medium (24px), large (48px).`,
155
+ },
156
+ },
157
+ };
158
+ export const WithShadowAndRadius = () => {
159
+ const container = document.createElement('div');
160
+ container.style.cssText = 'display: grid; grid-template-columns: 1fr 1fr; gap: 16px;';
161
+ container.innerHTML = /* HTML */ `
162
+ <spw-box padding="medium">
163
+ <div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Sans shadow ni radius</h3></div>
164
+ <p class="spw-ds-typography-body-01">Box sans décoration visuelle. Le contenu définit ses propres bordures.</p>
165
+ </spw-box>
166
+ <spw-box padding="medium" has-shadow="true">
167
+ <div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Shadow seul</h3></div>
168
+ <p class="spw-ds-typography-body-01">Ombre portée sans border-radius.</p>
169
+ </spw-box>
170
+ <spw-box padding="medium" has-radius="true" has-shadow="true">
171
+ <div slot="header"><h3 class="spw-ds-typography-heading-04 mb-0">Shadow + Radius</h3></div>
172
+ <p class="spw-ds-typography-body-01">Combinaison recommandée pour les widgets de sidebar et encarts.</p>
173
+ </spw-box>
174
+ `;
175
+ return container;
176
+ };
177
+ WithShadowAndRadius.parameters = {
178
+ docs: {
179
+ description: {
180
+ story: `Combinaisons de has-shadow et has-radius. La combinaison shadow + radius est recommandée pour les widgets de sidebar.`,
181
+ },
182
+ },
183
+ };
184
+ export const Collapsible = () => {
185
+ const container = document.createElement('div');
186
+ container.style.cssText = 'display: flex; flex-direction: column; gap: 16px; max-width: 400px;';
187
+ container.innerHTML = /* HTML */ `
188
+ <spw-box padding="medium" has-radius="true" has-shadow="true" is-collapsible="true" collapsible-breakpoint="always">
189
+ <div slot="header">
190
+ <h3 class="spw-ds-typography-heading-04 mb-0">Toujours collapsible</h3>
191
+ </div>
192
+ <div class="mt-3">
193
+ <p class="spw-ds-typography-body-01 mb-3">Ce contenu est collapsible quelle que soit la largeur du viewport.</p>
194
+ <spw-group orientation="vertical">
195
+ <spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
196
+ <spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
197
+ </spw-group>
198
+ </div>
199
+ </spw-box>
200
+ <spw-box padding="medium" has-radius="true" has-shadow="true" is-collapsible="true" collapsible-breakpoint="md">
201
+ <div slot="header">
202
+ <h3 class="spw-ds-typography-heading-04 mb-0">Collapsible sur mobile</h3>
203
+ </div>
204
+ <div class="mt-3">
205
+ <p class="spw-ds-typography-body-01 mb-3">Ce contenu est collapsible uniquement en dessous de 768px. Au-dessus, il est toujours visible.</p>
206
+ <spw-group orientation="vertical">
207
+ <spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
208
+ <spw-link variant="primary" icon="fa-arrow-right" icon-position="right" href="#">Lien d'action</spw-link>
209
+ </spw-group>
210
+ </div>
211
+ </spw-box>
212
+ `;
213
+ return container;
214
+ };
215
+ Collapsible.parameters = {
216
+ docs: {
217
+ description: {
218
+ story: `Mode collapsible avec animation chevron. always : collapsible quelle que soit la résolution. md (768px) : collapsible uniquement sur mobile, contenu toujours visible au-dessus.`,
219
+ },
220
+ },
221
+ };
222
+ export const StickyWithContent = () => {
223
+ const container = document.createElement('div');
224
+ container.innerHTML = /* HTML */ `
225
+ <div style="display: flex; gap: 24px; align-items: flex-start;">
226
+ <div style="flex: 1; min-width: 0;">
227
+ <p class="spw-ds-typography-body-01 mb-4">
228
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut vel imperdiet diam. Aliquam in quam nulla. Duis mi erat, tempus vitae tincidunt in, pretium ut diam. Ut
229
+ malesuada ante et scelerisque eleifend.
230
+ </p>
231
+ <p class="spw-ds-typography-body-01 mb-4">
232
+ Curabitur luctus faucibus pretium. Praesent lacinia laoreet ipsum, at mattis magna cursus non. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut vel imperdiet
233
+ diam.
234
+ </p>
235
+ <p class="spw-ds-typography-body-01 mb-4">
236
+ Aliquam in quam nulla. Duis mi erat, tempus vitae tincidunt in, pretium ut diam. Ut malesuada ante et scelerisque eleifend. Curabitur luctus faucibus pretium.
237
+ </p>
238
+ <p class="spw-ds-typography-body-01 mb-4">Praesent lacinia laoreet ipsum, at mattis magna cursus non. Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
239
+ <p class="spw-ds-typography-body-01 mb-4">
240
+ Ut vel imperdiet diam. Aliquam in quam nulla. Duis mi erat, tempus vitae tincidunt in, pretium ut diam. Ut malesuada ante et scelerisque eleifend. Curabitur luctus
241
+ faucibus pretium.
242
+ </p>
243
+ </div>
244
+ <div style="width: 280px; flex-shrink: 0;">
245
+ <spw-box padding="medium" has-radius="true" has-shadow="true" is-sticky="true" sticky-top="24px">
246
+ <div slot="header">
247
+ <h3 class="spw-ds-typography-heading-04 mb-0">Box sticky</h3>
248
+ </div>
249
+ <div class="mt-3">
250
+ <p class="spw-ds-typography-body-01 mb-3">Cette box reste visible lors du scroll à partir du breakpoint lg.</p>
251
+ <spw-group orientation="vertical">
252
+ <spw-link variant="primary" icon="fa-phone" icon-position="left" href="tel:081654449">081 / 65 44 49</spw-link>
253
+ <spw-link variant="primary" icon="fa-envelope" icon-position="left" href="mailto:mail@mail.be">mail@mail.be</spw-link>
254
+ </spw-group>
255
+ <spw-button is-full-width="true" class="mt-4" variant="primary">Formulaire en ligne</spw-button>
256
+ </div>
257
+ </spw-box>
258
+ </div>
259
+ </div>
260
+ `;
261
+ return container;
262
+ };
263
+ StickyWithContent.parameters = {
264
+ docs: {
265
+ description: {
266
+ story: `Box sticky dans un layout deux colonnes. La box reste ancrée lors du scroll à partir du breakpoint lg (1024px). Cas d'usage : sidebar de contact, sommaire, actions rapides. Utiliser sticky-top pour ajuster la position selon la hauteur du header fixe de la page.`,
267
+ },
268
+ },
269
+ };
270
+ export const SidebarPattern = () => {
271
+ const container = document.createElement('div');
272
+ container.innerHTML = /* HTML */ `
273
+ <div style="display: flex; flex-direction: column; gap: 16px; max-width: 320px;">
274
+ <spw-box padding="medium" has-radius="true" has-shadow="true">
275
+ <div slot="header">
276
+ <h3 class="spw-ds-typography-heading-04 mb-0">Sommaire</h3>
277
+ </div>
278
+ <div class="mt-3">
279
+ <spw-group orientation="vertical">
280
+ <spw-link variant="primary" href="#">Introduction</spw-link>
281
+ <spw-link variant="primary" href="#">Premiers pas</spw-link>
282
+ <spw-link variant="primary" href="#">Fonctionnalités avancées</spw-link>
283
+ <spw-link variant="primary" href="#">FAQ</spw-link>
284
+ </spw-group>
285
+ </div>
286
+ </spw-box>
287
+ <spw-box padding="medium" has-radius="true" has-shadow="true" is-collapsible="true" collapsible-breakpoint="always">
288
+ <div slot="header">
289
+ <h3 class="spw-ds-typography-heading-04 mb-0">Besoin d'aide ?</h3>
290
+ </div>
291
+ <div class="mt-3">
292
+ <p class="spw-ds-typography-body-01 mb-3">Contactez-nous si vous ne trouvez pas la réponse à votre question.</p>
293
+ <spw-separator class="my-3"></spw-separator>
294
+ <spw-group orientation="vertical">
295
+ <spw-link variant="primary" icon="fa-phone" icon-position="left" href="tel:081654449">081 / 65 44 49</spw-link>
296
+ <spw-link variant="primary" icon="fa-envelope" icon-position="left" href="mailto:mail@mail.be">mail@mail.be</spw-link>
297
+ <spw-link variant="primary" icon="fa-globe" icon-position="left" href="#">www.wallonie.be</spw-link>
298
+ </spw-group>
299
+ <spw-button is-full-width="true" class="mt-4" variant="primary">Formulaire en ligne</spw-button>
300
+ </div>
301
+ </spw-box>
302
+ </div>
303
+ `;
304
+ return container;
305
+ };
306
+ SidebarPattern.parameters = {
307
+ docs: {
308
+ description: {
309
+ story: `Pattern sidebar avec deux box : une pour la navigation (sommaire) et une pour les informations de contact collapsible.`,
310
+ },
311
+ },
312
+ };
@@ -69,10 +69,15 @@ const Template = args => {
69
69
  element.addEventListener(key.substring(2).toLowerCase(), val);
70
70
  }
71
71
  });
72
- // Ajout de l’action Storybook pour suivre les changements de valeur
73
72
  element.addEventListener('valueChanged', (event) => {
74
73
  action('valueChanged')(event.detail);
75
74
  });
75
+ element.addEventListener('optionCreated', (event) => {
76
+ action('optionCreated')(event.detail);
77
+ });
78
+ element.addEventListener('optionRemoved', (event) => {
79
+ action('optionRemoved')(event.detail);
80
+ });
76
81
  return element;
77
82
  };
78
83
  /* -------------------------------------------------------------------------------------------------
@@ -84,7 +89,7 @@ Default.args = {
84
89
  label: 'Sélection simple',
85
90
  name: 'custom-select',
86
91
  placeholder: 'Choisissez une option',
87
- hint: 'Ceci est un texte daide',
92
+ hint: "Ceci est un texte d'aide",
88
93
  showHintIcon: false,
89
94
  size: 'medium',
90
95
  required: false,
@@ -164,3 +169,19 @@ AvecWarning.parameters = {
164
169
  },
165
170
  },
166
171
  };
172
+ // --- CRÉATION À LA VOLÉE (MULTIPLE) ---
173
+ export const AllowCreateMultiple = Template.bind({});
174
+ AllowCreateMultiple.args = Object.assign(Object.assign({}, Default.args), { label: 'Mots-clés', multiple: true, isSearch: true, allowCreate: true, isClear: true, searchPlaceholder: 'Rechercher ou créer un mot-clé...', noResultsText: 'Aucun mot-clé existant.', placeholder: 'Sélectionnez ou créez des mots-clés', hint: 'Saisissez un mot-clé absent de la liste et cliquez sur + pour le créer.', showHintIcon: false, items: [
175
+ { label: 'Angular', value: 'angular' },
176
+ { label: 'React', value: 'react' },
177
+ { label: 'Stencil', value: 'stencil' },
178
+ { label: 'Vue', value: 'vue' },
179
+ { label: 'Svelte', value: 'svelte' },
180
+ ] });
181
+ AllowCreateMultiple.parameters = {
182
+ docs: {
183
+ description: {
184
+ story: `Custom Select avec création d'options à la volée et sélection multiple. Lorsque la saisie ne correspond à aucune option existante, un bouton + apparaît pour ajouter l'option directement. Les options créées sont marquées d'une icône de suppression. Les events optionCreated et optionRemoved sont émis pour permettre la synchronisation avec le backend. Cas d'usage : saisie de tags libres, mots-clés personnalisés, listes extensibles.`,
185
+ },
186
+ },
187
+ };
@@ -30,6 +30,7 @@ Le composant Hero Banner crée un bandeau visuel impactant en haut de page pour
30
30
  - **Photo** : Image pleine largeur en arrière-plan
31
31
  - **Maxi** : Bannière plein écran avec overlay pour page d'accueil
32
32
  - **Mini** : Version compacte du hero banner
33
+ - **Featured** : Image pleine largeur sans slot de contenu. Le ratio de l'image est contrôlable via featured-ratio, featured-ratio-mobile, featured-ratio-tablet, featured-ratio-desktop
33
34
 
34
35
  ## Fonctionnalités
35
36
 
@@ -312,3 +313,63 @@ MiniDark.parameters = {
312
313
  },
313
314
  },
314
315
  };
316
+ const TemplateFeatured = args => {
317
+ const element = document.createElement(elementTag);
318
+ const controls = withComponentControls(componentsData, { tag: elementTag }) || {};
319
+ const masterProps = controls.__realProps || Object.keys(controls);
320
+ Object.entries(args).forEach(([key, val]) => {
321
+ if (masterProps.includes(key)) {
322
+ element.setAttribute(toKebabCase(key), val);
323
+ }
324
+ else if (key.startsWith('on')) {
325
+ element.addEventListener(key.substring(2).toLowerCase(), val);
326
+ }
327
+ });
328
+ return element;
329
+ };
330
+ export const Featured = TemplateFeatured.bind({});
331
+ Featured.args = {
332
+ variant: 'featured',
333
+ imageSrc: 'https://images.unsplash.com/photo-1465056836041-7f43ac27dcb5',
334
+ imageAlt: 'Image featured',
335
+ surface: 'light',
336
+ featuredRatio: '16/9',
337
+ };
338
+ Featured.parameters = {
339
+ docs: {
340
+ description: {
341
+ story: `Hero featured avec image pleine largeur, sans slot de contenu. Le ratio de l'image est uniforme sur tous les breakpoints via featured-ratio.`,
342
+ },
343
+ },
344
+ };
345
+ export const FeaturedResponsiveRatio = TemplateFeatured.bind({});
346
+ FeaturedResponsiveRatio.args = {
347
+ variant: 'featured',
348
+ imageSrc: 'https://images.unsplash.com/photo-1465056836041-7f43ac27dcb5',
349
+ imageAlt: 'Image featured',
350
+ surface: 'light',
351
+ featuredRatioMobile: '4/3',
352
+ featuredRatioTablet: '16/9',
353
+ featuredRatioDesktop: '3/1',
354
+ };
355
+ FeaturedResponsiveRatio.parameters = {
356
+ docs: {
357
+ description: {
358
+ story: `Hero featured avec ratio d'image adaptatif selon le breakpoint : 4/3 sur mobile, 16/9 sur tablette, 3/1 sur desktop. Utiliser featured-ratio-mobile, featured-ratio-tablet et featured-ratio-desktop pour un contrôle granulaire.`,
359
+ },
360
+ },
361
+ };
362
+ export const FeaturedNaturalSize = TemplateFeatured.bind({});
363
+ FeaturedNaturalSize.args = {
364
+ variant: 'featured',
365
+ imageSrc: 'https://images.unsplash.com/photo-1465056836041-7f43ac27dcb5',
366
+ imageAlt: 'Image featured',
367
+ surface: 'light',
368
+ };
369
+ FeaturedNaturalSize.parameters = {
370
+ docs: {
371
+ description: {
372
+ story: `Hero featured sans ratio défini : l'image s'affiche à sa taille naturelle. À utiliser quand les dimensions de l'image sont maîtrisées et qu'aucun recadrage n'est souhaité.`,
373
+ },
374
+ },
375
+ };
@@ -30,6 +30,11 @@ Le composant se compose de trois parties :
30
30
  - spw-toc-container : Contient le contenu avec les titres à indexer
31
31
  - spw-toc-navigation : Affiche la navigation générée automatiquement
32
32
 
33
+ ## Variants de spw-toc-navigation
34
+
35
+ - **progress** (défaut) : affiche une barre de progression par section h2 et un indicateur de section active
36
+ - **simple** : navigation épurée sans barre de progression, uniquement les liens de navigation
37
+
33
38
  ## Fonctionnalités
34
39
 
35
40
  - Génération automatique des liens de navigation basée sur les titres h2-h6
@@ -138,22 +143,30 @@ function htmlContentWithAccordions() {
138
143
  </spw-toc-container>
139
144
  </div>
140
145
 
141
- <aside class="spw-ds-template-generic__aside spw-ds-template-generic__aside--top-mobile spw-ds-template-generic__aside--is-sticky">
142
- <div class="spw-ds-template-generic__aside-content spw-ds-template-generic__aside-content--top mb-4">
143
- <h2 class="spw-ds-typography-heading-03 mb-3">Sommaire</h2>
144
- <spw-toc-navigation></spw-toc-navigation>
145
- </div>
146
- <div class="spw-ds-template-generic__aside-content spw-ds-template-generic__aside-content--bottom">
147
- <h2 class="spw-ds-typography-heading-03 mb-3">Besoin d'aide ?</h2>
148
- <p class="spw-ds-typography-body-01 mb-3">Contactez-nous si vous ne trouvez pas la réponse à votre question.</p>
149
- <spw-separator class="my-3"></spw-separator>
150
- <spw-group orientation="vertical">
151
- <spw-link variant="primary" icon="fa-phone" icon-position="left" href="tel:081654449">081 / 65 44 49</spw-link>
152
- <spw-link variant="primary" icon="fa-envelope" icon-position="left" href="mailto:mail@mail.be">mail@mail.be</spw-link>
153
- <spw-link variant="primary" icon="fa-globe" icon-position="left" href="#">www.wallonie.be</spw-link>
154
- </spw-group>
155
- <spw-button is-full-width class="mt-4 w-100" variant="primary">Formulaire en ligne</spw-button>
156
- </div>
146
+ <aside class="spw-ds-template-generic__aside">
147
+ <spw-box is-sticky="false" padding="medium" has-radius="true" has-shadow="true" class="mb-4">
148
+ <div slot="header">
149
+ <h2 class="spw-ds-typography-heading-03 mb-0">Sommaire</h2>
150
+ </div>
151
+ <div class="mt-3">
152
+ <spw-toc-navigation></spw-toc-navigation>
153
+ </div>
154
+ </spw-box>
155
+ <spw-box is-sticky="true" padding="medium" has-radius="true" has-shadow="true" class="mb-4">
156
+ <div slot="header">
157
+ <h2 class="spw-ds-typography-heading-03 mb-0">Besoin d'aide ?</h2>
158
+ </div>
159
+ <div class="mt-3">
160
+ <p class="spw-ds-typography-body-01 mb-3">Contactez-nous si vous ne trouvez pas la réponse à votre question.</p>
161
+ <spw-separator class="my-3"></spw-separator>
162
+ <spw-group orientation="vertical">
163
+ <spw-link variant="primary" icon="fa-phone" icon-position="left" href="tel:081654449">081 / 65 44 49</spw-link>
164
+ <spw-link variant="primary" icon="fa-envelope" icon-position="left" href="mailto:mail@mail.be">mail@mail.be</spw-link>
165
+ <spw-link variant="primary" icon="fa-globe" icon-position="left" href="#">www.wallonie.be</spw-link>
166
+ </spw-group>
167
+ <spw-button is-full-width class="mt-4 w-100" variant="primary">Formulaire en ligne</spw-button>
168
+ </div>
169
+ </spw-box>
157
170
  </aside>
158
171
  </div>
159
172
  </div>
@@ -204,11 +217,15 @@ function htmlContentSimple() {
204
217
  </spw-toc-container>
205
218
  </div>
206
219
 
207
- <aside class="spw-ds-template-generic__aside spw-ds-template-generic__aside--is-sticky">
208
- <div class="spw-ds-template-generic__aside-content">
209
- <h2 class="spw-ds-typography-heading-03 mb-3">Sommaire</h2>
210
- <spw-toc-navigation></spw-toc-navigation>
211
- </div>
220
+ <aside class="spw-ds-template-generic__aside">
221
+ <spw-box is-sticky="false" padding="medium" has-radius="true" has-shadow="true" class="mb-4">
222
+ <div slot="header">
223
+ <h2 class="spw-ds-typography-heading-03 mb-0">Sommaire</h2>
224
+ </div>
225
+ <div class="mt-3">
226
+ <spw-toc-navigation variant="simple"></spw-toc-navigation>
227
+ </div>
228
+ </spw-box>
212
229
  </aside>
213
230
  </div>
214
231
  </div>
@@ -230,14 +247,7 @@ export const FAQ = TemplateFAQ.bind({});
230
247
  FAQ.parameters = {
231
248
  docs: {
232
249
  description: {
233
- story: `
234
- Exemple complet d'une page FAQ avec Table of Contents. Le composant génère automatiquement la navigation basée sur les titres h2 présents dans le contenu.
235
-
236
- La navigation affiche :
237
- - Les sections principales (h2) avec une barre de progression
238
- - Un indicateur visuel de la section active
239
- - Un smooth scroll vers la section cliquée
240
- `,
250
+ story: `Variant progress (défaut) — page FAQ avec accordéons. La navigation affiche une barre de progression par section h2, un indicateur de section active et un smooth scroll vers la section cliquée.`,
241
251
  },
242
252
  },
243
253
  };
@@ -245,11 +255,7 @@ export const Simple = TemplateSimple.bind({});
245
255
  Simple.parameters = {
246
256
  docs: {
247
257
  description: {
248
- story: `
249
- Exemple simplifié avec un guide utilisateur. La table des matières génère automatiquement les liens pour tous les niveaux de titres (h2, h3, h4, etc.).
250
-
251
- Les titres sans ID se voient attribuer automatiquement un ID slugifié basé sur leur contenu textuel.
252
- `,
258
+ story: `Variant simple — navigation épurée sans barre de progression. Les liens h2 et h3 sont générés automatiquement, les titres sans ID reçoivent un ID slugifié basé sur leur contenu textuel.`,
253
259
  },
254
260
  },
255
261
  };
@@ -1,8 +1,13 @@
1
1
  export function animationTo(element, keyframes, options) {
2
2
  const animated = element.animate(keyframes, Object.assign(Object.assign({}, options), { fill: 'both' }));
3
3
  animated.addEventListener('finish', () => {
4
- // @ts-ignore
5
- animated.commitStyles();
4
+ try {
5
+ // @ts-ignore
6
+ animated.commitStyles();
7
+ }
8
+ catch (_a) {
9
+ // Element may not be rendered (e.g. rapid open/close), safe to ignore
10
+ }
6
11
  animated.cancel();
7
12
  });
8
13
  return animated;