@mamindom/contracts 1.0.144 → 1.0.146
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/gen/attribute.d.ts +40 -0
- package/dist/gen/attribute.js +1 -0
- package/dist/gen/brand.d.ts +19 -0
- package/dist/gen/brand.js +8 -1
- package/dist/gen/bundle.d.ts +0 -2
- package/dist/gen/cart.d.ts +0 -28
- package/dist/gen/category.d.ts +26 -0
- package/dist/gen/category.js +1 -0
- package/dist/gen/delivery.d.ts +0 -1
- package/dist/gen/delivery_settings.d.ts +0 -4
- package/dist/gen/faq.d.ts +0 -6
- package/dist/gen/manager.d.ts +0 -12
- package/dist/gen/notification.d.ts +0 -71
- package/dist/gen/order.d.ts +0 -29
- package/dist/gen/page.d.ts +0 -5
- package/dist/gen/payment.d.ts +0 -22
- package/dist/gen/pickup.d.ts +0 -9
- package/dist/gen/product.d.ts +108 -11
- package/dist/gen/product.js +5 -0
- package/dist/gen/promotion.d.ts +0 -16
- package/dist/gen/rbac.d.ts +0 -16
- package/dist/gen/search.d.ts +0 -14
- package/dist/gen/seo_filter.d.ts +0 -57
- package/dist/gen/shop_filters.d.ts +0 -5
- package/dist/gen/users.d.ts +0 -9
- package/dist/gen/warehouse.d.ts +34 -0
- package/dist/gen/warehouse.js +28 -0
- package/dist/proto/attribute.proto +35 -0
- package/dist/proto/brand.proto +25 -0
- package/dist/proto/bundle.proto +2 -2
- package/dist/proto/cart.proto +5 -14
- package/dist/proto/category.proto +26 -0
- package/dist/proto/delivery.proto +1 -6
- package/dist/proto/delivery_settings.proto +4 -4
- package/dist/proto/faq.proto +3 -10
- package/dist/proto/manager.proto +3 -5
- package/dist/proto/notification.proto +33 -56
- package/dist/proto/order.proto +9 -21
- package/dist/proto/page.proto +1 -3
- package/dist/proto/payment.proto +8 -14
- package/dist/proto/pickup.proto +7 -9
- package/dist/proto/product.proto +144 -34
- package/dist/proto/promotion.proto +9 -22
- package/dist/proto/rbac.proto +7 -9
- package/dist/proto/search.proto +10 -14
- package/dist/proto/seo_filter.proto +17 -36
- package/dist/proto/shop_filters.proto +1 -3
- package/dist/proto/users.proto +5 -8
- package/dist/proto/warehouse.proto +38 -0
- package/dist/src/proto/paths.d.ts +1 -0
- package/dist/src/proto/paths.js +1 -0
- package/gen/attribute.ts +48 -0
- package/gen/brand.ts +35 -1
- package/gen/bundle.ts +1 -5
- package/gen/cart.ts +1 -35
- package/gen/category.ts +34 -0
- package/gen/delivery.ts +0 -1
- package/gen/delivery_settings.ts +0 -4
- package/gen/faq.ts +0 -12
- package/gen/manager.ts +1 -17
- package/gen/notification.ts +5 -98
- package/gen/order.ts +0 -33
- package/gen/page.ts +0 -5
- package/gen/payment.ts +0 -34
- package/gen/pickup.ts +2 -19
- package/gen/product.ts +148 -28
- package/gen/promotion.ts +3 -33
- package/gen/rbac.ts +1 -25
- package/gen/search.ts +0 -22
- package/gen/seo_filter.ts +3 -74
- package/gen/shop_filters.ts +0 -5
- package/gen/users.ts +1 -20
- package/gen/warehouse.ts +67 -0
- package/package.json +1 -1
- package/proto/attribute.proto +35 -0
- package/proto/brand.proto +25 -0
- package/proto/bundle.proto +2 -2
- package/proto/cart.proto +5 -14
- package/proto/category.proto +26 -0
- package/proto/delivery.proto +1 -6
- package/proto/delivery_settings.proto +4 -4
- package/proto/faq.proto +3 -10
- package/proto/manager.proto +3 -5
- package/proto/notification.proto +33 -56
- package/proto/order.proto +9 -21
- package/proto/page.proto +1 -3
- package/proto/payment.proto +8 -14
- package/proto/pickup.proto +7 -9
- package/proto/product.proto +144 -34
- package/proto/promotion.proto +9 -22
- package/proto/rbac.proto +7 -9
- package/proto/search.proto +10 -14
- package/proto/seo_filter.proto +17 -36
- package/proto/shop_filters.proto +1 -3
- package/proto/users.proto +5 -8
- package/proto/warehouse.proto +38 -0
package/dist/gen/order.d.ts
CHANGED
|
@@ -6,9 +6,7 @@ export interface AggregateByCustomersRequest {
|
|
|
6
6
|
export interface CustomerOrderAggregate {
|
|
7
7
|
userId: string;
|
|
8
8
|
ordersCount: number;
|
|
9
|
-
/** Decimal у вигляді рядка ('1234.56') — щоб не втратити точність на gRPC border. */
|
|
10
9
|
totalSum: string;
|
|
11
|
-
/** ISO-рядок, відсутній якщо клієнт ще не робив замовлень. */
|
|
12
10
|
lastOrderAt?: string | undefined;
|
|
13
11
|
}
|
|
14
12
|
export interface AggregateByCustomersResponse {
|
|
@@ -48,10 +46,6 @@ export interface OrderDelivery {
|
|
|
48
46
|
trackingUrl: string;
|
|
49
47
|
estimatedDate: string;
|
|
50
48
|
shipmentStatus: string;
|
|
51
|
-
/**
|
|
52
|
-
* Адмін-облік: область/регіон з City.region від delivery-service.
|
|
53
|
-
* Старі замовлення можуть мати порожнє значення.
|
|
54
|
-
*/
|
|
55
49
|
region: string;
|
|
56
50
|
}
|
|
57
51
|
export interface OrderPayment {
|
|
@@ -65,10 +59,6 @@ export interface OrderPayment {
|
|
|
65
59
|
capturedAt: number;
|
|
66
60
|
cancelledAt: number;
|
|
67
61
|
refundedAt: number;
|
|
68
|
-
/**
|
|
69
|
-
* Денормалізовано з payment-service для відображення в адмінці
|
|
70
|
-
* без додаткового gRPC дзвінка. Оновлюється з payment-events listener.
|
|
71
|
-
*/
|
|
72
62
|
capturedAmount: number;
|
|
73
63
|
refundedAmount: number;
|
|
74
64
|
}
|
|
@@ -132,12 +122,7 @@ export interface Order {
|
|
|
132
122
|
tags: string[];
|
|
133
123
|
createdAt: number;
|
|
134
124
|
updatedAt: number;
|
|
135
|
-
/**
|
|
136
|
-
* Внутрішні нотатки менеджерів (видимі тільки в адмінці).
|
|
137
|
-
* Сортуються від новіших до старіших — server-side.
|
|
138
|
-
*/
|
|
139
125
|
notes: OrderNote[];
|
|
140
|
-
/** 0 = не в архіві; інакше timestamp коли архівовано. */
|
|
141
126
|
archivedAt: number;
|
|
142
127
|
}
|
|
143
128
|
export interface CreateOrderRequest {
|
|
@@ -187,10 +172,6 @@ export interface ListOrdersRequest {
|
|
|
187
172
|
totalTo: number;
|
|
188
173
|
sortBy: string;
|
|
189
174
|
sortDir: string;
|
|
190
|
-
/**
|
|
191
|
-
* 0 = тільки активні (default), 1 = тільки архівні, 2 = всі.
|
|
192
|
-
* Менеджер бачить тільки свої через manager_id (вище).
|
|
193
|
-
*/
|
|
194
175
|
archivedFilter: number;
|
|
195
176
|
}
|
|
196
177
|
export interface ListUserOrdersRequest {
|
|
@@ -292,10 +273,6 @@ export interface OrderServiceClient {
|
|
|
292
273
|
listUserOrders(request: ListUserOrdersRequest): Observable<ListOrdersResponse>;
|
|
293
274
|
updateStatus(request: UpdateStatusRequest): Observable<OrderResponse>;
|
|
294
275
|
cancelOrder(request: CancelOrderRequest): Observable<OrderResponse>;
|
|
295
|
-
/**
|
|
296
|
-
* Archive (soft delete) — встановлює archived_at. Замовлення зникає
|
|
297
|
-
* з дефолтного списку, але доступне через ?archived=true.
|
|
298
|
-
*/
|
|
299
276
|
archiveOrder(request: ArchiveOrderRequest): Observable<OrderResponse>;
|
|
300
277
|
unarchiveOrder(request: UnarchiveOrderRequest): Observable<OrderResponse>;
|
|
301
278
|
assignManager(request: AssignManagerRequest): Observable<OrderResponse>;
|
|
@@ -306,7 +283,6 @@ export interface OrderServiceClient {
|
|
|
306
283
|
setTrackingNumber(request: SetTrackingNumberRequest): Observable<OrderResponse>;
|
|
307
284
|
reorderOrder(request: ReorderOrderRequest): Observable<ReorderResponse>;
|
|
308
285
|
listHistory(request: ListHistoryRequest): Observable<ListHistoryResponse>;
|
|
309
|
-
/** CRM-агрегація для експорту клієнтів — повертає count/sum/last для кожного userId. */
|
|
310
286
|
aggregateByCustomers(request: AggregateByCustomersRequest): Observable<AggregateByCustomersResponse>;
|
|
311
287
|
}
|
|
312
288
|
export interface OrderServiceController {
|
|
@@ -318,10 +294,6 @@ export interface OrderServiceController {
|
|
|
318
294
|
listUserOrders(request: ListUserOrdersRequest): Promise<ListOrdersResponse> | Observable<ListOrdersResponse> | ListOrdersResponse;
|
|
319
295
|
updateStatus(request: UpdateStatusRequest): Promise<OrderResponse> | Observable<OrderResponse> | OrderResponse;
|
|
320
296
|
cancelOrder(request: CancelOrderRequest): Promise<OrderResponse> | Observable<OrderResponse> | OrderResponse;
|
|
321
|
-
/**
|
|
322
|
-
* Archive (soft delete) — встановлює archived_at. Замовлення зникає
|
|
323
|
-
* з дефолтного списку, але доступне через ?archived=true.
|
|
324
|
-
*/
|
|
325
297
|
archiveOrder(request: ArchiveOrderRequest): Promise<OrderResponse> | Observable<OrderResponse> | OrderResponse;
|
|
326
298
|
unarchiveOrder(request: UnarchiveOrderRequest): Promise<OrderResponse> | Observable<OrderResponse> | OrderResponse;
|
|
327
299
|
assignManager(request: AssignManagerRequest): Promise<OrderResponse> | Observable<OrderResponse> | OrderResponse;
|
|
@@ -332,7 +304,6 @@ export interface OrderServiceController {
|
|
|
332
304
|
setTrackingNumber(request: SetTrackingNumberRequest): Promise<OrderResponse> | Observable<OrderResponse> | OrderResponse;
|
|
333
305
|
reorderOrder(request: ReorderOrderRequest): Promise<ReorderResponse> | Observable<ReorderResponse> | ReorderResponse;
|
|
334
306
|
listHistory(request: ListHistoryRequest): Promise<ListHistoryResponse> | Observable<ListHistoryResponse> | ListHistoryResponse;
|
|
335
|
-
/** CRM-агрегація для експорту клієнтів — повертає count/sum/last для кожного userId. */
|
|
336
307
|
aggregateByCustomers(request: AggregateByCustomersRequest): Promise<AggregateByCustomersResponse> | Observable<AggregateByCustomersResponse> | AggregateByCustomersResponse;
|
|
337
308
|
}
|
|
338
309
|
export declare function OrderServiceControllerMethods(): (constructor: Function) => void;
|
package/dist/gen/page.d.ts
CHANGED
|
@@ -15,11 +15,6 @@ export interface PageResponse {
|
|
|
15
15
|
title: {
|
|
16
16
|
[key: string]: string;
|
|
17
17
|
};
|
|
18
|
-
/**
|
|
19
|
-
* PageBlock[] serialized as JSON-string. ts-proto without oneofs
|
|
20
|
-
* turns discriminated unions into a soup of optional fields; keep
|
|
21
|
-
* the typed union on the gateway side via zod instead.
|
|
22
|
-
*/
|
|
23
18
|
blocksJson: string;
|
|
24
19
|
coverImage?: string | undefined;
|
|
25
20
|
coverImageId?: string | undefined;
|
package/dist/gen/payment.d.ts
CHANGED
|
@@ -68,7 +68,6 @@ export interface ListPaymentsResponse {
|
|
|
68
68
|
}
|
|
69
69
|
export interface CaptureRequest {
|
|
70
70
|
id: string;
|
|
71
|
-
/** 0 → captures full amount */
|
|
72
71
|
amount: number;
|
|
73
72
|
actorId: string;
|
|
74
73
|
}
|
|
@@ -79,7 +78,6 @@ export interface CancelRequest {
|
|
|
79
78
|
}
|
|
80
79
|
export interface RefundRequest {
|
|
81
80
|
id: string;
|
|
82
|
-
/** 0 → full refund of captured */
|
|
83
81
|
amount: number;
|
|
84
82
|
reason: string;
|
|
85
83
|
actorId: string;
|
|
@@ -113,47 +111,27 @@ export interface PaymentResponse {
|
|
|
113
111
|
}
|
|
114
112
|
export declare const PAYMENT_V1_PACKAGE_NAME = "payment.v1";
|
|
115
113
|
export interface PaymentServiceClient {
|
|
116
|
-
/** CreateInvoice — провайдер створює інвойс у режимі hold (2-stage). */
|
|
117
114
|
createInvoice(request: CreateInvoiceRequest): Observable<PaymentResponse>;
|
|
118
115
|
getPayment(request: GetPaymentRequest): Observable<PaymentResponse>;
|
|
119
116
|
getPaymentByOrder(request: GetPaymentByOrderRequest): Observable<PaymentResponse>;
|
|
120
117
|
listPayments(request: ListPaymentsRequest): Observable<ListPaymentsResponse>;
|
|
121
|
-
/** Capture — фіксація списання раніше зарезервованих коштів. */
|
|
122
118
|
capture(request: CaptureRequest): Observable<PaymentResponse>;
|
|
123
|
-
/** Cancel — повне скасування hold (без списання). */
|
|
124
119
|
cancel(request: CancelRequest): Observable<PaymentResponse>;
|
|
125
|
-
/** Refund — повернення вже captured коштів (повне або часткове). */
|
|
126
120
|
refund(request: RefundRequest): Observable<PaymentResponse>;
|
|
127
|
-
/** SyncStatus — підтягує актуальний статус від провайдера (manual reconciliation). */
|
|
128
121
|
syncStatus(request: SyncStatusRequest): Observable<PaymentResponse>;
|
|
129
|
-
/**
|
|
130
|
-
* RegenerateInvoice — створює новий invoice у провайдера для існуючого Payment.
|
|
131
|
-
* Використовується коли paymentUrl застарів (TTL у Mono ≈ 24г) або клієнт
|
|
132
|
-
* загубив SMS — менеджер ділиться новим лінком через адмін UI.
|
|
133
|
-
*/
|
|
134
122
|
regenerateInvoice(request: RegenerateInvoiceRequest): Observable<PaymentResponse>;
|
|
135
123
|
listProviders(request: ListProvidersRequest): Observable<ListProvidersResponse>;
|
|
136
124
|
toggleProvider(request: ToggleProviderRequest): Observable<ToggleProviderResponse>;
|
|
137
125
|
}
|
|
138
126
|
export interface PaymentServiceController {
|
|
139
|
-
/** CreateInvoice — провайдер створює інвойс у режимі hold (2-stage). */
|
|
140
127
|
createInvoice(request: CreateInvoiceRequest): Promise<PaymentResponse> | Observable<PaymentResponse> | PaymentResponse;
|
|
141
128
|
getPayment(request: GetPaymentRequest): Promise<PaymentResponse> | Observable<PaymentResponse> | PaymentResponse;
|
|
142
129
|
getPaymentByOrder(request: GetPaymentByOrderRequest): Promise<PaymentResponse> | Observable<PaymentResponse> | PaymentResponse;
|
|
143
130
|
listPayments(request: ListPaymentsRequest): Promise<ListPaymentsResponse> | Observable<ListPaymentsResponse> | ListPaymentsResponse;
|
|
144
|
-
/** Capture — фіксація списання раніше зарезервованих коштів. */
|
|
145
131
|
capture(request: CaptureRequest): Promise<PaymentResponse> | Observable<PaymentResponse> | PaymentResponse;
|
|
146
|
-
/** Cancel — повне скасування hold (без списання). */
|
|
147
132
|
cancel(request: CancelRequest): Promise<PaymentResponse> | Observable<PaymentResponse> | PaymentResponse;
|
|
148
|
-
/** Refund — повернення вже captured коштів (повне або часткове). */
|
|
149
133
|
refund(request: RefundRequest): Promise<PaymentResponse> | Observable<PaymentResponse> | PaymentResponse;
|
|
150
|
-
/** SyncStatus — підтягує актуальний статус від провайдера (manual reconciliation). */
|
|
151
134
|
syncStatus(request: SyncStatusRequest): Promise<PaymentResponse> | Observable<PaymentResponse> | PaymentResponse;
|
|
152
|
-
/**
|
|
153
|
-
* RegenerateInvoice — створює новий invoice у провайдера для існуючого Payment.
|
|
154
|
-
* Використовується коли paymentUrl застарів (TTL у Mono ≈ 24г) або клієнт
|
|
155
|
-
* загубив SMS — менеджер ділиться новим лінком через адмін UI.
|
|
156
|
-
*/
|
|
157
135
|
regenerateInvoice(request: RegenerateInvoiceRequest): Promise<PaymentResponse> | Observable<PaymentResponse> | PaymentResponse;
|
|
158
136
|
listProviders(request: ListProvidersRequest): Promise<ListProvidersResponse> | Observable<ListProvidersResponse> | ListProvidersResponse;
|
|
159
137
|
toggleProvider(request: ToggleProviderRequest): Promise<ToggleProviderResponse> | Observable<ToggleProviderResponse> | ToggleProviderResponse;
|
package/dist/gen/pickup.d.ts
CHANGED
|
@@ -11,7 +11,6 @@ export interface PickupPointResponse {
|
|
|
11
11
|
lng?: number | undefined;
|
|
12
12
|
isActive: boolean;
|
|
13
13
|
code1c?: string | undefined;
|
|
14
|
-
/** JSON-encoded WeekSchedule */
|
|
15
14
|
schedule?: string | undefined;
|
|
16
15
|
}
|
|
17
16
|
export interface GetPickupPointsRequest {
|
|
@@ -55,7 +54,6 @@ export interface PickupStockItemResponse {
|
|
|
55
54
|
productId: string;
|
|
56
55
|
variantId?: string | undefined;
|
|
57
56
|
qty: number;
|
|
58
|
-
/** "MANUAL" | "SYNC_1C" */
|
|
59
57
|
source: string;
|
|
60
58
|
updatedAt: string;
|
|
61
59
|
pickupPointName?: string | undefined;
|
|
@@ -73,20 +71,17 @@ export interface SetPickupStockRequest {
|
|
|
73
71
|
productId: string;
|
|
74
72
|
variantId?: string | undefined;
|
|
75
73
|
qty: number;
|
|
76
|
-
/** default MANUAL */
|
|
77
74
|
source?: string | undefined;
|
|
78
75
|
}
|
|
79
76
|
export interface AdjustPickupStockRequest {
|
|
80
77
|
pickupPointId: string;
|
|
81
78
|
productId: string;
|
|
82
79
|
variantId?: string | undefined;
|
|
83
|
-
/** positive = add, negative = subtract */
|
|
84
80
|
delta: number;
|
|
85
81
|
}
|
|
86
82
|
export interface BulkSetPickupStockRequest {
|
|
87
83
|
items: SetPickupStockRequest[];
|
|
88
84
|
}
|
|
89
|
-
/** Масова синхронізація з 1С: масив рядків вигляду "code1c:productGuid1c:variantGuid1c?:qty" */
|
|
90
85
|
export interface BulkSyncFromOnecRequest {
|
|
91
86
|
entries: OnecStockEntry[];
|
|
92
87
|
}
|
|
@@ -98,13 +93,11 @@ export interface OnecStockEntry {
|
|
|
98
93
|
}
|
|
99
94
|
export declare const CATALOG_V1_PACKAGE_NAME = "catalog.v1";
|
|
100
95
|
export interface PickupPointServiceClient {
|
|
101
|
-
/** Pickup points CRUD */
|
|
102
96
|
getPickupPoints(request: GetPickupPointsRequest): Observable<GetPickupPointsResponse>;
|
|
103
97
|
getPickupPoint(request: GetPickupPointRequest): Observable<PickupPointResponse>;
|
|
104
98
|
createPickupPoint(request: CreatePickupPointRequest): Observable<PickupPointResponse>;
|
|
105
99
|
updatePickupPoint(request: UpdatePickupPointRequest): Observable<PickupPointResponse>;
|
|
106
100
|
deletePickupPoint(request: DeletePickupPointRequest): Observable<DeleteResponse>;
|
|
107
|
-
/** Stock per pickup point */
|
|
108
101
|
getPickupStock(request: GetPickupStockRequest): Observable<GetPickupStockResponse>;
|
|
109
102
|
setPickupStock(request: SetPickupStockRequest): Observable<PickupStockItemResponse>;
|
|
110
103
|
adjustPickupStock(request: AdjustPickupStockRequest): Observable<PickupStockItemResponse>;
|
|
@@ -112,13 +105,11 @@ export interface PickupPointServiceClient {
|
|
|
112
105
|
bulkSyncFromOnec(request: BulkSyncFromOnecRequest): Observable<SuccessResponse>;
|
|
113
106
|
}
|
|
114
107
|
export interface PickupPointServiceController {
|
|
115
|
-
/** Pickup points CRUD */
|
|
116
108
|
getPickupPoints(request: GetPickupPointsRequest): Promise<GetPickupPointsResponse> | Observable<GetPickupPointsResponse> | GetPickupPointsResponse;
|
|
117
109
|
getPickupPoint(request: GetPickupPointRequest): Promise<PickupPointResponse> | Observable<PickupPointResponse> | PickupPointResponse;
|
|
118
110
|
createPickupPoint(request: CreatePickupPointRequest): Promise<PickupPointResponse> | Observable<PickupPointResponse> | PickupPointResponse;
|
|
119
111
|
updatePickupPoint(request: UpdatePickupPointRequest): Promise<PickupPointResponse> | Observable<PickupPointResponse> | PickupPointResponse;
|
|
120
112
|
deletePickupPoint(request: DeletePickupPointRequest): Promise<DeleteResponse> | Observable<DeleteResponse> | DeleteResponse;
|
|
121
|
-
/** Stock per pickup point */
|
|
122
113
|
getPickupStock(request: GetPickupStockRequest): Promise<GetPickupStockResponse> | Observable<GetPickupStockResponse> | GetPickupStockResponse;
|
|
123
114
|
setPickupStock(request: SetPickupStockRequest): Promise<PickupStockItemResponse> | Observable<PickupStockItemResponse> | PickupStockItemResponse;
|
|
124
115
|
adjustPickupStock(request: AdjustPickupStockRequest): Promise<PickupStockItemResponse> | Observable<PickupStockItemResponse> | PickupStockItemResponse;
|
package/dist/gen/product.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export declare enum ProductStatus {
|
|
|
7
7
|
PRODUCT_STATUS_ACTIVE = 2,
|
|
8
8
|
PRODUCT_STATUS_INACTIVE = 3,
|
|
9
9
|
PRODUCT_STATUS_ARCHIVED = 4,
|
|
10
|
+
PRODUCT_STATUS_MODERATION = 5,
|
|
10
11
|
UNRECOGNIZED = -1
|
|
11
12
|
}
|
|
12
13
|
export declare enum RelatedProductType {
|
|
@@ -101,7 +102,6 @@ export interface ProductListItemResponse {
|
|
|
101
102
|
reviewCount: number;
|
|
102
103
|
stickers: ProductStickerResponse[];
|
|
103
104
|
activePromo?: ProductPromoInfo | undefined;
|
|
104
|
-
/** Вага у кг для розрахунку доставки (0 → fallback на defaultItemWeightKg). */
|
|
105
105
|
weightKg: number;
|
|
106
106
|
}
|
|
107
107
|
export interface ProductListItemResponse_NameEntry {
|
|
@@ -166,7 +166,6 @@ export interface ProductDetailResponse {
|
|
|
166
166
|
manualRating?: number | undefined;
|
|
167
167
|
activePromo?: ProductPromoInfo | undefined;
|
|
168
168
|
colors: ProductColorResponse[];
|
|
169
|
-
/** Вага товару у кг для розрахунку доставки (variant може override'ити). */
|
|
170
169
|
weightKg: number;
|
|
171
170
|
}
|
|
172
171
|
export interface ProductDetailResponse_NameEntry {
|
|
@@ -679,7 +678,6 @@ export interface ProductVariantDetailResponse {
|
|
|
679
678
|
attributes: ProductAttributeResponse[];
|
|
680
679
|
overrides: VariantOverrides | undefined;
|
|
681
680
|
colorId?: string | undefined;
|
|
682
|
-
/** Override-вага варіанту у кг; 0 означає "успадкувати від продукту". */
|
|
683
681
|
weightKg: number;
|
|
684
682
|
}
|
|
685
683
|
export interface ProductVariantDetailResponse_OptionsEntry {
|
|
@@ -752,7 +750,6 @@ export interface CreateProductVariantRequest {
|
|
|
752
750
|
images: ProductImagePayload[];
|
|
753
751
|
attributeValueIds: string[];
|
|
754
752
|
colorId?: string | undefined;
|
|
755
|
-
/** Override-вага варіанту у кг (null/unset → успадкувати від продукту). */
|
|
756
753
|
weightKg?: number | undefined;
|
|
757
754
|
}
|
|
758
755
|
export interface CreateProductVariantRequest_OptionsEntry {
|
|
@@ -811,7 +808,6 @@ export interface UpdateProductVariantRequest {
|
|
|
811
808
|
images: ProductImagePayload[];
|
|
812
809
|
attributeValueIds: string[];
|
|
813
810
|
colorId?: string | undefined;
|
|
814
|
-
/** Override-вага варіанту у кг (null/unset → успадкувати від продукту). */
|
|
815
811
|
weightKg?: number | undefined;
|
|
816
812
|
clearPrice: boolean;
|
|
817
813
|
clearOldPrice: boolean;
|
|
@@ -887,18 +883,14 @@ export interface VariantLookupResult {
|
|
|
887
883
|
productId: string;
|
|
888
884
|
sku: string;
|
|
889
885
|
found: boolean;
|
|
890
|
-
/** Резолвлена з урахуванням variant override. */
|
|
891
886
|
price: number;
|
|
892
887
|
oldPrice?: number | undefined;
|
|
893
888
|
stock: number;
|
|
894
889
|
hasOwnPrice: boolean;
|
|
895
|
-
/** Локалізована назва (uk → ru → перше) для зручності клієнта. */
|
|
896
890
|
nameUk: string;
|
|
897
891
|
mainImage: string;
|
|
898
892
|
colorId?: string | undefined;
|
|
899
|
-
/** Вага у кг (variant.weight_kg ?? product.weight_kg ?? 0). */
|
|
900
893
|
weightKg: number;
|
|
901
|
-
/** Розмір з variant.options.size — для відображення у замовленнях. */
|
|
902
894
|
size: string;
|
|
903
895
|
}
|
|
904
896
|
export interface BulkLookupVariantsRequest {
|
|
@@ -1016,6 +1008,105 @@ export interface ColorSortOrderItem {
|
|
|
1016
1008
|
colorId: string;
|
|
1017
1009
|
sortOrder: number;
|
|
1018
1010
|
}
|
|
1011
|
+
export interface ProductSyncItem {
|
|
1012
|
+
productGuid: string;
|
|
1013
|
+
sku: string;
|
|
1014
|
+
name: {
|
|
1015
|
+
[key: string]: string;
|
|
1016
|
+
};
|
|
1017
|
+
brandValueGuid?: string | undefined;
|
|
1018
|
+
attributeValueGuids: string[];
|
|
1019
|
+
characteristicGuids: string[];
|
|
1020
|
+
categoryGuids: string[];
|
|
1021
|
+
}
|
|
1022
|
+
export interface ProductSyncItem_NameEntry {
|
|
1023
|
+
key: string;
|
|
1024
|
+
value: string;
|
|
1025
|
+
}
|
|
1026
|
+
export interface UpsertProductsRequest {
|
|
1027
|
+
items: ProductSyncItem[];
|
|
1028
|
+
syncId: string;
|
|
1029
|
+
createdBy: string;
|
|
1030
|
+
colorPropertyGuid: string;
|
|
1031
|
+
}
|
|
1032
|
+
export interface ProductUpsertResult {
|
|
1033
|
+
guid: string;
|
|
1034
|
+
status: string;
|
|
1035
|
+
reason?: string | undefined;
|
|
1036
|
+
id?: string | undefined;
|
|
1037
|
+
attributesLinked: number;
|
|
1038
|
+
attributesSkipped: number;
|
|
1039
|
+
variantsCreated: number;
|
|
1040
|
+
variantsUpdated: number;
|
|
1041
|
+
variantsSkipped: number;
|
|
1042
|
+
}
|
|
1043
|
+
export interface UpsertProductsResponse {
|
|
1044
|
+
results: ProductUpsertResult[];
|
|
1045
|
+
}
|
|
1046
|
+
export interface PriceSyncItem {
|
|
1047
|
+
productGuid: string;
|
|
1048
|
+
characteristicGuid?: string | undefined;
|
|
1049
|
+
price: number;
|
|
1050
|
+
oldPrice?: number | undefined;
|
|
1051
|
+
}
|
|
1052
|
+
export interface UpsertPricesRequest {
|
|
1053
|
+
items: PriceSyncItem[];
|
|
1054
|
+
syncId: string;
|
|
1055
|
+
}
|
|
1056
|
+
export interface PriceUpsertResult {
|
|
1057
|
+
guid: string;
|
|
1058
|
+
status: string;
|
|
1059
|
+
reason?: string | undefined;
|
|
1060
|
+
}
|
|
1061
|
+
export interface UpsertPricesResponse {
|
|
1062
|
+
results: PriceUpsertResult[];
|
|
1063
|
+
}
|
|
1064
|
+
export interface CharacteristicPropertyLink {
|
|
1065
|
+
propertyGuid: string;
|
|
1066
|
+
valueGuid: string;
|
|
1067
|
+
}
|
|
1068
|
+
export interface CharacteristicSyncItem {
|
|
1069
|
+
characteristicGuid: string;
|
|
1070
|
+
name: {
|
|
1071
|
+
[key: string]: string;
|
|
1072
|
+
};
|
|
1073
|
+
properties: CharacteristicPropertyLink[];
|
|
1074
|
+
}
|
|
1075
|
+
export interface CharacteristicSyncItem_NameEntry {
|
|
1076
|
+
key: string;
|
|
1077
|
+
value: string;
|
|
1078
|
+
}
|
|
1079
|
+
export interface UpsertCharacteristicsRequest {
|
|
1080
|
+
items: CharacteristicSyncItem[];
|
|
1081
|
+
syncId: string;
|
|
1082
|
+
}
|
|
1083
|
+
export interface CharacteristicUpsertResult {
|
|
1084
|
+
guid: string;
|
|
1085
|
+
status: string;
|
|
1086
|
+
reason?: string | undefined;
|
|
1087
|
+
id?: string | undefined;
|
|
1088
|
+
}
|
|
1089
|
+
export interface UpsertCharacteristicsResponse {
|
|
1090
|
+
results: CharacteristicUpsertResult[];
|
|
1091
|
+
}
|
|
1092
|
+
export interface StockSyncItem {
|
|
1093
|
+
productGuid: string;
|
|
1094
|
+
characteristicGuid?: string | undefined;
|
|
1095
|
+
warehouseGuid: string;
|
|
1096
|
+
quantity: number;
|
|
1097
|
+
}
|
|
1098
|
+
export interface UpsertStocksRequest {
|
|
1099
|
+
items: StockSyncItem[];
|
|
1100
|
+
syncId: string;
|
|
1101
|
+
}
|
|
1102
|
+
export interface StockUpsertResult {
|
|
1103
|
+
guid: string;
|
|
1104
|
+
status: string;
|
|
1105
|
+
reason?: string | undefined;
|
|
1106
|
+
}
|
|
1107
|
+
export interface UpsertStocksResponse {
|
|
1108
|
+
results: StockUpsertResult[];
|
|
1109
|
+
}
|
|
1019
1110
|
export declare const CATALOG_V1_PACKAGE_NAME = "catalog.v1";
|
|
1020
1111
|
export interface ProductServiceClient {
|
|
1021
1112
|
getProducts(request: GetProductsRequest): Observable<GetProductsResponse>;
|
|
@@ -1024,6 +1115,10 @@ export interface ProductServiceClient {
|
|
|
1024
1115
|
updateProduct(request: UpdateProductRequest): Observable<ProductDetailResponse>;
|
|
1025
1116
|
deleteProduct(request: DeleteProductRequest): Observable<DeleteResponse>;
|
|
1026
1117
|
setManualRating(request: SetManualRatingRequest): Observable<SuccessResponse>;
|
|
1118
|
+
upsertProducts(request: UpsertProductsRequest): Observable<UpsertProductsResponse>;
|
|
1119
|
+
upsertPrices(request: UpsertPricesRequest): Observable<UpsertPricesResponse>;
|
|
1120
|
+
upsertCharacteristics(request: UpsertCharacteristicsRequest): Observable<UpsertCharacteristicsResponse>;
|
|
1121
|
+
upsertStocks(request: UpsertStocksRequest): Observable<UpsertStocksResponse>;
|
|
1027
1122
|
bulkUpdateStatus(request: BulkUpdateStatusRequest): Observable<SuccessResponse>;
|
|
1028
1123
|
bulkUpdateCategory(request: BulkUpdateCategoryRequest): Observable<SuccessResponse>;
|
|
1029
1124
|
bulkUpdateDiscount(request: BulkUpdateDiscountRequest): Observable<SuccessResponse>;
|
|
@@ -1057,7 +1152,6 @@ export interface ProductServiceClient {
|
|
|
1057
1152
|
assignVariantSizeCharts(request: AssignVariantSizeChartsRequest): Observable<SuccessResponse>;
|
|
1058
1153
|
removeVariantSizeChart(request: RemoveVariantSizeChartRequest): Observable<SuccessResponse>;
|
|
1059
1154
|
getVariantSizeCharts(request: GetVariantSizeChartsRequest): Observable<GetProductSizeChartsResponse>;
|
|
1060
|
-
/** ─── Product colors (нова ієрархія: Product → Color → Variant) ────────────── */
|
|
1061
1155
|
createProductColor(request: CreateProductColorRequest): Observable<ProductColorResponse>;
|
|
1062
1156
|
updateProductColor(request: UpdateProductColorRequest): Observable<ProductColorResponse>;
|
|
1063
1157
|
deleteProductColor(request: DeleteProductColorRequest): Observable<DeleteResponse>;
|
|
@@ -1071,6 +1165,10 @@ export interface ProductServiceController {
|
|
|
1071
1165
|
updateProduct(request: UpdateProductRequest): Promise<ProductDetailResponse> | Observable<ProductDetailResponse> | ProductDetailResponse;
|
|
1072
1166
|
deleteProduct(request: DeleteProductRequest): Promise<DeleteResponse> | Observable<DeleteResponse> | DeleteResponse;
|
|
1073
1167
|
setManualRating(request: SetManualRatingRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
|
|
1168
|
+
upsertProducts(request: UpsertProductsRequest): Promise<UpsertProductsResponse> | Observable<UpsertProductsResponse> | UpsertProductsResponse;
|
|
1169
|
+
upsertPrices(request: UpsertPricesRequest): Promise<UpsertPricesResponse> | Observable<UpsertPricesResponse> | UpsertPricesResponse;
|
|
1170
|
+
upsertCharacteristics(request: UpsertCharacteristicsRequest): Promise<UpsertCharacteristicsResponse> | Observable<UpsertCharacteristicsResponse> | UpsertCharacteristicsResponse;
|
|
1171
|
+
upsertStocks(request: UpsertStocksRequest): Promise<UpsertStocksResponse> | Observable<UpsertStocksResponse> | UpsertStocksResponse;
|
|
1074
1172
|
bulkUpdateStatus(request: BulkUpdateStatusRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
|
|
1075
1173
|
bulkUpdateCategory(request: BulkUpdateCategoryRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
|
|
1076
1174
|
bulkUpdateDiscount(request: BulkUpdateDiscountRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
|
|
@@ -1104,7 +1202,6 @@ export interface ProductServiceController {
|
|
|
1104
1202
|
assignVariantSizeCharts(request: AssignVariantSizeChartsRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
|
|
1105
1203
|
removeVariantSizeChart(request: RemoveVariantSizeChartRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
|
|
1106
1204
|
getVariantSizeCharts(request: GetVariantSizeChartsRequest): Promise<GetProductSizeChartsResponse> | Observable<GetProductSizeChartsResponse> | GetProductSizeChartsResponse;
|
|
1107
|
-
/** ─── Product colors (нова ієрархія: Product → Color → Variant) ────────────── */
|
|
1108
1205
|
createProductColor(request: CreateProductColorRequest): Promise<ProductColorResponse> | Observable<ProductColorResponse> | ProductColorResponse;
|
|
1109
1206
|
updateProductColor(request: UpdateProductColorRequest): Promise<ProductColorResponse> | Observable<ProductColorResponse> | ProductColorResponse;
|
|
1110
1207
|
deleteProductColor(request: DeleteProductColorRequest): Promise<DeleteResponse> | Observable<DeleteResponse> | DeleteResponse;
|
package/dist/gen/product.js
CHANGED
|
@@ -17,6 +17,7 @@ var ProductStatus;
|
|
|
17
17
|
ProductStatus[ProductStatus["PRODUCT_STATUS_ACTIVE"] = 2] = "PRODUCT_STATUS_ACTIVE";
|
|
18
18
|
ProductStatus[ProductStatus["PRODUCT_STATUS_INACTIVE"] = 3] = "PRODUCT_STATUS_INACTIVE";
|
|
19
19
|
ProductStatus[ProductStatus["PRODUCT_STATUS_ARCHIVED"] = 4] = "PRODUCT_STATUS_ARCHIVED";
|
|
20
|
+
ProductStatus[ProductStatus["PRODUCT_STATUS_MODERATION"] = 5] = "PRODUCT_STATUS_MODERATION";
|
|
20
21
|
ProductStatus[ProductStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
|
|
21
22
|
})(ProductStatus || (exports.ProductStatus = ProductStatus = {}));
|
|
22
23
|
var RelatedProductType;
|
|
@@ -52,6 +53,10 @@ function ProductServiceControllerMethods() {
|
|
|
52
53
|
"updateProduct",
|
|
53
54
|
"deleteProduct",
|
|
54
55
|
"setManualRating",
|
|
56
|
+
"upsertProducts",
|
|
57
|
+
"upsertPrices",
|
|
58
|
+
"upsertCharacteristics",
|
|
59
|
+
"upsertStocks",
|
|
55
60
|
"bulkUpdateStatus",
|
|
56
61
|
"bulkUpdateCategory",
|
|
57
62
|
"bulkUpdateDiscount",
|
package/dist/gen/promotion.d.ts
CHANGED
|
@@ -147,9 +147,7 @@ export interface GetPromotionsRequest {
|
|
|
147
147
|
categoryId?: string | undefined;
|
|
148
148
|
dateFrom?: string | undefined;
|
|
149
149
|
dateTo?: string | undefined;
|
|
150
|
-
/** startDate | endDate | priority | discountValue */
|
|
151
150
|
sortBy?: string | undefined;
|
|
152
|
-
/** asc | desc */
|
|
153
151
|
sortDir?: string | undefined;
|
|
154
152
|
}
|
|
155
153
|
export interface GetPromotionsResponse {
|
|
@@ -342,10 +340,6 @@ export interface RemovePromotionProductsRequest {
|
|
|
342
340
|
export interface GetPromotionEligibleProductIdsRequest {
|
|
343
341
|
promotionId: string;
|
|
344
342
|
}
|
|
345
|
-
/**
|
|
346
|
-
* Returns the full membership of the promotion (NOT resolved to a flat list).
|
|
347
|
-
* Catalog-service joins these (UNION include − exclude) using its own data.
|
|
348
|
-
*/
|
|
349
343
|
export interface GetPromotionEligibleProductIdsResponse {
|
|
350
344
|
includeProductIds: string[];
|
|
351
345
|
includeCategoryIds: string[];
|
|
@@ -369,14 +363,12 @@ export interface ActivePromotionSnapshotItem {
|
|
|
369
363
|
seoSlug?: string | undefined;
|
|
370
364
|
startsAt?: string | undefined;
|
|
371
365
|
endsAt?: string | undefined;
|
|
372
|
-
/** Resolved eligible product IDs (already deduped, exclusions applied). */
|
|
373
366
|
productIds: string[];
|
|
374
367
|
categoryIds: string[];
|
|
375
368
|
brandIds: string[];
|
|
376
369
|
excludedProductIds: string[];
|
|
377
370
|
excludedCategoryIds: string[];
|
|
378
371
|
excludedBrandIds: string[];
|
|
379
|
-
/** Per-product label/color override (key = productId). */
|
|
380
372
|
productLabels: {
|
|
381
373
|
[key: string]: string;
|
|
382
374
|
};
|
|
@@ -451,18 +443,14 @@ export interface PromotionServiceClient {
|
|
|
451
443
|
bulkApplyToCategories(request: BulkApplyToCategoriesRequest): Observable<SuccessResponse>;
|
|
452
444
|
getActivePromotions(request: GetActivePromotionsRequest): Observable<GetActivePromotionsResponse>;
|
|
453
445
|
getActivePromotionsSnapshot(request: GetActivePromotionsSnapshotRequest): Observable<GetActivePromotionsSnapshotResponse>;
|
|
454
|
-
/** Products */
|
|
455
446
|
getPromotionProducts(request: GetPromotionProductsRequest): Observable<GetPromotionProductsResponse>;
|
|
456
447
|
getPromotionEligibleProductIds(request: GetPromotionEligibleProductIdsRequest): Observable<GetPromotionEligibleProductIdsResponse>;
|
|
457
448
|
addPromotionProducts(request: AddPromotionProductsRequest): Observable<SuccessResponse>;
|
|
458
449
|
removePromotionProducts(request: RemovePromotionProductsRequest): Observable<SuccessResponse>;
|
|
459
|
-
/** Categories */
|
|
460
450
|
getPromotionCategories(request: GetPromotionCategoriesRequest): Observable<GetPromotionCategoriesResponse>;
|
|
461
451
|
setPromotionCategories(request: SetPromotionCategoriesRequest): Observable<SuccessResponse>;
|
|
462
|
-
/** Brands */
|
|
463
452
|
getPromotionBrands(request: GetPromotionBrandsRequest): Observable<GetPromotionBrandsResponse>;
|
|
464
453
|
setPromotionBrands(request: SetPromotionBrandsRequest): Observable<SuccessResponse>;
|
|
465
|
-
/** Bundles */
|
|
466
454
|
getPromotionBundles(request: GetPromotionBundlesRequest): Observable<GetPromotionBundlesResponse>;
|
|
467
455
|
addPromotionBundles(request: AddPromotionBundlesRequest): Observable<SuccessResponse>;
|
|
468
456
|
removePromotionBundles(request: RemovePromotionBundlesRequest): Observable<SuccessResponse>;
|
|
@@ -478,18 +466,14 @@ export interface PromotionServiceController {
|
|
|
478
466
|
bulkApplyToCategories(request: BulkApplyToCategoriesRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
|
|
479
467
|
getActivePromotions(request: GetActivePromotionsRequest): Promise<GetActivePromotionsResponse> | Observable<GetActivePromotionsResponse> | GetActivePromotionsResponse;
|
|
480
468
|
getActivePromotionsSnapshot(request: GetActivePromotionsSnapshotRequest): Promise<GetActivePromotionsSnapshotResponse> | Observable<GetActivePromotionsSnapshotResponse> | GetActivePromotionsSnapshotResponse;
|
|
481
|
-
/** Products */
|
|
482
469
|
getPromotionProducts(request: GetPromotionProductsRequest): Promise<GetPromotionProductsResponse> | Observable<GetPromotionProductsResponse> | GetPromotionProductsResponse;
|
|
483
470
|
getPromotionEligibleProductIds(request: GetPromotionEligibleProductIdsRequest): Promise<GetPromotionEligibleProductIdsResponse> | Observable<GetPromotionEligibleProductIdsResponse> | GetPromotionEligibleProductIdsResponse;
|
|
484
471
|
addPromotionProducts(request: AddPromotionProductsRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
|
|
485
472
|
removePromotionProducts(request: RemovePromotionProductsRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
|
|
486
|
-
/** Categories */
|
|
487
473
|
getPromotionCategories(request: GetPromotionCategoriesRequest): Promise<GetPromotionCategoriesResponse> | Observable<GetPromotionCategoriesResponse> | GetPromotionCategoriesResponse;
|
|
488
474
|
setPromotionCategories(request: SetPromotionCategoriesRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
|
|
489
|
-
/** Brands */
|
|
490
475
|
getPromotionBrands(request: GetPromotionBrandsRequest): Promise<GetPromotionBrandsResponse> | Observable<GetPromotionBrandsResponse> | GetPromotionBrandsResponse;
|
|
491
476
|
setPromotionBrands(request: SetPromotionBrandsRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
|
|
492
|
-
/** Bundles */
|
|
493
477
|
getPromotionBundles(request: GetPromotionBundlesRequest): Promise<GetPromotionBundlesResponse> | Observable<GetPromotionBundlesResponse> | GetPromotionBundlesResponse;
|
|
494
478
|
addPromotionBundles(request: AddPromotionBundlesRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
|
|
495
479
|
removePromotionBundles(request: RemovePromotionBundlesRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
|
package/dist/gen/rbac.d.ts
CHANGED
|
@@ -46,7 +46,6 @@ export interface UpdateRoleRequest {
|
|
|
46
46
|
name?: string | undefined;
|
|
47
47
|
description?: string | undefined;
|
|
48
48
|
color?: string | undefined;
|
|
49
|
-
/** Якщо передано — повна заміна; якщо не передано — без змін. */
|
|
50
49
|
permissionKeys: string[];
|
|
51
50
|
replacePermissions: boolean;
|
|
52
51
|
}
|
|
@@ -58,10 +57,6 @@ export interface DeleteRoleResponse {
|
|
|
58
57
|
}
|
|
59
58
|
export interface AssignAccountRoleRequest {
|
|
60
59
|
accountId: string;
|
|
61
|
-
/**
|
|
62
|
-
* Якщо custom_role_id порожній — користувач відвʼязується від кастомної ролі,
|
|
63
|
-
* і дозволи беруться з системної.
|
|
64
|
-
*/
|
|
65
60
|
customRoleId?: string | undefined;
|
|
66
61
|
}
|
|
67
62
|
export interface AssignAccountRoleResponse {
|
|
@@ -71,39 +66,28 @@ export interface GetAccountPermissionsRequest {
|
|
|
71
66
|
accountId: string;
|
|
72
67
|
}
|
|
73
68
|
export interface GetAccountPermissionsResponse {
|
|
74
|
-
/**
|
|
75
|
-
* Effective permissions з урахуванням system role + custom role override.
|
|
76
|
-
* Може містити "*" — повний доступ (ADMIN).
|
|
77
|
-
*/
|
|
78
69
|
permissionKeys: string[];
|
|
79
|
-
/** Слаг ефективної ролі (для UI/labels). */
|
|
80
70
|
roleSlug: string;
|
|
81
71
|
roleName: string;
|
|
82
72
|
}
|
|
83
73
|
export declare const RBAC_V1_PACKAGE_NAME = "rbac.v1";
|
|
84
74
|
export interface RbacServiceClient {
|
|
85
|
-
/** Permissions catalog (read-only, seeded). */
|
|
86
75
|
listPermissions(request: ListPermissionsRequest): Observable<ListPermissionsResponse>;
|
|
87
|
-
/** Roles CRUD. */
|
|
88
76
|
listRoles(request: ListRolesRequest): Observable<ListRolesResponse>;
|
|
89
77
|
getRole(request: GetRoleRequest): Observable<RbacRole>;
|
|
90
78
|
createRole(request: CreateRoleRequest): Observable<RbacRole>;
|
|
91
79
|
updateRole(request: UpdateRoleRequest): Observable<RbacRole>;
|
|
92
80
|
deleteRole(request: DeleteRoleRequest): Observable<DeleteRoleResponse>;
|
|
93
|
-
/** Account ↔ role bindings. */
|
|
94
81
|
assignAccountRole(request: AssignAccountRoleRequest): Observable<AssignAccountRoleResponse>;
|
|
95
82
|
getAccountPermissions(request: GetAccountPermissionsRequest): Observable<GetAccountPermissionsResponse>;
|
|
96
83
|
}
|
|
97
84
|
export interface RbacServiceController {
|
|
98
|
-
/** Permissions catalog (read-only, seeded). */
|
|
99
85
|
listPermissions(request: ListPermissionsRequest): Promise<ListPermissionsResponse> | Observable<ListPermissionsResponse> | ListPermissionsResponse;
|
|
100
|
-
/** Roles CRUD. */
|
|
101
86
|
listRoles(request: ListRolesRequest): Promise<ListRolesResponse> | Observable<ListRolesResponse> | ListRolesResponse;
|
|
102
87
|
getRole(request: GetRoleRequest): Promise<RbacRole> | Observable<RbacRole> | RbacRole;
|
|
103
88
|
createRole(request: CreateRoleRequest): Promise<RbacRole> | Observable<RbacRole> | RbacRole;
|
|
104
89
|
updateRole(request: UpdateRoleRequest): Promise<RbacRole> | Observable<RbacRole> | RbacRole;
|
|
105
90
|
deleteRole(request: DeleteRoleRequest): Promise<DeleteRoleResponse> | Observable<DeleteRoleResponse> | DeleteRoleResponse;
|
|
106
|
-
/** Account ↔ role bindings. */
|
|
107
91
|
assignAccountRole(request: AssignAccountRoleRequest): Promise<AssignAccountRoleResponse> | Observable<AssignAccountRoleResponse> | AssignAccountRoleResponse;
|
|
108
92
|
getAccountPermissions(request: GetAccountPermissionsRequest): Promise<GetAccountPermissionsResponse> | Observable<GetAccountPermissionsResponse> | GetAccountPermissionsResponse;
|
|
109
93
|
}
|