tickera-angular-components 0.0.1-dev.23 → 0.0.1-dev.24

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.
@@ -752,23 +752,39 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImpo
752
752
  args: [{ providedIn: 'root' }]
753
753
  }] });
754
754
 
755
- class LoadingModalService {
756
- title = signal('', ...(ngDevMode ? [{ debugName: "title" }] : []));
755
+ class BaseModalService {
757
756
  isOpen = signal(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
758
757
  get modalIsOpen() {
759
758
  return this.isOpen;
760
759
  }
761
- open(title) {
762
- this.title.set(title ?? 'Cargando...');
760
+ open() {
763
761
  this.isOpen.set(true);
764
762
  }
765
763
  close() {
766
764
  this.isOpen.set(false);
767
765
  }
768
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: LoadingModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
769
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: LoadingModalService, providedIn: 'root' });
770
766
  }
771
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: LoadingModalService, decorators: [{
767
+
768
+ class FeedbackModalService extends BaseModalService {
769
+ type = signal('info', ...(ngDevMode ? [{ debugName: "type" }] : []));
770
+ title = signal('', ...(ngDevMode ? [{ debugName: "title" }] : []));
771
+ message = signal('', ...(ngDevMode ? [{ debugName: "message" }] : []));
772
+ openFeedback(type, title, message) {
773
+ this.type.set(type);
774
+ this.title.set(title);
775
+ this.message.set(message);
776
+ super.open();
777
+ }
778
+ close() {
779
+ this.type.set('info');
780
+ this.title.set('');
781
+ this.message.set('');
782
+ super.close();
783
+ }
784
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FeedbackModalService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
785
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FeedbackModalService, providedIn: 'root' });
786
+ }
787
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FeedbackModalService, decorators: [{
772
788
  type: Injectable,
773
789
  args: [{ providedIn: 'root' }]
774
790
  }] });
@@ -1542,19 +1558,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImpo
1542
1558
  args: [{ providedIn: 'root' }]
1543
1559
  }], ctorParameters: () => [{ type: ApiService }] });
1544
1560
 
