@escapenavigator/types 2.0.34 → 2.0.38
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/admin/aggregator-order/create-aggregator-order.dto.d.ts +1 -0
- package/dist/agregator/agregator-questroom.ro.d.ts +2 -0
- package/dist/agregator/agregator-questroom.ro.js +5 -0
- package/dist/certificate-sale/certificate-sale.ro.d.ts +6 -0
- package/dist/certificate-sale/certificate-sale.ro.js +4 -0
- package/dist/certificate-uploaded/certificate-uploaded.ro.d.ts +1 -1
- package/dist/client/client.ro.d.ts +13 -0
- package/dist/client/client.ro.js +21 -0
- package/dist/constants/uploading/upload-bookeo-certificate-rows.js +2 -2
- package/dist/constants/uploading/upload-certificate-rows.js +1 -1
- package/dist/email-builder/email-content.dto.d.ts +26 -0
- package/dist/email-builder/email-content.dto.js +62 -0
- package/dist/email-builder/index.d.ts +81 -0
- package/dist/email-builder/index.js +89 -1
- package/dist/emails/index.d.ts +25 -2
- package/dist/location/create-location.dto.d.ts +2 -0
- package/dist/location/create-location.dto.js +7 -0
- package/dist/location/location-light.ro.d.ts +3 -1
- package/dist/location/location-light.ro.js +6 -1
- package/dist/location/update-location-for-admin.dto.d.ts +2 -0
- package/dist/location/update-location-for-admin.dto.js +7 -0
- package/dist/log/log-title.enum.d.ts +3 -0
- package/dist/log/log-title.enum.js +3 -0
- package/dist/loyalty/adjust-bonus.dto.d.ts +14 -0
- package/dist/loyalty/adjust-bonus.dto.js +35 -0
- package/dist/loyalty/assign-client-tier.dto.d.ts +9 -0
- package/dist/loyalty/assign-client-tier.dto.js +29 -0
- package/dist/loyalty/client-loyalty.ro.d.ts +30 -0
- package/dist/loyalty/client-loyalty.ro.js +71 -0
- package/dist/loyalty/enum/loyalty-bonus-type.enum.d.ts +13 -0
- package/dist/loyalty/enum/loyalty-bonus-type.enum.js +17 -0
- package/dist/loyalty/enum/loyalty-history-mode.enum.d.ts +18 -0
- package/dist/loyalty/enum/loyalty-history-mode.enum.js +22 -0
- package/dist/loyalty/enum/loyalty-metric.enum.d.ts +12 -0
- package/dist/loyalty/enum/loyalty-metric.enum.js +16 -0
- package/dist/loyalty/enum/loyalty-program-type.enum.d.ts +12 -0
- package/dist/loyalty/enum/loyalty-program-type.enum.js +16 -0
- package/dist/loyalty/enum/loyalty-stacking.enum.d.ts +14 -0
- package/dist/loyalty/enum/loyalty-stacking.enum.js +18 -0
- package/dist/loyalty/enum/loyalty-tier-color.enum.d.ts +16 -0
- package/dist/loyalty/enum/loyalty-tier-color.enum.js +20 -0
- package/dist/loyalty/enum/loyalty-tier-source.enum.d.ts +13 -0
- package/dist/loyalty/enum/loyalty-tier-source.enum.js +17 -0
- package/dist/loyalty/loyalty-bonus.ro.d.ts +20 -0
- package/dist/loyalty/loyalty-bonus.ro.js +55 -0
- package/dist/loyalty/loyalty-presets.d.ts +45 -0
- package/dist/loyalty/loyalty-presets.js +30 -0
- package/dist/loyalty/loyalty-preview.dto.d.ts +19 -0
- package/dist/loyalty/loyalty-preview.dto.js +64 -0
- package/dist/loyalty/loyalty-preview.ro.d.ts +20 -0
- package/dist/loyalty/loyalty-preview.ro.js +53 -0
- package/dist/loyalty/loyalty-settings.dto.d.ts +51 -0
- package/dist/loyalty/loyalty-settings.dto.js +103 -0
- package/dist/loyalty/loyalty-settings.ro.d.ts +33 -0
- package/dist/loyalty/loyalty-settings.ro.js +67 -0
- package/dist/loyalty/loyalty-tier.dto.d.ts +33 -0
- package/dist/loyalty/loyalty-tier.dto.js +69 -0
- package/dist/loyalty/loyalty-tier.ro.d.ts +12 -0
- package/dist/loyalty/loyalty-tier.ro.js +42 -0
- package/dist/loyalty/pay-with-bonus.dto.d.ts +10 -0
- package/dist/loyalty/pay-with-bonus.dto.js +36 -0
- package/dist/openapi/order-groups/openapi-batch-create-preorder.dto.d.ts +3 -3
- package/dist/openapi/orders/openapi-order.ro.d.ts +12 -0
- package/dist/openapi/orders/openapi-order.ro.js +8 -0
- package/dist/openapi/profiles/enum/openapi-certificate-status.enum.d.ts +29 -0
- package/dist/openapi/profiles/enum/openapi-certificate-status.enum.js +38 -0
- package/dist/openapi/profiles/openapi-annul-certificate.dto.d.ts +3 -0
- package/dist/openapi/profiles/openapi-annul-certificate.dto.js +29 -0
- package/dist/openapi/profiles/openapi-certificate.ro.d.ts +33 -0
- package/dist/openapi/profiles/openapi-certificate.ro.js +195 -0
- package/dist/openapi/profiles/openapi-create-certificate.dto.d.ts +24 -0
- package/dist/openapi/profiles/openapi-create-certificate.dto.js +208 -0
- package/dist/openapi/slots/openapi-widget-slot.ro.d.ts +3 -0
- package/dist/openapi/slots/openapi-widget-slot.ro.js +24 -2
- package/dist/openapi/upsellings/openapi-upselling.ro.d.ts +1 -0
- package/dist/openapi/upsellings/openapi-upselling.ro.js +4 -0
- package/dist/order/order.ro.d.ts +23 -1
- package/dist/order/order.ro.js +19 -0
- package/dist/order-discount/enum/order-discount-source.enum.d.ts +10 -0
- package/dist/order-discount/enum/order-discount-source.enum.js +14 -0
- package/dist/packages/book-package.dto.d.ts +3 -0
- package/dist/packages/book-package.dto.js +9 -0
- package/dist/packages/create-package.dto.d.ts +23 -0
- package/dist/packages/create-package.dto.js +81 -1
- package/dist/packages/package-addon.dto.d.ts +5 -0
- package/dist/packages/package-addon.dto.js +31 -0
- package/dist/packages/package-audience.enum.d.ts +6 -0
- package/dist/packages/package-audience.enum.js +10 -0
- package/dist/packages/package-feature.dto.d.ts +12 -0
- package/dist/packages/package-feature.dto.js +41 -0
- package/dist/packages/package-pricing-mode.enum.d.ts +14 -0
- package/dist/packages/package-pricing-mode.enum.js +18 -0
- package/dist/packages/package.ro.d.ts +14 -0
- package/dist/packages/package.ro.js +48 -0
- package/dist/profile/birthday-marketing/birthday-marketing.dto.d.ts +2 -2
- package/dist/profile/birthday-marketing/birthday-marketing.dto.js +3 -1
- package/dist/profile/company-ai-context.d.ts +2 -0
- package/dist/profile/cross-sale/cross-sale.dto.d.ts +2 -2
- package/dist/profile/cross-sale/cross-sale.dto.js +3 -1
- package/dist/profile/cross-sale/cross-sale.ro.d.ts +2 -2
- package/dist/profile/custom-client-booking-email/custom-client-booking-email.dto.d.ts +2 -2
- package/dist/profile/custom-client-booking-email/custom-client-booking-email.dto.js +3 -1
- package/dist/profile/custom-client-booking-email/custom-client-booking-email.ro.d.ts +2 -2
- package/dist/profile/marketing-automation/marketing-automation.dto.d.ts +2 -2
- package/dist/profile/marketing-automation/marketing-automation.dto.js +3 -1
- package/dist/profile/marketing-automation/marketing-automation.ro.d.ts +2 -2
- package/dist/profile/marketing-email/create-profile-marketing-email-campaign.dto.d.ts +14 -13
- package/dist/profile/marketing-email/create-profile-marketing-email-campaign.dto.js +19 -28
- package/dist/profile/marketing-email/preflight-issue.ro.d.ts +31 -1
- package/dist/profile/marketing-email/preflight-issue.ro.js +30 -0
- package/dist/profile/marketing-email/preview-campaign-v2.dto.d.ts +2 -2
- package/dist/profile/marketing-email/preview-campaign-v2.dto.js +2 -2
- package/dist/profile/marketing-email/preview-profile-marketing-segment.dto.d.ts +6 -0
- package/dist/profile/marketing-email/preview-profile-marketing-segment.dto.js +8 -0
- package/dist/profile/marketing-email/preview-profile-marketing-segment.ro.d.ts +6 -1
- package/dist/profile/marketing-email/preview-profile-marketing-segment.ro.js +9 -1
- package/dist/profile/marketing-email/profile-marketing-email-campaign.ro.d.ts +11 -2
- package/dist/profile/marketing-email/profile-marketing-email-campaign.ro.js +12 -0
- package/dist/profile/marketing-email/profile-marketing-email-recipient-status.enum.d.ts +6 -0
- package/dist/profile/marketing-email/profile-marketing-email-recipient-status.enum.js +6 -0
- package/dist/profile/marketing-email/test-send-email-v2.dto.d.ts +2 -2
- package/dist/profile/marketing-email/test-send-email-v2.dto.js +2 -2
- package/dist/profile/notification-chanel/notification-chanel-action.enum.d.ts +16 -1
- package/dist/profile/notification-chanel/notification-chanel-action.enum.js +21 -1
- package/dist/profile/notification-chanel/notification-chanel.ro.d.ts +5 -0
- package/dist/profile/notification-chanel/notification-chanel.ro.js +4 -0
- package/dist/profile/notification-chanel/test-notification-chanel.dto.d.ts +7 -2
- package/dist/profile/notification-chanel/test-notification-chanel.dto.js +7 -0
- package/dist/questroom/questroom-ai-context.d.ts +5 -0
- package/dist/questroom-scenario-email/create-questroom-scenario-email.dto.d.ts +2 -2
- package/dist/questroom-scenario-email/create-questroom-scenario-email.dto.js +3 -1
- package/dist/questroom-scenario-email/questroom-scenario-email.ro.d.ts +2 -2
- package/dist/shared/enum/availability.enum.d.ts +11 -0
- package/dist/shared/enum/availability.enum.js +15 -0
- package/dist/slot/bulk-update-slots.dto.d.ts +2 -0
- package/dist/slot/bulk-update-slots.dto.js +7 -0
- package/dist/slot/change-template-slots-form.dto.d.ts +3 -0
- package/dist/slot/change-template-slots-form.dto.js +13 -0
- package/dist/slot/create-slot-form.dto.d.ts +2 -0
- package/dist/slot/create-slot-form.dto.js +7 -0
- package/dist/slot/create-slot.dto.d.ts +2 -0
- package/dist/slot/create-slot.dto.js +7 -0
- package/dist/slot/daily-window-range.validator.d.ts +15 -0
- package/dist/slot/daily-window-range.validator.js +46 -0
- package/dist/slot/enum/slot-discount-type.enum.d.ts +15 -0
- package/dist/slot/enum/slot-discount-type.enum.js +19 -0
- package/dist/slot/slot-autocomplite-form.dto.d.ts +2 -0
- package/dist/slot/slot-autocomplite-form.dto.js +7 -0
- package/dist/slot/slot-discount-range.validator.d.ts +10 -0
- package/dist/slot/slot-discount-range.validator.js +36 -0
- package/dist/slot/slot.ro.d.ts +10 -0
- package/dist/slot/update-slot-upsellings-range.dto.d.ts +17 -0
- package/dist/slot/update-slot-upsellings-range.dto.js +68 -0
- package/dist/slot/update-slot.dto.d.ts +4 -0
- package/dist/slot/update-slot.dto.js +14 -0
- package/dist/slot-template/slot-template-element.d.ts +4 -0
- package/dist/slot-template/slot-template-element.js +9 -0
- package/dist/slot-template/slot-template-flex-rule.d.ts +8 -0
- package/dist/slot-template/slot-template-flex-rule.js +15 -2
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/upselling/create-upselling.dto.d.ts +5 -0
- package/dist/upselling/create-upselling.dto.js +8 -0
- package/dist/upselling/upselling.ro.d.ts +1 -0
- package/dist/upselling/upselling.ro.js +4 -0
- package/dist/user/crud/user.ro.d.ts +3 -0
- package/dist/user/crud/user.ro.js +11 -0
- package/dist/user/current/update-current-user-notifications.dto.d.ts +7 -0
- package/dist/user/current/update-current-user-notifications.dto.js +13 -0
- package/dist/user/enum/push-order-scope.enum.d.ts +15 -0
- package/dist/user/enum/push-order-scope.enum.js +19 -0
- package/dist/widget/enum/widget-type.enum.d.ts +3 -1
- package/dist/widget/enum/widget-type.enum.js +2 -0
- package/package.json +2 -2
package/dist/order/order.ro.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { ClientRO } from '../client/client.ro';
|
|
2
|
+
import { LoyaltyBonusRO } from '../loyalty/loyalty-bonus.ro';
|
|
3
|
+
import { OrderDiscountSourceEnum } from '../order-discount/enum/order-discount-source.enum';
|
|
2
4
|
import { OrderPenaltyTypeEnum } from '../order-penalty/enum/order-penalty-type.enum';
|
|
3
5
|
import { OrderProductRO } from '../order-product/order-product.ro';
|
|
4
6
|
import { PromocodeKindEnum } from '../promocode/emun/promocode-kind.enum';
|
|
@@ -66,6 +68,12 @@ export declare class Discounts extends RO {
|
|
|
66
68
|
reason: string;
|
|
67
69
|
amount: number;
|
|
68
70
|
userId: number;
|
|
71
|
+
/**
|
|
72
|
+
* Ручная скидка администратора или автоматическая по статусу клиента.
|
|
73
|
+
* Необязательное: этот же класс описывает скидки на продаже
|
|
74
|
+
* сертификата, где источник один и колонки под него нет.
|
|
75
|
+
*/
|
|
76
|
+
source?: OrderDiscountSourceEnum;
|
|
69
77
|
}
|
|
70
78
|
export declare class PromocodeIssuer {
|
|
71
79
|
id: number;
|
|
@@ -205,12 +213,20 @@ export declare class OrderRO extends RO {
|
|
|
205
213
|
toPay: number;
|
|
206
214
|
/** Реально полученные деньги. v2: payed = cashReceived. */
|
|
207
215
|
cashReceived: number;
|
|
208
|
-
/** Сумма скидок (slotDiscount + ручные). v2: уже вычтено из total. */
|
|
216
|
+
/** Сумма скидок (slotDiscount + ручные + по лояльности). v2: уже вычтено из total. */
|
|
209
217
|
discountTotal: number;
|
|
218
|
+
/** Часть `discountTotal`, пришедшая от статуса клиента в программе лояльности. */
|
|
219
|
+
loyaltyDiscount: number;
|
|
210
220
|
/** Сумма промокодов − returnedPromocode.discount. v2: уже вычтено из total. */
|
|
211
221
|
promocodeTotal: number;
|
|
212
222
|
/** Сумма сертификатов. v2: уже вычтено из total. */
|
|
213
223
|
certificateTotal: number;
|
|
224
|
+
/**
|
|
225
|
+
* Сумма бонусов, которыми закрыта игра. v2: уже вычтено из total и,
|
|
226
|
+
* как сертификат, НЕ входит в `payed` — живых денег бонусы не
|
|
227
|
+
* приносят.
|
|
228
|
+
*/
|
|
229
|
+
bonusTotal: number;
|
|
214
230
|
/** Сумма допуслуг (Σ amount × count). Денорм для бейджа на слоте. */
|
|
215
231
|
upsellingsTotal: number;
|
|
216
232
|
/**
|
|
@@ -253,6 +269,12 @@ export declare class OrderRO extends RO {
|
|
|
253
269
|
questroomId: number;
|
|
254
270
|
certificates: Certificates[];
|
|
255
271
|
uploadedCertificates: Certificates[];
|
|
272
|
+
/**
|
|
273
|
+
* Списания бонусов по этой игре. Отдельными строками, а не одной
|
|
274
|
+
* суммой: администратору нужно видеть, кто и когда списал, и иметь
|
|
275
|
+
* возможность снять конкретную операцию.
|
|
276
|
+
*/
|
|
277
|
+
bonuses: LoyaltyBonusRO[];
|
|
256
278
|
upsellings: Upsellings[];
|
|
257
279
|
discounts: Discounts[];
|
|
258
280
|
promocodes: Promocodes[];
|
package/dist/order/order.ro.js
CHANGED
|
@@ -14,6 +14,8 @@ exports.OrderRO = exports.Transactions = exports.Promocodes = exports.PromocodeI
|
|
|
14
14
|
const class_transformer_1 = require("class-transformer");
|
|
15
15
|
const class_validator_1 = require("class-validator");
|
|
16
16
|
const client_ro_1 = require("../client/client.ro");
|
|
17
|
+
const loyalty_bonus_ro_1 = require("../loyalty/loyalty-bonus.ro");
|
|
18
|
+
const order_discount_source_enum_1 = require("../order-discount/enum/order-discount-source.enum");
|
|
17
19
|
const order_penalty_type_enum_1 = require("../order-penalty/enum/order-penalty-type.enum");
|
|
18
20
|
const order_product_ro_1 = require("../order-product/order-product.ro");
|
|
19
21
|
const promocode_kind_enum_1 = require("../promocode/emun/promocode-kind.enum");
|
|
@@ -173,6 +175,10 @@ __decorate([
|
|
|
173
175
|
(0, class_transformer_1.Expose)(),
|
|
174
176
|
__metadata("design:type", Number)
|
|
175
177
|
], Discounts.prototype, "userId", void 0);
|
|
178
|
+
__decorate([
|
|
179
|
+
(0, class_transformer_1.Expose)(),
|
|
180
|
+
__metadata("design:type", String)
|
|
181
|
+
], Discounts.prototype, "source", void 0);
|
|
176
182
|
class PromocodeIssuer {
|
|
177
183
|
}
|
|
178
184
|
exports.PromocodeIssuer = PromocodeIssuer;
|
|
@@ -498,6 +504,10 @@ __decorate([
|
|
|
498
504
|
(0, class_transformer_1.Expose)(),
|
|
499
505
|
__metadata("design:type", Number)
|
|
500
506
|
], OrderRO.prototype, "discountTotal", void 0);
|
|
507
|
+
__decorate([
|
|
508
|
+
(0, class_transformer_1.Expose)(),
|
|
509
|
+
__metadata("design:type", Number)
|
|
510
|
+
], OrderRO.prototype, "loyaltyDiscount", void 0);
|
|
501
511
|
__decorate([
|
|
502
512
|
(0, class_transformer_1.Expose)(),
|
|
503
513
|
__metadata("design:type", Number)
|
|
@@ -506,6 +516,10 @@ __decorate([
|
|
|
506
516
|
(0, class_transformer_1.Expose)(),
|
|
507
517
|
__metadata("design:type", Number)
|
|
508
518
|
], OrderRO.prototype, "certificateTotal", void 0);
|
|
519
|
+
__decorate([
|
|
520
|
+
(0, class_transformer_1.Expose)(),
|
|
521
|
+
__metadata("design:type", Number)
|
|
522
|
+
], OrderRO.prototype, "bonusTotal", void 0);
|
|
509
523
|
__decorate([
|
|
510
524
|
(0, class_transformer_1.Expose)(),
|
|
511
525
|
__metadata("design:type", Number)
|
|
@@ -610,6 +624,11 @@ __decorate([
|
|
|
610
624
|
(0, class_transformer_1.Type)(() => Certificates),
|
|
611
625
|
__metadata("design:type", Array)
|
|
612
626
|
], OrderRO.prototype, "uploadedCertificates", void 0);
|
|
627
|
+
__decorate([
|
|
628
|
+
(0, class_transformer_1.Expose)(),
|
|
629
|
+
(0, class_transformer_1.Type)(() => loyalty_bonus_ro_1.LoyaltyBonusRO),
|
|
630
|
+
__metadata("design:type", Array)
|
|
631
|
+
], OrderRO.prototype, "bonuses", void 0);
|
|
613
632
|
__decorate([
|
|
614
633
|
(0, class_transformer_1.Expose)(),
|
|
615
634
|
(0, class_transformer_1.Type)(() => Upsellings),
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Кто поставил скидку на игру. Строка с `LOYALTY` принадлежит программе
|
|
3
|
+
* лояльности: её пересобирает система при каждом пересчёте чека, и
|
|
4
|
+
* администратор не должен править её руками — правка всё равно
|
|
5
|
+
* потеряется на следующем пересчёте.
|
|
6
|
+
*/
|
|
7
|
+
export declare enum OrderDiscountSourceEnum {
|
|
8
|
+
MANUAL = "manual",
|
|
9
|
+
LOYALTY = "loyalty"
|
|
10
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OrderDiscountSourceEnum = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Кто поставил скидку на игру. Строка с `LOYALTY` принадлежит программе
|
|
6
|
+
* лояльности: её пересобирает система при каждом пересчёте чека, и
|
|
7
|
+
* администратор не должен править её руками — правка всё равно
|
|
8
|
+
* потеряется на следующем пересчёте.
|
|
9
|
+
*/
|
|
10
|
+
var OrderDiscountSourceEnum;
|
|
11
|
+
(function (OrderDiscountSourceEnum) {
|
|
12
|
+
OrderDiscountSourceEnum["MANUAL"] = "manual";
|
|
13
|
+
OrderDiscountSourceEnum["LOYALTY"] = "loyalty";
|
|
14
|
+
})(OrderDiscountSourceEnum || (exports.OrderDiscountSourceEnum = OrderDiscountSourceEnum = {}));
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { PackageAddonSelectionDto } from './package-addon.dto';
|
|
1
2
|
/** Выбранный клиентом слот под конкретную позицию пакета. */
|
|
2
3
|
export declare class BookPackageSelectionDto {
|
|
3
4
|
positionId: string;
|
|
@@ -16,6 +17,8 @@ export declare class BookPackageDto {
|
|
|
16
17
|
selections: BookPackageSelectionDto[];
|
|
17
18
|
/** Апселлы пакета, которые клиент оставил (positionId → добавить к 1-му заказу). */
|
|
18
19
|
keptUpsellingPositionIds?: string[];
|
|
20
|
+
/** Платные допы сверх пакета («добавьте к празднику»). */
|
|
21
|
+
addons?: PackageAddonSelectionDto[];
|
|
19
22
|
language?: string;
|
|
20
23
|
comment?: string;
|
|
21
24
|
/** hold текущей widget-сессии (для идемпотентности preorder). */
|
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.BookPackageDto = exports.BookPackageSelectionDto = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const package_addon_dto_1 = require("./package-addon.dto");
|
|
15
16
|
/** Выбранный клиентом слот под конкретную позицию пакета. */
|
|
16
17
|
class BookPackageSelectionDto {
|
|
17
18
|
}
|
|
@@ -90,6 +91,14 @@ __decorate([
|
|
|
90
91
|
(0, class_transformer_1.Expose)(),
|
|
91
92
|
__metadata("design:type", Array)
|
|
92
93
|
], BookPackageDto.prototype, "keptUpsellingPositionIds", void 0);
|
|
94
|
+
__decorate([
|
|
95
|
+
(0, class_validator_1.IsOptional)(),
|
|
96
|
+
(0, class_validator_1.IsArray)(),
|
|
97
|
+
(0, class_validator_1.ValidateNested)({ each: true }),
|
|
98
|
+
(0, class_transformer_1.Type)(() => package_addon_dto_1.PackageAddonSelectionDto),
|
|
99
|
+
(0, class_transformer_1.Expose)(),
|
|
100
|
+
__metadata("design:type", Array)
|
|
101
|
+
], BookPackageDto.prototype, "addons", void 0);
|
|
93
102
|
__decorate([
|
|
94
103
|
(0, class_validator_1.IsOptional)(),
|
|
95
104
|
(0, class_validator_1.IsString)(),
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
import { PackageAudienceEnum } from './package-audience.enum';
|
|
1
2
|
import { PackageCancelScopeEnum } from './package-cancel-scope.enum';
|
|
2
3
|
import { PackageCapacityModelEnum } from './package-capacity-model.enum';
|
|
3
4
|
import { PackageDiscountTypeEnum } from './package-discount-type.enum';
|
|
5
|
+
import { PackageFeatureDto } from './package-feature.dto';
|
|
4
6
|
import { PackagePositionDto } from './package-position.dto';
|
|
7
|
+
import { PackagePricingModeEnum } from './package-pricing-mode.enum';
|
|
5
8
|
import { PackageSplitModeEnum } from './package-split-mode.enum';
|
|
6
9
|
import { PackageTimingModeEnum } from './package-timing-mode.enum';
|
|
7
10
|
export declare class CreatePackageDto {
|
|
@@ -11,6 +14,11 @@ export declare class CreatePackageDto {
|
|
|
11
14
|
photo?: string;
|
|
12
15
|
color?: string;
|
|
13
16
|
sortPosition: number;
|
|
17
|
+
/** Плашка на карточке («популярный», «выгодно»). */
|
|
18
|
+
badge?: string | null;
|
|
19
|
+
audience: PackageAudienceEnum;
|
|
20
|
+
/** Чек-лист «что входит в тариф» на витрине. */
|
|
21
|
+
features: PackageFeatureDto[];
|
|
14
22
|
availableInWidget: boolean;
|
|
15
23
|
saved: boolean;
|
|
16
24
|
/** Диапазон действия акции (ISO date), null — бессрочно. */
|
|
@@ -34,6 +42,21 @@ export declare class CreatePackageDto {
|
|
|
34
42
|
/** Общий мин./макс. игроков на пакет (для capacityModel=shared). */
|
|
35
43
|
playersMin?: number | null;
|
|
36
44
|
playersMax?: number | null;
|
|
45
|
+
pricingMode: PackagePricingModeEnum;
|
|
46
|
+
/** Цена пакета за будний день (pricingMode=fixed). */
|
|
47
|
+
price: number;
|
|
48
|
+
/** Цена за выходной/праздничный день. null — та же, что и в будни. */
|
|
49
|
+
weekendPrice?: number | null;
|
|
50
|
+
/** Какие дни недели считать «выходными» для цены (0 — Пн … 6 — Вс). */
|
|
51
|
+
weekendDays: number[];
|
|
52
|
+
/** Сколько игроков уже включено в цену пакета. */
|
|
53
|
+
includedPlayers: number;
|
|
54
|
+
/** Доплата за каждого игрока сверх `includedPlayers`. */
|
|
55
|
+
extraPlayerPrice: number;
|
|
56
|
+
/** Предоплата для брони пакета (0 — бронь без предоплаты). */
|
|
57
|
+
prepayment: number;
|
|
58
|
+
/** Платные допуслуги, предлагаемые к пакету («добавьте к празднику»). */
|
|
59
|
+
addonUpsellingIds: number[];
|
|
37
60
|
discountType: PackageDiscountTypeEnum;
|
|
38
61
|
discountAmount: number;
|
|
39
62
|
/** Тираж пакета (null — без лимита). */
|
|
@@ -13,10 +13,13 @@ exports.CreatePackageDto = void 0;
|
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
15
|
const is_not_blank_1 = require("../shared/is-not-blank");
|
|
16
|
+
const package_audience_enum_1 = require("./package-audience.enum");
|
|
16
17
|
const package_cancel_scope_enum_1 = require("./package-cancel-scope.enum");
|
|
17
18
|
const package_capacity_model_enum_1 = require("./package-capacity-model.enum");
|
|
18
19
|
const package_discount_type_enum_1 = require("./package-discount-type.enum");
|
|
20
|
+
const package_feature_dto_1 = require("./package-feature.dto");
|
|
19
21
|
const package_position_dto_1 = require("./package-position.dto");
|
|
22
|
+
const package_pricing_mode_enum_1 = require("./package-pricing-mode.enum");
|
|
20
23
|
const package_split_mode_enum_1 = require("./package-split-mode.enum");
|
|
21
24
|
const package_timing_mode_enum_1 = require("./package-timing-mode.enum");
|
|
22
25
|
class CreatePackageDto {
|
|
@@ -57,6 +60,26 @@ __decorate([
|
|
|
57
60
|
(0, class_transformer_1.Expose)(),
|
|
58
61
|
__metadata("design:type", Number)
|
|
59
62
|
], CreatePackageDto.prototype, "sortPosition", void 0);
|
|
63
|
+
__decorate([
|
|
64
|
+
(0, class_validator_1.IsOptional)(),
|
|
65
|
+
(0, class_validator_1.IsString)(),
|
|
66
|
+
(0, class_transformer_1.Expose)(),
|
|
67
|
+
__metadata("design:type", String)
|
|
68
|
+
], CreatePackageDto.prototype, "badge", void 0);
|
|
69
|
+
__decorate([
|
|
70
|
+
(0, class_validator_1.IsEnum)(package_audience_enum_1.PackageAudienceEnum),
|
|
71
|
+
(0, class_transformer_1.Transform)(({ value }) => value !== null && value !== void 0 ? value : package_audience_enum_1.PackageAudienceEnum.ANY),
|
|
72
|
+
(0, class_transformer_1.Expose)(),
|
|
73
|
+
__metadata("design:type", String)
|
|
74
|
+
], CreatePackageDto.prototype, "audience", void 0);
|
|
75
|
+
__decorate([
|
|
76
|
+
(0, class_validator_1.IsArray)(),
|
|
77
|
+
(0, class_validator_1.ValidateNested)({ each: true }),
|
|
78
|
+
(0, class_transformer_1.Type)(() => package_feature_dto_1.PackageFeatureDto),
|
|
79
|
+
(0, class_transformer_1.Transform)(({ value }) => (Array.isArray(value) ? value : [])),
|
|
80
|
+
(0, class_transformer_1.Expose)(),
|
|
81
|
+
__metadata("design:type", Array)
|
|
82
|
+
], CreatePackageDto.prototype, "features", void 0);
|
|
60
83
|
__decorate([
|
|
61
84
|
(0, class_validator_1.IsBoolean)(),
|
|
62
85
|
(0, class_transformer_1.Transform)(({ value }) => value !== null && value !== void 0 ? value : false),
|
|
@@ -170,6 +193,62 @@ __decorate([
|
|
|
170
193
|
(0, class_transformer_1.Expose)(),
|
|
171
194
|
__metadata("design:type", Number)
|
|
172
195
|
], CreatePackageDto.prototype, "playersMax", void 0);
|
|
196
|
+
__decorate([
|
|
197
|
+
(0, class_validator_1.IsEnum)(package_pricing_mode_enum_1.PackagePricingModeEnum),
|
|
198
|
+
(0, class_transformer_1.Transform)(({ value }) => value !== null && value !== void 0 ? value : package_pricing_mode_enum_1.PackagePricingModeEnum.DISCOUNT),
|
|
199
|
+
(0, class_transformer_1.Expose)(),
|
|
200
|
+
__metadata("design:type", String)
|
|
201
|
+
], CreatePackageDto.prototype, "pricingMode", void 0);
|
|
202
|
+
__decorate([
|
|
203
|
+
(0, class_validator_1.ValidateIf)((o) => o.pricingMode === package_pricing_mode_enum_1.PackagePricingModeEnum.FIXED),
|
|
204
|
+
(0, class_validator_1.IsNumber)(),
|
|
205
|
+
(0, class_validator_1.Min)(0),
|
|
206
|
+
(0, class_transformer_1.Transform)(({ value }) => (value === undefined || value === null ? 0 : Number(value))),
|
|
207
|
+
(0, class_transformer_1.Expose)(),
|
|
208
|
+
__metadata("design:type", Number)
|
|
209
|
+
], CreatePackageDto.prototype, "price", void 0);
|
|
210
|
+
__decorate([
|
|
211
|
+
(0, class_validator_1.IsOptional)(),
|
|
212
|
+
(0, class_validator_1.IsNumber)(),
|
|
213
|
+
(0, class_validator_1.Min)(0),
|
|
214
|
+
(0, class_transformer_1.Expose)(),
|
|
215
|
+
__metadata("design:type", Number)
|
|
216
|
+
], CreatePackageDto.prototype, "weekendPrice", void 0);
|
|
217
|
+
__decorate([
|
|
218
|
+
(0, class_validator_1.IsArray)(),
|
|
219
|
+
(0, class_validator_1.IsInt)({ each: true }),
|
|
220
|
+
(0, class_transformer_1.Transform)(({ value }) => (Array.isArray(value) ? value.map((v) => +v) : [5, 6])),
|
|
221
|
+
(0, class_transformer_1.Expose)(),
|
|
222
|
+
__metadata("design:type", Array)
|
|
223
|
+
], CreatePackageDto.prototype, "weekendDays", void 0);
|
|
224
|
+
__decorate([
|
|
225
|
+
(0, class_validator_1.IsInt)(),
|
|
226
|
+
(0, class_validator_1.Min)(0),
|
|
227
|
+
(0, class_transformer_1.Transform)(({ value }) => (value === undefined || value === null ? 0 : +value)),
|
|
228
|
+
(0, class_transformer_1.Expose)(),
|
|
229
|
+
__metadata("design:type", Number)
|
|
230
|
+
], CreatePackageDto.prototype, "includedPlayers", void 0);
|
|
231
|
+
__decorate([
|
|
232
|
+
(0, class_validator_1.IsNumber)(),
|
|
233
|
+
(0, class_validator_1.Min)(0),
|
|
234
|
+
(0, class_transformer_1.Transform)(({ value }) => (value === undefined || value === null ? 0 : Number(value))),
|
|
235
|
+
(0, class_transformer_1.Expose)(),
|
|
236
|
+
__metadata("design:type", Number)
|
|
237
|
+
], CreatePackageDto.prototype, "extraPlayerPrice", void 0);
|
|
238
|
+
__decorate([
|
|
239
|
+
(0, class_validator_1.IsNumber)(),
|
|
240
|
+
(0, class_validator_1.Min)(0),
|
|
241
|
+
(0, class_transformer_1.Transform)(({ value }) => (value === undefined || value === null ? 0 : Number(value))),
|
|
242
|
+
(0, class_transformer_1.Expose)(),
|
|
243
|
+
__metadata("design:type", Number)
|
|
244
|
+
], CreatePackageDto.prototype, "prepayment", void 0);
|
|
245
|
+
__decorate([
|
|
246
|
+
(0, class_validator_1.IsArray)(),
|
|
247
|
+
(0, class_validator_1.IsInt)({ each: true }),
|
|
248
|
+
(0, class_transformer_1.Transform)(({ value }) => (Array.isArray(value) ? value.map((v) => +v) : [])),
|
|
249
|
+
(0, class_transformer_1.Expose)(),
|
|
250
|
+
__metadata("design:type", Array)
|
|
251
|
+
], CreatePackageDto.prototype, "addonUpsellingIds", void 0);
|
|
173
252
|
__decorate([
|
|
174
253
|
(0, class_validator_1.IsEnum)(package_discount_type_enum_1.PackageDiscountTypeEnum),
|
|
175
254
|
(0, class_transformer_1.Transform)(({ value }) => value !== null && value !== void 0 ? value : package_discount_type_enum_1.PackageDiscountTypeEnum.PERCENT),
|
|
@@ -177,7 +256,8 @@ __decorate([
|
|
|
177
256
|
__metadata("design:type", String)
|
|
178
257
|
], CreatePackageDto.prototype, "discountType", void 0);
|
|
179
258
|
__decorate([
|
|
180
|
-
(0, class_validator_1.ValidateIf)((o) => o.
|
|
259
|
+
(0, class_validator_1.ValidateIf)((o) => o.pricingMode !== package_pricing_mode_enum_1.PackagePricingModeEnum.FIXED &&
|
|
260
|
+
o.discountType !== package_discount_type_enum_1.PackageDiscountTypeEnum.FULL),
|
|
181
261
|
(0, class_validator_1.IsNumber)(),
|
|
182
262
|
(0, class_validator_1.Min)(0),
|
|
183
263
|
(0, class_transformer_1.Transform)(({ value }) => (value === undefined || value === null ? 0 : Number(value))),
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.PackageAddonSelectionDto = void 0;
|
|
13
|
+
const class_transformer_1 = require("class-transformer");
|
|
14
|
+
const class_validator_1 = require("class-validator");
|
|
15
|
+
/** Платная допуслуга, выбранная клиентом сверх пакета («добавьте к празднику»). */
|
|
16
|
+
class PackageAddonSelectionDto {
|
|
17
|
+
}
|
|
18
|
+
exports.PackageAddonSelectionDto = PackageAddonSelectionDto;
|
|
19
|
+
__decorate([
|
|
20
|
+
(0, class_validator_1.IsInt)(),
|
|
21
|
+
(0, class_transformer_1.Transform)(({ value }) => +value),
|
|
22
|
+
(0, class_transformer_1.Expose)(),
|
|
23
|
+
__metadata("design:type", Number)
|
|
24
|
+
], PackageAddonSelectionDto.prototype, "upsellingId", void 0);
|
|
25
|
+
__decorate([
|
|
26
|
+
(0, class_validator_1.IsInt)(),
|
|
27
|
+
(0, class_validator_1.Min)(1),
|
|
28
|
+
(0, class_transformer_1.Transform)(({ value }) => (value === undefined || value === null ? 1 : +value)),
|
|
29
|
+
(0, class_transformer_1.Expose)(),
|
|
30
|
+
__metadata("design:type", Number)
|
|
31
|
+
], PackageAddonSelectionDto.prototype, "count", void 0);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PackageAudienceEnum = void 0;
|
|
4
|
+
/** Для кого пакет — используется фильтром «кто празднует» в виджете. */
|
|
5
|
+
var PackageAudienceEnum;
|
|
6
|
+
(function (PackageAudienceEnum) {
|
|
7
|
+
PackageAudienceEnum["ANY"] = "any";
|
|
8
|
+
PackageAudienceEnum["KIDS"] = "kids";
|
|
9
|
+
PackageAudienceEnum["ADULTS"] = "adults";
|
|
10
|
+
})(PackageAudienceEnum || (exports.PackageAudienceEnum = PackageAudienceEnum = {}));
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Строка чек-листа «что входит в тариф» на витрине пакета.
|
|
3
|
+
*
|
|
4
|
+
* Это чистая витрина: `included: false` рисуется зачёркнутым, чтобы клиент
|
|
5
|
+
* видел разницу между пакетами одной линейки. Состав, который реально
|
|
6
|
+
* бронируется и попадает в заказ, живёт в `PackageEntity.positions`.
|
|
7
|
+
*/
|
|
8
|
+
export declare class PackageFeatureDto {
|
|
9
|
+
id: string;
|
|
10
|
+
title: string;
|
|
11
|
+
included: boolean;
|
|
12
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.PackageFeatureDto = void 0;
|
|
13
|
+
const class_transformer_1 = require("class-transformer");
|
|
14
|
+
const class_validator_1 = require("class-validator");
|
|
15
|
+
const is_not_blank_1 = require("../shared/is-not-blank");
|
|
16
|
+
/**
|
|
17
|
+
* Строка чек-листа «что входит в тариф» на витрине пакета.
|
|
18
|
+
*
|
|
19
|
+
* Это чистая витрина: `included: false` рисуется зачёркнутым, чтобы клиент
|
|
20
|
+
* видел разницу между пакетами одной линейки. Состав, который реально
|
|
21
|
+
* бронируется и попадает в заказ, живёт в `PackageEntity.positions`.
|
|
22
|
+
*/
|
|
23
|
+
class PackageFeatureDto {
|
|
24
|
+
}
|
|
25
|
+
exports.PackageFeatureDto = PackageFeatureDto;
|
|
26
|
+
__decorate([
|
|
27
|
+
(0, class_validator_1.IsString)(),
|
|
28
|
+
(0, class_transformer_1.Expose)(),
|
|
29
|
+
__metadata("design:type", String)
|
|
30
|
+
], PackageFeatureDto.prototype, "id", void 0);
|
|
31
|
+
__decorate([
|
|
32
|
+
(0, is_not_blank_1.IsNotBlank)(),
|
|
33
|
+
(0, class_transformer_1.Expose)(),
|
|
34
|
+
__metadata("design:type", String)
|
|
35
|
+
], PackageFeatureDto.prototype, "title", void 0);
|
|
36
|
+
__decorate([
|
|
37
|
+
(0, class_validator_1.IsBoolean)(),
|
|
38
|
+
(0, class_transformer_1.Transform)(({ value }) => value !== null && value !== void 0 ? value : true),
|
|
39
|
+
(0, class_transformer_1.Expose)(),
|
|
40
|
+
__metadata("design:type", Boolean)
|
|
41
|
+
], PackageFeatureDto.prototype, "included", void 0);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Как считается цена пакета.
|
|
3
|
+
*
|
|
4
|
+
* `DISCOUNT` — исторический режим «комбо»: цена собирается из тарифов слотов,
|
|
5
|
+
* пакет лишь кладёт групповую скидку.
|
|
6
|
+
*
|
|
7
|
+
* `FIXED` — пакет сам является товаром с прайсом: фиксированная цена за
|
|
8
|
+
* будний/выходной день, N игроков включено, доплата за каждого сверх. Тарифы
|
|
9
|
+
* слотов при этом на итог не влияют.
|
|
10
|
+
*/
|
|
11
|
+
export declare enum PackagePricingModeEnum {
|
|
12
|
+
DISCOUNT = "discount",
|
|
13
|
+
FIXED = "fixed"
|
|
14
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PackagePricingModeEnum = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Как считается цена пакета.
|
|
6
|
+
*
|
|
7
|
+
* `DISCOUNT` — исторический режим «комбо»: цена собирается из тарифов слотов,
|
|
8
|
+
* пакет лишь кладёт групповую скидку.
|
|
9
|
+
*
|
|
10
|
+
* `FIXED` — пакет сам является товаром с прайсом: фиксированная цена за
|
|
11
|
+
* будний/выходной день, N игроков включено, доплата за каждого сверх. Тарифы
|
|
12
|
+
* слотов при этом на итог не влияют.
|
|
13
|
+
*/
|
|
14
|
+
var PackagePricingModeEnum;
|
|
15
|
+
(function (PackagePricingModeEnum) {
|
|
16
|
+
PackagePricingModeEnum["DISCOUNT"] = "discount";
|
|
17
|
+
PackagePricingModeEnum["FIXED"] = "fixed";
|
|
18
|
+
})(PackagePricingModeEnum || (exports.PackagePricingModeEnum = PackagePricingModeEnum = {}));
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { RO } from '../shared/ro-class';
|
|
2
|
+
import { PackageAudienceEnum } from './package-audience.enum';
|
|
2
3
|
import { PackageCancelScopeEnum } from './package-cancel-scope.enum';
|
|
3
4
|
import { PackageCapacityModelEnum } from './package-capacity-model.enum';
|
|
4
5
|
import { PackageDiscountTypeEnum } from './package-discount-type.enum';
|
|
6
|
+
import { PackageFeatureDto } from './package-feature.dto';
|
|
5
7
|
import { PackagePositionDto } from './package-position.dto';
|
|
8
|
+
import { PackagePricingModeEnum } from './package-pricing-mode.enum';
|
|
6
9
|
import { PackageSplitModeEnum } from './package-split-mode.enum';
|
|
7
10
|
import { PackageTimingModeEnum } from './package-timing-mode.enum';
|
|
8
11
|
export declare class PackageResponseObject extends RO {
|
|
@@ -12,6 +15,9 @@ export declare class PackageResponseObject extends RO {
|
|
|
12
15
|
photo?: string;
|
|
13
16
|
color?: string;
|
|
14
17
|
sortPosition: number;
|
|
18
|
+
badge?: string | null;
|
|
19
|
+
audience: PackageAudienceEnum;
|
|
20
|
+
features: PackageFeatureDto[];
|
|
15
21
|
availableInWidget: boolean;
|
|
16
22
|
saved: boolean;
|
|
17
23
|
activeFrom?: string | null;
|
|
@@ -32,6 +38,14 @@ export declare class PackageResponseObject extends RO {
|
|
|
32
38
|
splitMode: PackageSplitModeEnum;
|
|
33
39
|
playersMin?: number | null;
|
|
34
40
|
playersMax?: number | null;
|
|
41
|
+
pricingMode: PackagePricingModeEnum;
|
|
42
|
+
price: number;
|
|
43
|
+
weekendPrice?: number | null;
|
|
44
|
+
weekendDays: number[];
|
|
45
|
+
includedPlayers: number;
|
|
46
|
+
extraPlayerPrice: number;
|
|
47
|
+
prepayment: number;
|
|
48
|
+
addonUpsellingIds: number[];
|
|
35
49
|
discountType: PackageDiscountTypeEnum;
|
|
36
50
|
discountAmount: number;
|
|
37
51
|
salesLimit?: number | null;
|
|
@@ -12,10 +12,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.PackageResponseObject = void 0;
|
|
13
13
|
const class_transformer_1 = require("class-transformer");
|
|
14
14
|
const ro_class_1 = require("../shared/ro-class");
|
|
15
|
+
const package_audience_enum_1 = require("./package-audience.enum");
|
|
15
16
|
const package_cancel_scope_enum_1 = require("./package-cancel-scope.enum");
|
|
16
17
|
const package_capacity_model_enum_1 = require("./package-capacity-model.enum");
|
|
17
18
|
const package_discount_type_enum_1 = require("./package-discount-type.enum");
|
|
19
|
+
const package_feature_dto_1 = require("./package-feature.dto");
|
|
18
20
|
const package_position_dto_1 = require("./package-position.dto");
|
|
21
|
+
const package_pricing_mode_enum_1 = require("./package-pricing-mode.enum");
|
|
19
22
|
const package_split_mode_enum_1 = require("./package-split-mode.enum");
|
|
20
23
|
const package_timing_mode_enum_1 = require("./package-timing-mode.enum");
|
|
21
24
|
class PackageResponseObject extends ro_class_1.RO {
|
|
@@ -45,6 +48,19 @@ __decorate([
|
|
|
45
48
|
(0, class_transformer_1.Expose)(),
|
|
46
49
|
__metadata("design:type", Number)
|
|
47
50
|
], PackageResponseObject.prototype, "sortPosition", void 0);
|
|
51
|
+
__decorate([
|
|
52
|
+
(0, class_transformer_1.Expose)(),
|
|
53
|
+
__metadata("design:type", String)
|
|
54
|
+
], PackageResponseObject.prototype, "badge", void 0);
|
|
55
|
+
__decorate([
|
|
56
|
+
(0, class_transformer_1.Expose)(),
|
|
57
|
+
__metadata("design:type", String)
|
|
58
|
+
], PackageResponseObject.prototype, "audience", void 0);
|
|
59
|
+
__decorate([
|
|
60
|
+
(0, class_transformer_1.Expose)(),
|
|
61
|
+
(0, class_transformer_1.Type)(() => package_feature_dto_1.PackageFeatureDto),
|
|
62
|
+
__metadata("design:type", Array)
|
|
63
|
+
], PackageResponseObject.prototype, "features", void 0);
|
|
48
64
|
__decorate([
|
|
49
65
|
(0, class_transformer_1.Expose)(),
|
|
50
66
|
__metadata("design:type", Boolean)
|
|
@@ -122,6 +138,38 @@ __decorate([
|
|
|
122
138
|
(0, class_transformer_1.Expose)(),
|
|
123
139
|
__metadata("design:type", Number)
|
|
124
140
|
], PackageResponseObject.prototype, "playersMax", void 0);
|
|
141
|
+
__decorate([
|
|
142
|
+
(0, class_transformer_1.Expose)(),
|
|
143
|
+
__metadata("design:type", String)
|
|
144
|
+
], PackageResponseObject.prototype, "pricingMode", void 0);
|
|
145
|
+
__decorate([
|
|
146
|
+
(0, class_transformer_1.Expose)(),
|
|
147
|
+
__metadata("design:type", Number)
|
|
148
|
+
], PackageResponseObject.prototype, "price", void 0);
|
|
149
|
+
__decorate([
|
|
150
|
+
(0, class_transformer_1.Expose)(),
|
|
151
|
+
__metadata("design:type", Number)
|
|
152
|
+
], PackageResponseObject.prototype, "weekendPrice", void 0);
|
|
153
|
+
__decorate([
|
|
154
|
+
(0, class_transformer_1.Expose)(),
|
|
155
|
+
__metadata("design:type", Array)
|
|
156
|
+
], PackageResponseObject.prototype, "weekendDays", void 0);
|
|
157
|
+
__decorate([
|
|
158
|
+
(0, class_transformer_1.Expose)(),
|
|
159
|
+
__metadata("design:type", Number)
|
|
160
|
+
], PackageResponseObject.prototype, "includedPlayers", void 0);
|
|
161
|
+
__decorate([
|
|
162
|
+
(0, class_transformer_1.Expose)(),
|
|
163
|
+
__metadata("design:type", Number)
|
|
164
|
+
], PackageResponseObject.prototype, "extraPlayerPrice", void 0);
|
|
165
|
+
__decorate([
|
|
166
|
+
(0, class_transformer_1.Expose)(),
|
|
167
|
+
__metadata("design:type", Number)
|
|
168
|
+
], PackageResponseObject.prototype, "prepayment", void 0);
|
|
169
|
+
__decorate([
|
|
170
|
+
(0, class_transformer_1.Expose)(),
|
|
171
|
+
__metadata("design:type", Array)
|
|
172
|
+
], PackageResponseObject.prototype, "addonUpsellingIds", void 0);
|
|
125
173
|
__decorate([
|
|
126
174
|
(0, class_transformer_1.Expose)(),
|
|
127
175
|
__metadata("design:type", String)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { EmailContent } from '../../email-builder';
|
|
2
2
|
import { Languages } from '../../shared/enum/languages.enum';
|
|
3
3
|
import { CrossSaleStatusEnum } from '../cross-sale/cross-sale-status.enum';
|
|
4
4
|
import { CrossSaleDiscountTypeEnum } from '../cross-sale/crossale-discount-type.enum';
|
|
@@ -11,7 +11,7 @@ export declare class BirthdayMarketingLocaleDto {
|
|
|
11
11
|
* Maily/TipTap v2-документ. Опционально — старый Quill-редактор
|
|
12
12
|
* присылает только `feedbackText`. См. `CustomClientBookingEmailLocaleDto.contentJson`.
|
|
13
13
|
*/
|
|
14
|
-
contentJson?:
|
|
14
|
+
contentJson?: EmailContent | null;
|
|
15
15
|
}
|
|
16
16
|
export declare class BirthdayMarketingDto {
|
|
17
17
|
/**
|
|
@@ -13,6 +13,7 @@ exports.BirthdayMarketingDto = exports.BirthdayMarketingLocaleDto = void 0;
|
|
|
13
13
|
/* eslint-disable max-classes-per-file */
|
|
14
14
|
const class_transformer_1 = require("class-transformer");
|
|
15
15
|
const class_validator_1 = require("class-validator");
|
|
16
|
+
const email_content_dto_1 = require("../../email-builder/email-content.dto");
|
|
16
17
|
const languages_enum_1 = require("../../shared/enum/languages.enum");
|
|
17
18
|
const is_not_blank_1 = require("../../shared/is-not-blank");
|
|
18
19
|
const cross_sale_status_enum_1 = require("../cross-sale/cross-sale-status.enum");
|
|
@@ -42,7 +43,8 @@ __decorate([
|
|
|
42
43
|
], BirthdayMarketingLocaleDto.prototype, "title", void 0);
|
|
43
44
|
__decorate([
|
|
44
45
|
(0, class_validator_1.IsOptional)(),
|
|
45
|
-
(0, class_validator_1.
|
|
46
|
+
(0, class_validator_1.ValidateNested)(),
|
|
47
|
+
(0, class_transformer_1.Type)(() => email_content_dto_1.EmailContentDto),
|
|
46
48
|
(0, class_transformer_1.Expose)(),
|
|
47
49
|
__metadata("design:type", Object)
|
|
48
50
|
], BirthdayMarketingLocaleDto.prototype, "contentJson", void 0);
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { QuestroomCancelationTypeEnum } from '../questroom/enum/questroom-cancelation-type.enum';
|
|
2
|
+
import { AvailabilityEnum } from '../shared/enum/availability.enum';
|
|
2
3
|
import { Languages } from '../shared/enum/languages.enum';
|
|
3
4
|
import { PrepaymentTypeEnum } from '../slot/enum/prepayment-type.enum';
|
|
4
5
|
/**
|
|
@@ -39,6 +40,7 @@ export type CompanyAiContext = {
|
|
|
39
40
|
timeZone?: string;
|
|
40
41
|
amenities: {
|
|
41
42
|
wifi: boolean;
|
|
43
|
+
airConditioning: AvailabilityEnum;
|
|
42
44
|
wardrobe: boolean;
|
|
43
45
|
freeParking: boolean;
|
|
44
46
|
parking: boolean;
|