@esfaenza/core 19.2.185 → 19.2.187

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.
@@ -16,7 +16,6 @@ export declare abstract class BaseComponent extends ReactiveComponent {
16
16
  protected NavigationTitle: string;
17
17
  private _router;
18
18
  private _emb;
19
- private _location;
20
19
  constructor(injector: Injector);
21
20
  gatherRouteInformations(segs: UrlSegment[], data: Data): void;
22
21
  protected navigate(command: any[], extras?: any): void;
@@ -1,24 +1,18 @@
1
1
  import { Injector } from "@angular/core";
2
- import { Location } from "@angular/common";
3
2
  import { AppEmbeddingExtensions } from "@esfaenza/extensions";
4
3
  import { BaseComponent } from "./base.component";
5
4
  import * as i0 from "@angular/core";
6
5
  export declare class EmbeddingComponent extends BaseComponent {
7
6
  private injector;
8
7
  private emb;
9
- private location;
10
- private LocalhostModuleMap;
11
8
  Module: string;
12
9
  Localhost: string;
13
10
  Page: string;
14
11
  Pars: string;
15
12
  QueryPars: string;
16
13
  EmbeddingSuccesfull: boolean;
17
- Reloading: boolean;
18
- constructor(injector: Injector, emb: AppEmbeddingExtensions, location: Location);
14
+ constructor(injector: Injector, emb: AppEmbeddingExtensions);
19
15
  ngOnInit(): void;
20
- performNewEmbeddingOperations(module: string): void;
21
- assignPageLoadParameters(reloadAllowed?: boolean): void;
22
16
  static ɵfac: i0.ɵɵFactoryDeclaration<EmbeddingComponent, never>;
23
17
  static ɵcmp: i0.ɵɵComponentDeclaration<EmbeddingComponent, "embedding", never, {}, {}, never, never, true, never>;
24
18
  }
@@ -1,29 +1,12 @@
1
- import { ActivatedRoute, Router } from "@angular/router";
2
- import { AccessControlService } from "@esfaenza/access-control";
3
- import { LocalizationService } from "@esfaenza/localizations";
1
+ import { ActivatedRoute } from "@angular/router";
4
2
  import { AppEmbeddingExtensions } from "@esfaenza/extensions";
5
- import { HTTPService } from "@esfaenza/httpservice";
6
3
  import { AppState, TokenService } from "@esfaenza/core/services";
7
- import { ActiveModuleView } from "@esfaenza/core/domain";
4
+ import { AccessControlService } from "@esfaenza/access-control";
8
5
  import * as i0 from "@angular/core";
9
6
  export declare class ExternalPagesComponent {
10
- private aac;
11
- lc: LocalizationService;
12
- private http;
13
7
  emb: AppEmbeddingExtensions;
14
- private _state;
15
8
  private route;
16
- private router;
17
- private bts;
18
- private Username;
19
- private Password;
20
- private Tenant;
21
- private EmbeddingSource;
22
- private LocalhostModuleMap;
23
- private Localhost;
24
- constructor(aac: AccessControlService, lc: LocalizationService, http: HTTPService, emb: AppEmbeddingExtensions, _state: AppState, route: ActivatedRoute, router: Router, bts: TokenService);
25
- ngOnInit(): void;
26
- afterModulesRetrieve(modules: ActiveModuleView[]): void;
9
+ constructor(emb: AppEmbeddingExtensions, _state: AppState, route: ActivatedRoute, bts: TokenService, aac: AccessControlService);
27
10
  static ɵfac: i0.ɵɵFactoryDeclaration<ExternalPagesComponent, never>;
28
11
  static ɵcmp: i0.ɵɵComponentDeclaration<ExternalPagesComponent, "external-pages", never, {}, {}, never, never, true, never>;
29
12
  }
@@ -8,11 +8,8 @@ export declare class EsModalDirective extends ModalDirective {
8
8
  HideSubscription: Subscription;
9
9
  private emb;
10
10
  ngOnInit(): void;
11
- ngOnDestroy(): void;
12
11
  show(): void;
13
- doFixBody(): void;
14
12
  hide(): void;
15
- doHide(): void;
16
13
  static ɵfac: i0.ɵɵFactoryDeclaration<EsModalDirective, never>;
17
14
  static ɵdir: i0.ɵɵDirectiveDeclaration<EsModalDirective, "[esModal]", ["es-modal"], {}, {}, never, never, true, never>;
18
15
  }
@@ -3,9 +3,9 @@ import { HostListener, ViewChild, Input, ViewEncapsulation, Component, EventEmit
3
3
  import * as i2 from '@angular/router';
4
4
  import { NavigationEnd, RouterLink, RouterLinkActive, RouterOutlet, ActivatedRoute, Router, RouterModule } from '@angular/router';
5
5
  import * as i4 from '@angular/common';
6
- import { NgIf, NgFor, NgTemplateOutlet, NgClass, Location, CommonModule, AsyncPipe } from '@angular/common';
6
+ import { NgIf, NgFor, NgTemplateOutlet, NgClass, CommonModule, AsyncPipe, Location } from '@angular/common';
7
7
  import { filter, map, mergeMap, takeUntil as takeUntil$1 } from 'rxjs/operators';
8
- import { combineLatest, of, firstValueFrom, ReplaySubject, interval, startWith, takeUntil, takeWhile, Subject, debounceTime, take, map as map$1 } from 'rxjs';
8
+ import { combineLatest, of, firstValueFrom, ReplaySubject, interval, startWith, takeUntil, takeWhile, Subject, take, map as map$1 } from 'rxjs';
9
9
  import * as i1 from '@esfaenza/core/services';
10
10
  import { AppState } from '@esfaenza/core/services';
11
11
  import * as i3 from '@angular/platform-browser';
@@ -260,11 +260,7 @@ class ErrorPageComponent {
260
260
  location.reload();
261
261
  }
262
262
  goDashboard() {
263
- let url = `/pages/dashboard`;
264
- if (this.emb.Embedded)
265
- this.emb.MainWindow.postMessage({ type: "navigate", url }, "*");
266
- else
267
- this.router.navigate([url]);
263
+ this.emb.navigate(`/pages/dashboard`);
268
264
  }
269
265
  openTicket() {
270
266
  let dto = {
@@ -885,81 +881,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
885
881
 
886
882
  // Angular
887
883
  class ExternalPagesComponent {
888
- constructor(aac, lc, http, emb, _state, route, router, bts) {
889
- this.aac = aac;
890
- this.lc = lc;
891
- this.http = http;
884
+ constructor(emb, _state, route, bts, aac) {
892
885
  this.emb = emb;
893
- this._state = _state;
894
886
  this.route = route;
895
- this.router = router;
896
- this.bts = bts;
897
- this.Username = "";
898
- this.Password = "";
899
- this.Tenant = "";
900
- this.EmbeddingSource = "";
901
- // TODO: Automatizzare
902
- this.LocalhostModuleMap = {
903
- "crm": "31813",
904
- "sii": "21645",
905
- "pp": "1616"
906
- };
907
- this.Localhost = "";
908
- this.Username = this.route.snapshot.params["user"];
909
- this.Password = this.route.snapshot.params["pswd"];
910
- this.Tenant = this.route.snapshot.params["tnt"];
911
- this.EmbeddingSource = this.route.snapshot.params["source"];
912
- }
913
- ngOnInit() {
914
- if (!this.emb.Embedded) {
915
- console.log("Pagina ext richiamata in ambiente non embeddato. Sono in una nuova scheda!!");
916
- console.log("L'embedder originale doveva essere: " + this.EmbeddingSource);
917
- console.log("Dato che sono in una nuova scheda devo in realtà navigare a lui, con link su emb/ecc in modo da aprire una scheda embeddata su questa pagina. Se funziona già fino a qui sono a cavallo");
918
- this.Localhost = this.LocalhostModuleMap[this.EmbeddingSource];
919
- if (this._state.Modules?.length > 0)
920
- this.afterModulesRetrieve(this._state.Modules);
921
- else {
922
- this._state.subscribe("modules.Retrieved", (modules) => {
923
- this.afterModulesRetrieve(modules);
924
- });
925
- }
926
- return;
927
- }
928
- console.log("Caricamento pagina nell'IFRAME completato!");
929
- console.log("[" + this.Tenant + "]" + this.Username + " - " + this.Password);
930
- // Le info di login che ho passato sono le stesse delle info di login salvate nel token --> È un redirect da un sito esterno ma il token c'è già. Esco
931
- // Ho un token di login e non ho nessuna info sull'utente da usare --> È un redirect da Jace, quindi sono a posto. Esco
932
- let currentIdentity = this.bts.getJaceIdentity();
933
- if ((!(this.Tenant + this.Username + this.Password) || currentIdentity.Idtenant == this.Tenant && currentIdentity.DsUser == this.Username)) {
934
- this.aac.initializeIdentity(currentIdentity);
935
- return;
936
- }
937
- // Altrimenti devo effettuare il login
938
- // Non è utilizzata, porcoddinci
939
- let LoginDTO = { tenant: "FX", username: this.Username, password: this.Password, client_id: "jacedev" };
940
- this.http.post(`${myconfig.AuthUrl}/api/login/dologin`, LoginDTO).subscribe(t => {
941
- });
942
- }
943
- afterModulesRetrieve(modules) {
944
- // Sto navigando a {sito}/#/pages_ext/{origine}/etc...
945
- // Devo ridirezionare a {sorgente}/#/pages/embed/{thisModule}/etc...
946
- let module = modules.find(t => t.altname == this.EmbeddingSource);
947
- if (!module) {
948
- console.error(`Impossibile trovare il modulo con altname uguale a ${this.EmbeddingSource}`);
949
- }
950
- let afterPagesExt = this.router.url.split("pages_ext")[1].substring(1).split("/").slice(1).join("/");
951
- let sourceModuleUrl = myconfig.AuthUrl.includes("localhost") ? `http://localhost:${this.Localhost}` : module.uiurl;
952
- let finalUrl = `${sourceModuleUrl}/#/pages/embed/${myconfig.AppData.ModuleId}/${afterPagesExt}`;
953
- console.log("@esfaenza/core: navigating to " + finalUrl);
954
- location.replace(finalUrl);
887
+ emb.loadExternalPage(this.route.snapshot.params["user"], this.route.snapshot.params["pswd"], this.route.snapshot.params["tnt"], this.route.snapshot.params["source"], _state, bts.getJaceIdentity(), aac);
955
888
  }
956
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ExternalPagesComponent, deps: [{ token: i5$1.AccessControlService }, { token: i1$1.LocalizationService }, { token: i3$1.HTTPService }, { token: i2$1.AppEmbeddingExtensions }, { token: i1.AppState }, { token: i2.ActivatedRoute }, { token: i2.Router }, { token: i1.TokenService }], target: i0.ɵɵFactoryTarget.Component }); }
889
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ExternalPagesComponent, deps: [{ token: i2$1.AppEmbeddingExtensions }, { token: i1.AppState }, { token: i2.ActivatedRoute }, { token: i1.TokenService }, { token: i5$1.AccessControlService }], target: i0.ɵɵFactoryTarget.Component }); }
957
890
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: ExternalPagesComponent, isStandalone: true, selector: "external-pages", ngImport: i0, template: "<!-- Creo il router outlet solo se sono una pagina embeddata, altrimenti vuol dire che avr\u00F2 un redirect al parent embeddato a dovere -->\r\n<router-outlet *ngIf=\"this.emb.Embedded\"></router-outlet>", dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
958
891
  }
