@affinda/wc 0.0.1 → 0.0.3

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 (227) hide show
  1. package/dist/affinda/af-aspect-ratio.entry.esm.js.map +1 -0
  2. package/dist/affinda/af-button-group.entry.esm.js.map +1 -0
  3. package/dist/affinda/af-button.entry.esm.js.map +1 -0
  4. package/dist/affinda/af-color-swatch.entry.esm.js.map +1 -0
  5. package/dist/affinda/af-container.entry.esm.js.map +1 -0
  6. package/dist/affinda/af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.esm.js.map +1 -0
  7. package/dist/affinda/af-icon-button.entry.esm.js.map +1 -0
  8. package/dist/affinda/af-typography-lockup.entry.esm.js.map +1 -0
  9. package/dist/affinda/affinda.css +1 -1
  10. package/dist/affinda/affinda.esm.js +1 -1
  11. package/dist/affinda/index.esm.js +1 -1
  12. package/dist/affinda/index.esm.js.map +1 -1
  13. package/dist/affinda/p-540af9d9.entry.js +2 -0
  14. package/dist/affinda/p-540af9d9.entry.js.map +1 -0
  15. package/dist/affinda/p-619bc077.entry.js +2 -0
  16. package/dist/affinda/p-619bc077.entry.js.map +1 -0
  17. package/dist/affinda/p-6b07f590.entry.js +2 -0
  18. package/dist/affinda/p-6b07f590.entry.js.map +1 -0
  19. package/dist/affinda/p-8d3b4917.entry.js +2 -0
  20. package/dist/affinda/p-8d3b4917.entry.js.map +1 -0
  21. package/dist/affinda/p-9d0e6ed1.entry.js +2 -0
  22. package/dist/affinda/p-9d0e6ed1.entry.js.map +1 -0
  23. package/dist/affinda/p-DxVtR6vj.js +3 -0
  24. package/dist/affinda/p-DxVtR6vj.js.map +1 -0
  25. package/dist/affinda/p-afbe9cb3.entry.js +2 -0
  26. package/dist/affinda/p-afbe9cb3.entry.js.map +1 -0
  27. package/dist/affinda/p-cbb06a14.entry.js +2 -0
  28. package/dist/affinda/p-cbb06a14.entry.js.map +1 -0
  29. package/dist/affinda/p-e274e11a.entry.js +2 -0
  30. package/dist/affinda/p-e274e11a.entry.js.map +1 -0
  31. package/dist/cjs/af-aspect-ratio.cjs.entry.js +83 -0
  32. package/dist/cjs/af-aspect-ratio.entry.cjs.js.map +1 -0
  33. package/dist/cjs/af-button-group.cjs.entry.js +30 -0
  34. package/dist/cjs/af-button-group.entry.cjs.js.map +1 -0
  35. package/dist/cjs/af-button.cjs.entry.js +48 -0
  36. package/dist/cjs/af-button.entry.cjs.js.map +1 -0
  37. package/dist/cjs/af-color-swatch.cjs.entry.js +23 -0
  38. package/dist/cjs/af-color-swatch.entry.cjs.js.map +1 -0
  39. package/dist/cjs/af-container.cjs.entry.js +26 -0
  40. package/dist/cjs/af-container.entry.cjs.js.map +1 -0
  41. package/dist/cjs/af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.cjs.js.map +1 -0
  42. package/dist/cjs/af-heading_5.cjs.entry.js +128 -0
  43. package/dist/cjs/af-icon-button.cjs.entry.js +44 -0
  44. package/dist/cjs/af-icon-button.entry.cjs.js.map +1 -0
  45. package/dist/cjs/af-typography-lockup.cjs.entry.js +45 -0
  46. package/dist/cjs/af-typography-lockup.entry.cjs.js.map +1 -0
  47. package/dist/cjs/affinda.cjs.js +2 -2
  48. package/dist/cjs/{index-5BGpYleS.js → index-E2jkaTPt.js} +92 -61
  49. package/dist/cjs/index-E2jkaTPt.js.map +1 -0
  50. package/dist/cjs/index.cjs.js +24 -136
  51. package/dist/cjs/index.cjs.js.map +1 -1
  52. package/dist/cjs/loader.cjs.js +2 -2
  53. package/dist/collection/collection-manifest.json +10 -3
  54. package/dist/collection/components/af-aspect-ratio/af-aspect-ratio.css +17 -0
  55. package/dist/collection/components/af-aspect-ratio/af-aspect-ratio.js +117 -0
  56. package/dist/collection/components/af-aspect-ratio/af-aspect-ratio.js.map +1 -0
  57. package/dist/collection/components/af-button/af-button.css +151 -42
  58. package/dist/collection/components/af-button/af-button.js +62 -57
  59. package/dist/collection/components/af-button/af-button.js.map +1 -1
  60. package/dist/collection/components/af-button-group/af-button-group.css +22 -0
  61. package/dist/collection/components/af-button-group/af-button-group.js +77 -0
  62. package/dist/collection/components/af-button-group/af-button-group.js.map +1 -0
  63. package/dist/collection/components/af-color-swatch/af-color-swatch.css +42 -0
  64. package/dist/collection/components/af-color-swatch/af-color-swatch.js +88 -0
  65. package/dist/collection/components/af-color-swatch/af-color-swatch.js.map +1 -0
  66. package/dist/collection/components/af-container/af-container.css +76 -0
  67. package/dist/collection/components/af-container/af-container.js +57 -0
  68. package/dist/collection/components/af-container/af-container.js.map +1 -0
  69. package/dist/collection/components/af-heading/af-heading.css +99 -0
  70. package/dist/collection/components/af-heading/af-heading.js +86 -0
  71. package/dist/collection/components/af-heading/af-heading.js.map +1 -0
  72. package/dist/collection/components/af-icon-button/af-icon-button.css +140 -41
  73. package/dist/collection/components/af-icon-button/af-icon-button.js +81 -57
  74. package/dist/collection/components/af-icon-button/af-icon-button.js.map +1 -1
  75. package/dist/collection/components/af-logo/af-logo.css +10 -0
  76. package/dist/collection/components/af-logo/af-logo.js +22 -0
  77. package/dist/collection/components/af-logo/af-logo.js.map +1 -0
  78. package/dist/collection/components/af-nav-item/af-nav-item.css +146 -0
  79. package/dist/collection/components/af-nav-item/af-nav-item.js +134 -0
  80. package/dist/collection/components/af-nav-item/af-nav-item.js.map +1 -0
  81. package/dist/collection/components/af-navbar/af-navbar.css +119 -0
  82. package/dist/collection/components/af-navbar/af-navbar.js +23 -0
  83. package/dist/collection/components/af-navbar/af-navbar.js.map +1 -0
  84. package/dist/collection/components/af-text/af-text.css +61 -0
  85. package/dist/collection/components/af-text/af-text.js +96 -0
  86. package/dist/collection/components/af-text/af-text.js.map +1 -0
  87. package/dist/collection/components/af-typography-lockup/af-typography-lockup.css +168 -0
  88. package/dist/collection/components/af-typography-lockup/af-typography-lockup.js +151 -0
  89. package/dist/collection/components/af-typography-lockup/af-typography-lockup.js.map +1 -0
  90. package/dist/collection/components.js +10 -3
  91. package/dist/collection/components.js.map +1 -1
  92. package/dist/components/af-aspect-ratio.d.ts +11 -0
  93. package/dist/components/af-aspect-ratio.js +9 -0
  94. package/dist/components/af-aspect-ratio.js.map +1 -0
  95. package/dist/components/af-button-group.d.ts +11 -0
  96. package/dist/components/af-button-group.js +9 -0
  97. package/dist/components/af-button-group.js.map +1 -0
  98. package/dist/components/af-button.js +1 -1
  99. package/dist/components/af-color-swatch.d.ts +11 -0
  100. package/dist/components/af-color-swatch.js +9 -0
  101. package/dist/components/af-color-swatch.js.map +1 -0
  102. package/dist/components/af-container.d.ts +11 -0
  103. package/dist/components/af-container.js +9 -0
  104. package/dist/components/af-container.js.map +1 -0
  105. package/dist/components/af-heading.d.ts +11 -0
  106. package/dist/components/af-heading.js +9 -0
  107. package/dist/components/af-heading.js.map +1 -0
  108. package/dist/components/af-icon-button.js +1 -1
  109. package/dist/components/{af-card.d.ts → af-logo.d.ts} +4 -4
  110. package/dist/components/af-logo.js +9 -0
  111. package/dist/components/af-logo.js.map +1 -0
  112. package/dist/components/af-nav-item.d.ts +11 -0
  113. package/dist/components/af-nav-item.js +9 -0
  114. package/dist/components/af-nav-item.js.map +1 -0
  115. package/dist/components/{af-badge.d.ts → af-navbar.d.ts} +4 -4
  116. package/dist/components/af-navbar.js +9 -0
  117. package/dist/components/af-navbar.js.map +1 -0
  118. package/dist/components/{af-input.d.ts → af-text.d.ts} +4 -4
  119. package/dist/components/af-text.js +9 -0
  120. package/dist/components/af-text.js.map +1 -0
  121. package/dist/components/af-typography-lockup.d.ts +11 -0
  122. package/dist/components/af-typography-lockup.js +9 -0
  123. package/dist/components/af-typography-lockup.js.map +1 -0
  124. package/dist/components/index.js +13 -6
  125. package/dist/components/index.js.map +1 -1
  126. package/dist/components/p-B17zxKkI.js +35 -0
  127. package/dist/components/p-B17zxKkI.js.map +1 -0
  128. package/dist/components/p-BJDmHNDi.js +59 -0
  129. package/dist/components/p-BJDmHNDi.js.map +1 -0
  130. package/dist/components/p-BfmeW04T.js +50 -0
  131. package/dist/components/p-BfmeW04T.js.map +1 -0
  132. package/dist/components/p-BoU5qaPt.js +68 -0
  133. package/dist/components/p-BoU5qaPt.js.map +1 -0
  134. package/dist/components/p-CT_9_xN3.js +50 -0
  135. package/dist/components/p-CT_9_xN3.js.map +1 -0
  136. package/dist/components/{p-DOtgsZRB.js → p-CzaQ1fCu.js} +92 -65
  137. package/dist/components/p-CzaQ1fCu.js.map +1 -0
  138. package/dist/components/p-DG7Mtz0G.js +66 -0
  139. package/dist/components/p-DG7Mtz0G.js.map +1 -0
  140. package/dist/components/p-DcFGu6up.js +68 -0
  141. package/dist/components/p-DcFGu6up.js.map +1 -0
  142. package/dist/components/p-DfIqdEs7.js +45 -0
  143. package/dist/components/p-DfIqdEs7.js.map +1 -0
  144. package/dist/components/p-DqIqR4VU.js +102 -0
  145. package/dist/components/p-DqIqR4VU.js.map +1 -0
  146. package/dist/components/p-LEksuu7O.js +44 -0
  147. package/dist/components/p-LEksuu7O.js.map +1 -0
  148. package/dist/components/p-uhOM63Ux.js +71 -0
  149. package/dist/components/p-uhOM63Ux.js.map +1 -0
  150. package/dist/components/p-zBrKMKWE.js +35 -0
  151. package/dist/components/p-zBrKMKWE.js.map +1 -0
  152. package/dist/esm/af-aspect-ratio.entry.js +81 -0
  153. package/dist/esm/af-aspect-ratio.entry.js.map +1 -0
  154. package/dist/esm/af-button-group.entry.js +28 -0
  155. package/dist/esm/af-button-group.entry.js.map +1 -0
  156. package/dist/esm/af-button.entry.js +46 -0
  157. package/dist/esm/af-button.entry.js.map +1 -0
  158. package/dist/esm/af-color-swatch.entry.js +21 -0
  159. package/dist/esm/af-color-swatch.entry.js.map +1 -0
  160. package/dist/esm/af-container.entry.js +24 -0
  161. package/dist/esm/af-container.entry.js.map +1 -0
  162. package/dist/esm/af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.js.map +1 -0
  163. package/dist/esm/af-heading_5.entry.js +122 -0
  164. package/dist/esm/af-icon-button.entry.js +42 -0
  165. package/dist/esm/af-icon-button.entry.js.map +1 -0
  166. package/dist/esm/af-typography-lockup.entry.js +43 -0
  167. package/dist/esm/af-typography-lockup.entry.js.map +1 -0
  168. package/dist/esm/affinda.js +3 -3
  169. package/dist/esm/{index-o0tfWqnY.js → index-DxVtR6vj.js} +92 -61
  170. package/dist/esm/index-DxVtR6vj.js.map +1 -0
  171. package/dist/esm/index.js +9 -132
  172. package/dist/esm/index.js.map +1 -1
  173. package/dist/esm/loader.js +3 -3
  174. package/dist/types/components/af-aspect-ratio/af-aspect-ratio.d.ts +18 -0
  175. package/dist/types/components/af-button/af-button.d.ts +19 -11
  176. package/dist/types/components/af-button-group/af-button-group.d.ts +11 -0
  177. package/dist/types/components/af-color-swatch/af-color-swatch.d.ts +9 -0
  178. package/dist/types/components/af-container/af-container.d.ts +15 -0
  179. package/dist/types/components/af-heading/af-heading.d.ts +8 -0
  180. package/dist/types/components/af-icon-button/af-icon-button.d.ts +23 -11
  181. package/dist/types/components/af-logo/af-logo.d.ts +6 -0
  182. package/dist/types/components/af-nav-item/af-nav-item.d.ts +27 -0
  183. package/dist/types/components/af-navbar/af-navbar.d.ts +7 -0
  184. package/dist/types/components/af-text/af-text.d.ts +9 -0
  185. package/dist/types/components/af-typography-lockup/af-typography-lockup.d.ts +23 -0
  186. package/dist/types/components.d.ts +416 -163
  187. package/package.json +13 -13
  188. package/dist/affinda/af-badge.af-button.af-card.af-icon-button.af-input.entry.esm.js.map +0 -1
  189. package/dist/affinda/p-bca10492.entry.js +0 -2
  190. package/dist/affinda/p-bca10492.entry.js.map +0 -1
  191. package/dist/affinda/p-o0tfWqnY.js +0 -3
  192. package/dist/affinda/p-o0tfWqnY.js.map +0 -1
  193. package/dist/cjs/af-badge.af-button.af-card.af-icon-button.af-input.entry.cjs.js.map +0 -1
  194. package/dist/cjs/af-badge_5.cjs.entry.js +0 -13
  195. package/dist/cjs/index-5BGpYleS.js.map +0 -1
  196. package/dist/collection/components/af-badge/af-badge.css +0 -29
  197. package/dist/collection/components/af-badge/af-badge.js +0 -47
  198. package/dist/collection/components/af-badge/af-badge.js.map +0 -1
  199. package/dist/collection/components/af-card/af-card.css +0 -69
  200. package/dist/collection/components/af-card/af-card.js +0 -70
  201. package/dist/collection/components/af-card/af-card.js.map +0 -1
  202. package/dist/collection/components/af-input/af-input.css +0 -57
  203. package/dist/collection/components/af-input/af-input.js +0 -193
  204. package/dist/collection/components/af-input/af-input.js.map +0 -1
  205. package/dist/components/af-badge.js +0 -9
  206. package/dist/components/af-badge.js.map +0 -1
  207. package/dist/components/af-card.js +0 -9
  208. package/dist/components/af-card.js.map +0 -1
  209. package/dist/components/af-input.js +0 -9
  210. package/dist/components/af-input.js.map +0 -1
  211. package/dist/components/p-B7I93sz2.js +0 -39
  212. package/dist/components/p-B7I93sz2.js.map +0 -1
  213. package/dist/components/p-CZd1ieht.js +0 -62
  214. package/dist/components/p-CZd1ieht.js.map +0 -1
  215. package/dist/components/p-D6PwARU0.js +0 -59
  216. package/dist/components/p-D6PwARU0.js.map +0 -1
  217. package/dist/components/p-DOtgsZRB.js.map +0 -1
  218. package/dist/components/p-DZIXhvI0.js +0 -44
  219. package/dist/components/p-DZIXhvI0.js.map +0 -1
  220. package/dist/components/p-zIKPa48S.js +0 -62
  221. package/dist/components/p-zIKPa48S.js.map +0 -1
  222. package/dist/esm/af-badge.af-button.af-card.af-icon-button.af-input.entry.js.map +0 -1
  223. package/dist/esm/af-badge_5.entry.js +0 -3
  224. package/dist/esm/index-o0tfWqnY.js.map +0 -1
  225. package/dist/types/components/af-badge/af-badge.d.ts +0 -5
  226. package/dist/types/components/af-card/af-card.d.ts +0 -7
  227. package/dist/types/components/af-input/af-input.d.ts +0 -24
