@ecomiq/core 0.1.8 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (274) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +39 -2
  3. package/dist/_virtual/_rolldown/runtime-C6LprzCP.cjs +22 -0
  4. package/dist/api.cjs +117 -102
  5. package/dist/api.d.cts +33 -37
  6. package/dist/api.d.ts +33 -37
  7. package/dist/api.js +116 -100
  8. package/dist/client.cjs +499 -1681
  9. package/dist/client.d.cts +156 -15
  10. package/dist/client.d.ts +156 -15
  11. package/dist/client.js +500 -1680
  12. package/dist/index.cjs +333 -2108
  13. package/dist/index.d.cts +53 -1117
  14. package/dist/index.d.ts +53 -1117
  15. package/dist/index.js +52 -1910
  16. package/dist/libs/bounded-read-cache-Abmb5VnJ.js +41 -0
  17. package/dist/libs/bounded-read-cache-D4644LJo.cjs +41 -0
  18. package/dist/libs/catalog-link-key-B7l5KZsF.js +9 -0
  19. package/dist/libs/catalog-link-key-CZTHJBGD.cjs +9 -0
  20. package/dist/libs/catalog-link-key.d.cts +2 -0
  21. package/dist/libs/catalog-link-key.d.ts +2 -0
  22. package/dist/libs/graphql-_6Y8lR_Q.js +49 -0
  23. package/dist/libs/graphql-selection-Cj51WkJn.cjs +21 -0
  24. package/dist/libs/graphql-selection-H1RMh6VD.js +21 -0
  25. package/dist/libs/graphql-selection.d.cts +3 -0
  26. package/dist/libs/graphql-selection.d.ts +3 -0
  27. package/dist/libs/graphql-wJH7HaQU.cjs +50 -0
  28. package/dist/libs/graphql.d.cts +24 -0
  29. package/dist/libs/graphql.d.ts +24 -0
  30. package/dist/models/amounts-cKBCecl7.js +5 -0
  31. package/dist/models/amounts-lmg89eJQ.cjs +4 -0
  32. package/dist/models/articles-C-4JvT2Z.js +27 -0
  33. package/dist/models/articles-xHCXLKDK.cjs +30 -0
  34. package/dist/models/articles.d.cts +46 -0
  35. package/dist/models/articles.d.ts +46 -0
  36. package/dist/models/catalog-links-BzJeyBy4.js +80 -0
  37. package/dist/models/catalog-links-c4LADGf_.cjs +88 -0
  38. package/dist/models/catalog-links.d.cts +39 -0
  39. package/dist/models/catalog-links.d.ts +39 -0
  40. package/dist/models/categories-CKkJY8_P.js +42 -0
  41. package/dist/models/categories-DZ5i5kwi.cjs +45 -0
  42. package/dist/models/categories.d.cts +54 -0
  43. package/dist/models/categories.d.ts +54 -0
  44. package/dist/models/collections.cjs +13 -24
  45. package/dist/models/collections.d.cts +23 -56
  46. package/dist/models/collections.d.ts +23 -56
  47. package/dist/models/collections.js +12 -22
  48. package/dist/models/complaint-book-D5INpuI2.cjs +64 -0
  49. package/dist/models/complaint-book-QpQZe7Xl.js +58 -0
  50. package/dist/models/complaint-book.d.cts +71 -0
  51. package/dist/models/complaint-book.d.ts +71 -0
  52. package/dist/models/customer-address.cjs +39 -32
  53. package/dist/models/customer-address.d.cts +59 -158
  54. package/dist/models/customer-address.d.ts +59 -158
  55. package/dist/models/customer-address.js +38 -30
  56. package/dist/models/customer-order.cjs +181 -136
  57. package/dist/models/customer-order.d.cts +430 -862
  58. package/dist/models/customer-order.d.ts +430 -862
  59. package/dist/models/customer-order.js +178 -135
  60. package/dist/models/customer-profile.cjs +121 -112
  61. package/dist/models/customer-profile.d.cts +90 -175
  62. package/dist/models/customer-profile.d.ts +90 -175
  63. package/dist/models/customer-profile.js +121 -110
  64. package/dist/models/customer-registration-C13knqyv.js +28 -0
  65. package/dist/models/customer-registration-EZ0yZgGr.cjs +31 -0
  66. package/dist/models/customer-registration.d.cts +66 -0
  67. package/dist/models/customer-registration.d.ts +66 -0
  68. package/dist/models/customer-session-BiX0TXhO.js +41 -0
  69. package/dist/models/customer-session-JeQiC8Yx.cjs +45 -0
  70. package/dist/models/customer-session.d.cts +61 -0
  71. package/dist/models/customer-session.d.ts +61 -0
  72. package/dist/models/geo.cjs +52 -51
  73. package/dist/models/geo.d.cts +141 -270
  74. package/dist/models/geo.d.ts +141 -270
  75. package/dist/models/geo.js +51 -49
  76. package/dist/models/ids.cjs +9 -13
  77. package/dist/models/ids.d.cts +9 -12
  78. package/dist/models/ids.d.ts +9 -12
  79. package/dist/models/ids.js +8 -12
  80. package/dist/models/order-draft-CnHJ0btL.js +37 -0
  81. package/dist/models/order-draft-PFBZfRRR.cjs +39 -0
  82. package/dist/models/order-draft.d.cts +51 -0
  83. package/dist/models/order-draft.d.ts +51 -0
  84. package/dist/models/order-review--xGlZKtS.cjs +18 -0
  85. package/dist/models/order-review-egGeCaqB.js +17 -0
  86. package/dist/models/order-review.d.cts +22 -0
  87. package/dist/models/order-review.d.ts +22 -0
  88. package/dist/models/order-status-CS_OeSPY.cjs +66 -0
  89. package/dist/models/order-status-CgaLkU0M.js +60 -0
  90. package/dist/models/order-status.d.cts +298 -0
  91. package/dist/models/order-status.d.ts +298 -0
  92. package/dist/models/payment-methods--VUUZpMz.js +17 -0
  93. package/dist/models/payment-methods-CmK08zBM.cjs +19 -0
  94. package/dist/models/payment-methods.d.cts +28 -0
  95. package/dist/models/payment-methods.d.ts +28 -0
  96. package/dist/models/products.cjs +214 -200
  97. package/dist/models/products.d.cts +616 -1359
  98. package/dist/models/products.d.ts +616 -1359
  99. package/dist/models/products.js +210 -192
  100. package/dist/models/search.cjs +15 -202
  101. package/dist/models/search.d.cts +21 -51
  102. package/dist/models/search.d.ts +21 -51
  103. package/dist/models/search.js +14 -200
  104. package/dist/models/sellers.cjs +44 -0
  105. package/dist/models/sellers.d.cts +82 -0
  106. package/dist/models/sellers.d.ts +82 -0
  107. package/dist/models/sellers.js +38 -0
  108. package/dist/models/settings.cjs +205 -238
  109. package/dist/models/settings.d.cts +862 -6949
  110. package/dist/models/settings.d.ts +862 -6949
  111. package/dist/models/settings.js +213 -241
  112. package/dist/models/storefront-cart.cjs +143 -129
  113. package/dist/models/storefront-cart.d.cts +255 -713
  114. package/dist/models/storefront-cart.d.ts +255 -713
  115. package/dist/models/storefront-cart.js +140 -127
  116. package/dist/models/storefront-checkout.cjs +212 -298
  117. package/dist/models/storefront-checkout.d.cts +656 -2441
  118. package/dist/models/storefront-checkout.d.ts +656 -2441
  119. package/dist/models/storefront-checkout.js +208 -298
  120. package/dist/models/storefront-reviews.cjs +62 -226
  121. package/dist/models/storefront-reviews.d.cts +73 -141
  122. package/dist/models/storefront-reviews.d.ts +73 -141
  123. package/dist/models/storefront-reviews.js +59 -225
  124. package/dist/models/tracking-CiIAhQW0.js +33 -0
  125. package/dist/models/tracking-wNyzQ6Bp.cjs +36 -0
  126. package/dist/models/tracking.d.cts +26 -0
  127. package/dist/models/tracking.d.ts +26 -0
  128. package/dist/models/urls-B0ZODOwH.cjs +35 -0
  129. package/dist/models/urls-Dt_dTt4Q.js +33 -0
  130. package/dist/models/urls.d.cts +201 -0
  131. package/dist/models/urls.d.ts +201 -0
  132. package/dist/redirects.cjs +113 -0
  133. package/dist/redirects.d.cts +11 -0
  134. package/dist/redirects.d.ts +11 -0
  135. package/dist/redirects.js +108 -0
  136. package/dist/services/article.service-DBsOvflH.js +10 -0
  137. package/dist/services/article.service-zmTkbbPV.cjs +11 -0
  138. package/dist/services/article.service.d.cts +4 -0
  139. package/dist/services/article.service.d.ts +4 -0
  140. package/dist/services/cart.service-B0D8s6jI.cjs +37 -0
  141. package/dist/services/cart.service-yMCz9oQP.js +33 -0
  142. package/dist/services/cart.service.d.cts +527 -0
  143. package/dist/services/cart.service.d.ts +527 -0
  144. package/dist/services/catalog-link.service-BQ2d-EPX.js +8 -0
  145. package/dist/services/catalog-link.service-DiB-OVjn.cjs +8 -0
  146. package/dist/services/category.service-8tieYX2r.js +6 -0
  147. package/dist/services/category.service-BsSJZV2B.cjs +6 -0
  148. package/dist/services/checkout.service-CC-3tm2y.js +60 -0
  149. package/dist/services/checkout.service-CG8KrDNY.cjs +69 -0
  150. package/dist/services/checkout.service.d.cts +439 -0
  151. package/dist/services/checkout.service.d.ts +439 -0
  152. package/dist/services/collection.service-C4QETpuI.js +11 -0
  153. package/dist/services/collection.service-DHGN3rhs.cjs +12 -0
  154. package/dist/services/complaint-book.service-C7TxltQe.cjs +13 -0
  155. package/dist/services/complaint-book.service-DXiVyKdD.js +12 -0
  156. package/dist/services/complaint-book.service.d.cts +4 -0
  157. package/dist/services/complaint-book.service.d.ts +4 -0
  158. package/dist/services/customer-address.service-Ca4qla_R.cjs +51 -0
  159. package/dist/services/customer-address.service-xEThx7cQ.js +47 -0
  160. package/dist/services/customer-address.service.d.cts +19 -0
  161. package/dist/services/customer-address.service.d.ts +19 -0
  162. package/dist/services/customer-order.service-DLGgT0xa.cjs +54 -0
  163. package/dist/services/customer-order.service-qHoRBuyX.js +51 -0
  164. package/dist/services/customer-order.service.d.cts +34 -0
  165. package/dist/services/customer-order.service.d.ts +34 -0
  166. package/dist/services/customer-registration.service-C3BNyCHP.cjs +10 -0
  167. package/dist/services/customer-registration.service-CxcWD2hf.js +9 -0
  168. package/dist/services/customer-registration.service.d.cts +5 -0
  169. package/dist/services/customer-registration.service.d.ts +5 -0
  170. package/dist/services/customer-session.service-4YgfbWRB.js +16 -0
  171. package/dist/services/customer-session.service-Bd8pLC2v.cjs +19 -0
  172. package/dist/services/customer.service-BM0NrOxP.cjs +26 -0
  173. package/dist/services/customer.service-BoU6l2-R.js +25 -0
  174. package/dist/services/customer.service.d.cts +10 -0
  175. package/dist/services/customer.service.d.ts +10 -0
  176. package/dist/services/geo.service-C32R7N8W.js +39 -0
  177. package/dist/services/geo.service-JeTT3Wun.cjs +42 -0
  178. package/dist/services/geo.service.d.cts +10 -0
  179. package/dist/services/geo.service.d.ts +10 -0
  180. package/dist/services/layout.service-BkvLzl1g.cjs +50 -0
  181. package/dist/services/layout.service-DmbeMOkK.js +50 -0
  182. package/dist/services/layout.service.d.cts +9 -0
  183. package/dist/services/layout.service.d.ts +9 -0
  184. package/dist/services/order-draft.service-D9gy-OPr.cjs +14 -0
  185. package/dist/services/order-draft.service-DYPR_pcV.js +13 -0
  186. package/dist/services/order-draft.service.d.cts +4 -0
  187. package/dist/services/order-draft.service.d.ts +4 -0
  188. package/dist/services/order-review.service-BEr-FB6_.cjs +11 -0
  189. package/dist/services/order-review.service-PdBPUsxE.js +11 -0
  190. package/dist/services/order-review.service.d.cts +7 -0
  191. package/dist/services/order-review.service.d.ts +7 -0
  192. package/dist/services/order-status.service-Cn7dsaJo.cjs +26 -0
  193. package/dist/services/order-status.service-MC9hVpP-.js +23 -0
  194. package/dist/services/order-status.service.d.cts +16 -0
  195. package/dist/services/order-status.service.d.ts +16 -0
  196. package/dist/services/page.service-CWhWCjMQ.js +7 -0
  197. package/dist/services/page.service-DmCSeMiR.cjs +7 -0
  198. package/dist/services/page.service.d.cts +4 -0
  199. package/dist/services/page.service.d.ts +4 -0
  200. package/dist/services/payment-method.service-CEt_nB4R.cjs +7 -0
  201. package/dist/services/payment-method.service-CjKbAsOh.js +7 -0
  202. package/dist/services/payment-method.service.d.cts +4 -0
  203. package/dist/services/payment-method.service.d.ts +4 -0
  204. package/dist/services/product.service-B05Qmbuh.js +35 -0
  205. package/dist/services/product.service-B7OFZWB1.cjs +37 -0
  206. package/dist/services/product.service.d.cts +231 -0
  207. package/dist/services/product.service.d.ts +231 -0
  208. package/dist/services/review.service-CO2icjpu.cjs +46 -0
  209. package/dist/services/review.service-De1YkhFp.js +43 -0
  210. package/dist/services/review.service.d.cts +28 -0
  211. package/dist/services/review.service.d.ts +28 -0
  212. package/dist/services/search.service-Bx1zbTHJ.cjs +10 -0
  213. package/dist/services/search.service-DSBMhaSY.js +10 -0
  214. package/dist/services/search.service.d.cts +9 -0
  215. package/dist/services/search.service.d.ts +9 -0
  216. package/dist/services/seller.service-D11WHhbC.cjs +10 -0
  217. package/dist/services/seller.service-DUptDTv4.js +9 -0
  218. package/dist/services/seller.service.d.cts +42 -0
  219. package/dist/services/seller.service.d.ts +42 -0
  220. package/dist/services/tracking.service-CPK1B69N.js +11 -0
  221. package/dist/services/tracking.service-DqOoi8qr.cjs +11 -0
  222. package/dist/services/tracking.service.d.cts +7 -0
  223. package/dist/services/tracking.service.d.ts +7 -0
  224. package/dist/services/url.service-B-nC14Ue.cjs +19 -0
  225. package/dist/services/url.service-CLW0Tc7S.js +18 -0
  226. package/dist/storefront-cache-revision.cjs +23 -0
  227. package/dist/storefront-cache-revision.d.cts +16 -0
  228. package/dist/storefront-cache-revision.d.ts +16 -0
  229. package/dist/storefront-cache-revision.js +17 -0
  230. package/dist/storefront-routes.cjs +14 -0
  231. package/dist/storefront-routes.d.cts +11 -0
  232. package/dist/storefront-routes.d.ts +11 -0
  233. package/dist/storefront-routes.js +12 -0
  234. package/dist/utils-CDEC5xcY.cjs +139 -0
  235. package/dist/utils-DK7qa54o.js +136 -0
  236. package/dist/utils.d.cts +3 -0
  237. package/dist/utils.d.ts +3 -0
  238. package/dist/video-links-CbRO0m8V.js +47 -0
  239. package/dist/video-links-ClryQjPH.cjs +47 -0
  240. package/dist/video-links.d.cts +7 -0
  241. package/dist/video-links.d.ts +7 -0
  242. package/package.json +28 -11
  243. package/dist/api.cjs.map +0 -1
  244. package/dist/api.js.map +0 -1
  245. package/dist/client-4ZTG2RZ3.d.ts +0 -195
  246. package/dist/client-BpX4yR6S.d.cts +0 -195
  247. package/dist/client.cjs.map +0 -1
  248. package/dist/client.js.map +0 -1
  249. package/dist/index.cjs.map +0 -1
  250. package/dist/index.js.map +0 -1
  251. package/dist/models/collections.cjs.map +0 -1
  252. package/dist/models/collections.js.map +0 -1
  253. package/dist/models/customer-address.cjs.map +0 -1
  254. package/dist/models/customer-address.js.map +0 -1
  255. package/dist/models/customer-order.cjs.map +0 -1
  256. package/dist/models/customer-order.js.map +0 -1
  257. package/dist/models/customer-profile.cjs.map +0 -1
  258. package/dist/models/customer-profile.js.map +0 -1
  259. package/dist/models/geo.cjs.map +0 -1
  260. package/dist/models/geo.js.map +0 -1
  261. package/dist/models/ids.cjs.map +0 -1
  262. package/dist/models/ids.js.map +0 -1
  263. package/dist/models/products.cjs.map +0 -1
  264. package/dist/models/products.js.map +0 -1
  265. package/dist/models/search.cjs.map +0 -1
  266. package/dist/models/search.js.map +0 -1
  267. package/dist/models/settings.cjs.map +0 -1
  268. package/dist/models/settings.js.map +0 -1
  269. package/dist/models/storefront-cart.cjs.map +0 -1
  270. package/dist/models/storefront-cart.js.map +0 -1
  271. package/dist/models/storefront-checkout.cjs.map +0 -1
  272. package/dist/models/storefront-checkout.js.map +0 -1
  273. package/dist/models/storefront-reviews.cjs.map +0 -1
  274. package/dist/models/storefront-reviews.js.map +0 -1
