@mamindom/contracts 1.0.129 → 1.0.130

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.
@@ -66,6 +66,8 @@ export interface BrandingProfile {
66
66
  resolvedBrandName: string;
67
67
  resolvedBrandUrl: string;
68
68
  resolvedSupportEmail: string;
69
+ /** Кастомний HTML-хедер (замість дефолтного логотип-блоку). Порожньо → default. */
70
+ headerHtml: string;
69
71
  }
70
72
  export interface UpdateBrandingRequest {
71
73
  /** optional: відсутність → не оновлювати; порожній рядок → скинути до NULL у БД. */
@@ -75,6 +77,7 @@ export interface UpdateBrandingRequest {
75
77
  supportEmail?: string | undefined;
76
78
  footerHtml?: string | undefined;
77
79
  actorId: string;
80
+ headerHtml?: string | undefined;
78
81
  }
79
82
  export interface NotificationTemplate {
80
83
  id: string;
@@ -172,6 +175,11 @@ export interface RenderPreviewRequest {
172
175
  /** JSON-stringified variables { "order.number": "MD-2026-0001", ... } */
173
176
  variablesJson: string;
174
177
  subject?: string | undefined;
178
+ /**
179
+ * JSON-stringified branding override (header/footer/logo/brand…) для live-
180
+ * превʼю незбережених змін на сторінці брендингу. Порожньо → беремо з БД.
181
+ */
182
+ brandingJson?: string | undefined;
175
183
  }
176
184
  export interface RenderPreviewResponse {
177
185
  html: string;
@@ -53,6 +53,8 @@ message BrandingProfile {
53
53
  string resolved_brand_name = 9;
54
54
  string resolved_brand_url = 10;
55
55
  string resolved_support_email = 11;
56
+ // Кастомний HTML-хедер (замість дефолтного логотип-блоку). Порожньо → default.
57
+ string header_html = 12;
56
58
  }
57
59
 
58
60
  message UpdateBrandingRequest {
@@ -63,6 +65,7 @@ message UpdateBrandingRequest {
63
65
  optional string support_email = 4;
64
66
  optional string footer_html = 5;
65
67
  string actor_id = 6;
68
+ optional string header_html = 7;
66
69
  }
67
70
 
68
71
 
@@ -238,6 +241,9 @@ message RenderPreviewRequest {
238
241
  // JSON-stringified variables { "order.number": "MD-2026-0001", ... }
239
242
  string variables_json = 2;
240
243
  optional string subject = 3;
244
+ // JSON-stringified branding override (header/footer/logo/brand…) для live-
245
+ // превʼю незбережених змін на сторінці брендингу. Порожньо → беремо з БД.
246
+ optional string branding_json = 4;
241
247
  }
242
248
 
243
249
  message RenderPreviewResponse {
@@ -8,7 +8,6 @@ export interface OrderCancelledEvent {
8
8
  releaseStock: boolean
9
9
  cancelledAt: number
10
10
 
11
- // Опціональний customer-snapshot для нотифікацій.
12
11
  userId?: string
13
12
  customer?: {
14
13
  firstName: string
@@ -8,8 +8,6 @@ export interface OrderStatusChangedEvent {
8
8
  actorName?: string
9
9
  changedAt: number
10
10
 
11
- // Опціональний customer-snapshot для нотифікацій (щоб
12
- // notification-service не робив додатковий lookup в order-service).
13
11
  userId?: string
14
12
  customer?: {
15
13
  firstName: string
@@ -18,7 +16,6 @@ export interface OrderStatusChangedEvent {
18
16
  phone: string
19
17
  }
20
18
 
21
- // На переходах у shipped — ТТН + tracking URL.
22
19
  trackingNumber?: string
23
20
  trackingUrl?: string
24
21
  }
@@ -1,5 +1,3 @@
1
- // Подія від order-service: замовлення переходить у packing → catalog
2
- // списує резерв у реальний OUTGOING рух (підтверджує продаж).
3
1
  export interface StockConfirmRequestedEvent {
4
2
  orderId: string
5
3
  orderNumber: string
@@ -1,5 +1,3 @@
1
- // Подія від order-service: cancel/відмова → catalog скасовує всі резерви
2
- // замовлення (по reference_type='order', reference_id=orderId).
3
1
  export interface StockReleaseRequestedEvent {
4
2
  orderId: string
5
3
  orderNumber: string
@@ -1,5 +1,3 @@
1
- // Подія від catalog-service: catalog НЕ зміг зарезервувати (insufficient
2
- // stock, product disappeared). Order-service кенселить замовлення з reason.
3
1
  export interface StockReserveFailedEvent {
4
2
  orderId: string
5
3
  orderNumber: string
@@ -1,9 +1,3 @@
1
- // Подія від order-service: catalog має зарезервувати stock для замовлення.
2
- // Catalog сам обирає warehouse(и) (auto-pick first-available, greedy
3
- // fill через product_warehouses ORDER BY created_at).
4
- //
5
- // TTL у мс — після його закінчення UnpaidOrdersCron у order-service
6
- // автоматично скасує замовлення → catalog отримає stock.release_requested.
7
1
  export interface StockReserveRequestedEvent {
8
2
  orderId: string
9
3
  orderNumber: string
@@ -1,5 +1,3 @@
1
- // Подія від catalog-service: успішний резерв → order-service зберігає
2
- // reservationId/reservedUntil у OrderItem (для admin UI і traceability).
3
1
  export interface StockReservedEvent {
4
2
  orderId: string
5
3
  orderNumber: string
@@ -82,6 +82,8 @@ export interface BrandingProfile {
82
82
  resolvedBrandName: string;
83
83
  resolvedBrandUrl: string;
84
84
  resolvedSupportEmail: string;
85
+ /** Кастомний HTML-хедер (замість дефолтного логотип-блоку). Порожньо → default. */
86
+ headerHtml: string;
85
87
  }
86
88
 
87
89
  export interface UpdateBrandingRequest {
@@ -92,6 +94,7 @@ export interface UpdateBrandingRequest {
92
94
  supportEmail?: string | undefined;
93
95
  footerHtml?: string | undefined;
94
96
  actorId: string;
97
+ headerHtml?: string | undefined;
95
98
  }
96
99
 
97
100
  export interface NotificationTemplate {
@@ -203,7 +206,14 @@ export interface RenderPreviewRequest {
203
206
  bodyHtml: string;
204
207
  /** JSON-stringified variables { "order.number": "MD-2026-0001", ... } */
205
208
  variablesJson: string;
206
- subject?: string | undefined;
209
+ subject?:
210
+ | string
211
+ | undefined;
212
+ /**
213
+ * JSON-stringified branding override (header/footer/logo/brand…) для live-
214
+ * превʼю незбережених змін на сторінці брендингу. Порожньо → беремо з БД.
215
+ */
216
+ brandingJson?: string | undefined;
207
217
  }
208
218
 
209
219
  export interface RenderPreviewResponse {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mamindom/contracts",
3
3
  "description": "proto",
4
- "version": "1.0.129",
4
+ "version": "1.0.130",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",
7
7
  "exports": {
@@ -53,6 +53,8 @@ message BrandingProfile {
53
53
  string resolved_brand_name = 9;
54
54
  string resolved_brand_url = 10;
55
55
  string resolved_support_email = 11;
56
+ // Кастомний HTML-хедер (замість дефолтного логотип-блоку). Порожньо → default.
57
+ string header_html = 12;
56
58
  }
57
59
 
58
60
  message UpdateBrandingRequest {
@@ -63,6 +65,7 @@ message UpdateBrandingRequest {
63
65
  optional string support_email = 4;
64
66
  optional string footer_html = 5;
65
67
  string actor_id = 6;
68
+ optional string header_html = 7;
66
69
  }
67
70
 
68
71
 
@@ -238,6 +241,9 @@ message RenderPreviewRequest {
238
241
  // JSON-stringified variables { "order.number": "MD-2026-0001", ... }
239
242
  string variables_json = 2;
240
243
  optional string subject = 3;
244
+ // JSON-stringified branding override (header/footer/logo/brand…) для live-
245
+ // превʼю незбережених змін на сторінці брендингу. Порожньо → беремо з БД.
246
+ optional string branding_json = 4;
241
247
  }
242
248
 
243
249
  message RenderPreviewResponse {