1545
- class BaseModalService {
1546
- isOpen = signal(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
1547
- get modalIsOpen() {
1548
- return this.isOpen;
1549
- }
1550
- open() {
1551
- this.isOpen.set(true);
1552
- }
1553
- close() {
1554
- this.isOpen.set(false);
1555
- }
1556
- }
1557
-
1558
1561
  const authInterceptor = (req, next) => {
1559
1562
  const platformId = inject(PLATFORM_ID);
1560
1563
  const config = inject(TICKERA_COMPONENTS_CONFIG);
@@ -1697,6 +1700,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImpo
1697
1700
  class AppModalComponent {
1698
1701
  title = '';
1699
1702
  disableClose = false;
1703
+ showHeader = true;
1704
+ showCloseButton = true;
1705
+ showTitle = true;
1700
1706
  isOpen = signal(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
1701
1707
  size = 'md';
1702
1708
  closeModal = new EventEmitter();
@@ -1711,15 +1717,21 @@ class AppModalComponent {
1711
1717
  }
1712
1718
  }
1713
1719
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AppModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1714
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: AppModalComponent, isStandalone: true, selector: "app-modal", inputs: { title: "title", disableClose: "disableClose", isOpen: "isOpen", size: "size" }, outputs: { closeModal: "closeModal" }, host: { listeners: { "document:keydown.escape": "onKeydownEscape()" } }, ngImport: i0, template: "@if (isOpen()) {\n <div class=\"modal-overlay\">\n <div class=\"modal-backdrop\" (click)=\"onCloseModal()\"></div>\n\n <div class=\"modal-dialog\" [class]=\"'modal-dialog--' + size\">\n @if (!disableClose || !!title) {\n <div class=\"modal-header\">\n <h3 class=\"modal-title\">{{ title }}</h3>\n\n @if (!disableClose) {\n <button class=\"modal-close-button\" (click)=\"onCloseModal()\">&times;</button>\n }\n </div>\n }\n\n <div class=\"modal-body\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n}\n", styles: [".modal-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:50}.modal-backdrop{position:absolute;inset:0;background-color:#000;opacity:.5;filter:blur(4px)}.modal-dialog{position:relative;z-index:10;width:100%;background-color:#fff;border-radius:.5rem;max-height:100vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.modal-dialog--xs{max-width:20rem}.modal-dialog--sm{max-width:24rem}.modal-dialog--md{max-width:28rem}.modal-dialog--lg{max-width:32rem}.modal-dialog--xl{max-width:36rem}.modal-dialog--2xl{max-width:42rem}.modal-dialog--3xl{max-width:48rem}.modal-dialog--4xl{max-width:56rem}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;border-bottom:1px solid #e5e7eb}.modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.modal-close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#4b5563;padding:0;width:1.875rem;height:1.875rem;display:flex;align-items:center;justify-content:center}.modal-close-button:hover{color:#1f2937}.modal-body{padding:1.25rem}.modal-body p:first-of-type{margin-top:0}.modal-body p:last-of-type{margin-bottom:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], encapsulation: i0.ViewEncapsulation.None });
1720
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: AppModalComponent, isStandalone: true, selector: "app-modal", inputs: { title: "title", disableClose: "disableClose", showHeader: "showHeader", showCloseButton: "showCloseButton", showTitle: "showTitle", isOpen: "isOpen", size: "size" }, outputs: { closeModal: "closeModal" }, host: { listeners: { "document:keydown.escape": "onKeydownEscape()" } }, ngImport: i0, template: "@if (isOpen()) {\n <div class=\"modal-overlay\">\n <div class=\"modal-backdrop\" (click)=\"onCloseModal()\"></div>\n\n <div class=\"modal-dialog\" [class]=\"'modal-dialog--' + size\">\n @if (showHeader && (showTitle && !!title || showCloseButton && !disableClose)) {\n <div class=\"modal-header\">\n @if (showTitle && !!title) {\n <h3 class=\"modal-title\">{{ title }}</h3>\n }\n\n @if (showCloseButton && !disableClose) {\n <button class=\"modal-close-button\" (click)=\"onCloseModal()\">&times;</button>\n }\n </div>\n }\n\n <div class=\"modal-body\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n}\n", styles: [".modal-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:50}.modal-backdrop{position:absolute;inset:0;background-color:#000;opacity:.5;filter:blur(4px)}.modal-dialog{position:relative;z-index:10;width:100%;background-color:#fff;border-radius:.5rem;max-height:100vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.modal-dialog--xs{max-width:20rem}.modal-dialog--sm{max-width:24rem}.modal-dialog--md{max-width:28rem}.modal-dialog--lg{max-width:32rem}.modal-dialog--xl{max-width:36rem}.modal-dialog--2xl{max-width:42rem}.modal-dialog--3xl{max-width:48rem}.modal-dialog--4xl{max-width:56rem}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;border-bottom:1px solid #e5e7eb}.modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.modal-close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#4b5563;padding:0;width:1.875rem;height:1.875rem;display:flex;align-items:center;justify-content:center}.modal-close-button:hover{color:#1f2937}.modal-body{padding:1.25rem}.modal-body p:first-of-type{margin-top:0}.modal-body p:last-of-type{margin-bottom:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], encapsulation: i0.ViewEncapsulation.None });
1715
1721
  }
1716
1722
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: AppModalComponent, decorators: [{
1717
1723
  type: Component,
1718
- args: [{ selector: 'app-modal', standalone: true, imports: [CommonModule], encapsulation: ViewEncapsulation.None, template: "@if (isOpen()) {\n <div class=\"modal-overlay\">\n <div class=\"modal-backdrop\" (click)=\"onCloseModal()\"></div>\n\n <div class=\"modal-dialog\" [class]=\"'modal-dialog--' + size\">\n @if (!disableClose || !!title) {\n <div class=\"modal-header\">\n <h3 class=\"modal-title\">{{ title }}</h3>\n\n @if (!disableClose) {\n <button class=\"modal-close-button\" (click)=\"onCloseModal()\">&times;</button>\n }\n </div>\n }\n\n <div class=\"modal-body\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n}\n", styles: [".modal-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:50}.modal-backdrop{position:absolute;inset:0;background-color:#000;opacity:.5;filter:blur(4px)}.modal-dialog{position:relative;z-index:10;width:100%;background-color:#fff;border-radius:.5rem;max-height:100vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.modal-dialog--xs{max-width:20rem}.modal-dialog--sm{max-width:24rem}.modal-dialog--md{max-width:28rem}.modal-dialog--lg{max-width:32rem}.modal-dialog--xl{max-width:36rem}.modal-dialog--2xl{max-width:42rem}.modal-dialog--3xl{max-width:48rem}.modal-dialog--4xl{max-width:56rem}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;border-bottom:1px solid #e5e7eb}.modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.modal-close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#4b5563;padding:0;width:1.875rem;height:1.875rem;display:flex;align-items:center;justify-content:center}.modal-close-button:hover{color:#1f2937}.modal-body{padding:1.25rem}.modal-body p:first-of-type{margin-top:0}.modal-body p:last-of-type{margin-bottom:0}\n"] }]
1724
+ args: [{ selector: 'app-modal', standalone: true, imports: [CommonModule], encapsulation: ViewEncapsulation.None, template: "@if (isOpen()) {\n <div class=\"modal-overlay\">\n <div class=\"modal-backdrop\" (click)=\"onCloseModal()\"></div>\n\n <div class=\"modal-dialog\" [class]=\"'modal-dialog--' + size\">\n @if (showHeader && (showTitle && !!title || showCloseButton && !disableClose)) {\n <div class=\"modal-header\">\n @if (showTitle && !!title) {\n <h3 class=\"modal-title\">{{ title }}</h3>\n }\n\n @if (showCloseButton && !disableClose) {\n <button class=\"modal-close-button\" (click)=\"onCloseModal()\">&times;</button>\n }\n </div>\n }\n\n <div class=\"modal-body\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n}\n", styles: [".modal-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:50}.modal-backdrop{position:absolute;inset:0;background-color:#000;opacity:.5;filter:blur(4px)}.modal-dialog{position:relative;z-index:10;width:100%;background-color:#fff;border-radius:.5rem;max-height:100vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.modal-dialog--xs{max-width:20rem}.modal-dialog--sm{max-width:24rem}.modal-dialog--md{max-width:28rem}.modal-dialog--lg{max-width:32rem}.modal-dialog--xl{max-width:36rem}.modal-dialog--2xl{max-width:42rem}.modal-dialog--3xl{max-width:48rem}.modal-dialog--4xl{max-width:56rem}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;border-bottom:1px solid #e5e7eb}.modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.modal-close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#4b5563;padding:0;width:1.875rem;height:1.875rem;display:flex;align-items:center;justify-content:center}.modal-close-button:hover{color:#1f2937}.modal-body{padding:1.25rem}.modal-body p:first-of-type{margin-top:0}.modal-body p:last-of-type{margin-bottom:0}\n"] }]
1719
1725
  }], propDecorators: { title: [{
1720
1726
  type: Input
1721
1727
  }], disableClose: [{
1722
1728
  type: Input
1729
+ }], showHeader: [{
1730
+ type: Input
1731
+ }], showCloseButton: [{
1732
+ type: Input
1733
+ }], showTitle: [{
1734
+ type: Input
1723
1735
  }], isOpen: [{
1724
1736
  type: Input
1725
1737
  }], size: [{
@@ -1731,30 +1743,315 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImpo
1731
1743
  args: ['document:keydown.escape']
1732
1744
  }] } });
1733
1745
 
1734
- class LoadingmModalComponent {
1735
- loadingModalService;
1736
- constructor(loadingModalService) {
1737
- this.loadingModalService = loadingModalService;
1746
+ class LoadingFeedbackModalComponent {
1747
+ feedbackModalService;
1748
+ autoClose = false;
1749
+ autoCloseDuration = 3000;
1750
+ showHeader = false;
1751
+ showCloseButton = false;
1752
+ showTitle = false;
1753
+ autoCloseTimeout = null;
1754
+ constructor(feedbackModalService) {
1755
+ this.feedbackModalService = feedbackModalService;
1756
+ }
1757
+ get isOpen() {
1758
+ return this.feedbackModalService.isOpen;
1759
+ }
1760
+ get title() {
1761
+ return this.feedbackModalService.title;
1762
+ }
1763
+ get message() {
1764
+ return this.feedbackModalService.message;
1765
+ }
1766
+ ngOnChanges(changes) {
1767
+ if (this.autoClose && this.isOpen()) {
1768
+ this.scheduleAutoClose();
1769
+ }
1770
+ }
1771
+ ngOnDestroy() {
1772
+ this.clearAutoClose();
1773
+ }
1774
+ closeModal() {
1775
+ this.clearAutoClose();
1776
+ this.feedbackModalService.close();
1777
+ }
1778
+ scheduleAutoClose() {
1779
+ this.clearAutoClose();
1780
+ this.autoCloseTimeout = setTimeout(() => {
1781
+ this.feedbackModalService.close();
1782
+ }, this.autoCloseDuration);
1783
+ }
1784
+ clearAutoClose() {
1785
+ if (this.autoCloseTimeout) {
1786
+ clearTimeout(this.autoCloseTimeout);
1787
+ this.autoCloseTimeout = null;
1788
+ }
1789
+ }
1790
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: LoadingFeedbackModalComponent, deps: [{ token: FeedbackModalService }], target: i0.ɵɵFactoryTarget.Component });
1791
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: LoadingFeedbackModalComponent, isStandalone: true, selector: "loading-feedback-modal", inputs: { autoClose: "autoClose", autoCloseDuration: "autoCloseDuration", showHeader: "showHeader", showCloseButton: "showCloseButton", showTitle: "showTitle" }, usesOnChanges: true, ngImport: i0, template: "<app-modal\n [showHeader]=\"showHeader\"\n [showCloseButton]=\"showCloseButton\"\n [showTitle]=\"showTitle\"\n [isOpen]=\"isOpen\"\n size=\"sm\"\n (closeModal)=\"closeModal()\"\n>\n <div class=\"feedback-modal-body feedback-modal-body--loading\">\n <div class=\"feedback-modal-icon-wrapper\">\n <div class=\"feedback-modal-spinner\"></div>\n </div>\n <h3 class=\"feedback-modal-title\">{{ title() }}</h3>\n @if (message()) {\n <p class=\"feedback-modal-message\">{{ message() }}</p>\n }\n <app-button text=\"Cancelar\" variant=\"secondary\" (clicked)=\"closeModal()\" />\n </div>\n</app-modal>\n", styles: [".feedback-modal-body{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 0;text-align:center}.feedback-modal-icon-wrapper{display:flex;align-items:center;justify-content:center}.feedback-modal-spinner{height:3rem;width:3rem;border-radius:9999px;border:6px solid #fecaca;border-top-color:#ef4444;animation:feedback-modal-spin .8s linear infinite}.feedback-modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.feedback-modal-message{font-size:.875rem;color:#6b7280;margin:0}@keyframes feedback-modal-spin{to{transform:rotate(360deg)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AppModalComponent, selector: "app-modal", inputs: ["title", "disableClose", "showHeader", "showCloseButton", "showTitle", "isOpen", "size"], outputs: ["closeModal"] }, { kind: "component", type: AppButtonComponent, selector: "app-button", inputs: ["disabled", "loading", "type", "variant", "text", "size", "loadingText", "icon"], outputs: ["clicked"] }], encapsulation: i0.ViewEncapsulation.None });
1792
+ }
1793
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: LoadingFeedbackModalComponent, decorators: [{
1794
+ type: Component,
1795
+ args: [{ selector: 'loading-feedback-modal', standalone: true, imports: [CommonModule, AppModalComponent, AppButtonComponent], encapsulation: ViewEncapsulation.None, template: "<app-modal\n [showHeader]=\"showHeader\"\n [showCloseButton]=\"showCloseButton\"\n [showTitle]=\"showTitle\"\n [isOpen]=\"isOpen\"\n size=\"sm\"\n (closeModal)=\"closeModal()\"\n>\n <div class=\"feedback-modal-body feedback-modal-body--loading\">\n <div class=\"feedback-modal-icon-wrapper\">\n <div class=\"feedback-modal-spinner\"></div>\n </div>\n <h3 class=\"feedback-modal-title\">{{ title() }}</h3>\n @if (message()) {\n <p class=\"feedback-modal-message\">{{ message() }}</p>\n }\n <app-button text=\"Cancelar\" variant=\"secondary\" (clicked)=\"closeModal()\" />\n </div>\n</app-modal>\n", styles: [".feedback-modal-body{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 0;text-align:center}.feedback-modal-icon-wrapper{display:flex;align-items:center;justify-content:center}.feedback-modal-spinner{height:3rem;width:3rem;border-radius:9999px;border:6px solid #fecaca;border-top-color:#ef4444;animation:feedback-modal-spin .8s linear infinite}.feedback-modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.feedback-modal-message{font-size:.875rem;color:#6b7280;margin:0}@keyframes feedback-modal-spin{to{transform:rotate(360deg)}}\n"] }]
1796
+ }], ctorParameters: () => [{ type: FeedbackModalService }], propDecorators: { autoClose: [{
1797
+ type: Input
1798
+ }], autoCloseDuration: [{
1799
+ type: Input
1800
+ }], showHeader: [{
1801
+ type: Input
1802
+ }], showCloseButton: [{
1803
+ type: Input
1804
+ }], showTitle: [{
1805
+ type: Input
1806
+ }] } });
1807
+
1808
+ class SuccessFeedbackModalComponent {
1809
+ feedbackModalService;
1810
+ autoClose = false;
1811
+ autoCloseDuration = 3000;
1812
+ showHeader = false;
1813
+ showCloseButton = false;
1814
+ showTitle = false;
1815
+ autoCloseTimeout = null;
1816
+ constructor(feedbackModalService) {
1817
+ this.feedbackModalService = feedbackModalService;
1738
1818
  }
1739
1819
  get isOpen() {
1740
- return this.loadingModalService.modalIsOpen;
1820
+ return this.feedbackModalService.isOpen;
1741
1821
  }
1742
1822
  get title() {
1743
- return this.loadingModalService.title;
1823
+ return this.feedbackModalService.title;
1824
+ }
1825
+ get message() {
1826
+ return this.feedbackModalService.message;
1827
+ }
1828
+ ngOnChanges(changes) {
1829
+ if (this.autoClose && this.isOpen()) {
1830
+ this.scheduleAutoClose();
1831
+ }
1832
+ }
1833
+ ngOnDestroy() {
1834
+ this.clearAutoClose();
1744
1835
  }
1745
1836
  closeModal() {
1746
- this.loadingModalService.close();
1837
+ this.clearAutoClose();
1838
+ this.feedbackModalService.close();
1747
1839
  }
1748
- onCitySaved() {
1749
- this.loadingModalService.close();
1840
+ scheduleAutoClose() {
1841
+ this.clearAutoClose();
1842
+ this.autoCloseTimeout = setTimeout(() => {
1843
+ this.feedbackModalService.close();
1844
+ }, this.autoCloseDuration);
1750
1845
  }
1751
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: LoadingmModalComponent, deps: [{ token: LoadingModalService }], target: i0.ɵɵFactoryTarget.Component });
1752
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: LoadingmModalComponent, isStandalone: true, selector: "loading-modal", ngImport: i0, template: "<app-modal [disableClose]=\"true\" [isOpen]=\"isOpen\" (closeModal)=\"closeModal()\">\n <div class=\"loading-modal-body\">\n <div role=\"status\">\n <div class=\"loading-modal-spinner-wrapper\">\n <div class=\"loading-modal-spinner\"></div>\n </div>\n <span class=\"loading-modal-hidden\">Loading...</span>\n </div>\n\n <p class=\"loading-modal-title\">{{ title() }}</p>\n </div>\n</app-modal>\n", styles: [".loading-modal-body{display:flex;flex-direction:column;gap:1rem;padding:1.5rem 0;width:100%}.loading-modal-spinner-wrapper{display:flex;align-items:center;justify-content:center}.loading-modal-spinner{height:3.5rem;width:3.5rem;border-radius:9999px;border:8px solid #ef4444;border-top-color:transparent;animation:loading-modal-spin 1s linear infinite}.loading-modal-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.loading-modal-title{font-weight:700;font-size:1rem;margin:0;text-align:center}@keyframes loading-modal-spin{to{transform:rotate(360deg)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AppModalComponent, selector: "app-modal", inputs: ["title", "disableClose", "isOpen", "size"], outputs: ["closeModal"] }] });
1846
+ clearAutoClose() {
1847
+ if (this.autoCloseTimeout) {
1848
+ clearTimeout(this.autoCloseTimeout);
1849
+ this.autoCloseTimeout = null;
1850
+ }
1851
+ }
1852
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SuccessFeedbackModalComponent, deps: [{ token: FeedbackModalService }], target: i0.ɵɵFactoryTarget.Component });
1853
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: SuccessFeedbackModalComponent, isStandalone: true, selector: "success-feedback-modal", inputs: { autoClose: "autoClose", autoCloseDuration: "autoCloseDuration", showHeader: "showHeader", showCloseButton: "showCloseButton", showTitle: "showTitle" }, usesOnChanges: true, ngImport: i0, template: "<app-modal\n [showHeader]=\"showHeader\"\n [showCloseButton]=\"showCloseButton\"\n [showTitle]=\"showTitle\"\n [isOpen]=\"isOpen\"\n size=\"sm\"\n (closeModal)=\"closeModal()\"\n>\n <div class=\"feedback-modal-body feedback-modal-body--success\">\n <div class=\"feedback-modal-icon-wrapper\">\n <i class=\"ri-check-line feedback-modal-icon feedback-modal-icon--success\"></i>\n </div>\n <h3 class=\"feedback-modal-title\">{{ title() }}</h3>\n @if (message()) {\n <p class=\"feedback-modal-message\">{{ message() }}</p>\n }\n <app-button text=\"Cerrar\" variant=\"primary\" (clicked)=\"closeModal()\" />\n </div>\n</app-modal>\n", styles: [".feedback-modal-body{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 0;text-align:center}.feedback-modal-icon-wrapper{display:flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:9999px;background-color:#f0fdf4}.feedback-modal-icon{font-size:2.5rem}.feedback-modal-icon--success{color:#22c55e}.feedback-modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.feedback-modal-message{font-size:.875rem;color:#6b7280;margin:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AppModalComponent, selector: "app-modal", inputs: ["title", "disableClose", "showHeader", "showCloseButton", "showTitle", "isOpen", "size"], outputs: ["closeModal"] }, { kind: "component", type: AppButtonComponent, selector: "app-button", inputs: ["disabled", "loading", "type", "variant", "text", "size", "loadingText", "icon"], outputs: ["clicked"] }], encapsulation: i0.ViewEncapsulation.None });
1753
1854
  }
