@fayz-ai/storefront 0.9.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (368) hide show
  1. package/README.md +3 -3
  2. package/dist/app/createStorefrontApp.d.ts +65 -0
  3. package/dist/app/createStorefrontApp.d.ts.map +1 -0
  4. package/dist/{define.d.ts → app/define.d.ts} +3 -3
  5. package/dist/app/define.d.ts.map +1 -0
  6. package/dist/app/hydration.d.ts +37 -0
  7. package/dist/app/hydration.d.ts.map +1 -0
  8. package/dist/app/prerender.d.ts +57 -0
  9. package/dist/app/prerender.d.ts.map +1 -0
  10. package/dist/{router.d.ts → app/router.d.ts} +140 -113
  11. package/dist/app/router.d.ts.map +1 -0
  12. package/dist/{scaffold.d.ts → app/scaffold.d.ts} +2 -2
  13. package/dist/app/scaffold.d.ts.map +1 -0
  14. package/dist/app/serving.d.ts +70 -0
  15. package/dist/app/serving.d.ts.map +1 -0
  16. package/dist/app/static-render.d.ts +46 -0
  17. package/dist/app/static-render.d.ts.map +1 -0
  18. package/dist/blocks/block-at-path.d.ts +59 -0
  19. package/dist/blocks/block-at-path.d.ts.map +1 -0
  20. package/dist/blocks/page-blocks.d.ts +163 -0
  21. package/dist/blocks/page-blocks.d.ts.map +1 -0
  22. package/dist/blocks/page-data.d.ts +105 -0
  23. package/dist/blocks/page-data.d.ts.map +1 -0
  24. package/dist/{blocks.d.ts → blocks/registry.d.ts} +1 -1
  25. package/dist/blocks/registry.d.ts.map +1 -0
  26. package/dist/{sections.d.ts → blocks/sections.d.ts} +40 -2
  27. package/dist/blocks/sections.d.ts.map +1 -0
  28. package/dist/chunk-6B7H3IZ6.js +10232 -0
  29. package/dist/chunk-6B7H3IZ6.js.map +1 -0
  30. package/dist/chunk-6IXTENLB.js +162 -0
  31. package/dist/chunk-6IXTENLB.js.map +1 -0
  32. package/dist/components/PaymentTerms.d.ts +34 -0
  33. package/dist/components/PaymentTerms.d.ts.map +1 -0
  34. package/dist/components/SmoothImage.d.ts +1 -1
  35. package/dist/components/SmoothImage.d.ts.map +1 -1
  36. package/dist/components/account/CustomerAccountShell.d.ts.map +1 -0
  37. package/dist/components/account/SignInModal.d.ts.map +1 -0
  38. package/dist/components/cart/CartDrawer.d.ts.map +1 -0
  39. package/dist/components/cart/QuantityInput.d.ts.map +1 -0
  40. package/dist/components/checkout/DeliveryEstimator.d.ts.map +1 -0
  41. package/dist/components/collection/CategoryShowcase.d.ts +44 -0
  42. package/dist/components/collection/CategoryShowcase.d.ts.map +1 -0
  43. package/dist/components/collection/FiltersPanel.d.ts +19 -0
  44. package/dist/components/collection/FiltersPanel.d.ts.map +1 -0
  45. package/dist/components/collection/ProductGrid.d.ts.map +1 -0
  46. package/dist/components/layout/PageBodyBlocks.d.ts +40 -0
  47. package/dist/components/layout/PageBodyBlocks.d.ts.map +1 -0
  48. package/dist/components/layout/SearchOverlay.d.ts +13 -0
  49. package/dist/components/layout/SearchOverlay.d.ts.map +1 -0
  50. package/dist/components/layout/StorefrontErrorBoundary.d.ts.map +1 -0
  51. package/dist/components/layout/StorefrontFooter.d.ts.map +1 -0
  52. package/dist/components/layout/StorefrontHeader.d.ts.map +1 -0
  53. package/dist/components/layout/Toaster.d.ts.map +1 -0
  54. package/dist/components/marketing/CollectionSections.d.ts +463 -0
  55. package/dist/components/marketing/CollectionSections.d.ts.map +1 -0
  56. package/dist/components/marketing/ConversionSections.d.ts +221 -0
  57. package/dist/components/marketing/ConversionSections.d.ts.map +1 -0
  58. package/dist/components/marketing/EditorialSections.d.ts +248 -0
  59. package/dist/components/marketing/EditorialSections.d.ts.map +1 -0
  60. package/dist/components/marketing/EntityList.d.ts +97 -0
  61. package/dist/components/marketing/EntityList.d.ts.map +1 -0
  62. package/dist/components/marketing/FormBlock.d.ts +167 -0
  63. package/dist/components/marketing/FormBlock.d.ts.map +1 -0
  64. package/dist/components/marketing/HeroSection.d.ts +125 -0
  65. package/dist/components/marketing/HeroSection.d.ts.map +1 -0
  66. package/dist/components/marketing/MediaCarousel.d.ts +135 -0
  67. package/dist/components/marketing/MediaCarousel.d.ts.map +1 -0
  68. package/dist/components/marketing/MiscSections.d.ts +252 -0
  69. package/dist/components/marketing/MiscSections.d.ts.map +1 -0
  70. package/dist/components/order/OrderTrackingTimeline.d.ts.map +1 -0
  71. package/dist/components/product/ProductCard.d.ts +14 -0
  72. package/dist/components/product/ProductCard.d.ts.map +1 -0
  73. package/dist/components/product/ProductEnquiryForm.d.ts.map +1 -0
  74. package/dist/components/product/ProductGallery.d.ts +36 -0
  75. package/dist/components/product/ProductGallery.d.ts.map +1 -0
  76. package/dist/components/{ProductOptionSelector.d.ts → product/ProductOptionSelector.d.ts} +1 -1
  77. package/dist/components/product/ProductOptionSelector.d.ts.map +1 -0
  78. package/dist/components/product/ProductRail.d.ts +93 -0
  79. package/dist/components/product/ProductRail.d.ts.map +1 -0
  80. package/dist/components/product/ProductReviews.d.ts +39 -0
  81. package/dist/components/product/ProductReviews.d.ts.map +1 -0
  82. package/dist/components/product/ProductSlider.d.ts +169 -0
  83. package/dist/components/product/ProductSlider.d.ts.map +1 -0
  84. package/dist/components/product/ProductSpecs.d.ts.map +1 -0
  85. package/dist/components/product/RelatedProducts.d.ts.map +1 -0
  86. package/dist/{auth.d.ts → data/auth.d.ts} +9 -0
  87. package/dist/data/auth.d.ts.map +1 -0
  88. package/dist/data/facets.d.ts +39 -0
  89. package/dist/data/facets.d.ts.map +1 -0
  90. package/dist/data/loaders.d.ts +56 -0
  91. package/dist/data/loaders.d.ts.map +1 -0
  92. package/dist/data/order-status.d.ts.map +1 -0
  93. package/dist/data/product-options.d.ts +36 -0
  94. package/dist/data/product-options.d.ts.map +1 -0
  95. package/dist/diagnostics/seo-audit.d.ts +54 -0
  96. package/dist/diagnostics/seo-audit.d.ts.map +1 -0
  97. package/dist/diagnostics/seo-audit.js +3 -0
  98. package/dist/diagnostics/seo-audit.js.map +1 -0
  99. package/dist/document/change.d.ts +100 -0
  100. package/dist/document/change.d.ts.map +1 -0
  101. package/dist/{config.d.ts → document/config.d.ts} +126 -7
  102. package/dist/document/config.d.ts.map +1 -0
  103. package/dist/document/describe.d.ts +135 -0
  104. package/dist/document/describe.d.ts.map +1 -0
  105. package/dist/document/overlay.d.ts +58 -0
  106. package/dist/document/overlay.d.ts.map +1 -0
  107. package/dist/{presets.d.ts → document/presets.d.ts} +2 -2
  108. package/dist/document/presets.d.ts.map +1 -0
  109. package/dist/document/render.d.ts +171 -0
  110. package/dist/document/render.d.ts.map +1 -0
  111. package/dist/document/round-trip.d.ts +46 -0
  112. package/dist/document/round-trip.d.ts.map +1 -0
  113. package/dist/document/sections.d.ts +194 -0
  114. package/dist/document/sections.d.ts.map +1 -0
  115. package/dist/document/upgrade.d.ts +112 -0
  116. package/dist/document/upgrade.d.ts.map +1 -0
  117. package/dist/document/validate.d.ts +24 -0
  118. package/dist/document/validate.d.ts.map +1 -0
  119. package/dist/{component-contracts.d.ts → extend/component-contracts.d.ts} +74 -22
  120. package/dist/extend/component-contracts.d.ts.map +1 -0
  121. package/dist/extend/component-override.d.ts +38 -0
  122. package/dist/extend/component-override.d.ts.map +1 -0
  123. package/dist/extend/component-selectors.d.ts.map +1 -0
  124. package/dist/extend/editor-bridge.d.ts +59 -0
  125. package/dist/extend/editor-bridge.d.ts.map +1 -0
  126. package/dist/extend/extension-points.d.ts +103 -0
  127. package/dist/extend/extension-points.d.ts.map +1 -0
  128. package/dist/extend/slots.d.ts +216 -0
  129. package/dist/extend/slots.d.ts.map +1 -0
  130. package/dist/hooks/index.d.ts +25 -6
  131. package/dist/hooks/index.d.ts.map +1 -1
  132. package/dist/hooks/use-address.d.ts +26 -0
  133. package/dist/hooks/use-address.d.ts.map +1 -0
  134. package/dist/hooks/use-cart.d.ts +3 -0
  135. package/dist/hooks/use-cart.d.ts.map +1 -0
  136. package/dist/hooks/use-catalog.d.ts +24 -0
  137. package/dist/hooks/use-catalog.d.ts.map +1 -0
  138. package/dist/hooks/use-categories.d.ts +19 -0
  139. package/dist/hooks/use-categories.d.ts.map +1 -0
  140. package/dist/hooks/use-checkout.d.ts +41 -0
  141. package/dist/hooks/use-checkout.d.ts.map +1 -0
  142. package/dist/hooks/use-discount-validator.d.ts +20 -0
  143. package/dist/hooks/use-discount-validator.d.ts.map +1 -0
  144. package/dist/hooks/use-enquiry.d.ts +7 -0
  145. package/dist/hooks/use-enquiry.d.ts.map +1 -0
  146. package/dist/hooks/{useMyOrders.d.ts → use-my-orders.d.ts} +1 -1
  147. package/dist/hooks/use-my-orders.d.ts.map +1 -0
  148. package/dist/hooks/use-order.d.ts +17 -0
  149. package/dist/hooks/use-order.d.ts.map +1 -0
  150. package/dist/hooks/use-payment-methods.d.ts +19 -0
  151. package/dist/hooks/use-payment-methods.d.ts.map +1 -0
  152. package/dist/hooks/use-policies.d.ts +25 -0
  153. package/dist/hooks/use-policies.d.ts.map +1 -0
  154. package/dist/hooks/use-product.d.ts +15 -0
  155. package/dist/hooks/use-product.d.ts.map +1 -0
  156. package/dist/hooks/{useProducts.d.ts → use-products.d.ts} +1 -1
  157. package/dist/hooks/use-products.d.ts.map +1 -0
  158. package/dist/hooks/use-region.d.ts +15 -0
  159. package/dist/hooks/use-region.d.ts.map +1 -0
  160. package/dist/hooks/use-shipping.d.ts +29 -0
  161. package/dist/hooks/use-shipping.d.ts.map +1 -0
  162. package/dist/hooks/use-storefront-actions.d.ts +12 -0
  163. package/dist/hooks/use-storefront-actions.d.ts.map +1 -0
  164. package/dist/hooks/use-storefront-head.d.ts +19 -0
  165. package/dist/hooks/use-storefront-head.d.ts.map +1 -0
  166. package/dist/hooks/use-storefront.d.ts +3 -0
  167. package/dist/hooks/use-storefront.d.ts.map +1 -0
  168. package/dist/index.d.ts +123 -54
  169. package/dist/index.d.ts.map +1 -1
  170. package/dist/index.js +1311 -5012
  171. package/dist/index.js.map +1 -1
  172. package/dist/lib/format.d.ts.map +1 -0
  173. package/dist/lib/motion.d.ts.map +1 -0
  174. package/dist/lib/seo.d.ts +26 -0
  175. package/dist/lib/seo.d.ts.map +1 -0
  176. package/dist/{testids.d.ts → lib/testids.d.ts} +21 -0
  177. package/dist/lib/testids.d.ts.map +1 -0
  178. package/dist/{theme.d.ts → lib/theme.d.ts} +41 -3
  179. package/dist/lib/theme.d.ts.map +1 -0
  180. package/dist/render.d.ts +5 -0
  181. package/dist/render.d.ts.map +1 -0
  182. package/dist/render.js +359 -0
  183. package/dist/render.js.map +1 -0
  184. package/dist/stores/cart.store.d.ts +6 -2
  185. package/dist/stores/cart.store.d.ts.map +1 -1
  186. package/dist/stores/catalog.store.d.ts +11 -0
  187. package/dist/stores/catalog.store.d.ts.map +1 -1
  188. package/dist/views/CatalogPage.d.ts.map +1 -0
  189. package/dist/views/CheckoutPage.d.ts.map +1 -0
  190. package/dist/views/ContentPage.d.ts +11 -0
  191. package/dist/views/ContentPage.d.ts.map +1 -0
  192. package/dist/views/HomePage.d.ts +9 -0
  193. package/dist/views/HomePage.d.ts.map +1 -0
  194. package/dist/views/MyPurchasesPage.d.ts.map +1 -0
  195. package/dist/views/NotFoundPage.d.ts.map +1 -0
  196. package/dist/{pages → views}/OrderConfirmationPage.d.ts.map +1 -1
  197. package/dist/{pages → views}/PolicyPage.d.ts.map +1 -1
  198. package/dist/views/ProductDetailPage.d.ts.map +1 -0
  199. package/dist/views/StorefrontPage.d.ts +35 -0
  200. package/dist/views/StorefrontPage.d.ts.map +1 -0
  201. package/dist/workflows/checkout.d.ts +1 -1
  202. package/dist/workflows/checkout.d.ts.map +1 -1
  203. package/package.json +21 -14
  204. package/dist/auth.d.ts.map +0 -1
  205. package/dist/blocks.d.ts.map +0 -1
  206. package/dist/component-contracts.d.ts.map +0 -1
  207. package/dist/component-selectors.d.ts.map +0 -1
  208. package/dist/components/CartDrawer.d.ts.map +0 -1
  209. package/dist/components/CustomerAccountShell.d.ts.map +0 -1
  210. package/dist/components/DeliveryEstimator.d.ts.map +0 -1
  211. package/dist/components/FiltersPanel.d.ts +0 -3
  212. package/dist/components/FiltersPanel.d.ts.map +0 -1
  213. package/dist/components/OrderTrackingTimeline.d.ts.map +0 -1
  214. package/dist/components/ProductCard.d.ts +0 -4
  215. package/dist/components/ProductCard.d.ts.map +0 -1
  216. package/dist/components/ProductEnquiryForm.d.ts.map +0 -1
  217. package/dist/components/ProductGallery.d.ts +0 -22
  218. package/dist/components/ProductGallery.d.ts.map +0 -1
  219. package/dist/components/ProductGrid.d.ts.map +0 -1
  220. package/dist/components/ProductOptionSelector.d.ts.map +0 -1
  221. package/dist/components/ProductSpecs.d.ts.map +0 -1
  222. package/dist/components/QuantityInput.d.ts.map +0 -1
  223. package/dist/components/RelatedProducts.d.ts.map +0 -1
  224. package/dist/components/SignInModal.d.ts.map +0 -1
  225. package/dist/components/StorefrontErrorBoundary.d.ts.map +0 -1
  226. package/dist/components/StorefrontFooter.d.ts.map +0 -1
  227. package/dist/components/StorefrontHeader.d.ts.map +0 -1
  228. package/dist/components/Toaster.d.ts.map +0 -1
  229. package/dist/components/sections/CategoryShowcase.d.ts +0 -6
  230. package/dist/components/sections/CategoryShowcase.d.ts.map +0 -1
  231. package/dist/components/sections/HeroSection.d.ts +0 -9
  232. package/dist/components/sections/HeroSection.d.ts.map +0 -1
  233. package/dist/components/sections/MediaCarousel.d.ts +0 -11
  234. package/dist/components/sections/MediaCarousel.d.ts.map +0 -1
  235. package/dist/components/sections/MiscSections.d.ts +0 -33
  236. package/dist/components/sections/MiscSections.d.ts.map +0 -1
  237. package/dist/components/sections/ProductRail.d.ts +0 -9
  238. package/dist/components/sections/ProductRail.d.ts.map +0 -1
  239. package/dist/components/sections/ProductSlider.d.ts +0 -15
  240. package/dist/components/sections/ProductSlider.d.ts.map +0 -1
  241. package/dist/config.d.ts.map +0 -1
  242. package/dist/createStorefrontApp.d.ts +0 -28
  243. package/dist/createStorefrontApp.d.ts.map +0 -1
  244. package/dist/define.d.ts.map +0 -1
  245. package/dist/format.d.ts.map +0 -1
  246. package/dist/hooks/useCategories.d.ts +0 -6
  247. package/dist/hooks/useCategories.d.ts.map +0 -1
  248. package/dist/hooks/useDiscountValidator.d.ts +0 -14
  249. package/dist/hooks/useDiscountValidator.d.ts.map +0 -1
  250. package/dist/hooks/useMyOrders.d.ts.map +0 -1
  251. package/dist/hooks/useProduct.d.ts +0 -7
  252. package/dist/hooks/useProduct.d.ts.map +0 -1
  253. package/dist/hooks/useProducts.d.ts.map +0 -1
  254. package/dist/hooks/useStorefront.d.ts +0 -35
  255. package/dist/hooks/useStorefront.d.ts.map +0 -1
  256. package/dist/hooks/useStorefrontHead.d.ts +0 -11
  257. package/dist/hooks/useStorefrontHead.d.ts.map +0 -1
  258. package/dist/motion.d.ts.map +0 -1
  259. package/dist/order-status.d.ts.map +0 -1
  260. package/dist/pages/CatalogPage.d.ts.map +0 -1
  261. package/dist/pages/CheckoutPage.d.ts.map +0 -1
  262. package/dist/pages/HomePage.d.ts +0 -9
  263. package/dist/pages/HomePage.d.ts.map +0 -1
  264. package/dist/pages/MyPurchasesPage.d.ts.map +0 -1
  265. package/dist/pages/NotFoundPage.d.ts.map +0 -1
  266. package/dist/pages/ProductDetailPage.d.ts.map +0 -1
  267. package/dist/presets.d.ts.map +0 -1
  268. package/dist/product-options.d.ts +0 -12
  269. package/dist/product-options.d.ts.map +0 -1
  270. package/dist/router.d.ts.map +0 -1
  271. package/dist/scaffold.d.ts.map +0 -1
  272. package/dist/sections.d.ts.map +0 -1
  273. package/dist/testids.d.ts.map +0 -1
  274. package/dist/theme.d.ts.map +0 -1
  275. package/src/auth.ts +0 -227
  276. package/src/blocks.tsx +0 -51
  277. package/src/catalog.ts +0 -3
  278. package/src/component-contracts.ts +0 -154
  279. package/src/component-selectors.ts +0 -31
  280. package/src/components/CartDrawer.tsx +0 -279
  281. package/src/components/CustomerAccountShell.tsx +0 -102
  282. package/src/components/DeliveryEstimator.tsx +0 -157
  283. package/src/components/FiltersPanel.tsx +0 -109
  284. package/src/components/OrderTrackingTimeline.tsx +0 -135
  285. package/src/components/Price.tsx +0 -32
  286. package/src/components/ProductCard.tsx +0 -120
  287. package/src/components/ProductEnquiryForm.tsx +0 -175
  288. package/src/components/ProductGallery.tsx +0 -174
  289. package/src/components/ProductGrid.tsx +0 -43
  290. package/src/components/ProductOptionSelector.tsx +0 -50
  291. package/src/components/ProductSpecs.tsx +0 -75
  292. package/src/components/QuantityInput.tsx +0 -52
  293. package/src/components/RelatedProducts.tsx +0 -40
  294. package/src/components/SignInModal.tsx +0 -120
  295. package/src/components/SmoothImage.tsx +0 -59
  296. package/src/components/StorefrontErrorBoundary.tsx +0 -51
  297. package/src/components/StorefrontFooter.tsx +0 -110
  298. package/src/components/StorefrontHeader.tsx +0 -477
  299. package/src/components/Toaster.tsx +0 -60
  300. package/src/components/sections/CategoryShowcase.tsx +0 -80
  301. package/src/components/sections/HeroSection.tsx +0 -193
  302. package/src/components/sections/MediaCarousel.tsx +0 -141
  303. package/src/components/sections/MiscSections.tsx +0 -158
  304. package/src/components/sections/ProductRail.tsx +0 -81
  305. package/src/components/sections/ProductSlider.tsx +0 -119
  306. package/src/config.ts +0 -229
  307. package/src/createStorefrontApp.tsx +0 -247
  308. package/src/define.ts +0 -34
  309. package/src/format.ts +0 -7
  310. package/src/hooks/index.ts +0 -6
  311. package/src/hooks/useCategories.ts +0 -26
  312. package/src/hooks/useDiscountValidator.ts +0 -43
  313. package/src/hooks/useMyOrders.ts +0 -41
  314. package/src/hooks/useProduct.ts +0 -36
  315. package/src/hooks/useProducts.ts +0 -39
  316. package/src/hooks/useStorefront.ts +0 -58
  317. package/src/hooks/useStorefrontHead.ts +0 -25
  318. package/src/index.ts +0 -202
  319. package/src/motion.tsx +0 -94
  320. package/src/order-status.ts +0 -33
  321. package/src/pages/CatalogPage.tsx +0 -118
  322. package/src/pages/CheckoutPage.tsx +0 -689
  323. package/src/pages/HomePage.tsx +0 -16
  324. package/src/pages/MyPurchasesPage.tsx +0 -311
  325. package/src/pages/NotFoundPage.tsx +0 -25
  326. package/src/pages/OrderConfirmationPage.tsx +0 -190
  327. package/src/pages/PolicyPage.tsx +0 -47
  328. package/src/pages/ProductDetailPage.tsx +0 -264
  329. package/src/presets.ts +0 -324
  330. package/src/product-options.ts +0 -63
  331. package/src/router.ts +0 -49
  332. package/src/scaffold.tsx +0 -115
  333. package/src/sections.ts +0 -116
  334. package/src/shop.ts +0 -4
  335. package/src/stores/cart.store.ts +0 -185
  336. package/src/stores/catalog.store.ts +0 -39
  337. package/src/stores/delivery.store.ts +0 -152
  338. package/src/stores/session.store.ts +0 -28
  339. package/src/stores/toast.store.ts +0 -43
  340. package/src/testids.ts +0 -136
  341. package/src/theme.ts +0 -194
  342. package/src/ui.ts +0 -5
  343. package/src/workflows/checkout.ts +0 -119
  344. /package/dist/components/{CustomerAccountShell.d.ts → account/CustomerAccountShell.d.ts} +0 -0
  345. /package/dist/components/{SignInModal.d.ts → account/SignInModal.d.ts} +0 -0
  346. /package/dist/components/{CartDrawer.d.ts → cart/CartDrawer.d.ts} +0 -0
  347. /package/dist/components/{QuantityInput.d.ts → cart/QuantityInput.d.ts} +0 -0
  348. /package/dist/components/{DeliveryEstimator.d.ts → checkout/DeliveryEstimator.d.ts} +0 -0
  349. /package/dist/components/{ProductGrid.d.ts → collection/ProductGrid.d.ts} +0 -0
  350. /package/dist/components/{StorefrontErrorBoundary.d.ts → layout/StorefrontErrorBoundary.d.ts} +0 -0
  351. /package/dist/components/{StorefrontFooter.d.ts → layout/StorefrontFooter.d.ts} +0 -0
  352. /package/dist/components/{StorefrontHeader.d.ts → layout/StorefrontHeader.d.ts} +0 -0
  353. /package/dist/components/{Toaster.d.ts → layout/Toaster.d.ts} +0 -0
  354. /package/dist/components/{OrderTrackingTimeline.d.ts → order/OrderTrackingTimeline.d.ts} +0 -0
  355. /package/dist/components/{ProductEnquiryForm.d.ts → product/ProductEnquiryForm.d.ts} +0 -0
  356. /package/dist/components/{ProductSpecs.d.ts → product/ProductSpecs.d.ts} +0 -0
  357. /package/dist/components/{RelatedProducts.d.ts → product/RelatedProducts.d.ts} +0 -0
  358. /package/dist/{order-status.d.ts → data/order-status.d.ts} +0 -0
  359. /package/dist/{component-selectors.d.ts → extend/component-selectors.d.ts} +0 -0
  360. /package/dist/{format.d.ts → lib/format.d.ts} +0 -0
  361. /package/dist/{motion.d.ts → lib/motion.d.ts} +0 -0
  362. /package/dist/{pages → views}/CatalogPage.d.ts +0 -0
  363. /package/dist/{pages → views}/CheckoutPage.d.ts +0 -0
  364. /package/dist/{pages → views}/MyPurchasesPage.d.ts +0 -0
  365. /package/dist/{pages → views}/NotFoundPage.d.ts +0 -0
  366. /package/dist/{pages → views}/OrderConfirmationPage.d.ts +0 -0
  367. /package/dist/{pages → views}/PolicyPage.d.ts +0 -0
  368. /package/dist/{pages → views}/ProductDetailPage.d.ts +0 -0
