@thorprovider/blocks 2.0.0 → 3.0.1

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 (842) hide show
  1. package/README.md +120 -8
  2. package/dist/.tsbuildinfo +1 -0
  3. package/dist/blocks/application/app-shells/app-shell-1-sidebar.d.ts +21 -0
  4. package/dist/blocks/application/app-shells/app-shell-1-sidebar.d.ts.map +1 -0
  5. package/dist/blocks/application/app-shells/app-shell-1-sidebar.js +147 -0
  6. package/dist/blocks/application/app-shells/app-shell-1-sidebar.js.map +1 -0
  7. package/dist/blocks/application/app-shells/app-shell-1-sidebar.mjs +153 -0
  8. package/dist/blocks/application/app-shells/app-shell-1-sidebar.mjs.map +1 -0
  9. package/dist/blocks/application/app-shells/app-shell-1.d.ts +27 -0
  10. package/dist/blocks/application/app-shells/app-shell-1.d.ts.map +1 -0
  11. package/dist/blocks/application/app-shells/app-shell-1.js +150 -0
  12. package/dist/blocks/application/app-shells/app-shell-1.js.map +1 -0
  13. package/dist/blocks/application/app-shells/app-shell-1.mjs +123 -0
  14. package/dist/blocks/application/app-shells/app-shell-1.mjs.map +1 -0
  15. package/dist/blocks/application/login-forms/login-page.d.ts +42 -0
  16. package/dist/blocks/application/login-forms/login-page.d.ts.map +1 -0
  17. package/dist/blocks/application/login-forms/login-page.js +209 -0
  18. package/dist/blocks/application/login-forms/login-page.js.map +1 -0
  19. package/dist/blocks/application/login-forms/login-page.mjs +185 -0
  20. package/dist/blocks/application/login-forms/login-page.mjs.map +1 -0
  21. package/dist/blocks/application/password-recovery/forgot-password-page-1-brand-mark.d.ts +3 -0
  22. package/dist/blocks/application/password-recovery/forgot-password-page-1-brand-mark.d.ts.map +1 -0
  23. package/dist/blocks/application/password-recovery/forgot-password-page-1-brand-mark.js +74 -0
  24. package/dist/blocks/application/password-recovery/forgot-password-page-1-brand-mark.js.map +1 -0
  25. package/dist/blocks/application/password-recovery/forgot-password-page-1-brand-mark.mjs +50 -0
  26. package/dist/blocks/application/password-recovery/forgot-password-page-1-brand-mark.mjs.map +1 -0
  27. package/dist/blocks/application/password-recovery/forgot-password-page-1.d.ts +42 -0
  28. package/dist/blocks/application/password-recovery/forgot-password-page-1.d.ts.map +1 -0
  29. package/dist/blocks/application/password-recovery/forgot-password-page-1.js +293 -0
  30. package/dist/blocks/application/password-recovery/forgot-password-page-1.js.map +1 -0
  31. package/dist/blocks/application/password-recovery/forgot-password-page-1.mjs +259 -0
  32. package/dist/blocks/application/password-recovery/forgot-password-page-1.mjs.map +1 -0
  33. package/dist/blocks/application/signup-forms/signup-page-1.d.ts +41 -0
  34. package/dist/blocks/application/signup-forms/signup-page-1.d.ts.map +1 -0
  35. package/dist/blocks/application/signup-forms/signup-page-1.js +195 -0
  36. package/dist/blocks/application/signup-forms/signup-page-1.js.map +1 -0
  37. package/dist/blocks/application/signup-forms/signup-page-1.mjs +171 -0
  38. package/dist/blocks/application/signup-forms/signup-page-1.mjs.map +1 -0
  39. package/dist/blocks/application/verification/verify-1.d.ts +35 -0
  40. package/dist/blocks/application/verification/verify-1.d.ts.map +1 -0
  41. package/dist/blocks/application/verification/verify-1.js +243 -0
  42. package/dist/blocks/application/verification/verify-1.js.map +1 -0
  43. package/dist/blocks/application/verification/verify-1.mjs +219 -0
  44. package/dist/blocks/application/verification/verify-1.mjs.map +1 -0
  45. package/dist/blocks/application/verification/verify-confetti.d.ts +22 -0
  46. package/dist/blocks/application/verification/verify-confetti.d.ts.map +1 -0
  47. package/dist/blocks/application/verification/verify-confetti.js +145 -0
  48. package/dist/blocks/application/verification/verify-confetti.js.map +1 -0
  49. package/dist/blocks/application/verification/verify-confetti.mjs +121 -0
  50. package/dist/blocks/application/verification/verify-confetti.mjs.map +1 -0
  51. package/dist/blocks/e-commerce/category-filters/category-listing-filter-fields.d.ts +39 -0
  52. package/dist/blocks/e-commerce/category-filters/category-listing-filter-fields.d.ts.map +1 -0
  53. package/dist/blocks/e-commerce/category-filters/category-listing-filter-fields.js +180 -0
  54. package/dist/blocks/e-commerce/category-filters/category-listing-filter-fields.js.map +1 -0
  55. package/dist/blocks/e-commerce/category-filters/category-listing-filter-fields.mjs +156 -0
  56. package/dist/blocks/e-commerce/category-filters/category-listing-filter-fields.mjs.map +1 -0
  57. package/dist/blocks/e-commerce/category-filters/category-listing.d.ts +236 -0
  58. package/dist/blocks/e-commerce/category-filters/category-listing.d.ts.map +1 -0
  59. package/dist/blocks/e-commerce/category-filters/category-listing.js +562 -0
  60. package/dist/blocks/e-commerce/category-filters/category-listing.js.map +1 -0
  61. package/dist/blocks/e-commerce/category-filters/category-listing.mjs +539 -0
  62. package/dist/blocks/e-commerce/category-filters/category-listing.mjs.map +1 -0
  63. package/dist/blocks/e-commerce/checkout-forms/checkbox-check.d.ts +4 -0
  64. package/dist/blocks/e-commerce/checkout-forms/checkbox-check.d.ts.map +1 -0
  65. package/dist/blocks/e-commerce/checkout-forms/checkbox-check.js +97 -0
  66. package/dist/blocks/e-commerce/checkout-forms/checkbox-check.js.map +1 -0
  67. package/dist/blocks/e-commerce/checkout-forms/checkbox-check.mjs +73 -0
  68. package/dist/blocks/e-commerce/checkout-forms/checkbox-check.mjs.map +1 -0
  69. package/dist/blocks/e-commerce/checkout-forms/checkout-confirmation-fulfilment-progress.d.ts +41 -0
  70. package/dist/blocks/e-commerce/checkout-forms/checkout-confirmation-fulfilment-progress.d.ts.map +1 -0
  71. package/dist/blocks/e-commerce/checkout-forms/checkout-confirmation-fulfilment-progress.js +115 -0
  72. package/dist/blocks/e-commerce/checkout-forms/checkout-confirmation-fulfilment-progress.js.map +1 -0
  73. package/dist/blocks/e-commerce/checkout-forms/checkout-confirmation-fulfilment-progress.mjs +91 -0
  74. package/dist/blocks/e-commerce/checkout-forms/checkout-confirmation-fulfilment-progress.mjs.map +1 -0
  75. package/dist/blocks/e-commerce/checkout-forms/checkout-confirmation.d.ts +107 -0
  76. package/dist/blocks/e-commerce/checkout-forms/checkout-confirmation.d.ts.map +1 -0
  77. package/dist/blocks/e-commerce/checkout-forms/checkout-confirmation.js +180 -0
  78. package/dist/blocks/e-commerce/checkout-forms/checkout-confirmation.js.map +1 -0
  79. package/dist/blocks/e-commerce/checkout-forms/checkout-confirmation.mjs +156 -0
  80. package/dist/blocks/e-commerce/checkout-forms/checkout-confirmation.mjs.map +1 -0
  81. package/dist/blocks/e-commerce/checkout-forms/checkout-contact-step.d.ts +13 -0
  82. package/dist/blocks/e-commerce/checkout-forms/checkout-contact-step.d.ts.map +1 -0
  83. package/dist/blocks/e-commerce/checkout-forms/checkout-contact-step.js +180 -0
  84. package/dist/blocks/e-commerce/checkout-forms/checkout-contact-step.js.map +1 -0
  85. package/dist/blocks/e-commerce/checkout-forms/checkout-contact-step.mjs +156 -0
  86. package/dist/blocks/e-commerce/checkout-forms/checkout-contact-step.mjs.map +1 -0
  87. package/dist/blocks/e-commerce/checkout-forms/checkout-country-field.d.ts +12 -0
  88. package/dist/blocks/e-commerce/checkout-forms/checkout-country-field.d.ts.map +1 -0
  89. package/dist/blocks/e-commerce/checkout-forms/checkout-country-field.js +50 -0
  90. package/dist/blocks/e-commerce/checkout-forms/checkout-country-field.js.map +1 -0
  91. package/dist/blocks/e-commerce/checkout-forms/checkout-country-field.mjs +33 -0
  92. package/dist/blocks/e-commerce/checkout-forms/checkout-country-field.mjs.map +1 -0
  93. package/dist/blocks/e-commerce/checkout-forms/checkout-field-feedback.d.ts +11 -0
  94. package/dist/blocks/e-commerce/checkout-forms/checkout-field-feedback.d.ts.map +1 -0
  95. package/dist/blocks/e-commerce/checkout-forms/checkout-field-feedback.js +50 -0
  96. package/dist/blocks/e-commerce/checkout-forms/checkout-field-feedback.js.map +1 -0
  97. package/dist/blocks/e-commerce/checkout-forms/checkout-field-feedback.mjs +25 -0
  98. package/dist/blocks/e-commerce/checkout-forms/checkout-field-feedback.mjs.map +1 -0
  99. package/dist/blocks/e-commerce/checkout-forms/checkout-form-types.d.ts +5 -0
  100. package/dist/blocks/e-commerce/checkout-forms/checkout-form-types.d.ts.map +1 -0
  101. package/dist/blocks/e-commerce/checkout-forms/checkout-form-types.js +17 -0
  102. package/dist/blocks/e-commerce/checkout-forms/checkout-form-types.js.map +1 -0
  103. package/dist/blocks/e-commerce/checkout-forms/checkout-form-types.mjs +1 -0
  104. package/dist/blocks/e-commerce/checkout-forms/checkout-form-types.mjs.map +1 -0
  105. package/dist/blocks/e-commerce/checkout-forms/checkout-order-summary.d.ts +20 -0
  106. package/dist/blocks/e-commerce/checkout-forms/checkout-order-summary.d.ts.map +1 -0
  107. package/dist/blocks/e-commerce/checkout-forms/checkout-order-summary.js +176 -0
  108. package/dist/blocks/e-commerce/checkout-forms/checkout-order-summary.js.map +1 -0
  109. package/dist/blocks/e-commerce/checkout-forms/checkout-order-summary.mjs +152 -0
  110. package/dist/blocks/e-commerce/checkout-forms/checkout-order-summary.mjs.map +1 -0
  111. package/dist/blocks/e-commerce/checkout-forms/checkout-payment-step.d.ts +12 -0
  112. package/dist/blocks/e-commerce/checkout-forms/checkout-payment-step.d.ts.map +1 -0
  113. package/dist/blocks/e-commerce/checkout-forms/checkout-payment-step.js +93 -0
  114. package/dist/blocks/e-commerce/checkout-forms/checkout-payment-step.js.map +1 -0
  115. package/dist/blocks/e-commerce/checkout-forms/checkout-payment-step.mjs +69 -0
  116. package/dist/blocks/e-commerce/checkout-forms/checkout-payment-step.mjs.map +1 -0
  117. package/dist/blocks/e-commerce/checkout-forms/checkout-progress.d.ts +11 -0
  118. package/dist/blocks/e-commerce/checkout-forms/checkout-progress.d.ts.map +1 -0
  119. package/dist/blocks/e-commerce/checkout-forms/checkout-progress.js +76 -0
  120. package/dist/blocks/e-commerce/checkout-forms/checkout-progress.js.map +1 -0
  121. package/dist/blocks/e-commerce/checkout-forms/checkout-progress.mjs +52 -0
  122. package/dist/blocks/e-commerce/checkout-forms/checkout-progress.mjs.map +1 -0
  123. package/dist/blocks/e-commerce/checkout-forms/checkout-review-step.d.ts +11 -0
  124. package/dist/blocks/e-commerce/checkout-forms/checkout-review-step.d.ts.map +1 -0
  125. package/dist/blocks/e-commerce/checkout-forms/checkout-review-step.js +64 -0
  126. package/dist/blocks/e-commerce/checkout-forms/checkout-review-step.js.map +1 -0
  127. package/dist/blocks/e-commerce/checkout-forms/checkout-review-step.mjs +40 -0
  128. package/dist/blocks/e-commerce/checkout-forms/checkout-review-step.mjs.map +1 -0
  129. package/dist/blocks/e-commerce/checkout-forms/checkout-shipping-step.d.ts +17 -0
  130. package/dist/blocks/e-commerce/checkout-forms/checkout-shipping-step.d.ts.map +1 -0
  131. package/dist/blocks/e-commerce/checkout-forms/checkout-shipping-step.js +199 -0
  132. package/dist/blocks/e-commerce/checkout-forms/checkout-shipping-step.js.map +1 -0
  133. package/dist/blocks/e-commerce/checkout-forms/checkout-shipping-step.mjs +175 -0
  134. package/dist/blocks/e-commerce/checkout-forms/checkout-shipping-step.mjs.map +1 -0
  135. package/dist/blocks/e-commerce/checkout-forms/checkout.d.ts +164 -0
  136. package/dist/blocks/e-commerce/checkout-forms/checkout.d.ts.map +1 -0
  137. package/dist/blocks/e-commerce/checkout-forms/checkout.js +351 -0
  138. package/dist/blocks/e-commerce/checkout-forms/checkout.js.map +1 -0
  139. package/dist/blocks/e-commerce/checkout-forms/checkout.mjs +327 -0
  140. package/dist/blocks/e-commerce/checkout-forms/checkout.mjs.map +1 -0
  141. package/dist/blocks/e-commerce/navigation/back-to-top.d.ts +28 -0
  142. package/dist/blocks/e-commerce/navigation/back-to-top.d.ts.map +1 -0
  143. package/dist/blocks/e-commerce/navigation/back-to-top.js +78 -0
  144. package/dist/blocks/e-commerce/navigation/back-to-top.js.map +1 -0
  145. package/dist/blocks/e-commerce/navigation/back-to-top.mjs +52 -0
  146. package/dist/blocks/e-commerce/navigation/back-to-top.mjs.map +1 -0
  147. package/dist/blocks/e-commerce/navigation/breadcrumb.d.ts +61 -0
  148. package/dist/blocks/e-commerce/navigation/breadcrumb.d.ts.map +1 -0
  149. package/dist/blocks/e-commerce/navigation/breadcrumb.js +111 -0
  150. package/dist/blocks/e-commerce/navigation/breadcrumb.js.map +1 -0
  151. package/dist/blocks/e-commerce/navigation/breadcrumb.mjs +93 -0
  152. package/dist/blocks/e-commerce/navigation/breadcrumb.mjs.map +1 -0
  153. package/dist/blocks/e-commerce/navigation/category-icon.d.ts +28 -0
  154. package/dist/blocks/e-commerce/navigation/category-icon.d.ts.map +1 -0
  155. package/dist/blocks/e-commerce/navigation/category-icon.js +86 -0
  156. package/dist/blocks/e-commerce/navigation/category-icon.js.map +1 -0
  157. package/dist/blocks/e-commerce/navigation/category-icon.mjs +79 -0
  158. package/dist/blocks/e-commerce/navigation/category-icon.mjs.map +1 -0
  159. package/dist/blocks/e-commerce/navigation/mega-menu.d.ts +112 -0
  160. package/dist/blocks/e-commerce/navigation/mega-menu.d.ts.map +1 -0
  161. package/dist/blocks/e-commerce/navigation/mega-menu.js +250 -0
  162. package/dist/blocks/e-commerce/navigation/mega-menu.js.map +1 -0
  163. package/dist/blocks/e-commerce/navigation/mega-menu.mjs +228 -0
  164. package/dist/blocks/e-commerce/navigation/mega-menu.mjs.map +1 -0
  165. package/dist/blocks/e-commerce/navigation/mobile-bottom-nav.d.ts +71 -0
  166. package/dist/blocks/e-commerce/navigation/mobile-bottom-nav.d.ts.map +1 -0
  167. package/dist/blocks/e-commerce/navigation/mobile-bottom-nav.js +94 -0
  168. package/dist/blocks/e-commerce/navigation/mobile-bottom-nav.js.map +1 -0
  169. package/dist/blocks/e-commerce/navigation/mobile-bottom-nav.mjs +68 -0
  170. package/dist/blocks/e-commerce/navigation/mobile-bottom-nav.mjs.map +1 -0
  171. package/dist/blocks/e-commerce/navigation/mobile-category-drawer.d.ts +121 -0
  172. package/dist/blocks/e-commerce/navigation/mobile-category-drawer.d.ts.map +1 -0
  173. package/dist/blocks/e-commerce/navigation/mobile-category-drawer.js +257 -0
  174. package/dist/blocks/e-commerce/navigation/mobile-category-drawer.js.map +1 -0
  175. package/dist/blocks/e-commerce/navigation/mobile-category-drawer.mjs +235 -0
  176. package/dist/blocks/e-commerce/navigation/mobile-category-drawer.mjs.map +1 -0
  177. package/dist/blocks/e-commerce/navigation/skip-to-content.d.ts +25 -0
  178. package/dist/blocks/e-commerce/navigation/skip-to-content.d.ts.map +1 -0
  179. package/dist/blocks/e-commerce/navigation/skip-to-content.js +55 -0
  180. package/dist/blocks/e-commerce/navigation/skip-to-content.js.map +1 -0
  181. package/dist/blocks/e-commerce/navigation/skip-to-content.mjs +30 -0
  182. package/dist/blocks/e-commerce/navigation/skip-to-content.mjs.map +1 -0
  183. package/dist/blocks/e-commerce/navigation/storefront-navbar-account-menu.d.ts +23 -0
  184. package/dist/blocks/e-commerce/navigation/storefront-navbar-account-menu.d.ts.map +1 -0
  185. package/dist/blocks/e-commerce/navigation/storefront-navbar-account-menu.js +127 -0
  186. package/dist/blocks/e-commerce/navigation/storefront-navbar-account-menu.js.map +1 -0
  187. package/dist/blocks/e-commerce/navigation/storefront-navbar-account-menu.mjs +111 -0
  188. package/dist/blocks/e-commerce/navigation/storefront-navbar-account-menu.mjs.map +1 -0
  189. package/dist/blocks/e-commerce/navigation/storefront-navbar-cart-sheet.d.ts +66 -0
  190. package/dist/blocks/e-commerce/navigation/storefront-navbar-cart-sheet.d.ts.map +1 -0
  191. package/dist/blocks/e-commerce/navigation/storefront-navbar-cart-sheet.js +280 -0
  192. package/dist/blocks/e-commerce/navigation/storefront-navbar-cart-sheet.js.map +1 -0
  193. package/dist/blocks/e-commerce/navigation/storefront-navbar-cart-sheet.mjs +263 -0
  194. package/dist/blocks/e-commerce/navigation/storefront-navbar-cart-sheet.mjs.map +1 -0
  195. package/dist/blocks/e-commerce/navigation/storefront-navbar-mobile-nav.d.ts +13 -0
  196. package/dist/blocks/e-commerce/navigation/storefront-navbar-mobile-nav.d.ts.map +1 -0
  197. package/dist/blocks/e-commerce/navigation/storefront-navbar-mobile-nav.js +83 -0
  198. package/dist/blocks/e-commerce/navigation/storefront-navbar-mobile-nav.js.map +1 -0
  199. package/dist/blocks/e-commerce/navigation/storefront-navbar-mobile-nav.mjs +59 -0
  200. package/dist/blocks/e-commerce/navigation/storefront-navbar-mobile-nav.mjs.map +1 -0
  201. package/dist/blocks/e-commerce/navigation/storefront-navbar-search-bar.d.ts +8 -0
  202. package/dist/blocks/e-commerce/navigation/storefront-navbar-search-bar.d.ts.map +1 -0
  203. package/dist/blocks/e-commerce/navigation/storefront-navbar-search-bar.js +73 -0
  204. package/dist/blocks/e-commerce/navigation/storefront-navbar-search-bar.js.map +1 -0
  205. package/dist/blocks/e-commerce/navigation/storefront-navbar-search-bar.mjs +49 -0
  206. package/dist/blocks/e-commerce/navigation/storefront-navbar-search-bar.mjs.map +1 -0
  207. package/dist/blocks/e-commerce/navigation/storefront-navbar.d.ts +121 -0
  208. package/dist/blocks/e-commerce/navigation/storefront-navbar.d.ts.map +1 -0
  209. package/dist/blocks/e-commerce/navigation/storefront-navbar.js +424 -0
  210. package/dist/blocks/e-commerce/navigation/storefront-navbar.js.map +1 -0
  211. package/dist/blocks/e-commerce/navigation/storefront-navbar.mjs +399 -0
  212. package/dist/blocks/e-commerce/navigation/storefront-navbar.mjs.map +1 -0
  213. package/dist/blocks/e-commerce/order-history/order-history.d.ts +74 -0
  214. package/dist/blocks/e-commerce/order-history/order-history.d.ts.map +1 -0
  215. package/dist/blocks/e-commerce/order-history/order-history.js +161 -0
  216. package/dist/blocks/e-commerce/order-history/order-history.js.map +1 -0
  217. package/dist/blocks/e-commerce/order-history/order-history.mjs +141 -0
  218. package/dist/blocks/e-commerce/order-history/order-history.mjs.map +1 -0
  219. package/dist/blocks/e-commerce/order-history/order-line.d.ts +50 -0
  220. package/dist/blocks/e-commerce/order-history/order-line.d.ts.map +1 -0
  221. package/dist/blocks/e-commerce/order-history/order-line.js +75 -0
  222. package/dist/blocks/e-commerce/order-history/order-line.js.map +1 -0
  223. package/dist/blocks/e-commerce/order-history/order-line.mjs +49 -0
  224. package/dist/blocks/e-commerce/order-history/order-line.mjs.map +1 -0
  225. package/dist/blocks/e-commerce/product-categories/category-card.d.ts +9 -0
  226. package/dist/blocks/e-commerce/product-categories/category-card.d.ts.map +1 -0
  227. package/dist/blocks/e-commerce/product-categories/category-card.js +154 -0
  228. package/dist/blocks/e-commerce/product-categories/category-card.js.map +1 -0
  229. package/dist/blocks/e-commerce/product-categories/category-card.mjs +134 -0
  230. package/dist/blocks/e-commerce/product-categories/category-card.mjs.map +1 -0
  231. package/dist/blocks/e-commerce/product-categories/category-shared.d.ts +15 -0
  232. package/dist/blocks/e-commerce/product-categories/category-shared.d.ts.map +1 -0
  233. package/dist/blocks/e-commerce/product-categories/category-shared.js +101 -0
  234. package/dist/blocks/e-commerce/product-categories/category-shared.js.map +1 -0
  235. package/dist/blocks/e-commerce/product-categories/category-shared.mjs +97 -0
  236. package/dist/blocks/e-commerce/product-categories/category-shared.mjs.map +1 -0
  237. package/dist/blocks/e-commerce/product-categories/product-category-grid.d.ts +10 -0
  238. package/dist/blocks/e-commerce/product-categories/product-category-grid.d.ts.map +1 -0
  239. package/dist/blocks/e-commerce/product-categories/product-category-grid.js +138 -0
  240. package/dist/blocks/e-commerce/product-categories/product-category-grid.js.map +1 -0
  241. package/dist/blocks/e-commerce/product-categories/product-category-grid.mjs +114 -0
  242. package/dist/blocks/e-commerce/product-categories/product-category-grid.mjs.map +1 -0
  243. package/dist/blocks/e-commerce/product-categories/product-category.d.ts +41 -0
  244. package/dist/blocks/e-commerce/product-categories/product-category.d.ts.map +1 -0
  245. package/dist/blocks/e-commerce/product-categories/product-category.js +319 -0
  246. package/dist/blocks/e-commerce/product-categories/product-category.js.map +1 -0
  247. package/dist/blocks/e-commerce/product-categories/product-category.mjs +322 -0
  248. package/dist/blocks/e-commerce/product-categories/product-category.mjs.map +1 -0
  249. package/dist/blocks/e-commerce/product-list/product-card.d.ts +47 -0
  250. package/dist/blocks/e-commerce/product-list/product-card.d.ts.map +1 -0
  251. package/dist/blocks/e-commerce/product-list/product-card.js +361 -0
  252. package/dist/blocks/e-commerce/product-list/product-card.js.map +1 -0
  253. package/dist/blocks/e-commerce/product-list/product-card.mjs +337 -0
  254. package/dist/blocks/e-commerce/product-list/product-card.mjs.map +1 -0
  255. package/dist/blocks/e-commerce/product-list/product-grid.d.ts +28 -0
  256. package/dist/blocks/e-commerce/product-list/product-grid.d.ts.map +1 -0
  257. package/dist/blocks/e-commerce/product-list/product-grid.js +92 -0
  258. package/dist/blocks/e-commerce/product-list/product-grid.js.map +1 -0
  259. package/dist/blocks/e-commerce/product-list/product-grid.mjs +68 -0
  260. package/dist/blocks/e-commerce/product-list/product-grid.mjs.map +1 -0
  261. package/dist/blocks/e-commerce/product-list/product-showcase-1.d.ts +30 -0
  262. package/dist/blocks/e-commerce/product-list/product-showcase-1.d.ts.map +1 -0
  263. package/dist/blocks/e-commerce/product-list/product-showcase-1.js +245 -0
  264. package/dist/blocks/e-commerce/product-list/product-showcase-1.js.map +1 -0
  265. package/dist/blocks/e-commerce/product-list/product-showcase-1.mjs +221 -0
  266. package/dist/blocks/e-commerce/product-list/product-showcase-1.mjs.map +1 -0
  267. package/dist/blocks/e-commerce/product-overview/product-overview-gallery.d.ts +20 -0
  268. package/dist/blocks/e-commerce/product-overview/product-overview-gallery.d.ts.map +1 -0
  269. package/dist/blocks/e-commerce/product-overview/product-overview-gallery.js +71 -0
  270. package/dist/blocks/e-commerce/product-overview/product-overview-gallery.js.map +1 -0
  271. package/dist/blocks/e-commerce/product-overview/product-overview-gallery.mjs +47 -0
  272. package/dist/blocks/e-commerce/product-overview/product-overview-gallery.mjs.map +1 -0
  273. package/dist/blocks/e-commerce/product-overview/product-overview-lightbox-tab.d.ts +15 -0
  274. package/dist/blocks/e-commerce/product-overview/product-overview-lightbox-tab.d.ts.map +1 -0
  275. package/dist/blocks/e-commerce/product-overview/product-overview-lightbox-tab.js +118 -0
  276. package/dist/blocks/e-commerce/product-overview/product-overview-lightbox-tab.js.map +1 -0
  277. package/dist/blocks/e-commerce/product-overview/product-overview-lightbox-tab.mjs +94 -0
  278. package/dist/blocks/e-commerce/product-overview/product-overview-lightbox-tab.mjs.map +1 -0
  279. package/dist/blocks/e-commerce/product-overview/product-overview-reviews-tab.d.ts +26 -0
  280. package/dist/blocks/e-commerce/product-overview/product-overview-reviews-tab.d.ts.map +1 -0
  281. package/dist/blocks/e-commerce/product-overview/product-overview-reviews-tab.js +85 -0
  282. package/dist/blocks/e-commerce/product-overview/product-overview-reviews-tab.js.map +1 -0
  283. package/dist/blocks/e-commerce/product-overview/product-overview-reviews-tab.mjs +61 -0
  284. package/dist/blocks/e-commerce/product-overview/product-overview-reviews-tab.mjs.map +1 -0
  285. package/dist/blocks/e-commerce/product-overview/product-overview-tabs.d.ts +32 -0
  286. package/dist/blocks/e-commerce/product-overview/product-overview-tabs.d.ts.map +1 -0
  287. package/dist/blocks/e-commerce/product-overview/product-overview-tabs.js +79 -0
  288. package/dist/blocks/e-commerce/product-overview/product-overview-tabs.js.map +1 -0
  289. package/dist/blocks/e-commerce/product-overview/product-overview-tabs.mjs +51 -0
  290. package/dist/blocks/e-commerce/product-overview/product-overview-tabs.mjs.map +1 -0
  291. package/dist/blocks/e-commerce/product-overview/product-overview.d.ts +121 -0
  292. package/dist/blocks/e-commerce/product-overview/product-overview.d.ts.map +1 -0
  293. package/dist/blocks/e-commerce/product-overview/product-overview.js +844 -0
  294. package/dist/blocks/e-commerce/product-overview/product-overview.js.map +1 -0
  295. package/dist/blocks/e-commerce/product-overview/product-overview.mjs +821 -0
  296. package/dist/blocks/e-commerce/product-overview/product-overview.mjs.map +1 -0
  297. package/dist/blocks/e-commerce/product-overview/product-quick-view-card.d.ts +17 -0
  298. package/dist/blocks/e-commerce/product-overview/product-quick-view-card.d.ts.map +1 -0
  299. package/dist/blocks/e-commerce/product-overview/product-quick-view-card.js +123 -0
  300. package/dist/blocks/e-commerce/product-overview/product-quick-view-card.js.map +1 -0
  301. package/dist/blocks/e-commerce/product-overview/product-quick-view-card.mjs +99 -0
  302. package/dist/blocks/e-commerce/product-overview/product-quick-view-card.mjs.map +1 -0
  303. package/dist/blocks/e-commerce/product-overview/product-quick-view-dialog.d.ts +20 -0
  304. package/dist/blocks/e-commerce/product-overview/product-quick-view-dialog.d.ts.map +1 -0
  305. package/dist/blocks/e-commerce/product-overview/product-quick-view-dialog.js +271 -0
  306. package/dist/blocks/e-commerce/product-overview/product-quick-view-dialog.js.map +1 -0
  307. package/dist/blocks/e-commerce/product-overview/product-quick-view-dialog.mjs +253 -0
  308. package/dist/blocks/e-commerce/product-overview/product-quick-view-dialog.mjs.map +1 -0
  309. package/dist/blocks/e-commerce/product-overview/product-quick-view.d.ts +68 -0
  310. package/dist/blocks/e-commerce/product-overview/product-quick-view.d.ts.map +1 -0
  311. package/dist/blocks/e-commerce/product-overview/product-quick-view.js +84 -0
  312. package/dist/blocks/e-commerce/product-overview/product-quick-view.js.map +1 -0
  313. package/dist/blocks/e-commerce/product-overview/product-quick-view.mjs +60 -0
  314. package/dist/blocks/e-commerce/product-overview/product-quick-view.mjs.map +1 -0
  315. package/dist/blocks/e-commerce/reviews/review-card.d.ts +60 -0
  316. package/dist/blocks/e-commerce/reviews/review-card.d.ts.map +1 -0
  317. package/dist/blocks/e-commerce/reviews/review-card.js +166 -0
  318. package/dist/blocks/e-commerce/reviews/review-card.js.map +1 -0
  319. package/dist/blocks/e-commerce/reviews/review-card.mjs +139 -0
  320. package/dist/blocks/e-commerce/reviews/review-card.mjs.map +1 -0
  321. package/dist/blocks/e-commerce/reviews/review-composer.d.ts +50 -0
  322. package/dist/blocks/e-commerce/reviews/review-composer.d.ts.map +1 -0
  323. package/dist/blocks/e-commerce/reviews/review-composer.js +180 -0
  324. package/dist/blocks/e-commerce/reviews/review-composer.js.map +1 -0
  325. package/dist/blocks/e-commerce/reviews/review-composer.mjs +155 -0
  326. package/dist/blocks/e-commerce/reviews/review-composer.mjs.map +1 -0
  327. package/dist/blocks/e-commerce/reviews/review-list.d.ts +40 -0
  328. package/dist/blocks/e-commerce/reviews/review-list.d.ts.map +1 -0
  329. package/dist/blocks/e-commerce/reviews/review-list.js +138 -0
  330. package/dist/blocks/e-commerce/reviews/review-list.js.map +1 -0
  331. package/dist/blocks/e-commerce/reviews/review-list.mjs +119 -0
  332. package/dist/blocks/e-commerce/reviews/review-list.mjs.map +1 -0
  333. package/dist/blocks/e-commerce/reviews/review-summary.d.ts +49 -0
  334. package/dist/blocks/e-commerce/reviews/review-summary.d.ts.map +1 -0
  335. package/dist/blocks/e-commerce/reviews/review-summary.js +150 -0
  336. package/dist/blocks/e-commerce/reviews/review-summary.js.map +1 -0
  337. package/dist/blocks/e-commerce/reviews/review-summary.mjs +124 -0
  338. package/dist/blocks/e-commerce/reviews/review-summary.mjs.map +1 -0
  339. package/dist/blocks/e-commerce/shopping-carts/shopping-cart.d.ts +98 -0
  340. package/dist/blocks/e-commerce/shopping-carts/shopping-cart.d.ts.map +1 -0
  341. package/dist/blocks/e-commerce/shopping-carts/shopping-cart.js +417 -0
  342. package/dist/blocks/e-commerce/shopping-carts/shopping-cart.js.map +1 -0
  343. package/dist/blocks/e-commerce/shopping-carts/shopping-cart.mjs +393 -0
  344. package/dist/blocks/e-commerce/shopping-carts/shopping-cart.mjs.map +1 -0
  345. package/dist/blocks/e-commerce/store-containers/store-container-1.d.ts +13 -0
  346. package/dist/blocks/e-commerce/store-containers/store-container-1.d.ts.map +1 -0
  347. package/dist/blocks/e-commerce/store-containers/store-container-1.js +45 -0
  348. package/dist/blocks/e-commerce/store-containers/store-container-1.js.map +1 -0
  349. package/dist/blocks/e-commerce/store-containers/store-container-1.mjs +21 -0
  350. package/dist/blocks/e-commerce/store-containers/store-container-1.mjs.map +1 -0
  351. package/dist/blocks/e-commerce/storefront-hero/storefront-hero.d.ts +163 -0
  352. package/dist/blocks/e-commerce/storefront-hero/storefront-hero.d.ts.map +1 -0
  353. package/dist/blocks/e-commerce/storefront-hero/storefront-hero.js +810 -0
  354. package/dist/blocks/e-commerce/storefront-hero/storefront-hero.js.map +1 -0
  355. package/dist/blocks/e-commerce/storefront-hero/storefront-hero.mjs +786 -0
  356. package/dist/blocks/e-commerce/storefront-hero/storefront-hero.mjs.map +1 -0
  357. package/dist/blocks/marketing/banners/avatar-group.d.ts +8 -0
  358. package/dist/blocks/marketing/banners/avatar-group.d.ts.map +1 -0
  359. package/dist/blocks/marketing/banners/avatar-group.js +90 -0
  360. package/dist/blocks/marketing/banners/avatar-group.js.map +1 -0
  361. package/dist/blocks/marketing/banners/avatar-group.mjs +56 -0
  362. package/dist/blocks/marketing/banners/avatar-group.mjs.map +1 -0
  363. package/dist/blocks/marketing/banners/banner-1.d.ts +26 -0
  364. package/dist/blocks/marketing/banners/banner-1.d.ts.map +1 -0
  365. package/dist/blocks/marketing/banners/banner-1.js +177 -0
  366. package/dist/blocks/marketing/banners/banner-1.js.map +1 -0
  367. package/dist/blocks/marketing/banners/banner-1.mjs +153 -0
  368. package/dist/blocks/marketing/banners/banner-1.mjs.map +1 -0
  369. package/dist/blocks/marketing/cta/cta-section-1.d.ts +13 -0
  370. package/dist/blocks/marketing/cta/cta-section-1.d.ts.map +1 -0
  371. package/dist/blocks/marketing/cta/cta-section-1.js +116 -0
  372. package/dist/blocks/marketing/cta/cta-section-1.js.map +1 -0
  373. package/dist/blocks/marketing/cta/cta-section-1.mjs +92 -0
  374. package/dist/blocks/marketing/cta/cta-section-1.mjs.map +1 -0
  375. package/dist/blocks/marketing/faq/faq-block-1.d.ts +16 -0
  376. package/dist/blocks/marketing/faq/faq-block-1.d.ts.map +1 -0
  377. package/dist/blocks/marketing/faq/faq-block-1.js +49 -0
  378. package/dist/blocks/marketing/faq/faq-block-1.js.map +1 -0
  379. package/dist/blocks/marketing/faq/faq-block-1.mjs +25 -0
  380. package/dist/blocks/marketing/faq/faq-block-1.mjs.map +1 -0
  381. package/dist/blocks/marketing/features/feature.d.ts +45 -0
  382. package/dist/blocks/marketing/features/feature.d.ts.map +1 -0
  383. package/dist/blocks/marketing/features/feature.js +135 -0
  384. package/dist/blocks/marketing/features/feature.js.map +1 -0
  385. package/dist/blocks/marketing/features/feature.mjs +111 -0
  386. package/dist/blocks/marketing/features/feature.mjs.map +1 -0
  387. package/dist/blocks/marketing/footers/footer-section.d.ts +59 -0
  388. package/dist/blocks/marketing/footers/footer-section.d.ts.map +1 -0
  389. package/dist/blocks/marketing/footers/footer-section.js +356 -0
  390. package/dist/blocks/marketing/footers/footer-section.js.map +1 -0
  391. package/dist/blocks/marketing/footers/footer-section.mjs +332 -0
  392. package/dist/blocks/marketing/footers/footer-section.mjs.map +1 -0
  393. package/dist/blocks/marketing/hero-sections/avatar-group.d.ts +9 -0
  394. package/dist/blocks/marketing/hero-sections/avatar-group.d.ts.map +1 -0
  395. package/dist/blocks/marketing/hero-sections/avatar-group.js +92 -0
  396. package/dist/blocks/marketing/hero-sections/avatar-group.js.map +1 -0
  397. package/dist/blocks/marketing/hero-sections/avatar-group.mjs +58 -0
  398. package/dist/blocks/marketing/hero-sections/avatar-group.mjs.map +1 -0
  399. package/dist/blocks/marketing/hero-sections/hero-section-1.d.ts +27 -0
  400. package/dist/blocks/marketing/hero-sections/hero-section-1.d.ts.map +1 -0
  401. package/dist/blocks/marketing/hero-sections/hero-section-1.js +124 -0
  402. package/dist/blocks/marketing/hero-sections/hero-section-1.js.map +1 -0
  403. package/dist/blocks/marketing/hero-sections/hero-section-1.mjs +100 -0
  404. package/dist/blocks/marketing/hero-sections/hero-section-1.mjs.map +1 -0
  405. package/dist/blocks/marketing/logo-clouds/logo-cloud-1-logo-icon.d.ts +19 -0
  406. package/dist/blocks/marketing/logo-clouds/logo-cloud-1-logo-icon.d.ts.map +1 -0
  407. package/dist/blocks/marketing/logo-clouds/logo-cloud-1-logo-icon.js +63 -0
  408. package/dist/blocks/marketing/logo-clouds/logo-cloud-1-logo-icon.js.map +1 -0
  409. package/dist/blocks/marketing/logo-clouds/logo-cloud-1-logo-icon.mjs +39 -0
  410. package/dist/blocks/marketing/logo-clouds/logo-cloud-1-logo-icon.mjs.map +1 -0
  411. package/dist/blocks/marketing/logo-clouds/logo-cloud-1.d.ts +13 -0
  412. package/dist/blocks/marketing/logo-clouds/logo-cloud-1.d.ts.map +1 -0
  413. package/dist/blocks/marketing/logo-clouds/logo-cloud-1.js +49 -0
  414. package/dist/blocks/marketing/logo-clouds/logo-cloud-1.js.map +1 -0
  415. package/dist/blocks/marketing/logo-clouds/logo-cloud-1.mjs +25 -0
  416. package/dist/blocks/marketing/logo-clouds/logo-cloud-1.mjs.map +1 -0
  417. package/dist/blocks/marketing/navbars/navbar.d.ts +80 -0
  418. package/dist/blocks/marketing/navbars/navbar.d.ts.map +1 -0
  419. package/dist/blocks/marketing/navbars/navbar.js +484 -0
  420. package/dist/blocks/marketing/navbars/navbar.js.map +1 -0
  421. package/dist/blocks/marketing/navbars/navbar.mjs +475 -0
  422. package/dist/blocks/marketing/navbars/navbar.mjs.map +1 -0
  423. package/dist/blocks/marketing/pricing/pricing-section-1.d.ts +23 -0
  424. package/dist/blocks/marketing/pricing/pricing-section-1.d.ts.map +1 -0
  425. package/dist/blocks/marketing/pricing/pricing-section-1.js +89 -0
  426. package/dist/blocks/marketing/pricing/pricing-section-1.js.map +1 -0
  427. package/dist/blocks/marketing/pricing/pricing-section-1.mjs +65 -0
  428. package/dist/blocks/marketing/pricing/pricing-section-1.mjs.map +1 -0
  429. package/dist/blocks/marketing/statistics/statistic-1.d.ts +19 -0
  430. package/dist/blocks/marketing/statistics/statistic-1.d.ts.map +1 -0
  431. package/dist/blocks/marketing/statistics/statistic-1.js +83 -0
  432. package/dist/blocks/marketing/statistics/statistic-1.js.map +1 -0
  433. package/dist/blocks/marketing/statistics/statistic-1.mjs +59 -0
  434. package/dist/blocks/marketing/statistics/statistic-1.mjs.map +1 -0
  435. package/dist/blocks/marketing/testimonials/testimonial-section.d.ts +29 -0
  436. package/dist/blocks/marketing/testimonials/testimonial-section.d.ts.map +1 -0
  437. package/dist/blocks/marketing/testimonials/testimonial-section.js +173 -0
  438. package/dist/blocks/marketing/testimonials/testimonial-section.js.map +1 -0
  439. package/dist/blocks/marketing/testimonials/testimonial-section.mjs +155 -0
  440. package/dist/blocks/marketing/testimonials/testimonial-section.mjs.map +1 -0
  441. package/dist/blocks/shared/reaction-toggle.d.ts +14 -0
  442. package/dist/blocks/shared/reaction-toggle.d.ts.map +1 -0
  443. package/dist/blocks/shared/reaction-toggle.js +138 -0
  444. package/dist/blocks/shared/reaction-toggle.js.map +1 -0
  445. package/dist/blocks/shared/reaction-toggle.mjs +114 -0
  446. package/dist/blocks/shared/reaction-toggle.mjs.map +1 -0
  447. package/dist/hooks/use-mobile.d.ts +2 -0
  448. package/dist/hooks/use-mobile.d.ts.map +1 -0
  449. package/dist/hooks/use-mobile.js +53 -0
  450. package/dist/hooks/use-mobile.js.map +1 -0
  451. package/dist/hooks/use-mobile.mjs +19 -0
  452. package/dist/hooks/use-mobile.mjs.map +1 -0
  453. package/dist/index.d.ts +100 -0
  454. package/dist/index.d.ts.map +1 -0
  455. package/dist/index.js +339 -0
  456. package/dist/index.js.map +1 -0
  457. package/dist/index.mjs +238 -0
  458. package/dist/index.mjs.map +1 -0
  459. package/{src/lib/cart.ts → dist/lib/cart.d.ts} +2 -3
  460. package/dist/lib/cart.d.ts.map +1 -0
  461. package/dist/lib/cart.js +31 -0
  462. package/dist/lib/cart.js.map +1 -0
  463. package/dist/lib/cart.mjs +7 -0
  464. package/dist/lib/cart.mjs.map +1 -0
  465. package/dist/lib/contracts.d.ts +4008 -0
  466. package/dist/lib/contracts.d.ts.map +1 -0
  467. package/dist/lib/contracts.js +828 -0
  468. package/dist/lib/contracts.js.map +1 -0
  469. package/dist/lib/contracts.mjs +737 -0
  470. package/dist/lib/contracts.mjs.map +1 -0
  471. package/dist/lib/money.d.ts +28 -0
  472. package/dist/lib/money.d.ts.map +1 -0
  473. package/dist/lib/money.js +50 -0
  474. package/dist/lib/money.js.map +1 -0
  475. package/dist/lib/money.mjs +24 -0
  476. package/dist/lib/money.mjs.map +1 -0
  477. package/dist/lib/types/menu.d.ts +40 -0
  478. package/dist/lib/types/menu.d.ts.map +1 -0
  479. package/dist/lib/types/menu.js +50 -0
  480. package/dist/lib/types/menu.js.map +1 -0
  481. package/dist/lib/types/menu.mjs +25 -0
  482. package/dist/lib/types/menu.mjs.map +1 -0
  483. package/dist/lib/types.d.ts +5 -0
  484. package/dist/lib/types.d.ts.map +1 -0
  485. package/dist/lib/types.js +17 -0
  486. package/dist/lib/types.js.map +1 -0
  487. package/dist/lib/types.mjs +1 -0
  488. package/dist/lib/types.mjs.map +1 -0
  489. package/dist/lib/utils.d.ts +7 -0
  490. package/dist/lib/utils.d.ts.map +1 -0
  491. package/dist/lib/utils.js +33 -0
  492. package/dist/lib/utils.js.map +1 -0
  493. package/dist/lib/utils.mjs +9 -0
  494. package/dist/lib/utils.mjs.map +1 -0
  495. package/dist/ui/accordion.d.ts +8 -0
  496. package/dist/ui/accordion.d.ts.map +1 -0
  497. package/dist/ui/accordion.js +93 -0
  498. package/dist/ui/accordion.js.map +1 -0
  499. package/dist/ui/accordion.mjs +66 -0
  500. package/dist/ui/accordion.mjs.map +1 -0
  501. package/dist/ui/avatar.d.ts +12 -0
  502. package/dist/ui/avatar.d.ts.map +1 -0
  503. package/dist/ui/avatar.js +134 -0
  504. package/dist/ui/avatar.js.map +1 -0
  505. package/{src/ui/avatar.tsx → dist/ui/avatar.mjs} +67 -70
  506. package/dist/ui/avatar.mjs.map +1 -0
  507. package/dist/ui/badge.d.ts +10 -0
  508. package/dist/ui/badge.d.ts.map +1 -0
  509. package/dist/ui/badge.js +69 -0
  510. package/dist/ui/badge.js.map +1 -0
  511. package/dist/ui/badge.mjs +44 -0
  512. package/dist/ui/badge.mjs.map +1 -0
  513. package/dist/ui/breadcrumb.d.ts +12 -0
  514. package/dist/ui/breadcrumb.d.ts.map +1 -0
  515. package/dist/ui/breadcrumb.js +134 -0
  516. package/dist/ui/breadcrumb.js.map +1 -0
  517. package/dist/ui/breadcrumb.mjs +104 -0
  518. package/dist/ui/breadcrumb.mjs.map +1 -0
  519. package/dist/ui/button-group.d.ts +12 -0
  520. package/dist/ui/button-group.d.ts.map +1 -0
  521. package/dist/ui/button-group.js +104 -0
  522. package/dist/ui/button-group.js.map +1 -0
  523. package/dist/ui/button-group.mjs +77 -0
  524. package/dist/ui/button-group.mjs.map +1 -0
  525. package/dist/ui/button.d.ts +11 -0
  526. package/dist/ui/button.d.ts.map +1 -0
  527. package/dist/ui/button.js +82 -0
  528. package/dist/ui/button.js.map +1 -0
  529. package/dist/ui/button.mjs +57 -0
  530. package/dist/ui/button.mjs.map +1 -0
  531. package/dist/ui/card.d.ts +10 -0
  532. package/dist/ui/card.d.ts.map +1 -0
  533. package/dist/ui/card.js +121 -0
  534. package/dist/ui/card.js.map +1 -0
  535. package/dist/ui/card.mjs +91 -0
  536. package/dist/ui/card.mjs.map +1 -0
  537. package/dist/ui/carousel.d.ts +20 -0
  538. package/dist/ui/carousel.d.ts.map +1 -0
  539. package/dist/ui/carousel.js +238 -0
  540. package/dist/ui/carousel.js.map +1 -0
  541. package/dist/ui/carousel.mjs +200 -0
  542. package/dist/ui/carousel.mjs.map +1 -0
  543. package/dist/ui/dialog.d.ts +18 -0
  544. package/dist/ui/dialog.d.ts.map +1 -0
  545. package/dist/ui/dialog.js +181 -0
  546. package/dist/ui/dialog.js.map +1 -0
  547. package/dist/ui/dialog.mjs +148 -0
  548. package/dist/ui/dialog.mjs.map +1 -0
  549. package/dist/ui/drawer.d.ts +14 -0
  550. package/dist/ui/drawer.d.ts.map +1 -0
  551. package/dist/ui/drawer.js +163 -0
  552. package/dist/ui/drawer.js.map +1 -0
  553. package/dist/ui/drawer.mjs +130 -0
  554. package/dist/ui/drawer.mjs.map +1 -0
  555. package/dist/ui/dropdown-menu.d.ts +26 -0
  556. package/dist/ui/dropdown-menu.d.ts.map +1 -0
  557. package/dist/ui/dropdown-menu.js +271 -0
  558. package/dist/ui/dropdown-menu.js.map +1 -0
  559. package/dist/ui/dropdown-menu.mjs +233 -0
  560. package/dist/ui/dropdown-menu.mjs.map +1 -0
  561. package/dist/ui/empty.d.ts +12 -0
  562. package/dist/ui/empty.d.ts.map +1 -0
  563. package/dist/ui/empty.js +132 -0
  564. package/dist/ui/empty.js.map +1 -0
  565. package/dist/ui/empty.mjs +103 -0
  566. package/dist/ui/empty.mjs.map +1 -0
  567. package/dist/ui/field.d.ts +25 -0
  568. package/dist/ui/field.d.ts.map +1 -0
  569. package/dist/ui/field.js +264 -0
  570. package/dist/ui/field.js.map +1 -0
  571. package/{src/ui/field.tsx → dist/ui/field.mjs} +142 -159
  572. package/dist/ui/field.mjs.map +1 -0
  573. package/dist/ui/input-group.d.ts +17 -0
  574. package/dist/ui/input-group.d.ts.map +1 -0
  575. package/dist/ui/input-group.js +185 -0
  576. package/dist/ui/input-group.js.map +1 -0
  577. package/{src/ui/input-group.tsx → dist/ui/input-group.mjs} +92 -106
  578. package/dist/ui/input-group.mjs.map +1 -0
  579. package/dist/ui/input-otp.d.ts +12 -0
  580. package/dist/ui/input-otp.d.ts.map +1 -0
  581. package/dist/ui/input-otp.js +105 -0
  582. package/dist/ui/input-otp.js.map +1 -0
  583. package/dist/ui/input-otp.mjs +68 -0
  584. package/dist/ui/input-otp.mjs.map +1 -0
  585. package/dist/ui/input.d.ts +4 -0
  586. package/dist/ui/input.d.ts.map +1 -0
  587. package/dist/ui/input.js +46 -0
  588. package/dist/ui/input.js.map +1 -0
  589. package/{src/ui/input.tsx → dist/ui/input.mjs} +17 -15
  590. package/dist/ui/input.mjs.map +1 -0
  591. package/dist/ui/label.d.ts +5 -0
  592. package/dist/ui/label.d.ts.map +1 -0
  593. package/dist/ui/label.js +48 -0
  594. package/dist/ui/label.js.map +1 -0
  595. package/dist/ui/label.mjs +24 -0
  596. package/dist/ui/label.mjs.map +1 -0
  597. package/dist/ui/navigation-menu.d.ts +15 -0
  598. package/dist/ui/navigation-menu.d.ts.map +1 -0
  599. package/dist/ui/navigation-menu.js +203 -0
  600. package/dist/ui/navigation-menu.js.map +1 -0
  601. package/{src/ui/navigation-menu.tsx → dist/ui/navigation-menu.mjs} +116 -112
  602. package/dist/ui/navigation-menu.mjs.map +1 -0
  603. package/dist/ui/pagination.d.ts +14 -0
  604. package/dist/ui/pagination.d.ts.map +1 -0
  605. package/dist/ui/pagination.js +149 -0
  606. package/dist/ui/pagination.js.map +1 -0
  607. package/dist/ui/pagination.mjs +123 -0
  608. package/dist/ui/pagination.mjs.map +1 -0
  609. package/dist/ui/progress.d.ts +5 -0
  610. package/dist/ui/progress.d.ts.map +1 -0
  611. package/dist/ui/progress.js +57 -0
  612. package/dist/ui/progress.js.map +1 -0
  613. package/dist/ui/progress.mjs +33 -0
  614. package/dist/ui/progress.mjs.map +1 -0
  615. package/dist/ui/radio-group.d.ts +6 -0
  616. package/dist/ui/radio-group.d.ts.map +1 -0
  617. package/dist/ui/radio-group.js +72 -0
  618. package/dist/ui/radio-group.js.map +1 -0
  619. package/dist/ui/radio-group.mjs +47 -0
  620. package/dist/ui/radio-group.mjs.map +1 -0
  621. package/dist/ui/select.d.ts +16 -0
  622. package/dist/ui/select.d.ts.map +1 -0
  623. package/dist/ui/select.js +213 -0
  624. package/dist/ui/select.js.map +1 -0
  625. package/dist/ui/select.mjs +180 -0
  626. package/dist/ui/select.mjs.map +1 -0
  627. package/dist/ui/separator.d.ts +5 -0
  628. package/dist/ui/separator.d.ts.map +1 -0
  629. package/dist/ui/separator.js +52 -0
  630. package/dist/ui/separator.js.map +1 -0
  631. package/dist/ui/separator.mjs +28 -0
  632. package/dist/ui/separator.mjs.map +1 -0
  633. package/dist/ui/sheet.d.ts +15 -0
  634. package/dist/ui/sheet.d.ts.map +1 -0
  635. package/dist/ui/sheet.js +160 -0
  636. package/dist/ui/sheet.js.map +1 -0
  637. package/dist/ui/sheet.mjs +129 -0
  638. package/dist/ui/sheet.mjs.map +1 -0
  639. package/dist/ui/sidebar.d.ts +70 -0
  640. package/dist/ui/sidebar.d.ts.map +1 -0
  641. package/dist/ui/sidebar.js +697 -0
  642. package/dist/ui/sidebar.js.map +1 -0
  643. package/dist/ui/sidebar.mjs +651 -0
  644. package/dist/ui/sidebar.mjs.map +1 -0
  645. package/dist/ui/skeleton.d.ts +3 -0
  646. package/dist/ui/skeleton.d.ts.map +1 -0
  647. package/dist/ui/skeleton.js +40 -0
  648. package/dist/ui/skeleton.js.map +1 -0
  649. package/dist/ui/skeleton.mjs +16 -0
  650. package/dist/ui/skeleton.mjs.map +1 -0
  651. package/dist/ui/table.d.ts +11 -0
  652. package/dist/ui/table.d.ts.map +1 -0
  653. package/dist/ui/table.js +147 -0
  654. package/dist/ui/table.js.map +1 -0
  655. package/dist/ui/table.mjs +116 -0
  656. package/dist/ui/table.mjs.map +1 -0
  657. package/dist/ui/tabs.d.ts +12 -0
  658. package/dist/ui/tabs.d.ts.map +1 -0
  659. package/dist/ui/tabs.js +121 -0
  660. package/dist/ui/tabs.js.map +1 -0
  661. package/{src/ui/tabs.tsx → dist/ui/tabs.mjs} +59 -56
  662. package/dist/ui/tabs.mjs.map +1 -0
  663. package/dist/ui/textarea.d.ts +4 -0
  664. package/dist/ui/textarea.d.ts.map +1 -0
  665. package/dist/ui/textarea.js +43 -0
  666. package/dist/ui/textarea.js.map +1 -0
  667. package/{src/ui/textarea.tsx → dist/ui/textarea.mjs} +16 -14
  668. package/dist/ui/textarea.mjs.map +1 -0
  669. package/dist/ui/toggle-group.d.ts +10 -0
  670. package/dist/ui/toggle-group.d.ts.map +1 -0
  671. package/dist/ui/toggle-group.js +105 -0
  672. package/dist/ui/toggle-group.js.map +1 -0
  673. package/dist/ui/toggle-group.mjs +70 -0
  674. package/dist/ui/toggle-group.mjs.map +1 -0
  675. package/dist/ui/toggle.d.ts +10 -0
  676. package/dist/ui/toggle.d.ts.map +1 -0
  677. package/dist/ui/toggle.js +70 -0
  678. package/dist/ui/toggle.js.map +1 -0
  679. package/{src/ui/toggle.tsx → dist/ui/toggle.mjs} +25 -26
  680. package/dist/ui/toggle.mjs.map +1 -0
  681. package/dist/ui/tooltip.d.ts +8 -0
  682. package/dist/ui/tooltip.d.ts.map +1 -0
  683. package/dist/ui/tooltip.js +84 -0
  684. package/dist/ui/tooltip.js.map +1 -0
  685. package/dist/ui/tooltip.mjs +57 -0
  686. package/dist/ui/tooltip.mjs.map +1 -0
  687. package/package.json +10 -2
  688. package/AGENTS.md +0 -1
  689. package/CHANGELOG.md +0 -155
  690. package/components.json +0 -33
  691. package/docs/standards/data-contracts.md +0 -81
  692. package/docs/standards/theming.md +0 -112
  693. package/scripts/fix-esm-extensions.mjs +0 -40
  694. package/src/blocks/application/app-shells/app-shell-1-sidebar.tsx +0 -198
  695. package/src/blocks/application/app-shells/app-shell-1.tsx +0 -196
  696. package/src/blocks/application/login-forms/login-page.test.tsx +0 -190
  697. package/src/blocks/application/login-forms/login-page.tsx +0 -240
  698. package/src/blocks/application/password-recovery/forgot-password-page-1-brand-mark.tsx +0 -38
  699. package/src/blocks/application/password-recovery/forgot-password-page-1.tsx +0 -318
  700. package/src/blocks/application/signup-forms/signup-page-1.tsx +0 -229
  701. package/src/blocks/application/verification/verify-1.tsx +0 -307
  702. package/src/blocks/application/verification/verify-confetti.tsx +0 -192
  703. package/src/blocks/application/viewport-ownership.test.tsx +0 -41
  704. package/src/blocks/e-commerce/category-filters/category-listing-filter-fields.tsx +0 -218
  705. package/src/blocks/e-commerce/category-filters/category-listing.test.tsx +0 -601
  706. package/src/blocks/e-commerce/category-filters/category-listing.tsx +0 -934
  707. package/src/blocks/e-commerce/checkout-forms/checkbox-check.tsx +0 -74
  708. package/src/blocks/e-commerce/checkout-forms/checkout-confirmation-fulfilment-progress.tsx +0 -195
  709. package/src/blocks/e-commerce/checkout-forms/checkout-confirmation.test.tsx +0 -136
  710. package/src/blocks/e-commerce/checkout-forms/checkout-confirmation.tsx +0 -329
  711. package/src/blocks/e-commerce/checkout-forms/checkout-contact-step.tsx +0 -149
  712. package/src/blocks/e-commerce/checkout-forms/checkout-country-field.tsx +0 -53
  713. package/src/blocks/e-commerce/checkout-forms/checkout-field-feedback.tsx +0 -29
  714. package/src/blocks/e-commerce/checkout-forms/checkout-form-types.ts +0 -7
  715. package/src/blocks/e-commerce/checkout-forms/checkout-order-summary.tsx +0 -230
  716. package/src/blocks/e-commerce/checkout-forms/checkout-payment-step.tsx +0 -100
  717. package/src/blocks/e-commerce/checkout-forms/checkout-progress.tsx +0 -62
  718. package/src/blocks/e-commerce/checkout-forms/checkout-review-step.tsx +0 -59
  719. package/src/blocks/e-commerce/checkout-forms/checkout-shipping-step.tsx +0 -180
  720. package/src/blocks/e-commerce/checkout-forms/checkout.test.tsx +0 -478
  721. package/src/blocks/e-commerce/checkout-forms/checkout.tsx +0 -550
  722. package/src/blocks/e-commerce/navigation/back-to-top.test.tsx +0 -27
  723. package/src/blocks/e-commerce/navigation/back-to-top.tsx +0 -71
  724. package/src/blocks/e-commerce/navigation/breadcrumb.test.tsx +0 -174
  725. package/src/blocks/e-commerce/navigation/breadcrumb.tsx +0 -130
  726. package/src/blocks/e-commerce/navigation/category-icon.test.tsx +0 -54
  727. package/src/blocks/e-commerce/navigation/category-icon.tsx +0 -94
  728. package/src/blocks/e-commerce/navigation/mega-menu.test.tsx +0 -139
  729. package/src/blocks/e-commerce/navigation/mega-menu.tsx +0 -271
  730. package/src/blocks/e-commerce/navigation/mobile-bottom-nav.test.tsx +0 -74
  731. package/src/blocks/e-commerce/navigation/mobile-bottom-nav.tsx +0 -78
  732. package/src/blocks/e-commerce/navigation/mobile-category-drawer.test.tsx +0 -192
  733. package/src/blocks/e-commerce/navigation/mobile-category-drawer.tsx +0 -278
  734. package/src/blocks/e-commerce/navigation/skip-to-content.test.tsx +0 -35
  735. package/src/blocks/e-commerce/navigation/skip-to-content.tsx +0 -37
  736. package/src/blocks/e-commerce/navigation/storefront-navbar-account-menu.test.tsx +0 -56
  737. package/src/blocks/e-commerce/navigation/storefront-navbar-account-menu.tsx +0 -134
  738. package/src/blocks/e-commerce/navigation/storefront-navbar-cart-sheet.test.tsx +0 -204
  739. package/src/blocks/e-commerce/navigation/storefront-navbar-cart-sheet.tsx +0 -371
  740. package/src/blocks/e-commerce/navigation/storefront-navbar-mobile-nav.tsx +0 -96
  741. package/src/blocks/e-commerce/navigation/storefront-navbar-search-bar.tsx +0 -52
  742. package/src/blocks/e-commerce/navigation/storefront-navbar.test.tsx +0 -264
  743. package/src/blocks/e-commerce/navigation/storefront-navbar.tsx +0 -604
  744. package/src/blocks/e-commerce/order-history/order-history-1.tsx +0 -159
  745. package/src/blocks/e-commerce/order-history/order-history-2.tsx +0 -222
  746. package/src/blocks/e-commerce/product-categories/category-card-grid.test.tsx +0 -122
  747. package/src/blocks/e-commerce/product-categories/category-card.test.tsx +0 -68
  748. package/src/blocks/e-commerce/product-categories/category-card.tsx +0 -172
  749. package/src/blocks/e-commerce/product-categories/category-grid.test.tsx +0 -67
  750. package/src/blocks/e-commerce/product-categories/category-shared.tsx +0 -109
  751. package/src/blocks/e-commerce/product-categories/product-category-grid.tsx +0 -170
  752. package/src/blocks/e-commerce/product-categories/product-category.test.tsx +0 -266
  753. package/src/blocks/e-commerce/product-categories/product-category.tsx +0 -462
  754. package/src/blocks/e-commerce/product-list/product-card.test.tsx +0 -263
  755. package/src/blocks/e-commerce/product-list/product-card.tsx +0 -447
  756. package/src/blocks/e-commerce/product-list/product-grid.test.tsx +0 -162
  757. package/src/blocks/e-commerce/product-list/product-grid.tsx +0 -114
  758. package/src/blocks/e-commerce/product-list/product-showcase-1.test.tsx +0 -78
  759. package/src/blocks/e-commerce/product-list/product-showcase-1.tsx +0 -277
  760. package/src/blocks/e-commerce/product-overview/product-overview-gallery.tsx +0 -71
  761. package/src/blocks/e-commerce/product-overview/product-overview-lightbox-tab.tsx +0 -116
  762. package/src/blocks/e-commerce/product-overview/product-overview-reviews-tab.tsx +0 -105
  763. package/src/blocks/e-commerce/product-overview/product-overview-tabs.tsx +0 -70
  764. package/src/blocks/e-commerce/product-overview/product-overview.test.tsx +0 -283
  765. package/src/blocks/e-commerce/product-overview/product-overview.tsx +0 -1186
  766. package/src/blocks/e-commerce/product-overview/product-quick-view-card.tsx +0 -135
  767. package/src/blocks/e-commerce/product-overview/product-quick-view-dialog.tsx +0 -393
  768. package/src/blocks/e-commerce/product-overview/product-quick-view.tsx +0 -136
  769. package/src/blocks/e-commerce/reviews/review-rating-1-review-form.tsx +0 -133
  770. package/src/blocks/e-commerce/reviews/review-rating-1.tsx +0 -178
  771. package/src/blocks/e-commerce/reviews/review-rating-2.tsx +0 -245
  772. package/src/blocks/e-commerce/shopping-carts/shopping-cart.test.tsx +0 -399
  773. package/src/blocks/e-commerce/shopping-carts/shopping-cart.tsx +0 -628
  774. package/src/blocks/e-commerce/store-containers/store-container-1.tsx +0 -29
  775. package/src/blocks/e-commerce/storefront-hero/storefront-hero.test.tsx +0 -412
  776. package/src/blocks/e-commerce/storefront-hero/storefront-hero.tsx +0 -1283
  777. package/src/blocks/marketing/banners/avatar-group.tsx +0 -69
  778. package/src/blocks/marketing/banners/banner-1.tsx +0 -188
  779. package/src/blocks/marketing/cta/cta-section-1.tsx +0 -112
  780. package/src/blocks/marketing/faq/faq-block-1.tsx +0 -45
  781. package/src/blocks/marketing/features/feature.test.tsx +0 -153
  782. package/src/blocks/marketing/features/feature.tsx +0 -195
  783. package/src/blocks/marketing/footers/footer-section-accessibility.test.tsx +0 -118
  784. package/src/blocks/marketing/footers/footer-section-actions.test.tsx +0 -131
  785. package/src/blocks/marketing/footers/footer-section-data.test.tsx +0 -127
  786. package/src/blocks/marketing/footers/footer-section-native-links.test.tsx +0 -100
  787. package/src/blocks/marketing/footers/footer-section-public-api.test.tsx +0 -11
  788. package/src/blocks/marketing/footers/footer-section.test.tsx +0 -46
  789. package/src/blocks/marketing/footers/footer-section.tsx +0 -532
  790. package/src/blocks/marketing/hero-sections/avatar-group.tsx +0 -86
  791. package/src/blocks/marketing/hero-sections/hero-section-1.tsx +0 -135
  792. package/src/blocks/marketing/logo-clouds/logo-cloud-1-logo-icon.tsx +0 -52
  793. package/src/blocks/marketing/logo-clouds/logo-cloud-1.tsx +0 -56
  794. package/src/blocks/marketing/navbars/navbar-public-api.test.tsx +0 -57
  795. package/src/blocks/marketing/navbars/navbar.mega.test.tsx +0 -149
  796. package/src/blocks/marketing/navbars/navbar.test.tsx +0 -155
  797. package/src/blocks/marketing/navbars/navbar.tsx +0 -735
  798. package/src/blocks/marketing/pricing/pricing-section-1.tsx +0 -94
  799. package/src/blocks/marketing/statistics/statistic-1.tsx +0 -93
  800. package/src/blocks/marketing/testimonials/testimonial-section.test.tsx +0 -171
  801. package/src/blocks/marketing/testimonials/testimonial-section.tsx +0 -237
  802. package/src/blocks/shared/reaction-toggle.tsx +0 -145
  803. package/src/hooks/use-mobile.ts +0 -19
  804. package/src/index.ts +0 -284
  805. package/src/lib/cart.test.ts +0 -15
  806. package/src/lib/contracts-curated.test.ts +0 -225
  807. package/src/lib/contracts-server-boundary.test.ts +0 -52
  808. package/src/lib/contracts.test.ts +0 -228
  809. package/src/lib/contracts.ts +0 -857
  810. package/src/lib/money.test.ts +0 -64
  811. package/src/lib/money.ts +0 -65
  812. package/src/lib/types/menu.ts +0 -43
  813. package/src/lib/types.ts +0 -4
  814. package/src/lib/utils.ts +0 -10
  815. package/src/ui/accordion.tsx +0 -65
  816. package/src/ui/badge.tsx +0 -47
  817. package/src/ui/breadcrumb.tsx +0 -108
  818. package/src/ui/button-group.tsx +0 -83
  819. package/src/ui/button.tsx +0 -63
  820. package/src/ui/card.tsx +0 -91
  821. package/src/ui/carousel.tsx +0 -241
  822. package/src/ui/dialog.tsx +0 -158
  823. package/src/ui/drawer.tsx +0 -134
  824. package/src/ui/dropdown-menu.tsx +0 -256
  825. package/src/ui/empty.tsx +0 -103
  826. package/src/ui/input-otp.tsx +0 -76
  827. package/src/ui/label.tsx +0 -23
  828. package/src/ui/pagination.tsx +0 -127
  829. package/src/ui/progress.tsx +0 -30
  830. package/src/ui/radio-group.tsx +0 -44
  831. package/src/ui/select.tsx +0 -189
  832. package/src/ui/separator.tsx +0 -27
  833. package/src/ui/sheet.tsx +0 -142
  834. package/src/ui/sidebar.tsx +0 -726
  835. package/src/ui/skeleton.tsx +0 -13
  836. package/src/ui/table.tsx +0 -115
  837. package/src/ui/toggle-group.tsx +0 -83
  838. package/src/ui/tooltip.tsx +0 -56
  839. package/tsconfig.build.json +0 -12
  840. package/tsconfig.json +0 -20
  841. package/tsup.config.ts +0 -19
  842. package/vitest.config.ts +0 -17
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/blocks/marketing/navbars/navbar.tsx"],"sourcesContent":["'use client'\n\nimport { useEffect, useRef, useState, type ComponentProps, type ComponentType } from 'react'\nimport { ArrowRight, Menu } from 'lucide-react'\n\nimport { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from '../../../ui/accordion'\nimport { Button } from '../../../ui/button'\nimport {\n NavigationMenu,\n NavigationMenuContent,\n NavigationMenuItem,\n NavigationMenuLink,\n NavigationMenuList,\n NavigationMenuTrigger,\n navigationMenuTriggerStyle,\n} from '../../../ui/navigation-menu'\nimport { Separator } from '../../../ui/separator'\nimport {\n Sheet,\n SheetClose,\n SheetContent,\n SheetHeader,\n SheetTitle,\n SheetTrigger,\n} from '../../../ui/sheet'\nimport { cn } from '../../../lib/utils'\nimport type { CTA } from '../../../lib/types'\n\n/** Structural presentations of the page-level header. */\nexport type NavbarPresentation = 'bar' | 'mega' | 'floating'\n\n/** Icon component bound by the host at render time. */\nexport type NavbarIcon = ComponentType<{ className?: string }>\n\n/** Maps a serializable icon key to a host-bound icon component. */\nexport type NavbarIconMap = Record<string, NavbarIcon>\n\nexport interface NavbarItem {\n label: string\n href: string\n description?: string\n /** Key resolved through the consumer's `iconMap`. Omit for entries without an icon. */\n icon?: string\n}\n\nexport interface NavbarGroup {\n /** Optional column heading. */\n title?: string\n items: NavbarItem[]\n}\n\nexport interface NavbarLink {\n label: string\n /**\n * Destination for a plain link. Ignored when `groups` is present, because a grouped\n * entry opens a flyout instead of navigating.\n */\n href?: string\n /** Grouped entries rendered as a multi-column flyout (and an accordion on mobile). */\n groups?: NavbarGroup[]\n /** Renders the link with extra prominence in the flat presentations. */\n emphasis?: boolean\n}\n\nexport interface NavbarFeatured {\n eyebrow: string\n title: string\n description?: string\n href: string\n linkLabel?: string\n image?: string\n imageAlt?: string\n}\n\nexport interface NavbarProps {\n /** Structural presentation. Omit for the static `bar`. */\n presentation?: NavbarPresentation\n /** Brand text shown next to the logo mark. */\n logoText: string\n logoHref?: string\n /** Current location, used to indicate the active entry. */\n currentPath?: string\n links: NavbarLink[]\n /** Promo card shown beside grouped flyout entries. */\n featured?: NavbarFeatured\n /** Sign-in action. Rendered as a link when `href` is set, otherwise as a button. */\n signIn?: CTA\n /** Primary call to action. Rendered as a link when `href` is set, otherwise as a button. */\n cta?: CTA\n /** Host-bound icons for grouped entries that declare an `icon` key. */\n iconMap?: NavbarIconMap\n /** Fired when the sign-in action has no `href`. */\n onSignIn?: () => void\n /** Fired when the primary call to action has no `href`. */\n onCtaClick?: () => void\n /** Classes merged onto the header surface, so a brand can restyle it. */\n className?: string\n}\n\nconst FOCUS_RING =\n 'focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none'\n\nfunction Logo({ text, href }: { text: string; href?: string }) {\n const className = cn(\n FOCUS_RING,\n 'flex items-center gap-2 rounded-sm focus-visible:ring-offset-2'\n )\n\n const content = (\n <>\n <svg viewBox='0 0 32 32' aria-hidden='true' className='text-primary size-7' fill='none' xmlns='http://www.w3.org/2000/svg'>\n <path\n d='M26 24.75C26.4142 24.75 26.75 24.4142 26.75 24C26.75 23.5858 26.4142 23.25 26 23.25V24.75ZM26 23.25H11V24.75H26V23.25ZM8.75 21V15H7.25V21H8.75ZM11 23.25C9.75736 23.25 8.75 22.2426 8.75 21H7.25C7.25 23.0711 8.92893 24.75 11 24.75V23.25Z'\n fill='currentColor'\n />\n <path\n d='M1.5 3.25C1.08579 3.25 0.75 3.58579 0.75 4C0.75 4.41421 1.08579 4.75 1.5 4.75V3.25ZM1.5 4.75H6V3.25H1.5V4.75ZM7.25 6V21H8.75V6H7.25ZM6 4.75C6.69036 4.75 7.25 5.30964 7.25 6H8.75C8.75 4.48122 7.51878 3.25 6 3.25V4.75Z'\n fill='currentColor'\n />\n <path\n d='M22 21.75C22.4142 21.75 22.75 21.4142 22.75 21C22.75 20.5858 22.4142 20.25 22 20.25V21.75ZM22 20.25H11V21.75H22V20.25ZM8.75 18V12H7.25V18H8.75ZM11 20.25C9.75736 20.25 8.75 19.2426 8.75 18H7.25C7.25 20.0711 8.92893 21.75 11 21.75V20.25Z'\n fill='currentColor'\n />\n <path\n d='M27.2057 19.754C27.0654 20.1438 26.6357 20.346 26.246 20.2057C25.8562 20.0654 25.654 19.6357 25.7943 19.246L27.2057 19.754ZM30.0361 9.67744L29.3305 9.4234L29.3305 9.4234L30.0361 9.67744ZM25.7943 19.246L29.3305 9.4234L30.7418 9.93148L27.2057 19.754L25.7943 19.246ZM28.1543 7.75L8 7.75V6.25L28.1543 6.25V7.75ZM29.3305 9.4234C29.6237 8.60882 29.0201 7.75 28.1543 7.75V6.25C30.059 6.25 31.3869 8.13941 30.7418 9.93148L29.3305 9.4234Z'\n fill='currentColor'\n />\n <path\n d='M13.5 21.75C13.0858 21.75 12.75 21.4142 12.75 21C12.75 20.5858 13.0858 20.25 13.5 20.25V21.75ZM26.7111 19.009L27.4174 19.2613L27.4174 19.2613L26.7111 19.009ZM13.5 20.25H23.8858V21.75H13.5V20.25ZM26.0048 18.7568L27.7937 13.7477L29.2063 14.2523L27.4174 19.2613L26.0048 18.7568ZM23.8858 20.25C24.8367 20.25 25.6849 19.6522 26.0048 18.7568L27.4174 19.2613C26.8843 20.7537 25.4706 21.75 23.8858 21.75V20.25Z'\n fill='currentColor'\n />\n <path d='M21.1694 10.5806L14.5651 17.1849' stroke='currentColor' strokeWidth='1.5' strokeLinecap='round' />\n <path d='M22.1694 14.5806L18.5632 18.1868' stroke='currentColor' strokeWidth='1.5' strokeLinecap='round' />\n <circle cx='13.1' cy='26.1' r='1.7' stroke='currentColor' strokeWidth='1.2' />\n <circle cx='22.1' cy='26.1' r='1.7' stroke='currentColor' strokeWidth='1.2' />\n </svg>\n <span className='text-base font-semibold tracking-tight'>{text}</span>\n </>\n )\n\n if (!href) {\n return <span className={className}>{content}</span>\n }\n\n return (\n <a href={href} className={className}>\n {content}\n </a>\n )\n}\n\nfunction isCurrent(href: string | undefined, currentPath: string | undefined) {\n return href !== undefined && href === currentPath\n}\n\n/** Non-color cue so the active entry does not rely on color alone. */\nconst CURRENT_CUE = 'font-semibold underline decoration-2 underline-offset-8'\n\nfunction ActionButton({\n action,\n onClick,\n variant,\n className,\n rounded,\n}: {\n action: CTA\n onClick?: () => void\n variant?: ComponentProps<typeof Button>['variant']\n className?: string\n rounded?: boolean\n}) {\n const classes = cn(rounded && 'rounded-full', className)\n\n if (action.href && !onClick) {\n return (\n <Button variant={variant} size='sm' className={classes} asChild>\n <a href={action.href}>{action.label}</a>\n </Button>\n )\n }\n\n return (\n <Button variant={variant} size='sm' className={classes} onClick={onClick}>\n {action.label}\n </Button>\n )\n}\n\nfunction EntryIcon({ name, iconMap }: { name?: string; iconMap?: NavbarIconMap }) {\n if (!name) {\n return null\n }\n\n const Icon = iconMap?.[name]\n if (!Icon) {\n return null\n }\n\n return (\n <span\n aria-hidden='true'\n className='bg-muted text-foreground flex size-8 shrink-0 items-center justify-center rounded-md'\n >\n <Icon className='size-4' />\n </span>\n )\n}\n\nfunction FeaturedCard({ featured }: { featured: NavbarFeatured }) {\n return (\n <a\n href={featured.href}\n className={cn(\n 'border-border group relative flex h-full min-h-56 flex-col justify-end overflow-hidden rounded-md border',\n FOCUS_RING\n )}\n >\n {featured.image ? (\n <img\n src={featured.image}\n alt={featured.imageAlt ?? ''}\n className='absolute inset-0 size-full object-cover transition-transform duration-500 ease-out group-hover:scale-105'\n />\n ) : null}\n {/* Token-driven scrim: follows the consumer theme instead of a hardcoded dark overlay. */}\n <div\n aria-hidden='true'\n className='from-background via-background/70 absolute inset-0 bg-gradient-to-t to-transparent'\n />\n <div className='relative z-10 flex flex-col p-4'>\n <p className='text-muted-foreground text-xs font-semibold tracking-wide uppercase'>\n {featured.eyebrow}\n </p>\n <p className='text-foreground mt-1 text-sm font-medium'>{featured.title}</p>\n {featured.description ? (\n <p className='text-muted-foreground mt-1 text-sm'>{featured.description}</p>\n ) : null}\n {featured.linkLabel ? (\n <span className='text-foreground mt-3 inline-flex items-center gap-1 text-sm font-medium'>\n {featured.linkLabel}\n <ArrowRight className='size-3.5 transition-transform duration-200 ease-out group-hover:translate-x-0.5' />\n </span>\n ) : null}\n </div>\n </a>\n )\n}\n\nfunction MegaEntry({\n link,\n featured,\n currentPath,\n iconMap,\n}: {\n link: NavbarLink\n featured?: NavbarFeatured\n currentPath?: string\n iconMap?: NavbarIconMap\n}) {\n const groups = link.groups ?? []\n const hasCurrentChild = groups.some(group =>\n group.items.some(item => isCurrent(item.href, currentPath))\n )\n\n return (\n <NavigationMenuItem>\n <NavigationMenuTrigger className={cn(hasCurrentChild && CURRENT_CUE)}>\n {link.label}\n </NavigationMenuTrigger>\n <NavigationMenuContent>\n <div\n className={cn(\n 'grid gap-3 p-2',\n featured\n ? 'w-[760px] grid-cols-[1fr_248px]'\n : groups.length > 1\n ? 'w-[760px] grid-cols-2'\n : 'w-[360px]'\n )}\n >\n <div className={cn('grid gap-3', groups.length > 1 && 'grid-cols-2')}>\n {groups.map((group, groupIndex) => (\n <div key={group.title ?? `group-${groupIndex}`}>\n {group.title ? (\n <p className='text-muted-foreground px-3 pt-1 pb-1 text-xs font-semibold tracking-wide uppercase'>\n {group.title}\n </p>\n ) : null}\n <ul className='grid gap-1'>\n {group.items.map(item => {\n const active = isCurrent(item.href, currentPath)\n\n return (\n <li key={item.href}>\n <NavigationMenuLink\n href={item.href}\n aria-current={active ? 'page' : undefined}\n className={cn('items-start gap-3 p-3', active && CURRENT_CUE)}\n >\n <EntryIcon name={item.icon} iconMap={iconMap} />\n <span className='flex flex-col gap-0.5'>\n <span className='text-sm font-medium'>{item.label}</span>\n {item.description ? (\n <span className='text-muted-foreground line-clamp-2 text-sm leading-5'>\n {item.description}\n </span>\n ) : null}\n </span>\n </NavigationMenuLink>\n </li>\n )\n })}\n </ul>\n </div>\n ))}\n </div>\n {featured ? <FeaturedCard featured={featured} /> : null}\n </div>\n </NavigationMenuContent>\n </NavigationMenuItem>\n )\n}\n\nfunction MobileMenu({\n links,\n currentPath,\n signIn,\n cta,\n onSignIn,\n onCtaClick,\n}: {\n links: NavbarLink[]\n currentPath?: string\n signIn?: CTA\n cta?: CTA\n onSignIn?: () => void\n onCtaClick?: () => void\n}) {\n const [open, setOpen] = useState(false)\n const groupedLinks = links.filter(link => (link.groups?.length ?? 0) > 0)\n const plainLinks = links.filter(link => (link.groups?.length ?? 0) === 0)\n\n // Nothing to navigate to and no action to offer: no drawer, no dead trigger.\n if (links.length === 0 && !signIn && !cta) {\n return null\n }\n\n return (\n <Sheet open={open} onOpenChange={setOpen}>\n <SheetTrigger asChild>\n <Button variant='ghost' size='icon' aria-label='Open menu' className='lg:hidden'>\n <Menu />\n </Button>\n </SheetTrigger>\n <SheetContent\n side='right'\n className={cn(\n 'w-full max-w-xs p-0',\n groupedLinks.length > 0 && 'max-w-sm gap-0 overflow-y-auto'\n )}\n >\n <SheetHeader className='border-border border-b'>\n <SheetTitle className='text-left text-base'>Menu</SheetTitle>\n </SheetHeader>\n\n <nav aria-label='Mobile' className='px-2 py-2'>\n {groupedLinks.length > 0 ? (\n <Accordion type='multiple'>\n {groupedLinks.map(link => (\n <AccordionItem\n key={`${link.label}:${link.href ?? 'group'}`}\n value={link.label}\n className='border-none'\n >\n <AccordionTrigger className='px-3 py-3 text-base font-medium hover:no-underline'>\n {link.label}\n </AccordionTrigger>\n <AccordionContent className='pb-1'>\n {(link.groups ?? []).map((group, groupIndex) => (\n <div key={group.title ?? `group-${groupIndex}`}>\n {group.title ? (\n <p className='text-muted-foreground px-3 pt-1 pb-1 text-xs font-semibold tracking-wide uppercase'>\n {group.title}\n </p>\n ) : null}\n <ul className='flex flex-col'>\n {group.items.map(item => {\n const active = isCurrent(item.href, currentPath)\n\n return (\n <li key={item.href}>\n <SheetClose asChild>\n <a\n href={item.href}\n aria-current={active ? 'page' : undefined}\n className={cn(\n 'hover:bg-accent hover:text-accent-foreground flex items-start gap-3 rounded-md px-3 py-3 transition-colors duration-150 ease-out',\n FOCUS_RING,\n active ? 'text-foreground' : 'text-muted-foreground',\n active && CURRENT_CUE\n )}\n >\n <EntryIcon name={item.icon} />\n <span className='flex flex-col gap-0.5'>\n <span className='text-sm font-medium'>{item.label}</span>\n {item.description ? (\n <span className='text-muted-foreground text-sm'>\n {item.description}\n </span>\n ) : null}\n </span>\n </a>\n </SheetClose>\n </li>\n )\n })}\n </ul>\n </div>\n ))}\n </AccordionContent>\n </AccordionItem>\n ))}\n </Accordion>\n ) : null}\n\n {plainLinks.length > 0 ? (\n <div className={cn('flex flex-col', groupedLinks.length > 0 && 'mt-1')}>\n {plainLinks.map(link => {\n const active = isCurrent(link.href, currentPath)\n const className = cn(\n 'hover:bg-accent hover:text-accent-foreground rounded-md px-3 py-3 text-base font-medium transition-colors duration-150 ease-out',\n FOCUS_RING,\n active ? 'text-foreground' : 'text-muted-foreground',\n active && CURRENT_CUE\n )\n\n return (\n <SheetClose key={`${link.label}:${link.href ?? 'plain'}`} asChild>\n {link.href ? (\n <a href={link.href} aria-current={active ? 'page' : undefined} className={className}>\n {link.label}\n </a>\n ) : (\n <button type='button' className={className}>\n {link.label}\n </button>\n )}\n </SheetClose>\n )\n })}\n </div>\n ) : null}\n </nav>\n\n {signIn || cta ? (\n <div className='mt-auto flex flex-col gap-4 p-4'>\n <Separator />\n <div className='flex flex-col gap-2'>\n {signIn ? (\n <SheetClose asChild>\n <ActionButton\n action={signIn}\n onClick={onSignIn}\n variant='outline'\n className='w-full'\n />\n </SheetClose>\n ) : null}\n {cta ? (\n <SheetClose asChild>\n <ActionButton action={cta} onClick={onCtaClick} className='w-full' />\n </SheetClose>\n ) : null}\n </div>\n </div>\n ) : null}\n </SheetContent>\n </Sheet>\n )\n}\n\nfunction FlatLinks({\n links,\n currentPath,\n rounded,\n}: {\n links: NavbarLink[]\n currentPath?: string\n rounded?: boolean\n}) {\n if (links.length === 0) {\n return null\n }\n\n return (\n <nav aria-label='Main' className='hidden lg:block'>\n <ul className='flex items-center gap-1'>\n {links.map(link => {\n const active = isCurrent(link.href, currentPath)\n const className = cn(\n 'hover:text-foreground text-sm font-medium transition-colors duration-150 ease-out',\n FOCUS_RING,\n rounded ? 'rounded-full px-3 py-2' : 'rounded-md px-3 py-2',\n active ? 'text-foreground' : 'text-muted-foreground',\n active && CURRENT_CUE,\n !active && link.emphasis && 'text-foreground'\n )\n\n return (\n <li key={`${link.label}:${link.href ?? 'plain'}`}>\n {link.href ? (\n <a href={link.href} aria-current={active ? 'page' : undefined} className={className}>\n {link.label}\n </a>\n ) : (\n <span className={className}>{link.label}</span>\n )}\n </li>\n )\n })}\n </ul>\n </nav>\n )\n}\n\nfunction MegaLinks({\n links,\n featured,\n currentPath,\n iconMap,\n}: {\n links: NavbarLink[]\n featured?: NavbarFeatured\n currentPath?: string\n iconMap?: NavbarIconMap\n}) {\n if (links.length === 0) {\n return null\n }\n\n return (\n <NavigationMenu className='hidden lg:flex' aria-label='Main'>\n <NavigationMenuList>\n {links.map(link => {\n const grouped = (link.groups?.length ?? 0) > 0\n\n if (grouped) {\n return (\n <MegaEntry\n key={`${link.label}:group`}\n link={link}\n featured={featured}\n currentPath={currentPath}\n iconMap={iconMap}\n />\n )\n }\n\n const active = isCurrent(link.href, currentPath)\n\n return (\n <NavigationMenuItem key={`${link.label}:${link.href ?? 'plain'}`}>\n <NavigationMenuLink\n href={link.href}\n aria-current={active ? 'page' : undefined}\n className={cn(\n navigationMenuTriggerStyle(),\n active && CURRENT_CUE,\n !active && link.emphasis && 'text-foreground font-semibold'\n )}\n >\n {link.label}\n </NavigationMenuLink>\n </NavigationMenuItem>\n )\n })}\n </NavigationMenuList>\n </NavigationMenu>\n )\n}\n\n/**\n * Page-level navigation header.\n *\n * Responsibilities end at navigation: the header renders no cart, account, or search\n * affordance — those belong to the commerce shell (`StorefrontNavbar`).\n *\n * `floating` keeps the header in normal document flow (`sticky`), so it reserves its own\n * space and the consumer adds no compensating padding or scroll offset. A `sticky` header\n * is defeated by an `overflow` ancestor that scrolls; use `bar` there.\n */\nexport function Navbar({\n presentation = 'bar',\n logoText,\n logoHref,\n currentPath,\n links,\n featured,\n signIn,\n cta,\n iconMap,\n onSignIn,\n onCtaClick,\n className,\n}: NavbarProps) {\n const sentinelRef = useRef<HTMLDivElement>(null)\n const [scrolled, setScrolled] = useState(false)\n\n /**\n * Scroll detection:\n * - Inside a preview with an overflow ancestor the scroller is not the viewport, so\n * `scrollTop` on the nearest scrollable ancestor is the reliable signal.\n * - On a normal page, an IntersectionObserver on the 8px sentinel gives hysteresis\n * without flickering at a hard `scrollY > 8` threshold.\n */\n useEffect(() => {\n if (presentation !== 'floating') {\n return\n }\n\n const sentinel = sentinelRef.current\n if (!sentinel) {\n return\n }\n\n let ancestor: HTMLElement | null = sentinel.parentElement\n while (ancestor) {\n const { overflowY } = getComputedStyle(ancestor)\n if (\n (overflowY === 'auto' || overflowY === 'scroll' || overflowY === 'overlay') &&\n ancestor.scrollHeight > ancestor.clientHeight + 1\n ) {\n const scroller = ancestor\n const update = () => setScrolled(scroller.scrollTop > 8)\n update()\n scroller.addEventListener('scroll', update, { passive: true })\n return () => scroller.removeEventListener('scroll', update)\n }\n ancestor = ancestor.parentElement\n }\n\n const observer = new IntersectionObserver(([entry]) => setScrolled(!entry.isIntersecting), {\n threshold: 0,\n })\n\n observer.observe(sentinel)\n return () => observer.disconnect()\n }, [presentation])\n\n if (presentation === 'floating') {\n return (\n <>\n {/*\n Out of flow: gives the observer an 8px hysteresis target without painting a\n blank strip under the transparent unscrolled header.\n */}\n <div\n ref={sentinelRef}\n aria-hidden='true'\n className='pointer-events-none absolute inset-x-0 top-0 h-2'\n />\n\n <header className={cn('sticky top-0 z-50 w-full', className)}>\n <div\n className={cn(\n 'mx-auto flex h-14 items-center justify-between gap-4 transition-all duration-300 ease-out motion-reduce:transition-none',\n scrolled\n ? 'border-border/60 bg-background/80 max-w-5xl rounded-full border px-4 shadow-sm backdrop-blur-md sm:px-5'\n : 'max-w-7xl border border-transparent px-4 sm:px-6 lg:px-8'\n )}\n >\n <Logo text={logoText} href={logoHref} />\n\n <FlatLinks links={links} currentPath={currentPath} rounded />\n\n <div className='hidden items-center gap-2 lg:flex'>\n {signIn ? (\n <ActionButton action={signIn} onClick={onSignIn} variant='ghost' rounded />\n ) : null}\n {cta ? <ActionButton action={cta} onClick={onCtaClick} rounded /> : null}\n </div>\n\n <MobileMenu\n links={links}\n currentPath={currentPath}\n signIn={signIn}\n cta={cta}\n onSignIn={onSignIn}\n onCtaClick={onCtaClick}\n />\n </div>\n </header>\n </>\n )\n }\n\n return (\n <header className={cn('border-border bg-background w-full border-b', className)}>\n <div className='mx-auto flex h-16 w-full max-w-7xl items-center justify-between gap-4 px-4 sm:px-6 lg:px-8'>\n {presentation === 'mega' ? (\n <div className='flex items-center gap-6'>\n <Logo text={logoText} href={logoHref} />\n <MegaLinks\n links={links}\n featured={featured}\n currentPath={currentPath}\n iconMap={iconMap}\n />\n </div>\n ) : (\n <>\n <Logo text={logoText} href={logoHref} />\n <FlatLinks links={links} currentPath={currentPath} />\n </>\n )}\n\n <div className='hidden items-center gap-2 lg:flex'>\n {signIn ? <ActionButton action={signIn} onClick={onSignIn} variant='ghost' /> : null}\n {cta ? <ActionButton action={cta} onClick={onCtaClick} /> : null}\n </div>\n\n <MobileMenu\n links={links}\n currentPath={currentPath}\n signIn={signIn}\n cta={cta}\n onSignIn={onSignIn}\n onCtaClick={onCtaClick}\n />\n </div>\n </header>\n )\n}\n\nexport default Navbar\n"],"mappings":"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","names":[]}
@@ -0,0 +1,23 @@
1
+ export interface PricingTier {
2
+ id: string;
3
+ name: string;
4
+ description: string;
5
+ /** Precio sin símbolo de moneda; el símbolo se pasa aparte en `currencySymbol`. */
6
+ price: string;
7
+ /** Frecuencia de facturación, p. ej. '/mes'. */
8
+ frequency: string;
9
+ features: string[];
10
+ popular?: boolean;
11
+ }
12
+ export interface PricingSection1Props {
13
+ tiers: PricingTier[];
14
+ currencySymbol?: string;
15
+ sectionTitle?: string;
16
+ sectionLabel?: string;
17
+ popularBadgeLabel?: string;
18
+ getStartedLabel?: string;
19
+ onSelectTier?: (tier: PricingTier) => void;
20
+ }
21
+ export declare function PricingSection1({ tiers, currencySymbol, sectionTitle, sectionLabel, popularBadgeLabel, getStartedLabel, onSelectTier, }: PricingSection1Props): import("react").JSX.Element;
22
+ export default PricingSection1;
23
+ //# sourceMappingURL=pricing-section-1.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pricing-section-1.d.ts","sourceRoot":"","sources":["../../../../src/blocks/marketing/pricing/pricing-section-1.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,mFAAmF;IACnF,KAAK,EAAE,MAAM,CAAA;IACb,gDAAgD;IAChD,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,WAAW,EAAE,CAAA;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,CAAA;CAC3C;AAED,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,cAAoB,EACpB,YAAiD,EACjD,YAAiC,EACjC,iBAA6B,EAC7B,eAA2B,EAC3B,YAAY,GACb,EAAE,oBAAoB,+BAuDtB;AAED,eAAe,eAAe,CAAA"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var pricing_section_1_exports = {};
20
+ __export(pricing_section_1_exports, {
21
+ PricingSection1: () => PricingSection1,
22
+ default: () => pricing_section_1_default
23
+ });
24
+ module.exports = __toCommonJS(pricing_section_1_exports);
25
+ var import_jsx_runtime = require("react/jsx-runtime");
26
+ var import_lucide_react = require("lucide-react");
27
+ var import_button = require("../../../ui/button.js");
28
+ var import_card = require("../../../ui/card.js");
29
+ var import_utils = require("../../../lib/utils.js");
30
+ var import_badge = require("../../../ui/badge.js");
31
+ function PricingSection1({
32
+ tiers,
33
+ currencySymbol = "$",
34
+ sectionTitle = "El plan perfecto para tu negocio",
35
+ sectionLabel = "Nuestros precios",
36
+ popularBadgeLabel = "Popular",
37
+ getStartedLabel = "Empezar",
38
+ onSelectTier
39
+ }) {
40
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("section", { className: "py-16", id: "pricing", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "mx-auto w-full max-w-7xl px-4 sm:px-6 lg:px-8", children: [
41
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("header", { className: "mb-12 text-center", children: [
42
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-muted-foreground mb-2 text-sm font-medium", children: sectionLabel }),
43
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h2", { className: "text-3xl font-bold text-balance lg:text-5xl", children: sectionTitle })
44
+ ] }),
45
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "grid gap-6 lg:grid-cols-3 lg:gap-8", children: tiers.map((tier) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_card.Card, { className: (0, import_utils.cn)("overflow-hidden py-6", { "shadow-lg": tier.popular }), children: [
46
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_card.CardHeader, { className: "px-6", children: [
47
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center justify-between gap-4", children: [
48
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_card.CardTitle, { className: "text-xl font-bold lg:text-2xl", children: tier.name }),
49
+ tier.popular && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_badge.Badge, { className: "px-2.5 py-0.5 font-semibold rounded-full", children: popularBadgeLabel })
50
+ ] }),
51
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-muted-foreground text-sm", children: tier.description })
52
+ ] }),
53
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_card.CardContent, { className: "flex flex-col flex-1 px-6", children: [
54
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "mb-6 flex items-baseline gap-2", children: [
55
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { className: "text-3xl font-bold lg:text-5xl", children: [
56
+ currencySymbol,
57
+ tier.price
58
+ ] }),
59
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "text-muted-foreground text-sm", children: tier.frequency })
60
+ ] }),
61
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("ul", { className: "flex flex-col gap-3", children: tier.features.map((feature) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("li", { className: "flex items-center gap-2", children: [
62
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.Check, { className: "size-4 shrink-0" }),
63
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "text-muted-foreground text-sm", children: feature })
64
+ ] }, feature)) })
65
+ ] }),
66
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_card.CardFooter, { className: "border-0 bg-transparent px-6 pb-6", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
67
+ import_button.Button,
68
+ {
69
+ className: "h-10 px-8 w-full cursor-pointer gap-2",
70
+ size: "lg",
71
+ variant: tier.popular ? "default" : "outline",
72
+ "aria-label": `${getStartedLabel} con ${tier.name}`,
73
+ onClick: onSelectTier ? () => onSelectTier(tier) : void 0,
74
+ children: [
75
+ getStartedLabel,
76
+ " ",
77
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ArrowRight, {})
78
+ ]
79
+ }
80
+ ) })
81
+ ] }, tier.id)) })
82
+ ] }) });
83
+ }
84
+ var pricing_section_1_default = PricingSection1;
85
+ // Annotate the CommonJS export names for ESM import in node:
86
+ 0 && (module.exports = {
87
+ PricingSection1
88
+ });
89
+ //# sourceMappingURL=pricing-section-1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/blocks/marketing/pricing/pricing-section-1.tsx"],"sourcesContent":["import { ArrowRight, Check } from 'lucide-react'\nimport { Button } from '../../../ui/button'\nimport { Card, CardContent, CardFooter, CardHeader, CardTitle } from '../../../ui/card'\nimport { cn } from '../../../lib/utils'\nimport { Badge } from '../../../ui/badge'\n\nexport interface PricingTier {\n id: string\n name: string\n description: string\n /** Precio sin símbolo de moneda; el símbolo se pasa aparte en `currencySymbol`. */\n price: string\n /** Frecuencia de facturación, p. ej. '/mes'. */\n frequency: string\n features: string[]\n popular?: boolean\n}\n\nexport interface PricingSection1Props {\n tiers: PricingTier[]\n currencySymbol?: string\n sectionTitle?: string\n sectionLabel?: string\n popularBadgeLabel?: string\n getStartedLabel?: string\n onSelectTier?: (tier: PricingTier) => void\n}\n\nexport function PricingSection1({\n tiers,\n currencySymbol = '$',\n sectionTitle = 'El plan perfecto para tu negocio',\n sectionLabel = 'Nuestros precios',\n popularBadgeLabel = 'Popular',\n getStartedLabel = 'Empezar',\n onSelectTier,\n}: PricingSection1Props) {\n return (\n <section className='py-16' id='pricing'>\n <div className='mx-auto w-full max-w-7xl px-4 sm:px-6 lg:px-8'>\n <header className='mb-12 text-center'>\n <p className='text-muted-foreground mb-2 text-sm font-medium'>{sectionLabel}</p>\n <h2 className='text-3xl font-bold text-balance lg:text-5xl'>{sectionTitle}</h2>\n </header>\n\n <div className='grid gap-6 lg:grid-cols-3 lg:gap-8'>\n {tiers.map(tier => (\n <Card key={tier.id} className={cn('overflow-hidden py-6', { 'shadow-lg': tier.popular })}>\n <CardHeader className='px-6'>\n <div className='flex items-center justify-between gap-4'>\n <CardTitle className='text-xl font-bold lg:text-2xl'>{tier.name}</CardTitle>\n {tier.popular && (\n <Badge className='px-2.5 py-0.5 font-semibold rounded-full'>{popularBadgeLabel}</Badge>\n )}\n </div>\n <p className='text-muted-foreground text-sm'>{tier.description}</p>\n </CardHeader>\n <CardContent className='flex flex-col flex-1 px-6'>\n <div className='mb-6 flex items-baseline gap-2'>\n <span className='text-3xl font-bold lg:text-5xl'>\n {currencySymbol}\n {tier.price}\n </span>\n <span className='text-muted-foreground text-sm'>{tier.frequency}</span>\n </div>\n <ul className='flex flex-col gap-3'>\n {tier.features.map(feature => (\n <li key={feature} className='flex items-center gap-2'>\n <Check className='size-4 shrink-0' />\n <span className='text-muted-foreground text-sm'>{feature}</span>\n </li>\n ))}\n </ul>\n </CardContent>\n <CardFooter className='border-0 bg-transparent px-6 pb-6'>\n <Button\n className='h-10 px-8 w-full cursor-pointer gap-2'\n size='lg'\n variant={tier.popular ? 'default' : 'outline'}\n aria-label={`${getStartedLabel} con ${tier.name}`}\n onClick={onSelectTier ? () => onSelectTier(tier) : undefined}\n >\n {getStartedLabel} <ArrowRight />\n </Button>\n </CardFooter>\n </Card>\n ))}\n </div>\n </div>\n </section>\n )\n}\n\nexport default PricingSection1"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAwCQ;AAxCR,0BAAkC;AAClC,oBAAuB;AACvB,kBAAqE;AACrE,mBAAmB;AACnB,mBAAsB;AAwBf,SAAS,gBAAgB;AAAA,EAC9B;AAAA,EACA,iBAAiB;AAAA,EACjB,eAAe;AAAA,EACf,eAAe;AAAA,EACf,oBAAoB;AAAA,EACpB,kBAAkB;AAAA,EAClB;AACF,GAAyB;AACvB,SACE,4CAAC,aAAQ,WAAU,SAAQ,IAAG,WAC5B,uDAAC,SAAI,WAAU,iDACb;AAAA,iDAAC,YAAO,WAAU,qBAChB;AAAA,kDAAC,OAAE,WAAU,kDAAkD,wBAAa;AAAA,MAC5E,4CAAC,QAAG,WAAU,+CAA+C,wBAAa;AAAA,OAC5E;AAAA,IAEA,4CAAC,SAAI,WAAU,sCACZ,gBAAM,IAAI,UACT,6CAAC,oBAAmB,eAAW,iBAAG,wBAAwB,EAAE,aAAa,KAAK,QAAQ,CAAC,GACrF;AAAA,mDAAC,0BAAW,WAAU,QACpB;AAAA,qDAAC,SAAI,WAAU,2CACb;AAAA,sDAAC,yBAAU,WAAU,iCAAiC,eAAK,MAAK;AAAA,UAC/D,KAAK,WACJ,4CAAC,sBAAM,WAAU,4CAA4C,6BAAkB;AAAA,WAEnF;AAAA,QACA,4CAAC,OAAE,WAAU,iCAAiC,eAAK,aAAY;AAAA,SACjE;AAAA,MACA,6CAAC,2BAAY,WAAU,6BACrB;AAAA,qDAAC,SAAI,WAAU,kCACb;AAAA,uDAAC,UAAK,WAAU,kCACb;AAAA;AAAA,YACA,KAAK;AAAA,aACR;AAAA,UACA,4CAAC,UAAK,WAAU,iCAAiC,eAAK,WAAU;AAAA,WAClE;AAAA,QACA,4CAAC,QAAG,WAAU,uBACX,eAAK,SAAS,IAAI,aACjB,6CAAC,QAAiB,WAAU,2BAC1B;AAAA,sDAAC,6BAAM,WAAU,mBAAkB;AAAA,UACnC,4CAAC,UAAK,WAAU,iCAAiC,mBAAQ;AAAA,aAFlD,OAGT,CACD,GACH;AAAA,SACF;AAAA,MACA,4CAAC,0BAAW,WAAU,qCACpB;AAAA,QAAC;AAAA;AAAA,UACC,WAAU;AAAA,UACV,MAAK;AAAA,UACL,SAAS,KAAK,UAAU,YAAY;AAAA,UACpC,cAAY,GAAG,eAAe,QAAQ,KAAK,IAAI;AAAA,UAC/C,SAAS,eAAe,MAAM,aAAa,IAAI,IAAI;AAAA,UAElD;AAAA;AAAA,YAAgB;AAAA,YAAC,4CAAC,kCAAW;AAAA;AAAA;AAAA,MAChC,GACF;AAAA,SArCS,KAAK,EAsChB,CACD,GACH;AAAA,KACF,GACF;AAEJ;AAEA,IAAO,4BAAQ;","names":[]}
@@ -0,0 +1,65 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { ArrowRight, Check } from "lucide-react";
3
+ import { Button } from "../../../ui/button.mjs";
4
+ import { Card, CardContent, CardFooter, CardHeader, CardTitle } from "../../../ui/card.mjs";
5
+ import { cn } from "../../../lib/utils.mjs";
6
+ import { Badge } from "../../../ui/badge.mjs";
7
+ function PricingSection1({
8
+ tiers,
9
+ currencySymbol = "$",
10
+ sectionTitle = "El plan perfecto para tu negocio",
11
+ sectionLabel = "Nuestros precios",
12
+ popularBadgeLabel = "Popular",
13
+ getStartedLabel = "Empezar",
14
+ onSelectTier
15
+ }) {
16
+ return /* @__PURE__ */ jsx("section", { className: "py-16", id: "pricing", children: /* @__PURE__ */ jsxs("div", { className: "mx-auto w-full max-w-7xl px-4 sm:px-6 lg:px-8", children: [
17
+ /* @__PURE__ */ jsxs("header", { className: "mb-12 text-center", children: [
18
+ /* @__PURE__ */ jsx("p", { className: "text-muted-foreground mb-2 text-sm font-medium", children: sectionLabel }),
19
+ /* @__PURE__ */ jsx("h2", { className: "text-3xl font-bold text-balance lg:text-5xl", children: sectionTitle })
20
+ ] }),
21
+ /* @__PURE__ */ jsx("div", { className: "grid gap-6 lg:grid-cols-3 lg:gap-8", children: tiers.map((tier) => /* @__PURE__ */ jsxs(Card, { className: cn("overflow-hidden py-6", { "shadow-lg": tier.popular }), children: [
22
+ /* @__PURE__ */ jsxs(CardHeader, { className: "px-6", children: [
23
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-4", children: [
24
+ /* @__PURE__ */ jsx(CardTitle, { className: "text-xl font-bold lg:text-2xl", children: tier.name }),
25
+ tier.popular && /* @__PURE__ */ jsx(Badge, { className: "px-2.5 py-0.5 font-semibold rounded-full", children: popularBadgeLabel })
26
+ ] }),
27
+ /* @__PURE__ */ jsx("p", { className: "text-muted-foreground text-sm", children: tier.description })
28
+ ] }),
29
+ /* @__PURE__ */ jsxs(CardContent, { className: "flex flex-col flex-1 px-6", children: [
30
+ /* @__PURE__ */ jsxs("div", { className: "mb-6 flex items-baseline gap-2", children: [
31
+ /* @__PURE__ */ jsxs("span", { className: "text-3xl font-bold lg:text-5xl", children: [
32
+ currencySymbol,
33
+ tier.price
34
+ ] }),
35
+ /* @__PURE__ */ jsx("span", { className: "text-muted-foreground text-sm", children: tier.frequency })
36
+ ] }),
37
+ /* @__PURE__ */ jsx("ul", { className: "flex flex-col gap-3", children: tier.features.map((feature) => /* @__PURE__ */ jsxs("li", { className: "flex items-center gap-2", children: [
38
+ /* @__PURE__ */ jsx(Check, { className: "size-4 shrink-0" }),
39
+ /* @__PURE__ */ jsx("span", { className: "text-muted-foreground text-sm", children: feature })
40
+ ] }, feature)) })
41
+ ] }),
42
+ /* @__PURE__ */ jsx(CardFooter, { className: "border-0 bg-transparent px-6 pb-6", children: /* @__PURE__ */ jsxs(
43
+ Button,
44
+ {
45
+ className: "h-10 px-8 w-full cursor-pointer gap-2",
46
+ size: "lg",
47
+ variant: tier.popular ? "default" : "outline",
48
+ "aria-label": `${getStartedLabel} con ${tier.name}`,
49
+ onClick: onSelectTier ? () => onSelectTier(tier) : void 0,
50
+ children: [
51
+ getStartedLabel,
52
+ " ",
53
+ /* @__PURE__ */ jsx(ArrowRight, {})
54
+ ]
55
+ }
56
+ ) })
57
+ ] }, tier.id)) })
58
+ ] }) });
59
+ }
60
+ var pricing_section_1_default = PricingSection1;
61
+ export {
62
+ PricingSection1,
63
+ pricing_section_1_default as default
64
+ };
65
+ //# sourceMappingURL=pricing-section-1.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/blocks/marketing/pricing/pricing-section-1.tsx"],"sourcesContent":["import { ArrowRight, Check } from 'lucide-react'\nimport { Button } from '../../../ui/button'\nimport { Card, CardContent, CardFooter, CardHeader, CardTitle } from '../../../ui/card'\nimport { cn } from '../../../lib/utils'\nimport { Badge } from '../../../ui/badge'\n\nexport interface PricingTier {\n id: string\n name: string\n description: string\n /** Precio sin símbolo de moneda; el símbolo se pasa aparte en `currencySymbol`. */\n price: string\n /** Frecuencia de facturación, p. ej. '/mes'. */\n frequency: string\n features: string[]\n popular?: boolean\n}\n\nexport interface PricingSection1Props {\n tiers: PricingTier[]\n currencySymbol?: string\n sectionTitle?: string\n sectionLabel?: string\n popularBadgeLabel?: string\n getStartedLabel?: string\n onSelectTier?: (tier: PricingTier) => void\n}\n\nexport function PricingSection1({\n tiers,\n currencySymbol = '$',\n sectionTitle = 'El plan perfecto para tu negocio',\n sectionLabel = 'Nuestros precios',\n popularBadgeLabel = 'Popular',\n getStartedLabel = 'Empezar',\n onSelectTier,\n}: PricingSection1Props) {\n return (\n <section className='py-16' id='pricing'>\n <div className='mx-auto w-full max-w-7xl px-4 sm:px-6 lg:px-8'>\n <header className='mb-12 text-center'>\n <p className='text-muted-foreground mb-2 text-sm font-medium'>{sectionLabel}</p>\n <h2 className='text-3xl font-bold text-balance lg:text-5xl'>{sectionTitle}</h2>\n </header>\n\n <div className='grid gap-6 lg:grid-cols-3 lg:gap-8'>\n {tiers.map(tier => (\n <Card key={tier.id} className={cn('overflow-hidden py-6', { 'shadow-lg': tier.popular })}>\n <CardHeader className='px-6'>\n <div className='flex items-center justify-between gap-4'>\n <CardTitle className='text-xl font-bold lg:text-2xl'>{tier.name}</CardTitle>\n {tier.popular && (\n <Badge className='px-2.5 py-0.5 font-semibold rounded-full'>{popularBadgeLabel}</Badge>\n )}\n </div>\n <p className='text-muted-foreground text-sm'>{tier.description}</p>\n </CardHeader>\n <CardContent className='flex flex-col flex-1 px-6'>\n <div className='mb-6 flex items-baseline gap-2'>\n <span className='text-3xl font-bold lg:text-5xl'>\n {currencySymbol}\n {tier.price}\n </span>\n <span className='text-muted-foreground text-sm'>{tier.frequency}</span>\n </div>\n <ul className='flex flex-col gap-3'>\n {tier.features.map(feature => (\n <li key={feature} className='flex items-center gap-2'>\n <Check className='size-4 shrink-0' />\n <span className='text-muted-foreground text-sm'>{feature}</span>\n </li>\n ))}\n </ul>\n </CardContent>\n <CardFooter className='border-0 bg-transparent px-6 pb-6'>\n <Button\n className='h-10 px-8 w-full cursor-pointer gap-2'\n size='lg'\n variant={tier.popular ? 'default' : 'outline'}\n aria-label={`${getStartedLabel} con ${tier.name}`}\n onClick={onSelectTier ? () => onSelectTier(tier) : undefined}\n >\n {getStartedLabel} <ArrowRight />\n </Button>\n </CardFooter>\n </Card>\n ))}\n </div>\n </div>\n </section>\n )\n}\n\nexport default PricingSection1"],"mappings":"AAwCQ,SACE,KADF;AAxCR,SAAS,YAAY,aAAa;AAClC,SAAS,cAAc;AACvB,SAAS,MAAM,aAAa,YAAY,YAAY,iBAAiB;AACrE,SAAS,UAAU;AACnB,SAAS,aAAa;AAwBf,SAAS,gBAAgB;AAAA,EAC9B;AAAA,EACA,iBAAiB;AAAA,EACjB,eAAe;AAAA,EACf,eAAe;AAAA,EACf,oBAAoB;AAAA,EACpB,kBAAkB;AAAA,EAClB;AACF,GAAyB;AACvB,SACE,oBAAC,aAAQ,WAAU,SAAQ,IAAG,WAC5B,+BAAC,SAAI,WAAU,iDACb;AAAA,yBAAC,YAAO,WAAU,qBAChB;AAAA,0BAAC,OAAE,WAAU,kDAAkD,wBAAa;AAAA,MAC5E,oBAAC,QAAG,WAAU,+CAA+C,wBAAa;AAAA,OAC5E;AAAA,IAEA,oBAAC,SAAI,WAAU,sCACZ,gBAAM,IAAI,UACT,qBAAC,QAAmB,WAAW,GAAG,wBAAwB,EAAE,aAAa,KAAK,QAAQ,CAAC,GACrF;AAAA,2BAAC,cAAW,WAAU,QACpB;AAAA,6BAAC,SAAI,WAAU,2CACb;AAAA,8BAAC,aAAU,WAAU,iCAAiC,eAAK,MAAK;AAAA,UAC/D,KAAK,WACJ,oBAAC,SAAM,WAAU,4CAA4C,6BAAkB;AAAA,WAEnF;AAAA,QACA,oBAAC,OAAE,WAAU,iCAAiC,eAAK,aAAY;AAAA,SACjE;AAAA,MACA,qBAAC,eAAY,WAAU,6BACrB;AAAA,6BAAC,SAAI,WAAU,kCACb;AAAA,+BAAC,UAAK,WAAU,kCACb;AAAA;AAAA,YACA,KAAK;AAAA,aACR;AAAA,UACA,oBAAC,UAAK,WAAU,iCAAiC,eAAK,WAAU;AAAA,WAClE;AAAA,QACA,oBAAC,QAAG,WAAU,uBACX,eAAK,SAAS,IAAI,aACjB,qBAAC,QAAiB,WAAU,2BAC1B;AAAA,8BAAC,SAAM,WAAU,mBAAkB;AAAA,UACnC,oBAAC,UAAK,WAAU,iCAAiC,mBAAQ;AAAA,aAFlD,OAGT,CACD,GACH;AAAA,SACF;AAAA,MACA,oBAAC,cAAW,WAAU,qCACpB;AAAA,QAAC;AAAA;AAAA,UACC,WAAU;AAAA,UACV,MAAK;AAAA,UACL,SAAS,KAAK,UAAU,YAAY;AAAA,UACpC,cAAY,GAAG,eAAe,QAAQ,KAAK,IAAI;AAAA,UAC/C,SAAS,eAAe,MAAM,aAAa,IAAI,IAAI;AAAA,UAElD;AAAA;AAAA,YAAgB;AAAA,YAAC,oBAAC,cAAW;AAAA;AAAA;AAAA,MAChC,GACF;AAAA,SArCS,KAAK,EAsChB,CACD,GACH;AAAA,KACF,GACF;AAEJ;AAEA,IAAO,4BAAQ;","names":[]}
@@ -0,0 +1,19 @@
1
+ import type { LucideIcon } from 'lucide-react';
2
+ export interface StatisticItem {
3
+ id: string;
4
+ title: string;
5
+ value: string;
6
+ description: string;
7
+ progress: number;
8
+ progressLabel: string;
9
+ icon: LucideIcon;
10
+ }
11
+ export interface Statistic1Props {
12
+ items: StatisticItem[];
13
+ badge?: string;
14
+ title?: string;
15
+ description?: string;
16
+ }
17
+ export declare function Statistic1({ items, badge, title, description }: Statistic1Props): import("react").JSX.Element;
18
+ export default Statistic1;
19
+ //# sourceMappingURL=statistic-1.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statistic-1.d.ts","sourceRoot":"","sources":["../../../../src/blocks/marketing/statistics/statistic-1.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAE9C,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,UAAU,CAAA;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,aAAa,EAAE,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,eAAe,+BAmE/E;AAED,eAAe,UAAU,CAAA"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var statistic_1_exports = {};
20
+ __export(statistic_1_exports, {
21
+ Statistic1: () => Statistic1,
22
+ default: () => statistic_1_default
23
+ });
24
+ module.exports = __toCommonJS(statistic_1_exports);
25
+ var import_jsx_runtime = require("react/jsx-runtime");
26
+ var import_card = require("../../../ui/card.js");
27
+ var import_badge = require("../../../ui/badge.js");
28
+ var import_progress = require("../../../ui/progress.js");
29
+ var import_lucide_react = require("lucide-react");
30
+ function Statistic1({ items, badge, title, description }) {
31
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("section", { className: "py-16 md:py-20", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "mx-auto w-full max-w-7xl px-4 sm:px-6 lg:px-8", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-col gap-16", children: [
32
+ (badge || title || description) && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-col gap-6 text-center", children: [
33
+ badge && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
34
+ import_badge.Badge,
35
+ {
36
+ variant: "outline",
37
+ className: "h-auto [&>svg]:size-4! rounded-md inline-flex items-center gap-2 px-4 py-2 text-sm font-medium self-center",
38
+ children: [
39
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.BarChart3, {}),
40
+ badge
41
+ ]
42
+ }
43
+ ),
44
+ title && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h2", { className: "text-4xl font-bold tracking-tight text-balance lg:text-5xl", children: title }),
45
+ description && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-muted-foreground mx-auto max-w-2xl text-lg leading-relaxed", children: description })
46
+ ] }),
47
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "grid gap-6 sm:grid-cols-2 md:grid-cols-3", children: items.map((item) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
48
+ import_card.Card,
49
+ {
50
+ className: "group relative gap-2 overflow-hidden py-6 transition-all duration-300 hover:shadow-lg",
51
+ children: [
52
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_card.CardHeader, { className: "px-6", children: [
53
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-start justify-between", children: [
54
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex-1", children: [
55
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_card.CardTitle, { className: "text-muted-foreground text-sm font-medium text-balance", children: item.title }),
56
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "mt-2", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-2xl font-bold", children: item.value }) })
57
+ ] }),
58
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "bg-muted rounded-xl p-3", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(item.icon, { className: "text-muted-foreground size-6" }) })
59
+ ] }),
60
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-muted-foreground mt-1 text-xs", children: item.description })
61
+ ] }),
62
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_card.CardContent, { className: "pt-0 px-6", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-col gap-2", children: [
63
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center justify-between text-xs", children: [
64
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "text-muted-foreground", children: item.progressLabel }),
65
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { className: "font-medium", children: [
66
+ item.progress,
67
+ "%"
68
+ ] })
69
+ ] }),
70
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_progress.Progress, { value: item.progress, className: "h-2" })
71
+ ] }) })
72
+ ]
73
+ },
74
+ item.id
75
+ )) })
76
+ ] }) }) });
77
+ }
78
+ var statistic_1_default = Statistic1;
79
+ // Annotate the CommonJS export names for ESM import in node:
80
+ 0 && (module.exports = {
81
+ Statistic1
82
+ });
83
+ //# sourceMappingURL=statistic-1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/blocks/marketing/statistics/statistic-1.tsx"],"sourcesContent":["import { Card, CardContent, CardHeader, CardTitle } from '../../../ui/card'\nimport { Badge } from '../../../ui/badge'\nimport { Progress } from '../../../ui/progress'\nimport { BarChart3 } from 'lucide-react'\nimport type { LucideIcon } from 'lucide-react'\n\nexport interface StatisticItem {\n id: string\n title: string\n value: string\n description: string\n progress: number\n progressLabel: string\n icon: LucideIcon\n}\n\nexport interface Statistic1Props {\n items: StatisticItem[]\n badge?: string\n title?: string\n description?: string\n}\n\nexport function Statistic1({ items, badge, title, description }: Statistic1Props) {\n return (\n <section className='py-16 md:py-20'>\n <div className='mx-auto w-full max-w-7xl px-4 sm:px-6 lg:px-8'>\n <div className='flex flex-col gap-16'>\n {(badge || title || description) && (\n <div className='flex flex-col gap-6 text-center'>\n {badge && (\n <Badge\n variant='outline'\n className='h-auto [&>svg]:size-4! rounded-md inline-flex items-center gap-2 px-4 py-2 text-sm font-medium self-center'\n >\n <BarChart3 />\n {badge}\n </Badge>\n )}\n {title && (\n <h2 className='text-4xl font-bold tracking-tight text-balance lg:text-5xl'>\n {title}\n </h2>\n )}\n {description && (\n <p className='text-muted-foreground mx-auto max-w-2xl text-lg leading-relaxed'>\n {description}\n </p>\n )}\n </div>\n )}\n\n <div className='grid gap-6 sm:grid-cols-2 md:grid-cols-3'>\n {items.map(item => (\n <Card\n key={item.id}\n className='group relative gap-2 overflow-hidden py-6 transition-all duration-300 hover:shadow-lg'\n >\n <CardHeader className='px-6'>\n <div className='flex items-start justify-between'>\n <div className='flex-1'>\n <CardTitle className='text-muted-foreground text-sm font-medium text-balance'>\n {item.title}\n </CardTitle>\n <div className='mt-2'>\n <div className='text-2xl font-bold'>{item.value}</div>\n </div>\n </div>\n <div className='bg-muted rounded-xl p-3'>\n <item.icon className='text-muted-foreground size-6' />\n </div>\n </div>\n <p className='text-muted-foreground mt-1 text-xs'>{item.description}</p>\n </CardHeader>\n <CardContent className='pt-0 px-6'>\n <div className='flex flex-col gap-2'>\n <div className='flex items-center justify-between text-xs'>\n <span className='text-muted-foreground'>{item.progressLabel}</span>\n <span className='font-medium'>{item.progress}%</span>\n </div>\n <Progress value={item.progress} className='h-2' />\n </div>\n </CardContent>\n </Card>\n ))}\n </div>\n </div>\n </div>\n </section>\n )\n}\n\nexport default Statistic1"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA+BgB;AA/BhB,kBAAyD;AACzD,mBAAsB;AACtB,sBAAyB;AACzB,0BAA0B;AAoBnB,SAAS,WAAW,EAAE,OAAO,OAAO,OAAO,YAAY,GAAoB;AAChF,SACE,4CAAC,aAAQ,WAAU,kBACjB,sDAAC,SAAI,WAAU,iDACb,uDAAC,SAAI,WAAU,wBACX;AAAA,cAAS,SAAS,gBAClB,6CAAC,SAAI,WAAU,mCACZ;AAAA,eACC;AAAA,QAAC;AAAA;AAAA,UACC,SAAQ;AAAA,UACR,WAAU;AAAA,UAEV;AAAA,wDAAC,iCAAU;AAAA,YACV;AAAA;AAAA;AAAA,MACH;AAAA,MAED,SACC,4CAAC,QAAG,WAAU,8DACX,iBACH;AAAA,MAED,eACC,4CAAC,OAAE,WAAU,mEACV,uBACH;AAAA,OAEJ;AAAA,IAGF,4CAAC,SAAI,WAAU,4CACZ,gBAAM,IAAI,UACT;AAAA,MAAC;AAAA;AAAA,QAEC,WAAU;AAAA,QAEV;AAAA,uDAAC,0BAAW,WAAU,QACpB;AAAA,yDAAC,SAAI,WAAU,oCACb;AAAA,2DAAC,SAAI,WAAU,UACb;AAAA,4DAAC,yBAAU,WAAU,0DAClB,eAAK,OACR;AAAA,gBACA,4CAAC,SAAI,WAAU,QACb,sDAAC,SAAI,WAAU,sBAAsB,eAAK,OAAM,GAClD;AAAA,iBACF;AAAA,cACA,4CAAC,SAAI,WAAU,2BACb,sDAAC,KAAK,MAAL,EAAU,WAAU,gCAA+B,GACtD;AAAA,eACF;AAAA,YACA,4CAAC,OAAE,WAAU,sCAAsC,eAAK,aAAY;AAAA,aACtE;AAAA,UACA,4CAAC,2BAAY,WAAU,aACrB,uDAAC,SAAI,WAAU,uBACb;AAAA,yDAAC,SAAI,WAAU,6CACb;AAAA,0DAAC,UAAK,WAAU,yBAAyB,eAAK,eAAc;AAAA,cAC5D,6CAAC,UAAK,WAAU,eAAe;AAAA,qBAAK;AAAA,gBAAS;AAAA,iBAAC;AAAA,eAChD;AAAA,YACA,4CAAC,4BAAS,OAAO,KAAK,UAAU,WAAU,OAAM;AAAA,aAClD,GACF;AAAA;AAAA;AAAA,MA3BK,KAAK;AAAA,IA4BZ,CACD,GACH;AAAA,KACF,GACF,GACF;AAEJ;AAEA,IAAO,sBAAQ;","names":[]}
@@ -0,0 +1,59 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { Card, CardContent, CardHeader, CardTitle } from "../../../ui/card.mjs";
3
+ import { Badge } from "../../../ui/badge.mjs";
4
+ import { Progress } from "../../../ui/progress.mjs";
5
+ import { BarChart3 } from "lucide-react";
6
+ function Statistic1({ items, badge, title, description }) {
7
+ return /* @__PURE__ */ jsx("section", { className: "py-16 md:py-20", children: /* @__PURE__ */ jsx("div", { className: "mx-auto w-full max-w-7xl px-4 sm:px-6 lg:px-8", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-16", children: [
8
+ (badge || title || description) && /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6 text-center", children: [
9
+ badge && /* @__PURE__ */ jsxs(
10
+ Badge,
11
+ {
12
+ variant: "outline",
13
+ className: "h-auto [&>svg]:size-4! rounded-md inline-flex items-center gap-2 px-4 py-2 text-sm font-medium self-center",
14
+ children: [
15
+ /* @__PURE__ */ jsx(BarChart3, {}),
16
+ badge
17
+ ]
18
+ }
19
+ ),
20
+ title && /* @__PURE__ */ jsx("h2", { className: "text-4xl font-bold tracking-tight text-balance lg:text-5xl", children: title }),
21
+ description && /* @__PURE__ */ jsx("p", { className: "text-muted-foreground mx-auto max-w-2xl text-lg leading-relaxed", children: description })
22
+ ] }),
23
+ /* @__PURE__ */ jsx("div", { className: "grid gap-6 sm:grid-cols-2 md:grid-cols-3", children: items.map((item) => /* @__PURE__ */ jsxs(
24
+ Card,
25
+ {
26
+ className: "group relative gap-2 overflow-hidden py-6 transition-all duration-300 hover:shadow-lg",
27
+ children: [
28
+ /* @__PURE__ */ jsxs(CardHeader, { className: "px-6", children: [
29
+ /* @__PURE__ */ jsxs("div", { className: "flex items-start justify-between", children: [
30
+ /* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
31
+ /* @__PURE__ */ jsx(CardTitle, { className: "text-muted-foreground text-sm font-medium text-balance", children: item.title }),
32
+ /* @__PURE__ */ jsx("div", { className: "mt-2", children: /* @__PURE__ */ jsx("div", { className: "text-2xl font-bold", children: item.value }) })
33
+ ] }),
34
+ /* @__PURE__ */ jsx("div", { className: "bg-muted rounded-xl p-3", children: /* @__PURE__ */ jsx(item.icon, { className: "text-muted-foreground size-6" }) })
35
+ ] }),
36
+ /* @__PURE__ */ jsx("p", { className: "text-muted-foreground mt-1 text-xs", children: item.description })
37
+ ] }),
38
+ /* @__PURE__ */ jsx(CardContent, { className: "pt-0 px-6", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2", children: [
39
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between text-xs", children: [
40
+ /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: item.progressLabel }),
41
+ /* @__PURE__ */ jsxs("span", { className: "font-medium", children: [
42
+ item.progress,
43
+ "%"
44
+ ] })
45
+ ] }),
46
+ /* @__PURE__ */ jsx(Progress, { value: item.progress, className: "h-2" })
47
+ ] }) })
48
+ ]
49
+ },
50
+ item.id
51
+ )) })
52
+ ] }) }) });
53
+ }
54
+ var statistic_1_default = Statistic1;
55
+ export {
56
+ Statistic1,
57
+ statistic_1_default as default
58
+ };
59
+ //# sourceMappingURL=statistic-1.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/blocks/marketing/statistics/statistic-1.tsx"],"sourcesContent":["import { Card, CardContent, CardHeader, CardTitle } from '../../../ui/card'\nimport { Badge } from '../../../ui/badge'\nimport { Progress } from '../../../ui/progress'\nimport { BarChart3 } from 'lucide-react'\nimport type { LucideIcon } from 'lucide-react'\n\nexport interface StatisticItem {\n id: string\n title: string\n value: string\n description: string\n progress: number\n progressLabel: string\n icon: LucideIcon\n}\n\nexport interface Statistic1Props {\n items: StatisticItem[]\n badge?: string\n title?: string\n description?: string\n}\n\nexport function Statistic1({ items, badge, title, description }: Statistic1Props) {\n return (\n <section className='py-16 md:py-20'>\n <div className='mx-auto w-full max-w-7xl px-4 sm:px-6 lg:px-8'>\n <div className='flex flex-col gap-16'>\n {(badge || title || description) && (\n <div className='flex flex-col gap-6 text-center'>\n {badge && (\n <Badge\n variant='outline'\n className='h-auto [&>svg]:size-4! rounded-md inline-flex items-center gap-2 px-4 py-2 text-sm font-medium self-center'\n >\n <BarChart3 />\n {badge}\n </Badge>\n )}\n {title && (\n <h2 className='text-4xl font-bold tracking-tight text-balance lg:text-5xl'>\n {title}\n </h2>\n )}\n {description && (\n <p className='text-muted-foreground mx-auto max-w-2xl text-lg leading-relaxed'>\n {description}\n </p>\n )}\n </div>\n )}\n\n <div className='grid gap-6 sm:grid-cols-2 md:grid-cols-3'>\n {items.map(item => (\n <Card\n key={item.id}\n className='group relative gap-2 overflow-hidden py-6 transition-all duration-300 hover:shadow-lg'\n >\n <CardHeader className='px-6'>\n <div className='flex items-start justify-between'>\n <div className='flex-1'>\n <CardTitle className='text-muted-foreground text-sm font-medium text-balance'>\n {item.title}\n </CardTitle>\n <div className='mt-2'>\n <div className='text-2xl font-bold'>{item.value}</div>\n </div>\n </div>\n <div className='bg-muted rounded-xl p-3'>\n <item.icon className='text-muted-foreground size-6' />\n </div>\n </div>\n <p className='text-muted-foreground mt-1 text-xs'>{item.description}</p>\n </CardHeader>\n <CardContent className='pt-0 px-6'>\n <div className='flex flex-col gap-2'>\n <div className='flex items-center justify-between text-xs'>\n <span className='text-muted-foreground'>{item.progressLabel}</span>\n <span className='font-medium'>{item.progress}%</span>\n </div>\n <Progress value={item.progress} className='h-2' />\n </div>\n </CardContent>\n </Card>\n ))}\n </div>\n </div>\n </div>\n </section>\n )\n}\n\nexport default Statistic1"],"mappings":"AA+BgB,SAIE,KAJF;AA/BhB,SAAS,MAAM,aAAa,YAAY,iBAAiB;AACzD,SAAS,aAAa;AACtB,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAoBnB,SAAS,WAAW,EAAE,OAAO,OAAO,OAAO,YAAY,GAAoB;AAChF,SACE,oBAAC,aAAQ,WAAU,kBACjB,8BAAC,SAAI,WAAU,iDACb,+BAAC,SAAI,WAAU,wBACX;AAAA,cAAS,SAAS,gBAClB,qBAAC,SAAI,WAAU,mCACZ;AAAA,eACC;AAAA,QAAC;AAAA;AAAA,UACC,SAAQ;AAAA,UACR,WAAU;AAAA,UAEV;AAAA,gCAAC,aAAU;AAAA,YACV;AAAA;AAAA;AAAA,MACH;AAAA,MAED,SACC,oBAAC,QAAG,WAAU,8DACX,iBACH;AAAA,MAED,eACC,oBAAC,OAAE,WAAU,mEACV,uBACH;AAAA,OAEJ;AAAA,IAGF,oBAAC,SAAI,WAAU,4CACZ,gBAAM,IAAI,UACT;AAAA,MAAC;AAAA;AAAA,QAEC,WAAU;AAAA,QAEV;AAAA,+BAAC,cAAW,WAAU,QACpB;AAAA,iCAAC,SAAI,WAAU,oCACb;AAAA,mCAAC,SAAI,WAAU,UACb;AAAA,oCAAC,aAAU,WAAU,0DAClB,eAAK,OACR;AAAA,gBACA,oBAAC,SAAI,WAAU,QACb,8BAAC,SAAI,WAAU,sBAAsB,eAAK,OAAM,GAClD;AAAA,iBACF;AAAA,cACA,oBAAC,SAAI,WAAU,2BACb,8BAAC,KAAK,MAAL,EAAU,WAAU,gCAA+B,GACtD;AAAA,eACF;AAAA,YACA,oBAAC,OAAE,WAAU,sCAAsC,eAAK,aAAY;AAAA,aACtE;AAAA,UACA,oBAAC,eAAY,WAAU,aACrB,+BAAC,SAAI,WAAU,uBACb;AAAA,iCAAC,SAAI,WAAU,6CACb;AAAA,kCAAC,UAAK,WAAU,yBAAyB,eAAK,eAAc;AAAA,cAC5D,qBAAC,UAAK,WAAU,eAAe;AAAA,qBAAK;AAAA,gBAAS;AAAA,iBAAC;AAAA,eAChD;AAAA,YACA,oBAAC,YAAS,OAAO,KAAK,UAAU,WAAU,OAAM;AAAA,aAClD,GACF;AAAA;AAAA;AAAA,MA3BK,KAAK;AAAA,IA4BZ,CACD,GACH;AAAA,KACF,GACF,GACF;AAEJ;AAEA,IAAO,sBAAQ;","names":[]}
@@ -0,0 +1,29 @@
1
+ export interface TestimonialItem {
2
+ id: string;
3
+ name: string;
4
+ content: string;
5
+ role?: string;
6
+ avatar?: string;
7
+ rating?: number;
8
+ }
9
+ export interface TestimonialCarouselLabels {
10
+ previous: string;
11
+ next: string;
12
+ slide: string;
13
+ }
14
+ interface TestimonialSectionBaseProps {
15
+ items: TestimonialItem[];
16
+ title?: string;
17
+ description?: string;
18
+ className?: string;
19
+ }
20
+ export type TestimonialSectionProps = TestimonialSectionBaseProps & ({
21
+ presentation: 'carousel';
22
+ carouselLabels: TestimonialCarouselLabels;
23
+ } | {
24
+ presentation: 'bento';
25
+ carouselLabels?: never;
26
+ });
27
+ export declare function TestimonialSection(props: TestimonialSectionProps): import("react").JSX.Element | null;
28
+ export default TestimonialSection;
29
+ //# sourceMappingURL=testimonial-section.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testimonial-section.d.ts","sourceRoot":"","sources":["../../../../src/blocks/marketing/testimonials/testimonial-section.tsx"],"names":[],"mappings":"AAgBA,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd;AAED,UAAU,2BAA2B;IACnC,KAAK,EAAE,eAAe,EAAE,CAAA;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,MAAM,uBAAuB,GAAG,2BAA2B,GAC/D,CACI;IACE,YAAY,EAAE,UAAU,CAAA;IACxB,cAAc,EAAE,yBAAyB,CAAA;CAC1C,GACD;IACE,YAAY,EAAE,OAAO,CAAA;IACrB,cAAc,CAAC,EAAE,KAAK,CAAA;CACvB,CACJ,CAAA;AAiMH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,sCAQhE;AAED,eAAe,kBAAkB,CAAA"}