tickera-angular-components 0.0.1-dev.2 → 0.0.1-dev.200
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/assets/fonts/open-sans-latin-300-italic.woff2 +0 -0
- package/assets/fonts/open-sans-latin-300-normal.woff2 +0 -0
- package/assets/fonts/open-sans-latin-400-italic.woff2 +0 -0
- package/assets/fonts/open-sans-latin-400-normal.woff2 +0 -0
- package/assets/fonts/open-sans-latin-500-italic.woff2 +0 -0
- package/assets/fonts/open-sans-latin-500-normal.woff2 +0 -0
- package/assets/fonts/open-sans-latin-600-italic.woff2 +0 -0
- package/assets/fonts/open-sans-latin-600-normal.woff2 +0 -0
- package/assets/fonts/open-sans-latin-700-italic.woff2 +0 -0
- package/assets/fonts/open-sans-latin-700-normal.woff2 +0 -0
- package/assets/fonts/remixicon.woff2 +0 -0
- package/fesm2022/tickera-angular-components.mjs +8354 -1682
- package/fesm2022/tickera-angular-components.mjs.map +1 -1
- package/i18n/en.json +175 -0
- package/i18n/es.json +175 -0
- package/index.d.ts +2871 -467
- package/package.json +5 -2
- package/tickera.styles.css +1 -0
package/index.d.ts
CHANGED
|
@@ -1,33 +1,39 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken, EnvironmentProviders, WritableSignal, EventEmitter, Injector, Type, OnInit,
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
import { InjectionToken, EnvironmentProviders, WritableSignal, Signal, EventEmitter, OnChanges, OnDestroy, SimpleChanges, Injector, Type, OnInit, ElementRef, AfterViewInit } from '@angular/core';
|
|
3
|
+
export { TippyDirective } from '@ngneat/helipopper';
|
|
4
|
+
export * from '@ngneat/helipopper/config';
|
|
5
|
+
import { TranslocoLoader, TranslocoService } from '@jsverse/transloco';
|
|
5
6
|
import * as rxjs from 'rxjs';
|
|
6
7
|
import { Observable, Subject } from 'rxjs';
|
|
7
|
-
import {
|
|
8
|
+
import { ShapeConfig, Shape } from 'konva/lib/Shape';
|
|
9
|
+
import { Context } from 'konva/lib/Context';
|
|
10
|
+
import { ValidatorFn, FormGroup, FormBuilder, ControlValueAccessor, NgControl, Validator, AbstractControl, ValidationErrors, FormControl } from '@angular/forms';
|
|
11
|
+
import { HttpClient, HttpErrorResponse, HttpInterceptorFn } from '@angular/common/http';
|
|
12
|
+
import { Stage } from 'konva/lib/Stage';
|
|
13
|
+
import { Router, ActivatedRoute } from '@angular/router';
|
|
14
|
+
import * as tickera_angular_components from 'tickera-angular-components';
|
|
8
15
|
import { Toolbar, Editor } from 'ngx-editor';
|
|
9
|
-
import {
|
|
16
|
+
import { StageComponent, CoreShapeComponent } from 'ng2-konva';
|
|
10
17
|
|
|
11
18
|
interface TickeraComponentsConfig {
|
|
12
19
|
apiUrl: string;
|
|
13
20
|
accessTokenKey?: string;
|
|
21
|
+
defaultLang?: string;
|
|
22
|
+
availableLangs?: string[];
|
|
14
23
|
}
|
|
24
|
+
|
|
15
25
|
declare const TICKERA_COMPONENTS_CONFIG: InjectionToken<TickeraComponentsConfig>;
|
|
16
26
|
declare function provideTickeraComponents(config: TickeraComponentsConfig): EnvironmentProviders;
|
|
17
27
|
|
|
18
|
-
declare
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
declare
|
|
26
|
-
|
|
27
|
-
sm: string;
|
|
28
|
-
md: string;
|
|
29
|
-
lg: string;
|
|
30
|
-
};
|
|
28
|
+
declare class TickeraTranslocoLoader implements TranslocoLoader {
|
|
29
|
+
getTranslation(lang: string): Observable<Record<string, unknown>>;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
declare function getStoredLanguage(): string;
|
|
33
|
+
declare function setStoredLanguage(lang: string): void;
|
|
34
|
+
declare function getBrowserLanguage(): string;
|
|
35
|
+
declare function resolveLanguage(): string;
|
|
36
|
+
|
|
31
37
|
declare const ALERT_ICONS: {
|
|
32
38
|
success: string;
|
|
33
39
|
error: string;
|
|
@@ -35,33 +41,21 @@ declare const ALERT_ICONS: {
|
|
|
35
41
|
info: string;
|
|
36
42
|
};
|
|
37
43
|
|
|
38
|
-
declare const BUTTON_VARIANT_CLASSES: {
|
|
39
|
-
primary: string;
|
|
40
|
-
secondary: string;
|
|
41
|
-
terciary: string;
|
|
42
|
-
success: string;
|
|
43
|
-
transparent: string;
|
|
44
|
-
};
|
|
45
|
-
declare const BASE_BUTTON_CLASSES: string;
|
|
46
|
-
declare const BUTTON_SIZES_CLASSES: {
|
|
47
|
-
xs: string;
|
|
48
|
-
sm: string;
|
|
49
|
-
md: string;
|
|
50
|
-
lg: string;
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
declare const FORM_ERROR_MESSAGES: Record<string, string>;
|
|
54
|
-
|
|
55
|
-
declare const BASE_INPUT_CLASSES: string;
|
|
56
|
-
declare const ERROR_INPUT_CLASSES: string;
|
|
57
|
-
|
|
58
44
|
declare const ADMIN_API_ROUTES: {
|
|
59
45
|
FIND_ALL: string;
|
|
60
46
|
CREATE: string;
|
|
47
|
+
findOne: (id: number) => string;
|
|
61
48
|
updateOne: (id: number) => string;
|
|
62
49
|
deleteOne: (id: number) => string;
|
|
63
50
|
};
|
|
64
51
|
|
|
52
|
+
declare const ADMISSION_API_ROUTES: {
|
|
53
|
+
join: (performanceId: number) => string;
|
|
54
|
+
leave: (performanceId: number) => string;
|
|
55
|
+
status: (performanceId: number) => string;
|
|
56
|
+
events: (performanceId: number) => string;
|
|
57
|
+
};
|
|
58
|
+
|
|
65
59
|
declare const CITY_API_ENDPOINTS: {
|
|
66
60
|
findAll: string;
|
|
67
61
|
create: string;
|
|
@@ -78,10 +72,10 @@ declare const COUNTRY_API_ENDPOINTS: {
|
|
|
78
72
|
delete: (id: number) => string;
|
|
79
73
|
};
|
|
80
74
|
|
|
81
|
-
declare const
|
|
75
|
+
declare const CUSTOMERS_API_ROUTES: {
|
|
82
76
|
findAll: string;
|
|
83
77
|
create: string;
|
|
84
|
-
|
|
78
|
+
findOne: (id: number) => string;
|
|
85
79
|
update: (id: number) => string;
|
|
86
80
|
delete: (id: number) => string;
|
|
87
81
|
};
|
|
@@ -92,15 +86,57 @@ declare const PERFORMANCES_API_ROUTES: {
|
|
|
92
86
|
createBulk: string;
|
|
93
87
|
findOneById: (id: number) => string;
|
|
94
88
|
findOneBookingData: (id: number) => string;
|
|
89
|
+
findOneBookingDataAdmin: (id: number) => string;
|
|
95
90
|
update: (id: number) => string;
|
|
96
91
|
delete: (id: number) => string;
|
|
97
92
|
deleteMany: string;
|
|
93
|
+
bulkPublished: string;
|
|
98
94
|
cancel: (id: number) => string;
|
|
99
95
|
publishInventory: (id: number) => string;
|
|
100
96
|
reserve: (id: number) => string;
|
|
101
97
|
ticketQrToken: (uuid: string) => string;
|
|
102
98
|
getAvailableDays: string;
|
|
103
99
|
publicAvailablePerformances: string;
|
|
100
|
+
seatEventsTicket: (id: number) => string;
|
|
101
|
+
seatEventsTicketAdmin: (id: number) => string;
|
|
102
|
+
seatEvents: (id: number) => string;
|
|
103
|
+
myQrToken: (ticketUuid: string) => string;
|
|
104
|
+
ticketPdf: (ticketUuid: string) => string;
|
|
105
|
+
myTicketPdf: (ticketUuid: string) => string;
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
declare const PRICE_ZONES_API_ROUTES: {
|
|
109
|
+
FIND_ALL: string;
|
|
110
|
+
CREATE: string;
|
|
111
|
+
findOneById: (id: number) => string;
|
|
112
|
+
update: (id: number) => string;
|
|
113
|
+
delete: (id: number) => string;
|
|
114
|
+
updateElements: (id: number) => string;
|
|
115
|
+
duplicate: (id: number) => string;
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
declare const PRODUCT_CATEGORIES_API_ROUTES: {
|
|
119
|
+
FIND_ALL: string;
|
|
120
|
+
CREATE: string;
|
|
121
|
+
findById: (id: number) => string;
|
|
122
|
+
update: (id: number) => string;
|
|
123
|
+
delete: (id: number) => string;
|
|
124
|
+
};
|
|
125
|
+
|
|
126
|
+
declare const PRODUCT_TAGS_API_ROUTES: {
|
|
127
|
+
FIND_ALL: string;
|
|
128
|
+
CREATE: string;
|
|
129
|
+
findById: (id: number) => string;
|
|
130
|
+
update: (id: number) => string;
|
|
131
|
+
delete: (id: number) => string;
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
declare const PRODUCT_TYPES_API_ROUTES: {
|
|
135
|
+
FIND_ALL: string;
|
|
136
|
+
CREATE: string;
|
|
137
|
+
findById: (id: number) => string;
|
|
138
|
+
update: (id: number) => string;
|
|
139
|
+
delete: (id: number) => string;
|
|
104
140
|
};
|
|
105
141
|
|
|
106
142
|
declare const PRODUCTS_API_ROUTES: {
|
|
@@ -109,6 +145,9 @@ declare const PRODUCTS_API_ROUTES: {
|
|
|
109
145
|
findOneById: (id: number) => string;
|
|
110
146
|
update: (id: number) => string;
|
|
111
147
|
delete: (id: number) => string;
|
|
148
|
+
fetchImages: (id: number) => string;
|
|
149
|
+
uploadImages: (id: number) => string;
|
|
150
|
+
deleteOneImage: (productId: number, imageId: number) => string;
|
|
112
151
|
};
|
|
113
152
|
|
|
114
153
|
declare const SHOWS_API_ROUTES: {
|
|
@@ -123,22 +162,12 @@ declare const SHOWS_API_ROUTES: {
|
|
|
123
162
|
publicAvailablePerformances: string;
|
|
124
163
|
};
|
|
125
164
|
|
|
126
|
-
declare const
|
|
165
|
+
declare const STATE_API_ENDPOINTS: {
|
|
127
166
|
findAll: string;
|
|
128
167
|
create: string;
|
|
129
|
-
|
|
130
|
-
update: (id: number) => string;
|
|
131
|
-
delete: (id: number) => string;
|
|
132
|
-
};
|
|
133
|
-
|
|
134
|
-
declare const PRICE_ZONES_API_ROUTES: {
|
|
135
|
-
FIND_ALL: string;
|
|
136
|
-
CREATE: string;
|
|
137
|
-
findOneById: (id: number) => string;
|
|
168
|
+
findById: (id: number) => string;
|
|
138
169
|
update: (id: number) => string;
|
|
139
170
|
delete: (id: number) => string;
|
|
140
|
-
updateElements: (id: number) => string;
|
|
141
|
-
duplicate: (id: number) => string;
|
|
142
171
|
};
|
|
143
172
|
|
|
144
173
|
declare const VENUES_API_ROUTES: {
|
|
@@ -152,152 +181,36 @@ declare const VENUES_API_ROUTES: {
|
|
|
152
181
|
deleteOneImage: (venueId: number, imageId: number) => string;
|
|
153
182
|
};
|
|
154
183
|
|
|
155
|
-
declare
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
MEMBERSHIP_TYPE = "MEMBERSHIP_TYPE",
|
|
168
|
-
SHOWS = "SHOWS",
|
|
169
|
-
PERFORMANCES = "PERFORMANCES"
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
declare enum CouponDiscountType {
|
|
173
|
-
PERCENTAGE = "PERCENTAGE",
|
|
174
|
-
FIXED = "FIXED"
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
declare enum CorporateBondStatus {
|
|
178
|
-
ACTIVE = "ACTIVE",
|
|
179
|
-
INACTIVE = "INACTIVE",
|
|
180
|
-
EXPIRED = "EXPIRED"
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
declare enum PerformanceStatus {
|
|
184
|
-
ACTIVE = "active",
|
|
185
|
-
CANCELLED = "cancelled",
|
|
186
|
-
FINISHED = "finished",
|
|
187
|
-
POSTPONED = "postponed"
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
declare enum PerformanceTicketStatus {
|
|
191
|
-
AVAILABLE = "available",
|
|
192
|
-
RESERVED = "reserved",
|
|
193
|
-
SOLD = "sold",
|
|
194
|
-
BLOCKED = "blocked"
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
declare enum RoomMapElementOrientation {
|
|
198
|
-
TOP = "top",
|
|
199
|
-
RIGHT = "right",
|
|
200
|
-
BOTTOM = "bottom",
|
|
201
|
-
LEFT = "left",
|
|
202
|
-
CENTER = "center"
|
|
203
|
-
}
|
|
204
|
-
|
|
205
|
-
declare enum RoomMapElementType {
|
|
206
|
-
SEAT_BLOCK = "seat_block",
|
|
207
|
-
TABLE = "table",
|
|
208
|
-
ZONE = "zone",
|
|
209
|
-
EXIT = "exit",
|
|
210
|
-
STAGE = "stage",
|
|
211
|
-
PRODUCTION_AREA = "production_area",
|
|
212
|
-
UNAVAILABLE_SPACE = "unavailable_space",
|
|
213
|
-
STAIR = "stair",
|
|
214
|
-
HALLWAY = "hallway"
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
declare enum OrderItemType {
|
|
218
|
-
TICKET = "TICKET",
|
|
219
|
-
PRODUCT = "PRODUCT"
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
declare enum OrderStatus {
|
|
223
|
-
PENDING = "PENDING",
|
|
224
|
-
COMPLETED = "COMPLETED",
|
|
225
|
-
FAILED = "FAILED",
|
|
226
|
-
CANCELLED = "CANCELLED"
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
interface RoomMapPosition {
|
|
230
|
-
x: number;
|
|
231
|
-
y: number;
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
interface RoomMapSize {
|
|
235
|
-
width: number;
|
|
236
|
-
height: number;
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
interface RoomMapBaseElement {
|
|
240
|
-
id: string;
|
|
241
|
-
type: RoomMapElementType;
|
|
242
|
-
position: RoomMapPosition;
|
|
243
|
-
size: RoomMapSize;
|
|
244
|
-
rotation: number;
|
|
245
|
-
name?: string;
|
|
246
|
-
isLocked: boolean;
|
|
247
|
-
isVisible: boolean;
|
|
248
|
-
zIndex: number;
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
interface RoomMapExitElement extends RoomMapBaseElement {
|
|
252
|
-
type: RoomMapElementType.EXIT;
|
|
253
|
-
exitName?: string;
|
|
254
|
-
exitType: 'emergency' | 'regular';
|
|
255
|
-
width: number;
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
interface RoomMapProductionAreaElement extends RoomMapBaseElement {
|
|
259
|
-
type: RoomMapElementType.PRODUCTION_AREA;
|
|
260
|
-
areaName?: string;
|
|
261
|
-
areaType: 'lighting' | 'sound' | 'backstage' | 'orchestra' | 'custom';
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
interface RoomMapSeatElement extends RoomMapBaseElement {
|
|
265
|
-
type: RoomMapElementType.SEAT_BLOCK;
|
|
266
|
-
seatNumber?: string;
|
|
267
|
-
isAvailable: boolean;
|
|
268
|
-
priceCategory?: string;
|
|
269
|
-
}
|
|
184
|
+
declare const VIP_CARDS_API_ROUTES: {
|
|
185
|
+
findAll: string;
|
|
186
|
+
findOne: (id: number) => string;
|
|
187
|
+
activateAdmin: string;
|
|
188
|
+
rechargeAdmin: (id: number) => string;
|
|
189
|
+
updateStatus: (id: number) => string;
|
|
190
|
+
updateTerms: (id: number) => string;
|
|
191
|
+
transactions: (id: number) => string;
|
|
192
|
+
findMy: string;
|
|
193
|
+
activate: string;
|
|
194
|
+
recharge: string;
|
|
195
|
+
};
|
|
270
196
|
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
orientation: RoomMapElementOrientation;
|
|
275
|
-
isMainStage: boolean;
|
|
276
|
-
}
|
|
197
|
+
declare const BUTTON_VARIANT_CLASSES: Record<string, string>;
|
|
198
|
+
declare const BASE_BUTTON_CLASSES = "btn";
|
|
199
|
+
declare const BUTTON_SIZES_CLASSES: Record<string, string>;
|
|
277
200
|
|
|
278
|
-
|
|
279
|
-
type: RoomMapElementType.TABLE;
|
|
280
|
-
tableNumber?: string;
|
|
281
|
-
capacity: number;
|
|
282
|
-
shape: 'round' | 'rectangular' | 'square';
|
|
283
|
-
}
|
|
201
|
+
declare const FORM_ERROR_MESSAGES: Record<string, string>;
|
|
284
202
|
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
reason?: string;
|
|
288
|
-
}
|
|
203
|
+
declare const BASE_INPUT_CLASSES: string;
|
|
204
|
+
declare const ERROR_INPUT_CLASSES: string;
|
|
289
205
|
|
|
290
|
-
interface
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
color: string;
|
|
295
|
-
capacity?: number;
|
|
206
|
+
interface PhoneCountry {
|
|
207
|
+
name: string;
|
|
208
|
+
isoCode: string;
|
|
209
|
+
dialCode: string;
|
|
296
210
|
}
|
|
297
211
|
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
type RoomMapSeatDisplayState = 'normal' | 'accessible' | 'non_existent';
|
|
212
|
+
declare function phoneCountryFlag(isoCode: string): string;
|
|
213
|
+
declare const PHONE_COUNTRIES: PhoneCountry[];
|
|
301
214
|
|
|
302
215
|
interface SelectOption {
|
|
303
216
|
value: any;
|
|
@@ -305,7 +218,7 @@ interface SelectOption {
|
|
|
305
218
|
disabled?: boolean;
|
|
306
219
|
}
|
|
307
220
|
|
|
308
|
-
interface Admin {
|
|
221
|
+
interface Admin extends Auditable {
|
|
309
222
|
id: number;
|
|
310
223
|
username: string;
|
|
311
224
|
email: string;
|
|
@@ -321,16 +234,17 @@ interface Admin {
|
|
|
321
234
|
reset_password_expires: Date;
|
|
322
235
|
email_verified_at: Date;
|
|
323
236
|
last_login: Date;
|
|
324
|
-
created_at: Date;
|
|
325
|
-
updated_at: Date;
|
|
326
|
-
deleted_at: Date;
|
|
327
237
|
}
|
|
328
238
|
|
|
329
239
|
interface Auditable {
|
|
330
240
|
created_at: Date;
|
|
331
241
|
updated_at: Date;
|
|
242
|
+
deleted_at?: Date | null;
|
|
332
243
|
is_published?: boolean;
|
|
333
244
|
published_at?: Date;
|
|
245
|
+
published_by?: number;
|
|
246
|
+
deleted_by?: number;
|
|
247
|
+
deleted_by_admin?: Admin;
|
|
334
248
|
created_by_admin?: Admin;
|
|
335
249
|
updated_by_admin?: Admin;
|
|
336
250
|
published_by_admin?: Admin;
|
|
@@ -363,30 +277,21 @@ interface DeleteConfirmationOpen {
|
|
|
363
277
|
confirmationText: string;
|
|
364
278
|
}
|
|
365
279
|
|
|
366
|
-
interface AdminsResponse {
|
|
367
|
-
statusCode: number;
|
|
368
|
-
data: {
|
|
369
|
-
admins: Admin[];
|
|
370
|
-
total: number;
|
|
371
|
-
};
|
|
372
|
-
message: string;
|
|
373
|
-
}
|
|
374
|
-
|
|
375
280
|
interface Country {
|
|
376
|
-
id:
|
|
281
|
+
id: number;
|
|
377
282
|
name: string;
|
|
378
283
|
iso2: string;
|
|
379
284
|
}
|
|
380
285
|
|
|
381
286
|
interface State {
|
|
382
|
-
id:
|
|
287
|
+
id: number;
|
|
383
288
|
name: string;
|
|
384
289
|
country_id: number;
|
|
385
290
|
country?: Country;
|
|
386
291
|
}
|
|
387
292
|
|
|
388
293
|
interface City {
|
|
389
|
-
id:
|
|
294
|
+
id: number;
|
|
390
295
|
name: string;
|
|
391
296
|
search_text: string | null;
|
|
392
297
|
state_id: number;
|
|
@@ -425,33 +330,48 @@ interface Venue extends Auditable {
|
|
|
425
330
|
images: VenueImage[];
|
|
426
331
|
}
|
|
427
332
|
|
|
428
|
-
interface HallFloor {
|
|
333
|
+
interface HallFloor extends Auditable {
|
|
429
334
|
id: number;
|
|
430
335
|
name: string;
|
|
431
336
|
level: number;
|
|
432
337
|
max_capacity: number;
|
|
433
338
|
description: string;
|
|
434
339
|
hall_id: number;
|
|
435
|
-
created_at: Date;
|
|
436
|
-
updated_at: Date;
|
|
437
|
-
deleted_at: Date | null;
|
|
438
340
|
}
|
|
439
341
|
|
|
440
|
-
interface Hall {
|
|
342
|
+
interface Hall extends Auditable {
|
|
441
343
|
id: number;
|
|
442
344
|
name: string;
|
|
443
345
|
venue_id: number;
|
|
444
346
|
venue?: Venue;
|
|
445
347
|
hall_floors?: HallFloor[];
|
|
446
|
-
created_at: Date;
|
|
447
|
-
updated_at: Date;
|
|
448
|
-
deleted_at: Date | null;
|
|
449
348
|
}
|
|
450
349
|
|
|
451
|
-
interface
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
350
|
+
interface BreadcrumbStep {
|
|
351
|
+
label: string;
|
|
352
|
+
href?: string;
|
|
353
|
+
icon?: string;
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
interface CommonFetchAllParams {
|
|
357
|
+
id?: number;
|
|
358
|
+
page?: number;
|
|
359
|
+
limit?: number;
|
|
360
|
+
search?: string;
|
|
361
|
+
sort_by?: string;
|
|
362
|
+
sort_order?: 'ASC' | 'DESC';
|
|
363
|
+
is_published?: boolean;
|
|
364
|
+
ids_in?: number[];
|
|
365
|
+
ids_not_in?: number[];
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
interface SidebarMenuItem {
|
|
369
|
+
labelKey: string;
|
|
370
|
+
icon: string;
|
|
371
|
+
path?: string;
|
|
372
|
+
role?: string[];
|
|
373
|
+
isOpen?: boolean;
|
|
374
|
+
submenu?: SidebarMenuItem[];
|
|
455
375
|
}
|
|
456
376
|
|
|
457
377
|
interface CountriesResponse {
|
|
@@ -463,8 +383,23 @@ interface CountriesResponse {
|
|
|
463
383
|
status: string;
|
|
464
384
|
}
|
|
465
385
|
|
|
466
|
-
interface
|
|
467
|
-
data:
|
|
386
|
+
interface CountryResponse {
|
|
387
|
+
data: Country;
|
|
388
|
+
message: string;
|
|
389
|
+
status: string;
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
interface FetchCountriesParams extends CommonFetchAllParams {
|
|
393
|
+
sort_by?: 'country.id' | 'country.name' | 'country.iso2' | 'country.created_at' | 'country.updated_at';
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
interface FetchStatesParams extends CommonFetchAllParams {
|
|
397
|
+
country_id?: number;
|
|
398
|
+
sort_by?: 'state.id' | 'state.name' | 'state.country_id' | 'state.search_text' | 'state.created_at' | 'state.updated_at';
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
interface StateResponse {
|
|
402
|
+
data: State;
|
|
468
403
|
message: string;
|
|
469
404
|
status: string;
|
|
470
405
|
}
|
|
@@ -478,28 +413,40 @@ interface StatesResponse {
|
|
|
478
413
|
statusCode: number;
|
|
479
414
|
}
|
|
480
415
|
|
|
416
|
+
interface CitiesResponse {
|
|
417
|
+
data: {
|
|
418
|
+
cities: City[];
|
|
419
|
+
total: number;
|
|
420
|
+
};
|
|
421
|
+
message: string;
|
|
422
|
+
status: string;
|
|
423
|
+
}
|
|
424
|
+
|
|
481
425
|
interface CityResponse {
|
|
482
426
|
data: City;
|
|
483
427
|
message: string;
|
|
484
428
|
status: string;
|
|
485
429
|
}
|
|
486
430
|
|
|
487
|
-
interface
|
|
431
|
+
interface FetchCitiesParams extends CommonFetchAllParams {
|
|
432
|
+
state_id?: number;
|
|
433
|
+
sort_by?: 'city.id' | 'city.name' | 'city.state_id' | 'city.search_text' | 'city.created_at' | 'city.updated_at';
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
interface AdminsResponse {
|
|
437
|
+
statusCode: number;
|
|
488
438
|
data: {
|
|
489
|
-
|
|
439
|
+
admins: Admin[];
|
|
490
440
|
total: number;
|
|
491
441
|
};
|
|
492
442
|
message: string;
|
|
493
|
-
status: string;
|
|
494
443
|
}
|
|
495
444
|
|
|
496
|
-
interface
|
|
497
|
-
|
|
498
|
-
page?: number;
|
|
499
|
-
search?: string;
|
|
445
|
+
interface FetchAdminsParams extends CommonFetchAllParams {
|
|
446
|
+
sort_by?: 'admin.id' | 'admin.username' | 'admin.email' | 'admin.mobile' | 'admin.first_name' | 'admin.last_name' | 'admin.full_name' | 'admin.principal_role' | 'admin.email_verified_at' | 'admin.last_login' | 'admin.created_at' | 'admin.updated_at';
|
|
500
447
|
}
|
|
501
448
|
|
|
502
|
-
interface Customer {
|
|
449
|
+
interface Customer extends Auditable {
|
|
503
450
|
username: string;
|
|
504
451
|
email: string;
|
|
505
452
|
mobile: string;
|
|
@@ -530,9 +477,6 @@ interface Customer {
|
|
|
530
477
|
membership_expires_at: Date | null;
|
|
531
478
|
id: number;
|
|
532
479
|
is_active: boolean;
|
|
533
|
-
created_at: Date;
|
|
534
|
-
updated_at: Date;
|
|
535
|
-
deleted_at: Date | null;
|
|
536
480
|
}
|
|
537
481
|
|
|
538
482
|
interface CustomerResponse {
|
|
@@ -550,94 +494,393 @@ interface CustomersResponse {
|
|
|
550
494
|
message: string;
|
|
551
495
|
}
|
|
552
496
|
|
|
553
|
-
|
|
497
|
+
interface FetchCustomersParams extends CommonFetchAllParams {
|
|
498
|
+
first_name?: string;
|
|
499
|
+
last_name?: string;
|
|
500
|
+
email?: string;
|
|
501
|
+
username?: string;
|
|
502
|
+
mobile?: string;
|
|
503
|
+
document_type?: Customer['document_type'];
|
|
504
|
+
document_number?: string;
|
|
505
|
+
address?: string;
|
|
506
|
+
sort_by?: 'customer.id' | 'customer.email' | 'customer.mobile' | 'customer.first_name' | 'customer.last_name' | 'customer.birthday_date' | 'customer.document_type' | 'customer.document_number' | 'customer.address' | 'customer.postal_code' | 'customer.country_id' | 'customer.city_id' | 'customer.state_id' | 'customer.phone' | 'customer.created_at';
|
|
507
|
+
}
|
|
554
508
|
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
509
|
+
declare enum OrderItemType {
|
|
510
|
+
TICKET = "TICKET",
|
|
511
|
+
PRODUCT = "PRODUCT",
|
|
512
|
+
GIFT_BOND = "GIFT_BOND",
|
|
513
|
+
CORPORATE_BOND = "CORPORATE_BOND",
|
|
514
|
+
VIP_RECHARGE = "VIP_RECHARGE"
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
declare enum OrderStatus {
|
|
518
|
+
ON_HOLD = "on-hold",
|
|
519
|
+
PENDING_PAYMENT = "pending-payment",
|
|
520
|
+
PROCESSING = "processing",
|
|
521
|
+
COMPLETED = "completed",
|
|
522
|
+
FAILED = "failed",
|
|
523
|
+
CANCELLED = "cancelled",
|
|
524
|
+
REFUNDED = "refunded"
|
|
525
|
+
}
|
|
526
|
+
|
|
527
|
+
declare enum CreatorType {
|
|
528
|
+
ADMIN = "admin",
|
|
529
|
+
CUSTOMER = "customer"
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
declare enum PaymentMethod {
|
|
533
|
+
PAYROLL = "payroll",
|
|
534
|
+
CASH = "cash",
|
|
535
|
+
DATAFONO = "datafono",
|
|
536
|
+
INTERNAL_EXCHANGE = "internal_exchange",
|
|
537
|
+
CLIENT_EXCHANGE = "client_exchange",
|
|
538
|
+
MERCADO_PAGO = "mercado_pago"
|
|
539
|
+
}
|
|
540
|
+
|
|
541
|
+
declare enum RoomMapElementType {
|
|
542
|
+
SEAT_BLOCK = "seat_block",
|
|
543
|
+
TABLE = "table",
|
|
544
|
+
ZONE = "zone",
|
|
545
|
+
EXIT = "exit",
|
|
546
|
+
STAGE = "stage",
|
|
547
|
+
PRODUCTION_AREA = "production_area",
|
|
548
|
+
UNAVAILABLE_SPACE = "unavailable_space",
|
|
549
|
+
STAIR = "stair",
|
|
550
|
+
HALLWAY = "hallway"
|
|
551
|
+
}
|
|
552
|
+
|
|
553
|
+
interface RoomMapPosition {
|
|
554
|
+
x: number;
|
|
555
|
+
y: number;
|
|
556
|
+
}
|
|
557
|
+
|
|
558
|
+
interface RoomMapSize {
|
|
563
559
|
width: number;
|
|
564
560
|
height: number;
|
|
565
|
-
show_id: number;
|
|
566
|
-
created_at: Date;
|
|
567
561
|
}
|
|
568
562
|
|
|
569
|
-
interface
|
|
570
|
-
id:
|
|
563
|
+
interface RoomMapBaseElement {
|
|
564
|
+
id: string;
|
|
565
|
+
type: RoomMapElementType;
|
|
566
|
+
position: RoomMapPosition;
|
|
567
|
+
size: RoomMapSize;
|
|
568
|
+
rotation: number;
|
|
569
|
+
name?: string;
|
|
570
|
+
isLocked: boolean;
|
|
571
|
+
isVisible: boolean;
|
|
572
|
+
zIndex: number;
|
|
573
|
+
}
|
|
574
|
+
|
|
575
|
+
interface RoomMapExitElement extends RoomMapBaseElement {
|
|
576
|
+
type: RoomMapElementType.EXIT;
|
|
577
|
+
exitName?: string;
|
|
578
|
+
exitType: 'emergency' | 'regular';
|
|
579
|
+
width: number;
|
|
580
|
+
}
|
|
581
|
+
|
|
582
|
+
interface RoomMapProductionAreaElement extends RoomMapBaseElement {
|
|
583
|
+
type: RoomMapElementType.PRODUCTION_AREA;
|
|
584
|
+
areaName?: string;
|
|
585
|
+
areaType: 'lighting' | 'sound' | 'backstage' | 'orchestra' | 'custom';
|
|
586
|
+
}
|
|
587
|
+
|
|
588
|
+
interface RoomMapSeatElement extends RoomMapBaseElement {
|
|
589
|
+
type: RoomMapElementType.SEAT_BLOCK;
|
|
590
|
+
seatNumber?: string;
|
|
591
|
+
isAvailable: boolean;
|
|
592
|
+
priceCategory?: string;
|
|
593
|
+
}
|
|
594
|
+
|
|
595
|
+
declare enum RoomMapElementOrientation {
|
|
596
|
+
TOP = "top",
|
|
597
|
+
RIGHT = "right",
|
|
598
|
+
BOTTOM = "bottom",
|
|
599
|
+
LEFT = "left",
|
|
600
|
+
CENTER = "center"
|
|
601
|
+
}
|
|
602
|
+
|
|
603
|
+
interface RoomMapStageElement extends RoomMapBaseElement {
|
|
604
|
+
type: RoomMapElementType.STAGE;
|
|
605
|
+
stageName?: string;
|
|
606
|
+
orientation: RoomMapElementOrientation;
|
|
607
|
+
isMainStage: boolean;
|
|
608
|
+
}
|
|
609
|
+
|
|
610
|
+
interface RoomMapTableElement extends RoomMapBaseElement {
|
|
611
|
+
type: RoomMapElementType.TABLE;
|
|
612
|
+
tableNumber?: string;
|
|
613
|
+
capacity: number;
|
|
614
|
+
shape: 'round' | 'rectangular' | 'square';
|
|
615
|
+
}
|
|
616
|
+
|
|
617
|
+
interface RoomMapUnavailableElement extends RoomMapBaseElement {
|
|
618
|
+
type: RoomMapElementType.UNAVAILABLE_SPACE;
|
|
619
|
+
reason?: string;
|
|
620
|
+
}
|
|
621
|
+
|
|
622
|
+
interface RoomMapZoneElement extends RoomMapBaseElement {
|
|
623
|
+
type: RoomMapElementType.ZONE;
|
|
624
|
+
zoneName: string;
|
|
625
|
+
zoneType: 'vip' | 'general' | 'premium' | 'balcony' | 'custom';
|
|
626
|
+
color: string;
|
|
627
|
+
capacity?: number;
|
|
628
|
+
}
|
|
629
|
+
|
|
630
|
+
type RoomMapCanvasElement = RoomMapSeatElement | RoomMapTableElement | RoomMapZoneElement | RoomMapExitElement | RoomMapStageElement | RoomMapProductionAreaElement | RoomMapUnavailableElement;
|
|
631
|
+
|
|
632
|
+
type RoomMapSeatDisplayState = 'normal' | 'accessible' | 'non_existent';
|
|
633
|
+
|
|
634
|
+
type ModalSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl';
|
|
635
|
+
|
|
636
|
+
type FeedbackModalType = 'loading' | 'success' | 'info' | 'warning' | 'error';
|
|
637
|
+
|
|
638
|
+
type BadgeSize = 'xs' | 'sm' | 'md' | 'lg';
|
|
639
|
+
|
|
640
|
+
type BadgeColor = 'primary' | 'secondary' | 'success' | 'warning' | 'error' | 'info';
|
|
641
|
+
|
|
642
|
+
type BreadcrumbTheme = 'light' | 'dark';
|
|
643
|
+
|
|
644
|
+
type TextFontSize = 'xs' | 'sm' | 'base' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl' | '6xl';
|
|
645
|
+
|
|
646
|
+
interface FeedbackModalElement {
|
|
647
|
+
id: string;
|
|
648
|
+
type: FeedbackModalType;
|
|
571
649
|
title: string;
|
|
650
|
+
isOpen: WritableSignal<boolean>;
|
|
651
|
+
message?: string;
|
|
652
|
+
showHeader?: boolean;
|
|
653
|
+
showCloseButton?: boolean;
|
|
654
|
+
showTitle?: boolean;
|
|
655
|
+
closeModal?: void;
|
|
656
|
+
}
|
|
657
|
+
|
|
658
|
+
declare enum FileType {
|
|
659
|
+
IMAGE = "image",
|
|
660
|
+
PDF = "pdf",
|
|
661
|
+
EXCEL = "excel",
|
|
662
|
+
WORD = "word",
|
|
663
|
+
TEXT = "text",
|
|
664
|
+
DEFAULT = "default"
|
|
665
|
+
}
|
|
666
|
+
|
|
667
|
+
declare enum CouponApplicability {
|
|
668
|
+
GENERAL = "GENERAL",
|
|
669
|
+
CUSTOMER_EMAIL = "CUSTOMER_EMAIL",
|
|
670
|
+
MEMBERSHIP_TYPE = "MEMBERSHIP_TYPE",
|
|
671
|
+
SHOWS = "SHOWS",
|
|
672
|
+
PERFORMANCES = "PERFORMANCES"
|
|
673
|
+
}
|
|
674
|
+
|
|
675
|
+
declare enum CouponDiscountType {
|
|
676
|
+
PERCENTAGE = "PERCENTAGE",
|
|
677
|
+
FIXED = "FIXED"
|
|
678
|
+
}
|
|
679
|
+
|
|
680
|
+
declare enum CouponStatus {
|
|
681
|
+
ACTIVE = "ACTIVE",
|
|
682
|
+
INACTIVE = "INACTIVE",
|
|
683
|
+
EXPIRED = "EXPIRED",
|
|
684
|
+
CONSUMED = "CONSUMED"
|
|
685
|
+
}
|
|
686
|
+
|
|
687
|
+
declare enum CorporateBondStatus {
|
|
688
|
+
ACTIVE = "ACTIVE",
|
|
689
|
+
INACTIVE = "INACTIVE",
|
|
690
|
+
PENDING = "PENDING",
|
|
691
|
+
PAYMENT_FAILED = "PAYMENT_FAILED",
|
|
692
|
+
EXPIRED = "EXPIRED",
|
|
693
|
+
CONSUMED = "CONSUMED"
|
|
694
|
+
}
|
|
695
|
+
|
|
696
|
+
declare enum PerformanceStatus {
|
|
697
|
+
SCHEDULED = "scheduled",
|
|
698
|
+
OPEN = "open",
|
|
699
|
+
CLOSED = "closed",
|
|
700
|
+
CANCELLED = "cancelled",
|
|
701
|
+
COMPLETED = "completed",
|
|
702
|
+
POSTPONED = "postponed"
|
|
703
|
+
}
|
|
704
|
+
|
|
705
|
+
declare enum PerformanceTicketStatus {
|
|
706
|
+
AVAILABLE = "available",
|
|
707
|
+
RESERVED = "reserved",
|
|
708
|
+
SOLD = "sold",
|
|
709
|
+
BLOCKED = "blocked"
|
|
710
|
+
}
|
|
711
|
+
|
|
712
|
+
declare enum GiftBondStatus {
|
|
713
|
+
ACTIVE = "ACTIVE",
|
|
714
|
+
INACTIVE = "INACTIVE"
|
|
715
|
+
}
|
|
716
|
+
|
|
717
|
+
declare enum GiftBondPurchaseStatus {
|
|
718
|
+
AVAILABLE = "AVAILABLE",
|
|
719
|
+
REDEEMED = "REDEEMED",
|
|
720
|
+
EXPIRED = "EXPIRED",
|
|
721
|
+
CANCELLED = "CANCELLED"
|
|
722
|
+
}
|
|
723
|
+
|
|
724
|
+
declare enum TransactionStatus {
|
|
725
|
+
PENDING = "PENDING",
|
|
726
|
+
APPROVED = "APPROVED",
|
|
727
|
+
REJECTED = "REJECTED",
|
|
728
|
+
ERROR = "ERROR"
|
|
729
|
+
}
|
|
730
|
+
|
|
731
|
+
declare enum VipCardStatus {
|
|
732
|
+
ACTIVE = "ACTIVE",
|
|
733
|
+
INACTIVE = "INACTIVE",
|
|
734
|
+
EXPIRED = "EXPIRED"
|
|
735
|
+
}
|
|
736
|
+
|
|
737
|
+
declare enum VipTransactionType {
|
|
738
|
+
INITIAL_RECHARGE = "INITIAL_RECHARGE",
|
|
739
|
+
RECHARGE = "RECHARGE",
|
|
740
|
+
PURCHASE_PAYMENT = "PURCHASE_PAYMENT"
|
|
741
|
+
}
|
|
742
|
+
|
|
743
|
+
declare enum MembershipStatus {
|
|
744
|
+
ACTIVE = "ACTIVE",
|
|
745
|
+
INACTIVE = "INACTIVE"
|
|
746
|
+
}
|
|
747
|
+
|
|
748
|
+
interface FetchProductCategoriesParams extends CommonFetchAllParams {
|
|
749
|
+
name?: string;
|
|
750
|
+
slug?: string;
|
|
751
|
+
sort_by?: 'category.id' | 'category.name' | 'category.slug' | 'category.created_at';
|
|
752
|
+
}
|
|
753
|
+
|
|
754
|
+
interface ProductCategory extends Auditable {
|
|
755
|
+
id: number;
|
|
756
|
+
name: string;
|
|
572
757
|
slug: string;
|
|
573
|
-
description: string;
|
|
574
|
-
duration_minutes: number | null;
|
|
575
|
-
type_of_costs: string | null;
|
|
576
|
-
service_fee: number | null;
|
|
577
|
-
show_type: ShowType | null;
|
|
578
|
-
pulep: string | null;
|
|
579
|
-
minimum_age: number | null;
|
|
580
|
-
show_category_id: number | null;
|
|
581
|
-
default_room_map_id: number | null;
|
|
582
|
-
published_at?: Date;
|
|
583
|
-
is_published: boolean;
|
|
584
|
-
images: ShowImage[];
|
|
585
|
-
terms_and_conditions: string;
|
|
586
|
-
performances_quantity?: number;
|
|
587
758
|
}
|
|
588
759
|
|
|
589
|
-
interface
|
|
760
|
+
interface ProductCategoriesResponse {
|
|
590
761
|
statusCode: number;
|
|
591
|
-
data:
|
|
762
|
+
data: {
|
|
763
|
+
categories: ProductCategory[];
|
|
764
|
+
total: number;
|
|
765
|
+
};
|
|
592
766
|
message: string;
|
|
593
767
|
}
|
|
594
768
|
|
|
595
|
-
interface
|
|
769
|
+
interface ProductCategoryResponse {
|
|
770
|
+
statusCode: number;
|
|
771
|
+
data: ProductCategory;
|
|
772
|
+
message: string;
|
|
773
|
+
}
|
|
774
|
+
|
|
775
|
+
interface FetchProductTagsParams extends CommonFetchAllParams {
|
|
776
|
+
name?: string;
|
|
777
|
+
slug?: string;
|
|
778
|
+
sort_by?: 'tag.id' | 'tag.name' | 'tag.slug' | 'tag.created_at';
|
|
779
|
+
}
|
|
780
|
+
|
|
781
|
+
interface ProductTag extends Auditable {
|
|
782
|
+
id: number;
|
|
783
|
+
name: string;
|
|
784
|
+
slug: string;
|
|
785
|
+
}
|
|
786
|
+
|
|
787
|
+
interface ProductTagResponse {
|
|
788
|
+
statusCode: number;
|
|
789
|
+
data: ProductTag;
|
|
790
|
+
message: string;
|
|
791
|
+
}
|
|
792
|
+
|
|
793
|
+
interface ProductTagsResponse {
|
|
596
794
|
statusCode: number;
|
|
597
795
|
data: {
|
|
598
|
-
|
|
796
|
+
tags: ProductTag[];
|
|
599
797
|
total: number;
|
|
600
798
|
};
|
|
601
799
|
message: string;
|
|
602
800
|
}
|
|
603
801
|
|
|
604
|
-
interface
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
date?: string;
|
|
802
|
+
interface FetchProductTypesParams extends CommonFetchAllParams {
|
|
803
|
+
name?: string;
|
|
804
|
+
slug?: string;
|
|
805
|
+
sort_by?: 'type.id' | 'type.name' | 'type.slug' | 'type.created_at';
|
|
609
806
|
}
|
|
610
807
|
|
|
611
|
-
interface
|
|
808
|
+
interface ProductType extends Auditable {
|
|
612
809
|
id: number;
|
|
613
810
|
name: string;
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
811
|
+
slug: string;
|
|
812
|
+
}
|
|
813
|
+
|
|
814
|
+
interface ProductTypeResponse {
|
|
815
|
+
statusCode: number;
|
|
816
|
+
data: ProductType;
|
|
817
|
+
message: string;
|
|
818
|
+
}
|
|
819
|
+
|
|
820
|
+
interface ProductTypesResponse {
|
|
821
|
+
statusCode: number;
|
|
822
|
+
data: {
|
|
823
|
+
types: ProductType[];
|
|
824
|
+
total: number;
|
|
825
|
+
};
|
|
826
|
+
message: string;
|
|
827
|
+
}
|
|
828
|
+
|
|
829
|
+
interface ProductImage {
|
|
830
|
+
id: number;
|
|
831
|
+
path: string;
|
|
832
|
+
full_url: string;
|
|
833
|
+
original_name: string;
|
|
834
|
+
extension: string;
|
|
835
|
+
size: number;
|
|
836
|
+
mime_type: string;
|
|
837
|
+
width: number;
|
|
838
|
+
height: number;
|
|
839
|
+
product_id: number;
|
|
840
|
+
product: Product;
|
|
841
|
+
created_at: Date;
|
|
842
|
+
}
|
|
843
|
+
|
|
844
|
+
interface Product extends Auditable {
|
|
845
|
+
id: number;
|
|
846
|
+
name: string;
|
|
847
|
+
description?: string;
|
|
848
|
+
short_description?: string;
|
|
849
|
+
price: number;
|
|
850
|
+
stock_quantity: number;
|
|
851
|
+
slug: string;
|
|
852
|
+
sku?: string;
|
|
853
|
+
is_limited_edition: boolean;
|
|
854
|
+
deleted_at: Date | null;
|
|
855
|
+
categories?: ProductCategory[];
|
|
856
|
+
tags?: ProductTag[];
|
|
857
|
+
types?: ProductType[];
|
|
858
|
+
images?: ProductImage[];
|
|
859
|
+
}
|
|
860
|
+
|
|
861
|
+
interface ShowImage {
|
|
862
|
+
id: number;
|
|
863
|
+
path: string;
|
|
864
|
+
full_url: string;
|
|
865
|
+
original_name: string;
|
|
866
|
+
extension: string;
|
|
867
|
+
size: number;
|
|
868
|
+
mime_type: string;
|
|
869
|
+
width: number;
|
|
870
|
+
height: number;
|
|
871
|
+
show_id: number;
|
|
619
872
|
created_at: Date;
|
|
620
|
-
updated_at: Date;
|
|
621
|
-
created_by: number;
|
|
622
|
-
updated_by: number;
|
|
623
873
|
}
|
|
624
874
|
|
|
625
|
-
interface
|
|
875
|
+
interface PriceZone extends Auditable {
|
|
626
876
|
id: number;
|
|
627
877
|
name: string;
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
price: number;
|
|
631
|
-
stock_quantity: number;
|
|
632
|
-
slug: string;
|
|
633
|
-
sku?: string;
|
|
634
|
-
is_limited_edition: boolean;
|
|
878
|
+
color: string;
|
|
879
|
+
normal_price: number | null;
|
|
635
880
|
is_active: boolean;
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
types?: any[];
|
|
640
|
-
images?: any[];
|
|
881
|
+
elements: any[];
|
|
882
|
+
room_map_id: number | null;
|
|
883
|
+
room_map?: RoomMap;
|
|
641
884
|
}
|
|
642
885
|
|
|
643
886
|
interface NumerationConfig {
|
|
@@ -675,7 +918,7 @@ interface RoomMapElementTemplate {
|
|
|
675
918
|
price_zone?: PriceZone;
|
|
676
919
|
}
|
|
677
920
|
|
|
678
|
-
interface RoomMap {
|
|
921
|
+
interface RoomMap extends Auditable {
|
|
679
922
|
id: number;
|
|
680
923
|
name: string;
|
|
681
924
|
canvas_settings: {
|
|
@@ -691,8 +934,6 @@ interface RoomMap {
|
|
|
691
934
|
related_product_ids: number[];
|
|
692
935
|
products?: Product[];
|
|
693
936
|
venue_name?: string;
|
|
694
|
-
created_at: Date;
|
|
695
|
-
updated_at: Date;
|
|
696
937
|
}
|
|
697
938
|
|
|
698
939
|
interface RoomMapCanvasConfiguration {
|
|
@@ -734,7 +975,7 @@ interface ElementPropertiesTab {
|
|
|
734
975
|
elements_access: string[];
|
|
735
976
|
}
|
|
736
977
|
|
|
737
|
-
interface Performance {
|
|
978
|
+
interface Performance extends Auditable {
|
|
738
979
|
id: number;
|
|
739
980
|
start_time: Date | string;
|
|
740
981
|
end_time: Date | string;
|
|
@@ -744,8 +985,140 @@ interface Performance {
|
|
|
744
985
|
show?: Show;
|
|
745
986
|
room_map: RoomMap;
|
|
746
987
|
room_map_id: number;
|
|
747
|
-
|
|
748
|
-
|
|
988
|
+
performance_tickets?: PerformanceTicket[];
|
|
989
|
+
can_delete?: boolean;
|
|
990
|
+
can_cancel?: boolean;
|
|
991
|
+
can_modify?: boolean;
|
|
992
|
+
can_reserve?: boolean;
|
|
993
|
+
}
|
|
994
|
+
|
|
995
|
+
interface FetchShowCategoriesParams extends CommonFetchAllParams {
|
|
996
|
+
name?: string;
|
|
997
|
+
slug?: string;
|
|
998
|
+
sort_by?: 'category.id' | 'category.name' | 'category.slug' | 'category.created_at';
|
|
999
|
+
}
|
|
1000
|
+
|
|
1001
|
+
interface ShowCategory extends Auditable {
|
|
1002
|
+
id: number;
|
|
1003
|
+
name: string;
|
|
1004
|
+
slug: string;
|
|
1005
|
+
}
|
|
1006
|
+
|
|
1007
|
+
interface ShowCategoriesResponse {
|
|
1008
|
+
statusCode: number;
|
|
1009
|
+
data: {
|
|
1010
|
+
categories: ShowCategory[];
|
|
1011
|
+
total: number;
|
|
1012
|
+
};
|
|
1013
|
+
message: string;
|
|
1014
|
+
}
|
|
1015
|
+
|
|
1016
|
+
interface ShowCategoryResponse {
|
|
1017
|
+
statusCode: number;
|
|
1018
|
+
data: ShowCategory;
|
|
1019
|
+
message: string;
|
|
1020
|
+
}
|
|
1021
|
+
|
|
1022
|
+
interface FetchShowGendersParams extends CommonFetchAllParams {
|
|
1023
|
+
name?: string;
|
|
1024
|
+
slug?: string;
|
|
1025
|
+
sort_by?: 'gender.id' | 'gender.name' | 'gender.slug' | 'gender.created_at';
|
|
1026
|
+
}
|
|
1027
|
+
|
|
1028
|
+
interface ShowGender extends Auditable {
|
|
1029
|
+
id: number;
|
|
1030
|
+
name: string;
|
|
1031
|
+
slug: string;
|
|
1032
|
+
}
|
|
1033
|
+
|
|
1034
|
+
interface ShowGenderResponse {
|
|
1035
|
+
statusCode: number;
|
|
1036
|
+
data: ShowGender;
|
|
1037
|
+
message: string;
|
|
1038
|
+
}
|
|
1039
|
+
|
|
1040
|
+
interface ShowGendersResponse {
|
|
1041
|
+
statusCode: number;
|
|
1042
|
+
data: {
|
|
1043
|
+
genders: ShowGender[];
|
|
1044
|
+
total: number;
|
|
1045
|
+
};
|
|
1046
|
+
message: string;
|
|
1047
|
+
}
|
|
1048
|
+
|
|
1049
|
+
interface FetchShowTypesParams extends CommonFetchAllParams {
|
|
1050
|
+
name?: string;
|
|
1051
|
+
slug?: string;
|
|
1052
|
+
sort_by?: 'type.id' | 'type.name' | 'type.slug' | 'type.created_at';
|
|
1053
|
+
}
|
|
1054
|
+
|
|
1055
|
+
interface ShowType extends Auditable {
|
|
1056
|
+
id: number;
|
|
1057
|
+
name: string;
|
|
1058
|
+
slug: string;
|
|
1059
|
+
}
|
|
1060
|
+
|
|
1061
|
+
interface ShowTypesResponse {
|
|
1062
|
+
statusCode: number;
|
|
1063
|
+
data: {
|
|
1064
|
+
types: ShowType[];
|
|
1065
|
+
total: number;
|
|
1066
|
+
};
|
|
1067
|
+
message: string;
|
|
1068
|
+
}
|
|
1069
|
+
|
|
1070
|
+
interface ShowTypeResponse {
|
|
1071
|
+
statusCode: number;
|
|
1072
|
+
data: ShowType;
|
|
1073
|
+
message: string;
|
|
1074
|
+
}
|
|
1075
|
+
|
|
1076
|
+
interface Show extends Auditable {
|
|
1077
|
+
id: number;
|
|
1078
|
+
title: string;
|
|
1079
|
+
slug: string;
|
|
1080
|
+
description: string;
|
|
1081
|
+
duration_minutes: number | null;
|
|
1082
|
+
type_of_costs: string | null;
|
|
1083
|
+
service_fee: number | null;
|
|
1084
|
+
show_type_id?: number | null;
|
|
1085
|
+
show_type?: ShowType | null;
|
|
1086
|
+
pulep: string | null;
|
|
1087
|
+
minimum_age: number | null;
|
|
1088
|
+
show_gender?: ShowGender | null;
|
|
1089
|
+
show_gender_id: number | null;
|
|
1090
|
+
show_category?: ShowCategory | null;
|
|
1091
|
+
show_category_id: number | null;
|
|
1092
|
+
default_room_map?: RoomMap | null;
|
|
1093
|
+
default_room_map_id: number | null;
|
|
1094
|
+
is_published: boolean;
|
|
1095
|
+
images: ShowImage[];
|
|
1096
|
+
terms_and_conditions: string | null;
|
|
1097
|
+
performances_quantity?: number;
|
|
1098
|
+
performances?: Performance[];
|
|
1099
|
+
next_performance?: Performance;
|
|
1100
|
+
days_of_week?: number[];
|
|
1101
|
+
unique_start_times?: string[];
|
|
1102
|
+
}
|
|
1103
|
+
|
|
1104
|
+
interface FindAllPerformancesParams {
|
|
1105
|
+
roomMapId?: number;
|
|
1106
|
+
showId?: number;
|
|
1107
|
+
hallId?: number;
|
|
1108
|
+
page?: number;
|
|
1109
|
+
search?: string;
|
|
1110
|
+
limit?: number;
|
|
1111
|
+
}
|
|
1112
|
+
|
|
1113
|
+
interface PerformanceBookingDataResponse {
|
|
1114
|
+
statusCode: number;
|
|
1115
|
+
data: {
|
|
1116
|
+
performance: Performance;
|
|
1117
|
+
room_map: RoomMap;
|
|
1118
|
+
show: Show;
|
|
1119
|
+
tickets: PerformanceTicket[];
|
|
1120
|
+
};
|
|
1121
|
+
message: string;
|
|
749
1122
|
}
|
|
750
1123
|
|
|
751
1124
|
interface PerformanceResponse {
|
|
@@ -754,6 +1127,18 @@ interface PerformanceResponse {
|
|
|
754
1127
|
message: string;
|
|
755
1128
|
}
|
|
756
1129
|
|
|
1130
|
+
interface PerformanceAvailableDay {
|
|
1131
|
+
date: string;
|
|
1132
|
+
count: number;
|
|
1133
|
+
}
|
|
1134
|
+
interface PerformancesAvailableDaysResponse {
|
|
1135
|
+
statusCode: number;
|
|
1136
|
+
data: {
|
|
1137
|
+
days: PerformanceAvailableDay[];
|
|
1138
|
+
};
|
|
1139
|
+
message: string;
|
|
1140
|
+
}
|
|
1141
|
+
|
|
757
1142
|
interface PerformancesResponseInterface {
|
|
758
1143
|
statusCode: number;
|
|
759
1144
|
data: {
|
|
@@ -763,7 +1148,7 @@ interface PerformancesResponseInterface {
|
|
|
763
1148
|
message: string;
|
|
764
1149
|
}
|
|
765
1150
|
|
|
766
|
-
interface OrderItem {
|
|
1151
|
+
interface OrderItem extends Auditable {
|
|
767
1152
|
id: number;
|
|
768
1153
|
order: Order;
|
|
769
1154
|
item_type: OrderItemType;
|
|
@@ -772,30 +1157,26 @@ interface OrderItem {
|
|
|
772
1157
|
quantity: number;
|
|
773
1158
|
unit_price: number;
|
|
774
1159
|
normal_price: number;
|
|
775
|
-
discounted_price: number;
|
|
1160
|
+
discounted_price: number | null;
|
|
776
1161
|
ticket_id?: number;
|
|
777
1162
|
ticket_uuid?: string;
|
|
1163
|
+
ticket?: PerformanceTicket;
|
|
778
1164
|
item: Show | Product;
|
|
779
|
-
created_at: Date;
|
|
780
|
-
updated_at: Date;
|
|
781
|
-
created_by: number;
|
|
782
|
-
updated_by: number;
|
|
783
1165
|
}
|
|
784
1166
|
|
|
785
1167
|
interface Coupon extends Auditable {
|
|
786
1168
|
id: number;
|
|
787
1169
|
code: string;
|
|
1170
|
+
billing_code: string;
|
|
788
1171
|
description?: string;
|
|
789
1172
|
discount_type: CouponDiscountType;
|
|
790
|
-
discount_type_string?: string;
|
|
791
1173
|
discount_value: number;
|
|
792
|
-
discount_value_string?: string;
|
|
793
1174
|
start_date: Date | null;
|
|
794
1175
|
end_date: Date | null;
|
|
795
1176
|
max_uses: number | null;
|
|
796
|
-
|
|
1177
|
+
max_uses_per_customer?: number | null;
|
|
797
1178
|
uses_count: number;
|
|
798
|
-
|
|
1179
|
+
status: CouponStatus;
|
|
799
1180
|
applicability_type: CouponApplicability;
|
|
800
1181
|
applicable_customer_emails: string[] | null;
|
|
801
1182
|
applicable_membership_types: string[] | null;
|
|
@@ -803,9 +1184,11 @@ interface Coupon extends Auditable {
|
|
|
803
1184
|
applicable_performance_ids?: number[];
|
|
804
1185
|
applicable_price_zone_ids?: number[];
|
|
805
1186
|
applies_to_service_fee?: boolean;
|
|
1187
|
+
orders?: Order[];
|
|
1188
|
+
customers?: Customer[];
|
|
806
1189
|
}
|
|
807
1190
|
|
|
808
|
-
interface CorporateBond {
|
|
1191
|
+
interface CorporateBond extends Auditable {
|
|
809
1192
|
id: number;
|
|
810
1193
|
name: string;
|
|
811
1194
|
description?: string;
|
|
@@ -815,11 +1198,13 @@ interface CorporateBond {
|
|
|
815
1198
|
quantity: number;
|
|
816
1199
|
status: CorporateBondStatus;
|
|
817
1200
|
value: number;
|
|
1201
|
+
purchase_value: number;
|
|
1202
|
+
buyer_customer_id: number | null;
|
|
1203
|
+
buyer: Customer | null;
|
|
1204
|
+
order_id: number | null;
|
|
1205
|
+
order: Order | null;
|
|
1206
|
+
payment_method?: PaymentMethod;
|
|
818
1207
|
codes: CorporateBondCode[];
|
|
819
|
-
created_at: Date;
|
|
820
|
-
updated_at: Date;
|
|
821
|
-
created_by: number;
|
|
822
|
-
updated_by: number;
|
|
823
1208
|
}
|
|
824
1209
|
|
|
825
1210
|
interface CorporateBondCode {
|
|
@@ -828,6 +1213,7 @@ interface CorporateBondCode {
|
|
|
828
1213
|
corporate_bond_id: number;
|
|
829
1214
|
code: string;
|
|
830
1215
|
is_used: boolean;
|
|
1216
|
+
status: CorporateBondStatus;
|
|
831
1217
|
used_at: Date | null;
|
|
832
1218
|
created_at: Date;
|
|
833
1219
|
}
|
|
@@ -849,38 +1235,192 @@ interface ValidateCorporateBondResponse {
|
|
|
849
1235
|
statusCode: number;
|
|
850
1236
|
}
|
|
851
1237
|
|
|
852
|
-
interface
|
|
1238
|
+
interface GiftBondImage {
|
|
1239
|
+
id: number;
|
|
1240
|
+
path: string;
|
|
1241
|
+
full_url: string;
|
|
1242
|
+
original_name: string;
|
|
1243
|
+
extension: string;
|
|
1244
|
+
size: number;
|
|
1245
|
+
mime_type: string;
|
|
1246
|
+
width: number;
|
|
1247
|
+
height: number;
|
|
1248
|
+
is_featured: boolean;
|
|
1249
|
+
gift_bond_id: number;
|
|
1250
|
+
gift_bond: GiftBond;
|
|
1251
|
+
created_at: Date;
|
|
1252
|
+
}
|
|
1253
|
+
|
|
1254
|
+
interface GiftBond extends Auditable {
|
|
1255
|
+
id: number;
|
|
1256
|
+
name: string;
|
|
1257
|
+
description?: string;
|
|
1258
|
+
slug?: string;
|
|
1259
|
+
status: GiftBondStatus;
|
|
1260
|
+
value: number;
|
|
1261
|
+
duration_days: number;
|
|
1262
|
+
page_content?: string;
|
|
1263
|
+
purchases_total?: number;
|
|
1264
|
+
purchases_redeemed?: number;
|
|
1265
|
+
images?: GiftBondImage[];
|
|
1266
|
+
}
|
|
1267
|
+
|
|
1268
|
+
interface GiftBondResponse {
|
|
1269
|
+
statusCode: number;
|
|
1270
|
+
data: GiftBond;
|
|
1271
|
+
message: string;
|
|
1272
|
+
}
|
|
1273
|
+
|
|
1274
|
+
interface GiftBondsResponse {
|
|
1275
|
+
statusCode: number;
|
|
1276
|
+
data: {
|
|
1277
|
+
gift_bonds: GiftBond[];
|
|
1278
|
+
total: number;
|
|
1279
|
+
};
|
|
1280
|
+
message: string;
|
|
1281
|
+
}
|
|
1282
|
+
|
|
1283
|
+
interface GiftBondPurchase extends Auditable {
|
|
1284
|
+
id: number;
|
|
1285
|
+
code: string;
|
|
1286
|
+
original_value: number;
|
|
1287
|
+
used_value: number | null;
|
|
1288
|
+
lost_value: number | null;
|
|
1289
|
+
beneficiary_email: string;
|
|
1290
|
+
beneficiary: Customer | null;
|
|
1291
|
+
personalized_message: string | null;
|
|
1292
|
+
status: GiftBondPurchaseStatus;
|
|
1293
|
+
purchased_at: string;
|
|
1294
|
+
expires_at: string;
|
|
1295
|
+
redeemed_at: string | null;
|
|
1296
|
+
gift_bond?: GiftBond;
|
|
1297
|
+
gift_bond_id: number;
|
|
1298
|
+
buyer_customer_id: number;
|
|
1299
|
+
buyer: Customer;
|
|
1300
|
+
order: Order | null;
|
|
1301
|
+
order_id: number;
|
|
1302
|
+
redemption_order_id: number | null;
|
|
1303
|
+
redemption_order: Order | null;
|
|
1304
|
+
}
|
|
1305
|
+
|
|
1306
|
+
interface ValidateGiftBondResponse {
|
|
1307
|
+
data: {
|
|
1308
|
+
valid: boolean;
|
|
1309
|
+
message: string;
|
|
1310
|
+
code: string;
|
|
1311
|
+
bond?: GiftBondPurchase;
|
|
1312
|
+
};
|
|
1313
|
+
statusCode: number;
|
|
1314
|
+
message: string;
|
|
1315
|
+
}
|
|
1316
|
+
|
|
1317
|
+
interface GiftBondPurchaseResponse {
|
|
1318
|
+
statusCode: number;
|
|
1319
|
+
data: GiftBondPurchase;
|
|
1320
|
+
message: string;
|
|
1321
|
+
}
|
|
1322
|
+
|
|
1323
|
+
interface GiftBondPurchasesResponse {
|
|
1324
|
+
statusCode: number;
|
|
1325
|
+
data: {
|
|
1326
|
+
items: GiftBondPurchase[];
|
|
1327
|
+
total: number;
|
|
1328
|
+
};
|
|
1329
|
+
message: string;
|
|
1330
|
+
}
|
|
1331
|
+
|
|
1332
|
+
interface Transaction extends Auditable {
|
|
1333
|
+
id: number;
|
|
1334
|
+
status: TransactionStatus;
|
|
1335
|
+
amount: number;
|
|
1336
|
+
currency: string;
|
|
1337
|
+
payment_gateway: string;
|
|
1338
|
+
gateway_transaction_id: string;
|
|
1339
|
+
gateway_response: any;
|
|
1340
|
+
order: Order;
|
|
1341
|
+
}
|
|
1342
|
+
|
|
1343
|
+
interface OrderBillingInfo {
|
|
1344
|
+
first_name: string;
|
|
1345
|
+
last_name: string;
|
|
1346
|
+
email: string;
|
|
1347
|
+
mobile: string;
|
|
1348
|
+
document_type: string;
|
|
1349
|
+
document_number: string;
|
|
1350
|
+
address: string;
|
|
1351
|
+
city_id: number;
|
|
1352
|
+
postal_code?: string;
|
|
1353
|
+
address_notes?: string;
|
|
1354
|
+
payment_method: PaymentMethod;
|
|
1355
|
+
terms_accepted: boolean;
|
|
1356
|
+
data_processing_accepted: boolean;
|
|
1357
|
+
comments?: string;
|
|
1358
|
+
products?: Array<{
|
|
1359
|
+
id: number;
|
|
1360
|
+
quantity: number;
|
|
1361
|
+
}>;
|
|
1362
|
+
}
|
|
1363
|
+
|
|
1364
|
+
interface OrderShowSnapshot {
|
|
1365
|
+
id: number;
|
|
1366
|
+
title: string;
|
|
1367
|
+
description: string | null;
|
|
1368
|
+
service_fee: number | null;
|
|
1369
|
+
}
|
|
1370
|
+
|
|
1371
|
+
interface OrderPerformanceSnapshot {
|
|
1372
|
+
id: number;
|
|
1373
|
+
start_time: Performance['start_time'];
|
|
1374
|
+
end_time: Performance['end_time'];
|
|
1375
|
+
published: boolean;
|
|
1376
|
+
status: PerformanceStatus;
|
|
1377
|
+
}
|
|
1378
|
+
|
|
1379
|
+
interface Order extends Auditable {
|
|
853
1380
|
id: number;
|
|
854
1381
|
uuid: string;
|
|
855
|
-
|
|
1382
|
+
customer_id: number | null;
|
|
1383
|
+
customer: Customer | null;
|
|
856
1384
|
customer_name?: string;
|
|
857
1385
|
customer_email?: string;
|
|
858
1386
|
order_items: OrderItem[];
|
|
859
1387
|
order_items_quantity?: number;
|
|
860
|
-
|
|
1388
|
+
transactions: Transaction[];
|
|
1389
|
+
sub_total: number;
|
|
1390
|
+
discount_amount: number | null;
|
|
861
1391
|
total: number;
|
|
1392
|
+
sub_total_discounted: number | null;
|
|
862
1393
|
total_discounted: number;
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
coupon: Coupon;
|
|
868
|
-
coupon_snapshot: Record<string, any>;
|
|
869
|
-
corporate_bond_code: CorporateBondCode;
|
|
870
|
-
corporate_bond_code_snapshot: Record<string, any>;
|
|
1394
|
+
service_fee: number | null;
|
|
1395
|
+
service_fee_discounted: number | null;
|
|
1396
|
+
coupon: Coupon | null;
|
|
1397
|
+
coupon_snapshot: Record<string, any> | null;
|
|
871
1398
|
status: OrderStatus;
|
|
872
|
-
show_snapshot:
|
|
873
|
-
performance_snapshot:
|
|
874
|
-
|
|
875
|
-
updated_at: Date;
|
|
876
|
-
payment_method: string;
|
|
1399
|
+
show_snapshot: OrderShowSnapshot | null;
|
|
1400
|
+
performance_snapshot: OrderPerformanceSnapshot | null;
|
|
1401
|
+
payment_method: PaymentMethod | null;
|
|
877
1402
|
terms_accepted: boolean;
|
|
878
1403
|
data_processing_accepted: boolean;
|
|
879
|
-
billing_info:
|
|
880
|
-
|
|
881
|
-
|
|
1404
|
+
billing_info: OrderBillingInfo | null;
|
|
1405
|
+
corporate_bond_code_snapshot: Record<string, any> | null;
|
|
1406
|
+
gift_bond_snapshot: Record<string, any> | null;
|
|
1407
|
+
corporate_bond_code: CorporateBondCode | null;
|
|
1408
|
+
corporate_bond_code_id: number | null;
|
|
1409
|
+
gift_bond: GiftBond | null;
|
|
1410
|
+
gift_bond_id: number | null;
|
|
1411
|
+
/** Snapshot de la Tarjeta VIP usada como método de pago (VIP_BALANCE). */
|
|
1412
|
+
vip_snapshot: Record<string, any> | null;
|
|
1413
|
+
vip_card_id: number | null;
|
|
1414
|
+
/** Snapshot del Abono (subscription) usado para redimir la boleta. */
|
|
1415
|
+
subscription_snapshot: Record<string, any> | null;
|
|
1416
|
+
subscription_id: number | null;
|
|
1417
|
+
comments: string | null;
|
|
1418
|
+
address_notes: string | null;
|
|
1419
|
+
mercado_pago_preference_id: string;
|
|
882
1420
|
created_by: number;
|
|
1421
|
+
created_by_type: CreatorType;
|
|
883
1422
|
updated_by: number;
|
|
1423
|
+
updated_by_type: CreatorType;
|
|
884
1424
|
}
|
|
885
1425
|
|
|
886
1426
|
interface OrderResponse {
|
|
@@ -898,7 +1438,15 @@ interface OrdersResponse {
|
|
|
898
1438
|
message: string;
|
|
899
1439
|
}
|
|
900
1440
|
|
|
901
|
-
interface
|
|
1441
|
+
interface MercadoPagoPreference {
|
|
1442
|
+
data: {
|
|
1443
|
+
id: string;
|
|
1444
|
+
init_point: string;
|
|
1445
|
+
sandbox_init_point: string;
|
|
1446
|
+
};
|
|
1447
|
+
}
|
|
1448
|
+
|
|
1449
|
+
interface PerformanceTicket extends Auditable {
|
|
902
1450
|
id: number;
|
|
903
1451
|
uuid: string;
|
|
904
1452
|
is_accessible: boolean;
|
|
@@ -912,35 +1460,181 @@ interface PerformanceTicket {
|
|
|
912
1460
|
presale_price: number | null;
|
|
913
1461
|
status: PerformanceTicketStatus;
|
|
914
1462
|
reserved_until: Date | null;
|
|
1463
|
+
reserved_by_type: CreatorType | null;
|
|
1464
|
+
reserved_by: number | null;
|
|
1465
|
+
reserved_by_admin: Admin | null;
|
|
1466
|
+
reserved_by_customer: number | null;
|
|
1467
|
+
reserved_customer: Customer | null;
|
|
1468
|
+
order: Order | null;
|
|
915
1469
|
order_id: number | null;
|
|
916
1470
|
customer_id: number | null;
|
|
917
1471
|
checked_in: boolean;
|
|
918
1472
|
checked_in_at: Date | null;
|
|
1473
|
+
checked_in_by: number | null;
|
|
1474
|
+
checked_in_by_admin: Admin | null;
|
|
919
1475
|
order_items: OrderItem[];
|
|
920
1476
|
element_qty?: number;
|
|
921
|
-
|
|
922
|
-
|
|
1477
|
+
blocked_at: Date | null;
|
|
1478
|
+
blocked_by: number | null;
|
|
1479
|
+
blocked_by_admin: Admin | null;
|
|
1480
|
+
}
|
|
1481
|
+
|
|
1482
|
+
interface TicketMapSeatPosition {
|
|
1483
|
+
rowIndex: number;
|
|
1484
|
+
colIndex: number;
|
|
1485
|
+
seatLabel: string;
|
|
1486
|
+
}
|
|
1487
|
+
|
|
1488
|
+
interface TicketMapTableChairPosition {
|
|
1489
|
+
index: number;
|
|
1490
|
+
angle: number;
|
|
1491
|
+
x: number;
|
|
1492
|
+
y: number;
|
|
1493
|
+
}
|
|
1494
|
+
|
|
1495
|
+
interface ElementRenderData {
|
|
1496
|
+
elementId: number;
|
|
1497
|
+
hallFloorId: number | null;
|
|
1498
|
+
type: RoomMapElementType;
|
|
1499
|
+
shapeConfig: Record<string, any>;
|
|
1500
|
+
tickets: PerformanceTicket[];
|
|
1501
|
+
ticketByNumeration: Map<string, PerformanceTicket>;
|
|
1502
|
+
elementName: string;
|
|
1503
|
+
seatPositions?: TicketMapSeatPosition[][];
|
|
1504
|
+
chairPositions?: TicketMapTableChairPosition[];
|
|
1505
|
+
zoneCapacity?: number;
|
|
1506
|
+
}
|
|
1507
|
+
|
|
1508
|
+
interface TicketMapTooltipData {
|
|
1509
|
+
x: number;
|
|
1510
|
+
y: number;
|
|
1511
|
+
elementName: string;
|
|
1512
|
+
seatLabel: string | null;
|
|
1513
|
+
price: number;
|
|
1514
|
+
status: PerformanceTicketStatus;
|
|
1515
|
+
statusLabel: string;
|
|
1516
|
+
statusColor: string;
|
|
1517
|
+
isSelected: boolean;
|
|
1518
|
+
ticketId: number;
|
|
1519
|
+
}
|
|
1520
|
+
|
|
1521
|
+
interface TicketMapZoneQuantityState {
|
|
1522
|
+
elementId: number;
|
|
1523
|
+
selectedCount: number;
|
|
1524
|
+
maxCapacity: number;
|
|
1525
|
+
}
|
|
1526
|
+
|
|
1527
|
+
interface ReservePerformanceDto {
|
|
1528
|
+
ticket_ids: number[];
|
|
1529
|
+
products?: {
|
|
1530
|
+
id: number;
|
|
1531
|
+
quantity: number;
|
|
1532
|
+
}[];
|
|
1533
|
+
coupon_code?: string;
|
|
1534
|
+
gift_bond_code?: string;
|
|
1535
|
+
corporate_bond_code?: string;
|
|
1536
|
+
payment_method?: string;
|
|
1537
|
+
billing?: {
|
|
1538
|
+
first_name: string;
|
|
1539
|
+
last_name: string;
|
|
1540
|
+
email: string;
|
|
1541
|
+
mobile: string;
|
|
1542
|
+
document_type: string;
|
|
1543
|
+
document_number: string;
|
|
1544
|
+
address: string;
|
|
1545
|
+
city_id: number;
|
|
1546
|
+
postal_code?: string;
|
|
1547
|
+
address_notes?: string;
|
|
1548
|
+
terms_accepted: boolean;
|
|
1549
|
+
data_processing_accepted: boolean;
|
|
1550
|
+
comments?: string;
|
|
1551
|
+
};
|
|
1552
|
+
}
|
|
1553
|
+
|
|
1554
|
+
interface TicketMapZoomConfig {
|
|
1555
|
+
minZoom: number;
|
|
1556
|
+
maxZoom: number;
|
|
1557
|
+
zoomStep: number;
|
|
1558
|
+
scaleBy: number;
|
|
1559
|
+
}
|
|
1560
|
+
|
|
1561
|
+
interface HallFloorOption {
|
|
1562
|
+
id: number | null;
|
|
1563
|
+
name: string;
|
|
1564
|
+
}
|
|
1565
|
+
|
|
1566
|
+
declare enum SelectedDiscountCardType {
|
|
1567
|
+
COUPON = "COUPON",
|
|
1568
|
+
CORPORATE_BOND = "CORPORATE_BOND",
|
|
1569
|
+
GIFT_BOND = "GIFT_BOND",
|
|
1570
|
+
VIP = "VIP",
|
|
1571
|
+
SUBSCRIPTION = "SUBSCRIPTION"
|
|
1572
|
+
}
|
|
1573
|
+
|
|
1574
|
+
interface SelectedDiscountCard {
|
|
1575
|
+
name: string;
|
|
1576
|
+
type: SelectedDiscountCardType;
|
|
1577
|
+
value: number;
|
|
1578
|
+
discountType: 'percentage' | 'fixed';
|
|
1579
|
+
/**
|
|
1580
|
+
* Si el descuento seleccionado exonera la tarifa de servicio (Tarjeta
|
|
1581
|
+
* VIP o Abono, según su `service_fee_exempt`).
|
|
1582
|
+
*/
|
|
1583
|
+
serviceFeeExempt?: boolean;
|
|
1584
|
+
}
|
|
1585
|
+
|
|
1586
|
+
/** Forma compacta de un ticket recibida por SSE (ver
|
|
1587
|
+
* SeatAvailabilitySseService) — sin relaciones, solo lo necesario para
|
|
1588
|
+
* repintar el mapa y validar disponibilidad en el cliente. */
|
|
1589
|
+
interface SeatStatusUpdate {
|
|
1590
|
+
id: number;
|
|
1591
|
+
status: PerformanceTicketStatus;
|
|
1592
|
+
room_map_element_id: number;
|
|
1593
|
+
reserved_until: Date | null;
|
|
1594
|
+
}
|
|
1595
|
+
type SeatEventMessage = {
|
|
1596
|
+
type: 'snapshot';
|
|
1597
|
+
performance_id: number;
|
|
1598
|
+
tickets: SeatStatusUpdate[];
|
|
1599
|
+
ts: number;
|
|
1600
|
+
} | {
|
|
1601
|
+
type: 'heartbeat';
|
|
1602
|
+
ts: number;
|
|
1603
|
+
};
|
|
1604
|
+
|
|
1605
|
+
interface AdmissionStatus {
|
|
1606
|
+
active: boolean;
|
|
1607
|
+
position: number | null;
|
|
1608
|
+
}
|
|
1609
|
+
interface AdmissionJoinResponse extends AdmissionStatus {
|
|
1610
|
+
ticket: string;
|
|
1611
|
+
expires_in: number;
|
|
1612
|
+
}
|
|
1613
|
+
type AdmissionEventMessage = ({
|
|
1614
|
+
type: 'status';
|
|
1615
|
+
} & AdmissionStatus & {
|
|
1616
|
+
ts: number;
|
|
1617
|
+
}) | {
|
|
1618
|
+
type: 'heartbeat';
|
|
1619
|
+
ts: number;
|
|
1620
|
+
};
|
|
1621
|
+
|
|
1622
|
+
interface FetchShowsParams extends CommonFetchAllParams {
|
|
1623
|
+
date?: string;
|
|
1624
|
+
sort_by?: 'show.id' | 'show.created_at' | 'show.title' | 'show.slug' | 'show.type_of_costs' | 'show.pulep' | 'show_category.name' | 'show_gender.name';
|
|
923
1625
|
}
|
|
924
1626
|
|
|
925
|
-
interface
|
|
1627
|
+
interface ShowResponse {
|
|
926
1628
|
statusCode: number;
|
|
927
|
-
data:
|
|
928
|
-
performance: Performance;
|
|
929
|
-
room_map: RoomMap;
|
|
930
|
-
show: Show;
|
|
931
|
-
tickets: PerformanceTicket[];
|
|
932
|
-
};
|
|
1629
|
+
data: Show;
|
|
933
1630
|
message: string;
|
|
934
1631
|
}
|
|
935
1632
|
|
|
936
|
-
interface
|
|
937
|
-
date: string;
|
|
938
|
-
count: number;
|
|
939
|
-
}
|
|
940
|
-
interface PerformancesAvailableDaysResponse {
|
|
1633
|
+
interface ShowsResponseInterface {
|
|
941
1634
|
statusCode: number;
|
|
942
1635
|
data: {
|
|
943
|
-
|
|
1636
|
+
shows: Show[];
|
|
1637
|
+
total: number;
|
|
944
1638
|
};
|
|
945
1639
|
message: string;
|
|
946
1640
|
}
|
|
@@ -997,12 +1691,31 @@ interface FetchDailyPerformancesParams {
|
|
|
997
1691
|
limit?: number;
|
|
998
1692
|
}
|
|
999
1693
|
|
|
1694
|
+
interface FetchProductsParams extends CommonFetchAllParams {
|
|
1695
|
+
name?: string;
|
|
1696
|
+
category_id?: number;
|
|
1697
|
+
tag_id?: number;
|
|
1698
|
+
type_id?: number;
|
|
1699
|
+
min_price?: number;
|
|
1700
|
+
max_price?: number;
|
|
1701
|
+
min_stock?: number;
|
|
1702
|
+
max_stock?: number;
|
|
1703
|
+
sort_by?: 'product.id' | 'product.name' | 'product.price' | 'product.stock_quantity' | 'product.slug' | 'product.sku' | 'product.created_at' | 'category.name' | 'tag.name' | 'type.name';
|
|
1704
|
+
}
|
|
1705
|
+
|
|
1000
1706
|
interface ProductResponse {
|
|
1001
1707
|
statusCode: number;
|
|
1002
1708
|
data: Product;
|
|
1003
1709
|
message: string;
|
|
1004
1710
|
}
|
|
1005
1711
|
|
|
1712
|
+
interface ProductTaxonomy extends Auditable {
|
|
1713
|
+
id: number;
|
|
1714
|
+
name: string;
|
|
1715
|
+
slug: string;
|
|
1716
|
+
selected?: boolean;
|
|
1717
|
+
}
|
|
1718
|
+
|
|
1006
1719
|
interface ProductsResponseInterface {
|
|
1007
1720
|
statusCode: number;
|
|
1008
1721
|
data: {
|
|
@@ -1037,7 +1750,8 @@ interface PriceZonesResponseInterface {
|
|
|
1037
1750
|
}
|
|
1038
1751
|
|
|
1039
1752
|
interface FindAllPriceZoneParams {
|
|
1040
|
-
|
|
1753
|
+
room_map_id?: number;
|
|
1754
|
+
show_ids?: number[];
|
|
1041
1755
|
page?: number;
|
|
1042
1756
|
search?: string;
|
|
1043
1757
|
limit?: number;
|
|
@@ -1056,22 +1770,282 @@ interface ValidateCouponResponse {
|
|
|
1056
1770
|
};
|
|
1057
1771
|
}
|
|
1058
1772
|
|
|
1773
|
+
interface RecentOrder {
|
|
1774
|
+
id: number;
|
|
1775
|
+
customer_name: string;
|
|
1776
|
+
event: string;
|
|
1777
|
+
total: number;
|
|
1778
|
+
status: string;
|
|
1779
|
+
uuid: string;
|
|
1780
|
+
}
|
|
1781
|
+
|
|
1782
|
+
interface RecentRoomMap {
|
|
1783
|
+
id: number;
|
|
1784
|
+
name: string;
|
|
1785
|
+
capacity: number;
|
|
1786
|
+
created_at: Date;
|
|
1787
|
+
updated_at: Date;
|
|
1788
|
+
}
|
|
1789
|
+
|
|
1790
|
+
interface QrTokenData {
|
|
1791
|
+
token: string;
|
|
1792
|
+
expires_at: string;
|
|
1793
|
+
refresh_in: number;
|
|
1794
|
+
}
|
|
1795
|
+
|
|
1796
|
+
interface QrTokenResponse {
|
|
1797
|
+
statusCode: number;
|
|
1798
|
+
data: QrTokenData;
|
|
1799
|
+
message: string;
|
|
1800
|
+
}
|
|
1801
|
+
|
|
1802
|
+
interface VipCategorySnapshot {
|
|
1803
|
+
membership_id: number;
|
|
1804
|
+
name: string;
|
|
1805
|
+
discount_percentage: number;
|
|
1806
|
+
service_fee_exempt: boolean;
|
|
1807
|
+
applicable_show_ids: number[] | null;
|
|
1808
|
+
excluded_show_ids: number[] | null;
|
|
1809
|
+
duration_days: number;
|
|
1810
|
+
}
|
|
1811
|
+
|
|
1812
|
+
interface VipCard extends Auditable {
|
|
1813
|
+
id: number;
|
|
1814
|
+
uuid: string;
|
|
1815
|
+
customer: Customer;
|
|
1816
|
+
customer_id: number;
|
|
1817
|
+
membership: {
|
|
1818
|
+
id: number;
|
|
1819
|
+
name: string;
|
|
1820
|
+
} | null;
|
|
1821
|
+
membership_id: number;
|
|
1822
|
+
category_snapshot: VipCategorySnapshot;
|
|
1823
|
+
balance: number;
|
|
1824
|
+
status: VipCardStatus;
|
|
1825
|
+
activated_at: string | null;
|
|
1826
|
+
last_activity_at: string | null;
|
|
1827
|
+
expires_at: string | null;
|
|
1828
|
+
last_low_balance_alert_at: string | null;
|
|
1829
|
+
last_expiry_alert_at: string | null;
|
|
1830
|
+
}
|
|
1831
|
+
|
|
1832
|
+
interface VipTransaction {
|
|
1833
|
+
id: number;
|
|
1834
|
+
uuid: string;
|
|
1835
|
+
vip_card_id: number;
|
|
1836
|
+
type: VipTransactionType;
|
|
1837
|
+
amount: number;
|
|
1838
|
+
balance_before: number;
|
|
1839
|
+
balance_after: number;
|
|
1840
|
+
order: Order | null;
|
|
1841
|
+
order_id: number | null;
|
|
1842
|
+
description: string | null;
|
|
1843
|
+
created_at: string;
|
|
1844
|
+
}
|
|
1845
|
+
|
|
1846
|
+
interface VipCardResponse {
|
|
1847
|
+
data: VipCard;
|
|
1848
|
+
}
|
|
1849
|
+
interface VipCardsResponse {
|
|
1850
|
+
data: {
|
|
1851
|
+
vip_cards: VipCard[];
|
|
1852
|
+
total: number;
|
|
1853
|
+
};
|
|
1854
|
+
}
|
|
1855
|
+
interface VipTransactionsResponse {
|
|
1856
|
+
data: {
|
|
1857
|
+
transactions: VipTransaction[];
|
|
1858
|
+
total: number;
|
|
1859
|
+
};
|
|
1860
|
+
}
|
|
1861
|
+
interface VipOrderResponse {
|
|
1862
|
+
data: Order;
|
|
1863
|
+
}
|
|
1864
|
+
|
|
1865
|
+
interface Membership extends Auditable {
|
|
1866
|
+
id: number;
|
|
1867
|
+
name: string;
|
|
1868
|
+
description: string;
|
|
1869
|
+
benefits: string[] | null;
|
|
1870
|
+
price: number;
|
|
1871
|
+
duration_days: number;
|
|
1872
|
+
min_recharge: number;
|
|
1873
|
+
status: MembershipStatus;
|
|
1874
|
+
discount_percentage: number;
|
|
1875
|
+
service_fee_exempt: boolean;
|
|
1876
|
+
applicable_show_ids: number[] | null;
|
|
1877
|
+
excluded_show_ids: number[] | null;
|
|
1878
|
+
}
|
|
1879
|
+
|
|
1880
|
+
interface FetchVipCardsParams extends CommonFetchAllParams {
|
|
1881
|
+
status?: VipCardStatus;
|
|
1882
|
+
membership_id?: number;
|
|
1883
|
+
customer_id?: number;
|
|
1884
|
+
sort_by?: 'vip_card.id' | 'vip_card.uuid' | 'vip_card.customer_id' | 'vip_card.membership_id' | 'vip_card.balance' | 'vip_card.status' | 'vip_card.activated_at' | 'vip_card.last_activity_at' | 'vip_card.expires_at' | 'vip_card.last_low_balance_alert_at' | 'vip_card.last_expiry_alert_at' | 'vip_card.created_at' | 'vip_card.updated_at';
|
|
1885
|
+
}
|
|
1886
|
+
|
|
1887
|
+
interface ActivateVipCardParams {
|
|
1888
|
+
customer_id: number;
|
|
1889
|
+
membership_id: number;
|
|
1890
|
+
amount: number;
|
|
1891
|
+
payment_method?: string | null;
|
|
1892
|
+
terms_accepted: boolean;
|
|
1893
|
+
data_processing_accepted: boolean;
|
|
1894
|
+
}
|
|
1895
|
+
|
|
1896
|
+
interface VipRechargeConfirmPayload {
|
|
1897
|
+
amount: number;
|
|
1898
|
+
payment_method: string;
|
|
1899
|
+
terms_accepted: boolean;
|
|
1900
|
+
data_processing_accepted: boolean;
|
|
1901
|
+
}
|
|
1902
|
+
|
|
1903
|
+
declare const DOCUMENT_TYPES_OPTIONS: SelectOption[];
|
|
1904
|
+
|
|
1905
|
+
declare const PAYMENT_METHODS_OPTIONS: SelectOption[];
|
|
1906
|
+
declare const ORDER_STATUS_COLORS: Record<OrderStatus, {
|
|
1907
|
+
text: string;
|
|
1908
|
+
bg: string;
|
|
1909
|
+
}>;
|
|
1910
|
+
declare const ORDER_ITEM_TYPES_COLORS: Record<OrderItemType, {
|
|
1911
|
+
text: string;
|
|
1912
|
+
bg: string;
|
|
1913
|
+
}>;
|
|
1914
|
+
declare const ORDER_DISCOUNT_COLORS: Record<string, {
|
|
1915
|
+
text: string;
|
|
1916
|
+
bg: string;
|
|
1917
|
+
}>;
|
|
1918
|
+
declare const TRANSACTION_STATUS_COLORS: Record<TransactionStatus, {
|
|
1919
|
+
text: string;
|
|
1920
|
+
bg: string;
|
|
1921
|
+
}>;
|
|
1922
|
+
|
|
1923
|
+
declare const PERFORMANCE_TICKET_STATUS_COLORS: Record<PerformanceTicketStatus, {
|
|
1924
|
+
text: string;
|
|
1925
|
+
bg: string;
|
|
1926
|
+
}>;
|
|
1927
|
+
declare const PERFORMANCE_STATUS_COLORS: Record<PerformanceStatus, {
|
|
1928
|
+
text: string;
|
|
1929
|
+
bg: string;
|
|
1930
|
+
}>;
|
|
1931
|
+
|
|
1932
|
+
declare const TICKET_MAP_LAST_TICKETS_LIMIT = 10;
|
|
1933
|
+
declare const TICKET_ELEMENT_TYPES: RoomMapElementType[];
|
|
1934
|
+
declare const DEFAULT_STAGE_CONFIG: {
|
|
1935
|
+
[x: string]: any;
|
|
1936
|
+
};
|
|
1937
|
+
declare const TICKET_STATUS_COLORS: Record<PerformanceTicketStatus, string>;
|
|
1938
|
+
declare const TICKET_STATUS_FILLS: Record<PerformanceTicketStatus, string>;
|
|
1939
|
+
declare const TICKET_STATUS_LABELS: Record<PerformanceTicketStatus, string>;
|
|
1940
|
+
declare const TICKET_MAP_GRID_SIZE = 30;
|
|
1941
|
+
declare const TICKET_MAP_TITLE_HEIGHT = 30;
|
|
1942
|
+
declare const TICKET_MAP_FLOOR_HOVER_OPACITY = 0.25;
|
|
1943
|
+
declare const TICKET_MAP_FLOOR_HOVER_FADE_MS = 150;
|
|
1944
|
+
|
|
1945
|
+
interface KonvaShapeConfig {
|
|
1946
|
+
config: ShapeConfig;
|
|
1947
|
+
layer: 'background' | 'elements' | 'foreground' | 'overlay';
|
|
1948
|
+
}
|
|
1949
|
+
|
|
1950
|
+
declare function drawRoundedRect(con: Context, shape: Shape, x: number, y: number, width: number, height: number, cornerRadius: number): void;
|
|
1951
|
+
|
|
1952
|
+
declare const generateExitScene: (con: Context, shape: Shape) => void;
|
|
1953
|
+
|
|
1954
|
+
declare const generateHallwayScene: (con: Context, shape: Shape) => void;
|
|
1955
|
+
|
|
1956
|
+
declare const generateProductionAreaScene: (con: Context, shape: Shape) => void;
|
|
1957
|
+
|
|
1958
|
+
declare const generateSeatBlockScene: (con: Context, shape: Shape, numerationConfig?: {
|
|
1959
|
+
start_row_letter: string;
|
|
1960
|
+
row_order: "TOP_TO_BOTTOM" | "BOTTOM_TO_TOP";
|
|
1961
|
+
start_column_number: number;
|
|
1962
|
+
column_order: "LEFT_TO_RIGHT" | "RIGHT_TO_LEFT";
|
|
1963
|
+
}) => void;
|
|
1964
|
+
|
|
1965
|
+
declare const generateStageScene: (con: Context, shape: Shape) => void;
|
|
1966
|
+
|
|
1967
|
+
declare const generateStairScene: (con: Context, shape: Shape) => void;
|
|
1968
|
+
|
|
1969
|
+
declare const generateTableScene: (con: Context, shape: Shape) => void;
|
|
1970
|
+
|
|
1971
|
+
declare const generateUnavailableSpaceScene: (con: Context, shape: Shape) => void;
|
|
1972
|
+
|
|
1973
|
+
declare const generateZoneScene: (con: Context, shape: Shape) => void;
|
|
1974
|
+
|
|
1975
|
+
declare const KONVA_SHAPE_MAPPINGS: Record<RoomMapElementType, KonvaShapeConfig>;
|
|
1976
|
+
|
|
1059
1977
|
declare const getCustomerFullname: (customer: Customer) => string;
|
|
1060
1978
|
|
|
1979
|
+
declare const getAdminFullname: (admin: Admin) => string;
|
|
1980
|
+
|
|
1981
|
+
type OrderDiscountType = 'coupon' | 'corporate_bond' | 'gift_bond' | 'vip' | 'subscription';
|
|
1982
|
+
interface OrderDiscountInfo {
|
|
1983
|
+
type: OrderDiscountType | null;
|
|
1984
|
+
code: string | null;
|
|
1985
|
+
name: string | null;
|
|
1986
|
+
value: number;
|
|
1987
|
+
discountType: 'percentage' | 'fixed' | null;
|
|
1988
|
+
icon: string;
|
|
1989
|
+
/**
|
|
1990
|
+
* true cuando esta fuente de descuento tambien exonero la tarifa de
|
|
1991
|
+
* servicio de la orden (VIP/Abono con `service_fee_exempt`).
|
|
1992
|
+
*/
|
|
1993
|
+
serviceFeeExempt: boolean;
|
|
1994
|
+
}
|
|
1995
|
+
declare function getOrderDiscount(order: Order): OrderDiscountInfo;
|
|
1996
|
+
|
|
1061
1997
|
declare function parseJsonToFormDataAdvanced(imageGallery: any[]): FormData;
|
|
1062
1998
|
|
|
1063
1999
|
declare const transformImageToFile: (image: ShowImage | VenueImage) => UploadedFile;
|
|
1064
2000
|
|
|
2001
|
+
declare const transformUrlParams: (params: any) => URLSearchParams;
|
|
2002
|
+
|
|
1065
2003
|
declare const formatCitiesResponseToSelect: (res: CitiesResponse) => {
|
|
1066
|
-
value:
|
|
2004
|
+
value: number;
|
|
1067
2005
|
label: string;
|
|
1068
2006
|
}[];
|
|
1069
2007
|
|
|
2008
|
+
declare function tintColor(hex: string, amount?: number): string;
|
|
2009
|
+
|
|
2010
|
+
declare const drawChairIcon: (con: Context, cx: number, cy: number, size: number) => void;
|
|
2011
|
+
|
|
2012
|
+
declare const drawHappyFace: (con: Context, cx: number, cy: number, size: number) => void;
|
|
2013
|
+
|
|
2014
|
+
declare const drawWheelchairIcon: (con: Context, shape: Shape, cx: number, cy: number, size: number, fillColor?: string, strokeColor?: string) => void;
|
|
2015
|
+
|
|
2016
|
+
declare const numberToLetter: (num: number) => string;
|
|
2017
|
+
|
|
2018
|
+
declare const getItemTypeIcon: (ticket: PerformanceTicket) => string;
|
|
2019
|
+
|
|
2020
|
+
declare const generateSeatBlockTicketScene: (con: Context, shape: Shape, numerationConfig?: {
|
|
2021
|
+
start_row_letter: string;
|
|
2022
|
+
row_order: "TOP_TO_BOTTOM" | "BOTTOM_TO_TOP";
|
|
2023
|
+
start_column_number: number;
|
|
2024
|
+
column_order: "LEFT_TO_RIGHT" | "RIGHT_TO_LEFT";
|
|
2025
|
+
}, ticketStatusMap?: Map<string, PerformanceTicketStatus>) => void;
|
|
2026
|
+
|
|
2027
|
+
declare const generateTableTicketScene: (con: Context, shape: Shape, chairTicketStatuses?: PerformanceTicketStatus[], tableSeats?: RoomMapSeatState[][]) => void;
|
|
2028
|
+
|
|
2029
|
+
declare function processElementsToRenderData(elements: RoomMapElementTemplate[], tickets: PerformanceTicket[], priceZones?: {
|
|
2030
|
+
id: number;
|
|
2031
|
+
color: string;
|
|
2032
|
+
}[]): ElementRenderData[];
|
|
2033
|
+
declare function findTicketAtPosition(renderData: ElementRenderData, relX: number, relY: number): PerformanceTicket | null;
|
|
2034
|
+
declare function findElementAtPosition(renderDataList: ElementRenderData[], stageX: number, stageY: number): {
|
|
2035
|
+
element: ElementRenderData;
|
|
2036
|
+
relX: number;
|
|
2037
|
+
relY: number;
|
|
2038
|
+
} | null;
|
|
2039
|
+
|
|
2040
|
+
declare const ticketCanOpenQr: (order: Order, ticket: PerformanceTicket) => boolean;
|
|
2041
|
+
|
|
1070
2042
|
declare function MinTodayValidator(controlName: string): ValidatorFn;
|
|
1071
2043
|
declare function EndDateGreaterThanStartValidator(startDateControlName: string, endDateControlName: string): ValidatorFn;
|
|
1072
2044
|
|
|
1073
2045
|
declare function MustMatchValidator(controlName: string, matchingControlName: string): ValidatorFn;
|
|
1074
2046
|
|
|
2047
|
+
declare function emailValidator(): ValidatorFn;
|
|
2048
|
+
|
|
1075
2049
|
declare class ApiService {
|
|
1076
2050
|
private http;
|
|
1077
2051
|
private platformId;
|
|
@@ -1082,6 +2056,7 @@ declare class ApiService {
|
|
|
1082
2056
|
private validateContentType;
|
|
1083
2057
|
private handleError;
|
|
1084
2058
|
get<T>(path: string): Observable<T>;
|
|
2059
|
+
getBlob(path: string): Observable<Blob>;
|
|
1085
2060
|
post<T>(path: string, body: any): Observable<T>;
|
|
1086
2061
|
patch<T>(path: string, body: any): Observable<T>;
|
|
1087
2062
|
put<T>(path: string, body: any): Observable<T>;
|
|
@@ -1090,23 +2065,58 @@ declare class ApiService {
|
|
|
1090
2065
|
static ɵprov: i0.ɵɵInjectableDeclaration<ApiService>;
|
|
1091
2066
|
}
|
|
1092
2067
|
|
|
2068
|
+
/**
|
|
2069
|
+
* Shared open/close state for the mobile off-canvas sidebar.
|
|
2070
|
+
* On viewports >= lg the sidebar is always visible (see sidebar-menu.component.html),
|
|
2071
|
+
* so this state only has a visual effect below the `lg` breakpoint.
|
|
2072
|
+
*/
|
|
2073
|
+
declare class SidebarStateService {
|
|
2074
|
+
isMobileOpen: WritableSignal<boolean>;
|
|
2075
|
+
open(): void;
|
|
2076
|
+
close(): void;
|
|
2077
|
+
toggle(): void;
|
|
2078
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SidebarStateService, never>;
|
|
2079
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<SidebarStateService>;
|
|
2080
|
+
}
|
|
2081
|
+
|
|
2082
|
+
/**
|
|
2083
|
+
* Deshabilita el zoom del NAVEGADOR (no el zoom interno del mapa de
|
|
2084
|
+
* asientos, que sigue funcionando igual). Se instancia una sola vez —
|
|
2085
|
+
* inyectarlo en el componente raíz de la app alcanza, porque es
|
|
2086
|
+
* `providedIn: 'root'` — y cubre las cuatro formas en que un navegador
|
|
2087
|
+
* deja hacer zoom:
|
|
2088
|
+
*
|
|
2089
|
+
* - Ctrl/Cmd + rueda del mouse (desktop, todos los navegadores).
|
|
2090
|
+
* - Ctrl/Cmd + "+"/"-"/"0" por teclado (desktop, todos los navegadores).
|
|
2091
|
+
* - Gesto de pellizco en trackpad en Safari, que no dispara `wheel` sino
|
|
2092
|
+
* sus propios eventos `gesture*` (no estándar, solo Safari/WebKit).
|
|
2093
|
+
* - Pellizco con dos dedos en pantallas táctiles, como respaldo además
|
|
2094
|
+
* del `user-scalable=no` del viewport (que ya lo bloquea en la mayoría
|
|
2095
|
+
* de los navegadores, pero no en todos de forma consistente).
|
|
2096
|
+
*
|
|
2097
|
+
* No toca el zoom interno de `TicketMapZoomService` (ese es zoom propio de
|
|
2098
|
+
* la app sobre el SVG del mapa, con sus propios botones +/-, y debe seguir
|
|
2099
|
+
* funcionando tal cual).
|
|
2100
|
+
*/
|
|
2101
|
+
declare class BrowserZoomLockService {
|
|
2102
|
+
constructor(platformId: Object);
|
|
2103
|
+
private onWheel;
|
|
2104
|
+
private onKeydown;
|
|
2105
|
+
private onTouchMove;
|
|
2106
|
+
private onGesture;
|
|
2107
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BrowserZoomLockService, never>;
|
|
2108
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<BrowserZoomLockService>;
|
|
2109
|
+
}
|
|
2110
|
+
|
|
1093
2111
|
type ToastType = 'success' | 'error' | 'info';
|
|
1094
2112
|
declare class ToastService {
|
|
2113
|
+
private platformId;
|
|
2114
|
+
constructor(platformId: Object);
|
|
1095
2115
|
show(message: string, type?: ToastType): void;
|
|
1096
2116
|
static ɵfac: i0.ɵɵFactoryDeclaration<ToastService, never>;
|
|
1097
2117
|
static ɵprov: i0.ɵɵInjectableDeclaration<ToastService>;
|
|
1098
2118
|
}
|
|
1099
2119
|
|
|
1100
|
-
declare class LoadingModalService {
|
|
1101
|
-
title: WritableSignal<string>;
|
|
1102
|
-
isOpen: WritableSignal<boolean>;
|
|
1103
|
-
get modalIsOpen(): WritableSignal<boolean>;
|
|
1104
|
-
open(title?: string): void;
|
|
1105
|
-
close(): void;
|
|
1106
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<LoadingModalService, never>;
|
|
1107
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<LoadingModalService>;
|
|
1108
|
-
}
|
|
1109
|
-
|
|
1110
2120
|
declare class DeleteConfirmationService {
|
|
1111
2121
|
title: WritableSignal<string>;
|
|
1112
2122
|
resourceName: WritableSignal<string>;
|
|
@@ -1147,12 +2157,19 @@ declare class DateService {
|
|
|
1147
2157
|
static ɵprov: i0.ɵɵInjectableDeclaration<DateService>;
|
|
1148
2158
|
}
|
|
1149
2159
|
|
|
2160
|
+
interface AdminResponse {
|
|
2161
|
+
statusCode: number;
|
|
2162
|
+
data: Admin;
|
|
2163
|
+
message: string;
|
|
2164
|
+
}
|
|
2165
|
+
|
|
1150
2166
|
declare class AdminService {
|
|
1151
2167
|
private apiService;
|
|
1152
2168
|
constructor(apiService: ApiService);
|
|
1153
|
-
fetchAdmins(
|
|
2169
|
+
fetchAdmins(params: FetchAdminsParams): Observable<AdminsResponse>;
|
|
2170
|
+
fetchOneById(id: number): Observable<AdminResponse>;
|
|
1154
2171
|
deleteOne(id: number): Observable<any>;
|
|
1155
|
-
createOne(data: any): Observable<
|
|
2172
|
+
createOne(data: any): Observable<AdminResponse>;
|
|
1156
2173
|
updateOne(id: number, data: any): Observable<any>;
|
|
1157
2174
|
static ɵfac: i0.ɵɵFactoryDeclaration<AdminService, never>;
|
|
1158
2175
|
static ɵprov: i0.ɵɵInjectableDeclaration<AdminService>;
|
|
@@ -1161,7 +2178,7 @@ declare class AdminService {
|
|
|
1161
2178
|
declare class CitiesService {
|
|
1162
2179
|
private apiService;
|
|
1163
2180
|
constructor(apiService: ApiService);
|
|
1164
|
-
fetchCities(
|
|
2181
|
+
fetchCities(params: FetchCitiesParams): Observable<CitiesResponse>;
|
|
1165
2182
|
createOne(data: City): Observable<CityResponse>;
|
|
1166
2183
|
updateOne(id: number, data: City): Observable<CityResponse>;
|
|
1167
2184
|
deleteOne(id: number): Observable<any>;
|
|
@@ -1172,7 +2189,7 @@ declare class CitiesService {
|
|
|
1172
2189
|
declare class CountryService {
|
|
1173
2190
|
private apiService;
|
|
1174
2191
|
constructor(apiService: ApiService);
|
|
1175
|
-
fetchCountries(
|
|
2192
|
+
fetchCountries(params: FetchCountriesParams): Observable<CountriesResponse>;
|
|
1176
2193
|
createOne(data: Country): Observable<CountryResponse>;
|
|
1177
2194
|
updateOne(id: number, data: Country): Observable<CountryResponse>;
|
|
1178
2195
|
deleteOne(id: number): Observable<any>;
|
|
@@ -1183,7 +2200,7 @@ declare class CountryService {
|
|
|
1183
2200
|
declare class StatesService {
|
|
1184
2201
|
private apiService;
|
|
1185
2202
|
constructor(apiService: ApiService);
|
|
1186
|
-
fetchStates(
|
|
2203
|
+
fetchStates(params: FetchStatesParams): Observable<StatesResponse>;
|
|
1187
2204
|
fetchStatesByCountryId(countryId: number): Observable<StatesResponse>;
|
|
1188
2205
|
createOne(data: State): Observable<StateResponse>;
|
|
1189
2206
|
updateOne(id: number, data: State): Observable<StateResponse>;
|
|
@@ -1197,7 +2214,7 @@ declare class PerformanceService {
|
|
|
1197
2214
|
private performancesSubject;
|
|
1198
2215
|
performances$: Observable<Performance[]>;
|
|
1199
2216
|
constructor(apiService: ApiService);
|
|
1200
|
-
fetchPerformances(showId
|
|
2217
|
+
fetchPerformances({ showId, roomMapId, hallId, search, page, limit, }: FindAllPerformancesParams): Observable<PerformancesResponseInterface>;
|
|
1201
2218
|
fetchDailyPerformances({ show_id, search, limit, date, }: FetchDailyPerformancesParams): Observable<DailyPerformancesResponse>;
|
|
1202
2219
|
loadPerformances({ showId, search }?: {
|
|
1203
2220
|
showId?: number;
|
|
@@ -1205,7 +2222,7 @@ declare class PerformanceService {
|
|
|
1205
2222
|
}): void;
|
|
1206
2223
|
getCurrentPerformances(): Performance[];
|
|
1207
2224
|
fetchOneById(id: number): Observable<PerformanceResponse>;
|
|
1208
|
-
fetchOneBookingData(id: number): Observable<PerformanceBookingDataResponse>;
|
|
2225
|
+
fetchOneBookingData(id: number, isAdmin?: boolean): Observable<PerformanceBookingDataResponse>;
|
|
1209
2226
|
fetchAvailableDays(params?: {
|
|
1210
2227
|
show_id?: number;
|
|
1211
2228
|
}): Observable<PerformancesAvailableDaysResponse>;
|
|
@@ -1214,6 +2231,13 @@ declare class PerformanceService {
|
|
|
1214
2231
|
updateOne(id: number, data: any): Observable<PerformanceResponse>;
|
|
1215
2232
|
deleteOne(id: number): Observable<any>;
|
|
1216
2233
|
deleteMany(ids: number[]): Observable<any>;
|
|
2234
|
+
updatePublishedBulk(ids: number[], published: boolean): Observable<{
|
|
2235
|
+
statusCode: number;
|
|
2236
|
+
data: {
|
|
2237
|
+
updated: number[];
|
|
2238
|
+
};
|
|
2239
|
+
message: string;
|
|
2240
|
+
}>;
|
|
1217
2241
|
cancelPerformance(id: number, notifyUsers: boolean): Observable<any>;
|
|
1218
2242
|
publishInvenotry(id: number): Observable<any>;
|
|
1219
2243
|
static ɵfac: i0.ɵɵFactoryDeclaration<PerformanceService, never>;
|
|
@@ -1235,25 +2259,6 @@ declare class PerformancesListEventsService {
|
|
|
1235
2259
|
static ɵprov: i0.ɵɵInjectableDeclaration<PerformancesListEventsService>;
|
|
1236
2260
|
}
|
|
1237
2261
|
|
|
1238
|
-
declare class ProductService {
|
|
1239
|
-
private apiService;
|
|
1240
|
-
private productsSubject;
|
|
1241
|
-
products$: Observable<Product[]>;
|
|
1242
|
-
constructor(apiService: ApiService);
|
|
1243
|
-
fetchProducts(page: number, search: string): Observable<ProductsResponseInterface>;
|
|
1244
|
-
loadProducts({ page, search }?: {
|
|
1245
|
-
page?: number;
|
|
1246
|
-
search?: string;
|
|
1247
|
-
}): void;
|
|
1248
|
-
getCurrentProducts(): Product[];
|
|
1249
|
-
fetchOneById(id: number): Observable<ProductResponse>;
|
|
1250
|
-
createOne(data: Product): Observable<any>;
|
|
1251
|
-
updateOne(id: number, data: any): Observable<ProductResponse>;
|
|
1252
|
-
deleteOne(id: number): Observable<any>;
|
|
1253
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ProductService, never>;
|
|
1254
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<ProductService>;
|
|
1255
|
-
}
|
|
1256
|
-
|
|
1257
2262
|
declare class ShowService {
|
|
1258
2263
|
private apiService;
|
|
1259
2264
|
private showsSubject;
|
|
@@ -1261,7 +2266,7 @@ declare class ShowService {
|
|
|
1261
2266
|
constructor(apiService: ApiService);
|
|
1262
2267
|
loadShows({ page, search }?: FetchShowsParams): void;
|
|
1263
2268
|
getCurrentShows(): Show[];
|
|
1264
|
-
fetchShows(
|
|
2269
|
+
fetchShows(params: FetchShowsParams): Observable<ShowsResponseInterface>;
|
|
1265
2270
|
fetchAvailableShows({ date, limit, page, search, }: FetchShowsParams): Observable<ShowsResponseInterface>;
|
|
1266
2271
|
fetchOneById(id: number): Observable<ShowResponse>;
|
|
1267
2272
|
createOne(data: Show): Observable<ShowResponse>;
|
|
@@ -1282,7 +2287,7 @@ declare class CustomerService {
|
|
|
1282
2287
|
private apiService;
|
|
1283
2288
|
constructor(apiService: ApiService);
|
|
1284
2289
|
createOne(data: Customer): Observable<CustomerResponse>;
|
|
1285
|
-
fetchCustomers(
|
|
2290
|
+
fetchCustomers(params: FetchCustomersParams): Observable<CustomersResponse>;
|
|
1286
2291
|
fetchOneById(id: number): Observable<CustomerResponse>;
|
|
1287
2292
|
updateOne(id: number, data: any): Observable<CustomerResponse>;
|
|
1288
2293
|
deleteOne(id: number): Observable<any>;
|
|
@@ -1290,48 +2295,606 @@ declare class CustomerService {
|
|
|
1290
2295
|
static ɵprov: i0.ɵɵInjectableDeclaration<CustomerService>;
|
|
1291
2296
|
}
|
|
1292
2297
|
|
|
1293
|
-
declare class PriceZoneService {
|
|
2298
|
+
declare class PriceZoneService {
|
|
2299
|
+
private apiService;
|
|
2300
|
+
private priceZonesSubject;
|
|
2301
|
+
priceZones$: Observable<PriceZone[]>;
|
|
2302
|
+
constructor(apiService: ApiService);
|
|
2303
|
+
fetchPriceZones(params?: FindAllPriceZoneParams): Observable<PriceZonesResponseInterface>;
|
|
2304
|
+
loadPriceZones(params?: FindAllPriceZoneParams): void;
|
|
2305
|
+
getCurrentPriceZones(): PriceZone[];
|
|
2306
|
+
fetchOneById(id: number): Observable<PriceZoneResponse>;
|
|
2307
|
+
createOne(data: PriceZone): Observable<any>;
|
|
2308
|
+
duplicateOne(id: number, name: string): Observable<any>;
|
|
2309
|
+
updateOne(id: number, data: any): Observable<PriceZoneUpdateResponse>;
|
|
2310
|
+
deleteOne(id: number): Observable<any>;
|
|
2311
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PriceZoneService, never>;
|
|
2312
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<PriceZoneService>;
|
|
2313
|
+
}
|
|
2314
|
+
|
|
2315
|
+
declare class PriceZoneEventService {
|
|
2316
|
+
private priceZoneDeleted$;
|
|
2317
|
+
private priceZoneSaved$;
|
|
2318
|
+
private _selectedPriceZone;
|
|
2319
|
+
readonly selectedPriceZone$: rxjs.Observable<PriceZone | null>;
|
|
2320
|
+
onPriceZoneDeleted(): void;
|
|
2321
|
+
getPriceZoneDeleted(): rxjs.Observable<void>;
|
|
2322
|
+
onPriceZoneSaved(): void;
|
|
2323
|
+
getPriceZoneSaved(): rxjs.Observable<void>;
|
|
2324
|
+
setSelectedPriceZone(priceZone: PriceZone | null): void;
|
|
2325
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PriceZoneEventService, never>;
|
|
2326
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<PriceZoneEventService>;
|
|
2327
|
+
}
|
|
2328
|
+
|
|
2329
|
+
declare class PriceZoneFormModalService {
|
|
2330
|
+
private priceZoneEventService;
|
|
2331
|
+
priceZone: WritableSignal<PriceZone | null>;
|
|
2332
|
+
isOpen: WritableSignal<boolean>;
|
|
2333
|
+
constructor(priceZoneEventService: PriceZoneEventService);
|
|
2334
|
+
get modalIsOpen(): WritableSignal<boolean>;
|
|
2335
|
+
get currentPriceZone(): WritableSignal<PriceZone | null>;
|
|
2336
|
+
open(priceZone?: PriceZone | null): void;
|
|
2337
|
+
close(): void;
|
|
2338
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PriceZoneFormModalService, never>;
|
|
2339
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<PriceZoneFormModalService>;
|
|
2340
|
+
}
|
|
2341
|
+
|
|
2342
|
+
declare class ProductCategoryService {
|
|
2343
|
+
private apiService;
|
|
2344
|
+
constructor(apiService: ApiService);
|
|
2345
|
+
fetchCategories(params: FetchProductCategoriesParams): Observable<ProductCategoriesResponse>;
|
|
2346
|
+
fetchOneById(id: number): Observable<ProductCategoryResponse>;
|
|
2347
|
+
createOne(data: ProductCategory): Observable<any>;
|
|
2348
|
+
updateOne(id: number, data: ProductCategory): Observable<ProductCategoryResponse>;
|
|
2349
|
+
deleteOne(id: number): Observable<any>;
|
|
2350
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ProductCategoryService, never>;
|
|
2351
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ProductCategoryService>;
|
|
2352
|
+
}
|
|
2353
|
+
|
|
2354
|
+
declare class ProductTagService {
|
|
2355
|
+
private apiService;
|
|
2356
|
+
constructor(apiService: ApiService);
|
|
2357
|
+
fetchTags(params: FetchProductTagsParams): Observable<ProductTagsResponse>;
|
|
2358
|
+
fetchOneById(id: number): Observable<ProductTagResponse>;
|
|
2359
|
+
createOne(data: ProductTag): Observable<any>;
|
|
2360
|
+
updateOne(id: number, data: ProductTag): Observable<ProductTagResponse>;
|
|
2361
|
+
deleteOne(id: number): Observable<any>;
|
|
2362
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ProductTagService, never>;
|
|
2363
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ProductTagService>;
|
|
2364
|
+
}
|
|
2365
|
+
|
|
2366
|
+
declare class ProductTypeService {
|
|
2367
|
+
private apiService;
|
|
2368
|
+
constructor(apiService: ApiService);
|
|
2369
|
+
fetchTypes(params: FetchProductTypesParams): Observable<ProductTypesResponse>;
|
|
2370
|
+
fetchOneById(id: number): Observable<ProductTypeResponse>;
|
|
2371
|
+
createOne(data: ProductType): Observable<any>;
|
|
2372
|
+
updateOne(id: number, data: ProductType): Observable<ProductTypeResponse>;
|
|
2373
|
+
deleteOne(id: number): Observable<any>;
|
|
2374
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ProductTypeService, never>;
|
|
2375
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ProductTypeService>;
|
|
2376
|
+
}
|
|
2377
|
+
|
|
2378
|
+
declare class ProductService {
|
|
2379
|
+
private apiService;
|
|
2380
|
+
private productsSubject;
|
|
2381
|
+
products$: Observable<Product[]>;
|
|
2382
|
+
constructor(apiService: ApiService);
|
|
2383
|
+
fetchProducts(params: FetchProductsParams): Observable<ProductsResponseInterface>;
|
|
2384
|
+
loadProducts(params: FetchProductsParams): void;
|
|
2385
|
+
getCurrentProducts(): Product[];
|
|
2386
|
+
fetchOneById(id: number): Observable<ProductResponse>;
|
|
2387
|
+
createOne(data: Product): Observable<any>;
|
|
2388
|
+
updateOne(id: number, data: any): Observable<ProductResponse>;
|
|
2389
|
+
deleteOne(id: number): Observable<any>;
|
|
2390
|
+
fetchImages(id: number): Observable<{
|
|
2391
|
+
data: ProductImage[];
|
|
2392
|
+
}>;
|
|
2393
|
+
uploadImages(id: number, files?: FormData): Observable<{
|
|
2394
|
+
data: ProductImage[];
|
|
2395
|
+
}>;
|
|
2396
|
+
deleteOneImage(productId: number, imageId: number): Observable<any>;
|
|
2397
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ProductService, never>;
|
|
2398
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ProductService>;
|
|
2399
|
+
}
|
|
2400
|
+
|
|
2401
|
+
declare class BaseModalService {
|
|
2402
|
+
readonly isOpen: WritableSignal<boolean>;
|
|
2403
|
+
get modalIsOpen(): WritableSignal<boolean>;
|
|
2404
|
+
open(): void;
|
|
2405
|
+
close(): void;
|
|
2406
|
+
}
|
|
2407
|
+
|
|
2408
|
+
declare class FeedbackModalService {
|
|
2409
|
+
private _modals;
|
|
2410
|
+
readonly modals: i0.Signal<FeedbackModalElement[]>;
|
|
2411
|
+
addModal(modal: FeedbackModalElement): void;
|
|
2412
|
+
removeModal(id: string): void;
|
|
2413
|
+
removeAllModals(): void;
|
|
2414
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FeedbackModalService, never>;
|
|
2415
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<FeedbackModalService>;
|
|
2416
|
+
}
|
|
2417
|
+
|
|
2418
|
+
/**
|
|
2419
|
+
* Tope de entradas por selección/compra. Por defecto es `null` (sin límite),
|
|
2420
|
+
* que es lo que necesita el backoffice (admin puede seleccionar todo).
|
|
2421
|
+
* El ecommerce, que sí debe limitar, llama a `load()` una vez al iniciar la
|
|
2422
|
+
* app para traer el valor configurado en el formulario de personalización.
|
|
2423
|
+
*/
|
|
2424
|
+
declare class PurchaseLimitService {
|
|
1294
2425
|
private apiService;
|
|
1295
|
-
private
|
|
1296
|
-
|
|
2426
|
+
private _maxTicketsPerSelection;
|
|
2427
|
+
readonly maxTicketsPerSelection: i0.Signal<number | null>;
|
|
1297
2428
|
constructor(apiService: ApiService);
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
createOne(data: PriceZone): Observable<any>;
|
|
1303
|
-
duplicateOne(id: number, name: string): Observable<any>;
|
|
1304
|
-
updateOne(id: number, data: any): Observable<PriceZoneUpdateResponse>;
|
|
1305
|
-
deleteOne(id: number): Observable<any>;
|
|
1306
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<PriceZoneService, never>;
|
|
1307
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<PriceZoneService>;
|
|
2429
|
+
setMaxTicketsPerSelection(max: number | null): void;
|
|
2430
|
+
load(): Observable<number | null>;
|
|
2431
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PurchaseLimitService, never>;
|
|
2432
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<PurchaseLimitService>;
|
|
1308
2433
|
}
|
|
1309
2434
|
|
|
1310
|
-
declare class
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
2435
|
+
declare class OrderTransactionDetailsModalService {
|
|
2436
|
+
readonly isOpen: WritableSignal<boolean>;
|
|
2437
|
+
transaction: WritableSignal<Transaction | null>;
|
|
2438
|
+
get modalIsOpen(): WritableSignal<boolean>;
|
|
2439
|
+
open(transaction: Transaction): void;
|
|
2440
|
+
close(): void;
|
|
2441
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<OrderTransactionDetailsModalService, never>;
|
|
2442
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<OrderTransactionDetailsModalService>;
|
|
2443
|
+
}
|
|
2444
|
+
|
|
2445
|
+
declare class PerformanceBookingDataService {
|
|
2446
|
+
private _show;
|
|
2447
|
+
private _performance;
|
|
2448
|
+
private _roomMap;
|
|
2449
|
+
private _hallFloors;
|
|
2450
|
+
private _selectedHallFloor;
|
|
2451
|
+
private _allRenderData;
|
|
2452
|
+
private _visibleFloorIds;
|
|
2453
|
+
private _hoveredFloorId;
|
|
2454
|
+
private _stageConfig;
|
|
2455
|
+
private _lastTickets;
|
|
2456
|
+
readonly show: i0.Signal<Show | null>;
|
|
2457
|
+
readonly hallFloors: i0.Signal<HallFloor[]>;
|
|
2458
|
+
readonly selectedHallFloor: i0.Signal<HallFloor | null>;
|
|
2459
|
+
readonly performance: i0.Signal<Performance | null>;
|
|
2460
|
+
readonly stageConfig: i0.Signal<{
|
|
2461
|
+
[x: string]: any;
|
|
2462
|
+
}>;
|
|
2463
|
+
readonly roomMap: i0.Signal<RoomMap | null>;
|
|
2464
|
+
readonly visibleFloorIds: i0.Signal<Set<number>>;
|
|
2465
|
+
readonly hoveredFloorId: i0.Signal<number | null>;
|
|
2466
|
+
readonly availableFloors: i0.Signal<HallFloor[]>;
|
|
2467
|
+
readonly floorZOrder: i0.Signal<number[]>;
|
|
2468
|
+
readonly renderData: i0.Signal<ElementRenderData[]>;
|
|
2469
|
+
setPerformanceBookingData({ data }: PerformanceBookingDataResponse): void;
|
|
2470
|
+
/** Aplica actualizaciones de estado de tickets recibidas por SSE (ver
|
|
2471
|
+
* SeatAvailabilitySseService) sin volver a pedir todo el booking-data:
|
|
2472
|
+
* parcha `_lastTickets` y vuelve a calcular el render data del mapa con
|
|
2473
|
+
* los mismos `elements`/`price_zones` (que no cambian en vivo). */
|
|
2474
|
+
applySeatStatusUpdates(updates: SeatStatusUpdate[]): void;
|
|
2475
|
+
setRoomMap(roomMap: RoomMap | null): void;
|
|
2476
|
+
setAllRenderData(data: ElementRenderData[]): void;
|
|
2477
|
+
setPerformance(performance: Performance | null): void;
|
|
2478
|
+
setShow(show: Show | null): void;
|
|
2479
|
+
setHallFloors(data: HallFloor[]): void;
|
|
2480
|
+
setSelectedHallFloor(id: number): void;
|
|
2481
|
+
setHoveredFloor(floorId: number | null): void;
|
|
2482
|
+
toggleFloorVisibility(floorId: number): void;
|
|
2483
|
+
isFloorVisible(floorId: number): boolean;
|
|
2484
|
+
updateStageConfig(data: {
|
|
2485
|
+
[x: string]: any;
|
|
2486
|
+
}): void;
|
|
2487
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PerformanceBookingDataService, never>;
|
|
2488
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<PerformanceBookingDataService>;
|
|
2489
|
+
}
|
|
2490
|
+
|
|
2491
|
+
declare class TicketSelectionDetailsService {
|
|
2492
|
+
private _customerEmail;
|
|
2493
|
+
private _customerId;
|
|
2494
|
+
private _paymentMethod;
|
|
2495
|
+
private _billingInformation;
|
|
2496
|
+
readonly customerEmail: i0.Signal<string | null>;
|
|
2497
|
+
readonly customerId: i0.Signal<number | null>;
|
|
2498
|
+
readonly paymentMethod: i0.Signal<string | null>;
|
|
2499
|
+
readonly billingInformation: i0.Signal<Customer | null>;
|
|
2500
|
+
setCustomerEmail(email: string | null): void;
|
|
2501
|
+
setCustomerId(id: number | null): void;
|
|
2502
|
+
setPaymentMethod(method: string | null): void;
|
|
2503
|
+
setBillingInformation(values: Customer): void;
|
|
2504
|
+
clearSelection(): void;
|
|
2505
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketSelectionDetailsService, never>;
|
|
2506
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<TicketSelectionDetailsService>;
|
|
2507
|
+
}
|
|
2508
|
+
|
|
2509
|
+
declare class TicketSelectionDiscountService {
|
|
2510
|
+
private _coupon;
|
|
2511
|
+
private _corporateBond;
|
|
2512
|
+
private _corporateBondCode;
|
|
2513
|
+
private _giftBond;
|
|
2514
|
+
private _giftBondCode;
|
|
2515
|
+
private _vipCard;
|
|
2516
|
+
/**
|
|
2517
|
+
* Abono (subscription) como metodo de pago. Solo se usa el campo
|
|
2518
|
+
* `service_fee_exempt`: el valor del descuento es siempre 100% (una obra
|
|
2519
|
+
* del abono cubre el ticket por completo), igual que un cupon del 100%.
|
|
2520
|
+
*/
|
|
2521
|
+
private _subscription;
|
|
2522
|
+
readonly coupon: Signal<Coupon | null>;
|
|
2523
|
+
readonly corporateBond: Signal<CorporateBond | null>;
|
|
2524
|
+
readonly corporateBondCode: Signal<string | null>;
|
|
2525
|
+
readonly giftBond: Signal<GiftBondPurchase | null>;
|
|
2526
|
+
readonly giftBondCode: Signal<string | null>;
|
|
2527
|
+
readonly vipCard: Signal<VipCard | null>;
|
|
2528
|
+
readonly subscription: Signal<{
|
|
2529
|
+
service_fee_exempt: boolean;
|
|
2530
|
+
} | null>;
|
|
2531
|
+
readonly selectedDiscount: Signal<SelectedDiscountCard | null>;
|
|
2532
|
+
readonly selectedDiscountType: Signal<SelectedDiscountCardType | undefined>;
|
|
2533
|
+
readonly selectedDiscountValue: Signal<number | undefined>;
|
|
2534
|
+
setCoupon(coupon: Coupon | null): void;
|
|
2535
|
+
setCorporateBond(corporateBond: CorporateBond | null): void;
|
|
2536
|
+
setCorporateBondCode(code: string | null): void;
|
|
2537
|
+
setGiftBond(giftBond: GiftBondPurchase | null): void;
|
|
2538
|
+
setGiftBondCode(code: string | null): void;
|
|
2539
|
+
/**
|
|
2540
|
+
* Saldo VIP como método de pago (VIP-HU-04). Solo debe contar como
|
|
2541
|
+
* descuento "seleccionado" mientras el cliente efectivamente eligió
|
|
2542
|
+
* pagar con su saldo VIP, no solo por tener una tarjeta activa —
|
|
2543
|
+
* llamar con `null` en cuanto deje de ser el método de pago elegido.
|
|
2544
|
+
*/
|
|
2545
|
+
setVipCard(card: VipCard | null): void;
|
|
2546
|
+
/**
|
|
2547
|
+
* Abono como metodo de pago (paralelo a `setVipCard`). Llamar con `null`
|
|
2548
|
+
* en cuanto deje de ser el metodo de pago elegido.
|
|
2549
|
+
*/
|
|
2550
|
+
setSubscription(subscription: {
|
|
2551
|
+
service_fee_exempt: boolean;
|
|
2552
|
+
} | null): void;
|
|
2553
|
+
clearSelection(): void;
|
|
2554
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketSelectionDiscountService, never>;
|
|
2555
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<TicketSelectionDiscountService>;
|
|
2556
|
+
}
|
|
2557
|
+
|
|
2558
|
+
declare class TicketSelectionTotalsService {
|
|
2559
|
+
private bookingDataService;
|
|
2560
|
+
private selectionService;
|
|
2561
|
+
private selectionDiscountService;
|
|
2562
|
+
readonly selectedProductEntries: i0.Signal<{
|
|
2563
|
+
id: number;
|
|
2564
|
+
quantity: number;
|
|
2565
|
+
}[]>;
|
|
2566
|
+
readonly selectedProductCount: i0.Signal<number>;
|
|
2567
|
+
readonly productSubtotal: i0.Signal<number>;
|
|
2568
|
+
readonly ticketSubtotal: i0.Signal<number>;
|
|
2569
|
+
/**
|
|
2570
|
+
* Tarifa de servicio del Show cobrada una vez por cada boleta seleccionada
|
|
2571
|
+
* (no un monto fijo por orden), igual que el backend
|
|
2572
|
+
* (`create-pending-order.service.ts`): 2 boletas x $10.000 = $20.000.
|
|
2573
|
+
* Ya refleja la exoneración de VIP/Abono (retorna 0 en ese caso).
|
|
2574
|
+
*/
|
|
2575
|
+
readonly serviceFee: i0.Signal<number>;
|
|
2576
|
+
/**
|
|
2577
|
+
* Valor "crudo" de la tarifa de servicio (sin exonerar), para poder
|
|
2578
|
+
* mostrar explícitamente en la UI el "antes" cuando una membresía o
|
|
2579
|
+
* abono la exonera (en vez de perder el dato mostrando solo $0).
|
|
2580
|
+
*/
|
|
2581
|
+
readonly rawServiceFee: i0.Signal<number>;
|
|
2582
|
+
readonly isServiceFeeExempt: i0.Signal<boolean>;
|
|
2583
|
+
/**
|
|
2584
|
+
* El descuento (cupón, bono corporativo, bono de regalo, VIP, abono) se
|
|
2585
|
+
* calcula UNICAMENTE sobre el valor de las boletas: los productos nunca
|
|
2586
|
+
* reciben descuento (ver orders-discounts-applications.md).
|
|
2587
|
+
*/
|
|
2588
|
+
readonly discountAmount: i0.Signal<number | null>;
|
|
2589
|
+
subtotalValue(): number;
|
|
2590
|
+
totalValue(): number;
|
|
2591
|
+
totalDiscounted(): number | null;
|
|
2592
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketSelectionTotalsService, never>;
|
|
2593
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<TicketSelectionTotalsService>;
|
|
2594
|
+
}
|
|
2595
|
+
|
|
2596
|
+
declare class TicketSelectionService {
|
|
2597
|
+
private bookingDataService;
|
|
2598
|
+
private feedbackModalService;
|
|
2599
|
+
private purchaseLimitService;
|
|
2600
|
+
private selectionDetailsService;
|
|
2601
|
+
private selectionDiscountService;
|
|
2602
|
+
private _zoneQuantities;
|
|
2603
|
+
private _allTickets;
|
|
2604
|
+
private _selectedTickets;
|
|
2605
|
+
private _selectedBlockedTickets;
|
|
2606
|
+
private _products;
|
|
2607
|
+
private _productQuantities;
|
|
2608
|
+
readonly selectedTickets: i0.Signal<PerformanceTicket[]>;
|
|
2609
|
+
readonly selectedBlockedTickets: i0.Signal<PerformanceTicket[]>;
|
|
2610
|
+
readonly selectedCount: i0.Signal<number>;
|
|
2611
|
+
readonly blockedSelectedCount: i0.Signal<number>;
|
|
2612
|
+
readonly selectedTicketIds: i0.Signal<Set<PerformanceTicket>>;
|
|
2613
|
+
readonly selectedBlockedTicketIds: i0.Signal<number[]>;
|
|
2614
|
+
readonly selectedTicketIdList: i0.Signal<number[]>;
|
|
2615
|
+
readonly summaryItems: i0.Signal<PerformanceTicket[]>;
|
|
2616
|
+
readonly products: i0.Signal<Product[]>;
|
|
2617
|
+
readonly productQuantities: i0.Signal<Map<number, number>>;
|
|
2618
|
+
readonly selectedProductEntries: i0.Signal<{
|
|
2619
|
+
id: number;
|
|
2620
|
+
quantity: number;
|
|
2621
|
+
}[]>;
|
|
2622
|
+
readonly selectedProductCount: i0.Signal<number>;
|
|
2623
|
+
readonly serviceFee: i0.Signal<number>;
|
|
2624
|
+
setTickets(tickets: PerformanceTicket[]): void;
|
|
2625
|
+
/** Aplica actualizaciones de estado recibidas por SSE (ver
|
|
2626
|
+
* SeatAvailabilitySseService). Muta los tickets existentes EN VEZ de
|
|
2627
|
+
* reemplazarlos por objetos nuevos: `_selectedTickets`/
|
|
2628
|
+
* `_selectedBlockedTickets` son Sets de referencias de objeto, no de ids,
|
|
2629
|
+
* así que reemplazar el array rompería la selección activa del usuario. */
|
|
2630
|
+
applySeatStatusUpdates(updates: SeatStatusUpdate[]): void;
|
|
2631
|
+
setProducts(products: Product[]): void;
|
|
2632
|
+
updateProductQuantity(productId: number, delta: number): void;
|
|
2633
|
+
getProductQuantity(productId: number): number;
|
|
2634
|
+
private getListByStatus;
|
|
2635
|
+
setSelectedTickets(tickets: PerformanceTicket[]): void;
|
|
2636
|
+
toggle(ticket: PerformanceTicket): void;
|
|
2637
|
+
select(ticket: PerformanceTicket): void;
|
|
2638
|
+
deselect(ticket: PerformanceTicket): void;
|
|
2639
|
+
clearBlockedSelection(): void;
|
|
2640
|
+
clearSelection(): void;
|
|
2641
|
+
isSelected(ticket: PerformanceTicket): boolean;
|
|
2642
|
+
initZoneQuantity(elementId: number, maxCapacity: number): void;
|
|
2643
|
+
getZoneMax(elementId: number): number;
|
|
2644
|
+
getZoneSelectedCount(elementId: number): number;
|
|
2645
|
+
setZoneQuantity(elementId: number, target: number): void;
|
|
2646
|
+
adjustZoneQuantity(elementId: number, delta: number): void;
|
|
2647
|
+
private remainingSelectionAllowance;
|
|
2648
|
+
private canAddMoreToSelection;
|
|
2649
|
+
private notifyPurchaseLimitReached;
|
|
2650
|
+
getZoneTickets(elementId: number): PerformanceTicket[];
|
|
2651
|
+
buildTooltipData(ticket: PerformanceTicket, elementName: string, seatLabel: string | null, x: number, y: number): TicketMapTooltipData;
|
|
2652
|
+
buildReservePerformanceDto(paymentMethod?: string, termsAccepted?: boolean, dataProcessingAccepted?: boolean): ReservePerformanceDto;
|
|
2653
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketSelectionService, never>;
|
|
2654
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<TicketSelectionService>;
|
|
2655
|
+
}
|
|
2656
|
+
|
|
2657
|
+
declare class TicketMapZoomService {
|
|
2658
|
+
readonly currentZoom: i0.WritableSignal<number>;
|
|
2659
|
+
private stage?;
|
|
2660
|
+
private bookingDataService;
|
|
2661
|
+
private readonly defaultConfig;
|
|
2662
|
+
constructor();
|
|
2663
|
+
/**
|
|
2664
|
+
* Set the Konva stage instance
|
|
2665
|
+
*/
|
|
2666
|
+
setStage(stage: Stage): void;
|
|
2667
|
+
/**
|
|
2668
|
+
* Zoom in by one step
|
|
2669
|
+
*/
|
|
2670
|
+
zoomIn(): void;
|
|
2671
|
+
/**
|
|
2672
|
+
* Zoom out by one step
|
|
2673
|
+
*/
|
|
2674
|
+
zoomOut(): void;
|
|
2675
|
+
/**
|
|
2676
|
+
* Reset zoom to 100%
|
|
2677
|
+
*/
|
|
2678
|
+
resetZoom(): void;
|
|
2679
|
+
/**
|
|
2680
|
+
* Get current zoom as percentage string
|
|
2681
|
+
*/
|
|
2682
|
+
getZoomPercentage(): string;
|
|
2683
|
+
/**
|
|
2684
|
+
* Get current zoom value
|
|
2685
|
+
*/
|
|
2686
|
+
getCurrentZoom(): number;
|
|
2687
|
+
/**
|
|
2688
|
+
* Apply zoom with center point
|
|
2689
|
+
*/
|
|
2690
|
+
private applyZoom;
|
|
2691
|
+
/**
|
|
2692
|
+
* Apply zoom scale with specific center point
|
|
2693
|
+
*/
|
|
2694
|
+
private applyZoomScale;
|
|
2695
|
+
/**
|
|
2696
|
+
* Handle mouse wheel zoom toward the cursor position
|
|
2697
|
+
*/
|
|
2698
|
+
handleWheelZoom(deltaY: number): void;
|
|
2699
|
+
/**
|
|
2700
|
+
* Fit the content bounds to fill the stage container
|
|
2701
|
+
*/
|
|
2702
|
+
fitToContainer(padding?: number): void;
|
|
2703
|
+
/**
|
|
2704
|
+
* Get current stage position
|
|
2705
|
+
*/
|
|
2706
|
+
getStagePosition(): {
|
|
2707
|
+
x: number;
|
|
2708
|
+
y: number;
|
|
2709
|
+
};
|
|
2710
|
+
/**
|
|
2711
|
+
* Set stage position (useful for programmatic panning)
|
|
2712
|
+
*/
|
|
2713
|
+
setStagePosition(position: {
|
|
2714
|
+
x: number;
|
|
2715
|
+
y: number;
|
|
2716
|
+
}): void;
|
|
2717
|
+
/**
|
|
2718
|
+
* Fit the stage content bounds to the container, centering and scaling
|
|
2719
|
+
* to show the full content with optional padding.
|
|
2720
|
+
*/
|
|
2721
|
+
fitToBounds(contentBounds: {
|
|
2722
|
+
x: number;
|
|
2723
|
+
y: number;
|
|
2724
|
+
width: number;
|
|
2725
|
+
height: number;
|
|
2726
|
+
}, containerWidth: number, containerHeight: number, padding?: number): void;
|
|
2727
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapZoomService, never>;
|
|
2728
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<TicketMapZoomService>;
|
|
2729
|
+
}
|
|
2730
|
+
|
|
2731
|
+
declare class ConfirmationOrderModalService extends BaseModalService {
|
|
2732
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ConfirmationOrderModalService, never>;
|
|
2733
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ConfirmationOrderModalService>;
|
|
2734
|
+
}
|
|
2735
|
+
|
|
2736
|
+
/**
|
|
2737
|
+
* Transporte SSE del estado de asientos en vivo. Es el único punto de la
|
|
2738
|
+
* librería que sabe de EventSource/HTTP para esto — aplica cada snapshot
|
|
2739
|
+
* recibido sobre PerformanceBookingDataService (repinta el mapa) y
|
|
2740
|
+
* TicketSelectionService (mantiene la disponibilidad al día para
|
|
2741
|
+
* validaciones de zona/límite de compra).
|
|
2742
|
+
*
|
|
2743
|
+
* Cada intento de reconexión pide un ticket NUEVO (el anterior es de un
|
|
2744
|
+
* solo uso y expira a los ~30s), con backoff exponencial acotado.
|
|
2745
|
+
*/
|
|
2746
|
+
declare class SeatAvailabilitySseService {
|
|
2747
|
+
private apiService;
|
|
2748
|
+
private bookingDataService;
|
|
2749
|
+
private ticketSelectionService;
|
|
2750
|
+
private platformId;
|
|
2751
|
+
private config;
|
|
2752
|
+
private eventSource;
|
|
2753
|
+
private reconnectTimer;
|
|
2754
|
+
private reconnectAttempts;
|
|
2755
|
+
private currentPerformanceId;
|
|
2756
|
+
private currentIsAdmin;
|
|
2757
|
+
private stopped;
|
|
2758
|
+
constructor(apiService: ApiService, bookingDataService: PerformanceBookingDataService, ticketSelectionService: TicketSelectionService, platformId: Object, config: TickeraComponentsConfig);
|
|
2759
|
+
connect(performanceId: number, opts?: {
|
|
2760
|
+
isAdmin?: boolean;
|
|
2761
|
+
}): void;
|
|
2762
|
+
disconnect(): void;
|
|
2763
|
+
private openConnection;
|
|
2764
|
+
private startStream;
|
|
2765
|
+
private scheduleReconnect;
|
|
2766
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SeatAvailabilitySseService, never>;
|
|
2767
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<SeatAvailabilitySseService>;
|
|
2768
|
+
}
|
|
2769
|
+
|
|
2770
|
+
/**
|
|
2771
|
+
* Cliente de la cola adaptativa (fase 4). No decide CUÁNDO se activa la
|
|
2772
|
+
* cola — eso es enteramente responsabilidad del backend (AdmissionGuard +
|
|
2773
|
+
* LoadBasedAdmissionPolicy) — este servicio solo sabe reaccionar al 429
|
|
2774
|
+
* `ADMISSION_QUEUE_REQUIRED` que ese guard puede devolver en
|
|
2775
|
+
* /carts/reserve y /orders/checkout.
|
|
2776
|
+
*
|
|
2777
|
+
* Uso típico en el punto de llamada (ver reservation-confirmation y
|
|
2778
|
+
* checkout-form): reintentar la request original dentro de un catchError:
|
|
2779
|
+
*
|
|
2780
|
+
* this.cartService.reserve(dto).pipe(
|
|
2781
|
+
* catchError((err) => {
|
|
2782
|
+
* if (!this.admissionQueueService.isAdmissionRequired(err)) return throwError(() => err);
|
|
2783
|
+
* const performanceId = this.admissionQueueService.getPerformanceId(err)!;
|
|
2784
|
+
* return this.admissionQueueService.waitForAdmission(performanceId).pipe(
|
|
2785
|
+
* switchMap(() => this.cartService.reserve(dto)),
|
|
2786
|
+
* );
|
|
2787
|
+
* }),
|
|
2788
|
+
* )
|
|
2789
|
+
*
|
|
2790
|
+
* Reutiliza el mismo transporte SSE con ticket de un solo uso de la fase 3
|
|
2791
|
+
* (ver SeatAvailabilitySseService) — acá el ticket llega directo en la
|
|
2792
|
+
* respuesta de /join, así que no hace falta un endpoint de ticket aparte;
|
|
2793
|
+
* cada reintento de conexión vuelve a hacer /join (el ticket anterior es
|
|
2794
|
+
* de un solo uso y expira a los ~30s).
|
|
2795
|
+
*/
|
|
2796
|
+
declare class AdmissionQueueService {
|
|
2797
|
+
private apiService;
|
|
2798
|
+
private feedbackModalService;
|
|
2799
|
+
private platformId;
|
|
2800
|
+
private config;
|
|
2801
|
+
constructor(apiService: ApiService, feedbackModalService: FeedbackModalService, platformId: Object, config: TickeraComponentsConfig);
|
|
2802
|
+
/** True si el error es el 429 específico de "alta demanda, únete a la fila". */
|
|
2803
|
+
isAdmissionRequired(error: unknown): error is HttpErrorResponse;
|
|
2804
|
+
getPerformanceId(error: HttpErrorResponse): number | null;
|
|
2805
|
+
/**
|
|
2806
|
+
* Se une a la fila de `performanceId` y completa (emite una vez y cierra)
|
|
2807
|
+
* en cuanto el usuario queda admitido. Mientras espera, muestra un modal
|
|
2808
|
+
* ligero con la posición vigente, actualizado por SSE. Si quien se
|
|
2809
|
+
* suscribió se desuscribe antes de ser admitido (el usuario navega a
|
|
2810
|
+
* otro lado, cierra el modal, o el componente se destruye), libera el
|
|
2811
|
+
* lugar en la fila con /leave.
|
|
2812
|
+
*/
|
|
2813
|
+
waitForAdmission(performanceId: number): Observable<void>;
|
|
2814
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AdmissionQueueService, never>;
|
|
2815
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AdmissionQueueService>;
|
|
2816
|
+
}
|
|
2817
|
+
|
|
2818
|
+
declare class TicketQrService {
|
|
2819
|
+
private apiService;
|
|
2820
|
+
constructor(apiService: ApiService);
|
|
2821
|
+
fetchQrToken(ticketUuid: string): Observable<QrTokenResponse>;
|
|
2822
|
+
fetchMyQrToken(ticketUuid: string): Observable<QrTokenResponse>;
|
|
2823
|
+
downloadTicketPdf(ticketUuid: string): Observable<Blob>;
|
|
2824
|
+
downloadMyTicketPdf(ticketUuid: string): Observable<Blob>;
|
|
2825
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketQrService, never>;
|
|
2826
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<TicketQrService>;
|
|
1322
2827
|
}
|
|
1323
2828
|
|
|
1324
|
-
declare class
|
|
1325
|
-
private priceZoneEventService;
|
|
1326
|
-
priceZone: WritableSignal<PriceZone | null>;
|
|
2829
|
+
declare class TicketQrModalService {
|
|
1327
2830
|
isOpen: WritableSignal<boolean>;
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
open(priceZone?: PriceZone | null): void;
|
|
2831
|
+
ticketUuid: WritableSignal<string | null>;
|
|
2832
|
+
ticketDescription: WritableSignal<string | null>;
|
|
2833
|
+
open(ticketUuid: string, description?: string): void;
|
|
1332
2834
|
close(): void;
|
|
1333
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<
|
|
1334
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<
|
|
2835
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketQrModalService, never>;
|
|
2836
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<TicketQrModalService>;
|
|
2837
|
+
}
|
|
2838
|
+
|
|
2839
|
+
declare class VipCardService {
|
|
2840
|
+
private apiService;
|
|
2841
|
+
constructor(apiService: ApiService);
|
|
2842
|
+
findMy(): Observable<{
|
|
2843
|
+
data: VipCard | null;
|
|
2844
|
+
}>;
|
|
2845
|
+
activate(data: any): Observable<VipOrderResponse>;
|
|
2846
|
+
recharge(data: any): Observable<VipOrderResponse>;
|
|
2847
|
+
fetchAll(params?: FetchVipCardsParams): Observable<VipCardsResponse>;
|
|
2848
|
+
fetchOneById(id: number): Observable<VipCardResponse>;
|
|
2849
|
+
activateAdmin(data: ActivateVipCardParams): Observable<VipOrderResponse>;
|
|
2850
|
+
rechargeAdmin(id: number, data: any): Observable<VipOrderResponse>;
|
|
2851
|
+
updateStatus(id: number, status: VipCardStatus): Observable<VipCardResponse>;
|
|
2852
|
+
updateTerms(id: number): Observable<VipCardResponse>;
|
|
2853
|
+
fetchTransactions(id: number, page?: number, limit?: number): Observable<VipTransactionsResponse>;
|
|
2854
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<VipCardService, never>;
|
|
2855
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<VipCardService>;
|
|
2856
|
+
}
|
|
2857
|
+
|
|
2858
|
+
/**
|
|
2859
|
+
* Servicio genérico de "cambios pendientes" para tablas con edición rápida
|
|
2860
|
+
* + guardado masivo (QTN-49, primer consumidor: Bonos de Regalo en
|
|
2861
|
+
* tickera-backoffice-frontend).
|
|
2862
|
+
*
|
|
2863
|
+
* IMPORTANTE: proveerlo a nivel de componente/página
|
|
2864
|
+
* (`providers: [PendingChangesService]` en el `@Component` que lo usa),
|
|
2865
|
+
* NUNCA en `providedIn: 'root'` — si no, dos tablas con edición rápida
|
|
2866
|
+
* abiertas al mismo tiempo (dos pestañas, o dos listados en la misma
|
|
2867
|
+
* sesión) compartirían el mismo estado de cambios pendientes. Mismo
|
|
2868
|
+
* criterio que ya sigue este repo con GiftBondService, provisto a nivel de
|
|
2869
|
+
* GiftBondDetailsComponent en vez de en 'root'.
|
|
2870
|
+
*/
|
|
2871
|
+
declare class PendingChangesService<TValue = any> {
|
|
2872
|
+
private readonly changesSignal;
|
|
2873
|
+
private readonly originalValues;
|
|
2874
|
+
readonly changes: Signal<Map<number, TValue>>;
|
|
2875
|
+
readonly changeCount: Signal<number>;
|
|
2876
|
+
readonly hasChanges: Signal<boolean>;
|
|
2877
|
+
/**
|
|
2878
|
+
* Registra (o actualiza) el cambio pendiente de `id`. `originalValue` es
|
|
2879
|
+
* el valor que tenía la fila antes de cualquier edición en esta sesión de
|
|
2880
|
+
* la tabla — solo se guarda la primera vez que se llama para ese id, así
|
|
2881
|
+
* que no importa pasarlo en cada llamada subsiguiente.
|
|
2882
|
+
*
|
|
2883
|
+
* Si `newValue` termina siendo igual al valor original, el id se
|
|
2884
|
+
* elimina automáticamente de los cambios pendientes (evita que quede
|
|
2885
|
+
* marcado como "modificado" un valor que el usuario cambió y luego
|
|
2886
|
+
* revirtió a mano).
|
|
2887
|
+
*/
|
|
2888
|
+
setChange(id: number, originalValue: TValue, newValue: TValue): void;
|
|
2889
|
+
getPendingValue(id: number): TValue | undefined;
|
|
2890
|
+
/** Descarta el cambio pendiente de una fila puntual (botón "Deshacer" por fila, si aplica). */
|
|
2891
|
+
discard(id: number): void;
|
|
2892
|
+
/** Descarta todos los cambios pendientes sin guardar nada (botón "Deshacer" de la barra flotante). */
|
|
2893
|
+
discardAll(): void;
|
|
2894
|
+
/** Llamar después de que el guardado en lote fue exitoso, para limpiar el estado. */
|
|
2895
|
+
clearAfterSave(): void;
|
|
2896
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PendingChangesService<any>, never>;
|
|
2897
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<PendingChangesService<any>>;
|
|
1335
2898
|
}
|
|
1336
2899
|
|
|
1337
2900
|
declare const authInterceptor: HttpInterceptorFn;
|
|
@@ -1341,19 +2904,19 @@ declare class AppButtonComponent {
|
|
|
1341
2904
|
disabled: boolean;
|
|
1342
2905
|
loading: boolean;
|
|
1343
2906
|
type: 'button' | 'submit';
|
|
1344
|
-
variant: 'primary' | 'secondary' | '
|
|
2907
|
+
variant: 'primary' | 'secondary' | 'tertiary' | 'success' | 'transparent';
|
|
1345
2908
|
text: string;
|
|
1346
2909
|
size: 'xs' | 'sm' | 'md' | 'lg';
|
|
1347
2910
|
loadingText: string;
|
|
1348
2911
|
icon: string;
|
|
2912
|
+
tooltip: string;
|
|
1349
2913
|
handleClick(): void;
|
|
1350
2914
|
get buttonClasses(): string;
|
|
1351
2915
|
static ɵfac: i0.ɵɵFactoryDeclaration<AppButtonComponent, never>;
|
|
1352
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppButtonComponent, "app-button", never, { "disabled": { "alias": "disabled"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "type": { "alias": "type"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "text": { "alias": "text"; "required": false; }; "size": { "alias": "size"; "required": false; }; "loadingText": { "alias": "loadingText"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; }, { "clicked": "clicked"; }, never, never, true, never>;
|
|
2916
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AppButtonComponent, "app-button", never, { "disabled": { "alias": "disabled"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "type": { "alias": "type"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "text": { "alias": "text"; "required": false; }; "size": { "alias": "size"; "required": false; }; "loadingText": { "alias": "loadingText"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "tooltip": { "alias": "tooltip"; "required": false; }; }, { "clicked": "clicked"; }, never, never, true, never>;
|
|
1353
2917
|
}
|
|
1354
2918
|
|
|
1355
2919
|
declare class AppLinkButtonComponent {
|
|
1356
|
-
protected readonly BASE_BUTTON_CLASSES: string;
|
|
1357
2920
|
disabled: boolean;
|
|
1358
2921
|
loading: boolean;
|
|
1359
2922
|
target: '_blank' | '_self' | '_parent' | '_top';
|
|
@@ -1363,10 +2926,11 @@ declare class AppLinkButtonComponent {
|
|
|
1363
2926
|
route: string;
|
|
1364
2927
|
queryParams: Record<string, any>;
|
|
1365
2928
|
size: 'xs' | 'sm' | 'md' | 'lg';
|
|
1366
|
-
variant: 'primary' | 'secondary' | '
|
|
2929
|
+
variant: 'primary' | 'secondary' | 'tertiary' | 'success' | 'transparent';
|
|
2930
|
+
tooltip: string;
|
|
1367
2931
|
get buttonClasses(): string;
|
|
1368
2932
|
static ɵfac: i0.ɵɵFactoryDeclaration<AppLinkButtonComponent, never>;
|
|
1369
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppLinkButtonComponent, "app-link-button", never, { "disabled": { "alias": "disabled"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "target": { "alias": "target"; "required": false; }; "text": { "alias": "text"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "loadingText": { "alias": "loadingText"; "required": false; }; "route": { "alias": "route"; "required": false; }; "queryParams": { "alias": "queryParams"; "required": false; }; "size": { "alias": "size"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; }, {}, never, never, true, never>;
|
|
2933
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AppLinkButtonComponent, "app-link-button", never, { "disabled": { "alias": "disabled"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "target": { "alias": "target"; "required": false; }; "text": { "alias": "text"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "loadingText": { "alias": "loadingText"; "required": false; }; "route": { "alias": "route"; "required": false; }; "queryParams": { "alias": "queryParams"; "required": false; }; "size": { "alias": "size"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "tooltip": { "alias": "tooltip"; "required": false; }; }, {}, never, never, true, never>;
|
|
1370
2934
|
}
|
|
1371
2935
|
|
|
1372
2936
|
declare class AppAlertComponent {
|
|
@@ -1374,38 +2938,70 @@ declare class AppAlertComponent {
|
|
|
1374
2938
|
text: string;
|
|
1375
2939
|
closeable: boolean;
|
|
1376
2940
|
size: 'xs' | 'sm' | 'md' | 'lg';
|
|
1377
|
-
get alertColorClasses(): string;
|
|
1378
|
-
get alertSizeClasses(): string;
|
|
1379
|
-
get alertClasses(): string;
|
|
1380
2941
|
get alertIcon(): string;
|
|
1381
2942
|
static ɵfac: i0.ɵɵFactoryDeclaration<AppAlertComponent, never>;
|
|
1382
2943
|
static ɵcmp: i0.ɵɵComponentDeclaration<AppAlertComponent, "app-alert", never, { "type": { "alias": "type"; "required": false; }; "text": { "alias": "text"; "required": false; }; "closeable": { "alias": "closeable"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, never>;
|
|
1383
2944
|
}
|
|
1384
2945
|
|
|
1385
|
-
declare class
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
2946
|
+
declare class FeedbackModalComponent implements OnChanges, OnDestroy {
|
|
2947
|
+
isOpen: WritableSignal<boolean>;
|
|
2948
|
+
type: FeedbackModalType;
|
|
2949
|
+
title: string;
|
|
2950
|
+
message: string;
|
|
2951
|
+
showHeader: boolean;
|
|
2952
|
+
showCloseButton: boolean;
|
|
2953
|
+
showTitle: boolean;
|
|
2954
|
+
autoClose: boolean;
|
|
2955
|
+
autoCloseDuration: number;
|
|
2956
|
+
buttonText: string;
|
|
2957
|
+
closed: EventEmitter<void>;
|
|
2958
|
+
private autoCloseTimeout;
|
|
2959
|
+
get defaultButtonText(): string;
|
|
2960
|
+
get resolvedButtonText(): string;
|
|
2961
|
+
get buttonVariant(): 'primary' | 'secondary';
|
|
2962
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
2963
|
+
ngOnDestroy(): void;
|
|
1390
2964
|
closeModal(): void;
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
static
|
|
2965
|
+
private scheduleAutoClose;
|
|
2966
|
+
private clearAutoClose;
|
|
2967
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FeedbackModalComponent, never>;
|
|
2968
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FeedbackModalComponent, "feedback-modal", never, { "isOpen": { "alias": "isOpen"; "required": false; }; "type": { "alias": "type"; "required": false; }; "title": { "alias": "title"; "required": false; }; "message": { "alias": "message"; "required": false; }; "showHeader": { "alias": "showHeader"; "required": false; }; "showCloseButton": { "alias": "showCloseButton"; "required": false; }; "showTitle": { "alias": "showTitle"; "required": false; }; "autoClose": { "alias": "autoClose"; "required": false; }; "autoCloseDuration": { "alias": "autoCloseDuration"; "required": false; }; "buttonText": { "alias": "buttonText"; "required": false; }; }, { "closed": "closed"; }, never, never, true, never>;
|
|
1394
2969
|
}
|
|
1395
2970
|
|
|
2971
|
+
type DeleteConfirmationStep = 'input' | 'final';
|
|
1396
2972
|
declare class DeleteConfirmationComponent {
|
|
1397
2973
|
private fb;
|
|
1398
2974
|
private deleteConfirmationService;
|
|
1399
2975
|
protected transloco: TranslocoService;
|
|
1400
2976
|
deleteConfirmationForm: FormGroup;
|
|
2977
|
+
/**
|
|
2978
|
+
* Two-step flow:
|
|
2979
|
+
* 1. 'input' -> the user must type the resource name to unlock the delete action.
|
|
2980
|
+
* 2. 'final' -> a last feedback/confirmation step is shown before the delete
|
|
2981
|
+
* callback actually runs, so a slip of the mouse on the first
|
|
2982
|
+
* step can never trigger a real deletion by itself.
|
|
2983
|
+
*/
|
|
2984
|
+
step: DeleteConfirmationStep;
|
|
1401
2985
|
constructor(fb: FormBuilder, deleteConfirmationService: DeleteConfirmationService, transloco: TranslocoService);
|
|
1402
2986
|
get title(): string;
|
|
1403
2987
|
get resourceName(): string;
|
|
1404
2988
|
get confirmationText(): string;
|
|
1405
2989
|
get isOpen(): i0.WritableSignal<boolean>;
|
|
1406
2990
|
get isConfirmationValid(): boolean;
|
|
2991
|
+
get isFinalStep(): boolean;
|
|
2992
|
+
/** Cancels the whole flow (from either step) without deleting anything. */
|
|
1407
2993
|
onCloseModal(): void;
|
|
2994
|
+
/** Step 1 submit: only advances to the final confirmation, never deletes. */
|
|
1408
2995
|
onConfirmDelete(): void;
|
|
2996
|
+
/**
|
|
2997
|
+
* Step 2 cancel: goes back to the input step without touching what the
|
|
2998
|
+
* user typed, so they don't have to retype it if they just want to
|
|
2999
|
+
* double-check before deleting.
|
|
3000
|
+
*/
|
|
3001
|
+
onBackToInput(): void;
|
|
3002
|
+
/** Step 2 submit: this is the only place that actually triggers deletion. */
|
|
3003
|
+
onFinalConfirm(): void;
|
|
3004
|
+
private resetState;
|
|
1409
3005
|
static ɵfac: i0.ɵɵFactoryDeclaration<DeleteConfirmationComponent, never>;
|
|
1410
3006
|
static ɵcmp: i0.ɵɵComponentDeclaration<DeleteConfirmationComponent, "delete-confirmation", never, {}, {}, never, never, true, never>;
|
|
1411
3007
|
}
|
|
@@ -1413,14 +3009,29 @@ declare class DeleteConfirmationComponent {
|
|
|
1413
3009
|
declare class AppModalComponent {
|
|
1414
3010
|
title: string;
|
|
1415
3011
|
disableClose: boolean;
|
|
3012
|
+
showHeader: boolean;
|
|
3013
|
+
showCloseButton: boolean;
|
|
3014
|
+
showTitle: boolean;
|
|
3015
|
+
interactiveClose: boolean;
|
|
1416
3016
|
isOpen: WritableSignal<boolean>;
|
|
1417
|
-
size:
|
|
3017
|
+
size: ModalSize;
|
|
1418
3018
|
closeModal: EventEmitter<void>;
|
|
1419
|
-
private readonly SIZE_CLASSES;
|
|
1420
|
-
get sizeClass(): string;
|
|
1421
3019
|
onCloseModal(): void;
|
|
3020
|
+
onInteractiveClose(): void;
|
|
3021
|
+
onKeydownEscape(): void;
|
|
1422
3022
|
static ɵfac: i0.ɵɵFactoryDeclaration<AppModalComponent, never>;
|
|
1423
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppModalComponent, "app-modal", never, { "title": { "alias": "title"; "required": false; }; "disableClose": { "alias": "disableClose"; "required": false; }; "isOpen": { "alias": "isOpen"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "closeModal": "closeModal"; }, never, ["*"], true, never>;
|
|
3023
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AppModalComponent, "app-modal", never, { "title": { "alias": "title"; "required": false; }; "disableClose": { "alias": "disableClose"; "required": false; }; "showHeader": { "alias": "showHeader"; "required": false; }; "showCloseButton": { "alias": "showCloseButton"; "required": false; }; "showTitle": { "alias": "showTitle"; "required": false; }; "interactiveClose": { "alias": "interactiveClose"; "required": false; }; "isOpen": { "alias": "isOpen"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "closeModal": "closeModal"; }, never, ["*"], true, never>;
|
|
3024
|
+
}
|
|
3025
|
+
|
|
3026
|
+
declare class AppBadgeComponent {
|
|
3027
|
+
text: string;
|
|
3028
|
+
color: BadgeColor;
|
|
3029
|
+
size: BadgeSize;
|
|
3030
|
+
bordered: boolean;
|
|
3031
|
+
backgroundColor: string;
|
|
3032
|
+
textColor: string;
|
|
3033
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AppBadgeComponent, never>;
|
|
3034
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AppBadgeComponent, "app-badge", never, { "text": { "alias": "text"; "required": false; }; "color": { "alias": "color"; "required": false; }; "size": { "alias": "size"; "required": false; }; "bordered": { "alias": "bordered"; "required": false; }; "backgroundColor": { "alias": "backgroundColor"; "required": false; }; "textColor": { "alias": "textColor"; "required": false; }; }, {}, never, never, true, never>;
|
|
1424
3035
|
}
|
|
1425
3036
|
|
|
1426
3037
|
declare class AuditInformationComponent {
|
|
@@ -1429,12 +3040,13 @@ declare class AuditInformationComponent {
|
|
|
1429
3040
|
static ɵcmp: i0.ɵɵComponentDeclaration<AuditInformationComponent, "app-audit-information", never, { "data": { "alias": "data"; "required": false; }; }, {}, never, never, true, never>;
|
|
1430
3041
|
}
|
|
1431
3042
|
|
|
1432
|
-
declare class DynamicTableComponent {
|
|
3043
|
+
declare class DynamicTableComponent implements OnChanges {
|
|
1433
3044
|
private injector;
|
|
1434
3045
|
constructor(injector: Injector);
|
|
1435
3046
|
title: string;
|
|
1436
3047
|
data: any[];
|
|
1437
3048
|
headers: any[];
|
|
3049
|
+
searcherPlaceholder: string;
|
|
1438
3050
|
columnComponents: {
|
|
1439
3051
|
[key: string]: Type<any>;
|
|
1440
3052
|
};
|
|
@@ -1442,17 +3054,116 @@ declare class DynamicTableComponent {
|
|
|
1442
3054
|
totalItems: number;
|
|
1443
3055
|
itemsPerPage: number;
|
|
1444
3056
|
currentPage: number;
|
|
3057
|
+
searchValue: string;
|
|
1445
3058
|
pageChange: EventEmitter<number>;
|
|
1446
3059
|
searchChange: EventEmitter<string>;
|
|
3060
|
+
pageSizeChange: EventEmitter<number>;
|
|
3061
|
+
pageSizeOptions: number[];
|
|
1447
3062
|
showPagination: boolean;
|
|
1448
3063
|
showSearch: boolean;
|
|
1449
3064
|
showTitle: boolean;
|
|
1450
3065
|
get totalPages(): number;
|
|
1451
3066
|
onSearch(event: any): void;
|
|
1452
3067
|
changePage(delta: number): void;
|
|
3068
|
+
changePageSize(event: any): void;
|
|
3069
|
+
private rowInjectors;
|
|
3070
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
1453
3071
|
createInjector(row: any): Injector;
|
|
1454
3072
|
static ɵfac: i0.ɵɵFactoryDeclaration<DynamicTableComponent, never>;
|
|
1455
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DynamicTableComponent, "dynamic-table", never, { "title": { "alias": "title"; "required": false; }; "data": { "alias": "data"; "required": false; }; "headers": { "alias": "headers"; "required": false; }; "columnComponents": { "alias": "columnComponents"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; "totalItems": { "alias": "totalItems"; "required": false; }; "itemsPerPage": { "alias": "itemsPerPage"; "required": false; }; "currentPage": { "alias": "currentPage"; "required": false; }; "showPagination": { "alias": "showPagination"; "required": false; }; "showSearch": { "alias": "showSearch"; "required": false; }; "showTitle": { "alias": "showTitle"; "required": false; }; }, { "pageChange": "pageChange"; "searchChange": "searchChange"; }, never, never, true, never>;
|
|
3073
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DynamicTableComponent, "dynamic-table", never, { "title": { "alias": "title"; "required": false; }; "data": { "alias": "data"; "required": false; }; "headers": { "alias": "headers"; "required": false; }; "searcherPlaceholder": { "alias": "searcherPlaceholder"; "required": false; }; "columnComponents": { "alias": "columnComponents"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; "totalItems": { "alias": "totalItems"; "required": false; }; "itemsPerPage": { "alias": "itemsPerPage"; "required": false; }; "currentPage": { "alias": "currentPage"; "required": false; }; "searchValue": { "alias": "searchValue"; "required": false; }; "showPagination": { "alias": "showPagination"; "required": false; }; "showSearch": { "alias": "showSearch"; "required": false; }; "showTitle": { "alias": "showTitle"; "required": false; }; }, { "pageChange": "pageChange"; "searchChange": "searchChange"; "pageSizeChange": "pageSizeChange"; }, never, never, true, never>;
|
|
3074
|
+
}
|
|
3075
|
+
|
|
3076
|
+
declare class TextExpandableComponent implements OnChanges {
|
|
3077
|
+
text: string;
|
|
3078
|
+
maxLength: number;
|
|
3079
|
+
fontSize: TextFontSize;
|
|
3080
|
+
allowHtml: boolean;
|
|
3081
|
+
maxLines?: number;
|
|
3082
|
+
protected expanded: boolean;
|
|
3083
|
+
ngOnChanges(): void;
|
|
3084
|
+
get plainText(): string;
|
|
3085
|
+
get truncated(): boolean;
|
|
3086
|
+
get visibleText(): string;
|
|
3087
|
+
get lines(): number;
|
|
3088
|
+
toggleExpanded(): void;
|
|
3089
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TextExpandableComponent, never>;
|
|
3090
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TextExpandableComponent, "text-expandable", never, { "text": { "alias": "text"; "required": true; }; "maxLength": { "alias": "maxLength"; "required": false; }; "fontSize": { "alias": "fontSize"; "required": false; }; "allowHtml": { "alias": "allowHtml"; "required": false; }; "maxLines": { "alias": "maxLines"; "required": false; }; }, {}, never, never, true, never>;
|
|
3091
|
+
}
|
|
3092
|
+
|
|
3093
|
+
/**
|
|
3094
|
+
* Select genérico para editar un campo (típicamente "estado") directamente
|
|
3095
|
+
* en una celda de tabla, sin guardar de inmediato (QTN-49).
|
|
3096
|
+
*
|
|
3097
|
+
* Este componente es deliberadamente "tonto": no sabe a qué recurso
|
|
3098
|
+
* pertenece la fila ni cómo guardarla — solo muestra `options`, refleja
|
|
3099
|
+
* `value`, y emite `valueChange` cuando el usuario elige otra opción.
|
|
3100
|
+
* El componente que lo envuelve (p. ej. gift-bond-table-status en
|
|
3101
|
+
* tickera-backoffice-frontend) es quien conoce el id de la fila y decide
|
|
3102
|
+
* si guarda de inmediato o acumula el cambio en un
|
|
3103
|
+
* PendingChangesService + bulk-save-bar para guardado masivo.
|
|
3104
|
+
*/
|
|
3105
|
+
declare class QuickStatusEditComponent {
|
|
3106
|
+
options: SelectOption[];
|
|
3107
|
+
value: any;
|
|
3108
|
+
/** Resalta visualmente la celda como "modificada, sin guardar". */
|
|
3109
|
+
dirty: boolean;
|
|
3110
|
+
disabled: boolean;
|
|
3111
|
+
valueChange: EventEmitter<any>;
|
|
3112
|
+
onChange(newValue: any): void;
|
|
3113
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<QuickStatusEditComponent, never>;
|
|
3114
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<QuickStatusEditComponent, "quick-status-edit", never, { "options": { "alias": "options"; "required": true; }; "value": { "alias": "value"; "required": false; }; "dirty": { "alias": "dirty"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
3115
|
+
}
|
|
3116
|
+
|
|
3117
|
+
/**
|
|
3118
|
+
* Barra flotante "Guardar cambios" para guardado masivo (QTN-49).
|
|
3119
|
+
*
|
|
3120
|
+
* No conoce el recurso concreto ni cómo persistir los cambios — el
|
|
3121
|
+
* componente que la usa le pasa `[count]` (típicamente
|
|
3122
|
+
* `pendingChangesService.changeCount()`) y escucha `(save)`/`(discard)`
|
|
3123
|
+
* para llamar al endpoint bulk correspondiente.
|
|
3124
|
+
*/
|
|
3125
|
+
declare class BulkSaveBarComponent {
|
|
3126
|
+
count: number;
|
|
3127
|
+
loading: boolean;
|
|
3128
|
+
saveLabel: string;
|
|
3129
|
+
discardLabel: string;
|
|
3130
|
+
save: EventEmitter<void>;
|
|
3131
|
+
discard: EventEmitter<void>;
|
|
3132
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BulkSaveBarComponent, never>;
|
|
3133
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BulkSaveBarComponent, "bulk-save-bar", never, { "count": { "alias": "count"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "saveLabel": { "alias": "saveLabel"; "required": false; }; "discardLabel": { "alias": "discardLabel"; "required": false; }; }, { "save": "save"; "discard": "discard"; }, never, never, true, never>;
|
|
3134
|
+
}
|
|
3135
|
+
|
|
3136
|
+
declare class ShowCardComponent {
|
|
3137
|
+
show: Show;
|
|
3138
|
+
linkText: string;
|
|
3139
|
+
linkUrlFn?: (show: Show) => string;
|
|
3140
|
+
linkQueryParams?: Record<string, any>;
|
|
3141
|
+
transloco: TranslocoService;
|
|
3142
|
+
dateService: DateService;
|
|
3143
|
+
formatTimeDate(date: string): Date;
|
|
3144
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ShowCardComponent, never>;
|
|
3145
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ShowCardComponent, "show-card", never, { "show": { "alias": "show"; "required": true; }; "linkText": { "alias": "linkText"; "required": false; }; "linkUrlFn": { "alias": "linkUrlFn"; "required": false; }; "linkQueryParams": { "alias": "linkQueryParams"; "required": false; }; }, {}, never, never, true, never>;
|
|
3146
|
+
}
|
|
3147
|
+
|
|
3148
|
+
declare class ShowTypeBadgeComponent {
|
|
3149
|
+
show: Show;
|
|
3150
|
+
size: BadgeSize;
|
|
3151
|
+
transloco: TranslocoService;
|
|
3152
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ShowTypeBadgeComponent, never>;
|
|
3153
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ShowTypeBadgeComponent, "show-type-badge", never, { "show": { "alias": "show"; "required": true; }; "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, never>;
|
|
3154
|
+
}
|
|
3155
|
+
|
|
3156
|
+
declare class ShowCardSkeletonComponent {
|
|
3157
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ShowCardSkeletonComponent, never>;
|
|
3158
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ShowCardSkeletonComponent, "show-card-skeleton", never, {}, {}, never, never, true, never>;
|
|
3159
|
+
}
|
|
3160
|
+
|
|
3161
|
+
declare class AppBreadcumbComponent {
|
|
3162
|
+
homeUrl: string | undefined;
|
|
3163
|
+
steps: BreadcrumbStep[];
|
|
3164
|
+
theme: BreadcrumbTheme;
|
|
3165
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AppBreadcumbComponent, never>;
|
|
3166
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AppBreadcumbComponent, "app-breadcrumb", never, { "homeUrl": { "alias": "homeUrl"; "required": false; }; "steps": { "alias": "steps"; "required": false; }; "theme": { "alias": "theme"; "required": false; }; }, {}, never, never, true, never>;
|
|
1456
3167
|
}
|
|
1457
3168
|
|
|
1458
3169
|
declare class LanguageSwitcherComponent {
|
|
@@ -1465,6 +3176,67 @@ declare class LanguageSwitcherComponent {
|
|
|
1465
3176
|
static ɵcmp: i0.ɵɵComponentDeclaration<LanguageSwitcherComponent, "language-switcher", never, {}, {}, never, never, true, never>;
|
|
1466
3177
|
}
|
|
1467
3178
|
|
|
3179
|
+
declare class SidebarMenuComponent implements OnInit {
|
|
3180
|
+
private router;
|
|
3181
|
+
protected sidebarState: SidebarStateService;
|
|
3182
|
+
/** Menu items to render. Each app owns its own routes/roles and passes them in here. */
|
|
3183
|
+
items: SidebarMenuItem[];
|
|
3184
|
+
/** Route the brand/logo link should navigate to (e.g. the dashboard). */
|
|
3185
|
+
homePath: string;
|
|
3186
|
+
/** Optional brand logo shown in the sidebar header. Omit to render no logo. */
|
|
3187
|
+
logoUrl: string;
|
|
3188
|
+
logoAlt: string;
|
|
3189
|
+
private readonly IS_ACTIVE_MATCH_OPTIONS;
|
|
3190
|
+
constructor(router: Router, sidebarState: SidebarStateService);
|
|
3191
|
+
ngOnInit(): void;
|
|
3192
|
+
private updateSubmenuState;
|
|
3193
|
+
isSubmenuActive(item: SidebarMenuItem): boolean;
|
|
3194
|
+
toggleSubmenu(item: SidebarMenuItem): void;
|
|
3195
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SidebarMenuComponent, never>;
|
|
3196
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SidebarMenuComponent, "sidebar-menu", never, { "items": { "alias": "items"; "required": true; }; "homePath": { "alias": "homePath"; "required": true; }; "logoUrl": { "alias": "logoUrl"; "required": false; }; "logoAlt": { "alias": "logoAlt"; "required": false; }; }, {}, never, never, true, never>;
|
|
3197
|
+
}
|
|
3198
|
+
|
|
3199
|
+
declare class AdminNavbarComponent {
|
|
3200
|
+
protected sidebarState: SidebarStateService;
|
|
3201
|
+
/** Currently logged-in admin, or null while it hasn't loaded yet. */
|
|
3202
|
+
admin: Admin | null;
|
|
3203
|
+
/** Route the "my account" menu item should link to. */
|
|
3204
|
+
myAccountPath: string;
|
|
3205
|
+
/** Emitted when the admin clicks "log out" in the profile menu. */
|
|
3206
|
+
logout: EventEmitter<void>;
|
|
3207
|
+
isProfileMenuOpen: WritableSignal<boolean>;
|
|
3208
|
+
constructor(sidebarState: SidebarStateService);
|
|
3209
|
+
toggleProfileMenu(): void;
|
|
3210
|
+
onLogout(): void;
|
|
3211
|
+
clickout(event: Event): void;
|
|
3212
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AdminNavbarComponent, never>;
|
|
3213
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AdminNavbarComponent, "admin-navbar", never, { "admin": { "alias": "admin"; "required": false; }; "myAccountPath": { "alias": "myAccountPath"; "required": false; }; }, { "logout": "logout"; }, never, never, true, never>;
|
|
3214
|
+
}
|
|
3215
|
+
|
|
3216
|
+
/**
|
|
3217
|
+
* Reusable admin shell: sidebar + navbar + router-outlet.
|
|
3218
|
+
*
|
|
3219
|
+
* This component is intentionally free of any auth/session logic — that stays
|
|
3220
|
+
* in the consuming app. Project app-specific global UI (e.g. a session-timeout
|
|
3221
|
+
* modal) through the default content slot.
|
|
3222
|
+
*/
|
|
3223
|
+
declare class AdminLayoutComponent {
|
|
3224
|
+
items: SidebarMenuItem[];
|
|
3225
|
+
homePath: string;
|
|
3226
|
+
admin: Admin | null;
|
|
3227
|
+
myAccountPath: string;
|
|
3228
|
+
logoUrl: string;
|
|
3229
|
+
logoAlt: string;
|
|
3230
|
+
logout: EventEmitter<void>;
|
|
3231
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AdminLayoutComponent, never>;
|
|
3232
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AdminLayoutComponent, "admin-layout", never, { "items": { "alias": "items"; "required": true; }; "homePath": { "alias": "homePath"; "required": true; }; "admin": { "alias": "admin"; "required": false; }; "myAccountPath": { "alias": "myAccountPath"; "required": false; }; "logoUrl": { "alias": "logoUrl"; "required": false; }; "logoAlt": { "alias": "logoAlt"; "required": false; }; }, { "logout": "logout"; }, never, ["*"], true, never>;
|
|
3233
|
+
}
|
|
3234
|
+
|
|
3235
|
+
declare class PublicLayoutComponent {
|
|
3236
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PublicLayoutComponent, never>;
|
|
3237
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PublicLayoutComponent, "app-public-layout", never, {}, {}, never, never, true, never>;
|
|
3238
|
+
}
|
|
3239
|
+
|
|
1468
3240
|
declare class FormInputComponent implements ControlValueAccessor {
|
|
1469
3241
|
ngControl: NgControl;
|
|
1470
3242
|
private transloco;
|
|
@@ -1475,12 +3247,14 @@ declare class FormInputComponent implements ControlValueAccessor {
|
|
|
1475
3247
|
placeholder: string;
|
|
1476
3248
|
required: boolean;
|
|
1477
3249
|
readonly: boolean;
|
|
3250
|
+
maxlength: number | null;
|
|
1478
3251
|
minlength: number | null;
|
|
3252
|
+
max: number | null;
|
|
1479
3253
|
min: number | null;
|
|
1480
3254
|
step: number | null;
|
|
1481
3255
|
pattern: string | null;
|
|
1482
3256
|
fieldGroupClass: string;
|
|
1483
|
-
autocomplete:
|
|
3257
|
+
autocomplete: string;
|
|
1484
3258
|
value: any;
|
|
1485
3259
|
disabled: boolean;
|
|
1486
3260
|
onChange: any;
|
|
@@ -1497,12 +3271,68 @@ declare class FormInputComponent implements ControlValueAccessor {
|
|
|
1497
3271
|
get inputClasses(): string;
|
|
1498
3272
|
get fieldGroupClasses(): string;
|
|
1499
3273
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormInputComponent, [{ optional: true; self: true; }, null]>;
|
|
1500
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FormInputComponent, "form-input", never, { "label": { "alias": "label"; "required": false; }; "type": { "alias": "type"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "minlength": { "alias": "minlength"; "required": false; }; "min": { "alias": "min"; "required": false; }; "step": { "alias": "step"; "required": false; }; "pattern": { "alias": "pattern"; "required": false; }; "fieldGroupClass": { "alias": "fieldGroupClass"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; }, {}, never, never, true, never>;
|
|
3274
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FormInputComponent, "form-input", never, { "label": { "alias": "label"; "required": false; }; "type": { "alias": "type"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "maxlength": { "alias": "maxlength"; "required": false; }; "minlength": { "alias": "minlength"; "required": false; }; "max": { "alias": "max"; "required": false; }; "min": { "alias": "min"; "required": false; }; "step": { "alias": "step"; "required": false; }; "pattern": { "alias": "pattern"; "required": false; }; "fieldGroupClass": { "alias": "fieldGroupClass"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; }, {}, never, never, true, never>;
|
|
3275
|
+
}
|
|
3276
|
+
|
|
3277
|
+
type IdentityDocumentType = 'CC' | 'CE' | 'PA' | 'NIT' | 'TI' | 'RC';
|
|
3278
|
+
/**
|
|
3279
|
+
* Campo de documento de identidad (QTN-44).
|
|
3280
|
+
*
|
|
3281
|
+
* Componente compartido que, dado un `documentType` (CC, CE, PA, NIT, TI, RC),
|
|
3282
|
+
* aplica automáticamente el formato y las validaciones correspondientes a los
|
|
3283
|
+
* lineamientos de documentos de identidad de Colombia: solo dígitos y rango de
|
|
3284
|
+
* longitud para CC/TI/RC/NIT, alfanumérico con longitud máxima para CE/PA, y
|
|
3285
|
+
* validación opcional del dígito de verificación (DV) para NIT.
|
|
3286
|
+
*
|
|
3287
|
+
* Sigue el mismo patrón que `NumberInputComponent`: standalone,
|
|
3288
|
+
* `ControlValueAccessor` + `Validator` vía `NG_VALUE_ACCESSOR`/`NG_VALIDATORS`.
|
|
3289
|
+
*/
|
|
3290
|
+
declare class IdentityDocumentInputComponent implements ControlValueAccessor, Validator, OnChanges {
|
|
3291
|
+
transloco: TranslocoService;
|
|
3292
|
+
private injector;
|
|
3293
|
+
private elementRef;
|
|
3294
|
+
label: string;
|
|
3295
|
+
name: string;
|
|
3296
|
+
id: string;
|
|
3297
|
+
placeholder: string;
|
|
3298
|
+
required: boolean;
|
|
3299
|
+
readonly: boolean;
|
|
3300
|
+
fieldGroupClass: string;
|
|
3301
|
+
documentType: IdentityDocumentType | '';
|
|
3302
|
+
validateCheckDigit: boolean;
|
|
3303
|
+
value: string | null;
|
|
3304
|
+
disabled: boolean;
|
|
3305
|
+
onChange: any;
|
|
3306
|
+
onTouched: any;
|
|
3307
|
+
private _ngControl;
|
|
3308
|
+
constructor(transloco: TranslocoService, injector: Injector, elementRef: ElementRef);
|
|
3309
|
+
get ngControl(): NgControl | null;
|
|
3310
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
3311
|
+
private get rule();
|
|
3312
|
+
get isDigitsOnly(): boolean;
|
|
3313
|
+
get inputMode(): string;
|
|
3314
|
+
get maxLength(): number | null;
|
|
3315
|
+
writeValue(value: any): void;
|
|
3316
|
+
registerOnChange(fn: any): void;
|
|
3317
|
+
registerOnTouched(fn: any): void;
|
|
3318
|
+
setDisabledState(isDisabled: boolean): void;
|
|
3319
|
+
onKeyDown(event: KeyboardEvent): void;
|
|
3320
|
+
onInput(rawValue: string): void;
|
|
3321
|
+
validate(control: AbstractControl): ValidationErrors | null;
|
|
3322
|
+
private validateLength;
|
|
3323
|
+
private validateNitWithCheckDigit;
|
|
3324
|
+
static computeNitCheckDigit(nit: string): number;
|
|
3325
|
+
get inputId(): string;
|
|
3326
|
+
get showError(): boolean;
|
|
3327
|
+
get errorMessage(): string;
|
|
3328
|
+
get fieldGroupClasses(): string;
|
|
3329
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<IdentityDocumentInputComponent, never>;
|
|
3330
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<IdentityDocumentInputComponent, "identity-document-input", never, { "label": { "alias": "label"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "fieldGroupClass": { "alias": "fieldGroupClass"; "required": false; }; "documentType": { "alias": "documentType"; "required": false; }; "validateCheckDigit": { "alias": "validateCheckDigit"; "required": false; }; }, {}, never, never, true, never>;
|
|
1501
3331
|
}
|
|
1502
3332
|
|
|
1503
3333
|
declare class FormSelectComponent implements ControlValueAccessor {
|
|
1504
3334
|
ngControl: NgControl;
|
|
1505
|
-
|
|
3335
|
+
protected transloco: TranslocoService;
|
|
1506
3336
|
label: string;
|
|
1507
3337
|
name: string;
|
|
1508
3338
|
id: string;
|
|
@@ -1526,8 +3356,6 @@ declare class FormSelectComponent implements ControlValueAccessor {
|
|
|
1526
3356
|
get inputId(): string;
|
|
1527
3357
|
get showError(): boolean;
|
|
1528
3358
|
get errorMessage(): string;
|
|
1529
|
-
get resolvedDefaultOptionLabel(): string;
|
|
1530
|
-
get selectClasses(): string;
|
|
1531
3359
|
get fieldGroupClasses(): string;
|
|
1532
3360
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormSelectComponent, [{ optional: true; self: true; }, null]>;
|
|
1533
3361
|
static ɵcmp: i0.ɵɵComponentDeclaration<FormSelectComponent, "form-select", never, { "label": { "alias": "label"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "options": { "alias": "options"; "required": false; }; "fieldGroupClass": { "alias": "fieldGroupClass"; "required": false; }; "showDefaultOption": { "alias": "showDefaultOption"; "required": false; }; "defaultOptionLabel": { "alias": "defaultOptionLabel"; "required": false; }; }, {}, never, never, true, never>;
|
|
@@ -1560,12 +3388,110 @@ declare class FormTextareaComponent implements ControlValueAccessor {
|
|
|
1560
3388
|
get inputId(): string;
|
|
1561
3389
|
get showError(): boolean;
|
|
1562
3390
|
get errorMessage(): string;
|
|
1563
|
-
get inputClasses(): string;
|
|
1564
3391
|
get fieldGroupClasses(): string;
|
|
1565
3392
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormTextareaComponent, [{ optional: true; self: true; }, null]>;
|
|
1566
3393
|
static ɵcmp: i0.ɵɵComponentDeclaration<FormTextareaComponent, "form-textarea", never, { "label": { "alias": "label"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "minlength": { "alias": "minlength"; "required": false; }; "maxlength": { "alias": "maxlength"; "required": false; }; "rows": { "alias": "rows"; "required": false; }; "cols": { "alias": "cols"; "required": false; }; "fieldGroupClass": { "alias": "fieldGroupClass"; "required": false; }; }, {}, never, never, true, never>;
|
|
1567
3394
|
}
|
|
1568
3395
|
|
|
3396
|
+
declare class NumberInputComponent implements ControlValueAccessor, Validator, OnChanges {
|
|
3397
|
+
transloco: TranslocoService;
|
|
3398
|
+
private injector;
|
|
3399
|
+
private elementRef;
|
|
3400
|
+
label: string;
|
|
3401
|
+
name: string;
|
|
3402
|
+
id: string;
|
|
3403
|
+
placeholder: string;
|
|
3404
|
+
required: boolean;
|
|
3405
|
+
readonly: boolean;
|
|
3406
|
+
min: number | null;
|
|
3407
|
+
max: number | null;
|
|
3408
|
+
step: number;
|
|
3409
|
+
fieldGroupClass: string;
|
|
3410
|
+
value: number | null;
|
|
3411
|
+
disabled: boolean;
|
|
3412
|
+
onChange: any;
|
|
3413
|
+
onTouched: any;
|
|
3414
|
+
private _ngControl;
|
|
3415
|
+
constructor(transloco: TranslocoService, injector: Injector, elementRef: ElementRef);
|
|
3416
|
+
get ngControl(): NgControl | null;
|
|
3417
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
3418
|
+
validate(control: AbstractControl): ValidationErrors | null;
|
|
3419
|
+
writeValue(value: any): void;
|
|
3420
|
+
registerOnChange(fn: any): void;
|
|
3421
|
+
registerOnTouched(fn: any): void;
|
|
3422
|
+
setDisabledState(isDisabled: boolean): void;
|
|
3423
|
+
onInput(value: any): void;
|
|
3424
|
+
increment(): void;
|
|
3425
|
+
decrement(): void;
|
|
3426
|
+
get canIncrement(): boolean;
|
|
3427
|
+
get canDecrement(): boolean;
|
|
3428
|
+
get inputId(): string;
|
|
3429
|
+
get showError(): boolean;
|
|
3430
|
+
get errorMessage(): string;
|
|
3431
|
+
get fieldGroupClasses(): string;
|
|
3432
|
+
private clamp;
|
|
3433
|
+
private round;
|
|
3434
|
+
private emitNativeChange;
|
|
3435
|
+
private minValidator;
|
|
3436
|
+
private maxValidator;
|
|
3437
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NumberInputComponent, never>;
|
|
3438
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NumberInputComponent, "number-input", never, { "label": { "alias": "label"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "step": { "alias": "step"; "required": false; }; "fieldGroupClass": { "alias": "fieldGroupClass"; "required": false; }; }, {}, never, never, true, never>;
|
|
3439
|
+
}
|
|
3440
|
+
|
|
3441
|
+
declare class PhoneInputComponent implements ControlValueAccessor, Validator, OnChanges {
|
|
3442
|
+
private transloco;
|
|
3443
|
+
private injector;
|
|
3444
|
+
label: string;
|
|
3445
|
+
name: string;
|
|
3446
|
+
id: string;
|
|
3447
|
+
placeholder: string;
|
|
3448
|
+
required: boolean;
|
|
3449
|
+
readonly: boolean;
|
|
3450
|
+
maxNationalDigits: number | null;
|
|
3451
|
+
minNationalDigits: number | null;
|
|
3452
|
+
defaultCountry: string;
|
|
3453
|
+
fieldGroupClass: string;
|
|
3454
|
+
readonly countries: tickera_angular_components.PhoneCountry[];
|
|
3455
|
+
readonly phoneOptions: {
|
|
3456
|
+
search: string;
|
|
3457
|
+
name: string;
|
|
3458
|
+
isoCode: string;
|
|
3459
|
+
dialCode: string;
|
|
3460
|
+
}[];
|
|
3461
|
+
selectedIso: string;
|
|
3462
|
+
nationalNumber: string;
|
|
3463
|
+
disabled: boolean;
|
|
3464
|
+
onChange: any;
|
|
3465
|
+
onTouched: any;
|
|
3466
|
+
onValidatorChange: () => void;
|
|
3467
|
+
private _ngControl;
|
|
3468
|
+
constructor(transloco: TranslocoService, injector: Injector);
|
|
3469
|
+
get ngControl(): NgControl | null;
|
|
3470
|
+
get selectedCountry(): tickera_angular_components.PhoneCountry;
|
|
3471
|
+
get dialCode(): string;
|
|
3472
|
+
dialCodeOf(isoCode: string): string;
|
|
3473
|
+
get value(): string;
|
|
3474
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
3475
|
+
registerOnValidatorChange(fn: () => void): void;
|
|
3476
|
+
validate(control: AbstractControl): ValidationErrors | null;
|
|
3477
|
+
writeValue(value: string | null | undefined): void;
|
|
3478
|
+
registerOnChange(fn: any): void;
|
|
3479
|
+
registerOnTouched(fn: any): void;
|
|
3480
|
+
setDisabledState(isDisabled: boolean): void;
|
|
3481
|
+
onInput(event: Event): void;
|
|
3482
|
+
onCountryChange(isoCode: string): void;
|
|
3483
|
+
get inputId(): string;
|
|
3484
|
+
get showError(): boolean;
|
|
3485
|
+
get errorMessage(): string;
|
|
3486
|
+
get effectivePlaceholder(): string;
|
|
3487
|
+
get fieldGroupClasses(): string;
|
|
3488
|
+
flag(isoCode: string): string;
|
|
3489
|
+
private sanitize;
|
|
3490
|
+
private nationalDigits;
|
|
3491
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PhoneInputComponent, never>;
|
|
3492
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PhoneInputComponent, "phone-input", never, { "label": { "alias": "label"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "maxNationalDigits": { "alias": "maxNationalDigits"; "required": false; }; "minNationalDigits": { "alias": "minNationalDigits"; "required": false; }; "defaultCountry": { "alias": "defaultCountry"; "required": false; }; "fieldGroupClass": { "alias": "fieldGroupClass"; "required": false; }; }, {}, never, never, true, never>;
|
|
3493
|
+
}
|
|
3494
|
+
|
|
1569
3495
|
declare class FormEditorComponent implements ControlValueAccessor, OnInit, OnDestroy {
|
|
1570
3496
|
ngControl: NgControl;
|
|
1571
3497
|
private transloco;
|
|
@@ -1583,7 +3509,8 @@ declare class FormEditorComponent implements ControlValueAccessor, OnInit, OnDes
|
|
|
1583
3509
|
onChange: any;
|
|
1584
3510
|
onTouched: any;
|
|
1585
3511
|
private subscription;
|
|
1586
|
-
|
|
3512
|
+
isBrowser: boolean;
|
|
3513
|
+
constructor(ngControl: NgControl, transloco: TranslocoService, platformId: object);
|
|
1587
3514
|
ngOnInit(): void;
|
|
1588
3515
|
ngOnDestroy(): void;
|
|
1589
3516
|
writeValue(value: any): void;
|
|
@@ -1594,7 +3521,7 @@ declare class FormEditorComponent implements ControlValueAccessor, OnInit, OnDes
|
|
|
1594
3521
|
get showError(): boolean;
|
|
1595
3522
|
get errorMessage(): string;
|
|
1596
3523
|
get fieldGroupClasses(): string;
|
|
1597
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<FormEditorComponent, [{ optional: true; self: true; }, null]>;
|
|
3524
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FormEditorComponent, [{ optional: true; self: true; }, null, null]>;
|
|
1598
3525
|
static ɵcmp: i0.ɵɵComponentDeclaration<FormEditorComponent, "form-editor", never, { "label": { "alias": "label"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "toolbar": { "alias": "toolbar"; "required": false; }; "fieldGroupClass": { "alias": "fieldGroupClass"; "required": false; }; }, {}, never, never, true, never>;
|
|
1599
3526
|
}
|
|
1600
3527
|
|
|
@@ -1628,7 +3555,6 @@ declare class ColorPickerComponent implements ControlValueAccessor {
|
|
|
1628
3555
|
selectPresetColor(color: string): void;
|
|
1629
3556
|
get inputId(): string;
|
|
1630
3557
|
get showError(): boolean;
|
|
1631
|
-
get inputClasses(): string;
|
|
1632
3558
|
get fieldGroupClasses(): string;
|
|
1633
3559
|
isValidHexColor(color: string): boolean;
|
|
1634
3560
|
static ɵfac: i0.ɵɵFactoryDeclaration<ColorPickerComponent, [{ optional: true; self: true; }, null]>;
|
|
@@ -1665,7 +3591,6 @@ declare class DateInputComponent implements ControlValueAccessor {
|
|
|
1665
3591
|
get inputId(): string;
|
|
1666
3592
|
get showError(): boolean;
|
|
1667
3593
|
get errorMessage(): string;
|
|
1668
|
-
get inputClasses(): string;
|
|
1669
3594
|
get fieldGroupClasses(): string;
|
|
1670
3595
|
static ɵfac: i0.ɵɵFactoryDeclaration<DateInputComponent, [{ optional: true; self: true; }, null]>;
|
|
1671
3596
|
static ɵcmp: i0.ɵɵComponentDeclaration<DateInputComponent, "date-input", never, { "label": { "alias": "label"; "required": false; }; "type": { "alias": "type"; "required": false; }; "includeTime": { "alias": "includeTime"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "fieldGroupClass": { "alias": "fieldGroupClass"; "required": false; }; "dateFormat": { "alias": "dateFormat"; "required": false; }; }, {}, never, never, true, never>;
|
|
@@ -1692,9 +3617,6 @@ declare class ToggleSwitchComponent implements ControlValueAccessor {
|
|
|
1692
3617
|
setDisabledState(isDisabled: boolean): void;
|
|
1693
3618
|
onToggle(): void;
|
|
1694
3619
|
get inputId(): string;
|
|
1695
|
-
get toggleSizeClasses(): string;
|
|
1696
|
-
get toggleThumbSizeClasses(): string;
|
|
1697
|
-
get toggleThumbTranslateClasses(): string;
|
|
1698
3620
|
get fieldGroupClasses(): string;
|
|
1699
3621
|
static ɵfac: i0.ɵɵFactoryDeclaration<ToggleSwitchComponent, [{ optional: true; self: true; }]>;
|
|
1700
3622
|
static ɵcmp: i0.ɵɵComponentDeclaration<ToggleSwitchComponent, "toggle-switch", never, { "label": { "alias": "label"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "size": { "alias": "size"; "required": false; }; "fieldGroupClass": { "alias": "fieldGroupClass"; "required": false; }; "description": { "alias": "description"; "required": false; }; }, { "toggleClick": "toggleClick"; }, never, never, true, never>;
|
|
@@ -1763,14 +3685,14 @@ declare class FileUploadPreviewComponent {
|
|
|
1763
3685
|
interface AsyncSelectConfig<T = any> {
|
|
1764
3686
|
load: (params?: {
|
|
1765
3687
|
search?: string;
|
|
1766
|
-
parentId?: number;
|
|
3688
|
+
parentId?: number | number[];
|
|
1767
3689
|
}) => Observable<T>;
|
|
1768
3690
|
map: (response: T) => SelectOption[];
|
|
1769
3691
|
}
|
|
1770
3692
|
declare class AsyncSelectComponent implements OnInit, OnDestroy, OnChanges, ControlValueAccessor {
|
|
1771
3693
|
config?: AsyncSelectConfig<any>;
|
|
1772
3694
|
items: SelectOption[];
|
|
1773
|
-
parentId?: number | null;
|
|
3695
|
+
parentId?: number | number[] | null;
|
|
1774
3696
|
label: string;
|
|
1775
3697
|
placeholder: string;
|
|
1776
3698
|
name: string;
|
|
@@ -1783,6 +3705,7 @@ declare class AsyncSelectComponent implements OnInit, OnDestroy, OnChanges, Cont
|
|
|
1783
3705
|
notFoundText: string;
|
|
1784
3706
|
bindLabel: string;
|
|
1785
3707
|
bindValue: string;
|
|
3708
|
+
disabled: boolean;
|
|
1786
3709
|
value: any;
|
|
1787
3710
|
onChange: any;
|
|
1788
3711
|
onTouched: any;
|
|
@@ -1801,6 +3724,7 @@ declare class AsyncSelectComponent implements OnInit, OnDestroy, OnChanges, Cont
|
|
|
1801
3724
|
private searchMode;
|
|
1802
3725
|
private loadAndMap;
|
|
1803
3726
|
private fetchData;
|
|
3727
|
+
private hasParentId;
|
|
1804
3728
|
private handleParentIdChange;
|
|
1805
3729
|
onSearch(event: any): void;
|
|
1806
3730
|
onSelectChange(value: any): void;
|
|
@@ -1812,7 +3736,7 @@ declare class AsyncSelectComponent implements OnInit, OnDestroy, OnChanges, Cont
|
|
|
1812
3736
|
registerOnTouched(fn: any): void;
|
|
1813
3737
|
setDisabledState(isDisabled: boolean): void;
|
|
1814
3738
|
static ɵfac: i0.ɵɵFactoryDeclaration<AsyncSelectComponent, never>;
|
|
1815
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AsyncSelectComponent, "async-select", never, { "config": { "alias": "config"; "required": false; }; "items": { "alias": "items"; "required": false; }; "parentId": { "alias": "parentId"; "required": false; }; "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "name": { "alias": "name"; "required": false; }; "required": { "alias": "required"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "searchable": { "alias": "searchable"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; }; "notFoundText": { "alias": "notFoundText"; "required": false; }; "bindLabel": { "alias": "bindLabel"; "required": false; }; "bindValue": { "alias": "bindValue"; "required": false; }; }, {}, never, never, true, never>;
|
|
3739
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AsyncSelectComponent, "async-select", never, { "config": { "alias": "config"; "required": false; }; "items": { "alias": "items"; "required": false; }; "parentId": { "alias": "parentId"; "required": false; }; "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "name": { "alias": "name"; "required": false; }; "required": { "alias": "required"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "searchable": { "alias": "searchable"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; }; "notFoundText": { "alias": "notFoundText"; "required": false; }; "bindLabel": { "alias": "bindLabel"; "required": false; }; "bindValue": { "alias": "bindValue"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, {}, never, never, true, never>;
|
|
1816
3740
|
}
|
|
1817
3741
|
|
|
1818
3742
|
declare class ChangePasswordFormComponent {
|
|
@@ -2212,7 +4136,7 @@ declare class ShowMultiSelectComponent implements OnInit, OnDestroy, ControlValu
|
|
|
2212
4136
|
static ɵcmp: i0.ɵɵComponentDeclaration<ShowMultiSelectComponent, "show-multi-select", never, { "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; }, {}, never, never, true, never>;
|
|
2213
4137
|
}
|
|
2214
4138
|
|
|
2215
|
-
declare class PriceZoneSelectComponent implements OnInit, OnDestroy, ControlValueAccessor, Validator {
|
|
4139
|
+
declare class PriceZoneSelectComponent implements OnInit, OnChanges, OnDestroy, ControlValueAccessor, Validator {
|
|
2216
4140
|
private platformId;
|
|
2217
4141
|
private priceZoneService;
|
|
2218
4142
|
label: string;
|
|
@@ -2223,6 +4147,7 @@ declare class PriceZoneSelectComponent implements OnInit, OnDestroy, ControlValu
|
|
|
2223
4147
|
showError: boolean;
|
|
2224
4148
|
customClass: string;
|
|
2225
4149
|
control?: AbstractControl | null;
|
|
4150
|
+
showIds: number[];
|
|
2226
4151
|
priceZoneChange: EventEmitter<number | null>;
|
|
2227
4152
|
priceZones: WritableSignal<SelectOption[]>;
|
|
2228
4153
|
loading: WritableSignal<boolean>;
|
|
@@ -2234,6 +4159,7 @@ declare class PriceZoneSelectComponent implements OnInit, OnDestroy, ControlValu
|
|
|
2234
4159
|
onTouched: any;
|
|
2235
4160
|
constructor(platformId: string, priceZoneService: PriceZoneService);
|
|
2236
4161
|
ngOnInit(): void;
|
|
4162
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
2237
4163
|
get formControl(): FormControl;
|
|
2238
4164
|
ngOnDestroy(): void;
|
|
2239
4165
|
onSearchChange(search: string): void;
|
|
@@ -2246,7 +4172,29 @@ declare class PriceZoneSelectComponent implements OnInit, OnDestroy, ControlValu
|
|
|
2246
4172
|
} | null;
|
|
2247
4173
|
get isInvalid(): boolean;
|
|
2248
4174
|
static ɵfac: i0.ɵɵFactoryDeclaration<PriceZoneSelectComponent, never>;
|
|
2249
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<PriceZoneSelectComponent, "price-zone-select", never, { "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "name": { "alias": "name"; "required": false; }; "required": { "alias": "required"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "showError": { "alias": "showError"; "required": false; }; "customClass": { "alias": "customClass"; "required": false; }; "control": { "alias": "control"; "required": false; }; }, { "priceZoneChange": "priceZoneChange"; }, never, never, true, never>;
|
|
4175
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PriceZoneSelectComponent, "price-zone-select", never, { "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "name": { "alias": "name"; "required": false; }; "required": { "alias": "required"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "showError": { "alias": "showError"; "required": false; }; "customClass": { "alias": "customClass"; "required": false; }; "control": { "alias": "control"; "required": false; }; "showIds": { "alias": "showIds"; "required": false; }; }, { "priceZoneChange": "priceZoneChange"; }, never, never, true, never>;
|
|
4176
|
+
}
|
|
4177
|
+
|
|
4178
|
+
declare class PerformanceTicketStatusBadgeComponent {
|
|
4179
|
+
ticket: PerformanceTicket;
|
|
4180
|
+
size: BadgeSize;
|
|
4181
|
+
protected get statusColors(): {
|
|
4182
|
+
text: string;
|
|
4183
|
+
bg: string;
|
|
4184
|
+
};
|
|
4185
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PerformanceTicketStatusBadgeComponent, never>;
|
|
4186
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PerformanceTicketStatusBadgeComponent, "performance-ticket-status-badge", never, { "ticket": { "alias": "ticket"; "required": true; }; "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, never>;
|
|
4187
|
+
}
|
|
4188
|
+
|
|
4189
|
+
declare class PerformanceStatusBadgeComponent {
|
|
4190
|
+
performance: Performance;
|
|
4191
|
+
size: BadgeSize;
|
|
4192
|
+
protected get statusColors(): {
|
|
4193
|
+
text: string;
|
|
4194
|
+
bg: string;
|
|
4195
|
+
};
|
|
4196
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PerformanceStatusBadgeComponent, never>;
|
|
4197
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PerformanceStatusBadgeComponent, "performance-status-badge", never, { "performance": { "alias": "performance"; "required": true; }; "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, never>;
|
|
2250
4198
|
}
|
|
2251
4199
|
|
|
2252
4200
|
declare class DaySelectorGridComponent {
|
|
@@ -2270,11 +4218,15 @@ declare class DaySelectorGridComponent {
|
|
|
2270
4218
|
declare class PerformanceCardComponent {
|
|
2271
4219
|
protected listEventService: PerformancesListEventsService;
|
|
2272
4220
|
card: DailyPerformanceItem;
|
|
4221
|
+
linkText: string;
|
|
4222
|
+
linkUrlFn?: (card: DailyPerformanceItem) => string;
|
|
4223
|
+
linkQueryParams?: Record<string, any>;
|
|
2273
4224
|
constructor(listEventService: PerformancesListEventsService);
|
|
4225
|
+
get badgeColor(): 'success' | 'error';
|
|
2274
4226
|
onSelect(): void;
|
|
2275
4227
|
isSelected(): boolean;
|
|
2276
4228
|
static ɵfac: i0.ɵɵFactoryDeclaration<PerformanceCardComponent, never>;
|
|
2277
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<PerformanceCardComponent, "performance-card", never, { "card": { "alias": "card"; "required": true; }; }, {}, never, never, true, never>;
|
|
4229
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PerformanceCardComponent, "performance-card", never, { "card": { "alias": "card"; "required": true; }; "linkText": { "alias": "linkText"; "required": false; }; "linkUrlFn": { "alias": "linkUrlFn"; "required": false; }; "linkQueryParams": { "alias": "linkQueryParams"; "required": false; }; }, {}, never, never, true, never>;
|
|
2278
4230
|
}
|
|
2279
4231
|
|
|
2280
4232
|
declare class PerformanceCardListComponent {
|
|
@@ -2282,6 +4234,9 @@ declare class PerformanceCardListComponent {
|
|
|
2282
4234
|
protected performanceService: PerformanceService;
|
|
2283
4235
|
protected listEventService: PerformancesListEventsService;
|
|
2284
4236
|
protected toastService: ToastService;
|
|
4237
|
+
linkText: string;
|
|
4238
|
+
linkUrlFn?: (card: DailyPerformanceItem) => string;
|
|
4239
|
+
linkQueryParams?: Record<string, any>;
|
|
2285
4240
|
loadingData: WritableSignal<boolean>;
|
|
2286
4241
|
performances: WritableSignal<DailyPerformanceItem[]>;
|
|
2287
4242
|
constructor(platformId: object, performanceService: PerformanceService, listEventService: PerformancesListEventsService, toastService: ToastService);
|
|
@@ -2289,7 +4244,7 @@ declare class PerformanceCardListComponent {
|
|
|
2289
4244
|
private loadData;
|
|
2290
4245
|
get selectedDayDate(): string | null;
|
|
2291
4246
|
static ɵfac: i0.ɵɵFactoryDeclaration<PerformanceCardListComponent, never>;
|
|
2292
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<PerformanceCardListComponent, "performance-card-list", never, {}, {}, never, never, true, never>;
|
|
4247
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PerformanceCardListComponent, "performance-card-list", never, { "linkText": { "alias": "linkText"; "required": false; }; "linkUrlFn": { "alias": "linkUrlFn"; "required": false; }; "linkQueryParams": { "alias": "linkQueryParams"; "required": false; }; }, {}, never, never, true, never>;
|
|
2293
4248
|
}
|
|
2294
4249
|
|
|
2295
4250
|
declare class PerformanceStepperComponent {
|
|
@@ -2318,9 +4273,9 @@ declare class ShowsFilterComponent {
|
|
|
2318
4273
|
}
|
|
2319
4274
|
|
|
2320
4275
|
interface PriceZoneItem {
|
|
2321
|
-
|
|
4276
|
+
color: string;
|
|
2322
4277
|
name: string;
|
|
2323
|
-
|
|
4278
|
+
available_seats: number;
|
|
2324
4279
|
price: string;
|
|
2325
4280
|
}
|
|
2326
4281
|
|
|
@@ -2336,5 +4291,454 @@ declare class ZonePriceListComponent {
|
|
|
2336
4291
|
static ɵcmp: i0.ɵɵComponentDeclaration<ZonePriceListComponent, "zone-price-list", never, { "zones": { "alias": "zones"; "required": true; }; }, {}, never, never, true, never>;
|
|
2337
4292
|
}
|
|
2338
4293
|
|
|
2339
|
-
|
|
2340
|
-
|
|
4294
|
+
declare class TicketMapWidgetComponent {
|
|
4295
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapWidgetComponent, never>;
|
|
4296
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TicketMapWidgetComponent, "ticket-map-widget", never, {}, {}, never, ["*"], true, never>;
|
|
4297
|
+
}
|
|
4298
|
+
|
|
4299
|
+
declare class TicketMapWidgetHeaderComponent {
|
|
4300
|
+
title: string;
|
|
4301
|
+
subtitle: string;
|
|
4302
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapWidgetHeaderComponent, never>;
|
|
4303
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TicketMapWidgetHeaderComponent, "ticket-map-widget-header", never, { "title": { "alias": "title"; "required": false; }; "subtitle": { "alias": "subtitle"; "required": false; }; }, {}, never, ["*"], true, never>;
|
|
4304
|
+
}
|
|
4305
|
+
|
|
4306
|
+
declare class TicketMapZoomControlsComponent {
|
|
4307
|
+
private zoomService;
|
|
4308
|
+
readonly currentZoom: i0.Signal<number>;
|
|
4309
|
+
readonly zoomPercentage: i0.Signal<string>;
|
|
4310
|
+
constructor(zoomService: TicketMapZoomService);
|
|
4311
|
+
zoomIn(): void;
|
|
4312
|
+
zoomOut(): void;
|
|
4313
|
+
resetZoom(): void;
|
|
4314
|
+
fitToContainer(): void;
|
|
4315
|
+
handleZoomAction(action: string): void;
|
|
4316
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapZoomControlsComponent, never>;
|
|
4317
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TicketMapZoomControlsComponent, "ticket-map-zoom-controls", never, {}, {}, never, never, true, never>;
|
|
4318
|
+
}
|
|
4319
|
+
|
|
4320
|
+
declare class TicketMapFloorSelectorComponent {
|
|
4321
|
+
private bookingDataService;
|
|
4322
|
+
readonly availableFloors: i0.Signal<tickera_angular_components.HallFloor[]>;
|
|
4323
|
+
readonly visibleFloorIds: i0.Signal<Set<number>>;
|
|
4324
|
+
readonly hasMultipleVisible: i0.Signal<boolean>;
|
|
4325
|
+
constructor(bookingDataService: PerformanceBookingDataService);
|
|
4326
|
+
isFloorVisible(floorId: number): boolean;
|
|
4327
|
+
canToggleOff(floorId: number): boolean;
|
|
4328
|
+
toggleFloor(floorId: number): void;
|
|
4329
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapFloorSelectorComponent, never>;
|
|
4330
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TicketMapFloorSelectorComponent, "ticket-map-floor-selector", never, {}, {}, never, never, true, never>;
|
|
4331
|
+
}
|
|
4332
|
+
|
|
4333
|
+
declare class PerformanceTicketMapComponent implements OnDestroy, AfterViewInit {
|
|
4334
|
+
private platformId;
|
|
4335
|
+
protected bookingDataService: PerformanceBookingDataService;
|
|
4336
|
+
protected feedbackModalService: FeedbackModalService;
|
|
4337
|
+
protected selectionService: TicketSelectionService;
|
|
4338
|
+
protected zoomService: TicketMapZoomService;
|
|
4339
|
+
selectionChange: EventEmitter<PerformanceTicket[]>;
|
|
4340
|
+
needsLoginError: EventEmitter<any>;
|
|
4341
|
+
readOnly: boolean;
|
|
4342
|
+
needsLogin: boolean;
|
|
4343
|
+
isLoggedIn: boolean;
|
|
4344
|
+
stageComponent?: StageComponent;
|
|
4345
|
+
protected tooltipData: i0.WritableSignal<TicketMapTooltipData | null>;
|
|
4346
|
+
protected renderData: i0.Signal<ElementRenderData[]>;
|
|
4347
|
+
private stageReady;
|
|
4348
|
+
private autoFitDone;
|
|
4349
|
+
private resizeObserver?;
|
|
4350
|
+
protected floorLayerRefs: i0.Signal<readonly CoreShapeComponent[]>;
|
|
4351
|
+
protected floorLayerName(floorId: number): string;
|
|
4352
|
+
protected floorGroups: i0.Signal<{
|
|
4353
|
+
floorId: number;
|
|
4354
|
+
elements: ElementRenderData[];
|
|
4355
|
+
}[]>;
|
|
4356
|
+
constructor(platformId: object, bookingDataService: PerformanceBookingDataService, feedbackModalService: FeedbackModalService, selectionService: TicketSelectionService, zoomService: TicketMapZoomService);
|
|
4357
|
+
protected get isBrowser(): boolean;
|
|
4358
|
+
ngAfterViewInit(): void;
|
|
4359
|
+
private setupResizeObserver;
|
|
4360
|
+
private syncStageToContainer;
|
|
4361
|
+
ngOnDestroy(): void;
|
|
4362
|
+
private getInternalPointer;
|
|
4363
|
+
protected selectHallFloor(floorId: number): void;
|
|
4364
|
+
protected handleStageClick(konvaEvent: any): void;
|
|
4365
|
+
protected handleStageMouseMove(konvaEvent: any): void;
|
|
4366
|
+
protected handleStageMouseLeave(): void;
|
|
4367
|
+
protected handleWheel(konvaEvent: any): void;
|
|
4368
|
+
protected trackByElementId(_index: number, item: ElementRenderData): number;
|
|
4369
|
+
protected trackByFloorId(_index: number, floor: HallFloorOption): HallFloorOption;
|
|
4370
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PerformanceTicketMapComponent, never>;
|
|
4371
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PerformanceTicketMapComponent, "performance-ticket-map", never, { "readOnly": { "alias": "readOnly"; "required": false; }; "needsLogin": { "alias": "needsLogin"; "required": false; }; "isLoggedIn": { "alias": "isLoggedIn"; "required": false; }; }, { "selectionChange": "selectionChange"; "needsLoginError": "needsLoginError"; }, never, never, true, never>;
|
|
4372
|
+
}
|
|
4373
|
+
|
|
4374
|
+
declare class TicketMapPriceZonesComponent {
|
|
4375
|
+
title: string;
|
|
4376
|
+
protected bookingDataService: PerformanceBookingDataService;
|
|
4377
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapPriceZonesComponent, never>;
|
|
4378
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TicketMapPriceZonesComponent, "ticket-map-price-zones", never, { "title": { "alias": "title"; "required": false; }; }, {}, never, never, true, never>;
|
|
4379
|
+
}
|
|
4380
|
+
|
|
4381
|
+
declare class TicketMapProductSelectionItemComponent {
|
|
4382
|
+
protected selectionService: TicketSelectionService;
|
|
4383
|
+
product: Product;
|
|
4384
|
+
constructor(selectionService: TicketSelectionService);
|
|
4385
|
+
get quantity(): number;
|
|
4386
|
+
get firstImage(): string | undefined;
|
|
4387
|
+
increment(): void;
|
|
4388
|
+
decrement(): void;
|
|
4389
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapProductSelectionItemComponent, never>;
|
|
4390
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TicketMapProductSelectionItemComponent, "ticket-map-product-selection-item", never, { "product": { "alias": "product"; "required": true; }; }, {}, never, never, true, never>;
|
|
4391
|
+
}
|
|
4392
|
+
|
|
4393
|
+
declare class TIcketMapProductSelectionComponent {
|
|
4394
|
+
title: string;
|
|
4395
|
+
subtitle: string;
|
|
4396
|
+
private bookingDataService;
|
|
4397
|
+
readonly products: i0.Signal<tickera_angular_components.Product[]>;
|
|
4398
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TIcketMapProductSelectionComponent, never>;
|
|
4399
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TIcketMapProductSelectionComponent, "ticket-map-product-selection", never, { "title": { "alias": "title"; "required": false; }; "subtitle": { "alias": "subtitle"; "required": false; }; }, {}, never, never, true, never>;
|
|
4400
|
+
}
|
|
4401
|
+
|
|
4402
|
+
declare class TicketMapTotalsComponent {
|
|
4403
|
+
protected bookingDataService: PerformanceBookingDataService;
|
|
4404
|
+
protected selectionDetailsService: TicketSelectionDetailsService;
|
|
4405
|
+
protected selectionDiscountService: TicketSelectionDiscountService;
|
|
4406
|
+
protected selectionTotalsService: TicketSelectionTotalsService;
|
|
4407
|
+
protected selectionService: TicketSelectionService;
|
|
4408
|
+
private activatedRoute;
|
|
4409
|
+
title: string;
|
|
4410
|
+
buttonText: string;
|
|
4411
|
+
loadingButtonText: string;
|
|
4412
|
+
isLoading: boolean;
|
|
4413
|
+
onPurchaseClick: EventEmitter<void>;
|
|
4414
|
+
constructor(bookingDataService: PerformanceBookingDataService, selectionDetailsService: TicketSelectionDetailsService, selectionDiscountService: TicketSelectionDiscountService, selectionTotalsService: TicketSelectionTotalsService, selectionService: TicketSelectionService, activatedRoute: ActivatedRoute);
|
|
4415
|
+
get serviceFee(): number;
|
|
4416
|
+
get performanceId(): number;
|
|
4417
|
+
get selectedTicketIds(): number[];
|
|
4418
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapTotalsComponent, never>;
|
|
4419
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TicketMapTotalsComponent, "ticket-map-totals", never, { "title": { "alias": "title"; "required": false; }; "buttonText": { "alias": "buttonText"; "required": false; }; "loadingButtonText": { "alias": "loadingButtonText"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; }, { "onPurchaseClick": "onPurchaseClick"; }, never, never, true, never>;
|
|
4420
|
+
}
|
|
4421
|
+
|
|
4422
|
+
declare class TicketMapWrapperComponent {
|
|
4423
|
+
selectionChange: EventEmitter<PerformanceTicket[]>;
|
|
4424
|
+
needsLoginError: EventEmitter<any>;
|
|
4425
|
+
readOnly: boolean;
|
|
4426
|
+
needsLogin: boolean;
|
|
4427
|
+
isLoggedIn: boolean;
|
|
4428
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapWrapperComponent, never>;
|
|
4429
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TicketMapWrapperComponent, "ticket-map-wrapper", never, { "readOnly": { "alias": "readOnly"; "required": false; }; "needsLogin": { "alias": "needsLogin"; "required": false; }; "isLoggedIn": { "alias": "isLoggedIn"; "required": false; }; }, { "selectionChange": "selectionChange"; "needsLoginError": "needsLoginError"; }, never, never, true, never>;
|
|
4430
|
+
}
|
|
4431
|
+
|
|
4432
|
+
declare class SeatSelectionEmptySummaryComponent {
|
|
4433
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SeatSelectionEmptySummaryComponent, never>;
|
|
4434
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SeatSelectionEmptySummaryComponent, "seat-selection-empty-summary", never, {}, {}, never, never, true, never>;
|
|
4435
|
+
}
|
|
4436
|
+
|
|
4437
|
+
declare class SeatSelectionSummaryComponent {
|
|
4438
|
+
protected selectionService: TicketSelectionService;
|
|
4439
|
+
title: string;
|
|
4440
|
+
clearButtonText: string;
|
|
4441
|
+
constructor(selectionService: TicketSelectionService);
|
|
4442
|
+
trackByItem(item: PerformanceTicket): string | number;
|
|
4443
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SeatSelectionSummaryComponent, never>;
|
|
4444
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SeatSelectionSummaryComponent, "seat-selection-summary", never, { "title": { "alias": "title"; "required": false; }; "clearButtonText": { "alias": "clearButtonText"; "required": false; }; }, {}, never, never, true, never>;
|
|
4445
|
+
}
|
|
4446
|
+
|
|
4447
|
+
declare class SeatSelectionSummaryItemComponent {
|
|
4448
|
+
protected selectionService: TicketSelectionService;
|
|
4449
|
+
item: PerformanceTicket;
|
|
4450
|
+
constructor(selectionService: TicketSelectionService);
|
|
4451
|
+
getItemTypeIcon: (ticket: PerformanceTicket) => string;
|
|
4452
|
+
get isZone(): boolean;
|
|
4453
|
+
get zoneMax(): number;
|
|
4454
|
+
onZoneQuantityChange(value: number | null): void;
|
|
4455
|
+
removeItem(ticket: PerformanceTicket): void;
|
|
4456
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SeatSelectionSummaryItemComponent, never>;
|
|
4457
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SeatSelectionSummaryItemComponent, "seat-selection-summary-item", never, { "item": { "alias": "item"; "required": true; }; }, {}, never, never, true, never>;
|
|
4458
|
+
}
|
|
4459
|
+
|
|
4460
|
+
declare class ConfirmationOrderModalComponent {
|
|
4461
|
+
private confirmationOrderModalService;
|
|
4462
|
+
private selectionDiscountService;
|
|
4463
|
+
private selectionTotalsService;
|
|
4464
|
+
private selectionService;
|
|
4465
|
+
private bookingDataService;
|
|
4466
|
+
modalTitle: string;
|
|
4467
|
+
confirmButtonText: string;
|
|
4468
|
+
confirmButtonTextLoading: string;
|
|
4469
|
+
loading: boolean;
|
|
4470
|
+
onConfirm: EventEmitter<any>;
|
|
4471
|
+
constructor(confirmationOrderModalService: ConfirmationOrderModalService, selectionDiscountService: TicketSelectionDiscountService, selectionTotalsService: TicketSelectionTotalsService, selectionService: TicketSelectionService, bookingDataService: PerformanceBookingDataService);
|
|
4472
|
+
get isOpen(): i0.WritableSignal<boolean>;
|
|
4473
|
+
get showTitle(): string | null;
|
|
4474
|
+
get performanceStartTime(): Date | string | null;
|
|
4475
|
+
get hallName(): string | null;
|
|
4476
|
+
get venueName(): string | null;
|
|
4477
|
+
get ticketItems(): PerformanceTicket[];
|
|
4478
|
+
get selectedProducts(): {
|
|
4479
|
+
product: Product;
|
|
4480
|
+
quantity: number;
|
|
4481
|
+
}[];
|
|
4482
|
+
ticketItemLabel(ticket: PerformanceTicket): string;
|
|
4483
|
+
ticketItemPrice(ticket: PerformanceTicket): number;
|
|
4484
|
+
private elementTypeLabel;
|
|
4485
|
+
get selectedCount(): number;
|
|
4486
|
+
get serviceFee(): number;
|
|
4487
|
+
get subtotalValue(): number;
|
|
4488
|
+
get ticketSubtotal(): number;
|
|
4489
|
+
get productSubtotal(): number;
|
|
4490
|
+
get productCount(): number;
|
|
4491
|
+
get totalValue(): number;
|
|
4492
|
+
get totalDiscounted(): number | null;
|
|
4493
|
+
get coupon(): tickera_angular_components.Coupon | null;
|
|
4494
|
+
get corporateBond(): tickera_angular_components.CorporateBond | null;
|
|
4495
|
+
get giftBond(): tickera_angular_components.GiftBondPurchase | null;
|
|
4496
|
+
get vipCard(): tickera_angular_components.VipCard | null;
|
|
4497
|
+
get subscription(): {
|
|
4498
|
+
service_fee_exempt: boolean;
|
|
4499
|
+
} | null;
|
|
4500
|
+
/**
|
|
4501
|
+
* A diferencia de coupon/corporateBond/giftBond (que aquí muestran su
|
|
4502
|
+
* valor crudo sin pasar por `discountAmount()`), para VIP y Abono sí se
|
|
4503
|
+
* calcula el monto real en pesos, ya que el descuento es un porcentaje.
|
|
4504
|
+
*/
|
|
4505
|
+
get vipDiscountAmount(): number;
|
|
4506
|
+
get rawServiceFee(): number;
|
|
4507
|
+
get isServiceFeeExempt(): boolean;
|
|
4508
|
+
onClose(): void;
|
|
4509
|
+
confirmOrder(): void;
|
|
4510
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ConfirmationOrderModalComponent, never>;
|
|
4511
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ConfirmationOrderModalComponent, "confirmation-order-modal", never, { "modalTitle": { "alias": "modalTitle"; "required": false; }; "confirmButtonText": { "alias": "confirmButtonText"; "required": false; }; "confirmButtonTextLoading": { "alias": "confirmButtonTextLoading"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; }, { "onConfirm": "onConfirm"; }, never, never, true, never>;
|
|
4512
|
+
}
|
|
4513
|
+
|
|
4514
|
+
declare class OrderInformationComponent {
|
|
4515
|
+
readonly transloco: TranslocoService;
|
|
4516
|
+
private readonly toastService;
|
|
4517
|
+
order: Order;
|
|
4518
|
+
showPayButton: boolean;
|
|
4519
|
+
createMpPreference?: (order: Order) => Observable<MercadoPagoPreference>;
|
|
4520
|
+
paymentLinkCreated: EventEmitter<MercadoPagoPreference>;
|
|
4521
|
+
isLoading: boolean;
|
|
4522
|
+
constructor(transloco: TranslocoService, toastService: ToastService);
|
|
4523
|
+
get hasServiceFeeExemption(): boolean;
|
|
4524
|
+
get showMpButton(): boolean;
|
|
4525
|
+
payWithMercadoPago(): void;
|
|
4526
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<OrderInformationComponent, never>;
|
|
4527
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<OrderInformationComponent, "order-information", never, { "order": { "alias": "order"; "required": true; }; "showPayButton": { "alias": "showPayButton"; "required": false; }; "createMpPreference": { "alias": "createMpPreference"; "required": false; }; }, { "paymentLinkCreated": "paymentLinkCreated"; }, never, never, true, never>;
|
|
4528
|
+
}
|
|
4529
|
+
|
|
4530
|
+
declare class OrderStatusBadgeComponent {
|
|
4531
|
+
protected transloco: TranslocoService;
|
|
4532
|
+
order: Order | RecentOrder;
|
|
4533
|
+
size: BadgeSize;
|
|
4534
|
+
constructor(transloco: TranslocoService);
|
|
4535
|
+
protected get statusColors(): {
|
|
4536
|
+
text: string;
|
|
4537
|
+
bg: string;
|
|
4538
|
+
};
|
|
4539
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<OrderStatusBadgeComponent, never>;
|
|
4540
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<OrderStatusBadgeComponent, "order-status-badge", never, { "order": { "alias": "order"; "required": true; }; "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, never>;
|
|
4541
|
+
}
|
|
4542
|
+
|
|
4543
|
+
declare class OrderItemTypeBadgeComponent {
|
|
4544
|
+
protected transloco: TranslocoService;
|
|
4545
|
+
item: OrderItem;
|
|
4546
|
+
size: BadgeSize;
|
|
4547
|
+
constructor(transloco: TranslocoService);
|
|
4548
|
+
protected get statusColors(): {
|
|
4549
|
+
text: string;
|
|
4550
|
+
bg: string;
|
|
4551
|
+
};
|
|
4552
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<OrderItemTypeBadgeComponent, never>;
|
|
4553
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<OrderItemTypeBadgeComponent, "order-item-type-badge", never, { "item": { "alias": "item"; "required": true; }; "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, never>;
|
|
4554
|
+
}
|
|
4555
|
+
|
|
4556
|
+
declare class OrderItemsComponent {
|
|
4557
|
+
private ticketQrModalService;
|
|
4558
|
+
order: Order;
|
|
4559
|
+
isCustomer: boolean;
|
|
4560
|
+
ticketCanOpenQr: (order: Order, ticket: tickera_angular_components.PerformanceTicket) => boolean;
|
|
4561
|
+
constructor(ticketQrModalService: TicketQrModalService);
|
|
4562
|
+
protected get orderItems(): Order['order_items'];
|
|
4563
|
+
protected get products(): Order['order_items'];
|
|
4564
|
+
protected get tickets(): Order['order_items'];
|
|
4565
|
+
protected get giftBonds(): Order['order_items'];
|
|
4566
|
+
protected get corporateBonds(): Order['order_items'];
|
|
4567
|
+
protected get vipRecharges(): Order['order_items'];
|
|
4568
|
+
protected get showActionColumn(): boolean;
|
|
4569
|
+
protected itemTotal(quantity: number, price: number | null): number;
|
|
4570
|
+
protected hasDiscount(): boolean;
|
|
4571
|
+
protected hasServiceFeeExemption(): boolean;
|
|
4572
|
+
protected hasTicketDiscount(item: OrderItem): boolean;
|
|
4573
|
+
protected get totals(): {
|
|
4574
|
+
giftBonds: number;
|
|
4575
|
+
corporateBonds: number;
|
|
4576
|
+
products: number;
|
|
4577
|
+
tickets: number;
|
|
4578
|
+
vipRecharges: number;
|
|
4579
|
+
};
|
|
4580
|
+
openTicketQr(ticketUuid: string, description: string): void;
|
|
4581
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<OrderItemsComponent, never>;
|
|
4582
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<OrderItemsComponent, "order-items", never, { "order": { "alias": "order"; "required": true; }; "isCustomer": { "alias": "isCustomer"; "required": false; }; }, {}, never, never, true, never>;
|
|
4583
|
+
}
|
|
4584
|
+
|
|
4585
|
+
declare class OrderDiscountAppliedComponent {
|
|
4586
|
+
order: Order;
|
|
4587
|
+
protected get discountInfo(): OrderDiscountInfo;
|
|
4588
|
+
protected get hasDiscount(): boolean;
|
|
4589
|
+
protected get discountPercentage(): number | null;
|
|
4590
|
+
protected get serviceFeeExemptValue(): number;
|
|
4591
|
+
protected get badgeColors(): {
|
|
4592
|
+
text: string;
|
|
4593
|
+
bg: string;
|
|
4594
|
+
};
|
|
4595
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<OrderDiscountAppliedComponent, never>;
|
|
4596
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<OrderDiscountAppliedComponent, "order-discount-applied", never, { "order": { "alias": "order"; "required": true; }; }, {}, never, never, true, never>;
|
|
4597
|
+
}
|
|
4598
|
+
|
|
4599
|
+
interface BillingField {
|
|
4600
|
+
label: string;
|
|
4601
|
+
value: string | number | null;
|
|
4602
|
+
}
|
|
4603
|
+
declare class OrderBillingInfoComponent {
|
|
4604
|
+
order: Order;
|
|
4605
|
+
protected get fields(): BillingField[];
|
|
4606
|
+
protected get hasFields(): boolean;
|
|
4607
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<OrderBillingInfoComponent, never>;
|
|
4608
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<OrderBillingInfoComponent, "order-billing-info", never, { "order": { "alias": "order"; "required": true; }; }, {}, never, never, true, never>;
|
|
4609
|
+
}
|
|
4610
|
+
|
|
4611
|
+
declare class OrderTransactionsComponent {
|
|
4612
|
+
private transactionDetailsModalService;
|
|
4613
|
+
order: Order;
|
|
4614
|
+
constructor(transactionDetailsModalService: OrderTransactionDetailsModalService);
|
|
4615
|
+
protected get transactions(): Transaction[];
|
|
4616
|
+
protected get hasTransactions(): boolean;
|
|
4617
|
+
protected get txColors(): Record<string, {
|
|
4618
|
+
text: string;
|
|
4619
|
+
bg: string;
|
|
4620
|
+
}>;
|
|
4621
|
+
protected openTransaction(transaction: Transaction): void;
|
|
4622
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<OrderTransactionsComponent, never>;
|
|
4623
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<OrderTransactionsComponent, "order-transactions", never, { "order": { "alias": "order"; "required": true; }; }, {}, never, never, true, never>;
|
|
4624
|
+
}
|
|
4625
|
+
|
|
4626
|
+
declare class OrderTransactionDetailsModalComponent {
|
|
4627
|
+
private modalService;
|
|
4628
|
+
isOpen: WritableSignal<boolean> | null;
|
|
4629
|
+
transaction: Transaction | null;
|
|
4630
|
+
get modalIsOpen(): WritableSignal<boolean>;
|
|
4631
|
+
get selectedTransaction(): WritableSignal<Transaction | null>;
|
|
4632
|
+
protected get txColors(): Record<TransactionStatus, {
|
|
4633
|
+
text: string;
|
|
4634
|
+
bg: string;
|
|
4635
|
+
}>;
|
|
4636
|
+
protected get gatewayResponse(): string;
|
|
4637
|
+
onClose(): void;
|
|
4638
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<OrderTransactionDetailsModalComponent, never>;
|
|
4639
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<OrderTransactionDetailsModalComponent, "order-transaction-details-modal", never, { "isOpen": { "alias": "isOpen"; "required": false; }; "transaction": { "alias": "transaction"; "required": false; }; }, {}, never, never, true, never>;
|
|
4640
|
+
}
|
|
4641
|
+
|
|
4642
|
+
declare class TicketQrComponent implements OnInit, OnDestroy {
|
|
4643
|
+
private ticketQrService;
|
|
4644
|
+
private platformId;
|
|
4645
|
+
ticketUuid: string;
|
|
4646
|
+
isCustomer: boolean;
|
|
4647
|
+
qrCanvas: ElementRef<HTMLCanvasElement>;
|
|
4648
|
+
loading: i0.WritableSignal<boolean>;
|
|
4649
|
+
error: i0.WritableSignal<boolean>;
|
|
4650
|
+
refreshing: i0.WritableSignal<boolean>;
|
|
4651
|
+
countdown: i0.WritableSignal<number>;
|
|
4652
|
+
downloading: i0.WritableSignal<boolean>;
|
|
4653
|
+
private destroy$;
|
|
4654
|
+
private refreshTimeout;
|
|
4655
|
+
private countdownInterval;
|
|
4656
|
+
private isFetching;
|
|
4657
|
+
constructor(ticketQrService: TicketQrService, platformId: Object);
|
|
4658
|
+
ngOnInit(): void;
|
|
4659
|
+
ngOnDestroy(): void;
|
|
4660
|
+
private onVisibilityChange;
|
|
4661
|
+
private onFocus;
|
|
4662
|
+
private refreshFromReenter;
|
|
4663
|
+
retry(): void;
|
|
4664
|
+
downloadPdf(): void;
|
|
4665
|
+
private clearTimers;
|
|
4666
|
+
private fetchAndRender;
|
|
4667
|
+
private scheduleRefresh;
|
|
4668
|
+
private startCountdown;
|
|
4669
|
+
private renderQr;
|
|
4670
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketQrComponent, never>;
|
|
4671
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TicketQrComponent, "performance-ticket-qr", never, { "ticketUuid": { "alias": "ticketUuid"; "required": true; }; "isCustomer": { "alias": "isCustomer"; "required": false; }; }, {}, never, never, true, never>;
|
|
4672
|
+
}
|
|
4673
|
+
|
|
4674
|
+
declare class TicketQrModalComponent {
|
|
4675
|
+
private ticketQrModalService;
|
|
4676
|
+
isCustomer: boolean;
|
|
4677
|
+
constructor(ticketQrModalService: TicketQrModalService);
|
|
4678
|
+
get isOpen(): i0.WritableSignal<boolean>;
|
|
4679
|
+
get ticketUuid(): i0.WritableSignal<string | null>;
|
|
4680
|
+
get ticketDescription(): i0.WritableSignal<string | null>;
|
|
4681
|
+
onClose(): void;
|
|
4682
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TicketQrModalComponent, never>;
|
|
4683
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TicketQrModalComponent, "ticket-qr-modal", never, { "isCustomer": { "alias": "isCustomer"; "required": false; }; }, {}, never, never, true, never>;
|
|
4684
|
+
}
|
|
4685
|
+
|
|
4686
|
+
declare class VipBalanceCardComponent {
|
|
4687
|
+
card: VipCard | null;
|
|
4688
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<VipBalanceCardComponent, never>;
|
|
4689
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<VipBalanceCardComponent, "vip-balance-card", never, { "card": { "alias": "card"; "required": false; }; }, {}, never, never, true, never>;
|
|
4690
|
+
}
|
|
4691
|
+
|
|
4692
|
+
declare class VipCardStatusBadgeComponent {
|
|
4693
|
+
protected readonly tranloco: TranslocoService;
|
|
4694
|
+
card: VipCard;
|
|
4695
|
+
get statusColor(): BadgeColor;
|
|
4696
|
+
get statusTranslationKey(): string;
|
|
4697
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<VipCardStatusBadgeComponent, never>;
|
|
4698
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<VipCardStatusBadgeComponent, "vip-card-status-badge", never, { "card": { "alias": "card"; "required": true; }; }, {}, never, never, true, never>;
|
|
4699
|
+
}
|
|
4700
|
+
|
|
4701
|
+
declare class VipRechargeModalComponent implements OnChanges {
|
|
4702
|
+
private fb;
|
|
4703
|
+
protected transloco: TranslocoService;
|
|
4704
|
+
title: string;
|
|
4705
|
+
submitLabel: string;
|
|
4706
|
+
loading: boolean;
|
|
4707
|
+
amountStep: number;
|
|
4708
|
+
minAmount: number;
|
|
4709
|
+
maxAmount: number;
|
|
4710
|
+
isOpen: WritableSignal<boolean>;
|
|
4711
|
+
/**
|
|
4712
|
+
* Cuando es true (uso desde el ecommerce/cliente), el método de pago queda
|
|
4713
|
+
* fijo en Mercado Pago y no se muestra el selector: desde el lado del
|
|
4714
|
+
* cliente no se pueden elegir métodos de pago administrativos (efectivo,
|
|
4715
|
+
* datáfono, nómina, cambios internos, etc.), esos son exclusivos del
|
|
4716
|
+
* backoffice.
|
|
4717
|
+
*/
|
|
4718
|
+
restrictToMercadoPago: boolean;
|
|
4719
|
+
closeModal: EventEmitter<void>;
|
|
4720
|
+
confirm: EventEmitter<VipRechargeConfirmPayload>;
|
|
4721
|
+
rechargeForm: FormGroup;
|
|
4722
|
+
paymentMethodOptions: {
|
|
4723
|
+
label: string;
|
|
4724
|
+
value: string;
|
|
4725
|
+
}[];
|
|
4726
|
+
constructor(fb: FormBuilder, transloco: TranslocoService);
|
|
4727
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
4728
|
+
private applyPaymentMethodRestriction;
|
|
4729
|
+
onClose(): void;
|
|
4730
|
+
onSubmit(): void;
|
|
4731
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<VipRechargeModalComponent, never>;
|
|
4732
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<VipRechargeModalComponent, "vip-recharge-modal", never, { "title": { "alias": "title"; "required": false; }; "submitLabel": { "alias": "submitLabel"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "amountStep": { "alias": "amountStep"; "required": false; }; "minAmount": { "alias": "minAmount"; "required": false; }; "maxAmount": { "alias": "maxAmount"; "required": false; }; "isOpen": { "alias": "isOpen"; "required": false; }; "restrictToMercadoPago": { "alias": "restrictToMercadoPago"; "required": false; }; }, { "closeModal": "closeModal"; "confirm": "confirm"; }, never, never, true, never>;
|
|
4733
|
+
}
|
|
4734
|
+
|
|
4735
|
+
declare class VipTransactionsTableComponent {
|
|
4736
|
+
transactions: VipTransaction[];
|
|
4737
|
+
loading: boolean;
|
|
4738
|
+
typeLabel(type: VipTransactionType): string;
|
|
4739
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<VipTransactionsTableComponent, never>;
|
|
4740
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<VipTransactionsTableComponent, "vip-transactions-table", never, { "transactions": { "alias": "transactions"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; }, {}, never, never, true, never>;
|
|
4741
|
+
}
|
|
4742
|
+
|
|
4743
|
+
export { ADMIN_API_ROUTES, ADMISSION_API_ROUTES, ALERT_ICONS, AdminLayoutComponent, AdminNavbarComponent, AdminSelectComponent, AdminService, AdmissionQueueService, ApiService, AppAlertComponent, AppBadgeComponent, AppBreadcumbComponent, AppButtonComponent, AppLinkButtonComponent, AppModalComponent, AsyncSelectComponent, AuditInformationComponent, BASE_BUTTON_CLASSES, BASE_INPUT_CLASSES, BUTTON_SIZES_CLASSES, BUTTON_VARIANT_CLASSES, BaseModalService, BrowserZoomLockService, BulkSaveBarComponent, CITY_API_ENDPOINTS, COUNTRY_API_ENDPOINTS, CUSTOMERS_API_ROUTES, ChangePasswordFormComponent, ChangePasswordFormService, CitiesService, CitySelectComponent, ColorPickerComponent, ConfirmationOrderModalComponent, ConfirmationOrderModalService, CorporateBondStatus, CountrySelectComponent, CountryService, CouponApplicability, CouponDiscountType, CouponStatus, CreatorType, CustomerSelectComponent, CustomerService, DEFAULT_STAGE_CONFIG, DOCUMENT_TYPES_OPTIONS, DateInputComponent, DateService, DaySelectorGridComponent, DeleteConfirmationComponent, DeleteConfirmationService, DynamicTableComponent, ERROR_INPUT_CLASSES, EndDateGreaterThanStartValidator, FORM_ERROR_MESSAGES, FeedbackModalComponent, FeedbackModalService, FileType, FileUploadComponent, FileUploadPreviewComponent, FormEditorComponent, FormInputComponent, FormSelectComponent, FormTextareaComponent, GiftBondPurchaseStatus, GiftBondStatus, IdentityDocumentInputComponent, KONVA_SHAPE_MAPPINGS, LanguageSwitcherComponent, MembershipStatus, MinTodayValidator, MustMatchValidator, NumberInputComponent, ORDER_DISCOUNT_COLORS, ORDER_ITEM_TYPES_COLORS, ORDER_STATUS_COLORS, OrderBillingInfoComponent, OrderDiscountAppliedComponent, OrderInformationComponent, OrderItemType, OrderItemTypeBadgeComponent, OrderItemsComponent, OrderStatus, OrderStatusBadgeComponent, OrderTransactionDetailsModalComponent, OrderTransactionDetailsModalService, OrderTransactionsComponent, PAYMENT_METHODS_OPTIONS, PERFORMANCES_API_ROUTES, PERFORMANCE_STATUS_COLORS, PERFORMANCE_TICKET_STATUS_COLORS, PHONE_COUNTRIES, PRICE_ZONES_API_ROUTES, PRODUCTS_API_ROUTES, PRODUCT_CATEGORIES_API_ROUTES, PRODUCT_TAGS_API_ROUTES, PRODUCT_TYPES_API_ROUTES, PaymentMethod, PendingChangesService, PerformanceBookingDataService, PerformanceCardComponent, PerformanceCardListComponent, PerformanceMultiSelectComponent, PerformanceSelectComponent, PerformanceService, PerformanceStatus, PerformanceStatusBadgeComponent, PerformanceStepperComponent, PerformanceTicketMapComponent, PerformanceTicketStatus, PerformanceTicketStatusBadgeComponent, PerformancesListEventsService, PhoneInputComponent, PriceZoneEventService, PriceZoneFormModalService, PriceZoneSelectComponent, PriceZoneService, ProductCategoryService, ProductMultiSelectComponent, ProductSelectComponent, ProductService, ProductTagService, ProductTypeService, PublicLayoutComponent, PurchaseLimitService, QuickStatusEditComponent, RoomMapElementOrientation, RoomMapElementType, SHOWS_API_ROUTES, STATE_API_ENDPOINTS, SeatAvailabilitySseService, SeatSelectionEmptySummaryComponent, SeatSelectionSummaryComponent, SeatSelectionSummaryItemComponent, SelectedDiscountCardType, ShowCardComponent, ShowCardSkeletonComponent, ShowMultiSelectComponent, ShowSelectComponent, ShowService, ShowTypeBadgeComponent, ShowsFilterComponent, SidebarMenuComponent, SidebarStateService, StateSelectComponent, StatesService, TICKERA_COMPONENTS_CONFIG, TICKET_ELEMENT_TYPES, TICKET_MAP_FLOOR_HOVER_FADE_MS, TICKET_MAP_FLOOR_HOVER_OPACITY, TICKET_MAP_GRID_SIZE, TICKET_MAP_LAST_TICKETS_LIMIT, TICKET_MAP_TITLE_HEIGHT, TICKET_STATUS_COLORS, TICKET_STATUS_FILLS, TICKET_STATUS_LABELS, TIcketMapProductSelectionComponent, TRANSACTION_STATUS_COLORS, TextExpandableComponent, TickeraTranslocoLoader, TicketMapFloorSelectorComponent, TicketMapPriceZonesComponent, TicketMapProductSelectionItemComponent, TicketMapTotalsComponent, TicketMapWidgetComponent, TicketMapWidgetHeaderComponent, TicketMapWrapperComponent, TicketMapZoomControlsComponent, TicketMapZoomService, TicketQrComponent, TicketQrModalComponent, TicketQrModalService, TicketQrService, TicketSelectionDetailsService, TicketSelectionDiscountService, TicketSelectionService, TicketSelectionTotalsService, ToastService, ToggleSwitchComponent, TransactionStatus, VENUES_API_ROUTES, VIP_CARDS_API_ROUTES, VipBalanceCardComponent, VipCardService, VipCardStatus, VipCardStatusBadgeComponent, VipRechargeModalComponent, VipTransactionType, VipTransactionsTableComponent, ZonePriceItemComponent, ZonePriceListComponent, authInterceptor, drawChairIcon, drawHappyFace, drawRoundedRect, drawWheelchairIcon, emailValidator, findElementAtPosition, findTicketAtPosition, formatCitiesResponseToSelect, generateExitScene, generateHallwayScene, generateProductionAreaScene, generateSeatBlockScene, generateSeatBlockTicketScene, generateStageScene, generateStairScene, generateTableScene, generateTableTicketScene, generateUnavailableSpaceScene, generateZoneScene, getAdminFullname, getBrowserLanguage, getCustomerFullname, getItemTypeIcon, getOrderDiscount, getStoredLanguage, numberToLetter, parseJsonToFormDataAdvanced, phoneCountryFlag, processElementsToRenderData, provideTickeraComponents, resolveLanguage, setStoredLanguage, ticketCanOpenQr, tintColor, transformImageToFile, transformUrlParams };
|
|
4744
|
+
export type { ActivateVipCardParams, Admin, AdminsResponse, AdmissionEventMessage, AdmissionJoinResponse, AdmissionStatus, AsyncSelectConfig, Auditable, BadgeColor, BadgeSize, BreadcrumbStep, BreadcrumbTheme, CitiesResponse, City, CityResponse, CommonFetchAllParams, CorporateBond, CorporateBondCode, CorporateBondResponse, CountriesResponse, Country, CountryResponse, Coupon, CouponResponse, Customer, CustomerResponse, CustomersResponse, DailyPerformanceHall, DailyPerformanceItem, DailyPerformancePriceZone, DailyPerformanceShow, DailyPerformanceVenue, DailyPerformancesResponse, DeleteConfirmationOpen, DragDropEvent, DynamicTableHeader, ElementPropertiesTab, ElementRenderData, FeedbackModalElement, FeedbackModalType, FetchAdminsParams, FetchCitiesParams, FetchCountriesParams, FetchCustomersParams, FetchDailyPerformancesParams, FetchProductCategoriesParams, FetchProductTagsParams, FetchProductTypesParams, FetchProductsParams, FetchShowCategoriesParams, FetchShowGendersParams, FetchShowTypesParams, FetchShowsParams, FetchStatesParams, FetchVipCardsParams, FileUploadConfig, FindAllPerformancesParams, FindAllPriceZoneParams, GiftBond, GiftBondImage, GiftBondPurchase, GiftBondPurchaseResponse, GiftBondPurchasesResponse, GiftBondResponse, GiftBondsResponse, Hall, HallFloor, HallFloorOption, IdentityDocumentType, KonvaShapeConfig, Membership, MercadoPagoPreference, ModalSize, NumerationConfig, Order, OrderBillingInfo, OrderDiscountInfo, OrderDiscountType, OrderItem, OrderPerformanceSnapshot, OrderResponse, OrderShowSnapshot, OrdersResponse, Performance, PerformanceAvailableDay, PerformanceBookingDataResponse, PerformanceResponse, PerformanceTicket, PerformancesAvailableDaysResponse, PerformancesResponseInterface, PhoneCountry, PriceZone, PriceZoneResponse, PriceZoneUpdateResponse, PriceZonesResponseInterface, Product, ProductCategoriesResponse, ProductCategory, ProductCategoryResponse, ProductImage, ProductResponse, ProductTag, ProductTagResponse, ProductTagsResponse, ProductTaxonomy, ProductType, ProductTypeResponse, ProductTypesResponse, ProductsResponseInterface, QrTokenData, QrTokenResponse, RecentOrder, RecentRoomMap, ReservePerformanceDto, RoomMap, RoomMapBaseElement, RoomMapCanvasConfiguration, RoomMapCanvasElement, RoomMapChairPosition, RoomMapElementTemplate, RoomMapExitElement, RoomMapGridPosition, RoomMapPosition, RoomMapProductionAreaElement, RoomMapSeatDisplayState, RoomMapSeatElement, RoomMapSeatState, RoomMapSize, RoomMapStageElement, RoomMapTableElement, RoomMapUnavailableElement, RoomMapZoneElement, SeatEventMessage, SeatStatusUpdate, SelectOption, SelectedDiscountCard, Show, ShowCategoriesResponse, ShowCategory, ShowCategoryResponse, ShowGender, ShowGenderResponse, ShowGendersResponse, ShowImage, ShowResponse, ShowType, ShowTypeResponse, ShowTypesResponse, ShowsResponseInterface, SidebarMenuItem, State, StateResponse, StatesResponse, TextFontSize, TickeraComponentsConfig, TicketMapSeatPosition, TicketMapTableChairPosition, TicketMapTooltipData, TicketMapZoneQuantityState, TicketMapZoomConfig, Transaction, UploadedFile, ValidateCorporateBondResponse, ValidateCouponResponse, ValidateGiftBondResponse, Venue, VenueImage, VipCard, VipCardResponse, VipCardsResponse, VipCategorySnapshot, VipOrderResponse, VipRechargeConfirmPayload, VipTransaction, VipTransactionsResponse };
|