@affinda/wc 0.0.17 → 0.0.19

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 (705) hide show
  1. package/dist/affinda/af-accordion-item.entry.esm.js.map +1 -0
  2. package/dist/affinda/af-accordion.entry.esm.js.map +1 -0
  3. package/dist/affinda/af-button.entry.esm.js.map +1 -1
  4. package/dist/affinda/af-card.entry.esm.js.map +1 -1
  5. package/dist/affinda/af-center.entry.esm.js.map +1 -0
  6. package/dist/affinda/af-checkbox.entry.esm.js.map +1 -1
  7. package/dist/affinda/af-divider.entry.esm.js.map +1 -0
  8. package/dist/affinda/af-feature-card.entry.esm.js.map +1 -1
  9. package/dist/affinda/af-fieldset.entry.esm.js.map +1 -1
  10. package/dist/affinda/af-grid.entry.esm.js.map +1 -0
  11. package/dist/affinda/af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.esm.js.map +1 -1
  12. package/dist/affinda/af-inline.entry.esm.js.map +1 -0
  13. package/dist/affinda/af-input.entry.esm.js.map +1 -1
  14. package/dist/affinda/af-nav-accordion-item.entry.esm.js.map +1 -0
  15. package/dist/affinda/af-nav-accordion.entry.esm.js.map +1 -0
  16. package/dist/affinda/af-nav-card.entry.esm.js.map +1 -1
  17. package/dist/affinda/af-nav-menu-nest.entry.esm.js.map +1 -1
  18. package/dist/affinda/af-nav-menu.entry.esm.js.map +1 -1
  19. package/dist/affinda/af-radio.entry.esm.js.map +1 -1
  20. package/dist/affinda/af-section.entry.esm.js.map +1 -1
  21. package/dist/affinda/af-show.entry.esm.js.map +1 -0
  22. package/dist/affinda/af-spacer.entry.esm.js.map +1 -0
  23. package/dist/affinda/af-split-section.entry.esm.js.map +1 -1
  24. package/dist/affinda/af-stack.entry.esm.js.map +1 -0
  25. package/dist/affinda/af-switch.entry.esm.js.map +1 -1
  26. package/dist/affinda/af-textarea.entry.esm.js.map +1 -1
  27. package/dist/affinda/af-theme-override.entry.esm.js.map +1 -0
  28. package/dist/affinda/af-typography-lockup.entry.esm.js.map +1 -1
  29. package/dist/affinda/af-visually-hidden.entry.esm.js.map +1 -0
  30. package/dist/affinda/affinda.esm.js +1 -1
  31. package/dist/affinda/index.esm.js +1 -1
  32. package/dist/affinda/{p-acbbe39a.entry.js → p-01993cc8.entry.js} +2 -2
  33. package/dist/affinda/p-02830771.entry.js +2 -0
  34. package/dist/affinda/p-02830771.entry.js.map +1 -0
  35. package/dist/affinda/{p-a4e4eb4d.entry.js → p-04de9a0a.entry.js} +2 -2
  36. package/dist/affinda/{p-a6365e94.entry.js → p-080cf84f.entry.js} +2 -2
  37. package/dist/affinda/{p-b3b0ed0c.entry.js → p-0b5bc045.entry.js} +2 -2
  38. package/dist/affinda/p-0fcce1e4.entry.js +2 -0
  39. package/dist/affinda/p-0fcce1e4.entry.js.map +1 -0
  40. package/dist/affinda/{p-2b4dc22c.entry.js → p-16f808d5.entry.js} +2 -2
  41. package/dist/affinda/{p-52ab3bf0.entry.js → p-19eb7cb9.entry.js} +2 -2
  42. package/dist/affinda/p-1c32cfcb.entry.js +2 -0
  43. package/dist/affinda/p-1c32cfcb.entry.js.map +1 -0
  44. package/dist/affinda/p-266af3e1.entry.js +2 -0
  45. package/dist/affinda/p-266af3e1.entry.js.map +1 -0
  46. package/dist/affinda/p-288c2656.entry.js +2 -0
  47. package/dist/affinda/p-288c2656.entry.js.map +1 -0
  48. package/dist/affinda/p-2e5e4960.entry.js +2 -0
  49. package/dist/affinda/p-2e5e4960.entry.js.map +1 -0
  50. package/dist/affinda/{p-1d65fd18.entry.js → p-2e750d43.entry.js} +2 -2
  51. package/dist/affinda/p-302d0cf7.entry.js +2 -0
  52. package/dist/affinda/{p-231ba1d0.entry.js.map → p-302d0cf7.entry.js.map} +1 -1
  53. package/dist/affinda/{p-861f4f57.entry.js → p-331f9627.entry.js} +2 -2
  54. package/dist/affinda/p-389a6246.entry.js +2 -0
  55. package/dist/affinda/{p-7f20fbe0.entry.js.map → p-389a6246.entry.js.map} +1 -1
  56. package/dist/affinda/{p-77bf8a81.entry.js → p-3d2fb635.entry.js} +2 -2
  57. package/dist/affinda/{p-e5af21c2.entry.js → p-3e16bb11.entry.js} +2 -2
  58. package/dist/affinda/p-4c5f92a9.entry.js +2 -0
  59. package/dist/affinda/{p-ea06c83b.entry.js.map → p-4c5f92a9.entry.js.map} +1 -1
  60. package/dist/affinda/p-544b7c9c.entry.js +2 -0
  61. package/dist/affinda/p-544b7c9c.entry.js.map +1 -0
  62. package/dist/affinda/p-567ba536.entry.js +2 -0
  63. package/dist/affinda/{p-864778d0.entry.js.map → p-567ba536.entry.js.map} +1 -1
  64. package/dist/affinda/p-57eae3cd.entry.js +2 -0
  65. package/dist/affinda/{p-c3e31251.entry.js.map → p-57eae3cd.entry.js.map} +1 -1
  66. package/dist/affinda/p-6294b6d1.entry.js +2 -0
  67. package/dist/affinda/p-6294b6d1.entry.js.map +1 -0
  68. package/dist/affinda/{p-f45b0060.entry.js → p-63314e14.entry.js} +2 -2
  69. package/dist/affinda/p-64fa6ae6.entry.js +2 -0
  70. package/dist/affinda/p-64fa6ae6.entry.js.map +1 -0
  71. package/dist/affinda/{p-45e1923c.entry.js → p-68f1f661.entry.js} +2 -2
  72. package/dist/affinda/{p-b17735c9.entry.js → p-6af1634a.entry.js} +2 -2
  73. package/dist/affinda/p-6b92463e.entry.js +2 -0
  74. package/dist/affinda/{p-697bf0b7.entry.js.map → p-6b92463e.entry.js.map} +1 -1
  75. package/dist/affinda/p-6bbc1e24.entry.js +2 -0
  76. package/dist/affinda/p-6bbc1e24.entry.js.map +1 -0
  77. package/dist/affinda/p-709271d1.entry.js +2 -0
  78. package/dist/affinda/p-709271d1.entry.js.map +1 -0
  79. package/dist/affinda/{p-8ea22b5d.entry.js → p-7792cd53.entry.js} +2 -2
  80. package/dist/affinda/p-7b2671c4.entry.js +2 -0
  81. package/dist/affinda/p-7b2671c4.entry.js.map +1 -0
  82. package/dist/affinda/{p-85a78bcf.entry.js → p-8f24dfe3.entry.js} +2 -2
  83. package/dist/affinda/p-8f528f9d.entry.js +2 -0
  84. package/dist/affinda/p-8f528f9d.entry.js.map +1 -0
  85. package/dist/affinda/{p-44b25840.entry.js → p-920e6d30.entry.js} +2 -2
  86. package/dist/affinda/{p-10801ee1.entry.js → p-96df0106.entry.js} +2 -2
  87. package/dist/affinda/p-9de05d1d.entry.js +2 -0
  88. package/dist/affinda/p-9de05d1d.entry.js.map +1 -0
  89. package/dist/affinda/{p-a36abb83.entry.js → p-9e21b6c1.entry.js} +2 -2
  90. package/dist/affinda/{p-BmU_CFQ4.js → p-B0LVveHp.js} +3 -3
  91. package/dist/affinda/p-B0LVveHp.js.map +1 -0
  92. package/dist/affinda/{p-c11088fa.entry.js → p-a2c71cad.entry.js} +2 -2
  93. package/dist/affinda/p-a6402689.entry.js +2 -0
  94. package/dist/affinda/{p-be049760.entry.js.map → p-a6402689.entry.js.map} +1 -1
  95. package/dist/affinda/p-a7574570.entry.js +2 -0
  96. package/dist/affinda/{p-98901734.entry.js.map → p-a7574570.entry.js.map} +1 -1
  97. package/dist/affinda/p-a942522f.entry.js +2 -0
  98. package/dist/affinda/{p-c0ee2420.entry.js.map → p-a942522f.entry.js.map} +1 -1
  99. package/dist/affinda/{p-96eac3af.entry.js → p-adacb8c4.entry.js} +2 -2
  100. package/dist/affinda/p-af25dad7.entry.js +2 -0
  101. package/dist/affinda/{p-ce3356f1.entry.js.map → p-af25dad7.entry.js.map} +1 -1
  102. package/dist/affinda/p-b0d668d0.entry.js +2 -0
  103. package/dist/affinda/p-b0d668d0.entry.js.map +1 -0
  104. package/dist/affinda/{p-e5d9913c.entry.js → p-b10103f4.entry.js} +2 -2
  105. package/dist/affinda/p-b2338fab.entry.js +2 -0
  106. package/dist/affinda/{p-c298b370.entry.js.map → p-b2338fab.entry.js.map} +1 -1
  107. package/dist/affinda/p-b56e9e2d.entry.js +2 -0
  108. package/dist/affinda/p-b56e9e2d.entry.js.map +1 -0
  109. package/dist/affinda/p-b68748ab.entry.js +2 -0
  110. package/dist/affinda/p-b68748ab.entry.js.map +1 -0
  111. package/dist/affinda/{p-1d9e532f.entry.js → p-bd7170d7.entry.js} +2 -2
  112. package/dist/affinda/p-c72cfcbd.entry.js +2 -0
  113. package/dist/affinda/p-c72cfcbd.entry.js.map +1 -0
  114. package/dist/affinda/p-c74481bd.entry.js +2 -0
  115. package/dist/affinda/p-c74481bd.entry.js.map +1 -0
  116. package/dist/affinda/{p-0cd160a4.entry.js → p-cc4e73dc.entry.js} +2 -2
  117. package/dist/affinda/p-d47a77e2.entry.js +2 -0
  118. package/dist/affinda/p-d47a77e2.entry.js.map +1 -0
  119. package/dist/affinda/{p-3d3c9f62.entry.js → p-d51c4b1b.entry.js} +2 -2
  120. package/dist/affinda/p-d6e55455.entry.js +2 -0
  121. package/dist/affinda/{p-81571029.entry.js → p-d90366f6.entry.js} +2 -2
  122. package/dist/affinda/{p-31d4c1a4.entry.js → p-db9249e4.entry.js} +2 -2
  123. package/dist/affinda/p-e156a8bb.entry.js +2 -0
  124. package/dist/affinda/p-e156a8bb.entry.js.map +1 -0
  125. package/dist/affinda/{p-5bbf2c8c.entry.js → p-e305c2b7.entry.js} +2 -2
  126. package/dist/affinda/{p-71144002.entry.js → p-e7d8d909.entry.js} +2 -2
  127. package/dist/affinda/p-e9bc1739.entry.js +2 -0
  128. package/dist/affinda/p-e9bc1739.entry.js.map +1 -0
  129. package/dist/affinda/p-f1a5d268.entry.js +2 -0
  130. package/dist/affinda/p-f1a5d268.entry.js.map +1 -0
  131. package/dist/affinda/{p-425253ee.entry.js → p-f7a13cd3.entry.js} +2 -2
  132. package/dist/affinda/p-f9e7cf8f.entry.js +2 -0
  133. package/dist/affinda/p-f9e7cf8f.entry.js.map +1 -0
  134. package/dist/affinda/p-fd772813.entry.js +2 -0
  135. package/dist/affinda/p-fefe9597.entry.js +2 -0
  136. package/dist/cjs/af-accordion-item.cjs.entry.js +105 -0
  137. package/dist/cjs/af-accordion-item.entry.cjs.js.map +1 -0
  138. package/dist/cjs/af-accordion.cjs.entry.js +102 -0
  139. package/dist/cjs/af-accordion.entry.cjs.js.map +1 -0
  140. package/dist/cjs/af-aspect-ratio.cjs.entry.js +1 -1
  141. package/dist/cjs/af-button-group.cjs.entry.js +2 -2
  142. package/dist/cjs/af-button.cjs.entry.js +1 -1
  143. package/dist/cjs/af-button.entry.cjs.js.map +1 -1
  144. package/dist/cjs/af-card.cjs.entry.js +3 -3
  145. package/dist/cjs/af-card.entry.cjs.js.map +1 -1
  146. package/dist/cjs/af-center.cjs.entry.js +42 -0
  147. package/dist/cjs/af-center.entry.cjs.js.map +1 -0
  148. package/dist/cjs/af-checkbox.cjs.entry.js +3 -3
  149. package/dist/cjs/af-checkbox.entry.cjs.js.map +1 -1
  150. package/dist/cjs/af-client-carousel.cjs.entry.js +2 -2
  151. package/dist/cjs/af-color-swatch.cjs.entry.js +1 -1
  152. package/dist/cjs/af-contact-item.cjs.entry.js +2 -2
  153. package/dist/cjs/af-container.cjs.entry.js +1 -1
  154. package/dist/cjs/af-divider.cjs.entry.js +43 -0
  155. package/dist/cjs/af-divider.entry.cjs.js.map +1 -0
  156. package/dist/cjs/af-feature-accordion.cjs.entry.js +3 -3
  157. package/dist/cjs/af-feature-card.cjs.entry.js +2 -2
  158. package/dist/cjs/af-feature-card.entry.cjs.js.map +1 -1
  159. package/dist/cjs/af-feature-grid.cjs.entry.js +2 -2
  160. package/dist/cjs/af-fieldset.cjs.entry.js +3 -3
  161. package/dist/cjs/af-fieldset.entry.cjs.js.map +1 -1
  162. package/dist/cjs/af-footer-column.cjs.entry.js +2 -2
  163. package/dist/cjs/af-footer-link.cjs.entry.js +2 -2
  164. package/dist/cjs/af-footer.cjs.entry.js +2 -2
  165. package/dist/cjs/af-grid-callout.cjs.entry.js +1 -1
  166. package/dist/cjs/af-grid.cjs.entry.js +44 -0
  167. package/dist/cjs/af-grid.entry.cjs.js.map +1 -0
  168. package/dist/cjs/af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.cjs.js.map +1 -1
  169. package/dist/cjs/af-heading_5.cjs.entry.js +17 -17
  170. package/dist/cjs/af-icon-box.cjs.entry.js +2 -2
  171. package/dist/cjs/af-icon-button.cjs.entry.js +1 -1
  172. package/dist/cjs/af-icon-text.cjs.entry.js +2 -2
  173. package/dist/cjs/af-icon.cjs.entry.js +1 -1
  174. package/dist/cjs/af-illustrated-card.cjs.entry.js +2 -2
  175. package/dist/cjs/af-image.cjs.entry.js +2 -2
  176. package/dist/cjs/af-in-page-banner.cjs.entry.js +2 -2
  177. package/dist/cjs/af-inline.cjs.entry.js +58 -0
  178. package/dist/cjs/af-inline.entry.cjs.js.map +1 -0
  179. package/dist/cjs/af-input.cjs.entry.js +3 -3
  180. package/dist/cjs/af-input.entry.cjs.js.map +1 -1
  181. package/dist/cjs/af-logo-well.cjs.entry.js +2 -2
  182. package/dist/cjs/af-nav-accordion-item.cjs.entry.js +86 -0
  183. package/dist/cjs/af-nav-accordion-item.entry.cjs.js.map +1 -0
  184. package/dist/cjs/af-nav-accordion.cjs.entry.js +82 -0
  185. package/dist/cjs/af-nav-accordion.entry.cjs.js.map +1 -0
  186. package/dist/cjs/af-nav-card.cjs.entry.js +2 -2
  187. package/dist/cjs/af-nav-card.entry.cjs.js.map +1 -1
  188. package/dist/cjs/af-nav-menu-nest.cjs.entry.js +4 -3
  189. package/dist/cjs/af-nav-menu-nest.entry.cjs.js.map +1 -1
  190. package/dist/cjs/af-nav-menu.cjs.entry.js +3 -3
  191. package/dist/cjs/af-nav-menu.entry.cjs.js.map +1 -1
  192. package/dist/cjs/af-number-badge.cjs.entry.js +2 -2
  193. package/dist/cjs/af-progress-line.cjs.entry.js +3 -3
  194. package/dist/cjs/af-radio.cjs.entry.js +15 -6
  195. package/dist/cjs/af-radio.entry.cjs.js.map +1 -1
  196. package/dist/cjs/af-section.cjs.entry.js +4 -4
  197. package/dist/cjs/af-section.entry.cjs.js.map +1 -1
  198. package/dist/cjs/af-show.cjs.entry.js +23 -0
  199. package/dist/cjs/af-show.entry.cjs.js.map +1 -0
  200. package/dist/cjs/af-social-link.cjs.entry.js +2 -2
  201. package/dist/cjs/af-spacer.cjs.entry.js +45 -0
  202. package/dist/cjs/af-spacer.entry.cjs.js.map +1 -0
  203. package/dist/cjs/af-split-section.cjs.entry.js +4 -4
  204. package/dist/cjs/af-split-section.entry.cjs.js.map +1 -1
  205. package/dist/cjs/af-stack.cjs.entry.js +64 -0
  206. package/dist/cjs/af-stack.entry.cjs.js.map +1 -0
  207. package/dist/cjs/af-switch.cjs.entry.js +3 -3
  208. package/dist/cjs/af-switch.entry.cjs.js.map +1 -1
  209. package/dist/cjs/af-tab-bar.cjs.entry.js +2 -2
  210. package/dist/cjs/af-tab.cjs.entry.js +2 -2
  211. package/dist/cjs/af-tag.cjs.entry.js +3 -3
  212. package/dist/cjs/af-testimonial-carousel.cjs.entry.js +2 -2
  213. package/dist/cjs/af-testimonial-stat.cjs.entry.js +2 -2
  214. package/dist/cjs/af-testimonial.cjs.entry.js +3 -3
  215. package/dist/cjs/af-text-image-nest.cjs.entry.js +2 -2
  216. package/dist/cjs/af-text-image.cjs.entry.js +1 -1
  217. package/dist/cjs/af-textarea.cjs.entry.js +3 -3
  218. package/dist/cjs/af-textarea.entry.cjs.js.map +1 -1
  219. package/dist/cjs/af-theme-override.cjs.entry.js +23 -0
  220. package/dist/cjs/af-theme-override.entry.cjs.js.map +1 -0
  221. package/dist/cjs/af-typography-lockup.cjs.entry.js +22 -9
  222. package/dist/cjs/af-typography-lockup.entry.cjs.js.map +1 -1
  223. package/dist/cjs/af-video-container.cjs.entry.js +2 -2
  224. package/dist/cjs/af-visually-hidden.cjs.entry.js +23 -0
  225. package/dist/cjs/af-visually-hidden.entry.cjs.js.map +1 -0
  226. package/dist/cjs/affinda.cjs.js +2 -2
  227. package/dist/cjs/{index-ybEiHT0b.js → index-n-fnurTP.js} +19 -2
  228. package/dist/cjs/index-n-fnurTP.js.map +1 -0
  229. package/dist/cjs/index.cjs.js +1 -1
  230. package/dist/cjs/loader.cjs.js +2 -2
  231. package/dist/collection/collection-manifest.json +14 -2
  232. package/dist/collection/components/af-accordion/af-accordion.css +21 -0
  233. package/dist/collection/components/af-accordion/af-accordion.js +207 -0
  234. package/dist/collection/components/af-accordion/af-accordion.js.map +1 -0
  235. package/dist/collection/components/af-accordion-item/af-accordion-item.css +86 -0
  236. package/dist/collection/components/af-accordion-item/af-accordion-item.js +224 -0
  237. package/dist/collection/components/af-accordion-item/af-accordion-item.js.map +1 -0
  238. package/dist/collection/components/af-button/af-button.js +1 -1
  239. package/dist/collection/components/af-button/af-button.js.map +1 -1
  240. package/dist/collection/components/af-button-group/af-button-group.js +1 -1
  241. package/dist/collection/components/af-card/af-card.css +11 -0
  242. package/dist/collection/components/af-card/af-card.js +1 -1
  243. package/dist/collection/components/af-center/af-center.css +9 -0
  244. package/dist/collection/components/af-center/af-center.js +119 -0
  245. package/dist/collection/components/af-center/af-center.js.map +1 -0
  246. package/dist/collection/components/af-checkbox/af-checkbox.css +31 -18
  247. package/dist/collection/components/af-checkbox/af-checkbox.js +1 -1
  248. package/dist/collection/components/af-client-carousel/af-client-carousel.js +1 -1
  249. package/dist/collection/components/af-contact-item/af-contact-item.js +1 -1
  250. package/dist/collection/components/af-divider/af-divider.css +25 -0
  251. package/dist/collection/components/af-divider/af-divider.js +104 -0
  252. package/dist/collection/components/af-divider/af-divider.js.map +1 -0
  253. package/dist/collection/components/af-feature-accordion/af-feature-accordion.js +2 -2
  254. package/dist/collection/components/af-feature-card/af-feature-card.css +12 -0
  255. package/dist/collection/components/af-feature-grid/af-feature-grid.js +1 -1
  256. package/dist/collection/components/af-fieldset/af-fieldset.css +2 -1
  257. package/dist/collection/components/af-fieldset/af-fieldset.js +1 -1
  258. package/dist/collection/components/af-footer/af-footer.js +1 -1
  259. package/dist/collection/components/af-footer-column/af-footer-column.js +1 -1
  260. package/dist/collection/components/af-footer-link/af-footer-link.js +1 -1
  261. package/dist/collection/components/af-grid/af-grid.css +37 -0
  262. package/dist/collection/components/af-grid/af-grid.js +204 -0
  263. package/dist/collection/components/af-grid/af-grid.js.map +1 -0
  264. package/dist/collection/components/af-heading/af-heading.css +5 -1
  265. package/dist/collection/components/af-heading/af-heading.js +9 -9
  266. package/dist/collection/components/af-heading/af-heading.js.map +1 -1
  267. package/dist/collection/components/af-icon/af-icon.js +1 -1
  268. package/dist/collection/components/af-icon-box/af-icon-box.js +2 -2
  269. package/dist/collection/components/af-icon-text/af-icon-text.js +2 -2
  270. package/dist/collection/components/af-illustrated-card/af-illustrated-card.js +1 -1
  271. package/dist/collection/components/af-image/af-image.js +1 -1
  272. package/dist/collection/components/af-in-page-banner/af-in-page-banner.js +1 -1
  273. package/dist/collection/components/af-inline/af-inline.css +9 -0
  274. package/dist/collection/components/af-inline/af-inline.js +166 -0
  275. package/dist/collection/components/af-inline/af-inline.js.map +1 -0
  276. package/dist/collection/components/af-input/af-input.css +25 -25
  277. package/dist/collection/components/af-input/af-input.js +1 -1
  278. package/dist/collection/components/af-logo/af-logo.css +1 -1
  279. package/dist/collection/components/af-logo/af-logo.js +1 -1
  280. package/dist/collection/components/af-logo-well/af-logo-well.js +1 -1
  281. package/dist/collection/components/af-nav-accordion/af-nav-accordion.css +21 -0
  282. package/dist/collection/components/af-nav-accordion/af-nav-accordion.js +185 -0
  283. package/dist/collection/components/af-nav-accordion/af-nav-accordion.js.map +1 -0
  284. package/dist/collection/components/af-nav-accordion-item/af-nav-accordion-item.css +146 -0
  285. package/dist/collection/components/af-nav-accordion-item/af-nav-accordion-item.js +265 -0
  286. package/dist/collection/components/af-nav-accordion-item/af-nav-accordion-item.js.map +1 -0
  287. package/dist/collection/components/af-nav-card/af-nav-card.js +1 -1
  288. package/dist/collection/components/af-nav-card/af-nav-card.js.map +1 -1
  289. package/dist/collection/components/af-nav-item/af-nav-item.css +21 -15
  290. package/dist/collection/components/af-nav-item/af-nav-item.js +2 -2
  291. package/dist/collection/components/af-nav-item/af-nav-item.js.map +1 -1
  292. package/dist/collection/components/af-nav-menu/af-nav-menu.css +4 -4
  293. package/dist/collection/components/af-nav-menu/af-nav-menu.js +2 -2
  294. package/dist/collection/components/af-nav-menu/af-nav-menu.js.map +1 -1
  295. package/dist/collection/components/af-nav-menu-nest/af-nav-menu-nest.css +5 -5
  296. package/dist/collection/components/af-nav-menu-nest/af-nav-menu-nest.js +3 -2
  297. package/dist/collection/components/af-nav-menu-nest/af-nav-menu-nest.js.map +1 -1
  298. package/dist/collection/components/af-navbar/af-navbar.css +164 -46
  299. package/dist/collection/components/af-navbar/af-navbar.js +36 -2
  300. package/dist/collection/components/af-navbar/af-navbar.js.map +1 -1
  301. package/dist/collection/components/af-number-badge/af-number-badge.js +1 -1
  302. package/dist/collection/components/af-progress-line/af-progress-line.js +2 -2
  303. package/dist/collection/components/af-radio/af-radio.css +35 -18
  304. package/dist/collection/components/af-radio/af-radio.js +17 -7
  305. package/dist/collection/components/af-radio/af-radio.js.map +1 -1
  306. package/dist/collection/components/af-section/af-section.css +139 -0
  307. package/dist/collection/components/af-section/af-section.js +4 -4
  308. package/dist/collection/components/af-section/af-section.js.map +1 -1
  309. package/dist/collection/components/af-show/af-show.css +78 -0
  310. package/dist/collection/components/af-show/af-show.js +88 -0
  311. package/dist/collection/components/af-show/af-show.js.map +1 -0
  312. package/dist/collection/components/af-social-link/af-social-link.js +1 -1
  313. package/dist/collection/components/af-spacer/af-spacer.css +10 -0
  314. package/dist/collection/components/af-spacer/af-spacer.js +120 -0
  315. package/dist/collection/components/af-spacer/af-spacer.js.map +1 -0
  316. package/dist/collection/components/af-split-section/af-split-section.css +4 -0
  317. package/dist/collection/components/af-split-section/af-split-section.js +4 -4
  318. package/dist/collection/components/af-split-section/af-split-section.js.map +1 -1
  319. package/dist/collection/components/af-stack/af-stack.css +9 -0
  320. package/dist/collection/components/af-stack/af-stack.js +197 -0
  321. package/dist/collection/components/af-stack/af-stack.js.map +1 -0
  322. package/dist/collection/components/af-switch/af-switch.css +15 -9
  323. package/dist/collection/components/af-switch/af-switch.js +1 -1
  324. package/dist/collection/components/af-tab/af-tab.js +1 -1
  325. package/dist/collection/components/af-tab-bar/af-tab-bar.js +1 -1
  326. package/dist/collection/components/af-tag/af-tag.js +2 -2
  327. package/dist/collection/components/af-testimonial/af-testimonial.js +2 -2
  328. package/dist/collection/components/af-testimonial-carousel/af-testimonial-carousel.js +1 -1
  329. package/dist/collection/components/af-testimonial-stat/af-testimonial-stat.js +1 -1
  330. package/dist/collection/components/af-text/af-text.css +2 -0
  331. package/dist/collection/components/af-text/af-text.js +8 -11
  332. package/dist/collection/components/af-text/af-text.js.map +1 -1
  333. package/dist/collection/components/af-text-image-nest/af-text-image-nest.js +1 -1
  334. package/dist/collection/components/af-textarea/af-textarea.css +22 -21
  335. package/dist/collection/components/af-textarea/af-textarea.js +1 -1
  336. package/dist/collection/components/af-theme-override/af-theme-override.css +376 -0
  337. package/dist/collection/components/af-theme-override/af-theme-override.js +60 -0
  338. package/dist/collection/components/af-theme-override/af-theme-override.js.map +1 -0
  339. package/dist/collection/components/af-typography-lockup/af-typography-lockup.css +57 -20
  340. package/dist/collection/components/af-typography-lockup/af-typography-lockup.js +104 -14
  341. package/dist/collection/components/af-typography-lockup/af-typography-lockup.js.map +1 -1
  342. package/dist/collection/components/af-video-container/af-video-container.js +1 -1
  343. package/dist/collection/components/af-visually-hidden/af-visually-hidden.css +23 -0
  344. package/dist/collection/components/af-visually-hidden/af-visually-hidden.js +57 -0
  345. package/dist/collection/components/af-visually-hidden/af-visually-hidden.js.map +1 -0
  346. package/dist/components/af-accordion-item.d.ts +11 -0
  347. package/dist/components/af-accordion-item.js +133 -0
  348. package/dist/components/af-accordion-item.js.map +1 -0
  349. package/dist/components/{af-hero-section.d.ts → af-accordion.d.ts} +4 -4
  350. package/dist/components/af-accordion.js +128 -0
  351. package/dist/components/af-accordion.js.map +1 -0
  352. package/dist/components/af-button-group.js +1 -1
  353. package/dist/components/af-card.js +1 -1
  354. package/dist/components/af-center.d.ts +11 -0
  355. package/dist/components/af-center.js +66 -0
  356. package/dist/components/af-center.js.map +1 -0
  357. package/dist/components/af-checkbox.js +1 -1
  358. package/dist/components/af-client-carousel.js +1 -1
  359. package/dist/components/af-contact-item.js +1 -1
  360. package/dist/components/af-divider.d.ts +11 -0
  361. package/dist/components/af-divider.js +66 -0
  362. package/dist/components/af-divider.js.map +1 -0
  363. package/dist/components/af-feature-accordion.js +2 -2
  364. package/dist/components/af-feature-card.js +1 -1
  365. package/dist/components/af-feature-grid.js +2 -2
  366. package/dist/components/af-fieldset.js +1 -1
  367. package/dist/components/af-footer-column.js +1 -1
  368. package/dist/components/af-footer-link.js +1 -1
  369. package/dist/components/af-footer.js +1 -1
  370. package/dist/components/af-grid-callout.js +1 -1
  371. package/dist/components/af-grid.d.ts +11 -0
  372. package/dist/components/af-grid.js +71 -0
  373. package/dist/components/af-grid.js.map +1 -0
  374. package/dist/components/af-heading.js +1 -1
  375. package/dist/components/af-icon-box.js +1 -1
  376. package/dist/components/af-icon-text.js +3 -3
  377. package/dist/components/af-illustrated-card.js +1 -1
  378. package/dist/components/af-image.js +1 -1
  379. package/dist/components/af-in-page-banner.js +1 -1
  380. package/dist/components/af-inline.d.ts +11 -0
  381. package/dist/components/af-inline.js +83 -0
  382. package/dist/components/af-inline.js.map +1 -0
  383. package/dist/components/af-input.js +1 -1
  384. package/dist/components/af-logo-well.js +1 -1
  385. package/dist/components/af-logo.js +1 -1
  386. package/dist/components/af-nav-accordion-item.d.ts +11 -0
  387. package/dist/components/af-nav-accordion-item.js +117 -0
  388. package/dist/components/af-nav-accordion-item.js.map +1 -0
  389. package/dist/components/af-nav-accordion.d.ts +11 -0
  390. package/dist/components/af-nav-accordion.js +106 -0
  391. package/dist/components/af-nav-accordion.js.map +1 -0
  392. package/dist/components/af-nav-card.js +2 -3
  393. package/dist/components/af-nav-card.js.map +1 -1
  394. package/dist/components/af-nav-item.js +1 -1
  395. package/dist/components/af-nav-menu-nest.js +4 -4
  396. package/dist/components/af-nav-menu-nest.js.map +1 -1
  397. package/dist/components/af-nav-menu.js +3 -4
  398. package/dist/components/af-nav-menu.js.map +1 -1
  399. package/dist/components/af-navbar.js +1 -1
  400. package/dist/components/af-number-badge.js +1 -1
  401. package/dist/components/af-progress-line.js +1 -1
  402. package/dist/components/af-radio.js +1 -1
  403. package/dist/components/af-section.js +3 -3
  404. package/dist/components/af-section.js.map +1 -1
  405. package/dist/components/af-show.d.ts +11 -0
  406. package/dist/components/af-show.js +46 -0
  407. package/dist/components/af-show.js.map +1 -0
  408. package/dist/components/af-social-link.js +1 -1
  409. package/dist/components/af-spacer.d.ts +11 -0
  410. package/dist/components/af-spacer.js +69 -0
  411. package/dist/components/af-spacer.js.map +1 -0
  412. package/dist/components/af-split-section.js +3 -3
  413. package/dist/components/af-split-section.js.map +1 -1
  414. package/dist/components/af-stack.d.ts +11 -0
  415. package/dist/components/af-stack.js +90 -0
  416. package/dist/components/af-stack.js.map +1 -0
  417. package/dist/components/af-switch.js +1 -1
  418. package/dist/components/af-tab-bar.js +1 -1
  419. package/dist/components/af-tab.js +1 -1
  420. package/dist/components/af-tag.js +1 -1
  421. package/dist/components/af-testimonial-carousel.js +2 -2
  422. package/dist/components/af-testimonial-stat.js +3 -3
  423. package/dist/components/af-testimonial.js +3 -3
  424. package/dist/components/af-text-image-nest.js +1 -1
  425. package/dist/components/af-text-image.js +1 -1
  426. package/dist/components/af-text.js +1 -1
  427. package/dist/components/af-textarea.js +1 -1
  428. package/dist/components/af-theme-override.d.ts +11 -0
  429. package/dist/components/af-theme-override.js +44 -0
  430. package/dist/components/af-theme-override.js.map +1 -0
  431. package/dist/components/af-typography-lockup.js +1 -1
  432. package/dist/components/af-video-container.js +1 -1
  433. package/dist/components/af-visually-hidden.d.ts +11 -0
  434. package/dist/components/af-visually-hidden.js +45 -0
  435. package/dist/components/af-visually-hidden.js.map +1 -0
  436. package/dist/components/index.js +18 -18
  437. package/dist/components/p-B7bjlUCu.js +94 -0
  438. package/dist/components/p-B7bjlUCu.js.map +1 -0
  439. package/dist/components/p-BBVslKpK.js +59 -0
  440. package/dist/components/p-BBVslKpK.js.map +1 -0
  441. package/dist/components/{p-DZ-qivXD.js → p-BUoRUEpQ.js} +3 -3
  442. package/dist/components/{p-DZ-qivXD.js.map → p-BUoRUEpQ.js.map} +1 -1
  443. package/dist/components/p-BXcRGkhD.js +94 -0
  444. package/dist/components/p-BXcRGkhD.js.map +1 -0
  445. package/dist/components/{p-Cqp0DdgH.js → p-Bi5ytUXg.js} +4 -4
  446. package/dist/components/{p-Cqp0DdgH.js.map → p-Bi5ytUXg.js.map} +1 -1
  447. package/dist/components/{p-xDRMXxWJ.js → p-BvIMp8pz.js} +3 -3
  448. package/dist/components/{p-xDRMXxWJ.js.map → p-BvIMp8pz.js.map} +1 -1
  449. package/dist/components/{p-Dvi1lz3x.js → p-C8_mFdv5.js} +4 -4
  450. package/dist/components/{p-Dvi1lz3x.js.map → p-C8_mFdv5.js.map} +1 -1
  451. package/dist/components/{p-ByHIHg3l.js → p-CAYG3IzP.js} +3 -3
  452. package/dist/components/{p-ByHIHg3l.js.map → p-CAYG3IzP.js.map} +1 -1
  453. package/dist/components/{p-D99aXp3U.js → p-CLmCtN_R.js} +4 -4
  454. package/dist/components/p-CLmCtN_R.js.map +1 -0
  455. package/dist/components/p-CUSad8vm.js +74 -0
  456. package/dist/components/p-CUSad8vm.js.map +1 -0
  457. package/dist/components/p-C_B4CNrh.js +94 -0
  458. package/dist/components/p-C_B4CNrh.js.map +1 -0
  459. package/dist/components/p-ChgW4Hec.js +100 -0
  460. package/dist/components/p-ChgW4Hec.js.map +1 -0
  461. package/dist/components/{p-CCAq3Zj6.js → p-CnNV1GZE.js} +5 -5
  462. package/dist/components/{p-CCAq3Zj6.js.map → p-CnNV1GZE.js.map} +1 -1
  463. package/dist/components/p-CxngDK-N.js.map +1 -1
  464. package/dist/components/{p-wwnR-hlX.js → p-D66k2SSB.js} +4 -4
  465. package/dist/components/{p-wwnR-hlX.js.map → p-D66k2SSB.js.map} +1 -1
  466. package/dist/components/p-DBnL9UHx.js.map +1 -1
  467. package/dist/components/{p-DOkvrcIE.js → p-DReSTue0.js} +6 -8
  468. package/dist/components/p-DReSTue0.js.map +1 -0
  469. package/dist/components/p-DUQu3N38.js +70 -0
  470. package/dist/components/p-DUQu3N38.js.map +1 -0
  471. package/dist/components/{p-DhdRcSve.js → p-DZ6UMG8G.js} +3 -3
  472. package/dist/components/{p-DhdRcSve.js.map → p-DZ6UMG8G.js.map} +1 -1
  473. package/dist/components/p-Dd7Lt2QL.js +81 -0
  474. package/dist/components/p-Dd7Lt2QL.js.map +1 -0
  475. package/dist/components/p-DkvJiyn0.js +73 -0
  476. package/dist/components/p-DkvJiyn0.js.map +1 -0
  477. package/dist/components/{p-C0f6y_zg.js → p-Dt2AsNUz.js} +5 -5
  478. package/dist/components/p-Dt2AsNUz.js.map +1 -0
  479. package/dist/components/p-Dvo_cxk-.js +141 -0
  480. package/dist/components/p-Dvo_cxk-.js.map +1 -0
  481. package/dist/components/{p-CZyCImor.js → p-Dwhi37rN.js} +4 -4
  482. package/dist/components/p-Dwhi37rN.js.map +1 -0
  483. package/dist/components/p-WmKa3rDn.js +94 -0
  484. package/dist/components/p-WmKa3rDn.js.map +1 -0
  485. package/dist/components/{p-l95vl6T1.js → p-Ws-qvw9w.js} +3 -3
  486. package/dist/components/{p-l95vl6T1.js.map → p-Ws-qvw9w.js.map} +1 -1
  487. package/dist/components/p-hOnulRmz.js +84 -0
  488. package/dist/components/p-hOnulRmz.js.map +1 -0
  489. package/dist/components/p-nwZ2iAi9.js +100 -0
  490. package/dist/components/p-nwZ2iAi9.js.map +1 -0
  491. package/dist/components/p-pDs2K2nD.js +100 -0
  492. package/dist/components/p-pDs2K2nD.js.map +1 -0
  493. package/dist/components/{p-BRsO61_R.js → p-zDoPXonz.js} +4 -4
  494. package/dist/components/p-zDoPXonz.js.map +1 -0
  495. package/dist/esm/af-accordion-item.entry.js +103 -0
  496. package/dist/esm/af-accordion-item.entry.js.map +1 -0
  497. package/dist/esm/af-accordion.entry.js +100 -0
  498. package/dist/esm/af-accordion.entry.js.map +1 -0
  499. package/dist/esm/af-aspect-ratio.entry.js +1 -1
  500. package/dist/esm/af-button-group.entry.js +2 -2
  501. package/dist/esm/af-button.entry.js +1 -1
  502. package/dist/esm/af-button.entry.js.map +1 -1
  503. package/dist/esm/af-card.entry.js +3 -3
  504. package/dist/esm/af-card.entry.js.map +1 -1
  505. package/dist/esm/af-center.entry.js +40 -0
  506. package/dist/esm/af-center.entry.js.map +1 -0
  507. package/dist/esm/af-checkbox.entry.js +3 -3
  508. package/dist/esm/af-checkbox.entry.js.map +1 -1
  509. package/dist/esm/af-client-carousel.entry.js +2 -2
  510. package/dist/esm/af-color-swatch.entry.js +1 -1
  511. package/dist/esm/af-contact-item.entry.js +2 -2
  512. package/dist/esm/af-container.entry.js +1 -1
  513. package/dist/esm/af-divider.entry.js +41 -0
  514. package/dist/esm/af-divider.entry.js.map +1 -0
  515. package/dist/esm/af-feature-accordion.entry.js +3 -3
  516. package/dist/esm/af-feature-card.entry.js +2 -2
  517. package/dist/esm/af-feature-card.entry.js.map +1 -1
  518. package/dist/esm/af-feature-grid.entry.js +2 -2
  519. package/dist/esm/af-fieldset.entry.js +3 -3
  520. package/dist/esm/af-fieldset.entry.js.map +1 -1
  521. package/dist/esm/af-footer-column.entry.js +2 -2
  522. package/dist/esm/af-footer-link.entry.js +2 -2
  523. package/dist/esm/af-footer.entry.js +2 -2
  524. package/dist/esm/af-grid-callout.entry.js +1 -1
  525. package/dist/esm/af-grid.entry.js +42 -0
  526. package/dist/esm/af-grid.entry.js.map +1 -0
  527. package/dist/esm/af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.js.map +1 -1
  528. package/dist/esm/af-heading_5.entry.js +17 -17
  529. package/dist/esm/af-icon-box.entry.js +2 -2
  530. package/dist/esm/af-icon-button.entry.js +1 -1
  531. package/dist/esm/af-icon-text.entry.js +2 -2
  532. package/dist/esm/af-icon.entry.js +1 -1
  533. package/dist/esm/af-illustrated-card.entry.js +2 -2
  534. package/dist/esm/af-image.entry.js +2 -2
  535. package/dist/esm/af-in-page-banner.entry.js +2 -2
  536. package/dist/esm/af-inline.entry.js +56 -0
  537. package/dist/esm/af-inline.entry.js.map +1 -0
  538. package/dist/esm/af-input.entry.js +3 -3
  539. package/dist/esm/af-input.entry.js.map +1 -1
  540. package/dist/esm/af-logo-well.entry.js +2 -2
  541. package/dist/esm/af-nav-accordion-item.entry.js +84 -0
  542. package/dist/esm/af-nav-accordion-item.entry.js.map +1 -0
  543. package/dist/esm/af-nav-accordion.entry.js +80 -0
  544. package/dist/esm/af-nav-accordion.entry.js.map +1 -0
  545. package/dist/esm/af-nav-card.entry.js +2 -2
  546. package/dist/esm/af-nav-card.entry.js.map +1 -1
  547. package/dist/esm/af-nav-menu-nest.entry.js +4 -3
  548. package/dist/esm/af-nav-menu-nest.entry.js.map +1 -1
  549. package/dist/esm/af-nav-menu.entry.js +3 -3
  550. package/dist/esm/af-nav-menu.entry.js.map +1 -1
  551. package/dist/esm/af-number-badge.entry.js +2 -2
  552. package/dist/esm/af-progress-line.entry.js +3 -3
  553. package/dist/esm/af-radio.entry.js +15 -6
  554. package/dist/esm/af-radio.entry.js.map +1 -1
  555. package/dist/esm/af-section.entry.js +4 -4
  556. package/dist/esm/af-section.entry.js.map +1 -1
  557. package/dist/esm/af-show.entry.js +21 -0
  558. package/dist/esm/af-show.entry.js.map +1 -0
  559. package/dist/esm/af-social-link.entry.js +2 -2
  560. package/dist/esm/af-spacer.entry.js +43 -0
  561. package/dist/esm/af-spacer.entry.js.map +1 -0
  562. package/dist/esm/af-split-section.entry.js +4 -4
  563. package/dist/esm/af-split-section.entry.js.map +1 -1
  564. package/dist/esm/af-stack.entry.js +62 -0
  565. package/dist/esm/af-stack.entry.js.map +1 -0
  566. package/dist/esm/af-switch.entry.js +3 -3
  567. package/dist/esm/af-switch.entry.js.map +1 -1
  568. package/dist/esm/af-tab-bar.entry.js +2 -2
  569. package/dist/esm/af-tab.entry.js +2 -2
  570. package/dist/esm/af-tag.entry.js +3 -3
  571. package/dist/esm/af-testimonial-carousel.entry.js +2 -2
  572. package/dist/esm/af-testimonial-stat.entry.js +2 -2
  573. package/dist/esm/af-testimonial.entry.js +3 -3
  574. package/dist/esm/af-text-image-nest.entry.js +2 -2
  575. package/dist/esm/af-text-image.entry.js +1 -1
  576. package/dist/esm/af-textarea.entry.js +3 -3
  577. package/dist/esm/af-textarea.entry.js.map +1 -1
  578. package/dist/esm/af-theme-override.entry.js +21 -0
  579. package/dist/esm/af-theme-override.entry.js.map +1 -0
  580. package/dist/esm/af-typography-lockup.entry.js +22 -9
  581. package/dist/esm/af-typography-lockup.entry.js.map +1 -1
  582. package/dist/esm/af-video-container.entry.js +2 -2
  583. package/dist/esm/af-visually-hidden.entry.js +21 -0
  584. package/dist/esm/af-visually-hidden.entry.js.map +1 -0
  585. package/dist/esm/affinda.js +3 -3
  586. package/dist/esm/{index-BmU_CFQ4.js → index-B0LVveHp.js} +19 -2
  587. package/dist/esm/index-B0LVveHp.js.map +1 -0
  588. package/dist/esm/index.js +1 -1
  589. package/dist/esm/loader.js +3 -3
  590. package/dist/types/components/af-accordion/af-accordion.d.ts +55 -0
  591. package/dist/types/components/af-accordion-item/af-accordion-item.d.ts +44 -0
  592. package/dist/types/components/af-button/af-button.d.ts +1 -1
  593. package/dist/types/components/af-center/af-center.d.ts +28 -0
  594. package/dist/types/components/af-divider/af-divider.d.ts +20 -0
  595. package/dist/types/components/af-grid/af-grid.d.ts +38 -0
  596. package/dist/types/components/af-heading/af-heading.d.ts +3 -3
  597. package/dist/types/components/af-inline/af-inline.d.ts +30 -0
  598. package/dist/types/components/af-nav-accordion/af-nav-accordion.d.ts +45 -0
  599. package/dist/types/components/af-nav-accordion-item/af-nav-accordion-item.d.ts +57 -0
  600. package/dist/types/components/af-navbar/af-navbar.d.ts +14 -0
  601. package/dist/types/components/af-radio/af-radio.d.ts +4 -1
  602. package/dist/types/components/af-section/af-section.d.ts +1 -1
  603. package/dist/types/components/af-show/af-show.d.ts +27 -0
  604. package/dist/types/components/af-spacer/af-spacer.d.ts +29 -0
  605. package/dist/types/components/af-split-section/af-split-section.d.ts +1 -1
  606. package/dist/types/components/af-stack/af-stack.d.ts +37 -0
  607. package/dist/types/components/af-text/af-text.d.ts +3 -3
  608. package/dist/types/components/af-theme-override/af-theme-override.d.ts +18 -0
  609. package/dist/types/components/af-typography-lockup/af-typography-lockup.d.ts +19 -4
  610. package/dist/types/components/af-visually-hidden/af-visually-hidden.d.ts +15 -0
  611. package/dist/types/components.d.ts +1006 -138
  612. package/package.json +6 -6
  613. package/dist/affinda/af-hero-section.entry.esm.js.map +0 -1
  614. package/dist/affinda/p-231ba1d0.entry.js +0 -2
  615. package/dist/affinda/p-3f691578.entry.js +0 -2
  616. package/dist/affinda/p-3f691578.entry.js.map +0 -1
  617. package/dist/affinda/p-53ae16fe.entry.js +0 -2
  618. package/dist/affinda/p-53b5149d.entry.js +0 -2
  619. package/dist/affinda/p-53b5149d.entry.js.map +0 -1
  620. package/dist/affinda/p-57713942.entry.js +0 -2
  621. package/dist/affinda/p-57713942.entry.js.map +0 -1
  622. package/dist/affinda/p-697bf0b7.entry.js +0 -2
  623. package/dist/affinda/p-6b2d0ff4.entry.js +0 -2
  624. package/dist/affinda/p-72f02343.entry.js +0 -2
  625. package/dist/affinda/p-7f20fbe0.entry.js +0 -2
  626. package/dist/affinda/p-864778d0.entry.js +0 -2
  627. package/dist/affinda/p-98901734.entry.js +0 -2
  628. package/dist/affinda/p-9f470d8b.entry.js +0 -2
  629. package/dist/affinda/p-9f470d8b.entry.js.map +0 -1
  630. package/dist/affinda/p-BmU_CFQ4.js.map +0 -1
  631. package/dist/affinda/p-aaa28806.entry.js +0 -2
  632. package/dist/affinda/p-aaa28806.entry.js.map +0 -1
  633. package/dist/affinda/p-be049760.entry.js +0 -2
  634. package/dist/affinda/p-c0ee2420.entry.js +0 -2
  635. package/dist/affinda/p-c298b370.entry.js +0 -2
  636. package/dist/affinda/p-c3e31251.entry.js +0 -2
  637. package/dist/affinda/p-ce3356f1.entry.js +0 -2
  638. package/dist/affinda/p-df148383.entry.js +0 -2
  639. package/dist/affinda/p-df148383.entry.js.map +0 -1
  640. package/dist/affinda/p-ea06c83b.entry.js +0 -2
  641. package/dist/cjs/af-hero-section.cjs.entry.js +0 -30
  642. package/dist/cjs/af-hero-section.entry.cjs.js.map +0 -1
  643. package/dist/cjs/index-ybEiHT0b.js.map +0 -1
  644. package/dist/collection/components/af-hero-section/af-hero-section.css +0 -175
  645. package/dist/collection/components/af-hero-section/af-hero-section.js +0 -186
  646. package/dist/collection/components/af-hero-section/af-hero-section.js.map +0 -1
  647. package/dist/components/af-hero-section.js +0 -69
  648. package/dist/components/af-hero-section.js.map +0 -1
  649. package/dist/components/p-BMp8QbY-.js +0 -68
  650. package/dist/components/p-BMp8QbY-.js.map +0 -1
  651. package/dist/components/p-BRN73McC.js +0 -59
  652. package/dist/components/p-BRN73McC.js.map +0 -1
  653. package/dist/components/p-BRsO61_R.js.map +0 -1
  654. package/dist/components/p-Bh4YP9vE.js +0 -74
  655. package/dist/components/p-Bh4YP9vE.js.map +0 -1
  656. package/dist/components/p-Br0VERLB.js +0 -81
  657. package/dist/components/p-Br0VERLB.js.map +0 -1
  658. package/dist/components/p-C0f6y_zg.js.map +0 -1
  659. package/dist/components/p-CZyCImor.js.map +0 -1
  660. package/dist/components/p-C_M8AOaj.js +0 -65
  661. package/dist/components/p-C_M8AOaj.js.map +0 -1
  662. package/dist/components/p-D99aXp3U.js.map +0 -1
  663. package/dist/components/p-DOkvrcIE.js.map +0 -1
  664. package/dist/components/p-DW5DrJlQ.js +0 -70
  665. package/dist/components/p-DW5DrJlQ.js.map +0 -1
  666. package/dist/components/p-DzkSL2bi.js +0 -141
  667. package/dist/components/p-DzkSL2bi.js.map +0 -1
  668. package/dist/components/p-_bQXTXUb.js +0 -98
  669. package/dist/components/p-_bQXTXUb.js.map +0 -1
  670. package/dist/esm/af-hero-section.entry.js +0 -28
  671. package/dist/esm/af-hero-section.entry.js.map +0 -1
  672. package/dist/esm/index-BmU_CFQ4.js.map +0 -1
  673. package/dist/types/components/af-hero-section/af-hero-section.d.ts +0 -27
  674. /package/dist/affinda/{p-acbbe39a.entry.js.map → p-01993cc8.entry.js.map} +0 -0
  675. /package/dist/affinda/{p-a4e4eb4d.entry.js.map → p-04de9a0a.entry.js.map} +0 -0
  676. /package/dist/affinda/{p-a6365e94.entry.js.map → p-080cf84f.entry.js.map} +0 -0
  677. /package/dist/affinda/{p-b3b0ed0c.entry.js.map → p-0b5bc045.entry.js.map} +0 -0
  678. /package/dist/affinda/{p-2b4dc22c.entry.js.map → p-16f808d5.entry.js.map} +0 -0
  679. /package/dist/affinda/{p-52ab3bf0.entry.js.map → p-19eb7cb9.entry.js.map} +0 -0
  680. /package/dist/affinda/{p-1d65fd18.entry.js.map → p-2e750d43.entry.js.map} +0 -0
  681. /package/dist/affinda/{p-861f4f57.entry.js.map → p-331f9627.entry.js.map} +0 -0
  682. /package/dist/affinda/{p-77bf8a81.entry.js.map → p-3d2fb635.entry.js.map} +0 -0
  683. /package/dist/affinda/{p-e5af21c2.entry.js.map → p-3e16bb11.entry.js.map} +0 -0
  684. /package/dist/affinda/{p-f45b0060.entry.js.map → p-63314e14.entry.js.map} +0 -0
  685. /package/dist/affinda/{p-45e1923c.entry.js.map → p-68f1f661.entry.js.map} +0 -0
  686. /package/dist/affinda/{p-b17735c9.entry.js.map → p-6af1634a.entry.js.map} +0 -0
  687. /package/dist/affinda/{p-8ea22b5d.entry.js.map → p-7792cd53.entry.js.map} +0 -0
  688. /package/dist/affinda/{p-85a78bcf.entry.js.map → p-8f24dfe3.entry.js.map} +0 -0
  689. /package/dist/affinda/{p-44b25840.entry.js.map → p-920e6d30.entry.js.map} +0 -0
  690. /package/dist/affinda/{p-10801ee1.entry.js.map → p-96df0106.entry.js.map} +0 -0
  691. /package/dist/affinda/{p-a36abb83.entry.js.map → p-9e21b6c1.entry.js.map} +0 -0
  692. /package/dist/affinda/{p-c11088fa.entry.js.map → p-a2c71cad.entry.js.map} +0 -0
  693. /package/dist/affinda/{p-96eac3af.entry.js.map → p-adacb8c4.entry.js.map} +0 -0
  694. /package/dist/affinda/{p-e5d9913c.entry.js.map → p-b10103f4.entry.js.map} +0 -0
  695. /package/dist/affinda/{p-1d9e532f.entry.js.map → p-bd7170d7.entry.js.map} +0 -0
  696. /package/dist/affinda/{p-0cd160a4.entry.js.map → p-cc4e73dc.entry.js.map} +0 -0
  697. /package/dist/affinda/{p-3d3c9f62.entry.js.map → p-d51c4b1b.entry.js.map} +0 -0
  698. /package/dist/affinda/{p-53ae16fe.entry.js.map → p-d6e55455.entry.js.map} +0 -0
  699. /package/dist/affinda/{p-81571029.entry.js.map → p-d90366f6.entry.js.map} +0 -0
  700. /package/dist/affinda/{p-31d4c1a4.entry.js.map → p-db9249e4.entry.js.map} +0 -0
  701. /package/dist/affinda/{p-5bbf2c8c.entry.js.map → p-e305c2b7.entry.js.map} +0 -0
  702. /package/dist/affinda/{p-71144002.entry.js.map → p-e7d8d909.entry.js.map} +0 -0
  703. /package/dist/affinda/{p-425253ee.entry.js.map → p-f7a13cd3.entry.js.map} +0 -0
  704. /package/dist/affinda/{p-72f02343.entry.js.map → p-fd772813.entry.js.map} +0 -0
  705. /package/dist/affinda/{p-6b2d0ff4.entry.js.map → p-fefe9597.entry.js.map} +0 -0
