@spw-ds/spw-stencil-library 1.10.2 → 1.12.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 (586) hide show
  1. package/dist/cem.json +1207 -160
  2. package/dist/cjs/{animation-DMuoVGnA.js → animation-tH5DQHbp.js} +7 -2
  3. package/dist/cjs/index-id_AkABS.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 +3 -3
  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 +3 -3
  13. package/dist/cjs/spw-card-excerpt.cjs.entry.js +2 -2
  14. package/dist/cjs/spw-card-image.cjs.entry.js +5 -3
  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 +3 -3
  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 +18 -18
  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 +3 -3
  30. package/dist/cjs/spw-footer-content-col.cjs.entry.js +7 -3
  31. package/dist/cjs/spw-footer-content.cjs.entry.js +2 -2
  32. package/dist/cjs/spw-footer-link.cjs.entry.js +3 -3
  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 +3 -3
  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 +3 -3
  42. package/dist/cjs/spw-header.cjs.entry.js +16 -3
  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 +55 -0
  47. package/dist/cjs/spw-lightbox.cjs.entry.js +249 -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 +26 -9
  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 +3 -3
  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.css +6 -6
  106. package/dist/collection/components/spw-block-content/spw-block-content.js +1 -1
  107. package/dist/collection/components/spw-box/spw-box.css +507 -0
  108. package/dist/collection/components/spw-box/spw-box.js +213 -0
  109. package/dist/collection/components/spw-breadcrumb/spw-breadcrumb-item/spw-breadcrumb-item.js +1 -1
  110. package/dist/collection/components/spw-breadcrumb/spw-breadcrumb.js +1 -1
  111. package/dist/collection/components/spw-button/spw-button.css +2 -2
  112. package/dist/collection/components/spw-button/spw-button.js +2 -2
  113. package/dist/collection/components/spw-card/spw-card-content/spw-card-content.css +15 -0
  114. package/dist/collection/components/spw-card/spw-card-content/spw-card-content.js +1 -1
  115. package/dist/collection/components/spw-card/spw-card-excerpt/spw-card-excerpt.js +1 -1
  116. package/dist/collection/components/spw-card/spw-card-image/spw-card-image.css +17 -0
  117. package/dist/collection/components/spw-card/spw-card-image/spw-card-image.js +25 -1
  118. package/dist/collection/components/spw-card/spw-card-subtag-item/spw-card-subtag-item.js +1 -1
  119. package/dist/collection/components/spw-card/spw-card-subtags/spw-card-subtags.js +1 -1
  120. package/dist/collection/components/spw-card/spw-card-title/spw-card-title.js +1 -1
  121. package/dist/collection/components/spw-card/spw-card.css +12 -0
  122. package/dist/collection/components/spw-card/spw-card.js +3 -3
  123. package/dist/collection/components/spw-checkbox/spw-checkbox.js +1 -1
  124. package/dist/collection/components/spw-custom-select/spw-custom-select.css +61 -3
  125. package/dist/collection/components/spw-custom-select/spw-custom-select.js +124 -5
  126. package/dist/collection/components/spw-date-picker/spw-date-picker.js +2 -2
  127. package/dist/collection/components/spw-dropdown/spw-dropdown-container/spw-dropdown-container.js +1 -1
  128. package/dist/collection/components/spw-dropdown/spw-dropdown-item/spw-dropdown-item.js +1 -1
  129. package/dist/collection/components/spw-dropdown/spw-dropdown.js +1 -1
  130. package/dist/collection/components/spw-field-label/spw-field-label.js +1 -1
  131. package/dist/collection/components/spw-field-message/spw-field-message.js +1 -1
  132. package/dist/collection/components/spw-file-upload/spw-file-upload.js +2 -2
  133. package/dist/collection/components/spw-footer/spw-footer-bottom/spw-footer-bottom.css +3 -1
  134. package/dist/collection/components/spw-footer/spw-footer-bottom/spw-footer-bottom.js +1 -1
  135. package/dist/collection/components/spw-footer/spw-footer-content/spw-footer-content.js +1 -1
  136. package/dist/collection/components/spw-footer/spw-footer-content-col/spw-footer-content-col.css +35 -0
  137. package/dist/collection/components/spw-footer/spw-footer-content-col/spw-footer-content-col.js +12 -1
  138. package/dist/collection/components/spw-footer/spw-footer-link/spw-footer-link.css +3 -1
  139. package/dist/collection/components/spw-footer/spw-footer-link/spw-footer-link.js +1 -1
  140. package/dist/collection/components/spw-footer/spw-footer.js +1 -1
  141. package/dist/collection/components/spw-grid/spw-grid-item/spw-grid-item.js +2 -2
  142. package/dist/collection/components/spw-grid/spw-grid.css +18 -1
  143. package/dist/collection/components/spw-grid/spw-grid.js +24 -2
  144. package/dist/collection/components/spw-group/spw-group.js +1 -1
  145. package/dist/collection/components/spw-header/spw-header-lang/spw-header-lang.js +1 -1
  146. package/dist/collection/components/spw-header/spw-header-navigation/spw-header-navigation.js +1 -1
  147. package/dist/collection/components/spw-header/spw-header-navigation-dropdown/spw-header-navigation-dropdown.js +1 -1
  148. package/dist/collection/components/spw-header/spw-header-navigation-item/spw-header-navigation-item.css +10 -0
  149. package/dist/collection/components/spw-header/spw-header-navigation-item/spw-header-navigation-item.js +1 -1
  150. package/dist/collection/components/spw-header/spw-header-persona/spw-header-persona.css +19 -4
  151. package/dist/collection/components/spw-header/spw-header-persona/spw-header-persona.js +1 -1
  152. package/dist/collection/components/spw-header/spw-header-persona-item/spw-header-persona-item.js +1 -1
  153. package/dist/collection/components/spw-header/spw-header.css +5 -0
  154. package/dist/collection/components/spw-header/spw-header.js +34 -1
  155. package/dist/collection/components/spw-hero/spw-hero.css +37 -0
  156. package/dist/collection/components/spw-hero/spw-hero.js +97 -5
  157. package/dist/collection/components/spw-icon/spw-icon.js +1 -1
  158. package/dist/collection/components/spw-input-slider/spw-input-slider.js +1 -1
  159. package/dist/collection/components/spw-lightbox/spw-lightbox-item/spw-lightbox-item.css +462 -0
  160. package/dist/collection/components/spw-lightbox/spw-lightbox-item/spw-lightbox-item.js +314 -0
  161. package/dist/collection/components/spw-lightbox/spw-lightbox.css +614 -0
  162. package/dist/collection/components/spw-lightbox/spw-lightbox.js +525 -0
  163. package/dist/collection/components/spw-link/spw-link.js +1 -1
  164. package/dist/collection/components/spw-list/spw-list-description/spw-list-description.js +1 -1
  165. package/dist/collection/components/spw-list/spw-list-item/spw-list-item.js +1 -1
  166. package/dist/collection/components/spw-list/spw-list-title/spw-list-title.js +1 -1
  167. package/dist/collection/components/spw-list/spw-list.js +1 -1
  168. package/dist/collection/components/spw-loading/spw-loading.js +1 -1
  169. package/dist/collection/components/spw-modal/spw-modal.js +3 -3
  170. package/dist/collection/components/spw-mosaic/spw-mosaic-item/spw-mosaic-item.js +1 -1
  171. package/dist/collection/components/spw-mosaic/spw-mosaic.js +1 -1
  172. package/dist/collection/components/spw-pagination/spw-pagination.js +6 -6
  173. package/dist/collection/components/spw-radio/spw-radio.js +1 -1
  174. package/dist/collection/components/spw-scrolltop/spw-scrolltop.js +1 -1
  175. package/dist/collection/components/spw-search-field/spw-search-field.css +6 -3
  176. package/dist/collection/components/spw-search-field/spw-search-field.js +51 -5
  177. package/dist/collection/components/spw-select/spw-select.js +2 -2
  178. package/dist/collection/components/spw-separator/spw-separator.js +1 -1
  179. package/dist/collection/components/spw-sidebar/spw-sidebar-navigation-dropdown/spw-sidebar-navigation-dropdown.js +1 -1
  180. package/dist/collection/components/spw-sidebar/spw-sidebar-navigation-item/spw-sidebar-navigation-item.js +3 -3
  181. package/dist/collection/components/spw-sidebar/spw-sidebar-navigation-separator/spw-sidebar-navigation-separator.js +1 -1
  182. package/dist/collection/components/spw-sidebar/spw-sidebar.js +1 -1
  183. package/dist/collection/components/spw-skeleton/spw-skeleton.js +1 -1
  184. package/dist/collection/components/spw-slider/spw-slider-item/spw-slider-item.js +1 -1
  185. package/dist/collection/components/spw-slider/spw-slider.css +15 -0
  186. package/dist/collection/components/spw-slider/spw-slider.js +89 -7
  187. package/dist/collection/components/spw-socials/spw-socials.js +1 -1
  188. package/dist/collection/components/spw-table/spw-table-body/spw-table-body.js +1 -1
  189. package/dist/collection/components/spw-table/spw-table-cell/spw-table-cell.js +1 -1
  190. package/dist/collection/components/spw-table/spw-table-container/spw-table-container.js +1 -1
  191. package/dist/collection/components/spw-table/spw-table-footer/spw-table-footer.js +1 -1
  192. package/dist/collection/components/spw-table/spw-table-head/spw-table-head.js +1 -1
  193. package/dist/collection/components/spw-table/spw-table-header/spw-table-header.js +2 -2
  194. package/dist/collection/components/spw-table/spw-table-row/spw-table-row.js +1 -1
  195. package/dist/collection/components/spw-table/spw-table-sidebar/spw-table-sidebar.js +1 -1
  196. package/dist/collection/components/spw-table/spw-table.js +2 -2
  197. package/dist/collection/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.css +4 -1
  198. package/dist/collection/components/spw-tabs/spw-tabs-navigation/spw-tabs-navigation.js +1 -1
  199. package/dist/collection/components/spw-tabs/spw-tabs-navigation-item/spw-tabs-navigation-item.js +1 -1
  200. package/dist/collection/components/spw-tabs/spw-tabs.js +1 -1
  201. package/dist/collection/components/spw-tag/spw-tag.js +1 -1
  202. package/dist/collection/components/spw-text-field/spw-text-field.js +88 -10
  203. package/dist/collection/components/spw-textarea/spw-textarea.js +2 -2
  204. package/dist/collection/components/spw-theme-provider/spw-theme-provider.js +1 -1
  205. package/dist/collection/components/spw-tile/spw-tile-description/spw-tile-description.js +1 -1
  206. package/dist/collection/components/spw-tile/spw-tile-title/spw-tile-title.js +1 -1
  207. package/dist/collection/components/spw-tile/spw-tile.js +1 -1
  208. package/dist/collection/components/spw-timeline/spw-timeline-item/spw-timeline-item.js +2 -2
  209. package/dist/collection/components/spw-timeline/spw-timeline.js +2 -2
  210. package/dist/collection/components/spw-toast/spw-toast-controller/spw-toast-controller.js +1 -1
  211. package/dist/collection/components/spw-toc/spw-toc-container/spw-toc-container.js +1 -1
  212. package/dist/collection/components/spw-toc/spw-toc.js +1 -1
  213. package/dist/collection/components/spw-tooltip/spw-tooltip.js +1 -1
  214. package/dist/collection/components/spw-topbar/spw-topbar.js +1 -1
  215. package/dist/collection/components/spw-wizard/spw-wizard-item/spw-wizard-item.js +1 -1
  216. package/dist/collection/components/spw-wizard/spw-wizard.js +1 -1
  217. package/dist/collection/stories/components/spw-box/spw-box.stories.js +312 -0
  218. package/dist/collection/stories/components/spw-custom-select/spw-custom-select.stories.js +23 -2
  219. package/dist/collection/stories/organisms/spw-card/spw-card.stories.js +58 -1
  220. package/dist/collection/stories/organisms/spw-hero/spw-hero.stories.js +61 -0
  221. package/dist/collection/stories/organisms/spw-lightbox/spw-lightbox.stories.js +623 -0
  222. package/dist/collection/stories/organisms/spw-slider/spw-slider.stories.js +142 -6
  223. package/dist/collection/stories/organisms/spw-toc/spw-toc.stories.js +40 -34
  224. package/dist/collection/utils/animation.js +7 -2
  225. package/dist/components/index.js +1 -1
  226. package/dist/components/{p-DwCnnHgn.js → p-26TmvHEb.js} +1 -1
  227. package/dist/components/{p-CMLl0RMI.js → p-B3wy-a7G.js} +1 -1
  228. package/dist/components/{p-D6LWZKvR.js → p-BAbzUkqV.js} +1 -1
  229. package/dist/components/{p-LSa_rZXb.js → p-BNsbxGcj.js} +1 -1
  230. package/dist/components/p-BRFNx2DL.js +1 -0
  231. package/dist/components/{p-BhdoYDTm.js → p-BRlLi9Ar.js} +1 -1
  232. package/dist/components/{p-DbSA5Qg5.js → p-Bu_U3_Ez.js} +1 -1
  233. package/dist/components/{p-BjLZzV7o.js → p-C8Vf9QlU.js} +1 -1
  234. package/dist/components/{p-CDlTW4jP.js → p-CLCgZYzK.js} +1 -1
  235. package/dist/components/p-CwQbV4MW.js +1 -0
  236. package/dist/components/{p-BxRsJDtg.js → p-DBIs7bbJ.js} +1 -1
  237. package/dist/components/{p-JuqrTYPp.js → p-DdZeGXq7.js} +1 -1
  238. package/dist/components/{p-DJvzArBD.js → p-Dv3JuDht.js} +1 -1
  239. package/dist/components/p-FB4itEEQ.js +1 -0
  240. package/dist/components/{p-BlIs4luv.js → p-HzgF73Oa.js} +1 -1
  241. package/dist/components/{p-DiO72wMf.js → p-oVOlDrOp.js} +1 -1
  242. package/dist/components/{p-D8N138f1.js → p-w411zfAm.js} +1 -1
  243. package/dist/components/spw-accordion-content.js +1 -1
  244. package/dist/components/spw-accordion-item.js +1 -1
  245. package/dist/components/spw-accordion-title.js +1 -1
  246. package/dist/components/spw-accordion.js +1 -1
  247. package/dist/components/spw-avatar.js +1 -1
  248. package/dist/components/spw-block-content.js +1 -1
  249. package/dist/components/spw-box.d.ts +11 -0
  250. package/dist/components/spw-box.js +1 -0
  251. package/dist/components/spw-breadcrumb-item.js +1 -1
  252. package/dist/components/spw-breadcrumb.js +1 -1
  253. package/dist/components/spw-button.js +1 -1
  254. package/dist/components/spw-card-content.js +1 -1
  255. package/dist/components/spw-card-excerpt.js +1 -1
  256. package/dist/components/spw-card-image.js +1 -1
  257. package/dist/components/spw-card-subtag-item.js +1 -1
  258. package/dist/components/spw-card-subtags.js +1 -1
  259. package/dist/components/spw-card-title.js +1 -1
  260. package/dist/components/spw-card.js +1 -1
  261. package/dist/components/spw-checkbox.js +1 -1
  262. package/dist/components/spw-cookies.js +1 -1
  263. package/dist/components/spw-custom-select.js +1 -1
  264. package/dist/components/spw-date-picker.js +1 -1
  265. package/dist/components/spw-dropdown-container.js +1 -1
  266. package/dist/components/spw-dropdown-item.js +1 -1
  267. package/dist/components/spw-dropdown.js +1 -1
  268. package/dist/components/spw-field-label.js +1 -1
  269. package/dist/components/spw-field-message.js +1 -1
  270. package/dist/components/spw-file-upload.js +1 -1
  271. package/dist/components/spw-footer-bottom.js +1 -1
  272. package/dist/components/spw-footer-content-col.js +1 -1
  273. package/dist/components/spw-footer-content.js +1 -1
  274. package/dist/components/spw-footer-link.js +1 -1
  275. package/dist/components/spw-footer.js +1 -1
  276. package/dist/components/spw-grid-item.js +1 -1
  277. package/dist/components/spw-grid.js +1 -1
  278. package/dist/components/spw-group.js +1 -1
  279. package/dist/components/spw-header-lang.js +1 -1
  280. package/dist/components/spw-header-navigation-dropdown.js +1 -1
  281. package/dist/components/spw-header-navigation-item.js +1 -1
  282. package/dist/components/spw-header-navigation.js +1 -1
  283. package/dist/components/spw-header-persona-item.js +1 -1
  284. package/dist/components/spw-header-persona.js +1 -1
  285. package/dist/components/spw-header.js +1 -1
  286. package/dist/components/spw-hero.js +1 -1
  287. package/dist/components/spw-icon.js +1 -1
  288. package/dist/components/spw-input-slider.js +1 -1
  289. package/dist/components/spw-lightbox-item.d.ts +11 -0
  290. package/dist/components/spw-lightbox-item.js +1 -0
  291. package/dist/components/spw-lightbox.d.ts +11 -0
  292. package/dist/components/spw-lightbox.js +1 -0
  293. package/dist/components/spw-link.js +1 -1
  294. package/dist/components/spw-list-description.js +1 -1
  295. package/dist/components/spw-list-item.js +1 -1
  296. package/dist/components/spw-list-title.js +1 -1
  297. package/dist/components/spw-list.js +1 -1
  298. package/dist/components/spw-loading.js +1 -1
  299. package/dist/components/spw-message.js +1 -1
  300. package/dist/components/spw-modal.js +1 -1
  301. package/dist/components/spw-mosaic-item.js +1 -1
  302. package/dist/components/spw-mosaic.js +1 -1
  303. package/dist/components/spw-pagination.js +1 -1
  304. package/dist/components/spw-radio.js +1 -1
  305. package/dist/components/spw-scrolltop.js +1 -1
  306. package/dist/components/spw-search-field.js +1 -1
  307. package/dist/components/spw-select.js +1 -1
  308. package/dist/components/spw-separator.js +1 -1
  309. package/dist/components/spw-sidebar-navigation-dropdown.js +1 -1
  310. package/dist/components/spw-sidebar-navigation-item.js +1 -1
  311. package/dist/components/spw-sidebar-navigation-separator.js +1 -1
  312. package/dist/components/spw-sidebar.js +1 -1
  313. package/dist/components/spw-skeleton.js +1 -1
  314. package/dist/components/spw-slider-item.js +1 -1
  315. package/dist/components/spw-slider.js +1 -1
  316. package/dist/components/spw-socials.js +1 -1
  317. package/dist/components/spw-table-body.js +1 -1
  318. package/dist/components/spw-table-cell.js +1 -1
  319. package/dist/components/spw-table-container.js +1 -1
  320. package/dist/components/spw-table-footer.js +1 -1
  321. package/dist/components/spw-table-head.js +1 -1
  322. package/dist/components/spw-table-header.js +1 -1
  323. package/dist/components/spw-table-row.js +1 -1
  324. package/dist/components/spw-table-sidebar.js +1 -1
  325. package/dist/components/spw-table.js +1 -1
  326. package/dist/components/spw-tabs-navigation-item.js +1 -1
  327. package/dist/components/spw-tabs-navigation.js +1 -1
  328. package/dist/components/spw-tabs.js +1 -1
  329. package/dist/components/spw-tag.js +1 -1
  330. package/dist/components/spw-text-field.js +1 -1
  331. package/dist/components/spw-textarea.js +1 -1
  332. package/dist/components/spw-theme-provider.js +1 -1
  333. package/dist/components/spw-tile-description.js +1 -1
  334. package/dist/components/spw-tile-title.js +1 -1
  335. package/dist/components/spw-tile.js +1 -1
  336. package/dist/components/spw-timeline-item.js +1 -1
  337. package/dist/components/spw-timeline.js +1 -1
  338. package/dist/components/spw-toast-controller.js +1 -1
  339. package/dist/components/spw-toast.js +1 -1
  340. package/dist/components/spw-toc-container.js +1 -1
  341. package/dist/components/spw-toc.js +1 -1
  342. package/dist/components/spw-tooltip.js +1 -1
  343. package/dist/components/spw-topbar.js +1 -1
  344. package/dist/components/spw-wizard-item.js +1 -1
  345. package/dist/components/spw-wizard.js +1 -1
  346. package/dist/components_json.json +1675 -121
  347. package/dist/esm/{animation-BO7xVlWo.js → animation-BRFNx2DL.js} +7 -2
  348. package/dist/esm/index-BvJ4Kko5.js +3158 -0
  349. package/dist/esm/loader.js +3 -3
  350. package/dist/esm/spw-accordion_4.entry.js +5 -5
  351. package/dist/esm/spw-avatar.entry.js +2 -2
  352. package/dist/esm/spw-block-content.entry.js +3 -3
  353. package/dist/esm/spw-box.entry.js +60 -0
  354. package/dist/esm/spw-breadcrumb-item.entry.js +2 -2
  355. package/dist/esm/spw-breadcrumb.entry.js +2 -2
  356. package/dist/esm/spw-button_2.entry.js +4 -4
  357. package/dist/esm/spw-card-content.entry.js +3 -3
  358. package/dist/esm/spw-card-excerpt.entry.js +2 -2
  359. package/dist/esm/spw-card-image.entry.js +5 -3
  360. package/dist/esm/spw-card-subtag-item.entry.js +2 -2
  361. package/dist/esm/spw-card-subtags.entry.js +2 -2
  362. package/dist/esm/spw-card-title.entry.js +2 -2
  363. package/dist/esm/spw-card.entry.js +3 -3
  364. package/dist/esm/spw-checkbox.entry.js +2 -2
  365. package/dist/esm/spw-cookies.entry.js +1 -1
  366. package/dist/esm/spw-custom-select.entry.js +65 -6
  367. package/dist/esm/spw-date-picker.entry.js +2 -2
  368. package/dist/esm/spw-dropdown-container.entry.js +2 -2
  369. package/dist/esm/spw-dropdown-item.entry.js +2 -2
  370. package/dist/esm/spw-dropdown.entry.js +2 -2
  371. package/dist/esm/spw-field-label_7.entry.js +18 -18
  372. package/dist/esm/spw-field-message.entry.js +2 -2
  373. package/dist/esm/spw-file-upload.entry.js +3 -3
  374. package/dist/esm/spw-footer-bottom.entry.js +3 -3
  375. package/dist/esm/spw-footer-content-col.entry.js +7 -3
  376. package/dist/esm/spw-footer-content.entry.js +2 -2
  377. package/dist/esm/spw-footer-link.entry.js +3 -3
  378. package/dist/esm/spw-footer.entry.js +2 -2
  379. package/dist/esm/spw-grid-item.entry.js +3 -3
  380. package/dist/esm/spw-grid.entry.js +6 -4
  381. package/dist/esm/spw-header-lang.entry.js +2 -2
  382. package/dist/esm/spw-header-navigation-dropdown.entry.js +2 -2
  383. package/dist/esm/spw-header-navigation-item.entry.js +3 -3
  384. package/dist/esm/spw-header-navigation.entry.js +2 -2
  385. package/dist/esm/spw-header-persona-item.entry.js +2 -2
  386. package/dist/esm/spw-header-persona.entry.js +3 -3
  387. package/dist/esm/spw-header.entry.js +16 -3
  388. package/dist/esm/spw-hero.entry.js +21 -5
  389. package/dist/esm/spw-illustration.entry.js +1 -1
  390. package/dist/esm/spw-input-slider.entry.js +2 -2
  391. package/dist/esm/spw-lightbox-item.entry.js +53 -0
  392. package/dist/esm/spw-lightbox.entry.js +247 -0
  393. package/dist/esm/spw-list-description.entry.js +2 -2
  394. package/dist/esm/spw-list-item.entry.js +2 -2
  395. package/dist/esm/spw-list-title.entry.js +2 -2
  396. package/dist/esm/spw-list.entry.js +2 -2
  397. package/dist/esm/spw-message.entry.js +1 -1
  398. package/dist/esm/spw-modal.entry.js +5 -5
  399. package/dist/esm/spw-mosaic-item.entry.js +2 -2
  400. package/dist/esm/spw-mosaic.entry.js +2 -2
  401. package/dist/esm/spw-pagination.entry.js +7 -7
  402. package/dist/esm/spw-radio.entry.js +2 -2
  403. package/dist/esm/spw-scrolltop.entry.js +2 -2
  404. package/dist/esm/spw-search-field.entry.js +12 -6
  405. package/dist/esm/spw-select.entry.js +2 -2
  406. package/dist/esm/spw-sidebar-navigation-dropdown.entry.js +2 -2
  407. package/dist/esm/spw-sidebar-navigation-item.entry.js +4 -4
  408. package/dist/esm/spw-sidebar-navigation-separator.entry.js +2 -2
  409. package/dist/esm/spw-sidebar.entry.js +2 -2
  410. package/dist/esm/spw-skeleton.entry.js +2 -2
  411. package/dist/esm/spw-slider-item.entry.js +2 -2
  412. package/dist/esm/spw-slider.entry.js +26 -9
  413. package/dist/esm/spw-socials.entry.js +2 -2
  414. package/dist/esm/spw-stencil-library.js +3 -3
  415. package/dist/esm/spw-table-body.entry.js +2 -2
  416. package/dist/esm/spw-table-cell.entry.js +2 -2
  417. package/dist/esm/spw-table-container.entry.js +2 -2
  418. package/dist/esm/spw-table-footer.entry.js +2 -2
  419. package/dist/esm/spw-table-head.entry.js +2 -2
  420. package/dist/esm/spw-table-header.entry.js +3 -3
  421. package/dist/esm/spw-table-row.entry.js +2 -2
  422. package/dist/esm/spw-table-sidebar.entry.js +2 -2
  423. package/dist/esm/spw-table.entry.js +3 -3
  424. package/dist/esm/spw-tabs-content.entry.js +1 -1
  425. package/dist/esm/spw-tabs-navigation-item.entry.js +2 -2
  426. package/dist/esm/spw-tabs-navigation.entry.js +3 -3
  427. package/dist/esm/spw-tabs.entry.js +2 -2
  428. package/dist/esm/spw-tag.entry.js +2 -2
  429. package/dist/esm/spw-text-field.entry.js +69 -10
  430. package/dist/esm/spw-textarea.entry.js +2 -2
  431. package/dist/esm/spw-tile-description.entry.js +2 -2
  432. package/dist/esm/spw-tile-title.entry.js +2 -2
  433. package/dist/esm/spw-tile.entry.js +2 -2
  434. package/dist/esm/spw-timeline-item.entry.js +3 -3
  435. package/dist/esm/spw-timeline.entry.js +3 -3
  436. package/dist/esm/spw-toast-controller.entry.js +2 -2
  437. package/dist/esm/spw-toast.entry.js +2 -2
  438. package/dist/esm/spw-toc-container.entry.js +2 -2
  439. package/dist/esm/spw-toc-navigation.entry.js +1 -1
  440. package/dist/esm/spw-toc.entry.js +2 -2
  441. package/dist/esm/spw-topbar.entry.js +2 -2
  442. package/dist/esm/spw-wizard-item.entry.js +2 -2
  443. package/dist/esm/spw-wizard.entry.js +2 -2
  444. package/dist/spw-stencil-library/{p-3049cc60.entry.js → p-02de5468.entry.js} +1 -1
  445. package/dist/spw-stencil-library/{p-72d6b4cb.entry.js → p-049c5159.entry.js} +1 -1
  446. package/dist/spw-stencil-library/{p-eb71cf55.entry.js → p-05819904.entry.js} +1 -1
  447. package/dist/spw-stencil-library/{p-4aa5759c.entry.js → p-0a9288b5.entry.js} +1 -1
  448. package/dist/spw-stencil-library/{p-c195597b.entry.js → p-0b4fd80e.entry.js} +1 -1
  449. package/dist/spw-stencil-library/{p-d21b0833.entry.js → p-0cf5aadc.entry.js} +1 -1
  450. package/dist/spw-stencil-library/{p-a4336c0c.entry.js → p-153a026f.entry.js} +1 -1
  451. package/dist/spw-stencil-library/{p-b460afdc.entry.js → p-1875874e.entry.js} +1 -1
  452. package/dist/spw-stencil-library/p-19c01c71.entry.js +1 -0
  453. package/dist/spw-stencil-library/{p-92b69e67.entry.js → p-1fa367e7.entry.js} +1 -1
  454. package/dist/spw-stencil-library/{p-eba031ea.entry.js → p-2298be7a.entry.js} +1 -1
  455. package/dist/spw-stencil-library/{p-06e9e52e.entry.js → p-242e2de6.entry.js} +1 -1
  456. package/dist/spw-stencil-library/{p-a574c1f7.entry.js → p-28a5d0bf.entry.js} +1 -1
  457. package/dist/spw-stencil-library/{p-1e21eb78.entry.js → p-28e49d02.entry.js} +1 -1
  458. package/dist/spw-stencil-library/{p-2ef62013.entry.js → p-2b182fc8.entry.js} +1 -1
  459. package/dist/spw-stencil-library/{p-935f19f8.entry.js → p-2dda4dfe.entry.js} +1 -1
  460. package/dist/spw-stencil-library/{p-77c9e985.entry.js → p-34cc819b.entry.js} +1 -1
  461. package/dist/spw-stencil-library/{p-46256b79.entry.js → p-35b865cf.entry.js} +1 -1
  462. package/dist/spw-stencil-library/{p-8cfe9a5c.entry.js → p-38a53864.entry.js} +1 -1
  463. package/dist/spw-stencil-library/{p-fc3463d2.entry.js → p-3ccb9c03.entry.js} +1 -1
  464. package/dist/spw-stencil-library/{p-f413fe3a.entry.js → p-3e7b44af.entry.js} +1 -1
  465. package/dist/spw-stencil-library/{p-8fc73ffb.entry.js → p-450306c5.entry.js} +1 -1
  466. package/dist/spw-stencil-library/{p-937eeeeb.entry.js → p-47478c37.entry.js} +1 -1
  467. package/dist/spw-stencil-library/{p-5b6d907b.entry.js → p-474cbbca.entry.js} +1 -1
  468. package/dist/spw-stencil-library/{p-11039299.entry.js → p-47a23440.entry.js} +1 -1
  469. package/dist/spw-stencil-library/{p-584f8ba5.entry.js → p-48b4e11f.entry.js} +1 -1
  470. package/dist/spw-stencil-library/{p-9eeeb874.entry.js → p-4c59112a.entry.js} +1 -1
  471. package/dist/spw-stencil-library/p-4dd215d6.entry.js +1 -0
  472. package/dist/spw-stencil-library/{p-12878c95.entry.js → p-4eda33d4.entry.js} +1 -1
  473. package/dist/spw-stencil-library/{p-12e209dc.entry.js → p-50ccad8a.entry.js} +1 -1
  474. package/dist/spw-stencil-library/{p-5c58ca89.entry.js → p-52731c22.entry.js} +1 -1
  475. package/dist/spw-stencil-library/{p-536082bb.entry.js → p-58393ab6.entry.js} +1 -1
  476. package/dist/spw-stencil-library/{p-72e7b957.entry.js → p-59925808.entry.js} +1 -1
  477. package/dist/spw-stencil-library/p-61b5224c.entry.js +1 -0
  478. package/dist/spw-stencil-library/{p-017e66d3.entry.js → p-661d7e73.entry.js} +1 -1
  479. package/dist/spw-stencil-library/{p-231fbcc9.entry.js → p-661fcef1.entry.js} +1 -1
  480. package/dist/spw-stencil-library/{p-9bcade02.entry.js → p-6676fc1b.entry.js} +1 -1
  481. package/dist/spw-stencil-library/{p-04208e52.entry.js → p-66da29be.entry.js} +1 -1
  482. package/dist/spw-stencil-library/{p-862ebaf0.entry.js → p-6cf39777.entry.js} +1 -1
  483. package/dist/spw-stencil-library/{p-989fa86f.entry.js → p-7107ed7f.entry.js} +1 -1
  484. package/dist/spw-stencil-library/{p-dd9a9e15.entry.js → p-7177a4f7.entry.js} +2 -2
  485. package/dist/spw-stencil-library/{p-ed5c4229.entry.js → p-732b2f4c.entry.js} +1 -1
  486. package/dist/spw-stencil-library/{p-1c25df2f.entry.js → p-7ccef87e.entry.js} +1 -1
  487. package/dist/spw-stencil-library/{p-9f3abef5.entry.js → p-7db10e21.entry.js} +1 -1
  488. package/dist/spw-stencil-library/{p-e88d700b.entry.js → p-7dd7816b.entry.js} +1 -1
  489. package/dist/spw-stencil-library/{p-3ad3b8d1.entry.js → p-8063aa58.entry.js} +1 -1
  490. package/dist/spw-stencil-library/{p-68c8ab55.entry.js → p-822b0a4b.entry.js} +1 -1
  491. package/dist/spw-stencil-library/{p-d8967e7d.entry.js → p-82aa983b.entry.js} +1 -1
  492. package/dist/spw-stencil-library/{p-862856bf.entry.js → p-85e3a088.entry.js} +1 -1
  493. package/dist/spw-stencil-library/{p-899045e0.entry.js → p-862fdbdb.entry.js} +1 -1
  494. package/dist/spw-stencil-library/p-873c504b.entry.js +1 -0
  495. package/dist/spw-stencil-library/p-8a65a845.entry.js +1 -0
  496. package/dist/spw-stencil-library/{p-461f9d48.entry.js → p-8c750816.entry.js} +1 -1
  497. package/dist/spw-stencil-library/{p-d9b44e31.entry.js → p-95710898.entry.js} +1 -1
  498. package/dist/spw-stencil-library/{p-c84743b7.entry.js → p-97c81dd9.entry.js} +1 -1
  499. package/dist/spw-stencil-library/{p-218ae66c.entry.js → p-9eef1265.entry.js} +1 -1
  500. package/dist/spw-stencil-library/p-BRFNx2DL.js +1 -0
  501. package/dist/spw-stencil-library/p-BvJ4Kko5.js +2 -0
  502. package/dist/spw-stencil-library/p-a3176800.entry.js +1 -0
  503. package/dist/spw-stencil-library/{p-21ac7e70.entry.js → p-a3c881c8.entry.js} +1 -1
  504. package/dist/spw-stencil-library/{p-6ac1cfdb.entry.js → p-a3ee7134.entry.js} +1 -1
  505. package/dist/spw-stencil-library/p-a6250c87.entry.js +1 -0
  506. package/dist/spw-stencil-library/{p-ef377fc3.entry.js → p-a6fb9fd7.entry.js} +1 -1
  507. package/dist/spw-stencil-library/p-aba5a50e.entry.js +1 -0
  508. package/dist/spw-stencil-library/p-ada5d5c1.entry.js +1 -0
  509. package/dist/spw-stencil-library/{p-fb0820ba.entry.js → p-ae28e3c0.entry.js} +1 -1
  510. package/dist/spw-stencil-library/p-b02ea898.entry.js +1 -0
  511. package/dist/spw-stencil-library/{p-bef41011.entry.js → p-b04edce9.entry.js} +1 -1
  512. package/dist/spw-stencil-library/{p-335b9ec2.entry.js → p-b106fb83.entry.js} +1 -1
  513. package/dist/spw-stencil-library/{p-9911694d.entry.js → p-bc45cc77.entry.js} +1 -1
  514. package/dist/spw-stencil-library/{p-6b8ad6ec.entry.js → p-c319b12a.entry.js} +1 -1
  515. package/dist/spw-stencil-library/{p-ce6499ac.entry.js → p-c3fcebbb.entry.js} +1 -1
  516. package/dist/spw-stencil-library/{p-fd8ae317.entry.js → p-c44b2b7a.entry.js} +1 -1
  517. package/dist/spw-stencil-library/{p-bc6051f9.entry.js → p-c8b2eba5.entry.js} +1 -1
  518. package/dist/spw-stencil-library/{p-428c33de.entry.js → p-cf452afb.entry.js} +1 -1
  519. package/dist/spw-stencil-library/{p-326f87ff.entry.js → p-d9d9f6e6.entry.js} +1 -1
  520. package/dist/spw-stencil-library/p-da114b29.entry.js +1 -0
  521. package/dist/spw-stencil-library/p-de825095.entry.js +1 -0
  522. package/dist/spw-stencil-library/{p-a77de6f3.entry.js → p-e0ce83c2.entry.js} +1 -1
  523. package/dist/spw-stencil-library/{p-c9cb2441.entry.js → p-e838ba61.entry.js} +1 -1
  524. package/dist/spw-stencil-library/{p-acd69768.entry.js → p-ecf926b0.entry.js} +1 -1
  525. package/dist/spw-stencil-library/{p-1a85816b.entry.js → p-eeacd7b2.entry.js} +1 -1
  526. package/dist/spw-stencil-library/{p-bb50f1c6.entry.js → p-f194ab4b.entry.js} +1 -1
  527. package/dist/spw-stencil-library/{p-e53ff9dd.entry.js → p-f1baf303.entry.js} +1 -1
  528. package/dist/spw-stencil-library/p-f1ecd17e.entry.js +1 -0
  529. package/dist/spw-stencil-library/{p-b82b3af6.entry.js → p-f20b2da0.entry.js} +1 -1
  530. package/dist/spw-stencil-library/{p-7d0fb1fc.entry.js → p-f2b58e55.entry.js} +1 -1
  531. package/dist/spw-stencil-library/{p-53b60fa8.entry.js → p-f5d2d168.entry.js} +1 -1
  532. package/dist/spw-stencil-library/p-f69182ff.entry.js +1 -0
  533. package/dist/spw-stencil-library/{p-f5b3255d.entry.js → p-f898a06d.entry.js} +1 -1
  534. package/dist/spw-stencil-library/{p-6c67f42e.entry.js → p-fab8c92f.entry.js} +1 -1
  535. package/dist/spw-stencil-library/{p-33b37c7f.entry.js → p-fc96be97.entry.js} +1 -1
  536. package/dist/spw-stencil-library/{p-3694301c.entry.js → p-fd564976.entry.js} +1 -1
  537. package/dist/spw-stencil-library/{p-39cae775.entry.js → p-ff289cc8.entry.js} +1 -1
  538. package/dist/spw-stencil-library/{p-c7f64bb6.entry.js → p-ffe7898a.entry.js} +1 -1
  539. package/dist/spw-stencil-library/spw-stencil-library.css +4 -4
  540. package/dist/spw-stencil-library/spw-stencil-library.esm.js +1 -1
  541. package/dist/stats.json +12396 -9103
  542. package/dist/types/components/spw-box/spw-box.d.ts +25 -0
  543. package/dist/types/components/spw-card/spw-card-image/spw-card-image.d.ts +2 -0
  544. package/dist/types/components/spw-card/spw-card.d.ts +1 -1
  545. package/dist/types/components/spw-custom-select/spw-custom-select.d.ts +12 -1
  546. package/dist/types/components/spw-date-picker/spw-date-picker.d.ts +1 -1
  547. package/dist/types/components/spw-footer/spw-footer-content-col/spw-footer-content-col.d.ts +2 -0
  548. package/dist/types/components/spw-grid/spw-grid.d.ts +2 -0
  549. package/dist/types/components/spw-header/spw-header.d.ts +2 -0
  550. package/dist/types/components/spw-hero/spw-hero.d.ts +9 -1
  551. package/dist/types/components/spw-lightbox/spw-lightbox-item/spw-lightbox-item.d.ts +39 -0
  552. package/dist/types/components/spw-lightbox/spw-lightbox.d.ts +72 -0
  553. package/dist/types/components/spw-search-field/spw-search-field.d.ts +7 -1
  554. package/dist/types/components/spw-select/spw-select.d.ts +1 -1
  555. package/dist/types/components/spw-slider/spw-slider.d.ts +17 -0
  556. package/dist/types/components/spw-text-field/spw-text-field.d.ts +6 -1
  557. package/dist/types/components/spw-textarea/spw-textarea.d.ts +1 -1
  558. package/dist/types/components.d.ts +554 -18
  559. package/dist/types/stories/components/spw-box/spw-box.stories.d.ts +10 -0
  560. package/dist/types/stories/components/spw-custom-select/spw-custom-select.stories.d.ts +1 -0
  561. package/dist/types/stories/organisms/spw-card/spw-card.stories.d.ts +2 -1
  562. package/dist/types/stories/organisms/spw-hero/spw-hero.stories.d.ts +3 -0
  563. package/dist/types/stories/organisms/spw-lightbox/spw-lightbox.stories.d.ts +16 -0
  564. package/dist/types/stories/organisms/spw-slider/spw-slider.stories.d.ts +8 -1
  565. package/hydrate/index.js +798 -188
  566. package/hydrate/index.mjs +798 -188
  567. package/package.json +1 -1
  568. package/dist/cjs/index-CX9is0m-.js +0 -3175
  569. package/dist/components/p-BO7xVlWo.js +0 -1
  570. package/dist/components/p-CANbQKSH.js +0 -1
  571. package/dist/components/p-D4YZDvw0.js +0 -1
  572. package/dist/components_vscode.json +0 -4824
  573. package/dist/esm/index-Dk6w7kAO.js +0 -3146
  574. package/dist/spw-stencil-library/p-17891524.entry.js +0 -1
  575. package/dist/spw-stencil-library/p-438fedef.entry.js +0 -1
  576. package/dist/spw-stencil-library/p-5779ce33.entry.js +0 -1
  577. package/dist/spw-stencil-library/p-9397da21.entry.js +0 -1
  578. package/dist/spw-stencil-library/p-9e73b259.entry.js +0 -1
  579. package/dist/spw-stencil-library/p-BO7xVlWo.js +0 -1
  580. package/dist/spw-stencil-library/p-Dk6w7kAO.js +0 -2
  581. package/dist/spw-stencil-library/p-b4391972.entry.js +0 -1
  582. package/dist/spw-stencil-library/p-c452d5b0.entry.js +0 -1
  583. package/dist/spw-stencil-library/p-c8800fc9.entry.js +0 -1
  584. package/dist/spw-stencil-library/p-ce6317dd.entry.js +0 -1
  585. package/dist/spw-stencil-library/p-dd4fe0fb.entry.js +0 -1
  586. package/dist/spw-stencil-library/p-e1b7565b.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
