{"version":3,"file":"volosoft-abp.ng.theme.lepton-x.mjs","sources":["../../../../libs/volo-lepton-x/src/lib/components/abp-validation-error/abp-validation-error.component.ts","../../../../libs/volo-lepton-x/src/lib/services/abp-settings.service.ts","../../../../libs/volo-lepton-x/src/lib/tokens/http-error-path.token.ts","../../../../libs/volo-lepton-x/src/lib/tokens/translate-key-map.ts","../../../../libs/volo-lepton-x/src/lib/services/abp-create-error-component.service.ts","../../../../libs/volo-lepton-x/src/lib/services/abp-translate.service.ts","../../../../libs/volo-lepton-x/src/lib/services/abp-auth.service.ts","../../../../libs/volo-lepton-x/src/lib/providers/init-service.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/style.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/translate.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/account-layout.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/lepton-x.routes.ts","../../../../libs/volo-lepton-x/src/lib/providers/http-error.provider.ts","../../../../libs/volo-lepton-x/src/lib/enums/user-menu-items.ts","../../../../libs/volo-lepton-x/src/lib/providers/user-menu-service.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/theme-lepton-x.provider.ts","../../../../libs/volo-lepton-x/src/lib/components/abp-validation-error/abp-validation-error.module.ts","../../../../libs/volo-lepton-x/src/lib/components/http-error/http-error.component.ts","../../../../libs/volo-lepton-x/src/lib/components/http-error/http-error.component.html","../../../../libs/volo-lepton-x/src/lib/lepton-x.module.ts","../../../../libs/volo-lepton-x/src/volosoft-abp.ng.theme.lepton-x.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\r\nimport { Validation, ValidationErrorComponent } from '@ngx-validate/core';\r\nimport { LocalizationPipe } from '@abp/ng.core';\r\n@Component({\r\n  selector: 'abp-validation-error',\r\n  // TODO: add validation error class to span\r\n  template: `\r\n    <span\r\n      class=\"text-danger\"\r\n      data-valmsg-for=\"Role.Name\"\r\n      data-valmsg-replace=\"true\"\r\n    >\r\n      @for (error of abpErrors; track $index) {\r\n        <span>\r\n          {{ error.message | abpLocalization: error.interpoliteParams }}\r\n        </span>\r\n      }\r\n    </span>\r\n  `,\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  styles: [\r\n    `\r\n      :host-context {\r\n        order: 3;\r\n      }\r\n    `,\r\n  ],\r\n  imports: [LocalizationPipe],\r\n})\r\nexport class AbpValidationErrorComponent extends ValidationErrorComponent {\r\n  get abpErrors(): Validation.Error[] & { interpoliteParams?: string[] } {\r\n    if (!this.errors || !this.errors.length) {\r\n      return [];\r\n    }\r\n\r\n    return this.errors.map((error) => {\r\n      if (!error.message) {\r\n        return error;\r\n      }\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;\r\n    });\r\n  }\r\n}\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { filter, map, switchMap } from 'rxjs/operators';\r\nimport { BehaviorSubject, combineLatest, of } from 'rxjs';\r\nimport {\r\n  LanguageService,\r\n  LpxLanguage,\r\n  UserProfileService,\r\n} from '@volo/ngx-lepton-x.core';\r\nimport {\r\n  ConfigStateService,\r\n  CurrentUserDto,\r\n  CurrentTenantDto,\r\n  getLocaleDirection,\r\n  LanguageInfo,\r\n  NAVIGATE_TO_MANAGE_PROFILE,\r\n  SessionStateService,\r\n  RouteBasedCultureUrlService,\r\n} from '@abp/ng.core';\r\n\r\nimport {\r\n  NAVIGATE_TO_MY_SECURITY_LOGS,\r\n  OPEN_MY_LINK_USERS_MODAL,\r\n  PROFILE_PICTURE,\r\n  ProfilePictureImage,\r\n} from '@volo/abp.commercial.ng.ui/config';\r\nimport { UserMenuService } from '@abp/ng.theme.shared';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AbpSettingsService {\r\n  private sessionService = inject(SessionStateService);\r\n  private configStateService = inject(ConfigStateService);\r\n  private languageService = inject(LanguageService);\r\n  private userProfileService = inject(UserProfileService);\r\n  private profilePicture$ =\r\n    inject<BehaviorSubject<ProfilePictureImage>>(PROFILE_PICTURE);\r\n  navigateToManageProfile = inject(NAVIGATE_TO_MANAGE_PROFILE);\r\n  navigateToMySecurityLogs = inject(NAVIGATE_TO_MY_SECURITY_LOGS);\r\n  openMyLinkUsersModal = inject(OPEN_MY_LINK_USERS_MODAL, { optional: true })!;\r\n  private userMenuService = inject(UserMenuService);\r\n\r\n  protected readonly routeCultureUrl = inject(RouteBasedCultureUrlService);\r\n\r\n  setUpListeners() {\r\n    this.listenToLangChange();\r\n    this.setLanguageOptions();\r\n    this.setUserProfile();\r\n    this.setProfilePicture();\r\n    this.setUserMenuGroups();\r\n  }\r\n\r\n  setUserProfile() {\r\n    const emptyStringOnNull = (value?: string) => value || '';\r\n\r\n    const currentUser$ = this.configStateService\r\n      .getOne$('currentUser')\r\n      .pipe(filter<CurrentUserDto>(Boolean));\r\n\r\n    const currentTenant$ = this.configStateService\r\n      .getOne$('currentTenant')\r\n      .pipe(filter<CurrentTenantDto>(Boolean));\r\n\r\n    combineLatest([currentUser$, currentTenant$]).subscribe(\r\n      ([currentUser, currentTenant]) => {\r\n        this.userProfileService.patchUser({\r\n          id: currentUser.id,\r\n          isAuthenticated: currentUser.isAuthenticated,\r\n          userName: currentUser.userName,\r\n          fullName:\r\n            emptyStringOnNull(currentUser.name) +\r\n            ' ' +\r\n            emptyStringOnNull(currentUser.surName),\r\n          email: currentUser.email,\r\n          tenant: currentTenant,\r\n        });\r\n      },\r\n    );\r\n  }\r\n\r\n  setUserMenuGroups() {\r\n    this.userMenuService.items$.subscribe((userMenu) => {\r\n      const userActionGroups = userMenu.reduce(\r\n        (acc, curr, index) => {\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            visible: curr.visible,\r\n          };\r\n          const setIndex = index === userMenu.length - 1 ? 1 : 0;\r\n          acc[setIndex].push(menuItem);\r\n          return acc;\r\n        },\r\n        [[], []],\r\n      );\r\n\r\n      this.userProfileService.patchUser({\r\n        userActionGroups,\r\n      });\r\n    });\r\n  }\r\n\r\n  setProfilePicture() {\r\n    this.profilePicture$\r\n      .pipe(filter<ProfilePictureImage>(Boolean))\r\n      .subscribe((avatar) =>\r\n        this.userProfileService.patchUser({\r\n          avatar: {\r\n            type: avatar.type,\r\n            source: avatar.source || '',\r\n          },\r\n        }),\r\n      );\r\n  }\r\n\r\n  setLanguageOptions() {\r\n    this.sessionService\r\n      .getLanguage$()\r\n      .pipe(\r\n        switchMap((currentLang) =>\r\n          this.configStateService.getDeep$('localization.languages').pipe(\r\n            filter<LanguageInfo[]>(Boolean),\r\n            map((languages: LanguageInfo[]) =>\r\n              languages.map<LpxLanguage>(({ cultureName, ...rest }) => ({\r\n                ...rest,\r\n                cultureName,\r\n                selected: cultureName === currentLang,\r\n                isRTL: getLocaleDirection(cultureName) === 'rtl',\r\n              })),\r\n            ),\r\n          ),\r\n        ),\r\n      )\r\n      .subscribe((settings) => {\r\n        this.languageService.setLanguages(settings);\r\n      });\r\n  }\r\n\r\n  listenToLangChange() {\r\n    this.languageService.selectedLanguage$\r\n      .pipe(filter<LpxLanguage | undefined>(Boolean))\r\n      .subscribe((lang) => {\r\n        this.routeCultureUrl.applyLanguageSelection(lang?.cultureName || '');\r\n      });\r\n  }\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nexport const HTTP_ERROR_PATH = new InjectionToken<string>('HTTP_ERROR_PATH');\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nexport const LPX_TRANSLATE_KEY_MAP_TOKEN = new InjectionToken<{\r\n  [key: string]: string;\r\n}>('LPX_TRANSLATE_KEY_MAP_TOKEN');\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport {\r\n  CreateErrorComponentService,\r\n  ErrorScreenErrorCodes,\r\n  HttpErrorWrapperComponent,\r\n} from '@abp/ng.theme.shared';\r\nimport { HTTP_ERROR_PATH } from '../tokens';\r\n\r\n@Injectable()\r\nexport class AbpCreateErrorComponentService extends CreateErrorComponentService {\r\n  protected readonly router: Router;\r\n  protected readonly httpErrorPath: string;\r\n\r\n  constructor() {\r\n    super();\r\n    this.router = inject(Router);\r\n    this.httpErrorPath = inject(HTTP_ERROR_PATH);\r\n  }\r\n\r\n  override execute(instance: Partial<HttpErrorWrapperComponent>): void {\r\n    if (this.canCreateCustomError(instance.status as ErrorScreenErrorCodes)) {\r\n      super.execute(instance);\r\n      return;\r\n    }\r\n\r\n    const queryParams = { status: instance.status };\r\n    this.router.navigate([this.httpErrorPath], { queryParams });\r\n  }\r\n}\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { LocalizationService } from '@abp/ng.core';\r\nimport {\r\n  flatArrayDeepToObject,\r\n  TranslateService,\r\n} from '@volo/ngx-lepton-x.core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { LPX_TRANSLATE_KEY_MAP_TOKEN } from '../tokens/translate-key-map';\r\n\r\n@Injectable()\r\nexport class AbpTranslateService implements TranslateService {\r\n  private localization = inject(LocalizationService);\r\n  private translateKeys = inject<Array<any>>(LPX_TRANSLATE_KEY_MAP_TOKEN);\r\n\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    const keys = flatArrayDeepToObject(this.translateKeys);\r\n    return keys[key] ? keys[key] : key.includes('::') ? key : undefined;\r\n  }\r\n}\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { AuthService, UserProfileService } from '@volo/ngx-lepton-x.core';\r\nimport { map } from 'rxjs/operators';\r\nimport { AuthService as AuthCoreService } from '@abp/ng.core';\r\n\r\n@Injectable()\r\nexport class AbpAuthService implements AuthService {\r\n  private userProfileService = inject(UserProfileService);\r\n  private authService = inject(AuthCoreService);\r\n\r\n\r\n  isUserExists$ = this.userProfileService.user$.pipe(\r\n    map((user) => user && !!user.userName)\r\n  );\r\n\r\n  navigateToLogin(): void {\r\n    this.authService.navigateToLogin();\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\nimport { AbpSettingsService } from '../services';\r\n\r\nexport const INIT_SERVICE_PROVIDER = provideAppInitializer(() => {\r\n  initServices();\r\n});\r\n\r\nexport function initServices() {\r\n  const navbar = inject(AbpNavbarService);\r\n  const abpToolbar = inject(AbpToolbarService);\r\n  const setting = inject(AbpSettingsService);\r\n\r\n  abpToolbar.listenNavItems();\r\n  setting.setUpListeners();\r\n  navbar.initRoutes();\r\n}\r\n","import { inject, PLATFORM_ID, provideAppInitializer } from '@angular/core';\r\nimport { isPlatformServer } from '@angular/common';\r\n\r\nexport const LPX_STYLE_PROVIDER = provideAppInitializer(() => {\r\n  const platformId = inject(PLATFORM_ID);\r\n  if (isPlatformServer(platformId)) {\r\n    return Promise.resolve();\r\n  }\r\n  const loader = document.querySelector('#lp-page-loader') as HTMLElement;\r\n  if (loader) {\r\n    loader.style.background = 'var(--background)';\r\n    setTimeout(() => loader.parentNode?.removeChild(loader), 500);\r\n  }\r\n  return Promise.resolve();\r\n});\r\n","import { Provider } from '@angular/core';\r\nimport {\r\n  LanguageTranslateKeys,\r\n  LanguageTranslateValues,\r\n  LPX_TRANSLATE_SERVICE_TOKEN,\r\n} from '@volo/ngx-lepton-x.core';\r\nimport { LocalizationService } from '@abp/ng.core';\r\nimport { AbpTranslateService } from '../services/abp-translate.service';\r\nimport { LPX_TRANSLATE_KEY_MAP_TOKEN } from '../tokens/translate-key-map';\r\nimport {\r\n  ThemeTranslateKeys,\r\n  ThemeTranslateValues,\r\n} from '@volosoft/ngx-lepton-x';\r\n\r\nexport const LPX_TRANSLATE_PROVIDER: Provider = {\r\n  provide: LPX_TRANSLATE_SERVICE_TOKEN,\r\n  useFactory: () => {\r\n    return new AbpTranslateService();\r\n  },\r\n  deps: [LocalizationService, LPX_TRANSLATE_KEY_MAP_TOKEN],\r\n};\r\nexport const translateKeys: ThemeTranslateValues & LanguageTranslateValues = {\r\n  [LanguageTranslateKeys.SettingsTitle]: 'LeptonX::Language',\r\n  [ThemeTranslateKeys.AppearanceTitle]: 'LeptonX::Appearance',\r\n  [ThemeTranslateKeys.DarkMode]: 'LeptonX::Theme:dark',\r\n  [ThemeTranslateKeys.LightMode]: 'LeptonX::Theme:light',\r\n  [ThemeTranslateKeys.SemiDarkMode]: 'LeptonX::Theme:dim',\r\n  [ThemeTranslateKeys.System]: 'LeptonX::Theme:system',\r\n};\r\nexport const LPX_TRANSLATE_KEYS_PROVIDER: Provider = {\r\n  provide: LPX_TRANSLATE_KEY_MAP_TOKEN,\r\n  multi: true,\r\n  useValue: translateKeys,\r\n};\r\n","import { ReplaceableComponentsService } from '@abp/ng.core';\r\nimport { inject, provideAppInitializer } from '@angular/core';\r\nimport { eThemeLeptonXComponents } from '../enums';\r\nimport { AccountLayoutComponent } from '@volosoft/abp.ng.theme.lepton-x/account';\r\n\r\nexport const ACCOUNT_LAYOUT_PROVIDER = provideAppInitializer(() => {\r\n  initAccountLayout();\r\n});\r\n\r\nexport function initAccountLayout() {\r\n  const replaceableComponents = inject(ReplaceableComponentsService);\r\n  replaceableComponents.add({\r\n    key: eThemeLeptonXComponents.AccountLayout,\r\n    component: AccountLayoutComponent,\r\n  });\r\n}\r\n","import { EnvironmentProviders } from '@angular/core';\r\nimport { provideRouter } from '@angular/router';\r\nimport { ThemeLeptonXModuleOptions } from './theme-lepton-x.provider';\r\n\r\nexport function leptonXRoutes(\r\n  options: ThemeLeptonXModuleOptions,\r\n): EnvironmentProviders {\r\n  const { httpError } = options || {};\r\n\r\n  return provideRouter([\r\n    {\r\n      pathMatch: 'full',\r\n      path: httpError?.errorPath || 'error',\r\n      loadComponent: () =>\r\n        import('./../components/http-error/http-error.component').then(\r\n          (c) => c.HttpErrorComponent,\r\n        ),\r\n    },\r\n  ]);\r\n}\r\n","import { EnvironmentProviders, Provider } from '@angular/core';\r\nimport { CreateErrorComponentService } from '@abp/ng.theme.shared';\r\nimport { AbpCreateErrorComponentService } from '../services';\r\nimport { HTTP_ERROR_PATH } from '../tokens';\r\nimport { leptonXRoutes } from './lepton-x.routes';\r\nimport { ThemeLeptonXModuleOptions } from './theme-lepton-x.provider';\r\n\r\nexport function httpErrorProvider(\r\n  options: ThemeLeptonXModuleOptions,\r\n): (Provider | EnvironmentProviders)[] {\r\n  const { httpError } = options || {};\r\n\r\n  return [\r\n    {\r\n      provide: HTTP_ERROR_PATH,\r\n      useValue: httpError?.errorPath || 'error',\r\n    },\r\n    {\r\n      provide: CreateErrorComponentService,\r\n      useClass: AbpCreateErrorComponentService,\r\n    },\r\n    leptonXRoutes(options),\r\n  ];\r\n}\r\n","export enum eUserMenuItems {\r\n  Sessions = 'Sessions',\r\n  SwitchTenant = 'SwitchTenant',\r\n  ExternalLogins = 'ExternalLogins',\r\n  LinkedAccounts = 'LinkedAccounts',\r\n  MyAccount = 'MyAccount',\r\n  SecurityLogs = 'SecurityLogs',\r\n  BackToImpersonator = 'BackToImpersonator',\r\n  AuthorityDelegation = 'AuthorityDelegation',\r\n  Logout = 'Logout',\r\n}\r\n","import { inject, provideAppInitializer } from '@angular/core';\r\nimport { map } from 'rxjs';\r\nimport {\r\n  AuthService,\r\n  ConfigStateService,\r\n  EnvironmentService,\r\n  NAVIGATE_TO_MANAGE_PROFILE,\r\n  TenantUserSharingStrategy,\r\n} from '@abp/ng.core';\r\nimport { UserMenuService } from '@abp/ng.theme.shared';\r\nimport {\r\n  NAVIGATE_TO_MY_SESSIONS,\r\n  NAVIGATE_TO_MY_SECURITY_LOGS,\r\n  OPEN_MY_LINK_USERS_MODAL,\r\n  OPEN_AUTHORITY_DELEGATION_MODAL,\r\n  NAVIGATE_TO_MY_EXTERNAL_LOGINS,\r\n  OPEN_SWITCH_TENANT_MODAL,\r\n} from '@volo/abp.commercial.ng.ui/config';\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 configState = inject(ConfigStateService);\r\n  const environment = inject(EnvironmentService);\r\n\r\n  const navigateToMySessions = inject(NAVIGATE_TO_MY_SESSIONS);\r\n  const navigateToMyExternalLogins = inject(NAVIGATE_TO_MY_EXTERNAL_LOGINS);\r\n  const navigateToManageProfile = inject(NAVIGATE_TO_MANAGE_PROFILE);\r\n  const navigateToMySecurityLogs = inject(NAVIGATE_TO_MY_SECURITY_LOGS);\r\n\r\n  const openMyLinkUsersModal = inject(OPEN_MY_LINK_USERS_MODAL, {\r\n    optional: true,\r\n  }) as () => void;\r\n\r\n  const openAuthorityDelegationModal = inject(OPEN_AUTHORITY_DELEGATION_MODAL, {\r\n    optional: true,\r\n  }) as () => void;\r\n\r\n  const openSwitchTenantModal = inject(OPEN_SWITCH_TENANT_MODAL, {\r\n    optional: true,\r\n  }) as (() => void) | null;\r\n\r\n  userMenu.addItems([\r\n    {\r\n      id: eUserMenuItems.Sessions,\r\n      order: 100,\r\n      textTemplate: {\r\n        icon: 'bi bi-clock-fill',\r\n        text: 'AbpAccount::Sessions',\r\n      },\r\n      action: () => navigateToMySessions(),\r\n    },\r\n    {\r\n      id: eUserMenuItems.SwitchTenant,\r\n      order: 101,\r\n      textTemplate: {\r\n        icon: 'bi bi-arrow-left-right',\r\n        text: 'AbpAccount::SwitchTenant',\r\n      },\r\n      visible: () => {\r\n        if (!openSwitchTenantModal) return false;\r\n        return configState.getOne$('multiTenancy').pipe(\r\n          map(\r\n            multiTenancy =>\r\n              multiTenancy?.isEnabled &&\r\n              multiTenancy?.userSharingStrategy === TenantUserSharingStrategy.Shared,\r\n          ),\r\n        );\r\n      },\r\n      action: () => openSwitchTenantModal?.(),\r\n    },\r\n    {\r\n      id: eUserMenuItems.ExternalLogins,\r\n      order: 102,\r\n      textTemplate: {\r\n        icon: 'bi bi-person-circle',\r\n        text: 'AbpAccount::ExternalLogins',\r\n      },\r\n      action: () => navigateToMyExternalLogins(),\r\n      visible: () => {\r\n        return environment.getEnvironment$().pipe(\r\n          map(({ oAuthConfig }) => {\r\n            return oAuthConfig?.responseType === 'code';\r\n          }),\r\n        );\r\n      },\r\n    },\r\n    {\r\n      id: eUserMenuItems.LinkedAccounts,\r\n      order: 103,\r\n      textTemplate: {\r\n        icon: 'bi bi-link',\r\n        text: 'AbpAccount::LinkedAccounts',\r\n      },\r\n      action: () => openMyLinkUsersModal(),\r\n      visible: () => !!openMyLinkUsersModal,\r\n    },\r\n    {\r\n      id: eUserMenuItems.AuthorityDelegation,\r\n      order: 104,\r\n      textTemplate: {\r\n        text: 'AbpAccount::AuthorityDelegation',\r\n        icon: 'fa fa-users',\r\n      },\r\n      visible: () => {\r\n        return configState\r\n          .getOne$('currentUser')\r\n          .pipe(map(({ impersonatorUserId }) => !Boolean(impersonatorUserId)));\r\n      },\r\n      action: () => openAuthorityDelegationModal(),\r\n    },\r\n    {\r\n      id: eUserMenuItems.MyAccount,\r\n      order: 105,\r\n      textTemplate: {\r\n        icon: 'bi bi-sliders',\r\n        text: 'AbpAccount::MyAccount',\r\n      },\r\n      action: () => navigateToManageProfile(),\r\n    },\r\n    {\r\n      id: eUserMenuItems.SecurityLogs,\r\n      order: 106,\r\n      textTemplate: {\r\n        icon: 'bi bi-list-ul',\r\n        text: 'AbpAccount::MySecurityLogs',\r\n      },\r\n      action: () => navigateToMySecurityLogs(),\r\n    },\r\n    {\r\n      id: eUserMenuItems.Logout,\r\n      order: 108, // The order has taken to 108 deliberately since we moved the back to impersonator item to the end of the menu\r\n      textTemplate: {\r\n        icon: 'bi bi-box-arrow-right',\r\n        text: 'AbpUi::Logout',\r\n      },\r\n      action: () => {\r\n        authService.logout().subscribe();\r\n      },\r\n    },\r\n  ]);\r\n}\r\n","import {\r\n  Provider,\r\n  EnvironmentProviders,\r\n  makeEnvironmentProviders,\r\n} from '@angular/core';\r\nimport {\r\n  VALIDATION_ERROR_TEMPLATE,\r\n  VALIDATION_INVALID_CLASSES,\r\n  VALIDATION_TARGET_SELECTOR,\r\n} from '@ngx-validate/core';\r\nimport { LpxStyles } from '@volo/ngx-lepton-x.core';\r\nimport { LpxOptions, provideLpx, withLpxOptions } from '@volosoft/ngx-lepton-x';\r\nimport { PROFILE_PICTURE_PROVIDERS } from '@volo/abp.commercial.ng.ui/config';\r\nimport { provideLeptonXAbpCore } from '@volo/abp.ng.lepton-x.core';\r\nimport { AbpValidationErrorComponent } from '../components';\r\nimport {\r\n  LPX_TRANSLATE_KEYS_PROVIDER,\r\n  LPX_TRANSLATE_PROVIDER,\r\n  httpErrorProvider,\r\n  INIT_SERVICE_PROVIDER,\r\n  LPX_STYLE_PROVIDER,\r\n  LEPTON_X_USER_MENU_PROVIDERS,\r\n  ACCOUNT_LAYOUT_PROVIDER,\r\n} from './';\r\n\r\nexport type ThemeLeptonXModuleOptions = LpxOptions;\r\n\r\nexport enum ThemeLeptonXFeatureKind {\r\n  Options,\r\n}\r\n\r\nexport interface ThemeLeptonXFeature<KindT extends ThemeLeptonXFeatureKind> {\r\n  ɵkind: KindT;\r\n  ɵproviders: (Provider | EnvironmentProviders)[];\r\n}\r\n\r\nfunction makeThemeLeptonXFeature<KindT extends ThemeLeptonXFeatureKind>(\r\n  kind: KindT,\r\n  providers: (Provider | EnvironmentProviders)[],\r\n): ThemeLeptonXFeature<KindT> {\r\n  return {\r\n    ɵkind: kind,\r\n    ɵproviders: providers,\r\n  };\r\n}\r\n\r\nexport function withThemeLeptonXOptions(\r\n  options = {} as ThemeLeptonXModuleOptions,\r\n): ThemeLeptonXFeature<ThemeLeptonXFeatureKind.Options> {\r\n  const lpxModuleOptions: LpxOptions = {\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  return makeThemeLeptonXFeature(ThemeLeptonXFeatureKind.Options, [\r\n    provideLpx(withLpxOptions(lpxModuleOptions)),\r\n    httpErrorProvider(options),\r\n  ]);\r\n}\r\n\r\nexport function provideAbpValidationError(): EnvironmentProviders {\r\n  const providers = [\r\n    {\r\n      provide: VALIDATION_ERROR_TEMPLATE,\r\n      useValue: AbpValidationErrorComponent,\r\n    },\r\n    {\r\n      provide: VALIDATION_INVALID_CLASSES,\r\n      useValue: 'is-invalid',\r\n    },\r\n    {\r\n      provide: VALIDATION_TARGET_SELECTOR,\r\n      useValue: '.form-group',\r\n    },\r\n  ];\r\n\r\n  return makeEnvironmentProviders(providers);\r\n}\r\n\r\nexport function provideThemeLeptonX(\r\n  ...features: ThemeLeptonXFeature<ThemeLeptonXFeatureKind>[]\r\n): EnvironmentProviders {\r\n  const providers: (Provider | EnvironmentProviders)[] = [\r\n    LPX_STYLE_PROVIDER,\r\n    PROFILE_PICTURE_PROVIDERS,\r\n    LEPTON_X_USER_MENU_PROVIDERS,\r\n    INIT_SERVICE_PROVIDER,\r\n    provideAbpValidationError(),\r\n    provideLeptonXAbpCore(),\r\n    ACCOUNT_LAYOUT_PROVIDER,\r\n    provideLpx(),\r\n    LPX_TRANSLATE_KEYS_PROVIDER,\r\n    LPX_TRANSLATE_PROVIDER,\r\n  ];\r\n\r\n  features.forEach(({ ɵproviders }) => providers.push(...ɵproviders));\r\n\r\n  return makeEnvironmentProviders(providers);\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\r\nimport { CoreModule } from '@abp/ng.core';\r\nimport { AbpValidationErrorComponent } from './abp-validation-error.component';\r\nimport { provideAbpValidationError } from '../../providers';\r\n\r\n@NgModule({\r\n  imports: [\r\n    CommonModule,\r\n    CoreModule,\r\n    NgxValidateCoreModule,\r\n    AbpValidationErrorComponent,\r\n  ],\r\n  exports: [AbpValidationErrorComponent, NgxValidateCoreModule],\r\n})\r\nexport class AbpValidationErrorModule {\r\n  /**\r\n   * @deprecated `AbpValidationErrorModule.forRoot()` is deprecated. You can use `provideAbpValidationError` **function** instead.\r\n   */\r\n  static forRoot(): ModuleWithProviders<AbpValidationErrorModule> {\r\n    return {\r\n      ngModule: AbpValidationErrorModule,\r\n      providers: [provideAbpValidationError()],\r\n    };\r\n  }\r\n}\r\n","import {\r\n  Component,\r\n  computed,\r\n  inject,\r\n  PLATFORM_ID,\r\n  signal,\r\n} from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { isPlatformBrowser, Location } from '@angular/common';\r\nimport { Subject } from 'rxjs';\r\nimport {\r\n  LocalizationPipe,\r\n  ReplaceableTemplateDirective,\r\n  RouterEvents,\r\n} from '@abp/ng.core';\r\nimport { HTTP_ERROR_STATUS, HTTP_ERROR_DETAIL } from '@abp/ng.theme.shared';\r\nimport { eThemeLeptonXComponents } from '../../enums';\r\n\r\n@Component({\r\n  selector: 'abp-http-error',\r\n  imports: [LocalizationPipe, ReplaceableTemplateDirective],\r\n  templateUrl: './http-error.component.html',\r\n})\r\nexport class HttpErrorComponent {\r\n  protected readonly router = inject(Router);\r\n  protected readonly activatedRoute = inject(ActivatedRoute);\r\n  protected readonly location = inject(Location);\r\n  protected readonly routerEvents = inject(RouterEvents);\r\n  protected readonly platformId = inject(PLATFORM_ID);\r\n\r\n  public readonly destroy$: Subject<void>;\r\n\r\n  protected readonly errorComponentKey = eThemeLeptonXComponents.HttpError;\r\n  protected readonly status = signal(0);\r\n\r\n  readonly lastNavigation = this.routerEvents.previousNavigation;\r\n  readonly currentNavigation = this.routerEvents.currentNavigation;\r\n\r\n  protected readonly statusText = computed(\r\n    () => HTTP_ERROR_STATUS[this.status()] ?? '',\r\n  );\r\n\r\n  protected readonly detail = computed(\r\n    () => HTTP_ERROR_DETAIL[this.status()] ?? '',\r\n  );\r\n\r\n  constructor() {\r\n    const { status } = this.activatedRoute.snapshot.queryParams;\r\n\r\n    if (!isNaN(status)) {\r\n      this.status.set(+status);\r\n    }\r\n  }\r\n\r\n  goBack(): void {\r\n\r\n    if (!isPlatformBrowser(this.platformId)) {\r\n      return;\r\n    }\r\n\r\n    const url =\r\n      this.status() === 404 ? this.currentNavigation() : this.lastNavigation();\r\n\r\n    if (url) {\r\n      this.router.navigateByUrl(url, { onSameUrlNavigation: 'reload' });\r\n    } else {\r\n      this.location.back();\r\n    }\r\n\r\n    this.destroy$?.next();\r\n  }\r\n\r\n  goHome(): void {\r\n    this.router.navigateByUrl('/', { onSameUrlNavigation: 'reload' });\r\n    this.destroy$?.next();\r\n  }\r\n}\r\n","<ng-container *abpReplaceableTemplate=\"{ componentKey: errorComponentKey }\">\r\n  <div class=\"container\">\r\n    <div class=\"row\">\r\n      <div class=\"col-lg-10 col-md-11 mx-auto\">\r\n        <div\r\n          class=\"d-flex flex-column justify-content-center min-vh-100 align-items-center\"\r\n        >\r\n          <div class=\"card\">\r\n            <div class=\"card-body p-lg-5\">\r\n              <div class=\"row\">\r\n                <div class=\"col-auto d-flex align-items-center\">\r\n                  <i\r\n                    class=\"bi bi-emoji-frown text-primary mb-3 mb-md-0 mx-3 mx-md-4\"\r\n                    style=\"font-size: 12em\"\r\n                  ></i>\r\n                </div>\r\n                <div class=\"col flex-center ps-lg-4\">\r\n                  <div class=\"status-content\">\r\n                    <h1 class=\"fw-bolder display-1 text-brand\">\r\n                      {{ status() }}\r\n                    </h1>\r\n                    <h2 class=\"mb-0\">{{ statusText() | abpLocalization }}</h2>\r\n                    <h5 class=\"text-muted\">{{ detail() | abpLocalization }}</h5>\r\n\r\n                    @if (lastNavigation() && status() !== 403) {\r\n                      <a class=\"btn btn-primary soft me-2\" (click)=\"goBack()\">\r\n                        {{ 'AbpUi::GoBack' | abpLocalization }}\r\n                      </a>\r\n                    }\r\n                    <a class=\"btn btn-primary\" (click)=\"goHome()\">\r\n                      {{ 'AbpUi::GoHomePage' | abpLocalization }}\r\n                    </a>\r\n                  </div>\r\n                </div>\r\n              </div>\r\n            </div>\r\n          </div>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </div>\r\n</ng-container>\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport {\r\n  provideThemeLeptonX,\r\n  ThemeLeptonXModuleOptions,\r\n  withThemeLeptonXOptions,\r\n} from './providers';\r\n\r\n@NgModule()\r\nexport class ThemeLeptonXModule {\r\n  /**\r\n   * @deprecated `ThemeLeptonXModule.forRoot()` is deprecated. You can use `provideThemeLeptonX` **function** instead.\r\n   */\r\n  static forRoot(\r\n    options?: ThemeLeptonXModuleOptions,\r\n  ): ModuleWithProviders<ThemeLeptonXModule> {\r\n    return {\r\n      ngModule: ThemeLeptonXModule,\r\n      providers: [provideThemeLeptonX(withThemeLeptonXOptions(options))],\r\n    };\r\n  }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["AuthCoreService","map"],"mappings":"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"}