{"version":3,"file":"se-cbms-base-22.mjs","sources":["../../../projects/cbms-base-app/src/lib/cbms-base-app.service.ts","../../../projects/cbms-base-app/src/lib/head/head.component.ts","../../../projects/cbms-base-app/src/lib/head/head.component.html","../../../projects/cbms-base-app/src/lib/services/base.service.ts","../../../projects/cbms-base-app/src/lib/environments/environment.ts","../../../projects/cbms-base-app/src/lib/services/base-menu.service.ts","../../../projects/cbms-base-app/src/lib/app.settings.ts","../../../projects/cbms-base-app/src/lib/cbms.services.ts","../../../projects/cbms-base-app/src/lib/menu/menu.component.ts","../../../projects/cbms-base-app/src/lib/menu/menu.component.html","../../../projects/cbms-base-app/src/lib/cbms-base-app.component.ts","../../../projects/cbms-base-app/src/lib/cbms-base-app.component.html","../../../projects/cbms-base-app/src/lib/dialog/dialog.component.ts","../../../projects/cbms-base-app/src/lib/dialog/dialog.component.html","../../../projects/cbms-base-app/src/lib/popup/popup.component.ts","../../../projects/cbms-base-app/src/lib/popup/popup.component.html","../../../projects/cbms-base-app/src/lib/services/cbms-shared.service.ts","../../../projects/cbms-base-app/src/lib/services/cbms-base-util.service.ts","../../../projects/cbms-base-app/src/lib/services/permission.service.ts","../../../projects/cbms-base-app/src/lib/services/breadcrumb.service.ts","../../../projects/cbms-base-app/src/lib/cbms-breadcrump/cbms-breadcrump.component.ts","../../../projects/cbms-base-app/src/lib/cbms-breadcrump/cbms-breadcrump.component.html","../../../projects/cbms-base-app/src/lib/cbms-base-app.module.ts","../../../projects/cbms-base-app/src/lib/Authorization/auth.guard.ts","../../../projects/cbms-base-app/src/public_api.ts","../../../projects/cbms-base-app/src/se-cbms-base-22.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class CBMSBaseAppService {\r\n\r\n  constructor() { }\r\n}\r\n","import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core';\r\nimport { environment } from '../environments/environment';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n    selector: 'cbms-head-lib',\r\n    templateUrl: './head.component.html',\r\n    styleUrls: ['./head.component.scss'],\r\n    changeDetection: ChangeDetectionStrategy.Eager,\n    standalone: false\r\n})\r\nexport class HeadComponent implements OnInit {\r\n  imageUrl:string='';\r\n  nonProdBackColor:boolean;\r\n  prodBackColor:boolean;\r\n  headerBackgroundColor;\r\n  constructor(private http: HttpClient) { }\r\n  public currentDate:Date = new Date();\r\n  ngOnInit() {\r\n\r\n    this.http.get(\"./assets/config.json\").subscribe(res => {\r\n      const isProductionEnv = res[\"isProductionEnv\"];\r\n      if (!isProductionEnv) { // Non-production Env \r\n        console.log(\"nonProdHeaderLogoImageUrl: \" + res[\"nonProdHeaderLogoImageUrl\"]);\r\n        this.imageUrl = \"./assets/images/\" + res[\"nonProdHeaderLogoImageUrl\"];\r\n        this.nonProdBackColor = true;\r\n        this.prodBackColor = false;\r\n        this.headerBackgroundColor = res[\"nonProdHheaderBackOrangeColorCode\"];\r\n      }\r\n      else {// Production Env\r\n        console.log(\"prodHeaderLogoImageUrl: \" + res[\"prodHeaderLogoImageUrl\"]);\r\n        this.imageUrl = \"assets/images/\" + res[\"prodHeaderLogoImageUrl\"];\r\n        this.nonProdBackColor = false;\r\n        this.prodBackColor = true;\r\n      }\r\n    })\r\n  }\r\n\r\n}\r\n","<table class=\"Header\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" height=\"55\">\n  <tbody>\n    <tr>\n      <td width=\"210\">\n        <img [src]=\"imageUrl\" width=\"210\" height=\"55\" border=\"0\" hspace=\"0\" vspace=\"0\">\n      </td>\n      @if (nonProdBackColor) {\n        <td width=\"99%\" valign=\"top\" align=\"right\" [style.background-color]=\"headerBackgroundColor\">\n          <span class=\"Small\" style=\"background:white\">D_SUMMIT_MAINT_{{currentDate | date:'yyyyMMdd'}}</span>\n        </td>\n      }\n      @if (prodBackColor) {\n        <td width=\"99%\" valign=\"top\" align=\"right\" background=\"./assets/images/burst.jpg\">\n          <span class=\"Small\" style=\"background:white\">D_SUMMIT_MAINT_{{currentDate | date:'yyyyMMdd'}}</span>\n        </td>\n      }\n    </tr>\n  </tbody>\n</table>","import { Injectable, Injector, Inject } from '@angular/core';\r\n// import { map } from 'rxjs/operators'\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\n// import { HttpHeaders, HttpClient, HttpParams } from '@angular/common/http';\r\n\r\nimport { IEnvironmentsInfo } from '../Models/environmentsModel.info';\r\nimport { Observable, throwError,map, lastValueFrom } from 'rxjs';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class BaseService {\r\n\r\n  //private API_ENDPOINT = AppSettings.CBMS_SERVICES_URL;\r\n  private API_ENDPOINT: string;\r\n  private RM_ENDPOINT: string;\r\n  private config: IEnvironmentsInfo;\r\n  private headers: HttpHeaders;\r\n  private postheaders: HttpHeaders;\r\n\r\n  public http: HttpClient;\r\n  \r\n  private getConfig() {\r\n    if (!this.config) {\r\n      try {\r\n        this.config = this.injector.get<IEnvironmentsInfo>('config' as any);\r\n        this.API_ENDPOINT = this.config?.CBMSServiceUrl || '';\r\n        this.RM_ENDPOINT = this.config?.apiBaseUrl || '';\r\n      } catch (error) {\r\n        console.warn('Config not available:', error);\r\n        return false;\r\n      }\r\n    }\r\n    return true;\r\n  }\r\n  \r\n  constructor(public injector: Injector) {\r\n    try {\r\n      this.config = this.injector.get<IEnvironmentsInfo>('config' as any);\r\n      this.API_ENDPOINT = this.config?.CBMSServiceUrl || '';\r\n      this.RM_ENDPOINT = this.config?.apiBaseUrl || '';\r\n    } catch (error) {\r\n      // Config not available, use empty strings\r\n      this.API_ENDPOINT = '';\r\n      this.RM_ENDPOINT = '';\r\n    }\r\n    this.headers = new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded' });\r\n    this.postheaders = new HttpHeaders({'Content-Type': 'application/json'});\r\n    this.http = this.injector.get(HttpClient);\r\n    // Fix: Remove invalid 'application/jsonp' content type - this was causing the issue\r\n    // this.headers = this.headers.set('Content-Type', 'application/jsonp');\r\n    // console.log(\"config\",this.injector.get(\"config\"))\r\n  }\r\n  //private options = new RequestOptions({headers: this.headers});\r\n // private requestOptions = new RequestOptions({ method: RequestMethod.Post, headers: this.postheaders });\r\n  public get(path) {\r\n    if (!this.getConfig() || !this.API_ENDPOINT) {\r\n      return throwError(() => new Error('Configuration not available'));\r\n    }\r\n    //alert(this.API_ENDPOINT + path);\r\n    return this.http.get(this.API_ENDPOINT + path)\r\n    .pipe(map(this.extractData))\r\n      // .map(this.extractData)\r\n      // .catch(error => {\r\n      //   return this.handleError(error || 'Error while executing GET for route ' + path);\r\n      // });\r\n  }\r\n  public getApi(path) {\r\n    return this.http.get(this.API_ENDPOINT  + path,{headers: this.headers})\r\n    .pipe(map(this.extractData))\r\n      // .map(this.extractData)\r\n      // .catch(error => {\r\n      //   return this.handleError(error || 'Error while executing GET for route ' + path);\r\n      // });\r\n  }\r\n  public postData(path, data) {\r\n    // Debug specifically for ValidateUid requests\r\n    if (path.includes('ValidateUid')) {\r\n      console.log('=== ValidateUid Request Debug ===');\r\n      console.log('postData - path:', path);\r\n      console.log('postData - data:', data);\r\n      console.log('postData - headers being sent:', this.postheaders);\r\n      console.log('postData - API_ENDPOINT:', this.API_ENDPOINT);\r\n      console.log('postData - full URL:', this.API_ENDPOINT + path);\r\n      console.log('=== End ValidateUid Request Debug ===');\r\n    }\r\n    \r\n    return this.http.post(this.API_ENDPOINT + path, data, {headers: this.postheaders})\r\n    .pipe(map((response: any) => {\r\n      // Debug specifically for ValidateUid responses\r\n      if (path.includes('ValidateUid')) {\r\n        console.log('=== ValidateUid Response Debug ===');\r\n        console.log('postData - response:', response);\r\n        console.log('postData - response type:', typeof response);\r\n        console.log('=== End ValidateUid Response Debug ===');\r\n      }\r\n      return response;\r\n    }))\r\n      // .catch(error => {\r\n      //   return this.handleError(error || 'Error while executing POST for route ' + path);\r\n      // });\r\n  }\r\n  // public postData(path: string, body: Object = {}) {\r\n  //   debugger;\r\n  //   return this.http.post(\r\n  //     this.API_ENDPOINT + path,\r\n  //     body);\r\n  // }\r\n  public post(path, data) {\r\n    return this.http.post(this.API_ENDPOINT + path, data, {headers: this.postheaders})\r\n    .pipe(map((response: any) => response))\r\n      // .map(this.extractData)\r\n      // .catch(error => {\r\n      //   return this.handleError(error || 'Error while executing POST for route ' + path);\r\n      // });\r\n  }\r\n  public put(path, data) {\r\n    return this.http.put(this.API_ENDPOINT + path, data,{headers: this.headers}).pipe(map((response: any) => response))\r\n    // .catch(error => {\r\n    //   return this.handleError(error || 'Error while executing POST for route ' + path);\r\n    // });\r\n  }\r\n  protected async  postDataAsync(path, data): Promise<any> {\r\n    try {\r\n\r\n      const res$ = await this.http.post(this.API_ENDPOINT + path, data, {headers: this.postheaders});\r\n      const res = await lastValueFrom(res$);\r\n      return res;\r\n    } catch (err) {\r\n      return this.handleError(err || 'Error while executing POST for route ' + path);\r\n    }\r\n  }\r\n  protected async getAsync(path: string): Promise<any> {\r\n    try {\r\n      const res$ = await this.http.get(this.API_ENDPOINT + path);\r\n      const res = await lastValueFrom(res$);\r\n      return res;\r\n  } catch (err) {\r\n    return this.handleError(err || 'Error while executing POST for route ' + path);\r\n  }\r\n}\r\nprotected async getRMAsync(path: string,data:any): Promise<any> {\r\n  try {\r\n      const res$ = await this.http.post(this.RM_ENDPOINT + path, data,{headers: this.postheaders});\r\n     // this.hideLoadingPanel(isNoLoadingPanel);\r\n      const res = await lastValueFrom(res$);\r\n      return res;\r\n  } catch (err) {\r\n    return this.handleError(err || 'Error while executing POST for route ' + path);\r\n  }\r\n}\r\n  protected async postCommonApi(path: string, data: any): Promise<any> {\r\n    try {\r\n      const res$ = await this.http.post(this.config.commonApiServiceUrl + path, data,\r\n      { headers: this.postheaders });\r\n      const res = await lastValueFrom(res$);\r\n      return res;\r\n    } catch (err) {\r\n      return this.handleError(err || 'Error while executing POST for route ' + path);\r\n    }\r\n  }\r\n\r\n   private handleError(error: any) {\r\n    let data;\r\n    try {\r\n      data = error.error || error;\r\n    } catch (e) {\r\n      data = {error: null};\r\n    }\r\n    return throwError({status: error.status, data});\r\n  }\r\n\r\n  private extractData(res: any) {\r\n    try {\r\n      console.log(res);\r\n      return res || {};\r\n    } catch (e) {\r\n      return res;\r\n    }\r\n  }\r\n\r\n  // Debug method to check headers specifically for ValidateUid\r\n  public debugValidateUidHeaders() {\r\n    console.log('=== ValidateUid Headers Debug ===');\r\n    console.log('this.postheaders:', this.postheaders);\r\n    console.log('this.API_ENDPOINT:', this.API_ENDPOINT);\r\n    console.log('Content-Type in postheaders:', this.postheaders.get('Content-Type'));\r\n    console.log('=== End ValidateUid Headers Debug ===');\r\n  }\r\n\r\n  // Special method for ValidateUid with forced JSON handling\r\n  public postDataForValidateUid(path: string, data: any) {\r\n    if (!path.includes('ValidateUid')) {\r\n      console.warn('postDataForValidateUid should only be used for ValidateUid endpoints');\r\n      return this.postData(path, data);\r\n    }\r\n\r\n    console.log('=== ValidateUid Special Request ===');\r\n    console.log('Using special ValidateUid method with forced JSON handling');\r\n    \r\n    // Create headers specifically for ValidateUid\r\n    const validateUidHeaders = new HttpHeaders({\r\n      'Content-Type': 'application/json',\r\n      'Accept': 'application/json',\r\n      'Cache-Control': 'no-cache'\r\n    });\r\n    \r\n    console.log('ValidateUid headers:', validateUidHeaders);\r\n    console.log('ValidateUid data:', data);\r\n    console.log('ValidateUid full URL:', this.API_ENDPOINT + path);\r\n    \r\n    // Ensure valid JSON when body is a raw string\r\n    const jsonBody = typeof data === 'string' ? JSON.stringify(data) : data;\r\n\r\n    return this.http.post(this.API_ENDPOINT + path, jsonBody, {\r\n      headers: validateUidHeaders,\r\n      responseType: 'json' // Force JSON response type\r\n    }).pipe(map((response: any) => {\r\n      console.log('=== ValidateUid Special Response ===');\r\n      console.log('Raw response:', response);\r\n      console.log('Response type:', typeof response);\r\n      \r\n      // Ensure we return parsed JSON\r\n      if (typeof response === 'string') {\r\n        try {\r\n          const parsed = JSON.parse(response);\r\n          console.log('Parsed response:', parsed);\r\n          return parsed;\r\n        } catch (e) {\r\n          console.error('Failed to parse ValidateUid response:', e);\r\n          return response;\r\n        }\r\n      }\r\n      \r\n      return response;\r\n    }));\r\n  }\r\n\r\n  // Try multiple content-types/payload shapes for legacy ValidateUid endpoints\r\n  public async postValidateUidWithFallbacks(path: string, uid: string): Promise<any> {\r\n    const fullUrl = this.API_ENDPOINT + path;\r\n    // 1) text/plain raw body\r\n    try {\r\n      const res$ = this.http.post(fullUrl, uid, {\r\n        headers: new HttpHeaders({ 'Content-Type': 'text/plain' }),\r\n        responseType: 'json'\r\n      });\r\n      return await lastValueFrom(res$);\r\n    } catch (err: any) {\r\n      if (err?.status !== 400) throw err;\r\n    }\r\n\r\n    // 2) JSON object with UserUid key\r\n    try {\r\n      const res$ = this.http.post(fullUrl, { UserUid: uid }, {\r\n        headers: new HttpHeaders({ 'Content-Type': 'application/json' }),\r\n        responseType: 'json'\r\n      });\r\n      return await lastValueFrom(res$);\r\n    } catch (err: any) {\r\n      if (err?.status !== 400) throw err;\r\n    }\r\n\r\n    // 3) application/x-www-form-urlencoded\r\n    try {\r\n      const body = `UserUid=${encodeURIComponent(uid)}`;\r\n      const res$ = this.http.post(fullUrl, body, {\r\n        headers: new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded' }),\r\n        responseType: 'json'\r\n      });\r\n      return await lastValueFrom(res$);\r\n    } catch (err) {\r\n      throw err;\r\n    }\r\n  }\r\n}\r\n","\r\n\r\nexport const environment = {\r\n  production: false,\r\n\r\n  CBMS_LOGIN_URL:\"http://cbms-tk1.ems.schneider-electric.com/cbms/index.jsp\",\r\n  rmBaseUrl: 'http://cbmsnet-tk1.ems.schneider-electric.com/RiskManagement/services/api/',\r\n  apiBaseUrl: 'http://cbmsnet-tk1.ems.schneider-electric.com/RiskManagement/services/api/', \r\n  CBMSServiceUrl: 'http://cbmsnet-tk1.ems.schneider-electric.com/CBMSService/',\r\n  headerLogoImageUrl : 'schneider_logo.png',\r\n  headerBackColorCode:'#e47f00'\r\n};\r\n","import { Injectable, Injector, Inject } from '@angular/core';\r\n\r\nimport { environment } from '../environments/environment';\r\nimport { HttpHeaders, HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Observable, throwError, catchError, map, tap, lastValueFrom } from 'rxjs';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Location } from \"@angular/common\";\r\nimport { IEnvironmentsInfo } from '../Models/environmentsModel.info';\r\n\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class BaseMenuService {\r\n\r\n  constructor(@Inject('config') private config: IEnvironmentsInfo,\r\n    private http: HttpClient, private location: Location, private route: Router\r\n  ) {\r\n    try {\r\n      this.serviceUrl = this.config?.CBMSServiceUrl || environment.CBMSServiceUrl;\r\n    } catch (error) {\r\n      // Fallback to environment if config is not available\r\n      this.serviceUrl =  environment.CBMSServiceUrl;\r\n    }\r\n  }\r\n\r\n  get options(): IEnvironmentsInfo {\r\n    return this.config || environment as any;\r\n  }\r\n  private serviceUrl: string;\r\n  private formatErrors(error: any) {\r\n\r\n    return throwError(error.error);\r\n  }\r\n  get(path: string, body: Object = {}, params: HttpParams = new HttpParams()): Observable<any> {\r\n    return this.http.get(\r\n      this.serviceUrl + path,\r\n      body\r\n    ).pipe(catchError(this.formatErrors));\r\n  }\r\n  put(path: string, body: Object = {}): Observable<any> {\r\n    return this.http.put(\r\n      this.serviceUrl + path,\r\n      JSON.stringify(body)\r\n    ).pipe(catchError(this.formatErrors));\r\n  }\r\n  post(path: string, body: Object = {}): Observable<any> {\r\n    return this.http.post(\r\n      this.serviceUrl + path,\r\n      body).pipe(catchError(this.formatErrors));\r\n  }\r\n  postExcel(path: string, body: Object = {}): Observable<any> {\r\n    return this.http.post(\r\n      this.serviceUrl + path,\r\n      body,\r\n      { responseType: 'blob' as 'json' }).pipe(catchError(this.formatErrors));\r\n  }\r\n  contractPost(path: string, body: Object = {}): Observable<any> {\r\n    return this.http.post(\r\n      this.serviceUrl + path,\r\n      body,\r\n      { responseType: 'text' }\r\n    ).pipe(catchError(this.formatErrors));\r\n  }\r\n  delete(path: string, body: Object = {}): Observable<any> {\r\n    return this.http.delete(\r\n      this.serviceUrl + path,\r\n      body\r\n    ).pipe(catchError(this.formatErrors));\r\n  }\r\n  patch(path: string, body: Object = {}): Observable<any> {\r\n    return this.http.patch(\r\n      this.serviceUrl + path,\r\n      body,\r\n      { responseType: 'text' }\r\n    ).pipe(catchError(this.formatErrors));\r\n  }\r\n\r\n  async postasync(path: string, body: Object = {}) {\r\n    let loading = false;\r\n    const res$ = await this.http\r\n      .post(this.serviceUrl + path,\r\n        body)\r\n      .pipe(\r\n        map(response => response),\r\n        tap(() => loading = false));\r\n    const res = await lastValueFrom(res$);\r\n    return res;\r\n  }\r\n\r\n}\r\n","export class AppSettings {\r\n    public static API_ENDPOINT = \"http://localhost:4200/\";    \r\n    public static CBMS_LOGIN_URL=\"http://cbms-tk4.ems.schneider-electric.com/cbms/index.jsp\";\r\n    //public static CBMS_SERVICES_URL = \"http://localhost:1400\"; \r\n    public static CBMS_SERVICES_URL = \"http://cbmsnet-tk4.ems.schneider-electric.com/CBMSService\";  \r\n   // public static apiMenuUrl= 'http://localhost:1400'; // change locally\r\n    public static   apiBaseUrl= 'http://localhost:58529/api/'; \r\n}","import { Injectable, Injector, EventEmitter, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { lastValueFrom, map} from 'rxjs';\r\nimport {BaseService } from './services/base.service';\r\nimport {BaseMenuService } from './services/base-menu.service';\r\n\r\nimport {AppSettings} from './app.settings'\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\n@Injectable({\r\n    providedIn: 'root'\r\n  })\r\n\r\n\r\nexport class CbmsService extends BaseService  {\r\n    constructor(private apiService: BaseMenuService,public override http: HttpClient, public override injector: Injector,private queryStringRouter: ActivatedRoute ) {\r\n        // super(injector, environment.apiApiMenuUrl, environment.apiBaseUrl);\r\n        super(injector);\r\n    }\r\n    public ValidateLogin(obj): any {\r\n        // const response = this.apiService.get('/Common/CommonService.svc/cbms/ValidateUser?UserName='+ obj.UserName + '&Password=' + obj.Password)\r\n        // return response;\r\n       return this.get('/Common/CommonService.svc/cbms/ValidateUser?UserName=' + obj.UserName + '&Password=' + obj.Password);\r\n    }\r\n    public SaveUser(obj): any {\r\n        // return this.post('tenant/Contact', obj);\r\n        return this.post('cbms/SaveUser', obj);\r\n       // const response = this.apiService.post('cbms/SaveUser')\r\n        //return response;\r\n    }\r\n    public GetData(): any {\r\n       return this.getApi('Cbms/GetData');\r\n        // const response = this.apiService.get('Cbms/GetData')\r\n        // return response;\r\n    }\r\n    public GetMenu(uid): any {\r\n        return this.postData('/Common/CommonService.svc/CBMS/Menulist', uid);\r\n    }\r\n\r\n    public ValidateXid(xid): any {\r\n       return this.post('Common/CommonService.svc/CBMS/ValidateUid', xid);\r\n        // const response = this.apiService.post('Common/CommonService.svc/CBMS/ValidateUid',xid)\r\n        // return response;\r\n    }\r\n\r\n    // public ValidateUid(strUid):any{\r\n    //     return this.get('/Common/CommonService.svc/cbms/ValidateUid?UserUid=' + strUid);       \r\n    // }\r\n\r\n\r\n    public async ValidateUid(xid) {\r\n        // Use special method for ValidateUid with forced JSON handling\r\n        const response$ = await this.postDataForValidateUid('Common/CommonService.svc/CBMS/ValidateUid', xid);\r\n        const response = await lastValueFrom(response$);\r\n        return response;\r\n    }\r\n\r\n    // Debug method specifically for ValidateUid issues\r\n    public debugValidateUidSetup() {\r\n        console.log('=== CbmsService ValidateUid Debug ===');\r\n        console.log('Service initialized with injector:', this.injector);\r\n        try {\r\n            const config = this.injector.get('config' as any);\r\n            console.log('Injected config:', config);\r\n            console.log('Config CBMSServiceUrl:', (config as any)?.CBMSServiceUrl);\r\n        } catch (error) {\r\n            console.error('Error getting config:', error);\r\n        }\r\n        console.log('=== End CbmsService ValidateUid Debug ===');\r\n    }\r\n\r\n    // Comprehensive debug method for calling project issues\r\n    public debugCallingProjectIssues() {\r\n        console.log('=== Calling Project Debug ===');\r\n        console.log('1. Check if calling project has HTTP_INTERCEPTORS');\r\n        console.log('2. Check if calling project sets responseType: \"text\"');\r\n        console.log('3. Check if calling project overrides HttpClient globally');\r\n        console.log('4. Check if calling project has custom error handlers');\r\n        console.log('5. Check if calling project modifies Content-Type headers');\r\n        console.log('=== End Calling Project Debug ===');\r\n        \r\n        // Also debug our service state\r\n        this.debugValidateUidSetup();\r\n        this.debugValidateUidHeaders();\r\n    }\r\n\r\n    public getClientList(ClientSearchData: any): any {\r\n        return this.http.post(AppSettings.CBMS_SERVICES_URL + 'Common/CommonService.svc/CBMS/Client/Search', ClientSearchData)\r\n         .pipe(map(response => response))\r\n        //const response = this.apiService.post(AppSettings.CBMS_SERVICES_URL + 'Common/CommonService.svc/CBMS/Client/Search',ClientSearchData)\r\n        //return response;\r\n\r\n    }\r\n\r\n  \r\n    public async Validatexid(strXid) {\r\n        // const response = this.apiService.get('Common/CommonService.svc/cbms/ValidateUserXid?Userxid='+ strXid)\r\n        // return response;\r\n        const response = await this.getAsync('Common/CommonService.svc/cbms/ValidateUserXid?Userxid=' + strXid);\r\n        return response;\r\n    }\r\n    public async Validateuid(strXid) {\r\n        // Convert to string and trim\r\n        const Uid = (strXid + '').trim();\r\n        console.log('Validateuid called with:', strXid);\r\n        console.log('Processed Uid:', Uid);\r\n        try {\r\n            // Ensure we resolve the HTTP observable to its value\r\n            // First try normal JSON request (server expects application/json)\r\n            try {\r\n                const response$ = this.postDataForValidateUid('Common/CommonService.svc/CBMS/ValidateUid', Uid);\r\n                const response = await lastValueFrom(response$);\r\n                console.log('Validateuid response:', response);\r\n                return response;\r\n            } catch (err: any) {\r\n                if (err?.status !== 400) { throw err; }\r\n            }\r\n\r\n            // If 400, try legacy fallbacks without affecting XID\r\n            const response = await this.postValidateUidWithFallbacks('Common/CommonService.svc/CBMS/ValidateUid', Uid);\r\n            console.log('Validateuid response:', response);\r\n            return response;\r\n        } catch (error) {\r\n            console.error('Validateuid error:', error);\r\n            throw error;\r\n        }\r\n    }\r\n\r\n    public async GetPermissionsByUserId(obj) {\r\n       const response= await this.postCommonApi('CommonApi/getPermissionsByUserId', obj)\r\n        return response;\r\n        // return this.apiService.post('CommonApi/getPermissionsByUserId',obj)\r\n        // .pipe(map(data => data));\r\n    }\r\n    // public GetMenuWithUidOrXid(ObjUserValidate): any {\r\n    //             return this.postData('/Common/CommonService.svc/CBMS/MenulistWithUidOrXid'+ObjUserValidate)\r\n    //     .pipe(map(data => {data}));\r\n    //   }\r\n    public GetMenuWithUidOrXid(ObjUserValidate): any {\r\n        // return this.http.post(AppSettings.CBMS_SERVICES_URL + '/Common/CommonService.svc/CBMS/MenulistWithUidOrXid', ObjUserValidate)\r\n        //     .map(res => {\r\n        //         console.log(res);\r\n        //         return res.json();\r\n        //     })\r\n        return this.postData('/Common/CommonService.svc/CBMS/MenulistWithUidOrXid', ObjUserValidate)\r\n       // return this.apiService.post('/Common/CommonService.svc/CBMS/MenulistWithUidOrXid',ObjUserValidate)\r\n    }\r\n\r\n}\r\n\r\n\r\n\r\n","import { Component, OnInit, ViewEncapsulation, Input, ChangeDetectionStrategy } from '@angular/core';\r\nimport { BaseService } from '../services/base.service';\r\nimport { CbmsService } from '../cbms.services';\r\n//import { ColdObservable } from 'rxjs/testing/ColdObservable';\r\n//import { environment } from '../environments/environment';\r\nimport { Location, LocationStrategy, PathLocationStrategy } from '@angular/common';\r\n\r\n\r\n//import { RMComponent } from '../../../../rm.component';\r\n\r\n\r\nexport interface Menu {\r\n  Displaytext: string;\r\n  Displayorder: number;\r\n  MenuId: number;\r\n  Menulevel: number;\r\n  ParentMenuId: number;\r\n  TargetAction: string;\r\n  TargetServer: string;\r\n}\r\n\r\n@Component({\r\n    selector: 'cbms-menu-lib',\r\n    templateUrl: './menu.component.html',\r\n    styleUrls: ['./menu.component.scss'],\r\n    encapsulation: ViewEncapsulation.None,\r\n    changeDetection: ChangeDetectionStrategy.Eager,\n    standalone: false\r\n})\r\nexport class MenuComponent implements OnInit {\r\n  public MenuData: Menu[] = [];\r\n  public data1;\r\n  public ngMenu: Menu[] = [];\r\n  wantedData: any = {};\r\n  collapse: boolean = false;\r\n \r\n  id: any;\r\n \r\n \r\n  private blnIsUid:boolean=false;\r\n  constructor(\r\n    private cbmsApi: CbmsService,private location: Location) {  \r\n    if (this.location.path() != \"\" && this.location.path().indexOf(\"uid\") !== -1)\r\n    {\r\n      this.id = this.location.path().split('?')[1].split(\"uid=\")[1].split(\"&\")[0]; \r\n      this.blnIsUid=true;\r\n    }\r\n       \r\nelse if(this.location.path() != \"\" && this.location.path().indexOf(\"xid\") !== -1)\r\n    {\r\n      this.id = this.location.path().split('?')[1].split(\"xid=\")[1].split(\"&\")[0];\r\n      this.blnIsUid=false;\r\n    }\r\n   }\r\n  \r\n  ngOnInit() {\r\n    this.GetCBMenu();\r\n\r\n  }\r\n  public GetCBMenu() {\r\n\r\n \r\n    if (this.id == undefined) {\r\n      if (localStorage.getItem('UserID') !== null && localStorage.getItem('UserID') !== \"\") {\r\n\r\n        let userInfo = localStorage.getItem('UserID')\r\n        let UserIDObj = JSON.parse(userInfo);\r\n        if (UserIDObj !== null && UserIDObj !== undefined) {\r\n          if (UserIDObj.type == \"uid\") {\r\n            this.id = UserIDObj.id;\r\n            this.blnIsUid = true;\r\n          }\r\n          else {\r\n            this.id = UserIDObj.id;\r\n            this.blnIsUid = false;\r\n          }\r\n        }\r\n      }\r\n    }\r\n\r\n    var req={objUserValidate:{UserId:this.id,IsUid:this.blnIsUid}}\r\n    this.cbmsApi.GetMenuWithUidOrXid(req).subscribe(data => {\r\n      this.MenuData = data.MenulistWithUidOrXidResult;\r\n\r\n      // let menutDetails: any = {\r\n      //     Displaytext: 'RM Micro app',\r\n      //     Displayorder: 15,\r\n      //     MenuId: 200,\r\n      //     Menulevel: 1,\r\n      //     ParentMenuId: 152,\r\n      //     TargetAction: environment.appBaseUrl+'search-clients',\r\n      //     TargetServer: ''\r\n      //   };\r\n      //   // if (menutDetails.TargetAction !== '') {\r\n      //   //   menutDetails.TargetAction = menutDetails.TargetAction\r\n      //   //   .replace(menutDetails.TargetAction.split(':')[2].split('/')[0], window.location.port);\r\n      //   // }\r\n      //   this.MenuData.push(menutDetails);\r\n      this.MenuData = this.MenuData.filter(function (data1, i, menudata) {\r\n        return data1.Menulevel == 1;\r\n      });\r\n    \r\n   \r\n    });\r\n  }\r\n  // loadMenuItem($event) {\r\n  //   let portname: string = window.location.port;\r\n  //   if ($event.srcElement.parentNode.port !== '') {\r\n  //     $event.srcElement.parentNode.port = portname;\r\n  //   }\r\n  //   console.log($event.srcElement.parentNode);\r\n  // }\r\n    Logout(url) {\r\n    // localStorage.removeItem('UserID');\r\n    localStorage.clear();\r\n    //\r\n\r\n    //this.router.navigate(['/login']);\r\n    location.href = url;\r\n  }\r\n  HelpOpenUrlInNewTab(url) {\r\n    const link = document.createElement('a');\r\n    link.target = '_blank';\r\n    link.href = url;\r\n    link.style.display = 'none';\r\n    link.click();\r\n  }\r\n\r\n  // LogoutMenu(Displaytext, TargetAction) {\r\n  \r\n  //   if (Displaytext != 'GRM MicroApp')\r\n  //     localStorage.removeItem('UserID');\r\n\r\n\r\n  //   location.href = TargetAction;\r\n  // }\r\n}\r\n","\n<table class=\"Nav1\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">\n  <tbody>\n    <tr>\n      <td align=\"left\">\n        <table class=\"Nav1\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">\n          <tbody>\n            <tr>\n              @for (item of MenuData; track item; let isLast = $last) {\n                @if (item.Displaytext === 'GRM MicroApp') {\n                  <td class=\"Spacer\">\n                    <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n                  </td>\n                  <td class=\"Option\" align=\"center\">\n                    <a class=\"menu-text\" [href]=\"item.TargetAction\" >\n                      <font class=\"Option\">{{item.Displaytext}}</font>\n                    </a>\n                  </td>\n                  <td class=\"Spacer\" align=\"center\">\n                    <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n                  </td>\n                  @if (!isLast) {\n                    <td class=\"Divider\" align=\"center\">\n                      <img src=\"assets/images/spacer.gif\" width=\"1\" height=\"20\" border=\"0\">\n                    </td>\n                  }\n                } @else {\n                  @if (item.Displaytext === 'Logout') {\n                    <td class=\"Spacer\">\n                      <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n                    </td>\n                    <td class=\"Option\" align=\"center\">\n                      <a class=\"menu-text\" (click)=\"Logout(item.TargetAction)\" href=\"javascript:void(0)\">\n                        <font class=\"Option\">{{item.Displaytext}}</font>\n                      </a>\n                    </td>\n                    <td class=\"Spacer\" align=\"center\">\n                      <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n                    </td>\n                    @if (!isLast) {\n                      <td class=\"Divider\" align=\"center\">\n                        <img src=\"assets/images/spacer.gif\" width=\"1\" height=\"20\" border=\"0\">\n                      </td>\n                    }\n                  } @else {\n                    @if (item.Displaytext === 'Help') {\n                      <td class=\"Spacer\">\n                        <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n                      </td>\n                      <td class=\"Option\" align=\"center\">\n                        <a class=\"menu-text\" (click)=\"HelpOpenUrlInNewTab(item.TargetAction)\" href=\"javascript:void(0)\">\n                          <font class=\"Option\">{{item.Displaytext}}</font>\n                        </a>\n                      </td>\n                      <td class=\"Spacer\" align=\"center\">\n                        <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n                      </td>\n                      @if (!isLast) {\n                        <td class=\"Divider\" align=\"center\">\n                          <img src=\"assets/images/spacer.gif\" width=\"1\" height=\"20\" border=\"0\">\n                        </td>\n                      }\n                    } @else {\n                      <ng-container >\n                        <td class=\"Spacer\">\n                          <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n                        </td>\n                        <td class=\"Option\" align=\"center\">\n                          <a class=\"menu-text\" [href]=\"item.TargetAction\" >\n                            <font class=\"Option\">{{item.Displaytext}}</font>\n                          </a>\n                        </td>\n                        <td class=\"Spacer\" align=\"center\">\n                          <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n                        </td>\n                        @if (!isLast) {\n                          <td class=\"Divider\" align=\"center\">\n                            <img src=\"assets/images/spacer.gif\" width=\"1\" height=\"20\" border=\"0\">\n                          </td>\n                        }\n                      </ng-container>\n                    }\n                  }\n                }\n              }\n\n\n\n\n\n\n              <!-- <ng-container  *ngIf=\"item.Displaytext !== 'Logout'&&item.Displaytext !=='GRM MicroApp'; else notShow\">\n              <td class=\"Spacer\">\n                <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n              </td>\n              <td class=\"Option\" align=\"center\">\n                <a class=\"menu-text\" [href]=\"item.TargetAction\" >\n                  <font class=\"Option\">{{item.Displaytext}}</font>\n                </a>\n              </td>\n\n              <td class=\"Spacer\" align=\"center\">\n                <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n              </td>\n              <td class=\"Divider\" align=\"center\" *ngIf=\"!isLast\">\n                <img src=\"assets/images/spacer.gif\" width=\"1\" height=\"20\" border=\"0\">\n              </td>\n            </ng-container>\n            <ng-container *ngIf=\"item.Displaytext === 'GRM MicroApp'\">\n              <td class=\"Spacer\">\n                <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n              </td>\n              <td class=\"Option\" align=\"center\">\n                <a class=\"menu-text\" [href]=\"item.TargetAction\" >\n                  <font class=\"Option\">{{item.Displaytext}}</font>\n                </a>\n              </td>\n\n              <td class=\"Spacer\" align=\"center\">\n                <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n              </td>\n              <td class=\"Divider\" align=\"center\" *ngIf=\"!isLast\">\n                <img src=\"assets/images/spacer.gif\" width=\"1\" height=\"20\" border=\"0\">\n              </td>\n            </ng-container>\n\n            <ng-container *ngIf=\"item.Displaytext === 'Logout'\">\n              <td class=\"Spacer\">\n                <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n              </td>\n              <td class=\"Option\" align=\"center\">\n                <a class=\"menu-text\" (click)=\"Logout(item.TargetAction)\" href=\"javascript:void(0)\">\n                  <font class=\"Option\">{{item.Displaytext}}</font>\n                </a>\n              </td>\n\n              <td class=\"Spacer\" align=\"center\">\n                <img src=\"assets/images/spacer.gif\" width=\"10\" height=\"20\" border=\"0\">\n              </td>\n              <td class=\"Divider\" align=\"center\" *ngIf=\"!isLast\">\n                <img src=\"assets/images/spacer.gif\" width=\"1\" height=\"20\" border=\"0\">\n              </td>\n            </ng-container>\n          </ng-container>-->\n        </tr>\n      </tbody>\n    </table>\n  </td>\n</tr>\n</tbody>\n</table>\n<!-- <nav class=\"navbar navbar-expand-lg navbar-light bg-light tab-view\">\n<button class=\"navbar-toggler\" type=\"button\" (click)=\"collapse=!collapse\">\n  <span class=\"navbar-toggler-icon\"></span>\n</button>\n<div class=\"navbar-collapse\" (click)=\"collapse=true\" [class.showMenu]=\"collapse\">\n  <ul class=\"navbar-nav mr-auto\">\n    <ng-container *ngFor=\"let item of MenuData; last as isLast\">\n      <li *ngIf=\"item.Displaytext !== 'Logout'\" class=\"nav-item\">\n        <a class=\"menu-text\" [href]=\"item.TargetAction\">\n          <font class=\"Option\">{{item.Displaytext}}</font>\n        </a>\n      </li>\n      <li *ngIf=\"item.Displaytext == 'Logout'\" class=\"nav-item\">\n        <a class=\"menu-text\" (click)=\"Logout()\">\n          <font class=\"Option\">{{item.Displaytext}}</font>\n        </a>\n      </li>\n    </ng-container>\n  </ul>\n</div>\n</nav>\n<table class=\"HeaderBase\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" height=\"9\">\n  <tbody>\n    <tr>\n      <td height=\"9\" align=\"center\"></td>\n    </tr>\n  </tbody>\n</table> -->","import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core';\r\nimport { Input } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\n//import { environment } from './environments/environment';\r\nimport { CbmsService } from './cbms.services';\r\nimport { Router } from '@angular/router';\r\nimport { CbmsBaseUtilService} from './services/cbms-base-util.service';\r\n\r\nimport { Location, LocationStrategy, PathLocationStrategy } from '@angular/common';\r\nimport { PermissionService } from './services/permission.service';\r\n@Component({\r\n    selector: 'CBMS-lib-CBMS-Base-App',\r\n    templateUrl: 'cbms-base-app.component.html',\r\n    styles: [],\r\n    changeDetection: ChangeDetectionStrategy.Eager,\n    standalone: false\r\n})\r\nexport class CBMSBaseAppComponent implements OnInit {\r\n  title = 'app';\r\n\r\n   constructor() {\r\n   \r\n   }\r\n   public userInfoId: number;\r\n   public IsAuthenticate: boolean;\r\n   xid: any;\r\n   public uid: string;\r\n   @Input('envirnment') envirnment :any;\r\n    ngOnInit() {\r\n      console.log(\"Base-app-initiated\")\r\n    }\r\n}\r\n\r\n\r\n","\r\n\r\n\r\n  <div class=\"noPaddingLeftRight\">\r\n    <div class=\"\">\r\n        <div class=\"row\" style=\"margin-right: 0px; margin-left: 0px;\">\r\n            <div class=\"col-md-12\" style=\"padding-right: 0px; padding-left: 0px;\">\r\n              \r\n                <cbms-head-lib></cbms-head-lib>\r\n            </div>\r\n        </div>\r\n        <div class=\"row\" style=\"margin-right: 0px; margin-left: 0px;\">\r\n            <div class=\"col-sm-12 col-md-12 no-gutter\" style=\"padding-right: 0px; padding-left: 0px;\">\r\n                <cbms-menu-lib></cbms-menu-lib>\r\n                <table class=\"HeaderBase\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" height=\"9\">\r\n                    <tbody><tr>\r\n                        <td height=\"9\" align=\"center\"></td>\r\n                    </tr>\r\n                </tbody></table>\r\n            </div>\r\n        </div>\r\n        <ng-content></ng-content>\r\n    </div>\r\n    \r\n</div>\r\n","import { Component, OnInit, Input, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';\r\n\r\n@Component({\r\n    selector: 'cbms-dialog-lib',\r\n    templateUrl: './dialog.component.html',\r\n    styleUrls: ['./dialog.component.scss'],\r\n    encapsulation: ViewEncapsulation.None,\r\n    changeDetection: ChangeDetectionStrategy.Eager,\n    standalone: false\r\n})\r\nexport class DialogComponent {\r\n  public opened: boolean = false;\r\n  public successFunction:any=null;\r\n  public isAlert:boolean;\r\n  public failureFunction:any=null;\r\n  public message:string;\r\n  \r\n\r\n \r\n\r\n  @Input('title') title: string = '';\r\n  public close(status) {\r\n \r\n    this.opened = false;\r\n  }\r\n\r\n  public open() {\r\n    this.opened = true;\r\n  }\r\n  showAlert(message:string,successFunc){\r\n    this.message=message;\r\n    this.title=\"Alert\";\r\n    \r\n    this.successFunction=successFunc;\r\n    this.isAlert=true;\r\n    this.opened = true;\r\n}\r\n\r\nshowConfirm(message:string,successFunc,failureFunc){\r\n    this.message=message;\r\n    this.title=\"Confirm\";\r\n    this.successFunction=successFunc;\r\n    this.failureFunction=failureFunc;\r\n    this.isAlert=false;\r\n    this.opened = true;\r\n}\r\n\r\ncloseDialog(status) {\r\n    this.opened = false;\r\n    if(status=='yes' && this.successFunction ){\r\n        this.successFunction();\r\n    }\r\n    if(status=='no' && this.failureFunction ){\r\n        this.failureFunction();\r\n    }\r\n}\r\n\r\n}\r\n","<!-- <kendo-dialog title=\"{{title}}\" *ngIf=\"opened\" (close)=\"closeDialog('cancel')\" [minWidth]=\"250\" [width]=\"450\">\n<p style=\"margin: 30px; text-align: center;\">{{ message }}}</p>\n<kendo-dialog-actions>\n  <button kendoButton (click)=\"closeDialog('no')\">No</button>\n  <button kendoButton (click)=\"closeDialog('yes')\" primary=\"true\">Yes</button>\n</kendo-dialog-actions>\n</kendo-dialog> -->\n\n<div class=\"dialogK\">\n\n\n  @if (opened) {\n    <kendo-dialog style=\"background-clip: inherit;\" class=\" \" [minWidth]=\"250\" [width]=\"450\" title=\"{{title}}\" (close)=\"closeDialog('no')\" >\n      <div class=\"message-row\" >\n        <!-- <div style=\"display:table-cell;width: 55px;padding-right: 10px;\">\n        <div *ngIf=\"!isAlert\" class=\"confirmImage\"></div>\n        <div *ngIf=\"isAlert\" class=\"alertImage\"></div>\n      </div> -->\n      <div style=\"display:table-cell;vertical-align: middle; height:100%;\">\n        <span style=\"display: table-cell;vertical-align:middle;width:600px\">{{message}}</span>\n      </div>\n      <br>\n        <div class=\"row\" >\n          <div class=\"btnDiv\">\n            @if (isAlert) {\n              <div>\n                <input type=\"button\" value=\"{{'Ok'}}\" (click)=\"closeDialog('yes')\" class=\"buttonOk\" />\n              </div>\n            }\n            @if (!isAlert) {\n              <div>\n                <input type=\"button\" value=\"{{'Yes'}}\" (click)=\"closeDialog('yes')\" class=\"buttonOk\" />\n                <input type=\"button\" value=\"{{'No'}}\" (click)=\"closeDialog('no')\" class=\"buttonCancel\" />\n              </div>\n            }\n          </div>\n        </div>\n      </div>\n    </kendo-dialog>\n  }\n</div>","import { Component, OnInit, Input, EventEmitter, Output, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';\r\n\r\n@Component({\r\n    selector: 'cbms-popup-lib',\r\n    templateUrl: './popup.component.html',\r\n    styleUrls: ['./popup.component.scss'],\r\n    encapsulation: ViewEncapsulation.None,\r\n    changeDetection: ChangeDetectionStrategy.Eager,\n    standalone: false\r\n})\r\nexport class PopupComponent {\r\n  @Input('title') title: string = '';\r\n  @Output() public popUpClosed = new EventEmitter();\r\n  @Input('hideClose') hideClose: boolean = false;\r\n  @Input('backgroundColor') backgroundColor: string = '#f1f1f1';\r\n  @Input('marginTop') marginTop: string = '132px';\r\n  @Input('width') width: string;\r\n  @Input('isClosable') isClosable:boolean=true;\r\n\r\n  public show: boolean = false;\r\n\r\n  showPopup() {\r\n      this.show = true;\r\n  }\r\n\r\n  hidePopup() {\r\n      this.show = false;\r\n      this.popUpClosed.emit();\r\n  }\r\n \r\n}\r\n","@if (show) {\n  <kendo-popup class=\"k-popup-wrapper\">\n    <div class=\"popup-container\" [style.background-color]=\"backgroundColor\" [style.margin-top]=\"marginTop\">\n      <div class=\"popup-header\" [style.border-bottom]=\"title.length>0 ? '1px solid #D3D2CE' : 'none'\">\n        <div style=\"width:100%;padding: 7px;display:inline-block;\">\n          <h6 class=\"popup-title\">{{title}}</h6>&nbsp;\n          @if (isClosable) {\n            <a class=\"link-text\"  class=\"popup-close\" (click)=\"hidePopup()\">\n              <img class=\"alertImg\" src=\"../assets/images/close_Icon.png\">\n            </a>\n          }\n        </div>\n      </div>\n      <ng-content></ng-content>\n    </div>\n  </kendo-popup>\n}","import { Injectable } from '@angular/core';\r\nimport { Observable, Subject} from 'rxjs';\r\n\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class CbmsSharedService {\r\n  public  userInfoId = new Subject<any>();\r\n public userInfoId$ = this.userInfoId.asObservable();\r\n  constructor() { }\r\n\r\n  setUserInfoId(data: any) {\r\n    this.userInfoId.next(data)\r\n  }\r\n\r\n\r\n\r\n}\r\n","import { Injectable, Injector } from '@angular/core';\r\nimport { IRoutesInfo } from './../Authorization/routes.info';\r\n//import { environment } from '../environments/environment';\r\nimport { CbmsService } from './../cbms.services';\r\nimport { CbmsSharedService } from './cbms-shared.service'\r\nimport { ActivatedRoute } from '@angular/router';\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class CbmsBaseUtilService {\r\n  public userInfoId: number;\r\n  public lstRoutes: Array<IRoutesInfo>;\r\n\r\n  public IsAuthenticate: boolean;\r\n  public isuidValid: boolean;\r\n  xid: any;\r\n  public uid: string;\r\n\r\n  constructor(public injector: Injector, private cbmsService: CbmsService, private cbmsSharedService: CbmsSharedService, private router: ActivatedRoute) { \r\n    \r\n\r\n  }\r\n\r\n\r\n  get RoutesInfo(): IRoutesInfo[] {\r\n    return this.lstRoutes;\r\n  }\r\n\r\n  public authenticateUser(obj): any {\r\n\r\n    if (obj != undefined && obj != null) {\r\n      return obj;\r\n    }\r\n   else if (localStorage.getItem('UserID') !== null && localStorage.getItem('UserID') !== \"\") {\r\n \r\n      let userInfo = localStorage.getItem('UserID')\r\n      this.uid = JSON.parse(userInfo);\r\n      if (this.uid !== null && this.uid !== undefined) {\r\n        return this.uid;\r\n      }\r\n      else {\r\n        //   this.IsAuthenticate = false;\r\n        localStorage.removeItem('UserID');\r\n        location.href = this.injector.get(\"config\").appLoginURL;\r\n        return false;\r\n      }\r\n    }\r\n    \r\n    else {\r\n\r\n      location.href = this.injector.get(\"config\").appLoginURL;\r\n      return false;\r\n    }\r\n  }\r\n  public async UidValidation(userInfo) {\r\n\r\n    if (userInfo == null && userInfo == undefined) {\r\n      this.IsAuthenticate = false;\r\n      localStorage.removeItem('UserID');\r\n      location.href = this.injector.get(\"config\").appLoginURL;\r\n      return false;\r\n    }\r\n    else {\r\n      let res;\r\n      if (userInfo.type == \"uid\") {\r\n        res = await this.cbmsService.Validateuid(userInfo.id);\r\n        // Normalize response: support either plain number/string or object { userInfoId: n }\r\n        if (res && typeof res === 'object' && (res as any).userInfoId != null) {\r\n          res = (res as any).userInfoId;\r\n        }\r\n      }\r\n      else if (userInfo.type == \"xid\") {\r\n        res = await this.cbmsService.Validatexid(userInfo.id);\r\n      }\r\n      if (!Number(res)) {\r\n        localStorage.removeItem('UserID');\r\n        location.href = this.injector.get(\"config\").appLoginURL;\r\n        return this.IsAuthenticate;\r\n      }\r\n      else {\r\n        this.userInfoId = res;\r\n        localStorage.setItem('UserID', JSON.stringify(userInfo));\r\n        this.IsAuthenticate = true;\r\n        return res;\r\n      }\r\n    }\r\n  }\r\n  public setRoutesInfo(lstRoutes: Array<IRoutesInfo>) {\r\n    this.lstRoutes = lstRoutes;\r\n    return true;\r\n  }\r\n}\r\n","import { Injectable, OnInit } from '@angular/core';\r\nimport { CbmsService } from './../cbms.services';\r\nimport { CbmsSharedService } from './../services/cbms-shared.service';\r\nimport { Observable, Observer } from 'rxjs';\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class PermissionService implements OnInit{\r\n\r\n  public dataObserver: Observer<any>;\r\n  isPermissionLoaded: boolean;\r\n  public permissionLst: any;\r\n  userInfoId: any;\r\n  public permissionLoaded: Observable<boolean>;\r\n  constructor(private cbmsService: CbmsService, private cbmsShared: CbmsSharedService) {\r\n    this.cbmsShared.userInfoId$.subscribe(\r\n      t => {\r\n        this.userInfoId = t;\r\n      });\r\n    this.permissionLoaded = Observable.create((observer) => {\r\n      this.dataObserver = observer;\r\n    });\r\n    this.permissionLoaded.subscribe();\r\n  }\r\n  ngOnInit(): void {\r\n  }\r\n\r\n  public async loadModulePermissions(userInfoId: any) {\r\n    this.permissionLst = await this.cbmsService.GetPermissionsByUserId(userInfoId);\r\n    this.isPermissionLoaded = true;\r\n    if (this.dataObserver) {\r\n      this.dataObserver.next(this.permissionLst);\r\n    }\r\n    return this.isPermissionLoaded;\r\n  }\r\n\r\n  hasAnyPermissions(keys: string[]) {\r\n    if (this.permissionLst) {\r\n      for (let pIndex = 0; pIndex < keys.length; pIndex++) {\r\n        if (this.permissionLst.filter(x => x.toLowerCase() === keys[pIndex].toLowerCase()).length > 0) {\r\n          return true;\r\n        }\r\n      }\r\n    }\r\n    return false;\r\n  }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {Subject} from 'rxjs';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class BreadcrumbService {\r\n  private pageName = new Subject<any>();\r\n  currentName = this.pageName.asObservable();\r\n  constructor() { \r\n  }\r\n  changeName(data: any) {\r\n    this.pageName.next(data)\r\n  }\r\n}\r\n","import { Component, OnInit, Input, OnChanges, SimpleChanges, Output, EventEmitter, AfterViewInit, ElementRef, TemplateRef, ChangeDetectionStrategy, ChangeDetectorRef, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { BreadcrumbService } from '../services/breadcrumb.service';\r\n\r\n@Component({\r\n    selector: 'cbms-breadcrump',\r\n    templateUrl: './cbms-breadcrump.component.html',\r\n    styleUrls: ['./cbms-breadcrump.component.css'],\r\n    changeDetection: ChangeDetectionStrategy.Eager,\n    standalone: false\r\n})\r\nexport class CbmsBreadcrumpComponent implements OnInit, OnChanges {\r\n\r\n  @Input('moreInfoText') moreInfoText: any[];\r\n  @Input('title') title: any[];\r\n  @Input('json') json: any = {};\r\n  pageName: any[];\r\n  breadcrums: any[];\r\n  public breadCrumbs = [];\r\n\r\n  // = [{ label: 'RenewableEnergy&CarbonTracking', data: '/' },];\r\n  constructor(public router: Router, public breadcrumbService: BreadcrumbService) { }\r\n  \r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    if(changes['json'].currentValue.length != undefined)\r\n    this.bindBreadCrump();\r\n  }\r\n  ngOnInit() {\r\n  }\r\n  public bindBreadCrump() {\r\n    // this.breadcrumbService.changeName(JSON.parse(this.json));\r\n      this.pageName = JSON.parse(this.json);\r\n      if (this.pageName) {\r\n        this.breadcrums = [];\r\n        this.pageName.forEach(ele => {\r\n          this.breadcrums.push({\r\n            label: ele.text,\r\n            url: ele.url,\r\n            Optionalparam: ele.Optionalparam ? ele.Optionalparam[0] : null,\r\n            isAbsolute: ele.isAbsolute\r\n          });\r\n        });\r\n      }\r\n  \r\n  }\r\n\r\n}\r\n","\n<div class=\"app-content\">\n  <div class=\"breadcrumbBg\">\n    <div class=\"roundBdr\">\n      <ol class=\"breadcrumbRM\">\n        @for (breadcrumb of breadcrums; track breadcrumb; let last = $last) {\n          <li>\n            @if (breadcrumb.isAbsolute) {\n              <a class=\"breadcrumb-item\"\n              [class.disabled]=\"last\" href=\"{{breadcrumb.url}}\" target=\"_blank\">{{ breadcrumb.label}}</a>\n            } @else {\n              @if (breadcrumb.Optionalparam!=null) {\n                <a class=\"breadcrumb-item\" [class.disabled]=\"last\"\n                  [routerLink]=\"[breadcrumb.url,breadcrumb.Optionalparam]\">\n                  <!-- <font [class.Option]=\"!last\">{{ breadcrumb.label}}</font> -->{{breadcrumb.label}}\n                </a>\n              }\n              @if (breadcrumb.Optionalparam==null) {\n                <a class=\"breadcrumb-item\" [class.disabled]=\"last\"\n                  [routerLink]=\"[breadcrumb.url]\">\n                  <!-- <font [class.Option]=\"!last\">{{ breadcrumb.label}}</font> -->{{ breadcrumb.label}}\n                </a>\n              }\n            }\n            @if (!last) {\n              <span class=\"breadcrumb-separator\">-</span>\n            }\n          </li>\n        }\n      </ol>\n    </div>\n  </div>\n  <div>\n    <ng-content></ng-content>\n  </div>\n</div>","import { CBMSBaseAppComponent } from './cbms-base-app.component';\r\n// import { BrowserModule } from '@angular/platform-browser';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\nimport { NgModule, ModuleWithProviders } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { CbmsService } from './cbms.services';\r\nimport { BaseService } from './services/base.service';\r\nimport { AuthenticationService } from './services/authentication.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { RouterModule } from '@angular/router';\r\nimport { DatePipe } from '@angular/common';\r\nimport { HeadComponent } from './head/head.component';\r\nimport { DialogComponent } from './dialog/dialog.component';\r\nimport { DialogModule } from '@progress/kendo-angular-dialog';\r\nimport { MenuComponent } from './menu/menu.component';\r\nimport { PopupComponent } from './popup/popup.component';\r\nimport { PopupModule } from '@progress/kendo-angular-popup';\r\nimport { CommonModule } from '@angular/common';\r\nimport {CbmsBaseUtilService} from './services/cbms-base-util.service';\r\nimport {PermissionService} from './services/permission.service';\r\nimport{ IEnvironmentsInfo } from './Models/environmentsModel.info';\r\nimport { CbmsBreadcrumpComponent } from './cbms-breadcrump/cbms-breadcrump.component'\r\nimport { HttpClientModule } from '@angular/common/http';\r\nconst cbms_base_Controls = [\r\n  //CbmsBaseComponent,\r\n  CBMSBaseAppComponent,\r\n  HeadComponent,\r\n  DialogComponent,\r\n  MenuComponent,\r\n//  HomepageComponent,\r\n  PopupComponent,\r\n  CbmsBreadcrumpComponent\r\n];\r\n@NgModule({ declarations: [cbms_base_Controls],\r\n    exports: [RouterModule, cbms_base_Controls],\r\n    bootstrap: [CBMSBaseAppComponent],     imports: [\r\n        // BrowserModule,\r\n        FormsModule,\r\n        ReactiveFormsModule,\r\n        HttpClientModule,\r\n        // routing,\r\n        RouterModule,\r\n        PopupModule,\r\n        // BrowserAnimationsModule,\r\n        DialogModule,\r\n        CommonModule\r\n    ], \r\n    providers: [DatePipe] \r\n})\r\n\r\nexport class CBMSBaseAppModule {\r\n  static forRoot( config :IEnvironmentsInfo): ModuleWithProviders<CBMSBaseAppModule> {\r\n    return {\r\n      ngModule: CBMSBaseAppModule,\r\n      providers: [DatePipe,CbmsService, BaseService,CbmsBaseUtilService,PermissionService,\r\n         { provide: 'config', useValue: config }]\r\n    };\r\n  }\r\n}\r\n","import { Injectable, Injector } from '@angular/core';\r\nimport { Router, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\nimport { AppSettings } from '../app.settings';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { CbmsService } from '../cbms.services';\r\nimport { CbmsBaseUtilService } from './../services/cbms-base-util.service';\r\n\r\nimport { Observable } from 'rxjs';\r\nimport { PermissionService } from './../services/permission.service';\r\nimport { IEnvironmentsInfo } from '../Models/environmentsModel.info';\r\nimport { map } from 'rxjs/operators'\r\n//import { environment } from './../environments/environment';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n\r\nexport class AuthGuard  {\r\n  public config;\r\n  constructor(private router: Router, public injector: Injector,private cbmsService: CbmsService,\r\n    private queryStringRouter: ActivatedRoute, private cbmsbaseutil: CbmsBaseUtilService,\r\n    private permissionService: PermissionService) {\r\n      this.config=this.injector.get<IEnvironmentsInfo>('config' as any);\r\n     }\r\n\r\n  canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n    const routeString = (this.config.moduleName === 'budget' ? route.routeConfig.path\r\n                                  : state.root.children[0].routeConfig.path).toLowerCase();\r\n    //   if (this.cbmsbaseutil.IsAuthenticate) {\r\n    if (this.permissionService.isPermissionLoaded) {\r\n      return this.isValid(routeString);\r\n    } else {\r\n      return this.permissionService.permissionLoaded.pipe(map(() => this.isValid(routeString)));\r\n    }\r\n    // } else {\r\n    // location.href = this.injector.get(\"config\").appLoginURL;\r\n    // return false;\r\n    // }\r\n  }\r\n\r\n  public isValid(url: string): boolean {\r\n    let hasPermision = true;\r\n    if (this.permissionService.permissionLst.length > 0) {\r\n      if (this.cbmsbaseutil.RoutesInfo) {\r\n        for (let i = 0; i < this.cbmsbaseutil.RoutesInfo.length; i++) {\r\n          if (url.indexOf(this.cbmsbaseutil.RoutesInfo[i].route.toLowerCase()) > -1) {\r\n            hasPermision = false;\r\n            if (this.permissionService.hasAnyPermissions(this.cbmsbaseutil.RoutesInfo[i].permissions)) {\r\n              hasPermision = true;\r\n            }\r\n            break;\r\n          }\r\n        }\r\n      }\r\n    } else if (this.permissionService.isPermissionLoaded) {\r\n      hasPermision = false;\r\n    }\r\n    if (!hasPermision) {\r\n      location.href = this.config.appLoginURL;\r\n    }\r\n    return hasPermision;\r\n  }\r\n}\r\n","/*\r\n * Public API Surface of cbms-base-app\r\n */\r\n\r\nexport * from './lib/cbms-base-app.service';\r\nexport * from './lib/cbms-base-app.component';\r\nexport * from './lib/cbms-base-app.module';\r\nexport * from './lib/cbms.services';\r\nexport * from './lib/Authorization/auth.guard';\r\n\r\nexport * from './lib/head/head.component';\r\nexport * from './lib/popup/popup.component';\r\nexport * from './lib/dialog/dialog.component';\r\nexport * from './lib/cbms-breadcrump/cbms-breadcrump.component';\r\nexport * from './lib/menu/menu.component';\r\nexport * from './lib/services/base.service';\r\n// export * from './lib/app.routing';\r\nexport * from './lib/app.settings';\r\nexport * from './lib/cbms.services';\r\n//export * from './lib/environments/environment';\r\nexport * from './lib/services/cbms-base-util.service';\r\nexport * from './lib/services/cbms-shared.service';\r\nexport * from './lib/services/permission.service';\r\nexport * from './lib/Authorization/routes.info';\r\n\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i3","i1.BaseMenuService","i2","i1.CbmsService","i1.HeadComponent","i2.MenuComponent","i1","i2.CbmsSharedService","i2.BreadcrumbService","map","i2.CbmsService","i3.CbmsBaseUtilService","i4.PermissionService"],"mappings":"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"}