@voyantjs/products 0.3.0 → 0.4.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/index.d.ts +9 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -1
- package/dist/routes-public.d.ts +492 -0
- package/dist/routes-public.d.ts.map +1 -0
- package/dist/routes-public.js +44 -0
- package/dist/routes.d.ts +669 -0
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +117 -1
- package/dist/schema-itinerary.d.ts +51 -0
- package/dist/schema-itinerary.d.ts.map +1 -1
- package/dist/schema-itinerary.js +3 -0
- package/dist/schema-relations.d.ts +14 -0
- package/dist/schema-relations.d.ts.map +1 -1
- package/dist/schema-relations.js +28 -1
- package/dist/schema-taxonomy.d.ts +435 -0
- package/dist/schema-taxonomy.d.ts.map +1 -1
- package/dist/schema-taxonomy.js +47 -0
- package/dist/service-catalog.d.ts +237 -0
- package/dist/service-catalog.d.ts.map +1 -0
- package/dist/service-catalog.js +478 -0
- package/dist/service-public.d.ts +383 -0
- package/dist/service-public.d.ts.map +1 -0
- package/dist/service-public.js +365 -0
- package/dist/service.d.ts +292 -1
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +388 -2
- package/dist/tasks/brochure-printers.d.ts +29 -0
- package/dist/tasks/brochure-printers.d.ts.map +1 -0
- package/dist/tasks/brochure-printers.js +94 -0
- package/dist/tasks/brochure-templates.d.ts +36 -0
- package/dist/tasks/brochure-templates.d.ts.map +1 -0
- package/dist/tasks/brochure-templates.js +98 -0
- package/dist/tasks/brochures.d.ts +42 -0
- package/dist/tasks/brochures.d.ts.map +1 -0
- package/dist/tasks/brochures.js +69 -0
- package/dist/tasks/index.d.ts +3 -0
- package/dist/tasks/index.d.ts.map +1 -1
- package/dist/tasks/index.js +3 -0
- package/dist/validation-catalog.d.ts +388 -0
- package/dist/validation-catalog.d.ts.map +1 -0
- package/dist/validation-catalog.js +54 -0
- package/dist/validation-content.d.ts +109 -0
- package/dist/validation-content.d.ts.map +1 -1
- package/dist/validation-content.js +63 -1
- package/dist/validation-public.d.ts +643 -0
- package/dist/validation-public.d.ts.map +1 -0
- package/dist/validation-public.js +167 -0
- package/dist/validation-shared.d.ts +11 -0
- package/dist/validation-shared.d.ts.map +1 -1
- package/dist/validation-shared.js +2 -0
- package/dist/validation.d.ts +1 -0
- package/dist/validation.d.ts.map +1 -1
- package/dist/validation.js +1 -0
- package/package.json +14 -4
|
@@ -106,12 +106,93 @@ export declare const productLocationListQuerySchema: z.ZodObject<{
|
|
|
106
106
|
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
107
107
|
offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
108
108
|
}, z.core.$strip>;
|
|
109
|
+
export declare const insertDestinationSchema: z.ZodObject<{
|
|
110
|
+
parentId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
111
|
+
slug: z.ZodString;
|
|
112
|
+
code: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
113
|
+
destinationType: z.ZodDefault<z.ZodEnum<{
|
|
114
|
+
city: "city";
|
|
115
|
+
destination: "destination";
|
|
116
|
+
region: "region";
|
|
117
|
+
country: "country";
|
|
118
|
+
}>>;
|
|
119
|
+
sortOrder: z.ZodDefault<z.ZodNumber>;
|
|
120
|
+
active: z.ZodDefault<z.ZodBoolean>;
|
|
121
|
+
metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
122
|
+
}, z.core.$strip>;
|
|
123
|
+
export declare const updateDestinationSchema: z.ZodObject<{
|
|
124
|
+
parentId: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
125
|
+
slug: z.ZodOptional<z.ZodString>;
|
|
126
|
+
code: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
127
|
+
destinationType: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
|
|
128
|
+
city: "city";
|
|
129
|
+
destination: "destination";
|
|
130
|
+
region: "region";
|
|
131
|
+
country: "country";
|
|
132
|
+
}>>>;
|
|
133
|
+
sortOrder: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
134
|
+
active: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
135
|
+
metadata: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>>;
|
|
136
|
+
}, z.core.$strip>;
|
|
137
|
+
export declare const destinationListQuerySchema: z.ZodObject<{
|
|
138
|
+
parentId: z.ZodOptional<z.ZodString>;
|
|
139
|
+
active: z.ZodOptional<z.ZodPipe<z.ZodEnum<{
|
|
140
|
+
0: "0";
|
|
141
|
+
1: "1";
|
|
142
|
+
true: "true";
|
|
143
|
+
false: "false";
|
|
144
|
+
}>, z.ZodTransform<boolean, "0" | "1" | "true" | "false">>>;
|
|
145
|
+
search: z.ZodOptional<z.ZodString>;
|
|
146
|
+
languageTag: z.ZodOptional<z.ZodString>;
|
|
147
|
+
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
148
|
+
offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
149
|
+
}, z.core.$strip>;
|
|
150
|
+
export declare const insertDestinationTranslationSchema: z.ZodObject<{
|
|
151
|
+
languageTag: z.ZodString;
|
|
152
|
+
name: z.ZodString;
|
|
153
|
+
description: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
154
|
+
seoTitle: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
155
|
+
seoDescription: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
156
|
+
}, z.core.$strip>;
|
|
157
|
+
export declare const updateDestinationTranslationSchema: z.ZodObject<{
|
|
158
|
+
languageTag: z.ZodOptional<z.ZodString>;
|
|
159
|
+
name: z.ZodOptional<z.ZodString>;
|
|
160
|
+
description: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
161
|
+
seoTitle: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
162
|
+
seoDescription: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
163
|
+
}, z.core.$strip>;
|
|
164
|
+
export declare const destinationTranslationListQuerySchema: z.ZodObject<{
|
|
165
|
+
destinationId: z.ZodOptional<z.ZodString>;
|
|
166
|
+
languageTag: z.ZodOptional<z.ZodString>;
|
|
167
|
+
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
168
|
+
offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
169
|
+
}, z.core.$strip>;
|
|
170
|
+
export declare const insertProductDestinationSchema: z.ZodObject<{
|
|
171
|
+
destinationId: z.ZodString;
|
|
172
|
+
sortOrder: z.ZodDefault<z.ZodNumber>;
|
|
173
|
+
}, z.core.$strip>;
|
|
174
|
+
export declare const updateProductDestinationSchema: z.ZodObject<{
|
|
175
|
+
destinationId: z.ZodOptional<z.ZodString>;
|
|
176
|
+
sortOrder: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
177
|
+
}, z.core.$strip>;
|
|
178
|
+
export declare const productDestinationListQuerySchema: z.ZodObject<{
|
|
179
|
+
productId: z.ZodOptional<z.ZodString>;
|
|
180
|
+
destinationId: z.ZodOptional<z.ZodString>;
|
|
181
|
+
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
182
|
+
offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
183
|
+
}, z.core.$strip>;
|
|
109
184
|
export type InsertProductFeature = z.infer<typeof insertProductFeatureSchema>;
|
|
110
185
|
export type UpdateProductFeature = z.infer<typeof updateProductFeatureSchema>;
|
|
111
186
|
export type InsertProductFaq = z.infer<typeof insertProductFaqSchema>;
|
|
112
187
|
export type UpdateProductFaq = z.infer<typeof updateProductFaqSchema>;
|
|
113
188
|
export type InsertProductLocation = z.infer<typeof insertProductLocationSchema>;
|
|
114
189
|
export type UpdateProductLocation = z.infer<typeof updateProductLocationSchema>;
|
|
190
|
+
export type InsertDestination = z.infer<typeof insertDestinationSchema>;
|
|
191
|
+
export type UpdateDestination = z.infer<typeof updateDestinationSchema>;
|
|
192
|
+
export type InsertDestinationTranslation = z.infer<typeof insertDestinationTranslationSchema>;
|
|
193
|
+
export type UpdateDestinationTranslation = z.infer<typeof updateDestinationTranslationSchema>;
|
|
194
|
+
export type InsertProductDestination = z.infer<typeof insertProductDestinationSchema>;
|
|
195
|
+
export type UpdateProductDestination = z.infer<typeof updateProductDestinationSchema>;
|
|
115
196
|
export declare const insertProductTranslationSchema: z.ZodObject<{
|
|
116
197
|
languageTag: z.ZodString;
|
|
117
198
|
slug: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
@@ -244,6 +325,9 @@ export declare const insertProductMediaSchema: z.ZodObject<{
|
|
|
244
325
|
altText: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
245
326
|
sortOrder: z.ZodDefault<z.ZodNumber>;
|
|
246
327
|
isCover: z.ZodDefault<z.ZodBoolean>;
|
|
328
|
+
isBrochure: z.ZodDefault<z.ZodBoolean>;
|
|
329
|
+
isBrochureCurrent: z.ZodDefault<z.ZodBoolean>;
|
|
330
|
+
brochureVersion: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
|
|
247
331
|
dayId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
248
332
|
}, z.core.$strip>;
|
|
249
333
|
export declare const updateProductMediaSchema: z.ZodObject<{
|
|
@@ -260,6 +344,18 @@ export declare const updateProductMediaSchema: z.ZodObject<{
|
|
|
260
344
|
altText: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
261
345
|
sortOrder: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
262
346
|
isCover: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
347
|
+
isBrochure: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
348
|
+
isBrochureCurrent: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
349
|
+
brochureVersion: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodNumber>>>;
|
|
350
|
+
}, z.core.$strip>;
|
|
351
|
+
export declare const upsertProductBrochureSchema: z.ZodObject<{
|
|
352
|
+
name: z.ZodString;
|
|
353
|
+
sortOrder: z.ZodDefault<z.ZodNumber>;
|
|
354
|
+
url: z.ZodString;
|
|
355
|
+
storageKey: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
356
|
+
fileSize: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
|
|
357
|
+
altText: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
358
|
+
mimeType: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
|
|
263
359
|
}, z.core.$strip>;
|
|
264
360
|
export declare const productMediaListQuerySchema: z.ZodObject<{
|
|
265
361
|
dayId: z.ZodOptional<z.ZodString>;
|
|
@@ -268,6 +364,18 @@ export declare const productMediaListQuerySchema: z.ZodObject<{
|
|
|
268
364
|
video: "video";
|
|
269
365
|
document: "document";
|
|
270
366
|
}>>;
|
|
367
|
+
isBrochure: z.ZodOptional<z.ZodPipe<z.ZodEnum<{
|
|
368
|
+
0: "0";
|
|
369
|
+
1: "1";
|
|
370
|
+
true: "true";
|
|
371
|
+
false: "false";
|
|
372
|
+
}>, z.ZodTransform<boolean, "0" | "1" | "true" | "false">>>;
|
|
373
|
+
isBrochureCurrent: z.ZodOptional<z.ZodPipe<z.ZodEnum<{
|
|
374
|
+
0: "0";
|
|
375
|
+
1: "1";
|
|
376
|
+
true: "true";
|
|
377
|
+
false: "false";
|
|
378
|
+
}>, z.ZodTransform<boolean, "0" | "1" | "true" | "false">>>;
|
|
271
379
|
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
272
380
|
offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
273
381
|
}, z.core.$strip>;
|
|
@@ -279,6 +387,7 @@ export declare const reorderProductMediaSchema: z.ZodObject<{
|
|
|
279
387
|
}, z.core.$strip>;
|
|
280
388
|
export type InsertProductMedia = z.infer<typeof insertProductMediaSchema>;
|
|
281
389
|
export type UpdateProductMedia = z.infer<typeof updateProductMediaSchema>;
|
|
390
|
+
export type UpsertProductBrochure = z.infer<typeof upsertProductBrochureSchema>;
|
|
282
391
|
export type ProductMediaListQuery = z.infer<typeof productMediaListQuerySchema>;
|
|
283
392
|
export type ReorderProductMedia = z.infer<typeof reorderProductMediaSchema>;
|
|
284
393
|
export declare const insertProductTypeSchema: z.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation-content.d.ts","sourceRoot":"","sources":["../src/validation-content.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"validation-content.d.ts","sourceRoot":"","sources":["../src/validation-content.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { booleanQueryParam, languageTagSchema, productFeatureTypeSchema, productLocationTypeSchema, serviceTypeSchema, z, } from "./validation-shared.js";
|
|
1
|
+
import { booleanQueryParam, destinationTypeSchema, languageTagSchema, productFeatureTypeSchema, productLocationTypeSchema, serviceTypeSchema, z, } from "./validation-shared.js";
|
|
2
2
|
const productFeatureCoreSchema = z.object({
|
|
3
3
|
featureType: productFeatureTypeSchema.default("highlight"),
|
|
4
4
|
title: z.string().min(1).max(255),
|
|
@@ -23,6 +23,26 @@ const productLocationCoreSchema = z.object({
|
|
|
23
23
|
tripadvisorLocationId: z.string().max(255).optional().nullable(),
|
|
24
24
|
sortOrder: z.number().int().default(0),
|
|
25
25
|
});
|
|
26
|
+
const destinationCoreSchema = z.object({
|
|
27
|
+
parentId: z.string().optional().nullable(),
|
|
28
|
+
slug: z.string().min(1).max(255),
|
|
29
|
+
code: z.string().max(100).optional().nullable(),
|
|
30
|
+
destinationType: destinationTypeSchema.default("destination"),
|
|
31
|
+
sortOrder: z.number().int().default(0),
|
|
32
|
+
active: z.boolean().default(true),
|
|
33
|
+
metadata: z.record(z.string(), z.unknown()).optional().nullable(),
|
|
34
|
+
});
|
|
35
|
+
const destinationTranslationCoreSchema = z.object({
|
|
36
|
+
languageTag: languageTagSchema,
|
|
37
|
+
name: z.string().min(1).max(255),
|
|
38
|
+
description: z.string().optional().nullable(),
|
|
39
|
+
seoTitle: z.string().max(255).optional().nullable(),
|
|
40
|
+
seoDescription: z.string().optional().nullable(),
|
|
41
|
+
});
|
|
42
|
+
const productDestinationCoreSchema = z.object({
|
|
43
|
+
destinationId: z.string(),
|
|
44
|
+
sortOrder: z.number().int().default(0),
|
|
45
|
+
});
|
|
26
46
|
export const insertProductFeatureSchema = productFeatureCoreSchema;
|
|
27
47
|
export const updateProductFeatureSchema = productFeatureCoreSchema.partial();
|
|
28
48
|
export const productFeatureListQuerySchema = z.object({
|
|
@@ -46,6 +66,32 @@ export const productLocationListQuerySchema = z.object({
|
|
|
46
66
|
limit: z.coerce.number().int().min(1).max(100).default(50),
|
|
47
67
|
offset: z.coerce.number().int().min(0).default(0),
|
|
48
68
|
});
|
|
69
|
+
export const insertDestinationSchema = destinationCoreSchema;
|
|
70
|
+
export const updateDestinationSchema = destinationCoreSchema.partial();
|
|
71
|
+
export const destinationListQuerySchema = z.object({
|
|
72
|
+
parentId: z.string().optional(),
|
|
73
|
+
active: booleanQueryParam.optional(),
|
|
74
|
+
search: z.string().optional(),
|
|
75
|
+
languageTag: languageTagSchema.optional(),
|
|
76
|
+
limit: z.coerce.number().int().min(1).max(100).default(50),
|
|
77
|
+
offset: z.coerce.number().int().min(0).default(0),
|
|
78
|
+
});
|
|
79
|
+
export const insertDestinationTranslationSchema = destinationTranslationCoreSchema;
|
|
80
|
+
export const updateDestinationTranslationSchema = destinationTranslationCoreSchema.partial();
|
|
81
|
+
export const destinationTranslationListQuerySchema = z.object({
|
|
82
|
+
destinationId: z.string().optional(),
|
|
83
|
+
languageTag: languageTagSchema.optional(),
|
|
84
|
+
limit: z.coerce.number().int().min(1).max(100).default(50),
|
|
85
|
+
offset: z.coerce.number().int().min(0).default(0),
|
|
86
|
+
});
|
|
87
|
+
export const insertProductDestinationSchema = productDestinationCoreSchema;
|
|
88
|
+
export const updateProductDestinationSchema = productDestinationCoreSchema.partial();
|
|
89
|
+
export const productDestinationListQuerySchema = z.object({
|
|
90
|
+
productId: z.string().optional(),
|
|
91
|
+
destinationId: z.string().optional(),
|
|
92
|
+
limit: z.coerce.number().int().min(1).max(100).default(50),
|
|
93
|
+
offset: z.coerce.number().int().min(0).default(0),
|
|
94
|
+
});
|
|
49
95
|
const productTranslationCoreSchema = z.object({
|
|
50
96
|
languageTag: languageTagSchema,
|
|
51
97
|
slug: z.string().max(255).optional().nullable(),
|
|
@@ -117,14 +163,30 @@ const productMediaCoreSchema = z.object({
|
|
|
117
163
|
altText: z.string().max(1000).optional().nullable(),
|
|
118
164
|
sortOrder: z.number().int().default(0),
|
|
119
165
|
isCover: z.boolean().default(false),
|
|
166
|
+
isBrochure: z.boolean().default(false),
|
|
167
|
+
isBrochureCurrent: z.boolean().default(false),
|
|
168
|
+
brochureVersion: z.number().int().min(1).optional().nullable(),
|
|
120
169
|
});
|
|
121
170
|
export const insertProductMediaSchema = productMediaCoreSchema.extend({
|
|
122
171
|
dayId: z.string().optional().nullable(),
|
|
123
172
|
});
|
|
124
173
|
export const updateProductMediaSchema = productMediaCoreSchema.partial();
|
|
174
|
+
export const upsertProductBrochureSchema = productMediaCoreSchema
|
|
175
|
+
.omit({
|
|
176
|
+
mediaType: true,
|
|
177
|
+
isCover: true,
|
|
178
|
+
isBrochure: true,
|
|
179
|
+
isBrochureCurrent: true,
|
|
180
|
+
brochureVersion: true,
|
|
181
|
+
})
|
|
182
|
+
.extend({
|
|
183
|
+
mimeType: z.string().max(255).optional().nullable().default("application/pdf"),
|
|
184
|
+
});
|
|
125
185
|
export const productMediaListQuerySchema = z.object({
|
|
126
186
|
dayId: z.string().optional(),
|
|
127
187
|
mediaType: productMediaTypeSchema.optional(),
|
|
188
|
+
isBrochure: booleanQueryParam.optional(),
|
|
189
|
+
isBrochureCurrent: booleanQueryParam.optional(),
|
|
128
190
|
limit: z.coerce.number().int().min(1).max(200).default(50),
|
|
129
191
|
offset: z.coerce.number().int().min(0).default(0),
|
|
130
192
|
});
|