@escapenavigator/types 1.10.100 → 1.10.102

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.
Files changed (133) hide show
  1. package/dist/certificate/certificate.ro.d.ts +7 -0
  2. package/dist/certificate/certificate.ro.js +25 -0
  3. package/dist/certificate/create-certificate.dto.d.ts +7 -0
  4. package/dist/certificate/create-certificate.dto.js +44 -0
  5. package/dist/certificate/enum/certificate-template-discount-type.enum.d.ts +4 -0
  6. package/dist/certificate/enum/certificate-template-discount-type.enum.js +8 -0
  7. package/dist/certificate-sale/certificate-sale-resend.dto.d.ts +1 -1
  8. package/dist/certificate-sale/certificate-sale.ro.d.ts +6 -1
  9. package/dist/certificate-sale/certificate-sale.ro.js +22 -2
  10. package/dist/client/client-form.dto.d.ts +1 -0
  11. package/dist/client/client-form.dto.js +5 -0
  12. package/dist/client/client.ro.d.ts +2 -0
  13. package/dist/client/client.ro.js +8 -0
  14. package/dist/client/create-client-from-widget.dto.d.ts +1 -0
  15. package/dist/client/create-client-from-widget.dto.js +5 -0
  16. package/dist/forms/widget/certificate/widget-certificate-nominal-form.dto.d.ts +3 -0
  17. package/dist/forms/widget/certificate/widget-certificate-nominal-form.dto.js +44 -0
  18. package/dist/forms/widget/widget-client-form.dto.d.ts +1 -0
  19. package/dist/forms/widget/widget-client-form.dto.js +5 -0
  20. package/dist/log/log-title.enum.d.ts +2 -0
  21. package/dist/log/log-title.enum.js +2 -0
  22. package/dist/openapi/certificates/openapi-certificate-sale.ro.d.ts +3 -1
  23. package/dist/openapi/certificates/openapi-certificate-sale.ro.js +10 -2
  24. package/dist/openapi/certificates/openapi-certificate-template.ro.d.ts +7 -0
  25. package/dist/openapi/certificates/openapi-certificate-template.ro.js +25 -0
  26. package/dist/openapi/orders/openapi-create-preorder.dto.d.ts +6 -1
  27. package/dist/openapi/orders/openapi-create-preorder.dto.js +27 -9
  28. package/dist/openapi/orders/openapi-order.ro.d.ts +2 -0
  29. package/dist/openapi/orders/openapi-order.ro.js +8 -0
  30. package/dist/openapi/orders/openapi-update-order-slot.dto.d.ts +6 -1
  31. package/dist/openapi/orders/openapi-update-order-slot.dto.js +27 -0
  32. package/dist/openapi/shared/openapi-questroom.ro.d.ts +17 -0
  33. package/dist/openapi/shared/openapi-questroom.ro.js +12 -0
  34. package/dist/openapi/slots/openapi-day-slots-with-nearest.ro.d.ts +5 -0
  35. package/dist/openapi/slots/openapi-day-slots-with-nearest.ro.js +41 -0
  36. package/dist/openapi/slots/openapi-slot-details.dto.d.ts +7 -0
  37. package/dist/openapi/slots/openapi-slot-details.dto.js +59 -0
  38. package/dist/openapi/slots/openapi-slot-enriched.ro.d.ts +11 -0
  39. package/dist/openapi/slots/openapi-slot-enriched.ro.js +85 -0
  40. package/dist/openapi/slots/openapi-slot-variation.ro.d.ts +14 -0
  41. package/dist/openapi/slots/openapi-slot-variation.ro.js +108 -0
  42. package/dist/openapi/slots/openapi-week-slots-with-nearest.ro.d.ts +5 -0
  43. package/dist/openapi/slots/openapi-week-slots-with-nearest.ro.js +38 -0
  44. package/dist/openapi/slots/openapi-widget-slot.ro.d.ts +9 -7
  45. package/dist/openapi/slots/openapi-widget-slot.ro.js +18 -29
  46. package/dist/order/create-order.dto.d.ts +7 -1
  47. package/dist/order/create-order.dto.js +35 -0
  48. package/dist/order/order.ro.d.ts +8 -1
  49. package/dist/order/order.ro.js +31 -3
  50. package/dist/order/update-order-slot.dto.d.ts +23 -1
  51. package/dist/order/update-order-slot.dto.js +45 -0
  52. package/dist/order/waivers/order-participants.ro.d.ts +1 -0
  53. package/dist/order/waivers/order-participants.ro.js +4 -0
  54. package/dist/order/waivers/order-to-sign.ro.d.ts +5 -0
  55. package/dist/order/waivers/order-to-sign.ro.js +17 -0
  56. package/dist/order/waivers/sign-order.dto.d.ts +6 -0
  57. package/dist/order/waivers/sign-order.dto.js +39 -1
  58. package/dist/profile/email/profile-email-card.ro.d.ts +1 -0
  59. package/dist/profile/email/profile-email-card.ro.js +4 -0
  60. package/dist/profile/enum/profile-sales-status.enum.d.ts +2 -0
  61. package/dist/profile/enum/profile-sales-status.enum.js +2 -0
  62. package/dist/profile/notification-chanel/create-notification-chanel.dto.js +2 -1
  63. package/dist/profile/notification-chanel/notification-chanel-type.enum.d.ts +3 -1
  64. package/dist/profile/notification-chanel/notification-chanel-type.enum.js +2 -0
  65. package/dist/profile/profile-sms/dto/get-sms-settings.dto.d.ts +4 -0
  66. package/dist/{slot-room-template/slot-room-template.ro.js → profile/profile-sms/dto/get-sms-settings.dto.js} +8 -8
  67. package/dist/profile/profile-sms/dto/query-order-sms-logs.dto.d.ts +5 -0
  68. package/dist/profile/profile-sms/dto/query-order-sms-logs.dto.js +29 -0
  69. package/dist/profile/profile-sms/dto/send-order-client-email.dto.d.ts +4 -0
  70. package/dist/profile/profile-sms/dto/send-order-client-email.dto.js +27 -0
  71. package/dist/profile/profile-sms/dto/send-order-client-sms.dto.d.ts +3 -0
  72. package/dist/profile/profile-sms/dto/send-order-client-sms.dto.js +22 -0
  73. package/dist/profile/profile-sms/dto/update-sms-settings.dto.d.ts +6 -0
  74. package/dist/{slot-room-template/update-slot-room-template.dto.js → profile/profile-sms/dto/update-sms-settings.dto.js} +11 -16
  75. package/dist/profile/profile-sms/profile-sms-recipient-type.enum.d.ts +4 -0
  76. package/dist/profile/profile-sms/profile-sms-recipient-type.enum.js +8 -0
  77. package/dist/profile/profile-sms/ro/profile-sms-log.ro.d.ts +10 -0
  78. package/dist/{slot-room-template/slot-room-template-element.js → profile/profile-sms/ro/profile-sms-log.ro.js} +14 -16
  79. package/dist/profile/profile-sms/ro/send-order-client-email.ro.d.ts +3 -0
  80. package/dist/profile/profile-sms/ro/send-order-client-email.ro.js +20 -0
  81. package/dist/profile/profile-sms/ro/sms-settings.ro.d.ts +7 -0
  82. package/dist/profile/profile-sms/ro/sms-settings.ro.js +33 -0
  83. package/dist/profile/profile-sms/sms-provider.enum.d.ts +4 -0
  84. package/dist/profile/profile-sms/sms-provider.enum.js +8 -0
  85. package/dist/profile/profile.ro.d.ts +1 -0
  86. package/dist/profile/profile.ro.js +4 -0
  87. package/dist/profile/update-current.dto.d.ts +1 -0
  88. package/dist/profile/update-current.dto.js +7 -0
  89. package/dist/profile/waiver/profile-waiver.ro.d.ts +5 -0
  90. package/dist/profile/waiver/profile-waiver.ro.js +16 -0
  91. package/dist/profile/waiver/update-waiver.dto.d.ts +4 -0
  92. package/dist/profile/waiver/update-waiver.dto.js +21 -0
  93. package/dist/profile/widget-customization/update-widget-customization.dto.js +0 -1
  94. package/dist/questroom/create-questroom.dto.d.ts +3 -0
  95. package/dist/questroom/create-questroom.dto.js +18 -0
  96. package/dist/questroom/questroom.ro.d.ts +10 -0
  97. package/dist/questroom/questroom.ro.js +16 -0
  98. package/dist/slot/change-template-slots-form.dto.d.ts +1 -0
  99. package/dist/slot/change-template-slots-form.dto.js +6 -0
  100. package/dist/slot/slot-autocomplite-form.dto.d.ts +1 -0
  101. package/dist/slot/slot-autocomplite-form.dto.js +6 -0
  102. package/dist/slot/slot-details.dto.d.ts +8 -0
  103. package/dist/slot/slot-details.dto.js +42 -0
  104. package/dist/slot/slot.ro.d.ts +29 -28
  105. package/dist/slot/update-slot.dto.d.ts +2 -0
  106. package/dist/slot/update-slot.dto.js +12 -0
  107. package/dist/slot-template/slot-template-element.d.ts +1 -0
  108. package/dist/slot-template/slot-template-element.js +4 -0
  109. package/dist/slot-template/slot-template-flex-rule.d.ts +9 -0
  110. package/dist/slot-template/slot-template-flex-rule.js +57 -0
  111. package/dist/slot-template/slot-template-history.ro.d.ts +2 -0
  112. package/dist/slot-template/slot-template-history.ro.js +4 -0
  113. package/dist/slot-template/slot-template-type.d.ts +1 -0
  114. package/dist/slot-template/slot-template-type.js +2 -0
  115. package/dist/slot-template/slot-template.ro.d.ts +6 -0
  116. package/dist/slot-template/slot-template.ro.js +19 -0
  117. package/dist/slot-template/update-slot-template.dto.d.ts +6 -0
  118. package/dist/slot-template/update-slot-template.dto.js +30 -0
  119. package/dist/tariff/create-tariff.dto.d.ts +3 -0
  120. package/dist/tariff/create-tariff.dto.js +18 -0
  121. package/dist/tariff/tariff.ro.d.ts +3 -0
  122. package/dist/tariff/tariff.ro.js +12 -0
  123. package/dist/tsconfig.build.tsbuildinfo +1 -1
  124. package/dist/user/current/update-current-user-notifications.dto.d.ts +1 -0
  125. package/dist/user/current/update-current-user-notifications.dto.js +5 -0
  126. package/package.json +2 -2
  127. package/dist/room/dto.d.ts +0 -26
  128. package/dist/room/dto.js +0 -130
  129. package/dist/room/ro.d.ts +0 -28
  130. package/dist/room/ro.js +0 -113
  131. package/dist/slot-room-template/slot-room-template-element.d.ts +0 -9
  132. package/dist/slot-room-template/slot-room-template.ro.d.ts +0 -5
  133. package/dist/slot-room-template/update-slot-room-template.dto.d.ts +0 -8
