{ "version": 3, "sources": ["src/app/pages/doctor-profile/doctor-profile.component.ts", "src/app/pages/doctor-profile/doctor-profile.component.html"], "sourcesContent": ["import { CommonModule, NgOptimizedImage } from '@angular/common'\nimport { Component } from '@angular/core'\nimport { MatButtonModule } from '@angular/material/button'\nimport { MatCardModule } from '@angular/material/card'\nimport { MatIconModule } from '@angular/material/icon'\nimport { ActivatedRoute, RouterModule } from '@angular/router'\nimport { addDays } from 'date-fns'\nimport { ApiService } from 'src/app/api/api.client'\nimport { IOnlineDoctorFull } from 'src/app/api/api.models'\nimport { DialogCreatePatientPrerecordService } from 'src/app/common/dialogs/dialog-create-patient-prerecord/dialog-create-patient-prerecord.service'\nimport { NotifyService } from 'src/app/common/notify/notify.service'\nimport { DoctorRatingPipe } from 'src/app/pipes/doctor-rating.pipe'\nimport { AppContext } from 'src/app/services/app-context'\nimport { SeoSocialShareService } from 'src/app/services/seo.service'\nimport { MatBadgeModule } from '@angular/material/badge'\nimport { MatTooltip } from '@angular/material/tooltip'\nimport { MatChipsModule } from '@angular/material/chips'\nimport { MatListModule } from '@angular/material/list'\nimport { TimeDistancePipe } from 'src/app/pipes/time-distance.pipe'\n\n@Component({\n selector: 'doctor-profile',\n templateUrl: './doctor-profile.component.html',\n styleUrls: ['./doctor-profile.component.scss'],\n standalone: true,\n imports: [\n CommonModule,\n NgOptimizedImage,\n RouterModule,\n DoctorRatingPipe,\n MatButtonModule,\n MatIconModule,\n MatChipsModule,\n MatCardModule,\n MatBadgeModule,\n MatTooltip,\n MatListModule,\n TimeDistancePipe,\n ],\n})\nexport class DoctorProfileComponent {\n public readonly doctor: IOnlineDoctorFull\n public readonly doctorId: number\n public hideDoctors: boolean\n public readonly hideDoctorFeedback: boolean\n constructor(\n private route: ActivatedRoute,\n private api: ApiService,\n private context: AppContext,\n private dialog: DialogCreatePatientPrerecordService,\n private notify: NotifyService,\n private seo: SeoSocialShareService\n ) {\n this.doctor = this.route.snapshot.data['doctor']\n this.hideDoctors = this.context.configurations.HideDoctors ?? false\n this.doctorId = parseInt(this.route.snapshot.paramMap.get('id')!, 10)\n this.hideDoctorFeedback = this.context.configurations.HideDoctorFeedbacks\n const title = `${this.context.configurations.Title} - ${this.doctor.lfm}`\n this.seo.setTitle(title)\n\n if (this.doctor.additionalInformation) {\n this.seo.setDescription(this.doctor.additionalInformation)\n }\n\n this.seo.setImage(this.doctor.photo ?? 'assets/avatar.jpg', {\n alt: title,\n height: 100,\n width: 100,\n })\n }\n\n public handleMissingImage(event: Event) {\n ;(event.target as HTMLImageElement).src = `assets/avatar.jpg`\n }\n\n openDialog() {\n var now = new Date()\n const end = addDays(now, 14)\n this.api.findSchedulers(now, end, undefined, this.doctorId).subscribe((x) => {\n if (x && x.length > 0) {\n this.dialog.open({ doctor: x[0], selectedInterval: null, selectedDay: null }).subscribe((x) => {})\n } else {\n this.notify.error('Запис до лікаря недоступний')\n }\n })\n }\n}\n", "
{{ feedback.text }}
\n }\n