@@ -0,0 +1,58 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-n-fnurTP.js');
4
+
5
+ const afInlineCss = ":host{display:inline-flex;box-sizing:border-box}:host([hidden]){display:none}";
6
+
7
+ const AfInline = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ /**
11
+ * Gap between items using space tokens (1-8).
12
+ * Maps to --space-1 through --space-8 (4px to 32px).
13
+ */
14
+ this.gap = '2';
15
+ /**
16
+ * Align items on the cross axis.
17
+ */
18
+ this.align = 'center';
19
+ /**
20
+ * Justify content on the main axis.
21
+ */
22
+ this.justify = 'start';
23
+ /**
24
+ * Whether items should wrap to the next line when they overflow.
25
+ */
26
+ this.wrap = true;
27
+ }
28
+ render() {
29
+ const alignMap = {
30
+ start: 'flex-start',
31
+ center: 'center',
32
+ end: 'flex-end',
33
+ stretch: 'stretch',
34
+ baseline: 'baseline',
35
+ };
36
+ const justifyMap = {
37
+ start: 'flex-start',
38
+ center: 'center',
39
+ end: 'flex-end',
40
+ between: 'space-between',
41
+ around: 'space-around',
42
+ evenly: 'space-evenly',
43
+ };
44
+ const style = {
45
+ display: 'inline-flex',
46
+ flexDirection: 'row',
47
+ gap: `var(--space-${this.gap})`,
48
+ alignItems: alignMap[this.align],
49
+ justifyContent: justifyMap[this.justify],
50
+ flexWrap: this.wrap ? 'wrap' : 'nowrap',
51
+ };
52
+ return (index.h(index.Host, { key: '947a3a94d5b8f5d1a60132d690523ae8e842b542', style: style }, index.h("slot", { key: '7b60eb9cf33eeaf6a0002fc70ad664adaecaad8e' })));
53
+ }
54
+ };
55
+ AfInline.style = afInlineCss;
56
+
57
+ exports.af_inline = AfInline;
58
+ //# sourceMappingURL=af-inline.entry.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"af-inline.entry.cjs.js","sources":["src/components/af-inline/af-inline.css?tag=af-inline&encapsulation=shadow","src/components/af-inline/af-inline.tsx"],"sourcesContent":[":host {\n display: inline-flex;\n box-sizing: border-box;\n}\n\n:host([hidden]) {\n display: none;\n}\n\n","import { Component, h, Host, Prop } from '@stencil/core';\n\ntype Gap = '1' | '2' | '3' | '4' | '5' | '6' | '8';\ntype Align = 'start' | 'center' | 'end' | 'stretch' | 'baseline';\ntype Justify = 'start' | 'center' | 'end' | 'between' | 'around' | 'evenly';\n\n/**\n * Inline layout component for horizontal inline-flex layouts with gap and optional wrapping.\n * Ideal for button groups, tags, pills, and other inline elements.\n *\n * @slot - Content to layout inline\n */\n@Component({\n tag: 'af-inline',\n styleUrl: 'af-inline.css',\n shadow: true,\n})\nexport class AfInline {\n /**\n * Gap between items using space tokens (1-8).\n * Maps to --space-1 through --space-8 (4px to 32px).\n */\n @Prop() gap: Gap = '2';\n\n /**\n * Align items on the cross axis.\n */\n @Prop() align: Align = 'center';\n\n /**\n * Justify content on the main axis.\n */\n @Prop() justify: Justify = 'start';\n\n /**\n * Whether items should wrap to the next line when they overflow.\n */\n @Prop() wrap: boolean = true;\n\n render() {\n const alignMap: Record<Align, string> = {\n start: 'flex-start',\n center: 'center',\n end: 'flex-end',\n stretch: 'stretch',\n baseline: 'baseline',\n };\n\n const justifyMap: Record<Justify, string> = {\n start: 'flex-start',\n center: 'center',\n end: 'flex-end',\n between: 'space-between',\n around: 'space-around',\n evenly: 'space-evenly',\n };\n\n const style = {\n display: 'inline-flex',\n flexDirection: 'row',\n gap: `var(--space-${this.gap})`,\n alignItems: alignMap[this.align],\n justifyContent: justifyMap[this.justify],\n flexWrap: this.wrap ? 'wrap' : 'nowrap',\n } as Record<string, string>;\n\n return (\n <Host style={style}>\n <slot></slot>\n </Host>\n );\n }\n}\n\n"],"names":["h","Host"],"mappings":";;;;AAAA,MAAM,WAAW,GAAG,+EAA+E;;MCiBtF,QAAQ,GAAA,MAAA;AALrB,IAAA,WAAA,CAAA,OAAA,EAAA;;AAME;;;AAGG;AACK,QAAA,IAAG,CAAA,GAAA,GAAQ,GAAG;AAEtB;;AAEG;AACK,QAAA,IAAK,CAAA,KAAA,GAAU,QAAQ;AAE/B;;AAEG;AACK,QAAA,IAAO,CAAA,OAAA,GAAY,OAAO;AAElC;;AAEG;AACK,QAAA,IAAI,CAAA,IAAA,GAAY,IAAI;AAmC7B;IAjCC,MAAM,GAAA;AACJ,QAAA,MAAM,QAAQ,GAA0B;AACtC,YAAA,KAAK,EAAE,YAAY;AACnB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,GAAG,EAAE,UAAU;AACf,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,QAAQ,EAAE,UAAU;SACrB;AAED,QAAA,MAAM,UAAU,GAA4B;AAC1C,YAAA,KAAK,EAAE,YAAY;AACnB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,GAAG,EAAE,UAAU;AACf,YAAA,OAAO,EAAE,eAAe;AACxB,YAAA,MAAM,EAAE,cAAc;AACtB,YAAA,MAAM,EAAE,cAAc;SACvB;AAED,QAAA,MAAM,KAAK,GAAG;AACZ,YAAA,OAAO,EAAE,aAAa;AACtB,YAAA,aAAa,EAAE,KAAK;AACpB,YAAA,GAAG,EAAE,CAAA,YAAA,EAAe,IAAI,CAAC,GAAG,CAAG,CAAA,CAAA;AAC/B,YAAA,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;AAChC,YAAA,cAAc,EAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;YACxC,QAAQ,EAAE,IAAI,CAAC,IAAI,GAAG,MAAM,GAAG,QAAQ;SACd;QAE3B,QACEA,OAAC,CAAAC,UAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,KAAK,EAAA,EAChBD,OAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACR;;;;;;;"}
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-ybEiHT0b.js');
3
+ var index = require('./index-n-fnurTP.js');
4
4
 
