@gigapay-dev/contracts 3.8.0 → 3.10.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.
@@ -20,6 +20,9 @@ export declare const CreateProductRequestSchema: z.ZodObject<{
20
20
  catalogImageUrl: z.ZodOptional<z.ZodURL>;
21
21
  cardImageUrl: z.ZodOptional<z.ZodURL>;
22
22
  steamAppId: z.ZodOptional<z.ZodNumber>;
23
+ metaTitle: z.ZodOptional<z.ZodString>;
24
+ metaDescription: z.ZodOptional<z.ZodString>;
25
+ ogImageUrl: z.ZodOptional<z.ZodURL>;
23
26
  categoryId: z.ZodNumber;
24
27
  }, z.core.$strip>;
25
28
  export type CreateProductRequest = z.infer<typeof CreateProductRequestSchema>;
@@ -54,6 +57,57 @@ export declare const ImportKeysRequestSchema: z.ZodObject<{
54
57
  keys: z.ZodArray<z.ZodString>;
55
58
  }, z.core.$strip>;
56
59
  export type ImportKeysRequest = z.infer<typeof ImportKeysRequestSchema>;
60
+ /** Частичное обновление карточки: присылаются только изменённые поля. */
61
+ export declare const UpdateProductRequestSchema: z.ZodObject<{
62
+ title: z.ZodOptional<z.ZodString>;
63
+ originalTitle: z.ZodOptional<z.ZodNullable<z.ZodString>>;
64
+ type: z.ZodOptional<z.ZodEnum<{
65
+ GAME_KEY: "GAME_KEY";
66
+ GAME_GIFT: "GAME_GIFT";
67
+ TOPUP: "TOPUP";
68
+ SUBSCRIPTION: "SUBSCRIPTION";
69
+ IN_GAME_ITEM: "IN_GAME_ITEM";
70
+ DLC: "DLC";
71
+ CURRENCY: "CURRENCY";
72
+ VOUCHER: "VOUCHER";
73
+ }>>;
74
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
75
+ shortDescription: z.ZodOptional<z.ZodNullable<z.ZodString>>;
76
+ coverImageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
77
+ catalogImageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
78
+ cardImageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
79
+ basePriceUsd: z.ZodOptional<z.ZodString>;
80
+ steamAppId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
81
+ metaTitle: z.ZodOptional<z.ZodNullable<z.ZodString>>;
82
+ metaDescription: z.ZodOptional<z.ZodNullable<z.ZodString>>;
83
+ ogImageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
84
+ categoryId: z.ZodOptional<z.ZodNumber>;
85
+ }, z.core.$strip>;
86
+ export type UpdateProductRequest = z.infer<typeof UpdateProductRequestSchema>;
87
+ export declare const ProductMediaInputSchema: z.ZodObject<{
88
+ type: z.ZodEnum<{
89
+ IMAGE: "IMAGE";
90
+ VIDEO: "VIDEO";
91
+ }>;
92
+ url: z.ZodURL;
93
+ thumbnailUrl: z.ZodOptional<z.ZodURL>;
94
+ }, z.core.$strip>;
95
+ export type ProductMediaInput = z.infer<typeof ProductMediaInputSchema>;
96
+ /**
97
+ * Галерея заменяется целиком: порядок элементов в массиве и есть порядок
98
+ * в слайдере. Так переупорядочивание — это один запрос без diff-логики.
99
+ */
100
+ export declare const ReplaceProductMediaRequestSchema: z.ZodObject<{
101
+ items: z.ZodArray<z.ZodObject<{
102
+ type: z.ZodEnum<{
103
+ IMAGE: "IMAGE";
104
+ VIDEO: "VIDEO";
105
+ }>;
106
+ url: z.ZodURL;
107
+ thumbnailUrl: z.ZodOptional<z.ZodURL>;
108
+ }, z.core.$strip>>;
109
+ }, z.core.$strip>;
110
+ export type ReplaceProductMediaRequest = z.infer<typeof ReplaceProductMediaRequestSchema>;
57
111
  export declare const SetVariantMarginRequestSchema: z.ZodObject<{
58
112
  marginPct: z.ZodString;
59
113
  }, z.core.$strip>;
@@ -309,6 +363,14 @@ export declare const ParseSteamResponseSchema: z.ZodObject<{
309
363
  background: z.ZodNullable<z.ZodString>;
310
364
  screenshots: z.ZodArray<z.ZodString>;
311
365
  }, z.core.$strip>;
366
+ gallery: z.ZodArray<z.ZodObject<{
367
+ type: z.ZodEnum<{
368
+ IMAGE: "IMAGE";
369
+ VIDEO: "VIDEO";
370
+ }>;
371
+ url: z.ZodURL;
372
+ thumbnailUrl: z.ZodOptional<z.ZodURL>;
373
+ }, z.core.$strip>>;
312
374
  appId: z.ZodNumber;
313
375
  slug: z.ZodString;
314
376
  title: z.ZodString;
@@ -369,6 +431,9 @@ export declare const CreateProductEndpoint: {
369
431
  catalogImageUrl: z.ZodOptional<z.ZodURL>;
370
432
  cardImageUrl: z.ZodOptional<z.ZodURL>;
371
433
  steamAppId: z.ZodOptional<z.ZodNumber>;
434
+ metaTitle: z.ZodOptional<z.ZodString>;
435
+ metaDescription: z.ZodOptional<z.ZodString>;
436
+ ogImageUrl: z.ZodOptional<z.ZodURL>;
372
437
  categoryId: z.ZodNumber;
373
438
  }, z.core.$strip>;