@@ -0,0 +1,2 @@
1
+ import{r as e,h as a,H as i}from"./p-DxVtR6vj.js";const t=":host{display:block}.heading{margin:0;padding:0;font-family:'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;font-weight:500;color:#14343b;letter-spacing:-0.02em}.align-left{text-align:left}.align-center{text-align:center}.align-right{text-align:right}.level-xl{font-size:50px;line-height:1}@media (min-width: 768px){.level-xl{font-size:80px}}.level-1{font-size:38px;line-height:1}@media (min-width: 768px){.level-1{font-size:56px}}.level-2{font-size:32px;line-height:1}@media (min-width: 768px){.level-2{font-size:44px}}.level-3{font-size:25px;line-height:1}@media (min-width: 768px){.level-3{font-size:34px}}.level-4{font-size:20px;line-height:1.1}@media (min-width: 768px){.level-4{font-size:24px;line-height:1.2}}.level-5{font-size:18px;line-height:1.1}@media (min-width: 768px){.level-5{font-size:20px;line-height:1.2}}";const n=class{constructor(a){e(this,a);this.level="1";this.align="left"}getHeadingTag(){const e={xl:"h1",1:"h1",2:"h2",3:"h3",4:"h4",5:"h5"};return e[this.level]||"h1"}render(){const e=this.getHeadingTag();return a(e,{key:"1d3f37c8d067c3c9d0ec7f10422478ab41c990b2",class:{heading:true,[`level-${this.level}`]:true,[`align-${this.align}`]:true},part:"base"},a("slot",{key:"dcba9d00393f818cfceeb5eba5cc2bd874927dfd"}))}};n.style=t;const r=":host{display:block}.text{margin:0;padding:0;font-family:'Helvetica', 'Inter', 'Segoe UI', system-ui, sans-serif;font-weight:400;color:#14343b;letter-spacing:0}.align-left{text-align:left}.align-center{text-align:center}.align-right{text-align:right}.variant-xlarge{font-size:22px;line-height:28px}.variant-large{font-size:18px;line-height:26px}.variant-medium{font-size:16px;line-height:24px}.variant-small{font-size:14px;line-height:20px}.variant-label-button{font-family:'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;font-weight:500;font-size:17px;line-height:20px}.variant-label-tag{font-family:'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;font-weight:500;font-size:14px;line-height:1}";const l=class{constructor(a){e(this,a);this.variant="medium";this.align="left";this.as="p"}render(){const e=this.as;return a(e,{key:"778a86a185f2416dec867ca2457acb2fe1ad4bcb",class:{text:true,[`variant-${this.variant}`]:true,[`align-${this.align}`]:true},part:"base"},a("slot",{key:"2b3ee364c989ca8d233583946e24665df0192fb9"}))}};l.style=r;const s=":host{display:inline-block}.nav-link{text-decoration:none;color:inherit;display:block}.nav-item{display:flex;align-items:center;gap:8px;box-sizing:border-box;cursor:pointer}.hierarchy-primary{padding:12px;justify-content:center}.hierarchy-primary .label-container{display:flex;align-items:center;justify-content:center;height:24px;gap:10px}.hierarchy-primary.variant-01{font-family:'NeuSans', 'Inter', system-ui, sans-serif;font-size:16px;font-weight:500;line-height:20px;color:#14343b}.hierarchy-primary.variant-02{font-family:'NeuSans', 'Inter', system-ui, sans-serif;font-size:16px;font-weight:500;line-height:20px;color:#14343b}.hierarchy-primary.variant-01:hover .label-container{border-bottom:1px solid currentColor}.hierarchy-primary.variant-01.active .label-container{border-bottom:2px solid #8a7049}.hierarchy-primary.variant-02:hover{background-color:rgba(20, 52, 59, 0.04);border-radius:8px}.hierarchy-primary.variant-02.active{background-color:rgba(20, 52, 59, 0.08);border-radius:8px}.hierarchy-secondary{padding:4px 0}.hierarchy-secondary .label-container{display:flex;align-items:center;flex:1;min-height:24px;gap:8px}.hierarchy-secondary.variant-01{font-family:'NeuSans', 'Inter', system-ui, sans-serif;font-size:14px;font-weight:500;line-height:20px;color:#14343b}.hierarchy-secondary.variant-02{font-family:'NeuSans', 'Inter', system-ui, sans-serif;font-size:14px;font-weight:400;line-height:20px;color:#2b484f}.hierarchy-secondary:hover ::slotted(*){text-decoration:underline}@media (max-width: 767px){.hierarchy-primary{padding:20px 12px;border-bottom:1px solid #e8eeed;width:100%}.hierarchy-primary .label-container{flex:1;justify-content:flex-start}.hierarchy-primary.variant-01{font-size:20px;line-height:1.1;letter-spacing:-0.4px}.hierarchy-primary.variant-02{font-size:20px;line-height:1.1;letter-spacing:-0.4px;color:#60767b}}::slotted([slot=\"icon-left\"]),::slotted([slot=\"icon-right\"]){width:24px;height:24px;flex-shrink:0}.hierarchy-secondary ::slotted([slot=\"icon-right\"]){width:20px;height:20px}";const c=class{constructor(a){e(this,a);this.hierarchy="primary";this.variant="01";this.active=false}render(){const e={"nav-item":true,[`hierarchy-${this.hierarchy}`]:true,[`variant-${this.variant}`]:true,active:this.active};const t=a("div",{class:e},a("slot",{name:"icon-left"}),a("div",{class:"label-container"},a("slot",null)),a("slot",{name:"icon-right"}));if(this.href){return a(i,null,a("a",{href:this.href,class:"nav-link"},t))}return a(i,null,t)}};c.style=s;const o=":host{display:block;width:100%}.navbar-container{padding:32px 80px 0;box-sizing:border-box}.navbar{background:#E8F1EF;border:1px solid rgba(0, 0, 0, 0.12);border-radius:9999px;display:flex;align-items:center;justify-content:space-between;padding:8px 8px 8px 40px;box-sizing:border-box;box-shadow:0 2px 8px rgba(0, 0, 0, 0.08)}.navbar-left{display:flex;align-items:center;gap:32px}.logo{display:flex;align-items:center;flex-shrink:0}.nav-links{display:flex;align-items:center;gap:8px}.navbar-right{display:flex;align-items:center;gap:20px}.nav-actions{display:flex;align-items:center;gap:12px}.nav-button{display:flex;align-items:center}@media (max-width: 1024px){.navbar-container{padding:24px 40px 0}.navbar-left{gap:24px}.nav-links{gap:4px}}@media (max-width: 767px){.navbar-container{padding:16px 16px 0}.navbar{padding:8px 16px;flex-direction:column;border-radius:16px;gap:16px}.navbar-left{width:100%;flex-direction:column;gap:16px;align-items:flex-start}.nav-links{width:100%;flex-direction:column;align-items:stretch;gap:0}.navbar-right{width:100%;flex-direction:column;gap:12px;align-items:stretch}.nav-actions{width:100%;flex-direction:column;align-items:stretch;gap:0}.nav-button{width:100%}}";const d=class{constructor(a){e(this,a)}render(){return a(i,{key:"a66b7e6939aebec67d26604dea422ec2e64fe6bd"},a("nav",{key:"54064edc20beeafacafd2b43b25bfa9fc6e0e362",class:"navbar-container"},a("div",{key:"2020a0761f646c0a13cc604605d3b9d5b1625278",class:"navbar"},a("div",{key:"6038de1eba48a2bedf7e689bb65521406fc6b8b1",class:"navbar-left"},a("div",{key:"63f31053e7d3d1402f2a1e88a4ae2171f9e00d4f",class:"logo"},a("slot",{key:"bf73abaf20be9cfcaa6328fe8ac224d109944bef",name:"logo"})),a("div",{key:"c9cc09537d26c55d319f08c4622b17248f6ffba4",class:"nav-links"},a("slot",{key:"5c2d8df163e2fd9967492d39522df1e11dfcd977",name:"links"}))),a("div",{key:"45265b4d765ad52a33f81efa80e9daa910948e1c",class:"navbar-right"},a("div",{key:"48c913dd3d8fa17ee7eb2e9a41f9493929cd7af0",class:"nav-actions"},a("slot",{key:"cbfecec0a3b95935f707a4bbded5ce8aae0e9270",name:"actions"})),a("div",{key:"e8cd7adf6f5a537b9a2552b467f6671f312ab0c1",class:"nav-button"},a("slot",{key:"9dd578f3d67b32642cc6fbd49a5f3736e55c04f1",name:"button"}))))))}};d.style=o;const h=":host{display:inline-block;color:#14343b}.logo-svg{display:block;height:22px;width:auto}";const f=class{constructor(a){e(this,a)}render(){return a(i,{key:"8a33b73d7a60054dde8a04327d94d78763552549"},a("svg",{key:"7195b06d8ab5a335e70a1e7310fd753cb3887599",width:"141",height:"22",viewBox:"0 0 141 22",fill:"none",xmlns:"http://www.w3.org/2000/svg",class:"logo-svg"},a("path",{key:"5bb4bb2f7f6063928c3cfc7938b85291e70bec27",d:"M20.8 9.6c0-1.5-.4-2.7-1.1-3.7-.8-1-1.8-1.5-3.2-1.5-1.3 0-2.4.5-3.2 1.5-.7 1-1.1 2.2-1.1 3.7 0 1.5.4 2.7 1.1 3.7.8 1 1.9 1.5 3.2 1.5 1.4 0 2.5-.5 3.2-1.5.7-1 1.1-2.2 1.1-3.7zm4.2 0c0 2.4-.7 4.4-2 5.9-1.4 1.5-3.2 2.3-5.5 2.3-2.2 0-4-.8-5.4-2.3-1.4-1.5-2.1-3.5-2.1-5.9 0-2.4.7-4.4 2.1-5.9C13.5 2.2 15.3 1.4 17.5 1.4c2.3 0 4.1.8 5.5 2.3 1.3 1.5 2 3.5 2 5.9zM29.1 17.5h-4.2V4.7h4.2v12.8zm0-14.9h-4.2V.2h4.2v2.4zM43.3 17.5h-4.2v-1.5c-.7 1.2-1.9 1.8-3.7 1.8-1.3 0-2.4-.4-3.2-1.2-.8-.8-1.2-2-1.2-3.5V4.7h4.2v8.1c0 1.7.7 2.5 2 2.5.7 0 1.3-.2 1.7-.7.4-.4.6-1.1.6-1.9V4.7h4.2v12.8h-.4z",fill:"currentColor"}),a("path",{key:"7a5a7e54b69475ad6f9d1ddf240e668708a06ff2",d:"M56.9 17.5h-4.2v-1.5c-.7 1.2-1.9 1.8-3.7 1.8-1.3 0-2.4-.4-3.2-1.2-.8-.8-1.2-2-1.2-3.5V4.7h4.2v8.1c0 1.7.7 2.5 2 2.5.7 0 1.3-.2 1.7-.7.4-.4.6-1.1.6-1.9V4.7h4.2v12.8h-.4zM68.3 5.9c-.7-.4-1.5-.6-2.4-.6-1.2 0-2.2.4-2.9 1.2-.8.8-1.1 1.9-1.1 3.3 0 1.4.4 2.5 1.1 3.3.8.8 1.7 1.2 2.9 1.2.9 0 1.7-.2 2.4-.6v3.5c-.9.3-1.9.5-2.9.5-2.3 0-4.2-.7-5.6-2.2-1.4-1.5-2.1-3.4-2.1-5.8 0-1.5.3-2.9.9-4.1.6-1.2 1.5-2.2 2.6-2.8 1.1-.7 2.4-1 3.8-1 1.1 0 2.1.2 3.1.6l.2 3.5z",fill:"currentColor"}),a("path",{key:"29ba5bc9bc4fc8068d77dd092f6fbf2dccc2caa2",d:"M80 4.7h4.2v1.6c.7-1.2 1.9-1.9 3.6-1.9 1.3 0 2.3.4 3.1 1.2.8.8 1.2 2 1.2 3.5v8.4h-4.2V9.4c0-1.7-.7-2.5-2-2.5-.7 0-1.2.2-1.6.7-.4.4-.6 1.1-.6 1.9v8h-4.2V4.7h.5zM105.3 17.5h-4.2v-1.1c-.8 1-2 1.5-3.6 1.5-1.4 0-2.6-.5-3.5-1.4-.9-.9-1.4-2.1-1.4-3.6V9.6c0-1.5.5-2.7 1.4-3.6.9-.9 2.1-1.4 3.5-1.4 1.6 0 2.8.5 3.6 1.5V.2h4.2v17.3zm-4.2-7.9c0-.8-.3-1.5-.8-2-.5-.5-1.2-.8-2-.8-.8 0-1.5.3-2 .8-.5.5-.8 1.2-.8 2 0 .8.3 1.5.8 2 .5.5 1.2.8 2 .8.8 0 1.5-.3 2-.8.5-.5.8-1.2.8-2z",fill:"currentColor"}),a("path",{key:"d528008c06633218db38e63f0605874f703d3165",d:"M115.8 17.5h-4.2V4.7h4.2v1.1c.8-1 2-1.5 3.6-1.5 1.4 0 2.6.5 3.5 1.4.9.9 1.4 2.1 1.4 3.6v3.3c0 1.5-.5 2.7-1.4 3.6-.9.9-2.1 1.4-3.5 1.4-1.6 0-2.8-.5-3.6-1.5v1.4zm4.2-7.9c0-.8-.3-1.5-.8-2-.5-.5-1.2-.8-2-.8-.8 0-1.5.3-2 .8-.5.5-.8 1.2-.8 2 0 .8.3 1.5.8 2 .5.5 1.2.8 2 .8.8 0 1.5-.3 2-.8.5-.5.8-1.2.8-2z",fill:"currentColor"}),a("g",{key:"e3c341f6286afc34b918924fe1ce7d147adcb09a","clip-path":"url(#clip0)"},a("path",{key:"1d8c3fbc8995e2017357ceaab53ffd66970fe017",d:"M4.9 9.6c0-1.5-.4-2.7-1.1-3.7C3 4.9 2 4.4.6 4.4c-.3 0-.6 0-.9.1v10.2c.3.1.6.1.9.1 1.4 0 2.5-.5 3.2-1.5.7-1 1.1-2.2 1.1-3.7zM9.1 9.6c0 2.4-.7 4.4-2 5.9-1.4 1.5-3.2 2.3-5.5 2.3-.7 0-1.4-.1-2.1-.2V.2C.2.1.9 0 1.6 0c2.3 0 4.1.8 5.5 2.3 1.3 1.5 2 3.5 2 5.3z",fill:"currentColor"})),a("defs",{key:"b10859520274b6db85b3192b314f2a2bc6b41da7"},a("clipPath",{key:"8834e78ed619077f26809a22f7130f6941f2ef5f",id:"clip0"},a("path",{key:"5a01632b2fb3c6a6d630afaefc6489cb879f5116",fill:"#fff",d:"M0 0h9.1v17.8H0z"})))))}};f.style=h;export{n as af_heading,f as af_logo,c as af_nav_item,d as af_navbar,l as af_text};
2
+ //# sourceMappingURL=p-e274e11a.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["registerInstance","h","Host","afHeadingCss","AfHeading","constructor","hostRef","this","level","align","getHeadingTag","tagMap","xl","render","Tag","key","class","heading","part","style","afTextCss","AfText","variant","as","text","afNavItemCss","AfNavItem","hierarchy","active","classes","content","name","href","afNavbarCss","AfNavbar","afLogoCss","AfLogo","width","height","viewBox","fill","xmlns","d","id"],"sources":["0"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,83 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-E2jkaTPt.js');
4
+
5
+ const afAspectRatioCss = ":host{display:block;width:100%}.aspect-ratio-container{width:100%;position:relative;overflow:hidden}.aspect-ratio-container ::slotted(*){width:100%;height:100%;object-fit:cover}";
6
+
7
+ const AfAspectRatio = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ /**
11
+ * The aspect ratio to maintain. Can be:
12
+ * - A predefined ratio: '1:1', '16:9', '4:3', 'golden-portrait', 'golden-landscape', 'a4-portrait', 'a4-landscape', 'letter-portrait', 'letter-landscape', etc.
13
+ * - A custom ratio in format 'width / height': '16 / 9', '4 / 3', '1.618 / 1', etc.
14
+ *
15
+ * @example
16
+ * <af-aspect-ratio ratio="16:9">Content</af-aspect-ratio>
17
+ * <af-aspect-ratio ratio="1.618 / 1">Content</af-aspect-ratio>
18
+ */
19
+ this.ratio = '1:1';
20
+ }
21
+ getRatioValue() {
22
+ // Map common ratio shortcuts to actual CSS aspect-ratio values
23
+ const ratioMap = {
24
+ // Common ratios
25
+ '1:1': '1 / 1',
26
+ '1:2': '1 / 2',
27
+ '2:1': '2 / 1',
28
+ '2:3': '2 / 3',
29
+ '3:1': '3 / 1',
30
+ '3:2': '3 / 2',
31
+ '3:4': '3 / 4',
32
+ '4:1': '4 / 1',
33
+ '4:3': '4 / 3',
34
+ '4:5': '4 / 5',
35
+ '5:2': '5 / 2',
36
+ '5:4': '5 / 4',
37
+ '8:3': '8 / 3',
38
+ '8:5': '8 / 5',
39
+ // Screen ratios
40
+ '9:8': '9 / 8',
41
+ '9:16': '9 / 16',
42
+ '9:21': '9 / 21',
43
+ '10:16': '10 / 16',
44
+ '14:3': '14 / 3',
45
+ '16:5': '16 / 5',
46
+ '16:9': '16 / 9',
47
+ '16:10': '16 / 10',
48
+ '21:9': '21 / 9',
49
+ '32:9': '32 / 9',
50
+ // Golden ratio variants
51
+ 'golden-portrait': '1 / 1.618',
52
+ 'golden-landscape': '1.618 / 1',
53
+ 'golden-portrait-half': '1 / 0.809',
54
+ 'golden-landscape-half': '0.809 / 1',
55
+ // Paper sizes - A4
56
+ 'a4-portrait': '1 / 1.414',
57
+ 'a4-landscape': '1.414 / 1',
58
+ 'a4-portrait-half': '1 / 0.707',
59
+ 'a4-landscape-half': '0.707 / 1',
60
+ // Paper sizes - Letter
61
+ 'letter-portrait': '1 / 1.294',
62
+ 'letter-landscape': '1.294 / 1',
63
+ 'letter-portrait-half': '1 / 0.647',
64
+ 'letter-landscape-half': '0.647 / 1',
65
+ // Special
66
+ '6:7': '6 / 7'
67
+ };
68
+ // If it's a predefined ratio, return the mapped value
69
+ if (ratioMap[this.ratio]) {
70
+ return ratioMap[this.ratio];
71
+ }
72
+ // Otherwise, assume it's a custom ratio already in the correct format
73
+ return this.ratio;
74
+ }
75
+ render() {
76
+ const ratioValue = this.getRatioValue();
77
+ return (index.h("div", { key: '02bfa5463911ecd25903521e90a0570bb3bca0ad', class: "aspect-ratio-container", style: { aspectRatio: ratioValue } }, index.h("slot", { key: '9575c859052e8f1b1b362d9395fdfdf43d46b0b4' })));
78
+ }
79
+ };
80
+ AfAspectRatio.style = afAspectRatioCss;
81
+
82
+ exports.af_aspect_ratio = AfAspectRatio;
83
+ //# sourceMappingURL=af-aspect-ratio.entry.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"af-aspect-ratio.entry.cjs.js","sources":["src/components/af-aspect-ratio/af-aspect-ratio.css?tag=af-aspect-ratio&encapsulation=shadow","src/components/af-aspect-ratio/af-aspect-ratio.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n.aspect-ratio-container {\n width: 100%;\n position: relative;\n overflow: hidden;\n}\n\n/* Ensure slotted content fills the container */\n.aspect-ratio-container ::slotted(*) {\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n/**\n * A container component that maintains a fixed aspect ratio for its content.\n * Useful for images, videos, or any content that needs to maintain specific proportions.\n */\n@Component({\n tag: 'af-aspect-ratio',\n styleUrl: 'af-aspect-ratio.css',\n shadow: true\n})\nexport class AfAspectRatio {\n /**\n * The aspect ratio to maintain. Can be:\n * - A predefined ratio: '1:1', '16:9', '4:3', 'golden-portrait', 'golden-landscape', 'a4-portrait', 'a4-landscape', 'letter-portrait', 'letter-landscape', etc.\n * - A custom ratio in format 'width / height': '16 / 9', '4 / 3', '1.618 / 1', etc.\n *\n * @example\n * <af-aspect-ratio ratio=\"16:9\">Content</af-aspect-ratio>\n * <af-aspect-ratio ratio=\"1.618 / 1\">Content</af-aspect-ratio>\n */\n @Prop() ratio: string = '1:1';\n\n private getRatioValue(): string {\n // Map common ratio shortcuts to actual CSS aspect-ratio values\n const ratioMap: { [key: string]: string } = {\n // Common ratios\n '1:1': '1 / 1',\n '1:2': '1 / 2',\n '2:1': '2 / 1',\n '2:3': '2 / 3',\n '3:1': '3 / 1',\n '3:2': '3 / 2',\n '3:4': '3 / 4',\n '4:1': '4 / 1',\n '4:3': '4 / 3',\n '4:5': '4 / 5',\n '5:2': '5 / 2',\n '5:4': '5 / 4',\n '8:3': '8 / 3',\n '8:5': '8 / 5',\n // Screen ratios\n '9:8': '9 / 8',\n '9:16': '9 / 16',\n '9:21': '9 / 21',\n '10:16': '10 / 16',\n '14:3': '14 / 3',\n '16:5': '16 / 5',\n '16:9': '16 / 9',\n '16:10': '16 / 10',\n '21:9': '21 / 9',\n '32:9': '32 / 9',\n // Golden ratio variants\n 'golden-portrait': '1 / 1.618',\n 'golden-landscape': '1.618 / 1',\n 'golden-portrait-half': '1 / 0.809',\n 'golden-landscape-half': '0.809 / 1',\n // Paper sizes - A4\n 'a4-portrait': '1 / 1.414',\n 'a4-landscape': '1.414 / 1',\n 'a4-portrait-half': '1 / 0.707',\n 'a4-landscape-half': '0.707 / 1',\n // Paper sizes - Letter\n 'letter-portrait': '1 / 1.294',\n 'letter-landscape': '1.294 / 1',\n 'letter-portrait-half': '1 / 0.647',\n 'letter-landscape-half': '0.647 / 1',\n // Special\n '6:7': '6 / 7'\n };\n\n // If it's a predefined ratio, return the mapped value\n if (ratioMap[this.ratio]) {\n return ratioMap[this.ratio];\n }\n\n // Otherwise, assume it's a custom ratio already in the correct format\n return this.ratio;\n }\n\n render() {\n const ratioValue = this.getRatioValue();\n\n return (\n <div\n class=\"aspect-ratio-container\"\n style={{ aspectRatio: ratioValue }}\n >\n <slot></slot>\n </div>\n );\n }\n}\n"],"names":["h"],"mappings":";;;;AAAA,MAAM,gBAAgB,GAAG,mLAAmL;;MCW/L,aAAa,GAAA,MAAA;AAL1B,IAAA,WAAA,CAAA,OAAA,EAAA;;AAME;;;;;;;;AAQG;AACK,QAAA,IAAK,CAAA,KAAA,GAAW,KAAK;AAuE9B;IArES,aAAa,GAAA;;AAEnB,QAAA,MAAM,QAAQ,GAA8B;;AAE1C,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;;AAEd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,MAAM,EAAE,QAAQ;;AAEhB,YAAA,iBAAiB,EAAE,WAAW;AAC9B,YAAA,kBAAkB,EAAE,WAAW;AAC/B,YAAA,sBAAsB,EAAE,WAAW;AACnC,YAAA,uBAAuB,EAAE,WAAW;;AAEpC,YAAA,aAAa,EAAE,WAAW;AAC1B,YAAA,cAAc,EAAE,WAAW;AAC3B,YAAA,kBAAkB,EAAE,WAAW;AAC/B,YAAA,mBAAmB,EAAE,WAAW;;AAEhC,YAAA,iBAAiB,EAAE,WAAW;AAC9B,YAAA,kBAAkB,EAAE,WAAW;AAC/B,YAAA,sBAAsB,EAAE,WAAW;AACnC,YAAA,uBAAuB,EAAE,WAAW;;AAEpC,YAAA,KAAK,EAAE;SACR;;AAGD,QAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACxB,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;;;QAI7B,OAAO,IAAI,CAAC,KAAK;;IAGnB,MAAM,GAAA;AACJ,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE;AAEvC,QAAA,QACEA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,wBAAwB,EAC9B,KAAK,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,EAAA,EAElCA,OAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACT;;;;;;;"}
@@ -0,0 +1,30 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-E2jkaTPt.js');
4
+
5
+ const afButtonGroupCss = ":host{display:inline-block}.button-group{display:inline-flex;align-items:center;box-sizing:border-box}.direction-horizontal{flex-direction:row}.direction-vertical{flex-direction:column}::slotted(*){flex-shrink:0}";
6
+
7
+ const AfButtonGroup = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ /**
11
+ * Layout direction of the button group
12
+ */
13
+ this.direction = 'horizontal';
14
+ /**
15
+ * Gap between buttons
16
+ */
17
+ this.gap = '8px';
18
+ }
19
+ render() {
20
+ const classes = {
21
+ 'button-group': true,
22
+ [`direction-${this.direction}`]: true
23
+ };
24
+ return (index.h(index.Host, { key: '9ef4ea3e4429646edb2d14a780763807d35ca438' }, index.h("div", { key: '8f61ec426b1f01cfd0ed91b6045e01cc1ecb1637', class: classes, style: { gap: this.gap } }, index.h("slot", { key: '06acb0d36cc96b311c228ba19039899a99d6a35d' }))));
25
+ }
26
+ };
27
+ AfButtonGroup.style = afButtonGroupCss;
28
+
29
+ exports.af_button_group = AfButtonGroup;
30
+ //# sourceMappingURL=af-button-group.entry.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"af-button-group.entry.cjs.js","sources":["src/components/af-button-group/af-button-group.css?tag=af-button-group&encapsulation=shadow","src/components/af-button-group/af-button-group.tsx"],"sourcesContent":[":host {\n display: inline-block;\n}\n\n.button-group {\n display: inline-flex;\n align-items: center;\n box-sizing: border-box;\n}\n\n.direction-horizontal {\n flex-direction: row;\n}\n\n.direction-vertical {\n flex-direction: column;\n}\n\n/* Ensure slotted buttons align properly */\n::slotted(*) {\n flex-shrink: 0;\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\n\n@Component({\n tag: 'af-button-group',\n styleUrl: 'af-button-group.css',\n shadow: true\n})\nexport class AfButtonGroup {\n /**\n * Layout direction of the button group\n */\n @Prop() direction: 'horizontal' | 'vertical' = 'horizontal';\n\n /**\n * Gap between buttons\n */\n @Prop() gap: string = '8px';\n\n render() {\n const classes = {\n 'button-group': true,\n [`direction-${this.direction}`]: true\n };\n\n return (\n <Host>\n <div class={classes} style={{ gap: this.gap }}>\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"names":["h","Host"],"mappings":";;;;AAAA,MAAM,gBAAgB,GAAG,sNAAsN;;MCOlO,aAAa,GAAA,MAAA;AAL1B,IAAA,WAAA,CAAA,OAAA,EAAA;;AAME;;AAEG;AACK,QAAA,IAAS,CAAA,SAAA,GAA8B,YAAY;AAE3D;;AAEG;AACK,QAAA,IAAG,CAAA,GAAA,GAAW,KAAK;AAgB5B;IAdC,MAAM,GAAA;AACJ,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,cAAc,EAAE,IAAI;AACpB,YAAA,CAAC,aAAa,IAAI,CAAC,SAAS,CAAE,CAAA,GAAG;SAClC;QAED,QACEA,QAACC,UAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACHD,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAA,EAC3CA,OAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACT,CACD;;;;;;;"}
@@ -0,0 +1,48 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-E2jkaTPt.js');
4
+
5
+ const afButtonCss = ":host{display:inline-block}.button{display:inline-flex;align-items:center;justify-content:center;gap:0;border-radius:9999px;font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:500;text-decoration:none;cursor:pointer;transition:all 0.2s ease;border:1px solid transparent;box-sizing:border-box;white-space:nowrap}.size-default{padding:12px 24px;font-size:17px;line-height:20px}.size-small{padding:8px 16px;font-size:14px;line-height:16px}.icon-left:empty,.icon-right:empty{display:none}.icon-left,.icon-right{display:flex;align-items:center;justify-content:center;flex-shrink:0}.size-default .icon-left,.size-default .icon-right{width:24px;height:24px}.size-small .icon-left,.size-small .icon-right{width:20px;height:20px}.label{flex:0 1 auto;display:flex;align-items:center;justify-content:center;height:24px}.size-default .label{padding:0 12px;height:24px}.size-small .label{padding:0 8px;height:20px}.variant-primary{background:var(--colour-brand-ice, #A6FFFB);border-color:var(--colour-brand-inkwell, #14343B);color:var(--colour-brand-inkwell, #14343B)}.variant-primary:hover:not(.disabled){background:#8FEBE3;transform:translateY(-1px);box-shadow:0 2px 8px rgba(20, 52, 59, 0.15)}.variant-primary:active:not(.disabled){background:#7FE2D4;transform:translateY(0)}.variant-secondary{background:var(--colour-brand-white, #FFFFFF);border-color:var(--colour-brand-inkwell, #14343B);color:var(--colour-brand-inkwell, #14343B)}.variant-secondary:hover:not(.disabled){background:#F6FAF9;transform:translateY(-1px);box-shadow:0 2px 8px rgba(20, 52, 59, 0.15)}.variant-secondary:active:not(.disabled){background:#E8F1EF;transform:translateY(0)}.variant-outline{background:transparent;border-color:var(--colour-brand-inkwell, #14343B);color:var(--colour-brand-inkwell, #14343B)}.variant-outline:hover:not(.disabled){background:rgba(20, 52, 59, 0.04);transform:translateY(-1px)}.variant-outline:active:not(.disabled){background:rgba(20, 52, 59, 0.08);transform:translateY(0)}.variant-ghost{background:transparent;border-color:transparent;color:var(--colour-brand-inkwell, #14343B);padding-left:0;padding-right:0}.variant-ghost:hover:not(.disabled){text-decoration:underline}.variant-ghost:active:not(.disabled){opacity:0.7}.disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}button.button{background:none;border:none;font:inherit;color:inherit;cursor:pointer}button.button.variant-primary{background:var(--colour-brand-ice, #A6FFFB);border:1px solid var(--colour-brand-inkwell, #14343B)}button.button.variant-secondary{background:var(--colour-brand-white, #FFFFFF);border:1px solid var(--colour-brand-inkwell, #14343B)}button.button.variant-outline{background:transparent;border:1px solid var(--colour-brand-inkwell, #14343B)}button.button.variant-ghost{background:transparent;border:1px solid transparent}";
6
+
7
+ const AfButton = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ /**
11
+ * The visual variant of the button
12
+ */
13
+ this.variant = 'primary';
14
+ /**
15
+ * The size of the button
16
+ */
17
+ this.size = 'default';
18
+ /**
19
+ * Whether the button is disabled
20
+ */
21
+ this.disabled = false;
22
+ /**
23
+ * Button type (when not using href)
24
+ */
25
+ this.type = 'button';
26
+ }
27
+ render() {
28
+ const classes = {
29
+ 'button': true,
30
+ [`variant-${this.variant}`]: true,
31
+ [`size-${this.size}`]: true,
32
+ 'disabled': this.disabled
33
+ };
34
+ const content = [
35
+ index.h("span", { class: "icon-left" }, index.h("slot", { name: "icon-left" })),
36
+ index.h("span", { class: "label" }, index.h("slot", null)),
37
+ index.h("span", { class: "icon-right" }, index.h("slot", { name: "icon-right" }))
38
+ ];
39
+ if (this.href && !this.disabled) {
40
+ return (index.h(index.Host, null, index.h("a", { href: this.href, class: classes }, content)));
41
+ }
42
+ return (index.h(index.Host, null, index.h("button", { type: this.type, disabled: this.disabled, class: classes }, content)));
43
+ }
44
+ };
45
+ AfButton.style = afButtonCss;
46
+
47
+ exports.af_button = AfButton;
48
+ //# sourceMappingURL=af-button.entry.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"af-button.entry.cjs.js","sources":["src/components/af-button/af-button.css?tag=af-button&encapsulation=shadow","src/components/af-button/af-button.tsx"],"sourcesContent":[":host {\n display: inline-block;\n}\n\n.button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 0;\n border-radius: 9999px;\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: 500;\n text-decoration: none;\n cursor: pointer;\n transition: all 0.2s ease;\n border: 1px solid transparent;\n box-sizing: border-box;\n white-space: nowrap;\n}\n\n/* Size variants */\n.size-default {\n padding: 12px 24px;\n font-size: 17px;\n line-height: 20px;\n}\n\n.size-small {\n padding: 8px 16px;\n font-size: 14px;\n line-height: 16px;\n}\n\n/* Icon slots */\n.icon-left:empty,\n.icon-right:empty {\n display: none;\n}\n\n.icon-left,\n.icon-right {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.size-default .icon-left,\n.size-default .icon-right {\n width: 24px;\n height: 24px;\n}\n\n.size-small .icon-left,\n.size-small .icon-right {\n width: 20px;\n height: 20px;\n}\n\n/* Label has additional padding on each side */\n.label {\n flex: 0 1 auto;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 24px;\n}\n\n.size-default .label {\n padding: 0 12px;\n height: 24px;\n}\n\n.size-small .label {\n padding: 0 8px;\n height: 20px;\n}\n\n/* Primary variant (ice) */\n.variant-primary {\n background: var(--colour-brand-ice, #A6FFFB);\n border-color: var(--colour-brand-inkwell, #14343B);\n color: var(--colour-brand-inkwell, #14343B);\n}\n\n.variant-primary:hover:not(.disabled) {\n background: #8FEBE3;\n transform: translateY(-1px);\n box-shadow: 0 2px 8px rgba(20, 52, 59, 0.15);\n}\n\n.variant-primary:active:not(.disabled) {\n background: #7FE2D4;\n transform: translateY(0);\n}\n\n/* Secondary variant (white) */\n.variant-secondary {\n background: var(--colour-brand-white, #FFFFFF);\n border-color: var(--colour-brand-inkwell, #14343B);\n color: var(--colour-brand-inkwell, #14343B);\n}\n\n.variant-secondary:hover:not(.disabled) {\n background: #F6FAF9;\n transform: translateY(-1px);\n box-shadow: 0 2px 8px rgba(20, 52, 59, 0.15);\n}\n\n.variant-secondary:active:not(.disabled) {\n background: #E8F1EF;\n transform: translateY(0);\n}\n\n/* Outline variant */\n.variant-outline {\n background: transparent;\n border-color: var(--colour-brand-inkwell, #14343B);\n color: var(--colour-brand-inkwell, #14343B);\n}\n\n.variant-outline:hover:not(.disabled) {\n background: rgba(20, 52, 59, 0.04);\n transform: translateY(-1px);\n}\n\n.variant-outline:active:not(.disabled) {\n background: rgba(20, 52, 59, 0.08);\n transform: translateY(0);\n}\n\n/* Ghost variant (text only) */\n.variant-ghost {\n background: transparent;\n border-color: transparent;\n color: var(--colour-brand-inkwell, #14343B);\n padding-left: 0;\n padding-right: 0;\n}\n\n.variant-ghost:hover:not(.disabled) {\n text-decoration: underline;\n}\n\n.variant-ghost:active:not(.disabled) {\n opacity: 0.7;\n}\n\n/* Disabled state */\n.disabled {\n opacity: 0.4;\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* Remove default button styles */\nbutton.button {\n background: none;\n border: none;\n font: inherit;\n color: inherit;\n cursor: pointer;\n}\n\nbutton.button.variant-primary {\n background: var(--colour-brand-ice, #A6FFFB);\n border: 1px solid var(--colour-brand-inkwell, #14343B);\n}\n\nbutton.button.variant-secondary {\n background: var(--colour-brand-white, #FFFFFF);\n border: 1px solid var(--colour-brand-inkwell, #14343B);\n}\n\nbutton.button.variant-outline {\n background: transparent;\n border: 1px solid var(--colour-brand-inkwell, #14343B);\n}\n\nbutton.button.variant-ghost {\n background: transparent;\n border: 1px solid transparent;\n}\n","import { Component, h, Prop, Host } from '@stencil/core';\n\n@Component({\n tag: 'af-button',\n styleUrl: 'af-button.css',\n shadow: true\n})\nexport class AfButton {\n /**\n * The visual variant of the button\n */\n @Prop() variant: 'primary' | 'secondary' | 'outline' | 'ghost' = 'primary';\n\n /**\n * The size of the button\n */\n @Prop() size: 'default' | 'small' = 'default';\n\n /**\n * Whether the button is disabled\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Optional href to render as a link\n */\n @Prop() href?: string;\n\n /**\n * Button type (when not using href)\n */\n @Prop() type: 'button' | 'submit' | 'reset' = 'button';\n\n render() {\n const classes = {\n 'button': true,\n [`variant-${this.variant}`]: true,\n [`size-${this.size}`]: true,\n 'disabled': this.disabled\n };\n\n const content = [\n <span class=\"icon-left\">\n <slot name=\"icon-left\"></slot>\n </span>,\n <span class=\"label\">\n <slot></slot>\n </span>,\n <span class=\"icon-right\">\n <slot name=\"icon-right\"></slot>\n </span>\n ];\n\n if (this.href && !this.disabled) {\n return (\n <Host>\n <a href={this.href} class={classes}>\n {content}\n </a>\n </Host>\n );\n }\n\n return (\n <Host>\n <button type={this.type} disabled={this.disabled} class={classes}>\n {content}\n </button>\n </Host>\n );\n }\n}\n"],"names":["h","Host"],"mappings":";;;;AAAA,MAAM,WAAW,GAAG,ixFAAixF;;MCOxxF,QAAQ,GAAA,MAAA;AALrB,IAAA,WAAA,CAAA,OAAA,EAAA;;AAME;;AAEG;AACK,QAAA,IAAO,CAAA,OAAA,GAAkD,SAAS;AAE1E;;AAEG;AACK,QAAA,IAAI,CAAA,IAAA,GAAwB,SAAS;AAE7C;;AAEG;AACK,QAAA,IAAQ,CAAA,QAAA,GAAY,KAAK;AAOjC;;AAEG;AACK,QAAA,IAAI,CAAA,IAAA,GAAkC,QAAQ;AAwCvD;IAtCC,MAAM,GAAA;AACJ,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,CAAC,WAAW,IAAI,CAAC,OAAO,CAAE,CAAA,GAAG,IAAI;AACjC,YAAA,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAE,CAAA,GAAG,IAAI;YAC3B,UAAU,EAAE,IAAI,CAAC;SAClB;AAED,QAAA,MAAM,OAAO,GAAG;AACd,YAAAA,OAAM,CAAA,MAAA,EAAA,EAAA,KAAK,EAAC,WAAW,EAAA,EACrBA,OAAA,CAAA,MAAA,EAAA,EAAM,IAAI,EAAC,WAAW,EAAA,CAAQ,CACzB;AACP,YAAAA,OAAM,CAAA,MAAA,EAAA,EAAA,KAAK,EAAC,OAAO,EAAA,EACjBA,OAAA,CAAA,MAAA,EAAA,IAAA,CAAa,CACR;AACP,YAAAA,OAAM,CAAA,MAAA,EAAA,EAAA,KAAK,EAAC,YAAY,EAAA,EACtBA,OAAA,CAAA,MAAA,EAAA,EAAM,IAAI,EAAC,YAAY,EAAA,CAAQ;SAElC;QAED,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC/B,QACEA,QAACC,UAAI,EAAA,IAAA,EACHD,OAAA,CAAA,GAAA,EAAA,EAAG,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAC/B,EAAA,OAAO,CACN,CACC;;AAIX,QAAA,QACEA,QAACC,UAAI,EAAA,IAAA,EACHD,OAAQ,CAAA,QAAA,EAAA,EAAA,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAA,EAC7D,OAAO,CACD,CACJ;;;;;;;"}
@@ -0,0 +1,23 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-E2jkaTPt.js');
4
+
5
+ const afColorSwatchCss = ":host{display:block}.swatch{display:flex;flex-direction:column;border-radius:8px;overflow:hidden;border:1px solid #ece6f5;background:white}.color-preview{width:100%;height:120px;flex-shrink:0}.size-large .color-preview{height:140px}.color-info{padding:16px;display:flex;flex-direction:column;gap:4px}.color-name{font-family:'NeuSans', 'Inter', system-ui, sans-serif;font-size:16px;font-weight:500;color:#14343B}.color-value{font-family:'Helvetica', 'Inter', monospace, system-ui, sans-serif;font-size:14px;color:#708380}";
6
+
7
+ const AfColorSwatch = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ /** Size variant */
11
+ this.size = 'default';
12
+ }
13
+ render() {
14
+ return (index.h("div", { key: '57a141b5af5c538c5cf842a61173dd391a91d59b', class: {
15
+ 'swatch': true,
16
+ [`size-${this.size}`]: true
17
+ }, part: "base" }, index.h("div", { key: '505252d9fbfb36df24f1907cd5a30278e55bf268', class: "color-preview", part: "preview", style: { backgroundColor: this.color } }), index.h("div", { key: '095621914872670c129c23825aa012bbba4e33bb', class: "color-info", part: "info" }, index.h("div", { key: '86b6164f0aed4a938a8faa210651bbc6746dd4f2', class: "color-name", part: "name" }, this.name), index.h("div", { key: '1d533780d3756b119ae36a6e8fa0c2b6b3acb7b4', class: "color-value", part: "value" }, this.color))));
18
+ }
19
+ };
20
+ AfColorSwatch.style = afColorSwatchCss;
21
+
22
+ exports.af_color_swatch = AfColorSwatch;
23
+ //# sourceMappingURL=af-color-swatch.entry.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"af-color-swatch.entry.cjs.js","sources":["src/components/af-color-swatch/af-color-swatch.css?tag=af-color-swatch&encapsulation=shadow","src/components/af-color-swatch/af-color-swatch.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.swatch {\n display: flex;\n flex-direction: column;\n border-radius: 8px;\n overflow: hidden;\n border: 1px solid #ece6f5;\n background: white;\n}\n\n.color-preview {\n width: 100%;\n height: 120px;\n flex-shrink: 0;\n}\n\n.size-large .color-preview {\n height: 140px;\n}\n\n.color-info {\n padding: 16px;\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.color-name {\n font-family: 'NeuSans', 'Inter', system-ui, sans-serif;\n font-size: 16px;\n font-weight: 500;\n color: #14343B;\n}\n\n.color-value {\n font-family: 'Helvetica', 'Inter', monospace, system-ui, sans-serif;\n font-size: 14px;\n color: #708380;\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'af-color-swatch',\n styleUrl: 'af-color-swatch.css',\n shadow: true\n})\nexport class AfColorSwatch {\n /** Color value (hex) */\n @Prop() color!: string;\n\n /** Color name */\n @Prop() name!: string;\n\n /** Size variant */\n @Prop() size: 'default' | 'large' = 'default';\n\n render() {\n return (\n <div class={{\n 'swatch': true,\n [`size-${this.size}`]: true\n }} part=\"base\">\n <div\n class=\"color-preview\"\n part=\"preview\"\n style={{ backgroundColor: this.color }}\n ></div>\n <div class=\"color-info\" part=\"info\">\n <div class=\"color-name\" part=\"name\">{this.name}</div>\n <div class=\"color-value\" part=\"value\">{this.color}</div>\n </div>\n </div>\n );\n }\n}\n"],"names":["h"],"mappings":";;;;AAAA,MAAM,gBAAgB,GAAG,0gBAA0gB;;MCOthB,aAAa,GAAA,MAAA;AAL1B,IAAA,WAAA,CAAA,OAAA,EAAA;;;AAaU,QAAA,IAAI,CAAA,IAAA,GAAwB,SAAS;AAoB9C;IAlBC,MAAM,GAAA;QACJ,QACEA,OAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE;AACV,gBAAA,QAAQ,EAAE,IAAI;AACd,gBAAA,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAE,CAAA,GAAG;aACxB,EAAE,IAAI,EAAC,MAAM,EAAA,EACZA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,eAAe,EACrB,IAAI,EAAC,SAAS,EACd,KAAK,EAAE,EAAE,eAAe,EAAE,IAAI,CAAC,KAAK,EAAE,EACjC,CAAA,EACPA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,YAAY,EAAC,IAAI,EAAC,MAAM,EAAA,EACjCA,OAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,YAAY,EAAC,IAAI,EAAC,MAAM,EAAE,EAAA,IAAI,CAAC,IAAI,CAAO,EACrDA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,OAAO,EAAE,EAAA,IAAI,CAAC,KAAK,CAAO,CACpD,CACF;;;;;;;"}
@@ -0,0 +1,26 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-E2jkaTPt.js');
4
+
5
+ const afContainerCss = ":host{display:block;width:100%}.container{width:100%;margin-left:auto;margin-right:auto;box-sizing:border-box;padding-left:16px;padding-right:16px}@media (min-width: 375px){.container{padding-left:20px;padding-right:20px}}@media (min-width: 768px){.container{padding-left:32px;padding-right:32px}.max-width-medium{max-width:768px}}@media (min-width: 1024px){.container{padding-left:64px;padding-right:64px}.max-width-large{max-width:1024px}.max-width-medium{max-width:768px}}@media (min-width: 1440px){.container{padding-left:80px;padding-right:80px}.max-width-xlarge{max-width:1440px}.max-width-large{max-width:1024px}.max-width-medium{max-width:768px}}.max-width-fluid{max-width:none}";
6
+
7
+ const AfContainer = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ /**
11
+ * Maximum width constraint for the container
12
+ * - 'xlarge': 1440px container (default)
13
+ * - 'large': 1024px container
14
+ * - 'medium': 768px container
15
+ * - 'fluid': No max-width constraint, full width with margins
16
+ */
17
+ this.maxWidth = 'xlarge';
18
+ }
19
+ render() {
20
+ return (index.h("div", { key: '4a40fad6df79915adeb7273a7c71ed26b327ff8f', class: `container max-width-${this.maxWidth}` }, index.h("slot", { key: 'a1759c05860511cdb6b916e44925df7f7a80bcf1' })));
21
+ }
22
+ };
23
+ AfContainer.style = afContainerCss;
24
+
25
+ exports.af_container = AfContainer;
26
+ //# sourceMappingURL=af-container.entry.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"af-container.entry.cjs.js","sources":["src/components/af-container/af-container.css?tag=af-container&encapsulation=shadow","src/components/af-container/af-container.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n.container {\n width: 100%;\n margin-left: auto;\n margin-right: auto;\n box-sizing: border-box;\n\n /* Mobile first: xsmall breakpoint (320px) */\n padding-left: 16px;\n padding-right: 16px;\n}\n\n/* Small breakpoint (375px) */\n@media (min-width: 375px) {\n .container {\n padding-left: 20px;\n padding-right: 20px;\n }\n}\n\n/* Medium breakpoint (768px) */\n@media (min-width: 768px) {\n .container {\n padding-left: 32px;\n padding-right: 32px;\n }\n\n .max-width-medium {\n max-width: 768px;\n }\n}\n\n/* Large breakpoint (1024px) */\n@media (min-width: 1024px) {\n .container {\n padding-left: 64px;\n padding-right: 64px;\n }\n\n .max-width-large {\n max-width: 1024px;\n }\n\n .max-width-medium {\n max-width: 768px;\n }\n}\n\n/* XLarge breakpoint (1440px) */\n@media (min-width: 1440px) {\n .container {\n padding-left: 80px;\n padding-right: 80px;\n }\n\n .max-width-xlarge {\n max-width: 1440px;\n }\n\n .max-width-large {\n max-width: 1024px;\n }\n\n .max-width-medium {\n max-width: 768px;\n }\n}\n\n/* Fluid has no max-width */\n.max-width-fluid {\n max-width: none;\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n/**\n * A responsive container component that provides consistent margins and max-width\n * constraints based on the Affinda grid system.\n */\n@Component({\n tag: 'af-container',\n styleUrl: 'af-container.css',\n shadow: true\n})\nexport class AfContainer {\n /**\n * Maximum width constraint for the container\n * - 'xlarge': 1440px container (default)\n * - 'large': 1024px container\n * - 'medium': 768px container\n * - 'fluid': No max-width constraint, full width with margins\n */\n @Prop() maxWidth: 'xlarge' | 'large' | 'medium' | 'fluid' = 'xlarge';\n\n render() {\n return (\n <div class={`container max-width-${this.maxWidth}`}>\n <slot></slot>\n </div>\n );\n }\n}\n"],"names":["h"],"mappings":";;;;AAAA,MAAM,cAAc,GAAG,grBAAgrB;;MCW1rB,WAAW,GAAA,MAAA;AALxB,IAAA,WAAA,CAAA,OAAA,EAAA;;AAME;;;;;;AAMG;AACK,QAAA,IAAQ,CAAA,QAAA,GAA4C,QAAQ;AASrE;IAPC,MAAM,GAAA;AACJ,QAAA,QACEA,kEAAK,KAAK,EAAE,uBAAuB,IAAI,CAAC,QAAQ,CAAA,CAAE,EAAA,EAChDA,OAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACT;;;;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.cjs.js","sources":["src/components/af-heading/af-heading.css?tag=af-heading&encapsulation=shadow","src/components/af-heading/af-heading.tsx","src/components/af-text/af-text.css?tag=af-text&encapsulation=shadow","src/components/af-text/af-text.tsx","src/components/af-nav-item/af-nav-item.css?tag=af-nav-item&encapsulation=shadow","src/components/af-nav-item/af-nav-item.tsx","src/components/af-navbar/af-navbar.css?tag=af-navbar&encapsulation=shadow","src/components/af-navbar/af-navbar.tsx","src/components/af-logo/af-logo.css?tag=af-logo&encapsulation=shadow","src/components/af-logo/af-logo.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.heading {\n margin: 0;\n padding: 0;\n font-family: 'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;\n font-weight: 500;\n color: #14343b;\n letter-spacing: -0.02em;\n}\n\n/* Alignment */\n.align-left {\n text-align: left;\n}\n\n.align-center {\n text-align: center;\n}\n\n.align-right {\n text-align: right;\n}\n\n/* Heading XL */\n.level-xl {\n font-size: 50px;\n line-height: 1;\n}\n\n@media (min-width: 768px) {\n .level-xl {\n font-size: 80px;\n }\n}\n\n/* Heading 1 */\n.level-1 {\n font-size: 38px;\n line-height: 1;\n}\n\n@media (min-width: 768px) {\n .level-1 {\n font-size: 56px;\n }\n}\n\n/* Heading 2 */\n.level-2 {\n font-size: 32px;\n line-height: 1;\n}\n\n@media (min-width: 768px) {\n .level-2 {\n font-size: 44px;\n }\n}\n\n/* Heading 3 */\n.level-3 {\n font-size: 25px;\n line-height: 1;\n}\n\n@media (min-width: 768px) {\n .level-3 {\n font-size: 34px;\n }\n}\n\n/* Heading 4 */\n.level-4 {\n font-size: 20px;\n line-height: 1.1;\n}\n\n@media (min-width: 768px) {\n .level-4 {\n font-size: 24px;\n line-height: 1.2;\n }\n}\n\n/* Heading 5 */\n.level-5 {\n font-size: 18px;\n line-height: 1.1;\n}\n\n@media (min-width: 768px) {\n .level-5 {\n font-size: 20px;\n line-height: 1.2;\n }\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'af-heading',\n styleUrl: 'af-heading.css',\n shadow: true\n})\nexport class AfHeading {\n /** Heading level */\n @Prop() level: 'xl' | '1' | '2' | '3' | '4' | '5' = '1';\n\n /** Visual alignment */\n @Prop() align: 'left' | 'center' | 'right' = 'left';\n\n private getHeadingTag() {\n // Map display levels to semantic HTML tags\n const tagMap: Record<string, string> = {\n 'xl': 'h1',\n '1': 'h1',\n '2': 'h2',\n '3': 'h3',\n '4': 'h4',\n '5': 'h5'\n };\n return tagMap[this.level] || 'h1';\n }\n\n render() {\n const Tag = this.getHeadingTag() as any;\n\n return (\n <Tag\n class={{\n 'heading': true,\n [`level-${this.level}`]: true,\n [`align-${this.align}`]: true\n }}\n part=\"base\"\n >\n <slot />\n </Tag>\n );\n }\n}\n",":host {\n display: block;\n}\n\n.text {\n margin: 0;\n padding: 0;\n font-family: 'Helvetica', 'Inter', 'Segoe UI', system-ui, sans-serif;\n font-weight: 400;\n color: #14343b;\n letter-spacing: 0;\n}\n\n/* Alignment */\n.align-left {\n text-align: left;\n}\n\n.align-center {\n text-align: center;\n}\n\n.align-right {\n text-align: right;\n}\n\n/* Body variants */\n.variant-xlarge {\n font-size: 22px;\n line-height: 28px;\n}\n\n.variant-large {\n font-size: 18px;\n line-height: 26px;\n}\n\n.variant-medium {\n font-size: 16px;\n line-height: 24px;\n}\n\n.variant-small {\n font-size: 14px;\n line-height: 20px;\n}\n\n/* Label variants - use NeuSans Book */\n.variant-label-button {\n font-family: 'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;\n font-weight: 500;\n font-size: 17px;\n line-height: 20px;\n}\n\n.variant-label-tag {\n font-family: 'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;\n font-weight: 500;\n font-size: 14px;\n line-height: 1;\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'af-text',\n styleUrl: 'af-text.css',\n shadow: true\n})\nexport class AfText {\n /** Text variant */\n @Prop() variant: 'xlarge' | 'large' | 'medium' | 'small' | 'label-button' | 'label-tag' = 'medium';\n\n /** Visual alignment */\n @Prop() align: 'left' | 'center' | 'right' = 'left';\n\n /** Semantic element to render */\n @Prop() as: 'p' | 'span' | 'div' | 'label' = 'p';\n\n render() {\n const Tag = this.as as any;\n\n return (\n <Tag\n class={{\n 'text': true,\n [`variant-${this.variant}`]: true,\n [`align-${this.align}`]: true\n }}\n part=\"base\"\n >\n <slot />\n </Tag>\n );\n }\n}\n",":host {\n display: inline-block;\n}\n\n.nav-link {\n text-decoration: none;\n color: inherit;\n display: block;\n}\n\n.nav-item {\n display: flex;\n align-items: center;\n gap: 8px;\n box-sizing: border-box;\n cursor: pointer;\n}\n\n/* Primary hierarchy - bold main navigation */\n.hierarchy-primary {\n padding: 12px;\n justify-content: center;\n}\n\n.hierarchy-primary .label-container {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 24px;\n gap: 10px;\n}\n\n/* Primary variant 01 - darker */\n.hierarchy-primary.variant-01 {\n font-family: 'NeuSans', 'Inter', system-ui, sans-serif;\n font-size: 16px;\n font-weight: 500;\n line-height: 20px;\n color: #14343b;\n}\n\n/* Primary variant 02 - lighter for light backgrounds */\n.hierarchy-primary.variant-02 {\n font-family: 'NeuSans', 'Inter', system-ui, sans-serif;\n font-size: 16px;\n font-weight: 500;\n line-height: 20px;\n color: #14343b;\n}\n\n/* Hover state for primary variant-01 (dark backgrounds) - underline */\n.hierarchy-primary.variant-01:hover .label-container {\n border-bottom: 1px solid currentColor;\n}\n\n/* Active state for primary variant-01 - thicker border */\n.hierarchy-primary.variant-01.active .label-container {\n border-bottom: 2px solid #8a7049;\n}\n\n/* Hover and active states for variant-02 (light backgrounds) - no border */\n.hierarchy-primary.variant-02:hover {\n background-color: rgba(20, 52, 59, 0.04);\n border-radius: 8px;\n}\n\n.hierarchy-primary.variant-02.active {\n background-color: rgba(20, 52, 59, 0.08);\n border-radius: 8px;\n}\n\n/* Secondary hierarchy - smaller sub-navigation */\n.hierarchy-secondary {\n padding: 4px 0;\n}\n\n.hierarchy-secondary .label-container {\n display: flex;\n align-items: center;\n flex: 1;\n min-height: 24px;\n gap: 8px;\n}\n\n/* Secondary variant 01 - medium weight */\n.hierarchy-secondary.variant-01 {\n font-family: 'NeuSans', 'Inter', system-ui, sans-serif;\n font-size: 14px;\n font-weight: 500;\n line-height: 20px;\n color: #14343b;\n}\n\n/* Secondary variant 02 - regular weight */\n.hierarchy-secondary.variant-02 {\n font-family: 'NeuSans', 'Inter', system-ui, sans-serif;\n font-size: 14px;\n font-weight: 400;\n line-height: 20px;\n color: #2b484f;\n}\n\n/* Hover state for secondary - underline text */\n.hierarchy-secondary:hover ::slotted(*) {\n text-decoration: underline;\n}\n\n/* Mobile styles */\n@media (max-width: 767px) {\n .hierarchy-primary {\n padding: 20px 12px;\n border-bottom: 1px solid #e8eeed;\n width: 100%;\n }\n\n .hierarchy-primary .label-container {\n flex: 1;\n justify-content: flex-start;\n }\n\n .hierarchy-primary.variant-01 {\n font-size: 20px;\n line-height: 1.1;\n letter-spacing: -0.4px;\n }\n\n .hierarchy-primary.variant-02 {\n font-size: 20px;\n line-height: 1.1;\n letter-spacing: -0.4px;\n color: #60767b;\n }\n}\n\n/* Icon sizing */\n::slotted([slot=\"icon-left\"]),\n::slotted([slot=\"icon-right\"]) {\n width: 24px;\n height: 24px;\n flex-shrink: 0;\n}\n\n.hierarchy-secondary ::slotted([slot=\"icon-right\"]) {\n width: 20px;\n height: 20px;\n}\n","import { Component, h, Prop, Host } from '@stencil/core';\n\n/**\n * A generic navigation item component that can be used in navigation bars, menus, and sidebars.\n * Supports multiple hierarchy levels, variants, and states (active, hover).\n */\n@Component({\n tag: 'af-nav-item',\n styleUrl: 'af-nav-item.css',\n shadow: true\n})\nexport class AfNavItem {\n /**\n * Visual hierarchy level of the navigation item\n * - 'primary': Bold, main navigation (larger text, prominent styling)\n * - 'secondary': Lighter, sub-navigation (smaller text, subtle styling)\n */\n @Prop() hierarchy: 'primary' | 'secondary' = 'primary';\n\n /**\n * Visual variant within the hierarchy level\n * - '01': Darker/more prominent styling\n * - '02': Lighter/more subtle styling\n */\n @Prop() variant: '01' | '02' = '01';\n\n /**\n * URL to navigate to when clicked\n */\n @Prop() href?: string;\n\n /**\n * Whether this nav item is currently active/selected\n */\n @Prop() active: boolean = false;\n\n render() {\n const classes = {\n 'nav-item': true,\n [`hierarchy-${this.hierarchy}`]: true,\n [`variant-${this.variant}`]: true,\n 'active': this.active\n };\n\n const content = (\n <div class={classes}>\n <slot name=\"icon-left\"></slot>\n <div class=\"label-container\">\n <slot></slot>\n </div>\n <slot name=\"icon-right\"></slot>\n </div>\n );\n\n if (this.href) {\n return (\n <Host>\n <a href={this.href} class=\"nav-link\">\n {content}\n </a>\n </Host>\n );\n }\n\n return <Host>{content}</Host>;\n }\n}\n",":host {\n display: block;\n width: 100%;\n}\n\n.navbar-container {\n padding: 32px 80px 0;\n box-sizing: border-box;\n}\n\n.navbar {\n background: #E8F1EF;\n border: 1px solid rgba(0, 0, 0, 0.12);\n border-radius: 9999px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 8px 8px 40px;\n box-sizing: border-box;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);\n}\n\n/* Left section */\n.navbar-left {\n display: flex;\n align-items: center;\n gap: 32px;\n}\n\n.logo {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n}\n\n.nav-links {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n/* Right section */\n.navbar-right {\n display: flex;\n align-items: center;\n gap: 20px;\n}\n\n.nav-actions {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.nav-button {\n display: flex;\n align-items: center;\n}\n\n/* Tablet adjustments */\n@media (max-width: 1024px) {\n .navbar-container {\n padding: 24px 40px 0;\n }\n\n .navbar-left {\n gap: 24px;\n }\n\n .nav-links {\n gap: 4px;\n }\n}\n\n/* Mobile adjustments */\n@media (max-width: 767px) {\n .navbar-container {\n padding: 16px 16px 0;\n }\n\n .navbar {\n padding: 8px 16px;\n flex-direction: column;\n border-radius: 16px;\n gap: 16px;\n }\n\n .navbar-left {\n width: 100%;\n flex-direction: column;\n gap: 16px;\n align-items: flex-start;\n }\n\n .nav-links {\n width: 100%;\n flex-direction: column;\n align-items: stretch;\n gap: 0;\n }\n\n .navbar-right {\n width: 100%;\n flex-direction: column;\n gap: 12px;\n align-items: stretch;\n }\n\n .nav-actions {\n width: 100%;\n flex-direction: column;\n align-items: stretch;\n gap: 0;\n }\n\n .nav-button {\n width: 100%;\n }\n}\n","import { Component, h, Host } from '@stencil/core';\n\n/**\n * A full-width navigation bar component that provides the main site navigation.\n * Features a pill-shaped container with logo, navigation links, and action buttons.\n */\n@Component({\n tag: 'af-navbar',\n styleUrl: 'af-navbar.css',\n shadow: true\n})\nexport class AfNavbar {\n render() {\n return (\n <Host>\n <nav class=\"navbar-container\">\n <div class=\"navbar\">\n {/* Left section: Logo + Nav Links */}\n <div class=\"navbar-left\">\n <div class=\"logo\">\n <slot name=\"logo\"></slot>\n </div>\n <div class=\"nav-links\">\n <slot name=\"links\"></slot>\n </div>\n </div>\n\n {/* Right section: Actions + Button */}\n <div class=\"navbar-right\">\n <div class=\"nav-actions\">\n <slot name=\"actions\"></slot>\n </div>\n <div class=\"nav-button\">\n <slot name=\"button\"></slot>\n </div>\n </div>\n </div>\n </nav>\n </Host>\n );\n }\n}\n",":host {\n display: inline-block;\n color: #14343b;\n}\n\n.logo-svg {\n display: block;\n height: 22px;\n width: auto;\n}\n","import { Component, h, Host } from '@stencil/core';\n\n/**\n * Affinda logo component\n */\n@Component({\n tag: 'af-logo',\n styleUrl: 'af-logo.css',\n shadow: true\n})\nexport class AfLogo {\n render() {\n return (\n <Host>\n <svg\n width=\"141\"\n height=\"22\"\n viewBox=\"0 0 141 22\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"logo-svg\"\n >\n <path\n d=\"M20.8 9.6c0-1.5-.4-2.7-1.1-3.7-.8-1-1.8-1.5-3.2-1.5-1.3 0-2.4.5-3.2 1.5-.7 1-1.1 2.2-1.1 3.7 0 1.5.4 2.7 1.1 3.7.8 1 1.9 1.5 3.2 1.5 1.4 0 2.5-.5 3.2-1.5.7-1 1.1-2.2 1.1-3.7zm4.2 0c0 2.4-.7 4.4-2 5.9-1.4 1.5-3.2 2.3-5.5 2.3-2.2 0-4-.8-5.4-2.3-1.4-1.5-2.1-3.5-2.1-5.9 0-2.4.7-4.4 2.1-5.9C13.5 2.2 15.3 1.4 17.5 1.4c2.3 0 4.1.8 5.5 2.3 1.3 1.5 2 3.5 2 5.9zM29.1 17.5h-4.2V4.7h4.2v12.8zm0-14.9h-4.2V.2h4.2v2.4zM43.3 17.5h-4.2v-1.5c-.7 1.2-1.9 1.8-3.7 1.8-1.3 0-2.4-.4-3.2-1.2-.8-.8-1.2-2-1.2-3.5V4.7h4.2v8.1c0 1.7.7 2.5 2 2.5.7 0 1.3-.2 1.7-.7.4-.4.6-1.1.6-1.9V4.7h4.2v12.8h-.4z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M56.9 17.5h-4.2v-1.5c-.7 1.2-1.9 1.8-3.7 1.8-1.3 0-2.4-.4-3.2-1.2-.8-.8-1.2-2-1.2-3.5V4.7h4.2v8.1c0 1.7.7 2.5 2 2.5.7 0 1.3-.2 1.7-.7.4-.4.6-1.1.6-1.9V4.7h4.2v12.8h-.4zM68.3 5.9c-.7-.4-1.5-.6-2.4-.6-1.2 0-2.2.4-2.9 1.2-.8.8-1.1 1.9-1.1 3.3 0 1.4.4 2.5 1.1 3.3.8.8 1.7 1.2 2.9 1.2.9 0 1.7-.2 2.4-.6v3.5c-.9.3-1.9.5-2.9.5-2.3 0-4.2-.7-5.6-2.2-1.4-1.5-2.1-3.4-2.1-5.8 0-1.5.3-2.9.9-4.1.6-1.2 1.5-2.2 2.6-2.8 1.1-.7 2.4-1 3.8-1 1.1 0 2.1.2 3.1.6l.2 3.5z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M80 4.7h4.2v1.6c.7-1.2 1.9-1.9 3.6-1.9 1.3 0 2.3.4 3.1 1.2.8.8 1.2 2 1.2 3.5v8.4h-4.2V9.4c0-1.7-.7-2.5-2-2.5-.7 0-1.2.2-1.6.7-.4.4-.6 1.1-.6 1.9v8h-4.2V4.7h.5zM105.3 17.5h-4.2v-1.1c-.8 1-2 1.5-3.6 1.5-1.4 0-2.6-.5-3.5-1.4-.9-.9-1.4-2.1-1.4-3.6V9.6c0-1.5.5-2.7 1.4-3.6.9-.9 2.1-1.4 3.5-1.4 1.6 0 2.8.5 3.6 1.5V.2h4.2v17.3zm-4.2-7.9c0-.8-.3-1.5-.8-2-.5-.5-1.2-.8-2-.8-.8 0-1.5.3-2 .8-.5.5-.8 1.2-.8 2 0 .8.3 1.5.8 2 .5.5 1.2.8 2 .8.8 0 1.5-.3 2-.8.5-.5.8-1.2.8-2z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M115.8 17.5h-4.2V4.7h4.2v1.1c.8-1 2-1.5 3.6-1.5 1.4 0 2.6.5 3.5 1.4.9.9 1.4 2.1 1.4 3.6v3.3c0 1.5-.5 2.7-1.4 3.6-.9.9-2.1 1.4-3.5 1.4-1.6 0-2.8-.5-3.6-1.5v1.4zm4.2-7.9c0-.8-.3-1.5-.8-2-.5-.5-1.2-.8-2-.8-.8 0-1.5.3-2 .8-.5.5-.8 1.2-.8 2 0 .8.3 1.5.8 2 .5.5 1.2.8 2 .8.8 0 1.5-.3 2-.8.5-.5.8-1.2.8-2z\"\n fill=\"currentColor\"\n />\n <g clip-path=\"url(#clip0)\">\n <path\n d=\"M4.9 9.6c0-1.5-.4-2.7-1.1-3.7C3 4.9 2 4.4.6 4.4c-.3 0-.6 0-.9.1v10.2c.3.1.6.1.9.1 1.4 0 2.5-.5 3.2-1.5.7-1 1.1-2.2 1.1-3.7zM9.1 9.6c0 2.4-.7 4.4-2 5.9-1.4 1.5-3.2 2.3-5.5 2.3-.7 0-1.4-.1-2.1-.2V.2C.2.1.9 0 1.6 0c2.3 0 4.1.8 5.5 2.3 1.3 1.5 2 3.5 2 5.3z\"\n fill=\"currentColor\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0\">\n <path fill=\"#fff\" d=\"M0 0h9.1v17.8H0z\" />\n </clipPath>\n </defs>\n </svg>\n </Host>\n );\n }\n}\n"],"names":["h","Host"],"mappings":"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"}
@@ -0,0 +1,128 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-E2jkaTPt.js');
4
+
5
+ const afHeadingCss = ":host{display:block}.heading{margin:0;padding:0;font-family:'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;font-weight:500;color:#14343b;letter-spacing:-0.02em}.align-left{text-align:left}.align-center{text-align:center}.align-right{text-align:right}.level-xl{font-size:50px;line-height:1}@media (min-width: 768px){.level-xl{font-size:80px}}.level-1{font-size:38px;line-height:1}@media (min-width: 768px){.level-1{font-size:56px}}.level-2{font-size:32px;line-height:1}@media (min-width: 768px){.level-2{font-size:44px}}.level-3{font-size:25px;line-height:1}@media (min-width: 768px){.level-3{font-size:34px}}.level-4{font-size:20px;line-height:1.1}@media (min-width: 768px){.level-4{font-size:24px;line-height:1.2}}.level-5{font-size:18px;line-height:1.1}@media (min-width: 768px){.level-5{font-size:20px;line-height:1.2}}";
6
+
7
+ const AfHeading = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ /** Heading level */
11
+ this.level = '1';
12
+ /** Visual alignment */
13
+ this.align = 'left';
14
+ }
15
+ getHeadingTag() {
16
+ // Map display levels to semantic HTML tags
17
+ const tagMap = {
18
+ 'xl': 'h1',
19
+ '1': 'h1',
20
+ '2': 'h2',
21
+ '3': 'h3',
22
+ '4': 'h4',
23
+ '5': 'h5'
24
+ };
25
+ return tagMap[this.level] || 'h1';
26
+ }
27
+ render() {
28
+ const Tag = this.getHeadingTag();
29
+ return (index.h(Tag, { key: '1d3f37c8d067c3c9d0ec7f10422478ab41c990b2', class: {
30
+ 'heading': true,
31
+ [`level-${this.level}`]: true,
32
+ [`align-${this.align}`]: true
33
+ }, part: "base" }, index.h("slot", { key: 'dcba9d00393f818cfceeb5eba5cc2bd874927dfd' })));
34
+ }
35
+ };
36
+ AfHeading.style = afHeadingCss;
37
+
38
+ const afTextCss = ":host{display:block}.text{margin:0;padding:0;font-family:'Helvetica', 'Inter', 'Segoe UI', system-ui, sans-serif;font-weight:400;color:#14343b;letter-spacing:0}.align-left{text-align:left}.align-center{text-align:center}.align-right{text-align:right}.variant-xlarge{font-size:22px;line-height:28px}.variant-large{font-size:18px;line-height:26px}.variant-medium{font-size:16px;line-height:24px}.variant-small{font-size:14px;line-height:20px}.variant-label-button{font-family:'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;font-weight:500;font-size:17px;line-height:20px}.variant-label-tag{font-family:'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;font-weight:500;font-size:14px;line-height:1}";
39
+
40
+ const AfText = class {
41
+ constructor(hostRef) {
42
+ index.registerInstance(this, hostRef);
43
+ /** Text variant */
44
+ this.variant = 'medium';
45
+ /** Visual alignment */
46
+ this.align = 'left';
47
+ /** Semantic element to render */
48
+ this.as = 'p';
49
+ }
50
+ render() {
51
+ const Tag = this.as;
52
+ return (index.h(Tag, { key: '778a86a185f2416dec867ca2457acb2fe1ad4bcb', class: {
53
+ 'text': true,
54
+ [`variant-${this.variant}`]: true,
55
+ [`align-${this.align}`]: true
56
+ }, part: "base" }, index.h("slot", { key: '2b3ee364c989ca8d233583946e24665df0192fb9' })));
57
+ }
58
+ };
59
+ AfText.style = afTextCss;
60
+
61
+ const afNavItemCss = ":host{display:inline-block}.nav-link{text-decoration:none;color:inherit;display:block}.nav-item{display:flex;align-items:center;gap:8px;box-sizing:border-box;cursor:pointer}.hierarchy-primary{padding:12px;justify-content:center}.hierarchy-primary .label-container{display:flex;align-items:center;justify-content:center;height:24px;gap:10px}.hierarchy-primary.variant-01{font-family:'NeuSans', 'Inter', system-ui, sans-serif;font-size:16px;font-weight:500;line-height:20px;color:#14343b}.hierarchy-primary.variant-02{font-family:'NeuSans', 'Inter', system-ui, sans-serif;font-size:16px;font-weight:500;line-height:20px;color:#14343b}.hierarchy-primary.variant-01:hover .label-container{border-bottom:1px solid currentColor}.hierarchy-primary.variant-01.active .label-container{border-bottom:2px solid #8a7049}.hierarchy-primary.variant-02:hover{background-color:rgba(20, 52, 59, 0.04);border-radius:8px}.hierarchy-primary.variant-02.active{background-color:rgba(20, 52, 59, 0.08);border-radius:8px}.hierarchy-secondary{padding:4px 0}.hierarchy-secondary .label-container{display:flex;align-items:center;flex:1;min-height:24px;gap:8px}.hierarchy-secondary.variant-01{font-family:'NeuSans', 'Inter', system-ui, sans-serif;font-size:14px;font-weight:500;line-height:20px;color:#14343b}.hierarchy-secondary.variant-02{font-family:'NeuSans', 'Inter', system-ui, sans-serif;font-size:14px;font-weight:400;line-height:20px;color:#2b484f}.hierarchy-secondary:hover ::slotted(*){text-decoration:underline}@media (max-width: 767px){.hierarchy-primary{padding:20px 12px;border-bottom:1px solid #e8eeed;width:100%}.hierarchy-primary .label-container{flex:1;justify-content:flex-start}.hierarchy-primary.variant-01{font-size:20px;line-height:1.1;letter-spacing:-0.4px}.hierarchy-primary.variant-02{font-size:20px;line-height:1.1;letter-spacing:-0.4px;color:#60767b}}::slotted([slot=\"icon-left\"]),::slotted([slot=\"icon-right\"]){width:24px;height:24px;flex-shrink:0}.hierarchy-secondary ::slotted([slot=\"icon-right\"]){width:20px;height:20px}";
62
+
63
+ const AfNavItem = class {
64
+ constructor(hostRef) {
65
+ index.registerInstance(this, hostRef);
66
+ /**
67
+ * Visual hierarchy level of the navigation item
68
+ * - 'primary': Bold, main navigation (larger text, prominent styling)
69
+ * - 'secondary': Lighter, sub-navigation (smaller text, subtle styling)
70
+ */
71
+ this.hierarchy = 'primary';
72
+ /**
73
+ * Visual variant within the hierarchy level
74
+ * - '01': Darker/more prominent styling
75
+ * - '02': Lighter/more subtle styling
76
+ */
77
+ this.variant = '01';
78
+ /**
79
+ * Whether this nav item is currently active/selected
80
+ */
81
+ this.active = false;
82
+ }
83
+ render() {
84
+ const classes = {
85
+ 'nav-item': true,
86
+ [`hierarchy-${this.hierarchy}`]: true,
87
+ [`variant-${this.variant}`]: true,
88
+ 'active': this.active
89
+ };
90
+ const content = (index.h("div", { class: classes }, index.h("slot", { name: "icon-left" }), index.h("div", { class: "label-container" }, index.h("slot", null)), index.h("slot", { name: "icon-right" })));
91
+ if (this.href) {
92
+ return (index.h(index.Host, null, index.h("a", { href: this.href, class: "nav-link" }, content)));
93
+ }
94
+ return index.h(index.Host, null, content);
95
+ }
96
+ };
97
+ AfNavItem.style = afNavItemCss;
98
+
99
+ const afNavbarCss = ":host{display:block;width:100%}.navbar-container{padding:32px 80px 0;box-sizing:border-box}.navbar{background:#E8F1EF;border:1px solid rgba(0, 0, 0, 0.12);border-radius:9999px;display:flex;align-items:center;justify-content:space-between;padding:8px 8px 8px 40px;box-sizing:border-box;box-shadow:0 2px 8px rgba(0, 0, 0, 0.08)}.navbar-left{display:flex;align-items:center;gap:32px}.logo{display:flex;align-items:center;flex-shrink:0}.nav-links{display:flex;align-items:center;gap:8px}.navbar-right{display:flex;align-items:center;gap:20px}.nav-actions{display:flex;align-items:center;gap:12px}.nav-button{display:flex;align-items:center}@media (max-width: 1024px){.navbar-container{padding:24px 40px 0}.navbar-left{gap:24px}.nav-links{gap:4px}}@media (max-width: 767px){.navbar-container{padding:16px 16px 0}.navbar{padding:8px 16px;flex-direction:column;border-radius:16px;gap:16px}.navbar-left{width:100%;flex-direction:column;gap:16px;align-items:flex-start}.nav-links{width:100%;flex-direction:column;align-items:stretch;gap:0}.navbar-right{width:100%;flex-direction:column;gap:12px;align-items:stretch}.nav-actions{width:100%;flex-direction:column;align-items:stretch;gap:0}.nav-button{width:100%}}";
100
+
101
+ const AfNavbar = class {
102
+ constructor(hostRef) {
103
+ index.registerInstance(this, hostRef);
104
+ }
105
+ render() {
106
+ return (index.h(index.Host, { key: 'a66b7e6939aebec67d26604dea422ec2e64fe6bd' }, index.h("nav", { key: '54064edc20beeafacafd2b43b25bfa9fc6e0e362', class: "navbar-container" }, index.h("div", { key: '2020a0761f646c0a13cc604605d3b9d5b1625278', class: "navbar" }, index.h("div", { key: '6038de1eba48a2bedf7e689bb65521406fc6b8b1', class: "navbar-left" }, index.h("div", { key: '63f31053e7d3d1402f2a1e88a4ae2171f9e00d4f', class: "logo" }, index.h("slot", { key: 'bf73abaf20be9cfcaa6328fe8ac224d109944bef', name: "logo" })), index.h("div", { key: 'c9cc09537d26c55d319f08c4622b17248f6ffba4', class: "nav-links" }, index.h("slot", { key: '5c2d8df163e2fd9967492d39522df1e11dfcd977', name: "links" }))), index.h("div", { key: '45265b4d765ad52a33f81efa80e9daa910948e1c', class: "navbar-right" }, index.h("div", { key: '48c913dd3d8fa17ee7eb2e9a41f9493929cd7af0', class: "nav-actions" }, index.h("slot", { key: 'cbfecec0a3b95935f707a4bbded5ce8aae0e9270', name: "actions" })), index.h("div", { key: 'e8cd7adf6f5a537b9a2552b467f6671f312ab0c1', class: "nav-button" }, index.h("slot", { key: '9dd578f3d67b32642cc6fbd49a5f3736e55c04f1', name: "button" })))))));
107
+ }
108
+ };
109
+ AfNavbar.style = afNavbarCss;
110
+
111
+ const afLogoCss = ":host{display:inline-block;color:#14343b}.logo-svg{display:block;height:22px;width:auto}";
112
+
113
+ const AfLogo = class {
114
+ constructor(hostRef) {
115
+ index.registerInstance(this, hostRef);
116
+ }
117
+ render() {
118
+ return (index.h(index.Host, { key: '8a33b73d7a60054dde8a04327d94d78763552549' }, index.h("svg", { key: '7195b06d8ab5a335e70a1e7310fd753cb3887599', width: "141", height: "22", viewBox: "0 0 141 22", fill: "none", xmlns: "http://www.w3.org/2000/svg", class: "logo-svg" }, index.h("path", { key: '5bb4bb2f7f6063928c3cfc7938b85291e70bec27', d: "M20.8 9.6c0-1.5-.4-2.7-1.1-3.7-.8-1-1.8-1.5-3.2-1.5-1.3 0-2.4.5-3.2 1.5-.7 1-1.1 2.2-1.1 3.7 0 1.5.4 2.7 1.1 3.7.8 1 1.9 1.5 3.2 1.5 1.4 0 2.5-.5 3.2-1.5.7-1 1.1-2.2 1.1-3.7zm4.2 0c0 2.4-.7 4.4-2 5.9-1.4 1.5-3.2 2.3-5.5 2.3-2.2 0-4-.8-5.4-2.3-1.4-1.5-2.1-3.5-2.1-5.9 0-2.4.7-4.4 2.1-5.9C13.5 2.2 15.3 1.4 17.5 1.4c2.3 0 4.1.8 5.5 2.3 1.3 1.5 2 3.5 2 5.9zM29.1 17.5h-4.2V4.7h4.2v12.8zm0-14.9h-4.2V.2h4.2v2.4zM43.3 17.5h-4.2v-1.5c-.7 1.2-1.9 1.8-3.7 1.8-1.3 0-2.4-.4-3.2-1.2-.8-.8-1.2-2-1.2-3.5V4.7h4.2v8.1c0 1.7.7 2.5 2 2.5.7 0 1.3-.2 1.7-.7.4-.4.6-1.1.6-1.9V4.7h4.2v12.8h-.4z", fill: "currentColor" }), index.h("path", { key: '7a5a7e54b69475ad6f9d1ddf240e668708a06ff2', d: "M56.9 17.5h-4.2v-1.5c-.7 1.2-1.9 1.8-3.7 1.8-1.3 0-2.4-.4-3.2-1.2-.8-.8-1.2-2-1.2-3.5V4.7h4.2v8.1c0 1.7.7 2.5 2 2.5.7 0 1.3-.2 1.7-.7.4-.4.6-1.1.6-1.9V4.7h4.2v12.8h-.4zM68.3 5.9c-.7-.4-1.5-.6-2.4-.6-1.2 0-2.2.4-2.9 1.2-.8.8-1.1 1.9-1.1 3.3 0 1.4.4 2.5 1.1 3.3.8.8 1.7 1.2 2.9 1.2.9 0 1.7-.2 2.4-.6v3.5c-.9.3-1.9.5-2.9.5-2.3 0-4.2-.7-5.6-2.2-1.4-1.5-2.1-3.4-2.1-5.8 0-1.5.3-2.9.9-4.1.6-1.2 1.5-2.2 2.6-2.8 1.1-.7 2.4-1 3.8-1 1.1 0 2.1.2 3.1.6l.2 3.5z", fill: "currentColor" }), index.h("path", { key: '29ba5bc9bc4fc8068d77dd092f6fbf2dccc2caa2', d: "M80 4.7h4.2v1.6c.7-1.2 1.9-1.9 3.6-1.9 1.3 0 2.3.4 3.1 1.2.8.8 1.2 2 1.2 3.5v8.4h-4.2V9.4c0-1.7-.7-2.5-2-2.5-.7 0-1.2.2-1.6.7-.4.4-.6 1.1-.6 1.9v8h-4.2V4.7h.5zM105.3 17.5h-4.2v-1.1c-.8 1-2 1.5-3.6 1.5-1.4 0-2.6-.5-3.5-1.4-.9-.9-1.4-2.1-1.4-3.6V9.6c0-1.5.5-2.7 1.4-3.6.9-.9 2.1-1.4 3.5-1.4 1.6 0 2.8.5 3.6 1.5V.2h4.2v17.3zm-4.2-7.9c0-.8-.3-1.5-.8-2-.5-.5-1.2-.8-2-.8-.8 0-1.5.3-2 .8-.5.5-.8 1.2-.8 2 0 .8.3 1.5.8 2 .5.5 1.2.8 2 .8.8 0 1.5-.3 2-.8.5-.5.8-1.2.8-2z", fill: "currentColor" }), index.h("path", { key: 'd528008c06633218db38e63f0605874f703d3165', d: "M115.8 17.5h-4.2V4.7h4.2v1.1c.8-1 2-1.5 3.6-1.5 1.4 0 2.6.5 3.5 1.4.9.9 1.4 2.1 1.4 3.6v3.3c0 1.5-.5 2.7-1.4 3.6-.9.9-2.1 1.4-3.5 1.4-1.6 0-2.8-.5-3.6-1.5v1.4zm4.2-7.9c0-.8-.3-1.5-.8-2-.5-.5-1.2-.8-2-.8-.8 0-1.5.3-2 .8-.5.5-.8 1.2-.8 2 0 .8.3 1.5.8 2 .5.5 1.2.8 2 .8.8 0 1.5-.3 2-.8.5-.5.8-1.2.8-2z", fill: "currentColor" }), index.h("g", { key: 'e3c341f6286afc34b918924fe1ce7d147adcb09a', "clip-path": "url(#clip0)" }, index.h("path", { key: '1d8c3fbc8995e2017357ceaab53ffd66970fe017', d: "M4.9 9.6c0-1.5-.4-2.7-1.1-3.7C3 4.9 2 4.4.6 4.4c-.3 0-.6 0-.9.1v10.2c.3.1.6.1.9.1 1.4 0 2.5-.5 3.2-1.5.7-1 1.1-2.2 1.1-3.7zM9.1 9.6c0 2.4-.7 4.4-2 5.9-1.4 1.5-3.2 2.3-5.5 2.3-.7 0-1.4-.1-2.1-.2V.2C.2.1.9 0 1.6 0c2.3 0 4.1.8 5.5 2.3 1.3 1.5 2 3.5 2 5.3z", fill: "currentColor" })), index.h("defs", { key: 'b10859520274b6db85b3192b314f2a2bc6b41da7' }, index.h("clipPath", { key: '8834e78ed619077f26809a22f7130f6941f2ef5f', id: "clip0" }, index.h("path", { key: '5a01632b2fb3c6a6d630afaefc6489cb879f5116', fill: "#fff", d: "M0 0h9.1v17.8H0z" }))))));
119
+ }
120
+ };
121
+ AfLogo.style = afLogoCss;
122
+
123
+ exports.af_heading = AfHeading;
124
+ exports.af_logo = AfLogo;
125
+ exports.af_nav_item = AfNavItem;
126
+ exports.af_navbar = AfNavbar;
127
+ exports.af_text = AfText;
128
+ //# sourceMappingURL=af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.cjs.js.map
@@ -0,0 +1,44 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-E2jkaTPt.js');
4
+
5
+ const afIconButtonCss = ":host{display:inline-block}.icon-button{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;transition:all 0.2s ease;border:1px solid transparent;box-sizing:border-box;flex-shrink:0;text-decoration:none;padding:0}.size-large{width:72px;height:72px;padding:24px}.size-large .icon{width:24px;height:24px}.size-medium{width:48px;height:48px;padding:12px}.size-medium .icon{width:24px;height:24px}.size-small{width:36px;height:36px;padding:8px}.size-small .icon{width:20px;height:20px}.icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.icon ::slotted(svg){width:100%;height:100%}.variant-primary{background:var(--colour-brand-ice, #A6FFFB);border-color:var(--colour-brand-inkwell, #14343B);color:var(--colour-brand-inkwell, #14343B)}.variant-primary:hover:not(.disabled){background:#8FEBE3;transform:translateY(-1px);box-shadow:0 2px 8px rgba(20, 52, 59, 0.15)}.variant-primary:active:not(.disabled){background:#7FE2D4;transform:translateY(0)}.variant-secondary{background:var(--colour-brand-white, #FFFFFF);border-color:var(--colour-brand-inkwell, #14343B);color:var(--colour-brand-inkwell, #14343B)}.variant-secondary:hover:not(.disabled){background:#F6FAF9;transform:translateY(-1px);box-shadow:0 2px 8px rgba(20, 52, 59, 0.15)}.variant-secondary:active:not(.disabled){background:#E8F1EF;transform:translateY(0)}.variant-outline{background:transparent;border-color:var(--colour-brand-inkwell, #14343B);color:var(--colour-brand-inkwell, #14343B)}.variant-outline:hover:not(.disabled){background:rgba(20, 52, 59, 0.04);transform:translateY(-1px)}.variant-outline:active:not(.disabled){background:rgba(20, 52, 59, 0.08);transform:translateY(0)}.variant-ghost{background:transparent;border-color:transparent;color:var(--colour-brand-inkwell, #14343B)}.variant-ghost:hover:not(.disabled){background:rgba(20, 52, 59, 0.04)}.variant-ghost:active:not(.disabled){background:rgba(20, 52, 59, 0.08)}.disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}button.icon-button{background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer}button.icon-button.variant-primary{background:var(--colour-brand-ice, #A6FFFB);border:1px solid var(--colour-brand-inkwell, #14343B)}button.icon-button.variant-secondary{background:var(--colour-brand-white, #FFFFFF);border:1px solid var(--colour-brand-inkwell, #14343B)}button.icon-button.variant-outline{background:transparent;border:1px solid var(--colour-brand-inkwell, #14343B)}button.icon-button.variant-ghost{background:transparent;border:1px solid transparent}";
6
+
7
+ const AfIconButton = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ /**
11
+ * The visual variant of the button
12
+ */
13
+ this.variant = 'primary';
14
+ /**
15
+ * The size of the button
16
+ */
17
+ this.size = 'medium';
18
+ /**
19
+ * Whether the button is disabled
20
+ */
21
+ this.disabled = false;
22
+ /**
23
+ * Button type (when not using href)
24
+ */
25
+ this.type = 'button';
26
+ }
27
+ render() {
28
+ const classes = {
29
+ 'icon-button': true,
30
+ [`variant-${this.variant}`]: true,
31
+ [`size-${this.size}`]: true,
32
+ 'disabled': this.disabled
33
+ };
34
+ const content = (index.h("span", { class: "icon" }, index.h("slot", null)));
35
+ if (this.href && !this.disabled) {
36
+ return (index.h(index.Host, null, index.h("a", { href: this.href, class: classes, "aria-label": this.ariaLabel }, content)));
37
+ }
38
+ return (index.h(index.Host, null, index.h("button", { type: this.type, disabled: this.disabled, class: classes, "aria-label": this.ariaLabel }, content)));
39
+ }
40
+ };
41
+ AfIconButton.style = afIconButtonCss;
42
+
43
+ exports.af_icon_button = AfIconButton;
44
+ //# sourceMappingURL=af-icon-button.entry.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"af-icon-button.entry.cjs.js","sources":["src/components/af-icon-button/af-icon-button.css?tag=af-icon-button&encapsulation=shadow","src/components/af-icon-button/af-icon-button.tsx"],"sourcesContent":[":host {\n display: inline-block;\n}\n\n.icon-button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: 50%;\n cursor: pointer;\n transition: all 0.2s ease;\n border: 1px solid transparent;\n box-sizing: border-box;\n flex-shrink: 0;\n text-decoration: none;\n padding: 0;\n}\n\n/* Size variants */\n.size-large {\n width: 72px;\n height: 72px;\n padding: 24px;\n}\n\n.size-large .icon {\n width: 24px;\n height: 24px;\n}\n\n.size-medium {\n width: 48px;\n height: 48px;\n padding: 12px;\n}\n\n.size-medium .icon {\n width: 24px;\n height: 24px;\n}\n\n.size-small {\n width: 36px;\n height: 36px;\n padding: 8px;\n}\n\n.size-small .icon {\n width: 20px;\n height: 20px;\n}\n\n/* Icon slot */\n.icon {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.icon ::slotted(svg) {\n width: 100%;\n height: 100%;\n}\n\n/* Primary variant (ice) */\n.variant-primary {\n background: var(--colour-brand-ice, #A6FFFB);\n border-color: var(--colour-brand-inkwell, #14343B);\n color: var(--colour-brand-inkwell, #14343B);\n}\n\n.variant-primary:hover:not(.disabled) {\n background: #8FEBE3;\n transform: translateY(-1px);\n box-shadow: 0 2px 8px rgba(20, 52, 59, 0.15);\n}\n\n.variant-primary:active:not(.disabled) {\n background: #7FE2D4;\n transform: translateY(0);\n}\n\n/* Secondary variant (white) */\n.variant-secondary {\n background: var(--colour-brand-white, #FFFFFF);\n border-color: var(--colour-brand-inkwell, #14343B);\n color: var(--colour-brand-inkwell, #14343B);\n}\n\n.variant-secondary:hover:not(.disabled) {\n background: #F6FAF9;\n transform: translateY(-1px);\n box-shadow: 0 2px 8px rgba(20, 52, 59, 0.15);\n}\n\n.variant-secondary:active:not(.disabled) {\n background: #E8F1EF;\n transform: translateY(0);\n}\n\n/* Outline variant */\n.variant-outline {\n background: transparent;\n border-color: var(--colour-brand-inkwell, #14343B);\n color: var(--colour-brand-inkwell, #14343B);\n}\n\n.variant-outline:hover:not(.disabled) {\n background: rgba(20, 52, 59, 0.04);\n transform: translateY(-1px);\n}\n\n.variant-outline:active:not(.disabled) {\n background: rgba(20, 52, 59, 0.08);\n transform: translateY(0);\n}\n\n/* Ghost variant */\n.variant-ghost {\n background: transparent;\n border-color: transparent;\n color: var(--colour-brand-inkwell, #14343B);\n}\n\n.variant-ghost:hover:not(.disabled) {\n background: rgba(20, 52, 59, 0.04);\n}\n\n.variant-ghost:active:not(.disabled) {\n background: rgba(20, 52, 59, 0.08);\n}\n\n/* Disabled state */\n.disabled {\n opacity: 0.4;\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* Remove default button styles */\nbutton.icon-button {\n background: none;\n border: none;\n padding: 0;\n font: inherit;\n color: inherit;\n cursor: pointer;\n}\n\nbutton.icon-button.variant-primary {\n background: var(--colour-brand-ice, #A6FFFB);\n border: 1px solid var(--colour-brand-inkwell, #14343B);\n}\n\nbutton.icon-button.variant-secondary {\n background: var(--colour-brand-white, #FFFFFF);\n border: 1px solid var(--colour-brand-inkwell, #14343B);\n}\n\nbutton.icon-button.variant-outline {\n background: transparent;\n border: 1px solid var(--colour-brand-inkwell, #14343B);\n}\n\nbutton.icon-button.variant-ghost {\n background: transparent;\n border: 1px solid transparent;\n}\n","import { Component, h, Prop, Host } from '@stencil/core';\n\n@Component({\n tag: 'af-icon-button',\n styleUrl: 'af-icon-button.css',\n shadow: true\n})\nexport class AfIconButton {\n /**\n * The visual variant of the button\n */\n @Prop() variant: 'primary' | 'secondary' | 'outline' | 'ghost' = 'primary';\n\n /**\n * The size of the button\n */\n @Prop() size: 'large' | 'medium' | 'small' = 'medium';\n\n /**\n * Whether the button is disabled\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Optional href to render as a link\n */\n @Prop() href?: string;\n\n /**\n * Button type (when not using href)\n */\n @Prop() type: 'button' | 'submit' | 'reset' = 'button';\n\n /**\n * Accessible label for screen readers\n */\n @Prop() ariaLabel!: string;\n\n render() {\n const classes = {\n 'icon-button': true,\n [`variant-${this.variant}`]: true,\n [`size-${this.size}`]: true,\n 'disabled': this.disabled\n };\n\n const content = (\n <span class=\"icon\">\n <slot></slot>\n </span>\n );\n\n if (this.href && !this.disabled) {\n return (\n <Host>\n <a href={this.href} class={classes} aria-label={this.ariaLabel}>\n {content}\n </a>\n </Host>\n );\n }\n\n return (\n <Host>\n <button type={this.type} disabled={this.disabled} class={classes} aria-label={this.ariaLabel}>\n {content}\n </button>\n </Host>\n );\n }\n}\n"],"names":["h","Host"],"mappings":";;;;AAAA,MAAM,eAAe,GAAG,whFAAwhF;;MCOniF,YAAY,GAAA,MAAA;AALzB,IAAA,WAAA,CAAA,OAAA,EAAA;;AAME;;AAEG;AACK,QAAA,IAAO,CAAA,OAAA,GAAkD,SAAS;AAE1E;;AAEG;AACK,QAAA,IAAI,CAAA,IAAA,GAAiC,QAAQ;AAErD;;AAEG;AACK,QAAA,IAAQ,CAAA,QAAA,GAAY,KAAK;AAOjC;;AAEG;AACK,QAAA,IAAI,CAAA,IAAA,GAAkC,QAAQ;AAuCvD;IAhCC,MAAM,GAAA;AACJ,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,aAAa,EAAE,IAAI;AACnB,YAAA,CAAC,WAAW,IAAI,CAAC,OAAO,CAAE,CAAA,GAAG,IAAI;AACjC,YAAA,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAE,CAAA,GAAG,IAAI;YAC3B,UAAU,EAAE,IAAI,CAAC;SAClB;QAED,MAAM,OAAO,IACXA,OAAM,CAAA,MAAA,EAAA,EAAA,KAAK,EAAC,MAAM,EAAA,EAChBA,OAAa,CAAA,MAAA,EAAA,IAAA,CAAA,CACR,CACR;QAED,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAC/B,YAAA,QACEA,QAACC,UAAI,EAAA,IAAA,EACHD,OAAA,CAAA,GAAA,EAAA,EAAG,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAc,YAAA,EAAA,IAAI,CAAC,SAAS,EAAA,EAC3D,OAAO,CACN,CACC;;AAIX,QAAA,QACEA,QAACC,UAAI,EAAA,IAAA,EACHD,OAAQ,CAAA,QAAA,EAAA,EAAA,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAc,YAAA,EAAA,IAAI,CAAC,SAAS,IACzF,OAAO,CACD,CACJ;;;;;;;"}