+ };
@@ -20,6 +20,12 @@ const meta = {
20
20
  tags: ['autodocs'],
21
21
  parameters: {
22
22
  docs: {
23
+ source: {
24
+ transform: (src) => {
25
+ // Retire le wrapper div ajouté pour limiter la largeur du preview
26
+ return src.replace(/^<div[^>]*>\n?\s*/i, '').replace(/\n?\s*<\/div>$/i, '');
27
+ },
28
+ },
23
29
  description: {
24
30
  component: `
25
31
  <strong class="mr-2">Statut du composant :</strong> <spw-tag size="small" variant="green">Prêt</spw-tag>
@@ -37,6 +43,7 @@ Le composant Carte est un conteneur cliquable qui affiche un aperçu visuel de c
37
43
  - **People** : Carte profil avec avatar rond
38
44
  - **Sidebar** : Version pour barre latérale
39
45
  - **Highlighted** : Carte mise en avant avec style visuel distinctif
46
+ - **RoundedPicture** : Carte pour une galerie photo avec image arrondie et icône de survol personnalisable
40
47
 
41
48
  ## Structure
42
49
 
@@ -181,6 +188,14 @@ function getHtmlContent(variant, slotArgs) {
181
188
  <img alt="${slotArgs.imgAlt || ''}" src="${slotArgs.imgSrc}" />
182
189
  </spw-card-image>
183
190
  </spw-card-content>
191
+ `;
192
+ case 'rounded-picture':
193
+ return `
194
+ ${cardImage}
195
+ <spw-card-content tag="${slotArgs.contentTag}" date="${slotArgs.contentDate}">
196
+ ${cardTitle}
197
+ ${cardExcerpt}
198
+ </spw-card-content>
184
199
  `;
185
200
  default:
186
201
  return `
@@ -194,6 +209,8 @@ function getHtmlContent(variant, slotArgs) {
194
209
  }
195
210
  }
196
211
  const Template = args => {
212
+ const wrapper = document.createElement('div');
213
+ wrapper.style.maxWidth = '2000px';
197
214
  const element = document.createElement(elementTag);
198
215
  const variant = args.variant || 'news';
199
216
  const controls = withComponentControls(componentsData, { tag: elementTag }) || {};
@@ -208,7 +225,8 @@ const Template = args => {
208
225
  }
209
226
  });
210
227
  element.innerHTML = getHtmlContent(variant, args);
211
- return element;
228
+ wrapper.appendChild(element);
229
+ return wrapper;
212
230
  };
213
231
  export const Default = Template.bind({});
214
232
  Default.args = {
@@ -397,3 +415,42 @@ Highlighted.parameters = {
397
415
  },
398
416
  },
399
417
  };
418
+ export const RoundedPicture = () => {
419
+ const wrapper = document.createElement('div');
420
+ wrapper.style.maxWidth = '300px';
421
+ wrapper.innerHTML = /* HTML */ `
422
+ <spw-card href="#" variant="rounded-picture">
423
+ <spw-card-image ratio="2/3" hover-icon="fa-magnifying-glass">
424
+ <img
425
+ src="https://images.unsplash.com/photo-1465056836041-7f43ac27dcb5?w=500&auto=format&fit=crop&q=60&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8MTV8fGxhbmRzY2FwZXxlbnwwfHwwfHx8MA%3D%3D"
426
+ alt="Paysage"
427
+ />
428
+ </spw-card-image>
429
+ <spw-card-content>
430
+ <spw-card-title>Titre</spw-card-title>
431
+ <spw-card-excerpt>Description</spw-card-excerpt>
432
+ </spw-card-content>
433
+ </spw-card>
434
+ `;
435
+ return wrapper;
436
+ };
437
+ RoundedPicture.parameters = {
438
+ docs: {
439
+ description: {
440
+ story: `Carte avec image arrondie en haut du contenu. Utilise ratio="2/3" sur spw-card-image et hover-icon pour personnaliser l'icône au survol. Peut servir pour afficher notamment une galerie photo.`,
441
+ },
442
+ source: {
443
+ code: /* HTML */ `
444
+ <spw-card href="#" variant="rounded-picture">
445
+ <spw-card-image ratio="2/3" hover-icon="fa-magnifying-glass">
446
+ <img src="..." alt="..." />
447
+ </spw-card-image>
448
+ <spw-card-content>
449
+ <spw-card-title>Titre</spw-card-title>
450
+ <spw-card-excerpt>Description</spw-card-excerpt>
451
+ </spw-card-content>
452
+ </spw-card>
453
+ `,
454
+ },
455
+ },
456
+ };
@@ -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
+ };