oip-common 0.6.2 → 0.6.3

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.
@@ -1,76 +1,76 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, inject, signal, computed, effect, DestroyRef, ChangeDetectorRef, Component, Input, InjectionToken, PLATFORM_ID, ViewChild, HostBinding, EventEmitter, Output, Renderer2, SecurityContext, ChangeDetectionStrategy, Injector, EnvironmentInjector, ViewContainerRef, makeEnvironmentProviders, importProvidersFrom } from '@angular/core';
2
+ import { Injectable, inject, signal, computed, effect, isDevMode, DestroyRef, ChangeDetectorRef, Component, Input, InjectionToken, PLATFORM_ID, ViewChild, HostBinding, EventEmitter, Output, Renderer2, SecurityContext, ChangeDetectionStrategy, Injector, EnvironmentInjector, ViewContainerRef, makeEnvironmentProviders, importProvidersFrom } from '@angular/core';
3
3
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
4
  import { Subject, BehaviorSubject, of, tap, shareReplay, ReplaySubject, firstValueFrom, from, filter as filter$1 } from 'rxjs';
5
- import * as i2$2 from 'primeng/api';
5
+ import * as i2$1 from 'primeng/api';
6
6
  import { MessageService, ConfirmationService, PrimeIcons, SharedModule } from 'primeng/api';
7
7
  import { HttpErrorResponse, HttpClient as HttpClient$1, provideHttpClient, withInterceptors, withFetch } from '@angular/common/http';
8
- import * as i2$5 from '@ngx-translate/core';
8
+ import * as i1$7 from '@ngx-translate/core';
9
9
  import { TranslateService, TranslatePipe, TranslateModule, TranslateLoader } from '@ngx-translate/core';
10
- import * as i1$2 from '@angular/router';
10
+ import * as i1$5 from '@angular/router';
11
11
  import { Router, ActivatedRoute, RouterModule, NavigationEnd, RouterLinkActive, RouterLink } from '@angular/router';
12
12
  import { tap as tap$1, catchError, filter, distinctUntilChanged, switchMap, map, take } from 'rxjs/operators';
13
13
  import { Title, DomSanitizer } from '@angular/platform-browser';
14
14
  import { PrimeNG } from 'primeng/config';
15
- import * as i2 from 'primeng/multiselect';
15
+ import * as i1 from 'primeng/multiselect';
16
16
  import { MultiSelectModule } from 'primeng/multiselect';
17
- import * as i3 from 'primeng/tooltip';
17
+ import * as i2 from 'primeng/tooltip';
18
18
  import { TooltipModule, Tooltip } from 'primeng/tooltip';
19
- import * as i1$1 from 'primeng/button';
19
+ import * as i1$2 from 'primeng/button';
20
20
  import { ButtonModule, Button } from 'primeng/button';
21
- import * as i1 from '@angular/forms';
21
+ import * as i1$1 from '@angular/forms';
22
22
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
23
- import * as i2$1 from '@angular/common';
23
+ import * as i1$3 from '@angular/common';
24
24
  import { isPlatformBrowser, CommonModule, NgComponentOutlet, NgClass, DatePipe, PathLocationStrategy, LocationStrategy } from '@angular/common';
25
- import * as i3$2 from 'primeng/styleclass';
25
+ import * as i3$3 from 'primeng/styleclass';
26
26
  import { StyleClassModule } from 'primeng/styleclass';
27
27
  import { updatePreset, updateSurfacePalette, $t, definePreset } from '@primeng/themes';
28
28
  import Aura from '@primeng/themes/aura';
29
29
  import Lara from '@primeng/themes/lara';
30
30
  import Nora from '@primeng/themes/nora';
31
- import * as i4 from 'primeng/selectbutton';
31
+ import * as i3 from 'primeng/selectbutton';
32
32
  import { SelectButtonModule } from 'primeng/selectbutton';
33
33
  import { Tabs, TabList, Tab } from 'primeng/tabs';
34
- import * as i3$3 from 'primeng/avatar';
34
+ import * as i2$2 from 'primeng/avatar';
35
35
  import { AvatarModule } from 'primeng/avatar';
36
36
  import { ConfirmDialog } from 'primeng/confirmdialog';
37
- import * as i2$3 from 'primeng/badge';
37
+ import * as i1$4 from 'primeng/badge';
38
38
  import { BadgeModule } from 'primeng/badge';
39
- import * as i4$1 from 'primeng/paginator';
39
+ import * as i3$1 from 'primeng/paginator';
40
40
  import { PaginatorModule } from 'primeng/paginator';
41
- import * as i8 from 'primeng/popover';
41
+ import * as i7 from 'primeng/popover';
42
42
  import { Popover, PopoverModule } from 'primeng/popover';
43
- import * as i5 from 'primeng/progressspinner';
43
+ import * as i4 from 'primeng/progressspinner';
44
44
  import { ProgressSpinnerModule } from 'primeng/progressspinner';
45
- import * as i10 from 'primeng/tag';
45
+ import * as i9 from 'primeng/tag';
46
46
  import { Tag, TagModule } from 'primeng/tag';
47
47
  import * as signalR from '@microsoft/signalr';
48
- import * as i3$1 from 'primeng/menu';
48
+ import * as i3$2 from 'primeng/menu';
49
49
  import { MenuModule } from 'primeng/menu';
50
- import * as i1$3 from 'primeng/contextmenu';
50
+ import * as i1$6 from 'primeng/contextmenu';
51
51
  import { ContextMenuModule, ContextMenu } from 'primeng/contextmenu';
52
52
  import * as i3$4 from 'primeng/dialog';
53
53
  import { DialogModule } from 'primeng/dialog';
54
- import * as i4$2 from 'primeng/inputtext';
54
+ import * as i4$1 from 'primeng/inputtext';
55
55
  import { InputTextModule, InputText } from 'primeng/inputtext';
56
- import * as i2$4 from 'primeng/ripple';
56
+ import * as i2$3 from 'primeng/ripple';
57
57
  import { RippleModule } from 'primeng/ripple';
58
- import * as i5$1 from 'primeng/select';
58
+ import * as i5 from 'primeng/select';
59
59
  import { SelectModule, Select } from 'primeng/select';
60
- import * as i2$6 from 'primeng/fileupload';
60
+ import * as i1$8 from 'primeng/fileupload';
61
61
  import { FileUploadModule } from 'primeng/fileupload';
62
62
  import { ImageModule } from 'primeng/image';
63
- import * as i1$4 from 'primeng/table';
63
+ import * as i1$9 from 'primeng/table';
64
64
  import { TableModule } from 'primeng/table';
65
- import * as i2$7 from 'primeng/toggleswitch';
65
+ import * as i2$4 from 'primeng/toggleswitch';
66
66
  import { ToggleSwitchModule } from 'primeng/toggleswitch';
67
67
  import { TextareaModule, Textarea } from 'primeng/textarea';
68
- import * as i5$2 from 'primeng/toolbar';
68
+ import * as i5$1 from 'primeng/toolbar';
69
69
  import { ToolbarModule } from 'primeng/toolbar';
70
- import * as i6 from 'primeng/card';
70
+ import * as i5$2 from 'primeng/card';
71
71
  import { CardModule } from 'primeng/card';
72
72
  import { DividerModule } from 'primeng/divider';
73
- import * as i7 from 'primeng/panel';
73
+ import * as i6 from 'primeng/panel';
74
74
  import { PanelModule } from 'primeng/panel';
75
75
  import { loadRemoteModule } from '@angular-architects/module-federation';
76
76
  import { primitive } from '@primeng/themes/aura/base';
@@ -110,10 +110,10 @@ class TopBarService {
110
110
  const result = activeTopBarItem === undefined ? id === 'content' : activeTopBarItem.id == id;
111
111
  return result;
112
112
  }
113
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TopBarService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
114
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TopBarService, providedIn: 'root' }); }
113
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: TopBarService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
114
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: TopBarService, providedIn: 'root' }); }
115
115
  }
116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TopBarService, decorators: [{
116
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: TopBarService, decorators: [{
117
117
  type: Injectable,
118
118
  args: [{
119
119
  providedIn: 'root'
@@ -246,10 +246,10 @@ class MsgService {
246
246
  life: life
247
247
  });
248
248
  }
249
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MsgService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
250
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MsgService, providedIn: 'root' }); }
249
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MsgService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
250
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MsgService, providedIn: 'root' }); }
251
251
  }
252
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MsgService, decorators: [{
252
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MsgService, decorators: [{
253
253
  type: Injectable,
254
254
  args: [{ providedIn: 'root' }]
255
255
  }] });
@@ -271,10 +271,10 @@ class AppTitleService {
271
271
  this.title.setTitle(newTitle);
272
272
  this.titleSubject.next(newTitle);
273
273
  }
274
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppTitleService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
275
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppTitleService, providedIn: 'root' }); }
274
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppTitleService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
275
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppTitleService, providedIn: 'root' }); }
276
276
  }
277
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppTitleService, decorators: [{
277
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppTitleService, decorators: [{
278
278
  type: Injectable,
279
279
  args: [{ providedIn: 'root' }]
280
280
  }] });
@@ -530,10 +530,10 @@ class LayoutService {
530
530
  reset() {
531
531
  this.resetSource.next(true);
532
532
  }
533
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LayoutService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
534
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LayoutService, providedIn: 'root' }); }
533
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: LayoutService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
534
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: LayoutService, providedIn: 'root' }); }
535
535
  }
536
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LayoutService, decorators: [{
536
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: LayoutService, decorators: [{
537
537
  type: Injectable,
538
538
  args: [{ providedIn: 'root' }]
539
539
  }], ctorParameters: () => [] });
@@ -545,75 +545,9 @@ var msgService$1 = {
545
545
  error: "Error",
546
546
  secondary: "Secondary"
547
547
  };
548
- var configComponent$1 = {
549
- profile: "Profile",
550
- photo: "Photo",
551
- usePhoto256x256Pixel: "Use a 256x256 pixel photo",
552
- localization: "Language",
553
- selectLanguage: "Select language"
554
- };
555
- var menuComponent$1 = {
556
- all: "All",
557
- "new": "Add"
558
- };
559
- var menuItemEditDialogComponent$1 = {
560
- header: "Edit menu item",
561
- parentLabel: "Parent item",
562
- label: "Label",
563
- module: "Module",
564
- selectModule: "Select module",
565
- icon: "Icon",
566
- cancel: "Cancel",
567
- save: "Save",
568
- security: "Read access"
569
- };
570
- var menuItemCreateDialogComponent$1 = {
571
- header: "New menu item",
572
- parentLabel: "Parent item",
573
- label: "Label",
574
- module: "Module",
575
- selectModule: "Select module",
576
- searchModule: "Search module",
577
- icon: "Icon",
578
- cancel: "Cancel",
579
- save: "Save"
580
- };
581
- var unauthorized$1 = {
582
- welcomeToOip: "Welcome to OIP!",
583
- signInToContinue: "Sign in to continue",
584
- signIn: "Sign In"
585
- };
586
- var menuItemComponent$1 = {
587
- "new": "Add",
588
- edit: "Edit",
589
- "delete": "Delete",
590
- deleteItemConfirmHeader: "Delete",
591
- deleteItemConfirmMessage: "Are you sure you want to delete the item?",
592
- deleteItemSuccessMessage: "Deleted successfully",
593
- deleteItemConfirmRejectButtonPropsLabel: "Cancel",
594
- deleteItemConfirmAcceptButtonPropsLabel: "Delete",
595
- moveUp: "Move up",
596
- moveDown: "Move down"
597
- };
598
- var topbar$1 = {
599
- logout: "Logout",
600
- logoutConfirmHeader: "Logout",
601
- logoutConfirmMessage: "Are you sure you want to logout?",
602
- logoutConfirmCancel: "Cancel",
603
- logoutConfirmAccept: "Logout",
604
- profile: "Profile",
605
- applications: "Applications"
606
- };
607
548
  var primeng$1 = "";
608
- var en$c = {
549
+ var en$h = {
609
550
  msgService: msgService$1,
610
- configComponent: configComponent$1,
611
- menuComponent: menuComponent$1,
612
- menuItemEditDialogComponent: menuItemEditDialogComponent$1,
613
- menuItemCreateDialogComponent: menuItemCreateDialogComponent$1,
614
- unauthorized: unauthorized$1,
615
- menuItemComponent: menuItemComponent$1,
616
- topbar: topbar$1,
617
551
  primeng: primeng$1
618
552
  };
619
553
 
@@ -624,65 +558,6 @@ var msgService = {
624
558
  error: "Ошибка",
625
559
  secondary: "Вспомогательный"
626
560
  };
627
- var configComponent = {
628
- profile: "Профиль",
629
- photo: "Фото",
630
- usePhoto256x256Pixel: "Используйте фото 256х256 пикселей",
631
- localization: "Язык",
632
- selectLanguage: "Выберите язык"
633
- };
634
- var menuComponent = {
635
- all: "Все",
636
- "new": "Добавить"
637
- };
638
- var menuItemEditDialogComponent = {
639
- header: "Редактировать элемент меню",
640
- parentLabel: "Родительский узел",
641
- label: "Имя",
642
- module: "Модуль",
643
- selectModule: "Выберите модуль",
644
- icon: "Иконка",
645
- cancel: "Отмена",
646
- save: "Сохранить",
647
- security: "Доступ на чтение"
648
- };
649
- var menuItemCreateDialogComponent = {
650
- header: "Новый элемент меню",
651
- parentLabel: "Родительский узел",
652
- label: "Имя",
653
- module: "Модуль",
654
- selectModule: "Выберите модуль",
655
- searchModule: "Поиск модуля",
656
- icon: "Иконка",
657
- cancel: "Отмена",
658
- save: "Сохранить"
659
- };
660
- var unauthorized = {
661
- welcomeToOip: "Добро пожаловать в OIP!",
662
- signInToContinue: "Войдите чтобы продолжить",
663
- signIn: "Войти"
664
- };
665
- var menuItemComponent = {
666
- "new": "Добавить",
667
- edit: "Редактировать",
668
- "delete": "Удалить",
669
- deleteItemConfirmHeader: "Удаление",
670
- deleteItemConfirmMessage: "Вы уверены что хотите удалить элемент?",
671
- deleteItemSuccessMessage: "Успешно удалено",
672
- deleteItemConfirmRejectButtonPropsLabel: "Отмена",
673
- deleteItemConfirmAcceptButtonPropsLabel: "Удалить",
674
- moveUp: "Вверх",
675
- moveDown: "Вниз"
676
- };
677
- var topbar = {
678
- logout: "Выход",
679
- logoutConfirmHeader: "Выход",
680
- logoutConfirmMessage: "Вы уверены, что хотите выйти?",
681
- logoutConfirmCancel: "Отмена",
682
- logoutConfirmAccept: "Выйти",
683
- profile: "Профиль",
684
- applications: "Приложения"
685
- };
686
561
  var primeng = {
687
562
  accept: "Да",
688
563
  addRule: "Добавить правило",
@@ -875,15 +750,8 @@ var primeng = {
875
750
  zoomOut: "Уменьшить"
876
751
  }
877
752
  };
878
- var ru$c = {
753
+ var ru$h = {
879
754
  msgService: msgService,
880
- configComponent: configComponent,
881
- menuComponent: menuComponent,
882
- menuItemEditDialogComponent: menuItemEditDialogComponent,
883
- menuItemCreateDialogComponent: menuItemCreateDialogComponent,
884
- unauthorized: unauthorized,
885
- menuItemComponent: menuItemComponent,
886
- topbar: topbar,
887
755
  primeng: primeng
888
756
  };
889
757
 
@@ -891,7 +759,7 @@ var ru$c = {
891
759
  * Global dictionaries shared by all components. They are bundled with the library,
892
760
  * so the application never requests `assets/i18n/{lang}.json`.
893
761
  */
894
- const globalTranslations = { en: en$c, ru: ru$c };
762
+ const globalTranslations = { en: en$h, ru: ru$h };
895
763
  /**
896
764
  * Service for managing translation loading in the application
897
765
  */
@@ -987,8 +855,9 @@ class L10nService {
987
855
  return this.translateService.get(key);
988
856
  }
989
857
  /**
990
- * Internal method to load translations from JSON files
991
- * @param component - Component or translation namespace
858
+ * Internal method to merge a namespace's statically-registered translations
859
+ * (see <c>registerTranslations</c>) into the active language dictionary.
860
+ * @param component - Translation namespace
992
861
  * @param lang - Language code to load translations for
993
862
  */
994
863
  loadTranslations(component, lang) {
@@ -996,33 +865,17 @@ class L10nService {
996
865
  if (this.loadedTranslations.has(key)) {
997
866
  return of(null);
998
867
  }
999
- // Translations bundled with the component - no HTTP request needed.
1000
868
  const staticTranslations = L10nService.staticTranslations.get(component);
1001
- if (staticTranslations) {
1002
- const translations = staticTranslations[lang];
1003
- if (translations) {
1004
- this.mergeTranslation(lang, translations);
1005
- }
869
+ if (!staticTranslations) {
870
+ console.error(`No translations registered for namespace "${component}".`);
1006
871
  return of(null);
1007
872
  }
1008
- const loading = this.loadingTranslations.get(key);
1009
- if (loading) {
1010
- return loading;
1011
- }
1012
- const request = this.httpClient.get(`./assets/i18n/${component}.${lang}.json`).pipe(tap((translations) => {
873
+ const translations = staticTranslations[lang];
874
+ if (translations) {
1013
875
  this.mergeTranslation(lang, translations);
1014
- this.loadedTranslations.add(key);
1015
- this.loadingTranslations.delete(key);
1016
- }), shareReplay(1));
1017
- this.loadingTranslations.set(key, request);
1018
- request.subscribe({
1019
- error: (e) => {
1020
- this.loadingTranslations.delete(key);
1021
- console.error(`No translations found for ${component}.${lang}.json`);
1022
- console.error(e);
1023
- }
1024
- });
1025
- return request;
876
+ }
877
+ this.loadedTranslations.add(key);
878
+ return of(null);
1026
879
  }
1027
880
  /**
1028
881
  * Merges a translation dictionary into the dictionary of the given language
@@ -1055,10 +908,10 @@ class L10nService {
1055
908
  instant(key, interpolateParams) {
1056
909
  return this.translateService.instant(key, interpolateParams);
1057
910
  }
1058
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: L10nService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1059
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: L10nService, providedIn: 'root' }); }
911
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: L10nService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
912
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: L10nService, providedIn: 'root' }); }
1060
913
  }
1061
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: L10nService, decorators: [{
914
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: L10nService, decorators: [{
1062
915
  type: Injectable,
1063
916
  args: [{ providedIn: 'root' }]
1064
917
  }], ctorParameters: () => [] });
@@ -1222,10 +1075,10 @@ class BffSecurityService {
1222
1075
  const baseUrl = document.getElementsByTagName('base')[0].href;
1223
1076
  return baseUrl.endsWith('/') ? baseUrl : `${baseUrl}/`;
1224
1077
  }
1225
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: BffSecurityService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1226
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: BffSecurityService }); }
1078
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: BffSecurityService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1079
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: BffSecurityService }); }
1227
1080
  }
1228
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: BffSecurityService, decorators: [{
1081
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: BffSecurityService, decorators: [{
1229
1082
  type: Injectable
1230
1083
  }] });
1231
1084
 
@@ -1444,21 +1297,94 @@ class HttpClient {
1444
1297
  ? { headers: { [csrfToken.headerName]: csrfToken.token } }
1445
1298
  : {};
1446
1299
  }
1447
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: HttpClient, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1448
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: HttpClient, providedIn: "root" }); }
1300
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: HttpClient, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1301
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: HttpClient, providedIn: "root" }); }
1449
1302
  }
1450
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: HttpClient, decorators: [{
1303
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: HttpClient, decorators: [{
1451
1304
  type: Injectable,
1452
1305
  args: [{ providedIn: "root" }]
1453
1306
  }] });
1454
1307
 
1308
+ /**
1309
+ * Registers a component's co-located translations and merges them into the
1310
+ * active language. The namespace is derived from the JSON's own root key,
1311
+ * so callers never repeat it as a string literal.
1312
+ *
1313
+ * Must be called from an injection context - as a field initializer, or as
1314
+ * the first statement in a constructor - the same requirement as `inject()`
1315
+ * itself, which it uses internally.
1316
+ *
1317
+ * ```ts
1318
+ * import en from './l10n/menu.en.json';
1319
+ * import ru from './l10n/menu.ru.json';
1320
+ *
1321
+ * @Component({ ... })
1322
+ * export class MenuComponent {
1323
+ * private readonly translations = provideTranslations({ en, ru });
1324
+ * }
1325
+ * ```
1326
+ */
1327
+ function provideTranslations(byLang) {
1328
+ if (isDevMode()) {
1329
+ warnOnKeyMismatch(byLang);
1330
+ }
1331
+ L10nService.registerTranslations(byLang);
1332
+ const namespace = namespaceOf(byLang);
1333
+ return namespace ? inject(L10nService).get(namespace) : of({});
1334
+ }
1335
+ function namespaceOf(byLang) {
1336
+ const firstLangDict = Object.values(byLang)[0];
1337
+ return firstLangDict ? Object.keys(firstLangDict)[0] : undefined;
1338
+ }
1339
+ /**
1340
+ * Dev-only sanity check: warns when the language dictionaries in `byLang`
1341
+ * don't all declare the same set of keys - a common source of a translated
1342
+ * string silently falling back to its raw key in one language only.
1343
+ */
1344
+ function warnOnKeyMismatch(byLang) {
1345
+ const langs = Object.keys(byLang);
1346
+ if (langs.length < 2) {
1347
+ return;
1348
+ }
1349
+ const keysByLang = new Map(langs.map((lang) => [lang, collectKeyPaths(byLang[lang])]));
1350
+ const [baseLang, ...otherLangs] = langs;
1351
+ const baseKeys = keysByLang.get(baseLang);
1352
+ const namespace = namespaceOf(byLang) ?? '(unknown namespace)';
1353
+ for (const lang of otherLangs) {
1354
+ const langKeys = keysByLang.get(lang);
1355
+ const missing = [...baseKeys].filter((key) => !langKeys.has(key));
1356
+ const extra = [...langKeys].filter((key) => !baseKeys.has(key));
1357
+ if (missing.length > 0) {
1358
+ console.warn(`[provideTranslations] "${namespace}": "${lang}" is missing keys present in "${baseLang}": ${missing.join(', ')}`);
1359
+ }
1360
+ if (extra.length > 0) {
1361
+ console.warn(`[provideTranslations] "${namespace}": "${lang}" has extra keys not present in "${baseLang}": ${extra.join(', ')}`);
1362
+ }
1363
+ }
1364
+ }
1365
+ /**
1366
+ * Recursively collects dot-joined paths to every leaf value in an object,
1367
+ * e.g. { a: { b: 'x' } } -> ['a.b'].
1368
+ */
1369
+ function collectKeyPaths(value, prefix = '', paths = new Set()) {
1370
+ if (value !== null && typeof value === 'object' && !Array.isArray(value)) {
1371
+ for (const [key, child] of Object.entries(value)) {
1372
+ collectKeyPaths(child, prefix ? `${prefix}.${key}` : key, paths);
1373
+ }
1374
+ }
1375
+ else {
1376
+ paths.add(prefix);
1377
+ }
1378
+ return paths;
1379
+ }
1380
+
1455
1381
  var baseComponent$1 = {
1456
1382
  content: "Content",
1457
1383
  settings: "Settings",
1458
1384
  security: "Security",
1459
1385
  success: "Saved successfully"
1460
1386
  };
1461
- var en$b = {
1387
+ var en$g = {
1462
1388
  baseComponent: baseComponent$1
1463
1389
  };
1464
1390
 
@@ -1468,11 +1394,10 @@ var baseComponent = {
1468
1394
  security: "Безопасность",
1469
1395
  success: "Сохранено"
1470
1396
  };
1471
- var ru$b = {
1397
+ var ru$g = {
1472
1398
  baseComponent: baseComponent
1473
1399
  };
1474
1400
 
1475
- L10nService.registerTranslations({ en: en$b, ru: ru$b });
1476
1401
  class BaseModuleComponent {
1477
1402
  static { this.readRight = 'read'; }
1478
1403
  static { this.editRight = 'edit'; }
@@ -1604,6 +1529,7 @@ class BaseModuleComponent {
1604
1529
  * @type {Subject<TLocalStoreSettings>}
1605
1530
  */
1606
1531
  this.localSettingsUpdate = new Subject();
1532
+ this.baseTranslations = provideTranslations({ en: en$g, ru: ru$g });
1607
1533
  this.l10nService = inject(L10nService);
1608
1534
  this.canRead = false;
1609
1535
  this.canEdit = false;
@@ -1622,9 +1548,6 @@ class BaseModuleComponent {
1622
1548
  { id: 'settings', icon: 'pi-cog', caption: '' },
1623
1549
  { id: 'security', icon: 'pi-lock', caption: '' }
1624
1550
  ];
1625
- // Must run before the route subscription below asks L10nService for the translations.
1626
- L10nService.registerTranslations(this.constructor.translations);
1627
- this.l10nService.get('baseComponent');
1628
1551
  effect(() => {
1629
1552
  const config = this.localSettings();
1630
1553
  if (config) {
@@ -1633,9 +1556,6 @@ class BaseModuleComponent {
1633
1556
  });
1634
1557
  this.subscriptions.push(this.route.url.subscribe((url) => {
1635
1558
  this.controller = url[0].path;
1636
- // The route path is the translation namespace, register it before asking for translations.
1637
- L10nService.registerTranslations(this.constructor.translations, this.controller);
1638
- this.l10n$ = this.l10nService.get(this.controller);
1639
1559
  }));
1640
1560
  this.subscriptions.push(this.route.paramMap.subscribe((params) => {
1641
1561
  const routeId = params.get('id');
@@ -1848,10 +1768,10 @@ class BaseModuleComponent {
1848
1768
  });
1849
1769
  await this.moduleInstanceReloadPromise;
1850
1770
  }
1851
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: BaseModuleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1852
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: BaseModuleComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: '', isInline: true }); }
1771
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: BaseModuleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1772
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.24", type: BaseModuleComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: '', isInline: true }); }
1853
1773
  }
1854
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: BaseModuleComponent, decorators: [{
1774
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: BaseModuleComponent, decorators: [{
1855
1775
  type: Component,
1856
1776
  args: [{ standalone: true, template: '' }]
1857
1777
  }], ctorParameters: () => [] });
@@ -1896,10 +1816,10 @@ class SecurityApi extends HttpClient {
1896
1816
  ...params,
1897
1817
  });
1898
1818
  }
1899
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: SecurityApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1900
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: SecurityApi }); }
1819
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: SecurityApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1820
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: SecurityApi }); }
1901
1821
  }
