@gigapay-dev/contracts 3.13.0 → 3.13.2

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 (31) hide show
  1. package/build/domains/collections/dtos.d.ts +13 -0
  2. package/build/domains/collections/dtos.d.ts.map +1 -1
  3. package/build/domains/collections/index.d.ts +13 -0
  4. package/build/domains/collections/index.d.ts.map +1 -1
  5. package/build/domains/collections/queries.d.ts +26 -0
  6. package/build/domains/collections/queries.d.ts.map +1 -1
  7. package/build/domains/orders/commands.d.ts +6 -6
  8. package/build/domains/orders/dtos.d.ts +3 -3
  9. package/build/domains/orders/index.d.ts +12 -12
  10. package/build/domains/orders/queries.d.ts +18 -18
  11. package/build/domains/products/dtos.d.ts +26 -0
  12. package/build/domains/products/dtos.d.ts.map +1 -1
  13. package/build/domains/products/dtos.js +2 -0
  14. package/build/domains/products/dtos.js.map +1 -1
  15. package/build/domains/products/index.d.ts +131 -169
  16. package/build/domains/products/index.d.ts.map +1 -1
  17. package/build/domains/products/index.js +3 -0
  18. package/build/domains/products/index.js.map +1 -1
  19. package/build/domains/products/queries.d.ts +110 -6
  20. package/build/domains/products/queries.d.ts.map +1 -1
  21. package/build/domains/products/reviews.d.ts +286 -0
  22. package/build/domains/products/reviews.d.ts.map +1 -0
  23. package/build/domains/products/reviews.js +81 -0
  24. package/build/domains/products/reviews.js.map +1 -0
  25. package/build/index.d.ts +155 -181
  26. package/build/index.d.ts.map +1 -1
  27. package/build/shared/money.d.ts +5 -3
  28. package/build/shared/money.d.ts.map +1 -1
  29. package/build/shared/money.js +8 -4
  30. package/build/shared/money.js.map +1 -1
  31. package/package.json +1 -1
