@abp/ng.theme.lepton-x 4.0.4 → 4.1.0-rc.1

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.
Files changed (63) hide show
  1. package/account/account-layout/account-layout.module.d.ts +2 -2
  2. package/account/account-layout/components/auth-layout/auth-wrapper.component.d.ts +1 -1
  3. package/account/account-layout/components/tenant-box/tenant-box.component.d.ts +1 -1
  4. package/fesm2022/abp-ng.theme.lepton-x-account.mjs +31 -40
  5. package/fesm2022/abp-ng.theme.lepton-x-account.mjs.map +1 -1
  6. package/fesm2022/abp-ng.theme.lepton-x-layouts.mjs +65 -75
  7. package/fesm2022/abp-ng.theme.lepton-x-layouts.mjs.map +1 -1
  8. package/fesm2022/abp-ng.theme.lepton-x.mjs +58 -85
  9. package/fesm2022/abp-ng.theme.lepton-x.mjs.map +1 -1
  10. package/layouts/side-menu-layout/providers/layout.provider.d.ts +2 -3
  11. package/layouts/side-menu-layout/providers/nav-item.provider.d.ts +2 -3
  12. package/lib/providers/init-service.provider.d.ts +1 -3
  13. package/lib/providers/language.provider.d.ts +1 -9
  14. package/lib/providers/user-menu-service.provider.d.ts +2 -8
  15. package/lib/providers/user.provider.d.ts +1 -9
  16. package/package.json +6 -12
  17. package/esm2022/abp-ng.theme.lepton-x.mjs +0 -5
  18. package/esm2022/account/abp-ng.theme.lepton-x-account.mjs +0 -5
  19. package/esm2022/account/account-layout/account-layout.component.mjs +0 -14
  20. package/esm2022/account/account-layout/account-layout.module.mjs +0 -72
  21. package/esm2022/account/account-layout/components/auth-layout/auth-wrapper.component.mjs +0 -31
  22. package/esm2022/account/account-layout/components/tenant-box/tenant-box.component.mjs +0 -22
  23. package/esm2022/account/account-layout/index.mjs +0 -3
  24. package/esm2022/account/account-layout/services/account-layout.service.mjs +0 -80
  25. package/esm2022/account/public-api.mjs +0 -2
  26. package/esm2022/index.mjs +0 -9
  27. package/esm2022/layouts/abp-ng.theme.lepton-x-layouts.mjs +0 -5
  28. package/esm2022/layouts/empty-layout/empty-layout.component.mjs +0 -19
  29. package/esm2022/layouts/empty-layout/index.mjs +0 -2
  30. package/esm2022/layouts/public-api.mjs +0 -6
  31. package/esm2022/layouts/side-menu-layout/components/index.mjs +0 -5
  32. package/esm2022/layouts/side-menu-layout/components/language-selection/index.mjs +0 -2
  33. package/esm2022/layouts/side-menu-layout/components/language-selection/language-selection.component.mjs +0 -16
  34. package/esm2022/layouts/side-menu-layout/components/nav-items/index.mjs +0 -2
  35. package/esm2022/layouts/side-menu-layout/components/nav-items/nav-items.component.mjs +0 -19
  36. package/esm2022/layouts/side-menu-layout/components/navigate-to-login/navigate-to-login.component.mjs +0 -33
  37. package/esm2022/layouts/side-menu-layout/components/user-profile/index.mjs +0 -2
  38. package/esm2022/layouts/side-menu-layout/components/user-profile/user-profile.component.mjs +0 -16
  39. package/esm2022/layouts/side-menu-layout/index.mjs +0 -5
  40. package/esm2022/layouts/side-menu-layout/providers/index.mjs +0 -3
  41. package/esm2022/layouts/side-menu-layout/providers/layout.provider.mjs +0 -24
  42. package/esm2022/layouts/side-menu-layout/providers/nav-item.provider.mjs +0 -37
  43. package/esm2022/layouts/side-menu-layout/side-menu-application-layout/index.mjs +0 -2
  44. package/esm2022/layouts/side-menu-layout/side-menu-application-layout/side-menu-application-layout.component.mjs +0 -32
  45. package/esm2022/layouts/side-menu-layout/side-menu-layout.module.mjs +0 -81
  46. package/esm2022/lib/components/index.mjs +0 -2
  47. package/esm2022/lib/components/validation-error/index.mjs +0 -3
  48. package/esm2022/lib/components/validation-error/validation-error.component.mjs +0 -49
  49. package/esm2022/lib/components/validation-error/validation-error.module.mjs +0 -39
  50. package/esm2022/lib/enums/components.mjs +0 -2
  51. package/esm2022/lib/enums/index.mjs +0 -3
  52. package/esm2022/lib/enums/user-menu-items.mjs +0 -6
  53. package/esm2022/lib/providers/index.mjs +0 -6
  54. package/esm2022/lib/providers/init-service.provider.mjs +0 -16
  55. package/esm2022/lib/providers/language.provider.mjs +0 -15
  56. package/esm2022/lib/providers/translate.provider.mjs +0 -7
  57. package/esm2022/lib/providers/user-menu-service.provider.mjs +0 -38
  58. package/esm2022/lib/providers/user.provider.mjs +0 -15
  59. package/esm2022/lib/services/index.mjs +0 -4
  60. package/esm2022/lib/services/language.service.mjs +0 -43
  61. package/esm2022/lib/services/translate.service.mjs +0 -39
  62. package/esm2022/lib/services/user-profile.service.mjs +0 -63
  63. package/esm2022/lib/theme-lepton-x.module.mjs +0 -54
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, ChangeDetectionStrategy, ViewEncapsulation, NgModule, Injectable, Inject, APP_INITIALIZER, Injector, inject } from '@angular/core';
2
+ import { Component, ChangeDetectionStrategy, ViewEncapsulation, NgModule, Injectable, Inject, provideAppInitializer, inject } from '@angular/core';
3
3
  import { LpxModule } from '@volo/ngx-lepton-x.lite';
4
4
  import { ValidationErrorComponent as ValidationErrorComponent$1, VALIDATION_ERROR_TEMPLATE, VALIDATION_TARGET_SELECTOR, VALIDATION_INVALID_CLASSES, NgxValidateCoreModule } from '@ngx-validate/core';
5
5
  import * as i1 from '@abp/ng.core';
@@ -33,8 +33,8 @@ class ValidationErrorComponent extends ValidationErrorComponent$1 {
33
33
  return { ...error, interpoliteParams: [] };
34
34
  });
35
35
  }
