{"ast":null,"code":"import { __decorate } from \"tslib\";\nimport { Component, Input } from '@angular/core';\nimport { interval, Subject } from 'rxjs';\nimport { takeWhile, map, takeUntil, catchError } from 'rxjs/operators';\nexport let HeaderComponent = class HeaderComponent {\n  constructor(socketservice, router, sharedservice, NgxSpinnerService, route, ToastrService) {\n    this.socketservice = socketservice;\n    this.router = router;\n    this.sharedservice = sharedservice;\n    this.NgxSpinnerService = NgxSpinnerService;\n    this.route = route;\n    this.ToastrService = ToastrService;\n    this.destroy$ = new Subject();\n    this.collapsed = false;\n    this.screenWidth = 0;\n    this.selectedIndex = 0;\n    this.showBreadCurmList = false;\n    this.notification_count = 0;\n    this.showBadge = false;\n    this.showMessage = false;\n    this.hideButton = false;\n    this.openPanel = false;\n    this.waitForToken().subscribe(() => {\n      this.getmenu();\n      this.getemployeename();\n    });\n  }\n  ngOnInit() {\n    this.hideButton = window.location.host === 'lawyer.storyboardsystems.com';\n  }\n  ngOnDestroy() {\n    this.destroy$.next();\n    this.destroy$.complete();\n    clearInterval(this.windowInterval);\n    clearInterval(this.IndiaMartInterval);\n  }\n  waitForToken() {\n    return interval(2000) // internal every 2 seconds  \n    .pipe(takeUntil(this.destroy$),\n    // Cleanup when the component is destroyed\n    map(() => {\n      const token = localStorage.getItem('token');\n      return token !== null && token !== '';\n    }), takeWhile(tokenAvailable => !tokenAvailable, true), catchError(error => {\n      console.error('Error while polling for token:', error);\n      return [];\n    }));\n  }\n  getHeaderClass() {\n    let styleClass = '';\n    if (this.collapsed && this.screenWidth > 768) {\n      styleClass = 'head-trimmed';\n    } else if (this.collapsed && this.screenWidth <= 768 && this.screenWidth > 0) {\n      styleClass = 'head-md-screen';\n    }\n    return styleClass;\n  }\n  getmenu() {\n    this.NgxSpinnerService.show();\n    let user_gid = localStorage.getItem('user_gid');\n    let param = {\n      user_gid: user_gid\n    };\n    var url = 'User/topmenu';\n    this.socketservice.getparams(url, param).subscribe(result => {\n      this.menu = result.menu_list;\n      this.firstMenu = result.menu_list[0];\n      this.sharedservice.setData(this.firstMenu);\n      this.destroy$;\n    });\n    this.NgxSpinnerService.hide();\n  }\n  logout() {\n    localStorage.clear();\n    this.router.navigate(['auth/login']);\n  }\n  getsidemenu(data) {\n    // this.menu_name = data.text;\n    this.sharedservice.setData(data);\n    this.sharedservice.functionToCall();\n    if (data.sref != null && data.sref != \"\") {\n      this.router.navigate([data.sref]);\n    }\n  }\n  redirect_menu(data) {\n    if (data != null && data != \"\") {\n      this.router.navigate([data]);\n    }\n  }\n  redirect_menu_header(data, name) {\n    if (data != null && data != \"\") {\n      this.sharedservice.setmenuHeadPosition(name);\n      this.sharedservice.sethead_index(true);\n      this.sharedservice.setsecond_head_index(false);\n      this.sharedservice.functionHeadToMenu();\n      this.router.navigate([data]);\n    }\n  }\n  selectHead(_index) {\n    this.selectedIndex = _index;\n  }\n  routepage() {\n    this.router.navigate(['system/MstUserProfile']);\n  }\n  getemployeename() {\n    let user_gid = localStorage.getItem('user_gid');\n    let param = {\n      user_gid: user_gid\n    };\n    var url = 'ManageEmployee/GetEmployeename';\n    this.socketservice.getparams(url, param).subscribe(result => {\n      this.employee_details = result.employeename_list[0].Name;\n    });\n  }\n};\n__decorate([Input()], HeaderComponent.prototype, \"collapsed\", void 0);\n__decorate([Input()], HeaderComponent.prototype, \"screenWidth\", void 0);\nHeaderComponent = __decorate([Component({\n  selector: 'layout-header',\n  templateUrl: './header.component.html',\n  styleUrls: ['./header.component.scss']\n})], HeaderComponent);","map":{"version":3,"names":["Component","Input","interval","Subject","takeWhile","map","takeUntil","catchError","HeaderComponent","constructor","socketservice","router","sharedservice","NgxSpinnerService","route","ToastrService","destroy$","collapsed","screenWidth","selectedIndex","showBreadCurmList","notification_count","showBadge","showMessage","hideButton","openPanel","waitForToken","subscribe","getmenu","getemployeename","ngOnInit","window","location","host","ngOnDestroy","next","complete","clearInterval","windowInterval","IndiaMartInterval","pipe","token","localStorage","getItem","tokenAvailable","error","console","getHeaderClass","styleClass","show","user_gid","param","url","getparams","result","menu","menu_list","firstMenu","setData","hide","logout","clear","navigate","getsidemenu","data","functionToCall","sref","redirect_menu","redirect_menu_header","name","setmenuHeadPosition","sethead_index","setsecond_head_index","functionHeadToMenu","selectHead","_index","routepage","employee_details","employeename_list","Name","__decorate","selector","templateUrl","styleUrls"],"sources":["D:\\web\\EMS_Base\\kot\\src\\app\\layout\\componenets\\header\\header.component.ts"],"sourcesContent":["import { Component, HostListener, Input, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { SocketService } from 'src/app/ems.utilities/services/socket.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { SharedService } from '../../services/shared.service';\nimport { Observable, interval, Subject } from 'rxjs';\nimport { takeWhile, map, takeUntil, catchError } from 'rxjs/operators';\nimport { ToastrService } from 'ngx-toastr';\n\ninterface menuList {\n  sref: string;\n  text: string;\n}\n\n@Component({\n  selector: 'layout-header',\n  templateUrl: './header.component.html',\n  styleUrls: ['./header.component.scss']\n})\nexport class HeaderComponent implements OnInit {\n  private destroy$ = new Subject<void>();\n  @Input() collapsed = false;\n  @Input() screenWidth = 0;\n  menu: any[] | undefined;\n  sidemenu: any[] | string[] | undefined;\n  menu_name: any;\n  firstMenu: any;\n  selectedIndex: number = 0;\n  level_one_name: any;\n  level_two_name: any;\n  level_three_name: any;\n  level_four_name: any;\n  level_one_link: any;\n  level_two_link: any;\n  level_three_link: any;\n  level_four_link: any;\n  showBreadCurmList: boolean = false;\n  notification_list: any[] | undefined;\n  notification_count: number = 0;\n  showBadge: boolean = false;\n  showMessage: boolean = false;\n  windowInterval: any;\n  employee_details: any;\n  responsedata: any;\n  IndiaMartInterval: any;\n  hideButton: boolean = false;\n  openPanel: boolean = false;\n  constructor(\n    public socketservice: SocketService,\n    public router: Router,\n    public sharedservice: SharedService,\n    private NgxSpinnerService: NgxSpinnerService,\n    private route: Router,\n    private ToastrService: ToastrService\n  ) {\n    this.waitForToken().subscribe(() => {\n      this.getmenu();\n      this.getemployeename();\n    });\n  }\n  ngOnInit(): void {\n    this.hideButton = window.location.host === 'lawyer.storyboardsystems.com';\n    \n  }\n  ngOnDestroy(): void {\n    this.destroy$.next();\n    this.destroy$.complete();\n    clearInterval(this.windowInterval)\n    clearInterval(this.IndiaMartInterval)\n  }\n  waitForToken(): Observable<boolean> {\n    return interval(2000) // internal every 2 seconds  \n      .pipe(\n        takeUntil(this.destroy$), // Cleanup when the component is destroyed\n        map(() => {\n          const token = localStorage.getItem('token');\n          return token !== null && token !== '';\n        }),\n        takeWhile((tokenAvailable) => !tokenAvailable, true),\n        catchError((error) => {\n          console.error('Error while polling for token:', error);\n          return [];\n        })\n      );\n  }\n  getHeaderClass(): string {\n    let styleClass = '';\n    if (this.collapsed && this.screenWidth > 768) {\n      styleClass = 'head-trimmed';\n    } else if (this.collapsed && this.screenWidth <= 768 && this.screenWidth > 0) {\n      styleClass = 'head-md-screen';\n    }\n    return styleClass;\n  }\n  getmenu() {\n    this.NgxSpinnerService.show();\n    let user_gid = localStorage.getItem('user_gid');\n    let param = {\n      user_gid: user_gid\n    }\n    var url = 'User/topmenu';\n    this.socketservice.getparams(url, param).subscribe((result: any) => {\n      this.menu = result.menu_list;\n      this.firstMenu = result.menu_list[0];\n      this.sharedservice.setData(this.firstMenu);\n      this.destroy$;\n    });\n    this.NgxSpinnerService.hide();\n  }\n  logout() {\n    localStorage.clear();\n    this.router.navigate(['auth/login']);\n  }\n  \n  getsidemenu(data: any) {\n    // this.menu_name = data.text;\n    this.sharedservice.setData(data);\n    this.sharedservice.functionToCall();\n    if (data.sref != null && data.sref != \"\") {\n      this.router.navigate([data.sref]);\n    }\n  }\n\n  redirect_menu(data: any) {\n    if (data != null && data != \"\") {\n      this.router.navigate([data])\n    }\n  }\n  redirect_menu_header(data: any, name: any) {\n    if (data != null && data != \"\") {\n      this.sharedservice.setmenuHeadPosition(name);\n      this.sharedservice.sethead_index(true);\n      this.sharedservice.setsecond_head_index(false);\n      this.sharedservice.functionHeadToMenu();\n      this.router.navigate([data])\n    }\n  }\n\n  selectHead(_index: number) {\n    this.selectedIndex = _index;\n  }\n\n\n  routepage() {\n    this.router.navigate(['system/MstUserProfile']);\n  }\n\n  getemployeename() {\n    let user_gid = localStorage.getItem('user_gid');\n    let param = {\n      user_gid: user_gid\n    }\n    var url = 'ManageEmployee/GetEmployeename';\n    this.socketservice.getparams(url, param).subscribe((result: any) => {\n      this.employee_details = result.employeename_list[0].Name;\n\n    });\n  }\n\n}"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}