@@ -0,0 +1,286 @@
1
+ import { z } from "zod";
2
+ export declare const ProductRatingValueSchema: z.ZodNumber;
3
+ export type ProductRatingValue = z.infer<typeof ProductRatingValueSchema>;
4
+ export declare const ProductRatingDistributionSchema: z.ZodObject<{
5
+ 1: z.ZodNumber;
6
+ 2: z.ZodNumber;
7
+ 3: z.ZodNumber;
8
+ 4: z.ZodNumber;
9
+ 5: z.ZodNumber;
10
+ }, z.core.$strip>;
11
+ export type ProductRatingDistribution = z.infer<typeof ProductRatingDistributionSchema>;
12
+ export declare const ProductRatingSummarySchema: z.ZodObject<{
13
+ average: z.ZodNumber;
14
+ count: z.ZodNumber;
15
+ distribution: z.ZodObject<{
16
+ 1: z.ZodNumber;
17
+ 2: z.ZodNumber;
18
+ 3: z.ZodNumber;
19
+ 4: z.ZodNumber;
20
+ 5: z.ZodNumber;
21
+ }, z.core.$strip>;
22
+ userRating: z.ZodNullable<z.ZodNumber>;
23
+ canRate: z.ZodBoolean;
24
+ }, z.core.$strip>;
25
+ export type ProductRatingSummary = z.infer<typeof ProductRatingSummarySchema>;
26
+ export declare const ProductReviewAuthorSchema: z.ZodObject<{
27
+ displayName: z.ZodString;
28
+ }, z.core.$strip>;
29
+ export type ProductReviewAuthor = z.infer<typeof ProductReviewAuthorSchema>;
30
+ export declare const ProductReviewSchema: z.ZodObject<{
31
+ id: z.ZodNumber;
32
+ author: z.ZodObject<{
33
+ displayName: z.ZodString;
34
+ }, z.core.$strip>;
35
+ rating: z.ZodNumber;
36
+ text: z.ZodNullable<z.ZodString>;
37
+ verifiedPurchase: z.ZodLiteral<true>;
38
+ isMine: z.ZodBoolean;
39
+ createdAt: z.ZodString;
40
+ updatedAt: z.ZodString;
41
+ }, z.core.$strip>;
42
+ export type ProductReview = z.infer<typeof ProductReviewSchema>;
43
+ export declare const ListProductReviewsQuerySchema: z.ZodObject<{
44
+ skip: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
45
+ take: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
46
+ rating: z.ZodOptional<z.ZodNumber>;
47
+ sort: z.ZodDefault<z.ZodEnum<{
48
+ newest: "newest";
49
+ highest: "highest";
50
+ lowest: "lowest";
51
+ }>>;
52
+ }, z.core.$strip>;
53
+ export type ListProductReviewsQuery = z.infer<typeof ListProductReviewsQuerySchema>;
54
+ export declare const CreateProductReviewRequestSchema: z.ZodObject<{
55
+ rating: z.ZodNumber;
56
+ text: z.ZodOptional<z.ZodNullable<z.ZodString>>;
57
+ }, z.core.$strip>;
58
+ export type CreateProductReviewRequest = z.infer<typeof CreateProductReviewRequestSchema>;
59
+ export declare const UpdateProductReviewRequestSchema: z.ZodObject<{
60
+ rating: z.ZodNumber;
61
+ text: z.ZodOptional<z.ZodNullable<z.ZodString>>;
62
+ }, z.core.$strip>;
63
+ export type UpdateProductReviewRequest = z.infer<typeof UpdateProductReviewRequestSchema>;
64
+ export declare const GetProductRatingEndpoint: {
65
+ readonly method: "GET";
66
+ readonly path: "/api/products/:slug/rating";
67
+ readonly params: z.ZodObject<{
68
+ slug: z.ZodString;
69
+ }, z.core.$strip>;
70
+ readonly response: z.ZodObject<{
71
+ average: z.ZodNumber;
72
+ count: z.ZodNumber;
73
+ distribution: z.ZodObject<{
74
+ 1: z.ZodNumber;
75
+ 2: z.ZodNumber;
76
+ 3: z.ZodNumber;
77
+ 4: z.ZodNumber;
78
+ 5: z.ZodNumber;
79
+ }, z.core.$strip>;
80
+ userRating: z.ZodNullable<z.ZodNumber>;
81
+ canRate: z.ZodBoolean;
82
+ }, z.core.$strip>;
83
+ };
84
+ export declare const ListProductReviewsEndpoint: {
85
+ readonly method: "GET";
86
+ readonly path: "/api/products/:slug/reviews";
87
+ readonly params: z.ZodObject<{
88
+ slug: z.ZodString;
89
+ }, z.core.$strip>;
90
+ readonly query: z.ZodObject<{
91
+ skip: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
92
+ take: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
93
+ rating: z.ZodOptional<z.ZodNumber>;
94
+ sort: z.ZodDefault<z.ZodEnum<{
95
+ newest: "newest";
96
+ highest: "highest";
97
+ lowest: "lowest";
98
+ }>>;
99
+ }, z.core.$strip>;
100
+ readonly response: z.ZodObject<{
101
+ items: z.ZodArray<z.ZodObject<{
102
+ id: z.ZodNumber;
103
+ author: z.ZodObject<{
104
+ displayName: z.ZodString;
105
+ }, z.core.$strip>;
106
+ rating: z.ZodNumber;
107
+ text: z.ZodNullable<z.ZodString>;
108
+ verifiedPurchase: z.ZodLiteral<true>;
109
+ isMine: z.ZodBoolean;
110
+ createdAt: z.ZodString;
111
+ updatedAt: z.ZodString;
112
+ }, z.core.$strip>>;
113
+ total: z.ZodNumber;
114
+ skip: z.ZodNumber;
115
+ take: z.ZodNumber;
116
+ }, z.core.$strip>;
117
+ };
118
+ export declare const CreateProductReviewEndpoint: {
119
+ readonly method: "POST";
120
+ readonly path: "/api/products/:slug/review";
121
+ readonly params: z.ZodObject<{
122
+ slug: z.ZodString;
123
+ }, z.core.$strip>;
124
+ readonly request: z.ZodObject<{
125
+ rating: z.ZodNumber;
126
+ text: z.ZodOptional<z.ZodNullable<z.ZodString>>;
127
+ }, z.core.$strip>;
128
+ readonly response: z.ZodObject<{
129
+ id: z.ZodNumber;
130
+ author: z.ZodObject<{
131
+ displayName: z.ZodString;
132
+ }, z.core.$strip>;
133
+ rating: z.ZodNumber;
134
+ text: z.ZodNullable<z.ZodString>;
135
+ verifiedPurchase: z.ZodLiteral<true>;
136
+ isMine: z.ZodBoolean;
137
+ createdAt: z.ZodString;
138
+ updatedAt: z.ZodString;
139
+ }, z.core.$strip>;
140
+ readonly requiresAuth: true;
141
+ readonly rateLimit: {
142
+ readonly limit: 5;
143
+ readonly ttlSec: 60;
144
+ };
145
+ };
146
+ export declare const UpdateProductReviewEndpoint: {
147
+ readonly method: "PUT";
148
+ readonly path: "/api/products/:slug/review";
149
+ readonly params: z.ZodObject<{
150
+ slug: z.ZodString;
151
+ }, z.core.$strip>;
152
+ readonly request: z.ZodObject<{
153
+ rating: z.ZodNumber;
154
+ text: z.ZodOptional<z.ZodNullable<z.ZodString>>;
155
+ }, z.core.$strip>;
156
+ readonly response: z.ZodObject<{
157
+ id: z.ZodNumber;
158
+ author: z.ZodObject<{
159
+ displayName: z.ZodString;
160
+ }, z.core.$strip>;
161
+ rating: z.ZodNumber;
162
+ text: z.ZodNullable<z.ZodString>;
163
+ verifiedPurchase: z.ZodLiteral<true>;
164
+ isMine: z.ZodBoolean;
165
+ createdAt: z.ZodString;
166
+ updatedAt: z.ZodString;
167
+ }, z.core.$strip>;
168
+ readonly requiresAuth: true;
169
+ readonly rateLimit: {
170
+ readonly limit: 5;
171
+ readonly ttlSec: 60;
172
+ };
173
+ };
174
+ export declare const ProductReviewEndpoints: {
175
+ readonly rating: {
176
+ readonly method: "GET";
177
+ readonly path: "/api/products/:slug/rating";
178
+ readonly params: z.ZodObject<{
179
+ slug: z.ZodString;
180
+ }, z.core.$strip>;
181
+ readonly response: z.ZodObject<{
182
+ average: z.ZodNumber;
183
+ count: z.ZodNumber;
184
+ distribution: z.ZodObject<{
185
+ 1: z.ZodNumber;
186
+ 2: z.ZodNumber;
187
+ 3: z.ZodNumber;
188
+ 4: z.ZodNumber;
189
+ 5: z.ZodNumber;
190
+ }, z.core.$strip>;
191
+ userRating: z.ZodNullable<z.ZodNumber>;
192
+ canRate: z.ZodBoolean;
193
+ }, z.core.$strip>;
194
+ };
195
+ readonly list: {
196
+ readonly method: "GET";
197
+ readonly path: "/api/products/:slug/reviews";
198
+ readonly params: z.ZodObject<{
199
+ slug: z.ZodString;
200
+ }, z.core.$strip>;
201
+ readonly query: z.ZodObject<{
202
+ skip: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
203
+ take: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
204
+ rating: z.ZodOptional<z.ZodNumber>;
205
+ sort: z.ZodDefault<z.ZodEnum<{
206
+ newest: "newest";
207
+ highest: "highest";
208
+ lowest: "lowest";
209
+ }>>;
210
+ }, z.core.$strip>;
211
+ readonly response: z.ZodObject<{
212
+ items: z.ZodArray<z.ZodObject<{
213
+ id: z.ZodNumber;
214
+ author: z.ZodObject<{
215
+ displayName: z.ZodString;
216
+ }, z.core.$strip>;
217
+ rating: z.ZodNumber;
218
+ text: z.ZodNullable<z.ZodString>;
219
+ verifiedPurchase: z.ZodLiteral<true>;
220
+ isMine: z.ZodBoolean;
221
+ createdAt: z.ZodString;
222
+ updatedAt: z.ZodString;
223
+ }, z.core.$strip>>;
224
+ total: z.ZodNumber;
225
+ skip: z.ZodNumber;
226
+ take: z.ZodNumber;
227
+ }, z.core.$strip>;
228
+ };
229
+ readonly create: {
230
+ readonly method: "POST";
231
+ readonly path: "/api/products/:slug/review";
232
+ readonly params: z.ZodObject<{
233
+ slug: z.ZodString;
234
+ }, z.core.$strip>;
235
+ readonly request: z.ZodObject<{
236
+ rating: z.ZodNumber;
237
+ text: z.ZodOptional<z.ZodNullable<z.ZodString>>;
238
+ }, z.core.$strip>;
239
+ readonly response: z.ZodObject<{
240
+ id: z.ZodNumber;
241
+ author: z.ZodObject<{
242
+ displayName: z.ZodString;
243
+ }, z.core.$strip>;
244
+ rating: z.ZodNumber;
245
+ text: z.ZodNullable<z.ZodString>;
246
+ verifiedPurchase: z.ZodLiteral<true>;
247
+ isMine: z.ZodBoolean;
248
+ createdAt: z.ZodString;
249
+ updatedAt: z.ZodString;
250
+ }, z.core.$strip>;
251
+ readonly requiresAuth: true;
252
+ readonly rateLimit: {
253
+ readonly limit: 5;
254
+ readonly ttlSec: 60;
255
+ };
256
+ };
257
+ readonly update: {
258
+ readonly method: "PUT";
259
+ readonly path: "/api/products/:slug/review";
260
+ readonly params: z.ZodObject<{
261
+ slug: z.ZodString;
262
+ }, z.core.$strip>;
263
+ readonly request: z.ZodObject<{
264
+ rating: z.ZodNumber;
265
+ text: z.ZodOptional<z.ZodNullable<z.ZodString>>;
266
+ }, z.core.$strip>;
267
+ readonly response: z.ZodObject<{
268
+ id: z.ZodNumber;
269
+ author: z.ZodObject<{
270
+ displayName: z.ZodString;
271
+ }, z.core.$strip>;
272
+ rating: z.ZodNumber;
273
+ text: z.ZodNullable<z.ZodString>;
274
+ verifiedPurchase: z.ZodLiteral<true>;
275
+ isMine: z.ZodBoolean;
276
+ createdAt: z.ZodString;
277
+ updatedAt: z.ZodString;
278
+ }, z.core.$strip>;
279
+ readonly requiresAuth: true;
280
+ readonly rateLimit: {
281
+ readonly limit: 5;
282
+ readonly ttlSec: 60;
283
+ };
284
+ };
285
+ };
286
+ //# sourceMappingURL=reviews.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reviews.d.ts","sourceRoot":"","sources":["../../../src/domains/products/reviews.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,wBAAwB,aAAiC,CAAC;AACvE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,eAAO,MAAM,+BAA+B;;;;;;iBAM1C,CAAC;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAExF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;iBAMrC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,yBAAyB;;iBAEpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,mBAAmB;;;;;;;;;;;iBAS9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,6BAA6B;;;;;;;;;iBAGxC,CAAC;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEpF,eAAO,MAAM,gCAAgC;;;iBAG3C,CAAC;AACH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F,eAAO,MAAM,gCAAgC;;;iBAAmC,CAAC;AACjF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;CAKA,CAAC;AAEtC,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMF,CAAC;AAEtC,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQH,CAAC;AAEtC,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQH,CAAC;AAEtC,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKzB,CAAC"}
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProductReviewEndpoints = exports.UpdateProductReviewEndpoint = exports.CreateProductReviewEndpoint = exports.ListProductReviewsEndpoint = exports.GetProductRatingEndpoint = exports.UpdateProductReviewRequestSchema = exports.CreateProductReviewRequestSchema = exports.ListProductReviewsQuerySchema = exports.ProductReviewSchema = exports.ProductReviewAuthorSchema = exports.ProductRatingSummarySchema = exports.ProductRatingDistributionSchema = exports.ProductRatingValueSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const common_1 = require("../../shared/common");
6
+ const pagination_1 = require("../../shared/pagination");
7
+ exports.ProductRatingValueSchema = zod_1.z.number().int().min(1).max(5);
8
+ exports.ProductRatingDistributionSchema = zod_1.z.object({
9
+ 1: zod_1.z.number().int().nonnegative(),
10
+ 2: zod_1.z.number().int().nonnegative(),
11
+ 3: zod_1.z.number().int().nonnegative(),
12
+ 4: zod_1.z.number().int().nonnegative(),
13
+ 5: zod_1.z.number().int().nonnegative(),
14
+ });
15
+ exports.ProductRatingSummarySchema = zod_1.z.object({
16
+ average: zod_1.z.number().min(0).max(5),
17
+ count: zod_1.z.number().int().nonnegative(),
18
+ distribution: exports.ProductRatingDistributionSchema,
19
+ userRating: exports.ProductRatingValueSchema.nullable(),
20
+ canRate: zod_1.z.boolean(),
21
+ });
22
+ exports.ProductReviewAuthorSchema = zod_1.z.object({
23
+ displayName: zod_1.z.string().min(1).max(128),
24
+ });
25
+ exports.ProductReviewSchema = zod_1.z.object({
26
+ id: zod_1.z.number().int().positive(),
27
+ author: exports.ProductReviewAuthorSchema,
28
+ rating: exports.ProductRatingValueSchema,
29
+ text: zod_1.z.string().nullable(),
30
+ verifiedPurchase: zod_1.z.literal(true),
31
+ isMine: zod_1.z.boolean(),
32
+ createdAt: zod_1.z.string(),
33
+ updatedAt: zod_1.z.string(),
34
+ });
35
+ exports.ListProductReviewsQuerySchema = pagination_1.PaginationQuerySchema.extend({
36
+ rating: exports.ProductRatingValueSchema.optional(),
37
+ sort: zod_1.z.enum(["newest", "highest", "lowest"]).default("newest"),
38
+ });
39
+ exports.CreateProductReviewRequestSchema = zod_1.z.object({
40
+ rating: exports.ProductRatingValueSchema,
41
+ text: zod_1.z.string().max(2_000).nullable().optional(),
42
+ });
43
+ exports.UpdateProductReviewRequestSchema = exports.CreateProductReviewRequestSchema;
44
+ exports.GetProductRatingEndpoint = {
45
+ method: "GET",
46
+ path: "/api/products/:slug/rating",
47
+ params: common_1.SlugParamSchema,
48
+ response: exports.ProductRatingSummarySchema,
49
+ };
50
+ exports.ListProductReviewsEndpoint = {
51
+ method: "GET",
52
+ path: "/api/products/:slug/reviews",
53
+ params: common_1.SlugParamSchema,
54
+ query: exports.ListProductReviewsQuerySchema,
55
+ response: (0, pagination_1.PaginatedResponseSchema)(exports.ProductReviewSchema),
56
+ };
57
+ exports.CreateProductReviewEndpoint = {
58
+ method: "POST",
59
+ path: "/api/products/:slug/review",
60
+ params: common_1.SlugParamSchema,
61
+ request: exports.CreateProductReviewRequestSchema,
62
+ response: exports.ProductReviewSchema,
63
+ requiresAuth: true,
64
+ rateLimit: { limit: 5, ttlSec: 60 },
65
+ };
66
+ exports.UpdateProductReviewEndpoint = {
67
+ method: "PUT",
68
+ path: "/api/products/:slug/review",
69
+ params: common_1.SlugParamSchema,
70
+ request: exports.UpdateProductReviewRequestSchema,
71
+ response: exports.ProductReviewSchema,
72
+ requiresAuth: true,
73
+ rateLimit: { limit: 5, ttlSec: 60 },
74
+ };
75
+ exports.ProductReviewEndpoints = {
76
+ rating: exports.GetProductRatingEndpoint,
77
+ list: exports.ListProductReviewsEndpoint,
78
+ create: exports.CreateProductReviewEndpoint,
79
+ update: exports.UpdateProductReviewEndpoint,
80
+ };
81
+ //# sourceMappingURL=reviews.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reviews.js","sourceRoot":"","sources":["../../../src/domains/products/reviews.ts"],"names":[],"mappings":"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"}