ce-storefront 0.3.9 → 0.3.11

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 (208) hide show
  1. package/docs/sdks/auth/README.md +2 -0
  2. package/docs/sdks/carts/README.md +22 -12
  3. package/docs/sdks/cestorefrontuser/README.md +30 -2
  4. package/docs/sdks/checkout/README.md +4 -0
  5. package/esm/funcs/cartsAddItem.js +1 -1
  6. package/esm/funcs/cartsAddItem.js.map +1 -1
  7. package/esm/lib/config.d.ts +2 -2
  8. package/esm/lib/config.js +2 -2
  9. package/esm/lib/config.js.map +1 -1
  10. package/esm/models/components/anonymoususer.d.ts +14 -14
  11. package/esm/models/components/anonymoususer.d.ts.map +1 -1
  12. package/esm/models/components/anonymoususer.js +14 -14
  13. package/esm/models/components/anonymoususer.js.map +1 -1
  14. package/esm/models/components/associatedoption.d.ts +4 -102
  15. package/esm/models/components/associatedoption.d.ts.map +1 -1
  16. package/esm/models/components/associatedoption.js +4 -82
  17. package/esm/models/components/associatedoption.js.map +1 -1
  18. package/esm/models/components/bundleproduct.d.ts +48 -48
  19. package/esm/models/components/bundleproduct.d.ts.map +1 -1
  20. package/esm/models/components/bundleproduct.js +46 -50
  21. package/esm/models/components/bundleproduct.js.map +1 -1
  22. package/esm/models/components/bundleproductdetail.d.ts +66 -66
  23. package/esm/models/components/bundleproductdetail.d.ts.map +1 -1
  24. package/esm/models/components/bundleproductdetail.js +62 -66
  25. package/esm/models/components/bundleproductdetail.js.map +1 -1
  26. package/esm/models/components/coloroption.d.ts +72 -0
  27. package/esm/models/components/coloroption.d.ts.map +1 -0
  28. package/esm/models/components/coloroption.js +62 -0
  29. package/esm/models/components/coloroption.js.map +1 -0
  30. package/esm/models/components/currency.d.ts +6 -6
  31. package/esm/models/components/currency.d.ts.map +1 -1
  32. package/esm/models/components/currency.js +6 -6
  33. package/esm/models/components/currency.js.map +1 -1
  34. package/esm/models/components/index.d.ts +3 -1
  35. package/esm/models/components/index.d.ts.map +1 -1
  36. package/esm/models/components/index.js +3 -1
  37. package/esm/models/components/index.js.map +1 -1
  38. package/esm/models/components/notificationpreferences.d.ts +6 -6
  39. package/esm/models/components/notificationpreferences.d.ts.map +1 -1
  40. package/esm/models/components/notificationpreferences.js +6 -6
  41. package/esm/models/components/notificationpreferences.js.map +1 -1
  42. package/esm/models/components/pagination.d.ts +8 -8
  43. package/esm/models/components/pagination.d.ts.map +1 -1
  44. package/esm/models/components/pagination.js +8 -8
  45. package/esm/models/components/pagination.js.map +1 -1
  46. package/esm/models/components/productattribute.d.ts +2 -2
  47. package/esm/models/components/productattribute.d.ts.map +1 -1
  48. package/esm/models/components/productattribute.js +2 -2
  49. package/esm/models/components/productattribute.js.map +1 -1
  50. package/esm/models/components/productcategory.d.ts +20 -20
  51. package/esm/models/components/productcategory.d.ts.map +1 -1
  52. package/esm/models/components/productcategory.js +20 -20
  53. package/esm/models/components/productcategory.js.map +1 -1
  54. package/esm/models/components/productdetail.d.ts +2 -14
  55. package/esm/models/components/productdetail.d.ts.map +1 -1
  56. package/esm/models/components/productdetail.js +4 -18
  57. package/esm/models/components/productdetail.js.map +1 -1
  58. package/esm/models/components/productimage.d.ts +14 -14
  59. package/esm/models/components/productimage.d.ts.map +1 -1
  60. package/esm/models/components/productimage.js +14 -14
  61. package/esm/models/components/productimage.js.map +1 -1
  62. package/esm/models/components/productpricing.d.ts +4 -4
  63. package/esm/models/components/productpricing.d.ts.map +1 -1
  64. package/esm/models/components/productpricing.js +4 -4
  65. package/esm/models/components/productpricing.js.map +1 -1
  66. package/esm/models/components/productshipping.d.ts +12 -12
  67. package/esm/models/components/productshipping.d.ts.map +1 -1
  68. package/esm/models/components/productshipping.js +12 -12
  69. package/esm/models/components/productshipping.js.map +1 -1
  70. package/esm/models/components/productvideo.d.ts +16 -16
  71. package/esm/models/components/productvideo.d.ts.map +1 -1
  72. package/esm/models/components/productvideo.js +16 -16
  73. package/esm/models/components/productvideo.js.map +1 -1
  74. package/esm/models/components/seo.d.ts +8 -8
  75. package/esm/models/components/seo.d.ts.map +1 -1
  76. package/esm/models/components/seo.js +8 -8
  77. package/esm/models/components/seo.js.map +1 -1
  78. package/esm/models/components/singleproduct.d.ts +18 -18
  79. package/esm/models/components/singleproduct.d.ts.map +1 -1
  80. package/esm/models/components/singleproduct.js +18 -18
  81. package/esm/models/components/singleproduct.js.map +1 -1
  82. package/esm/models/components/singleproductdetail.d.ts +36 -36
  83. package/esm/models/components/singleproductdetail.d.ts.map +1 -1
  84. package/esm/models/components/singleproductdetail.js +34 -34
  85. package/esm/models/components/singleproductdetail.js.map +1 -1
  86. package/esm/models/components/singleselectoption.d.ts +42 -0
  87. package/esm/models/components/singleselectoption.d.ts.map +1 -0
  88. package/esm/models/components/singleselectoption.js +35 -0
  89. package/esm/models/components/singleselectoption.js.map +1 -0
  90. package/esm/models/components/sku.d.ts +30 -30
  91. package/esm/models/components/sku.d.ts.map +1 -1
  92. package/esm/models/components/sku.js +28 -30
  93. package/esm/models/components/sku.js.map +1 -1
  94. package/esm/models/components/updatecartitem.d.ts +45 -0
  95. package/esm/models/components/updatecartitem.d.ts.map +1 -0
  96. package/esm/models/components/updatecartitem.js +46 -0
  97. package/esm/models/components/updatecartitem.js.map +1 -0
  98. package/esm/models/components/user.d.ts +116 -26
  99. package/esm/models/components/user.d.ts.map +1 -1
  100. package/esm/models/components/user.js +104 -30
  101. package/esm/models/components/user.js.map +1 -1
  102. package/esm/models/components/variant.d.ts +15 -12
  103. package/esm/models/components/variant.d.ts.map +1 -1
  104. package/esm/models/components/variant.js +12 -12
  105. package/esm/models/components/variant.js.map +1 -1
  106. package/esm/models/components/variantdetail.d.ts +41 -38
  107. package/esm/models/components/variantdetail.d.ts.map +1 -1
  108. package/esm/models/components/variantdetail.js +36 -36
  109. package/esm/models/components/variantdetail.js.map +1 -1
  110. package/esm/models/components/variantoption.d.ts +34 -26
  111. package/esm/models/components/variantoption.d.ts.map +1 -1
  112. package/esm/models/components/variantoption.js +32 -45
  113. package/esm/models/components/variantoption.js.map +1 -1
  114. package/esm/models/operations/getcrosssell.d.ts +6 -6
  115. package/esm/models/operations/getcrosssell.d.ts.map +1 -1
  116. package/esm/models/operations/getcrosssell.js +6 -6
  117. package/esm/models/operations/getcrosssell.js.map +1 -1
  118. package/esm/models/operations/getproductscategories.d.ts +4 -4
  119. package/esm/models/operations/getproductscategories.d.ts.map +1 -1
  120. package/esm/models/operations/getproductscategories.js +4 -4
  121. package/esm/models/operations/getproductscategories.js.map +1 -1
  122. package/esm/models/operations/getproductsidreviews.d.ts +4 -4
  123. package/esm/models/operations/getproductsidreviews.d.ts.map +1 -1
  124. package/esm/models/operations/getproductsidreviews.js +4 -4
  125. package/esm/models/operations/getproductsidreviews.js.map +1 -1
  126. package/esm/models/operations/getsimilar.d.ts +6 -6
  127. package/esm/models/operations/getsimilar.d.ts.map +1 -1
  128. package/esm/models/operations/getsimilar.js +6 -6
  129. package/esm/models/operations/getsimilar.js.map +1 -1
  130. package/esm/models/operations/getskus.d.ts +4 -4
  131. package/esm/models/operations/getskus.d.ts.map +1 -1
  132. package/esm/models/operations/getskus.js +4 -4
  133. package/esm/models/operations/getskus.js.map +1 -1
  134. package/esm/models/operations/getupsell.d.ts +6 -6
  135. package/esm/models/operations/getupsell.d.ts.map +1 -1
  136. package/esm/models/operations/getupsell.js +6 -6
  137. package/esm/models/operations/getupsell.js.map +1 -1
  138. package/esm/models/operations/postauthanonymous.d.ts +12 -12
  139. package/esm/models/operations/postauthanonymous.d.ts.map +1 -1
  140. package/esm/models/operations/postauthanonymous.js +12 -12
  141. package/esm/models/operations/postauthanonymous.js.map +1 -1
  142. package/esm/models/operations/postauthgenerateotp.d.ts +2 -2
  143. package/esm/models/operations/postauthgenerateotp.d.ts.map +1 -1
  144. package/esm/models/operations/postauthgenerateotp.js +2 -2
  145. package/esm/models/operations/postauthgenerateotp.js.map +1 -1
  146. package/esm/models/operations/postcartaddress.d.ts +8 -8
  147. package/esm/models/operations/postcartaddress.d.ts.map +1 -1
  148. package/esm/models/operations/postcartaddress.js +8 -12
  149. package/esm/models/operations/postcartaddress.js.map +1 -1
  150. package/esm/models/operations/postcartitemid.d.ts +2 -35
  151. package/esm/models/operations/postcartitemid.d.ts.map +1 -1
  152. package/esm/models/operations/postcartitemid.js +4 -49
  153. package/esm/models/operations/postcartitemid.js.map +1 -1
  154. package/esm/models/operations/postcartsid.d.ts +5 -31
  155. package/esm/models/operations/postcartsid.d.ts.map +1 -1
  156. package/esm/models/operations/postcartsid.js +2 -41
  157. package/esm/models/operations/postcartsid.js.map +1 -1
  158. package/esm/models/operations/postproductsidreviews.d.ts +4 -4
  159. package/esm/models/operations/postproductsidreviews.d.ts.map +1 -1
  160. package/esm/models/operations/postproductsidreviews.js +4 -4
  161. package/esm/models/operations/postproductsidreviews.js.map +1 -1
  162. package/jsr.json +1 -1
  163. package/package.json +1 -1
  164. package/src/funcs/cartsAddItem.ts +1 -1
  165. package/src/lib/config.ts +2 -2
  166. package/src/models/components/anonymoususer.ts +28 -28
  167. package/src/models/components/associatedoption.ts +19 -164
  168. package/src/models/components/bundleproduct.ts +92 -99
  169. package/src/models/components/bundleproductdetail.ts +124 -131
  170. package/src/models/components/coloroption.ts +144 -0
  171. package/src/models/components/currency.ts +12 -12
  172. package/src/models/components/index.ts +3 -1
  173. package/src/models/components/notificationpreferences.ts +12 -12
  174. package/src/models/components/pagination.ts +16 -16
  175. package/src/models/components/productattribute.ts +4 -4
  176. package/src/models/components/productcategory.ts +40 -40
  177. package/src/models/components/productdetail.ts +7 -37
  178. package/src/models/components/productimage.ts +28 -28
  179. package/src/models/components/productpricing.ts +8 -8
  180. package/src/models/components/productshipping.ts +24 -24
  181. package/src/models/components/productvideo.ts +32 -32
  182. package/src/models/components/seo.ts +16 -16
  183. package/src/models/components/singleproduct.ts +36 -36
  184. package/src/models/components/singleproductdetail.ts +68 -68
  185. package/src/models/components/singleselectoption.ts +83 -0
  186. package/src/models/components/sku.ts +56 -61
  187. package/src/models/components/updatecartitem.ts +93 -0
  188. package/src/models/components/user.ts +199 -56
  189. package/src/models/components/variant.ts +27 -24
  190. package/src/models/components/variantdetail.ts +75 -72
  191. package/src/models/components/variantoption.ts +54 -61
  192. package/src/models/operations/getcrosssell.ts +12 -12
  193. package/src/models/operations/getproductscategories.ts +8 -8
  194. package/src/models/operations/getproductsidreviews.ts +8 -8
  195. package/src/models/operations/getsimilar.ts +12 -12
  196. package/src/models/operations/getskus.ts +8 -8
  197. package/src/models/operations/getupsell.ts +12 -12
  198. package/src/models/operations/postauthanonymous.ts +24 -24
  199. package/src/models/operations/postauthgenerateotp.ts +4 -4
  200. package/src/models/operations/postcartaddress.ts +16 -23
  201. package/src/models/operations/postcartitemid.ts +6 -94
  202. package/src/models/operations/postcartsid.ts +7 -72
  203. package/src/models/operations/postproductsidreviews.ts +8 -8
  204. package/esm/models/components/userinput.d.ts +0 -63
  205. package/esm/models/components/userinput.d.ts.map +0 -1
  206. package/esm/models/components/userinput.js +0 -61
  207. package/esm/models/components/userinput.js.map +0 -1
  208. package/src/models/components/userinput.ts +0 -130