5
- const afInputCss = ":host{display:block;width:100%}.input-wrapper{display:flex;flex-direction:column;gap:var(--sds-size-space-200, 8px);width:100%}.label-row{display:flex;align-items:center;gap:12px}.label{flex:1;font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:var(--font-weight-book, 500);font-size:16px;line-height:24px;color:var(--forms-fields-label, var(--colour-brand-inkwell, #14343b));cursor:default}.required{color:var(--forms-fields-error, #be292a);margin-left:2px}.info-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:none;cursor:pointer;color:var(--forms-fields-label, var(--colour-brand-inkwell, #14343b));flex-shrink:0}.info-icon svg{width:20px;height:20px}.info-icon:hover{opacity:0.7}.info-icon:focus-visible{outline:2px solid var(--buttons-secondary-stroke, #14343b);outline-offset:2px;border-radius:4px}.description{font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:var(--font-weight-regular, 400);font-size:16px;line-height:24px;color:var(--forms-fields-description, var(--colour-inkwell-400, #2b484f));margin:0}.input-container{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--forms-fields-bg-default, #ffffff);border:1px solid var(--forms-fields-stroke-default, #d0d6d8);border-radius:var(--radii-input, 8px);transition:all 0.15s ease;min-height:48px;box-sizing:border-box}.input-container.hovered{background:var(--forms-fields-bg-hover, #f3f5f5)}.input-container.focused{background:var(--forms-fields-bg-default, #ffffff);border-color:var(--forms-fields-stroke-active, var(--colour-brand-inkwell, #14343b));box-shadow:0 0 0 4px var(--background-base, #ffffff), \n 0 0 0 5px var(--buttons-secondary-stroke, #14343b)}.input-container.error{border-color:var(--forms-fields-stroke-error, #be292a)}.input-container.disabled{background:var(--forms-fields-bg-disabled, #e8ebeb);border-color:var(--forms-fields-stroke-default, #d0d6d8);cursor:not-allowed}.search-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;color:var(--forms-fields-label, var(--colour-brand-inkwell, #14343b))}.search-icon svg{width:20px;height:20px}.disabled .search-icon{opacity:0.5}.input{flex:1;min-width:0;padding:0;border:none;background:transparent;font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:var(--font-weight-regular, 400);font-size:16px;line-height:24px;color:var(--forms-fields-input, var(--colour-brand-inkwell, #14343b));outline:none}.input::placeholder{color:var(--forms-fields-placeholder, #60767b);opacity:1}.input:disabled{cursor:not-allowed;color:var(--forms-fields-placeholder, #60767b)}.input:disabled::placeholder{color:var(--forms-fields-placeholder, #60767b)}.input[type=\"search\"]::-webkit-search-decoration,.input[type=\"search\"]::-webkit-search-cancel-button,.input[type=\"search\"]::-webkit-search-results-button,.input[type=\"search\"]::-webkit-search-results-decoration{display:none}.input[type=\"number\"]::-webkit-inner-spin-button,.input[type=\"number\"]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input[type=\"number\"]{-moz-appearance:textfield}.clear-button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:none;cursor:pointer;color:var(--forms-fields-label, var(--colour-brand-inkwell, #14343b));flex-shrink:0;opacity:0.6;transition:opacity 0.15s ease}.clear-button svg{width:16px;height:16px}.clear-button:hover{opacity:1}.clear-button:focus-visible{outline:2px solid var(--buttons-secondary-stroke, #14343b);outline-offset:2px;border-radius:4px}.error-row{display:flex;align-items:center;gap:12px}.error-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;color:var(--forms-fields-error, #be292a)}.error-icon svg{width:20px;height:20px}.error-text{flex:1;font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:var(--font-weight-regular, 400);font-size:16px;line-height:24px;color:var(--forms-fields-error, #be292a)}";
5
+ const afInputCss = ":host{display:block;width:100%}.input-wrapper{display:flex;flex-direction:column;gap:var(--sds-size-space-200, 8px);width:100%}.label-row{display:flex;align-items:center;gap:12px}.label{flex:1;font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:var(--font-weight-book, 500);font-size:16px;line-height:24px;color:var(--af-input-label, var(--af-typography-body-dark, #14343b));cursor:default}.required{color:var(--af-input-error, var(--colour-error, #be292a));margin-left:2px}.info-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:none;cursor:pointer;color:var(--af-input-icon, var(--af-background-icon-default, #14343b));flex-shrink:0}.info-icon svg{width:20px;height:20px}.info-icon:hover{opacity:0.7}.info-icon:focus-visible{outline:2px solid var(--af-input-focus-ring, var(--af-typography-body-dark, #14343b));outline-offset:2px;border-radius:4px}.description{font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:var(--font-weight-regular, 400);font-size:16px;line-height:24px;color:var(--af-input-description, var(--af-typography-body-default, #2b484f));margin:0}.input-container{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--af-input-bg, #ffffff);border:1px solid var(--af-input-border, var(--af-background-border-default, #d1ddda));border-radius:var(--radii-input, 8px);transition:all 0.15s ease;min-height:48px;box-sizing:border-box}.input-container.hovered{background:var(--af-input-bg-hover, var(--af-background-base-hover, #f4f7f6));border-color:var(--af-input-border-hover, var(--af-background-border-heavy, #c6d5d1))}.input-container.focused{background:var(--af-input-bg, #ffffff);border-color:var(--af-input-border-active, var(--af-typography-body-dark, #14343b));box-shadow:0 0 0 4px var(--af-background-base, #ffffff), \n 0 0 0 5px var(--af-input-focus-ring, var(--af-typography-body-dark, #14343b))}.input-container.error{border-color:var(--af-input-border-error, var(--colour-error, #be292a))}.input-container.disabled{background:var(--af-input-bg-disabled, var(--af-background-level-1, #e8eeed));border-color:var(--af-input-border, var(--af-background-border-default, #d1ddda));cursor:not-allowed}.search-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;color:var(--af-input-icon, var(--af-background-icon-default, #14343b))}.search-icon svg{width:20px;height:20px}.disabled .search-icon{opacity:0.5}.input{flex:1;min-width:0;padding:0;border:none;background:transparent;font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:var(--font-weight-regular, 400);font-size:16px;line-height:24px;color:var(--af-input-text, var(--af-typography-body-dark, #14343b));outline:none}.input::placeholder{color:var(--af-input-placeholder, var(--af-typography-body-subtle, #60767b));opacity:1}.input:disabled{cursor:not-allowed;color:var(--af-input-placeholder, var(--af-typography-body-subtle, #60767b))}.input:disabled::placeholder{color:var(--af-input-placeholder, var(--af-typography-body-subtle, #60767b))}.input[type=\"search\"]::-webkit-search-decoration,.input[type=\"search\"]::-webkit-search-cancel-button,.input[type=\"search\"]::-webkit-search-results-button,.input[type=\"search\"]::-webkit-search-results-decoration{display:none}.input[type=\"number\"]::-webkit-inner-spin-button,.input[type=\"number\"]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input[type=\"number\"]{-moz-appearance:textfield}.clear-button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:none;cursor:pointer;color:var(--af-input-icon, var(--af-background-icon-default, #14343b));flex-shrink:0;opacity:0.6;transition:opacity 0.15s ease}.clear-button svg{width:16px;height:16px}.clear-button:hover{opacity:1}.clear-button:focus-visible{outline:2px solid var(--af-input-focus-ring, var(--af-typography-body-dark, #14343b));outline-offset:2px;border-radius:4px}.error-row{display:flex;align-items:center;gap:12px}.error-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;color:var(--af-input-error, var(--colour-error, #be292a))}.error-icon svg{width:20px;height:20px}.error-text{flex:1;font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:var(--font-weight-regular, 400);font-size:16px;line-height:24px;color:var(--af-input-error, var(--colour-error, #be292a))}";
6
6
 