36
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: ValidationErrorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
37
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.5", type: ValidationErrorComponent, selector: "abp-validation-error", usesInheritance: true, ngImport: i0, template: `
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: ValidationErrorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
37
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: ValidationErrorComponent, isStandalone: false, selector: "abp-validation-error", usesInheritance: true, ngImport: i0, template: `
38
38
  @for (error of abpErrors; track $index) {
39
39
  <div class="invalid-feedback">
40
40
  {{ error.message | abpLocalization: error.interpoliteParams }}
@@ -42,9 +42,10 @@ class ValidationErrorComponent extends ValidationErrorComponent$1 {
42
42
  }
43
43
  `, isInline: true, dependencies: [{ kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
44
44
  }
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: ValidationErrorComponent, decorators: [{
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: ValidationErrorComponent, decorators: [{
46
46
  type: Component,
47
47
  args: [{
48
+ standalone: false,
48
49
  selector: 'abp-validation-error',
49
50
  template: `
50
51
  @for (error of abpErrors; track $index) {
@@ -78,11 +79,11 @@ class ValidationErrorModule {
78
79
  ],
79
80
  };
80
81
  }
81
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: ValidationErrorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
82
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.5", ngImport: i0, type: ValidationErrorModule, declarations: [ValidationErrorComponent], imports: [CommonModule, CoreModule, NgxValidateCoreModule], exports: [ValidationErrorComponent, NgxValidateCoreModule] }); }
83
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: ValidationErrorModule, imports: [CommonModule, CoreModule, NgxValidateCoreModule, NgxValidateCoreModule] }); }
82
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: ValidationErrorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
83
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.7", ngImport: i0, type: ValidationErrorModule, declarations: [ValidationErrorComponent], imports: [CommonModule, CoreModule, NgxValidateCoreModule], exports: [ValidationErrorComponent, NgxValidateCoreModule] }); }
84
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: ValidationErrorModule, imports: [CommonModule, CoreModule, NgxValidateCoreModule, NgxValidateCoreModule] }); }
84
85
  }
85
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: ValidationErrorModule, decorators: [{
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: ValidationErrorModule, decorators: [{
86
87
  type: NgModule,
87
88
  args: [{
88
89
  declarations: [ValidationErrorComponent],
@@ -131,10 +132,10 @@ class AbpUserProfileService {
131
132
  });
132
133
  });
133
134
  }
134
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AbpUserProfileService, deps: [{ token: i1.ConfigStateService }, { token: i2.UserProfileService }, { token: NAVIGATE_TO_MANAGE_PROFILE }, { token: i3.UserMenuService }], target: i0.ɵɵFactoryTarget.Injectable }); }
135
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AbpUserProfileService, providedIn: 'root' }); }
135
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: AbpUserProfileService, deps: [{ token: i1.ConfigStateService }, { token: i2.UserProfileService }, { token: NAVIGATE_TO_MANAGE_PROFILE }, { token: i3.UserMenuService }], target: i0.ɵɵFactoryTarget.Injectable }); }
136
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: AbpUserProfileService, providedIn: 'root' }); }
136
137
  }
137
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AbpUserProfileService, decorators: [{
138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: AbpUserProfileService, decorators: [{
138
139
  type: Injectable,
139
140
  args: [{
140
141
  providedIn: 'root',
@@ -144,18 +145,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImpor
144
145
  args: [NAVIGATE_TO_MANAGE_PROFILE]
145
146
  }] }, { type: i3.UserMenuService }] });
146
147
 
147
- const LPX_USER_PROVIDER = {
148
- provide: APP_INITIALIZER,
149
- multi: true,
150
- deps: [Injector],
151
- useFactory: initUser,
152
- };
153
- function initUser(injector) {
154
- const userProfile = injector.get(AbpUserProfileService);
155
- return () => {
156
- userProfile.subscribeUser();
157
- };
158
- }
148
+ const LPX_USER_PROVIDER = provideAppInitializer(() => {
149
+ const userProfile = inject(AbpUserProfileService);
150
+ userProfile.subscribeUser();
151
+ });
159
152
 
160
153
  class AbpLanguageService {
161
154
  constructor(configState, languageService, sessionState) {
@@ -183,28 +176,20 @@ class AbpLanguageService {
183
176
  this.sessionState.setLanguage(lang?.cultureName || '');
184
177
  });
185
178
  }
186
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AbpLanguageService, deps: [{ token: i1.ConfigStateService }, { token: i2.LanguageService }, { token: i1.SessionStateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
187
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AbpLanguageService, providedIn: 'root' }); }
179
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: AbpLanguageService, deps: [{ token: i1.ConfigStateService }, { token: i2.LanguageService }, { token: i1.SessionStateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
180
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: AbpLanguageService, providedIn: 'root' }); }
188
181
  }
189
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AbpLanguageService, decorators: [{
182
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: AbpLanguageService, decorators: [{
190
183
  type: Injectable,
191
184
  args: [{
192
185
  providedIn: 'root',
193
186
  }]
194
187
  }], ctorParameters: () => [{ type: i1.ConfigStateService }, { type: i2.LanguageService }, { type: i1.SessionStateService }] });
195
188
 
196
- const LPX_LANGUAGE_PROVIDER = {
197
- provide: APP_INITIALIZER,
198
- multi: true,
199
- deps: [Injector],
200
- useFactory: initLanguage,
201
- };
202
- function initLanguage(injector) {
203
- const language = injector.get(AbpLanguageService);
204
- return () => {
205
- language.subscribeLanguage();
206
- };
207
- }
189
+ const LPX_LANGUAGE_PROVIDER = provideAppInitializer(() => {
190
+ const languageService = inject(AbpLanguageService);
191
+ languageService.subscribeLanguage();
192
+ });
208
193
 
209
194
  class AbpTranslateService {
210
195
  constructor(localization) {
@@ -233,10 +218,10 @@ class AbpTranslateService {
233
218
  getKey(key) {
234
219
  return key.includes('::') ? key : undefined;
235
220
  }
236
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AbpTranslateService, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Injectable }); }
237
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AbpTranslateService }); }
221
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: AbpTranslateService, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Injectable }); }
222
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: AbpTranslateService }); }
238
223
  }
239
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AbpTranslateService, decorators: [{
224
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: AbpTranslateService, decorators: [{
240
225
  type: Injectable
241
226
  }], ctorParameters: () => [{ type: i1.LocalizationService }] });
242
227
 
@@ -252,52 +237,40 @@ var eUserMenuItems;
252
237
  })(eUserMenuItems || (eUserMenuItems = {}));
253
238
 
254
239
  const LEPTON_X_USER_MENU_PROVIDERS = [
255
- {
256
- provide: APP_INITIALIZER,
257
- useFactory: configureUserMenu,
258
- deps: [Injector],
259
- multi: true,
260
- },
240
+ provideAppInitializer(() => {
241
+ configureUserMenu();
242
+ }),
261
243
  ];
262
- function configureUserMenu(injector) {
263
- const userMenu = injector.get(UserMenuService);
264
- const authService = injector.get(AuthService);
265
- const navigateToManageProfile = injector.get(NAVIGATE_TO_MANAGE_PROFILE);
266
- return () => {
267
- userMenu.addItems([
268
- {
269
- id: eUserMenuItems.MyAccount,
270
- order: 100,
271
- textTemplate: {
272
- text: 'AbpAccount::MyAccount',
273
- },
274
- action: () => navigateToManageProfile(),
244
+ function configureUserMenu() {
245
+ const userMenu = inject(UserMenuService);
246
+ const authService = inject(AuthService);
247
+ const navigateToManageProfile = inject(NAVIGATE_TO_MANAGE_PROFILE);
248
+ userMenu.addItems([
249
+ {
250
+ id: eUserMenuItems.MyAccount,
251
+ order: 100,
252
+ textTemplate: {
253
+ text: 'AbpAccount::MyAccount',
275
254
  },
276
- {
277
- id: eUserMenuItems.Logout,
278
- order: 101,
279
- textTemplate: {
280
- text: 'AbpUi::Logout',
281
- },
282
- action: () => authService.logout().subscribe(),
255
+ action: () => navigateToManageProfile(),
256
+ },
257
+ {
258
+ id: eUserMenuItems.Logout,
259
+ order: 101,
260
+ textTemplate: {
261
+ text: 'AbpUi::Logout',
283
262
  },
284
- ]);
285
- };
263
+ action: () => authService.logout().subscribe(),
264
+ },
265
+ ]);
286
266
  }
287
267
 
288
- const INIT_SERVICE_PROVIDER = {
289
- provide: APP_INITIALIZER,
290
- useFactory: initServices,
291
- multi: true,
292
- };
293
- function initServices() {
268
+ const INIT_SERVICE_PROVIDER = provideAppInitializer(() => {
294
269
  const abpToolbarService = inject(AbpToolbarService);
295
270
  const abpNavbarService = inject(AbpNavbarService);
296
- return () => {
297
- abpToolbarService.listenNavItems();
298
- abpNavbarService.initRoutes();
299
- };
300
- }
271
+ abpToolbarService.listenNavItems();
272
+ abpNavbarService.initRoutes();
273
+ });
301
274
 
302
275
  class ThemeLeptonXModule {
303
276
  static forRoot(options) {
@@ -316,11 +289,11 @@ class ThemeLeptonXModule {
316
289
  ],
317
290
  };
318
291
  }
319
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: ThemeLeptonXModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
320
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.5", ngImport: i0, type: ThemeLeptonXModule, imports: [LpxModule, ValidationErrorModule] }); }
321
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: ThemeLeptonXModule, imports: [LpxModule, ValidationErrorModule] }); }
292
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: ThemeLeptonXModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
293
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.7", ngImport: i0, type: ThemeLeptonXModule, imports: [LpxModule, ValidationErrorModule] }); }
294
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: ThemeLeptonXModule, imports: [LpxModule, ValidationErrorModule] }); }
322
295
  }
323
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: ThemeLeptonXModule, decorators: [{
296
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: ThemeLeptonXModule, decorators: [{
324
297
  type: NgModule,
325
298
  args: [{
326
299
  declarations: [],
@@ -351,5 +324,5 @@ function createLpxModuleOptions(options) {
351
324
  * Generated bundle index. Do not edit.
352
325
  */
353
326
 
354
- export { AbpLanguageService, AbpTranslateService, AbpUserProfileService, INIT_SERVICE_PROVIDER, LEPTON_X_USER_MENU_PROVIDERS, LPX_LANGUAGE_PROVIDER, LPX_TRANSLATE_PROVIDER, LPX_USER_PROVIDER, ThemeLeptonXModule, ValidationErrorComponent, ValidationErrorModule, configureUserMenu, eUserMenuItems, initServices };
327
+ export { AbpLanguageService, AbpTranslateService, AbpUserProfileService, INIT_SERVICE_PROVIDER, LEPTON_X_USER_MENU_PROVIDERS, LPX_LANGUAGE_PROVIDER, LPX_TRANSLATE_PROVIDER, LPX_USER_PROVIDER, ThemeLeptonXModule, ValidationErrorComponent, ValidationErrorModule, configureUserMenu, eUserMenuItems };
355
328
  //# sourceMappingURL=abp-ng.theme.lepton-x.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"abp-ng.theme.lepton-x.mjs","sources":["../../../../libs/abp-lepton-x/src/lib/components/validation-error/validation-error.component.ts","../../../../libs/abp-lepton-x/src/lib/components/validation-error/validation-error.module.ts","../../../../libs/abp-lepton-x/src/lib/services/user-profile.service.ts","../../../../libs/abp-lepton-x/src/lib/providers/user.provider.ts","../../../../libs/abp-lepton-x/src/lib/services/language.service.ts","../../../../libs/abp-lepton-x/src/lib/providers/language.provider.ts","../../../../libs/abp-lepton-x/src/lib/services/translate.service.ts","../../../../libs/abp-lepton-x/src/lib/providers/translate.provider.ts","../../../../libs/abp-lepton-x/src/lib/enums/user-menu-items.ts","../../../../libs/abp-lepton-x/src/lib/providers/user-menu-service.provider.ts","../../../../libs/abp-lepton-x/src/lib/providers/init-service.provider.ts","../../../../libs/abp-lepton-x/src/lib/theme-lepton-x.module.ts","../../../../libs/abp-lepton-x/src/index.ts","../../../../libs/abp-lepton-x/src/abp-ng.theme.lepton-x.ts"],"sourcesContent":["import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport {\r\n Validation,\r\n ValidationErrorComponent as ErrorComponent,\r\n} from '@ngx-validate/core';\r\n\r\n@Component({\r\n selector: 'abp-validation-error',\r\n template: `\r\n @for (error of abpErrors; track $index) {\r\n <div class=\"invalid-feedback\">\r\n {{ error.message | abpLocalization: error.interpoliteParams }}\r\n </div>\r\n }\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class ValidationErrorComponent extends ErrorComponent {\r\n get abpErrors(): Array<Validation.Error & { interpoliteParams: string[] }> {\r\n if (!this.errors || !this.errors.length) return [];\r\n\r\n return this.errors.map((error) => {\r\n if (!error.message) return { ...error, interpoliteParams: [] };\r\n\r\n const index = error.message.indexOf('[');\r\n\r\n if (index > -1) {\r\n return {\r\n ...error,\r\n message: error.message.slice(0, index),\r\n interpoliteParams: error.message\r\n .slice(index + 1, error.message.length - 1)\r\n .split(','),\r\n };\r\n }\r\n\r\n return { ...error, interpoliteParams: [] };\r\n });\r\n }\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ValidationErrorComponent } from './validation-error.component';\r\nimport {\r\n NgxValidateCoreModule,\r\n VALIDATION_ERROR_TEMPLATE,\r\n VALIDATION_INVALID_CLASSES,\r\n VALIDATION_TARGET_SELECTOR,\r\n} from '@ngx-validate/core';\r\nimport { CoreModule } from '@abp/ng.core';\r\n\r\n@NgModule({\r\n declarations: [ValidationErrorComponent],\r\n imports: [CommonModule, CoreModule, NgxValidateCoreModule],\r\n exports: [ValidationErrorComponent, NgxValidateCoreModule],\r\n})\r\nexport class ValidationErrorModule {\r\n static forRoot(): ModuleWithProviders<ValidationErrorModule> {\r\n return {\r\n ngModule: ValidationErrorModule,\r\n providers: [\r\n {\r\n provide: VALIDATION_ERROR_TEMPLATE,\r\n useValue: ValidationErrorComponent,\r\n },\r\n {\r\n provide: VALIDATION_TARGET_SELECTOR,\r\n useValue: '.form-group',\r\n },\r\n {\r\n provide: VALIDATION_INVALID_CLASSES,\r\n useValue: 'is-invalid',\r\n },\r\n ],\r\n };\r\n }\r\n}\r\n","import { Inject, Injectable } from '@angular/core';\r\nimport { combineLatest, Observable, of } from 'rxjs';\r\nimport { filter } from 'rxjs/operators';\r\n\r\nimport {\r\n ConfigStateService,\r\n CurrentUserDto,\r\n NAVIGATE_TO_MANAGE_PROFILE,\r\n} from '@abp/ng.core';\r\nimport { UserMenuService } from '@abp/ng.theme.shared';\r\nimport { UserProfileService } from '@volo/ngx-lepton-x.core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AbpUserProfileService {\r\n currentUser$: Observable<CurrentUserDto> =\r\n this.configState.getOne$('currentUser');\r\n\r\n constructor(\r\n private configState: ConfigStateService,\r\n private userProfileService: UserProfileService,\r\n @Inject(NAVIGATE_TO_MANAGE_PROFILE) public navigateToManageProfile: any,\r\n private userMenuService: UserMenuService\r\n ) {}\r\n\r\n subscribeUser() {\r\n combineLatest([\r\n this.currentUser$.pipe(filter<CurrentUserDto>(Boolean)),\r\n this.userMenuService.items$,\r\n ]).subscribe(([user, userMenuItems]) => {\r\n const userActionGroups = userMenuItems.reduce(\r\n (acc, curr) => {\r\n const menuItem = {\r\n icon: curr.textTemplate?.icon,\r\n text: curr.textTemplate?.text,\r\n component: curr?.component,\r\n action: () => {\r\n curr.action();\r\n return of(true);\r\n },\r\n };\r\n acc[0].push(menuItem);\r\n return acc;\r\n },\r\n [[]]\r\n );\r\n\r\n this.userProfileService.setUser({\r\n id: user.id,\r\n isAuthenticated: user.isAuthenticated,\r\n fullName: user.name || user.userName || '',\r\n email: user.email || '',\r\n userName: user.userName || '',\r\n avatar: {\r\n type: 'icon',\r\n source: 'bi bi-person-circle',\r\n },\r\n userActionGroups,\r\n });\r\n });\r\n }\r\n}\r\n","import { APP_INITIALIZER, Injector } from '@angular/core';\r\nimport { AbpUserProfileService } from '../services/user-profile.service';\r\n\r\nexport const LPX_USER_PROVIDER = {\r\n provide: APP_INITIALIZER,\r\n multi: true,\r\n deps: [Injector],\r\n useFactory: initUser,\r\n};\r\n\r\nfunction initUser(injector: Injector) {\r\n const userProfile = injector.get(AbpUserProfileService);\r\n return () => {\r\n userProfile.subscribeUser();\r\n };\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { ConfigStateService, getLocaleDirection, LanguageInfo, SessionStateService } from '@abp/ng.core';\r\nimport { filter } from 'rxjs/operators';\r\nimport { LanguageService, LpxLanguage } from '@volo/ngx-lepton-x.core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AbpLanguageService {\r\n languages$: Observable<LanguageInfo[]> = this.configState.getDeep$('localization.languages');\r\n\r\n constructor(\r\n private configState: ConfigStateService,\r\n private languageService: LanguageService,\r\n private sessionState: SessionStateService,\r\n ) {}\r\n\r\n subscribeLanguage() {\r\n this.languages$.pipe(filter<LanguageInfo[]>(Boolean)).subscribe(langs => {\r\n this.languageService.init(langs.map(this.mapLang));\r\n });\r\n\r\n this.languageService.selectedLanguage$\r\n .pipe(filter<LanguageInfo | undefined>(Boolean))\r\n .subscribe(lang => {\r\n this.sessionState.setLanguage(lang?.cultureName || '');\r\n });\r\n }\r\n\r\n private mapLang = (lang: LanguageInfo): LpxLanguage => {\r\n return {\r\n cultureName: lang.cultureName,\r\n displayName: lang.displayName || '',\r\n selected: this.sessionState.getLanguage() === lang.cultureName,\r\n twoLetterISOLanguageName: (<any>lang).twoLetterISOLanguageName || '', //any is a workaround for the missing property in the LanguageInfo interface, if abp was updated to 7.0.2 or greater, this should be removed\r\n isRTL: getLocaleDirection(lang.cultureName) === 'rtl',\r\n };\r\n };\r\n}\r\n","import { APP_INITIALIZER, Injector } from '@angular/core';\r\nimport { AbpLanguageService } from '../services/language.service';\r\n\r\nexport const LPX_LANGUAGE_PROVIDER = {\r\n provide: APP_INITIALIZER,\r\n multi: true,\r\n deps: [Injector],\r\n useFactory: initLanguage,\r\n};\r\n\r\nfunction initLanguage(injector: Injector) {\r\n const language = injector.get(AbpLanguageService);\r\n return () => {\r\n language.subscribeLanguage();\r\n };\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { LocalizationService } from '@abp/ng.core';\r\nimport { TranslateService } from '@volo/ngx-lepton-x.core';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class AbpTranslateService implements TranslateService {\r\n constructor(private localization: LocalizationService) {}\r\n\r\n get(key: string, defaultValue: string | undefined): string {\r\n const keyToTranslate = this.getKey(key);\r\n if (keyToTranslate) {\r\n return this.localization.instant({\r\n key: keyToTranslate,\r\n defaultValue,\r\n });\r\n }\r\n\r\n return defaultValue || key;\r\n }\r\n\r\n get$(key: string, defaultValue: string | undefined): Observable<string> {\r\n const keyToTranslate = this.getKey(key);\r\n if (keyToTranslate) {\r\n return this.localization.get({\r\n key: keyToTranslate,\r\n defaultValue,\r\n });\r\n }\r\n\r\n return of(defaultValue || key);\r\n }\r\n\r\n private getKey(key: string): string | undefined {\r\n return key.includes('::') ? key : undefined;\r\n }\r\n}\r\n","import { Provider } from '@angular/core';\r\nimport { LPX_TRANSLATE_SERVICE_TOKEN } from '@volo/ngx-lepton-x.core';\r\nimport { AbpTranslateService } from '../services/translate.service';\r\n\r\nexport const LPX_TRANSLATE_PROVIDER: Provider = {\r\n provide: LPX_TRANSLATE_SERVICE_TOKEN,\r\n useClass: AbpTranslateService,\r\n};\r\n","export enum eUserMenuItems {\r\n MyAccount = 'MyAccount',\r\n Logout = 'Logout',\r\n}\r\n","import { AuthService, NAVIGATE_TO_MANAGE_PROFILE } from '@abp/ng.core';\r\nimport { UserMenuService } from '@abp/ng.theme.shared';\r\nimport { APP_INITIALIZER, Injector } from '@angular/core';\r\nimport { eUserMenuItems } from '../enums/user-menu-items';\r\n\r\nexport const LEPTON_X_USER_MENU_PROVIDERS = [\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: configureUserMenu,\r\n deps: [Injector],\r\n multi: true,\r\n },\r\n];\r\n\r\nexport function configureUserMenu(injector: Injector) {\r\n const userMenu = injector.get(UserMenuService);\r\n const authService = injector.get(AuthService);\r\n const navigateToManageProfile = injector.get(NAVIGATE_TO_MANAGE_PROFILE);\r\n return () => {\r\n userMenu.addItems([\r\n {\r\n id: eUserMenuItems.MyAccount,\r\n order: 100,\r\n textTemplate: {\r\n text: 'AbpAccount::MyAccount',\r\n },\r\n action: () => navigateToManageProfile(),\r\n },\r\n {\r\n id: eUserMenuItems.Logout,\r\n order: 101,\r\n textTemplate: {\r\n text: 'AbpUi::Logout',\r\n },\r\n action: () => authService.logout().subscribe(),\r\n },\r\n ]);\r\n };\r\n}\r\n","import { APP_INITIALIZER, Provider, inject } from '@angular/core';\r\nimport { AbpNavbarService, AbpToolbarService } from '@volo/abp.ng.lepton-x.core';\r\n\r\nexport const INIT_SERVICE_PROVIDER: Provider = {\r\n provide: APP_INITIALIZER,\r\n useFactory: initServices,\r\n multi: true,\r\n};\r\n\r\nexport function initServices() {\r\n const abpToolbarService = inject(AbpToolbarService);\r\n const abpNavbarService = inject(AbpNavbarService);\r\n\r\n return () => {\r\n abpToolbarService.listenNavItems();\r\n abpNavbarService.initRoutes();\r\n }\r\n}\r\n","import { ModuleWithProviders, NgModule, Provider } from '@angular/core';\r\nimport { LpxStyles } from '@volo/ngx-lepton-x.core';\r\nimport { LpxModule, LpxOptions } from '@volo/ngx-lepton-x.lite';\r\nimport { ValidationErrorModule } from './components/validation-error';\r\nimport { LPX_USER_PROVIDER } from './providers/user.provider';\r\nimport { LPX_LANGUAGE_PROVIDER } from './providers/language.provider';\r\nimport { LPX_TRANSLATE_PROVIDER } from './providers/translate.provider';\r\nimport { LEPTON_X_USER_MENU_PROVIDERS } from './providers/user-menu-service.provider';\r\nimport { LeptonXAbpCoreModule } from '@volo/abp.ng.lepton-x.core';\r\nimport { INIT_SERVICE_PROVIDER } from './providers';\r\n\r\nexport type ThemeLeptonXModuleOptions = LpxOptions;\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [LpxModule, ValidationErrorModule],\r\n exports: [],\r\n})\r\nexport class ThemeLeptonXModule {\r\n static forRoot(\r\n options?: ThemeLeptonXModuleOptions\r\n ): ModuleWithProviders<ThemeLeptonXModule> {\r\n return {\r\n ngModule: ThemeLeptonXModule,\r\n providers: [\r\n LpxModule.forRoot(createLpxModuleOptions(options))\r\n .providers as Provider,\r\n ValidationErrorModule.forRoot().providers as Provider,\r\n LPX_USER_PROVIDER,\r\n LPX_LANGUAGE_PROVIDER,\r\n LPX_TRANSLATE_PROVIDER,\r\n LEPTON_X_USER_MENU_PROVIDERS,\r\n INIT_SERVICE_PROVIDER,\r\n LeptonXAbpCoreModule.forRoot().providers as Provider,\r\n ],\r\n };\r\n }\r\n}\r\n\r\nfunction createLpxModuleOptions(options?: ThemeLeptonXModuleOptions) {\r\n return {\r\n ...options,\r\n styleFactory: (styles: LpxStyles) => {\r\n styles.push({\r\n bundleName: 'abp-bundle',\r\n });\r\n if (options?.styleFactory) {\r\n return options.styleFactory(styles);\r\n }\r\n return styles;\r\n },\r\n };\r\n}\r\n","/*\r\n * Public API Surface of theme-lepton-x\r\n */\r\nexport * from './lib/theme-lepton-x.module';\r\nexport * from './lib/components/index';\r\nexport * from './lib/services/index';\r\nexport * from './lib/enums/index';\r\nexport * from './lib/providers/index';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["ErrorComponent"],"mappings":"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"}
1
+ {"version":3,"file":"abp-ng.theme.lepton-x.mjs","sources":["../../../../libs/abp-lepton-x/src/lib/components/validation-error/validation-error.component.ts","../../../../libs/abp-lepton-x/src/lib/components/validation-error/validation-error.module.ts","../../../../libs/abp-lepton-x/src/lib/services/user-profile.service.ts","../../../../libs/abp-lepton-x/src/lib/providers/user.provider.ts","../../../../libs/abp-lepton-x/src/lib/services/language.service.ts","../../../../libs/abp-lepton-x/src/lib/providers/language.provider.ts","../../../../libs/abp-lepton-x/src/lib/services/translate.service.ts","../../../../libs/abp-lepton-x/src/lib/providers/translate.provider.ts","../../../../libs/abp-lepton-x/src/lib/enums/user-menu-items.ts","../../../../libs/abp-lepton-x/src/lib/providers/user-menu-service.provider.ts","../../../../libs/abp-lepton-x/src/lib/providers/init-service.provider.ts","../../../../libs/abp-lepton-x/src/lib/theme-lepton-x.module.ts","../../../../libs/abp-lepton-x/src/index.ts","../../../../libs/abp-lepton-x/src/abp-ng.theme.lepton-x.ts"],"sourcesContent":["import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport {\r\n Validation,\r\n ValidationErrorComponent as ErrorComponent,\r\n} from '@ngx-validate/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'abp-validation-error',\r\n template: `\r\n @for (error of abpErrors; track $index) {\r\n <div class=\"invalid-feedback\">\r\n {{ error.message | abpLocalization: error.interpoliteParams }}\r\n </div>\r\n }\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class ValidationErrorComponent extends ErrorComponent {\r\n get abpErrors(): Array<Validation.Error & { interpoliteParams: string[] }> {\r\n if (!this.errors || !this.errors.length) return [];\r\n\r\n return this.errors.map((error) => {\r\n if (!error.message) return { ...error, interpoliteParams: [] };\r\n\r\n const index = error.message.indexOf('[');\r\n\r\n if (index > -1) {\r\n return {\r\n ...error,\r\n message: error.message.slice(0, index),\r\n interpoliteParams: error.message\r\n .slice(index + 1, error.message.length - 1)\r\n .split(','),\r\n };\r\n }\r\n\r\n return { ...error, interpoliteParams: [] };\r\n });\r\n }\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ValidationErrorComponent } from './validation-error.component';\r\nimport {\r\n NgxValidateCoreModule,\r\n VALIDATION_ERROR_TEMPLATE,\r\n VALIDATION_INVALID_CLASSES,\r\n VALIDATION_TARGET_SELECTOR,\r\n} from '@ngx-validate/core';\r\nimport { CoreModule } from '@abp/ng.core';\r\n\r\n@NgModule({\r\n declarations: [ValidationErrorComponent],\r\n imports: [CommonModule, CoreModule, NgxValidateCoreModule],\r\n exports: [ValidationErrorComponent, NgxValidateCoreModule],\r\n})\r\nexport class ValidationErrorModule {\r\n static forRoot(): ModuleWithProviders<ValidationErrorModule> {\r\n return {\r\n ngModule: ValidationErrorModule,\r\n providers: [\r\n {\r\n provide: VALIDATION_ERROR_TEMPLATE,\r\n useValue: ValidationErrorComponent,\r\n },\r\n {\r\n provide: VALIDATION_TARGET_SELECTOR,\r\n useValue: '.form-group',\r\n },\r\n {\r\n provide: VALIDATION_INVALID_CLASSES,\r\n useValue: 'is-invalid',\r\n },\r\n ],\r\n };\r\n }\r\n}\r\n","import { Inject, Injectable } from '@angular/core';\r\nimport { combineLatest, Observable, of } from 'rxjs';\r\nimport { filter } from 'rxjs/operators';\r\n\r\nimport {\r\n ConfigStateService,\r\n CurrentUserDto,\r\n NAVIGATE_TO_MANAGE_PROFILE,\r\n} from '@abp/ng.core';\r\nimport { UserMenuService } from '@abp/ng.theme.shared';\r\nimport { UserProfileService } from '@volo/ngx-lepton-x.core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AbpUserProfileService {\r\n currentUser$: Observable<CurrentUserDto> =\r\n this.configState.getOne$('currentUser');\r\n\r\n constructor(\r\n private configState: ConfigStateService,\r\n private userProfileService: UserProfileService,\r\n @Inject(NAVIGATE_TO_MANAGE_PROFILE) public navigateToManageProfile: any,\r\n private userMenuService: UserMenuService\r\n ) {}\r\n\r\n subscribeUser() {\r\n combineLatest([\r\n this.currentUser$.pipe(filter<CurrentUserDto>(Boolean)),\r\n this.userMenuService.items$,\r\n ]).subscribe(([user, userMenuItems]) => {\r\n const userActionGroups = userMenuItems.reduce(\r\n (acc, curr) => {\r\n const menuItem = {\r\n icon: curr.textTemplate?.icon,\r\n text: curr.textTemplate?.text,\r\n component: curr?.component,\r\n action: () => {\r\n curr.action();\r\n return of(true);\r\n },\r\n };\r\n acc[0].push(menuItem);\r\n return acc;\r\n },\r\n [[]]\r\n );\r\n\r\n this.userProfileService.setUser({\r\n id: user.id,\r\n isAuthenticated: user.isAuthenticated,\r\n fullName: user.name || user.userName || '',\r\n email: user.email || '',\r\n userName: user.userName || '',\r\n avatar: {\r\n type: 'icon',\r\n source: 'bi bi-person-circle',\r\n },\r\n userActionGroups,\r\n });\r\n });\r\n }\r\n}\r\n","import { inject, provideAppInitializer } from '@angular/core';\r\nimport { AbpUserProfileService } from '../services/user-profile.service';\r\n\r\nexport const LPX_USER_PROVIDER = provideAppInitializer(() => {\r\n const userProfile = inject(AbpUserProfileService);\r\n userProfile.subscribeUser();\r\n});\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { ConfigStateService, getLocaleDirection, LanguageInfo, SessionStateService } from '@abp/ng.core';\r\nimport { filter } from 'rxjs/operators';\r\nimport { LanguageService, LpxLanguage } from '@volo/ngx-lepton-x.core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AbpLanguageService {\r\n languages$: Observable<LanguageInfo[]> = this.configState.getDeep$('localization.languages');\r\n\r\n constructor(\r\n private configState: ConfigStateService,\r\n private languageService: LanguageService,\r\n private sessionState: SessionStateService,\r\n ) {}\r\n\r\n subscribeLanguage() {\r\n this.languages$.pipe(filter<LanguageInfo[]>(Boolean)).subscribe(langs => {\r\n this.languageService.init(langs.map(this.mapLang));\r\n });\r\n\r\n this.languageService.selectedLanguage$\r\n .pipe(filter<LanguageInfo | undefined>(Boolean))\r\n .subscribe(lang => {\r\n this.sessionState.setLanguage(lang?.cultureName || '');\r\n });\r\n }\r\n\r\n private mapLang = (lang: LanguageInfo): LpxLanguage => {\r\n return {\r\n cultureName: lang.cultureName,\r\n displayName: lang.displayName || '',\r\n selected: this.sessionState.getLanguage() === lang.cultureName,\r\n twoLetterISOLanguageName: (<any>lang).twoLetterISOLanguageName || '', //any is a workaround for the missing property in the LanguageInfo interface, if abp was updated to 7.0.2 or greater, this should be removed\r\n isRTL: getLocaleDirection(lang.cultureName) === 'rtl',\r\n };\r\n };\r\n}\r\n","import { inject, provideAppInitializer } from '@angular/core';\r\nimport { AbpLanguageService } from '../services/language.service';\r\n\r\nexport const LPX_LANGUAGE_PROVIDER = provideAppInitializer(() => {\r\n const languageService = inject(AbpLanguageService);\r\n languageService.subscribeLanguage();\r\n});\r\n","import { Injectable } from '@angular/core';\r\nimport { LocalizationService } from '@abp/ng.core';\r\nimport { TranslateService } from '@volo/ngx-lepton-x.core';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class AbpTranslateService implements TranslateService {\r\n constructor(private localization: LocalizationService) {}\r\n\r\n get(key: string, defaultValue: string | undefined): string {\r\n const keyToTranslate = this.getKey(key);\r\n if (keyToTranslate) {\r\n return this.localization.instant({\r\n key: keyToTranslate,\r\n defaultValue,\r\n });\r\n }\r\n\r\n return defaultValue || key;\r\n }\r\n\r\n get$(key: string, defaultValue: string | undefined): Observable<string> {\r\n const keyToTranslate = this.getKey(key);\r\n if (keyToTranslate) {\r\n return this.localization.get({\r\n key: keyToTranslate,\r\n defaultValue,\r\n });\r\n }\r\n\r\n return of(defaultValue || key);\r\n }\r\n\r\n private getKey(key: string): string | undefined {\r\n return key.includes('::') ? key : undefined;\r\n }\r\n}\r\n","import { Provider } from '@angular/core';\r\nimport { LPX_TRANSLATE_SERVICE_TOKEN } from '@volo/ngx-lepton-x.core';\r\nimport { AbpTranslateService } from '../services/translate.service';\r\n\r\nexport const LPX_TRANSLATE_PROVIDER: Provider = {\r\n provide: LPX_TRANSLATE_SERVICE_TOKEN,\r\n useClass: AbpTranslateService,\r\n};\r\n","export enum eUserMenuItems {\r\n MyAccount = 'MyAccount',\r\n Logout = 'Logout',\r\n}\r\n","import { AuthService, NAVIGATE_TO_MANAGE_PROFILE } from '@abp/ng.core';\r\nimport { UserMenuService } from '@abp/ng.theme.shared';\r\nimport { inject, provideAppInitializer } from '@angular/core';\r\nimport { eUserMenuItems } from '../enums/user-menu-items';\r\n\r\nexport const LEPTON_X_USER_MENU_PROVIDERS = [\r\n provideAppInitializer(() => {\r\n configureUserMenu();\r\n }),\r\n];\r\n\r\nexport function configureUserMenu() {\r\n const userMenu = inject(UserMenuService);\r\n const authService = inject(AuthService);\r\n const navigateToManageProfile = inject(NAVIGATE_TO_MANAGE_PROFILE);\r\n userMenu.addItems([\r\n {\r\n id: eUserMenuItems.MyAccount,\r\n order: 100,\r\n textTemplate: {\r\n text: 'AbpAccount::MyAccount',\r\n },\r\n action: () => navigateToManageProfile(),\r\n },\r\n {\r\n id: eUserMenuItems.Logout,\r\n order: 101,\r\n textTemplate: {\r\n text: 'AbpUi::Logout',\r\n },\r\n action: () => authService.logout().subscribe(),\r\n },\r\n ]);\r\n}\r\n","import { inject, provideAppInitializer } from '@angular/core';\r\nimport {\r\n AbpNavbarService,\r\n AbpToolbarService,\r\n} from '@volo/abp.ng.lepton-x.core';\r\n\r\nexport const INIT_SERVICE_PROVIDER = provideAppInitializer(() => {\r\n const abpToolbarService = inject(AbpToolbarService);\r\n const abpNavbarService = inject(AbpNavbarService);\r\n\r\n abpToolbarService.listenNavItems();\r\n abpNavbarService.initRoutes();\r\n});\r\n","import { ModuleWithProviders, NgModule, Provider } from '@angular/core';\r\nimport { LpxStyles } from '@volo/ngx-lepton-x.core';\r\nimport { LpxModule, LpxOptions } from '@volo/ngx-lepton-x.lite';\r\nimport { ValidationErrorModule } from './components/validation-error';\r\nimport { LPX_USER_PROVIDER } from './providers/user.provider';\r\nimport { LPX_LANGUAGE_PROVIDER } from './providers/language.provider';\r\nimport { LPX_TRANSLATE_PROVIDER } from './providers/translate.provider';\r\nimport { LEPTON_X_USER_MENU_PROVIDERS } from './providers/user-menu-service.provider';\r\nimport { LeptonXAbpCoreModule } from '@volo/abp.ng.lepton-x.core';\r\nimport { INIT_SERVICE_PROVIDER } from './providers';\r\n\r\nexport type ThemeLeptonXModuleOptions = LpxOptions;\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [LpxModule, ValidationErrorModule],\r\n exports: [],\r\n})\r\nexport class ThemeLeptonXModule {\r\n static forRoot(\r\n options?: ThemeLeptonXModuleOptions\r\n ): ModuleWithProviders<ThemeLeptonXModule> {\r\n return {\r\n ngModule: ThemeLeptonXModule,\r\n providers: [\r\n LpxModule.forRoot(createLpxModuleOptions(options))\r\n .providers as Provider,\r\n ValidationErrorModule.forRoot().providers as Provider,\r\n LPX_USER_PROVIDER,\r\n LPX_LANGUAGE_PROVIDER,\r\n LPX_TRANSLATE_PROVIDER,\r\n LEPTON_X_USER_MENU_PROVIDERS,\r\n INIT_SERVICE_PROVIDER,\r\n LeptonXAbpCoreModule.forRoot().providers as Provider,\r\n ],\r\n };\r\n }\r\n}\r\n\r\nfunction createLpxModuleOptions(options?: ThemeLeptonXModuleOptions) {\r\n return {\r\n ...options,\r\n styleFactory: (styles: LpxStyles) => {\r\n styles.push({\r\n bundleName: 'abp-bundle',\r\n });\r\n if (options?.styleFactory) {\r\n return options.styleFactory(styles);\r\n }\r\n return styles;\r\n },\r\n };\r\n}\r\n","/*\r\n * Public API Surface of theme-lepton-x\r\n */\r\nexport * from './lib/theme-lepton-x.module';\r\nexport * from './lib/components/index';\r\nexport * from './lib/services/index';\r\nexport * from './lib/enums/index';\r\nexport * from './lib/providers/index';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["ErrorComponent"],"mappings":"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"}
@@ -1,3 +1,2 @@
1
- import { Injector, Provider } from '@angular/core';
2
- export declare const LPX_LAYOUT_PROVIDER: Provider;
3
- export declare function initLayouts(injector: Injector): () => void;
1
+ export declare const LPX_LAYOUT_PROVIDER: import("@angular/core").EnvironmentProviders;
2
+ export declare function initLayouts(): void;
@@ -1,3 +1,2 @@
1
- import { Injector, Provider } from '@angular/core';
2
- export declare const NAV_ITEM_PROVIDER: Provider;
3
- export declare function addNavItems(injector: Injector): () => void;
1
+ export declare const NAV_ITEM_PROVIDER: import("@angular/core").EnvironmentProviders;
2
+ export declare function addNavItems(): void;
@@ -1,3 +1 @@
1
- import { Provider } from '@angular/core';
2
- export declare const INIT_SERVICE_PROVIDER: Provider;
3
- export declare function initServices(): () => void;
1
+ export declare const INIT_SERVICE_PROVIDER: import("@angular/core").EnvironmentProviders;
@@ -1,9 +1 @@
1
- import { Injector } from '@angular/core';
2
- export declare const LPX_LANGUAGE_PROVIDER: {
3
- provide: import("@angular/core").InjectionToken<readonly (() => import("rxjs").Observable<unknown> | Promise<unknown> | void)[]>;
4
- multi: boolean;
5
- deps: (typeof Injector)[];
6
- useFactory: typeof initLanguage;
7
- };
8
- declare function initLanguage(injector: Injector): () => void;
9
- export {};
1
+ export declare const LPX_LANGUAGE_PROVIDER: import("@angular/core").EnvironmentProviders;
@@ -1,8 +1,2 @@
1
- import { Injector } from '@angular/core';
2
- export declare const LEPTON_X_USER_MENU_PROVIDERS: {
3
- provide: import("@angular/core").InjectionToken<readonly (() => import("rxjs").Observable<unknown> | Promise<unknown> | void)[]>;
4
- useFactory: typeof configureUserMenu;
5
- deps: (typeof Injector)[];
6
- multi: boolean;
7
- }[];
8
- export declare function configureUserMenu(injector: Injector): () => void;
1
+ export declare const LEPTON_X_USER_MENU_PROVIDERS: import("@angular/core").EnvironmentProviders[];
2
+ export declare function configureUserMenu(): void;
@@ -1,9 +1 @@
1
- import { Injector } from '@angular/core';
2
- export declare const LPX_USER_PROVIDER: {
3
- provide: import("@angular/core").InjectionToken<readonly (() => import("rxjs").Observable<unknown> | Promise<unknown> | void)[]>;
4
- multi: boolean;
5
- deps: (typeof Injector)[];
6
- useFactory: typeof initUser;
7
- };
8
- declare function initUser(injector: Injector): () => void;
9
- export {};
1
+ export declare const LPX_USER_PROVIDER: import("@angular/core").EnvironmentProviders;
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@abp/ng.theme.lepton-x",
3
- "version": "4.0.4",
3
+ "version": "4.1.0-rc.1",
4
4
  "dependencies": {
5
5
  "tslib": "^2.3.0",
6
- "@volo/ngx-lepton-x.lite": "4.0.4",
7
- "@volo/abp.ng.lepton-x.core": "4.0.4"
6
+ "@volo/ngx-lepton-x.lite": "4.1.0-rc.1",
7
+ "@volo/abp.ng.lepton-x.core": "4.1.0-rc.1"
8
8
  },
9
9
  "peerDependencies": {
10
- "@abp/ng.core": "~9.0.3",
11
- "@abp/ng.theme.shared": "~9.0.3",
12
- "@abp/ng.account.core": "~9.0.3"
10
+ "@abp/ng.core": "~9.1.0-rc.1",
11
+ "@abp/ng.theme.shared": "~9.1.0-rc.1",
12
+ "@abp/ng.account.core": "~9.1.0-rc.1"
13
13
  },
14
14
  "publishConfig": {
15
15
  "access": "public"
@@ -23,20 +23,14 @@
23
23
  },
24
24
  ".": {
25
25
  "types": "./index.d.ts",
26
- "esm2022": "./esm2022/abp-ng.theme.lepton-x.mjs",
27
- "esm": "./esm2022/abp-ng.theme.lepton-x.mjs",
28
26
  "default": "./fesm2022/abp-ng.theme.lepton-x.mjs"
29
27
  },
30
28
  "./account": {
31
29
  "types": "./account/index.d.ts",
32
- "esm2022": "./esm2022/account/abp-ng.theme.lepton-x-account.mjs",
33
- "esm": "./esm2022/account/abp-ng.theme.lepton-x-account.mjs",
34
30
  "default": "./fesm2022/abp-ng.theme.lepton-x-account.mjs"
35
31
  },
36
32
  "./layouts": {
37
33
  "types": "./layouts/index.d.ts",
38
- "esm2022": "./esm2022/layouts/abp-ng.theme.lepton-x-layouts.mjs",
39
- "esm": "./esm2022/layouts/abp-ng.theme.lepton-x-layouts.mjs",
40
34
  "default": "./fesm2022/abp-ng.theme.lepton-x-layouts.mjs"
41
35
  }
42
36
  },
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLmxlcHRvbi14LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy9hYnAtbGVwdG9uLXgvc3JjL2FicC1uZy50aGVtZS5sZXB0b24teC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLmxlcHRvbi14LWFjY291bnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FicC1sZXB0b24teC9hY2NvdW50L3NyYy9hYnAtbmcudGhlbWUubGVwdG9uLXgtYWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -1,14 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/router";
4
- import * as i2 from "@volo/abp.ng.lepton-x.core";
5
- import * as i3 from "./components/auth-layout/auth-wrapper.component";
6
- export class AccountLayoutComponent {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AccountLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.5", type: AccountLayoutComponent, selector: "abp-account-layout", ngImport: i0, template: "<div class=\"container d-flex flex-column vh-100 justify-content-center\">\r\n <abp-page-alert-container></abp-page-alert-container>\r\n <lpx-auth-wrapper>\r\n <router-outlet></router-outlet>\r\n </lpx-auth-wrapper>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i2.PageAlertContainerComponent, selector: "abp-page-alert-container" }, { kind: "component", type: i3.AuthWrapperComponent, selector: "lpx-auth-wrapper" }] }); }
9
- }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AccountLayoutComponent, decorators: [{
11
- type: Component,
12
- args: [{ selector: 'abp-account-layout', template: "<div class=\"container d-flex flex-column vh-100 justify-content-center\">\r\n <abp-page-alert-container></abp-page-alert-container>\r\n <lpx-auth-wrapper>\r\n <router-outlet></router-outlet>\r\n </lpx-auth-wrapper>\r\n</div>\r\n" }]
13
- }] });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hYnAtbGVwdG9uLXgvYWNjb3VudC9zcmMvYWNjb3VudC1sYXlvdXQvYWNjb3VudC1sYXlvdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hYnAtbGVwdG9uLXgvYWNjb3VudC9zcmMvYWNjb3VudC1sYXlvdXQvYWNjb3VudC1sYXlvdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFNeEMsTUFBTSxPQUFPLHNCQUFzQjs4R0FBdEIsc0JBQXNCO2tHQUF0QixzQkFBc0IsMERDTm5DLDZPQU1BOzsyRkRBYSxzQkFBc0I7a0JBSmxDLFNBQVM7K0JBQ0Usb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhYnAtYWNjb3VudC1sYXlvdXQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hY2NvdW50LWxheW91dC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjY291bnRMYXlvdXRDb21wb25lbnQge31cclxuIiwiPGRpdiBjbGFzcz1cImNvbnRhaW5lciBkLWZsZXggZmxleC1jb2x1bW4gdmgtMTAwIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cclxuICA8YWJwLXBhZ2UtYWxlcnQtY29udGFpbmVyPjwvYWJwLXBhZ2UtYWxlcnQtY29udGFpbmVyPlxyXG4gIDxscHgtYXV0aC13cmFwcGVyPlxyXG4gICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxyXG4gIDwvbHB4LWF1dGgtd3JhcHBlcj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -1,72 +0,0 @@
1
- import { APP_INITIALIZER, Injector, NgModule, } from '@angular/core';
2
- import { AccountLayoutComponent } from './account-layout.component';
3
- import { TenantBoxComponent } from './components/tenant-box/tenant-box.component';
4
- import { AuthWrapperComponent } from './components/auth-layout/auth-wrapper.component';
5
- import { CoreModule, ReplaceableComponentsService } from '@abp/ng.core';
6
- import { LpxSideMenuLayoutModule } from '@volo/ngx-lepton-x.lite/layouts';
7
- import { LanguageSelectionModule } from '@volo/ngx-lepton-x.lite';
8
- import { RouterModule } from '@angular/router';
9
- import { ThemeSharedModule } from '@abp/ng.theme.shared';
10
- import { PageAlertContainerModule } from '@volo/abp.ng.lepton-x.core';
11
- import * as i0 from "@angular/core";
12
- export class AccountLayoutModule {
13
- static forRoot() {
14
- return {
15
- ngModule: AccountLayoutModule,
16
- providers: [
17
- {
18
- provide: APP_INITIALIZER,
19
- useFactory: initAccountLayout,
20
- deps: [Injector],
21
- multi: true,
22
- },
23
- ],
24
- };
25
- }
26
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AccountLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
27
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.5", ngImport: i0, type: AccountLayoutModule, declarations: [AccountLayoutComponent], imports: [RouterModule,
28
- CoreModule,
29
- LpxSideMenuLayoutModule,
30
- ThemeSharedModule,
31
- PageAlertContainerModule,
32
- LanguageSelectionModule,
33
- TenantBoxComponent,
34
- AuthWrapperComponent] }); }
35
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AccountLayoutModule, imports: [RouterModule,
36
- CoreModule,
37
- LpxSideMenuLayoutModule,
38
- ThemeSharedModule,
39
- PageAlertContainerModule,
40
- LanguageSelectionModule,
41
- TenantBoxComponent,
42
- AuthWrapperComponent] }); }
43
- }
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.5", ngImport: i0, type: AccountLayoutModule, decorators: [{
45
- type: NgModule,
46
- args: [{
47
- declarations: [
48
- AccountLayoutComponent,
49
- ],
50
- imports: [
51
- RouterModule,
52
- CoreModule,
53
- LpxSideMenuLayoutModule,
54
- ThemeSharedModule,
55
- PageAlertContainerModule,
56
- LanguageSelectionModule,
57
- TenantBoxComponent,
58
- AuthWrapperComponent,
59
- ],
60
- }]
61
- }] });
62
- export function initAccountLayout(injector) {
63
- function init() {
64
- const replaceableComponents = injector.get(ReplaceableComponentsService);
65
- replaceableComponents.add({
66
- key: 'Theme.AccountLayoutComponent',
67
- component: AccountLayoutComponent,
68
- });
69
- }
70
- return init;
71
- }
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1sYXlvdXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hYnAtbGVwdG9uLXgvYWNjb3VudC9zcmMvYWNjb3VudC1sYXlvdXQvYWNjb3VudC1sYXlvdXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxlQUFlLEVBQ2YsUUFBUSxFQUVSLFFBQVEsR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUN2RixPQUFPLEVBQUUsVUFBVSxFQUFFLDRCQUE0QixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFpQnRFLE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLG1CQUFtQjtZQUM3QixTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGVBQWU7b0JBQ3hCLFVBQVUsRUFBRSxpQkFBaUI7b0JBQzdCLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQztvQkFDaEIsS0FBSyxFQUFFLElBQUk7aUJBQ1o7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDOzhHQWJVLG1CQUFtQjsrR0FBbkIsbUJBQW1CLGlCQWI1QixzQkFBc0IsYUFHdEIsWUFBWTtZQUNaLFVBQVU7WUFDVix1QkFBdUI7WUFDdkIsaUJBQWlCO1lBQ2pCLHdCQUF3QjtZQUN4Qix1QkFBdUI7WUFDdkIsa0JBQWtCO1lBQ2xCLG9CQUFvQjsrR0FHWCxtQkFBbUIsWUFWNUIsWUFBWTtZQUNaLFVBQVU7WUFDVix1QkFBdUI7WUFDdkIsaUJBQWlCO1lBQ2pCLHdCQUF3QjtZQUN4Qix1QkFBdUI7WUFDdkIsa0JBQWtCO1lBQ2xCLG9CQUFvQjs7MkZBR1gsbUJBQW1CO2tCQWYvQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixzQkFBc0I7cUJBQ3ZCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFVBQVU7d0JBQ1YsdUJBQXVCO3dCQUN2QixpQkFBaUI7d0JBQ2pCLHdCQUF3Qjt3QkFDeEIsdUJBQXVCO3dCQUN2QixrQkFBa0I7d0JBQ2xCLG9CQUFvQjtxQkFDckI7aUJBQ0Y7O0FBaUJELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxRQUFrQjtJQUNsRCxTQUFTLElBQUk7UUFDWCxNQUFNLHFCQUFxQixHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUN6RSxxQkFBcUIsQ0FBQyxHQUFHLENBQUM7WUFDeEIsR0FBRyxFQUFFLDhCQUE4QjtZQUNuQyxTQUFTLEVBQUUsc0JBQXNCO1NBQ2xDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFQUF9JTklUSUFMSVpFUixcclxuICBJbmplY3RvcixcclxuICBNb2R1bGVXaXRoUHJvdmlkZXJzLFxyXG4gIE5nTW9kdWxlLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY2NvdW50TGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9hY2NvdW50LWxheW91dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUZW5hbnRCb3hDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGVuYW50LWJveC90ZW5hbnQtYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEF1dGhXcmFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2F1dGgtbGF5b3V0L2F1dGgtd3JhcHBlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb3JlTW9kdWxlLCBSZXBsYWNlYWJsZUNvbXBvbmVudHNTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgTHB4U2lkZU1lbnVMYXlvdXRNb2R1bGUgfSBmcm9tICdAdm9sby9uZ3gtbGVwdG9uLXgubGl0ZS9sYXlvdXRzJztcclxuaW1wb3J0IHsgTGFuZ3VhZ2VTZWxlY3Rpb25Nb2R1bGUgfSBmcm9tICdAdm9sby9uZ3gtbGVwdG9uLXgubGl0ZSc7XHJcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQgeyBQYWdlQWxlcnRDb250YWluZXJNb2R1bGUgfSBmcm9tICdAdm9sby9hYnAubmcubGVwdG9uLXguY29yZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgQWNjb3VudExheW91dENvbXBvbmVudCxcclxuICBdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIFJvdXRlck1vZHVsZSxcclxuICAgIENvcmVNb2R1bGUsXHJcbiAgICBMcHhTaWRlTWVudUxheW91dE1vZHVsZSxcclxuICAgIFRoZW1lU2hhcmVkTW9kdWxlLFxyXG4gICAgUGFnZUFsZXJ0Q29udGFpbmVyTW9kdWxlLFxyXG4gICAgTGFuZ3VhZ2VTZWxlY3Rpb25Nb2R1bGUsXHJcbiAgICBUZW5hbnRCb3hDb21wb25lbnQsXHJcbiAgICBBdXRoV3JhcHBlckNvbXBvbmVudCxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWNjb3VudExheW91dE1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxBY2NvdW50TGF5b3V0TW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogQWNjb3VudExheW91dE1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxyXG4gICAgICAgICAgdXNlRmFjdG9yeTogaW5pdEFjY291bnRMYXlvdXQsXHJcbiAgICAgICAgICBkZXBzOiBbSW5qZWN0b3JdLFxyXG4gICAgICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgICAgfSxcclxuICAgICAgXSxcclxuICAgIH07XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaW5pdEFjY291bnRMYXlvdXQoaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgZnVuY3Rpb24gaW5pdCgpIHtcclxuICAgIGNvbnN0IHJlcGxhY2VhYmxlQ29tcG9uZW50cyA9IGluamVjdG9yLmdldChSZXBsYWNlYWJsZUNvbXBvbmVudHNTZXJ2aWNlKTtcclxuICAgIHJlcGxhY2VhYmxlQ29tcG9uZW50cy5hZGQoe1xyXG4gICAgICBrZXk6ICdUaGVtZS5BY2NvdW50TGF5b3V0Q29tcG9uZW50JyxcclxuICAgICAgY29tcG9uZW50OiBBY2NvdW50TGF5b3V0Q29tcG9uZW50LFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gaW5pdDtcclxufVxyXG4iXX0=