1902
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: SecurityApi, decorators: [{
1822
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: SecurityApi, decorators: [{
1903
1823
  type: Injectable
1904
1824
  }] });
1905
1825
 
@@ -1909,7 +1829,7 @@ var securityComponent$1 = {
1909
1829
  savedSecurity: "Security settings saved",
1910
1830
  selectRoles: "Select roles"
1911
1831
  };
1912
- var en$a = {
1832
+ var en$f = {
1913
1833
  securityComponent: securityComponent$1
1914
1834
  };
1915
1835
 
@@ -1919,13 +1839,13 @@ var securityComponent = {
1919
1839
  savedSecurity: "Настройки сохранены",
1920
1840
  selectRoles: "Выберите роли"
1921
1841
  };
1922
- var ru$a = {
1842
+ var ru$f = {
1923
1843
  securityComponent: securityComponent
1924
1844
  };
1925
1845
 
1926
- L10nService.registerTranslations({ en: en$a, ru: ru$a });
1927
1846
  class SecurityComponent {
1928
- constructor(l10nService) {
1847
+ constructor() {
1848
+ this.translations = provideTranslations({ en: en$f, ru: ru$f });
1929
1849
  this.msgService = inject(MsgService);
1930
1850
  this.translateService = inject(TranslateService);
1931
1851
  this.httpClient = inject(HttpClient);
@@ -1933,7 +1853,6 @@ class SecurityComponent {
1933
1853
  this.securityLoadToken = 0;
1934
1854
  this.securityData = [];
1935
1855
  this.roles = [];
1936
- l10nService.get('securityComponent');
1937
1856
  }
1938
1857
  ngOnDestroy() {
1939
1858
  // on destroy
@@ -2007,8 +1926,8 @@ class SecurityComponent {
2007
1926
  type: ContentType.Json
2008
1927
  });
2009
1928
  }
2010
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: SecurityComponent, deps: [{ token: L10nService }], target: i0.ɵɵFactoryTarget.Component }); }
2011
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: SecurityComponent, isStandalone: true, selector: "security", inputs: { id: "id", controller: "controller" }, usesOnChanges: true, ngImport: i0, template: `
1929
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: SecurityComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1930
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: SecurityComponent, isStandalone: true, selector: "security", inputs: { id: "id", controller: "controller" }, usesOnChanges: true, ngImport: i0, template: `
2012
1931
  <div class="flex flex-col md:flex-row gap-8">
2013
1932
  <div class="md:w-1/2">
2014
1933
  <div class="card flex flex-col gap-4">
@@ -2040,9 +1959,9 @@ class SecurityComponent {
2040
1959
  </div>
2041
1960
  </div>
2042
1961
  </div>
2043
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i2.MultiSelect, selector: "p-multiSelect, p-multiselect, p-multi-select", inputs: ["id", "ariaLabel", "styleClass", "panelStyle", "panelStyleClass", "inputId", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "dataKey", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "chipIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "placeholder", "options", "filterValue", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus", "highlightOnSelect", "size", "variant", "fluid", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
1962
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i1.MultiSelect, selector: "p-multiSelect, p-multiselect, p-multi-select", inputs: ["id", "ariaLabel", "styleClass", "panelStyle", "panelStyleClass", "inputId", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "dataKey", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "chipIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "placeholder", "options", "filterValue", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus", "highlightOnSelect", "size", "variant", "fluid", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i2.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
2044
1963
  }
2045
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: SecurityComponent, decorators: [{
1964
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: SecurityComponent, decorators: [{
2046
1965
  type: Component,
2047
1966
  args: [{
2048
1967
  selector: 'security',
@@ -2082,7 +2001,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
2082
2001
  imports: [MultiSelectModule, TooltipModule, FormsModule, ButtonModule, TranslatePipe],
2083
2002
  standalone: true
2084
2003
  }]
2085
- }], ctorParameters: () => [{ type: L10nService }], propDecorators: { id: [{
2004
+ }], propDecorators: { id: [{
2086
2005
  type: Input
2087
2006
  }], controller: [{
2088
2007
  type: Input
@@ -2095,7 +2014,7 @@ const APP_THEME_PRESETS_MERGE_MODE = new InjectionToken('APP_THEME_PRESETS_MERGE
2095
2014
  factory: () => 'mergeWithDefaults'
2096
2015
  });
2097
2016
 
2098
- var en$9 = {
2017
+ var en$e = {
2099
2018
  "app-configurator": {
2100
2019
  primary: "Primary",
2101
2020
  surface: "Surface",
@@ -2106,7 +2025,7 @@ var en$9 = {
2106
2025
  }
2107
2026
  };
2108
2027
 
2109
- var ru$9 = {
2028
+ var ru$e = {
2110
2029
  "app-configurator": {
2111
2030
  primary: "Основной",
2112
2031
  surface: "Фон",
@@ -2117,7 +2036,6 @@ var ru$9 = {
2117
2036
  }
2118
2037
  };
2119
2038
 
2120
- L10nService.registerTranslations({ en: en$9, ru: ru$9 });
2121
2039
  const DEFAULT_THEME_PRESETS = [
2122
2040
  { id: 'Aura', label: 'Aura', preset: Aura },
2123
2041
  { id: 'Lara', label: 'Lara', preset: Lara },
@@ -2142,7 +2060,8 @@ const PRIMARY_COLORS = [
2142
2060
  'rose'
2143
2061
  ];
2144
2062
  class AppConfiguratorComponent {
2145
- constructor(l10nService) {
2063
+ constructor() {
2064
+ this.translations = provideTranslations({ en: en$e, ru: ru$e });
2146
2065
  this.router = inject(Router);
2147
2066
  this.config = inject(PrimeNG);
2148
2067
  this.layoutService = inject(LayoutService);
@@ -2312,7 +2231,6 @@ class AppConfiguratorComponent {
2312
2231
  const activeThemePreset = this.getThemeById(this.layoutService.layoutConfig().preset);
2313
2232
  return this.getSurfaceColorOptions(activeThemePreset);
2314
2233
  }, ...(ngDevMode ? [{ debugName: "surfaceColors" }] : []));
2315
- l10nService.get('app-configurator');
2316
2234
  }
2317
2235
  ngOnInit() {
2318
2236
  if (isPlatformBrowser(this.platformId)) {
@@ -2549,8 +2467,8 @@ class AppConfiguratorComponent {
2549
2467
  menuMode: event
2550
2468
  }));
2551
2469
  }
2552
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppConfiguratorComponent, deps: [{ token: L10nService }], target: i0.ɵɵFactoryTarget.Component }); }
2553
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AppConfiguratorComponent, isStandalone: true, selector: "app-configurator", host: { classAttribute: "hidden absolute top-[3.25rem] right-0 w-72 p-4 bg-surface-0 dark:bg-surface-900 border border-surface rounded-border origin-top shadow-[0px_3px_5px_rgba(0,0,0,0.02),0px_0px_2px_rgba(0,0,0,0.05),0px_1px_4px_rgba(0,0,0,0.08)]" }, ngImport: i0, template: `
2470
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppConfiguratorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2471
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: AppConfiguratorComponent, isStandalone: true, selector: "app-configurator", host: { classAttribute: "hidden absolute top-[3.25rem] right-0 w-72 p-4 bg-surface-0 dark:bg-surface-900 border border-surface rounded-border origin-top shadow-[0px_3px_5px_rgba(0,0,0,0.02),0px_0px_2px_rgba(0,0,0,0.05),0px_1px_4px_rgba(0,0,0,0.08)]" }, ngImport: i0, template: `
2554
2472
  <div class="flex flex-col gap-4">
2555
2473
  <div>
2556
2474
  <span class="text-sm text-muted-color font-semibold">{{ 'app-configurator.primary' | translate }}</span>
@@ -2623,9 +2541,9 @@ class AppConfiguratorComponent {
2623
2541
  </div>
2624
2542
  }
2625
2543
  </div>
2626
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: SelectButtonModule }, { kind: "component", type: i4.SelectButton, selector: "p-selectButton, p-selectbutton, p-select-button", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "unselectable", "tabindex", "multiple", "allowEmpty", "styleClass", "ariaLabelledBy", "dataKey", "autofocus", "size", "fluid"], outputs: ["onOptionClick", "onChange"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
2544
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: SelectButtonModule }, { kind: "component", type: i3.SelectButton, selector: "p-selectButton, p-selectbutton, p-select-button", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "unselectable", "tabindex", "multiple", "allowEmpty", "styleClass", "ariaLabelledBy", "dataKey", "autofocus", "size", "fluid"], outputs: ["onOptionClick", "onChange"] }, { kind: "directive", type: i2$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
2627
2545
  }
2628
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppConfiguratorComponent, decorators: [{
2546
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppConfiguratorComponent, decorators: [{
2629
2547
  type: Component,
2630
2548
  args: [{
2631
2549
  selector: 'app-configurator',
@@ -2709,7 +2627,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
2709
2627
  class: 'hidden absolute top-[3.25rem] right-0 w-72 p-4 bg-surface-0 dark:bg-surface-900 border border-surface rounded-border origin-top shadow-[0px_3px_5px_rgba(0,0,0,0.02),0px_0px_2px_rgba(0,0,0,0.05),0px_1px_4px_rgba(0,0,0,0.08)]'
2710
2628
  }
2711
2629
  }]
2712
- }], ctorParameters: () => [{ type: L10nService }] });
2630
+ }] });
2713
2631
 
2714
2632
  /* eslint-disable */
2715
2633
  /* tslint:disable */
@@ -2761,10 +2679,10 @@ class UserProfileApi extends HttpClient {
2761
2679
  ...params,
2762
2680
  });
2763
2681
  }
2764
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: UserProfileApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
2765
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: UserProfileApi }); }
2682
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: UserProfileApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
2683
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: UserProfileApi }); }
2766
2684
  }
2767
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: UserProfileApi, decorators: [{
2685
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: UserProfileApi, decorators: [{
2768
2686
  type: Injectable
2769
2687
  }] });
2770
2688
 
@@ -2873,65 +2791,65 @@ class UserService {
2873
2791
  getCurrentUserPhotoKey(user) {
2874
2792
  return user?.sub || user?.userName || user?.preferred_username || user?.displayName || user?.name || null;
2875
2793
  }
2876
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: UserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2877
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: UserService }); }
2794
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: UserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2795
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: UserService }); }
2878
2796
  }
2879
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: UserService, decorators: [{
2797
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: UserService, decorators: [{
2880
2798
  type: Injectable
2881
2799
  }], ctorParameters: () => [] });
2882
2800
 
