tickera-angular-components 0.0.1-dev.1 → 0.0.1-dev.100

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/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, OnDestroy, ElementRef, OnChanges, SimpleChanges } from '@angular/core';
3
- import { ValidatorFn, FormGroup, FormBuilder, ControlValueAccessor, NgControl, Validator, AbstractControl, FormControl } from '@angular/forms';
4
- import { HttpClient, HttpInterceptorFn } from '@angular/common/http';
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 { TranslocoService } from '@jsverse/transloco';
8
+ import { ShapeConfig, Shape } from 'konva/lib/Shape';
9
+ import { Context } from 'konva/lib/Context';
10
+ import { ValidatorFn, FormGroup, FormBuilder, ControlValueAccessor, NgControl, Validator, AbstractControl, FormControl } from '@angular/forms';
11
+ import { HttpClient, HttpInterceptorFn } from '@angular/common/http';
12
+ import { Stage } from 'konva/lib/Stage';
8
13
  import { Toolbar, Editor } from 'ngx-editor';
9
- import { Router } from '@angular/router';
14
+ import { Router, ActivatedRoute } from '@angular/router';
15
+ import { StageComponent } from 'ng2-konva';
16
+ import * as tickera_angular_components from 'tickera-angular-components';
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 const ALERT_BASE_CLASSES = "border rounded relative flex items-center gap-2 px-4 py-2";
19
- declare const ALERT_COLOR_CLASSES: {
20
- success: string;
21
- error: string;
22
- warning: string;
23
- info: string;
24
- };
25
- declare const ALERT_SIZE_CLASSES: {
26
- xs: string;
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,26 +41,6 @@ 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;
@@ -78,10 +64,10 @@ declare const COUNTRY_API_ENDPOINTS: {
78
64
  delete: (id: number) => string;
79
65
  };
80
66
 
81
- declare const STATE_API_ENDPOINTS: {
67
+ declare const CUSTOMERS_API_ROUTES: {
82
68
  findAll: string;
83
69
  create: string;
84
- findById: (id: number) => string;
70
+ findOne: (id: number) => string;
85
71
  update: (id: number) => string;
86
72
  delete: (id: number) => string;
87
73
  };
@@ -92,6 +78,7 @@ declare const PERFORMANCES_API_ROUTES: {
92
78
  createBulk: string;
93
79
  findOneById: (id: number) => string;
94
80
  findOneBookingData: (id: number) => string;
81
+ findOneBookingDataAdmin: (id: number) => string;
95
82
  update: (id: number) => string;
96
83
  delete: (id: number) => string;
97
84
  deleteMany: string;
@@ -103,12 +90,49 @@ declare const PERFORMANCES_API_ROUTES: {
103
90
  publicAvailablePerformances: string;
104
91
  };
105
92
 
93
+ declare const PRICE_ZONES_API_ROUTES: {
94
+ FIND_ALL: string;
95
+ CREATE: string;
96
+ findOneById: (id: number) => string;
97
+ update: (id: number) => string;
98
+ delete: (id: number) => string;
99
+ updateElements: (id: number) => string;
100
+ duplicate: (id: number) => string;
101
+ };
102
+
103
+ declare const PRODUCT_CATEGORIES_API_ROUTES: {
104
+ FIND_ALL: string;
105
+ CREATE: string;
106
+ findById: (id: number) => string;
107
+ update: (id: number) => string;
108
+ delete: (id: number) => string;
109
+ };
110
+
111
+ declare const PRODUCT_TAGS_API_ROUTES: {
112
+ FIND_ALL: string;
113
+ CREATE: string;
114
+ findById: (id: number) => string;
115
+ update: (id: number) => string;
116
+ delete: (id: number) => string;
117
+ };
118
+
119
+ declare const PRODUCT_TYPES_API_ROUTES: {
120
+ FIND_ALL: string;
121
+ CREATE: string;
122
+ findById: (id: number) => string;
123
+ update: (id: number) => string;
124
+ delete: (id: number) => string;
125
+ };
126
+
106
127
  declare const PRODUCTS_API_ROUTES: {
107
128
  FIND_ALL: string;
108
129
  CREATE: string;
109
130
  findOneById: (id: number) => string;
110
131
  update: (id: number) => string;
111
132
  delete: (id: number) => string;
133
+ fetchImages: (id: number) => string;
134
+ uploadImages: (id: number) => string;
135
+ deleteOneImage: (productId: number, imageId: number) => string;
112
136
  };
113
137
 
114
138
  declare const SHOWS_API_ROUTES: {
@@ -123,22 +147,12 @@ declare const SHOWS_API_ROUTES: {
123
147
  publicAvailablePerformances: string;
124
148
  };
125
149
 
126
- declare const CUSTOMERS_API_ROUTES: {
150
+ declare const STATE_API_ENDPOINTS: {
127
151
  findAll: string;
128
152
  create: string;
129
- findOne: (id: number) => string;
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;
153
+ findById: (id: number) => string;
138
154
  update: (id: number) => string;
139
155
  delete: (id: number) => string;
140
- updateElements: (id: number) => string;
141
- duplicate: (id: number) => string;
142
156
  };
143
157
 
144
158
  declare const VENUES_API_ROUTES: {
@@ -152,152 +166,14 @@ declare const VENUES_API_ROUTES: {
152
166
  deleteOneImage: (venueId: number, imageId: number) => string;
153
167
  };
154
168
 
155
- declare enum FileType {
156
- IMAGE = "image",
157
- PDF = "pdf",
158
- EXCEL = "excel",
159
- WORD = "word",
160
- TEXT = "text",
161
- DEFAULT = "default"
162
- }
163
-
164
- declare enum CouponApplicability {
165
- GENERAL = "GENERAL",
166
- CUSTOMER_EMAIL = "CUSTOMER_EMAIL",
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
- }
270
-
271
- interface RoomMapStageElement extends RoomMapBaseElement {
272
- type: RoomMapElementType.STAGE;
273
- stageName?: string;
274
- orientation: RoomMapElementOrientation;
275
- isMainStage: boolean;
276
- }
277
-
278
- interface RoomMapTableElement extends RoomMapBaseElement {
279
- type: RoomMapElementType.TABLE;
280
- tableNumber?: string;
281
- capacity: number;
282
- shape: 'round' | 'rectangular' | 'square';
283
- }
284
-
285
- interface RoomMapUnavailableElement extends RoomMapBaseElement {
286
- type: RoomMapElementType.UNAVAILABLE_SPACE;
287
- reason?: string;
288
- }
289
-
290
- interface RoomMapZoneElement extends RoomMapBaseElement {
291
- type: RoomMapElementType.ZONE;
292
- zoneName: string;
293
- zoneType: 'vip' | 'general' | 'premium' | 'balcony' | 'custom';
294
- color: string;
295
- capacity?: number;
296
- }
169
+ declare const BUTTON_VARIANT_CLASSES: Record<string, string>;
170
+ declare const BASE_BUTTON_CLASSES = "btn";
171
+ declare const BUTTON_SIZES_CLASSES: Record<string, string>;
297
172
 
298
- type RoomMapCanvasElement = RoomMapSeatElement | RoomMapTableElement | RoomMapZoneElement | RoomMapExitElement | RoomMapStageElement | RoomMapProductionAreaElement | RoomMapUnavailableElement;
173
+ declare const FORM_ERROR_MESSAGES: Record<string, string>;
299
174
 
300
- type RoomMapSeatDisplayState = 'normal' | 'accessible' | 'non_existent';
175
+ declare const BASE_INPUT_CLASSES: string;
176
+ declare const ERROR_INPUT_CLASSES: string;
301
177
 
302
178
  interface SelectOption {
303
179
  value: any;
@@ -305,7 +181,7 @@ interface SelectOption {
305
181
  disabled?: boolean;
306
182
  }
307
183
 
308
- interface Admin {
184
+ interface Admin extends Auditable {
309
185
  id: number;
310
186
  username: string;
311
187
  email: string;
@@ -321,16 +197,17 @@ interface Admin {
321
197
  reset_password_expires: Date;
322
198
  email_verified_at: Date;
323
199
  last_login: Date;
324
- created_at: Date;
325
- updated_at: Date;
326
- deleted_at: Date;
327
200
  }
328
201
 
329
202
  interface Auditable {
330
203
  created_at: Date;
331
204
  updated_at: Date;
205
+ deleted_at?: Date | null;
332
206
  is_published?: boolean;
333
207
  published_at?: Date;
208
+ published_by?: number;
209
+ deleted_by?: number;
210
+ deleted_by_admin?: Admin;
334
211
  created_by_admin?: Admin;
335
212
  updated_by_admin?: Admin;
336
213
  published_by_admin?: Admin;
@@ -373,20 +250,20 @@ interface AdminsResponse {
373
250
  }
374
251
 
375
252
  interface Country {
376
- id: string;
253
+ id: number;
377
254
  name: string;
378
255
  iso2: string;
379
256
  }
380
257
 
381
258
  interface State {
382
- id: string;
259
+ id: number;
383
260
  name: string;
384
261
  country_id: number;
385
262
  country?: Country;
386
263
  }
387
264
 
388
265
  interface City {
389
- id: string;
266
+ id: number;
390
267
  name: string;
391
268
  search_text: string | null;
392
269
  state_id: number;
@@ -425,27 +302,21 @@ interface Venue extends Auditable {
425
302
  images: VenueImage[];
426
303
  }
427
304
 
428
- interface HallFloor {
305
+ interface HallFloor extends Auditable {
429
306
  id: number;
430
307
  name: string;
431
308
  level: number;
432
309
  max_capacity: number;
433
310
  description: string;
434
311
  hall_id: number;
435
- created_at: Date;
436
- updated_at: Date;
437
- deleted_at: Date | null;
438
312
  }
439
313
 
440
- interface Hall {
314
+ interface Hall extends Auditable {
441
315
  id: number;
442
316
  name: string;
443
317
  venue_id: number;
444
318
  venue?: Venue;
445
319
  hall_floors?: HallFloor[];
446
- created_at: Date;
447
- updated_at: Date;
448
- deleted_at: Date | null;
449
320
  }
450
321
 
451
322
  interface CountryResponse {
@@ -499,7 +370,7 @@ interface FetchCitiesParams {
499
370
  search?: string;
500
371
  }
501
372
 
502
- interface Customer {
373
+ interface Customer extends Auditable {
503
374
  username: string;
504
375
  email: string;
505
376
  mobile: string;
@@ -530,9 +401,6 @@ interface Customer {
530
401
  membership_expires_at: Date | null;
531
402
  id: number;
532
403
  is_active: boolean;
533
- created_at: Date;
534
- updated_at: Date;
535
- deleted_at: Date | null;
536
404
  }
537
405
 
538
406
  interface CustomerResponse {
@@ -550,76 +418,342 @@ interface CustomersResponse {
550
418
  message: string;
551
419
  }
552
420
 
553
- type ShowType = 'play' | 'musical' | 'concert' | 'dance' | 'opera' | 'comedy' | 'other';
421
+ interface BreadcrumbStep {
422
+ label: string;
423
+ href?: string;
424
+ icon?: string;
425
+ }
554
426
 
555
- interface ShowImage {
556
- id: number;
557
- path: string;
558
- full_url: string;
559
- original_name: string;
560
- extension: string;
561
- size: number;
562
- mime_type: string;
563
- width: number;
564
- height: number;
565
- show_id: number;
566
- created_at: Date;
427
+ declare enum OrderItemType {
428
+ TICKET = "TICKET",
429
+ PRODUCT = "PRODUCT",
430
+ GIFT_BOND = "GIFT_BOND"
567
431
  }
568
432
 
569
- interface Show extends Auditable {
570
- id: number;
571
- title: string;
572
- 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;
433
+ declare enum OrderStatus {
434
+ ON_HOLD = "on-hold",
435
+ PENDING_PAYMENT = "pending-payment",
436
+ PROCESSING = "processing",
437
+ COMPLETED = "completed",
438
+ FAILED = "failed",
439
+ CANCELLED = "cancelled",
440
+ REFUNDED = "refunded"
587
441
  }
588
442
 
589
- interface ShowResponse {
443
+ declare enum CreatorType {
444
+ ADMIN = "admin",
445
+ CUSTOMER = "customer"
446
+ }
447
+
448
+ declare enum PaymentMethod {
449
+ PAYROLL = "payroll",
450
+ CASH = "cash",
451
+ DATAFONO = "datafono",
452
+ INTERNAL_EXCHANGE = "internal_exchange",
453
+ CLIENT_EXCHANGE = "client_exchange",
454
+ MERCADO_PAGO = "mercado_pago"
455
+ }
456
+
457
+ declare enum RoomMapElementType {
458
+ SEAT_BLOCK = "seat_block",
459
+ TABLE = "table",
460
+ ZONE = "zone",
461
+ EXIT = "exit",
462
+ STAGE = "stage",
463
+ PRODUCTION_AREA = "production_area",
464
+ UNAVAILABLE_SPACE = "unavailable_space",
465
+ STAIR = "stair",
466
+ HALLWAY = "hallway"
467
+ }
468
+
469
+ interface RoomMapPosition {
470
+ x: number;
471
+ y: number;
472
+ }
473
+
474
+ interface RoomMapSize {
475
+ width: number;
476
+ height: number;
477
+ }
478
+
479
+ interface RoomMapBaseElement {
480
+ id: string;
481
+ type: RoomMapElementType;
482
+ position: RoomMapPosition;
483
+ size: RoomMapSize;
484
+ rotation: number;
485
+ name?: string;
486
+ isLocked: boolean;
487
+ isVisible: boolean;
488
+ zIndex: number;
489
+ }
490
+
491
+ interface RoomMapExitElement extends RoomMapBaseElement {
492
+ type: RoomMapElementType.EXIT;
493
+ exitName?: string;
494
+ exitType: 'emergency' | 'regular';
495
+ width: number;
496
+ }
497
+
498
+ interface RoomMapProductionAreaElement extends RoomMapBaseElement {
499
+ type: RoomMapElementType.PRODUCTION_AREA;
500
+ areaName?: string;
501
+ areaType: 'lighting' | 'sound' | 'backstage' | 'orchestra' | 'custom';
502
+ }
503
+
504
+ interface RoomMapSeatElement extends RoomMapBaseElement {
505
+ type: RoomMapElementType.SEAT_BLOCK;
506
+ seatNumber?: string;
507
+ isAvailable: boolean;
508
+ priceCategory?: string;
509
+ }
510
+
511
+ declare enum RoomMapElementOrientation {
512
+ TOP = "top",
513
+ RIGHT = "right",
514
+ BOTTOM = "bottom",
515
+ LEFT = "left",
516
+ CENTER = "center"
517
+ }
518
+
519
+ interface RoomMapStageElement extends RoomMapBaseElement {
520
+ type: RoomMapElementType.STAGE;
521
+ stageName?: string;
522
+ orientation: RoomMapElementOrientation;
523
+ isMainStage: boolean;
524
+ }
525
+
526
+ interface RoomMapTableElement extends RoomMapBaseElement {
527
+ type: RoomMapElementType.TABLE;
528
+ tableNumber?: string;
529
+ capacity: number;
530
+ shape: 'round' | 'rectangular' | 'square';
531
+ }
532
+
533
+ interface RoomMapUnavailableElement extends RoomMapBaseElement {
534
+ type: RoomMapElementType.UNAVAILABLE_SPACE;
535
+ reason?: string;
536
+ }
537
+
538
+ interface RoomMapZoneElement extends RoomMapBaseElement {
539
+ type: RoomMapElementType.ZONE;
540
+ zoneName: string;
541
+ zoneType: 'vip' | 'general' | 'premium' | 'balcony' | 'custom';
542
+ color: string;
543
+ capacity?: number;
544
+ }
545
+
546
+ type RoomMapCanvasElement = RoomMapSeatElement | RoomMapTableElement | RoomMapZoneElement | RoomMapExitElement | RoomMapStageElement | RoomMapProductionAreaElement | RoomMapUnavailableElement;
547
+
548
+ type RoomMapSeatDisplayState = 'normal' | 'accessible' | 'non_existent';
549
+
550
+ declare enum ShowType {
551
+ PLAY = "PLAY",
552
+ CONCERT = "CONCERT",
553
+ STAND_UP_COMEDY = "STAND_UP_COMEDY",
554
+ OPERA = "OPERA",
555
+ MUSICAL = "MUSICAL",
556
+ DANCE = "DANCE",
557
+ SPORT = "SPORT",
558
+ OTHER = "OTHER",
559
+ DEFAULT = "DEFAULT"
560
+ }
561
+
562
+ type ModalSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl';
563
+
564
+ type FeedbackModalType = 'loading' | 'success' | 'info' | 'warning' | 'error';
565
+
566
+ type BadgeSize = 'xs' | 'sm' | 'md' | 'lg';
567
+
568
+ type BadgeColor = 'primary' | 'secondary' | 'success' | 'warning' | 'error' | 'info';
569
+
570
+ type BreadcrumbTheme = 'light' | 'dark';
571
+
572
+ type TextFontSize = 'xs' | 'sm' | 'base' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl' | '6xl';
573
+
574
+ interface FeedbackModalElement {
575
+ id: string;
576
+ type: FeedbackModalType;
577
+ title: string;
578
+ isOpen: WritableSignal<boolean>;
579
+ message?: string;
580
+ showHeader?: boolean;
581
+ showCloseButton?: boolean;
582
+ showTitle?: boolean;
583
+ closeModal?: void;
584
+ }
585
+
586
+ declare enum FileType {
587
+ IMAGE = "image",
588
+ PDF = "pdf",
589
+ EXCEL = "excel",
590
+ WORD = "word",
591
+ TEXT = "text",
592
+ DEFAULT = "default"
593
+ }
594
+
595
+ declare enum CouponApplicability {
596
+ GENERAL = "GENERAL",
597
+ CUSTOMER_EMAIL = "CUSTOMER_EMAIL",
598
+ MEMBERSHIP_TYPE = "MEMBERSHIP_TYPE",
599
+ SHOWS = "SHOWS",
600
+ PERFORMANCES = "PERFORMANCES"
601
+ }
602
+
603
+ declare enum CouponDiscountType {
604
+ PERCENTAGE = "PERCENTAGE",
605
+ FIXED = "FIXED"
606
+ }
607
+
608
+ declare enum CouponStatus {
609
+ ACTIVE = "ACTIVE",
610
+ INACTIVE = "INACTIVE",
611
+ EXPIRED = "EXPIRED",
612
+ CONSUMED = "CONSUMED"
613
+ }
614
+
615
+ declare enum CorporateBondStatus {
616
+ ACTIVE = "ACTIVE",
617
+ INACTIVE = "INACTIVE",
618
+ EXPIRED = "EXPIRED",
619
+ CONSUMED = "CONSUMED"
620
+ }
621
+
622
+ declare enum PerformanceStatus {
623
+ SCHEDULED = "scheduled",
624
+ OPEN = "open",
625
+ CLOSED = "closed",
626
+ CANCELLED = "cancelled",
627
+ COMPLETED = "completed",
628
+ POSTPONED = "postponed"
629
+ }
630
+
631
+ declare enum PerformanceTicketStatus {
632
+ AVAILABLE = "available",
633
+ RESERVED = "reserved",
634
+ SOLD = "sold",
635
+ BLOCKED = "blocked"
636
+ }
637
+
638
+ declare enum GiftBondStatus {
639
+ ACTIVE = "ACTIVE",
640
+ INACTIVE = "INACTIVE"
641
+ }
642
+
643
+ declare enum GiftBondPurchaseStatus {
644
+ AVAILABLE = "AVAILABLE",
645
+ REDEEMED = "REDEEMED",
646
+ EXPIRED = "EXPIRED",
647
+ CANCELLED = "CANCELLED"
648
+ }
649
+
650
+ declare enum TransactionStatus {
651
+ PENDING = "PENDING",
652
+ APPROVED = "APPROVED",
653
+ REJECTED = "REJECTED",
654
+ ERROR = "ERROR"
655
+ }
656
+
657
+ interface FetchProductCategoriesParams {
658
+ name?: string;
659
+ slug?: string;
660
+ page?: number;
661
+ limit?: number;
662
+ search?: string;
663
+ }
664
+
665
+ interface ProductCategory extends Auditable {
666
+ id: number;
667
+ name: string;
668
+ slug: string;
669
+ }
670
+
671
+ interface ProductCategoriesResponse {
590
672
  statusCode: number;
591
- data: Show;
673
+ data: {
674
+ categories: ProductCategory[];
675
+ total: number;
676
+ };
592
677
  message: string;
593
678
  }
594
679
 
595
- interface ShowsResponseInterface {
680
+ interface ProductCategoryResponse {
681
+ statusCode: number;
682
+ data: ProductCategory;
683
+ message: string;
684
+ }
685
+
686
+ interface FetchProductTagsParams {
687
+ name?: string;
688
+ slug?: string;
689
+ page?: number;
690
+ limit?: number;
691
+ search?: string;
692
+ }
693
+
694
+ interface ProductTag extends Auditable {
695
+ id: number;
696
+ name: string;
697
+ slug: string;
698
+ }
699
+
700
+ interface ProductTagResponse {
701
+ statusCode: number;
702
+ data: ProductTag;
703
+ message: string;
704
+ }
705
+
706
+ interface ProductTagsResponse {
596
707
  statusCode: number;
597
708
  data: {
598
- shows: Show[];
709
+ tags: ProductTag[];
599
710
  total: number;
600
711
  };
601
712
  message: string;
602
713
  }
603
714
 
604
- interface FetchShowsParams {
715
+ interface FetchProductTypesParams {
716
+ name?: string;
717
+ slug?: string;
605
718
  page?: number;
606
719
  limit?: number;
607
720
  search?: string;
608
- date?: string;
609
721
  }
610
722
 
611
- interface PriceZone {
723
+ interface ProductType extends Auditable {
612
724
  id: number;
613
725
  name: string;
614
- color: string;
615
- normal_price: number | null;
616
- is_active: boolean;
617
- elements: any[];
618
- room_map_id: number | null;
726
+ slug: string;
727
+ }
728
+
729
+ interface ProductTypeResponse {
730
+ statusCode: number;
731
+ data: ProductType;
732
+ message: string;
733
+ }
734
+
735
+ interface ProductTypesResponse {
736
+ statusCode: number;
737
+ data: {
738
+ types: ProductType[];
739
+ total: number;
740
+ };
741
+ message: string;
742
+ }
743
+
744
+ interface ProductImage {
745
+ id: number;
746
+ path: string;
747
+ full_url: string;
748
+ original_name: string;
749
+ extension: string;
750
+ size: number;
751
+ mime_type: string;
752
+ width: number;
753
+ height: number;
754
+ product_id: number;
755
+ product: Product;
619
756
  created_at: Date;
620
- updated_at: Date;
621
- created_by: number;
622
- updated_by: number;
623
757
  }
624
758
 
625
759
  interface Product extends Auditable {
@@ -634,10 +768,34 @@ interface Product extends Auditable {
634
768
  is_limited_edition: boolean;
635
769
  is_active: boolean;
636
770
  deleted_at: Date | null;
637
- categories?: any[];
638
- tags?: any[];
639
- types?: any[];
640
- images?: any[];
771
+ categories?: ProductCategory[];
772
+ tags?: ProductTag[];
773
+ types?: ProductType[];
774
+ images?: ProductImage[];
775
+ }
776
+
777
+ interface ShowImage {
778
+ id: number;
779
+ path: string;
780
+ full_url: string;
781
+ original_name: string;
782
+ extension: string;
783
+ size: number;
784
+ mime_type: string;
785
+ width: number;
786
+ height: number;
787
+ show_id: number;
788
+ created_at: Date;
789
+ }
790
+
791
+ interface PriceZone extends Auditable {
792
+ id: number;
793
+ name: string;
794
+ color: string;
795
+ normal_price: number | null;
796
+ is_active: boolean;
797
+ elements: any[];
798
+ room_map_id: number | null;
641
799
  }
642
800
 
643
801
  interface NumerationConfig {
@@ -675,7 +833,7 @@ interface RoomMapElementTemplate {
675
833
  price_zone?: PriceZone;
676
834
  }
677
835
 
678
- interface RoomMap {
836
+ interface RoomMap extends Auditable {
679
837
  id: number;
680
838
  name: string;
681
839
  canvas_settings: {
@@ -691,8 +849,6 @@ interface RoomMap {
691
849
  related_product_ids: number[];
692
850
  products?: Product[];
693
851
  venue_name?: string;
694
- created_at: Date;
695
- updated_at: Date;
696
852
  }
697
853
 
698
854
  interface RoomMapCanvasConfiguration {
@@ -734,7 +890,7 @@ interface ElementPropertiesTab {
734
890
  elements_access: string[];
735
891
  }
736
892
 
737
- interface Performance {
893
+ interface Performance extends Auditable {
738
894
  id: number;
739
895
  start_time: Date | string;
740
896
  end_time: Date | string;
@@ -744,26 +900,83 @@ interface Performance {
744
900
  show?: Show;
745
901
  room_map: RoomMap;
746
902
  room_map_id: number;
747
- created_at: Date;
748
- updated_at: Date;
903
+ performance_tickets?: PerformanceTicket[];
904
+ can_delete?: boolean;
905
+ can_cancel?: boolean;
906
+ can_modify?: boolean;
907
+ can_reserve?: boolean;
749
908
  }
750
909
 
751
- interface PerformanceResponse {
910
+ interface ShowCategory extends Auditable {
911
+ id: number;
912
+ name: string;
913
+ slug: string;
914
+ }
915
+
916
+ interface ShowCategoriesResponse {
752
917
  statusCode: number;
753
- data: Performance;
918
+ data: {
919
+ categories: ShowCategory[];
920
+ total: number;
921
+ };
754
922
  message: string;
755
923
  }
756
924
 
757
- interface PerformancesResponseInterface {
925
+ interface ShowCategoryResponse {
926
+ statusCode: number;
927
+ data: ShowCategory;
928
+ message: string;
929
+ }
930
+
931
+ interface ShowGender extends Auditable {
932
+ id: number;
933
+ name: string;
934
+ slug: string;
935
+ }
936
+
937
+ interface ShowGenderResponse {
938
+ statusCode: number;
939
+ data: ShowGender;
940
+ message: string;
941
+ }
942
+
943
+ interface ShowGendersResponse {
758
944
  statusCode: number;
759
945
  data: {
760
- performances: Performance[];
946
+ genders: ShowGender[];
761
947
  total: number;
762
948
  };
763
949
  message: string;
764
950
  }
765
951
 
766
- interface OrderItem {
952
+ interface Show extends Auditable {
953
+ id: number;
954
+ title: string;
955
+ slug: string;
956
+ description: string;
957
+ duration_minutes: number | null;
958
+ type_of_costs: string | null;
959
+ service_fee: number | null;
960
+ show_type: ShowType | null;
961
+ pulep: string | null;
962
+ minimum_age: number | null;
963
+ show_gender?: ShowGender | null;
964
+ show_gender_id: number | null;
965
+ show_category?: ShowCategory | null;
966
+ show_category_id: number | null;
967
+ default_room_map?: RoomMap | null;
968
+ default_room_map_id: number | null;
969
+ is_published: boolean;
970
+ images: ShowImage[];
971
+ terms_and_conditions: string | null;
972
+ performances_quantity?: number;
973
+ performances?: Performance[];
974
+ next_performance?: Performance;
975
+ days_of_week?: number[];
976
+ unique_start_times?: string[];
977
+ }
978
+
979
+ interface OrderItem extends Auditable {
767
980
  id: number;
768
981
  order: Order;
769
982
  item_type: OrderItemType;
@@ -776,26 +989,21 @@ interface OrderItem {
776
989
  ticket_id?: number;
777
990
  ticket_uuid?: string;
778
991
  item: Show | Product;
779
- created_at: Date;
780
- updated_at: Date;
781
- created_by: number;
782
- updated_by: number;
783
992
  }
784
993
 
785
994
  interface Coupon extends Auditable {
786
995
  id: number;
787
996
  code: string;
997
+ billing_code: string;
788
998
  description?: string;
789
999
  discount_type: CouponDiscountType;
790
- discount_type_string?: string;
791
1000
  discount_value: number;
792
- discount_value_string?: string;
793
1001
  start_date: Date | null;
794
1002
  end_date: Date | null;
795
1003
  max_uses: number | null;
796
- max_uses_per_user?: number | null;
1004
+ max_uses_per_customer?: number | null;
797
1005
  uses_count: number;
798
- is_active: boolean;
1006
+ status: CouponStatus;
799
1007
  applicability_type: CouponApplicability;
800
1008
  applicable_customer_emails: string[] | null;
801
1009
  applicable_membership_types: string[] | null;
@@ -803,9 +1011,11 @@ interface Coupon extends Auditable {
803
1011
  applicable_performance_ids?: number[];
804
1012
  applicable_price_zone_ids?: number[];
805
1013
  applies_to_service_fee?: boolean;
1014
+ orders?: Order[];
1015
+ customers?: Customer[];
806
1016
  }
807
1017
 
808
- interface CorporateBond {
1018
+ interface CorporateBond extends Auditable {
809
1019
  id: number;
810
1020
  name: string;
811
1021
  description?: string;
@@ -816,10 +1026,6 @@ interface CorporateBond {
816
1026
  status: CorporateBondStatus;
817
1027
  value: number;
818
1028
  codes: CorporateBondCode[];
819
- created_at: Date;
820
- updated_at: Date;
821
- created_by: number;
822
- updated_by: number;
823
1029
  }
824
1030
 
825
1031
  interface CorporateBondCode {
@@ -849,38 +1055,168 @@ interface ValidateCorporateBondResponse {
849
1055
  statusCode: number;
850
1056
  }
851
1057
 
852
- interface Order {
1058
+ interface GiftBondImage {
1059
+ id: number;
1060
+ path: string;
1061
+ full_url: string;
1062
+ original_name: string;
1063
+ extension: string;
1064
+ size: number;
1065
+ mime_type: string;
1066
+ width: number;
1067
+ height: number;
1068
+ is_featured: boolean;
1069
+ gift_bond_id: number;
1070
+ gift_bond: GiftBond;
1071
+ created_at: Date;
1072
+ }
1073
+
1074
+ interface GiftBond extends Auditable {
1075
+ id: number;
1076
+ name: string;
1077
+ description?: string;
1078
+ slug?: string;
1079
+ status: GiftBondStatus;
1080
+ value: number;
1081
+ page_content?: string;
1082
+ images?: GiftBondImage[];
1083
+ }
1084
+
1085
+ interface GiftBondResponse {
1086
+ statusCode: number;
1087
+ data: GiftBond;
1088
+ message: string;
1089
+ }
1090
+
1091
+ interface GiftBondsResponse {
1092
+ statusCode: number;
1093
+ data: {
1094
+ gift_bonds: GiftBond[];
1095
+ total: number;
1096
+ };
1097
+ message: string;
1098
+ }
1099
+
1100
+ interface GiftBondPurchase extends Auditable {
1101
+ id: number;
1102
+ code: string;
1103
+ original_value: number;
1104
+ used_value: number | null;
1105
+ lost_value: number | null;
1106
+ beneficiary_email: string;
1107
+ beneficiary: Customer | null;
1108
+ personalized_message: string | null;
1109
+ status: GiftBondPurchaseStatus;
1110
+ purchased_at: string;
1111
+ expires_at: string;
1112
+ redeemed_at: string | null;
1113
+ gift_bond?: GiftBond;
1114
+ gift_bond_id: number;
1115
+ buyer_customer_id: number;
1116
+ buyer: Customer;
1117
+ order: Order | null;
1118
+ order_id: number;
1119
+ redemption_order_id: number | null;
1120
+ redemption_order: Order | null;
1121
+ }
1122
+
1123
+ interface ValidateGiftBondResponse {
1124
+ data: {
1125
+ valid: boolean;
1126
+ message: string;
1127
+ code: string;
1128
+ bond?: GiftBondPurchase;
1129
+ };
1130
+ statusCode: number;
1131
+ message: string;
1132
+ }
1133
+
1134
+ interface GiftBondPurchaseResponse {
1135
+ statusCode: number;
1136
+ data: GiftBondPurchase;
1137
+ message: string;
1138
+ }
1139
+
1140
+ interface GiftBondPurchasesResponse {
1141
+ statusCode: number;
1142
+ data: {
1143
+ items: GiftBondPurchase[];
1144
+ total: number;
1145
+ };
1146
+ message: string;
1147
+ }
1148
+
1149
+ interface Transaction extends Auditable {
1150
+ id: number;
1151
+ status: TransactionStatus;
1152
+ amount: number;
1153
+ currency: string;
1154
+ payment_gateway: string;
1155
+ gateway_transaction_id: string;
1156
+ gateway_response: any;
1157
+ order: Order;
1158
+ }
1159
+
1160
+ interface OrderBillingInfo {
1161
+ first_name: string;
1162
+ last_name: string;
1163
+ email: string;
1164
+ mobile: string;
1165
+ document_type: string;
1166
+ document_number: string;
1167
+ address: string;
1168
+ city_id: number;
1169
+ postal_code?: string;
1170
+ address_notes?: string;
1171
+ payment_method: PaymentMethod;
1172
+ terms_accepted: boolean;
1173
+ data_processing_accepted: boolean;
1174
+ comments?: string;
1175
+ products?: Array<{
1176
+ id: number;
1177
+ quantity: number;
1178
+ }>;
1179
+ }
1180
+
1181
+ interface Order extends Auditable {
853
1182
  id: number;
854
1183
  uuid: string;
855
- customer: Customer;
1184
+ customer_id: number | null;
1185
+ customer: Customer | null;
856
1186
  customer_name?: string;
857
1187
  customer_email?: string;
858
1188
  order_items: OrderItem[];
859
1189
  order_items_quantity?: number;
860
- discount_amount: number;
1190
+ transactions: Transaction[];
1191
+ sub_total: number;
1192
+ discount_amount: number | null;
861
1193
  total: number;
1194
+ sub_total_discounted: number | null;
862
1195
  total_discounted: number;
863
- sub_total: number;
864
- sub_total_discounted: number;
865
- service_fee: number;
866
- service_fee_discounted: number;
867
- coupon: Coupon;
868
- coupon_snapshot: Record<string, any>;
869
- corporate_bond_code: CorporateBondCode;
870
- corporate_bond_code_snapshot: Record<string, any>;
1196
+ service_fee: number | null;
1197
+ service_fee_discounted: number | null;
1198
+ coupon: Coupon | null;
1199
+ coupon_snapshot: Record<string, any> | null;
871
1200
  status: OrderStatus;
872
- show_snapshot: Record<string, any>;
873
- performance_snapshot: Record<string, any>;
874
- created_at: Date;
875
- updated_at: Date;
876
- payment_method: string;
1201
+ show_snapshot: Record<string, any> | null;
1202
+ performance_snapshot: Record<string, any> | null;
1203
+ payment_method: PaymentMethod | null;
877
1204
  terms_accepted: boolean;
878
1205
  data_processing_accepted: boolean;
879
- billing_info: Partial<Customer>;
880
- comments: string;
881
- address_notes: string;
1206
+ billing_info: OrderBillingInfo | null;
1207
+ corporate_bond_code_snapshot: Record<string, any> | null;
1208
+ gift_bond_snapshot: Record<string, any> | null;
1209
+ corporate_bond_code: CorporateBondCode | null;
1210
+ corporate_bond_code_id: number | null;
1211
+ gift_bond: GiftBond | null;
1212
+ gift_bond_id: number | null;
1213
+ comments: string | null;
1214
+ address_notes: string | null;
1215
+ mercado_pago_preference_id: string;
882
1216
  created_by: number;
1217
+ created_by_type: CreatorType;
883
1218
  updated_by: number;
1219
+ updated_by_type: CreatorType;
884
1220
  }
885
1221
 
886
1222
  interface OrderResponse {
@@ -898,7 +1234,13 @@ interface OrdersResponse {
898
1234
  message: string;
899
1235
  }
900
1236
 
901
- interface PerformanceTicket {
1237
+ interface MercadoPagoPreference {
1238
+ id: string;
1239
+ init_point: string;
1240
+ sandbox_init_point: string;
1241
+ }
1242
+
1243
+ interface PerformanceTicket extends Auditable {
902
1244
  id: number;
903
1245
  uuid: string;
904
1246
  is_accessible: boolean;
@@ -918,8 +1260,133 @@ interface PerformanceTicket {
918
1260
  checked_in_at: Date | null;
919
1261
  order_items: OrderItem[];
920
1262
  element_qty?: number;
921
- created_at: Date;
922
- updated_at: Date;
1263
+ }
1264
+
1265
+ interface TicketMapSeatPosition {
1266
+ rowIndex: number;
1267
+ colIndex: number;
1268
+ seatLabel: string;
1269
+ }
1270
+
1271
+ interface TicketMapTableChairPosition {
1272
+ index: number;
1273
+ angle: number;
1274
+ x: number;
1275
+ y: number;
1276
+ }
1277
+
1278
+ interface ElementRenderData {
1279
+ elementId: number;
1280
+ hallFloorId: number | null;
1281
+ type: RoomMapElementType;
1282
+ shapeConfig: Record<string, any>;
1283
+ tickets: PerformanceTicket[];
1284
+ ticketByNumeration: Map<string, PerformanceTicket>;
1285
+ elementName: string;
1286
+ seatPositions?: TicketMapSeatPosition[][];
1287
+ chairPositions?: TicketMapTableChairPosition[];
1288
+ zoneCapacity?: number;
1289
+ }
1290
+
1291
+ interface TicketMapTooltipData {
1292
+ x: number;
1293
+ y: number;
1294
+ elementName: string;
1295
+ seatLabel: string | null;
1296
+ price: number;
1297
+ status: PerformanceTicketStatus;
1298
+ statusLabel: string;
1299
+ statusColor: string;
1300
+ isSelected: boolean;
1301
+ ticketId: number;
1302
+ }
1303
+
1304
+ interface TicketMapZoneQuantityState {
1305
+ elementId: number;
1306
+ selectedCount: number;
1307
+ maxCapacity: number;
1308
+ }
1309
+
1310
+ interface ReservePerformanceDto {
1311
+ ticket_ids: number[];
1312
+ products?: {
1313
+ id: number;
1314
+ quantity: number;
1315
+ }[];
1316
+ coupon_code?: string;
1317
+ gift_bond_code?: string;
1318
+ corporate_bond_code?: string;
1319
+ payment_method?: string;
1320
+ billing?: {
1321
+ first_name: string;
1322
+ last_name: string;
1323
+ email: string;
1324
+ mobile: string;
1325
+ document_type: string;
1326
+ document_number: string;
1327
+ address: string;
1328
+ city_id: number;
1329
+ postal_code?: string;
1330
+ address_notes?: string;
1331
+ terms_accepted: boolean;
1332
+ data_processing_accepted: boolean;
1333
+ comments?: string;
1334
+ };
1335
+ }
1336
+
1337
+ interface TicketMapZoomConfig {
1338
+ minZoom: number;
1339
+ maxZoom: number;
1340
+ zoomStep: number;
1341
+ scaleBy: number;
1342
+ }
1343
+
1344
+ interface HallFloorOption {
1345
+ id: number | null;
1346
+ name: string;
1347
+ }
1348
+
1349
+ declare enum SelectedDiscountCardType {
1350
+ COUPON = "COUPON",
1351
+ CORPORATE_BOND = "CORPORATE_BOND",
1352
+ GIFT_BOND = "GIFT_BOND"
1353
+ }
1354
+
1355
+ interface SelectedDiscountCard {
1356
+ name: string;
1357
+ type: SelectedDiscountCardType;
1358
+ value: number;
1359
+ }
1360
+
1361
+ interface FetchShowsParams {
1362
+ page?: number;
1363
+ limit?: number;
1364
+ search?: string;
1365
+ date?: string;
1366
+ }
1367
+
1368
+ interface ShowResponse {
1369
+ statusCode: number;
1370
+ data: Show;
1371
+ message: string;
1372
+ }
1373
+
1374
+ interface ShowsResponseInterface {
1375
+ statusCode: number;
1376
+ data: {
1377
+ shows: Show[];
1378
+ total: number;
1379
+ };
1380
+ message: string;
1381
+ }
1382
+
1383
+ interface FindAllPerformancesParams {
1384
+ roomMapId?: number;
1385
+ showId?: number;
1386
+ hallId?: number;
1387
+ page?: number;
1388
+ search?: string;
1389
+ limit?: number;
923
1390
  }
924
1391
 
925
1392
  interface PerformanceBookingDataResponse {
@@ -933,14 +1400,29 @@ interface PerformanceBookingDataResponse {
933
1400
  message: string;
934
1401
  }
935
1402
 
1403
+ interface PerformanceResponse {
1404
+ statusCode: number;
1405
+ data: Performance;
1406
+ message: string;
1407
+ }
1408
+
936
1409
  interface PerformanceAvailableDay {
937
1410
  date: string;
938
1411
  count: number;
939
1412
  }
940
- interface PerformancesAvailableDaysResponse {
1413
+ interface PerformancesAvailableDaysResponse {
1414
+ statusCode: number;
1415
+ data: {
1416
+ days: PerformanceAvailableDay[];
1417
+ };
1418
+ message: string;
1419
+ }
1420
+
1421
+ interface PerformancesResponseInterface {
941
1422
  statusCode: number;
942
1423
  data: {
943
- days: PerformanceAvailableDay[];
1424
+ performances: Performance[];
1425
+ total: number;
944
1426
  };
945
1427
  message: string;
946
1428
  }
@@ -1003,6 +1485,13 @@ interface ProductResponse {
1003
1485
  message: string;
1004
1486
  }
1005
1487
 
1488
+ interface ProductTaxonomy extends Auditable {
1489
+ id: number;
1490
+ name: string;
1491
+ slug: string;
1492
+ selected?: boolean;
1493
+ }
1494
+
1006
1495
  interface ProductsResponseInterface {
1007
1496
  statusCode: number;
1008
1497
  data: {
@@ -1056,17 +1545,162 @@ interface ValidateCouponResponse {
1056
1545
  };
1057
1546
  }
1058
1547
 
1548
+ interface RecentOrder {
1549
+ id: number;
1550
+ customer_name: string;
1551
+ event: string;
1552
+ total: number;
1553
+ status: string;
1554
+ uuid: string;
1555
+ }
1556
+
1557
+ interface RecentRoomMap {
1558
+ id: number;
1559
+ name: string;
1560
+ capacity: number;
1561
+ created_at: Date;
1562
+ updated_at: Date;
1563
+ }
1564
+
1565
+ interface QrTokenData {
1566
+ token: string;
1567
+ expires_at: string;
1568
+ refresh_in: number;
1569
+ }
1570
+
1571
+ interface QrTokenResponse {
1572
+ statusCode: number;
1573
+ data: QrTokenData;
1574
+ message: string;
1575
+ }
1576
+
1577
+ declare const DOCUMENT_TYPES_OPTIONS: SelectOption[];
1578
+
1579
+ declare const PAYMENT_METHODS_OPTIONS: SelectOption[];
1580
+ declare const ORDER_STATUS_COLORS: Record<OrderStatus, {
1581
+ text: string;
1582
+ bg: string;
1583
+ }>;
1584
+ declare const ORDER_ITEM_TYPES_COLORS: Record<OrderItemType, {
1585
+ text: string;
1586
+ bg: string;
1587
+ }>;
1588
+ declare const ORDER_DISCOUNT_COLORS: Record<string, {
1589
+ text: string;
1590
+ bg: string;
1591
+ }>;
1592
+ declare const TRANSACTION_STATUS_COLORS: Record<TransactionStatus, {
1593
+ text: string;
1594
+ bg: string;
1595
+ }>;
1596
+
1597
+ declare const PERFORMANCE_STATUS_COLORS: Record<PerformanceStatus, {
1598
+ text: string;
1599
+ bg: string;
1600
+ }>;
1601
+
1602
+ declare const TICKET_MAP_LAST_TICKETS_LIMIT = 10;
1603
+ declare const TICKET_ELEMENT_TYPES: RoomMapElementType[];
1604
+ declare const DEFAULT_STAGE_CONFIG: {
1605
+ [x: string]: any;
1606
+ };
1607
+ declare const TICKET_STATUS_COLORS: Record<PerformanceTicketStatus, string>;
1608
+ declare const TICKET_STATUS_FILLS: Record<PerformanceTicketStatus, string>;
1609
+ declare const TICKET_STATUS_LABELS: Record<PerformanceTicketStatus, string>;
1610
+ declare const TICKET_MAP_GRID_SIZE = 30;
1611
+ declare const TICKET_MAP_TITLE_HEIGHT = 30;
1612
+
1613
+ interface KonvaShapeConfig {
1614
+ config: ShapeConfig;
1615
+ layer: 'background' | 'elements' | 'foreground' | 'overlay';
1616
+ }
1617
+
1618
+ declare function drawRoundedRect(con: Context, shape: Shape, x: number, y: number, width: number, height: number, cornerRadius: number): void;
1619
+
1620
+ declare const generateExitScene: (con: Context, shape: Shape) => void;
1621
+
1622
+ declare const generateHallwayScene: (con: Context, shape: Shape) => void;
1623
+
1624
+ declare const generateProductionAreaScene: (con: Context, shape: Shape) => void;
1625
+
1626
+ declare const generateSeatBlockScene: (con: Context, shape: Shape, numerationConfig?: {
1627
+ start_row_letter: string;
1628
+ row_order: "TOP_TO_BOTTOM" | "BOTTOM_TO_TOP";
1629
+ start_column_number: number;
1630
+ column_order: "LEFT_TO_RIGHT" | "RIGHT_TO_LEFT";
1631
+ }) => void;
1632
+
1633
+ declare const generateStageScene: (con: Context, shape: Shape) => void;
1634
+
1635
+ declare const generateStairScene: (con: Context, shape: Shape) => void;
1636
+
1637
+ declare const generateTableScene: (con: Context, shape: Shape) => void;
1638
+
1639
+ declare const generateUnavailableSpaceScene: (con: Context, shape: Shape) => void;
1640
+
1641
+ declare const generateZoneScene: (con: Context, shape: Shape) => void;
1642
+
1643
+ declare const KONVA_SHAPE_MAPPINGS: Record<RoomMapElementType, KonvaShapeConfig>;
1644
+
1645
+ declare const SHOW_TYPE_COLORS: Record<ShowType, {
1646
+ bg: string;
1647
+ text: string;
1648
+ }>;
1649
+
1059
1650
  declare const getCustomerFullname: (customer: Customer) => string;
1060
1651
 
1652
+ type OrderDiscountType = 'coupon' | 'corporate_bond' | 'gift_bond';
1653
+ interface OrderDiscountInfo {
1654
+ type: OrderDiscountType | null;
1655
+ code: string | null;
1656
+ name: string | null;
1657
+ value: number;
1658
+ discountType: 'percentage' | 'fixed' | null;
1659
+ icon: string;
1660
+ }
1661
+ declare function getOrderDiscount(order: Order): OrderDiscountInfo;
1662
+
1061
1663
  declare function parseJsonToFormDataAdvanced(imageGallery: any[]): FormData;
1062
1664
 
1063
1665
  declare const transformImageToFile: (image: ShowImage | VenueImage) => UploadedFile;
1064
1666
 
1065
1667
  declare const formatCitiesResponseToSelect: (res: CitiesResponse) => {
1066
- value: string;
1668
+ value: number;
1067
1669
  label: string;
1068
1670
  }[];
1069
1671
 
1672
+ declare function tintColor(hex: string, amount?: number): string;
1673
+
1674
+ declare const drawChairIcon: (con: Context, cx: number, cy: number, size: number) => void;
1675
+
1676
+ declare const drawHappyFace: (con: Context, cx: number, cy: number, size: number) => void;
1677
+
1678
+ declare const drawWheelchairIcon: (con: Context, shape: Shape, cx: number, cy: number, size: number, fillColor?: string, strokeColor?: string) => void;
1679
+
1680
+ declare const numberToLetter: (num: number) => string;
1681
+
1682
+ declare const getItemTypeIcon: (ticket: PerformanceTicket) => string;
1683
+
1684
+ declare const generateSeatBlockTicketScene: (con: Context, shape: Shape, numerationConfig?: {
1685
+ start_row_letter: string;
1686
+ row_order: "TOP_TO_BOTTOM" | "BOTTOM_TO_TOP";
1687
+ start_column_number: number;
1688
+ column_order: "LEFT_TO_RIGHT" | "RIGHT_TO_LEFT";
1689
+ }, ticketStatusMap?: Map<string, PerformanceTicketStatus>) => void;
1690
+
1691
+ declare const generateTableTicketScene: (con: Context, shape: Shape, chairTicketStatuses?: PerformanceTicketStatus[], tableSeats?: RoomMapSeatState[][]) => void;
1692
+
1693
+ declare function processElementsToRenderData(elements: RoomMapElementTemplate[], tickets: PerformanceTicket[], priceZones?: {
1694
+ id: number;
1695
+ color: string;
1696
+ }[]): ElementRenderData[];
1697
+ declare function findTicketAtPosition(renderData: ElementRenderData, relX: number, relY: number): PerformanceTicket | null;
1698
+ declare function findElementAtPosition(renderDataList: ElementRenderData[], stageX: number, stageY: number): {
1699
+ element: ElementRenderData;
1700
+ relX: number;
1701
+ relY: number;
1702
+ } | null;
1703
+
1070
1704
  declare function MinTodayValidator(controlName: string): ValidatorFn;
1071
1705
  declare function EndDateGreaterThanStartValidator(startDateControlName: string, endDateControlName: string): ValidatorFn;
1072
1706
 
@@ -1097,16 +1731,6 @@ declare class ToastService {
1097
1731
  static ɵprov: i0.ɵɵInjectableDeclaration<ToastService>;
1098
1732
  }
1099
1733
 
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
1734
  declare class DeleteConfirmationService {
1111
1735
  title: WritableSignal<string>;
1112
1736
  resourceName: WritableSignal<string>;
@@ -1197,7 +1821,7 @@ declare class PerformanceService {
1197
1821
  private performancesSubject;
1198
1822
  performances$: Observable<Performance[]>;
1199
1823
  constructor(apiService: ApiService);
1200
- fetchPerformances(showId?: number, search?: string): Observable<PerformancesResponseInterface>;
1824
+ fetchPerformances({ showId, roomMapId, hallId, search, page, limit, }: FindAllPerformancesParams): Observable<PerformancesResponseInterface>;
1201
1825
  fetchDailyPerformances({ show_id, search, limit, date, }: FetchDailyPerformancesParams): Observable<DailyPerformancesResponse>;
1202
1826
  loadPerformances({ showId, search }?: {
1203
1827
  showId?: number;
@@ -1205,7 +1829,7 @@ declare class PerformanceService {
1205
1829
  }): void;
1206
1830
  getCurrentPerformances(): Performance[];
1207
1831
  fetchOneById(id: number): Observable<PerformanceResponse>;
1208
- fetchOneBookingData(id: number): Observable<PerformanceBookingDataResponse>;
1832
+ fetchOneBookingData(id: number, isAdmin?: boolean): Observable<PerformanceBookingDataResponse>;
1209
1833
  fetchAvailableDays(params?: {
1210
1834
  show_id?: number;
1211
1835
  }): Observable<PerformancesAvailableDaysResponse>;
@@ -1235,25 +1859,6 @@ declare class PerformancesListEventsService {
1235
1859
  static ɵprov: i0.ɵɵInjectableDeclaration<PerformancesListEventsService>;
1236
1860
  }
1237
1861
 
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
1862
  declare class ShowService {
1258
1863
  private apiService;
1259
1864
  private showsSubject;
@@ -1334,6 +1939,334 @@ declare class PriceZoneFormModalService {
1334
1939
  static ɵprov: i0.ɵɵInjectableDeclaration<PriceZoneFormModalService>;
1335
1940
  }
1336
1941
 
1942
+ declare class ProductCategoryService {
1943
+ private apiService;
1944
+ constructor(apiService: ApiService);
1945
+ fetchCategories({ page, search, limit, }: FetchProductCategoriesParams): Observable<ProductCategoriesResponse>;
1946
+ fetchOneById(id: number): Observable<ProductCategoryResponse>;
1947
+ createOne(data: ProductCategory): Observable<any>;
1948
+ updateOne(id: number, data: ProductCategory): Observable<ProductCategoryResponse>;
1949
+ deleteOne(id: number): Observable<any>;
1950
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProductCategoryService, never>;
1951
+ static ɵprov: i0.ɵɵInjectableDeclaration<ProductCategoryService>;
1952
+ }
1953
+
1954
+ declare class ProductTagService {
1955
+ private apiService;
1956
+ constructor(apiService: ApiService);
1957
+ fetchTags({ page, search, limit }: FetchProductTagsParams): Observable<ProductTagsResponse>;
1958
+ fetchOneById(id: number): Observable<ProductTagResponse>;
1959
+ createOne(data: ProductTag): Observable<any>;
1960
+ updateOne(id: number, data: ProductTag): Observable<ProductTagResponse>;
1961
+ deleteOne(id: number): Observable<any>;
1962
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProductTagService, never>;
1963
+ static ɵprov: i0.ɵɵInjectableDeclaration<ProductTagService>;
1964
+ }
1965
+
1966
+ declare class ProductTypeService {
1967
+ private apiService;
1968
+ constructor(apiService: ApiService);
1969
+ fetchTypes({ page, search, limit }: FetchProductTypesParams): Observable<ProductTypesResponse>;
1970
+ fetchOneById(id: number): Observable<ProductTypeResponse>;
1971
+ createOne(data: ProductType): Observable<any>;
1972
+ updateOne(id: number, data: ProductType): Observable<ProductTypeResponse>;
1973
+ deleteOne(id: number): Observable<any>;
1974
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProductTypeService, never>;
1975
+ static ɵprov: i0.ɵɵInjectableDeclaration<ProductTypeService>;
1976
+ }
1977
+
1978
+ interface FetchProductsParams {
1979
+ page?: number;
1980
+ limit?: number;
1981
+ search?: string;
1982
+ }
1983
+
1984
+ declare class ProductService {
1985
+ private apiService;
1986
+ private productsSubject;
1987
+ products$: Observable<Product[]>;
1988
+ constructor(apiService: ApiService);
1989
+ fetchProducts({ page, search, limit, }: FetchProductsParams): Observable<ProductsResponseInterface>;
1990
+ loadProducts(params: FetchProductsParams): void;
1991
+ getCurrentProducts(): Product[];
1992
+ fetchOneById(id: number): Observable<ProductResponse>;
1993
+ createOne(data: Product): Observable<any>;
1994
+ updateOne(id: number, data: any): Observable<ProductResponse>;
1995
+ deleteOne(id: number): Observable<any>;
1996
+ fetchImages(id: number): Observable<{
1997
+ data: ProductImage[];
1998
+ }>;
1999
+ uploadImages(id: number, files?: FormData): Observable<{
2000
+ data: ProductImage[];
2001
+ }>;
2002
+ deleteOneImage(productId: number, imageId: number): Observable<any>;
2003
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProductService, never>;
2004
+ static ɵprov: i0.ɵɵInjectableDeclaration<ProductService>;
2005
+ }
2006
+
2007
+ declare class BaseModalService {
2008
+ readonly isOpen: WritableSignal<boolean>;
2009
+ get modalIsOpen(): WritableSignal<boolean>;
2010
+ open(): void;
2011
+ close(): void;
2012
+ }
2013
+
2014
+ declare class FeedbackModalService {
2015
+ private _modals;
2016
+ readonly modals: i0.Signal<FeedbackModalElement[]>;
2017
+ addModal(modal: FeedbackModalElement): void;
2018
+ removeModal(id: string): void;
2019
+ removeAllModals(): void;
2020
+ static ɵfac: i0.ɵɵFactoryDeclaration<FeedbackModalService, never>;
2021
+ static ɵprov: i0.ɵɵInjectableDeclaration<FeedbackModalService>;
2022
+ }
2023
+
2024
+ declare class OrderTransactionDetailsModalService {
2025
+ readonly isOpen: WritableSignal<boolean>;
2026
+ transaction: WritableSignal<Transaction | null>;
2027
+ get modalIsOpen(): WritableSignal<boolean>;
2028
+ open(transaction: Transaction): void;
2029
+ close(): void;
2030
+ static ɵfac: i0.ɵɵFactoryDeclaration<OrderTransactionDetailsModalService, never>;
2031
+ static ɵprov: i0.ɵɵInjectableDeclaration<OrderTransactionDetailsModalService>;
2032
+ }
2033
+
2034
+ declare class PerformanceBookingDataService {
2035
+ private _show;
2036
+ private _performance;
2037
+ private _roomMap;
2038
+ private _hallFloors;
2039
+ private _selectedHallFloor;
2040
+ private _allRenderData;
2041
+ private _stageConfig;
2042
+ readonly show: i0.Signal<Show | null>;
2043
+ readonly hallFloors: i0.Signal<HallFloor[]>;
2044
+ readonly selectedHallFloor: i0.Signal<HallFloor | null>;
2045
+ readonly performance: i0.Signal<Performance | null>;
2046
+ readonly stageConfig: i0.Signal<{
2047
+ [x: string]: any;
2048
+ }>;
2049
+ readonly roomMap: i0.Signal<RoomMap | null>;
2050
+ readonly renderData: i0.Signal<ElementRenderData[]>;
2051
+ setPerformanceBookingData({ data }: PerformanceBookingDataResponse): void;
2052
+ setRoomMap(roomMap: RoomMap | null): void;
2053
+ setAllRenderData(data: ElementRenderData[]): void;
2054
+ setPerformance(performance: Performance | null): void;
2055
+ setShow(show: Show | null): void;
2056
+ setHallFloors(data: HallFloor[]): void;
2057
+ setSelectedHallFloor(id: number): void;
2058
+ updateStageConfig(data: {
2059
+ [x: string]: any;
2060
+ }): void;
2061
+ static ɵfac: i0.ɵɵFactoryDeclaration<PerformanceBookingDataService, never>;
2062
+ static ɵprov: i0.ɵɵInjectableDeclaration<PerformanceBookingDataService>;
2063
+ }
2064
+
2065
+ declare class TicketSelectionDetailsService {
2066
+ private _customerEmail;
2067
+ private _customerId;
2068
+ private _paymentMethod;
2069
+ private _billingInformation;
2070
+ readonly customerEmail: i0.Signal<string | null>;
2071
+ readonly customerId: i0.Signal<number | null>;
2072
+ readonly paymentMethod: i0.Signal<string | null>;
2073
+ readonly billingInformation: i0.Signal<Customer | null>;
2074
+ setCustomerEmail(email: string | null): void;
2075
+ setCustomerId(id: number | null): void;
2076
+ setPaymentMethod(method: string | null): void;
2077
+ setBillingInformation(values: Customer): void;
2078
+ clearSelection(): void;
2079
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketSelectionDetailsService, never>;
2080
+ static ɵprov: i0.ɵɵInjectableDeclaration<TicketSelectionDetailsService>;
2081
+ }
2082
+
2083
+ declare class TicketSelectionDiscountService {
2084
+ private _coupon;
2085
+ private _corporateBond;
2086
+ private _corporateBondCode;
2087
+ private _giftBond;
2088
+ private _giftBondCode;
2089
+ readonly coupon: Signal<Coupon | null>;
2090
+ readonly corporateBond: Signal<CorporateBond | null>;
2091
+ readonly corporateBondCode: Signal<string | null>;
2092
+ readonly giftBond: Signal<GiftBondPurchase | null>;
2093
+ readonly giftBondCode: Signal<string | null>;
2094
+ readonly selectedDiscount: Signal<SelectedDiscountCard | null>;
2095
+ readonly selectedDiscountType: Signal<SelectedDiscountCardType | undefined>;
2096
+ readonly selectedDiscountValue: Signal<number | undefined>;
2097
+ setCoupon(coupon: Coupon | null): void;
2098
+ setCorporateBond(corporateBond: CorporateBond | null): void;
2099
+ setCorporateBondCode(code: string | null): void;
2100
+ setGiftBond(giftBond: GiftBondPurchase | null): void;
2101
+ setGiftBondCode(code: string | null): void;
2102
+ clearSelection(): void;
2103
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketSelectionDiscountService, never>;
2104
+ static ɵprov: i0.ɵɵInjectableDeclaration<TicketSelectionDiscountService>;
2105
+ }
2106
+
2107
+ declare class TicketSelectionTotalsService {
2108
+ private bookingDataService;
2109
+ private selectionService;
2110
+ private selectionDiscountService;
2111
+ readonly selectedProductEntries: i0.Signal<{
2112
+ id: number;
2113
+ quantity: number;
2114
+ }[]>;
2115
+ readonly selectedProductCount: i0.Signal<number>;
2116
+ readonly productSubtotal: i0.Signal<number>;
2117
+ readonly ticketSubtotal: i0.Signal<number>;
2118
+ readonly serviceFee: i0.Signal<number>;
2119
+ subtotalValue(): number;
2120
+ totalValue(): number;
2121
+ totalDiscounted(): number | null;
2122
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketSelectionTotalsService, never>;
2123
+ static ɵprov: i0.ɵɵInjectableDeclaration<TicketSelectionTotalsService>;
2124
+ }
2125
+
2126
+ declare class TicketSelectionService {
2127
+ private bookingDataService;
2128
+ private feedbackModalService;
2129
+ private selectionDetailsService;
2130
+ private selectionDiscountService;
2131
+ private _zoneQuantities;
2132
+ private _allTickets;
2133
+ private _selectedTickets;
2134
+ private _selectedBlockedTickets;
2135
+ private _products;
2136
+ private _productQuantities;
2137
+ readonly selectedTickets: i0.Signal<PerformanceTicket[]>;
2138
+ readonly selectedBlockedTickets: i0.Signal<PerformanceTicket[]>;
2139
+ readonly selectedCount: i0.Signal<number>;
2140
+ readonly blockedSelectedCount: i0.Signal<number>;
2141
+ readonly selectedTicketIds: i0.Signal<Set<PerformanceTicket>>;
2142
+ readonly selectedBlockedTicketIds: i0.Signal<number[]>;
2143
+ readonly selectedTicketIdList: i0.Signal<number[]>;
2144
+ readonly products: i0.Signal<Product[]>;
2145
+ readonly productQuantities: i0.Signal<Map<number, number>>;
2146
+ readonly selectedProductEntries: i0.Signal<{
2147
+ id: number;
2148
+ quantity: number;
2149
+ }[]>;
2150
+ readonly selectedProductCount: i0.Signal<number>;
2151
+ readonly serviceFee: i0.Signal<number>;
2152
+ setTickets(tickets: PerformanceTicket[]): void;
2153
+ setProducts(products: Product[]): void;
2154
+ updateProductQuantity(productId: number, delta: number): void;
2155
+ getProductQuantity(productId: number): number;
2156
+ private getListByStatus;
2157
+ setSelectedTickets(tickets: PerformanceTicket[]): void;
2158
+ toggle(ticket: PerformanceTicket): void;
2159
+ select(ticket: PerformanceTicket): void;
2160
+ deselect(ticket: PerformanceTicket): void;
2161
+ clearBlockedSelection(): void;
2162
+ clearSelection(): void;
2163
+ isSelected(ticket: PerformanceTicket): boolean;
2164
+ initZoneQuantity(elementId: number, maxCapacity: number): void;
2165
+ adjustZoneQuantity(elementId: number, delta: number): void;
2166
+ getZoneTickets(elementId: number): PerformanceTicket[];
2167
+ buildTooltipData(ticket: PerformanceTicket, elementName: string, seatLabel: string | null, x: number, y: number): TicketMapTooltipData;
2168
+ buildReservePerformanceDto(paymentMethod?: string, termsAccepted?: boolean, dataProcessingAccepted?: boolean): ReservePerformanceDto;
2169
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketSelectionService, never>;
2170
+ static ɵprov: i0.ɵɵInjectableDeclaration<TicketSelectionService>;
2171
+ }
2172
+
2173
+ declare class TicketMapZoomService {
2174
+ readonly currentZoom: i0.WritableSignal<number>;
2175
+ private stage?;
2176
+ private bookingDataService;
2177
+ private readonly defaultConfig;
2178
+ constructor();
2179
+ /**
2180
+ * Set the Konva stage instance
2181
+ */
2182
+ setStage(stage: Stage): void;
2183
+ /**
2184
+ * Zoom in by one step
2185
+ */
2186
+ zoomIn(): void;
2187
+ /**
2188
+ * Zoom out by one step
2189
+ */
2190
+ zoomOut(): void;
2191
+ /**
2192
+ * Reset zoom to 100%
2193
+ */
2194
+ resetZoom(): void;
2195
+ /**
2196
+ * Get current zoom as percentage string
2197
+ */
2198
+ getZoomPercentage(): string;
2199
+ /**
2200
+ * Get current zoom value
2201
+ */
2202
+ getCurrentZoom(): number;
2203
+ /**
2204
+ * Apply zoom with center point
2205
+ */
2206
+ private applyZoom;
2207
+ /**
2208
+ * Apply zoom scale with specific center point
2209
+ */
2210
+ private applyZoomScale;
2211
+ /**
2212
+ * Handle mouse wheel zoom toward the cursor position
2213
+ */
2214
+ handleWheelZoom(deltaY: number): void;
2215
+ /**
2216
+ * Fit the content bounds to fill the stage container
2217
+ */
2218
+ fitToContainer(padding?: number): void;
2219
+ /**
2220
+ * Get current stage position
2221
+ */
2222
+ getStagePosition(): {
2223
+ x: number;
2224
+ y: number;
2225
+ };
2226
+ /**
2227
+ * Set stage position (useful for programmatic panning)
2228
+ */
2229
+ setStagePosition(position: {
2230
+ x: number;
2231
+ y: number;
2232
+ }): void;
2233
+ /**
2234
+ * Fit the stage content bounds to the container, centering and scaling
2235
+ * to show the full content with optional padding.
2236
+ */
2237
+ fitToBounds(contentBounds: {
2238
+ x: number;
2239
+ y: number;
2240
+ width: number;
2241
+ height: number;
2242
+ }, containerWidth: number, containerHeight: number, padding?: number): void;
2243
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapZoomService, never>;
2244
+ static ɵprov: i0.ɵɵInjectableDeclaration<TicketMapZoomService>;
2245
+ }
2246
+
2247
+ declare class ConfirmationOrderModalService extends BaseModalService {
2248
+ static ɵfac: i0.ɵɵFactoryDeclaration<ConfirmationOrderModalService, never>;
2249
+ static ɵprov: i0.ɵɵInjectableDeclaration<ConfirmationOrderModalService>;
2250
+ }
2251
+
2252
+ declare class TicketQrService {
2253
+ private apiService;
2254
+ constructor(apiService: ApiService);
2255
+ fetchQrToken(ticketUuid: string): Observable<QrTokenResponse>;
2256
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketQrService, never>;
2257
+ static ɵprov: i0.ɵɵInjectableDeclaration<TicketQrService>;
2258
+ }
2259
+
2260
+ declare class TicketQrModalService {
2261
+ isOpen: WritableSignal<boolean>;
2262
+ ticketUuid: WritableSignal<string | null>;
2263
+ ticketDescription: WritableSignal<string | null>;
2264
+ open(ticketUuid: string, description?: string): void;
2265
+ close(): void;
2266
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketQrModalService, never>;
2267
+ static ɵprov: i0.ɵɵInjectableDeclaration<TicketQrModalService>;
2268
+ }
2269
+
1337
2270
  declare const authInterceptor: HttpInterceptorFn;
1338
2271
 
1339
2272
  declare class AppButtonComponent {
@@ -1341,19 +2274,19 @@ declare class AppButtonComponent {
1341
2274
  disabled: boolean;
1342
2275
  loading: boolean;
1343
2276
  type: 'button' | 'submit';
1344
- variant: 'primary' | 'secondary' | 'terciary' | 'success' | 'transparent';
2277
+ variant: 'primary' | 'secondary' | 'tertiary' | 'success' | 'transparent';
1345
2278
  text: string;
1346
2279
  size: 'xs' | 'sm' | 'md' | 'lg';
1347
2280
  loadingText: string;
1348
2281
  icon: string;
2282
+ tooltip: string;
1349
2283
  handleClick(): void;
1350
2284
  get buttonClasses(): string;
1351
2285
  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>;
2286
+ 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
2287
  }
1354
2288
 
1355
2289
  declare class AppLinkButtonComponent {
1356
- protected readonly BASE_BUTTON_CLASSES: string;
1357
2290
  disabled: boolean;
1358
2291
  loading: boolean;
1359
2292
  target: '_blank' | '_self' | '_parent' | '_top';
@@ -1363,10 +2296,11 @@ declare class AppLinkButtonComponent {
1363
2296
  route: string;
1364
2297
  queryParams: Record<string, any>;
1365
2298
  size: 'xs' | 'sm' | 'md' | 'lg';
1366
- variant: 'primary' | 'secondary' | 'terciary' | 'success' | 'transparent';
2299
+ variant: 'primary' | 'secondary' | 'tertiary' | 'success' | 'transparent';
2300
+ tooltip: string;
1367
2301
  get buttonClasses(): string;
1368
2302
  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>;
2303
+ 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
2304
  }
1371
2305
 
1372
2306
  declare class AppAlertComponent {
@@ -1374,23 +2308,34 @@ declare class AppAlertComponent {
1374
2308
  text: string;
1375
2309
  closeable: boolean;
1376
2310
  size: 'xs' | 'sm' | 'md' | 'lg';
1377
- get alertColorClasses(): string;
1378
- get alertSizeClasses(): string;
1379
- get alertClasses(): string;
1380
2311
  get alertIcon(): string;
1381
2312
  static ɵfac: i0.ɵɵFactoryDeclaration<AppAlertComponent, never>;
1382
2313
  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
2314
  }
1384
2315
 
1385
- declare class LoadingmModalComponent {
1386
- private loadingModalService;
1387
- constructor(loadingModalService: LoadingModalService);
1388
- get isOpen(): i0.WritableSignal<boolean>;
1389
- get title(): i0.WritableSignal<string>;
2316
+ declare class FeedbackModalComponent implements OnChanges, OnDestroy {
2317
+ isOpen: WritableSignal<boolean>;
2318
+ type: FeedbackModalType;
2319
+ title: string;
2320
+ message: string;
2321
+ showHeader: boolean;
2322
+ showCloseButton: boolean;
2323
+ showTitle: boolean;
2324
+ autoClose: boolean;
2325
+ autoCloseDuration: number;
2326
+ buttonText: string;
2327
+ closed: EventEmitter<void>;
2328
+ private autoCloseTimeout;
2329
+ get defaultButtonText(): string;
2330
+ get resolvedButtonText(): string;
2331
+ get buttonVariant(): 'primary' | 'secondary';
2332
+ ngOnChanges(changes: SimpleChanges): void;
2333
+ ngOnDestroy(): void;
1390
2334
  closeModal(): void;
1391
- onCitySaved(): void;
1392
- static ɵfac: i0.ɵɵFactoryDeclaration<LoadingmModalComponent, never>;
1393
- static ɵcmp: i0.ɵɵComponentDeclaration<LoadingmModalComponent, "loading-modal", never, {}, {}, never, never, true, never>;
2335
+ private scheduleAutoClose;
2336
+ private clearAutoClose;
2337
+ static ɵfac: i0.ɵɵFactoryDeclaration<FeedbackModalComponent, never>;
2338
+ 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
2339
  }
1395
2340
 
1396
2341
  declare class DeleteConfirmationComponent {
@@ -1413,12 +2358,27 @@ declare class DeleteConfirmationComponent {
1413
2358
  declare class AppModalComponent {
1414
2359
  title: string;
1415
2360
  disableClose: boolean;
2361
+ showHeader: boolean;
2362
+ showCloseButton: boolean;
2363
+ showTitle: boolean;
1416
2364
  isOpen: WritableSignal<boolean>;
1417
- size: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl';
2365
+ size: ModalSize;
1418
2366
  closeModal: EventEmitter<void>;
1419
2367
  onCloseModal(): void;
2368
+ onKeydownEscape(): void;
1420
2369
  static ɵfac: i0.ɵɵFactoryDeclaration<AppModalComponent, never>;
1421
- 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>;
2370
+ 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; }; "isOpen": { "alias": "isOpen"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "closeModal": "closeModal"; }, never, ["*"], true, never>;
2371
+ }
2372
+
2373
+ declare class AppBadgeComponent {
2374
+ text: string;
2375
+ color: BadgeColor;
2376
+ size: BadgeSize;
2377
+ bordered: boolean;
2378
+ backgroundColor: string;
2379
+ textColor: string;
2380
+ static ɵfac: i0.ɵɵFactoryDeclaration<AppBadgeComponent, never>;
2381
+ 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>;
1422
2382
  }
1423
2383
 
1424
2384
  declare class AuditInformationComponent {
@@ -1453,6 +2413,64 @@ declare class DynamicTableComponent {
1453
2413
  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>;
1454
2414
  }
1455
2415
 
2416
+ declare class TextExpandableComponent implements OnChanges {
2417
+ text: string;
2418
+ maxLength: number;
2419
+ fontSize: TextFontSize;
2420
+ allowHtml: boolean;
2421
+ maxLines?: number;
2422
+ protected expanded: boolean;
2423
+ ngOnChanges(): void;
2424
+ get plainText(): string;
2425
+ get truncated(): boolean;
2426
+ get visibleText(): string;
2427
+ get lines(): number;
2428
+ toggleExpanded(): void;
2429
+ static ɵfac: i0.ɵɵFactoryDeclaration<TextExpandableComponent, never>;
2430
+ 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>;
2431
+ }
2432
+
2433
+ declare class ShowCardComponent {
2434
+ show: Show;
2435
+ linkText: string;
2436
+ linkUrlFn?: (show: Show) => string;
2437
+ linkQueryParams?: Record<string, any>;
2438
+ transloco: TranslocoService;
2439
+ dateService: DateService;
2440
+ get showTypeColor(): {
2441
+ bg: string;
2442
+ text: string;
2443
+ };
2444
+ formatTimeDate(date: string): Date;
2445
+ static ɵfac: i0.ɵɵFactoryDeclaration<ShowCardComponent, never>;
2446
+ 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>;
2447
+ }
2448
+
2449
+ declare class ShowTypeBadgeComponent {
2450
+ show: Show;
2451
+ size: BadgeSize;
2452
+ transloco: TranslocoService;
2453
+ get showTypeColor(): {
2454
+ bg: string;
2455
+ text: string;
2456
+ };
2457
+ static ɵfac: i0.ɵɵFactoryDeclaration<ShowTypeBadgeComponent, never>;
2458
+ static ɵcmp: i0.ɵɵComponentDeclaration<ShowTypeBadgeComponent, "show-type-badge", never, { "show": { "alias": "show"; "required": true; }; "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, never>;
2459
+ }
2460
+
2461
+ declare class ShowCardSkeletonComponent {
2462
+ static ɵfac: i0.ɵɵFactoryDeclaration<ShowCardSkeletonComponent, never>;
2463
+ static ɵcmp: i0.ɵɵComponentDeclaration<ShowCardSkeletonComponent, "show-card-skeleton", never, {}, {}, never, never, true, never>;
2464
+ }
2465
+
2466
+ declare class AppBreadcumbComponent {
2467
+ homeUrl: string | undefined;
2468
+ steps: BreadcrumbStep[];
2469
+ theme: BreadcrumbTheme;
2470
+ static ɵfac: i0.ɵɵFactoryDeclaration<AppBreadcumbComponent, never>;
2471
+ 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>;
2472
+ }
2473
+
1456
2474
  declare class LanguageSwitcherComponent {
1457
2475
  protected transloco: TranslocoService;
1458
2476
  availableLangs: string[];
@@ -1500,7 +2518,7 @@ declare class FormInputComponent implements ControlValueAccessor {
1500
2518
 
1501
2519
  declare class FormSelectComponent implements ControlValueAccessor {
1502
2520
  ngControl: NgControl;
1503
- private transloco;
2521
+ protected transloco: TranslocoService;
1504
2522
  label: string;
1505
2523
  name: string;
1506
2524
  id: string;
@@ -1524,8 +2542,6 @@ declare class FormSelectComponent implements ControlValueAccessor {
1524
2542
  get inputId(): string;
1525
2543
  get showError(): boolean;
1526
2544
  get errorMessage(): string;
1527
- get resolvedDefaultOptionLabel(): string;
1528
- get selectClasses(): string;
1529
2545
  get fieldGroupClasses(): string;
1530
2546
  static ɵfac: i0.ɵɵFactoryDeclaration<FormSelectComponent, [{ optional: true; self: true; }, null]>;
1531
2547
  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>;
@@ -1558,7 +2574,6 @@ declare class FormTextareaComponent implements ControlValueAccessor {
1558
2574
  get inputId(): string;
1559
2575
  get showError(): boolean;
1560
2576
  get errorMessage(): string;
1561
- get inputClasses(): string;
1562
2577
  get fieldGroupClasses(): string;
1563
2578
  static ɵfac: i0.ɵɵFactoryDeclaration<FormTextareaComponent, [{ optional: true; self: true; }, null]>;
1564
2579
  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>;
@@ -1581,7 +2596,8 @@ declare class FormEditorComponent implements ControlValueAccessor, OnInit, OnDes
1581
2596
  onChange: any;
1582
2597
  onTouched: any;
1583
2598
  private subscription;
1584
- constructor(ngControl: NgControl, transloco: TranslocoService);
2599
+ isBrowser: boolean;
2600
+ constructor(ngControl: NgControl, transloco: TranslocoService, platformId: object);
1585
2601
  ngOnInit(): void;
1586
2602
  ngOnDestroy(): void;
1587
2603
  writeValue(value: any): void;
@@ -1592,7 +2608,7 @@ declare class FormEditorComponent implements ControlValueAccessor, OnInit, OnDes
1592
2608
  get showError(): boolean;
1593
2609
  get errorMessage(): string;
1594
2610
  get fieldGroupClasses(): string;
1595
- static ɵfac: i0.ɵɵFactoryDeclaration<FormEditorComponent, [{ optional: true; self: true; }, null]>;
2611
+ static ɵfac: i0.ɵɵFactoryDeclaration<FormEditorComponent, [{ optional: true; self: true; }, null, null]>;
1596
2612
  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>;
1597
2613
  }
1598
2614
 
@@ -1626,7 +2642,6 @@ declare class ColorPickerComponent implements ControlValueAccessor {
1626
2642
  selectPresetColor(color: string): void;
1627
2643
  get inputId(): string;
1628
2644
  get showError(): boolean;
1629
- get inputClasses(): string;
1630
2645
  get fieldGroupClasses(): string;
1631
2646
  isValidHexColor(color: string): boolean;
1632
2647
  static ɵfac: i0.ɵɵFactoryDeclaration<ColorPickerComponent, [{ optional: true; self: true; }, null]>;
@@ -1663,7 +2678,6 @@ declare class DateInputComponent implements ControlValueAccessor {
1663
2678
  get inputId(): string;
1664
2679
  get showError(): boolean;
1665
2680
  get errorMessage(): string;
1666
- get inputClasses(): string;
1667
2681
  get fieldGroupClasses(): string;
1668
2682
  static ɵfac: i0.ɵɵFactoryDeclaration<DateInputComponent, [{ optional: true; self: true; }, null]>;
1669
2683
  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>;
@@ -1690,9 +2704,6 @@ declare class ToggleSwitchComponent implements ControlValueAccessor {
1690
2704
  setDisabledState(isDisabled: boolean): void;
1691
2705
  onToggle(): void;
1692
2706
  get inputId(): string;
1693
- get toggleSizeClasses(): string;
1694
- get toggleThumbSizeClasses(): string;
1695
- get toggleThumbTranslateClasses(): string;
1696
2707
  get fieldGroupClasses(): string;
1697
2708
  static ɵfac: i0.ɵɵFactoryDeclaration<ToggleSwitchComponent, [{ optional: true; self: true; }]>;
1698
2709
  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>;
@@ -1781,6 +2792,7 @@ declare class AsyncSelectComponent implements OnInit, OnDestroy, OnChanges, Cont
1781
2792
  notFoundText: string;
1782
2793
  bindLabel: string;
1783
2794
  bindValue: string;
2795
+ disabled: boolean;
1784
2796
  value: any;
1785
2797
  onChange: any;
1786
2798
  onTouched: any;
@@ -1810,7 +2822,7 @@ declare class AsyncSelectComponent implements OnInit, OnDestroy, OnChanges, Cont
1810
2822
  registerOnTouched(fn: any): void;
1811
2823
  setDisabledState(isDisabled: boolean): void;
1812
2824
  static ɵfac: i0.ɵɵFactoryDeclaration<AsyncSelectComponent, never>;
1813
- 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>;
2825
+ 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>;
1814
2826
  }
1815
2827
 
1816
2828
  declare class ChangePasswordFormComponent {
@@ -2247,6 +3259,17 @@ declare class PriceZoneSelectComponent implements OnInit, OnDestroy, ControlValu
2247
3259
  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>;
2248
3260
  }
2249
3261
 
3262
+ declare class PerformanceStatusBadgeComponent {
3263
+ performance: Performance;
3264
+ size: BadgeSize;
3265
+ protected get statusColors(): {
3266
+ text: string;
3267
+ bg: string;
3268
+ };
3269
+ static ɵfac: i0.ɵɵFactoryDeclaration<PerformanceStatusBadgeComponent, never>;
3270
+ static ɵcmp: i0.ɵɵComponentDeclaration<PerformanceStatusBadgeComponent, "performance-status-badge", never, { "performance": { "alias": "performance"; "required": true; }; "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, never>;
3271
+ }
3272
+
2250
3273
  declare class DaySelectorGridComponent {
2251
3274
  private platformId;
2252
3275
  protected performanceService: PerformanceService;
@@ -2268,11 +3291,15 @@ declare class DaySelectorGridComponent {
2268
3291
  declare class PerformanceCardComponent {
2269
3292
  protected listEventService: PerformancesListEventsService;
2270
3293
  card: DailyPerformanceItem;
3294
+ linkText: string;
3295
+ linkUrlFn?: (card: DailyPerformanceItem) => string;
3296
+ linkQueryParams?: Record<string, any>;
2271
3297
  constructor(listEventService: PerformancesListEventsService);
3298
+ get badgeColor(): 'success' | 'error';
2272
3299
  onSelect(): void;
2273
3300
  isSelected(): boolean;
2274
3301
  static ɵfac: i0.ɵɵFactoryDeclaration<PerformanceCardComponent, never>;
2275
- static ɵcmp: i0.ɵɵComponentDeclaration<PerformanceCardComponent, "performance-card", never, { "card": { "alias": "card"; "required": true; }; }, {}, never, never, true, never>;
3302
+ 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>;
2276
3303
  }
2277
3304
 
2278
3305
  declare class PerformanceCardListComponent {
@@ -2280,6 +3307,9 @@ declare class PerformanceCardListComponent {
2280
3307
  protected performanceService: PerformanceService;
2281
3308
  protected listEventService: PerformancesListEventsService;
2282
3309
  protected toastService: ToastService;
3310
+ linkText: string;
3311
+ linkUrlFn?: (card: DailyPerformanceItem) => string;
3312
+ linkQueryParams?: Record<string, any>;
2283
3313
  loadingData: WritableSignal<boolean>;
2284
3314
  performances: WritableSignal<DailyPerformanceItem[]>;
2285
3315
  constructor(platformId: object, performanceService: PerformanceService, listEventService: PerformancesListEventsService, toastService: ToastService);
@@ -2287,7 +3317,7 @@ declare class PerformanceCardListComponent {
2287
3317
  private loadData;
2288
3318
  get selectedDayDate(): string | null;
2289
3319
  static ɵfac: i0.ɵɵFactoryDeclaration<PerformanceCardListComponent, never>;
2290
- static ɵcmp: i0.ɵɵComponentDeclaration<PerformanceCardListComponent, "performance-card-list", never, {}, {}, never, never, true, never>;
3320
+ 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>;
2291
3321
  }
2292
3322
 
2293
3323
  declare class PerformanceStepperComponent {
@@ -2316,9 +3346,9 @@ declare class ShowsFilterComponent {
2316
3346
  }
2317
3347
 
2318
3348
  interface PriceZoneItem {
2319
- colorClass: string;
3349
+ color: string;
2320
3350
  name: string;
2321
- seatsAvailable: number;
3351
+ available_seats: number;
2322
3352
  price: string;
2323
3353
  }
2324
3354
 
@@ -2334,5 +3364,327 @@ declare class ZonePriceListComponent {
2334
3364
  static ɵcmp: i0.ɵɵComponentDeclaration<ZonePriceListComponent, "zone-price-list", never, { "zones": { "alias": "zones"; "required": true; }; }, {}, never, never, true, never>;
2335
3365
  }
2336
3366
 
2337
- export { ADMIN_API_ROUTES, ALERT_BASE_CLASSES, ALERT_COLOR_CLASSES, ALERT_ICONS, ALERT_SIZE_CLASSES, AdminSelectComponent, AdminService, ApiService, AppAlertComponent, AppButtonComponent, AppLinkButtonComponent, AppModalComponent, AsyncSelectComponent, AuditInformationComponent, BASE_BUTTON_CLASSES, BASE_INPUT_CLASSES, BUTTON_SIZES_CLASSES, BUTTON_VARIANT_CLASSES, CITY_API_ENDPOINTS, COUNTRY_API_ENDPOINTS, CUSTOMERS_API_ROUTES, ChangePasswordFormComponent, ChangePasswordFormService, CitiesService, CitySelectComponent, ColorPickerComponent, CorporateBondStatus, CountrySelectComponent, CountryService, CouponApplicability, CouponDiscountType, CustomerSelectComponent, CustomerService, DateInputComponent, DateService, DaySelectorGridComponent, DeleteConfirmationComponent, DeleteConfirmationService, DynamicTableComponent, ERROR_INPUT_CLASSES, EndDateGreaterThanStartValidator, FORM_ERROR_MESSAGES, FileType, FileUploadComponent, FileUploadPreviewComponent, FormEditorComponent, FormInputComponent, FormSelectComponent, FormTextareaComponent, LanguageSwitcherComponent, LoadingModalService, LoadingmModalComponent, MinTodayValidator, MustMatchValidator, OrderItemType, OrderStatus, PERFORMANCES_API_ROUTES, PRICE_ZONES_API_ROUTES, PRODUCTS_API_ROUTES, PerformanceCardComponent, PerformanceCardListComponent, PerformanceMultiSelectComponent, PerformanceSelectComponent, PerformanceService, PerformanceStatus, PerformanceStepperComponent, PerformanceTicketStatus, PerformancesListEventsService, PriceZoneEventService, PriceZoneFormModalService, PriceZoneSelectComponent, PriceZoneService, ProductMultiSelectComponent, ProductSelectComponent, ProductService, RoomMapElementOrientation, RoomMapElementType, SHOWS_API_ROUTES, STATE_API_ENDPOINTS, ShowMultiSelectComponent, ShowSelectComponent, ShowService, ShowsFilterComponent, StateSelectComponent, StatesService, TICKERA_COMPONENTS_CONFIG, ToastService, ToggleSwitchComponent, VENUES_API_ROUTES, ZonePriceItemComponent, ZonePriceListComponent, authInterceptor, formatCitiesResponseToSelect, getCustomerFullname, parseJsonToFormDataAdvanced, provideTickeraComponents, transformImageToFile };
2338
- export type { Admin, AdminsResponse, AsyncSelectConfig, Auditable, CitiesResponse, City, CityResponse, CorporateBond, CorporateBondCode, CorporateBondResponse, CountriesResponse, Country, CountryResponse, Coupon, CouponResponse, Customer, CustomerResponse, CustomersResponse, DailyPerformanceHall, DailyPerformanceItem, DailyPerformancePriceZone, DailyPerformanceShow, DailyPerformanceVenue, DailyPerformancesResponse, DeleteConfirmationOpen, DragDropEvent, DynamicTableHeader, ElementPropertiesTab, FetchCitiesParams, FetchDailyPerformancesParams, FetchShowsParams, FileUploadConfig, FindAllPriceZoneParams, Hall, HallFloor, NumerationConfig, Order, OrderItem, OrderResponse, OrdersResponse, Performance, PerformanceAvailableDay, PerformanceBookingDataResponse, PerformanceResponse, PerformanceTicket, PerformancesAvailableDaysResponse, PerformancesResponseInterface, PriceZone, PriceZoneResponse, PriceZoneUpdateResponse, PriceZonesResponseInterface, Product, ProductResponse, ProductsResponseInterface, RoomMap, RoomMapBaseElement, RoomMapCanvasConfiguration, RoomMapCanvasElement, RoomMapChairPosition, RoomMapElementTemplate, RoomMapExitElement, RoomMapGridPosition, RoomMapPosition, RoomMapProductionAreaElement, RoomMapSeatDisplayState, RoomMapSeatElement, RoomMapSeatState, RoomMapSize, RoomMapStageElement, RoomMapTableElement, RoomMapUnavailableElement, RoomMapZoneElement, SelectOption, Show, ShowImage, ShowResponse, ShowType, ShowsResponseInterface, State, StateResponse, StatesResponse, TickeraComponentsConfig, UploadedFile, ValidateCorporateBondResponse, ValidateCouponResponse, Venue, VenueImage };
3367
+ declare class TicketMapWidgetComponent {
3368
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapWidgetComponent, never>;
3369
+ static ɵcmp: i0.ɵɵComponentDeclaration<TicketMapWidgetComponent, "ticket-map-widget", never, {}, {}, never, ["*"], true, never>;
3370
+ }
3371
+
3372
+ declare class TicketMapWidgetHeaderComponent {
3373
+ title: string;
3374
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapWidgetHeaderComponent, never>;
3375
+ static ɵcmp: i0.ɵɵComponentDeclaration<TicketMapWidgetHeaderComponent, "ticket-map-widget-header", never, { "title": { "alias": "title"; "required": false; }; }, {}, never, ["*"], true, never>;
3376
+ }
3377
+
3378
+ declare class TicketMapZoomControlsComponent {
3379
+ private zoomService;
3380
+ readonly currentZoom: i0.Signal<number>;
3381
+ readonly zoomPercentage: i0.Signal<string>;
3382
+ constructor(zoomService: TicketMapZoomService);
3383
+ zoomIn(): void;
3384
+ zoomOut(): void;
3385
+ resetZoom(): void;
3386
+ fitToContainer(): void;
3387
+ handleZoomAction(action: string): void;
3388
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapZoomControlsComponent, never>;
3389
+ static ɵcmp: i0.ɵɵComponentDeclaration<TicketMapZoomControlsComponent, "ticket-map-zoom-controls", never, {}, {}, never, never, true, never>;
3390
+ }
3391
+
3392
+ declare class PerformanceTicketMapComponent implements OnDestroy, AfterViewInit {
3393
+ private platformId;
3394
+ protected bookingDataService: PerformanceBookingDataService;
3395
+ protected feedbackModalService: FeedbackModalService;
3396
+ protected selectionService: TicketSelectionService;
3397
+ protected zoomService: TicketMapZoomService;
3398
+ selectionChange: EventEmitter<PerformanceTicket[]>;
3399
+ needsLoginError: EventEmitter<any>;
3400
+ readOnly: boolean;
3401
+ needsLogin: boolean;
3402
+ isLoggedIn: boolean;
3403
+ stageComponent?: StageComponent;
3404
+ protected tooltipData: i0.WritableSignal<TicketMapTooltipData | null>;
3405
+ private stageReady;
3406
+ private autoFitDone;
3407
+ private resizeObserver?;
3408
+ constructor(platformId: object, bookingDataService: PerformanceBookingDataService, feedbackModalService: FeedbackModalService, selectionService: TicketSelectionService, zoomService: TicketMapZoomService);
3409
+ protected get isBrowser(): boolean;
3410
+ ngAfterViewInit(): void;
3411
+ private setupResizeObserver;
3412
+ private syncStageToContainer;
3413
+ ngOnDestroy(): void;
3414
+ private getInternalPointer;
3415
+ protected selectHallFloor(floorId: number): void;
3416
+ protected handleStageClick(konvaEvent: any): void;
3417
+ protected handleStageMouseMove(konvaEvent: any): void;
3418
+ protected handleStageMouseLeave(): void;
3419
+ protected handleWheel(konvaEvent: any): void;
3420
+ protected trackByElementId(_index: number, item: ElementRenderData): number;
3421
+ protected trackByFloorId(_index: number, floor: HallFloorOption): HallFloorOption;
3422
+ static ɵfac: i0.ɵɵFactoryDeclaration<PerformanceTicketMapComponent, never>;
3423
+ 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>;
3424
+ }
3425
+
3426
+ declare class TicketMapPriceZonesComponent {
3427
+ title: string;
3428
+ protected bookingDataService: PerformanceBookingDataService;
3429
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapPriceZonesComponent, never>;
3430
+ static ɵcmp: i0.ɵɵComponentDeclaration<TicketMapPriceZonesComponent, "ticket-map-price-zones", never, { "title": { "alias": "title"; "required": false; }; }, {}, never, never, true, never>;
3431
+ }
3432
+
3433
+ declare class TicketMapProductSelectionItemComponent {
3434
+ protected selectionService: TicketSelectionService;
3435
+ product: Product;
3436
+ constructor(selectionService: TicketSelectionService);
3437
+ get quantity(): number;
3438
+ get firstImage(): string | undefined;
3439
+ increment(): void;
3440
+ decrement(): void;
3441
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapProductSelectionItemComponent, never>;
3442
+ static ɵcmp: i0.ɵɵComponentDeclaration<TicketMapProductSelectionItemComponent, "ticket-map-product-selection-item", never, { "product": { "alias": "product"; "required": true; }; }, {}, never, never, true, never>;
3443
+ }
3444
+
3445
+ declare class TIcketMapProductSelectionComponent {
3446
+ private bookingDataService;
3447
+ readonly products: i0.Signal<tickera_angular_components.Product[]>;
3448
+ static ɵfac: i0.ɵɵFactoryDeclaration<TIcketMapProductSelectionComponent, never>;
3449
+ static ɵcmp: i0.ɵɵComponentDeclaration<TIcketMapProductSelectionComponent, "ticket-map-product-selection", never, {}, {}, never, never, true, never>;
3450
+ }
3451
+
3452
+ declare class TicketMapTotalsComponent {
3453
+ protected bookingDataService: PerformanceBookingDataService;
3454
+ protected selectionDetailsService: TicketSelectionDetailsService;
3455
+ protected selectionDiscountService: TicketSelectionDiscountService;
3456
+ protected selectionTotalsService: TicketSelectionTotalsService;
3457
+ protected selectionService: TicketSelectionService;
3458
+ private activatedRoute;
3459
+ title: string;
3460
+ buttonText: string;
3461
+ loadingButtonText: string;
3462
+ isLoading: boolean;
3463
+ onPurchaseClick: EventEmitter<void>;
3464
+ constructor(bookingDataService: PerformanceBookingDataService, selectionDetailsService: TicketSelectionDetailsService, selectionDiscountService: TicketSelectionDiscountService, selectionTotalsService: TicketSelectionTotalsService, selectionService: TicketSelectionService, activatedRoute: ActivatedRoute);
3465
+ get serviceFee(): number;
3466
+ get performanceId(): number;
3467
+ get selectedTicketIds(): number[];
3468
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapTotalsComponent, never>;
3469
+ 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>;
3470
+ }
3471
+
3472
+ declare class TicketMapWrapperComponent {
3473
+ selectionChange: EventEmitter<PerformanceTicket[]>;
3474
+ needsLoginError: EventEmitter<any>;
3475
+ readOnly: boolean;
3476
+ needsLogin: boolean;
3477
+ isLoggedIn: boolean;
3478
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketMapWrapperComponent, never>;
3479
+ 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>;
3480
+ }
3481
+
3482
+ declare class SeatSelectionEmptySummaryComponent {
3483
+ static ɵfac: i0.ɵɵFactoryDeclaration<SeatSelectionEmptySummaryComponent, never>;
3484
+ static ɵcmp: i0.ɵɵComponentDeclaration<SeatSelectionEmptySummaryComponent, "seat-selection-empty-summary", never, {}, {}, never, never, true, never>;
3485
+ }
3486
+
3487
+ declare class SeatSelectionSummaryComponent {
3488
+ protected selectionService: TicketSelectionService;
3489
+ title: string;
3490
+ clearButtonText: string;
3491
+ constructor(selectionService: TicketSelectionService);
3492
+ static ɵfac: i0.ɵɵFactoryDeclaration<SeatSelectionSummaryComponent, never>;
3493
+ static ɵcmp: i0.ɵɵComponentDeclaration<SeatSelectionSummaryComponent, "seat-selection-summary", never, { "title": { "alias": "title"; "required": false; }; "clearButtonText": { "alias": "clearButtonText"; "required": false; }; }, {}, never, never, true, never>;
3494
+ }
3495
+
3496
+ declare class SeatSelectionSummaryItemComponent {
3497
+ protected selectionService: TicketSelectionService;
3498
+ item: PerformanceTicket;
3499
+ constructor(selectionService: TicketSelectionService);
3500
+ getItemTypeIcon: (ticket: PerformanceTicket) => string;
3501
+ removeItem(ticket: PerformanceTicket): void;
3502
+ static ɵfac: i0.ɵɵFactoryDeclaration<SeatSelectionSummaryItemComponent, never>;
3503
+ static ɵcmp: i0.ɵɵComponentDeclaration<SeatSelectionSummaryItemComponent, "seat-selection-summary-item", never, { "item": { "alias": "item"; "required": true; }; }, {}, never, never, true, never>;
3504
+ }
3505
+
3506
+ declare class ConfirmationOrderModalComponent {
3507
+ private confirmationOrderModalService;
3508
+ private selectionDiscountService;
3509
+ private selectionTotalsService;
3510
+ private selectionService;
3511
+ private bookingDataService;
3512
+ modalTitle: string;
3513
+ confirmButtonText: string;
3514
+ confirmButtonTextLoading: string;
3515
+ loading: boolean;
3516
+ onConfirm: EventEmitter<any>;
3517
+ constructor(confirmationOrderModalService: ConfirmationOrderModalService, selectionDiscountService: TicketSelectionDiscountService, selectionTotalsService: TicketSelectionTotalsService, selectionService: TicketSelectionService, bookingDataService: PerformanceBookingDataService);
3518
+ get isOpen(): i0.WritableSignal<boolean>;
3519
+ get selectedCount(): number;
3520
+ get serviceFee(): number;
3521
+ get subtotalValue(): number;
3522
+ get ticketSubtotal(): number;
3523
+ get productSubtotal(): number;
3524
+ get productCount(): number;
3525
+ get totalValue(): number;
3526
+ get totalDiscounted(): number | null;
3527
+ get coupon(): tickera_angular_components.Coupon | null;
3528
+ get corporateBond(): tickera_angular_components.CorporateBond | null;
3529
+ get giftBond(): tickera_angular_components.GiftBondPurchase | null;
3530
+ onClose(): void;
3531
+ confirmOrder(): void;
3532
+ static ɵfac: i0.ɵɵFactoryDeclaration<ConfirmationOrderModalComponent, never>;
3533
+ 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>;
3534
+ }
3535
+
3536
+ declare class OrderInformationComponent {
3537
+ readonly transloco: TranslocoService;
3538
+ private readonly toastService;
3539
+ order: Order;
3540
+ showPayButton: boolean;
3541
+ createMpPreference?: (order: Order) => Observable<MercadoPagoPreference>;
3542
+ paymentLinkCreated: EventEmitter<Order>;
3543
+ isLoading: boolean;
3544
+ constructor(transloco: TranslocoService, toastService: ToastService);
3545
+ get showMpButton(): boolean;
3546
+ payWithMercadoPago(): void;
3547
+ static ɵfac: i0.ɵɵFactoryDeclaration<OrderInformationComponent, never>;
3548
+ 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>;
3549
+ }
3550
+
3551
+ declare class OrderStatusBadgeComponent {
3552
+ protected transloco: TranslocoService;
3553
+ order: Order | RecentOrder;
3554
+ size: BadgeSize;
3555
+ constructor(transloco: TranslocoService);
3556
+ protected get statusColors(): {
3557
+ text: string;
3558
+ bg: string;
3559
+ };
3560
+ static ɵfac: i0.ɵɵFactoryDeclaration<OrderStatusBadgeComponent, never>;
3561
+ static ɵcmp: i0.ɵɵComponentDeclaration<OrderStatusBadgeComponent, "order-status-badge", never, { "order": { "alias": "order"; "required": true; }; "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, never>;
3562
+ }
3563
+
3564
+ declare class OrderItemTypeBadgeComponent {
3565
+ protected transloco: TranslocoService;
3566
+ item: OrderItem;
3567
+ size: BadgeSize;
3568
+ constructor(transloco: TranslocoService);
3569
+ protected get statusColors(): {
3570
+ text: string;
3571
+ bg: string;
3572
+ };
3573
+ static ɵfac: i0.ɵɵFactoryDeclaration<OrderItemTypeBadgeComponent, never>;
3574
+ static ɵcmp: i0.ɵɵComponentDeclaration<OrderItemTypeBadgeComponent, "order-item-type-badge", never, { "item": { "alias": "item"; "required": true; }; "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, never>;
3575
+ }
3576
+
3577
+ declare class OrderItemsComponent {
3578
+ private ticketQrModalService;
3579
+ order: Order;
3580
+ constructor(ticketQrModalService: TicketQrModalService);
3581
+ protected get orderItems(): Order['order_items'];
3582
+ protected get products(): Order['order_items'];
3583
+ protected get tickets(): Order['order_items'];
3584
+ protected get giftBonds(): Order['order_items'];
3585
+ protected get showActionColumn(): boolean;
3586
+ protected itemTotal(quantity: number, price: number): number;
3587
+ protected hasDiscount(): boolean;
3588
+ protected get totals(): {
3589
+ giftBonds: number;
3590
+ products: number;
3591
+ tickets: number;
3592
+ };
3593
+ openTicketQr(ticketUuid: string, description: string): void;
3594
+ static ɵfac: i0.ɵɵFactoryDeclaration<OrderItemsComponent, never>;
3595
+ static ɵcmp: i0.ɵɵComponentDeclaration<OrderItemsComponent, "order-items", never, { "order": { "alias": "order"; "required": true; }; }, {}, never, never, true, never>;
3596
+ }
3597
+
3598
+ declare class OrderDiscountAppliedComponent {
3599
+ order: Order;
3600
+ protected get discountInfo(): OrderDiscountInfo;
3601
+ protected get hasDiscount(): boolean;
3602
+ protected get discountPct(): number | null;
3603
+ protected get badgeColors(): {
3604
+ text: string;
3605
+ bg: string;
3606
+ };
3607
+ static ɵfac: i0.ɵɵFactoryDeclaration<OrderDiscountAppliedComponent, never>;
3608
+ static ɵcmp: i0.ɵɵComponentDeclaration<OrderDiscountAppliedComponent, "order-discount-applied", never, { "order": { "alias": "order"; "required": true; }; }, {}, never, never, true, never>;
3609
+ }
3610
+
3611
+ interface BillingField {
3612
+ label: string;
3613
+ value: string | number | null;
3614
+ }
3615
+ declare class OrderBillingInfoComponent {
3616
+ order: Order;
3617
+ protected get fields(): BillingField[];
3618
+ protected get hasFields(): boolean;
3619
+ static ɵfac: i0.ɵɵFactoryDeclaration<OrderBillingInfoComponent, never>;
3620
+ static ɵcmp: i0.ɵɵComponentDeclaration<OrderBillingInfoComponent, "order-billing-info", never, { "order": { "alias": "order"; "required": true; }; }, {}, never, never, true, never>;
3621
+ }
3622
+
3623
+ declare class OrderTransactionsComponent {
3624
+ private transactionDetailsModalService;
3625
+ order: Order;
3626
+ constructor(transactionDetailsModalService: OrderTransactionDetailsModalService);
3627
+ protected get transactions(): Transaction[];
3628
+ protected get hasTransactions(): boolean;
3629
+ protected get txColors(): Record<string, {
3630
+ text: string;
3631
+ bg: string;
3632
+ }>;
3633
+ protected openTransaction(transaction: Transaction): void;
3634
+ static ɵfac: i0.ɵɵFactoryDeclaration<OrderTransactionsComponent, never>;
3635
+ static ɵcmp: i0.ɵɵComponentDeclaration<OrderTransactionsComponent, "order-transactions", never, { "order": { "alias": "order"; "required": true; }; }, {}, never, never, true, never>;
3636
+ }
3637
+
3638
+ declare class OrderTransactionDetailsModalComponent {
3639
+ private modalService;
3640
+ isOpen: WritableSignal<boolean> | null;
3641
+ transaction: Transaction | null;
3642
+ get modalIsOpen(): WritableSignal<boolean>;
3643
+ get selectedTransaction(): WritableSignal<Transaction | null>;
3644
+ protected get txColors(): Record<TransactionStatus, {
3645
+ text: string;
3646
+ bg: string;
3647
+ }>;
3648
+ protected get gatewayResponse(): string;
3649
+ onClose(): void;
3650
+ static ɵfac: i0.ɵɵFactoryDeclaration<OrderTransactionDetailsModalComponent, never>;
3651
+ static ɵcmp: i0.ɵɵComponentDeclaration<OrderTransactionDetailsModalComponent, "order-transaction-details-modal", never, { "isOpen": { "alias": "isOpen"; "required": false; }; "transaction": { "alias": "transaction"; "required": false; }; }, {}, never, never, true, never>;
3652
+ }
3653
+
3654
+ declare class TicketQrComponent implements OnInit, OnDestroy {
3655
+ private ticketQrService;
3656
+ ticketUuid: string;
3657
+ qrCanvas: ElementRef<HTMLCanvasElement>;
3658
+ loading: i0.WritableSignal<boolean>;
3659
+ error: i0.WritableSignal<boolean>;
3660
+ refreshing: i0.WritableSignal<boolean>;
3661
+ countdown: i0.WritableSignal<number>;
3662
+ private destroy$;
3663
+ private refreshTimeout;
3664
+ private countdownInterval;
3665
+ constructor(ticketQrService: TicketQrService);
3666
+ ngOnInit(): void;
3667
+ ngOnDestroy(): void;
3668
+ retry(): void;
3669
+ private clearTimers;
3670
+ private fetchAndRender;
3671
+ private scheduleRefresh;
3672
+ private startCountdown;
3673
+ private renderQr;
3674
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketQrComponent, never>;
3675
+ static ɵcmp: i0.ɵɵComponentDeclaration<TicketQrComponent, "performance-ticket-qr", never, { "ticketUuid": { "alias": "ticketUuid"; "required": true; }; }, {}, never, never, true, never>;
3676
+ }
3677
+
3678
+ declare class TicketQrModalComponent {
3679
+ private ticketQrModalService;
3680
+ constructor(ticketQrModalService: TicketQrModalService);
3681
+ get isOpen(): i0.WritableSignal<boolean>;
3682
+ get ticketUuid(): i0.WritableSignal<string | null>;
3683
+ get ticketDescription(): i0.WritableSignal<string | null>;
3684
+ onClose(): void;
3685
+ static ɵfac: i0.ɵɵFactoryDeclaration<TicketQrModalComponent, never>;
3686
+ static ɵcmp: i0.ɵɵComponentDeclaration<TicketQrModalComponent, "ticket-qr-modal", never, {}, {}, never, never, true, never>;
3687
+ }
3688
+
3689
+ export { ADMIN_API_ROUTES, ALERT_ICONS, AdminSelectComponent, AdminService, ApiService, AppAlertComponent, AppBadgeComponent, AppBreadcumbComponent, AppButtonComponent, AppLinkButtonComponent, AppModalComponent, AsyncSelectComponent, AuditInformationComponent, BASE_BUTTON_CLASSES, BASE_INPUT_CLASSES, BUTTON_SIZES_CLASSES, BUTTON_VARIANT_CLASSES, BaseModalService, 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, KONVA_SHAPE_MAPPINGS, LanguageSwitcherComponent, MinTodayValidator, MustMatchValidator, 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, PRICE_ZONES_API_ROUTES, PRODUCTS_API_ROUTES, PRODUCT_CATEGORIES_API_ROUTES, PRODUCT_TAGS_API_ROUTES, PRODUCT_TYPES_API_ROUTES, PaymentMethod, PerformanceBookingDataService, PerformanceCardComponent, PerformanceCardListComponent, PerformanceMultiSelectComponent, PerformanceSelectComponent, PerformanceService, PerformanceStatus, PerformanceStatusBadgeComponent, PerformanceStepperComponent, PerformanceTicketMapComponent, PerformanceTicketStatus, PerformancesListEventsService, PriceZoneEventService, PriceZoneFormModalService, PriceZoneSelectComponent, PriceZoneService, ProductCategoryService, ProductMultiSelectComponent, ProductSelectComponent, ProductService, ProductTagService, ProductTypeService, RoomMapElementOrientation, RoomMapElementType, SHOWS_API_ROUTES, SHOW_TYPE_COLORS, STATE_API_ENDPOINTS, SeatSelectionEmptySummaryComponent, SeatSelectionSummaryComponent, SeatSelectionSummaryItemComponent, SelectedDiscountCardType, ShowCardComponent, ShowCardSkeletonComponent, ShowMultiSelectComponent, ShowSelectComponent, ShowService, ShowType, ShowTypeBadgeComponent, ShowsFilterComponent, StateSelectComponent, StatesService, TICKERA_COMPONENTS_CONFIG, TICKET_ELEMENT_TYPES, 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, TicketMapPriceZonesComponent, TicketMapProductSelectionItemComponent, TicketMapTotalsComponent, TicketMapWidgetComponent, TicketMapWidgetHeaderComponent, TicketMapWrapperComponent, TicketMapZoomControlsComponent, TicketMapZoomService, TicketQrComponent, TicketQrModalComponent, TicketQrModalService, TicketQrService, TicketSelectionDetailsService, TicketSelectionDiscountService, TicketSelectionService, TicketSelectionTotalsService, ToastService, ToggleSwitchComponent, TransactionStatus, VENUES_API_ROUTES, ZonePriceItemComponent, ZonePriceListComponent, authInterceptor, drawChairIcon, drawHappyFace, drawRoundedRect, drawWheelchairIcon, findElementAtPosition, findTicketAtPosition, formatCitiesResponseToSelect, generateExitScene, generateHallwayScene, generateProductionAreaScene, generateSeatBlockScene, generateSeatBlockTicketScene, generateStageScene, generateStairScene, generateTableScene, generateTableTicketScene, generateUnavailableSpaceScene, generateZoneScene, getBrowserLanguage, getCustomerFullname, getItemTypeIcon, getOrderDiscount, getStoredLanguage, numberToLetter, parseJsonToFormDataAdvanced, processElementsToRenderData, provideTickeraComponents, resolveLanguage, setStoredLanguage, tintColor, transformImageToFile };
3690
+ export type { Admin, AdminsResponse, AsyncSelectConfig, Auditable, BadgeColor, BadgeSize, BreadcrumbStep, BreadcrumbTheme, CitiesResponse, City, CityResponse, CorporateBond, CorporateBondCode, CorporateBondResponse, CountriesResponse, Country, CountryResponse, Coupon, CouponResponse, Customer, CustomerResponse, CustomersResponse, DailyPerformanceHall, DailyPerformanceItem, DailyPerformancePriceZone, DailyPerformanceShow, DailyPerformanceVenue, DailyPerformancesResponse, DeleteConfirmationOpen, DragDropEvent, DynamicTableHeader, ElementPropertiesTab, ElementRenderData, FeedbackModalElement, FeedbackModalType, FetchCitiesParams, FetchDailyPerformancesParams, FetchProductCategoriesParams, FetchProductTagsParams, FetchProductTypesParams, FetchShowsParams, FileUploadConfig, FindAllPerformancesParams, FindAllPriceZoneParams, GiftBond, GiftBondImage, GiftBondPurchase, GiftBondPurchaseResponse, GiftBondPurchasesResponse, GiftBondResponse, GiftBondsResponse, Hall, HallFloor, HallFloorOption, KonvaShapeConfig, MercadoPagoPreference, ModalSize, NumerationConfig, Order, OrderBillingInfo, OrderDiscountInfo, OrderDiscountType, OrderItem, OrderResponse, OrdersResponse, Performance, PerformanceAvailableDay, PerformanceBookingDataResponse, PerformanceResponse, PerformanceTicket, PerformancesAvailableDaysResponse, PerformancesResponseInterface, 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, SelectOption, SelectedDiscountCard, Show, ShowCategoriesResponse, ShowCategory, ShowCategoryResponse, ShowGender, ShowGenderResponse, ShowGendersResponse, ShowImage, ShowResponse, ShowsResponseInterface, State, StateResponse, StatesResponse, TextFontSize, TickeraComponentsConfig, TicketMapSeatPosition, TicketMapTableChairPosition, TicketMapTooltipData, TicketMapZoneQuantityState, TicketMapZoomConfig, Transaction, UploadedFile, ValidateCorporateBondResponse, ValidateCouponResponse, ValidateGiftBondResponse, Venue, VenueImage };