{"version":3,"file":"abp-ng.account.core.mjs","sources":["../../../../packages/account-core/src/lib/auth-wrapper.service.ts","../../../../packages/account-core/src/lib/tenant-box.service.ts","../../../../packages/account-core/src/public-api.ts","../../../../packages/account-core/src/abp-ng.account.core.ts"],"sourcesContent":["import { Injectable, Injector, inject } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ConfigStateService, MultiTenancyService } from '@abp/ng.core';\r\n\r\n@Injectable()\r\nexport class AuthWrapperService {\r\n  readonly multiTenancy = inject(MultiTenancyService);\r\n  private configState = inject(ConfigStateService);\r\n\r\n  isMultiTenancyEnabled$ = this.configState.getDeep$('multiTenancy.isEnabled');\r\n\r\n  get enableLocalLogin$(): Observable<boolean> {\r\n    return this.configState\r\n      .getSetting$('Abp.Account.EnableLocalLogin')\r\n      .pipe(map(value => value?.toLowerCase() !== 'false'));\r\n  }\r\n\r\n  tenantBoxKey = 'Account.TenantBoxComponent';\r\n  route: ActivatedRoute;\r\n\r\n  get isTenantBoxVisibleForCurrentRoute() {\r\n    return this.getMostInnerChild().data.tenantBoxVisible ?? true;\r\n  }\r\n\r\n  get isTenantBoxVisible() {\r\n    return this.isTenantBoxVisibleForCurrentRoute && this.multiTenancy.isTenantBoxVisible;\r\n  }\r\n\r\n  constructor() {\r\n    const injector = inject(Injector);\r\n\r\n    this.route = injector.get(ActivatedRoute);\r\n  }\r\n\r\n  private getMostInnerChild() {\r\n    let child = this.route.snapshot;\r\n    let depth = 0;\r\n    const depthLimit = 10;\r\n    while (child.firstChild && depth < depthLimit) {\r\n      child = child.firstChild;\r\n      depth++;\r\n    }\r\n    return child;\r\n  }\r\n}\r\n","import {\r\n  AbpTenantService,\r\n  ConfigStateService,\r\n  CurrentTenantDto,\r\n  SessionStateService,\r\n} from '@abp/ng.core';\r\nimport { ToasterService } from '@abp/ng.theme.shared';\r\nimport { Injectable, inject } from '@angular/core';\r\nimport { finalize } from 'rxjs/operators';\r\n\r\n@Injectable()\r\nexport class TenantBoxService {\r\n  private toasterService = inject(ToasterService);\r\n  private tenantService = inject(AbpTenantService);\r\n  private sessionState = inject(SessionStateService);\r\n  private configState = inject(ConfigStateService);\r\n\r\n  currentTenant$ = this.sessionState.getTenant$();\r\n\r\n  name?: string;\r\n\r\n  isModalVisible!: boolean;\r\n\r\n  modalBusy!: boolean;\r\n\r\n  onSwitch() {\r\n    const tenant = this.sessionState.getTenant();\r\n    this.name = tenant?.name || '';\r\n    this.isModalVisible = true;\r\n  }\r\n\r\n  save() {\r\n    if (!this.name) {\r\n      this.setTenant(null);\r\n      this.isModalVisible = false;\r\n      return;\r\n    }\r\n\r\n    this.modalBusy = true;\r\n    this.tenantService\r\n      .findTenantByName(this.name)\r\n      .pipe(finalize(() => (this.modalBusy = false)))\r\n      .subscribe(({ success, tenantId: id, ...tenant }) => {\r\n        if (!success) {\r\n          this.showError();\r\n          return;\r\n        }\r\n\r\n        this.setTenant({ ...tenant, id, isAvailable: true });\r\n        this.isModalVisible = false;\r\n      });\r\n  }\r\n\r\n  private setTenant(tenant: CurrentTenantDto | null) {\r\n    this.sessionState.setTenant(tenant);\r\n    this.configState.refreshAppState();\r\n  }\r\n\r\n  private showError() {\r\n    this.toasterService.error('AbpUiMultiTenancy::GivenTenantIsNotAvailable', 'AbpUi::Error', {\r\n      messageLocalizationParams: [this.name || ''],\r\n    });\r\n  }\r\n}\r\n","/*\r\n * Public API Surface of account-core\r\n */\r\n\r\nexport * from './lib/auth-wrapper.service';\r\nexport * from './lib/tenant-box.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}