2883
2801
  class LogoComponent {
2884
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LogoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2885
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: LogoComponent, isStandalone: true, selector: "logo", inputs: { width: "width", height: "height" }, ngImport: i0, template: `
2886
- <svg
2887
- viewBox="0.8516 1.7159 60.0074 64.7142"
2888
- xmlns="http://www.w3.org/2000/svg"
2889
- [attr.height]="height + 'px'"
2890
- [attr.width]="width + 'px'">
2891
- <path
2892
- class="primary-logo-color"
2893
- d="M -130.45 -104.78 C -130.45 -105.9 -130.43 -107.01 -130.45 -108.13 C -130.49 -108.52 -130.28 -108.9 -129.92 -109.07 C -125.87 -111.4 -121.82 -113.74 -117.77 -116.08 C -115.7 -117.26 -113.63 -118.45 -111.58 -119.67 C -111.26 -119.89 -110.83 -119.89 -110.51 -119.67 C -101.66 -114.53 -92.787 -109.41 -83.915 -104.29 C -83.752 -104.2 -83.479 -104.16 -83.475 -103.94 C -83.472 -103.72 -83.766 -103.65 -83.947 -103.54 C -86.326 -102.16 -88.716 -100.79 -91.092 -99.39 C -91.377 -99.18 -91.761 -99.18 -92.046 -99.39 C -98.211 -102.98 -104.38 -106.55 -110.56 -110.12 C -110.85 -110.33 -111.23 -110.33 -111.52 -110.12 C -114.88 -108.16 -118.25 -106.22 -121.63 -104.28 C -122.01 -104.11 -122.24 -103.71 -122.2 -103.3 C -122.18 -101.11 -122.2 -98.922 -122.2 -96.736 C -122.19 -95.98 -122.21 -95.98 -122.84 -96.335 C -125.2 -97.7 -127.57 -99.07 -129.93 -100.42 C -130.27 -100.57 -130.49 -100.92 -130.46 -101.3 C -130.43 -102.46 -130.45 -103.62 -130.45 -104.78 Z"
2894
- transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2895
- <path
2896
- class="primary-logo-color"
2897
- d="M -70.504 -100.94 L -70.504 -90.438 C -70.447 -89.98 -70.692 -89.537 -71.11 -89.342 C -78.942 -84.839 -86.769 -80.325 -94.592 -75.8 C -95.635 -75.2 -96.684 -74.612 -97.713 -73.988 C -98.17 -73.708 -98.255 -73.846 -98.255 -74.314 L -98.255 -82.785 C -98.268 -83.116 -98.07 -83.419 -97.762 -83.541 C -92.003 -86.86 -86.269 -90.236 -80.468 -93.47 C -79.181 -94.179 -78.667 -94.934 -78.731 -96.441 C -78.869 -99.76 -78.791 -103.09 -78.755 -106.42 C -78.694 -107 -79.02 -107.56 -79.56 -107.8 C -81.436 -108.83 -83.28 -109.93 -85.138 -110.99 C -85.734 -111.34 -85.734 -111.34 -85.113 -111.7 C -82.748 -113.07 -80.379 -114.43 -78.021 -115.82 C -77.707 -116.05 -77.283 -116.06 -76.957 -115.84 C -74.962 -114.66 -72.953 -113.5 -70.929 -112.37 C -70.62 -112.19 -70.456 -111.84 -70.521 -111.49 C -70.514 -107.99 -70.508 -104.48 -70.504 -100.94 Z"
2898
- transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2899
- <path
2900
- class="primary-logo-color"
2901
- d="M -108.68 -85.743 L -108.68 -75.169 C -108.72 -74.754 -108.5 -74.358 -108.12 -74.179 C -104.77 -72.267 -101.44 -70.339 -98.117 -68.396 C -97.762 -68.141 -97.284 -68.141 -96.929 -68.396 C -95.028 -69.527 -93.096 -70.598 -91.195 -71.725 C -90.667 -72.041 -90.581 -71.892 -90.581 -71.371 C -90.596 -68.591 -90.596 -65.811 -90.581 -63.03 C -90.551 -62.7 -90.729 -62.386 -91.028 -62.243 C -93.083 -61.073 -95.13 -59.891 -97.17 -58.697 C -97.436 -58.537 -97.775 -58.569 -98.007 -58.775 C -102.74 -61.517 -107.47 -64.254 -112.22 -66.984 C -113.63 -67.796 -115.01 -68.615 -116.42 -69.406 C -116.77 -69.561 -116.97 -69.913 -116.94 -70.286 C -116.93 -80.555 -116.93 -90.823 -116.94 -101.09 C -116.94 -101.63 -116.86 -101.75 -116.35 -101.44 C -113.98 -100.05 -111.59 -98.667 -109.19 -97.303 C -108.84 -97.135 -108.62 -96.76 -108.66 -96.367 C -108.68 -92.833 -108.69 -89.291 -108.68 -85.743 Z"
2902
- transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2903
- <path
2904
- class="secondary-logo-color"
2905
- d="M -122.18 -85.807 L -122.18 -82.129 C -122.18 -81.637 -122.34 -81.615 -122.72 -81.839 C -125.16 -83.257 -127.6 -84.667 -130.05 -86.069 C -130.35 -86.219 -130.53 -86.535 -130.5 -86.867 L -130.5 -94.09 C -130.5 -94.64 -130.34 -94.679 -129.89 -94.417 C -127.49 -92.998 -125.09 -91.607 -122.67 -90.243 C -122.35 -90.103 -122.15 -89.772 -122.18 -89.42 C -122.21 -88.214 -122.18 -87.012 -122.18 -85.807 Z M -82.688 -119.15 C -83.954 -118.41 -85.17 -117.7 -86.365 -117.02 C -87.748 -116.22 -89.138 -115.44 -90.514 -114.63 C -90.761 -114.45 -91.093 -114.45 -91.34 -114.63 C -93.432 -115.86 -95.535 -117.07 -97.649 -118.27 C -98.053 -118.5 -98.191 -118.63 -97.67 -118.93 C -95.216 -120.32 -92.776 -121.74 -90.337 -123.15 C -90.134 -123.33 -89.845 -123.36 -89.61 -123.23 L -82.918 -119.33 C -82.862 -119.28 -82.812 -119.24 -82.688 -119.15 Z M -85.365 -65.616 L -85.365 -72.062 L -85.365 -74.622 C -85.403 -74.928 -85.24 -75.223 -84.961 -75.353 C -82.886 -76.534 -80.83 -77.736 -78.77 -78.931 C -78.174 -79.286 -78.135 -79.257 -78.135 -78.576 L -78.135 -70.303 C -78.135 -69.991 -78.135 -69.711 -78.468 -69.52 C -80.656 -68.275 -82.833 -67.013 -85.014 -65.761 C -85.127 -65.704 -85.245 -65.655 -85.365 -65.616 Z"
2906
- transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2907
- </svg>
2802
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: LogoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2803
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.24", type: LogoComponent, isStandalone: true, selector: "logo", inputs: { width: "width", height: "height" }, ngImport: i0, template: `
2804
+ <svg
2805
+ viewBox="0.8516 1.7159 60.0074 64.7142"
2806
+ xmlns="http://www.w3.org/2000/svg"
2807
+ [attr.height]="height + 'px'"
2808
+ [attr.width]="width + 'px'">
2809
+ <path
2810
+ class="primary-logo-color"
2811
+ d="M -130.45 -104.78 C -130.45 -105.9 -130.43 -107.01 -130.45 -108.13 C -130.49 -108.52 -130.28 -108.9 -129.92 -109.07 C -125.87 -111.4 -121.82 -113.74 -117.77 -116.08 C -115.7 -117.26 -113.63 -118.45 -111.58 -119.67 C -111.26 -119.89 -110.83 -119.89 -110.51 -119.67 C -101.66 -114.53 -92.787 -109.41 -83.915 -104.29 C -83.752 -104.2 -83.479 -104.16 -83.475 -103.94 C -83.472 -103.72 -83.766 -103.65 -83.947 -103.54 C -86.326 -102.16 -88.716 -100.79 -91.092 -99.39 C -91.377 -99.18 -91.761 -99.18 -92.046 -99.39 C -98.211 -102.98 -104.38 -106.55 -110.56 -110.12 C -110.85 -110.33 -111.23 -110.33 -111.52 -110.12 C -114.88 -108.16 -118.25 -106.22 -121.63 -104.28 C -122.01 -104.11 -122.24 -103.71 -122.2 -103.3 C -122.18 -101.11 -122.2 -98.922 -122.2 -96.736 C -122.19 -95.98 -122.21 -95.98 -122.84 -96.335 C -125.2 -97.7 -127.57 -99.07 -129.93 -100.42 C -130.27 -100.57 -130.49 -100.92 -130.46 -101.3 C -130.43 -102.46 -130.45 -103.62 -130.45 -104.78 Z"
2812
+ transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2813
+ <path
2814
+ class="primary-logo-color"
2815
+ d="M -70.504 -100.94 L -70.504 -90.438 C -70.447 -89.98 -70.692 -89.537 -71.11 -89.342 C -78.942 -84.839 -86.769 -80.325 -94.592 -75.8 C -95.635 -75.2 -96.684 -74.612 -97.713 -73.988 C -98.17 -73.708 -98.255 -73.846 -98.255 -74.314 L -98.255 -82.785 C -98.268 -83.116 -98.07 -83.419 -97.762 -83.541 C -92.003 -86.86 -86.269 -90.236 -80.468 -93.47 C -79.181 -94.179 -78.667 -94.934 -78.731 -96.441 C -78.869 -99.76 -78.791 -103.09 -78.755 -106.42 C -78.694 -107 -79.02 -107.56 -79.56 -107.8 C -81.436 -108.83 -83.28 -109.93 -85.138 -110.99 C -85.734 -111.34 -85.734 -111.34 -85.113 -111.7 C -82.748 -113.07 -80.379 -114.43 -78.021 -115.82 C -77.707 -116.05 -77.283 -116.06 -76.957 -115.84 C -74.962 -114.66 -72.953 -113.5 -70.929 -112.37 C -70.62 -112.19 -70.456 -111.84 -70.521 -111.49 C -70.514 -107.99 -70.508 -104.48 -70.504 -100.94 Z"
2816
+ transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2817
+ <path
2818
+ class="primary-logo-color"
2819
+ d="M -108.68 -85.743 L -108.68 -75.169 C -108.72 -74.754 -108.5 -74.358 -108.12 -74.179 C -104.77 -72.267 -101.44 -70.339 -98.117 -68.396 C -97.762 -68.141 -97.284 -68.141 -96.929 -68.396 C -95.028 -69.527 -93.096 -70.598 -91.195 -71.725 C -90.667 -72.041 -90.581 -71.892 -90.581 -71.371 C -90.596 -68.591 -90.596 -65.811 -90.581 -63.03 C -90.551 -62.7 -90.729 -62.386 -91.028 -62.243 C -93.083 -61.073 -95.13 -59.891 -97.17 -58.697 C -97.436 -58.537 -97.775 -58.569 -98.007 -58.775 C -102.74 -61.517 -107.47 -64.254 -112.22 -66.984 C -113.63 -67.796 -115.01 -68.615 -116.42 -69.406 C -116.77 -69.561 -116.97 -69.913 -116.94 -70.286 C -116.93 -80.555 -116.93 -90.823 -116.94 -101.09 C -116.94 -101.63 -116.86 -101.75 -116.35 -101.44 C -113.98 -100.05 -111.59 -98.667 -109.19 -97.303 C -108.84 -97.135 -108.62 -96.76 -108.66 -96.367 C -108.68 -92.833 -108.69 -89.291 -108.68 -85.743 Z"
2820
+ transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2821
+ <path
2822
+ class="secondary-logo-color"
2823
+ d="M -122.18 -85.807 L -122.18 -82.129 C -122.18 -81.637 -122.34 -81.615 -122.72 -81.839 C -125.16 -83.257 -127.6 -84.667 -130.05 -86.069 C -130.35 -86.219 -130.53 -86.535 -130.5 -86.867 L -130.5 -94.09 C -130.5 -94.64 -130.34 -94.679 -129.89 -94.417 C -127.49 -92.998 -125.09 -91.607 -122.67 -90.243 C -122.35 -90.103 -122.15 -89.772 -122.18 -89.42 C -122.21 -88.214 -122.18 -87.012 -122.18 -85.807 Z M -82.688 -119.15 C -83.954 -118.41 -85.17 -117.7 -86.365 -117.02 C -87.748 -116.22 -89.138 -115.44 -90.514 -114.63 C -90.761 -114.45 -91.093 -114.45 -91.34 -114.63 C -93.432 -115.86 -95.535 -117.07 -97.649 -118.27 C -98.053 -118.5 -98.191 -118.63 -97.67 -118.93 C -95.216 -120.32 -92.776 -121.74 -90.337 -123.15 C -90.134 -123.33 -89.845 -123.36 -89.61 -123.23 L -82.918 -119.33 C -82.862 -119.28 -82.812 -119.24 -82.688 -119.15 Z M -85.365 -65.616 L -85.365 -72.062 L -85.365 -74.622 C -85.403 -74.928 -85.24 -75.223 -84.961 -75.353 C -82.886 -76.534 -80.83 -77.736 -78.77 -78.931 C -78.174 -79.286 -78.135 -79.257 -78.135 -78.576 L -78.135 -70.303 C -78.135 -69.991 -78.135 -69.711 -78.468 -69.52 C -80.656 -68.275 -82.833 -67.013 -85.014 -65.761 C -85.127 -65.704 -85.245 -65.655 -85.365 -65.616 Z"
2824
+ transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2825
+ </svg>
2908
2826
  `, isInline: true, styles: [".primary-logo-color{fill:var(--primary-color)}.secondary-logo-color{fill:var(--p-primary-600)}\n"] }); }
2909
2827
  }
2910
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LogoComponent, decorators: [{
2828
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: LogoComponent, decorators: [{
2911
2829
  type: Component,
2912
- args: [{ selector: 'logo', standalone: true, template: `
2913
- <svg
2914
- viewBox="0.8516 1.7159 60.0074 64.7142"
2915
- xmlns="http://www.w3.org/2000/svg"
2916
- [attr.height]="height + 'px'"
2917
- [attr.width]="width + 'px'">
2918
- <path
2919
- class="primary-logo-color"
2920
- d="M -130.45 -104.78 C -130.45 -105.9 -130.43 -107.01 -130.45 -108.13 C -130.49 -108.52 -130.28 -108.9 -129.92 -109.07 C -125.87 -111.4 -121.82 -113.74 -117.77 -116.08 C -115.7 -117.26 -113.63 -118.45 -111.58 -119.67 C -111.26 -119.89 -110.83 -119.89 -110.51 -119.67 C -101.66 -114.53 -92.787 -109.41 -83.915 -104.29 C -83.752 -104.2 -83.479 -104.16 -83.475 -103.94 C -83.472 -103.72 -83.766 -103.65 -83.947 -103.54 C -86.326 -102.16 -88.716 -100.79 -91.092 -99.39 C -91.377 -99.18 -91.761 -99.18 -92.046 -99.39 C -98.211 -102.98 -104.38 -106.55 -110.56 -110.12 C -110.85 -110.33 -111.23 -110.33 -111.52 -110.12 C -114.88 -108.16 -118.25 -106.22 -121.63 -104.28 C -122.01 -104.11 -122.24 -103.71 -122.2 -103.3 C -122.18 -101.11 -122.2 -98.922 -122.2 -96.736 C -122.19 -95.98 -122.21 -95.98 -122.84 -96.335 C -125.2 -97.7 -127.57 -99.07 -129.93 -100.42 C -130.27 -100.57 -130.49 -100.92 -130.46 -101.3 C -130.43 -102.46 -130.45 -103.62 -130.45 -104.78 Z"
2921
- transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2922
- <path
2923
- class="primary-logo-color"
2924
- d="M -70.504 -100.94 L -70.504 -90.438 C -70.447 -89.98 -70.692 -89.537 -71.11 -89.342 C -78.942 -84.839 -86.769 -80.325 -94.592 -75.8 C -95.635 -75.2 -96.684 -74.612 -97.713 -73.988 C -98.17 -73.708 -98.255 -73.846 -98.255 -74.314 L -98.255 -82.785 C -98.268 -83.116 -98.07 -83.419 -97.762 -83.541 C -92.003 -86.86 -86.269 -90.236 -80.468 -93.47 C -79.181 -94.179 -78.667 -94.934 -78.731 -96.441 C -78.869 -99.76 -78.791 -103.09 -78.755 -106.42 C -78.694 -107 -79.02 -107.56 -79.56 -107.8 C -81.436 -108.83 -83.28 -109.93 -85.138 -110.99 C -85.734 -111.34 -85.734 -111.34 -85.113 -111.7 C -82.748 -113.07 -80.379 -114.43 -78.021 -115.82 C -77.707 -116.05 -77.283 -116.06 -76.957 -115.84 C -74.962 -114.66 -72.953 -113.5 -70.929 -112.37 C -70.62 -112.19 -70.456 -111.84 -70.521 -111.49 C -70.514 -107.99 -70.508 -104.48 -70.504 -100.94 Z"
2925
- transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2926
- <path
2927
- class="primary-logo-color"
2928
- d="M -108.68 -85.743 L -108.68 -75.169 C -108.72 -74.754 -108.5 -74.358 -108.12 -74.179 C -104.77 -72.267 -101.44 -70.339 -98.117 -68.396 C -97.762 -68.141 -97.284 -68.141 -96.929 -68.396 C -95.028 -69.527 -93.096 -70.598 -91.195 -71.725 C -90.667 -72.041 -90.581 -71.892 -90.581 -71.371 C -90.596 -68.591 -90.596 -65.811 -90.581 -63.03 C -90.551 -62.7 -90.729 -62.386 -91.028 -62.243 C -93.083 -61.073 -95.13 -59.891 -97.17 -58.697 C -97.436 -58.537 -97.775 -58.569 -98.007 -58.775 C -102.74 -61.517 -107.47 -64.254 -112.22 -66.984 C -113.63 -67.796 -115.01 -68.615 -116.42 -69.406 C -116.77 -69.561 -116.97 -69.913 -116.94 -70.286 C -116.93 -80.555 -116.93 -90.823 -116.94 -101.09 C -116.94 -101.63 -116.86 -101.75 -116.35 -101.44 C -113.98 -100.05 -111.59 -98.667 -109.19 -97.303 C -108.84 -97.135 -108.62 -96.76 -108.66 -96.367 C -108.68 -92.833 -108.69 -89.291 -108.68 -85.743 Z"
2929
- transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2930
- <path
2931
- class="secondary-logo-color"
2932
- d="M -122.18 -85.807 L -122.18 -82.129 C -122.18 -81.637 -122.34 -81.615 -122.72 -81.839 C -125.16 -83.257 -127.6 -84.667 -130.05 -86.069 C -130.35 -86.219 -130.53 -86.535 -130.5 -86.867 L -130.5 -94.09 C -130.5 -94.64 -130.34 -94.679 -129.89 -94.417 C -127.49 -92.998 -125.09 -91.607 -122.67 -90.243 C -122.35 -90.103 -122.15 -89.772 -122.18 -89.42 C -122.21 -88.214 -122.18 -87.012 -122.18 -85.807 Z M -82.688 -119.15 C -83.954 -118.41 -85.17 -117.7 -86.365 -117.02 C -87.748 -116.22 -89.138 -115.44 -90.514 -114.63 C -90.761 -114.45 -91.093 -114.45 -91.34 -114.63 C -93.432 -115.86 -95.535 -117.07 -97.649 -118.27 C -98.053 -118.5 -98.191 -118.63 -97.67 -118.93 C -95.216 -120.32 -92.776 -121.74 -90.337 -123.15 C -90.134 -123.33 -89.845 -123.36 -89.61 -123.23 L -82.918 -119.33 C -82.862 -119.28 -82.812 -119.24 -82.688 -119.15 Z M -85.365 -65.616 L -85.365 -72.062 L -85.365 -74.622 C -85.403 -74.928 -85.24 -75.223 -84.961 -75.353 C -82.886 -76.534 -80.83 -77.736 -78.77 -78.931 C -78.174 -79.286 -78.135 -79.257 -78.135 -78.576 L -78.135 -70.303 C -78.135 -69.991 -78.135 -69.711 -78.468 -69.52 C -80.656 -68.275 -82.833 -67.013 -85.014 -65.761 C -85.127 -65.704 -85.245 -65.655 -85.365 -65.616 Z"
2933
- transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2934
- </svg>
2830
+ args: [{ selector: 'logo', standalone: true, template: `
2831
+ <svg
2832
+ viewBox="0.8516 1.7159 60.0074 64.7142"
2833
+ xmlns="http://www.w3.org/2000/svg"
2834
+ [attr.height]="height + 'px'"
2835
+ [attr.width]="width + 'px'">
2836
+ <path
2837
+ class="primary-logo-color"
2838
+ d="M -130.45 -104.78 C -130.45 -105.9 -130.43 -107.01 -130.45 -108.13 C -130.49 -108.52 -130.28 -108.9 -129.92 -109.07 C -125.87 -111.4 -121.82 -113.74 -117.77 -116.08 C -115.7 -117.26 -113.63 -118.45 -111.58 -119.67 C -111.26 -119.89 -110.83 -119.89 -110.51 -119.67 C -101.66 -114.53 -92.787 -109.41 -83.915 -104.29 C -83.752 -104.2 -83.479 -104.16 -83.475 -103.94 C -83.472 -103.72 -83.766 -103.65 -83.947 -103.54 C -86.326 -102.16 -88.716 -100.79 -91.092 -99.39 C -91.377 -99.18 -91.761 -99.18 -92.046 -99.39 C -98.211 -102.98 -104.38 -106.55 -110.56 -110.12 C -110.85 -110.33 -111.23 -110.33 -111.52 -110.12 C -114.88 -108.16 -118.25 -106.22 -121.63 -104.28 C -122.01 -104.11 -122.24 -103.71 -122.2 -103.3 C -122.18 -101.11 -122.2 -98.922 -122.2 -96.736 C -122.19 -95.98 -122.21 -95.98 -122.84 -96.335 C -125.2 -97.7 -127.57 -99.07 -129.93 -100.42 C -130.27 -100.57 -130.49 -100.92 -130.46 -101.3 C -130.43 -102.46 -130.45 -103.62 -130.45 -104.78 Z"
2839
+ transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2840
+ <path
2841
+ class="primary-logo-color"
2842
+ d="M -70.504 -100.94 L -70.504 -90.438 C -70.447 -89.98 -70.692 -89.537 -71.11 -89.342 C -78.942 -84.839 -86.769 -80.325 -94.592 -75.8 C -95.635 -75.2 -96.684 -74.612 -97.713 -73.988 C -98.17 -73.708 -98.255 -73.846 -98.255 -74.314 L -98.255 -82.785 C -98.268 -83.116 -98.07 -83.419 -97.762 -83.541 C -92.003 -86.86 -86.269 -90.236 -80.468 -93.47 C -79.181 -94.179 -78.667 -94.934 -78.731 -96.441 C -78.869 -99.76 -78.791 -103.09 -78.755 -106.42 C -78.694 -107 -79.02 -107.56 -79.56 -107.8 C -81.436 -108.83 -83.28 -109.93 -85.138 -110.99 C -85.734 -111.34 -85.734 -111.34 -85.113 -111.7 C -82.748 -113.07 -80.379 -114.43 -78.021 -115.82 C -77.707 -116.05 -77.283 -116.06 -76.957 -115.84 C -74.962 -114.66 -72.953 -113.5 -70.929 -112.37 C -70.62 -112.19 -70.456 -111.84 -70.521 -111.49 C -70.514 -107.99 -70.508 -104.48 -70.504 -100.94 Z"
2843
+ transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2844
+ <path
2845
+ class="primary-logo-color"
2846
+ d="M -108.68 -85.743 L -108.68 -75.169 C -108.72 -74.754 -108.5 -74.358 -108.12 -74.179 C -104.77 -72.267 -101.44 -70.339 -98.117 -68.396 C -97.762 -68.141 -97.284 -68.141 -96.929 -68.396 C -95.028 -69.527 -93.096 -70.598 -91.195 -71.725 C -90.667 -72.041 -90.581 -71.892 -90.581 -71.371 C -90.596 -68.591 -90.596 -65.811 -90.581 -63.03 C -90.551 -62.7 -90.729 -62.386 -91.028 -62.243 C -93.083 -61.073 -95.13 -59.891 -97.17 -58.697 C -97.436 -58.537 -97.775 -58.569 -98.007 -58.775 C -102.74 -61.517 -107.47 -64.254 -112.22 -66.984 C -113.63 -67.796 -115.01 -68.615 -116.42 -69.406 C -116.77 -69.561 -116.97 -69.913 -116.94 -70.286 C -116.93 -80.555 -116.93 -90.823 -116.94 -101.09 C -116.94 -101.63 -116.86 -101.75 -116.35 -101.44 C -113.98 -100.05 -111.59 -98.667 -109.19 -97.303 C -108.84 -97.135 -108.62 -96.76 -108.66 -96.367 C -108.68 -92.833 -108.69 -89.291 -108.68 -85.743 Z"
2847
+ transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2848
+ <path
2849
+ class="secondary-logo-color"
2850
+ d="M -122.18 -85.807 L -122.18 -82.129 C -122.18 -81.637 -122.34 -81.615 -122.72 -81.839 C -125.16 -83.257 -127.6 -84.667 -130.05 -86.069 C -130.35 -86.219 -130.53 -86.535 -130.5 -86.867 L -130.5 -94.09 C -130.5 -94.64 -130.34 -94.679 -129.89 -94.417 C -127.49 -92.998 -125.09 -91.607 -122.67 -90.243 C -122.35 -90.103 -122.15 -89.772 -122.18 -89.42 C -122.21 -88.214 -122.18 -87.012 -122.18 -85.807 Z M -82.688 -119.15 C -83.954 -118.41 -85.17 -117.7 -86.365 -117.02 C -87.748 -116.22 -89.138 -115.44 -90.514 -114.63 C -90.761 -114.45 -91.093 -114.45 -91.34 -114.63 C -93.432 -115.86 -95.535 -117.07 -97.649 -118.27 C -98.053 -118.5 -98.191 -118.63 -97.67 -118.93 C -95.216 -120.32 -92.776 -121.74 -90.337 -123.15 C -90.134 -123.33 -89.845 -123.36 -89.61 -123.23 L -82.918 -119.33 C -82.862 -119.28 -82.812 -119.24 -82.688 -119.15 Z M -85.365 -65.616 L -85.365 -72.062 L -85.365 -74.622 C -85.403 -74.928 -85.24 -75.223 -84.961 -75.353 C -82.886 -76.534 -80.83 -77.736 -78.77 -78.931 C -78.174 -79.286 -78.135 -79.257 -78.135 -78.576 L -78.135 -70.303 C -78.135 -69.991 -78.135 -69.711 -78.468 -69.52 C -80.656 -68.275 -82.833 -67.013 -85.014 -65.761 C -85.127 -65.704 -85.245 -65.655 -85.365 -65.616 Z"
2851
+ transform="matrix(1, 0, 0, 1, 131.35482788085938, 125.0257797241211)" />
2852
+ </svg>
2935
2853
  `, styles: [".primary-logo-color{fill:var(--primary-color)}.secondary-logo-color{fill:var(--p-primary-600)}\n"] }]
2936
2854
  }], propDecorators: { width: [{
2937
2855
  type: Input
@@ -2953,10 +2871,10 @@ class LogoService {
2953
2871
  getLogoComponent() {
2954
2872
  return this.customLogoComponent || LogoComponent;
2955
2873
  }
2956
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LogoService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2957
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LogoService, providedIn: 'root' }); }
2874
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: LogoService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2875
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: LogoService, providedIn: 'root' }); }
2958
2876
  }