@@ -63,10 +63,10 @@ export type SingleProduct = {
63
63
  * The ULID of the product
64
64
  */
65
65
  id: string;
66
- sku?: string | undefined;
66
+ sku: string | null;
67
67
  name: string;
68
- slug: string;
69
- shortDescription?: string | undefined;
68
+ slug: string | null;
69
+ shortDescription: string | null;
70
70
  productType: ProductType;
71
71
  active?: boolean | undefined;
72
72
  /**
@@ -89,11 +89,11 @@ export type SingleProduct = {
89
89
  * Indicates whether the product has variants
90
90
  */
91
91
  hasVariant?: boolean | undefined;
92
- tags?: Array<string> | null | undefined;
93
- categoryIds?: Array<string> | undefined;
94
- reviewsRatingSum?: number | undefined;
95
- reviewsCount?: number | undefined;
96
- attributes?: Array<ProductAttribute> | undefined;
92
+ tags: Array<string> | null;
93
+ categoryIds: Array<string>;
94
+ reviewsRatingSum: number;
95
+ reviewsCount: number;
96
+ attributes: Array<ProductAttribute>;
97
97
  pricing: ProductPricing;
98
98
  /**
99
99
  * this will be used if has_variant is true, to auto set default values.
@@ -102,7 +102,7 @@ export type SingleProduct = {
102
102
  promotion: ProductPromotion | null;
103
103
  images: Array<ProductImage>;
104
104
  subscription: Array<ProductSubscription>;
105
- variants?: Array<Variant> | undefined;
105
+ variants: Array<Variant>;
106
106
  };
107
107
 
108
108
  /** @internal */
@@ -131,10 +131,10 @@ export const SingleProduct$inboundSchema: z.ZodType<
131
131
  unknown
132
132
  > = z.object({
133
133
  id: z.string(),
134
- sku: z.string().optional(),
134
+ sku: z.nullable(z.string()),
135
135
  name: z.string(),
136
- slug: z.string(),
137
- short_description: z.string().optional(),
136
+ slug: z.nullable(z.string()),
137
+ short_description: z.nullable(z.string()),
138
138
  product_type: ProductType$inboundSchema,
139
139
  active: z.boolean().default(true),
140
140
  stock_available: z.boolean().default(true),
@@ -142,17 +142,17 @@ export const SingleProduct$inboundSchema: z.ZodType<
142
142
  on_subscription: z.boolean().default(false),
143
143
  on_promotion: z.boolean().default(false),
144
144
  has_variant: z.boolean().default(false),
145
- tags: z.nullable(z.array(z.string())).optional(),
146
- category_ids: z.array(z.string()).optional(),
147
- reviews_rating_sum: z.number().optional(),
148
- reviews_count: z.number().int().optional(),
149
- attributes: z.array(ProductAttribute$inboundSchema).optional(),
145
+ tags: z.nullable(z.array(z.string())),
146
+ category_ids: z.array(z.string()),
147
+ reviews_rating_sum: z.number(),
148
+ reviews_count: z.number().int(),
149
+ attributes: z.array(ProductAttribute$inboundSchema),
150
150
  pricing: ProductPricing$inboundSchema,
151
151
  variant_options: z.nullable(z.array(VariantOption$inboundSchema)),
152
152
  promotion: z.nullable(ProductPromotion$inboundSchema),
153
153
  images: z.array(ProductImage$inboundSchema),
154
154
  subscription: z.array(ProductSubscription$inboundSchema),
155
- variants: z.array(Variant$inboundSchema).optional(),
155
+ variants: z.array(Variant$inboundSchema),
156
156
  }).transform((v) => {
157
157
  return remap$(v, {
158
158
  "short_description": "shortDescription",
@@ -172,10 +172,10 @@ export const SingleProduct$inboundSchema: z.ZodType<
172
172
  /** @internal */
173
173
  export type SingleProduct$Outbound = {
174
174
  id: string;
175
- sku?: string | undefined;
175
+ sku: string | null;
176
176
  name: string;
177
- slug: string;
178
- short_description?: string | undefined;
177
+ slug: string | null;
178
+ short_description: string | null;
179
179
  product_type: string;
180
180
  active: boolean;
181
181
  stock_available: boolean;
@@ -183,17 +183,17 @@ export type SingleProduct$Outbound = {
183
183
  on_subscription: boolean;
184
184
  on_promotion: boolean;
185
185
  has_variant: boolean;
186
- tags?: Array<string> | null | undefined;
187
- category_ids?: Array<string> | undefined;
188
- reviews_rating_sum?: number | undefined;
189
- reviews_count?: number | undefined;
190
- attributes?: Array<ProductAttribute$Outbound> | undefined;
186
+ tags: Array<string> | null;
187
+ category_ids: Array<string>;
188
+ reviews_rating_sum: number;
189
+ reviews_count: number;
190
+ attributes: Array<ProductAttribute$Outbound>;
191
191
  pricing: ProductPricing$Outbound;
192
192
  variant_options: Array<VariantOption$Outbound> | null;
193
193
  promotion: ProductPromotion$Outbound | null;
194
194
  images: Array<ProductImage$Outbound>;
195
195
  subscription: Array<ProductSubscription$Outbound>;
196
- variants?: Array<Variant$Outbound> | undefined;
196
+ variants: Array<Variant$Outbound>;
197
197
  };
198
198
 
199
199
  /** @internal */
@@ -203,10 +203,10 @@ export const SingleProduct$outboundSchema: z.ZodType<
203
203
  SingleProduct
204
204
  > = z.object({
205
205
  id: z.string(),
206
- sku: z.string().optional(),
206
+ sku: z.nullable(z.string()),
207
207
  name: z.string(),
208
- slug: z.string(),
209
- shortDescription: z.string().optional(),
208
+ slug: z.nullable(z.string()),
209
+ shortDescription: z.nullable(z.string()),
210
210
  productType: ProductType$outboundSchema,
211
211
  active: z.boolean().default(true),
212
212
  stockAvailable: z.boolean().default(true),
@@ -214,17 +214,17 @@ export const SingleProduct$outboundSchema: z.ZodType<
214
214
  onSubscription: z.boolean().default(false),
215
215
  onPromotion: z.boolean().default(false),
216
216
  hasVariant: z.boolean().default(false),
217
- tags: z.nullable(z.array(z.string())).optional(),
218
- categoryIds: z.array(z.string()).optional(),
219
- reviewsRatingSum: z.number().optional(),
220
- reviewsCount: z.number().int().optional(),
221
- attributes: z.array(ProductAttribute$outboundSchema).optional(),
217
+ tags: z.nullable(z.array(z.string())),
218
+ categoryIds: z.array(z.string()),
219
+ reviewsRatingSum: z.number(),
220
+ reviewsCount: z.number().int(),
221
+ attributes: z.array(ProductAttribute$outboundSchema),
222
222
  pricing: ProductPricing$outboundSchema,
223
223
  variantOptions: z.nullable(z.array(VariantOption$outboundSchema)),
224
224
  promotion: z.nullable(ProductPromotion$outboundSchema),
225
225
  images: z.array(ProductImage$outboundSchema),
226
226
  subscription: z.array(ProductSubscription$outboundSchema),
227
- variants: z.array(Variant$outboundSchema).optional(),
227
+ variants: z.array(Variant$outboundSchema),
228
228
  }).transform((v) => {
229
229
  return remap$(v, {
230
230
  shortDescription: "short_description",
@@ -83,10 +83,10 @@ export type SingleProductDetail = {
83
83
  * The ULID of the product
84
84
  */
85
85
  id: string;
86
- sku?: string | undefined;
86
+ sku: string | null;
87
87
  name: string;
88
- slug: string;
89
- shortDescription?: string | undefined;
88
+ slug: string | null;
89
+ shortDescription: string | null;
90
90
  productType: SingleProductDetailProductType;
91
91
  active?: boolean | undefined;
92
92
  /**
@@ -109,11 +109,11 @@ export type SingleProductDetail = {
109
109
  * Indicates whether the product has variants
110
110
  */
111
111
  hasVariant?: boolean | undefined;
112
- tags?: Array<string> | null | undefined;
113
- categoryIds?: Array<string> | undefined;
114
- reviewsRatingSum?: number | undefined;
115
- reviewsCount?: number | undefined;
116
- attributes?: Array<ProductAttribute> | undefined;
112
+ tags: Array<string> | null;
113
+ categoryIds: Array<string>;
114
+ reviewsRatingSum: number;
115
+ reviewsCount: number;
116
+ attributes: Array<ProductAttribute>;
117
117
  pricing: ProductPricing;
118
118
  /**
119
119
  * this will be used if has_variant is true, to auto set default values.
@@ -122,21 +122,21 @@ export type SingleProductDetail = {
122
122
  promotion: ProductPromotion | null;
123
123
  images: Array<ProductImage>;
124
124
  subscription: Array<ProductSubscription>;
125
- variants?: Array<Variant> | undefined;
126
- description?: string | undefined;
127
- hsnCode?: string | undefined;
128
- videos?: Array<ProductVideo> | undefined;
129
- shipping?: ProductShipping | null | undefined;
125
+ variants: Array<Variant>;
126
+ description: string | null;
127
+ hsnCode: string | null;
128
+ videos: Array<ProductVideo>;
129
+ shipping: ProductShipping | null;
130
130
  /**
131
131
  * An array of product ULIDs
132
132
  */
133
- upsellingProductIds?: Array<string> | undefined;
133
+ upsellingProductIds: Array<string>;
134
134
  /**
135
135
  * An array of product ULIDs
136
136
  */
137
- crosssellingProductIds?: Array<string> | undefined;
138
- seo?: Seo | undefined;
139
- metadata?: { [k: string]: string } | undefined;
137
+ crosssellingProductIds: Array<string>;
138
+ seo: Seo;
139
+ metadata: { [k: string]: string };
140
140
  };
141
141
 
142
142
  /** @internal */
@@ -167,10 +167,10 @@ export const SingleProductDetail$inboundSchema: z.ZodType<
167
167
  unknown
168
168
  > = z.object({
169
169
  id: z.string(),
170
- sku: z.string().optional(),
170
+ sku: z.nullable(z.string()),
171
171
  name: z.string(),
172
- slug: z.string(),
173
- short_description: z.string().optional(),
172
+ slug: z.nullable(z.string()),
173
+ short_description: z.nullable(z.string()),
174
174
  product_type: SingleProductDetailProductType$inboundSchema,
175
175
  active: z.boolean().default(true),
176
176
  stock_available: z.boolean().default(true),
@@ -178,25 +178,25 @@ export const SingleProductDetail$inboundSchema: z.ZodType<
178
178
  on_subscription: z.boolean().default(false),
179
179
  on_promotion: z.boolean().default(false),
180
180
  has_variant: z.boolean().default(false),
181
- tags: z.nullable(z.array(z.string())).optional(),
182
- category_ids: z.array(z.string()).optional(),
183
- reviews_rating_sum: z.number().optional(),
184
- reviews_count: z.number().int().optional(),
185
- attributes: z.array(ProductAttribute$inboundSchema).optional(),
181
+ tags: z.nullable(z.array(z.string())),
182
+ category_ids: z.array(z.string()),
183
+ reviews_rating_sum: z.number(),
184
+ reviews_count: z.number().int(),
185
+ attributes: z.array(ProductAttribute$inboundSchema),
186
186
  pricing: ProductPricing$inboundSchema,
187
187
  variant_options: z.nullable(z.array(VariantOption$inboundSchema)),
188
188
  promotion: z.nullable(ProductPromotion$inboundSchema),
189
189
  images: z.array(ProductImage$inboundSchema),
190
190
  subscription: z.array(ProductSubscription$inboundSchema),
191
- variants: z.array(Variant$inboundSchema).optional(),
192
- description: z.string().optional(),
193
- hsn_code: z.string().optional(),
194
- videos: z.array(ProductVideo$inboundSchema).optional(),
195
- shipping: z.nullable(ProductShipping$inboundSchema).optional(),
196
- upselling_product_ids: z.array(z.string()).optional(),
197
- crossselling_product_ids: z.array(z.string()).optional(),
198
- seo: Seo$inboundSchema.optional(),
199
- metadata: z.record(z.string()).optional(),
191
+ variants: z.array(Variant$inboundSchema),
192
+ description: z.nullable(z.string()),
193
+ hsn_code: z.nullable(z.string()),
194
+ videos: z.array(ProductVideo$inboundSchema),
195
+ shipping: z.nullable(ProductShipping$inboundSchema),
196
+ upselling_product_ids: z.array(z.string()),
197
+ crossselling_product_ids: z.array(z.string()),
198
+ seo: Seo$inboundSchema,
199
+ metadata: z.record(z.string()),
200
200
  }).transform((v) => {
201
201
  return remap$(v, {
202
202
  "short_description": "shortDescription",
@@ -219,10 +219,10 @@ export const SingleProductDetail$inboundSchema: z.ZodType<
219
219
  /** @internal */
220
220
  export type SingleProductDetail$Outbound = {
221
221
  id: string;
222
- sku?: string | undefined;
222
+ sku: string | null;
223
223
  name: string;
224
- slug: string;
225
- short_description?: string | undefined;
224
+ slug: string | null;
225
+ short_description: string | null;
226
226
  product_type: string;
227
227
  active: boolean;
228
228
  stock_available: boolean;
@@ -230,25 +230,25 @@ export type SingleProductDetail$Outbound = {
230
230
  on_subscription: boolean;
231
231
  on_promotion: boolean;
232
232
  has_variant: boolean;
233
- tags?: Array<string> | null | undefined;
234
- category_ids?: Array<string> | undefined;
235
- reviews_rating_sum?: number | undefined;
236
- reviews_count?: number | undefined;
237
- attributes?: Array<ProductAttribute$Outbound> | undefined;
233
+ tags: Array<string> | null;
234
+ category_ids: Array<string>;
235
+ reviews_rating_sum: number;
236
+ reviews_count: number;
237
+ attributes: Array<ProductAttribute$Outbound>;
238
238
  pricing: ProductPricing$Outbound;
239
239
  variant_options: Array<VariantOption$Outbound> | null;
240
240
  promotion: ProductPromotion$Outbound | null;
241
241
  images: Array<ProductImage$Outbound>;
242
242
  subscription: Array<ProductSubscription$Outbound>;
243
- variants?: Array<Variant$Outbound> | undefined;
244
- description?: string | undefined;
245
- hsn_code?: string | undefined;
246
- videos?: Array<ProductVideo$Outbound> | undefined;
247
- shipping?: ProductShipping$Outbound | null | undefined;
248
- upselling_product_ids?: Array<string> | undefined;
249
- crossselling_product_ids?: Array<string> | undefined;
250
- seo?: Seo$Outbound | undefined;
251
- metadata?: { [k: string]: string } | undefined;
243
+ variants: Array<Variant$Outbound>;
244
+ description: string | null;
245
+ hsn_code: string | null;
246
+ videos: Array<ProductVideo$Outbound>;
247
+ shipping: ProductShipping$Outbound | null;
248
+ upselling_product_ids: Array<string>;
249
+ crossselling_product_ids: Array<string>;
250
+ seo: Seo$Outbound;
251
+ metadata: { [k: string]: string };
252
252
  };
253
253
 
254
254
  /** @internal */
@@ -258,10 +258,10 @@ export const SingleProductDetail$outboundSchema: z.ZodType<
258
258
  SingleProductDetail
259
259
  > = z.object({
260
260
  id: z.string(),
261
- sku: z.string().optional(),
261
+ sku: z.nullable(z.string()),
262
262
  name: z.string(),
263
- slug: z.string(),
264
- shortDescription: z.string().optional(),
263
+ slug: z.nullable(z.string()),
264
+ shortDescription: z.nullable(z.string()),
265
265
  productType: SingleProductDetailProductType$outboundSchema,
266
266
  active: z.boolean().default(true),
267
267
  stockAvailable: z.boolean().default(true),
@@ -269,25 +269,25 @@ export const SingleProductDetail$outboundSchema: z.ZodType<
269
269
  onSubscription: z.boolean().default(false),
270
270
  onPromotion: z.boolean().default(false),
271
271
  hasVariant: z.boolean().default(false),
272
- tags: z.nullable(z.array(z.string())).optional(),
273
- categoryIds: z.array(z.string()).optional(),
274
- reviewsRatingSum: z.number().optional(),
275
- reviewsCount: z.number().int().optional(),
276
- attributes: z.array(ProductAttribute$outboundSchema).optional(),
272
+ tags: z.nullable(z.array(z.string())),
273
+ categoryIds: z.array(z.string()),
274
+ reviewsRatingSum: z.number(),
275
+ reviewsCount: z.number().int(),
276
+ attributes: z.array(ProductAttribute$outboundSchema),
277
277
  pricing: ProductPricing$outboundSchema,
278
278
  variantOptions: z.nullable(z.array(VariantOption$outboundSchema)),
279
279
  promotion: z.nullable(ProductPromotion$outboundSchema),
280
280
  images: z.array(ProductImage$outboundSchema),
281
281
  subscription: z.array(ProductSubscription$outboundSchema),
282
- variants: z.array(Variant$outboundSchema).optional(),
283
- description: z.string().optional(),
284
- hsnCode: z.string().optional(),
285
- videos: z.array(ProductVideo$outboundSchema).optional(),
286
- shipping: z.nullable(ProductShipping$outboundSchema).optional(),
287
- upsellingProductIds: z.array(z.string()).optional(),
288
- crosssellingProductIds: z.array(z.string()).optional(),
289
- seo: Seo$outboundSchema.optional(),
290
- metadata: z.record(z.string()).optional(),
282
+ variants: z.array(Variant$outboundSchema),
283
+ description: z.nullable(z.string()),
284
+ hsnCode: z.nullable(z.string()),
285
+ videos: z.array(ProductVideo$outboundSchema),
286
+ shipping: z.nullable(ProductShipping$outboundSchema),
287
+ upsellingProductIds: z.array(z.string()),
288
+ crosssellingProductIds: z.array(z.string()),
289
+ seo: Seo$outboundSchema,
290
+ metadata: z.record(z.string()),
291
291
  }).transform((v) => {
292
292
  return remap$(v, {
293
293
  shortDescription: "short_description",
@@ -0,0 +1,83 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod";
6
+ import { safeParse } from "../../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../../types/fp.js";
8
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
9
+
10
+ export type SingleSelectOption = {
11
+ /**
12
+ * The name of the associated option.
13
+ */
14
+ name: string;
15
+ /**
16
+ * The type of the associated option.
17
+ */
18
+ type?: "single-select" | undefined;
19
+ /**
20
+ * The value of the associated option
21
+ */
22
+ value: string;
23
+ };
24
+
25
+ /** @internal */
26
+ export const SingleSelectOption$inboundSchema: z.ZodType<
27
+ SingleSelectOption,
28
+ z.ZodTypeDef,
29
+ unknown
30
+ > = z.object({
31
+ name: z.string(),
32
+ type: z.literal("single-select").optional(),
33
+ value: z.string(),
34
+ });
35
+
36
+ /** @internal */
37
+ export type SingleSelectOption$Outbound = {
38
+ name: string;
39
+ type: "single-select";
40
+ value: string;
41
+ };
42
+
43
+ /** @internal */
44
+ export const SingleSelectOption$outboundSchema: z.ZodType<
45
+ SingleSelectOption$Outbound,
46
+ z.ZodTypeDef,
47
+ SingleSelectOption
48
+ > = z.object({
49
+ name: z.string(),
50
+ type: z.literal("single-select").default("single-select" as const),
51
+ value: z.string(),
52
+ });
53
+
54
+ /**
55
+ * @internal
56
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
57
+ */
58
+ export namespace SingleSelectOption$ {
59
+ /** @deprecated use `SingleSelectOption$inboundSchema` instead. */
60
+ export const inboundSchema = SingleSelectOption$inboundSchema;
61
+ /** @deprecated use `SingleSelectOption$outboundSchema` instead. */
62
+ export const outboundSchema = SingleSelectOption$outboundSchema;
63
+ /** @deprecated use `SingleSelectOption$Outbound` instead. */
64
+ export type Outbound = SingleSelectOption$Outbound;
65
+ }
66
+
67
+ export function singleSelectOptionToJSON(
68
+ singleSelectOption: SingleSelectOption,
69
+ ): string {
70
+ return JSON.stringify(
71
+ SingleSelectOption$outboundSchema.parse(singleSelectOption),
72
+ );
73
+ }
74
+
75
+ export function singleSelectOptionFromJSON(
76
+ jsonString: string,
77
+ ): SafeParseResult<SingleSelectOption, SDKValidationError> {
78
+ return safeParse(
79
+ jsonString,
80
+ (x) => SingleSelectOption$inboundSchema.parse(JSON.parse(x)),
81
+ `Failed to parse 'SingleSelectOption' from JSON`,
82
+ );
83
+ }
@@ -54,13 +54,13 @@ export type SKUProductType = ClosedEnum<typeof SKUProductType>;
54
54
 
55
55
  export type Sku = {
56
56
  productId: string;
57
- variantId?: string | null | undefined;
57
+ variantId: string | null;
58
58
  sku: string;
59
- slug?: string | undefined;
59
+ slug: string | null;
60
60
  productName: string;
61
- variantName?: string | null | undefined;
61
+ variantName: string | null;
62
62
  productType: SKUProductType;
63
- shortDescription?: string | undefined;
63
+ shortDescription: string | null;
64
64
  active?: boolean | undefined;
65
65
  stockAvailable?: boolean | undefined;
66
66
  /**
@@ -69,16 +69,16 @@ export type Sku = {
69
69
  onOffer?: boolean | undefined;
70
70
  onSubscription?: boolean | undefined;
71
71
  onPromotion?: boolean | undefined;
72
- categoryIds?: Array<string> | undefined;
73
- tags?: Array<string> | undefined;
74
- reviewsCount?: number | undefined;
75
- reviewsRatingSum?: number | undefined;
76
- attributes?: Array<ProductAttribute> | undefined;
77
- images?: Array<ProductImage> | undefined;
78
- pricing?: ProductPricing | undefined;
79
- promotion?: ProductPromotion | null | undefined;
80
- subscription?: Array<ProductSubscription> | undefined;
81
- associatedOptions?: { [k: string]: AssociatedOption } | null | undefined;
72
+ categoryIds: Array<string>;
73
+ tags: Array<string> | null;
74
+ reviewsCount: number;
75
+ reviewsRatingSum: number | null;
76
+ attributes: Array<ProductAttribute>;
77
+ images: Array<ProductImage>;
78
+ pricing: ProductPricing;
79
+ promotion: ProductPromotion | null;
80
+ subscription: Array<ProductSubscription>;
81
+ associatedOptions: { [k: string]: AssociatedOption } | null;
82
82
  };
83
83
 
84
84
  /** @internal */
@@ -106,29 +106,28 @@ export namespace SKUProductType$ {
106
106
  export const Sku$inboundSchema: z.ZodType<Sku, z.ZodTypeDef, unknown> = z
107
107
  .object({
108
108
  product_id: z.string(),
109
- variant_id: z.nullable(z.string()).optional(),
109
+ variant_id: z.nullable(z.string()),
110
110
  sku: z.string(),
111
- slug: z.string().optional(),
111
+ slug: z.nullable(z.string()),
112
112
  product_name: z.string(),
113
- variant_name: z.nullable(z.string()).optional(),
113
+ variant_name: z.nullable(z.string()),
114
114
  product_type: SKUProductType$inboundSchema,
115
- short_description: z.string().optional(),
115
+ short_description: z.nullable(z.string()),
116
116
  active: z.boolean().default(true),
117
117
  stock_available: z.boolean().default(true),
118
118
  on_offer: z.boolean().default(false),
119
119
  on_subscription: z.boolean().default(false),
120
120
  on_promotion: z.boolean().default(false),
121
- category_ids: z.array(z.string()).optional(),
122
- tags: z.array(z.string()).optional(),
123
- reviews_count: z.number().int().optional(),
124
- reviews_rating_sum: z.number().optional(),
125
- attributes: z.array(ProductAttribute$inboundSchema).optional(),
126
- images: z.array(ProductImage$inboundSchema).optional(),
127
- pricing: ProductPricing$inboundSchema.optional(),
128
- promotion: z.nullable(ProductPromotion$inboundSchema).optional(),
129
- subscription: z.array(ProductSubscription$inboundSchema).optional(),
130
- associated_options: z.nullable(z.record(AssociatedOption$inboundSchema))
131
- .optional(),
121
+ category_ids: z.array(z.string()),
122
+ tags: z.nullable(z.array(z.string())),
123
+ reviews_count: z.number().int(),
124
+ reviews_rating_sum: z.nullable(z.number()),
125
+ attributes: z.array(ProductAttribute$inboundSchema),
126
+ images: z.array(ProductImage$inboundSchema),
127
+ pricing: ProductPricing$inboundSchema,
128
+ promotion: z.nullable(ProductPromotion$inboundSchema),
129
+ subscription: z.array(ProductSubscription$inboundSchema),
130
+ associated_options: z.nullable(z.record(AssociatedOption$inboundSchema)),
132
131
  }).transform((v) => {
133
132
  return remap$(v, {
134
133
  "product_id": "productId",
@@ -151,60 +150,56 @@ export const Sku$inboundSchema: z.ZodType<Sku, z.ZodTypeDef, unknown> = z
151
150
  /** @internal */
152
151
  export type Sku$Outbound = {
153
152
  product_id: string;
154
- variant_id?: string | null | undefined;
153
+ variant_id: string | null;
155
154
  sku: string;
156
- slug?: string | undefined;
155
+ slug: string | null;
157
156
  product_name: string;
158
- variant_name?: string | null | undefined;
157
+ variant_name: string | null;
159
158
  product_type: string;
160
- short_description?: string | undefined;
159
+ short_description: string | null;
161
160
  active: boolean;
162
161
  stock_available: boolean;
163
162
  on_offer: boolean;
164
163
  on_subscription: boolean;
165
164
  on_promotion: boolean;
166
- category_ids?: Array<string> | undefined;
167
- tags?: Array<string> | undefined;
168
- reviews_count?: number | undefined;
169
- reviews_rating_sum?: number | undefined;
170
- attributes?: Array<ProductAttribute$Outbound> | undefined;
171
- images?: Array<ProductImage$Outbound> | undefined;
172
- pricing?: ProductPricing$Outbound | undefined;
173
- promotion?: ProductPromotion$Outbound | null | undefined;
174
- subscription?: Array<ProductSubscription$Outbound> | undefined;
175
- associated_options?:
176
- | { [k: string]: AssociatedOption$Outbound }
177
- | null
178
- | undefined;
165
+ category_ids: Array<string>;
166
+ tags: Array<string> | null;
167
+ reviews_count: number;
168
+ reviews_rating_sum: number | null;
169
+ attributes: Array<ProductAttribute$Outbound>;
170
+ images: Array<ProductImage$Outbound>;
171
+ pricing: ProductPricing$Outbound;
172
+ promotion: ProductPromotion$Outbound | null;
173
+ subscription: Array<ProductSubscription$Outbound>;
174
+ associated_options: { [k: string]: AssociatedOption$Outbound } | null;
179
175
  };
180
176
 
181
177
  /** @internal */
182
178
  export const Sku$outboundSchema: z.ZodType<Sku$Outbound, z.ZodTypeDef, Sku> = z
183
179
  .object({
184
180
  productId: z.string(),
185
- variantId: z.nullable(z.string()).optional(),
181
+ variantId: z.nullable(z.string()),
186
182
  sku: z.string(),
187
- slug: z.string().optional(),
183
+ slug: z.nullable(z.string()),
188
184
  productName: z.string(),
189
- variantName: z.nullable(z.string()).optional(),
185
+ variantName: z.nullable(z.string()),
190
186
  productType: SKUProductType$outboundSchema,
191
- shortDescription: z.string().optional(),
187
+ shortDescription: z.nullable(z.string()),
192
188
  active: z.boolean().default(true),
193
189
  stockAvailable: z.boolean().default(true),
194
190
  onOffer: z.boolean().default(false),
195
191
  onSubscription: z.boolean().default(false),
196
192
  onPromotion: z.boolean().default(false),
197
- categoryIds: z.array(z.string()).optional(),
198
- tags: z.array(z.string()).optional(),
199
- reviewsCount: z.number().int().optional(),
200
- reviewsRatingSum: z.number().optional(),
201
- attributes: z.array(ProductAttribute$outboundSchema).optional(),
202
- images: z.array(ProductImage$outboundSchema).optional(),
203
- pricing: ProductPricing$outboundSchema.optional(),
204
- promotion: z.nullable(ProductPromotion$outboundSchema).optional(),
205
- subscription: z.array(ProductSubscription$outboundSchema).optional(),
206
- associatedOptions: z.nullable(z.record(AssociatedOption$outboundSchema))
207
- .optional(),
193
+ categoryIds: z.array(z.string()),
194
+ tags: z.nullable(z.array(z.string())),
195
+ reviewsCount: z.number().int(),
196
+ reviewsRatingSum: z.nullable(z.number()),
197
+ attributes: z.array(ProductAttribute$outboundSchema),
198
+ images: z.array(ProductImage$outboundSchema),
199
+ pricing: ProductPricing$outboundSchema,
200
+ promotion: z.nullable(ProductPromotion$outboundSchema),
201
+ subscription: z.array(ProductSubscription$outboundSchema),
202
+ associatedOptions: z.nullable(z.record(AssociatedOption$outboundSchema)),
208
203
  }).transform((v) => {
209
204
  return remap$(v, {
210
205
  productId: "product_id",