ngx-sp-auth 4.3.13 → 4.3.15

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.
@@ -4165,84 +4165,109 @@ class NavSubmenuCards {
4165
4165
  this.isExternal = false;
4166
4166
  }
4167
4167
  }
4168
- ;
4169
4168
  class SubMenuCardComponent {
4170
- GetExternalUrl(url) {
4171
- return `${this.hostName == "" ? `https://${window.location.host}` : this.hostName}/${url}`;
4172
- }
4173
- ngOnInit() {
4174
- this.GetHostName();
4175
- }
4176
- /**
4177
- *
4178
- */
4179
- constructor(_menuService, _projectUtil) {
4169
+ // #endregion PUBLIC
4170
+ // #endregion ==========> PROPERTIES <==========
4171
+ constructor(_menuService, _projectUtil, _customEnv) {
4180
4172
  this._menuService = _menuService;
4181
4173
  this._projectUtil = _projectUtil;
4182
- this.hostName = "";
4174
+ this._customEnv = _customEnv;
4175
+ // #region ==========> PROPERTIES <==========
4176
+ // #region PUBLIC
4183
4177
  this.subMenuCards = [];
4178
+ this.hostName = "";
4179
+ this.getExternalUrl = (url) => { return `${this.hostName == "" ? `https://${window.location.host}` : this.hostName}/${url}`; };
4180
+ }
4181
+ ngOnInit() {
4182
+ this.GetHostName();
4184
4183
  }
4184
+ // #region ==========> API METHODS <==========
4185
+ // #region GET
4185
4186
  GetHostName() {
4187
+ // Validação adicionada para ignorar esta chamada caso o componente seja exibido na docs
4188
+ if (this._customEnv.product === "InfraCodeDocs")
4189
+ return;
4186
4190
  this._menuService.GetHostServerOutSystems().subscribe({
4187
4191
  next: response => this.hostName = response.String,
4188
4192
  error: error => this._projectUtil.showHttpError(error)
4189
4193
  });
4190
4194
  }
4191
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: SubMenuCardComponent, deps: [{ token: MenuServicesService }, { token: ProjectUtilservice }], target: i0.ɵɵFactoryTarget.Component }); }
4195
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: SubMenuCardComponent, deps: [{ token: MenuServicesService }, { token: ProjectUtilservice }, { token: LibCustomEnvironmentService }], target: i0.ɵɵFactoryTarget.Component }); }
4192
4196
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: SubMenuCardComponent, isStandalone: true, selector: "sub-menu-card, lib-submenu-card", inputs: { subMenuCards: "subMenuCards" }, ngImport: i0, template: `
4193
4197
  <div class="max-card-menu row">
4194
4198
  @for(card of subMenuCards; track $index) {
4195
- <a href="{{ card.isExternal ? GetExternalUrl(card.urlPath) : card.urlPath }}" class="card-link col-4" target="_blank">
4196
- <div class="card">
4197
- <div class="card-icon">
4198
- <div class="card-icon2">
4199
- <lib-icon
4200
- class="bold"
4201
- iconName="{{ card.icon ? card.icon : 'engrenagem'}}"
4202
- iconColor="blue"
4203
- [iconFill]="true"
4204
- [iconSize]="35"
4205
- ></lib-icon>
4199
+ @if (card.isExternal) {
4200
+ <a [href]="getExternalUrl(card.urlPath)" target="_blank" class="card-link col-4">
4201
+ <div class="card w-100 border-0 rounded text-center glb-cursor-pointer">
4202
+ <div class="card-icon">
4203
+ <div class="card-icon2">
4204
+ <lib-icon class="bold" [iconName]="card.icon ? card.icon : 'engrenagem'" iconColor="blue" [iconSize]="35" />
4205
+ </div>
4206
4206
  </div>
4207
+
4208
+ <h3 class="card-title">{{ card.titulo }}</h3>
4209
+ <p class="card-text" [title]="card.descricao"> {{ card.descricao }} </p>
4207
4210
  </div>
4208
- <h3 class="card-title">{{ card.titulo }}</h3>
4209
- <p class="card-text" title="{{ card.descricao }}">
4210
- {{ card.descricao }}
4211
- </p>
4212
- </div>
4213
- </a>
4211
+ </a>
4212
+ }
4213
+ @else {
4214
+ <a [routerLink]="[ card.urlPath ]" class="card-link col-4">
4215
+ <div class="card w-100 border-0 rounded text-center glb-cursor-pointer">
4216
+ <div class="card-icon">
4217
+ <div class="card-icon2">
4218
+ <lib-icon class="bold" [iconName]="card.icon ? card.icon : 'engrenagem'" iconColor="blue" [iconSize]="35" />
4219
+ </div>
4220
+ </div>
4221
+
4222
+ <h3 class="card-title">{{ card.titulo }}</h3>
4223
+ <p class="card-text" [title]="card.descricao"> {{ card.descricao }} </p>
4224
+ </div>
4225
+ </a>
4226
+ }
4214
4227
  }
4215
4228
  </div>
4216
- `, isInline: true, styles: [".max-card-menu{display:flex;flex-wrap:wrap;justify-content:flex-start}.card-link{text-decoration:none;color:inherit;display:flex;box-sizing:border-box}.card{width:100%;border:none;background-color:#fff;border-radius:12px;box-shadow:0 4px 8px #0000000d;padding:24px;margin-bottom:16px;text-align:center;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;cursor:pointer}.card-icon{display:flex;align-items:center;justify-content:center;background-color:#e6eef6;border-radius:50%;width:72px;height:72px;margin:0 auto 16px}.card-icon2{display:flex;justify-content:center;align-items:center;background-color:#cde;border-radius:50%;width:52px;height:52px}.card-title{font-size:18px;font-weight:600;margin-bottom:12px;color:#333}.card-text{font-size:14px;color:#4f4f4f;line-height:1.6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}\n"], dependencies: [{ kind: "component", type: LibIconsComponent, selector: "lib-icon", inputs: ["iconName", "iconColor", "iconSize", "iconFill"] }] }); }
4229
+ `, isInline: true, styles: [".max-card-menu{display:flex;flex-wrap:wrap;justify-content:flex-start}.card-link{text-decoration:none;color:inherit;display:flex;box-sizing:border-box}.card{background-color:#fff;box-shadow:0 4px 8px #0000000d;padding:24px;margin-bottom:16px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.card-icon{display:flex;align-items:center;justify-content:center;background-color:#e6eef6;border-radius:50%;width:72px;height:72px;margin:0 auto 16px}.card-icon2{display:flex;justify-content:center;align-items:center;background-color:#cde;border-radius:50%;width:52px;height:52px}.card-title{font-size:18px;font-weight:600;margin-bottom:12px;color:#333}.card-text{font-size:14px;color:#4f4f4f;line-height:1.6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}\n"], dependencies: [{ kind: "component", type: LibIconsComponent, selector: "lib-icon", inputs: ["iconName", "iconColor", "iconSize", "iconFill"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
4217
4230
  }
4218
4231
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: SubMenuCardComponent, decorators: [{
4219
4232
  type: Component,
4220
- args: [{ selector: 'sub-menu-card, lib-submenu-card', imports: [LibIconsComponent], template: `
4233
+ args: [{ selector: 'sub-menu-card, lib-submenu-card', imports: [
4234
+ LibIconsComponent,
4235
+ RouterLink
4236
+ ], template: `
4221
4237
  <div class="max-card-menu row">
4222
4238
  @for(card of subMenuCards; track $index) {
4223
- <a href="{{ card.isExternal ? GetExternalUrl(card.urlPath) : card.urlPath }}" class="card-link col-4" target="_blank">
4224
- <div class="card">
4225
- <div class="card-icon">
4226
- <div class="card-icon2">
4227
- <lib-icon
4228
- class="bold"
4229
- iconName="{{ card.icon ? card.icon : 'engrenagem'}}"
4230
- iconColor="blue"
4231
- [iconFill]="true"
4232
- [iconSize]="35"
4233
- ></lib-icon>
4239
+ @if (card.isExternal) {
4240
+ <a [href]="getExternalUrl(card.urlPath)" target="_blank" class="card-link col-4">
4241
+ <div class="card w-100 border-0 rounded text-center glb-cursor-pointer">
4242
+ <div class="card-icon">
4243
+ <div class="card-icon2">
4244
+ <lib-icon class="bold" [iconName]="card.icon ? card.icon : 'engrenagem'" iconColor="blue" [iconSize]="35" />
4245
+ </div>
4234
4246
  </div>
4247
+
4248
+ <h3 class="card-title">{{ card.titulo }}</h3>
4249
+ <p class="card-text" [title]="card.descricao"> {{ card.descricao }} </p>
4235
4250
  </div>
4236
- <h3 class="card-title">{{ card.titulo }}</h3>
4237
- <p class="card-text" title="{{ card.descricao }}">
4238
- {{ card.descricao }}
4239
- </p>
4240
- </div>
4241
- </a>
4251
+ </a>
4252
+ }
4253
+ @else {
4254
+ <a [routerLink]="[ card.urlPath ]" class="card-link col-4">
4255
+ <div class="card w-100 border-0 rounded text-center glb-cursor-pointer">
4256
+ <div class="card-icon">
4257
+ <div class="card-icon2">
4258
+ <lib-icon class="bold" [iconName]="card.icon ? card.icon : 'engrenagem'" iconColor="blue" [iconSize]="35" />
4259
+ </div>
4260
+ </div>
4261
+
4262
+ <h3 class="card-title">{{ card.titulo }}</h3>
4263
+ <p class="card-text" [title]="card.descricao"> {{ card.descricao }} </p>
4264
+ </div>
4265
+ </a>
4266
+ }
4242
4267
  }
4243
4268
  </div>
4244
- `, standalone: true, styles: [".max-card-menu{display:flex;flex-wrap:wrap;justify-content:flex-start}.card-link{text-decoration:none;color:inherit;display:flex;box-sizing:border-box}.card{width:100%;border:none;background-color:#fff;border-radius:12px;box-shadow:0 4px 8px #0000000d;padding:24px;margin-bottom:16px;text-align:center;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;cursor:pointer}.card-icon{display:flex;align-items:center;justify-content:center;background-color:#e6eef6;border-radius:50%;width:72px;height:72px;margin:0 auto 16px}.card-icon2{display:flex;justify-content:center;align-items:center;background-color:#cde;border-radius:50%;width:52px;height:52px}.card-title{font-size:18px;font-weight:600;margin-bottom:12px;color:#333}.card-text{font-size:14px;color:#4f4f4f;line-height:1.6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}\n"] }]
4245
- }], ctorParameters: () => [{ type: MenuServicesService }, { type: ProjectUtilservice }], propDecorators: { subMenuCards: [{
4269
+ `, styles: [".max-card-menu{display:flex;flex-wrap:wrap;justify-content:flex-start}.card-link{text-decoration:none;color:inherit;display:flex;box-sizing:border-box}.card{background-color:#fff;box-shadow:0 4px 8px #0000000d;padding:24px;margin-bottom:16px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.card-icon{display:flex;align-items:center;justify-content:center;background-color:#e6eef6;border-radius:50%;width:72px;height:72px;margin:0 auto 16px}.card-icon2{display:flex;justify-content:center;align-items:center;background-color:#cde;border-radius:50%;width:52px;height:52px}.card-title{font-size:18px;font-weight:600;margin-bottom:12px;color:#333}.card-text{font-size:14px;color:#4f4f4f;line-height:1.6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}\n"] }]
4270
+ }], ctorParameters: () => [{ type: MenuServicesService }, { type: ProjectUtilservice }, { type: LibCustomEnvironmentService }], propDecorators: { subMenuCards: [{
4246
4271
  type: Input
4247
4272
  }] } });
4248
4273
 
@@ -4254,11 +4279,11 @@ class ListComponent {
4254
4279
  this.getExternalUrl = (url) => { return `${this.hostName}/${url}`; };
4255
4280
  }
4256
4281
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4257
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: ListComponent, isStandalone: true, selector: "app-list", inputs: { telasItem: "telasItem", hostName: "hostName" }, outputs: { onTelaSelecionada: "onTelaSelecionada" }, ngImport: i0, template: "<ul class=\"nav flex-column mt-3\">\n @if(telasItem.length) {\n @for(clickLink of telasItem; track $index) {\n <li class=\"nav-item\">\n <a class=\"nav-link\" [target]=\"clickLink.IsExternal ? '_blank' : '_self'\" (click)=\"onTelaSelecionada.emit(clickLink.titulo)\"\n [href]=\"clickLink.IsExternal\n ? getExternalUrl(clickLink.urlPath)\n : '/SisproErpCloud/' + clickLink.urlPath\" >\n {{ clickLink.titulo }}\n </a>\n </li>\n }\n }\n</ul>\n", styles: ["a{color:#3e5154}\n"] }); }
4282
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: ListComponent, isStandalone: true, selector: "app-list", inputs: { telasItem: "telasItem", hostName: "hostName" }, outputs: { onTelaSelecionada: "onTelaSelecionada" }, ngImport: i0, template: "<ul class=\"nav flex-column mt-3\">\n @if (telasItem && telasItem.length > 0) {\n @for (clickLink of telasItem; track $index) {\n <li class=\"nav-item\">\n <a class=\"nav-link\" [target]=\"clickLink.IsExternal ? '_blank' : '_self'\" (click)=\"onTelaSelecionada.emit(clickLink.titulo)\"\n [href]=\"clickLink.IsExternal\n ? getExternalUrl(clickLink.urlPath)\n : '/SisproErpCloud/' + clickLink.urlPath\" >\n {{ clickLink.titulo }}\n </a>\n </li>\n }\n }\n</ul>\n", styles: ["a{color:#3e5154}\n"] }); }
4258
4283
  }
4259
4284
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: ListComponent, decorators: [{
4260
4285
  type: Component,
4261
- args: [{ selector: 'app-list', imports: [], standalone: true, template: "<ul class=\"nav flex-column mt-3\">\n @if(telasItem.length) {\n @for(clickLink of telasItem; track $index) {\n <li class=\"nav-item\">\n <a class=\"nav-link\" [target]=\"clickLink.IsExternal ? '_blank' : '_self'\" (click)=\"onTelaSelecionada.emit(clickLink.titulo)\"\n [href]=\"clickLink.IsExternal\n ? getExternalUrl(clickLink.urlPath)\n : '/SisproErpCloud/' + clickLink.urlPath\" >\n {{ clickLink.titulo }}\n </a>\n </li>\n }\n }\n</ul>\n", styles: ["a{color:#3e5154}\n"] }]
4286
+ args: [{ selector: 'app-list', imports: [], standalone: true, template: "<ul class=\"nav flex-column mt-3\">\n @if (telasItem && telasItem.length > 0) {\n @for (clickLink of telasItem; track $index) {\n <li class=\"nav-item\">\n <a class=\"nav-link\" [target]=\"clickLink.IsExternal ? '_blank' : '_self'\" (click)=\"onTelaSelecionada.emit(clickLink.titulo)\"\n [href]=\"clickLink.IsExternal\n ? getExternalUrl(clickLink.urlPath)\n : '/SisproErpCloud/' + clickLink.urlPath\" >\n {{ clickLink.titulo }}\n </a>\n </li>\n }\n }\n</ul>\n", styles: ["a{color:#3e5154}\n"] }]
4262
4287
  }], propDecorators: { telasItem: [{
4263
4288
  type: Input
4264
4289
  }], hostName: [{
@@ -4293,14 +4318,17 @@ class NavTabsComponent {
4293
4318
  this.setAbaAtiva(changes['activeItem'].currentValue);
4294
4319
  }
4295
4320
  if ((changes['subMenus'].currentValue && changes['subMenus'].currentValue !== "") && this.activeItem !== '') {
4296
- this.setAbaAtiva(this.activeItem);
4321
+ this.setAbaAtiva(this.activeItem ?? '');
4297
4322
  }
4298
4323
  }
4299
4324
  // #region ==========> UTILS <==========
4300
4325
  setAbaAtiva(titulo) {
4326
+ // Se não encontrar o nome, sai do método
4301
4327
  const index = this.subMenus.findIndex(submenu => submenu.titulo == titulo);
4302
- this.telasItem = this.subMenus[index].telasItem;
4303
- this.listaAtiva = this.subMenus[index].titulo;
4328
+ if (index === -1)
4329
+ return;
4330
+ this.telasItem = this.subMenus[index]?.telasItem;
4331
+ this.listaAtiva = this.subMenus[index]?.titulo;
4304
4332
  this.onTituloSelecionado.emit(titulo);
4305
4333
  }
4306
4334
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NavTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
@@ -4344,9 +4372,10 @@ class TelaItem {
4344
4372
  class SubMenuComponent {
4345
4373
  // #endregion PUBLIC
4346
4374
  // #endregion ==========> PROPERTIES <==========
4347
- constructor(_menuService, _projectUtil) {
4375
+ constructor(_menuService, _projectUtil, _customEnv) {
4348
4376
  this._menuService = _menuService;
4349
4377
  this._projectUtil = _projectUtil;
4378
+ this._customEnv = _customEnv;
4350
4379
  // #region ==========> PROPERTIES <==========
4351
4380
  // #region PUBLIC
4352
4381
  this.navSubmenus = [];
@@ -4373,12 +4402,15 @@ class SubMenuComponent {
4373
4402
  }
4374
4403
  }
4375
4404
  getHostName() {
4405
+ // Validação adicionada para ignorar esta chamada caso o componente seja exibido na docs
4406
+ if (this._customEnv.product === "InfraCodeDocs")
4407
+ return;
4376
4408
  this._menuService.GetHostServerOutSystems().subscribe({
4377
4409
  next: response => this.hostNameOutSystems = response.String,
4378
4410
  error: error => this._projectUtil.showHttpError(error)
4379
4411
  });
4380
4412
  }
4381
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: SubMenuComponent, deps: [{ token: MenuServicesService }, { token: ProjectUtilservice }], target: i0.ɵɵFactoryTarget.Component }); }
4413
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: SubMenuComponent, deps: [{ token: MenuServicesService }, { token: ProjectUtilservice }, { token: LibCustomEnvironmentService }], target: i0.ɵɵFactoryTarget.Component }); }
4382
4414
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: SubMenuComponent, isStandalone: true, selector: "app-nav-sub-menu, lib-submenu", inputs: { navSubmenus: "navSubmenus", isProduction: "isProduction", hostname: "hostname", activeItem: "activeItem" }, outputs: { onTituloSelecionado: "onTituloSelecionado", onTelaSelecionada: "onTelaSelecionada" }, ngImport: i0, template: "<lib-container>\n <div class=\"px-5\" innerContent1>\n @for(subMenu of navSubmenus; track $index) {\n <div [class]=\"$first && subMenu.titulo == '' && subMenu.icon == '' ? ' mb-2' : 'mt-4 mb-2'\">\n @if (subMenu.icon != '') {\n <lib-icon class=\"bold engrenagem-ajustada\" iconName=\"{{ subMenu.icon }}\" />\n }\n @if (subMenu.titulo != ''){\n <span class=\"fw-bold fs-4 ms-1\">{{ subMenu.titulo }}</span>\n }\n\n <app-nav-tabs [activeItem]=\"activeItem\" [subMenus]=\"navSubmenus[$index].subMenuItem\" [hostName]=\"hostNameOutSystems\"\n (onTelaSelecionada)=\"onTelaSelecionada.emit($event)\" (onTituloSelecionado)=\"onTituloSelecionado.emit($event)\" />\n </div>\n\n @if(!$last){ <hr /> }\n }\n </div>\n</lib-container>\n", styles: [".engrenagem-ajustada{position:relative;top:-4px}\n"], dependencies: [{ kind: "component", type: NavTabsComponent, selector: "app-nav-tabs", inputs: ["subMenus", "hostName", "activeItem"], outputs: ["onTituloSelecionado", "onTelaSelecionada"] }, { kind: "component", type: LibIconsComponent, selector: "lib-icon", inputs: ["iconName", "iconColor", "iconSize", "iconFill"] }, { kind: "component", type: ContentContainerComponent, selector: "lib-container", inputs: ["documentation", "tabs", "advancedTabs", "containerTitle", "useBorder", "currentTab"], outputs: ["onChangeTab"] }] }); }
4383
4415
  }
4384
4416
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: SubMenuComponent, decorators: [{
@@ -4388,7 +4420,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
4388
4420
  LibIconsComponent,
4389
4421
  ContentContainerComponent
4390
4422
  ], standalone: true, template: "<lib-container>\n <div class=\"px-5\" innerContent1>\n @for(subMenu of navSubmenus; track $index) {\n <div [class]=\"$first && subMenu.titulo == '' && subMenu.icon == '' ? ' mb-2' : 'mt-4 mb-2'\">\n @if (subMenu.icon != '') {\n <lib-icon class=\"bold engrenagem-ajustada\" iconName=\"{{ subMenu.icon }}\" />\n }\n @if (subMenu.titulo != ''){\n <span class=\"fw-bold fs-4 ms-1\">{{ subMenu.titulo }}</span>\n }\n\n <app-nav-tabs [activeItem]=\"activeItem\" [subMenus]=\"navSubmenus[$index].subMenuItem\" [hostName]=\"hostNameOutSystems\"\n (onTelaSelecionada)=\"onTelaSelecionada.emit($event)\" (onTituloSelecionado)=\"onTituloSelecionado.emit($event)\" />\n </div>\n\n @if(!$last){ <hr /> }\n }\n </div>\n</lib-container>\n", styles: [".engrenagem-ajustada{position:relative;top:-4px}\n"] }]
4391
- }], ctorParameters: () => [{ type: MenuServicesService }, { type: ProjectUtilservice }], propDecorators: { navSubmenus: [{
4423
+ }], ctorParameters: () => [{ type: MenuServicesService }, { type: ProjectUtilservice }, { type: LibCustomEnvironmentService }], propDecorators: { navSubmenus: [{
4392
4424
  type: Input
4393
4425
  }], isProduction: [{
4394
4426
  type: Input