pat-shared-components 1.3.2 → 1.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"TestResultDetail.vue.js","sources":["../../../../../../src/components/TestResult/Mobile/ResultTab/TestResultDetail.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, unref as _unref, createVNode as _createVNode, withCtx as _withCtx, createElementVNode as _createElementVNode, renderSlot as _renderSlot, createElementBlock as _createElementBlock, Fragment as _Fragment } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"consumer-test-result__ready\"\n}\nconst _hoisted_2 = { class: \"psc-px-4\" }\n\nimport { computed, defineAsyncComponent, toRef } from 'vue';\nimport PatientName from '../../../Shared/PatientName.vue';\nimport ResultReadyV2, {\n type TimelineEvent,\n} from '../../Shared/ResultReadyV2.vue';\nimport RejectedResult from '../../Shared/RejectedResult.vue';\nimport BookAppointment from '../../Shared/BookAppointment.vue';\nimport ResultInsightCards from '../../Shared/ResultInsightCards.vue';\nimport DoctorNote from '../../Shared/DoctorNote.vue';\nimport DoctorNoteDetail from '../../Shared/DoctorNoteDetail.vue';\nimport type { TestResult } from '@/types';\nimport UpcomingAppointment from '../../Shared/UpcomingAppointment.vue';\nimport CallUsFilledButton from '../../Shared/CallUsFilledButton.vue';\nimport TestResultDetailSkeleton from '../../Shared/TestResultDetailSkeleton/TestResultDetailSkeleton.vue';\nimport HealthSummary from '@/components/TestResult/HealthSummary/HealthSummary.vue';\nimport TestResultSection from '../../Shared/TestResultSection.vue';\nimport { useTestResult } from '@/composables/TestResult';\nimport {\n buildTestResultSurveyContext,\n getSurveySlug,\n isSurveyEnabledForTestResult,\n isTeledocSurveyEnabled,\n} from '@/helpers/SurveyHelper';\nimport { useSurveyConfig } from '@/composables/useSurveyConfig';\n\n/**\n * Props\n */\nexport interface Props {\n testResult: TestResult;\n loading: boolean;\n hidePatientInfo?: boolean;\n hideSummary?: boolean;\n timeline?: TimelineEvent[];\n listActionEvent?: Record<string, string>;\n showResultReport?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'TestResultDetail',\n props: {\n testResult: null,\n loading: { type: Boolean },\n hidePatientInfo: { type: Boolean, default: false },\n hideSummary: { type: Boolean, default: false },\n timeline: { default: undefined },\n listActionEvent: { default: undefined },\n showResultReport: { type: Boolean, default: false }\n },\n emits: [\n 'click:book-appointment',\n 'click:appointment-booking',\n 'click:result-report',\n],\n setup(__props: any, { emit }) {\n\nconst props = __props as { testResult: TestResult, loading: boolean, hidePatientInfo: boolean, hideSummary: boolean, timeline: TimelineEvent[], listActionEvent: Record<string, string>, showResultReport: boolean };\n\n\n\nconst TakeSurvey = defineAsyncComponent(\n () => import('../../Shared/TakeSurvey.vue')\n);\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst { healthSummaryItems, hideContent, isViewable, visible } = useTestResult({\n testResult: toRef(props, 'testResult'),\n hidePatientInfo: toRef(props, 'hidePatientInfo'),\n hideSummary: toRef(props, 'hideSummary'),\n});\n\nconst { surveyConfig } = useSurveyConfig();\n\nconst doctorNoteSurveyContext = computed(() =>\n buildTestResultSurveyContext(props.testResult, 'doctor-note')\n);\n\nconst testSurveySlug = computed(() =>\n getSurveySlug(\n props.testResult.collection_channel,\n props.testResult.is_free_consultant,\n surveyConfig.value\n )\n);\n\nconst testSurveyContext = computed(() =>\n buildTestResultSurveyContext(props.testResult)\n);\n\nconst hasDoctorNoteDetail = computed(\n () =>\n !!props.testResult.doctor_note_detail &&\n props.testResult.doctor_note_detail.length > 0\n);\n\nconst isSurveyEnabled = computed(() =>\n isSurveyEnabledForTestResult(\n props.testResult.nps_test_result,\n props.testResult.collection_channel,\n props.testResult.is_free_consultant,\n surveyConfig.value\n )\n);\n\nconst isTeledocSurveyVisible = computed(() =>\n isTeledocSurveyEnabled(\n props.testResult.nps_doctor_consult,\n surveyConfig.value\n )\n);\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n (props.loading)\n ? (_openBlock(), _createBlock(TestResultDetailSkeleton, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n (_unref(isViewable))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", null, [\n (_unref(visible).patientName)\n ? (_openBlock(), _createBlock(PatientName, {\n key: 0,\n \"first-name\": props.testResult.first_name,\n class: \"psc-px-4 psc-pb-2\"\n }, null, 8, [\"first-name\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(ResultReadyV2, {\n \"test-result\": props.testResult,\n timeline: props.timeline,\n \"list-action-event\": props.listActionEvent,\n class: \"psc-px-4 psc-pb-4\"\n }, null, 8, [\"test-result\", \"timeline\", \"list-action-event\"]),\n (_unref(visible).healthSummary)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 1 }, {\n default: _withCtx(() => [\n _createVNode(HealthSummary, {\n items: _unref(healthSummaryItems),\n \"cta-button\": props.testResult.is_free_consultant,\n \"onClick:ctaButton\": _cache[0] || (_cache[0] = ($event: any) => (emit('click:book-appointment')))\n }, null, 8, [\"items\", \"cta-button\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (props.showResultReport)\n ? (_openBlock(), _createBlock(ResultInsightCards, {\n key: 2,\n \"show-book-appointment\": _unref(visible).bookAppointment,\n \"onClick:report\": _cache[1] || (_cache[1] = ($event: any) => (emit('click:result-report'))),\n \"onClick:book\": _cache[2] || (_cache[2] = ($event: any) => (emit('click:book-appointment')))\n }, null, 8, [\"show-book-appointment\"]))\n : (_unref(visible).bookAppointment)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 3 }, {\n default: _withCtx(() => [\n _createVNode(BookAppointment, {\n \"onClick:book\": _cache[3] || (_cache[3] = ($event: any) => (emit('click:book-appointment')))\n })\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(visible).doctorNote)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 4 }, {\n default: _withCtx(() => [\n _createVNode(DoctorNote, {\n \"doctor-note\": props.testResult.doctor_note\n }, null, 8, [\"doctor-note\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(hasDoctorNoteDetail))\n ? (_openBlock(), _createBlock(TestResultSection, { key: 5 }, {\n default: _withCtx(() => [\n _createVNode(DoctorNoteDetail, {\n \"doctor-note-detail\": __props.testResult.doctor_note_detail!,\n \"survey-context\": \n _unref(isTeledocSurveyVisible) ? _unref(doctorNoteSurveyContext) : undefined\n ,\n \"onClick:appointmentBooking\": _cache[4] || (_cache[4] = ($event: any) => (\n emit('click:appointment-booking', $event)\n ))\n }, null, 8, [\"doctor-note-detail\", \"survey-context\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(isSurveyEnabled))\n ? (_openBlock(), _createBlock(TestResultSection, { key: 6 }, {\n default: _withCtx(() => [\n _createVNode(_unref(TakeSurvey), {\n variant: \"bar\",\n \"survey-slug\": _unref(testSurveySlug),\n context: _unref(testSurveyContext),\n text: _ctx.$t('psc.test_result_take_survey_button')\n }, null, 8, [\"survey-slug\", \"context\", \"text\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(visible).upcomingAppointment)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 7 }, {\n default: _withCtx(() => [\n _createVNode(UpcomingAppointment, {\n \"time-slot\": props.testResult.consult_time!\n }, null, 8, [\"time-slot\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n _renderSlot(_ctx.$slots, \"header\"),\n (!_unref(hideContent))\n ? _renderSlot(_ctx.$slots, \"default\", { key: 0 })\n : _createCommentVNode(\"\", true),\n _renderSlot(_ctx.$slots, \"footer\")\n ])\n ]))\n : (_openBlock(), _createBlock(RejectedResult, {\n key: 1,\n class: \"psc-px-4\"\n }, {\n \"body-append\": _withCtx(() => [\n _createVNode(CallUsFilledButton, { class: \"psc-mt-6\" })\n ]),\n _: 1\n }))\n ], 64))\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_sfc_main","_defineComponent","__props","emit","props","TakeSurvey","defineAsyncComponent","_interopNamespaceDefaultOnly","healthSummaryItems","hideContent","isViewable","visible","useTestResult","toRef","surveyConfig","useSurveyConfig","doctorNoteSurveyContext","computed","buildTestResultSurveyContext","testSurveySlug","getSurveySlug","testSurveyContext","hasDoctorNoteDetail","isSurveyEnabled","isSurveyEnabledForTestResult","isTeledocSurveyVisible","isTeledocSurveyEnabled","_ctx","_cache","_openBlock","_createElementBlock","_createBlock","TestResultDetailSkeleton","_Fragment","_unref","_createElementVNode","PatientName","_createCommentVNode","_createVNode","ResultReadyV2","TestResultSection","_withCtx","HealthSummary","$event","ResultInsightCards","BookAppointment","DoctorNote","DoctorNoteDetail","UpcomingAppointment","_renderSlot","RejectedResult","CallUsFilledButton"],"mappings":"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"}
1
+ {"version":3,"file":"TestResultDetail.vue.js","sources":["../../../../../../src/components/TestResult/Mobile/ResultTab/TestResultDetail.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, unref as _unref, createVNode as _createVNode, withCtx as _withCtx, renderSlot as _renderSlot, createSlots as _createSlots, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, Fragment as _Fragment } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"consumer-test-result__ready\"\n}\nconst _hoisted_2 = { class: \"psc-px-4\" }\n\nimport { computed, defineAsyncComponent, toRef, useSlots } from 'vue';\nimport PatientName from '../../../Shared/PatientName.vue';\nimport ResultReadyV2, {\n type TimelineEvent,\n} from '../../Shared/ResultReadyV2.vue';\nimport RejectedResult from '../../Shared/RejectedResult.vue';\nimport BookAppointment from '../../Shared/BookAppointment.vue';\nimport ResultInsightCards from '../../Shared/ResultInsightCards.vue';\nimport DoctorNote from '../../Shared/DoctorNote.vue';\nimport DoctorNoteDetail from '../../Shared/DoctorNoteDetail.vue';\nimport type { TestResult } from '@/types';\nimport UpcomingAppointment from '../../Shared/UpcomingAppointment.vue';\nimport CallUsFilledButton from '../../Shared/CallUsFilledButton.vue';\nimport TestResultDetailSkeleton from '../../Shared/TestResultDetailSkeleton/TestResultDetailSkeleton.vue';\nimport HealthSummary from '@/components/TestResult/HealthSummary/HealthSummary.vue';\nimport TestResultSection from '../../Shared/TestResultSection.vue';\nimport { useTestResult } from '@/composables/TestResult';\nimport {\n buildTestResultSurveyContext,\n getSurveySlug,\n isSurveyEnabledForTestResult,\n isTeledocSurveyEnabled,\n} from '@/helpers/SurveyHelper';\nimport { useSurveyConfig } from '@/composables/useSurveyConfig';\n\n/**\n * Props\n */\nexport interface Props {\n testResult: TestResult;\n loading: boolean;\n hidePatientInfo?: boolean;\n hideSummary?: boolean;\n timeline?: TimelineEvent[];\n listActionEvent?: Record<string, string>;\n showResultReport?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'TestResultDetail',\n props: {\n testResult: null,\n loading: { type: Boolean },\n hidePatientInfo: { type: Boolean, default: false },\n hideSummary: { type: Boolean, default: false },\n timeline: { default: undefined },\n listActionEvent: { default: undefined },\n showResultReport: { type: Boolean, default: false }\n },\n emits: [\n 'click:book-appointment',\n 'click:appointment-booking',\n 'click:result-report',\n],\n setup(__props: any, { emit }) {\n\nconst props = __props as { testResult: TestResult, loading: boolean, hidePatientInfo: boolean, hideSummary: boolean, timeline: TimelineEvent[], listActionEvent: Record<string, string>, showResultReport: boolean };\n\n\n\nconst TakeSurvey = defineAsyncComponent(\n () => import('../../Shared/TakeSurvey.vue')\n);\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst { healthSummaryItems, hideContent, isViewable, visible } = useTestResult({\n testResult: toRef(props, 'testResult'),\n hidePatientInfo: toRef(props, 'hidePatientInfo'),\n hideSummary: toRef(props, 'hideSummary'),\n});\n\nconst { surveyConfig } = useSurveyConfig();\n\nconst doctorNoteSurveyContext = computed(() =>\n buildTestResultSurveyContext(props.testResult, 'doctor-note')\n);\n\nconst testSurveySlug = computed(() =>\n getSurveySlug(\n props.testResult.collection_channel,\n props.testResult.is_free_consultant,\n surveyConfig.value\n )\n);\n\nconst testSurveyContext = computed(() =>\n buildTestResultSurveyContext(props.testResult)\n);\n\nconst hasDoctorNoteDetail = computed(\n () =>\n !!props.testResult.doctor_note_detail &&\n props.testResult.doctor_note_detail.length > 0\n);\n\nconst isSurveyEnabled = computed(() =>\n isSurveyEnabledForTestResult(\n props.testResult.nps_test_result,\n props.testResult.collection_channel,\n props.testResult.is_free_consultant,\n surveyConfig.value\n )\n);\n\n// DPT-8995: the host's `book-appointment-box` slot replaces BookAppointment and is not\n// gated by is_free_consultant.\nconst slots = useSlots();\nconst showBookAppointmentBox = computed(\n () => visible.value.bookAppointment || !!slots['book-appointment-box']\n);\n\nconst isTeledocSurveyVisible = computed(() =>\n isTeledocSurveyEnabled(\n props.testResult.nps_doctor_consult,\n surveyConfig.value\n )\n);\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n (props.loading)\n ? (_openBlock(), _createBlock(TestResultDetailSkeleton, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n (_unref(isViewable))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", null, [\n (_unref(visible).patientName)\n ? (_openBlock(), _createBlock(PatientName, {\n key: 0,\n \"first-name\": props.testResult.first_name,\n class: \"psc-px-4 psc-pb-2\"\n }, null, 8, [\"first-name\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(ResultReadyV2, {\n \"test-result\": props.testResult,\n timeline: props.timeline,\n \"list-action-event\": props.listActionEvent,\n class: \"psc-px-4 psc-pb-4\"\n }, null, 8, [\"test-result\", \"timeline\", \"list-action-event\"]),\n (_unref(visible).healthSummary)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 1 }, {\n default: _withCtx(() => [\n _createVNode(HealthSummary, {\n items: _unref(healthSummaryItems),\n \"cta-button\": props.testResult.is_free_consultant,\n \"onClick:ctaButton\": _cache[0] || (_cache[0] = ($event: any) => (emit('click:book-appointment')))\n }, null, 8, [\"items\", \"cta-button\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (props.showResultReport)\n ? (_openBlock(), _createBlock(ResultInsightCards, {\n key: 2,\n \"onClick:report\": _cache[2] || (_cache[2] = ($event: any) => (emit('click:result-report')))\n }, _createSlots({ _: 2 }, [\n (_unref(showBookAppointmentBox))\n ? {\n name: \"book-appointment-box\",\n fn: _withCtx(() => [\n (_ctx.$slots['book-appointment-box'])\n ? _renderSlot(_ctx.$slots, \"book-appointment-box\", {\n key: 0,\n compact: true\n })\n : (_openBlock(), _createBlock(BookAppointment, {\n key: 1,\n compact: \"\",\n \"onClick:book\": _cache[1] || (_cache[1] = ($event: any) => (emit('click:book-appointment')))\n }))\n ]),\n key: \"0\"\n }\n : undefined\n ]), 1024))\n : (_unref(showBookAppointmentBox))\n ? (_openBlock(), _createBlock(TestResultSection, { key: 3 }, {\n default: _withCtx(() => [\n (_ctx.$slots['book-appointment-box'])\n ? _renderSlot(_ctx.$slots, \"book-appointment-box\", {\n key: 0,\n compact: false\n })\n : (_openBlock(), _createBlock(BookAppointment, {\n key: 1,\n \"onClick:book\": _cache[3] || (_cache[3] = ($event: any) => (emit('click:book-appointment')))\n }))\n ]),\n _: 3\n }))\n : _createCommentVNode(\"\", true),\n (_unref(visible).doctorNote)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 4 }, {\n default: _withCtx(() => [\n _createVNode(DoctorNote, {\n \"doctor-note\": props.testResult.doctor_note\n }, null, 8, [\"doctor-note\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(hasDoctorNoteDetail))\n ? (_openBlock(), _createBlock(TestResultSection, { key: 5 }, {\n default: _withCtx(() => [\n _createVNode(DoctorNoteDetail, {\n \"doctor-note-detail\": __props.testResult.doctor_note_detail!,\n \"survey-context\": \n _unref(isTeledocSurveyVisible) ? _unref(doctorNoteSurveyContext) : undefined\n ,\n \"onClick:appointmentBooking\": _cache[4] || (_cache[4] = ($event: any) => (\n emit('click:appointment-booking', $event)\n ))\n }, null, 8, [\"doctor-note-detail\", \"survey-context\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(isSurveyEnabled))\n ? (_openBlock(), _createBlock(TestResultSection, { key: 6 }, {\n default: _withCtx(() => [\n _createVNode(_unref(TakeSurvey), {\n variant: \"bar\",\n \"survey-slug\": _unref(testSurveySlug),\n context: _unref(testSurveyContext),\n text: _ctx.$t('psc.test_result_take_survey_button')\n }, null, 8, [\"survey-slug\", \"context\", \"text\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(visible).upcomingAppointment)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 7 }, {\n default: _withCtx(() => [\n _createVNode(UpcomingAppointment, {\n \"time-slot\": props.testResult.consult_time!\n }, null, 8, [\"time-slot\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n _renderSlot(_ctx.$slots, \"header\"),\n (!_unref(hideContent))\n ? _renderSlot(_ctx.$slots, \"default\", { key: 0 })\n : _createCommentVNode(\"\", true),\n _renderSlot(_ctx.$slots, \"footer\")\n ])\n ]))\n : (_openBlock(), _createBlock(RejectedResult, {\n key: 1,\n class: \"psc-px-4\"\n }, {\n \"body-append\": _withCtx(() => [\n _createVNode(CallUsFilledButton, { class: \"psc-mt-6\" })\n ]),\n _: 1\n }))\n ], 64))\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_sfc_main","_defineComponent","__props","emit","props","TakeSurvey","defineAsyncComponent","_interopNamespaceDefaultOnly","healthSummaryItems","hideContent","isViewable","visible","useTestResult","toRef","surveyConfig","useSurveyConfig","doctorNoteSurveyContext","computed","buildTestResultSurveyContext","testSurveySlug","getSurveySlug","testSurveyContext","hasDoctorNoteDetail","isSurveyEnabled","isSurveyEnabledForTestResult","slots","useSlots","showBookAppointmentBox","isTeledocSurveyVisible","isTeledocSurveyEnabled","_ctx","_cache","_openBlock","_createElementBlock","_createBlock","TestResultDetailSkeleton","_Fragment","_unref","_createElementVNode","PatientName","_createCommentVNode","_createVNode","ResultReadyV2","TestResultSection","_withCtx","HealthSummary","$event","ResultInsightCards","_createSlots","_renderSlot","BookAppointment","DoctorNote","DoctorNoteDetail","UpcomingAppointment","RejectedResult","CallUsFilledButton"],"mappings":"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"}
@@ -1,23 +1,23 @@
1
- import { defineComponent as w, defineAsyncComponent as A, toRef as _, computed as a, openBlock as o, createElementBlock as k, createBlock as n, Fragment as V, unref as e, createElementVNode as R, createCommentVNode as l, createVNode as i, withCtx as r, renderSlot as y } from "vue";
2
- import I from "../../../Shared/PatientName.vue.mjs";
3
- import D from "../../Shared/ResultReadyV2.vue.mjs";
4
- import P from "../../Shared/RejectedResult.vue.mjs";
5
- import F from "../../Shared/BookAppointment.vue.mjs";
6
- import j from "../../Shared/ResultInsightCards.vue.mjs";
7
- import q from "../../Shared/DoctorNote.vue.mjs";
8
- import z from "../../Shared/DoctorNoteDetail.vue.mjs";
9
- import G from "../../Shared/UpcomingAppointment.vue.mjs";
10
- import H from "../../Shared/CallUsFilledButton.vue.mjs";
11
- import J from "../../Shared/TestResultDetailSkeleton/TestResultDetailSkeleton.vue.mjs";
12
- import K from "../../HealthSummary/HealthSummary.vue.mjs";
13
- import c from "../../Shared/TestResultSection.vue.mjs";
14
- import { useTestResult as L } from "../../../../composables/TestResult.mjs";
15
- import { buildTestResultSurveyContext as b, getSurveySlug as M, isSurveyEnabledForTestResult as O, isTeledocSurveyEnabled as Q } from "../../../../helpers/SurveyHelper.mjs";
16
- import { useSurveyConfig as U } from "../../../../composables/useSurveyConfig.mjs";
17
- const W = {
1
+ import { defineComponent as I, defineAsyncComponent as D, toRef as y, computed as u, useSlots as P, openBlock as o, createElementBlock as _, createBlock as s, Fragment as F, unref as e, createElementVNode as R, createCommentVNode as i, createVNode as a, withCtx as r, createSlots as j, renderSlot as f } from "vue";
2
+ import q from "../../../Shared/PatientName.vue.mjs";
3
+ import z from "../../Shared/ResultReadyV2.vue.mjs";
4
+ import G from "../../Shared/RejectedResult.vue.mjs";
5
+ import S from "../../Shared/BookAppointment.vue.mjs";
6
+ import H from "../../Shared/ResultInsightCards.vue.mjs";
7
+ import J from "../../Shared/DoctorNote.vue.mjs";
8
+ import K from "../../Shared/DoctorNoteDetail.vue.mjs";
9
+ import L from "../../Shared/UpcomingAppointment.vue.mjs";
10
+ import M from "../../Shared/CallUsFilledButton.vue.mjs";
11
+ import O from "../../Shared/TestResultDetailSkeleton/TestResultDetailSkeleton.vue.mjs";
12
+ import Q from "../../HealthSummary/HealthSummary.vue.mjs";
13
+ import m from "../../Shared/TestResultSection.vue.mjs";
14
+ import { useTestResult as U } from "../../../../composables/TestResult.mjs";
15
+ import { buildTestResultSurveyContext as $, getSurveySlug as W, isSurveyEnabledForTestResult as X, isTeledocSurveyEnabled as Y } from "../../../../helpers/SurveyHelper.mjs";
16
+ import { useSurveyConfig as Z } from "../../../../composables/useSurveyConfig.mjs";
17
+ const tt = {
18
18
  key: 0,
19
19
  class: "consumer-test-result__ready"
20
- }, X = { class: "psc-px-4" }, ft = /* @__PURE__ */ w({
20
+ }, et = { class: "psc-px-4" }, vt = /* @__PURE__ */ I({
21
21
  __name: "TestResultDetail",
22
22
  props: {
23
23
  testResult: null,
@@ -33,125 +33,144 @@ const W = {
33
33
  "click:appointment-booking",
34
34
  "click:result-report"
35
35
  ],
36
- setup(v, { emit: m }) {
37
- const t = v, S = A(
36
+ setup(v, { emit: c }) {
37
+ const t = v, g = D(
38
38
  () => import("../../Shared/TakeSurvey.vue2.mjs")
39
- ), { healthSummaryItems: $, hideContent: g, isViewable: C, visible: u } = L({
40
- testResult: _(t, "testResult"),
41
- hidePatientInfo: _(t, "hidePatientInfo"),
42
- hideSummary: _(t, "hideSummary")
43
- }), { surveyConfig: f } = U(), h = a(
44
- () => b(t.testResult, "doctor-note")
45
- ), x = a(
46
- () => M(
39
+ ), { healthSummaryItems: x, hideContent: C, isViewable: h, visible: p } = U({
40
+ testResult: y(t, "testResult"),
41
+ hidePatientInfo: y(t, "hidePatientInfo"),
42
+ hideSummary: y(t, "hideSummary")
43
+ }), { surveyConfig: k } = Z(), B = u(
44
+ () => $(t.testResult, "doctor-note")
45
+ ), T = u(
46
+ () => W(
47
47
  t.testResult.collection_channel,
48
48
  t.testResult.is_free_consultant,
49
- f.value
49
+ k.value
50
50
  )
51
- ), B = a(
52
- () => b(t.testResult)
53
- ), T = a(
51
+ ), E = u(
52
+ () => $(t.testResult)
53
+ ), N = u(
54
54
  () => !!t.testResult.doctor_note_detail && t.testResult.doctor_note_detail.length > 0
55
- ), E = a(
56
- () => O(
55
+ ), A = u(
56
+ () => X(
57
57
  t.testResult.nps_test_result,
58
58
  t.testResult.collection_channel,
59
59
  t.testResult.is_free_consultant,
60
- f.value
60
+ k.value
61
61
  )
62
- ), N = a(
63
- () => Q(
62
+ ), V = P(), b = u(
63
+ () => p.value.bookAppointment || !!V["book-appointment-box"]
64
+ ), w = u(
65
+ () => Y(
64
66
  t.testResult.nps_doctor_consult,
65
- f.value
67
+ k.value
66
68
  )
67
69
  );
68
- return (d, s) => (o(), k("div", null, [
69
- t.loading ? (o(), n(J, { key: 0 })) : (o(), k(V, { key: 1 }, [
70
- e(C) ? (o(), k("div", W, [
70
+ return (l, n) => (o(), _("div", null, [
71
+ t.loading ? (o(), s(O, { key: 0 })) : (o(), _(F, { key: 1 }, [
72
+ e(h) ? (o(), _("div", tt, [
71
73
  R("div", null, [
72
- e(u).patientName ? (o(), n(I, {
74
+ e(p).patientName ? (o(), s(q, {
73
75
  key: 0,
74
76
  "first-name": t.testResult.first_name,
75
77
  class: "psc-px-4 psc-pb-2"
76
- }, null, 8, ["first-name"])) : l("", !0),
77
- i(D, {
78
+ }, null, 8, ["first-name"])) : i("", !0),
79
+ a(z, {
78
80
  "test-result": t.testResult,
79
81
  timeline: t.timeline,
80
82
  "list-action-event": t.listActionEvent,
81
83
  class: "psc-px-4 psc-pb-4"
82
84
  }, null, 8, ["test-result", "timeline", "list-action-event"]),
83
- e(u).healthSummary ? (o(), n(c, { key: 1 }, {
85
+ e(p).healthSummary ? (o(), s(m, { key: 1 }, {
84
86
  default: r(() => [
85
- i(K, {
86
- items: e($),
87
+ a(Q, {
88
+ items: e(x),
87
89
  "cta-button": t.testResult.is_free_consultant,
88
- "onClick:ctaButton": s[0] || (s[0] = (p) => m("click:book-appointment"))
90
+ "onClick:ctaButton": n[0] || (n[0] = (d) => c("click:book-appointment"))
89
91
  }, null, 8, ["items", "cta-button"])
90
92
  ]),
91
93
  _: 1
92
- })) : l("", !0),
93
- t.showResultReport ? (o(), n(j, {
94
+ })) : i("", !0),
95
+ t.showResultReport ? (o(), s(H, {
94
96
  key: 2,
95
- "show-book-appointment": e(u).bookAppointment,
96
- "onClick:report": s[1] || (s[1] = (p) => m("click:result-report")),
97
- "onClick:book": s[2] || (s[2] = (p) => m("click:book-appointment"))
98
- }, null, 8, ["show-book-appointment"])) : e(u).bookAppointment ? (o(), n(c, { key: 3 }, {
97
+ "onClick:report": n[2] || (n[2] = (d) => c("click:result-report"))
98
+ }, j({ _: 2 }, [
99
+ e(b) ? {
100
+ name: "book-appointment-box",
101
+ fn: r(() => [
102
+ l.$slots["book-appointment-box"] ? f(l.$slots, "book-appointment-box", {
103
+ key: 0,
104
+ compact: !0
105
+ }) : (o(), s(S, {
106
+ key: 1,
107
+ compact: "",
108
+ "onClick:book": n[1] || (n[1] = (d) => c("click:book-appointment"))
109
+ }))
110
+ ]),
111
+ key: "0"
112
+ } : void 0
113
+ ]), 1024)) : e(b) ? (o(), s(m, { key: 3 }, {
99
114
  default: r(() => [
100
- i(F, {
101
- "onClick:book": s[3] || (s[3] = (p) => m("click:book-appointment"))
102
- })
115
+ l.$slots["book-appointment-box"] ? f(l.$slots, "book-appointment-box", {
116
+ key: 0,
117
+ compact: !1
118
+ }) : (o(), s(S, {
119
+ key: 1,
120
+ "onClick:book": n[3] || (n[3] = (d) => c("click:book-appointment"))
121
+ }))
103
122
  ]),
104
- _: 1
105
- })) : l("", !0),
106
- e(u).doctorNote ? (o(), n(c, { key: 4 }, {
123
+ _: 3
124
+ })) : i("", !0),
125
+ e(p).doctorNote ? (o(), s(m, { key: 4 }, {
107
126
  default: r(() => [
108
- i(q, {
127
+ a(J, {
109
128
  "doctor-note": t.testResult.doctor_note
110
129
  }, null, 8, ["doctor-note"])
111
130
  ]),
112
131
  _: 1
113
- })) : l("", !0),
114
- e(T) ? (o(), n(c, { key: 5 }, {
132
+ })) : i("", !0),
133
+ e(N) ? (o(), s(m, { key: 5 }, {
115
134
  default: r(() => [
116
- i(z, {
135
+ a(K, {
117
136
  "doctor-note-detail": v.testResult.doctor_note_detail,
118
- "survey-context": e(N) ? e(h) : void 0,
119
- "onClick:appointmentBooking": s[4] || (s[4] = (p) => m("click:appointment-booking", p))
137
+ "survey-context": e(w) ? e(B) : void 0,
138
+ "onClick:appointmentBooking": n[4] || (n[4] = (d) => c("click:appointment-booking", d))
120
139
  }, null, 8, ["doctor-note-detail", "survey-context"])
121
140
  ]),
122
141
  _: 1
123
- })) : l("", !0),
124
- e(E) ? (o(), n(c, { key: 6 }, {
142
+ })) : i("", !0),
143
+ e(A) ? (o(), s(m, { key: 6 }, {
125
144
  default: r(() => [
126
- i(e(S), {
145
+ a(e(g), {
127
146
  variant: "bar",
128
- "survey-slug": e(x),
129
- context: e(B),
130
- text: d.$t("psc.test_result_take_survey_button")
147
+ "survey-slug": e(T),
148
+ context: e(E),
149
+ text: l.$t("psc.test_result_take_survey_button")
131
150
  }, null, 8, ["survey-slug", "context", "text"])
132
151
  ]),
133
152
  _: 1
134
- })) : l("", !0),
135
- e(u).upcomingAppointment ? (o(), n(c, { key: 7 }, {
153
+ })) : i("", !0),
154
+ e(p).upcomingAppointment ? (o(), s(m, { key: 7 }, {
136
155
  default: r(() => [
137
- i(G, {
156
+ a(L, {
138
157
  "time-slot": t.testResult.consult_time
139
158
  }, null, 8, ["time-slot"])
140
159
  ]),
141
160
  _: 1
142
- })) : l("", !0)
161
+ })) : i("", !0)
143
162
  ]),
144
- R("div", X, [
145
- y(d.$slots, "header"),
146
- e(g) ? l("", !0) : y(d.$slots, "default", { key: 0 }),
147
- y(d.$slots, "footer")
163
+ R("div", et, [
164
+ f(l.$slots, "header"),
165
+ e(C) ? i("", !0) : f(l.$slots, "default", { key: 0 }),
166
+ f(l.$slots, "footer")
148
167
  ])
149
- ])) : (o(), n(P, {
168
+ ])) : (o(), s(G, {
150
169
  key: 1,
151
170
  class: "psc-px-4"
152
171
  }, {
153
172
  "body-append": r(() => [
154
- i(H, { class: "psc-mt-6" })
173
+ a(M, { class: "psc-mt-6" })
155
174
  ]),
156
175
  _: 1
157
176
  }))
@@ -160,6 +179,6 @@ const W = {
160
179
  }
161
180
  });
162
181
  export {
163
- ft as default
182
+ vt as default
164
183
  };
165
184
  //# sourceMappingURL=TestResultDetail.vue.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"TestResultDetail.vue.mjs","sources":["../../../../../../src/components/TestResult/Mobile/ResultTab/TestResultDetail.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, unref as _unref, createVNode as _createVNode, withCtx as _withCtx, createElementVNode as _createElementVNode, renderSlot as _renderSlot, createElementBlock as _createElementBlock, Fragment as _Fragment } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"consumer-test-result__ready\"\n}\nconst _hoisted_2 = { class: \"psc-px-4\" }\n\nimport { computed, defineAsyncComponent, toRef } from 'vue';\nimport PatientName from '../../../Shared/PatientName.vue';\nimport ResultReadyV2, {\n type TimelineEvent,\n} from '../../Shared/ResultReadyV2.vue';\nimport RejectedResult from '../../Shared/RejectedResult.vue';\nimport BookAppointment from '../../Shared/BookAppointment.vue';\nimport ResultInsightCards from '../../Shared/ResultInsightCards.vue';\nimport DoctorNote from '../../Shared/DoctorNote.vue';\nimport DoctorNoteDetail from '../../Shared/DoctorNoteDetail.vue';\nimport type { TestResult } from '@/types';\nimport UpcomingAppointment from '../../Shared/UpcomingAppointment.vue';\nimport CallUsFilledButton from '../../Shared/CallUsFilledButton.vue';\nimport TestResultDetailSkeleton from '../../Shared/TestResultDetailSkeleton/TestResultDetailSkeleton.vue';\nimport HealthSummary from '@/components/TestResult/HealthSummary/HealthSummary.vue';\nimport TestResultSection from '../../Shared/TestResultSection.vue';\nimport { useTestResult } from '@/composables/TestResult';\nimport {\n buildTestResultSurveyContext,\n getSurveySlug,\n isSurveyEnabledForTestResult,\n isTeledocSurveyEnabled,\n} from '@/helpers/SurveyHelper';\nimport { useSurveyConfig } from '@/composables/useSurveyConfig';\n\n/**\n * Props\n */\nexport interface Props {\n testResult: TestResult;\n loading: boolean;\n hidePatientInfo?: boolean;\n hideSummary?: boolean;\n timeline?: TimelineEvent[];\n listActionEvent?: Record<string, string>;\n showResultReport?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'TestResultDetail',\n props: {\n testResult: null,\n loading: { type: Boolean },\n hidePatientInfo: { type: Boolean, default: false },\n hideSummary: { type: Boolean, default: false },\n timeline: { default: undefined },\n listActionEvent: { default: undefined },\n showResultReport: { type: Boolean, default: false }\n },\n emits: [\n 'click:book-appointment',\n 'click:appointment-booking',\n 'click:result-report',\n],\n setup(__props: any, { emit }) {\n\nconst props = __props as { testResult: TestResult, loading: boolean, hidePatientInfo: boolean, hideSummary: boolean, timeline: TimelineEvent[], listActionEvent: Record<string, string>, showResultReport: boolean };\n\n\n\nconst TakeSurvey = defineAsyncComponent(\n () => import('../../Shared/TakeSurvey.vue')\n);\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst { healthSummaryItems, hideContent, isViewable, visible } = useTestResult({\n testResult: toRef(props, 'testResult'),\n hidePatientInfo: toRef(props, 'hidePatientInfo'),\n hideSummary: toRef(props, 'hideSummary'),\n});\n\nconst { surveyConfig } = useSurveyConfig();\n\nconst doctorNoteSurveyContext = computed(() =>\n buildTestResultSurveyContext(props.testResult, 'doctor-note')\n);\n\nconst testSurveySlug = computed(() =>\n getSurveySlug(\n props.testResult.collection_channel,\n props.testResult.is_free_consultant,\n surveyConfig.value\n )\n);\n\nconst testSurveyContext = computed(() =>\n buildTestResultSurveyContext(props.testResult)\n);\n\nconst hasDoctorNoteDetail = computed(\n () =>\n !!props.testResult.doctor_note_detail &&\n props.testResult.doctor_note_detail.length > 0\n);\n\nconst isSurveyEnabled = computed(() =>\n isSurveyEnabledForTestResult(\n props.testResult.nps_test_result,\n props.testResult.collection_channel,\n props.testResult.is_free_consultant,\n surveyConfig.value\n )\n);\n\nconst isTeledocSurveyVisible = computed(() =>\n isTeledocSurveyEnabled(\n props.testResult.nps_doctor_consult,\n surveyConfig.value\n )\n);\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n (props.loading)\n ? (_openBlock(), _createBlock(TestResultDetailSkeleton, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n (_unref(isViewable))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", null, [\n (_unref(visible).patientName)\n ? (_openBlock(), _createBlock(PatientName, {\n key: 0,\n \"first-name\": props.testResult.first_name,\n class: \"psc-px-4 psc-pb-2\"\n }, null, 8, [\"first-name\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(ResultReadyV2, {\n \"test-result\": props.testResult,\n timeline: props.timeline,\n \"list-action-event\": props.listActionEvent,\n class: \"psc-px-4 psc-pb-4\"\n }, null, 8, [\"test-result\", \"timeline\", \"list-action-event\"]),\n (_unref(visible).healthSummary)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 1 }, {\n default: _withCtx(() => [\n _createVNode(HealthSummary, {\n items: _unref(healthSummaryItems),\n \"cta-button\": props.testResult.is_free_consultant,\n \"onClick:ctaButton\": _cache[0] || (_cache[0] = ($event: any) => (emit('click:book-appointment')))\n }, null, 8, [\"items\", \"cta-button\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (props.showResultReport)\n ? (_openBlock(), _createBlock(ResultInsightCards, {\n key: 2,\n \"show-book-appointment\": _unref(visible).bookAppointment,\n \"onClick:report\": _cache[1] || (_cache[1] = ($event: any) => (emit('click:result-report'))),\n \"onClick:book\": _cache[2] || (_cache[2] = ($event: any) => (emit('click:book-appointment')))\n }, null, 8, [\"show-book-appointment\"]))\n : (_unref(visible).bookAppointment)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 3 }, {\n default: _withCtx(() => [\n _createVNode(BookAppointment, {\n \"onClick:book\": _cache[3] || (_cache[3] = ($event: any) => (emit('click:book-appointment')))\n })\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(visible).doctorNote)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 4 }, {\n default: _withCtx(() => [\n _createVNode(DoctorNote, {\n \"doctor-note\": props.testResult.doctor_note\n }, null, 8, [\"doctor-note\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(hasDoctorNoteDetail))\n ? (_openBlock(), _createBlock(TestResultSection, { key: 5 }, {\n default: _withCtx(() => [\n _createVNode(DoctorNoteDetail, {\n \"doctor-note-detail\": __props.testResult.doctor_note_detail!,\n \"survey-context\": \n _unref(isTeledocSurveyVisible) ? _unref(doctorNoteSurveyContext) : undefined\n ,\n \"onClick:appointmentBooking\": _cache[4] || (_cache[4] = ($event: any) => (\n emit('click:appointment-booking', $event)\n ))\n }, null, 8, [\"doctor-note-detail\", \"survey-context\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(isSurveyEnabled))\n ? (_openBlock(), _createBlock(TestResultSection, { key: 6 }, {\n default: _withCtx(() => [\n _createVNode(_unref(TakeSurvey), {\n variant: \"bar\",\n \"survey-slug\": _unref(testSurveySlug),\n context: _unref(testSurveyContext),\n text: _ctx.$t('psc.test_result_take_survey_button')\n }, null, 8, [\"survey-slug\", \"context\", \"text\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(visible).upcomingAppointment)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 7 }, {\n default: _withCtx(() => [\n _createVNode(UpcomingAppointment, {\n \"time-slot\": props.testResult.consult_time!\n }, null, 8, [\"time-slot\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n _renderSlot(_ctx.$slots, \"header\"),\n (!_unref(hideContent))\n ? _renderSlot(_ctx.$slots, \"default\", { key: 0 })\n : _createCommentVNode(\"\", true),\n _renderSlot(_ctx.$slots, \"footer\")\n ])\n ]))\n : (_openBlock(), _createBlock(RejectedResult, {\n key: 1,\n class: \"psc-px-4\"\n }, {\n \"body-append\": _withCtx(() => [\n _createVNode(CallUsFilledButton, { class: \"psc-mt-6\" })\n ]),\n _: 1\n }))\n ], 64))\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_sfc_main","_defineComponent","__props","emit","props","TakeSurvey","defineAsyncComponent","healthSummaryItems","hideContent","isViewable","visible","useTestResult","toRef","surveyConfig","useSurveyConfig","doctorNoteSurveyContext","computed","buildTestResultSurveyContext","testSurveySlug","getSurveySlug","testSurveyContext","hasDoctorNoteDetail","isSurveyEnabled","isSurveyEnabledForTestResult","isTeledocSurveyVisible","isTeledocSurveyEnabled","_ctx","_cache","_openBlock","_createElementBlock","_createBlock","TestResultDetailSkeleton","_Fragment","_unref","_createElementVNode","PatientName","_createCommentVNode","_createVNode","ResultReadyV2","TestResultSection","_withCtx","HealthSummary","$event","ResultInsightCards","BookAppointment","DoctorNote","DoctorNoteDetail","UpcomingAppointment","_renderSlot","RejectedResult","CallUsFilledButton"],"mappings":"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"}
1
+ {"version":3,"file":"TestResultDetail.vue.mjs","sources":["../../../../../../src/components/TestResult/Mobile/ResultTab/TestResultDetail.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, unref as _unref, createVNode as _createVNode, withCtx as _withCtx, renderSlot as _renderSlot, createSlots as _createSlots, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, Fragment as _Fragment } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"consumer-test-result__ready\"\n}\nconst _hoisted_2 = { class: \"psc-px-4\" }\n\nimport { computed, defineAsyncComponent, toRef, useSlots } from 'vue';\nimport PatientName from '../../../Shared/PatientName.vue';\nimport ResultReadyV2, {\n type TimelineEvent,\n} from '../../Shared/ResultReadyV2.vue';\nimport RejectedResult from '../../Shared/RejectedResult.vue';\nimport BookAppointment from '../../Shared/BookAppointment.vue';\nimport ResultInsightCards from '../../Shared/ResultInsightCards.vue';\nimport DoctorNote from '../../Shared/DoctorNote.vue';\nimport DoctorNoteDetail from '../../Shared/DoctorNoteDetail.vue';\nimport type { TestResult } from '@/types';\nimport UpcomingAppointment from '../../Shared/UpcomingAppointment.vue';\nimport CallUsFilledButton from '../../Shared/CallUsFilledButton.vue';\nimport TestResultDetailSkeleton from '../../Shared/TestResultDetailSkeleton/TestResultDetailSkeleton.vue';\nimport HealthSummary from '@/components/TestResult/HealthSummary/HealthSummary.vue';\nimport TestResultSection from '../../Shared/TestResultSection.vue';\nimport { useTestResult } from '@/composables/TestResult';\nimport {\n buildTestResultSurveyContext,\n getSurveySlug,\n isSurveyEnabledForTestResult,\n isTeledocSurveyEnabled,\n} from '@/helpers/SurveyHelper';\nimport { useSurveyConfig } from '@/composables/useSurveyConfig';\n\n/**\n * Props\n */\nexport interface Props {\n testResult: TestResult;\n loading: boolean;\n hidePatientInfo?: boolean;\n hideSummary?: boolean;\n timeline?: TimelineEvent[];\n listActionEvent?: Record<string, string>;\n showResultReport?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'TestResultDetail',\n props: {\n testResult: null,\n loading: { type: Boolean },\n hidePatientInfo: { type: Boolean, default: false },\n hideSummary: { type: Boolean, default: false },\n timeline: { default: undefined },\n listActionEvent: { default: undefined },\n showResultReport: { type: Boolean, default: false }\n },\n emits: [\n 'click:book-appointment',\n 'click:appointment-booking',\n 'click:result-report',\n],\n setup(__props: any, { emit }) {\n\nconst props = __props as { testResult: TestResult, loading: boolean, hidePatientInfo: boolean, hideSummary: boolean, timeline: TimelineEvent[], listActionEvent: Record<string, string>, showResultReport: boolean };\n\n\n\nconst TakeSurvey = defineAsyncComponent(\n () => import('../../Shared/TakeSurvey.vue')\n);\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst { healthSummaryItems, hideContent, isViewable, visible } = useTestResult({\n testResult: toRef(props, 'testResult'),\n hidePatientInfo: toRef(props, 'hidePatientInfo'),\n hideSummary: toRef(props, 'hideSummary'),\n});\n\nconst { surveyConfig } = useSurveyConfig();\n\nconst doctorNoteSurveyContext = computed(() =>\n buildTestResultSurveyContext(props.testResult, 'doctor-note')\n);\n\nconst testSurveySlug = computed(() =>\n getSurveySlug(\n props.testResult.collection_channel,\n props.testResult.is_free_consultant,\n surveyConfig.value\n )\n);\n\nconst testSurveyContext = computed(() =>\n buildTestResultSurveyContext(props.testResult)\n);\n\nconst hasDoctorNoteDetail = computed(\n () =>\n !!props.testResult.doctor_note_detail &&\n props.testResult.doctor_note_detail.length > 0\n);\n\nconst isSurveyEnabled = computed(() =>\n isSurveyEnabledForTestResult(\n props.testResult.nps_test_result,\n props.testResult.collection_channel,\n props.testResult.is_free_consultant,\n surveyConfig.value\n )\n);\n\n// DPT-8995: the host's `book-appointment-box` slot replaces BookAppointment and is not\n// gated by is_free_consultant.\nconst slots = useSlots();\nconst showBookAppointmentBox = computed(\n () => visible.value.bookAppointment || !!slots['book-appointment-box']\n);\n\nconst isTeledocSurveyVisible = computed(() =>\n isTeledocSurveyEnabled(\n props.testResult.nps_doctor_consult,\n surveyConfig.value\n )\n);\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n (props.loading)\n ? (_openBlock(), _createBlock(TestResultDetailSkeleton, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n (_unref(isViewable))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", null, [\n (_unref(visible).patientName)\n ? (_openBlock(), _createBlock(PatientName, {\n key: 0,\n \"first-name\": props.testResult.first_name,\n class: \"psc-px-4 psc-pb-2\"\n }, null, 8, [\"first-name\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(ResultReadyV2, {\n \"test-result\": props.testResult,\n timeline: props.timeline,\n \"list-action-event\": props.listActionEvent,\n class: \"psc-px-4 psc-pb-4\"\n }, null, 8, [\"test-result\", \"timeline\", \"list-action-event\"]),\n (_unref(visible).healthSummary)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 1 }, {\n default: _withCtx(() => [\n _createVNode(HealthSummary, {\n items: _unref(healthSummaryItems),\n \"cta-button\": props.testResult.is_free_consultant,\n \"onClick:ctaButton\": _cache[0] || (_cache[0] = ($event: any) => (emit('click:book-appointment')))\n }, null, 8, [\"items\", \"cta-button\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (props.showResultReport)\n ? (_openBlock(), _createBlock(ResultInsightCards, {\n key: 2,\n \"onClick:report\": _cache[2] || (_cache[2] = ($event: any) => (emit('click:result-report')))\n }, _createSlots({ _: 2 }, [\n (_unref(showBookAppointmentBox))\n ? {\n name: \"book-appointment-box\",\n fn: _withCtx(() => [\n (_ctx.$slots['book-appointment-box'])\n ? _renderSlot(_ctx.$slots, \"book-appointment-box\", {\n key: 0,\n compact: true\n })\n : (_openBlock(), _createBlock(BookAppointment, {\n key: 1,\n compact: \"\",\n \"onClick:book\": _cache[1] || (_cache[1] = ($event: any) => (emit('click:book-appointment')))\n }))\n ]),\n key: \"0\"\n }\n : undefined\n ]), 1024))\n : (_unref(showBookAppointmentBox))\n ? (_openBlock(), _createBlock(TestResultSection, { key: 3 }, {\n default: _withCtx(() => [\n (_ctx.$slots['book-appointment-box'])\n ? _renderSlot(_ctx.$slots, \"book-appointment-box\", {\n key: 0,\n compact: false\n })\n : (_openBlock(), _createBlock(BookAppointment, {\n key: 1,\n \"onClick:book\": _cache[3] || (_cache[3] = ($event: any) => (emit('click:book-appointment')))\n }))\n ]),\n _: 3\n }))\n : _createCommentVNode(\"\", true),\n (_unref(visible).doctorNote)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 4 }, {\n default: _withCtx(() => [\n _createVNode(DoctorNote, {\n \"doctor-note\": props.testResult.doctor_note\n }, null, 8, [\"doctor-note\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(hasDoctorNoteDetail))\n ? (_openBlock(), _createBlock(TestResultSection, { key: 5 }, {\n default: _withCtx(() => [\n _createVNode(DoctorNoteDetail, {\n \"doctor-note-detail\": __props.testResult.doctor_note_detail!,\n \"survey-context\": \n _unref(isTeledocSurveyVisible) ? _unref(doctorNoteSurveyContext) : undefined\n ,\n \"onClick:appointmentBooking\": _cache[4] || (_cache[4] = ($event: any) => (\n emit('click:appointment-booking', $event)\n ))\n }, null, 8, [\"doctor-note-detail\", \"survey-context\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(isSurveyEnabled))\n ? (_openBlock(), _createBlock(TestResultSection, { key: 6 }, {\n default: _withCtx(() => [\n _createVNode(_unref(TakeSurvey), {\n variant: \"bar\",\n \"survey-slug\": _unref(testSurveySlug),\n context: _unref(testSurveyContext),\n text: _ctx.$t('psc.test_result_take_survey_button')\n }, null, 8, [\"survey-slug\", \"context\", \"text\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(visible).upcomingAppointment)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 7 }, {\n default: _withCtx(() => [\n _createVNode(UpcomingAppointment, {\n \"time-slot\": props.testResult.consult_time!\n }, null, 8, [\"time-slot\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n _renderSlot(_ctx.$slots, \"header\"),\n (!_unref(hideContent))\n ? _renderSlot(_ctx.$slots, \"default\", { key: 0 })\n : _createCommentVNode(\"\", true),\n _renderSlot(_ctx.$slots, \"footer\")\n ])\n ]))\n : (_openBlock(), _createBlock(RejectedResult, {\n key: 1,\n class: \"psc-px-4\"\n }, {\n \"body-append\": _withCtx(() => [\n _createVNode(CallUsFilledButton, { class: \"psc-mt-6\" })\n ]),\n _: 1\n }))\n ], 64))\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_sfc_main","_defineComponent","__props","emit","props","TakeSurvey","defineAsyncComponent","healthSummaryItems","hideContent","isViewable","visible","useTestResult","toRef","surveyConfig","useSurveyConfig","doctorNoteSurveyContext","computed","buildTestResultSurveyContext","testSurveySlug","getSurveySlug","testSurveyContext","hasDoctorNoteDetail","isSurveyEnabled","isSurveyEnabledForTestResult","slots","useSlots","showBookAppointmentBox","isTeledocSurveyVisible","isTeledocSurveyEnabled","_ctx","_cache","_openBlock","_createElementBlock","_createBlock","TestResultDetailSkeleton","_Fragment","_unref","_createElementVNode","PatientName","_createCommentVNode","_createVNode","ResultReadyV2","TestResultSection","_withCtx","HealthSummary","$event","ResultInsightCards","_createSlots","_renderSlot","BookAppointment","DoctorNote","DoctorNoteDetail","UpcomingAppointment","RejectedResult","CallUsFilledButton"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("vue"),r=require("./BookAppointment.vue.js"),c=require("./ResultReport.vue.js"),l=e.defineComponent({__name:"ResultInsightCards",props:{showBookAppointment:{type:Boolean,default:!1}},emits:["click:report","click:book"],setup(s,{emit:p}){const t=s;return(i,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["psc-mb-4 psc-grid psc-w-full psc-gap-2 psc-px-4",t.showBookAppointment?"psc-grid-cols-2":"psc-grid-cols-1"])},[e.createVNode(c,{tile:t.showBookAppointment,"onClick:report":o[0]||(o[0]=n=>p("click:report"))},null,8,["tile"]),t.showBookAppointment?(e.openBlock(),e.createBlock(r,{key:0,compact:"","onClick:book":o[1]||(o[1]=n=>p("click:book"))})):e.createCommentVNode("",!0)],2))}});module.exports=l;
1
+ "use strict";const e=require("vue"),r=require("./ResultReport.vue.js"),p=e.defineComponent({__name:"ResultInsightCards",emits:["click:report"],setup(n,{emit:s}){return(t,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["psc-mb-4 psc-grid psc-w-full psc-gap-2 psc-px-4",t.$slots["book-appointment-box"]?"psc-grid-cols-2":"psc-grid-cols-1"])},[e.createVNode(r,{tile:!!t.$slots["book-appointment-box"],"onClick:report":o[0]||(o[0]=l=>s("click:report"))},null,8,["tile"]),e.renderSlot(t.$slots,"book-appointment-box")],2))}});module.exports=p;
2
2
  //# sourceMappingURL=ResultInsightCards.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResultInsightCards.vue.js","sources":["../../../../../src/components/TestResult/Shared/ResultInsightCards.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, normalizeClass as _normalizeClass, createElementBlock as _createElementBlock } from \"vue\"\n\nimport BookAppointment from './BookAppointment.vue';\nimport ResultReport from './ResultReport.vue';\n\n/**\n * Props\n */\nexport interface Props {\n // Show \"Giải thích kết quả\" next to \"Báo cáo kết quả\"\n showBookAppointment?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ResultInsightCards',\n props: {\n showBookAppointment: { type: Boolean, default: false }\n },\n emits: ['click:report', 'click:book'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { showBookAppointment: boolean };\n\n\n\n/**\n * Events\n */\n\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"psc-mb-4 psc-grid psc-w-full psc-gap-2 psc-px-4\", props.showBookAppointment ? 'psc-grid-cols-2' : 'psc-grid-cols-1'])\n }, [\n _createVNode(ResultReport, {\n tile: props.showBookAppointment,\n \"onClick:report\": _cache[0] || (_cache[0] = ($event: any) => (emit('click:report')))\n }, null, 8, [\"tile\"]),\n (props.showBookAppointment)\n ? (_openBlock(), _createBlock(BookAppointment, {\n key: 0,\n compact: \"\",\n \"onClick:book\": _cache[1] || (_cache[1] = ($event: any) => (emit('click:book')))\n }))\n : _createCommentVNode(\"\", true)\n ], 2))\n}\n}\n\n})"],"names":["_sfc_main","_defineComponent","__props","emit","props","_ctx","_cache","_openBlock","_createElementBlock","_normalizeClass","_createVNode","ResultReport","$event","_createBlock","BookAppointment","_createCommentVNode"],"mappings":"6GAc4BA,EAAiBC,kBAAA,CAC3C,OAAQ,qBACR,MAAO,CACL,oBAAqB,CAAE,KAAM,QAAS,QAAS,EAAM,CACvD,EACA,MAAO,CAAC,eAAgB,YAAY,EACpC,MAAMC,EAAc,CAAE,KAAAC,GAAQ,CAEhC,MAAMC,EAAQF,EASP,MAAA,CAACG,EAAUC,KACRC,EAAA,UAAA,EAAcC,EAAA,mBAAoB,MAAO,CAC/C,MAAOC,iBAAgB,CAAC,kDAAmDL,EAAM,oBAAsB,kBAAoB,iBAAiB,CAAC,CAAA,EAC5I,CACDM,EAAAA,YAAaC,EAAc,CACzB,KAAMP,EAAM,oBACZ,iBAAkBE,EAAO,CAAC,IAAMA,EAAO,CAAC,EAAKM,GAAiBT,EAAK,cAAc,EAChF,EAAA,KAAM,EAAG,CAAC,MAAM,CAAC,EACnBC,EAAM,qBACFG,EAAAA,YAAcM,EAAAA,YAAaC,EAAiB,CAC3C,IAAK,EACL,QAAS,GACT,eAAgBR,EAAO,CAAC,IAAMA,EAAO,CAAC,EAAKM,GAAiBT,EAAK,YAAY,EAAA,CAC9E,GACDY,EAAAA,mBAAoB,GAAI,EAAI,GAC/B,CAAC,EAEN,CAEA,CAAC"}
1
+ {"version":3,"file":"ResultInsightCards.vue.js","sources":["../../../../../src/components/TestResult/Shared/ResultInsightCards.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, renderSlot as _renderSlot, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nimport ResultReport from './ResultReport.vue';\n\n/**\n * \"Báo cáo kết quả\" tile, with an optional second cell next to it.\n *\n * Slots\n * - book-appointment-box: the second cell of the grid. Passed → 2 columns and the report\n * shrinks to a tile; not passed → the report alone. What goes in it is decided\n * by the parent (TestResultDetail / TestResultDetailDesktop).\n */\n\n/**\n * Events\n */\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ResultInsightCards',\n emits: ['click:report'],\n setup(__props, { emit }) {\n\n\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"psc-mb-4 psc-grid psc-w-full psc-gap-2 psc-px-4\", \n _ctx.$slots['book-appointment-box'] ? 'psc-grid-cols-2' : 'psc-grid-cols-1'\n ])\n }, [\n _createVNode(ResultReport, {\n tile: !!_ctx.$slots['book-appointment-box'],\n \"onClick:report\": _cache[0] || (_cache[0] = ($event: any) => (emit('click:report')))\n }, null, 8, [\"tile\"]),\n _renderSlot(_ctx.$slots, \"book-appointment-box\")\n ], 2))\n}\n}\n\n})"],"names":["_sfc_main","_defineComponent","__props","emit","_ctx","_cache","_openBlock","_createElementBlock","_normalizeClass","_createVNode","ResultReport","$event","_renderSlot"],"mappings":"uEAkB4BA,EAAiBC,kBAAA,CAC3C,OAAQ,qBACR,MAAO,CAAC,cAAc,EACtB,MAAMC,EAAS,CAAE,KAAAC,GAAQ,CAIpB,MAAA,CAACC,EAAUC,KACRC,EAAA,UAAA,EAAcC,EAAA,mBAAoB,MAAO,CAC/C,MAAOC,EAAAA,eAAgB,CAAC,kDACtBJ,EAAK,OAAO,sBAAsB,EAAI,kBAAoB,iBAAA,CAC3D,CAAA,EACA,CACDK,EAAAA,YAAaC,EAAc,CACzB,KAAM,CAAC,CAACN,EAAK,OAAO,sBAAsB,EAC1C,iBAAkBC,EAAO,CAAC,IAAMA,EAAO,CAAC,EAAKM,GAAiBR,EAAK,cAAc,EAChF,EAAA,KAAM,EAAG,CAAC,MAAM,CAAC,EACpBS,aAAYR,EAAK,OAAQ,sBAAsB,GAC9C,CAAC,EAEN,CAEA,CAAC"}
@@ -1,30 +1,24 @@
1
- import { defineComponent as c, openBlock as p, createElementBlock as r, normalizeClass as l, createVNode as i, createBlock as m, createCommentVNode as k } from "vue";
2
- import a from "./BookAppointment.vue.mjs";
3
- import f from "./ResultReport.vue.mjs";
4
- const _ = /* @__PURE__ */ c({
1
+ import { defineComponent as t, openBlock as p, createElementBlock as r, normalizeClass as l, createVNode as n, renderSlot as i } from "vue";
2
+ import c from "./ResultReport.vue.mjs";
3
+ const b = /* @__PURE__ */ t({
5
4
  __name: "ResultInsightCards",
6
- props: {
7
- showBookAppointment: { type: Boolean, default: !1 }
8
- },
9
- emits: ["click:report", "click:book"],
10
- setup(s, { emit: t }) {
11
- const e = s;
12
- return (d, o) => (p(), r("div", {
13
- class: l(["psc-mb-4 psc-grid psc-w-full psc-gap-2 psc-px-4", e.showBookAppointment ? "psc-grid-cols-2" : "psc-grid-cols-1"])
5
+ emits: ["click:report"],
6
+ setup(m, { emit: s }) {
7
+ return (o, e) => (p(), r("div", {
8
+ class: l([
9
+ "psc-mb-4 psc-grid psc-w-full psc-gap-2 psc-px-4",
10
+ o.$slots["book-appointment-box"] ? "psc-grid-cols-2" : "psc-grid-cols-1"
11
+ ])
14
12
  }, [
15
- i(f, {
16
- tile: e.showBookAppointment,
17
- "onClick:report": o[0] || (o[0] = (n) => t("click:report"))
13
+ n(c, {
14
+ tile: !!o.$slots["book-appointment-box"],
15
+ "onClick:report": e[0] || (e[0] = (a) => s("click:report"))
18
16
  }, null, 8, ["tile"]),
19
- e.showBookAppointment ? (p(), m(a, {
20
- key: 0,
21
- compact: "",
22
- "onClick:book": o[1] || (o[1] = (n) => t("click:book"))
23
- })) : k("", !0)
17
+ i(o.$slots, "book-appointment-box")
24
18
  ], 2));
25
19
  }
26
20
  });
27
21
  export {
28
- _ as default
22
+ b as default
29
23
  };
30
24
  //# sourceMappingURL=ResultInsightCards.vue.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResultInsightCards.vue.mjs","sources":["../../../../../src/components/TestResult/Shared/ResultInsightCards.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, normalizeClass as _normalizeClass, createElementBlock as _createElementBlock } from \"vue\"\n\nimport BookAppointment from './BookAppointment.vue';\nimport ResultReport from './ResultReport.vue';\n\n/**\n * Props\n */\nexport interface Props {\n // Show \"Giải thích kết quả\" next to \"Báo cáo kết quả\"\n showBookAppointment?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ResultInsightCards',\n props: {\n showBookAppointment: { type: Boolean, default: false }\n },\n emits: ['click:report', 'click:book'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { showBookAppointment: boolean };\n\n\n\n/**\n * Events\n */\n\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"psc-mb-4 psc-grid psc-w-full psc-gap-2 psc-px-4\", props.showBookAppointment ? 'psc-grid-cols-2' : 'psc-grid-cols-1'])\n }, [\n _createVNode(ResultReport, {\n tile: props.showBookAppointment,\n \"onClick:report\": _cache[0] || (_cache[0] = ($event: any) => (emit('click:report')))\n }, null, 8, [\"tile\"]),\n (props.showBookAppointment)\n ? (_openBlock(), _createBlock(BookAppointment, {\n key: 0,\n compact: \"\",\n \"onClick:book\": _cache[1] || (_cache[1] = ($event: any) => (emit('click:book')))\n }))\n : _createCommentVNode(\"\", true)\n ], 2))\n}\n}\n\n})"],"names":["_sfc_main","_defineComponent","__props","emit","props","_ctx","_cache","_openBlock","_createElementBlock","_normalizeClass","_createVNode","ResultReport","$event","_createBlock","BookAppointment","_createCommentVNode"],"mappings":";;;AAcA,MAA4BA,IAAiBC,gBAAAA,EAAA;AAAA,EAC3C,QAAQ;AAAA,EACR,OAAO;AAAA,IACL,qBAAqB,EAAE,MAAM,SAAS,SAAS,GAAM;AAAA,EACvD;AAAA,EACA,OAAO,CAAC,gBAAgB,YAAY;AAAA,EACpC,MAAMC,GAAc,EAAE,MAAAC,KAAQ;AAEhC,UAAMC,IAAQF;AASP,WAAA,CAACG,GAAUC,OACRC,EAAA,GAAcC,EAAoB,OAAO;AAAA,MAC/C,OAAOC,EAAgB,CAAC,mDAAmDL,EAAM,sBAAsB,oBAAoB,iBAAiB,CAAC;AAAA,IAAA,GAC5I;AAAA,MACDM,EAAaC,GAAc;AAAA,QACzB,MAAMP,EAAM;AAAA,QACZ,kBAAkBE,EAAO,CAAC,MAAMA,EAAO,CAAC,IAAI,CAACM,MAAiBT,EAAK,cAAc;AAAA,MAChF,GAAA,MAAM,GAAG,CAAC,MAAM,CAAC;AAAA,MACnBC,EAAM,uBACFG,KAAcM,EAAaC,GAAiB;AAAA,QAC3C,KAAK;AAAA,QACL,SAAS;AAAA,QACT,gBAAgBR,EAAO,CAAC,MAAMA,EAAO,CAAC,IAAI,CAACM,MAAiBT,EAAK,YAAY;AAAA,MAAA,CAC9E,KACDY,EAAoB,IAAI,EAAI;AAAA,OAC/B,CAAC;AAAA,EAEN;AAEA,CAAC;"}
1
+ {"version":3,"file":"ResultInsightCards.vue.mjs","sources":["../../../../../src/components/TestResult/Shared/ResultInsightCards.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, renderSlot as _renderSlot, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nimport ResultReport from './ResultReport.vue';\n\n/**\n * \"Báo cáo kết quả\" tile, with an optional second cell next to it.\n *\n * Slots\n * - book-appointment-box: the second cell of the grid. Passed → 2 columns and the report\n * shrinks to a tile; not passed → the report alone. What goes in it is decided\n * by the parent (TestResultDetail / TestResultDetailDesktop).\n */\n\n/**\n * Events\n */\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ResultInsightCards',\n emits: ['click:report'],\n setup(__props, { emit }) {\n\n\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"psc-mb-4 psc-grid psc-w-full psc-gap-2 psc-px-4\", \n _ctx.$slots['book-appointment-box'] ? 'psc-grid-cols-2' : 'psc-grid-cols-1'\n ])\n }, [\n _createVNode(ResultReport, {\n tile: !!_ctx.$slots['book-appointment-box'],\n \"onClick:report\": _cache[0] || (_cache[0] = ($event: any) => (emit('click:report')))\n }, null, 8, [\"tile\"]),\n _renderSlot(_ctx.$slots, \"book-appointment-box\")\n ], 2))\n}\n}\n\n})"],"names":["_sfc_main","_defineComponent","__props","emit","_ctx","_cache","_openBlock","_createElementBlock","_normalizeClass","_createVNode","ResultReport","$event","_renderSlot"],"mappings":";;AAkBA,MAA4BA,IAAiBC,gBAAAA,EAAA;AAAA,EAC3C,QAAQ;AAAA,EACR,OAAO,CAAC,cAAc;AAAA,EACtB,MAAMC,GAAS,EAAE,MAAAC,KAAQ;AAIpB,WAAA,CAACC,GAAUC,OACRC,EAAA,GAAcC,EAAoB,OAAO;AAAA,MAC/C,OAAOC,EAAgB;AAAA,QAAC;AAAA,QACtBJ,EAAK,OAAO,sBAAsB,IAAI,oBAAoB;AAAA,MAAA,CAC3D;AAAA,IAAA,GACA;AAAA,MACDK,EAAaC,GAAc;AAAA,QACzB,MAAM,CAAC,CAACN,EAAK,OAAO,sBAAsB;AAAA,QAC1C,kBAAkBC,EAAO,CAAC,MAAMA,EAAO,CAAC,IAAI,CAACM,MAAiBR,EAAK,cAAc;AAAA,MAChF,GAAA,MAAM,GAAG,CAAC,MAAM,CAAC;AAAA,MACpBS,EAAYR,EAAK,QAAQ,sBAAsB;AAAA,OAC9C,CAAC;AAAA,EAEN;AAEA,CAAC;"}
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t={and:"và",gender:"Giới tính",male:"Nam",female:"Nữ",confirm:"Xác nhận",test_result_my_profile:"Hồ sơ của tôi",test_result_if_you_wish_to_edit_your_profile:'Nếu cần thay đổi thông tin cá nhân, bạn vui lòng <a href="tel:1900 1717" class="contact-support">liên hệ hỗ trợ</a>',test_result_test_more_for_better_health:"Để thấu hiểu và duy trì sức khoẻ",test_result_book_general_screening_panel_now:"Đặt hẹn Gói Xét Nghiệm Tổng Quát ngay",test_result_status_not_ready:"Chưa có kết quả",test_result_status_couldnt_process:"Mẫu không thể xử lý",test_result_status_ready:"Sẵn sàng",test_result_status_partially_ready:"Sẵn sàng một phần",test_result_order:"Chỉ định",test_result_all_results:"Tất cả kết quả",test_result_load_older_results:"Xem các kết quả cũ hơn",test_result_all_results_loaded:"Đã hiển thị tất cả kết quả",test_result_hi:"Xin chào,",test_result_your_result_ready:"Bạn đã có kết quả xét nghiệm",test_result_result_partial_completed:"Xét nghiệm của bạn đã hoàn thành một phần",test_result_your_result_not_ready:"Kết quả của bạn chưa hoàn tất",test_result_sample_collected:"Lấy mẫu:",test_result_result_ready:"Có kết quả:",test_result_sample_collected_on:"Mẫu đã được lấy vào ngày",test_result_result_released_on:"và có kết quả xét nghiệm vào ngày",test_result_check_other_results:"Xem các kết quả khác",call_us:"Liên hệ Diag",test_result_time_support:"Từ 06:00 - 21:00",test_result_sample_could_not_processed:"Không thể xử lý mẫu bạn đã gửi.",test_result_contact_support:"Xin liên hệ bộ phận CSKH của chúng tôi để được hỗ trợ thêm",test_result_being_prepared:"Mẫu của bạn đang được xét nghiệm.",test_result_note:"Tư vấn từ bác sĩ",doctor_note_detail_show_more:"Xem thêm",doctor_note_detail_show_less:"Thu gọn",doctor_note_detail_title:"Bạn có ghi chú từ bác sĩ",doctor_note_detail_conclusion:"Kết luận từ kết quả xét nghiệm (tình trạng phát hiện)",doctor_note_detail_diet:"Chế độ ăn",doctor_note_detail_lifestyle:"Chế độ sinh hoạt",doctor_note_detail_physical_activity:"Vận động thể chất",doctor_note_detail_follow_up_plans:"Kế hoạch theo dõi",doctor_note_detail_next_appointment_date:"Ngày hẹn tái khám tiếp theo",doctor_note_detail_vaccination_treatment:"Tiêm chủng & điều trị",doctor_note_detail_appointment_bookings:"Mã đặt chỗ & Hẹn tái khám",doctor_note_detail_booking_now:"Làm ngay",doctor_note_detail_booking_overdue:"Quá hạn",test_result_measured_in:"đơn vị tính là",test_result_critical:"Nguy hiểm",test_result_high:"Cao",test_result_low:"Thấp",test_result_normal:"Bình thường",test_result_about:"Ý nghĩa của",test_result_all_bookings:"Tất cả lịch hẹn",test_result_more_bookings:"Lịch hẹn khác",test_result_no_booking_found:"Không có lịch hẹn nào",test_result_message_no_booking_yet:"Bạn chưa tạo lịch hẹn xét nghiệm nào",test_result_support:"Hỗ trợ",test_result_find_nearest_diag_branch:"Tìm chi nhánh gần nhất",test_result_no_results_found:"Chưa có kết quả nào",test_result_book_to_show_result:"Đặt hẹn xét nghiệm ngay để xem kết quả",test_result_doctor_appointment:"Liên hệ Diag",test_result_contact_for_explanation:"Liên hệ DIAG nếu cần hiểu rõ hơn kết quả xét nghiệm của bạn",test_result_report:"Báo cáo kết quả",test_result_new:"Beta",test_result_report_description:"Tóm tắt kết quả xét nghiệm dễ hiểu, cá nhân hoá",test_result_free:"Miễn phí",test_result_step_ordered:"Đã tạo hồ sơ",test_result_step_sample_collected:"Đã lấy mẫu",test_result_step_in_progress:"Phòng xét nghiệm đang xử lý",test_result_step_partially_approved:"Đã hoàn thành một phần",test_result_step_approved:"Đã hoàn thành",test_result_current_status:"Trạng thái hiện tại",test_result_view_detail:"Xem chi tiết",test_result_collapse:"Thu gọn",test_result_more_about_your_results:"Hiểu rõ hơn về kết quả của bạn",test_result_choose_time:"Đặt cuộc hẹn",test_result_book_appointment:"Đặt hẹn nhận cuộc gọi",test_result_call_support:"Liên hệ hỗ trợ",test_result_take_survey_description:"Trả lời vài câu hỏi để chúng tôi hỗ trợ bạn tốt hơn",test_result_take_survey_button:"Đánh giá trải nghiệm",test_result_take_survey_error:"Không mở được khảo sát. Vui lòng thử lại sau.",test_result_take_teledoc_survey_button:"Đánh giá tư vấn",test_result_successfully_booked:"Đặt hẹn thành công",test_result_have_an_appointment_with_doctor:"Bạn có lịch hẹn với bác sĩ của Diag vào ngày {date}.",test_result_book_appointment_error_title:"Đã có lỗi xảy ra...",test_result_book_appointment_error_description:"Bạn vui lòng thử lại hoặc liên hệ Diag qua hotline 19001717 nếu vẫn không thể đặt hẹn thành công.",test_result_upcoming_appointment:"Lịch hẹn sắp tới",test_result_get_started:"Bắt đầu",test_result_book_first_test:"Đặt hẹn xét nghiệm ngay",test_result_booking_account_code:"Mã tài khoản:",test_result_booking_document_type_id_number:"CMND/CCCD:",test_result_booking_document_type_passport_no:"Hộ chiếu:",test_result_booking_patient:"Bệnh nhân",test_result_booking_doctor:"Bác sĩ",test_result_booking_booking_number:"Mã đặt chỗ của bạn",test_result_booking_results_will_be_there:"Xem kết quả tại đây khi hoàn tất...",test_result_booking_booking_canceled:"Lịch hẹn của bạn đã huỷ",test_result_booking_next_step:"Bước tiếp theo",test_result_booking_diag_contact_you_and_check:"Diag sẽ liên hệ để sắp xếp lịch hẹn phù hợp với thời gian của bạn.",test_result_booking_find_location_center:"Tìm chi nhánh Diag",test_result_booking_view_results:"Xem kết quả của tôi",test_result_booking_test_results:"Kết quả xét nghiệm",test_result_booking_need_collect_sample:"Y tá cần lấy mẫu của bạn.",test_result_booking_processing_sample:"Chúng tôi đang xử lý mẫu của bạn.",test_result_booking_fully_ready:"Kết quả xét nghiệm của bạn đã hoàn tất.",test_result_booking_booking_details:"Chi tiết lịch hẹn",test_result_booking_payment_status_pay_later:"Thanh toán sau",test_result_booking_payment_status_paid_online:"Đã thanh toán",test_result_booking_payment_status_paid:"Đã thanh toán",test_result_booking_payment_status_refund_in_progress:"Đang hoàn tiền",test_result_booking_payment_status_refunded:"Đã hoàn tiền",test_result_booking_payment_status_canceled:"Đã huỷ",test_result_booking_booking_status_created:"Đã tạo",test_result_booking_booking_status_in_progress:"Đang xử lý mẫu",test_result_booking_booking_status_completed:"Hoàn tất",test_result_booking_booking_status_canceled:"Đã huỷ",test_result_booking_total_payment:"Tổng thanh toán",test_result_booking_note:"Ghi chú",test_result_booking_support_zalo:"Zalo:",test_result_booking_support_hotline:"Hotline:",test_result_booking_support_email:"Email:",test_result_booking_sample_collection:"Lấy mẫu",test_result_booking_testing_location:"Địa điểm xét nghiệm",test_result_booking_address:"Địa chỉ",test_result_booking_expected_date:"Ngày dự kiến",test_result_booking_tests:"Xét nghiệm",test_result_booking_packages:"Gói xét nghiệm",test_result_booking_imaging_services:"Chẩn đoán hình ảnh",test_result_booking_attachment:"Tệp đính kèm",date_time:{day_parts:{morning:"Sáng",afternoon:"Chiều",evening:"Tối"}},test_result_health_summary:"Tóm tắt sức khoẻ sơ bộ",test_result_have_questions:"Đặt cuộc gọi tư vấn",test_result_appointment_date:"{time} ngày {date}",test_result_come_to_diag_to_get_tested:"Hãy đến Diag để xét nghiệm",test_result_locate_this_center:"Tìm địa điểm này",test_result_show_all_locations:"Xem tất cả các địa điểm",test_result_booking_number:"Mã đặt chỗ của bạn",test_result_total_price:"Tổng thanh toán",test_result_add_remove_test_message:"Nếu bạn muốn thêm hoặc bớt xét nghiệm, vui lòng liên hệ với lễ tân của chúng tôi.",test_result_additional_tests:"Các xét nghiệm bổ sung",test_result_recommended_tests:"Các xét nghiệm khuyến nghị",test_result_count_day:"{count} ngày",test_result_count_month:"{count} tháng",test_result_count_days:"{count} ngày",test_result_count_months:"{count} tháng",test_result_remind_message_title:"Đã đến lúc xét nghiệm lại!",test_result_remind_message_content:"Đã {count} kể từ lúc bạn kiểm tra lần cuối",test_result_recommend_message_title:"Bạn nên xét nghiệm thêm những xét nghiệm này",test_result_recommend_message_content:"Dựa và những lần kiểm tra gần đây, bạn được khuyến nghị kiểm tra thêm những xét nghiệm này.",test_result_followup_title:"Lịch theo dõi sức khỏe của bạn",test_result_followup_subtitle:"Bạn có lịch hẹn theo dõi sức khỏe ngày {date} với Diag. Mã đặt chỗ của bạn là {code}.",test_result_recommend_title:"Theo dõi thêm từ kết quả của bạn",test_result_recommend_subtitle:"Diag khuyến nghị xét nghiệm theo dõi dựa trên kết quả xét nghiệm của bạn. Mã đặt chỗ của bạn là {code}.",test_result_recommend_subtitle_no_code:"Diag khuyến nghị xét nghiệm theo dõi dựa trên kết quả xét nghiệm của bạn.",test_result_followup_context_remind:`Cảm ơn bạn đã lựa chọn Diag! Sức khỏe của bạn luôn là ưu tiên hàng đầu của chúng tôi.
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t={and:"và",gender:"Giới tính",male:"Nam",female:"Nữ",confirm:"Xác nhận",test_result_my_profile:"Hồ sơ của tôi",test_result_if_you_wish_to_edit_your_profile:'Nếu cần thay đổi thông tin cá nhân, bạn vui lòng <a href="tel:1900 1717" class="contact-support">liên hệ hỗ trợ</a>',test_result_test_more_for_better_health:"Để thấu hiểu và duy trì sức khoẻ",test_result_book_general_screening_panel_now:"Đặt hẹn Gói Xét Nghiệm Tổng Quát ngay",test_result_status_not_ready:"Chưa có kết quả",test_result_status_couldnt_process:"Mẫu không thể xử lý",test_result_status_ready:"Sẵn sàng",test_result_status_partially_ready:"Sẵn sàng một phần",test_result_order:"Chỉ định",test_result_all_results:"Tất cả kết quả",test_result_load_older_results:"Xem các kết quả cũ hơn",test_result_all_results_loaded:"Đã hiển thị tất cả kết quả",test_result_hi:"Xin chào,",test_result_your_result_ready:"Bạn đã có kết quả xét nghiệm",test_result_result_partial_completed:"Xét nghiệm của bạn đã hoàn thành một phần",test_result_your_result_not_ready:"Kết quả của bạn chưa hoàn tất",test_result_sample_collected:"Lấy mẫu:",test_result_result_ready:"Có kết quả:",test_result_sample_collected_on:"Mẫu đã được lấy vào ngày",test_result_result_released_on:"và có kết quả xét nghiệm vào ngày",test_result_check_other_results:"Xem các kết quả khác",call_us:"Liên hệ Diag",test_result_time_support:"Từ 06:00 - 21:00",test_result_sample_could_not_processed:"Không thể xử lý mẫu bạn đã gửi.",test_result_contact_support:"Xin liên hệ bộ phận CSKH của chúng tôi để được hỗ trợ thêm",test_result_being_prepared:"Mẫu của bạn đang được xét nghiệm.",test_result_note:"Tư vấn từ bác sĩ",doctor_note_detail_show_more:"Xem thêm",doctor_note_detail_show_less:"Thu gọn",doctor_note_detail_title:"Bạn có ghi chú từ bác sĩ",doctor_note_detail_conclusion:"Kết luận từ kết quả xét nghiệm (tình trạng phát hiện)",doctor_note_detail_diet:"Chế độ ăn",doctor_note_detail_lifestyle:"Chế độ sinh hoạt",doctor_note_detail_physical_activity:"Vận động thể chất",doctor_note_detail_follow_up_plans:"Kế hoạch theo dõi",doctor_note_detail_next_appointment_date:"Ngày hẹn tái khám tiếp theo",doctor_note_detail_vaccination_treatment:"Tiêm chủng & điều trị",doctor_note_detail_appointment_bookings:"Mã đặt chỗ & Hẹn tái khám",doctor_note_detail_booking_now:"Làm ngay",doctor_note_detail_booking_overdue:"Quá hạn",test_result_measured_in:"đơn vị tính là",test_result_critical:"Nguy hiểm",test_result_high:"Cao",test_result_low:"Thấp",test_result_normal:"Bình thường",test_result_about:"Ý nghĩa của",test_result_all_bookings:"Tất cả lịch hẹn",test_result_more_bookings:"Lịch hẹn khác",test_result_no_booking_found:"Không có lịch hẹn nào",test_result_message_no_booking_yet:"Bạn chưa tạo lịch hẹn xét nghiệm nào",test_result_support:"Hỗ trợ",test_result_find_nearest_diag_branch:"Tìm chi nhánh gần nhất",test_result_no_results_found:"Chưa có kết quả nào",test_result_book_to_show_result:"Đặt hẹn xét nghiệm ngay để xem kết quả",test_result_doctor_appointment:"Liên hệ Diag",test_result_contact_for_explanation:"Liên hệ DIAG nếu cần hiểu rõ hơn kết quả xét nghiệm của bạn",test_result_report:"Báo cáo thông minh",test_result_new:"Beta",test_result_report_description:"Tóm tắt kết quả xét nghiệm dễ hiểu, cá nhân hoá",test_result_free:"Miễn phí",test_result_step_ordered:"Đã tạo hồ sơ",test_result_step_sample_collected:"Đã lấy mẫu",test_result_step_in_progress:"Phòng xét nghiệm đang xử lý",test_result_step_partially_approved:"Đã hoàn thành một phần",test_result_step_approved:"Đã hoàn thành",test_result_current_status:"Trạng thái hiện tại",test_result_view_detail:"Xem chi tiết",test_result_collapse:"Thu gọn",test_result_more_about_your_results:"Hiểu rõ hơn về kết quả của bạn",test_result_choose_time:"Đặt cuộc hẹn",test_result_book_appointment:"Đặt hẹn nhận cuộc gọi",test_result_call_support:"Liên hệ hỗ trợ",test_result_take_survey_description:"Trả lời vài câu hỏi để chúng tôi hỗ trợ bạn tốt hơn",test_result_take_survey_button:"Đánh giá trải nghiệm",test_result_take_survey_error:"Không mở được khảo sát. Vui lòng thử lại sau.",test_result_take_teledoc_survey_button:"Đánh giá tư vấn",test_result_successfully_booked:"Đặt hẹn thành công",test_result_have_an_appointment_with_doctor:"Bạn có lịch hẹn với bác sĩ của Diag vào ngày {date}.",test_result_book_appointment_error_title:"Đã có lỗi xảy ra...",test_result_book_appointment_error_description:"Bạn vui lòng thử lại hoặc liên hệ Diag qua hotline 19001717 nếu vẫn không thể đặt hẹn thành công.",test_result_upcoming_appointment:"Lịch hẹn sắp tới",test_result_get_started:"Bắt đầu",test_result_book_first_test:"Đặt hẹn xét nghiệm ngay",test_result_booking_account_code:"Mã tài khoản:",test_result_booking_document_type_id_number:"CMND/CCCD:",test_result_booking_document_type_passport_no:"Hộ chiếu:",test_result_booking_patient:"Bệnh nhân",test_result_booking_doctor:"Bác sĩ",test_result_booking_booking_number:"Mã đặt chỗ của bạn",test_result_booking_results_will_be_there:"Xem kết quả tại đây khi hoàn tất...",test_result_booking_booking_canceled:"Lịch hẹn của bạn đã huỷ",test_result_booking_next_step:"Bước tiếp theo",test_result_booking_diag_contact_you_and_check:"Diag sẽ liên hệ để sắp xếp lịch hẹn phù hợp với thời gian của bạn.",test_result_booking_find_location_center:"Tìm chi nhánh Diag",test_result_booking_view_results:"Xem kết quả của tôi",test_result_booking_test_results:"Kết quả xét nghiệm",test_result_booking_need_collect_sample:"Y tá cần lấy mẫu của bạn.",test_result_booking_processing_sample:"Chúng tôi đang xử lý mẫu của bạn.",test_result_booking_fully_ready:"Kết quả xét nghiệm của bạn đã hoàn tất.",test_result_booking_booking_details:"Chi tiết lịch hẹn",test_result_booking_payment_status_pay_later:"Thanh toán sau",test_result_booking_payment_status_paid_online:"Đã thanh toán",test_result_booking_payment_status_paid:"Đã thanh toán",test_result_booking_payment_status_refund_in_progress:"Đang hoàn tiền",test_result_booking_payment_status_refunded:"Đã hoàn tiền",test_result_booking_payment_status_canceled:"Đã huỷ",test_result_booking_booking_status_created:"Đã tạo",test_result_booking_booking_status_in_progress:"Đang xử lý mẫu",test_result_booking_booking_status_completed:"Hoàn tất",test_result_booking_booking_status_canceled:"Đã huỷ",test_result_booking_total_payment:"Tổng thanh toán",test_result_booking_note:"Ghi chú",test_result_booking_support_zalo:"Zalo:",test_result_booking_support_hotline:"Hotline:",test_result_booking_support_email:"Email:",test_result_booking_sample_collection:"Lấy mẫu",test_result_booking_testing_location:"Địa điểm xét nghiệm",test_result_booking_address:"Địa chỉ",test_result_booking_expected_date:"Ngày dự kiến",test_result_booking_tests:"Xét nghiệm",test_result_booking_packages:"Gói xét nghiệm",test_result_booking_imaging_services:"Chẩn đoán hình ảnh",test_result_booking_attachment:"Tệp đính kèm",date_time:{day_parts:{morning:"Sáng",afternoon:"Chiều",evening:"Tối"}},test_result_health_summary:"Tóm tắt sức khoẻ sơ bộ",test_result_have_questions:"Đặt cuộc gọi tư vấn",test_result_appointment_date:"{time} ngày {date}",test_result_come_to_diag_to_get_tested:"Hãy đến Diag để xét nghiệm",test_result_locate_this_center:"Tìm địa điểm này",test_result_show_all_locations:"Xem tất cả các địa điểm",test_result_booking_number:"Mã đặt chỗ của bạn",test_result_total_price:"Tổng thanh toán",test_result_add_remove_test_message:"Nếu bạn muốn thêm hoặc bớt xét nghiệm, vui lòng liên hệ với lễ tân của chúng tôi.",test_result_additional_tests:"Các xét nghiệm bổ sung",test_result_recommended_tests:"Các xét nghiệm khuyến nghị",test_result_count_day:"{count} ngày",test_result_count_month:"{count} tháng",test_result_count_days:"{count} ngày",test_result_count_months:"{count} tháng",test_result_remind_message_title:"Đã đến lúc xét nghiệm lại!",test_result_remind_message_content:"Đã {count} kể từ lúc bạn kiểm tra lần cuối",test_result_recommend_message_title:"Bạn nên xét nghiệm thêm những xét nghiệm này",test_result_recommend_message_content:"Dựa và những lần kiểm tra gần đây, bạn được khuyến nghị kiểm tra thêm những xét nghiệm này.",test_result_followup_title:"Lịch theo dõi sức khỏe của bạn",test_result_followup_subtitle:"Bạn có lịch hẹn theo dõi sức khỏe ngày {date} với Diag. Mã đặt chỗ của bạn là {code}.",test_result_recommend_title:"Theo dõi thêm từ kết quả của bạn",test_result_recommend_subtitle:"Diag khuyến nghị xét nghiệm theo dõi dựa trên kết quả xét nghiệm của bạn. Mã đặt chỗ của bạn là {code}.",test_result_recommend_subtitle_no_code:"Diag khuyến nghị xét nghiệm theo dõi dựa trên kết quả xét nghiệm của bạn.",test_result_followup_context_remind:`Cảm ơn bạn đã lựa chọn Diag! Sức khỏe của bạn luôn là ưu tiên hàng đầu của chúng tôi.
2
2
 
3
3
  Từ kết quả xét nghiệm ngày {last_visit_date} (mã hồ sơ: {customer_code}), bác sĩ khuyến nghị bạn thực hiện các xét nghiệm theo dõi dưới đây để đảm bảo việc theo dõi và quản lý sức khỏe hiệu quả hơn.`,test_result_followup_context_recommend:`Cảm ơn bạn đã lựa chọn Diag! Sức khỏe của bạn luôn là ưu tiên hàng đầu của chúng tôi.
4
4
 
@@ -60,7 +60,7 @@ const t = {
60
60
  test_result_book_to_show_result: "Đặt hẹn xét nghiệm ngay để xem kết quả",
61
61
  test_result_doctor_appointment: "Liên hệ Diag",
62
62
  test_result_contact_for_explanation: "Liên hệ DIAG nếu cần hiểu rõ hơn kết quả xét nghiệm của bạn",
63
- test_result_report: "Báo cáo kết quả",
63
+ test_result_report: "Báo cáo thông minh",
64
64
  test_result_new: "Beta",
65
65
  test_result_report_description: "Tóm tắt kết quả xét nghiệm dễ hiểu, cá nhân hoá",
66
66
  test_result_free: "Miễn phí",