1754
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: LoadingmModalComponent, decorators: [{
1855
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SuccessFeedbackModalComponent, decorators: [{
1755
1856
  type: Component,
1756
- args: [{ selector: 'loading-modal', standalone: true, imports: [CommonModule, AppModalComponent], template: "<app-modal [disableClose]=\"true\" [isOpen]=\"isOpen\" (closeModal)=\"closeModal()\">\n <div class=\"loading-modal-body\">\n <div role=\"status\">\n <div class=\"loading-modal-spinner-wrapper\">\n <div class=\"loading-modal-spinner\"></div>\n </div>\n <span class=\"loading-modal-hidden\">Loading...</span>\n </div>\n\n <p class=\"loading-modal-title\">{{ title() }}</p>\n </div>\n</app-modal>\n", styles: [".loading-modal-body{display:flex;flex-direction:column;gap:1rem;padding:1.5rem 0;width:100%}.loading-modal-spinner-wrapper{display:flex;align-items:center;justify-content:center}.loading-modal-spinner{height:3.5rem;width:3.5rem;border-radius:9999px;border:8px solid #ef4444;border-top-color:transparent;animation:loading-modal-spin 1s linear infinite}.loading-modal-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.loading-modal-title{font-weight:700;font-size:1rem;margin:0;text-align:center}@keyframes loading-modal-spin{to{transform:rotate(360deg)}}\n"] }]
1757
- }], ctorParameters: () => [{ type: LoadingModalService }] });
1857
+ args: [{ selector: 'success-feedback-modal', standalone: true, imports: [CommonModule, AppModalComponent, AppButtonComponent], encapsulation: ViewEncapsulation.None, template: "<app-modal\n [showHeader]=\"showHeader\"\n [showCloseButton]=\"showCloseButton\"\n [showTitle]=\"showTitle\"\n [isOpen]=\"isOpen\"\n size=\"sm\"\n (closeModal)=\"closeModal()\"\n>\n <div class=\"feedback-modal-body feedback-modal-body--success\">\n <div class=\"feedback-modal-icon-wrapper\">\n <i class=\"ri-check-line feedback-modal-icon feedback-modal-icon--success\"></i>\n </div>\n <h3 class=\"feedback-modal-title\">{{ title() }}</h3>\n @if (message()) {\n <p class=\"feedback-modal-message\">{{ message() }}</p>\n }\n <app-button text=\"Cerrar\" variant=\"primary\" (clicked)=\"closeModal()\" />\n </div>\n</app-modal>\n", styles: [".feedback-modal-body{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 0;text-align:center}.feedback-modal-icon-wrapper{display:flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:9999px;background-color:#f0fdf4}.feedback-modal-icon{font-size:2.5rem}.feedback-modal-icon--success{color:#22c55e}.feedback-modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.feedback-modal-message{font-size:.875rem;color:#6b7280;margin:0}\n"] }]
1858
+ }], ctorParameters: () => [{ type: FeedbackModalService }], propDecorators: { autoClose: [{
1859
+ type: Input
1860
+ }], autoCloseDuration: [{
1861
+ type: Input
1862
+ }], showHeader: [{
1863
+ type: Input
1864
+ }], showCloseButton: [{
1865
+ type: Input
1866
+ }], showTitle: [{
1867
+ type: Input
1868
+ }] } });
1869
+
1870
+ class InfoFeedbackModalComponent {
1871
+ feedbackModalService;
1872
+ autoClose = false;
1873
+ autoCloseDuration = 3000;
1874
+ showHeader = false;
1875
+ showCloseButton = false;
1876
+ showTitle = false;
1877
+ autoCloseTimeout = null;
1878
+ constructor(feedbackModalService) {
1879
+ this.feedbackModalService = feedbackModalService;
1880
+ }
1881
+ get isOpen() {
1882
+ return this.feedbackModalService.isOpen;
1883
+ }
1884
+ get title() {
1885
+ return this.feedbackModalService.title;
1886
+ }
1887
+ get message() {
1888
+ return this.feedbackModalService.message;
1889
+ }
1890
+ ngOnChanges(changes) {
1891
+ if (this.autoClose && this.isOpen()) {
1892
+ this.scheduleAutoClose();
1893
+ }
1894
+ }
1895
+ ngOnDestroy() {
1896
+ this.clearAutoClose();
1897
+ }
1898
+ closeModal() {
1899
+ this.clearAutoClose();
1900
+ this.feedbackModalService.close();
1901
+ }
1902
+ scheduleAutoClose() {
1903
+ this.clearAutoClose();
1904
+ this.autoCloseTimeout = setTimeout(() => {
1905
+ this.feedbackModalService.close();
1906
+ }, this.autoCloseDuration);
1907
+ }
1908
+ clearAutoClose() {
1909
+ if (this.autoCloseTimeout) {
1910
+ clearTimeout(this.autoCloseTimeout);
1911
+ this.autoCloseTimeout = null;
1912
+ }
1913
+ }
1914
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: InfoFeedbackModalComponent, deps: [{ token: FeedbackModalService }], target: i0.ɵɵFactoryTarget.Component });
1915
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: InfoFeedbackModalComponent, isStandalone: true, selector: "info-feedback-modal", inputs: { autoClose: "autoClose", autoCloseDuration: "autoCloseDuration", showHeader: "showHeader", showCloseButton: "showCloseButton", showTitle: "showTitle" }, usesOnChanges: true, ngImport: i0, template: "<app-modal\n [showHeader]=\"showHeader\"\n [showCloseButton]=\"showCloseButton\"\n [showTitle]=\"showTitle\"\n [isOpen]=\"isOpen\"\n size=\"sm\"\n (closeModal)=\"closeModal()\"\n>\n <div class=\"feedback-modal-body feedback-modal-body--info\">\n <div class=\"feedback-modal-icon-wrapper\">\n <i class=\"ri-info-i feedback-modal-icon feedback-modal-icon--info\"></i>\n </div>\n <h3 class=\"feedback-modal-title\">{{ title() }}</h3>\n @if (message()) {\n <p class=\"feedback-modal-message\">{{ message() }}</p>\n }\n <app-button text=\"Cerrar\" variant=\"primary\" (clicked)=\"closeModal()\" />\n </div>\n</app-modal>\n", styles: [".feedback-modal-body{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 0;text-align:center}.feedback-modal-icon-wrapper{display:flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:9999px;background-color:#eff6ff}.feedback-modal-icon{font-size:2.5rem}.feedback-modal-icon--info{color:#3b82f6}.feedback-modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.feedback-modal-message{font-size:.875rem;color:#6b7280;margin:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AppModalComponent, selector: "app-modal", inputs: ["title", "disableClose", "showHeader", "showCloseButton", "showTitle", "isOpen", "size"], outputs: ["closeModal"] }, { kind: "component", type: AppButtonComponent, selector: "app-button", inputs: ["disabled", "loading", "type", "variant", "text", "size", "loadingText", "icon"], outputs: ["clicked"] }], encapsulation: i0.ViewEncapsulation.None });
1916
+ }
1917
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: InfoFeedbackModalComponent, decorators: [{
1918
+ type: Component,
1919
+ args: [{ selector: 'info-feedback-modal', standalone: true, imports: [CommonModule, AppModalComponent, AppButtonComponent], encapsulation: ViewEncapsulation.None, template: "<app-modal\n [showHeader]=\"showHeader\"\n [showCloseButton]=\"showCloseButton\"\n [showTitle]=\"showTitle\"\n [isOpen]=\"isOpen\"\n size=\"sm\"\n (closeModal)=\"closeModal()\"\n>\n <div class=\"feedback-modal-body feedback-modal-body--info\">\n <div class=\"feedback-modal-icon-wrapper\">\n <i class=\"ri-info-i feedback-modal-icon feedback-modal-icon--info\"></i>\n </div>\n <h3 class=\"feedback-modal-title\">{{ title() }}</h3>\n @if (message()) {\n <p class=\"feedback-modal-message\">{{ message() }}</p>\n }\n <app-button text=\"Cerrar\" variant=\"primary\" (clicked)=\"closeModal()\" />\n </div>\n</app-modal>\n", styles: [".feedback-modal-body{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 0;text-align:center}.feedback-modal-icon-wrapper{display:flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:9999px;background-color:#eff6ff}.feedback-modal-icon{font-size:2.5rem}.feedback-modal-icon--info{color:#3b82f6}.feedback-modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.feedback-modal-message{font-size:.875rem;color:#6b7280;margin:0}\n"] }]
1920
+ }], ctorParameters: () => [{ type: FeedbackModalService }], propDecorators: { autoClose: [{
1921
+ type: Input
1922
+ }], autoCloseDuration: [{
1923
+ type: Input
1924
+ }], showHeader: [{
1925
+ type: Input
1926
+ }], showCloseButton: [{
1927
+ type: Input
1928
+ }], showTitle: [{
1929
+ type: Input
1930
+ }] } });
1931
+
1932
+ class WarningFeedbackModalComponent {
1933
+ feedbackModalService;
1934
+ autoClose = false;
1935
+ autoCloseDuration = 3000;
1936
+ showHeader = false;
1937
+ showCloseButton = false;
1938
+ showTitle = false;
1939
+ autoCloseTimeout = null;
1940
+ constructor(feedbackModalService) {
1941
+ this.feedbackModalService = feedbackModalService;
1942
+ }
1943
+ get isOpen() {
1944
+ return this.feedbackModalService.isOpen;
1945
+ }
1946
+ get title() {
1947
+ return this.feedbackModalService.title;
1948
+ }
1949
+ get message() {
1950
+ return this.feedbackModalService.message;
1951
+ }
1952
+ ngOnChanges(changes) {
1953
+ if (this.autoClose && this.isOpen()) {
1954
+ this.scheduleAutoClose();
1955
+ }
1956
+ }
1957
+ ngOnDestroy() {
1958
+ this.clearAutoClose();
1959
+ }
1960
+ closeModal() {
1961
+ this.clearAutoClose();
1962
+ this.feedbackModalService.close();
1963
+ }
1964
+ scheduleAutoClose() {
1965
+ this.clearAutoClose();
1966
+ this.autoCloseTimeout = setTimeout(() => {
1967
+ this.feedbackModalService.close();
1968
+ }, this.autoCloseDuration);
1969
+ }
1970
+ clearAutoClose() {
1971
+ if (this.autoCloseTimeout) {
1972
+ clearTimeout(this.autoCloseTimeout);
1973
+ this.autoCloseTimeout = null;
1974
+ }
1975
+ }
1976
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: WarningFeedbackModalComponent, deps: [{ token: FeedbackModalService }], target: i0.ɵɵFactoryTarget.Component });
1977
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: WarningFeedbackModalComponent, isStandalone: true, selector: "warning-feedback-modal", inputs: { autoClose: "autoClose", autoCloseDuration: "autoCloseDuration", showHeader: "showHeader", showCloseButton: "showCloseButton", showTitle: "showTitle" }, usesOnChanges: true, ngImport: i0, template: "<app-modal\n [showHeader]=\"showHeader\"\n [showCloseButton]=\"showCloseButton\"\n [showTitle]=\"showTitle\"\n [isOpen]=\"isOpen\"\n size=\"sm\"\n (closeModal)=\"closeModal()\"\n>\n <div class=\"feedback-modal-body feedback-modal-body--warning\">\n <div class=\"feedback-modal-icon-wrapper\">\n <i class=\"ri-alert-line feedback-modal-icon feedback-modal-icon--warning\"></i>\n </div>\n <h3 class=\"feedback-modal-title\">{{ title() }}</h3>\n @if (message()) {\n <p class=\"feedback-modal-message\">{{ message() }}</p>\n }\n <app-button text=\"Cerrar\" variant=\"primary\" (clicked)=\"closeModal()\" />\n </div>\n</app-modal>\n", styles: [".feedback-modal-body{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 0;text-align:center}.feedback-modal-icon-wrapper{display:flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:9999px;background-color:#fefce8}.feedback-modal-icon{font-size:2.5rem}.feedback-modal-icon--warning{color:#eab308}.feedback-modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.feedback-modal-message{font-size:.875rem;color:#6b7280;margin:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AppModalComponent, selector: "app-modal", inputs: ["title", "disableClose", "showHeader", "showCloseButton", "showTitle", "isOpen", "size"], outputs: ["closeModal"] }, { kind: "component", type: AppButtonComponent, selector: "app-button", inputs: ["disabled", "loading", "type", "variant", "text", "size", "loadingText", "icon"], outputs: ["clicked"] }], encapsulation: i0.ViewEncapsulation.None });
1978
+ }
1979
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: WarningFeedbackModalComponent, decorators: [{
1980
+ type: Component,
1981
+ args: [{ selector: 'warning-feedback-modal', standalone: true, imports: [CommonModule, AppModalComponent, AppButtonComponent], encapsulation: ViewEncapsulation.None, template: "<app-modal\n [showHeader]=\"showHeader\"\n [showCloseButton]=\"showCloseButton\"\n [showTitle]=\"showTitle\"\n [isOpen]=\"isOpen\"\n size=\"sm\"\n (closeModal)=\"closeModal()\"\n>\n <div class=\"feedback-modal-body feedback-modal-body--warning\">\n <div class=\"feedback-modal-icon-wrapper\">\n <i class=\"ri-alert-line feedback-modal-icon feedback-modal-icon--warning\"></i>\n </div>\n <h3 class=\"feedback-modal-title\">{{ title() }}</h3>\n @if (message()) {\n <p class=\"feedback-modal-message\">{{ message() }}</p>\n }\n <app-button text=\"Cerrar\" variant=\"primary\" (clicked)=\"closeModal()\" />\n </div>\n</app-modal>\n", styles: [".feedback-modal-body{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 0;text-align:center}.feedback-modal-icon-wrapper{display:flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:9999px;background-color:#fefce8}.feedback-modal-icon{font-size:2.5rem}.feedback-modal-icon--warning{color:#eab308}.feedback-modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.feedback-modal-message{font-size:.875rem;color:#6b7280;margin:0}\n"] }]
1982
+ }], ctorParameters: () => [{ type: FeedbackModalService }], propDecorators: { autoClose: [{
1983
+ type: Input
1984
+ }], autoCloseDuration: [{
1985
+ type: Input
1986
+ }], showHeader: [{
1987
+ type: Input
1988
+ }], showCloseButton: [{
1989
+ type: Input
1990
+ }], showTitle: [{
1991
+ type: Input
1992
+ }] } });
1993
+
1994
+ class ErrorFeedbackModalComponent {
1995
+ feedbackModalService;
1996
+ autoClose = false;
1997
+ autoCloseDuration = 3000;
1998
+ showHeader = false;
1999
+ showCloseButton = false;
2000
+ showTitle = false;
2001
+ autoCloseTimeout = null;
2002
+ constructor(feedbackModalService) {
2003
+ this.feedbackModalService = feedbackModalService;
2004
+ }
2005
+ get isOpen() {
2006
+ return this.feedbackModalService.isOpen;
2007
+ }
2008
+ get title() {
2009
+ return this.feedbackModalService.title;
2010
+ }
2011
+ get message() {
2012
+ return this.feedbackModalService.message;
2013
+ }
2014
+ ngOnChanges(changes) {
2015
+ if (this.autoClose && this.isOpen()) {
2016
+ this.scheduleAutoClose();
2017
+ }
2018
+ }
2019
+ ngOnDestroy() {
2020
+ this.clearAutoClose();
2021
+ }
2022
+ closeModal() {
2023
+ this.clearAutoClose();
2024
+ this.feedbackModalService.close();
2025
+ }
2026
+ scheduleAutoClose() {
2027
+ this.clearAutoClose();
2028
+ this.autoCloseTimeout = setTimeout(() => {
2029
+ this.feedbackModalService.close();
2030
+ }, this.autoCloseDuration);
2031
+ }
2032
+ clearAutoClose() {
2033
+ if (this.autoCloseTimeout) {
2034
+ clearTimeout(this.autoCloseTimeout);
2035
+ this.autoCloseTimeout = null;
2036
+ }
2037
+ }
2038
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ErrorFeedbackModalComponent, deps: [{ token: FeedbackModalService }], target: i0.ɵɵFactoryTarget.Component });
2039
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: ErrorFeedbackModalComponent, isStandalone: true, selector: "error-feedback-modal", inputs: { autoClose: "autoClose", autoCloseDuration: "autoCloseDuration", showHeader: "showHeader", showCloseButton: "showCloseButton", showTitle: "showTitle" }, usesOnChanges: true, ngImport: i0, template: "<app-modal\n [showHeader]=\"showHeader\"\n [showCloseButton]=\"showCloseButton\"\n [showTitle]=\"showTitle\"\n [isOpen]=\"isOpen\"\n size=\"sm\"\n (closeModal)=\"closeModal()\"\n>\n <div class=\"feedback-modal-body feedback-modal-body--error\">\n <div class=\"feedback-modal-icon-wrapper\">\n <i class=\"ri-error-warning-line feedback-modal-icon feedback-modal-icon--error\"></i>\n </div>\n <h3 class=\"feedback-modal-title\">{{ title() }}</h3>\n @if (message()) {\n <p class=\"feedback-modal-message\">{{ message() }}</p>\n }\n <app-button text=\"Cerrar\" variant=\"primary\" (clicked)=\"closeModal()\" />\n </div>\n</app-modal>\n", styles: [".feedback-modal-body{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 0;text-align:center}.feedback-modal-icon-wrapper{display:flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:9999px;background-color:#fef2f2}.feedback-modal-icon{font-size:2.5rem}.feedback-modal-icon--error{color:#ef4444}.feedback-modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.feedback-modal-message{font-size:.875rem;color:#6b7280;margin:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AppModalComponent, selector: "app-modal", inputs: ["title", "disableClose", "showHeader", "showCloseButton", "showTitle", "isOpen", "size"], outputs: ["closeModal"] }, { kind: "component", type: AppButtonComponent, selector: "app-button", inputs: ["disabled", "loading", "type", "variant", "text", "size", "loadingText", "icon"], outputs: ["clicked"] }], encapsulation: i0.ViewEncapsulation.None });
2040
+ }
2041
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ErrorFeedbackModalComponent, decorators: [{
2042
+ type: Component,
2043
+ args: [{ selector: 'error-feedback-modal', standalone: true, imports: [CommonModule, AppModalComponent, AppButtonComponent], encapsulation: ViewEncapsulation.None, template: "<app-modal\n [showHeader]=\"showHeader\"\n [showCloseButton]=\"showCloseButton\"\n [showTitle]=\"showTitle\"\n [isOpen]=\"isOpen\"\n size=\"sm\"\n (closeModal)=\"closeModal()\"\n>\n <div class=\"feedback-modal-body feedback-modal-body--error\">\n <div class=\"feedback-modal-icon-wrapper\">\n <i class=\"ri-error-warning-line feedback-modal-icon feedback-modal-icon--error\"></i>\n </div>\n <h3 class=\"feedback-modal-title\">{{ title() }}</h3>\n @if (message()) {\n <p class=\"feedback-modal-message\">{{ message() }}</p>\n }\n <app-button text=\"Cerrar\" variant=\"primary\" (clicked)=\"closeModal()\" />\n </div>\n</app-modal>\n", styles: [".feedback-modal-body{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 0;text-align:center}.feedback-modal-icon-wrapper{display:flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:9999px;background-color:#fef2f2}.feedback-modal-icon{font-size:2.5rem}.feedback-modal-icon--error{color:#ef4444}.feedback-modal-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.feedback-modal-message{font-size:.875rem;color:#6b7280;margin:0}\n"] }]
2044
+ }], ctorParameters: () => [{ type: FeedbackModalService }], propDecorators: { autoClose: [{
2045
+ type: Input
2046
+ }], autoCloseDuration: [{
2047
+ type: Input
2048
+ }], showHeader: [{
2049
+ type: Input
2050
+ }], showCloseButton: [{
2051
+ type: Input
2052
+ }], showTitle: [{
2053
+ type: Input
2054
+ }] } });
1758
2055
 
