@escapenavigator/types 2.0.8 → 2.0.10

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 (41) hide show
  1. package/dist/agregator/agregator-questroom-card.ro.d.ts +6 -0
  2. package/dist/agregator/agregator-questroom-card.ro.js +4 -0
  3. package/dist/agregator/agregator-questrooms-and-cities.ro.d.ts +8 -0
  4. package/dist/agregator/agregator-questrooms-and-cities.ro.js +4 -0
  5. package/dist/city-quest/bind-city-quest.dto.d.ts +4 -0
  6. package/dist/city-quest/bind-city-quest.dto.js +22 -0
  7. package/dist/city-quest/city-quest-content.d.ts +159 -0
  8. package/dist/city-quest/city-quest-content.js +2 -0
  9. package/dist/city-quest/city-quest.ro.d.ts +29 -0
  10. package/dist/city-quest/city-quest.ro.js +89 -0
  11. package/dist/city-quest/enum/city-quest-play-phase.enum.d.ts +6 -0
  12. package/dist/city-quest/enum/city-quest-play-phase.enum.js +10 -0
  13. package/dist/city-quest/enum/city-quest-session-event-type.enum.d.ts +18 -0
  14. package/dist/city-quest/enum/city-quest-session-event-type.enum.js +22 -0
  15. package/dist/city-quest/enum/city-quest-session-status.enum.d.ts +5 -0
  16. package/dist/city-quest/enum/city-quest-session-status.enum.js +9 -0
  17. package/dist/city-quest/enum/city-quest-status.enum.d.ts +7 -0
  18. package/dist/city-quest/enum/city-quest-status.enum.js +11 -0
  19. package/dist/city-quest/import-city-quest.dto.d.ts +6 -0
  20. package/dist/city-quest/import-city-quest.dto.js +28 -0
  21. package/dist/city-quest/update-city-quest.dto.d.ts +5 -0
  22. package/dist/city-quest/update-city-quest.dto.js +30 -0
  23. package/dist/city-quest/upsert-city-quest-asset.dto.d.ts +11 -0
  24. package/dist/city-quest/upsert-city-quest-asset.dto.js +40 -0
  25. package/dist/openapi/city-quest/play-answer.dto.d.ts +5 -0
  26. package/dist/openapi/city-quest/play-answer.dto.js +30 -0
  27. package/dist/openapi/city-quest/play-finale-choice.dto.d.ts +3 -0
  28. package/dist/openapi/city-quest/play-finale-choice.dto.js +23 -0
  29. package/dist/openapi/city-quest/play-hint.dto.d.ts +3 -0
  30. package/dist/openapi/city-quest/play-hint.dto.js +22 -0
  31. package/dist/openapi/city-quest/play-issue.dto.d.ts +3 -0
  32. package/dist/openapi/city-quest/play-issue.dto.js +23 -0
  33. package/dist/openapi/city-quest/play-start-session.dto.d.ts +8 -0
  34. package/dist/openapi/city-quest/play-start-session.dto.js +41 -0
  35. package/dist/openapi/city-quest/play-state.ro.d.ts +156 -0
  36. package/dist/openapi/city-quest/play-state.ro.js +2 -0
  37. package/dist/order/waivers/sign-order.dto.js +1 -1
  38. package/dist/questroom/questroom-admin.ro.d.ts +2 -0
  39. package/dist/questroom/questroom-admin.ro.js +4 -0
  40. package/dist/tsconfig.build.tsbuildinfo +1 -1
  41. package/package.json +2 -2
