@thorprovider/blocks 3.0.2 → 4.1.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 (234) hide show
  1. package/README.md +61 -21
  2. package/dist/blocks/designs/checkout-commerce-v1/block.d.ts +49 -0
  3. package/dist/blocks/designs/checkout-commerce-v1/block.d.ts.map +1 -0
  4. package/dist/blocks/designs/checkout-commerce-v1/block.js +2487 -0
  5. package/dist/blocks/designs/checkout-commerce-v1/block.js.map +1 -0
  6. package/dist/blocks/designs/checkout-commerce-v1/block.mjs +2467 -0
  7. package/dist/blocks/designs/checkout-commerce-v1/block.mjs.map +1 -0
  8. package/dist/blocks/designs/checkout-commerce-v1/data-context.d.ts +8 -0
  9. package/dist/blocks/designs/checkout-commerce-v1/data-context.d.ts.map +1 -0
  10. package/dist/blocks/designs/checkout-commerce-v1/data-context.js +44 -0
  11. package/dist/blocks/designs/checkout-commerce-v1/data-context.js.map +1 -0
  12. package/dist/blocks/designs/checkout-commerce-v1/data-context.mjs +19 -0
  13. package/dist/blocks/designs/checkout-commerce-v1/data-context.mjs.map +1 -0
  14. package/dist/blocks/designs/checkout-commerce-v1/index.d.ts +3 -0
  15. package/dist/blocks/designs/checkout-commerce-v1/index.d.ts.map +1 -0
  16. package/dist/blocks/designs/checkout-commerce-v1/index.js +36 -0
  17. package/dist/blocks/designs/checkout-commerce-v1/index.js.map +1 -0
  18. package/dist/blocks/designs/checkout-commerce-v1/index.mjs +6 -0
  19. package/dist/blocks/designs/checkout-commerce-v1/index.mjs.map +1 -0
  20. package/dist/blocks/designs/marketplace-product-card/block.d.ts +12 -0
  21. package/dist/blocks/designs/marketplace-product-card/block.d.ts.map +1 -0
  22. package/dist/blocks/designs/marketplace-product-card/block.js +243 -0
  23. package/dist/blocks/designs/marketplace-product-card/block.js.map +1 -0
  24. package/dist/blocks/designs/marketplace-product-card/block.mjs +233 -0
  25. package/dist/blocks/designs/marketplace-product-card/block.mjs.map +1 -0
  26. package/dist/blocks/designs/marketplace-product-card/index.d.ts +3 -0
  27. package/dist/blocks/designs/marketplace-product-card/index.d.ts.map +1 -0
  28. package/dist/blocks/designs/marketplace-product-card/index.js +36 -0
  29. package/dist/blocks/designs/marketplace-product-card/index.js.map +1 -0
  30. package/dist/blocks/designs/marketplace-product-card/index.mjs +6 -0
  31. package/dist/blocks/designs/marketplace-product-card/index.mjs.map +1 -0
  32. package/dist/blocks/designs/marketplace-product-card/normalize.d.ts +13 -0
  33. package/dist/blocks/designs/marketplace-product-card/normalize.d.ts.map +1 -0
  34. package/dist/blocks/designs/marketplace-product-card/normalize.js +36 -0
  35. package/dist/blocks/designs/marketplace-product-card/normalize.js.map +1 -0
  36. package/dist/blocks/designs/marketplace-product-card/normalize.mjs +12 -0
  37. package/dist/blocks/designs/marketplace-product-card/normalize.mjs.map +1 -0
  38. package/dist/blocks/designs/marketplace-product-card/variants.d.ts +72 -0
  39. package/dist/blocks/designs/marketplace-product-card/variants.d.ts.map +1 -0
  40. package/dist/blocks/designs/marketplace-product-card/variants.js +123 -0
  41. package/dist/blocks/designs/marketplace-product-card/variants.js.map +1 -0
  42. package/dist/blocks/designs/marketplace-product-card/variants.mjs +89 -0
  43. package/dist/blocks/designs/marketplace-product-card/variants.mjs.map +1 -0
  44. package/dist/blocks/e-commerce/account/account-frame.d.ts +38 -0
  45. package/dist/blocks/e-commerce/account/account-frame.d.ts.map +1 -0
  46. package/dist/blocks/e-commerce/account/account-frame.js +102 -0
  47. package/dist/blocks/e-commerce/account/account-frame.js.map +1 -0
  48. package/dist/blocks/e-commerce/account/account-frame.mjs +78 -0
  49. package/dist/blocks/e-commerce/account/account-frame.mjs.map +1 -0
  50. package/dist/blocks/e-commerce/account/address-book.d.ts +79 -0
  51. package/dist/blocks/e-commerce/account/address-book.d.ts.map +1 -0
  52. package/dist/blocks/e-commerce/account/address-book.js +250 -0
  53. package/dist/blocks/e-commerce/account/address-book.js.map +1 -0
  54. package/dist/blocks/e-commerce/account/address-book.mjs +225 -0
  55. package/dist/blocks/e-commerce/account/address-book.mjs.map +1 -0
  56. package/dist/blocks/e-commerce/account/profile-form.d.ts +35 -0
  57. package/dist/blocks/e-commerce/account/profile-form.d.ts.map +1 -0
  58. package/dist/blocks/e-commerce/account/profile-form.js +100 -0
  59. package/dist/blocks/e-commerce/account/profile-form.js.map +1 -0
  60. package/dist/blocks/e-commerce/account/profile-form.mjs +76 -0
  61. package/dist/blocks/e-commerce/account/profile-form.mjs.map +1 -0
  62. package/dist/blocks/e-commerce/checkout-forms/checkbox-check.js +1 -1
  63. package/dist/blocks/e-commerce/checkout-forms/checkbox-check.js.map +1 -1
  64. package/dist/blocks/e-commerce/checkout-forms/checkbox-check.mjs +1 -1
  65. package/dist/blocks/e-commerce/checkout-forms/checkbox-check.mjs.map +1 -1
  66. package/dist/blocks/e-commerce/checkout-forms/checkout-address-equality.d.ts +11 -0
  67. package/dist/blocks/e-commerce/checkout-forms/checkout-address-equality.d.ts.map +1 -0
  68. package/dist/blocks/e-commerce/checkout-forms/checkout-address-equality.js +46 -0
  69. package/dist/blocks/e-commerce/checkout-forms/checkout-address-equality.js.map +1 -0
  70. package/dist/blocks/e-commerce/checkout-forms/checkout-address-equality.mjs +22 -0
  71. package/dist/blocks/e-commerce/checkout-forms/checkout-address-equality.mjs.map +1 -0
  72. package/dist/blocks/e-commerce/checkout-forms/checkout-address-fields.d.ts +28 -0
  73. package/dist/blocks/e-commerce/checkout-forms/checkout-address-fields.d.ts.map +1 -0
  74. package/dist/blocks/e-commerce/checkout-forms/checkout-address-fields.js +278 -0
  75. package/dist/blocks/e-commerce/checkout-forms/checkout-address-fields.js.map +1 -0
  76. package/dist/blocks/e-commerce/checkout-forms/checkout-address-fields.mjs +260 -0
  77. package/dist/blocks/e-commerce/checkout-forms/checkout-address-fields.mjs.map +1 -0
  78. package/dist/blocks/e-commerce/checkout-forms/checkout-contact-step.d.ts +12 -9
  79. package/dist/blocks/e-commerce/checkout-forms/checkout-contact-step.d.ts.map +1 -1
  80. package/dist/blocks/e-commerce/checkout-forms/checkout-contact-step.js +49 -71
  81. package/dist/blocks/e-commerce/checkout-forms/checkout-contact-step.js.map +1 -1
  82. package/dist/blocks/e-commerce/checkout-forms/checkout-contact-step.mjs +50 -72
  83. package/dist/blocks/e-commerce/checkout-forms/checkout-contact-step.mjs.map +1 -1
  84. package/dist/blocks/e-commerce/checkout-forms/checkout-country-field.d.ts.map +1 -1
  85. package/dist/blocks/e-commerce/checkout-forms/checkout-country-field.js +6 -3
  86. package/dist/blocks/e-commerce/checkout-forms/checkout-country-field.js.map +1 -1
  87. package/dist/blocks/e-commerce/checkout-forms/checkout-country-field.mjs +6 -3
  88. package/dist/blocks/e-commerce/checkout-forms/checkout-country-field.mjs.map +1 -1
  89. package/dist/blocks/e-commerce/checkout-forms/checkout-id-context.d.ts +7 -0
  90. package/dist/blocks/e-commerce/checkout-forms/checkout-id-context.d.ts.map +1 -0
  91. package/dist/blocks/e-commerce/checkout-forms/checkout-id-context.js +41 -0
  92. package/dist/blocks/e-commerce/checkout-forms/checkout-id-context.js.map +1 -0
  93. package/dist/blocks/e-commerce/checkout-forms/checkout-id-context.mjs +16 -0
  94. package/dist/blocks/e-commerce/checkout-forms/checkout-id-context.mjs.map +1 -0
  95. package/dist/blocks/e-commerce/checkout-forms/checkout-location-select.d.ts +24 -0
  96. package/dist/blocks/e-commerce/checkout-forms/checkout-location-select.d.ts.map +1 -0
  97. package/dist/blocks/e-commerce/checkout-forms/checkout-location-select.js +75 -0
  98. package/dist/blocks/e-commerce/checkout-forms/checkout-location-select.js.map +1 -0
  99. package/dist/blocks/e-commerce/checkout-forms/checkout-location-select.mjs +58 -0
  100. package/dist/blocks/e-commerce/checkout-forms/checkout-location-select.mjs.map +1 -0
  101. package/dist/blocks/e-commerce/checkout-forms/checkout-order-summary.d.ts +3 -2
  102. package/dist/blocks/e-commerce/checkout-forms/checkout-order-summary.d.ts.map +1 -1
  103. package/dist/blocks/e-commerce/checkout-forms/checkout-order-summary.js +9 -2
  104. package/dist/blocks/e-commerce/checkout-forms/checkout-order-summary.js.map +1 -1
  105. package/dist/blocks/e-commerce/checkout-forms/checkout-order-summary.mjs +9 -2
  106. package/dist/blocks/e-commerce/checkout-forms/checkout-order-summary.mjs.map +1 -1
  107. package/dist/blocks/e-commerce/checkout-forms/checkout-payment-step.d.ts +23 -8
  108. package/dist/blocks/e-commerce/checkout-forms/checkout-payment-step.d.ts.map +1 -1
  109. package/dist/blocks/e-commerce/checkout-forms/checkout-payment-step.js +136 -31
  110. package/dist/blocks/e-commerce/checkout-forms/checkout-payment-step.js.map +1 -1
  111. package/dist/blocks/e-commerce/checkout-forms/checkout-payment-step.mjs +143 -32
  112. package/dist/blocks/e-commerce/checkout-forms/checkout-payment-step.mjs.map +1 -1
  113. package/dist/blocks/e-commerce/checkout-forms/checkout-review-step.d.ts +13 -7
  114. package/dist/blocks/e-commerce/checkout-forms/checkout-review-step.d.ts.map +1 -1
  115. package/dist/blocks/e-commerce/checkout-forms/checkout-review-step.js +179 -28
  116. package/dist/blocks/e-commerce/checkout-forms/checkout-review-step.js.map +1 -1
  117. package/dist/blocks/e-commerce/checkout-forms/checkout-review-step.mjs +180 -29
  118. package/dist/blocks/e-commerce/checkout-forms/checkout-review-step.mjs.map +1 -1
  119. package/dist/blocks/e-commerce/checkout-forms/checkout-saved-addresses.d.ts +20 -0
  120. package/dist/blocks/e-commerce/checkout-forms/checkout-saved-addresses.d.ts.map +1 -0
  121. package/dist/blocks/e-commerce/checkout-forms/checkout-saved-addresses.js +199 -0
  122. package/dist/blocks/e-commerce/checkout-forms/checkout-saved-addresses.js.map +1 -0
  123. package/dist/blocks/e-commerce/checkout-forms/checkout-saved-addresses.mjs +175 -0
  124. package/dist/blocks/e-commerce/checkout-forms/checkout-saved-addresses.mjs.map +1 -0
  125. package/dist/blocks/e-commerce/checkout-forms/checkout-section-nav.d.ts +14 -0
  126. package/dist/blocks/e-commerce/checkout-forms/checkout-section-nav.d.ts.map +1 -0
  127. package/dist/blocks/e-commerce/checkout-forms/checkout-section-nav.js +136 -0
  128. package/dist/blocks/e-commerce/checkout-forms/checkout-section-nav.js.map +1 -0
  129. package/dist/blocks/e-commerce/checkout-forms/checkout-section-nav.mjs +109 -0
  130. package/dist/blocks/e-commerce/checkout-forms/checkout-section-nav.mjs.map +1 -0
  131. package/dist/blocks/e-commerce/checkout-forms/checkout-shipping-step.d.ts +32 -10
  132. package/dist/blocks/e-commerce/checkout-forms/checkout-shipping-step.d.ts.map +1 -1
  133. package/dist/blocks/e-commerce/checkout-forms/checkout-shipping-step.js +265 -147
  134. package/dist/blocks/e-commerce/checkout-forms/checkout-shipping-step.js.map +1 -1
  135. package/dist/blocks/e-commerce/checkout-forms/checkout-shipping-step.mjs +272 -148
  136. package/dist/blocks/e-commerce/checkout-forms/checkout-shipping-step.mjs.map +1 -1
  137. package/dist/blocks/e-commerce/checkout-forms/checkout-step-header.d.ts +13 -0
  138. package/dist/blocks/e-commerce/checkout-forms/checkout-step-header.d.ts.map +1 -0
  139. package/dist/blocks/e-commerce/checkout-forms/checkout-step-header.js +74 -0
  140. package/dist/blocks/e-commerce/checkout-forms/checkout-step-header.js.map +1 -0
  141. package/dist/blocks/e-commerce/checkout-forms/checkout-step-header.mjs +50 -0
  142. package/dist/blocks/e-commerce/checkout-forms/checkout-step-header.mjs.map +1 -0
  143. package/dist/blocks/e-commerce/checkout-forms/checkout-step-summary.d.ts +7 -0
  144. package/dist/blocks/e-commerce/checkout-forms/checkout-step-summary.d.ts.map +1 -0
  145. package/dist/blocks/e-commerce/checkout-forms/checkout-step-summary.js +91 -0
  146. package/dist/blocks/e-commerce/checkout-forms/checkout-step-summary.js.map +1 -0
  147. package/dist/blocks/e-commerce/checkout-forms/checkout-step-summary.mjs +65 -0
  148. package/dist/blocks/e-commerce/checkout-forms/checkout-step-summary.mjs.map +1 -0
  149. package/dist/blocks/e-commerce/checkout-forms/checkout.d.ts +174 -44
  150. package/dist/blocks/e-commerce/checkout-forms/checkout.d.ts.map +1 -1
  151. package/dist/blocks/e-commerce/checkout-forms/checkout.js +532 -108
  152. package/dist/blocks/e-commerce/checkout-forms/checkout.js.map +1 -1
  153. package/dist/blocks/e-commerce/checkout-forms/checkout.mjs +542 -109
  154. package/dist/blocks/e-commerce/checkout-forms/checkout.mjs.map +1 -1
  155. package/dist/blocks/e-commerce/navigation/storefront-navbar-cart-sheet.d.ts.map +1 -1
  156. package/dist/blocks/e-commerce/navigation/storefront-navbar-cart-sheet.js +44 -20
  157. package/dist/blocks/e-commerce/navigation/storefront-navbar-cart-sheet.js.map +1 -1
  158. package/dist/blocks/e-commerce/navigation/storefront-navbar-cart-sheet.mjs +44 -20
  159. package/dist/blocks/e-commerce/navigation/storefront-navbar-cart-sheet.mjs.map +1 -1
  160. package/dist/blocks/e-commerce/navigation/storefront-navbar.d.ts.map +1 -1
  161. package/dist/blocks/e-commerce/navigation/storefront-navbar.js +21 -10
  162. package/dist/blocks/e-commerce/navigation/storefront-navbar.js.map +1 -1
  163. package/dist/blocks/e-commerce/navigation/storefront-navbar.mjs +21 -10
  164. package/dist/blocks/e-commerce/navigation/storefront-navbar.mjs.map +1 -1
  165. package/dist/blocks/e-commerce/product-list/product-card.d.ts.map +1 -1
  166. package/dist/blocks/e-commerce/product-list/product-card.js +36 -9
  167. package/dist/blocks/e-commerce/product-list/product-card.js.map +1 -1
  168. package/dist/blocks/e-commerce/product-list/product-card.mjs +36 -9
  169. package/dist/blocks/e-commerce/product-list/product-card.mjs.map +1 -1
  170. package/dist/blocks/e-commerce/product-list/product-showcase-1.d.ts.map +1 -1
  171. package/dist/blocks/e-commerce/product-list/product-showcase-1.js +7 -2
  172. package/dist/blocks/e-commerce/product-list/product-showcase-1.js.map +1 -1
  173. package/dist/blocks/e-commerce/product-list/product-showcase-1.mjs +7 -2
  174. package/dist/blocks/e-commerce/product-list/product-showcase-1.mjs.map +1 -1
  175. package/dist/blocks/e-commerce/product-overview/product-quick-view-dialog.d.ts.map +1 -1
  176. package/dist/blocks/e-commerce/product-overview/product-quick-view-dialog.js +5 -1
  177. package/dist/blocks/e-commerce/product-overview/product-quick-view-dialog.js.map +1 -1
  178. package/dist/blocks/e-commerce/product-overview/product-quick-view-dialog.mjs +5 -1
  179. package/dist/blocks/e-commerce/product-overview/product-quick-view-dialog.mjs.map +1 -1
  180. package/dist/blocks/e-commerce/storefront-hero/storefront-hero.d.ts.map +1 -1
  181. package/dist/blocks/e-commerce/storefront-hero/storefront-hero.js +71 -51
  182. package/dist/blocks/e-commerce/storefront-hero/storefront-hero.js.map +1 -1
  183. package/dist/blocks/e-commerce/storefront-hero/storefront-hero.mjs +71 -51
  184. package/dist/blocks/e-commerce/storefront-hero/storefront-hero.mjs.map +1 -1
  185. package/dist/blocks/marketing/banners/banner-1.d.ts.map +1 -1
  186. package/dist/blocks/marketing/banners/banner-1.js +15 -27
  187. package/dist/blocks/marketing/banners/banner-1.js.map +1 -1
  188. package/dist/blocks/marketing/banners/banner-1.mjs +16 -28
  189. package/dist/blocks/marketing/banners/banner-1.mjs.map +1 -1
  190. package/dist/index.d.ts +16 -4
  191. package/dist/index.d.ts.map +1 -1
  192. package/dist/index.js +19 -0
  193. package/dist/index.js.map +1 -1
  194. package/dist/index.mjs +13 -0
  195. package/dist/index.mjs.map +1 -1
  196. package/dist/lib/contracts/checkout-commerce-v1.d.ts +2350 -0
  197. package/dist/lib/contracts/checkout-commerce-v1.d.ts.map +1 -0
  198. package/dist/lib/contracts/checkout-commerce-v1.js +417 -0
  199. package/dist/lib/contracts/checkout-commerce-v1.js.map +1 -0
  200. package/dist/lib/contracts/checkout-commerce-v1.mjs +392 -0
  201. package/dist/lib/contracts/checkout-commerce-v1.mjs.map +1 -0
  202. package/dist/lib/contracts/marketplace-product-card.d.ts +324 -0
  203. package/dist/lib/contracts/marketplace-product-card.d.ts.map +1 -0
  204. package/dist/lib/contracts/marketplace-product-card.js +85 -0
  205. package/dist/lib/contracts/marketplace-product-card.js.map +1 -0
  206. package/dist/lib/contracts/marketplace-product-card.mjs +61 -0
  207. package/dist/lib/contracts/marketplace-product-card.mjs.map +1 -0
  208. package/dist/lib/contracts.d.ts +2289 -178
  209. package/dist/lib/contracts.d.ts.map +1 -1
  210. package/dist/lib/contracts.js +332 -25
  211. package/dist/lib/contracts.js.map +1 -1
  212. package/dist/lib/contracts.mjs +278 -5
  213. package/dist/lib/contracts.mjs.map +1 -1
  214. package/dist/lib/money-schema.d.ts +19 -0
  215. package/dist/lib/money-schema.d.ts.map +1 -0
  216. package/dist/lib/money-schema.js +33 -0
  217. package/dist/lib/money-schema.js.map +1 -0
  218. package/dist/lib/money-schema.mjs +9 -0
  219. package/dist/lib/money-schema.mjs.map +1 -0
  220. package/dist/lib/motion.d.ts +29 -0
  221. package/dist/lib/motion.d.ts.map +1 -0
  222. package/dist/lib/motion.js +65 -0
  223. package/dist/lib/motion.js.map +1 -0
  224. package/dist/lib/motion.mjs +41 -0
  225. package/dist/lib/motion.mjs.map +1 -0
  226. package/dist/ui/accordion.d.ts +3 -1
  227. package/dist/ui/accordion.d.ts.map +1 -1
  228. package/dist/ui/accordion.js +21 -5
  229. package/dist/ui/accordion.js.map +1 -1
  230. package/dist/ui/accordion.mjs +21 -5
  231. package/dist/ui/accordion.mjs.map +1 -1
  232. package/dist/ui/input-group.d.ts +1 -1
  233. package/package.json +18 -3
  234. package/dist/.tsbuildinfo +0 -1