2959
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LogoService, decorators: [{
2877
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: LogoService, decorators: [{
2960
2878
  type: Injectable,
2961
2879
  args: [{ providedIn: 'root' }]
2962
2880
  }] });
@@ -2997,10 +2915,10 @@ class NotificationApi extends HttpClient {
2997
2915
  ...params,
2998
2916
  });
2999
2917
  }
3000
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: NotificationApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3001
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: NotificationApi }); }
2918
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: NotificationApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
2919
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: NotificationApi }); }
3002
2920
  }
3003
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: NotificationApi, decorators: [{
2921
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: NotificationApi, decorators: [{
3004
2922
  type: Injectable
3005
2923
  }] });
3006
2924
 
@@ -3052,10 +2970,10 @@ class NotificationService {
3052
2970
  .then((response) => this.unreadNotificationCount.set(response.count ?? 0))
3053
2971
  .catch((error) => console.error('Failed to load notification count', error));
3054
2972
  }
3055
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: NotificationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3056
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: NotificationService, providedIn: 'root' }); }
2973
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: NotificationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2974
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: NotificationService, providedIn: 'root' }); }
3057
2975
  }
3058
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: NotificationService, decorators: [{
2976
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: NotificationService, decorators: [{
3059
2977
  type: Injectable,
3060
2978
  args: [{ providedIn: 'root' }]
3061
2979
  }], ctorParameters: () => [] });
@@ -3067,7 +2985,7 @@ var userNotifications$1 = {
3067
2985
  markAsRead: "Read",
3068
2986
  markedAsRead: "Notification marked as read"
3069
2987
  };
3070
- var en$8 = {
2988
+ var en$d = {
3071
2989
  userNotifications: userNotifications$1
3072
2990
  };
3073
2991
 
@@ -3078,13 +2996,13 @@ var userNotifications = {
3078
2996
  markAsRead: "Прочитано",
3079
2997
  markedAsRead: "Оповещение отмечено прочитанным"
3080
2998
  };
3081
- var ru$8 = {
2999
+ var ru$d = {
3082
3000
  userNotifications: userNotifications
3083
3001
  };
3084
3002
 
3085
- L10nService.registerTranslations({ en: en$8, ru: ru$8 });
3086
3003
  class UserNotificationsComponent {
3087
- constructor(l10nService) {
3004
+ constructor() {
3005
+ this.translations = provideTranslations({ en: en$d, ru: ru$d });
3088
3006
  this.notifications = [];
3089
3007
  this.totalCount = 0;
3090
3008
  this.skip = 0;
@@ -3099,7 +3017,6 @@ class UserNotificationsComponent {
3099
3017
  const count = this.unreadNotificationCount();
3100
3018
  return count > 99 ? '99+' : count.toString();
3101
3019
  }, ...(ngDevMode ? [{ debugName: "unreadNotificationBadge" }] : []));
3102
- l10nService.get('userNotifications');
3103
3020
  }
3104
3021
  async toggle(event) {
3105
3022
  this.popover?.toggle(event);
@@ -3162,8 +3079,8 @@ class UserNotificationsComponent {
3162
3079
  return 'secondary';
3163
3080
  }
3164
3081
  }
3165
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: UserNotificationsComponent, deps: [{ token: L10nService }], target: i0.ɵɵFactoryTarget.Component }); }
3166
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: UserNotificationsComponent, isStandalone: true, selector: "app-user-notifications", viewQueries: [{ propertyName: "popover", first: true, predicate: ["popover"], descendants: true }], ngImport: i0, template: `
3082
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: UserNotificationsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3083
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: UserNotificationsComponent, isStandalone: true, selector: "app-user-notifications", viewQueries: [{ propertyName: "popover", first: true, predicate: ["popover"], descendants: true }], ngImport: i0, template: `
3167
3084
  <button
3168
3085
  class="layout-topbar-action relative"
3169
3086
  id="oip-app-topbar-notification-button"
@@ -3250,9 +3167,9 @@ class UserNotificationsComponent {
3250
3167
  (onPageChange)="onPageChange($event)"></p-paginator>
3251
3168
  }
3252
3169
  </p-popover>
3253
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: BadgeModule }, { kind: "component", type: i2$3.Badge, selector: "p-badge", inputs: ["styleClass", "badgeSize", "size", "severity", "value", "badgeDisabled"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: PaginatorModule }, { kind: "component", type: i4$1.Paginator, selector: "p-paginator", inputs: ["pageLinkSize", "styleClass", "alwaysShow", "dropdownAppendTo", "templateLeft", "templateRight", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "jumpToPageItemTemplate", "showPageLinks", "locale", "dropdownItemTemplate", "first", "appendTo"], outputs: ["onPageChange"] }, { kind: "component", type: Popover, selector: "p-popover", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "ngmodule", type: ProgressSpinnerModule }, { kind: "component", type: i5.ProgressSpinner, selector: "p-progressSpinner, p-progress-spinner, p-progressspinner", inputs: ["styleClass", "strokeWidth", "fill", "animationDuration", "ariaLabel"] }, { kind: "component", type: Tag, selector: "p-tag", inputs: ["styleClass", "severity", "value", "icon", "rounded"] }, { kind: "directive", type: Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "pipe", type: i2$1.DatePipe, name: "date" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
3170
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: BadgeModule }, { kind: "component", type: i1$4.Badge, selector: "p-badge", inputs: ["styleClass", "badgeSize", "size", "severity", "value", "badgeDisabled"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: PaginatorModule }, { kind: "component", type: i3$1.Paginator, selector: "p-paginator", inputs: ["pageLinkSize", "styleClass", "alwaysShow", "dropdownAppendTo", "templateLeft", "templateRight", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "jumpToPageItemTemplate", "showPageLinks", "locale", "dropdownItemTemplate", "first", "appendTo"], outputs: ["onPageChange"] }, { kind: "component", type: Popover, selector: "p-popover", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "ngmodule", type: ProgressSpinnerModule }, { kind: "component", type: i4.ProgressSpinner, selector: "p-progressSpinner, p-progress-spinner, p-progressspinner", inputs: ["styleClass", "strokeWidth", "fill", "animationDuration", "ariaLabel"] }, { kind: "component", type: Tag, selector: "p-tag", inputs: ["styleClass", "severity", "value", "icon", "rounded"] }, { kind: "directive", type: Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "pipe", type: i1$3.DatePipe, name: "date" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
3254
3171
  }
3255
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: UserNotificationsComponent, decorators: [{
3172
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: UserNotificationsComponent, decorators: [{
3256
3173
  type: Component,
3257
3174
  args: [{
3258
3175
  selector: 'app-user-notifications',
@@ -3357,7 +3274,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
3357
3274
  </p-popover>
3358
3275
  `
3359
3276
  }]
3360
- }], ctorParameters: () => [{ type: L10nService }], propDecorators: { popover: [{
3277
+ }], propDecorators: { popover: [{
3361
3278
  type: ViewChild,
3362
3279
  args: ['popover']
3363
3280
  }] } });
@@ -3404,10 +3321,10 @@ class ApplicationsApi extends HttpClient {
3404
3321
  ...params,
3405
3322
  });
3406
3323
  }
3407
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ApplicationsApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3408
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ApplicationsApi }); }
3324
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ApplicationsApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3325
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ApplicationsApi }); }
3409
3326
  }
3410
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ApplicationsApi, decorators: [{
3327
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ApplicationsApi, decorators: [{
3411
3328
  type: Injectable
3412
3329
  }] });
3413
3330
 
@@ -3427,10 +3344,10 @@ class ApplicationRegistryService {
3427
3344
  }
3428
3345
  window.location.href = application.baseUrl;
3429
3346
  }
3430
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ApplicationRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3431
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ApplicationRegistryService }); }
3347
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ApplicationRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3348
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ApplicationRegistryService }); }
3432
3349
  }
3433
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ApplicationRegistryService, decorators: [{
3350
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ApplicationRegistryService, decorators: [{
3434
3351
  type: Injectable
3435
3352
  }] });
3436
3353
 
@@ -3457,56 +3374,83 @@ class AppTopbarApplicationSwitcherComponent {
3457
3374
  command: () => this.applicationRegistryService.openApplication(application)
3458
3375
  };
3459
3376
  }
3460
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppTopbarApplicationSwitcherComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3461
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AppTopbarApplicationSwitcherComponent, isStandalone: true, selector: "app-topbar-application-switcher", providers: [ApplicationsApi, ApplicationRegistryService], ngImport: i0, template: `
3462
- @if (applicationRegistryService.applications.length > 1) {
3463
- <p-button
3464
- class="layout-topbar-action"
3465
- id="oip-app-topbar-application-switcher-button"
3466
- severity="secondary"
3467
- type="button"
3468
- [rounded]="true"
3469
- [text]="true"
3470
- (click)="applicationMenu.toggle($event)">
3471
- <i [ngClass]="applicationRegistryService.currentApplication?.icon || 'pi pi-th-large'"></i>
3472
- <span class="ml-2 hidden md:inline">
3473
- {{ applicationRegistryService.currentApplication?.displayName || ('topbar.applications' | translate) }}
3474
- </span>
3475
- </p-button>
3476
- <p-menu #applicationMenu [model]="applicationMenuItems" [popup]="true" />
3477
- }
3478
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: MenuModule }, { kind: "component", type: i3$1.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "ariaLabel", "ariaLabelledBy", "id", "tabindex", "appendTo"], outputs: ["onShow", "onHide", "onBlur", "onFocus"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
3377
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppTopbarApplicationSwitcherComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3378
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: AppTopbarApplicationSwitcherComponent, isStandalone: true, selector: "app-topbar-application-switcher", providers: [ApplicationsApi, ApplicationRegistryService], ngImport: i0, template: `
3379
+ @if (applicationRegistryService.applications.length > 1) {
3380
+ <p-button
3381
+ class="layout-topbar-action"
3382
+ id="oip-app-topbar-application-switcher-button"
3383
+ severity="secondary"
3384
+ type="button"
3385
+ [rounded]="true"
3386
+ [text]="true"
3387
+ (click)="applicationMenu.toggle($event)">
3388
+ <i [ngClass]="applicationRegistryService.currentApplication?.icon || 'pi pi-th-large'"></i>
3389
+ <span class="ml-2 hidden md:inline">
3390
+ {{ applicationRegistryService.currentApplication?.displayName || ('topbar.applications' | translate) }}
3391
+ </span>
3392
+ </p-button>
3393
+ <p-menu #applicationMenu [model]="applicationMenuItems" [popup]="true" />
3394
+ }
3395
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: MenuModule }, { kind: "component", type: i3$2.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "ariaLabel", "ariaLabelledBy", "id", "tabindex", "appendTo"], outputs: ["onShow", "onHide", "onBlur", "onFocus"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
3479
3396
  }
3480
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppTopbarApplicationSwitcherComponent, decorators: [{
3397
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppTopbarApplicationSwitcherComponent, decorators: [{
3481
3398
  type: Component,
3482
3399
  args: [{
3483
3400
  selector: 'app-topbar-application-switcher',
3484
3401
  standalone: true,
3485
3402
  imports: [CommonModule, ButtonModule, MenuModule, TranslatePipe],
3486
- template: `
3487
- @if (applicationRegistryService.applications.length > 1) {
3488
- <p-button
3489
- class="layout-topbar-action"
3490
- id="oip-app-topbar-application-switcher-button"
3491
- severity="secondary"
3492
- type="button"
3493
- [rounded]="true"
3494
- [text]="true"
3495
- (click)="applicationMenu.toggle($event)">
3496
- <i [ngClass]="applicationRegistryService.currentApplication?.icon || 'pi pi-th-large'"></i>
3497
- <span class="ml-2 hidden md:inline">
3498
- {{ applicationRegistryService.currentApplication?.displayName || ('topbar.applications' | translate) }}
3499
- </span>
3500
- </p-button>
3501
- <p-menu #applicationMenu [model]="applicationMenuItems" [popup]="true" />
3502
- }
3403
+ template: `
3404
+ @if (applicationRegistryService.applications.length > 1) {
3405
+ <p-button
3406
+ class="layout-topbar-action"
3407
+ id="oip-app-topbar-application-switcher-button"
3408
+ severity="secondary"
3409
+ type="button"
3410
+ [rounded]="true"
3411
+ [text]="true"
3412
+ (click)="applicationMenu.toggle($event)">
3413
+ <i [ngClass]="applicationRegistryService.currentApplication?.icon || 'pi pi-th-large'"></i>
3414
+ <span class="ml-2 hidden md:inline">
3415
+ {{ applicationRegistryService.currentApplication?.displayName || ('topbar.applications' | translate) }}
3416
+ </span>
3417
+ </p-button>
3418
+ <p-menu #applicationMenu [model]="applicationMenuItems" [popup]="true" />
3419
+ }
3503
3420
  `,
3504
3421
  providers: [ApplicationsApi, ApplicationRegistryService]
3505
3422
  }]
3506
3423
  }] });
3507
3424
 
3425
+ var topbar$1 = {
3426
+ logout: "Logout",
3427
+ logoutConfirmHeader: "Logout",
3428
+ logoutConfirmMessage: "Are you sure you want to logout?",
3429
+ logoutConfirmCancel: "Cancel",
3430
+ logoutConfirmAccept: "Logout",
3431
+ profile: "Profile",
3432
+ applications: "Applications"
3433
+ };
3434
+ var en$c = {
3435
+ topbar: topbar$1
3436
+ };
3437
+
3438
+ var topbar = {
3439
+ logout: "Выход",
3440
+ logoutConfirmHeader: "Выход",
3441
+ logoutConfirmMessage: "Вы уверены, что хотите выйти?",
3442
+ logoutConfirmCancel: "Отмена",
3443
+ logoutConfirmAccept: "Выйти",
3444
+ profile: "Профиль",
3445
+ applications: "Приложения"
3446
+ };
3447
+ var ru$c = {
3448
+ topbar: topbar
3449
+ };
3450
+
3508
3451
  class AppTopbar {
3509
3452
  constructor() {
3453
+ this.translations = provideTranslations({ en: en$c, ru: ru$c });
3510
3454
  this.securityService = inject(SecurityService);
3511
3455
  this.topBarService = inject(TopBarService);
3512
3456
  this.userService = inject(UserService);
@@ -3516,8 +3460,7 @@ class AppTopbar {
3516
3460
  this.translateService = inject(TranslateService);
3517
3461
  }
3518
3462
  onActiveTabChange(value) {
3519
- const nextActiveId = value == null ? undefined : String(value);
3520
- this.topBarService.activeId = nextActiveId;
3463
+ this.topBarService.activeId = value == null ? undefined : String(value);
3521
3464
  }
3522
3465
  toggleDarkMode() {
3523
3466
  this.layoutService.layoutConfig.update((state) => ({
@@ -3550,8 +3493,8 @@ class AppTopbar {
3550
3493
  }
3551
3494
  });
3552
3495
  }
3553
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppTopbar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3554
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AppTopbar, isStandalone: true, selector: "app-topbar", providers: [ConfirmationService], ngImport: i0, template: `
3496
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppTopbar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3497
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: AppTopbar, isStandalone: true, selector: "app-topbar", providers: [ConfirmationService], ngImport: i0, template: `
3555
3498
  <div class="layout-topbar">
3556
3499
  <p-confirmDialog appendTo="body"/>
3557
3500
  <div class="layout-topbar-logo-container">
@@ -3653,9 +3596,9 @@ class AppTopbar {
3653
3596
  </div>
3654
3597
  </div>
3655
3598
  </div>
3656
- </div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1$2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2$1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "ngmodule", type: StyleClassModule }, { kind: "directive", type: i3$2.StyleClass, selector: "[pStyleClass]", inputs: ["pStyleClass", "enterFromClass", "enterActiveClass", "enterToClass", "leaveFromClass", "leaveActiveClass", "leaveToClass", "hideOnOutsideClick", "toggleClass", "hideOnEscape", "hideOnResize", "resizeSelector"] }, { kind: "component", type: AppConfiguratorComponent, selector: "app-configurator" }, { kind: "component", type: Tabs, selector: "p-tabs", inputs: ["value", "scrollable", "lazy", "selectOnFocus", "showNavigators", "tabindex"], outputs: ["valueChange"] }, { kind: "component", type: TabList, selector: "p-tablist" }, { kind: "component", type: Tab, selector: "p-tab", inputs: ["value", "disabled"], outputs: ["valueChange"] }, { kind: "ngmodule", type: AvatarModule }, { kind: "component", type: i3$3.Avatar, selector: "p-avatar", inputs: ["label", "icon", "image", "size", "shape", "styleClass", "ariaLabel", "ariaLabelledBy"], outputs: ["onImageError"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "component", type: UserNotificationsComponent, selector: "app-user-notifications" }, { kind: "component", type: AppTopbarApplicationSwitcherComponent, selector: "app-topbar-application-switcher" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
3599
+ </div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1$5.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "ngmodule", type: StyleClassModule }, { kind: "directive", type: i3$3.StyleClass, selector: "[pStyleClass]", inputs: ["pStyleClass", "enterFromClass", "enterActiveClass", "enterToClass", "leaveFromClass", "leaveActiveClass", "leaveToClass", "hideOnOutsideClick", "toggleClass", "hideOnEscape", "hideOnResize", "resizeSelector"] }, { kind: "component", type: AppConfiguratorComponent, selector: "app-configurator" }, { kind: "component", type: Tabs, selector: "p-tabs", inputs: ["value", "scrollable", "lazy", "selectOnFocus", "showNavigators", "tabindex"], outputs: ["valueChange"] }, { kind: "component", type: TabList, selector: "p-tablist" }, { kind: "component", type: Tab, selector: "p-tab", inputs: ["value", "disabled"], outputs: ["valueChange"] }, { kind: "ngmodule", type: AvatarModule }, { kind: "component", type: i2$2.Avatar, selector: "p-avatar", inputs: ["label", "icon", "image", "size", "shape", "styleClass", "ariaLabel", "ariaLabelledBy"], outputs: ["onImageError"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "component", type: UserNotificationsComponent, selector: "app-user-notifications" }, { kind: "component", type: AppTopbarApplicationSwitcherComponent, selector: "app-topbar-application-switcher" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
3657
3600
  }
3658
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppTopbar, decorators: [{
3601
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppTopbar, decorators: [{
3659
3602
  type: Component,
3660
3603
  args: [{
3661
3604
  selector: 'app-topbar',
@@ -3786,35 +3729,35 @@ class FooterComponent {
3786
3729
  constructor() {
3787
3730
  this.logoService = inject(LogoService);
3788
3731
  }
3789
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: FooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3790
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: FooterComponent, isStandalone: true, selector: "app-footer", ngImport: i0, template: `
3791
- <div class="layout-footer">
3792
- <div class="flex justify-center flex-1">
3793
- <div class="mr-2 -my-0.5">
3794
- <ng-container
3795
- *ngComponentOutlet="logoService.getLogoComponent(); inputs: { width: 18, height: 18 }"></ng-container>
3796
- </div>
3797
- <span class="font-medium">{{ 'app-info.footer' | translate }}</span>
3798
- </div>
3799
- <p class="mr-auto">{{ 'app-info.version' | translate }}</p>
3800
- </div>
3732
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: FooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3733
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.24", type: FooterComponent, isStandalone: true, selector: "app-footer", ngImport: i0, template: `
3734
+ <div class="layout-footer">
3735
+ <div class="flex justify-center flex-1">
3736
+ <div class="mr-2 -my-0.5">
3737
+ <ng-container
3738
+ *ngComponentOutlet="logoService.getLogoComponent(); inputs: { width: 18, height: 18 }"></ng-container>
3739
+ </div>
3740
+ <span class="font-medium">{{ 'app-info.footer' | translate }}</span>
3741
+ </div>
3742
+ <p class="mr-auto">{{ 'app-info.version' | translate }}</p>
3743
+ </div>
3801
3744
  `, isInline: true, dependencies: [{ kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
3802
3745
  }
3803
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: FooterComponent, decorators: [{
3746
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: FooterComponent, decorators: [{
3804
3747
  type: Component,
3805
3748
  args: [{
3806
3749
  selector: 'app-footer',
3807
- template: `
3808
- <div class="layout-footer">
3809
- <div class="flex justify-center flex-1">
3810
- <div class="mr-2 -my-0.5">
3811
- <ng-container
3812
- *ngComponentOutlet="logoService.getLogoComponent(); inputs: { width: 18, height: 18 }"></ng-container>
3813
- </div>
3814
- <span class="font-medium">{{ 'app-info.footer' | translate }}</span>
3815
- </div>
3816
- <p class="mr-auto">{{ 'app-info.version' | translate }}</p>
3817
- </div>
3750
+ template: `
3751
+ <div class="layout-footer">
3752
+ <div class="flex justify-center flex-1">
3753
+ <div class="mr-2 -my-0.5">
3754
+ <ng-container
3755
+ *ngComponentOutlet="logoService.getLogoComponent(); inputs: { width: 18, height: 18 }"></ng-container>
3756
+ </div>
3757
+ <span class="font-medium">{{ 'app-info.footer' | translate }}</span>
3758
+ </div>
3759
+ <p class="mr-auto">{{ 'app-info.version' | translate }}</p>
3760
+ </div>
3818
3761
  `,
3819
3762
  standalone: true,
3820
3763
  imports: [TranslatePipe, NgComponentOutlet]
@@ -3887,10 +3830,10 @@ class MenuApi extends HttpClient {
3887
3830
  ...params,
3888
3831
  });
3889
3832
  }
3890
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3891
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuApi }); }
3833
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3834
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuApi }); }
3892
3835
  }
3893
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuApi, decorators: [{
3836
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuApi, decorators: [{
3894
3837
  type: Injectable
3895
3838
  }] });
3896
3839
 
@@ -3946,10 +3889,10 @@ class MenuService {
3946
3889
  editModuleInstance(item) {
3947
3890
  return this.menuDataService.editModuleInstance(item);
3948
3891
  }
3949
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3950
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuService }); }
3892
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3893
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuService }); }
3951
3894
  }