@@ -21,8 +21,35 @@ __decorate([
21
21
  __metadata("design:type", String)
22
22
  ], OpenapiUpdateOrderSlotDto.prototype, "orderToken", void 0);
23
23
  __decorate([
24
+ (0, class_validator_1.IsOptional)(),
24
25
  (0, class_validator_1.IsNumber)(),
25
26
  (0, class_transformer_1.Expose)(),
26
27
  __metadata("design:type", Number)
27
28
  ], OpenapiUpdateOrderSlotDto.prototype, "slotId", void 0);
29
+ __decorate([
30
+ (0, class_validator_1.IsNumber)(),
31
+ (0, class_transformer_1.Expose)(),
32
+ __metadata("design:type", Number)
33
+ ], OpenapiUpdateOrderSlotDto.prototype, "questroomId", void 0);
34
+ __decorate([
35
+ (0, is_not_blank_1.IsNotBlank)(),
36
+ (0, class_transformer_1.Expose)(),
37
+ __metadata("design:type", String)
38
+ ], OpenapiUpdateOrderSlotDto.prototype, "date", void 0);
39
+ __decorate([
40
+ (0, is_not_blank_1.IsNotBlank)(),
41
+ (0, class_transformer_1.Expose)(),
42
+ __metadata("design:type", String)
43
+ ], OpenapiUpdateOrderSlotDto.prototype, "start", void 0);
44
+ __decorate([
45
+ (0, class_validator_1.IsNumber)(),
46
+ (0, class_transformer_1.Expose)(),
47
+ __metadata("design:type", Number)
48
+ ], OpenapiUpdateOrderSlotDto.prototype, "tariffId", void 0);
49
+ __decorate([
50
+ (0, class_validator_1.IsOptional)(),
51
+ (0, class_validator_1.IsNumber)(),
52
+ (0, class_transformer_1.Expose)(),
53
+ __metadata("design:type", Number)
54
+ ], OpenapiUpdateOrderSlotDto.prototype, "duration", void 0);
28
55
  exports.OpenapiUpdateOrderSlotDto = OpenapiUpdateOrderSlotDto;