@@ -1,11 +1,9 @@
1
1
  import { z } from "zod";
2
+ import { moneySchema } from "./money-schema.mjs";
2
3
  const PRODUCT_IMAGE_FALLBACK = "data:image/svg+xml;charset=utf-8," + encodeURIComponent(
3
4
  `<svg xmlns='http://www.w3.org/2000/svg' width='600' height='600'><rect width='100%' height='100%' fill='#e2e8f0'/><g fill='none' stroke='#94a3b8' stroke-width='12' stroke-linecap='round'><path d='M150 300h300M300 150v300'/><path d='M220 230h50M220 300h50M220 370h50'/><path d='M330 230h50M330 300h50M330 370h50'/></g></svg>`
4
5
  );
5
- const moneySchema = z.object({
6
- amount: z.string(),
7
- currencyCode: z.string()
8
- });
6
+ import { moneySchema as moneySchema2 } from "./money-schema.mjs";
9
7
  const imageSchema = z.object({
10
8
  id: z.string().optional(),
11
9
  url: z.string(),
@@ -603,6 +601,66 @@ const orderLinePropsSchema = z.object({
603
601
  amountUnavailableLabel: z.string().optional(),
604
602
  className: z.string().optional()
605
603
  });
604
+ const accountFramePresentationSchema = z.enum(["stack", "tabs"]);
605
+ const accountModuleSpecSchema = z.object({
606
+ id: z.string().min(1),
607
+ label: z.string().min(1),
608
+ href: z.string().optional()
609
+ });
610
+ const accountFramePropsSchema = z.object({
611
+ displayName: z.string(),
612
+ email: z.string().optional(),
613
+ modules: z.array(accountModuleSpecSchema),
614
+ activeModule: z.string().optional(),
615
+ presentation: accountFramePresentationSchema.optional(),
616
+ labels: z.record(z.string(), z.string()).optional(),
617
+ className: z.string().optional()
618
+ });
619
+ const profileFieldSpecSchema = z.object({
620
+ name: z.string().min(1),
621
+ label: z.string().min(1),
622
+ value: z.string().optional(),
623
+ type: z.enum(["text", "tel", "email"]).optional(),
624
+ required: z.boolean().optional(),
625
+ readOnly: z.boolean().optional(),
626
+ autoComplete: z.string().optional()
627
+ });
628
+ const profileFormPropsSchema = z.object({
629
+ fields: z.array(profileFieldSpecSchema),
630
+ labels: z.record(z.string(), z.string()).optional(),
631
+ pending: z.boolean().optional(),
632
+ error: z.string().nullable().optional(),
633
+ className: z.string().optional()
634
+ });
635
+ const accountAddressSpecSchema = z.object({
636
+ id: z.string().min(1),
637
+ recipientName: z.string(),
638
+ lines: z.array(z.string()),
639
+ isDefaultShipping: z.boolean().optional(),
640
+ isDefaultBilling: z.boolean().optional()
641
+ });
642
+ const addressBookPropsSchema = z.object({
643
+ addresses: z.array(accountAddressSpecSchema),
644
+ labels: z.record(z.string(), z.string()).optional(),
645
+ className: z.string().optional()
646
+ });
647
+ const addressFormFieldSpecSchema = z.object({
648
+ name: z.string().min(1),
649
+ label: z.string().min(1),
650
+ value: z.string().optional(),
651
+ type: z.enum(["text", "tel", "email", "select"]).optional(),
652
+ required: z.boolean().optional(),
653
+ autoComplete: z.string().optional(),
654
+ options: z.array(z.object({ value: z.string(), label: z.string() })).optional()
655
+ });
656
+ const addressFormPropsSchema = z.object({
657
+ fields: z.array(addressFormFieldSpecSchema),
658
+ labels: z.record(z.string(), z.string()).optional(),
659
+ pending: z.boolean().optional(),
660
+ error: z.string().nullable().optional(),
661
+ fieldErrors: z.record(z.string(), z.string()).optional(),
662
+ className: z.string().optional()
663
+ });
606
664
  const reviewRatingValueSchema = z.union([
607
665
  z.literal(1),
608
666
  z.literal(2),
@@ -662,11 +720,202 @@ const reviewComposerPropsSchema = z.object({
662
720
  error: z.string().optional(),
663
721
  className: z.string().optional()
664
722
  });
723
+ const checkoutReadStateSchema = z.enum(["idle", "pending", "error", "unavailable"]);
724
+ const checkoutAddressOptionSchema = z.object({
725
+ value: z.string(),
726
+ label: z.string()
727
+ });
728
+ const checkoutAddressLevelSchema = z.enum(["countries", "provinces", "cities"]);
729
+ const checkoutLocationOptionsSchema = z.object({
730
+ countries: z.array(checkoutAddressOptionSchema),
731
+ provinces: z.array(checkoutAddressOptionSchema),
732
+ cities: z.array(checkoutAddressOptionSchema),
733
+ countriesState: checkoutReadStateSchema.optional(),
734
+ provincesState: checkoutReadStateSchema.optional(),
735
+ citiesState: checkoutReadStateSchema.optional(),
736
+ countriesError: z.string().optional(),
737
+ provincesError: z.string().optional(),
738
+ citiesError: z.string().optional()
739
+ });
740
+ const checkoutAddressValuesSchema = z.object({
741
+ firstName: z.string(),
742
+ lastName: z.string(),
743
+ address1: z.string(),
744
+ address2: z.string().optional(),
745
+ company: z.string().optional(),
746
+ city: z.string(),
747
+ province: z.string().optional(),
748
+ postalCode: z.string().optional(),
749
+ countryCode: z.string(),
750
+ phone: z.string().optional()
751
+ });
752
+ const checkoutContactValuesSchema = z.object({
753
+ email: z.string(),
754
+ firstName: z.string(),
755
+ lastName: z.string(),
756
+ phone: z.string()
757
+ });
758
+ const checkoutCustomerIdentitySchema = z.object({
759
+ id: z.string(),
760
+ email: z.string(),
761
+ firstName: z.string().optional(),
762
+ lastName: z.string().optional()
763
+ });
764
+ const checkoutSavedAddressSchema = z.object({
765
+ id: z.string(),
766
+ label: z.string().optional(),
767
+ address: checkoutAddressValuesSchema,
768
+ isDefaultShipping: z.boolean().optional(),
769
+ isDefaultBilling: z.boolean().optional()
770
+ });
771
+ const checkoutSavedAddressStateSchema = z.object({
772
+ pendingId: z.string().optional(),
773
+ error: z.object({
774
+ id: z.string().optional(),
775
+ message: z.string()
776
+ }).optional(),
777
+ lastSavedId: z.string().optional(),
778
+ lastAction: z.enum(["saved", "deleted"]).optional()
779
+ });
780
+ const checkoutShippingOptionSchema = z.object({
781
+ id: z.string(),
782
+ name: z.string(),
783
+ price: moneySchema.optional(),
784
+ description: z.string().optional(),
785
+ estimatedDays: z.string().optional(),
786
+ pickup: z.boolean().optional(),
787
+ locationName: z.string().optional(),
788
+ disabled: z.boolean().optional(),
789
+ disabledReason: z.string().optional()
790
+ });
791
+ const checkoutShippingGroupItemSchema = z.object({
792
+ lineId: z.string(),
793
+ quantity: z.number().int().positive().optional()
794
+ });
795
+ const checkoutShippingGroupSchema = z.object({
796
+ id: z.string(),
797
+ label: z.string().optional(),
798
+ items: z.array(checkoutShippingGroupItemSchema).optional(),
799
+ itemCount: z.number().int().min(0).optional(),
800
+ options: z.array(checkoutShippingOptionSchema),
801
+ selectedOptionId: z.string().optional(),
802
+ unavailableReason: z.string().optional()
803
+ });
804
+ const checkoutAdjustmentPaymentSchema = z.object({
805
+ id: z.string(),
806
+ kind: z.enum(["gift-card", "store-credit"]),
807
+ label: z.string(),
808
+ amount: moneySchema
809
+ });
810
+ const checkoutInterruptionKindSchema = z.enum([
811
+ "totals-changed",
812
+ "price-changed",
813
+ "stock-reduced",
814
+ "item-unavailable",
815
+ "session-expired",
816
+ "payment-failed"
817
+ ]);
818
+ const checkoutInterruptionActionSchema = z.enum([
819
+ "acknowledge",
820
+ "refresh",
821
+ "return-to-cart",
822
+ "retry"
823
+ ]);
824
+ const checkoutInterruptionSchema = z.object({
825
+ kind: checkoutInterruptionKindSchema,
826
+ severity: z.enum(["info", "blocking"]),
827
+ title: z.string(),
828
+ message: z.string(),
829
+ changes: z.array(
830
+ z.object({
831
+ lineId: z.string().optional(),
832
+ label: z.string(),
833
+ previous: z.string().optional(),
834
+ next: z.string().optional()
835
+ })
836
+ ).optional(),
837
+ actions: z.array(checkoutInterruptionActionSchema)
838
+ });
839
+ const checkoutSubmissionSchema = z.object({
840
+ contact: checkoutContactValuesSchema,
841
+ shippingAddress: checkoutAddressValuesSchema,
842
+ billingAddress: checkoutAddressValuesSchema.optional(),
843
+ sameAsShipping: z.boolean(),
844
+ shippingSelections: z.array(
845
+ z.object({ groupId: z.string(), optionId: z.string() })
846
+ ),
847
+ paymentMethod: z.string(),
848
+ adjustmentPayments: z.array(checkoutAdjustmentPaymentSchema),
849
+ promoCode: z.string()
850
+ });
851
+ const checkoutOrderLineSchema = z.object({
852
+ id: z.union([z.string(), z.number()]),
853
+ name: z.string(),
854
+ variant: z.string().optional(),
855
+ quantity: z.number(),
856
+ lineTotal: moneySchema.optional(),
857
+ unitPrice: moneySchema.optional(),
858
+ image: z.string().optional()
859
+ });
860
+ const checkoutTotalsSchema = z.object({
861
+ subtotal: moneySchema,
862
+ discount: moneySchema.optional(),
863
+ tax: moneySchema.optional(),
864
+ shipping: moneySchema.optional(),
865
+ total: moneySchema
866
+ });
867
+ const checkoutOrderSummarySchema = z.object({
868
+ items: z.array(checkoutOrderLineSchema),
869
+ totals: checkoutTotalsSchema.optional()
870
+ });
871
+ const checkoutAvailabilitySchema = z.object({
872
+ status: z.enum(["available", "empty", "unavailable", "error"]),
873
+ reason: z.string().optional(),
874
+ actionLabel: z.string().optional()
875
+ });
876
+ const checkoutPropsSchema = z.object({
877
+ presentation: z.enum(["single-page", "stepper"]),
878
+ showReviewStep: z.boolean().optional(),
879
+ contact: checkoutContactValuesSchema,
880
+ customer: checkoutCustomerIdentitySchema.nullish(),
881
+ savedAddresses: z.array(checkoutSavedAddressSchema).optional(),
882
+ savedAddressState: checkoutSavedAddressStateSchema.optional(),
883
+ shippingAddress: checkoutAddressValuesSchema,
884
+ billingAddress: checkoutAddressValuesSchema.optional(),
885
+ sameAsShipping: z.boolean(),
886
+ shippingLocations: checkoutLocationOptionsSchema.optional(),
887
+ billingLocations: checkoutLocationOptionsSchema.optional(),
888
+ shippingGroups: z.array(checkoutShippingGroupSchema).optional(),
889
+ shippingState: checkoutReadStateSchema.optional(),
890
+ paymentMethods: z.array(paymentMethodSchema).optional(),
891
+ paymentState: checkoutReadStateSchema.optional(),
892
+ paymentMethod: z.string(),
893
+ adjustmentPayments: z.array(checkoutAdjustmentPaymentSchema).optional(),
894
+ orderSummary: checkoutOrderSummarySchema.optional(),
895
+ totalsState: z.enum(["idle", "pending", "error"]).optional(),
896
+ promoCode: z.string().optional(),
897
+ labels: z.record(z.string(), z.string()).optional(),
898
+ fieldErrors: z.record(z.string(), z.unknown()).optional(),
899
+ fieldDescriptions: z.record(z.string(), z.string()).optional(),
900
+ availability: checkoutAvailabilitySchema.optional(),
901
+ interruption: checkoutInterruptionSchema.optional(),
902
+ submitting: z.boolean().optional(),
903
+ submitError: z.string().optional()
904
+ });
665
905
  import { isCompleteFiniteDecimal, isAvailableMoney, formatMoney } from "./money.mjs";
666
906
  import { resolveAbsoluteQuantity } from "./cart.mjs";
907
+ export * from "./contracts/marketplace-product-card.mjs";
908
+ export * from "./contracts/checkout-commerce-v1.mjs";
667
909
  export {
668
910
  PRODUCT_IMAGE_FALLBACK,
911
+ accountAddressSpecSchema,
912
+ accountFramePresentationSchema,
913
+ accountFramePropsSchema,
669
914
  accountMenuItemSchema,
915
+ accountModuleSpecSchema,
916
+ addressBookPropsSchema,
917
+ addressFormFieldSpecSchema,
918
+ addressFormPropsSchema,
670
919
  brandAccentSchema,
671
920
  buttonPropsSchema,
672
921
  cardProductSchema,
@@ -674,6 +923,28 @@ export {
674
923
  cartTotalsSchema,
675
924
  categoryCardPropsSchema,
676
925
  categoryGridPropsSchema,
926
+ checkoutAddressLevelSchema,
927
+ checkoutAddressOptionSchema,
928
+ checkoutAddressValuesSchema,
929
+ checkoutAdjustmentPaymentSchema,
930
+ checkoutAvailabilitySchema,
931
+ checkoutContactValuesSchema,
932
+ checkoutCustomerIdentitySchema,
933
+ checkoutInterruptionActionSchema,
934
+ checkoutInterruptionKindSchema,
935
+ checkoutInterruptionSchema,
936
+ checkoutLocationOptionsSchema,
937
+ checkoutOrderLineSchema,
938
+ checkoutOrderSummarySchema,
939
+ checkoutPropsSchema,
940
+ checkoutReadStateSchema,
941
+ checkoutSavedAddressSchema,
942
+ checkoutSavedAddressStateSchema,
943
+ checkoutShippingGroupItemSchema,
944
+ checkoutShippingGroupSchema,
945
+ checkoutShippingOptionSchema,
946
+ checkoutSubmissionSchema,
947
+ checkoutTotalsSchema,
677
948
  ctaSchema,
678
949
  ctaSection1PropsSchema,
679
950
  faqBlock1PropsSchema,
@@ -687,7 +958,7 @@ export {
687
958
  isAvailableMoney,
688
959
  isCompleteFiniteDecimal,
689
960
  logoAccentSchema,
690
- moneySchema,
961
+ moneySchema2 as moneySchema,
691
962
  navCartItemSchema,
692
963
  navbarFeaturedSchema,
693
964
  navbarGroupSchema,
@@ -712,6 +983,8 @@ export {
712
983
  productOverviewReviewSchema,
713
984
  productPresentationSchema,
714
985
  productShowcase1PropsSchema,
986
+ profileFieldSpecSchema,
987
+ profileFormPropsSchema,
715
988
  promotionSchema,
716
989
  recentlyViewedItemSchema,
717
990
  resolveAbsoluteQuantity,