3952
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuService, decorators: [{
3895
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuService, decorators: [{
3953
3896
  type: Injectable
3954
3897
  }] });
3955
3898
 
@@ -4186,8 +4129,8 @@ class MenuItemComponent {
4186
4129
  const currentIndex = items.findIndex((item) => item.moduleInstanceId == currentItem.moduleInstanceId);
4187
4130
  return this.findNextVisibleIndex(items, currentIndex) !== -1;
4188
4131
  }
4189
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuItemComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$2.Router }, { token: MenuService }], target: i0.ɵɵFactoryTarget.Component }); }
4190
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: MenuItemComponent, isStandalone: true, selector: "[app-menuitem]", inputs: { item: "item", index: "index", root: "root", parentKey: "parentKey", menuItemCreateDialogComponent: "menuItemCreateDialogComponent", menuItemEditDialogComponent: "menuItemEditDialogComponent", contextMenu: "contextMenu" }, host: { properties: { "class.layout-root-menuitem": "this.root", "class.active-menuitem": "this.activeClass" } }, providers: [ConfirmationService], ngImport: i0, template: `
4132
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuItemComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$5.Router }, { token: MenuService }], target: i0.ɵɵFactoryTarget.Component }); }
4133
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: MenuItemComponent, isStandalone: true, selector: "[app-menuitem]", inputs: { item: "item", index: "index", root: "root", parentKey: "parentKey", menuItemCreateDialogComponent: "menuItemCreateDialogComponent", menuItemEditDialogComponent: "menuItemEditDialogComponent", contextMenu: "contextMenu" }, host: { properties: { "class.layout-root-menuitem": "this.root", "class.active-menuitem": "this.activeClass" } }, providers: [ConfirmationService], ngImport: i0, template: `
4191
4134
  <ng-container>
4192
4135
  <p-confirm-dialog />
4193
4136
  @if (root && item.visible !== false) {
@@ -4260,9 +4203,9 @@ class MenuItemComponent {
4260
4203
  </ul>
4261
4204
  }
4262
4205
  </ng-container>
4263
- `, isInline: true, dependencies: [{ kind: "component", type: MenuItemComponent, selector: "[app-menuitem]", inputs: ["item", "index", "root", "parentKey", "menuItemCreateDialogComponent", "menuItemEditDialogComponent", "contextMenu"] }, { kind: "ngmodule", type: RippleModule }, { kind: "directive", type: i2$4.Ripple, selector: "[pRipple]" }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: ContextMenuModule }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }] }); }
4206
+ `, isInline: true, dependencies: [{ kind: "component", type: MenuItemComponent, selector: "[app-menuitem]", inputs: ["item", "index", "root", "parentKey", "menuItemCreateDialogComponent", "menuItemEditDialogComponent", "contextMenu"] }, { kind: "ngmodule", type: RippleModule }, { kind: "directive", type: i2$3.Ripple, selector: "[pRipple]" }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: ContextMenuModule }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }] }); }
4264
4207
  }