374
439
  readonly response: z.ZodObject<{
@@ -498,6 +563,14 @@ export declare const ParseSteamEndpoint: {
498
563
  background: z.ZodNullable<z.ZodString>;
499
564
  screenshots: z.ZodArray<z.ZodString>;
500
565
  }, z.core.$strip>;
566
+ gallery: z.ZodArray<z.ZodObject<{
567
+ type: z.ZodEnum<{
568
+ IMAGE: "IMAGE";
569
+ VIDEO: "VIDEO";
570
+ }>;
571
+ url: z.ZodURL;
572
+ thumbnailUrl: z.ZodOptional<z.ZodURL>;
573
+ }, z.core.$strip>>;
501
574
  appId: z.ZodNumber;
502
575
  slug: z.ZodString;
503
576
  title: z.ZodString;
@@ -536,6 +609,74 @@ export declare const ParseSteamEndpoint: {
536
609
  readonly requiresAuth: true;
537
610
  readonly requiresAdmin: true;
538
611
  };
612
+ export declare const UpdateProductEndpoint: {
613
+ readonly method: "PUT";
614
+ readonly path: "/api/admin/products/:id";
615
+ readonly params: z.ZodObject<{
616
+ id: z.ZodCoercedNumber<unknown>;
617
+ }, z.core.$strip>;
618
+ readonly request: z.ZodObject<{
619
+ title: z.ZodOptional<z.ZodString>;
620
+ originalTitle: z.ZodOptional<z.ZodNullable<z.ZodString>>;
621
+ type: z.ZodOptional<z.ZodEnum<{
622
+ GAME_KEY: "GAME_KEY";
623
+ GAME_GIFT: "GAME_GIFT";
624
+ TOPUP: "TOPUP";
625
+ SUBSCRIPTION: "SUBSCRIPTION";
626
+ IN_GAME_ITEM: "IN_GAME_ITEM";
627
+ DLC: "DLC";
628
+ CURRENCY: "CURRENCY";
629
+ VOUCHER: "VOUCHER";
630
+ }>>;
631
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
632
+ shortDescription: z.ZodOptional<z.ZodNullable<z.ZodString>>;
633
+ coverImageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
634
+ catalogImageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
635
+ cardImageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
636
+ basePriceUsd: z.ZodOptional<z.ZodString>;
637
+ steamAppId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
638
+ metaTitle: z.ZodOptional<z.ZodNullable<z.ZodString>>;
639
+ metaDescription: z.ZodOptional<z.ZodNullable<z.ZodString>>;
640
+ ogImageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
641
+ categoryId: z.ZodOptional<z.ZodNumber>;
642
+ }, z.core.$strip>;
643
+ readonly response: z.ZodObject<{
644
+ id: z.ZodNumber;
645
+ }, z.core.$strip>;
646
+ readonly requiresAuth: true;
647
+ readonly requiresAdmin: true;
648
+ };
649
+ export declare const ReplaceProductMediaEndpoint: {
650
+ readonly method: "PUT";
651
+ readonly path: "/api/admin/products/:id/media";
652
+ readonly params: z.ZodObject<{
653
+ id: z.ZodCoercedNumber<unknown>;
654
+ }, z.core.$strip>;
655
+ readonly request: z.ZodObject<{
656
+ items: z.ZodArray<z.ZodObject<{
657
+ type: z.ZodEnum<{
658
+ IMAGE: "IMAGE";
659
+ VIDEO: "VIDEO";
660
+ }>;
661
+ url: z.ZodURL;
662
+ thumbnailUrl: z.ZodOptional<z.ZodURL>;
663
+ }, z.core.$strip>>;
664
+ }, z.core.$strip>;
665
+ readonly response: z.ZodObject<{
666
+ media: z.ZodArray<z.ZodObject<{
667
+ id: z.ZodNumber;
668
+ type: z.ZodEnum<{
669
+ IMAGE: "IMAGE";
670
+ VIDEO: "VIDEO";
671
+ }>;
672
+ url: z.ZodString;
673
+ thumbnailUrl: z.ZodNullable<z.ZodString>;
674
+ sortOrder: z.ZodNumber;
675
+ }, z.core.$strip>>;
676
+ }, z.core.$strip>;
677
+ readonly requiresAuth: true;
678
+ readonly requiresAdmin: true;
679
+ };
539
680
  export declare const SetVariantMarginEndpoint: {
540
681
  readonly method: "PATCH";
541
682
  readonly path: "/api/admin/products/variants/:id/margin";
@@ -578,6 +719,9 @@ export declare const ProductCommands: {
578
719
  catalogImageUrl: z.ZodOptional<z.ZodURL>;
579
720
  cardImageUrl: z.ZodOptional<z.ZodURL>;
580
721
  steamAppId: z.ZodOptional<z.ZodNumber>;
722
+ metaTitle: z.ZodOptional<z.ZodString>;
723
+ metaDescription: z.ZodOptional<z.ZodString>;
724
+ ogImageUrl: z.ZodOptional<z.ZodURL>;
581
725
  categoryId: z.ZodNumber;
582
726
  }, z.core.$strip>;
583
727
  readonly response: z.ZodObject<{
@@ -586,6 +730,74 @@ export declare const ProductCommands: {
586
730
  readonly requiresAuth: true;
587
731
  readonly requiresAdmin: true;
588
732
  };
733
+ readonly update: {
734
+ readonly method: "PUT";
735
+ readonly path: "/api/admin/products/:id";
736
+ readonly params: z.ZodObject<{
737
+ id: z.ZodCoercedNumber<unknown>;
738
+ }, z.core.$strip>;
739
+ readonly request: z.ZodObject<{
740
+ title: z.ZodOptional<z.ZodString>;
741
+ originalTitle: z.ZodOptional<z.ZodNullable<z.ZodString>>;
742
+ type: z.ZodOptional<z.ZodEnum<{
743
+ GAME_KEY: "GAME_KEY";
744
+ GAME_GIFT: "GAME_GIFT";
745
+ TOPUP: "TOPUP";
746
+ SUBSCRIPTION: "SUBSCRIPTION";
747
+ IN_GAME_ITEM: "IN_GAME_ITEM";
748
+ DLC: "DLC";
749
+ CURRENCY: "CURRENCY";
750
+ VOUCHER: "VOUCHER";
751
+ }>>;
752
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
753
+ shortDescription: z.ZodOptional<z.ZodNullable<z.ZodString>>;
754
+ coverImageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
755
+ catalogImageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
756
+ cardImageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
757
+ basePriceUsd: z.ZodOptional<z.ZodString>;
758
+ steamAppId: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
759
+ metaTitle: z.ZodOptional<z.ZodNullable<z.ZodString>>;
760
+ metaDescription: z.ZodOptional<z.ZodNullable<z.ZodString>>;
761
+ ogImageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
762
+ categoryId: z.ZodOptional<z.ZodNumber>;
763
+ }, z.core.$strip>;
764
+ readonly response: z.ZodObject<{
765
+ id: z.ZodNumber;
766
+ }, z.core.$strip>;
767
+ readonly requiresAuth: true;
768
+ readonly requiresAdmin: true;
769
+ };
770
+ readonly replaceMedia: {
771
+ readonly method: "PUT";
772
+ readonly path: "/api/admin/products/:id/media";
773
+ readonly params: z.ZodObject<{
774
+ id: z.ZodCoercedNumber<unknown>;
775
+ }, z.core.$strip>;
776
+ readonly request: z.ZodObject<{
777
+ items: z.ZodArray<z.ZodObject<{
778
+ type: z.ZodEnum<{
779
+ IMAGE: "IMAGE";
780
+ VIDEO: "VIDEO";
781
+ }>;
782
+ url: z.ZodURL;
783
+ thumbnailUrl: z.ZodOptional<z.ZodURL>;
784
+ }, z.core.$strip>>;
785
+ }, z.core.$strip>;
786
+ readonly response: z.ZodObject<{
787
+ media: z.ZodArray<z.ZodObject<{
788
+ id: z.ZodNumber;
789
+ type: z.ZodEnum<{
790
+ IMAGE: "IMAGE";
791
+ VIDEO: "VIDEO";
792
+ }>;
793
+ url: z.ZodString;
794
+ thumbnailUrl: z.ZodNullable<z.ZodString>;
795
+ sortOrder: z.ZodNumber;
796
+ }, z.core.$strip>>;
797
+ }, z.core.$strip>;
798
+ readonly requiresAuth: true;
799
+ readonly requiresAdmin: true;
800
+ };
589
801
  readonly archive: {
590
802
  readonly method: "POST";
591
803
  readonly path: "/api/admin/products/:id/archive";
@@ -724,6 +936,14 @@ export declare const ProductCommands: {
724
936
  background: z.ZodNullable<z.ZodString>;
725
937
  screenshots: z.ZodArray<z.ZodString>;
726
938
  }, z.core.$strip>;
939
+ gallery: z.ZodArray<z.ZodObject<{
940
+ type: z.ZodEnum<{
941
+ IMAGE: "IMAGE";
942
+ VIDEO: "VIDEO";
943
+ }>;
944
+ url: z.ZodURL;
945
+ thumbnailUrl: z.ZodOptional<z.ZodURL>;
946
+ }, z.core.$strip>>;
727
947
  appId: z.ZodNumber;
728
948
  slug: z.ZodString;
729
949
  title: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/domains/products/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/domains/products/commands.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ProductCommands = exports.SetVariantMarginEndpoint = exports.ParseSteamEndpoint = exports.ImportKeysEndpoint = exports.CreateVariantEndpoint = exports.PublishProductEndpoint = exports.ArchiveProductEndpoint = exports.CreateProductEndpoint = exports.ParseSteamResponseSchema = exports.SteamImageSetSchema = exports.SteamImageVariantSchema = exports.ParseSteamEditionSchema = exports.ParseSteamGameModeSchema = exports.ListCatalogImportRunsEndpoint = exports.GetCatalogImportRunEndpoint = exports.ImportSteamGiftEndpoint = exports.CatalogImportRunSchema = exports.CatalogImportStatsSchema = exports.ImportSteamGiftRequestSchema = exports.SetVariantMarginRequestSchema = exports.ImportKeysRequestSchema = exports.CreateVariantRequestSchema = exports.CreateProductRequestSchema = void 0;
3
+ exports.ProductCommands = exports.SetVariantMarginEndpoint = exports.ReplaceProductMediaEndpoint = exports.UpdateProductEndpoint = exports.ParseSteamEndpoint = exports.ImportKeysEndpoint = exports.CreateVariantEndpoint = exports.PublishProductEndpoint = exports.ArchiveProductEndpoint = exports.CreateProductEndpoint = exports.ParseSteamResponseSchema = exports.SteamImageSetSchema = exports.SteamImageVariantSchema = exports.ParseSteamEditionSchema = exports.ParseSteamGameModeSchema = exports.ListCatalogImportRunsEndpoint = exports.GetCatalogImportRunEndpoint = exports.ImportSteamGiftEndpoint = exports.CatalogImportRunSchema = exports.CatalogImportStatsSchema = exports.ImportSteamGiftRequestSchema = exports.SetVariantMarginRequestSchema = exports.ReplaceProductMediaRequestSchema = exports.ProductMediaInputSchema = exports.UpdateProductRequestSchema = exports.ImportKeysRequestSchema = exports.CreateVariantRequestSchema = exports.CreateProductRequestSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const common_1 = require("../../shared/common");
6
6
  const money_1 = require("../../shared/money");
@@ -17,6 +17,10 @@ exports.CreateProductRequestSchema = zod_1.z.object({
17
17
  catalogImageUrl: zod_1.z.url().optional(),
18
18
  cardImageUrl: zod_1.z.url().optional(),
19
19
  steamAppId: zod_1.z.number().int().positive().optional(),
20
+ // SEO-оверрайды: если не заданы, backend отдаёт автоген в `product.seo`.
21
+ metaTitle: zod_1.z.string().max(256).optional(),
22
+ metaDescription: zod_1.z.string().max(512).optional(),
23
+ ogImageUrl: zod_1.z.url().optional(),
20
24
  // Каталожная привязка выводится из категории: category → (showcase | subShowcase).
21
25
  categoryId: zod_1.z.number().int().positive(),
22
26
  });
@@ -39,6 +43,39 @@ exports.CreateVariantRequestSchema = zod_1.z.object({
39
43
  exports.ImportKeysRequestSchema = zod_1.z.object({
40
44
  keys: zod_1.z.array(zod_1.z.string().min(1)).min(1).max(10_000),
41
45
  });
46
+ /** Частичное обновление карточки: присылаются только изменённые поля. */
47
+ exports.UpdateProductRequestSchema = zod_1.z
48
+ .object({
49
+ title: zod_1.z.string().min(1).max(256),
50
+ originalTitle: zod_1.z.string().max(256).nullable(),
51
+ type: dtos_1.ProductTypeSchema,
52
+ description: zod_1.z.string().max(65_536).nullable(),
53
+ shortDescription: zod_1.z.string().max(2048).nullable(),
54
+ coverImageUrl: zod_1.z.url().nullable(),
55
+ catalogImageUrl: zod_1.z.url().nullable(),
56
+ cardImageUrl: zod_1.z.url().nullable(),
57
+ basePriceUsd: money_1.MoneyAmountSchema,
58
+ steamAppId: zod_1.z.number().int().positive().nullable(),
59
+ /** SEO-оверрайды; null сбрасывает обратно на автоген. */
60
+ metaTitle: zod_1.z.string().max(256).nullable(),
61
+ metaDescription: zod_1.z.string().max(512).nullable(),
62
+ ogImageUrl: zod_1.z.url().nullable(),
63
+ /** Смена категории переносит товар в другой раздел каталога. */
64
+ categoryId: zod_1.z.number().int().positive(),
65
+ })
66
+ .partial();
67
+ exports.ProductMediaInputSchema = zod_1.z.object({
68
+ type: dtos_1.ProductMediaTypeSchema,
69
+ url: zod_1.z.url(),
70
+ thumbnailUrl: zod_1.z.url().optional(),
71
+ });
72
+ /**
73
+ * Галерея заменяется целиком: порядок элементов в массиве и есть порядок
74
+ * в слайдере. Так переупорядочивание — это один запрос без diff-логики.
75
+ */
76
+ exports.ReplaceProductMediaRequestSchema = zod_1.z.object({
77
+ items: zod_1.z.array(exports.ProductMediaInputSchema).max(60),
78
+ });
42
79
  exports.SetVariantMarginRequestSchema = zod_1.z.object({
43
80
  marginPct: zod_1.z
44
81
  .string()
@@ -139,6 +176,12 @@ exports.SteamImageSetSchema = zod_1.z.object({
139
176
  });
140
177
  exports.ParseSteamResponseSchema = zod_1.z.object({
141
178
  images: exports.SteamImageSetSchema,
179
+ /**
180
+ * Готовая галерея для слайдера: трейлеры идут первыми, затем скриншоты.
181
+ * Формат совпадает с телом `PUT /api/admin/products/:id/media` — можно
182
+ * отправить как есть либо предварительно переставить.
183
+ */
184
+ gallery: zod_1.z.array(exports.ProductMediaInputSchema),
142
185
  appId: zod_1.z.number().int().positive(),
143
186
  slug: zod_1.z.string(),
144
187
  title: zod_1.z.string(),
@@ -207,6 +250,24 @@ exports.ParseSteamEndpoint = {
207
250
  requiresAuth: true,
208
251
  requiresAdmin: true,
209
252
  };
253
+ exports.UpdateProductEndpoint = {
254
+ method: "PUT",
255
+ path: "/api/admin/products/:id",
256
+ params: common_1.IdParamSchema,
257
+ request: exports.UpdateProductRequestSchema,
258
+ response: zod_1.z.object({ id: zod_1.z.number().int().positive() }),
259
+ requiresAuth: true,
260
+ requiresAdmin: true,
261
+ };
262
+ exports.ReplaceProductMediaEndpoint = {
263
+ method: "PUT",
264
+ path: "/api/admin/products/:id/media",
265
+ params: common_1.IdParamSchema,
266
+ request: exports.ReplaceProductMediaRequestSchema,
267
+ response: zod_1.z.object({ media: zod_1.z.array(dtos_1.ProductMediaSchema) }),
268
+ requiresAuth: true,
269
+ requiresAdmin: true,
270
+ };
210
271
  exports.SetVariantMarginEndpoint = {
211
272
  method: "PATCH",
212
273
  path: "/api/admin/products/variants/:id/margin",
@@ -218,6 +279,8 @@ exports.SetVariantMarginEndpoint = {
218
279
  };
219
280
  exports.ProductCommands = {
220
281
  create: exports.CreateProductEndpoint,
282
+ update: exports.UpdateProductEndpoint,
283
+ replaceMedia: exports.ReplaceProductMediaEndpoint,
221
284
  archive: exports.ArchiveProductEndpoint,
222
285
  publish: exports.PublishProductEndpoint,
223
286
  createVariant: exports.CreateVariantEndpoint,
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/domains/products/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/domains/products/commands.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,23 @@ export declare const DesslyServiceTypeSchema: z.ZodEnum<{
32
32
  CRYPTO_REFILL: "CRYPTO_REFILL";
33
33
  }>;
34
34
  export type DesslyServiceType = z.infer<typeof DesslyServiceTypeSchema>;
35
+ export declare const ProductMediaTypeSchema: z.ZodEnum<{
36
+ IMAGE: "IMAGE";
37
+ VIDEO: "VIDEO";
38
+ }>;
39
+ export type ProductMediaType = z.infer<typeof ProductMediaTypeSchema>;
40
+ /** Элемент галереи карточки: скриншот или трейлер. Порядок задаёт админ. */
41
+ export declare const ProductMediaSchema: z.ZodObject<{
42
+ id: z.ZodNumber;
43
+ type: z.ZodEnum<{
44
+ IMAGE: "IMAGE";
45
+ VIDEO: "VIDEO";
46
+ }>;
47
+ url: z.ZodString;
48
+ thumbnailUrl: z.ZodNullable<z.ZodString>;
49
+ sortOrder: z.ZodNumber;
50
+ }, z.core.$strip>;
51
+ export type ProductMedia = z.infer<typeof ProductMediaSchema>;
35
52
  export declare const ProductVariantSchema: z.ZodObject<{
36
53
  id: z.ZodNumber;
37
54
  name: z.ZodString;
@@ -104,6 +121,25 @@ export declare const ProductCatalogNodeSchema: z.ZodObject<{
104
121
  name: z.ZodString;
105
122
  }, z.core.$strip>;
106
123
  export type ProductCatalogNode = z.infer<typeof ProductCatalogNodeSchema>;
124
+ /**
125
+ * SEO-блок карточки — всегда заполнен. Явные значения из админки перекрывают
126
+ * автогенерацию, но даже без ручного ввода у каждого товара есть корректные
127
+ * meta/OG: фронт кладёт их в <head> (title, description, og:*, twitter:*) и
128
+ * строит JSON-LD Product / BreadcrumbList. `canonicalPath` — путь без домена
129
+ * (`/product/{slug}`), домен подставляет фронт.
130
+ */
131
+ export declare const ProductSeoSchema: z.ZodObject<{
132
+ metaTitle: z.ZodString;
133
+ metaDescription: z.ZodString;
134
+ ogImageUrl: z.ZodNullable<z.ZodString>;
135
+ canonicalPath: z.ZodString;
136
+ breadcrumb: z.ZodArray<z.ZodObject<{
137
+ id: z.ZodNumber;
138
+ slug: z.ZodString;
139
+ name: z.ZodString;
140
+ }, z.core.$strip>>;
141
+ }, z.core.$strip>;
142
+ export type ProductSeo = z.infer<typeof ProductSeoSchema>;
107
143
  export declare const ProductSchema: z.ZodObject<{
108
144
  id: z.ZodNumber;
109
145
  slug: z.ZodString;
@@ -133,6 +169,18 @@ export declare const ProductSchema: z.ZodObject<{
133
169
  uah: z.ZodString;
134
170
  kzt: z.ZodString;
135
171
  }, z.core.$strip>;
172
+ popularityScore: z.ZodNumber;
173
+ seo: z.ZodObject<{
174
+ metaTitle: z.ZodString;
175
+ metaDescription: z.ZodString;
176
+ ogImageUrl: z.ZodNullable<z.ZodString>;
177
+ canonicalPath: z.ZodString;
178
+ breadcrumb: z.ZodArray<z.ZodObject<{
179
+ id: z.ZodNumber;
180
+ slug: z.ZodString;
181
+ name: z.ZodString;
182
+ }, z.core.$strip>>;
183
+ }, z.core.$strip>;
136
184
  variants: z.ZodArray<z.ZodObject<{
137
185
  id: z.ZodNumber;
138
186
  name: z.ZodString;
@@ -158,6 +206,16 @@ export declare const ProductSchema: z.ZodObject<{
158
206
  }>>;
159
207
  isActive: z.ZodBoolean;
160
208
  }, z.core.$strip>>;
209
+ media: z.ZodArray<z.ZodObject<{
210
+ id: z.ZodNumber;
211
+ type: z.ZodEnum<{
212
+ IMAGE: "IMAGE";
213
+ VIDEO: "VIDEO";
214
+ }>;
215
+ url: z.ZodString;
216
+ thumbnailUrl: z.ZodNullable<z.ZodString>;
217
+ sortOrder: z.ZodNumber;
218
+ }, z.core.$strip>>;
161
219
  }, z.core.$strip>;
162
220
  export type Product = z.infer<typeof ProductSchema>;
163
221
  export declare const AdminProductSchema: z.ZodObject<{
@@ -189,6 +247,28 @@ export declare const AdminProductSchema: z.ZodObject<{
189
247
  uah: z.ZodString;
190
248
  kzt: z.ZodString;
191
249
  }, z.core.$strip>;
250
+ popularityScore: z.ZodNumber;
251
+ seo: z.ZodObject<{
252
+ metaTitle: z.ZodString;
253
+ metaDescription: z.ZodString;
254
+ ogImageUrl: z.ZodNullable<z.ZodString>;
255
+ canonicalPath: z.ZodString;
256
+ breadcrumb: z.ZodArray<z.ZodObject<{
257
+ id: z.ZodNumber;
258
+ slug: z.ZodString;
259
+ name: z.ZodString;
260
+ }, z.core.$strip>>;
261
+ }, z.core.$strip>;
262
+ media: z.ZodArray<z.ZodObject<{
263
+ id: z.ZodNumber;
264
+ type: z.ZodEnum<{
265
+ IMAGE: "IMAGE";
266
+ VIDEO: "VIDEO";
267
+ }>;
268
+ url: z.ZodString;
269
+ thumbnailUrl: z.ZodNullable<z.ZodString>;
270
+ sortOrder: z.ZodNumber;
271
+ }, z.core.$strip>>;
192
272
  originalTitle: z.ZodNullable<z.ZodString>;
193
273
  catalogImageUrl: z.ZodNullable<z.ZodString>;
194
274
  cardImageUrl: z.ZodNullable<z.ZodString>;
@@ -1 +1 @@
1
- {"version":3,"file":"dtos.d.ts","sourceRoot":"","sources":["../../../src/domains/products/dtos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAsB,MAAM,oBAAoB,CAAC;AAE3E,eAAO,MAAM,iBAAiB;;;;;;;;;EAS5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,mBAAmB;;;;;EAA0D,CAAC;AAC3F,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,kBAAkB;;;;EAAyC,CAAC;AACzE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,uBAAuB;;;;;;EAMlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;iBAS/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAepC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,wBAAwB;;;;iBAInC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAWxB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmB7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,kBAAkB;;;;;iBAK7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"dtos.d.ts","sourceRoot":"","sources":["../../../src/domains/products/dtos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAsB,MAAM,oBAAoB,CAAC;AAE3E,eAAO,MAAM,iBAAiB;;;;;;;;;EAS5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,mBAAmB;;;;;EAA0D,CAAC;AAC3F,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,kBAAkB;;;;EAAyC,CAAC;AACzE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,uBAAuB;;;;;;EAMlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,sBAAsB;;;EAA6B,CAAC;AACjE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,4EAA4E;AAC5E,eAAO,MAAM,kBAAkB;;;;;;;;;iBAO7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;iBAS/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAepC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,wBAAwB;;;;iBAInC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;iBAM3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAgBxB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmB7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,kBAAkB;;;;;iBAK7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MoneyAmountSchema = exports.VariantStockSchema = exports.AdminProductSchema = exports.ProductSchema = exports.ProductCatalogNodeSchema = exports.AdminProductVariantSchema = exports.ProductVariantSchema = exports.DesslyServiceTypeSchema = exports.DeliveryTypeSchema = exports.ProductStatusSchema = exports.ProductTypeSchema = void 0;
3
+ exports.MoneyAmountSchema = exports.VariantStockSchema = exports.AdminProductSchema = exports.ProductSchema = exports.ProductSeoSchema = exports.ProductCatalogNodeSchema = exports.AdminProductVariantSchema = exports.ProductVariantSchema = exports.ProductMediaSchema = exports.ProductMediaTypeSchema = exports.DesslyServiceTypeSchema = exports.DeliveryTypeSchema = exports.ProductStatusSchema = exports.ProductTypeSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const money_1 = require("../../shared/money");
6
6
  Object.defineProperty(exports, "MoneyAmountSchema", { enumerable: true, get: function () { return money_1.MoneyAmountSchema; } });
@@ -23,6 +23,16 @@ exports.DesslyServiceTypeSchema = zod_1.z.enum([
23
23
  "VOUCHER",
24
24
  "CRYPTO_REFILL",
25
25
  ]);
26
+ exports.ProductMediaTypeSchema = zod_1.z.enum(["IMAGE", "VIDEO"]);
27
+ /** Элемент галереи карточки: скриншот или трейлер. Порядок задаёт админ. */
28
+ exports.ProductMediaSchema = zod_1.z.object({
29
+ id: zod_1.z.number().int().positive(),
30
+ type: exports.ProductMediaTypeSchema,
31
+ url: zod_1.z.string(),
32
+ /** Постер для видео; у изображений обычно null. */
33
+ thumbnailUrl: zod_1.z.string().nullable(),
34
+ sortOrder: zod_1.z.number().int().nonnegative(),
35
+ });
26
36
  exports.ProductVariantSchema = zod_1.z.object({
27
37
  id: zod_1.z.number().int().positive(),
28
38
  name: zod_1.z.string(),
@@ -54,6 +64,20 @@ exports.ProductCatalogNodeSchema = zod_1.z.object({
54
64
  slug: zod_1.z.string(),
55
65
  name: zod_1.z.string(),
56
66
  });
67
+ /**
68
+ * SEO-блок карточки — всегда заполнен. Явные значения из админки перекрывают
69
+ * автогенерацию, но даже без ручного ввода у каждого товара есть корректные
70
+ * meta/OG: фронт кладёт их в <head> (title, description, og:*, twitter:*) и
71
+ * строит JSON-LD Product / BreadcrumbList. `canonicalPath` — путь без домена
72
+ * (`/product/{slug}`), домен подставляет фронт.
73
+ */
74
+ exports.ProductSeoSchema = zod_1.z.object({
75
+ metaTitle: zod_1.z.string(),
76
+ metaDescription: zod_1.z.string(),
77
+ ogImageUrl: zod_1.z.string().nullable(),
78
+ canonicalPath: zod_1.z.string(),
79
+ breadcrumb: zod_1.z.array(exports.ProductCatalogNodeSchema),
80
+ });
57
81
  exports.ProductSchema = zod_1.z.object({
58
82
  id: zod_1.z.number().int().positive(),
59
83
  slug: zod_1.z.string(),
@@ -64,7 +88,12 @@ exports.ProductSchema = zod_1.z.object({
64
88
  shortDescription: zod_1.z.string().nullable(),
65
89
  coverImageUrl: zod_1.z.string().nullable(),
66
90
  basePrice: money_1.MoneyTripletSchema,
91
+ /** Оконный рейтинг покупок; дефолтная сортировка каталога — по нему. */
92
+ popularityScore: zod_1.z.number().nonnegative(),
93
+ seo: exports.ProductSeoSchema,
67
94
  variants: zod_1.z.array(exports.ProductVariantSchema),
95
+ /** Галерея для слайдера, отсортирована по sortOrder. */
96
+ media: zod_1.z.array(exports.ProductMediaSchema),
68
97
  });
69
98
  exports.AdminProductSchema = exports.ProductSchema.extend({
70
99
  originalTitle: zod_1.z.string().nullable(),
@@ -1 +1 @@
1
- {"version":3,"file":"dtos.js","sourceRoot":"","sources":["../../../src/domains/products/dtos.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,8CAA2E;AA8GlE,kGA9GA,yBAAiB,OA8GA;AA5Gb,QAAA,iBAAiB,GAAG,OAAC,CAAC,IAAI,CAAC;IACvC,UAAU;IACV,WAAW;IACX,OAAO;IACP,cAAc;IACd,cAAc;IACd,KAAK;IACL,UAAU;IACV,SAAS;CACT,CAAC,CAAC;AAGU,QAAA,mBAAmB,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC;AAG9E,QAAA,kBAAkB,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AAG5D,QAAA,uBAAuB,GAAG,OAAC,CAAC,IAAI,CAAC;IAC7C,aAAa;IACb,YAAY;IACZ,eAAe;IACf,SAAS;IACT,eAAe;CACf,CAAC,CAAC;AAGU,QAAA,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC/B,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;IACf,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,KAAK,EAAE,0BAAkB;IACzB,YAAY,EAAE,0BAAkB;IAChC,iBAAiB,EAAE,+BAAuB,CAAC,QAAQ,EAAE;IACrD,QAAQ,EAAE,OAAC,CAAC,OAAO,EAAE;CACrB,CAAC,CAAC;AAGU,QAAA,yBAAyB,GAAG,4BAAoB,CAAC,MAAM,CAAC;IACpE,QAAQ,EAAE,yBAAiB;IAC3B,gBAAgB,EAAE,yBAAiB,CAAC,QAAQ,EAAE;IAC9C,YAAY,EAAE,yBAAiB,CAAC,QAAQ,EAAE;IAC1C,WAAW,EAAE,yBAAiB,CAAC,QAAQ,EAAE;IACzC,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACpD,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACvD,iBAAiB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACzD,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IACxD,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;CAC3B,CAAC,CAAC;AAGU,QAAA,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IAChD,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC/B,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;CAChB,CAAC,CAAC;AAGU,QAAA,aAAa,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC/B,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IACjB,IAAI,EAAE,yBAAiB;IACvB,MAAM,EAAE,2BAAmB;IAC3B,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,SAAS,EAAE,0BAAkB;IAC7B,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC,4BAAoB,CAAC;CACvC,CAAC,CAAC;AAGU,QAAA,kBAAkB,GAAG,qBAAa,CAAC,MAAM,CAAC;IACtD,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACrD,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,QAAQ,EAAE,gCAAwB,CAAC,QAAQ,EAAE;IAC7C,WAAW,EAAE,gCAAwB,CAAC,QAAQ,EAAE;IAChD,QAAQ,EAAE,gCAAwB,CAAC,QAAQ,EAAE;IAC7C,YAAY,EAAE,yBAAiB;IAC/B,gBAAgB,EAAE,yBAAiB,CAAC,QAAQ,EAAE;IAC9C,YAAY,EAAE,yBAAiB,CAAC,QAAQ,EAAE;IAC1C,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IAC1C,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IAC1C,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACvC,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC,iCAAyB,CAAC;CAC5C,CAAC,CAAC;AAGU,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC1C,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACzC,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACpC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACxC,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;CACrC,CAAC,CAAC"}
1
+ {"version":3,"file":"dtos.js","sourceRoot":"","sources":["../../../src/domains/products/dtos.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,8CAA2E;AAiJlE,kGAjJA,yBAAiB,OAiJA;AA/Ib,QAAA,iBAAiB,GAAG,OAAC,CAAC,IAAI,CAAC;IACvC,UAAU;IACV,WAAW;IACX,OAAO;IACP,cAAc;IACd,cAAc;IACd,KAAK;IACL,UAAU;IACV,SAAS;CACT,CAAC,CAAC;AAGU,QAAA,mBAAmB,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC;AAG9E,QAAA,kBAAkB,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AAG5D,QAAA,uBAAuB,GAAG,OAAC,CAAC,IAAI,CAAC;IAC7C,aAAa;IACb,YAAY;IACZ,eAAe;IACf,SAAS;IACT,eAAe;CACf,CAAC,CAAC;AAGU,QAAA,sBAAsB,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAGjE,4EAA4E;AAC/D,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC1C,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC/B,IAAI,EAAE,8BAAsB;IAC5B,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;IACf,mDAAmD;IACnD,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;CACzC,CAAC,CAAC;AAGU,QAAA,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC/B,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;IACf,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,KAAK,EAAE,0BAAkB;IACzB,YAAY,EAAE,0BAAkB;IAChC,iBAAiB,EAAE,+BAAuB,CAAC,QAAQ,EAAE;IACrD,QAAQ,EAAE,OAAC,CAAC,OAAO,EAAE;CACrB,CAAC,CAAC;AAGU,QAAA,yBAAyB,GAAG,4BAAoB,CAAC,MAAM,CAAC;IACpE,QAAQ,EAAE,yBAAiB;IAC3B,gBAAgB,EAAE,yBAAiB,CAAC,QAAQ,EAAE;IAC9C,YAAY,EAAE,yBAAiB,CAAC,QAAQ,EAAE;IAC1C,WAAW,EAAE,yBAAiB,CAAC,QAAQ,EAAE;IACzC,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACpD,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACvD,iBAAiB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACzD,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IACxD,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;CAC3B,CAAC,CAAC;AAGU,QAAA,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IAChD,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC/B,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;CAChB,CAAC,CAAC;AAGH;;;;;;GAMG;AACU,QAAA,gBAAgB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE;IAC3B,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE;IACzB,UAAU,EAAE,OAAC,CAAC,KAAK,CAAC,gCAAwB,CAAC;CAC7C,CAAC,CAAC;AAGU,QAAA,aAAa,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC/B,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IACjB,IAAI,EAAE,yBAAiB;IACvB,MAAM,EAAE,2BAAmB;IAC3B,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,SAAS,EAAE,0BAAkB;IAC7B,wEAAwE;IACxE,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;IACzC,GAAG,EAAE,wBAAgB;IACrB,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC,4BAAoB,CAAC;IACvC,wDAAwD;IACxD,KAAK,EAAE,OAAC,CAAC,KAAK,CAAC,0BAAkB,CAAC;CAClC,CAAC,CAAC;AAGU,QAAA,kBAAkB,GAAG,qBAAa,CAAC,MAAM,CAAC;IACtD,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACrD,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,QAAQ,EAAE,gCAAwB,CAAC,QAAQ,EAAE;IAC7C,WAAW,EAAE,gCAAwB,CAAC,QAAQ,EAAE;IAChD,QAAQ,EAAE,gCAAwB,CAAC,QAAQ,EAAE;IAC7C,YAAY,EAAE,yBAAiB;IAC/B,gBAAgB,EAAE,yBAAiB,CAAC,QAAQ,EAAE;IAC9C,YAAY,EAAE,yBAAiB,CAAC,QAAQ,EAAE;IAC1C,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IAC1C,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IAC1C,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACvC,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC,iCAAyB,CAAC;CAC5C,CAAC,CAAC;AAGU,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC1C,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACzC,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACpC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACxC,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;CACrC,CAAC,CAAC"}