pat-shared-components 1.3.1-beta.34 → 1.3.1-beta.36
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.
- package/dist/pat-shared-components.js +1 -1
- package/dist/pat-shared-components.mjs +42 -40
- package/dist/pat-shared-components.mjs.map +1 -1
- package/dist/src/components/TestResult/Desktop/TestResultDetailDesktop.vue.js +1 -1
- package/dist/src/components/TestResult/Desktop/TestResultDetailDesktop.vue.js.map +1 -1
- package/dist/src/components/TestResult/Desktop/TestResultDetailDesktop.vue.mjs +89 -81
- package/dist/src/components/TestResult/Desktop/TestResultDetailDesktop.vue.mjs.map +1 -1
- package/dist/src/components/TestResult/Mobile/ResultTab/TestResultDetail.vue.js +1 -1
- package/dist/src/components/TestResult/Mobile/ResultTab/TestResultDetail.vue.js.map +1 -1
- package/dist/src/components/TestResult/Mobile/ResultTab/TestResultDetail.vue.mjs +86 -78
- package/dist/src/components/TestResult/Mobile/ResultTab/TestResultDetail.vue.mjs.map +1 -1
- package/dist/src/components/TestResult/Shared/BookAppointment.vue.js +1 -1
- package/dist/src/components/TestResult/Shared/BookAppointment.vue.js.map +1 -1
- package/dist/src/components/TestResult/Shared/BookAppointment.vue.mjs +48 -23
- package/dist/src/components/TestResult/Shared/BookAppointment.vue.mjs.map +1 -1
- package/dist/src/components/TestResult/Shared/ResultInsightCards.vue.js +2 -0
- package/dist/src/components/TestResult/Shared/ResultInsightCards.vue.js.map +1 -0
- package/dist/src/components/TestResult/Shared/ResultInsightCards.vue.mjs +30 -0
- package/dist/src/components/TestResult/Shared/ResultInsightCards.vue.mjs.map +1 -0
- package/dist/src/components/TestResult/Shared/ResultInsightCards.vue2.js +2 -0
- package/dist/src/components/TestResult/Shared/ResultInsightCards.vue2.js.map +1 -0
- package/dist/src/components/TestResult/Shared/ResultInsightCards.vue2.mjs +5 -0
- package/dist/src/components/TestResult/Shared/ResultInsightCards.vue2.mjs.map +1 -0
- package/dist/src/components/TestResult/Shared/ResultReadyV2.vue.js +1 -1
- package/dist/src/components/TestResult/Shared/ResultReadyV2.vue.mjs +2 -2
- package/dist/src/components/TestResult/Shared/ResultReadyV2.vue2.js +1 -1
- package/dist/src/components/TestResult/Shared/ResultReadyV2.vue2.js.map +1 -1
- package/dist/src/components/TestResult/Shared/ResultReadyV2.vue2.mjs +184 -108
- package/dist/src/components/TestResult/Shared/ResultReadyV2.vue2.mjs.map +1 -1
- package/dist/src/components/TestResult/Shared/ResultReport.vue.js +2 -0
- package/dist/src/components/TestResult/Shared/ResultReport.vue.js.map +1 -0
- package/dist/src/components/TestResult/Shared/ResultReport.vue.mjs +53 -0
- package/dist/src/components/TestResult/Shared/ResultReport.vue.mjs.map +1 -0
- package/dist/src/components/TestResult/Shared/ResultReport.vue2.js +2 -0
- package/dist/src/components/TestResult/Shared/ResultReport.vue2.js.map +1 -0
- package/dist/src/components/TestResult/Shared/ResultReport.vue2.mjs +5 -0
- package/dist/src/components/TestResult/Shared/ResultReport.vue2.mjs.map +1 -0
- package/dist/src/components/TestResult/Shared/TakeSurvey.vue.js.map +1 -1
- package/dist/src/components/TestResult/Shared/TakeSurvey.vue.mjs +3 -1
- package/dist/src/components/TestResult/Shared/TakeSurvey.vue.mjs.map +1 -1
- package/dist/src/helpers/DateHelper.js +1 -1
- package/dist/src/helpers/DateHelper.js.map +1 -1
- package/dist/src/helpers/DateHelper.mjs +42 -17
- package/dist/src/helpers/DateHelper.mjs.map +1 -1
- package/dist/src/locales/en.json.js +1 -1
- package/dist/src/locales/en.json.mjs +7 -0
- package/dist/src/locales/en.json.mjs.map +1 -1
- package/dist/src/locales/vi.json.js +1 -1
- package/dist/src/locales/vi.json.mjs +8 -1
- package/dist/src/locales/vi.json.mjs.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/components/TestResult/Desktop/TestResultDetailDesktop.vue.d.ts +6 -1
- package/dist/types/components/TestResult/Mobile/ResultTab/TestResultDetail.vue.d.ts +6 -1
- package/dist/types/components/TestResult/Shared/BookAppointment.vue.d.ts +28 -2
- package/dist/types/components/TestResult/Shared/ResultInsightCards.vue.d.ts +31 -0
- package/dist/types/components/TestResult/Shared/ResultReport.vue.d.ts +30 -0
- package/dist/types/components/TestResult/index.d.ts +1 -0
- package/package.json +1 -1
|
@@ -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 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}\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 },\n emits: [\n 'click:book-appointment',\n 'click:appointment-booking',\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> };\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.testResult.is_free_consultant)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 2 }, {\n default: _withCtx(() => [\n _createVNode(BookAppointment, {\n \"onClick:book\": _cache[0] || (_cache[0] = \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: 3 }, {\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: 4 }, {\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[1] || (_cache[1] = ($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: 5 }, {\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: 6 }, {\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","BookAppointment","_createSlots","_renderSlot","DoctorNote","DoctorNoteDetail","$event","UpcomingAppointment","RejectedResult","CallUsFilledButton"],"mappings":";;;;;;;;;;;;;;;AAGA,MAAMA,IAAa;AAAA,EACjB,KAAK;AAAA,EACL,OAAO;AACT,GACMC,IAAa,EAAE,OAAO,+DACtBC,KAAa,EAAE,OAAO,kFACtBC,KAAa,EAAE,OAAO,4BACtBC,KAAa,EAAE,OAAO,kFAmCAC,KAAiBC,gBAAAA,EAAA;AAAA,EAC3C,QAAQ;AAAA,EACR,OAAO;AAAA,IACL,YAAY;AAAA,IACZ,SAAS,EAAE,MAAM,QAAQ;AAAA,IACzB,iBAAiB,EAAE,MAAM,SAAS,SAAS,GAAM;AAAA,IACjD,aAAa,EAAE,MAAM,SAAS,SAAS,GAAM;AAAA,IAC7C,sBAAsB,EAAE,MAAM,SAAS,SAAS,GAAM;AAAA,IACtD,UAAU,EAAE,SAAS,OAAU;AAAA,IAC/B,iBAAiB,EAAE,SAAS,OAAU;AAAA,EACxC;AAAA,EACA,OAAO;AAAA,IACP;AAAA,IACA;AAAA,EACF;AAAA,EACE,MAAMC,GAAc,EAAE,MAAAC,KAAQ;AAEhC,UAAMC,IAAQF,GAIRG,IAAaC;AAAA,MACjB,MAAM,OAAO,+BAA0B;AAAA,IAAA,GAKnC,EAAE,oBAAAC,GAAoB,aAAAC,GAAa,YAAAC,GAAY,SAAAC,EAAA,IAAYC,EAAc;AAAA,MAC7E,YAAYC,EAAMR,GAAO,YAAY;AAAA,MACrC,iBAAiBQ,EAAMR,GAAO,iBAAiB;AAAA,MAC/C,aAAaQ,EAAMR,GAAO,aAAa;AAAA,IAAA,CACxC,GAEK,EAAE,cAAAS,MAAiBC,KAEnBC,IAAgBC,EAAI,EAAK,GAEzBC,IAA0BC;AAAA,MAAS,MACvCC,EAA6Bf,EAAM,YAAY,aAAa;AAAA,IAAA,GAGxDgB,IAAiBF;AAAA,MAAS,MAC9BG;AAAA,QACEjB,EAAM,WAAW;AAAA,QACjBA,EAAM,WAAW;AAAA,QACjBS,EAAa;AAAA,MACf;AAAA,IAAA,GAGIS,IAAoBJ;AAAA,MAAS,MACjCC,EAA6Bf,EAAM,UAAU;AAAA,IAAA,GAGzCmB,IAAsBL;AAAA,MAC1B,MACE,CAAC,CAACd,EAAM,WAAW,sBACnBA,EAAM,WAAW,mBAAmB,SAAS;AAAA,IAAA,GAG3CoB,IAAkBN;AAAA,MAAS,MAC/BO;AAAA,QACErB,EAAM,WAAW;AAAA,QACjBA,EAAM,WAAW;AAAA,QACjBA,EAAM,WAAW;AAAA,QACjBS,EAAa;AAAA,MACf;AAAA,IAAA,GAGIa,IAAyBR;AAAA,MAAS,MACtCS;AAAA,QACEvB,EAAM,WAAW;AAAA,QACjBS,EAAa;AAAA,MACf;AAAA,IAAA;AAGK,WAAA,CAACe,GAAUC,MACRzB,EAAM,WACT0B,KAAcC,EAAaC,GAAiC,EAAE,KAAK,EAAA,CAAG,MACtEF,KAAcG,EAAoBC,GAAW,EAAE,KAAK,KAAK;AAAA,MACvDC,EAAO1B,CAAU,KACbqB,EAAc,GAAAG,EAAoB,OAAOtC,GAAY;AAAA,QACpDyC,EAAoB,OAAOxC,GAAY;AAAA,UACrCwC,EAAoB,OAAOvC,IAAY;AAAA,YACpCsC,EAAOzB,CAAO,EAAE,eACZoB,EAAW,GAAGC,EAAaM,GAAa;AAAA,cACvC,KAAK;AAAA,cACL,cAAcjC,EAAM,WAAW;AAAA,cAC/B,OAAO;AAAA,YAAA,GACN,MAAM,GAAG,CAAC,YAAY,CAAC,KAC1BkC,EAAoB,IAAI,EAAI;AAAA,YAChCC,EAAaC,GAAe;AAAA,cAC1B,eAAepC,EAAM;AAAA,cACrB,UAAUA,EAAM;AAAA,cAChB,qBAAqBA,EAAM;AAAA,cAC3B,OAAO;AAAA,YAAA,GACN,MAAM,GAAG,CAAC,eAAe,YAAY,mBAAmB,CAAC;AAAA,YAC3D+B,EAAOzB,CAAO,EAAE,iBACZoB,EAAA,GAAcC,EAAaU,GAAmB,EAAE,KAAK,KAAK;AAAA,cACzD,SAASC,EAAS,MAAM;AAAA,gBACtBH,EAAaI,GAAe,EAAE,OAAOR,EAAO5B,CAAkB,EAAE,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC;AAAA,cAAA,CACtF;AAAA,cACD,GAAG;AAAA,YAAA,CACJ,KACD+B,EAAoB,IAAI,EAAI;AAAA,YAC/BpC,EAAQ,WAAW,sBACf4B,EAAW,GAAGC,EAAaU,GAAmB,EAAE,KAAK,KAAK;AAAA,cACzD,SAASC,EAAS,MAAM;AAAA,gBACtBH,EAAaK,GAAiB;AAAA,kBAC5B,gBAAgBf,EAAO,CAAC,MAAMA,EAAO,CAAC,IAClD,MAAM;AACJ,oBAAAd,EAAc,QAAQ,IACtBZ,EAAK,wBAAwB;AAAA,kBAAA;AAAA,gBAGlB,GAAA0C,EAAa,EAAE,GAAG,KAAK;AAAA,kBACvB3C,EAAQ,wBAAwBa,EAAc,QAC3C;AAAA,oBACE,MAAM;AAAA,oBACN,IAAI2B,EAAS,MAAM;AAAA,sBACjBI,EAAYlB,EAAK,QAAQ,kBAAkB;AAAA,oBAAA,CAC5C;AAAA,oBACD,KAAK;AAAA,kBAEP,IAAA;AAAA,gBACL,CAAA,GAAG,IAAI;AAAA,cAAA,CACT;AAAA,cACD,GAAG;AAAA,YAAA,CACJ,KACDU,EAAoB,IAAI,EAAI;AAAA,YAC/BH,EAAOzB,CAAO,EAAE,cACZoB,EAAA,GAAcC,EAAaU,GAAmB,EAAE,KAAK,KAAK;AAAA,cACzD,SAASC,EAAS,MAAM;AAAA,gBACtBH,EAAaQ,GAAY;AAAA,kBACvB,eAAe3C,EAAM,WAAW;AAAA,gBAC/B,GAAA,MAAM,GAAG,CAAC,aAAa,CAAC;AAAA,cAAA,CAC5B;AAAA,cACD,GAAG;AAAA,YAAA,CACJ,KACDkC,EAAoB,IAAI,EAAI;AAAA,YAC/BH,EAAOZ,CAAmB,KACtBO,EAAW,GAAGC,EAAaU,GAAmB,EAAE,KAAK,KAAK;AAAA,cACzD,SAASC,EAAS,MAAM;AAAA,gBACtBH,EAAaS,GAAkB;AAAA,kBAC7B,sBAAsB9C,EAAQ,WAAW;AAAA,kBACzC,kBACZiC,EAAOT,CAAsB,IAAIS,EAAOlB,CAAuB,IAAI;AAAA,kBAEvD,8BAA8BY,EAAO,CAAC,MAAMA,EAAO,CAAC,IAAI,CAACoB,MACrE9C,EAAK,6BAA6B8C,CAAM;AAAA,mBAE3B,MAAM,GAAG,CAAC,sBAAsB,gBAAgB,CAAC;AAAA,cAAA,CACrD;AAAA,cACD,GAAG;AAAA,YAAA,CACJ,KACDX,EAAoB,IAAI,EAAI;AAAA,YAC/BH,EAAOX,CAAe,KAClBM,EAAW,GAAGC,EAAaU,GAAmB,EAAE,KAAK,KAAK;AAAA,cACzD,SAASC,EAAS,MAAM;AAAA,gBACtBH,EAAaJ,EAAO9B,CAAU,GAAG;AAAA,kBAC/B,SAAS;AAAA,kBACT,eAAe8B,EAAOf,CAAc;AAAA,kBACpC,SAASe,EAAOb,CAAiB;AAAA,kBACjC,MAAMM,EAAK,GAAG,oCAAoC;AAAA,gBAAA,GACjD,MAAM,GAAG,CAAC,eAAe,WAAW,MAAM,CAAC;AAAA,cAAA,CAC/C;AAAA,cACD,GAAG;AAAA,YAAA,CACJ,KACDU,EAAoB,IAAI,EAAI;AAAA,YAC/BH,EAAOzB,CAAO,EAAE,uBACZoB,EAAA,GAAcC,EAAaU,GAAmB,EAAE,KAAK,KAAK;AAAA,cACzD,SAASC,EAAS,MAAM;AAAA,gBACtBH,EAAaW,GAAqB;AAAA,kBAChC,aAAa9C,EAAM,WAAW;AAAA,gBAC7B,GAAA,MAAM,GAAG,CAAC,WAAW,CAAC;AAAA,cAAA,CAC1B;AAAA,cACD,GAAG;AAAA,YAAA,CACJ,KACDkC,EAAoB,IAAI,EAAI;AAAA,UAAA,CACjC;AAAA,QAAA,CACF;AAAA,QACDF,EAAoB,OAAOtC,IAAY;AAAA,UACrCsC,EAAoB,OAAOrC,IAAY;AAAA,YACrC+C,EAAYlB,EAAK,QAAQ,QAAQ;AAAA,YAC/BO,EAAO3B,CAAW,IAEhB8B,EAAoB,IAAI,EAAI,IAD5BQ,EAAYlB,EAAK,QAAQ,WAAW,EAAE,KAAK,EAAG,CAAA;AAAA,YAElDkB,EAAYlB,EAAK,QAAQ,QAAQ;AAAA,UAAA,CAClC;AAAA,QAAA,CACF;AAAA,MACF,CAAA,MACAE,EAAW,GAAGC,EAAaoB,GAAgB;AAAA,QAC1C,KAAK;AAAA,QACL,OAAO;AAAA,MAAA,GACN;AAAA,QACD,eAAeT,EAAS,MAAM;AAAA,UAC5BH,EAAaa,GAAoB,EAAE,OAAO,YAAY;AAAA,QAAA,CACvD;AAAA,QACD,GAAG;AAAA,MAAA,CACJ;AAAA,IAAA,GACJ,EAAE;AAAA,EAEX;AAEA,CAAC;"}
|
|
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,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("vue"),C=require("../../../Shared/PatientName.vue.js"),
|
|
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;
|
|
2
2
|
//# sourceMappingURL=TestResultDetail.vue.js.map
|
|
@@ -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 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}\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 },\n emits: [\n 'click:book-appointment',\n 'click:appointment-booking',\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> };\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 (_unref(visible).bookAppointment)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 2 }, {\n default: _withCtx(() => [\n _createVNode(BookAppointment, {\n \"onClick:book\": _cache[1] || (_cache[1] = ($event: any) => (emit('click:book-appointment')))\n })\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(visible).doctorNote)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 3 }, {\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: 4 }, {\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[2] || (_cache[2] = ($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: 5 }, {\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: 6 }, {\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","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, 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,22 +1,23 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
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
5
|
import F from "../../Shared/BookAppointment.vue.mjs";
|
|
6
|
-
import j from "../../Shared/
|
|
7
|
-
import q from "../../Shared/
|
|
8
|
-
import z from "../../Shared/
|
|
9
|
-
import G from "../../Shared/
|
|
10
|
-
import H from "../../Shared/
|
|
11
|
-
import J from "../../
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
|
|
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 = {
|
|
17
18
|
key: 0,
|
|
18
19
|
class: "consumer-test-result__ready"
|
|
19
|
-
},
|
|
20
|
+
}, X = { class: "psc-px-4" }, ft = /* @__PURE__ */ w({
|
|
20
21
|
__name: "TestResultDetail",
|
|
21
22
|
props: {
|
|
22
23
|
testResult: null,
|
|
@@ -24,126 +25,133 @@ const U = {
|
|
|
24
25
|
hidePatientInfo: { type: Boolean, default: !1 },
|
|
25
26
|
hideSummary: { type: Boolean, default: !1 },
|
|
26
27
|
timeline: { default: void 0 },
|
|
27
|
-
listActionEvent: { default: void 0 }
|
|
28
|
+
listActionEvent: { default: void 0 },
|
|
29
|
+
showResultReport: { type: Boolean, default: !1 }
|
|
28
30
|
},
|
|
29
31
|
emits: [
|
|
30
32
|
"click:book-appointment",
|
|
31
|
-
"click:appointment-booking"
|
|
33
|
+
"click:appointment-booking",
|
|
34
|
+
"click:result-report"
|
|
32
35
|
],
|
|
33
|
-
setup(
|
|
34
|
-
const t =
|
|
36
|
+
setup(v, { emit: m }) {
|
|
37
|
+
const t = v, S = A(
|
|
35
38
|
() => import("../../Shared/TakeSurvey.vue2.mjs")
|
|
36
|
-
), { healthSummaryItems:
|
|
39
|
+
), { healthSummaryItems: $, hideContent: g, isViewable: C, visible: u } = L({
|
|
37
40
|
testResult: _(t, "testResult"),
|
|
38
41
|
hidePatientInfo: _(t, "hidePatientInfo"),
|
|
39
42
|
hideSummary: _(t, "hideSummary")
|
|
40
|
-
}), { surveyConfig:
|
|
43
|
+
}), { surveyConfig: f } = U(), h = a(
|
|
41
44
|
() => b(t.testResult, "doctor-note")
|
|
42
|
-
), x =
|
|
43
|
-
() =>
|
|
45
|
+
), x = a(
|
|
46
|
+
() => M(
|
|
44
47
|
t.testResult.collection_channel,
|
|
45
48
|
t.testResult.is_free_consultant,
|
|
46
|
-
|
|
49
|
+
f.value
|
|
47
50
|
)
|
|
48
|
-
), B =
|
|
51
|
+
), B = a(
|
|
49
52
|
() => b(t.testResult)
|
|
50
|
-
), T =
|
|
53
|
+
), T = a(
|
|
51
54
|
() => !!t.testResult.doctor_note_detail && t.testResult.doctor_note_detail.length > 0
|
|
52
|
-
), E =
|
|
53
|
-
() =>
|
|
55
|
+
), E = a(
|
|
56
|
+
() => O(
|
|
54
57
|
t.testResult.nps_test_result,
|
|
55
58
|
t.testResult.collection_channel,
|
|
56
59
|
t.testResult.is_free_consultant,
|
|
57
|
-
|
|
60
|
+
f.value
|
|
58
61
|
)
|
|
59
|
-
), N =
|
|
60
|
-
() =>
|
|
62
|
+
), N = a(
|
|
63
|
+
() => Q(
|
|
61
64
|
t.testResult.nps_doctor_consult,
|
|
62
|
-
|
|
65
|
+
f.value
|
|
63
66
|
)
|
|
64
67
|
);
|
|
65
|
-
return (
|
|
66
|
-
t.loading ? (o(),
|
|
67
|
-
e(
|
|
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, [
|
|
68
71
|
R("div", null, [
|
|
69
|
-
e(
|
|
72
|
+
e(u).patientName ? (o(), n(I, {
|
|
70
73
|
key: 0,
|
|
71
74
|
"first-name": t.testResult.first_name,
|
|
72
75
|
class: "psc-px-4 psc-pb-2"
|
|
73
|
-
}, null, 8, ["first-name"])) :
|
|
74
|
-
|
|
76
|
+
}, null, 8, ["first-name"])) : l("", !0),
|
|
77
|
+
i(D, {
|
|
75
78
|
"test-result": t.testResult,
|
|
76
79
|
timeline: t.timeline,
|
|
77
80
|
"list-action-event": t.listActionEvent,
|
|
78
81
|
class: "psc-px-4 psc-pb-4"
|
|
79
82
|
}, null, 8, ["test-result", "timeline", "list-action-event"]),
|
|
80
|
-
e(
|
|
81
|
-
default:
|
|
82
|
-
|
|
83
|
-
items: e(
|
|
83
|
+
e(u).healthSummary ? (o(), n(c, { key: 1 }, {
|
|
84
|
+
default: r(() => [
|
|
85
|
+
i(K, {
|
|
86
|
+
items: e($),
|
|
84
87
|
"cta-button": t.testResult.is_free_consultant,
|
|
85
|
-
"onClick:ctaButton":
|
|
88
|
+
"onClick:ctaButton": s[0] || (s[0] = (p) => m("click:book-appointment"))
|
|
86
89
|
}, null, 8, ["items", "cta-button"])
|
|
87
90
|
]),
|
|
88
91
|
_: 1
|
|
89
|
-
})) :
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
92
|
+
})) : l("", !0),
|
|
93
|
+
t.showResultReport ? (o(), n(j, {
|
|
94
|
+
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 }, {
|
|
99
|
+
default: r(() => [
|
|
100
|
+
i(F, {
|
|
101
|
+
"onClick:book": s[3] || (s[3] = (p) => m("click:book-appointment"))
|
|
94
102
|
})
|
|
95
103
|
]),
|
|
96
104
|
_: 1
|
|
97
|
-
})) :
|
|
98
|
-
e(
|
|
99
|
-
default:
|
|
100
|
-
|
|
105
|
+
})) : l("", !0),
|
|
106
|
+
e(u).doctorNote ? (o(), n(c, { key: 4 }, {
|
|
107
|
+
default: r(() => [
|
|
108
|
+
i(q, {
|
|
101
109
|
"doctor-note": t.testResult.doctor_note
|
|
102
110
|
}, null, 8, ["doctor-note"])
|
|
103
111
|
]),
|
|
104
112
|
_: 1
|
|
105
|
-
})) :
|
|
106
|
-
e(T) ? (o(),
|
|
107
|
-
default:
|
|
108
|
-
|
|
109
|
-
"doctor-note-detail":
|
|
110
|
-
"survey-context": e(N) ? e(
|
|
111
|
-
"onClick:appointmentBooking":
|
|
113
|
+
})) : l("", !0),
|
|
114
|
+
e(T) ? (o(), n(c, { key: 5 }, {
|
|
115
|
+
default: r(() => [
|
|
116
|
+
i(z, {
|
|
117
|
+
"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))
|
|
112
120
|
}, null, 8, ["doctor-note-detail", "survey-context"])
|
|
113
121
|
]),
|
|
114
122
|
_: 1
|
|
115
|
-
})) :
|
|
116
|
-
e(E) ? (o(),
|
|
117
|
-
default:
|
|
118
|
-
|
|
123
|
+
})) : l("", !0),
|
|
124
|
+
e(E) ? (o(), n(c, { key: 6 }, {
|
|
125
|
+
default: r(() => [
|
|
126
|
+
i(e(S), {
|
|
119
127
|
variant: "bar",
|
|
120
128
|
"survey-slug": e(x),
|
|
121
129
|
context: e(B),
|
|
122
|
-
text:
|
|
130
|
+
text: d.$t("psc.test_result_take_survey_button")
|
|
123
131
|
}, null, 8, ["survey-slug", "context", "text"])
|
|
124
132
|
]),
|
|
125
133
|
_: 1
|
|
126
|
-
})) :
|
|
127
|
-
e(
|
|
128
|
-
default:
|
|
129
|
-
|
|
134
|
+
})) : l("", !0),
|
|
135
|
+
e(u).upcomingAppointment ? (o(), n(c, { key: 7 }, {
|
|
136
|
+
default: r(() => [
|
|
137
|
+
i(G, {
|
|
130
138
|
"time-slot": t.testResult.consult_time
|
|
131
139
|
}, null, 8, ["time-slot"])
|
|
132
140
|
]),
|
|
133
141
|
_: 1
|
|
134
|
-
})) :
|
|
142
|
+
})) : l("", !0)
|
|
135
143
|
]),
|
|
136
|
-
R("div",
|
|
137
|
-
|
|
138
|
-
e(
|
|
139
|
-
|
|
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")
|
|
140
148
|
])
|
|
141
|
-
])) : (o(),
|
|
149
|
+
])) : (o(), n(P, {
|
|
142
150
|
key: 1,
|
|
143
151
|
class: "psc-px-4"
|
|
144
152
|
}, {
|
|
145
|
-
"body-append":
|
|
146
|
-
|
|
153
|
+
"body-append": r(() => [
|
|
154
|
+
i(H, { class: "psc-mt-6" })
|
|
147
155
|
]),
|
|
148
156
|
_: 1
|
|
149
157
|
}))
|
|
@@ -152,6 +160,6 @@ const U = {
|
|
|
152
160
|
}
|
|
153
161
|
});
|
|
154
162
|
export {
|
|
155
|
-
|
|
163
|
+
ft as default
|
|
156
164
|
};
|
|
157
165
|
//# 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 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}\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 },\n emits: [\n 'click:book-appointment',\n 'click:appointment-booking',\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> };\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 (_unref(visible).bookAppointment)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 2 }, {\n default: _withCtx(() => [\n _createVNode(BookAppointment, {\n \"onClick:book\": _cache[1] || (_cache[1] = ($event: any) => (emit('click:book-appointment')))\n })\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true),\n (_unref(visible).doctorNote)\n ? (_openBlock(), _createBlock(TestResultSection, { key: 3 }, {\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: 4 }, {\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[2] || (_cache[2] = ($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: 5 }, {\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: 6 }, {\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","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, 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,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("vue"),c=require("pat-design-system"),
|
|
1
|
+
"use strict";const e=require("vue"),c=require("pat-design-system"),r={class:"psc-flex psc-w-full psc-items-start psc-justify-between"},a={class:"psc-rounded-md psc-bg-[#e6f0fe] psc-px-1.5 psc-py-0.5 psc-text-2xs psc-font-semibold psc-uppercase psc-text-blue-darken-1"},i={class:"psc-flex psc-w-full psc-items-center psc-justify-between psc-gap-1"},d={class:"psc-text-sm psc-font-semibold psc-text-black/[0.85]"},u={class:"psc-hidden psc-text-xs psc-text-black/[0.6] sm:psc-block"},m={class:"psc-flex psc-w-full psc-items-center"},_={class:"psc-flex-auto"},f={class:"psc-flex psc-items-center"},k={class:"psc-font-semibold psc-text-black/[0.85]"},b={class:"psc-ml-2 psc-rounded-lg psc-bg-[#e6f0fe] psc-px-2 psc-py-1 psc-text-xs psc-font-semibold psc-uppercase psc-text-blue-darken-1"},x={class:"psc-pt-1 psc-text-sm psc-text-black/[0.6]"},g={key:0,class:"psc-mt-4 psc-w-full psc-border-t psc-border-gray-lighten-2 psc-p-4"},h={key:1,class:"psc-w-full psc-pt-3"},y=e.defineComponent({__name:"BookAppointment",props:{compact:{type:Boolean,default:!1}},emits:["click:book"],setup(p,{emit:o}){const n=p;return(t,s)=>n.compact?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"psc-flex psc-h-full psc-w-full psc-flex-col psc-gap-2 psc-rounded-xl psc-border psc-border-gray-lighten-2 psc-bg-white psc-p-3 psc-text-left psc-shadow",onClick:s[0]||(s[0]=l=>o("click:book"))},[e.createElementVNode("span",r,[e.createVNode(e.unref(c.BIcon),{icon:"dgic-doctor-advice-thin",class:"psc-text-[1.5rem] psc-leading-none psc-text-blue-darken-1"}),e.createElementVNode("span",a,e.toDisplayString(t.$t("psc.test_result_free")),1)]),e.createElementVNode("span",i,[e.createElementVNode("span",d,e.toDisplayString(t.$t("psc.test_result_doctor_appointment")),1),e.createVNode(e.unref(c.BIcon),{icon:"dgic-chevron-right-thin",class:"psc-shrink-0 psc-text-xs psc-text-blue-darken-1"})]),e.createElementVNode("span",u,e.toDisplayString(t.$t("psc.test_result_contact_for_explanation")),1)])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",m,[e.createVNode(e.unref(c.BIcon),{icon:"dgic-doctor-advice-thin",class:"psc-pr-3 psc-text-[44px] psc-text-blue-darken-1"}),e.createElementVNode("div",_,[e.createElementVNode("div",f,[e.createElementVNode("div",k,e.toDisplayString(t.$t("psc.test_result_doctor_appointment")),1),e.createElementVNode("div",b,e.toDisplayString(t.$t("psc.test_result_free")),1)]),e.createElementVNode("div",x,e.toDisplayString(t.$t("psc.test_result_more_about_your_results")),1)])]),t.$slots.content?(e.openBlock(),e.createElementBlock("div",g,[e.renderSlot(t.$slots,"content")])):e.createCommentVNode("",!0),t.$slots.content?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",h,[e.createVNode(e.unref(c.BButton),{class:"psc-w-full",type:"secondary",onClick:s[1]||(s[1]=l=>o("click:book"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.$t("psc.test_result_call_support")),1)]),_:1})]))],64))}});module.exports=y;
|
|
2
2
|
//# sourceMappingURL=BookAppointment.vue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BookAppointment.vue.js","sources":["../../../../../src/components/TestResult/Shared/BookAppointment.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode,
|
|
1
|
+
{"version":3,"file":"BookAppointment.vue.js","sources":["../../../../../src/components/TestResult/Shared/BookAppointment.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderSlot as _renderSlot, createTextVNode as _createTextVNode, withCtx as _withCtx, Fragment as _Fragment } from \"vue\"\n\nconst _hoisted_1 = { class: \"psc-flex psc-w-full psc-items-start psc-justify-between\" }\nconst _hoisted_2 = { class: \"psc-rounded-md psc-bg-[#e6f0fe] psc-px-1.5 psc-py-0.5 psc-text-2xs psc-font-semibold psc-uppercase psc-text-blue-darken-1\" }\nconst _hoisted_3 = { class: \"psc-flex psc-w-full psc-items-center psc-justify-between psc-gap-1\" }\nconst _hoisted_4 = { class: \"psc-text-sm psc-font-semibold psc-text-black/[0.85]\" }\nconst _hoisted_5 = { class: \"psc-hidden psc-text-xs psc-text-black/[0.6] sm:psc-block\" }\nconst _hoisted_6 = { class: \"psc-flex psc-w-full psc-items-center\" }\nconst _hoisted_7 = { class: \"psc-flex-auto\" }\nconst _hoisted_8 = { class: \"psc-flex psc-items-center\" }\nconst _hoisted_9 = { class: \"psc-font-semibold psc-text-black/[0.85]\" }\nconst _hoisted_10 = { class: \"psc-ml-2 psc-rounded-lg psc-bg-[#e6f0fe] psc-px-2 psc-py-1 psc-text-xs psc-font-semibold psc-uppercase psc-text-blue-darken-1\" }\nconst _hoisted_11 = { class: \"psc-pt-1 psc-text-sm psc-text-black/[0.6]\" }\nconst _hoisted_12 = {\n key: 0,\n class: \"psc-mt-4 psc-w-full psc-border-t psc-border-gray-lighten-2 psc-p-4\"\n}\nconst _hoisted_13 = {\n key: 1,\n class: \"psc-w-full psc-pt-3\"\n}\n\nimport { BButton, BIcon } from 'pat-design-system';\n\n/**\n * Props\n */\nexport interface Props {\n // Compact layout: small tile, whole card is clickable, used side by side with ResultReport\n compact?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BookAppointment',\n props: {\n compact: { type: Boolean, default: false }\n },\n emits: ['click:book'],\n setup(__props: any, { emit }) {\n\nconst props = __props as { compact: boolean };\n\n\n\n/**\n * Events\n */\n\n\nreturn (_ctx: any,_cache: any) => {\n return (props.compact)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n type: \"button\",\n class: \"psc-flex psc-h-full psc-w-full psc-flex-col psc-gap-2 psc-rounded-xl psc-border psc-border-gray-lighten-2 psc-bg-white psc-p-3 psc-text-left psc-shadow\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (emit('click:book')))\n }, [\n _createElementVNode(\"span\", _hoisted_1, [\n _createVNode(_unref(BIcon), {\n icon: \"dgic-doctor-advice-thin\",\n class: \"psc-text-[1.5rem] psc-leading-none psc-text-blue-darken-1\"\n }),\n _createElementVNode(\"span\", _hoisted_2, _toDisplayString(_ctx.$t('psc.test_result_free')), 1)\n ]),\n _createElementVNode(\"span\", _hoisted_3, [\n _createElementVNode(\"span\", _hoisted_4, _toDisplayString(_ctx.$t('psc.test_result_doctor_appointment')), 1),\n _createVNode(_unref(BIcon), {\n icon: \"dgic-chevron-right-thin\",\n class: \"psc-shrink-0 psc-text-xs psc-text-blue-darken-1\"\n })\n ]),\n _createElementVNode(\"span\", _hoisted_5, _toDisplayString(_ctx.$t('psc.test_result_contact_for_explanation')), 1)\n ]))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _createElementVNode(\"div\", _hoisted_6, [\n _createVNode(_unref(BIcon), {\n icon: \"dgic-doctor-advice-thin\",\n class: \"psc-pr-3 psc-text-[44px] psc-text-blue-darken-1\"\n }),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"div\", _hoisted_8, [\n _createElementVNode(\"div\", _hoisted_9, _toDisplayString(_ctx.$t('psc.test_result_doctor_appointment')), 1),\n _createElementVNode(\"div\", _hoisted_10, _toDisplayString(_ctx.$t('psc.test_result_free')), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_11, _toDisplayString(_ctx.$t('psc.test_result_more_about_your_results')), 1)\n ])\n ]),\n (_ctx.$slots.content)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n _renderSlot(_ctx.$slots, \"content\")\n ]))\n : _createCommentVNode(\"\", true),\n (!_ctx.$slots.content)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_13, [\n _createVNode(_unref(BButton), {\n class: \"psc-w-full\",\n type: \"secondary\",\n onClick: _cache[1] || (_cache[1] = ($event: any) => (emit('click:book')))\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('psc.test_result_call_support')), 1)\n ]),\n _: 1\n })\n ]))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_sfc_main","_defineComponent","__props","emit","props","_ctx","_cache","_openBlock","_createElementBlock","$event","_createElementVNode","_createVNode","_unref","BIcon","_toDisplayString","_Fragment","_renderSlot","_createCommentVNode","BButton","_withCtx","_createTextVNode"],"mappings":"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"}
|