{"ast":null,"code":"import { interval, Subject } from 'rxjs';\nimport { takeWhile, map, takeUntil, catchError } from 'rxjs/operators';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"src/app/ems.utilities/services/socket.service\";\nimport * as i2 from \"ngx-spinner\";\nimport * as i3 from \"@angular/common\";\nexport class FooterComponent {\n  constructor(socketservice, NgxSpinnerService, _eref) {\n    this.socketservice = socketservice;\n    this.NgxSpinnerService = NgxSpinnerService;\n    this._eref = _eref;\n    this.calenderopen = true;\n    this.iscalendlyactive = false;\n    this.destroy$ = new Subject();\n    this.notesopen = true;\n    this.collapsed = false;\n    this.screenWidth = 0;\n    this.waitForToken().subscribe(() => {});\n  }\n  ngOnInit() {}\n  getFooterClass() {\n    let styleClass = '';\n    if (this.collapsed && this.screenWidth > 768) {\n      styleClass = 'footer-trimmed';\n    } else if (this.collapsed && this.screenWidth <= 768 && this.screenWidth > 0) {\n      styleClass = 'footer-md-screen';\n    }\n    return styleClass;\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  ngOnDestroy() {\n    this.destroy$.next();\n    this.destroy$.complete();\n  }\n  static #_ = this.ɵfac = function FooterComponent_Factory(t) {\n    return new (t || FooterComponent)(i0.ɵɵdirectiveInject(i1.SocketService), i0.ɵɵdirectiveInject(i2.NgxSpinnerService), i0.ɵɵdirectiveInject(i0.ElementRef));\n  };\n  static #_2 = this.ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n    type: FooterComponent,\n    selectors: [[\"layout-footer\"]],\n    inputs: {\n      collapsed: \"collapsed\",\n      screenWidth: \"screenWidth\"\n    },\n    decls: 14,\n    vars: 1,\n    consts: [[1, \"footer\", 3, \"ngClass\"], [1, \"footer-content\"], [1, \"footer-content-left\"], [\"href\", \"https://www.vcidex.com/StoryboardCRM.html\", \"target\", \"_blank\"], [1, \"footer-content-right\"], [1, \"footer-menu-item-btn\"], [1, \"fa-brands\", \"fa-facebook\", \"icon_size\"], [1, \"fa-brands\", \"fa-instagram\", \"icon_size\"], [1, \"fa-brands\", \"fa-linkedin-in\", \"icon_size\"]],\n    template: function FooterComponent_Template(rf, ctx) {\n      if (rf & 1) {\n        i0.ɵɵelementStart(0, \"div\", 0)(1, \"div\", 1)(2, \"div\", 2)(3, \"span\");\n        i0.ɵɵtext(4, \"\\u00A9 2024 - \");\n        i0.ɵɵelementStart(5, \"a\", 3);\n        i0.ɵɵtext(6, \" StoryboardSystem \");\n        i0.ɵɵelementEnd()()();\n        i0.ɵɵelementStart(7, \"div\", 4)(8, \"button\", 5);\n        i0.ɵɵelement(9, \"i\", 6);\n        i0.ɵɵelementEnd();\n        i0.ɵɵelementStart(10, \"button\", 5);\n        i0.ɵɵelement(11, \"i\", 7);\n        i0.ɵɵelementEnd();\n        i0.ɵɵelementStart(12, \"button\", 5);\n        i0.ɵɵelement(13, \"i\", 8);\n        i0.ɵɵelementEnd()()()();\n      }\n      if (rf & 2) {\n        i0.ɵɵproperty(\"ngClass\", ctx.getFooterClass());\n      }\n    },\n    dependencies: [i3.NgClass],\n    styles: [\".footer[_ngcontent-%COMP%] {\\n  bottom: 0;\\n  position: fixed;\\n  width: calc(100% - 5rem);\\n  margin-left: 5rem;\\n  z-index: 1;\\n  transition: all 0.5s ease;\\n  background: #f4f7fa;\\n}\\n.footer[_ngcontent-%COMP%]   .footer-content[_ngcontent-%COMP%] {\\n  display: flex;\\n  justify-content: space-between;\\n  background-color: #fbfbfb;\\n  border-radius: 0.625rem;\\n  padding: 0rem 1.563rem;\\n}\\n.footer[_ngcontent-%COMP%]   .footer-content[_ngcontent-%COMP%]   .footer-content-left[_ngcontent-%COMP%] {\\n  display: flex;\\n  align-items: center;\\n}\\n.footer[_ngcontent-%COMP%]   .footer-content[_ngcontent-%COMP%]   .footer-content-right[_ngcontent-%COMP%] {\\n  display: flex;\\n  justify-content: flex-end;\\n}\\n\\n.footer-trimmed[_ngcontent-%COMP%] {\\n  width: calc(100% - 16.5625rem);\\n  margin-left: 16.5625rem;\\n}\\n\\n.footer-md-screen[_ngcontent-%COMP%] {\\n  width: calc(100% - 5rem);\\n  margin-left: 5rem;\\n}\\n\\n.footer-menu-item-btn[_ngcontent-%COMP%] {\\n  font-size: 18px;\\n  height: 32px;\\n  width: 52px;\\n  cursor: pointer;\\n  border: 1px solid transparent;\\n  border-radius: 50%;\\n  margin-left: 5px;\\n  outline: 0;\\n  color: #495057;\\n  background-color: transparent;\\n}\\n\\n.calender[_ngcontent-%COMP%] {\\n  position: fixed;\\n  top: 45px;\\n  bottom: 13px;\\n  right: 0;\\n  margin-top: 20px;\\n  margin-bottom: 30px;\\n  margin-right: 20px;\\n  width: 50%;\\n  box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;\\n  border-radius: 10px 10px 0px 0px;\\n}\\n\\n.icon_size[_ngcontent-%COMP%] {\\n  font-size: 14px;\\n  font-weight: bolder;\\n}\\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8uL3NyYy9hcHAvbGF5b3V0L2NvbXBvbmVuZXRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFFSSxTQUFBO0VBRUEsZUFBQTtFQUVBLHdCQUFBO0VBRUEsaUJBQUE7RUFFQSxVQUFBO0VBRUEseUJBQUE7RUFFQSxtQkFBQTtBQU5KO0FBY0k7RUFFSSxhQUFBO0VBRUEsOEJBQUE7RUFFQSx5QkFBQTtFQUVBLHVCQUFBO0VBSUEsc0JBQUE7QUFuQlI7QUF1QlE7RUFFSSxhQUFBO0VBRUEsbUJBQUE7QUF2Qlo7QUE2QlE7RUFFSSxhQUFBO0VBRUEseUJBQUE7QUE3Qlo7O0FBdUNBO0VBRUksOEJBQUE7RUFFQSx1QkFBQTtBQXRDSjs7QUE0Q0E7RUFFSSx3QkFBQTtFQUVBLGlCQUFBO0FBM0NKOztBQWlEQTtFQUVJLGVBQUE7RUFFQSxZQUFBO0VBRUEsV0FBQTtFQUVBLGVBQUE7RUFFQSw2QkFBQTtFQUVBLGtCQUFBO0VBRUEsZ0JBQUE7RUFFQSxVQUFBO0VBRUEsY0FBQTtFQUVBLDZCQUFBO0FBeERKOztBQTREQTtFQUNJLGVBQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLFFBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSxVQUFBO0VBQ0EsMkNBQUE7RUFDQSxnQ0FBQTtBQXpESjs7QUE0REE7RUFDSSxlQUFBO0VBQ0EsbUJBQUE7QUF6REoiLCJzb3VyY2VzQ29udGVudCI6WyIuZm9vdGVye1xyXG5cclxuICAgIGJvdHRvbTowO1xyXG5cclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuXHJcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNXJlbSk7XHJcblxyXG4gICAgbWFyZ2luLWxlZnQ6IDVyZW07XHJcblxyXG4gICAgei1pbmRleDogMTtcclxuXHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2U7XHJcblxyXG4gICAgYmFja2dyb3VuZDogI2Y0ZjdmYTtcclxuXHJcbiAgICAvLyBwYWRkaW5nOiAxcmVtIDEuNXJlbSAwIDEuNXJlbTtcclxuXHJcbiAgIFxyXG5cclxuICAgXHJcblxyXG4gICAgLmZvb3Rlci1jb250ZW50e1xyXG5cclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmZiZmI7XHJcblxyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xyXG5cclxuICAgICAgICAvLyBib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYigzNCAxMiA0NyAvIDEwJSk7XHJcblxyXG4gICAgICAgIHBhZGRpbmc6IDByZW0gMS41NjNyZW07XHJcblxyXG4gICAgICAgXHJcblxyXG4gICAgICAgIC5mb290ZXItY29udGVudC1sZWZ0e1xyXG5cclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiBcclxuXHJcbiAgICAgICAgLmZvb3Rlci1jb250ZW50LXJpZ2h0e1xyXG5cclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDpmbGV4LWVuZDtcclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbiBcclxuXHJcbi5mb290ZXItdHJpbW1lZHtcclxuXHJcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTYuNTYyNXJlbSk7XHJcblxyXG4gICAgbWFyZ2luLWxlZnQ6IDE2LjU2MjVyZW07XHJcblxyXG59XHJcblxyXG4gXHJcblxyXG4uZm9vdGVyLW1kLXNjcmVlbntcclxuXHJcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNXJlbSk7XHJcblxyXG4gICAgbWFyZ2luLWxlZnQ6IDVyZW07XHJcblxyXG59XHJcblxyXG4gXHJcblxyXG4uZm9vdGVyLW1lbnUtaXRlbS1idG57XHJcblxyXG4gICAgZm9udC1zaXplOiAxOHB4O1xyXG5cclxuICAgIGhlaWdodDogMzJweDtcclxuXHJcbiAgICB3aWR0aDogNTJweDtcclxuXHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG5cclxuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcblxyXG4gICAgb3V0bGluZTogMDtcclxuXHJcbiAgICBjb2xvcjogIzQ5NTA1NztcclxuXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xyXG5cclxufVxyXG5cclxuLmNhbGVuZGVye1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiA0NXB4O1xyXG4gICAgYm90dG9tOiAxM3B4O1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMjQpIDBweCAzcHggOHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDBweCAwcHggO1xyXG4gIH1cclxuXHJcbi5pY29uX3NpemV7XHJcbiAgICBmb250LXNpemU6MTRweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XHJcbn0iXSwic291cmNlUm9vdCI6IiJ9 */\"]\n  });\n}","map":{"version":3,"names":["interval","Subject","takeWhile","map","takeUntil","catchError","FooterComponent","constructor","socketservice","NgxSpinnerService","_eref","calenderopen","iscalendlyactive","destroy$","notesopen","collapsed","screenWidth","waitForToken","subscribe","ngOnInit","getFooterClass","styleClass","pipe","token","localStorage","getItem","tokenAvailable","error","console","ngOnDestroy","next","complete","_","i0","ɵɵdirectiveInject","i1","SocketService","i2","ElementRef","_2","selectors","inputs","decls","vars","consts","template","FooterComponent_Template","rf","ctx","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵelement","ɵɵproperty"],"sources":["D:\\web\\EMS_Base\\kot\\src\\app\\layout\\componenets\\footer\\footer.component.ts","D:\\web\\EMS_Base\\kot\\src\\app\\layout\\componenets\\footer\\footer.component.html"],"sourcesContent":["\nimport { Component, ElementRef, HostListener, Input } from '@angular/core';\nimport { SocketService } from 'src/app/ems.utilities/services/socket.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { Observable, interval, Subject } from 'rxjs';\nimport { takeWhile, map, takeUntil, catchError } from 'rxjs/operators';\n\n@Component({\n  selector: 'layout-footer',\n  templateUrl: './footer.component.html',\n  styleUrls: ['./footer.component.scss']\n})\nexport class FooterComponent {\n  calenderopen: boolean = true;\n  iscalendlyactive: boolean = false;\n  scheduling_url: string | undefined\n  private destroy$ = new Subject<void>();\n\n\n  constructor(\n    public socketservice: SocketService,\n    private NgxSpinnerService: NgxSpinnerService,\n    private _eref: ElementRef\n  ) {\n    this.waitForToken().subscribe(() => {\n\n    });\n\n  }\n\n  ngOnInit(): void {\n    \n  }\n  notesopen: boolean = true;\n  @Input() collapsed = false;\n  @Input() screenWidth = 0;\n\n  getFooterClass(): string {\n    let styleClass = '';\n    if (this.collapsed && this.screenWidth > 768) {\n      styleClass = 'footer-trimmed';\n    } else if (this.collapsed && this.screenWidth <= 768 && this.screenWidth > 0) {\n      styleClass = 'footer-md-screen';\n    }\n    return styleClass;\n  }\n\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\n  ngOnDestroy(): void {\n    this.destroy$.next();\n    this.destroy$.complete();\n  }\n}\n","<div class=\"footer\"  [ngClass]=\"getFooterClass()\">\n    <div class=\"footer-content\">\n        <div class=\"footer-content-left\">\n            <!-- <div *ngFor=\" let list of menu; let i = index;\" style=\"padding-left: 6px;\"> \n                <button class=\"head-menu-item-name-btn\"\n                  (click)=\"getsidemenu(list);selectHead(i)\"\n                  [ngClass]=\"{'activeHeader': selectedIndex === i}\"\n                >{{list.text}}</button>\n            </div> -->\n            <span>© 2024 - <a href=\"https://www.vcidex.com/StoryboardCRM.html\" target=\"_blank\"> StoryboardSystem </a> </span>\n        </div>\n        <div class=\"footer-content-right\">\n            <button class=\"footer-menu-item-btn \">\n                <i class=\"fa-brands fa-facebook icon_size\" ></i>\n            </button>\n            <button class=\"footer-menu-item-btn \">\n                <i class=\"fa-brands fa-instagram icon_size\" ></i>\n            </button>\n            <button class=\"footer-menu-item-btn\">\n                <i class=\"fa-brands fa-linkedin-in icon_size\" ></i>\n            </button>\n           \n          \n        </div>\n    </div>\n</div>\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}