@ecomiq/core 0.1.8 → 0.1.9
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.
- package/dist/{client-4ZTG2RZ3.d.ts → client-Ba1r_uiO.d.ts} +4 -4
- package/dist/{client-BpX4yR6S.d.cts → client-Cqcnv2tC.d.cts} +4 -4
- package/dist/client.cjs +72 -77
- package/dist/client.cjs.map +1 -1
- package/dist/client.d.cts +2 -2
- package/dist/client.d.ts +2 -2
- package/dist/client.js +72 -77
- package/dist/client.js.map +1 -1
- package/dist/index.cjs +73 -89
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +64 -54
- package/dist/index.d.ts +64 -54
- package/dist/index.js +73 -88
- package/dist/index.js.map +1 -1
- package/dist/models/collections.cjs +2 -4
- package/dist/models/collections.cjs.map +1 -1
- package/dist/models/collections.d.cts +2 -2
- package/dist/models/collections.d.ts +2 -2
- package/dist/models/collections.js +2 -4
- package/dist/models/collections.js.map +1 -1
- package/dist/models/customer-address.cjs +7 -1
- package/dist/models/customer-address.cjs.map +1 -1
- package/dist/models/customer-address.d.cts +4 -4
- package/dist/models/customer-address.d.ts +4 -4
- package/dist/models/customer-address.js +7 -1
- package/dist/models/customer-address.js.map +1 -1
- package/dist/models/customer-order.cjs +14 -8
- package/dist/models/customer-order.cjs.map +1 -1
- package/dist/models/customer-order.d.cts +1 -5
- package/dist/models/customer-order.d.ts +1 -5
- package/dist/models/customer-order.js +14 -8
- package/dist/models/customer-order.js.map +1 -1
- package/dist/models/customer-profile.cjs +8 -2
- package/dist/models/customer-profile.cjs.map +1 -1
- package/dist/models/customer-profile.d.cts +3 -3
- package/dist/models/customer-profile.d.ts +3 -3
- package/dist/models/customer-profile.js +8 -2
- package/dist/models/customer-profile.js.map +1 -1
- package/dist/models/geo.cjs +2 -4
- package/dist/models/geo.cjs.map +1 -1
- package/dist/models/geo.d.cts +14 -14
- package/dist/models/geo.d.ts +14 -14
- package/dist/models/geo.js +2 -4
- package/dist/models/geo.js.map +1 -1
- package/dist/models/ids.cjs +3 -4
- package/dist/models/ids.cjs.map +1 -1
- package/dist/models/ids.d.cts +8 -8
- package/dist/models/ids.d.ts +8 -8
- package/dist/models/ids.js +3 -5
- package/dist/models/ids.js.map +1 -1
- package/dist/models/products.cjs +12 -19
- package/dist/models/products.cjs.map +1 -1
- package/dist/models/products.d.cts +32 -33
- package/dist/models/products.d.ts +32 -33
- package/dist/models/products.js +13 -19
- package/dist/models/products.js.map +1 -1
- package/dist/models/search.cjs +3 -180
- package/dist/models/search.cjs.map +1 -1
- package/dist/models/search.d.cts +5 -5
- package/dist/models/search.d.ts +5 -5
- package/dist/models/search.js +3 -180
- package/dist/models/search.js.map +1 -1
- package/dist/models/settings.cjs +2 -4
- package/dist/models/settings.cjs.map +1 -1
- package/dist/models/settings.d.cts +63 -63
- package/dist/models/settings.d.ts +63 -63
- package/dist/models/settings.js +2 -4
- package/dist/models/settings.js.map +1 -1
- package/dist/models/storefront-cart.cjs +14 -26
- package/dist/models/storefront-cart.cjs.map +1 -1
- package/dist/models/storefront-cart.d.cts +100 -98
- package/dist/models/storefront-cart.d.ts +100 -98
- package/dist/models/storefront-cart.js +15 -26
- package/dist/models/storefront-cart.js.map +1 -1
- package/dist/models/storefront-checkout.cjs +26 -27
- package/dist/models/storefront-checkout.cjs.map +1 -1
- package/dist/models/storefront-checkout.d.cts +130 -120
- package/dist/models/storefront-checkout.d.ts +130 -120
- package/dist/models/storefront-checkout.js +26 -27
- package/dist/models/storefront-checkout.js.map +1 -1
- package/dist/models/storefront-reviews.cjs +8 -187
- package/dist/models/storefront-reviews.cjs.map +1 -1
- package/dist/models/storefront-reviews.d.cts +17 -17
- package/dist/models/storefront-reviews.d.ts +17 -17
- package/dist/models/storefront-reviews.js +8 -187
- package/dist/models/storefront-reviews.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
|
|
3
3
|
declare const StorefrontReviewSchema: z.ZodObject<{
|
|
4
|
-
id: z.
|
|
5
|
-
productId: z.
|
|
4
|
+
id: z.ZodString;
|
|
5
|
+
productId: z.ZodString;
|
|
6
6
|
isVerifiedPurchase: z.ZodBoolean;
|
|
7
7
|
rating: z.ZodNumber;
|
|
8
8
|
title: z.ZodNullable<z.ZodString>;
|
|
@@ -19,8 +19,8 @@ declare const StorefrontReviewSchema: z.ZodObject<{
|
|
|
19
19
|
reviewerName: string | null;
|
|
20
20
|
createdOn: string;
|
|
21
21
|
}, {
|
|
22
|
-
id: string
|
|
23
|
-
productId: string
|
|
22
|
+
id: string;
|
|
23
|
+
productId: string;
|
|
24
24
|
isVerifiedPurchase: boolean;
|
|
25
25
|
rating: number;
|
|
26
26
|
title: string | null;
|
|
@@ -30,8 +30,8 @@ declare const StorefrontReviewSchema: z.ZodObject<{
|
|
|
30
30
|
}>;
|
|
31
31
|
declare const StorefrontReviewsSchema: z.ZodObject<{
|
|
32
32
|
data: z.ZodArray<z.ZodObject<{
|
|
33
|
-
id: z.
|
|
34
|
-
productId: z.
|
|
33
|
+
id: z.ZodString;
|
|
34
|
+
productId: z.ZodString;
|
|
35
35
|
isVerifiedPurchase: z.ZodBoolean;
|
|
36
36
|
rating: z.ZodNumber;
|
|
37
37
|
title: z.ZodNullable<z.ZodString>;
|
|
@@ -48,8 +48,8 @@ declare const StorefrontReviewsSchema: z.ZodObject<{
|
|
|
48
48
|
reviewerName: string | null;
|
|
49
49
|
createdOn: string;
|
|
50
50
|
}, {
|
|
51
|
-
id: string
|
|
52
|
-
productId: string
|
|
51
|
+
id: string;
|
|
52
|
+
productId: string;
|
|
53
53
|
isVerifiedPurchase: boolean;
|
|
54
54
|
rating: number;
|
|
55
55
|
title: string | null;
|
|
@@ -77,8 +77,8 @@ declare const StorefrontReviewsSchema: z.ZodObject<{
|
|
|
77
77
|
}, {
|
|
78
78
|
totalCount: number | null;
|
|
79
79
|
data: {
|
|
80
|
-
id: string
|
|
81
|
-
productId: string
|
|
80
|
+
id: string;
|
|
81
|
+
productId: string;
|
|
82
82
|
isVerifiedPurchase: boolean;
|
|
83
83
|
rating: number;
|
|
84
84
|
title: string | null;
|
|
@@ -90,7 +90,7 @@ declare const StorefrontReviewsSchema: z.ZodObject<{
|
|
|
90
90
|
nextCursor: string | null;
|
|
91
91
|
}>;
|
|
92
92
|
declare const ListProductReviewsParamsSchema: z.ZodObject<{
|
|
93
|
-
productId: z.
|
|
93
|
+
productId: z.ZodString;
|
|
94
94
|
limit: z.ZodOptional<z.ZodNumber>;
|
|
95
95
|
cursor: z.ZodOptional<z.ZodString>;
|
|
96
96
|
search: z.ZodOptional<z.ZodString>;
|
|
@@ -106,7 +106,7 @@ declare const ListProductReviewsParamsSchema: z.ZodObject<{
|
|
|
106
106
|
sortBy?: "rating" | "createdOn" | undefined;
|
|
107
107
|
sortDirection?: "asc" | "desc" | undefined;
|
|
108
108
|
}, {
|
|
109
|
-
productId: string
|
|
109
|
+
productId: string;
|
|
110
110
|
search?: string | undefined;
|
|
111
111
|
limit?: number | undefined;
|
|
112
112
|
rating?: number | undefined;
|
|
@@ -115,13 +115,13 @@ declare const ListProductReviewsParamsSchema: z.ZodObject<{
|
|
|
115
115
|
sortDirection?: "asc" | "desc" | undefined;
|
|
116
116
|
}>;
|
|
117
117
|
declare const CreateProductReviewParamsSchema: z.ZodObject<{
|
|
118
|
-
productId: z.
|
|
118
|
+
productId: z.ZodString;
|
|
119
119
|
rating: z.ZodNumber;
|
|
120
120
|
content: z.ZodString;
|
|
121
121
|
title: z.ZodOptional<z.ZodString>;
|
|
122
122
|
reviewerName: z.ZodString;
|
|
123
123
|
reviewerEmail: z.ZodString;
|
|
124
|
-
orderId: z.ZodOptional<z.
|
|
124
|
+
orderId: z.ZodOptional<z.ZodString>;
|
|
125
125
|
}, "strip", z.ZodTypeAny, {
|
|
126
126
|
productId: string;
|
|
127
127
|
rating: number;
|
|
@@ -129,15 +129,15 @@ declare const CreateProductReviewParamsSchema: z.ZodObject<{
|
|
|
129
129
|
reviewerName: string;
|
|
130
130
|
reviewerEmail: string;
|
|
131
131
|
title?: string | undefined;
|
|
132
|
-
orderId?:
|
|
132
|
+
orderId?: string | undefined;
|
|
133
133
|
}, {
|
|
134
|
-
productId: string
|
|
134
|
+
productId: string;
|
|
135
135
|
rating: number;
|
|
136
136
|
content: string;
|
|
137
137
|
reviewerName: string;
|
|
138
138
|
reviewerEmail: string;
|
|
139
139
|
title?: string | undefined;
|
|
140
|
-
orderId?:
|
|
140
|
+
orderId?: string | undefined;
|
|
141
141
|
}>;
|
|
142
142
|
type StorefrontReview = z.infer<typeof StorefrontReviewSchema>;
|
|
143
143
|
type StorefrontReviews = z.infer<typeof StorefrontReviewsSchema>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
|
|
3
3
|
declare const StorefrontReviewSchema: z.ZodObject<{
|
|
4
|
-
id: z.
|
|
5
|
-
productId: z.
|
|
4
|
+
id: z.ZodString;
|
|
5
|
+
productId: z.ZodString;
|
|
6
6
|
isVerifiedPurchase: z.ZodBoolean;
|
|
7
7
|
rating: z.ZodNumber;
|
|
8
8
|
title: z.ZodNullable<z.ZodString>;
|
|
@@ -19,8 +19,8 @@ declare const StorefrontReviewSchema: z.ZodObject<{
|
|
|
19
19
|
reviewerName: string | null;
|
|
20
20
|
createdOn: string;
|
|
21
21
|
}, {
|
|
22
|
-
id: string
|
|
23
|
-
productId: string
|
|
22
|
+
id: string;
|
|
23
|
+
productId: string;
|
|
24
24
|
isVerifiedPurchase: boolean;
|
|
25
25
|
rating: number;
|
|
26
26
|
title: string | null;
|
|
@@ -30,8 +30,8 @@ declare const StorefrontReviewSchema: z.ZodObject<{
|
|
|
30
30
|
}>;
|
|
31
31
|
declare const StorefrontReviewsSchema: z.ZodObject<{
|
|
32
32
|
data: z.ZodArray<z.ZodObject<{
|
|
33
|
-
id: z.
|
|
34
|
-
productId: z.
|
|
33
|
+
id: z.ZodString;
|
|
34
|
+
productId: z.ZodString;
|
|
35
35
|
isVerifiedPurchase: z.ZodBoolean;
|
|
36
36
|
rating: z.ZodNumber;
|
|
37
37
|
title: z.ZodNullable<z.ZodString>;
|
|
@@ -48,8 +48,8 @@ declare const StorefrontReviewsSchema: z.ZodObject<{
|
|
|
48
48
|
reviewerName: string | null;
|
|
49
49
|
createdOn: string;
|
|
50
50
|
}, {
|
|
51
|
-
id: string
|
|
52
|
-
productId: string
|
|
51
|
+
id: string;
|
|
52
|
+
productId: string;
|
|
53
53
|
isVerifiedPurchase: boolean;
|
|
54
54
|
rating: number;
|
|
55
55
|
title: string | null;
|
|
@@ -77,8 +77,8 @@ declare const StorefrontReviewsSchema: z.ZodObject<{
|
|
|
77
77
|
}, {
|
|
78
78
|
totalCount: number | null;
|
|
79
79
|
data: {
|
|
80
|
-
id: string
|
|
81
|
-
productId: string
|
|
80
|
+
id: string;
|
|
81
|
+
productId: string;
|
|
82
82
|
isVerifiedPurchase: boolean;
|
|
83
83
|
rating: number;
|
|
84
84
|
title: string | null;
|
|
@@ -90,7 +90,7 @@ declare const StorefrontReviewsSchema: z.ZodObject<{
|
|
|
90
90
|
nextCursor: string | null;
|
|
91
91
|
}>;
|
|
92
92
|
declare const ListProductReviewsParamsSchema: z.ZodObject<{
|
|
93
|
-
productId: z.
|
|
93
|
+
productId: z.ZodString;
|
|
94
94
|
limit: z.ZodOptional<z.ZodNumber>;
|
|
95
95
|
cursor: z.ZodOptional<z.ZodString>;
|
|
96
96
|
search: z.ZodOptional<z.ZodString>;
|
|
@@ -106,7 +106,7 @@ declare const ListProductReviewsParamsSchema: z.ZodObject<{
|
|
|
106
106
|
sortBy?: "rating" | "createdOn" | undefined;
|
|
107
107
|
sortDirection?: "asc" | "desc" | undefined;
|
|
108
108
|
}, {
|
|
109
|
-
productId: string
|
|
109
|
+
productId: string;
|
|
110
110
|
search?: string | undefined;
|
|
111
111
|
limit?: number | undefined;
|
|
112
112
|
rating?: number | undefined;
|
|
@@ -115,13 +115,13 @@ declare const ListProductReviewsParamsSchema: z.ZodObject<{
|
|
|
115
115
|
sortDirection?: "asc" | "desc" | undefined;
|
|
116
116
|
}>;
|
|
117
117
|
declare const CreateProductReviewParamsSchema: z.ZodObject<{
|
|
118
|
-
productId: z.
|
|
118
|
+
productId: z.ZodString;
|
|
119
119
|
rating: z.ZodNumber;
|
|
120
120
|
content: z.ZodString;
|
|
121
121
|
title: z.ZodOptional<z.ZodString>;
|
|
122
122
|
reviewerName: z.ZodString;
|
|
123
123
|
reviewerEmail: z.ZodString;
|
|
124
|
-
orderId: z.ZodOptional<z.
|
|
124
|
+
orderId: z.ZodOptional<z.ZodString>;
|
|
125
125
|
}, "strip", z.ZodTypeAny, {
|
|
126
126
|
productId: string;
|
|
127
127
|
rating: number;
|
|
@@ -129,15 +129,15 @@ declare const CreateProductReviewParamsSchema: z.ZodObject<{
|
|
|
129
129
|
reviewerName: string;
|
|
130
130
|
reviewerEmail: string;
|
|
131
131
|
title?: string | undefined;
|
|
132
|
-
orderId?:
|
|
132
|
+
orderId?: string | undefined;
|
|
133
133
|
}, {
|
|
134
|
-
productId: string
|
|
134
|
+
productId: string;
|
|
135
135
|
rating: number;
|
|
136
136
|
content: string;
|
|
137
137
|
reviewerName: string;
|
|
138
138
|
reviewerEmail: string;
|
|
139
139
|
title?: string | undefined;
|
|
140
|
-
orderId?:
|
|
140
|
+
orderId?: string | undefined;
|
|
141
141
|
}>;
|
|
142
142
|
type StorefrontReview = z.infer<typeof StorefrontReviewSchema>;
|
|
143
143
|
type StorefrontReviews = z.infer<typeof StorefrontReviewsSchema>;
|
|
@@ -1,194 +1,15 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
|
|
3
3
|
// src/models/storefront-reviews.ts
|
|
4
|
-
var EntityIdSchema = z.
|
|
5
|
-
|
|
6
|
-
z.string().regex(/^\d+$/, "Expected numeric id")
|
|
7
|
-
]);
|
|
4
|
+
var EntityIdSchema = z.string().min(1, "Expected resource id");
|
|
5
|
+
z.string().min(1).max(32).regex(/^[A-Za-z0-9_-]+$/, "Expected cart token");
|
|
8
6
|
EntityIdSchema.nullable();
|
|
9
|
-
|
|
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
|
-
z.array(ProductSummarySchema);
|
|
35
|
-
var FacetItemSchema = z.object({
|
|
36
|
-
value: z.string(),
|
|
37
|
-
count: z.number().int().nonnegative(),
|
|
38
|
-
label: z.string().nullable(),
|
|
39
|
-
selected: z.boolean()
|
|
40
|
-
});
|
|
41
|
-
var SearchFilterSchema = z.object({
|
|
42
|
-
id: z.string(),
|
|
43
|
-
label: z.string(),
|
|
44
|
-
type: z.enum(["list", "price_range"]),
|
|
45
|
-
values: z.array(FacetItemSchema),
|
|
46
|
-
min: z.number().nonnegative().nullable(),
|
|
47
|
-
max: z.number().nonnegative().nullable(),
|
|
48
|
-
selectedMin: z.number().nonnegative().nullable(),
|
|
49
|
-
selectedMax: z.number().nonnegative().nullable()
|
|
50
|
-
});
|
|
51
|
-
z.object({
|
|
52
|
-
pageIndex: z.number().int().positive(),
|
|
53
|
-
pageSize: z.number().int().positive().max(100),
|
|
54
|
-
totalCount: z.number().int().nonnegative(),
|
|
55
|
-
totalPages: z.number().int().nonnegative(),
|
|
56
|
-
products: z.array(ProductSummarySchema),
|
|
57
|
-
filters: z.array(SearchFilterSchema)
|
|
58
|
-
});
|
|
59
|
-
var ProductSortSchema = z.enum([
|
|
60
|
-
"price_asc",
|
|
61
|
-
"price_desc",
|
|
62
|
-
"name_asc",
|
|
63
|
-
"name_desc",
|
|
64
|
-
"newest"
|
|
65
|
-
]);
|
|
66
|
-
z.object({
|
|
67
|
-
page: z.number().int().positive().default(1),
|
|
68
|
-
pageSize: z.number().int().positive().max(100).default(24),
|
|
69
|
-
sort: ProductSortSchema.optional(),
|
|
70
|
-
sellerId: OptionalEntityIdSchema,
|
|
71
|
-
search: z.string().optional(),
|
|
72
|
-
collection: z.string().optional(),
|
|
73
|
-
collections: z.array(z.string()).optional(),
|
|
74
|
-
collectionId: ProductPublicIdSchema.optional(),
|
|
75
|
-
category: z.string().optional(),
|
|
76
|
-
categories: z.array(z.string()).optional(),
|
|
77
|
-
brand: z.string().optional(),
|
|
78
|
-
brands: z.array(z.string()).optional(),
|
|
79
|
-
productType: z.string().optional(),
|
|
80
|
-
productTypes: z.array(z.string()).optional(),
|
|
81
|
-
tag: z.string().optional(),
|
|
82
|
-
tags: z.array(z.string()).optional(),
|
|
83
|
-
filters: z.array(z.string()).optional(),
|
|
84
|
-
locationId: OptionalEntityIdSchema,
|
|
85
|
-
inStock: z.boolean().optional(),
|
|
86
|
-
minPrice: z.number().nonnegative().optional(),
|
|
87
|
-
maxPrice: z.number().nonnegative().optional()
|
|
88
|
-
});
|
|
89
|
-
z.object({
|
|
90
|
-
sellerId: OptionalEntityIdSchema
|
|
91
|
-
});
|
|
92
|
-
z.object({
|
|
93
|
-
productId: ProductPublicIdSchema,
|
|
94
|
-
limit: z.number().int().positive().max(12).default(8),
|
|
95
|
-
sellerId: OptionalEntityIdSchema
|
|
96
|
-
});
|
|
97
|
-
var SpecItemSchema = z.object({
|
|
98
|
-
key: z.string(),
|
|
99
|
-
name: z.string(),
|
|
100
|
-
value: z.string()
|
|
101
|
-
});
|
|
102
|
-
var ProductImageSchema = z.object({
|
|
103
|
-
url: z.string(),
|
|
104
|
-
name: z.string(),
|
|
105
|
-
order: z.number().int().nonnegative()
|
|
106
|
-
});
|
|
107
|
-
var VariantItemSchema = z.object({
|
|
108
|
-
id: z.string().nullable(),
|
|
109
|
-
sku: z.string(),
|
|
110
|
-
status: z.string(),
|
|
111
|
-
price: z.number().nonnegative(),
|
|
112
|
-
compareAtPrice: z.number().nonnegative().nullable(),
|
|
113
|
-
quantity: z.number().int().nonnegative(),
|
|
114
|
-
options: z.array(SpecItemSchema),
|
|
115
|
-
images: z.array(ProductImageSchema)
|
|
116
|
-
});
|
|
117
|
-
var ProductPriceTierSchema = z.object({
|
|
118
|
-
variantId: z.string(),
|
|
119
|
-
minQuantity: z.number().int().positive(),
|
|
120
|
-
maxQuantity: z.number().int().positive().nullable(),
|
|
121
|
-
unitPrice: z.number().nonnegative()
|
|
122
|
-
});
|
|
123
|
-
var BundleItemSchema = z.object({
|
|
124
|
-
productId: ProductPublicIdSchema,
|
|
125
|
-
variantId: ProductPublicIdSchema,
|
|
126
|
-
productName: z.string(),
|
|
127
|
-
variantName: z.string().nullable(),
|
|
128
|
-
sku: z.string().nullable(),
|
|
129
|
-
brand: z.string().nullable(),
|
|
130
|
-
imageUrl: z.string().nullable(),
|
|
131
|
-
quantity: z.number().int().positive(),
|
|
132
|
-
available: z.number().int().nonnegative(),
|
|
133
|
-
allowBackorders: z.boolean(),
|
|
134
|
-
requiresShipping: z.boolean()
|
|
135
|
-
});
|
|
136
|
-
var SizeGuideMeasurementSchema = z.object({
|
|
137
|
-
key: z.string(),
|
|
138
|
-
name: z.string(),
|
|
139
|
-
min: z.number().nullable(),
|
|
140
|
-
max: z.number().nullable(),
|
|
141
|
-
value: z.number().nullable(),
|
|
142
|
-
description: z.string().nullable()
|
|
143
|
-
});
|
|
144
|
-
var SizeGuideRowSchema = z.object({
|
|
145
|
-
label: z.string(),
|
|
146
|
-
sizeKey: z.string(),
|
|
147
|
-
order: z.number().int().nonnegative(),
|
|
148
|
-
measurements: z.array(SizeGuideMeasurementSchema)
|
|
149
|
-
});
|
|
150
|
-
var SizeGuideSchema = z.object({
|
|
151
|
-
id: z.string(),
|
|
152
|
-
name: z.string(),
|
|
153
|
-
slug: z.string(),
|
|
154
|
-
description: z.string().nullable(),
|
|
155
|
-
imageUrl: z.string().nullable(),
|
|
156
|
-
gender: z.string(),
|
|
157
|
-
measurementType: z.string(),
|
|
158
|
-
unit: z.string(),
|
|
159
|
-
notes: z.string().nullable(),
|
|
160
|
-
rows: z.array(SizeGuideRowSchema)
|
|
161
|
-
});
|
|
162
|
-
z.object({
|
|
163
|
-
id: ProductPublicIdSchema,
|
|
164
|
-
name: z.string(),
|
|
165
|
-
slug: z.string(),
|
|
166
|
-
description: z.string(),
|
|
167
|
-
productType: z.string(),
|
|
168
|
-
status: z.string(),
|
|
169
|
-
imageUrl: z.string(),
|
|
170
|
-
price: z.number().nonnegative(),
|
|
171
|
-
compareAtPrice: z.number().nonnegative().nullable(),
|
|
172
|
-
isAvailable: z.boolean(),
|
|
173
|
-
totalInventory: z.number().int().nonnegative(),
|
|
174
|
-
brand: z.string(),
|
|
175
|
-
category: z.string(),
|
|
176
|
-
categoryId: ProductPublicIdSchema.nullable(),
|
|
177
|
-
tags: z.array(z.string()),
|
|
178
|
-
specifications: z.array(SpecItemSchema),
|
|
179
|
-
variants: z.array(VariantItemSchema),
|
|
180
|
-
images: z.array(ProductImageSchema),
|
|
181
|
-
bundleItems: z.array(BundleItemSchema),
|
|
182
|
-
sizeGuide: SizeGuideSchema.nullable(),
|
|
183
|
-
priceTiers: z.array(ProductPriceTierSchema),
|
|
184
|
-
createdAt: z.string().datetime({ offset: true }).nullable(),
|
|
185
|
-
updatedAt: z.string().datetime({ offset: true }).nullable()
|
|
186
|
-
});
|
|
7
|
+
EntityIdSchema.optional();
|
|
187
8
|
|
|
188
9
|
// src/models/storefront-reviews.ts
|
|
189
10
|
var StorefrontReviewSchema = z.object({
|
|
190
|
-
id:
|
|
191
|
-
productId:
|
|
11
|
+
id: EntityIdSchema,
|
|
12
|
+
productId: EntityIdSchema,
|
|
192
13
|
isVerifiedPurchase: z.boolean(),
|
|
193
14
|
rating: z.number().int().min(1).max(5),
|
|
194
15
|
title: z.string().nullable(),
|
|
@@ -203,7 +24,7 @@ var StorefrontReviewsSchema = z.object({
|
|
|
203
24
|
totalCount: z.number().int().nonnegative().nullable()
|
|
204
25
|
});
|
|
205
26
|
var ListProductReviewsParamsSchema = z.object({
|
|
206
|
-
productId:
|
|
27
|
+
productId: EntityIdSchema,
|
|
207
28
|
limit: z.number().int().min(1).max(200).optional(),
|
|
208
29
|
cursor: z.string().optional(),
|
|
209
30
|
search: z.string().optional(),
|
|
@@ -212,13 +33,13 @@ var ListProductReviewsParamsSchema = z.object({
|
|
|
212
33
|
rating: z.number().int().min(1).max(5).optional()
|
|
213
34
|
});
|
|
214
35
|
var CreateProductReviewParamsSchema = z.object({
|
|
215
|
-
productId:
|
|
36
|
+
productId: EntityIdSchema,
|
|
216
37
|
rating: z.number().int().min(1).max(5),
|
|
217
38
|
content: z.string().min(1).max(4e3),
|
|
218
39
|
title: z.string().max(200).optional(),
|
|
219
40
|
reviewerName: z.string().min(1).max(200),
|
|
220
41
|
reviewerEmail: z.string().email().max(320),
|
|
221
|
-
orderId:
|
|
42
|
+
orderId: EntityIdSchema.optional()
|
|
222
43
|
});
|
|
223
44
|
|
|
224
45
|
export { CreateProductReviewParamsSchema, ListProductReviewsParamsSchema, StorefrontReviewSchema, StorefrontReviewsSchema };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/models/ids.ts","../../src/models/products.ts","../../src/models/storefront-reviews.ts"],"names":["z"],"mappings":"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","file":"storefront-reviews.js","sourcesContent":["import { z } from 'zod'\n\n/**\n * UUID o id numérico de la API (p. ej. `\"2\"`, snowflake `\"74400…\"`).\n * Usar en lugar de `z.string().uuid()` para ids de entidades.\n */\nexport const EntityIdSchema = z.union([\n z.string().uuid(),\n z.string().regex(/^\\d+$/, 'Expected numeric id'),\n])\n\nexport const NullableEntityIdSchema = EntityIdSchema.nullable()\nexport const OptionalEntityIdSchema = EntityIdSchema.optional()\n\nexport type EntityId = z.infer<typeof EntityIdSchema>\n","import { z } from 'zod'\nimport {\n OptionalEntityIdSchema,\n} from './ids'\n\nexport const ProductPublicIdSchema = z\n .union([\n z.string().regex(/^[1-9]\\d*$/),\n z.number().int().safe().positive(),\n ])\n .transform(String)\n\nexport const ProductSummarySchema = z.object({\n id: ProductPublicIdSchema,\n name: z.string(),\n slug: z.string(),\n productType: z.string(),\n imageUrl: z.string(),\n price: z.number().nonnegative(),\n compareAtPrice: z.number().nonnegative().nullable(),\n variantCount: z.number().int().nonnegative(),\n isAvailable: z.boolean(),\n totalInventory: z.number().int().nonnegative(),\n bundleItemsCount: z.number().int().nonnegative(),\n brand: z.string(),\n category: z.string(),\n status: z.string(),\n collections: z.array(z.string()),\n tags: z.array(z.string()),\n})\n\nexport const ProductSummariesSchema = z.array(ProductSummarySchema)\n\nexport const ProductSchema = ProductSummarySchema\n\nexport const FacetItemSchema = z.object({\n value: z.string(),\n count: z.number().int().nonnegative(),\n label: z.string().nullable(),\n selected: z.boolean(),\n})\n\nexport const FacetSchema = FacetItemSchema\n\nexport const SearchFilterSchema = z.object({\n id: z.string(),\n label: z.string(),\n type: z.enum(['list', 'price_range']),\n values: z.array(FacetItemSchema),\n min: z.number().nonnegative().nullable(),\n max: z.number().nonnegative().nullable(),\n selectedMin: z.number().nonnegative().nullable(),\n selectedMax: z.number().nonnegative().nullable(),\n})\n\nexport const ProductsResponseSchema = z.object({\n pageIndex: z.number().int().positive(),\n pageSize: z.number().int().positive().max(100),\n totalCount: z.number().int().nonnegative(),\n totalPages: z.number().int().nonnegative(),\n products: z.array(ProductSummarySchema),\n filters: z.array(SearchFilterSchema),\n})\n\nexport const ProductSortSchema = z.enum([\n 'price_asc',\n 'price_desc',\n 'name_asc',\n 'name_desc',\n 'newest',\n])\n\nexport const ProductsParamsSchema = z.object({\n page: z.number().int().positive().default(1),\n pageSize: z.number().int().positive().max(100).default(24),\n sort: ProductSortSchema.optional(),\n sellerId: OptionalEntityIdSchema,\n search: z.string().optional(),\n collection: z.string().optional(),\n collections: z.array(z.string()).optional(),\n collectionId: ProductPublicIdSchema.optional(),\n category: z.string().optional(),\n categories: z.array(z.string()).optional(),\n brand: z.string().optional(),\n brands: z.array(z.string()).optional(),\n productType: z.string().optional(),\n productTypes: z.array(z.string()).optional(),\n tag: z.string().optional(),\n tags: z.array(z.string()).optional(),\n filters: z.array(z.string()).optional(),\n locationId: OptionalEntityIdSchema,\n inStock: z.boolean().optional(),\n minPrice: z.number().nonnegative().optional(),\n maxPrice: z.number().nonnegative().optional(),\n})\n\nexport const ProductDetailParamsSchema = z.object({\n sellerId: OptionalEntityIdSchema,\n})\n\nexport const RelatedProductsParamsSchema = z.object({\n productId: ProductPublicIdSchema,\n limit: z.number().int().positive().max(12).default(8),\n sellerId: OptionalEntityIdSchema,\n})\n\nexport const SpecItemSchema = z.object({\n key: z.string(),\n name: z.string(),\n value: z.string(),\n})\n\nexport const VariantOptionSchema = SpecItemSchema\n\nexport const ProductImageSchema = z.object({\n url: z.string(),\n name: z.string(),\n order: z.number().int().nonnegative(),\n})\n\nexport const VariantItemSchema = z.object({\n id: z.string().nullable(),\n sku: z.string(),\n status: z.string(),\n price: z.number().nonnegative(),\n compareAtPrice: z.number().nonnegative().nullable(),\n quantity: z.number().int().nonnegative(),\n options: z.array(SpecItemSchema),\n images: z.array(ProductImageSchema),\n})\n\nexport const VariantSchema = VariantItemSchema\n\nexport const ProductPriceTierSchema = z.object({\n variantId: z.string(),\n minQuantity: z.number().int().positive(),\n maxQuantity: z.number().int().positive().nullable(),\n unitPrice: z.number().nonnegative(),\n})\n\nexport const PriceTierSchema = ProductPriceTierSchema\n\nexport const BundleItemSchema = z.object({\n productId: ProductPublicIdSchema,\n variantId: ProductPublicIdSchema,\n productName: z.string(),\n variantName: z.string().nullable(),\n sku: z.string().nullable(),\n brand: z.string().nullable(),\n imageUrl: z.string().nullable(),\n quantity: z.number().int().positive(),\n available: z.number().int().nonnegative(),\n allowBackorders: z.boolean(),\n requiresShipping: z.boolean(),\n})\n\nexport const SizeGuideMeasurementSchema = z.object({\n key: z.string(),\n name: z.string(),\n min: z.number().nullable(),\n max: z.number().nullable(),\n value: z.number().nullable(),\n description: z.string().nullable(),\n})\n\nexport const SizeGuideRowSchema = z.object({\n label: z.string(),\n sizeKey: z.string(),\n order: z.number().int().nonnegative(),\n measurements: z.array(SizeGuideMeasurementSchema),\n})\n\nexport const SizeGuideSchema = z.object({\n id: z.string(),\n name: z.string(),\n slug: z.string(),\n description: z.string().nullable(),\n imageUrl: z.string().nullable(),\n gender: z.string(),\n measurementType: z.string(),\n unit: z.string(),\n notes: z.string().nullable(),\n rows: z.array(SizeGuideRowSchema),\n})\n\nexport const ProductDetailSchema = z.object({\n id: ProductPublicIdSchema,\n name: z.string(),\n slug: z.string(),\n description: z.string(),\n productType: z.string(),\n status: z.string(),\n imageUrl: z.string(),\n price: z.number().nonnegative(),\n compareAtPrice: z.number().nonnegative().nullable(),\n isAvailable: z.boolean(),\n totalInventory: z.number().int().nonnegative(),\n brand: z.string(),\n category: z.string(),\n categoryId: ProductPublicIdSchema.nullable(),\n tags: z.array(z.string()),\n specifications: z.array(SpecItemSchema),\n variants: z.array(VariantItemSchema),\n images: z.array(ProductImageSchema),\n bundleItems: z.array(BundleItemSchema),\n sizeGuide: SizeGuideSchema.nullable(),\n priceTiers: z.array(ProductPriceTierSchema),\n createdAt: z.string().datetime({ offset: true }).nullable(),\n updatedAt: z.string().datetime({ offset: true }).nullable(),\n})\n\nexport type ProductSummary = z.infer<typeof ProductSummarySchema>\nexport type Product = ProductSummary\nexport type FacetItem = z.infer<typeof FacetItemSchema>\nexport type Facet = FacetItem\nexport type SearchFilter = z.infer<typeof SearchFilterSchema>\nexport type ProductsResponse = z.infer<typeof ProductsResponseSchema>\nexport type ProductsParams = z.infer<typeof ProductsParamsSchema>\nexport type ProductsParamsInput = z.input<typeof ProductsParamsSchema>\nexport type ProductDetailParams = z.input<typeof ProductDetailParamsSchema>\nexport type RelatedProductsParams = z.input<typeof RelatedProductsParamsSchema>\nexport type ProductSort = z.infer<typeof ProductSortSchema>\nexport type SpecItem = z.infer<typeof SpecItemSchema>\nexport type VariantOption = SpecItem\nexport type VariantItem = z.infer<typeof VariantItemSchema>\nexport type Variant = VariantItem\nexport type ProductImage = z.infer<typeof ProductImageSchema>\nexport type ProductPriceTier = z.infer<typeof ProductPriceTierSchema>\nexport type PriceTier = ProductPriceTier\nexport type BundleItem = z.infer<typeof BundleItemSchema>\nexport type SizeGuideMeasurement = z.infer<typeof SizeGuideMeasurementSchema>\nexport type SizeGuideRow = z.infer<typeof SizeGuideRowSchema>\nexport type SizeGuide = z.infer<typeof SizeGuideSchema>\nexport type ProductDetail = z.infer<typeof ProductDetailSchema>\n","import { z } from 'zod'\n\nimport { ProductPublicIdSchema } from './products'\n\nexport const StorefrontReviewSchema = z.object({\n id: ProductPublicIdSchema,\n productId: ProductPublicIdSchema,\n isVerifiedPurchase: z.boolean(),\n rating: z.number().int().min(1).max(5),\n title: z.string().nullable(),\n content: z.string(),\n reviewerName: z.string().nullable(),\n createdOn: z.string().datetime({ offset: true }),\n})\n\nexport const StorefrontReviewsSchema = z.object({\n data: z.array(StorefrontReviewSchema),\n hasNextPage: z.boolean(),\n nextCursor: z.string().nullable(),\n totalCount: z.number().int().nonnegative().nullable(),\n})\n\nexport const ListProductReviewsParamsSchema = z.object({\n productId: ProductPublicIdSchema,\n limit: z.number().int().min(1).max(200).optional(),\n cursor: z.string().optional(),\n search: z.string().optional(),\n sortBy: z.enum(['rating', 'createdOn']).optional(),\n sortDirection: z.enum(['asc', 'desc']).optional(),\n rating: z.number().int().min(1).max(5).optional(),\n})\n\nexport const CreateProductReviewParamsSchema = z.object({\n productId: ProductPublicIdSchema,\n rating: z.number().int().min(1).max(5),\n content: z.string().min(1).max(4000),\n title: z.string().max(200).optional(),\n reviewerName: z.string().min(1).max(200),\n reviewerEmail: z.string().email().max(320),\n orderId: z.number().int().safe().positive().optional(),\n})\n\nexport type StorefrontReview = z.infer<typeof StorefrontReviewSchema>\nexport type StorefrontReviews = z.infer<typeof StorefrontReviewsSchema>\nexport type ListProductReviewsParams = z.input<typeof ListProductReviewsParamsSchema>\nexport type CreateProductReviewParams = z.input<typeof CreateProductReviewParamsSchema>\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/models/ids.ts","../../src/models/storefront-reviews.ts"],"names":["z"],"mappings":"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","file":"storefront-reviews.js","sourcesContent":["import { z } from 'zod'\n\n/** Opaque public resource identifier. Consumers must not infer its storage type. */\nexport const EntityIdSchema = z.string().min(1, 'Expected resource id')\n\n/** Opaque token used by storefront cart routes. */\nexport const CartTokenSchema = z\n .string()\n .min(1)\n .max(32)\n .regex(/^[A-Za-z0-9_-]+$/, 'Expected cart token')\n\nexport const NullableEntityIdSchema = EntityIdSchema.nullable()\nexport const OptionalEntityIdSchema = EntityIdSchema.optional()\n\nexport type EntityId = z.infer<typeof EntityIdSchema>\nexport type CartToken = z.infer<typeof CartTokenSchema>\n","import { z } from 'zod'\n\nimport { EntityIdSchema } from './ids'\n\nexport const StorefrontReviewSchema = z.object({\n id: EntityIdSchema,\n productId: EntityIdSchema,\n isVerifiedPurchase: z.boolean(),\n rating: z.number().int().min(1).max(5),\n title: z.string().nullable(),\n content: z.string(),\n reviewerName: z.string().nullable(),\n createdOn: z.string().datetime({ offset: true }),\n})\n\nexport const StorefrontReviewsSchema = z.object({\n data: z.array(StorefrontReviewSchema),\n hasNextPage: z.boolean(),\n nextCursor: z.string().nullable(),\n totalCount: z.number().int().nonnegative().nullable(),\n})\n\nexport const ListProductReviewsParamsSchema = z.object({\n productId: EntityIdSchema,\n limit: z.number().int().min(1).max(200).optional(),\n cursor: z.string().optional(),\n search: z.string().optional(),\n sortBy: z.enum(['rating', 'createdOn']).optional(),\n sortDirection: z.enum(['asc', 'desc']).optional(),\n rating: z.number().int().min(1).max(5).optional(),\n})\n\nexport const CreateProductReviewParamsSchema = z.object({\n productId: EntityIdSchema,\n rating: z.number().int().min(1).max(5),\n content: z.string().min(1).max(4000),\n title: z.string().max(200).optional(),\n reviewerName: z.string().min(1).max(200),\n reviewerEmail: z.string().email().max(320),\n orderId: EntityIdSchema.optional(),\n})\n\nexport type StorefrontReview = z.infer<typeof StorefrontReviewSchema>\nexport type StorefrontReviews = z.infer<typeof StorefrontReviewsSchema>\nexport type ListProductReviewsParams = z.input<typeof ListProductReviewsParamsSchema>\nexport type CreateProductReviewParams = z.input<typeof CreateProductReviewParamsSchema>\n"]}
|