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,2 +1,2 @@
1
- "use strict";const e=require("vue"),g=require("../../../composables/TestResult.js"),C=require("../../Shared/PatientName.vue.js"),S=require("../Shared/ResultReadyV2.vue.js"),b=require("../Shared/RejectedResult.vue.js"),N=require("../Shared/BookAppointment.vue.js"),x=require("../Shared/ResultInsightCards.vue.js"),V=require("../HealthSummary/HealthSummary.vue.js"),n=require("../Shared/TestResultSection.vue.js"),w=require("../Shared/CallUsFilledButton.vue.js"),q=require("../Shared/DoctorNote.vue.js"),T=require("../Shared/DoctorNoteDetail.vue.js"),D=require("../Shared/UpcomingAppointment.vue.js"),E=require("../Shared/TestResultDetailSkeleton/TestResultDetailDesktopSkeleton.vue.js"),r=require("../../../helpers/SurveyHelper.js"),$=require("../../../composables/useSurveyConfig.js"),A=s=>Object.freeze(Object.defineProperty({__proto__:null,default:s},Symbol.toStringTag,{value:"Module"})),P={key:0,class:"psc-flex psc-items-start"},F={class:"-psc-ml-4 psc-mr-16 psc-w-[480px] psc-shrink-0 psc-grow-0"},I={class:"psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto"},j={class:"psc-min-w-0 psc-flex-1"},O={class:"psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto"},H=e.defineComponent({__name:"TestResultDetailDesktop",props:{testResult:null,loading:{type:Boolean},hidePatientInfo:{type:Boolean,default:!1},hideSummary:{type:Boolean,default:!1},enableBookingFeature:{type:Boolean,default:!1},timeline:{default:void 0},listActionEvent:{default:void 0},showResultReport:{type:Boolean,default:!1}},emits:["click:book-appointment","click:appointment-booking","click:result-report"],setup(s,{emit:u}){const t=s,d=e.defineAsyncComponent(()=>Promise.resolve().then(()=>A(require("../Shared/TakeSurvey.vue2.js")))),{healthSummaryItems:_,hideContent:m,isViewable:k,visible:c}=g.useTestResult({testResult:e.toRef(t,"testResult"),hidePatientInfo:e.toRef(t,"hidePatientInfo"),hideSummary:e.toRef(t,"hideSummary")}),{surveyConfig:i}=$.useSurveyConfig(),p=e.ref(!1),v=e.computed(()=>r.buildTestResultSurveyContext(t.testResult,"doctor-note")),y=e.computed(()=>r.getSurveySlug(t.testResult.collection_channel,t.testResult.is_free_consultant,i.value)),f=e.computed(()=>r.buildTestResultSurveyContext(t.testResult)),R=e.computed(()=>!!t.testResult.doctor_note_detail&&t.testResult.doctor_note_detail.length>0),B=e.computed(()=>r.isSurveyEnabledForTestResult(t.testResult.nps_test_result,t.testResult.collection_channel,t.testResult.is_free_consultant,i.value)),h=e.computed(()=>r.isTeledocSurveyEnabled(t.testResult.nps_doctor_consult,i.value));return(l,o)=>t.loading?(e.openBlock(),e.createBlock(E,{key:0})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.unref(k)?(e.openBlock(),e.createElementBlock("div",P,[e.createElementVNode("div",F,[e.createElementVNode("div",I,[e.unref(c).patientName?(e.openBlock(),e.createBlock(C,{key:0,"first-name":t.testResult.first_name,class:"psc-px-4 psc-pb-2"},null,8,["first-name"])):e.createCommentVNode("",!0),e.createVNode(S,{"test-result":t.testResult,timeline:t.timeline,"list-action-event":t.listActionEvent,class:"psc-px-4 psc-pb-4"},null,8,["test-result","timeline","list-action-event"]),e.unref(c).healthSummary?(e.openBlock(),e.createBlock(n,{key:1},{default:e.withCtx(()=>[e.createVNode(V,{items:e.unref(_)},null,8,["items"])]),_:1})):e.createCommentVNode("",!0),t.showResultReport?(e.openBlock(),e.createBlock(x,{key:2,"show-book-appointment":s.testResult.is_free_consultant,"onClick:report":o[0]||(o[0]=a=>u("click:result-report")),"onClick:book":o[1]||(o[1]=a=>u("click:book-appointment"))},null,8,["show-book-appointment"])):s.testResult.is_free_consultant?(e.openBlock(),e.createBlock(n,{key:3},{default:e.withCtx(()=>[e.createVNode(N,{"onClick:book":o[2]||(o[2]=()=>{p.value=!0,u("click:book-appointment")})},e.createSlots({_:2},[s.enableBookingFeature&&p.value?{name:"content",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"book-appointment")]),key:"0"}:void 0]),1024)]),_:3})):e.createCommentVNode("",!0),e.unref(c).doctorNote?(e.openBlock(),e.createBlock(n,{key:4},{default:e.withCtx(()=>[e.createVNode(q,{"doctor-note":t.testResult.doctor_note},null,8,["doctor-note"])]),_:1})):e.createCommentVNode("",!0),e.unref(R)?(e.openBlock(),e.createBlock(n,{key:5},{default:e.withCtx(()=>[e.createVNode(T,{"doctor-note-detail":s.testResult.doctor_note_detail,"survey-context":e.unref(h)?e.unref(v):void 0,"onClick:appointmentBooking":o[3]||(o[3]=a=>u("click:appointment-booking",a))},null,8,["doctor-note-detail","survey-context"])]),_:1})):e.createCommentVNode("",!0),e.unref(B)?(e.openBlock(),e.createBlock(n,{key:6},{default:e.withCtx(()=>[e.createVNode(e.unref(d),{variant:"bar","survey-slug":e.unref(y),context:e.unref(f),text:l.$t("psc.test_result_take_survey_button")},null,8,["survey-slug","context","text"])]),_:1})):e.createCommentVNode("",!0),e.unref(c).upcomingAppointment?(e.openBlock(),e.createBlock(n,{key:7},{default:e.withCtx(()=>[e.createVNode(D,{"time-slot":t.testResult.consult_time},null,8,["time-slot"])]),_:1})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",j,[e.createElementVNode("div",O,[e.renderSlot(l.$slots,"header"),e.unref(m)?e.createCommentVNode("",!0):e.renderSlot(l.$slots,"default",{key:0}),e.renderSlot(l.$slots,"footer")])])])):(e.openBlock(),e.createBlock(b,{key:1,class:"psc-px-4"},{"body-append":e.withCtx(()=>[e.createVNode(w,{class:"psc-mt-6"})]),_:1}))],64))}});module.exports=H;
1
+ "use strict";const e=require("vue"),g=require("../../../composables/TestResult.js"),x=require("../../Shared/PatientName.vue.js"),N=require("../Shared/ResultReadyV2.vue.js"),V=require("../Shared/RejectedResult.vue.js"),_=require("../Shared/BookAppointment.vue.js"),w=require("../Shared/ResultInsightCards.vue.js"),q=require("../HealthSummary/HealthSummary.vue.js"),n=require("../Shared/TestResultSection.vue.js"),T=require("../Shared/CallUsFilledButton.vue.js"),D=require("../Shared/DoctorNote.vue.js"),E=require("../Shared/DoctorNoteDetail.vue.js"),$=require("../Shared/UpcomingAppointment.vue.js"),A=require("../Shared/TestResultDetailSkeleton/TestResultDetailDesktopSkeleton.vue.js"),r=require("../../../helpers/SurveyHelper.js"),P=require("../../../composables/useSurveyConfig.js"),F=l=>Object.freeze(Object.defineProperty({__proto__:null,default:l},Symbol.toStringTag,{value:"Module"})),I={key:0,class:"psc-flex psc-items-start"},j={class:"-psc-ml-4 psc-mr-16 psc-w-[480px] psc-shrink-0 psc-grow-0"},O={class:"psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto"},H={class:"psc-min-w-0 psc-flex-1"},U={class:"psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto"},z=e.defineComponent({__name:"TestResultDetailDesktop",props:{testResult:null,loading:{type:Boolean},hidePatientInfo:{type:Boolean,default:!1},hideSummary:{type:Boolean,default:!1},enableBookingFeature:{type:Boolean,default:!1},timeline:{default:void 0},listActionEvent:{default:void 0},showResultReport:{type:Boolean,default:!1}},emits:["click:book-appointment","click:appointment-booking","click:result-report"],setup(l,{emit:u}){const t=l,m=e.defineAsyncComponent(()=>Promise.resolve().then(()=>F(require("../Shared/TakeSurvey.vue2.js")))),{healthSummaryItems:k,hideContent:y,isViewable:v,visible:c}=g.useTestResult({testResult:e.toRef(t,"testResult"),hidePatientInfo:e.toRef(t,"hidePatientInfo"),hideSummary:e.toRef(t,"hideSummary")}),{surveyConfig:i}=P.useSurveyConfig(),p=e.ref(!1),f=e.computed(()=>r.buildTestResultSurveyContext(t.testResult,"doctor-note")),B=e.computed(()=>r.getSurveySlug(t.testResult.collection_channel,t.testResult.is_free_consultant,i.value)),R=e.computed(()=>r.buildTestResultSurveyContext(t.testResult)),b=e.computed(()=>!!t.testResult.doctor_note_detail&&t.testResult.doctor_note_detail.length>0),S=e.computed(()=>r.isSurveyEnabledForTestResult(t.testResult.nps_test_result,t.testResult.collection_channel,t.testResult.is_free_consultant,i.value)),h=e.useSlots(),d=e.computed(()=>!!t.testResult.is_free_consultant||!!h["book-appointment-box"]),C=e.computed(()=>r.isTeledocSurveyEnabled(t.testResult.nps_doctor_consult,i.value));return(o,s)=>t.loading?(e.openBlock(),e.createBlock(A,{key:0})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.unref(v)?(e.openBlock(),e.createElementBlock("div",I,[e.createElementVNode("div",j,[e.createElementVNode("div",O,[e.unref(c).patientName?(e.openBlock(),e.createBlock(x,{key:0,"first-name":t.testResult.first_name,class:"psc-px-4 psc-pb-2"},null,8,["first-name"])):e.createCommentVNode("",!0),e.createVNode(N,{"test-result":t.testResult,timeline:t.timeline,"list-action-event":t.listActionEvent,class:"psc-px-4 psc-pb-4"},null,8,["test-result","timeline","list-action-event"]),e.unref(c).healthSummary?(e.openBlock(),e.createBlock(n,{key:1},{default:e.withCtx(()=>[e.createVNode(q,{items:e.unref(k)},null,8,["items"])]),_:1})):e.createCommentVNode("",!0),t.showResultReport?(e.openBlock(),e.createBlock(w,{key:2,"onClick:report":s[1]||(s[1]=a=>u("click:result-report"))},e.createSlots({_:2},[e.unref(d)?{name:"book-appointment-box",fn:e.withCtx(()=>[o.$slots["book-appointment-box"]?e.renderSlot(o.$slots,"book-appointment-box",{key:0,compact:!0}):(e.openBlock(),e.createBlock(_,{key:1,compact:"","onClick:book":s[0]||(s[0]=a=>u("click:book-appointment"))}))]),key:"0"}:void 0]),1024)):e.unref(d)?(e.openBlock(),e.createBlock(n,{key:3},{default:e.withCtx(()=>[o.$slots["book-appointment-box"]?e.renderSlot(o.$slots,"book-appointment-box",{key:0,compact:!1}):(e.openBlock(),e.createBlock(_,{key:1,"onClick:book":s[2]||(s[2]=()=>{p.value=!0,u("click:book-appointment")})},e.createSlots({_:2},[l.enableBookingFeature&&p.value?{name:"content",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"book-appointment")]),key:"0"}:void 0]),1024))]),_:3})):e.createCommentVNode("",!0),e.unref(c).doctorNote?(e.openBlock(),e.createBlock(n,{key:4},{default:e.withCtx(()=>[e.createVNode(D,{"doctor-note":t.testResult.doctor_note},null,8,["doctor-note"])]),_:1})):e.createCommentVNode("",!0),e.unref(b)?(e.openBlock(),e.createBlock(n,{key:5},{default:e.withCtx(()=>[e.createVNode(E,{"doctor-note-detail":l.testResult.doctor_note_detail,"survey-context":e.unref(C)?e.unref(f):void 0,"onClick:appointmentBooking":s[3]||(s[3]=a=>u("click:appointment-booking",a))},null,8,["doctor-note-detail","survey-context"])]),_:1})):e.createCommentVNode("",!0),e.unref(S)?(e.openBlock(),e.createBlock(n,{key:6},{default:e.withCtx(()=>[e.createVNode(e.unref(m),{variant:"bar","survey-slug":e.unref(B),context:e.unref(R),text:o.$t("psc.test_result_take_survey_button")},null,8,["survey-slug","context","text"])]),_:1})):e.createCommentVNode("",!0),e.unref(c).upcomingAppointment?(e.openBlock(),e.createBlock(n,{key:7},{default:e.withCtx(()=>[e.createVNode($,{"time-slot":t.testResult.consult_time},null,8,["time-slot"])]),_:1})):e.createCommentVNode("",!0)])]),e.createElementVNode("div",H,[e.createElementVNode("div",U,[e.renderSlot(o.$slots,"header"),e.unref(y)?e.createCommentVNode("",!0):e.renderSlot(o.$slots,"default",{key:0}),e.renderSlot(o.$slots,"footer")])])])):(e.openBlock(),e.createBlock(V,{key:1,class:"psc-px-4"},{"body-append":e.withCtx(()=>[e.createVNode(T,{class:"psc-mt-6"})]),_:1}))],64))}});module.exports=z;
2
2
  //# sourceMappingURL=TestResultDetailDesktop.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TestResultDetailDesktop.vue.js","sources":["../../../../../src/components/TestResult/Desktop/TestResultDetailDesktop.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: \"psc-flex psc-items-start\"\n}\nconst _hoisted_2 = { class: \"-psc-ml-4 psc-mr-16 psc-w-[480px] psc-shrink-0 psc-grow-0\" }\nconst _hoisted_3 = { class: \"psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto\" }\nconst _hoisted_4 = { class: \"psc-min-w-0 psc-flex-1\" }\nconst _hoisted_5 = { class: \"psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto\" }\n\nimport { useTestResult } from '@/composables/TestResult';\nimport PatientName from '../../Shared/PatientName.vue';\nimport ResultReadyV2 from '../Shared/ResultReadyV2.vue';\nimport RejectedResult from '../Shared/RejectedResult.vue';\nimport BookAppointment from '../Shared/BookAppointment.vue';\nimport ResultInsightCards from '../Shared/ResultInsightCards.vue';\nimport HealthSummary from '../HealthSummary/HealthSummary.vue';\nimport TestResultSection from '../Shared/TestResultSection.vue';\nimport CallUsFilledButton from '../Shared/CallUsFilledButton.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 { computed, defineAsyncComponent, ref, toRef } from 'vue';\nimport TestResultDetailDesktopSkeleton from '../Shared/TestResultDetailSkeleton/TestResultDetailDesktopSkeleton.vue';\nimport type { TimelineEvent } from '../Shared/ResultReadyV2.vue';\nimport {\n buildTestResultSurveyContext,\n getSurveySlug,\n isSurveyEnabledForTestResult,\n isTeledocSurveyEnabled,\n} from '@/helpers/SurveyHelper';\nimport { useSurveyConfig } from '@/composables/useSurveyConfig';\n\nexport interface Props {\n testResult: TestResult;\n loading: boolean;\n hidePatientInfo?: boolean;\n hideSummary?: boolean;\n enableBookingFeature?: boolean;\n timeline?: TimelineEvent[];\n listActionEvent?: Record<string, string>;\n showResultReport?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'TestResultDetailDesktop',\n props: {\n testResult: null,\n loading: { type: Boolean },\n hidePatientInfo: { type: Boolean, default: false },\n hideSummary: { type: Boolean, default: false },\n enableBookingFeature: { 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, enableBookingFeature: boolean, timeline: TimelineEvent[], listActionEvent: Record<string, string>, showResultReport: boolean };\n\n\n\nconst TakeSurvey = defineAsyncComponent(\n () => import('../Shared/TakeSurvey.vue')\n);\n\n\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 isDisplayBook = ref(false);\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 (props.loading)\n ? (_openBlock(), _createBlock(TestResultDetailDesktopSkeleton, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n (_unref(isViewable))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\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, { items: _unref(healthSummaryItems) }, null, 8, [\"items\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (props.showResultReport)\n ? (_openBlock(), _createBlock(ResultInsightCards, {\n key: 2,\n \"show-book-appointment\": __props.testResult.is_free_consultant,\n \"onClick:report\": _cache[0] || (_cache[0] = ($event: any) => (emit('click:result-report'))),\n \"onClick:book\": _cache[1] || (_cache[1] = ($event: any) => (emit('click:book-appointment')))\n }, null, 8, [\"show-book-appointment\"]))\n : (__props.testResult.is_free_consultant)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 3 }, {\n default: _withCtx(() => [\n _createVNode(BookAppointment, {\n \"onClick:book\": _cache[2] || (_cache[2] = \n () => {\n isDisplayBook.value = true;\n emit('click:book-appointment');\n }\n )\n }, _createSlots({ _: 2 }, [\n (__props.enableBookingFeature && isDisplayBook.value)\n ? {\n name: \"content\",\n fn: _withCtx(() => [\n _renderSlot(_ctx.$slots, \"book-appointment\")\n ]),\n key: \"0\"\n }\n : undefined\n ]), 1024)\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[3] || (_cache[3] = ($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 ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\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 ]))\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})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_sfc_main","_defineComponent","__props","emit","props","TakeSurvey","defineAsyncComponent","_interopNamespaceDefaultOnly","healthSummaryItems","hideContent","isViewable","visible","useTestResult","toRef","surveyConfig","useSurveyConfig","isDisplayBook","ref","doctorNoteSurveyContext","computed","buildTestResultSurveyContext","testSurveySlug","getSurveySlug","testSurveyContext","hasDoctorNoteDetail","isSurveyEnabled","isSurveyEnabledForTestResult","isTeledocSurveyVisible","isTeledocSurveyEnabled","_ctx","_cache","_openBlock","_createBlock","TestResultDetailDesktopSkeleton","_createElementBlock","_Fragment","_unref","_createElementVNode","PatientName","_createCommentVNode","_createVNode","ResultReadyV2","TestResultSection","_withCtx","HealthSummary","ResultInsightCards","$event","BookAppointment","_createSlots","_renderSlot","DoctorNote","DoctorNoteDetail","UpcomingAppointment","RejectedResult","CallUsFilledButton"],"mappings":"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"}
1
+ {"version":3,"file":"TestResultDetailDesktop.vue.js","sources":["../../../../../src/components/TestResult/Desktop/TestResultDetailDesktop.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: \"psc-flex psc-items-start\"\n}\nconst _hoisted_2 = { class: \"-psc-ml-4 psc-mr-16 psc-w-[480px] psc-shrink-0 psc-grow-0\" }\nconst _hoisted_3 = { class: \"psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto\" }\nconst _hoisted_4 = { class: \"psc-min-w-0 psc-flex-1\" }\nconst _hoisted_5 = { class: \"psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto\" }\n\nimport { useTestResult } from '@/composables/TestResult';\nimport PatientName from '../../Shared/PatientName.vue';\nimport ResultReadyV2 from '../Shared/ResultReadyV2.vue';\nimport RejectedResult from '../Shared/RejectedResult.vue';\nimport BookAppointment from '../Shared/BookAppointment.vue';\nimport ResultInsightCards from '../Shared/ResultInsightCards.vue';\nimport HealthSummary from '../HealthSummary/HealthSummary.vue';\nimport TestResultSection from '../Shared/TestResultSection.vue';\nimport CallUsFilledButton from '../Shared/CallUsFilledButton.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 { computed, defineAsyncComponent, ref, toRef, useSlots } from 'vue';\nimport TestResultDetailDesktopSkeleton from '../Shared/TestResultDetailSkeleton/TestResultDetailDesktopSkeleton.vue';\nimport type { TimelineEvent } from '../Shared/ResultReadyV2.vue';\nimport {\n buildTestResultSurveyContext,\n getSurveySlug,\n isSurveyEnabledForTestResult,\n isTeledocSurveyEnabled,\n} from '@/helpers/SurveyHelper';\nimport { useSurveyConfig } from '@/composables/useSurveyConfig';\n\nexport interface Props {\n testResult: TestResult;\n loading: boolean;\n hidePatientInfo?: boolean;\n hideSummary?: boolean;\n enableBookingFeature?: boolean;\n timeline?: TimelineEvent[];\n listActionEvent?: Record<string, string>;\n showResultReport?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'TestResultDetailDesktop',\n props: {\n testResult: null,\n loading: { type: Boolean },\n hidePatientInfo: { type: Boolean, default: false },\n hideSummary: { type: Boolean, default: false },\n enableBookingFeature: { 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, enableBookingFeature: boolean, timeline: TimelineEvent[], listActionEvent: Record<string, string>, showResultReport: boolean };\n\n\n\nconst TakeSurvey = defineAsyncComponent(\n () => import('../Shared/TakeSurvey.vue')\n);\n\n\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 isDisplayBook = ref(false);\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 () => !!props.testResult.is_free_consultant || !!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 (props.loading)\n ? (_openBlock(), _createBlock(TestResultDetailDesktopSkeleton, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n (_unref(isViewable))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\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, { items: _unref(healthSummaryItems) }, null, 8, [\"items\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (props.showResultReport)\n ? (_openBlock(), _createBlock(ResultInsightCards, {\n key: 2,\n \"onClick:report\": _cache[1] || (_cache[1] = ($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[0] || (_cache[0] = ($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[2] || (_cache[2] = \n () => {\n isDisplayBook.value = true;\n emit('click:book-appointment');\n }\n )\n }, _createSlots({ _: 2 }, [\n (__props.enableBookingFeature && isDisplayBook.value)\n ? {\n name: \"content\",\n fn: _withCtx(() => [\n _renderSlot(_ctx.$slots, \"book-appointment\")\n ]),\n key: \"0\"\n }\n : undefined\n ]), 1024))\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[3] || (_cache[3] = ($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 ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\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 ]))\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})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_sfc_main","_defineComponent","__props","emit","props","TakeSurvey","defineAsyncComponent","_interopNamespaceDefaultOnly","healthSummaryItems","hideContent","isViewable","visible","useTestResult","toRef","surveyConfig","useSurveyConfig","isDisplayBook","ref","doctorNoteSurveyContext","computed","buildTestResultSurveyContext","testSurveySlug","getSurveySlug","testSurveyContext","hasDoctorNoteDetail","isSurveyEnabled","isSurveyEnabledForTestResult","slots","useSlots","showBookAppointmentBox","isTeledocSurveyVisible","isTeledocSurveyEnabled","_ctx","_cache","_openBlock","_createBlock","TestResultDetailDesktopSkeleton","_createElementBlock","_Fragment","_unref","_createElementVNode","PatientName","_createCommentVNode","_createVNode","ResultReadyV2","TestResultSection","_withCtx","HealthSummary","ResultInsightCards","$event","_createSlots","_renderSlot","BookAppointment","DoctorNote","DoctorNoteDetail","UpcomingAppointment","RejectedResult","CallUsFilledButton"],"mappings":"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"}
@@ -1,23 +1,23 @@
1
- import { defineComponent as V, defineAsyncComponent as D, toRef as v, ref as A, computed as u, openBlock as o, createBlock as s, createElementBlock as b, Fragment as F, unref as e, createElementVNode as f, createCommentVNode as n, createVNode as i, withCtx as r, createSlots as I, renderSlot as y } from "vue";
2
- import { useTestResult as P } from "../../../composables/TestResult.mjs";
3
- import j from "../../Shared/PatientName.vue.mjs";
4
- import q from "../Shared/ResultReadyV2.vue.mjs";
5
- import z from "../Shared/RejectedResult.vue.mjs";
6
- import G from "../Shared/BookAppointment.vue.mjs";
7
- import H from "../Shared/ResultInsightCards.vue.mjs";
8
- import J from "../HealthSummary/HealthSummary.vue.mjs";
9
- import a from "../Shared/TestResultSection.vue.mjs";
10
- import K from "../Shared/CallUsFilledButton.vue.mjs";
11
- import L from "../Shared/DoctorNote.vue.mjs";
12
- import M from "../Shared/DoctorNoteDetail.vue.mjs";
13
- import O from "../Shared/UpcomingAppointment.vue.mjs";
14
- import Q from "../Shared/TestResultDetailSkeleton/TestResultDetailDesktopSkeleton.vue.mjs";
15
- import { buildTestResultSurveyContext as h, getSurveySlug as U, isSurveyEnabledForTestResult as W, isTeledocSurveyEnabled as X } from "../../../helpers/SurveyHelper.mjs";
16
- import { useSurveyConfig as Y } from "../../../composables/useSurveyConfig.mjs";
17
- const Z = {
1
+ import { defineComponent as I, defineAsyncComponent as P, toRef as v, ref as j, computed as a, useSlots as q, openBlock as o, createBlock as s, createElementBlock as h, Fragment as z, unref as e, createElementVNode as f, createCommentVNode as r, createVNode as c, withCtx as l, createSlots as x, renderSlot as u } from "vue";
2
+ import { useTestResult as G } from "../../../composables/TestResult.mjs";
3
+ import H from "../../Shared/PatientName.vue.mjs";
4
+ import J from "../Shared/ResultReadyV2.vue.mjs";
5
+ import K from "../Shared/RejectedResult.vue.mjs";
6
+ import S from "../Shared/BookAppointment.vue.mjs";
7
+ import L from "../Shared/ResultInsightCards.vue.mjs";
8
+ import M from "../HealthSummary/HealthSummary.vue.mjs";
9
+ import p from "../Shared/TestResultSection.vue.mjs";
10
+ import O from "../Shared/CallUsFilledButton.vue.mjs";
11
+ import Q from "../Shared/DoctorNote.vue.mjs";
12
+ import U from "../Shared/DoctorNoteDetail.vue.mjs";
13
+ import W from "../Shared/UpcomingAppointment.vue.mjs";
14
+ import X from "../Shared/TestResultDetailSkeleton/TestResultDetailDesktopSkeleton.vue.mjs";
15
+ import { buildTestResultSurveyContext as $, getSurveySlug as Y, isSurveyEnabledForTestResult as Z, isTeledocSurveyEnabled as tt } from "../../../helpers/SurveyHelper.mjs";
16
+ import { useSurveyConfig as et } from "../../../composables/useSurveyConfig.mjs";
17
+ const ot = {
18
18
  key: 0,
19
19
  class: "psc-flex psc-items-start"
20
- }, tt = { class: "-psc-ml-4 psc-mr-16 psc-w-[480px] psc-shrink-0 psc-grow-0" }, et = { class: "psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto" }, ot = { class: "psc-min-w-0 psc-flex-1" }, st = { class: "psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto" }, bt = /* @__PURE__ */ V({
20
+ }, st = { class: "-psc-ml-4 psc-mr-16 psc-w-[480px] psc-shrink-0 psc-grow-0" }, nt = { class: "psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto" }, lt = { class: "psc-min-w-0 psc-flex-1" }, it = { class: "psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto" }, St = /* @__PURE__ */ I({
21
21
  __name: "TestResultDetailDesktop",
22
22
  props: {
23
23
  testResult: null,
@@ -34,134 +34,153 @@ const Z = {
34
34
  "click:appointment-booking",
35
35
  "click:result-report"
36
36
  ],
37
- setup(c, { emit: p }) {
38
- const t = c, S = D(
37
+ setup(k, { emit: m }) {
38
+ const t = k, g = P(
39
39
  () => import("../Shared/TakeSurvey.vue2.mjs")
40
- ), { healthSummaryItems: x, hideContent: g, isViewable: $, visible: d } = P({
40
+ ), { healthSummaryItems: B, hideContent: C, isViewable: w, visible: d } = G({
41
41
  testResult: v(t, "testResult"),
42
42
  hidePatientInfo: v(t, "hidePatientInfo"),
43
43
  hideSummary: v(t, "hideSummary")
44
- }), { surveyConfig: k } = Y(), R = A(!1), C = u(
45
- () => h(t.testResult, "doctor-note")
46
- ), B = u(
47
- () => U(
44
+ }), { surveyConfig: y } = et(), b = j(!1), T = a(
45
+ () => $(t.testResult, "doctor-note")
46
+ ), E = a(
47
+ () => Y(
48
48
  t.testResult.collection_channel,
49
49
  t.testResult.is_free_consultant,
50
- k.value
50
+ y.value
51
51
  )
52
- ), w = u(
53
- () => h(t.testResult)
54
- ), T = u(
52
+ ), N = a(
53
+ () => $(t.testResult)
54
+ ), V = a(
55
55
  () => !!t.testResult.doctor_note_detail && t.testResult.doctor_note_detail.length > 0
56
- ), E = u(
57
- () => W(
56
+ ), A = a(
57
+ () => Z(
58
58
  t.testResult.nps_test_result,
59
59
  t.testResult.collection_channel,
60
60
  t.testResult.is_free_consultant,
61
- k.value
61
+ y.value
62
62
  )
63
- ), N = u(
64
- () => X(
63
+ ), D = q(), R = a(
64
+ () => !!t.testResult.is_free_consultant || !!D["book-appointment-box"]
65
+ ), F = a(
66
+ () => tt(
65
67
  t.testResult.nps_doctor_consult,
66
- k.value
68
+ y.value
67
69
  )
68
70
  );
69
- return (m, l) => t.loading ? (o(), s(Q, { key: 0 })) : (o(), b(F, { key: 1 }, [
70
- e($) ? (o(), b("div", Z, [
71
- f("div", tt, [
72
- f("div", et, [
73
- e(d).patientName ? (o(), s(j, {
71
+ return (n, i) => t.loading ? (o(), s(X, { key: 0 })) : (o(), h(z, { key: 1 }, [
72
+ e(w) ? (o(), h("div", ot, [
73
+ f("div", st, [
74
+ f("div", nt, [
75
+ e(d).patientName ? (o(), s(H, {
74
76
  key: 0,
75
77
  "first-name": t.testResult.first_name,
76
78
  class: "psc-px-4 psc-pb-2"
77
- }, null, 8, ["first-name"])) : n("", !0),
78
- i(q, {
79
+ }, null, 8, ["first-name"])) : r("", !0),
80
+ c(J, {
79
81
  "test-result": t.testResult,
80
82
  timeline: t.timeline,
81
83
  "list-action-event": t.listActionEvent,
82
84
  class: "psc-px-4 psc-pb-4"
83
85
  }, null, 8, ["test-result", "timeline", "list-action-event"]),
84
- e(d).healthSummary ? (o(), s(a, { key: 1 }, {
85
- default: r(() => [
86
- i(J, { items: e(x) }, null, 8, ["items"])
86
+ e(d).healthSummary ? (o(), s(p, { key: 1 }, {
87
+ default: l(() => [
88
+ c(M, { items: e(B) }, null, 8, ["items"])
87
89
  ]),
88
90
  _: 1
89
- })) : n("", !0),
90
- t.showResultReport ? (o(), s(H, {
91
+ })) : r("", !0),
92
+ t.showResultReport ? (o(), s(L, {
91
93
  key: 2,
92
- "show-book-appointment": c.testResult.is_free_consultant,
93
- "onClick:report": l[0] || (l[0] = (_) => p("click:result-report")),
94
- "onClick:book": l[1] || (l[1] = (_) => p("click:book-appointment"))
95
- }, null, 8, ["show-book-appointment"])) : c.testResult.is_free_consultant ? (o(), s(a, { key: 3 }, {
96
- default: r(() => [
97
- i(G, {
98
- "onClick:book": l[2] || (l[2] = () => {
99
- R.value = !0, p("click:book-appointment");
94
+ "onClick:report": i[1] || (i[1] = (_) => m("click:result-report"))
95
+ }, x({ _: 2 }, [
96
+ e(R) ? {
97
+ name: "book-appointment-box",
98
+ fn: l(() => [
99
+ n.$slots["book-appointment-box"] ? u(n.$slots, "book-appointment-box", {
100
+ key: 0,
101
+ compact: !0
102
+ }) : (o(), s(S, {
103
+ key: 1,
104
+ compact: "",
105
+ "onClick:book": i[0] || (i[0] = (_) => m("click:book-appointment"))
106
+ }))
107
+ ]),
108
+ key: "0"
109
+ } : void 0
110
+ ]), 1024)) : e(R) ? (o(), s(p, { key: 3 }, {
111
+ default: l(() => [
112
+ n.$slots["book-appointment-box"] ? u(n.$slots, "book-appointment-box", {
113
+ key: 0,
114
+ compact: !1
115
+ }) : (o(), s(S, {
116
+ key: 1,
117
+ "onClick:book": i[2] || (i[2] = () => {
118
+ b.value = !0, m("click:book-appointment");
100
119
  })
101
- }, I({ _: 2 }, [
102
- c.enableBookingFeature && R.value ? {
120
+ }, x({ _: 2 }, [
121
+ k.enableBookingFeature && b.value ? {
103
122
  name: "content",
104
- fn: r(() => [
105
- y(m.$slots, "book-appointment")
123
+ fn: l(() => [
124
+ u(n.$slots, "book-appointment")
106
125
  ]),
107
126
  key: "0"
108
127
  } : void 0
109
- ]), 1024)
128
+ ]), 1024))
110
129
  ]),
111
130
  _: 3
112
- })) : n("", !0),
113
- e(d).doctorNote ? (o(), s(a, { key: 4 }, {
114
- default: r(() => [
115
- i(L, {
131
+ })) : r("", !0),
132
+ e(d).doctorNote ? (o(), s(p, { key: 4 }, {
133
+ default: l(() => [
134
+ c(Q, {
116
135
  "doctor-note": t.testResult.doctor_note
117
136
  }, null, 8, ["doctor-note"])
118
137
  ]),
119
138
  _: 1
120
- })) : n("", !0),
121
- e(T) ? (o(), s(a, { key: 5 }, {
122
- default: r(() => [
123
- i(M, {
124
- "doctor-note-detail": c.testResult.doctor_note_detail,
125
- "survey-context": e(N) ? e(C) : void 0,
126
- "onClick:appointmentBooking": l[3] || (l[3] = (_) => p("click:appointment-booking", _))
139
+ })) : r("", !0),
140
+ e(V) ? (o(), s(p, { key: 5 }, {
141
+ default: l(() => [
142
+ c(U, {
143
+ "doctor-note-detail": k.testResult.doctor_note_detail,
144
+ "survey-context": e(F) ? e(T) : void 0,
145
+ "onClick:appointmentBooking": i[3] || (i[3] = (_) => m("click:appointment-booking", _))
127
146
  }, null, 8, ["doctor-note-detail", "survey-context"])
128
147
  ]),
129
148
  _: 1
130
- })) : n("", !0),
131
- e(E) ? (o(), s(a, { key: 6 }, {
132
- default: r(() => [
133
- i(e(S), {
149
+ })) : r("", !0),
150
+ e(A) ? (o(), s(p, { key: 6 }, {
151
+ default: l(() => [
152
+ c(e(g), {
134
153
  variant: "bar",
135
- "survey-slug": e(B),
136
- context: e(w),
137
- text: m.$t("psc.test_result_take_survey_button")
154
+ "survey-slug": e(E),
155
+ context: e(N),
156
+ text: n.$t("psc.test_result_take_survey_button")
138
157
  }, null, 8, ["survey-slug", "context", "text"])
139
158
  ]),
140
159
  _: 1
141
- })) : n("", !0),
142
- e(d).upcomingAppointment ? (o(), s(a, { key: 7 }, {
143
- default: r(() => [
144
- i(O, {
160
+ })) : r("", !0),
161
+ e(d).upcomingAppointment ? (o(), s(p, { key: 7 }, {
162
+ default: l(() => [
163
+ c(W, {
145
164
  "time-slot": t.testResult.consult_time
146
165
  }, null, 8, ["time-slot"])
147
166
  ]),
148
167
  _: 1
149
- })) : n("", !0)
168
+ })) : r("", !0)
150
169
  ])
151
170
  ]),
152
- f("div", ot, [
153
- f("div", st, [
154
- y(m.$slots, "header"),
155
- e(g) ? n("", !0) : y(m.$slots, "default", { key: 0 }),
156
- y(m.$slots, "footer")
171
+ f("div", lt, [
172
+ f("div", it, [
173
+ u(n.$slots, "header"),
174
+ e(C) ? r("", !0) : u(n.$slots, "default", { key: 0 }),
175
+ u(n.$slots, "footer")
157
176
  ])
158
177
  ])
159
- ])) : (o(), s(z, {
178
+ ])) : (o(), s(K, {
160
179
  key: 1,
161
180
  class: "psc-px-4"
162
181
  }, {
163
- "body-append": r(() => [
164
- i(K, { class: "psc-mt-6" })
182
+ "body-append": l(() => [
183
+ c(O, { class: "psc-mt-6" })
165
184
  ]),
166
185
  _: 1
167
186
  }))
@@ -169,6 +188,6 @@ const Z = {
169
188
  }
170
189
  });
171
190
  export {
172
- bt as default
191
+ St as default
173
192
  };
174
193
  //# sourceMappingURL=TestResultDetailDesktop.vue.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"TestResultDetailDesktop.vue.mjs","sources":["../../../../../src/components/TestResult/Desktop/TestResultDetailDesktop.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: \"psc-flex psc-items-start\"\n}\nconst _hoisted_2 = { class: \"-psc-ml-4 psc-mr-16 psc-w-[480px] psc-shrink-0 psc-grow-0\" }\nconst _hoisted_3 = { class: \"psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto\" }\nconst _hoisted_4 = { class: \"psc-min-w-0 psc-flex-1\" }\nconst _hoisted_5 = { class: \"psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto\" }\n\nimport { useTestResult } from '@/composables/TestResult';\nimport PatientName from '../../Shared/PatientName.vue';\nimport ResultReadyV2 from '../Shared/ResultReadyV2.vue';\nimport RejectedResult from '../Shared/RejectedResult.vue';\nimport BookAppointment from '../Shared/BookAppointment.vue';\nimport ResultInsightCards from '../Shared/ResultInsightCards.vue';\nimport HealthSummary from '../HealthSummary/HealthSummary.vue';\nimport TestResultSection from '../Shared/TestResultSection.vue';\nimport CallUsFilledButton from '../Shared/CallUsFilledButton.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 { computed, defineAsyncComponent, ref, toRef } from 'vue';\nimport TestResultDetailDesktopSkeleton from '../Shared/TestResultDetailSkeleton/TestResultDetailDesktopSkeleton.vue';\nimport type { TimelineEvent } from '../Shared/ResultReadyV2.vue';\nimport {\n buildTestResultSurveyContext,\n getSurveySlug,\n isSurveyEnabledForTestResult,\n isTeledocSurveyEnabled,\n} from '@/helpers/SurveyHelper';\nimport { useSurveyConfig } from '@/composables/useSurveyConfig';\n\nexport interface Props {\n testResult: TestResult;\n loading: boolean;\n hidePatientInfo?: boolean;\n hideSummary?: boolean;\n enableBookingFeature?: boolean;\n timeline?: TimelineEvent[];\n listActionEvent?: Record<string, string>;\n showResultReport?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'TestResultDetailDesktop',\n props: {\n testResult: null,\n loading: { type: Boolean },\n hidePatientInfo: { type: Boolean, default: false },\n hideSummary: { type: Boolean, default: false },\n enableBookingFeature: { 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, enableBookingFeature: boolean, timeline: TimelineEvent[], listActionEvent: Record<string, string>, showResultReport: boolean };\n\n\n\nconst TakeSurvey = defineAsyncComponent(\n () => import('../Shared/TakeSurvey.vue')\n);\n\n\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 isDisplayBook = ref(false);\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 (props.loading)\n ? (_openBlock(), _createBlock(TestResultDetailDesktopSkeleton, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n (_unref(isViewable))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\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, { items: _unref(healthSummaryItems) }, null, 8, [\"items\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (props.showResultReport)\n ? (_openBlock(), _createBlock(ResultInsightCards, {\n key: 2,\n \"show-book-appointment\": __props.testResult.is_free_consultant,\n \"onClick:report\": _cache[0] || (_cache[0] = ($event: any) => (emit('click:result-report'))),\n \"onClick:book\": _cache[1] || (_cache[1] = ($event: any) => (emit('click:book-appointment')))\n }, null, 8, [\"show-book-appointment\"]))\n : (__props.testResult.is_free_consultant)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 3 }, {\n default: _withCtx(() => [\n _createVNode(BookAppointment, {\n \"onClick:book\": _cache[2] || (_cache[2] = \n () => {\n isDisplayBook.value = true;\n emit('click:book-appointment');\n }\n )\n }, _createSlots({ _: 2 }, [\n (__props.enableBookingFeature && isDisplayBook.value)\n ? {\n name: \"content\",\n fn: _withCtx(() => [\n _renderSlot(_ctx.$slots, \"book-appointment\")\n ]),\n key: \"0\"\n }\n : undefined\n ]), 1024)\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[3] || (_cache[3] = ($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 ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\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 ]))\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})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_sfc_main","_defineComponent","__props","emit","props","TakeSurvey","defineAsyncComponent","healthSummaryItems","hideContent","isViewable","visible","useTestResult","toRef","surveyConfig","useSurveyConfig","isDisplayBook","ref","doctorNoteSurveyContext","computed","buildTestResultSurveyContext","testSurveySlug","getSurveySlug","testSurveyContext","hasDoctorNoteDetail","isSurveyEnabled","isSurveyEnabledForTestResult","isTeledocSurveyVisible","isTeledocSurveyEnabled","_ctx","_cache","_openBlock","_createBlock","TestResultDetailDesktopSkeleton","_createElementBlock","_Fragment","_unref","_createElementVNode","PatientName","_createCommentVNode","_createVNode","ResultReadyV2","TestResultSection","_withCtx","HealthSummary","ResultInsightCards","$event","BookAppointment","_createSlots","_renderSlot","DoctorNote","DoctorNoteDetail","UpcomingAppointment","RejectedResult","CallUsFilledButton"],"mappings":"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"}
1
+ {"version":3,"file":"TestResultDetailDesktop.vue.mjs","sources":["../../../../../src/components/TestResult/Desktop/TestResultDetailDesktop.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: \"psc-flex psc-items-start\"\n}\nconst _hoisted_2 = { class: \"-psc-ml-4 psc-mr-16 psc-w-[480px] psc-shrink-0 psc-grow-0\" }\nconst _hoisted_3 = { class: \"psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto\" }\nconst _hoisted_4 = { class: \"psc-min-w-0 psc-flex-1\" }\nconst _hoisted_5 = { class: \"psc-sticky psc-top-[154px] psc-max-h-[calc(100vh-154px)] psc-overflow-y-auto\" }\n\nimport { useTestResult } from '@/composables/TestResult';\nimport PatientName from '../../Shared/PatientName.vue';\nimport ResultReadyV2 from '../Shared/ResultReadyV2.vue';\nimport RejectedResult from '../Shared/RejectedResult.vue';\nimport BookAppointment from '../Shared/BookAppointment.vue';\nimport ResultInsightCards from '../Shared/ResultInsightCards.vue';\nimport HealthSummary from '../HealthSummary/HealthSummary.vue';\nimport TestResultSection from '../Shared/TestResultSection.vue';\nimport CallUsFilledButton from '../Shared/CallUsFilledButton.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 { computed, defineAsyncComponent, ref, toRef, useSlots } from 'vue';\nimport TestResultDetailDesktopSkeleton from '../Shared/TestResultDetailSkeleton/TestResultDetailDesktopSkeleton.vue';\nimport type { TimelineEvent } from '../Shared/ResultReadyV2.vue';\nimport {\n buildTestResultSurveyContext,\n getSurveySlug,\n isSurveyEnabledForTestResult,\n isTeledocSurveyEnabled,\n} from '@/helpers/SurveyHelper';\nimport { useSurveyConfig } from '@/composables/useSurveyConfig';\n\nexport interface Props {\n testResult: TestResult;\n loading: boolean;\n hidePatientInfo?: boolean;\n hideSummary?: boolean;\n enableBookingFeature?: boolean;\n timeline?: TimelineEvent[];\n listActionEvent?: Record<string, string>;\n showResultReport?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'TestResultDetailDesktop',\n props: {\n testResult: null,\n loading: { type: Boolean },\n hidePatientInfo: { type: Boolean, default: false },\n hideSummary: { type: Boolean, default: false },\n enableBookingFeature: { 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, enableBookingFeature: boolean, timeline: TimelineEvent[], listActionEvent: Record<string, string>, showResultReport: boolean };\n\n\n\nconst TakeSurvey = defineAsyncComponent(\n () => import('../Shared/TakeSurvey.vue')\n);\n\n\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 isDisplayBook = ref(false);\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 () => !!props.testResult.is_free_consultant || !!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 (props.loading)\n ? (_openBlock(), _createBlock(TestResultDetailDesktopSkeleton, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n (_unref(isViewable))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\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, { items: _unref(healthSummaryItems) }, null, 8, [\"items\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (props.showResultReport)\n ? (_openBlock(), _createBlock(ResultInsightCards, {\n key: 2,\n \"onClick:report\": _cache[1] || (_cache[1] = ($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[0] || (_cache[0] = ($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[2] || (_cache[2] = \n () => {\n isDisplayBook.value = true;\n emit('click:book-appointment');\n }\n )\n }, _createSlots({ _: 2 }, [\n (__props.enableBookingFeature && isDisplayBook.value)\n ? {\n name: \"content\",\n fn: _withCtx(() => [\n _renderSlot(_ctx.$slots, \"book-appointment\")\n ]),\n key: \"0\"\n }\n : undefined\n ]), 1024))\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[3] || (_cache[3] = ($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 ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\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 ]))\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})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_sfc_main","_defineComponent","__props","emit","props","TakeSurvey","defineAsyncComponent","healthSummaryItems","hideContent","isViewable","visible","useTestResult","toRef","surveyConfig","useSurveyConfig","isDisplayBook","ref","doctorNoteSurveyContext","computed","buildTestResultSurveyContext","testSurveySlug","getSurveySlug","testSurveyContext","hasDoctorNoteDetail","isSurveyEnabled","isSurveyEnabledForTestResult","slots","useSlots","showBookAppointmentBox","isTeledocSurveyVisible","isTeledocSurveyEnabled","_ctx","_cache","_openBlock","_createBlock","TestResultDetailDesktopSkeleton","_createElementBlock","_Fragment","_unref","_createElementVNode","PatientName","_createCommentVNode","_createVNode","ResultReadyV2","TestResultSection","_withCtx","HealthSummary","ResultInsightCards","$event","_createSlots","_renderSlot","BookAppointment","DoctorNote","DoctorNoteDetail","UpcomingAppointment","RejectedResult","CallUsFilledButton"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("vue"),C=require("../../../Shared/PatientName.vue.js"),b=require("../../Shared/ResultReadyV2.vue.js"),g=require("../../Shared/RejectedResult.vue.js"),S=require("../../Shared/BookAppointment.vue.js"),N=require("../../Shared/ResultInsightCards.vue.js"),h=require("../../Shared/DoctorNote.vue.js"),V=require("../../Shared/DoctorNoteDetail.vue.js"),x=require("../../Shared/UpcomingAppointment.vue.js"),q=require("../../Shared/CallUsFilledButton.vue.js"),w=require("../../Shared/TestResultDetailSkeleton/TestResultDetailSkeleton.vue.js"),T=require("../../HealthSummary/HealthSummary.vue.js"),l=require("../../Shared/TestResultSection.vue.js"),E=require("../../../../composables/TestResult.js"),r=require("../../../../helpers/SurveyHelper.js"),A=require("../../../../composables/useSurveyConfig.js"),D=c=>Object.freeze(Object.defineProperty({__proto__:null,default:c},Symbol.toStringTag,{value:"Module"})),$={key:0,class:"consumer-test-result__ready"},P={class:"psc-px-4"},I=e.defineComponent({__name:"TestResultDetail",props:{testResult:null,loading:{type:Boolean},hidePatientInfo:{type:Boolean,default:!1},hideSummary:{type:Boolean,default:!1},timeline:{default:void 0},listActionEvent:{default:void 0},showResultReport:{type:Boolean,default:!1}},emits:["click:book-appointment","click:appointment-booking","click:result-report"],setup(c,{emit:s}){const t=c,p=e.defineAsyncComponent(()=>Promise.resolve().then(()=>D(require("../../Shared/TakeSurvey.vue2.js")))),{healthSummaryItems:_,hideContent:d,isViewable:m,visible:n}=E.useTestResult({testResult:e.toRef(t,"testResult"),hidePatientInfo:e.toRef(t,"hidePatientInfo"),hideSummary:e.toRef(t,"hideSummary")}),{surveyConfig:a}=A.useSurveyConfig(),k=e.computed(()=>r.buildTestResultSurveyContext(t.testResult,"doctor-note")),v=e.computed(()=>r.getSurveySlug(t.testResult.collection_channel,t.testResult.is_free_consultant,a.value)),y=e.computed(()=>r.buildTestResultSurveyContext(t.testResult)),f=e.computed(()=>!!t.testResult.doctor_note_detail&&t.testResult.doctor_note_detail.length>0),R=e.computed(()=>r.isSurveyEnabledForTestResult(t.testResult.nps_test_result,t.testResult.collection_channel,t.testResult.is_free_consultant,a.value)),B=e.computed(()=>r.isTeledocSurveyEnabled(t.testResult.nps_doctor_consult,a.value));return(i,o)=>(e.openBlock(),e.createElementBlock("div",null,[t.loading?(e.openBlock(),e.createBlock(w,{key:0})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.unref(m)?(e.openBlock(),e.createElementBlock("div",$,[e.createElementVNode("div",null,[e.unref(n).patientName?(e.openBlock(),e.createBlock(C,{key:0,"first-name":t.testResult.first_name,class:"psc-px-4 psc-pb-2"},null,8,["first-name"])):e.createCommentVNode("",!0),e.createVNode(b,{"test-result":t.testResult,timeline:t.timeline,"list-action-event":t.listActionEvent,class:"psc-px-4 psc-pb-4"},null,8,["test-result","timeline","list-action-event"]),e.unref(n).healthSummary?(e.openBlock(),e.createBlock(l,{key:1},{default:e.withCtx(()=>[e.createVNode(T,{items:e.unref(_),"cta-button":t.testResult.is_free_consultant,"onClick:ctaButton":o[0]||(o[0]=u=>s("click:book-appointment"))},null,8,["items","cta-button"])]),_:1})):e.createCommentVNode("",!0),t.showResultReport?(e.openBlock(),e.createBlock(N,{key:2,"show-book-appointment":e.unref(n).bookAppointment,"onClick:report":o[1]||(o[1]=u=>s("click:result-report")),"onClick:book":o[2]||(o[2]=u=>s("click:book-appointment"))},null,8,["show-book-appointment"])):e.unref(n).bookAppointment?(e.openBlock(),e.createBlock(l,{key:3},{default:e.withCtx(()=>[e.createVNode(S,{"onClick:book":o[3]||(o[3]=u=>s("click:book-appointment"))})]),_:1})):e.createCommentVNode("",!0),e.unref(n).doctorNote?(e.openBlock(),e.createBlock(l,{key:4},{default:e.withCtx(()=>[e.createVNode(h,{"doctor-note":t.testResult.doctor_note},null,8,["doctor-note"])]),_:1})):e.createCommentVNode("",!0),e.unref(f)?(e.openBlock(),e.createBlock(l,{key:5},{default:e.withCtx(()=>[e.createVNode(V,{"doctor-note-detail":c.testResult.doctor_note_detail,"survey-context":e.unref(B)?e.unref(k):void 0,"onClick:appointmentBooking":o[4]||(o[4]=u=>s("click:appointment-booking",u))},null,8,["doctor-note-detail","survey-context"])]),_:1})):e.createCommentVNode("",!0),e.unref(R)?(e.openBlock(),e.createBlock(l,{key:6},{default:e.withCtx(()=>[e.createVNode(e.unref(p),{variant:"bar","survey-slug":e.unref(v),context:e.unref(y),text:i.$t("psc.test_result_take_survey_button")},null,8,["survey-slug","context","text"])]),_:1})):e.createCommentVNode("",!0),e.unref(n).upcomingAppointment?(e.openBlock(),e.createBlock(l,{key:7},{default:e.withCtx(()=>[e.createVNode(x,{"time-slot":t.testResult.consult_time},null,8,["time-slot"])]),_:1})):e.createCommentVNode("",!0)]),e.createElementVNode("div",P,[e.renderSlot(i.$slots,"header"),e.unref(d)?e.createCommentVNode("",!0):e.renderSlot(i.$slots,"default",{key:0}),e.renderSlot(i.$slots,"footer")])])):(e.openBlock(),e.createBlock(g,{key:1,class:"psc-px-4"},{"body-append":e.withCtx(()=>[e.createVNode(q,{class:"psc-mt-6"})]),_:1}))],64))]))}});module.exports=I;
1
+ "use strict";const e=require("vue"),g=require("../../../Shared/PatientName.vue.js"),N=require("../../Shared/ResultReadyV2.vue.js"),h=require("../../Shared/RejectedResult.vue.js"),d=require("../../Shared/BookAppointment.vue.js"),x=require("../../Shared/ResultInsightCards.vue.js"),V=require("../../Shared/DoctorNote.vue.js"),q=require("../../Shared/DoctorNoteDetail.vue.js"),w=require("../../Shared/UpcomingAppointment.vue.js"),T=require("../../Shared/CallUsFilledButton.vue.js"),$=require("../../Shared/TestResultDetailSkeleton/TestResultDetailSkeleton.vue.js"),E=require("../../HealthSummary/HealthSummary.vue.js"),s=require("../../Shared/TestResultSection.vue.js"),A=require("../../../../composables/TestResult.js"),c=require("../../../../helpers/SurveyHelper.js"),D=require("../../../../composables/useSurveyConfig.js"),P=i=>Object.freeze(Object.defineProperty({__proto__:null,default:i},Symbol.toStringTag,{value:"Module"})),I={key:0,class:"consumer-test-result__ready"},j={class:"psc-px-4"},F=e.defineComponent({__name:"TestResultDetail",props:{testResult:null,loading:{type:Boolean},hidePatientInfo:{type:Boolean,default:!1},hideSummary:{type:Boolean,default:!1},timeline:{default:void 0},listActionEvent:{default:void 0},showResultReport:{type:Boolean,default:!1}},emits:["click:book-appointment","click:appointment-booking","click:result-report"],setup(i,{emit:l}){const t=i,_=e.defineAsyncComponent(()=>Promise.resolve().then(()=>P(require("../../Shared/TakeSurvey.vue2.js")))),{healthSummaryItems:m,hideContent:k,isViewable:y,visible:u}=A.useTestResult({testResult:e.toRef(t,"testResult"),hidePatientInfo:e.toRef(t,"hidePatientInfo"),hideSummary:e.toRef(t,"hideSummary")}),{surveyConfig:a}=D.useSurveyConfig(),v=e.computed(()=>c.buildTestResultSurveyContext(t.testResult,"doctor-note")),f=e.computed(()=>c.getSurveySlug(t.testResult.collection_channel,t.testResult.is_free_consultant,a.value)),B=e.computed(()=>c.buildTestResultSurveyContext(t.testResult)),b=e.computed(()=>!!t.testResult.doctor_note_detail&&t.testResult.doctor_note_detail.length>0),R=e.computed(()=>c.isSurveyEnabledForTestResult(t.testResult.nps_test_result,t.testResult.collection_channel,t.testResult.is_free_consultant,a.value)),C=e.useSlots(),p=e.computed(()=>u.value.bookAppointment||!!C["book-appointment-box"]),S=e.computed(()=>c.isTeledocSurveyEnabled(t.testResult.nps_doctor_consult,a.value));return(n,o)=>(e.openBlock(),e.createElementBlock("div",null,[t.loading?(e.openBlock(),e.createBlock($,{key:0})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.unref(y)?(e.openBlock(),e.createElementBlock("div",I,[e.createElementVNode("div",null,[e.unref(u).patientName?(e.openBlock(),e.createBlock(g,{key:0,"first-name":t.testResult.first_name,class:"psc-px-4 psc-pb-2"},null,8,["first-name"])):e.createCommentVNode("",!0),e.createVNode(N,{"test-result":t.testResult,timeline:t.timeline,"list-action-event":t.listActionEvent,class:"psc-px-4 psc-pb-4"},null,8,["test-result","timeline","list-action-event"]),e.unref(u).healthSummary?(e.openBlock(),e.createBlock(s,{key:1},{default:e.withCtx(()=>[e.createVNode(E,{items:e.unref(m),"cta-button":t.testResult.is_free_consultant,"onClick:ctaButton":o[0]||(o[0]=r=>l("click:book-appointment"))},null,8,["items","cta-button"])]),_:1})):e.createCommentVNode("",!0),t.showResultReport?(e.openBlock(),e.createBlock(x,{key:2,"onClick:report":o[2]||(o[2]=r=>l("click:result-report"))},e.createSlots({_:2},[e.unref(p)?{name:"book-appointment-box",fn:e.withCtx(()=>[n.$slots["book-appointment-box"]?e.renderSlot(n.$slots,"book-appointment-box",{key:0,compact:!0}):(e.openBlock(),e.createBlock(d,{key:1,compact:"","onClick:book":o[1]||(o[1]=r=>l("click:book-appointment"))}))]),key:"0"}:void 0]),1024)):e.unref(p)?(e.openBlock(),e.createBlock(s,{key:3},{default:e.withCtx(()=>[n.$slots["book-appointment-box"]?e.renderSlot(n.$slots,"book-appointment-box",{key:0,compact:!1}):(e.openBlock(),e.createBlock(d,{key:1,"onClick:book":o[3]||(o[3]=r=>l("click:book-appointment"))}))]),_:3})):e.createCommentVNode("",!0),e.unref(u).doctorNote?(e.openBlock(),e.createBlock(s,{key:4},{default:e.withCtx(()=>[e.createVNode(V,{"doctor-note":t.testResult.doctor_note},null,8,["doctor-note"])]),_:1})):e.createCommentVNode("",!0),e.unref(b)?(e.openBlock(),e.createBlock(s,{key:5},{default:e.withCtx(()=>[e.createVNode(q,{"doctor-note-detail":i.testResult.doctor_note_detail,"survey-context":e.unref(S)?e.unref(v):void 0,"onClick:appointmentBooking":o[4]||(o[4]=r=>l("click:appointment-booking",r))},null,8,["doctor-note-detail","survey-context"])]),_:1})):e.createCommentVNode("",!0),e.unref(R)?(e.openBlock(),e.createBlock(s,{key:6},{default:e.withCtx(()=>[e.createVNode(e.unref(_),{variant:"bar","survey-slug":e.unref(f),context:e.unref(B),text:n.$t("psc.test_result_take_survey_button")},null,8,["survey-slug","context","text"])]),_:1})):e.createCommentVNode("",!0),e.unref(u).upcomingAppointment?(e.openBlock(),e.createBlock(s,{key:7},{default:e.withCtx(()=>[e.createVNode(w,{"time-slot":t.testResult.consult_time},null,8,["time-slot"])]),_:1})):e.createCommentVNode("",!0)]),e.createElementVNode("div",j,[e.renderSlot(n.$slots,"header"),e.unref(k)?e.createCommentVNode("",!0):e.renderSlot(n.$slots,"default",{key:0}),e.renderSlot(n.$slots,"footer")])])):(e.openBlock(),e.createBlock(h,{key:1,class:"psc-px-4"},{"body-append":e.withCtx(()=>[e.createVNode(T,{class:"psc-mt-6"})]),_:1}))],64))]))}});module.exports=F;
2
2
  //# sourceMappingURL=TestResultDetail.vue.js.map