@@ -1,6 +1,7 @@
1
1
  import { QuestroomConfirmTypeEnum } from '../../questroom/enum/questroom-confirm-type.enum';
2
2
  import { QuestroomTypeEnum } from '../../questroom/enum/questroom-type.enum';
3
3
  import { Languages } from '../../shared/enum/languages.enum';
4
+ import { SlotTemplateType } from '../../slot-template/slot-template-type';
4
5
  export declare const transformQuestroom: ({ value, language, }: {
5
6
  value: OpenapiQuestroomRO;
6
7
  language: any;
@@ -20,6 +21,13 @@ export declare const transformQuestroom: ({ value, language, }: {
20
21
  difficult: number;
21
22
  photo: string;
22
23
  time: number;
24
+ ticketSystem: boolean;
25
+ /**
26
+ * Type of the linked SlotTemplate (`fixed` or `flex`). Denormalized from
27
+ * `SlotTemplate.type` so widgets can branch on the schedule kind without
28
+ * an extra fetch.
29
+ */
30
+ templateType?: SlotTemplateType;
23
31
  type: QuestroomTypeEnum;
24
32
  confirmType: QuestroomConfirmTypeEnum;
25
33
  playersMax: number;
@@ -34,6 +42,7 @@ export declare const transformQuestroom: ({ value, language, }: {
34
42
  modes: Mode[];
35
43
  minAge: number;
36
44
  flexPlayersSelect: boolean;
45
+ slotStepMinutes: number;
37
46
  };
38
47
  declare class QuestroomLocale {
39
48
  title: string;
@@ -66,6 +75,13 @@ export declare class OpenapiQuestroomRO {
66
75
  difficult: number;
67
76
  photo: string;
68
77
  time: number;
78
+ ticketSystem: boolean;
79
+ /**
80
+ * Type of the linked SlotTemplate (`fixed` or `flex`). Denormalized from
81
+ * `SlotTemplate.type` so widgets can branch on the schedule kind without
82
+ * an extra fetch.
83
+ */
84
+ templateType?: SlotTemplateType;
69
85
  type: QuestroomTypeEnum;
70
86
  confirmType: QuestroomConfirmTypeEnum;
71
87
  playersMax: number;
@@ -83,6 +99,7 @@ export declare class OpenapiQuestroomRO {
83
99
  location: Location;
84
100
  locales: QuestroomLocale[];
85
101
  flexPlayersSelect: boolean;
102
+ slotStepMinutes: number;
86
103
  }
87
104
  export declare class QuestroomRow {
88
105
  questroom: OpenapiQuestroomRO;
@@ -134,6 +134,14 @@ __decorate([
134
134
  (0, class_transformer_1.Expose)(),
135
135
  __metadata("design:type", Number)
136
136
  ], OpenapiQuestroomRO.prototype, "time", void 0);
137
+ __decorate([
138
+ (0, class_transformer_1.Expose)(),
139
+ __metadata("design:type", Boolean)
140
+ ], OpenapiQuestroomRO.prototype, "ticketSystem", void 0);
141
+ __decorate([
142
+ (0, class_transformer_1.Expose)(),
143
+ __metadata("design:type", String)
144
+ ], OpenapiQuestroomRO.prototype, "templateType", void 0);
137
145
  __decorate([
138
146
  (0, class_transformer_1.Expose)(),
139
147
  __metadata("design:type", String)
@@ -205,6 +213,10 @@ __decorate([
205
213
  (0, class_transformer_1.Expose)(),
206
214
  __metadata("design:type", Boolean)
207
215
  ], OpenapiQuestroomRO.prototype, "flexPlayersSelect", void 0);
216
+ __decorate([
217
+ (0, class_transformer_1.Expose)(),
218
+ __metadata("design:type", Number)
219
+ ], OpenapiQuestroomRO.prototype, "slotStepMinutes", void 0);
208
220
  exports.OpenapiQuestroomRO = OpenapiQuestroomRO;
209
221
  class QuestroomRow {
210
222
  }
@@ -0,0 +1,5 @@
1
+ import { OpenapiSlotRO } from './openapi-widget-slot.ro';
2
+ export declare class OpenapiDaySlotsWithNearestRO {
3
+ slots: OpenapiSlotRO[];
4
+ nextFreeDateByQuestroomId: Record<number, string | null>;
5
+ }
@@ -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.OpenapiDaySlotsWithNearestRO = void 0;
13
+ /* eslint-disable @typescript-eslint/no-unused-vars */
14
+ const swagger_1 = require("@nestjs/swagger");
15
+ const class_transformer_1 = require("class-transformer");
16
+ const openapi_widget_slot_ro_1 = require("./openapi-widget-slot.ro");
17
+ class OpenapiDaySlotsWithNearestRO {
18
+ }
19
+ __decorate([
20
+ (0, swagger_1.ApiProperty)({
21
+ description: 'Slots for requested day',
22
+ type: openapi_widget_slot_ro_1.OpenapiSlotRO,
23
+ isArray: true,
24
+ }),
25
+ (0, class_transformer_1.Expose)(),
26
+ (0, class_transformer_1.Type)(() => openapi_widget_slot_ro_1.OpenapiSlotRO),
27
+ __metadata("design:type", Array)
28
+ ], OpenapiDaySlotsWithNearestRO.prototype, "slots", void 0);
29
+ __decorate([
30
+ (0, swagger_1.ApiProperty)({
31
+ description: 'Nearest available date map by questroomId (yyyy-MM-dd)',
32
+ example: { 10: '2026-05-01', 11: null },
33
+ additionalProperties: {
34
+ type: 'string',
35
+ nullable: true,
36
+ },
37
+ }),
38
+ (0, class_transformer_1.Expose)(),
39
+ __metadata("design:type", Object)
40
+ ], OpenapiDaySlotsWithNearestRO.prototype, "nextFreeDateByQuestroomId", void 0);
41
+ exports.OpenapiDaySlotsWithNearestRO = OpenapiDaySlotsWithNearestRO;
@@ -0,0 +1,7 @@
1
+ export declare class OpenapiSlotDetailsDto {
2
+ slotId?: number;
3
+ questroomId: number;
4
+ date: string;
5
+ start: string;
6
+ orderId?: number;
7
+ }
@@ -0,0 +1,59 @@
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.OpenapiSlotDetailsDto = void 0;
13
+ const swagger_1 = require("@nestjs/swagger");
14
+ const is_not_blank_1 = require("../../shared/is-not-blank");
15
+ class OpenapiSlotDetailsDto {
16
+ }
17
+ __decorate([
18
+ (0, swagger_1.ApiProperty)({
19
+ description: 'Persisted slot identifier for fix slots. For flex slots this can be omitted '
20
+ + 'or set to 0; the endpoint matches by `(questroomId, date, start)`.',
21
+ required: false,
22
+ example: 12345,
23
+ }),
24
+ __metadata("design:type", Number)
25
+ ], OpenapiSlotDetailsDto.prototype, "slotId", void 0);
26
+ __decorate([
27
+ (0, swagger_1.ApiProperty)({
28
+ description: 'Quest room identifier of the slot',
29
+ example: 123,
30
+ }),
31
+ (0, is_not_blank_1.IsNotBlank)(),
32
+ __metadata("design:type", Number)
33
+ ], OpenapiSlotDetailsDto.prototype, "questroomId", void 0);
34
+ __decorate([
35
+ (0, swagger_1.ApiProperty)({
36
+ description: 'Game date in yyyy-MM-dd format',
37
+ example: '2026-05-30',
38
+ }),
39
+ (0, is_not_blank_1.IsNotBlank)(),
40
+ __metadata("design:type", String)
41
+ ], OpenapiSlotDetailsDto.prototype, "date", void 0);
42
+ __decorate([
43
+ (0, swagger_1.ApiProperty)({
44
+ description: 'Slot start time (HH:mm)',
45
+ example: '18:30',
46
+ }),
47
+ (0, is_not_blank_1.IsNotBlank)(),
48
+ __metadata("design:type", String)
49
+ ], OpenapiSlotDetailsDto.prototype, "start", void 0);
50
+ __decorate([
51
+ (0, swagger_1.ApiProperty)({
52
+ description: 'When set, the order with this id is excluded from occupancy checks. '
53
+ + 'Use in edit-order flows so the current booking is not counted as a conflict.',
54
+ required: false,
55
+ example: 9876,
56
+ }),
57
+ __metadata("design:type", Number)
58
+ ], OpenapiSlotDetailsDto.prototype, "orderId", void 0);
59
+ exports.OpenapiSlotDetailsDto = OpenapiSlotDetailsDto;
@@ -0,0 +1,11 @@
1
+ import { OpenapiSlotVariationRO } from './openapi-slot-variation.ro';
2
+ export declare class OpenapiSlotEnrichedRO {
3
+ questroomId: number;
4
+ date: string;
5
+ start: string;
6
+ slotId?: number;
7
+ isFlex: boolean;
8
+ variations: OpenapiSlotVariationRO[];
9
+ numSeatsAvailable: number;
10
+ minPlayers: number;
11
+ }
@@ -0,0 +1,85 @@
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.OpenapiSlotEnrichedRO = void 0;
13
+ const swagger_1 = require("@nestjs/swagger");
14
+ const class_transformer_1 = require("class-transformer");
15
+ const openapi_slot_variation_ro_1 = require("./openapi-slot-variation.ro");
16
+ class OpenapiSlotEnrichedRO {
17
+ }
18
+ __decorate([
19
+ (0, swagger_1.ApiProperty)({
20
+ description: 'Quest room identifier of the slot',
21
+ example: 123,
22
+ }),
23
+ (0, class_transformer_1.Expose)(),
24
+ __metadata("design:type", Number)
25
+ ], OpenapiSlotEnrichedRO.prototype, "questroomId", void 0);
26
+ __decorate([
27
+ (0, swagger_1.ApiProperty)({
28
+ description: 'Game date in yyyy-MM-dd format',
29
+ example: '2026-05-30',
30
+ }),
31
+ (0, class_transformer_1.Expose)(),
32
+ __metadata("design:type", String)
33
+ ], OpenapiSlotEnrichedRO.prototype, "date", void 0);
34
+ __decorate([
35
+ (0, swagger_1.ApiProperty)({
36
+ description: 'Slot start time (HH:mm)',
37
+ example: '18:30',
38
+ }),
39
+ (0, class_transformer_1.Expose)(),
40
+ __metadata("design:type", String)
41
+ ], OpenapiSlotEnrichedRO.prototype, "start", void 0);
42
+ __decorate([
43
+ (0, swagger_1.ApiProperty)({
44
+ description: 'Persisted parent slot id. Present for fix slots; omitted for flex slots (booking is resolved by coordinates).',
45
+ required: false,
46
+ example: 12345,
47
+ }),
48
+ (0, class_transformer_1.Expose)(),
49
+ __metadata("design:type", Number)
50
+ ], OpenapiSlotEnrichedRO.prototype, "slotId", void 0);
51
+ __decorate([
52
+ (0, swagger_1.ApiProperty)({
53
+ description: 'True when the slot comes from a flex template',
54
+ example: false,
55
+ }),
56
+ (0, class_transformer_1.Expose)(),
57
+ __metadata("design:type", Boolean)
58
+ ], OpenapiSlotEnrichedRO.prototype, "isFlex", void 0);
59
+ __decorate([
60
+ (0, swagger_1.ApiProperty)({
61
+ description: 'Bookable variations for this slot. Always contains at least one entry (the default tariff for fix slots, or the primary duration option for flex slots).',
62
+ type: openapi_slot_variation_ro_1.OpenapiSlotVariationRO,
63
+ isArray: true,
64
+ }),
65
+ (0, class_transformer_1.Expose)(),
66
+ (0, class_transformer_1.Type)(() => openapi_slot_variation_ro_1.OpenapiSlotVariationRO),
67
+ __metadata("design:type", Array)
68
+ ], OpenapiSlotEnrichedRO.prototype, "variations", void 0);
69
+ __decorate([
70
+ (0, swagger_1.ApiProperty)({
71
+ description: 'Slot-level number of available seats. Equivalent to the maximum `numSeatsAvailable` across `variations`.',
72
+ example: 6,
73
+ }),
74
+ (0, class_transformer_1.Expose)(),
75
+ __metadata("design:type", Number)
76
+ ], OpenapiSlotEnrichedRO.prototype, "numSeatsAvailable", void 0);
77
+ __decorate([
78
+ (0, swagger_1.ApiProperty)({
79
+ description: 'Minimum number of players that can book this slot',
80
+ example: 2,
81
+ }),
82
+ (0, class_transformer_1.Expose)(),
83
+ __metadata("design:type", Number)
84
+ ], OpenapiSlotEnrichedRO.prototype, "minPlayers", void 0);
85
+ exports.OpenapiSlotEnrichedRO = OpenapiSlotEnrichedRO;
@@ -0,0 +1,14 @@
1
+ import { OpenapiTariffRO } from '../shared/openapi-tariff.ro';
2
+ export declare class OpenapiSlotVariationRO {
3
+ id: string;
4
+ tariffId: number;
5
+ duration: number;
6
+ title: string;
7
+ description?: string;
8
+ isDefault: boolean;
9
+ isFree: boolean;
10
+ tariff: OpenapiTariffRO;
11
+ minPlayers: number;
12
+ maxPlayers: number;
13
+ numSeatsAvailable: number;
14
+ }
@@ -0,0 +1,108 @@
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.OpenapiSlotVariationRO = void 0;
13
+ const swagger_1 = require("@nestjs/swagger");
14
+ const class_transformer_1 = require("class-transformer");
15
+ const openapi_tariff_ro_1 = require("../shared/openapi-tariff.ro");
16
+ class OpenapiSlotVariationRO {
17
+ }
18
+ __decorate([
19
+ (0, swagger_1.ApiProperty)({
20
+ description: 'Stable picker key. Composed as `${tariffId}-${duration}` so that flex slots which share a tariff across different durations still get unique options.',
21
+ example: '101-90',
22
+ }),
23
+ (0, class_transformer_1.Expose)(),
24
+ __metadata("design:type", String)
25
+ ], OpenapiSlotVariationRO.prototype, "id", void 0);
26
+ __decorate([
27
+ (0, swagger_1.ApiProperty)({
28
+ description: 'Tariff identifier of the variation. Used as the booking `tariffId`.',
29
+ example: 101,
30
+ }),
31
+ (0, class_transformer_1.Expose)(),
32
+ __metadata("design:type", Number)
33
+ ], OpenapiSlotVariationRO.prototype, "tariffId", void 0);
34
+ __decorate([
35
+ (0, swagger_1.ApiProperty)({
36
+ description: 'Game duration in minutes. For fix slots equals `questroom.time`; for flex slots equals the chosen duration option.',
37
+ example: 90,
38
+ }),
39
+ (0, class_transformer_1.Expose)(),
40
+ __metadata("design:type", Number)
41
+ ], OpenapiSlotVariationRO.prototype, "duration", void 0);
42
+ __decorate([
43
+ (0, swagger_1.ApiProperty)({
44
+ description: 'Variation title shown to the client',
45
+ example: 'День рождения',
46
+ }),
47
+ (0, class_transformer_1.Expose)(),
48
+ __metadata("design:type", String)
49
+ ], OpenapiSlotVariationRO.prototype, "title", void 0);
50
+ __decorate([
51
+ (0, swagger_1.ApiProperty)({
52
+ description: 'Optional client-facing description of the variation',
53
+ required: false,
54
+ example: 'Праздничная программа на день рождения',
55
+ }),
56
+ (0, class_transformer_1.Expose)(),
57
+ __metadata("design:type", String)
58
+ ], OpenapiSlotVariationRO.prototype, "description", void 0);
59
+ __decorate([
60
+ (0, swagger_1.ApiProperty)({
61
+ description: 'True for the slot default tariff (fix) or for the primary duration option (flex)',
62
+ example: true,
63
+ }),
64
+ (0, class_transformer_1.Expose)(),
65
+ __metadata("design:type", Boolean)
66
+ ], OpenapiSlotVariationRO.prototype, "isDefault", void 0);
67
+ __decorate([
68
+ (0, swagger_1.ApiProperty)({
69
+ description: 'Whether this variation is currently bookable',
70
+ example: true,
71
+ }),
72
+ (0, class_transformer_1.Expose)(),
73
+ __metadata("design:type", Boolean)
74
+ ], OpenapiSlotVariationRO.prototype, "isFree", void 0);
75
+ __decorate([
76
+ (0, swagger_1.ApiProperty)({
77
+ description: 'Tariff price map for this variation',
78
+ type: openapi_tariff_ro_1.OpenapiTariffRO,
79
+ }),
80
+ (0, class_transformer_1.Expose)(),
81
+ (0, class_transformer_1.Type)(() => openapi_tariff_ro_1.OpenapiTariffRO),
82
+ __metadata("design:type", openapi_tariff_ro_1.OpenapiTariffRO)
83
+ ], OpenapiSlotVariationRO.prototype, "tariff", void 0);
84
+ __decorate([
85
+ (0, swagger_1.ApiProperty)({
86
+ description: 'Minimum number of players that can book this variation',
87
+ example: 2,
88
+ }),
89
+ (0, class_transformer_1.Expose)(),
90
+ __metadata("design:type", Number)
91
+ ], OpenapiSlotVariationRO.prototype, "minPlayers", void 0);
92
+ __decorate([
93
+ (0, swagger_1.ApiProperty)({
94
+ description: 'Maximum number of players that can book this variation',
95
+ example: 6,
96
+ }),
97
+ (0, class_transformer_1.Expose)(),
98
+ __metadata("design:type", Number)
99
+ ], OpenapiSlotVariationRO.prototype, "maxPlayers", void 0);
100
+ __decorate([
101
+ (0, swagger_1.ApiProperty)({
102
+ description: 'Number of seats still available for this variation. For fix non-ticket slots equals `questroom.playersMax` (private booking). For ticket slots and flex slots equals the actual remaining capacity.',
103
+ example: 6,
104
+ }),
105
+ (0, class_transformer_1.Expose)(),
106
+ __metadata("design:type", Number)
107
+ ], OpenapiSlotVariationRO.prototype, "numSeatsAvailable", void 0);
108
+ exports.OpenapiSlotVariationRO = OpenapiSlotVariationRO;
@@ -0,0 +1,5 @@
1
+ import { OpenapiSlotRO } from './openapi-widget-slot.ro';
2
+ export declare class OpenapiWeekSlotsWithNearestRO {
3
+ slots: OpenapiSlotRO[];
4
+ nextFreeDate: string | null;
5
+ }
@@ -0,0 +1,38 @@
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.OpenapiWeekSlotsWithNearestRO = void 0;
13
+ /* eslint-disable @typescript-eslint/no-unused-vars */
14
+ const swagger_1 = require("@nestjs/swagger");
15
+ const class_transformer_1 = require("class-transformer");
16
+ const openapi_widget_slot_ro_1 = require("./openapi-widget-slot.ro");
17
+ class OpenapiWeekSlotsWithNearestRO {
18
+ }
19
+ __decorate([
20
+ (0, swagger_1.ApiProperty)({
21
+ description: 'Slots for requested week',
22
+ type: openapi_widget_slot_ro_1.OpenapiSlotRO,
23
+ isArray: true,
24
+ }),
25
+ (0, class_transformer_1.Expose)(),
26
+ (0, class_transformer_1.Type)(() => openapi_widget_slot_ro_1.OpenapiSlotRO),
27
+ __metadata("design:type", Array)
28
+ ], OpenapiWeekSlotsWithNearestRO.prototype, "slots", void 0);
29
+ __decorate([
30
+ (0, swagger_1.ApiProperty)({
31
+ description: 'Nearest available date for selected questroom (yyyy-MM-dd)',
32
+ nullable: true,
33
+ example: '2026-05-01',
34
+ }),
35
+ (0, class_transformer_1.Expose)(),
36
+ __metadata("design:type", String)
37
+ ], OpenapiWeekSlotsWithNearestRO.prototype, "nextFreeDate", void 0);
38
+ exports.OpenapiWeekSlotsWithNearestRO = OpenapiWeekSlotsWithNearestRO;
@@ -8,13 +8,15 @@ export declare class OpenapiSlotRO {
8
8
  productId: string | null;
9
9
  eventId: string;
10
10
  start: string;
11
- end: string;
11
+ tariffId?: number;
12
+ ruleId?: number;
12
13
  date: string;
13
- numSeatsAvailable: number;
14
- discount: number;
15
- onlyPhone: boolean;
16
- tariff: OpenapiTariffRO;
17
- status: 'bussy' | 'call' | 'free' | 'hold' | 'selected' | 'done' | 'no-resources';
18
- rule: OpenapiBokingRuleRO;
14
+ end?: string;
15
+ numSeatsAvailable?: number;
16
+ discount?: number;
17
+ onlyPhone?: boolean;
18
+ tariff?: OpenapiTariffRO;
19
+ status?: 'bussy' | 'call' | 'free' | 'hold' | 'selected' | 'done' | 'no-resources';
20
+ rule?: OpenapiBokingRuleRO;
19
21
  privateEvent?: boolean;
20
22
  }
@@ -80,12 +80,22 @@ __decorate([
80
80
  ], OpenapiSlotRO.prototype, "start", void 0);
81
81
  __decorate([
82
82
  (0, swagger_1.ApiProperty)({
83
- description: 'Slot end time (HH:mm)',
84
- example: '20:00',
83
+ description: 'Default tariff identifier for this slot',
84
+ required: false,
85
+ example: 101,
85
86
  }),
86
87
  (0, class_transformer_1.Expose)(),
87
- __metadata("design:type", String)
88
- ], OpenapiSlotRO.prototype, "end", void 0);
88
+ __metadata("design:type", Number)
89
+ ], OpenapiSlotRO.prototype, "tariffId", void 0);
90
+ __decorate([
91
+ (0, swagger_1.ApiProperty)({
92
+ description: 'Default booking rule identifier for this slot',
93
+ required: false,
94
+ example: 55,
95
+ }),
96
+ (0, class_transformer_1.Expose)(),
97
+ __metadata("design:type", Number)
98
+ ], OpenapiSlotRO.prototype, "ruleId", void 0);
89
99
  __decorate([
90
100
  (0, swagger_1.ApiProperty)({
91
101
  description: 'Game date in yyyy-MM-dd format',
@@ -95,51 +105,30 @@ __decorate([
95
105
  __metadata("design:type", String)
96
106
  ], OpenapiSlotRO.prototype, "date", void 0);
97
107
  __decorate([
98
- (0, swagger_1.ApiProperty)({
99
- description: 'Number of available seats',
100
- example: 4,
101
- }),
108
+ (0, class_transformer_1.Expose)(),
109
+ __metadata("design:type", String)
110
+ ], OpenapiSlotRO.prototype, "end", void 0);
111
+ __decorate([
102
112
  (0, class_transformer_1.Expose)(),
103
113
  __metadata("design:type", Number)
104
114
  ], OpenapiSlotRO.prototype, "numSeatsAvailable", void 0);
105
115
  __decorate([
106
- (0, swagger_1.ApiProperty)({
107
- description: 'Discount value in source pricing model',
108
- example: 0,
109
- }),
110
116
  (0, class_transformer_1.Expose)(),
111
117
  __metadata("design:type", Number)
112
118
  ], OpenapiSlotRO.prototype, "discount", void 0);
113
119
  __decorate([
114
- (0, swagger_1.ApiProperty)({
115
- description: 'Booking can be completed only via phone',
116
- example: false,
117
- }),
118
120
  (0, class_transformer_1.Expose)(),
119
121
  __metadata("design:type", Boolean)
120
122
  ], OpenapiSlotRO.prototype, "onlyPhone", void 0);
121
123
  __decorate([
122
- (0, swagger_1.ApiProperty)({
123
- description: 'Slot tariff information',
124
- type: openapi_tariff_ro_1.OpenapiTariffRO,
125
- }),
126
124
  (0, class_transformer_1.Expose)(),
127
125
  __metadata("design:type", openapi_tariff_ro_1.OpenapiTariffRO)
128
126
  ], OpenapiSlotRO.prototype, "tariff", void 0);
129
127
  __decorate([
130
- (0, swagger_1.ApiProperty)({
131
- description: 'Current slot availability status',
132
- enum: ['bussy', 'call', 'free', 'hold'],
133
- example: 'free',
134
- }),
135
128
  (0, class_transformer_1.Expose)(),
136
129
  __metadata("design:type", String)
137
130
  ], OpenapiSlotRO.prototype, "status", void 0);
138
131
  __decorate([
139
- (0, swagger_1.ApiProperty)({
140
- description: 'Booking and cancellation rules for this slot',
141
- type: openapi_booking_rule_ro_1.OpenapiBokingRuleRO,
142
- }),
143
132
  (0, class_transformer_1.Expose)(),
144
133
  (0, class_transformer_1.Type)(() => openapi_booking_rule_ro_1.OpenapiBokingRuleRO),
145
134
  __metadata("design:type", openapi_booking_rule_ro_1.OpenapiBokingRuleRO)
@@ -1,6 +1,11 @@
1
1
  import { Languages } from '../shared/enum/languages.enum';
2
2
  export declare class CreateOrderDto {
3
- slotId: number;
3
+ slotId?: number;
4
+ questroomId: number;
5
+ date: string;
6
+ start: string;
7
+ tariffId: number;
8
+ duration?: number;
4
9
  players: number;
5
10
  children: number;
6
11
  mode: string;
@@ -19,4 +24,5 @@ export declare class CreateOrderDto {
19
24
  clientId: number;
20
25
  language?: Languages;
21
26
  comment?: string;
27
+ variationHint?: string;
22
28
  }