@lexsis/storefront-components 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (633) hide show
  1. package/dist/PageRenderer.d.ts +8 -0
  2. package/dist/PageRenderer.d.ts.map +1 -0
  3. package/dist/PageRenderer.js +116 -0
  4. package/dist/PageRenderer.js.map +1 -0
  5. package/dist/SectionSkeleton.d.ts +2 -0
  6. package/dist/SectionSkeleton.d.ts.map +1 -0
  7. package/dist/SectionSkeleton.js +5 -0
  8. package/dist/SectionSkeleton.js.map +1 -0
  9. package/dist/ThemeContext.d.ts +11 -0
  10. package/dist/ThemeContext.d.ts.map +1 -0
  11. package/dist/ThemeContext.js +13 -0
  12. package/dist/ThemeContext.js.map +1 -0
  13. package/dist/ThemeProvider.d.ts +9 -0
  14. package/dist/ThemeProvider.d.ts.map +1 -0
  15. package/dist/ThemeProvider.js +227 -0
  16. package/dist/ThemeProvider.js.map +1 -0
  17. package/dist/ThemeToggle.d.ts +6 -0
  18. package/dist/ThemeToggle.d.ts.map +1 -0
  19. package/dist/ThemeToggle.js +26 -0
  20. package/dist/ThemeToggle.js.map +1 -0
  21. package/dist/animations/advanced-hooks.d.ts +36 -0
  22. package/dist/animations/advanced-hooks.d.ts.map +1 -0
  23. package/dist/animations/advanced-hooks.js +106 -0
  24. package/dist/animations/advanced-hooks.js.map +1 -0
  25. package/dist/animations/canvas-utils.d.ts +41 -0
  26. package/dist/animations/canvas-utils.d.ts.map +1 -0
  27. package/dist/animations/canvas-utils.js +115 -0
  28. package/dist/animations/canvas-utils.js.map +1 -0
  29. package/dist/animations/hooks.d.ts +48 -0
  30. package/dist/animations/hooks.d.ts.map +1 -0
  31. package/dist/animations/hooks.js +50 -0
  32. package/dist/animations/hooks.js.map +1 -0
  33. package/dist/animations/index.d.ts +4 -0
  34. package/dist/animations/index.d.ts.map +1 -0
  35. package/dist/animations/index.js +4 -0
  36. package/dist/animations/index.js.map +1 -0
  37. package/dist/animations/presets.d.ts +43 -0
  38. package/dist/animations/presets.d.ts.map +1 -0
  39. package/dist/animations/presets.js +278 -0
  40. package/dist/animations/presets.js.map +1 -0
  41. package/dist/animations/variants.d.ts +15 -0
  42. package/dist/animations/variants.d.ts.map +1 -0
  43. package/dist/animations/variants.js +90 -0
  44. package/dist/animations/variants.js.map +1 -0
  45. package/dist/backgrounds/BackgroundSection.d.ts +3 -0
  46. package/dist/backgrounds/BackgroundSection.d.ts.map +1 -0
  47. package/dist/backgrounds/BackgroundSection.js +205 -0
  48. package/dist/backgrounds/BackgroundSection.js.map +1 -0
  49. package/dist/buttons/ButtonSection.d.ts +3 -0
  50. package/dist/buttons/ButtonSection.d.ts.map +1 -0
  51. package/dist/buttons/ButtonSection.js +150 -0
  52. package/dist/buttons/ButtonSection.js.map +1 -0
  53. package/dist/cards/CardStack.d.ts +3 -0
  54. package/dist/cards/CardStack.d.ts.map +1 -0
  55. package/dist/cards/CardStack.js +140 -0
  56. package/dist/cards/CardStack.js.map +1 -0
  57. package/dist/cards/FeatureCard.d.ts +3 -0
  58. package/dist/cards/FeatureCard.d.ts.map +1 -0
  59. package/dist/cards/FeatureCard.js +100 -0
  60. package/dist/cards/FeatureCard.js.map +1 -0
  61. package/dist/cards/FeaturedCard.d.ts +3 -0
  62. package/dist/cards/FeaturedCard.d.ts.map +1 -0
  63. package/dist/cards/FeaturedCard.js +66 -0
  64. package/dist/cards/FeaturedCard.js.map +1 -0
  65. package/dist/cards/TerminalCard.d.ts +3 -0
  66. package/dist/cards/TerminalCard.d.ts.map +1 -0
  67. package/dist/cards/TerminalCard.js +73 -0
  68. package/dist/cards/TerminalCard.js.map +1 -0
  69. package/dist/cards/TestimonialCard.d.ts +3 -0
  70. package/dist/cards/TestimonialCard.d.ts.map +1 -0
  71. package/dist/cards/TestimonialCard.js +50 -0
  72. package/dist/cards/TestimonialCard.js.map +1 -0
  73. package/dist/cards/index.d.ts +2 -0
  74. package/dist/cards/index.d.ts.map +1 -0
  75. package/dist/cards/index.js +2 -0
  76. package/dist/cards/index.js.map +1 -0
  77. package/dist/cart/CartCheckoutBar.d.ts +3 -0
  78. package/dist/cart/CartCheckoutBar.d.ts.map +1 -0
  79. package/dist/cart/CartCheckoutBar.js +258 -0
  80. package/dist/cart/CartCheckoutBar.js.map +1 -0
  81. package/dist/cart/CartDiscount.d.ts +3 -0
  82. package/dist/cart/CartDiscount.d.ts.map +1 -0
  83. package/dist/cart/CartDiscount.js +78 -0
  84. package/dist/cart/CartDiscount.js.map +1 -0
  85. package/dist/cart/CartDrawer.d.ts +3 -0
  86. package/dist/cart/CartDrawer.d.ts.map +1 -0
  87. package/dist/cart/CartDrawer.js +141 -0
  88. package/dist/cart/CartDrawer.js.map +1 -0
  89. package/dist/cart/CartLines.d.ts +3 -0
  90. package/dist/cart/CartLines.d.ts.map +1 -0
  91. package/dist/cart/CartLines.js +227 -0
  92. package/dist/cart/CartLines.js.map +1 -0
  93. package/dist/cart/CartPage.d.ts +3 -0
  94. package/dist/cart/CartPage.d.ts.map +1 -0
  95. package/dist/cart/CartPage.js +128 -0
  96. package/dist/cart/CartPage.js.map +1 -0
  97. package/dist/cart/CartSummary.d.ts +3 -0
  98. package/dist/cart/CartSummary.d.ts.map +1 -0
  99. package/dist/cart/CartSummary.js +155 -0
  100. package/dist/cart/CartSummary.js.map +1 -0
  101. package/dist/cart/CartTrigger.d.ts +3 -0
  102. package/dist/cart/CartTrigger.d.ts.map +1 -0
  103. package/dist/cart/CartTrigger.js +45 -0
  104. package/dist/cart/CartTrigger.js.map +1 -0
  105. package/dist/cart/GuaranteeBanner.d.ts +3 -0
  106. package/dist/cart/GuaranteeBanner.d.ts.map +1 -0
  107. package/dist/cart/GuaranteeBanner.js +15 -0
  108. package/dist/cart/GuaranteeBanner.js.map +1 -0
  109. package/dist/cart/index.d.ts +8 -0
  110. package/dist/cart/index.d.ts.map +1 -0
  111. package/dist/cart/index.js +8 -0
  112. package/dist/cart/index.js.map +1 -0
  113. package/dist/content/BeforeAfterSlider.d.ts +3 -0
  114. package/dist/content/BeforeAfterSlider.d.ts.map +1 -0
  115. package/dist/content/BeforeAfterSlider.js +61 -0
  116. package/dist/content/BeforeAfterSlider.js.map +1 -0
  117. package/dist/content/ImageTextSplit.d.ts +3 -0
  118. package/dist/content/ImageTextSplit.d.ts.map +1 -0
  119. package/dist/content/ImageTextSplit.js +33 -0
  120. package/dist/content/ImageTextSplit.js.map +1 -0
  121. package/dist/content/LookbookGrid.d.ts +3 -0
  122. package/dist/content/LookbookGrid.d.ts.map +1 -0
  123. package/dist/content/LookbookGrid.js +183 -0
  124. package/dist/content/LookbookGrid.js.map +1 -0
  125. package/dist/content/ParallaxSection.d.ts +3 -0
  126. package/dist/content/ParallaxSection.d.ts.map +1 -0
  127. package/dist/content/ParallaxSection.js +66 -0
  128. package/dist/content/ParallaxSection.js.map +1 -0
  129. package/dist/content/RichText.d.ts +3 -0
  130. package/dist/content/RichText.d.ts.map +1 -0
  131. package/dist/content/RichText.js +21 -0
  132. package/dist/content/RichText.js.map +1 -0
  133. package/dist/content/index.d.ts +5 -0
  134. package/dist/content/index.d.ts.map +1 -0
  135. package/dist/content/index.js +5 -0
  136. package/dist/content/index.js.map +1 -0
  137. package/dist/content-types.d.ts +637 -0
  138. package/dist/content-types.d.ts.map +1 -0
  139. package/dist/content-types.js +2 -0
  140. package/dist/content-types.js.map +1 -0
  141. package/dist/context/LxCartContext.d.ts +71 -0
  142. package/dist/context/LxCartContext.d.ts.map +1 -0
  143. package/dist/context/LxCartContext.js +491 -0
  144. package/dist/context/LxCartContext.js.map +1 -0
  145. package/dist/context/LxEditorContext.d.ts +8 -0
  146. package/dist/context/LxEditorContext.d.ts.map +1 -0
  147. package/dist/context/LxEditorContext.js +10 -0
  148. package/dist/context/LxEditorContext.js.map +1 -0
  149. package/dist/context/LxPDPContext.d.ts +39 -0
  150. package/dist/context/LxPDPContext.d.ts.map +1 -0
  151. package/dist/context/LxPDPContext.js +52 -0
  152. package/dist/context/LxPDPContext.js.map +1 -0
  153. package/dist/cta/CtaFullWidth.d.ts +3 -0
  154. package/dist/cta/CtaFullWidth.d.ts.map +1 -0
  155. package/dist/cta/CtaFullWidth.js +30 -0
  156. package/dist/cta/CtaFullWidth.js.map +1 -0
  157. package/dist/cta/CtaStickyBottom.d.ts +3 -0
  158. package/dist/cta/CtaStickyBottom.d.ts.map +1 -0
  159. package/dist/cta/CtaStickyBottom.js +43 -0
  160. package/dist/cta/CtaStickyBottom.js.map +1 -0
  161. package/dist/cta/GuaranteeCta.d.ts +3 -0
  162. package/dist/cta/GuaranteeCta.d.ts.map +1 -0
  163. package/dist/cta/GuaranteeCta.js +27 -0
  164. package/dist/cta/GuaranteeCta.js.map +1 -0
  165. package/dist/cta/NewsletterSignup.d.ts +3 -0
  166. package/dist/cta/NewsletterSignup.d.ts.map +1 -0
  167. package/dist/cta/NewsletterSignup.js +35 -0
  168. package/dist/cta/NewsletterSignup.js.map +1 -0
  169. package/dist/cta/Popup.d.ts +3 -0
  170. package/dist/cta/Popup.d.ts.map +1 -0
  171. package/dist/cta/Popup.js +208 -0
  172. package/dist/cta/Popup.js.map +1 -0
  173. package/dist/cta/UrgencyCta.d.ts +3 -0
  174. package/dist/cta/UrgencyCta.d.ts.map +1 -0
  175. package/dist/cta/UrgencyCta.js +85 -0
  176. package/dist/cta/UrgencyCta.js.map +1 -0
  177. package/dist/cta/WaitlistCta.d.ts +3 -0
  178. package/dist/cta/WaitlistCta.d.ts.map +1 -0
  179. package/dist/cta/WaitlistCta.js +62 -0
  180. package/dist/cta/WaitlistCta.js.map +1 -0
  181. package/dist/cta/index.d.ts +3 -0
  182. package/dist/cta/index.d.ts.map +1 -0
  183. package/dist/cta/index.js +3 -0
  184. package/dist/cta/index.js.map +1 -0
  185. package/dist/effects/AnimatedBackground.d.ts +22 -0
  186. package/dist/effects/AnimatedBackground.d.ts.map +1 -0
  187. package/dist/effects/AnimatedBackground.js +313 -0
  188. package/dist/effects/AnimatedBackground.js.map +1 -0
  189. package/dist/effects/CanvasReveal.d.ts +5 -0
  190. package/dist/effects/CanvasReveal.d.ts.map +1 -0
  191. package/dist/effects/CanvasReveal.js +104 -0
  192. package/dist/effects/CanvasReveal.js.map +1 -0
  193. package/dist/effects/DecorativeOverlay.d.ts +10 -0
  194. package/dist/effects/DecorativeOverlay.d.ts.map +1 -0
  195. package/dist/effects/DecorativeOverlay.js +76 -0
  196. package/dist/effects/DecorativeOverlay.js.map +1 -0
  197. package/dist/effects/ScrollLinked.d.ts +3 -0
  198. package/dist/effects/ScrollLinked.d.ts.map +1 -0
  199. package/dist/effects/ScrollLinked.js +57 -0
  200. package/dist/effects/ScrollLinked.js.map +1 -0
  201. package/dist/effects/svg-library.d.ts +3 -0
  202. package/dist/effects/svg-library.d.ts.map +1 -0
  203. package/dist/effects/svg-library.js +105 -0
  204. package/dist/effects/svg-library.js.map +1 -0
  205. package/dist/faq/FaqAccordion.d.ts +3 -0
  206. package/dist/faq/FaqAccordion.d.ts.map +1 -0
  207. package/dist/faq/FaqAccordion.js +39 -0
  208. package/dist/faq/FaqAccordion.js.map +1 -0
  209. package/dist/faq/FaqTwoColumn.d.ts +3 -0
  210. package/dist/faq/FaqTwoColumn.d.ts.map +1 -0
  211. package/dist/faq/FaqTwoColumn.js +38 -0
  212. package/dist/faq/FaqTwoColumn.js.map +1 -0
  213. package/dist/faq/index.d.ts +3 -0
  214. package/dist/faq/index.d.ts.map +1 -0
  215. package/dist/faq/index.js +3 -0
  216. package/dist/faq/index.js.map +1 -0
  217. package/dist/features/BentoGrid.d.ts +3 -0
  218. package/dist/features/BentoGrid.d.ts.map +1 -0
  219. package/dist/features/BentoGrid.js +62 -0
  220. package/dist/features/BentoGrid.js.map +1 -0
  221. package/dist/features/FeatureGrid.d.ts +3 -0
  222. package/dist/features/FeatureGrid.d.ts.map +1 -0
  223. package/dist/features/FeatureGrid.js +89 -0
  224. package/dist/features/FeatureGrid.js.map +1 -0
  225. package/dist/features/FeatureTabs.d.ts +3 -0
  226. package/dist/features/FeatureTabs.d.ts.map +1 -0
  227. package/dist/features/FeatureTabs.js +64 -0
  228. package/dist/features/FeatureTabs.js.map +1 -0
  229. package/dist/features/ProcessSteps.d.ts +3 -0
  230. package/dist/features/ProcessSteps.d.ts.map +1 -0
  231. package/dist/features/ProcessSteps.js +74 -0
  232. package/dist/features/ProcessSteps.js.map +1 -0
  233. package/dist/heroes/HeroActivity.d.ts +3 -0
  234. package/dist/heroes/HeroActivity.d.ts.map +1 -0
  235. package/dist/heroes/HeroActivity.js +54 -0
  236. package/dist/heroes/HeroActivity.js.map +1 -0
  237. package/dist/heroes/HeroAnimated.d.ts +3 -0
  238. package/dist/heroes/HeroAnimated.d.ts.map +1 -0
  239. package/dist/heroes/HeroAnimated.js +101 -0
  240. package/dist/heroes/HeroAnimated.js.map +1 -0
  241. package/dist/heroes/HeroAurora.d.ts +3 -0
  242. package/dist/heroes/HeroAurora.d.ts.map +1 -0
  243. package/dist/heroes/HeroAurora.js +53 -0
  244. package/dist/heroes/HeroAurora.js.map +1 -0
  245. package/dist/heroes/HeroCarousel.d.ts +3 -0
  246. package/dist/heroes/HeroCarousel.d.ts.map +1 -0
  247. package/dist/heroes/HeroCarousel.js +187 -0
  248. package/dist/heroes/HeroCarousel.js.map +1 -0
  249. package/dist/heroes/HeroCentered.d.ts +3 -0
  250. package/dist/heroes/HeroCentered.d.ts.map +1 -0
  251. package/dist/heroes/HeroCentered.js +62 -0
  252. package/dist/heroes/HeroCentered.js.map +1 -0
  253. package/dist/heroes/HeroCinematicFullbleed.d.ts +3 -0
  254. package/dist/heroes/HeroCinematicFullbleed.d.ts.map +1 -0
  255. package/dist/heroes/HeroCinematicFullbleed.js +44 -0
  256. package/dist/heroes/HeroCinematicFullbleed.js.map +1 -0
  257. package/dist/heroes/HeroCountdown.d.ts +3 -0
  258. package/dist/heroes/HeroCountdown.d.ts.map +1 -0
  259. package/dist/heroes/HeroCountdown.js +64 -0
  260. package/dist/heroes/HeroCountdown.js.map +1 -0
  261. package/dist/heroes/HeroDarkSplitSticker.d.ts +3 -0
  262. package/dist/heroes/HeroDarkSplitSticker.d.ts.map +1 -0
  263. package/dist/heroes/HeroDarkSplitSticker.js +39 -0
  264. package/dist/heroes/HeroDarkSplitSticker.js.map +1 -0
  265. package/dist/heroes/HeroEditorial.d.ts +3 -0
  266. package/dist/heroes/HeroEditorial.d.ts.map +1 -0
  267. package/dist/heroes/HeroEditorial.js +30 -0
  268. package/dist/heroes/HeroEditorial.js.map +1 -0
  269. package/dist/heroes/HeroEditorialMinimal.d.ts +3 -0
  270. package/dist/heroes/HeroEditorialMinimal.d.ts.map +1 -0
  271. package/dist/heroes/HeroEditorialMinimal.js +47 -0
  272. package/dist/heroes/HeroEditorialMinimal.js.map +1 -0
  273. package/dist/heroes/HeroFullBleed.d.ts +3 -0
  274. package/dist/heroes/HeroFullBleed.d.ts.map +1 -0
  275. package/dist/heroes/HeroFullBleed.js +136 -0
  276. package/dist/heroes/HeroFullBleed.js.map +1 -0
  277. package/dist/heroes/HeroMini.d.ts +3 -0
  278. package/dist/heroes/HeroMini.d.ts.map +1 -0
  279. package/dist/heroes/HeroMini.js +25 -0
  280. package/dist/heroes/HeroMini.js.map +1 -0
  281. package/dist/heroes/HeroParallax.d.ts +3 -0
  282. package/dist/heroes/HeroParallax.d.ts.map +1 -0
  283. package/dist/heroes/HeroParallax.js +71 -0
  284. package/dist/heroes/HeroParallax.js.map +1 -0
  285. package/dist/heroes/HeroRetroCentered.d.ts +3 -0
  286. package/dist/heroes/HeroRetroCentered.d.ts.map +1 -0
  287. package/dist/heroes/HeroRetroCentered.js +49 -0
  288. package/dist/heroes/HeroRetroCentered.js.map +1 -0
  289. package/dist/heroes/HeroSplit.d.ts +3 -0
  290. package/dist/heroes/HeroSplit.d.ts.map +1 -0
  291. package/dist/heroes/HeroSplit.js +81 -0
  292. package/dist/heroes/HeroSplit.js.map +1 -0
  293. package/dist/heroes/HeroSpotlight.d.ts +3 -0
  294. package/dist/heroes/HeroSpotlight.d.ts.map +1 -0
  295. package/dist/heroes/HeroSpotlight.js +60 -0
  296. package/dist/heroes/HeroSpotlight.js.map +1 -0
  297. package/dist/heroes/HeroTrustSplit.d.ts +3 -0
  298. package/dist/heroes/HeroTrustSplit.d.ts.map +1 -0
  299. package/dist/heroes/HeroTrustSplit.js +53 -0
  300. package/dist/heroes/HeroTrustSplit.js.map +1 -0
  301. package/dist/heroes/HeroTypewriter.d.ts +3 -0
  302. package/dist/heroes/HeroTypewriter.d.ts.map +1 -0
  303. package/dist/heroes/HeroTypewriter.js +80 -0
  304. package/dist/heroes/HeroTypewriter.js.map +1 -0
  305. package/dist/heroes/index.d.ts +12 -0
  306. package/dist/heroes/index.d.ts.map +1 -0
  307. package/dist/heroes/index.js +12 -0
  308. package/dist/heroes/index.js.map +1 -0
  309. package/dist/index.d.ts +37 -0
  310. package/dist/index.d.ts.map +1 -0
  311. package/dist/index.js +49 -0
  312. package/dist/index.js.map +1 -0
  313. package/dist/layout/Footer.d.ts +3 -0
  314. package/dist/layout/Footer.d.ts.map +1 -0
  315. package/dist/layout/Footer.js +75 -0
  316. package/dist/layout/Footer.js.map +1 -0
  317. package/dist/layout/Navbar.d.ts +3 -0
  318. package/dist/layout/Navbar.d.ts.map +1 -0
  319. package/dist/layout/Navbar.js +81 -0
  320. package/dist/layout/Navbar.js.map +1 -0
  321. package/dist/layout/PromoTopBar.d.ts +3 -0
  322. package/dist/layout/PromoTopBar.d.ts.map +1 -0
  323. package/dist/layout/PromoTopBar.js +201 -0
  324. package/dist/layout/PromoTopBar.js.map +1 -0
  325. package/dist/layout/SectionDivider.d.ts +3 -0
  326. package/dist/layout/SectionDivider.d.ts.map +1 -0
  327. package/dist/layout/SectionDivider.js +13 -0
  328. package/dist/layout/SectionDivider.js.map +1 -0
  329. package/dist/layout/SectionTransition.d.ts +3 -0
  330. package/dist/layout/SectionTransition.d.ts.map +1 -0
  331. package/dist/layout/SectionTransition.js +60 -0
  332. package/dist/layout/SectionTransition.js.map +1 -0
  333. package/dist/layout/Ticker.d.ts +3 -0
  334. package/dist/layout/Ticker.d.ts.map +1 -0
  335. package/dist/layout/Ticker.js +32 -0
  336. package/dist/layout/Ticker.js.map +1 -0
  337. package/dist/layout/index.d.ts +6 -0
  338. package/dist/layout/index.d.ts.map +1 -0
  339. package/dist/layout/index.js +6 -0
  340. package/dist/layout/index.js.map +1 -0
  341. package/dist/personalization/CartRecovery.d.ts +3 -0
  342. package/dist/personalization/CartRecovery.d.ts.map +1 -0
  343. package/dist/personalization/CartRecovery.js +224 -0
  344. package/dist/personalization/CartRecovery.js.map +1 -0
  345. package/dist/personalization/CohortTrustStack.d.ts +3 -0
  346. package/dist/personalization/CohortTrustStack.d.ts.map +1 -0
  347. package/dist/personalization/CohortTrustStack.js +101 -0
  348. package/dist/personalization/CohortTrustStack.js.map +1 -0
  349. package/dist/personalization/LiveActivityTicker.d.ts +3 -0
  350. package/dist/personalization/LiveActivityTicker.d.ts.map +1 -0
  351. package/dist/personalization/LiveActivityTicker.js +137 -0
  352. package/dist/personalization/LiveActivityTicker.js.map +1 -0
  353. package/dist/personalization/LoyaltyStatus.d.ts +3 -0
  354. package/dist/personalization/LoyaltyStatus.d.ts.map +1 -0
  355. package/dist/personalization/LoyaltyStatus.js +185 -0
  356. package/dist/personalization/LoyaltyStatus.js.map +1 -0
  357. package/dist/personalization/PersonalizedGreeting.d.ts +3 -0
  358. package/dist/personalization/PersonalizedGreeting.d.ts.map +1 -0
  359. package/dist/personalization/PersonalizedGreeting.js +176 -0
  360. package/dist/personalization/PersonalizedGreeting.js.map +1 -0
  361. package/dist/personalization/PersonalizedRecommendations.d.ts +3 -0
  362. package/dist/personalization/PersonalizedRecommendations.d.ts.map +1 -0
  363. package/dist/personalization/PersonalizedRecommendations.js +156 -0
  364. package/dist/personalization/PersonalizedRecommendations.js.map +1 -0
  365. package/dist/personalization/ProgressMilestone.d.ts +3 -0
  366. package/dist/personalization/ProgressMilestone.d.ts.map +1 -0
  367. package/dist/personalization/ProgressMilestone.js +127 -0
  368. package/dist/personalization/ProgressMilestone.js.map +1 -0
  369. package/dist/personalization/ReengagementBanner.d.ts +3 -0
  370. package/dist/personalization/ReengagementBanner.d.ts.map +1 -0
  371. package/dist/personalization/ReengagementBanner.js +185 -0
  372. package/dist/personalization/ReengagementBanner.js.map +1 -0
  373. package/dist/personalization/ScarcityIndicator.d.ts +3 -0
  374. package/dist/personalization/ScarcityIndicator.d.ts.map +1 -0
  375. package/dist/personalization/ScarcityIndicator.js +264 -0
  376. package/dist/personalization/ScarcityIndicator.js.map +1 -0
  377. package/dist/personalization/VipGate.d.ts +3 -0
  378. package/dist/personalization/VipGate.d.ts.map +1 -0
  379. package/dist/personalization/VipGate.js +309 -0
  380. package/dist/personalization/VipGate.js.map +1 -0
  381. package/dist/placeholder/UnknownComponent.d.ts +6 -0
  382. package/dist/placeholder/UnknownComponent.d.ts.map +1 -0
  383. package/dist/placeholder/UnknownComponent.js +5 -0
  384. package/dist/placeholder/UnknownComponent.js.map +1 -0
  385. package/dist/pricing/PricingCards.d.ts +3 -0
  386. package/dist/pricing/PricingCards.d.ts.map +1 -0
  387. package/dist/pricing/PricingCards.js +143 -0
  388. package/dist/pricing/PricingCards.js.map +1 -0
  389. package/dist/primitives/AspectBox.d.ts +12 -0
  390. package/dist/primitives/AspectBox.d.ts.map +1 -0
  391. package/dist/primitives/AspectBox.js +15 -0
  392. package/dist/primitives/AspectBox.js.map +1 -0
  393. package/dist/primitives/CursorSpotlight.d.ts +11 -0
  394. package/dist/primitives/CursorSpotlight.d.ts.map +1 -0
  395. package/dist/primitives/CursorSpotlight.js +21 -0
  396. package/dist/primitives/CursorSpotlight.js.map +1 -0
  397. package/dist/primitives/HeadlineEffect.d.ts +16 -0
  398. package/dist/primitives/HeadlineEffect.d.ts.map +1 -0
  399. package/dist/primitives/HeadlineEffect.js +187 -0
  400. package/dist/primitives/HeadlineEffect.js.map +1 -0
  401. package/dist/primitives/Marquee.d.ts +11 -0
  402. package/dist/primitives/Marquee.d.ts.map +1 -0
  403. package/dist/primitives/Marquee.js +22 -0
  404. package/dist/primitives/Marquee.js.map +1 -0
  405. package/dist/primitives/MediaFlip.d.ts +16 -0
  406. package/dist/primitives/MediaFlip.d.ts.map +1 -0
  407. package/dist/primitives/MediaFlip.js +118 -0
  408. package/dist/primitives/MediaFlip.js.map +1 -0
  409. package/dist/primitives/MediaLoop.d.ts +15 -0
  410. package/dist/primitives/MediaLoop.d.ts.map +1 -0
  411. package/dist/primitives/MediaLoop.js +31 -0
  412. package/dist/primitives/MediaLoop.js.map +1 -0
  413. package/dist/primitives/PDPGallery.d.ts +24 -0
  414. package/dist/primitives/PDPGallery.d.ts.map +1 -0
  415. package/dist/primitives/PDPGallery.js +128 -0
  416. package/dist/primitives/PDPGallery.js.map +1 -0
  417. package/dist/primitives/TiltCard.d.ts +12 -0
  418. package/dist/primitives/TiltCard.d.ts.map +1 -0
  419. package/dist/primitives/TiltCard.js +41 -0
  420. package/dist/primitives/TiltCard.js.map +1 -0
  421. package/dist/product/BundleBuilder.d.ts +3 -0
  422. package/dist/product/BundleBuilder.d.ts.map +1 -0
  423. package/dist/product/BundleBuilder.js +34 -0
  424. package/dist/product/BundleBuilder.js.map +1 -0
  425. package/dist/product/BuyBox.d.ts +3 -0
  426. package/dist/product/BuyBox.d.ts.map +1 -0
  427. package/dist/product/BuyBox.js +398 -0
  428. package/dist/product/BuyBox.js.map +1 -0
  429. package/dist/product/ComparisonTable.d.ts +3 -0
  430. package/dist/product/ComparisonTable.d.ts.map +1 -0
  431. package/dist/product/ComparisonTable.js +59 -0
  432. package/dist/product/ComparisonTable.js.map +1 -0
  433. package/dist/product/FormatGrid.d.ts +3 -0
  434. package/dist/product/FormatGrid.d.ts.map +1 -0
  435. package/dist/product/FormatGrid.js +28 -0
  436. package/dist/product/FormatGrid.js.map +1 -0
  437. package/dist/product/PDPVariants.d.ts +3 -0
  438. package/dist/product/PDPVariants.d.ts.map +1 -0
  439. package/dist/product/PDPVariants.js +284 -0
  440. package/dist/product/PDPVariants.js.map +1 -0
  441. package/dist/product/PillNav.d.ts +3 -0
  442. package/dist/product/PillNav.d.ts.map +1 -0
  443. package/dist/product/PillNav.js +35 -0
  444. package/dist/product/PillNav.js.map +1 -0
  445. package/dist/product/ProductAccordion.d.ts +3 -0
  446. package/dist/product/ProductAccordion.d.ts.map +1 -0
  447. package/dist/product/ProductAccordion.js +46 -0
  448. package/dist/product/ProductAccordion.js.map +1 -0
  449. package/dist/product/ProductCard.d.ts +62 -0
  450. package/dist/product/ProductCard.d.ts.map +1 -0
  451. package/dist/product/ProductCard.js +442 -0
  452. package/dist/product/ProductCard.js.map +1 -0
  453. package/dist/product/ProductCarousel.d.ts +3 -0
  454. package/dist/product/ProductCarousel.d.ts.map +1 -0
  455. package/dist/product/ProductCarousel.js +123 -0
  456. package/dist/product/ProductCarousel.js.map +1 -0
  457. package/dist/product/ProductCenteredStack.d.ts +3 -0
  458. package/dist/product/ProductCenteredStack.d.ts.map +1 -0
  459. package/dist/product/ProductCenteredStack.js +28 -0
  460. package/dist/product/ProductCenteredStack.js.map +1 -0
  461. package/dist/product/ProductGallery.d.ts +3 -0
  462. package/dist/product/ProductGallery.d.ts.map +1 -0
  463. package/dist/product/ProductGallery.js +80 -0
  464. package/dist/product/ProductGallery.js.map +1 -0
  465. package/dist/product/ProductGrid.d.ts +3 -0
  466. package/dist/product/ProductGrid.d.ts.map +1 -0
  467. package/dist/product/ProductGrid.js +58 -0
  468. package/dist/product/ProductGrid.js.map +1 -0
  469. package/dist/product/ProductHighlightLeft.d.ts +3 -0
  470. package/dist/product/ProductHighlightLeft.d.ts.map +1 -0
  471. package/dist/product/ProductHighlightLeft.js +37 -0
  472. package/dist/product/ProductHighlightLeft.js.map +1 -0
  473. package/dist/product/ProductHighlightRight.d.ts +3 -0
  474. package/dist/product/ProductHighlightRight.d.ts.map +1 -0
  475. package/dist/product/ProductHighlightRight.js +23 -0
  476. package/dist/product/ProductHighlightRight.js.map +1 -0
  477. package/dist/product/ProductPage.d.ts +3 -0
  478. package/dist/product/ProductPage.d.ts.map +1 -0
  479. package/dist/product/ProductPage.js +105 -0
  480. package/dist/product/ProductPage.js.map +1 -0
  481. package/dist/product/SubscriptionToggle.d.ts +3 -0
  482. package/dist/product/SubscriptionToggle.d.ts.map +1 -0
  483. package/dist/product/SubscriptionToggle.js +38 -0
  484. package/dist/product/SubscriptionToggle.js.map +1 -0
  485. package/dist/product/Upsell.d.ts +3 -0
  486. package/dist/product/Upsell.d.ts.map +1 -0
  487. package/dist/product/Upsell.js +59 -0
  488. package/dist/product/Upsell.js.map +1 -0
  489. package/dist/product/VideoCarousel.d.ts +3 -0
  490. package/dist/product/VideoCarousel.d.ts.map +1 -0
  491. package/dist/product/VideoCarousel.js +188 -0
  492. package/dist/product/VideoCarousel.js.map +1 -0
  493. package/dist/product/index.d.ts +8 -0
  494. package/dist/product/index.d.ts.map +1 -0
  495. package/dist/product/index.js +8 -0
  496. package/dist/product/index.js.map +1 -0
  497. package/dist/registry-field-schemas.d.ts +66 -0
  498. package/dist/registry-field-schemas.d.ts.map +1 -0
  499. package/dist/registry-field-schemas.js +745 -0
  500. package/dist/registry-field-schemas.js.map +1 -0
  501. package/dist/registry-metadata.d.ts +10 -0
  502. package/dist/registry-metadata.d.ts.map +1 -0
  503. package/dist/registry-metadata.js +2 -0
  504. package/dist/registry-metadata.js.map +1 -0
  505. package/dist/registry.d.ts +20 -0
  506. package/dist/registry.d.ts.map +1 -0
  507. package/dist/registry.js +2317 -0
  508. package/dist/registry.js.map +1 -0
  509. package/dist/renderText.d.ts +6 -0
  510. package/dist/renderText.d.ts.map +1 -0
  511. package/dist/renderText.js +23 -0
  512. package/dist/renderText.js.map +1 -0
  513. package/dist/reviews/ReviewCarousel.d.ts +3 -0
  514. package/dist/reviews/ReviewCarousel.d.ts.map +1 -0
  515. package/dist/reviews/ReviewCarousel.js +24 -0
  516. package/dist/reviews/ReviewCarousel.js.map +1 -0
  517. package/dist/reviews/ReviewMasonry.d.ts +3 -0
  518. package/dist/reviews/ReviewMasonry.d.ts.map +1 -0
  519. package/dist/reviews/ReviewMasonry.js +25 -0
  520. package/dist/reviews/ReviewMasonry.js.map +1 -0
  521. package/dist/reviews/ReviewSpotlight.d.ts +3 -0
  522. package/dist/reviews/ReviewSpotlight.d.ts.map +1 -0
  523. package/dist/reviews/ReviewSpotlight.js +13 -0
  524. package/dist/reviews/ReviewSpotlight.js.map +1 -0
  525. package/dist/reviews/VideoTestimonials.d.ts +3 -0
  526. package/dist/reviews/VideoTestimonials.d.ts.map +1 -0
  527. package/dist/reviews/VideoTestimonials.js +35 -0
  528. package/dist/reviews/VideoTestimonials.js.map +1 -0
  529. package/dist/reviews/index.d.ts +4 -0
  530. package/dist/reviews/index.d.ts.map +1 -0
  531. package/dist/reviews/index.js +4 -0
  532. package/dist/reviews/index.js.map +1 -0
  533. package/dist/schemas/content.d.ts +125 -0
  534. package/dist/schemas/content.d.ts.map +1 -0
  535. package/dist/schemas/content.js +2 -0
  536. package/dist/schemas/content.js.map +1 -0
  537. package/dist/schemas/index.d.ts +3 -0
  538. package/dist/schemas/index.d.ts.map +1 -0
  539. package/dist/schemas/index.js +2 -0
  540. package/dist/schemas/index.js.map +1 -0
  541. package/dist/schemas/settings.d.ts +23 -0
  542. package/dist/schemas/settings.d.ts.map +1 -0
  543. package/dist/schemas/settings.js +321 -0
  544. package/dist/schemas/settings.js.map +1 -0
  545. package/dist/social-proof/AvatarGroup.d.ts +3 -0
  546. package/dist/social-proof/AvatarGroup.d.ts.map +1 -0
  547. package/dist/social-proof/AvatarGroup.js +58 -0
  548. package/dist/social-proof/AvatarGroup.js.map +1 -0
  549. package/dist/social-proof/LogoCarousel.d.ts +3 -0
  550. package/dist/social-proof/LogoCarousel.d.ts.map +1 -0
  551. package/dist/social-proof/LogoCarousel.js +49 -0
  552. package/dist/social-proof/LogoCarousel.js.map +1 -0
  553. package/dist/social-proof/LogoStrip.d.ts +3 -0
  554. package/dist/social-proof/LogoStrip.d.ts.map +1 -0
  555. package/dist/social-proof/LogoStrip.js +35 -0
  556. package/dist/social-proof/LogoStrip.js.map +1 -0
  557. package/dist/social-proof/PressMentions.d.ts +3 -0
  558. package/dist/social-proof/PressMentions.d.ts.map +1 -0
  559. package/dist/social-proof/PressMentions.js +40 -0
  560. package/dist/social-proof/PressMentions.js.map +1 -0
  561. package/dist/social-proof/StatsGrid.d.ts +3 -0
  562. package/dist/social-proof/StatsGrid.d.ts.map +1 -0
  563. package/dist/social-proof/StatsGrid.js +39 -0
  564. package/dist/social-proof/StatsGrid.js.map +1 -0
  565. package/dist/social-proof/TrustBadges.d.ts +3 -0
  566. package/dist/social-proof/TrustBadges.d.ts.map +1 -0
  567. package/dist/social-proof/TrustBadges.js +18 -0
  568. package/dist/social-proof/TrustBadges.js.map +1 -0
  569. package/dist/social-proof/index.d.ts +4 -0
  570. package/dist/social-proof/index.d.ts.map +1 -0
  571. package/dist/social-proof/index.js +4 -0
  572. package/dist/social-proof/index.js.map +1 -0
  573. package/dist/text-effects/TextEffect.d.ts +3 -0
  574. package/dist/text-effects/TextEffect.d.ts.map +1 -0
  575. package/dist/text-effects/TextEffect.js +277 -0
  576. package/dist/text-effects/TextEffect.js.map +1 -0
  577. package/dist/theme/resolve.d.ts +12 -0
  578. package/dist/theme/resolve.d.ts.map +1 -0
  579. package/dist/theme/resolve.js +26 -0
  580. package/dist/theme/resolve.js.map +1 -0
  581. package/dist/theme/tokens.d.ts +147 -0
  582. package/dist/theme/tokens.d.ts.map +1 -0
  583. package/dist/theme/tokens.js +113 -0
  584. package/dist/theme/tokens.js.map +1 -0
  585. package/dist/types.d.ts +154 -0
  586. package/dist/types.d.ts.map +1 -0
  587. package/dist/types.js +2 -0
  588. package/dist/types.js.map +1 -0
  589. package/dist/utils/elementStyles.d.ts +4 -0
  590. package/dist/utils/elementStyles.d.ts.map +1 -0
  591. package/dist/utils/elementStyles.js +6 -0
  592. package/dist/utils/elementStyles.js.map +1 -0
  593. package/dist/utils/icon-map.d.ts +128 -0
  594. package/dist/utils/icon-map.d.ts.map +1 -0
  595. package/dist/utils/icon-map.js +199 -0
  596. package/dist/utils/icon-map.js.map +1 -0
  597. package/dist/utils/imageStyle.d.ts +4 -0
  598. package/dist/utils/imageStyle.d.ts.map +1 -0
  599. package/dist/utils/imageStyle.js +23 -0
  600. package/dist/utils/imageStyle.js.map +1 -0
  601. package/dist/utils/renderIcon.d.ts +32 -0
  602. package/dist/utils/renderIcon.d.ts.map +1 -0
  603. package/dist/utils/renderIcon.js +188 -0
  604. package/dist/utils/renderIcon.js.map +1 -0
  605. package/dist/utils/schemaUtils.d.ts +9 -0
  606. package/dist/utils/schemaUtils.d.ts.map +1 -0
  607. package/dist/utils/schemaUtils.js +10 -0
  608. package/dist/utils/schemaUtils.js.map +1 -0
  609. package/dist/value-props/HowItWorks.d.ts +3 -0
  610. package/dist/value-props/HowItWorks.d.ts.map +1 -0
  611. package/dist/value-props/HowItWorks.js +23 -0
  612. package/dist/value-props/HowItWorks.js.map +1 -0
  613. package/dist/value-props/NumberedList.d.ts +3 -0
  614. package/dist/value-props/NumberedList.d.ts.map +1 -0
  615. package/dist/value-props/NumberedList.js +22 -0
  616. package/dist/value-props/NumberedList.js.map +1 -0
  617. package/dist/value-props/ValuePropsAlternating.d.ts +3 -0
  618. package/dist/value-props/ValuePropsAlternating.d.ts.map +1 -0
  619. package/dist/value-props/ValuePropsAlternating.js +22 -0
  620. package/dist/value-props/ValuePropsAlternating.js.map +1 -0
  621. package/dist/value-props/ValuePropsGrid.d.ts +3 -0
  622. package/dist/value-props/ValuePropsGrid.d.ts.map +1 -0
  623. package/dist/value-props/ValuePropsGrid.js +23 -0
  624. package/dist/value-props/ValuePropsGrid.js.map +1 -0
  625. package/dist/value-props/ValuePropsIconStrip.d.ts +3 -0
  626. package/dist/value-props/ValuePropsIconStrip.d.ts.map +1 -0
  627. package/dist/value-props/ValuePropsIconStrip.js +11 -0
  628. package/dist/value-props/ValuePropsIconStrip.js.map +1 -0
  629. package/dist/value-props/index.d.ts +6 -0
  630. package/dist/value-props/index.d.ts.map +1 -0
  631. package/dist/value-props/index.js +6 -0
  632. package/dist/value-props/index.js.map +1 -0
  633. package/package.json +46 -0