959
892
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ExternalPagesComponent, decorators: [{
960
893
  type: Component,
961
894
  args: [{ selector: "external-pages", imports: [RouterOutlet, NgIf], template: "<!-- Creo il router outlet solo se sono una pagina embeddata, altrimenti vuol dire che avr\u00F2 un redirect al parent embeddato a dovere -->\r\n<router-outlet *ngIf=\"this.emb.Embedded\"></router-outlet>" }]
962
- }], ctorParameters: () => [{ type: i5$1.AccessControlService }, { type: i1$1.LocalizationService }, { type: i3$1.HTTPService }, { type: i2$1.AppEmbeddingExtensions }, { type: i1.AppState }, { type: i2.ActivatedRoute }, { type: i2.Router }, { type: i1.TokenService }] });
895
+ }], ctorParameters: () => [{ type: i2$1.AppEmbeddingExtensions }, { type: i1.AppState }, { type: i2.ActivatedRoute }, { type: i1.TokenService }, { type: i5$1.AccessControlService }] });
963
896
 
964
897
  // Angular
965
898
  class JaceLoginComponent {
@@ -1026,7 +959,7 @@ class RedirecterComponent {
1026
959
  this.Error = "Il numero di parametri richiesti per navigare all'entità richiesta è diverso dal numero di parametri passato";
1027
960
  return;
1028
961
  }
1029
- let url = (this.emb.Embedded ? "pages_ext/" : "pages/") + redirectItem.url;
962
+ let url = this.emb.getPageRoute() + redirectItem.url;
1030
963
  let parObject = {};
1031
964
  redirectItem.params.forEach((t, i) => parObject[t] = parts[i + 1]);
1032
965
  console.log(`Navigating to ${url} with the current parameters: ${JSON.stringify(parObject)}`);
@@ -1056,7 +989,6 @@ class BaseComponent extends ReactiveComponent {
1056
989
  let _activatedRoute = injector.get(ActivatedRoute);
1057
990
  let _state = injector.get(AppState);
1058
991
  this._emb = injector.get(AppEmbeddingExtensions);
1059
- this._location = injector.get(Location);
1060
992
  this._router = injector.get(Router);
1061
993
  _state.registerNavigationIfMeaningful(_activatedRoute.snapshot);
1062
994
  // Parametri in maniera "dinamica"
@@ -1065,11 +997,7 @@ class BaseComponent extends ReactiveComponent {
1065
997
  combineLatest([_activatedRoute.url, _activatedRoute.data]).subscribe((t) => {
1066
998
  this.gatherRouteInformations(null, t[1]);
1067
999
  });
1068
- // Per i componenti navigabili non embeddati è inutile mandare il messaggio di navigazione
1069
- // Così come per quelli per cui non esiste un titolo (cioè compoennti verso cui non si è navigato direttamente)
1070
- if (!this._emb.Embedded || !this.NavigationTitle)
1071
- return;
1072
- this._emb.MainWindow.postMessage({ type: "navigation", url: this.CompletePath, internalNavigation: this.InternalNavigation, title: this.NavigationTitle }, "*");
1000
+ this._emb.onComponentCreation(this.CompletePath, this.InternalNavigation, this.NavigationTitle);
1073
1001
  }
1074
1002
  gatherRouteInformations(segs, data) {
1075
1003
  if (segs == null)
@@ -1081,21 +1009,10 @@ class BaseComponent extends ReactiveComponent {
1081
1009
  this.NavigationTitle = data?.["title"] || "";
1082
1010
  }
1083
1011
  navigate(command, extras) {
1084
- let commands = command;
1085
- // Fix della path esattamente come in esRouterLink
1086
- commands = Array.isArray(commands) ? commands : [commands];
1087
- let route = commands[0];
1088
- if (!route.startsWith("/" + EMBEDDED_ROUTE) && !route.startsWith("/" + ROUTE))
1089
- commands[0] = this.BasePath + commands[0];
1090
- this._router.navigate(command, extras);
1012
+ this._emb.handleNavigation(command, extras, EMBEDDED_ROUTE, ROUTE, this.BasePath);
1091
1013
  }
1092
1014
  back() {
1093
- if (this._emb.Embedded) {
1094
- this._emb.MainWindow.postMessage({ type: "navigate-back" }, "*");
1095
- setTimeout(() => { this._location.back(); });
1096
- }
1097
- else
1098
- this._location.back();
1015
+ this._emb.handleBack();
1099
1016
  }
1100
1017
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: BaseComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
1101
1018
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: BaseComponent, isStandalone: false, selector: "ng-component", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
@@ -1728,84 +1645,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
1728
1645
 
1729
1646
  // Angular
1730
1647
  class EmbeddingComponent extends BaseComponent {
1731
- constructor(injector, emb, location) {
1648
+ constructor(injector, emb) {
1732
1649
  super(injector);
1733
1650
  this.injector = injector;
1734
1651
  this.emb = emb;
1735
- this.location = location;
1736
- // TODO: Automatizzare
1737
- this.LocalhostModuleMap = {
1738
- "crm": "31813",
1739
- "sii": "21645",
1740
- "sales": "19112"
1741
- };
1742
1652
  this.EmbeddingSuccesfull = true;
1743
- this.Reloading = false;
1744
1653
  }
1745
1654
  ngOnInit() {
1746
- let route = this.injector.get(ActivatedRoute);
1747
- route.url.subscribe(_ => { this.performNewEmbeddingOperations(null); });
1748
- route.params.pipe(debounceTime(100)).subscribe((res) => {
1749
- this.performNewEmbeddingOperations(res["module"]);
1750
- });
1751
- }
1752
- performNewEmbeddingOperations(module) {
1753
- if (!module && !this.Module) {
1754
- console.log(`Module parameter missing. Ignoring embed request`);
1755
- return;
1756
- }
1757
- if (this.Reloading) {
1758
- console.log(`Already reloading. Embedding ignored`);
1759
- return;
1760
- }
1761
- if (module)
1762
- this.Module = module;
1763
- this.Localhost = this.LocalhostModuleMap[this.Module];
1764
- this.Reloading = true;
1765
- console.log(`Recognized a new navigation to the embedding component: ${this.Module} - ${this.CompletePath}`);
1766
- let reloadAllowed = this.emb.IsReloadAllowed();
1767
- if (this.Page && reloadAllowed) {
1768
- this.Page = this.Pars = null;
1769
- requestAnimationFrame(() => {
1770
- this.assignPageLoadParameters();
1771
- requestAnimationFrame(() => { this.Reloading = false; });
1772
- });
1773
- }
1774
- else {
1775
- this.assignPageLoadParameters(reloadAllowed);
1776
- requestAnimationFrame(() => { this.Reloading = false; });
1777
- }
1778
- }
1779
- assignPageLoadParameters(reloadAllowed = true) {
1780
- // Esempio di Complete path: "/pages/embed/crm/leads/leads_search"
1781
- // Esempio di slices: ["", "pages", "embed", "crm", "leads", "leads_search"]
1782
- // Io devo sostanzialmente prendere dal nome del modulo ("crm") in poi. Nome del modulo embeddato eslcuso
1783
- console.log("Embedding...");
1784
- if (reloadAllowed)
1785
- this.EmbeddingSuccesfull = false;
1786
- // Per seccare e ricreare il componente che altrimenti non prenderebbe gli input nuovi
1787
- requestAnimationFrame(() => {
1788
- this.Page = this.CompletePath.split("/").slice(4).join("/");
1789
- console.log("Page: " + this.Page);
1790
- let navParKeys = Object.keys(this.Parameters)?.filter(p => p != "module");
1791
- this.Pars = (navParKeys?.length || 0) == 0 ? "" : ";" + navParKeys.map(t => `${t}=${this.Parameters[t]}`).join(";");
1792
- console.log("Pars: " + this.Pars);
1793
- let queryParKeys = Object.keys(this.QueryParameters);
1794
- this.QueryPars = (queryParKeys?.length || 0) == 0 ? "" : "?" + queryParKeys.map(t => `${t}=${this.QueryParameters[t]}`).join(";");
1795
- console.log("QueryPars: " + this.QueryPars);
1796
- let QueryPAramsWithoutIgnoreStorage = queryParKeys.map(t => t == "ignoreStorage" ? null : `${t}=${this.QueryParameters[t]}`).filter(t => !!t).join(";");
1797
- // Per rimuovere eventuali ignoreStorage se sto navigando a una ricerca
1798
- this.location.replaceState(this.CompletePath + this.Pars + (QueryPAramsWithoutIgnoreStorage ? '?' + QueryPAramsWithoutIgnoreStorage : ""));
1799
- this.EmbeddingSuccesfull = !!this.Page && !!this.Module && !!this.Localhost;
1655
+ this.emb.setupEmbedding(this.injector.get(ActivatedRoute), () => this.Parameters, () => this.QueryParameters, () => this.CompletePath, () => this.Module, () => this.Page, (EmbeddingSuccesfull, Page, Pars, QueryPars, Module, Localhost) => {
1656
+ this.Module = Module;
1657
+ this.EmbeddingSuccesfull = EmbeddingSuccesfull;
1658
+ this.Page = Page;
1659
+ this.Pars = Pars;
1660
+ this.QueryPars = QueryPars;
1661
+ this.Localhost = Localhost;
1800
1662
  });
1801
1663
  }
1802
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: EmbeddingComponent, deps: [{ token: i0.Injector }, { token: i2$1.AppEmbeddingExtensions }, { token: i4.Location }], target: i0.ɵɵFactoryTarget.Component }); }
1664
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: EmbeddingComponent, deps: [{ token: i0.Injector }, { token: i2$1.AppEmbeddingExtensions }], target: i0.ɵɵFactoryTarget.Component }); }
1803
1665
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: EmbeddingComponent, isStandalone: true, selector: "embedding", usesInheritance: true, ngImport: i0, template: "<jace-resource *ngIf=\"EmbeddingSuccesfull && Page\" [Module]=\"Module\" [Localhost]=\"Localhost\" Page=\"{{Page}}{{Pars}}{{QueryPars}}\"></jace-resource>\r\n<div *ngIf=\"!EmbeddingSuccesfull\">\r\n Errori nell'embeddare risorsa {{Page}};{{Pars}} del modulo {{Module}} (Localhost {{Localhost}})\r\n</div>", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: JaceResourceComponent, selector: "jace-resource", inputs: ["Module", "ModuleKeyType", "Page", "Localhost", "Params"] }] }); }
1804
1666
  }
1805
1667
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: EmbeddingComponent, decorators: [{
1806
1668
  type: Component,
1807
1669
  args: [{ selector: 'embedding', imports: [NgIf, JaceResourceComponent], template: "<jace-resource *ngIf=\"EmbeddingSuccesfull && Page\" [Module]=\"Module\" [Localhost]=\"Localhost\" Page=\"{{Page}}{{Pars}}{{QueryPars}}\"></jace-resource>\r\n<div *ngIf=\"!EmbeddingSuccesfull\">\r\n Errori nell'embeddare risorsa {{Page}};{{Pars}} del modulo {{Module}} (Localhost {{Localhost}})\r\n</div>" }]
1808
- }], ctorParameters: () => [{ type: i0.Injector }, { type: i2$1.AppEmbeddingExtensions }, { type: i4.Location }] });
1670
+ }], ctorParameters: () => [{ type: i0.Injector }, { type: i2$1.AppEmbeddingExtensions }] });
1809
1671
 
1810
1672
  class UserInfoComponentLoc extends LocalizationService {
1811
1673
  constructor(injector) {