7
7
  const AfInput = class {
8
8
  constructor(hostRef) {
@@ -95,7 +95,7 @@ const AfInput = class {
95
95
  'focused': this.isFocused,
96
96
  'hovered': this.isHovered && !this.disabled && !this.isFocused
97
97
  };
98
- return (index.h(index.Host, { key: '5bf8980e12ad5fc3b8b84df3acc749bddf61042d' }, index.h("div", { key: 'd0266eca85871397ed73381ca3d36f3dc2dd79ce', class: wrapperClasses }, this.label && (index.h("div", { key: 'f9fc2fe3f52a1f9be1404943d91489357ea941dc', class: "label-row" }, index.h("label", { key: '76283a7f0c9be127aa8c9115fcbc26b2d67d51cc', class: "label", htmlFor: "input" }, this.label, this.required && index.h("span", { key: '6b0de23e857abfdd25d6eefaa6ff22f22fa813dd', class: "required" }, "*")), this.showInfoIcon && (index.h("button", { key: '7c5f7a47a8357301f3fe28d6078bdec3ec1160c3', type: "button", class: "info-icon", onClick: this.handleInfoClick, "aria-label": "More information" }, index.h("svg", { key: '655c9448589937c2047a58962f78ab1872e0da84', viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, index.h("path", { key: '5066c29389ac8f9e1e27771f43a98f75f9b03634', d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), index.h("path", { key: '1993da070066d33575618267d6af5b13b641143b', d: "M12 16V12", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), index.h("path", { key: 'dd99ac12d4a23b98c98fca1df34916968276fc0e', d: "M12 8H12.01", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" })))), index.h("slot", { key: 'b406de5a455af79a69497c6a641b5c41347ee1ab', name: "label-end" }))), this.description && (index.h("p", { key: '0dcebb186df7055efb168f96ad4199e2f614a87c', class: "description" }, this.description)), index.h("div", { key: '754b8a3e67d5807d7d484d475d31913dee8004f4', class: inputContainerClasses, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave }, this.showSearchIcon && (index.h("span", { key: '5757962a3479a6cd1f12bd1da183919af69ad9f4', class: "search-icon" }, index.h("svg", { key: '4106175e5b41e4c978b38eda6db36799a6a6f762', viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, index.h("path", { key: '1d54b9a8c682c9049e97b28143f0dcd90e068dee', d: "M11 19C15.4183 19 19 15.4183 19 11C19 6.58172 15.4183 3 11 3C6.58172 3 3 6.58172 3 11C3 15.4183 6.58172 19 11 19Z", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), index.h("path", { key: 'd3ed0187abde8c14eae462612c918e10cb46916d', d: "M21 21L16.65 16.65", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" })))), index.h("input", { key: 'fb7a551d44282686732b78865bab8720c5e08830', ref: (el) => this.inputEl = el ?? undefined, id: "input", class: "input", type: this.type, name: this.name, value: this.value, placeholder: this.placeholder, disabled: this.disabled, required: this.required, readonly: this.readonly, autocomplete: this.autocomplete, maxlength: this.maxlength, minlength: this.minlength, pattern: this.pattern, "aria-invalid": hasError ? 'true' : undefined, "aria-describedby": hasError ? 'error-message' : this.description ? 'description' : undefined, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur }), this.clearable && hasValue && !this.disabled && !this.readonly && (index.h("button", { key: '6ad41a3ee4ffdbeefa11e45754a22143b33405e5', type: "button", class: "clear-button", onClick: this.handleClear, "aria-label": "Clear input" }, index.h("svg", { key: '129f73660030e81ff17071fae51bb34af23eca57', viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, index.h("path", { key: '78d4c71521ac7daced7023c5bcfb2bfccf593fab', d: "M18 6L6 18", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), index.h("path", { key: '4eb85452029e8347dd648dcc849fa000b41b7fea', d: "M6 6L18 18", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }))))), hasError && (index.h("div", { key: 'cc3b6083e88bb99ec17edffbf95ec89e2bb27e97', class: "error-row", id: "error-message" }, index.h("span", { key: 'fe264a854aaebe481a6913275859ca57b1d61d0d', class: "error-icon" }, index.h("svg", { key: '1159f77b184d1888c5c5ebe6138070c66abb66e6', viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, index.h("path", { key: '59975a202086127c2548843e842d33895d6ba1ff', d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), index.h("path", { key: '11c79f296c1dce73beebd67eeefe3d71b17ee191', d: "M12 16V12", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), index.h("path", { key: '9f146c96a38b14afb1919cf480224ee520ac16b0', d: "M12 8H12.01", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }))), index.h("span", { key: '2d326d0d72727dca4c4839fb5279323e556fbe04', class: "error-text" }, this.error))))));
98
+ return (index.h(index.Host, { key: '400a7886308cc6fdf7ba226480dc0971050fe809' }, index.h("div", { key: 'd241fd889b7974dedc5713c6a07b3d0ca34f8e00', class: wrapperClasses }, this.label && (index.h("div", { key: '05a49e0176eec70d8962d6a11f9a151cb7be97c0', class: "label-row" }, index.h("label", { key: '3cfdce5b0c1d5d2b8f086e5815d02b9c641f1b5f', class: "label", htmlFor: "input" }, this.label, this.required && index.h("span", { key: '500e7e6904ce5060bf39488058f0c57903954733', class: "required" }, "*")), this.showInfoIcon && (index.h("button", { key: '597bf0ec5edd0164a873c8fb378e00259b375707', type: "button", class: "info-icon", onClick: this.handleInfoClick, "aria-label": "More information" }, index.h("svg", { key: '4e1d799e58aefcf2997566402ab6dbd45fb3a317', viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, index.h("path", { key: '742b68edb5d9fb322f6fa706f4e8ee7ed89ad304', d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), index.h("path", { key: 'be9c43a114883b85bf67fe2df3b9cc0589fad04b', d: "M12 16V12", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), index.h("path", { key: '7a52e45ebf0b5c2a3d4d8fce1bc5f755375a82fa', d: "M12 8H12.01", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" })))), index.h("slot", { key: '64ac646e64b8aed7f53bf520c04be4b1c9175a66', name: "label-end" }))), this.description && (index.h("p", { key: 'da26f8ed87f2565d8e91dd5e85c72a15d0d8a12a', class: "description" }, this.description)), index.h("div", { key: 'ad0274109fc614bcc8c4149705229bf73633e406', class: inputContainerClasses, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave }, this.showSearchIcon && (index.h("span", { key: '37fd67942ce8e7b3436131eaa3b39548d8a9ea84', class: "search-icon" }, index.h("svg", { key: '94087fd6095eea01b1e975cac92ecc636ff28f1a', viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, index.h("path", { key: 'bfe3ba50936b25bff5ae3c39758a99f3189e9c3d', d: "M11 19C15.4183 19 19 15.4183 19 11C19 6.58172 15.4183 3 11 3C6.58172 3 3 6.58172 3 11C3 15.4183 6.58172 19 11 19Z", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), index.h("path", { key: '02100f03ff7aa547b00f44cd4b28b3aad8daae69', d: "M21 21L16.65 16.65", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" })))), index.h("input", { key: '4b8cebb727e5bb02d9d8ced50b465e95369c6b84', ref: (el) => this.inputEl = el ?? undefined, id: "input", class: "input", type: this.type, name: this.name, value: this.value, placeholder: this.placeholder, disabled: this.disabled, required: this.required, readonly: this.readonly, autocomplete: this.autocomplete, maxlength: this.maxlength, minlength: this.minlength, pattern: this.pattern, "aria-invalid": hasError ? 'true' : undefined, "aria-describedby": hasError ? 'error-message' : this.description ? 'description' : undefined, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur }), this.clearable && hasValue && !this.disabled && !this.readonly && (index.h("button", { key: 'a5293446b1164329ff14e679ba986311a1c5f586', type: "button", class: "clear-button", onClick: this.handleClear, "aria-label": "Clear input" }, index.h("svg", { key: '02f3854e7314476211ee532f42bc72dc0618c920', viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, index.h("path", { key: '577fc3ec1b2083f18607f7b1120a3adfdd8d29d5', d: "M18 6L6 18", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), index.h("path", { key: '87bd9e583a12efa1c12d31316259af90ddf7e33d', d: "M6 6L18 18", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }))))), hasError && (index.h("div", { key: 'abb797c9a006d2dfc62a40d2acd1d7c38ebd8487', class: "error-row", id: "error-message" }, index.h("span", { key: '87230aa50a9065d77ff6a723c48d08a4f06b72cb', class: "error-icon" }, index.h("svg", { key: 'c70ab9ce3225e446754a73502504cf2af35ac78d', viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, index.h("path", { key: 'd1c8bf0df150f15e0262e107ab6485f6af7bde75', d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), index.h("path", { key: '33bdff80da8e914db45146af10742618624306dd', d: "M12 16V12", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), index.h("path", { key: '1780ff18f1757e682c30ad69d7a16ac01dcf2979', d: "M12 8H12.01", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }))), index.h("span", { key: 'e3dca808bc53e8bd47a00b108147ee931c8535da', class: "error-text" }, this.error))))));
99
99
  }
100
100
  };
101
101
  AfInput.style = afInputCss;
@@ -1 +1 @@
1
- {"version":3,"file":"af-input.entry.cjs.js","sources":["src/components/af-input/af-input.css?tag=af-input&encapsulation=shadow","src/components/af-input/af-input.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n/* Wrapper */\n.input-wrapper {\n display: flex;\n flex-direction: column;\n gap: var(--sds-size-space-200, 8px);\n width: 100%;\n}\n\n/* Label row */\n.label-row {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.label {\n flex: 1;\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: var(--font-weight-book, 500);\n font-size: 16px;\n line-height: 24px;\n color: var(--forms-fields-label, var(--colour-brand-inkwell, #14343b));\n cursor: default;\n}\n\n.required {\n color: var(--forms-fields-error, #be292a);\n margin-left: 2px;\n}\n\n/* Info icon button */\n.info-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n padding: 0;\n border: none;\n background: none;\n cursor: pointer;\n color: var(--forms-fields-label, var(--colour-brand-inkwell, #14343b));\n flex-shrink: 0;\n}\n\n.info-icon svg {\n width: 20px;\n height: 20px;\n}\n\n.info-icon:hover {\n opacity: 0.7;\n}\n\n.info-icon:focus-visible {\n outline: 2px solid var(--buttons-secondary-stroke, #14343b);\n outline-offset: 2px;\n border-radius: 4px;\n}\n\n/* Description */\n.description {\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: var(--font-weight-regular, 400);\n font-size: 16px;\n line-height: 24px;\n color: var(--forms-fields-description, var(--colour-inkwell-400, #2b484f));\n margin: 0;\n}\n\n/* Input container */\n.input-container {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px 16px;\n background: var(--forms-fields-bg-default, #ffffff);\n border: 1px solid var(--forms-fields-stroke-default, #d0d6d8);\n border-radius: var(--radii-input, 8px);\n transition: all 0.15s ease;\n min-height: 48px;\n box-sizing: border-box;\n}\n\n/* Hover state */\n.input-container.hovered {\n background: var(--forms-fields-bg-hover, #f3f5f5);\n}\n\n/* Focus state */\n.input-container.focused {\n background: var(--forms-fields-bg-default, #ffffff);\n border-color: var(--forms-fields-stroke-active, var(--colour-brand-inkwell, #14343b));\n box-shadow: \n 0 0 0 4px var(--background-base, #ffffff), \n 0 0 0 5px var(--buttons-secondary-stroke, #14343b);\n}\n\n/* Error state */\n.input-container.error {\n border-color: var(--forms-fields-stroke-error, #be292a);\n}\n\n/* Disabled state */\n.input-container.disabled {\n background: var(--forms-fields-bg-disabled, #e8ebeb);\n border-color: var(--forms-fields-stroke-default, #d0d6d8);\n cursor: not-allowed;\n}\n\n/* Search icon */\n.search-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n flex-shrink: 0;\n color: var(--forms-fields-label, var(--colour-brand-inkwell, #14343b));\n}\n\n.search-icon svg {\n width: 20px;\n height: 20px;\n}\n\n.disabled .search-icon {\n opacity: 0.5;\n}\n\n/* Native input */\n.input {\n flex: 1;\n min-width: 0;\n padding: 0;\n border: none;\n background: transparent;\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: var(--font-weight-regular, 400);\n font-size: 16px;\n line-height: 24px;\n color: var(--forms-fields-input, var(--colour-brand-inkwell, #14343b));\n outline: none;\n}\n\n.input::placeholder {\n color: var(--forms-fields-placeholder, #60767b);\n opacity: 1;\n}\n\n.input:disabled {\n cursor: not-allowed;\n color: var(--forms-fields-placeholder, #60767b);\n}\n\n.input:disabled::placeholder {\n color: var(--forms-fields-placeholder, #60767b);\n}\n\n/* Hide native browser styling for search inputs */\n.input[type=\"search\"]::-webkit-search-decoration,\n.input[type=\"search\"]::-webkit-search-cancel-button,\n.input[type=\"search\"]::-webkit-search-results-button,\n.input[type=\"search\"]::-webkit-search-results-decoration {\n display: none;\n}\n\n/* Hide number input spinners */\n.input[type=\"number\"]::-webkit-inner-spin-button,\n.input[type=\"number\"]::-webkit-outer-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\n.input[type=\"number\"] {\n -moz-appearance: textfield;\n}\n\n/* Clear button */\n.clear-button {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n padding: 0;\n border: none;\n background: none;\n cursor: pointer;\n color: var(--forms-fields-label, var(--colour-brand-inkwell, #14343b));\n flex-shrink: 0;\n opacity: 0.6;\n transition: opacity 0.15s ease;\n}\n\n.clear-button svg {\n width: 16px;\n height: 16px;\n}\n\n.clear-button:hover {\n opacity: 1;\n}\n\n.clear-button:focus-visible {\n outline: 2px solid var(--buttons-secondary-stroke, #14343b);\n outline-offset: 2px;\n border-radius: 4px;\n}\n\n/* Error row */\n.error-row {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.error-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n flex-shrink: 0;\n color: var(--forms-fields-error, #be292a);\n}\n\n.error-icon svg {\n width: 20px;\n height: 20px;\n}\n\n.error-text {\n flex: 1;\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: var(--font-weight-regular, 400);\n font-size: 16px;\n line-height: 24px;\n color: var(--forms-fields-error, #be292a);\n}\n\n","import { Component, h, Prop, Host, Event, EventEmitter, State } from '@stencil/core';\n\n/**\n * Input field component with label, description, and error states.\n * Supports various input types and validation states.\n * \n * @slot label-end - Content to display at the end of the label (e.g., info icon)\n */\n@Component({\n tag: 'af-input',\n styleUrl: 'af-input.css',\n shadow: true\n})\nexport class AfInput {\n /**\n * The label text for the input field\n */\n @Prop() label?: string;\n\n /**\n * Description text displayed below the label\n */\n @Prop() description?: string;\n\n /**\n * Placeholder text for the input\n */\n @Prop() placeholder?: string;\n\n /**\n * The current value of the input\n */\n @Prop({ mutable: true }) value: string = '';\n\n /**\n * The input type (text, email, password, number, tel, url, search)\n */\n @Prop() type: 'text' | 'email' | 'password' | 'number' | 'tel' | 'url' | 'search' = 'text';\n\n /**\n * The name of the input for form submission\n */\n @Prop() name?: string;\n\n /**\n * Whether the input is disabled\n */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /**\n * Whether the input is required\n */\n @Prop() required: boolean = false;\n\n /**\n * Whether the input is read-only\n */\n @Prop() readonly: boolean = false;\n\n /**\n * Error message to display (also sets error state)\n */\n @Prop() error?: string;\n\n /**\n * Whether to show the info icon next to the label\n */\n @Prop() showInfoIcon: boolean = false;\n\n /**\n * Whether to show a search icon in the input\n */\n @Prop() showSearchIcon: boolean = false;\n\n /**\n * Whether to show a clear button when input has value\n */\n @Prop() clearable: boolean = false;\n\n /**\n * Autocomplete attribute for the input\n */\n @Prop() autocomplete?: string;\n\n /**\n * Maximum length of input value\n */\n @Prop() maxlength?: number;\n\n /**\n * Minimum length of input value\n */\n @Prop() minlength?: number;\n\n /**\n * Pattern for input validation (regex)\n */\n @Prop() pattern?: string;\n\n /**\n * Emitted when the input value changes\n */\n @Event() afInput!: EventEmitter<{ value: string }>;\n\n /**\n * Emitted when the input loses focus\n */\n @Event() afBlur!: EventEmitter<void>;\n\n /**\n * Emitted when the input gains focus\n */\n @Event() afFocus!: EventEmitter<void>;\n\n /**\n * Emitted when the clear button is clicked\n */\n @Event() afClear!: EventEmitter<void>;\n\n /**\n * Emitted when the info icon is clicked\n */\n @Event() afInfoClick!: EventEmitter<void>;\n\n @State() private isFocused: boolean = false;\n @State() private isHovered: boolean = false;\n\n private inputEl?: HTMLInputElement;\n\n private handleInput = (event: Event) => {\n const target = event.target as HTMLInputElement;\n this.value = target.value;\n this.afInput.emit({ value: this.value });\n };\n\n private handleFocus = () => {\n this.isFocused = true;\n this.afFocus.emit();\n };\n\n private handleBlur = () => {\n this.isFocused = false;\n this.afBlur.emit();\n };\n\n private handleMouseEnter = () => {\n this.isHovered = true;\n };\n\n private handleMouseLeave = () => {\n this.isHovered = false;\n };\n\n private handleClear = () => {\n this.value = '';\n this.afClear.emit();\n this.afInput.emit({ value: '' });\n this.inputEl?.focus();\n };\n\n private handleInfoClick = (event: MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n this.afInfoClick.emit();\n };\n\n render() {\n const hasError = !!this.error;\n const hasValue = !!(this.value && this.value.length > 0);\n\n const wrapperClasses = {\n 'input-wrapper': true,\n 'disabled': this.disabled,\n 'error': hasError,\n 'focused': this.isFocused,\n 'hovered': this.isHovered && !this.disabled && !this.isFocused,\n 'populated': hasValue\n };\n\n const inputContainerClasses = {\n 'input-container': true,\n 'disabled': this.disabled,\n 'error': hasError,\n 'focused': this.isFocused,\n 'hovered': this.isHovered && !this.disabled && !this.isFocused\n };\n\n return (\n <Host>\n <div class={wrapperClasses}>\n {/* Label */}\n {this.label && (\n <div class=\"label-row\">\n <label class=\"label\" htmlFor=\"input\">\n {this.label}\n {this.required && <span class=\"required\">*</span>}\n </label>\n {this.showInfoIcon && (\n <button \n type=\"button\" \n class=\"info-icon\" \n onClick={this.handleInfoClick}\n aria-label=\"More information\"\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 16V12\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 8H12.01\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n )}\n <slot name=\"label-end\"></slot>\n </div>\n )}\n\n {/* Description */}\n {this.description && (\n <p class=\"description\">{this.description}</p>\n )}\n\n {/* Input container */}\n <div \n class={inputContainerClasses}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n >\n {/* Search icon */}\n {this.showSearchIcon && (\n <span class=\"search-icon\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M11 19C15.4183 19 19 15.4183 19 11C19 6.58172 15.4183 3 11 3C6.58172 3 3 6.58172 3 11C3 15.4183 6.58172 19 11 19Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M21 21L16.65 16.65\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </span>\n )}\n\n {/* Native input */}\n <input\n ref={(el) => this.inputEl = el ?? undefined}\n id=\"input\"\n class=\"input\"\n type={this.type}\n name={this.name}\n value={this.value}\n placeholder={this.placeholder}\n disabled={this.disabled}\n required={this.required}\n readonly={this.readonly}\n autocomplete={this.autocomplete}\n maxlength={this.maxlength}\n minlength={this.minlength}\n pattern={this.pattern}\n aria-invalid={hasError ? 'true' : undefined}\n aria-describedby={hasError ? 'error-message' : this.description ? 'description' : undefined}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n\n {/* Clear button */}\n {this.clearable && hasValue && !this.disabled && !this.readonly && (\n <button \n type=\"button\" \n class=\"clear-button\" \n onClick={this.handleClear}\n aria-label=\"Clear input\"\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M18 6L6 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M6 6L18 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n )}\n </div>\n\n {/* Error message */}\n {hasError && (\n <div class=\"error-row\" id=\"error-message\">\n <span class=\"error-icon\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 16V12\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 8H12.01\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </span>\n <span class=\"error-text\">{this.error}</span>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n\n"],"names":["h","Host"],"mappings":"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"}
1
+ {"version":3,"file":"af-input.entry.cjs.js","sources":["src/components/af-input/af-input.css?tag=af-input&encapsulation=shadow","src/components/af-input/af-input.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n/* Wrapper */\n.input-wrapper {\n display: flex;\n flex-direction: column;\n gap: var(--sds-size-space-200, 8px);\n width: 100%;\n}\n\n/* Label row */\n.label-row {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.label {\n flex: 1;\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: var(--font-weight-book, 500);\n font-size: 16px;\n line-height: 24px;\n color: var(--af-input-label, var(--af-typography-body-dark, #14343b));\n cursor: default;\n}\n\n.required {\n color: var(--af-input-error, var(--colour-error, #be292a));\n margin-left: 2px;\n}\n\n/* Info icon button */\n.info-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n padding: 0;\n border: none;\n background: none;\n cursor: pointer;\n color: var(--af-input-icon, var(--af-background-icon-default, #14343b));\n flex-shrink: 0;\n}\n\n.info-icon svg {\n width: 20px;\n height: 20px;\n}\n\n.info-icon:hover {\n opacity: 0.7;\n}\n\n.info-icon:focus-visible {\n outline: 2px solid var(--af-input-focus-ring, var(--af-typography-body-dark, #14343b));\n outline-offset: 2px;\n border-radius: 4px;\n}\n\n/* Description */\n.description {\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: var(--font-weight-regular, 400);\n font-size: 16px;\n line-height: 24px;\n color: var(--af-input-description, var(--af-typography-body-default, #2b484f));\n margin: 0;\n}\n\n/* Input container */\n.input-container {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px 16px;\n background: var(--af-input-bg, #ffffff);\n border: 1px solid var(--af-input-border, var(--af-background-border-default, #d1ddda));\n border-radius: var(--radii-input, 8px);\n transition: all 0.15s ease;\n min-height: 48px;\n box-sizing: border-box;\n}\n\n/* Hover state */\n.input-container.hovered {\n background: var(--af-input-bg-hover, var(--af-background-base-hover, #f4f7f6));\n border-color: var(--af-input-border-hover, var(--af-background-border-heavy, #c6d5d1));\n}\n\n/* Focus state */\n.input-container.focused {\n background: var(--af-input-bg, #ffffff);\n border-color: var(--af-input-border-active, var(--af-typography-body-dark, #14343b));\n box-shadow: \n 0 0 0 4px var(--af-background-base, #ffffff), \n 0 0 0 5px var(--af-input-focus-ring, var(--af-typography-body-dark, #14343b));\n}\n\n/* Error state */\n.input-container.error {\n border-color: var(--af-input-border-error, var(--colour-error, #be292a));\n}\n\n/* Disabled state */\n.input-container.disabled {\n background: var(--af-input-bg-disabled, var(--af-background-level-1, #e8eeed));\n border-color: var(--af-input-border, var(--af-background-border-default, #d1ddda));\n cursor: not-allowed;\n}\n\n/* Search icon */\n.search-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n flex-shrink: 0;\n color: var(--af-input-icon, var(--af-background-icon-default, #14343b));\n}\n\n.search-icon svg {\n width: 20px;\n height: 20px;\n}\n\n.disabled .search-icon {\n opacity: 0.5;\n}\n\n/* Native input */\n.input {\n flex: 1;\n min-width: 0;\n padding: 0;\n border: none;\n background: transparent;\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: var(--font-weight-regular, 400);\n font-size: 16px;\n line-height: 24px;\n color: var(--af-input-text, var(--af-typography-body-dark, #14343b));\n outline: none;\n}\n\n.input::placeholder {\n color: var(--af-input-placeholder, var(--af-typography-body-subtle, #60767b));\n opacity: 1;\n}\n\n.input:disabled {\n cursor: not-allowed;\n color: var(--af-input-placeholder, var(--af-typography-body-subtle, #60767b));\n}\n\n.input:disabled::placeholder {\n color: var(--af-input-placeholder, var(--af-typography-body-subtle, #60767b));\n}\n\n/* Hide native browser styling for search inputs */\n.input[type=\"search\"]::-webkit-search-decoration,\n.input[type=\"search\"]::-webkit-search-cancel-button,\n.input[type=\"search\"]::-webkit-search-results-button,\n.input[type=\"search\"]::-webkit-search-results-decoration {\n display: none;\n}\n\n/* Hide number input spinners */\n.input[type=\"number\"]::-webkit-inner-spin-button,\n.input[type=\"number\"]::-webkit-outer-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\n.input[type=\"number\"] {\n -moz-appearance: textfield;\n}\n\n/* Clear button */\n.clear-button {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n padding: 0;\n border: none;\n background: none;\n cursor: pointer;\n color: var(--af-input-icon, var(--af-background-icon-default, #14343b));\n flex-shrink: 0;\n opacity: 0.6;\n transition: opacity 0.15s ease;\n}\n\n.clear-button svg {\n width: 16px;\n height: 16px;\n}\n\n.clear-button:hover {\n opacity: 1;\n}\n\n.clear-button:focus-visible {\n outline: 2px solid var(--af-input-focus-ring, var(--af-typography-body-dark, #14343b));\n outline-offset: 2px;\n border-radius: 4px;\n}\n\n/* Error row */\n.error-row {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.error-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n flex-shrink: 0;\n color: var(--af-input-error, var(--colour-error, #be292a));\n}\n\n.error-icon svg {\n width: 20px;\n height: 20px;\n}\n\n.error-text {\n flex: 1;\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: var(--font-weight-regular, 400);\n font-size: 16px;\n line-height: 24px;\n color: var(--af-input-error, var(--colour-error, #be292a));\n}\n","import { Component, h, Prop, Host, Event, EventEmitter, State } from '@stencil/core';\n\n/**\n * Input field component with label, description, and error states.\n * Supports various input types and validation states.\n * \n * @slot label-end - Content to display at the end of the label (e.g., info icon)\n */\n@Component({\n tag: 'af-input',\n styleUrl: 'af-input.css',\n shadow: true\n})\nexport class AfInput {\n /**\n * The label text for the input field\n */\n @Prop() label?: string;\n\n /**\n * Description text displayed below the label\n */\n @Prop() description?: string;\n\n /**\n * Placeholder text for the input\n */\n @Prop() placeholder?: string;\n\n /**\n * The current value of the input\n */\n @Prop({ mutable: true }) value: string = '';\n\n /**\n * The input type (text, email, password, number, tel, url, search)\n */\n @Prop() type: 'text' | 'email' | 'password' | 'number' | 'tel' | 'url' | 'search' = 'text';\n\n /**\n * The name of the input for form submission\n */\n @Prop() name?: string;\n\n /**\n * Whether the input is disabled\n */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /**\n * Whether the input is required\n */\n @Prop() required: boolean = false;\n\n /**\n * Whether the input is read-only\n */\n @Prop() readonly: boolean = false;\n\n /**\n * Error message to display (also sets error state)\n */\n @Prop() error?: string;\n\n /**\n * Whether to show the info icon next to the label\n */\n @Prop() showInfoIcon: boolean = false;\n\n /**\n * Whether to show a search icon in the input\n */\n @Prop() showSearchIcon: boolean = false;\n\n /**\n * Whether to show a clear button when input has value\n */\n @Prop() clearable: boolean = false;\n\n /**\n * Autocomplete attribute for the input\n */\n @Prop() autocomplete?: string;\n\n /**\n * Maximum length of input value\n */\n @Prop() maxlength?: number;\n\n /**\n * Minimum length of input value\n */\n @Prop() minlength?: number;\n\n /**\n * Pattern for input validation (regex)\n */\n @Prop() pattern?: string;\n\n /**\n * Emitted when the input value changes\n */\n @Event() afInput!: EventEmitter<{ value: string }>;\n\n /**\n * Emitted when the input loses focus\n */\n @Event() afBlur!: EventEmitter<void>;\n\n /**\n * Emitted when the input gains focus\n */\n @Event() afFocus!: EventEmitter<void>;\n\n /**\n * Emitted when the clear button is clicked\n */\n @Event() afClear!: EventEmitter<void>;\n\n /**\n * Emitted when the info icon is clicked\n */\n @Event() afInfoClick!: EventEmitter<void>;\n\n @State() private isFocused: boolean = false;\n @State() private isHovered: boolean = false;\n\n private inputEl?: HTMLInputElement;\n\n private handleInput = (event: Event) => {\n const target = event.target as HTMLInputElement;\n this.value = target.value;\n this.afInput.emit({ value: this.value });\n };\n\n private handleFocus = () => {\n this.isFocused = true;\n this.afFocus.emit();\n };\n\n private handleBlur = () => {\n this.isFocused = false;\n this.afBlur.emit();\n };\n\n private handleMouseEnter = () => {\n this.isHovered = true;\n };\n\n private handleMouseLeave = () => {\n this.isHovered = false;\n };\n\n private handleClear = () => {\n this.value = '';\n this.afClear.emit();\n this.afInput.emit({ value: '' });\n this.inputEl?.focus();\n };\n\n private handleInfoClick = (event: MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n this.afInfoClick.emit();\n };\n\n render() {\n const hasError = !!this.error;\n const hasValue = !!(this.value && this.value.length > 0);\n\n const wrapperClasses = {\n 'input-wrapper': true,\n 'disabled': this.disabled,\n 'error': hasError,\n 'focused': this.isFocused,\n 'hovered': this.isHovered && !this.disabled && !this.isFocused,\n 'populated': hasValue\n };\n\n const inputContainerClasses = {\n 'input-container': true,\n 'disabled': this.disabled,\n 'error': hasError,\n 'focused': this.isFocused,\n 'hovered': this.isHovered && !this.disabled && !this.isFocused\n };\n\n return (\n <Host>\n <div class={wrapperClasses}>\n {/* Label */}\n {this.label && (\n <div class=\"label-row\">\n <label class=\"label\" htmlFor=\"input\">\n {this.label}\n {this.required && <span class=\"required\">*</span>}\n </label>\n {this.showInfoIcon && (\n <button \n type=\"button\" \n class=\"info-icon\" \n onClick={this.handleInfoClick}\n aria-label=\"More information\"\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 16V12\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 8H12.01\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n )}\n <slot name=\"label-end\"></slot>\n </div>\n )}\n\n {/* Description */}\n {this.description && (\n <p class=\"description\">{this.description}</p>\n )}\n\n {/* Input container */}\n <div \n class={inputContainerClasses}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n >\n {/* Search icon */}\n {this.showSearchIcon && (\n <span class=\"search-icon\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M11 19C15.4183 19 19 15.4183 19 11C19 6.58172 15.4183 3 11 3C6.58172 3 3 6.58172 3 11C3 15.4183 6.58172 19 11 19Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M21 21L16.65 16.65\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </span>\n )}\n\n {/* Native input */}\n <input\n ref={(el) => this.inputEl = el ?? undefined}\n id=\"input\"\n class=\"input\"\n type={this.type}\n name={this.name}\n value={this.value}\n placeholder={this.placeholder}\n disabled={this.disabled}\n required={this.required}\n readonly={this.readonly}\n autocomplete={this.autocomplete}\n maxlength={this.maxlength}\n minlength={this.minlength}\n pattern={this.pattern}\n aria-invalid={hasError ? 'true' : undefined}\n aria-describedby={hasError ? 'error-message' : this.description ? 'description' : undefined}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n\n {/* Clear button */}\n {this.clearable && hasValue && !this.disabled && !this.readonly && (\n <button \n type=\"button\" \n class=\"clear-button\" \n onClick={this.handleClear}\n aria-label=\"Clear input\"\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M18 6L6 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M6 6L18 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n )}\n </div>\n\n {/* Error message */}\n {hasError && (\n <div class=\"error-row\" id=\"error-message\">\n <span class=\"error-icon\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 16V12\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M12 8H12.01\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </span>\n <span class=\"error-text\">{this.error}</span>\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n\n"],"names":["h","Host"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-ybEiHT0b.js');
3
+ var index = require('./index-n-fnurTP.js');
4
4
 
5
5
  const afLogoWellCss = ":host{display:inline-block}.logo-well{background:var(--af-carousel-logo-well-bg, var(--colour-background-level1-dark, #203e45));border-radius:var(--radius-logo-well-desktop, 16px);height:72px;width:184px;display:flex;align-items:center;justify-content:center;padding:20px 32px;box-sizing:border-box}::slotted(img){max-height:32px;max-width:120px;width:auto;height:auto;display:block;object-fit:contain;filter:var(--af-carousel-logo-filter, brightness(0) invert(1))}::slotted(svg){max-height:32px;max-width:120px;width:auto;height:auto;display:block;color:var(--af-carousel-logo-color, white)}::slotted(div){white-space:nowrap;color:var(--af-carousel-logo-color, white);font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:600;font-size:16px}@media (max-width: 767px){.logo-well{border-radius:var(--radius-logo-well-mobile, 12px);padding:20px 24px}}";
6
6
 
@@ -9,7 +9,7 @@ const AfLogoWell = class {
9
9
  index.registerInstance(this, hostRef);
10
10
  }
11
11
  render() {
12
- return (index.h(index.Host, { key: 'f64c4eb4974d71972365ba55c49b54bd1667d157' }, index.h("div", { key: '1192eb30a0dcb0426d15b23148f9f48b2ded06d4', class: "logo-well" }, index.h("slot", { key: 'f62638c5fab67512858baf0756c38ce45546dd0e' }))));
12
+ return (index.h(index.Host, { key: '88b751702096b45e12c8d9394e69b6a0abd2122b' }, index.h("div", { key: '3bbdff4a72c4491b8a75359d18d0609f22811696', class: "logo-well" }, index.h("slot", { key: '6173141ef408944cd4e2b87e6cb40096a1ba3c08' }))));
13
13
  }
14
14
  };
15
15
  AfLogoWell.style = afLogoWellCss;
@@ -0,0 +1,86 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-n-fnurTP.js');
4
+
5
+ const afNavAccordionItemCss = ".sc-af-nav-accordion-item-h{display:block;width:100%}.nav-accordion-item.sc-af-nav-accordion-item{width:100%}.trigger.sc-af-nav-accordion-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:20px 12px;background:transparent;border:none;border-bottom:1px solid var(--af-nav-border-subtle, var(--af-background-border-subtle, #e8eeed));cursor:pointer;font:inherit;text-align:left;text-decoration:none;color:inherit;box-sizing:border-box}a.trigger.sc-af-nav-accordion-item{color:inherit}.trigger.sc-af-nav-accordion-item:hover:not(:disabled){background-color:rgba(20, 52, 59, 0.02)}.trigger.sc-af-nav-accordion-item:focus-visible{outline:2px solid var(--af-nav-border-active, var(--af-background-border-active, #8a7049));outline-offset:-2px}.trigger.sc-af-nav-accordion-item:disabled{cursor:not-allowed;opacity:0.5}.trigger-content.sc-af-nav-accordion-item{flex:1;min-width:0;display:flex;align-items:center;min-height:24px}.label.sc-af-nav-accordion-item{font-family:var(--typography-primaryfont, 'NeuSans', 'Inter', system-ui, sans-serif);font-weight:var(--typography-headingweight, 500);font-size:20px;line-height:1.1;letter-spacing:-0.4px;color:var(--af-nav-item-primary, var(--af-typography-body-dark, #14343b))}.chevron.sc-af-nav-accordion-item,.chevron-button.sc-af-nav-accordion-item{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;color:var(--af-nav-item-primary, var(--af-typography-body-dark, #14343b));transition:transform 0.3s ease}.chevron-button.sc-af-nav-accordion-item{background:transparent;border:none;cursor:pointer;padding:0}.chevron-button.sc-af-nav-accordion-item:hover{opacity:0.7}.chevron.is-open.sc-af-nav-accordion-item{transform:rotate(180deg)}.content-wrapper.sc-af-nav-accordion-item{overflow:hidden;transition:max-height 0.3s ease}.content.sc-af-nav-accordion-item{padding:0;background:var(--af-background-base, white)}.is-disabled.sc-af-nav-accordion-item-h .trigger.sc-af-nav-accordion-item{cursor:not-allowed;opacity:0.5}.is-disabled.sc-af-nav-accordion-item-h .trigger.sc-af-nav-accordion-item:hover{background-color:transparent}.is-open.sc-af-nav-accordion-item-h .trigger.sc-af-nav-accordion-item{border-bottom-color:transparent}.breakpoint-mobile.sc-af-nav-accordion-item-h .trigger.sc-af-nav-accordion-item{padding:20px 12px}.breakpoint-mobile.sc-af-nav-accordion-item-h .label.sc-af-nav-accordion-item{font-size:20px;line-height:1.1;letter-spacing:-0.4px}.breakpoint-desktop.sc-af-nav-accordion-item-h .trigger.sc-af-nav-accordion-item{padding:12px}.breakpoint-desktop.sc-af-nav-accordion-item-h .label.sc-af-nav-accordion-item{font-size:16px;line-height:20px;letter-spacing:0}.breakpoint-mobile.sc-af-nav-accordion-item-h .content.sc-af-nav-accordion-item{padding-left:0}";
6
+
7
+ const AfNavAccordionItem = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ this.navAccordionItemToggle = index.createEvent(this, "af-nav-accordion-item-toggle");
11
+ /**
12
+ * Whether this item is currently expanded
13
+ */
14
+ this.open = false;
15
+ /**
16
+ * Whether this item is disabled
17
+ */
18
+ this.disabled = false;
19
+ /**
20
+ * Breakpoint for styling
21
+ */
22
+ this.breakpoint = 'mobile';
23
+ this.contentHeight = 0;
24
+ this.hasTriggerSlot = false;
25
+ this.handleTriggerClick = (event) => {
26
+ // If it's a link, let it navigate (unless they clicked the chevron specifically)
27
+ if (this.href) {
28
+ return;
29
+ }
30
+ event.preventDefault();
31
+ this.toggle();
32
+ };
33
+ this.handleKeyDown = (event) => {
34
+ if ((event.key === 'Enter' || event.key === ' ') && !this.href) {
35
+ event.preventDefault();
36
+ this.toggle();
37
+ }
38
+ };
39
+ this.handleSlotChange = (event) => {
40
+ const slot = event.target;
41
+ this.hasTriggerSlot = slot.assignedNodes().length > 0;
42
+ };
43
+ }
44
+ handleOpenChange(newValue) {
45
+ if (newValue) {
46
+ this.measureContent();
47
+ }
48
+ }
49
+ componentDidLoad() {
50
+ if (this.open) {
51
+ this.measureContent();
52
+ }
53
+ }
54
+ /**
55
+ * Programmatically toggle the accordion item
56
+ */
57
+ async toggle() {
58
+ if (!this.disabled && !this.href) {
59
+ this.open = !this.open;
60
+ this.navAccordionItemToggle.emit({ itemId: this.itemId, open: this.open });
61
+ }
62
+ }
63
+ measureContent() {
64
+ if (this.contentRef) {
65
+ this.contentHeight = this.contentRef.scrollHeight;
66
+ }
67
+ }
68
+ render() {
69
+ const contentStyle = {
70
+ maxHeight: this.open ? `${this.contentHeight}px` : '0px'
71
+ };
72
+ return (index.h(index.Host, { key: 'c60d17b2939f91ff7224f4eb156ed90645288c3c', class: {
73
+ 'is-open': this.open,
74
+ 'is-disabled': this.disabled,
75
+ [`breakpoint-${this.breakpoint}`]: true
76
+ } }, index.h("div", { key: '8fc7a72d88e6ab275ec9828098cc3aa70e2dcf58', class: "nav-accordion-item" }, this.href ? (index.h("a", { href: this.href, class: "trigger", "aria-expanded": this.open ? 'true' : 'false', "aria-controls": `content-${this.itemId}` }, index.h("div", { class: "trigger-content" }, index.h("slot", { name: "trigger", onSlotchange: this.handleSlotChange }, index.h("span", { class: "label" }, this.label))), (index.h("button", { class: "chevron-button", onClick: (e) => { e.preventDefault(); e.stopPropagation(); this.toggle(); }, "aria-label": this.open ? 'Collapse' : 'Expand', type: "button" }, index.h("div", { class: { 'chevron': true, 'is-open': this.open } }, index.h("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor" }, index.h("path", { d: "M6 9l6 6 6-6", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }))))))) : (index.h("button", { class: "trigger", onClick: this.handleTriggerClick, onKeyDown: this.handleKeyDown, "aria-expanded": this.open ? 'true' : 'false', "aria-controls": `content-${this.itemId}`, disabled: this.disabled, type: "button" }, index.h("div", { class: "trigger-content" }, index.h("slot", { name: "trigger", onSlotchange: this.handleSlotChange }, index.h("span", { class: "label" }, this.label))), index.h("div", { class: { 'chevron': true, 'is-open': this.open } }, index.h("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor" }, index.h("path", { d: "M6 9l6 6 6-6", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }))))), index.h("div", { key: '4fb193591c092154364f98e0a1677c2dfee9cad9', id: `content-${this.itemId}`, class: "content-wrapper", style: contentStyle, "aria-hidden": !this.open ? 'true' : 'false' }, index.h("div", { key: '1aa3437d93630a60dbce5163cdd1ceae1d234213', class: "content", ref: (el) => (this.contentRef = el) }, index.h("slot", { key: '2eea67c87eaccd58d180ec89ffae7f58785fb5c4' }))))));
77
+ }
78
+ get el() { return index.getElement(this); }
79
+ static get watchers() { return {
80
+ "open": ["handleOpenChange"]
81
+ }; }
82
+ };
83
+ AfNavAccordionItem.style = afNavAccordionItemCss;
84
+
85
+ exports.af_nav_accordion_item = AfNavAccordionItem;
86
+ //# sourceMappingURL=af-nav-accordion-item.entry.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"af-nav-accordion-item.entry.cjs.js","sources":["src/components/af-nav-accordion-item/af-nav-accordion-item.css?tag=af-nav-accordion-item&encapsulation=scoped","src/components/af-nav-accordion-item/af-nav-accordion-item.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n.nav-accordion-item {\n width: 100%;\n}\n\n/* Trigger button/link - clickable header */\n.trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n width: 100%;\n padding: 20px 12px;\n background: transparent;\n border: none;\n border-bottom: 1px solid var(--af-nav-border-subtle, var(--af-background-border-subtle, #e8eeed));\n cursor: pointer;\n font: inherit;\n text-align: left;\n text-decoration: none;\n color: inherit;\n box-sizing: border-box;\n}\n\na.trigger {\n color: inherit;\n}\n\n.trigger:hover:not(:disabled) {\n background-color: rgba(20, 52, 59, 0.02);\n}\n\n.trigger:focus-visible {\n outline: 2px solid var(--af-nav-border-active, var(--af-background-border-active, #8a7049));\n outline-offset: -2px;\n}\n\n.trigger:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n/* Trigger content */\n.trigger-content {\n flex: 1;\n min-width: 0;\n display: flex;\n align-items: center;\n min-height: 24px;\n}\n\n/* Label styling - matches NavItem primary-01 mobile */\n.label {\n font-family: var(--typography-primaryfont, 'NeuSans', 'Inter', system-ui, sans-serif);\n font-weight: var(--typography-headingweight, 500);\n font-size: 20px;\n line-height: 1.1;\n letter-spacing: -0.4px;\n color: var(--af-nav-item-primary, var(--af-typography-body-dark, #14343b));\n}\n\n/* Chevron indicator */\n.chevron,\n.chevron-button {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n flex-shrink: 0;\n color: var(--af-nav-item-primary, var(--af-typography-body-dark, #14343b));\n transition: transform 0.3s ease;\n}\n\n.chevron-button {\n background: transparent;\n border: none;\n cursor: pointer;\n padding: 0;\n}\n\n.chevron-button:hover {\n opacity: 0.7;\n}\n\n.chevron.is-open {\n transform: rotate(180deg);\n}\n\n/* Content wrapper - handles animation */\n.content-wrapper {\n overflow: hidden;\n transition: max-height 0.3s ease;\n}\n\n.content {\n padding: 0;\n background: var(--af-background-base, white);\n}\n\n/* Disabled state */\n:host(.is-disabled) .trigger {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n:host(.is-disabled) .trigger:hover {\n background-color: transparent;\n}\n\n/* Open state styling */\n:host(.is-open) .trigger {\n border-bottom-color: transparent;\n}\n\n/* Mobile breakpoint styling */\n:host(.breakpoint-mobile) .trigger {\n padding: 20px 12px;\n}\n\n:host(.breakpoint-mobile) .label {\n font-size: 20px;\n line-height: 1.1;\n letter-spacing: -0.4px;\n}\n\n/* Desktop breakpoint styling */\n:host(.breakpoint-desktop) .trigger {\n padding: 12px;\n}\n\n:host(.breakpoint-desktop) .label {\n font-size: 16px;\n line-height: 20px;\n letter-spacing: 0;\n}\n\n/* Nested content uses different padding */\n:host(.breakpoint-mobile) .content {\n padding-left: 0;\n}\n\n","import { Component, h, Prop, Host, Event, EventEmitter, Element, State, Watch, Method } from '@stencil/core';\n\n/**\n * Navigation accordion item with NavItem-styled trigger.\n * Combines navigation item styling with accordion collapse behavior.\n * \n * @slot trigger - Custom trigger content (optional - uses label if not provided)\n * @slot - The collapsible content (typically NavMenuNest or NavMenu components)\n */\n@Component({\n tag: 'af-nav-accordion-item',\n styleUrl: 'af-nav-accordion-item.css',\n shadow: false,\n scoped: true,\n})\nexport class AfNavAccordionItem {\n @Element() el!: HTMLElement;\n\n /**\n * Unique identifier for this accordion item\n */\n @Prop({ reflect: true }) itemId!: string;\n\n /**\n * Label text for the navigation item trigger\n */\n @Prop() label?: string;\n\n /**\n * Whether this item is currently expanded\n */\n @Prop({ reflect: true, mutable: true }) open: boolean = false;\n\n /**\n * Whether this item is disabled\n */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /**\n * Optional href - if provided, clicking navigates instead of expanding\n * (chevron area would still toggle expansion if both behaviors needed)\n */\n @Prop() href?: string;\n\n /**\n * Breakpoint for styling\n */\n @Prop({ reflect: true }) breakpoint: 'desktop' | 'mobile' = 'mobile';\n\n /**\n * Emitted when the accordion item is toggled\n */\n @Event({ eventName: 'af-nav-accordion-item-toggle' }) navAccordionItemToggle!: EventEmitter<{ itemId: string; open: boolean }>;\n\n @State() contentHeight: number = 0;\n @State() hasTriggerSlot: boolean = false;\n\n private contentRef?: HTMLElement;\n\n @Watch('open')\n handleOpenChange(newValue: boolean) {\n if (newValue) {\n this.measureContent();\n }\n }\n\n componentDidLoad() {\n if (this.open) {\n this.measureContent();\n }\n }\n\n /**\n * Programmatically toggle the accordion item\n */\n @Method()\n async toggle() {\n if (!this.disabled && !this.href) {\n this.open = !this.open;\n this.navAccordionItemToggle.emit({ itemId: this.itemId, open: this.open });\n }\n }\n\n private measureContent() {\n if (this.contentRef) {\n this.contentHeight = this.contentRef.scrollHeight;\n }\n }\n\n private handleTriggerClick = (event: MouseEvent) => {\n // If it's a link, let it navigate (unless they clicked the chevron specifically)\n if (this.href) {\n return;\n }\n event.preventDefault();\n this.toggle();\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if ((event.key === 'Enter' || event.key === ' ') && !this.href) {\n event.preventDefault();\n this.toggle();\n }\n };\n\n private handleSlotChange = (event: Event) => {\n const slot = event.target as HTMLSlotElement;\n this.hasTriggerSlot = slot.assignedNodes().length > 0;\n };\n\n render() {\n const contentStyle = {\n maxHeight: this.open ? `${this.contentHeight}px` : '0px'\n };\n\n const hasDropdownContent = true; // Assume content is always present for accordion items\n\n return (\n <Host \n class={{ \n 'is-open': this.open, \n 'is-disabled': this.disabled,\n [`breakpoint-${this.breakpoint}`]: true\n }}\n >\n <div class=\"nav-accordion-item\">\n {/* Trigger */}\n {this.href ? (\n <a\n href={this.href}\n class=\"trigger\"\n aria-expanded={this.open ? 'true' : 'false'}\n aria-controls={`content-${this.itemId}`}\n >\n <div class=\"trigger-content\">\n <slot name=\"trigger\" onSlotchange={this.handleSlotChange}>\n <span class=\"label\">{this.label}</span>\n </slot>\n </div>\n {hasDropdownContent && (\n <button \n class=\"chevron-button\"\n onClick={(e) => { e.preventDefault(); e.stopPropagation(); this.toggle(); }}\n aria-label={this.open ? 'Collapse' : 'Expand'}\n type=\"button\"\n >\n <div class={{ 'chevron': true, 'is-open': this.open }}>\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\">\n <path d=\"M6 9l6 6 6-6\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </div>\n </button>\n )}\n </a>\n ) : (\n <button\n class=\"trigger\"\n onClick={this.handleTriggerClick}\n onKeyDown={this.handleKeyDown}\n aria-expanded={this.open ? 'true' : 'false'}\n aria-controls={`content-${this.itemId}`}\n disabled={this.disabled}\n type=\"button\"\n >\n <div class=\"trigger-content\">\n <slot name=\"trigger\" onSlotchange={this.handleSlotChange}>\n <span class=\"label\">{this.label}</span>\n </slot>\n </div>\n <div class={{ 'chevron': true, 'is-open': this.open }}>\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\">\n <path d=\"M6 9l6 6 6-6\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </div>\n </button>\n )}\n\n {/* Collapsible content */}\n <div\n id={`content-${this.itemId}`}\n class=\"content-wrapper\"\n style={contentStyle}\n aria-hidden={!this.open ? 'true' : 'false'}\n >\n <div class=\"content\" ref={(el) => (this.contentRef = el)}>\n <slot></slot>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n\n"],"names":["h","Host"],"mappings":"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"}
@@ -0,0 +1,82 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-n-fnurTP.js');
4
+
5
+ const afNavAccordionCss = ".sc-af-nav-accordion-h{display:block;width:100%}.nav-accordion.sc-af-nav-accordion{display:flex;flex-direction:column;width:100%}";
6
+
7
+ const AfNavAccordion = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ this.navAccordionChange = index.createEvent(this, "af-nav-accordion-change");
11
+ /**
12
+ * Behavior mode for the accordion.
13
+ * - `independent`: Multiple items can be open simultaneously
14
+ * - `exclusive`: Only one item can be open at a time (typical for mobile nav)
15
+ */
16
+ this.mode = 'exclusive';
17
+ /**
18
+ * Breakpoint for styling
19
+ * - `desktop`: Desktop-specific styles
20
+ * - `mobile`: Mobile-specific styles (default for nav menus)
21
+ */
22
+ this.breakpoint = 'mobile';
23
+ this.internalValue = [];
24
+ }
25
+ componentWillLoad() {
26
+ this.internalValue = this.normalizeValue(this.value);
27
+ }
28
+ /**
29
+ * Listen for toggle events from child items
30
+ */
31
+ handleItemToggle(event) {
32
+ event.stopPropagation();
33
+ const { itemId, open } = event.detail;
34
+ let newValue;
35
+ if (this.mode === 'exclusive') {
36
+ newValue = open ? [itemId] : [];
37
+ }
38
+ else {
39
+ if (open) {
40
+ newValue = [...this.internalValue, itemId];
41
+ }
42
+ else {
43
+ newValue = this.internalValue.filter(id => id !== itemId);
44
+ }
45
+ }
46
+ this.internalValue = newValue;
47
+ this.syncItems();
48
+ const emitValue = this.mode === 'exclusive'
49
+ ? (newValue.length > 0 ? newValue[0] : null)
50
+ : newValue;
51
+ this.navAccordionChange.emit({ value: emitValue });
52
+ }
53
+ normalizeValue(value) {
54
+ if (value === undefined || value === null) {
55
+ return [];
56
+ }
57
+ if (Array.isArray(value)) {
58
+ return this.mode === 'exclusive' ? value.slice(0, 1) : value;
59
+ }
60
+ return [value];
61
+ }
62
+ syncItems() {
63
+ const items = this.el.querySelectorAll('af-nav-accordion-item');
64
+ items.forEach((element) => {
65
+ const item = element;
66
+ if (item.itemId) {
67
+ item.open = this.internalValue.includes(item.itemId);
68
+ }
69
+ });
70
+ }
71
+ componentDidLoad() {
72
+ this.syncItems();
73
+ }
74
+ render() {
75
+ return (index.h(index.Host, { key: '891409dbe4cbb089085aa5b942c5f3c9f4a9bfe5', class: { [`breakpoint-${this.breakpoint}`]: true, [`mode-${this.mode}`]: true } }, index.h("div", { key: 'b52051c0d7df92a5bc34400b55156fb638acbccc', class: "nav-accordion" }, index.h("slot", { key: '86cbd9894e0c8bb44d8001a53df01822b8806542' }))));
76
+ }
77
+ get el() { return index.getElement(this); }
78
+ };
79
+ AfNavAccordion.style = afNavAccordionCss;
80
+
81
+ exports.af_nav_accordion = AfNavAccordion;
82
+ //# sourceMappingURL=af-nav-accordion.entry.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"af-nav-accordion.entry.cjs.js","sources":["src/components/af-nav-accordion/af-nav-accordion.css?tag=af-nav-accordion&encapsulation=scoped","src/components/af-nav-accordion/af-nav-accordion.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n.nav-accordion {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n/* Mobile breakpoint styling */\n:host(.breakpoint-mobile) .nav-accordion {\n /* Mobile-specific styles */\n}\n\n/* Desktop breakpoint styling */\n:host(.breakpoint-desktop) .nav-accordion {\n /* Desktop-specific styles if needed */\n}\n\n","import { Component, h, Prop, Host, Event, EventEmitter, Element, State, Listen } from '@stencil/core';\n\n/**\n * Navigation-styled accordion for mobile menu patterns.\n * A wrapper around af-accordion with navigation-specific styling.\n * \n * @slot - Place af-nav-accordion-item components here\n */\n@Component({\n tag: 'af-nav-accordion',\n styleUrl: 'af-nav-accordion.css',\n shadow: false,\n scoped: true,\n})\nexport class AfNavAccordion {\n @Element() el!: HTMLElement;\n\n /**\n * Behavior mode for the accordion.\n * - `independent`: Multiple items can be open simultaneously\n * - `exclusive`: Only one item can be open at a time (typical for mobile nav)\n */\n @Prop() mode: 'independent' | 'exclusive' = 'exclusive';\n\n /**\n * Breakpoint for styling\n * - `desktop`: Desktop-specific styles\n * - `mobile`: Mobile-specific styles (default for nav menus)\n */\n @Prop({ reflect: true }) breakpoint: 'desktop' | 'mobile' = 'mobile';\n\n /**\n * Currently open item ID(s)\n */\n @Prop({ mutable: true }) value?: string | string[];\n\n /**\n * Emitted when the open state of items changes\n */\n @Event({ eventName: 'af-nav-accordion-change' }) navAccordionChange!: EventEmitter<{ value: string | string[] | null }>;\n\n @State() internalValue: string[] = [];\n\n componentWillLoad() {\n this.internalValue = this.normalizeValue(this.value);\n }\n\n /**\n * Listen for toggle events from child items\n */\n @Listen('af-nav-accordion-item-toggle')\n handleItemToggle(event: CustomEvent<{ itemId: string; open: boolean }>) {\n event.stopPropagation();\n const { itemId, open } = event.detail;\n\n let newValue: string[];\n\n if (this.mode === 'exclusive') {\n newValue = open ? [itemId] : [];\n } else {\n if (open) {\n newValue = [...this.internalValue, itemId];\n } else {\n newValue = this.internalValue.filter(id => id !== itemId);\n }\n }\n\n this.internalValue = newValue;\n this.syncItems();\n\n const emitValue = this.mode === 'exclusive' \n ? (newValue.length > 0 ? newValue[0] : null)\n : newValue;\n this.navAccordionChange.emit({ value: emitValue });\n }\n\n private normalizeValue(value: string | string[] | undefined): string[] {\n if (value === undefined || value === null) {\n return [];\n }\n if (Array.isArray(value)) {\n return this.mode === 'exclusive' ? value.slice(0, 1) : value;\n }\n return [value];\n }\n\n private syncItems() {\n const items = this.el.querySelectorAll('af-nav-accordion-item');\n items.forEach((element) => {\n const item = element as HTMLElement & { itemId?: string; open?: boolean };\n if (item.itemId) {\n item.open = this.internalValue.includes(item.itemId);\n }\n });\n }\n\n componentDidLoad() {\n this.syncItems();\n }\n\n render() {\n return (\n <Host class={{ [`breakpoint-${this.breakpoint}`]: true, [`mode-${this.mode}`]: true }}>\n <div class=\"nav-accordion\">\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n\n"],"names":["h","Host"],"mappings":";;;;AAAA,MAAM,iBAAiB,GAAG,mIAAmI;;MCchJ,cAAc,GAAA,MAAA;AAN3B,IAAA,WAAA,CAAA,OAAA,EAAA;;;AASE;;;;AAIG;AACK,QAAA,IAAI,CAAA,IAAA,GAAgC,WAAW;AAEvD;;;;AAIG;AACsB,QAAA,IAAU,CAAA,UAAA,GAAyB,QAAQ;AAY3D,QAAA,IAAa,CAAA,aAAA,GAAa,EAAE;AAoEtC;IAlEC,iBAAiB,GAAA;QACf,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC;;AAGtD;;AAEG;AAEH,IAAA,gBAAgB,CAAC,KAAqD,EAAA;QACpE,KAAK,CAAC,eAAe,EAAE;QACvB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,MAAM;AAErC,QAAA,IAAI,QAAkB;AAEtB,QAAA,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE;AAC7B,YAAA,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE;;aAC1B;YACL,IAAI,IAAI,EAAE;gBACR,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC;;iBACrC;AACL,gBAAA,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,MAAM,CAAC;;;AAI7D,QAAA,IAAI,CAAC,aAAa,GAAG,QAAQ;QAC7B,IAAI,CAAC,SAAS,EAAE;AAEhB,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,KAAK;AAC9B,eAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI;cACzC,QAAQ;QACZ,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;;AAG5C,IAAA,cAAc,CAAC,KAAoC,EAAA;QACzD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;AACzC,YAAA,OAAO,EAAE;;AAEX,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,OAAO,IAAI,CAAC,IAAI,KAAK,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK;;QAE9D,OAAO,CAAC,KAAK,CAAC;;IAGR,SAAS,GAAA;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,uBAAuB,CAAC;AAC/D,QAAA,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,KAAI;YACxB,MAAM,IAAI,GAAG,OAA4D;AACzE,YAAA,IAAI,IAAI,CAAC,MAAM,EAAE;AACf,gBAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;;AAExD,SAAC,CAAC;;IAGJ,gBAAgB,GAAA;QACd,IAAI,CAAC,SAAS,EAAE;;IAGlB,MAAM,GAAA;AACJ,QAAA,QACEA,OAAC,CAAAC,UAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,EAAE,CAAC,CAAc,WAAA,EAAA,IAAI,CAAC,UAAU,CAAE,CAAA,GAAG,IAAI,EAAE,CAAC,CAAQ,KAAA,EAAA,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,EAAA,EACnFD,OAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,eAAe,EAAA,EACxBA,OAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACT,CACD;;;;;;;;"}
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-ybEiHT0b.js');
3
+ var index = require('./index-n-fnurTP.js');
4
4
 
5
- const afNavCardCss = ":host{display:block}.card-link{text-decoration:none;color:inherit;display:block}.nav-card{display:flex;flex-direction:column;position:relative;width:290px;height:360px;min-height:360px;border-radius:var(--radii-image, 16px);overflow:hidden;justify-content:flex-end;transition:transform 0.2s ease}.nav-card.is-hovered{transform:scale(1.02)}.image-container{position:absolute;inset:0;overflow:hidden}.card-image{width:100%;height:100%;object-fit:cover;object-position:center}.overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to bottom, rgba(0, 0, 0, 0), #000000);padding:80px 24px 24px 24px;display:flex;flex-direction:column;align-items:flex-start}.heading{margin:0;font-family:var(--typography-headingfont, 'NeuSans', 'Inter', system-ui, sans-serif);font-weight:var(--font-weight-book, 500);font-size:24px;line-height:1.2;letter-spacing:-0.48px;color:#ffffff;width:100%}.nav-card.is-hovered .heading{text-decoration:underline}";
5
+ const afNavCardCss = ".sc-af-nav-card-h{display:block}.card-link.sc-af-nav-card{text-decoration:none;color:inherit;display:block}.nav-card.sc-af-nav-card{display:flex;flex-direction:column;position:relative;width:290px;height:360px;min-height:360px;border-radius:var(--radii-image, 16px);overflow:hidden;justify-content:flex-end;transition:transform 0.2s ease}.nav-card.is-hovered.sc-af-nav-card{transform:scale(1.02)}.image-container.sc-af-nav-card{position:absolute;inset:0;overflow:hidden}.card-image.sc-af-nav-card{width:100%;height:100%;object-fit:cover;object-position:center}.overlay.sc-af-nav-card{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to bottom, rgba(0, 0, 0, 0), #000000);padding:80px 24px 24px 24px;display:flex;flex-direction:column;align-items:flex-start}.heading.sc-af-nav-card{margin:0;font-family:var(--typography-headingfont, 'NeuSans', 'Inter', system-ui, sans-serif);font-weight:var(--font-weight-book, 500);font-size:24px;line-height:1.2;letter-spacing:-0.48px;color:#ffffff;width:100%}.nav-card.is-hovered.sc-af-nav-card .heading.sc-af-nav-card{text-decoration:underline}";
6
6
 
7
7
  const AfNavCard = class {
8
8
  constructor(hostRef) {
@@ -1 +1 @@
1
- {"version":3,"file":"af-nav-card.entry.cjs.js","sources":["src/components/af-nav-card/af-nav-card.css?tag=af-nav-card&encapsulation=shadow","src/components/af-nav-card/af-nav-card.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.card-link {\n text-decoration: none;\n color: inherit;\n display: block;\n}\n\n/* Card container */\n.nav-card {\n display: flex;\n flex-direction: column;\n position: relative;\n width: 290px;\n height: 360px;\n min-height: 360px;\n border-radius: var(--radii-image, 16px);\n overflow: hidden;\n justify-content: flex-end;\n transition: transform 0.2s ease;\n}\n\n.nav-card.is-hovered {\n transform: scale(1.02);\n}\n\n/* Image container */\n.image-container {\n position: absolute;\n inset: 0;\n overflow: hidden;\n}\n\n.card-image {\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: center;\n}\n\n/* Gradient overlay */\n.overlay {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n background: linear-gradient(to bottom, rgba(0, 0, 0, 0), #000000);\n padding: 80px 24px 24px 24px;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n}\n\n/* Heading */\n.heading {\n margin: 0;\n font-family: var(--typography-headingfont, 'NeuSans', 'Inter', system-ui, sans-serif);\n font-weight: var(--font-weight-book, 500);\n font-size: 24px;\n line-height: 1.2;\n letter-spacing: -0.48px;\n color: #ffffff;\n width: 100%;\n}\n\n.nav-card.is-hovered .heading {\n text-decoration: underline;\n}\n","import { Component, h, Prop, Host, State } from '@stencil/core';\n\n/**\n * A navigation card component for featured article content in mega-menu dropdowns.\n * Displays an image with a gradient overlay and headline text.\n * \n * **Usage:**\n * - Place in the `sidebar` slot of NavMenuNest\n * - Provide imageSrc, heading, and href props\n * \n * **Hover behavior:**\n * - Slight scale effect (1.02)\n * - Headline underline\n */\n@Component({\n tag: 'af-nav-card',\n styleUrl: 'af-nav-card.css',\n shadow: true\n})\nexport class AfNavCard {\n /**\n * The headline text displayed over the image\n */\n @Prop() heading?: string;\n\n /**\n * URL to navigate to when clicked\n */\n @Prop() href?: string;\n\n /**\n * Image source URL for the background\n */\n @Prop() imageSrc?: string;\n\n /**\n * Alternative text for the image\n */\n @Prop() imageAlt: string = '';\n\n @State() isHovered: boolean = false;\n\n private handleMouseEnter = () => {\n this.isHovered = true;\n };\n\n private handleMouseLeave = () => {\n this.isHovered = false;\n };\n\n render() {\n const classes = {\n 'nav-card': true,\n 'is-hovered': this.isHovered\n };\n\n const content = (\n <div\n class={classes}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n >\n <div class=\"image-container\">\n {this.imageSrc && (\n <img src={this.imageSrc} alt={this.imageAlt} class=\"card-image\" />\n )}\n </div>\n <div class=\"overlay\">\n {this.heading && (\n <h3 class=\"heading\">{this.heading}</h3>\n )}\n </div>\n </div>\n );\n\n if (this.href) {\n return (\n <Host>\n <a href={this.href} class=\"card-link\">\n {content}\n </a>\n </Host>\n );\n }\n\n return <Host>{content}</Host>;\n }\n}\n"],"names":["h","Host"],"mappings":";;;;AAAA,MAAM,YAAY,GAAG,47BAA47B;;MCmBp8B,SAAS,GAAA,MAAA;AALtB,IAAA,WAAA,CAAA,OAAA,EAAA;;AAqBE;;AAEG;AACK,QAAA,IAAQ,CAAA,QAAA,GAAW,EAAE;AAEpB,QAAA,IAAS,CAAA,SAAA,GAAY,KAAK;AAE3B,QAAA,IAAgB,CAAA,gBAAA,GAAG,MAAK;AAC9B,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AACvB,SAAC;AAEO,QAAA,IAAgB,CAAA,gBAAA,GAAG,MAAK;AAC9B,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACxB,SAAC;AAuCF;IArCC,MAAM,GAAA;AACJ,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,IAAI,CAAC;SACpB;QAED,MAAM,OAAO,IACXA,iBACE,KAAK,EAAE,OAAO,EACd,YAAY,EAAE,IAAI,CAAC,gBAAgB,EACnC,YAAY,EAAE,IAAI,CAAC,gBAAgB,EAAA,EAEnCA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,iBAAiB,EACzB,EAAA,IAAI,CAAC,QAAQ,KACZA,OAAK,CAAA,KAAA,EAAA,EAAA,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAC,YAAY,EAAG,CAAA,CACnE,CACG,EACNA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,SAAS,EAAA,EACjB,IAAI,CAAC,OAAO,KACXA,OAAI,CAAA,IAAA,EAAA,EAAA,KAAK,EAAC,SAAS,EAAA,EAAE,IAAI,CAAC,OAAO,CAAM,CACxC,CACG,CACF,CACP;AAED,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,QACEA,QAACC,UAAI,EAAA,IAAA,EACHD,OAAA,CAAA,GAAA,EAAA,EAAG,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAC,WAAW,EAClC,EAAA,OAAO,CACN,CACC;;QAIX,OAAOA,OAAC,CAAAC,UAAI,EAAE,IAAA,EAAA,OAAO,CAAQ;;;;;;;"}
1
+ {"version":3,"file":"af-nav-card.entry.cjs.js","sources":["src/components/af-nav-card/af-nav-card.css?tag=af-nav-card&encapsulation=scoped","src/components/af-nav-card/af-nav-card.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.card-link {\n text-decoration: none;\n color: inherit;\n display: block;\n}\n\n/* Card container */\n.nav-card {\n display: flex;\n flex-direction: column;\n position: relative;\n width: 290px;\n height: 360px;\n min-height: 360px;\n border-radius: var(--radii-image, 16px);\n overflow: hidden;\n justify-content: flex-end;\n transition: transform 0.2s ease;\n}\n\n.nav-card.is-hovered {\n transform: scale(1.02);\n}\n\n/* Image container */\n.image-container {\n position: absolute;\n inset: 0;\n overflow: hidden;\n}\n\n.card-image {\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: center;\n}\n\n/* Gradient overlay */\n.overlay {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n background: linear-gradient(to bottom, rgba(0, 0, 0, 0), #000000);\n padding: 80px 24px 24px 24px;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n}\n\n/* Heading */\n.heading {\n margin: 0;\n font-family: var(--typography-headingfont, 'NeuSans', 'Inter', system-ui, sans-serif);\n font-weight: var(--font-weight-book, 500);\n font-size: 24px;\n line-height: 1.2;\n letter-spacing: -0.48px;\n color: #ffffff;\n width: 100%;\n}\n\n.nav-card.is-hovered .heading {\n text-decoration: underline;\n}\n","import { Component, h, Prop, Host, State } from '@stencil/core';\n\n/**\n * A navigation card component for featured article content in mega-menu dropdowns.\n * Displays an image with a gradient overlay and headline text.\n * \n * **Usage:**\n * - Place in the `sidebar` slot of NavMenuNest\n * - Provide imageSrc, heading, and href props\n * \n * **Hover behavior:**\n * - Slight scale effect (1.02)\n * - Headline underline\n */\n@Component({\n tag: 'af-nav-card',\n styleUrl: 'af-nav-card.css',\n shadow: false,\n scoped: true,\n})\nexport class AfNavCard {\n /**\n * The headline text displayed over the image\n */\n @Prop() heading?: string;\n\n /**\n * URL to navigate to when clicked\n */\n @Prop() href?: string;\n\n /**\n * Image source URL for the background\n */\n @Prop() imageSrc?: string;\n\n /**\n * Alternative text for the image\n */\n @Prop() imageAlt: string = '';\n\n @State() isHovered: boolean = false;\n\n private handleMouseEnter = () => {\n this.isHovered = true;\n };\n\n private handleMouseLeave = () => {\n this.isHovered = false;\n };\n\n render() {\n const classes = {\n 'nav-card': true,\n 'is-hovered': this.isHovered\n };\n\n const content = (\n <div\n class={classes}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n >\n <div class=\"image-container\">\n {this.imageSrc && (\n <img src={this.imageSrc} alt={this.imageAlt} class=\"card-image\" />\n )}\n </div>\n <div class=\"overlay\">\n {this.heading && (\n <h3 class=\"heading\">{this.heading}</h3>\n )}\n </div>\n </div>\n );\n\n if (this.href) {\n return (\n <Host>\n <a href={this.href} class=\"card-link\">\n {content}\n </a>\n </Host>\n );\n }\n\n return <Host>{content}</Host>;\n }\n}\n"],"names":["h","Host"],"mappings":";;;;AAAA,MAAM,YAAY,GAAG,+kCAA+kC;;MCoBvlC,SAAS,GAAA,MAAA;AANtB,IAAA,WAAA,CAAA,OAAA,EAAA;;AAsBE;;AAEG;AACK,QAAA,IAAQ,CAAA,QAAA,GAAW,EAAE;AAEpB,QAAA,IAAS,CAAA,SAAA,GAAY,KAAK;AAE3B,QAAA,IAAgB,CAAA,gBAAA,GAAG,MAAK;AAC9B,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AACvB,SAAC;AAEO,QAAA,IAAgB,CAAA,gBAAA,GAAG,MAAK;AAC9B,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACxB,SAAC;AAuCF;IArCC,MAAM,GAAA;AACJ,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,IAAI,CAAC;SACpB;QAED,MAAM,OAAO,IACXA,iBACE,KAAK,EAAE,OAAO,EACd,YAAY,EAAE,IAAI,CAAC,gBAAgB,EACnC,YAAY,EAAE,IAAI,CAAC,gBAAgB,EAAA,EAEnCA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,iBAAiB,EACzB,EAAA,IAAI,CAAC,QAAQ,KACZA,OAAK,CAAA,KAAA,EAAA,EAAA,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAC,YAAY,EAAG,CAAA,CACnE,CACG,EACNA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,SAAS,EAAA,EACjB,IAAI,CAAC,OAAO,KACXA,OAAI,CAAA,IAAA,EAAA,EAAA,KAAK,EAAC,SAAS,EAAA,EAAE,IAAI,CAAC,OAAO,CAAM,CACxC,CACG,CACF,CACP;AAED,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,QACEA,QAACC,UAAI,EAAA,IAAA,EACHD,OAAA,CAAA,GAAA,EAAA,EAAG,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAC,WAAW,EAClC,EAAA,OAAO,CACN,CACC;;QAIX,OAAOA,OAAC,CAAAC,UAAI,EAAE,IAAA,EAAA,OAAO,CAAQ;;;;;;;"}
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-ybEiHT0b.js');
3
+ var index = require('./index-n-fnurTP.js');
4
4
 
5
- const afNavMenuNestCss = ":host{display:inline-block}.nav-menu-nest{display:inline-flex;background:var(--colour-background-base, #ffffff);border-radius:32px}.nav-menu-nest.breakpoint-desktop{flex-direction:row;align-items:stretch}.nav-menu-nest.breakpoint-desktop .menu-columns{display:flex;flex-direction:row;gap:32px;padding:24px 0 32px 40px}.nav-menu-nest.breakpoint-desktop .menu-sidebar{display:flex;flex-direction:column;padding:24px 40px 32px 32px}.nav-menu-nest.breakpoint-desktop .menu-sidebar ::slotted(af-nav-menu){padding-top:16px}.nav-menu-nest.breakpoint-desktop .menu-sidebar ::slotted(af-nav-card){margin-top:16px}.nav-menu-nest.breakpoint-desktop .menu-columns ::slotted(af-nav-menu){border-right:1px solid var(--colour-background-border-subtle, #e8eeed);padding-right:32px;padding-top:16px}.nav-menu-nest.breakpoint-desktop .menu-columns ::slotted(af-nav-menu:last-of-type){border-right:none;padding-right:0}:host([show-sidebar-border]) .nav-menu-nest.breakpoint-desktop .menu-columns ::slotted(af-nav-menu:last-of-type){border-right:1px solid var(--colour-background-border-heavy, #c6d5d1);padding-right:32px}.nav-menu-nest.breakpoint-mobile{flex-direction:column;border-radius:0}.nav-menu-nest.breakpoint-mobile .menu-columns{display:flex;flex-direction:column}.nav-menu-nest.breakpoint-mobile .menu-sidebar{display:flex;flex-direction:column;padding:32px 12px;border-top:1px solid var(--colour-background-border-subtle, #e8eeed)}.nav-menu-nest.breakpoint-mobile .menu-columns ::slotted(af-nav-menu){border-right:none;border-bottom:1px solid var(--colour-background-border-subtle, #e8eeed)}";
5
+ const afNavMenuNestCss = ".sc-af-nav-menu-nest-h{display:inline-block}.nav-menu-nest.sc-af-nav-menu-nest{display:inline-flex;background:var(--af-background-base, #ffffff);border-radius:32px}.nav-menu-nest.breakpoint-desktop.sc-af-nav-menu-nest{flex-direction:row;align-items:stretch}.nav-menu-nest.breakpoint-desktop.sc-af-nav-menu-nest .menu-columns.sc-af-nav-menu-nest{display:flex;flex-direction:row;gap:32px;padding:24px 0 32px 40px}.nav-menu-nest.breakpoint-desktop.sc-af-nav-menu-nest .menu-sidebar.sc-af-nav-menu-nest{display:flex;flex-direction:column;padding:24px 40px 32px 32px}.nav-menu-nest.breakpoint-desktop .menu-sidebar.sc-af-nav-menu-nest-s>af-nav-menu,.nav-menu-nest.breakpoint-desktop .menu-sidebar .sc-af-nav-menu-nest-s>af-nav-menu{padding-top:16px}.nav-menu-nest.breakpoint-desktop .menu-sidebar.sc-af-nav-menu-nest-s>af-nav-card,.nav-menu-nest.breakpoint-desktop .menu-sidebar .sc-af-nav-menu-nest-s>af-nav-card{margin-top:16px}.nav-menu-nest.breakpoint-desktop .menu-columns.sc-af-nav-menu-nest-s>af-nav-menu,.nav-menu-nest.breakpoint-desktop .menu-columns .sc-af-nav-menu-nest-s>af-nav-menu{border-right:1px solid var(--af-background-border-subtle, #e8eeed);padding-right:32px;padding-top:16px}.nav-menu-nest.breakpoint-desktop .menu-columns.sc-af-nav-menu-nest-s>af-nav-menu,.nav-menu-nest.breakpoint-desktop .menu-columns.sc-af-nav-menu-nest-s>af-nav-menu:last-of-type,.nav-menu-nest.breakpoint-desktop .menu-columns .sc-af-nav-menu-nest-s>af-nav-menu:last-of-type{border-right:none;padding-right:0}.sc-af-nav-menu-nest-h[show-sidebar-border] .nav-menu-nest.breakpoint-desktop .menu-columns.sc-af-nav-menu-nest-s>af-nav-menu,.nav-menu-nest.breakpoint-desktop .menu-columns.sc-af-nav-menu-nest-s>af-nav-menu:last-of-type,.nav-menu-nest.breakpoint-desktop .menu-columns .sc-af-nav-menu-nest-s>af-nav-menu:last-of-type{border-right:1px solid var(--af-background-border-heavy, #c6d5d1);padding-right:32px}.nav-menu-nest.breakpoint-mobile.sc-af-nav-menu-nest{flex-direction:column;border-radius:0}.nav-menu-nest.breakpoint-mobile.sc-af-nav-menu-nest .menu-columns.sc-af-nav-menu-nest{display:flex;flex-direction:column}.nav-menu-nest.breakpoint-mobile.sc-af-nav-menu-nest .menu-sidebar.sc-af-nav-menu-nest{display:flex;flex-direction:column;padding:32px 12px;border-top:1px solid var(--af-background-border-subtle, #e8eeed)}.nav-menu-nest.breakpoint-mobile .menu-columns.sc-af-nav-menu-nest-s>af-nav-menu,.nav-menu-nest.breakpoint-mobile .menu-columns .sc-af-nav-menu-nest-s>af-nav-menu{border-right:none;border-bottom:1px solid var(--af-background-border-subtle, #e8eeed)}";
6
6
 
7
7
  const AfNavMenuNest = class {
8
8
  constructor(hostRef) {
@@ -31,10 +31,11 @@ const AfNavMenuNest = class {
31
31
  render() {
32
32
  const classes = {
33
33
  'nav-menu-nest': true,
34
+ 'theme-white': true,
34
35
  [`type-${this.type}`]: true,
35
36
  [`breakpoint-${this.breakpoint}`]: true
36
37
  };
37
- return (index.h(index.Host, { key: '238b95cdf9c910302351b6dc07fb8c4dff386168' }, index.h("div", { key: '7cc941c220c635d6d22520d792122eaad98864ca', class: classes }, index.h("div", { key: 'b5437b4a10a1bc01ff23117e56928a96ed8e1f9e', class: "menu-columns" }, index.h("slot", { key: 'ab9d8520730622ee52c8d8d095d6bd5ef0b10419' })), index.h("div", { key: '1a859f0c957850a52fc4c24873bc4960ad8a96f3', class: "menu-sidebar" }, index.h("slot", { key: 'ca7ed122f10996d06bce10c6d80281283ef12a62', name: "sidebar" })))));
38
+ return (index.h(index.Host, { key: '3b620840709c0494cc1bb11c1881824550b18611' }, index.h("div", { key: '7291119d7c8cebea30375f4c301885290413b4b4', class: classes }, index.h("div", { key: '270b6882e07b3b44bb3b4a0cd9c6b7b063faffa4', class: "menu-columns" }, index.h("slot", { key: 'f82540660813779579dfc1ba76bbc0e892cfae15' })), index.h("div", { key: 'e27257bae1cc4bd458c5f19a29d4bbaee41f5a5a', class: "menu-sidebar" }, index.h("slot", { key: '23e7fe51b7c1094edf89faca812e29bd74044381', name: "sidebar" })))));
38
39
  }
39
40
  };
40
41
  AfNavMenuNest.style = afNavMenuNestCss;