4265
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuItemComponent, decorators: [{
4208
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuItemComponent, decorators: [{
4266
4209
  type: Component,
4267
4210
  args: [{
4268
4211
  // eslint-disable-next-line @angular-eslint/component-selector
@@ -4344,7 +4287,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
4344
4287
  imports: [RippleModule, NgClass, RouterLinkActive, RouterLink, ContextMenuModule, ConfirmDialog],
4345
4288
  providers: [ConfirmationService]
4346
4289
  }]
4347
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1$2.Router }, { type: MenuService }], propDecorators: { item: [{
4290
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1$5.Router }, { type: MenuService }], propDecorators: { item: [{
4348
4291
  type: Input
4349
4292
  }], index: [{
4350
4293
  type: Input
@@ -4427,8 +4370,8 @@ class MenuItemCreateDialogComponent {
4427
4370
  this.visible = true;
4428
4371
  this.visibleChange.emit(this.visible);
4429
4372
  }
4430
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuItemCreateDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4431
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: MenuItemCreateDialogComponent, isStandalone: true, selector: "menu-item-create-dialog", inputs: { visible: "visible" }, outputs: { visibleChange: "visibleChange" }, ngImport: i0, template: `
4373
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuItemCreateDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4374
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: MenuItemCreateDialogComponent, isStandalone: true, selector: "menu-item-create-dialog", inputs: { visible: "visible" }, outputs: { visibleChange: "visibleChange" }, ngImport: i0, template: `
4432
4375
  <p-dialog
4433
4376
  header="{{ 'menuItemCreateDialogComponent.header' | translate }}"
4434
4377
  [modal]="true"
@@ -4517,9 +4460,9 @@ class MenuItemCreateDialogComponent {
4517
4460
  (click)="save()" />
4518
4461
  </div>
4519
4462
  </p-dialog>
4520
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: DialogModule }, { kind: "component", type: i3$4.Dialog, selector: "p-dialog", inputs: ["hostName", "header", "draggable", "resizable", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "appendTo", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4$2.InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i5$1.Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
4463
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i2$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: DialogModule }, { kind: "component", type: i3$4.Dialog, selector: "p-dialog", inputs: ["hostName", "header", "draggable", "resizable", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "appendTo", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4$1.InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i5.Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
4521
4464
  }
4522
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuItemCreateDialogComponent, decorators: [{
4465
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuItemCreateDialogComponent, decorators: [{
4523
4466
  type: Component,
4524
4467
  args: [{
4525
4468
  selector: 'menu-item-create-dialog',
@@ -4684,8 +4627,8 @@ class MenuItemEditDialogComponent {
4684
4627
  this.visible = true;
4685
4628
  this.visibleChange.emit(this.visible);
4686
4629
  }
4687
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuItemEditDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4688
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: MenuItemEditDialogComponent, isStandalone: true, selector: "menu-item-edit-dialog", inputs: { visible: "visible" }, outputs: { visibleChange: "visibleChange" }, ngImport: i0, template: `
4630
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuItemEditDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4631
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.24", type: MenuItemEditDialogComponent, isStandalone: true, selector: "menu-item-edit-dialog", inputs: { visible: "visible" }, outputs: { visibleChange: "visibleChange" }, ngImport: i0, template: `
4689
4632
  <p-dialog
4690
4633
  header="{{ 'menuItemEditDialogComponent.header' | translate }}"
4691
4634
  [modal]="true"
@@ -4763,9 +4706,9 @@ class MenuItemEditDialogComponent {
4763
4706
  (click)="save()" />
4764
4707
  </div>
4765
4708
  </p-dialog>
4766
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: DialogModule }, { kind: "component", type: i3$4.Dialog, selector: "p-dialog", inputs: ["hostName", "header", "draggable", "resizable", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "appendTo", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4$2.InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i5$1.Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i2.MultiSelect, selector: "p-multiSelect, p-multiselect, p-multi-select", inputs: ["id", "ariaLabel", "styleClass", "panelStyle", "panelStyleClass", "inputId", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "dataKey", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "chipIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "placeholder", "options", "filterValue", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus", "highlightOnSelect", "size", "variant", "fluid", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
4709
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i2$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: DialogModule }, { kind: "component", type: i3$4.Dialog, selector: "p-dialog", inputs: ["hostName", "header", "draggable", "resizable", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "closeButtonProps", "maximizeButtonProps", "visible", "style", "position", "role", "appendTo", "content", "contentTemplate", "footerTemplate", "closeIconTemplate", "maximizeIconTemplate", "minimizeIconTemplate", "headlessTemplate"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4$1.InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i5.Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i1.MultiSelect, selector: "p-multiSelect, p-multiselect, p-multi-select", inputs: ["id", "ariaLabel", "styleClass", "panelStyle", "panelStyleClass", "inputId", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "dataKey", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "chipIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "placeholder", "options", "filterValue", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus", "highlightOnSelect", "size", "variant", "fluid", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
4767
4710
  }
4768
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuItemEditDialogComponent, decorators: [{
4711
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuItemEditDialogComponent, decorators: [{
4769
4712
  type: Component,
4770
4713
  args: [{
4771
4714
  imports: [ButtonModule, DialogModule, InputTextModule, SelectModule, FormsModule, TranslatePipe, MultiSelectModule],
@@ -4857,8 +4800,101 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
4857
4800
  type: Output
4858
4801
  }] } });
4859
4802
 
4803
+ var menuComponent$1 = {
4804
+ all: "All",
4805
+ "new": "Add"
4806
+ };
4807
+ var menuItemComponent$1 = {
4808
+ "new": "Add",
4809
+ edit: "Edit",
4810
+ "delete": "Delete",
4811
+ deleteItemConfirmHeader: "Delete",
4812
+ deleteItemConfirmMessage: "Are you sure you want to delete the item?",
4813
+ deleteItemSuccessMessage: "Deleted successfully",
4814
+ deleteItemConfirmRejectButtonPropsLabel: "Cancel",
4815
+ deleteItemConfirmAcceptButtonPropsLabel: "Delete",
4816
+ moveUp: "Move up",
4817
+ moveDown: "Move down"
4818
+ };
4819
+ var menuItemEditDialogComponent$1 = {
4820
+ header: "Edit menu item",
4821
+ parentLabel: "Parent item",
4822
+ label: "Label",
4823
+ module: "Module",
4824
+ selectModule: "Select module",
4825
+ icon: "Icon",
4826
+ cancel: "Cancel",
4827
+ save: "Save",
4828
+ security: "Read access"
4829
+ };
4830
+ var menuItemCreateDialogComponent$1 = {
4831
+ header: "New menu item",
4832
+ parentLabel: "Parent item",
4833
+ label: "Label",
4834
+ module: "Module",
4835
+ selectModule: "Select module",
4836
+ searchModule: "Search module",
4837
+ icon: "Icon",
4838
+ cancel: "Cancel",
4839
+ save: "Save"
4840
+ };
4841
+ var en$b = {
4842
+ menuComponent: menuComponent$1,
4843
+ menuItemComponent: menuItemComponent$1,
4844
+ menuItemEditDialogComponent: menuItemEditDialogComponent$1,
4845
+ menuItemCreateDialogComponent: menuItemCreateDialogComponent$1
4846
+ };
4847
+
4848
+ var menuComponent = {
4849
+ all: "Все",
4850
+ "new": "Добавить"
4851
+ };
4852
+ var menuItemComponent = {
4853
+ "new": "Добавить",
4854
+ edit: "Редактировать",
4855
+ "delete": "Удалить",
4856
+ deleteItemConfirmHeader: "Удаление",
4857
+ deleteItemConfirmMessage: "Вы уверены что хотите удалить элемент?",
4858
+ deleteItemSuccessMessage: "Успешно удалено",
4859
+ deleteItemConfirmRejectButtonPropsLabel: "Отмена",
4860
+ deleteItemConfirmAcceptButtonPropsLabel: "Удалить",
4861
+ moveUp: "Вверх",
4862
+ moveDown: "Вниз"
4863
+ };
4864
+ var menuItemEditDialogComponent = {
4865
+ header: "Редактировать элемент меню",
4866
+ parentLabel: "Родительский узел",
4867
+ label: "Имя",
4868
+ module: "Модуль",
4869
+ selectModule: "Выберите модуль",
4870
+ icon: "Иконка",
4871
+ cancel: "Отмена",
4872
+ save: "Сохранить",
4873
+ security: "Доступ на чтение"
4874
+ };
4875
+ var menuItemCreateDialogComponent = {
4876
+ header: "Новый элемент меню",
4877
+ parentLabel: "Родительский узел",
4878
+ label: "Имя",
4879
+ module: "Модуль",
4880
+ selectModule: "Выберите модуль",
4881
+ searchModule: "Поиск модуля",
4882
+ icon: "Иконка",
4883
+ cancel: "Отмена",
4884
+ save: "Сохранить"
4885
+ };
4886
+ var ru$b = {
4887
+ menuComponent: menuComponent,
4888
+ menuItemComponent: menuItemComponent,
4889
+ menuItemEditDialogComponent: menuItemEditDialogComponent,
4890
+ menuItemCreateDialogComponent: menuItemCreateDialogComponent
4891
+ };
4892
+
4860
4893
  class MenuComponent {
4861
4894
  constructor() {
4895
+ // Registers the whole menu/l10n/menu.*.json bundle, which also covers
4896
+ // menuItemComponent, menuItemEditDialogComponent and menuItemCreateDialogComponent.
4897
+ this.translations = provideTranslations({ en: en$b, ru: ru$b });
4862
4898
  this.menuService = inject(MenuService);
4863
4899
  this.securityService = inject(SecurityService);
4864
4900
  this.translateService = inject(TranslateService);
@@ -4882,8 +4918,8 @@ class MenuComponent {
4882
4918
  }
4883
4919
  ];
4884
4920
  }
4885
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4886
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: MenuComponent, isStandalone: true, selector: "app-menu", providers: [MenuApi], viewQueries: [{ propertyName: "menuItemCreateDialogComponent", first: true, predicate: MenuItemCreateDialogComponent, descendants: true }, { propertyName: "menuItemEditDialogComponent", first: true, predicate: MenuItemEditDialogComponent, descendants: true }, { propertyName: "contextMenu", first: true, predicate: ContextMenu, descendants: true }], ngImport: i0, template: ` <div #empty class="layout-sidebar" (contextmenu)="onContextMenu($event)">
4921
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4922
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: MenuComponent, isStandalone: true, selector: "app-menu", providers: [MenuApi], viewQueries: [{ propertyName: "menuItemCreateDialogComponent", first: true, predicate: MenuItemCreateDialogComponent, descendants: true }, { propertyName: "menuItemEditDialogComponent", first: true, predicate: MenuItemEditDialogComponent, descendants: true }, { propertyName: "contextMenu", first: true, predicate: ContextMenu, descendants: true }], ngImport: i0, template: ` <div #empty class="layout-sidebar" (contextmenu)="onContextMenu($event)">
4887
4923
  <ul class="layout-menu">
4888
4924
  @for (item of menuService.menu; track item; let i = $index) {
4889
4925
  <ng-container>
@@ -4907,9 +4943,9 @@ class MenuComponent {
4907
4943
  <p-contextMenu [target]="empty" />
4908
4944
  <menu-item-create-dialog />
4909
4945
  <menu-item-edit-dialog />
4910
- }`, isInline: true, dependencies: [{ kind: "component", type: MenuItemComponent, selector: "[app-menuitem]", inputs: ["item", "index", "root", "parentKey", "menuItemCreateDialogComponent", "menuItemEditDialogComponent", "contextMenu"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "ngmodule", type: ContextMenuModule }, { kind: "component", type: i1$3.ContextMenu, selector: "p-contextMenu, p-contextmenu, p-context-menu", inputs: ["model", "triggerEvent", "target", "global", "style", "styleClass", "autoZIndex", "baseZIndex", "id", "breakpoint", "ariaLabel", "ariaLabelledBy", "pressDelay", "appendTo"], outputs: ["onShow", "onHide"] }, { kind: "ngmodule", type: DialogModule }, { kind: "ngmodule", type: InputTextModule }, { kind: "component", type: MenuItemCreateDialogComponent, selector: "menu-item-create-dialog", inputs: ["visible"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: MenuItemEditDialogComponent, selector: "menu-item-edit-dialog", inputs: ["visible"], outputs: ["visibleChange"] }] }); }
4946
+ }`, isInline: true, dependencies: [{ kind: "component", type: MenuItemComponent, selector: "[app-menuitem]", inputs: ["item", "index", "root", "parentKey", "menuItemCreateDialogComponent", "menuItemEditDialogComponent", "contextMenu"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "ngmodule", type: ContextMenuModule }, { kind: "component", type: i1$6.ContextMenu, selector: "p-contextMenu, p-contextmenu, p-context-menu", inputs: ["model", "triggerEvent", "target", "global", "style", "styleClass", "autoZIndex", "baseZIndex", "id", "breakpoint", "ariaLabel", "ariaLabelledBy", "pressDelay", "appendTo"], outputs: ["onShow", "onHide"] }, { kind: "ngmodule", type: DialogModule }, { kind: "ngmodule", type: InputTextModule }, { kind: "component", type: MenuItemCreateDialogComponent, selector: "menu-item-create-dialog", inputs: ["visible"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: MenuItemEditDialogComponent, selector: "menu-item-edit-dialog", inputs: ["visible"], outputs: ["visibleChange"] }] }); }
4911
4947
  }
4912
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MenuComponent, decorators: [{
4948
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: MenuComponent, decorators: [{
4913
4949
  type: Component,
4914
4950
  args: [{
4915
4951
  imports: [
@@ -4964,10 +5000,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
4964
5000
 
4965
5001
  class SidebarComponent {
4966
5002
  constructor() { }
4967
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: SidebarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4968
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: SidebarComponent, isStandalone: true, selector: "app-sidebar", ngImport: i0, template: ` <app-menu></app-menu>`, isInline: true, dependencies: [{ kind: "component", type: MenuComponent, selector: "app-menu" }] }); }
5003
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: SidebarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5004
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.24", type: SidebarComponent, isStandalone: true, selector: "app-sidebar", ngImport: i0, template: ` <app-menu></app-menu>`, isInline: true, dependencies: [{ kind: "component", type: MenuComponent, selector: "app-menu" }] }); }
4969
5005
  }
4970
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: SidebarComponent, decorators: [{
5006
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: SidebarComponent, decorators: [{
4971
5007
  type: Component,
4972
5008
  args: [{
4973
5009
  selector: 'app-sidebar',
@@ -5054,39 +5090,39 @@ class AppLayoutComponent {
5054
5090
  this.menuOutsideClickListener();
5055
5091
  }
5056
5092
  }
5057
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5058
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: AppLayoutComponent, isStandalone: true, selector: "app-layout", providers: [MenuService, MenuApi], viewQueries: [{ propertyName: "appSidebar", first: true, predicate: SidebarComponent, descendants: true }, { propertyName: "appTopBar", first: true, predicate: AppTopbar, descendants: true }], ngImport: i0, template: `
5059
- <div class="layout-wrapper" [ngClass]="containerClass">
5060
- <app-topbar></app-topbar>
5061
- <app-sidebar></app-sidebar>
5062
- <div class="layout-main-container">
5063
- <div class="layout-main">
5064
- <router-outlet></router-outlet>
5065
- </div>
5066
- <app-footer></app-footer>
5067
- </div>
5068
- <div class="layout-mask animate-fadein"></div>
5069
- </div>
5070
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: AppTopbar, selector: "app-topbar" }, { kind: "component", type: SidebarComponent, selector: "app-sidebar" }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1$2.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: FooterComponent, selector: "app-footer" }] }); }
5093
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5094
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.24", type: AppLayoutComponent, isStandalone: true, selector: "app-layout", providers: [MenuService, MenuApi], viewQueries: [{ propertyName: "appSidebar", first: true, predicate: SidebarComponent, descendants: true }, { propertyName: "appTopBar", first: true, predicate: AppTopbar, descendants: true }], ngImport: i0, template: `
5095
+ <div class="layout-wrapper" [ngClass]="containerClass">
5096
+ <app-topbar></app-topbar>
5097
+ <app-sidebar></app-sidebar>
5098
+ <div class="layout-main-container">
5099
+ <div class="layout-main">
5100
+ <router-outlet></router-outlet>
5101
+ </div>
5102
+ <app-footer></app-footer>
5103
+ </div>
5104
+ <div class="layout-mask animate-fadein"></div>
5105
+ </div>
5106
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: AppTopbar, selector: "app-topbar" }, { kind: "component", type: SidebarComponent, selector: "app-sidebar" }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1$5.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: FooterComponent, selector: "app-footer" }] }); }
5071
5107
  }
5072
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppLayoutComponent, decorators: [{
5108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppLayoutComponent, decorators: [{
5073
5109
  type: Component,
5074
5110
  args: [{
5075
5111
  selector: 'app-layout',
5076
5112
  standalone: true,
5077
5113
  imports: [CommonModule, AppTopbar, SidebarComponent, RouterModule, FooterComponent],
5078
- template: `
5079
- <div class="layout-wrapper" [ngClass]="containerClass">
5080
- <app-topbar></app-topbar>
5081
- <app-sidebar></app-sidebar>
5082
- <div class="layout-main-container">
5083
- <div class="layout-main">
5084
- <router-outlet></router-outlet>
5085
- </div>
5086
- <app-footer></app-footer>
5087
- </div>
5088
- <div class="layout-mask animate-fadein"></div>
5089
- </div>
5114
+ template: `
5115
+ <div class="layout-wrapper" [ngClass]="containerClass">
5116
+ <app-topbar></app-topbar>
5117
+ <app-sidebar></app-sidebar>
5118
+ <div class="layout-main-container">
5119
+ <div class="layout-main">
5120
+ <router-outlet></router-outlet>
5121
+ </div>
5122
+ <app-footer></app-footer>
5123
+ </div>
5124
+ <div class="layout-mask animate-fadein"></div>
5125
+ </div>
5090
5126
  `,
5091
5127
  providers: [MenuService, MenuApi]
5092
5128
  }]
@@ -5109,8 +5145,8 @@ class AppFloatingConfiguratorComponent {
5109
5145
  darkTheme: !state.darkTheme
5110
5146
  }));
5111
5147
  }
5112
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppFloatingConfiguratorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5113
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: AppFloatingConfiguratorComponent, isStandalone: true, selector: "app-floating-configurator", ngImport: i0, template: `
5148
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppFloatingConfiguratorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5149
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.24", type: AppFloatingConfiguratorComponent, isStandalone: true, selector: "app-floating-configurator", ngImport: i0, template: `
5114
5150
  <div class="fixed flex gap-4 top-8 right-8">
5115
5151
  <p-button
5116
5152
  id="oip-app-floating-configurator-dark-theme-button"
@@ -5134,9 +5170,9 @@ class AppFloatingConfiguratorComponent {
5134
5170
  <app-configurator />
5135
5171
  </div>
5136
5172
  </div>
5137
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: StyleClassModule }, { kind: "directive", type: i3$2.StyleClass, selector: "[pStyleClass]", inputs: ["pStyleClass", "enterFromClass", "enterActiveClass", "enterToClass", "leaveFromClass", "leaveActiveClass", "leaveToClass", "hideOnOutsideClick", "toggleClass", "hideOnEscape", "hideOnResize", "resizeSelector"] }, { kind: "component", type: AppConfiguratorComponent, selector: "app-configurator" }] }); }
5173
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: StyleClassModule }, { kind: "directive", type: i3$3.StyleClass, selector: "[pStyleClass]", inputs: ["pStyleClass", "enterFromClass", "enterActiveClass", "enterToClass", "leaveFromClass", "leaveActiveClass", "leaveToClass", "hideOnOutsideClick", "toggleClass", "hideOnEscape", "hideOnResize", "resizeSelector"] }, { kind: "component", type: AppConfiguratorComponent, selector: "app-configurator" }] }); }
5138
5174
  }
5139
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppFloatingConfiguratorComponent, decorators: [{
5175
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppFloatingConfiguratorComponent, decorators: [{
5140
5176
  type: Component,
5141
5177
  args: [{
5142
5178
  selector: 'app-floating-configurator',
@@ -5175,7 +5211,7 @@ var notfound$1 = {
5175
5211
  description: "Requested resource is not available.",
5176
5212
  button: "Go to home"
5177
5213
  };
5178
- var en$7 = {
5214
+ var en$a = {
5179
5215
  notfound: notfound$1
5180
5216
  };
5181
5217
 
@@ -5185,17 +5221,16 @@ var notfound = {
5185
5221
  description: "Запрашиваемый ресурс недоступен.",
5186
5222
  button: "На главную"
5187
5223
  };
5188
- var ru$7 = {
5224
+ var ru$a = {
5189
5225
  notfound: notfound
5190
5226
  };
5191
5227
 
5192
- L10nService.registerTranslations({ en: en$7, ru: ru$7 });
5193
5228
  class NotfoundComponent {
5194
- constructor(l10nService) {
5195
- l10nService.get('notfound');
5229
+ constructor() {
5230
+ this.translations = provideTranslations({ en: en$a, ru: ru$a });
5196
5231
  }
5197
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: NotfoundComponent, deps: [{ token: L10nService }], target: i0.ɵɵFactoryTarget.Component }); }
5198
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: NotfoundComponent, isStandalone: true, selector: "app-notfound", ngImport: i0, template: ` <app-floating-configurator />
5232
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: NotfoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5233
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.24", type: NotfoundComponent, isStandalone: true, selector: "app-notfound", ngImport: i0, template: ` <app-floating-configurator />
5199
5234
  <div class="flex items-center justify-center min-h-screen overflow-hidden">
5200
5235
  <div class="flex flex-col items-center justify-center">
5201
5236
  <div
@@ -5215,9 +5250,9 @@ class NotfoundComponent {
5215
5250
  </div>
5216
5251
  </div>
5217
5252
  </div>
5218
- </div>`, isInline: true, dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: LogoComponent, selector: "logo", inputs: ["width", "height"] }, { kind: "component", type: Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: AppFloatingConfiguratorComponent, selector: "app-floating-configurator" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2$5.TranslatePipe, name: "translate" }] }); }
5253
+ </div>`, isInline: true, dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: LogoComponent, selector: "logo", inputs: ["width", "height"] }, { kind: "component", type: Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: AppFloatingConfiguratorComponent, selector: "app-floating-configurator" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$7.TranslatePipe, name: "translate" }] }); }
5219
5254
  }
5220
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: NotfoundComponent, decorators: [{
5255
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: NotfoundComponent, decorators: [{
5221
5256
  type: Component,
5222
5257
  args: [{
5223
5258
  selector: 'app-notfound',
@@ -5245,10 +5280,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
5245
5280
  imports: [RouterLink, LogoComponent, Button, AppFloatingConfiguratorComponent, TranslateModule],
5246
5281
  standalone: true
5247
5282
  }]
5248
- }], ctorParameters: () => [{ type: L10nService }] });
5283
+ }] });
5284
+
5285
+ var unauthorized$1 = {
5286
+ welcomeToOip: "Welcome to OIP!",
5287
+ signInToContinue: "Sign in to continue",
5288
+ signIn: "Sign In"
5289
+ };
5290
+ var en$9 = {
5291
+ unauthorized: unauthorized$1
5292
+ };
5293
+
5294
+ var unauthorized = {
5295
+ welcomeToOip: "Добро пожаловать в OIP!",
5296
+ signInToContinue: "Войдите чтобы продолжить",
5297
+ signIn: "Войти"
5298
+ };
5299
+ var ru$9 = {
5300
+ unauthorized: unauthorized
5301
+ };
5249
5302
 
5250
5303
  class UnauthorizedComponent {
5251
5304
  constructor() {
5305
+ this.translations = provideTranslations({ en: en$9, ru: ru$9 });
5252
5306
  this.securityService = inject(SecurityService);
5253
5307
  this.route = inject(ActivatedRoute);
5254
5308
  }
@@ -5264,68 +5318,68 @@ class UnauthorizedComponent {
5264
5318
  const returnUrl = this.route.snapshot.queryParamMap.get('returnUrl') || '/';
5265
5319
  this.securityService.authorize(returnUrl);
5266
5320
  }
5267
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: UnauthorizedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5268
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: UnauthorizedComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
5269
- <app-floating-configurator />
5270
- <div
5271
- class="bg-surface-50 dark:bg-surface-950 flex items-center justify-center min-h-screen min-w-[100vw] overflow-hidden">
5272
- <div class="flex flex-col items-center justify-center">
5273
- <div
5274
- style="border-radius: 56px; padding: 0.3rem; background: linear-gradient(180deg, var(--primary-color) 10%, rgba(33, 150, 243, 0) 30%)">
5275
- <div class="w-full bg-surface-0 dark:bg-surface-900 py-20 px-8 sm:px-20" style="border-radius: 53px">
5276
- <div class="flex flex-col items-center justify-center">
5277
- <logo [height]="96" [width]="96" />
5278
- </div>
5279
- <div class="text-center mb-8">
5280
- <div class="text-surface-900 dark:text-surface-0 text-3xl font-medium mb-4">
5281
- {{ 'unauthorized.welcomeToOip' | translate }}
5282
- </div>
5283
- <span class="text-muted-color font-medium">{{ 'unauthorized.signInToContinue' | translate }}</span>
5284
- </div>
5285
- <div>
5286
- <p-button
5287
- id="oip-unauthorized-error-sign-in-button"
5288
- label="{{ 'unauthorized.signIn' | translate }}"
5289
- styleClass="w-full"
5290
- (click)="signIn()"></p-button>
5291
- </div>
5292
- </div>
5293
- </div>
5294
- </div>
5295
- </div>
5296
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: RippleModule }, { kind: "component", type: LogoComponent, selector: "logo", inputs: ["width", "height"] }, { kind: "component", type: AppFloatingConfiguratorComponent, selector: "app-floating-configurator" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
5321
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: UnauthorizedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5322
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.24", type: UnauthorizedComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
5323
+ <app-floating-configurator />
5324
+ <div
5325
+ class="bg-surface-50 dark:bg-surface-950 flex items-center justify-center min-h-screen min-w-[100vw] overflow-hidden">
5326
+ <div class="flex flex-col items-center justify-center">
5327
+ <div
5328
+ style="border-radius: 56px; padding: 0.3rem; background: linear-gradient(180deg, var(--primary-color) 10%, rgba(33, 150, 243, 0) 30%)">
5329
+ <div class="w-full bg-surface-0 dark:bg-surface-900 py-20 px-8 sm:px-20" style="border-radius: 53px">
5330
+ <div class="flex flex-col items-center justify-center">
5331
+ <logo [height]="96" [width]="96" />
5332
+ </div>
5333
+ <div class="text-center mb-8">
5334
+ <div class="text-surface-900 dark:text-surface-0 text-3xl font-medium mb-4">
5335
+ {{ 'unauthorized.welcomeToOip' | translate }}
5336
+ </div>
5337
+ <span class="text-muted-color font-medium">{{ 'unauthorized.signInToContinue' | translate }}</span>
5338
+ </div>
5339
+ <div>
5340
+ <p-button
5341
+ id="oip-unauthorized-error-sign-in-button"
5342
+ label="{{ 'unauthorized.signIn' | translate }}"
5343
+ styleClass="w-full"
5344
+ (click)="signIn()"></p-button>
5345
+ </div>
5346
+ </div>
5347
+ </div>
5348
+ </div>
5349
+ </div>
5350
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: RippleModule }, { kind: "component", type: LogoComponent, selector: "logo", inputs: ["width", "height"] }, { kind: "component", type: AppFloatingConfiguratorComponent, selector: "app-floating-configurator" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
5297
5351
  }
5298
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: UnauthorizedComponent, decorators: [{
5352
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: UnauthorizedComponent, decorators: [{
5299
5353
  type: Component,
5300
5354
  args: [{
5301
- template: `
5302
- <app-floating-configurator />
5303
- <div
5304
- class="bg-surface-50 dark:bg-surface-950 flex items-center justify-center min-h-screen min-w-[100vw] overflow-hidden">
5305
- <div class="flex flex-col items-center justify-center">
5306
- <div
5307
- style="border-radius: 56px; padding: 0.3rem; background: linear-gradient(180deg, var(--primary-color) 10%, rgba(33, 150, 243, 0) 30%)">
5308
- <div class="w-full bg-surface-0 dark:bg-surface-900 py-20 px-8 sm:px-20" style="border-radius: 53px">
5309
- <div class="flex flex-col items-center justify-center">
5310
- <logo [height]="96" [width]="96" />
5311
- </div>
5312
- <div class="text-center mb-8">
5313
- <div class="text-surface-900 dark:text-surface-0 text-3xl font-medium mb-4">
5314
- {{ 'unauthorized.welcomeToOip' | translate }}
5315
- </div>
5316
- <span class="text-muted-color font-medium">{{ 'unauthorized.signInToContinue' | translate }}</span>
5317
- </div>
5318
- <div>
5319
- <p-button
5320
- id="oip-unauthorized-error-sign-in-button"
5321
- label="{{ 'unauthorized.signIn' | translate }}"
5322
- styleClass="w-full"
5323
- (click)="signIn()"></p-button>
5324
- </div>
5325
- </div>
5326
- </div>
5327
- </div>
5328
- </div>
5355
+ template: `
5356
+ <app-floating-configurator />
5357
+ <div
5358
+ class="bg-surface-50 dark:bg-surface-950 flex items-center justify-center min-h-screen min-w-[100vw] overflow-hidden">
5359
+ <div class="flex flex-col items-center justify-center">
5360
+ <div
5361
+ style="border-radius: 56px; padding: 0.3rem; background: linear-gradient(180deg, var(--primary-color) 10%, rgba(33, 150, 243, 0) 30%)">
5362
+ <div class="w-full bg-surface-0 dark:bg-surface-900 py-20 px-8 sm:px-20" style="border-radius: 53px">
5363
+ <div class="flex flex-col items-center justify-center">
5364
+ <logo [height]="96" [width]="96" />
5365
+ </div>
5366
+ <div class="text-center mb-8">
5367
+ <div class="text-surface-900 dark:text-surface-0 text-3xl font-medium mb-4">
5368
+ {{ 'unauthorized.welcomeToOip' | translate }}
5369
+ </div>
5370
+ <span class="text-muted-color font-medium">{{ 'unauthorized.signInToContinue' | translate }}</span>
5371
+ </div>
5372
+ <div>
5373
+ <p-button
5374
+ id="oip-unauthorized-error-sign-in-button"
5375
+ label="{{ 'unauthorized.signIn' | translate }}"
5376
+ styleClass="w-full"
5377
+ (click)="signIn()"></p-button>
5378
+ </div>
5379
+ </div>
5380
+ </div>
5381
+ </div>
5382
+ </div>
5329
5383
  `,
5330
5384
  imports: [
5331
5385
  ButtonModule,
@@ -5338,9 +5392,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
5338
5392
  }]
5339
5393
  }] });
5340
5394
 
5395
+ var access$1 = {
5396
+ title: "Access Denied",
5397
+ message: "You do not have the necessary permissions. Please contact admins.",
5398
+ button: "Go to Dashboard"
5399
+ };
5400
+ var en$8 = {
5401
+ access: access$1
5402
+ };
5403
+
5404
+ var access = {
5405
+ title: "Доступ запрещён",
5406
+ message: "У вас недостаточно прав. Пожалуйста, обратитесь к администраторам.",
5407
+ button: "На главную"
5408
+ };
5409
+ var ru$8 = {
5410
+ access: access
5411
+ };
5412
+
5341
5413
  class AccessComponent {
5342
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AccessComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5343
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: AccessComponent, isStandalone: true, selector: "app-access", ngImport: i0, template: `<div
5414
+ constructor() {
5415
+ this.translations = provideTranslations({ en: en$8, ru: ru$8 });
5416
+ }
5417
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AccessComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5418
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.24", type: AccessComponent, isStandalone: true, selector: "app-access", ngImport: i0, template: `<div
5344
5419
  class="surface-ground flex align-items-center justify-content-center min-h-screen min-w-screen overflow-hidden">
5345
5420
  <div class="flex flex-column align-items-center justify-content-center">
5346
5421
  <img alt="Sakai logo" class="mb-5 w-6rem flex-shrink-0" src="assets/demo/images/access/logo-orange.svg" />
@@ -5355,24 +5430,24 @@ class AccessComponent {
5355
5430
  style="width:3.2rem; height:3.2rem;">
5356
5431
  <i class="text-50 pi pi-fw pi-lock text-2xl"></i>
5357
5432
  </div>
5358
- <h1 class="text-900 font-bold text-4xl lg:text-5xl mb-2">Access Denied</h1>
5359
- <span class="text-600 mb-5">You do not have the necessary permisions. Please contact admins.</span>
5433
+ <h1 class="text-900 font-bold text-4xl lg:text-5xl mb-2">{{ 'access.title' | translate }}</h1>
5434
+ <span class="text-600 mb-5">{{ 'access.message' | translate }}</span>
5360
5435
  <img alt="Access denied" class="mb-5" src="assets/demo/images/access/asset-access.svg" width="80%" />
5361
5436
  <p-button
5362
5437
  class="p-button-text"
5363
5438
  icon="pi pi-arrow-left"
5364
5439
  id="oip-app-access-go-to-dashboard-button"
5365
- label="Go to Dashboard"
5366
5440
  pButton
5367
5441
  pRipple
5442
+ [label]="'access.button' | translate"
5368
5443
  [routerLink]="['/']"></p-button>
5369
5444
  </div>
5370
5445
  </div>
5371
5446
  </div>
5372
5447
  </div>
5373
- </div>`, isInline: true, dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i1$1.ButtonDirective, selector: "[pButton]", inputs: ["ptButtonDirective", "hostName", "text", "plain", "raised", "size", "outlined", "rounded", "iconPos", "loadingIcon", "fluid", "label", "icon", "loading", "buttonProps", "severity"] }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: RippleModule }, { kind: "directive", type: i2$4.Ripple, selector: "[pRipple]" }] }); }
5448
+ </div>`, isInline: true, dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i1$2.ButtonDirective, selector: "[pButton]", inputs: ["ptButtonDirective", "hostName", "text", "plain", "raised", "size", "outlined", "rounded", "iconPos", "loadingIcon", "fluid", "label", "icon", "loading", "buttonProps", "severity"] }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: RippleModule }, { kind: "directive", type: i2$3.Ripple, selector: "[pRipple]" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
5374
5449
  }
5375
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AccessComponent, decorators: [{
5450
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AccessComponent, decorators: [{
5376
5451
  type: Component,
5377
5452
  args: [{
5378
5453
  selector: 'app-access',
@@ -5391,98 +5466,119 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
5391
5466
  style="width:3.2rem; height:3.2rem;">
5392
5467
  <i class="text-50 pi pi-fw pi-lock text-2xl"></i>
5393
5468
  </div>
5394
- <h1 class="text-900 font-bold text-4xl lg:text-5xl mb-2">Access Denied</h1>
5395
- <span class="text-600 mb-5">You do not have the necessary permisions. Please contact admins.</span>
5469
+ <h1 class="text-900 font-bold text-4xl lg:text-5xl mb-2">{{ 'access.title' | translate }}</h1>
5470
+ <span class="text-600 mb-5">{{ 'access.message' | translate }}</span>
5396
5471
  <img alt="Access denied" class="mb-5" src="assets/demo/images/access/asset-access.svg" width="80%" />
5397
5472
  <p-button
5398
5473
  class="p-button-text"
5399
5474
  icon="pi pi-arrow-left"
5400
5475
  id="oip-app-access-go-to-dashboard-button"
5401
- label="Go to Dashboard"
5402
5476
  pButton
5403
5477
  pRipple
5478
+ [label]="'access.button' | translate"
5404
5479
  [routerLink]="['/']"></p-button>
5405
5480
  </div>
5406
5481
  </div>
5407
5482
  </div>
5408
5483
  </div>
5409
5484
  </div>`,
5410
- imports: [RouterLink, ButtonModule, RippleModule],
5485
+ imports: [RouterLink, ButtonModule, RippleModule, TranslatePipe],
5411
5486
  standalone: true
5412
5487
  }]
5413
5488
  }] });
5414
5489
 
5490
+ var error$1 = {
5491
+ title: "Error Occurred",
5492
+ message: "Requested resource is not available.",
5493
+ button: "Go to Dashboard"
5494
+ };
5495
+ var en$7 = {
5496
+ error: error$1
5497
+ };
5498
+
5499
+ var error = {
5500
+ title: "Произошла ошибка",
5501
+ message: "Запрашиваемый ресурс недоступен.",
5502
+ button: "На главную"
5503
+ };
5504
+ var ru$7 = {
5505
+ error: error
5506
+ };
5507
+
5415
5508
  class ErrorComponent {
5416
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5417
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: ErrorComponent, isStandalone: true, selector: "app-error", ngImport: i0, template: `<div
5418
- class="surface-ground flex align-items-center justify-content-center min-h-screen min-w-screen overflow-hidden">
5419
- <div class="flex flex-column align-items-center justify-content-center">
5420
- <img alt="Sakai logo" class="mb-5 w-6rem flex-shrink-0" src="assets/demo/images/error/logo-error.svg" />
5421
- <div
5422
- style="border-radius:56px; padding:0.3rem; background: linear-gradient(180deg, rgba(233, 30, 99, 0.4) 10%, rgba(33, 150, 243, 0) 30%);">
5423
- <div
5424
- class="w-full surface-card py-8 px-5 sm:px-8 flex flex-column align-items-center"
5425
- style="border-radius:53px">
5426
- <div class="grid flex flex-column align-items-center">
5427
- <div
5428
- class="flex justify-content-center align-items-center bg-pink-500 border-circle"
5429
- style="height:3.2rem; width:3.2rem;">
5430
- <i class="pi pi-fw pi-exclamation-circle text-2xl text-white"></i>
5431
- </div>
5432
- <h1 class="text-900 font-bold text-5xl mb-2">Error Occured</h1>
5433
- <span class="text-600 mb-5">Requested resource is not available.</span>
5434
- <img alt="Error" class="mb-5" src="assets/demo/images/error/asset-error.svg" width="80%" />
5435
- <button
5436
- class="p-button-text"
5437
- icon="pi pi-arrow-left"
5438
- id="oip-app-error-go-to-dashboard-button"
5439
- label="Go to Dashboard"
5440
- pButton
5441
- pRipple
5442
- [routerLink]="['/']"></button>
5443
- </div>
5444
- </div>
5445
- </div>
5446
- </div>
5447
- </div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i1$1.ButtonDirective, selector: "[pButton]", inputs: ["ptButtonDirective", "hostName", "text", "plain", "raised", "size", "outlined", "rounded", "iconPos", "loadingIcon", "fluid", "label", "icon", "loading", "buttonProps", "severity"] }, { kind: "ngmodule", type: RippleModule }, { kind: "directive", type: i2$4.Ripple, selector: "[pRipple]" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
5509
+ constructor() {
5510
+ this.translations = provideTranslations({ en: en$7, ru: ru$7 });
5511
+ }
5512
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5513
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.24", type: ErrorComponent, isStandalone: true, selector: "app-error", ngImport: i0, template: `<div
5514
+ class="surface-ground flex align-items-center justify-content-center min-h-screen min-w-screen overflow-hidden">
5515
+ <div class="flex flex-column align-items-center justify-content-center">
5516
+ <img alt="Sakai logo" class="mb-5 w-6rem flex-shrink-0" src="assets/demo/images/error/logo-error.svg" />
5517
+ <div
5518
+ style="border-radius:56px; padding:0.3rem; background: linear-gradient(180deg, rgba(233, 30, 99, 0.4) 10%, rgba(33, 150, 243, 0) 30%);">
5519
+ <div
5520
+ class="w-full surface-card py-8 px-5 sm:px-8 flex flex-column align-items-center"
5521
+ style="border-radius:53px">
5522
+ <div class="grid flex flex-column align-items-center">
5523
+ <div
5524
+ class="flex justify-content-center align-items-center bg-pink-500 border-circle"
5525
+ style="height:3.2rem; width:3.2rem;">
5526
+ <i class="pi pi-fw pi-exclamation-circle text-2xl text-white"></i>
5527
+ </div>
5528
+ <h1 class="text-900 font-bold text-5xl mb-2">{{ 'error.title' | translate }}</h1>
5529
+ <span class="text-600 mb-5">{{ 'error.message' | translate }}</span>
5530
+ <img alt="Error" class="mb-5" src="assets/demo/images/error/asset-error.svg" width="80%" />
5531
+ <button
5532
+ class="p-button-text"
5533
+ icon="pi pi-arrow-left"
5534
+ id="oip-app-error-go-to-dashboard-button"
5535
+ pButton
5536
+ pRipple
5537
+ [label]="'error.button' | translate"
5538
+ [routerLink]="['/']"></button>
5539
+ </div>
5540
+ </div>
5541
+ </div>
5542
+ </div>
5543
+ </div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i1$2.ButtonDirective, selector: "[pButton]", inputs: ["ptButtonDirective", "hostName", "text", "plain", "raised", "size", "outlined", "rounded", "iconPos", "loadingIcon", "fluid", "label", "icon", "loading", "buttonProps", "severity"] }, { kind: "ngmodule", type: RippleModule }, { kind: "directive", type: i2$3.Ripple, selector: "[pRipple]" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
5448
5544
  }
5449
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ErrorComponent, decorators: [{
5545
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ErrorComponent, decorators: [{
5450
5546
  type: Component,
5451
5547
  args: [{
5452
5548
  selector: 'app-error',
5453
- template: `<div
5454
- class="surface-ground flex align-items-center justify-content-center min-h-screen min-w-screen overflow-hidden">
5455
- <div class="flex flex-column align-items-center justify-content-center">
5456
- <img alt="Sakai logo" class="mb-5 w-6rem flex-shrink-0" src="assets/demo/images/error/logo-error.svg" />
5457
- <div
5458
- style="border-radius:56px; padding:0.3rem; background: linear-gradient(180deg, rgba(233, 30, 99, 0.4) 10%, rgba(33, 150, 243, 0) 30%);">
5459
- <div
5460
- class="w-full surface-card py-8 px-5 sm:px-8 flex flex-column align-items-center"
5461
- style="border-radius:53px">
5462
- <div class="grid flex flex-column align-items-center">
5463
- <div
5464
- class="flex justify-content-center align-items-center bg-pink-500 border-circle"
5465
- style="height:3.2rem; width:3.2rem;">
5466
- <i class="pi pi-fw pi-exclamation-circle text-2xl text-white"></i>
5467
- </div>
5468
- <h1 class="text-900 font-bold text-5xl mb-2">Error Occured</h1>
5469
- <span class="text-600 mb-5">Requested resource is not available.</span>
5470
- <img alt="Error" class="mb-5" src="assets/demo/images/error/asset-error.svg" width="80%" />
5471
- <button
5472
- class="p-button-text"
5473
- icon="pi pi-arrow-left"
5474
- id="oip-app-error-go-to-dashboard-button"
5475
- label="Go to Dashboard"
5476
- pButton
5477
- pRipple
5478
- [routerLink]="['/']"></button>
5479
- </div>
5480
- </div>
5481
- </div>
5482
- </div>
5549
+ template: `<div
5550
+ class="surface-ground flex align-items-center justify-content-center min-h-screen min-w-screen overflow-hidden">
5551
+ <div class="flex flex-column align-items-center justify-content-center">
5552
+ <img alt="Sakai logo" class="mb-5 w-6rem flex-shrink-0" src="assets/demo/images/error/logo-error.svg" />
5553
+ <div
5554
+ style="border-radius:56px; padding:0.3rem; background: linear-gradient(180deg, rgba(233, 30, 99, 0.4) 10%, rgba(33, 150, 243, 0) 30%);">
5555
+ <div
5556
+ class="w-full surface-card py-8 px-5 sm:px-8 flex flex-column align-items-center"
5557
+ style="border-radius:53px">
5558
+ <div class="grid flex flex-column align-items-center">
5559
+ <div
5560
+ class="flex justify-content-center align-items-center bg-pink-500 border-circle"
5561
+ style="height:3.2rem; width:3.2rem;">
5562
+ <i class="pi pi-fw pi-exclamation-circle text-2xl text-white"></i>
5563
+ </div>
5564
+ <h1 class="text-900 font-bold text-5xl mb-2">{{ 'error.title' | translate }}</h1>
5565
+ <span class="text-600 mb-5">{{ 'error.message' | translate }}</span>
5566
+ <img alt="Error" class="mb-5" src="assets/demo/images/error/asset-error.svg" width="80%" />
5567
+ <button
5568
+ class="p-button-text"
5569
+ icon="pi pi-arrow-left"
5570
+ id="oip-app-error-go-to-dashboard-button"
5571
+ pButton
5572
+ pRipple
5573
+ [label]="'error.button' | translate"
5574
+ [routerLink]="['/']"></button>
5575
+ </div>
5576
+ </div>
5577
+ </div>
5578
+ </div>
5483
5579
  </div>`,
5484
5580
  standalone: true,
5485
- imports: [ButtonModule, RippleModule, RouterLink]
5581
+ imports: [ButtonModule, RippleModule, RouterLink, TranslatePipe]
5486
5582
  }]
5487
5583
  }] });
5488
5584
 
@@ -5518,15 +5614,14 @@ var ru$6 = {
5518
5614
  profileComponent: profileComponent
5519
5615
  };
5520
5616
 
5521
- L10nService.registerTranslations({ en: en$6, ru: ru$6 });
5522
5617
  class UserProfileComponent {
5523
- constructor(l10nService) {
5618
+ constructor() {
5619
+ this.translations = provideTranslations({ en: en$6, ru: ru$6 });
5524
5620
  this.userService = inject(UserService);
5525
5621
  this.msgService = inject(MsgService);
5526
5622
  this.translateService = inject(TranslateService);
5527
5623
  this.userProfileApi = inject(UserProfileApi);
5528
5624
  this.confirmationService = inject(ConfirmationService);
5529
- l10nService.get('profileComponent');
5530
5625
  }
5531
5626
  async uploadPhoto(event) {
5532
5627
  const file = event.files?.[0];
@@ -5572,8 +5667,8 @@ class UserProfileComponent {
5572
5667
  this.msgService.errorFromException(error, this.translateService.instant('profileComponent.failedToDeletePhoto'));
5573
5668
  }
5574
5669
  }
5575
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: UserProfileComponent, deps: [{ token: L10nService }], target: i0.ɵɵFactoryTarget.Component }); }
5576
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: UserProfileComponent, isStandalone: true, selector: "user-profile", providers: [ConfirmationService], ngImport: i0, template: `
5670
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: UserProfileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5671
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: UserProfileComponent, isStandalone: true, selector: "user-profile", providers: [ConfirmationService], ngImport: i0, template: `
5577
5672
  <p-confirmDialog></p-confirmDialog>
5578
5673
  <p-avatar
5579
5674
  class="mr-2"
@@ -5603,9 +5698,9 @@ class UserProfileComponent {
5603
5698
  (onClick)="confirmDeletePhoto($event)" />
5604
5699
  }
5605
5700
  </div>
5606
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: FileUploadModule }, { kind: "component", type: i2$6.FileUpload, selector: "p-fileupload, p-fileUpload", inputs: ["name", "url", "method", "multiple", "accept", "disabled", "auto", "withCredentials", "maxFileSize", "invalidFileSizeMessageSummary", "invalidFileSizeMessageDetail", "invalidFileTypeMessageSummary", "invalidFileTypeMessageDetail", "invalidFileLimitMessageDetail", "invalidFileLimitMessageSummary", "style", "styleClass", "previewWidth", "chooseLabel", "uploadLabel", "cancelLabel", "chooseIcon", "uploadIcon", "cancelIcon", "showUploadButton", "showCancelButton", "mode", "headers", "customUpload", "fileLimit", "uploadStyleClass", "cancelStyleClass", "removeStyleClass", "chooseStyleClass", "chooseButtonProps", "uploadButtonProps", "cancelButtonProps", "files"], outputs: ["onBeforeUpload", "onSend", "onUpload", "onError", "onClear", "onRemove", "onSelect", "onProgress", "uploadHandler", "onImageError", "onRemoveUploadedFile"] }, { kind: "ngmodule", type: ImageModule }, { kind: "ngmodule", type: AvatarModule }, { kind: "component", type: i3$3.Avatar, selector: "p-avatar", inputs: ["label", "icon", "image", "size", "shape", "styleClass", "ariaLabel", "ariaLabelledBy"], outputs: ["onImageError"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
5701
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: FileUploadModule }, { kind: "component", type: i1$8.FileUpload, selector: "p-fileupload, p-fileUpload", inputs: ["name", "url", "method", "multiple", "accept", "disabled", "auto", "withCredentials", "maxFileSize", "invalidFileSizeMessageSummary", "invalidFileSizeMessageDetail", "invalidFileTypeMessageSummary", "invalidFileTypeMessageDetail", "invalidFileLimitMessageDetail", "invalidFileLimitMessageSummary", "style", "styleClass", "previewWidth", "chooseLabel", "uploadLabel", "cancelLabel", "chooseIcon", "uploadIcon", "cancelIcon", "showUploadButton", "showCancelButton", "mode", "headers", "customUpload", "fileLimit", "uploadStyleClass", "cancelStyleClass", "removeStyleClass", "chooseStyleClass", "chooseButtonProps", "uploadButtonProps", "cancelButtonProps", "files"], outputs: ["onBeforeUpload", "onSend", "onUpload", "onError", "onClear", "onRemove", "onSelect", "onProgress", "uploadHandler", "onImageError", "onRemoveUploadedFile"] }, { kind: "ngmodule", type: ImageModule }, { kind: "ngmodule", type: AvatarModule }, { kind: "component", type: i2$2.Avatar, selector: "p-avatar", inputs: ["label", "icon", "image", "size", "shape", "styleClass", "ariaLabel", "ariaLabelledBy"], outputs: ["onImageError"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
5607
5702
  }
5608
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: UserProfileComponent, decorators: [{
5703
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: UserProfileComponent, decorators: [{
5609
5704
  type: Component,
5610
5705
  args: [{
5611
5706
  selector: 'user-profile',
@@ -5644,7 +5739,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
5644
5739
  </div>
5645
5740
  `
5646
5741
  }]
5647
- }], ctorParameters: () => [{ type: L10nService }] });
5742
+ }] });
5648
5743
 
5649
5744
  var config$1 = {
5650
5745
  all: "All",
@@ -5686,9 +5781,9 @@ var ru$5 = {
5686
5781
  config: config
5687
5782
  };
5688
5783
 
5689
- L10nService.registerTranslations({ en: en$5, ru: ru$5 });
5690
5784
  class ConfigComponent {
5691
5785
  constructor() {
5786
+ this.translations = provideTranslations({ en: en$5, ru: ru$5 });
5692
5787
  this.layoutService = inject(LayoutService);
5693
5788
  this.l10nService = inject(L10nService);
5694
5789
  this.userService = inject(UserService);
@@ -5698,7 +5793,6 @@ class ConfigComponent {
5698
5793
  this.timeFormats = ['HH:mm:ss', 'HH:mm'];
5699
5794
  // @ts-ignore
5700
5795
  this.allTimeZones = Intl.supportedValuesOf('timeZone');
5701
- this.l10nService.loadComponentTranslations('config');
5702
5796
  this.selectedLanguage = this.layoutService.language();
5703
5797
  this.selectedDateFormat = this.layoutService.dateFormat();
5704
5798
  this.selectedTimeFormat = this.layoutService.timeFormat();
@@ -5723,8 +5817,8 @@ class ConfigComponent {
5723
5817
  async onSwitchChange() {
5724
5818
  await this.menuService.loadMenu();
5725
5819
  }
5726
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ConfigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5727
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: ConfigComponent, isStandalone: true, selector: "app-config", ngImport: i0, template: `
5820
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ConfigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5821
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: ConfigComponent, isStandalone: true, selector: "app-config", ngImport: i0, template: `
5728
5822
  <div class="flex flex-col md:flex-row gap-4">
5729
5823
  <div class="md:w-1/2">
5730
5824
  <div class="card flex flex-col gap-4">
@@ -5828,9 +5922,9 @@ class ConfigComponent {
5828
5922
  </div>
5829
5923
  }
5830
5924
  </div>
5831
- `, isInline: true, dependencies: [{ kind: "component", type: UserProfileComponent, selector: "user-profile" }, { kind: "directive", type: Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: TableModule }, { kind: "ngmodule", type: ToggleSwitchModule }, { kind: "component", type: i2$7.ToggleSwitch, selector: "p-toggleswitch, p-toggleSwitch, p-toggle-switch", inputs: ["styleClass", "tabindex", "inputId", "readonly", "trueValue", "falseValue", "ariaLabel", "size", "ariaLabelledBy", "autofocus"], outputs: ["onChange"] }, { kind: "component", type: Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
5925
+ `, isInline: true, dependencies: [{ kind: "component", type: UserProfileComponent, selector: "user-profile" }, { kind: "directive", type: Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: TableModule }, { kind: "ngmodule", type: ToggleSwitchModule }, { kind: "component", type: i2$4.ToggleSwitch, selector: "p-toggleswitch, p-toggleSwitch, p-toggle-switch", inputs: ["styleClass", "tabindex", "inputId", "readonly", "trueValue", "falseValue", "ariaLabel", "size", "ariaLabelledBy", "autofocus"], outputs: ["onChange"] }, { kind: "component", type: Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
5832
5926
  }
5833
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ConfigComponent, decorators: [{
5927
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ConfigComponent, decorators: [{
5834
5928
  type: Component,
5835
5929
  args: [{
5836
5930
  selector: 'app-config',
@@ -5994,7 +6088,10 @@ var ru$4 = {
5994
6088
  };
5995
6089
 
5996
6090
  class DbMigrationComponent extends BaseModuleComponent {
5997
- static { this.translations = { en: en$4, ru: ru$4 }; }
6091
+ constructor() {
6092
+ super(...arguments);
6093
+ this.translations = provideTranslations({ en: en$4, ru: ru$4 });
6094
+ }
5998
6095
  async ngOnInit() {
5999
6096
  await super.ngOnInit();
6000
6097
  await this.refreshAction();
@@ -6016,8 +6113,8 @@ class DbMigrationComponent extends BaseModuleComponent {
6016
6113
  const request = { name: rowData.name };
6017
6114
  return this.applyModuleMigration(request);
6018
6115
  }
6019
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DbMigrationComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
6020
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: DbMigrationComponent, isStandalone: true, selector: "db-migration", providers: [ConfirmationService], usesInheritance: true, ngImport: i0, template: `
6116
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: DbMigrationComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
6117
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: DbMigrationComponent, isStandalone: true, selector: "db-migration", providers: [ConfirmationService], usesInheritance: true, ngImport: i0, template: `
6021
6118
  @if (isContent) {
6022
6119
  <div class="card" style="height: 100%">
6023
6120
  <p-confirmDialog />
@@ -6095,9 +6192,9 @@ class DbMigrationComponent extends BaseModuleComponent {
6095
6192
  } @else if (isSecurity) {
6096
6193
  <security [controller]="controller" [id]="id" />
6097
6194
  }
6098
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: TableModule }, { kind: "component", type: i1$4.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i1$4.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i1$4.EditableRow, selector: "[pEditableRow]", inputs: ["pEditableRow", "pEditableRowDisabled"] }, { kind: "directive", type: i1$4.CancelEditableRow, selector: "[pCancelEditableRow]" }, { kind: "component", type: i1$4.ColumnFilter, selector: "p-columnFilter, p-column-filter, p-columnfilter", inputs: ["field", "type", "display", "showMenu", "matchMode", "operator", "showOperator", "showClearButton", "showApplyButton", "showMatchModes", "showAddButton", "hideOnClear", "placeholder", "matchModeOptions", "maxConstraints", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "locale", "localeMatcher", "currency", "currencyDisplay", "filterOn", "useGrouping", "showButtons", "ariaLabel", "filterButtonProps"], outputs: ["onShow", "onHide"] }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: TagModule }, { kind: "ngmodule", type: InputTextModule }, { kind: "ngmodule", type: TextareaModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "component", type: SecurityComponent, selector: "security", inputs: ["id", "controller"] }, { kind: "directive", type: Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
6195
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: TableModule }, { kind: "component", type: i1$9.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i2$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i1$9.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: i1$9.EditableRow, selector: "[pEditableRow]", inputs: ["pEditableRow", "pEditableRowDisabled"] }, { kind: "directive", type: i1$9.CancelEditableRow, selector: "[pCancelEditableRow]" }, { kind: "component", type: i1$9.ColumnFilter, selector: "p-columnFilter, p-column-filter, p-columnfilter", inputs: ["field", "type", "display", "showMenu", "matchMode", "operator", "showOperator", "showClearButton", "showApplyButton", "showMatchModes", "showAddButton", "hideOnClear", "placeholder", "matchModeOptions", "maxConstraints", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "locale", "localeMatcher", "currency", "currencyDisplay", "filterOn", "useGrouping", "showButtons", "ariaLabel", "filterButtonProps"], outputs: ["onShow", "onHide"] }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: TagModule }, { kind: "ngmodule", type: InputTextModule }, { kind: "ngmodule", type: TextareaModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "component", type: SecurityComponent, selector: "security", inputs: ["id", "controller"] }, { kind: "directive", type: Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
6099
6196
  }
6100
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DbMigrationComponent, decorators: [{
6197
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: DbMigrationComponent, decorators: [{
6101
6198
  type: Component,
6102
6199
  args: [{
6103
6200
  imports: [
@@ -6242,10 +6339,10 @@ class ExtensionModulesApi extends HttpClient {
6242
6339
  ...params,
6243
6340
  });
6244
6341
  }
6245
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ExtensionModulesApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
6246
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ExtensionModulesApi }); }
6342
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ExtensionModulesApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
6343
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ExtensionModulesApi }); }
6247
6344
  }
6248
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ExtensionModulesApi, decorators: [{
6345
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ExtensionModulesApi, decorators: [{
6249
6346
  type: Injectable
6250
6347
  }] });
6251
6348
 
@@ -6286,10 +6383,10 @@ class ModuleApi extends HttpClient {
6286
6383
  ...params,
6287
6384
  });
6288
6385
  }
6289
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ModuleApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
6290
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ModuleApi }); }
6386
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ModuleApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
6387
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ModuleApi }); }
6291
6388
  }
6292
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ModuleApi, decorators: [{
6389
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ModuleApi, decorators: [{
6293
6390
  type: Injectable
6294
6391
  }] });
6295
6392
 
@@ -6433,8 +6530,8 @@ class AppModulesComponent {
6433
6530
  t(key) {
6434
6531
  return this.l10nService.instant(key);
6435
6532
  }
6436
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppModulesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6437
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: AppModulesComponent, isStandalone: true, selector: "app-modules", providers: [ConfirmationService, ModuleApi, ExtensionModulesApi], ngImport: i0, template: `
6533
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppModulesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6534
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.24", type: AppModulesComponent, isStandalone: true, selector: "app-modules", providers: [ConfirmationService, ModuleApi, ExtensionModulesApi], ngImport: i0, template: `
6438
6535
  <p-confirmDialog></p-confirmDialog>
6439
6536
  <div class="flex flex-col md:flex-row gap-4">
6440
6537
  <div class="card w-full">
@@ -6507,9 +6604,9 @@ class AppModulesComponent {
6507
6604
  </p-table>
6508
6605
  </div>
6509
6606
  </div>
6510
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i1$4.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: Tag, selector: "p-tag", inputs: ["styleClass", "severity", "value", "icon", "rounded"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: ToolbarModule }, { kind: "component", type: i5$2.Toolbar, selector: "p-toolbar", inputs: ["styleClass", "ariaLabelledBy"] }, { kind: "directive", type: Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4$2.InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pSize", "variant", "fluid", "invalid"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
6607
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i1$9.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i2$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: Tag, selector: "p-tag", inputs: ["styleClass", "severity", "value", "icon", "rounded"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: ToolbarModule }, { kind: "component", type: i5$1.Toolbar, selector: "p-toolbar", inputs: ["styleClass", "ariaLabelledBy"] }, { kind: "directive", type: Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4$1.InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pSize", "variant", "fluid", "invalid"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
6511
6608
  }
6512
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AppModulesComponent, decorators: [{
6609
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AppModulesComponent, decorators: [{
6513
6610
  type: Component,
6514
6611
  args: [{
6515
6612
  imports: [
@@ -6926,8 +7023,8 @@ class ApplicationsComponent {
6926
7023
  t(key, params) {
6927
7024
  return this.l10nService.instant(key, params);
6928
7025
  }
6929
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ApplicationsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6930
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: ApplicationsComponent, isStandalone: true, selector: "app-applications", providers: [ApplicationsApi, ConfirmationService], ngImport: i0, template: `
7026
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ApplicationsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7027
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: ApplicationsComponent, isStandalone: true, selector: "app-applications", providers: [ApplicationsApi, ConfirmationService], ngImport: i0, template: `
6931
7028
  <p-confirmDialog></p-confirmDialog>
6932
7029
  <div class="flex flex-col gap-4">
6933
7030
  <div class="card w-full">
@@ -7157,9 +7254,9 @@ class ApplicationsComponent {
7157
7254
  </p-table>
7158
7255
  </div>
7159
7256
  </div>
7160
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i1$4.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i1$4.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i1$4.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: Tag, selector: "p-tag", inputs: ["styleClass", "severity", "value", "icon", "rounded"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: ToolbarModule }, { kind: "component", type: i5$2.Toolbar, selector: "p-toolbar", inputs: ["styleClass", "ariaLabelledBy"] }, { kind: "directive", type: Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i5$1.Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: ToggleSwitchModule }, { kind: "component", type: i2$7.ToggleSwitch, selector: "p-toggleswitch, p-toggleSwitch, p-toggle-switch", inputs: ["styleClass", "tabindex", "inputId", "readonly", "trueValue", "falseValue", "ariaLabel", "size", "ariaLabelledBy", "autofocus"], outputs: ["onChange"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
7257
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i1$9.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "size", "showGridlines", "stripedRows", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i2$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i1$9.SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "component", type: i1$9.SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: Tag, selector: "p-tag", inputs: ["styleClass", "severity", "value", "icon", "rounded"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: ToolbarModule }, { kind: "component", type: i5$1.Toolbar, selector: "p-toolbar", inputs: ["styleClass", "ariaLabelledBy"] }, { kind: "directive", type: Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo", "ptTooltip"] }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: SelectModule }, { kind: "component", type: i5.Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: ToggleSwitchModule }, { kind: "component", type: i2$4.ToggleSwitch, selector: "p-toggleswitch, p-toggleSwitch, p-toggle-switch", inputs: ["styleClass", "tabindex", "inputId", "readonly", "trueValue", "falseValue", "ariaLabel", "size", "ariaLabelledBy", "autofocus"], outputs: ["onChange"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
7161
7258
  }
7162
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ApplicationsComponent, decorators: [{
7259
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ApplicationsComponent, decorators: [{
7163
7260
  type: Component,
7164
7261
  args: [{
7165
7262
  imports: [
@@ -7511,10 +7608,10 @@ class DiscussionApi extends HttpClient {
7511
7608
  ...params,
7512
7609
  });
7513
7610
  }
7514
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DiscussionApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
7515
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DiscussionApi }); }
7611
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: DiscussionApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
7612
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: DiscussionApi }); }
7516
7613
  }
7517
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DiscussionApi, decorators: [{
7614
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: DiscussionApi, decorators: [{
7518
7615
  type: Injectable
7519
7616
  }] });
7520
7617
 
@@ -7619,10 +7716,10 @@ var ru$1 = {
7619
7716
  discussionComponent: discussionComponent
7620
7717
  };
7621
7718
 
7622
- L10nService.registerTranslations({ en: en$1, ru: ru$1 });
7623
7719
  class DiscussionComponent {
7624
- constructor(l10nService) {
7720
+ constructor() {
7625
7721
  this.msgService = inject(MsgService);
7722
+ this.translations = provideTranslations({ en: en$1, ru: ru$1 });
7626
7723
  this.discussionApi = inject(DiscussionApi);
7627
7724
  this.sanitizer = inject(DomSanitizer);
7628
7725
  this.translateService = inject(TranslateService);
@@ -7644,7 +7741,6 @@ class DiscussionComponent {
7644
7741
  this.emojiPalette = ['👍', '👎', '🐳', '🍆', '🍑'];
7645
7742
  this.mentionSearchTimer = null;
7646
7743
  this.getInitialsFromString = getInitialsFromString;
7647
- l10nService.get('discussionComponent');
7648
7744
  }
7649
7745
  ngOnChanges(changes) {
7650
7746
  if ((changes['objectTypeId'] || changes['objectId']) && this.objectTypeId && this.objectId) {
@@ -8021,8 +8117,8 @@ class DiscussionComponent {
8021
8117
  const match = value.match(/@([A-Za-z0-9._+\-@]*)$/);
8022
8118
  return match?.[1] ?? null;
8023
8119
  }
8024
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DiscussionComponent, deps: [{ token: L10nService }], target: i0.ɵɵFactoryTarget.Component }); }
8025
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: DiscussionComponent, isStandalone: true, selector: "discussion", inputs: { objectTypeId: "objectTypeId", objectId: "objectId" }, providers: [ConfirmationService, DiscussionApi], usesOnChanges: true, ngImport: i0, template: `
8120
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: DiscussionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8121
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: DiscussionComponent, isStandalone: true, selector: "discussion", inputs: { objectTypeId: "objectTypeId", objectId: "objectId" }, providers: [ConfirmationService, DiscussionApi], usesOnChanges: true, ngImport: i0, template: `
8026
8122
  <p-confirmDialog />
8027
8123
 
8028
8124
  <section class="flex flex-col gap-4">
@@ -8336,9 +8432,9 @@ class DiscussionComponent {
8336
8432
  </div>
8337
8433
  }
8338
8434
  </section>
8339
- `, isInline: true, styles: [":host{display:block}.file-trigger{position:relative;display:inline-flex}.file-trigger input{position:absolute;inset:0;opacity:0;cursor:pointer}.markdown-preview,.history-markdown{word-break:break-word}.markdown-preview :is(h1,h2,h3),.history-markdown :is(h1,h2,h3){margin:0 0 .75rem;font-weight:600}.markdown-preview a,.history-markdown a{color:#2563eb;text-decoration:underline;text-underline-offset:.18em}.emoji-popover{display:flex;flex-wrap:wrap;gap:.5rem;max-width:16rem}.emoji-option{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;font-size:1.25rem;cursor:pointer}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AvatarModule }, { kind: "component", type: i3$3.Avatar, selector: "p-avatar", inputs: ["label", "icon", "image", "size", "shape", "styleClass", "ariaLabel", "ariaLabelledBy"], outputs: ["onImageError"] }, { kind: "directive", type: i2$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$1.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: CardModule }, { kind: "component", type: i6.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "ngmodule", type: DividerModule }, { kind: "ngmodule", type: PanelModule }, { kind: "component", type: i7.Panel, selector: "p-panel", inputs: ["id", "toggleable", "header", "collapsed", "styleClass", "iconPos", "showHeader", "toggler", "transitionOptions", "toggleButtonProps"], outputs: ["collapsedChange", "onBeforeToggle", "onAfterToggle"] }, { kind: "ngmodule", type: PopoverModule }, { kind: "component", type: i8.Popover, selector: "p-popover", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "ngmodule", type: ProgressSpinnerModule }, { kind: "component", type: i5.ProgressSpinner, selector: "p-progressSpinner, p-progress-spinner, p-progressspinner", inputs: ["styleClass", "strokeWidth", "fill", "animationDuration", "ariaLabel"] }, { kind: "ngmodule", type: TagModule }, { kind: "component", type: i10.Tag, selector: "p-tag", inputs: ["styleClass", "severity", "value", "icon", "rounded"] }, { kind: "directive", type: Textarea, selector: "[pTextarea], [pInputTextarea]", inputs: ["autoResize", "pSize", "variant", "fluid", "invalid"], outputs: ["onResize"] }, { kind: "pipe", type: i2$1.DatePipe, name: "date" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8435
+ `, isInline: true, styles: [":host{display:block}.file-trigger{position:relative;display:inline-flex}.file-trigger input{position:absolute;inset:0;opacity:0;cursor:pointer}.markdown-preview,.history-markdown{word-break:break-word}.markdown-preview :is(h1,h2,h3),.history-markdown :is(h1,h2,h3){margin:0 0 .75rem;font-weight:600}.markdown-preview a,.history-markdown a{color:#2563eb;text-decoration:underline;text-underline-offset:.18em}.emoji-popover{display:flex;flex-wrap:wrap;gap:.5rem;max-width:16rem}.emoji-option{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;font-size:1.25rem;cursor:pointer}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AvatarModule }, { kind: "component", type: i2$2.Avatar, selector: "p-avatar", inputs: ["label", "icon", "image", "size", "shape", "styleClass", "ariaLabel", "ariaLabelledBy"], outputs: ["onImageError"] }, { kind: "directive", type: i2$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1$2.Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: CardModule }, { kind: "component", type: i5$2.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "component", type: ConfirmDialog, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "modal", "visible", "position", "draggable"], outputs: ["onHide"] }, { kind: "ngmodule", type: DividerModule }, { kind: "ngmodule", type: PanelModule }, { kind: "component", type: i6.Panel, selector: "p-panel", inputs: ["id", "toggleable", "header", "collapsed", "styleClass", "iconPos", "showHeader", "toggler", "transitionOptions", "toggleButtonProps"], outputs: ["collapsedChange", "onBeforeToggle", "onAfterToggle"] }, { kind: "ngmodule", type: PopoverModule }, { kind: "component", type: i7.Popover, selector: "p-popover", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "ngmodule", type: ProgressSpinnerModule }, { kind: "component", type: i4.ProgressSpinner, selector: "p-progressSpinner, p-progress-spinner, p-progressspinner", inputs: ["styleClass", "strokeWidth", "fill", "animationDuration", "ariaLabel"] }, { kind: "ngmodule", type: TagModule }, { kind: "component", type: i9.Tag, selector: "p-tag", inputs: ["styleClass", "severity", "value", "icon", "rounded"] }, { kind: "directive", type: Textarea, selector: "[pTextarea], [pInputTextarea]", inputs: ["autoResize", "pSize", "variant", "fluid", "invalid"], outputs: ["onResize"] }, { kind: "pipe", type: i1$3.DatePipe, name: "date" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8340
8436
  }
8341
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DiscussionComponent, decorators: [{
8437
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: DiscussionComponent, decorators: [{
8342
8438
  type: Component,
8343
8439
  args: [{ selector: 'discussion', standalone: true, providers: [ConfirmationService, DiscussionApi], imports: [
8344
8440
  CommonModule,
@@ -8670,7 +8766,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
8670
8766
  }
8671
8767
  </section>
8672
8768
  `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block}.file-trigger{position:relative;display:inline-flex}.file-trigger input{position:absolute;inset:0;opacity:0;cursor:pointer}.markdown-preview,.history-markdown{word-break:break-word}.markdown-preview :is(h1,h2,h3),.history-markdown :is(h1,h2,h3){margin:0 0 .75rem;font-weight:600}.markdown-preview a,.history-markdown a{color:#2563eb;text-decoration:underline;text-underline-offset:.18em}.emoji-popover{display:flex;flex-wrap:wrap;gap:.5rem;max-width:16rem}.emoji-option{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;font-size:1.25rem;cursor:pointer}\n"] }]
8673
- }], ctorParameters: () => [{ type: L10nService }], propDecorators: { objectTypeId: [{
8769
+ }], propDecorators: { objectTypeId: [{
8674
8770
  type: Input,
8675
8771
  args: [{ required: true }]
8676
8772
  }], objectId: [{
@@ -8701,9 +8797,9 @@ var ru = {
8701
8797
  };
8702
8798
 
8703
8799
  class IframeModuleComponent extends BaseModuleComponent {
8704
- static { this.translations = { en, ru }; }
8705
8800
  constructor() {
8706
8801
  super();
8802
+ this.translations = provideTranslations({ en, ru });
8707
8803
  this.renderer = inject(Renderer2);
8708
8804
  this.translate = inject(TranslateService);
8709
8805
  this.iframeUrl = null;
@@ -8757,8 +8853,8 @@ class IframeModuleComponent extends BaseModuleComponent {
8757
8853
  const errorMessage = this.translate.instant('iframe-module.iframeModule.siteLoadingMessage');
8758
8854
  this.msgService.error(errorMessage);
8759
8855
  }
8760
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IframeModuleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8761
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: IframeModuleComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "iframeElement", first: true, predicate: ["iframe"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
8856
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: IframeModuleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8857
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: IframeModuleComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "iframeElement", first: true, predicate: ["iframe"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
8762
8858
  @if (isContent) {
8763
8859
  <iframe
8764
8860
  #iframe
@@ -8795,9 +8891,9 @@ class IframeModuleComponent extends BaseModuleComponent {
8795
8891
  } @else if (isSecurity) {
8796
8892
  <security [controller]="controller" [id]="id" />
8797
8893
  }
8798
- `, isInline: true, dependencies: [{ kind: "component", type: SecurityComponent, selector: "security", inputs: ["id", "controller"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
8894
+ `, isInline: true, dependencies: [{ kind: "component", type: SecurityComponent, selector: "security", inputs: ["id", "controller"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["hostName", "ptInputText", "pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
8799
8895
  }
8800
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IframeModuleComponent, decorators: [{
8896
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: IframeModuleComponent, decorators: [{
8801
8897
  type: Component,
8802
8898
  args: [{
8803
8899
  standalone: true,
@@ -8897,10 +8993,10 @@ class ExtensionLoaderService {
8897
8993
  this.loadedScripts.set(scriptUrl, loadPromise);
8898
8994
  return loadPromise;
8899
8995
  }
8900
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ExtensionLoaderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
8901
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ExtensionLoaderService, providedIn: 'root' }); }
8996
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ExtensionLoaderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
8997
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ExtensionLoaderService, providedIn: 'root' }); }
8902
8998
  }
8903
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ExtensionLoaderService, decorators: [{
8999
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ExtensionLoaderService, decorators: [{
8904
9000
  type: Injectable,
8905
9001
  args: [{ providedIn: 'root' }]
8906
9002
  }] });
@@ -9130,8 +9226,8 @@ class CustomElementExtensionModuleHostComponent extends BaseModuleComponent {
9130
9226
  this.container.nativeElement.appendChild(element);
9131
9227
  this.updateExtensionContext();
9132
9228
  }
9133
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: CustomElementExtensionModuleHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9134
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: CustomElementExtensionModuleHostComponent, isStandalone: true, selector: "ng-component", providers: [ExtensionModulesApi], viewQueries: [{ propertyName: "extensionContainer", first: true, predicate: ["extensionContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
9229
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: CustomElementExtensionModuleHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9230
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: CustomElementExtensionModuleHostComponent, isStandalone: true, selector: "ng-component", providers: [ExtensionModulesApi], viewQueries: [{ propertyName: "extensionContainer", first: true, predicate: ["extensionContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
9135
9231
  @if (showContent) {
9136
9232
  <div class="min-h-[calc(100vh-10rem)] w-full">
9137
9233
  @if (loadError) {
@@ -9157,7 +9253,7 @@ class CustomElementExtensionModuleHostComponent extends BaseModuleComponent {
9157
9253
  }
9158
9254
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: SecurityComponent, selector: "security", inputs: ["id", "controller"] }, { kind: "component", type: Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
9159
9255
  }
9160
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: CustomElementExtensionModuleHostComponent, decorators: [{
9256
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: CustomElementExtensionModuleHostComponent, decorators: [{
9161
9257
  type: Component,
9162
9258
  args: [{
9163
9259
  standalone: true,
@@ -9369,8 +9465,8 @@ class ExtensionModuleHostComponent extends BaseModuleComponent {
9369
9465
  const baseUrl = document.getElementsByTagName('base')[0]?.href ?? `${window.location.origin}/`;
9370
9466
  return `${baseUrl.endsWith('/') ? baseUrl : `${baseUrl}/`}${path}`;
9371
9467
  }
9372
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ExtensionModuleHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9373
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: ExtensionModuleHostComponent, isStandalone: true, selector: "ng-component", providers: [ExtensionModulesApi], viewQueries: [{ propertyName: "extensionViewContainer", first: true, predicate: ["extensionContainer"], descendants: true, read: ViewContainerRef }], usesInheritance: true, ngImport: i0, template: `
9468
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ExtensionModuleHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9469
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.24", type: ExtensionModuleHostComponent, isStandalone: true, selector: "ng-component", providers: [ExtensionModulesApi], viewQueries: [{ propertyName: "extensionViewContainer", first: true, predicate: ["extensionContainer"], descendants: true, read: ViewContainerRef }], usesInheritance: true, ngImport: i0, template: `
9374
9470
  @if (loadError) {
9375
9471
  <div class="card flex flex-col gap-4">
9376
9472
  <div class="font-semibold text-xl">{{ loadError }}</div>
@@ -9381,7 +9477,7 @@ class ExtensionModuleHostComponent extends BaseModuleComponent {
9381
9477
  }
9382
9478
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: Button, selector: "p-button", inputs: ["hostName", "type", "badge", "disabled", "raised", "rounded", "text", "plain", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "iconPos", "icon", "label", "loading", "loadingIcon", "severity", "buttonProps", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }] }); }
9383
9479
  }
9384
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ExtensionModuleHostComponent, decorators: [{
9480
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ExtensionModuleHostComponent, decorators: [{
9385
9481
  type: Component,
9386
9482
  args: [{
9387
9483
  standalone: true,
@@ -9430,10 +9526,10 @@ class AuthGuardService {
9430
9526
  return false;
9431
9527
  }));
9432
9528
  }
9433
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AuthGuardService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
9434
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AuthGuardService }); }
9529
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AuthGuardService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
9530
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AuthGuardService }); }
9435
9531
  }
9436
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AuthGuardService, decorators: [{
9532
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: AuthGuardService, decorators: [{
9437
9533
  type: Injectable
9438
9534
  }] });
9439
9535
 
@@ -9490,10 +9586,10 @@ class ModuleInstanceRightsService {
9490
9586
  clearCache() {
9491
9587
  this.cache.clear();
9492
9588
  }
9493
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ModuleInstanceRightsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
9494
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ModuleInstanceRightsService }); }
9589
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ModuleInstanceRightsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
9590
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ModuleInstanceRightsService }); }
9495
9591
  }
9496
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ModuleInstanceRightsService, decorators: [{
9592
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: ModuleInstanceRightsService, decorators: [{
9497
9593
  type: Injectable
9498
9594
  }], ctorParameters: () => [] });
9499
9595
 
@@ -9585,10 +9681,10 @@ class TableFilterService {
9585
9681
  }
9586
9682
  this.updateFiltersState(filters);
9587
9683
  }
9588
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TableFilterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
9589
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TableFilterService }); }
9684
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: TableFilterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
9685
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: TableFilterService }); }
9590
9686
  }
9591
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TableFilterService, decorators: [{
9687
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: TableFilterService, decorators: [{
9592
9688
  type: Injectable
9593
9689
  }] });
9594
9690
 
@@ -9713,10 +9809,10 @@ class FolderModuleApi extends HttpClient {
9713
9809
  ...params,
9714
9810
  });
9715
9811
  }
9716
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: FolderModuleApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
9717
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: FolderModuleApi }); }
9812
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: FolderModuleApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
9813
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: FolderModuleApi }); }
9718
9814
  }
9719
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: FolderModuleApi, decorators: [{
9815
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: FolderModuleApi, decorators: [{
9720
9816
  type: Injectable
9721
9817
  }] });
9722
9818
 
@@ -9734,10 +9830,10 @@ class IframeModuleApi extends HttpClient {
9734
9830
  ...params,
9735
9831
  });
9736
9832
  }
9737
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IframeModuleApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
9738
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IframeModuleApi }); }
9833
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: IframeModuleApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
9834
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: IframeModuleApi }); }
9739
9835
  }
9740
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: IframeModuleApi, decorators: [{
9836
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.24", ngImport: i0, type: IframeModuleApi, decorators: [{
9741
9837
  type: Injectable
9742
9838
  }] });
9743
9839
 
@@ -9747,5 +9843,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
9747
9843
  * Generated bundle index. Do not edit.
9748
9844
  */
9749
9845
 
9750
- export { APP_THEME_PRESETS, APP_THEME_PRESETS_MERGE_MODE, AccessComponent, AppConfiguratorComponent, AppFloatingConfiguratorComponent, AppLayoutComponent, AppModulesComponent, AppTopbar, AppTopbarApplicationSwitcherComponent, ApplicationRegistryService, ApplicationsApi, ApplicationsComponent, AuthGuardService, BaseModuleComponent, BffSecurityService, ConfigComponent, ContentType, CustomElementExtensionModuleHostComponent, DbMigrationComponent, DiscussionComponent, ErrorComponent, ExtensionLoaderService, ExtensionModuleHostComponent, FolderModuleApi, FooterComponent, HttpClient, IframeModuleApi, IframeModuleComponent, L10nService, LOGO_COMPONENT_TOKEN, LayoutService, LogoComponent, LogoService, MenuComponent, MenuService, ModuleInstanceRightsService, MsgService, NotfoundComponent, NotificationApi, NotificationService, OIP_EXTENSION_EVENTS, SecurityApi, SecurityComponent, SecurityService, SidebarComponent, TableFilterService, TopBarService, UnauthorizedComponent, UserNotificationsComponent, UserProfileApi, UserProfileComponent, UserService, convertToPrimeNgDateFormat, defaultTheme, emitOipContextChange, emitOipError, emitOipNavigate, emitOipNotify, emitOipSettingsChange, emitOipTitleChange, langIntercept, mergeWithDefaults, moduleAccessGuard, provideAppThemes, provideLogoComponent, provideOip, replaceDefaults };
9846
+ export { APP_THEME_PRESETS, APP_THEME_PRESETS_MERGE_MODE, AccessComponent, AppConfiguratorComponent, AppFloatingConfiguratorComponent, AppLayoutComponent, AppModulesComponent, AppTopbar, AppTopbarApplicationSwitcherComponent, ApplicationRegistryService, ApplicationsApi, ApplicationsComponent, AuthGuardService, BaseModuleComponent, BffSecurityService, ConfigComponent, ContentType, CustomElementExtensionModuleHostComponent, DbMigrationComponent, DiscussionComponent, ErrorComponent, ExtensionLoaderService, ExtensionModuleHostComponent, FolderModuleApi, FooterComponent, HttpClient, IframeModuleApi, IframeModuleComponent, L10nService, LOGO_COMPONENT_TOKEN, LayoutService, LogoComponent, LogoService, MenuComponent, MenuService, ModuleInstanceRightsService, MsgService, NotfoundComponent, NotificationApi, NotificationService, OIP_EXTENSION_EVENTS, SecurityApi, SecurityComponent, SecurityService, SidebarComponent, TableFilterService, TopBarService, UnauthorizedComponent, UserNotificationsComponent, UserProfileApi, UserProfileComponent, UserService, convertToPrimeNgDateFormat, defaultTheme, emitOipContextChange, emitOipError, emitOipNavigate, emitOipNotify, emitOipSettingsChange, emitOipTitleChange, langIntercept, mergeWithDefaults, moduleAccessGuard, provideAppThemes, provideLogoComponent, provideOip, provideTranslations, replaceDefaults };
9751
9847
  //# sourceMappingURL=oip-common.mjs.map