@@ -1,195 +1,213 @@
1
- import { z } from 'zod';
2
-
1
+ import { EntityIdSchema } from "./ids.js";
2
+ import { z } from "zod";
3
3
  // src/models/products.ts
4
- var EntityIdSchema = z.union([
5
- z.string().uuid(),
6
- z.string().regex(/^\d+$/, "Expected numeric id")
4
+ const ProductSellerSchema = z.object({
5
+ id: EntityIdSchema,
6
+ name: z.string(),
7
+ slug: z.string()
8
+ });
9
+ const SpecificationTypeSchema = z.enum([
10
+ "input",
11
+ "textArea",
12
+ "select",
13
+ "checkbox",
14
+ "colorPicker",
15
+ "datePicker",
16
+ "timePicker",
17
+ "dateTimePicker",
18
+ "file",
19
+ "number",
20
+ "url"
7
21
  ]);
8
- EntityIdSchema.nullable();
9
- var OptionalEntityIdSchema = EntityIdSchema.optional();
10
-
11
- // src/models/products.ts
12
- var ProductPublicIdSchema = z.union([
13
- z.string().regex(/^[1-9]\d*$/),
14
- z.number().int().safe().positive()
15
- ]).transform(String);
16
- var ProductSummarySchema = z.object({
17
- id: ProductPublicIdSchema,
18
- name: z.string(),
19
- slug: z.string(),
20
- productType: z.string(),
21
- imageUrl: z.string(),
22
- price: z.number().nonnegative(),
23
- compareAtPrice: z.number().nonnegative().nullable(),
24
- variantCount: z.number().int().nonnegative(),
25
- isAvailable: z.boolean(),
26
- totalInventory: z.number().int().nonnegative(),
27
- bundleItemsCount: z.number().int().nonnegative(),
28
- brand: z.string(),
29
- category: z.string(),
30
- status: z.string(),
31
- collections: z.array(z.string()),
32
- tags: z.array(z.string())
33
- });
34
- var ProductSummariesSchema = z.array(ProductSummarySchema);
35
- var ProductSchema = ProductSummarySchema;
36
- var FacetItemSchema = z.object({
37
- value: z.string(),
38
- count: z.number().int().nonnegative(),
39
- label: z.string().nullable(),
40
- selected: z.boolean()
41
- });
42
- var FacetSchema = FacetItemSchema;
43
- var SearchFilterSchema = z.object({
44
- id: z.string(),
45
- label: z.string(),
46
- type: z.enum(["list", "price_range"]),
47
- values: z.array(FacetItemSchema),
48
- min: z.number().nonnegative().nullable(),
49
- max: z.number().nonnegative().nullable(),
50
- selectedMin: z.number().nonnegative().nullable(),
51
- selectedMax: z.number().nonnegative().nullable()
52
- });
53
- var ProductsResponseSchema = z.object({
54
- pageIndex: z.number().int().positive(),
55
- pageSize: z.number().int().positive().max(100),
56
- totalCount: z.number().int().nonnegative(),
57
- totalPages: z.number().int().nonnegative(),
58
- products: z.array(ProductSummarySchema),
59
- filters: z.array(SearchFilterSchema)
60
- });
61
- var ProductSortSchema = z.enum([
62
- "price_asc",
63
- "price_desc",
64
- "name_asc",
65
- "name_desc",
66
- "newest"
22
+ const SpecItemSchema = z.object({
23
+ key: z.string(),
24
+ name: z.string(),
25
+ value: z.string(),
26
+ valueId: EntityIdSchema.nullable().optional(),
27
+ valueName: z.string().nullable().optional(),
28
+ type: SpecificationTypeSchema.optional(),
29
+ color: z.string().regex(/^#[0-9a-fA-F]{6}$/).nullable().optional(),
30
+ imageUrl: z.string().url().nullable().optional(),
31
+ unit: z.string().nullable().optional()
32
+ });
33
+ const ProductMediaTypeSchema = z.enum(["image", "video"]);
34
+ const ProductImageSchema = z.object({
35
+ url: z.string(),
36
+ name: z.string(),
37
+ order: z.number().int().nonnegative(),
38
+ type: ProductMediaTypeSchema.catch("image").default("image")
39
+ });
40
+ const ProductOptionGroupSchema = z.object({
41
+ key: z.string(),
42
+ name: z.string(),
43
+ type: SpecificationTypeSchema.optional(),
44
+ values: z.array(SpecItemSchema)
45
+ });
46
+ const ProductSummarySchema = z.object({
47
+ id: EntityIdSchema,
48
+ name: z.string(),
49
+ slug: z.string(),
50
+ url: z.string(),
51
+ productType: z.string(),
52
+ imageUrl: z.string(),
53
+ price: z.number().nonnegative(),
54
+ compareAtPrice: z.number().nonnegative().nullable(),
55
+ variantCount: z.number().int().nonnegative(),
56
+ isAvailable: z.boolean(),
57
+ totalInventory: z.number().int().nonnegative(),
58
+ bundleItemsCount: z.number().int().nonnegative(),
59
+ brand: z.string(),
60
+ category: z.string(),
61
+ status: z.string(),
62
+ collections: z.array(z.string()),
63
+ tags: z.array(z.string()),
64
+ seller: ProductSellerSchema.nullable(),
65
+ options: z.array(ProductOptionGroupSchema),
66
+ images: z.array(ProductImageSchema),
67
+ availableVariantId: EntityIdSchema.nullable()
68
+ });
69
+ const ProductSummariesSchema = z.array(ProductSummarySchema);
70
+ const FacetItemSchema = z.object({
71
+ value: z.string(),
72
+ count: z.number().int().nonnegative(),
73
+ label: z.string().nullable(),
74
+ selected: z.boolean()
75
+ });
76
+ const SearchFilterSchema = z.object({
77
+ id: z.string(),
78
+ label: z.string(),
79
+ type: z.enum(["list", "price_range"]),
80
+ values: z.array(FacetItemSchema),
81
+ min: z.number().nonnegative().nullable(),
82
+ max: z.number().nonnegative().nullable(),
83
+ selectedMin: z.number().nonnegative().nullable(),
84
+ selectedMax: z.number().nonnegative().nullable()
85
+ });
86
+ const ProductsResponseSchema = z.object({
87
+ pageIndex: z.number().int().positive(),
88
+ pageSize: z.number().int().positive().max(100),
89
+ totalCount: z.number().int().nonnegative(),
90
+ totalPages: z.number().int().nonnegative(),
91
+ products: z.array(ProductSummarySchema),
92
+ filters: z.array(SearchFilterSchema)
93
+ });
94
+ const ProductSortSchema = z.enum([
95
+ "price_asc",
96
+ "price_desc",
97
+ "name_asc",
98
+ "name_desc",
99
+ "newest",
100
+ "best_selling"
67
101
  ]);
68
- var ProductsParamsSchema = z.object({
69
- page: z.number().int().positive().default(1),
70
- pageSize: z.number().int().positive().max(100).default(24),
71
- sort: ProductSortSchema.optional(),
72
- sellerId: OptionalEntityIdSchema,
73
- search: z.string().optional(),
74
- collection: z.string().optional(),
75
- collections: z.array(z.string()).optional(),
76
- collectionId: ProductPublicIdSchema.optional(),
77
- category: z.string().optional(),
78
- categories: z.array(z.string()).optional(),
79
- brand: z.string().optional(),
80
- brands: z.array(z.string()).optional(),
81
- productType: z.string().optional(),
82
- productTypes: z.array(z.string()).optional(),
83
- tag: z.string().optional(),
84
- tags: z.array(z.string()).optional(),
85
- filters: z.array(z.string()).optional(),
86
- locationId: OptionalEntityIdSchema,
87
- inStock: z.boolean().optional(),
88
- minPrice: z.number().nonnegative().optional(),
89
- maxPrice: z.number().nonnegative().optional()
90
- });
91
- var ProductDetailParamsSchema = z.object({
92
- sellerId: OptionalEntityIdSchema
93
- });
94
- var RelatedProductsParamsSchema = z.object({
95
- productId: ProductPublicIdSchema,
96
- limit: z.number().int().positive().max(12).default(8),
97
- sellerId: OptionalEntityIdSchema
98
- });
99
- var SpecItemSchema = z.object({
100
- key: z.string(),
101
- name: z.string(),
102
- value: z.string()
103
- });
104
- var VariantOptionSchema = SpecItemSchema;
105
- var ProductImageSchema = z.object({
106
- url: z.string(),
107
- name: z.string(),
108
- order: z.number().int().nonnegative()
109
- });
110
- var VariantItemSchema = z.object({
111
- id: z.string().nullable(),
112
- sku: z.string(),
113
- status: z.string(),
114
- price: z.number().nonnegative(),
115
- compareAtPrice: z.number().nonnegative().nullable(),
116
- quantity: z.number().int().nonnegative(),
117
- options: z.array(SpecItemSchema),
118
- images: z.array(ProductImageSchema)
119
- });
120
- var VariantSchema = VariantItemSchema;
121
- var ProductPriceTierSchema = z.object({
122
- variantId: z.string(),
123
- minQuantity: z.number().int().positive(),
124
- maxQuantity: z.number().int().positive().nullable(),
125
- unitPrice: z.number().nonnegative()
126
- });
127
- var PriceTierSchema = ProductPriceTierSchema;
128
- var BundleItemSchema = z.object({
129
- productId: ProductPublicIdSchema,
130
- variantId: ProductPublicIdSchema,
131
- productName: z.string(),
132
- variantName: z.string().nullable(),
133
- sku: z.string().nullable(),
134
- brand: z.string().nullable(),
135
- imageUrl: z.string().nullable(),
136
- quantity: z.number().int().positive(),
137
- available: z.number().int().nonnegative(),
138
- allowBackorders: z.boolean(),
139
- requiresShipping: z.boolean()
140
- });
141
- var SizeGuideMeasurementSchema = z.object({
142
- key: z.string(),
143
- name: z.string(),
144
- min: z.number().nullable(),
145
- max: z.number().nullable(),
146
- value: z.number().nullable(),
147
- description: z.string().nullable()
148
- });
149
- var SizeGuideRowSchema = z.object({
150
- label: z.string(),
151
- sizeKey: z.string(),
152
- order: z.number().int().nonnegative(),
153
- measurements: z.array(SizeGuideMeasurementSchema)
154
- });
155
- var SizeGuideSchema = z.object({
156
- id: z.string(),
157
- name: z.string(),
158
- slug: z.string(),
159
- description: z.string().nullable(),
160
- imageUrl: z.string().nullable(),
161
- gender: z.string(),
162
- measurementType: z.string(),
163
- unit: z.string(),
164
- notes: z.string().nullable(),
165
- rows: z.array(SizeGuideRowSchema)
166
- });
167
- var ProductDetailSchema = z.object({
168
- id: ProductPublicIdSchema,
169
- name: z.string(),
170
- slug: z.string(),
171
- description: z.string(),
172
- productType: z.string(),
173
- status: z.string(),
174
- imageUrl: z.string(),
175
- price: z.number().nonnegative(),
176
- compareAtPrice: z.number().nonnegative().nullable(),
177
- isAvailable: z.boolean(),
178
- totalInventory: z.number().int().nonnegative(),
179
- brand: z.string(),
180
- category: z.string(),
181
- categoryId: ProductPublicIdSchema.nullable(),
182
- tags: z.array(z.string()),
183
- specifications: z.array(SpecItemSchema),
184
- variants: z.array(VariantItemSchema),
185
- images: z.array(ProductImageSchema),
186
- bundleItems: z.array(BundleItemSchema),
187
- sizeGuide: SizeGuideSchema.nullable(),
188
- priceTiers: z.array(ProductPriceTierSchema),
189
- createdAt: z.string().datetime({ offset: true }).nullable(),
190
- updatedAt: z.string().datetime({ offset: true }).nullable()
191
- });
192
-
193
- export { BundleItemSchema, FacetItemSchema, FacetSchema, PriceTierSchema, ProductDetailParamsSchema, ProductDetailSchema, ProductImageSchema, ProductPriceTierSchema, ProductPublicIdSchema, ProductSchema, ProductSortSchema, ProductSummariesSchema, ProductSummarySchema, ProductsParamsSchema, ProductsResponseSchema, RelatedProductsParamsSchema, SearchFilterSchema, SizeGuideMeasurementSchema, SizeGuideRowSchema, SizeGuideSchema, SpecItemSchema, VariantItemSchema, VariantOptionSchema, VariantSchema };
194
- //# sourceMappingURL=products.js.map
195
- //# sourceMappingURL=products.js.map
102
+ const ProductsParamsSchema = z.object({
103
+ includeFilters: z.boolean().optional(),
104
+ page: z.number().int().positive().default(1),
105
+ pageSize: z.number().int().positive().max(100).default(24),
106
+ productIds: z.array(EntityIdSchema).max(100).optional(),
107
+ slugs: z.array(z.string().trim().min(1)).max(100).optional(),
108
+ sort: ProductSortSchema.optional(),
109
+ sellers: z.array(z.string().trim().min(1)).optional(),
110
+ search: z.string().optional(),
111
+ collections: z.array(z.string()).optional(),
112
+ collectionId: EntityIdSchema.optional(),
113
+ categoryId: EntityIdSchema.optional(),
114
+ categories: z.array(z.string()).optional(),
115
+ brands: z.array(z.string()).optional(),
116
+ productTypes: z.array(z.string()).optional(),
117
+ tags: z.array(z.string()).optional(),
118
+ filters: z.array(z.string()).optional(),
119
+ inStock: z.boolean().optional(),
120
+ minPrice: z.number().nonnegative().optional(),
121
+ maxPrice: z.number().nonnegative().optional()
122
+ });
123
+ const RelatedProductsParamsSchema = z.object({
124
+ productId: EntityIdSchema,
125
+ limit: z.number().int().positive().max(12).default(8)
126
+ });
127
+ const VariantItemSchema = z.object({
128
+ id: EntityIdSchema.nullable(),
129
+ sku: z.string(),
130
+ status: z.string(),
131
+ price: z.number().nonnegative(),
132
+ compareAtPrice: z.number().nonnegative().nullable(),
133
+ quantity: z.number().int().nonnegative(),
134
+ isAvailable: z.boolean().nullable(),
135
+ requiresShipping: z.boolean(),
136
+ options: z.array(SpecItemSchema),
137
+ images: z.array(ProductImageSchema)
138
+ });
139
+ const ProductPriceTierSchema = z.object({
140
+ variantId: EntityIdSchema,
141
+ minQuantity: z.number().int().positive(),
142
+ maxQuantity: z.number().int().positive().nullable(),
143
+ unitPrice: z.number().nonnegative()
144
+ });
145
+ const BundleItemSchema = z.object({
146
+ productId: EntityIdSchema,
147
+ variantId: EntityIdSchema,
148
+ productName: z.string(),
149
+ variantName: z.string().nullable(),
150
+ sku: z.string().nullable(),
151
+ brand: z.string().nullable(),
152
+ imageUrl: z.string().nullable(),
153
+ quantity: z.number().int().positive(),
154
+ available: z.number().int().nonnegative(),
155
+ allowBackorders: z.boolean(),
156
+ requiresShipping: z.boolean()
157
+ });
158
+ const SizeGuideMeasurementSchema = z.object({
159
+ key: z.string(),
160
+ name: z.string(),
161
+ min: z.number().nullable(),
162
+ max: z.number().nullable(),
163
+ value: z.number().nullable(),
164
+ description: z.string().nullable()
165
+ });
166
+ const SizeGuideRowSchema = z.object({
167
+ label: z.string(),
168
+ sizeKey: z.string(),
169
+ order: z.number().int().nonnegative(),
170
+ measurements: z.array(SizeGuideMeasurementSchema)
171
+ });
172
+ const SizeGuideSchema = z.object({
173
+ id: EntityIdSchema,
174
+ name: z.string(),
175
+ slug: z.string(),
176
+ description: z.string().nullable(),
177
+ imageUrl: z.string().nullable(),
178
+ gender: z.string(),
179
+ measurementType: z.string(),
180
+ unit: z.string(),
181
+ notes: z.string().nullable(),
182
+ rows: z.array(SizeGuideRowSchema)
183
+ });
184
+ const ProductDetailSchema = z.object({
185
+ id: EntityIdSchema,
186
+ name: z.string(),
187
+ slug: z.string(),
188
+ url: z.string(),
189
+ description: z.string(),
190
+ productType: z.string(),
191
+ status: z.string(),
192
+ imageUrl: z.string(),
193
+ price: z.number().nonnegative(),
194
+ compareAtPrice: z.number().nonnegative().nullable(),
195
+ isAvailable: z.boolean(),
196
+ totalInventory: z.number().int().nonnegative(),
197
+ brand: z.string(),
198
+ category: z.string(),
199
+ categoryId: EntityIdSchema.nullable(),
200
+ tags: z.array(z.string()),
201
+ specifications: z.array(SpecItemSchema),
202
+ variants: z.array(VariantItemSchema),
203
+ images: z.array(ProductImageSchema),
204
+ bundleItems: z.array(BundleItemSchema),
205
+ sizeGuide: SizeGuideSchema.nullable(),
206
+ priceTiers: z.array(ProductPriceTierSchema),
207
+ createdAt: z.string().datetime({ offset: true }).nullable(),
208
+ updatedAt: z.string().datetime({ offset: true }).nullable(),
209
+ seller: ProductSellerSchema.nullable(),
210
+ isPreview: z.boolean().default(false),
211
+ template: z.string().nullable().default(null)
212
+ });
213
+ export { BundleItemSchema, FacetItemSchema, ProductDetailSchema, ProductImageSchema, ProductMediaTypeSchema, ProductOptionGroupSchema, ProductPriceTierSchema, ProductSellerSchema, ProductSortSchema, ProductSummariesSchema, ProductSummarySchema, ProductsParamsSchema, ProductsResponseSchema, RelatedProductsParamsSchema, SearchFilterSchema, SizeGuideMeasurementSchema, SizeGuideRowSchema, SizeGuideSchema, SpecItemSchema, SpecificationTypeSchema, VariantItemSchema };
@@ -1,206 +1,19 @@
1
- 'use strict';
2
-
3
- var zod = require('zod');
4
-
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_models_ids = require("./ids.cjs");
3
+ let zod = require("zod");
5
4
  // src/models/search.ts
6
- var EntityIdSchema = zod.z.union([
7
- zod.z.string().uuid(),
8
- zod.z.string().regex(/^\d+$/, "Expected numeric id")
9
- ]);
10
- EntityIdSchema.nullable();
11
- var OptionalEntityIdSchema = EntityIdSchema.optional();
12
- var ProductPublicIdSchema = zod.z.union([
13
- zod.z.string().regex(/^[1-9]\d*$/),
14
- zod.z.number().int().safe().positive()
15
- ]).transform(String);
16
- var ProductSummarySchema = zod.z.object({
17
- id: ProductPublicIdSchema,
18
- name: zod.z.string(),
19
- slug: zod.z.string(),
20
- productType: zod.z.string(),
21
- imageUrl: zod.z.string(),
22
- price: zod.z.number().nonnegative(),
23
- compareAtPrice: zod.z.number().nonnegative().nullable(),
24
- variantCount: zod.z.number().int().nonnegative(),
25
- isAvailable: zod.z.boolean(),
26
- totalInventory: zod.z.number().int().nonnegative(),
27
- bundleItemsCount: zod.z.number().int().nonnegative(),
28
- brand: zod.z.string(),
29
- category: zod.z.string(),
30
- status: zod.z.string(),
31
- collections: zod.z.array(zod.z.string()),
32
- tags: zod.z.array(zod.z.string())
33
- });
34
- zod.z.array(ProductSummarySchema);
35
- var FacetItemSchema = zod.z.object({
36
- value: zod.z.string(),
37
- count: zod.z.number().int().nonnegative(),
38
- label: zod.z.string().nullable(),
39
- selected: zod.z.boolean()
40
- });
41
- var SearchFilterSchema = zod.z.object({
42
- id: zod.z.string(),
43
- label: zod.z.string(),
44
- type: zod.z.enum(["list", "price_range"]),
45
- values: zod.z.array(FacetItemSchema),
46
- min: zod.z.number().nonnegative().nullable(),
47
- max: zod.z.number().nonnegative().nullable(),
48
- selectedMin: zod.z.number().nonnegative().nullable(),
49
- selectedMax: zod.z.number().nonnegative().nullable()
50
- });
51
- zod.z.object({
52
- pageIndex: zod.z.number().int().positive(),
53
- pageSize: zod.z.number().int().positive().max(100),
54
- totalCount: zod.z.number().int().nonnegative(),
55
- totalPages: zod.z.number().int().nonnegative(),
56
- products: zod.z.array(ProductSummarySchema),
57
- filters: zod.z.array(SearchFilterSchema)
58
- });
59
- var ProductSortSchema = zod.z.enum([
60
- "price_asc",
61
- "price_desc",
62
- "name_asc",
63
- "name_desc",
64
- "newest"
65
- ]);
66
- zod.z.object({
67
- page: zod.z.number().int().positive().default(1),
68
- pageSize: zod.z.number().int().positive().max(100).default(24),
69
- sort: ProductSortSchema.optional(),
70
- sellerId: OptionalEntityIdSchema,
71
- search: zod.z.string().optional(),
72
- collection: zod.z.string().optional(),
73
- collections: zod.z.array(zod.z.string()).optional(),
74
- collectionId: ProductPublicIdSchema.optional(),
75
- category: zod.z.string().optional(),
76
- categories: zod.z.array(zod.z.string()).optional(),
77
- brand: zod.z.string().optional(),
78
- brands: zod.z.array(zod.z.string()).optional(),
79
- productType: zod.z.string().optional(),
80
- productTypes: zod.z.array(zod.z.string()).optional(),
81
- tag: zod.z.string().optional(),
82
- tags: zod.z.array(zod.z.string()).optional(),
83
- filters: zod.z.array(zod.z.string()).optional(),
84
- locationId: OptionalEntityIdSchema,
85
- inStock: zod.z.boolean().optional(),
86
- minPrice: zod.z.number().nonnegative().optional(),
87
- maxPrice: zod.z.number().nonnegative().optional()
88
- });
89
- zod.z.object({
90
- sellerId: OptionalEntityIdSchema
91
- });
92
- zod.z.object({
93
- productId: ProductPublicIdSchema,
94
- limit: zod.z.number().int().positive().max(12).default(8),
95
- sellerId: OptionalEntityIdSchema
96
- });
97
- var SpecItemSchema = zod.z.object({
98
- key: zod.z.string(),
99
- name: zod.z.string(),
100
- value: zod.z.string()
101
- });
102
- var ProductImageSchema = zod.z.object({
103
- url: zod.z.string(),
104
- name: zod.z.string(),
105
- order: zod.z.number().int().nonnegative()
106
- });
107
- var VariantItemSchema = zod.z.object({
108
- id: zod.z.string().nullable(),
109
- sku: zod.z.string(),
110
- status: zod.z.string(),
111
- price: zod.z.number().nonnegative(),
112
- compareAtPrice: zod.z.number().nonnegative().nullable(),
113
- quantity: zod.z.number().int().nonnegative(),
114
- options: zod.z.array(SpecItemSchema),
115
- images: zod.z.array(ProductImageSchema)
116
- });
117
- var ProductPriceTierSchema = zod.z.object({
118
- variantId: zod.z.string(),
119
- minQuantity: zod.z.number().int().positive(),
120
- maxQuantity: zod.z.number().int().positive().nullable(),
121
- unitPrice: zod.z.number().nonnegative()
122
- });
123
- var BundleItemSchema = zod.z.object({
124
- productId: ProductPublicIdSchema,
125
- variantId: ProductPublicIdSchema,
126
- productName: zod.z.string(),
127
- variantName: zod.z.string().nullable(),
128
- sku: zod.z.string().nullable(),
129
- brand: zod.z.string().nullable(),
130
- imageUrl: zod.z.string().nullable(),
131
- quantity: zod.z.number().int().positive(),
132
- available: zod.z.number().int().nonnegative(),
133
- allowBackorders: zod.z.boolean(),
134
- requiresShipping: zod.z.boolean()
135
- });
136
- var SizeGuideMeasurementSchema = zod.z.object({
137
- key: zod.z.string(),
138
- name: zod.z.string(),
139
- min: zod.z.number().nullable(),
140
- max: zod.z.number().nullable(),
141
- value: zod.z.number().nullable(),
142
- description: zod.z.string().nullable()
143
- });
144
- var SizeGuideRowSchema = zod.z.object({
145
- label: zod.z.string(),
146
- sizeKey: zod.z.string(),
147
- order: zod.z.number().int().nonnegative(),
148
- measurements: zod.z.array(SizeGuideMeasurementSchema)
149
- });
150
- var SizeGuideSchema = zod.z.object({
151
- id: zod.z.string(),
152
- name: zod.z.string(),
153
- slug: zod.z.string(),
154
- description: zod.z.string().nullable(),
155
- imageUrl: zod.z.string().nullable(),
156
- gender: zod.z.string(),
157
- measurementType: zod.z.string(),
158
- unit: zod.z.string(),
159
- notes: zod.z.string().nullable(),
160
- rows: zod.z.array(SizeGuideRowSchema)
161
- });
162
- zod.z.object({
163
- id: ProductPublicIdSchema,
164
- name: zod.z.string(),
165
- slug: zod.z.string(),
166
- description: zod.z.string(),
167
- productType: zod.z.string(),
168
- status: zod.z.string(),
169
- imageUrl: zod.z.string(),
170
- price: zod.z.number().nonnegative(),
171
- compareAtPrice: zod.z.number().nonnegative().nullable(),
172
- isAvailable: zod.z.boolean(),
173
- totalInventory: zod.z.number().int().nonnegative(),
174
- brand: zod.z.string(),
175
- category: zod.z.string(),
176
- categoryId: ProductPublicIdSchema.nullable(),
177
- tags: zod.z.array(zod.z.string()),
178
- specifications: zod.z.array(SpecItemSchema),
179
- variants: zod.z.array(VariantItemSchema),
180
- images: zod.z.array(ProductImageSchema),
181
- bundleItems: zod.z.array(BundleItemSchema),
182
- sizeGuide: SizeGuideSchema.nullable(),
183
- priceTiers: zod.z.array(ProductPriceTierSchema),
184
- createdAt: zod.z.string().datetime({ offset: true }).nullable(),
185
- updatedAt: zod.z.string().datetime({ offset: true }).nullable()
186
- });
187
-
188
- // src/models/search.ts
189
- var ProductAutocompleteParamsSchema = zod.z.object({
190
- search: zod.z.string().min(2).max(80),
191
- limit: zod.z.number().int().positive().max(20).default(8),
192
- sellerId: OptionalEntityIdSchema
193
- });
194
- var ProductSuggestionSchema = zod.z.object({
195
- id: ProductPublicIdSchema,
196
- name: zod.z.string(),
197
- slug: zod.z.string(),
198
- imageUrl: zod.z.string()
199
- });
200
- var ProductSuggestionsSchema = zod.z.array(ProductSuggestionSchema);
201
-
5
+ const ProductAutocompleteParamsSchema = zod.z.object({
6
+ search: zod.z.string().min(2).max(80),
7
+ limit: zod.z.number().int().positive().max(20).default(8)
8
+ });
9
+ const ProductSuggestionSchema = zod.z.object({
10
+ id: require_models_ids.EntityIdSchema,
11
+ name: zod.z.string(),
12
+ slug: zod.z.string(),
13
+ url: zod.z.string(),
14
+ imageUrl: zod.z.string()
15
+ });
16
+ const ProductSuggestionsSchema = zod.z.array(ProductSuggestionSchema);
202
17
  exports.ProductAutocompleteParamsSchema = ProductAutocompleteParamsSchema;
203
18
  exports.ProductSuggestionSchema = ProductSuggestionSchema;
204
19
  exports.ProductSuggestionsSchema = ProductSuggestionsSchema;
205
- //# sourceMappingURL=search.cjs.map
206
- //# sourceMappingURL=search.cjs.map