@voyantjs/products 0.1.1 → 0.3.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.
- package/dist/routes.d.ts +4 -4
- package/dist/schema-core.d.ts +897 -0
- package/dist/schema-core.d.ts.map +1 -0
- package/dist/schema-core.js +77 -0
- package/dist/schema-itinerary.d.ts +828 -0
- package/dist/schema-itinerary.d.ts.map +1 -0
- package/dist/schema-itinerary.js +77 -0
- package/dist/schema-relations.d.ts +99 -0
- package/dist/schema-relations.d.ts.map +1 -0
- package/dist/schema-relations.js +155 -0
- package/dist/schema-settings.d.ts +1749 -0
- package/dist/schema-settings.d.ts.map +1 -0
- package/dist/schema-settings.js +175 -0
- package/dist/schema-shared.d.ts +15 -0
- package/dist/schema-shared.d.ts.map +1 -0
- package/dist/schema-shared.js +91 -0
- package/dist/schema-taxonomy.d.ts +573 -0
- package/dist/schema-taxonomy.d.ts.map +1 -0
- package/dist/schema-taxonomy.js +65 -0
- package/dist/schema.d.ts +6 -4155
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +6 -653
- package/dist/service.d.ts +4 -4
- package/dist/validation-config.d.ts +233 -0
- package/dist/validation-config.d.ts.map +1 -0
- package/dist/validation-config.js +73 -0
- package/dist/validation-content.d.ts +358 -0
- package/dist/validation-content.d.ts.map +1 -0
- package/dist/validation-content.js +177 -0
- package/dist/validation-core.d.ts +268 -0
- package/dist/validation-core.d.ts.map +1 -0
- package/dist/validation-core.js +91 -0
- package/dist/validation-shared.d.ts +103 -0
- package/dist/validation-shared.d.ts.map +1 -0
- package/dist/validation-shared.js +86 -0
- package/dist/validation.d.ts +4 -854
- package/dist/validation.d.ts.map +1 -1
- package/dist/validation.js +4 -433
- package/package.json +4 -4
package/dist/service.d.ts
CHANGED
|
@@ -352,8 +352,8 @@ export declare const productsService: {
|
|
|
352
352
|
createdAt: Date;
|
|
353
353
|
updatedAt: Date;
|
|
354
354
|
id: string;
|
|
355
|
-
capability: "on_request" | "private" | "instant_confirmation" | "pickup_available" | "dropoff_available" | "guided" | "shared" | "digital_ticket" | "voucher_required" | "external_inventory" | "multi_day" | "accommodation" | "transport";
|
|
356
355
|
notes: string | null;
|
|
356
|
+
capability: "on_request" | "private" | "instant_confirmation" | "pickup_available" | "dropoff_available" | "guided" | "shared" | "digital_ticket" | "voucher_required" | "external_inventory" | "multi_day" | "accommodation" | "transport";
|
|
357
357
|
} | null>;
|
|
358
358
|
updateCapability(db: PostgresJsDatabase, id: string, data: UpdateProductCapabilityInput): Promise<{
|
|
359
359
|
id: string;
|
|
@@ -439,8 +439,8 @@ export declare const productsService: {
|
|
|
439
439
|
description: string | null;
|
|
440
440
|
id: string;
|
|
441
441
|
sortOrder: number;
|
|
442
|
-
featureType: "other" | "inclusion" | "exclusion" | "highlight" | "important_information";
|
|
443
442
|
title: string;
|
|
443
|
+
featureType: "other" | "inclusion" | "exclusion" | "highlight" | "important_information";
|
|
444
444
|
} | null>;
|
|
445
445
|
updateFeature(db: PostgresJsDatabase, id: string, data: UpdateProductFeatureInput): Promise<{
|
|
446
446
|
id: string;
|
|
@@ -1169,8 +1169,8 @@ export declare const productsService: {
|
|
|
1169
1169
|
updatedAt: Date;
|
|
1170
1170
|
description: string | null;
|
|
1171
1171
|
id: string;
|
|
1172
|
-
title: string | null;
|
|
1173
1172
|
dayNumber: number;
|
|
1173
|
+
title: string | null;
|
|
1174
1174
|
location: string | null;
|
|
1175
1175
|
} | null | undefined>;
|
|
1176
1176
|
updateDay(db: PostgresJsDatabase, dayId: string, data: UpdateDayInput): Promise<{
|
|
@@ -1618,11 +1618,11 @@ export declare const productsService: {
|
|
|
1618
1618
|
id: string;
|
|
1619
1619
|
costAmountCents: number;
|
|
1620
1620
|
sortOrder: number | null;
|
|
1621
|
-
notes: string | null;
|
|
1622
1621
|
dayId: string;
|
|
1623
1622
|
serviceType: "other" | "transfer" | "accommodation" | "experience" | "guide" | "meal";
|
|
1624
1623
|
costCurrency: string;
|
|
1625
1624
|
quantity: number;
|
|
1625
|
+
notes: string | null;
|
|
1626
1626
|
} | null | undefined>;
|
|
1627
1627
|
updateDayService(db: PostgresJsDatabase, productId: string, serviceId: string, data: UpdateDayServiceInput): Promise<{
|
|
1628
1628
|
id: string;
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
import { z } from "./validation-shared.js";
|
|
2
|
+
export declare const insertProductActivationSettingSchema: z.ZodObject<{
|
|
3
|
+
activationMode: z.ZodDefault<z.ZodEnum<{
|
|
4
|
+
manual: "manual";
|
|
5
|
+
scheduled: "scheduled";
|
|
6
|
+
channel_controlled: "channel_controlled";
|
|
7
|
+
}>>;
|
|
8
|
+
activateAt: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
9
|
+
deactivateAt: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
10
|
+
sellAt: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
11
|
+
stopSellAt: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
12
|
+
}, z.core.$strip>;
|
|
13
|
+
export declare const updateProductActivationSettingSchema: z.ZodObject<{
|
|
14
|
+
activationMode: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
15
|
+
manual: "manual";
|
|
16
|
+
scheduled: "scheduled";
|
|
17
|
+
channel_controlled: "channel_controlled";
|
|
18
|
+
}>>>;
|
|
19
|
+
activateAt: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
20
|
+
deactivateAt: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
21
|
+
sellAt: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
22
|
+
stopSellAt: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
23
|
+
}, z.core.$strip>;
|
|
24
|
+
export declare const productActivationSettingListQuerySchema: z.ZodObject<{
|
|
25
|
+
productId: z.ZodOptional<z.ZodString>;
|
|
26
|
+
activationMode: z.ZodOptional<z.ZodEnum<{
|
|
27
|
+
manual: "manual";
|
|
28
|
+
scheduled: "scheduled";
|
|
29
|
+
channel_controlled: "channel_controlled";
|
|
30
|
+
}>>;
|
|
31
|
+
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
32
|
+
offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
33
|
+
}, z.core.$strip>;
|
|
34
|
+
export declare const insertProductTicketSettingSchema: z.ZodObject<{
|
|
35
|
+
fulfillmentMode: z.ZodDefault<z.ZodEnum<{
|
|
36
|
+
none: "none";
|
|
37
|
+
per_booking: "per_booking";
|
|
38
|
+
per_participant: "per_participant";
|
|
39
|
+
per_item: "per_item";
|
|
40
|
+
}>>;
|
|
41
|
+
defaultDeliveryFormat: z.ZodDefault<z.ZodEnum<{
|
|
42
|
+
none: "none";
|
|
43
|
+
voucher: "voucher";
|
|
44
|
+
ticket: "ticket";
|
|
45
|
+
pdf: "pdf";
|
|
46
|
+
qr_code: "qr_code";
|
|
47
|
+
barcode: "barcode";
|
|
48
|
+
email: "email";
|
|
49
|
+
mobile: "mobile";
|
|
50
|
+
}>>;
|
|
51
|
+
ticketPerUnit: z.ZodDefault<z.ZodBoolean>;
|
|
52
|
+
barcodeFormat: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
53
|
+
voucherMessage: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
54
|
+
ticketMessage: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
55
|
+
}, z.core.$strip>;
|
|
56
|
+
export declare const updateProductTicketSettingSchema: z.ZodObject<{
|
|
57
|
+
fulfillmentMode: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
58
|
+
none: "none";
|
|
59
|
+
per_booking: "per_booking";
|
|
60
|
+
per_participant: "per_participant";
|
|
61
|
+
per_item: "per_item";
|
|
62
|
+
}>>>;
|
|
63
|
+
defaultDeliveryFormat: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
64
|
+
none: "none";
|
|
65
|
+
voucher: "voucher";
|
|
66
|
+
ticket: "ticket";
|
|
67
|
+
pdf: "pdf";
|
|
68
|
+
qr_code: "qr_code";
|
|
69
|
+
barcode: "barcode";
|
|
70
|
+
email: "email";
|
|
71
|
+
mobile: "mobile";
|
|
72
|
+
}>>>;
|
|
73
|
+
ticketPerUnit: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
74
|
+
barcodeFormat: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
75
|
+
voucherMessage: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
76
|
+
ticketMessage: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
77
|
+
}, z.core.$strip>;
|
|
78
|
+
export declare const productTicketSettingListQuerySchema: z.ZodObject<{
|
|
79
|
+
productId: z.ZodOptional<z.ZodString>;
|
|
80
|
+
fulfillmentMode: z.ZodOptional<z.ZodEnum<{
|
|
81
|
+
none: "none";
|
|
82
|
+
per_booking: "per_booking";
|
|
83
|
+
per_participant: "per_participant";
|
|
84
|
+
per_item: "per_item";
|
|
85
|
+
}>>;
|
|
86
|
+
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
87
|
+
offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
88
|
+
}, z.core.$strip>;
|
|
89
|
+
export declare const insertProductVisibilitySettingSchema: z.ZodObject<{
|
|
90
|
+
isSearchable: z.ZodDefault<z.ZodBoolean>;
|
|
91
|
+
isBookable: z.ZodDefault<z.ZodBoolean>;
|
|
92
|
+
isFeatured: z.ZodDefault<z.ZodBoolean>;
|
|
93
|
+
requiresAuthentication: z.ZodDefault<z.ZodBoolean>;
|
|
94
|
+
}, z.core.$strip>;
|
|
95
|
+
export declare const updateProductVisibilitySettingSchema: z.ZodObject<{
|
|
96
|
+
isSearchable: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
97
|
+
isBookable: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
98
|
+
isFeatured: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
99
|
+
requiresAuthentication: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
100
|
+
}, z.core.$strip>;
|
|
101
|
+
export declare const productVisibilitySettingListQuerySchema: z.ZodObject<{
|
|
102
|
+
productId: z.ZodOptional<z.ZodString>;
|
|
103
|
+
isSearchable: z.ZodOptional<z.ZodPipe<z.ZodEnum<{
|
|
104
|
+
0: "0";
|
|
105
|
+
1: "1";
|
|
106
|
+
true: "true";
|
|
107
|
+
false: "false";
|
|
108
|
+
}>, z.ZodTransform<boolean, "0" | "1" | "true" | "false">>>;
|
|
109
|
+
isBookable: z.ZodOptional<z.ZodPipe<z.ZodEnum<{
|
|
110
|
+
0: "0";
|
|
111
|
+
1: "1";
|
|
112
|
+
true: "true";
|
|
113
|
+
false: "false";
|
|
114
|
+
}>, z.ZodTransform<boolean, "0" | "1" | "true" | "false">>>;
|
|
115
|
+
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
116
|
+
offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
117
|
+
}, z.core.$strip>;
|
|
118
|
+
export declare const insertProductCapabilitySchema: z.ZodObject<{
|
|
119
|
+
capability: z.ZodEnum<{
|
|
120
|
+
on_request: "on_request";
|
|
121
|
+
private: "private";
|
|
122
|
+
instant_confirmation: "instant_confirmation";
|
|
123
|
+
pickup_available: "pickup_available";
|
|
124
|
+
dropoff_available: "dropoff_available";
|
|
125
|
+
guided: "guided";
|
|
126
|
+
shared: "shared";
|
|
127
|
+
digital_ticket: "digital_ticket";
|
|
128
|
+
voucher_required: "voucher_required";
|
|
129
|
+
external_inventory: "external_inventory";
|
|
130
|
+
multi_day: "multi_day";
|
|
131
|
+
accommodation: "accommodation";
|
|
132
|
+
transport: "transport";
|
|
133
|
+
}>;
|
|
134
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
135
|
+
notes: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
136
|
+
}, z.core.$strip>;
|
|
137
|
+
export declare const updateProductCapabilitySchema: z.ZodObject<{
|
|
138
|
+
capability: z.ZodOptional<z.ZodEnum<{
|
|
139
|
+
on_request: "on_request";
|
|
140
|
+
private: "private";
|
|
141
|
+
instant_confirmation: "instant_confirmation";
|
|
142
|
+
pickup_available: "pickup_available";
|
|
143
|
+
dropoff_available: "dropoff_available";
|
|
144
|
+
guided: "guided";
|
|
145
|
+
shared: "shared";
|
|
146
|
+
digital_ticket: "digital_ticket";
|
|
147
|
+
voucher_required: "voucher_required";
|
|
148
|
+
external_inventory: "external_inventory";
|
|
149
|
+
multi_day: "multi_day";
|
|
150
|
+
accommodation: "accommodation";
|
|
151
|
+
transport: "transport";
|
|
152
|
+
}>>;
|
|
153
|
+
enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
154
|
+
notes: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
155
|
+
}, z.core.$strip>;
|
|
156
|
+
export declare const productCapabilityListQuerySchema: z.ZodObject<{
|
|
157
|
+
productId: z.ZodOptional<z.ZodString>;
|
|
158
|
+
capability: z.ZodOptional<z.ZodEnum<{
|
|
159
|
+
on_request: "on_request";
|
|
160
|
+
private: "private";
|
|
161
|
+
instant_confirmation: "instant_confirmation";
|
|
162
|
+
pickup_available: "pickup_available";
|
|
163
|
+
dropoff_available: "dropoff_available";
|
|
164
|
+
guided: "guided";
|
|
165
|
+
shared: "shared";
|
|
166
|
+
digital_ticket: "digital_ticket";
|
|
167
|
+
voucher_required: "voucher_required";
|
|
168
|
+
external_inventory: "external_inventory";
|
|
169
|
+
multi_day: "multi_day";
|
|
170
|
+
accommodation: "accommodation";
|
|
171
|
+
transport: "transport";
|
|
172
|
+
}>>;
|
|
173
|
+
enabled: z.ZodOptional<z.ZodPipe<z.ZodEnum<{
|
|
174
|
+
0: "0";
|
|
175
|
+
1: "1";
|
|
176
|
+
true: "true";
|
|
177
|
+
false: "false";
|
|
178
|
+
}>, z.ZodTransform<boolean, "0" | "1" | "true" | "false">>>;
|
|
179
|
+
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
180
|
+
offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
181
|
+
}, z.core.$strip>;
|
|
182
|
+
export declare const insertProductDeliveryFormatSchema: z.ZodObject<{
|
|
183
|
+
format: z.ZodEnum<{
|
|
184
|
+
none: "none";
|
|
185
|
+
voucher: "voucher";
|
|
186
|
+
ticket: "ticket";
|
|
187
|
+
pdf: "pdf";
|
|
188
|
+
qr_code: "qr_code";
|
|
189
|
+
barcode: "barcode";
|
|
190
|
+
email: "email";
|
|
191
|
+
mobile: "mobile";
|
|
192
|
+
}>;
|
|
193
|
+
isDefault: z.ZodDefault<z.ZodBoolean>;
|
|
194
|
+
}, z.core.$strip>;
|
|
195
|
+
export declare const updateProductDeliveryFormatSchema: z.ZodObject<{
|
|
196
|
+
format: z.ZodOptional<z.ZodEnum<{
|
|
197
|
+
none: "none";
|
|
198
|
+
voucher: "voucher";
|
|
199
|
+
ticket: "ticket";
|
|
200
|
+
pdf: "pdf";
|
|
201
|
+
qr_code: "qr_code";
|
|
202
|
+
barcode: "barcode";
|
|
203
|
+
email: "email";
|
|
204
|
+
mobile: "mobile";
|
|
205
|
+
}>>;
|
|
206
|
+
isDefault: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
207
|
+
}, z.core.$strip>;
|
|
208
|
+
export declare const productDeliveryFormatListQuerySchema: z.ZodObject<{
|
|
209
|
+
productId: z.ZodOptional<z.ZodString>;
|
|
210
|
+
format: z.ZodOptional<z.ZodEnum<{
|
|
211
|
+
none: "none";
|
|
212
|
+
voucher: "voucher";
|
|
213
|
+
ticket: "ticket";
|
|
214
|
+
pdf: "pdf";
|
|
215
|
+
qr_code: "qr_code";
|
|
216
|
+
barcode: "barcode";
|
|
217
|
+
email: "email";
|
|
218
|
+
mobile: "mobile";
|
|
219
|
+
}>>;
|
|
220
|
+
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
221
|
+
offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
222
|
+
}, z.core.$strip>;
|
|
223
|
+
export type InsertProductActivationSetting = z.infer<typeof insertProductActivationSettingSchema>;
|
|
224
|
+
export type UpdateProductActivationSetting = z.infer<typeof updateProductActivationSettingSchema>;
|
|
225
|
+
export type InsertProductTicketSetting = z.infer<typeof insertProductTicketSettingSchema>;
|
|
226
|
+
export type UpdateProductTicketSetting = z.infer<typeof updateProductTicketSettingSchema>;
|
|
227
|
+
export type InsertProductVisibilitySetting = z.infer<typeof insertProductVisibilitySettingSchema>;
|
|
228
|
+
export type UpdateProductVisibilitySetting = z.infer<typeof updateProductVisibilitySettingSchema>;
|
|
229
|
+
export type InsertProductCapability = z.infer<typeof insertProductCapabilitySchema>;
|
|
230
|
+
export type UpdateProductCapability = z.infer<typeof updateProductCapabilitySchema>;
|
|
231
|
+
export type InsertProductDeliveryFormat = z.infer<typeof insertProductDeliveryFormatSchema>;
|
|
232
|
+
export type UpdateProductDeliveryFormat = z.infer<typeof updateProductDeliveryFormatSchema>;
|
|
233
|
+
//# sourceMappingURL=validation-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation-config.d.ts","sourceRoot":"","sources":["../src/validation-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,CAAC,EACF,MAAM,wBAAwB,CAAA;AAiC/B,eAAO,MAAM,oCAAoC;;;;;;;;;;iBAA+B,CAAA;AAChF,eAAO,MAAM,oCAAoC;;;;;;;;;;iBAAyC,CAAA;AAC1F,eAAO,MAAM,uCAAuC;;;;;;;;;iBAKlD,CAAA;AACF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;iBAA2B,CAAA;AACxE,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;iBAAqC,CAAA;AAClF,eAAO,MAAM,mCAAmC;;;;;;;;;;iBAK9C,CAAA;AACF,eAAO,MAAM,oCAAoC;;;;;iBAA+B,CAAA;AAChF,eAAO,MAAM,oCAAoC;;;;;iBAAyC,CAAA;AAC1F,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;iBAMlD,CAAA;AACF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;iBAAuB,CAAA;AACjE,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;iBAAiC,CAAA;AAC3E,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;iBAM3C,CAAA;AACF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;iBAA2B,CAAA;AACzE,eAAO,MAAM,iCAAiC;;;;;;;;;;;;iBAAqC,CAAA;AACnF,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;iBAK/C,CAAA;AAEF,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAA;AACjG,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAA;AACjG,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAA;AACzF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAA;AACzF,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAA;AACjG,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAA;AACjG,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAA;AACnF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAA;AACnF,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAA;AAC3F,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAA"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { booleanQueryParam, productActivationModeSchema, productCapabilitySchema, productDeliveryFormatSchema, productTicketFulfillmentSchema, z, } from "./validation-shared.js";
|
|
2
|
+
const activationSettingsCoreSchema = z.object({
|
|
3
|
+
activationMode: productActivationModeSchema.default("manual"),
|
|
4
|
+
activateAt: z.string().datetime().optional().nullable(),
|
|
5
|
+
deactivateAt: z.string().datetime().optional().nullable(),
|
|
6
|
+
sellAt: z.string().datetime().optional().nullable(),
|
|
7
|
+
stopSellAt: z.string().datetime().optional().nullable(),
|
|
8
|
+
});
|
|
9
|
+
const ticketSettingsCoreSchema = z.object({
|
|
10
|
+
fulfillmentMode: productTicketFulfillmentSchema.default("none"),
|
|
11
|
+
defaultDeliveryFormat: productDeliveryFormatSchema.default("none"),
|
|
12
|
+
ticketPerUnit: z.boolean().default(false),
|
|
13
|
+
barcodeFormat: z.string().max(100).optional().nullable(),
|
|
14
|
+
voucherMessage: z.string().optional().nullable(),
|
|
15
|
+
ticketMessage: z.string().optional().nullable(),
|
|
16
|
+
});
|
|
17
|
+
const visibilitySettingsCoreSchema = z.object({
|
|
18
|
+
isSearchable: z.boolean().default(false),
|
|
19
|
+
isBookable: z.boolean().default(false),
|
|
20
|
+
isFeatured: z.boolean().default(false),
|
|
21
|
+
requiresAuthentication: z.boolean().default(false),
|
|
22
|
+
});
|
|
23
|
+
const capabilityCoreSchema = z.object({
|
|
24
|
+
capability: productCapabilitySchema,
|
|
25
|
+
enabled: z.boolean().default(true),
|
|
26
|
+
notes: z.string().optional().nullable(),
|
|
27
|
+
});
|
|
28
|
+
const deliveryFormatCoreSchema = z.object({
|
|
29
|
+
format: productDeliveryFormatSchema,
|
|
30
|
+
isDefault: z.boolean().default(false),
|
|
31
|
+
});
|
|
32
|
+
export const insertProductActivationSettingSchema = activationSettingsCoreSchema;
|
|
33
|
+
export const updateProductActivationSettingSchema = activationSettingsCoreSchema.partial();
|
|
34
|
+
export const productActivationSettingListQuerySchema = z.object({
|
|
35
|
+
productId: z.string().optional(),
|
|
36
|
+
activationMode: productActivationModeSchema.optional(),
|
|
37
|
+
limit: z.coerce.number().int().min(1).max(100).default(50),
|
|
38
|
+
offset: z.coerce.number().int().min(0).default(0),
|
|
39
|
+
});
|
|
40
|
+
export const insertProductTicketSettingSchema = ticketSettingsCoreSchema;
|
|
41
|
+
export const updateProductTicketSettingSchema = ticketSettingsCoreSchema.partial();
|
|
42
|
+
export const productTicketSettingListQuerySchema = z.object({
|
|
43
|
+
productId: z.string().optional(),
|
|
44
|
+
fulfillmentMode: productTicketFulfillmentSchema.optional(),
|
|
45
|
+
limit: z.coerce.number().int().min(1).max(100).default(50),
|
|
46
|
+
offset: z.coerce.number().int().min(0).default(0),
|
|
47
|
+
});
|
|
48
|
+
export const insertProductVisibilitySettingSchema = visibilitySettingsCoreSchema;
|
|
49
|
+
export const updateProductVisibilitySettingSchema = visibilitySettingsCoreSchema.partial();
|
|
50
|
+
export const productVisibilitySettingListQuerySchema = z.object({
|
|
51
|
+
productId: z.string().optional(),
|
|
52
|
+
isSearchable: booleanQueryParam.optional(),
|
|
53
|
+
isBookable: booleanQueryParam.optional(),
|
|
54
|
+
limit: z.coerce.number().int().min(1).max(100).default(50),
|
|
55
|
+
offset: z.coerce.number().int().min(0).default(0),
|
|
56
|
+
});
|
|
57
|
+
export const insertProductCapabilitySchema = capabilityCoreSchema;
|
|
58
|
+
export const updateProductCapabilitySchema = capabilityCoreSchema.partial();
|
|
59
|
+
export const productCapabilityListQuerySchema = z.object({
|
|
60
|
+
productId: z.string().optional(),
|
|
61
|
+
capability: productCapabilitySchema.optional(),
|
|
62
|
+
enabled: booleanQueryParam.optional(),
|
|
63
|
+
limit: z.coerce.number().int().min(1).max(100).default(50),
|
|
64
|
+
offset: z.coerce.number().int().min(0).default(0),
|
|
65
|
+
});
|
|
66
|
+
export const insertProductDeliveryFormatSchema = deliveryFormatCoreSchema;
|
|
67
|
+
export const updateProductDeliveryFormatSchema = deliveryFormatCoreSchema.partial();
|
|
68
|
+
export const productDeliveryFormatListQuerySchema = z.object({
|
|
69
|
+
productId: z.string().optional(),
|
|
70
|
+
format: productDeliveryFormatSchema.optional(),
|
|
71
|
+
limit: z.coerce.number().int().min(1).max(100).default(50),
|
|
72
|
+
offset: z.coerce.number().int().min(0).default(0),
|
|
73
|
+
});
|