@@ -0,0 +1,199 @@
1
+ /**
2
+ * E-commerce Icon Map
3
+ *
4
+ * Reference guide for blueprint authors. Use these icon names in your content
5
+ * by prefixing with "lucide:" (e.g., "lucide:shopping-cart").
6
+ *
7
+ * All icons are from lucide-react and tree-shakeable - only imported icons
8
+ * are included in the bundle.
9
+ *
10
+ * Supports multiple formats:
11
+ * - "lucide:icon-name" → Lucide React icon
12
+ * - "https://..." → SVG/image URL (custom icons from agent/CDN)
13
+ * - "<svg>...</svg>" → Inline SVG code
14
+ * - "🛒" → Emoji fallback
15
+ *
16
+ * @see https://lucide.dev for full icon catalog and previews
17
+ */
18
+ export const RECOMMENDED_ICONS = {
19
+ // ━━━ Shopping & E-commerce ━━━
20
+ cart: "lucide:shopping-cart",
21
+ bag: "lucide:shopping-bag",
22
+ wishlist: "lucide:heart",
23
+ quickView: "lucide:eye",
24
+ zoomIn: "lucide:zoom-in",
25
+ zoomOut: "lucide:zoom-out",
26
+ fullscreen: "lucide:maximize",
27
+ externalLink: "lucide:external-link",
28
+ // ━━━ Trust & Security ━━━
29
+ shield: "lucide:shield-check",
30
+ shieldSimple: "lucide:shield",
31
+ shipping: "lucide:truck",
32
+ returns: "lucide:undo-2",
33
+ verified: "lucide:badge-check",
34
+ secure: "lucide:lock",
35
+ securePayment: "lucide:lock-keyhole",
36
+ award: "lucide:award",
37
+ // ━━━ Navigation ━━━
38
+ menu: "lucide:menu",
39
+ search: "lucide:search",
40
+ user: "lucide:user",
41
+ userCircle: "lucide:user-circle",
42
+ close: "lucide:x",
43
+ chevronDown: "lucide:chevron-down",
44
+ chevronUp: "lucide:chevron-up",
45
+ chevronLeft: "lucide:chevron-left",
46
+ chevronRight: "lucide:chevron-right",
47
+ arrowRight: "lucide:arrow-right",
48
+ arrowLeft: "lucide:arrow-left",
49
+ // ━━━ Social Media ━━━
50
+ instagram: "lucide:instagram",
51
+ twitter: "lucide:twitter",
52
+ facebook: "lucide:facebook",
53
+ youtube: "lucide:youtube",
54
+ linkedin: "lucide:linkedin",
55
+ github: "lucide:github",
56
+ // ━━━ Product Features (Skincare/Beauty) ━━━
57
+ hydration: "lucide:droplet",
58
+ hydrationIntense: "lucide:droplets",
59
+ brightening: "lucide:sparkles",
60
+ natural: "lucide:leaf",
61
+ spf: "lucide:sun",
62
+ nightCare: "lucide:moon",
63
+ botanical: "lucide:flower",
64
+ organic: "lucide:sprout",
65
+ science: "lucide:beaker",
66
+ lab: "lucide:flask",
67
+ formula: "lucide:dna",
68
+ gentle: "lucide:heart",
69
+ sensitive: "lucide:heart-pulse",
70
+ // ━━━ Actions & UI Controls ━━━
71
+ add: "lucide:plus",
72
+ remove: "lucide:minus",
73
+ check: "lucide:check",
74
+ checkCircle: "lucide:check-circle",
75
+ rating: "lucide:star",
76
+ share: "lucide:share-2",
77
+ copy: "lucide:copy",
78
+ download: "lucide:download",
79
+ upload: "lucide:upload",
80
+ refresh: "lucide:refresh",
81
+ loading: "lucide:loader-2",
82
+ // ━━━ Time & Urgency ━━━
83
+ clock: "lucide:clock",
84
+ timer: "lucide:timer",
85
+ calendar: "lucide:calendar",
86
+ trending: "lucide:flame",
87
+ flashSale: "lucide:zap",
88
+ trendingUp: "lucide:trending-up",
89
+ // ━━━ Information & Status ━━━
90
+ info: "lucide:info",
91
+ alert: "lucide:alert-circle",
92
+ warning: "lucide:alert-triangle",
93
+ help: "lucide:help-circle",
94
+ chat: "lucide:message-circle",
95
+ email: "lucide:mail",
96
+ phone: "lucide:phone",
97
+ // ━━━ Media & Content ━━━
98
+ image: "lucide:image",
99
+ video: "lucide:video",
100
+ play: "lucide:play",
101
+ pause: "lucide:pause",
102
+ playCircle: "lucide:play-circle",
103
+ testimonial: "lucide:quote",
104
+ // ━━━ Location & Shipping ━━━
105
+ location: "lucide:map-pin",
106
+ package: "lucide:package",
107
+ delivered: "lucide:package-check",
108
+ // ━━━ Misc E-commerce ━━━
109
+ gift: "lucide:gift",
110
+ sale: "lucide:tag",
111
+ coupon: "lucide:ticket",
112
+ payment: "lucide:credit-card",
113
+ receipt: "lucide:receipt",
114
+ discount: "lucide:percent",
115
+ price: "lucide:circle-dollar-sign",
116
+ };
117
+ /**
118
+ * Icon categories for easier discovery
119
+ */
120
+ export const ICON_CATEGORIES = {
121
+ shopping: [
122
+ "cart",
123
+ "bag",
124
+ "wishlist",
125
+ "quickView",
126
+ "zoomIn",
127
+ "zoomOut",
128
+ "fullscreen",
129
+ ],
130
+ trust: [
131
+ "shield",
132
+ "shipping",
133
+ "returns",
134
+ "verified",
135
+ "secure",
136
+ "award",
137
+ ],
138
+ navigation: [
139
+ "menu",
140
+ "search",
141
+ "user",
142
+ "close",
143
+ "chevronDown",
144
+ "chevronUp",
145
+ "arrowRight",
146
+ ],
147
+ social: [
148
+ "instagram",
149
+ "twitter",
150
+ "facebook",
151
+ "youtube",
152
+ "linkedin",
153
+ "github",
154
+ ],
155
+ features: [
156
+ "hydration",
157
+ "brightening",
158
+ "natural",
159
+ "spf",
160
+ "nightCare",
161
+ "botanical",
162
+ "science",
163
+ ],
164
+ actions: [
165
+ "add",
166
+ "remove",
167
+ "check",
168
+ "rating",
169
+ "share",
170
+ "loading",
171
+ ],
172
+ urgency: [
173
+ "clock",
174
+ "timer",
175
+ "trending",
176
+ "flashSale",
177
+ ],
178
+ info: [
179
+ "info",
180
+ "alert",
181
+ "warning",
182
+ "help",
183
+ "chat",
184
+ ],
185
+ };
186
+ /**
187
+ * Helper to get icon string by name
188
+ * @example getIcon("cart") → "lucide:shopping-cart"
189
+ */
190
+ export function getIcon(name) {
191
+ return RECOMMENDED_ICONS[name];
192
+ }
193
+ /**
194
+ * Helper to check if an icon name exists
195
+ */
196
+ export function hasIcon(name) {
197
+ return name in RECOMMENDED_ICONS;
198
+ }
199
+ //# sourceMappingURL=icon-map.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon-map.js","sourceRoot":"","sources":["../../src/utils/icon-map.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type React from "react";
2
+ export type ImageStyle = "card" | "full" | "contained";
3
+ export declare function renderHeroImage(url: string, alt: string, style?: ImageStyle, _theme?: unknown, fieldKey?: string, elementStyle?: React.CSSProperties): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=imageStyle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imageStyle.d.ts","sourceRoot":"","sources":["../../src/utils/imageStyle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,WAAW,CAAC;AAEvD,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,KAAK,GAAE,UAAmB,EAC1B,MAAM,CAAC,EAAE,OAAO,EAChB,QAAQ,CAAC,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,KAAK,CAAC,aAAa,2CAuCnC"}
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ export function renderHeroImage(url, alt, style = "card", _theme, fieldKey, elementStyle) {
3
+ // All styles consume CSS vars from ThemeProvider — no inline theme dependency needed
4
+ // Pull objectFit + height from elementStyle down onto the img so objectPosition works
5
+ const imgStyle = {
6
+ opacity: "var(--lx-image-opacity)",
7
+ objectPosition: "var(--lx-object-position, 50% 50%)",
8
+ display: "block",
9
+ width: "100%",
10
+ ...(elementStyle?.objectFit ? { objectFit: elementStyle.objectFit } : {}),
11
+ ...(elementStyle?.height ? { height: elementStyle.height, width: "100%" } : {}),
12
+ };
13
+ const lxAttr = fieldKey ? { "data-lx-field": fieldKey } : {};
14
+ if (style === "full") {
15
+ return (_jsx("div", { className: "-mx-5 overflow-hidden", ...lxAttr, style: elementStyle, children: _jsx("img", { src: url, alt: alt, style: imgStyle }) }));
16
+ }
17
+ if (style === "contained") {
18
+ return (_jsx("div", { className: "mx-auto max-w-5xl overflow-hidden", ...lxAttr, style: elementStyle, children: _jsx("img", { src: url, alt: alt, style: imgStyle }) }));
19
+ }
20
+ // "card" default — radius + shadow + opacity from theme CSS vars
21
+ return (_jsx("div", { className: "mx-auto max-w-5xl overflow-hidden", style: { borderRadius: "var(--lx-image-radius)", boxShadow: "var(--lx-image-shadow)", ...elementStyle }, ...lxAttr, children: _jsx("img", { src: url, alt: alt, style: { ...imgStyle, borderRadius: "inherit" } }) }));
22
+ }
23
+ //# sourceMappingURL=imageStyle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imageStyle.js","sourceRoot":"","sources":["../../src/utils/imageStyle.tsx"],"names":[],"mappings":";AAIA,MAAM,UAAU,eAAe,CAC7B,GAAW,EACX,GAAW,EACX,QAAoB,MAAM,EAC1B,MAAgB,EAChB,QAAiB,EACjB,YAAkC;IAElC,qFAAqF;IACrF,sFAAsF;IACtF,MAAM,QAAQ,GAAwB;QACpC,OAAO,EAAE,yBAA8C;QACvD,cAAc,EAAE,oCAA8C;QAC9D,OAAO,EAAE,OAAO;QAChB,KAAK,EAAE,MAAM;QACb,GAAG,CAAC,YAAY,EAAE,SAAS,CAAE,CAAC,CAAC,EAAE,SAAS,EAAG,YAAY,CAAC,SAAS,EAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,GAAG,CAAC,YAAY,EAAE,MAAM,CAAK,CAAC,CAAC,EAAE,MAAM,EAAM,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxF,CAAC;IAEF,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAE7D,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QACrB,OAAO,CACL,cAAK,SAAS,EAAC,uBAAuB,KAAK,MAAM,EAAE,KAAK,EAAE,YAAY,YACpE,cAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,GAAI,GACxC,CACP,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;QAC1B,OAAO,CACL,cAAK,SAAS,EAAC,mCAAmC,KAAK,MAAM,EAAE,KAAK,EAAE,YAAY,YAChF,cAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,GAAI,GACxC,CACP,CAAC;IACJ,CAAC;IACD,iEAAiE;IACjE,OAAO,CACL,cACE,SAAS,EAAC,mCAAmC,EAC7C,KAAK,EAAE,EAAE,YAAY,EAAE,wBAAwB,EAAE,SAAS,EAAE,wBAAwB,EAAE,GAAG,YAAY,EAAE,KACnG,MAAM,YAEV,cAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,GAAG,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,GAAI,GACxE,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,32 @@
1
+ import React from "react";
2
+ export interface RenderIconOptions {
3
+ /** Icon size in pixels (default: 24) */
4
+ size?: number;
5
+ /** Additional CSS classes */
6
+ className?: string;
7
+ /** Icon color (CSS color value) */
8
+ color?: string;
9
+ /** Stroke width for lucide icons (default: 1.5) */
10
+ strokeWidth?: number;
11
+ }
12
+ /**
13
+ * Renders an icon from various formats:
14
+ * - "lucide:icon-name" → Lucide React icon component
15
+ * - "https://..." or "http://..." → SVG/image URL
16
+ * - "<svg..." → Raw SVG string
17
+ * - "emoji" → Plain text emoji/character
18
+ *
19
+ * @param iconContent - Icon content from blueprint (string or unknown)
20
+ * @param options - Rendering options (size, className, color, strokeWidth)
21
+ * @returns React node to render
22
+ *
23
+ * @example
24
+ * ```tsx
25
+ * renderIcon("lucide:shopping-cart", { size: 24, color: "#000" })
26
+ * renderIcon("https://cdn.example.com/icon.svg") // URL
27
+ * renderIcon("🛒") // emoji fallback
28
+ * renderIcon("<svg>...</svg>") // raw SVG
29
+ * ```
30
+ */
31
+ export declare function renderIcon(iconContent: unknown, options?: RenderIconOptions): React.ReactNode;
32
+ //# sourceMappingURL=renderIcon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderIcon.d.ts","sourceRoot":"","sources":["../../src/utils/renderIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyB,MAAM,OAAO,CAAC;AAkJ9C,MAAM,WAAW,iBAAiB;IAChC,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,UAAU,CACxB,WAAW,EAAE,OAAO,EACpB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,KAAK,CAAC,SAAS,CA6EjB"}
@@ -0,0 +1,188 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { lazy, Suspense } from "react";
3
+ // Dynamic import map for lucide icons (tree-shakeable)
4
+ // Only the icons actually used in blueprints will be bundled
5
+ const LUCIDE_ICONS = {
6
+ // Shopping & E-commerce
7
+ "shopping-cart": lazy(() => import("lucide-react").then((m) => ({ default: m.ShoppingCart }))),
8
+ "shopping-bag": lazy(() => import("lucide-react").then((m) => ({ default: m.ShoppingBag }))),
9
+ heart: lazy(() => import("lucide-react").then((m) => ({ default: m.Heart }))),
10
+ "eye": lazy(() => import("lucide-react").then((m) => ({ default: m.Eye }))),
11
+ "zoom-in": lazy(() => import("lucide-react").then((m) => ({ default: m.ZoomIn }))),
12
+ "zoom-out": lazy(() => import("lucide-react").then((m) => ({ default: m.ZoomOut }))),
13
+ maximize: lazy(() => import("lucide-react").then((m) => ({ default: m.Maximize }))),
14
+ "external-link": lazy(() => import("lucide-react").then((m) => ({ default: m.ExternalLink }))),
15
+ // Trust & Security
16
+ "shield-check": lazy(() => import("lucide-react").then((m) => ({ default: m.ShieldCheck }))),
17
+ shield: lazy(() => import("lucide-react").then((m) => ({ default: m.Shield }))),
18
+ truck: lazy(() => import("lucide-react").then((m) => ({ default: m.Truck }))),
19
+ "undo-2": lazy(() => import("lucide-react").then((m) => ({ default: m.Undo2 }))),
20
+ "badge-check": lazy(() => import("lucide-react").then((m) => ({ default: m.BadgeCheck }))),
21
+ lock: lazy(() => import("lucide-react").then((m) => ({ default: m.Lock }))),
22
+ "lock-keyhole": lazy(() => import("lucide-react").then((m) => ({ default: m.LockKeyhole }))),
23
+ award: lazy(() => import("lucide-react").then((m) => ({ default: m.Award }))),
24
+ // Navigation
25
+ menu: lazy(() => import("lucide-react").then((m) => ({ default: m.Menu }))),
26
+ search: lazy(() => import("lucide-react").then((m) => ({ default: m.Search }))),
27
+ user: lazy(() => import("lucide-react").then((m) => ({ default: m.User }))),
28
+ "user-circle": lazy(() => import("lucide-react").then((m) => ({ default: m.UserCircle }))),
29
+ x: lazy(() => import("lucide-react").then((m) => ({ default: m.X }))),
30
+ "chevron-down": lazy(() => import("lucide-react").then((m) => ({ default: m.ChevronDown }))),
31
+ "chevron-up": lazy(() => import("lucide-react").then((m) => ({ default: m.ChevronUp }))),
32
+ "chevron-left": lazy(() => import("lucide-react").then((m) => ({ default: m.ChevronLeft }))),
33
+ "chevron-right": lazy(() => import("lucide-react").then((m) => ({ default: m.ChevronRight }))),
34
+ "arrow-right": lazy(() => import("lucide-react").then((m) => ({ default: m.ArrowRight }))),
35
+ "arrow-left": lazy(() => import("lucide-react").then((m) => ({ default: m.ArrowLeft }))),
36
+ // Social Media
37
+ instagram: lazy(() => import("lucide-react").then((m) => ({ default: m.Instagram }))),
38
+ twitter: lazy(() => import("lucide-react").then((m) => ({ default: m.Twitter }))),
39
+ facebook: lazy(() => import("lucide-react").then((m) => ({ default: m.Facebook }))),
40
+ youtube: lazy(() => import("lucide-react").then((m) => ({ default: m.Youtube }))),
41
+ linkedin: lazy(() => import("lucide-react").then((m) => ({ default: m.Linkedin }))),
42
+ github: lazy(() => import("lucide-react").then((m) => ({ default: m.Github }))),
43
+ // Product Features (Skincare/Beauty specific)
44
+ droplet: lazy(() => import("lucide-react").then((m) => ({ default: m.Droplet }))),
45
+ droplets: lazy(() => import("lucide-react").then((m) => ({ default: m.Droplets }))),
46
+ sparkles: lazy(() => import("lucide-react").then((m) => ({ default: m.Sparkles }))),
47
+ leaf: lazy(() => import("lucide-react").then((m) => ({ default: m.Leaf }))),
48
+ sun: lazy(() => import("lucide-react").then((m) => ({ default: m.Sun }))),
49
+ moon: lazy(() => import("lucide-react").then((m) => ({ default: m.Moon }))),
50
+ flower: lazy(() => import("lucide-react").then((m) => ({ default: m.Flower }))),
51
+ sprout: lazy(() => import("lucide-react").then((m) => ({ default: m.Sprout }))),
52
+ beaker: lazy(() => import("lucide-react").then((m) => ({ default: m.Beaker }))),
53
+ flask: lazy(() => import("lucide-react").then((m) => ({ default: m.FlaskConical }))),
54
+ dna: lazy(() => import("lucide-react").then((m) => ({ default: m.Dna }))),
55
+ "heart-pulse": lazy(() => import("lucide-react").then((m) => ({ default: m.HeartPulse }))),
56
+ // Science & Lab
57
+ microscope: lazy(() => import("lucide-react").then((m) => ({ default: m.Microscope }))),
58
+ "test-tube": lazy(() => import("lucide-react").then((m) => ({ default: m.TestTube }))),
59
+ "test-tube-2": lazy(() => import("lucide-react").then((m) => ({ default: m.TestTube2 }))),
60
+ flask: lazy(() => import("lucide-react").then((m) => ({ default: m.FlaskConical }))),
61
+ atom: lazy(() => import("lucide-react").then((m) => ({ default: m.Atom }))),
62
+ // Sound & Media Controls
63
+ "volume-x": lazy(() => import("lucide-react").then((m) => ({ default: m.VolumeX }))),
64
+ "volume-2": lazy(() => import("lucide-react").then((m) => ({ default: m.Volume2 }))),
65
+ volume: lazy(() => import("lucide-react").then((m) => ({ default: m.Volume }))),
66
+ // Rotation & 3D
67
+ "rotate-ccw": lazy(() => import("lucide-react").then((m) => ({ default: m.RotateCcw }))),
68
+ "rotate-cw": lazy(() => import("lucide-react").then((m) => ({ default: m.RotateCw }))),
69
+ "box-select": lazy(() => import("lucide-react").then((m) => ({ default: m.BoxSelect }))),
70
+ boxes: lazy(() => import("lucide-react").then((m) => ({ default: m.Boxes }))),
71
+ // Remote & Device Controls
72
+ remote: lazy(() => import("lucide-react").then((m) => ({ default: m.Radio }))),
73
+ "remote-control": lazy(() => import("lucide-react").then((m) => ({ default: m.Radio }))),
74
+ airplay: lazy(() => import("lucide-react").then((m) => ({ default: m.Airplay }))),
75
+ cast: lazy(() => import("lucide-react").then((m) => ({ default: m.Cast }))),
76
+ // Wind & Air
77
+ wind: lazy(() => import("lucide-react").then((m) => ({ default: m.Wind }))),
78
+ "cloud-fog": lazy(() => import("lucide-react").then((m) => ({ default: m.CloudFog }))),
79
+ waves: lazy(() => import("lucide-react").then((m) => ({ default: m.Waves }))),
80
+ // Actions & UI Controls
81
+ plus: lazy(() => import("lucide-react").then((m) => ({ default: m.Plus }))),
82
+ minus: lazy(() => import("lucide-react").then((m) => ({ default: m.Minus }))),
83
+ check: lazy(() => import("lucide-react").then((m) => ({ default: m.Check }))),
84
+ "check-circle": lazy(() => import("lucide-react").then((m) => ({ default: m.CheckCircle }))),
85
+ ban: lazy(() => import("lucide-react").then((m) => ({ default: m.Ban }))),
86
+ "circle-slash": lazy(() => import("lucide-react").then((m) => ({ default: m.CircleSlash }))),
87
+ recycle: lazy(() => import("lucide-react").then((m) => ({ default: m.Recycle }))),
88
+ star: lazy(() => import("lucide-react").then((m) => ({ default: m.Star }))),
89
+ "share-2": lazy(() => import("lucide-react").then((m) => ({ default: m.Share2 }))),
90
+ copy: lazy(() => import("lucide-react").then((m) => ({ default: m.Copy }))),
91
+ download: lazy(() => import("lucide-react").then((m) => ({ default: m.Download }))),
92
+ upload: lazy(() => import("lucide-react").then((m) => ({ default: m.Upload }))),
93
+ refresh: lazy(() => import("lucide-react").then((m) => ({ default: m.RefreshCw }))),
94
+ "loader-2": lazy(() => import("lucide-react").then((m) => ({ default: m.Loader2 }))),
95
+ // Time & Urgency
96
+ clock: lazy(() => import("lucide-react").then((m) => ({ default: m.Clock }))),
97
+ timer: lazy(() => import("lucide-react").then((m) => ({ default: m.Timer }))),
98
+ calendar: lazy(() => import("lucide-react").then((m) => ({ default: m.Calendar }))),
99
+ flame: lazy(() => import("lucide-react").then((m) => ({ default: m.Flame }))),
100
+ zap: lazy(() => import("lucide-react").then((m) => ({ default: m.Zap }))),
101
+ "trending-up": lazy(() => import("lucide-react").then((m) => ({ default: m.TrendingUp }))),
102
+ // Information & Status
103
+ info: lazy(() => import("lucide-react").then((m) => ({ default: m.Info }))),
104
+ "alert-circle": lazy(() => import("lucide-react").then((m) => ({ default: m.AlertCircle }))),
105
+ "alert-triangle": lazy(() => import("lucide-react").then((m) => ({ default: m.AlertTriangle }))),
106
+ "help-circle": lazy(() => import("lucide-react").then((m) => ({ default: m.HelpCircle }))),
107
+ "message-circle": lazy(() => import("lucide-react").then((m) => ({ default: m.MessageCircle }))),
108
+ mail: lazy(() => import("lucide-react").then((m) => ({ default: m.Mail }))),
109
+ phone: lazy(() => import("lucide-react").then((m) => ({ default: m.Phone }))),
110
+ // Media & Content
111
+ image: lazy(() => import("lucide-react").then((m) => ({ default: m.Image }))),
112
+ video: lazy(() => import("lucide-react").then((m) => ({ default: m.Video }))),
113
+ play: lazy(() => import("lucide-react").then((m) => ({ default: m.Play }))),
114
+ pause: lazy(() => import("lucide-react").then((m) => ({ default: m.Pause }))),
115
+ "play-circle": lazy(() => import("lucide-react").then((m) => ({ default: m.PlayCircle }))),
116
+ quote: lazy(() => import("lucide-react").then((m) => ({ default: m.Quote }))),
117
+ // Location & Shipping
118
+ "map-pin": lazy(() => import("lucide-react").then((m) => ({ default: m.MapPin }))),
119
+ package: lazy(() => import("lucide-react").then((m) => ({ default: m.Package }))),
120
+ "package-check": lazy(() => import("lucide-react").then((m) => ({ default: m.PackageCheck }))),
121
+ // Misc E-commerce
122
+ gift: lazy(() => import("lucide-react").then((m) => ({ default: m.Gift }))),
123
+ tag: lazy(() => import("lucide-react").then((m) => ({ default: m.Tag }))),
124
+ ticket: lazy(() => import("lucide-react").then((m) => ({ default: m.Ticket }))),
125
+ "credit-card": lazy(() => import("lucide-react").then((m) => ({ default: m.CreditCard }))),
126
+ receipt: lazy(() => import("lucide-react").then((m) => ({ default: m.Receipt }))),
127
+ percent: lazy(() => import("lucide-react").then((m) => ({ default: m.Percent }))),
128
+ "circle-dollar-sign": lazy(() => import("lucide-react").then((m) => ({ default: m.CircleDollarSign }))),
129
+ };
130
+ /**
131
+ * Renders an icon from various formats:
132
+ * - "lucide:icon-name" → Lucide React icon component
133
+ * - "https://..." or "http://..." → SVG/image URL
134
+ * - "<svg..." → Raw SVG string
135
+ * - "emoji" → Plain text emoji/character
136
+ *
137
+ * @param iconContent - Icon content from blueprint (string or unknown)
138
+ * @param options - Rendering options (size, className, color, strokeWidth)
139
+ * @returns React node to render
140
+ *
141
+ * @example
142
+ * ```tsx
143
+ * renderIcon("lucide:shopping-cart", { size: 24, color: "#000" })
144
+ * renderIcon("https://cdn.example.com/icon.svg") // URL
145
+ * renderIcon("🛒") // emoji fallback
146
+ * renderIcon("<svg>...</svg>") // raw SVG
147
+ * ```
148
+ */
149
+ export function renderIcon(iconContent, options) {
150
+ const iconStr = typeof iconContent === "string" ? iconContent : "";
151
+ const { size = 24, className = "", color, strokeWidth = 1.5 } = options || {};
152
+ // Empty/undefined icon
153
+ if (!iconStr)
154
+ return null;
155
+ // Lucide icon reference: "lucide:icon-name"
156
+ if (iconStr.startsWith("lucide:")) {
157
+ const iconName = iconStr.replace("lucide:", "").toLowerCase();
158
+ const IconComponent = LUCIDE_ICONS[iconName];
159
+ if (!IconComponent) {
160
+ if (process.env.NODE_ENV !== "production") {
161
+ console.warn(`[renderIcon] Unknown lucide icon: "${iconName}". Available: ${Object.keys(LUCIDE_ICONS).join(", ")}`);
162
+ }
163
+ return null;
164
+ }
165
+ return (_jsx(Suspense, { fallback: _jsx("span", { className: className, style: { width: size, height: size, display: "inline-block" }, children: "\u22EF" }), children: _jsx(IconComponent, { size: size, className: className, color: color, strokeWidth: strokeWidth, "aria-hidden": "true" }) }));
166
+ }
167
+ // SVG/Image URL: "https://..." or "http://..."
168
+ if (iconStr.startsWith("http://") || iconStr.startsWith("https://")) {
169
+ return (_jsx("img", { src: iconStr, alt: "", className: className, style: {
170
+ width: size,
171
+ height: size,
172
+ display: "inline-block",
173
+ objectFit: "contain",
174
+ }, "aria-hidden": "true" }));
175
+ }
176
+ // Raw SVG string: "<svg..."
177
+ if (iconStr.trim().startsWith("<svg")) {
178
+ return (_jsx("span", { className: className, style: {
179
+ width: size,
180
+ height: size,
181
+ display: "inline-block",
182
+ color: color,
183
+ }, dangerouslySetInnerHTML: { __html: iconStr }, "aria-hidden": "true" }));
184
+ }
185
+ // Fallback: emoji or text character
186
+ return (_jsx("span", { className: className, style: { color: color }, "aria-hidden": "true", children: iconStr }));
187
+ }
188
+ //# sourceMappingURL=renderIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderIcon.js","sourceRoot":"","sources":["../../src/utils/renderIcon.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAG9C,uDAAuD;AACvD,6DAA6D;AAC7D,MAAM,YAAY,GAAgF;IAChG,wBAAwB;IACxB,eAAe,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IAC9F,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC5F,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7E,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IAC3E,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAClF,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACpF,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACnF,eAAe,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IAE9F,mBAAmB;IACnB,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC5F,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC/E,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7E,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAChF,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC1F,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC5F,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAE7E,aAAa;IACb,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC/E,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC1F,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrE,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC5F,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IACxF,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC5F,eAAe,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IAC9F,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC1F,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IAExF,eAAe;IACf,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IACrF,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACjF,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACnF,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACjF,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACnF,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAE/E,8CAA8C;IAC9C,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACjF,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACnF,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACnF,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACzE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC/E,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC/E,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC/E,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IACpF,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACzE,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAE1F,gBAAgB;IAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IACvF,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACtF,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IACzF,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IACpF,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAE3E,yBAAyB;IACzB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACpF,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACpF,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAE/E,gBAAgB;IAChB,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IACxF,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACtF,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IACxF,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAE7E,2BAA2B;IAC3B,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC9E,gBAAgB,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACxF,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACjF,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAE3E,aAAa;IACb,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACtF,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAE7E,wBAAwB;IACxB,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7E,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7E,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC5F,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACzE,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC5F,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACjF,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAClF,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACnF,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC/E,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IACnF,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAEpF,iBAAiB;IACjB,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7E,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7E,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACnF,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7E,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACzE,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAE1F,uBAAuB;IACvB,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC5F,gBAAgB,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;IAChG,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC1F,gBAAgB,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;IAChG,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAE7E,kBAAkB;IAClB,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7E,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7E,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7E,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC1F,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAE7E,sBAAsB;IACtB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAClF,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACjF,eAAe,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IAE9F,kBAAkB;IAClB,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACzE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC/E,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC1F,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACjF,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACjF,oBAAoB,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;CACxG,CAAC;AAaF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,UAAU,CACxB,WAAoB,EACpB,OAA2B;IAE3B,MAAM,OAAO,GAAG,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,SAAS,GAAG,EAAE,EAAE,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAE9E,uBAAuB;IACvB,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,4CAA4C;IAC5C,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAC9D,MAAM,aAAa,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE7C,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;gBAC1C,OAAO,CAAC,IAAI,CAAC,sCAAsC,QAAQ,iBAAiB,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtH,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,CACL,KAAC,QAAQ,IAAC,QAAQ,EAAE,eAAM,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,uBAAU,YACrH,KAAC,aAAa,IACZ,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,iBACZ,MAAM,GAClB,GACO,CACZ,CAAC;IACJ,CAAC;IAED,+CAA+C;IAC/C,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACpE,OAAO,CACL,cACE,GAAG,EAAE,OAAO,EACZ,GAAG,EAAC,EAAE,EACN,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE;gBACL,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,cAAc;gBACvB,SAAS,EAAE,SAAS;aACrB,iBACW,MAAM,GAClB,CACH,CAAC;IACJ,CAAC;IAED,4BAA4B;IAC5B,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,OAAO,CACL,eACE,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE;gBACL,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,cAAc;gBACvB,KAAK,EAAE,KAAK;aACb,EACD,uBAAuB,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,iBAChC,MAAM,GAClB,CACH,CAAC;IACJ,CAAC;IAED,oCAAoC;IACpC,OAAO,CACL,eACE,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBACX,MAAM,YAEjB,OAAO,GACH,CACR,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { ContentFieldSchema } from "../schemas/content";
2
+ import type { SectionSettings } from "../schemas/content";
3
+ export interface VariantSchema {
4
+ fields: Record<string, ContentFieldSchema>;
5
+ supportedSettings: Array<keyof SectionSettings>;
6
+ defaultContent: Record<string, unknown>;
7
+ }
8
+ export declare function getVariantSchema(type: string, variant: string): VariantSchema;
9
+ //# sourceMappingURL=schemaUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemaUtils.d.ts","sourceRoot":"","sources":["../../src/utils/schemaUtils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC3C,iBAAiB,EAAE,KAAK,CAAC,MAAM,eAAe,CAAC,CAAC;IAChD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACzC;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,aAAa,CAO7E"}
@@ -0,0 +1,10 @@
1
+ import { resolveComponent } from "../registry";
2
+ export function getVariantSchema(type, variant) {
3
+ const entry = resolveComponent(type, variant);
4
+ return {
5
+ fields: entry?.fields ?? {},
6
+ supportedSettings: (entry?.supportedSettings ?? []),
7
+ defaultContent: entry?.defaultContent ?? {},
8
+ };
9
+ }
10
+ //# sourceMappingURL=schemaUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemaUtils.js","sourceRoot":"","sources":["../../src/utils/schemaUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAU/C,MAAM,UAAU,gBAAgB,CAAC,IAAY,EAAE,OAAe;IAC5D,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9C,OAAO;QACL,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,EAAE;QAC3B,iBAAiB,EAAE,CAAC,KAAK,EAAE,iBAAiB,IAAI,EAAE,CAAiC;QACnF,cAAc,EAAE,KAAK,EAAE,cAAc,IAAI,EAAE;KAC5C,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { ComponentProps } from "../types";
2
+ export default function HowItWorks({ content, variant, theme, elementStyles }: ComponentProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=HowItWorks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HowItWorks.d.ts","sourceRoot":"","sources":["../../src/value-props/HowItWorks.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAI/C,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,cAAc,2CA+H5F"}
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { renderText } from "../renderText";
3
+ import { elStyle } from "../utils/elementStyles";
4
+ export default function HowItWorks({ content, variant, theme, elementStyles }) {
5
+ const rawSteps = content.steps || [];
6
+ const steps = rawSteps.map((step, idx) => {
7
+ if (typeof step === "string")
8
+ return { number: idx + 1, title: step, body: "", image_url: undefined };
9
+ const obj = step;
10
+ return {
11
+ number: typeof obj.number === "number" ? obj.number : idx + 1,
12
+ title: renderText(obj.title || obj.heading),
13
+ body: renderText(obj.body || obj.description || obj.text),
14
+ image_url: obj.image_url ? renderText(obj.image_url) : undefined,
15
+ };
16
+ });
17
+ if (variant === "timeline") {
18
+ return (_jsx("section", { className: "px-5", style: { backgroundColor: theme.palette.bg, paddingTop: "var(--lx-section-padding)", paddingBottom: "var(--lx-section-padding)" }, children: _jsxs("div", { className: "mx-auto max-w-3xl", children: [content.heading ? (_jsx("h2", { "data-lx-field": "heading", className: "text-center mb-14", style: { fontFamily: `var(--lx-font-heading, ${theme.fonts.display})`, fontSize: "var(--lx-section-heading-size)", fontWeight: "var(--lx-section-heading-weight)", letterSpacing: "var(--lx-section-heading-tracking)", color: theme.palette.text, ...elStyle(elementStyles, "heading") }, children: renderText(content.heading) })) : null, _jsxs("div", { className: "relative pl-10 md:pl-14 space-y-12", children: [_jsx("div", { className: "absolute left-4 md:left-5 top-0 bottom-0 w-0.5", style: { backgroundColor: theme.palette.accent + "40" } }), steps.map((step, i) => (_jsxs("div", { className: "relative", children: [_jsx("div", { className: "absolute -left-10 md:-left-14 top-0 w-8 h-8 rounded-full flex items-center justify-center text-sm font-bold", style: { backgroundColor: theme.palette.accent, color: "#fff" }, children: step.number }), _jsx("h3", { "data-lx-field": "label", className: "mb-2", style: { fontFamily: `var(--lx-font-heading, ${theme.fonts.display})`, fontSize: "var(--lx-item-heading-size)", fontWeight: "var(--lx-item-heading-weight)", color: theme.palette.text, ...elStyle(elementStyles, "label") }, children: step.title }), _jsx("p", { "data-lx-field": "body", className: "leading-relaxed", style: { fontFamily: `var(--lx-font-body, ${theme.fonts.body})`, fontSize: "var(--lx-body-size)", lineHeight: "var(--lx-body-lh)", opacity: "var(--lx-text-muted)", color: theme.palette.text, ...elStyle(elementStyles, "body") }, children: step.body }), step.image_url && (_jsx("img", { src: step.image_url, alt: step.title, className: "mt-4 w-full rounded-lg shadow-sm" }))] }, i)))] })] }) }));
19
+ }
20
+ // 3-step and with-arrows: horizontal grid
21
+ return (_jsx("section", { className: "px-5", style: { backgroundColor: theme.palette.bg, paddingTop: "var(--lx-section-padding)", paddingBottom: "var(--lx-section-padding)" }, children: _jsxs("div", { className: "mx-auto max-w-6xl", children: [content.heading ? (_jsx("h2", { "data-lx-field": "heading", className: "text-center mb-14", style: { fontFamily: `var(--lx-font-heading, ${theme.fonts.display})`, fontSize: "var(--lx-section-heading-size)", fontWeight: "var(--lx-section-heading-weight)", letterSpacing: "var(--lx-section-heading-tracking)", color: theme.palette.text, ...elStyle(elementStyles, "heading") }, children: renderText(content.heading) })) : null, _jsx("div", { className: "grid grid-cols-1 md:grid-cols-3 gap-8 items-start", children: steps.map((step, i) => (_jsxs("div", { className: "relative flex flex-col items-center text-center", children: [_jsx("div", { className: "w-14 h-14 rounded-full flex items-center justify-center text-xl font-bold mb-5", style: { backgroundColor: theme.palette.accent + "1a", color: theme.palette.accent }, children: step.number }), step.image_url && (_jsx("img", { src: step.image_url, alt: step.title, className: "w-full rounded-lg shadow-sm mb-5" })), _jsx("h3", { "data-lx-field": "label", className: "mb-2", style: { fontFamily: `var(--lx-font-heading, ${theme.fonts.display})`, fontSize: "var(--lx-item-heading-size)", fontWeight: "var(--lx-item-heading-weight)", color: theme.palette.text, ...elStyle(elementStyles, "label") }, children: step.title }), _jsx("p", { "data-lx-field": "body", className: "leading-relaxed", style: { fontFamily: `var(--lx-font-body, ${theme.fonts.body})`, fontSize: "var(--lx-body-size)", lineHeight: "var(--lx-body-lh)", opacity: "var(--lx-text-muted)", color: theme.palette.text, ...elStyle(elementStyles, "body") }, children: step.body }), variant === "with-arrows" && i < steps.length - 1 && (_jsx("div", { className: "hidden md:block absolute top-7 -right-6 text-2xl", style: { color: theme.palette.accent }, children: "\u2192" }))] }, i))) })] }) }));
22
+ }
23
+ //# sourceMappingURL=HowItWorks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HowItWorks.js","sourceRoot":"","sources":["../../src/value-props/HowItWorks.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ComponentProps } from "../types";
2
+ export default function NumberedList({ content, variant, theme, elementStyles }: ComponentProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=NumberedList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NumberedList.d.ts","sourceRoot":"","sources":["../../src/value-props/NumberedList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAI/C,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,cAAc,2CA0F9F"}