@@ -0,0 +1,135 @@
1
+ import React from 'react';
2
+ import type { MediaCarouselItem } from '../../blocks/sections';
3
+ export interface MediaCarouselProps {
4
+ items: MediaCarouselItem[];
5
+ height?: 'medium' | 'tall' | 'screen';
6
+ autoplayMs?: number;
7
+ overlay?: 'dark' | 'soft' | 'none';
8
+ className?: string;
9
+ }
10
+ export declare function MediaCarousel({ items, height, autoplayMs, overlay, className, }: MediaCarouselProps): React.JSX.Element | null;
11
+ export declare const mediaCarouselBlockMeta: {
12
+ label: string;
13
+ description: string;
14
+ settings: ({
15
+ id: string;
16
+ type: "list";
17
+ label: string;
18
+ help: string;
19
+ required: true;
20
+ of: ({
21
+ id: string;
22
+ type: "image";
23
+ label: string;
24
+ help: string;
25
+ required: true;
26
+ default?: undefined;
27
+ options?: undefined;
28
+ } | {
29
+ id: string;
30
+ type: "text";
31
+ label: string;
32
+ help: string;
33
+ required?: undefined;
34
+ default?: undefined;
35
+ options?: undefined;
36
+ } | {
37
+ id: string;
38
+ type: "text";
39
+ label: string;
40
+ help: string;
41
+ required: true;
42
+ default?: undefined;
43
+ options?: undefined;
44
+ } | {
45
+ id: string;
46
+ type: "text";
47
+ label: string;
48
+ help?: undefined;
49
+ required?: undefined;
50
+ default?: undefined;
51
+ options?: undefined;
52
+ } | {
53
+ id: string;
54
+ type: "url";
55
+ label: string;
56
+ help: string;
57
+ required?: undefined;
58
+ default?: undefined;
59
+ options?: undefined;
60
+ } | {
61
+ id: string;
62
+ type: "select";
63
+ label: string;
64
+ help: string;
65
+ default: string;
66
+ options: {
67
+ value: string;
68
+ label: string;
69
+ }[];
70
+ required?: undefined;
71
+ })[];
72
+ default?: undefined;
73
+ options?: undefined;
74
+ min?: undefined;
75
+ max?: undefined;
76
+ } | {
77
+ id: string;
78
+ type: "select";
79
+ label: string;
80
+ default: string;
81
+ options: {
82
+ value: string;
83
+ label: string;
84
+ }[];
85
+ help?: undefined;
86
+ required?: undefined;
87
+ of?: undefined;
88
+ min?: undefined;
89
+ max?: undefined;
90
+ } | {
91
+ id: string;
92
+ type: "number";
93
+ label: string;
94
+ help: string;
95
+ default: number;
96
+ min: number;
97
+ max: number;
98
+ required?: undefined;
99
+ of?: undefined;
100
+ options?: undefined;
101
+ } | {
102
+ id: string;
103
+ type: "select";
104
+ label: string;
105
+ help: string;
106
+ default: string;
107
+ options: {
108
+ value: string;
109
+ label: string;
110
+ }[];
111
+ required?: undefined;
112
+ of?: undefined;
113
+ min?: undefined;
114
+ max?: undefined;
115
+ })[];
116
+ presets: {
117
+ name: string;
118
+ props: {
119
+ height: string;
120
+ overlay: string;
121
+ autoplayMs: number;
122
+ items: {
123
+ eyebrow: string;
124
+ title: string;
125
+ subtitle: string;
126
+ cta: string;
127
+ href: string;
128
+ align: string;
129
+ image: string;
130
+ }[];
131
+ };
132
+ }[];
133
+ enabledOn: string[];
134
+ };
135
+ //# sourceMappingURL=MediaCarousel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaCarousel.d.ts","sourceRoot":"","sources":["../../../src/components/marketing/MediaCarousel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAA;AAM1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAM9D,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,iBAAiB,EAAE,CAAA;IAC1B,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAA;IACrC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;IAClC,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAcD,wBAAgB,aAAa,CAAC,EAG5B,KAAU,EACV,MAAe,EACf,UAAiB,EACjB,OAAgB,EAChB,SAAc,GACf,EAAE,kBAAkB,4BA0GpB;AAED,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkGU,CAAA"}
@@ -0,0 +1,252 @@
1
+ import React from 'react';
2
+ export interface BenefitItem {
3
+ /** Lucide icon name in PascalCase. Ignored when `image` is set. */
4
+ icon?: string;
5
+ /** Drawn/brand artwork instead of an icon glyph — the reason compactor forked
6
+ * this block: their four benefit marks are illustrations, and swapping them
7
+ * for outline glyphs would have quietly changed the brand. */
8
+ image?: string;
9
+ title: string;
10
+ text?: string;
11
+ }
12
+ export declare function BenefitsRow({ items, layout, }: {
13
+ items?: BenefitItem[];
14
+ layout?: 'grid' | 'strip';
15
+ }): React.JSX.Element | null;
16
+ export declare const benefitsBlockMeta: {
17
+ label: string;
18
+ description: string;
19
+ settings: ({
20
+ id: string;
21
+ type: "list";
22
+ label: string;
23
+ help: string;
24
+ required: true;
25
+ of: ({
26
+ id: string;
27
+ type: "text";
28
+ label: string;
29
+ help: string;
30
+ required?: undefined;
31
+ } | {
32
+ id: string;
33
+ type: "image";
34
+ label: string;
35
+ help: string;
36
+ required?: undefined;
37
+ } | {
38
+ id: string;
39
+ type: "text";
40
+ label: string;
41
+ help: string;
42
+ required: true;
43
+ })[];
44
+ default?: undefined;
45
+ options?: undefined;
46
+ } | {
47
+ id: string;
48
+ type: "select";
49
+ label: string;
50
+ default: string;
51
+ help: string;
52
+ options: {
53
+ value: string;
54
+ label: string;
55
+ }[];
56
+ required?: undefined;
57
+ of?: undefined;
58
+ })[];
59
+ presets: {
60
+ name: string;
61
+ props: {
62
+ items: {
63
+ icon: string;
64
+ title: string;
65
+ text: string;
66
+ }[];
67
+ };
68
+ }[];
69
+ enabledOn: string[];
70
+ };
71
+ export declare function PromoBanner({ title, subtitle, eyebrow, cta, href, image, hue, }: {
72
+ title: string;
73
+ subtitle?: string;
74
+ eyebrow?: string;
75
+ cta?: string;
76
+ href?: string;
77
+ image?: string;
78
+ hue?: number;
79
+ }): React.JSX.Element;
80
+ export declare const bannerBlockMeta: {
81
+ label: string;
82
+ description: string;
83
+ settings: ({
84
+ id: string;
85
+ type: "text";
86
+ label: string;
87
+ help: string;
88
+ required?: undefined;
89
+ min?: undefined;
90
+ max?: undefined;
91
+ default?: undefined;
92
+ } | {
93
+ id: string;
94
+ type: "text";
95
+ label: string;
96
+ help: string;
97
+ required: true;
98
+ min?: undefined;
99
+ max?: undefined;
100
+ default?: undefined;
101
+ } | {
102
+ id: string;
103
+ type: "text";
104
+ label: string;
105
+ help?: undefined;
106
+ required?: undefined;
107
+ min?: undefined;
108
+ max?: undefined;
109
+ default?: undefined;
110
+ } | {
111
+ id: string;
112
+ type: "url";
113
+ label: string;
114
+ help: string;
115
+ required?: undefined;
116
+ min?: undefined;
117
+ max?: undefined;
118
+ default?: undefined;
119
+ } | {
120
+ id: string;
121
+ type: "image";
122
+ label: string;
123
+ help: string;
124
+ required?: undefined;
125
+ min?: undefined;
126
+ max?: undefined;
127
+ default?: undefined;
128
+ } | {
129
+ id: string;
130
+ type: "number";
131
+ label: string;
132
+ help: string;
133
+ min: number;
134
+ max: number;
135
+ default: number;
136
+ required?: undefined;
137
+ })[];
138
+ presets: {
139
+ name: string;
140
+ props: {
141
+ eyebrow: string;
142
+ title: string;
143
+ subtitle: string;
144
+ cta: string;
145
+ href: string;
146
+ hue: number;
147
+ };
148
+ }[];
149
+ enabledOn: string[];
150
+ };
151
+ export declare function ManifestoBlock({ title, text }: {
152
+ title?: string;
153
+ text: string;
154
+ }): React.JSX.Element;
155
+ export declare const manifestoBlockMeta: {
156
+ label: string;
157
+ description: string;
158
+ settings: ({
159
+ id: string;
160
+ type: "text";
161
+ label: string;
162
+ help: string;
163
+ required?: undefined;
164
+ } | {
165
+ id: string;
166
+ type: "richtext";
167
+ label: string;
168
+ help: string;
169
+ required: true;
170
+ })[];
171
+ presets: {
172
+ name: string;
173
+ props: {
174
+ title: string;
175
+ text: string;
176
+ };
177
+ }[];
178
+ enabledOn: string[];
179
+ };
180
+ export declare function Testimonials({ title, items, }: {
181
+ title?: string;
182
+ items?: Array<{
183
+ quote: string;
184
+ author: string;
185
+ }>;
186
+ }): React.JSX.Element | null;
187
+ export declare const testimonialsBlockMeta: {
188
+ label: string;
189
+ description: string;
190
+ settings: ({
191
+ id: string;
192
+ type: "text";
193
+ label: string;
194
+ help: string;
195
+ required?: undefined;
196
+ of?: undefined;
197
+ } | {
198
+ id: string;
199
+ type: "list";
200
+ label: string;
201
+ help: string;
202
+ required: true;
203
+ of: {
204
+ id: string;
205
+ type: "text";
206
+ label: string;
207
+ help: string;
208
+ required: true;
209
+ }[];
210
+ })[];
211
+ presets: {
212
+ name: string;
213
+ props: {
214
+ title: string;
215
+ items: {
216
+ quote: string;
217
+ author: string;
218
+ }[];
219
+ };
220
+ }[];
221
+ enabledOn: string[];
222
+ };
223
+ export declare function NewsletterBand({ title, subtitle }: {
224
+ title?: string;
225
+ subtitle?: string;
226
+ }): React.JSX.Element;
227
+ export declare const newsletterBlockMeta: {
228
+ label: string;
229
+ description: string;
230
+ settings: ({
231
+ id: string;
232
+ type: "text";
233
+ label: string;
234
+ help: string;
235
+ default: string;
236
+ } | {
237
+ id: string;
238
+ type: "text";
239
+ label: string;
240
+ help: string;
241
+ default?: undefined;
242
+ })[];
243
+ presets: {
244
+ name: string;
245
+ props: {
246
+ title: string;
247
+ subtitle: string;
248
+ };
249
+ }[];
250
+ enabledOn: string[];
251
+ };
252
+ //# sourceMappingURL=MiscSections.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MiscSections.d.ts","sourceRoot":"","sources":["../../../src/components/marketing/MiscSections.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAcvC,MAAM,WAAW,WAAW;IAC1B,mEAAmE;IACnE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;mEAE+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAKD,wBAAgB,WAAW,CAAC,EAC1B,KAAU,EACV,MAAe,GAChB,EAAE;IACD,KAAK,CAAC,EAAE,WAAW,EAAE,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAC1B,4BAiDA;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDe,CAAA;AAE7C,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,QAAQ,EACR,OAAO,EACP,GAAG,EACH,IAAI,EACJ,KAAK,EACL,GAAS,GACV,EAAE;IACD,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,qBA4BA;AAED,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyCiB,CAAA;AAE7C,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,qBAO/E;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;CAwBc,CAAA;AAE7C,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,KAAU,GACX,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACjD,4BA2BA;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsCW,CAAA;AAE7C,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,qBAyCxF;AAED,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;CA6Ba,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrderTrackingTimeline.d.ts","sourceRoot":"","sources":["../../../src/components/order/OrderTrackingTimeline.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAgFhD,wBAAgB,qBAAqB,CAAC,EAAE,KAAK,EAAE,OAAe,EAAE,EAAE;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,qBAoDpG"}
@@ -0,0 +1,14 @@
1
+ import React from 'react';
2
+ import type { ProductImage } from '@fayz-ai/shop/types';
3
+ import type { ProductCardImageOrder, ProductCardProps } from '../../extend/component-contracts';
4
+ /**
5
+ * The card's photo, per the declared rule (see {@link ProductCardImageOrder}).
6
+ *
7
+ * Exported and pure for the same reason `orderGalleryImages` is: this single
8
+ * choice is what a store used to replace the whole card for. `position` breaks
9
+ * ties by image id too, so a catalog with duplicate sort orders still renders
10
+ * the same photo on every load — the nondeterminism IS the bug.
11
+ */
12
+ export declare function pickProductCardImage(images: ProductImage[], order?: ProductCardImageOrder): ProductImage | undefined;
13
+ export declare function ProductCard({ product, config: providedConfig, actions: providedActions, imageOrder }: ProductCardProps): React.JSX.Element;
14
+ //# sourceMappingURL=ProductCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductCard.d.ts","sourceRoot":"","sources":["../../../src/components/product/ProductCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAUzB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AA8B/F;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,YAAY,EAAE,EACtB,KAAK,GAAE,qBAAiC,GACvC,YAAY,GAAG,SAAS,CAQ1B;AAED,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,eAAe,EAAE,UAAsB,EAAE,EAAE,gBAAgB,qBAgJlI"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductEnquiryForm.d.ts","sourceRoot":"","sources":["../../../src/components/product/ProductEnquiryForm.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAGvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAKlD,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;CACvB;AAYD,wBAAgB,kBAAkB,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,uBAAuB,qBAuJjF"}
@@ -0,0 +1,36 @@
1
+ import React from 'react';
2
+ import type { ProductImage } from '@fayz-ai/shop/types';
3
+ import type { ProductGalleryProps } from '../../extend/component-contracts';
4
+ /**
5
+ * Product gallery: one framed image, hover-to-zoom, and a thumbnail strip when
6
+ * the product has more than one photo.
7
+ *
8
+ * It replaces a bare <img> that rendered only the primary image. Three things
9
+ * were wrong with that:
10
+ *
11
+ * · the frame was a grid child with the default `stretch`, so it grew to the
12
+ * height of the (much taller) details column and left a slab of empty dark
13
+ * box under a square photo;
14
+ * · `plg_shop_product_images` has always been a collection with sort_order and
15
+ * is_primary, and every extra photo a merchant uploaded was invisible;
16
+ * · zooming is table stakes for anything sold by its looks — food especially.
17
+ *
18
+ * Zoom is pointer-driven: the transform origin follows the cursor, so the part
19
+ * under the pointer is the part magnified. Disabled on coarse pointers, where
20
+ * there is no hover and a stuck 2× would just be a broken image.
21
+ */
22
+ export declare function ProductGallery({ product, images, primaryImage, order }: ProductGalleryProps): React.JSX.Element;
23
+ /**
24
+ * Gallery ordering, per the declared rule (see ProductGalleryOrder).
25
+ *
26
+ * Exported and pure: this one function is what a store used to fork the whole
27
+ * gallery for — artorious cloned all 158 lines to flip it to sort_order
28
+ * descending. Nothing is ever dropped; only who leads changes.
29
+ *
30
+ * "Nothing is ever dropped" was not true: `primary` was consulted only when
31
+ * `images` was EMPTY, so a caller that computed a primary outside the list —
32
+ * the shot for a chosen variant, a hero image resolved elsewhere — handed it
33
+ * over and watched it vanish. It is now prepended when it isn't already there.
34
+ */
35
+ export declare function orderGalleryImages(images: ProductImage[], primary?: ProductImage, order?: NonNullable<ProductGalleryProps['order']>): ProductImage[];
36
+ //# sourceMappingURL=ProductGallery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductGallery.d.ts","sourceRoot":"","sources":["../../../src/components/product/ProductGallery.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAA;AAM3E;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,cAAc,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,KAAiB,EAAE,EAAE,mBAAmB,qBA2GvG;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,YAAY,EAAE,EACtB,OAAO,CAAC,EAAE,YAAY,EACtB,KAAK,GAAE,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAa,GAC3D,YAAY,EAAE,CAShB"}
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import type { ProductOptionGroup, ProductOptionSelection } from '../product-options';
2
+ import type { ProductOptionGroup, ProductOptionSelection } from '../../data/product-options';
3
3
  export interface ProductOptionSelectorProps {
4
4
  groups: ProductOptionGroup[];
5
5
  value: ProductOptionSelection;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductOptionSelector.d.ts","sourceRoot":"","sources":["../../../src/components/product/ProductOptionSelector.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AAG5F,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,kBAAkB,EAAE,CAAA;IAC5B,KAAK,EAAE,sBAAsB,CAAA;IAC7B,QAAQ,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAA;CAClD;AAED,wBAAgB,qBAAqB,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,0BAA0B,4BAuC5F"}
@@ -0,0 +1,93 @@
1
+ import React from 'react';
2
+ import type { BlockNode } from '@fayz-ai/core';
3
+ export declare function ProductRail({ title, subtitle, eyebrow, filter, limit, node, }: {
4
+ title: string;
5
+ subtitle?: string;
6
+ eyebrow?: string;
7
+ filter?: 'sale' | 'new' | 'all';
8
+ limit?: number;
9
+ /** The block node, when rendered from a tree — carries instance `data` overrides. */
10
+ node?: BlockNode;
11
+ }): React.JSX.Element | null;
12
+ export declare const productsBlockMeta: {
13
+ label: string;
14
+ description: string;
15
+ settings: ({
16
+ id: string;
17
+ type: "text";
18
+ label: string;
19
+ required: true;
20
+ help?: undefined;
21
+ options?: undefined;
22
+ default?: undefined;
23
+ min?: undefined;
24
+ max?: undefined;
25
+ } | {
26
+ id: string;
27
+ type: "text";
28
+ label: string;
29
+ help: string;
30
+ required?: undefined;
31
+ options?: undefined;
32
+ default?: undefined;
33
+ min?: undefined;
34
+ max?: undefined;
35
+ } | {
36
+ id: string;
37
+ type: "select";
38
+ label: string;
39
+ help: string;
40
+ options: {
41
+ value: string;
42
+ label: string;
43
+ }[];
44
+ default: string;
45
+ required?: undefined;
46
+ min?: undefined;
47
+ max?: undefined;
48
+ } | {
49
+ id: string;
50
+ type: "number";
51
+ label: string;
52
+ help: string;
53
+ min: number;
54
+ max: number;
55
+ default: number;
56
+ required?: undefined;
57
+ options?: undefined;
58
+ })[];
59
+ presets: ({
60
+ name: string;
61
+ props: {
62
+ eyebrow: string;
63
+ title: string;
64
+ subtitle: string;
65
+ filter: string;
66
+ limit: number;
67
+ };
68
+ } | {
69
+ name: string;
70
+ props: {
71
+ title: string;
72
+ subtitle: string;
73
+ filter: string;
74
+ limit: number;
75
+ eyebrow?: undefined;
76
+ };
77
+ })[];
78
+ enabledOn: string[];
79
+ data: {
80
+ products: {
81
+ loader: string;
82
+ params: {
83
+ filter: {
84
+ $prop: string;
85
+ };
86
+ limit: {
87
+ $prop: string;
88
+ };
89
+ };
90
+ };
91
+ };
92
+ };
93
+ //# sourceMappingURL=ProductRail.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductRail.d.ts","sourceRoot":"","sources":["../../../src/components/product/ProductRail.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EAAE,SAAS,EAAgB,MAAM,eAAe,CAAA;AAW5D,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,QAAQ,EACR,OAAO,EACP,MAAc,EACd,KAAS,EACT,IAAI,GACL,EAAE;IACD,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,KAAK,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,qFAAqF;IACrF,IAAI,CAAC,EAAE,SAAS,CAAA;CACjB,4BA4DA;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8De,CAAA"}
@@ -0,0 +1,39 @@
1
+ import React from 'react';
2
+ import type { Product } from '@fayz-ai/shop/types';
3
+ /**
4
+ * Product reviews.
5
+ *
6
+ * There is no reviews table in the shop schema yet, so this renders whatever
7
+ * the store supplies through `config.reviews` and nothing else. It deliberately
8
+ * does NOT invent ratings: a storefront that shows "4.8 ★ (127 avaliações)"
9
+ * with no reviews behind it is lying to the shopper, and a replatform inherits
10
+ * the merchant's reputation, it doesn't manufacture one.
11
+ *
12
+ * With no reviews for a product the block renders an honest empty state, which
13
+ * is also the seam a real reviews backend plugs into later.
14
+ */
15
+ export interface ProductReview {
16
+ id: string;
17
+ /** Product slug or SKU this review is about. */
18
+ product: string;
19
+ rating: number;
20
+ author: string;
21
+ /** ISO date. */
22
+ date?: string;
23
+ title?: string;
24
+ body: string;
25
+ /** Verified purchase — shown as a badge when true. */
26
+ verified?: boolean;
27
+ }
28
+ export interface StorefrontReviewsConfig {
29
+ /** Every review the store has, across products. */
30
+ items?: readonly ProductReview[];
31
+ /** Hide the section entirely (default true when `items` is set). */
32
+ enabled?: boolean;
33
+ /** Copy for the empty state. */
34
+ emptyText?: string;
35
+ }
36
+ export declare function ProductReviews({ product }: {
37
+ product: Product;
38
+ }): React.JSX.Element | null;
39
+ //# sourceMappingURL=ProductReviews.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductReviews.d.ts","sourceRoot":"","sources":["../../../src/components/product/ProductReviews.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGlD;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,gBAAgB;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,sDAAsD;IACtD,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,uBAAuB;IACtC,mDAAmD;IACnD,KAAK,CAAC,EAAE,SAAS,aAAa,EAAE,CAAA;IAChC,oEAAoE;IACpE,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AA6BD,wBAAgB,cAAc,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,4BAgF/D"}