@mamindom/contracts 1.0.191 → 1.0.192

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.
@@ -461,6 +461,16 @@ export interface UpdateProductRequest {
461
461
  manualRating?: number | undefined;
462
462
  weightKg?: number | undefined;
463
463
  guid1c?: string | undefined;
464
+ /**
465
+ * Явне очищення списків.
466
+ *
467
+ * У proto3 `repeated` не відрізняє «не передано» від «передано порожнім»,
468
+ * тож порожній масив сам по собі означає «не чіпати». Раніше цього
469
+ * розрізнення не було: клієнт, який не надіслав `images`, отримував від
470
+ * gateway [] — і всі фото товару видалялися разом із файлами в S3.
471
+ *
472
+ * Той самий підхід уже застосований в UpdateProductVariantRequest.
473
+ */
464
474
  clearImages: boolean;
465
475
  clearCategories: boolean;
466
476
  clearStickers: boolean;
@@ -610,6 +620,10 @@ export interface ProductGroupMember {
610
620
  colorHex: string;
611
621
  price: number;
612
622
  status: ProductStatus;
623
+ /** Потрібен вітрині: перемикач кольору веде на картку сусіда за ЧПУ. */
624
+ slug: string;
625
+ /** Чи є що купити — сусід без залишку показується неактивним, а не зникає. */
626
+ inStock: boolean;
613
627
  }
614
628
  export interface ProductGroupMember_NameEntry {
615
629
  key: string;
@@ -451,7 +451,14 @@ message UpdateProductRequest {
451
451
  optional double weight_kg = 26;
452
452
  optional string guid1c = 27;
453
453
 
454
-
454
+ // Явне очищення списків.
455
+ //
456
+ // У proto3 `repeated` не відрізняє «не передано» від «передано порожнім»,
457
+ // тож порожній масив сам по собі означає «не чіпати». Раніше цього
458
+ // розрізнення не було: клієнт, який не надіслав `images`, отримував від
459
+ // gateway [] — і всі фото товару видалялися разом із файлами в S3.
460
+ //
461
+ // Той самий підхід уже застосований в UpdateProductVariantRequest.
455
462
  bool clear_images = 28;
456
463
  bool clear_categories = 29;
457
464
  bool clear_stickers = 30;
@@ -610,6 +617,11 @@ message ProductGroupMember {
610
617
  string color_hex = 6;
611
618
  double price = 7;
612
619
  ProductStatus status = 8;
620
+
621
+ // Потрібен вітрині: перемикач кольору веде на картку сусіда за ЧПУ.
622
+ string slug = 9;
623
+ // Чи є що купити — сусід без залишку показується неактивним, а не зникає.
624
+ bool in_stock = 10;
613
625
  }
614
626
 
615
627
  message CreateProductGroupRequest {
package/gen/product.ts CHANGED
@@ -463,7 +463,19 @@ export interface UpdateProductRequest {
463
463
  colorHex?: string | undefined;
464
464
  manualRating?: number | undefined;
465
465
  weightKg?: number | undefined;
466
- guid1c?: string | undefined;
466
+ guid1c?:
467
+ | string
468
+ | undefined;
469
+ /**
470
+ * Явне очищення списків.
471
+ *
472
+ * У proto3 `repeated` не відрізняє «не передано» від «передано порожнім»,
473
+ * тож порожній масив сам по собі означає «не чіпати». Раніше цього
474
+ * розрізнення не було: клієнт, який не надіслав `images`, отримував від
475
+ * gateway [] — і всі фото товару видалялися разом із файлами в S3.
476
+ *
477
+ * Той самий підхід уже застосований в UpdateProductVariantRequest.
478
+ */
467
479
  clearImages: boolean;
468
480
  clearCategories: boolean;
469
481
  clearStickers: boolean;
@@ -632,6 +644,10 @@ export interface ProductGroupMember {
632
644
  colorHex: string;
633
645
  price: number;
634
646
  status: ProductStatus;
647
+ /** Потрібен вітрині: перемикач кольору веде на картку сусіда за ЧПУ. */
648
+ slug: string;
649
+ /** Чи є що купити — сусід без залишку показується неактивним, а не зникає. */
650
+ inStock: boolean;
635
651
  }
636
652
 
637
653
  export interface ProductGroupMember_NameEntry {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mamindom/contracts",
3
3
  "description": "proto",
4
- "version": "1.0.191",
4
+ "version": "1.0.192",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",
7
7
  "exports": {
@@ -451,7 +451,14 @@ message UpdateProductRequest {
451
451
  optional double weight_kg = 26;
452
452
  optional string guid1c = 27;
453
453
 
454
-
454
+ // Явне очищення списків.
455
+ //
456
+ // У proto3 `repeated` не відрізняє «не передано» від «передано порожнім»,
457
+ // тож порожній масив сам по собі означає «не чіпати». Раніше цього
458
+ // розрізнення не було: клієнт, який не надіслав `images`, отримував від
459
+ // gateway [] — і всі фото товару видалялися разом із файлами в S3.
460
+ //
461
+ // Той самий підхід уже застосований в UpdateProductVariantRequest.
455
462
  bool clear_images = 28;
456
463
  bool clear_categories = 29;
457
464
  bool clear_stickers = 30;
@@ -610,6 +617,11 @@ message ProductGroupMember {
610
617
  string color_hex = 6;
611
618
  double price = 7;
612
619
  ProductStatus status = 8;
620
+
621
+ // Потрібен вітрині: перемикач кольору веде на картку сусіда за ЧПУ.
622
+ string slug = 9;
623
+ // Чи є що купити — сусід без залишку показується неактивним, а не зникає.
624
+ bool in_stock = 10;
613
625
  }
614
626
 
615
627
  message CreateProductGroupRequest {