@@ -0,0 +1,23 @@
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.PlayFinaleChoiceDto = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ class PlayFinaleChoiceDto {
16
+ }
17
+ exports.PlayFinaleChoiceDto = PlayFinaleChoiceDto;
18
+ __decorate([
19
+ (0, class_validator_1.IsString)(),
20
+ (0, class_validator_1.MaxLength)(40),
21
+ (0, class_transformer_1.Expose)(),
22
+ __metadata("design:type", String)
23
+ ], PlayFinaleChoiceDto.prototype, "choiceId", void 0);
@@ -0,0 +1,3 @@
1
+ export declare class PlayHintDto {
2
+ level: 1 | 2 | 3;
3
+ }
@@ -0,0 +1,22 @@
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.PlayHintDto = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ class PlayHintDto {
16
+ }
17
+ exports.PlayHintDto = PlayHintDto;
18
+ __decorate([
19
+ (0, class_validator_1.IsIn)([1, 2, 3]),
20
+ (0, class_transformer_1.Expose)(),
21
+ __metadata("design:type", Number)
22
+ ], PlayHintDto.prototype, "level", void 0);
@@ -0,0 +1,3 @@
1
+ export declare class PlayIssueDto {
2
+ text: string;
3
+ }
@@ -0,0 +1,23 @@
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.PlayIssueDto = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ class PlayIssueDto {
16
+ }
17
+ exports.PlayIssueDto = PlayIssueDto;
18
+ __decorate([
19
+ (0, class_validator_1.IsString)(),
20
+ (0, class_validator_1.MaxLength)(1000),
21
+ (0, class_transformer_1.Expose)(),
22
+ __metadata("design:type", String)
23
+ ], PlayIssueDto.prototype, "text", void 0);
@@ -0,0 +1,8 @@
1
+ import { Languages } from '../../shared/enum/languages.enum';
2
+ export declare class PlayStartSessionDto {
3
+ /** Access-токен из ссылки в письме (play.../g/:token). */
4
+ accessToken: string;
5
+ teamName: string;
6
+ language?: Languages;
7
+ raceMode?: boolean;
8
+ }
@@ -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.PlayStartSessionDto = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ const languages_enum_1 = require("../../shared/enum/languages.enum");
16
+ class PlayStartSessionDto {
17
+ }
18
+ exports.PlayStartSessionDto = PlayStartSessionDto;
19
+ __decorate([
20
+ (0, class_validator_1.IsString)(),
21
+ (0, class_transformer_1.Expose)(),
22
+ __metadata("design:type", String)
23
+ ], PlayStartSessionDto.prototype, "accessToken", void 0);
24
+ __decorate([
25
+ (0, class_validator_1.IsString)(),
26
+ (0, class_validator_1.MaxLength)(60),
27
+ (0, class_transformer_1.Expose)(),
28
+ __metadata("design:type", String)
29
+ ], PlayStartSessionDto.prototype, "teamName", void 0);
30
+ __decorate([
31
+ (0, class_validator_1.IsOptional)(),
32
+ (0, class_validator_1.IsEnum)(languages_enum_1.Languages),
33
+ (0, class_transformer_1.Expose)(),
34
+ __metadata("design:type", String)
35
+ ], PlayStartSessionDto.prototype, "language", void 0);
36
+ __decorate([
37
+ (0, class_validator_1.IsOptional)(),
38
+ (0, class_validator_1.IsBoolean)(),
39
+ (0, class_transformer_1.Expose)(),
40
+ __metadata("design:type", Boolean)
41
+ ], PlayStartSessionDto.prototype, "raceMode", void 0);
@@ -0,0 +1,156 @@
1
+ import { CityQuestPlayPhaseEnum } from '../../city-quest/enum/city-quest-play-phase.enum';
2
+ import { CityQuestSessionStatusEnum } from '../../city-quest/enum/city-quest-session-status.enum';
3
+ import { Languages } from '../../shared/enum/languages.enum';
4
+ /**
5
+ * Публичные (безопасные) представления контента для игрока.
6
+ * Формируются сервером вручную — accepted_answers и будущие
7
+ * главы наружу не отдаются.
8
+ */
9
+ export type PlayAssetRO = {
10
+ assetKey: string;
11
+ url: string;
12
+ transcript?: string | null;
13
+ };
14
+ export type PlayHintStateRO = {
15
+ level: number;
16
+ penalty: number;
17
+ /** Текст возвращается только после покупки подсказки. */
18
+ text?: string;
19
+ used: boolean;
20
+ };
21
+ export type PlayChallengeRO = {
22
+ type: string;
23
+ prompt: string;
24
+ choices?: Array<{
25
+ id: string;
26
+ label: string;
27
+ }>;
28
+ teamSplitRoles?: Array<{
29
+ role: string;
30
+ task: string;
31
+ }>;
32
+ audio?: PlayAssetRO | null;
33
+ hints: PlayHintStateRO[];
34
+ };
35
+ export type PlayStopRO = {
36
+ id: string;
37
+ order: number;
38
+ totalStops: number;
39
+ chapterTitle?: string;
40
+ locationName: string;
41
+ address?: string;
42
+ lat: number;
43
+ lng: number;
44
+ gpsRadiusM: number;
45
+ arrivalInstruction?: string;
46
+ fromPrevious?: string;
47
+ walkAudio?: PlayAssetRO | null;
48
+ walkMicroTask?: string;
49
+ storyBefore: string;
50
+ challenge: PlayChallengeRO;
51
+ photoChallenge?: {
52
+ prompt: string;
53
+ collageSlot?: number;
54
+ };
55
+ /** true — сервер перевёл точку в fallback-режим (стройка/закрыто). */
56
+ fallbackActive: boolean;
57
+ fallbackPrompt?: string;
58
+ arrived: boolean;
59
+ };
60
+ export type PlayRouteEventRO = {
61
+ id: string;
62
+ type: 'message' | 'theft_bonus' | 'timed_challenge';
63
+ from?: string;
64
+ text?: string;
65
+ bonusChallenge?: PlayChallengeRO;
66
+ bonusPoints?: number;
67
+ softTimerSeconds?: number;
68
+ };
69
+ export type PlayFinaleRO = {
70
+ puzzle?: PlayChallengeRO;
71
+ choicePrompt?: string;
72
+ choices?: Array<{
73
+ id: string;
74
+ label: string;
75
+ }>;
76
+ };
77
+ export type PlayPrologueRO = {
78
+ /** Экраны вступления (prologue.screen_1..N) в порядке номеров. */
79
+ screens: string[];
80
+ /** Миссия команды (prologue.team_mission) — показывается последней. */
81
+ teamMission?: string;
82
+ };
83
+ export type PlayResultRO = {
84
+ score: number;
85
+ bonusPoints: number;
86
+ durationSec: number;
87
+ hintsUsed: number;
88
+ stopsSkipped: number;
89
+ endingId?: string;
90
+ endingText?: string;
91
+ shareCard?: unknown;
92
+ /** Место в топе города за 30 дней (если игра финишировала). */
93
+ leaderboardRank?: number | null;
94
+ leaderboardTotal?: number | null;
95
+ };
96
+ export type PlayStateRO = {
97
+ sessionToken: string;
98
+ teamName: string;
99
+ language: Languages;
100
+ status: CityQuestSessionStatusEnum;
101
+ phase: CityQuestPlayPhaseEnum;
102
+ title: string;
103
+ score: number;
104
+ bonusPoints: number;
105
+ startedAt: string;
106
+ pausedAccumulatedMs: number;
107
+ /** Прогресс: сколько точек закрыто. */
108
+ solvedStops: number;
109
+ totalStops: number;
110
+ /** Собранные жетоны метазагадки — в порядке получения. */
111
+ collectedTokens: string[];
112
+ /** Состояние артефакта (ключ ассета последнего reward.artifact_state). */
113
+ artifactState?: string | null;
114
+ artifactAsset?: PlayAssetRO | null;
115
+ currentStop?: PlayStopRO | null;
116
+ /**
117
+ * Вступление игры (что произошло, миссия команды). Клиент показывает
118
+ * его перед первой точкой; отдаём всегда — чтобы можно было
119
+ * перечитать из меню.
120
+ */
121
+ prologue?: PlayPrologueRO | null;
122
+ /** Событие маршрута, ожидающее реакции игрока. */
123
+ pendingRouteEvent?: PlayRouteEventRO | null;
124
+ finale?: PlayFinaleRO | null;
125
+ result?: PlayResultRO | null;
126
+ onboarding?: unknown;
127
+ selfGuidedSupport?: unknown;
128
+ };
129
+ export type PlayAnswerResultRO = {
130
+ correct: boolean;
131
+ /** Пояснение решения — приходит после верного ответа/reveal. */
132
+ solutionExplanation?: string;
133
+ storyAfter?: string;
134
+ historicalNote?: string;
135
+ earnedToken?: string;
136
+ /** Секунды до следующей попытки (rate-limit после серии ошибок). */
137
+ cooldownSeconds?: number;
138
+ state: PlayStateRO;
139
+ };
140
+ export type PlayAccessInfoRO = {
141
+ valid: boolean;
142
+ title?: string;
143
+ tagline?: string;
144
+ city?: string;
145
+ durationMinutes?: number;
146
+ distanceKm?: number;
147
+ availableLanguages?: Languages[];
148
+ /** Уже начатые командные сессии этого доступа. */
149
+ sessions?: Array<{
150
+ sessionToken: string;
151
+ teamName: string;
152
+ status: CityQuestSessionStatusEnum;
153
+ score: number;
154
+ }>;
155
+ expiresAt?: string | null;
156
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -73,7 +73,7 @@ class SignOrderDTO {
73
73
  exports.SignOrderDTO = SignOrderDTO;
74
74
  __decorate([
75
75
  (0, class_validator_1.ValidateIf)(({ step }) => step === 'sign'),
76
- (0, class_validator_1.IsBoolean)(),
76
+ (0, class_validator_1.Equals)(true, { message: 'agree Required' }),
77
77
  (0, class_transformer_1.Expose)(),
78
78
  __metadata("design:type", Boolean)
79
79
  ], SignOrderDTO.prototype, "agree", void 0);
@@ -36,6 +36,8 @@ export declare class QuestroomAdminRO extends QuestroomRO {
36
36
  minPrice: number;
37
37
  maxPrice: number;
38
38
  top: boolean;
39
+ /** Приоритетное размещение в агрегаторе. Меняется только супер-админом. */
40
+ promoted: boolean;
39
41
  verified: boolean;
40
42
  location: LocationAdminRO;
41
43
  techlocales: QuestroomLocale[];
@@ -129,6 +129,10 @@ __decorate([
129
129
  (0, class_transformer_1.Expose)(),
130
130
  __metadata("design:type", Boolean)
131
131
  ], QuestroomAdminRO.prototype, "top", void 0);
132
+ __decorate([
133
+ (0, class_transformer_1.Expose)(),
134
+ __metadata("design:type", Boolean)
135
+ ], QuestroomAdminRO.prototype, "promoted", void 0);
132
136
  __decorate([
133
137
  (0, class_transformer_1.Expose)(),
134
138
  __metadata("design:type", Boolean)