1759
2056
  class FormInputComponent {
1760
2057
  ngControl;
@@ -1925,7 +2222,7 @@ class DeleteConfirmationComponent {
1925
2222
  this.deleteConfirmationService.close();
1926
2223
  }
1927
2224
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DeleteConfirmationComponent, deps: [{ token: i1$1.FormBuilder }, { token: DeleteConfirmationService }, { token: i2$1.TranslocoService }], target: i0.ɵɵFactoryTarget.Component });
1928
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: DeleteConfirmationComponent, isStandalone: true, selector: "delete-confirmation", ngImport: i0, template: "@if (isOpen()) {\n <app-modal [title]=\"title\" [isOpen]=\"isOpen\" (closeModal)=\"onCloseModal()\">\n <form\n [formGroup]=\"deleteConfirmationForm\"\n method=\"POST\"\n class=\"delete-confirmation-content\"\n (ngSubmit)=\"onConfirmDelete()\"\n >\n <app-alert\n type=\"warning\"\n [text]=\"'deleteConfirmation.warning' | transloco\"\n size=\"sm\"\n [closeable]=\"false\"\n />\n\n <p class=\"delete-confirmation-instructions\">\n {{ 'deleteConfirmation.instructions' | transloco }}\n\n <span class=\"delete-confirmation-highlight\">\n {{ confirmationText }}\n </span>\n </p>\n\n <form-input\n name=\"confirmationText\"\n type=\"text\"\n class=\"delete-confirmation-field\"\n [required]=\"true\"\n [autocomplete]=\"false\"\n formControlName=\"confirmationText\"\n [placeholder]=\"\n transloco.translate('deleteConfirmation.placeholder', { text: confirmationText })\n \"\n />\n\n <div class=\"delete-confirmation-actions\">\n <app-button\n variant=\"tertiary\"\n [text]=\"'deleteConfirmation.cancel' | transloco\"\n (click)=\"onCloseModal()\"\n size=\"sm\"\n />\n\n <app-button\n type=\"submit\"\n variant=\"primary\"\n [text]=\"'deleteConfirmation.delete' | transloco\"\n [disabled]=\"!isConfirmationValid\"\n size=\"sm\"\n />\n </div>\n </form>\n </app-modal>\n}\n", styles: [".delete-confirmation-content{display:flex;flex-direction:column;gap:1rem;animation:slideUp .3s ease-out}.delete-confirmation-instructions{font-size:.75rem;color:#4b5563;margin:0}@media(prefers-color-scheme:dark){.delete-confirmation-instructions{color:#9ca3af}}.delete-confirmation-highlight{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;margin-top:.25rem;background-color:#e5e7eb;color:#dc2626;font-weight:600;font-size:.875rem;border-radius:.375rem}@media(prefers-color-scheme:dark){.delete-confirmation-highlight{background-color:#374151}}.delete-confirmation-field{flex:1}.delete-confirmation-actions{display:flex;gap:.75rem}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "component", type: AppButtonComponent, selector: "app-button", inputs: ["disabled", "loading", "type", "variant", "text", "size", "loadingText", "icon"], outputs: ["clicked"] }, { kind: "component", type: FormInputComponent, selector: "form-input", inputs: ["label", "type", "name", "id", "placeholder", "required", "readonly", "minlength", "min", "step", "pattern", "fieldGroupClass", "autocomplete"] }, { kind: "component", type: AppModalComponent, selector: "app-modal", inputs: ["title", "disableClose", "isOpen", "size"], outputs: ["closeModal"] }, { kind: "component", type: AppAlertComponent, selector: "app-alert", inputs: ["type", "text", "closeable", "size"] }, { kind: "pipe", type: i2$1.TranslocoPipe, name: "transloco" }], encapsulation: i0.ViewEncapsulation.None });
2225
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: DeleteConfirmationComponent, isStandalone: true, selector: "delete-confirmation", ngImport: i0, template: "@if (isOpen()) {\n <app-modal [title]=\"title\" [isOpen]=\"isOpen\" (closeModal)=\"onCloseModal()\">\n <form\n [formGroup]=\"deleteConfirmationForm\"\n method=\"POST\"\n class=\"delete-confirmation-content\"\n (ngSubmit)=\"onConfirmDelete()\"\n >\n <app-alert\n type=\"warning\"\n [text]=\"'deleteConfirmation.warning' | transloco\"\n size=\"sm\"\n [closeable]=\"false\"\n />\n\n <p class=\"delete-confirmation-instructions\">\n {{ 'deleteConfirmation.instructions' | transloco }}\n\n <span class=\"delete-confirmation-highlight\">\n {{ confirmationText }}\n </span>\n </p>\n\n <form-input\n name=\"confirmationText\"\n type=\"text\"\n class=\"delete-confirmation-field\"\n [required]=\"true\"\n [autocomplete]=\"false\"\n formControlName=\"confirmationText\"\n [placeholder]=\"\n transloco.translate('deleteConfirmation.placeholder', { text: confirmationText })\n \"\n />\n\n <div class=\"delete-confirmation-actions\">\n <app-button\n variant=\"tertiary\"\n [text]=\"'deleteConfirmation.cancel' | transloco\"\n (click)=\"onCloseModal()\"\n size=\"sm\"\n />\n\n <app-button\n type=\"submit\"\n variant=\"primary\"\n [text]=\"'deleteConfirmation.delete' | transloco\"\n [disabled]=\"!isConfirmationValid\"\n size=\"sm\"\n />\n </div>\n </form>\n </app-modal>\n}\n", styles: [".delete-confirmation-content{display:flex;flex-direction:column;gap:1rem;animation:slideUp .3s ease-out}.delete-confirmation-instructions{font-size:.75rem;color:#4b5563;margin:0}@media(prefers-color-scheme:dark){.delete-confirmation-instructions{color:#9ca3af}}.delete-confirmation-highlight{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;margin-top:.25rem;background-color:#e5e7eb;color:#dc2626;font-weight:600;font-size:.875rem;border-radius:.375rem}@media(prefers-color-scheme:dark){.delete-confirmation-highlight{background-color:#374151}}.delete-confirmation-field{flex:1}.delete-confirmation-actions{display:flex;gap:.75rem}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "component", type: AppButtonComponent, selector: "app-button", inputs: ["disabled", "loading", "type", "variant", "text", "size", "loadingText", "icon"], outputs: ["clicked"] }, { kind: "component", type: FormInputComponent, selector: "form-input", inputs: ["label", "type", "name", "id", "placeholder", "required", "readonly", "minlength", "min", "step", "pattern", "fieldGroupClass", "autocomplete"] }, { kind: "component", type: AppModalComponent, selector: "app-modal", inputs: ["title", "disableClose", "showHeader", "showCloseButton", "showTitle", "isOpen", "size"], outputs: ["closeModal"] }, { kind: "component", type: AppAlertComponent, selector: "app-alert", inputs: ["type", "text", "closeable", "size"] }, { kind: "pipe", type: i2$1.TranslocoPipe, name: "transloco" }], encapsulation: i0.ViewEncapsulation.None });
1929
2226
  }
1930
2227
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DeleteConfirmationComponent, decorators: [{
1931
2228
  type: Component,
@@ -3360,7 +3657,7 @@ class ChangePasswordFormComponent {
3360
3657
  });
3361
3658
  }
3362
3659
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChangePasswordFormComponent, deps: [{ token: i1$1.FormBuilder }, { token: ChangePasswordFormService }, { token: CustomerService }, { token: AdminService }, { token: ToastService }, { token: i2$1.TranslocoService }], target: i0.ɵɵFactoryTarget.Component });
3363
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: ChangePasswordFormComponent, isStandalone: true, selector: "change-password-form", providers: [AdminService, CustomerService], ngImport: i0, template: "@if (isOpen()) {\n <app-modal\n [title]=\"'changePassword.title' | transloco\"\n [isOpen]=\"isOpen\"\n (closeModal)=\"onCloseModal()\"\n >\n <form\n [formGroup]=\"changePasswordForm\"\n method=\"POST\"\n class=\"change-password-form-body\"\n (ngSubmit)=\"onConfirmDelete()\"\n >\n <form-input\n [label]=\"'changePassword.newPasswordLabel' | transloco\"\n [placeholder]=\"'changePassword.newPasswordPlaceholder' | transloco\"\n name=\"password\"\n type=\"password\"\n class=\"change-password-form-field\"\n [required]=\"true\"\n [autocomplete]=\"false\"\n formControlName=\"password\"\n />\n\n <form-input\n [label]=\"'changePassword.confirmPasswordLabel' | transloco\"\n [placeholder]=\"'changePassword.confirmPasswordPlaceholder' | transloco\"\n name=\"confirm_password\"\n type=\"password\"\n class=\"change-password-form-field\"\n [required]=\"true\"\n [autocomplete]=\"false\"\n formControlName=\"confirm_password\"\n />\n\n <div class=\"change-password-form-actions\">\n <app-button\n variant=\"tertiary\"\n [text]=\"'changePassword.cancel' | transloco\"\n (click)=\"onCloseModal()\"\n size=\"sm\"\n />\n\n <app-button\n [disabled]=\"loading() || changePasswordForm.invalid || changePasswordForm.pristine\"\n [loading]=\"loading()\"\n type=\"submit\"\n variant=\"primary\"\n [text]=\"'changePassword.save' | transloco\"\n [loadingText]=\"'changePassword.saving' | transloco\"\n size=\"sm\"\n />\n </div>\n </form>\n </app-modal>\n}\n", styles: [".change-password-form-body{display:flex;flex-direction:column;gap:1rem}.change-password-form-field{flex:1}.change-password-form-actions{display:flex;gap:.75rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "component", type: AppButtonComponent, selector: "app-button", inputs: ["disabled", "loading", "type", "variant", "text", "size", "loadingText", "icon"], outputs: ["clicked"] }, { kind: "component", type: FormInputComponent, selector: "form-input", inputs: ["label", "type", "name", "id", "placeholder", "required", "readonly", "minlength", "min", "step", "pattern", "fieldGroupClass", "autocomplete"] }, { kind: "component", type: AppModalComponent, selector: "app-modal", inputs: ["title", "disableClose", "isOpen", "size"], outputs: ["closeModal"] }, { kind: "pipe", type: i2$1.TranslocoPipe, name: "transloco" }], encapsulation: i0.ViewEncapsulation.None });
3660
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: ChangePasswordFormComponent, isStandalone: true, selector: "change-password-form", providers: [AdminService, CustomerService], ngImport: i0, template: "@if (isOpen()) {\n <app-modal\n [title]=\"'changePassword.title' | transloco\"\n [isOpen]=\"isOpen\"\n (closeModal)=\"onCloseModal()\"\n >\n <form\n [formGroup]=\"changePasswordForm\"\n method=\"POST\"\n class=\"change-password-form-body\"\n (ngSubmit)=\"onConfirmDelete()\"\n >\n <form-input\n [label]=\"'changePassword.newPasswordLabel' | transloco\"\n [placeholder]=\"'changePassword.newPasswordPlaceholder' | transloco\"\n name=\"password\"\n type=\"password\"\n class=\"change-password-form-field\"\n [required]=\"true\"\n [autocomplete]=\"false\"\n formControlName=\"password\"\n />\n\n <form-input\n [label]=\"'changePassword.confirmPasswordLabel' | transloco\"\n [placeholder]=\"'changePassword.confirmPasswordPlaceholder' | transloco\"\n name=\"confirm_password\"\n type=\"password\"\n class=\"change-password-form-field\"\n [required]=\"true\"\n [autocomplete]=\"false\"\n formControlName=\"confirm_password\"\n />\n\n <div class=\"change-password-form-actions\">\n <app-button\n variant=\"tertiary\"\n [text]=\"'changePassword.cancel' | transloco\"\n (click)=\"onCloseModal()\"\n size=\"sm\"\n />\n\n <app-button\n [disabled]=\"loading() || changePasswordForm.invalid || changePasswordForm.pristine\"\n [loading]=\"loading()\"\n type=\"submit\"\n variant=\"primary\"\n [text]=\"'changePassword.save' | transloco\"\n [loadingText]=\"'changePassword.saving' | transloco\"\n size=\"sm\"\n />\n </div>\n </form>\n </app-modal>\n}\n", styles: [".change-password-form-body{display:flex;flex-direction:column;gap:1rem}.change-password-form-field{flex:1}.change-password-form-actions{display:flex;gap:.75rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "component", type: AppButtonComponent, selector: "app-button", inputs: ["disabled", "loading", "type", "variant", "text", "size", "loadingText", "icon"], outputs: ["clicked"] }, { kind: "component", type: FormInputComponent, selector: "form-input", inputs: ["label", "type", "name", "id", "placeholder", "required", "readonly", "minlength", "min", "step", "pattern", "fieldGroupClass", "autocomplete"] }, { kind: "component", type: AppModalComponent, selector: "app-modal", inputs: ["title", "disableClose", "showHeader", "showCloseButton", "showTitle", "isOpen", "size"], outputs: ["closeModal"] }, { kind: "pipe", type: i2$1.TranslocoPipe, name: "transloco" }], encapsulation: i0.ViewEncapsulation.None });
3364
3661
  }
3365
3662
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChangePasswordFormComponent, decorators: [{
3366
3663
  type: Component,
@@ -5142,5 +5439,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImpo
5142
5439
  * Generated bundle index. Do not edit.
5143
5440
  */
5144
5441
 
5145
- export { ADMIN_API_ROUTES, ALERT_ICONS, AdminSelectComponent, AdminService, ApiService, AppAlertComponent, 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, CorporateBondStatus, CountrySelectComponent, CountryService, CouponApplicability, CouponDiscountType, CouponStatus, CustomerSelectComponent, CustomerService, DateInputComponent, DateService, DaySelectorGridComponent, DeleteConfirmationComponent, DeleteConfirmationService, DynamicTableComponent, ERROR_INPUT_CLASSES, EndDateGreaterThanStartValidator, FORM_ERROR_MESSAGES, FileType, FileUploadComponent, FileUploadPreviewComponent, FormEditorComponent, FormInputComponent, FormSelectComponent, FormTextareaComponent, GiftBondStatus, LanguageSwitcherComponent, LoadingModalService, LoadingmModalComponent, MinTodayValidator, MustMatchValidator, OrderItemType, OrderStatus, PERFORMANCES_API_ROUTES, PRICE_ZONES_API_ROUTES, PRODUCTS_API_ROUTES, PRODUCT_CATEGORIES_API_ROUTES, PRODUCT_TAGS_API_ROUTES, PRODUCT_TYPES_API_ROUTES, PerformanceCardComponent, PerformanceCardListComponent, PerformanceMultiSelectComponent, PerformanceSelectComponent, PerformanceService, PerformanceStatus, PerformanceStepperComponent, PerformanceTicketStatus, PerformancesListEventsService, PriceZoneEventService, PriceZoneFormModalService, PriceZoneSelectComponent, PriceZoneService, ProductCategoryService, ProductMultiSelectComponent, ProductSelectComponent, ProductService, ProductTagService, ProductTypeService, RoomMapElementOrientation, RoomMapElementType, SHOWS_API_ROUTES, STATE_API_ENDPOINTS, ShowMultiSelectComponent, ShowSelectComponent, ShowService, ShowsFilterComponent, StateSelectComponent, StatesService, TICKERA_COMPONENTS_CONFIG, TickeraTranslocoLoader, ToastService, ToggleSwitchComponent, VENUES_API_ROUTES, ZonePriceItemComponent, ZonePriceListComponent, authInterceptor, formatCitiesResponseToSelect, getBrowserLanguage, getCustomerFullname, getStoredLanguage, parseJsonToFormDataAdvanced, provideTickeraComponents, resolveLanguage, setStoredLanguage, transformImageToFile };
5442
+ export { ADMIN_API_ROUTES, ALERT_ICONS, AdminSelectComponent, AdminService, ApiService, AppAlertComponent, 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, CorporateBondStatus, CountrySelectComponent, CountryService, CouponApplicability, CouponDiscountType, CouponStatus, CustomerSelectComponent, CustomerService, DateInputComponent, DateService, DaySelectorGridComponent, DeleteConfirmationComponent, DeleteConfirmationService, DynamicTableComponent, ERROR_INPUT_CLASSES, EndDateGreaterThanStartValidator, ErrorFeedbackModalComponent, FORM_ERROR_MESSAGES, FeedbackModalService, FileType, FileUploadComponent, FileUploadPreviewComponent, FormEditorComponent, FormInputComponent, FormSelectComponent, FormTextareaComponent, GiftBondStatus, InfoFeedbackModalComponent, LanguageSwitcherComponent, LoadingFeedbackModalComponent, MinTodayValidator, MustMatchValidator, OrderItemType, OrderStatus, PERFORMANCES_API_ROUTES, PRICE_ZONES_API_ROUTES, PRODUCTS_API_ROUTES, PRODUCT_CATEGORIES_API_ROUTES, PRODUCT_TAGS_API_ROUTES, PRODUCT_TYPES_API_ROUTES, PerformanceCardComponent, PerformanceCardListComponent, PerformanceMultiSelectComponent, PerformanceSelectComponent, PerformanceService, PerformanceStatus, PerformanceStepperComponent, PerformanceTicketStatus, PerformancesListEventsService, PriceZoneEventService, PriceZoneFormModalService, PriceZoneSelectComponent, PriceZoneService, ProductCategoryService, ProductMultiSelectComponent, ProductSelectComponent, ProductService, ProductTagService, ProductTypeService, RoomMapElementOrientation, RoomMapElementType, SHOWS_API_ROUTES, STATE_API_ENDPOINTS, ShowMultiSelectComponent, ShowSelectComponent, ShowService, ShowsFilterComponent, StateSelectComponent, StatesService, SuccessFeedbackModalComponent, TICKERA_COMPONENTS_CONFIG, TickeraTranslocoLoader, ToastService, ToggleSwitchComponent, VENUES_API_ROUTES, WarningFeedbackModalComponent, ZonePriceItemComponent, ZonePriceListComponent, authInterceptor, formatCitiesResponseToSelect, getBrowserLanguage, getCustomerFullname, getStoredLanguage, parseJsonToFormDataAdvanced, provideTickeraComponents, resolveLanguage, setStoredLanguage, transformImageToFile };
5146
5443
  //# sourceMappingURL=tickera-angular-components.mjs.map