{"version":3,"sources":["./src/app/components/heatmap-bubble/heatmap-bubble.component.ts","./src/app/components/heatmap-bubble/heatmap-bubble.component.html","./src/environments/environment.ts","./src/app/components/new-main-dashboard/new-main-dashboard.component.ts","./src/app/components/new-main-dashboard/new-main-dashboard.component.html","./src/app/modules/shared/components/header/header.component.ts","./src/app/modules/shared/components/header/header.component.html","./src/app/modules/shared/shared.module.ts","./node_modules/moment/locale sync ^\\.\\/.*$","./src/app/app.component.ts","./src/app/app.component.html","./src/app/modules/shared/components/footer/footer.component.ts","./src/app/modules/shared/components/footer/footer.component.html","./src/app/modules/pipe/number-format.pipe.ts","./src/app/app.module.ts","./src/app/modules/i18n/i18n.module.ts","./src/app/modules/services/websocket.service.ts","./src/app/components/vaccination-dashboard/vaccination-dashboard.component.ts","./src/app/components/vaccination-dashboard/vaccination-dashboard.component.html","./src/app/modules/shared/pipes/title-case-custom.pipe.ts","./src/app/modules/i18n/i18n.service.ts","./src/app/interceptors/token.interceptor.ts","./src/app/components/registration-dashboard/registration-dashboard.component.ts","./src/app/components/registration-dashboard/registration-dashboard.component.html","./src/app/components/main-dashboard/main-dashboard.component.ts","./src/app/components/main-dashboard/main-dashboard.component.html","./src/app/modules/services/public-report.service.ts","./src/app/modules/shared/components/language/language.component.ts","./src/app/modules/shared/components/language/language.component.html","./src/app/app-routing.module.ts","./src/main.ts","./$_lazy_route_resource lazy namespace object"],"names":[],"mappings":"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oBACP,GAAG,aAAa;oBAChB,qEAAc,CAAC,OAAO,EAAE;iBACzB;gBACD,OAAO,EAAE;oBACP,GAAG,gBAAgB;oBACnB,GAAG,gBAAgB;oBACnB,GAAG,aAAa;oBAChB,GAAG,WAAW;oBACd,qEAAc;oBACd,mEAAa;iBACd;aACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvDD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2B;;;;;;;;;;;;;;;;;;;;;;;ACvSA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAqE;AAG+B;AAIlE;AAIlC,qCAAqC;AACM;AAGmD;AACwB;AACH;AAGd;;;;;;;;;;;;;AAZrG,MAAM,MAAM,GAAG,mCAAO,CAAC;AAmBhB,MAAM,YAAY;IA4DvB,YACU,mBAAwC,EACzC,aAAoC,EACpC,QAAkB,EAClB,gBAAkC,EACjC,cAA8B,EAC9B,WAAwB,EACxB,SAA2B,EAC3B,YAAmB;QAPnB,wBAAmB,GAAnB,mBAAmB,CAAqB;QACzC,kBAAa,GAAb,aAAa,CAAuB;QACpC,aAAQ,GAAR,QAAQ,CAAU;QAClB,qBAAgB,GAAhB,gBAAgB,CAAkB;QACjC,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAa;QACxB,cAAS,GAAT,SAAS,CAAkB;QAC3B,iBAAY,GAAZ,YAAY,CAAO;QA7D7B,qBAAgB,GAAG,EAAE,CAAC;QACtB,kBAAa,GAAG,OAAO,CAAC;QACxB,kBAAa,GAAG,EAAE,CAAC;QACnB,UAAK,GAAG,gBAAgB,CAAC;QAazB,mBAAc,GAAG,GAAG,CAAC;QACrB,gBAAW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","file":"main.js","sourcesContent":["import { Component, OnInit,Input } from '@angular/core';\nimport * as d3 from \"d3\";\n\nimport * as topojson from 'topojson';\nimport * as $ from 'jquery';\nimport { PublicReportService } from '../../modules/services/public-report.service';\nimport { DatePipe } from '@angular/common';\n\n@Component({\n selector: 'app-heatmap-bubble',\n templateUrl: './heatmap-bubble.component.html',\n styleUrls: ['./heatmap-bubble.component.scss']\n})\nexport class HeatmapBubbleComponent implements OnInit {\n width = 500;\n height = 600;\n todaysdate: any;\n VaccData: any;\n bubbleData: any;\n states: any\n // statename1;\n @Input() statename = '';\n constructor(private publicReportService: PublicReportService,\n public datepipe: DatePipe) { }\n\n ngOnInit(): void {\n\n this.todaysdate = new Date();\n this.todaysdate = this.datepipe.transform(this.todaysdate, 'yyyy-MM-dd');\n const width = 100;\n const height = 400;\n this.publicReportService.getPublicReports('', '', this.todaysdate).subscribe((res: any) => {\n if (res) {\n this.VaccData = res.getBeneficiariesGroupBy;\n console.log(\"this.VaccData \", this.VaccData.length)\n const totalVac = this.VaccData.reduce((sum: number, v: any) => {\n return sum + parseInt(v.total);\n }, 0)\n\n this.bubbleData = this.VaccData.map((vacc: any) => {\n return {\n total: vacc.total,\n }\n\n });\n\n Promise.all([\n d3.json('../../../assets/json/states.json'),\n d3.json('../../../assets/json/sample.json')\n\n\n ]).then(([data1, data2]) => {\n // const countries = topojson.feature(data1, data1.objects.states);\n\n this.drawBubbleMap(data1, this.VaccData);\n\n\n }).catch(err => console.log('checkong d3 map'))\n } else {\n\n }\n\n });\n\n if (!this.VaccData) {\n Promise.all([\n d3.json('../../../assets/json/states.json'),\n d3.json('../../../assets/json/sample.json')\n\n\n ]).then(([data1, data2]) => {\n // const countries = topojson.feature(data1, data1.objects.states);\n\n // this.drawEmptyMap(data1);\n\n\n }).catch(err => console.log('checkong d3 map'))\n }\n\n }\n\n drawBubbleMap(world: any, data: any) {\n console.log('Registration component', this.statename);\n // console.log(\"w\",this.width )\n const svg = d3.select('#my_dataviz1').append('svg')\n\n .attr('width', this.width).attr('height', this.height);\n\n const projection = d3.geoMercator().scale(100)\n .translate([this.width / 2, this.height / 1]);\n\n const path: any = d3.geoPath(null);\n\n var populationById: any = {};\n\n data.forEach(function (d: any) {\n populationById[d.state_name] = {\n\n total: +d.today,\n tot_total: +d.total,\n totally_vaccinated: d.totally_vaccinated,\n dose1: d.partial_vaccinated,\n dose2: d.totally_vaccinated,\n precaution_dose:d.precaution_dose\n }\n });\n\n\n const color = d3.scaleOrdinal()\n .domain(data.map((d: any) => d.state_name))\n .range(d3.schemePaired);\n\n var features: any = topojson.feature(world, world.objects.states);\n\n\n\n features.features.forEach(function (d: any) {\n\n d.details = populationById[d.properties.st_nm] ? populationById[d.properties.st_nm] : {};\n\n });\n\n // console.log('Registration component', this.statename);\n // ---------------------Image--------------------------\n\n\n // ------------------------Draw Map---------------\n // console.log(\" this.statename1\", this.statename)\n if (this.statename == \"Andaman and Nicobar Islands\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n\n if (d.id == \"Andaman and Nicobar Islands\") {\n return \"#AEA1FF\";//on condition match\n } else {\n return \"#A8B8E2\";\n }\n }).attr(\"d\", path)\n } else if (this.statename == \"Andhra Pradesh\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n\n if (d.id == \"Andhra Pradesh\") {\n return \"#AEA1FF\";//on condition match\n } else {\n return \"#A8B8E2\";\n }\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Arunachal Pradesh\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n\n if (d.id == \"Arunachal Pradesh\") {\n return \"#AEA1FF\";//on condition match\n } else {\n return \"#A8B8E2\";\n }\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Assam\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Assam\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Bihar\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Bihar\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Chandigarh\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Chandigarh\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Chhattisgarh\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Chhattisgarh\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Dadra and Nagar Haveli\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Dadra and Nagar Haveli\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Daman and Diu\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Daman and Diu\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Delhi\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Delhi\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Goa\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Goa\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Gujarat\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Gujarat\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Haryana\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Haryana\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Himachal Pradesh\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Himachal Pradesh\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Jammu and Kashmir\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Jammu and Kashmir\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Jharkhand\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Jharkhand\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Karnataka\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Karnataka\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Kerala\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Kerala\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Karnataka\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Kerala\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Ladakh\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Ladakh\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Lakshadweep\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Lakshadweep\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Madhya Pradesh\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Madhya Pradesh\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n\n else if (this.statename == \"Maharashtra\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Maharashtra\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n\n else if (this.statename == \"Manipur\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Manipur\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n\n else if (this.statename == \"Meghalaya\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Meghalaya\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n\n else if (this.statename == \"Mizoram\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Mizoram\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Nagaland\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Nagaland\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Odisha\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Odisha\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Puducherry\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Puducherry\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Punjab\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Punjab\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Rajasthan\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Rajasthan\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Sikkim\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Sikkim\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Tamil Nadu\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Tamil Nadu\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Telangana\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Telangana\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Tripura\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Tripura\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n\n else if (this.statename == \"Uttar Pradesh\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Uttar Pradesh\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"Uttarakhand\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"Uttarakhand\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n else if (this.statename == \"West Bengal\") {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .style(\"fill\", function (d) {\n if (d.id == \"West Bengal\") {\n return \"#AEA1FF\";//on condition match\n\n } else {\n return \"#A8B8E2\";\n }\n\n\n }).attr(\"d\", path)\n }\n\n else {\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\" fill-opacity\", \".2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"id\", function (d: any) {\n return d.id;\n })\n .attr(\"d\", path)\n\n }\n\n // ------------------Tooltip--------------------\n\n var tooltip =\n d3.select(\"body\")\n .append(\"div\")\n .style(\"position\", \"absolute\")\n .style(\"z-index\", \"1\")\n .style(\"visibility\", \"visible\")\n .style(\"cursor\", \"default\")\n .attr(\"class\", \"map_tooltip\")\n .style(\"left\", (100) + \"px\")\n .style(\"top\", (200) + \"px\")\n .style(\"background\", \"white\");\n \n var div = d3.select(\"body\").append(\"div\")\n .attr(\"class\", \"tooltip\")\n .style(\"opacity\", 0);\n\n var radius = d3.scaleSqrt()\n // .domain([0, 500000])\n .domain([0, 70000000])\n .range([0, 10]);\n\n\n // --------------Add Bubbles------------------\n \n // else{\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n // console.log(\"check\", d)\n return \"translate(\" + path.centroid(d) + \")\";\n })\n \n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) { return radius(d.details.tot_total) })\n .style(\"fill\", \"#5439FC\")\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return \"#5439FC\" } else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n // .attr(\"fill-opacity\", .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n // }\n if(this.statename == \"Andaman and Nicobar Islands\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n \n if (d.id == \"Andaman and Nicobar Islands\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Andaman and Nicobar Islands\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Andaman and Nicobar Islands\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Andhra Pradesh\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n \n if (d.id == \"Andhra Pradesh\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Andhra Pradesh\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Andhra Pradesh\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Arunachal Pradesh\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n \n if (d.id == \"Arunachal Pradesh\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Arunachal Pradesh\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Arunachal Pradesh\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Assam\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Assam\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Assam\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Assam\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Bihar\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Bihar\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Bihar\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Bihar\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Chandigarh\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Chandigarh\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Chandigarh\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Chandigarh\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Chhattisgarh\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Chhattisgarh\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Chhattisgarh\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Chhattisgarh\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Dadra and Nagar Haveli\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n \n if (d.id == \"Dadra and Nagar Haveli\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Dadra and Nagar Haveli\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Dadra and Nagar Haveli\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n\n if(this.statename == \"Daman and Diu\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Daman and Diu\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Daman and Diu\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Daman and Diu\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Delhi\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Delhi\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Delhi\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Delhi\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Goa\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Goa\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Goa\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Goa\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Gujarat\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Gujarat\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Gujarat\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Gujarat\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Haryana\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Haryana\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Haryana\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Haryana\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Himachal Pradesh\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Himachal Pradesh\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Himachal Pradesh\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Himachal Pradesh\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Jammu and Kashmir\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Jammu and Kashmir\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Jammu and Kashmir\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Jammu and Kashmir\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Jharkhand\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Jharkhand\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Jharkhand\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Jharkhand\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Karnataka\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Karnataka\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Karnataka\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Karnataka\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n\n if(this.statename == \"Kerala\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Kerala\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Kerala\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Kerala\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n \n if(this.statename == \"Ladakh\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Ladakh\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Ladakh\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Ladakh\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n \n if(this.statename == \"Lakshadweep\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Lakshadweep\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Lakshadweep\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Lakshadweep\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n \n if(this.statename == \"Madhya Pradesh\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Madhya Pradesh\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Madhya Pradesh\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Madhya Pradesh\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n \n if(this.statename == \"Maharashtra\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Maharashtra\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Maharashtra\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Maharashtra\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n \n if(this.statename == \"Manipur\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Manipur\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Manipur\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Manipur\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Meghalaya\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Meghalaya\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Meghalaya\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Meghalaya\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Mizoram\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Mizoram\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Mizoram\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Mizoram\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Nagaland\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Nagaland\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Nagaland\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Nagaland\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Odisha\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Odisha\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Odisha\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Odisha\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Puducherry\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Puducherry\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Puducherry\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Puducherry\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Punjab\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Punjab\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Punjab\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Punjab\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Rajasthan\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Rajasthan\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Rajasthan\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Rajasthan\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Sikkim\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Sikkim\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Sikkim\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Sikkim\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Tamil Nadu\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Tamil Nadu\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Tamil Nadu\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Tamil Nadu\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Telangana\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Telangana\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Telangana\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Telangana\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Tripura\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Tripura\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Tripura\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Tripura\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Uttar Pradesh\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Uttar Pradesh\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Uttar Pradesh\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Uttar Pradesh\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"Uttarakhand\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"Uttarakhand\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"Uttarakhand\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"Uttarakhand\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n if(this.statename == \"West Bengal\"){\n // features.features= features.features.filter(e => e.state_name == this.statename);\n svg.append(\"g\")\n .attr(\"class\", \"bubble\")\n .selectAll(\"circle\")\n .data(features.features)\n .enter().append(\"circle\")\n .attr(\"transform\", function (d: any) {\n console.log(\"check\", d)\n if (d.id == \"West Bengal\") {\n return \"translate(\" + path.centroid(d) + \")\";\n }\n })\n .attr(\"r\", 14)\n .attr(\"r\", function (d: any) {\n if (d.id == \"West Bengal\") {\n return radius(d.details.tot_total) \n }\n \n })\n .style(\"fill\", function (d) {\n if (d.id == \"West Bengal\") {\n return '#1C2039';//on condition match\n\n } \n })\n \n .attr(\"stroke\", function (d: any) {\n if (d.details.tot_total > 0) { return '#1C2039'} else { return \"none\" }\n })\n .attr(\"stroke-width\", 15)\n .attr('stroke-opacity', .5)\n .on('mousemove', function (event, d: any) {\n // console.log(\"mouse\", d)\n d3.select(this)\n\n tooltip.html(' ' + d.id + ' ' +\n '
Dose One '+'
' + d.details.dose1.toLocaleString('en-IN') + '' +\n '
Dose Two ' + '
' + d.details.dose2.toLocaleString('en-IN') + '' +\n '
Precaution Dose ' + '
' + d.details.precaution_dose.toLocaleString('en-IN') + '' +\n '
')\n .style(\"left\", (event.pageX + 50) + \"px\")\n .style(\"top\", (event.pageY - 30) + \"px\")\n // d3.select(\"tooltip\").html(\"\"+(d.id + \" : \" + d.details.total)+\"\")\n .style(\"cursor\", \"default\")\n\n })\n .on(\"mouseover \", function (d) {\n tooltip.style(\"opacity\", 1)\n })\n .on(\"mouseleave\", function (d) {\n tooltip.style(\"opacity\", 0)\n })\n \n }\n \n \n // ------------legend------------\n\n var radius1 = d3.scaleSqrt()\n .domain([0, 1e6])\n .range([0, 15]);\n\n const xCircle = 40\n const xLabel = 90\n\n const valueExtent = d3.extent(data, (d: any) => +d.total)\n console.log(\"valueExtent\", valueExtent)\n var size = d3.scaleSqrt()\n .domain([1, 100]) // What's in the data\n .range([1, 500]) // Size in pixel\n\n var legend = svg.append(\"g\")\n .attr(\"class\", \"legend\")\n // .attr(\"transform\", \"translate(\" + (this.width - 90) + \",\" + (this.height - 50) + \")\")\n // .attr(\"transform\", \"translate(\" + (400) + \",\" + (490) + \")\")\n .attr(\"transform\", \"translate(\" + (1) + \",\" + (545) + \")\")\n .selectAll(\"g\")\n // .data([10000, 500000, 10000000])\n .data([1e6, 3e6, 6e6])\n\n .enter().append(\"g\");\n\n legend.append(\"circle\")\n .attr(\"cx\", xCircle)\n .attr(\"cy\", function (d) { return -radius1(d); })\n // .attr(\"cy\", function(d){ \n\n // return this.height - size(d) } )\n .attr(\"r\", function (d) { return size(d) })\n .style(\"fill\", \"none\")\n .attr(\"stroke\", \"#A8B8E2\")\n\n\n .attr(\"r\", function (d) {\n console.log(\"r\", d)\n return radius1(d)\n });\n\n legend.append(\"text\")\n .attr(\"y\", function (d) {\n\n return -2 * radius1(d);\n })\n .attr(\"dy\", \"1.5em\")\n .attr(\"dx\", \"3.6em\")\n .style(\"font\", \"10px sans-serif\")\n .style(\"text-anchor\", \"middle\")\n .style(\"text-color\", \"white\")\n .style(\"fill\", \"#A8B8E2\")\n .text(d3.format(\".1s\"));\n\n\n }\n\n drawEmptyMap(world: any) {\n console.log(world)\n const svg = d3.select('#my_dataviz1').append('svg')\n\n .attr('width', this.width).attr('height', this.height);\n const path: any = d3.geoPath(null);\n var features: any = topojson.feature(world, world.objects.states);\n svg.selectAll('path').data(features.features).enter().append('path').\n attr('class', 'state').attr('d', path)\n .style(\"fill\", \"#A8B8E2\")\n .style(\"stroke\", \"#FFFFFF\")\n .attr(\"preserveAspectRatio\", \"xMinYMin meet\")\n .attr(\"viewBox\", \"0 0 600 400\")\n .attr(\"id\", function (d: any) {\n // console.log(\"dh\", d)\n return d.id;\n })\n\n\n .attr(\"d\", path)\n }\n getStatename(state = \"\") {\n this.statename = state;\n console.log(\"this.statename \", this.statename)\n this.publicReportService.getPublicReports('', '', this.todaysdate).subscribe((res: any) => {\n if (res) {\n this.VaccData = res.getBeneficiariesGroupBy;\n console.log(\"this.VaccData \", this.VaccData.length)\n const totalVac = this.VaccData.reduce((sum: number, v: any) => {\n return sum + parseInt(v.total);\n }, 0)\n\n this.bubbleData = this.VaccData.map((vacc: any) => {\n return {\n total: vacc.total,\n }\n\n });\n\n Promise.all([\n d3.json('../../../assets/json/states.json'),\n d3.json('../../../assets/json/sample.json')\n\n\n ]).then(([data1, data2]) => {\n // const countries = topojson.feature(data1, data1.objects.states);\n\n this.drawBubbleMap(data1, this.VaccData);\n\n\n }).catch(err => console.log('checkong d3 map'))\n } else {\n\n }\n\n });\n }\n\n\n}\n","
\n
\n
\n
\n\n \n \n \n
\n
\n
\n
\n
\n","const BASE_URL = 'https://cdndemo-api.co-vin.in';\nconst DIRECT_BASE_URL = 'https://cdndemo-api.co-vin.in';\n\nconst API_ADMIN_PORT = ``;\nconst API_AUTH_PORT = ``;\nconst API_USER_PORT = ``;\nconst API_REGISTRATION_PORT = ``;\nconst API_SESSION_PORT = ``;\nconst API_REPORTS_PORT = ``;\nconst SELF_REGISTRATION_URL = `https://selfregistration.demo.co-vin.in`;\n\nexport const environment = {\n production: false,\n defaultLanguage: 'en',\n supportedLanguages: [\n { id: 'en', name: 'English', regional: 'English' },\n { id: 'hi', name: 'Hindi', regional: 'हिंदी' },\n { id: 'mr', name: 'Marathi', regional: 'मराठी' },\n { id: 'ml', name: 'Malayalam', regional: 'മലയാളം' },\n { id: 'pb', name: 'Punjabi', regional: 'ਪੰਜਾਬੀ' },\n { id: 'te', name: 'Telugu', regional: 'తెలుగు' },\n { id: 'gu', name: 'Gujarati', regional: 'ગુજરાતી' },\n { id: 'as', name: 'Assamese', regional: 'অসমীয়া' },\n { id: 'be', name: 'Bengali', regional: 'বাংলা' },\n { id: 'ka', name: 'Kannada', regional: 'ಕನ್ನಡ' },\n { id: 'or', name: 'Odia', regional: 'ଓଡିଆ' },\n { id: 'ta', name: 'Tamil', regional: 'தமிழ்' },\n ],\n session_prefix_url_port: `${BASE_URL}:9005`,\n session_prefix_url: `${BASE_URL}${API_SESSION_PORT}/api/v1/session`,\n admin_prefix_url: `${BASE_URL}${API_ADMIN_PORT}/api/v1/admin`,\n auth_prefix_url: `${BASE_URL}${API_AUTH_PORT}/api/v1/auth`,\n user_prefix_url: `${BASE_URL}${API_USER_PORT}/api/v1/user`,\n beneficiary_registration_prefix_url: `${BASE_URL}${API_REGISTRATION_PORT}/api/v1/registration`,\n admin_prefix_direct_url: `${DIRECT_BASE_URL}${API_ADMIN_PORT}/api/v1/admin`,\n beneficiary_registration_prefix_direct_url: `${DIRECT_BASE_URL}${API_REGISTRATION_PORT}/api/v1/registration`,\n report_prefix_direct_url: `${BASE_URL}${API_REPORTS_PORT}/api/v1/reports`,\n rd_device_prefix_url: `https://localhost:`,\n recaptcha_site_key: '6LdNBNUZAAAAAAYITU9accPJNhMSzHMsuqc99RPE',\n selfregistration: `${SELF_REGISTRATION_URL}`,\n isUat: false,\n chatboturl: 'https://covid19-staging.nhp.gov.in:80/vaccinator/',\n isProduction: false,\n env: 'OtherEnv',\n apkVersion: '3.0',\n AppRedirectUrls: {\n admin: 'https://admin.demo.co-vin.in',\n webApp: 'https://app.demo.co-vin.in',\n selfReg: 'https://selfregistration.demo.co-vin.in/',\n trackReg: 'https://selfregistration.demo.co-vin.in/applicationtracker',\n certificate: 'http://selfregistration.demo.co-vin.in/vaccination-certificate',\n dashboard: 'https://dashboard.demo.co-vin.in',\n international: 'https://sandbox.demo.co-vin.in',\n verifyCertificate: 'https://verify.cowin.gov.in/',\n dashboardInd: 'https://dashboard.demo.co-vin.in',\n mainPage: 'https://demo.co-vin.in',\n },\n playStoreUrl: {\n android: 'https://play.google.com/store/apps/details?id=com.cowinapp.app',\n ios: '',\n },\n socket_live_counter_url_port: `wss://websocketprod.co-vin.in`,\n socket_live_counter_url_port_age: `wss://websocketvaccprod.co-vin.in`,\n ENV: \"SIT\"\n};\n","import { WebSocketService } from './../../modules/services/websocket.service';\nimport { NumberFormatPipe } from '../../modules/pipe/number-format.pipe';\nimport { switchMap, startWith } from 'rxjs/operators';\nimport { PublicReportService } from '../../modules/services/public-report.service';\nimport { Component, OnInit, EventEmitter, Output, ViewChild } from '@angular/core';\nimport * as $ from 'jquery';\nimport { ChartDataSets, ChartLegendItem, ChartOptions, ChartType, Chart } from 'chart.js';\nimport * as _ from 'lodash';\nimport * as _moment from 'moment';\nconst moment = _moment;\nimport { DeviceDetectorService } from 'ngx-device-detector';\nimport { Observable } from 'rxjs';\n// import { Console } from 'console';\nimport { DatePipe } from '@angular/common';\nimport { TranslateService } from '@ngx-translate/core';\nimport * as Excel from 'exceljs/dist/exceljs.min.js'\nimport * as fs from 'file-saver';\nimport { saveAs } from 'file-saver';\nimport { interval, Subscription } from 'rxjs';\nimport { environment } from 'src/environments/environment';\nimport { HeatmapBubbleComponent } from '../heatmap-bubble/heatmap-bubble.component';\n@Component({\n selector: 'app-new-main-dashboard',\n templateUrl: './new-main-dashboard.component.html',\n styleUrls: ['./new-main-dashboard.component.scss']\n})\nexport class NewMainDashboardComponent implements OnInit {\n @ViewChild(HeatmapBubbleComponent) Heatmap: HeatmapBubbleComponent;\n @Output() clickevent = new EventEmitter();\n selectedTabLabel = '';\n headerTextLbl = 'State';\n state_id;\n district_id;\n todaysdate;\n reportData;\n ReportGenerateTime;\n topBlockReport;\n liveVaccData\n vaccinatedAefiPer;\n lineChartDataNew;\n realTimeChart;\n isday = true;\n ismonth = false;\n isweek;\n isByAge;\n isByDoses = true;\n realTimeChartlast30days;\n last30DaysVaccinationData;\n weeklyReportData;\n realTimeChartweek;\n isdayVaccAge = false;\n ismonthVaccAge = false;\n isweekVaccAge = false;\n vaccinationAgeDataToday;\n vaccinationAgeChartToday;\n vaccinationAgeChartMonth;\n vaccinationAgeDataMonth;\n vaccinationAgeDataAll;\n vaccinationAgeChartAll;\n liveVaccinationCounter: any;\n webSocketCounter: any;\n totalVaccinationCounter: any = 0;\n partialVaccinationCounter: any = 0;\n fullyVaccinationCounter: any = 0;\n totalRegistrationCounter: any = 0;\n intervalSub$: Subscription = new Subscription();\n hideWebSocketCounter = true;\n suffix = 'IND';\n liveVaccChart;\n liveVaccChartStreaming;\n prevsData;\n updateCountTotalVacc = 0;\n liveVaccChartStreamingRegistration;\n prevsRegData;\n updateCountTotalReg = 0;\n liveVaccChartStreamingPartialVacc;\n prevsPartialVaccData;\n updateCountPartialVacc = 0;\n liveVaccChartStreamingFullyVacc;\n prevsFullyVaccData;\n updateCountFullyVacc = 0;\n updateInterval = 300;\n numberOfElements = 10;\n options: any = {\n useGrouping: false,\n formattingFn: (n: number) => n.toLocaleString('en-IN')\n }\n vaccinationByAgeChart;\n vaccinationByAgeChartData;\n genderVaccPieChart;\n materialVaccPieChart;\n materialVaccPieChartnew;\n genderVaccPieChartNew;\n vaccinationByAgeChartNew;\n states;\n // districtListfromstate = [];\n // districtList;\n stateId;\n district;\n chartFlag;\n registartionChartDataMonth: any;\n isdayReg: boolean;\n ismonthReg: boolean;\n isweekReg: boolean;\n registartionChartMonth: any;\n registartionChartDataAll: any;\n registartionChartAll: any;\n registartionChart: any;\n registartionChartData: any;\n isdayVacc: boolean;\n ismonthVacc: boolean;\n isweekVacc: boolean;\n vaccinationAEFIChart: any;\n vaccinationAEFIChartData: any;\n vaccinationByCategoryChart: any;\n vaccinationByCategoryData: any;\n secondHalf: any;\n getVaccinationByStateUTData: any;\n doughnutChartForTable: any;\n chartStateId: any;\n chartDose_1: any;\n chartDose_2: any;\n chartTotal: any;\n dynamicId: string;\n charts = [];\n semesters: number[];\n stateArr: any;\n dose_1: any;\n // states: { state_id: number; state_code: string; state_name: string; }[];\n districtListfromstate: any;\n districtList: any;\n collapseId: any;\n iconClass: boolean = false;\n hideShowFilter: boolean = false;\n FilterIcon: boolean = false;\n districtListnew;\nsession_site_id\n hideShowExport: boolean;\n isState: string;\n isDistrict: string;\n DownlloadVaccinationDoneByTime: any;\n DownlloadVaccinationDoneByTimeAgeWise: any;\n DownlloadImeWiseTodayRegReport: any;\n DownlloadLast30DaysAefi: any;\n DownlloadVaccinationByAge: any;\n Downloadlast30DaysVaccination: any;\n DownloadweeklyReport: any;\n Downloadlast30DaysAgeWiseVaccination: any;\n DownloadweeklyVacAgeWiseReport: any;\n DownloadRegReportData: any;\n DownloadRegWeekReportData: any;\n getBeneficiariesGroupBy: any;\n vaccinationByAgefinalResult: any = [];\n downloadExcelHeader;\n downloadExcelHeaderForCoverage: string;\n vaccinationCoverageByStateChartData: any;\n tableheader: any;\n exportIcon: boolean;\n statename;\n total12_14Vaccination: any = 0;\n total15_17Vaccination: any = 0;\ntotal18_44Vaccination: any = 0;\ntotal45_60Vaccination: any = 0;\ntotalabove_60Vaccination: any = 0;\ntotal_hcw_flw_precaution_vaccinations: any = 0;\ntotal_60_plus_precaution_vaccinations: any = 0;\nstatedistrict:any;\n constructor(private publicReportService: PublicReportService,\n public deviceService: DeviceDetectorService,\n public datepipe: DatePipe,\n public numberFormatPipe: NumberFormatPipe,\n private translate: TranslateService,\n private webSocket: WebSocketService) { }\n\n ngOnInit(): void {\n this.todaysdate = new Date();\n this.todaysdate = this.datepipe.transform(this.todaysdate, 'yyyy-MM-dd');\n this.states = [\n {\n \"state_id\": 1,\n \"state_code\": \"AN\",\n \"state_name\": \"Andaman and Nicobar Islands\"\n },\n {\n \"state_id\": 2,\n \"state_code\": \"AP\",\n \"state_name\": \"Andhra Pradesh\"\n },\n {\n \"state_id\": 3,\n \"state_code\": \"AR\",\n \"state_name\": \"Arunachal Pradesh\",\n\n },\n {\n \"state_id\": 4,\n \"state_code\": \"AS\",\n \"state_name\": \"Assam\"\n },\n {\n \"state_id\": 5,\n \"state_code\": \"BR\",\n \"state_name\": \"Bihar\"\n },\n {\n \"state_id\": 6,\n \"state_code\": \"CH\",\n \"state_name\": \"Chandigarh\"\n },\n {\n \"state_id\": 7,\n \"state_code\": \"CG\",\n \"state_name\": \"Chhattisgarh\"\n },\n {\n \"state_id\": 8,\n \"state_code\": \"DH\",\n \"state_name\": \"Dadra and Nagar Haveli\"\n },\n {\n \"state_id\": 37,\n \"state_code\": \"DD\",\n \"state_name\": \"Daman and Diu\"\n },\n {\n \"state_id\": 9,\n \"state_code\": \"DL\",\n \"state_name\": \"Delhi\"\n },\n {\n \"state_id\": 10,\n \"state_code\": \"GA\",\n \"state_name\": \"Goa\"\n },\n {\n \"state_id\": 11,\n \"state_code\": \"GJ\",\n \"state_name\": \"Gujarat\"\n },\n {\n \"state_id\": 12,\n \"state_code\": \"HR\",\n \"state_name\": \"Haryana\"\n },\n {\n \"state_id\": 13,\n \"state_code\": \"HP\",\n \"state_name\": \"Himachal Pradesh\"\n },\n {\n \"state_id\": 14,\n \"state_code\": \"JK\",\n \"state_name\": \"Jammu and Kashmir\"\n },\n {\n \"state_id\": 15,\n \"state_code\": \"JH\",\n \"state_name\": \"Jharkhand\"\n },\n {\n \"state_id\": 16,\n \"state_code\": \"KA\",\n \"state_name\": \"Karnataka\"\n },\n {\n \"state_id\": 17,\n \"state_code\": \"KL\",\n \"state_name\": \"Kerala\"\n },\n {\n \"state_id\": 18,\n \"state_code\": \"LA\",\n \"state_name\": \"Ladakh\"\n },\n {\n \"state_id\": 19,\n \"state_code\": \"LD\",\n \"state_name\": \"Lakshadweep\"\n },\n {\n \"state_id\": 20,\n \"state_code\": \"MP\",\n \"state_name\": \"Madhya Pradesh\"\n },\n {\n \"state_id\": 21,\n \"state_code\": \"MH\",\n \"state_name\": \"Maharashtra\"\n },\n {\n \"state_id\": 22,\n \"state_code\": \"MN\",\n \"state_name\": \"Manipur\"\n },\n {\n \"state_id\": 23,\n \"state_code\": \"ML\",\n \"state_name\": \"Meghalaya\"\n },\n {\n \"state_id\": 24,\n \"state_code\": \"MZ\",\n \"state_name\": \"Mizoram\"\n },\n {\n \"state_id\": 25,\n \"state_code\": \"NL\",\n \"state_name\": \"Nagaland\"\n },\n {\n \"state_id\": 26,\n \"state_code\": \"OD\",\n \"state_name\": \"Odisha\"\n },\n {\n \"state_id\": 27,\n \"state_code\": \"PY\",\n \"state_name\": \"Puducherry\"\n },\n {\n \"state_id\": 28,\n \"state_code\": \"PB\",\n \"state_name\": \"Punjab\"\n },\n {\n \"state_id\": 29,\n \"state_code\": \"RJ\",\n \"state_name\": \"Rajasthan\"\n },\n {\n \"state_id\": 30,\n \"state_code\": \"SK\",\n \"state_name\": \"Sikkim\"\n },\n {\n \"state_id\": 31,\n \"state_code\": \"TN\",\n \"state_name\": \"Tamil Nadu\"\n },\n {\n \"state_id\": 32,\n \"state_code\": \"TS\",\n \"state_name\": \"Telangana\"\n },\n {\n \"state_id\": 33,\n \"state_code\": \"TR\",\n \"state_name\": \"Tripura\"\n },\n {\n \"state_id\": 34,\n \"state_code\": \"UP\",\n \"state_name\": \"Uttar Pradesh\"\n },\n {\n \"state_id\": 35,\n \"state_code\": \"UK\",\n \"state_name\": \"Uttarakhand\"\n },\n {\n \"state_id\": 36,\n \"state_code\": \"WB\",\n \"state_name\": \"West Bengal\"\n }\n\n ]\n this.getLiveVaccinationCounter();\n // this.getDataForLiveVaccCountChart();\n // setTimeout(() => {\n // this.prepareDataForLiveVaccStareaming();\n // this.prepareDataForLiveVaccStareamingRegistration();\n // this.prepareDataForLiveVaccStareamingPartialVacc();\n // this.prepareDataForLiveVaccStareamingFullyVacc();\n // this.getDistrictList()\n\n // }, 1)\n\n setTimeout(() => {\n this.prepareDataForLiveVaccStareaming();\n this.prepareDataForLiveVaccStareamingRegistration();\n this.prepareDataForLiveVaccStareamingPartialVacc();\n this.prepareDataForLiveVaccStareamingFullyVacc();\n this.getDistrictList()\n this.prepareDataForLiveVaccStareaming12_14();\n this.prepareDataForLiveVaccStareaming15_17();\n this.prepareDataForLiveVaccStareaming18_44();\n this.prepareDataForLiveVaccStareaming45_60();\n // this.prepareDataForLiveVaccStareamingabove_60();\n this.updateDataAge();\n }, 1)\n\n\n }\n\n getDashboardData(state_id = \"\", district_id = \"\") {\n this.state_id = state_id;\n this.district_id = district_id\n console.log(\"\")\n if (district_id == '' || district_id == undefined) {\n this.getDistrictID(state_id);\n }\n this.chartFlag = (district_id) ? true : false;\n // this.getVacChartData();\n\n this.publicReportService.getPublicReports(state_id, district_id, this.todaysdate).subscribe(res => {\n this.reportData = res;\n this.ReportGenerateTime = res.timestamp;\n this.ReportGenerateTime = moment(this.ReportGenerateTime).format('yyyy/MM/DD hh:mm a')\n this.topBlockReport = res.topBlock;\n console.log(this.topBlockReport);\n this.liveVaccData = res.vaccinationDoneByTime;\n this.vaccinatedAefiPer = res.aefiPercentage;\n this.lineChartDataNew = res.vaccinationDoneByTime;\n this.vaccinationAgeDataToday = res.vaccinationDoneByTimeAgeWise;\n this.vaccinationByAgeChartData = res.vaccinationByAge;\n this.registartionChartData = res.timeWiseTodayRegReport;\n this.vaccinationAEFIChartData = res.last30DaysAefi;\n // this.getVaccinationByStateUTData = _.orderBy(res.getBeneficiariesGroupBy, 'total',\n // 'desc');\n this.getVaccinationByStateUTData = res.getBeneficiariesGroupBy;\n\n this.DownlloadVaccinationDoneByTime = res.vaccinationDoneByTime;\n this.DownlloadVaccinationDoneByTimeAgeWise = res.vaccinationDoneByTimeAgeWise;\n this.DownlloadImeWiseTodayRegReport = res.timeWiseTodayRegReport;\n this.DownlloadLast30DaysAefi = res.last30DaysAefi;\n this.DownlloadVaccinationByAge = res.vaccinationByAge;\n this.getBeneficiariesGroupBy = _.orderBy(res.getBeneficiariesGroupBy, 'total',\n 'desc');\n\n\n // this.isday = true;\n // this.ismonth = false;\n // this.isweek = false;\n // this.isdayVaccAge = true;\n // this.isweekVaccAge = false;\n // this.ismonthVaccAge = false\n if (this.isday == true) {\n this.prepareDataForVaccByDosesToday()\n }\n\n // this.loadVaccinationByAgeChart();\n // this.prepareDataForDoughnutChartGender();\n // this.prepareDataForDoughnutChartVaccType();\n this.prepareDataForDoughnutChartVaccTypeNew();\n this.prepareDataForPieChartGenderNew();\n this.loadVaccinationByAgeChartnew();\n if (res.timeWiseTodayRegReport) {\n this.prepareDataForRegChart();\n }\n\n this.isdayReg = true;\n this.loadVaccinationAEFIChart();\n this.semesters = _.map(this.getVaccinationByStateUTData, 'state_id');\n setTimeout(() => {\n // this.prepareDataForDoughnutChartForTable();\n\n }, 1)\n if(this.state_id == '' && district_id == '' ){\n this.Heatmap.getStatename(\"\");\n }\n\n if (this.state_id === '' && this.district_id === '') {\n // this.tableheader = \" State/UT\";\n // this.ChartHeading = \"Top States by Capacity Utilization\"\n this.downloadExcelHeader = \"StateWiseVaccination\"\n this.downloadExcelHeaderForCoverage = \"StateWiseVaccinationCoverage\"\n } else if (this.state_id != '' && this.district_id == '') {\n // this.tableheader = \" Districts\";\n // this.ChartHeading = \"Top Districts by Capacity Utilization\"\n this.downloadExcelHeader = \"DistrictWiseVaccination\"\n this.downloadExcelHeaderForCoverage = \"DistrictWiseVaccinationCoverage\"\n } else if (this.state_id != '' && this.district_id != '') {\n // this.tableheader = \" Centers\";\n // this.ChartHeading = \"Top Centers by Capacity Utilization\"\n this.downloadExcelHeader = \"CenterWiseVaccination\"\n this.downloadExcelHeaderForCoverage = \"CenterWiseVaccinationCoverage\"\n } else {\n // this.tableheader = \" State/UT\";\n // this.ChartHeading = \"Top States by Capacity Utilization\"\n this.downloadExcelHeader = \"StateWiseVaccination\"\n this.downloadExcelHeaderForCoverage = \"StateWiseVaccinationCoverage\"\n }\n\n\n })\n }\n\n getVacChartData(value = \"\") {\n this.publicReportService.getVacPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n if (res) {\n this.last30DaysVaccinationData = res.last30DaysVaccination;\n this.weeklyReportData = res.weeklyReport;\n this.vaccinationAgeDataMonth = res.last30DaysAgeWiseVaccination;\n\n this.Downloadlast30DaysVaccination = res.last30DaysVaccination;\n this.DownloadweeklyReport = res.weeklyReport;\n this.Downloadlast30DaysAgeWiseVaccination = res.last30DaysAgeWiseVaccination;\n this.DownloadweeklyVacAgeWiseReport = res.weeklyVacAgeWiseReport;\n this.DownloadRegReportData = res.regReportData;\n this.DownloadRegWeekReportData = res.regWeekReportData;\n\n if (this.last30DaysVaccinationData.length) {\n this.prepareDataForVaccByDosesMonth();\n }\n this.vaccinationByCategoryData = [];\n this.secondHalf = [];\n this.vaccinationByCategoryData = res.last30DaysVaccination;\n\n if (this.vaccinationByCategoryData.length) {\n const half = Math.ceil(this.vaccinationByCategoryData.length / 2);\n this.secondHalf = this.vaccinationByCategoryData.slice(-half);\n this.vaccinationByCategoryData = this.secondHalf;\n this.prepareDataForVaccinationByCategory();\n }\n if (value == \"Last 30 Days\") {\n this.isByDoses = true;\n this.isday = false;\n this.ismonth = true;\n this.isweek = false;\n }\n if (value == \"All\") {\n if (this.weeklyReportData.length) {\n this.prepareDataForVaccByDosesAll();\n }\n this.isday = false;\n this.ismonth = false;\n this.isweek = true;\n this.isdayVaccAge = false;\n this.isweekVaccAge = false;\n this.ismonthVaccAge = false\n }\n }\n });\n\n }\n\n getVaccChartAgewiseDataMonth(value = \"\") {\n\n this.publicReportService.getVacPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n if (res) {\n this.vaccinationAgeDataMonth = res.last30DaysAgeWiseVaccination;\n // console.log(\"this.vaccinationAgeTodayData\", this.vaccinationAgeDataMonth)\n if (this.vaccinationAgeDataMonth.length) {\n this.prepareDataForVaccAgewiseLast30Days();\n }\n\n if (value == \"Last 30 Days\") {\n this.isByAge = true;\n this.isByDoses = false;\n this.isdayVaccAge = false;\n this.ismonthVaccAge = true;\n this.isweekVaccAge = false;\n this.isday = false;\n this.ismonth = false;\n this.isweek = false;\n }\n }\n });\n }\n\n getVaccChartAgewiseDataAll(value = \"\") {\n\n this.publicReportService.getVacPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n if (res) {\n this.vaccinationAgeDataAll = res.weeklyVacAgeWiseReport;\n // console.log(\"this.vaccinationAgeDataAll\", this.vaccinationAgeDataAll)\n if (this.vaccinationAgeDataAll.length) {\n this.prepareDataForVaccAgewiseAll();\n }\n\n if (value == \"All\") {\n this.isByAge = true;\n this.isByDoses = false;\n this.isdayVaccAge = false;\n this.ismonthVaccAge = false;\n this.isweekVaccAge = true;\n this.isday = false;\n this.ismonth = false;\n this.isweek = false;\n\n }\n }\n });\n }\n getVaccChartAgewiseDataToday(value = \"\") {\n\n this.publicReportService.getPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n if (res) {\n this.vaccinationAgeDataToday = res.vaccinationDoneByTimeAgeWise;\n\n if (this.vaccinationAgeDataToday.length) {\n this.prepareDataForVaccAgewiseToday();\n }\n\n if (value == \"Today\") {\n this.isByAge = true;\n this.isByDoses = false;\n this.isdayVaccAge = true;\n this.ismonthVaccAge = false;\n this.isweekVaccAge = false;\n this.isday = false;\n this.ismonth = false;\n this.isweek = false;\n\n }\n }\n });\n }\n\n delay(time) {\n return new Promise((resolve) => {\n\n setTimeout(() => {\n\n resolve(true)\n\n }, time);\n\n })\n\n }\n getVaccByTab(tabName = '') {\n\n if (tabName == 'By Doses') {\n this.isByAge = false;\n this.isByDoses = true;\n this.isday = true;\n this.ismonth = false;\n this.isweek = false;\n this.isdayVaccAge = false;\n this.ismonthVaccAge = false;\n this.isweekVaccAge = false;\n }\n else if (tabName == 'Today') {\n this.isByAge = false;\n this.isByDoses = true;\n this.isday = true;\n this.ismonth = false;\n this.isweek = false;\n this.isdayVaccAge = false;\n this.ismonthVaccAge = false;\n this.isweekVaccAge = false;\n }\n else if (tabName == \"By Age\") {\n this.isByAge = true;\n this.isByDoses = false;\n this.isday = false;\n this.ismonth = false;\n this.isweek = false;\n this.isdayVaccAge = true;\n this.ismonthVaccAge = false;\n this.isweekVaccAge = false;\n this.prepareDataForVaccAgewiseToday();\n\n\n }\n else if (tabName == 'isdayReg') {\n this.isByAge = false;\n this.isByDoses = true;\n this.isdayVacc = false;\n this.ismonthVacc = false;\n this.isweekVacc = false;\n this.isday = true;\n this.ismonth = false;\n this.isweek = false;\n this.isdayReg = true;\n this.ismonthReg = false;\n this.isweekReg = false;\n }\n\n\n\n }\n\n async prepareDataForVaccByDosesToday() {\n await this.delay(300);\n let draw = Chart.controllers.line.prototype.draw;\n\n Chart.controllers.line = Chart.controllers.line.extend({\n draw: function() {\n let ctx = this.chart.chart.ctx;\n ctx.save();\n ctx.shadowColor = 'rgb(32 33 36 / 25%)';\n ctx.shadowBlur = 10;\n ctx.shadowOffsetX = 0;\n ctx.shadowOffsetY = 4;\n ctx.stroke();\n draw.apply(this, arguments);\n ctx.restore();\n }\n });\n\n if (this.realTimeChart) {\n this.realTimeChart.destroy();\n }\n const ctx = $('#realtime');\n // var originalStroke = ctx.stroke;\n // ctx.stroke = function () {\n // ctx.save();\n // ctx.shadowColor = '#F54394';\n // ctx.shadowBlur = 10;\n // ctx.shadowOffsetX = 8;\n // ctx.shadowOffsetY = 8;\n // originalStroke.apply(this, arguments)\n // ctx.restore();\n // }\n\n if (this.lineChartDataNew) {\n this.lineChartDataNew = this.lineChartDataNew.sort((a, b) => (a.timestamps > b.timestamps) ? 1 : -1)\n }\n const labels = _.map(this.lineChartDataNew, (data) => {\n return moment(data.timestamps, \"YYYY-MM-DDTHH:mm:ssZ\").subtract(330, \"minutes\").format('HH:mm');\n });\n //console.log(\"lable\",labels )\n const data1 = _.map(this.lineChartDataNew, 'count');\n const data2 = _.map(this.lineChartDataNew, 'dose_one');\n const data3 = _.map(this.lineChartDataNew, 'dose_two');\n const data4 = _.map(this.lineChartDataNew, 'dose_pd');\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Total_Doses'),\n backgroundColor: 'rgb(245, 67, 148, 0.1)',\n borderColor: 'rgb(245, 67, 148)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(245, 67, 148)',\n pointBorderWidth: 1,\n\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data1,\n shadowColor : '#F54394'\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Dose_One'),\n backgroundColor: 'rgb(255, 152 , 0, 0.1)',\n borderColor: '#ff9800',\n borderWidth: 2,\n pointBackgroundColor: '#ff9800',\n pointBorderWidth: 1,\n\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data2,\n shadowColor : '#F54394'\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Dose_Two'),\n backgroundColor: 'rgb(84, 57, 252, 0.05)',\n borderColor: '#21cc98',\n borderWidth: 2,\n pointBackgroundColor: '#21cc98',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data3,\n },\n {\n type: 'line',\n label: 'Precaution Dose',\n backgroundColor: 'rgb(33, 204, 152, 0.05)', // 84, 57, 252\n borderColor: '#12ad06',\n borderWidth: 2,\n pointBackgroundColor: '#12ad06',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data4,\n }\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.realTimeChart = new Chart(ctx, vaccConfig);\n this.realTimeChart.update();\n }\n\n async prepareDataForVaccByDosesMonth() {\n\n await this.delay(300);\n if (this.realTimeChartlast30days) {\n this.realTimeChartlast30days.destroy();\n }\n\n\n const ctx = $('#realtimemonth');\n\n if (this.last30DaysVaccinationData) {\n this.last30DaysVaccinationData = this.last30DaysVaccinationData.sort((a, b) => (a.vaccine_date > b.vaccine_date) ? 1 : -1)\n }\n\n const labels = this.last30DaysVaccinationData.map(obj => moment(obj.vaccine_date, \"YYYY-MM-DD\").format('DD MMM'));\n\n const data1 = _.map(this.last30DaysVaccinationData, 'total');\n const data2 = _.map(this.last30DaysVaccinationData, 'dose_1');\n const data3 = _.map(this.last30DaysVaccinationData, 'dose_2');\n const data4 = _.map(this.last30DaysVaccinationData, 'dose_pd');\n const format = this.numberFormatPipe;\n var vaccConfigmonth = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Total_Doses'),\n backgroundColor: 'rgb(245, 67, 148, 0.1)',\n borderColor: 'rgb(245, 67, 148)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(245, 67, 148)',\n pointBorderWidth: 1,\n\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data1,\n shadowColor : '#F54394'\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Dose_One'),\n backgroundColor: 'rgb(255, 152 , 0, 0.1)',\n borderColor: '#ff9800',\n borderWidth: 2,\n pointBackgroundColor: '#ff9800',\n pointBorderWidth: 1,\n\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data2,\n shadowColor : '#F54394'\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Dose_Two'),\n backgroundColor: 'rgb(84, 57, 252, 0.05)',\n borderColor: '#21cc98',\n borderWidth: 2,\n pointBackgroundColor: '#21cc98',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data3,\n },\n {\n type: 'line',\n label: 'Precaution Dose',\n backgroundColor: 'rgb(33, 204, 152, 0.05)', // 84, 57, 252\n borderColor: '#12ad06',\n borderWidth: 2,\n pointBackgroundColor: '#12ad06',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data4,\n }\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n }\n\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.realTimeChartlast30days = new Chart(ctx, vaccConfigmonth);\n this.realTimeChartlast30days.update();\n\n }\n\n async prepareDataForVaccByDosesAll() {\n\n await this.delay(300);\n if (this.realTimeChartweek) {\n this.realTimeChartweek.destroy();\n }\n\n\n const ctx = $('#realtimeweek');\n\n\n // console.log(\"this.lineChartDataweek\", this.weeklyReportData)\n const labels = this.weeklyReportData.map(obj => obj.label);\n\n\n // console.log(\"lable\", labels)\n\n const data1 = _.map(this.weeklyReportData, 'total');\n const data2 = _.map(this.weeklyReportData, 'dose1');\n const data3 = _.map(this.weeklyReportData, 'dose2');\n const data4 = _.map(this.weeklyReportData, 'dose_pd');\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Total_Doses'),\n backgroundColor: 'rgb(245, 67, 148, 0.1)',\n borderColor: 'rgb(245, 67, 148)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(245, 67, 148)',\n pointBorderWidth: 1,\n\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data1,\n shadowColor : '#F54394'\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Dose_One'),\n backgroundColor: 'rgb(255, 152 , 0, 0.1)',\n borderColor: '#ff9800',\n borderWidth: 2,\n pointBackgroundColor: '#ff9800',\n pointBorderWidth: 1,\n\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data2,\n shadowColor : '#F54394'\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Dose_Two'),\n backgroundColor: 'rgb(84, 57, 252, 0.05)',\n borderColor: '#21cc98',\n borderWidth: 2,\n pointBackgroundColor: '#21cc98',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data3,\n },\n {\n type: 'line',\n label: 'Precaution Dose',\n backgroundColor: 'rgb(33, 204, 152, 0.05)', // 84, 57, 252\n borderColor: '#12ad06',\n borderWidth: 2,\n pointBackgroundColor: '#12ad06',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data4,\n }\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.realTimeChartweek = new Chart(ctx, vaccConfig);\n this.realTimeChartweek.update();\n\n }\n\n getDistrictList() {\n\n this.publicReportService.getDistricts().subscribe((dist) => {\n this.states = this.states.map(res => {\n this.collapseId = res.state_id;\n // console.log(\"cccc\", this.collapseId);\n // this.districtListnew = res\n // this.districtListfromstate = this.districtListnew.filter(e => e.state_id == this.collapseId );\n res['districtList'] = dist.filter(d => d.state_id == res.state_id);\n return res;\n })\n });\n\n\n\n }\n\n iconChange(item){\n this.iconClass = this.iconClass === item ? !this.iconClass : item;\n // this.loadDataByStateTab();\n }\n closeFilter() {\n // $('#myDropdown').css('top', 4 * ($(window).scrollTop() / 5));\n\n\n this.hideShowFilter = !this.hideShowFilter;\n this.FilterIcon = !this.FilterIcon;\n if(this.hideShowExport){\n this.hideShowExport = false;\n }\n if(this.exportIcon){\n this.exportIcon = false;\n }\n }\n exportDashboard(){\n this.hideShowExport = !this.hideShowExport;\n this.exportIcon = !this.exportIcon;\n if(this.hideShowFilter){\n this.hideShowFilter = false;\n }\n if(this.FilterIcon){\n this.FilterIcon = false;\n }\n }\n\n ExportDashboardDataInJson(){\n let key = \"\";\n if(this.state_id !=\"\" && !this.district_id){\n key = \"districtWiseVaccination\";\n }\n else if(this.state_id !=\"\" && this.district_id != \"\"){\n key = \"centerWiseVaccination\";\n }\n else if(!this.district_id && !this.state_id){\n key = \"stateWiseVaccination\";\n }\n\n let jsonDashboardData: object = {\n \"vaccinationDoneByTimeToday\": this.DownlloadVaccinationDoneByTime,\n \"last30DaysVaccination\": this.Downloadlast30DaysVaccination,\n \"weeklyVaccination\": this.DownloadweeklyReport,\n \"vaccinationDoneByTimeAgeWiseToday\": this.DownlloadVaccinationDoneByTimeAgeWise,\n \"last30DaysAgeWiseVaccination\": this.Downloadlast30DaysAgeWiseVaccination,\n \"weeklyAgeWiseVaccination\": this.DownloadweeklyVacAgeWiseReport,\n \"registrationDoneByTimeToday\": this.DownlloadImeWiseTodayRegReport,\n \"last30DaysRegistration\": this.DownloadRegReportData,\n \"weeklyRegistration\": this.DownloadRegWeekReportData,\n \"last30DaysAefiReported\": this.DownlloadLast30DaysAefi,\n \"vaccinationByAge\": this.DownlloadVaccinationByAge\n };\n jsonDashboardData[key] = this.getBeneficiariesGroupBy;\n // jsonDashboardData[\"stateWiseVaccination\"] = this.getBeneficiariesGroupBy;\n const blob = new Blob([JSON.stringify(jsonDashboardData)], {type : 'application/json'});\n saveAs(blob, 'dashboard_export.json');\n }\n ExportDashboardDataInExcel(){\n\n const header = ['label', 'dose_one', 'dose_two','Precaution Dose','count'];\n /**************DownloadVaccinationByDoses Today**************/\n const exportdataByDoseToday = [];\n if (this.DownlloadVaccinationDoneByTime) {\n this.DownlloadVaccinationDoneByTime.forEach(element => {\n exportdataByDoseToday.push([element.label,element.dose_one,element.dose_two,element.dose_pd,element.count])\n\n });\n }\n const workbook = new Excel.Workbook();\n const worksheet1 = workbook.addWorksheet('VaccinationDoneByTimeToday');\n const headerRow = worksheet1.addRow(header);\n headerRow.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n });\n headerRow.alignment = { vertical: 'middle', horizontal: 'center' };\n\n\n exportdataByDoseToday.forEach(d => {\n const row = worksheet1.addRow(d);\n});\nworksheet1.getColumn(1).width = 20;\nworksheet1.getColumn(2).width = 20;\nworksheet1.getColumn(3).width = 20;\nworksheet1.getColumn(4).width = 20;\nworksheet1.getColumn(5).width = 20;\nworksheet1.addRow([]);\n\n /**************DownloadVaccinationByDoses 30 Days**************/\n const header001 = ['vaccine_date', 'dose_1', 'dose_2','Precaution Dose','total'];\n const exportdataByDose30Days = [];\n if (this.Downloadlast30DaysVaccination) {\n this.Downloadlast30DaysVaccination.forEach(element => {\n exportdataByDose30Days.push([element.vaccine_date,element.dose_1,element.dose_2,element.dose_pd,element.total])\n\n });\n }\n const worksheet2 = workbook.addWorksheet('Last30DaysVaccination');\n const headerRow2 = worksheet2.addRow(header001);\n headerRow2.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n });\n headerRow2.alignment = { vertical: 'middle', horizontal: 'center' };\n exportdataByDose30Days.forEach(d => {\n const row = worksheet2.addRow(d);\n});\nworksheet2.getColumn(1).width = 20;\nworksheet2.getColumn(2).width = 20;\nworksheet2.getColumn(3).width = 20;\nworksheet2.getColumn(4).width = 20;\nworksheet2.getColumn(5).width = 20;\nworksheet2.addRow([]);\n\n /**************DownloadVaccinationByDoses ALL**************/\n const header002 = ['label', 'dose1', 'dose2','Precaution Dose','total'];\n\n const exportdataByDoseAll = [];\n if (this.DownloadweeklyReport) {\n this.DownloadweeklyReport.forEach(element => {\n exportdataByDoseAll.push([element.label,element.dose1,element.dose2,element.dose_pd,element.total])\n\n });\n }\n const worksheet3 = workbook.addWorksheet('WeeklyVaccination');\n const headerRow3 = worksheet3.addRow(header002);\n headerRow3.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n });\n headerRow3.alignment = { vertical: 'middle', horizontal: 'center' };\n exportdataByDoseAll.forEach(d => {\n const row = worksheet3.addRow(d);\n});\nworksheet3.getColumn(1).width = 20;\nworksheet3.getColumn(2).width = 20;\nworksheet3.getColumn(3).width = 20;\nworksheet3.getColumn(4).width = 20;\nworksheet3.getColumn(5).width = 20;\nworksheet3.addRow([]);\n\n/**************exportdataByAgeToday**************/\nconst header1 = ['label','vac_12_14','vac_15_17', 'vac_18_45', 'vac_45_60','vac_60_above', 'total'];\n\nconst exportdataByAgeToday = [];\nif (this.DownlloadVaccinationDoneByTimeAgeWise) {\n this.DownlloadVaccinationDoneByTimeAgeWise.forEach(element => {\n exportdataByAgeToday.push([element.label,element.vac_12_14,element.vac_15_17,element.vac_18_45,element.vac_45_60,element.vac_60_above,element.total])\n\n });\n}\n//const worksheet4 = workbook.addWorksheet('Today Vaccination-Agewise');\nconst worksheet4 = workbook.addWorksheet('VaccinationByTimeAgeWiseToday');\n\nconst header1Row = worksheet4.addRow(header1);\nheader1Row.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nheader1Row.alignment = { vertical: 'middle', horizontal: 'center' };\n\n\nexportdataByAgeToday.forEach(d => {\nconst row = worksheet4.addRow(d);\n});\nworksheet4.getColumn(1).width = 20;\nworksheet4.getColumn(2).width = 20;\nworksheet4.getColumn(3).width = 20;\nworksheet4.getColumn(4).width = 20;\nworksheet4.getColumn(5).width = 20;\nworksheet4.getColumn(6).width = 20;\nworksheet4.getColumn(7).width = 20;\nworksheet4.addRow([]);\n\n/**************exportdataByAge30Days**************/\nconst header1001 = ['vaccine_date','vac_12_14','vac_15_17', 'vac_18_45', 'vac_45_60','vac_60_above', 'total'];\n\nconst exportdataByAge30Days = [];\nif (this.Downloadlast30DaysAgeWiseVaccination) {\n this.Downloadlast30DaysAgeWiseVaccination.forEach(element => {\n exportdataByAge30Days.push([element.vaccine_date,element.vac_12_14,element.vac_15_17,element.vac_18_45,element.vac_45_60,element.vac_60_above,element.total])\n\n });\n}\nconst worksheet5 = workbook.addWorksheet('Last30DaysAgeWiseVaccination');\nconst header1Row2 = worksheet5.addRow(header1001);\nheader1Row2.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nheader1Row2.alignment = { vertical: 'middle', horizontal: 'center' };\nexportdataByAge30Days.forEach(d => {\nconst row = worksheet5.addRow(d);\n});\nworksheet5.getColumn(1).width = 20;\nworksheet5.getColumn(2).width = 20;\nworksheet5.getColumn(3).width = 20;\nworksheet5.getColumn(4).width = 20;\nworksheet5.getColumn(5).width = 20;\nworksheet5.getColumn(4).width = 20;\nworksheet5.getColumn(4).width = 20;\nworksheet5.addRow([]);\n\n/**************exportdataByAgeAll**************/\nconst header1002 = ['label','vac_12_14','vac_15_17', 'vac_18_45', 'vac_45_60','vac_60_above', 'total'];\n\nconst exportdataByAgeAll = [];\nif (this.DownloadweeklyVacAgeWiseReport) {\n this.DownloadweeklyVacAgeWiseReport.forEach(element => {\n exportdataByAgeAll.push([element.label,element.vac_12_14,element.vac_15_17,element.vac_18_45,element.vac_45_60,element.vac_60_above,element.total])\n\n });\n}\nconst worksheet6 = workbook.addWorksheet('weeklyAgeWiseVaccination');\nconst header1Row3 = worksheet6.addRow(header1002);\nheader1Row3.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nheader1Row3.alignment = { vertical: 'middle', horizontal: 'center' };\nexportdataByAgeAll.forEach(d => {\nconst row = worksheet6.addRow(d);\n});\nworksheet6.getColumn(1).width = 20;\nworksheet6.getColumn(2).width = 20;\nworksheet6.getColumn(3).width = 20;\nworksheet6.getColumn(4).width = 20;\nworksheet6.getColumn(5).width = 20;\nworksheet1.getColumn(6).width = 20;\nworksheet1.getColumn(7).width = 20;\nworksheet6.addRow([]);\n\n/**************exportdataRegistrationTrendsToday**************/\nconst header02 = ['label','age12','age15', 'age18', 'age45','age60', 'total'];\n const exportdataRegistrationTrendsToday = [];\n if (this.DownlloadImeWiseTodayRegReport) {\n this.DownlloadImeWiseTodayRegReport.forEach(element => {\n exportdataRegistrationTrendsToday.push([element.label,element.age12,element.age15,element.age18,element.age45,element.age60,element.total])\n\n });\n }\n const worksheet07 = workbook.addWorksheet('registrationDoneByTimeToday');\n const header02Row = worksheet07.addRow(header02);\n header02Row.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n });\n header02Row.alignment = { vertical: 'middle', horizontal: 'center' };\n exportdataRegistrationTrendsToday.forEach(d => {\n const row = worksheet07.addRow(d);\n});\nworksheet07.getColumn(1).width = 20;\nworksheet07.getColumn(2).width = 20;\nworksheet07.getColumn(3).width = 20;\nworksheet07.getColumn(4).width = 20;\nworksheet07.getColumn(5).width = 20;\nworksheet07.getColumn(6).width = 20;\nworksheet07.getColumn(7).width = 20;\nworksheet07.addRow([]);\n\n/**************exportdataRegistrationTrends30Days**************/\nconst header02001 = ['reg_date','age12','age15', 'age18', 'age45','age60', 'total'];\n\nconst exportdataRegistrationTrends30Days = [];\n\nif (this.DownloadRegReportData) {\n this.DownloadRegReportData.forEach(element => {\n const reg_date = moment(element.reg_date, \"YYYY-MM-DD\").format('DD MMM');\n exportdataRegistrationTrends30Days.push([reg_date,element.age12,element.age15,element.age18,element.age45,element.age60,element.total])\n\n });\n}\nconst worksheet8 = workbook.addWorksheet('last30DaysRegistration');\nconst header2Row2 = worksheet8.addRow(header02001);\nheader2Row2.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nheader2Row2.alignment = { vertical: 'middle', horizontal: 'center' };\nexportdataRegistrationTrends30Days.forEach(d => {\nconst row = worksheet8.addRow(d);\n});\nworksheet8.getColumn(1).width = 20;\nworksheet8.getColumn(2).width = 20;\nworksheet8.getColumn(3).width = 20;\nworksheet8.getColumn(4).width = 20;\nworksheet8.getColumn(5).width = 20;\nworksheet8.getColumn(6).width = 20;\nworksheet8.getColumn(7).width = 20;\nworksheet8.addRow([]);\n\n/**************exportdataRegistrationTrendsAll**************/\nconst header02002 = ['label', 'age12','age15','age18', 'age45','age60', 'total'];\n\nconst exportdataRegistrationTrendsAll = [];\nif (this.DownloadRegWeekReportData) {\n this.DownloadRegWeekReportData.forEach(element => {\n exportdataRegistrationTrendsAll.push([element.label,element.age12,element.age15,element.age18,element.age45,element.age60,element.total])\n\n });\n}\nconst worksheet9 = workbook.addWorksheet('weeklyRegistration');\nconst header2Row3 = worksheet9.addRow(header02002);\nheader2Row3.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nheader2Row3.alignment = { vertical: 'middle', horizontal: 'center' };\nexportdataRegistrationTrendsAll.forEach(d => {\nconst row = worksheet9.addRow(d);\n});\nworksheet9.getColumn(1).width = 20;\nworksheet9.getColumn(2).width = 20;\nworksheet9.getColumn(3).width = 20;\nworksheet9.getColumn(4).width = 20;\nworksheet9.getColumn(5).width = 20;\nworksheet9.getColumn(6).width = 20;\nworksheet9.getColumn(7).width = 20;\nworksheet9.addRow([]);\n\n/**************vaccinationAEFIChartData**************/\nconst header3 = ['vaccine_date', 'aefi'];\nconst AEFIChartExportData = [];\nif (this.DownlloadLast30DaysAefi) {\n this.DownlloadLast30DaysAefi.forEach(element => {\n AEFIChartExportData.push([element.vaccine_date,element.aefi])\n\n });\n}\nconst worksheet10 = workbook.addWorksheet('last30DaysAefiReported');\nconst header3Row = worksheet10.addRow(header3);\nheader3Row.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\n\nAEFIChartExportData.forEach(d => {\nconst row = worksheet10.addRow(d);\n});\nworksheet10.getColumn(1).width = 20;\nworksheet10.getColumn(2).width = 20;\nworksheet10.addRow([]);\nheader3Row.alignment = { vertical: 'middle', horizontal: 'center' };\n\n/**************vaccinationByAge**************/\n\nconst header4 = ['vac_12_14','vac_15_17','vac_18_45','vac_45_60', 'above_60'];\nconst vaccinationByAgeexportdata = [];\nthis.vaccinationByAgefinalResult.push(this.DownlloadVaccinationByAge);\n\nif (this.vaccinationByAgefinalResult) {\n this.vaccinationByAgefinalResult.forEach(element => {\n vaccinationByAgeexportdata.push([element.vac_12_14,element.vac_15_17,element.vac_18_45,element.vac_45_60,element.above_60])\n\n });\n}\nconst workbook11 = workbook.addWorksheet('vaccinationByAge');\nconst header4Row = workbook11.addRow(header4);\nheader4Row.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nvaccinationByAgeexportdata.forEach(d => {\nconst row = workbook11.addRow(d);\n});\nworkbook11.getColumn(1).width = 20;\nworkbook11.getColumn(2).width = 20;\nworkbook11.getColumn(3).width = 20;\nworkbook11.getColumn(4).width = 20;\nworkbook11.getColumn(5).width = 20;\nworkbook11.addRow([]);\nheader4Row.alignment = { vertical: 'middle', horizontal: 'center' };\n\n/**************stateWiseVaccination**************/\nconst header5 = ['title', 'today','partial_vaccinated', 'totally_vaccinated','Precaution Dose','total'];\nconst stateWiseVaccinationData = [];\nif (this.getBeneficiariesGroupBy) {\n this.getBeneficiariesGroupBy.forEach(element => {\n stateWiseVaccinationData.push([element.title,element.today,element.partial_vaccinated,element.totally_vaccinated,element.precaution_dose,element.total])\n\n });\n}\nconst worksheet12 = workbook.addWorksheet(this.downloadExcelHeader);\nconst header5Row = worksheet12.addRow(header5);\nheader5Row.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nstateWiseVaccinationData.forEach(d => {\nconst row = worksheet12.addRow(d);\n});\nworksheet12.getColumn(1).width = 20;\nworksheet12.getColumn(2).width = 20;\nworksheet12.getColumn(3).width = 20;\nworksheet12.getColumn(4).width = 20;\nworksheet12.getColumn(5).width = 20;\nworksheet12.getColumn(6).width = 20;\nworksheet12.addRow([]);\nheader5Row.alignment = { vertical: 'middle', horizontal: 'center' };\n\n/**************vaccinationByCategoryRuralUrbanData**************/\n\nconst header7 = ['vaccine_date', 'rural','urban'];\nconst RuralUrbanExportdata = [];\nif (this.vaccinationByCategoryData) {\n this.vaccinationByCategoryData.forEach(element => {\n RuralUrbanExportdata.push([element.vaccine_date,element.rural,element.urban])\n\n });\n}\nconst worksheet14 = workbook.addWorksheet('VaccinationByCategory');\nconst header7Row = worksheet14.addRow(header7);\nheader7Row.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nRuralUrbanExportdata.forEach(d => {\nconst row = worksheet14.addRow(d);\n});\nworksheet14.getColumn(1).width = 25;\nworksheet14.getColumn(2).width = 20;\nworksheet14.getColumn(3).width = 20;\nworksheet14.addRow([]);\nheader7Row.alignment = { vertical: 'middle', horizontal: 'center' };\n\nthis.tableheader\nlet filename = `dashboard_export.xlsx`;\n workbook.xlsx.writeBuffer().then((data: any) => {\n const blob = new Blob([data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\n fs.saveAs(blob, filename);\n\n });\n\n }\n\n getRegChartDataMonth(value = \"\") {\n this.publicReportService.getVacPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n if (res) {\n this.registartionChartDataMonth = res.regReportData;\n console.log(this.registartionChartDataMonth);\n if (this.registartionChartDataMonth.length) {\n this.prepareDataForRegChartMonth();\n }\n\n if (value == \"Last 30 Days\") {\n this.isdayReg = false;\n this.ismonthReg = true;\n this.isweekReg = false;\n\n }\n\n }\n });\n }\n\n async prepareDataForRegChartMonth() {\n\n await this.delay(300);\n if (this.registartionChartMonth) {\n this.registartionChartMonth.destroy();\n }\n const ctx = $('#realtimeregchartmonth');\n const labels = this.registartionChartDataMonth.map(obj => moment(obj.reg_date, \"YYYY-MM-DD\").format('DD MMM'));\n const data1 = _.map(this.registartionChartDataMonth, 'total');\n const data5 = _.map(this.registartionChartDataMonth, 'age15');\n const data2 = _.map(this.registartionChartDataMonth, 'age18');\n const data3 = _.map(this.registartionChartDataMonth, 'age45');\n const data4 = _.map(this.registartionChartDataMonth, 'age60');\n const data6 = _.map(this.registartionChartDataMonth, 'age12');\n const format = this.numberFormatPipe;\n var regConfig = {\n type: 'line',\n data: {\n labels: labels,\n\n datasets: [\n {\n label: this.translate.instant('DASHBOARD.Total'),\n backgroundColor: 'rgb(33, 204, 152, 0.1)',\n borderColor: 'rgb(33, 204, 152)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(33, 204, 152)',\n pointBorderWidth: 1,\n strokeColor: \"rgba(54, 162, 235, 0.2)\",\n pointRadius: 3,\n fill: '+1', //'+1'\n lineTension: 0,\n data: data1,\n },\n {\n type: 'line',\n label: '12-14',\n backgroundColor: 'rgb(178, 76, 194, 0.1)',\n borderColor: 'rgb(178, 76, 194)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(178, 76, 194)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data6,\n },\n {\n type: 'line',\n label: '15-17',\n backgroundColor: 'rgb(0, 179, 255, 0.05)', //255, 152, 0\n borderColor: 'rgb(0, 179, 255)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(0, 179, 255)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data5,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.18-44'),\n backgroundColor: 'rgb(255, 152 , 0, 0.1)',\n borderColor: 'rgb(255, 152 , 0)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(255, 152 , 0)',\n pointBorderWidth: 1,\n\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data2,\n shadowColor : '#F54394'\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.45-60'),\n backgroundColor: 'rgb(84, 57, 252,0.1)',\n borderColor: 'rgb(84, 57, 252)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(84, 57, 252)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data3,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Above_60'),\n backgroundColor: 'rgb(245, 67, 148, 0.2)',\n borderColor: 'rgb(245, 67, 148)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(245, 67, 148)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n lineTension: 0,\n fill: true,\n data: data4,\n }\n\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n // padding: 15,\n // fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.registartionChartMonth = new Chart(ctx, regConfig);\n this.registartionChartMonth.update();\n\n }\n\n getRegChartDataAll(value = \"\") {\n this.publicReportService.getVacPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n if (res) {\n this.registartionChartDataAll = res.regWeekReportData;\n\n // console.log(\"reg report Month\", this.registartionChartDataAll);\n\n if (this.registartionChartDataAll.length) {\n this.prepareDataForRegChartAll();\n }\n\n if (value == \"All\") {\n this.isdayReg = false;\n this.ismonthReg = false;\n this.isweekReg = true;\n\n }\n\n }\n });\n }\n\n async prepareDataForRegChartAll() {\n\n await this.delay(300);\n if (this.registartionChartAll) {\n this.registartionChartAll.destroy();\n }\n\n const ctx = $('#realtimeregweek');\n\n const labels = this.registartionChartDataAll.map(obj => obj.label);\n\n const data1 = _.map(this.registartionChartDataAll, 'total');\n const data5 = _.map(this.registartionChartDataAll, 'age15');\n const data2 = _.map(this.registartionChartDataAll, 'age18');\n const data3 = _.map(this.registartionChartDataAll, 'age45');\n const data4 = _.map(this.registartionChartDataAll, 'age60');\n const data6 = _.map(this.registartionChartDataAll, 'age12');\n const format = this.numberFormatPipe;\n var regConfig = {\n type: 'line',\n data: {\n labels: labels,\n\n datasets: [\n {\n label: this.translate.instant('DASHBOARD.Total'),\n backgroundColor: 'rgb(33, 204, 152, 0.1)',\n borderColor: 'rgb(33, 204, 152)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(33, 204, 152)',\n pointBorderWidth: 1,\n strokeColor: \"rgba(54, 162, 235, 0.2)\",\n pointRadius: 3,\n fill: '+1',\n lineTension: 0,\n data: data1,\n },\n {\n type: 'line',\n label: '12-14',\n backgroundColor: 'rgb(178, 76, 194, 0.1)',\n borderColor: 'rgb(178, 76, 194)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(178, 76, 194)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data6,\n },\n {\n type: 'line',\n label: '15-17',\n backgroundColor: 'rgb(0, 179, 255, 0.05)', // 255, 152, 0\n borderColor: 'rgb(0, 179, 255)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(0, 179, 255)',\n pointBorderWidth: 1,\n pointRadius: 3,\n lineTension: 0,\n fill: '2',\n data: data5,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.18-44'),\n backgroundColor: 'rgb(255, 152 , 0, 0.1)',\n borderColor: 'rgb(255, 152 , 0)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(255, 152 , 0)',\n pointBorderWidth: 1,\n\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data2,\n shadowColor : '#F54394'\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.45-60'),\n backgroundColor: 'rgb(84, 57, 252,0.1)',\n borderColor: 'rgb(84, 57, 252)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(84, 57, 252)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data3,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Above_60'),\n backgroundColor: 'rgb(245, 67, 148, 0.2)',\n borderColor: 'rgb(245, 67, 148)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(245, 67, 148)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n lineTension: 0,\n fill: true,\n\n data: data4,\n }\n\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n // padding: 15,\n // fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.registartionChartAll = new Chart(ctx, regConfig);\n this.registartionChartAll.update();\n\n }\n\n async prepareDataForRegChart() {\n\n await this.delay(300);\n if (this.registartionChart) {\n this.registartionChart.destroy();\n }\n\n\n const ctx = $('#realtimeregchart');\n if (this.registartionChartData) {\n this.registartionChartData = this.registartionChartData.sort((a, b) => (a.timestamps > b.timestamps) ? 1 : -1)\n }\n\n // const labels = this.registartionChartData.map(obj => obj.label);\n\n const labels = _.map(this.registartionChartData, (data) => {\n return moment(data.timestamps, \"YYYY-MM-DD HH:mm:ssZ\").format('HH:mm');\n });\n\n\n const data1 = _.map(this.registartionChartData, 'total');\n const data5 = _.map(this.registartionChartData, 'age15');\n const data2 = _.map(this.registartionChartData, 'age18');\n const data3 = _.map(this.registartionChartData, 'age45');\n const data4 = _.map(this.registartionChartData, 'age60');\n const data6 = _.map(this.registartionChartData, 'age12');\n const format = this.numberFormatPipe;\n var regConfig = {\n type: 'line',\n data: {\n labels: labels,\n\n datasets: [\n {\n label: this.translate.instant('DASHBOARD.Total'),\n backgroundColor: 'rgb(33, 204, 152, 0.1)',\n borderColor: 'rgb(33, 204, 152)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(33, 204, 152)',\n pointBorderWidth: 1,\n strokeColor: \"rgba(54, 162, 235, 0.2)\",\n pointRadius: 3,\n fill: '+1',\n lineTension: 0,\n data: data1,\n },\n {\n type: 'line',\n label: '12-14',\n backgroundColor: 'rgb(178, 76, 194, 0.1)',\n borderColor: 'rgb(178, 76, 194)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(178, 76, 194)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data6,\n },\n {\n type: 'line',\n label: '15-17',\n backgroundColor: 'rgb(0, 179, 255, 0.1)', // 245, 67, 148\n borderColor: 'rgb(0, 179, 255)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(0, 179, 255)',\n pointBorderWidth: 1,\n pointRadius: 3,\n lineTension: 0,\n fill: true,\n\n data: data5,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.18-44'),\n backgroundColor: 'rgb(255, 152 , 0, 0.1)',\n borderColor: 'rgb(255, 152 , 0)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(255, 152 , 0)',\n pointBorderWidth: 1,\n\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data2,\n shadowColor : '#F54394'\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.45-60'),\n backgroundColor: 'rgb(84, 57, 252,0.1)',\n borderColor: 'rgb(84, 57, 252)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(84, 57, 252)',\n pointBorderWidth: 1,\n pointRadius: 3,\n lineTension: 0,\n fill: true,\n\n data: data3,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Above_60'),\n backgroundColor: 'rgb(245, 67, 148, 0.2)',\n borderColor: 'rgb(245, 67, 148)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(245, 67, 148)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data4,\n }\n\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n // padding: 15,\n // fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.registartionChart = new Chart(ctx, regConfig);\n this.registartionChart.update();\n\n }\n\n //load AEFI report\n loadVaccinationAEFIChart() {\n const format = this.numberFormatPipe;\n\n if (this.vaccinationAEFIChart) {\n this.vaccinationAEFIChart.destroy();\n }\n\n // console.log(\"aefi\", this.vaccinationAEFIChartData);\n const labels = this.vaccinationAEFIChartData.map(obj => moment(obj.vaccine_date).format('DD MMM'));\n const data = _.map(this.vaccinationAEFIChartData, 'aefi');\n var configuration = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label: 'Total',\n backgroundColor: 'rgba(255, 255, 255, 1)',\n borderColor: 'rgba(33, 204, 152, 1)',\n borderWidth: 2,\n pointBackgroundColor: 'rgba(33, 204, 152, 1)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data,\n\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n // align: \"end\",\n labels: {\n usePointStyle: true,\n // fontSize: 7,\n boxWidth: 6,\n // padding: 15,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n\n userCallback: function (label, index, labels) {\n // when the floored value is the same as the value we have a whole number\n if (Math.floor(label) === label) {\n return label;\n }\n\n },\n }\n }]\n },\n }\n };\n // this.vaccinationAEFIChart.yAxis.tickFormat(d3.format(',f'));\n var ctx = $('#vaccination-aefi-seven-days');\n this.vaccinationAEFIChart = new Chart(ctx, configuration);\n this.vaccinationAEFIChart.update();\n\n }\n\n prepareDataForVaccinationByCategory() {\n if (this.vaccinationByCategoryChart) {\n this.vaccinationByCategoryChart.destroy();\n }\n\n\n // -------------------------------------------------\n Chart.helpers.drawRoundedTopRectangle = function(ctx, x, y, width, height, radius) {\n ctx.beginPath();\n ctx.moveTo(x + radius, y);\n // top right corner\n ctx.lineTo(x + width - radius, y);\n ctx.quadraticCurveTo(x + width, y, x + width, y + radius);\n // bottom right corner\n ctx.lineTo(x + width, y + height);\n // bottom left corner\n ctx.lineTo(x, y + height);\n // top left\n ctx.lineTo(x, y + radius);\n ctx.quadraticCurveTo(x, y, x + radius, y);\n ctx.closePath();\n };\n Chart.elements.RoundedTopRectangle = Chart.elements.Rectangle.extend({\n draw: function() {\n var ctx = this._chart.ctx;\n var vm = this._view;\n var left, right, top, bottom, signX, signY, borderSkipped;\n var borderWidth = vm.borderWidth;\n\n if (!vm.horizontal) {\n // bar\n left = vm.x - vm.width / 2;\n right = vm.x + vm.width / 2;\n top = vm.y;\n bottom = vm.base;\n signX = 1;\n signY = bottom > top? 1: -1;\n borderSkipped = vm.borderSkipped || 'bottom';\n } else {\n // horizontal bar\n left = vm.base;\n right = vm.x;\n top = vm.y - vm.height / 2;\n bottom = vm.y + vm.height / 2;\n signX = right > left? 1: -1;\n signY = 1;\n borderSkipped = vm.borderSkipped || 'left';\n }\n\n // Canvas doesn't allow us to stroke inside the width so we can\n // adjust the sizes to fit if we're setting a stroke on the line\n if (borderWidth) {\n // borderWidth shold be less than bar width and bar height.\n var barSize = Math.min(Math.abs(left - right), Math.abs(top - bottom));\n borderWidth = borderWidth > barSize? barSize: borderWidth;\n var halfStroke = borderWidth / 2;\n // Adjust borderWidth when bar top position is near vm.base(zero).\n var borderLeft = left + (borderSkipped !== 'left'? halfStroke * signX: 0);\n var borderRight = right + (borderSkipped !== 'right'? -halfStroke * signX: 0);\n var borderTop = top + (borderSkipped !== 'top'? halfStroke * signY: 0);\n var borderBottom = bottom + (borderSkipped !== 'bottom'? -halfStroke * signY: 0);\n // not become a vertical line?\n if (borderLeft !== borderRight) {\n top = borderTop;\n bottom = borderBottom;\n }\n // not become a horizontal line?\n if (borderTop !== borderBottom) {\n left = borderLeft;\n right = borderRight;\n }\n }\n\n // calculate the bar width and roundess\n var barWidth = Math.abs(left - right);\n var roundness = this._chart.config.options.barRoundness || 0.5;\n var radius = barWidth * roundness * 0.8;\n\n // keep track of the original top of the bar\n var prevTop = top;\n\n // move the top down so there is room to draw the rounded top\n top = prevTop + radius;\n var barRadius = top - prevTop;\n\n ctx.beginPath();\n ctx.fillStyle = vm.backgroundColor;\n ctx.strokeStyle = vm.borderColor;\n ctx.lineWidth = borderWidth;\n\n // draw the rounded top rectangle\n Chart.helpers.drawRoundedTopRectangle(ctx, left, (top - barRadius + 1), barWidth, bottom - prevTop, barRadius);\n\n ctx.fill();\n if (borderWidth) {\n ctx.stroke();\n }\n\n // restore the original top value so tooltips and scales still work\n top = prevTop;\n },\n });\n Chart.defaults.roundedBar = Chart.helpers.clone(Chart.defaults.bar);\n\nChart.controllers.roundedBar = Chart.controllers.bar.extend({\n dataElementType: Chart.elements.RoundedTopRectangle\n});\n // ------------------------------------------------\n\n\n\n // console.log(\"vaccinationByCategoryDatatest\", this.vaccinationByCategoryData)\n const ctx = $('#vacc-bycategory');\n\n if (this.vaccinationByCategoryData) {\n this.vaccinationByCategoryData = this.vaccinationByCategoryData.sort((a, b) => (a.vaccine_date > b.vaccine_date) ? 1 : -1)\n }\n\n\n const labels = this.vaccinationByCategoryData.map(obj => moment(obj.vaccine_date, \"YYYY-MM-DD\").format('DD MMM'));\n\n const data1 = _.map(this.vaccinationByCategoryData, 'rural');\n const data2 = _.map(this.vaccinationByCategoryData, 'urban');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'bar',\n label:this.translate.instant('DASHBOARD.Urban'),\n backgroundColor: \"rgba(84, 57, 252, 1)\",\n borderColor: \"rgba(84, 57, 252, 1)\",\n data: data2,\n },\n {\n type: 'roundedBar',\n label: this.translate.instant('DASHBOARD.Rural'),\n backgroundColor: \"rgba(255, 119, 35, 1)\",\n borderColor: \"rgba(255, 119, 35, 1)\",\n data: data1,\n }\n]\n },\n options: {\n cornerRadius: 20,\n legend: {\n display: true,\n position: 'bottom',\n // align: \"end\",\n labels: {\n usePointStyle: true,\n // fontSize: 7,\n boxWidth: 6,\n // padding: 15,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n barThickness: 10,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n },\n }\n };\n this.vaccinationByCategoryChart = new Chart(ctx, vaccConfig);\n this.vaccinationByCategoryChart.update();\n }\n\n prepareDataForDoughnutChartForTable() {\n const format = this.numberFormatPipe;\n var count = 0;\n // for(let i=0; i<=this.getVaccinationByStateUTData.length;i++){\n // this.getVaccinationByStateUTData = this.getVaccinationByStateUTData.slice(0, 200);\n // console.log(\" this.getVaccinationByStateUTData\", this.getVaccinationByStateUTData)\n this.getVaccinationByStateUTData.forEach((res) => {\n count = count + 1;\n\n\n this.charts.push(\n\n new Chart('vaccination-table-data' + count, {\n type: 'doughnut',\n data: {\n labels: ['Dose 1', 'Dose 2'],\n datasets: [\n {\n data: [res.partial_vaccinated, res.totally_vaccinated],\n //borderColor: \"#3cba9f\",\n backgroundColor: [\n ('#21CC98'),\n ('#FF9800')\n\n ]\n }\n ]\n },\n options: {\n cutoutPercentage: 70,\n borderRadius: 30,\n // rotation: 1 * Math.PI,\n // circumference: 1 * Math.PI,\n responsive: true,\n animation: {\n animateScale: true,\n animateRotate: true\n },\n tooltips: {\n enabled: false\n },\n legend: {\n display: false,\n }\n }\n })\n );\n\n });\n // }\n }\n\n async prepareDataForVaccAgewiseToday() {\n await this.delay(300);\n\n if (this.vaccinationAgeChartToday) {\n this.vaccinationAgeChartToday.destroy();\n }\n if (this.vaccinationAgeDataToday) {\n this.vaccinationAgeDataToday = this.vaccinationAgeDataToday.sort((a, b) => (a.timestamps > b.timestamps) ? 1 : -1)\n }\n const ctx = $('#vacc-agewise-today');\n\n\n const labels = _.map(this.vaccinationAgeDataToday, (data) => {\n return moment(data.timestamps, \"YYYY-MM-DDTHH:mm:ssZ\").subtract(330, \"minutes\").format('HH:mm');\n });\n\n\n const data1 = _.map(this.vaccinationAgeDataToday, 'total');\n const data5 = _.map(this.vaccinationAgeDataToday, 'vac_15_17');\n const data2 = _.map(this.vaccinationAgeDataToday, 'vac_18_45');\n const data3 = _.map(this.vaccinationAgeDataToday, 'vac_45_60');\n const data4 = _.map(this.vaccinationAgeDataToday, 'vac_60_above');\n const data6= _.map(this.vaccinationAgeDataToday, 'vac_12_14');\n const format = this.numberFormatPipe;\n\n\n var vaccConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n\n {\n label: this.translate.instant('DASHBOARD.Total'),\n backgroundColor: 'rgb(33, 204, 152, 0.1)',\n borderColor: 'rgb(33, 204, 152)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(33, 204, 152)',\n pointBorderWidth: 1,\n strokeColor: \"rgba(54, 162, 235, 0.2)\",\n pointRadius: 3,\n fill: '+1',\n lineTension: 0,\n data: data1,\n },\n {\n type: 'line',\n label: '12-14',\n backgroundColor: 'rgb(178, 76, 194, 0.1)',\n borderColor: 'rgb(178, 76, 194)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(178, 76, 194)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data6,\n },\n {\n type: 'line',\n label: '15-17',\n backgroundColor: 'rgb(0, 179, 255, 0.05)', // 255, 152, 0\n borderColor: 'rgb(0, 179, 255)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(0, 179, 255)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data5,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.18-44'),\n backgroundColor: 'rgb(255, 152 , 0, 0.1)',\n borderColor: 'rgb(255, 152 , 0)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(255, 152 , 0)',\n pointBorderWidth: 1,\n\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data2,\n shadowColor : '#F54394'\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.45-60'),\n backgroundColor: 'rgb(84, 57, 252,0.1)',\n borderColor: 'rgb(84, 57, 252)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(84, 57, 252)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data3,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Above_60'),\n backgroundColor: 'rgb(245, 67, 148, 0.2)',\n borderColor: 'rgb(245, 67, 148)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(245, 67, 148)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data4,\n }\n\n\n\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.vaccinationAgeChartToday = new Chart(ctx, vaccConfig);\n this.vaccinationAgeChartToday.update();\n }\n\n async prepareDataForVaccAgewiseLast30Days() {\n await this.delay(300);\n if (this.vaccinationAgeChartMonth) {\n this.vaccinationAgeChartMonth.destroy();\n }\n\n const ctx = $('#vacc-agewise-month');\n\n const labels = this.vaccinationAgeDataMonth.map(obj => moment(obj.vaccine_date, \"YYYY-MM-DD\").format('DD MMM'));\n\n\n const data1 = _.map(this.vaccinationAgeDataMonth, 'total');\n const data5 = _.map(this.vaccinationAgeDataMonth, 'vac_15_17');\n const data2 = _.map(this.vaccinationAgeDataMonth, 'vac_18_45');\n const data3 = _.map(this.vaccinationAgeDataMonth, 'vac_45_60');\n const data4 = _.map(this.vaccinationAgeDataMonth, 'vac_60_above');\n const data6 = _.map(this.vaccinationAgeDataMonth, 'vac_12_14');\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n label: this.translate.instant('DASHBOARD.Total'),\n backgroundColor: 'rgb(33, 204, 152, 0.1)',\n borderColor: 'rgb(33, 204, 152)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(33, 204, 152)',\n pointBorderWidth: 1,\n strokeColor: \"rgba(54, 162, 235, 0.2)\",\n pointRadius: 3,\n fill: '+1',\n lineTension: 0,\n data: data1,\n },\n {\n type: 'line',\n label: '12-14',\n backgroundColor: 'rgb(178, 76, 194, 0.1)',\n borderColor: 'rgb(178, 76, 194)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(178, 76, 194)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data6,\n },\n {\n type: 'line',\n label: '15-17',\n backgroundColor: 'rgb(0, 179, 255, 0.05)', // 255, 152, 0\n borderColor: 'rgb(0, 179, 255)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(0, 179, 255)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data5,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.18-44'),\n backgroundColor: 'rgb(255, 152 , 0, 0.1)',\n borderColor: 'rgb(255, 152 , 0)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(255, 152 , 0)',\n pointBorderWidth: 1,\n\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data2,\n shadowColor : '#F54394'\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.45-60'),\n backgroundColor: 'rgb(84, 57, 252,0.1)',\n borderColor: 'rgb(84, 57, 252)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(84, 57, 252)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data3,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Above_60'),\n backgroundColor: 'rgb(245, 67, 148, 0.2)',\n borderColor: 'rgb(245, 67, 148)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(245, 67, 148)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data4,\n }\n\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.vaccinationAgeChartMonth = new Chart(ctx, vaccConfig);\n this.vaccinationAgeChartMonth.update();\n }\n\n async prepareDataForVaccAgewiseAll() {\n await this.delay(300);\n if (this.vaccinationAgeChartAll) {\n this.vaccinationAgeChartAll.destroy();\n }\n\n\n const ctx = $('#vacc-agewise-all');\n\n const labels = this.vaccinationAgeDataAll.map(obj => obj.label);\n\n\n const data1 = _.map(this.vaccinationAgeDataAll, 'total');\n const data5 = _.map(this.vaccinationAgeDataAll, 'vac_15_17');\n const data2 = _.map(this.vaccinationAgeDataAll, 'vac_18_45');\n const data3 = _.map(this.vaccinationAgeDataAll, 'vac_45_60');\n const data4 = _.map(this.vaccinationAgeDataAll, 'vac_60_above');\n const data6 = _.map(this.vaccinationAgeDataAll, 'vac_12_14');\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n label: this.translate.instant('DASHBOARD.Total'),\n backgroundColor: 'rgb(33, 204, 152, 0.1)',\n borderColor: 'rgb(33, 204, 152)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(33, 204, 152)',\n pointBorderWidth: 1,\n strokeColor: \"rgba(54, 162, 235, 0.2)\",\n pointRadius: 3,\n fill: '+1',\n lineTension: 0,\n data: data1,\n },\n {\n type: 'line',\n label: '12-14',\n backgroundColor: 'rgb(178, 76, 194, 0.1)',\n borderColor: 'rgb(178, 76, 194)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(178, 76, 194)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data6,\n },\n {\n type: 'line',\n label: '15-17',\n backgroundColor: 'rgb(0, 179, 255, 0.05)', // 255, 152, 0\n borderColor: 'rgb(0, 179, 255)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(0, 179, 255)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data5,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.18-44'),\n backgroundColor: 'rgb(255, 152 , 0, 0.1)',\n borderColor: 'rgb(255, 152 , 0)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(255, 152 , 0)',\n pointBorderWidth: 1,\n\n pointRadius: 3,\n fill: '+2',\n lineTension: 0,\n data: data2,\n shadowColor : '#F54394'\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.45-60'),\n backgroundColor: 'rgb(84, 57, 252,0.1)',\n borderColor: 'rgb(84, 57, 252)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(84, 57, 252)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data3,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Above_60'),\n backgroundColor: 'rgb(245, 67, 148, 0.2)',\n borderColor: 'rgb(245, 67, 148)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(245, 67, 148)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n lineTension: 0,\n data: data4,\n }\n\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.vaccinationAgeChartAll = new Chart(ctx, vaccConfig);\n this.vaccinationAgeChartAll.update();\n }\n getLiveVaccinationCounter() {\n const channelName = `covid_vaccination_live_counter`;\n this.webSocket.listen(channelName).subscribe((data:any) => {\n // let liveData = data.split('::@::');\n // this.totalVaccinationCounter = parseInt(liveData[0]);\n this.totalVaccinationCounter = parseInt(data);\n });\n\n const channelNameReg = `covid_registration_live_counter`;\n this.webSocket.listen(channelNameReg).subscribe((data:any) => {\n this.totalRegistrationCounter = parseInt(data);\n });\n\n const channelNamepartialVacc = `covid_partially_vaccination_live_counter`;\n this.webSocket.listen(channelNamepartialVacc).subscribe((data:any) => {\n this.partialVaccinationCounter = parseInt(data);\n });\n\n const channelNametotalVacc = `covid_fully_vaccination_live_counter`;\n this.webSocket.listen(channelNametotalVacc).subscribe((data:any) => {\n this.fullyVaccinationCounter = parseInt(data);\n });\n\n this.webSocket.listenAgeSocket('covid_vaccination_bifurcation').subscribe((data: any) => {\n this.total12_14Vaccination = data['vaccination_12_14_total'];\n this.total15_17Vaccination = data['vaccination_15_17_total'];\n this.total18_44Vaccination = data['vaccination_18_44_total'];\n this.total45_60Vaccination = data['vaccination_45_60_total'];\n this.totalabove_60Vaccination = data['vaccination_above_60_total'];\n this.total_hcw_flw_precaution_vaccinations = data['vaccination_18_44_precaution_dose'] + data['vaccination_45_60_precaution_dose'];\n this.total_60_plus_precaution_vaccinations = data['vaccination_above_60_precaution_dose']\n })\n }\n getDataForLiveVaccCountChart() {\n this.publicReportService.getLiveVaccinationCounterChart(this.todaysdate).subscribe(res => {\n if (res) {\n this.liveVaccData = res;\n for (let i = 0; i < this.liveVaccData.length; i++) {\n this.liveVaccData[i].last5mins = i == 0 ? 0 : this.liveVaccData[i].count - this.liveVaccData[i - 1].count\n }\n\n this.liveVaccData = this.liveVaccData.slice(Math.max(this.liveVaccData.length - 12, -1))\n console.log(\" this.liveVaccData1\", this.liveVaccData);\n this.prepareDataForLiveVaccCount();\n }\n });\n }\n\n prepareDataForLiveVaccCount() {\n if (this.liveVaccChart) {\n this.liveVaccChart.destroy();\n }\n\n const ctx = $('#liveVacc');\n\n // if (this.liveVaccData) {\n // this.liveVaccData = this.liveVaccData.sort((a, b) => (a.timestamps > b.timestamps) ? 1 : -1)\n // }\n // -----------------------------------------\n // Chart.defaults.LineWithLine = Chart.defaults.line;\n // Chart.controllers.LineWithLine = Chart.controllers.line.extend({\n // draw: function(ease) {\n // Chart.controllers.line.prototype.draw.call(this, ease);\n\n // if (this.chart.tooltip._active && this.chart.tooltip._active.length) {\n // var activePoint = this.chart.tooltip._active[0],\n // ctx = this.chart.ctx,\n // x = activePoint.tooltipPosition().x,\n // topY = this.chart.legend.bottom,\n // bottomY = this.chart.chartArea.bottom;\n\n // // draw line\n // ctx.save();\n // ctx.beginPath();\n // ctx.moveTo(x, topY);\n // ctx.lineTo(x, bottomY);\n // ctx.lineWidth = 1;\n // ctx.strokeStyle = '#808080';\n // ctx.stroke();\n // ctx.restore();\n // }\n // }\n // });\n\n\n\n // ----------------------------------------\n\n\n\n const labels = _.map(this.liveVaccData, (data) => {\n return moment(data.time, \"YYYY-MM-DDTHH:mm:ssZ\").add(330, \"minutes\").format('hh:mm A');\n });\n\n const data1 = _.map(this.liveVaccData, 'last5mins');\n // console.log(\" this.liveVaccDataxcXC\", this.liveVaccData);\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n // borderRadius: 50,\n // borderwidth:10,\n data: {\n labels: labels,\n\n datasets: [\n {\n // type: 'line',\n // // label: '5 Min Interval',\n // backgroundColor: \"rgb(28,169,121, 1)\",\n // borderColor: \"rgb(28,169,121, 1)\",\n\n // data: data1,\n // borderwidth:10,\n // borderRadius: 50,\n // // corners: 'round',\n // // bezierCurve : false\n\n\n\n type: 'line',\n // tension: 0.1,\n backgroundColor: 'rgb(28,169,121, .1)',\n borderColor: 'rgb(28,169,121, 1)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(28,169,121, 1)',\n pointBorderWidth: 1.5,\n pointRadius: 1.5,\n fill: true,\n bezierCurve: false,\n data: data1,\n }\n\n ]\n },\n options: {\n borderRadius: 50,\n // cornerRadius: 20,\n // barRoundness: 1,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n yAlign: 'top',\n displayColors: false,\n callbacks: {\n title: function (tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n\n\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n display: true,\n // barPercentage:1.0,\n // categoryPercentage:1.0,\n // // maintainAspectRatio :false,\n beginAtZero: true,\n // barThickness: 7,\n // borderRadius: 50,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 3,\n fontSize: 6,\n display: true,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\",\n // callback: function (label, index, labels) {\n // // return label / 100000 + 'L';\n // return \"\"\n // }\n },\n stacked: false,\n gridLines: {\n display: true,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000',\n // color: \"#808080\"\n },\n }],\n yAxes: [{\n\n stacked: false,\n barPercentage: 0.35,\n dispaly: false,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [2, 4],\n zeroLineColor: 'rgb(247, 250, 252)',\n display: false,\n offsetGridLines: true\n },\n ticks: {\n dispaly: true,\n fontSize: 6,\n beginAtZero: false,\n autoSkip: true,\n maxTicksLimit: 3,\n fontColor: \"#000000\",\n callback: function (label, index, labels) {\n return label / 100000 + 'L';\n // return \"\"\n }\n }\n }]\n },\n // annotation: {\n // annotations: [{\n // type: 'line',\n // mode: 'vertical',\n // scaleID: 'y-axis-0',\n // value: 5,\n // borderColor: 'rgb(75, 192, 192)',\n // borderWidth: 4,\n // label: {\n // enabled: false,\n // content: 'Test label'\n // }\n // }]\n // }\n\n\n },\n // plugins: [{\n // beforeInit: function (chart) {\n // chart.data.labels.forEach(function (e, i, a) {\n // if (/\\n/.test(e)) {\n // a[i] = e.split(/\\n/)\n // }\n // })\n // }\n // }]\n };\n\n this.liveVaccChart = new Chart(ctx, vaccConfig);\n this.liveVaccChart.update();\n }\n prepareDataForLiveVaccStareaming() {\n if (this.liveVaccChartStreaming) {\n this.liveVaccChartStreaming.destroy();\n }\n\n const ctx = $('#liveVaccStreaming');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(20, 122, 214, 0.5)',\n borderColor: 'rgb(20, 122, 214)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(255, 255, 255)\",\n pointBorderWidth: 1.5,\n pointRadius: 2,\n fill: true,\n bezierCurve: false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function (tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display: false,\n beginAtZero: true,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 5,\n fontSize: 6,\n display: false,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\"\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000'\n },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly: false,\n // beginAtZero: true,\n gridLines: {\n display: false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly: false,\n userCallback: function (value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreaming = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreaming.update();\n this.updateData();\n }\n async updateData() {\n const channelName = `covid_vaccination_live_counter`;\n this.webSocket.listen(channelName).subscribe((data: any) => {\n let currentData = parseInt(data);\n let label = moment(new Date()).format('HH:mm:ss')\n this.liveVaccChartStreaming.data.labels.push(label);\n this.liveVaccChartStreaming.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsData) {\n diff = currentData - this.prevsData\n }\n this.prevsData = currentData;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsData) {\n diff = currentData - this.prevsData\n }\n this.prevsData = currentData;\n dataset.data.push(diff)\n }\n });\n if (this.updateCountTotalVacc > this.numberOfElements) {\n this.liveVaccChartStreaming.data.labels.shift();\n this.liveVaccChartStreaming.data.datasets[0].data.shift();\n } else {\n this.updateCountTotalVacc++;\n }\n this.liveVaccChartStreaming.update();\n this.liveVaccChartStreaming = this.liveVaccChartStreaming;\n })\n }\n prepareDataForLiveVaccStareamingRegistration() {\n if (this.liveVaccChartStreamingRegistration) {\n this.liveVaccChartStreamingRegistration.destroy();\n }\n\n const ctx = $('#liveVaccStreamingReg');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(1, 113, 113, 0.5)',\n borderColor: 'rgb(1, 113, 113, 1)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(255, 255, 255)\",\n pointBorderWidth: 1.5,\n pointRadius: 2,\n fill: true,\n bezierCurve: false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function (tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display: false,\n beginAtZero: true,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 5,\n fontSize: 6,\n display: false,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\"\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000'\n },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly: false,\n // beginAtZero: true,\n gridLines: {\n display: false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly: false,\n userCallback: function (value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreamingRegistration = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreamingRegistration.update();\n this.updateDataRegistration();\n }\n async updateDataRegistration() {\n const channelName = `covid_registration_live_counter`;\n this.webSocket.listen(channelName).subscribe((data: any) => {\n let currentData = parseInt(data);\n let label = moment(new Date()).format('HH:mm:ss')\n this.liveVaccChartStreamingRegistration.data.labels.push(label);\n this.liveVaccChartStreamingRegistration.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsRegData) {\n diff = currentData - this.prevsRegData\n }\n this.prevsRegData = currentData;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsRegData) {\n diff = currentData - this.prevsRegData\n }\n this.prevsRegData = currentData;\n dataset.data.push(diff)\n }\n });\n if (this.updateCountTotalReg > this.numberOfElements) {\n this.liveVaccChartStreamingRegistration.data.labels.shift();\n this.liveVaccChartStreamingRegistration.data.datasets[0].data.shift();\n } else {\n this.updateCountTotalReg++;\n }\n this.liveVaccChartStreamingRegistration.update();\n this.liveVaccChartStreamingRegistration = this.liveVaccChartStreamingRegistration;\n })\n }\n prepareDataForLiveVaccStareamingPartialVacc() {\n if (this.liveVaccChartStreamingPartialVacc) {\n this.liveVaccChartStreamingPartialVacc.destroy();\n }\n\n const ctx = $('#liveVaccStreamingPartialVacc');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(255, 154, 49, 0.5)',\n borderColor: 'rgb(255, 154, 49)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(255, 255, 255)\",\n pointBorderWidth: 1.5,\n pointRadius: 2,\n fill: true,\n bezierCurve: false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function (tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display: false,\n beginAtZero: true,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 5,\n fontSize: 6,\n display: false,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\"\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000'\n },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly: false,\n // beginAtZero: true,\n gridLines: {\n display: false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly: false,\n userCallback: function (value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreamingPartialVacc = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreamingPartialVacc.update();\n this.updateDataPartialVacc();\n }\n async updateDataPartialVacc() {\n const channelName = `covid_partially_vaccination_live_counter`;\n this.webSocket.listen(channelName).subscribe((data: any) => {\n let currentData = parseInt(data);\n let label = moment(new Date()).format('HH:mm:ss')\n this.liveVaccChartStreamingPartialVacc.data.labels.push(label);\n this.liveVaccChartStreamingPartialVacc.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsPartialVaccData) {\n diff = currentData - this.prevsPartialVaccData\n }\n this.prevsPartialVaccData = currentData;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsPartialVaccData) {\n diff = currentData - this.prevsPartialVaccData\n }\n this.prevsPartialVaccData = currentData;\n dataset.data.push(diff)\n }\n });\n if (this.updateCountPartialVacc > this.numberOfElements) {\n this.liveVaccChartStreamingPartialVacc.data.labels.shift();\n this.liveVaccChartStreamingPartialVacc.data.datasets[0].data.shift();\n } else {\n this.updateCountPartialVacc++;\n }\n this.liveVaccChartStreamingPartialVacc.update();\n this.liveVaccChartStreamingPartialVacc = this.liveVaccChartStreamingPartialVacc;\n })\n }\n prepareDataForLiveVaccStareamingFullyVacc() {\n if (this.liveVaccChartStreamingFullyVacc) {\n this.liveVaccChartStreamingFullyVacc.destroy();\n }\n\n const ctx = $('#liveVaccStreamingFullyVacc');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(47, 181, 141, 0.5)',\n borderColor: 'rgb(47, 181, 141)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(255, 255, 255)\",\n pointBorderWidth: 1.5,\n pointRadius: 2,\n fill: true,\n bezierCurve: false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function (tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n showScale: false,\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display: false,\n // beginAtZero: true,\n // ticks: {\n // autoSkip: true,\n // maxTicksLimit: 5,\n // fontSize: 6,\n // display:false,\n // maxRotation: 0,\n // minRotation: 0,\n // fontColor: \"#000000\"\n // },\n // stacked: false,\n // gridLines: {\n // display: false,\n // drawBorder: true,\n // borderDash: [2, 4],\n // zeroLineWidth: 0.05,\n // zeroLineColor: '#000000'\n // },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly: false,\n // beginAtZero: true,\n gridLines: {\n display: false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly: false,\n userCallback: function (value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreamingFullyVacc = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreamingFullyVacc.update();\n this.updateDataFullyVacc();\n }\n async updateDataFullyVacc() {\n const channelName = `covid_fully_vaccination_live_counter`;\n this.webSocket.listen(channelName).subscribe((data: any) => {\n let currentData = parseInt(data);\n let label = moment(new Date()).format('HH:mm:ss')\n this.liveVaccChartStreamingFullyVacc.data.labels.push(label);\n this.liveVaccChartStreamingFullyVacc.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsFullyVaccData) {\n diff = currentData - this.prevsFullyVaccData\n }\n this.prevsFullyVaccData = currentData;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsFullyVaccData) {\n diff = currentData - this.prevsFullyVaccData\n }\n this.prevsFullyVaccData = currentData;\n dataset.data.push(diff)\n }\n });\n if (this.updateCountFullyVacc > this.numberOfElements) {\n this.liveVaccChartStreamingFullyVacc.data.labels.shift();\n this.liveVaccChartStreamingFullyVacc.data.datasets[0].data.shift();\n } else {\n this.updateCountFullyVacc++;\n }\n this.liveVaccChartStreamingFullyVacc.update();\n this.liveVaccChartStreamingFullyVacc = this.liveVaccChartStreamingFullyVacc;\n })\n }\n\n loadVaccinationByAgeChart() {\n const format = this.numberFormatPipe;\n if (this.vaccinationByAgeChart) {\n this.vaccinationByAgeChart.destroy();\n}\n console.log(\"this.vaccinationByAgeChartData\", this.vaccinationByAgeChartData)\n const labels_data = Object.keys(this.vaccinationByAgeChartData);\n const labels = labels_data.map(obj => obj.replace('vac_', '').replace('_', '-'));\n labels.shift();\n\n const vac_15_17 = this.vaccinationByAgeChartData.vac_15_17\n const vac_18_45 = this.vaccinationByAgeChartData.vac_18_45\n const vac_45_60 = this.vaccinationByAgeChartData.vac_45_60\n const above_60 = this.vaccinationByAgeChartData.above_60\n\n\n console.log(\"check\", vac_18_45);\n var configuration = {\n type: 'bar',\n\n data: {\n datasets: [\n {\n label: '15-17',\n data: [vac_15_17],\n backgroundColor: [\n // \"rgb(254, 125, 90)\",\n // \"rgb(243, 244, 249)\"\n 'rgb(15, 22, 53)'\n ],\n },\n {\n label: '18-44',\n data: [vac_18_45],\n backgroundColor: 'rgb(50 72 158)'\n },\n {\n label: '45-60',\n data: [vac_45_60],\n backgroundColor: 'rgb(2, 99, 255)'\n },\n {\n label: 'Above 60',\n data: [above_60],\n backgroundColor: 'rgb(100, 154, 241)'\n }\n ]\n\n\n },\n options: {\n legend: {\n display: true,\n position: 'right',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n title: function (tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n barThickness: 40,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n display: false\n\n }\n }]\n },\n }\n };\n\n var ctx = $('#vaccination-by-age');\n this.vaccinationByAgeChart = new Chart(ctx, configuration);\n this.vaccinationByAgeChart.update();\n }\n\n prepareDataForDoughnutChartGender() {\n\n const format = this.numberFormatPipe;\n if (this.genderVaccPieChart) {\n this.genderVaccPieChart.destroy()\n }\n\n\n\n const male = this.topBlockReport?.vaccination?.male\n const female = this.topBlockReport?.vaccination?.female\n const others = this.topBlockReport?.vaccination?.others\n const total = this.topBlockReport?.vaccination?.total_doses\n\n console.log(\"male\", this.topBlockReport)\n var configcmr2 = {\n type: 'doughnut',\n\n data: {\n datasets: [\n /* Outer doughnut data starts*/\n {\n data: [this.topBlockReport?.vaccination?.male,\n this.topBlockReport?.vaccination?.total_doses],\n backgroundColor: [\n \"rgb(84, 57, 252)\",\n \"rgb(243, 244, 249)\"\n ],\n label: 'Male',\n borderRadius: 30\n },\n /* Outer doughnut data ends*/\n /* Inner doughnut data starts*/\n {\n data: [this.topBlockReport?.vaccination?.female,\n this.topBlockReport?.vaccination?.total_doses],\n backgroundColor: [\n \"rgb(245, 67, 148)\",\n \"rgb(243, 244, 249)\"\n ],\n label: 'Female',\n\n },\n {\n data: [this.topBlockReport?.vaccination?.others,\n this.topBlockReport?.vaccination?.total_doses],\n backgroundColor: [\n \"rgb(255, 152, 0)\",\n \"rgb(243, 244, 249)\"\n ],\n label: 'Others',\n\n }\n ],\n labels: [\n \"Male\",\n \"Female\",\n \"Others\"\n\n ],\n\n },\n options: {\n cutoutPercentage: 60,\n borderRadius: 30,\n // rotation: 1 * Math.PI,\n // circumference: 1 * Math.PI,\n responsive: true,\n animation: {\n animateScale: true,\n animateRotate: true\n },\n tooltips: {\n mode: 'label',\n\n\n callbacks: {\n label: function (item, data) {\n console.log(data.labels, item);\n return data.datasets[item.datasetIndex].label + \": \" + format.transform(data.datasets[item.datasetIndex].data[item.index]);\n }\n }\n },\n legend: {\n display: false,\n position: 'right',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n // padding: 50,\n // fontSize: 11,\n }\n }\n }\n };\n\n\n\n\n const genderCtx = $('#total-vaccinated-gender');\n this.genderVaccPieChart = new Chart(genderCtx, configcmr2);\n\n\n }\n\n\n prepareDataForDoughnutChartVaccType() {\n\n const format = this.numberFormatPipe;\n if (this.materialVaccPieChart) {\n this.materialVaccPieChart.destroy()\n }\n\n\n\n const male = this.topBlockReport?.vaccination?.male\n const female = this.topBlockReport?.vaccination?.female\n const others = this.topBlockReport?.vaccination?.others\n const total = this.topBlockReport?.vaccination?.total_doses\n\n console.log(\"male\", this.topBlockReport)\n var configcmr2 = {\n type: 'doughnut',\n\n data: {\n datasets: [\n /* Outer doughnut data starts*/\n {\n data: [this.topBlockReport?.vaccination?.covishield,\n this.topBlockReport?.vaccination?.total_doses],\n backgroundColor: [\n \"rgb(59, 125, 254)\",\n \"rgb(243, 244, 249)\"\n ],\n label: 'Covishield',\n borderRadius: 30\n },\n /* Outer doughnut data ends*/\n /* Inner doughnut data starts*/\n {\n data: [this.topBlockReport?.vaccination?.covaxin,\n this.topBlockReport?.vaccination?.total_doses],\n backgroundColor: [\n \"rgb(254, 125, 90)\",\n \"rgb(243, 244, 249)\"\n ],\n label: 'Covaxin',\n\n },\n {\n data: [this.topBlockReport?.vaccination?.sputnik,\n this.topBlockReport?.vaccination?.total_doses],\n backgroundColor: [\n \"rgb(35, 200, 150)\",\n \"rgb(243, 244, 249)\"\n ],\n label: 'Sputnik V',\n\n }\n ],\n labels: [\n \"Covishield\",\n \"Covaxin\",\n \"Sputnik V\"\n\n ],\n\n },\n options: {\n cutoutPercentage: 60,\n borderRadius: 30,\n // rotation: 1 * Math.PI,\n // circumference: 1 * Math.PI,\n responsive: true,\n animation: {\n animateScale: true,\n animateRotate: true\n },\n tooltips: {\n mode: 'label',\n\n\n callbacks: {\n label: function (item, data) {\n console.log(data.labels, item);\n return data.datasets[item.datasetIndex].label + \": \" + format.transform(data.datasets[item.datasetIndex].data[item.index]);\n }\n }\n },\n legend: {\n display: false,\n position: 'right',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n // padding: 50,\n // fontSize: 11,\n }\n }\n }\n };\n\n\n\n\n const materialCtx = $('#material-used');\n this.materialVaccPieChart = new Chart(materialCtx, configcmr2);\n\n\n }\n\n prepareDataForDoughnutChartVaccTypeNew() {\n\n const format = this.numberFormatPipe;\n if (this.materialVaccPieChartnew) {\n this.materialVaccPieChartnew.destroy()\n }\n\n\n\n const male = this.topBlockReport?.vaccination?.male\n const female = this.topBlockReport?.vaccination?.covaxin\n const others = this.topBlockReport?.vaccination?.sputnik\n const total = this.topBlockReport?.vaccination?.total_doses\n\n const labels = ['Covishield', 'Covaxin', 'Sputnik V']\n const bgcolor = ['rgb(59, 125, 254)', 'rgb(254, 125, 90)', 'rgb(35, 200, 150)']\n const vaccData = [\n\n this.topBlockReport?.vaccination?.covishield,\n\n this.topBlockReport?.vaccination?.covaxin,\n\n this.topBlockReport?.vaccination?.sputnik,\n\n ]\n\n if(this.topBlockReport.vaccination.corbevax){\n\n labels.push('Corbevax');\n\n vaccData.push(this.topBlockReport?.vaccination?.corbevax)\n bgcolor.push('rgb(245, 67, 148)')\n\n }\n if(this.topBlockReport.vaccination.covovax){\n\n labels.push('Covovax');\n bgcolor.push('rgb(178, 76, 194)')\n vaccData.push(this.topBlockReport?.vaccination?.covovax)\n }\n\n if(this.topBlockReport.vaccination.incovacc){\n labels.push('iNCOVACC');\n bgcolor.push('rgb(92, 186, 24)')\n vaccData.push(this.topBlockReport?.vaccination?.incovacc)\n }\n\n if(this.topBlockReport.vaccination.gemcovacc){\n labels.push('GEMCOVAC');\n bgcolor.push('rgb(33, 24, 204)')\n vaccData.push(this.topBlockReport?.vaccination?.gemcovacc)\n }\n\n if(this.topBlockReport.vaccination.gemcovacc_om){\n labels.push('GEMCOVAC®-OM');\n bgcolor.push('rgb(37, 196, 172)')\n vaccData.push(this.topBlockReport?.vaccination?.gemcovacc_om)\n }\n\n // console.log(\"male\",this.topBlockReport)\n var configcmr2 = {\n type: 'doughnut',\n\n\n\n data: {\n datasets: [{\n data: vaccData,\n // backgroundColor: ['rgb(59, 125, 254)', 'rgb(254, 125, 90)', 'rgb(35, 200, 150)','rgb(245, 67, 148)','rgb(178, 76, 194)'],\n backgroundColor:bgcolor,\n borderWidth: 1,\n }],\n labels: labels\n },\n options: {\n cutoutPercentage: 60,\n borderRadius: 30,\n // rotation: 1 * Math.PI,\n // circumference: 1 * Math.PI,\n responsive: true,\n animation: {\n animateScale: true,\n animateRotate: true\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var indice = tooltipItem.index;\n const value = data.datasets[0].data[indice] || 0\n const dataNum = Math.round(value * 100) / 100;\n return data.labels[indice] + ': ' + format.transform(data.datasets[0].data[indice]) + '';\n }\n }\n },\n legend: {\n display: true,\n position: 'right',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n // padding: 50,\n // fontSize: 11,\n }\n }\n }\n };\n\n\n\n\n const materialCtxnew = $('#material-used-new');\n this.materialVaccPieChartnew = new Chart(materialCtxnew, configcmr2);\n\n\n }\n\n\n\n prepareDataForPieChartGenderNew() {\n const format = this.numberFormatPipe;\n if (this.genderVaccPieChartNew) {\n this.genderVaccPieChartNew.destroy();\n }\n // console.log(\"this.vaccinationByAgeChartData\", this.vaccinationByAgeChartData)\n // const labels_data = Object.keys(this.vaccinationByAgeChartData);\n // const labels = labels_data.map(obj => obj.replace('vac_', '').replace('_', '-'));\n // labels.shift();\n // const data = Object.values(this.vaccinationByAgeChartData);\n // data.shift();\n var configuration = {\n type: 'pie',\n // data: {\n // labels: labels,\n // datasets: [{\n // type: 'bar',\n // label: 'Vaccinations By Age',\n // backgroundColor: \"rgb(85 86 253)\",\n // borderColor: \"rgb(85 86 253)\",\n // data: data,\n // }]\n // },\n\n data: {\n datasets: [{\n data: [\n // this.vaccinationByAgeChartData.total,\n this.topBlockReport?.vaccination?.male,\n this.topBlockReport?.vaccination?.female,\n this.topBlockReport?.vaccination?.others\n ],\n backgroundColor: ['rgb(84, 57, 252)', 'rgb(245, 67, 148)', 'rgb(255, 152, 0)'],\n borderWidth: 1,\n }],\n labels: ['Male', 'Female', 'Others']\n },\n options: {\n legend: {\n display: true,\n position: 'right',\n labels: {\n usePointStyle: true,\n // fontSize: 11,\n boxWidth: 6,\n // padding: 15,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var indice = tooltipItem.index;\n const value = data.datasets[0].data[indice] || 0\n const dataNum = Math.round(value * 100) / 100;\n return data.labels[indice] + ': ' + format.transform(data.datasets[0].data[indice]) + '';\n }\n }\n },\n\n }\n };\n\n var ctx = $('#total-vaccinated-gender-new');\n this.genderVaccPieChartNew = new Chart(ctx, configuration);\n this.genderVaccPieChartNew.update();\n }\n\n loadVaccinationByAgeChartnew() {\n const format = this.numberFormatPipe;\n if (this.vaccinationByAgeChartNew) {\n this.vaccinationByAgeChartNew.destroy();\n }\n console.log(\"this.vaccinationByAgeChartData\", this.vaccinationByAgeChartData)\n const labels_data = Object.keys(this.vaccinationByAgeChartData);\n const labels = labels_data.map(obj => obj.replace('vac_', '').replace('_', '-'));\n labels.shift();\n\n const vac_15_17 = this.vaccinationByAgeChartData.vac_15_17\n const vac_18_45 = this.vaccinationByAgeChartData.vac_18_45\n const vac_45_60 = this.vaccinationByAgeChartData.vac_45_60\n const above_60 = this.vaccinationByAgeChartData.above_60\n const vac_12_14 = this.vaccinationByAgeChartData.vac_12_14\n // console.log(\"check\", vac_18_45);\n var configuration = {\n type: 'bar',\n\n data: {\n datasets: [\n {\n label: '12-14',\n data: [vac_12_14],\n backgroundColor: [\n // \"rgb(254, 125, 90)\",\n // \"rgb(243, 244, 249)\"\n 'rgb(1, 2, 13)'\n ],\n },\n {\n label: '15-17',\n data: [vac_15_17],\n backgroundColor: [\n // \"rgb(254, 125, 90)\",\n // \"rgb(243, 244, 249)\"\n // 'rgb(15, 22, 53)'\n 'rgb(50, 72, 158)'\n ],\n },\n {\n label: '18-44',\n data: [vac_18_45],\n // backgroundColor: 'rgb(50 72 158)'\n backgroundColor: 'rgb( 86, 90, 143)'\n\n\n },\n {\n label: '45-60',\n data: [vac_45_60],\n backgroundColor: 'rgb(2, 99, 255)'\n },\n {\n label: 'Above 60',\n data: [above_60],\n backgroundColor: 'rgb(100, 154, 241)'\n }\n ]\n\n\n },\n options: {\n legend: {\n display: true,\n position: 'right',\n labels: {\n usePointStyle: true,\n boxWidth: 6,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n title: function (tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n barThickness: 40,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n display: false\n\n }\n }]\n },\n }\n };\n\n var ctx = $('#vaccination-by-age-new');\n this.vaccinationByAgeChartNew = new Chart(ctx, configuration);\n this.vaccinationByAgeChartNew.update();\n }\n\n loadDataByStateTab(state_id = \"\", district_id = \"\") {\n console.log(\"sate\", state_id);\n this.isByAge = false;\n this.isByDoses = true;\n this.isdayVaccAge = false;\n this.ismonthVaccAge = false;\n this.isweekVaccAge = false;\n this.isday = true;\n this.ismonth = false;\n this.isweek = false;\n if(this.Heatmap !=undefined){\n this.Heatmap.getStatename(state_id);\n }\n this.statename = state_id;\n this.stateId = this.states.filter(e => e.state_name == state_id);\n this.chartFlag = true;\n console.log(\"stateId\", this.stateId)\n this.getDashboardData(this.stateId[0].state_id, district_id);\n this.getVacChartData();\n this.iconChange(this.stateId[0].state_id);\n // this.getVacChartData('Last 30 Days')\n // this.getRegChartDataMonth('Last 30 Days')\n // this.getVaccChartAgewiseDataMonth('Last 30 Days')\n\n }\n\n getDistrictID(stateId) {\n // console.log(\"stateId\", stateId)\n this.publicReportService.getDistricts().subscribe((res) => this.districtListnew = res);\n if (stateId !== \"\") {\n this.districtListfromstate = this.districtListnew.filter(e => e.state_id == stateId);\n // console.log(this.districtListfromstate)\n }\n }\n\n\n loadDataByDitrictTab(district_name = \"\") {\n this.isByAge = false;\n this.isByDoses = true;\n this.isdayVaccAge = false;\n this.ismonthVaccAge = false;\n this.isweekVaccAge = false;\n this.isday = true;\n this.ismonth = false;\n this.isweek = false;\n\n this.statedistrict=this.districtListnew.filter(e => e.state_id == this.state_id);\n this.district = this.statedistrict.filter(e => e.district_name == district_name);\n // this.chartFlag = false;\nif(this.state_id !=\"\"){\n this.chartFlag = true;\n // this.getNewDashboardDataforDistrict(this.district[0].district_id);\n this.getDashboardData(this.state_id, this.district[0].district_id);\n this.getVacChartData();\n}\n // this.getVacChartData('Last 30 Days')\n // this.getRegChartDataMonth('Last 30 Days')\n // this.getVaccChartAgewiseDataMonth('Last 30 Days')\n\n }\n\n filterFunction() {\n console.log(\"drop\")\n var input, filter, ul, li, a, i, txtValue;\n input = document.getElementById(\"myInput\");\n filter = input.value.toUpperCase();\n let div = document.getElementById(\"myDropdown\");\n a = div.getElementsByTagName(\"a\");\n for (i = 0; i < a.length; i++) {\n txtValue = a[i].textContent || a[i].innerText;\n if (txtValue.toUpperCase().indexOf(filter) > -1) {\n a[i].style.display = \"\";\n } else {\n a[i].style.display = \"none\";\n }\n }\n }\n\n\n getVacPerc(data, dose_type) {\n if (dose_type == 1) {\n return (data.partial_vaccinated / data.total).toFixed(2);\n } else {\n return (data.totally_vaccinated / data.total).toFixed(2)\n }\n }\n\n liveVaccChartStreaming12_14;\n prepareDataForLiveVaccStareaming12_14() {\n if (this.liveVaccChartStreaming12_14) {\n this.liveVaccChartStreaming12_14.destroy();\n }\n\n const ctx = $('#liveVacc12_14');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgba(243,201,42,0.55)',\n borderColor: 'rgb(243,201,42)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(255, 255, 255)\",\n pointBorderWidth: 1.5,\n pointRadius: 2,\n fill: true,\n bezierCurve: false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display:false,\n beginAtZero: true,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 5,\n fontSize: 6,\n display:false,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\"\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000'\n },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly:false,\n // beginAtZero: true,\n gridLines: {\n display:false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly:false,\n userCallback: function(value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreaming12_14 = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreaming12_14.update();\n }\n\n\n liveVaccChartStreaming15_17;\n prepareDataForLiveVaccStareaming15_17() {\n if (this.liveVaccChartStreaming15_17) {\n this.liveVaccChartStreaming15_17.destroy();\n }\n\n const ctx = $('#liveVacc15_17');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(178, 76, 194, 0.5)',\n borderColor: 'rgb(178, 76, 194)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(255, 255, 255)\",\n pointBorderWidth: 1.5,\n pointRadius: 2,\n fill: true,\n bezierCurve: false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display:false,\n beginAtZero: true,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 5,\n fontSize: 6,\n display:false,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\"\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000'\n },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly:false,\n // beginAtZero: true,\n gridLines: {\n display:false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly:false,\n userCallback: function(value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreaming15_17 = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreaming15_17.update();\n }\n\n\n liveVaccChartStreaming18_44;\n prepareDataForLiveVaccStareaming18_44() {\n if (this.liveVaccChartStreaming18_44) {\n this.liveVaccChartStreaming18_44.destroy();\n }\n\n const ctx = $('#liveVacc18_44');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(225, 75, 75, 0.5)',\n borderColor: 'rgb(225, 75, 75)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(255, 255, 255)\",\n pointBorderWidth: 1.5,\n pointRadius: 2,\n fill: true,\n bezierCurve: false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display:false,\n beginAtZero: true,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 5,\n fontSize: 6,\n display:false,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\"\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000'\n },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly:false,\n // beginAtZero: true,\n gridLines: {\n display:false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly:false,\n userCallback: function(value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreaming18_44 = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreaming18_44.update();\n }\n\n liveVaccChartStreaming45_60;\n prepareDataForLiveVaccStareaming45_60() {\n if (this.liveVaccChartStreaming45_60) {\n this.liveVaccChartStreaming45_60.destroy();\n }\n\n const ctx = $('#liveVacc45_60');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(52, 183, 82, 0.5)',\n borderColor: 'rgb(52, 183, 82)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(255, 255, 255)\",\n pointBorderWidth: 1.5,\n pointRadius: 2,\n fill: true,\n bezierCurve: false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display:false,\n beginAtZero: true,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 5,\n fontSize: 6,\n display:false,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\"\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000'\n },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly:false,\n // beginAtZero: true,\n gridLines: {\n display:false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly:false,\n userCallback: function(value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreaming45_60 = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreaming45_60.update();\n }\n\n liveVaccChartStreamingabove_60;\n prepareDataForLiveVaccStareamingabove_60() {\n if (this.liveVaccChartStreamingabove_60) {\n this.liveVaccChartStreamingabove_60.destroy();\n }\n\n const ctx = $('#liveVaccabove_60');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(94, 190, 93, 0.3)',\n borderColor: 'rgb(94, 190, 93)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(94, 190, 93)\",\n pointBorderWidth: 1.5,\n pointRadius: 1.5,\n fill: true,\n bezierCurve : false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n showScale: false,\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display:false,\n // beginAtZero: true,\n // ticks: {\n // autoSkip: true,\n // maxTicksLimit: 5,\n // fontSize: 6,\n // display:false,\n // maxRotation: 0,\n // minRotation: 0,\n // fontColor: \"#000000\"\n // },\n // stacked: false,\n // gridLines: {\n // display: false,\n // drawBorder: true,\n // borderDash: [2, 4],\n // zeroLineWidth: 0.05,\n // zeroLineColor: '#000000'\n // },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly:false,\n // beginAtZero: true,\n gridLines: {\n display:false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly:false,\n userCallback: function(value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreamingabove_60 = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreamingabove_60.update();\n }\n\n\n prevsDataAge = {};\n updateCountTotalVaccAge = {'12_14': 0, '15_17': 0, '18_44': 0, '45_60': 0, 'above_60': 0};\n async updateDataAge() {\n const channelName = `covid_vaccination_bifurcation`;\n this.webSocket.listenAgeSocket(channelName).subscribe((data:any) => {\n let vacc_total_12_14 = data['vaccination_12_14_total'];\n let vacc_total_15_17 = data['vaccination_15_17_total'];\n let vacc_total_18_44 = data['vaccination_18_44_precaution_dose'] + data['vaccination_45_60_precaution_dose'];\n let vacc_total_45_60 = data['vaccination_above_60_precaution_dose'];\n // let vacc_total_above_60 = data['vaccination_above_60_total'];\n let label = moment(new Date()).format('HH:mm:ss');\n this.liveVaccChartStreaming12_14.data.labels.push(label);\n this.liveVaccChartStreaming15_17.data.labels.push(label);\n this.liveVaccChartStreaming18_44.data.labels.push(label);\n this.liveVaccChartStreaming45_60.data.labels.push(label);\n // this.liveVaccChartStreamingabove_60.data.labels.push(label);\n\n //12-14\n this.liveVaccChartStreaming12_14.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsDataAge['12_14']) {\n diff = vacc_total_12_14 - this.prevsDataAge['12_14']\n }\n this.prevsDataAge['12_14'] = vacc_total_12_14;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsDataAge['12_14']) {\n diff = vacc_total_12_14 - this.prevsDataAge['12_14']\n }\n this.prevsDataAge['12_14'] = vacc_total_12_14;\n dataset.data.push(diff)\n }\n });\n\n if (this.updateCountTotalVaccAge['12_14'] > this.numberOfElements) {\n this.liveVaccChartStreaming12_14.data.labels.shift();\n this.liveVaccChartStreaming12_14.data.datasets[0].data.shift();\n } else {\n this.updateCountTotalVaccAge['12_14']++;\n }\n this.liveVaccChartStreaming12_14.update();\n this.liveVaccChartStreaming12_14 = this.liveVaccChartStreaming12_14;\n\n //15-17\n this.liveVaccChartStreaming15_17.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsDataAge['15_17']) {\n diff = vacc_total_15_17 - this.prevsDataAge['15_17']\n }\n this.prevsDataAge['15_17'] = vacc_total_15_17;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsDataAge['15_17']) {\n diff = vacc_total_15_17 - this.prevsDataAge['15_17']\n }\n this.prevsDataAge['15_17'] = vacc_total_15_17;\n dataset.data.push(diff)\n }\n });\n\n if (this.updateCountTotalVaccAge['15_17'] > this.numberOfElements) {\n this.liveVaccChartStreaming15_17.data.labels.shift();\n this.liveVaccChartStreaming15_17.data.datasets[0].data.shift();\n } else {\n this.updateCountTotalVaccAge['15_17']++;\n }\n this.liveVaccChartStreaming15_17.update();\n this.liveVaccChartStreaming15_17 = this.liveVaccChartStreaming15_17;\n\n //18-44\n this.liveVaccChartStreaming18_44.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsDataAge['18_44']) {\n diff = vacc_total_18_44 - this.prevsDataAge['18_44']\n }\n this.prevsDataAge['18_44'] = vacc_total_18_44;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsDataAge['18_44']) {\n diff = vacc_total_18_44 - this.prevsDataAge['18_44']\n }\n this.prevsDataAge['18_44'] = vacc_total_18_44;\n dataset.data.push(diff)\n }\n });\n\n if (this.updateCountTotalVaccAge['18_44'] > this.numberOfElements) {\n this.liveVaccChartStreaming18_44.data.labels.shift();\n this.liveVaccChartStreaming18_44.data.datasets[0].data.shift();\n } else {\n this.updateCountTotalVaccAge['18_44']++;\n }\n this.liveVaccChartStreaming18_44.update();\n this.liveVaccChartStreaming18_44 = this.liveVaccChartStreaming18_44;\n\n\n //45-60\n this.liveVaccChartStreaming45_60.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsDataAge['45_60']) {\n diff = vacc_total_45_60 - this.prevsDataAge['45_60']\n }\n this.prevsDataAge['45_60'] = vacc_total_45_60;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsDataAge['45_60']) {\n diff = vacc_total_45_60 - this.prevsDataAge['45_60']\n }\n this.prevsDataAge['45_60'] = vacc_total_45_60;\n dataset.data.push(diff)\n }\n });\n\n if (this.updateCountTotalVaccAge['45_60'] > this.numberOfElements) {\n this.liveVaccChartStreaming45_60.data.labels.shift();\n this.liveVaccChartStreaming45_60.data.datasets[0].data.shift();\n } else {\n this.updateCountTotalVaccAge['45_60']++;\n }\n this.liveVaccChartStreaming45_60.update();\n this.liveVaccChartStreaming45_60 = this.liveVaccChartStreaming45_60;\n\n //above-60\n /*this.liveVaccChartStreamingabove_60.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsDataAge['above_60']) {\n diff = vacc_total_above_60 - this.prevsDataAge['above_60']\n }\n this.prevsDataAge['above_60'] = vacc_total_above_60;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsDataAge['above_60']) {\n diff = vacc_total_above_60 - this.prevsDataAge['above_60']\n }\n this.prevsDataAge['above_60'] = vacc_total_above_60;\n dataset.data.push(diff)\n }\n });\n\n if (this.updateCountTotalVaccAge['above_60'] > this.numberOfElements) {\n this.liveVaccChartStreamingabove_60.data.labels.shift();\n this.liveVaccChartStreamingabove_60.data.datasets[0].data.shift();\n } else {\n this.updateCountTotalVaccAge['above_60']++;\n }\n this.liveVaccChartStreamingabove_60.update();\n this.liveVaccChartStreamingabove_60 = this.liveVaccChartStreamingabove_60; */\n });\n }\n\n loadIndiadata(){\n this.state_id = \"\";\n this.district_id = \"\";\n this.getDashboardData('','');\n this.getVacChartData('');\n }\n\n}\n","
\n
\n
\n
\n \n \n\n
\n
\n \n\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n

\n \n Registrations\n Today\n

\n 0\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n

\n Vaccinations\n Today\n

\n 0\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n

\n Partially Vaccinated\n Today\n

\n 0\n
\n
\n\n
\n \n \n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n

\n \n Fully Vaccinated\n Today\n

\n 0\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n

\n \n 12-14 Vaccinations\n Today\n

\n 0\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n

\n \n 15-17 Vaccinations\n Today\n

\n 0\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n

\n 18-59 Precaution Doses\n Today\n

\n 0\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n

\n 60+ Precaution Doses\n Today\n

\n 0\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n \n \n \n
\n \n
\n \n {{ state.state_name }}\n \n \n \n \n \n {{ district.district_name }}\n
\n
\n
\n
\n
\n \n
\n
\n Json\n
\n
\n Excel\n
\n
\n \n \n \n\n
\n
\n
\n \n
\n
\n \n
\n
\n

\n {{ \"DASHBOARD.Total_Vaccination_Doses\" | translate }}\n \n \n \n

\n

\n {{\n topBlockReport?.vaccination?.total_doses | numberFormat\n }}\n

\n
\n
\n
\n {{\n \"DASHBOARD.Dose_1\" | translate\n }}\n
\n {{\n topBlockReport?.vaccination?.tot_dose_1 | numberFormat\n }}\n
\n
\n
\n {{\n \"DASHBOARD.Dose_2\" | translate\n }}\n
\n {{\n topBlockReport?.vaccination?.tot_dose_2 | numberFormat\n }}\n
\n
\n
\n {{\n \"Precaution Dose\" | translate\n }}\n
\n {{\n topBlockReport?.vaccination?.tot_pd | numberFormat\n }}\n
\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n

\n {{ \"DASHBOARD.Sites_Conducting_Vaccination\" | translate }}\n \n \n \n

\n

\n {{\n topBlockReport?.sites?.total | numberFormat\n }}\n

\n
\n
\n
\n {{\n \"DASHBOARD.Government\" | translate\n }}\n
\n \n {{ topBlockReport?.sites?.govt | numberFormat }}\n

\n
\n
\n
\n {{\n \"DASHBOARD.Private\" | translate\n }}\n
\n \n {{ topBlockReport?.sites?.pvt | numberFormat }}\n

\n
\n
\n
\n
\n
\n \n
\n
\n
\n \n
\n
\n
\n

\n Total Registrations\n \n \n \n

\n

\n {{\n topBlockReport?.registration?.total | numberFormat\n }}\n

\n
\n
\n
\n Age 12-14\n \n
\n \n {{ topBlockReport?.registration?.cit_12_14 | numberFormat }}\n

\n
\n
\n
\n {{ \"Age 15-17\" | translate }}\n \n
\n \n {{ topBlockReport?.registration?.cit_15_17 | numberFormat }}\n

\n
\n
\n
\n {{ \"DASHBOARD.Age_18-44\" | translate }}\n \n
\n \n {{ topBlockReport?.registration?.cit_18_45 | numberFormat }}\n

\n
\n
\n
\n {{ \"DASHBOARD.Age_45+\" | translate }}\n \n
\n \n {{\n topBlockReport?.registration?.cit_45_above | numberFormat\n }}\n

\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n

\n {{ \"DASHBOARD.Vaccination_Trends\" | translate }}\n \n \n \n \n \n \n \n \n \n

\n
\n
\n
\n
\n
    \n
  • \n \n {{ \"DASHBOARD.By_Doses\" | translate }}\n \n
  • \n
  • \n \n {{ \"DASHBOARD.By_Age\" | translate }}\n \n
  • \n
\n
\n
\n
    \n
  • \n \n {{ \"DASHBOARD.Today\" | translate }}\n \n
  • \n
  • \n \n {{ \"DASHBOARD.Last_30_Days\" | translate }}\n \n
  • \n
  • \n \n {{ \"DASHBOARD.All\" | translate }}\n \n
  • \n
\n
\n\n
\n
    \n
  • \n \n {{ \"DASHBOARD.Today\" | translate }}\n \n
  • \n
  • \n \n {{ \"DASHBOARD.Last_30_Days\" | translate }}\n \n
  • \n
  • \n \n {{ \"DASHBOARD.All\" | translate }}\n \n
  • \n
\n
\n
\n
\n\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n \n\n \n
\n
\n
\n
\n

\n Vaccination By Gender\n

\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n

\n Vaccination By Type\n

\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n

\n Vaccination By Age\n

\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n

\n Vaccination Coverage by State/UT\n

\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n \n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n {{ tableData.title }}\n
\n
\n
\n \n Today\n
\n \n {{ tableData.today | numberFormat }}\n
\n
\n
\n \n Total\n
\n \n {{ tableData.total | numberFormat }}\n
\n
\n
\n \n Dose 1\n
\n \n {{\n tableData.partial_vaccinated\n | numberFormat\n }}\n
\n
\n
\n \n Dose 2\n
\n \n {{\n tableData.totally_vaccinated\n | numberFormat\n }}\n
\n
\n
\n \n Precaution Dose\n
\n \n {{\n tableData.precaution_dose\n | numberFormat\n }}\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n\n
\n \n
\n
\n

\n Vaccination By Centers\n

\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n
\n
\n {{\n tableData.title\n }}\n
\n
\n
\n
Today
\n
\n {{ tableData.today | numberFormat }}\n
\n
\n
\n
Total
\n
\n {{ tableData.total | numberFormat }}\n
\n
\n
\n
Dose 1
\n
\n {{\n tableData.partial_vaccinated\n | numberFormat\n }}\n
\n
\n
\n
Dose 2
\n
\n {{\n tableData.totally_vaccinated\n | numberFormat\n }}\n
\n
\n
\n
\n Precaution Dose\n
\n
\n {{\n tableData.precaution_dose\n | numberFormat\n }}\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n\n
\n \n
\n
\n
\n

\n {{ \"DASHBOARD.Registration_Trends\" | translate }}\n \n \n \n \n \n \n \n \n \n

\n
\n
    \n \n \n {{ \"DASHBOARD.Today\" | translate }}\n \n \n \n \n {{ \"DASHBOARD.Last_30_Days\" | translate }}\n \n \n \n \n {{ \"DASHBOARD.All\" | translate }}\n \n \n
\n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n\n
\n
\n
\n \n \n \n \n
\n
\n
\n\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n \n
\n\n
\n
\n
\n
\n
\n \n {{ \"HOME.AEFI_REPORTED\" | translate }}\n \n \n \n \n
\n {{ \"DASHBOARD.Overall\" | translate }} :\n {{ vaccinatedAefiPer }} %\n \n
\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n

\n {{ \"DASHBOARD.Rural_Vs_Urban_Trend\" | translate }}\n

\n
\n
\n
\n
\n \n \n >\n \n
\n
\n
\n
\n
\n
\n \n \n\n\n
\n
\n
\n
\n

\n The figure displayed in the dose counter are provisional and are\n subject to reconciliation.\n

\n

\n The figures for 18 years old (birth year 2004) are included in\n 18-44 age group.\n

\n
\n\n
\n

\n \n \n \n \n Last updated :\n {{ ReportGenerateTime | date: \"yyyy/M/d hh:mm aa\" }}\n

\n
\n
\n
\n
\n","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { TranslateService } from '@ngx-translate/core';\nimport { I18nService } from 'src/app/modules/i18n/i18n.service';\nimport { environment } from 'src/environments/environment';\n\n\n@Component({\n selector: 'app-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss']\n})\nexport class HeaderComponent implements OnInit {\n public urls: any = {};\n langFiles: any = {\n en: 'Dos_and_Donts_for_Citizens.pdf',\n hi: 'Dos_and_Donts_for_Citizens_Hindi.pdf',\n mr: 'Dos_and_Donts_for_Citizens.pdf',\n ml: 'Dos_and_Donts_for_Citizens.pdf',\n pb: 'Dos_and_Donts_for_Citizens.pdf',\n te: 'Dos_and_Donts_for_Citizens.pdf',\n gu: 'Dos_and_Donts_for_Citizens_Gujarati.pdf',\n as: 'Dos_and_Donts_for_Citizens.pdf',\n be: 'Dos_and_Donts_for_Citizens.pdf',\n ka: 'Dos_and_Donts_for_Citizens.pdf',\n or: 'Dos_and_Donts_for_Citizens_Odia.pdf',\n ta: 'Dos_and_Donts_for_Citizens_Tamil.pdf',\n };\n currLang = 'en';\n menuOpen = false;\n maxFontSizeAllowed = 0;\n minFontSizeAllowed = 0;\n dosDontsFileName: any = 'Dos_and_Donts_for_Citizens.pdf';\n constructor(\n public i18nService: I18nService,\n public translate: TranslateService,\n ) {}\n\n ngOnInit(): void {\n this.urls = environment.AppRedirectUrls;\n this.translate.onLangChange.subscribe((e: any) => {\n this.dosDontsFileName = this.langFiles[this.translate.currentLang];\n this.currLang = this.translate.currentLang;\n });\n\n }\n\n scroll(id: string) {\n console.log(`scrolling to ${id}`);\n const el: any = document.getElementById(id);\n el.scrollIntoView();\n }\n\n changeFontSize(event: any) {\n const buttonId = event.target.id;\n const textElements: any = document.querySelectorAll('.accessibility-plugin-ac');\n if (buttonId === 'increase-plugin-ac'){\n this.maxFontSizeAllowed = this.maxFontSizeAllowed + 1;\n if (this.minFontSizeAllowed > 0){\n this.minFontSizeAllowed = this.minFontSizeAllowed - 1;\n }\n\n }else if (buttonId === 'normal-plugin-ac'){\n this.maxFontSizeAllowed = 0;\n this.minFontSizeAllowed = 0;\n }else{\n this.minFontSizeAllowed = this.minFontSizeAllowed + 1;\n if (this.maxFontSizeAllowed > 0){\n this.maxFontSizeAllowed = this.maxFontSizeAllowed - 1;\n }\n }\n\n for (let i = 0; i < textElements.length; i++) {\n const fontsizevalue: any = window.getComputedStyle(textElements[i], null).getPropertyValue('font-size');\n let currentFontSize: any;\n\n currentFontSize = parseInt(fontsizevalue.replace('px', ''));\n\n if (textElements[i].getAttribute('default-font-size') === null){\n\n const att = document.createAttribute('default-font-size');\n\n att.value = currentFontSize.toString();\n\n textElements[i].setAttributeNode(att);\n\n }\n\n if (buttonId === 'increase-plugin-ac'){\n\n currentFontSize = currentFontSize + 1;\n\n }else if (buttonId === 'normal-plugin-ac'){\n\n currentFontSize = textElements[i].getAttribute('default-font-size');\n\n }else{\n\n currentFontSize = currentFontSize - 1;\n\n }\n\n textElements[i].style.fontSize = currentFontSize + 'px';\n\n }\n\n }\n\n\n\n\n\n}\n\n\n","
\n
\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n Ministry of Health and Family Welfare\n \n
\n
\n
\n
    \n \n
    \n 4\"\n class=\"inBtn\"\n >\n A +\n \n \n A\n \n 4\"\n class=\"inBtn\"\n >\n A -\n \n
    \n \n \n \n 4\"\n >\n A +\n \n \n \n \n A\n \n \n \n 4\"\n >\n A -\n \n \n \n
\n \n \n
\n\n \n \n
\n
\n \n \n \n
\n
\n
\n \n
\n \n\n \n\n
\n \n \n
\n \n
\n
\n
\n \n \n
    \n
  • \n \n {{ \"HEADER.VERIFY_CERTIFICATE\" | translate }}\n \n
  • \n
  • \n \n {{ \"HEADER.FAQ\" | translate }}\n \n
  • \n
\n
\n \n
\n \n
\n \n \n \n \n \n \n \n Verify Certificate\n \n FAQ\n \n\n \n \n
\n \n
\n \n
\n \n
\n \n \n
\n
\n","import { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\nimport {MatMenuModule} from '@angular/material/menu';\nimport { PopoverModule } from 'ngx-bootstrap/popover';\nimport { CarouselModule } from 'ngx-bootstrap/carousel';\nimport { HeaderComponent } from './components/header/header.component';\nimport { FooterComponent } from './components/footer/footer.component';\nimport { LanguageComponent } from './components/language/language.component';\nimport { TitleCaseCustomPipe } from './pipes/title-case-custom.pipe';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nconst exportComponents: any = [\n HeaderComponent,\n FooterComponent,\n LanguageComponent,\n];\n\nconst exportDirectives = [\n];\n\nconst exportPipes = [\n TitleCaseCustomPipe,\n];\n\nconst exportModules = [\n CommonModule,\n RouterModule,\n FormsModule,\n ReactiveFormsModule,\n MatMenuModule,\n TranslateModule, \n MatSelectModule,\n MatFormFieldModule\n];\n@NgModule({\n declarations: [\n ...exportComponents,\n ...exportDirectives,\n ...exportPipes\n ],\n imports: [\n ...exportModules,\n CarouselModule.forRoot(),\n ],\n exports: [\n ...exportComponents,\n ...exportDirectives,\n ...exportModules,\n ...exportPipes,\n CarouselModule,\n PopoverModule\n ]\n})\nexport class SharedModule { }\n","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-ps\": \"TJgH\",\n\t\"./ar-ps.js\": \"TJgH\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn-bd\": \"loYQ\",\n\t\"./bn-bd.js\": \"loYQ\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-mx\": \"tbfe\",\n\t\"./es-mx.js\": \"tbfe\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku-kmr\": \"dVgr\",\n\t\"./ku-kmr.js\": \"dVgr\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";","import { NumberFormatPipe } from './modules/pipe/number-format.pipe';\nimport { switchMap } from 'rxjs/operators';\nimport { PublicReportService } from './modules/services/public-report.service';\nimport { Component, OnInit, AfterViewInit, ViewChild, OnChanges,HostListener } from '@angular/core';\nimport * as $ from 'jquery';\nimport { ChartDataSets, ChartLegendItem, ChartOptions, ChartType, Chart } from 'chart.js';\nimport * as _ from 'lodash';\nimport * as _moment from 'moment';\nconst moment = _moment;\nimport { DeviceDetectorService } from 'ngx-device-detector';\nimport { Observable } from 'rxjs';\n// import { Console } from 'console';\nimport { DatePipe } from '@angular/common';\nimport { ActivatedRoute } from '@angular/router';\nimport { I18nService } from './modules/i18n/i18n.service';\nimport { MainDashboardComponent } from './components/main-dashboard/main-dashboard.component';\nimport { RegistrationDashboardComponent } from './components/registration-dashboard/registration-dashboard.component';\nimport { VaccinationDashboardComponent } from './components/vaccination-dashboard/vaccination-dashboard.component';\nimport { TranslateService } from '@ngx-translate/core';\nimport { Title } from '@angular/platform-browser';\nimport{NewMainDashboardComponent} from './components/new-main-dashboard/new-main-dashboard.component'\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss'],\n providers: [DatePipe, NumberFormatPipe]\n})\nexport class AppComponent implements OnInit, AfterViewInit {\n\n @ViewChild(MainDashboardComponent) mainDashboard: MainDashboardComponent;\n @ViewChild(RegistrationDashboardComponent) regDashboardRprt: RegistrationDashboardComponent;\n @ViewChild(VaccinationDashboardComponent) vaccDashboardRprt: VaccinationDashboardComponent;\n @ViewChild(NewMainDashboardComponent) newmainDashboard:NewMainDashboardComponent;\n\n selectedTabLabel = '';\n headerTextLbl = 'State';\n breadCrumbArr = [];\n title = 'cowindashboard';\n reportData;\n stateWiseBeneficiaries;\n dailySessionsSummaryByState;\n dailySessionsData;\n vaccinationDataAtDiffTimes;\n vaccinePlannedGivenData;\n vaccinatedBeneficiaryByGender;\n vaccinatedBeneficiaryByMaterial;\n realTimeChart;\n realTimeChart30Days\n lineChartData;\n vaccinationByDay;\n updateInterval = 300;\n updateCount = 0;\n numberOfElements = 200;\n vaccinationDoneByDay;\n stateArr;\n states;\n statename;\n heading;\n myChartGender;\n myChartBenficiariesVsVaccinated;\n myChartTotalVaccinatedByMaterial;\n myChartTodayTotalVaccination;\n myChartForSessionData;\n districtArr;\n districtList;\n districtListfromstate;\n district_id;\n state_id;\n districtname;\n totally_vaccinated;\n todaysdate;\n statelogo;\n cowinlogo;\n isnational = true;\n mobile = false;\n onload = true;\n districtId;\n datechange;\n totalDoseOne;\n totalDoseTwo;\n myChartDose1VsDose2;\n totaldoses;\n tableheader;\n isStates;\n site_logo;\n type = \"India\";\n currLang = 'en';\n constructor(\n private publicReportService: PublicReportService,\n public deviceService: DeviceDetectorService,\n public datepipe: DatePipe,\n public numberFormatPipe: NumberFormatPipe,\n private activatedRoute: ActivatedRoute,\n private i18nService: I18nService,\n private translate: TranslateService,\n private titleService: Title,\n ) {\n this.activatedRoute.queryParams.subscribe( (params: any) => {\n if(params && params['lang']) {\n this.i18nService.language = params['lang'];\n }\n });\n }\n\n ngOnInit(): void {\n this.currLang = this.translate.currentLang;\n this.translate.onLangChange.subscribe( (r: any) => {\n console.log('translate.onLangChange', r);\n this.currLang = this.translate.currentLang;\n this.titleService.setTitle(this.translate.instant('TITLE'));\n });\n this.todaysdate = new Date();\n this.todaysdate = this.datepipe.transform(this.todaysdate, 'yyyy-MM-dd')\n // document.getElementById(\"dateId\").setAttribute(\"max\", this.todaysdate);\n console.log(\"this.todaysdate\", this.todaysdate)\n if (window.screen.width === 360 || window.screen.width === 768) { // 768px portrait\n this.mobile = true;\n }\n this.states = [\n {\n \"state_id\": 1,\n \"state_code\": \"AN\",\n \"state_name\": \"Andaman and Nicobar Islands\"\n },\n {\n \"state_id\": 2,\n \"state_code\": \"AP\",\n \"state_name\": \"Andhra Pradesh\"\n },\n {\n \"state_id\": 3,\n \"state_code\": \"AR\",\n \"state_name\": \"Arunachal Pradesh\",\n\n },\n {\n \"state_id\": 4,\n \"state_code\": \"AS\",\n \"state_name\": \"Assam\"\n },\n {\n \"state_id\": 5,\n \"state_code\": \"BR\",\n \"state_name\": \"Bihar\"\n },\n {\n \"state_id\": 6,\n \"state_code\": \"CH\",\n \"state_name\": \"Chandigarh\"\n },\n {\n \"state_id\": 7,\n \"state_code\": \"CG\",\n \"state_name\": \"Chhattisgarh\"\n },\n {\n \"state_id\": 8,\n \"state_code\": \"DH\",\n \"state_name\": \"Dadra and Nagar Haveli\"\n },\n {\n \"state_id\": 37,\n \"state_code\": \"DD\",\n \"state_name\": \"Daman and Diu\"\n },\n {\n \"state_id\": 9,\n \"state_code\": \"DL\",\n \"state_name\": \"Delhi\"\n },\n {\n \"state_id\": 10,\n \"state_code\": \"GA\",\n \"state_name\": \"Goa\"\n },\n {\n \"state_id\": 11,\n \"state_code\": \"GJ\",\n \"state_name\": \"Gujarat\"\n },\n {\n \"state_id\": 12,\n \"state_code\": \"HR\",\n \"state_name\": \"Haryana\"\n },\n {\n \"state_id\": 13,\n \"state_code\": \"HP\",\n \"state_name\": \"Himachal Pradesh\"\n },\n {\n \"state_id\": 14,\n \"state_code\": \"JK\",\n \"state_name\": \"Jammu and Kashmir\"\n },\n {\n \"state_id\": 15,\n \"state_code\": \"JH\",\n \"state_name\": \"Jharkhand\"\n },\n {\n \"state_id\": 16,\n \"state_code\": \"KA\",\n \"state_name\": \"Karnataka\"\n },\n {\n \"state_id\": 17,\n \"state_code\": \"KL\",\n \"state_name\": \"Kerala\"\n },\n {\n \"state_id\": 18,\n \"state_code\": \"LA\",\n \"state_name\": \"Ladakh\"\n },\n {\n \"state_id\": 19,\n \"state_code\": \"LD\",\n \"state_name\": \"Lakshadweep\"\n },\n {\n \"state_id\": 20,\n \"state_code\": \"MP\",\n \"state_name\": \"Madhya Pradesh\"\n },\n {\n \"state_id\": 21,\n \"state_code\": \"MH\",\n \"state_name\": \"Maharashtra\"\n },\n {\n \"state_id\": 22,\n \"state_code\": \"MN\",\n \"state_name\": \"Manipur\"\n },\n {\n \"state_id\": 23,\n \"state_code\": \"ML\",\n \"state_name\": \"Meghalaya\"\n },\n {\n \"state_id\": 24,\n \"state_code\": \"MZ\",\n \"state_name\": \"Mizoram\"\n },\n {\n \"state_id\": 25,\n \"state_code\": \"NL\",\n \"state_name\": \"Nagaland\"\n },\n {\n \"state_id\": 26,\n \"state_code\": \"OD\",\n \"state_name\": \"Odisha\"\n },\n {\n \"state_id\": 27,\n \"state_code\": \"PY\",\n \"state_name\": \"Puducherry\"\n },\n {\n \"state_id\": 28,\n \"state_code\": \"PB\",\n \"state_name\": \"Punjab\"\n },\n {\n \"state_id\": 29,\n \"state_code\": \"RJ\",\n \"state_name\": \"Rajasthan\"\n },\n {\n \"state_id\": 30,\n \"state_code\": \"SK\",\n \"state_name\": \"Sikkim\"\n },\n {\n \"state_id\": 31,\n \"state_code\": \"TN\",\n \"state_name\": \"Tamil Nadu\"\n },\n {\n \"state_id\": 32,\n \"state_code\": \"TS\",\n \"state_name\": \"Telangana\"\n },\n {\n \"state_id\": 33,\n \"state_code\": \"TR\",\n \"state_name\": \"Tripura\"\n },\n {\n \"state_id\": 34,\n \"state_code\": \"UP\",\n \"state_name\": \"Uttar Pradesh\"\n },\n {\n \"state_id\": 35,\n \"state_code\": \"UK\",\n \"state_name\": \"Uttarakhand\"\n },\n {\n \"state_id\": 36,\n \"state_code\": \"WB\",\n \"state_name\": \"West Bengal\"\n }\n\n ]\n // this.getReportData();\n // this.getReportDataforDate()\n // this.getNewDashboardData();\n // this.initializeRealTimeChart();\n // this.updateData();\n // console.log(\"check\", this.publicReportService.filterParams.heading);\n this.heading = this.publicReportService.filterParams.heading ? this.publicReportService.filterParams.heading : \"National\";\n this.site_logo = this.publicReportService.filterParams.site_logo ? this.publicReportService.filterParams.site_logo : \"AN\";\n\n this.publicReportService.getSessionStatus().subscribe(val => {\n console.log(\"checking22\", val);\n if (val != undefined) {\n\n this.state_id = val;\n if(this.state_id){\n this.stateArr = this.states.find(e => e.state_id == val);\n this.heading = this.stateArr.state_name;\n this.site_logo = this.stateArr.state_code;\n }\n //console.log(\"this.stateArr\", this.stateArr);\n // if(val==''){\n // this.heading = \"National\";\n // }\n }\n })\n\n\n\n this.publicReportService.getNationalStatus().subscribe(val => {\n this.heading = \"National\";\n if (val != undefined) {\n //console.log(\"checking\", val);\n\n this.heading = \"National\";\n this.site_logo = \"AN\";\n\n }\n })\n\n this.publicReportService.getDistrictID().subscribe(val => {\n if (val != undefined) {\n //console.log(\"checking\", val);\n\n this.district_id = val;\n\n }\n })\n\n // this.publicReportService.getType().subscribe(val => {\n\n // console.log(\"type\", this.state_id)\n // if (val != undefined) {\n\n // this.type = val;\n // this.breadCrumbArr = [];\n // if(this.type == 'State'){\n // if(this.state_id){\n\n // this.stateArr = this.states.find(e => e.state_id == this.state_id);\n // this.heading = this.stateArr.state_name;\n // this.site_logo = this.stateArr.state_code;\n // }\n\n // }else if(this.type == 'District'){\n // this.stateArr = this.states.find(e => e.state_id == this.state_id);\n // this.site_logo = this.stateArr.state_code;\n // this.heading = this.districtname;\n // }else if(this.type == 'India'){\n // this.heading = 'National';\n // this.site_logo = 'AN';\n // }else{\n // this.heading = 'National';\n // this.site_logo = 'AN';\n // console.log('test');\n // }\n\n // }\n // })\n\n this.publicReportService.getStatename().subscribe(val => {\n if (val != undefined) {\n //console.log(\"checking\", val);\n\n this.statename = val;\n\n }\n })\n\n this.publicReportService.getDistrictname().subscribe(val => {\n console.log(\"checking3\", val);\n if (val && val != undefined) {\n console.log(\"checking123\", val);\n this.districtname = val;\n this.heading = val;\n console.log(\"heading\", this.heading)\n }\n })\n\n // this.publicReportService.getTabname().subscribe(val => {\n\n // if (val != undefined) {\n // //console.log(\"checkingddd\", val);\n // if (val === 'Registration' || val === 'Vaccination' ) {\n // this.heading = \"National\";\n // this.site_logo = \"AN\";\n // }else if(val === 'Dashboard'){\n // //console.log('state'+this.state_id+' '+this.district_id+' '+this.districtname);\n // if(this.state_id){\n // //console.log(\"testing22\", this.state_id);\n // this.stateArr = this.states.find(e => e.state_id == this.state_id);\n // this.heading = this.stateArr.state_name;\n // this.site_logo = this.stateArr.state_code;\n // }\n // if(this.districtname){\n // //console.log(\"district\", val);\n // this.stateArr = this.states.find(e => e.state_id == this.state_id);\n // this.heading = this.districtname\n // this.site_logo = this.stateArr.state_code;\n // }\n // //console.log(\"testing\", val);\n\n // }\n\n\n // }\n // })\n\n\n\n }\n\n ngAfterViewInit() {\n\n let activeTabLbl = 'Dashboard';\n this.publicReportService.tabname.next(\"Dashboard\");\n this.loadReportByTab(activeTabLbl)\n //this.loadReportByTab(activeTabLbl)\n }\n // ngOnChanges() {\n\n // this.heading = this.publicReportService.filterParams.heading ? this.publicReportService.filterParams.heading : \"National\";\n // this.site_logo = this.publicReportService.filterParams.site_logo ? this.publicReportService.filterParams.site_logo : \"AN\";\n // }\n\n\n\n topBlockReport;\n lineChartDataNew = [];\n lastSevenDaysReg = [];\n getBeneficiariesGroupBy = [];\n last7DaysVaccination = [];\n lastSevenDaysAppointment = [];\n\n lastSevenDayVaccChart;\n lastSevenDayChart;\n genderVaccPieChart;\n materialVaccPieChart;\n lastSevenDayAppointmentChart;\n\n\n // nextLevel(type, state_id='', district_id='') {\n // this.headerTextLbl = type;\n // this.state_id = state_id;\n // this.district_id = district_id;\n // console.log(type);\n // if(this.headerTextLbl == 'Center') {\n // this.isnational = false;\n // this.onload = false;\n // return;\n // }else if(this.headerTextLbl === 'India') {\n // this.heading = 'National';\n // this.isnational = true;\n // this.onload = true;\n // this.breadCrumbArr = [];\n // this.headerTextLbl = 'State';\n // this.getNewDashboardData('','');\n // }else if(this.headerTextLbl === 'State') {\n // this.breadCrumbArr = [];\n // this.isnational = false;\n // this.onload = false;\n // this.stateArr = this.states.find(e => e.state_id == this.state_id);\n // this.statename = this.stateArr.state_name;\n // this.heading = this.statename;\n // this.statelogo = this.stateArr.state_code;\n // this.breadCrumbArr.push({\n // type: 'India',\n // id: '',\n // name: 'India'\n // });\n // this.breadCrumbArr.push({\n // type: 'State',\n // id: this.state_id,\n // state_id: this.state_id,\n // state_name: this.statename,\n // name: this.statename\n // });\n // // this.isStatelogin = true;\n // this.headerTextLbl = 'District';\n // this.getNewDashboardData(this.state_id,'');\n // } else if(this.headerTextLbl === 'District') {\n // this.isnational = false;\n // this.onload = false;\n // this.state_id = 2;\n // this.stateArr = this.states.find(e => e.state_id == this.state_id);\n // console.log(this.stateArr);\n // this.statename = this.stateArr.state_name;\n // this.statelogo = this.stateArr.state_code;\n // if(this.breadCrumbArr.length == 0) {\n // this.breadCrumbArr = [];\n // this.breadCrumbArr.push({\n // type: 'State',\n // id: this.state_id,\n // state_name: this.statename,\n // state_id: this.state_id,\n // name: this.statename\n // });\n // }\n // this.districtArr = this.getBeneficiariesGroupBy.find(e => e.district_id == this.district_id);\n // this.districtname = this.districtArr.district_name;\n // this.heading = this.districtname;\n // this.breadCrumbArr.push({\n // type: 'District',\n // id: this.district_id,\n // district_id: this.district_id,\n // district_name: this.districtname,\n // name: this.districtname\n // });\n // this.headerTextLbl = 'Center';\n // this.getNewDashboardData(this.state_id, this.district_id);\n // }\n // }\n\n // getNewDashboardData(state_id=\"\",district_id=\"\") {\n // this.state_id = state_id;\n // this.district_id = district_id;\n // this.state_id = state_id;\n // this.district_id = district_id;\n\n // this.publicReportService.getPublicReports(state_id,district_id,this.todaysdate).subscribe(res => {\n // console.log(\"res\",res);\n // this.reportData = res;\n // this.topBlockReport = res.topBlock;\n // this.lineChartDataNew = res.vaccinationDoneByTime;\n // this.lastSevenDaysReg = res.last7DaysRegistration;\n // this.getBeneficiariesGroupBy = res.getBeneficiariesGroupBy;\n // this.last7DaysVaccination = res.last7DaysVaccination;\n // this.lastSevenDaysAppointment = res.last7DaysRegistration;\n // this.prepareDataForSemiPieChartsNew();\n // this.prepareDataForLineGraphNew();\n // this.prepareDataForStackedBarRegGraphNew();\n // this.prepareDataForLastSevenDaysVacc();\n\n // if(this.state_id =='' && this.district_id == ''){\n // this.tableheader = \" Vaccination By State/UT\"\n // }else if(this.state_id !='' && this.district_id == ''){\n // this.tableheader = \" Vaccination By District\";\n // }else if(this.state_id !='' && this.district_id != ''){\n // this.tableheader = \" Vaccination By Center\";\n // }\n // });\n // }\n\n // prepareDataForLastSevenDaysVacc() {\n // const format = this.numberFormatPipe;\n // if ( this.lastSevenDayVaccChart) {\n // this.lastSevenDayVaccChart.destroy();\n // }\n // const labels = this.last7DaysVaccination.map(obj => moment(obj.vaccine_date).format('DD MMM'));\n // const doseOne = this.last7DaysVaccination.map(obj => obj.dose_one);\n // const doseTwo = this.last7DaysVaccination.map(obj => obj.dose_two);\n // var vaccConfig = {\n // type: 'bar',\n // data: {\n // labels: labels,\n // datasets: [{\n // type: 'bar',\n // label: 'Dose 1',\n // backgroundColor: \"rgb(85 86 253)\",\n // borderColor: \"rgb(85 86 253)\",\n // data: doseOne,\n // }, {\n // type: 'bar',\n // label: 'Dose 2',\n // backgroundColor: \"rgb(75 222 219)\",\n // borderColor: \"rgb(75 222 219)\",\n // data: doseTwo,\n // }]\n // },\n // options: {\n // legend: {\n // display: true,\n // position: 'bottom',\n // labels: {\n // usePointStyle: false,\n // fontSize: 10,\n // boxWidth: 10,\n // padding: 15,\n // }\n // },\n // tooltips: {\n // mode: 'index',\n // intersect: false,\n // callbacks: {\n // label: function(tooltipItem, data) {\n // var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n // if (label) {\n // label += ': ';\n // }\n // const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n // label += format.transform(dataNum);\n // return label;\n // }\n // }\n // },\n // scales: {\n // xAxes: [{\n // barPercentage: 0.25,\n // beginAtZero: true,\n // ticks: {\n // autoSkip: false,\n // fontSize: 10,\n // },\n // stacked: true,\n // gridLines: {\n // display: false,\n // drawBorder: false,\n // },\n // }],\n // yAxes: [{\n // stacked: true,\n // barPercentage: 0.35,\n // gridLines: {\n // color: 'rgb(247, 250, 252)',\n // borderDash: [5, 0],\n // zeroLineColor: 'rgb(247, 250, 252)',\n // },\n // ticks: {\n // fontSize: 11,\n // }\n // }]\n // },\n // }\n // };\n\n // var ctx = $('#vaccine-last-30');\n // this.lastSevenDayVaccChart = new Chart(ctx, vaccConfig);\n // }\n\n // prepareDataForSemiPieChartsNew() {\n // const format = this.numberFormatPipe;\n // var configcmr2 = {\n // type: 'pie',\n // data: {\n // datasets: [{\n // data: [\n // this.topBlockReport?.vaccination?.male,\n // this.topBlockReport?.vaccination?.female,\n // this.topBlockReport?.vaccination?.others\n // ],\n // backgroundColor: ['rgb(90, 141, 238)', 'rgb(245, 67, 148)', 'rgb(255 152 0)'],\n // borderWidth: 1,\n // }],\n // labels: ['Male', 'Female', 'Other']\n // },\n // options: {\n // cutoutPercentage: 70,\n // rotation: 1 * Math.PI,\n // circumference: 1 * Math.PI,\n // responsive: true,\n // animation: {\n // animateScale: true,\n // animateRotate: true\n // },\n // tooltips: {\n // mode: 'index',\n // intersect: false,\n // callbacks: {\n // label: function(tooltipItem, data) {\n // var label = data.labels[tooltipItem.index] || '';\n\n // if (label) {\n // label += ': ';\n // }\n // const value = data.datasets[0].data[tooltipItem.index] || 0\n // const dataNum = Math.round(value * 100) / 100;\n // label += format.transform(dataNum);\n // return label;\n // }\n // }\n // },\n // legend: {\n // display: true,\n // position: 'bottom',\n // labels: {\n // usePointStyle: true,\n // boxWidth: 7,\n // padding: 15,\n // fontSize: 10,\n // }\n // }\n // }\n // };\n\n // var configcmr22 = {\n // type: 'pie',\n // data: {\n // datasets: [{\n // data: [\n // this.topBlockReport?.vaccination?.covishield,\n // this.topBlockReport?.vaccination?.covaxin\n // ],\n // backgroundColor: ['rgb(104 177 241)', 'rgb(81 202 158)'],\n // borderWidth: 1,\n // }],\n // labels: ['Covishield', 'Covaxin']\n // },\n // options: {\n // cutoutPercentage: 70,\n // rotation: 1 * Math.PI,\n // circumference: 1 * Math.PI,\n // responsive: true,\n // animation: {\n // animateScale: true,\n // animateRotate: true\n // },\n // tooltips: {\n // mode: 'index',\n // intersect: false,\n // callbacks: {\n // label: function(tooltipItem, data) {\n // var label = data.labels[tooltipItem.index] || '';\n\n // if (label) {\n // label += ': ';\n // }\n // const value = data.datasets[0].data[tooltipItem.index] || 0\n // const dataNum = Math.round(value * 100) / 100;\n // label += format.transform(dataNum);\n // return label;\n // }\n // }\n // },\n // legend: {\n // display: true,\n // position: 'bottom',\n // labels: {\n // usePointStyle: true,\n // boxWidth: 7,\n // padding: 15,\n // fontSize: 10,\n // }\n // }\n // }\n // };\n\n // if (this.genderVaccPieChart) {\n // this.genderVaccPieChart.destroy()\n // }\n\n // if (this.materialVaccPieChart) {\n // this.materialVaccPieChart.destroy()\n // }\n\n // const genderCtx = $('#total-vaccinated-gender');\n // this.genderVaccPieChart = new Chart(genderCtx, configcmr2);\n\n // const materialCtx = $('#material-used');\n // this.materialVaccPieChart = new Chart(materialCtx, configcmr22);\n // }\n\n // prepareDataForStackedBarRegGraphNew() {\n // if ( this.lastSevenDayChart) {\n // this.lastSevenDayChart.destroy();\n // }\n // const ctx = $('#lastSevenReg');\n // const labels = this.lastSevenDaysReg.map(obj => {\n // return moment(obj.reg_date).format('DD MMM')\n // });\n // const maleData = this.lastSevenDaysReg.map(obj => {\n // return obj.male;\n // });\n\n // const femaleData = this.lastSevenDaysReg.map(obj => {\n // return obj.female;\n // });\n\n // const othersData = this.lastSevenDaysReg.map(obj => {\n // return obj.others;\n // });\n // const format = this.numberFormatPipe;\n // var lastSevenDayRegChartObj = {\n // type: 'bar',\n // data: {\n // labels: labels,\n // datasets: [{\n // type: 'bar',\n // label: 'Male',\n // backgroundColor: \"rgb(85 86 253)\",\n // borderColor: \"rgb(85 86 253)\",\n // data: maleData,\n // }, {\n // type: 'bar',\n // label: 'Female',\n // backgroundColor: \"rgba(255,105,165)\",\n // borderColor: \"rgba(255,105,165)\",\n // data: femaleData,\n // },\n // {\n // type: 'bar',\n // label: 'Others',\n // backgroundColor: \"rgb(72, 219, 179)\",\n // borderColor: \"rgb(72, 219, 179)\",\n // data: othersData,\n // }]\n // },\n // options: {\n // tooltips: {\n // mode: 'index',\n // intersect: false,\n // callbacks: {\n // label: function(tooltipItem, data) {\n // var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n // if (label) {\n // label += ': ';\n // }\n // const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n // label += format.transform(dataNum);\n // return label;\n // }\n // }\n // },\n // legend: {\n // display: true,\n // position: 'bottom',\n // labels: {\n // usePointStyle: false,\n // fontSize: 10,\n // boxWidth: 10,\n // padding: 15,\n // }\n // },\n // scales: {\n // xAxes: [{\n // barPercentage: 0.25,\n // beginAtZero: true,\n // ticks: {\n // autoSkip: false,\n // fontSize: 10\n // },\n // stacked: true,\n // gridLines: {\n // display: false,\n // drawBorder: false,\n // },\n // }],\n // yAxes: [{\n // stacked: true,\n // barPercentage: 0.35,\n // gridLines: {\n // color: 'rgb(247, 250, 252)',\n // borderDash: [5, 0],\n // zeroLineColor: 'rgb(247, 250, 252)',\n // },\n // ticks: {\n // fontSize: 11,\n // }\n // }]\n // },\n // }\n // };\n\n // this.lastSevenDayChart = new Chart(ctx,lastSevenDayRegChartObj);\n\n // // lastSevenReg\n // }\n\n //last seven days appointments\n // prepareDataForStackedBarAppointmentGraphNew() {\n // if ( this.lastSevenDayAppointmentChart) {\n // this.lastSevenDayAppointmentChart.destroy();\n // }\n // const ctx = $('#lastSevenAppointment');\n // const labels = this.lastSevenDaysAppointment.map(obj => {\n // return moment(obj.reg_date).format('DD MMM')\n // });\n // const maleData = this.lastSevenDaysAppointment.map(obj => {\n // return obj.male;\n // });\n\n // const femaleData = this.lastSevenDaysAppointment.map(obj => {\n // return obj.female;\n // });\n\n // const othersData = this.lastSevenDaysAppointment.map(obj => {\n // return obj.others;\n // });\n // const format = this.numberFormatPipe;\n // var lastSevenDayAppointmentChartObj = {\n // type: 'bar',\n // data: {\n // labels: labels,\n // datasets: [{\n // type: 'bar',\n // label: 'Male',\n // backgroundColor: \"rgb(85 86 253)\",\n // borderColor: \"rgb(85 86 253)\",\n // data: maleData,\n // }, {\n // type: 'bar',\n // label: 'Female',\n // backgroundColor: \"rgba(255,105,165)\",\n // borderColor: \"rgba(255,105,165)\",\n // data: femaleData,\n // },\n // {\n // type: 'bar',\n // label: 'Others',\n // backgroundColor: \"rgb(72, 219, 179)\",\n // borderColor: \"rgb(72, 219, 179)\",\n // data: othersData,\n // }]\n // },\n // options: {\n // tooltips: {\n // mode: 'index',\n // intersect: false,\n // callbacks: {\n // label: function(tooltipItem, data) {\n // var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n // if (label) {\n // label += ': ';\n // }\n // const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n // label += format.transform(dataNum);\n // return label;\n // }\n // }\n // },\n // legend: {\n // display: true,\n // position: 'bottom',\n // labels: {\n // usePointStyle: false,\n // fontSize: 10,\n // boxWidth: 10,\n // padding: 15,\n // }\n // },\n // scales: {\n // xAxes: [{\n // barPercentage: 0.25,\n // beginAtZero: true,\n // ticks: {\n // autoSkip: false,\n // fontSize: 10\n // },\n // stacked: true,\n // gridLines: {\n // display: false,\n // drawBorder: false,\n // },\n // }],\n // yAxes: [{\n // stacked: true,\n // barPercentage: 0.35,\n // gridLines: {\n // color: 'rgb(247, 250, 252)',\n // borderDash: [5, 0],\n // zeroLineColor: 'rgb(247, 250, 252)',\n // },\n // ticks: {\n // fontSize: 11,\n // }\n // }]\n // },\n // }\n // };\n\n // this.lastSevenDayAppointmentChart = new Chart(ctx,lastSevenDayAppointmentChartObj);\n\n // // lastSevenAppointment\n // }\n\n\n // prepareDataForLineGraphNew() {\n // if ( this.realTimeChart) {\n // this.realTimeChart.destroy();\n // }\n\n\n // const ctx = $('#realtime');\n\n // this.lineChartData = this.lineChartDataNew.sort((a, b) => (a.timestamps > b.timestamps) ? 1 : -1)\n // console.log(\"this.lineChartData1\", this.lineChartDataNew)\n\n // /* const labels = _.map(this.lineChartData,(data) => {\n // return data.label;\n // }); */\n // const labels = _.map(this.lineChartDataNew,(data) => {\n // return moment(data.timestamps).subtract(330,\"minutes\").format('HH:mm');\n // });\n // console.log(\"lable\",labels )\n // const data1 = _.map(this.lineChartDataNew,'count');\n // const data2 = _.map(this.lineChartDataNew,'dose_one');\n // const data3 = _.map(this.lineChartDataNew,'dose_two');\n // const format = this.numberFormatPipe;\n // var vaccConfig = {\n // type: 'line',\n // data: {\n // labels: labels,\n // datasets: [{\n // type: 'line',\n // label: 'Total',\n // // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n // // backgroundColor: \"rgb(255, 152 , 0, 0.8)\",\n // borderColor: \"rgb(255, 152 , 0, 0.8)\",\n // borderWidth: 1,\n // pointBackgroundColor: \"rgb(255, 152 , 0)\",\n // pointBorderColor: 'rgb(255, 255, 255)',\n // pointBorderWidth: 1,\n // pointRadius: 3,\n // fill: true,\n // data: data1,\n // } ,{\n // type: 'line',\n // label: 'Dose 2',\n // backgroundColor: 'rgb(41, 184, 155, 0.5)',\n // borderColor: \"rgb(41, 184, 155)\",\n // borderWidth: 1,\n // pointBackgroundColor: 'rgb(41, 184, 155)',\n // pointBorderColor: 'rgb(255, 255, 255)',\n // pointBorderWidth: 1,\n // pointRadius: 3,\n // fill: true,\n // data: data3,\n // },\n // {\n // type: 'line',\n // label: 'Dose 1',\n // backgroundColor: \"rgb(73 105 233 / 20%)\",\n // borderColor: \"rgb(73 105 233)\",\n // borderWidth: 1,\n // pointBackgroundColor: 'rgb(73 105 233)',\n // pointBorderColor: 'rgb(255, 255, 255)',\n // pointBorderWidth: 1,\n // pointRadius: 3,\n // fill: true,\n // data: data2,\n // }]\n // },\n // options: {\n // legend: {\n // display: true,\n // position: 'bottom',\n // labels: {\n // usePointStyle: false,\n // boxWidth: 20,\n // padding: 15,\n // fontSize: 9,\n // }\n // },\n // tooltips: {\n // mode: 'index',\n // intersect: false,\n // callbacks: {\n // label: function(tooltipItem, data) {\n // var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n // if (label) {\n // label += ': ';\n // }\n // const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n // label += format.transform(dataNum);\n // return label;\n // }\n // }\n // },\n // responsive: true,\n // scales: {\n // xAxes: [{\n // beginAtZero: false,\n // ticks: {\n // autoSkip: false,\n // fontSize: 11,\n // },\n // // stacked: true,\n // gridLines: {\n // display: false,\n // drawBorder: false,\n // },\n // }],\n // yAxes: [{\n // // stacked: true,\n // barPercentage: 0.3,\n // gridLines: {\n // color: 'rgb(247, 250, 252)',\n // borderDash: [5, 2],\n // zeroLineColor: 'rgb(247, 250, 252)',\n // },\n // ticks: {\n // fontSize: 11,\n // beginAtZero: true,\n // }\n // }]\n // }\n // }\n // };\n\n // this.realTimeChart = new Chart(ctx, vaccConfig);\n // this.realTimeChart.update();\n // }\n\n\n\n //new code from vinod - 11/02/2021\n\n loadReportByTab(textLabel) {\n console.log('textLabel', textLabel);\n this.publicReportService.tabname.next(textLabel);\n if (textLabel === 'Dashboard') {\n this.publicReportService.tabname.next('Dashboard');\n // this.publicReportService.getTabname().subscribe(val => {\n\n // if (val && val != undefined) {\n // console.log(\"checkingddd\", val);\n\n // console.log(\"test\", val);\n // this.stateArr = this.states.find(e => e.state_id == this.state_id);\n // this.heading = this.stateArr.state_name;\n // this.site_logo = this.stateArr.state_code;\n\n\n // }\n // })\n // this.mainDashboard.getNewDashboardData();\n // this.mainDashboard.getNewDashboardData();\n this.newmainDashboard.getDashboardData();\n\n this.newmainDashboard.getVacChartData('Today');\n // this.mainDashboard.getVaccChartAgewiseDataMonth('Last 30 Days');\n\n // this.mainDashboard.getRegChartDataMonth('Last 30 Days');\n // this.mainDashboard.getUptrendVacChartDataMonth('Last 30 Days');\n // this.mainDashboard.getVacChartData('Today');\n\n\n } else if (textLabel === 'Registration') {\n\n this.regDashboardRprt.getRegistrationDashboard(this.todaysdate);\n\n } else if (textLabel === 'Vaccination') {\n // this.vaccDashboardRprt.getVaccinationDashboard(this.todaysdate);\n this.vaccDashboardRprt.nextLevel(this.type);\n }\n }\n\n @HostListener('window:scroll', ['$event'])\n onWindowScroll(e:any) {\n if (window.pageYOffset > 100) {\n let element:any = document.getElementById('navbar');\n element.classList.add('sticky');\n } else {\n let element:any = document.getElementById('navbar');\n element.classList.remove('sticky');\n }\n }\n\n}\n\n\n","
\n\n \n\n\n\n\n\n
\n \n\n
\n\n \n\n\n\n\n\n
\n\n\n
\n \n\n \n\n\n\n\n\n\n","import { Router, NavigationEnd } from '@angular/router';\nimport { Component, OnInit } from '@angular/core';\n\nimport * as $ from 'jquery'\nimport { I18nService } from 'src/app/modules/i18n/i18n.service';\nimport { environment } from 'src/environments/environment';\nimport { TranslateService } from '@ngx-translate/core';\n\n@Component({\n selector: 'app-footer',\n templateUrl: './footer.component.html',\n styleUrls: ['./footer.component.scss']\n})\nexport class FooterComponent implements OnInit {\n public urls = environment.AppRedirectUrls;\n currLang = 'en';\n constructor(\n public i18nService: I18nService,\n private translate: TranslateService,\n ) {}\n ngOnInit(): void {\n this.currLang = this.translate.currentLang;\n this.translate.onLangChange.subscribe((e: any) => {\n this.currLang = this.translate.currentLang;\n });\n }\n\n\n}\n","\n\n
\n
\n
\n
\n
\n
\n
\n

\n {{ \"HEADER.Vaccination_Services\" | translate }}\n

\n
    \n \n \n {{ \"HEADER.Register_Members\" | translate }}\n \n \n \n {{ \"HEADER.Search_Vaccination_Centers\" | translate }}\n \n \n {{ \"HEADER.Book_Vaccination_Slots\" | translate }}\n \n \n \n {{ \"HEADER.Manage_Appointment\" | translate }}\n \n \n \n {{ \"HEADER.Download_Certificate\" | translate }}\n \n
\n
\n
\n

\n {{ \"HEADER.Platforms\" | translate }}\n

\n
    \n \n \n \n CoWIN\n International\n \n \n \n {{ \"HEADER.VACCINATOR\" | translate }}\n \n \n \n {{ \"HEADER.DEPARTMENT_LOGIN\" | translate }}\n \n \n \n {{ \"FOOTER.Verify_Certificates\" | translate }}\n \n \n {{ \"HEADER.Vaccination_Statistics\" | translate }}\n \n
\n
\n
\n

\n {{ \"HEADER.Resources\" | translate }}\n

\n
    \n \n \n {{ \"HOME.DOS_AND_DONTS\" | translate }}\n \n \n\n \n {{ \"HEADER.Overview\" | translate }}\n \n \n \n API\n Guidelines\n \n \n \n {{ \"HEADER.OPEN_APIS\" | translate }}\n \n \n\n \n \n Grievance\n Guidelines\n \n \n
\n
\n\n
\n

\n {{ \"HOME.Support\" | translate }}\n

\n \n
\n
\n
\n
\n
\n \n

\n {{ \"HOME.Support\" | translate }}\n

\n \n
\n
\n

\n {{ \"HEADER.Contactus\" | translate }}\n

\n
\n
\n

\n {{ \"HOME.HELPLINE\" | translate }}:\n \n +91-11-23978046\n ({{ \"HEADER.Toll free\" | translate }} -\n 1075\n \n  / 104\n \n\n )\n \n

\n

\n {{ \"HOME.Technical_Helpline\" | translate }}:\n 0120-4783222\n

\n \n \n
\n
\n
\n
\n\n \n \n \n
\n
\n\n \n
\n \n
\n
\n
\n
\n \n {{ \"FOOTER.COPYRIGHT\" | translate }}\n

\n
\n
\n \n
\n \n
\n \n {{ \"FOOTER.TERMS\" | translate }}\n \n
\n
\n \n {{ \"FOOTER.PRIVACY\" | translate }}\n \n
\n
\n
\n
\n
\n \n\n \n \n\n\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'numberFormat'\n})\nexport class NumberFormatPipe implements PipeTransform {\n\n transform(value: number): string {\n let returnValue = '0';\n if (value) {\n returnValue = Number(''+value).toLocaleString('en-IN')\n }\n return returnValue;\n }\n\n}\n","import { BrowserModule } from '@angular/platform-browser';\nimport { NgModule } from '@angular/core';\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { AppRoutingModule } from './app-routing.module';\nimport { AppComponent } from './app.component';\nimport { TokenInterceptor } from './interceptors/token.interceptor';\nimport { CountUpModule } from 'ngx-countup';\nimport { NumberFormatPipe } from './modules/pipe/number-format.pipe';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { MainDashboardComponent } from './components/main-dashboard/main-dashboard.component';\nimport { RegistrationDashboardComponent } from './components/registration-dashboard/registration-dashboard.component';\nimport { VaccinationDashboardComponent } from './components/vaccination-dashboard/vaccination-dashboard.component';\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\nimport { TabsModule } from 'ngx-bootstrap/tabs';\nimport { SharedModule } from './modules/shared/shared.module';\nimport { I18nModule } from './modules/i18n/i18n.module';\nimport { NewMainDashboardComponent } from './components/new-main-dashboard/new-main-dashboard.component';\nimport { HeatmapBubbleComponent } from './components/heatmap-bubble/heatmap-bubble.component';\n\n\n\n@NgModule({\n declarations: [\n AppComponent,\n NumberFormatPipe,\n MainDashboardComponent,\n RegistrationDashboardComponent,\n VaccinationDashboardComponent,\n NewMainDashboardComponent,\n HeatmapBubbleComponent\n ],\n imports: [\n BrowserModule,\n AppRoutingModule,\n HttpClientModule,\n CountUpModule,\n SharedModule,\n I18nModule,\n BrowserAnimationsModule,\n TooltipModule.forRoot(),\n TabsModule.forRoot()\n ],\n providers: [\n {\n provide: HTTP_INTERCEPTORS,\n useClass: TokenInterceptor,\n multi: true\n }\n ],\n bootstrap: [AppComponent]\n})\nexport class AppModule { }\n","import { HttpClient, HttpClientModule } from '@angular/common/http';\nimport { NgModule, Optional, SkipSelf } from '@angular/core';\nimport { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';\nimport { i18nTranslateLoader } from './i18n-loader';\nimport { I18nService } from './i18n.service';\nimport { environment } from 'src/environments/environment';\n\n\n@NgModule({\n imports: [\n HttpClientModule,\n TranslateModule.forRoot()\n // TranslateModule.forRoot({\n // loader: {\n // provide: TranslateLoader,\n // useFactory: i18nTranslateLoader,\n // deps: [HttpClient]\n // }\n // }),\n ],\n exports: [TranslateModule]\n})\nexport class I18nModule {\n constructor(\n @Optional() @SkipSelf() parentModule: I18nModule,\n translate: TranslateService,\n i18nService: I18nService,\n ) {\n i18nService.init(environment.defaultLanguage, environment.supportedLanguages);\n }\n}\n\n","import { Observable } from 'rxjs';\nimport { Injectable } from '@angular/core';\nimport { environment } from 'src/environments/environment';\nimport {io} from 'socket.io-client';\n\n@Injectable({providedIn: 'root'})\nexport class WebSocketService {\n\n private socketLiveCounter: any;\n private socketLiveCounterAge: any;\n constructor() {\n this.liveCounterSocketConnect();\n }\n\n liveCounterSocketConnect() {\n try {\n this.socketLiveCounter = io(`${environment.socket_live_counter_url_port}`, {transports: ['websocket']}).connect();\n this.socketLiveCounterAge = io(`${environment.socket_live_counter_url_port_age}`, {transports: ['websocket']}).connect();\n } catch(err) {\n console.log(err);\n }\n }\n\n listen(eventName: string) {\n return new Observable((subscriber) => {\n this.socketLiveCounter.on(eventName, (data: any) => {\n subscriber.next(data);\n })\n })\n }\n\n listenAgeSocket(eventName: string) {\n return new Observable((subscriber) => {\n this.socketLiveCounterAge.on(eventName, (data: any) => {\n subscriber.next(data);\n })\n })\n }\n emit(eventName: string, data: any) {\n this.socketLiveCounter.emit(eventName, data);\n }\n\n disconnect() {\n if (this.socketLiveCounter) {\n try {\n this.socketLiveCounter.disconnect();\n } catch (error) {\n console.log(error);\n }\n }\n }\n disconnectAge() {\n if (this.socketLiveCounterAge) {\n try {\n this.socketLiveCounterAge.disconnect();\n } catch (error) {\n console.log(error);\n }\n }\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { DatePipe } from '@angular/common';\nimport { DeviceDetectorService } from 'ngx-device-detector';\nimport { ChartDataSets, ChartLegendItem, ChartOptions, ChartType, Chart } from 'chart.js';\nimport * as $ from 'jquery';\nimport { NumberFormatPipe } from '../../modules/pipe/number-format.pipe';\nimport { PublicReportService } from '../../modules/services/public-report.service';\nimport { ConfigurableFocusTrap } from '@angular/cdk/a11y';\nimport * as _ from 'lodash';\nimport * as _moment from 'moment';\nconst moment = _moment;\n\n@Component({\n selector: 'app-vaccination-dashboard',\n templateUrl: './vaccination-dashboard.component.html',\n styleUrls: ['./vaccination-dashboard.component.scss']\n})\nexport class VaccinationDashboardComponent implements OnInit {\n todaysdate;\n headerTextLbl = 'State';\n breadCrumbArr = [];\n type;\n state_id;\n state_name;\n district_id;\n district_name;\n vaccinationDashboardReport = [];\n vaccinationData;\n vaccinationTrendChartData;\n vaccinationTrendChart;\n vaccinationCoverageByStateChartData;\n vaccinationCoverageByStateChart;\n vaccinationByAgeChartData;\n vaccinationByAgeChart;\n vaccinationDoseChartData;\n vaccinationDoseChart;\n vaccinationBrandChartData;\n vaccinationBrandChart;\n vaccinationAEFIChartData;\n vaccinationAEFIChart;\n vaccinatedAefiPer = 0;\n constructor(\n private publicReportService: PublicReportService,\n public deviceService: DeviceDetectorService,\n public datepipe: DatePipe,\n public numberFormatPipe: NumberFormatPipe\n ) { }\n\n ngOnInit(): void {\n this.todaysdate = new Date();\n this.todaysdate = this.datepipe.transform(this.todaysdate, 'yyyy-MM-dd');\n this.publicReportService.filterParams.date = this.datepipe.transform(this.todaysdate, 'yyyy-MM-dd');\n this.publicReportService.getDistrictname().subscribe(val => {\n if (val && val != undefined) {\n this.district_name = val;\n }\n })\n this.publicReportService.getDistrictID().subscribe(val => {\n if (val && val != undefined) {\n this.district_id = val;\n }\n })\n this.publicReportService.getSessionStatus().subscribe(val => {\n if (val && val != undefined) {\n this.state_id = val;\n }\n })\n this.publicReportService.getStatename().subscribe(val => {\n if (val && val != undefined) {\n this.state_name = val;\n }\n })\n //console.log(this.publicReportService);\n }\n\n nextLevel(type) {\n console.log(type);\n console.log(this.state_id+'-'+this.state_name+'- '+this.district_id+' -'+this.district_name);\n this.publicReportService.tabname.next(\"Vaccination\");\n this.headerTextLbl = type;\n if (this.headerTextLbl == 'Center') {\n return;\n } else if (this.headerTextLbl === 'India') {\n this.breadCrumbArr = [];\n this.district_id=\"\";\n this.district_name = \"\";\n this.state_id = \"\";\n this.headerTextLbl = 'State';\n this.publicReportService.ischeckSessionStarted.next(this.state_id);\n this.publicReportService.district_id.next(this.district_id);\n this.publicReportService.districtname.next(this.district_name);\n this.publicReportService.type.next(\"India\");\n this.publicReportService.isnational.next(true);\n this.getVaccinationDashboard(this.todaysdate,this.state_id,this.district_id);\n } else if (this.headerTextLbl === 'State') {\n this.breadCrumbArr = [];\n this.district_id=\"\";\n this.district_name = \"\";\n if(this.breadCrumbArr.length == 0){\n this.breadCrumbArr.push({\n type: 'India',\n id: '',\n name: 'India'\n });\n this.breadCrumbArr.push({\n type: 'State',\n id: this.state_id,\n state_id: this.state_id,\n state_name: this.state_name,\n name: this.state_name\n });\n }\n this.publicReportService.ischeckSessionStarted.next(this.state_id);\n this.publicReportService.statename.next(this.state_name);\n this.publicReportService.district_id.next(this.district_id);\n this.publicReportService.districtname.next(this.district_name);\n this.publicReportService.isnational.next(false);\n this.publicReportService.type.next(\"State\");\n this.getVaccinationDashboard(this.todaysdate,this.state_id,this.district_id);\n } else if (this.headerTextLbl === 'District') {\n this.breadCrumbArr = [];\n this.breadCrumbArr.push({\n type: 'India',\n id: '',\n name: 'India'\n });\n this.breadCrumbArr.push({\n type: 'State',\n id: this.state_id,\n state_name: this.state_name,\n state_id: this.state_id,\n name: this.state_name\n });\n\n this.breadCrumbArr.push({\n type: 'District',\n id: this.district_id,\n district_id: this.district_id,\n district_name: this.district_name,\n name: this.district_name\n });\n\n this.publicReportService.ischeckSessionStarted.next(this.state_id);\n this.publicReportService.statename.next(this.state_name);\n this.publicReportService.district_id.next(this.district_id);\n this.publicReportService.districtname.next(this.district_name);\n this.publicReportService.isnational.next(false);\n this.publicReportService.type.next(\"District\");\n this.getVaccinationDashboard(this.todaysdate,this.state_id,this.district_id);\n }\n\n }\n\n getVaccinationDashboard(datefilter,state_id,district_id) {\n\n this.publicReportService.getVaccinationDashboardData(state_id, district_id, this.todaysdate).subscribe(res => {\n this.vaccinationDashboardReport = res;\n this.vaccinatedAefiPer = res.aefiPercentage;\n this.vaccinationData = res.topBlock;\n this.vaccinationTrendChartData = res.vaccinationDoneByTime;\n this.vaccinationCoverageByStateChartData = res.getBeneficiariesGroupBy;\n this.vaccinationByAgeChartData = res.vaccinationByAge;\n this.vaccinationDoseChartData = res.last7DaysVaccination;\n this.vaccinationBrandChartData = res.last7DaysVaccination;\n this.vaccinationAEFIChartData = res.last7DaysVaccination;\n this.loadVaccinationTrendChart();\n this.loadVaccinationCoverageByState();\n this.loadVaccinationByAgeChart();\n this.loadVaccinationDoseLastSevenDaysChart();\n this.loadVaccinationAEFIChart();\n this.loadVaccinationBrandLastSevenDaysChart();\n },\n err => {\n console.log(\"error\", err)\n this.vaccinationDashboardReport = [];\n });\n }\n\n //vaccination trends chart\n loadVaccinationTrendChart() {\n if (this.vaccinationTrendChart) {\n this.vaccinationTrendChart.destroy();\n }\n const labels = _.map(this.vaccinationTrendChartData, 'label');\n const total = _.map(this.vaccinationTrendChartData, 'count');\n const dose_1 = _.map(this.vaccinationTrendChartData, 'dose_one');\n const dose_2 = _.map(this.vaccinationTrendChartData, 'dose_two');\n const format = this.numberFormatPipe;\n var configuration = {\n type: 'horizontalBar',\n data: {\n labels: labels,\n datasets: [\n {\n label: \"Total\",\n backgroundColor: \"rgb(242, 9, 251, 0.5)\",\n borderColor: 'rgb(242, 9, 251)',\n data: total,\n borderWidth: 2,\n pointBackgroundColor: \"rgb(167, 0 , 73)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: false\n },\n {\n label: \"Dose 1\",\n backgroundColor: \"rgb(20, 232, 251, 0.5)\",\n borderColor: 'rgb(20, 232, 251)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: false,\n data: dose_1\n\n },\n {\n label: \"Dose 2\",\n backgroundColor: \"rgb(251, 167, 20, 0.5)\",\n borderColor: 'rgb(251, 167, 20)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(185, 118, 0)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: false,\n data: dose_2\n }\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 9,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.xLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }],\n yAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }]\n }\n }\n };\n const ctx = $('#vaccination-trends');\n this.vaccinationTrendChart = new Chart(ctx, configuration);\n this.vaccinationTrendChart.update();\n }\n\n //vaccination coverage by state\n loadVaccinationCoverageByState() {\n const format = this.numberFormatPipe;\n if (this.vaccinationCoverageByStateChart) {\n this.vaccinationCoverageByStateChart.destroy();\n }\n //vaccinationCoverageByStateChartData\n const labels = _.map(this.vaccinationCoverageByStateChartData, 'title')\n //const total = _.map(this.vaccinationCoverageByStateChartData,'total')\n const partially_vaccinated = _.map(this.vaccinationCoverageByStateChartData, 'partial_vaccinated')\n const totally_vaccinated = _.map(this.vaccinationCoverageByStateChartData, 'totally_vaccinated')\n var configuration = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'bar',\n label: 'Partially Vaccinated',\n backgroundColor: \"rgb(242, 9, 251, 0.5)\",\n borderColor: \"rgb(242, 9, 251, 0.5)\",\n data: partially_vaccinated,\n },\n {\n type: 'bar',\n label: 'Fully Vaccinated',\n backgroundColor: \"rgb(20, 232, 251, 0.5)\",\n borderColor: \"rgb(20, 232, 251, 0.5)\",\n data: totally_vaccinated,\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 10,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n },\n }\n };\n\n var ctx = $('#vaccination-coverage-by-state');\n this.vaccinationCoverageByStateChart = new Chart(ctx, configuration);\n this.vaccinationCoverageByStateChart.update();\n\n }\n\n //vaccination By Age\n loadVaccinationByAgeChart() {\n const format = this.numberFormatPipe;\n if (this.vaccinationByAgeChart) {\n this.vaccinationByAgeChart.destroy();\n }\n const labels_data = Object.keys(this.vaccinationByAgeChartData);\n const labels = labels_data.map(obj => obj.replace('vac_', '').replace('_', '-'));\n labels.shift();\n const data = Object.values(this.vaccinationByAgeChartData);\n data.shift();\n var configuration = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [{\n type: 'bar',\n label: 'Vaccinations By Age',\n backgroundColor: \"rgb(245, 67, 148)\",\n borderColor: \"rgb(245, 67, 148)\",\n data: data,\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 10,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n },\n }\n };\n\n var ctx = $('#vaccination-by-age');\n this.vaccinationByAgeChart = new Chart(ctx, configuration);\n this.vaccinationByAgeChart.update();\n }\n\n //vaccination trend last 7 days (stacked by dose)\n loadVaccinationDoseLastSevenDaysChart() {\n const format = this.numberFormatPipe;\n if (this.vaccinationDoseChart) {\n this.vaccinationDoseChart.destroy();\n }\n const labels = this.vaccinationDoseChartData.map(obj => moment(obj.vaccine_date).format('DD MMM'));\n const doseOne = this.vaccinationDoseChartData.map(obj => obj.dose_one);\n const doseTwo = this.vaccinationDoseChartData.map(obj => obj.dose_two);\n\n var configuration = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [{\n type: 'bar',\n label: 'Dose 1',\n backgroundColor: \"rgb(85 86 253)\",\n borderColor: \"rgb(85 86 253)\",\n data: doseOne,\n }, {\n type: 'bar',\n label: 'Dose 2',\n backgroundColor: \"rgb(75 222 219)\",\n borderColor: \"rgb(75 222 219)\",\n data: doseTwo,\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 10,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n },\n }\n };\n\n var ctx = $('#vaccination-trends-seven-days');\n this.vaccinationDoseChart = new Chart(ctx, configuration);\n this.vaccinationDoseChart.update();\n }\n\n //load AEFI report\n loadVaccinationAEFIChart() {\n const format = this.numberFormatPipe;\n\n if (this.vaccinationAEFIChart) {\n this.vaccinationAEFIChart.destroy();\n }\n const labels = this.vaccinationAEFIChartData.map(obj => moment(obj.vaccine_date).format('DD MMM'));\n const data = _.map(this.vaccinationAEFIChartData, 'aefi');\n var configuration = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [{\n type: 'bar',\n label: 'AEFI',\n backgroundColor: \"rgb(85 86 253)\",\n borderColor: \"rgb(85 86 253)\",\n data: data,\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 10,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n // callback: function (label, index, labels) {\n // return label / 1000 + 'k';\n // }\n }\n }]\n },\n }\n };\n\n var ctx = $('#vaccination-aefi-seven-days');\n this.vaccinationAEFIChart = new Chart(ctx, configuration);\n this.vaccinationAEFIChart.update();\n\n }\n\n //vaccination brand last 7 days chart\n loadVaccinationBrandLastSevenDaysChart() {\n const format = this.numberFormatPipe;\n if (this.vaccinationBrandChart) {\n this.vaccinationBrandChart.destroy();\n }\n const labels = this.vaccinationBrandChartData.map(obj => moment(obj.vaccine_date).format('DD MMM'));\n const doseOne = this.vaccinationBrandChartData.map(obj => obj.covishield);\n const doseTwo = this.vaccinationBrandChartData.map(obj => obj.covaxin);\n\n var configuration = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [{\n type: 'bar',\n label: 'Covishield',\n backgroundColor: \"rgb(85 86 253)\",\n borderColor: \"rgb(85 86 253)\",\n data: doseOne,\n }, {\n type: 'bar',\n label: 'Covaxin',\n backgroundColor: \"rgb(75 222 219)\",\n borderColor: \"rgb(75 222 219)\",\n data: doseTwo,\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 10,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n },\n }\n };\n\n var ctx = $('#vaccination-brand-seven-days');\n this.vaccinationBrandChart = new Chart(ctx, configuration);\n this.vaccinationBrandChart.update();\n }\n}\n","
\n
\n
\n\n
\n \n
\n\n
\n
\n
\n
\n
\n
\n \n
\n
\n

Total Vaccinated

\n

\n {{ this.vaccinationData?.vaccination?.total | numberFormat }}\n

\n\n
\n
\n Male\n

\n {{\n this.vaccinationData?.vaccination?.male\n | numberFormat\n }}\n

\n
\n
\n Female\n

\n {{\n this.vaccinationData?.vaccination?.female\n | numberFormat\n }}\n

\n
\n
\n Others\n

\n {{\n this.vaccinationData?.vaccination?.others\n | numberFormat\n }}\n

\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n

Vaccination Centers

\n

\n {{ vaccinationData?.sites?.total | numberFormat }}\n

\n\n
\n
\n Government\n

\n {{ vaccinationData?.sites?.govt | numberFormat }}\n

\n
\n
\n Private\n

\n {{ vaccinationData?.sites?.pvt | numberFormat }}\n

\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n

Vaccination Doses Administered

\n

\n {{\n vaccinationData?.vaccination?.total_doses | numberFormat\n }}\n

\n\n
\n
\n Dose 1\n

\n {{\n vaccinationData?.vaccination?.tot_dose_1 | numberFormat\n }}\n

\n
\n
\n Dose 2\n

\n {{\n vaccinationData?.vaccination?.tot_dose_2 | numberFormat\n }}\n

\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n

Vaccination Trend - {{todaysdate | date: 'dd/MM/yyyy'}}

\n
\n \n \n \n \n \n \n
\n
\n
\n \n \n \n \n
\n
\n
\n\n
\n
\n
\n

\n Vaccination Trend (Last 7 Days)\n

\n
\n \n \n \n \n \n \n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n

Vaccination by Age\n \n \n \n

\n
\n \n \n \n \n \n \n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n

Vaccination Coverage

\n
\n \n \n \n \n \n \n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n

AEFI Reported

\n Overall : {{ vaccinatedAefiPer }} %\n
\n \n \n \n \n \n \n
\n
\n
\n\n \n \n \n \n
\n
\n
\n\n
\n
\n
\n

Vaccination by Brand

\n
\n \n \n \n \n \n \n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'titleCaseCustom'\n})\nexport class TitleCaseCustomPipe implements PipeTransform {\n\n transform(value: string): string {\n let returnString = '';\n if (value) {\n const splitString = value.split(\" \");\n var final = [];\n for(var i=0; i< splitString.length; i++) {\n var d = splitString[i];\n\n if (d) {\n try {\n var c = d[0].toUpperCase()+d.substring(1, d.length)\n final.push(c);\n } catch(e) {\n console.log('--------');\n console.log(d);\n console.log('--------');\n }\n }\n }\n returnString = final.join(' ');\n }\n return returnString;\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { TranslateService, LangChangeEvent } from '@ngx-translate/core';\nimport { Subscription } from 'rxjs';\nimport { Observable, Subject } from 'rxjs';\n\nimport en from 'src/assets/i18n/en.json';\nimport hi from 'src/assets/i18n/hi.json';\nimport mr from 'src/assets/i18n/mr.json';\nimport ml from 'src/assets/i18n/ml.json';\nimport pb from 'src/assets/i18n/pb.json';\nimport te from 'src/assets/i18n/te.json';\nimport gu from 'src/assets/i18n/gu.json';\nimport as from 'src/assets/i18n/as.json';\nimport be from 'src/assets/i18n/be.json';\nimport ka from 'src/assets/i18n/ka.json';\nimport or from 'src/assets/i18n/or.json';\nimport ta from 'src/assets/i18n/ta.json';\n\nconst languageKey = 'language';\n\n/**\n * Pass-through function to mark a string for translation extraction.\n * Running `npm translations:extract` will include the given string by using this.\n * @param s The string to extract for translation.\n * @return The same string.\n */\nexport function extract(s: string) {\n return s;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class I18nService {\n\n defaultLanguage!: string;\n supportedLanguages!: object[];\n langChanged = new Subject();\n\n private langChangeSubscription!: Subscription;\n\n constructor(private translateService: TranslateService) {\n // Embed languages to avoid extra HTTP requests\n\n translateService.setTranslation('en', en);\n translateService.setTranslation('hi', hi);\n translateService.setTranslation('mr', mr);\n translateService.setTranslation('ml', ml);\n translateService.setTranslation('pb', pb);\n translateService.setTranslation('te', te);\n translateService.setTranslation('be', be);\n translateService.setTranslation('gu', gu);\n translateService.setTranslation('as', as);\n translateService.setTranslation('ka', ka);\n translateService.setTranslation('or', or);\n translateService.setTranslation('ta', ta);\n }\n\n /**\n * Initializes i18n for the application.\n * Loads language from local storage if present, or sets default language.\n * @param defaultLanguage The default language to use.\n * @param supportedLanguages The list of supported languages.\n */\n init(defaultLanguage: string, supportedLanguages: object[]) {\n this.defaultLanguage = defaultLanguage;\n this.supportedLanguages = supportedLanguages;\n this.language = '';\n\n // Warning: this subscription will always be alive for the app's lifetime\n this.langChangeSubscription = this.translateService.onLangChange\n .subscribe((event: LangChangeEvent) => { sessionStorage.setItem(languageKey, event.lang); });\n }\n\n /**\n * Cleans up language change subscription.\n */\n destroy() {\n if (this.langChangeSubscription) {\n this.langChangeSubscription.unsubscribe();\n }\n }\n\n /**\n * Sets the current language.\n * Note: The current language is saved to the local storage.\n * If no parameter is specified, the language is loaded from local storage (if present).\n * @param language The IETF language code to set.\n */\n set language(language: string) {\n language = language || sessionStorage.getItem(languageKey) || this.translateService.getBrowserCultureLang();\n let isSupportedLanguage = (this.supportedLanguages.find((l: any) => l.id === language) ? true : false);\n\n // If no exact match is found, search without the region\n if (language && !isSupportedLanguage) {\n language = language.split('-')[0];\n const findlang: any = this.supportedLanguages.find((l: any) => l.id.startsWith(language))\n language = (findlang === null ? '' : (findlang && findlang['id'] ? findlang['id'] : ''));\n isSupportedLanguage = Boolean(language);\n }\n\n // Fallback if language is not supported\n if (!isSupportedLanguage) {\n language = this.defaultLanguage;\n }\n console.log(`Language set to ${language}`);\n this.translateService.use(language);\n this.langChanged.next(language);\n }\n\n /**\n * Gets the current language.\n * @return The current language code.\n */\n get language(): string {\n return this.translateService.currentLang;\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport {\n HttpRequest,\n HttpHandler,\n HttpEvent,\n HttpInterceptor\n} from '@angular/common/http';\n\nimport { Observable } from 'rxjs';\n@Injectable()\nexport class TokenInterceptor implements HttpInterceptor {\n constructor() { }\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\n\n const userToken = sessionStorage.getItem('userToken');\n if (userToken) {\n request = request.clone({\n setHeaders: {\n Authorization: JSON.parse(userToken)\n }\n });\n }\n return next.handle(request);\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { DatePipe } from '@angular/common';\nimport { DeviceDetectorService } from 'ngx-device-detector';\nimport { ChartDataSets, ChartLegendItem, ChartOptions, ChartType, Chart } from 'chart.js';\nimport * as $ from 'jquery';\nimport { NumberFormatPipe } from '../../modules/pipe/number-format.pipe';\nimport { PublicReportService } from '../../modules/services/public-report.service';\nimport { ConfigurableFocusTrap } from '@angular/cdk/a11y';\nimport * as _ from 'lodash';\nimport * as _moment from 'moment';\nconst moment = _moment;\n@Component({\n selector: 'app-registration-dashboard',\n templateUrl: './registration-dashboard.component.html',\n styleUrls: ['./registration-dashboard.component.scss']\n})\nexport class RegistrationDashboardComponent implements OnInit {\n todaysdate;\n regDashboardReport = [];\n registrationTrendChartData;\n registrationTrendChart;\n registrationChartData;\n appointmentScheduledChartData;\n registrationByAgeChart;\n registrationByAgeChartData;\n registrationsPieChart;\n appointmentScheduledChart;\n regVsAppointmentChart;\n regDailyData;\n appointmentDailyData;\n totalRegistrations;\n topBlockReport;\n state_id = '';\n district_id = '';\n breadCrumbArr = [];\n constructor(\n private publicReportService: PublicReportService,\n public deviceService: DeviceDetectorService,\n public datepipe: DatePipe,\n public numberFormatPipe: NumberFormatPipe\n ) { }\n\n ngOnInit(): void {\n console.log('Registration component');\n this.todaysdate = new Date();\n this.todaysdate = this.datepipe.transform(this.todaysdate, 'yyyy-MM-dd');\n \n this.publicReportService.filterParams.date = this.datepipe.transform(this.todaysdate, 'yyyy-MM-dd');\n }\n\n getRegistrationDashboard(datefilter) {\n this.publicReportService.tabname.next(\"Registration\");\n this.publicReportService.isnational.next(true);\n console.log('Registration Dashboard');\n this.publicReportService.getRegistrationDashboardData(this.todaysdate).subscribe(res => {\n this.regDashboardReport = res;\n console.log(\"resDashboard response\", this.regDashboardReport);\n this.registrationTrendChartData = res.timeWiseReport;\n this.registrationChartData = res.topRegData;\n this.totalRegistrations = res.topRegData?.total;\n this.appointmentScheduledChartData = res.appScheduled;\n this.registrationByAgeChartData = res.regByAge;\n this.regDailyData = res.totalRegLast5Day;\n this.appointmentDailyData = res.totalAppLast5Day;\n this.loadRegistrationTrendChart();\n this.loadregistrationsChart();\n this.loadAppointmentScheduledChart();\n this.loadRegistrationsByAgeChart();\n this.loadRegVsAppointmentChart();\n\n },\n err => {\n console.log(\"error\", err)\n this.regDashboardReport = [];\n });\n }\n\n //Registration Trends Chart\n loadRegistrationTrendChart() {\n if (this.registrationTrendChart) {\n this.registrationTrendChart.destroy();\n }\n\n const labels = _.map(this.registrationTrendChartData, 'label');\n const data = _.map(this.registrationTrendChartData, 'count');\n const format = this.numberFormatPipe;\n var configuration = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [{\n type: 'line',\n label: 'Registations',\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(90, 141, 238, 0.1)',\n borderColor: 'rgb(90 141 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79 95 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n data: data,\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 9,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n const registrationTrendCtx = $('#registationTrends');\n this.registrationTrendChart = new Chart(registrationTrendCtx, configuration);\n this.registrationTrendChart.update();\n }\n //Registrations chart\n loadregistrationsChart() {\n const format = this.numberFormatPipe;\n var configuration = {\n type: 'pie',\n data: {\n datasets: [{\n data: [\n this.registrationChartData?.male,\n this.registrationChartData?.female,\n this.registrationChartData?.others\n ],\n backgroundColor: ['rgb(90, 141, 238)', 'rgb(245, 67, 148)', 'rgb(255 152 0)'],\n borderWidth: 1,\n }],\n labels: ['Male', 'Female', 'Other']\n },\n options: {\n cutoutPercentage: 70,\n rotation: 1 * Math.PI,\n circumference: 1 * Math.PI,\n responsive: true,\n animation: {\n animateScale: true,\n animateRotate: true\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.labels[tooltipItem.index] || '';\n\n if (label) {\n label += ': ';\n }\n const value = data.datasets[0].data[tooltipItem.index] || 0\n const dataNum = Math.round(value * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: true,\n boxWidth: 7,\n padding: 15,\n fontSize: 10,\n }\n }\n }\n };\n\n if (this.registrationsPieChart) {\n this.registrationsPieChart.destroy();\n }\n\n const registrationsCtx = $('#total-registrations');\n this.registrationsPieChart = new Chart(registrationsCtx, configuration);\n }\n //last 5 days Appointment scheduled chart\n loadAppointmentScheduledChart() {\n const format = this.numberFormatPipe;\n if (this.appointmentScheduledChart) {\n this.appointmentScheduledChart.destroy();\n }\n var labels=[];\n for(let i=0;i<=5;i++){\n labels.push(moment(this.todaysdate).add(i, 'days').format('DD MMM'));\n }\n// const labels = ['12 Mar', '11 Mar', '10 Mar', '9 Mar', '8 Mar', '7 Mar'];\n const data = Object.values(this.appointmentScheduledChartData[0]);\n\n var configuration = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [{\n type: 'bar',\n label: 'Appointments',\n backgroundColor: \"rgb(85 86 253)\",\n borderColor: \"rgb(85 86 253)\",\n data: data,\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 10,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n },\n }\n };\n\n var ctx = $('#lastFiveAppointmentScheduled');\n this.appointmentScheduledChart = new Chart(ctx, configuration);\n }\n\n //Registration by age Chart\n\n loadRegistrationsByAgeChart() {\n const format = this.numberFormatPipe;\n if (this.registrationByAgeChart) {\n this.registrationByAgeChart.destroy();\n }\n const labels_data = Object.keys(this.registrationByAgeChartData);\n const labels = labels_data.map(obj => obj.replace('reg_', '').replace('_','-').replace('to_',''));\n const data = Object.values(this.registrationByAgeChartData);\n\n var configuration = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [{\n type: 'bar',\n label: 'Registrations By Age',\n backgroundColor: \"rgb(245, 67, 148)\",\n borderColor: \"rgb(245, 67, 148)\",\n data: data,\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 10,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n },\n }\n };\n\n var ctx = $('#registrationsByAge');\n this.registrationByAgeChart = new Chart(ctx, configuration);\n }\n\n //registration vs appointment chart\n loadRegVsAppointmentChart() {\n if (this.regVsAppointmentChart) {\n this.regVsAppointmentChart.destroy();\n }\n\n const lineChartData = this.appointmentDailyData.sort((a, b) => (a.appointment_date > b.appointment_date) ? 1 : -1)\n const labels = _.map(this.appointmentDailyData, (data) => {\n return moment(data.appointment_date).format('DD MMM');\n });\n\n const data1 = _.map(this.regDailyData, 'total');\n const data2 = _.map(this.appointmentDailyData, 'total_appointments');\n\n const format = this.numberFormatPipe;\n var configuration = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [{\n type: 'line',\n label: 'Registrations',\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(90, 141, 238, 0.1)',\n borderColor: 'rgb(90, 141, 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79, 95, 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n \n \n data: data1,\n }, {\n type: 'line',\n label: 'Appointments',\n backgroundColor: 'rgb(20, 232, 251, 0.1)',\n borderColor: 'rgb(20, 232, 251)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n \n fill:true,\n data: data2,\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 9,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n var ctx = $('#registration-appointments');\n this.regVsAppointmentChart = new Chart(ctx, configuration);\n this.regVsAppointmentChart.update();\n }\n\n}\n","
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n

\n Registration Trend - {{todaysdate | date: 'dd/MM/yyyy'}}\n

\n
\n \n \n \n \n \n \n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n

Registrations - {{totalRegistrations | numberFormat }}

\n
\n \n \n \n \n \n \n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n

Appointments Scheduled

\n
\n \n \n \n \n \n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n

Registrations by Age \n \n

\n
\n \n \n \n \n \n \n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n

Registrations Vs Appointments

\n
\n \n \n \n \n \n \n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n","import { WebSocketService } from './../../modules/services/websocket.service';\nimport { NumberFormatPipe } from '../../modules/pipe/number-format.pipe';\nimport { switchMap,startWith } from 'rxjs/operators';\nimport { PublicReportService } from '../../modules/services/public-report.service';\nimport { Component, OnInit, EventEmitter, Output } from '@angular/core';\nimport * as $ from 'jquery';\nimport { ChartDataSets, ChartLegendItem, ChartOptions, ChartType, Chart } from 'chart.js';\nimport * as _ from 'lodash';\nimport * as _moment from 'moment';\nconst moment = _moment;\nimport { DeviceDetectorService } from 'ngx-device-detector';\nimport { Observable } from 'rxjs';\n// import { Console } from 'console';\nimport { DatePipe } from '@angular/common';\nimport { TranslateService } from '@ngx-translate/core';\nimport * as Excel from 'exceljs/dist/exceljs.min.js'\nimport * as fs from 'file-saver';\nimport { saveAs } from 'file-saver';\nimport { interval, Subscription } from 'rxjs';\nimport { environment } from 'src/environments/environment';\n\n// import { timeStamp } from 'console';\n\n@Component({\n selector: 'app-main-dashboard',\n templateUrl: './main-dashboard.component.html',\n styleUrls: ['./main-dashboard.component.scss']\n})\nexport class MainDashboardComponent implements OnInit {\n @Output() clickevent = new EventEmitter();\n selectedTabLabel = '';\n headerTextLbl = 'State';\n breadCrumbArr = [];\n title = 'cowindashboard';\n reportData;\n stateWiseBeneficiaries;\n dailySessionsSummaryByState;\n dailySessionsData;\n vaccinationDataAtDiffTimes;\n vaccinePlannedGivenData;\n vaccinatedBeneficiaryByGender;\n vaccinatedBeneficiaryByMaterial;\n vaccinationCoverageByStateChartData;\n vaccinationCoverageByStateChart;\n vaccinationDoseChartData;\n vaccinationDoseChart;\n vaccinationBrandChartData;\n vaccinationBrandChart;\n vaccinationAEFIChartData;\n vaccinationAEFIChart;\n vaccinatedAefiPer = 0;\n realTimeChart;\n realTimeChart30Days\n lineChartData;\n vaccinationByDay;\n updateInterval = 300;\n numberOfElements = 10;\n vaccinationDoneByDay;\n stateArr;\n states;\n statename;\n heading = 'National';\n myChartGender;\n myChartBenficiariesVsVaccinated;\n myChartTotalVaccinatedByMaterial;\n myChartTodayTotalVaccination;\n myChartForSessionData;\n districtArr;\n districtList;\n districtListfromstate = [];\n district_id;\n state_id;\n districtname;\n totally_vaccinated;\n todaysdate;\n site_logo;\n cowinlogo;\n isnational = true;\n mobile = false;\n onload = true;\n districtId;\n datechange;\n totalDoseOne;\n totalDoseTwo;\n myChartDose1VsDose2;\n totaldoses;\n tableheader;\n isStates;\n topBlockReport;\n lineChartDataNew = [];\n lastSevenDaysReg = [];\n getBeneficiariesGroupBy = [];\n last7DaysVaccination = [];\n lastSevenDaysAppointment = [];\n\n lastSevenDayVaccChart;\n lastSevenDayChart;\n genderVaccPieChart;\n materialVaccPieChart;\n lastSevenDayAppointmentChart;\n dailyCapVsUtilizeChart;\n dailyCapVsUtilizeData = [];\n Last5daysCenterData = [];\n Last5daysCenterChart;\n Top10States = [];\n Top10StatesChart;\n CowinStatistics;\n CowinStatisticsChart;\n ChartHeading;\n columnheading;\n chartFlag;\n vaccinationByAgeChart;\n vaccinationByAgeChartData;\n last30DaysVaccinationData;\n weeklyReportData;\n realTimeChartweek;\n realTimeChartlast30days;\n isday=false;\n ismonth = true;\n isweek;\n isdayReg;\n ismonthReg;\n isweekReg;\n sortDir = 1;//1= 'ASE' -1= DSC;\n registartionChartData;\n registartionChartDataMonth;\n registartionChartDataAll;\n registartionChart;\n registartionChartMonth;\n registartionChartAll;\n isByAge;\n isByDoses;\n vaccinationAgeDataToday;\n vaccinationAgeChartToday;\n isdayVacc;\n ismonthVacc;\n isweekVacc;\n vaccinationAgeDataMonth;\n vaccinationAgeChartMonth;\n vaccinationAgeDataAll;\n vaccinationAgeChartAll;\n vaccinationUpTrendsChart;\n vaccinationUpTrendsData;\n registrationUpTrendsChart;\n registrationUpTrendsData;\n isByCategory;\n vaccinationByCategoryChart;\n vaccinationByCategoryData;\n isupTrendToday = false;\n isupTrendMonth = true;\n isupTrendAll = false;\n vaccinationUpTrendsMonthChart;\n vaccinationUpTrendsMonthData;\n vaccinationUpTrendsAllChart;\n vaccinationUpTrendsAllData;\n secondHalf;\n DownlloadVaccinationDoneByTime: any;\n DownlloadVaccinationDoneByTimeAgeWise: any;\n Downloadlast30DaysVaccination: any;\n DownloadweeklyReport: any;\n Downloadlast30DaysAgeWiseVaccination: any;\n DownloadweeklyVacAgeWiseReport: any;\n DownlloadImeWiseTodayRegReport: any;\n DownloadRegReportData: any;\n DownloadRegWeekReportData: any;\n DownlloadLast30DaysAefi: any;\n DownlloadVaccinationByAge: any;\n VaccinationData: any;\n isState: any;\n isDistrict: any;\n vaccinationByAgefinalResult: any = [];\n downloadExcelHeader: any;\n downloadExcelHeaderForCoverage: any;\n options: any = {\n useGrouping: false,\n formattingFn: (n:number) => n.toLocaleString('en-IN')\n }\n counterFlag=false;\n liveVaccChart;\n liveVaccData\n ReportGenerateTime;\n constructor(private publicReportService: PublicReportService,\n public deviceService: DeviceDetectorService,\n public datepipe: DatePipe,\n public numberFormatPipe: NumberFormatPipe,\n private translate: TranslateService,\n private webSocket: WebSocketService) { }\n\n ngOnInit(): void {\n this.todaysdate = new Date();\n this.todaysdate = this.datepipe.transform(this.todaysdate, 'yyyy-MM-dd')\n // document.getElementById(\"dateId\").setAttribute(\"max\", this.todaysdate);\n //console.log(\"this.todaysdate\", this.todaysdate)\n if (window.screen.width === 360 || window.screen.width === 768) { // 768px portrait\n this.mobile = true;\n }\n this.states = [\n {\n \"state_id\": 1,\n \"state_code\": \"AN\",\n \"state_name\": \"Andaman and Nicobar Islands\"\n },\n {\n \"state_id\": 2,\n \"state_code\": \"AP\",\n \"state_name\": \"Andhra Pradesh\"\n },\n {\n \"state_id\": 3,\n \"state_code\": \"AR\",\n \"state_name\": \"Arunachal Pradesh\",\n\n },\n {\n \"state_id\": 4,\n \"state_code\": \"AS\",\n \"state_name\": \"Assam\"\n },\n {\n \"state_id\": 5,\n \"state_code\": \"BR\",\n \"state_name\": \"Bihar\"\n },\n {\n \"state_id\": 6,\n \"state_code\": \"CH\",\n \"state_name\": \"Chandigarh\"\n },\n {\n \"state_id\": 7,\n \"state_code\": \"CG\",\n \"state_name\": \"Chhattisgarh\"\n },\n {\n \"state_id\": 8,\n \"state_code\": \"DH\",\n \"state_name\": \"Dadra and Nagar Haveli\"\n },\n {\n \"state_id\": 37,\n \"state_code\": \"DD\",\n \"state_name\": \"Daman and Diu\"\n },\n {\n \"state_id\": 9,\n \"state_code\": \"DL\",\n \"state_name\": \"Delhi\"\n },\n {\n \"state_id\": 10,\n \"state_code\": \"GA\",\n \"state_name\": \"Goa\"\n },\n {\n \"state_id\": 11,\n \"state_code\": \"GJ\",\n \"state_name\": \"Gujarat\"\n },\n {\n \"state_id\": 12,\n \"state_code\": \"HR\",\n \"state_name\": \"Haryana\"\n },\n {\n \"state_id\": 13,\n \"state_code\": \"HP\",\n \"state_name\": \"Himachal Pradesh\"\n },\n {\n \"state_id\": 14,\n \"state_code\": \"JK\",\n \"state_name\": \"Jammu and Kashmir\"\n },\n {\n \"state_id\": 15,\n \"state_code\": \"JH\",\n \"state_name\": \"Jharkhand\"\n },\n {\n \"state_id\": 16,\n \"state_code\": \"KA\",\n \"state_name\": \"Karnataka\"\n },\n {\n \"state_id\": 17,\n \"state_code\": \"KL\",\n \"state_name\": \"Kerala\"\n },\n {\n \"state_id\": 18,\n \"state_code\": \"LA\",\n \"state_name\": \"Ladakh\"\n },\n {\n \"state_id\": 19,\n \"state_code\": \"LD\",\n \"state_name\": \"Lakshadweep\"\n },\n {\n \"state_id\": 20,\n \"state_code\": \"MP\",\n \"state_name\": \"Madhya Pradesh\"\n },\n {\n \"state_id\": 21,\n \"state_code\": \"MH\",\n \"state_name\": \"Maharashtra\"\n },\n {\n \"state_id\": 22,\n \"state_code\": \"MN\",\n \"state_name\": \"Manipur\"\n },\n {\n \"state_id\": 23,\n \"state_code\": \"ML\",\n \"state_name\": \"Meghalaya\"\n },\n {\n \"state_id\": 24,\n \"state_code\": \"MZ\",\n \"state_name\": \"Mizoram\"\n },\n {\n \"state_id\": 25,\n \"state_code\": \"NL\",\n \"state_name\": \"Nagaland\"\n },\n {\n \"state_id\": 26,\n \"state_code\": \"OD\",\n \"state_name\": \"Odisha\"\n },\n {\n \"state_id\": 27,\n \"state_code\": \"PY\",\n \"state_name\": \"Puducherry\"\n },\n {\n \"state_id\": 28,\n \"state_code\": \"PB\",\n \"state_name\": \"Punjab\"\n },\n {\n \"state_id\": 29,\n \"state_code\": \"RJ\",\n \"state_name\": \"Rajasthan\"\n },\n {\n \"state_id\": 30,\n \"state_code\": \"SK\",\n \"state_name\": \"Sikkim\"\n },\n {\n \"state_id\": 31,\n \"state_code\": \"TN\",\n \"state_name\": \"Tamil Nadu\"\n },\n {\n \"state_id\": 32,\n \"state_code\": \"TS\",\n \"state_name\": \"Telangana\"\n },\n {\n \"state_id\": 33,\n \"state_code\": \"TR\",\n \"state_name\": \"Tripura\"\n },\n {\n \"state_id\": 34,\n \"state_code\": \"UP\",\n \"state_name\": \"Uttar Pradesh\"\n },\n {\n \"state_id\": 35,\n \"state_code\": \"UK\",\n \"state_name\": \"Uttarakhand\"\n },\n {\n \"state_id\": 36,\n \"state_code\": \"WB\",\n \"state_name\": \"West Bengal\"\n }\n\n ]\n\n this.publicReportService.getSessionStatus().subscribe(val => {\n\n if (val && val != undefined) {\n // console.log(\"checking\", val);\n this.stateArr = this.states.find(e => e.state_id == val);\n this.heading = this.stateArr.state_name;\n this.site_logo = this.stateArr.state_code;\n this.state_id = val;\n // console.log(\"this.stateArr\", this.stateArr)\n }\n })\n\n this.publicReportService.getDistrictID().subscribe(val => {\n if (val && val != undefined) {\n // console.log(\"checking\", val);\n\n this.district_id = val;\n\n }\n })\n this.publicReportService.tabname.next(\"Dashboard\");\n // this.getNewDashboardData();\n this.site_logo = this.publicReportService.filterParams.site_logo;\n this.heading = this.publicReportService.filterParams.heading;\n this.isday = false;\n this.ismonth = true;\n this.isweek = false;\n// this.getVacChartData('Last 30 Days');\nthis.getVaccByTab('By Doses')\nthis.getLiveVaccinationCounter();\n// this.getDataForLiveVaccCountChart();\nsetTimeout(() => {\n this.prepareDataForLiveVaccStareaming();\n this.prepareDataForLiveVaccStareamingRegistration();\n this.prepareDataForLiveVaccStareamingPartialVacc();\n this.prepareDataForLiveVaccStareamingFullyVacc();\n\n this.prepareDataForLiveVaccStareaming15_17();\n this.prepareDataForLiveVaccStareaming18_44();\n this.prepareDataForLiveVaccStareaming45_60();\n // this.prepareDataForLiveVaccStareamingabove_60();\n this.updateDataAge();\n}, 1)\n }\n\n getNewDashboardData(state_id = \"\", district_id = \"\") {\n\n this.publicReportService.tabname.next(\"Dashboard\");\n\n // state_id = this.state_id;\n // district_id = this.district_id;\n\n\n\n this.state_id = state_id;\n this.district_id = district_id;\n //console.log(\"this.state_id\", this.state_id)\n //console.log(\"this.district_id\", this.district_id)\n this.chartFlag = (district_id) ? true : false;\n if(district_id || state_id){\n this.counterFlag=true\n }else{\n this.counterFlag=false\n }\n this.publicReportService.tabname.next(\"Dashboard\");\n if (district_id == '' || district_id == undefined)\n this.getDistrictList(state_id);\n this.publicReportService.ischeckSessionStarted.next(this.state_id);\n if (this.state_id == \"\") {\n this.publicReportService.isnational.next(true);\n this.districtListfromstate = [];\n }\n this.publicReportService.getPublicReports(state_id, district_id, this.todaysdate).subscribe(res => {\n //console.log(\"res\",res);\n this.publicReportService.tabname.next(\"Dashboard\");\n this.reportData = res;\n this.ReportGenerateTime = res.timestamp;\n // console.log(\"this.ReportGenerateTime\", this.ReportGenerateTime)\n // this.ReportGenerateTime = this.datepipe.transform(this.ReportGenerateTime, 'yyyy/MM/dd hh:mm a');\n this.ReportGenerateTime = moment(this.ReportGenerateTime).format('yyyy/MM/DD hh:mm a')\n // if(this.ReportGenerateTime){\n // this.tConvert(this.ReportGenerateTime);\n // }\n // console.log(\"this.ReportGenerateTime1\", this.ReportGenerateTime)\n this.topBlockReport = res.topBlock;\n this.vaccinatedAefiPer = res.aefiPercentage;\n this.lineChartDataNew = res.vaccinationDoneByTime;\n this.DownlloadVaccinationDoneByTime = res.vaccinationDoneByTime;\n this.DownlloadVaccinationDoneByTimeAgeWise = res.vaccinationDoneByTimeAgeWise;\n this.DownlloadImeWiseTodayRegReport = res.timeWiseTodayRegReport;\n this.DownlloadLast30DaysAefi = res.last30DaysAefi;\n this.DownlloadVaccinationByAge = res.vaccinationByAge;\n\nthis.liveVaccData = res.vaccinationDoneByTime;\n\n this.lastSevenDaysReg = res.last7DaysRegistration;\n this.getBeneficiariesGroupBy = _.orderBy(res.getBeneficiariesGroupBy, 'total',\n 'desc');\n\n this.vaccinationCoverageByStateChartData = _.orderBy(res.getBeneficiariesGroupBy, 'total',\n 'desc');\n this.vaccinationBrandChartData = res.last7DaysVaccination;\n this.vaccinationAEFIChartData = res.last30DaysAefi;\n // this.last7DaysVaccination = res.last7DaysVaccination;\n this.lastSevenDaysAppointment = res.last7DaysRegistration;\n // this.vaccinationDoseChartData = res.last7DaysVaccination;\n this.dailyCapVsUtilizeData = res.last7DaysVaccination;\n this.Last5daysCenterData = res.last5daySessionStatus;\n this.Top10States = res.topUtilization;\n this.CowinStatistics = res.verificationMethod;\n this.vaccinationByAgeChartData = res.vaccinationByAge;\n this.registartionChartData = res.timeWiseTodayRegReport;\n this.vaccinationUpTrendsData = res.vaccinationDoneByTimeUptrend;\n this.registrationUpTrendsData = res.timeWiseTodayRegReportUptrend;\n\n // console.log(\" this.vaccinationByCategoryData11 \", this.vaccinationByCategoryData )\n // this.vaccinationAgeDataToday = res.vaccinationDoneByTimeAgeWise;\n // console.log(\"this.vaccinationAgeDataToday12\",this.vaccinationAgeDataToday)\n this.prepareDataForSemiPieChartsNew();\n this.prepareDataForLineGraphNew();\n\n if (res.timeWiseTodayRegReport) {\n this.prepareDataForRegChart();\n }\n // this.prepareDataForVaccinationByCategory()\n // this.prepareDataForStackedBarRegGraphNew();\n // this.prepareDataForLastSevenDaysVacc();\n // this.prepareDataForDailyCapacityVsUtilization();\n // this.prepareDataFor5daysCenterAnalysis();\n // this.prepareDataForTop10StatesByCoverage();\n // this.prepareDataForCowinStatistics();\n if (!this.chartFlag) {\n this.loadVaccinationCoverageByState();\n }\n // console.log(\"vaccinationCoverageByStateChartData\", this.vaccinationCoverageByStateChartData)\n this.loadVaccinationAEFIChart();\n // this.loadVaccinationBrandLastSevenDaysChart();\n // this.loadVaccinationDoseLastSevenDaysChart();\n this.loadVaccinationByAgeChart();\n\n // this.prepareDataForVaccinationUpTrends();\n // this.prepareDataForRegistarionUpTrends();\n\n // this.isday = true;\n // this.ismonth = false;\n // this.isweek = false;\n\n // this.isdayReg = true;\n // this.ismonthReg = false;\n // this.isweekReg = false;\n this.isByDoses = true;\n this.isByAge = false;\n this.isdayReg = true;\n // this.isdayVacc = false;\n // this.ismonthVacc = false;\n // this.isweekVacc = false;\n // this.isByCategory = false;\n // this.isupTrendToday = true;\n // this.isupTrendMonth = false;\n // this.isupTrendAll = false;\n if (this.state_id === '' && this.district_id === '') {\n this.tableheader = \" State/UT\";\n this.ChartHeading = \"Top States by Capacity Utilization\"\n this.downloadExcelHeader = \"StateWiseVaccination\"\n this.downloadExcelHeaderForCoverage = \"StateWiseVaccinationCoverage\"\n } else if (this.state_id != '' && this.district_id == '') {\n this.tableheader = \" Districts\";\n this.ChartHeading = \"Top Districts by Capacity Utilization\"\n this.downloadExcelHeader = \"DistrictWiseVaccination\"\n this.downloadExcelHeaderForCoverage = \"DistrictWiseVaccinationCoverage\"\n } else if (this.state_id != '' && this.district_id != '') {\n this.tableheader = \" Centers\";\n this.ChartHeading = \"Top Centers by Capacity Utilization\"\n this.downloadExcelHeader = \"CenterWiseVaccination\"\n this.downloadExcelHeaderForCoverage = \"CenterWiseVaccinationCoverage\"\n } else {\n this.tableheader = \" State/UT\";\n this.ChartHeading = \"Top States by Capacity Utilization\"\n this.downloadExcelHeader = \"StateWiseVaccination\"\n this.downloadExcelHeaderForCoverage = \"StateWiseVaccinationCoverage\"\n }\n });\n // this.isday = true;\n\n //for breadcrumb\n this.breadCrumbArr = [];\n if (this.state_id) {\n this.stateArr = this.states.find(e => e.state_id == this.state_id);\n this.statename = this.stateArr.state_name;\n }\n this.breadCrumbArr.push({\n type: 'India',\n id: '',\n name: 'India'\n });\n if (this.state_id != '' && this.state_id != undefined) {\n this.breadCrumbArr.push({\n type: 'State',\n id: this.state_id,\n state_id: this.state_id,\n state_name: this.statename,\n name: this.statename\n });\n }\n //console.log('dfas',this.district_id);\n if (this.district_id != '' && this.district_id != undefined) {\n this.breadCrumbArr.push({\n type: 'District',\n id: this.district_id,\n district_id: this.district_id,\n district_name: this.districtname.district_name,\n name: this.districtname.district_name\n });\n }\n // console.log('bread crumb',this.breadCrumbArr)\n }\n\n getNewDashboardDataforDistrict(district_id = \"\") {\n\n this.publicReportService.tabname.next(\"Dashboard\");\n this.isday = true;\n this.ismonth = false;\n this.isweek = false;\n\n this.district_id = district_id;\n //console.log(\"this.state_id\", this.state_id)\n //console.log(\"this.district_id\", this.district_id)ischeckSessionStarted\n this.chartFlag = (district_id) ? true : false;\n this.publicReportService.tabname.next(\"Dashboard\");\n // this.publicReportService.ischeckSessionStarted.next(this.state_id);\n\n if (this.district_id != \"\" && this.district_id != undefined) {\n this.districtname = this.districtListfromstate.find(e => e.district_id == district_id);\n\n this.getNewDashboardData(this.state_id, district_id);\n this.publicReportService.districtname.next(this.districtname.district_name);\n } else {\n this.getNewDashboardData(this.state_id, \"\")\n this.districtListfromstate = [];\n this.getDistrictList(this.state_id);\n }\n\n /*this.publicReportService.getPublicReports(this.state_id, district_id, this.todaysdate).subscribe(res => {\n //console.log(\"res\",res);\n this.publicReportService.tabname.next(\"Dashboard\");\n this.reportData = res;\n this.topBlockReport = res.topBlock;\n this.vaccinatedAefiPer = res.aefiPercentage;\n this.lineChartDataNew = res.vaccinationDoneByTime;\n this.lastSevenDaysReg = res.last7DaysRegistration;\n this.getBeneficiariesGroupBy = res.getBeneficiariesGroupBy;\n this.vaccinationCoverageByStateChartData = res.getBeneficiariesGroupBy;\n this.vaccinationBrandChartData = res.last7DaysVaccination;\n this.vaccinationAEFIChartData = res.last7DaysVaccination;\n this.last7DaysVaccination = res.last7DaysVaccination;\n this.lastSevenDaysAppointment = res.last7DaysRegistration;\n this.vaccinationDoseChartData = res.last7DaysVaccination;\n this.dailyCapVsUtilizeData = res.last7DaysVaccination;\n this.Last5daysCenterData = res.last5daySessionStatus;\n this.Top10States = res.topUtilization;\n this.CowinStatistics = res.verificationMethod;\n this.vaccinationByAgeChartData = res.vaccinationByAge;\n this.prepareDataForSemiPieChartsNew();\n this.prepareDataForLineGraphNew();\n // this.prepareDataForStackedBarRegGraphNew();\n // this.prepareDataForLastSevenDaysVacc();\n // this.prepareDataForDailyCapacityVsUtilization();\n this.prepareDataFor5daysCenterAnalysis();\n // this.prepareDataForTop10StatesByCoverage();\n // this.prepareDataForCowinStatistics();\n // this.loadVaccinationCoverageByState();\n this.loadVaccinationAEFIChart();\n // this.loadVaccinationBrandLastSevenDaysChart();\n // this.loadVaccinationDoseLastSevenDaysChart();\n this.loadVaccinationByAgeChart();\n if (this.state_id === '' && this.district_id === '') {\n this.tableheader = \" State/UT\";\n this.ChartHeading = \"Top States by Capacity Utilization\"\n } else if (this.state_id != '' && this.district_id == '') {\n this.tableheader = \" Districts\";\n this.ChartHeading = \"Top Districts by Capacity Utilization\"\n } else if (this.state_id != '' && this.district_id != '') {\n this.tableheader = \" Centers\";\n this.ChartHeading = \"Top Centers by Capacity Utilization\"\n } else {\n this.tableheader = \" State/UT\";\n this.ChartHeading = \"Top States by Capacity Utilization\"\n }\n\n });*/\n }\n\ngetVacChartData(value = \"\") {\n\n this.publicReportService.getVacPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n if (res) {\n\n this.last30DaysVaccinationData = res.last30DaysVaccination;\n // console.log(\"vacc report\", this.last30DaysVaccinationData);\n if (this.last30DaysVaccinationData.length) {\n this.prepareDataForVaccChart();\n }\n this.vaccinationByCategoryData = [];\n this.secondHalf = [];\n this.vaccinationByCategoryData = res.last30DaysVaccination;\n\n this.Downloadlast30DaysVaccination = res.last30DaysVaccination;\n this.DownloadweeklyReport = res.weeklyReport;\n this.Downloadlast30DaysAgeWiseVaccination = res.last30DaysAgeWiseVaccination;\n this.DownloadweeklyVacAgeWiseReport = res.weeklyVacAgeWiseReport;\n\n this.DownloadRegReportData = res.regReportData;\n this.DownloadRegWeekReportData = res.regWeekReportData;\n\n if (this.vaccinationByCategoryData.length) {\n const half = Math.ceil(this.vaccinationByCategoryData.length / 2);\n this.secondHalf = this.vaccinationByCategoryData.slice(-half);\n this.vaccinationByCategoryData = this.secondHalf;\n this.prepareDataForVaccinationByCategory();\n }\n\n\n this.vaccinationUpTrendsMonthData = res.last30DaysVaccinationUptrend;\n\n // if (this.vaccinationUpTrendsMonthData.length) {\n // this.prepareDataForVaccinationUpTrendsMonth();\n // }\n\n // this.registartionChartDataMonth = res.regReportData;\n // if (this.registartionChartDataMonth.length) {\n // this.prepareDataForRegChartMonth();\n // }\n\n if (value == \"Last 30 Days\") {\n this.isByDoses = true;\n this.isday = false;\n this.ismonth = true;\n this.isweek = false;\n this.isdayVacc = false;\n this.isweekVacc = false;\n this.ismonthVacc = false\n\n // this.isupTrendToday = false;\n // this.isupTrendMonth = true;\n // this.isupTrendAll = false;\n // this.isdayReg = false;\n // this.ismonthReg = true;\n // this.isweekReg = false;\n }\n }\n });\n }\n\n getVacChartDataAll(value = \"\") {\n this.publicReportService.getVacPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n if (res) {\n this.weeklyReportData = res.weeklyReport;\n\n // console.log(\"vacc report\", this.weeklyReportData);\n\n if (this.weeklyReportData.length) {\n this.prepareDataForVaccChartAll();\n }\n\n if (value == \"All\") {\n this.isday = false;\n this.ismonth = false;\n this.isweek = true;\n this.isdayVacc = false;\n this.isweekVacc = false;\n this.ismonthVacc = false\n }\n\n }\n });\n }\n\n //for getting district list\n getDistrictList(stateId) {\n\n this.publicReportService.getDistricts().subscribe((res) => this.districtList = res);\n if (stateId !== \"\") {\n this.districtListfromstate = this.districtList.filter(e => e.state_id == stateId);\n }\n }\n\n prepareDataForLastSevenDaysVacc() {\n const format = this.numberFormatPipe;\n if (this.lastSevenDayVaccChart) {\n this.lastSevenDayVaccChart.destroy();\n }\n const labels = this.last7DaysVaccination.map(obj => moment(obj.vaccine_date).format('DD MMM'));\n const doseOne = this.last7DaysVaccination.map(obj => obj.dose_one);\n const doseTwo = this.last7DaysVaccination.map(obj => obj.dose_two);\n var vaccConfig = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [{\n type: 'bar',\n label: this.translate.instant('Dose'),\n backgroundColor: \"rgb(85 86 253)\",\n borderColor: \"rgb(85 86 253)\",\n data: doseOne,\n }, {\n type: 'bar',\n label: 'Dose 2',\n backgroundColor: \"rgb(75 222 219)\",\n borderColor: \"rgb(75 222 219)\",\n data: doseTwo,\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 11,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n },\n }\n };\n\n var ctx = $('#vaccine-last-30');\n this.lastSevenDayVaccChart = new Chart(ctx, vaccConfig);\n }\n\n prepareDataForSemiPieChartsNew() {\n const format = this.numberFormatPipe;\n var configcmr2 = {\n type: 'pie',\n data: {\n datasets: [{\n data: [\n this.topBlockReport?.vaccination?.male,\n this.topBlockReport?.vaccination?.female,\n this.topBlockReport?.vaccination?.others\n ],\n backgroundColor: ['rgb(90, 141, 238)', 'rgb(245, 67, 148)', 'rgb(255 152 0)'],\n borderWidth: 1,\n }],\n labels: ['Male', 'Female', 'Other']\n },\n options: {\n cutoutPercentage: 70,\n rotation: 1 * Math.PI,\n circumference: 1 * Math.PI,\n responsive: true,\n animation: {\n animateScale: true,\n animateRotate: true\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var indice = tooltipItem.index;\n const value = data.datasets[0].data[indice] || 0\n const dataNum = Math.round(value * 100) / 100;\n return data.labels[indice] + ': ' + format.transform(data.datasets[0].data[indice]) + '';\n }\n }\n },\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: true,\n boxWidth: 7,\n padding: 15,\n fontSize: 11,\n }\n }\n }\n };\n\n var configcmr22 = {\n type: 'pie',\n data: {\n datasets: [{\n data: [\n this.topBlockReport?.vaccination?.covishield,\n this.topBlockReport?.vaccination?.covaxin,\n this.topBlockReport?.vaccination?.sputnik,\n // this.topBlockReport?.vaccination?.zycov,\n ],\n backgroundColor: ['rgb(0, 124, 195)', 'rgb(122, 193, 66)', 'rgb(255, 244, 76)'],\n borderWidth: 1,\n }],\n labels: ['Covishield', 'Covaxin', 'Sputnik V']\n },\n options: {\n cutoutPercentage: 70,\n rotation: 1 * Math.PI,\n circumference: 1 * Math.PI,\n responsive: true,\n animation: {\n animateScale: true,\n animateRotate: true\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var indice = tooltipItem.index;\n const value = data.datasets[0].data[indice] || 0\n const dataNum = Math.round(value * 100) / 100;\n return data.labels[indice] + ': ' + format.transform(data.datasets[0].data[indice]) + '';\n }\n }\n },\n\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: true,\n boxWidth: 7,\n padding: 15,\n fontSize: 11,\n }\n }\n }\n };\n\n if (this.genderVaccPieChart) {\n this.genderVaccPieChart.destroy()\n }\n\n if (this.materialVaccPieChart) {\n this.materialVaccPieChart.destroy()\n }\n\n const genderCtx = $('#total-vaccinated-gender');\n this.genderVaccPieChart = new Chart(genderCtx, configcmr2);\n\n const materialCtx = $('#material-used');\n this.materialVaccPieChart = new Chart(materialCtx, configcmr22);\n }\n\n prepareDataForStackedBarRegGraphNew() {\n if (this.lastSevenDayChart) {\n this.lastSevenDayChart.destroy();\n }\n const ctx = $('#lastSevenReg');\n const labels = this.lastSevenDaysReg.map(obj => {\n return moment(obj.reg_date).format('DD MMM')\n });\n const maleData = this.lastSevenDaysReg.map(obj => {\n return obj.male;\n });\n\n const femaleData = this.lastSevenDaysReg.map(obj => {\n return obj.female;\n });\n\n const othersData = this.lastSevenDaysReg.map(obj => {\n return obj.others;\n });\n const format = this.numberFormatPipe;\n var lastSevenDayRegChartObj = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [{\n type: 'bar',\n label:this.translate.instant('DASHBOARD.Male'),\n backgroundColor: \"rgb(85 86 253)\",\n borderColor: \"rgb(85 86 253)\",\n data: maleData,\n }, {\n type: 'bar',\n label:this.translate.instant('DASHBOARD.Female'),\n backgroundColor: \"rgba(255,105,165)\",\n borderColor: \"rgba(255,105,165)\",\n data: femaleData,\n },\n {\n type: 'bar',\n label: this.translate.instant('DASHBOARD.Other'),\n backgroundColor: \"rgb(72, 219, 179)\",\n borderColor: \"rgb(72, 219, 179)\",\n data: othersData,\n }]\n },\n options: {\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 10,\n boxWidth: 10,\n padding: 15,\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n ticks: {\n autoSkip: false,\n fontSize: 10\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n },\n }\n };\n\n this.lastSevenDayChart = new Chart(ctx, lastSevenDayRegChartObj);\n\n // lastSevenReg\n }\n\n nextLevel(type, state_id = '', district_id = '') {\n this.headerTextLbl = type;\n this.state_id = state_id;\n this.district_id = district_id;\n this.publicReportService.type.next(type);\n if (this.headerTextLbl == 'Center') {\n this.isnational = false;\n this.onload = false;\n return;\n } else if (this.headerTextLbl === 'India') {\n this.heading = 'National';\n this.isnational = true;\n this.site_logo = 'AN.png';\n this.onload = true;\n this.breadCrumbArr = [];\n this.headerTextLbl = 'State';\n this.district_id = \"\";\n this.districtname = \"\";\n this.state_id = \"\";\n if(this.district_id || this.state_id){\n this.counterFlag=true\n }else{\n this.counterFlag=false\n }\n $('#state').get(0).selectedIndex = 0;\n // document.getElementById(\"state\").setAttribute(\"value\",\"Select State\");\n this.publicReportService.ischeckSessionStarted.next(this.state_id);\n this.publicReportService.district_id.next(this.district_id);\n this.publicReportService.districtname.next(this.districtname);\n this.publicReportService.type.next(\"India\");\n this.publicReportService.isnational.next(true);\n this.getNewDashboardData('', '');\n this.isday=true;\n this.isweek =false;\n this.isweekVacc = false;\n this.isdayVacc = false;\n this.ismonthVacc = false\n this.ismonth = false;\n this.isdayReg = true;\n this.ismonthReg = false;\n this.isweekReg = false;\n // this.getVacChartData('Last 30 Days');\n // this.getRegChartDataMonth('Last 30 Days');\n } else if (this.headerTextLbl === 'State') {\n this.breadCrumbArr = [];\n this.isnational = false;\n this.onload = false;\n this.stateArr = this.states.find(e => e.state_id == this.state_id);\n this.statename = this.stateArr.state_name;\n this.heading = this.statename;\n this.site_logo = this.stateArr.state_code;\n this.breadCrumbArr.push({\n type: 'India',\n id: '',\n name: 'India'\n });\n this.breadCrumbArr.push({\n type: 'State',\n id: this.state_id,\n state_id: this.state_id,\n state_name: this.statename,\n name: this.statename\n });\n // this.isStatelogin = true;\n this.headerTextLbl = 'District';\n this.district_id = \"\";\n this.districtname = \"\";\n this.clickevent.emit(this.state_id);\n this.publicReportService.ischeckSessionStarted.next(this.state_id);\n this.publicReportService.statename.next(this.statename);\n this.publicReportService.district_id.next(this.district_id);\n this.publicReportService.districtname.next(this.districtname);\n this.publicReportService.isnational.next(false);\n this.publicReportService.type.next(\"State\");\n this.publicReportService.filterParams.type = \"State\";\n this.getNewDashboardData(this.state_id, '');\n this.isday=true;\n this.isweek =false;\n this.isweekVacc = false;\n this.isdayVacc = false;\n this.ismonthVacc = false\n this.ismonth = false;\n this.isdayReg = true;\n this.ismonthReg = false;\n this.isweekReg = false;\n // this.getVacChartData('Last 30 Days')\n // this.getRegChartDataMonth('Last 30 Days')\n } else if (this.headerTextLbl === 'District') {\n this.isnational = false;\n this.onload = false;\n this.state_id = state_id;\n this.stateArr = this.states.find(e => e.state_id == this.state_id);\n //console.log(this.stateArr);\n this.statename = this.stateArr.state_name;\n this.site_logo = this.stateArr.state_code;\n if (this.breadCrumbArr.length == 0) {\n this.breadCrumbArr = [];\n this.breadCrumbArr.push({\n type: 'State',\n id: this.state_id,\n state_name: this.statename,\n state_id: this.state_id,\n name: this.statename\n });\n }\n this.publicReportService.isnational.next(false);\n this.districtArr = this.getBeneficiariesGroupBy.find(e => e.district_id == this.district_id);\n this.districtname = this.districtArr.district_name;\n this.heading = this.districtname;\n this.publicReportService.districtname.next(this.districtname);\n this.publicReportService.filterParams.district_id = this.district_id;\n this.publicReportService.district_id.next(this.district_id);\n this.publicReportService.filterParams.type = \"District\";\n this.publicReportService.type.next(\"District\");\n this.breadCrumbArr.push({\n type: 'District',\n id: this.district_id,\n district_id: this.district_id,\n district_name: this.districtname,\n name: this.districtname\n });\n this.headerTextLbl = 'Center';\n this.getNewDashboardData(this.state_id, this.district_id);\n this.isday=true;\n this.isweek =false;\n this.isweekVacc = false;\n this.isdayVacc = false;\n this.ismonthVacc = false\n this.ismonth = false;\n this.isdayReg = true;\n this.ismonthReg = false;\n this.isweekReg = false;\n // this.getVacChartData('Last 30 Days')\n // this.getRegChartDataMonth('Last 30 Days')\n }\n this.publicReportService.breadCrumbArr = this.breadCrumbArr;\n // this.publicReportService.filterParams = {\n // state_id : this.state_id,\n // district_id : this.district_id,\n // heading : this.heading,\n // site_logo : this.site_logo\n // };\n\n if (this.state_id === undefined && this.district_id === undefined) {\n this.tableheader = \" Vaccination By States/UT\";\n this.ChartHeading = \"Top States by Capacity Utilization\"\n this.columnheading = \"States/UT\";\n } else if (this.state_id != '' && this.district_id == '') {\n this.tableheader = \" Vaccination By Districts\";\n this.ChartHeading = \"Top Districts by Capacity Utilization\";\n this.columnheading = \"Districts\";\n } else if (this.state_id != '' && this.district_id != '') {\n this.tableheader = \" Vaccination By Centers\";\n this.ChartHeading = \"Top Centers by Capacity Utilization\"\n this.columnheading = \"Centers\";\n } else {\n this.tableheader = \" Vaccination By State/UT\";\n this.ChartHeading = \"Top States by Capacity Utilization\"\n this.columnheading = \"States/UT\";\n }\n\n }\n\n delay(time) {\n\n return new Promise((resolve) => {\n\n setTimeout(() => {\n\n resolve(true)\n\n }, time);\n\n })\n\n }\n\n async prepareDataForLineGraphNew() {\n await this.delay(300);\n if (this.realTimeChart) {\n this.realTimeChart.destroy();\n }\n\n\n const ctx = $('#realtime');\n\n if (this.lineChartDataNew) {\n this.lineChartDataNew = this.lineChartDataNew.sort((a, b) => (a.timestamps > b.timestamps) ? 1 : -1)\n }\n\n // console.log(\"this.lineChartData1\", this.lineChartDataNew)\n\n /* const labels = _.map(this.lineChartData,(data) => {\n return data.label;\n }); */\n // const labels = _.map(this.lineChartDataNew, (data) => {\n // return moment(data.timestamps).subtract(330, \"minutes\").format('HH:mm');\n // });\n const labels = _.map(this.lineChartDataNew, (data) => {\n return moment(data.timestamps, \"YYYY-MM-DDTHH:mm:ssZ\").subtract(330, \"minutes\").format('HH:mm');\n });\n //console.log(\"lable\",labels )\n const data1 = _.map(this.lineChartDataNew, 'count');\n const data2 = _.map(this.lineChartDataNew, 'dose_one');\n const data3 = _.map(this.lineChartDataNew, 'dose_two');\n const data4 = _.map(this.lineChartDataNew, 'dose_pd');\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Total_Doses'),\n backgroundColor: 'rgb(20, 232, 251, 0.1)',\n borderColor: 'rgb(20, 232, 251)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data1,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Dose_One'),\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(90, 141, 238, 0.1)',\n borderColor: 'rgb(90, 141, 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79, 95, 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data2,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Dose_Two'),\n backgroundColor: 'rgb(251, 167, 20, 0.1)',\n borderColor: 'rgb(251, 167, 20)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(185, 118, 0)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data3,\n },\n {\n type: 'line',\n label: 'Precaution Dose',\n backgroundColor: 'rgb(245, 67, 148, 0.1)',\n borderColor: 'rgb(245, 67, 148)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(185, 118, 0)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data4,\n }\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.realTimeChart = new Chart(ctx, vaccConfig);\n this.realTimeChart.update();\n }\n\n\n\n prepareDataForDailyCapacityVsUtilization() {\n const format = this.numberFormatPipe;\n if (this.dailyCapVsUtilizeChart) {\n this.dailyCapVsUtilizeChart.destroy();\n }\n //console.log(\"this.dailyCapVsUtilizeChart\",this.dailyCapVsUtilizeData)\n const labels = this.dailyCapVsUtilizeData.map(obj => moment(obj.vaccine_date).format('DD MMM'));\n const data1 = this.dailyCapVsUtilizeData.map(obj => obj.count);\n const data2 = this.dailyCapVsUtilizeData.map(obj => obj.capacity);\n var vaccConfig = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [{\n type: 'bar',\n label: 'Vaccination',\n backgroundColor: \"rgb(85 86 253)\",\n borderColor: \"rgb(85 86 253)\",\n data: data1,\n }, {\n type: 'bar',\n label: 'Capacity',\n backgroundColor: \"rgb(75 222 219)\",\n borderColor: \"rgb(75 222 219)\",\n data: data2,\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 10,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n },\n }\n };\n\n var ctx = $('#dailyCapVsUtiliz');\n this.dailyCapVsUtilizeChart = new Chart(ctx, vaccConfig);\n }\n\n prepareDataFor5daysCenterAnalysis() {\n if (this.Last5daysCenterChart) {\n this.Last5daysCenterChart.destroy();\n }\n\n\n const ctx = $('#Last5daysCenterAnalysis');\n\n this.Last5daysCenterData = this.Last5daysCenterData.sort((a, b) => (a.timestamps > b.timestamps) ? 1 : -1)\n //console.log(\"this.Last5daysCenterData\", this.Last5daysCenterData)\n\n /* const labels = _.map(this.lineChartData,(data) => {\n return data.label;\n }); */\n // const labels = _.map(this.Last5daysCenterData,(data) => {\n // return moment(data.session_date).subtract(330,\"minutes\").format('HH:mm');\n // });\n this.Last5daysCenterData = this.Last5daysCenterData.sort((a, b) => (a.session_date > b.session_date) ? 1 : -1)\n const labels = this.Last5daysCenterData.map(obj => moment(obj.session_date).format('DD MMM'));\n\n // console.log(\"lable\", labels)\n const data1 = _.map(this.Last5daysCenterData, 'completed');\n //const data2 = _.map(this.Last5daysCenterData,'total');\n // const data3 = _.map(this.Last5daysCenterData,'ongoing');\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [{\n type: 'line',\n label: 'Completed',\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(90, 141, 238, 0.1)',\n borderColor: 'rgb(90, 141, 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79, 95, 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data1,\n }\n // {\n // type: 'line',\n // label: 'Ongoing',\n // backgroundColor: 'rgb(20, 232, 251, 0.1)',\n // borderColor: 'rgb(20, 232, 251)',\n // borderWidth: 2,\n // pointBackgroundColor: 'rgb(1, 161, 179)',\n // pointBorderWidth: 1,\n // pointRadius: 3,\n // fill: '2',\n\n // data: data3,\n // },\n // {\n // type: 'line',\n // label: 'Planned',\n // backgroundColor: 'rgb(20, 232, 251, 0.1)',\n // borderColor: 'rgb(20, 232, 251)',\n // borderWidth: 2,\n // pointBackgroundColor: 'rgb(1, 161, 179)',\n // pointBorderWidth: 1,\n // pointRadius: 3,\n\n // fill:true,\n\n // data: data2,\n // }\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n\n }\n }]\n }\n }\n };\n\n this.Last5daysCenterChart = new Chart(ctx, vaccConfig);\n this.Last5daysCenterChart.update();\n }\n\n //vaccination coverage by state\n\n loadVaccinationCoverageByState() {\n const format = this.numberFormatPipe;\n if (this.vaccinationCoverageByStateChart) {\n this.vaccinationCoverageByStateChart.destroy();\n }\n //vaccinationCoverageByStateChartData\n const labels = _.map(this.vaccinationCoverageByStateChartData, 'title')\n //const total = _.map(this.vaccinationCoverageByStateChartData,'total')\n const partially_vaccinated = _.map(this.vaccinationCoverageByStateChartData, 'partial_vaccinated')\n const totally_vaccinated = _.map(this.vaccinationCoverageByStateChartData, 'totally_vaccinated')\n const precaution_dose = _.map(this.vaccinationCoverageByStateChartData, 'precaution_dose')\n var configuration = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'bar',\n label: this.translate.instant('DASHBOARD.Dose_1'),\n backgroundColor: \"rgb(33, 204, 152, 1)\",\n borderColor: \"rgb(33, 204, 152, 1)\",\n data: partially_vaccinated,\n },\n \n {\n type: 'bar',\n label: this.translate.instant('DASHBOARD.Dose_2'),\n backgroundColor: \"rgb(242, 9, 251, 1)\",\n borderColor: \"rgb(242, 9, 251, 1)\",\n data: totally_vaccinated,\n },\n {\n type: 'bar',\n label: 'Precaution Dose',\n backgroundColor: \"rgb( 20, 232, 251, 1)\",\n borderColor: \"rgb( 20, 232, 251, 1)\",\n data: precaution_dose,\n }\n]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 11,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n barThickness: 10,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n },\n }\n };\n\n var ctx = $('#vaccination-coverage-by-state');\n this.vaccinationCoverageByStateChart = new Chart(ctx, configuration);\n this.vaccinationCoverageByStateChart.update();\n\n }\n\n //load AEFI report\n loadVaccinationAEFIChart() {\n const format = this.numberFormatPipe;\n\n if (this.vaccinationAEFIChart) {\n this.vaccinationAEFIChart.destroy();\n }\n\n // console.log(\"aefi\", this.vaccinationAEFIChartData);\n const labels = this.vaccinationAEFIChartData.map(obj => moment(obj.vaccine_date).format('DD MMM'));\n const data = _.map(this.vaccinationAEFIChartData, 'aefi');\n var configuration = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n\n type: 'line',\n label: 'Total',\n backgroundColor: 'rgb(245, 67, 148, 0.1)',\n borderColor: 'rgb(245, 67, 148)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(185, 118, 0)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data,\n\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 11,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: true,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n\n userCallback: function (label, index, labels) {\n // when the floored value is the same as the value we have a whole number\n if (Math.floor(label) === label) {\n return label;\n }\n\n },\n }\n }]\n },\n }\n };\n // this.vaccinationAEFIChart.yAxis.tickFormat(d3.format(',f'));\n var ctx = $('#vaccination-aefi-seven-days');\n this.vaccinationAEFIChart = new Chart(ctx, configuration);\n this.vaccinationAEFIChart.update();\n\n }\n\n //vaccination brand last 7 days chart\n loadVaccinationBrandLastSevenDaysChart() {\n const format = this.numberFormatPipe;\n if (this.vaccinationBrandChart) {\n this.vaccinationBrandChart.destroy();\n }\n const labels = this.vaccinationBrandChartData.map(obj => moment(obj.vaccine_date).format('DD MMM'));\n const doseOne = this.vaccinationBrandChartData.map(obj => obj.covishield);\n const doseTwo = this.vaccinationBrandChartData.map(obj => obj.covaxin);\n\n var configuration = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [{\n type: 'bar',\n label: this.translate.instant('SLOT_SEARCH.Covishield'),\n backgroundColor: \"rgb(85 86 253)\",\n borderColor: \"rgb(85 86 253)\",\n data: doseOne,\n }, {\n type: 'bar',\n label: this.translate.instant('SLOT_SEARCH.Covaxin'),\n backgroundColor: \"rgb(75 222 219)\",\n borderColor: \"rgb(75 222 219)\",\n data: doseTwo,\n }]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 10,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.25,\n beginAtZero: true,\n barThickness: 10,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: false,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n },\n }\n };\n\n var ctx = $('#vaccination-brand-seven-days');\n this.vaccinationBrandChart = new Chart(ctx, configuration);\n this.vaccinationBrandChart.update();\n }\n\n\n prepareDataForTop10StatesByCoverage() {\n const format = this.numberFormatPipe;\n if (this.Top10StatesChart) {\n this.Top10StatesChart.destroy();\n }\n // console.log(\"this.Top10StatesChart\", this.Top10States)\n\n const labels = this.Top10States.map(obj => obj.title);\n // const labels = this.Top10States.map(obj => moment(obj.vaccine_date).format('DD MMM'));\n // const data1 = this.Top10States.map(obj => obj.capacity);\n // const data2 = this.Top10States.map(obj => obj.count);\n const data3 = this.Top10States.map(obj => obj.utilization);\n // console.log(\"data3\", data3)\n\n\n var vaccConfig = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [{\n type: 'bar',\n label: 'Utilization',\n backgroundColor: \"rgb(85 86 253)\",\n borderColor: \"rgb(85 86 253)\",\n data: data3,\n\n }\n // {\n // type: 'bar',\n // label: 'Count',\n // backgroundColor: \"rgb(75 222 219)\",\n // borderColor: \"rgb(75 222 219)\",\n // data: data2,\n\n // }\n\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 10,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n var item = data.datasets[tooltipItem.datasetIndex].data[tooltipItem.index];\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label + \"%\";\n }\n // label: function(tooltipItem, data) {\n // var item = data.datasets[tooltipItem.datasetIndex].data[tooltipItem.index];\n // return item.y + ' ' + item.value;\n // }\n }\n },\n scales: {\n xAxes: [{\n barPercentage: 0.45,\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n // maxRotation: 90,\n // minRotation: 90\n },\n stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n\n }],\n yAxes: [{\n stacked: true,\n // margin: 100,\n\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true\n\n }\n }]\n },\n }\n };\n\n var ctx = $('#top10states');\n this.Top10StatesChart = new Chart(ctx, vaccConfig);\n }\n\n prepareDataForCowinStatistics() {\n const format = this.numberFormatPipe;\n // console.log(\"cowin\", this.CowinStatistics)\n var configcmrnew = {\n type: 'pie',\n data: {\n datasets: [{\n data: [\n this.CowinStatistics?.aadhaar,\n this.CowinStatistics?.others,\n\n ],\n backgroundColor: ['rgb(245, 67, 148)', 'rgb(90, 141, 238)'],\n borderWidth: 1,\n }],\n labels: ['Aadhar', 'Others']\n },\n options: {\n cutoutPercentage: 70,\n rotation: 1 * Math.PI,\n circumference: 1 * Math.PI,\n responsive: true,\n animation: {\n animateScale: true,\n animateRotate: true\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n\n var label = data.labels[tooltipItem.index] || '';\n\n if (label) {\n label += ': ';\n }\n const value = data.datasets[0].data[tooltipItem.index] || 0\n const dataNum = Math.round(value * 100) / 100;\n label += format.transform(dataNum);\n return label + \"%\";\n }\n }\n },\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: true,\n boxWidth: 7,\n padding: 15,\n fontSize: 10,\n }\n }\n }\n };\n\n\n if (this.CowinStatisticsChart) {\n this.CowinStatisticsChart.destroy()\n }\n\n\n\n const cowinstat = $('#cowinstat');\n this.CowinStatisticsChart = new Chart(cowinstat, configcmrnew);\n\n // const materialCtx = $('#material-used');\n // this.materialVaccPieChart = new Chart(materialCtx, configcmr22);\n }\n\n //vaccination trend last 7 days (stacked by dose)\n loadVaccinationDoseLastSevenDaysChart() {\n const format = this.numberFormatPipe;\n if (this.vaccinationDoseChart) {\n this.vaccinationDoseChart.destroy();\n }\n const labels = this.vaccinationDoseChartData.map(obj => moment(obj.vaccine_date).format('DD MMM'));\n const doseOne = this.vaccinationDoseChartData.map(obj => obj.dose_one);\n const doseTwo = this.vaccinationDoseChartData.map(obj => obj.dose_two);\n\n var configuration = {\n type: 'bar',\n data: {\n labels: labels,\n datasets: [{\n type: 'bar',\n label: 'Dose 1',\n backgroundColor: \"rgb(85 86 253)\",\n borderColor: \"rgb(85 86 253)\",\n borderWidth: 2,\n data: doseOne,\n }, {\n type: 'bar',\n label: 'Dose 2',\n backgroundColor: \"rgb(75 222 219)\",\n borderColor: \"rgb(75 222 219)\",\n borderWidth: 2,\n data: doseTwo,\n }]\n },\n\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 11,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'index',\n intersect: false,\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n scales: {\n xAxes: [{\n barWidth: 0.5,\n barPercentage: 0.25,\n beginAtZero: true,\n padding: 0,\n barThickness: 15,\n ticks: {\n autoSkip: false,\n fontSize: 10,\n },\n stacked: false,\n\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n stacked: false,\n barPercentage: 0.35,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 0],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n },\n }\n };\n\n var ctx = $('#vaccination-trends-seven-days');\n this.vaccinationDoseChart = new Chart(ctx, configuration);\n this.vaccinationDoseChart.update();\n }\n\n\n //vaccination By Age\n loadVaccinationByAgeChart() {\n const format = this.numberFormatPipe;\n if (this.vaccinationByAgeChart) {\n this.vaccinationByAgeChart.destroy();\n }\n // console.log(\"this.vaccinationByAgeChartData\", this.vaccinationByAgeChartData)\n const labels_data = Object.keys(this.vaccinationByAgeChartData);\n const labels = labels_data.map(obj => obj.replace('vac_', '').replace('_', '-'));\n labels.shift();\n const data = Object.values(this.vaccinationByAgeChartData);\n data.shift();\n var configuration = {\n type: 'pie',\n // data: {\n // labels: labels,\n // datasets: [{\n // type: 'bar',\n // label: 'Vaccinations By Age',\n // backgroundColor: \"rgb(85 86 253)\",\n // borderColor: \"rgb(85 86 253)\",\n // data: data,\n // }]\n // },\n\n data: {\n datasets: [{\n data: [\n this.vaccinationByAgeChartData.vac_15_17,\n this.vaccinationByAgeChartData.vac_18_45,\n this.vaccinationByAgeChartData.vac_45_60,\n this.vaccinationByAgeChartData.above_60\n ],\n backgroundColor: ['rgb(255, 152, 0)','rgb(170, 222, 167)', 'rgb(100, 194, 166)', 'rgb(45, 135, 187)'],\n borderWidth: 1,\n }],\n labels: ['15-17','18-44', '45-60', 'Above 60']\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n fontSize: 11,\n boxWidth: 10,\n padding: 15,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var indice = tooltipItem.index;\n const value = data.datasets[0].data[indice] || 0\n const dataNum = Math.round(value * 100) / 100;\n return data.labels[indice] + ': ' + format.transform(data.datasets[0].data[indice]) + '';\n }\n }\n },\n\n }\n };\n\n var ctx = $('#vaccination-by-age');\n this.vaccinationByAgeChart = new Chart(ctx, configuration);\n this.vaccinationByAgeChart.update();\n }\n\n async prepareDataForVaccChart() {\n\n await this.delay(300);\n if (this.realTimeChartlast30days) {\n this.realTimeChartlast30days.destroy();\n }\n\n\n const ctx = $('#realtimemonth');\n\n if (this.last30DaysVaccinationData) {\n this.last30DaysVaccinationData = this.last30DaysVaccinationData.sort((a, b) => (a.vaccine_date > b.vaccine_date) ? 1 : -1)\n }\n\n // console.log(\"this.lineChartData1month12\", this.last30DaysVaccinationData)\n\n const labels = this.last30DaysVaccinationData.map(obj => moment(obj.vaccine_date, \"YYYY-MM-DD\").format('DD MMM'));\n // const labels = this.last30DaysVaccinationData.map(obj => obj.vaccine_date);\n // console.log(\"lable1\",labels )\n const data1 = _.map(this.last30DaysVaccinationData, 'total');\n const data2 = _.map(this.last30DaysVaccinationData, 'dose_1');\n const data3 = _.map(this.last30DaysVaccinationData, 'dose_2');\n const data4 = _.map(this.last30DaysVaccinationData, 'dose_pd');\n const format = this.numberFormatPipe;\n var vaccConfigmonth = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Total_Doses'),\n backgroundColor: 'rgb(20, 232, 251, 0.1)',\n borderColor: 'rgb(20, 232, 251)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data1,\n },\n {\n type: 'line',\n label:this.translate.instant('DASHBOARD.Dose_One'),\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(90, 141, 238, 0.1)',\n borderColor: 'rgb(90, 141, 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79, 95, 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '2',\n\n data: data2,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Dose_Two'),\n backgroundColor: 'rgb(251, 167, 20, 0.1)',\n borderColor: 'rgb(251, 167, 20)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(185, 118, 0)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data3,\n },\n {\n type: 'line',\n label: 'Precaution Dose',\n backgroundColor: 'rgb(245, 67, 148, 0.1)',\n borderColor: 'rgb(245, 67, 148)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(185, 118, 0)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data4,\n }\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n }\n\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.realTimeChartlast30days = new Chart(ctx, vaccConfigmonth);\n this.realTimeChartlast30days.update();\n\n }\n\n async prepareDataForVaccChartAll() {\n\n await this.delay(300);\n if (this.realTimeChartweek) {\n this.realTimeChartweek.destroy();\n }\n\n\n const ctx = $('#realtimeweek');\n\n\n // console.log(\"this.lineChartDataweek\", this.weeklyReportData)\n const labels = this.weeklyReportData.map(obj => obj.label);\n\n\n // console.log(\"lable\", labels)\n\n const data1 = _.map(this.weeklyReportData, 'total');\n const data2 = _.map(this.weeklyReportData, 'dose1');\n const data3 = _.map(this.weeklyReportData, 'dose2');\n const data4 = _.map(this.weeklyReportData, 'dose_pd');\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Total_Doses'),\n backgroundColor: 'rgb(20, 232, 251, 0.1)',\n borderColor: 'rgb(20, 232, 251)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data1,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Dose_One'),\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(90, 141, 238, 0.1)',\n borderColor: 'rgb(90, 141, 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79, 95, 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '2',\n\n data: data2,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Dose_Two'),\n backgroundColor: 'rgb(251, 167, 20, 0.1)',\n borderColor: 'rgb(251, 167, 20)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(185, 118, 0)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data3,\n },\n {\n type: 'line',\n label: 'Precaution Dose',\n backgroundColor: 'rgb(245, 67, 148, 0.1)',\n borderColor: 'rgb(245, 67, 148)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(185, 118, 0)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data4,\n }\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.realTimeChartweek = new Chart(ctx, vaccConfig);\n this.realTimeChartweek.update();\n\n }\n\n onSortClick(event, filedName) {\n\n let target = event.currentTarget,\n classList = target.classList;\n\n if (classList.contains('fa-chevron-up')) {\n classList.remove('fa-chevron-up');\n classList.add('fa-chevron-down');\n this.sortDir = -1;\n } else {\n classList.add('fa-chevron-up');\n classList.remove('fa-chevron-down');\n this.sortDir = 1;\n }\n this.sortArr(filedName);\n }\n sortArr(colName: any) {\n this.getBeneficiariesGroupBy.sort((a, b) => {\n a = a[colName];\n b = b[colName];\n if (a < b) {\n return -1 * this.sortDir;\n }\n if (a > b) {\n return 1 * this.sortDir;\n }\n });\n }\n\n async prepareDataForRegChart() {\n\n await this.delay(300);\n if (this.registartionChart) {\n this.registartionChart.destroy();\n }\n\n\n const ctx = $('#realtimeregchart');\n if (this.registartionChartData) {\n this.registartionChartData = this.registartionChartData.sort((a, b) => (a.timestamps > b.timestamps) ? 1 : -1)\n }\n\n // console.log(\"this.registartionChartData12\", this.registartionChartData)\n // const labels = this.registartionChartData.map(obj => obj.label);\n\n const labels = _.map(this.registartionChartData, (data) => {\n return moment(data.timestamps, \"YYYY-MM-DD HH:mm:ssZ\").format('HH:mm');\n });\n\n\n const data1 = _.map(this.registartionChartData, 'total');\n const data2 = _.map(this.registartionChartData, 'age18');\n const data3 = _.map(this.registartionChartData, 'age45');\n const data4 = _.map(this.registartionChartData, 'age60');\n const data5 = _.map(this.registartionChartData, 'age15');\n const format = this.numberFormatPipe;\n var regConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label:this.translate.instant('DASHBOARD.Total'),\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(222, 137, 113, 0.1)',\n borderColor: 'rgb(222, 137, 113)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(222, 137, 113)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data1,\n },\n {\n type: 'line',\n label: '15-17',\n backgroundColor: 'rgb(33, 204, 152, 0.1)',\n borderColor: 'rgb(33, 204, 152)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+1',\n\n data: data5,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.18-44'),\n backgroundColor: 'rgb(20, 232, 251, 0.1)',\n borderColor: 'rgb(20, 232, 251)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data2,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.45-60'),\n backgroundColor: 'rgb(167, 208, 205, 0.1)',\n borderColor: 'rgb(167, 208, 205)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(167, 208, 205)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data3,\n },\n\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Above_60'),\n backgroundColor: 'rgb(90, 141, 238, 0.3)',\n borderColor: 'rgb(90, 141, 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79, 95, 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data4,\n }\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.registartionChart = new Chart(ctx, regConfig);\n this.registartionChart.update();\n\n }\n\n getRegChartDataMonth(value = \"\") {\n this.publicReportService.getVacPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n if (res) {\n this.registartionChartDataMonth = res.regReportData;\n if (this.registartionChartDataMonth.length) {\n this.prepareDataForRegChartMonth();\n }\n\n if (value == \"Last 30 Days\") {\n this.isdayReg = false;\n this.ismonthReg = true;\n this.isweekReg = false;\n\n }\n\n }\n });\n }\n\n async prepareDataForRegChartMonth() {\n\n await this.delay(300);\n if (this.registartionChartMonth) {\n this.registartionChartMonth.destroy();\n }\n\n const ctx = $('#realtimeregchartmonth');\n\n const labels = this.registartionChartDataMonth.map(obj => moment(obj.reg_date, \"YYYY-MM-DD\").format('DD MMM'));\n\n\n\n const data1 = _.map(this.registartionChartDataMonth, 'total');\n const data2 = _.map(this.registartionChartDataMonth, 'age18');\n const data3 = _.map(this.registartionChartDataMonth, 'age45');\n const data4 = _.map(this.registartionChartDataMonth, 'age60');\n const data5 = _.map(this.registartionChartDataMonth, 'age15');\n\n const format = this.numberFormatPipe;\n var regConfig = {\n type: 'line',\n data: {\n labels: labels,\n\n datasets: [\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Total'),\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(222, 137, 113, 0.1)',\n borderColor: 'rgb(222, 137, 113)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(222, 137, 113)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data1,\n },\n {\n type: 'line',\n label: '15-17',\n backgroundColor: 'rgb(33, 204, 152,0.1)',\n borderColor: 'rgb(33, 204, 152)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+1',\n\n data: data5,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.18-44'),\n backgroundColor: 'rgb(20, 232, 251, 0.1)',\n borderColor: 'rgb(20, 232, 251)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data2,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.45-60'),\n backgroundColor: 'rgb(167, 208, 205, 0.1)',\n borderColor: 'rgb(167, 208, 205)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(167, 208, 205)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data3,\n },\n\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Above_60'),\n backgroundColor: 'rgb(90, 141, 238, 0.3)',\n borderColor: 'rgb(90, 141, 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79, 95, 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data4,\n }\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.registartionChartMonth = new Chart(ctx, regConfig);\n this.registartionChartMonth.update();\n\n }\n\n getRegChartDataAll(value = \"\") {\n this.publicReportService.getVacPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n if (res) {\n this.registartionChartDataAll = res.regWeekReportData;\n\n // console.log(\"reg report Month\", this.registartionChartDataAll);\n\n if (this.registartionChartDataAll.length) {\n this.prepareDataForRegChartAll();\n }\n\n if (value == \"All\") {\n this.isdayReg = false;\n this.ismonthReg = false;\n this.isweekReg = true;\n\n }\n\n }\n });\n }\n\n async prepareDataForRegChartAll() {\n\n await this.delay(300);\n if (this.registartionChartAll) {\n this.registartionChartAll.destroy();\n }\n\n const ctx = $('#realtimeregweek');\n\n const labels = this.registartionChartDataAll.map(obj => obj.label);\n\n const data1 = _.map(this.registartionChartDataAll, 'total');\n const data2 = _.map(this.registartionChartDataAll, 'age18');\n const data3 = _.map(this.registartionChartDataAll, 'age45');\n const data4 = _.map(this.registartionChartDataAll, 'age60');\n const data5 = _.map(this.registartionChartDataAll, 'age15');\n const format = this.numberFormatPipe;\n var regConfig = {\n type: 'line',\n data: {\n labels: labels,\n\n datasets: [\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Total'),\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(222, 137, 113, 0.1)',\n borderColor: 'rgb(222, 137, 113)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(222, 137, 113)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data1,\n },\n {\n type: 'line',\n label:'15-17',\n backgroundColor: 'rgb(33, 204, 152, 0.1)',\n borderColor: 'rgb(33, 204, 152)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+1',\n\n data: data5,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.18-44'),\n backgroundColor: 'rgb(20, 232, 251, 0.1)',\n borderColor: 'rgb(20, 232, 251)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data2,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.45-60'),\n backgroundColor: 'rgb(167, 208, 205, 0.1)',\n borderColor: 'rgb(167, 208, 205)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(167, 208, 205)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data3,\n },\n\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Above_60'),\n backgroundColor: 'rgb(90, 141, 238, 0.3)',\n borderColor: 'rgb(90, 141, 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79, 95, 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data4,\n }\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.registartionChartAll = new Chart(ctx, regConfig);\n this.registartionChartAll.update();\n\n }\n\n getVaccByTab(tabName = '') {\n if (tabName == \"By Age\") {\n this.isByAge = true;\n this.isByDoses = false;\n this.isdayVacc = true;\n this.ismonthVacc = false;\n this.isweekVacc = false;\n this.isday = false;\n this.ismonth = false;\n this.isweek = false;\n this.isByCategory = false;\n this.getVaccChartAgewiseDataToday('Today')\n // this.getVaccChartAgewiseDataMonth('Last 30 Days')\n\n } else if (tabName == 'By Doses') {\n this.isByAge = false;\n this.isByDoses = true;\n this.isdayVacc = false;\n this.ismonthVacc = false;\n this.isweekVacc = false;\n this.isday = true;\n this.ismonth = false;\n this.isweek = false;\n this.isByCategory = false;\n // this.getVacChartData('Last 30 Days')\n // this.getNewDashboardData()\n // this.prepareDataForLineGraphNew();\n }\n\n else if (tabName == 'isday') {\n this.isByAge = false;\n this.isByDoses = true;\n this.isdayVacc = false;\n this.ismonthVacc = false;\n this.isweekVacc = false;\n this.isday = true;\n this.ismonth = false;\n this.isweek = false;\n this.isByCategory = false;\n this.prepareDataForLineGraphNew();\n }\n else if (tabName == 'isdayReg') {\n this.isByAge = false;\n this.isByDoses = true;\n this.isdayVacc = false;\n this.ismonthVacc = false;\n this.isweekVacc = false;\n this.isday = true;\n this.ismonth = false;\n this.isweek = false;\n this.isdayReg = true;\n this.ismonthReg = false;\n this.isweekReg = false;\n\n }\n\n\n\n\n else if (tabName == 'By Uptrends'){\n this.isupTrendToday = true;\n this.isupTrendMonth = false;\n this.isupTrendAll = false;\n this.prepareDataForVaccinationUpTrends();\n }\n }\n\n getVaccChartAgewiseDataMonth(value = \"\") {\n\n this.publicReportService.getVacPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n if (res) {\n this.vaccinationAgeDataMonth = res.last30DaysAgeWiseVaccination;\n // console.log(\"this.vaccinationAgeTodayData\", this.vaccinationAgeDataMonth)\n if (this.vaccinationAgeDataMonth.length) {\n this.prepareDataForVaccAgewiseLast30Days();\n }\n\n if (value == \"Last 30 Days\") {\n this.isByAge = true;\n this.isByDoses = false;\n this.isdayVacc = false;\n this.ismonthVacc = true;\n this.isweekVacc = false;\n this.isday = false;\n this.ismonth = false;\n this.isweek = false;\n }\n }\n });\n }\n\n async prepareDataForVaccAgewiseLast30Days() {\n await this.delay(300);\n if (this.vaccinationAgeChartMonth) {\n this.vaccinationAgeChartMonth.destroy();\n }\n\n const ctx = $('#vacc-agewise-month');\n\n const labels = this.vaccinationAgeDataMonth.map(obj => moment(obj.vaccine_date, \"YYYY-MM-DD\").format('DD MMM'));\n\n\n const data1 = _.map(this.vaccinationAgeDataMonth, 'total');\n const data2 = _.map(this.vaccinationAgeDataMonth, 'vac_18_45');\n const data3 = _.map(this.vaccinationAgeDataMonth, 'vac_45_60');\n const data4 = _.map(this.vaccinationAgeDataMonth, 'vac_60_above');\n const data5 = _.map(this.vaccinationAgeDataMonth, 'vac_15_17');\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Total'),\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(222, 137, 113, 0.1)',\n borderColor: 'rgb(222, 137, 113)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(222, 137, 113)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data1,\n },\n {\n type: 'line',\n label:'15-17',\n backgroundColor: 'rgb(33, 204, 152, 0.1)',\n borderColor: 'rgb(33, 204, 152)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(33, 204, 152)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+1',\n\n data: data5,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.18-44'),\n backgroundColor: 'rgb(20, 232, 251, 0.1)',\n borderColor: 'rgb(20, 232, 251)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data2,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.45-60'),\n backgroundColor: 'rgb(167, 208, 205, 0.1)',\n borderColor: 'rgb(167, 208, 205)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(167, 208, 205)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data3,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Above_60'),\n backgroundColor: 'rgb(90, 141, 238, 0.3)',\n borderColor: 'rgb(90, 141, 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79, 95, 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data4,\n }\n\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.vaccinationAgeChartMonth = new Chart(ctx, vaccConfig);\n this.vaccinationAgeChartMonth.update();\n }\n\n\n getVaccChartAgewiseDataAll(value = \"\") {\n\n this.publicReportService.getVacPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n if (res) {\n this.vaccinationAgeDataAll = res.weeklyVacAgeWiseReport;\n // console.log(\"this.vaccinationAgeDataAll\", this.vaccinationAgeDataAll)\n if (this.vaccinationAgeDataAll.length) {\n this.prepareDataForVaccAgewiseAll();\n }\n\n if (value == \"All\") {\n this.isByAge = true;\n this.isByDoses = false;\n this.isdayVacc = false;\n this.ismonthVacc = false;\n this.isweekVacc = true;\n this.isday = false;\n this.ismonth = false;\n this.isweek = false;\n this.isByCategory = false;\n }\n }\n });\n }\n\n\n async prepareDataForVaccAgewiseAll() {\n await this.delay(300);\n if (this.vaccinationAgeChartAll) {\n this.vaccinationAgeChartAll.destroy();\n }\n\n\n const ctx = $('#vacc-agewise-all');\n\n const labels = this.vaccinationAgeDataAll.map(obj => obj.label);\n\n\n const data1 = _.map(this.vaccinationAgeDataAll, 'total');\n const data2 = _.map(this.vaccinationAgeDataAll, 'vac_18_45');\n const data3 = _.map(this.vaccinationAgeDataAll, 'vac_45_60');\n const data4 = _.map(this.vaccinationAgeDataAll, 'vac_60_above');\n const data5 = _.map(this.vaccinationAgeDataAll, 'vac_15_17');\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Total'),\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(222, 137, 113, 0.1)',\n borderColor: 'rgb(222, 137, 113)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(222, 137, 113)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data1,\n },\n {\n type: 'line',\n label:'15-17',\n backgroundColor: 'rgb(33, 204, 152, 0.1)',\n borderColor: 'rgb(1, 161, 179)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+1',\n\n data: data5,\n },\n {\n type: 'line',\n label:this.translate.instant('DASHBOARD.18-44'),\n backgroundColor: 'rgb(20, 232, 251, 0.1)',\n borderColor: 'rgb(20, 232, 251)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data2,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.45-60'),\n backgroundColor: 'rgb(167, 208, 205, 0.1)',\n borderColor: 'rgb(167, 208, 205)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(167, 208, 205)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data3,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Above_60'),\n backgroundColor: 'rgb(90, 141, 238, 0.3)',\n borderColor: 'rgb(90, 141, 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79, 95, 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data4,\n }\n\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.vaccinationAgeChartAll = new Chart(ctx, vaccConfig);\n this.vaccinationAgeChartAll.update();\n }\n\n getVaccChartAgewiseDataToday(value = \"\") {\n\n this.publicReportService.getPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n if (res) {\n this.vaccinationAgeDataToday = res.vaccinationDoneByTimeAgeWise;\n // console.log(\"this.vaccinationAgeDataToday\", this.vaccinationAgeDataToday)\n if (this.vaccinationAgeDataToday.length) {\n this.prepareDataForVaccAgewiseToday();\n }\n\n if (value == \"Today\") {\n this.isByAge = true;\n this.isByDoses = false;\n this.isdayVacc = true;\n this.ismonthVacc = false;\n this.isweekVacc = false;\n this.isday = false;\n this.ismonth = false;\n this.isweek = false;\n this.isByCategory = false;\n }\n }\n });\n }\n\n async prepareDataForVaccAgewiseToday() {\n await this.delay(300);\n\n if (this.vaccinationAgeChartToday) {\n this.vaccinationAgeChartToday.destroy();\n }\n if (this.vaccinationAgeDataToday) {\n this.vaccinationAgeDataToday = this.vaccinationAgeDataToday.sort((a, b) => (a.timestamps > b.timestamps) ? 1 : -1)\n }\n const ctx = $('#vacc-agewise-today');\n\n\n const labels = _.map(this.vaccinationAgeDataToday, (data) => {\n return moment(data.timestamps, \"YYYY-MM-DDTHH:mm:ssZ\").subtract(330, \"minutes\").format('HH:mm');\n });\n\n\n const data1 = _.map(this.vaccinationAgeDataToday, 'total');\n const data2 = _.map(this.vaccinationAgeDataToday, 'vac_18_45');\n const data3 = _.map(this.vaccinationAgeDataToday, 'vac_45_60');\n const data4 = _.map(this.vaccinationAgeDataToday, 'vac_60_above');\n const data5 = _.map(this.vaccinationAgeDataToday, 'vac_15_17');\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label:this.translate.instant('DASHBOARD.Total'),\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(222, 137, 113, 0.1)',\n borderColor: 'rgb(222, 137, 113)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(222, 137, 113)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data1,\n },\n {\n type: 'line',\n label:'15-17',\n backgroundColor: 'rgb(33, 204, 152, 0.1)',\n borderColor: 'rgb(33, 204, 152)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+1',\n\n data: data5,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.18-44'),\n backgroundColor: 'rgb(20, 232, 251, 0.1)',\n borderColor: 'rgb(20, 232, 251)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data2,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.45-60'),\n backgroundColor: 'rgb(167, 208, 205, 0.1)',\n borderColor: 'rgb(167, 208, 205)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(167, 208, 205)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data3,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Above_60'),\n backgroundColor: 'rgb(90, 141, 238, 0.2)',\n borderColor: 'rgb(90, 141, 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79, 95, 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data4,\n }\n\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.vaccinationAgeChartToday = new Chart(ctx, vaccConfig);\n this.vaccinationAgeChartToday.update();\n }\n\n loadDataByStateTab(state_id = \"\", district_id = \"\"){\n this.isByAge = false;\n this.isByDoses = true;\n this.isdayVacc = false;\n this.ismonthVacc = false;\n this.isweekVacc = false;\n this.isday = true;\n this.ismonth = false;\n this.isweek = false;\n\n this.getNewDashboardData(state_id,district_id);\n // this.getVacChartData('Last 30 Days')\n // this.getRegChartDataMonth('Last 30 Days')\n // this.getVaccChartAgewiseDataMonth('Last 30 Days')\n\n }\n\n loadDataByDitrictTab(district_id = \"\"){\n this.isByAge = false;\n this.isByDoses = true;\n this.isdayVacc = false;\n this.ismonthVacc = false;\n this.isweekVacc = false;\n this.isday = true;\n this.ismonth = false;\n this.isweek = false;\n\n this.getNewDashboardDataforDistrict(district_id);\n // this.getVacChartData('Last 30 Days')\n // this.getRegChartDataMonth('Last 30 Days')\n // this.getVaccChartAgewiseDataMonth('Last 30 Days')\n\n }\n\n prepareDataForVaccinationUpTrends() {\n if (this.vaccinationUpTrendsChart) {\n this.vaccinationUpTrendsChart.destroy();\n }\n\n\n const ctx = $('#vacc-uptrends');\n\n if (this.vaccinationUpTrendsData) {\n this.vaccinationUpTrendsData = this.vaccinationUpTrendsData.sort((a, b) => (a.timestamps > b.timestamps) ? 1 : -1)\n }\n\n\n const labels = _.map(this.vaccinationUpTrendsData, (data) => {\n return moment(data.timestamps, \"YYYY-MM-DDTHH:mm:ssZ\").subtract(330, \"minutes\").format('HH:mm');\n });\n\n const data1 = _.map(this.vaccinationUpTrendsData, 'count');\n const data2 = _.map(this.vaccinationUpTrendsData, 'dose_one');\n const data3 = _.map(this.vaccinationUpTrendsData, 'dose_two');\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label: 'Total Doses',\n backgroundColor: 'rgb(81,196,211, 0.1)',\n borderColor: 'rgb(81,196,211)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(81,196,211)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '2',\n\n data: data1\n },\n {\n type: 'line',\n label: 'Dose One',\n backgroundColor: 'rgb(0,145,124, 0.1)',\n borderColor: 'rgb(0,145,124)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(0,145,124)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '2',\n\n data: data2,\n },\n {\n type: 'line',\n label: 'Dose Two',\n backgroundColor: 'rgb(216,58,86, 0.15)',\n borderColor: 'rgb(216,58,86)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(216,58,86)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data3,\n }\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.vaccinationUpTrendsChart = new Chart(ctx, vaccConfig);\n this.vaccinationUpTrendsChart.update();\n }\n\n\n prepareDataForRegistarionUpTrends() {\n\n\n if (this.registrationUpTrendsChart) {\n this.registrationUpTrendsChart.destroy();\n }\n\n\n const ctx = $('#reg-uptrends');\n if (this.registrationUpTrendsData) {\n this.registrationUpTrendsData = this.registrationUpTrendsData.sort((a, b) => (a.timestamps > b.timestamps) ? 1 : -1)\n }\n\n // console.log(\"this.registartionChartData12\", this.registartionChartData)\n // const labels = this.registartionChartData.map(obj => obj.label);\n\n const labels = _.map(this.registrationUpTrendsData, (data) => {\n return moment(data.timestamps, \"YYYY-MM-DD HH:mm:ssZ\").format('HH:mm');\n });\n\n\n const data1 = _.map(this.registrationUpTrendsData, 'total');\n const data2 = _.map(this.registrationUpTrendsData, 'age18');\n const data3 = _.map(this.registrationUpTrendsData, 'age45');\n const data4 = _.map(this.registrationUpTrendsData, 'age60');\n const format = this.numberFormatPipe;\n var regConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Total'),\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(222, 137, 113, 0.1)',\n borderColor: 'rgb(222, 137, 113)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(222, 137, 113)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '+2',\n\n data: data1,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.18-44'),\n backgroundColor: 'rgb(20, 232, 251, 0.1)',\n borderColor: 'rgb(20, 232, 251)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: '2',\n\n data: data2,\n },\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.45-60'),\n backgroundColor: 'rgb(167, 208, 205, 0.1)',\n borderColor: 'rgb(167, 208, 205)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(167, 208, 205)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data3,\n },\n\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Above_60'),\n backgroundColor: 'rgb(90, 141, 238, 0.3)',\n borderColor: 'rgb(90, 141, 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79, 95, 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data4,\n }\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.registartionChart = new Chart(ctx, regConfig);\n this.registartionChart.update();\n\n }\n\n\n\n // getVaccChartCategoryWise(value = \"\") {\n\n // this.publicReportService.getPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n // if (res) {\n // this.vaccinationByCategoryData = res.vaccinationDoneByTimeAgeWise;\n // console.log(\"this.vaccinationByCategoryData\", this.vaccinationByCategoryData)\n // // if (this.vaccinationByCategoryData.length) {\n // // this.prepareDataForVaccinationByCategory();\n // // }\n\n\n // }\n // });\n // }\n\n prepareDataForVaccinationByCategory() {\n if (this.vaccinationByCategoryChart) {\n this.vaccinationByCategoryChart.destroy();\n }\n\n// console.log(\"vaccinationByCategoryDatatest\", this.vaccinationByCategoryData)\n const ctx = $('#vacc-bycategory');\n\n if (this.vaccinationByCategoryData) {\n this.vaccinationByCategoryData = this.vaccinationByCategoryData.sort((a, b) => (a.vaccine_date > b.vaccine_date) ? 1 : -1)\n }\n\n\n const labels = this.vaccinationByCategoryData.map(obj => moment(obj.vaccine_date, \"YYYY-MM-DD\").format('DD MMM'));\n\n const data1 = _.map(this.vaccinationByCategoryData, 'rural');\n const data2 = _.map(this.vaccinationByCategoryData, 'urban');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n labels: labels,\n datasets: [\n {\n type: 'line',\n label: this.translate.instant('DASHBOARD.Rural'),\n backgroundColor: 'rgb(20, 232, 251, 0.1)',\n borderColor: 'rgb(20, 232, 251)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(1, 161, 179)',\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data1,\n },\n {\n type: 'line',\n label:this.translate.instant('DASHBOARD.Urban'),\n // backgroundColor: 'rgb(255, 152 , 0, 0.5)',\n backgroundColor: 'rgb(90, 141, 238, 0.1)',\n borderColor: 'rgb(90, 141, 238)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(79, 95, 125)\",\n pointBorderWidth: 1,\n pointRadius: 3,\n fill: true,\n\n data: data2,\n }\n\n ]\n },\n options: {\n legend: {\n display: true,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 20,\n padding: 15,\n fontSize: 11,\n }\n },\n tooltips: {\n mode: 'label',\n callbacks: {\n label: function (tooltipItem, data) {\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n beginAtZero: false,\n ticks: {\n autoSkip: false,\n fontSize: 11,\n },\n // stacked: true,\n gridLines: {\n display: false,\n drawBorder: false,\n },\n }],\n yAxes: [{\n // stacked: true,\n barPercentage: 0.3,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [5, 2],\n zeroLineColor: 'rgb(247, 250, 252)',\n },\n ticks: {\n fontSize: 9,\n beginAtZero: true,\n callback: function (label, index, labels) {\n return label / 1000 + 'k';\n }\n }\n }]\n }\n }\n };\n\n this.vaccinationByCategoryChart = new Chart(ctx, vaccConfig);\n this.vaccinationByCategoryChart.update();\n }\n\n // getUptrendVacChartDataMonth(value = \"\") {\n\n // this.publicReportService.getVacPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n // if (res) {\n\n // this.vaccinationUpTrendsMonthData = res.last30DaysVaccinationUptrend;\n\n // if (this.vaccinationUpTrendsMonthData.length) {\n // this.prepareDataForVaccinationUpTrendsMonth();\n // }\n\n // if (value == \"Last 30 Days\") {\n\n // this.isupTrendToday = false;\n // this.isupTrendMonth = true;\n // this.isupTrendAll = false;\n // }\n // }\n // });\n // }\n\n // prepareDataForVaccinationUpTrendsMonth() {\n // if (this.vaccinationUpTrendsMonthChart) {\n // this.vaccinationUpTrendsMonthChart.destroy();\n // }\n\n // const ctx = $('#vacc-uptrends-month');\n\n // const labels = this.vaccinationUpTrendsMonthData.map(obj => moment(obj.vaccine_date, \"YYYY-MM-DD\").format('DD MMM'));\n\n // const data1 = _.map(this.vaccinationUpTrendsMonthData, 'total');\n // const data2 = _.map(this.vaccinationUpTrendsMonthData, 'dose_1');\n // const data3 = _.map(this.vaccinationUpTrendsMonthData, 'dose_2');\n // const format = this.numberFormatPipe;\n // var vaccConfig = {\n // type: 'line',\n // data: {\n // labels: labels,\n // datasets: [\n // {\n // type: 'line',\n // label: 'Total Doses',\n // backgroundColor: 'rgb(81,196,211, 0.1)',\n // borderColor: 'rgb(81,196,211)',\n // borderWidth: 2,\n // pointBackgroundColor: 'rgb(81,196,211)',\n // pointBorderWidth: 1,\n // pointRadius: 3,\n // fill: '2',\n\n // data: data1,\n // bezierCurve : false\n // },\n // {\n // type: 'line',\n // label: 'Dose One',\n // backgroundColor: 'rgb(0,145,124, 0.1)',\n // borderColor: 'rgb(0,145,124)',\n // borderWidth: 2,\n // pointBackgroundColor: \"rgb(0,145,124)\",\n // pointBorderWidth: 1,\n // pointRadius: 3,\n // fill: '2',\n\n // data: data2,\n // bezierCurve : false\n // },\n // {\n // type: 'line',\n // label: 'Dose Two',\n // backgroundColor: 'rgb(216,58,86, 0.15)',\n // borderColor: 'rgb(216,58,86)',\n // borderWidth: 2,\n // pointBackgroundColor: 'rgb(216,58,86)',\n // pointBorderWidth: 1,\n // pointRadius: 3,\n // fill: true,\n\n // data: data3,\n // bezierCurve : false\n // }\n // ]\n // },\n // options: {\n // legend: {\n // display: true,\n // position: 'bottom',\n // labels: {\n // usePointStyle: false,\n // boxWidth: 20,\n // padding: 15,\n // fontSize: 11,\n // }\n // },\n // tooltips: {\n // mode: 'label',\n // callbacks: {\n // label: function (tooltipItem, data) {\n // var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n // if (label) {\n // label += ': ';\n // }\n\n // const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n // label += format.transform(dataNum);\n // return label;\n // }\n // }\n // },\n // responsive: true,\n // scales: {\n // xAxes: [{\n // beginAtZero: false,\n // ticks: {\n // autoSkip: false,\n // fontSize: 11,\n // },\n // // stacked: true,\n // gridLines: {\n // display: false,\n // drawBorder: false,\n // },\n // }],\n // yAxes: [{\n // // stacked: true,\n // barPercentage: 0.3,\n // gridLines: {\n // color: 'rgb(247, 250, 252)',\n // borderDash: [5, 2],\n // zeroLineColor: 'rgb(247, 250, 252)',\n // },\n // ticks: {\n // fontSize: 9,\n // beginAtZero: true,\n // callback: function (label, index, labels) {\n // return label / 1000 + 'k';\n // }\n // }\n // }]\n // }\n // }\n // };\n\n // this.vaccinationUpTrendsMonthChart = new Chart(ctx, vaccConfig);\n // this.vaccinationUpTrendsMonthChart.update();\n // }\n\n\n // getUptrendVacChartDataAll(value = \"\") {\n\n // this.publicReportService.getVacPublicReports(this.state_id, this.district_id, this.todaysdate).subscribe(res => {\n // if (res) {\n\n // this.vaccinationUpTrendsAllData = res.weeklyReportUptrend;\n // // console.log(\"vacc report\", this.last30DaysVaccinationData);\n // if (this.vaccinationUpTrendsAllData.length) {\n // this.prepareDataForVaccinationUpTrendsAll();\n // }\n\n // if (value == \"All\") {\n\n // this.isupTrendToday = false;\n // this.isupTrendMonth = false;\n // this.isupTrendAll = true;\n // }\n // }\n // });\n // }\n\n // prepareDataForVaccinationUpTrendsAll() {\n // if (this.vaccinationUpTrendsAllChart) {\n // this.vaccinationUpTrendsAllChart.destroy();\n // }\n\n // const ctx = $('#vacc-uptrends-week');\n\n // const labels = this.vaccinationUpTrendsAllData.map(obj => obj.label);\n\n // const data1 = _.map(this.vaccinationUpTrendsAllData, 'total');\n // const data2 = _.map(this.vaccinationUpTrendsAllData, 'dose1');\n // const data3 = _.map(this.vaccinationUpTrendsAllData, 'dose2');\n // const format = this.numberFormatPipe;\n // var vaccConfig = {\n // type: 'line',\n // data: {\n // labels: labels,\n // datasets: [\n // {\n // type: 'line',\n // label: 'Total Doses',\n // backgroundColor: 'rgb(81,196,211, 0.1)',\n // borderColor: 'rgb(81,196,211)',\n // borderWidth: 2,\n // pointBackgroundColor: 'rgb(81,196,211)',\n // pointBorderWidth: 1,\n // pointRadius: 3,\n // fill: '2',\n\n // data: data1,\n // },\n // {\n // type: 'line',\n // label: 'Dose One',\n // backgroundColor: 'rgb(0,145,124, 0.1)',\n // borderColor: 'rgb(0,145,124)',\n // borderWidth: 2,\n // pointBackgroundColor: \"rgb(0,145,124)\",\n // pointBorderWidth: 1,\n // pointRadius: 3,\n // fill: '2',\n\n // data: data2,\n // },\n // {\n // type: 'line',\n // label: 'Dose Two',\n // backgroundColor: 'rgb(216,58,86, 0.15)',\n // borderColor: 'rgb(216,58,86)',\n // borderWidth: 2,\n // pointBackgroundColor: 'rgb(216,58,86)',\n // pointBorderWidth: 1,\n // pointRadius: 3,\n // fill: true,\n\n // data: data3,\n // }\n // ]\n // },\n // options: {\n // legend: {\n // display: true,\n // position: 'bottom',\n // labels: {\n // usePointStyle: false,\n // boxWidth: 20,\n // padding: 15,\n // fontSize: 11,\n // }\n // },\n // tooltips: {\n // mode: 'label',\n // callbacks: {\n // label: function (tooltipItem, data) {\n // var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n // if (label) {\n // label += ': ';\n // }\n\n // const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n // label += format.transform(dataNum);\n // return label;\n // }\n // }\n // },\n // responsive: true,\n // scales: {\n // xAxes: [{\n // beginAtZero: false,\n // ticks: {\n // autoSkip: false,\n // fontSize: 11,\n // },\n // // stacked: true,\n // gridLines: {\n // display: false,\n // drawBorder: false,\n // },\n // }],\n // yAxes: [{\n // // stacked: true,\n // barPercentage: 0.3,\n // gridLines: {\n // color: 'rgb(247, 250, 252)',\n // borderDash: [5, 2],\n // zeroLineColor: 'rgb(247, 250, 252)',\n // },\n // ticks: {\n // fontSize: 9,\n // beginAtZero: true,\n // callback: function (label, index, labels) {\n // return label / 1000 + 'k';\n // }\n // }\n // }]\n // }\n // }\n // };\n\n // this.vaccinationUpTrendsAllChart = new Chart(ctx, vaccConfig);\n // this.vaccinationUpTrendsAllChart.update();\n // }\n\nExportDashboardDataInJson(){\n this.isState = (document.getElementById(\"state\") as HTMLInputElement).value;\n this.isDistrict = (document.getElementById(\"district\") as HTMLInputElement).value;\n let key = \"\";\n if(this.isState !=\"\" && !this.isDistrict){\n key = \"districtWiseVaccination\";\n }\n else if(this.isState !=\"\" && this.isDistrict != \"\"){\n key = \"centerWiseVaccination\";\n }\n else if(!this.isDistrict && !this.isState){\n key = \"stateWiseVaccination\";\n }\n\n let jsonDashboardData: object = {\n \"vaccinationDoneByTimeToday\": this.DownlloadVaccinationDoneByTime,\n \"last30DaysVaccination\": this.Downloadlast30DaysVaccination,\n \"weeklyVaccination\": this.DownloadweeklyReport,\n \"vaccinationDoneByTimeAgeWiseToday\": this.DownlloadVaccinationDoneByTimeAgeWise,\n \"last30DaysAgeWiseVaccination\": this.Downloadlast30DaysAgeWiseVaccination,\n \"weeklyAgeWiseVaccination\": this.DownloadweeklyVacAgeWiseReport,\n \"registrationDoneByTimeToday\": this.DownlloadImeWiseTodayRegReport,\n \"last30DaysRegistration\": this.DownloadRegReportData,\n \"weeklyRegistration\": this.DownloadRegWeekReportData,\n \"last30DaysAefiReported\": this.DownlloadLast30DaysAefi,\n \"vaccinationByAge\": this.DownlloadVaccinationByAge\n };\n jsonDashboardData[key] = this.getBeneficiariesGroupBy;\n const blob = new Blob([JSON.stringify(jsonDashboardData)], {type : 'application/json'});\n saveAs(blob, 'dashboard_export.json');\n}\nExportDashboardDataInExcel(){\n const header = ['label', 'dose_one', 'dose_two','precaution_dose','count'];\n /**************DownloadVaccinationByDoses Today**************/\n const exportdataByDoseToday = [];\n if (this.DownlloadVaccinationDoneByTime) {\n this.DownlloadVaccinationDoneByTime.forEach(element => {\n exportdataByDoseToday.push([element.label,element.dose_one,element.dose_two,element.dose_pd,element.count])\n\n });\n }\n const workbook = new Excel.Workbook();\n const worksheet1 = workbook.addWorksheet('VaccinationDoneByTimeToday');\n const headerRow = worksheet1.addRow(header);\n headerRow.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n });\n headerRow.alignment = { vertical: 'middle', horizontal: 'center' };\n\n\n exportdataByDoseToday.forEach(d => {\n const row = worksheet1.addRow(d);\n});\nworksheet1.getColumn(1).width = 20;\nworksheet1.getColumn(2).width = 20;\nworksheet1.getColumn(3).width = 20;\n// worksheet1.getColumn(4).width = 20;\nworksheet1.addRow([]);\n\n /**************DownloadVaccinationByDoses 30 Days**************/\n const header001 = ['vaccine_date', 'dose_1', 'dose_2','precaution_dose','total'];\n const exportdataByDose30Days = [];\n if (this.Downloadlast30DaysVaccination) {\n this.Downloadlast30DaysVaccination.forEach(element => {\n exportdataByDose30Days.push([element.vaccine_date,element.dose_1,element.dose_2,element.dose_pd,\n element.total])\n\n });\n }\n const worksheet2 = workbook.addWorksheet('Last30DaysVaccination');\n const headerRow2 = worksheet2.addRow(header001);\n headerRow2.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n });\n headerRow2.alignment = { vertical: 'middle', horizontal: 'center' };\n exportdataByDose30Days.forEach(d => {\n const row = worksheet2.addRow(d);\n});\nworksheet2.getColumn(1).width = 20;\nworksheet2.getColumn(2).width = 20;\nworksheet2.getColumn(3).width = 20;\nworksheet2.getColumn(4).width = 20;\n// worksheet2.getColumn(5).width = 20;\nworksheet2.addRow([]);\n\n /**************DownloadVaccinationByDoses ALL**************/\n const header002 = ['label', 'dose1', 'dose2','precaution_dose','total'];\n\n const exportdataByDoseAll = [];\n if (this.DownloadweeklyReport) {\n this.DownloadweeklyReport.forEach(element => {\n exportdataByDoseAll.push([element.label,element.dose1,element.dose2,element.dose_pd,element.total])\n\n });\n }\n const worksheet3 = workbook.addWorksheet('WeeklyVaccination');\n const headerRow3 = worksheet3.addRow(header002);\n headerRow3.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n });\n headerRow3.alignment = { vertical: 'middle', horizontal: 'center' };\n exportdataByDoseAll.forEach(d => {\n const row = worksheet3.addRow(d);\n});\nworksheet3.getColumn(1).width = 20;\nworksheet3.getColumn(2).width = 20;\nworksheet3.getColumn(3).width = 20;\nworksheet3.getColumn(4).width = 20;\n// worksheet2.getColumn(5).width = 20;\nworksheet3.addRow([]);\n\n/**************exportdataByAgeToday**************/\nconst header1 = ['label', 'vac_15_17','vac_18_45', 'vac_45_60','vac_60_above', 'total'];\n\nconst exportdataByAgeToday = [];\nif (this.DownlloadVaccinationDoneByTimeAgeWise) {\n this.DownlloadVaccinationDoneByTimeAgeWise.forEach(element => {\n exportdataByAgeToday.push([element.label,element.vac_15_17,element.vac_18_45,element.vac_45_60,element.vac_60_above,element.total])\n\n });\n}\n//const worksheet4 = workbook.addWorksheet('Today Vaccination-Agewise');\nconst worksheet4 = workbook.addWorksheet('VaccinationByTimeAgeWiseToday');\n\nconst header1Row = worksheet4.addRow(header1);\nheader1Row.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nheader1Row.alignment = { vertical: 'middle', horizontal: 'center' };\n\n\nexportdataByAgeToday.forEach(d => {\nconst row = worksheet4.addRow(d);\n});\nworksheet4.getColumn(1).width = 20;\nworksheet4.getColumn(2).width = 20;\nworksheet4.getColumn(3).width = 20;\nworksheet4.getColumn(4).width = 20;\nworksheet4.getColumn(5).width = 20;\nworksheet4.getColumn(6).width = 20;\nworksheet4.addRow([]);\n\n/**************exportdataByAge30Days**************/\nconst header1001 = ['vaccine_date', 'vac_15_17','vac_18_45', 'vac_45_60','vac_60_above', 'total'];\n\nconst exportdataByAge30Days = [];\nif (this.Downloadlast30DaysAgeWiseVaccination) {\n this.Downloadlast30DaysAgeWiseVaccination.forEach(element => {\n exportdataByAge30Days.push([element.vaccine_date,element.vac_15_17,element.vac_18_45,element.vac_45_60,element.vac_60_above,element.total])\n\n });\n}\nconst worksheet5 = workbook.addWorksheet('Last30DaysAgeWiseVaccination');\nconst header1Row2 = worksheet5.addRow(header1001);\nheader1Row2.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nheader1Row2.alignment = { vertical: 'middle', horizontal: 'center' };\nexportdataByAge30Days.forEach(d => {\nconst row = worksheet5.addRow(d);\n});\nworksheet5.getColumn(1).width = 20;\nworksheet5.getColumn(2).width = 20;\nworksheet5.getColumn(3).width = 20;\nworksheet5.getColumn(4).width = 20;\nworksheet5.getColumn(5).width = 20;\nworksheet5.getColumn(6).width = 20;\nworksheet5.addRow([]);\n\n/**************exportdataByAgeAll**************/\nconst header1002 = ['label', 'vac_15_17','vac_18_45', 'vac_45_60','vac_60_above', 'total'];\n\nconst exportdataByAgeAll = [];\nif (this.DownloadweeklyVacAgeWiseReport) {\n this.DownloadweeklyVacAgeWiseReport.forEach(element => {\n exportdataByAgeAll.push([element.label,element.vac_15_17,element.vac_18_45,element.vac_45_60,element.vac_60_above,element.total])\n\n });\n}\nconst worksheet6 = workbook.addWorksheet('weeklyAgeWiseVaccination');\nconst header1Row3 = worksheet6.addRow(header1002);\nheader1Row3.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nheader1Row3.alignment = { vertical: 'middle', horizontal: 'center' };\nexportdataByAgeAll.forEach(d => {\nconst row = worksheet6.addRow(d);\n});\nworksheet6.getColumn(1).width = 20;\nworksheet6.getColumn(2).width = 20;\nworksheet6.getColumn(3).width = 20;\nworksheet6.getColumn(4).width = 20;\nworksheet6.getColumn(5).width = 20;\nworksheet6.getColumn(6).width = 20;\nworksheet6.addRow([]);\n\n/**************exportdataRegistrationTrendsToday**************/\nconst header02 = ['label','age15', 'age18', 'age45','age60', 'total'];\n const exportdataRegistrationTrendsToday = [];\n if (this.DownlloadImeWiseTodayRegReport) {\n this.DownlloadImeWiseTodayRegReport.forEach(element => {\n exportdataRegistrationTrendsToday.push([element.label,element.age15,element.age18,element.age45,element.age60,element.total])\n\n });\n }\n const worksheet07 = workbook.addWorksheet('registrationDoneByTimeToday');\n const header02Row = worksheet07.addRow(header02);\n header02Row.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n });\n header02Row.alignment = { vertical: 'middle', horizontal: 'center' };\n exportdataRegistrationTrendsToday.forEach(d => {\n const row = worksheet07.addRow(d);\n});\nworksheet07.getColumn(1).width = 20;\nworksheet07.getColumn(2).width = 20;\nworksheet07.getColumn(3).width = 20;\nworksheet07.getColumn(4).width = 20;\nworksheet07.getColumn(5).width = 20;\nworksheet07.getColumn(6).width = 20;\nworksheet07.addRow([]);\n\n/**************exportdataRegistrationTrends30Days**************/\nconst header02001 = ['reg_date', 'age15','age18', 'age45','age60', 'total'];\n\nconst exportdataRegistrationTrends30Days = [];\n\nif (this.DownloadRegReportData) {\n this.DownloadRegReportData.forEach(element => {\n const reg_date = moment(element.reg_date, \"YYYY-MM-DD\").format('DD MMM');\n exportdataRegistrationTrends30Days.push([reg_date,element.age15,element.age18,element.age45,element.age60,element.total])\n\n });\n}\nconst worksheet8 = workbook.addWorksheet('last30DaysRegistration');\nconst header2Row2 = worksheet8.addRow(header02001);\nheader2Row2.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nheader2Row2.alignment = { vertical: 'middle', horizontal: 'center' };\nexportdataRegistrationTrends30Days.forEach(d => {\nconst row = worksheet8.addRow(d);\n});\nworksheet8.getColumn(1).width = 20;\nworksheet8.getColumn(2).width = 20;\nworksheet8.getColumn(3).width = 20;\nworksheet8.getColumn(4).width = 20;\nworksheet8.getColumn(5).width = 20;\nworksheet8.getColumn(6).width = 20;\nworksheet8.addRow([]);\n\n/**************exportdataRegistrationTrendsAll**************/\nconst header02002 = ['label', 'age15','age18', 'age45','age60', 'total'];\n\nconst exportdataRegistrationTrendsAll = [];\nif (this.DownloadRegWeekReportData) {\n this.DownloadRegWeekReportData.forEach(element => {\n exportdataRegistrationTrendsAll.push([element.label,element.age15,element.age18,element.age45,element.age60,element.total])\n\n });\n}\nconst worksheet9 = workbook.addWorksheet('weeklyRegistration');\nconst header2Row3 = worksheet9.addRow(header02002);\nheader2Row3.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nheader2Row3.alignment = { vertical: 'middle', horizontal: 'center' };\nexportdataRegistrationTrendsAll.forEach(d => {\nconst row = worksheet9.addRow(d);\n});\nworksheet9.getColumn(1).width = 20;\nworksheet9.getColumn(2).width = 20;\nworksheet9.getColumn(3).width = 20;\nworksheet9.getColumn(4).width = 20;\nworksheet9.getColumn(5).width = 20;\nworksheet9.getColumn(6).width = 20;\nworksheet9.addRow([]);\n\n/**************vaccinationAEFIChartData**************/\nconst header3 = ['vaccine_date', 'aefi'];\nconst AEFIChartExportData = [];\nif (this.DownlloadLast30DaysAefi) {\n this.DownlloadLast30DaysAefi.forEach(element => {\n AEFIChartExportData.push([element.vaccine_date,element.aefi])\n\n });\n}\nconst worksheet10 = workbook.addWorksheet('last30DaysAefiReported');\nconst header3Row = worksheet10.addRow(header3);\nheader3Row.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\n\nAEFIChartExportData.forEach(d => {\nconst row = worksheet10.addRow(d);\n});\nworksheet10.getColumn(1).width = 20;\nworksheet10.getColumn(2).width = 20;\nworksheet10.addRow([]);\nheader3Row.alignment = { vertical: 'middle', horizontal: 'center' };\n\n/**************vaccinationByAge**************/\n\nconst header4 = ['vac_15_17','vac_18_45','vac_45_60', 'above_60'];\nconst vaccinationByAgeexportdata = [];\nthis.vaccinationByAgefinalResult.push(this.DownlloadVaccinationByAge);\n\nif (this.vaccinationByAgefinalResult) {\n this.vaccinationByAgefinalResult.forEach(element => {\n vaccinationByAgeexportdata.push([element.vac_15_17,element.vac_18_45,element.vac_45_60,element.above_60])\n\n });\n}\nconst workbook11 = workbook.addWorksheet('vaccinationByAge');\nconst header4Row = workbook11.addRow(header4);\nheader4Row.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nvaccinationByAgeexportdata.forEach(d => {\nconst row = workbook11.addRow(d);\n});\nworkbook11.getColumn(1).width = 20;\nworkbook11.getColumn(2).width = 20;\nworkbook11.getColumn(3).width = 20;\nworkbook11.getColumn(4).width = 20;\nworkbook11.addRow([]);\nheader4Row.alignment = { vertical: 'middle', horizontal: 'center' };\n\n/**************stateWiseVaccination**************/\nconst header5 = ['title', 'today','total'];\nconst stateWiseVaccinationData = [];\nif (this.getBeneficiariesGroupBy) {\n this.getBeneficiariesGroupBy.forEach(element => {\n stateWiseVaccinationData.push([element.title,element.today,element.total])\n\n });\n}\nconst worksheet12 = workbook.addWorksheet(this.downloadExcelHeader);\nconst header5Row = worksheet12.addRow(header5);\nheader5Row.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nstateWiseVaccinationData.forEach(d => {\nconst row = worksheet12.addRow(d);\n});\nworksheet12.getColumn(1).width = 20;\nworksheet12.getColumn(2).width = 20;\nworksheet12.getColumn(3).width = 20;\nworksheet12.addRow([]);\nheader5Row.alignment = { vertical: 'middle', horizontal: 'center' };\n\n/**************vaccinationCoverageByStateChartData**************/\n\nconst header6 = ['title', 'partial_vaccinated','totally_vaccinated','precaution_dose'];\nconst vaccinationCoverageData = [];\nif (this.vaccinationCoverageByStateChartData) {\n this.vaccinationCoverageByStateChartData.forEach(element => {\n vaccinationCoverageData.push([element.title,element.partial_vaccinated,element.totally_vaccinated,\n element.precaution_dose])\n\n });\n}\nconst worksheet13 = workbook.addWorksheet(this.downloadExcelHeaderForCoverage);\nconst header6Row = worksheet13.addRow(header6);\nheader6Row.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nvaccinationCoverageData.forEach(d => {\nconst row = worksheet13.addRow(d);\n});\nworksheet13.getColumn(1).width = 25;\nworksheet13.getColumn(2).width = 20;\nworksheet13.getColumn(3).width = 20;\nworksheet13.getColumn(4).width = 20;\nworksheet13.addRow([]);\nheader6Row.alignment = { vertical: 'middle', horizontal: 'center' };\n\n/**************vaccinationByCategoryRuralUrbanData**************/\n\nconst header7 = ['vaccine_date', 'rural','urban'];\nconst RuralUrbanExportdata = [];\nif (this.vaccinationByCategoryData) {\n this.vaccinationByCategoryData.forEach(element => {\n RuralUrbanExportdata.push([element.vaccine_date,element.rural,element.urban])\n\n });\n}\nconst worksheet14 = workbook.addWorksheet('VaccinationByCategory');\nconst header7Row = worksheet14.addRow(header7);\nheader7Row.eachCell((cell, number) => {\n cell.fill = {\n type: 'pattern',\n pattern: 'solid',\n fgColor: { argb: 'D3D3D3' },\n bgColor: { argb: 'D3D3D3' }\n };\n\n cell.font = {\n name: 'Calibri',\n bold: true,\n color: { argb: '000000' }\n };\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } };\n});\nRuralUrbanExportdata.forEach(d => {\nconst row = worksheet14.addRow(d);\n});\nworksheet14.getColumn(1).width = 25;\nworksheet14.getColumn(2).width = 20;\nworksheet14.getColumn(3).width = 20;\nworksheet14.addRow([]);\nheader7Row.alignment = { vertical: 'middle', horizontal: 'center' };\n\nthis.tableheader\nlet filename = `dashboard_export.xlsx`;\n workbook.xlsx.writeBuffer().then((data: any) => {\n const blob = new Blob([data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\n fs.saveAs(blob, filename);\n\n });\n\n}\n\nliveVaccinationCounter:any;\nwebSocketCounter: any;\ntotalVaccinationCounter: any = 0;\npartialVaccinationCounter: any = 0;\nfullyVaccinationCounter: any = 0;\ntotalRegistrationCounter: any = 0;\n\ntotal15_17Vaccination: any = 0;\ntotal18_44Vaccination: any = 0;\ntotal45_60Vaccination: any = 0;\ntotalabove_60Vaccination: any = 0;\ntotal_hcw_flw_precaution_vaccinations: any = 0;\ntotal_60_plus_precaution_vaccinations: any = 0;\nintervalSub$: Subscription = new Subscription();\nhideWebSocketCounter = true;\nsuffix = 'IND';\ngetLiveVaccinationCounter() {\n const channelName = `covid_vaccination_live_counter`;\n this.webSocket.listen(channelName).subscribe((data:any) => {\n // let liveData = data.split('::@::');\n // this.totalVaccinationCounter = parseInt(liveData[0]);\n this.totalVaccinationCounter = parseInt(data);\n });\n\n const channelNameReg = `covid_registration_live_counter`;\n this.webSocket.listen(channelNameReg).subscribe((data:any) => {\n this.totalRegistrationCounter = parseInt(data);\n });\n\n const channelNamepartialVacc = `covid_partially_vaccination_live_counter`;\n this.webSocket.listen(channelNamepartialVacc).subscribe((data:any) => {\n this.partialVaccinationCounter = parseInt(data);\n });\n\n const channelNametotalVacc = `covid_fully_vaccination_live_counter`;\n this.webSocket.listen(channelNametotalVacc).subscribe((data:any) => {\n this.fullyVaccinationCounter = parseInt(data);\n });\n\n this.webSocket.listenAgeSocket('covid_vaccination_bifurcation').subscribe((data: any) => {\n this.total15_17Vaccination = data['vaccination_15_17_total'];\n this.total18_44Vaccination = data['vaccination_18_44_total'];\n this.total45_60Vaccination = data['vaccination_45_60_total'];\n this.totalabove_60Vaccination = data['vaccination_above_60_total'];\n this.total_hcw_flw_precaution_vaccinations = data['vaccination_18_44_precaution_dose'] + data['vaccination_45_60_precaution_dose'];\n this.total_60_plus_precaution_vaccinations = data['vaccination_above_60_precaution_dose']\n })\n}\n\ngetDataForLiveVaccCountChart(){\n this.publicReportService.getLiveVaccinationCounterChart(this.todaysdate).subscribe(res => {\nif(res){\n this.liveVaccData = res;\n for (let i = 0; i < this.liveVaccData.length; i++) {\n this.liveVaccData[i].last5mins = i == 0 ? 0 : this.liveVaccData[i].count - this.liveVaccData[i - 1].count\n}\n\nthis.liveVaccData = this.liveVaccData.slice(Math.max(this.liveVaccData.length - 12, -1))\n console.log(\" this.liveVaccData1\", this.liveVaccData);\n this.prepareDataForLiveVaccCount();\n}\n });\n}\n\n\nprepareDataForLiveVaccCount() {\n if (this.liveVaccChart) {\n this.liveVaccChart.destroy();\n }\n\n const ctx = $('#liveVacc');\n\n // if (this.liveVaccData) {\n // this.liveVaccData = this.liveVaccData.sort((a, b) => (a.timestamps > b.timestamps) ? 1 : -1)\n // }\n// -----------------------------------------\n// Chart.defaults.LineWithLine = Chart.defaults.line;\n// Chart.controllers.LineWithLine = Chart.controllers.line.extend({\n// draw: function(ease) {\n// Chart.controllers.line.prototype.draw.call(this, ease);\n\n// if (this.chart.tooltip._active && this.chart.tooltip._active.length) {\n// var activePoint = this.chart.tooltip._active[0],\n// ctx = this.chart.ctx,\n// x = activePoint.tooltipPosition().x,\n// topY = this.chart.legend.bottom,\n// bottomY = this.chart.chartArea.bottom;\n\n// // draw line\n// ctx.save();\n// ctx.beginPath();\n// ctx.moveTo(x, topY);\n// ctx.lineTo(x, bottomY);\n// ctx.lineWidth = 1;\n// ctx.strokeStyle = '#808080';\n// ctx.stroke();\n// ctx.restore();\n// }\n// }\n// });\n\n\n\n// ----------------------------------------\n\n\n\n const labels = _.map(this.liveVaccData, (data) => {\n return moment(data.time, \"YYYY-MM-DDTHH:mm:ssZ\").add(330, \"minutes\").format('hh:mm A');\n });\n\n const data1 = _.map(this.liveVaccData, 'last5mins');\n // console.log(\" this.liveVaccDataxcXC\", this.liveVaccData);\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n // borderRadius: 50,\n // borderwidth:10,\n data: {\n labels: labels,\n\n datasets: [\n {\n // type: 'line',\n // // label: '5 Min Interval',\n // backgroundColor: \"rgb(28,169,121, 1)\",\n // borderColor: \"rgb(28,169,121, 1)\",\n\n // data: data1,\n // borderwidth:10,\n // borderRadius: 50,\n // // corners: 'round',\n // // bezierCurve : false\n\n\n\n type: 'line',\n // tension: 0.1,\n backgroundColor: 'rgb(28,169,121, .1)',\n borderColor: 'rgb(28,169,121, 1)',\n borderWidth: 2,\n pointBackgroundColor: 'rgb(28,169,121, 1)',\n pointBorderWidth: 1.5,\n pointRadius: 1.5,\n fill: true,\n bezierCurve : false,\n data: data1,\n }\n\n ]\n },\n options: {\n borderRadius: 50,\n // cornerRadius: 20,\n // barRoundness: 1,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n yAlign: 'top',\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n\n if (label) {\n label += ': ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n\n\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n display:true,\n // barPercentage:1.0,\n // categoryPercentage:1.0,\n // // maintainAspectRatio :false,\n beginAtZero: true,\n // barThickness: 7,\n // borderRadius: 50,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 3,\n fontSize: 6,\n display:true,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\",\n // callback: function (label, index, labels) {\n // // return label / 100000 + 'L';\n // return \"\"\n // }\n },\n stacked: false,\n gridLines: {\n display: true,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000',\n // color: \"#808080\"\n },\n }],\n yAxes: [{\n\n stacked: false,\n barPercentage: 0.35,\n dispaly:false,\n gridLines: {\n color: 'rgb(247, 250, 252)',\n borderDash: [2,4],\n zeroLineColor: 'rgb(247, 250, 252)',\n display:false,\n offsetGridLines: true\n },\n ticks: {\n dispaly:true,\n fontSize: 6,\n beginAtZero: false,\n autoSkip: true,\n maxTicksLimit: 3,\n fontColor: \"#000000\",\n callback: function (label, index, labels) {\n return label / 100000 + 'L';\n // return \"\"\n }\n }\n }]\n },\n // annotation: {\n // annotations: [{\n // type: 'line',\n // mode: 'vertical',\n // scaleID: 'y-axis-0',\n // value: 5,\n // borderColor: 'rgb(75, 192, 192)',\n // borderWidth: 4,\n // label: {\n // enabled: false,\n // content: 'Test label'\n // }\n // }]\n // }\n\n\n },\n // plugins: [{\n // beforeInit: function (chart) {\n // chart.data.labels.forEach(function (e, i, a) {\n // if (/\\n/.test(e)) {\n // a[i] = e.split(/\\n/)\n // }\n // })\n // }\n // }]\n };\n\n this.liveVaccChart = new Chart(ctx, vaccConfig);\n this.liveVaccChart.update();\n}\n\n\n\n liveVaccChartStreaming;\n prepareDataForLiveVaccStareaming() {\n if (this.liveVaccChartStreaming) {\n this.liveVaccChartStreaming.destroy();\n }\n\n const ctx = $('#liveVaccStreaming');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(30,55,112, 0.3)',\n borderColor: 'rgb(30, 55, 112)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(30,55,112)\",\n pointBorderWidth: 1.5,\n pointRadius: 1.5,\n fill: true,\n bezierCurve : false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display:false,\n beginAtZero: true,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 5,\n fontSize: 6,\n display:false,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\"\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000'\n },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly:false,\n // beginAtZero: true,\n gridLines: {\n display:false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly:false,\n userCallback: function(value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreaming = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreaming.update();\n this.updateData();\n }\n\n\n prevsData;\n updateCountTotalVacc = 0;\n async updateData() {\n const channelName = `covid_vaccination_live_counter`;\n this.webSocket.listen(channelName).subscribe((data:any) => {\n let currentData = parseInt(data);\n let label = moment(new Date()).format('HH:mm:ss')\n this.liveVaccChartStreaming.data.labels.push(label);\n this.liveVaccChartStreaming.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsData) {\n diff = currentData - this.prevsData\n }\n this.prevsData = currentData;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsData) {\n diff = currentData - this.prevsData\n }\n this.prevsData = currentData;\n dataset.data.push(diff)\n }\n });\n if (this.updateCountTotalVacc > this.numberOfElements) {\n this.liveVaccChartStreaming.data.labels.shift();\n this.liveVaccChartStreaming.data.datasets[0].data.shift();\n } else {\n this.updateCountTotalVacc++;\n }\n this.liveVaccChartStreaming.update();\n this.liveVaccChartStreaming = this.liveVaccChartStreaming;\n })\n }\n\n liveVaccChartStreamingRegistration;\n prepareDataForLiveVaccStareamingRegistration() {\n if (this.liveVaccChartStreamingRegistration) {\n this.liveVaccChartStreamingRegistration.destroy();\n }\n\n const ctx = $('#liveVaccStreamingReg');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(129,136,142, 0.3)',\n borderColor: 'rgb(129,136,142)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(129,136,142)\",\n pointBorderWidth: 1.5,\n pointRadius: 1.5,\n fill: true,\n bezierCurve : false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display:false,\n beginAtZero: true,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 5,\n fontSize: 6,\n display:false,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\"\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000'\n },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly:false,\n // beginAtZero: true,\n gridLines: {\n display:false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly:false,\n userCallback: function(value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreamingRegistration = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreamingRegistration.update();\n this.updateDataRegistration();\n }\n\n\n prevsRegData;\n updateCountTotalReg = 0\n async updateDataRegistration() {\n const channelName = `covid_registration_live_counter`;\n this.webSocket.listen(channelName).subscribe((data:any) => {\n let currentData = parseInt(data);\n let label = moment(new Date()).format('HH:mm:ss')\n this.liveVaccChartStreamingRegistration.data.labels.push(label);\n this.liveVaccChartStreamingRegistration.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsRegData) {\n diff = currentData - this.prevsRegData\n }\n this.prevsRegData = currentData;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsRegData) {\n diff = currentData - this.prevsRegData\n }\n this.prevsRegData = currentData;\n dataset.data.push(diff)\n }\n });\n if (this.updateCountTotalReg > this.numberOfElements) {\n this.liveVaccChartStreamingRegistration.data.labels.shift();\n this.liveVaccChartStreamingRegistration.data.datasets[0].data.shift();\n } else {\n this.updateCountTotalReg++;\n }\n this.liveVaccChartStreamingRegistration.update();\n this.liveVaccChartStreamingRegistration = this.liveVaccChartStreamingRegistration;\n })\n }\n\n\n liveVaccChartStreamingPartialVacc;\n prepareDataForLiveVaccStareamingPartialVacc() {\n if (this.liveVaccChartStreamingPartialVacc) {\n this.liveVaccChartStreamingPartialVacc.destroy();\n }\n\n const ctx = $('#liveVaccStreamingPartialVacc');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(244,140,43, 0.3)',\n borderColor: 'rgb(244,140,43)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(244,140,43)\",\n pointBorderWidth: 1.5,\n pointRadius: 1.5,\n fill: true,\n bezierCurve : false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display:false,\n beginAtZero: true,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 5,\n fontSize: 6,\n display:false,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\"\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000'\n },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly:false,\n // beginAtZero: true,\n gridLines: {\n display:false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly:false,\n userCallback: function(value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreamingPartialVacc = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreamingPartialVacc.update();\n this.updateDataPartialVacc();\n }\n\n\n prevsPartialVaccData;\n updateCountPartialVacc = 0\n async updateDataPartialVacc() {\n const channelName = `covid_partially_vaccination_live_counter`;\n this.webSocket.listen(channelName).subscribe((data:any) => {\n let currentData = parseInt(data);\n let label = moment(new Date()).format('HH:mm:ss')\n this.liveVaccChartStreamingPartialVacc.data.labels.push(label);\n this.liveVaccChartStreamingPartialVacc.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsPartialVaccData) {\n diff = currentData - this.prevsPartialVaccData\n }\n this.prevsPartialVaccData = currentData;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsPartialVaccData) {\n diff = currentData - this.prevsPartialVaccData\n }\n this.prevsPartialVaccData = currentData;\n dataset.data.push(diff)\n }\n });\n if (this.updateCountPartialVacc > this.numberOfElements) {\n this.liveVaccChartStreamingPartialVacc.data.labels.shift();\n this.liveVaccChartStreamingPartialVacc.data.datasets[0].data.shift();\n } else {\n this.updateCountPartialVacc++;\n }\n this.liveVaccChartStreamingPartialVacc.update();\n this.liveVaccChartStreamingPartialVacc = this.liveVaccChartStreamingPartialVacc;\n })\n }\n\n\n liveVaccChartStreamingFullyVacc;\n prepareDataForLiveVaccStareamingFullyVacc() {\n if (this.liveVaccChartStreamingFullyVacc) {\n this.liveVaccChartStreamingFullyVacc.destroy();\n }\n\n const ctx = $('#liveVaccStreamingFullyVacc');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(94, 190, 93, 0.3)',\n borderColor: 'rgb(94, 190, 93)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(94, 190, 93)\",\n pointBorderWidth: 1.5,\n pointRadius: 1.5,\n fill: true,\n bezierCurve : false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n showScale: false,\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display:false,\n // beginAtZero: true,\n // ticks: {\n // autoSkip: true,\n // maxTicksLimit: 5,\n // fontSize: 6,\n // display:false,\n // maxRotation: 0,\n // minRotation: 0,\n // fontColor: \"#000000\"\n // },\n // stacked: false,\n // gridLines: {\n // display: false,\n // drawBorder: true,\n // borderDash: [2, 4],\n // zeroLineWidth: 0.05,\n // zeroLineColor: '#000000'\n // },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly:false,\n // beginAtZero: true,\n gridLines: {\n display:false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly:false,\n userCallback: function(value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreamingFullyVacc = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreamingFullyVacc.update();\n this.updateDataFullyVacc();\n }\n\n\n prevsFullyVaccData;\n updateCountFullyVacc = 0;\n async updateDataFullyVacc() {\n const channelName = `covid_fully_vaccination_live_counter`;\n this.webSocket.listen(channelName).subscribe((data:any) => {\n let currentData = parseInt(data);\n let label = moment(new Date()).format('HH:mm:ss')\n this.liveVaccChartStreamingFullyVacc.data.labels.push(label);\n this.liveVaccChartStreamingFullyVacc.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsFullyVaccData) {\n diff = currentData - this.prevsFullyVaccData\n }\n this.prevsFullyVaccData = currentData;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsFullyVaccData) {\n diff = currentData - this.prevsFullyVaccData\n }\n this.prevsFullyVaccData = currentData;\n dataset.data.push(diff)\n }\n });\n if (this.updateCountFullyVacc > this.numberOfElements) {\n this.liveVaccChartStreamingFullyVacc.data.labels.shift();\n this.liveVaccChartStreamingFullyVacc.data.datasets[0].data.shift();\n } else {\n this.updateCountFullyVacc++;\n }\n this.liveVaccChartStreamingFullyVacc.update();\n this.liveVaccChartStreamingFullyVacc = this.liveVaccChartStreamingFullyVacc;\n })\n }\n\n tConvert (time) {\n console.log(\"time\",time )\n // Check correct time format and split into components\n time = time.toString ().match (/^([01]\\d|2[0-3])(:)([0-5]\\d)(:[0-5]\\d)?$/) || [time];\n\n if (time.length >= 0) { // If time format correct\n time = time.slice (1); // Remove full string match value\n time[5] = +time[0] < 12 ? 'AM' : 'PM'; // Set AM/PM\n time[0] = +time[0] % 12 || 12; // Adjust hours\n }\n return time.join (''); // return adjusted time or original string\n }\n\n\n\n liveVaccChartStreaming15_17;\n prepareDataForLiveVaccStareaming15_17() {\n if (this.liveVaccChartStreaming15_17) {\n this.liveVaccChartStreaming15_17.destroy();\n }\n\n const ctx = $('#liveVacc15_17');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(129,136,142, 0.3)',\n borderColor: 'rgb(129,136,142)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(129,136,142)\",\n pointBorderWidth: 1.5,\n pointRadius: 1.5,\n fill: true,\n bezierCurve : false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display:false,\n beginAtZero: true,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 5,\n fontSize: 6,\n display:false,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\"\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000'\n },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly:false,\n // beginAtZero: true,\n gridLines: {\n display:false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly:false,\n userCallback: function(value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreaming15_17 = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreaming15_17.update();\n }\n\n\n liveVaccChartStreaming18_44;\n prepareDataForLiveVaccStareaming18_44() {\n if (this.liveVaccChartStreaming18_44) {\n this.liveVaccChartStreaming18_44.destroy();\n }\n\n const ctx = $('#liveVacc18_44');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(30,55,112, 0.3)',\n borderColor: 'rgb(30, 55, 112)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(30,55,112)\",\n pointBorderWidth: 1.5,\n pointRadius: 1.5,\n fill: true,\n bezierCurve : false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display:false,\n beginAtZero: true,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 5,\n fontSize: 6,\n display:false,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\"\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000'\n },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly:false,\n // beginAtZero: true,\n gridLines: {\n display:false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly:false,\n userCallback: function(value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreaming18_44 = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreaming18_44.update();\n }\n\n liveVaccChartStreaming45_60;\n prepareDataForLiveVaccStareaming45_60() {\n if (this.liveVaccChartStreaming45_60) {\n this.liveVaccChartStreaming45_60.destroy();\n }\n\n const ctx = $('#liveVacc45_60');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(244,140,43, 0.3)',\n borderColor: 'rgb(244,140,43)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(244,140,43)\",\n pointBorderWidth: 1.5,\n pointRadius: 1.5,\n fill: true,\n bezierCurve : false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display:false,\n beginAtZero: true,\n ticks: {\n autoSkip: true,\n maxTicksLimit: 5,\n fontSize: 6,\n display:false,\n maxRotation: 0,\n minRotation: 0,\n fontColor: \"#000000\"\n },\n stacked: false,\n gridLines: {\n display: false,\n drawBorder: true,\n borderDash: [2, 4],\n zeroLineWidth: 0.05,\n zeroLineColor: '#000000'\n },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly:false,\n // beginAtZero: true,\n gridLines: {\n display:false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly:false,\n userCallback: function(value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreaming45_60 = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreaming45_60.update();\n }\n\n liveVaccChartStreamingabove_60;\n prepareDataForLiveVaccStareamingabove_60() {\n if (this.liveVaccChartStreamingabove_60) {\n this.liveVaccChartStreamingabove_60.destroy();\n }\n\n const ctx = $('#liveVaccabove_60');\n\n const format = this.numberFormatPipe;\n var vaccConfig = {\n type: 'line',\n data: {\n datasets: [{\n type: 'line',\n backgroundColor: 'rgb(94, 190, 93, 0.3)',\n borderColor: 'rgb(94, 190, 93)',\n borderWidth: 2,\n pointBackgroundColor: \"rgb(94, 190, 93)\",\n pointBorderWidth: 1.5,\n pointRadius: 1.5,\n fill: true,\n bezierCurve : false,\n data: 0,\n }]\n },\n options: {\n borderRadius: 50,\n tooltips: {\n enabled: true,\n mode: 'label',\n intersect: false,\n displayColors: false,\n callbacks: {\n title: function(tooltipItems, data) {\n return '';\n },\n label: function (tooltipItem, data) {\n var datasetLabel = '';\n var label = data.labels[tooltipItem.datasetIndex] || '';\n\n\n if (label) {\n // label = moment(label).format('h:mm:ss a')\n label += ' | ';\n }\n\n const dataNum = Math.round(tooltipItem.yLabel * 100) / 100;\n label += format.transform(dataNum);\n return label;\n }\n }\n },\n legend: {\n display: false,\n boxWidth: 0,\n position: 'bottom',\n labels: {\n usePointStyle: false,\n boxWidth: 0,\n padding: 5,\n fontSize: 10,\n }\n },\n responsive: true,\n scales: {\n showScale: false,\n xAxes: [{\n // type: 'time',\n // time: {\n // displayFormats: {\n // second: 'h:mm:ss a'\n // }\n // },\n display:false,\n // beginAtZero: true,\n // ticks: {\n // autoSkip: true,\n // maxTicksLimit: 5,\n // fontSize: 6,\n // display:false,\n // maxRotation: 0,\n // minRotation: 0,\n // fontColor: \"#000000\"\n // },\n // stacked: false,\n // gridLines: {\n // display: false,\n // drawBorder: true,\n // borderDash: [2, 4],\n // zeroLineWidth: 0.05,\n // zeroLineColor: '#000000'\n // },\n }],\n yAxes: [{\n // stacked: false,\n // barPercentage: 0.35,\n dispaly:false,\n // beginAtZero: true,\n gridLines: {\n display:false,\n },\n scaleShowLabels: false,\n ticks: {\n dispaly:false,\n userCallback: function(value, index, values) {\n return \"\";\n }\n }\n }]\n }\n\n\n }\n };\n\n this.liveVaccChartStreamingabove_60 = new Chart(ctx, vaccConfig);\n this.liveVaccChartStreamingabove_60.update();\n }\n\n\n prevsDataAge = {};\n updateCountTotalVaccAge = {'15_17': 0, '18_44': 0, '45_60': 0, 'above_60': 0};\n async updateDataAge() {\n const channelName = `covid_vaccination_bifurcation`;\n this.webSocket.listenAgeSocket(channelName).subscribe((data:any) => {\n let vacc_total_15_17 = data['vaccination_15_17_total'];\n let vacc_total_18_44 = data['vaccination_18_44_precaution_dose'] + data['vaccination_45_60_precaution_dose'];\n let vacc_total_45_60 = data['vaccination_above_60_precaution_dose'];\n // let vacc_total_above_60 = data['vaccination_above_60_total'];\n let label = moment(new Date()).format('HH:mm:ss')\n this.liveVaccChartStreaming15_17.data.labels.push(label);\n this.liveVaccChartStreaming18_44.data.labels.push(label);\n this.liveVaccChartStreaming45_60.data.labels.push(label);\n // this.liveVaccChartStreamingabove_60.data.labels.push(label);\n\n //15-17\n this.liveVaccChartStreaming15_17.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsDataAge['15_17']) {\n diff = vacc_total_15_17 - this.prevsDataAge['15_17']\n }\n this.prevsDataAge['15_17'] = vacc_total_15_17;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsDataAge['15_17']) {\n diff = vacc_total_15_17 - this.prevsDataAge['15_17']\n }\n this.prevsDataAge['15_17'] = vacc_total_15_17;\n dataset.data.push(diff)\n }\n });\n\n if (this.updateCountTotalVaccAge['15_17'] > this.numberOfElements) {\n this.liveVaccChartStreaming15_17.data.labels.shift();\n this.liveVaccChartStreaming15_17.data.datasets[0].data.shift();\n } else {\n this.updateCountTotalVaccAge['15_17']++;\n }\n this.liveVaccChartStreaming15_17.update();\n this.liveVaccChartStreaming15_17 = this.liveVaccChartStreaming15_17;\n\n //18-44\n this.liveVaccChartStreaming18_44.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsDataAge['18_44']) {\n diff = vacc_total_18_44 - this.prevsDataAge['18_44']\n }\n this.prevsDataAge['18_44'] = vacc_total_18_44;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsDataAge['18_44']) {\n diff = vacc_total_18_44 - this.prevsDataAge['18_44']\n }\n this.prevsDataAge['18_44'] = vacc_total_18_44;\n dataset.data.push(diff)\n }\n });\n\n if (this.updateCountTotalVaccAge['18_44'] > this.numberOfElements) {\n this.liveVaccChartStreaming18_44.data.labels.shift();\n this.liveVaccChartStreaming18_44.data.datasets[0].data.shift();\n } else {\n this.updateCountTotalVaccAge['18_44']++;\n }\n this.liveVaccChartStreaming18_44.update();\n this.liveVaccChartStreaming18_44 = this.liveVaccChartStreaming18_44;\n\n\n //45-60\n this.liveVaccChartStreaming45_60.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsDataAge['45_60']) {\n diff = vacc_total_45_60 - this.prevsDataAge['45_60']\n }\n this.prevsDataAge['45_60'] = vacc_total_45_60;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsDataAge['45_60']) {\n diff = vacc_total_45_60 - this.prevsDataAge['45_60']\n }\n this.prevsDataAge['45_60'] = vacc_total_45_60;\n dataset.data.push(diff)\n }\n });\n\n if (this.updateCountTotalVaccAge['45_60'] > this.numberOfElements) {\n this.liveVaccChartStreaming45_60.data.labels.shift();\n this.liveVaccChartStreaming45_60.data.datasets[0].data.shift();\n } else {\n this.updateCountTotalVaccAge['45_60']++;\n }\n this.liveVaccChartStreaming45_60.update();\n this.liveVaccChartStreaming45_60 = this.liveVaccChartStreaming45_60;\n\n\n //above-60\n /*this.liveVaccChartStreamingabove_60.data.datasets.forEach((dataset) => {\n if (typeof dataset.data == 'number') {\n let diff = 0;\n if (this.prevsDataAge['above_60']) {\n diff = vacc_total_above_60 - this.prevsDataAge['above_60']\n }\n this.prevsDataAge['above_60'] = vacc_total_above_60;\n dataset.data = [diff];\n } else {\n let diff = 0;\n if (this.prevsDataAge['above_60']) {\n diff = vacc_total_above_60 - this.prevsDataAge['above_60']\n }\n this.prevsDataAge['above_60'] = vacc_total_above_60;\n dataset.data.push(diff)\n }\n });\n\n if (this.updateCountTotalVaccAge['above_60'] > this.numberOfElements) {\n this.liveVaccChartStreamingabove_60.data.labels.shift();\n this.liveVaccChartStreamingabove_60.data.datasets[0].data.shift();\n } else {\n this.updateCountTotalVaccAge['above_60']++;\n }\n this.liveVaccChartStreamingabove_60.update();\n this.liveVaccChartStreamingabove_60 = this.liveVaccChartStreamingabove_60; */\n });\n }\n}\n\n\n\n","\n
\n
\n
\n
\n \n\n
\n \n
\n
\n
\n
\n
\n
\n

Registrations Today

\n 0\n
\n
\n
\n
\n
\n \n \n \n \n \n
\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n
\n
\n

Vaccinations Today

\n 0\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n \n\n \n
\n
\n
\n
\n
\n
\n

Partially Vaccinated Today

\n 0\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n \n\n\n \n
\n
\n
\n
\n
\n
\n

Fully Vaccinated Today

\n 0\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n \n\n \n
\n
\n
\n
\n
\n
\n

15-17 Vaccinations Today

\n 0\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n \n\n \n
\n
\n
\n
\n
\n
\n

HCW/FLW Precaution Doses Today

\n 0\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n \n\n \n
\n
\n
\n
\n
\n
\n

60+ Precaution Doses Today

\n 0\n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n \n
\n
\n
\n\n\n \n\n
\n \n\n\n\n\n
\n
\n\n \n \n
\n\n
\n \n \n \n
\n
\n\n
\n
\n
\n \n
\n Json\n Excel\n
\n
\n
\n \n\n
\n
\n \n
\n
\n \n

*The figure displayed in the dose counter are provisional and are subject to reconciliation.

\n

*The figures for 18 years old (birth year 2004) are included in 18-44 age group.

\n
\n\n
\n \n

Last updated : {{ReportGenerateTime | date:'yyyy/M/d hh:mm aa'}}

\n
\n
\n \n
\n
\n
\n
\n\n
\n
\n
\n
\n \n
\n
\n\n

\n \n {{'DASHBOARD.Today' | translate}}: {{topBlockReport?.vaccination?.today | numberFormat}}

\n

{{'DASHBOARD.Total_Vaccination_Doses' | translate}}\n \n \n \n \n

\n

{{topBlockReport?.vaccination?.total_doses | numberFormat}}

\n\n
\n
\n {{'DASHBOARD.Dose_1' | translate}}\n

{{topBlockReport?.vaccination?.tot_dose_1 | numberFormat}}

\n\n
\n
\n {{'DASHBOARD.Dose_2' | translate}}\n

{{topBlockReport?.vaccination?.tot_dose_2 | numberFormat}}

\n\n
\n
\n Precaution Dose\n

{{topBlockReport?.vaccination?.tot_pd | numberFormat}}

\n\n
\n
\n
\n
\n
\n \n
\n
\n
\n \n \"sites\"\n
\n
\n \n \n

\n {{'DASHBOARD.Sites_Conducting_Vaccination' | translate}}\n \n \n \n \n

\n

{{topBlockReport?.sites?.total| numberFormat}}

\n\n
\n
\n {{'DASHBOARD.Government' | translate}}\n

{{topBlockReport?.sites?.govt | numberFormat}}

\n\n
\n
\n {{'DASHBOARD.Private' | translate}}\n

{{topBlockReport?.sites?.pvt | numberFormat}}

\n\n
\n
\n
\n
\n
\n\n\n
\n\n
\n
\n\n\n
\n \n \"sites\"\n
\n\n\n\n
\n
\n \n

{{'DASHBOARD.Total_Registrations' | translate}}\n \n \n \n\n

\n\n

{{topBlockReport?.registration?.total | numberFormat}}

\n\n\n
\n
\n Age 15-17\n

{{topBlockReport?.registration?.cit_15_17 | numberFormat}}

\n\n
\n
\n {{'DASHBOARD.Age_18-44' | translate}}\n

{{topBlockReport?.registration?.cit_18_45 | numberFormat}}

\n\n
\n
\n {{'DASHBOARD.Age_45+' | translate}}\n

{{topBlockReport?.registration?.cit_45_above | numberFormat}}

\n\n
\n
\n\n
\n
\n
\n\n\n
\n\n \n\n
\n\n
\n
\n\n
\n\n\n

\n {{'DASHBOARD.Vaccination_Trends' | translate}}\n \n \n \n \n \n \n \n \n \n

\n\n
\n
\n\n
\n
    \n
  • \n \n
  • \n
  • \n \n
  • \n \n\n
\n
\n\n
\n
\n
    \n
  • \n \n \n
  • \n
  • \n \n
  • \n
  • \n \n\n
  • \n
\n
\n\n
\n \n \n
\n\n
\n
\n
\n
    \n
  • \n \n
  • \n
  • \n \n
  • \n
  • \n \n\n
  • \n
\n
\n\n
\n\n\n
\n\n\n
\n\n
\n
\n \n \n \n \n
\n
\n
\n\n\n
\n
\n
\n \n \n \n \n
\n
\n
\n\n\n
\n
\n
\n \n \n \n \n
\n
\n
\n\n
\n
\n
\n \n \n \n \n
\n
\n
\n\n
\n
\n
\n \n \n \n \n
\n
\n
\n\n
\n
\n
\n \n \n \n \n
\n
\n
\n\n \n\n
\n
\n\n
\n\n \n\n
\n
\n
\n
\n

\n {{'DASHBOARD.Vaccination_Category' | translate}}\n

\n
\n \n \n
\n
\n
\n \n \n \n \n\n\n \n \n \n \n
\n
\n
\n\n
\n\n\n
\n
\n

{{'DASHBOARD.Vaccination_by_Age' | translate}}

\n
\n \n \n \n \n \n \n
\n
\n
\n \n \n \n \n
\n
\n\n
\n\n
\n\n
\n
\n\n

\n \n {{'DASHBOARD.Vaccination_By' | translate}}{{tableheader}}\n \n

\n\n
\n
\n
\n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n
{{tableheader}} {{'DASHBOARD.Today' | translate}} {{'DASHBOARD.Total' | translate}}
{{benData.title}}{{benData.today | numberFormat}}\n \n {{benData.total | numberFormat}}\n
\n
\n
\n
\n
\n\n
\n\n\n
\n
\n
\n
\n

{{'HOME.AEFI_REPORTED' | translate}} \n \n

\n
\n {{'DASHBOARD.Overall' | translate}} : {{ vaccinatedAefiPer }} %\n
\n
\n \n \n \n \n \n \n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n\n \n\n\n
\n
\n
\n

\n {{'DASHBOARD.Rural_Vs_Urban_Trend' | translate}}\n

\n
\n \n \n
\n
\n \n\n
\n
\n
\n \n \n >\n \n
\n
\n
\n
\n
\n
\n\n
\n\n
\n
\n
\n

{{'DASHBOARD.Vaccination_Coverage' | translate}}

\n
\n \n \n \n \n \n \n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n

\n {{'DASHBOARD.Registration_Trends' | translate}}\n \n \n \n \n \n \n \n \n \n

\n
\n
    \n
  • \n \n\n\n
  • \n
  • \n \n
  • \n
  • \n \n\n\n\n
  • \n
\n\n
\n\n\n
\n \n \n
\n
\n
\n
\n
\n \n \n \n \n
\n
\n
\n\n
\n
\n
\n \n \n \n \n
\n
\n
\n\n
\n
\n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n\n\n\n\n
\n
\n
\n\n","import { Observable, Subject } from 'rxjs';\nimport { environment } from './../../../environments/environment';\nimport { HttpClient } from '@angular/common/http';\nimport { Injectable } from \"@angular/core\";\n\n@Injectable({ providedIn: 'root' })\nexport class PublicReportService {\n breadCrumbArr = [];\n headerTextLbl = 'State';\n filterParams: any = {};\n public districtname = new Subject();\n public ischeckSessionStarted = new Subject();\n public isnational = new Subject();\n public district_id = new Subject();\n public type = new Subject();\n public statename = new Subject();\n public tabname = new Subject();\n constructor(private http: HttpClient) { }\n\n\n getPublicReports(stateid = \"\", districtid = \"\", date = \"\"): Observable {\n return this.http.get(\n `${environment.report_prefix_direct_url}/v2/getPublicReports?state_id=${stateid}&district_id=${districtid}&date=${date}`\n );\n }\n\n //registration Dashboard data\n getRegistrationDashboardData(date = \"\"): Observable {\n //return this.http.get(\"/assets/json/regReport.json\");https://api.sit.co-vin.in/api/v1/reports/getAllRegReports\n return this.http.get(\n `${environment.report_prefix_direct_url}/getAllRegReports`\n );\n }\n\n //Vaccination Dashboard data\n getVaccinationDashboardData(stateid = \"\", districtid = \"\", date = \"\"): Observable {\n //return this.http.get(\"/assets/json/vaccDashboard.json\");\n return this.http.get(\n `${environment.report_prefix_direct_url}/v2/getVacPublicReports?state_id=${stateid}&district_id=${districtid}&date=${date}`\n );\n }\n\n\n dashboardLogin(): Observable {\n return this.http.post(\n `${environment.auth_prefix_url}/guest/dashboard_login`,\n {},\n { responseType: 'text' }\n );\n }\n\n getNewDashboardData(): Observable {\n return this.http.get(\"/assets/json/dashboard.json\");\n }\n\n getDistricts(): Observable {\n return this.http.get(\"/assets/json/csvjson.json\");\n }\n\n getDistrictname(): Observable {\n return this.districtname.asObservable();\n }\n\n getSessionStatus(): Observable {\n return this.ischeckSessionStarted.asObservable();\n }\n\n getNationalStatus(): Observable {\n return this.isnational.asObservable();\n }\n getDistrictID(): Observable {\n return this.district_id.asObservable();\n }\n\n getType(): Observable {\n return this.type.asObservable();\n }\n getStatename(): Observable {\n return this.statename.asObservable();\n }\n\n getTabname(): Observable {\n return this.tabname.asObservable();\n }\n\n \n getVacPublicReports(stateid = \"\", districtid = \"\", date = \"\"): Observable {\n return this.http.get(\n `${environment.report_prefix_direct_url}/v2/getVacPublicReports?state_id=${stateid}&district_id=${districtid}&date=${date}`\n );\n }\n\n getLiveVaccinationCounter(): Observable {\n return this.http.get(`https://cdn-api.co-vin.in/api/v1/reports/getLiveVaccination`)\n }\n\n \n getLiveVaccinationCounterChart(date): Observable {\n return this.http.get(`https://prod-cdn.preprod.co-vin.in/vaccination_live_counter/PROD/${date}.json`)\n }\n}\n","import { I18nService } from 'src/app/modules/i18n/i18n.service';\nimport { Component, OnInit } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\n\n@Component({\n selector: 'app-language',\n templateUrl: './language.component.html',\n styleUrls: ['./language.component.scss'],\n})\nexport class LanguageComponent implements OnInit {\n language: any;\n selectedLang: any = '';\n isMobile = false;\n currentSelectedValue = 'English'\n constructor(\n private i18nService: I18nService,\n private translate: TranslateService,\n ) {}\n\n ngOnInit() {\n this.selectedLang = '';\n this.language = this.currentLanguage;\n this.currentSelectedValue = this.languages.find((langObj:any) => langObj.id == this.language ).regional;\n this.translate.onLangChange.subscribe((l: any) => {\n this.language = this.translate.currentLang;\n this.currentSelectedValue = this.languages.find((langObj:any) => langObj.id == this.language ).regional;\n })\n }\n\n setLanguage() {\n if (!this.selectedLang){ return; }\n this.i18nService.language = this.selectedLang.id;\n }\n\n selectLanguage(language: any) {\n this.selectedLang = language;\n if (!this.selectedLang){ return; }\n this.i18nService.language = this.selectedLang.id;\n this.currentSelectedValue = this.languages.find((langObj:any) => langObj.id == this.selectedLang.id ).regional;\n }\n\n get currentLanguage(): string {\n return this.i18nService.language;\n }\n\n get languages(): any {\n return this.i18nService.supportedLanguages;\n }\n}\n","\n\n\n
\n \n {{ currentSelectedValue }} \n \n {{ lang?.regional }}{{ lang?.regional }}({{ lang?.name }})\n \n
\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\n\nconst routes: Routes = [];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes)],\n exports: [RouterModule]\n})\nexport class AppRoutingModule { }\n\n\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"zn8P\";"],"sourceRoot":"webpack:///"}