From 7f8c72409fcaf283440d601770911309e71f3e4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=A4=A9=E9=AA=84?= <5307576@qq.com> Date: Wed, 24 Jun 2026 11:41:04 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=BB=BA=E4=BC=9A=E8=AF=9Did?= =?UTF-8?q?=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../{auth.BCdV446X.js => auth.B66V4Y6g.js} | 2 +- .../{cases.Q7p7j9rz.js => cases.DMDn0OYL.js} | 2 +- dist/assets/index-8wOL_3gR.js | 25 ++++++++++++ dist/assets/index-DfCP9RI3.js | 25 ------------ ...VM.css => learning-assistant-OcDOS-c7.css} | 2 +- ...ion.Bg2Ef9wA.js => navigation.Blicf8xr.js} | 2 +- ...> pages-assessment-assessment.CYNULdGO.js} | 2 +- ...iFIat.js => pages-cases-cases.HRYBKfRi.js} | 2 +- ...gzg1tzh.js => pages-chat-chat.OpBAkaAZ.js} | 2 +- ...jDo.js => pages-config-config.2lX4qMcJ.js} | 2 +- ... => pages-diagnosis-diagnosis.Wb08TNeY.js} | 2 +- ...lkj-jIS.js => pages-home-home.BRlMILRW.js} | 2 +- ...WSJz4.js => pages-index-index.CbcBwpWF.js} | 2 +- ...g-assistant-learning-assistant.CCQRDo6G.js | 1 - ...g-assistant-learning-assistant.J4N36eXO.js | 1 + ...js => pages-matching-matching.0jzQ00td.js} | 2 +- ...ages-profile-profile-analysis.CWRfwO-9.js} | 2 +- ...pages-profile-profile-records.C64CKJK3.js} | 2 +- ...r.js => pages-profile-profile.D4u8tO5s.js} | 2 +- ...js => pages-scenario-scenario.Ihs6KhW1.js} | 2 +- ...js => pages-teaching-teaching.DzNuOlIL.js} | 2 +- ... => pages-treatment-treatment.CEAKOxru.js} | 2 +- ...rofile.CDLVfXPi.js => profile.COAzSw-i.js} | 2 +- ...ession.D2K7L0GR.js => session.LaNXUMh-.js} | 2 +- dist/assets/uni-app.es.25qqJrzj.js | 1 + dist/assets/uni-app.es.DDI13Fy0.js | 1 - dist/index.html | 2 +- .../learning-assistant/learning-assistant.vue | 39 ++++++++++++------- 28 files changed, 74 insertions(+), 61 deletions(-) rename dist/assets/{auth.BCdV446X.js => auth.B66V4Y6g.js} (95%) rename dist/assets/{cases.Q7p7j9rz.js => cases.DMDn0OYL.js} (96%) create mode 100644 dist/assets/index-8wOL_3gR.js delete mode 100644 dist/assets/index-DfCP9RI3.js rename dist/assets/{learning-assistant-DgYniJVM.css => learning-assistant-OcDOS-c7.css} (59%) rename dist/assets/{navigation.Bg2Ef9wA.js => navigation.Blicf8xr.js} (89%) rename dist/assets/{pages-assessment-assessment.BnDM0Jtm.js => pages-assessment-assessment.CYNULdGO.js} (98%) rename dist/assets/{pages-cases-cases.DMWiFIat.js => pages-cases-cases.HRYBKfRi.js} (97%) rename dist/assets/{pages-chat-chat.Cgzg1tzh.js => pages-chat-chat.OpBAkaAZ.js} (97%) rename dist/assets/{pages-config-config.h5bc7jDo.js => pages-config-config.2lX4qMcJ.js} (97%) rename dist/assets/{pages-diagnosis-diagnosis.DRtwnust.js => pages-diagnosis-diagnosis.Wb08TNeY.js} (94%) rename dist/assets/{pages-home-home.Dlkj-jIS.js => pages-home-home.BRlMILRW.js} (96%) rename dist/assets/{pages-index-index.CtHWSJz4.js => pages-index-index.CbcBwpWF.js} (97%) delete mode 100644 dist/assets/pages-learning-assistant-learning-assistant.CCQRDo6G.js create mode 100644 dist/assets/pages-learning-assistant-learning-assistant.J4N36eXO.js rename dist/assets/{pages-matching-matching.DEEqkPi2.js => pages-matching-matching.0jzQ00td.js} (93%) rename dist/assets/{pages-profile-profile-analysis.DXSDR32A.js => pages-profile-profile-analysis.CWRfwO-9.js} (97%) rename dist/assets/{pages-profile-profile-records.BLbtOxS8.js => pages-profile-profile-records.C64CKJK3.js} (95%) rename dist/assets/{pages-profile-profile.Q0dqF9dr.js => pages-profile-profile.D4u8tO5s.js} (97%) rename dist/assets/{pages-scenario-scenario.LpxrrFKu.js => pages-scenario-scenario.Ihs6KhW1.js} (97%) rename dist/assets/{pages-teaching-teaching.C2yN6RJA.js => pages-teaching-teaching.DzNuOlIL.js} (97%) rename dist/assets/{pages-treatment-treatment.DmWM0nMA.js => pages-treatment-treatment.CEAKOxru.js} (95%) rename dist/assets/{profile.CDLVfXPi.js => profile.COAzSw-i.js} (94%) rename dist/assets/{session.D2K7L0GR.js => session.LaNXUMh-.js} (98%) create mode 100644 dist/assets/uni-app.es.25qqJrzj.js delete mode 100644 dist/assets/uni-app.es.DDI13Fy0.js diff --git a/dist/assets/auth.BCdV446X.js b/dist/assets/auth.B66V4Y6g.js similarity index 95% rename from dist/assets/auth.BCdV446X.js rename to dist/assets/auth.B66V4Y6g.js index a0ab7b9..8cedda8 100644 --- a/dist/assets/auth.BCdV446X.js +++ b/dist/assets/auth.B66V4Y6g.js @@ -1 +1 @@ -import{C as t,D as e}from"./index-DfCP9RI3.js";const n="/server/api";class r extends Error{constructor(t,e,n){super(t),this.name="ApiRequestError",this.code=e,this.statusCode=n}}function o(t=!1){const n={"Content-Type":"application/json"};if(!t)return n;const r=function(){try{return e("clinical-thinking-access-token")||""}catch{return""}}();return r&&(n.Authorization=`Bearer ${r}`),n}function s(e,n,s="POST",i=!1){return new Promise(((u,a)=>{t({url:`/server/api${e}`,method:s,timeout:1e4,header:o(i),data:n,success:t=>{if(t.statusCode>=200&&t.statusCode<300)return void u(t.data);const e=t.data,n="string"==typeof(null==e?void 0:e.code)?e.code:void 0;a(new r(function(t,e){if(t&&"object"==typeof t){const e=t,n=e.message||e.detail||e.error;if("string"==typeof n&&n.trim())return n}return e}(t.data,`请求失败(${t.statusCode})`),n,t.statusCode))},fail:t=>{a(new r(t.errMsg||"无法连接服务"))}})}))}function i(t,e="login"){return s("/user/auth/send-code/",{phone:t,scene:e})}function u(){return s("/user/institution_list/",null,"GET")}function a(){return s("/user/institution_info/",null,"GET",!0)}function c(){return s("/user/my_departments/",null,"GET",!0)}function f(t){return s("/user/auth/login-code/",t).then((t=>{if(function(t){if(!t||"object"!=typeof t)return!1;const e=t,n=e.tokens;return Boolean(e.tokens&&"string"==typeof(null==n?void 0:n.access)&&"string"==typeof(null==n?void 0:n.refresh))}(t))return t;throw new Error("登录接口返回数据格式异常")}))}export{r as A,n as a,c as b,a as c,u as f,f as l,i as s}; +import{C as t,D as e}from"./index-8wOL_3gR.js";const n="/server/api";class r extends Error{constructor(t,e,n){super(t),this.name="ApiRequestError",this.code=e,this.statusCode=n}}function o(t=!1){const n={"Content-Type":"application/json"};if(!t)return n;const r=function(){try{return e("clinical-thinking-access-token")||""}catch{return""}}();return r&&(n.Authorization=`Bearer ${r}`),n}function s(e,n,s="POST",i=!1){return new Promise(((u,a)=>{t({url:`/server/api${e}`,method:s,timeout:1e4,header:o(i),data:n,success:t=>{if(t.statusCode>=200&&t.statusCode<300)return void u(t.data);const e=t.data,n="string"==typeof(null==e?void 0:e.code)?e.code:void 0;a(new r(function(t,e){if(t&&"object"==typeof t){const e=t,n=e.message||e.detail||e.error;if("string"==typeof n&&n.trim())return n}return e}(t.data,`请求失败(${t.statusCode})`),n,t.statusCode))},fail:t=>{a(new r(t.errMsg||"无法连接服务"))}})}))}function i(t,e="login"){return s("/user/auth/send-code/",{phone:t,scene:e})}function u(){return s("/user/institution_list/",null,"GET")}function a(){return s("/user/institution_info/",null,"GET",!0)}function c(){return s("/user/my_departments/",null,"GET",!0)}function f(t){return s("/user/auth/login-code/",t).then((t=>{if(function(t){if(!t||"object"!=typeof t)return!1;const e=t,n=e.tokens;return Boolean(e.tokens&&"string"==typeof(null==n?void 0:n.access)&&"string"==typeof(null==n?void 0:n.refresh))}(t))return t;throw new Error("登录接口返回数据格式异常")}))}export{r as A,n as a,c as b,a as c,u as f,f as l,i as s}; diff --git a/dist/assets/cases.Q7p7j9rz.js b/dist/assets/cases.DMDn0OYL.js similarity index 96% rename from dist/assets/cases.Q7p7j9rz.js rename to dist/assets/cases.DMDn0OYL.js index 62a9bea..8341cb2 100644 --- a/dist/assets/cases.Q7p7j9rz.js +++ b/dist/assets/cases.DMDn0OYL.js @@ -1 +1 @@ -import{D as e,s as t,P as n,C as r}from"./index-DfCP9RI3.js";import{a as i,A as c}from"./auth.BCdV446X.js";const a={recommended:"/case/mobile/recommended/",specialty:"/case/mobile/specialty/",weak:"/case/mobile/weak/",teaching:"/case/mobile/teaching/","teacher-task":"/case/mobile/teacher-task/"},o=["blue","teal","pink","orange","purple","green"];async function s(e="recommended",t={}){const n=a[e]||a.recommended,s=await function(e,t){return new Promise(((n,a)=>{r({url:`${i}${y(e,t)}`,method:"GET",timeout:1e4,header:f(),success:e=>{if(e.statusCode>=200&&e.statusCode<300)return void n(e.data);const t=e.data,r="string"==typeof(null==t?void 0:t.code)?t.code:void 0;a(new c(function(e,t){if(e&&"object"==typeof e){const t=e,n=t.message||t.detail||t.error;if("string"==typeof n&&n.trim())return n}return t}(e.data,`病例列表加载失败(${e.statusCode})`),r,e.statusCode))},fail:e=>{a(new c(e.errMsg||"无法连接服务"))}})}))}(n,t),u=function(e,t){const n=Array.isArray(e.results)?e.results:[];return{count:b(e.count,n.length),next:"string"==typeof e.next?e.next:null,previous:"string"==typeof e.previous?e.previous:null,results:n.map(((e,n)=>function(e,t,n){const r=h(e.id,`case-${n+1}`),i=h(e.title,"未命名病例"),c=(p=e.patient_gender,"female"===p||"女"===p?"女":"男"),a=h(e.department_name,"未配置科室"),s=h(e.case_type),u=h(e.case_type_display,s||"练习病例"),l=h(e.chief_complaint,i),m="teaching"===t||"teaching"===s?"teaching":"training";var p;return{id:r,title:i,patientName:"女"===c?"患者女士":"患者先生",gender:c,age:b(e.patient_age,0),department:a,departmentId:_(e.department),scene:u,caseNo:r,tone:o[n%o.length],mode:m,caseType:s,caseTypeDisplay:u,difficulty:h(e.difficulty),difficultyScore:_(e.difficulty_score),chiefComplaint:l,description:h(e.description),tags:h(e.tags),competencyTags:Array.isArray(e.competency_tags)?e.competency_tags.map(String):[],estimatedMinutes:_(e.estimated_minutes),osceEnabled:Boolean(e.osce_enabled),myBestScore:"number"==typeof e.my_best_score?e.my_best_score:null,myTrainCount:"number"==typeof e.my_train_count?e.my_train_count:null,createdAt:h(e.created_at),source:t}}(e,t,n)))}}(s,e);return u}function u(e){t("clinical-thinking-prefetched-case-list",e)}function l(){n("clinical-thinking-prefetched-case-list")}function m(t,n){const r=e("clinical-thinking-prefetched-case-list");if(!function(e){if(!e||"object"!=typeof e)return!1;const t=e;return function(e){return"recommended"===e||"specialty"===e||"weak"===e||"teaching"===e||"teacher-task"===e}(t.source)&&"object"==typeof t.query&&null!==t.query&&!!t.page&&"object"==typeof t.page&&Array.isArray(t.page.results)&&"number"==typeof t.cachedAt}(r))return null;return Date.now()-r.cachedAt<=6e4?r.source===t&&(i=r.query,c=n,["search","case_type","difficulty","department","page","page_size"].every((e=>g(i[e])===g(c[e]))))?(l(),r.page):null:(l(),null);var i,c}function p(){const t=e("clinical-thinking-selected-case");return t&&"object"==typeof t?t:null}function d(e){if(!e)return 0;const t=Number(e.id);if(Number.isInteger(t)&&t>0)return t;const n=Number(e.caseNo);if(Number.isInteger(n)&&n>0)return n;const r=String(e.id).match(/\d+/),i=r?Number(r[0]):0;return Number.isInteger(i)&&i>0?i:0}function f(){const t={"Content-Type":"application/json",Accept:"application/json"},n=function(){try{const t=e("clinical-thinking-access-token");return"string"==typeof t?t.trim():""}catch{return""}}();return n&&(t.Authorization=`Bearer ${n}`),t}function y(e,t){const n=Object.entries(t).filter((([,e])=>null!=e&&""!==e)).map((([e,t])=>`${encodeURIComponent(e)}=${encodeURIComponent(String(t))}`)).join("&");return n?`${e}?${n}`:e}function g(e){return null==e||""===e?"":String(e)}function h(e,t=""){return"string"==typeof e?e.trim()||t:"number"==typeof e?String(e):t}function b(e,t=0){const n=Number(e);return Number.isFinite(n)?n:t}function _(e){const t=Number(e);return Number.isFinite(t)?t:void 0}export{d as a,l as c,s as f,p as r,u as s,m as t}; +import{D as e,s as t,P as n,C as r}from"./index-8wOL_3gR.js";import{a as i,A as c}from"./auth.B66V4Y6g.js";const a={recommended:"/case/mobile/recommended/",specialty:"/case/mobile/specialty/",weak:"/case/mobile/weak/",teaching:"/case/mobile/teaching/","teacher-task":"/case/mobile/teacher-task/"},o=["blue","teal","pink","orange","purple","green"];async function s(e="recommended",t={}){const n=a[e]||a.recommended,s=await function(e,t){return new Promise(((n,a)=>{r({url:`${i}${y(e,t)}`,method:"GET",timeout:1e4,header:f(),success:e=>{if(e.statusCode>=200&&e.statusCode<300)return void n(e.data);const t=e.data,r="string"==typeof(null==t?void 0:t.code)?t.code:void 0;a(new c(function(e,t){if(e&&"object"==typeof e){const t=e,n=t.message||t.detail||t.error;if("string"==typeof n&&n.trim())return n}return t}(e.data,`病例列表加载失败(${e.statusCode})`),r,e.statusCode))},fail:e=>{a(new c(e.errMsg||"无法连接服务"))}})}))}(n,t),u=function(e,t){const n=Array.isArray(e.results)?e.results:[];return{count:b(e.count,n.length),next:"string"==typeof e.next?e.next:null,previous:"string"==typeof e.previous?e.previous:null,results:n.map(((e,n)=>function(e,t,n){const r=h(e.id,`case-${n+1}`),i=h(e.title,"未命名病例"),c=(p=e.patient_gender,"female"===p||"女"===p?"女":"男"),a=h(e.department_name,"未配置科室"),s=h(e.case_type),u=h(e.case_type_display,s||"练习病例"),l=h(e.chief_complaint,i),m="teaching"===t||"teaching"===s?"teaching":"training";var p;return{id:r,title:i,patientName:"女"===c?"患者女士":"患者先生",gender:c,age:b(e.patient_age,0),department:a,departmentId:_(e.department),scene:u,caseNo:r,tone:o[n%o.length],mode:m,caseType:s,caseTypeDisplay:u,difficulty:h(e.difficulty),difficultyScore:_(e.difficulty_score),chiefComplaint:l,description:h(e.description),tags:h(e.tags),competencyTags:Array.isArray(e.competency_tags)?e.competency_tags.map(String):[],estimatedMinutes:_(e.estimated_minutes),osceEnabled:Boolean(e.osce_enabled),myBestScore:"number"==typeof e.my_best_score?e.my_best_score:null,myTrainCount:"number"==typeof e.my_train_count?e.my_train_count:null,createdAt:h(e.created_at),source:t}}(e,t,n)))}}(s,e);return u}function u(e){t("clinical-thinking-prefetched-case-list",e)}function l(){n("clinical-thinking-prefetched-case-list")}function m(t,n){const r=e("clinical-thinking-prefetched-case-list");if(!function(e){if(!e||"object"!=typeof e)return!1;const t=e;return function(e){return"recommended"===e||"specialty"===e||"weak"===e||"teaching"===e||"teacher-task"===e}(t.source)&&"object"==typeof t.query&&null!==t.query&&!!t.page&&"object"==typeof t.page&&Array.isArray(t.page.results)&&"number"==typeof t.cachedAt}(r))return null;return Date.now()-r.cachedAt<=6e4?r.source===t&&(i=r.query,c=n,["search","case_type","difficulty","department","page","page_size"].every((e=>g(i[e])===g(c[e]))))?(l(),r.page):null:(l(),null);var i,c}function p(){const t=e("clinical-thinking-selected-case");return t&&"object"==typeof t?t:null}function d(e){if(!e)return 0;const t=Number(e.id);if(Number.isInteger(t)&&t>0)return t;const n=Number(e.caseNo);if(Number.isInteger(n)&&n>0)return n;const r=String(e.id).match(/\d+/),i=r?Number(r[0]):0;return Number.isInteger(i)&&i>0?i:0}function f(){const t={"Content-Type":"application/json",Accept:"application/json"},n=function(){try{const t=e("clinical-thinking-access-token");return"string"==typeof t?t.trim():""}catch{return""}}();return n&&(t.Authorization=`Bearer ${n}`),t}function y(e,t){const n=Object.entries(t).filter((([,e])=>null!=e&&""!==e)).map((([e,t])=>`${encodeURIComponent(e)}=${encodeURIComponent(String(t))}`)).join("&");return n?`${e}?${n}`:e}function g(e){return null==e||""===e?"":String(e)}function h(e,t=""){return"string"==typeof e?e.trim()||t:"number"==typeof e?String(e):t}function b(e,t=0){const n=Number(e);return Number.isFinite(n)?n:t}function _(e){const t=Number(e);return Number.isFinite(t)?t:void 0}export{d as a,l as c,s as f,p as r,u as s,m as t}; diff --git a/dist/assets/index-8wOL_3gR.js b/dist/assets/index-8wOL_3gR.js new file mode 100644 index 0000000..1b2c712 --- /dev/null +++ b/dist/assets/index-8wOL_3gR.js @@ -0,0 +1,25 @@ +function __vite__mapDeps(indexes) { + if (!__vite__mapDeps.viteFileDeps) { + __vite__mapDeps.viteFileDeps = ["./pages-index-index.CbcBwpWF.js","./auth.B66V4Y6g.js","./pages-config-config.2lX4qMcJ.js","./config-doctor.TgARj_nM.js","./navigation.Blicf8xr.js","./_plugin-vue_export-helper.BCo6x5W8.js","./config-B4-mlf5M.css","./pages-profile-profile.D4u8tO5s.js","./profile.COAzSw-i.js","./session.LaNXUMh-.js","./profile-BT4uudyf.css","./index-55XRfSc_.css","./pages-home-home.BRlMILRW.js","./home-BD0B3vcH.css","./pages-matching-matching.0jzQ00td.js","./uni-app.es.25qqJrzj.js","./cases.DMDn0OYL.js","./matching-CxT_etxi.css","./pages-cases-cases.HRYBKfRi.js","./cases-DGalqRIs.css","./pages-scenario-scenario.Ihs6KhW1.js","./scenario-DapYnPh4.css","./pages-chat-chat.OpBAkaAZ.js","./chat-CkFGeMvf.css","./pages-profile-profile-analysis.CWRfwO-9.js","./profile-analysis-DuRmXAR7.css","./pages-profile-profile-records.C64CKJK3.js","./profile-records-C5tRHAvK.css","./pages-learning-assistant-learning-assistant.J4N36eXO.js","./learning-assistant-OcDOS-c7.css","./pages-teaching-teaching.DzNuOlIL.js","./teaching-BLhZOmNZ.css","./pages-diagnosis-diagnosis.Wb08TNeY.js","./diagnosis-BxzDEbGJ.css","./pages-treatment-treatment.CEAKOxru.js","./treatment-C2Wi3XDZ.css","./pages-assessment-assessment.CYNULdGO.js","./assessment-Dx6r_s4g.css"] + } + return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) +} +!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))t(e);new MutationObserver((e=>{for(const n of e)if("childList"===n.type)for(const e of n.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&t(e)})).observe(document,{childList:!0,subtree:!0})}function t(e){if(e.ep)return;e.ep=!0;const t=function(e){const t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?t.credentials="include":"anonymous"===e.crossOrigin?t.credentials="omit":t.credentials="same-origin",t}(e);fetch(e.href,t)}}();const e={},t=function(t,n,o){let r=Promise.resolve();if(n&&n.length>0){const t=document.getElementsByTagName("link"),i=document.querySelector("meta[property=csp-nonce]"),s=(null==i?void 0:i.nonce)||(null==i?void 0:i.getAttribute("nonce"));r=Promise.all(n.map((n=>{if(n=function(e,t){return new URL(e,t).href}(n,o),n in e)return;e[n]=!0;const r=n.endsWith(".css"),i=r?'[rel="stylesheet"]':"";if(!!o)for(let e=t.length-1;e>=0;e--){const o=t[e];if(o.href===n&&(!r||"stylesheet"===o.rel))return}else if(document.querySelector(`link[href="${n}"]${i}`))return;const a=document.createElement("link");return a.rel=r?"stylesheet":"modulepreload",r||(a.as="script",a.crossOrigin=""),a.href=n,s&&a.setAttribute("nonce",s),document.head.appendChild(a),r?new Promise(((e,t)=>{a.addEventListener("load",e),a.addEventListener("error",(()=>t(new Error(`Unable to preload CSS for ${n}`))))})):void 0})))}return r.then((()=>t())).catch((e=>{const t=new Event("vite:preloadError",{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}))}; +/** +* @vue/shared v3.4.21 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/ +function n(e,t){const n=new Set(e.split(","));return t?e=>n.has(e.toLowerCase()):e=>n.has(e)}const o={},r=[],i=()=>{},s=()=>!1,a=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),l=e=>e.startsWith("onUpdate:"),c=Object.assign,u=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},d=Object.prototype.hasOwnProperty,f=(e,t)=>d.call(e,t),p=Array.isArray,h=e=>"[object Map]"===x(e),g=e=>"[object Set]"===x(e),m=e=>"function"==typeof e,v=e=>"string"==typeof e,y=e=>"symbol"==typeof e,b=e=>null!==e&&"object"==typeof e,_=e=>(b(e)||m(e))&&m(e.then)&&m(e.catch),w=Object.prototype.toString,x=e=>w.call(e),S=e=>"[object Object]"===x(e),T=e=>v(e)&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,C=n(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),E=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},k=/-(\w)/g,O=E((e=>e.replace(k,((e,t)=>t?t.toUpperCase():"")))),L=/\B([A-Z])/g,$=E((e=>e.replace(L,"-$1").toLowerCase())),A=E((e=>e.charAt(0).toUpperCase()+e.slice(1))),P=E((e=>e?`on${A(e)}`:"")),R=(e,t)=>!Object.is(e,t),B=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},j=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let M;const I=()=>M||(M="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{});function V(e){if(p(e)){const t={};for(let n=0;n{if(e){const n=e.split(D);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}function U(e){let t="";if(v(e))t=e;else if(p(e))for(let n=0;nv(e)?e:null==e?"":p(e)||b(e)&&(e.toString===w||!m(e.toString))?JSON.stringify(e,K,2):String(e),K=(e,t)=>t&&t.__v_isRef?K(e,t.value):h(t)?{[`Map(${t.size})`]:[...t.entries()].reduce(((e,[t,n],o)=>(e[Y(t,o)+" =>"]=n,e)),{})}:g(t)?{[`Set(${t.size})`]:[...t.values()].map((e=>Y(e)))}:y(t)?Y(t):!b(t)||p(t)||S(t)?t:String(t),Y=(e,t="")=>{var n;return y(e)?`Symbol(${null!=(n=e.description)?n:t})`:e};var G={};const J=["ad","ad-content-page","ad-draw","audio","button","camera","canvas","checkbox","checkbox-group","cover-image","cover-view","editor","form","functional-page-navigator","icon","image","input","label","live-player","live-pusher","map","movable-area","movable-view","navigator","official-account","open-data","picker","picker-view","picker-view-column","progress","radio","radio-group","rich-text","scroll-view","slider","swiper","swiper-item","switch","text","textarea","video","view","web-view","location-picker","location-view"].map((e=>"uni-"+e)),Z=["page-container","list-view","list-item","sticky-section","sticky-header","cloud-db-element","loading-element","loading"].map((e=>"uni-"+e)),Q=["list-item"].map((e=>"uni-"+e));function ee(e){if(-1!==Q.indexOf(e))return!1;const t="uni-"+e.replace("v-uni-","");return"true"!==G.UNI_APP_X?-1!==J.indexOf(t):-1!==J.indexOf(t)||-1!==Z.indexOf(t)}const te=/^([a-z-]+:)?\/\//i,ne=/^data:.*,.*/,oe="onShow",re="onLoad";function ie(e){return void 0===e?null:e}class se{static keys(e){return Object.keys(e)}static assign(e,...t){for(let n=0;n{this[t]=e}));else for(const t in e)Object.prototype.hasOwnProperty.call(e,t)&&(this[t]=e[t]);!function(e){const t=["_resolveKeyPath","_getValue","toJSON","get","set","getAny","getString","getNumber","getBoolean","getJSON","getArray","toMap","forEach"],n={};for(let o=0;o0&&(n.push(t),t="");break;case"[":o=!0,t.length>0&&(n.push(t),t="");break;case"]":if(!o)return[];if(!(t.length>0))return[];{const e=t[0],o=t[t.length-1];if('"'===e&&'"'===o||"'"===e&&"'"===o||"`"===e&&"`"===o){if(!(t.length>2))return[];t=t.slice(1,-1)}else if(!/^\d+$/.test(t))return[];n.push(t),t=""}o=!1;break;default:t+=i}r===e.length-1&&t.length>0&&(n.push(t),t="")}return n}_getValue(e,t){const n=this._resolveKeyPath(e),o=ie(t);if(0===n.length)return o;let r=this;for(let i=0;i{t[n]=e[n]})),V(t)}if(e instanceof Map){const t={};return e.forEach(((e,n)=>{t[n]=e})),V(t)}if(v(e))return W(e);if(p(e)){const t={};for(let n=0;n{e[n]&&(t+=n+" ")}));else if(e instanceof Map)e.forEach(((e,n)=>{e&&(t+=n+" ")}));else if(p(e))for(let n=0;n(e&&(n=e.apply(t,o),e=null),n)}function he(e){return O(e.substring(5))}const ge=pe((e=>{e=e||(e=>e.tagName.startsWith("UNI-"));const t=HTMLElement.prototype,n=t.setAttribute;t.setAttribute=function(t,o){if(t.startsWith("data-")&&e(this)){(this.__uniDataset||(this.__uniDataset={}))[he(t)]=o}/^\d/.test(t)||n.call(this,t,o)};const o=t.removeAttribute;t.removeAttribute=function(t){this.__uniDataset&&t.startsWith("data-")&&e(this)&&delete this.__uniDataset[he(t)],o.call(this,t)}}));function me(e){return c({},e.dataset,e.__uniDataset)}const ve=new RegExp("\"[^\"]+\"|'[^']+'|url\\([^)]+\\)|(\\d*\\.?\\d+)[r|u]px","g");function ye(e){return{passive:e}}function be(e){const{id:t,offsetTop:n,offsetLeft:o}=e;return{id:t,dataset:me(e),offsetTop:n,offsetLeft:o}}function _e(e){try{return decodeURIComponent(""+e)}catch(t){}return""+e}function we(e={}){const t={};return Object.keys(e).forEach((n=>{try{t[n]=_e(e[n])}catch(o){t[n]=e[n]}})),t}const xe=/\+/g;function Se(e){const t={};if(""===e||"?"===e)return t;const n=("?"===e[0]?e.slice(1):e).split("&");for(let o=0;oe.apply(this,arguments);r=o(i,t)};return i.cancel=function(){n(r)},i}class Ce{constructor(e,t){this.id=e,this.listener={},this.emitCache=[],t&&Object.keys(t).forEach((e=>{this.on(e,t[e])}))}emit(e,...t){const n=this.listener[e];if(!n)return this.emitCache.push({eventName:e,args:t});n.forEach((e=>{e.fn.apply(e.fn,t)})),this.listener[e]=n.filter((e=>"once"!==e.type))}on(e,t){this._addListener(e,"on",t),this._clearCache(e)}once(e,t){this._addListener(e,"once",t),this._clearCache(e)}off(e,t){const n=this.listener[e];if(n)if(t)for(let o=0;ot(e))),$e=function(){};$e.prototype={_id:1,on:function(e,t,n){var o=this.e||(this.e={});return(o[e]||(o[e]=[])).push({fn:t,ctx:n,_id:this._id}),this._id++},once:function(e,t,n){var o=this;function r(){o.off(e,r),t.apply(n,arguments)}return r._=t,this.on(e,r,n)},emit:function(e){for(var t=[].slice.call(arguments,1),n=((this.e||(this.e={}))[e]||[]).slice(),o=0,r=n.length;o=0;i--)if(o[i].fn===t||o[i].fn._===t||o[i]._id===t){o.splice(i,1);break}r=o}return r.length?n[e]=r:delete n[e],this}};var Ae=$e;const Pe={black:"rgba(0,0,0,0.4)",white:"rgba(255,255,255,0.4)"};function Re(e,t,n){if(v(t)&&t.startsWith("@")){let r=e[t.replace("@","")]||t;switch(n){case"titleColor":r="black"===r?"#000000":"#ffffff";break;case"borderStyle":r=(o=r)&&o in Pe?Pe[o]:o}return r}var o;return t}function Be(e,t={},n="light"){const o=t[n],r={};return void 0!==o&&e?(Object.keys(e).forEach((i=>{const s=e[i];r[i]=S(s)?Be(s,t,n):p(s)?s.map((e=>S(e)?Be(e,t,n):Re(o,e))):Re(o,s,i)})),r):e} +/** +* @dcloudio/uni-h5-vue v3.4.21 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let Ne,je;class Me{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this.parent=Ne,!e&&Ne&&(this.index=(Ne.scopes||(Ne.scopes=[])).push(this)-1)}get active(){return this._active}run(e){if(this._active){const t=Ne;try{return Ne=this,e()}finally{Ne=t}}}on(){Ne=this}off(){Ne=this.parent}stop(e){if(this._active){let t,n;for(t=0,n=this.effects.length;t=4))break}1===this._dirtyLevel&&(this._dirtyLevel=0),ze()}return this._dirtyLevel>=4}set dirty(e){this._dirtyLevel=e?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let e=He,t=je;try{return He=!0,je=this,this._runnings++,Ve(this),this.fn()}finally{Fe(this),this._runnings--,je=t,He=e}}stop(){var e;this.active&&(Ve(this),Fe(this),null==(e=this.onStop)||e.call(this),this.active=!1)}}function Ve(e){e._trackId++,e._depsLength=0}function Fe(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{const n=new Map;return n.cleanup=e,n.computed=t,n},Qe=new WeakMap,et=Symbol(""),tt=Symbol("");function nt(e,t,n){if(He&&je){let t=Qe.get(e);t||Qe.set(e,t=new Map);let o=t.get(n);o||t.set(n,o=Ze((()=>t.delete(n)))),Ye(je,o)}}function ot(e,t,n,o,r,i){const s=Qe.get(e);if(!s)return;let a=[];if("clear"===t)a=[...s.values()];else if("length"===n&&p(e)){const e=Number(o);s.forEach(((t,n)=>{("length"===n||!y(n)&&n>=e)&&a.push(t)}))}else switch(void 0!==n&&a.push(s.get(n)),t){case"add":p(e)?T(n)&&a.push(s.get("length")):(a.push(s.get(et)),h(e)&&a.push(s.get(tt)));break;case"delete":p(e)||(a.push(s.get(et)),h(e)&&a.push(s.get(tt)));break;case"set":h(e)&&a.push(s.get(et))}Xe();for(const l of a)l&&Je(l,4);Ke()}const rt=n("__proto__,__v_isRef,__isVue"),it=new Set(Object.getOwnPropertyNames(Symbol).filter((e=>"arguments"!==e&&"caller"!==e)).map((e=>Symbol[e])).filter(y)),st=at();function at(){const e={};return["includes","indexOf","lastIndexOf"].forEach((t=>{e[t]=function(...e){const n=Yt(this);for(let t=0,r=this.length;t{e[t]=function(...e){qe(),Xe();const n=Yt(this)[t].apply(this,e);return Ke(),ze(),n}})),e}function lt(e){const t=Yt(this);return nt(t,0,e),t.hasOwnProperty(e)}class ct{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){const o=this._isReadonly,r=this._isShallow;if("__v_isReactive"===t)return!o;if("__v_isReadonly"===t)return o;if("__v_isShallow"===t)return r;if("__v_raw"===t)return n===(o?r?Vt:It:r?Mt:jt).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;const i=p(e);if(!o){if(i&&f(st,t))return Reflect.get(st,t,n);if("hasOwnProperty"===t)return lt}const s=Reflect.get(e,t,n);return(y(t)?it.has(t):rt(t))?s:(o||nt(e,0,t),r?s:nn(s)?i&&T(t)?s:s.value:b(s)?o?Wt(s):Dt(s):s)}}class ut extends ct{constructor(e=!1){super(!1,e)}set(e,t,n,o){let r=e[t];if(!this._isShallow){const t=zt(r);if(Xt(n)||zt(n)||(r=Yt(r),n=Yt(n)),!p(e)&&nn(r)&&!nn(n))return!t&&(r.value=n,!0)}const i=p(e)&&T(t)?Number(t)e,mt=e=>Reflect.getPrototypeOf(e);function vt(e,t,n=!1,o=!1){const r=Yt(e=e.__v_raw),i=Yt(t);n||(R(t,i)&&nt(r,0,t),nt(r,0,i));const{has:s}=mt(r),a=o?gt:n?Zt:Jt;return s.call(r,t)?a(e.get(t)):s.call(r,i)?a(e.get(i)):void(e!==r&&e.get(t))}function yt(e,t=!1){const n=this.__v_raw,o=Yt(n),r=Yt(e);return t||(R(e,r)&&nt(o,0,e),nt(o,0,r)),e===r?n.has(e):n.has(e)||n.has(r)}function bt(e,t=!1){return e=e.__v_raw,!t&&nt(Yt(e),0,et),Reflect.get(e,"size",e)}function _t(e){e=Yt(e);const t=Yt(this);return mt(t).has.call(t,e)||(t.add(e),ot(t,"add",e,e)),this}function wt(e,t){t=Yt(t);const n=Yt(this),{has:o,get:r}=mt(n);let i=o.call(n,e);i||(e=Yt(e),i=o.call(n,e));const s=r.call(n,e);return n.set(e,t),i?R(t,s)&&ot(n,"set",e,t):ot(n,"add",e,t),this}function xt(e){const t=Yt(this),{has:n,get:o}=mt(t);let r=n.call(t,e);r||(e=Yt(e),r=n.call(t,e)),o&&o.call(t,e);const i=t.delete(e);return r&&ot(t,"delete",e,void 0),i}function St(){const e=Yt(this),t=0!==e.size,n=e.clear();return t&&ot(e,"clear",void 0,void 0),n}function Tt(e,t){return function(n,o){const r=this,i=r.__v_raw,s=Yt(i),a=t?gt:e?Zt:Jt;return!e&&nt(s,0,et),i.forEach(((e,t)=>n.call(o,a(e),a(t),r)))}}function Ct(e,t,n){return function(...o){const r=this.__v_raw,i=Yt(r),s=h(i),a="entries"===e||e===Symbol.iterator&&s,l="keys"===e&&s,c=r[e](...o),u=n?gt:t?Zt:Jt;return!t&&nt(i,0,l?tt:et),{next(){const{value:e,done:t}=c.next();return t?{value:e,done:t}:{value:a?[u(e[0]),u(e[1])]:u(e),done:t}},[Symbol.iterator](){return this}}}}function Et(e){return function(...t){return"delete"!==e&&("clear"===e?void 0:this)}}function kt(){const e={get(e){return vt(this,e)},get size(){return bt(this)},has:yt,add:_t,set:wt,delete:xt,clear:St,forEach:Tt(!1,!1)},t={get(e){return vt(this,e,!1,!0)},get size(){return bt(this)},has:yt,add:_t,set:wt,delete:xt,clear:St,forEach:Tt(!1,!0)},n={get(e){return vt(this,e,!0)},get size(){return bt(this,!0)},has(e){return yt.call(this,e,!0)},add:Et("add"),set:Et("set"),delete:Et("delete"),clear:Et("clear"),forEach:Tt(!0,!1)},o={get(e){return vt(this,e,!0,!0)},get size(){return bt(this,!0)},has(e){return yt.call(this,e,!0)},add:Et("add"),set:Et("set"),delete:Et("delete"),clear:Et("clear"),forEach:Tt(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach((r=>{e[r]=Ct(r,!1,!1),n[r]=Ct(r,!0,!1),t[r]=Ct(r,!1,!0),o[r]=Ct(r,!0,!0)})),[e,n,t,o]}const[Ot,Lt,$t,At]=kt();function Pt(e,t){const n=t?e?At:$t:e?Lt:Ot;return(t,o,r)=>"__v_isReactive"===o?!e:"__v_isReadonly"===o?e:"__v_raw"===o?t:Reflect.get(f(n,o)&&o in t?n:t,o,r)}const Rt={get:Pt(!1,!1)},Bt={get:Pt(!1,!0)},Nt={get:Pt(!0,!1)},jt=new WeakMap,Mt=new WeakMap,It=new WeakMap,Vt=new WeakMap;function Ft(e){return e.__v_skip||!Object.isExtensible(e)?0:function(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}((e=>x(e).slice(8,-1))(e))}function Dt(e){return zt(e)?e:Ut(e,!1,ft,Rt,jt)}function Ht(e){return Ut(e,!1,ht,Bt,Mt)}function Wt(e){return Ut(e,!0,pt,Nt,It)}function Ut(e,t,n,o,r){if(!b(e))return e;if(e.__v_raw&&(!t||!e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const s=Ft(e);if(0===s)return e;const a=new Proxy(e,2===s?o:n);return r.set(e,a),a}function qt(e){return zt(e)?qt(e.__v_raw):!(!e||!e.__v_isReactive)}function zt(e){return!(!e||!e.__v_isReadonly)}function Xt(e){return!(!e||!e.__v_isShallow)}function Kt(e){return qt(e)||zt(e)}function Yt(e){const t=e&&e.__v_raw;return t?Yt(t):e}function Gt(e){return Object.isExtensible(e)&&N(e,"__v_skip",!0),e}const Jt=e=>b(e)?Dt(e):e,Zt=e=>b(e)?Wt(e):e;class Qt{constructor(e,t,n,o){this.getter=e,this._setter=t,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Ie((()=>e(this._value)),(()=>tn(this,2===this.effect._dirtyLevel?2:3))),this.effect.computed=this,this.effect.active=this._cacheable=!o,this.__v_isReadonly=n}get value(){const e=Yt(this);return e._cacheable&&!e.effect.dirty||!R(e._value,e._value=e.effect.run())||tn(e,4),en(e),e.effect._dirtyLevel>=2&&tn(e,2),e._value}set value(e){this._setter(e)}get _dirty(){return this.effect.dirty}set _dirty(e){this.effect.dirty=e}}function en(e){var t;He&&je&&(e=Yt(e),Ye(je,null!=(t=e.dep)?t:e.dep=Ze((()=>e.dep=void 0),e instanceof Qt?e:void 0)))}function tn(e,t=4,n){const o=(e=Yt(e)).dep;o&&Je(o,t)}function nn(e){return!(!e||!0!==e.__v_isRef)}function on(e){return sn(e,!1)}function rn(e){return sn(e,!0)}function sn(e,t){return nn(e)?e:new an(e,t)}class an{constructor(e,t){this.__v_isShallow=t,this.dep=void 0,this.__v_isRef=!0,this._rawValue=t?e:Yt(e),this._value=t?e:Jt(e)}get value(){return en(this),this._value}set value(e){const t=this.__v_isShallow||Xt(e)||zt(e);e=t?e:Yt(e),R(e,this._rawValue)&&(this._rawValue=e,this._value=t?e:Jt(e),tn(this,4))}}function ln(e){return nn(e)?e.value:e}const cn={get:(e,t,n)=>ln(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const r=e[t];return nn(r)&&!nn(n)?(r.value=n,!0):Reflect.set(e,t,n,o)}};function un(e){return qt(e)?e:new Proxy(e,cn)}function dn(e,t,n,o){try{return o?e(...o):e()}catch(r){pn(r,t,n)}}function fn(e,t,n,o){if(m(e)){const r=dn(e,t,n,o);return r&&_(r)&&r.catch((e=>{pn(e,t,n)})),r}const r=[];for(let i=0;i>>1,r=vn[o],i=Ln(r);iLn(e)-Ln(t)));if(bn.length=0,_n)return void _n.push(...e);for(_n=e,wn=0;wn<_n.length;wn++)_n[wn]();_n=null,wn=0}}const Ln=e=>null==e.id?1/0:e.id,$n=(e,t)=>{const n=Ln(e)-Ln(t);if(0===n){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function An(e){mn=!1,gn=!0,vn.sort($n);try{for(yn=0;ynv(e)?e.trim():e))),t&&(i=n.map(j))}let l,c=r[l=P(t)]||r[l=P(O(t))];!c&&s&&(c=r[l=P($(t))]),c&&fn(c,e,6,Rn(e,c,i));const u=r[l+"Once"];if(u){if(e.emitted){if(e.emitted[l])return}else e.emitted={};e.emitted[l]=!0,fn(u,e,6,Rn(e,u,i))}}function Rn(e,t,n){if(1!==n.length)return n;if(m(t)){if(t.length<2)return n}else if(!t.find((e=>e.length>=2)))return n;const o=n[0];if(o&&f(o,"type")&&f(o,"timeStamp")&&f(o,"target")&&f(o,"currentTarget")&&f(o,"detail")){const t=e.proxy,o=t.$gcd(t,!0);o&&n.push(o)}return n}function Bn(e,t,n=!1){const o=t.emitsCache,r=o.get(e);if(void 0!==r)return r;const i=e.emits;let s={},a=!1;if(!m(e)){const o=e=>{const n=Bn(e,t,!0);n&&(a=!0,c(s,n))};!n&&t.mixins.length&&t.mixins.forEach(o),e.extends&&o(e.extends),e.mixins&&e.mixins.forEach(o)}return i||a?(p(i)?i.forEach((e=>s[e]=null)):c(s,i),b(e)&&o.set(e,s),s):(b(e)&&o.set(e,null),null)}function Nn(e,t){return!(!e||!a(t))&&(t=t.slice(2).replace(/Once$/,""),f(e,t[0].toLowerCase()+t.slice(1))||f(e,$(t))||f(e,t))}let jn=null,Mn=null;function In(e){const t=jn;return jn=e,Mn=e&&e.type.__scopeId||null,t}function Vn(e,t=jn,n){if(!t)return e;if(e._n)return e;const o=(...n)=>{o._d&&Xr(-1);const r=In(t);let i;try{i=e(...n)}finally{In(r),o._d&&Xr(1)}return i};return o._n=!0,o._c=!0,o._d=!0,o}function Fn(e){const{type:t,vnode:n,proxy:o,withProxy:r,props:i,propsOptions:[s],slots:a,attrs:c,emit:u,render:d,renderCache:f,data:p,setupState:h,ctx:g,inheritAttrs:m}=e;let v,y;const b=In(e);try{if(4&n.shapeFlag){const e=r||o,t=e;v=ai(d.call(t,e,f,i,h,p,g)),y=c}else{const e=t;0,v=ai(e.length>1?e(i,{attrs:c,slots:a,emit:u}):e(i,null)),y=t.props?c:Dn(c)}}catch(w){Wr.length=0,pn(w,e,1),v=oi(Dr)}let _=v;if(y&&!1!==m){const e=Object.keys(y),{shapeFlag:t}=_;e.length&&7&t&&(s&&e.some(l)&&(y=Hn(y,s)),_=ri(_,y))}return n.dirs&&(_=ri(_),_.dirs=_.dirs?_.dirs.concat(n.dirs):n.dirs),n.transition&&(_.transition=n.transition),v=_,In(b),v}const Dn=e=>{let t;for(const n in e)("class"===n||"style"===n||a(n))&&((t||(t={}))[n]=e[n]);return t},Hn=(e,t)=>{const n={};for(const o in e)l(o)&&o.slice(9)in t||(n[o]=e[o]);return n};function Wn(e,t,n){const o=Object.keys(t);if(o.length!==Object.keys(e).length)return!0;for(let r=0;re.__isSuspense;const Gn=Symbol.for("v-scx");function Jn(e,t){return eo(e,null,t)}const Zn={};function Qn(e,t,n){return eo(e,t,n)}function eo(e,t,{immediate:n,deep:r,flush:s,once:a,onTrack:l,onTrigger:c}=o){if(t&&a){const e=t;t=(...t)=>{e(...t),E()}}const d=hi,f=e=>!0===r?e:oo(e,!1===r?1:void 0);let h,g,v=!1,y=!1;if(nn(e)?(h=()=>e.value,v=Xt(e)):qt(e)?(h=()=>f(e),v=!0):p(e)?(y=!0,v=e.some((e=>qt(e)||Xt(e))),h=()=>e.map((e=>nn(e)?e.value:qt(e)?f(e):m(e)?dn(e,d,2):void 0))):h=m(e)?t?()=>dn(e,d,2):()=>(g&&g(),fn(e,d,3,[_])):i,t&&r){const e=h;h=()=>oo(e())}let b,_=e=>{g=T.onStop=()=>{dn(e,d,4),g=T.onStop=void 0}};if(wi){if(_=i,t?n&&fn(t,d,3,[h(),y?[]:void 0,_]):h(),"sync"!==s)return i;{const e=yr(Gn);b=e.__watcherHandles||(e.__watcherHandles=[])}}let w=y?new Array(e.length).fill(Zn):Zn;const x=()=>{if(T.active&&T.dirty)if(t){const e=T.run();(r||v||(y?e.some(((e,t)=>R(e,w[t]))):R(e,w)))&&(g&&g(),fn(t,d,3,[e,w===Zn?void 0:y&&w[0]===Zn?[]:w,_]),w=e)}else T.run()};let S;x.allowRecurse=!!t,"sync"===s?S=x:"post"===s?S=()=>Rr(x,d&&d.suspense):(x.pre=!0,d&&(x.id=d.uid),S=()=>Cn(x));const T=new Ie(h,i,S),C=Ne,E=()=>{T.stop(),C&&u(C.effects,T)};return t?n?x():w=T.run():"post"===s?Rr(T.run.bind(T),d&&d.suspense):T.run(),b&&b.push(E),E}function to(e,t,n){const o=this.proxy,r=v(e)?e.includes(".")?no(o,e):()=>o[e]:e.bind(o,o);let i;m(t)?i=t:(i=t.handler,n=t);const s=yi(this),a=eo(r,i.bind(o),n);return s(),a}function no(e,t){const n=t.split(".");return()=>{let t=e;for(let e=0;e0){if(n>=t)return e;n++}if((o=o||new Set).has(e))return e;if(o.add(e),nn(e))oo(e.value,t,n,o);else if(p(e))for(let r=0;r{oo(e,t,n,o)}));else if(S(e))for(const r in e)oo(e[r],t,n,o);return e}function ro(e,t){if(null===jn)return e;const n=Ti(jn)||jn.proxy,r=e.dirs||(e.dirs=[]);for(let i=0;i{e.isMounted=!0})),Do((()=>{e.isUnmounting=!0})),e}();return()=>{const r=t.default&&vo(t.default(),!0);if(!r||!r.length)return;let i=r[0];if(r.length>1)for(const e of r)if(e.type!==Dr){i=e;break}const s=Yt(e),{mode:a}=s;if(o.isLeaving)return ho(i);const l=go(i);if(!l)return ho(i);const c=po(l,s,o,n);mo(l,c);const u=n.subTree,d=u&&go(u);if(d&&d.type!==Dr&&!Zr(l,d)){const e=po(d,s,o,n);if(mo(d,e),"out-in"===a)return o.isLeaving=!0,e.afterLeave=()=>{o.isLeaving=!1,!1!==n.update.active&&(n.effect.dirty=!0,n.update())},ho(i);"in-out"===a&&l.type!==Dr&&(e.delayLeave=(e,t,n)=>{fo(o,d)[String(d.key)]=d,e[so]=()=>{t(),e[so]=void 0,delete c.delayedLeave},c.delayedLeave=n})}return i}}};function fo(e,t){const{leavingVNodes:n}=e;let o=n.get(t.type);return o||(o=Object.create(null),n.set(t.type,o)),o}function po(e,t,n,o){const{appear:r,mode:i,persisted:s=!1,onBeforeEnter:a,onEnter:l,onAfterEnter:c,onEnterCancelled:u,onBeforeLeave:d,onLeave:f,onAfterLeave:h,onLeaveCancelled:g,onBeforeAppear:m,onAppear:v,onAfterAppear:y,onAppearCancelled:b}=t,_=String(e.key),w=fo(n,e),x=(e,t)=>{e&&fn(e,o,9,t)},S=(e,t)=>{const n=t[1];x(e,t),p(e)?e.every((e=>e.length<=1))&&n():e.length<=1&&n()},T={mode:i,persisted:s,beforeEnter(t){let o=a;if(!n.isMounted){if(!r)return;o=m||a}t[so]&&t[so](!0);const i=w[_];i&&Zr(e,i)&&i.el[so]&&i.el[so](),x(o,[t])},enter(e){let t=l,o=c,i=u;if(!n.isMounted){if(!r)return;t=v||l,o=y||c,i=b||u}let s=!1;const a=e[ao]=t=>{s||(s=!0,x(t?i:o,[e]),T.delayedLeave&&T.delayedLeave(),e[ao]=void 0)};t?S(t,[e,a]):a()},leave(t,o){const r=String(e.key);if(t[ao]&&t[ao](!0),n.isUnmounting)return o();x(d,[t]);let i=!1;const s=t[so]=n=>{i||(i=!0,o(),x(n?g:h,[t]),t[so]=void 0,w[r]===e&&delete w[r])};w[r]=e,f?S(f,[t,s]):s()},clone:e=>po(e,t,n,o)};return T}function ho(e){if(xo(e))return(e=ri(e)).children=null,e}function go(e){return xo(e)?e.children?e.children[0]:void 0:e}function mo(e,t){6&e.shapeFlag&&e.component?mo(e.component.subTree,t):128&e.shapeFlag?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function vo(e,t=!1,n){let o=[],r=0;for(let i=0;i1)for(let i=0;ic({name:e.name},t,{setup:e}))():e}const bo=e=>!!e.type.__asyncLoader +/*! #__NO_SIDE_EFFECTS__ */;function _o(e){m(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:o,delay:r=200,timeout:i,suspensible:s=!0,onError:a}=e;let l,c=null,u=0;const d=()=>{let e;return c||(e=c=t().catch((e=>{if(e=e instanceof Error?e:new Error(String(e)),a)return new Promise(((t,n)=>{a(e,(()=>t((u++,c=null,d()))),(()=>n(e)),u+1)}));throw e})).then((t=>e!==c&&c?c:(t&&(t.__esModule||"Module"===t[Symbol.toStringTag])&&(t=t.default),l=t,t))))};return yo({name:"AsyncComponentWrapper",__asyncLoader:d,get __asyncResolved(){return l},setup(){const e=hi;if(l)return()=>wo(l,e);const t=t=>{c=null,pn(t,e,13,!o)};if(s&&e.suspense||wi)return d().then((t=>()=>wo(t,e))).catch((e=>(t(e),()=>o?oi(o,{error:e}):null)));const a=on(!1),u=on(),f=on(!!r);return r&&setTimeout((()=>{f.value=!1}),r),null!=i&&setTimeout((()=>{if(!a.value&&!u.value){const e=new Error(`Async component timed out after ${i}ms.`);t(e),u.value=e}}),i),d().then((()=>{a.value=!0,e.parent&&xo(e.parent.vnode)&&(e.parent.effect.dirty=!0,Cn(e.parent.update))})).catch((e=>{t(e),u.value=e})),()=>a.value&&l?wo(l,e):u.value&&o?oi(o,{error:u.value}):n&&!f.value?oi(n):void 0}})}function wo(e,t){const{ref:n,props:o,children:r,ce:i}=t.vnode,s=oi(e,o,r);return s.ref=n,s.ce=i,delete t.vnode.ce,s}const xo=e=>e.type.__isKeepAlive;class So{constructor(e){this.max=e,this._cache=new Map,this._keys=new Set,this._max=parseInt(e,10)}get(e){const{_cache:t,_keys:n,_max:o}=this,r=t.get(e);if(r)n.delete(e),n.add(e);else if(n.add(e),o&&n.size>o){const e=n.values().next().value;this.pruneCacheEntry(t.get(e)),this.delete(e)}return r}set(e,t){this._cache.set(e,t)}delete(e){this._cache.delete(e),this._keys.delete(e)}forEach(e,t){this._cache.forEach(e.bind(t))}}const To={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number],matchBy:{type:String,default:"name"},cache:Object},setup(e,{slots:t}){const n=gi(),o=n.ctx;if(!o.renderer)return()=>{const e=t.default&&t.default();return e&&1===e.length?e[0]:e};const r=e.cache||new So(e.max);r.pruneCacheEntry=s;let i=null;function s(t){var o;!i||!Zr(t,i)||"key"===e.matchBy&&t.key!==i.key?(Ao(o=t),u(o,n,a,!0)):i&&Ao(i)}const a=n.suspense,{renderer:{p:l,m:c,um:u,o:{createElement:d}}}=o,f=d("div");function p(t){r.forEach(((n,o)=>{const i=Ro(n,e.matchBy);!i||t&&t(i)||(r.delete(o),s(n))}))}o.activate=(e,t,n,o,r)=>{const i=e.component;if(i.ba){const e=i.isDeactivated;i.isDeactivated=!1,B(i.ba),i.isDeactivated=e}c(e,t,n,0,a),l(i.vnode,e,t,n,i,a,o,e.slotScopeIds,r),Rr((()=>{i.isDeactivated=!1,i.a&&B(i.a);const t=e.props&&e.props.onVnodeMounted;t&&di(t,i.parent,e)}),a)},o.deactivate=e=>{const t=e.component;t.bda&&Bo(t.bda),c(e,f,null,1,a),Rr((()=>{t.bda&&t.bda.forEach((e=>e.__called=!1)),t.da&&B(t.da);const n=e.props&&e.props.onVnodeUnmounted;n&&di(n,t.parent,e),t.isDeactivated=!0}),a)},Qn((()=>[e.include,e.exclude,e.matchBy]),(([e,t])=>{e&&p((t=>Eo(e,t))),t&&p((e=>!Eo(t,e)))}),{flush:"post",deep:!0});let h=null;const g=()=>{null!=h&&r.set(h,Po(n.subTree))};return Io(g),Fo(g),Do((()=>{r.forEach(((t,o)=>{r.delete(o),s(t);const{subTree:i,suspense:a}=n,l=Po(i);if(t.type!==l.type||"key"===e.matchBy&&t.key!==l.key);else{l.component.bda&&B(l.component.bda),Ao(l);const e=l.component.da;e&&Rr(e,a)}}))})),()=>{if(h=null,!t.default)return null;const n=t.default(),o=n[0];if(n.length>1)return i=null,n;if(!Jr(o)||!(4&o.shapeFlag)&&!Yn(o.type))return i=null,o;let s=Po(o);const a=s.type,l=Ro(s,e.matchBy),{include:c,exclude:u}=e;if(c&&(!l||!Eo(c,l))||u&&l&&Eo(u,l))return i=s,o;const d=null==s.key?a:s.key,f=r.get(d);return s.el&&(s=ri(s),Yn(o.type)&&(o.ssContent=s)),h=d,f&&(s.el=f.el,s.component=f.component,s.transition&&mo(s,s.transition),s.shapeFlag|=512),s.shapeFlag|=256,i=s,Yn(o.type)?o:s}}},Co=To;function Eo(e,t){return p(e)?e.some((e=>Eo(e,t))):v(e)?e.split(",").includes(t):"[object RegExp]"===x(e)&&e.test(t)}function ko(e,t){Lo(e,"a",t)}function Oo(e,t){Lo(e,"da",t)}function Lo(e,t,n=hi){const o=e.__wdc||(e.__wdc=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()});if(o.__called=!1,No(t,o,n),n){let e=n.parent;for(;e&&e.parent;)xo(e.parent.vnode)&&$o(o,t,n,e),e=e.parent}}function $o(e,t,n,o){const r=No(t,e,o,!0);Ho((()=>{u(o[t],r)}),n)}function Ao(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Po(e){return Yn(e.type)?e.ssContent:e}function Ro(e,t){if("name"===t){const t=e.type;return Ci(bo(e)?t.__asyncResolved||{}:t)}return String(e.key)}function Bo(e){for(let t=0;t-1&&n.$pageInstance){if(n.type.__reserved)return;if(n!==n.$pageInstance&&(n=n.$pageInstance,function(e){return["onLoad","onShow"].indexOf(e)>-1}(e))){const o=n.proxy;fn(t.bind(o),n,e,"onLoad"===e?[o.$page.options]:[])}}const i=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;qe();const r=yi(n),i=fn(t,n,e,o);return r(),ze(),i});return o?i.unshift(s):i.push(s),s}var r}const jo=e=>(t,n=hi)=>(!wi||"sp"===e)&&No(e,((...e)=>t(...e)),n),Mo=jo("bm"),Io=jo("m"),Vo=jo("bu"),Fo=jo("u"),Do=jo("bum"),Ho=jo("um"),Wo=jo("sp"),Uo=jo("rtg"),qo=jo("rtc");function zo(e,t=hi){No("ec",e,t)}function Xo(e,t,n,o){let r;const i=n&&n[o];if(p(e)||v(e)){r=new Array(e.length);for(let n=0,o=e.length;nt(e,n,void 0,i&&i[n])));else{const n=Object.keys(e);r=new Array(n.length);for(let o=0,s=n.length;o!Jr(e)||e.type!==Dr&&!(e.type===Vr&&!Yo(e.children))))?e:null}const Go=e=>{if(!e)return null;if(_i(e)){return Ti(e)||e.proxy}return Go(e.parent)},Jo=c(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Go(e.parent),$root:e=>Go(e.root),$emit:e=>e.emit,$options:e=>ir(e),$forceUpdate:e=>e.f||(e.f=(e=>function(){e.effect.dirty=!0,Cn(e.update)})(e)),$nextTick:e=>e.n||(e.n=Tn.bind(e.proxy)),$watch:e=>to.bind(e)}),Zo=(e,t)=>e!==o&&!e.__isScriptSetup&&f(e,t),Qo={get({_:e},t){const{ctx:n,setupState:r,data:i,props:s,accessCache:a,type:l,appContext:c}=e;let u;if("$"!==t[0]){const l=a[t];if(void 0!==l)switch(l){case 1:return r[t];case 2:return i[t];case 4:return n[t];case 3:return s[t]}else{if(Zo(r,t))return a[t]=1,r[t];if(i!==o&&f(i,t))return a[t]=2,i[t];if((u=e.propsOptions[0])&&f(u,t))return a[t]=3,s[t];if(n!==o&&f(n,t))return a[t]=4,n[t];tr&&(a[t]=0)}}const d=Jo[t];let p,h;return d?("$attrs"===t&&nt(e,0,t),d(e)):(p=l.__cssModules)&&(p=p[t])?p:n!==o&&f(n,t)?(a[t]=4,n[t]):(h=c.config.globalProperties,f(h,t)?h[t]:void 0)},set({_:e},t,n){const{data:r,setupState:i,ctx:s}=e;return Zo(i,t)?(i[t]=n,!0):r!==o&&f(r,t)?(r[t]=n,!0):!f(e.props,t)&&(("$"!==t[0]||!(t.slice(1)in e))&&(s[t]=n,!0))},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:i,propsOptions:s}},a){let l;return!!n[a]||e!==o&&f(e,a)||Zo(t,a)||(l=s[0])&&f(l,a)||f(r,a)||f(Jo,a)||f(i.config.globalProperties,a)},defineProperty(e,t,n){return null!=n.get?e._.accessCache[t]=0:f(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function er(e){return p(e)?e.reduce(((e,t)=>(e[t]=null,e)),{}):e}let tr=!0;function nr(e){const t=ir(e),n=e.proxy,o=e.ctx;tr=!1,t.beforeCreate&&or(t.beforeCreate,e,"bc");const{data:r,computed:s,methods:a,watch:l,provide:c,inject:u,created:d,beforeMount:f,mounted:h,beforeUpdate:g,updated:v,activated:y,deactivated:_,beforeDestroy:w,beforeUnmount:x,destroyed:S,unmounted:T,render:C,renderTracked:E,renderTriggered:k,errorCaptured:O,serverPrefetch:L,expose:$,inheritAttrs:A,components:P,directives:R,filters:B}=t;if(u&&function(e,t,n=i){p(e)&&(e=cr(e));for(const o in e){const n=e[o];let r;r=b(n)?"default"in n?yr(n.from||o,n.default,!0):yr(n.from||o):yr(n),nn(r)?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>r.value,set:e=>r.value=e}):t[o]=r}}(u,o,null),a)for(const i in a){const e=a[i];m(e)&&(o[i]=e.bind(n))}if(r){const t=r.call(n,n);b(t)&&(e.data=Dt(t))}if(tr=!0,s)for(const p in s){const e=s[p],t=m(e)?e.bind(n,n):m(e.get)?e.get.bind(n,n):i,r=!m(e)&&m(e.set)?e.set.bind(n):i,a=Ei({get:t,set:r});Object.defineProperty(o,p,{enumerable:!0,configurable:!0,get:()=>a.value,set:e=>a.value=e})}if(l)for(const i in l)rr(l[i],o,n,i);if(c){const e=m(c)?c.call(n):c;Reflect.ownKeys(e).forEach((t=>{vr(t,e[t])}))}function N(e,t){p(t)?t.forEach((t=>e(t.bind(n)))):t&&e(t.bind(n))}if(d&&or(d,e,"c"),N(Mo,f),N(Io,h),N(Vo,g),N(Fo,v),N(ko,y),N(Oo,_),N(zo,O),N(qo,E),N(Uo,k),N(Do,x),N(Ho,T),N(Wo,L),p($))if($.length){const t=e.exposed||(e.exposed={});$.forEach((e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t})}))}else e.exposed||(e.exposed={});C&&e.render===i&&(e.render=C),null!=A&&(e.inheritAttrs=A),P&&(e.components=P),R&&(e.directives=R);const j=e.appContext.config.globalProperties.$applyOptions;j&&j(t,e,n)}function or(e,t,n){fn(p(e)?e.map((e=>e.bind(t.proxy))):e.bind(t.proxy),t,n)}function rr(e,t,n,o){const r=o.includes(".")?no(n,o):()=>n[o];if(v(e)){const n=t[e];m(n)&&Qn(r,n)}else if(m(e))Qn(r,e.bind(n));else if(b(e))if(p(e))e.forEach((e=>rr(e,t,n,o)));else{const o=m(e.handler)?e.handler.bind(n):t[e.handler];m(o)&&Qn(r,o,e)}}function ir(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:s}}=e.appContext,a=i.get(t);let l;return a?l=a:r.length||n||o?(l={},r.length&&r.forEach((e=>sr(l,e,s,!0))),sr(l,t,s)):l=t,b(t)&&i.set(t,l),l}function sr(e,t,n,o=!1){const{mixins:r,extends:i}=t;i&&sr(e,i,n,!0),r&&r.forEach((t=>sr(e,t,n,!0)));for(const s in t)if(o&&"expose"===s);else{const o=ar[s]||n&&n[s];e[s]=o?o(e[s],t[s]):t[s]}return e}const ar={data:lr,props:fr,emits:fr,methods:dr,computed:dr,beforeCreate:ur,created:ur,beforeMount:ur,mounted:ur,beforeUpdate:ur,updated:ur,beforeDestroy:ur,beforeUnmount:ur,destroyed:ur,unmounted:ur,activated:ur,deactivated:ur,errorCaptured:ur,serverPrefetch:ur,components:dr,directives:dr,watch:function(e,t){if(!e)return t;if(!t)return e;const n=c(Object.create(null),e);for(const o in t)n[o]=ur(e[o],t[o]);return n},provide:lr,inject:function(e,t){return dr(cr(e),cr(t))}};function lr(e,t){return t?e?function(){return c(m(e)?e.call(this,this):e,m(t)?t.call(this,this):t)}:t:e}function cr(e){if(p(e)){const t={};for(let n=0;n(i.has(e)||(e&&m(e.install)?(i.add(e),e.install(a,...t)):m(e)&&(i.add(e),e(a,...t))),a),mixin:e=>(r.mixins.includes(e)||r.mixins.push(e),a),component:(e,t)=>t?(r.components[e]=t,a):r.components[e],directive:(e,t)=>t?(r.directives[e]=t,a):r.directives[e],mount(i,l,c){if(!s){const u=oi(n,o);return u.appContext=r,!0===c?c="svg":!1===c&&(c=void 0),l&&t?t(u,i):e(u,i,c),s=!0,a._container=i,i.__vue_app__=a,a._instance=u.component,Ti(u.component)||u.component.proxy}},unmount(){s&&(e(null,a._container),delete a._container.__vue_app__)},provide:(e,t)=>(r.provides[e]=t,a),runWithContext(e){const t=mr;mr=a;try{return e()}finally{mr=t}}};return a}}let mr=null;function vr(e,t){if(hi){let n=hi.provides;const o=hi.parent&&hi.parent.provides;o===n&&(n=hi.provides=Object.create(o)),n[e]=t,"app"===hi.type.mpType&&hi.appContext.app.provide(e,t)}else;}function yr(e,t,n=!1){const o=hi||jn;if(o||mr){const r=o?null==o.parent?o.vnode.appContext&&o.vnode.appContext.provides:o.parent.provides:mr._context.provides;if(r&&e in r)return r[e];if(arguments.length>1)return n&&m(t)?t.call(o&&o.proxy):t}}function br(e,t,n,r){const[i,s]=e.propsOptions;let a,l=!1;if(t)for(let o in t){if(C(o))continue;const c=t[o];let u;i&&f(i,u=O(o))?s&&s.includes(u)?(a||(a={}))[u]=c:n[u]=c:Nn(e.emitsOptions,o)||o in r&&c===r[o]||(r[o]=_r(e,o,c),l=!0)}if(s){const t=Yt(n),r=a||o;for(let o=0;o{d=!0;const[n,o]=xr(e,t,!0);c(l,n),o&&u.push(...o)};!n&&t.mixins.length&&t.mixins.forEach(o),e.extends&&o(e.extends),e.mixins&&e.mixins.forEach(o)}if(!a&&!d)return b(e)&&i.set(e,r),r;if(p(a))for(let r=0;r-1,n[1]=o<0||t-1||f(n,"default"))&&u.push(e)}}}const h=[l,u];return b(e)&&i.set(e,h),h}function Sr(e){return"$"!==e[0]&&!C(e)}function Tr(e){if(null===e)return"null";if("function"==typeof e)return e.name||"";if("object"==typeof e){return e.constructor&&e.constructor.name||""}return""}function Cr(e,t){return Tr(e)===Tr(t)}function Er(e,t){return p(t)?t.findIndex((t=>Cr(t,e))):m(t)&&Cr(t,e)?0:-1}const kr=e=>"_"===e[0]||"$stable"===e,Or=e=>p(e)?e.map(ai):[ai(e)],Lr=(e,t,n)=>{if(t._n)return t;const o=Vn(((...e)=>Or(t(...e))),n);return o._c=!1,o},$r=(e,t,n)=>{const o=e._ctx;for(const r in e){if(kr(r))continue;const n=e[r];if(m(n))t[r]=Lr(0,n,o);else if(null!=n){const e=Or(n);t[r]=()=>e}}},Ar=(e,t)=>{const n=Or(t);e.slots.default=()=>n};function Pr(e,t,n,r,i=!1){if(p(e))return void e.forEach(((e,o)=>Pr(e,t&&(p(t)?t[o]:t),n,r,i)));if(bo(r)&&!i)return;const s=4&r.shapeFlag?Ti(r.component)||r.component.proxy:r.el,a=i?null:s,{i:l,r:c}=e,d=t&&t.r,h=l.refs===o?l.refs={}:l.refs,g=l.setupState;if(null!=d&&d!==c&&(v(d)?(h[d]=null,f(g,d)&&(g[d]=null)):nn(d)&&(d.value=null)),m(c))dn(c,l,12,[a,h]);else{const t=v(c),o=nn(c);if(t||o){const r=()=>{if(e.f){const n=t?f(g,c)?g[c]:h[c]:c.value;i?p(n)&&u(n,s):p(n)?n.includes(s)||n.push(s):t?(h[c]=[s],f(g,c)&&(g[c]=h[c])):(c.value=[s],e.k&&(h[e.k]=c.value))}else t?(h[c]=a,f(g,c)&&(g[c]=a)):o&&(c.value=a,e.k&&(h[e.k]=a))};a?(r.id=-1,Rr(r,n)):r()}}}const Rr=function(e,t){var n;t&&t.pendingBranch?p(e)?t.effects.push(...e):t.effects.push(e):(p(n=e)?bn.push(...n):_n&&_n.includes(n,n.allowRecurse?wn+1:wn)||bn.push(n),En())};function Br(e){return function(e,t){I().__VUE__=!0;const{insert:n,remove:s,patchProp:a,forcePatchProp:l,createElement:u,createText:d,createComment:p,setText:h,setElementText:g,parentNode:m,nextSibling:v,setScopeId:y=i,insertStaticContent:b}=e,w=(e,t,n,o=null,r=null,i=null,s,a=null,l=!!t.dynamicChildren)=>{if(e===t)return;e&&!Zr(e,t)&&(o=te(e),G(e,r,i,!0),e=null),-2===t.patchFlag&&(l=!1,t.dynamicChildren=null);const{type:c,ref:u,shapeFlag:d}=t;switch(c){case Fr:x(e,t,n,o);break;case Dr:S(e,t,n,o);break;case Hr:null==e&&T(t,n,o,s);break;case Vr:F(e,t,n,o,r,i,s,a,l);break;default:1&d?L(e,t,n,o,r,i,s,a,l):6&d?D(e,t,n,o,r,i,s,a,l):(64&d||128&d)&&c.process(e,t,n,o,r,i,s,a,l,re)}null!=u&&r&&Pr(u,e&&e.ref,i,t||e,!t)},x=(e,t,o,r)=>{if(null==e)n(t.el=d(t.children),o,r);else{const n=t.el=e.el;t.children!==e.children&&h(n,t.children)}},S=(e,t,o,r)=>{null==e?n(t.el=p(t.children||""),o,r):t.el=e.el},T=(e,t,n,o)=>{[e.el,e.anchor]=b(e.children,t,n,o,e.el,e.anchor)},E=({el:e,anchor:t},o,r)=>{let i;for(;e&&e!==t;)i=v(e),n(e,o,r),e=i;n(t,o,r)},k=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=v(e),s(e),e=n;s(t)},L=(e,t,n,o,r,i,s,a,l)=>{"svg"===t.type?s="svg":"math"===t.type&&(s="mathml"),null==e?A(t,n,o,r,i,s,a,l):j(e,t,r,i,s,a,l)},A=(e,t,o,r,i,s,l,c)=>{let d,f;const{props:p,shapeFlag:h,transition:m,dirs:v}=e;if(d=e.el=u(e.type,s,p&&p.is,p),8&h?g(d,e.children):16&h&&R(e.children,d,null,r,i,Nr(e,s),l,c),v&&io(e,null,r,"created"),P(d,e,e.scopeId,l,r),p){for(const t in p)"value"===t||C(t)||a(d,t,null,p[t],s,e.children,r,i,ee);"value"in p&&a(d,"value",null,p.value,s),(f=p.onVnodeBeforeMount)&&di(f,r,e)}Object.defineProperty(d,"__vueParentComponent",{value:r,enumerable:!1}),v&&io(e,null,r,"beforeMount");const y=function(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}(i,m);y&&m.beforeEnter(d),n(d,t,o),((f=p&&p.onVnodeMounted)||y||v)&&Rr((()=>{f&&di(f,r,e),y&&m.enter(d),v&&io(e,null,r,"mounted")}),i)},P=(e,t,n,o,r)=>{if(n&&y(e,n),o)for(let i=0;i{for(let c=l;c{const u=t.el=e.el;let{patchFlag:d,dynamicChildren:f,dirs:p}=t;d|=16&e.patchFlag;const h=e.props||o,m=t.props||o;let v;if(n&&jr(n,!1),(v=m.onVnodeBeforeUpdate)&&di(v,n,t,e),p&&io(t,e,n,"beforeUpdate"),n&&jr(n,!0),f?M(e.dynamicChildren,f,u,n,r,Nr(t,i),s):c||z(e,t,u,null,n,r,Nr(t,i),s,!1),d>0){if(16&d)V(u,t,h,m,n,r,i);else if(2&d&&h.class!==m.class&&a(u,"class",null,m.class,i),4&d&&a(u,"style",h.style,m.style,i),8&d){const o=t.dynamicProps;for(let t=0;t{v&&di(v,n,t,e),p&&io(t,e,n,"updated")}),r)},M=(e,t,n,o,r,i,s)=>{for(let a=0;a{if(n!==r){if(n!==o)for(const o in n)C(o)||o in r||a(e,o,n[o],null,c,t.children,i,s,ee);for(const o in r){if(C(o))continue;const u=r[o],d=n[o];(u!==d&&"value"!==o||l&&l(e,o))&&a(e,o,d,u,c,t.children,i,s,ee)}"value"in r&&a(e,"value",n.value,r.value,c)}},F=(e,t,o,r,i,s,a,l,c)=>{const u=t.el=e?e.el:d(""),f=t.anchor=e?e.anchor:d("");let{patchFlag:p,dynamicChildren:h,slotScopeIds:g}=t;g&&(l=l?l.concat(g):g),null==e?(n(u,o,r),n(f,o,r),R(t.children||[],o,f,i,s,a,l,c)):p>0&&64&p&&h&&e.dynamicChildren?(M(e.dynamicChildren,h,o,i,s,a,l),(null!=t.key||i&&t===i.subTree)&&Mr(e,t,!0)):z(e,t,o,f,i,s,a,l,c)},D=(e,t,n,o,r,i,s,a,l)=>{t.slotScopeIds=a,null==e?512&t.shapeFlag?r.ctx.activate(t,n,o,s,l):H(t,n,o,r,i,s,l):W(e,t,l)},H=(e,t,n,r,i,s,a)=>{const l=e.component=function(e,t,n){const r=e.type,i=(t?t.appContext:e.appContext)||fi,s={uid:pi++,vnode:e,type:r,parent:t,appContext:i,get renderer(){return"app"===r.mpType?"app":this.$pageInstance&&this.$pageInstance==s?"page":"component"},root:null,next:null,subTree:null,effect:null,update:null,scope:new Me(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(i.provides),accessCache:null,renderCache:[],components:null,directives:null,propsOptions:xr(r,i),emitsOptions:Bn(r,i),emit:null,emitted:null,propsDefaults:o,inheritAttrs:r.inheritAttrs,ctx:o,data:o,props:o,attrs:o,slots:o,refs:o,setupState:o,setupContext:null,attrsProxy:null,slotsProxy:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,bda:null,da:null,ba:null,a:null,rtg:null,rtc:null,ec:null,sp:null};s.ctx={_:s},s.root=t?t.root:s,s.emit=Pn.bind(null,s),s.$pageInstance=t&&t.$pageInstance,e.ce&&e.ce(s);return s}(e,r,i);if(xo(e)&&(l.ctx.renderer=re),function(e,t=!1){t&&vi(t);const{props:n,children:o}=e.vnode,r=_i(e);(function(e,t,n,o=!1){const r={},i={};N(i,Qr,1),e.propsDefaults=Object.create(null),br(e,t,r,i);for(const s in e.propsOptions[0])s in r||(r[s]=void 0);n?e.props=o?r:Ht(r):e.type.props?e.props=r:e.props=i,e.attrs=i})(e,n,r,t),((e,t)=>{if(32&e.vnode.shapeFlag){const n=t._;n?(e.slots=Yt(t),N(t,"_",n)):$r(t,e.slots={})}else e.slots={},t&&Ar(e,t);N(e.slots,Qr,1)})(e,o);const i=r?function(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=Gt(new Proxy(e.ctx,Qo));const{setup:o}=n;if(o){const n=e.setupContext=o.length>1?function(e){const t=t=>{e.exposed=t||{}};return{get attrs(){return function(e){return e.attrsProxy||(e.attrsProxy=new Proxy(e.attrs,{get:(t,n)=>(nt(e,0,"$attrs"),t[n])}))}(e)},slots:e.slots,emit:e.emit,expose:t}}(e):null,r=yi(e);qe();const i=dn(o,e,0,[e.props,n]);if(ze(),r(),_(i)){if(i.then(bi,bi),t)return i.then((n=>{xi(e,n,t)})).catch((t=>{pn(t,e,0)}));e.asyncDep=i}else xi(e,i,t)}else Si(e,t)}(e,t):void 0;t&&vi(!1)}(l),l.asyncDep){if(i&&i.registerDep(l,U),!e.el){const e=l.subTree=oi(Dr);S(null,e,t,n)}}else U(l,e,t,n,i,s,a)},W=(e,t,n)=>{const o=t.component=e.component;if(function(e,t,n){const{props:o,children:r,component:i}=e,{props:s,children:a,patchFlag:l}=t,c=i.emitsOptions;if(t.dirs||t.transition)return!0;if(!(n&&l>=0))return!(!r&&!a||a&&a.$stable)||o!==s&&(o?!s||Wn(o,s,c):!!s);if(1024&l)return!0;if(16&l)return o?Wn(o,s,c):!!s;if(8&l){const e=t.dynamicProps;for(let t=0;tyn&&vn.splice(t,1)}(o.update),o.effect.dirty=!0,o.update()}else t.el=e.el,o.vnode=t},U=(e,t,n,o,r,s,a)=>{const l=()=>{if(e.isMounted){let{next:t,bu:n,u:o,parent:i,vnode:c}=e;{const n=Ir(e);if(n)return t&&(t.el=c.el,q(e,t,a)),void n.asyncDep.then((()=>{e.isUnmounted||l()}))}let u,d=t;jr(e,!1),t?(t.el=c.el,q(e,t,a)):t=c,n&&B(n),(u=t.props&&t.props.onVnodeBeforeUpdate)&&di(u,i,t,c),jr(e,!0);const f=Fn(e),p=e.subTree;e.subTree=f,w(p,f,m(p.el),te(p),e,r,s),t.el=f.el,null===d&&function({vnode:e,parent:t},n){for(;t;){const o=t.subTree;if(o.suspense&&o.suspense.activeBranch===e&&(o.el=e.el),o!==e)break;(e=t.vnode).el=n,t=t.parent}}(e,f.el),o&&Rr(o,r),(u=t.props&&t.props.onVnodeUpdated)&&Rr((()=>di(u,i,t,c)),r)}else{let i;const{el:a,props:l}=t,{bm:c,m:u,parent:d}=e,f=bo(t);if(jr(e,!1),c&&B(c),!f&&(i=l&&l.onVnodeBeforeMount)&&di(i,d,t),jr(e,!0),a&&se){const n=()=>{e.subTree=Fn(e),se(a,e.subTree,e,r,null)};f?t.type.__asyncLoader().then((()=>!e.isUnmounted&&n())):n()}else{const i=e.subTree=Fn(e);w(null,i,n,o,e,r,s),t.el=i.el}if(u&&Rr(u,r),!f&&(i=l&&l.onVnodeMounted)){const e=t;Rr((()=>di(i,d,e)),r)}(256&t.shapeFlag||d&&bo(d.vnode)&&256&d.vnode.shapeFlag)&&(e.ba&&Bo(e.ba),e.a&&Rr(e.a,r)),e.isMounted=!0,t=n=o=null}},c=e.effect=new Ie(l,i,(()=>Cn(u)),e.scope),u=e.update=()=>{c.dirty&&c.run()};u.id=e.uid,jr(e,!0),u()},q=(e,t,n)=>{t.component=e;const r=e.vnode.props;e.vnode=t,e.next=null,function(e,t,n,o){const{props:r,attrs:i,vnode:{patchFlag:s}}=e,a=Yt(r),[l]=e.propsOptions;let c=!1;if(!(o||s>0)||16&s){let o;br(e,t,r,i)&&(c=!0);for(const i in a)t&&(f(t,i)||(o=$(i))!==i&&f(t,o))||(l?!n||void 0===n[i]&&void 0===n[o]||(r[i]=wr(l,a,i,void 0,e,!0)):delete r[i]);if(i!==a)for(const e in i)t&&f(t,e)||(delete i[e],c=!0)}else if(8&s){const n=e.vnode.dynamicProps;for(let o=0;o{const{vnode:r,slots:i}=e;let s=!0,a=o;if(32&r.shapeFlag){const e=t._;e?n&&1===e?s=!1:(c(i,t),n||1!==e||delete i._):(s=!t.$stable,$r(t,i)),a=t}else t&&(Ar(e,t),a={default:1});if(s)for(const o in i)kr(o)||null!=a[o]||delete i[o]})(e,t.children,n),qe(),kn(e),ze()},z=(e,t,n,o,r,i,s,a,l=!1)=>{const c=e&&e.children,u=e?e.shapeFlag:0,d=t.children,{patchFlag:f,shapeFlag:p}=t;if(f>0){if(128&f)return void K(c,d,n,o,r,i,s,a,l);if(256&f)return void X(c,d,n,o,r,i,s,a,l)}8&p?(16&u&&ee(c,r,i),d!==c&&g(n,d)):16&u?16&p?K(c,d,n,o,r,i,s,a,l):ee(c,r,i,!0):(8&u&&g(n,""),16&p&&R(d,n,o,r,i,s,a,l))},X=(e,t,n,o,i,s,a,l,c)=>{t=t||r;const u=(e=e||r).length,d=t.length,f=Math.min(u,d);let p;for(p=0;pd?ee(e,i,s,!0,!1,f):R(t,n,o,i,s,a,l,c,f)},K=(e,t,n,o,i,s,a,l,c)=>{let u=0;const d=t.length;let f=e.length-1,p=d-1;for(;u<=f&&u<=p;){const o=e[u],r=t[u]=c?li(t[u]):ai(t[u]);if(!Zr(o,r))break;w(o,r,n,null,i,s,a,l,c),u++}for(;u<=f&&u<=p;){const o=e[f],r=t[p]=c?li(t[p]):ai(t[p]);if(!Zr(o,r))break;w(o,r,n,null,i,s,a,l,c),f--,p--}if(u>f){if(u<=p){const e=p+1,r=ep)for(;u<=f;)G(e[u],i,s,!0),u++;else{const h=u,g=u,m=new Map;for(u=g;u<=p;u++){const e=t[u]=c?li(t[u]):ai(t[u]);null!=e.key&&m.set(e.key,u)}let v,y=0;const b=p-g+1;let _=!1,x=0;const S=new Array(b);for(u=0;u=b){G(o,i,s,!0);continue}let r;if(null!=o.key)r=m.get(o.key);else for(v=g;v<=p;v++)if(0===S[v-g]&&Zr(o,t[v])){r=v;break}void 0===r?G(o,i,s,!0):(S[r-g]=u+1,r>=x?x=r:_=!0,w(o,t[r],n,null,i,s,a,l,c),y++)}const T=_?function(e){const t=e.slice(),n=[0];let o,r,i,s,a;const l=e.length;for(o=0;o>1,e[n[a]]0&&(t[o]=n[i-1]),n[i]=o)}}i=n.length,s=n[i-1];for(;i-- >0;)n[i]=s,s=t[s];return n}(S):r;for(v=T.length-1,u=b-1;u>=0;u--){const e=g+u,r=t[e],f=e+1{const{el:s,type:a,transition:l,children:c,shapeFlag:u}=e;if(6&u)return void Y(e.component.subTree,t,o,r);if(128&u)return void e.suspense.move(t,o,r);if(64&u)return void a.move(e,t,o,re);if(a===Vr){n(s,t,o);for(let e=0;el.enter(s)),i);else{const{leave:e,delayLeave:r,afterLeave:i}=l,a=()=>n(s,t,o),c=()=>{e(s,(()=>{a(),i&&i()}))};r?r(s,a,c):c()}else n(s,t,o)},G=(e,t,n,o=!1,r=!1)=>{const{type:i,props:s,ref:a,children:l,dynamicChildren:c,shapeFlag:u,patchFlag:d,dirs:f}=e;if(null!=a&&Pr(a,null,n,e,!0),256&u)return void t.ctx.deactivate(e);const p=1&u&&f,h=!bo(e);let g;if(h&&(g=s&&s.onVnodeBeforeUnmount)&&di(g,t,e),6&u)Q(e.component,n,o);else{if(128&u)return void e.suspense.unmount(n,o);p&&io(e,null,t,"beforeUnmount"),64&u?e.type.remove(e,t,n,r,re,o):c&&(i!==Vr||d>0&&64&d)?ee(c,t,n,!1,!0):(i===Vr&&384&d||!r&&16&u)&&ee(l,t,n),o&&J(e)}(h&&(g=s&&s.onVnodeUnmounted)||p)&&Rr((()=>{g&&di(g,t,e),p&&io(e,null,t,"unmounted")}),n)},J=e=>{const{type:t,el:n,anchor:o,transition:r}=e;if(t===Vr)return void Z(n,o);if(t===Hr)return void k(e);const i=()=>{s(n),r&&!r.persisted&&r.afterLeave&&r.afterLeave()};if(1&e.shapeFlag&&r&&!r.persisted){const{leave:t,delayLeave:o}=r,s=()=>t(n,i);o?o(e.el,i,s):s()}else i()},Z=(e,t)=>{let n;for(;e!==t;)n=v(e),s(e),e=n;s(t)},Q=(e,t,n)=>{const{bum:o,scope:r,update:i,subTree:s,um:a}=e;o&&B(o),r.stop(),i&&(i.active=!1,G(s,e,t,n)),a&&Rr(a,t),Rr((()=>{e.isUnmounted=!0}),t),t&&t.pendingBranch&&!t.isUnmounted&&e.asyncDep&&!e.asyncResolved&&e.suspenseId===t.pendingId&&(t.deps--,0===t.deps&&t.resolve())},ee=(e,t,n,o=!1,r=!1,i=0)=>{for(let s=i;s6&e.shapeFlag?te(e.component.subTree):128&e.shapeFlag?e.suspense.next():v(e.anchor||e.el);let ne=!1;const oe=(e,t,n)=>{null==e?t._vnode&&G(t._vnode,null,null,!0):w(t._vnode||null,e,t,null,null,null,n),ne||(ne=!0,kn(),On(),ne=!1),t._vnode=e},re={p:w,um:G,m:Y,r:J,mt:H,mc:R,pc:z,pbc:M,n:te,o:e};let ie,se;t&&([ie,se]=t(re));return{render:oe,hydrate:ie,createApp:gr(oe,ie)}}(e)}function Nr({type:e,props:t},n){return"svg"===n&&"foreignObject"===e||"mathml"===n&&"annotation-xml"===e&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function jr({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function Mr(e,t,n=!1){const o=e.children,r=t.children;if(p(o)&&p(r))for(let i=0;i0?Ur||r:null,Wr.pop(),Ur=Wr[Wr.length-1]||null,zr>0&&Ur&&Ur.push(e),e}function Yr(e,t,n,o,r,i){return Kr(ni(e,t,n,o,r,i,!0))}function Gr(e,t,n,o,r){return Kr(oi(e,t,n,o,r,!0))}function Jr(e){return!!e&&!0===e.__v_isVNode}function Zr(e,t){return e.type===t.type&&e.key===t.key}const Qr="__vInternal",ei=({key:e})=>null!=e?e:null,ti=({ref:e,ref_key:t,ref_for:n})=>("number"==typeof e&&(e=""+e),null!=e?v(e)||nn(e)||m(e)?{i:jn,r:e,k:t,f:!!n}:e:null);function ni(e,t=null,n=null,o=0,r=null,i=(e===Vr?0:1),s=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&ei(t),ref:t&&ti(t),scopeId:Mn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:o,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:jn};return a?(ci(l,n),128&i&&e.normalize(l)):n&&(l.shapeFlag|=v(n)?8:16),zr>0&&!s&&Ur&&(l.patchFlag>0||6&i)&&32!==l.patchFlag&&Ur.push(l),l}const oi=function(e,t=null,n=null,o=0,r=null,i=!1){e&&e!==qn||(e=Dr);if(Jr(e)){const o=ri(e,t,!0);return n&&ci(o,n),zr>0&&!i&&Ur&&(6&o.shapeFlag?Ur[Ur.indexOf(e)]=o:Ur.push(o)),o.patchFlag|=-2,o}s=e,m(s)&&"__vccOpts"in s&&(e=e.__vccOpts);var s;if(t){t=function(e){return e?Kt(e)||Qr in e?c({},e):e:null}(t);let{class:e,style:n}=t;e&&!v(e)&&(t.class=ue(e)),b(n)&&(Kt(n)&&!p(n)&&(n=c({},n)),t.style=ce(n))}const a=v(e)?1:Yn(e)?128:(e=>e.__isTeleport)(e)?64:b(e)?4:m(e)?2:0;return ni(e,t,n,o,r,a,i,!0)};function ri(e,t,n=!1){const{props:o,ref:r,patchFlag:i,children:s}=e,a=t?ui(o||{},t):o;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:a,key:a&&ei(a),ref:t&&t.ref?n&&r?p(r)?r.concat(ti(t)):[r,ti(t)]:ti(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Vr?-1===i?16:16|i:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&ri(e.ssContent),ssFallback:e.ssFallback&&ri(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}}function ii(e=" ",t=0){return oi(Fr,null,e,t)}function si(e="",t=!1){return t?(qr(),Gr(Dr,null,e)):oi(Dr,null,e)}function ai(e){return null==e||"boolean"==typeof e?oi(Dr):p(e)?oi(Vr,null,e.slice()):"object"==typeof e?li(e):oi(Fr,null,String(e))}function li(e){return null===e.el&&-1!==e.patchFlag||e.memo?e:ri(e)}function ci(e,t){let n=0;const{shapeFlag:o}=e;if(null==t)t=null;else if(p(t))n=16;else if("object"==typeof t){if(65&o){const n=t.default;return void(n&&(n._c&&(n._d=!1),ci(e,n()),n._c&&(n._d=!0)))}{n=32;const o=t._;o||Qr in t?3===o&&jn&&(1===jn.slots._?t._=1:(t._=2,e.patchFlag|=1024)):t._ctx=jn}}else m(t)?(t={default:t,_ctx:jn},n=32):(t=String(t),64&o?(n=16,t=[ii(t)]):n=8);e.children=t,e.shapeFlag|=n}function ui(...e){const t={};for(let n=0;nhi||jn;let mi,vi;{const e=I(),t=(t,n)=>{let o;return(o=e[t])||(o=e[t]=[]),o.push(n),e=>{o.length>1?o.forEach((t=>t(e))):o[0](e)}};mi=t("__VUE_INSTANCE_SETTERS__",(e=>hi=e)),vi=t("__VUE_SSR_SETTERS__",(e=>wi=e))}const yi=e=>{const t=hi;return mi(e),e.scope.on(),()=>{e.scope.off(),mi(t)}},bi=()=>{hi&&hi.scope.off(),mi(null)};function _i(e){return 4&e.vnode.shapeFlag}let wi=!1;function xi(e,t,n){m(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:b(t)&&(e.setupState=un(t)),Si(e,n)}function Si(e,t,n){const o=e.type;e.render||(e.render=o.render||i);{const t=yi(e);qe();try{nr(e)}finally{ze(),t()}}}function Ti(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(un(Gt(e.exposed)),{get:(t,n)=>n in t?t[n]:n in Jo?Jo[n](e):void 0,has:(e,t)=>t in e||t in Jo}))}function Ci(e,t=!0){return m(e)?e.displayName||e.name:e.name||t&&e.__name}const Ei=(e,t)=>{const n=function(e,t,n=!1){let o,r;const s=m(e);return s?(o=e,r=i):(o=e.get,r=e.set),new Qt(o,r,s||!r,n)}(e,0,wi);return n};function ki(e,t,n){const o=arguments.length;return 2===o?b(t)&&!p(t)?Jr(t)?oi(e,null,[t]):oi(e,t):oi(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):3===o&&Jr(n)&&(n=[n]),oi(e,t,n))}const Oi="3.4.21",Li="undefined"!=typeof document?document:null,$i=Li&&Li.createElement("template"),Ai={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,o)=>{const r="svg"===t?Li.createElementNS("http://www.w3.org/2000/svg",e):"mathml"===t?Li.createElementNS("http://www.w3.org/1998/Math/MathML",e):n?Li.createElement(e,{is:n}):Li.createElement(e);return"select"===e&&o&&null!=o.multiple&&r.setAttribute("multiple",o.multiple),r},createText:e=>Li.createTextNode(e),createComment:e=>Li.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Li.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,o,r,i){const s=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),r!==i&&(r=r.nextSibling););else{$i.innerHTML="svg"===o?`${e}`:"mathml"===o?`${e}`:e;const r=$i.content;if("svg"===o||"mathml"===o){const e=r.firstChild;for(;e.firstChild;)r.appendChild(e.firstChild);r.removeChild(e)}t.insertBefore(r,n)}return[s?s.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Pi="transition",Ri=Symbol("_vtc"),Bi=(e,{slots:t})=>ki(uo,function(e){const t={};for(const c in e)c in Ni||(t[c]=e[c]);if(!1===e.css)return t;const{name:n="v",type:o,duration:r,enterFromClass:i=`${n}-enter-from`,enterActiveClass:s=`${n}-enter-active`,enterToClass:a=`${n}-enter-to`,appearFromClass:l=i,appearActiveClass:u=s,appearToClass:d=a,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,g=function(e){if(null==e)return null;if(b(e))return[Ii(e.enter),Ii(e.leave)];{const t=Ii(e);return[t,t]}}(r),m=g&&g[0],v=g&&g[1],{onBeforeEnter:y,onEnter:_,onEnterCancelled:w,onLeave:x,onLeaveCancelled:S,onBeforeAppear:T=y,onAppear:C=_,onAppearCancelled:E=w}=t,k=(e,t,n)=>{Fi(e,t?d:a),Fi(e,t?u:s),n&&n()},O=(e,t)=>{e._isLeaving=!1,Fi(e,f),Fi(e,h),Fi(e,p),t&&t()},L=e=>(t,n)=>{const r=e?C:_,s=()=>k(t,e,n);ji(r,[t,s]),Di((()=>{Fi(t,e?l:i),Vi(t,e?d:a),Mi(r)||Wi(t,o,m,s)}))};return c(t,{onBeforeEnter(e){ji(y,[e]),Vi(e,i),Vi(e,s)},onBeforeAppear(e){ji(T,[e]),Vi(e,l),Vi(e,u)},onEnter:L(!1),onAppear:L(!0),onLeave(e,t){e._isLeaving=!0;const n=()=>O(e,t);Vi(e,f),document.body.offsetHeight,Vi(e,p),Di((()=>{e._isLeaving&&(Fi(e,f),Vi(e,h),Mi(x)||Wi(e,o,v,n))})),ji(x,[e,n])},onEnterCancelled(e){k(e,!1),ji(w,[e])},onAppearCancelled(e){k(e,!0),ji(E,[e])},onLeaveCancelled(e){O(e),ji(S,[e])}})}(e),t);Bi.displayName="Transition";const Ni={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String};Bi.props=c({},co,Ni);const ji=(e,t=[])=>{p(e)?e.forEach((e=>e(...t))):e&&e(...t)},Mi=e=>!!e&&(p(e)?e.some((e=>e.length>1)):e.length>1);function Ii(e){const t=(e=>{const t=v(e)?Number(e):NaN;return isNaN(t)?e:t})(e);return t}function Vi(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.add(t))),(e[Ri]||(e[Ri]=new Set)).add(t)}function Fi(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.remove(t)));const n=e[Ri];n&&(n.delete(t),n.size||(e[Ri]=void 0))}function Di(e){requestAnimationFrame((()=>{requestAnimationFrame(e)}))}let Hi=0;function Wi(e,t,n,o){const r=e._endId=++Hi,i=()=>{r===e._endId&&o()};if(n)return setTimeout(i,n);const{type:s,timeout:a,propCount:l}=function(e,t){const n=window.getComputedStyle(e),o=e=>(n[e]||"").split(", "),r=o("transitionDelay"),i=o("transitionDuration"),s=Ui(r,i),a=o("animationDelay"),l=o("animationDuration"),c=Ui(a,l);let u=null,d=0,f=0;t===Pi?s>0&&(u=Pi,d=s,f=i.length):"animation"===t?c>0&&(u="animation",d=c,f=l.length):(d=Math.max(s,c),u=d>0?s>c?Pi:"animation":null,f=u?u===Pi?i.length:l.length:0);const p=u===Pi&&/\b(transform|all)(,|$)/.test(o("transitionProperty").toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}(e,t);if(!s)return o();const c=s+"end";let u=0;const d=()=>{e.removeEventListener(c,f),i()},f=t=>{t.target===e&&++u>=l&&d()};setTimeout((()=>{uqi(t)+qi(e[n]))))}function qi(e){return"auto"===e?0:1e3*Number(e.slice(0,-1).replace(",","."))}const zi=Symbol("_vod"),Xi=Symbol("_vsh"),Ki={beforeMount(e,{value:t},{transition:n}){e[zi]="none"===e.style.display?"":e.style.display,n&&t?n.beforeEnter(e):Yi(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:o}){!t!=!n&&(o?t?(o.beforeEnter(e),Yi(e,!0),o.enter(e)):o.leave(e,(()=>{Yi(e,!1)})):Yi(e,t))},beforeUnmount(e,{value:t}){Yi(e,t)}};function Yi(e,t){e.style.display=t?e[zi]:"none",e[Xi]=!t}const Gi=Symbol(""),Ji=/(^|;)\s*display\s*:/;const Zi=/\s*!important$/;function Qi(e,t,n){if(p(n))n.forEach((n=>Qi(e,t,n)));else if(null==n&&(n=""),n=cs(n),t.startsWith("--"))e.setProperty(t,n);else{const o=function(e,t){const n=ts[t];if(n)return n;let o=O(t);if("filter"!==o&&o in e)return ts[t]=o;o=A(o);for(let r=0;re.replace(ve,((e,t)=>{if(!t)return e;if(1===as)return`${t}${ss}`;const n=function(e,t){const n=Math.pow(10,t+1),o=Math.floor(e*n);return 10*Math.round(o/10)/n}(parseFloat(t)*as,ls);return 0===n?"0":`${n}${ss}`})));var ss,as,ls;const cs=e=>v(e)?is(e):e,us="http://www.w3.org/1999/xlink";const ds=Symbol("_vei");function fs(e,t,n,o,r=null){const i=e[ds]||(e[ds]={}),s=i[t];if(o&&s)s.value=o;else{const[n,a]=function(e){let t;if(ps.test(e)){let n;for(t={};n=e.match(ps);)e=e.slice(0,e.length-n[0].length),t[n[0].toLowerCase()]=!0}return[":"===e[2]?e.slice(3):$(e.slice(2)),t]}(t);if(o){const s=i[t]=function(e,t){const n=e=>{if(e._vts){if(e._vts<=n.attached)return}else e._vts=Date.now();const o=t&&t.proxy,r=o&&o.$nne,{value:i}=n;if(r&&p(i)){const n=ms(e,i);for(let o=0;ohs||(gs.then((()=>hs=0)),hs=Date.now()))(),n}(o,r);!function(e,t,n,o){e.addEventListener(t,n,o)}(e,n,s,a)}else s&&(!function(e,t,n,o){e.removeEventListener(t,n,o)}(e,n,s,a),i[t]=void 0)}}const ps=/(?:Once|Passive|Capture)$/;let hs=0;const gs=Promise.resolve();function ms(e,t){if(p(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map((e=>{const t=t=>!t._stopped&&e&&e(t);return t.__wwe=e.__wwe,t}))}return t}const vs=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123;const ys=["ctrl","shift","alt","meta"],bs={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&0!==e.button,middle:e=>"button"in e&&1!==e.button,right:e=>"button"in e&&2!==e.button,exact:(e,t)=>ys.some((n=>e[`${n}Key`]&&!t.includes(n)))},_s=(e,t)=>{const n=e._withMods||(e._withMods={}),o=t.join(".");return n[o]||(n[o]=(n,...o)=>{for(let e=0;e{if(0===t.indexOf("change:"))return function(e,t,n,o=null){if(!n||!o)return;const r=t.replace("change:",""),{attrs:i}=o,s=i[r],a=(e.__wxsProps||(e.__wxsProps={}))[r];if(a===s)return;e.__wxsProps[r]=s;const l=o.proxy;Tn((()=>{n(s,a,l.$gcd(l,!0),l.$gcd(l,!1))}))}(e,t,o,s);const d="svg"===r;"class"===t?function(e,t,n){const{__wxsAddClass:o,__wxsRemoveClass:r}=e;r&&r.length&&(t=(t||"").split(/\s+/).filter((e=>-1===r.indexOf(e))).join(" "),r.length=0),o&&o.length&&(t=(t||"")+" "+o.join(" "));const i=e[Ri];i&&(t=(t?[t,...i]:[...i]).join(" ")),null==t?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}(e,o,d):"style"===t?function(e,t,n){const o=e.style,r=v(n);let i=!1;if(n&&!r){if(t)if(v(t))for(const e of t.split(";")){const t=e.slice(0,e.indexOf(":")).trim();null==n[t]&&Qi(o,t,"")}else for(const e in t)null==n[e]&&Qi(o,e,"");for(const e in n)"display"===e&&(i=!0),Qi(o,e,n[e])}else if(r){if(t!==n){const e=o[Gi];e&&(n+=";"+e),o.cssText=n,i=Ji.test(n)}}else t&&e.removeAttribute("style");zi in e&&(e[zi]=i?o.display:"",e[Xi]&&(o.display="none"));const{__wxsStyle:s}=e;if(s)for(const a in s)Qi(o,a,s[a])}(e,n,o):a(t)?l(t)||fs(e,t,0,o,s):("."===t[0]?(t=t.slice(1),1):"^"===t[0]?(t=t.slice(1),0):function(e,t,n,o){if(o)return"innerHTML"===t||"textContent"===t||!!(t in e&&vs(t)&&m(n));if("spellcheck"===t||"draggable"===t||"translate"===t)return!1;if("form"===t)return!1;if("list"===t&&"INPUT"===e.tagName)return!1;if("type"===t&&"TEXTAREA"===e.tagName)return!1;if("width"===t||"height"===t){const t=e.tagName;if("IMG"===t||"VIDEO"===t||"CANVAS"===t||"SOURCE"===t)return!1}if(vs(t)&&v(n))return!1;return t in e}(e,t,o,d))?function(e,t,n,o,r,i,s){if("innerHTML"===t||"textContent"===t)return o&&s(o,r,i),void(e[t]=null==n?"":n);const a=e.tagName;if("value"===t&&"PROGRESS"!==a&&!a.includes("-")){const o=null==n?"":n;return("OPTION"===a?e.getAttribute("value")||"":e.value)===o&&"_value"in e||(e.value=o),null==n&&e.removeAttribute(t),void(e._value=n)}let l=!1;if(""===n||null==n){const o=typeof e[t];"boolean"===o?n=z(n):null==n&&"string"===o?(n="",l=!0):"number"===o&&(n=0,l=!0)}try{e[t]=n}catch(c){}l&&e.removeAttribute(t)}(e,t,o,i,s,c,u):("true-value"===t?e._trueValue=o:"false-value"===t&&(e._falseValue=o),function(e,t,n,o,r){if(o&&t.startsWith("xlink:"))null==n?e.removeAttributeNS(us,t.slice(6,t.length)):e.setAttributeNS(us,t,n);else{const o=q(t);null==n||o&&!z(n)?e.removeAttribute(t):e.setAttribute(t,o?"":n)}}(e,t,o,d))},forcePatchProp:(e,t)=>0===t.indexOf("change:")||("class"===t&&e.__wxsClassChanged?(e.__wxsClassChanged=!1,!0):!("style"!==t||!e.__wxsStyleChanged)&&(e.__wxsStyleChanged=!1,!0))},Ai);let xs;const Ss=(...e)=>{const t=(xs||(xs=Br(ws))).createApp(...e),{mount:n}=t;return t.mount=e=>{const o=function(e){if(v(e)){return document.querySelector(e)}return e} +/*! + * vue-router v4.4.4 + * (c) 2024 Eduardo San Martin Morote + * @license MIT + */(e);if(!o)return;const r=t._component;m(r)||r.render||r.template||(r.template=o.innerHTML),o.innerHTML="";const i=n(o,!1,function(e){if(e instanceof SVGElement)return"svg";if("function"==typeof MathMLElement&&e instanceof MathMLElement)return"mathml"}(o));return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),i},t};const Ts="undefined"!=typeof document;function Cs(e){return"object"==typeof e||"displayName"in e||"props"in e||"__vccOpts"in e}const Es=Object.assign;function ks(e,t){const n={};for(const o in t){const r=t[o];n[o]=Ls(r)?r.map(e):e(r)}return n}const Os=()=>{},Ls=Array.isArray,$s=/#/g,As=/&/g,Ps=/\//g,Rs=/=/g,Bs=/\?/g,Ns=/\+/g,js=/%5B/g,Ms=/%5D/g,Is=/%5E/g,Vs=/%60/g,Fs=/%7B/g,Ds=/%7C/g,Hs=/%7D/g,Ws=/%20/g;function Us(e){return encodeURI(""+e).replace(Ds,"|").replace(js,"[").replace(Ms,"]")}function qs(e){return Us(e).replace(Ns,"%2B").replace(Ws,"+").replace($s,"%23").replace(As,"%26").replace(Vs,"`").replace(Fs,"{").replace(Hs,"}").replace(Is,"^")}function zs(e){return null==e?"":function(e){return Us(e).replace($s,"%23").replace(Bs,"%3F")}(e).replace(Ps,"%2F")}function Xs(e){try{return decodeURIComponent(""+e)}catch(t){}return""+e}const Ks=/\/$/;function Ys(e,t,n="/"){let o,r={},i="",s="";const a=t.indexOf("#");let l=t.indexOf("?");return a=0&&(l=-1),l>-1&&(o=t.slice(0,l),i=t.slice(l+1,a>-1?a:t.length),r=e(i)),a>-1&&(o=o||t.slice(0,a),s=t.slice(a,t.length)),o=function(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),o=e.split("/"),r=o[o.length-1];".."!==r&&"."!==r||o.push("");let i,s,a=n.length-1;for(i=0;i1&&a--}return n.slice(0,a).join("/")+"/"+o.slice(i).join("/")}(null!=o?o:t,n),{fullPath:o+(i&&"?")+i+s,path:o,query:r,hash:Xs(s)}}function Gs(e,t){return t&&e.toLowerCase().startsWith(t.toLowerCase())?e.slice(t.length)||"/":e}function Js(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Zs(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!Qs(e[n],t[n]))return!1;return!0}function Qs(e,t){return Ls(e)?ea(e,t):Ls(t)?ea(t,e):e===t}function ea(e,t){return Ls(t)?e.length===t.length&&e.every(((e,n)=>e===t[n])):1===e.length&&e[0]===t}const ta={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var na,oa,ra,ia;function sa(e){if(!e)if(Ts){const t=document.querySelector("base");e=(e=t&&t.getAttribute("href")||"/").replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return"/"!==e[0]&&"#"!==e[0]&&(e="/"+e),e.replace(Ks,"")}(oa=na||(na={})).pop="pop",oa.push="push",(ia=ra||(ra={})).back="back",ia.forward="forward",ia.unknown="";const aa=/^[^#]+#/;function la(e,t){return e.replace(aa,"#")+t}const ca=()=>({left:window.scrollX,top:window.scrollY});function ua(e){let t;if("el"in e){const n=e.el,o="string"==typeof n&&n.startsWith("#"),r="string"==typeof n?o?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=function(e,t){const n=document.documentElement.getBoundingClientRect(),o=e.getBoundingClientRect();return{behavior:t.behavior,left:o.left-n.left-(t.left||0),top:o.top-n.top-(t.top||0)}}(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(null!=t.left?t.left:window.scrollX,null!=t.top?t.top:window.scrollY)}function da(e,t){return(history.state?history.state.position-t:-1)+e}const fa=new Map;function pa(e,t){const{pathname:n,search:o,hash:r}=t,i=e.indexOf("#");if(i>-1){let t=r.includes(e.slice(i))?e.slice(i).length:1,n=r.slice(t);return"/"!==n[0]&&(n="/"+n),Gs(n,"")}return Gs(n,e)+o+r}function ha(e,t,n,o=!1,r=!1){return{back:e,current:t,forward:n,replaced:o,position:window.history.length,scroll:r?ca():null}}function ga(e){const{history:t,location:n}=window,o={value:pa(e,n)},r={value:t.state};function i(o,i,s){const a=e.indexOf("#"),l=a>-1?(n.host&&document.querySelector("base")?e:e.slice(a))+o:location.protocol+"//"+location.host+e+o;try{t[s?"replaceState":"pushState"](i,"",l),r.value=i}catch(c){console.error(c),n[s?"replace":"assign"](l)}}return r.value||i(o.value,{back:null,current:o.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0),{location:o,state:r,push:function(e,n){const s=Es({},r.value,t.state,{forward:e,scroll:ca()});i(s.current,s,!0),i(e,Es({},ha(o.value,e,null),{position:s.position+1},n),!1),o.value=e},replace:function(e,n){i(e,Es({},t.state,ha(r.value.back,e,r.value.forward,!0),n,{position:r.value.position}),!0),o.value=e}}}function ma(e){const t=ga(e=sa(e)),n=function(e,t,n,o){let r=[],i=[],s=null;const a=({state:i})=>{const a=pa(e,location),l=n.value,c=t.value;let u=0;if(i){if(n.value=a,t.value=i,s&&s===l)return void(s=null);u=c?i.position-c.position:0}else o(a);r.forEach((e=>{e(n.value,l,{delta:u,type:na.pop,direction:u?u>0?ra.forward:ra.back:ra.unknown})}))};function l(){const{history:e}=window;e.state&&e.replaceState(Es({},e.state,{scroll:ca()}),"")}return window.addEventListener("popstate",a),window.addEventListener("beforeunload",l,{passive:!0}),{pauseListeners:function(){s=n.value},listen:function(e){r.push(e);const t=()=>{const t=r.indexOf(e);t>-1&&r.splice(t,1)};return i.push(t),t},destroy:function(){for(const e of i)e();i=[],window.removeEventListener("popstate",a),window.removeEventListener("beforeunload",l)}}}(e,t.state,t.location,t.replace);const o=Es({location:"",base:e,go:function(e,t=!0){t||n.pauseListeners(),history.go(e)},createHref:la.bind(null,e)},t,n);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>t.state.value}),o}function va(e){return"string"==typeof e||"symbol"==typeof e}const ya=Symbol("");var ba,_a;function wa(e,t){return Es(new Error,{type:e,[ya]:!0},t)}function xa(e,t){return e instanceof Error&&ya in e&&(null==t||!!(e.type&t))}(_a=ba||(ba={}))[_a.aborted=4]="aborted",_a[_a.cancelled=8]="cancelled",_a[_a.duplicated=16]="duplicated";const Sa={sensitive:!1,strict:!1,start:!0,end:!0},Ta=/[.+*?^${}()[\]/\\]/g;function Ca(e,t){let n=0;for(;nt.length?1===t.length&&80===t[0]?1:-1:0}function Ea(e,t){let n=0;const o=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const Oa={type:0,value:""},La=/[a-zA-Z0-9_]/;function $a(e,t,n){const o=function(e,t){const n=Es({},Sa,t),o=[];let r=n.start?"^":"";const i=[];for(const l of e){const e=l.length?[]:[90];n.strict&&!l.length&&(r+="/");for(let t=0;t1&&("*"===a||"+"===a)&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:c,regexp:u,repeatable:"*"===a||"+"===a,optional:"*"===a||"?"===a})):t("Invalid state to consume buffer"),c="")}function f(){c+=a}for(;l{i(f)}:Os}function i(e){if(va(e)){const t=o.get(e);t&&(o.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(i),t.alias.forEach(i))}else{const t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&o.delete(e.record.name),e.children.forEach(i),e.alias.forEach(i))}}function s(e){const t=function(e,t){let n=0,o=t.length;for(;n!==o;){const r=n+o>>1;Ea(e,t[r])<0?o=r:n=r+1}const r=function(e){let t=e;for(;t=t.parent;)if(Ma(t)&&0===Ea(e,t))return t;return}(e);r&&(o=t.lastIndexOf(r,o-1));return o}(e,n);n.splice(t,0,e),e.record.name&&!Ba(e)&&o.set(e.record.name,e)}return t=ja({strict:!1,end:!0,sensitive:!1},t),e.forEach((e=>r(e))),{addRoute:r,resolve:function(e,t){let r,i,s,a={};if("name"in e&&e.name){if(r=o.get(e.name),!r)throw wa(1,{location:e});s=r.record.name,a=Es(Pa(t.params,r.keys.filter((e=>!e.optional)).concat(r.parent?r.parent.keys.filter((e=>e.optional)):[]).map((e=>e.name))),e.params&&Pa(e.params,r.keys.map((e=>e.name)))),i=r.stringify(a)}else if(null!=e.path)i=e.path,r=n.find((e=>e.re.test(i))),r&&(a=r.parse(i),s=r.record.name);else{if(r=t.name?o.get(t.name):n.find((e=>e.re.test(t.path))),!r)throw wa(1,{location:e,currentLocation:t});s=r.record.name,a=Es({},t.params,e.params),i=r.stringify(a)}const l=[];let c=r;for(;c;)l.unshift(c.record),c=c.parent;return{name:s,path:i,params:a,matched:l,meta:Na(l)}},removeRoute:i,clearRoutes:function(){n.length=0,o.clear()},getRoutes:function(){return n},getRecordMatcher:function(e){return o.get(e)}}}function Pa(e,t){const n={};for(const o of t)o in e&&(n[o]=e[o]);return n}function Ra(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const o in e.components)t[o]="object"==typeof n?n[o]:n;return t}function Ba(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Na(e){return e.reduce(((e,t)=>Es(e,t.meta)),{})}function ja(e,t){const n={};for(const o in e)n[o]=o in t?t[o]:e[o];return n}function Ma({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Ia(e){const t={};if(""===e||"?"===e)return t;const n=("?"===e[0]?e.slice(1):e).split("&");for(let o=0;oe&&qs(e))):[o&&qs(o)]).forEach((e=>{void 0!==e&&(t+=(t.length?"&":"")+n,null!=e&&(t+="="+e))}))}return t}function Fa(e){const t={};for(const n in e){const o=e[n];void 0!==o&&(t[n]=Ls(o)?o.map((e=>null==e?null:""+e)):null==o?o:""+o)}return t}const Da=Symbol(""),Ha=Symbol(""),Wa=Symbol(""),Ua=Symbol(""),qa=Symbol("");function za(){let e=[];return{add:function(t){return e.push(t),()=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)}},list:()=>e.slice(),reset:function(){e=[]}}}function Xa(e,t,n,o,r,i=(e=>e())){const s=o&&(o.enterCallbacks[r]=o.enterCallbacks[r]||[]);return()=>new Promise(((a,l)=>{const c=e=>{var i;!1===e?l(wa(4,{from:n,to:t})):e instanceof Error?l(e):"string"==typeof(i=e)||i&&"object"==typeof i?l(wa(2,{from:t,to:e})):(s&&o.enterCallbacks[r]===s&&"function"==typeof e&&s.push(e),a())},u=i((()=>e.call(o&&o.instances[r],t,n,c)));let d=Promise.resolve(u);e.length<3&&(d=d.then(c)),d.catch((e=>l(e)))}))}function Ka(e,t,n,o,r=(e=>e())){const i=[];for(const s of e)for(const e in s.components){let a=s.components[e];if("beforeRouteEnter"===t||s.instances[e])if(Cs(a)){const l=(a.__vccOpts||a)[t];l&&i.push(Xa(l,n,o,s,e,r))}else{let l=a();i.push((()=>l.then((i=>{if(!i)throw new Error(`Couldn't resolve component "${e}" at "${s.path}"`);const a=(l=i).__esModule||"Module"===l[Symbol.toStringTag]||l.default&&Cs(l.default)?i.default:i;var l;s.mods[e]=i,s.components[e]=a;const c=(a.__vccOpts||a)[t];return c&&Xa(c,n,o,s,e,r)()}))))}}return i}function Ya(e){const t=yr(Wa),n=yr(Ua),o=Ei((()=>{const n=ln(e.to);return t.resolve(n)})),r=Ei((()=>{const{matched:e}=o.value,{length:t}=e,r=e[t-1],i=n.matched;if(!r||!i.length)return-1;const s=i.findIndex(Js.bind(null,r));if(s>-1)return s;const a=Ja(e[t-2]);return t>1&&Ja(r)===a&&i[i.length-1].path!==a?i.findIndex(Js.bind(null,e[t-2])):s})),i=Ei((()=>r.value>-1&&function(e,t){for(const n in t){const o=t[n],r=e[n];if("string"==typeof o){if(o!==r)return!1}else if(!Ls(r)||r.length!==o.length||o.some(((e,t)=>e!==r[t])))return!1}return!0}(n.params,o.value.params))),s=Ei((()=>r.value>-1&&r.value===n.matched.length-1&&Zs(n.params,o.value.params)));return{route:o,href:Ei((()=>o.value.href)),isActive:i,isExactActive:s,navigate:function(n={}){return function(e){if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)return;if(e.defaultPrevented)return;if(void 0!==e.button&&0!==e.button)return;if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}e.preventDefault&&e.preventDefault();return!0}(n)?t[ln(e.replace)?"replace":"push"](ln(e.to)).catch(Os):Promise.resolve()}}}const Ga=yo({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:Ya,setup(e,{slots:t}){const n=Dt(Ya(e)),{options:o}=yr(Wa),r=Ei((()=>({[Za(e.activeClass,o.linkActiveClass,"router-link-active")]:n.isActive,[Za(e.exactActiveClass,o.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive})));return()=>{const o=t.default&&t.default(n);return e.custom?o:ki("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},o)}}});function Ja(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Za=(e,t,n)=>null!=e?e:null!=t?t:n;function Qa(e,t){if(!e)return null;const n=e(t);return 1===n.length?n[0]:n}const el=yo({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const o=yr(qa),r=Ei((()=>e.route||o.value)),i=yr(Ha,0),s=Ei((()=>{let e=ln(i);const{matched:t}=r.value;let n;for(;(n=t[e])&&!n.components;)e++;return e})),a=Ei((()=>r.value.matched[s.value]));vr(Ha,Ei((()=>s.value+1))),vr(Da,a),vr(qa,r);const l=on();return Qn((()=>[l.value,a.value,e.name]),(([e,t,n],[o,r,i])=>{t&&(t.instances[n]=e,r&&r!==t&&e&&e===o&&(t.leaveGuards.size||(t.leaveGuards=r.leaveGuards),t.updateGuards.size||(t.updateGuards=r.updateGuards))),!e||!t||r&&Js(t,r)&&o||(t.enterCallbacks[n]||[]).forEach((t=>t(e)))}),{flush:"post"}),()=>{const o=r.value,i=e.name,s=a.value,c=s&&s.components[i];if(!c)return Qa(n.default,{Component:c,route:o});const u=s.props[i],d=u?!0===u?o.params:"function"==typeof u?u(o):u:null,f=ki(c,Es({},d,t,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(s.instances[i]=null)},ref:l}));return Qa(n.default,{Component:f,route:o})||f}}});function tl(e){const t=Aa(e.routes,e),n=e.parseQuery||Ia,o=e.stringifyQuery||Va,r=e.history,i=za(),s=za(),a=za(),l=rn(ta);let c=ta;Ts&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=ks.bind(null,(e=>""+e)),d=ks.bind(null,zs),f=ks.bind(null,Xs);function p(e,i){if(i=Es({},i||l.value),"string"==typeof e){const o=Ys(n,e,i.path),s=t.resolve({path:o.path},i),a=r.createHref(o.fullPath);return Es(o,s,{params:f(s.params),hash:Xs(o.hash),redirectedFrom:void 0,href:a})}let s;if(null!=e.path)s=Es({},e,{path:Ys(n,e.path,i.path).path});else{const t=Es({},e.params);for(const e in t)null==t[e]&&delete t[e];s=Es({},e,{params:d(t)}),i.params=d(i.params)}const a=t.resolve(s,i),c=e.hash||"";a.params=u(f(a.params));const p=function(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}(o,Es({},e,{hash:(h=c,Us(h).replace(Fs,"{").replace(Hs,"}").replace(Is,"^")),path:a.path}));var h;const g=r.createHref(p);return Es({fullPath:p,hash:c,query:o===Va?Fa(e.query):e.query||{}},a,{redirectedFrom:void 0,href:g})}function h(e){return"string"==typeof e?Ys(n,e,l.value.path):Es({},e)}function g(e,t){if(c!==e)return wa(8,{from:t,to:e})}function m(e){return y(e)}function v(e){const t=e.matched[e.matched.length-1];if(t&&t.redirect){const{redirect:n}=t;let o="function"==typeof n?n(e):n;return"string"==typeof o&&(o=o.includes("?")||o.includes("#")?o=h(o):{path:o},o.params={}),Es({query:e.query,hash:e.hash,params:null!=o.path?{}:e.params},o)}}function y(e,t){const n=c=p(e),r=l.value,i=e.state,s=e.force,a=!0===e.replace,u=v(n);if(u)return y(Es(h(u),{state:"object"==typeof u?Es({},i,u.state):i,force:s,replace:a}),t||n);const d=n;let f;return d.redirectedFrom=t,!s&&function(e,t,n){const o=t.matched.length-1,r=n.matched.length-1;return o>-1&&o===r&&Js(t.matched[o],n.matched[r])&&Zs(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}(o,r,n)&&(f=wa(16,{to:d,from:r}),A(r,r,!0,!1)),(f?Promise.resolve(f):w(d,r)).catch((e=>xa(e)?xa(e,2)?e:$(e):L(e,d,r))).then((e=>{if(e){if(xa(e,2))return y(Es({replace:a},h(e.to),{state:"object"==typeof e.to?Es({},i,e.to.state):i,force:s}),t||d)}else e=S(d,r,!0,a,i);return x(d,r,e),e}))}function b(e,t){const n=g(e,t);return n?Promise.reject(n):Promise.resolve()}function _(e){const t=B.values().next().value;return t&&"function"==typeof t.runWithContext?t.runWithContext(e):e()}function w(e,t){let n;const[o,r,a]=function(e,t){const n=[],o=[],r=[],i=Math.max(t.matched.length,e.matched.length);for(let s=0;sJs(e,i)))?o.push(i):n.push(i));const a=e.matched[s];a&&(t.matched.find((e=>Js(e,a)))||r.push(a))}return[n,o,r]}(e,t);n=Ka(o.reverse(),"beforeRouteLeave",e,t);for(const i of o)i.leaveGuards.forEach((o=>{n.push(Xa(o,e,t))}));const l=b.bind(null,e,t);return n.push(l),j(n).then((()=>{n=[];for(const o of i.list())n.push(Xa(o,e,t));return n.push(l),j(n)})).then((()=>{n=Ka(r,"beforeRouteUpdate",e,t);for(const o of r)o.updateGuards.forEach((o=>{n.push(Xa(o,e,t))}));return n.push(l),j(n)})).then((()=>{n=[];for(const o of a)if(o.beforeEnter)if(Ls(o.beforeEnter))for(const r of o.beforeEnter)n.push(Xa(r,e,t));else n.push(Xa(o.beforeEnter,e,t));return n.push(l),j(n)})).then((()=>(e.matched.forEach((e=>e.enterCallbacks={})),n=Ka(a,"beforeRouteEnter",e,t,_),n.push(l),j(n)))).then((()=>{n=[];for(const o of s.list())n.push(Xa(o,e,t));return n.push(l),j(n)})).catch((e=>xa(e,8)?e:Promise.reject(e)))}function x(e,t,n){a.list().forEach((o=>_((()=>o(e,t,n)))))}function S(e,t,n,o,i){const s=g(e,t);if(s)return s;const a=t===ta,c=Ts?history.state:{};n&&(o||a?r.replace(e.fullPath,Es({scroll:a&&c&&c.scroll},i)):r.push(e.fullPath,i)),l.value=e,A(e,t,n,a),$()}let T;function C(){T||(T=r.listen(((e,t,n)=>{if(!N.listening)return;const o=p(e),i=v(o);if(i)return void y(Es(i,{replace:!0}),o).catch(Os);c=o;const s=l.value;var a,u;Ts&&(a=da(s.fullPath,n.delta),u=ca(),fa.set(a,u)),w(o,s).catch((e=>xa(e,12)?e:xa(e,2)?(y(e.to,o).then((e=>{xa(e,20)&&!n.delta&&n.type===na.pop&&r.go(-1,!1)})).catch(Os),Promise.reject()):(n.delta&&r.go(-n.delta,!1),L(e,o,s)))).then((e=>{(e=e||S(o,s,!1))&&(n.delta&&!xa(e,8)?r.go(-n.delta,!1):n.type===na.pop&&xa(e,20)&&r.go(-1,!1)),x(o,s,e)})).catch(Os)})))}let E,k=za(),O=za();function L(e,t,n){$(e);const o=O.list();return o.length?o.forEach((o=>o(e,t,n))):console.error(e),Promise.reject(e)}function $(e){return E||(E=!e,C(),k.list().forEach((([t,n])=>e?n(e):t())),k.reset()),e}function A(t,n,o,r){const{scrollBehavior:i}=e;if(!Ts||!i)return Promise.resolve();const s=!o&&function(e){const t=fa.get(e);return fa.delete(e),t}(da(t.fullPath,0))||(r||!o)&&history.state&&history.state.scroll||null;return Tn().then((()=>i(t,n,s))).then((e=>e&&ua(e))).catch((e=>L(e,t,n)))}const P=e=>r.go(e);let R;const B=new Set,N={currentRoute:l,listening:!0,addRoute:function(e,n){let o,r;return va(e)?(o=t.getRecordMatcher(e),r=n):r=e,t.addRoute(r,o)},removeRoute:function(e){const n=t.getRecordMatcher(e);n&&t.removeRoute(n)},clearRoutes:t.clearRoutes,hasRoute:function(e){return!!t.getRecordMatcher(e)},getRoutes:function(){return t.getRoutes().map((e=>e.record))},resolve:p,options:e,push:m,replace:function(e){return m(Es(h(e),{replace:!0}))},go:P,back:()=>P(-1),forward:()=>P(1),beforeEach:i.add,beforeResolve:s.add,afterEach:a.add,onError:O.add,isReady:function(){return E&&l.value!==ta?Promise.resolve():new Promise(((e,t)=>{k.add([e,t])}))},install(e){e.component("RouterLink",Ga),e.component("RouterView",el),e.config.globalProperties.$router=this,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>ln(l)}),Ts&&!R&&l.value===ta&&(R=!0,m(r.location).catch((e=>{})));const t={};for(const o in ta)Object.defineProperty(t,o,{get:()=>l.value[o],enumerable:!0});e.provide(Wa,this),e.provide(Ua,Ht(t)),e.provide(qa,l);const n=e.unmount;B.add(e),e.unmount=function(){B.delete(e),B.size<1&&(c=ta,T&&T(),T=null,l.value=ta,R=!1,E=!1),n()}}};function j(e){return e.reduce(((e,t)=>e.then((()=>_(t)))),Promise.resolve())}return N}function nl(e){return yr(Ua)}const ol=["{","}"];const rl=/^(?:\d)+/,il=/^(?:\w)+/;const sl=Object.prototype.hasOwnProperty,al=(e,t)=>sl.call(e,t),ll=new class{constructor(){this._caches=Object.create(null)}interpolate(e,t,n=ol){if(!t)return[e];let o=this._caches[e];return o||(o=function(e,[t,n]){const o=[];let r=0,i="";for(;r-1?"zh-Hans":e.indexOf("-hant")>-1?"zh-Hant":(n=e,["-tw","-hk","-mo","-cht"].find((e=>-1!==n.indexOf(e)))?"zh-Hant":"zh-Hans");var n;let o=["en","fr","es"];t&&Object.keys(t).length>0&&(o=Object.keys(t));const r=function(e,t){return t.find((t=>0===e.indexOf(t)))}(e,o);return r||void 0}class ul{constructor({locale:e,fallbackLocale:t,messages:n,watcher:o,formater:r}){this.locale="en",this.fallbackLocale="en",this.message={},this.messages={},this.watchers=[],t&&(this.fallbackLocale=t),this.formater=r||ll,this.messages=n||{},this.setLocale(e||"en"),o&&this.watchLocale(o)}setLocale(e){const t=this.locale;this.locale=cl(e,this.messages)||this.fallbackLocale,this.messages[this.locale]||(this.messages[this.locale]={}),this.message=this.messages[this.locale],t!==this.locale&&this.watchers.forEach((e=>{e(this.locale,t)}))}getLocale(){return this.locale}watchLocale(e){const t=this.watchers.push(e)-1;return()=>{this.watchers.splice(t,1)}}add(e,t,n=!0){const o=this.messages[e];o?n?Object.assign(o,t):Object.keys(t).forEach((e=>{al(o,e)||(o[e]=t[e])})):this.messages[e]=t}f(e,t,n){return this.formater.interpolate(e,t,n).join("")}t(e,t,n){let o=this.message;return"string"==typeof t?(t=cl(t,this.messages))&&(o=this.messages[t]):n=t,al(o,e)?this.formater.interpolate(o[e],n).join(""):(console.warn(`Cannot translate the value of keypath ${e}. Use the value of keypath as default.`),e)}}function dl(e,t={},n,o){if("string"!=typeof e){const n=[t,e];e=n[0],t=n[1]}"string"!=typeof e&&(e="undefined"!=typeof uni&&Hu?Hu():"undefined"!=typeof global&&global.getLocale?global.getLocale():"en"),"string"!=typeof n&&(n="undefined"!=typeof __uniConfig&&__uniConfig.fallbackLocale||"en");const r=new ul({locale:e,fallbackLocale:n,messages:t,watcher:o});let i=(e,t)=>{{let e=!1;i=function(t,n){const o=vp().$vm;return o&&(o.$locale,e||(e=!0,function(e,t){e.$watchLocale?e.$watchLocale((e=>{t.setLocale(e)})):e.$watch((()=>e.$locale),(e=>{t.setLocale(e)}))}(o,r))),r.t(t,n)}}return i(e,t)};return{i18n:r,f:(e,t,n)=>r.f(e,t,n),t:(e,t)=>i(e,t),add:(e,t,n=!0)=>r.add(e,t,n),watch:e=>r.watchLocale(e),getLocale:()=>r.getLocale(),setLocale:e=>r.setLocale(e)}}const fl=pe((()=>"undefined"!=typeof __uniConfig&&__uniConfig.locales&&!!Object.keys(__uniConfig.locales).length));let pl;function hl(){if(!pl){let e;if(e=navigator.cookieEnabled&&window.localStorage&&localStorage.UNI_LOCALE||__uniConfig.locale||navigator.language,pl=dl(e),fl()){const t=Object.keys(__uniConfig.locales||{});t.length&&t.forEach((e=>pl.add(e,__uniConfig.locales[e]))),pl.setLocale(e)}}return pl}function gl(e,t,n){return t.reduce(((t,o,r)=>(t[e+o]=n[r],t)),{})}const ml=pe((()=>{const e="uni.async.",t=["error"];hl().add("en",gl(e,t,["The connection timed out, click the screen to try again."]),!1),hl().add("es",gl(e,t,["Se agotó el tiempo de conexión, haga clic en la pantalla para volver a intentarlo."]),!1),hl().add("fr",gl(e,t,["La connexion a expiré, cliquez sur l'écran pour réessayer."]),!1),hl().add("zh-Hans",gl(e,t,["连接服务器超时,点击屏幕重试"]),!1),hl().add("zh-Hant",gl(e,t,["連接服務器超時,點擊屏幕重試"]),!1)})),vl=pe((()=>{const e="uni.showModal.",t=["cancel","confirm"];hl().add("en",gl(e,t,["Cancel","OK"]),!1),hl().add("es",gl(e,t,["Cancelar","OK"]),!1),hl().add("fr",gl(e,t,["Annuler","OK"]),!1),hl().add("zh-Hans",gl(e,t,["取消","确定"]),!1),hl().add("zh-Hant",gl(e,t,["取消","確定"]),!1)})),yl=pe((()=>{const e="uni.video.",t=["danmu","volume"];hl().add("en",gl(e,t,["Danmu","Volume"]),!1),hl().add("es",gl(e,t,["Danmu","Volumen"]),!1),hl().add("fr",gl(e,t,["Danmu","Le Volume"]),!1),hl().add("zh-Hans",gl(e,t,["弹幕","音量"]),!1),hl().add("zh-Hant",gl(e,t,["彈幕","音量"]),!1)}));function bl(e){const t=new Ae;return{on:(e,n)=>t.on(e,n),once:(e,n)=>t.once(e,n),off:(e,n)=>t.off(e,n),emit:(e,...n)=>t.emit(e,...n),subscribe(n,o,r=!1){t[r?"once":"on"](`${e}.${n}`,o)},unsubscribe(n,o){t.off(`${e}.${n}`,o)},subscribeHandler(n,o,r){t.emit(`${e}.${n}`,o,r)}}}let _l=1;const wl=Object.create(null);function xl(e,t){return e+"."+t}function Sl(e,t,n){t=xl(e,t),wl[t]||(wl[t]=n)}function Tl({id:e,name:t,args:n},o){t=xl(o,t);const r=t=>{e&&hh.publishHandler("invokeViewApi."+e,t)},i=wl[t];i?i(n,r):r({})}const Cl=c(bl("service"),{invokeServiceMethod:(e,t,n)=>{const{subscribe:o,publishHandler:r}=hh,i=n?_l++:0;n&&o("invokeServiceApi."+i,n,!0),r("invokeServiceApi",{id:i,name:e,args:t})}}),El=ye(!0);let kl;function Ol(){kl&&(clearTimeout(kl),kl=null)}let Ll=0,$l=0;function Al(e){if(Ol(),1!==e.touches.length)return;const{pageX:t,pageY:n}=e.touches[0];Ll=t,$l=n,kl=setTimeout((function(){const t=new CustomEvent("longpress",{bubbles:!0,cancelable:!0,target:e.target,currentTarget:e.currentTarget});t.touches=e.touches,t.changedTouches=e.changedTouches,e.target.dispatchEvent(t)}),350)}function Pl(e){if(!kl)return;if(1!==e.touches.length)return Ol();const{pageX:t,pageY:n}=e.touches[0];return Math.abs(t-Ll)>10||Math.abs(n-$l)>10?Ol():void 0}function Rl(e,t){const n=Number(e);return isNaN(n)?t:n}const Bl=()=>/^Apple/.test(navigator.vendor);function Nl(){const e=__uniConfig.globalStyle||{},t=Rl(e.rpxCalcMaxDeviceWidth,960),n=Rl(e.rpxCalcBaseDeviceWidth,375);function o(){let e=function(){const e=Bl()&&"number"==typeof window.orientation,t=e&&90===Math.abs(window.orientation);var n=e?Math[t?"max":"min"](screen.width,screen.height):screen.width;return e?Math.min(window.innerWidth,document.documentElement.clientWidth,n)||n:Math.min(window.innerWidth,document.documentElement.clientWidth)}();e=e<=t?e:n,document.documentElement.style.fontSize=e/23.4375+"px"}o(),document.addEventListener("DOMContentLoaded",o),window.addEventListener("load",o),window.addEventListener("resize",o),Bl()&&window.addEventListener("orientationchange",(()=>{o(),setTimeout(o,50)}))}function jl(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Ml,Il,Vl=["top","left","right","bottom"],Fl={};function Dl(){return Il="CSS"in window&&"function"==typeof CSS.supports?CSS.supports("top: env(safe-area-inset-top)")?"env":CSS.supports("top: constant(safe-area-inset-top)")?"constant":"":""}function Hl(){if(Il="string"==typeof Il?Il:Dl()){var e=[],t=!1;try{var n=Object.defineProperty({},"passive",{get:function(){t={passive:!0}}});window.addEventListener("test",null,n)}catch(a){}var o=document.createElement("div");r(o,{position:"absolute",left:"0",top:"0",width:"0",height:"0",zIndex:"-1",overflow:"hidden",visibility:"hidden"}),Vl.forEach((function(e){s(o,e)})),document.body.appendChild(o),i(),Ml=!0}else Vl.forEach((function(e){Fl[e]=0}));function r(e,t){var n=e.style;Object.keys(t).forEach((function(e){var o=t[e];n[e]=o}))}function i(t){t?e.push(t):e.forEach((function(e){e()}))}function s(e,n){var o=document.createElement("div"),s=document.createElement("div"),a=document.createElement("div"),l=document.createElement("div"),c={position:"absolute",width:"100px",height:"200px",boxSizing:"border-box",overflow:"hidden",paddingBottom:Il+"(safe-area-inset-"+n+")"};r(o,c),r(s,c),r(a,{transition:"0s",animation:"none",width:"400px",height:"400px"}),r(l,{transition:"0s",animation:"none",width:"250%",height:"250%"}),o.appendChild(a),s.appendChild(l),e.appendChild(o),e.appendChild(s),i((function(){o.scrollTop=s.scrollTop=1e4;var e=o.scrollTop,r=s.scrollTop;function i(){this.scrollTop!==(this===o?e:r)&&(o.scrollTop=s.scrollTop=1e4,e=o.scrollTop,r=s.scrollTop,function(e){Ul.length||setTimeout((function(){var e={};Ul.forEach((function(t){e[t]=Fl[t]})),Ul.length=0,ql.forEach((function(t){t(e)}))}),0);Ul.push(e)}(n))}o.addEventListener("scroll",i,t),s.addEventListener("scroll",i,t)}));var u=getComputedStyle(o);Object.defineProperty(Fl,n,{configurable:!0,get:function(){return parseFloat(u.paddingBottom)}})}}function Wl(e){return Ml||Hl(),Fl[e]}var Ul=[];var ql=[];const zl=jl({get support(){return 0!=("string"==typeof Il?Il:Dl()).length},get top(){return Wl("top")},get left(){return Wl("left")},get right(){return Wl("right")},get bottom(){return Wl("bottom")},onChange:function(e){Dl()&&(Ml||Hl(),"function"==typeof e&&ql.push(e))},offChange:function(e){var t=ql.indexOf(e);t>=0&&ql.splice(t,1)}}),Xl=_s((()=>{}),["prevent"]),Kl=_s((e=>{}),["stop"]);function Yl(e,t){return parseInt((e.getPropertyValue(t).match(/\d+/)||["0"])[0])}function Gl(){const e=Yl(document.documentElement.style,"--window-top");return e?e+zl.top:0}function Jl(e){const t=document.documentElement.style;Object.keys(e).forEach((n=>{t.setProperty(n,e[n])}))}function Zl(e){return Symbol(e)}function Ql(e){return e.$page}function ec(e){return 0===e.tagName.indexOf("UNI-")}function tc(){{const{$pageInstance:e}=gi();return e&&cc(e.proxy)}}function nc(){const e=Ed(),t=e.length;if(t)return e[t-1]}function oc(){var e;const t=null==(e=nc())?void 0:e.$page;if(t)return t.meta}function rc(){const e=oc();return e?e.id:-1}function ic(){const e=nc();if(e)return e.$vm}const sc=["navigationBar","pullToRefresh"];function ac(e,t){const n=JSON.parse(JSON.stringify(__uniConfig.globalStyle||{})),o=c({id:t},n,e);sc.forEach((t=>{o[t]=c({},n[t],e[t])}));const{navigationBar:r}=o;return r.titleText&&r.titleImage&&(r.titleText=""),o}function lc(e,t,n,o,r,i){const{id:s,route:a}=o,l=Be(o.navigationBar,__uniConfig.themeConfig,i).titleColor;return{id:s,path:fe(a),route:a,fullPath:t,options:n,meta:o,openType:e,eventChannel:r,statusBarStyle:"#ffffff"===l?"light":"dark"}}function cc(e){var t,n;return(null==(t=e.$page)?void 0:t.id)||(null==(n=e.$basePage)?void 0:n.id)}function uc(e,t,n){if(v(e))n=t,t=e,e=ic();else if("number"==typeof e){const t=Ed().find((t=>Ql(t).id===e));e=t?t.$vm:ic()}if(!e)return;const o=e.$[t];return"onBackPress"===t?o&&(r=o,i=n,r.map((e=>e(i)))).some((e=>!0===e)):o&&((e,t)=>{let n;for(let o=0;o{function s(){if((()=>{const{scrollHeight:e}=document.documentElement,t=window.innerHeight,o=window.scrollY,i=o>0&&e>t&&o+t+n>=e,s=Math.abs(e-pc)>n;return!i||r&&!s?(!i&&r&&(r=!1),!1):(pc=e,r=!0,!0)})())return t&&t(),i=!1,setTimeout((function(){i=!0}),350),!0}e&&e(window.pageYOffset),t&&i&&(s()||(fc=setTimeout(s,300))),o=!1};return function(){clearTimeout(fc),o||requestAnimationFrame(s),o=!0}}function gc(e,t){if(0===t.indexOf("/"))return t;if(0===t.indexOf("./"))return gc(e,t.slice(2));const n=t.split("/"),o=n.length;let r=0;for(;r0?e.split("/"):[];return i.splice(i.length-r-1,r+1),fe(i.concat(n).join("/"))}function mc(e,t=!1){return t?__uniRoutes.find((t=>t.path===e||t.alias===e)):__uniRoutes.find((t=>t.path===e))}function vc(){Nl(),ge(ec),window.addEventListener("touchstart",Al,El),window.addEventListener("touchmove",Pl,El),window.addEventListener("touchend",Ol,El),window.addEventListener("touchcancel",Ol,El)}class yc{constructor(e){this.$bindClass=!1,this.$bindStyle=!1,this.$vm=e,this.$el=function(e,t=!1){const{vnode:n}=e;if(le(n.el))return t?n.el?[n.el]:[]:n.el;const{subTree:o}=e;if(16&o.shapeFlag){const e=o.children.filter((e=>e.el&&le(e.el)));if(e.length>0)return t?e.map((e=>e.el)):e[0].el}return t?n.el?[n.el]:[]:n.el}(e.$),this.$el.getAttribute&&(this.$bindClass=!!this.$el.getAttribute("class"),this.$bindStyle=!!this.$el.getAttribute("style"))}selectComponent(e){if(!this.$el||!e)return;const t=xc(this.$el.querySelector(e));return t?bc(t,!1):void 0}selectAllComponents(e){if(!this.$el||!e)return[];const t=[],n=this.$el.querySelectorAll(e);for(let o=0;o-1&&t.splice(n,1)}const n=this.$el.__wxsRemoveClass||(this.$el.__wxsRemoveClass=[]);return-1===n.indexOf(e)&&(n.push(e),this.forceUpdate("class")),this}hasClass(e){return this.$el&&this.$el.classList.contains(e)}getDataset(){return this.$el&&this.$el.dataset}callMethod(e,t={}){const n=this.$vm[e];m(n)?n(JSON.parse(JSON.stringify(t))):this.$vm.ownerId&&hh.publishHandler("onWxsInvokeCallMethod",{nodeId:this.$el.__id,ownerId:this.$vm.ownerId,method:e,args:t})}requestAnimationFrame(e){return window.requestAnimationFrame(e)}getState(){return this.$el&&(this.$el.__wxsState||(this.$el.__wxsState={}))}triggerEvent(e,t={}){return this.$vm.$emit(e,t),this}getComputedStyle(e){if(this.$el){const t=window.getComputedStyle(this.$el);return e&&e.length?e.reduce(((e,n)=>(e[n]=t[n],e)),{}):t}return{}}setTimeout(e,t){return window.setTimeout(e,t)}clearTimeout(e){return window.clearTimeout(e)}getBoundingClientRect(){return this.$el.getBoundingClientRect()}}function bc(e,t=!0){if(t&&e&&(e=ae(e.$)),e&&e.$el)return e.$el.__wxsComponentDescriptor||(e.$el.__wxsComponentDescriptor=new yc(e)),e.$el.__wxsComponentDescriptor}function _c(e,t){return bc(e,t)}function wc(e,t,n,o=!0){if(t){e.__instance||(e.__instance=!0,Object.defineProperty(e,"instance",{get:()=>_c(n.proxy,!1)}));const r=function(e,t,n=!0){if(!t)return!1;if(n&&e.length<2)return!1;const o=ae(t);if(!o)return!1;const r=o.$.type;return!(!r.$wxs&&!r.$renderjs)&&o}(t,n,o);if(r)return[e,_c(r,!1)]}}function xc(e){if(e)return e.__vueParentComponent&&e.__vueParentComponent.proxy}function Sc(e,t=!1){const{type:n,timeStamp:o,target:r,currentTarget:i}=e;let s,a;s=be(t?r:function(e){for(;!ec(e);)e=e.parentElement;return e}(r)),a=be(i);const l={type:n,timeStamp:o,target:s,detail:{},currentTarget:a};return e instanceof CustomEvent&&S(e.detail)&&(l.detail=e.detail),e._stopped&&(l._stopped=!0),e.type.startsWith("touch")&&(l.touches=e.touches,l.changedTouches=e.changedTouches),function(e,t){c(e,{preventDefault:()=>t.preventDefault(),stopPropagation:()=>t.stopPropagation()})}(l,e),l}function Tc(e,t){return{force:1,identifier:0,clientX:e.clientX,clientY:e.clientY-t,pageX:e.pageX,pageY:e.pageY-t}}function Cc(e,t){const n=[];for(let o=0;o0===e.type.indexOf("mouse")||["contextmenu"].includes(e.type))(e))!function(e,t){const n=Gl();e.pageX=t.pageX,e.pageY=t.pageY-n,e.clientX=t.clientX,e.clientY=t.clientY-n,e.touches=e.changedTouches=[Tc(t,n)]}(i,e);else if((e=>"undefined"!=typeof TouchEvent&&e instanceof TouchEvent||0===e.type.indexOf("touch")||["longpress"].indexOf(e.type)>=0)(e)){const t=Gl();i.touches=Cc(e.touches,t),i.changedTouches=Cc(e.changedTouches,t)}else if((e=>!e.type.indexOf("key")&&e instanceof KeyboardEvent)(e)){["key","code"].forEach((t=>{Object.defineProperty(i,t,{get:()=>e[t]})}))}return wc(i,t,n)||[i]},createNativeEvent:Sc},Symbol.toStringTag,{value:"Module"});function kc(e){!function(e){const t=e.globalProperties;c(t,Ec),t.$gcd=_c}(e._context.config)}let Oc=1;function Lc(e){return(e||rc())+".invokeViewApi"}const $c=c(bl("view"),{invokeOnCallback:(e,t)=>gh.emit("api."+e,t),invokeViewMethod:(e,t,n,o)=>{const{subscribe:r,publishHandler:i}=gh,s=o?Oc++:0;o&&r("invokeViewApi."+s,o,!0),i(Lc(n),{id:s,name:e,args:t},n)},invokeViewMethodKeepAlive:(e,t,n,o)=>{const{subscribe:r,unsubscribe:i,publishHandler:s}=gh,a=Oc++,l="invokeViewApi."+a;return r(l,n),s(Lc(o),{id:a,name:e,args:t},o),()=>{i(l)}}});function Ac(e){uc(nc(),"onResize",e),gh.invokeOnCallback("onWindowResize",e)}function Pc(e){const t=nc();uc(vp(),"onShow",e),uc(t,"onShow")}function Rc(){uc(vp(),"onHide"),uc(nc(),"onHide")}const Bc=["onPageScroll","onReachBottom"];function Nc(){Bc.forEach((e=>gh.subscribe(e,function(e){return(t,n)=>{uc(parseInt(n),e,t)}}(e))))}function jc(){!function(){const{on:e}=gh;e("onResize",Ac),e("onAppEnterForeground",Pc),e("onAppEnterBackground",Rc)}(),Nc()}function Mc(){if(this.$route){const e=this.$route.meta;return e.eventChannel||(e.eventChannel=new Ce(this.$page.id)),e.eventChannel}}function Ic(e){e._context.config.globalProperties.getOpenerEventChannel=Mc}function Vc(){return{path:"",query:{},scene:1001,referrerInfo:{appId:"",extraData:{}}}}function Fc(e){return/^-?\d+[ur]px$/i.test(e)?e.replace(/(^-?\d+)[ur]px$/i,((e,t)=>`${Du(parseFloat(t))}px`)):/^-?[\d\.]+$/.test(e)?`${e}px`:e||""}function Dc(e){const t=e.animation;if(!t||!t.actions||!t.actions.length)return;let n=0;const o=t.actions,r=t.actions.length;function i(){const t=o[n],s=t.option.transition,a=function(e){const t=["matrix","matrix3d","scale","scale3d","rotate3d","skew","translate","translate3d"],n=["scaleX","scaleY","scaleZ","rotate","rotateX","rotateY","rotateZ","skewX","skewY","translateX","translateY","translateZ"],o=["opacity","background-color"],r=["width","height","left","right","top","bottom"],i=e.animates,s=e.option,a=s.transition,l={},c=[];return i.forEach((e=>{let i=e.type,s=[...e.args];if(t.concat(n).includes(i))i.startsWith("rotate")||i.startsWith("skew")?s=s.map((e=>parseFloat(e)+"deg")):i.startsWith("translate")&&(s=s.map(Fc)),n.indexOf(i)>=0&&(s.length=1),c.push(`${i}(${s.join(",")})`);else if(o.concat(r).includes(s[0])){i=s[0];const e=s[1];l[i]=r.includes(i)?Fc(e):e}})),l.transform=l.webkitTransform=c.join(" "),l.transition=l.webkitTransition=Object.keys(l).map((e=>`${function(e){return e.replace(/[A-Z]/g,(e=>`-${e.toLowerCase()}`)).replace("webkit","-webkit")}(e)} ${a.duration}ms ${a.timingFunction} ${a.delay}ms`)).join(","),l.transformOrigin=l.webkitTransformOrigin=s.transformOrigin,l}(t);Object.keys(a).forEach((t=>{e.$el.style[t]=a[t]})),n+=1,n{i()}),0)}const Hc={props:["animation"],watch:{animation:{deep:!0,handler(){Dc(this)}}},mounted(){Dc(this)}},Wc=e=>{e.__reserved=!0;const{props:t,mixins:n}=e;return t&&t.animation||(n||(e.mixins=[])).push(Hc),Uc(e)},Uc=e=>(e.__reserved=!0,e.compatConfig={MODE:3},yo(e));function qc(e){return e.__wwe=!0,e}function zc(e,t){return(n,o,r)=>{e.value&&t(n,function(e,t,n,o){let r;return r=be(n),{type:t.__evName||o.type||e,timeStamp:t.timeStamp||0,target:r,currentTarget:r,detail:o}}(n,o,e.value,r||{}))}}const Xc={hoverClass:{type:String,default:"none"},hoverStopPropagation:{type:Boolean,default:!1},hoverStartTime:{type:[Number,String],default:50},hoverStayTime:{type:[Number,String],default:400}};function Kc(e){const t=on(!1);let n,o,r=!1;function i(){requestAnimationFrame((()=>{clearTimeout(o),o=setTimeout((()=>{t.value=!1}),parseInt(e.hoverStayTime))}))}function s(o){o._hoverPropagationStopped||e.hoverClass&&"none"!==e.hoverClass&&!e.disabled&&(e.hoverStopPropagation&&(o._hoverPropagationStopped=!0),r=!0,n=setTimeout((()=>{t.value=!0,r||i()}),parseInt(e.hoverStartTime)))}function a(){r=!1,t.value&&i()}function l(){a(),window.removeEventListener("mouseup",l)}return{hovering:t,binding:{onTouchstartPassive:qc((function(e){e.touches.length>1||s(e)})),onMousedown:qc((function(e){r||(s(e),window.addEventListener("mouseup",l))})),onTouchend:qc((function(){a()})),onMouseup:qc((function(){r&&l()})),onTouchcancel:qc((function(){r=!1,t.value=!1,clearTimeout(n)}))}}}function Yc(e,t){return v(t)&&(t=[t]),t.reduce(((t,n)=>(e[n]&&(t[n]=!0),t)),Object.create(null))}const Gc=Zl("uf"),Jc=Zl("ul");function Zc(e,t,n){const o=tc();n&&!e||S(t)&&Object.keys(t).forEach((r=>{n?0!==r.indexOf("@")&&0!==r.indexOf("uni-")&&hh.on(`uni-${r}-${o}-${e}`,t[r]):0===r.indexOf("uni-")?hh.on(r,t[r]):e&&hh.on(`uni-${r}-${o}-${e}`,t[r])}))}function Qc(e,t,n){const o=tc();n&&!e||S(t)&&Object.keys(t).forEach((r=>{n?0!==r.indexOf("@")&&0!==r.indexOf("uni-")&&hh.off(`uni-${r}-${o}-${e}`,t[r]):0===r.indexOf("uni-")?hh.off(r,t[r]):e&&hh.off(`uni-${r}-${o}-${e}`,t[r])}))}const eu=Wc({name:"Button",props:{id:{type:String,default:""},hoverClass:{type:String,default:"button-hover"},hoverStartTime:{type:[Number,String],default:20},hoverStayTime:{type:[Number,String],default:70},hoverStopPropagation:{type:Boolean,default:!1},disabled:{type:[Boolean,String],default:!1},formType:{type:String,default:""},openType:{type:String,default:""},loading:{type:[Boolean,String],default:!1},plain:{type:[Boolean,String],default:!1}},setup(e,{slots:t}){const n=on(null),o=yr(Gc,!1),{hovering:r,binding:i}=Kc(e),s=qc(((t,r)=>{if(e.disabled)return t.stopImmediatePropagation();r&&n.value.click();const i=e.formType;if(i){if(!o)return;"submit"===i?o.submit(t):"reset"===i&&o.reset(t)}else;})),a=yr(Jc,!1);return a&&(a.addHandler(s),Do((()=>{a.removeHandler(s)}))),function(e,t){Zc(e.id,t),Qn((()=>e.id),((e,n)=>{Qc(n,t,!0),Zc(e,t,!0)})),Ho((()=>{Qc(e.id,t)}))}(e,{"label-click":s}),()=>{const o=e.hoverClass,a=Yc(e,"disabled"),l=Yc(e,"loading"),c=Yc(e,"plain"),u=o&&"none"!==o;return oi("uni-button",ui({ref:n,onClick:s,id:e.id,class:u&&r.value?o:""},u&&i,a,l,c),[t.default&&t.default()],16,["onClick","id"])}}}),tu=Zl("upm");function nu(){return yr(tu)}function ou(e){const t=function(e){return Dt(function(e){if(history.state){const t=history.state.__type__;"redirectTo"!==t&&"reLaunch"!==t||0!==Ed().length||(e.isEntry=!0,e.isQuit=!0)}return e}(JSON.parse(JSON.stringify(ac(nl().meta,e)))))}(e);return vr(tu,t),t}function ru(){return nl()}function iu(){return history.state&&history.state.__id__||1}const su=["GET","OPTIONS","HEAD","POST","PUT","DELETE","TRACE","CONNECT","PATCH"];function au(e){return function(){try{return e.apply(e,arguments)}catch(t){console.error(t)}}}let lu=1;const cu={};function uu(e,t,n){if("number"==typeof e){const o=cu[e];if(o)return o.keepAlive||delete cu[e],o.callback(t,n)}return t}const du="success",fu="fail",pu="complete";function hu(e,t={},{beforeAll:n,beforeSuccess:o}={}){S(t)||(t={});const{success:r,fail:i,complete:s}=function(e){const t={};for(const n in e){const o=e[n];m(o)&&(t[n]=au(o),delete e[n])}return t}(t),a=m(r),l=m(i),c=m(s),u=lu++;return function(e,t,n,o=!1){cu[e]={name:t,keepAlive:o,callback:n}}(u,e,(u=>{(u=u||{}).errMsg=function(e,t){return e&&-1!==e.indexOf(":fail")?t+e.substring(e.indexOf(":fail")):t+":ok"}(u.errMsg,e),m(n)&&n(u),u.errMsg===e+":ok"?(m(o)&&o(u,t),a&&r(u)):l&&i(u),c&&s(u)})),u}const gu="success",mu="fail",vu="complete",yu={},bu={};function _u(e,t){return function(n){return e(n,t)||n}}function wu(e,t,n){let o=!1;for(let r=0;re(t),catch(){}}}function xu(e,t={}){return[gu,mu,vu].forEach((n=>{const o=e[n];if(!p(o))return;const r=t[n];t[n]=function(e){wu(o,e,t).then((e=>m(r)&&r(e)||e))}})),t}function Su(e,t){const n=[];p(yu.returnValue)&&n.push(...yu.returnValue);const o=bu[e];return o&&p(o.returnValue)&&n.push(...o.returnValue),n.forEach((e=>{t=e(t)||t})),t}function Tu(e){const t=Object.create(null);Object.keys(yu).forEach((e=>{"returnValue"!==e&&(t[e]=yu[e].slice())}));const n=bu[e];return n&&Object.keys(n).forEach((e=>{"returnValue"!==e&&(t[e]=(t[e]||[]).concat(n[e]))})),t}function Cu(e,t,n,o){const r=Tu(e);if(r&&Object.keys(r).length){if(p(r.invoke)){return wu(r.invoke,n).then((n=>t(xu(Tu(e),n),...o)))}return t(xu(r,n),...o)}return t(n,...o)}function Eu(e,t){return(n={},...o)=>function(e){return!(!S(e)||![du,fu,pu].find((t=>m(e[t]))))}(n)?Su(e,Cu(e,t,c({},n),o)):Su(e,new Promise(((r,i)=>{Cu(e,t,c({},n,{success:r,fail:i}),o)})))}function ku(e,t,n,o={}){const r=t+":fail";let i="";return i=n?0===n.indexOf(r)?n:r+" "+n:r,delete o.errCode,uu(e,c({errMsg:i},o))}function Ou(e,t,n,o){if(o&&o.beforeInvoke){const e=o.beforeInvoke(t);if(v(e))return e}const r=function(e,t){const n=e[0];if(!t||!t.formatArgs||!S(t.formatArgs)&&S(n))return;const o=t.formatArgs,r=Object.keys(o);for(let i=0;i{const r=hu(e,n,o),i=Ou(0,[n],0,o);return i?ku(r,e,i):t(n,{resolve:t=>function(e,t,n){return uu(e,c(n||{},{errMsg:t+":ok"}))}(r,e,t),reject:(t,n)=>ku(r,e,function(e){return!e||v(e)?e:e.stack?("undefined"!=typeof globalThis&&globalThis.harmonyChannel||console.error(e.message+"\n"+e.stack),e.message):e}(t),n)})}}function $u(e,t,n,o){return Eu(e,Lu(e,t,0,o))}function Au(e,t,n,o){return function(e,t,n,o){return(...e)=>{const n=Ou(0,e,0,o);if(n)throw new Error(n);return t.apply(null,e)}}(0,t,0,o)}function Pu(e,t,n,o){return Eu(e,function(e,t,n,o){return Lu(e,t,0,o)}(e,t,0,o))}let Ru=!1,Bu=0,Nu=0,ju=960,Mu=375,Iu=750;function Vu(){let e,t,n;{const{windowWidth:o,pixelRatio:r,platform:i}=function(){const e=ef();return{platform:qd?"ios":"other",pixelRatio:window.devicePixelRatio,windowWidth:e}}();e=o,t=r,n=i}Bu=e,Nu=t,Ru="ios"===n}function Fu(e,t){const n=Number(e);return isNaN(n)?t:n}const Du=Au(0,((e,t)=>{if(0===Bu&&(Vu(),function(){const e=__uniConfig.globalStyle||{};ju=Fu(e.rpxCalcMaxDeviceWidth,960),Mu=Fu(e.rpxCalcBaseDeviceWidth,375),Iu=Fu(e.rpxCalcBaseDeviceWidth,750)}()),0===(e=Number(e)))return 0;let n=t||Bu;n=e===Iu||n<=ju?n:Mu;let o=e/750*n;return o<0&&(o=-o),o=Math.floor(o+1e-4),0===o&&(o=1!==Nu&&Ru?.5:1),e<0?-o:o})),Hu=Au(0,(()=>{const e=vp();return e&&e.$vm?e.$vm.$locale:hl().getLocale()})),Wu={onUnhandledRejection:[],onPageNotFound:[],onError:[],onShow:[],onHide:[]};const Uu="json",qu=["text","arraybuffer"],zu=encodeURIComponent;ArrayBuffer,Boolean;const Xu={formatArgs:{method(e,t){var n,o;t.method=(n=(e||"").toUpperCase(),o=su,n&&-1!==o.indexOf(n)?n:o[0])},data(e,t){t.data=e||""},url(e,t){t.method===su[0]&&S(t.data)&&Object.keys(t.data).length&&(t.url=function(e,t){let n=e.split("#");const o=n[1]||"";n=n[0].split("?");let r=n[1]||"";e=n[0];const i=r.split("&").filter((e=>e)),s={};i.forEach((e=>{const t=e.split("=");s[t[0]]=t[1]}));for(const a in t)if(f(t,a)){let e=t[a];null==e?e="":S(e)&&(e=JSON.stringify(e)),s[zu(a)]=zu(e)}return r=Object.keys(s).map((e=>`${e}=${s[e]}`)).join("&"),e+(r?"?"+r:"")+(o?"#"+o:"")}(e,t.data))},header(e,t){const n=t.header=e||{};t.method!==su[0]&&(Object.keys(n).find((e=>"content-type"===e.toLowerCase()))||(n["Content-Type"]="application/json"))},dataType(e,t){t.dataType=(e||Uu).toLowerCase()},responseType(e,t){t.responseType=(e||"").toLowerCase(),-1===qu.indexOf(t.responseType)&&(t.responseType="text")}}},Ku={formatArgs:{header(e,t){t.header=e||{}}}};const Yu={url:{type:String,required:!0}},Gu=(ed(["slide-in-right","slide-in-left","slide-in-top","slide-in-bottom","fade-in","zoom-out","zoom-fade-out","pop-in","none"]),ed(["slide-out-right","slide-out-left","slide-out-top","slide-out-bottom","fade-out","zoom-in","zoom-fade-in","pop-out","none"]),od("navigateTo")),Ju=od("redirectTo"),Zu=od("reLaunch"),Qu={formatArgs:{delta(e,t){e=parseInt(e+"")||1,t.delta=Math.min(Ed().length-1,e)}}};function ed(e){return{animationType:{type:String,validator(t){if(t&&-1===e.indexOf(t))return"`"+t+"` is not supported for `animationType` (supported values are: `"+e.join("`|`")+"`)"}},animationDuration:{type:Number}}}let td;function nd(){td=""}function od(e){return{formatArgs:{url:rd(e)},beforeAll:nd}}function rd(e){return function(t,n){if(!t)return'Missing required args: "url"';const o=(t=function(e){if(0===e.indexOf("/")||0===e.indexOf("uni:"))return e;let t="";const n=Ed();return n.length&&(t=Ql(n[n.length-1]).route),gc(t,e)}(t)).split("?")[0],r=mc(o,!0);if(!r)return"page `"+t+"` is not found";if("navigateTo"===e||"redirectTo"===e){if(r.meta.isTabBar)return`can not ${e} a tabbar page`}else if("switchTab"===e&&!r.meta.isTabBar)return"can not switch to no-tabBar page";if("switchTab"!==e&&"preloadPage"!==e||!r.meta.isTabBar||"appLaunch"===n.openType||(t=o),r.meta.isEntry&&(t=t.replace(r.alias,"/")),n.url=function(e){if(!v(e))return e;const t=e.indexOf("?");if(-1===t)return e;const n=e.slice(t+1).trim().replace(/^(\?|#|&)/,"");if(!n)return e;e=e.slice(0,t);const o=[];return n.split("&").forEach((e=>{const t=e.replace(/\+/g," ").split("="),n=t.shift(),r=t.length>0?t.join("="):"";o.push(n+"="+encodeURIComponent(r))})),o.length?e+"?"+o.join("&"):e}(t),"unPreloadPage"!==e)if("preloadPage"!==e){if(td===t&&"appLaunch"!==n.openType)return`${td} locked`;__uniConfig.ready&&(td=t)}else if(r.meta.isTabBar){const e=Ed(),t=r.path.slice(1);if(e.find((e=>e.route===t)))return"tabBar page `"+t+"` already exists"}}}Boolean;const id={beforeInvoke(){vl()},formatArgs:{title:"",content:"",placeholderText:"",showCancel:!0,editable:!1,cancelText(e,t){if(!f(t,"cancelText")){const{t:e}=hl();t.cancelText=e("uni.showModal.cancel")}},cancelColor:"#000",confirmText(e,t){if(!f(t,"confirmText")){const{t:e}=hl();t.confirmText=e("uni.showModal.confirm")}},confirmColor:"#007aff"}};function sd(e,t){return e===t.fullPath||"/"===e&&t.meta.isEntry}function ad(){const e=nc();if(!e)return;const t=bd(e);Od(Ad(t.path,t.id))}const ld=Pu("redirectTo",(({url:e,isAutomatedTesting:t},{resolve:n,reject:o})=>{if(_d.handledBeforeEntryPageRoutes)return ad(),dd({type:"redirectTo",url:e,isAutomatedTesting:t}).then(n).catch(o);Sd.push({args:{type:"redirectTo",url:e,isAutomatedTesting:t},resolve:n,reject:o})}),0,Ju);function cd(){const e=Cd().keys();for(const t of e)Od(t)}const ud=Pu("reLaunch",(({url:e,isAutomatedTesting:t},{resolve:n,reject:o})=>{if(_d.handledBeforeEntryPageRoutes)return cd(),dd({type:"reLaunch",url:e,isAutomatedTesting:t}).then(n).catch(o);Td.push({args:{type:"reLaunch",url:e,isAutomatedTesting:t},resolve:n,reject:o})}),0,Zu);function dd({type:e,url:t,tabBarText:n,events:o,isAutomatedTesting:r},i){const s=vp().$router,{path:a,query:l}=function(e){const[t,n]=e.split("?",2);return{path:t,query:Se(n||"")}}(t);return new Promise(((t,c)=>{const u=function(e,t){return{__id__:t||++Ld,__type__:e}}(e,i);s["navigateTo"===e?"push":"replace"]({path:a,query:l,state:u,force:!0}).then((i=>{if(xa(i))return c(i.message);if("switchTab"===e&&(s.currentRoute.value.meta.tabBarText=n),"navigateTo"===e){const e=s.currentRoute.value.meta;return e.eventChannel?o&&(Object.keys(o).forEach((t=>{e.eventChannel._addListener(t,"on",o[t])})),e.eventChannel._clearCache()):e.eventChannel=new Ce(u.__id__,o),t(r?{__id__:u.__id__}:{eventChannel:e.eventChannel})}return r?t({__id__:u.__id__}):t()}))}))}function fd(){if(_d.handledBeforeEntryPageRoutes)return;_d.handledBeforeEntryPageRoutes=!0;const e=[...wd];wd.length=0,e.forEach((({args:e,resolve:t,reject:n})=>dd(e).then(t).catch(n)));const t=[...xd];xd.length=0,t.forEach((({args:e,resolve:t,reject:n})=>(function(){const e=ic();if(!e)return;const t=Cd(),n=t.keys();for(const o of n){const e=t.get(o);e.$.__isTabBar?e.$.__isActive=!1:Od(o)}e.$.__isTabBar&&(e.$.__isVisible=!1,uc(e,"onHide"))}(),dd(e,function(e){const t=Cd().values();for(const n of t){const t=bd(n);if(sd(e,t))return n.$.__isActive=!0,t.id}}(e.url)).then(t).catch(n))));const n=[...Sd];Sd.length=0,n.forEach((({args:e,resolve:t,reject:n})=>(ad(),dd(e).then(t).catch(n))));const o=[...Td];Td.length=0,o.forEach((({args:e,resolve:t,reject:n})=>(cd(),dd(e).then(t).catch(n))))}function pd(e){const t=window.CSS&&window.CSS.supports;return t&&(t(e)||t.apply(window.CSS,e.split(":")))}const hd=pd("top:env(a)"),gd=pd("top:constant(a)"),md=(()=>hd?"env":gd?"constant":"")();function vd(e){var t,n;Jl({"--window-top":(n=0,md?`calc(${n}px + ${md}(safe-area-inset-top))`:`${n}px`),"--window-bottom":(t=0,md?`calc(${t}px + ${md}(safe-area-inset-bottom))`:`${t}px`)})}const yd=new Map;function bd(e){return e.$page}const _d={handledBeforeEntryPageRoutes:!1},wd=[],xd=[],Sd=[],Td=[];function Cd(){return yd}function Ed(){return kd()}function kd(){const e=[],t=yd.values();for(const n of t)n.$.__isTabBar?n.$.__isActive&&e.push(n):e.push(n);return e}function Od(e,t=!0){const n=yd.get(e);n.$.__isUnload=!0,uc(n,"onUnload"),yd.delete(e),t&&function(e){const t=Pd.get(e);t&&(Pd.delete(e),Rd.pruneCacheEntry(t))}(e)}let Ld=iu();function $d(e){const t=function(e){const t=nu();let n=e.fullPath;return e.meta.isEntry&&-1===n.indexOf(e.meta.route)&&(n="/"+e.meta.route+n.replace("/","")),lc("navigateTo",n,{},t)}(e.$route);!function(e,t){e.route=t.route,e.$vm=e,e.$page=t,e.$mpType="page",e.$fontFamilySet=new Set,t.meta.isTabBar&&(e.$.__isTabBar=!0,e.$.__isActive=!0)}(e,t),yd.set(Ad(t.path,t.id),e),1===yd.size&&setTimeout((()=>{fd()}),0)}function Ad(e,t){return e+"$$"+t}const Pd=new Map,Rd={get:e=>Pd.get(e),set(e,t){!function(e){const t=parseInt(e.split("$$")[1]);if(!t)return;Rd.forEach(((e,n)=>{const o=parseInt(n.split("$$")[1]);o&&o>t&&(Rd.delete(n),Rd.pruneCacheEntry(e),Tn((()=>{yd.forEach(((e,t)=>{e.$.isUnmounted&&yd.delete(t)}))})))}))}(e),Pd.set(e,t)},delete(e){Pd.get(e)&&Pd.delete(e)},forEach(e){Pd.forEach(e)}};function Bd(e,t){!function(e){const t=jd(e),{body:n}=document;Md&&n.removeAttribute(Md),t&&n.setAttribute(t,""),Md=t}(e),vd(),function(e){{const t="nvue-dir-"+__uniConfig.nvue["flex-direction"];e.isNVue?(document.body.setAttribute("nvue",""),document.body.setAttribute(t,"")):(document.body.removeAttribute("nvue"),document.body.removeAttribute(t))}}(t),Fd(e,t)}function Nd(e){const t=jd(e);t&&function(e){const t=document.querySelector("uni-page-body");t&&t.setAttribute(e,"")}(t)}function jd(e){return e.type.__scopeId}let Md;const Id=!!(()=>{let e=!1;try{const t={};Object.defineProperty(t,"passive",{get(){e=!0}}),window.addEventListener("test-passive",(()=>{}),t)}catch(t){}return e})()&&{passive:!1};let Vd;function Fd(e,t){if(document.removeEventListener("touchmove",dc),Vd&&document.removeEventListener("scroll",Vd),t.disableScroll)return document.addEventListener("touchmove",dc,Id);const{onPageScroll:n,onReachBottom:o}=e,r="transparent"===t.navigationBar.type;if(!(null==n?void 0:n.length)&&!(null==o?void 0:o.length)&&!r)return;const i={},s=bd(e.proxy).id;(n||r)&&(i.onPageScroll=function(e,t,n){return o=>{t&&hh.publishHandler("onPageScroll",{scrollTop:o},e),n&&hh.emit(e+".onPageScroll",{scrollTop:o})}}(s,n,r)),(null==o?void 0:o.length)&&(i.onReachBottomDistance=t.onReachBottomDistance||50,i.onReachBottom=()=>hh.publishHandler("onReachBottom",{},s)),Vd=hc(i),requestAnimationFrame((()=>document.addEventListener("scroll",Vd)))}function Dd(e){const{base:t}=__uniConfig.router;return 0===fe(e).indexOf(t)?fe(e):t+e}function Hd(e){const{base:t,assets:n}=__uniConfig.router;if("./"===t&&(0!==e.indexOf("./")||!e.includes("/static/")&&0!==e.indexOf("./"+(n||"assets")+"/")||(e=e.slice(1))),0===e.indexOf("/")){if(0!==e.indexOf("//"))return Dd(e.slice(1));e="https:"+e}if(te.test(e)||ne.test(e)||0===e.indexOf("blob:"))return e;const o=kd();return o.length?Dd(gc(bd(o[o.length-1]).route,e).slice(1)):e}const Wd=navigator.userAgent,Ud=/android/i.test(Wd),qd=/iphone|ipad|ipod/i.test(Wd),zd=Wd.match(/Windows NT ([\d|\d.\d]*)/i),Xd=/Macintosh|Mac/i.test(Wd),Kd=/Linux|X11/i.test(Wd),Yd=Xd&&navigator.maxTouchPoints>0,Gd=/OpenHarmony/i.test(Wd);function Jd(){return/^Apple/.test(navigator.vendor)&&"number"==typeof window.orientation}function Zd(e){return e&&90===Math.abs(window.orientation)}function Qd(e,t){return e?Math[t?"max":"min"](screen.width,screen.height):screen.width}function ef(){const e=Jd();if(e){const t=Qd(e,Zd(e));return Math.min(window.innerWidth,document.documentElement.clientWidth,t)||t}return Math.min(window.innerWidth,document.documentElement.clientWidth)}const tf={};function nf(e){for(const n in tf)if(f(tf,n)){if(tf[n]===e)return n}var t=(window.URL||window.webkitURL).createObjectURL(e);return tf[t]=e,t}const of=Vc(),rf=Vc();const sf=Wc({name:"ResizeSensor",props:{initial:{type:Boolean,default:!1}},emits:["resize"],setup(e,{emit:t}){const n=on(null),o=function(e){return()=>{const{firstElementChild:t,lastElementChild:n}=e.value;t.scrollLeft=1e5,t.scrollTop=1e5,n.scrollLeft=1e5,n.scrollTop=1e5}}(n),r=function(e,t,n){const o=Dt({width:-1,height:-1});return Qn((()=>c({},o)),(e=>t("resize",e))),()=>{const t=e.value;t&&(o.width=t.offsetWidth,o.height=t.offsetHeight,n())}}(n,t,o);return function(e,t,n,o){ko(o),Io((()=>{t.initial&&Tn(n);const r=e.value;r.offsetParent!==r.parentElement&&(r.parentElement.style.position="relative"),"AnimationEvent"in window||o()}))}(n,e,r,o),()=>oi("uni-resize-sensor",{ref:n,onAnimationstartOnce:r},[oi("div",{onScroll:r},[oi("div",null,null)],40,["onScroll"]),oi("div",{onScroll:r},[oi("div",null,null)],40,["onScroll"])],40,["onAnimationstartOnce"])}});function af(){}const lf={cursorSpacing:{type:[Number,String],default:0},showConfirmBar:{type:[Boolean,String],default:"auto"},adjustPosition:{type:[Boolean,String],default:!0},autoBlur:{type:[Boolean,String],default:!1}};function cf(e,t,n){function o(e){const t=Ei((()=>0===String(navigator.vendor).indexOf("Apple")));e.addEventListener("focus",(()=>{clearTimeout(undefined),document.addEventListener("click",af,!1)}));e.addEventListener("blur",(()=>{t.value&&e.blur(),document.removeEventListener("click",af,!1),t.value&&document.documentElement.scrollTo(document.documentElement.scrollLeft,document.documentElement.scrollTop)}))}Qn((()=>t.value),(e=>e&&o(e)))}const uf={src:{type:String,default:""},mode:{type:String,default:"scaleToFill"},lazyLoad:{type:[Boolean,String],default:!1},draggable:{type:Boolean,default:!1}},df={widthFix:["offsetWidth","height",(e,t)=>e/t],heightFix:["offsetHeight","width",(e,t)=>e*t]},ff={aspectFit:["center center","contain"],aspectFill:["center center","cover"],widthFix:[,"100% 100%"],heightFix:[,"100% 100%"],top:["center top"],bottom:["center bottom"],center:["center center"],left:["left center"],right:["right center"],"top left":["left top"],"top right":["right top"],"bottom left":["left bottom"],"bottom right":["right bottom"]},pf=Wc({name:"Image",props:uf,setup(e,{emit:t}){const n=on(null),o=function(e,t){const n=on(""),o=Ei((()=>{let e="auto",o="";const r=ff[t.mode];return r?(r[0]&&(o=r[0]),r[1]&&(e=r[1])):(o="0% 0%",e="100% 100%"),`background-image:${n.value?'url("'+n.value+'")':"none"};background-position:${o};background-size:${e};`})),r=Dt({rootEl:e,src:Ei((()=>t.src?Hd(t.src):"")),origWidth:0,origHeight:0,origStyle:{width:"",height:""},modeStyle:o,imgSrc:n});return Io((()=>{const t=e.value;r.origWidth=t.clientWidth||0,r.origHeight=t.clientHeight||0})),r}(n,e),r=zc(n,t),{fixSize:i}=function(e,t,n){const o=()=>{const{mode:o}=t,r=df[o];if(!r)return;const{origWidth:i,origHeight:s}=n,a=i&&s?i/s:0;if(!a)return;const l=e.value,c=l[r[0]];c&&(l.style[r[1]]=function(e){hf&&e>10&&(e=2*Math.round(e/2));return e}(r[2](c,a))+"px")},r=()=>{const{style:t}=e.value,{origStyle:{width:o,height:r}}=n;t.width=o,t.height=r};return Qn((()=>t.mode),((e,t)=>{df[t]&&r(),df[e]&&o()})),{fixSize:o,resetSize:r}}(n,e,o);return function(e,t,n,o,r){let i,s;const a=(t=0,n=0,o="")=>{e.origWidth=t,e.origHeight=n,e.imgSrc=o},l=l=>{if(!l)return c(),void a();i=i||new Image,i.onload=e=>{const{width:u,height:d}=i;a(u,d,l),Tn((()=>{o()})),i.draggable=t.draggable,s&&s.remove(),s=i,n.value.appendChild(i),c(),r("load",e,{width:u,height:d})},i.onerror=t=>{a(),c(),r("error",t,{errMsg:`GET ${e.src} 404 (Not Found)`})},i.src=l},c=()=>{i&&(i.onload=null,i.onerror=null,i=null)};Qn((()=>e.src),(e=>l(e))),Qn((()=>e.imgSrc),(e=>{!e&&s&&(s.remove(),s=null)})),Io((()=>l(e.src))),Do((()=>c()))}(o,e,n,i,r),()=>oi("uni-image",{ref:n},[oi("div",{style:o.modeStyle},null,4),df[e.mode]?oi(sf,{onResize:i},null,8,["onResize"]):oi("span",null,null)],512)}});const hf="Google Inc."===navigator.vendor;const gf=ye(!0),mf=[];let vf=0,yf=!1;const bf=e=>mf.forEach((t=>t.userAction=e));function _f(){const e=Dt({userAction:!1});return Io((()=>{!function(e={userAction:!1}){yf||(["touchstart","touchmove","touchend","mousedown","mouseup"].forEach((e=>{document.addEventListener(e,(function(){!vf&&bf(!0),vf++,setTimeout((()=>{!--vf&&bf(!1)}),0)}),gf)})),yf=!0);mf.push(e)}(e)})),Do((()=>{!function(e){const t=mf.indexOf(e);t>=0&&mf.splice(t,1)}(e)})),{state:e}}function wf(e,t){const n=document.activeElement;if(!n)return t({});const o={};["input","textarea"].includes(n.tagName.toLowerCase())&&(o.start=n.selectionStart,o.end=n.selectionEnd),t(o)}function xf(e,t,n){"number"===t&&isNaN(Number(e))&&(e="");return null==e?"":String(e)}const Sf=["none","text","decimal","numeric","tel","search","email","url"],Tf=c({},{name:{type:String,default:""},modelValue:{type:[String,Number]},value:{type:[String,Number]},disabled:{type:[Boolean,String],default:!1},autoFocus:{type:[Boolean,String],default:!1},focus:{type:[Boolean,String],default:!1},cursor:{type:[Number,String],default:-1},selectionStart:{type:[Number,String],default:-1},selectionEnd:{type:[Number,String],default:-1},type:{type:String,default:"text"},password:{type:[Boolean,String],default:!1},placeholder:{type:String,default:""},placeholderStyle:{type:String,default:""},placeholderClass:{type:String,default:""},maxlength:{type:[Number,String],default:140},confirmType:{type:String,default:"done"},confirmHold:{type:Boolean,default:!1},ignoreCompositionEvent:{type:Boolean,default:!0},step:{type:String,default:"0.000000000000000001"},inputmode:{type:String,default:void 0,validator:e=>!!~Sf.indexOf(e)},cursorColor:{type:String,default:""}},lf),Cf=["input","focus","blur","update:value","update:modelValue","update:focus","compositionstart","compositionupdate","compositionend","keyboardheightchange"];function Ef(e,t,n,o,r){let i=null,s=null;s=Te((n=>{const o=r.value,s=xf(n,e.type);o&&document.activeElement===o&&s===i||(t.value=s)}),100,{setTimeout:setTimeout,clearTimeout:clearTimeout}),Qn((()=>e.modelValue),s),Qn((()=>e.value),s);const a=function(e,t){let n,o,r=0;const i=function(...i){const s=Date.now();clearTimeout(n),o=()=>{o=null,r=s,e.apply(this,i)},s-r{s.cancel(),n("update:modelValue",t.value),n("update:value",t.value),o("input",e,t)}),100);return Mo((()=>{s.cancel(),a.cancel()})),{trigger:o,triggerInput:(e,t,n)=>{s.cancel(),i=t.value,a(e,t),n&&a.flush()}}}function kf(e,t){_f();const n=Ei((()=>e.autoFocus||e.focus));function o(){if(!n.value)return;const e=t.value;e?e.focus():setTimeout(o,100)}Qn((()=>e.focus),(e=>{e?o():function(){const e=t.value;e&&e.blur()}()})),Io((()=>{n.value&&Tn(o)}))}function Of(e,t,n,o){Sl(rc(),"getSelectedTextRange",wf);const{fieldRef:r,state:i,trigger:s}=function(e,t,n){const o=on(null),r=zc(t,n),i=Ei((()=>{const t=Number(e.selectionStart);return isNaN(t)?-1:t})),s=Ei((()=>{const t=Number(e.selectionEnd);return isNaN(t)?-1:t})),a=Ei((()=>{const t=Number(e.cursor);return isNaN(t)?-1:t})),l=Ei((()=>{var t=Number(e.maxlength);return isNaN(t)?140:t}));let c="";c=xf(e.modelValue,e.type)||xf(e.value,e.type);const u=Dt({value:c,valueOrigin:c,maxlength:l,focus:e.focus,composing:!1,selectionStart:i,selectionEnd:s,cursor:a});return Qn((()=>u.focus),(e=>n("update:focus",e))),Qn((()=>u.maxlength),(e=>u.value=u.value.slice(0,e)),{immediate:!1}),{fieldRef:o,state:u,trigger:r}}(e,t,n),{triggerInput:a}=Ef(e,i,n,s,r);kf(e,r),cf(0,r);const{state:l}=function(){const e=Dt({attrs:{}});return Io((()=>{let t=gi();for(;t;){const n=t.type.__scopeId;n&&(e.attrs[n]=""),t=t.proxy&&"page"===t.proxy.$mpType?null:t.parent}})),{state:e}}();!function(e,t){const n=yr(Gc,!1);if(!n)return;const o=gi(),r={submit(){const n=o.proxy;return[n[e],v(t)?n[t]:t.value]},reset(){v(t)?o.proxy[t]="":t.value=""}};n.addField(r),Do((()=>{n.removeField(r)}))}("name",i),function(e,t,n,o,r,i){function s(){const n=e.value;n&&t.focus&&t.selectionStart>-1&&t.selectionEnd>-1&&"number"!==n.type&&(n.selectionStart=t.selectionStart,n.selectionEnd=t.selectionEnd)}function a(){const n=e.value;n&&t.focus&&t.selectionStart<0&&t.selectionEnd<0&&t.cursor>-1&&"number"!==n.type&&(n.selectionEnd=n.selectionStart=t.cursor)}function l(e){return"number"===e.type?null:e.selectionEnd}Qn([()=>t.selectionStart,()=>t.selectionEnd],s),Qn((()=>t.cursor),a),Qn((()=>e.value),(function(){const c=e.value;if(!c)return;const u=function(e,o){e.stopPropagation(),m(i)&&!1===i(e,t)||(t.value=c.value,t.composing&&n.ignoreCompositionEvent||r(e,{value:c.value,cursor:l(c)},o))};function d(e){n.ignoreCompositionEvent||o(e.type,e,{value:e.data})}c.addEventListener("change",(e=>e.stopPropagation())),c.addEventListener("focus",(function(e){t.focus=!0,o("focus",e,{value:t.value}),s(),a()})),c.addEventListener("blur",(function(e){t.composing&&(t.composing=!1,u(e,!0)),t.focus=!1,o("blur",e,{value:t.value,cursor:l(e.target)})})),c.addEventListener("input",u),c.addEventListener("compositionstart",(e=>{e.stopPropagation(),t.composing=!0,d(e)})),c.addEventListener("compositionend",(e=>{e.stopPropagation(),t.composing&&(t.composing=!1,u(e)),d(e)})),c.addEventListener("compositionupdate",d)}))}(r,i,e,s,a,o);return{fieldRef:r,state:i,scopedAttrsState:l,fixDisabledColor:0===String(navigator.vendor).indexOf("Apple")&&CSS.supports("image-orientation:from-image"),trigger:s}}const Lf=pe((()=>{{const e=navigator.userAgent;let t="";const n=e.match(/OS\s([\w_]+)\slike/);if(n)t=n[1].replace(/_/g,".");else if(/Macintosh|Mac/i.test(e)&&navigator.maxTouchPoints>0){const n=e.match(/Version\/(\S*)\b/);n&&(t=n[1])}return!!t&&parseInt(t)>=16&&parseFloat(t)<17.2}}));function $f(e,t,n,o,r){if(t.value)if("."===e.data){if("."===t.value.slice(-1))return n.value=o.value=t.value=t.value.slice(0,-1),!1;if(t.value&&!t.value.includes(".")&&t.value===o.value)return t.value+=".",r&&(r.fn=()=>{n.value=o.value=t.value=t.value.slice(0,-1),o.removeEventListener("blur",r.fn)},o.addEventListener("blur",r.fn)),!1}else if("deleteContentBackward"===e.inputType&&Lf()&&"."===t.value.slice(-2,-1))return t.value=n.value=o.value=t.value.slice(0,-2),!0}function Af(e){return"insertFromPaste"===e.inputType}const Pf=Wc({name:"Input",props:c({},Tf,{placeholderClass:{type:String,default:"input-placeholder"},textContentType:{type:String,default:""}}),emits:["confirm",...Cf],setup(e,{emit:t,expose:n}){const o=["text","number","idcard","digit","password","tel"],r=["off","one-time-code"],i=Ei((()=>{let t="";switch(e.type){case"text":t="text","search"===e.confirmType&&(t="search");break;case"idcard":case"none":t="text";break;case"digit":t="number";break;default:t=o.includes(e.type)?e.type:"text"}return e.password?"password":t})),s=Ei((()=>{const t=r.indexOf(e.textContentType),n=r.indexOf($(e.textContentType));return r[-1!==t?t:-1!==n?n:0]})),a=Ei((()=>{if(void 0!==e.inputmode)return e.inputmode;if(Sf.includes(e.type))return e.type;return{number:"numeric",digit:"decimal",idcard:"text"}[e.type]}));let l=function(e,t){if("number"===t.value){const t=void 0===e.modelValue?e.value:e.modelValue,n=on(null!=t?t.toLocaleString():"");return Qn((()=>e.modelValue),(e=>{n.value=null!=e?e.toLocaleString():""})),Qn((()=>e.value),(e=>{n.value=null!=e?e.toLocaleString():""})),n}return on("")}(e,i),c={fn:null};const u=on(null),{fieldRef:d,state:f,scopedAttrsState:p,fixDisabledColor:h,trigger:g}=Of(e,u,t,((e,t)=>{const n=e.target;if("number"===i.value){if(c.fn&&(n.removeEventListener("blur",c.fn),c.fn=null),n.validity&&!n.validity.valid){if((!l.value||!n.value)&&"-"===e.data||"-"===l.value[0]&&"deleteContentBackward"===e.inputType)return l.value="-",t.value="",c.fn=()=>{l.value=n.value=""},n.addEventListener("blur",c.fn),!1;const o=$f(e,l,t,n,c);return"boolean"==typeof o?o:(l.value=t.value=n.value="-"===l.value?"":l.value,!1)}{const o=$f(e,l,t,n,c);if("boolean"==typeof o)return o;l.value=n.value}if(t.maxlength>0&&n.value.length>t.maxlength&&!Af(e))return n.value=l.value=t.value,!1}}));Qn((()=>f.value),(t=>{"number"!==e.type||"-"===l.value&&""===t||(l.value=t.toString())})),Qn((()=>e.maxlength),(e=>{e=parseInt(e,10);const t=f.value.slice(0,e);t!==f.value&&(f.value=t)}));const m=["number","digit"],v=Ei((()=>m.includes(e.type)?e.step:""));function y(t){if("Enter"!==t.key)return;const n=t.target;t.stopPropagation(),g("confirm",t,{value:n.value}),!e.confirmHold&&n.blur()}return n({$triggerInput:e=>{t("update:modelValue",e.value),t("update:value",e.value),f.value=e.value}}),()=>{let t=e.disabled&&h?oi("input",{key:"disabled-input",ref:d,value:f.value,tabindex:"-1",readonly:!!e.disabled,type:i.value,maxlength:f.maxlength,step:v.value,class:"uni-input-input",style:e.cursorColor?{caretColor:e.cursorColor}:{},inputmode:a.value,onFocus:e=>e.target.blur()},null,44,["value","readonly","type","maxlength","step","inputmode","onFocus"]):oi("input",{key:"input",ref:d,value:f.value,onInput:_s((e=>{const t=e.target.value.toString();"number"===i.value&&f.maxlength>0&&t.length>f.maxlength?Af(e)&&(f.value=t.slice(0,f.maxlength)):0===t.length&&"insertText"===e.inputType&&"."===e.data||(f.value=t)}),["stop"]),disabled:!!e.disabled,type:i.value,maxlength:f.maxlength,step:v.value,enterkeyhint:e.confirmType,pattern:"number"===e.type?"[0-9]*":void 0,class:"uni-input-input",style:e.cursorColor?{caretColor:e.cursorColor}:{},autocomplete:s.value,onKeyup:y,inputmode:a.value},null,44,["value","onInput","disabled","type","maxlength","step","enterkeyhint","pattern","autocomplete","onKeyup","inputmode"]);return oi("uni-input",{ref:u},[oi("div",{class:"uni-input-wrapper"},[ro(oi("div",ui(p.attrs,{style:e.placeholderStyle,class:["uni-input-placeholder",e.placeholderClass]}),[e.placeholder],16),[[Ki,!(f.value.length||"-"===l.value||l.value.includes("."))]]),"search"===e.confirmType?oi("form",{action:"",onSubmit:e=>e.preventDefault(),class:"uni-input-form"},[t],40,["onSubmit"]):t])],512)}}});const Rf=["class","style"],Bf=/^on[A-Z]+/,Nf=(e={})=>{const{excludeListeners:t=!1,excludeKeys:n=[]}=e,o=gi(),r=rn({}),i=rn({}),s=rn({}),a=n.concat(Rf);return o.attrs=Dt(o.attrs),Jn((()=>{const e=(n=o.attrs,Object.keys(n).map((e=>[e,n[e]]))).reduce(((e,[n,o])=>(a.includes(n)?e.exclude[n]=o:Bf.test(n)?(t||(e.attrs[n]=o),e.listeners[n]=o):e.attrs[n]=o,e)),{exclude:{},attrs:{},listeners:{}});var n;r.value=e.attrs,i.value=e.listeners,s.value=e.exclude})),{$attrs:r,$listeners:i,$excludeAttrs:s}},jf=Wc({name:"Refresher",props:{refreshState:{type:String,default:""},refresherHeight:{type:Number,default:0},refresherThreshold:{type:Number,default:45},refresherDefaultStyle:{type:String,default:"black"},refresherBackground:{type:String,default:"#fff"}},setup(e,{slots:t}){const n=on(null),o=Ei((()=>{const t={backgroundColor:e.refresherBackground};switch(e.refreshState){case"pulling":t.height=e.refresherHeight+"px";break;case"refreshing":t.height=e.refresherThreshold+"px",t.transition="height 0.3s";break;case"":case"refresherabort":case"restore":t.height="0px",t.transition="height 0.3s"}return t})),r=Ei((()=>{const t=e.refresherHeight/e.refresherThreshold;return 360*(t>1?1:t)}));return()=>{const{refreshState:i,refresherDefaultStyle:s,refresherThreshold:a}=e;return oi("div",{ref:n,style:o.value,class:"uni-scroll-view-refresher"},["none"!==s?oi("div",{class:"uni-scroll-view-refresh"},[oi("div",{class:"uni-scroll-view-refresh-inner"},["pulling"==i?oi("svg",{key:"refresh__icon",style:{transform:"rotate("+r.value+"deg)"},fill:"#2BD009",class:"uni-scroll-view-refresh__icon",width:"24",height:"24",viewBox:"0 0 24 24"},[oi("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"},null),oi("path",{d:"M0 0h24v24H0z",fill:"none"},null)],4):null,"refreshing"==i?oi("svg",{key:"refresh__spinner",class:"uni-scroll-view-refresh__spinner",width:"24",height:"24",viewBox:"25 25 50 50"},[oi("circle",{cx:"50",cy:"50",r:"20",fill:"none",style:"color: #2bd009","stroke-width":"3"},null)]):null])]):null,"none"===s?oi("div",{class:"uni-scroll-view-refresher-container",style:{height:`${a}px`}},[t.default&&t.default()]):null],4)}}}),Mf=ye(!0),If=Wc({name:"ScrollView",compatConfig:{MODE:3},props:{direction:{type:[String],default:"vertical"},scrollX:{type:[Boolean,String],default:!1},scrollY:{type:[Boolean,String],default:!1},showScrollbar:{type:[Boolean,String],default:!0},upperThreshold:{type:[Number,String],default:50},lowerThreshold:{type:[Number,String],default:50},scrollTop:{type:[Number,String],default:0},scrollLeft:{type:[Number,String],default:0},scrollIntoView:{type:String,default:""},scrollWithAnimation:{type:[Boolean,String],default:!1},enableBackToTop:{type:[Boolean,String],default:!1},refresherEnabled:{type:[Boolean,String],default:!1},refresherThreshold:{type:Number,default:45},refresherDefaultStyle:{type:String,default:"black"},refresherBackground:{type:String,default:"#fff"},refresherTriggered:{type:[Boolean,String],default:!1}},emits:["scroll","scrolltoupper","scrolltolower","refresherrefresh","refresherrestore","refresherpulling","refresherabort","update:refresherTriggered"],setup(e,{emit:t,slots:n,expose:o}){const r=on(null),i=on(null),s=on(null),a=on(null),l=zc(r,t),{state:c,scrollTopNumber:u,scrollLeftNumber:d}=function(e){const t=Ei((()=>Number(e.scrollTop)||0)),n=Ei((()=>Number(e.scrollLeft)||0));return{state:Dt({lastScrollTop:t.value,lastScrollLeft:n.value,lastScrollToUpperTime:0,lastScrollToLowerTime:0,refresherHeight:0,refreshState:""}),scrollTopNumber:t,scrollLeftNumber:n}}(e),{realScrollX:f,realScrollY:p,_scrollLeftChanged:h,_scrollTopChanged:g}=function(e,t,n,o,r,i,s,a,l){let c=!1,u=0,d=!1,f=()=>{};const p=Ei((()=>e.scrollX)),h=Ei((()=>e.scrollY)),g=Ei((()=>{let t=Number(e.upperThreshold);return isNaN(t)?50:t})),m=Ei((()=>{let t=Number(e.lowerThreshold);return isNaN(t)?50:t}));function v(e,t){const n=s.value;let o=0,r="";if(e<0?e=0:"x"===t&&e>n.scrollWidth-n.offsetWidth?e=n.scrollWidth-n.offsetWidth:"y"===t&&e>n.scrollHeight-n.offsetHeight&&(e=n.scrollHeight-n.offsetHeight),"x"===t?o=n.scrollLeft-e:"y"===t&&(o=n.scrollTop-e),0===o)return;let i=a.value;i.style.transition="transform .3s ease-out",i.style.webkitTransition="-webkit-transform .3s ease-out","x"===t?r="translateX("+o+"px) translateZ(0)":"y"===t&&(r="translateY("+o+"px) translateZ(0)"),i.removeEventListener("transitionend",f),i.removeEventListener("webkitTransitionEnd",f),f=()=>x(e,t),i.addEventListener("transitionend",f),i.addEventListener("webkitTransitionEnd",f),"x"===t?n.style.overflowX="hidden":"y"===t&&(n.style.overflowY="hidden"),i.style.transform=r,i.style.webkitTransform=r}function y(e){const n=e.target;r("scroll",e,{scrollLeft:n.scrollLeft,scrollTop:n.scrollTop,scrollHeight:n.scrollHeight,scrollWidth:n.scrollWidth,deltaX:t.lastScrollLeft-n.scrollLeft,deltaY:t.lastScrollTop-n.scrollTop}),h.value&&(n.scrollTop<=g.value&&t.lastScrollTop-n.scrollTop>0&&e.timeStamp-t.lastScrollToUpperTime>200&&(r("scrolltoupper",e,{direction:"top"}),t.lastScrollToUpperTime=e.timeStamp),n.scrollTop+n.offsetHeight+m.value>=n.scrollHeight&&t.lastScrollTop-n.scrollTop<0&&e.timeStamp-t.lastScrollToLowerTime>200&&(r("scrolltolower",e,{direction:"bottom"}),t.lastScrollToLowerTime=e.timeStamp)),p.value&&(n.scrollLeft<=g.value&&t.lastScrollLeft-n.scrollLeft>0&&e.timeStamp-t.lastScrollToUpperTime>200&&(r("scrolltoupper",e,{direction:"left"}),t.lastScrollToUpperTime=e.timeStamp),n.scrollLeft+n.offsetWidth+m.value>=n.scrollWidth&&t.lastScrollLeft-n.scrollLeft<0&&e.timeStamp-t.lastScrollToLowerTime>200&&(r("scrolltolower",e,{direction:"right"}),t.lastScrollToLowerTime=e.timeStamp)),t.lastScrollTop=n.scrollTop,t.lastScrollLeft=n.scrollLeft}function b(t){h.value&&(e.scrollWithAnimation?v(t,"y"):s.value.scrollTop=t)}function _(t){p.value&&(e.scrollWithAnimation?v(t,"x"):s.value.scrollLeft=t)}function w(t){if(t){if(!/^[_a-zA-Z][-_a-zA-Z0-9:]*$/.test(t))return void console.error(`id error: scroll-into-view=${t}`);let n=i.value.querySelector("#"+t);if(n){let t=s.value.getBoundingClientRect(),o=n.getBoundingClientRect();if(p.value){let n=o.left-t.left,r=s.value.scrollLeft+n;e.scrollWithAnimation?v(r,"x"):s.value.scrollLeft=r}if(h.value){let n=o.top-t.top,r=s.value.scrollTop+n;e.scrollWithAnimation?v(r,"y"):s.value.scrollTop=r}}}}function x(e,t){a.value.style.transition="",a.value.style.webkitTransition="",a.value.style.transform="",a.value.style.webkitTransform="";let n=s.value;"x"===t?(n.style.overflowX=p.value?"auto":"hidden",n.scrollLeft=e):"y"===t&&(n.style.overflowY=h.value?"auto":"hidden",n.scrollTop=e),a.value.removeEventListener("transitionend",f),a.value.removeEventListener("webkitTransitionEnd",f)}function S(n){if(e.refresherEnabled){switch(n){case"refreshing":t.refresherHeight=e.refresherThreshold,c||(c=!0,r("refresherpulling",{},{deltaY:t.refresherHeight,dy:t.refresherHeight}),r("refresherrefresh",{},{dy:C.y-T.y}),l("update:refresherTriggered",!0));break;case"restore":case"refresherabort":c=!1,t.refresherHeight=u=0,"restore"===n&&(d=!1,r("refresherrestore",{},{dy:C.y-T.y})),"refresherabort"===n&&d&&(d=!1,r("refresherabort",{},{dy:C.y-T.y}))}t.refreshState=n}}let T={x:0,y:0},C={x:0,y:e.refresherThreshold};return Io((()=>{Tn((()=>{b(n.value),_(o.value)})),w(e.scrollIntoView);let i=function(e){e.preventDefault(),e.stopPropagation(),y(e)},a=null,l=function(n){if(null===T)return;let o=n.touches[0].pageX,i=n.touches[0].pageY,l=s.value;if(Math.abs(o-T.x)>Math.abs(i-T.y))if(p.value){if(0===l.scrollLeft&&o>T.x)return void(a=!1);if(l.scrollWidth===l.offsetWidth+l.scrollLeft&&oT.y)a=!1,e.refresherEnabled&&!1!==n.cancelable&&n.preventDefault();else{if(l.scrollHeight===l.offsetHeight+l.scrollTop&&i0&&(d=!0,r("refresherpulling",n,{deltaY:o,dy:o})))}},f=function(e){1===e.touches.length&&(T={x:e.touches[0].pageX,y:e.touches[0].pageY})},g=function(n){C={x:n.changedTouches[0].pageX,y:n.changedTouches[0].pageY},t.refresherHeight>=e.refresherThreshold?S("refreshing"):S("refresherabort"),T={x:0,y:0},C={x:0,y:e.refresherThreshold}};s.value.addEventListener("touchstart",f,Mf),s.value.addEventListener("touchmove",l,ye(!1)),s.value.addEventListener("scroll",i,ye(!1)),s.value.addEventListener("touchend",g,Mf),Do((()=>{s.value.removeEventListener("touchstart",f),s.value.removeEventListener("touchmove",l),s.value.removeEventListener("scroll",i),s.value.removeEventListener("touchend",g)}))})),ko((()=>{h.value&&(s.value.scrollTop=t.lastScrollTop),p.value&&(s.value.scrollLeft=t.lastScrollLeft)})),Qn(n,(e=>{b(e)})),Qn(o,(e=>{_(e)})),Qn((()=>e.scrollIntoView),(e=>{w(e)})),Qn((()=>e.refresherTriggered),(e=>{!0===e?S("refreshing"):!1===e&&S("restore")})),{realScrollX:p,realScrollY:h,_scrollTopChanged:b,_scrollLeftChanged:_}}(e,c,u,d,l,r,i,a,t),m=Ei((()=>{let e="";return f.value?e+="overflow-x:auto;":e+="overflow-x:hidden;",p.value?e+="overflow-y:auto;":e+="overflow-y:hidden;",e})),v=Ei((()=>{let t="uni-scroll-view";return!1===e.showScrollbar&&(t+=" uni-scroll-view-scrollbar-hidden"),t}));return o({$getMain:()=>i.value}),()=>{const{refresherEnabled:t,refresherBackground:o,refresherDefaultStyle:l,refresherThreshold:u}=e,{refresherHeight:d,refreshState:f}=c;return oi("uni-scroll-view",{ref:r},[oi("div",{ref:s,class:"uni-scroll-view"},[oi("div",{ref:i,style:m.value,class:v.value},[t?oi(jf,{refreshState:f,refresherHeight:d,refresherThreshold:u,refresherDefaultStyle:l,refresherBackground:o},{default:()=>["none"==l?n.refresher&&n.refresher():null]},8,["refreshState","refresherHeight","refresherThreshold","refresherDefaultStyle","refresherBackground"]):null,oi("div",{ref:a,class:"uni-scroll-view-content"},[n.default&&n.default()],512)],6)],512)],512)}}});const Vf={ensp:" ",emsp:" ",nbsp:" "};function Ff(e,t){return function(e,{space:t,decode:n}){let o="",r=!1;for(let i of e)t&&Vf[t]&&" "===i&&(i=Vf[t]),r?(o+="n"===i?"\n":"\\"===i?"\\":"\\"+i,r=!1):"\\"===i?r=!0:o+=i;return n?o.replace(/ /g,Vf.nbsp).replace(/ /g,Vf.ensp).replace(/ /g,Vf.emsp).replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&").replace(/"/g,'"').replace(/'/g,"'"):o}(e,t).split("\n")}const Df=Wc({name:"Text",props:{selectable:{type:[Boolean,String],default:!1},space:{type:String,default:""},decode:{type:[Boolean,String],default:!1}},setup(e,{slots:t}){const n=on(null);return()=>{const o=[];return t.default&&t.default().forEach((t=>{if(8&t.shapeFlag&&t.type!==Dr){let n=[];n=Ff(t.children,{space:e.space,decode:e.decode});const r=n.length-1;n.forEach(((e,t)=>{(0!==t||e)&&o.push(ii(e)),t!==r&&o.push(oi("br"))}))}else o.push(t)})),oi("uni-text",{ref:n,selectable:!!e.selectable||null},[oi("span",null,o)],8,["selectable"])}}}),Hf=c({},Tf,{placeholderClass:{type:String,default:"input-placeholder"},autoHeight:{type:[Boolean,String],default:!1},confirmType:{type:String,default:"return",validator:e=>Uf.concat("return").includes(e)}});let Wf=!1;const Uf=["done","go","next","search","send"];const qf=Wc({name:"Textarea",props:Hf,emits:["confirm","change","linechange",...Cf],setup(e,{emit:t,expose:n}){const o=on(null),r=on(null),{fieldRef:i,state:s,scopedAttrsState:a,fixDisabledColor:l,trigger:c}=Of(e,o,t),u=Ei((()=>s.value.split("\n"))),d=Ei((()=>Uf.includes(e.confirmType))),f=on(0),p=on(null);function h({height:e}){f.value=e}function g(e){}function m(e){"Enter"===e.key&&d.value&&e.preventDefault()}function v(t){if("Enter"===t.key&&d.value){!function(e){c("confirm",e,{value:s.value})}(t);const n=t.target;!e.confirmHold&&n.blur()}}return Qn((()=>f.value),(t=>{const n=o.value,i=p.value,s=r.value;let a=parseFloat(getComputedStyle(n).lineHeight);isNaN(a)&&(a=i.offsetHeight);var l=Math.round(t/a);c("linechange",{},{height:t,heightRpx:750/window.innerWidth*t,lineCount:l}),e.autoHeight&&(s.style.height=t+"px")})),function(){const e="(prefers-color-scheme: dark)";Wf=0===String(navigator.platform).indexOf("iP")&&0===String(navigator.vendor).indexOf("Apple")&&window.matchMedia(e).media!==e}(),n({$triggerInput:e=>{t("update:modelValue",e.value),t("update:value",e.value),s.value=e.value}}),()=>{let t=e.disabled&&l?oi("textarea",{key:"disabled-textarea",ref:i,value:s.value,tabindex:"-1",readonly:!!e.disabled,maxlength:s.maxlength,class:{"uni-textarea-textarea":!0,"uni-textarea-textarea-fix-margin":Wf},style:{overflowY:e.autoHeight?"hidden":"auto",...e.cursorColor&&{caretColor:e.cursorColor}},onFocus:e=>e.target.blur()},null,46,["value","readonly","maxlength","onFocus"]):oi("textarea",{key:"textarea",ref:i,value:s.value,disabled:!!e.disabled,maxlength:s.maxlength,enterkeyhint:e.confirmType,inputmode:e.inputmode,class:{"uni-textarea-textarea":!0,"uni-textarea-textarea-fix-margin":Wf},style:{overflowY:e.autoHeight?"hidden":"auto",...e.cursorColor&&{caretColor:e.cursorColor}},onKeydown:m,onKeyup:v,onChange:g},null,46,["value","disabled","maxlength","enterkeyhint","inputmode","onKeydown","onKeyup","onChange"]);return oi("uni-textarea",{ref:o,"auto-height":e.autoHeight},[oi("div",{ref:r,class:"uni-textarea-wrapper"},[ro(oi("div",ui(a.attrs,{style:e.placeholderStyle,class:["uni-textarea-placeholder",e.placeholderClass]}),[e.placeholder],16),[[Ki,!s.value.length]]),oi("div",{ref:p,class:"uni-textarea-line"},[" "],512),oi("div",{class:{"uni-textarea-compute":!0,"uni-textarea-compute-auto-height":e.autoHeight}},[u.value.map((e=>oi("div",null,[e.trim()?e:"."]))),oi(sf,{initial:!0,onResize:h},null,8,["initial","onResize"])],2),"search"===e.confirmType?oi("form",{action:"",onSubmit:()=>!1,class:"uni-input-form"},[t],40,["onSubmit"]):t],512)],8,["auto-height"])}}}),zf=Wc({name:"View",props:c({},Xc),setup(e,{slots:t}){const n=on(null),{hovering:o,binding:r}=Kc(e);return()=>{const i=e.hoverClass;return i&&"none"!==i?oi("uni-view",ui({class:o.value?i:"",ref:n},r),[Ko(t,"default")],16):oi("uni-view",{ref:n},[Ko(t,"default")],512)}}});function Xf(e,t){if(t||(t=e.id),t)return e.$options.name.toLowerCase()+"."+t}function Kf(e,t,n){e&&Sl(n||rc(),e,(({type:e,data:n},o)=>{t(e,n,o)}))}function Yf(e,t){e&&function(e,t){t=xl(e,t),delete wl[t]}(t||rc(),e)}let Gf=0;function Jf(e,t,n,o){m(t)&&No(e,t.bind(n),o)}function Zf(e,t,n){const o=e.mpType||n.$mpType;if(o&&"component"!==o&&("page"!==o||"component"!==t.renderer)&&(Object.keys(e).forEach((o=>{if(function(e,t,n=!0){return!(n&&!m(t))&&(ke.indexOf(e)>-1||0===e.indexOf("on"))}(o,e[o],!1)){const r=e[o];p(r)?r.forEach((e=>Jf(o,e,n,t))):Jf(o,r,n,t)}})),"page"===o)){t.__isVisible=!0;try{let e=t.attrs.__pageQuery;0,uc(n,"onLoad",e),t.vapor||delete t.attrs.__pageQuery;const o=n.$page;"preloadPage"!==(null==o?void 0:o.openType)&&uc(n,"onShow")}catch(r){console.error(r.message+"\n"+r.stack)}}}function Qf(e,t,n){Zf(e,t,n)}function ep(e,t,n){return e[t]=n}function tp(e,...t){const n=this[e];return n?n(...t):(console.error(`method ${e} not found`),null)}function np(e){const t=e.config.errorHandler;return function(n,o,r){t&&t(n,o,r);const i=e._instance;if(!i||!i.proxy)throw n;i.onError?uc(i.proxy,"onError",n):hn(n,0,o&&o.$.vnode,!1)}}function op(e,t){return e?[...new Set([].concat(e,t))]:t}function rp(e){const t=e.config;var n;t.errorHandler=Le(e,np),n=t.optionMergeStrategies,ke.forEach((e=>{n[e]=op}));const o=t.globalProperties;o.$set=ep,o.$applyOptions=Qf,o.$callMethod=tp,function(e){Oe.forEach((t=>t(e)))}(e)}function ip(e){const t=tl({history:lp(),strict:!!__uniConfig.router.strict,routes:__uniRoutes,scrollBehavior:ap});t.beforeEach(((e,t)=>{var n;e&&t&&e.meta.isTabBar&&t.meta.isTabBar&&(n=t.meta.tabBarIndex,"undefined"!=typeof window&&(sp[n]={left:window.pageXOffset,top:window.pageYOffset}))})),e.router=t,e.use(t)}let sp=Object.create(null);const ap=(e,t,n)=>{if(n)return n;if(e&&t&&e.meta.isTabBar&&t.meta.isTabBar){const t=(o=e.meta.tabBarIndex,sp[o]);if(t)return t}return{left:0,top:0};var o};function lp(){let{routerBase:e}=__uniConfig.router;"/"===e&&(e="");const t=(n=e,(n=location.host?n||location.pathname+location.search:"").includes("#")||(n+="#"),ma(n));var n;return t.listen(((e,t,n)=>{"back"===n.direction&&function(e=1){const t=kd(),n=t.length-1,o=n-e;for(let r=n;r>o;r--){const e=bd(t[r]);Od(Ad(e.path,e.id),!1)}}(Math.abs(n.delta))})),t}const cp={install(e){rp(e),kc(e),Ic(e),e.config.warnHandler||(e.config.warnHandler=up),ip(e)}};function up(e,t,n){if(t){if("PageMetaHead"===t.$.type.name)return;const e=t.$.parent;if(e&&"PageMeta"===e.type.name)return}const o=[`[Vue warn]: ${e}`];n.length&&o.push("\n",n),console.warn(...o)}const dp={class:"uni-async-loading"},fp=oi("i",{class:"uni-loading"},null,-1),pp=Uc({name:"AsyncLoading",render:()=>(qr(),Gr("div",dp,[fp]))});function hp(){window.location.reload()}const gp=Uc({name:"AsyncError",props:["error"],setup(){ml();const{t:e}=hl();return()=>oi("div",{class:"uni-async-error",onClick:hp},[e("uni.async.error")],8,["onClick"])}});let mp;function vp(){return mp}function yp(e){mp=e,Object.defineProperty(mp.$.ctx,"$children",{get:()=>kd().map((e=>e.$vm))});const t=mp.$.appContext.app;t.component(pp.name)||t.component(pp.name,pp),t.component(gp.name)||t.component(gp.name,gp),function(e){e.$vm=e,e.$mpType="app";const t=on(hl().getLocale());Object.defineProperty(e,"$locale",{get:()=>t.value,set(e){t.value=e}})}(mp),function(e,t){const n=e.$options||{};n.globalData=c(n.globalData||{},t),Object.defineProperty(e,"globalData",{get:()=>n.globalData,set(e){n.globalData=e}})}(mp),jc(),vc()}function bp(e,{type:t,clone:n,init:o,setup:r,before:i,options:s}){n&&(e=c({},e)),i&&i(e);const a=e.setup;return e.setup=(e,t)=>{const n=gi();if(o(n.proxy),r(n),a)return a(e,t)},e}function _p(e,t){return e&&(e.__esModule||"Module"===e[Symbol.toStringTag])?bp(e.default,t):bp(e,t)}function wp(e,t){return _p(e,{type:"page",clone:!0,init:$d,setup(e){e.$pageInstance=e;const t=ru(),n=we(t.query);e.attrs.__pageQuery=n,bd(e.proxy).options=n,e.proxy.options=n;const o=nu();var r;vd(),e.onReachBottom=Dt([]),e.onPageScroll=Dt([]),Qn([e.onReachBottom,e.onPageScroll],(()=>{const t=nc();e.proxy===t&&Fd(e,o)}),{once:!0}),Mo((()=>{Bd(e,o)})),Io((()=>{Nd(e);const{onReady:n}=e;n&&B(n),Cp(t)})),Lo((()=>{if(!e.__isVisible){Bd(e,o),e.__isVisible=!0;const{onShow:n}=e;n&&B(n),Tn((()=>{Cp(t)}))}}),"ba",r),function(e,t){Lo(e,"bda",t)}((()=>{if(e.__isVisible&&!e.__isUnload){e.__isVisible=!1;{const{onHide:t}=e;t&&B(t)}}}));const i=cc(e.proxy);return function(e,t){hh.subscribe(xl(e,"invokeViewApi"),Tl)}(i),Do((()=>{!function(e){hh.unsubscribe(xl(e,"invokeViewApi")),Object.keys(wl).forEach((t=>{0===t.indexOf(e+".")&&delete wl[t]}))}(i)})),n}})}function xp(){const{windowWidth:e,windowHeight:t,screenWidth:n,screenHeight:o}=Dp(),r=90===Math.abs(Number(window.orientation))?"landscape":"portrait";gh.emit("onResize",{deviceOrientation:r,size:{windowWidth:e,windowHeight:t,screenWidth:n,screenHeight:o}})}function Sp(e){S(e.data)&&"WEB_INVOKE_APPSERVICE"===e.data.type&&gh.emit("onWebInvokeAppService",e.data.data,e.data.pageId)}function Tp(){const{emit:e}=gh;"visible"===document.visibilityState?e("onAppEnterForeground",c({},rf)):e("onAppEnterBackground")}function Cp(e){const{tabBarText:t,tabBarIndex:n,route:o}=e.meta;t&&uc("onTabItemTap",{index:n,text:t,pagePath:o})}function Ep(e){e=e>0&&e<1/0?e:0;const t=Math.floor(e/3600),n=Math.floor(e%3600/60),o=Math.floor(e%3600%60),r=(t<10?"0":"")+t;let i=(n<10?"0":"")+n+":"+((o<10?"0":"")+o);return"00"!==r&&(i=r+":"+i),i}function kp(e,t,n,o){const r=Dt({seeking:!1,gestureType:"none",volumeOld:0,volumeNew:0,currentTimeOld:0,currentTimeNew:0,toastThin:!1}),i={x:0,y:0};let s=null;let a;return{state:r,onTouchstart:function(e){const t=e.targetTouches[0];i.x=t.pageX,i.y=t.pageY,r.gestureType="none",r.volumeOld=0},onTouchmove:function(l){function c(){l.stopPropagation(),l.preventDefault()}o.fullscreen&&c();const u=r.gestureType;if("stop"===u)return;const d=l.targetTouches[0],f=d.pageX,p=d.pageY,h=i,g=n.value;if("progress"===u?(!function(e){const n=t.currentDuration;let o=e/600*n+r.currentTimeOld;o<0?o=0:o>n&&(o=n);r.currentTimeNew=o}(f-h.x),r.seeking=!0):"volume"===u&&function(e){const t=n.value,o=r.volumeOld;let i;"number"==typeof o&&(i=o-e/200,i<0?i=0:i>1&&(i=1),clearTimeout(a),a=void 0,null==a&&(a=setTimeout((()=>{r.toastThin=!1,a=void 0}),1e3)),t.volume=i,r.volumeNew=i)}(p-h.y),"none"===u)if(Math.abs(f-h.x)>Math.abs(p-h.y)){if(!e.enableProgressGesture)return void(r.gestureType="stop");r.gestureType="progress",r.currentTimeOld=r.currentTimeNew=g.currentTime,o.fullscreen||c()}else{if(!e.pageGesture&&!e.vslideGesture)return void(r.gestureType="stop");"none"!==r.gestureType&&null!=s||(s=setTimeout((()=>{r.toastThin=!0}),500)),r.gestureType="volume",r.volumeOld=g.volume,o.fullscreen||c()}},onTouchend:function(e){const t=n.value;"none"!==r.gestureType&&"stop"!==r.gestureType&&(e.stopPropagation(),e.preventDefault()),"progress"===r.gestureType&&r.currentTimeOld!==r.currentTimeNew&&(t.currentTime=r.currentTimeNew),r.gestureType="none"}}}function Op(e,t,n,o,r,i,s,a){const l={play:e,stop:n,pause:t,seek:o,sendDanmu:r,playbackRate:i,requestFullScreen:s,exitFullScreen:a};!function(e,t,n,o){const r=gi().proxy;o=null==o?tc():o,Io((()=>{Kf(t||Xf(r),e,o),!n&&t||Qn((()=>r.id),((t,n)=>{Kf(Xf(r,t),e,o),Yf(n&&Xf(r,n))}))})),Do((()=>{Yf(t||Xf(r),o)}))}(((e,t)=>{let n;switch(e){case"seek":n=t.position;break;case"sendDanmu":n=t;break;case"playbackRate":n=t.rate}e in l&&l[e](n)}),function(e){const t=tc(),n=gi().proxy,o=n.$options.name.toLowerCase(),r=e||n.id||"context"+Gf++;return Io((()=>{n.$el.__uniContextInfo={id:r,type:o,page:t}})),`${o}.${r}`}(),!0)}const Lp=Wc({name:"Video",props:{id:{type:String,default:""},src:{type:String,default:""},duration:{type:[Number,String],default:""},controls:{type:[Boolean,String],default:!0},danmuList:{type:Array,default:()=>[]},danmuBtn:{type:[Boolean,String],default:!1},enableDanmu:{type:[Boolean,String],default:!1},autoplay:{type:[Boolean,String],default:!1},loop:{type:[Boolean,String],default:!1},muted:{type:[Boolean,String],default:!1},objectFit:{type:String,default:"contain"},poster:{type:String,default:""},direction:{type:[String,Number],default:""},showProgress:{type:Boolean,default:!0},initialTime:{type:[String,Number],default:0},showFullscreenBtn:{type:[Boolean,String],default:!0},pageGesture:{type:[Boolean,String],default:!1},vslideGesture:{type:[Boolean,String],default:!1},enableProgressGesture:{type:[Boolean,String],default:!0},showPlayBtn:{type:[Boolean,String],default:!0},showCenterPlayBtn:{type:[Boolean,String],default:!0}},emits:["fullscreenchange","progress","loadedmetadata","waiting","error","play","pause","ended","timeupdate"],setup(e,{emit:t,attrs:n,slots:o}){const r=on(null),i=on(null),s=zc(r,t),{state:a}=_f(),{$attrs:l}=Nf({excludeListeners:!0});yl();const{videoRef:c,state:u,play:d,pause:f,stop:h,seek:g,playbackRate:m,toggle:v,onDurationChange:y,onLoadedMetadata:b,onProgress:_,onWaiting:w,onVideoError:x,onPlay:S,onPause:T,onEnded:C,onTimeUpdate:E}=function(e,t,n){const o=on(null),r=Ei((()=>Hd(e.src))),i=Ei((()=>"true"===e.muted||!0===e.muted)),s=Dt({start:!1,src:r,playing:!1,currentTime:0,duration:0,currentDuration:0,progress:0,buffered:0,muted:i,pauseUpdatingCurrentTime:!1});function a(e){const t=e.target,n=t.buffered;n.length&&(s.buffered=n.end(n.length-1)/t.duration*100)}function l(){o.value.pause()}function c(e){const t=o.value;"number"!=typeof(e=Number(e))||isNaN(e)||(t.currentTime=e)}return Qn((()=>r.value),(()=>{s.playing=!1,s.currentTime=0})),Qn((()=>s.buffered),(e=>{n("progress",{},{buffered:e})})),Qn((()=>i.value),(e=>{o.value.muted=e})),Qn([()=>s.duration,()=>e.duration],(()=>{let t=Number(e.duration);isNaN(t)&&(t=0),s.currentDuration=t>0?t:s.duration})),{videoRef:o,state:s,play:function(){const e=o.value;s.start=!0,e.play()},pause:l,stop:function(){c(0),l()},seek:c,playbackRate:function(e){o.value.playbackRate=e},toggle:function(){const e=o.value;s.playing?e.pause():e.play()},onDurationChange:function({target:e}){s.duration=e.duration},onLoadedMetadata:function(t){const o=Number(e.initialTime)||0,r=t.target;o>0&&(r.currentTime=o),n("loadedmetadata",t,{width:r.videoWidth,height:r.videoHeight,duration:r.duration}),a(t)},onProgress:a,onWaiting:function(e){n("waiting",e,{})},onVideoError:function(e){s.playing=!1,n("error",e,{})},onPlay:function(e){s.start=!0,s.playing=!0,n("play",e,{})},onPause:function(e){s.playing=!1,n("pause",e,{})},onEnded:function(e){s.playing=!1,n("ended",e,{})},onTimeUpdate:function(e){const t=e.target;s.pauseUpdatingCurrentTime||(s.currentTime=t.currentTime);const o=t.currentTime;n("timeupdate",e,{currentTime:o,duration:t.duration})}}}(e,0,s),{state:k,danmuRef:O,updateDanmu:L,toggleDanmu:$,sendDanmu:A}=function(e,t){const n=on(null),o=Dt({enable:Boolean(e.enableDanmu)});let r={time:0,index:-1};const i=p(e.danmuList)?JSON.parse(JSON.stringify(e.danmuList)):[];function s(e){const t=document.createElement("p");t.className="uni-video-danmu-item",t.innerText=e.text;let o=`bottom: ${100*Math.random()}%;color: ${e.color};`;t.setAttribute("style",o),n.value.appendChild(t),setTimeout((function(){o+="left: 0;-webkit-transform: translateX(-100%);transform: translateX(-100%);",t.setAttribute("style",o),setTimeout((function(){t.remove()}),4e3)}),17)}return i.sort((function(e,t){return(e.time||0)-(t.time||0)})),{state:o,danmuRef:n,updateDanmu:function(e){const n=e.target.currentTime,a=r,l={time:n,index:a.index};if(n>a.time)for(let r=a.index+1;r=(e.time||0)))break;l.index=r,t.playing&&o.enable&&s(e)}else if(n-1&&n<=(i[t].time||0);t--)l.index=t-1;r=l},toggleDanmu:function(){o.enable=!o.enable},sendDanmu:function(e){i.splice(r.index+1,0,{text:String(e.text),color:e.color,time:t.currentTime||0})}}}(e,u),{state:P,onFullscreenChange:R,emitFullscreenChange:B,toggleFullscreen:N,requestFullScreen:j,exitFullScreen:M}=function(e,t,n,o,r){const i=Dt({fullscreen:!1}),s=/^Apple/.test(navigator.vendor);function a(t){i.fullscreen=t,e("fullscreenchange",{},{fullScreen:t,direction:"vertical"})}function l(e){const i=r.value,l=t.value,c=n.value;let u;e?!document.fullscreenEnabled&&!document.webkitFullscreenEnabled||s&&!o.userAction?c.webkitEnterFullScreen?c.webkitEnterFullScreen():(u=!0,l.remove(),l.classList.add("uni-video-type-fullscreen"),document.body.appendChild(l)):l[document.fullscreenEnabled?"requestFullscreen":"webkitRequestFullscreen"]():document.fullscreenEnabled||document.webkitFullscreenEnabled?document.fullscreenElement?document.exitFullscreen():document.webkitFullscreenElement&&document.webkitExitFullscreen():c.webkitExitFullScreen?c.webkitExitFullScreen():(u=!0,l.remove(),l.classList.remove("uni-video-type-fullscreen"),i.appendChild(l)),u&&a(e)}function c(){l(!1)}return Do(c),{state:i,onFullscreenChange:function(e,t){t&&document.fullscreenEnabled||a(!(!document.fullscreenElement&&!document.webkitFullscreenElement))},emitFullscreenChange:a,toggleFullscreen:l,requestFullScreen:function(){l(!0)},exitFullScreen:c}}(s,i,c,a,r),{state:I,onTouchstart:V,onTouchend:F,onTouchmove:D}=kp(e,u,c,P),{state:H,progressRef:W,ballRef:U,clickProgress:q,toggleControls:z,autoHideEnd:X,autoHideStart:K}=function(e,t,n,o){const r=on(null),i=on(null),s=Ei((()=>e.showCenterPlayBtn&&!t.start)),a=on(!0),l=Ei((()=>!s.value&&e.controls&&a.value)),c=Dt({seeking:!1,touching:!1,controlsTouching:!1,centerPlayBtnShow:s,controlsShow:l,controlsVisible:a});let u;function d(){u=setTimeout((()=>{c.controlsVisible=!1}),3e3)}function f(){u&&(clearTimeout(u),u=null)}return Do((()=>{u&&clearTimeout(u)})),Qn((()=>c.controlsShow&&t.playing&&!c.controlsTouching),(e=>{e?d():f()})),Io((()=>{const e=ye(!1);let s,a,l,u=!0;const d=i.value;function f(e){const n=e.targetTouches[0],i=n.pageX,d=n.pageY;if(u&&Math.abs(i-s)100&&(h=100),t.progress=h,null==o||o(t.currentDuration*h/100),c.seeking=!0,e.preventDefault(),e.stopPropagation()}function p(o){c.controlsTouching=!1,c.touching&&(d.removeEventListener("touchmove",f,e),u||(o.preventDefault(),o.stopPropagation(),n(t.currentDuration*t.progress/100)),c.touching=!1)}d.addEventListener("touchstart",(n=>{c.controlsTouching=!0;const o=n.targetTouches[0];s=o.pageX,a=o.pageY,l=t.progress,u=!0,c.touching=!0,d.addEventListener("touchmove",f,e)})),d.addEventListener("touchend",p),d.addEventListener("touchcancel",p)})),{state:c,progressRef:r,ballRef:i,clickProgress:function(e){const o=r.value;let i=e.target,s=e.offsetX;for(;i&&i!==o;)s+=i.offsetLeft,i=i.parentNode;const a=o.offsetWidth;let l=0;s>=0&&s<=a&&(l=s/a,n(t.currentDuration*l))},toggleControls:function(){c.controlsVisible=!c.controlsVisible},autoHideStart:d,autoHideEnd:f}}(e,u,g,(e=>{I.currentTimeNew=e}));Op(d,f,h,g,A,m,j,M);const Y=function(e,t,n,o,r){const i=Ei((()=>"progress"===t.gestureType||n.touching));return Qn(i,(o=>{e.pauseUpdatingCurrentTime=o,n.controlsTouching=o,"progress"===t.gestureType&&o&&(n.controlsVisible=o)})),Qn([()=>e.currentTime,()=>e.currentDuration],(()=>{e.currentDuration>0?e.progress=e.currentTime/e.currentDuration*100:e.progress=0,e.progress>100&&(e.progress=100)}),{immediate:!0}),Qn((()=>t.currentTimeNew),(t=>{e.currentTime=t})),i}(u,I,H);return()=>oi("uni-video",{ref:r,id:e.id,onClick:z},[oi("div",{ref:i,class:"uni-video-container",onTouchstart:V,onTouchend:F,onTouchmove:D,onFullscreenchange:_s(R,["stop"]),onWebkitfullscreenchange:_s((e=>R(e,!0)),["stop"])},[oi("video",ui({ref:c,style:{"object-fit":e.objectFit},muted:!!e.muted,loop:!!e.loop,src:u.src,poster:e.poster,autoplay:!!e.autoplay},l.value,{class:{"uni-video-video":!0,"uni-video-video-fullscreen":P.fullscreen},"webkit-playsinline":!0,playsinline:!0,onDurationchange:y,onLoadedmetadata:b,onProgress:_,onWaiting:w,onError:x,onPlay:S,onPause:T,onEnded:C,onTimeupdate:e=>{E(e),L(e)},onWebkitbeginfullscreen:()=>B(!0),onX5videoenterfullscreen:()=>B(!0),onWebkitendfullscreen:()=>B(!1),onX5videoexitfullscreen:()=>B(!1)}),null,16,["muted","loop","src","poster","autoplay","webkit-playsinline","playsinline","onDurationchange","onLoadedmetadata","onProgress","onWaiting","onError","onPlay","onPause","onEnded","onTimeupdate","onWebkitbeginfullscreen","onX5videoenterfullscreen","onWebkitendfullscreen","onX5videoexitfullscreen"]),ro(oi("div",{class:"uni-video-bar uni-video-bar-full",onClick:_s((()=>{}),["stop"])},[oi("div",{class:"uni-video-controls"},[ro(oi("div",{class:{"uni-video-icon":!0,"uni-video-control-button":!0,"uni-video-control-button-play":!u.playing,"uni-video-control-button-pause":u.playing},onClick:_s(v,["stop"])},null,10,["onClick"]),[[Ki,e.showPlayBtn]]),ro(oi("div",{class:"uni-video-current-time"},[Ep(u.currentTime)],512),[[Ki,e.showProgress]]),ro(oi("div",{ref:W,class:"uni-video-progress-container",onClick:_s(q,["stop"])},[oi("div",{class:{"uni-video-progress":!0,"uni-video-progress-progressing":Y.value}},[oi("div",{style:{width:u.buffered-u.progress+"%",left:u.progress+"%"},class:"uni-video-progress-buffered"},null,4),oi("div",{style:{width:u.progress+"%"},class:"uni-video-progress-played"},null,4),oi("div",{ref:U,style:{left:u.progress+"%"},class:{"uni-video-ball":!0,"uni-video-ball-progressing":Y.value}},[oi("div",{class:"uni-video-inner"},null)],6)],2)],8,["onClick"]),[[Ki,e.showProgress]]),ro(oi("div",{class:"uni-video-duration"},[Ep(u.currentDuration)],512),[[Ki,e.showProgress]])]),ro(oi("div",{class:{"uni-video-icon":!0,"uni-video-danmu-button":!0,"uni-video-danmu-button-active":k.enable},onClick:_s($,["stop"])},null,10,["onClick"]),[[Ki,e.danmuBtn]]),ro(oi("div",{class:{"uni-video-icon":!0,"uni-video-fullscreen":!0,"uni-video-type-fullscreen":P.fullscreen},onClick:_s((()=>N(!P.fullscreen)),["stop"])},null,10,["onClick"]),[[Ki,e.showFullscreenBtn]])],8,["onClick"]),[[Ki,H.controlsShow]]),ro(oi("div",{ref:O,style:"z-index: 0;",class:"uni-video-danmu"},null,512),[[Ki,u.start&&k.enable]]),H.centerPlayBtnShow&&oi("div",{class:"uni-video-cover",onClick:_s((()=>{}),["stop"])},[oi("div",{class:"uni-video-cover-play-button uni-video-icon",onClick:_s(d,["stop"])},null,8,["onClick"])],8,["onClick"]),oi("div",{class:"uni-video-loading"},["volume"===I.gestureType?oi("div",{class:{"uni-video-toast-container":!0,"uni-video-toast-container-thin":I.toastThin},style:{marginTop:"5px"}},[!I.toastThin&&I.volumeNew>0&&"volume"===I.gestureType?oi("text",{class:"uni-video-icon uni-video-toast-icon"},[""]):!I.toastThin&&oi("text",{class:"uni-video-icon uni-video-toast-icon"},[""]),oi("div",{class:"uni-video-toast-draw",style:{width:100*I.volumeNew+"%"}},null)],2):null]),oi("div",{class:{"uni-video-toast":!0,"uni-video-toast-progress":Y.value}},[oi("div",{class:"uni-video-toast-title"},[oi("span",{class:"uni-video-toast-title-current-time"},[Ep(I.currentTimeNew)])," / ",Ep(u.currentDuration)])],2),oi("div",{class:"uni-video-slots"},[o.default&&o.default()])],40,["onTouchstart","onTouchend","onTouchmove","onFullscreenchange","onWebkitfullscreenchange"])],8,["id","onClick"])}}),$p=navigator.cookieEnabled&&(window.localStorage||window.sessionStorage)||{};let Ap;function Pp(){if(Ap=Ap||$p.__DC_STAT_UUID,!Ap){Ap=Date.now()+""+Math.floor(1e7*Math.random());try{$p.__DC_STAT_UUID=Ap}catch(e){}}return Ap}function Rp(){if(!0!==__uniConfig.darkmode)return v(__uniConfig.darkmode)?__uniConfig.darkmode:"light";try{return window.matchMedia("(prefers-color-scheme: light)").matches?"light":"dark"}catch(e){return"light"}}function Bp(){let e,t="0",n="",o="phone";const r=navigator.language;if(qd){e="iOS";const o=Wd.match(/OS\s([\w_]+)\slike/);o&&(t=o[1].replace(/_/g,"."));const r=t.split(".")[0];if(Number(r)>=18){const e=Wd.match(/Version\/([\d\.]+)/);e&&(t=e[1])}const i=Wd.match(/\(([a-zA-Z]+);/);i&&(n=i[1])}else if(Ud){e="Android";const o=Wd.match(/Android[\s/]([\w\.]+)[;\s]/);o&&(t=o[1]);const r=Wd.match(/\((.+?)\)/),i=r?r[1].split(";"):Wd.split(" "),s=[/\bAndroid\b/i,/\bLinux\b/i,/\bU\b/i,/^\s?[a-z][a-z]$/i,/^\s?[a-z][a-z]-[a-z][a-z]$/i,/\bwv\b/i,/\/[\d\.,]+$/,/^\s?[\d\.,]+$/,/\bBrowser\b/i,/\bMobile\b/i];for(let e=0;e0){n=t.split("Build")[0].trim();break}let o;for(let e=0;e-1&&e.indexOf("MSIE")>-1,n=e.indexOf("Edge")>-1&&!t,o=e.indexOf("Trident")>-1&&e.indexOf("rv:11.0")>-1;if(t){new RegExp("MSIE (\\d+\\.\\d+);").test(e);const t=parseFloat(RegExp.$1);return t>6?t:6}return n?-1:o?11:-1}());if("-1"!==l)a="IE";else{const e=["Version","Firefox","Chrome","Edge{0,1}"],t=["Safari","Firefox","Chrome","Edge"];for(let n=0;n{const e=window.devicePixelRatio,t=Jd(),n=Zd(t),o=Qd(t,n),r=function(e,t){return e?Math[t?"min":"max"](screen.height,screen.width):screen.height}(t,n),i=ef();let s=window.innerHeight;const a=zl.top,l={left:zl.left,right:i-zl.right,top:zl.top,bottom:s-zl.bottom,width:i-zl.left-zl.right,height:s-zl.top-zl.bottom},{top:c,bottom:u}=function(){const e=document.documentElement.style,t=Gl(),n=Yl(e,"--window-bottom"),o=Yl(e,"--window-left"),r=Yl(e,"--window-right"),i=Yl(e,"--top-window-height");return{top:t,bottom:n?n+zl.bottom:0,left:o?o+zl.left:0,right:r?r+zl.right:0,topWindowHeight:i||0}}();return s-=c,s-=u,{windowTop:c,windowBottom:u,windowWidth:i,windowHeight:s,pixelRatio:e,screenWidth:o,screenHeight:r,statusBarHeight:a,safeArea:l,safeAreaInsets:{top:zl.top,right:zl.right,bottom:zl.bottom,left:zl.left},screenTop:r-s}}));let jp,Mp=!0;function Ip(){Mp&&(jp=Bp())}const Vp=Au(0,(()=>{Ip();const{deviceBrand:e,deviceModel:t,brand:n,model:o,platform:r,system:i,deviceOrientation:s,deviceType:a,osname:l,osversion:u}=jp;return c({brand:n,deviceBrand:e,deviceModel:t,devicePixelRatio:window.devicePixelRatio,deviceId:Pp(),deviceOrientation:s,deviceType:a,model:o,osName:l?l.toLowerCase():void 0,osVersion:u,platform:r,system:i})})),Fp=Au(0,(()=>{Ip();const{theme:e,language:t,browserName:n,browserVersion:o}=jp;return c({appId:__uniConfig.appId,appName:__uniConfig.appName,appVersion:__uniConfig.appVersion,appVersionCode:__uniConfig.appVersionCode,appLanguage:Hu?Hu():t,enableDebug:!1,hostSDKVersion:void 0,hostPackageName:void 0,hostFontSizeSetting:void 0,hostName:n,hostVersion:o,hostTheme:e,hostLanguage:t,isUniAppX:!1,language:t,SDKVersion:"",theme:e,uniPlatform:"web",uniCompileVersion:__uniConfig.compilerVersion,uniCompilerVersion:__uniConfig.compilerVersion,uniRuntimeVersion:__uniConfig.compilerVersion,version:""},{})})),Dp=Au(0,(()=>{Mp=!0,Ip(),Mp=!1;const e=Np(),t=Vp(),n=Fp();Mp=!0;const{ua:o,browserName:r,browserVersion:i,osname:s,osversion:a}=jp,l=c(e,t,n,{browserName:r,browserVersion:i,fontSizeSetting:void 0,osName:s.toLowerCase(),osVersion:a,osLanguage:void 0,osTheme:void 0,ua:o,uniPlatform:"web",uniCompileVersion:__uniConfig.compilerVersion,uniRuntimeVersion:__uniConfig.compilerVersion});return delete l.screenTop,delete l.enableDebug,__uniConfig.darkmode||delete l.theme,l}));const Hp=Au(0,((e,t)=>{const n=typeof t,o="string"===n?t:JSON.stringify({type:n,data:t});localStorage.setItem(e,o)}));function Wp(e){const t=localStorage&&localStorage.getItem(e);if(!v(t))throw new Error("data not found");let n=t;try{const e=function(e){const t=["object","string","number","boolean","undefined"];try{const n=v(e)?JSON.parse(e):e,o=n.type;if(t.indexOf(o)>=0){const e=Object.keys(n);if(2===e.length&&"data"in n){if(typeof n.data===o)return n.data;if("object"===o&&/^\d{4}-\d{2}-\d{2}T\d{2}\:\d{2}\:\d{2}\.\d{3}Z$/.test(n.data))return new Date(n.data)}else if(1===e.length)return""}}catch(n){}}(JSON.parse(t));void 0!==e&&(n=e)}catch(o){}return n}const Up=Au(0,(e=>{try{return Wp(e)}catch(t){return""}})),qp=Au(0,(e=>{localStorage&&localStorage.removeItem(e)})),zp={esc:["Esc","Escape"],enter:["Enter"]},Xp=Object.keys(zp);const Kp=oi("div",{class:"uni-mask"},null,-1);function Yp(e,{onEsc:t,onEnter:n}){const o=on(e.visible),{key:r,disable:i}=function(){const e=on(""),t=on(!1),n=n=>{if(t.value)return;const o=Xp.find((e=>-1!==zp[e].indexOf(n.key)));o&&(e.value=o),Tn((()=>e.value=""))};return Io((()=>{document.addEventListener("keyup",n)})),Do((()=>{document.removeEventListener("keyup",n)})),{key:e,disable:t}}();return Qn((()=>e.visible),(e=>o.value=e)),Qn((()=>o.value),(e=>i.value=!e)),Jn((()=>{const{value:e}=r;"esc"===e?t&&t():"enter"===e&&n&&n()})),o}const Gp=$u("request",(({url:e,data:t,header:n={},method:o,dataType:r,responseType:i,enableChunked:s,withCredentials:a,timeout:l=__uniConfig.networkTimeout.request},{resolve:c,reject:u})=>{let d=null;const p=function(e){const t=Object.keys(e).find((e=>"content-type"===e.toLowerCase()));if(!t)return;const n=e[t];if(!n)return"string";if(0===n.indexOf("application/json"))return"json";if(0===n.indexOf("application/x-www-form-urlencoded"))return"urlencoded";return"string"}(n);if("GET"!==o)if(v(t)||t instanceof ArrayBuffer)d=t;else if("json"===p)try{d=JSON.stringify(t)}catch(g){d=t.toString()}else if("urlencoded"===p){const e=[];for(const n in t)f(t,n)&&e.push(encodeURIComponent(n)+"="+encodeURIComponent(t[n]));d=e.join("&")}else d=t.toString();let h;if(s){if(void 0===typeof window.fetch||void 0===typeof window.AbortController)throw new Error("fetch or AbortController is not supported in this environment");const t=new AbortController,s=t.signal;h=new Zp(t);const f={method:o,headers:n,body:d,signal:s,credentials:a?"include":"same-origin"},p=setTimeout((function(){h.abort(),u("timeout",{errCode:5})}),l);f.signal.addEventListener("abort",(function(){clearTimeout(p),u("abort",{errCode:600003})})),window.fetch(e,f).then((e=>{const t=e.status,n=e.headers,o=e.body,s={};n.forEach(((e,t)=>{s[t]=e}));const a=Jp(s);if(h._emitter.emit("headersReceived",{header:s,statusCode:t,cookies:a}),!o)return void c({data:"",statusCode:t,header:s,cookies:a});const l=o.getReader(),u=[],d=()=>{l.read().then((({done:e,value:n})=>{if(e){const e=function(e){const t=e.reduce(((e,t)=>e+t.byteLength),0),n=new Uint8Array(t);let o=0;for(const r of e)n.set(new Uint8Array(r),o),o+=r.byteLength;return n.buffer}(u);let n="text"===i?(new TextDecoder).decode(e):e;return"text"===i&&(n=eh(n,i,r)),void c({data:n,statusCode:t,header:s,cookies:a})}const o=n;u.push(o),h._emitter.emit("chunkReceived",{data:o}),d()}))};d()}),(e=>{u(e,{errCode:5})}))}else{const t=new XMLHttpRequest;h=new Zp(t),t.open(o,e);for(const e in n)f(n,e)&&t.setRequestHeader(e,n[e]);const s=setTimeout((function(){t.onload=t.onabort=t.onerror=null,h.abort(),u("timeout",{errCode:5})}),l);t.responseType=i,t.onload=function(){clearTimeout(s);const e=t.status;let n="text"===i?t.responseText:t.response;"text"===i&&(n=eh(n,i,r)),c({data:n,statusCode:e,header:Qp(t.getAllResponseHeaders()),cookies:[]})},t.onabort=function(){clearTimeout(s),u("abort",{errCode:600003})},t.onerror=function(){clearTimeout(s),u(void 0,{errCode:5})},t.withCredentials=a,t.send(d)}return h}),0,Xu),Jp=e=>{let t=e["Set-Cookie"]||e["set-cookie"],n=[];if(!t)return[];"["===t[0]&&"]"===t[t.length-1]&&(t=t.slice(1,-1));const o=t.split(";");for(let r=0;r{t===e&&(this._requestOnHeadersReceiveCallbacks.delete(n),this._emitter.off("headersReceived",e))}));const t=this._requestOnHeadersReceiveCallbacks.get(e);t&&(this._requestOnHeadersReceiveCallbacks.delete(e),this._emitter.off("headersReceived",t))}onChunkReceived(e){return this._emitter.on("chunkReceived",e),this._requestOnChunkReceiveCallbackId++,this._requestOnChunkReceiveCallbacks.set(this._requestOnChunkReceiveCallbackId,e),this._requestOnChunkReceiveCallbackId}offChunkReceived(e){if(null==e)return void this._emitter.off("chunkReceived");if("function"==typeof e)return void this._requestOnChunkReceiveCallbacks.forEach(((t,n)=>{t===e&&(this._requestOnChunkReceiveCallbacks.delete(n),this._emitter.off("chunkReceived",e))}));const t=this._requestOnChunkReceiveCallbacks.get(e);t&&(this._requestOnChunkReceiveCallbacks.delete(e),this._emitter.off("chunkReceived",t))}}function Qp(e){const t={};return e.split("\n").forEach((e=>{const n=e.match(/(\S+\s*):\s*(.*)/);n&&3===n.length&&(t[n[1]]=n[2])})),t}function eh(e,t,n){let o=e;if("text"===t&&"json"===n)try{o=JSON.parse(o)}catch(r){}return o}class th{constructor(e){this._callbacks=[],this._xhr=e}onProgressUpdate(e){m(e)&&this._callbacks.push(e)}offProgressUpdate(e){const t=this._callbacks.indexOf(e);t>=0&&this._callbacks.splice(t,1)}abort(){this._xhr&&(this._xhr.abort(),delete this._xhr)}onHeadersReceived(e){throw new Error("Method not implemented.")}offHeadersReceived(e){throw new Error("Method not implemented.")}}const nh=$u("downloadFile",(({url:e,header:t={},timeout:n=__uniConfig.networkTimeout.downloadFile},{resolve:o,reject:r})=>{var i,s=new XMLHttpRequest,a=new th(s);return s.open("GET",e,!0),Object.keys(t).forEach((e=>{s.setRequestHeader(e,t[e])})),s.responseType="blob",s.onload=function(){clearTimeout(i);const t=s.status,n=this.response;let r;const a=s.getResponseHeader("content-disposition");if(a){const e=a.match(/filename="?(\S+)"?\b/);e&&(r=e[1])}n.name=r||function(e){const t=(e=e.split("#")[0].split("?")[0]).split("/");return t[t.length-1]}(e),o({statusCode:t,tempFilePath:nf(n)})},s.onabort=function(){clearTimeout(i),r("abort",{errCode:600003})},s.onerror=function(){clearTimeout(i),r("",{errCode:602001})},s.onprogress=function(e){a._callbacks.forEach((t=>{var n=e.loaded,o=e.total;t({progress:Math.round(n/o*100),totalBytesWritten:n,totalBytesExpectedToWrite:o})}))},s.send(),i=setTimeout((function(){s.onprogress=s.onload=s.onabort=s.onerror=null,a.abort(),r("timeout",{errCode:5})}),n),a}),0,Ku),oh=Pu("navigateBack",((e,{resolve:t,reject:n})=>{let o=!0;return!0===uc("onBackPress",{from:e.from||"navigateBack"})&&(o=!1),o?(vp().$router.go(-e.delta),t()):n("onBackPress")}),0,Qu),rh=Pu("navigateTo",(({url:e,events:t,isAutomatedTesting:n},{resolve:o,reject:r})=>{if(_d.handledBeforeEntryPageRoutes)return dd({type:"navigateTo",url:e,events:t,isAutomatedTesting:n}).then(o).catch(r);wd.push({args:{type:"navigateTo",url:e,events:t,isAutomatedTesting:n},resolve:o,reject:r})}),0,Gu);const ih={light:{cancelColor:"#000000"},dark:{cancelColor:"rgb(170, 170, 170)"}},sh=yo({props:{title:{type:String,default:""},content:{type:String,default:""},showCancel:{type:Boolean,default:!0},cancelText:{type:String,default:"Cancel"},cancelColor:{type:String,default:"#000000"},confirmText:{type:String,default:"OK"},confirmColor:{type:String,default:"#007aff"},visible:{type:Boolean},editable:{type:Boolean,default:!1},placeholderText:{type:String,default:""}},setup(e,{emit:t}){const n=on(""),o=()=>s.value=!1,r=()=>(o(),t("close","cancel")),i=()=>(o(),t("close","confirm",n.value)),s=Yp(e,{onEsc:r,onEnter:()=>{!e.editable&&i()}}),a=function(e){const t=on(e.cancelColor),n=({theme:e})=>{((e,t)=>{t.value=ih[e].cancelColor})(e,t)};return Jn((()=>{var o;e.visible?(t.value=e.cancelColor,"#000"===e.cancelColor&&("dark"===Rp()&&n({theme:"dark"}),o=n,__uniConfig.darkmode&&gh.on("onThemeChange",o))):function(e){gh.off("onThemeChange",e)}(n)})),t}(e);return()=>{const{title:t,content:o,showCancel:l,confirmText:c,confirmColor:u,editable:d,placeholderText:f}=e;return n.value=o,oi(Bi,{name:"uni-fade"},{default:()=>[ro(oi("uni-modal",{onTouchmove:Xl},[Kp,oi("div",{class:"uni-modal"},[t?oi("div",{class:"uni-modal__hd"},[oi("strong",{class:"uni-modal__title",textContent:t||""},null,8,["textContent"])]):null,d?oi("textarea",{class:"uni-modal__textarea",rows:"1",placeholder:f,value:o,onInput:e=>n.value=e.target.value},null,40,["placeholder","value","onInput"]):oi("div",{class:"uni-modal__bd",onTouchmovePassive:Kl,textContent:o},null,40,["onTouchmovePassive","textContent"]),oi("div",{class:"uni-modal__ft"},[l&&oi("div",{style:{color:a.value},class:"uni-modal__btn uni-modal__btn_default",onClick:r},[e.cancelText],12,["onClick"]),oi("div",{style:{color:u},class:"uni-modal__btn uni-modal__btn_primary",onClick:i},[c],12,["onClick"])])])],40,["onTouchmove"]),[[Ki,s.value]])]})}}});let ah;const lh=pe((()=>{gh.on("onHidePopup",(()=>ah.visible=!1))}));let ch;function uh(e,t){const n="confirm"===e,o={confirm:n,cancel:"cancel"===e};n&&ah.editable&&(o.content=t),ch&&ch(o)}const dh=Pu("showModal",((e,{resolve:t})=>{lh(),ch=t,ah?(c(ah,e),ah.visible=!0):(ah=Dt(e),Tn((()=>{return(e=sh,t=ah,n=uh,t.onClose=(...e)=>(t.visible=!1,n.apply(null,e)),Ss(yo({setup:()=>()=>(qr(),Gr(e,t,null,16))}))).mount(function(e){let t=document.getElementById(e);return t||(t=document.createElement("div"),t.id=e,document.body.append(t)),t}("u-a-m")),Tn((()=>ah.visible=!0));var e,t,n})))}),0,id);function fh(e){function t(){var t;(t=e.navigationBar.titleText)&&t!==document.title&&(document.title=t),gh.emit("onNavigationBarChange",{titleText:t})}Jn(t),ko(t)}const ph=Uc({name:"Layout",setup(e,{emit:t}){const n=on(null);Jl({"--status-bar-height":"0px","--top-window-height":"0px","--window-left":"0px","--window-right":"0px","--window-margin":"0px","--tab-bar-height":"0px"});const o=function(){const e=nl();return{routeKey:Ei((()=>Ad("/"+e.meta.route,iu()))),isTabBar:Ei((()=>e.meta.isTabBar)),routeCache:Rd}}(),{layoutState:r,windowState:i}=function(){ru();{const e=Dt({marginWidth:0,leftWindowWidth:0,rightWindowWidth:0});return Qn((()=>e.marginWidth),(e=>Jl({"--window-margin":e+"px"}))),Qn((()=>e.leftWindowWidth+e.marginWidth),(e=>{Jl({"--window-left":e+"px"})})),Qn((()=>e.rightWindowWidth+e.marginWidth),(e=>{Jl({"--window-right":e+"px"})})),{layoutState:e,windowState:Ei((()=>({})))}}}();!function(e,t){const n=ru();function o(){const o=document.body.clientWidth,r=kd();let i={};if(r.length>0){i=bd(r[r.length-1]).meta}else{const e=mc(n.path,!0);e&&(i=e.meta)}const s=parseInt(String((f(i,"maxWidth")?i.maxWidth:__uniConfig.globalStyle.maxWidth)||Number.MAX_SAFE_INTEGER));let a=!1;a=o>s,a&&s?(e.marginWidth=(o-s)/2,Tn((()=>{const e=t.value;e&&e.setAttribute("style","max-width:"+s+"px;margin:0 auto;")}))):(e.marginWidth=0,Tn((()=>{const e=t.value;e&&e.removeAttribute("style")})))}Qn([()=>n.path],o),Io((()=>{o(),window.addEventListener("resize",o)}))}(r,n);const s=function(e){const t=on(!1);return Ei((()=>({"uni-app--showtabbar":e&&e.value,"uni-app--maxwidth":t.value})))}(!1);return()=>{const e=function(e,t,n,o,r,i){return function({routeKey:e,isTabBar:t,routeCache:n}){return oi(el,null,{default:Vn((({Component:o})=>[(qr(),Gr(Co,{matchBy:"key",cache:n},[(qr(),Gr(zn(o),{type:t.value?"tabBar":"",key:e.value}))],1032,["cache"]))])),_:1})}(e)}(o);return oi("uni-app",{ref:n,class:s.value},[e,!1],2)}}});const hh=c(Cl,{publishHandler(e,t,n){gh.subscribeHandler(e,t,n)}}),gh=c($c,{publishHandler(e,t,n){hh.subscribeHandler(e,t,n)}}),mh=Uc({name:"PageBody",setup(e,t){const n=on(null),o=on(null);return Qn((()=>false.enablePullDownRefresh),(()=>{o.value=null}),{immediate:!0}),()=>oi(Vr,null,[!1,oi("uni-page-wrapper",ui({ref:n},o.value),[oi("uni-page-body",null,[Ko(t.slots,"default")]),null],16)])}}),vh=Uc({name:"Page",setup(e,t){let n=ou(iu());n.navigationBar;const o={};return fh(n),()=>oi("uni-page",{"data-page":n.route,style:o},[yh(t),null])}});function yh(e){return qr(),Gr(mh,{key:0},{default:Vn((()=>[Ko(e.slots,"page")])),_:3})}const bh={loading:"AsyncLoading",error:"AsyncError",delay:200,timeout:6e4,suspensible:!0};window.uni={},window.wx={},window.rpx2px=Du;const _h=Object.assign({}),wh=Object.assign;window.__uniConfig=wh({globalStyle:{backgroundColor:"#F7F8FF",navigationBar:{backgroundColor:"#F7F8FF",titleText:"临床思维训练",type:"default",titleColor:"#000000"},isNVue:!1},uniIdRouter:{},compilerVersion:"5.07"},{appId:"",appName:"AI思维临床训练",appVersion:"1.0.0",appVersionCode:"100",async:bh,debug:!1,networkTimeout:{request:6e4,connectSocket:6e4,uploadFile:6e4,downloadFile:6e4},sdkConfigs:{},qqMapKey:void 0,bMapKey:void 0,googleMapKey:void 0,aMapKey:void 0,aMapSecurityJsCode:void 0,aMapServiceHost:void 0,nvue:{"flex-direction":"column"},locale:"",fallbackLocale:"",locales:Object.keys(_h).reduce(((e,t)=>{const n=t.replace(/\.\/locale\/(uni-app.)?(.*).json/,"$2");return wh(e[n]||(e[n]={}),_h[t].default),e}),{}),router:{mode:"hash",base:"./",assets:"assets",routerBase:"/"},darkmode:!1,themeConfig:{}}),window.__uniLayout=window.__uniLayout||{};const xh={delay:bh.delay,timeout:bh.timeout,suspensible:bh.suspensible};bh.loading&&(xh.loadingComponent={name:"SystemAsyncLoading",render:()=>oi(Un(bh.loading))}),bh.error&&(xh.errorComponent={name:"SystemAsyncError",props:["error"],render(){return oi(Un(bh.error),{error:this.error})}});const Sh=()=>t((()=>import("./pages-index-index.CbcBwpWF.js")),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11]),import.meta.url).then((e=>wp(e.default||e))),Th=_o(wh({loader:Sh},xh)),Ch=()=>t((()=>import("./pages-config-config.2lX4qMcJ.js")),__vite__mapDeps([2,3,4,1,5,6]),import.meta.url).then((e=>wp(e.default||e))),Eh=_o(wh({loader:Ch},xh)),kh=()=>t((()=>import("./pages-home-home.BRlMILRW.js")),__vite__mapDeps([12,3,4,5,13]),import.meta.url).then((e=>wp(e.default||e))),Oh=_o(wh({loader:kh},xh)),Lh=()=>t((()=>import("./pages-matching-matching.0jzQ00td.js")),__vite__mapDeps([14,3,15,16,1,5,17]),import.meta.url).then((e=>wp(e.default||e))),$h=_o(wh({loader:Lh},xh)),Ah=()=>t((()=>import("./pages-cases-cases.HRYBKfRi.js")),__vite__mapDeps([18,15,16,1,4,5,19]),import.meta.url).then((e=>wp(e.default||e))),Ph=_o(wh({loader:Ah},xh)),Rh=()=>t((()=>import("./pages-scenario-scenario.Ihs6KhW1.js")),__vite__mapDeps([20,3,16,1,9,5,21]),import.meta.url).then((e=>wp(e.default||e))),Bh=_o(wh({loader:Rh},xh)),Nh=()=>t((()=>import("./pages-chat-chat.OpBAkaAZ.js")),__vite__mapDeps([22,3,16,1,9,4,5,23]),import.meta.url).then((e=>wp(e.default||e))),jh=_o(wh({loader:Nh},xh)),Mh=()=>t((()=>import("./pages-profile-profile-analysis.CWRfwO-9.js")),__vite__mapDeps([24,3,8,1,9,5,25]),import.meta.url).then((e=>wp(e.default||e))),Ih=_o(wh({loader:Mh},xh)),Vh=()=>t((()=>import("./pages-profile-profile-records.C64CKJK3.js")),__vite__mapDeps([26,8,1,9,5,27]),import.meta.url).then((e=>wp(e.default||e))),Fh=_o(wh({loader:Vh},xh)),Dh=()=>t((()=>import("./pages-learning-assistant-learning-assistant.J4N36eXO.js")),__vite__mapDeps([28,3,15,9,4,5,29]),import.meta.url).then((e=>wp(e.default||e))),Hh=_o(wh({loader:Dh},xh)),Wh=()=>t((()=>import("./pages-teaching-teaching.DzNuOlIL.js")),__vite__mapDeps([30,3,16,1,4,9,5,31]),import.meta.url).then((e=>wp(e.default||e))),Uh=_o(wh({loader:Wh},xh)),qh=()=>t((()=>import("./pages-diagnosis-diagnosis.Wb08TNeY.js")),__vite__mapDeps([32,3,16,1,9,4,5,33]),import.meta.url).then((e=>wp(e.default||e))),zh=_o(wh({loader:qh},xh)),Xh=()=>t((()=>import("./pages-treatment-treatment.CEAKOxru.js")),__vite__mapDeps([34,3,16,1,4,9,5,35]),import.meta.url).then((e=>wp(e.default||e))),Kh=_o(wh({loader:Xh},xh)),Yh=()=>t((()=>import("./pages-assessment-assessment.CYNULdGO.js")),__vite__mapDeps([36,3,15,9,8,1,5,37]),import.meta.url).then((e=>wp(e.default||e))),Gh=_o(wh({loader:Yh},xh)),Jh=()=>t((()=>import("./pages-profile-profile.D4u8tO5s.js")),__vite__mapDeps([7,8,1,9,5,10]),import.meta.url).then((e=>wp(e.default||e))),Zh=_o(wh({loader:Jh},xh));function Qh(e,t){return qr(),Gr(vh,null,{page:Vn((()=>[oi(e,wh({},t,{ref:"page"}),null,512)])),_:1})}window.__uniRoutes=[{path:"/",alias:"/pages/index/index",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(Th,t)}},loader:Sh,meta:{isQuit:!0,isEntry:!0,navigationBar:{titleText:"临床思维训练",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/config/config",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(Eh,t)}},loader:Ch,meta:{navigationBar:{titleText:"信息配置",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/home/home",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(Oh,t)}},loader:kh,meta:{navigationBar:{titleText:"临床思维训练",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/matching/matching",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh($h,t)}},loader:Lh,meta:{navigationBar:{titleText:"智能匹配",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/cases/cases",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(Ph,t)}},loader:Ah,meta:{navigationBar:{titleText:"病例列表",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/scenario/scenario",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(Bh,t)}},loader:Rh,meta:{navigationBar:{titleText:"场景配置",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/chat/chat",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(jh,t)}},loader:Nh,meta:{navigationBar:{titleText:"临床对话",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/profile/profile-analysis",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(Ih,t)}},loader:Mh,meta:{navigationBar:{titleText:"智能分析",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/profile/profile-records",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(Fh,t)}},loader:Vh,meta:{navigationBar:{titleText:"学习记录",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/learning-assistant/learning-assistant",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(Hh,t)}},loader:Dh,meta:{navigationBar:{titleText:"AI 学习助手",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/teaching/teaching",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(Uh,t)}},loader:Wh,meta:{navigationBar:{titleText:"教学模式",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/diagnosis/diagnosis",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(zh,t)}},loader:qh,meta:{navigationBar:{titleText:"临床诊断",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/treatment/treatment",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(Kh,t)}},loader:Xh,meta:{navigationBar:{titleText:"治疗计划",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/assessment/assessment",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(Gh,t)}},loader:Yh,meta:{navigationBar:{titleText:"考核评价",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/profile/profile",component:{setup(){const e=vp(),t=e&&e.$route&&e.$route.query||{};return()=>Qh(Zh,t)}},loader:Jh,meta:{navigationBar:{titleText:"个人中心",style:"custom",type:"default"},isNVue:!1}}].map((e=>(e.meta.route=(e.alias||e.path).slice(1),e)));const eg={onLaunch:function(){console.log("App Launch")},onShow:function(){console.log("App Show")},onHide:function(){console.log("App Hide")}};_p(eg,{init:yp,setup(e){const t=ru(),n=()=>{var n;n=e,Object.keys(Wu).forEach((e=>{Wu[e].forEach((t=>{No(e,t,n)}))}));const{onLaunch:o,onShow:r,onPageNotFound:i}=e,s=function({path:e,query:t}){return c(of,{path:e,query:t}),c(rf,of),c({},of)}({path:t.path.slice(1)||__uniRoutes[0].meta.route,query:we(t.query)});if(o&&B(o,s),r&&B(r,s),!t.matched.length){const e={notFound:!0,openType:"appLaunch",path:t.path,query:we(t.query),scene:1001};fd(),i&&B(i,e)}};return yr(Wa).isReady().then(n),Io((()=>{window.addEventListener("resize",Te(xp,50,{setTimeout:setTimeout,clearTimeout:clearTimeout})),window.addEventListener("message",Sp),document.addEventListener("visibilitychange",Tp),function(){let e=null;try{e=window.matchMedia("(prefers-color-scheme: dark)")}catch(t){}if(e){let t=e=>{gh.emit("onThemeChange",{theme:e.matches?"dark":"light"})};e.addEventListener?e.addEventListener("change",t):e.addListener(t)}}()})),t.query},before(e){e.mpType="app";const{setup:t}=e,n=()=>(qr(),Gr(ph));e.setup=(e,o)=>{const r=t&&t(e,o);return m(r)?n:r},e.render=n}}),Ss(eg).use(cp).mount("#app");export{eu as A,dh as B,Gp as C,Up as D,ln as E,Vr as F,rh as G,ce as H,Pf as I,Qn as J,ni as K,Ed as L,oh as M,qf as N,Lp as O,qp as P,gi as Q,nh as R,If as S,wi as T,No as U,oe as V,re as W,Dt as a,Ho as b,Ei as c,yo as d,qr as e,Gr as f,si as g,ro as h,oi as i,ii as j,_s as k,Yr as l,Xo as m,ue as n,Io as o,ld as p,ud as q,on as r,Hp as s,X as t,Tn as u,Ki as v,Vn as w,pf as x,Df as y,zf as z}; diff --git a/dist/assets/index-DfCP9RI3.js b/dist/assets/index-DfCP9RI3.js deleted file mode 100644 index 700e1f1..0000000 --- a/dist/assets/index-DfCP9RI3.js +++ /dev/null @@ -1,25 +0,0 @@ -function __vite__mapDeps(indexes) { - if (!__vite__mapDeps.viteFileDeps) { - __vite__mapDeps.viteFileDeps = ["./pages-index-index.CtHWSJz4.js","./auth.BCdV446X.js","./pages-config-config.h5bc7jDo.js","./config-doctor.TgARj_nM.js","./navigation.Bg2Ef9wA.js","./_plugin-vue_export-helper.BCo6x5W8.js","./config-B4-mlf5M.css","./pages-profile-profile.Q0dqF9dr.js","./profile.CDLVfXPi.js","./session.D2K7L0GR.js","./profile-BT4uudyf.css","./index-55XRfSc_.css","./pages-home-home.Dlkj-jIS.js","./home-BD0B3vcH.css","./pages-matching-matching.DEEqkPi2.js","./uni-app.es.DDI13Fy0.js","./cases.Q7p7j9rz.js","./matching-CxT_etxi.css","./pages-cases-cases.DMWiFIat.js","./cases-DGalqRIs.css","./pages-scenario-scenario.LpxrrFKu.js","./scenario-DapYnPh4.css","./pages-chat-chat.Cgzg1tzh.js","./chat-CkFGeMvf.css","./pages-profile-profile-analysis.DXSDR32A.js","./profile-analysis-DuRmXAR7.css","./pages-profile-profile-records.BLbtOxS8.js","./profile-records-C5tRHAvK.css","./pages-learning-assistant-learning-assistant.CCQRDo6G.js","./learning-assistant-DgYniJVM.css","./pages-teaching-teaching.C2yN6RJA.js","./teaching-BLhZOmNZ.css","./pages-diagnosis-diagnosis.DRtwnust.js","./diagnosis-BxzDEbGJ.css","./pages-treatment-treatment.DmWM0nMA.js","./treatment-C2Wi3XDZ.css","./pages-assessment-assessment.BnDM0Jtm.js","./assessment-Dx6r_s4g.css"] - } - return indexes.map((i) => __vite__mapDeps.viteFileDeps[i]) -} -!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))t(e);new MutationObserver((e=>{for(const n of e)if("childList"===n.type)for(const e of n.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&t(e)})).observe(document,{childList:!0,subtree:!0})}function t(e){if(e.ep)return;e.ep=!0;const t=function(e){const t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?t.credentials="include":"anonymous"===e.crossOrigin?t.credentials="omit":t.credentials="same-origin",t}(e);fetch(e.href,t)}}();const e={},t=function(t,n,o){let r=Promise.resolve();if(n&&n.length>0){const t=document.getElementsByTagName("link"),i=document.querySelector("meta[property=csp-nonce]"),s=(null==i?void 0:i.nonce)||(null==i?void 0:i.getAttribute("nonce"));r=Promise.all(n.map((n=>{if(n=function(e,t){return new URL(e,t).href}(n,o),n in e)return;e[n]=!0;const r=n.endsWith(".css"),i=r?'[rel="stylesheet"]':"";if(!!o)for(let e=t.length-1;e>=0;e--){const o=t[e];if(o.href===n&&(!r||"stylesheet"===o.rel))return}else if(document.querySelector(`link[href="${n}"]${i}`))return;const a=document.createElement("link");return a.rel=r?"stylesheet":"modulepreload",r||(a.as="script",a.crossOrigin=""),a.href=n,s&&a.setAttribute("nonce",s),document.head.appendChild(a),r?new Promise(((e,t)=>{a.addEventListener("load",e),a.addEventListener("error",(()=>t(new Error(`Unable to preload CSS for ${n}`))))})):void 0})))}return r.then((()=>t())).catch((e=>{const t=new Event("vite:preloadError",{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}))}; -/** -* @vue/shared v3.4.21 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/ -function n(e,t){const n=new Set(e.split(","));return t?e=>n.has(e.toLowerCase()):e=>n.has(e)}const o={},r=[],i=()=>{},s=()=>!1,a=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),l=e=>e.startsWith("onUpdate:"),c=Object.assign,u=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},d=Object.prototype.hasOwnProperty,f=(e,t)=>d.call(e,t),p=Array.isArray,h=e=>"[object Map]"===x(e),g=e=>"[object Set]"===x(e),m=e=>"function"==typeof e,v=e=>"string"==typeof e,y=e=>"symbol"==typeof e,b=e=>null!==e&&"object"==typeof e,_=e=>(b(e)||m(e))&&m(e.then)&&m(e.catch),w=Object.prototype.toString,x=e=>w.call(e),S=e=>"[object Object]"===x(e),T=e=>v(e)&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,C=n(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),E=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},k=/-(\w)/g,O=E((e=>e.replace(k,((e,t)=>t?t.toUpperCase():"")))),L=/\B([A-Z])/g,$=E((e=>e.replace(L,"-$1").toLowerCase())),A=E((e=>e.charAt(0).toUpperCase()+e.slice(1))),P=E((e=>e?`on${A(e)}`:"")),R=(e,t)=>!Object.is(e,t),B=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},j=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let M;const I=()=>M||(M="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{});function V(e){if(p(e)){const t={};for(let n=0;n{if(e){const n=e.split(D);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}function U(e){let t="";if(v(e))t=e;else if(p(e))for(let n=0;nv(e)?e:null==e?"":p(e)||b(e)&&(e.toString===w||!m(e.toString))?JSON.stringify(e,K,2):String(e),K=(e,t)=>t&&t.__v_isRef?K(e,t.value):h(t)?{[`Map(${t.size})`]:[...t.entries()].reduce(((e,[t,n],o)=>(e[Y(t,o)+" =>"]=n,e)),{})}:g(t)?{[`Set(${t.size})`]:[...t.values()].map((e=>Y(e)))}:y(t)?Y(t):!b(t)||p(t)||S(t)?t:String(t),Y=(e,t="")=>{var n;return y(e)?`Symbol(${null!=(n=e.description)?n:t})`:e};var G={};const J=["ad","ad-content-page","ad-draw","audio","button","camera","canvas","checkbox","checkbox-group","cover-image","cover-view","editor","form","functional-page-navigator","icon","image","input","label","live-player","live-pusher","map","movable-area","movable-view","navigator","official-account","open-data","picker","picker-view","picker-view-column","progress","radio","radio-group","rich-text","scroll-view","slider","swiper","swiper-item","switch","text","textarea","video","view","web-view","location-picker","location-view"].map((e=>"uni-"+e)),Z=["page-container","list-view","list-item","sticky-section","sticky-header","cloud-db-element","loading-element","loading"].map((e=>"uni-"+e)),Q=["list-item"].map((e=>"uni-"+e));function ee(e){if(-1!==Q.indexOf(e))return!1;const t="uni-"+e.replace("v-uni-","");return"true"!==G.UNI_APP_X?-1!==J.indexOf(t):-1!==J.indexOf(t)||-1!==Z.indexOf(t)}const te=/^([a-z-]+:)?\/\//i,ne=/^data:.*,.*/,oe="onLoad";function re(e){return void 0===e?null:e}class ie{static keys(e){return Object.keys(e)}static assign(e,...t){for(let n=0;n{this[t]=e}));else for(const t in e)Object.prototype.hasOwnProperty.call(e,t)&&(this[t]=e[t]);!function(e){const t=["_resolveKeyPath","_getValue","toJSON","get","set","getAny","getString","getNumber","getBoolean","getJSON","getArray","toMap","forEach"],n={};for(let o=0;o0&&(n.push(t),t="");break;case"[":o=!0,t.length>0&&(n.push(t),t="");break;case"]":if(!o)return[];if(!(t.length>0))return[];{const e=t[0],o=t[t.length-1];if('"'===e&&'"'===o||"'"===e&&"'"===o||"`"===e&&"`"===o){if(!(t.length>2))return[];t=t.slice(1,-1)}else if(!/^\d+$/.test(t))return[];n.push(t),t=""}o=!1;break;default:t+=i}r===e.length-1&&t.length>0&&(n.push(t),t="")}return n}_getValue(e,t){const n=this._resolveKeyPath(e),o=re(t);if(0===n.length)return o;let r=this;for(let i=0;i{t[n]=e[n]})),V(t)}if(e instanceof Map){const t={};return e.forEach(((e,n)=>{t[n]=e})),V(t)}if(v(e))return W(e);if(p(e)){const t={};for(let n=0;n{e[n]&&(t+=n+" ")}));else if(e instanceof Map)e.forEach(((e,n)=>{e&&(t+=n+" ")}));else if(p(e))for(let n=0;n(e&&(n=e.apply(t,o),e=null),n)}function pe(e){return O(e.substring(5))}const he=fe((e=>{e=e||(e=>e.tagName.startsWith("UNI-"));const t=HTMLElement.prototype,n=t.setAttribute;t.setAttribute=function(t,o){if(t.startsWith("data-")&&e(this)){(this.__uniDataset||(this.__uniDataset={}))[pe(t)]=o}/^\d/.test(t)||n.call(this,t,o)};const o=t.removeAttribute;t.removeAttribute=function(t){this.__uniDataset&&t.startsWith("data-")&&e(this)&&delete this.__uniDataset[pe(t)],o.call(this,t)}}));function ge(e){return c({},e.dataset,e.__uniDataset)}const me=new RegExp("\"[^\"]+\"|'[^']+'|url\\([^)]+\\)|(\\d*\\.?\\d+)[r|u]px","g");function ve(e){return{passive:e}}function ye(e){const{id:t,offsetTop:n,offsetLeft:o}=e;return{id:t,dataset:ge(e),offsetTop:n,offsetLeft:o}}function be(e){try{return decodeURIComponent(""+e)}catch(t){}return""+e}function _e(e={}){const t={};return Object.keys(e).forEach((n=>{try{t[n]=be(e[n])}catch(o){t[n]=e[n]}})),t}const we=/\+/g;function xe(e){const t={};if(""===e||"?"===e)return t;const n=("?"===e[0]?e.slice(1):e).split("&");for(let o=0;oe.apply(this,arguments);r=o(i,t)};return i.cancel=function(){n(r)},i}class Te{constructor(e,t){this.id=e,this.listener={},this.emitCache=[],t&&Object.keys(t).forEach((e=>{this.on(e,t[e])}))}emit(e,...t){const n=this.listener[e];if(!n)return this.emitCache.push({eventName:e,args:t});n.forEach((e=>{e.fn.apply(e.fn,t)})),this.listener[e]=n.filter((e=>"once"!==e.type))}on(e,t){this._addListener(e,"on",t),this._clearCache(e)}once(e,t){this._addListener(e,"once",t),this._clearCache(e)}off(e,t){const n=this.listener[e];if(n)if(t)for(let o=0;ot(e))),Le=function(){};Le.prototype={_id:1,on:function(e,t,n){var o=this.e||(this.e={});return(o[e]||(o[e]=[])).push({fn:t,ctx:n,_id:this._id}),this._id++},once:function(e,t,n){var o=this;function r(){o.off(e,r),t.apply(n,arguments)}return r._=t,this.on(e,r,n)},emit:function(e){for(var t=[].slice.call(arguments,1),n=((this.e||(this.e={}))[e]||[]).slice(),o=0,r=n.length;o=0;i--)if(o[i].fn===t||o[i].fn._===t||o[i]._id===t){o.splice(i,1);break}r=o}return r.length?n[e]=r:delete n[e],this}};var $e=Le;const Ae={black:"rgba(0,0,0,0.4)",white:"rgba(255,255,255,0.4)"};function Pe(e,t,n){if(v(t)&&t.startsWith("@")){let r=e[t.replace("@","")]||t;switch(n){case"titleColor":r="black"===r?"#000000":"#ffffff";break;case"borderStyle":r=(o=r)&&o in Ae?Ae[o]:o}return r}var o;return t}function Re(e,t={},n="light"){const o=t[n],r={};return void 0!==o&&e?(Object.keys(e).forEach((i=>{const s=e[i];r[i]=S(s)?Re(s,t,n):p(s)?s.map((e=>S(e)?Re(e,t,n):Pe(o,e))):Pe(o,s,i)})),r):e} -/** -* @dcloudio/uni-h5-vue v3.4.21 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let Be,Ne;class je{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this.parent=Be,!e&&Be&&(this.index=(Be.scopes||(Be.scopes=[])).push(this)-1)}get active(){return this._active}run(e){if(this._active){const t=Be;try{return Be=this,e()}finally{Be=t}}}on(){Be=this}off(){Be=this.parent}stop(e){if(this._active){let t,n;for(t=0,n=this.effects.length;t=4))break}1===this._dirtyLevel&&(this._dirtyLevel=0),qe()}return this._dirtyLevel>=4}set dirty(e){this._dirtyLevel=e?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let e=De,t=Ne;try{return De=!0,Ne=this,this._runnings++,Ie(this),this.fn()}finally{Ve(this),this._runnings--,Ne=t,De=e}}stop(){var e;this.active&&(Ie(this),Ve(this),null==(e=this.onStop)||e.call(this),this.active=!1)}}function Ie(e){e._trackId++,e._depsLength=0}function Ve(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{const n=new Map;return n.cleanup=e,n.computed=t,n},Ze=new WeakMap,Qe=Symbol(""),et=Symbol("");function tt(e,t,n){if(De&&Ne){let t=Ze.get(e);t||Ze.set(e,t=new Map);let o=t.get(n);o||t.set(n,o=Je((()=>t.delete(n)))),Ke(Ne,o)}}function nt(e,t,n,o,r,i){const s=Ze.get(e);if(!s)return;let a=[];if("clear"===t)a=[...s.values()];else if("length"===n&&p(e)){const e=Number(o);s.forEach(((t,n)=>{("length"===n||!y(n)&&n>=e)&&a.push(t)}))}else switch(void 0!==n&&a.push(s.get(n)),t){case"add":p(e)?T(n)&&a.push(s.get("length")):(a.push(s.get(Qe)),h(e)&&a.push(s.get(et)));break;case"delete":p(e)||(a.push(s.get(Qe)),h(e)&&a.push(s.get(et)));break;case"set":h(e)&&a.push(s.get(Qe))}ze();for(const l of a)l&&Ge(l,4);Xe()}const ot=n("__proto__,__v_isRef,__isVue"),rt=new Set(Object.getOwnPropertyNames(Symbol).filter((e=>"arguments"!==e&&"caller"!==e)).map((e=>Symbol[e])).filter(y)),it=st();function st(){const e={};return["includes","indexOf","lastIndexOf"].forEach((t=>{e[t]=function(...e){const n=Kt(this);for(let t=0,r=this.length;t{e[t]=function(...e){Ue(),ze();const n=Kt(this)[t].apply(this,e);return Xe(),qe(),n}})),e}function at(e){const t=Kt(this);return tt(t,0,e),t.hasOwnProperty(e)}class lt{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){const o=this._isReadonly,r=this._isShallow;if("__v_isReactive"===t)return!o;if("__v_isReadonly"===t)return o;if("__v_isShallow"===t)return r;if("__v_raw"===t)return n===(o?r?It:Mt:r?jt:Nt).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;const i=p(e);if(!o){if(i&&f(it,t))return Reflect.get(it,t,n);if("hasOwnProperty"===t)return at}const s=Reflect.get(e,t,n);return(y(t)?rt.has(t):ot(t))?s:(o||tt(e,0,t),r?s:tn(s)?i&&T(t)?s:s.value:b(s)?o?Ht(s):Ft(s):s)}}class ct extends lt{constructor(e=!1){super(!1,e)}set(e,t,n,o){let r=e[t];if(!this._isShallow){const t=qt(r);if(zt(n)||qt(n)||(r=Kt(r),n=Kt(n)),!p(e)&&tn(r)&&!tn(n))return!t&&(r.value=n,!0)}const i=p(e)&&T(t)?Number(t)e,gt=e=>Reflect.getPrototypeOf(e);function mt(e,t,n=!1,o=!1){const r=Kt(e=e.__v_raw),i=Kt(t);n||(R(t,i)&&tt(r,0,t),tt(r,0,i));const{has:s}=gt(r),a=o?ht:n?Jt:Gt;return s.call(r,t)?a(e.get(t)):s.call(r,i)?a(e.get(i)):void(e!==r&&e.get(t))}function vt(e,t=!1){const n=this.__v_raw,o=Kt(n),r=Kt(e);return t||(R(e,r)&&tt(o,0,e),tt(o,0,r)),e===r?n.has(e):n.has(e)||n.has(r)}function yt(e,t=!1){return e=e.__v_raw,!t&&tt(Kt(e),0,Qe),Reflect.get(e,"size",e)}function bt(e){e=Kt(e);const t=Kt(this);return gt(t).has.call(t,e)||(t.add(e),nt(t,"add",e,e)),this}function _t(e,t){t=Kt(t);const n=Kt(this),{has:o,get:r}=gt(n);let i=o.call(n,e);i||(e=Kt(e),i=o.call(n,e));const s=r.call(n,e);return n.set(e,t),i?R(t,s)&&nt(n,"set",e,t):nt(n,"add",e,t),this}function wt(e){const t=Kt(this),{has:n,get:o}=gt(t);let r=n.call(t,e);r||(e=Kt(e),r=n.call(t,e)),o&&o.call(t,e);const i=t.delete(e);return r&&nt(t,"delete",e,void 0),i}function xt(){const e=Kt(this),t=0!==e.size,n=e.clear();return t&&nt(e,"clear",void 0,void 0),n}function St(e,t){return function(n,o){const r=this,i=r.__v_raw,s=Kt(i),a=t?ht:e?Jt:Gt;return!e&&tt(s,0,Qe),i.forEach(((e,t)=>n.call(o,a(e),a(t),r)))}}function Tt(e,t,n){return function(...o){const r=this.__v_raw,i=Kt(r),s=h(i),a="entries"===e||e===Symbol.iterator&&s,l="keys"===e&&s,c=r[e](...o),u=n?ht:t?Jt:Gt;return!t&&tt(i,0,l?et:Qe),{next(){const{value:e,done:t}=c.next();return t?{value:e,done:t}:{value:a?[u(e[0]),u(e[1])]:u(e),done:t}},[Symbol.iterator](){return this}}}}function Ct(e){return function(...t){return"delete"!==e&&("clear"===e?void 0:this)}}function Et(){const e={get(e){return mt(this,e)},get size(){return yt(this)},has:vt,add:bt,set:_t,delete:wt,clear:xt,forEach:St(!1,!1)},t={get(e){return mt(this,e,!1,!0)},get size(){return yt(this)},has:vt,add:bt,set:_t,delete:wt,clear:xt,forEach:St(!1,!0)},n={get(e){return mt(this,e,!0)},get size(){return yt(this,!0)},has(e){return vt.call(this,e,!0)},add:Ct("add"),set:Ct("set"),delete:Ct("delete"),clear:Ct("clear"),forEach:St(!0,!1)},o={get(e){return mt(this,e,!0,!0)},get size(){return yt(this,!0)},has(e){return vt.call(this,e,!0)},add:Ct("add"),set:Ct("set"),delete:Ct("delete"),clear:Ct("clear"),forEach:St(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach((r=>{e[r]=Tt(r,!1,!1),n[r]=Tt(r,!0,!1),t[r]=Tt(r,!1,!0),o[r]=Tt(r,!0,!0)})),[e,n,t,o]}const[kt,Ot,Lt,$t]=Et();function At(e,t){const n=t?e?$t:Lt:e?Ot:kt;return(t,o,r)=>"__v_isReactive"===o?!e:"__v_isReadonly"===o?e:"__v_raw"===o?t:Reflect.get(f(n,o)&&o in t?n:t,o,r)}const Pt={get:At(!1,!1)},Rt={get:At(!1,!0)},Bt={get:At(!0,!1)},Nt=new WeakMap,jt=new WeakMap,Mt=new WeakMap,It=new WeakMap;function Vt(e){return e.__v_skip||!Object.isExtensible(e)?0:function(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}((e=>x(e).slice(8,-1))(e))}function Ft(e){return qt(e)?e:Wt(e,!1,dt,Pt,Nt)}function Dt(e){return Wt(e,!1,pt,Rt,jt)}function Ht(e){return Wt(e,!0,ft,Bt,Mt)}function Wt(e,t,n,o,r){if(!b(e))return e;if(e.__v_raw&&(!t||!e.__v_isReactive))return e;const i=r.get(e);if(i)return i;const s=Vt(e);if(0===s)return e;const a=new Proxy(e,2===s?o:n);return r.set(e,a),a}function Ut(e){return qt(e)?Ut(e.__v_raw):!(!e||!e.__v_isReactive)}function qt(e){return!(!e||!e.__v_isReadonly)}function zt(e){return!(!e||!e.__v_isShallow)}function Xt(e){return Ut(e)||qt(e)}function Kt(e){const t=e&&e.__v_raw;return t?Kt(t):e}function Yt(e){return Object.isExtensible(e)&&N(e,"__v_skip",!0),e}const Gt=e=>b(e)?Ft(e):e,Jt=e=>b(e)?Ht(e):e;class Zt{constructor(e,t,n,o){this.getter=e,this._setter=t,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Me((()=>e(this._value)),(()=>en(this,2===this.effect._dirtyLevel?2:3))),this.effect.computed=this,this.effect.active=this._cacheable=!o,this.__v_isReadonly=n}get value(){const e=Kt(this);return e._cacheable&&!e.effect.dirty||!R(e._value,e._value=e.effect.run())||en(e,4),Qt(e),e.effect._dirtyLevel>=2&&en(e,2),e._value}set value(e){this._setter(e)}get _dirty(){return this.effect.dirty}set _dirty(e){this.effect.dirty=e}}function Qt(e){var t;De&&Ne&&(e=Kt(e),Ke(Ne,null!=(t=e.dep)?t:e.dep=Je((()=>e.dep=void 0),e instanceof Zt?e:void 0)))}function en(e,t=4,n){const o=(e=Kt(e)).dep;o&&Ge(o,t)}function tn(e){return!(!e||!0!==e.__v_isRef)}function nn(e){return rn(e,!1)}function on(e){return rn(e,!0)}function rn(e,t){return tn(e)?e:new sn(e,t)}class sn{constructor(e,t){this.__v_isShallow=t,this.dep=void 0,this.__v_isRef=!0,this._rawValue=t?e:Kt(e),this._value=t?e:Gt(e)}get value(){return Qt(this),this._value}set value(e){const t=this.__v_isShallow||zt(e)||qt(e);e=t?e:Kt(e),R(e,this._rawValue)&&(this._rawValue=e,this._value=t?e:Gt(e),en(this,4))}}function an(e){return tn(e)?e.value:e}const ln={get:(e,t,n)=>an(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const r=e[t];return tn(r)&&!tn(n)?(r.value=n,!0):Reflect.set(e,t,n,o)}};function cn(e){return Ut(e)?e:new Proxy(e,ln)}function un(e,t,n,o){try{return o?e(...o):e()}catch(r){fn(r,t,n)}}function dn(e,t,n,o){if(m(e)){const r=un(e,t,n,o);return r&&_(r)&&r.catch((e=>{fn(e,t,n)})),r}const r=[];for(let i=0;i>>1,r=mn[o],i=On(r);iOn(e)-On(t)));if(yn.length=0,bn)return void bn.push(...e);for(bn=e,_n=0;_nnull==e.id?1/0:e.id,Ln=(e,t)=>{const n=On(e)-On(t);if(0===n){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function $n(e){gn=!1,hn=!0,mn.sort(Ln);try{for(vn=0;vnv(e)?e.trim():e))),t&&(i=n.map(j))}let l,c=r[l=P(t)]||r[l=P(O(t))];!c&&s&&(c=r[l=P($(t))]),c&&dn(c,e,6,Pn(e,c,i));const u=r[l+"Once"];if(u){if(e.emitted){if(e.emitted[l])return}else e.emitted={};e.emitted[l]=!0,dn(u,e,6,Pn(e,u,i))}}function Pn(e,t,n){if(1!==n.length)return n;if(m(t)){if(t.length<2)return n}else if(!t.find((e=>e.length>=2)))return n;const o=n[0];if(o&&f(o,"type")&&f(o,"timeStamp")&&f(o,"target")&&f(o,"currentTarget")&&f(o,"detail")){const t=e.proxy,o=t.$gcd(t,!0);o&&n.push(o)}return n}function Rn(e,t,n=!1){const o=t.emitsCache,r=o.get(e);if(void 0!==r)return r;const i=e.emits;let s={},a=!1;if(!m(e)){const o=e=>{const n=Rn(e,t,!0);n&&(a=!0,c(s,n))};!n&&t.mixins.length&&t.mixins.forEach(o),e.extends&&o(e.extends),e.mixins&&e.mixins.forEach(o)}return i||a?(p(i)?i.forEach((e=>s[e]=null)):c(s,i),b(e)&&o.set(e,s),s):(b(e)&&o.set(e,null),null)}function Bn(e,t){return!(!e||!a(t))&&(t=t.slice(2).replace(/Once$/,""),f(e,t[0].toLowerCase()+t.slice(1))||f(e,$(t))||f(e,t))}let Nn=null,jn=null;function Mn(e){const t=Nn;return Nn=e,jn=e&&e.type.__scopeId||null,t}function In(e,t=Nn,n){if(!t)return e;if(e._n)return e;const o=(...n)=>{o._d&&zr(-1);const r=Mn(t);let i;try{i=e(...n)}finally{Mn(r),o._d&&zr(1)}return i};return o._n=!0,o._c=!0,o._d=!0,o}function Vn(e){const{type:t,vnode:n,proxy:o,withProxy:r,props:i,propsOptions:[s],slots:a,attrs:c,emit:u,render:d,renderCache:f,data:p,setupState:h,ctx:g,inheritAttrs:m}=e;let v,y;const b=Mn(e);try{if(4&n.shapeFlag){const e=r||o,t=e;v=si(d.call(t,e,f,i,h,p,g)),y=c}else{const e=t;0,v=si(e.length>1?e(i,{attrs:c,slots:a,emit:u}):e(i,null)),y=t.props?c:Fn(c)}}catch(w){Hr.length=0,fn(w,e,1),v=ni(Fr)}let _=v;if(y&&!1!==m){const e=Object.keys(y),{shapeFlag:t}=_;e.length&&7&t&&(s&&e.some(l)&&(y=Dn(y,s)),_=oi(_,y))}return n.dirs&&(_=oi(_),_.dirs=_.dirs?_.dirs.concat(n.dirs):n.dirs),n.transition&&(_.transition=n.transition),v=_,Mn(b),v}const Fn=e=>{let t;for(const n in e)("class"===n||"style"===n||a(n))&&((t||(t={}))[n]=e[n]);return t},Dn=(e,t)=>{const n={};for(const o in e)l(o)&&o.slice(9)in t||(n[o]=e[o]);return n};function Hn(e,t,n){const o=Object.keys(t);if(o.length!==Object.keys(e).length)return!0;for(let r=0;re.__isSuspense;const Yn=Symbol.for("v-scx");function Gn(e,t){return Qn(e,null,t)}const Jn={};function Zn(e,t,n){return Qn(e,t,n)}function Qn(e,t,{immediate:n,deep:r,flush:s,once:a,onTrack:l,onTrigger:c}=o){if(t&&a){const e=t;t=(...t)=>{e(...t),E()}}const d=pi,f=e=>!0===r?e:no(e,!1===r?1:void 0);let h,g,v=!1,y=!1;if(tn(e)?(h=()=>e.value,v=zt(e)):Ut(e)?(h=()=>f(e),v=!0):p(e)?(y=!0,v=e.some((e=>Ut(e)||zt(e))),h=()=>e.map((e=>tn(e)?e.value:Ut(e)?f(e):m(e)?un(e,d,2):void 0))):h=m(e)?t?()=>un(e,d,2):()=>(g&&g(),dn(e,d,3,[_])):i,t&&r){const e=h;h=()=>no(e())}let b,_=e=>{g=T.onStop=()=>{un(e,d,4),g=T.onStop=void 0}};if(_i){if(_=i,t?n&&dn(t,d,3,[h(),y?[]:void 0,_]):h(),"sync"!==s)return i;{const e=vr(Yn);b=e.__watcherHandles||(e.__watcherHandles=[])}}let w=y?new Array(e.length).fill(Jn):Jn;const x=()=>{if(T.active&&T.dirty)if(t){const e=T.run();(r||v||(y?e.some(((e,t)=>R(e,w[t]))):R(e,w)))&&(g&&g(),dn(t,d,3,[e,w===Jn?void 0:y&&w[0]===Jn?[]:w,_]),w=e)}else T.run()};let S;x.allowRecurse=!!t,"sync"===s?S=x:"post"===s?S=()=>Pr(x,d&&d.suspense):(x.pre=!0,d&&(x.id=d.uid),S=()=>Tn(x));const T=new Me(h,i,S),C=Be,E=()=>{T.stop(),C&&u(C.effects,T)};return t?n?x():w=T.run():"post"===s?Pr(T.run.bind(T),d&&d.suspense):T.run(),b&&b.push(E),E}function eo(e,t,n){const o=this.proxy,r=v(e)?e.includes(".")?to(o,e):()=>o[e]:e.bind(o,o);let i;m(t)?i=t:(i=t.handler,n=t);const s=vi(this),a=Qn(r,i.bind(o),n);return s(),a}function to(e,t){const n=t.split(".");return()=>{let t=e;for(let e=0;e0){if(n>=t)return e;n++}if((o=o||new Set).has(e))return e;if(o.add(e),tn(e))no(e.value,t,n,o);else if(p(e))for(let r=0;r{no(e,t,n,o)}));else if(S(e))for(const r in e)no(e[r],t,n,o);return e}function oo(e,t){if(null===Nn)return e;const n=Si(Nn)||Nn.proxy,r=e.dirs||(e.dirs=[]);for(let i=0;i{e.isMounted=!0})),Fo((()=>{e.isUnmounting=!0})),e}();return()=>{const r=t.default&&mo(t.default(),!0);if(!r||!r.length)return;let i=r[0];if(r.length>1)for(const e of r)if(e.type!==Fr){i=e;break}const s=Kt(e),{mode:a}=s;if(o.isLeaving)return po(i);const l=ho(i);if(!l)return po(i);const c=fo(l,s,o,n);go(l,c);const u=n.subTree,d=u&&ho(u);if(d&&d.type!==Fr&&!Jr(l,d)){const e=fo(d,s,o,n);if(go(d,e),"out-in"===a)return o.isLeaving=!0,e.afterLeave=()=>{o.isLeaving=!1,!1!==n.update.active&&(n.effect.dirty=!0,n.update())},po(i);"in-out"===a&&l.type!==Fr&&(e.delayLeave=(e,t,n)=>{uo(o,d)[String(d.key)]=d,e[io]=()=>{t(),e[io]=void 0,delete c.delayedLeave},c.delayedLeave=n})}return i}}};function uo(e,t){const{leavingVNodes:n}=e;let o=n.get(t.type);return o||(o=Object.create(null),n.set(t.type,o)),o}function fo(e,t,n,o){const{appear:r,mode:i,persisted:s=!1,onBeforeEnter:a,onEnter:l,onAfterEnter:c,onEnterCancelled:u,onBeforeLeave:d,onLeave:f,onAfterLeave:h,onLeaveCancelled:g,onBeforeAppear:m,onAppear:v,onAfterAppear:y,onAppearCancelled:b}=t,_=String(e.key),w=uo(n,e),x=(e,t)=>{e&&dn(e,o,9,t)},S=(e,t)=>{const n=t[1];x(e,t),p(e)?e.every((e=>e.length<=1))&&n():e.length<=1&&n()},T={mode:i,persisted:s,beforeEnter(t){let o=a;if(!n.isMounted){if(!r)return;o=m||a}t[io]&&t[io](!0);const i=w[_];i&&Jr(e,i)&&i.el[io]&&i.el[io](),x(o,[t])},enter(e){let t=l,o=c,i=u;if(!n.isMounted){if(!r)return;t=v||l,o=y||c,i=b||u}let s=!1;const a=e[so]=t=>{s||(s=!0,x(t?i:o,[e]),T.delayedLeave&&T.delayedLeave(),e[so]=void 0)};t?S(t,[e,a]):a()},leave(t,o){const r=String(e.key);if(t[so]&&t[so](!0),n.isUnmounting)return o();x(d,[t]);let i=!1;const s=t[io]=n=>{i||(i=!0,o(),x(n?g:h,[t]),t[io]=void 0,w[r]===e&&delete w[r])};w[r]=e,f?S(f,[t,s]):s()},clone:e=>fo(e,t,n,o)};return T}function po(e){if(wo(e))return(e=oi(e)).children=null,e}function ho(e){return wo(e)?e.children?e.children[0]:void 0:e}function go(e,t){6&e.shapeFlag&&e.component?go(e.component.subTree,t):128&e.shapeFlag?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function mo(e,t=!1,n){let o=[],r=0;for(let i=0;i1)for(let i=0;ic({name:e.name},t,{setup:e}))():e}const yo=e=>!!e.type.__asyncLoader -/*! #__NO_SIDE_EFFECTS__ */;function bo(e){m(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:o,delay:r=200,timeout:i,suspensible:s=!0,onError:a}=e;let l,c=null,u=0;const d=()=>{let e;return c||(e=c=t().catch((e=>{if(e=e instanceof Error?e:new Error(String(e)),a)return new Promise(((t,n)=>{a(e,(()=>t((u++,c=null,d()))),(()=>n(e)),u+1)}));throw e})).then((t=>e!==c&&c?c:(t&&(t.__esModule||"Module"===t[Symbol.toStringTag])&&(t=t.default),l=t,t))))};return vo({name:"AsyncComponentWrapper",__asyncLoader:d,get __asyncResolved(){return l},setup(){const e=pi;if(l)return()=>_o(l,e);const t=t=>{c=null,fn(t,e,13,!o)};if(s&&e.suspense||_i)return d().then((t=>()=>_o(t,e))).catch((e=>(t(e),()=>o?ni(o,{error:e}):null)));const a=nn(!1),u=nn(),f=nn(!!r);return r&&setTimeout((()=>{f.value=!1}),r),null!=i&&setTimeout((()=>{if(!a.value&&!u.value){const e=new Error(`Async component timed out after ${i}ms.`);t(e),u.value=e}}),i),d().then((()=>{a.value=!0,e.parent&&wo(e.parent.vnode)&&(e.parent.effect.dirty=!0,Tn(e.parent.update))})).catch((e=>{t(e),u.value=e})),()=>a.value&&l?_o(l,e):u.value&&o?ni(o,{error:u.value}):n&&!f.value?ni(n):void 0}})}function _o(e,t){const{ref:n,props:o,children:r,ce:i}=t.vnode,s=ni(e,o,r);return s.ref=n,s.ce=i,delete t.vnode.ce,s}const wo=e=>e.type.__isKeepAlive;class xo{constructor(e){this.max=e,this._cache=new Map,this._keys=new Set,this._max=parseInt(e,10)}get(e){const{_cache:t,_keys:n,_max:o}=this,r=t.get(e);if(r)n.delete(e),n.add(e);else if(n.add(e),o&&n.size>o){const e=n.values().next().value;this.pruneCacheEntry(t.get(e)),this.delete(e)}return r}set(e,t){this._cache.set(e,t)}delete(e){this._cache.delete(e),this._keys.delete(e)}forEach(e,t){this._cache.forEach(e.bind(t))}}const So={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number],matchBy:{type:String,default:"name"},cache:Object},setup(e,{slots:t}){const n=hi(),o=n.ctx;if(!o.renderer)return()=>{const e=t.default&&t.default();return e&&1===e.length?e[0]:e};const r=e.cache||new xo(e.max);r.pruneCacheEntry=s;let i=null;function s(t){var o;!i||!Jr(t,i)||"key"===e.matchBy&&t.key!==i.key?($o(o=t),u(o,n,a,!0)):i&&$o(i)}const a=n.suspense,{renderer:{p:l,m:c,um:u,o:{createElement:d}}}=o,f=d("div");function p(t){r.forEach(((n,o)=>{const i=Po(n,e.matchBy);!i||t&&t(i)||(r.delete(o),s(n))}))}o.activate=(e,t,n,o,r)=>{const i=e.component;if(i.ba){const e=i.isDeactivated;i.isDeactivated=!1,B(i.ba),i.isDeactivated=e}c(e,t,n,0,a),l(i.vnode,e,t,n,i,a,o,e.slotScopeIds,r),Pr((()=>{i.isDeactivated=!1,i.a&&B(i.a);const t=e.props&&e.props.onVnodeMounted;t&&ui(t,i.parent,e)}),a)},o.deactivate=e=>{const t=e.component;t.bda&&Ro(t.bda),c(e,f,null,1,a),Pr((()=>{t.bda&&t.bda.forEach((e=>e.__called=!1)),t.da&&B(t.da);const n=e.props&&e.props.onVnodeUnmounted;n&&ui(n,t.parent,e),t.isDeactivated=!0}),a)},Zn((()=>[e.include,e.exclude,e.matchBy]),(([e,t])=>{e&&p((t=>Co(e,t))),t&&p((e=>!Co(t,e)))}),{flush:"post",deep:!0});let h=null;const g=()=>{null!=h&&r.set(h,Ao(n.subTree))};return Mo(g),Vo(g),Fo((()=>{r.forEach(((t,o)=>{r.delete(o),s(t);const{subTree:i,suspense:a}=n,l=Ao(i);if(t.type!==l.type||"key"===e.matchBy&&t.key!==l.key);else{l.component.bda&&B(l.component.bda),$o(l);const e=l.component.da;e&&Pr(e,a)}}))})),()=>{if(h=null,!t.default)return null;const n=t.default(),o=n[0];if(n.length>1)return i=null,n;if(!Gr(o)||!(4&o.shapeFlag)&&!Kn(o.type))return i=null,o;let s=Ao(o);const a=s.type,l=Po(s,e.matchBy),{include:c,exclude:u}=e;if(c&&(!l||!Co(c,l))||u&&l&&Co(u,l))return i=s,o;const d=null==s.key?a:s.key,f=r.get(d);return s.el&&(s=oi(s),Kn(o.type)&&(o.ssContent=s)),h=d,f&&(s.el=f.el,s.component=f.component,s.transition&&go(s,s.transition),s.shapeFlag|=512),s.shapeFlag|=256,i=s,Kn(o.type)?o:s}}},To=So;function Co(e,t){return p(e)?e.some((e=>Co(e,t))):v(e)?e.split(",").includes(t):"[object RegExp]"===x(e)&&e.test(t)}function Eo(e,t){Oo(e,"a",t)}function ko(e,t){Oo(e,"da",t)}function Oo(e,t,n=pi){const o=e.__wdc||(e.__wdc=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()});if(o.__called=!1,Bo(t,o,n),n){let e=n.parent;for(;e&&e.parent;)wo(e.parent.vnode)&&Lo(o,t,n,e),e=e.parent}}function Lo(e,t,n,o){const r=Bo(t,e,o,!0);Do((()=>{u(o[t],r)}),n)}function $o(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Ao(e){return Kn(e.type)?e.ssContent:e}function Po(e,t){if("name"===t){const t=e.type;return Ti(yo(e)?t.__asyncResolved||{}:t)}return String(e.key)}function Ro(e){for(let t=0;t-1&&n.$pageInstance){if(n.type.__reserved)return;if(n!==n.$pageInstance&&(n=n.$pageInstance,function(e){return["onLoad","onShow"].indexOf(e)>-1}(e))){const o=n.proxy;dn(t.bind(o),n,e,"onLoad"===e?[o.$page.options]:[])}}const i=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;Ue();const r=vi(n),i=dn(t,n,e,o);return r(),qe(),i});return o?i.unshift(s):i.push(s),s}var r}const No=e=>(t,n=pi)=>(!_i||"sp"===e)&&Bo(e,((...e)=>t(...e)),n),jo=No("bm"),Mo=No("m"),Io=No("bu"),Vo=No("u"),Fo=No("bum"),Do=No("um"),Ho=No("sp"),Wo=No("rtg"),Uo=No("rtc");function qo(e,t=pi){Bo("ec",e,t)}function zo(e,t,n,o){let r;const i=n&&n[o];if(p(e)||v(e)){r=new Array(e.length);for(let n=0,o=e.length;nt(e,n,void 0,i&&i[n])));else{const n=Object.keys(e);r=new Array(n.length);for(let o=0,s=n.length;o!Gr(e)||e.type!==Fr&&!(e.type===Ir&&!Ko(e.children))))?e:null}const Yo=e=>{if(!e)return null;if(bi(e)){return Si(e)||e.proxy}return Yo(e.parent)},Go=c(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Yo(e.parent),$root:e=>Yo(e.root),$emit:e=>e.emit,$options:e=>rr(e),$forceUpdate:e=>e.f||(e.f=(e=>function(){e.effect.dirty=!0,Tn(e.update)})(e)),$nextTick:e=>e.n||(e.n=Sn.bind(e.proxy)),$watch:e=>eo.bind(e)}),Jo=(e,t)=>e!==o&&!e.__isScriptSetup&&f(e,t),Zo={get({_:e},t){const{ctx:n,setupState:r,data:i,props:s,accessCache:a,type:l,appContext:c}=e;let u;if("$"!==t[0]){const l=a[t];if(void 0!==l)switch(l){case 1:return r[t];case 2:return i[t];case 4:return n[t];case 3:return s[t]}else{if(Jo(r,t))return a[t]=1,r[t];if(i!==o&&f(i,t))return a[t]=2,i[t];if((u=e.propsOptions[0])&&f(u,t))return a[t]=3,s[t];if(n!==o&&f(n,t))return a[t]=4,n[t];er&&(a[t]=0)}}const d=Go[t];let p,h;return d?("$attrs"===t&&tt(e,0,t),d(e)):(p=l.__cssModules)&&(p=p[t])?p:n!==o&&f(n,t)?(a[t]=4,n[t]):(h=c.config.globalProperties,f(h,t)?h[t]:void 0)},set({_:e},t,n){const{data:r,setupState:i,ctx:s}=e;return Jo(i,t)?(i[t]=n,!0):r!==o&&f(r,t)?(r[t]=n,!0):!f(e.props,t)&&(("$"!==t[0]||!(t.slice(1)in e))&&(s[t]=n,!0))},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:i,propsOptions:s}},a){let l;return!!n[a]||e!==o&&f(e,a)||Jo(t,a)||(l=s[0])&&f(l,a)||f(r,a)||f(Go,a)||f(i.config.globalProperties,a)},defineProperty(e,t,n){return null!=n.get?e._.accessCache[t]=0:f(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Qo(e){return p(e)?e.reduce(((e,t)=>(e[t]=null,e)),{}):e}let er=!0;function tr(e){const t=rr(e),n=e.proxy,o=e.ctx;er=!1,t.beforeCreate&&nr(t.beforeCreate,e,"bc");const{data:r,computed:s,methods:a,watch:l,provide:c,inject:u,created:d,beforeMount:f,mounted:h,beforeUpdate:g,updated:v,activated:y,deactivated:_,beforeDestroy:w,beforeUnmount:x,destroyed:S,unmounted:T,render:C,renderTracked:E,renderTriggered:k,errorCaptured:O,serverPrefetch:L,expose:$,inheritAttrs:A,components:P,directives:R,filters:B}=t;if(u&&function(e,t,n=i){p(e)&&(e=lr(e));for(const o in e){const n=e[o];let r;r=b(n)?"default"in n?vr(n.from||o,n.default,!0):vr(n.from||o):vr(n),tn(r)?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>r.value,set:e=>r.value=e}):t[o]=r}}(u,o,null),a)for(const i in a){const e=a[i];m(e)&&(o[i]=e.bind(n))}if(r){const t=r.call(n,n);b(t)&&(e.data=Ft(t))}if(er=!0,s)for(const p in s){const e=s[p],t=m(e)?e.bind(n,n):m(e.get)?e.get.bind(n,n):i,r=!m(e)&&m(e.set)?e.set.bind(n):i,a=Ci({get:t,set:r});Object.defineProperty(o,p,{enumerable:!0,configurable:!0,get:()=>a.value,set:e=>a.value=e})}if(l)for(const i in l)or(l[i],o,n,i);if(c){const e=m(c)?c.call(n):c;Reflect.ownKeys(e).forEach((t=>{mr(t,e[t])}))}function N(e,t){p(t)?t.forEach((t=>e(t.bind(n)))):t&&e(t.bind(n))}if(d&&nr(d,e,"c"),N(jo,f),N(Mo,h),N(Io,g),N(Vo,v),N(Eo,y),N(ko,_),N(qo,O),N(Uo,E),N(Wo,k),N(Fo,x),N(Do,T),N(Ho,L),p($))if($.length){const t=e.exposed||(e.exposed={});$.forEach((e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t})}))}else e.exposed||(e.exposed={});C&&e.render===i&&(e.render=C),null!=A&&(e.inheritAttrs=A),P&&(e.components=P),R&&(e.directives=R);const j=e.appContext.config.globalProperties.$applyOptions;j&&j(t,e,n)}function nr(e,t,n){dn(p(e)?e.map((e=>e.bind(t.proxy))):e.bind(t.proxy),t,n)}function or(e,t,n,o){const r=o.includes(".")?to(n,o):()=>n[o];if(v(e)){const n=t[e];m(n)&&Zn(r,n)}else if(m(e))Zn(r,e.bind(n));else if(b(e))if(p(e))e.forEach((e=>or(e,t,n,o)));else{const o=m(e.handler)?e.handler.bind(n):t[e.handler];m(o)&&Zn(r,o,e)}}function rr(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:s}}=e.appContext,a=i.get(t);let l;return a?l=a:r.length||n||o?(l={},r.length&&r.forEach((e=>ir(l,e,s,!0))),ir(l,t,s)):l=t,b(t)&&i.set(t,l),l}function ir(e,t,n,o=!1){const{mixins:r,extends:i}=t;i&&ir(e,i,n,!0),r&&r.forEach((t=>ir(e,t,n,!0)));for(const s in t)if(o&&"expose"===s);else{const o=sr[s]||n&&n[s];e[s]=o?o(e[s],t[s]):t[s]}return e}const sr={data:ar,props:dr,emits:dr,methods:ur,computed:ur,beforeCreate:cr,created:cr,beforeMount:cr,mounted:cr,beforeUpdate:cr,updated:cr,beforeDestroy:cr,beforeUnmount:cr,destroyed:cr,unmounted:cr,activated:cr,deactivated:cr,errorCaptured:cr,serverPrefetch:cr,components:ur,directives:ur,watch:function(e,t){if(!e)return t;if(!t)return e;const n=c(Object.create(null),e);for(const o in t)n[o]=cr(e[o],t[o]);return n},provide:ar,inject:function(e,t){return ur(lr(e),lr(t))}};function ar(e,t){return t?e?function(){return c(m(e)?e.call(this,this):e,m(t)?t.call(this,this):t)}:t:e}function lr(e){if(p(e)){const t={};for(let n=0;n(i.has(e)||(e&&m(e.install)?(i.add(e),e.install(a,...t)):m(e)&&(i.add(e),e(a,...t))),a),mixin:e=>(r.mixins.includes(e)||r.mixins.push(e),a),component:(e,t)=>t?(r.components[e]=t,a):r.components[e],directive:(e,t)=>t?(r.directives[e]=t,a):r.directives[e],mount(i,l,c){if(!s){const u=ni(n,o);return u.appContext=r,!0===c?c="svg":!1===c&&(c=void 0),l&&t?t(u,i):e(u,i,c),s=!0,a._container=i,i.__vue_app__=a,a._instance=u.component,Si(u.component)||u.component.proxy}},unmount(){s&&(e(null,a._container),delete a._container.__vue_app__)},provide:(e,t)=>(r.provides[e]=t,a),runWithContext(e){const t=gr;gr=a;try{return e()}finally{gr=t}}};return a}}let gr=null;function mr(e,t){if(pi){let n=pi.provides;const o=pi.parent&&pi.parent.provides;o===n&&(n=pi.provides=Object.create(o)),n[e]=t,"app"===pi.type.mpType&&pi.appContext.app.provide(e,t)}else;}function vr(e,t,n=!1){const o=pi||Nn;if(o||gr){const r=o?null==o.parent?o.vnode.appContext&&o.vnode.appContext.provides:o.parent.provides:gr._context.provides;if(r&&e in r)return r[e];if(arguments.length>1)return n&&m(t)?t.call(o&&o.proxy):t}}function yr(e,t,n,r){const[i,s]=e.propsOptions;let a,l=!1;if(t)for(let o in t){if(C(o))continue;const c=t[o];let u;i&&f(i,u=O(o))?s&&s.includes(u)?(a||(a={}))[u]=c:n[u]=c:Bn(e.emitsOptions,o)||o in r&&c===r[o]||(r[o]=br(e,o,c),l=!0)}if(s){const t=Kt(n),r=a||o;for(let o=0;o{d=!0;const[n,o]=wr(e,t,!0);c(l,n),o&&u.push(...o)};!n&&t.mixins.length&&t.mixins.forEach(o),e.extends&&o(e.extends),e.mixins&&e.mixins.forEach(o)}if(!a&&!d)return b(e)&&i.set(e,r),r;if(p(a))for(let r=0;r-1,n[1]=o<0||t-1||f(n,"default"))&&u.push(e)}}}const h=[l,u];return b(e)&&i.set(e,h),h}function xr(e){return"$"!==e[0]&&!C(e)}function Sr(e){if(null===e)return"null";if("function"==typeof e)return e.name||"";if("object"==typeof e){return e.constructor&&e.constructor.name||""}return""}function Tr(e,t){return Sr(e)===Sr(t)}function Cr(e,t){return p(t)?t.findIndex((t=>Tr(t,e))):m(t)&&Tr(t,e)?0:-1}const Er=e=>"_"===e[0]||"$stable"===e,kr=e=>p(e)?e.map(si):[si(e)],Or=(e,t,n)=>{if(t._n)return t;const o=In(((...e)=>kr(t(...e))),n);return o._c=!1,o},Lr=(e,t,n)=>{const o=e._ctx;for(const r in e){if(Er(r))continue;const n=e[r];if(m(n))t[r]=Or(0,n,o);else if(null!=n){const e=kr(n);t[r]=()=>e}}},$r=(e,t)=>{const n=kr(t);e.slots.default=()=>n};function Ar(e,t,n,r,i=!1){if(p(e))return void e.forEach(((e,o)=>Ar(e,t&&(p(t)?t[o]:t),n,r,i)));if(yo(r)&&!i)return;const s=4&r.shapeFlag?Si(r.component)||r.component.proxy:r.el,a=i?null:s,{i:l,r:c}=e,d=t&&t.r,h=l.refs===o?l.refs={}:l.refs,g=l.setupState;if(null!=d&&d!==c&&(v(d)?(h[d]=null,f(g,d)&&(g[d]=null)):tn(d)&&(d.value=null)),m(c))un(c,l,12,[a,h]);else{const t=v(c),o=tn(c);if(t||o){const r=()=>{if(e.f){const n=t?f(g,c)?g[c]:h[c]:c.value;i?p(n)&&u(n,s):p(n)?n.includes(s)||n.push(s):t?(h[c]=[s],f(g,c)&&(g[c]=h[c])):(c.value=[s],e.k&&(h[e.k]=c.value))}else t?(h[c]=a,f(g,c)&&(g[c]=a)):o&&(c.value=a,e.k&&(h[e.k]=a))};a?(r.id=-1,Pr(r,n)):r()}}}const Pr=function(e,t){var n;t&&t.pendingBranch?p(e)?t.effects.push(...e):t.effects.push(e):(p(n=e)?yn.push(...n):bn&&bn.includes(n,n.allowRecurse?_n+1:_n)||yn.push(n),Cn())};function Rr(e){return function(e,t){I().__VUE__=!0;const{insert:n,remove:s,patchProp:a,forcePatchProp:l,createElement:u,createText:d,createComment:p,setText:h,setElementText:g,parentNode:m,nextSibling:v,setScopeId:y=i,insertStaticContent:b}=e,w=(e,t,n,o=null,r=null,i=null,s,a=null,l=!!t.dynamicChildren)=>{if(e===t)return;e&&!Jr(e,t)&&(o=te(e),G(e,r,i,!0),e=null),-2===t.patchFlag&&(l=!1,t.dynamicChildren=null);const{type:c,ref:u,shapeFlag:d}=t;switch(c){case Vr:x(e,t,n,o);break;case Fr:S(e,t,n,o);break;case Dr:null==e&&T(t,n,o,s);break;case Ir:F(e,t,n,o,r,i,s,a,l);break;default:1&d?L(e,t,n,o,r,i,s,a,l):6&d?D(e,t,n,o,r,i,s,a,l):(64&d||128&d)&&c.process(e,t,n,o,r,i,s,a,l,re)}null!=u&&r&&Ar(u,e&&e.ref,i,t||e,!t)},x=(e,t,o,r)=>{if(null==e)n(t.el=d(t.children),o,r);else{const n=t.el=e.el;t.children!==e.children&&h(n,t.children)}},S=(e,t,o,r)=>{null==e?n(t.el=p(t.children||""),o,r):t.el=e.el},T=(e,t,n,o)=>{[e.el,e.anchor]=b(e.children,t,n,o,e.el,e.anchor)},E=({el:e,anchor:t},o,r)=>{let i;for(;e&&e!==t;)i=v(e),n(e,o,r),e=i;n(t,o,r)},k=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=v(e),s(e),e=n;s(t)},L=(e,t,n,o,r,i,s,a,l)=>{"svg"===t.type?s="svg":"math"===t.type&&(s="mathml"),null==e?A(t,n,o,r,i,s,a,l):j(e,t,r,i,s,a,l)},A=(e,t,o,r,i,s,l,c)=>{let d,f;const{props:p,shapeFlag:h,transition:m,dirs:v}=e;if(d=e.el=u(e.type,s,p&&p.is,p),8&h?g(d,e.children):16&h&&R(e.children,d,null,r,i,Br(e,s),l,c),v&&ro(e,null,r,"created"),P(d,e,e.scopeId,l,r),p){for(const t in p)"value"===t||C(t)||a(d,t,null,p[t],s,e.children,r,i,ee);"value"in p&&a(d,"value",null,p.value,s),(f=p.onVnodeBeforeMount)&&ui(f,r,e)}Object.defineProperty(d,"__vueParentComponent",{value:r,enumerable:!1}),v&&ro(e,null,r,"beforeMount");const y=function(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}(i,m);y&&m.beforeEnter(d),n(d,t,o),((f=p&&p.onVnodeMounted)||y||v)&&Pr((()=>{f&&ui(f,r,e),y&&m.enter(d),v&&ro(e,null,r,"mounted")}),i)},P=(e,t,n,o,r)=>{if(n&&y(e,n),o)for(let i=0;i{for(let c=l;c{const u=t.el=e.el;let{patchFlag:d,dynamicChildren:f,dirs:p}=t;d|=16&e.patchFlag;const h=e.props||o,m=t.props||o;let v;if(n&&Nr(n,!1),(v=m.onVnodeBeforeUpdate)&&ui(v,n,t,e),p&&ro(t,e,n,"beforeUpdate"),n&&Nr(n,!0),f?M(e.dynamicChildren,f,u,n,r,Br(t,i),s):c||z(e,t,u,null,n,r,Br(t,i),s,!1),d>0){if(16&d)V(u,t,h,m,n,r,i);else if(2&d&&h.class!==m.class&&a(u,"class",null,m.class,i),4&d&&a(u,"style",h.style,m.style,i),8&d){const o=t.dynamicProps;for(let t=0;t{v&&ui(v,n,t,e),p&&ro(t,e,n,"updated")}),r)},M=(e,t,n,o,r,i,s)=>{for(let a=0;a{if(n!==r){if(n!==o)for(const o in n)C(o)||o in r||a(e,o,n[o],null,c,t.children,i,s,ee);for(const o in r){if(C(o))continue;const u=r[o],d=n[o];(u!==d&&"value"!==o||l&&l(e,o))&&a(e,o,d,u,c,t.children,i,s,ee)}"value"in r&&a(e,"value",n.value,r.value,c)}},F=(e,t,o,r,i,s,a,l,c)=>{const u=t.el=e?e.el:d(""),f=t.anchor=e?e.anchor:d("");let{patchFlag:p,dynamicChildren:h,slotScopeIds:g}=t;g&&(l=l?l.concat(g):g),null==e?(n(u,o,r),n(f,o,r),R(t.children||[],o,f,i,s,a,l,c)):p>0&&64&p&&h&&e.dynamicChildren?(M(e.dynamicChildren,h,o,i,s,a,l),(null!=t.key||i&&t===i.subTree)&&jr(e,t,!0)):z(e,t,o,f,i,s,a,l,c)},D=(e,t,n,o,r,i,s,a,l)=>{t.slotScopeIds=a,null==e?512&t.shapeFlag?r.ctx.activate(t,n,o,s,l):H(t,n,o,r,i,s,l):W(e,t,l)},H=(e,t,n,r,i,s,a)=>{const l=e.component=function(e,t,n){const r=e.type,i=(t?t.appContext:e.appContext)||di,s={uid:fi++,vnode:e,type:r,parent:t,appContext:i,get renderer(){return"app"===r.mpType?"app":this.$pageInstance&&this.$pageInstance==s?"page":"component"},root:null,next:null,subTree:null,effect:null,update:null,scope:new je(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(i.provides),accessCache:null,renderCache:[],components:null,directives:null,propsOptions:wr(r,i),emitsOptions:Rn(r,i),emit:null,emitted:null,propsDefaults:o,inheritAttrs:r.inheritAttrs,ctx:o,data:o,props:o,attrs:o,slots:o,refs:o,setupState:o,setupContext:null,attrsProxy:null,slotsProxy:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,bda:null,da:null,ba:null,a:null,rtg:null,rtc:null,ec:null,sp:null};s.ctx={_:s},s.root=t?t.root:s,s.emit=An.bind(null,s),s.$pageInstance=t&&t.$pageInstance,e.ce&&e.ce(s);return s}(e,r,i);if(wo(e)&&(l.ctx.renderer=re),function(e,t=!1){t&&mi(t);const{props:n,children:o}=e.vnode,r=bi(e);(function(e,t,n,o=!1){const r={},i={};N(i,Zr,1),e.propsDefaults=Object.create(null),yr(e,t,r,i);for(const s in e.propsOptions[0])s in r||(r[s]=void 0);n?e.props=o?r:Dt(r):e.type.props?e.props=r:e.props=i,e.attrs=i})(e,n,r,t),((e,t)=>{if(32&e.vnode.shapeFlag){const n=t._;n?(e.slots=Kt(t),N(t,"_",n)):Lr(t,e.slots={})}else e.slots={},t&&$r(e,t);N(e.slots,Zr,1)})(e,o);const i=r?function(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=Yt(new Proxy(e.ctx,Zo));const{setup:o}=n;if(o){const n=e.setupContext=o.length>1?function(e){const t=t=>{e.exposed=t||{}};return{get attrs(){return function(e){return e.attrsProxy||(e.attrsProxy=new Proxy(e.attrs,{get:(t,n)=>(tt(e,0,"$attrs"),t[n])}))}(e)},slots:e.slots,emit:e.emit,expose:t}}(e):null,r=vi(e);Ue();const i=un(o,e,0,[e.props,n]);if(qe(),r(),_(i)){if(i.then(yi,yi),t)return i.then((n=>{wi(e,n,t)})).catch((t=>{fn(t,e,0)}));e.asyncDep=i}else wi(e,i,t)}else xi(e,t)}(e,t):void 0;t&&mi(!1)}(l),l.asyncDep){if(i&&i.registerDep(l,U),!e.el){const e=l.subTree=ni(Fr);S(null,e,t,n)}}else U(l,e,t,n,i,s,a)},W=(e,t,n)=>{const o=t.component=e.component;if(function(e,t,n){const{props:o,children:r,component:i}=e,{props:s,children:a,patchFlag:l}=t,c=i.emitsOptions;if(t.dirs||t.transition)return!0;if(!(n&&l>=0))return!(!r&&!a||a&&a.$stable)||o!==s&&(o?!s||Hn(o,s,c):!!s);if(1024&l)return!0;if(16&l)return o?Hn(o,s,c):!!s;if(8&l){const e=t.dynamicProps;for(let t=0;tvn&&mn.splice(t,1)}(o.update),o.effect.dirty=!0,o.update()}else t.el=e.el,o.vnode=t},U=(e,t,n,o,r,s,a)=>{const l=()=>{if(e.isMounted){let{next:t,bu:n,u:o,parent:i,vnode:c}=e;{const n=Mr(e);if(n)return t&&(t.el=c.el,q(e,t,a)),void n.asyncDep.then((()=>{e.isUnmounted||l()}))}let u,d=t;Nr(e,!1),t?(t.el=c.el,q(e,t,a)):t=c,n&&B(n),(u=t.props&&t.props.onVnodeBeforeUpdate)&&ui(u,i,t,c),Nr(e,!0);const f=Vn(e),p=e.subTree;e.subTree=f,w(p,f,m(p.el),te(p),e,r,s),t.el=f.el,null===d&&function({vnode:e,parent:t},n){for(;t;){const o=t.subTree;if(o.suspense&&o.suspense.activeBranch===e&&(o.el=e.el),o!==e)break;(e=t.vnode).el=n,t=t.parent}}(e,f.el),o&&Pr(o,r),(u=t.props&&t.props.onVnodeUpdated)&&Pr((()=>ui(u,i,t,c)),r)}else{let i;const{el:a,props:l}=t,{bm:c,m:u,parent:d}=e,f=yo(t);if(Nr(e,!1),c&&B(c),!f&&(i=l&&l.onVnodeBeforeMount)&&ui(i,d,t),Nr(e,!0),a&&se){const n=()=>{e.subTree=Vn(e),se(a,e.subTree,e,r,null)};f?t.type.__asyncLoader().then((()=>!e.isUnmounted&&n())):n()}else{const i=e.subTree=Vn(e);w(null,i,n,o,e,r,s),t.el=i.el}if(u&&Pr(u,r),!f&&(i=l&&l.onVnodeMounted)){const e=t;Pr((()=>ui(i,d,e)),r)}(256&t.shapeFlag||d&&yo(d.vnode)&&256&d.vnode.shapeFlag)&&(e.ba&&Ro(e.ba),e.a&&Pr(e.a,r)),e.isMounted=!0,t=n=o=null}},c=e.effect=new Me(l,i,(()=>Tn(u)),e.scope),u=e.update=()=>{c.dirty&&c.run()};u.id=e.uid,Nr(e,!0),u()},q=(e,t,n)=>{t.component=e;const r=e.vnode.props;e.vnode=t,e.next=null,function(e,t,n,o){const{props:r,attrs:i,vnode:{patchFlag:s}}=e,a=Kt(r),[l]=e.propsOptions;let c=!1;if(!(o||s>0)||16&s){let o;yr(e,t,r,i)&&(c=!0);for(const i in a)t&&(f(t,i)||(o=$(i))!==i&&f(t,o))||(l?!n||void 0===n[i]&&void 0===n[o]||(r[i]=_r(l,a,i,void 0,e,!0)):delete r[i]);if(i!==a)for(const e in i)t&&f(t,e)||(delete i[e],c=!0)}else if(8&s){const n=e.vnode.dynamicProps;for(let o=0;o{const{vnode:r,slots:i}=e;let s=!0,a=o;if(32&r.shapeFlag){const e=t._;e?n&&1===e?s=!1:(c(i,t),n||1!==e||delete i._):(s=!t.$stable,Lr(t,i)),a=t}else t&&($r(e,t),a={default:1});if(s)for(const o in i)Er(o)||null!=a[o]||delete i[o]})(e,t.children,n),Ue(),En(e),qe()},z=(e,t,n,o,r,i,s,a,l=!1)=>{const c=e&&e.children,u=e?e.shapeFlag:0,d=t.children,{patchFlag:f,shapeFlag:p}=t;if(f>0){if(128&f)return void K(c,d,n,o,r,i,s,a,l);if(256&f)return void X(c,d,n,o,r,i,s,a,l)}8&p?(16&u&&ee(c,r,i),d!==c&&g(n,d)):16&u?16&p?K(c,d,n,o,r,i,s,a,l):ee(c,r,i,!0):(8&u&&g(n,""),16&p&&R(d,n,o,r,i,s,a,l))},X=(e,t,n,o,i,s,a,l,c)=>{t=t||r;const u=(e=e||r).length,d=t.length,f=Math.min(u,d);let p;for(p=0;pd?ee(e,i,s,!0,!1,f):R(t,n,o,i,s,a,l,c,f)},K=(e,t,n,o,i,s,a,l,c)=>{let u=0;const d=t.length;let f=e.length-1,p=d-1;for(;u<=f&&u<=p;){const o=e[u],r=t[u]=c?ai(t[u]):si(t[u]);if(!Jr(o,r))break;w(o,r,n,null,i,s,a,l,c),u++}for(;u<=f&&u<=p;){const o=e[f],r=t[p]=c?ai(t[p]):si(t[p]);if(!Jr(o,r))break;w(o,r,n,null,i,s,a,l,c),f--,p--}if(u>f){if(u<=p){const e=p+1,r=ep)for(;u<=f;)G(e[u],i,s,!0),u++;else{const h=u,g=u,m=new Map;for(u=g;u<=p;u++){const e=t[u]=c?ai(t[u]):si(t[u]);null!=e.key&&m.set(e.key,u)}let v,y=0;const b=p-g+1;let _=!1,x=0;const S=new Array(b);for(u=0;u=b){G(o,i,s,!0);continue}let r;if(null!=o.key)r=m.get(o.key);else for(v=g;v<=p;v++)if(0===S[v-g]&&Jr(o,t[v])){r=v;break}void 0===r?G(o,i,s,!0):(S[r-g]=u+1,r>=x?x=r:_=!0,w(o,t[r],n,null,i,s,a,l,c),y++)}const T=_?function(e){const t=e.slice(),n=[0];let o,r,i,s,a;const l=e.length;for(o=0;o>1,e[n[a]]0&&(t[o]=n[i-1]),n[i]=o)}}i=n.length,s=n[i-1];for(;i-- >0;)n[i]=s,s=t[s];return n}(S):r;for(v=T.length-1,u=b-1;u>=0;u--){const e=g+u,r=t[e],f=e+1{const{el:s,type:a,transition:l,children:c,shapeFlag:u}=e;if(6&u)return void Y(e.component.subTree,t,o,r);if(128&u)return void e.suspense.move(t,o,r);if(64&u)return void a.move(e,t,o,re);if(a===Ir){n(s,t,o);for(let e=0;el.enter(s)),i);else{const{leave:e,delayLeave:r,afterLeave:i}=l,a=()=>n(s,t,o),c=()=>{e(s,(()=>{a(),i&&i()}))};r?r(s,a,c):c()}else n(s,t,o)},G=(e,t,n,o=!1,r=!1)=>{const{type:i,props:s,ref:a,children:l,dynamicChildren:c,shapeFlag:u,patchFlag:d,dirs:f}=e;if(null!=a&&Ar(a,null,n,e,!0),256&u)return void t.ctx.deactivate(e);const p=1&u&&f,h=!yo(e);let g;if(h&&(g=s&&s.onVnodeBeforeUnmount)&&ui(g,t,e),6&u)Q(e.component,n,o);else{if(128&u)return void e.suspense.unmount(n,o);p&&ro(e,null,t,"beforeUnmount"),64&u?e.type.remove(e,t,n,r,re,o):c&&(i!==Ir||d>0&&64&d)?ee(c,t,n,!1,!0):(i===Ir&&384&d||!r&&16&u)&&ee(l,t,n),o&&J(e)}(h&&(g=s&&s.onVnodeUnmounted)||p)&&Pr((()=>{g&&ui(g,t,e),p&&ro(e,null,t,"unmounted")}),n)},J=e=>{const{type:t,el:n,anchor:o,transition:r}=e;if(t===Ir)return void Z(n,o);if(t===Dr)return void k(e);const i=()=>{s(n),r&&!r.persisted&&r.afterLeave&&r.afterLeave()};if(1&e.shapeFlag&&r&&!r.persisted){const{leave:t,delayLeave:o}=r,s=()=>t(n,i);o?o(e.el,i,s):s()}else i()},Z=(e,t)=>{let n;for(;e!==t;)n=v(e),s(e),e=n;s(t)},Q=(e,t,n)=>{const{bum:o,scope:r,update:i,subTree:s,um:a}=e;o&&B(o),r.stop(),i&&(i.active=!1,G(s,e,t,n)),a&&Pr(a,t),Pr((()=>{e.isUnmounted=!0}),t),t&&t.pendingBranch&&!t.isUnmounted&&e.asyncDep&&!e.asyncResolved&&e.suspenseId===t.pendingId&&(t.deps--,0===t.deps&&t.resolve())},ee=(e,t,n,o=!1,r=!1,i=0)=>{for(let s=i;s6&e.shapeFlag?te(e.component.subTree):128&e.shapeFlag?e.suspense.next():v(e.anchor||e.el);let ne=!1;const oe=(e,t,n)=>{null==e?t._vnode&&G(t._vnode,null,null,!0):w(t._vnode||null,e,t,null,null,null,n),ne||(ne=!0,En(),kn(),ne=!1),t._vnode=e},re={p:w,um:G,m:Y,r:J,mt:H,mc:R,pc:z,pbc:M,n:te,o:e};let ie,se;t&&([ie,se]=t(re));return{render:oe,hydrate:ie,createApp:hr(oe,ie)}}(e)}function Br({type:e,props:t},n){return"svg"===n&&"foreignObject"===e||"mathml"===n&&"annotation-xml"===e&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Nr({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function jr(e,t,n=!1){const o=e.children,r=t.children;if(p(o)&&p(r))for(let i=0;i0?Wr||r:null,Hr.pop(),Wr=Hr[Hr.length-1]||null,qr>0&&Wr&&Wr.push(e),e}function Kr(e,t,n,o,r,i){return Xr(ti(e,t,n,o,r,i,!0))}function Yr(e,t,n,o,r){return Xr(ni(e,t,n,o,r,!0))}function Gr(e){return!!e&&!0===e.__v_isVNode}function Jr(e,t){return e.type===t.type&&e.key===t.key}const Zr="__vInternal",Qr=({key:e})=>null!=e?e:null,ei=({ref:e,ref_key:t,ref_for:n})=>("number"==typeof e&&(e=""+e),null!=e?v(e)||tn(e)||m(e)?{i:Nn,r:e,k:t,f:!!n}:e:null);function ti(e,t=null,n=null,o=0,r=null,i=(e===Ir?0:1),s=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Qr(t),ref:t&&ei(t),scopeId:jn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:o,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:Nn};return a?(li(l,n),128&i&&e.normalize(l)):n&&(l.shapeFlag|=v(n)?8:16),qr>0&&!s&&Wr&&(l.patchFlag>0||6&i)&&32!==l.patchFlag&&Wr.push(l),l}const ni=function(e,t=null,n=null,o=0,r=null,i=!1){e&&e!==Un||(e=Fr);if(Gr(e)){const o=oi(e,t,!0);return n&&li(o,n),qr>0&&!i&&Wr&&(6&o.shapeFlag?Wr[Wr.indexOf(e)]=o:Wr.push(o)),o.patchFlag|=-2,o}s=e,m(s)&&"__vccOpts"in s&&(e=e.__vccOpts);var s;if(t){t=function(e){return e?Xt(e)||Zr in e?c({},e):e:null}(t);let{class:e,style:n}=t;e&&!v(e)&&(t.class=ce(e)),b(n)&&(Xt(n)&&!p(n)&&(n=c({},n)),t.style=le(n))}const a=v(e)?1:Kn(e)?128:(e=>e.__isTeleport)(e)?64:b(e)?4:m(e)?2:0;return ti(e,t,n,o,r,a,i,!0)};function oi(e,t,n=!1){const{props:o,ref:r,patchFlag:i,children:s}=e,a=t?ci(o||{},t):o;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:a,key:a&&Qr(a),ref:t&&t.ref?n&&r?p(r)?r.concat(ei(t)):[r,ei(t)]:ei(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ir?-1===i?16:16|i:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&oi(e.ssContent),ssFallback:e.ssFallback&&oi(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}}function ri(e=" ",t=0){return ni(Vr,null,e,t)}function ii(e="",t=!1){return t?(Ur(),Yr(Fr,null,e)):ni(Fr,null,e)}function si(e){return null==e||"boolean"==typeof e?ni(Fr):p(e)?ni(Ir,null,e.slice()):"object"==typeof e?ai(e):ni(Vr,null,String(e))}function ai(e){return null===e.el&&-1!==e.patchFlag||e.memo?e:oi(e)}function li(e,t){let n=0;const{shapeFlag:o}=e;if(null==t)t=null;else if(p(t))n=16;else if("object"==typeof t){if(65&o){const n=t.default;return void(n&&(n._c&&(n._d=!1),li(e,n()),n._c&&(n._d=!0)))}{n=32;const o=t._;o||Zr in t?3===o&&Nn&&(1===Nn.slots._?t._=1:(t._=2,e.patchFlag|=1024)):t._ctx=Nn}}else m(t)?(t={default:t,_ctx:Nn},n=32):(t=String(t),64&o?(n=16,t=[ri(t)]):n=8);e.children=t,e.shapeFlag|=n}function ci(...e){const t={};for(let n=0;npi||Nn;let gi,mi;{const e=I(),t=(t,n)=>{let o;return(o=e[t])||(o=e[t]=[]),o.push(n),e=>{o.length>1?o.forEach((t=>t(e))):o[0](e)}};gi=t("__VUE_INSTANCE_SETTERS__",(e=>pi=e)),mi=t("__VUE_SSR_SETTERS__",(e=>_i=e))}const vi=e=>{const t=pi;return gi(e),e.scope.on(),()=>{e.scope.off(),gi(t)}},yi=()=>{pi&&pi.scope.off(),gi(null)};function bi(e){return 4&e.vnode.shapeFlag}let _i=!1;function wi(e,t,n){m(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:b(t)&&(e.setupState=cn(t)),xi(e,n)}function xi(e,t,n){const o=e.type;e.render||(e.render=o.render||i);{const t=vi(e);Ue();try{tr(e)}finally{qe(),t()}}}function Si(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(cn(Yt(e.exposed)),{get:(t,n)=>n in t?t[n]:n in Go?Go[n](e):void 0,has:(e,t)=>t in e||t in Go}))}function Ti(e,t=!0){return m(e)?e.displayName||e.name:e.name||t&&e.__name}const Ci=(e,t)=>{const n=function(e,t,n=!1){let o,r;const s=m(e);return s?(o=e,r=i):(o=e.get,r=e.set),new Zt(o,r,s||!r,n)}(e,0,_i);return n};function Ei(e,t,n){const o=arguments.length;return 2===o?b(t)&&!p(t)?Gr(t)?ni(e,null,[t]):ni(e,t):ni(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):3===o&&Gr(n)&&(n=[n]),ni(e,t,n))}const ki="3.4.21",Oi="undefined"!=typeof document?document:null,Li=Oi&&Oi.createElement("template"),$i={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,o)=>{const r="svg"===t?Oi.createElementNS("http://www.w3.org/2000/svg",e):"mathml"===t?Oi.createElementNS("http://www.w3.org/1998/Math/MathML",e):n?Oi.createElement(e,{is:n}):Oi.createElement(e);return"select"===e&&o&&null!=o.multiple&&r.setAttribute("multiple",o.multiple),r},createText:e=>Oi.createTextNode(e),createComment:e=>Oi.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Oi.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,o,r,i){const s=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),r!==i&&(r=r.nextSibling););else{Li.innerHTML="svg"===o?`${e}`:"mathml"===o?`${e}`:e;const r=Li.content;if("svg"===o||"mathml"===o){const e=r.firstChild;for(;e.firstChild;)r.appendChild(e.firstChild);r.removeChild(e)}t.insertBefore(r,n)}return[s?s.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Ai="transition",Pi=Symbol("_vtc"),Ri=(e,{slots:t})=>Ei(co,function(e){const t={};for(const c in e)c in Bi||(t[c]=e[c]);if(!1===e.css)return t;const{name:n="v",type:o,duration:r,enterFromClass:i=`${n}-enter-from`,enterActiveClass:s=`${n}-enter-active`,enterToClass:a=`${n}-enter-to`,appearFromClass:l=i,appearActiveClass:u=s,appearToClass:d=a,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,g=function(e){if(null==e)return null;if(b(e))return[Mi(e.enter),Mi(e.leave)];{const t=Mi(e);return[t,t]}}(r),m=g&&g[0],v=g&&g[1],{onBeforeEnter:y,onEnter:_,onEnterCancelled:w,onLeave:x,onLeaveCancelled:S,onBeforeAppear:T=y,onAppear:C=_,onAppearCancelled:E=w}=t,k=(e,t,n)=>{Vi(e,t?d:a),Vi(e,t?u:s),n&&n()},O=(e,t)=>{e._isLeaving=!1,Vi(e,f),Vi(e,h),Vi(e,p),t&&t()},L=e=>(t,n)=>{const r=e?C:_,s=()=>k(t,e,n);Ni(r,[t,s]),Fi((()=>{Vi(t,e?l:i),Ii(t,e?d:a),ji(r)||Hi(t,o,m,s)}))};return c(t,{onBeforeEnter(e){Ni(y,[e]),Ii(e,i),Ii(e,s)},onBeforeAppear(e){Ni(T,[e]),Ii(e,l),Ii(e,u)},onEnter:L(!1),onAppear:L(!0),onLeave(e,t){e._isLeaving=!0;const n=()=>O(e,t);Ii(e,f),document.body.offsetHeight,Ii(e,p),Fi((()=>{e._isLeaving&&(Vi(e,f),Ii(e,h),ji(x)||Hi(e,o,v,n))})),Ni(x,[e,n])},onEnterCancelled(e){k(e,!1),Ni(w,[e])},onAppearCancelled(e){k(e,!0),Ni(E,[e])},onLeaveCancelled(e){O(e),Ni(S,[e])}})}(e),t);Ri.displayName="Transition";const Bi={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String};Ri.props=c({},lo,Bi);const Ni=(e,t=[])=>{p(e)?e.forEach((e=>e(...t))):e&&e(...t)},ji=e=>!!e&&(p(e)?e.some((e=>e.length>1)):e.length>1);function Mi(e){const t=(e=>{const t=v(e)?Number(e):NaN;return isNaN(t)?e:t})(e);return t}function Ii(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.add(t))),(e[Pi]||(e[Pi]=new Set)).add(t)}function Vi(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.remove(t)));const n=e[Pi];n&&(n.delete(t),n.size||(e[Pi]=void 0))}function Fi(e){requestAnimationFrame((()=>{requestAnimationFrame(e)}))}let Di=0;function Hi(e,t,n,o){const r=e._endId=++Di,i=()=>{r===e._endId&&o()};if(n)return setTimeout(i,n);const{type:s,timeout:a,propCount:l}=function(e,t){const n=window.getComputedStyle(e),o=e=>(n[e]||"").split(", "),r=o("transitionDelay"),i=o("transitionDuration"),s=Wi(r,i),a=o("animationDelay"),l=o("animationDuration"),c=Wi(a,l);let u=null,d=0,f=0;t===Ai?s>0&&(u=Ai,d=s,f=i.length):"animation"===t?c>0&&(u="animation",d=c,f=l.length):(d=Math.max(s,c),u=d>0?s>c?Ai:"animation":null,f=u?u===Ai?i.length:l.length:0);const p=u===Ai&&/\b(transform|all)(,|$)/.test(o("transitionProperty").toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}(e,t);if(!s)return o();const c=s+"end";let u=0;const d=()=>{e.removeEventListener(c,f),i()},f=t=>{t.target===e&&++u>=l&&d()};setTimeout((()=>{uUi(t)+Ui(e[n]))))}function Ui(e){return"auto"===e?0:1e3*Number(e.slice(0,-1).replace(",","."))}const qi=Symbol("_vod"),zi=Symbol("_vsh"),Xi={beforeMount(e,{value:t},{transition:n}){e[qi]="none"===e.style.display?"":e.style.display,n&&t?n.beforeEnter(e):Ki(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:o}){!t!=!n&&(o?t?(o.beforeEnter(e),Ki(e,!0),o.enter(e)):o.leave(e,(()=>{Ki(e,!1)})):Ki(e,t))},beforeUnmount(e,{value:t}){Ki(e,t)}};function Ki(e,t){e.style.display=t?e[qi]:"none",e[zi]=!t}const Yi=Symbol(""),Gi=/(^|;)\s*display\s*:/;const Ji=/\s*!important$/;function Zi(e,t,n){if(p(n))n.forEach((n=>Zi(e,t,n)));else if(null==n&&(n=""),n=ls(n),t.startsWith("--"))e.setProperty(t,n);else{const o=function(e,t){const n=es[t];if(n)return n;let o=O(t);if("filter"!==o&&o in e)return es[t]=o;o=A(o);for(let r=0;re.replace(me,((e,t)=>{if(!t)return e;if(1===ss)return`${t}${is}`;const n=function(e,t){const n=Math.pow(10,t+1),o=Math.floor(e*n);return 10*Math.round(o/10)/n}(parseFloat(t)*ss,as);return 0===n?"0":`${n}${is}`})));var is,ss,as;const ls=e=>v(e)?rs(e):e,cs="http://www.w3.org/1999/xlink";const us=Symbol("_vei");function ds(e,t,n,o,r=null){const i=e[us]||(e[us]={}),s=i[t];if(o&&s)s.value=o;else{const[n,a]=function(e){let t;if(fs.test(e)){let n;for(t={};n=e.match(fs);)e=e.slice(0,e.length-n[0].length),t[n[0].toLowerCase()]=!0}return[":"===e[2]?e.slice(3):$(e.slice(2)),t]}(t);if(o){const s=i[t]=function(e,t){const n=e=>{if(e._vts){if(e._vts<=n.attached)return}else e._vts=Date.now();const o=t&&t.proxy,r=o&&o.$nne,{value:i}=n;if(r&&p(i)){const n=gs(e,i);for(let o=0;ops||(hs.then((()=>ps=0)),ps=Date.now()))(),n}(o,r);!function(e,t,n,o){e.addEventListener(t,n,o)}(e,n,s,a)}else s&&(!function(e,t,n,o){e.removeEventListener(t,n,o)}(e,n,s,a),i[t]=void 0)}}const fs=/(?:Once|Passive|Capture)$/;let ps=0;const hs=Promise.resolve();function gs(e,t){if(p(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map((e=>{const t=t=>!t._stopped&&e&&e(t);return t.__wwe=e.__wwe,t}))}return t}const ms=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123;const vs=["ctrl","shift","alt","meta"],ys={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&0!==e.button,middle:e=>"button"in e&&1!==e.button,right:e=>"button"in e&&2!==e.button,exact:(e,t)=>vs.some((n=>e[`${n}Key`]&&!t.includes(n)))},bs=(e,t)=>{const n=e._withMods||(e._withMods={}),o=t.join(".");return n[o]||(n[o]=(n,...o)=>{for(let e=0;e{if(0===t.indexOf("change:"))return function(e,t,n,o=null){if(!n||!o)return;const r=t.replace("change:",""),{attrs:i}=o,s=i[r],a=(e.__wxsProps||(e.__wxsProps={}))[r];if(a===s)return;e.__wxsProps[r]=s;const l=o.proxy;Sn((()=>{n(s,a,l.$gcd(l,!0),l.$gcd(l,!1))}))}(e,t,o,s);const d="svg"===r;"class"===t?function(e,t,n){const{__wxsAddClass:o,__wxsRemoveClass:r}=e;r&&r.length&&(t=(t||"").split(/\s+/).filter((e=>-1===r.indexOf(e))).join(" "),r.length=0),o&&o.length&&(t=(t||"")+" "+o.join(" "));const i=e[Pi];i&&(t=(t?[t,...i]:[...i]).join(" ")),null==t?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}(e,o,d):"style"===t?function(e,t,n){const o=e.style,r=v(n);let i=!1;if(n&&!r){if(t)if(v(t))for(const e of t.split(";")){const t=e.slice(0,e.indexOf(":")).trim();null==n[t]&&Zi(o,t,"")}else for(const e in t)null==n[e]&&Zi(o,e,"");for(const e in n)"display"===e&&(i=!0),Zi(o,e,n[e])}else if(r){if(t!==n){const e=o[Yi];e&&(n+=";"+e),o.cssText=n,i=Gi.test(n)}}else t&&e.removeAttribute("style");qi in e&&(e[qi]=i?o.display:"",e[zi]&&(o.display="none"));const{__wxsStyle:s}=e;if(s)for(const a in s)Zi(o,a,s[a])}(e,n,o):a(t)?l(t)||ds(e,t,0,o,s):("."===t[0]?(t=t.slice(1),1):"^"===t[0]?(t=t.slice(1),0):function(e,t,n,o){if(o)return"innerHTML"===t||"textContent"===t||!!(t in e&&ms(t)&&m(n));if("spellcheck"===t||"draggable"===t||"translate"===t)return!1;if("form"===t)return!1;if("list"===t&&"INPUT"===e.tagName)return!1;if("type"===t&&"TEXTAREA"===e.tagName)return!1;if("width"===t||"height"===t){const t=e.tagName;if("IMG"===t||"VIDEO"===t||"CANVAS"===t||"SOURCE"===t)return!1}if(ms(t)&&v(n))return!1;return t in e}(e,t,o,d))?function(e,t,n,o,r,i,s){if("innerHTML"===t||"textContent"===t)return o&&s(o,r,i),void(e[t]=null==n?"":n);const a=e.tagName;if("value"===t&&"PROGRESS"!==a&&!a.includes("-")){const o=null==n?"":n;return("OPTION"===a?e.getAttribute("value")||"":e.value)===o&&"_value"in e||(e.value=o),null==n&&e.removeAttribute(t),void(e._value=n)}let l=!1;if(""===n||null==n){const o=typeof e[t];"boolean"===o?n=z(n):null==n&&"string"===o?(n="",l=!0):"number"===o&&(n=0,l=!0)}try{e[t]=n}catch(c){}l&&e.removeAttribute(t)}(e,t,o,i,s,c,u):("true-value"===t?e._trueValue=o:"false-value"===t&&(e._falseValue=o),function(e,t,n,o,r){if(o&&t.startsWith("xlink:"))null==n?e.removeAttributeNS(cs,t.slice(6,t.length)):e.setAttributeNS(cs,t,n);else{const o=q(t);null==n||o&&!z(n)?e.removeAttribute(t):e.setAttribute(t,o?"":n)}}(e,t,o,d))},forcePatchProp:(e,t)=>0===t.indexOf("change:")||("class"===t&&e.__wxsClassChanged?(e.__wxsClassChanged=!1,!0):!("style"!==t||!e.__wxsStyleChanged)&&(e.__wxsStyleChanged=!1,!0))},$i);let ws;const xs=(...e)=>{const t=(ws||(ws=Rr(_s))).createApp(...e),{mount:n}=t;return t.mount=e=>{const o=function(e){if(v(e)){return document.querySelector(e)}return e} -/*! - * vue-router v4.4.4 - * (c) 2024 Eduardo San Martin Morote - * @license MIT - */(e);if(!o)return;const r=t._component;m(r)||r.render||r.template||(r.template=o.innerHTML),o.innerHTML="";const i=n(o,!1,function(e){if(e instanceof SVGElement)return"svg";if("function"==typeof MathMLElement&&e instanceof MathMLElement)return"mathml"}(o));return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),i},t};const Ss="undefined"!=typeof document;function Ts(e){return"object"==typeof e||"displayName"in e||"props"in e||"__vccOpts"in e}const Cs=Object.assign;function Es(e,t){const n={};for(const o in t){const r=t[o];n[o]=Os(r)?r.map(e):e(r)}return n}const ks=()=>{},Os=Array.isArray,Ls=/#/g,$s=/&/g,As=/\//g,Ps=/=/g,Rs=/\?/g,Bs=/\+/g,Ns=/%5B/g,js=/%5D/g,Ms=/%5E/g,Is=/%60/g,Vs=/%7B/g,Fs=/%7C/g,Ds=/%7D/g,Hs=/%20/g;function Ws(e){return encodeURI(""+e).replace(Fs,"|").replace(Ns,"[").replace(js,"]")}function Us(e){return Ws(e).replace(Bs,"%2B").replace(Hs,"+").replace(Ls,"%23").replace($s,"%26").replace(Is,"`").replace(Vs,"{").replace(Ds,"}").replace(Ms,"^")}function qs(e){return null==e?"":function(e){return Ws(e).replace(Ls,"%23").replace(Rs,"%3F")}(e).replace(As,"%2F")}function zs(e){try{return decodeURIComponent(""+e)}catch(t){}return""+e}const Xs=/\/$/;function Ks(e,t,n="/"){let o,r={},i="",s="";const a=t.indexOf("#");let l=t.indexOf("?");return a=0&&(l=-1),l>-1&&(o=t.slice(0,l),i=t.slice(l+1,a>-1?a:t.length),r=e(i)),a>-1&&(o=o||t.slice(0,a),s=t.slice(a,t.length)),o=function(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),o=e.split("/"),r=o[o.length-1];".."!==r&&"."!==r||o.push("");let i,s,a=n.length-1;for(i=0;i1&&a--}return n.slice(0,a).join("/")+"/"+o.slice(i).join("/")}(null!=o?o:t,n),{fullPath:o+(i&&"?")+i+s,path:o,query:r,hash:zs(s)}}function Ys(e,t){return t&&e.toLowerCase().startsWith(t.toLowerCase())?e.slice(t.length)||"/":e}function Gs(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Js(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!Zs(e[n],t[n]))return!1;return!0}function Zs(e,t){return Os(e)?Qs(e,t):Os(t)?Qs(t,e):e===t}function Qs(e,t){return Os(t)?e.length===t.length&&e.every(((e,n)=>e===t[n])):1===e.length&&e[0]===t}const ea={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var ta,na,oa,ra;function ia(e){if(!e)if(Ss){const t=document.querySelector("base");e=(e=t&&t.getAttribute("href")||"/").replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return"/"!==e[0]&&"#"!==e[0]&&(e="/"+e),e.replace(Xs,"")}(na=ta||(ta={})).pop="pop",na.push="push",(ra=oa||(oa={})).back="back",ra.forward="forward",ra.unknown="";const sa=/^[^#]+#/;function aa(e,t){return e.replace(sa,"#")+t}const la=()=>({left:window.scrollX,top:window.scrollY});function ca(e){let t;if("el"in e){const n=e.el,o="string"==typeof n&&n.startsWith("#"),r="string"==typeof n?o?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=function(e,t){const n=document.documentElement.getBoundingClientRect(),o=e.getBoundingClientRect();return{behavior:t.behavior,left:o.left-n.left-(t.left||0),top:o.top-n.top-(t.top||0)}}(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(null!=t.left?t.left:window.scrollX,null!=t.top?t.top:window.scrollY)}function ua(e,t){return(history.state?history.state.position-t:-1)+e}const da=new Map;function fa(e,t){const{pathname:n,search:o,hash:r}=t,i=e.indexOf("#");if(i>-1){let t=r.includes(e.slice(i))?e.slice(i).length:1,n=r.slice(t);return"/"!==n[0]&&(n="/"+n),Ys(n,"")}return Ys(n,e)+o+r}function pa(e,t,n,o=!1,r=!1){return{back:e,current:t,forward:n,replaced:o,position:window.history.length,scroll:r?la():null}}function ha(e){const{history:t,location:n}=window,o={value:fa(e,n)},r={value:t.state};function i(o,i,s){const a=e.indexOf("#"),l=a>-1?(n.host&&document.querySelector("base")?e:e.slice(a))+o:location.protocol+"//"+location.host+e+o;try{t[s?"replaceState":"pushState"](i,"",l),r.value=i}catch(c){console.error(c),n[s?"replace":"assign"](l)}}return r.value||i(o.value,{back:null,current:o.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0),{location:o,state:r,push:function(e,n){const s=Cs({},r.value,t.state,{forward:e,scroll:la()});i(s.current,s,!0),i(e,Cs({},pa(o.value,e,null),{position:s.position+1},n),!1),o.value=e},replace:function(e,n){i(e,Cs({},t.state,pa(r.value.back,e,r.value.forward,!0),n,{position:r.value.position}),!0),o.value=e}}}function ga(e){const t=ha(e=ia(e)),n=function(e,t,n,o){let r=[],i=[],s=null;const a=({state:i})=>{const a=fa(e,location),l=n.value,c=t.value;let u=0;if(i){if(n.value=a,t.value=i,s&&s===l)return void(s=null);u=c?i.position-c.position:0}else o(a);r.forEach((e=>{e(n.value,l,{delta:u,type:ta.pop,direction:u?u>0?oa.forward:oa.back:oa.unknown})}))};function l(){const{history:e}=window;e.state&&e.replaceState(Cs({},e.state,{scroll:la()}),"")}return window.addEventListener("popstate",a),window.addEventListener("beforeunload",l,{passive:!0}),{pauseListeners:function(){s=n.value},listen:function(e){r.push(e);const t=()=>{const t=r.indexOf(e);t>-1&&r.splice(t,1)};return i.push(t),t},destroy:function(){for(const e of i)e();i=[],window.removeEventListener("popstate",a),window.removeEventListener("beforeunload",l)}}}(e,t.state,t.location,t.replace);const o=Cs({location:"",base:e,go:function(e,t=!0){t||n.pauseListeners(),history.go(e)},createHref:aa.bind(null,e)},t,n);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>t.state.value}),o}function ma(e){return"string"==typeof e||"symbol"==typeof e}const va=Symbol("");var ya,ba;function _a(e,t){return Cs(new Error,{type:e,[va]:!0},t)}function wa(e,t){return e instanceof Error&&va in e&&(null==t||!!(e.type&t))}(ba=ya||(ya={}))[ba.aborted=4]="aborted",ba[ba.cancelled=8]="cancelled",ba[ba.duplicated=16]="duplicated";const xa={sensitive:!1,strict:!1,start:!0,end:!0},Sa=/[.+*?^${}()[\]/\\]/g;function Ta(e,t){let n=0;for(;nt.length?1===t.length&&80===t[0]?1:-1:0}function Ca(e,t){let n=0;const o=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const ka={type:0,value:""},Oa=/[a-zA-Z0-9_]/;function La(e,t,n){const o=function(e,t){const n=Cs({},xa,t),o=[];let r=n.start?"^":"";const i=[];for(const l of e){const e=l.length?[]:[90];n.strict&&!l.length&&(r+="/");for(let t=0;t1&&("*"===a||"+"===a)&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:c,regexp:u,repeatable:"*"===a||"+"===a,optional:"*"===a||"?"===a})):t("Invalid state to consume buffer"),c="")}function f(){c+=a}for(;l{i(f)}:ks}function i(e){if(ma(e)){const t=o.get(e);t&&(o.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(i),t.alias.forEach(i))}else{const t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&o.delete(e.record.name),e.children.forEach(i),e.alias.forEach(i))}}function s(e){const t=function(e,t){let n=0,o=t.length;for(;n!==o;){const r=n+o>>1;Ca(e,t[r])<0?o=r:n=r+1}const r=function(e){let t=e;for(;t=t.parent;)if(ja(t)&&0===Ca(e,t))return t;return}(e);r&&(o=t.lastIndexOf(r,o-1));return o}(e,n);n.splice(t,0,e),e.record.name&&!Ra(e)&&o.set(e.record.name,e)}return t=Na({strict:!1,end:!0,sensitive:!1},t),e.forEach((e=>r(e))),{addRoute:r,resolve:function(e,t){let r,i,s,a={};if("name"in e&&e.name){if(r=o.get(e.name),!r)throw _a(1,{location:e});s=r.record.name,a=Cs(Aa(t.params,r.keys.filter((e=>!e.optional)).concat(r.parent?r.parent.keys.filter((e=>e.optional)):[]).map((e=>e.name))),e.params&&Aa(e.params,r.keys.map((e=>e.name)))),i=r.stringify(a)}else if(null!=e.path)i=e.path,r=n.find((e=>e.re.test(i))),r&&(a=r.parse(i),s=r.record.name);else{if(r=t.name?o.get(t.name):n.find((e=>e.re.test(t.path))),!r)throw _a(1,{location:e,currentLocation:t});s=r.record.name,a=Cs({},t.params,e.params),i=r.stringify(a)}const l=[];let c=r;for(;c;)l.unshift(c.record),c=c.parent;return{name:s,path:i,params:a,matched:l,meta:Ba(l)}},removeRoute:i,clearRoutes:function(){n.length=0,o.clear()},getRoutes:function(){return n},getRecordMatcher:function(e){return o.get(e)}}}function Aa(e,t){const n={};for(const o of t)o in e&&(n[o]=e[o]);return n}function Pa(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const o in e.components)t[o]="object"==typeof n?n[o]:n;return t}function Ra(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Ba(e){return e.reduce(((e,t)=>Cs(e,t.meta)),{})}function Na(e,t){const n={};for(const o in e)n[o]=o in t?t[o]:e[o];return n}function ja({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Ma(e){const t={};if(""===e||"?"===e)return t;const n=("?"===e[0]?e.slice(1):e).split("&");for(let o=0;oe&&Us(e))):[o&&Us(o)]).forEach((e=>{void 0!==e&&(t+=(t.length?"&":"")+n,null!=e&&(t+="="+e))}))}return t}function Va(e){const t={};for(const n in e){const o=e[n];void 0!==o&&(t[n]=Os(o)?o.map((e=>null==e?null:""+e)):null==o?o:""+o)}return t}const Fa=Symbol(""),Da=Symbol(""),Ha=Symbol(""),Wa=Symbol(""),Ua=Symbol("");function qa(){let e=[];return{add:function(t){return e.push(t),()=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)}},list:()=>e.slice(),reset:function(){e=[]}}}function za(e,t,n,o,r,i=(e=>e())){const s=o&&(o.enterCallbacks[r]=o.enterCallbacks[r]||[]);return()=>new Promise(((a,l)=>{const c=e=>{var i;!1===e?l(_a(4,{from:n,to:t})):e instanceof Error?l(e):"string"==typeof(i=e)||i&&"object"==typeof i?l(_a(2,{from:t,to:e})):(s&&o.enterCallbacks[r]===s&&"function"==typeof e&&s.push(e),a())},u=i((()=>e.call(o&&o.instances[r],t,n,c)));let d=Promise.resolve(u);e.length<3&&(d=d.then(c)),d.catch((e=>l(e)))}))}function Xa(e,t,n,o,r=(e=>e())){const i=[];for(const s of e)for(const e in s.components){let a=s.components[e];if("beforeRouteEnter"===t||s.instances[e])if(Ts(a)){const l=(a.__vccOpts||a)[t];l&&i.push(za(l,n,o,s,e,r))}else{let l=a();i.push((()=>l.then((i=>{if(!i)throw new Error(`Couldn't resolve component "${e}" at "${s.path}"`);const a=(l=i).__esModule||"Module"===l[Symbol.toStringTag]||l.default&&Ts(l.default)?i.default:i;var l;s.mods[e]=i,s.components[e]=a;const c=(a.__vccOpts||a)[t];return c&&za(c,n,o,s,e,r)()}))))}}return i}function Ka(e){const t=vr(Ha),n=vr(Wa),o=Ci((()=>{const n=an(e.to);return t.resolve(n)})),r=Ci((()=>{const{matched:e}=o.value,{length:t}=e,r=e[t-1],i=n.matched;if(!r||!i.length)return-1;const s=i.findIndex(Gs.bind(null,r));if(s>-1)return s;const a=Ga(e[t-2]);return t>1&&Ga(r)===a&&i[i.length-1].path!==a?i.findIndex(Gs.bind(null,e[t-2])):s})),i=Ci((()=>r.value>-1&&function(e,t){for(const n in t){const o=t[n],r=e[n];if("string"==typeof o){if(o!==r)return!1}else if(!Os(r)||r.length!==o.length||o.some(((e,t)=>e!==r[t])))return!1}return!0}(n.params,o.value.params))),s=Ci((()=>r.value>-1&&r.value===n.matched.length-1&&Js(n.params,o.value.params)));return{route:o,href:Ci((()=>o.value.href)),isActive:i,isExactActive:s,navigate:function(n={}){return function(e){if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)return;if(e.defaultPrevented)return;if(void 0!==e.button&&0!==e.button)return;if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}e.preventDefault&&e.preventDefault();return!0}(n)?t[an(e.replace)?"replace":"push"](an(e.to)).catch(ks):Promise.resolve()}}}const Ya=vo({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:Ka,setup(e,{slots:t}){const n=Ft(Ka(e)),{options:o}=vr(Ha),r=Ci((()=>({[Ja(e.activeClass,o.linkActiveClass,"router-link-active")]:n.isActive,[Ja(e.exactActiveClass,o.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive})));return()=>{const o=t.default&&t.default(n);return e.custom?o:Ei("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},o)}}});function Ga(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Ja=(e,t,n)=>null!=e?e:null!=t?t:n;function Za(e,t){if(!e)return null;const n=e(t);return 1===n.length?n[0]:n}const Qa=vo({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const o=vr(Ua),r=Ci((()=>e.route||o.value)),i=vr(Da,0),s=Ci((()=>{let e=an(i);const{matched:t}=r.value;let n;for(;(n=t[e])&&!n.components;)e++;return e})),a=Ci((()=>r.value.matched[s.value]));mr(Da,Ci((()=>s.value+1))),mr(Fa,a),mr(Ua,r);const l=nn();return Zn((()=>[l.value,a.value,e.name]),(([e,t,n],[o,r,i])=>{t&&(t.instances[n]=e,r&&r!==t&&e&&e===o&&(t.leaveGuards.size||(t.leaveGuards=r.leaveGuards),t.updateGuards.size||(t.updateGuards=r.updateGuards))),!e||!t||r&&Gs(t,r)&&o||(t.enterCallbacks[n]||[]).forEach((t=>t(e)))}),{flush:"post"}),()=>{const o=r.value,i=e.name,s=a.value,c=s&&s.components[i];if(!c)return Za(n.default,{Component:c,route:o});const u=s.props[i],d=u?!0===u?o.params:"function"==typeof u?u(o):u:null,f=Ei(c,Cs({},d,t,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(s.instances[i]=null)},ref:l}));return Za(n.default,{Component:f,route:o})||f}}});function el(e){const t=$a(e.routes,e),n=e.parseQuery||Ma,o=e.stringifyQuery||Ia,r=e.history,i=qa(),s=qa(),a=qa(),l=on(ea);let c=ea;Ss&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=Es.bind(null,(e=>""+e)),d=Es.bind(null,qs),f=Es.bind(null,zs);function p(e,i){if(i=Cs({},i||l.value),"string"==typeof e){const o=Ks(n,e,i.path),s=t.resolve({path:o.path},i),a=r.createHref(o.fullPath);return Cs(o,s,{params:f(s.params),hash:zs(o.hash),redirectedFrom:void 0,href:a})}let s;if(null!=e.path)s=Cs({},e,{path:Ks(n,e.path,i.path).path});else{const t=Cs({},e.params);for(const e in t)null==t[e]&&delete t[e];s=Cs({},e,{params:d(t)}),i.params=d(i.params)}const a=t.resolve(s,i),c=e.hash||"";a.params=u(f(a.params));const p=function(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}(o,Cs({},e,{hash:(h=c,Ws(h).replace(Vs,"{").replace(Ds,"}").replace(Ms,"^")),path:a.path}));var h;const g=r.createHref(p);return Cs({fullPath:p,hash:c,query:o===Ia?Va(e.query):e.query||{}},a,{redirectedFrom:void 0,href:g})}function h(e){return"string"==typeof e?Ks(n,e,l.value.path):Cs({},e)}function g(e,t){if(c!==e)return _a(8,{from:t,to:e})}function m(e){return y(e)}function v(e){const t=e.matched[e.matched.length-1];if(t&&t.redirect){const{redirect:n}=t;let o="function"==typeof n?n(e):n;return"string"==typeof o&&(o=o.includes("?")||o.includes("#")?o=h(o):{path:o},o.params={}),Cs({query:e.query,hash:e.hash,params:null!=o.path?{}:e.params},o)}}function y(e,t){const n=c=p(e),r=l.value,i=e.state,s=e.force,a=!0===e.replace,u=v(n);if(u)return y(Cs(h(u),{state:"object"==typeof u?Cs({},i,u.state):i,force:s,replace:a}),t||n);const d=n;let f;return d.redirectedFrom=t,!s&&function(e,t,n){const o=t.matched.length-1,r=n.matched.length-1;return o>-1&&o===r&&Gs(t.matched[o],n.matched[r])&&Js(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}(o,r,n)&&(f=_a(16,{to:d,from:r}),A(r,r,!0,!1)),(f?Promise.resolve(f):w(d,r)).catch((e=>wa(e)?wa(e,2)?e:$(e):L(e,d,r))).then((e=>{if(e){if(wa(e,2))return y(Cs({replace:a},h(e.to),{state:"object"==typeof e.to?Cs({},i,e.to.state):i,force:s}),t||d)}else e=S(d,r,!0,a,i);return x(d,r,e),e}))}function b(e,t){const n=g(e,t);return n?Promise.reject(n):Promise.resolve()}function _(e){const t=B.values().next().value;return t&&"function"==typeof t.runWithContext?t.runWithContext(e):e()}function w(e,t){let n;const[o,r,a]=function(e,t){const n=[],o=[],r=[],i=Math.max(t.matched.length,e.matched.length);for(let s=0;sGs(e,i)))?o.push(i):n.push(i));const a=e.matched[s];a&&(t.matched.find((e=>Gs(e,a)))||r.push(a))}return[n,o,r]}(e,t);n=Xa(o.reverse(),"beforeRouteLeave",e,t);for(const i of o)i.leaveGuards.forEach((o=>{n.push(za(o,e,t))}));const l=b.bind(null,e,t);return n.push(l),j(n).then((()=>{n=[];for(const o of i.list())n.push(za(o,e,t));return n.push(l),j(n)})).then((()=>{n=Xa(r,"beforeRouteUpdate",e,t);for(const o of r)o.updateGuards.forEach((o=>{n.push(za(o,e,t))}));return n.push(l),j(n)})).then((()=>{n=[];for(const o of a)if(o.beforeEnter)if(Os(o.beforeEnter))for(const r of o.beforeEnter)n.push(za(r,e,t));else n.push(za(o.beforeEnter,e,t));return n.push(l),j(n)})).then((()=>(e.matched.forEach((e=>e.enterCallbacks={})),n=Xa(a,"beforeRouteEnter",e,t,_),n.push(l),j(n)))).then((()=>{n=[];for(const o of s.list())n.push(za(o,e,t));return n.push(l),j(n)})).catch((e=>wa(e,8)?e:Promise.reject(e)))}function x(e,t,n){a.list().forEach((o=>_((()=>o(e,t,n)))))}function S(e,t,n,o,i){const s=g(e,t);if(s)return s;const a=t===ea,c=Ss?history.state:{};n&&(o||a?r.replace(e.fullPath,Cs({scroll:a&&c&&c.scroll},i)):r.push(e.fullPath,i)),l.value=e,A(e,t,n,a),$()}let T;function C(){T||(T=r.listen(((e,t,n)=>{if(!N.listening)return;const o=p(e),i=v(o);if(i)return void y(Cs(i,{replace:!0}),o).catch(ks);c=o;const s=l.value;var a,u;Ss&&(a=ua(s.fullPath,n.delta),u=la(),da.set(a,u)),w(o,s).catch((e=>wa(e,12)?e:wa(e,2)?(y(e.to,o).then((e=>{wa(e,20)&&!n.delta&&n.type===ta.pop&&r.go(-1,!1)})).catch(ks),Promise.reject()):(n.delta&&r.go(-n.delta,!1),L(e,o,s)))).then((e=>{(e=e||S(o,s,!1))&&(n.delta&&!wa(e,8)?r.go(-n.delta,!1):n.type===ta.pop&&wa(e,20)&&r.go(-1,!1)),x(o,s,e)})).catch(ks)})))}let E,k=qa(),O=qa();function L(e,t,n){$(e);const o=O.list();return o.length?o.forEach((o=>o(e,t,n))):console.error(e),Promise.reject(e)}function $(e){return E||(E=!e,C(),k.list().forEach((([t,n])=>e?n(e):t())),k.reset()),e}function A(t,n,o,r){const{scrollBehavior:i}=e;if(!Ss||!i)return Promise.resolve();const s=!o&&function(e){const t=da.get(e);return da.delete(e),t}(ua(t.fullPath,0))||(r||!o)&&history.state&&history.state.scroll||null;return Sn().then((()=>i(t,n,s))).then((e=>e&&ca(e))).catch((e=>L(e,t,n)))}const P=e=>r.go(e);let R;const B=new Set,N={currentRoute:l,listening:!0,addRoute:function(e,n){let o,r;return ma(e)?(o=t.getRecordMatcher(e),r=n):r=e,t.addRoute(r,o)},removeRoute:function(e){const n=t.getRecordMatcher(e);n&&t.removeRoute(n)},clearRoutes:t.clearRoutes,hasRoute:function(e){return!!t.getRecordMatcher(e)},getRoutes:function(){return t.getRoutes().map((e=>e.record))},resolve:p,options:e,push:m,replace:function(e){return m(Cs(h(e),{replace:!0}))},go:P,back:()=>P(-1),forward:()=>P(1),beforeEach:i.add,beforeResolve:s.add,afterEach:a.add,onError:O.add,isReady:function(){return E&&l.value!==ea?Promise.resolve():new Promise(((e,t)=>{k.add([e,t])}))},install(e){e.component("RouterLink",Ya),e.component("RouterView",Qa),e.config.globalProperties.$router=this,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>an(l)}),Ss&&!R&&l.value===ea&&(R=!0,m(r.location).catch((e=>{})));const t={};for(const o in ea)Object.defineProperty(t,o,{get:()=>l.value[o],enumerable:!0});e.provide(Ha,this),e.provide(Wa,Dt(t)),e.provide(Ua,l);const n=e.unmount;B.add(e),e.unmount=function(){B.delete(e),B.size<1&&(c=ea,T&&T(),T=null,l.value=ea,R=!1,E=!1),n()}}};function j(e){return e.reduce(((e,t)=>e.then((()=>_(t)))),Promise.resolve())}return N}function tl(e){return vr(Wa)}const nl=["{","}"];const ol=/^(?:\d)+/,rl=/^(?:\w)+/;const il=Object.prototype.hasOwnProperty,sl=(e,t)=>il.call(e,t),al=new class{constructor(){this._caches=Object.create(null)}interpolate(e,t,n=nl){if(!t)return[e];let o=this._caches[e];return o||(o=function(e,[t,n]){const o=[];let r=0,i="";for(;r-1?"zh-Hans":e.indexOf("-hant")>-1?"zh-Hant":(n=e,["-tw","-hk","-mo","-cht"].find((e=>-1!==n.indexOf(e)))?"zh-Hant":"zh-Hans");var n;let o=["en","fr","es"];t&&Object.keys(t).length>0&&(o=Object.keys(t));const r=function(e,t){return t.find((t=>0===e.indexOf(t)))}(e,o);return r||void 0}class cl{constructor({locale:e,fallbackLocale:t,messages:n,watcher:o,formater:r}){this.locale="en",this.fallbackLocale="en",this.message={},this.messages={},this.watchers=[],t&&(this.fallbackLocale=t),this.formater=r||al,this.messages=n||{},this.setLocale(e||"en"),o&&this.watchLocale(o)}setLocale(e){const t=this.locale;this.locale=ll(e,this.messages)||this.fallbackLocale,this.messages[this.locale]||(this.messages[this.locale]={}),this.message=this.messages[this.locale],t!==this.locale&&this.watchers.forEach((e=>{e(this.locale,t)}))}getLocale(){return this.locale}watchLocale(e){const t=this.watchers.push(e)-1;return()=>{this.watchers.splice(t,1)}}add(e,t,n=!0){const o=this.messages[e];o?n?Object.assign(o,t):Object.keys(t).forEach((e=>{sl(o,e)||(o[e]=t[e])})):this.messages[e]=t}f(e,t,n){return this.formater.interpolate(e,t,n).join("")}t(e,t,n){let o=this.message;return"string"==typeof t?(t=ll(t,this.messages))&&(o=this.messages[t]):n=t,sl(o,e)?this.formater.interpolate(o[e],n).join(""):(console.warn(`Cannot translate the value of keypath ${e}. Use the value of keypath as default.`),e)}}function ul(e,t={},n,o){if("string"!=typeof e){const n=[t,e];e=n[0],t=n[1]}"string"!=typeof e&&(e="undefined"!=typeof uni&&Du?Du():"undefined"!=typeof global&&global.getLocale?global.getLocale():"en"),"string"!=typeof n&&(n="undefined"!=typeof __uniConfig&&__uniConfig.fallbackLocale||"en");const r=new cl({locale:e,fallbackLocale:n,messages:t,watcher:o});let i=(e,t)=>{{let e=!1;i=function(t,n){const o=mp().$vm;return o&&(o.$locale,e||(e=!0,function(e,t){e.$watchLocale?e.$watchLocale((e=>{t.setLocale(e)})):e.$watch((()=>e.$locale),(e=>{t.setLocale(e)}))}(o,r))),r.t(t,n)}}return i(e,t)};return{i18n:r,f:(e,t,n)=>r.f(e,t,n),t:(e,t)=>i(e,t),add:(e,t,n=!0)=>r.add(e,t,n),watch:e=>r.watchLocale(e),getLocale:()=>r.getLocale(),setLocale:e=>r.setLocale(e)}}const dl=fe((()=>"undefined"!=typeof __uniConfig&&__uniConfig.locales&&!!Object.keys(__uniConfig.locales).length));let fl;function pl(){if(!fl){let e;if(e=navigator.cookieEnabled&&window.localStorage&&localStorage.UNI_LOCALE||__uniConfig.locale||navigator.language,fl=ul(e),dl()){const t=Object.keys(__uniConfig.locales||{});t.length&&t.forEach((e=>fl.add(e,__uniConfig.locales[e]))),fl.setLocale(e)}}return fl}function hl(e,t,n){return t.reduce(((t,o,r)=>(t[e+o]=n[r],t)),{})}const gl=fe((()=>{const e="uni.async.",t=["error"];pl().add("en",hl(e,t,["The connection timed out, click the screen to try again."]),!1),pl().add("es",hl(e,t,["Se agotó el tiempo de conexión, haga clic en la pantalla para volver a intentarlo."]),!1),pl().add("fr",hl(e,t,["La connexion a expiré, cliquez sur l'écran pour réessayer."]),!1),pl().add("zh-Hans",hl(e,t,["连接服务器超时,点击屏幕重试"]),!1),pl().add("zh-Hant",hl(e,t,["連接服務器超時,點擊屏幕重試"]),!1)})),ml=fe((()=>{const e="uni.showModal.",t=["cancel","confirm"];pl().add("en",hl(e,t,["Cancel","OK"]),!1),pl().add("es",hl(e,t,["Cancelar","OK"]),!1),pl().add("fr",hl(e,t,["Annuler","OK"]),!1),pl().add("zh-Hans",hl(e,t,["取消","确定"]),!1),pl().add("zh-Hant",hl(e,t,["取消","確定"]),!1)})),vl=fe((()=>{const e="uni.video.",t=["danmu","volume"];pl().add("en",hl(e,t,["Danmu","Volume"]),!1),pl().add("es",hl(e,t,["Danmu","Volumen"]),!1),pl().add("fr",hl(e,t,["Danmu","Le Volume"]),!1),pl().add("zh-Hans",hl(e,t,["弹幕","音量"]),!1),pl().add("zh-Hant",hl(e,t,["彈幕","音量"]),!1)}));function yl(e){const t=new $e;return{on:(e,n)=>t.on(e,n),once:(e,n)=>t.once(e,n),off:(e,n)=>t.off(e,n),emit:(e,...n)=>t.emit(e,...n),subscribe(n,o,r=!1){t[r?"once":"on"](`${e}.${n}`,o)},unsubscribe(n,o){t.off(`${e}.${n}`,o)},subscribeHandler(n,o,r){t.emit(`${e}.${n}`,o,r)}}}let bl=1;const _l=Object.create(null);function wl(e,t){return e+"."+t}function xl(e,t,n){t=wl(e,t),_l[t]||(_l[t]=n)}function Sl({id:e,name:t,args:n},o){t=wl(o,t);const r=t=>{e&&ph.publishHandler("invokeViewApi."+e,t)},i=_l[t];i?i(n,r):r({})}const Tl=c(yl("service"),{invokeServiceMethod:(e,t,n)=>{const{subscribe:o,publishHandler:r}=ph,i=n?bl++:0;n&&o("invokeServiceApi."+i,n,!0),r("invokeServiceApi",{id:i,name:e,args:t})}}),Cl=ve(!0);let El;function kl(){El&&(clearTimeout(El),El=null)}let Ol=0,Ll=0;function $l(e){if(kl(),1!==e.touches.length)return;const{pageX:t,pageY:n}=e.touches[0];Ol=t,Ll=n,El=setTimeout((function(){const t=new CustomEvent("longpress",{bubbles:!0,cancelable:!0,target:e.target,currentTarget:e.currentTarget});t.touches=e.touches,t.changedTouches=e.changedTouches,e.target.dispatchEvent(t)}),350)}function Al(e){if(!El)return;if(1!==e.touches.length)return kl();const{pageX:t,pageY:n}=e.touches[0];return Math.abs(t-Ol)>10||Math.abs(n-Ll)>10?kl():void 0}function Pl(e,t){const n=Number(e);return isNaN(n)?t:n}const Rl=()=>/^Apple/.test(navigator.vendor);function Bl(){const e=__uniConfig.globalStyle||{},t=Pl(e.rpxCalcMaxDeviceWidth,960),n=Pl(e.rpxCalcBaseDeviceWidth,375);function o(){let e=function(){const e=Rl()&&"number"==typeof window.orientation,t=e&&90===Math.abs(window.orientation);var n=e?Math[t?"max":"min"](screen.width,screen.height):screen.width;return e?Math.min(window.innerWidth,document.documentElement.clientWidth,n)||n:Math.min(window.innerWidth,document.documentElement.clientWidth)}();e=e<=t?e:n,document.documentElement.style.fontSize=e/23.4375+"px"}o(),document.addEventListener("DOMContentLoaded",o),window.addEventListener("load",o),window.addEventListener("resize",o),Rl()&&window.addEventListener("orientationchange",(()=>{o(),setTimeout(o,50)}))}function Nl(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var jl,Ml,Il=["top","left","right","bottom"],Vl={};function Fl(){return Ml="CSS"in window&&"function"==typeof CSS.supports?CSS.supports("top: env(safe-area-inset-top)")?"env":CSS.supports("top: constant(safe-area-inset-top)")?"constant":"":""}function Dl(){if(Ml="string"==typeof Ml?Ml:Fl()){var e=[],t=!1;try{var n=Object.defineProperty({},"passive",{get:function(){t={passive:!0}}});window.addEventListener("test",null,n)}catch(a){}var o=document.createElement("div");r(o,{position:"absolute",left:"0",top:"0",width:"0",height:"0",zIndex:"-1",overflow:"hidden",visibility:"hidden"}),Il.forEach((function(e){s(o,e)})),document.body.appendChild(o),i(),jl=!0}else Il.forEach((function(e){Vl[e]=0}));function r(e,t){var n=e.style;Object.keys(t).forEach((function(e){var o=t[e];n[e]=o}))}function i(t){t?e.push(t):e.forEach((function(e){e()}))}function s(e,n){var o=document.createElement("div"),s=document.createElement("div"),a=document.createElement("div"),l=document.createElement("div"),c={position:"absolute",width:"100px",height:"200px",boxSizing:"border-box",overflow:"hidden",paddingBottom:Ml+"(safe-area-inset-"+n+")"};r(o,c),r(s,c),r(a,{transition:"0s",animation:"none",width:"400px",height:"400px"}),r(l,{transition:"0s",animation:"none",width:"250%",height:"250%"}),o.appendChild(a),s.appendChild(l),e.appendChild(o),e.appendChild(s),i((function(){o.scrollTop=s.scrollTop=1e4;var e=o.scrollTop,r=s.scrollTop;function i(){this.scrollTop!==(this===o?e:r)&&(o.scrollTop=s.scrollTop=1e4,e=o.scrollTop,r=s.scrollTop,function(e){Wl.length||setTimeout((function(){var e={};Wl.forEach((function(t){e[t]=Vl[t]})),Wl.length=0,Ul.forEach((function(t){t(e)}))}),0);Wl.push(e)}(n))}o.addEventListener("scroll",i,t),s.addEventListener("scroll",i,t)}));var u=getComputedStyle(o);Object.defineProperty(Vl,n,{configurable:!0,get:function(){return parseFloat(u.paddingBottom)}})}}function Hl(e){return jl||Dl(),Vl[e]}var Wl=[];var Ul=[];const ql=Nl({get support(){return 0!=("string"==typeof Ml?Ml:Fl()).length},get top(){return Hl("top")},get left(){return Hl("left")},get right(){return Hl("right")},get bottom(){return Hl("bottom")},onChange:function(e){Fl()&&(jl||Dl(),"function"==typeof e&&Ul.push(e))},offChange:function(e){var t=Ul.indexOf(e);t>=0&&Ul.splice(t,1)}}),zl=bs((()=>{}),["prevent"]),Xl=bs((e=>{}),["stop"]);function Kl(e,t){return parseInt((e.getPropertyValue(t).match(/\d+/)||["0"])[0])}function Yl(){const e=Kl(document.documentElement.style,"--window-top");return e?e+ql.top:0}function Gl(e){const t=document.documentElement.style;Object.keys(e).forEach((n=>{t.setProperty(n,e[n])}))}function Jl(e){return Symbol(e)}function Zl(e){return e.$page}function Ql(e){return 0===e.tagName.indexOf("UNI-")}function ec(){{const{$pageInstance:e}=hi();return e&&lc(e.proxy)}}function tc(){const e=Cd(),t=e.length;if(t)return e[t-1]}function nc(){var e;const t=null==(e=tc())?void 0:e.$page;if(t)return t.meta}function oc(){const e=nc();return e?e.id:-1}function rc(){const e=tc();if(e)return e.$vm}const ic=["navigationBar","pullToRefresh"];function sc(e,t){const n=JSON.parse(JSON.stringify(__uniConfig.globalStyle||{})),o=c({id:t},n,e);ic.forEach((t=>{o[t]=c({},n[t],e[t])}));const{navigationBar:r}=o;return r.titleText&&r.titleImage&&(r.titleText=""),o}function ac(e,t,n,o,r,i){const{id:s,route:a}=o,l=Re(o.navigationBar,__uniConfig.themeConfig,i).titleColor;return{id:s,path:de(a),route:a,fullPath:t,options:n,meta:o,openType:e,eventChannel:r,statusBarStyle:"#ffffff"===l?"light":"dark"}}function lc(e){var t,n;return(null==(t=e.$page)?void 0:t.id)||(null==(n=e.$basePage)?void 0:n.id)}function cc(e,t,n){if(v(e))n=t,t=e,e=rc();else if("number"==typeof e){const t=Cd().find((t=>Zl(t).id===e));e=t?t.$vm:rc()}if(!e)return;const o=e.$[t];return"onBackPress"===t?o&&(r=o,i=n,r.map((e=>e(i)))).some((e=>!0===e)):o&&((e,t)=>{let n;for(let o=0;o{function s(){if((()=>{const{scrollHeight:e}=document.documentElement,t=window.innerHeight,o=window.scrollY,i=o>0&&e>t&&o+t+n>=e,s=Math.abs(e-fc)>n;return!i||r&&!s?(!i&&r&&(r=!1),!1):(fc=e,r=!0,!0)})())return t&&t(),i=!1,setTimeout((function(){i=!0}),350),!0}e&&e(window.pageYOffset),t&&i&&(s()||(dc=setTimeout(s,300))),o=!1};return function(){clearTimeout(dc),o||requestAnimationFrame(s),o=!0}}function hc(e,t){if(0===t.indexOf("/"))return t;if(0===t.indexOf("./"))return hc(e,t.slice(2));const n=t.split("/"),o=n.length;let r=0;for(;r0?e.split("/"):[];return i.splice(i.length-r-1,r+1),de(i.concat(n).join("/"))}function gc(e,t=!1){return t?__uniRoutes.find((t=>t.path===e||t.alias===e)):__uniRoutes.find((t=>t.path===e))}function mc(){Bl(),he(Ql),window.addEventListener("touchstart",$l,Cl),window.addEventListener("touchmove",Al,Cl),window.addEventListener("touchend",kl,Cl),window.addEventListener("touchcancel",kl,Cl)}class vc{constructor(e){this.$bindClass=!1,this.$bindStyle=!1,this.$vm=e,this.$el=function(e,t=!1){const{vnode:n}=e;if(ae(n.el))return t?n.el?[n.el]:[]:n.el;const{subTree:o}=e;if(16&o.shapeFlag){const e=o.children.filter((e=>e.el&&ae(e.el)));if(e.length>0)return t?e.map((e=>e.el)):e[0].el}return t?n.el?[n.el]:[]:n.el}(e.$),this.$el.getAttribute&&(this.$bindClass=!!this.$el.getAttribute("class"),this.$bindStyle=!!this.$el.getAttribute("style"))}selectComponent(e){if(!this.$el||!e)return;const t=wc(this.$el.querySelector(e));return t?yc(t,!1):void 0}selectAllComponents(e){if(!this.$el||!e)return[];const t=[],n=this.$el.querySelectorAll(e);for(let o=0;o-1&&t.splice(n,1)}const n=this.$el.__wxsRemoveClass||(this.$el.__wxsRemoveClass=[]);return-1===n.indexOf(e)&&(n.push(e),this.forceUpdate("class")),this}hasClass(e){return this.$el&&this.$el.classList.contains(e)}getDataset(){return this.$el&&this.$el.dataset}callMethod(e,t={}){const n=this.$vm[e];m(n)?n(JSON.parse(JSON.stringify(t))):this.$vm.ownerId&&ph.publishHandler("onWxsInvokeCallMethod",{nodeId:this.$el.__id,ownerId:this.$vm.ownerId,method:e,args:t})}requestAnimationFrame(e){return window.requestAnimationFrame(e)}getState(){return this.$el&&(this.$el.__wxsState||(this.$el.__wxsState={}))}triggerEvent(e,t={}){return this.$vm.$emit(e,t),this}getComputedStyle(e){if(this.$el){const t=window.getComputedStyle(this.$el);return e&&e.length?e.reduce(((e,n)=>(e[n]=t[n],e)),{}):t}return{}}setTimeout(e,t){return window.setTimeout(e,t)}clearTimeout(e){return window.clearTimeout(e)}getBoundingClientRect(){return this.$el.getBoundingClientRect()}}function yc(e,t=!0){if(t&&e&&(e=se(e.$)),e&&e.$el)return e.$el.__wxsComponentDescriptor||(e.$el.__wxsComponentDescriptor=new vc(e)),e.$el.__wxsComponentDescriptor}function bc(e,t){return yc(e,t)}function _c(e,t,n,o=!0){if(t){e.__instance||(e.__instance=!0,Object.defineProperty(e,"instance",{get:()=>bc(n.proxy,!1)}));const r=function(e,t,n=!0){if(!t)return!1;if(n&&e.length<2)return!1;const o=se(t);if(!o)return!1;const r=o.$.type;return!(!r.$wxs&&!r.$renderjs)&&o}(t,n,o);if(r)return[e,bc(r,!1)]}}function wc(e){if(e)return e.__vueParentComponent&&e.__vueParentComponent.proxy}function xc(e,t=!1){const{type:n,timeStamp:o,target:r,currentTarget:i}=e;let s,a;s=ye(t?r:function(e){for(;!Ql(e);)e=e.parentElement;return e}(r)),a=ye(i);const l={type:n,timeStamp:o,target:s,detail:{},currentTarget:a};return e instanceof CustomEvent&&S(e.detail)&&(l.detail=e.detail),e._stopped&&(l._stopped=!0),e.type.startsWith("touch")&&(l.touches=e.touches,l.changedTouches=e.changedTouches),function(e,t){c(e,{preventDefault:()=>t.preventDefault(),stopPropagation:()=>t.stopPropagation()})}(l,e),l}function Sc(e,t){return{force:1,identifier:0,clientX:e.clientX,clientY:e.clientY-t,pageX:e.pageX,pageY:e.pageY-t}}function Tc(e,t){const n=[];for(let o=0;o0===e.type.indexOf("mouse")||["contextmenu"].includes(e.type))(e))!function(e,t){const n=Yl();e.pageX=t.pageX,e.pageY=t.pageY-n,e.clientX=t.clientX,e.clientY=t.clientY-n,e.touches=e.changedTouches=[Sc(t,n)]}(i,e);else if((e=>"undefined"!=typeof TouchEvent&&e instanceof TouchEvent||0===e.type.indexOf("touch")||["longpress"].indexOf(e.type)>=0)(e)){const t=Yl();i.touches=Tc(e.touches,t),i.changedTouches=Tc(e.changedTouches,t)}else if((e=>!e.type.indexOf("key")&&e instanceof KeyboardEvent)(e)){["key","code"].forEach((t=>{Object.defineProperty(i,t,{get:()=>e[t]})}))}return _c(i,t,n)||[i]},createNativeEvent:xc},Symbol.toStringTag,{value:"Module"});function Ec(e){!function(e){const t=e.globalProperties;c(t,Cc),t.$gcd=bc}(e._context.config)}let kc=1;function Oc(e){return(e||oc())+".invokeViewApi"}const Lc=c(yl("view"),{invokeOnCallback:(e,t)=>hh.emit("api."+e,t),invokeViewMethod:(e,t,n,o)=>{const{subscribe:r,publishHandler:i}=hh,s=o?kc++:0;o&&r("invokeViewApi."+s,o,!0),i(Oc(n),{id:s,name:e,args:t},n)},invokeViewMethodKeepAlive:(e,t,n,o)=>{const{subscribe:r,unsubscribe:i,publishHandler:s}=hh,a=kc++,l="invokeViewApi."+a;return r(l,n),s(Oc(o),{id:a,name:e,args:t},o),()=>{i(l)}}});function $c(e){cc(tc(),"onResize",e),hh.invokeOnCallback("onWindowResize",e)}function Ac(e){const t=tc();cc(mp(),"onShow",e),cc(t,"onShow")}function Pc(){cc(mp(),"onHide"),cc(tc(),"onHide")}const Rc=["onPageScroll","onReachBottom"];function Bc(){Rc.forEach((e=>hh.subscribe(e,function(e){return(t,n)=>{cc(parseInt(n),e,t)}}(e))))}function Nc(){!function(){const{on:e}=hh;e("onResize",$c),e("onAppEnterForeground",Ac),e("onAppEnterBackground",Pc)}(),Bc()}function jc(){if(this.$route){const e=this.$route.meta;return e.eventChannel||(e.eventChannel=new Te(this.$page.id)),e.eventChannel}}function Mc(e){e._context.config.globalProperties.getOpenerEventChannel=jc}function Ic(){return{path:"",query:{},scene:1001,referrerInfo:{appId:"",extraData:{}}}}function Vc(e){return/^-?\d+[ur]px$/i.test(e)?e.replace(/(^-?\d+)[ur]px$/i,((e,t)=>`${Fu(parseFloat(t))}px`)):/^-?[\d\.]+$/.test(e)?`${e}px`:e||""}function Fc(e){const t=e.animation;if(!t||!t.actions||!t.actions.length)return;let n=0;const o=t.actions,r=t.actions.length;function i(){const t=o[n],s=t.option.transition,a=function(e){const t=["matrix","matrix3d","scale","scale3d","rotate3d","skew","translate","translate3d"],n=["scaleX","scaleY","scaleZ","rotate","rotateX","rotateY","rotateZ","skewX","skewY","translateX","translateY","translateZ"],o=["opacity","background-color"],r=["width","height","left","right","top","bottom"],i=e.animates,s=e.option,a=s.transition,l={},c=[];return i.forEach((e=>{let i=e.type,s=[...e.args];if(t.concat(n).includes(i))i.startsWith("rotate")||i.startsWith("skew")?s=s.map((e=>parseFloat(e)+"deg")):i.startsWith("translate")&&(s=s.map(Vc)),n.indexOf(i)>=0&&(s.length=1),c.push(`${i}(${s.join(",")})`);else if(o.concat(r).includes(s[0])){i=s[0];const e=s[1];l[i]=r.includes(i)?Vc(e):e}})),l.transform=l.webkitTransform=c.join(" "),l.transition=l.webkitTransition=Object.keys(l).map((e=>`${function(e){return e.replace(/[A-Z]/g,(e=>`-${e.toLowerCase()}`)).replace("webkit","-webkit")}(e)} ${a.duration}ms ${a.timingFunction} ${a.delay}ms`)).join(","),l.transformOrigin=l.webkitTransformOrigin=s.transformOrigin,l}(t);Object.keys(a).forEach((t=>{e.$el.style[t]=a[t]})),n+=1,n{i()}),0)}const Dc={props:["animation"],watch:{animation:{deep:!0,handler(){Fc(this)}}},mounted(){Fc(this)}},Hc=e=>{e.__reserved=!0;const{props:t,mixins:n}=e;return t&&t.animation||(n||(e.mixins=[])).push(Dc),Wc(e)},Wc=e=>(e.__reserved=!0,e.compatConfig={MODE:3},vo(e));function Uc(e){return e.__wwe=!0,e}function qc(e,t){return(n,o,r)=>{e.value&&t(n,function(e,t,n,o){let r;return r=ye(n),{type:t.__evName||o.type||e,timeStamp:t.timeStamp||0,target:r,currentTarget:r,detail:o}}(n,o,e.value,r||{}))}}const zc={hoverClass:{type:String,default:"none"},hoverStopPropagation:{type:Boolean,default:!1},hoverStartTime:{type:[Number,String],default:50},hoverStayTime:{type:[Number,String],default:400}};function Xc(e){const t=nn(!1);let n,o,r=!1;function i(){requestAnimationFrame((()=>{clearTimeout(o),o=setTimeout((()=>{t.value=!1}),parseInt(e.hoverStayTime))}))}function s(o){o._hoverPropagationStopped||e.hoverClass&&"none"!==e.hoverClass&&!e.disabled&&(e.hoverStopPropagation&&(o._hoverPropagationStopped=!0),r=!0,n=setTimeout((()=>{t.value=!0,r||i()}),parseInt(e.hoverStartTime)))}function a(){r=!1,t.value&&i()}function l(){a(),window.removeEventListener("mouseup",l)}return{hovering:t,binding:{onTouchstartPassive:Uc((function(e){e.touches.length>1||s(e)})),onMousedown:Uc((function(e){r||(s(e),window.addEventListener("mouseup",l))})),onTouchend:Uc((function(){a()})),onMouseup:Uc((function(){r&&l()})),onTouchcancel:Uc((function(){r=!1,t.value=!1,clearTimeout(n)}))}}}function Kc(e,t){return v(t)&&(t=[t]),t.reduce(((t,n)=>(e[n]&&(t[n]=!0),t)),Object.create(null))}const Yc=Jl("uf"),Gc=Jl("ul");function Jc(e,t,n){const o=ec();n&&!e||S(t)&&Object.keys(t).forEach((r=>{n?0!==r.indexOf("@")&&0!==r.indexOf("uni-")&&ph.on(`uni-${r}-${o}-${e}`,t[r]):0===r.indexOf("uni-")?ph.on(r,t[r]):e&&ph.on(`uni-${r}-${o}-${e}`,t[r])}))}function Zc(e,t,n){const o=ec();n&&!e||S(t)&&Object.keys(t).forEach((r=>{n?0!==r.indexOf("@")&&0!==r.indexOf("uni-")&&ph.off(`uni-${r}-${o}-${e}`,t[r]):0===r.indexOf("uni-")?ph.off(r,t[r]):e&&ph.off(`uni-${r}-${o}-${e}`,t[r])}))}const Qc=Hc({name:"Button",props:{id:{type:String,default:""},hoverClass:{type:String,default:"button-hover"},hoverStartTime:{type:[Number,String],default:20},hoverStayTime:{type:[Number,String],default:70},hoverStopPropagation:{type:Boolean,default:!1},disabled:{type:[Boolean,String],default:!1},formType:{type:String,default:""},openType:{type:String,default:""},loading:{type:[Boolean,String],default:!1},plain:{type:[Boolean,String],default:!1}},setup(e,{slots:t}){const n=nn(null),o=vr(Yc,!1),{hovering:r,binding:i}=Xc(e),s=Uc(((t,r)=>{if(e.disabled)return t.stopImmediatePropagation();r&&n.value.click();const i=e.formType;if(i){if(!o)return;"submit"===i?o.submit(t):"reset"===i&&o.reset(t)}else;})),a=vr(Gc,!1);return a&&(a.addHandler(s),Fo((()=>{a.removeHandler(s)}))),function(e,t){Jc(e.id,t),Zn((()=>e.id),((e,n)=>{Zc(n,t,!0),Jc(e,t,!0)})),Do((()=>{Zc(e.id,t)}))}(e,{"label-click":s}),()=>{const o=e.hoverClass,a=Kc(e,"disabled"),l=Kc(e,"loading"),c=Kc(e,"plain"),u=o&&"none"!==o;return ni("uni-button",ci({ref:n,onClick:s,id:e.id,class:u&&r.value?o:""},u&&i,a,l,c),[t.default&&t.default()],16,["onClick","id"])}}}),eu=Jl("upm");function tu(){return vr(eu)}function nu(e){const t=function(e){return Ft(function(e){if(history.state){const t=history.state.__type__;"redirectTo"!==t&&"reLaunch"!==t||0!==Cd().length||(e.isEntry=!0,e.isQuit=!0)}return e}(JSON.parse(JSON.stringify(sc(tl().meta,e)))))}(e);return mr(eu,t),t}function ou(){return tl()}function ru(){return history.state&&history.state.__id__||1}const iu=["GET","OPTIONS","HEAD","POST","PUT","DELETE","TRACE","CONNECT","PATCH"];function su(e){return function(){try{return e.apply(e,arguments)}catch(t){console.error(t)}}}let au=1;const lu={};function cu(e,t,n){if("number"==typeof e){const o=lu[e];if(o)return o.keepAlive||delete lu[e],o.callback(t,n)}return t}const uu="success",du="fail",fu="complete";function pu(e,t={},{beforeAll:n,beforeSuccess:o}={}){S(t)||(t={});const{success:r,fail:i,complete:s}=function(e){const t={};for(const n in e){const o=e[n];m(o)&&(t[n]=su(o),delete e[n])}return t}(t),a=m(r),l=m(i),c=m(s),u=au++;return function(e,t,n,o=!1){lu[e]={name:t,keepAlive:o,callback:n}}(u,e,(u=>{(u=u||{}).errMsg=function(e,t){return e&&-1!==e.indexOf(":fail")?t+e.substring(e.indexOf(":fail")):t+":ok"}(u.errMsg,e),m(n)&&n(u),u.errMsg===e+":ok"?(m(o)&&o(u,t),a&&r(u)):l&&i(u),c&&s(u)})),u}const hu="success",gu="fail",mu="complete",vu={},yu={};function bu(e,t){return function(n){return e(n,t)||n}}function _u(e,t,n){let o=!1;for(let r=0;re(t),catch(){}}}function wu(e,t={}){return[hu,gu,mu].forEach((n=>{const o=e[n];if(!p(o))return;const r=t[n];t[n]=function(e){_u(o,e,t).then((e=>m(r)&&r(e)||e))}})),t}function xu(e,t){const n=[];p(vu.returnValue)&&n.push(...vu.returnValue);const o=yu[e];return o&&p(o.returnValue)&&n.push(...o.returnValue),n.forEach((e=>{t=e(t)||t})),t}function Su(e){const t=Object.create(null);Object.keys(vu).forEach((e=>{"returnValue"!==e&&(t[e]=vu[e].slice())}));const n=yu[e];return n&&Object.keys(n).forEach((e=>{"returnValue"!==e&&(t[e]=(t[e]||[]).concat(n[e]))})),t}function Tu(e,t,n,o){const r=Su(e);if(r&&Object.keys(r).length){if(p(r.invoke)){return _u(r.invoke,n).then((n=>t(wu(Su(e),n),...o)))}return t(wu(r,n),...o)}return t(n,...o)}function Cu(e,t){return(n={},...o)=>function(e){return!(!S(e)||![uu,du,fu].find((t=>m(e[t]))))}(n)?xu(e,Tu(e,t,c({},n),o)):xu(e,new Promise(((r,i)=>{Tu(e,t,c({},n,{success:r,fail:i}),o)})))}function Eu(e,t,n,o={}){const r=t+":fail";let i="";return i=n?0===n.indexOf(r)?n:r+" "+n:r,delete o.errCode,cu(e,c({errMsg:i},o))}function ku(e,t,n,o){if(o&&o.beforeInvoke){const e=o.beforeInvoke(t);if(v(e))return e}const r=function(e,t){const n=e[0];if(!t||!t.formatArgs||!S(t.formatArgs)&&S(n))return;const o=t.formatArgs,r=Object.keys(o);for(let i=0;i{const r=pu(e,n,o),i=ku(0,[n],0,o);return i?Eu(r,e,i):t(n,{resolve:t=>function(e,t,n){return cu(e,c(n||{},{errMsg:t+":ok"}))}(r,e,t),reject:(t,n)=>Eu(r,e,function(e){return!e||v(e)?e:e.stack?("undefined"!=typeof globalThis&&globalThis.harmonyChannel||console.error(e.message+"\n"+e.stack),e.message):e}(t),n)})}}function Lu(e,t,n,o){return Cu(e,Ou(e,t,0,o))}function $u(e,t,n,o){return function(e,t,n,o){return(...e)=>{const n=ku(0,e,0,o);if(n)throw new Error(n);return t.apply(null,e)}}(0,t,0,o)}function Au(e,t,n,o){return Cu(e,function(e,t,n,o){return Ou(e,t,0,o)}(e,t,0,o))}let Pu=!1,Ru=0,Bu=0,Nu=960,ju=375,Mu=750;function Iu(){let e,t,n;{const{windowWidth:o,pixelRatio:r,platform:i}=function(){const e=Qd();return{platform:Ud?"ios":"other",pixelRatio:window.devicePixelRatio,windowWidth:e}}();e=o,t=r,n=i}Ru=e,Bu=t,Pu="ios"===n}function Vu(e,t){const n=Number(e);return isNaN(n)?t:n}const Fu=$u(0,((e,t)=>{if(0===Ru&&(Iu(),function(){const e=__uniConfig.globalStyle||{};Nu=Vu(e.rpxCalcMaxDeviceWidth,960),ju=Vu(e.rpxCalcBaseDeviceWidth,375),Mu=Vu(e.rpxCalcBaseDeviceWidth,750)}()),0===(e=Number(e)))return 0;let n=t||Ru;n=e===Mu||n<=Nu?n:ju;let o=e/750*n;return o<0&&(o=-o),o=Math.floor(o+1e-4),0===o&&(o=1!==Bu&&Pu?.5:1),e<0?-o:o})),Du=$u(0,(()=>{const e=mp();return e&&e.$vm?e.$vm.$locale:pl().getLocale()})),Hu={onUnhandledRejection:[],onPageNotFound:[],onError:[],onShow:[],onHide:[]};const Wu="json",Uu=["text","arraybuffer"],qu=encodeURIComponent;ArrayBuffer,Boolean;const zu={formatArgs:{method(e,t){var n,o;t.method=(n=(e||"").toUpperCase(),o=iu,n&&-1!==o.indexOf(n)?n:o[0])},data(e,t){t.data=e||""},url(e,t){t.method===iu[0]&&S(t.data)&&Object.keys(t.data).length&&(t.url=function(e,t){let n=e.split("#");const o=n[1]||"";n=n[0].split("?");let r=n[1]||"";e=n[0];const i=r.split("&").filter((e=>e)),s={};i.forEach((e=>{const t=e.split("=");s[t[0]]=t[1]}));for(const a in t)if(f(t,a)){let e=t[a];null==e?e="":S(e)&&(e=JSON.stringify(e)),s[qu(a)]=qu(e)}return r=Object.keys(s).map((e=>`${e}=${s[e]}`)).join("&"),e+(r?"?"+r:"")+(o?"#"+o:"")}(e,t.data))},header(e,t){const n=t.header=e||{};t.method!==iu[0]&&(Object.keys(n).find((e=>"content-type"===e.toLowerCase()))||(n["Content-Type"]="application/json"))},dataType(e,t){t.dataType=(e||Wu).toLowerCase()},responseType(e,t){t.responseType=(e||"").toLowerCase(),-1===Uu.indexOf(t.responseType)&&(t.responseType="text")}}},Xu={formatArgs:{header(e,t){t.header=e||{}}}};const Ku={url:{type:String,required:!0}},Yu=(Qu(["slide-in-right","slide-in-left","slide-in-top","slide-in-bottom","fade-in","zoom-out","zoom-fade-out","pop-in","none"]),Qu(["slide-out-right","slide-out-left","slide-out-top","slide-out-bottom","fade-out","zoom-in","zoom-fade-in","pop-out","none"]),nd("navigateTo")),Gu=nd("redirectTo"),Ju=nd("reLaunch"),Zu={formatArgs:{delta(e,t){e=parseInt(e+"")||1,t.delta=Math.min(Cd().length-1,e)}}};function Qu(e){return{animationType:{type:String,validator(t){if(t&&-1===e.indexOf(t))return"`"+t+"` is not supported for `animationType` (supported values are: `"+e.join("`|`")+"`)"}},animationDuration:{type:Number}}}let ed;function td(){ed=""}function nd(e){return{formatArgs:{url:od(e)},beforeAll:td}}function od(e){return function(t,n){if(!t)return'Missing required args: "url"';const o=(t=function(e){if(0===e.indexOf("/")||0===e.indexOf("uni:"))return e;let t="";const n=Cd();return n.length&&(t=Zl(n[n.length-1]).route),hc(t,e)}(t)).split("?")[0],r=gc(o,!0);if(!r)return"page `"+t+"` is not found";if("navigateTo"===e||"redirectTo"===e){if(r.meta.isTabBar)return`can not ${e} a tabbar page`}else if("switchTab"===e&&!r.meta.isTabBar)return"can not switch to no-tabBar page";if("switchTab"!==e&&"preloadPage"!==e||!r.meta.isTabBar||"appLaunch"===n.openType||(t=o),r.meta.isEntry&&(t=t.replace(r.alias,"/")),n.url=function(e){if(!v(e))return e;const t=e.indexOf("?");if(-1===t)return e;const n=e.slice(t+1).trim().replace(/^(\?|#|&)/,"");if(!n)return e;e=e.slice(0,t);const o=[];return n.split("&").forEach((e=>{const t=e.replace(/\+/g," ").split("="),n=t.shift(),r=t.length>0?t.join("="):"";o.push(n+"="+encodeURIComponent(r))})),o.length?e+"?"+o.join("&"):e}(t),"unPreloadPage"!==e)if("preloadPage"!==e){if(ed===t&&"appLaunch"!==n.openType)return`${ed} locked`;__uniConfig.ready&&(ed=t)}else if(r.meta.isTabBar){const e=Cd(),t=r.path.slice(1);if(e.find((e=>e.route===t)))return"tabBar page `"+t+"` already exists"}}}Boolean;const rd={beforeInvoke(){ml()},formatArgs:{title:"",content:"",placeholderText:"",showCancel:!0,editable:!1,cancelText(e,t){if(!f(t,"cancelText")){const{t:e}=pl();t.cancelText=e("uni.showModal.cancel")}},cancelColor:"#000",confirmText(e,t){if(!f(t,"confirmText")){const{t:e}=pl();t.confirmText=e("uni.showModal.confirm")}},confirmColor:"#007aff"}};function id(e,t){return e===t.fullPath||"/"===e&&t.meta.isEntry}function sd(){const e=tc();if(!e)return;const t=yd(e);kd($d(t.path,t.id))}const ad=Au("redirectTo",(({url:e,isAutomatedTesting:t},{resolve:n,reject:o})=>{if(bd.handledBeforeEntryPageRoutes)return sd(),ud({type:"redirectTo",url:e,isAutomatedTesting:t}).then(n).catch(o);xd.push({args:{type:"redirectTo",url:e,isAutomatedTesting:t},resolve:n,reject:o})}),0,Gu);function ld(){const e=Td().keys();for(const t of e)kd(t)}const cd=Au("reLaunch",(({url:e,isAutomatedTesting:t},{resolve:n,reject:o})=>{if(bd.handledBeforeEntryPageRoutes)return ld(),ud({type:"reLaunch",url:e,isAutomatedTesting:t}).then(n).catch(o);Sd.push({args:{type:"reLaunch",url:e,isAutomatedTesting:t},resolve:n,reject:o})}),0,Ju);function ud({type:e,url:t,tabBarText:n,events:o,isAutomatedTesting:r},i){const s=mp().$router,{path:a,query:l}=function(e){const[t,n]=e.split("?",2);return{path:t,query:xe(n||"")}}(t);return new Promise(((t,c)=>{const u=function(e,t){return{__id__:t||++Od,__type__:e}}(e,i);s["navigateTo"===e?"push":"replace"]({path:a,query:l,state:u,force:!0}).then((i=>{if(wa(i))return c(i.message);if("switchTab"===e&&(s.currentRoute.value.meta.tabBarText=n),"navigateTo"===e){const e=s.currentRoute.value.meta;return e.eventChannel?o&&(Object.keys(o).forEach((t=>{e.eventChannel._addListener(t,"on",o[t])})),e.eventChannel._clearCache()):e.eventChannel=new Te(u.__id__,o),t(r?{__id__:u.__id__}:{eventChannel:e.eventChannel})}return r?t({__id__:u.__id__}):t()}))}))}function dd(){if(bd.handledBeforeEntryPageRoutes)return;bd.handledBeforeEntryPageRoutes=!0;const e=[..._d];_d.length=0,e.forEach((({args:e,resolve:t,reject:n})=>ud(e).then(t).catch(n)));const t=[...wd];wd.length=0,t.forEach((({args:e,resolve:t,reject:n})=>(function(){const e=rc();if(!e)return;const t=Td(),n=t.keys();for(const o of n){const e=t.get(o);e.$.__isTabBar?e.$.__isActive=!1:kd(o)}e.$.__isTabBar&&(e.$.__isVisible=!1,cc(e,"onHide"))}(),ud(e,function(e){const t=Td().values();for(const n of t){const t=yd(n);if(id(e,t))return n.$.__isActive=!0,t.id}}(e.url)).then(t).catch(n))));const n=[...xd];xd.length=0,n.forEach((({args:e,resolve:t,reject:n})=>(sd(),ud(e).then(t).catch(n))));const o=[...Sd];Sd.length=0,o.forEach((({args:e,resolve:t,reject:n})=>(ld(),ud(e).then(t).catch(n))))}function fd(e){const t=window.CSS&&window.CSS.supports;return t&&(t(e)||t.apply(window.CSS,e.split(":")))}const pd=fd("top:env(a)"),hd=fd("top:constant(a)"),gd=(()=>pd?"env":hd?"constant":"")();function md(e){var t,n;Gl({"--window-top":(n=0,gd?`calc(${n}px + ${gd}(safe-area-inset-top))`:`${n}px`),"--window-bottom":(t=0,gd?`calc(${t}px + ${gd}(safe-area-inset-bottom))`:`${t}px`)})}const vd=new Map;function yd(e){return e.$page}const bd={handledBeforeEntryPageRoutes:!1},_d=[],wd=[],xd=[],Sd=[];function Td(){return vd}function Cd(){return Ed()}function Ed(){const e=[],t=vd.values();for(const n of t)n.$.__isTabBar?n.$.__isActive&&e.push(n):e.push(n);return e}function kd(e,t=!0){const n=vd.get(e);n.$.__isUnload=!0,cc(n,"onUnload"),vd.delete(e),t&&function(e){const t=Ad.get(e);t&&(Ad.delete(e),Pd.pruneCacheEntry(t))}(e)}let Od=ru();function Ld(e){const t=function(e){const t=tu();let n=e.fullPath;return e.meta.isEntry&&-1===n.indexOf(e.meta.route)&&(n="/"+e.meta.route+n.replace("/","")),ac("navigateTo",n,{},t)}(e.$route);!function(e,t){e.route=t.route,e.$vm=e,e.$page=t,e.$mpType="page",e.$fontFamilySet=new Set,t.meta.isTabBar&&(e.$.__isTabBar=!0,e.$.__isActive=!0)}(e,t),vd.set($d(t.path,t.id),e),1===vd.size&&setTimeout((()=>{dd()}),0)}function $d(e,t){return e+"$$"+t}const Ad=new Map,Pd={get:e=>Ad.get(e),set(e,t){!function(e){const t=parseInt(e.split("$$")[1]);if(!t)return;Pd.forEach(((e,n)=>{const o=parseInt(n.split("$$")[1]);o&&o>t&&(Pd.delete(n),Pd.pruneCacheEntry(e),Sn((()=>{vd.forEach(((e,t)=>{e.$.isUnmounted&&vd.delete(t)}))})))}))}(e),Ad.set(e,t)},delete(e){Ad.get(e)&&Ad.delete(e)},forEach(e){Ad.forEach(e)}};function Rd(e,t){!function(e){const t=Nd(e),{body:n}=document;jd&&n.removeAttribute(jd),t&&n.setAttribute(t,""),jd=t}(e),md(),function(e){{const t="nvue-dir-"+__uniConfig.nvue["flex-direction"];e.isNVue?(document.body.setAttribute("nvue",""),document.body.setAttribute(t,"")):(document.body.removeAttribute("nvue"),document.body.removeAttribute(t))}}(t),Vd(e,t)}function Bd(e){const t=Nd(e);t&&function(e){const t=document.querySelector("uni-page-body");t&&t.setAttribute(e,"")}(t)}function Nd(e){return e.type.__scopeId}let jd;const Md=!!(()=>{let e=!1;try{const t={};Object.defineProperty(t,"passive",{get(){e=!0}}),window.addEventListener("test-passive",(()=>{}),t)}catch(t){}return e})()&&{passive:!1};let Id;function Vd(e,t){if(document.removeEventListener("touchmove",uc),Id&&document.removeEventListener("scroll",Id),t.disableScroll)return document.addEventListener("touchmove",uc,Md);const{onPageScroll:n,onReachBottom:o}=e,r="transparent"===t.navigationBar.type;if(!(null==n?void 0:n.length)&&!(null==o?void 0:o.length)&&!r)return;const i={},s=yd(e.proxy).id;(n||r)&&(i.onPageScroll=function(e,t,n){return o=>{t&&ph.publishHandler("onPageScroll",{scrollTop:o},e),n&&ph.emit(e+".onPageScroll",{scrollTop:o})}}(s,n,r)),(null==o?void 0:o.length)&&(i.onReachBottomDistance=t.onReachBottomDistance||50,i.onReachBottom=()=>ph.publishHandler("onReachBottom",{},s)),Id=pc(i),requestAnimationFrame((()=>document.addEventListener("scroll",Id)))}function Fd(e){const{base:t}=__uniConfig.router;return 0===de(e).indexOf(t)?de(e):t+e}function Dd(e){const{base:t,assets:n}=__uniConfig.router;if("./"===t&&(0!==e.indexOf("./")||!e.includes("/static/")&&0!==e.indexOf("./"+(n||"assets")+"/")||(e=e.slice(1))),0===e.indexOf("/")){if(0!==e.indexOf("//"))return Fd(e.slice(1));e="https:"+e}if(te.test(e)||ne.test(e)||0===e.indexOf("blob:"))return e;const o=Ed();return o.length?Fd(hc(yd(o[o.length-1]).route,e).slice(1)):e}const Hd=navigator.userAgent,Wd=/android/i.test(Hd),Ud=/iphone|ipad|ipod/i.test(Hd),qd=Hd.match(/Windows NT ([\d|\d.\d]*)/i),zd=/Macintosh|Mac/i.test(Hd),Xd=/Linux|X11/i.test(Hd),Kd=zd&&navigator.maxTouchPoints>0,Yd=/OpenHarmony/i.test(Hd);function Gd(){return/^Apple/.test(navigator.vendor)&&"number"==typeof window.orientation}function Jd(e){return e&&90===Math.abs(window.orientation)}function Zd(e,t){return e?Math[t?"max":"min"](screen.width,screen.height):screen.width}function Qd(){const e=Gd();if(e){const t=Zd(e,Jd(e));return Math.min(window.innerWidth,document.documentElement.clientWidth,t)||t}return Math.min(window.innerWidth,document.documentElement.clientWidth)}const ef={};function tf(e){for(const n in ef)if(f(ef,n)){if(ef[n]===e)return n}var t=(window.URL||window.webkitURL).createObjectURL(e);return ef[t]=e,t}const nf=Ic(),of=Ic();const rf=Hc({name:"ResizeSensor",props:{initial:{type:Boolean,default:!1}},emits:["resize"],setup(e,{emit:t}){const n=nn(null),o=function(e){return()=>{const{firstElementChild:t,lastElementChild:n}=e.value;t.scrollLeft=1e5,t.scrollTop=1e5,n.scrollLeft=1e5,n.scrollTop=1e5}}(n),r=function(e,t,n){const o=Ft({width:-1,height:-1});return Zn((()=>c({},o)),(e=>t("resize",e))),()=>{const t=e.value;t&&(o.width=t.offsetWidth,o.height=t.offsetHeight,n())}}(n,t,o);return function(e,t,n,o){Eo(o),Mo((()=>{t.initial&&Sn(n);const r=e.value;r.offsetParent!==r.parentElement&&(r.parentElement.style.position="relative"),"AnimationEvent"in window||o()}))}(n,e,r,o),()=>ni("uni-resize-sensor",{ref:n,onAnimationstartOnce:r},[ni("div",{onScroll:r},[ni("div",null,null)],40,["onScroll"]),ni("div",{onScroll:r},[ni("div",null,null)],40,["onScroll"])],40,["onAnimationstartOnce"])}});function sf(){}const af={cursorSpacing:{type:[Number,String],default:0},showConfirmBar:{type:[Boolean,String],default:"auto"},adjustPosition:{type:[Boolean,String],default:!0},autoBlur:{type:[Boolean,String],default:!1}};function lf(e,t,n){function o(e){const t=Ci((()=>0===String(navigator.vendor).indexOf("Apple")));e.addEventListener("focus",(()=>{clearTimeout(undefined),document.addEventListener("click",sf,!1)}));e.addEventListener("blur",(()=>{t.value&&e.blur(),document.removeEventListener("click",sf,!1),t.value&&document.documentElement.scrollTo(document.documentElement.scrollLeft,document.documentElement.scrollTop)}))}Zn((()=>t.value),(e=>e&&o(e)))}const cf={src:{type:String,default:""},mode:{type:String,default:"scaleToFill"},lazyLoad:{type:[Boolean,String],default:!1},draggable:{type:Boolean,default:!1}},uf={widthFix:["offsetWidth","height",(e,t)=>e/t],heightFix:["offsetHeight","width",(e,t)=>e*t]},df={aspectFit:["center center","contain"],aspectFill:["center center","cover"],widthFix:[,"100% 100%"],heightFix:[,"100% 100%"],top:["center top"],bottom:["center bottom"],center:["center center"],left:["left center"],right:["right center"],"top left":["left top"],"top right":["right top"],"bottom left":["left bottom"],"bottom right":["right bottom"]},ff=Hc({name:"Image",props:cf,setup(e,{emit:t}){const n=nn(null),o=function(e,t){const n=nn(""),o=Ci((()=>{let e="auto",o="";const r=df[t.mode];return r?(r[0]&&(o=r[0]),r[1]&&(e=r[1])):(o="0% 0%",e="100% 100%"),`background-image:${n.value?'url("'+n.value+'")':"none"};background-position:${o};background-size:${e};`})),r=Ft({rootEl:e,src:Ci((()=>t.src?Dd(t.src):"")),origWidth:0,origHeight:0,origStyle:{width:"",height:""},modeStyle:o,imgSrc:n});return Mo((()=>{const t=e.value;r.origWidth=t.clientWidth||0,r.origHeight=t.clientHeight||0})),r}(n,e),r=qc(n,t),{fixSize:i}=function(e,t,n){const o=()=>{const{mode:o}=t,r=uf[o];if(!r)return;const{origWidth:i,origHeight:s}=n,a=i&&s?i/s:0;if(!a)return;const l=e.value,c=l[r[0]];c&&(l.style[r[1]]=function(e){pf&&e>10&&(e=2*Math.round(e/2));return e}(r[2](c,a))+"px")},r=()=>{const{style:t}=e.value,{origStyle:{width:o,height:r}}=n;t.width=o,t.height=r};return Zn((()=>t.mode),((e,t)=>{uf[t]&&r(),uf[e]&&o()})),{fixSize:o,resetSize:r}}(n,e,o);return function(e,t,n,o,r){let i,s;const a=(t=0,n=0,o="")=>{e.origWidth=t,e.origHeight=n,e.imgSrc=o},l=l=>{if(!l)return c(),void a();i=i||new Image,i.onload=e=>{const{width:u,height:d}=i;a(u,d,l),Sn((()=>{o()})),i.draggable=t.draggable,s&&s.remove(),s=i,n.value.appendChild(i),c(),r("load",e,{width:u,height:d})},i.onerror=t=>{a(),c(),r("error",t,{errMsg:`GET ${e.src} 404 (Not Found)`})},i.src=l},c=()=>{i&&(i.onload=null,i.onerror=null,i=null)};Zn((()=>e.src),(e=>l(e))),Zn((()=>e.imgSrc),(e=>{!e&&s&&(s.remove(),s=null)})),Mo((()=>l(e.src))),Fo((()=>c()))}(o,e,n,i,r),()=>ni("uni-image",{ref:n},[ni("div",{style:o.modeStyle},null,4),uf[e.mode]?ni(rf,{onResize:i},null,8,["onResize"]):ni("span",null,null)],512)}});const pf="Google Inc."===navigator.vendor;const hf=ve(!0),gf=[];let mf=0,vf=!1;const yf=e=>gf.forEach((t=>t.userAction=e));function bf(){const e=Ft({userAction:!1});return Mo((()=>{!function(e={userAction:!1}){vf||(["touchstart","touchmove","touchend","mousedown","mouseup"].forEach((e=>{document.addEventListener(e,(function(){!mf&&yf(!0),mf++,setTimeout((()=>{!--mf&&yf(!1)}),0)}),hf)})),vf=!0);gf.push(e)}(e)})),Fo((()=>{!function(e){const t=gf.indexOf(e);t>=0&&gf.splice(t,1)}(e)})),{state:e}}function _f(e,t){const n=document.activeElement;if(!n)return t({});const o={};["input","textarea"].includes(n.tagName.toLowerCase())&&(o.start=n.selectionStart,o.end=n.selectionEnd),t(o)}function wf(e,t,n){"number"===t&&isNaN(Number(e))&&(e="");return null==e?"":String(e)}const xf=["none","text","decimal","numeric","tel","search","email","url"],Sf=c({},{name:{type:String,default:""},modelValue:{type:[String,Number]},value:{type:[String,Number]},disabled:{type:[Boolean,String],default:!1},autoFocus:{type:[Boolean,String],default:!1},focus:{type:[Boolean,String],default:!1},cursor:{type:[Number,String],default:-1},selectionStart:{type:[Number,String],default:-1},selectionEnd:{type:[Number,String],default:-1},type:{type:String,default:"text"},password:{type:[Boolean,String],default:!1},placeholder:{type:String,default:""},placeholderStyle:{type:String,default:""},placeholderClass:{type:String,default:""},maxlength:{type:[Number,String],default:140},confirmType:{type:String,default:"done"},confirmHold:{type:Boolean,default:!1},ignoreCompositionEvent:{type:Boolean,default:!0},step:{type:String,default:"0.000000000000000001"},inputmode:{type:String,default:void 0,validator:e=>!!~xf.indexOf(e)},cursorColor:{type:String,default:""}},af),Tf=["input","focus","blur","update:value","update:modelValue","update:focus","compositionstart","compositionupdate","compositionend","keyboardheightchange"];function Cf(e,t,n,o,r){let i=null,s=null;s=Se((n=>{const o=r.value,s=wf(n,e.type);o&&document.activeElement===o&&s===i||(t.value=s)}),100,{setTimeout:setTimeout,clearTimeout:clearTimeout}),Zn((()=>e.modelValue),s),Zn((()=>e.value),s);const a=function(e,t){let n,o,r=0;const i=function(...i){const s=Date.now();clearTimeout(n),o=()=>{o=null,r=s,e.apply(this,i)},s-r{s.cancel(),n("update:modelValue",t.value),n("update:value",t.value),o("input",e,t)}),100);return jo((()=>{s.cancel(),a.cancel()})),{trigger:o,triggerInput:(e,t,n)=>{s.cancel(),i=t.value,a(e,t),n&&a.flush()}}}function Ef(e,t){bf();const n=Ci((()=>e.autoFocus||e.focus));function o(){if(!n.value)return;const e=t.value;e?e.focus():setTimeout(o,100)}Zn((()=>e.focus),(e=>{e?o():function(){const e=t.value;e&&e.blur()}()})),Mo((()=>{n.value&&Sn(o)}))}function kf(e,t,n,o){xl(oc(),"getSelectedTextRange",_f);const{fieldRef:r,state:i,trigger:s}=function(e,t,n){const o=nn(null),r=qc(t,n),i=Ci((()=>{const t=Number(e.selectionStart);return isNaN(t)?-1:t})),s=Ci((()=>{const t=Number(e.selectionEnd);return isNaN(t)?-1:t})),a=Ci((()=>{const t=Number(e.cursor);return isNaN(t)?-1:t})),l=Ci((()=>{var t=Number(e.maxlength);return isNaN(t)?140:t}));let c="";c=wf(e.modelValue,e.type)||wf(e.value,e.type);const u=Ft({value:c,valueOrigin:c,maxlength:l,focus:e.focus,composing:!1,selectionStart:i,selectionEnd:s,cursor:a});return Zn((()=>u.focus),(e=>n("update:focus",e))),Zn((()=>u.maxlength),(e=>u.value=u.value.slice(0,e)),{immediate:!1}),{fieldRef:o,state:u,trigger:r}}(e,t,n),{triggerInput:a}=Cf(e,i,n,s,r);Ef(e,r),lf(0,r);const{state:l}=function(){const e=Ft({attrs:{}});return Mo((()=>{let t=hi();for(;t;){const n=t.type.__scopeId;n&&(e.attrs[n]=""),t=t.proxy&&"page"===t.proxy.$mpType?null:t.parent}})),{state:e}}();!function(e,t){const n=vr(Yc,!1);if(!n)return;const o=hi(),r={submit(){const n=o.proxy;return[n[e],v(t)?n[t]:t.value]},reset(){v(t)?o.proxy[t]="":t.value=""}};n.addField(r),Fo((()=>{n.removeField(r)}))}("name",i),function(e,t,n,o,r,i){function s(){const n=e.value;n&&t.focus&&t.selectionStart>-1&&t.selectionEnd>-1&&"number"!==n.type&&(n.selectionStart=t.selectionStart,n.selectionEnd=t.selectionEnd)}function a(){const n=e.value;n&&t.focus&&t.selectionStart<0&&t.selectionEnd<0&&t.cursor>-1&&"number"!==n.type&&(n.selectionEnd=n.selectionStart=t.cursor)}function l(e){return"number"===e.type?null:e.selectionEnd}Zn([()=>t.selectionStart,()=>t.selectionEnd],s),Zn((()=>t.cursor),a),Zn((()=>e.value),(function(){const c=e.value;if(!c)return;const u=function(e,o){e.stopPropagation(),m(i)&&!1===i(e,t)||(t.value=c.value,t.composing&&n.ignoreCompositionEvent||r(e,{value:c.value,cursor:l(c)},o))};function d(e){n.ignoreCompositionEvent||o(e.type,e,{value:e.data})}c.addEventListener("change",(e=>e.stopPropagation())),c.addEventListener("focus",(function(e){t.focus=!0,o("focus",e,{value:t.value}),s(),a()})),c.addEventListener("blur",(function(e){t.composing&&(t.composing=!1,u(e,!0)),t.focus=!1,o("blur",e,{value:t.value,cursor:l(e.target)})})),c.addEventListener("input",u),c.addEventListener("compositionstart",(e=>{e.stopPropagation(),t.composing=!0,d(e)})),c.addEventListener("compositionend",(e=>{e.stopPropagation(),t.composing&&(t.composing=!1,u(e)),d(e)})),c.addEventListener("compositionupdate",d)}))}(r,i,e,s,a,o);return{fieldRef:r,state:i,scopedAttrsState:l,fixDisabledColor:0===String(navigator.vendor).indexOf("Apple")&&CSS.supports("image-orientation:from-image"),trigger:s}}const Of=fe((()=>{{const e=navigator.userAgent;let t="";const n=e.match(/OS\s([\w_]+)\slike/);if(n)t=n[1].replace(/_/g,".");else if(/Macintosh|Mac/i.test(e)&&navigator.maxTouchPoints>0){const n=e.match(/Version\/(\S*)\b/);n&&(t=n[1])}return!!t&&parseInt(t)>=16&&parseFloat(t)<17.2}}));function Lf(e,t,n,o,r){if(t.value)if("."===e.data){if("."===t.value.slice(-1))return n.value=o.value=t.value=t.value.slice(0,-1),!1;if(t.value&&!t.value.includes(".")&&t.value===o.value)return t.value+=".",r&&(r.fn=()=>{n.value=o.value=t.value=t.value.slice(0,-1),o.removeEventListener("blur",r.fn)},o.addEventListener("blur",r.fn)),!1}else if("deleteContentBackward"===e.inputType&&Of()&&"."===t.value.slice(-2,-1))return t.value=n.value=o.value=t.value.slice(0,-2),!0}function $f(e){return"insertFromPaste"===e.inputType}const Af=Hc({name:"Input",props:c({},Sf,{placeholderClass:{type:String,default:"input-placeholder"},textContentType:{type:String,default:""}}),emits:["confirm",...Tf],setup(e,{emit:t,expose:n}){const o=["text","number","idcard","digit","password","tel"],r=["off","one-time-code"],i=Ci((()=>{let t="";switch(e.type){case"text":t="text","search"===e.confirmType&&(t="search");break;case"idcard":case"none":t="text";break;case"digit":t="number";break;default:t=o.includes(e.type)?e.type:"text"}return e.password?"password":t})),s=Ci((()=>{const t=r.indexOf(e.textContentType),n=r.indexOf($(e.textContentType));return r[-1!==t?t:-1!==n?n:0]})),a=Ci((()=>{if(void 0!==e.inputmode)return e.inputmode;if(xf.includes(e.type))return e.type;return{number:"numeric",digit:"decimal",idcard:"text"}[e.type]}));let l=function(e,t){if("number"===t.value){const t=void 0===e.modelValue?e.value:e.modelValue,n=nn(null!=t?t.toLocaleString():"");return Zn((()=>e.modelValue),(e=>{n.value=null!=e?e.toLocaleString():""})),Zn((()=>e.value),(e=>{n.value=null!=e?e.toLocaleString():""})),n}return nn("")}(e,i),c={fn:null};const u=nn(null),{fieldRef:d,state:f,scopedAttrsState:p,fixDisabledColor:h,trigger:g}=kf(e,u,t,((e,t)=>{const n=e.target;if("number"===i.value){if(c.fn&&(n.removeEventListener("blur",c.fn),c.fn=null),n.validity&&!n.validity.valid){if((!l.value||!n.value)&&"-"===e.data||"-"===l.value[0]&&"deleteContentBackward"===e.inputType)return l.value="-",t.value="",c.fn=()=>{l.value=n.value=""},n.addEventListener("blur",c.fn),!1;const o=Lf(e,l,t,n,c);return"boolean"==typeof o?o:(l.value=t.value=n.value="-"===l.value?"":l.value,!1)}{const o=Lf(e,l,t,n,c);if("boolean"==typeof o)return o;l.value=n.value}if(t.maxlength>0&&n.value.length>t.maxlength&&!$f(e))return n.value=l.value=t.value,!1}}));Zn((()=>f.value),(t=>{"number"!==e.type||"-"===l.value&&""===t||(l.value=t.toString())})),Zn((()=>e.maxlength),(e=>{e=parseInt(e,10);const t=f.value.slice(0,e);t!==f.value&&(f.value=t)}));const m=["number","digit"],v=Ci((()=>m.includes(e.type)?e.step:""));function y(t){if("Enter"!==t.key)return;const n=t.target;t.stopPropagation(),g("confirm",t,{value:n.value}),!e.confirmHold&&n.blur()}return n({$triggerInput:e=>{t("update:modelValue",e.value),t("update:value",e.value),f.value=e.value}}),()=>{let t=e.disabled&&h?ni("input",{key:"disabled-input",ref:d,value:f.value,tabindex:"-1",readonly:!!e.disabled,type:i.value,maxlength:f.maxlength,step:v.value,class:"uni-input-input",style:e.cursorColor?{caretColor:e.cursorColor}:{},inputmode:a.value,onFocus:e=>e.target.blur()},null,44,["value","readonly","type","maxlength","step","inputmode","onFocus"]):ni("input",{key:"input",ref:d,value:f.value,onInput:bs((e=>{const t=e.target.value.toString();"number"===i.value&&f.maxlength>0&&t.length>f.maxlength?$f(e)&&(f.value=t.slice(0,f.maxlength)):0===t.length&&"insertText"===e.inputType&&"."===e.data||(f.value=t)}),["stop"]),disabled:!!e.disabled,type:i.value,maxlength:f.maxlength,step:v.value,enterkeyhint:e.confirmType,pattern:"number"===e.type?"[0-9]*":void 0,class:"uni-input-input",style:e.cursorColor?{caretColor:e.cursorColor}:{},autocomplete:s.value,onKeyup:y,inputmode:a.value},null,44,["value","onInput","disabled","type","maxlength","step","enterkeyhint","pattern","autocomplete","onKeyup","inputmode"]);return ni("uni-input",{ref:u},[ni("div",{class:"uni-input-wrapper"},[oo(ni("div",ci(p.attrs,{style:e.placeholderStyle,class:["uni-input-placeholder",e.placeholderClass]}),[e.placeholder],16),[[Xi,!(f.value.length||"-"===l.value||l.value.includes("."))]]),"search"===e.confirmType?ni("form",{action:"",onSubmit:e=>e.preventDefault(),class:"uni-input-form"},[t],40,["onSubmit"]):t])],512)}}});const Pf=["class","style"],Rf=/^on[A-Z]+/,Bf=(e={})=>{const{excludeListeners:t=!1,excludeKeys:n=[]}=e,o=hi(),r=on({}),i=on({}),s=on({}),a=n.concat(Pf);return o.attrs=Ft(o.attrs),Gn((()=>{const e=(n=o.attrs,Object.keys(n).map((e=>[e,n[e]]))).reduce(((e,[n,o])=>(a.includes(n)?e.exclude[n]=o:Rf.test(n)?(t||(e.attrs[n]=o),e.listeners[n]=o):e.attrs[n]=o,e)),{exclude:{},attrs:{},listeners:{}});var n;r.value=e.attrs,i.value=e.listeners,s.value=e.exclude})),{$attrs:r,$listeners:i,$excludeAttrs:s}},Nf=Hc({name:"Refresher",props:{refreshState:{type:String,default:""},refresherHeight:{type:Number,default:0},refresherThreshold:{type:Number,default:45},refresherDefaultStyle:{type:String,default:"black"},refresherBackground:{type:String,default:"#fff"}},setup(e,{slots:t}){const n=nn(null),o=Ci((()=>{const t={backgroundColor:e.refresherBackground};switch(e.refreshState){case"pulling":t.height=e.refresherHeight+"px";break;case"refreshing":t.height=e.refresherThreshold+"px",t.transition="height 0.3s";break;case"":case"refresherabort":case"restore":t.height="0px",t.transition="height 0.3s"}return t})),r=Ci((()=>{const t=e.refresherHeight/e.refresherThreshold;return 360*(t>1?1:t)}));return()=>{const{refreshState:i,refresherDefaultStyle:s,refresherThreshold:a}=e;return ni("div",{ref:n,style:o.value,class:"uni-scroll-view-refresher"},["none"!==s?ni("div",{class:"uni-scroll-view-refresh"},[ni("div",{class:"uni-scroll-view-refresh-inner"},["pulling"==i?ni("svg",{key:"refresh__icon",style:{transform:"rotate("+r.value+"deg)"},fill:"#2BD009",class:"uni-scroll-view-refresh__icon",width:"24",height:"24",viewBox:"0 0 24 24"},[ni("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"},null),ni("path",{d:"M0 0h24v24H0z",fill:"none"},null)],4):null,"refreshing"==i?ni("svg",{key:"refresh__spinner",class:"uni-scroll-view-refresh__spinner",width:"24",height:"24",viewBox:"25 25 50 50"},[ni("circle",{cx:"50",cy:"50",r:"20",fill:"none",style:"color: #2bd009","stroke-width":"3"},null)]):null])]):null,"none"===s?ni("div",{class:"uni-scroll-view-refresher-container",style:{height:`${a}px`}},[t.default&&t.default()]):null],4)}}}),jf=ve(!0),Mf=Hc({name:"ScrollView",compatConfig:{MODE:3},props:{direction:{type:[String],default:"vertical"},scrollX:{type:[Boolean,String],default:!1},scrollY:{type:[Boolean,String],default:!1},showScrollbar:{type:[Boolean,String],default:!0},upperThreshold:{type:[Number,String],default:50},lowerThreshold:{type:[Number,String],default:50},scrollTop:{type:[Number,String],default:0},scrollLeft:{type:[Number,String],default:0},scrollIntoView:{type:String,default:""},scrollWithAnimation:{type:[Boolean,String],default:!1},enableBackToTop:{type:[Boolean,String],default:!1},refresherEnabled:{type:[Boolean,String],default:!1},refresherThreshold:{type:Number,default:45},refresherDefaultStyle:{type:String,default:"black"},refresherBackground:{type:String,default:"#fff"},refresherTriggered:{type:[Boolean,String],default:!1}},emits:["scroll","scrolltoupper","scrolltolower","refresherrefresh","refresherrestore","refresherpulling","refresherabort","update:refresherTriggered"],setup(e,{emit:t,slots:n,expose:o}){const r=nn(null),i=nn(null),s=nn(null),a=nn(null),l=qc(r,t),{state:c,scrollTopNumber:u,scrollLeftNumber:d}=function(e){const t=Ci((()=>Number(e.scrollTop)||0)),n=Ci((()=>Number(e.scrollLeft)||0));return{state:Ft({lastScrollTop:t.value,lastScrollLeft:n.value,lastScrollToUpperTime:0,lastScrollToLowerTime:0,refresherHeight:0,refreshState:""}),scrollTopNumber:t,scrollLeftNumber:n}}(e),{realScrollX:f,realScrollY:p,_scrollLeftChanged:h,_scrollTopChanged:g}=function(e,t,n,o,r,i,s,a,l){let c=!1,u=0,d=!1,f=()=>{};const p=Ci((()=>e.scrollX)),h=Ci((()=>e.scrollY)),g=Ci((()=>{let t=Number(e.upperThreshold);return isNaN(t)?50:t})),m=Ci((()=>{let t=Number(e.lowerThreshold);return isNaN(t)?50:t}));function v(e,t){const n=s.value;let o=0,r="";if(e<0?e=0:"x"===t&&e>n.scrollWidth-n.offsetWidth?e=n.scrollWidth-n.offsetWidth:"y"===t&&e>n.scrollHeight-n.offsetHeight&&(e=n.scrollHeight-n.offsetHeight),"x"===t?o=n.scrollLeft-e:"y"===t&&(o=n.scrollTop-e),0===o)return;let i=a.value;i.style.transition="transform .3s ease-out",i.style.webkitTransition="-webkit-transform .3s ease-out","x"===t?r="translateX("+o+"px) translateZ(0)":"y"===t&&(r="translateY("+o+"px) translateZ(0)"),i.removeEventListener("transitionend",f),i.removeEventListener("webkitTransitionEnd",f),f=()=>x(e,t),i.addEventListener("transitionend",f),i.addEventListener("webkitTransitionEnd",f),"x"===t?n.style.overflowX="hidden":"y"===t&&(n.style.overflowY="hidden"),i.style.transform=r,i.style.webkitTransform=r}function y(e){const n=e.target;r("scroll",e,{scrollLeft:n.scrollLeft,scrollTop:n.scrollTop,scrollHeight:n.scrollHeight,scrollWidth:n.scrollWidth,deltaX:t.lastScrollLeft-n.scrollLeft,deltaY:t.lastScrollTop-n.scrollTop}),h.value&&(n.scrollTop<=g.value&&t.lastScrollTop-n.scrollTop>0&&e.timeStamp-t.lastScrollToUpperTime>200&&(r("scrolltoupper",e,{direction:"top"}),t.lastScrollToUpperTime=e.timeStamp),n.scrollTop+n.offsetHeight+m.value>=n.scrollHeight&&t.lastScrollTop-n.scrollTop<0&&e.timeStamp-t.lastScrollToLowerTime>200&&(r("scrolltolower",e,{direction:"bottom"}),t.lastScrollToLowerTime=e.timeStamp)),p.value&&(n.scrollLeft<=g.value&&t.lastScrollLeft-n.scrollLeft>0&&e.timeStamp-t.lastScrollToUpperTime>200&&(r("scrolltoupper",e,{direction:"left"}),t.lastScrollToUpperTime=e.timeStamp),n.scrollLeft+n.offsetWidth+m.value>=n.scrollWidth&&t.lastScrollLeft-n.scrollLeft<0&&e.timeStamp-t.lastScrollToLowerTime>200&&(r("scrolltolower",e,{direction:"right"}),t.lastScrollToLowerTime=e.timeStamp)),t.lastScrollTop=n.scrollTop,t.lastScrollLeft=n.scrollLeft}function b(t){h.value&&(e.scrollWithAnimation?v(t,"y"):s.value.scrollTop=t)}function _(t){p.value&&(e.scrollWithAnimation?v(t,"x"):s.value.scrollLeft=t)}function w(t){if(t){if(!/^[_a-zA-Z][-_a-zA-Z0-9:]*$/.test(t))return void console.error(`id error: scroll-into-view=${t}`);let n=i.value.querySelector("#"+t);if(n){let t=s.value.getBoundingClientRect(),o=n.getBoundingClientRect();if(p.value){let n=o.left-t.left,r=s.value.scrollLeft+n;e.scrollWithAnimation?v(r,"x"):s.value.scrollLeft=r}if(h.value){let n=o.top-t.top,r=s.value.scrollTop+n;e.scrollWithAnimation?v(r,"y"):s.value.scrollTop=r}}}}function x(e,t){a.value.style.transition="",a.value.style.webkitTransition="",a.value.style.transform="",a.value.style.webkitTransform="";let n=s.value;"x"===t?(n.style.overflowX=p.value?"auto":"hidden",n.scrollLeft=e):"y"===t&&(n.style.overflowY=h.value?"auto":"hidden",n.scrollTop=e),a.value.removeEventListener("transitionend",f),a.value.removeEventListener("webkitTransitionEnd",f)}function S(n){if(e.refresherEnabled){switch(n){case"refreshing":t.refresherHeight=e.refresherThreshold,c||(c=!0,r("refresherpulling",{},{deltaY:t.refresherHeight,dy:t.refresherHeight}),r("refresherrefresh",{},{dy:C.y-T.y}),l("update:refresherTriggered",!0));break;case"restore":case"refresherabort":c=!1,t.refresherHeight=u=0,"restore"===n&&(d=!1,r("refresherrestore",{},{dy:C.y-T.y})),"refresherabort"===n&&d&&(d=!1,r("refresherabort",{},{dy:C.y-T.y}))}t.refreshState=n}}let T={x:0,y:0},C={x:0,y:e.refresherThreshold};return Mo((()=>{Sn((()=>{b(n.value),_(o.value)})),w(e.scrollIntoView);let i=function(e){e.preventDefault(),e.stopPropagation(),y(e)},a=null,l=function(n){if(null===T)return;let o=n.touches[0].pageX,i=n.touches[0].pageY,l=s.value;if(Math.abs(o-T.x)>Math.abs(i-T.y))if(p.value){if(0===l.scrollLeft&&o>T.x)return void(a=!1);if(l.scrollWidth===l.offsetWidth+l.scrollLeft&&oT.y)a=!1,e.refresherEnabled&&!1!==n.cancelable&&n.preventDefault();else{if(l.scrollHeight===l.offsetHeight+l.scrollTop&&i0&&(d=!0,r("refresherpulling",n,{deltaY:o,dy:o})))}},f=function(e){1===e.touches.length&&(T={x:e.touches[0].pageX,y:e.touches[0].pageY})},g=function(n){C={x:n.changedTouches[0].pageX,y:n.changedTouches[0].pageY},t.refresherHeight>=e.refresherThreshold?S("refreshing"):S("refresherabort"),T={x:0,y:0},C={x:0,y:e.refresherThreshold}};s.value.addEventListener("touchstart",f,jf),s.value.addEventListener("touchmove",l,ve(!1)),s.value.addEventListener("scroll",i,ve(!1)),s.value.addEventListener("touchend",g,jf),Fo((()=>{s.value.removeEventListener("touchstart",f),s.value.removeEventListener("touchmove",l),s.value.removeEventListener("scroll",i),s.value.removeEventListener("touchend",g)}))})),Eo((()=>{h.value&&(s.value.scrollTop=t.lastScrollTop),p.value&&(s.value.scrollLeft=t.lastScrollLeft)})),Zn(n,(e=>{b(e)})),Zn(o,(e=>{_(e)})),Zn((()=>e.scrollIntoView),(e=>{w(e)})),Zn((()=>e.refresherTriggered),(e=>{!0===e?S("refreshing"):!1===e&&S("restore")})),{realScrollX:p,realScrollY:h,_scrollTopChanged:b,_scrollLeftChanged:_}}(e,c,u,d,l,r,i,a,t),m=Ci((()=>{let e="";return f.value?e+="overflow-x:auto;":e+="overflow-x:hidden;",p.value?e+="overflow-y:auto;":e+="overflow-y:hidden;",e})),v=Ci((()=>{let t="uni-scroll-view";return!1===e.showScrollbar&&(t+=" uni-scroll-view-scrollbar-hidden"),t}));return o({$getMain:()=>i.value}),()=>{const{refresherEnabled:t,refresherBackground:o,refresherDefaultStyle:l,refresherThreshold:u}=e,{refresherHeight:d,refreshState:f}=c;return ni("uni-scroll-view",{ref:r},[ni("div",{ref:s,class:"uni-scroll-view"},[ni("div",{ref:i,style:m.value,class:v.value},[t?ni(Nf,{refreshState:f,refresherHeight:d,refresherThreshold:u,refresherDefaultStyle:l,refresherBackground:o},{default:()=>["none"==l?n.refresher&&n.refresher():null]},8,["refreshState","refresherHeight","refresherThreshold","refresherDefaultStyle","refresherBackground"]):null,ni("div",{ref:a,class:"uni-scroll-view-content"},[n.default&&n.default()],512)],6)],512)],512)}}});const If={ensp:" ",emsp:" ",nbsp:" "};function Vf(e,t){return function(e,{space:t,decode:n}){let o="",r=!1;for(let i of e)t&&If[t]&&" "===i&&(i=If[t]),r?(o+="n"===i?"\n":"\\"===i?"\\":"\\"+i,r=!1):"\\"===i?r=!0:o+=i;return n?o.replace(/ /g,If.nbsp).replace(/ /g,If.ensp).replace(/ /g,If.emsp).replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&").replace(/"/g,'"').replace(/'/g,"'"):o}(e,t).split("\n")}const Ff=Hc({name:"Text",props:{selectable:{type:[Boolean,String],default:!1},space:{type:String,default:""},decode:{type:[Boolean,String],default:!1}},setup(e,{slots:t}){const n=nn(null);return()=>{const o=[];return t.default&&t.default().forEach((t=>{if(8&t.shapeFlag&&t.type!==Fr){let n=[];n=Vf(t.children,{space:e.space,decode:e.decode});const r=n.length-1;n.forEach(((e,t)=>{(0!==t||e)&&o.push(ri(e)),t!==r&&o.push(ni("br"))}))}else o.push(t)})),ni("uni-text",{ref:n,selectable:!!e.selectable||null},[ni("span",null,o)],8,["selectable"])}}}),Df=c({},Sf,{placeholderClass:{type:String,default:"input-placeholder"},autoHeight:{type:[Boolean,String],default:!1},confirmType:{type:String,default:"return",validator:e=>Wf.concat("return").includes(e)}});let Hf=!1;const Wf=["done","go","next","search","send"];const Uf=Hc({name:"Textarea",props:Df,emits:["confirm","change","linechange",...Tf],setup(e,{emit:t,expose:n}){const o=nn(null),r=nn(null),{fieldRef:i,state:s,scopedAttrsState:a,fixDisabledColor:l,trigger:c}=kf(e,o,t),u=Ci((()=>s.value.split("\n"))),d=Ci((()=>Wf.includes(e.confirmType))),f=nn(0),p=nn(null);function h({height:e}){f.value=e}function g(e){}function m(e){"Enter"===e.key&&d.value&&e.preventDefault()}function v(t){if("Enter"===t.key&&d.value){!function(e){c("confirm",e,{value:s.value})}(t);const n=t.target;!e.confirmHold&&n.blur()}}return Zn((()=>f.value),(t=>{const n=o.value,i=p.value,s=r.value;let a=parseFloat(getComputedStyle(n).lineHeight);isNaN(a)&&(a=i.offsetHeight);var l=Math.round(t/a);c("linechange",{},{height:t,heightRpx:750/window.innerWidth*t,lineCount:l}),e.autoHeight&&(s.style.height=t+"px")})),function(){const e="(prefers-color-scheme: dark)";Hf=0===String(navigator.platform).indexOf("iP")&&0===String(navigator.vendor).indexOf("Apple")&&window.matchMedia(e).media!==e}(),n({$triggerInput:e=>{t("update:modelValue",e.value),t("update:value",e.value),s.value=e.value}}),()=>{let t=e.disabled&&l?ni("textarea",{key:"disabled-textarea",ref:i,value:s.value,tabindex:"-1",readonly:!!e.disabled,maxlength:s.maxlength,class:{"uni-textarea-textarea":!0,"uni-textarea-textarea-fix-margin":Hf},style:{overflowY:e.autoHeight?"hidden":"auto",...e.cursorColor&&{caretColor:e.cursorColor}},onFocus:e=>e.target.blur()},null,46,["value","readonly","maxlength","onFocus"]):ni("textarea",{key:"textarea",ref:i,value:s.value,disabled:!!e.disabled,maxlength:s.maxlength,enterkeyhint:e.confirmType,inputmode:e.inputmode,class:{"uni-textarea-textarea":!0,"uni-textarea-textarea-fix-margin":Hf},style:{overflowY:e.autoHeight?"hidden":"auto",...e.cursorColor&&{caretColor:e.cursorColor}},onKeydown:m,onKeyup:v,onChange:g},null,46,["value","disabled","maxlength","enterkeyhint","inputmode","onKeydown","onKeyup","onChange"]);return ni("uni-textarea",{ref:o,"auto-height":e.autoHeight},[ni("div",{ref:r,class:"uni-textarea-wrapper"},[oo(ni("div",ci(a.attrs,{style:e.placeholderStyle,class:["uni-textarea-placeholder",e.placeholderClass]}),[e.placeholder],16),[[Xi,!s.value.length]]),ni("div",{ref:p,class:"uni-textarea-line"},[" "],512),ni("div",{class:{"uni-textarea-compute":!0,"uni-textarea-compute-auto-height":e.autoHeight}},[u.value.map((e=>ni("div",null,[e.trim()?e:"."]))),ni(rf,{initial:!0,onResize:h},null,8,["initial","onResize"])],2),"search"===e.confirmType?ni("form",{action:"",onSubmit:()=>!1,class:"uni-input-form"},[t],40,["onSubmit"]):t],512)],8,["auto-height"])}}}),qf=Hc({name:"View",props:c({},zc),setup(e,{slots:t}){const n=nn(null),{hovering:o,binding:r}=Xc(e);return()=>{const i=e.hoverClass;return i&&"none"!==i?ni("uni-view",ci({class:o.value?i:"",ref:n},r),[Xo(t,"default")],16):ni("uni-view",{ref:n},[Xo(t,"default")],512)}}});function zf(e,t){if(t||(t=e.id),t)return e.$options.name.toLowerCase()+"."+t}function Xf(e,t,n){e&&xl(n||oc(),e,(({type:e,data:n},o)=>{t(e,n,o)}))}function Kf(e,t){e&&function(e,t){t=wl(e,t),delete _l[t]}(t||oc(),e)}let Yf=0;function Gf(e,t,n,o){m(t)&&Bo(e,t.bind(n),o)}function Jf(e,t,n){const o=e.mpType||n.$mpType;if(o&&"component"!==o&&("page"!==o||"component"!==t.renderer)&&(Object.keys(e).forEach((o=>{if(function(e,t,n=!0){return!(n&&!m(t))&&(Ee.indexOf(e)>-1||0===e.indexOf("on"))}(o,e[o],!1)){const r=e[o];p(r)?r.forEach((e=>Gf(o,e,n,t))):Gf(o,r,n,t)}})),"page"===o)){t.__isVisible=!0;try{let e=t.attrs.__pageQuery;0,cc(n,"onLoad",e),t.vapor||delete t.attrs.__pageQuery;const o=n.$page;"preloadPage"!==(null==o?void 0:o.openType)&&cc(n,"onShow")}catch(r){console.error(r.message+"\n"+r.stack)}}}function Zf(e,t,n){Jf(e,t,n)}function Qf(e,t,n){return e[t]=n}function ep(e,...t){const n=this[e];return n?n(...t):(console.error(`method ${e} not found`),null)}function tp(e){const t=e.config.errorHandler;return function(n,o,r){t&&t(n,o,r);const i=e._instance;if(!i||!i.proxy)throw n;i.onError?cc(i.proxy,"onError",n):pn(n,0,o&&o.$.vnode,!1)}}function np(e,t){return e?[...new Set([].concat(e,t))]:t}function op(e){const t=e.config;var n;t.errorHandler=Oe(e,tp),n=t.optionMergeStrategies,Ee.forEach((e=>{n[e]=np}));const o=t.globalProperties;o.$set=Qf,o.$applyOptions=Zf,o.$callMethod=ep,function(e){ke.forEach((t=>t(e)))}(e)}function rp(e){const t=el({history:ap(),strict:!!__uniConfig.router.strict,routes:__uniRoutes,scrollBehavior:sp});t.beforeEach(((e,t)=>{var n;e&&t&&e.meta.isTabBar&&t.meta.isTabBar&&(n=t.meta.tabBarIndex,"undefined"!=typeof window&&(ip[n]={left:window.pageXOffset,top:window.pageYOffset}))})),e.router=t,e.use(t)}let ip=Object.create(null);const sp=(e,t,n)=>{if(n)return n;if(e&&t&&e.meta.isTabBar&&t.meta.isTabBar){const t=(o=e.meta.tabBarIndex,ip[o]);if(t)return t}return{left:0,top:0};var o};function ap(){let{routerBase:e}=__uniConfig.router;"/"===e&&(e="");const t=(n=e,(n=location.host?n||location.pathname+location.search:"").includes("#")||(n+="#"),ga(n));var n;return t.listen(((e,t,n)=>{"back"===n.direction&&function(e=1){const t=Ed(),n=t.length-1,o=n-e;for(let r=n;r>o;r--){const e=yd(t[r]);kd($d(e.path,e.id),!1)}}(Math.abs(n.delta))})),t}const lp={install(e){op(e),Ec(e),Mc(e),e.config.warnHandler||(e.config.warnHandler=cp),rp(e)}};function cp(e,t,n){if(t){if("PageMetaHead"===t.$.type.name)return;const e=t.$.parent;if(e&&"PageMeta"===e.type.name)return}const o=[`[Vue warn]: ${e}`];n.length&&o.push("\n",n),console.warn(...o)}const up={class:"uni-async-loading"},dp=ni("i",{class:"uni-loading"},null,-1),fp=Wc({name:"AsyncLoading",render:()=>(Ur(),Yr("div",up,[dp]))});function pp(){window.location.reload()}const hp=Wc({name:"AsyncError",props:["error"],setup(){gl();const{t:e}=pl();return()=>ni("div",{class:"uni-async-error",onClick:pp},[e("uni.async.error")],8,["onClick"])}});let gp;function mp(){return gp}function vp(e){gp=e,Object.defineProperty(gp.$.ctx,"$children",{get:()=>Ed().map((e=>e.$vm))});const t=gp.$.appContext.app;t.component(fp.name)||t.component(fp.name,fp),t.component(hp.name)||t.component(hp.name,hp),function(e){e.$vm=e,e.$mpType="app";const t=nn(pl().getLocale());Object.defineProperty(e,"$locale",{get:()=>t.value,set(e){t.value=e}})}(gp),function(e,t){const n=e.$options||{};n.globalData=c(n.globalData||{},t),Object.defineProperty(e,"globalData",{get:()=>n.globalData,set(e){n.globalData=e}})}(gp),Nc(),mc()}function yp(e,{type:t,clone:n,init:o,setup:r,before:i,options:s}){n&&(e=c({},e)),i&&i(e);const a=e.setup;return e.setup=(e,t)=>{const n=hi();if(o(n.proxy),r(n),a)return a(e,t)},e}function bp(e,t){return e&&(e.__esModule||"Module"===e[Symbol.toStringTag])?yp(e.default,t):yp(e,t)}function _p(e,t){return bp(e,{type:"page",clone:!0,init:Ld,setup(e){e.$pageInstance=e;const t=ou(),n=_e(t.query);e.attrs.__pageQuery=n,yd(e.proxy).options=n,e.proxy.options=n;const o=tu();var r;md(),e.onReachBottom=Ft([]),e.onPageScroll=Ft([]),Zn([e.onReachBottom,e.onPageScroll],(()=>{const t=tc();e.proxy===t&&Vd(e,o)}),{once:!0}),jo((()=>{Rd(e,o)})),Mo((()=>{Bd(e);const{onReady:n}=e;n&&B(n),Tp(t)})),Oo((()=>{if(!e.__isVisible){Rd(e,o),e.__isVisible=!0;const{onShow:n}=e;n&&B(n),Sn((()=>{Tp(t)}))}}),"ba",r),function(e,t){Oo(e,"bda",t)}((()=>{if(e.__isVisible&&!e.__isUnload){e.__isVisible=!1;{const{onHide:t}=e;t&&B(t)}}}));const i=lc(e.proxy);return function(e,t){ph.subscribe(wl(e,"invokeViewApi"),Sl)}(i),Fo((()=>{!function(e){ph.unsubscribe(wl(e,"invokeViewApi")),Object.keys(_l).forEach((t=>{0===t.indexOf(e+".")&&delete _l[t]}))}(i)})),n}})}function wp(){const{windowWidth:e,windowHeight:t,screenWidth:n,screenHeight:o}=Fp(),r=90===Math.abs(Number(window.orientation))?"landscape":"portrait";hh.emit("onResize",{deviceOrientation:r,size:{windowWidth:e,windowHeight:t,screenWidth:n,screenHeight:o}})}function xp(e){S(e.data)&&"WEB_INVOKE_APPSERVICE"===e.data.type&&hh.emit("onWebInvokeAppService",e.data.data,e.data.pageId)}function Sp(){const{emit:e}=hh;"visible"===document.visibilityState?e("onAppEnterForeground",c({},of)):e("onAppEnterBackground")}function Tp(e){const{tabBarText:t,tabBarIndex:n,route:o}=e.meta;t&&cc("onTabItemTap",{index:n,text:t,pagePath:o})}function Cp(e){e=e>0&&e<1/0?e:0;const t=Math.floor(e/3600),n=Math.floor(e%3600/60),o=Math.floor(e%3600%60),r=(t<10?"0":"")+t;let i=(n<10?"0":"")+n+":"+((o<10?"0":"")+o);return"00"!==r&&(i=r+":"+i),i}function Ep(e,t,n,o){const r=Ft({seeking:!1,gestureType:"none",volumeOld:0,volumeNew:0,currentTimeOld:0,currentTimeNew:0,toastThin:!1}),i={x:0,y:0};let s=null;let a;return{state:r,onTouchstart:function(e){const t=e.targetTouches[0];i.x=t.pageX,i.y=t.pageY,r.gestureType="none",r.volumeOld=0},onTouchmove:function(l){function c(){l.stopPropagation(),l.preventDefault()}o.fullscreen&&c();const u=r.gestureType;if("stop"===u)return;const d=l.targetTouches[0],f=d.pageX,p=d.pageY,h=i,g=n.value;if("progress"===u?(!function(e){const n=t.currentDuration;let o=e/600*n+r.currentTimeOld;o<0?o=0:o>n&&(o=n);r.currentTimeNew=o}(f-h.x),r.seeking=!0):"volume"===u&&function(e){const t=n.value,o=r.volumeOld;let i;"number"==typeof o&&(i=o-e/200,i<0?i=0:i>1&&(i=1),clearTimeout(a),a=void 0,null==a&&(a=setTimeout((()=>{r.toastThin=!1,a=void 0}),1e3)),t.volume=i,r.volumeNew=i)}(p-h.y),"none"===u)if(Math.abs(f-h.x)>Math.abs(p-h.y)){if(!e.enableProgressGesture)return void(r.gestureType="stop");r.gestureType="progress",r.currentTimeOld=r.currentTimeNew=g.currentTime,o.fullscreen||c()}else{if(!e.pageGesture&&!e.vslideGesture)return void(r.gestureType="stop");"none"!==r.gestureType&&null!=s||(s=setTimeout((()=>{r.toastThin=!0}),500)),r.gestureType="volume",r.volumeOld=g.volume,o.fullscreen||c()}},onTouchend:function(e){const t=n.value;"none"!==r.gestureType&&"stop"!==r.gestureType&&(e.stopPropagation(),e.preventDefault()),"progress"===r.gestureType&&r.currentTimeOld!==r.currentTimeNew&&(t.currentTime=r.currentTimeNew),r.gestureType="none"}}}function kp(e,t,n,o,r,i,s,a){const l={play:e,stop:n,pause:t,seek:o,sendDanmu:r,playbackRate:i,requestFullScreen:s,exitFullScreen:a};!function(e,t,n,o){const r=hi().proxy;o=null==o?ec():o,Mo((()=>{Xf(t||zf(r),e,o),!n&&t||Zn((()=>r.id),((t,n)=>{Xf(zf(r,t),e,o),Kf(n&&zf(r,n))}))})),Fo((()=>{Kf(t||zf(r),o)}))}(((e,t)=>{let n;switch(e){case"seek":n=t.position;break;case"sendDanmu":n=t;break;case"playbackRate":n=t.rate}e in l&&l[e](n)}),function(e){const t=ec(),n=hi().proxy,o=n.$options.name.toLowerCase(),r=e||n.id||"context"+Yf++;return Mo((()=>{n.$el.__uniContextInfo={id:r,type:o,page:t}})),`${o}.${r}`}(),!0)}const Op=Hc({name:"Video",props:{id:{type:String,default:""},src:{type:String,default:""},duration:{type:[Number,String],default:""},controls:{type:[Boolean,String],default:!0},danmuList:{type:Array,default:()=>[]},danmuBtn:{type:[Boolean,String],default:!1},enableDanmu:{type:[Boolean,String],default:!1},autoplay:{type:[Boolean,String],default:!1},loop:{type:[Boolean,String],default:!1},muted:{type:[Boolean,String],default:!1},objectFit:{type:String,default:"contain"},poster:{type:String,default:""},direction:{type:[String,Number],default:""},showProgress:{type:Boolean,default:!0},initialTime:{type:[String,Number],default:0},showFullscreenBtn:{type:[Boolean,String],default:!0},pageGesture:{type:[Boolean,String],default:!1},vslideGesture:{type:[Boolean,String],default:!1},enableProgressGesture:{type:[Boolean,String],default:!0},showPlayBtn:{type:[Boolean,String],default:!0},showCenterPlayBtn:{type:[Boolean,String],default:!0}},emits:["fullscreenchange","progress","loadedmetadata","waiting","error","play","pause","ended","timeupdate"],setup(e,{emit:t,attrs:n,slots:o}){const r=nn(null),i=nn(null),s=qc(r,t),{state:a}=bf(),{$attrs:l}=Bf({excludeListeners:!0});vl();const{videoRef:c,state:u,play:d,pause:f,stop:h,seek:g,playbackRate:m,toggle:v,onDurationChange:y,onLoadedMetadata:b,onProgress:_,onWaiting:w,onVideoError:x,onPlay:S,onPause:T,onEnded:C,onTimeUpdate:E}=function(e,t,n){const o=nn(null),r=Ci((()=>Dd(e.src))),i=Ci((()=>"true"===e.muted||!0===e.muted)),s=Ft({start:!1,src:r,playing:!1,currentTime:0,duration:0,currentDuration:0,progress:0,buffered:0,muted:i,pauseUpdatingCurrentTime:!1});function a(e){const t=e.target,n=t.buffered;n.length&&(s.buffered=n.end(n.length-1)/t.duration*100)}function l(){o.value.pause()}function c(e){const t=o.value;"number"!=typeof(e=Number(e))||isNaN(e)||(t.currentTime=e)}return Zn((()=>r.value),(()=>{s.playing=!1,s.currentTime=0})),Zn((()=>s.buffered),(e=>{n("progress",{},{buffered:e})})),Zn((()=>i.value),(e=>{o.value.muted=e})),Zn([()=>s.duration,()=>e.duration],(()=>{let t=Number(e.duration);isNaN(t)&&(t=0),s.currentDuration=t>0?t:s.duration})),{videoRef:o,state:s,play:function(){const e=o.value;s.start=!0,e.play()},pause:l,stop:function(){c(0),l()},seek:c,playbackRate:function(e){o.value.playbackRate=e},toggle:function(){const e=o.value;s.playing?e.pause():e.play()},onDurationChange:function({target:e}){s.duration=e.duration},onLoadedMetadata:function(t){const o=Number(e.initialTime)||0,r=t.target;o>0&&(r.currentTime=o),n("loadedmetadata",t,{width:r.videoWidth,height:r.videoHeight,duration:r.duration}),a(t)},onProgress:a,onWaiting:function(e){n("waiting",e,{})},onVideoError:function(e){s.playing=!1,n("error",e,{})},onPlay:function(e){s.start=!0,s.playing=!0,n("play",e,{})},onPause:function(e){s.playing=!1,n("pause",e,{})},onEnded:function(e){s.playing=!1,n("ended",e,{})},onTimeUpdate:function(e){const t=e.target;s.pauseUpdatingCurrentTime||(s.currentTime=t.currentTime);const o=t.currentTime;n("timeupdate",e,{currentTime:o,duration:t.duration})}}}(e,0,s),{state:k,danmuRef:O,updateDanmu:L,toggleDanmu:$,sendDanmu:A}=function(e,t){const n=nn(null),o=Ft({enable:Boolean(e.enableDanmu)});let r={time:0,index:-1};const i=p(e.danmuList)?JSON.parse(JSON.stringify(e.danmuList)):[];function s(e){const t=document.createElement("p");t.className="uni-video-danmu-item",t.innerText=e.text;let o=`bottom: ${100*Math.random()}%;color: ${e.color};`;t.setAttribute("style",o),n.value.appendChild(t),setTimeout((function(){o+="left: 0;-webkit-transform: translateX(-100%);transform: translateX(-100%);",t.setAttribute("style",o),setTimeout((function(){t.remove()}),4e3)}),17)}return i.sort((function(e,t){return(e.time||0)-(t.time||0)})),{state:o,danmuRef:n,updateDanmu:function(e){const n=e.target.currentTime,a=r,l={time:n,index:a.index};if(n>a.time)for(let r=a.index+1;r=(e.time||0)))break;l.index=r,t.playing&&o.enable&&s(e)}else if(n-1&&n<=(i[t].time||0);t--)l.index=t-1;r=l},toggleDanmu:function(){o.enable=!o.enable},sendDanmu:function(e){i.splice(r.index+1,0,{text:String(e.text),color:e.color,time:t.currentTime||0})}}}(e,u),{state:P,onFullscreenChange:R,emitFullscreenChange:B,toggleFullscreen:N,requestFullScreen:j,exitFullScreen:M}=function(e,t,n,o,r){const i=Ft({fullscreen:!1}),s=/^Apple/.test(navigator.vendor);function a(t){i.fullscreen=t,e("fullscreenchange",{},{fullScreen:t,direction:"vertical"})}function l(e){const i=r.value,l=t.value,c=n.value;let u;e?!document.fullscreenEnabled&&!document.webkitFullscreenEnabled||s&&!o.userAction?c.webkitEnterFullScreen?c.webkitEnterFullScreen():(u=!0,l.remove(),l.classList.add("uni-video-type-fullscreen"),document.body.appendChild(l)):l[document.fullscreenEnabled?"requestFullscreen":"webkitRequestFullscreen"]():document.fullscreenEnabled||document.webkitFullscreenEnabled?document.fullscreenElement?document.exitFullscreen():document.webkitFullscreenElement&&document.webkitExitFullscreen():c.webkitExitFullScreen?c.webkitExitFullScreen():(u=!0,l.remove(),l.classList.remove("uni-video-type-fullscreen"),i.appendChild(l)),u&&a(e)}function c(){l(!1)}return Fo(c),{state:i,onFullscreenChange:function(e,t){t&&document.fullscreenEnabled||a(!(!document.fullscreenElement&&!document.webkitFullscreenElement))},emitFullscreenChange:a,toggleFullscreen:l,requestFullScreen:function(){l(!0)},exitFullScreen:c}}(s,i,c,a,r),{state:I,onTouchstart:V,onTouchend:F,onTouchmove:D}=Ep(e,u,c,P),{state:H,progressRef:W,ballRef:U,clickProgress:q,toggleControls:z,autoHideEnd:X,autoHideStart:K}=function(e,t,n,o){const r=nn(null),i=nn(null),s=Ci((()=>e.showCenterPlayBtn&&!t.start)),a=nn(!0),l=Ci((()=>!s.value&&e.controls&&a.value)),c=Ft({seeking:!1,touching:!1,controlsTouching:!1,centerPlayBtnShow:s,controlsShow:l,controlsVisible:a});let u;function d(){u=setTimeout((()=>{c.controlsVisible=!1}),3e3)}function f(){u&&(clearTimeout(u),u=null)}return Fo((()=>{u&&clearTimeout(u)})),Zn((()=>c.controlsShow&&t.playing&&!c.controlsTouching),(e=>{e?d():f()})),Mo((()=>{const e=ve(!1);let s,a,l,u=!0;const d=i.value;function f(e){const n=e.targetTouches[0],i=n.pageX,d=n.pageY;if(u&&Math.abs(i-s)100&&(h=100),t.progress=h,null==o||o(t.currentDuration*h/100),c.seeking=!0,e.preventDefault(),e.stopPropagation()}function p(o){c.controlsTouching=!1,c.touching&&(d.removeEventListener("touchmove",f,e),u||(o.preventDefault(),o.stopPropagation(),n(t.currentDuration*t.progress/100)),c.touching=!1)}d.addEventListener("touchstart",(n=>{c.controlsTouching=!0;const o=n.targetTouches[0];s=o.pageX,a=o.pageY,l=t.progress,u=!0,c.touching=!0,d.addEventListener("touchmove",f,e)})),d.addEventListener("touchend",p),d.addEventListener("touchcancel",p)})),{state:c,progressRef:r,ballRef:i,clickProgress:function(e){const o=r.value;let i=e.target,s=e.offsetX;for(;i&&i!==o;)s+=i.offsetLeft,i=i.parentNode;const a=o.offsetWidth;let l=0;s>=0&&s<=a&&(l=s/a,n(t.currentDuration*l))},toggleControls:function(){c.controlsVisible=!c.controlsVisible},autoHideStart:d,autoHideEnd:f}}(e,u,g,(e=>{I.currentTimeNew=e}));kp(d,f,h,g,A,m,j,M);const Y=function(e,t,n,o,r){const i=Ci((()=>"progress"===t.gestureType||n.touching));return Zn(i,(o=>{e.pauseUpdatingCurrentTime=o,n.controlsTouching=o,"progress"===t.gestureType&&o&&(n.controlsVisible=o)})),Zn([()=>e.currentTime,()=>e.currentDuration],(()=>{e.currentDuration>0?e.progress=e.currentTime/e.currentDuration*100:e.progress=0,e.progress>100&&(e.progress=100)}),{immediate:!0}),Zn((()=>t.currentTimeNew),(t=>{e.currentTime=t})),i}(u,I,H);return()=>ni("uni-video",{ref:r,id:e.id,onClick:z},[ni("div",{ref:i,class:"uni-video-container",onTouchstart:V,onTouchend:F,onTouchmove:D,onFullscreenchange:bs(R,["stop"]),onWebkitfullscreenchange:bs((e=>R(e,!0)),["stop"])},[ni("video",ci({ref:c,style:{"object-fit":e.objectFit},muted:!!e.muted,loop:!!e.loop,src:u.src,poster:e.poster,autoplay:!!e.autoplay},l.value,{class:{"uni-video-video":!0,"uni-video-video-fullscreen":P.fullscreen},"webkit-playsinline":!0,playsinline:!0,onDurationchange:y,onLoadedmetadata:b,onProgress:_,onWaiting:w,onError:x,onPlay:S,onPause:T,onEnded:C,onTimeupdate:e=>{E(e),L(e)},onWebkitbeginfullscreen:()=>B(!0),onX5videoenterfullscreen:()=>B(!0),onWebkitendfullscreen:()=>B(!1),onX5videoexitfullscreen:()=>B(!1)}),null,16,["muted","loop","src","poster","autoplay","webkit-playsinline","playsinline","onDurationchange","onLoadedmetadata","onProgress","onWaiting","onError","onPlay","onPause","onEnded","onTimeupdate","onWebkitbeginfullscreen","onX5videoenterfullscreen","onWebkitendfullscreen","onX5videoexitfullscreen"]),oo(ni("div",{class:"uni-video-bar uni-video-bar-full",onClick:bs((()=>{}),["stop"])},[ni("div",{class:"uni-video-controls"},[oo(ni("div",{class:{"uni-video-icon":!0,"uni-video-control-button":!0,"uni-video-control-button-play":!u.playing,"uni-video-control-button-pause":u.playing},onClick:bs(v,["stop"])},null,10,["onClick"]),[[Xi,e.showPlayBtn]]),oo(ni("div",{class:"uni-video-current-time"},[Cp(u.currentTime)],512),[[Xi,e.showProgress]]),oo(ni("div",{ref:W,class:"uni-video-progress-container",onClick:bs(q,["stop"])},[ni("div",{class:{"uni-video-progress":!0,"uni-video-progress-progressing":Y.value}},[ni("div",{style:{width:u.buffered-u.progress+"%",left:u.progress+"%"},class:"uni-video-progress-buffered"},null,4),ni("div",{style:{width:u.progress+"%"},class:"uni-video-progress-played"},null,4),ni("div",{ref:U,style:{left:u.progress+"%"},class:{"uni-video-ball":!0,"uni-video-ball-progressing":Y.value}},[ni("div",{class:"uni-video-inner"},null)],6)],2)],8,["onClick"]),[[Xi,e.showProgress]]),oo(ni("div",{class:"uni-video-duration"},[Cp(u.currentDuration)],512),[[Xi,e.showProgress]])]),oo(ni("div",{class:{"uni-video-icon":!0,"uni-video-danmu-button":!0,"uni-video-danmu-button-active":k.enable},onClick:bs($,["stop"])},null,10,["onClick"]),[[Xi,e.danmuBtn]]),oo(ni("div",{class:{"uni-video-icon":!0,"uni-video-fullscreen":!0,"uni-video-type-fullscreen":P.fullscreen},onClick:bs((()=>N(!P.fullscreen)),["stop"])},null,10,["onClick"]),[[Xi,e.showFullscreenBtn]])],8,["onClick"]),[[Xi,H.controlsShow]]),oo(ni("div",{ref:O,style:"z-index: 0;",class:"uni-video-danmu"},null,512),[[Xi,u.start&&k.enable]]),H.centerPlayBtnShow&&ni("div",{class:"uni-video-cover",onClick:bs((()=>{}),["stop"])},[ni("div",{class:"uni-video-cover-play-button uni-video-icon",onClick:bs(d,["stop"])},null,8,["onClick"])],8,["onClick"]),ni("div",{class:"uni-video-loading"},["volume"===I.gestureType?ni("div",{class:{"uni-video-toast-container":!0,"uni-video-toast-container-thin":I.toastThin},style:{marginTop:"5px"}},[!I.toastThin&&I.volumeNew>0&&"volume"===I.gestureType?ni("text",{class:"uni-video-icon uni-video-toast-icon"},[""]):!I.toastThin&&ni("text",{class:"uni-video-icon uni-video-toast-icon"},[""]),ni("div",{class:"uni-video-toast-draw",style:{width:100*I.volumeNew+"%"}},null)],2):null]),ni("div",{class:{"uni-video-toast":!0,"uni-video-toast-progress":Y.value}},[ni("div",{class:"uni-video-toast-title"},[ni("span",{class:"uni-video-toast-title-current-time"},[Cp(I.currentTimeNew)])," / ",Cp(u.currentDuration)])],2),ni("div",{class:"uni-video-slots"},[o.default&&o.default()])],40,["onTouchstart","onTouchend","onTouchmove","onFullscreenchange","onWebkitfullscreenchange"])],8,["id","onClick"])}}),Lp=navigator.cookieEnabled&&(window.localStorage||window.sessionStorage)||{};let $p;function Ap(){if($p=$p||Lp.__DC_STAT_UUID,!$p){$p=Date.now()+""+Math.floor(1e7*Math.random());try{Lp.__DC_STAT_UUID=$p}catch(e){}}return $p}function Pp(){if(!0!==__uniConfig.darkmode)return v(__uniConfig.darkmode)?__uniConfig.darkmode:"light";try{return window.matchMedia("(prefers-color-scheme: light)").matches?"light":"dark"}catch(e){return"light"}}function Rp(){let e,t="0",n="",o="phone";const r=navigator.language;if(Ud){e="iOS";const o=Hd.match(/OS\s([\w_]+)\slike/);o&&(t=o[1].replace(/_/g,"."));const r=t.split(".")[0];if(Number(r)>=18){const e=Hd.match(/Version\/([\d\.]+)/);e&&(t=e[1])}const i=Hd.match(/\(([a-zA-Z]+);/);i&&(n=i[1])}else if(Wd){e="Android";const o=Hd.match(/Android[\s/]([\w\.]+)[;\s]/);o&&(t=o[1]);const r=Hd.match(/\((.+?)\)/),i=r?r[1].split(";"):Hd.split(" "),s=[/\bAndroid\b/i,/\bLinux\b/i,/\bU\b/i,/^\s?[a-z][a-z]$/i,/^\s?[a-z][a-z]-[a-z][a-z]$/i,/\bwv\b/i,/\/[\d\.,]+$/,/^\s?[\d\.,]+$/,/\bBrowser\b/i,/\bMobile\b/i];for(let e=0;e0){n=t.split("Build")[0].trim();break}let o;for(let e=0;e-1&&e.indexOf("MSIE")>-1,n=e.indexOf("Edge")>-1&&!t,o=e.indexOf("Trident")>-1&&e.indexOf("rv:11.0")>-1;if(t){new RegExp("MSIE (\\d+\\.\\d+);").test(e);const t=parseFloat(RegExp.$1);return t>6?t:6}return n?-1:o?11:-1}());if("-1"!==l)a="IE";else{const e=["Version","Firefox","Chrome","Edge{0,1}"],t=["Safari","Firefox","Chrome","Edge"];for(let n=0;n{const e=window.devicePixelRatio,t=Gd(),n=Jd(t),o=Zd(t,n),r=function(e,t){return e?Math[t?"min":"max"](screen.height,screen.width):screen.height}(t,n),i=Qd();let s=window.innerHeight;const a=ql.top,l={left:ql.left,right:i-ql.right,top:ql.top,bottom:s-ql.bottom,width:i-ql.left-ql.right,height:s-ql.top-ql.bottom},{top:c,bottom:u}=function(){const e=document.documentElement.style,t=Yl(),n=Kl(e,"--window-bottom"),o=Kl(e,"--window-left"),r=Kl(e,"--window-right"),i=Kl(e,"--top-window-height");return{top:t,bottom:n?n+ql.bottom:0,left:o?o+ql.left:0,right:r?r+ql.right:0,topWindowHeight:i||0}}();return s-=c,s-=u,{windowTop:c,windowBottom:u,windowWidth:i,windowHeight:s,pixelRatio:e,screenWidth:o,screenHeight:r,statusBarHeight:a,safeArea:l,safeAreaInsets:{top:ql.top,right:ql.right,bottom:ql.bottom,left:ql.left},screenTop:r-s}}));let Np,jp=!0;function Mp(){jp&&(Np=Rp())}const Ip=$u(0,(()=>{Mp();const{deviceBrand:e,deviceModel:t,brand:n,model:o,platform:r,system:i,deviceOrientation:s,deviceType:a,osname:l,osversion:u}=Np;return c({brand:n,deviceBrand:e,deviceModel:t,devicePixelRatio:window.devicePixelRatio,deviceId:Ap(),deviceOrientation:s,deviceType:a,model:o,osName:l?l.toLowerCase():void 0,osVersion:u,platform:r,system:i})})),Vp=$u(0,(()=>{Mp();const{theme:e,language:t,browserName:n,browserVersion:o}=Np;return c({appId:__uniConfig.appId,appName:__uniConfig.appName,appVersion:__uniConfig.appVersion,appVersionCode:__uniConfig.appVersionCode,appLanguage:Du?Du():t,enableDebug:!1,hostSDKVersion:void 0,hostPackageName:void 0,hostFontSizeSetting:void 0,hostName:n,hostVersion:o,hostTheme:e,hostLanguage:t,isUniAppX:!1,language:t,SDKVersion:"",theme:e,uniPlatform:"web",uniCompileVersion:__uniConfig.compilerVersion,uniCompilerVersion:__uniConfig.compilerVersion,uniRuntimeVersion:__uniConfig.compilerVersion,version:""},{})})),Fp=$u(0,(()=>{jp=!0,Mp(),jp=!1;const e=Bp(),t=Ip(),n=Vp();jp=!0;const{ua:o,browserName:r,browserVersion:i,osname:s,osversion:a}=Np,l=c(e,t,n,{browserName:r,browserVersion:i,fontSizeSetting:void 0,osName:s.toLowerCase(),osVersion:a,osLanguage:void 0,osTheme:void 0,ua:o,uniPlatform:"web",uniCompileVersion:__uniConfig.compilerVersion,uniRuntimeVersion:__uniConfig.compilerVersion});return delete l.screenTop,delete l.enableDebug,__uniConfig.darkmode||delete l.theme,l}));const Dp=$u(0,((e,t)=>{const n=typeof t,o="string"===n?t:JSON.stringify({type:n,data:t});localStorage.setItem(e,o)}));function Hp(e){const t=localStorage&&localStorage.getItem(e);if(!v(t))throw new Error("data not found");let n=t;try{const e=function(e){const t=["object","string","number","boolean","undefined"];try{const n=v(e)?JSON.parse(e):e,o=n.type;if(t.indexOf(o)>=0){const e=Object.keys(n);if(2===e.length&&"data"in n){if(typeof n.data===o)return n.data;if("object"===o&&/^\d{4}-\d{2}-\d{2}T\d{2}\:\d{2}\:\d{2}\.\d{3}Z$/.test(n.data))return new Date(n.data)}else if(1===e.length)return""}}catch(n){}}(JSON.parse(t));void 0!==e&&(n=e)}catch(o){}return n}const Wp=$u(0,(e=>{try{return Hp(e)}catch(t){return""}})),Up=$u(0,(e=>{localStorage&&localStorage.removeItem(e)})),qp={esc:["Esc","Escape"],enter:["Enter"]},zp=Object.keys(qp);const Xp=ni("div",{class:"uni-mask"},null,-1);function Kp(e,{onEsc:t,onEnter:n}){const o=nn(e.visible),{key:r,disable:i}=function(){const e=nn(""),t=nn(!1),n=n=>{if(t.value)return;const o=zp.find((e=>-1!==qp[e].indexOf(n.key)));o&&(e.value=o),Sn((()=>e.value=""))};return Mo((()=>{document.addEventListener("keyup",n)})),Fo((()=>{document.removeEventListener("keyup",n)})),{key:e,disable:t}}();return Zn((()=>e.visible),(e=>o.value=e)),Zn((()=>o.value),(e=>i.value=!e)),Gn((()=>{const{value:e}=r;"esc"===e?t&&t():"enter"===e&&n&&n()})),o}const Yp=Lu("request",(({url:e,data:t,header:n={},method:o,dataType:r,responseType:i,enableChunked:s,withCredentials:a,timeout:l=__uniConfig.networkTimeout.request},{resolve:c,reject:u})=>{let d=null;const p=function(e){const t=Object.keys(e).find((e=>"content-type"===e.toLowerCase()));if(!t)return;const n=e[t];if(!n)return"string";if(0===n.indexOf("application/json"))return"json";if(0===n.indexOf("application/x-www-form-urlencoded"))return"urlencoded";return"string"}(n);if("GET"!==o)if(v(t)||t instanceof ArrayBuffer)d=t;else if("json"===p)try{d=JSON.stringify(t)}catch(g){d=t.toString()}else if("urlencoded"===p){const e=[];for(const n in t)f(t,n)&&e.push(encodeURIComponent(n)+"="+encodeURIComponent(t[n]));d=e.join("&")}else d=t.toString();let h;if(s){if(void 0===typeof window.fetch||void 0===typeof window.AbortController)throw new Error("fetch or AbortController is not supported in this environment");const t=new AbortController,s=t.signal;h=new Jp(t);const f={method:o,headers:n,body:d,signal:s,credentials:a?"include":"same-origin"},p=setTimeout((function(){h.abort(),u("timeout",{errCode:5})}),l);f.signal.addEventListener("abort",(function(){clearTimeout(p),u("abort",{errCode:600003})})),window.fetch(e,f).then((e=>{const t=e.status,n=e.headers,o=e.body,s={};n.forEach(((e,t)=>{s[t]=e}));const a=Gp(s);if(h._emitter.emit("headersReceived",{header:s,statusCode:t,cookies:a}),!o)return void c({data:"",statusCode:t,header:s,cookies:a});const l=o.getReader(),u=[],d=()=>{l.read().then((({done:e,value:n})=>{if(e){const e=function(e){const t=e.reduce(((e,t)=>e+t.byteLength),0),n=new Uint8Array(t);let o=0;for(const r of e)n.set(new Uint8Array(r),o),o+=r.byteLength;return n.buffer}(u);let n="text"===i?(new TextDecoder).decode(e):e;return"text"===i&&(n=Qp(n,i,r)),void c({data:n,statusCode:t,header:s,cookies:a})}const o=n;u.push(o),h._emitter.emit("chunkReceived",{data:o}),d()}))};d()}),(e=>{u(e,{errCode:5})}))}else{const t=new XMLHttpRequest;h=new Jp(t),t.open(o,e);for(const e in n)f(n,e)&&t.setRequestHeader(e,n[e]);const s=setTimeout((function(){t.onload=t.onabort=t.onerror=null,h.abort(),u("timeout",{errCode:5})}),l);t.responseType=i,t.onload=function(){clearTimeout(s);const e=t.status;let n="text"===i?t.responseText:t.response;"text"===i&&(n=Qp(n,i,r)),c({data:n,statusCode:e,header:Zp(t.getAllResponseHeaders()),cookies:[]})},t.onabort=function(){clearTimeout(s),u("abort",{errCode:600003})},t.onerror=function(){clearTimeout(s),u(void 0,{errCode:5})},t.withCredentials=a,t.send(d)}return h}),0,zu),Gp=e=>{let t=e["Set-Cookie"]||e["set-cookie"],n=[];if(!t)return[];"["===t[0]&&"]"===t[t.length-1]&&(t=t.slice(1,-1));const o=t.split(";");for(let r=0;r{t===e&&(this._requestOnHeadersReceiveCallbacks.delete(n),this._emitter.off("headersReceived",e))}));const t=this._requestOnHeadersReceiveCallbacks.get(e);t&&(this._requestOnHeadersReceiveCallbacks.delete(e),this._emitter.off("headersReceived",t))}onChunkReceived(e){return this._emitter.on("chunkReceived",e),this._requestOnChunkReceiveCallbackId++,this._requestOnChunkReceiveCallbacks.set(this._requestOnChunkReceiveCallbackId,e),this._requestOnChunkReceiveCallbackId}offChunkReceived(e){if(null==e)return void this._emitter.off("chunkReceived");if("function"==typeof e)return void this._requestOnChunkReceiveCallbacks.forEach(((t,n)=>{t===e&&(this._requestOnChunkReceiveCallbacks.delete(n),this._emitter.off("chunkReceived",e))}));const t=this._requestOnChunkReceiveCallbacks.get(e);t&&(this._requestOnChunkReceiveCallbacks.delete(e),this._emitter.off("chunkReceived",t))}}function Zp(e){const t={};return e.split("\n").forEach((e=>{const n=e.match(/(\S+\s*):\s*(.*)/);n&&3===n.length&&(t[n[1]]=n[2])})),t}function Qp(e,t,n){let o=e;if("text"===t&&"json"===n)try{o=JSON.parse(o)}catch(r){}return o}class eh{constructor(e){this._callbacks=[],this._xhr=e}onProgressUpdate(e){m(e)&&this._callbacks.push(e)}offProgressUpdate(e){const t=this._callbacks.indexOf(e);t>=0&&this._callbacks.splice(t,1)}abort(){this._xhr&&(this._xhr.abort(),delete this._xhr)}onHeadersReceived(e){throw new Error("Method not implemented.")}offHeadersReceived(e){throw new Error("Method not implemented.")}}const th=Lu("downloadFile",(({url:e,header:t={},timeout:n=__uniConfig.networkTimeout.downloadFile},{resolve:o,reject:r})=>{var i,s=new XMLHttpRequest,a=new eh(s);return s.open("GET",e,!0),Object.keys(t).forEach((e=>{s.setRequestHeader(e,t[e])})),s.responseType="blob",s.onload=function(){clearTimeout(i);const t=s.status,n=this.response;let r;const a=s.getResponseHeader("content-disposition");if(a){const e=a.match(/filename="?(\S+)"?\b/);e&&(r=e[1])}n.name=r||function(e){const t=(e=e.split("#")[0].split("?")[0]).split("/");return t[t.length-1]}(e),o({statusCode:t,tempFilePath:tf(n)})},s.onabort=function(){clearTimeout(i),r("abort",{errCode:600003})},s.onerror=function(){clearTimeout(i),r("",{errCode:602001})},s.onprogress=function(e){a._callbacks.forEach((t=>{var n=e.loaded,o=e.total;t({progress:Math.round(n/o*100),totalBytesWritten:n,totalBytesExpectedToWrite:o})}))},s.send(),i=setTimeout((function(){s.onprogress=s.onload=s.onabort=s.onerror=null,a.abort(),r("timeout",{errCode:5})}),n),a}),0,Xu),nh=Au("navigateBack",((e,{resolve:t,reject:n})=>{let o=!0;return!0===cc("onBackPress",{from:e.from||"navigateBack"})&&(o=!1),o?(mp().$router.go(-e.delta),t()):n("onBackPress")}),0,Zu),oh=Au("navigateTo",(({url:e,events:t,isAutomatedTesting:n},{resolve:o,reject:r})=>{if(bd.handledBeforeEntryPageRoutes)return ud({type:"navigateTo",url:e,events:t,isAutomatedTesting:n}).then(o).catch(r);_d.push({args:{type:"navigateTo",url:e,events:t,isAutomatedTesting:n},resolve:o,reject:r})}),0,Yu);const rh={light:{cancelColor:"#000000"},dark:{cancelColor:"rgb(170, 170, 170)"}},ih=vo({props:{title:{type:String,default:""},content:{type:String,default:""},showCancel:{type:Boolean,default:!0},cancelText:{type:String,default:"Cancel"},cancelColor:{type:String,default:"#000000"},confirmText:{type:String,default:"OK"},confirmColor:{type:String,default:"#007aff"},visible:{type:Boolean},editable:{type:Boolean,default:!1},placeholderText:{type:String,default:""}},setup(e,{emit:t}){const n=nn(""),o=()=>s.value=!1,r=()=>(o(),t("close","cancel")),i=()=>(o(),t("close","confirm",n.value)),s=Kp(e,{onEsc:r,onEnter:()=>{!e.editable&&i()}}),a=function(e){const t=nn(e.cancelColor),n=({theme:e})=>{((e,t)=>{t.value=rh[e].cancelColor})(e,t)};return Gn((()=>{var o;e.visible?(t.value=e.cancelColor,"#000"===e.cancelColor&&("dark"===Pp()&&n({theme:"dark"}),o=n,__uniConfig.darkmode&&hh.on("onThemeChange",o))):function(e){hh.off("onThemeChange",e)}(n)})),t}(e);return()=>{const{title:t,content:o,showCancel:l,confirmText:c,confirmColor:u,editable:d,placeholderText:f}=e;return n.value=o,ni(Ri,{name:"uni-fade"},{default:()=>[oo(ni("uni-modal",{onTouchmove:zl},[Xp,ni("div",{class:"uni-modal"},[t?ni("div",{class:"uni-modal__hd"},[ni("strong",{class:"uni-modal__title",textContent:t||""},null,8,["textContent"])]):null,d?ni("textarea",{class:"uni-modal__textarea",rows:"1",placeholder:f,value:o,onInput:e=>n.value=e.target.value},null,40,["placeholder","value","onInput"]):ni("div",{class:"uni-modal__bd",onTouchmovePassive:Xl,textContent:o},null,40,["onTouchmovePassive","textContent"]),ni("div",{class:"uni-modal__ft"},[l&&ni("div",{style:{color:a.value},class:"uni-modal__btn uni-modal__btn_default",onClick:r},[e.cancelText],12,["onClick"]),ni("div",{style:{color:u},class:"uni-modal__btn uni-modal__btn_primary",onClick:i},[c],12,["onClick"])])])],40,["onTouchmove"]),[[Xi,s.value]])]})}}});let sh;const ah=fe((()=>{hh.on("onHidePopup",(()=>sh.visible=!1))}));let lh;function ch(e,t){const n="confirm"===e,o={confirm:n,cancel:"cancel"===e};n&&sh.editable&&(o.content=t),lh&&lh(o)}const uh=Au("showModal",((e,{resolve:t})=>{ah(),lh=t,sh?(c(sh,e),sh.visible=!0):(sh=Ft(e),Sn((()=>{return(e=ih,t=sh,n=ch,t.onClose=(...e)=>(t.visible=!1,n.apply(null,e)),xs(vo({setup:()=>()=>(Ur(),Yr(e,t,null,16))}))).mount(function(e){let t=document.getElementById(e);return t||(t=document.createElement("div"),t.id=e,document.body.append(t)),t}("u-a-m")),Sn((()=>sh.visible=!0));var e,t,n})))}),0,rd);function dh(e){function t(){var t;(t=e.navigationBar.titleText)&&t!==document.title&&(document.title=t),hh.emit("onNavigationBarChange",{titleText:t})}Gn(t),Eo(t)}const fh=Wc({name:"Layout",setup(e,{emit:t}){const n=nn(null);Gl({"--status-bar-height":"0px","--top-window-height":"0px","--window-left":"0px","--window-right":"0px","--window-margin":"0px","--tab-bar-height":"0px"});const o=function(){const e=tl();return{routeKey:Ci((()=>$d("/"+e.meta.route,ru()))),isTabBar:Ci((()=>e.meta.isTabBar)),routeCache:Pd}}(),{layoutState:r,windowState:i}=function(){ou();{const e=Ft({marginWidth:0,leftWindowWidth:0,rightWindowWidth:0});return Zn((()=>e.marginWidth),(e=>Gl({"--window-margin":e+"px"}))),Zn((()=>e.leftWindowWidth+e.marginWidth),(e=>{Gl({"--window-left":e+"px"})})),Zn((()=>e.rightWindowWidth+e.marginWidth),(e=>{Gl({"--window-right":e+"px"})})),{layoutState:e,windowState:Ci((()=>({})))}}}();!function(e,t){const n=ou();function o(){const o=document.body.clientWidth,r=Ed();let i={};if(r.length>0){i=yd(r[r.length-1]).meta}else{const e=gc(n.path,!0);e&&(i=e.meta)}const s=parseInt(String((f(i,"maxWidth")?i.maxWidth:__uniConfig.globalStyle.maxWidth)||Number.MAX_SAFE_INTEGER));let a=!1;a=o>s,a&&s?(e.marginWidth=(o-s)/2,Sn((()=>{const e=t.value;e&&e.setAttribute("style","max-width:"+s+"px;margin:0 auto;")}))):(e.marginWidth=0,Sn((()=>{const e=t.value;e&&e.removeAttribute("style")})))}Zn([()=>n.path],o),Mo((()=>{o(),window.addEventListener("resize",o)}))}(r,n);const s=function(e){const t=nn(!1);return Ci((()=>({"uni-app--showtabbar":e&&e.value,"uni-app--maxwidth":t.value})))}(!1);return()=>{const e=function(e,t,n,o,r,i){return function({routeKey:e,isTabBar:t,routeCache:n}){return ni(Qa,null,{default:In((({Component:o})=>[(Ur(),Yr(To,{matchBy:"key",cache:n},[(Ur(),Yr(qn(o),{type:t.value?"tabBar":"",key:e.value}))],1032,["cache"]))])),_:1})}(e)}(o);return ni("uni-app",{ref:n,class:s.value},[e,!1],2)}}});const ph=c(Tl,{publishHandler(e,t,n){hh.subscribeHandler(e,t,n)}}),hh=c(Lc,{publishHandler(e,t,n){ph.subscribeHandler(e,t,n)}}),gh=Wc({name:"PageBody",setup(e,t){const n=nn(null),o=nn(null);return Zn((()=>false.enablePullDownRefresh),(()=>{o.value=null}),{immediate:!0}),()=>ni(Ir,null,[!1,ni("uni-page-wrapper",ci({ref:n},o.value),[ni("uni-page-body",null,[Xo(t.slots,"default")]),null],16)])}}),mh=Wc({name:"Page",setup(e,t){let n=nu(ru());n.navigationBar;const o={};return dh(n),()=>ni("uni-page",{"data-page":n.route,style:o},[vh(t),null])}});function vh(e){return Ur(),Yr(gh,{key:0},{default:In((()=>[Xo(e.slots,"page")])),_:3})}const yh={loading:"AsyncLoading",error:"AsyncError",delay:200,timeout:6e4,suspensible:!0};window.uni={},window.wx={},window.rpx2px=Fu;const bh=Object.assign({}),_h=Object.assign;window.__uniConfig=_h({globalStyle:{backgroundColor:"#F7F8FF",navigationBar:{backgroundColor:"#F7F8FF",titleText:"临床思维训练",type:"default",titleColor:"#000000"},isNVue:!1},uniIdRouter:{},compilerVersion:"5.07"},{appId:"",appName:"AI思维临床训练",appVersion:"1.0.0",appVersionCode:"100",async:yh,debug:!1,networkTimeout:{request:6e4,connectSocket:6e4,uploadFile:6e4,downloadFile:6e4},sdkConfigs:{},qqMapKey:void 0,bMapKey:void 0,googleMapKey:void 0,aMapKey:void 0,aMapSecurityJsCode:void 0,aMapServiceHost:void 0,nvue:{"flex-direction":"column"},locale:"",fallbackLocale:"",locales:Object.keys(bh).reduce(((e,t)=>{const n=t.replace(/\.\/locale\/(uni-app.)?(.*).json/,"$2");return _h(e[n]||(e[n]={}),bh[t].default),e}),{}),router:{mode:"hash",base:"./",assets:"assets",routerBase:"/"},darkmode:!1,themeConfig:{}}),window.__uniLayout=window.__uniLayout||{};const wh={delay:yh.delay,timeout:yh.timeout,suspensible:yh.suspensible};yh.loading&&(wh.loadingComponent={name:"SystemAsyncLoading",render:()=>ni(Wn(yh.loading))}),yh.error&&(wh.errorComponent={name:"SystemAsyncError",props:["error"],render(){return ni(Wn(yh.error),{error:this.error})}});const xh=()=>t((()=>import("./pages-index-index.CtHWSJz4.js")),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11]),import.meta.url).then((e=>_p(e.default||e))),Sh=bo(_h({loader:xh},wh)),Th=()=>t((()=>import("./pages-config-config.h5bc7jDo.js")),__vite__mapDeps([2,3,4,1,5,6]),import.meta.url).then((e=>_p(e.default||e))),Ch=bo(_h({loader:Th},wh)),Eh=()=>t((()=>import("./pages-home-home.Dlkj-jIS.js")),__vite__mapDeps([12,3,4,5,13]),import.meta.url).then((e=>_p(e.default||e))),kh=bo(_h({loader:Eh},wh)),Oh=()=>t((()=>import("./pages-matching-matching.DEEqkPi2.js")),__vite__mapDeps([14,3,15,16,1,5,17]),import.meta.url).then((e=>_p(e.default||e))),Lh=bo(_h({loader:Oh},wh)),$h=()=>t((()=>import("./pages-cases-cases.DMWiFIat.js")),__vite__mapDeps([18,15,16,1,4,5,19]),import.meta.url).then((e=>_p(e.default||e))),Ah=bo(_h({loader:$h},wh)),Ph=()=>t((()=>import("./pages-scenario-scenario.LpxrrFKu.js")),__vite__mapDeps([20,3,16,1,9,5,21]),import.meta.url).then((e=>_p(e.default||e))),Rh=bo(_h({loader:Ph},wh)),Bh=()=>t((()=>import("./pages-chat-chat.Cgzg1tzh.js")),__vite__mapDeps([22,3,16,1,9,4,5,23]),import.meta.url).then((e=>_p(e.default||e))),Nh=bo(_h({loader:Bh},wh)),jh=()=>t((()=>import("./pages-profile-profile-analysis.DXSDR32A.js")),__vite__mapDeps([24,3,8,1,9,5,25]),import.meta.url).then((e=>_p(e.default||e))),Mh=bo(_h({loader:jh},wh)),Ih=()=>t((()=>import("./pages-profile-profile-records.BLbtOxS8.js")),__vite__mapDeps([26,8,1,9,5,27]),import.meta.url).then((e=>_p(e.default||e))),Vh=bo(_h({loader:Ih},wh)),Fh=()=>t((()=>import("./pages-learning-assistant-learning-assistant.CCQRDo6G.js")),__vite__mapDeps([28,3,9,4,5,29]),import.meta.url).then((e=>_p(e.default||e))),Dh=bo(_h({loader:Fh},wh)),Hh=()=>t((()=>import("./pages-teaching-teaching.C2yN6RJA.js")),__vite__mapDeps([30,3,16,1,4,9,5,31]),import.meta.url).then((e=>_p(e.default||e))),Wh=bo(_h({loader:Hh},wh)),Uh=()=>t((()=>import("./pages-diagnosis-diagnosis.DRtwnust.js")),__vite__mapDeps([32,3,16,1,9,4,5,33]),import.meta.url).then((e=>_p(e.default||e))),qh=bo(_h({loader:Uh},wh)),zh=()=>t((()=>import("./pages-treatment-treatment.DmWM0nMA.js")),__vite__mapDeps([34,3,16,1,4,9,5,35]),import.meta.url).then((e=>_p(e.default||e))),Xh=bo(_h({loader:zh},wh)),Kh=()=>t((()=>import("./pages-assessment-assessment.BnDM0Jtm.js")),__vite__mapDeps([36,3,15,9,8,1,5,37]),import.meta.url).then((e=>_p(e.default||e))),Yh=bo(_h({loader:Kh},wh)),Gh=()=>t((()=>import("./pages-profile-profile.Q0dqF9dr.js")),__vite__mapDeps([7,8,1,9,5,10]),import.meta.url).then((e=>_p(e.default||e))),Jh=bo(_h({loader:Gh},wh));function Zh(e,t){return Ur(),Yr(mh,null,{page:In((()=>[ni(e,_h({},t,{ref:"page"}),null,512)])),_:1})}window.__uniRoutes=[{path:"/",alias:"/pages/index/index",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(Sh,t)}},loader:xh,meta:{isQuit:!0,isEntry:!0,navigationBar:{titleText:"临床思维训练",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/config/config",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(Ch,t)}},loader:Th,meta:{navigationBar:{titleText:"信息配置",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/home/home",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(kh,t)}},loader:Eh,meta:{navigationBar:{titleText:"临床思维训练",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/matching/matching",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(Lh,t)}},loader:Oh,meta:{navigationBar:{titleText:"智能匹配",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/cases/cases",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(Ah,t)}},loader:$h,meta:{navigationBar:{titleText:"病例列表",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/scenario/scenario",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(Rh,t)}},loader:Ph,meta:{navigationBar:{titleText:"场景配置",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/chat/chat",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(Nh,t)}},loader:Bh,meta:{navigationBar:{titleText:"临床对话",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/profile/profile-analysis",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(Mh,t)}},loader:jh,meta:{navigationBar:{titleText:"智能分析",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/profile/profile-records",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(Vh,t)}},loader:Ih,meta:{navigationBar:{titleText:"学习记录",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/learning-assistant/learning-assistant",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(Dh,t)}},loader:Fh,meta:{navigationBar:{titleText:"AI 学习助手",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/teaching/teaching",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(Wh,t)}},loader:Hh,meta:{navigationBar:{titleText:"教学模式",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/diagnosis/diagnosis",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(qh,t)}},loader:Uh,meta:{navigationBar:{titleText:"临床诊断",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/treatment/treatment",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(Xh,t)}},loader:zh,meta:{navigationBar:{titleText:"治疗计划",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/assessment/assessment",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(Yh,t)}},loader:Kh,meta:{navigationBar:{titleText:"考核评价",style:"custom",type:"default"},isNVue:!1}},{path:"/pages/profile/profile",component:{setup(){const e=mp(),t=e&&e.$route&&e.$route.query||{};return()=>Zh(Jh,t)}},loader:Gh,meta:{navigationBar:{titleText:"个人中心",style:"custom",type:"default"},isNVue:!1}}].map((e=>(e.meta.route=(e.alias||e.path).slice(1),e)));const Qh={onLaunch:function(){console.log("App Launch")},onShow:function(){console.log("App Show")},onHide:function(){console.log("App Hide")}};bp(Qh,{init:vp,setup(e){const t=ou(),n=()=>{var n;n=e,Object.keys(Hu).forEach((e=>{Hu[e].forEach((t=>{Bo(e,t,n)}))}));const{onLaunch:o,onShow:r,onPageNotFound:i}=e,s=function({path:e,query:t}){return c(nf,{path:e,query:t}),c(of,nf),c({},nf)}({path:t.path.slice(1)||__uniRoutes[0].meta.route,query:_e(t.query)});if(o&&B(o,s),r&&B(r,s),!t.matched.length){const e={notFound:!0,openType:"appLaunch",path:t.path,query:_e(t.query),scene:1001};dd(),i&&B(i,e)}};return vr(Ha).isReady().then(n),Mo((()=>{window.addEventListener("resize",Se(wp,50,{setTimeout:setTimeout,clearTimeout:clearTimeout})),window.addEventListener("message",xp),document.addEventListener("visibilitychange",Sp),function(){let e=null;try{e=window.matchMedia("(prefers-color-scheme: dark)")}catch(t){}if(e){let t=e=>{hh.emit("onThemeChange",{theme:e.matches?"dark":"light"})};e.addEventListener?e.addEventListener("change",t):e.addListener(t)}}()})),t.query},before(e){e.mpType="app";const{setup:t}=e,n=()=>(Ur(),Yr(fh));e.setup=(e,o)=>{const r=t&&t(e,o);return m(r)?n:r},e.render=n}}),xs(Qh).use(lp).mount("#app");export{Qc as A,uh as B,Yp as C,Wp as D,an as E,Ir as F,oh as G,le as H,Af as I,Zn as J,ti as K,Cd as L,nh as M,Uf as N,Op as O,Up as P,hi as Q,th as R,Mf as S,_i as T,Bo as U,oe as V,Ft as a,Do as b,Ci as c,vo as d,Ur as e,Yr as f,ii as g,oo as h,ni as i,ri as j,bs as k,Kr as l,zo as m,ce as n,Mo as o,ad as p,cd as q,nn as r,Dp as s,X as t,Sn as u,Xi as v,In as w,ff as x,Ff as y,qf as z}; diff --git a/dist/assets/learning-assistant-DgYniJVM.css b/dist/assets/learning-assistant-OcDOS-c7.css similarity index 59% rename from dist/assets/learning-assistant-DgYniJVM.css rename to dist/assets/learning-assistant-OcDOS-c7.css index cf4c248..e6ed86f 100644 --- a/dist/assets/learning-assistant-DgYniJVM.css +++ b/dist/assets/learning-assistant-OcDOS-c7.css @@ -1 +1 @@ -uni-page-body[data-v-18a2f742]{min-height:100%;background:#f2f3fb}body[data-v-18a2f742]{background:#f2f3fb}.learning-page[data-v-18a2f742]{min-height:100vh;background:#f2f3fb;color:#191c21;font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,Arial,sans-serif;-webkit-tap-highlight-color:transparent}.learning-shell[data-v-18a2f742]{position:relative;min-height:100vh;background:#fff;overflow:hidden;display:flex;flex-direction:column}.assistant-header[data-v-18a2f742]{position:relative;z-index:10;box-sizing:border-box;height:56px;padding:0 16px;border-bottom:1px solid #c2c6d4;background:#fff;display:flex;align-items:center;justify-content:space-between;flex:0 0 auto}.header-left[data-v-18a2f742],.header-actions[data-v-18a2f742],.director-chip[data-v-18a2f742],.assistant-meta[data-v-18a2f742],.evidence-heading[data-v-18a2f742],.composer-actions[data-v-18a2f742],.modal-doctor[data-v-18a2f742]{display:flex;align-items:center}.header-left[data-v-18a2f742],.header-actions[data-v-18a2f742]{gap:12px}.page-title[data-v-18a2f742]{color:#191c21;font-size:18px;line-height:28px;font-weight:600;letter-spacing:0}.icon-button[data-v-18a2f742],.director-chip[data-v-18a2f742],.quick-chip[data-v-18a2f742],.attach-button[data-v-18a2f742],.send-button[data-v-18a2f742],.mentor-card[data-v-18a2f742],.guidance-button[data-v-18a2f742]{padding:0;border:0;background:transparent}.icon-button[data-v-18a2f742]:after,.director-chip[data-v-18a2f742]:after,.quick-chip[data-v-18a2f742]:after,.attach-button[data-v-18a2f742]:after,.send-button[data-v-18a2f742]:after,.mentor-card[data-v-18a2f742]:after,.guidance-button[data-v-18a2f742]:after{border:0}.icon-button[data-v-18a2f742]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%}.icon-button[data-v-18a2f742]:active{background:rgba(25,28,33,.05)}.director-chip[data-v-18a2f742]{box-sizing:border-box;min-height:32px;padding:4px 8px;border:1px solid #c2c6d4;border-radius:12px;background:#f2f3fb;gap:8px;color:#00478d;font-size:12px;line-height:16px;font-weight:600}.director-thumb[data-v-18a2f742]{width:20px;height:20px;border-radius:50%;flex:0 0 auto}.history-icon[data-v-18a2f742],.more-icon[data-v-18a2f742],.robot-icon[data-v-18a2f742],.verified-icon[data-v-18a2f742],.attach-icon[data-v-18a2f742],.send-icon[data-v-18a2f742],.close-icon[data-v-18a2f742],.school-small-icon[data-v-18a2f742],.notes-small-icon[data-v-18a2f742]{background:#424752;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;-webkit-mask-size:contain;mask-position:center;mask-repeat:no-repeat;mask-size:contain}.history-icon[data-v-18a2f742]{width:24px;height:24px;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M13%203a9%209%200%201%201-8.95%2010H2l3-3%203%203H6.07A7%207%200%201%200%208.1%208.05L6.68%206.63A8.96%208.96%200%200%201%2013%203zm-1%205h1.5v5l4%202-.75%201.23L12%2013.75V8z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M13%203a9%209%200%201%201-8.95%2010H2l3-3%203%203H6.07A7%207%200%201%200%208.1%208.05L6.68%206.63A8.96%208.96%200%200%201%2013%203zm-1%205h1.5v5l4%202-.75%201.23L12%2013.75V8z'/%3E%3C/svg%3E")}.more-icon[data-v-18a2f742]{width:24px;height:24px;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%208a2%202%200%201%200%200-4%202%202%200%200%200%200%204zm0%202a2%202%200%201%200%200%204%202%202%200%200%200%200-4zm0%206a2%202%200%201%200%200%204%202%202%200%200%200%200-4z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%208a2%202%200%201%200%200-4%202%202%200%200%200%200%204zm0%202a2%202%200%201%200%200%204%202%202%200%200%200%200-4zm0%206a2%202%200%201%200%200%204%202%202%200%200%200%200-4z'/%3E%3C/svg%3E")}.chat-canvas[data-v-18a2f742]{box-sizing:border-box;flex:1 1 auto;min-height:0;padding:16px;background:#fff}.time-row[data-v-18a2f742]{display:flex;justify-content:center;margin-bottom:32px}.time-row uni-text[data-v-18a2f742]{padding:4px 16px;border-radius:12px;background:#f2f3fb;color:#727783;font-size:12px;line-height:16px;font-weight:500;letter-spacing:0}.message-block[data-v-18a2f742]{margin-bottom:16px}.message-user[data-v-18a2f742]{display:flex;justify-content:flex-end}.user-bubble[data-v-18a2f742]{box-sizing:border-box;max-width:85%;padding:12px 16px;border-radius:8px 8px 0;background:#00478d;box-shadow:0 2px 8px rgba(0,0,0,.04);color:#fff;font-size:16px;line-height:24px}.assistant-message[data-v-18a2f742]{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.assistant-meta[data-v-18a2f742]{gap:8px;color:#00478d;font-size:14px;line-height:20px;font-weight:600}.robot-badge[data-v-18a2f742]{width:28px;height:28px;border-radius:8px;background:#00478d;display:flex;align-items:center;justify-content:center}.robot-icon[data-v-18a2f742]{width:18px;height:18px;background:#fff;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%202a2%202%200%200%201%201%203.73V7h4a3%203%200%200%201%203%203v7a3%203%200%200%201-3%203H7a3%203%200%200%201-3-3v-7a3%203%200%200%201%203-3h4V5.73A2%202%200%200%201%2012%202zM7%2010a1%201%200%200%200-1%201v6a1%201%200%200%200%201%201h10a1%201%200%200%200%201-1v-6a1%201%200%200%200-1-1H7zm2.5%203.5a1.5%201.5%200%201%201%200-3%201.5%201.5%200%200%201%200%203zm5%200a1.5%201.5%200%201%201%200-3%201.5%201.5%200%200%201%200%203z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%202a2%202%200%200%201%201%203.73V7h4a3%203%200%200%201%203%203v7a3%203%200%200%201-3%203H7a3%203%200%200%201-3-3v-7a3%203%200%200%201%203-3h4V5.73A2%202%200%200%201%2012%202zM7%2010a1%201%200%200%200-1%201v6a1%201%200%200%200%201%201h10a1%201%200%200%200%201-1v-6a1%201%200%200%200-1-1H7zm2.5%203.5a1.5%201.5%200%201%201%200-3%201.5%201.5%200%200%201%200%203zm5%200a1.5%201.5%200%201%201%200-3%201.5%201.5%200%200%201%200%203z'/%3E%3C/svg%3E")}.assistant-card[data-v-18a2f742]{box-sizing:border-box;max-width:90%;padding:16px;border:1px solid #c2c6d4;border-radius:0 8px 8px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.04);display:flex;flex-direction:column;gap:12px}.response-intro[data-v-18a2f742],.simple-card[data-v-18a2f742]{color:#191c21;font-size:16px;line-height:24px}.pathway-card[data-v-18a2f742]{box-sizing:border-box;padding:16px;border:1px solid rgba(194,198,212,.3);border-radius:8px;background:#f2f3fb;display:flex;flex-direction:column;gap:16px}.pathway-step[data-v-18a2f742]{display:flex;align-items:flex-start;gap:12px}.step-index[data-v-18a2f742]{width:20px;height:20px;border-radius:50%;background:#00478d;color:#fff;font-size:10px;line-height:20px;text-align:center;font-weight:600;flex:0 0 auto;margin-top:2px}.step-copy[data-v-18a2f742]{display:flex;flex-direction:column;gap:2px}.step-title[data-v-18a2f742]{color:#00478d;font-size:14px;line-height:20px;font-weight:600}.step-desc[data-v-18a2f742]{color:#424752;font-size:14px;line-height:20px}.evidence-box[data-v-18a2f742]{padding-top:16px;border-top:1px solid #c2c6d4;display:flex;flex-direction:column;gap:4px}.evidence-heading[data-v-18a2f742]{gap:8px;margin-bottom:4px;color:#006970;font-size:12px;line-height:16px;font-weight:700;letter-spacing:0}.verified-icon[data-v-18a2f742]{width:16px;height:16px;background:#006970;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%202l2.39%202.42%203.37-.49.6%203.35%203.02%201.57-1.55%203.03%201.55%203.03-3.02%201.57-.6%203.35-3.37-.49L12%2022l-2.39-2.42-3.37.49-.6-3.35-3.02-1.57%201.55-3.03-1.55-3.03%203.02-1.57.6-3.35%203.37.49L12%202zm-1.1%2013.2l5.66-5.66-1.42-1.42-4.24%204.24-2.12-2.12-1.42%201.42%203.54%203.54z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%202l2.39%202.42%203.37-.49.6%203.35%203.02%201.57-1.55%203.03%201.55%203.03-3.02%201.57-.6%203.35-3.37-.49L12%2022l-2.39-2.42-3.37.49-.6-3.35-3.02-1.57%201.55-3.03-1.55-3.03%203.02-1.57.6-3.35%203.37.49L12%202zm-1.1%2013.2l5.66-5.66-1.42-1.42-4.24%204.24-2.12-2.12-1.42%201.42%203.54%203.54z'/%3E%3C/svg%3E")}.evidence-item[data-v-18a2f742]{color:#424752;font-size:13px;line-height:20px;font-style:italic}.typing-row[data-v-18a2f742]{display:flex;align-items:center;gap:8px;color:#727783;font-size:12px;line-height:16px;font-style:italic;opacity:0;transition:opacity .3s ease}.typing-row.visible[data-v-18a2f742]{opacity:1}.typing-dots[data-v-18a2f742]{display:flex;gap:4px}.dot[data-v-18a2f742]{width:6px;height:6px;border-radius:50%;background:#727783;animation:typing-bounce-18a2f742 1s ease-in-out infinite}.dot-two[data-v-18a2f742]{animation-delay:.12s}.dot-three[data-v-18a2f742]{animation-delay:.24s}.input-panel[data-v-18a2f742]{box-sizing:border-box;padding:12px 16px 16px;border-top:1px solid #c2c6d4;background:#fff;flex:0 0 auto}.quick-actions[data-v-18a2f742]{width:100%;margin-bottom:12px;white-space:nowrap}.quick-row[data-v-18a2f742]{display:flex;justify-content:flex-start;align-items:center;gap:8px;padding-bottom:4px}.quick-chip[data-v-18a2f742]{box-sizing:border-box;width:auto;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;margin:0;min-height:36px;padding:8px 18px;border:1px solid rgba(0,71,141,.28);border-radius:8px;background:#eef5ff;color:#00478d;font-size:14px;line-height:20px;font-weight:600;letter-spacing:0;white-space:nowrap}.quick-chip.disabled[data-v-18a2f742]{opacity:.55}.quick-chip.active[data-v-18a2f742]{border-color:#00478d;background:#00478d;color:#fff}.quick-chip[data-v-18a2f742]:active{background:#dcecff}.quick-chip.active[data-v-18a2f742]:active{background:#003a73}.composer[data-v-18a2f742]{box-sizing:border-box;padding:8px;border:1px solid #c2c6d4;border-radius:8px;background:#f2f3fb;display:flex;align-items:flex-end;gap:8px}.composer[data-v-18a2f742]:focus-within{border-color:#00478d}.message-input[data-v-18a2f742]{flex:1;min-height:44px;max-height:128px;padding:8px 0;border:0;background:transparent;color:#191c21;font-size:16px;line-height:24px}.input-placeholder[data-v-18a2f742]{color:#727783}.composer-actions[data-v-18a2f742]{gap:4px;flex:0 0 auto;margin-bottom:4px}.attach-button[data-v-18a2f742],.send-button[data-v-18a2f742]{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center}.attach-icon[data-v-18a2f742]{width:22px;height:22px;background:#727783;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M16.5%206.5v9a4.5%204.5%200%200%201-9%200v-10a3%203%200%200%201%206%200v9a1.5%201.5%200%200%201-3%200v-8h2v8a.5.5%200%200%200%201%200v-9a2%202%200%200%200-4%200v10a2.5%202.5%200%200%200%205%200v-9h2z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M16.5%206.5v9a4.5%204.5%200%200%201-9%200v-10a3%203%200%200%201%206%200v9a1.5%201.5%200%200%201-3%200v-8h2v8a.5.5%200%200%200%201%200v-9a2%202%200%200%200-4%200v10a2.5%202.5%200%200%200%205%200v-9h2z'/%3E%3C/svg%3E")}.send-button[data-v-18a2f742]{background:#00478d}.send-button.disabled[data-v-18a2f742]{opacity:.5}.send-button[data-v-18a2f742]:active{transform:scale(.95)}.send-icon[data-v-18a2f742]{width:20px;height:20px;background:#fff;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M2%2021l21-9L2%203v7l15%202-15%202v7z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M2%2021l21-9L2%203v7l15%202-15%202v7z'/%3E%3C/svg%3E")}.disclaimer[data-v-18a2f742]{display:block;margin-top:8px;text-align:center;color:#727783;font-size:11px;line-height:16px}.modal-mask[data-v-18a2f742]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;background:rgba(0,0,0,.2);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:20px}.wang-modal[data-v-18a2f742]{width:100%;max-width:340px;border:1px solid #c2c6d4;border-radius:8px;background:#fff;box-shadow:0 18px 48px rgba(25,28,33,.2);overflow:hidden;animation:fade-in-18a2f742 .2s ease-out forwards}.modal-header[data-v-18a2f742]{box-sizing:border-box;padding:24px;border-bottom:1px solid #c2c6d4;background:#fff;display:flex;align-items:center;justify-content:space-between}.modal-doctor[data-v-18a2f742]{gap:16px}.modal-avatar[data-v-18a2f742]{width:56px;height:56px;border:2px solid #00478d;border-radius:50%}.modal-title-group[data-v-18a2f742]{display:flex;flex-direction:column;gap:2px}.modal-title[data-v-18a2f742]{color:#191c21;font-size:20px;line-height:28px;font-weight:600}.modal-subtitle[data-v-18a2f742]{color:#727783;font-size:14px;line-height:20px}.close-icon[data-v-18a2f742]{width:22px;height:22px;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M18.3%205.71L12%2012l6.3%206.29-1.41%201.41L10.59%2013.41%204.29%2019.7%202.88%2018.29%209.17%2012%202.88%205.71%204.29%204.3l6.3%206.29%206.3-6.29%201.41%201.41z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M18.3%205.71L12%2012l6.3%206.29-1.41%201.41L10.59%2013.41%204.29%2019.7%202.88%2018.29%209.17%2012%202.88%205.71%204.29%204.3l6.3%206.29%206.3-6.29%201.41%201.41z'/%3E%3C/svg%3E")}.modal-body[data-v-18a2f742]{padding:24px;display:flex;flex-direction:column;gap:16px}.quote-card[data-v-18a2f742]{padding:16px;border:1px solid rgba(0,71,141,.1);border-radius:8px;background:rgba(0,94,184,.06);text-align:center;color:#191c21;font-size:16px;line-height:24px;font-style:italic}.mentor-grid[data-v-18a2f742]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mentor-card[data-v-18a2f742]{box-sizing:border-box;min-height:96px;padding:16px;border:1px solid rgba(194,198,212,.3);border-radius:8px;background:#f2f3fb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#191c21;font-size:14px;line-height:20px;font-weight:600}.school-small-icon[data-v-18a2f742],.notes-small-icon[data-v-18a2f742]{width:24px;height:24px;background:#00478d}.school-small-icon[data-v-18a2f742]{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%203L1%209l11%206%209-4.91V17h2V9L12%203zm0%2014L5%2013.18V17l7%204%207-4v-3.82L12%2017z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%203L1%209l11%206%209-4.91V17h2V9L12%203zm0%2014L5%2013.18V17l7%204%207-4v-3.82L12%2017z'/%3E%3C/svg%3E")}.notes-small-icon[data-v-18a2f742]{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M6%202h9l5%205v15H6a2%202%200%200%201-2-2V4a2%202%200%200%201%202-2zm8%201.5V8h4.5L14%203.5zM8%2011v2h8v-2H8zm0%204v2h8v-2H8zm0%204h5v-2H8v2z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M6%202h9l5%205v15H6a2%202%200%200%201-2-2V4a2%202%200%200%201%202-2zm8%201.5V8h4.5L14%203.5zM8%2011v2h8v-2H8zm0%204v2h8v-2H8zm0%204h5v-2H8v2z'/%3E%3C/svg%3E")}.guidance-button[data-v-18a2f742]{width:100%;min-height:44px;border-radius:8px;background:#00478d;color:#fff;font-size:14px;line-height:20px;font-weight:600}.guidance-button[data-v-18a2f742]:active{transform:scale(.98)}.toast[data-v-18a2f742]{position:absolute;left:50%;bottom:96px;z-index:100;max-width:300px;padding:10px 18px;border-radius:12px;background:#2e3037;color:#eff0f8;font-size:14px;line-height:20px;font-weight:600;text-align:center;pointer-events:none;opacity:0;transform:translate(-50%,16px);transition:opacity .3s ease,transform .3s ease}.toast.visible[data-v-18a2f742]{opacity:1;transform:translate(-50%)}@keyframes typing-bounce-18a2f742{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes fade-in-18a2f742{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (min-width: 768px){.learning-page[data-v-18a2f742]{display:flex;justify-content:center;background:#d8dae2}.learning-shell[data-v-18a2f742]{width:390px;min-height:100vh;box-shadow:0 24px 64px rgba(25,28,33,.18)}}@media (max-height: 760px){.chat-canvas[data-v-18a2f742]{padding:12px 16px}.time-row[data-v-18a2f742]{margin-bottom:20px}.input-panel[data-v-18a2f742]{padding-bottom:12px}} +uni-page-body[data-v-1230b6c9]{min-height:100%;background:#f2f3fb}body[data-v-1230b6c9]{background:#f2f3fb}.learning-page[data-v-1230b6c9]{min-height:100vh;background:#f2f3fb;color:#191c21;font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,Arial,sans-serif;-webkit-tap-highlight-color:transparent}.learning-shell[data-v-1230b6c9]{position:relative;min-height:100vh;background:#fff;overflow:hidden;display:flex;flex-direction:column}.assistant-header[data-v-1230b6c9]{position:relative;z-index:10;box-sizing:border-box;height:56px;padding:0 16px;border-bottom:1px solid #c2c6d4;background:#fff;display:flex;align-items:center;justify-content:space-between;flex:0 0 auto}.header-left[data-v-1230b6c9],.header-actions[data-v-1230b6c9],.director-chip[data-v-1230b6c9],.assistant-meta[data-v-1230b6c9],.evidence-heading[data-v-1230b6c9],.composer-actions[data-v-1230b6c9],.modal-doctor[data-v-1230b6c9]{display:flex;align-items:center}.header-left[data-v-1230b6c9],.header-actions[data-v-1230b6c9]{gap:12px}.page-title[data-v-1230b6c9]{color:#191c21;font-size:18px;line-height:28px;font-weight:600;letter-spacing:0}.icon-button[data-v-1230b6c9],.director-chip[data-v-1230b6c9],.quick-chip[data-v-1230b6c9],.attach-button[data-v-1230b6c9],.send-button[data-v-1230b6c9],.mentor-card[data-v-1230b6c9],.guidance-button[data-v-1230b6c9]{padding:0;border:0;background:transparent}.icon-button[data-v-1230b6c9]:after,.director-chip[data-v-1230b6c9]:after,.quick-chip[data-v-1230b6c9]:after,.attach-button[data-v-1230b6c9]:after,.send-button[data-v-1230b6c9]:after,.mentor-card[data-v-1230b6c9]:after,.guidance-button[data-v-1230b6c9]:after{border:0}.icon-button[data-v-1230b6c9]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%}.icon-button[data-v-1230b6c9]:active{background:rgba(25,28,33,.05)}.director-chip[data-v-1230b6c9]{box-sizing:border-box;min-height:32px;padding:4px 8px;border:1px solid #c2c6d4;border-radius:12px;background:#f2f3fb;gap:8px;color:#00478d;font-size:12px;line-height:16px;font-weight:600}.director-thumb[data-v-1230b6c9]{width:20px;height:20px;border-radius:50%;flex:0 0 auto}.history-icon[data-v-1230b6c9],.more-icon[data-v-1230b6c9],.robot-icon[data-v-1230b6c9],.verified-icon[data-v-1230b6c9],.attach-icon[data-v-1230b6c9],.send-icon[data-v-1230b6c9],.close-icon[data-v-1230b6c9],.school-small-icon[data-v-1230b6c9],.notes-small-icon[data-v-1230b6c9]{background:#424752;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;-webkit-mask-size:contain;mask-position:center;mask-repeat:no-repeat;mask-size:contain}.history-icon[data-v-1230b6c9]{width:24px;height:24px;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M13%203a9%209%200%201%201-8.95%2010H2l3-3%203%203H6.07A7%207%200%201%200%208.1%208.05L6.68%206.63A8.96%208.96%200%200%201%2013%203zm-1%205h1.5v5l4%202-.75%201.23L12%2013.75V8z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M13%203a9%209%200%201%201-8.95%2010H2l3-3%203%203H6.07A7%207%200%201%200%208.1%208.05L6.68%206.63A8.96%208.96%200%200%201%2013%203zm-1%205h1.5v5l4%202-.75%201.23L12%2013.75V8z'/%3E%3C/svg%3E")}.more-icon[data-v-1230b6c9]{width:24px;height:24px;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%208a2%202%200%201%200%200-4%202%202%200%200%200%200%204zm0%202a2%202%200%201%200%200%204%202%202%200%200%200%200-4zm0%206a2%202%200%201%200%200%204%202%202%200%200%200%200-4z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%208a2%202%200%201%200%200-4%202%202%200%200%200%200%204zm0%202a2%202%200%201%200%200%204%202%202%200%200%200%200-4zm0%206a2%202%200%201%200%200%204%202%202%200%200%200%200-4z'/%3E%3C/svg%3E")}.chat-canvas[data-v-1230b6c9]{box-sizing:border-box;flex:1 1 auto;min-height:0;padding:16px;background:#fff}.time-row[data-v-1230b6c9]{display:flex;justify-content:center;margin-bottom:32px}.time-row uni-text[data-v-1230b6c9]{padding:4px 16px;border-radius:12px;background:#f2f3fb;color:#727783;font-size:12px;line-height:16px;font-weight:500;letter-spacing:0}.message-block[data-v-1230b6c9]{margin-bottom:16px}.message-user[data-v-1230b6c9]{display:flex;justify-content:flex-end}.user-bubble[data-v-1230b6c9]{box-sizing:border-box;max-width:85%;padding:12px 16px;border-radius:8px 8px 0;background:#00478d;box-shadow:0 2px 8px rgba(0,0,0,.04);color:#fff;font-size:16px;line-height:24px}.assistant-message[data-v-1230b6c9]{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.assistant-meta[data-v-1230b6c9]{gap:8px;color:#00478d;font-size:14px;line-height:20px;font-weight:600}.robot-badge[data-v-1230b6c9]{width:28px;height:28px;border-radius:8px;background:#00478d;display:flex;align-items:center;justify-content:center}.robot-icon[data-v-1230b6c9]{width:18px;height:18px;background:#fff;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%202a2%202%200%200%201%201%203.73V7h4a3%203%200%200%201%203%203v7a3%203%200%200%201-3%203H7a3%203%200%200%201-3-3v-7a3%203%200%200%201%203-3h4V5.73A2%202%200%200%201%2012%202zM7%2010a1%201%200%200%200-1%201v6a1%201%200%200%200%201%201h10a1%201%200%200%200%201-1v-6a1%201%200%200%200-1-1H7zm2.5%203.5a1.5%201.5%200%201%201%200-3%201.5%201.5%200%200%201%200%203zm5%200a1.5%201.5%200%201%201%200-3%201.5%201.5%200%200%201%200%203z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%202a2%202%200%200%201%201%203.73V7h4a3%203%200%200%201%203%203v7a3%203%200%200%201-3%203H7a3%203%200%200%201-3-3v-7a3%203%200%200%201%203-3h4V5.73A2%202%200%200%201%2012%202zM7%2010a1%201%200%200%200-1%201v6a1%201%200%200%200%201%201h10a1%201%200%200%200%201-1v-6a1%201%200%200%200-1-1H7zm2.5%203.5a1.5%201.5%200%201%201%200-3%201.5%201.5%200%200%201%200%203zm5%200a1.5%201.5%200%201%201%200-3%201.5%201.5%200%200%201%200%203z'/%3E%3C/svg%3E")}.assistant-card[data-v-1230b6c9]{box-sizing:border-box;max-width:90%;padding:16px;border:1px solid #c2c6d4;border-radius:0 8px 8px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.04);display:flex;flex-direction:column;gap:12px}.response-intro[data-v-1230b6c9],.simple-card[data-v-1230b6c9]{color:#191c21;font-size:16px;line-height:24px}.pathway-card[data-v-1230b6c9]{box-sizing:border-box;padding:16px;border:1px solid rgba(194,198,212,.3);border-radius:8px;background:#f2f3fb;display:flex;flex-direction:column;gap:16px}.pathway-step[data-v-1230b6c9]{display:flex;align-items:flex-start;gap:12px}.step-index[data-v-1230b6c9]{width:20px;height:20px;border-radius:50%;background:#00478d;color:#fff;font-size:10px;line-height:20px;text-align:center;font-weight:600;flex:0 0 auto;margin-top:2px}.step-copy[data-v-1230b6c9]{display:flex;flex-direction:column;gap:2px}.step-title[data-v-1230b6c9]{color:#00478d;font-size:14px;line-height:20px;font-weight:600}.step-desc[data-v-1230b6c9]{color:#424752;font-size:14px;line-height:20px}.evidence-box[data-v-1230b6c9]{padding-top:16px;border-top:1px solid #c2c6d4;display:flex;flex-direction:column;gap:4px}.evidence-heading[data-v-1230b6c9]{gap:8px;margin-bottom:4px;color:#006970;font-size:12px;line-height:16px;font-weight:700;letter-spacing:0}.verified-icon[data-v-1230b6c9]{width:16px;height:16px;background:#006970;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%202l2.39%202.42%203.37-.49.6%203.35%203.02%201.57-1.55%203.03%201.55%203.03-3.02%201.57-.6%203.35-3.37-.49L12%2022l-2.39-2.42-3.37.49-.6-3.35-3.02-1.57%201.55-3.03-1.55-3.03%203.02-1.57.6-3.35%203.37.49L12%202zm-1.1%2013.2l5.66-5.66-1.42-1.42-4.24%204.24-2.12-2.12-1.42%201.42%203.54%203.54z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%202l2.39%202.42%203.37-.49.6%203.35%203.02%201.57-1.55%203.03%201.55%203.03-3.02%201.57-.6%203.35-3.37-.49L12%2022l-2.39-2.42-3.37.49-.6-3.35-3.02-1.57%201.55-3.03-1.55-3.03%203.02-1.57.6-3.35%203.37.49L12%202zm-1.1%2013.2l5.66-5.66-1.42-1.42-4.24%204.24-2.12-2.12-1.42%201.42%203.54%203.54z'/%3E%3C/svg%3E")}.evidence-item[data-v-1230b6c9]{color:#424752;font-size:13px;line-height:20px;font-style:italic}.typing-row[data-v-1230b6c9]{display:flex;align-items:center;gap:8px;color:#727783;font-size:12px;line-height:16px;font-style:italic;opacity:0;transition:opacity .3s ease}.typing-row.visible[data-v-1230b6c9]{opacity:1}.typing-dots[data-v-1230b6c9]{display:flex;gap:4px}.dot[data-v-1230b6c9]{width:6px;height:6px;border-radius:50%;background:#727783;animation:typing-bounce-1230b6c9 1s ease-in-out infinite}.dot-two[data-v-1230b6c9]{animation-delay:.12s}.dot-three[data-v-1230b6c9]{animation-delay:.24s}.input-panel[data-v-1230b6c9]{box-sizing:border-box;padding:12px 16px 16px;border-top:1px solid #c2c6d4;background:#fff;flex:0 0 auto}.quick-actions[data-v-1230b6c9]{width:100%;margin-bottom:12px;white-space:nowrap}.quick-row[data-v-1230b6c9]{display:flex;justify-content:flex-start;align-items:center;gap:8px;padding-bottom:4px}.quick-chip[data-v-1230b6c9]{box-sizing:border-box;width:auto;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;margin:0;min-height:36px;padding:8px 18px;border:1px solid rgba(0,71,141,.28);border-radius:8px;background:#eef5ff;color:#00478d;font-size:14px;line-height:20px;font-weight:600;letter-spacing:0;white-space:nowrap}.quick-chip.disabled[data-v-1230b6c9]{opacity:.55}.quick-chip.active[data-v-1230b6c9]{border-color:#00478d;background:#00478d;color:#fff}.quick-chip[data-v-1230b6c9]:active{background:#dcecff}.quick-chip.active[data-v-1230b6c9]:active{background:#003a73}.composer[data-v-1230b6c9]{box-sizing:border-box;padding:8px;border:1px solid #c2c6d4;border-radius:8px;background:#f2f3fb;display:flex;align-items:flex-end;gap:8px}.composer[data-v-1230b6c9]:focus-within{border-color:#00478d}.message-input[data-v-1230b6c9]{flex:1;min-height:44px;max-height:128px;padding:8px 0;border:0;background:transparent;color:#191c21;font-size:16px;line-height:24px}.input-placeholder[data-v-1230b6c9]{color:#727783}.composer-actions[data-v-1230b6c9]{gap:4px;flex:0 0 auto;margin-bottom:4px}.attach-button[data-v-1230b6c9],.send-button[data-v-1230b6c9]{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center}.attach-icon[data-v-1230b6c9]{width:22px;height:22px;background:#727783;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M16.5%206.5v9a4.5%204.5%200%200%201-9%200v-10a3%203%200%200%201%206%200v9a1.5%201.5%200%200%201-3%200v-8h2v8a.5.5%200%200%200%201%200v-9a2%202%200%200%200-4%200v10a2.5%202.5%200%200%200%205%200v-9h2z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M16.5%206.5v9a4.5%204.5%200%200%201-9%200v-10a3%203%200%200%201%206%200v9a1.5%201.5%200%200%201-3%200v-8h2v8a.5.5%200%200%200%201%200v-9a2%202%200%200%200-4%200v10a2.5%202.5%200%200%200%205%200v-9h2z'/%3E%3C/svg%3E")}.send-button[data-v-1230b6c9]{background:#00478d}.send-button.disabled[data-v-1230b6c9]{opacity:.5}.send-button[data-v-1230b6c9]:active{transform:scale(.95)}.send-icon[data-v-1230b6c9]{width:20px;height:20px;background:#fff;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M2%2021l21-9L2%203v7l15%202-15%202v7z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M2%2021l21-9L2%203v7l15%202-15%202v7z'/%3E%3C/svg%3E")}.disclaimer[data-v-1230b6c9]{display:block;margin-top:8px;text-align:center;color:#727783;font-size:11px;line-height:16px}.modal-mask[data-v-1230b6c9]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;background:rgba(0,0,0,.2);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:20px}.wang-modal[data-v-1230b6c9]{width:100%;max-width:340px;border:1px solid #c2c6d4;border-radius:8px;background:#fff;box-shadow:0 18px 48px rgba(25,28,33,.2);overflow:hidden;animation:fade-in-1230b6c9 .2s ease-out forwards}.modal-header[data-v-1230b6c9]{box-sizing:border-box;padding:24px;border-bottom:1px solid #c2c6d4;background:#fff;display:flex;align-items:center;justify-content:space-between}.modal-doctor[data-v-1230b6c9]{gap:16px}.modal-avatar[data-v-1230b6c9]{width:56px;height:56px;border:2px solid #00478d;border-radius:50%}.modal-title-group[data-v-1230b6c9]{display:flex;flex-direction:column;gap:2px}.modal-title[data-v-1230b6c9]{color:#191c21;font-size:20px;line-height:28px;font-weight:600}.modal-subtitle[data-v-1230b6c9]{color:#727783;font-size:14px;line-height:20px}.close-icon[data-v-1230b6c9]{width:22px;height:22px;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M18.3%205.71L12%2012l6.3%206.29-1.41%201.41L10.59%2013.41%204.29%2019.7%202.88%2018.29%209.17%2012%202.88%205.71%204.29%204.3l6.3%206.29%206.3-6.29%201.41%201.41z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M18.3%205.71L12%2012l6.3%206.29-1.41%201.41L10.59%2013.41%204.29%2019.7%202.88%2018.29%209.17%2012%202.88%205.71%204.29%204.3l6.3%206.29%206.3-6.29%201.41%201.41z'/%3E%3C/svg%3E")}.modal-body[data-v-1230b6c9]{padding:24px;display:flex;flex-direction:column;gap:16px}.quote-card[data-v-1230b6c9]{padding:16px;border:1px solid rgba(0,71,141,.1);border-radius:8px;background:rgba(0,94,184,.06);text-align:center;color:#191c21;font-size:16px;line-height:24px;font-style:italic}.mentor-grid[data-v-1230b6c9]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mentor-card[data-v-1230b6c9]{box-sizing:border-box;min-height:96px;padding:16px;border:1px solid rgba(194,198,212,.3);border-radius:8px;background:#f2f3fb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#191c21;font-size:14px;line-height:20px;font-weight:600}.school-small-icon[data-v-1230b6c9],.notes-small-icon[data-v-1230b6c9]{width:24px;height:24px;background:#00478d}.school-small-icon[data-v-1230b6c9]{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%203L1%209l11%206%209-4.91V17h2V9L12%203zm0%2014L5%2013.18V17l7%204%207-4v-3.82L12%2017z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M12%203L1%209l11%206%209-4.91V17h2V9L12%203zm0%2014L5%2013.18V17l7%204%207-4v-3.82L12%2017z'/%3E%3C/svg%3E")}.notes-small-icon[data-v-1230b6c9]{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M6%202h9l5%205v15H6a2%202%200%200%201-2-2V4a2%202%200%200%201%202-2zm8%201.5V8h4.5L14%203.5zM8%2011v2h8v-2H8zm0%204v2h8v-2H8zm0%204h5v-2H8v2z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M6%202h9l5%205v15H6a2%202%200%200%201-2-2V4a2%202%200%200%201%202-2zm8%201.5V8h4.5L14%203.5zM8%2011v2h8v-2H8zm0%204v2h8v-2H8zm0%204h5v-2H8v2z'/%3E%3C/svg%3E")}.guidance-button[data-v-1230b6c9]{width:100%;min-height:44px;border-radius:8px;background:#00478d;color:#fff;font-size:14px;line-height:20px;font-weight:600}.guidance-button[data-v-1230b6c9]:active{transform:scale(.98)}.toast[data-v-1230b6c9]{position:absolute;left:50%;bottom:96px;z-index:100;max-width:300px;padding:10px 18px;border-radius:12px;background:#2e3037;color:#eff0f8;font-size:14px;line-height:20px;font-weight:600;text-align:center;pointer-events:none;opacity:0;transform:translate(-50%,16px);transition:opacity .3s ease,transform .3s ease}.toast.visible[data-v-1230b6c9]{opacity:1;transform:translate(-50%)}@keyframes typing-bounce-1230b6c9{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes fade-in-1230b6c9{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (min-width: 768px){.learning-page[data-v-1230b6c9]{display:flex;justify-content:center;background:#d8dae2}.learning-shell[data-v-1230b6c9]{width:390px;min-height:100vh;box-shadow:0 24px 64px rgba(25,28,33,.18)}}@media (max-height: 760px){.chat-canvas[data-v-1230b6c9]{padding:12px 16px}.time-row[data-v-1230b6c9]{margin-bottom:20px}.input-panel[data-v-1230b6c9]{padding-bottom:12px}} diff --git a/dist/assets/navigation.Bg2Ef9wA.js b/dist/assets/navigation.Blicf8xr.js similarity index 89% rename from dist/assets/navigation.Bg2Ef9wA.js rename to dist/assets/navigation.Blicf8xr.js index a860bcb..f1b385f 100644 --- a/dist/assets/navigation.Bg2Ef9wA.js +++ b/dist/assets/navigation.Blicf8xr.js @@ -1 +1 @@ -import{G as o,q as n,Q as e}from"./index-DfCP9RI3.js";function i(n){var i;const l=e(),r=Boolean(null==(i=null==l?void 0:l.vnode.props)?void 0:i.onOpenProfile);return function(){r?n("open-profile"):o({url:"/pages/profile/profile"})}}function l(n){var i;const l=e(),r=Boolean(null==(i=null==l?void 0:l.vnode.props)?void 0:i.onOpenSettings);return function(){r?n("open-settings"):o({url:"/pages/config/config"})}}function r(o){var i;const l=e(),r=Boolean(null==(i=null==l?void 0:l.vnode.props)?void 0:i.onGoHome);return function(){r?o("go-home"):n({url:"/pages/home/home"})}}export{l as a,r as b,i as c}; +import{G as o,q as n,Q as e}from"./index-8wOL_3gR.js";function i(n){var i;const l=e(),r=Boolean(null==(i=null==l?void 0:l.vnode.props)?void 0:i.onOpenProfile);return function(){r?n("open-profile"):o({url:"/pages/profile/profile"})}}function l(n){var i;const l=e(),r=Boolean(null==(i=null==l?void 0:l.vnode.props)?void 0:i.onOpenSettings);return function(){r?n("open-settings"):o({url:"/pages/config/config"})}}function r(o){var i;const l=e(),r=Boolean(null==(i=null==l?void 0:l.vnode.props)?void 0:i.onGoHome);return function(){r?o("go-home"):n({url:"/pages/home/home"})}}export{l as a,r as b,i as c}; diff --git a/dist/assets/pages-assessment-assessment.BnDM0Jtm.js b/dist/assets/pages-assessment-assessment.CYNULdGO.js similarity index 98% rename from dist/assets/pages-assessment-assessment.BnDM0Jtm.js rename to dist/assets/pages-assessment-assessment.CYNULdGO.js index db1e368..c9820e2 100644 --- a/dist/assets/pages-assessment-assessment.BnDM0Jtm.js +++ b/dist/assets/pages-assessment-assessment.CYNULdGO.js @@ -1 +1 @@ -import{d as e,a,r as t,c as l,o as s,b as n,e as o,f as r,w as i,i as c,j as u,t as d,g as f,l as m,K as v,F as p,m as _,n as h,L as y,M as w,q as b,G as g,s as k,D as $,R as x,z as N,A as T,y as j,x as E,S as D,H as P,u as C}from"./index-DfCP9RI3.js";import{_ as F}from"./config-doctor.TgARj_nM.js";import{o as M}from"./uni-app.es.DDI13Fy0.js";import{F as A,a as L,r as S,f as R}from"./session.D2K7L0GR.js";import{b as U}from"./profile.CDLVfXPi.js";import{_ as I}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.BCdV446X.js";async function O(e){const a=await fetch(`${A}/evaluations/${e}`,{method:"GET",headers:L()});if(!a.ok)throw new Error(await S(a));const t=await a.json();if("OK"!==t.code||!t.data)throw new Error(t.message||"评价详情加载失败");return t.data}async function B(e){var a;const t=await fetch(`${A}/evaluations/${e}/download-pdf`,{method:"GET",headers:L("application/pdf")});if(!t.ok)throw new Error(await S(t));const l=t.headers.get("Content-Type")||"",s=function(e,a){var t,l;const s=null==(t=e.match(/filename\*=UTF-8''([^;]+)/i))?void 0:t[1];if(s)return decodeURIComponent(s);const n=null==(l=e.match(/filename="?([^"]+)"?/i))?void 0:l[1];return n||`training_record_${a}.pdf`}(t.headers.get("Content-Disposition")||"",e);if(l.includes("application/json")){const e=await t.json();if("OK"!==e.code||!(null==(a=e.data)?void 0:a.file_path))throw new Error(e.message||"PDF 下载失败");return{filePath:e.data.file_path,fileName:Y(e.data.file_path,s)}}return{blob:await t.blob(),fileName:s}}function Y(e,a){return e.split("?")[0].split("#")[0].split("/").filter(Boolean).pop()||a}const G=I(e({__name:"assessment",setup(e){const I=a({date:"生成中",no:"生成中",caseTitle:"",score:0,scoreText:"--",level:"生成中",overallComment:"评价生成中,请稍候。"}),Y=t(!1),G=t(""),K=t(!1),X=t(null),V=t(null),q=t(null),z=t(!1),H=t(!1),J=t(!1),W=t(null),Q=l((()=>264-264*I.score/100)),Z=l((()=>I.overallComment||ee.value)),ee=l((()=>J.value?"评价生成失败,请稍后重试。":H.value?"本次评价暂无详细点评。":"评价生成中,请稍候。")),ae=l((()=>J.value?"评价生成失败,请稍后重试。":H.value?"暂无分项评分。":"分项评分生成中。")),te=l((()=>J.value?"评价生成失败,暂无雷达图。":H.value?"暂无足够分项数据生成雷达图。":"雷达图生成中。")),le=l((()=>{var e,a;const t=V.value||X.value;return t?Array.isArray(t.dimension_scores)&&t.dimension_scores.length>0?t.dimension_scores.map((e=>{const a=e.max_score>0?fe(Number(e.score)/Number(e.max_score)*100):fe(Number(e.score)),t=[e.comment,e.improvement?`改进建议:${e.improvement}`:""].filter(Boolean).join(" ");return{label:e.dimension,percent:a,displayScore:e.max_score>0?`${e.score}/${e.max_score}`:`${e.score}%`,analysis:t||"暂无分项解析。"}})):Array.isArray(t.score_details)&&t.score_details.length>0?t.score_details.map((e=>({label:e.dimension,percent:fe(Number(e.score)),displayScore:`${e.score}%`,analysis:e.comment||e.deducted_reason||"暂无分项解析。"}))):V.value&&Array.isArray(null==(e=X.value)?void 0:e.dimension_scores)&&X.value.dimension_scores.length>0?X.value.dimension_scores.map((e=>{const a=Number(e.score),t=Number(e.max_score),l=fe(t>0?a/t*100:a),s=[e.comment,e.improvement?`改进建议:${e.improvement}`:""].filter(Boolean).join(" ");return{label:e.dimension,percent:l,displayScore:t>0?`${e.score}/${e.max_score}`:`${e.score}%`,analysis:s||"暂无分项解析。"}})):V.value&&Array.isArray(null==(a=X.value)?void 0:a.score_details)&&X.value.score_details.length>0?X.value.score_details.map((e=>({label:e.dimension,percent:fe(Number(e.score)),displayScore:`${e.score}%`,analysis:e.comment||e.deducted_reason||"暂无分项解析。"}))):[]:[]})),se=l((()=>{const e=le.value.slice(0,6),a=e.length;return a<3?[]:e.map(((e,t)=>{const l=-Math.PI/2+2*Math.PI*t/a,s=e.percent/100*160,n=200+154*Math.cos(l),o=200+154*Math.sin(l);return{...e,axisX:me(200+160*Math.cos(l)),axisY:me(200+160*Math.sin(l)),labelLeft:`${me(n/400*100)}%`,labelTop:`${me(o/400*100)}%`,pointX:me(200+Math.cos(l)*s),pointY:me(200+Math.sin(l)*s),anchor:n<170?"end":n>230?"start":"middle"}}))})),ne=l((()=>se.value.map((e=>`${e.pointX},${e.pointY}`)).join(" ")));let oe=null;function re(){"function"==typeof y&&y().length>1?w():ie()}function ie(){b({url:"/pages/home/home"})}function ce(){g({url:"/pages/learning-assistant/learning-assistant"})}function ue(e){oe&&clearTimeout(oe),G.value=e,K.value=!0,oe=setTimeout((()=>{K.value=!1}),2200)}function de(e){return`${e.getFullYear()}年${e.getMonth()+1}月${e.getDate()}日`}function fe(e){return Number.isFinite(e)?Math.max(0,Math.min(100,Math.round(e))):0}function me(e){return Math.round(100*e)/100}function ve(e){return e>=90?"优秀":e>=80?"优良":e>=70?"良好":e>=60?"合格":"待加强"}function pe(e){X.value=e,q.value=e.evaluation_id,I.no=`EV-${e.evaluation_id}`,he(e.total_score),I.level=ve(I.score),I.date=de(new Date),I.overallComment=e.overall_comment||"本次评价暂无详细点评。"}function _e(e){var a;V.value=e,q.value=e.evaluation_id,I.no=`EV-${e.evaluation_id}`,I.caseTitle=e.case_title||"",I.date=function(e){if(!e)return de(new Date);const a=new Date(e);return Number.isNaN(a.getTime())?e:de(a)}(e.created_at),he(e.total_score),I.level=ve(I.score),I.overallComment=e.overall_comment||(null==(a=X.value)?void 0:a.overall_comment)||"本次评价暂无详细点评。"}function he(e){I.score=fe(Number(e)),I.scoreText=Number.isFinite(Number(e))?String(I.score):"--"}async function ye(){H.value=!1,J.value=!1;try{if(W.value)return void(await async function(e){const a=await U(e);k("clinical-thinking-evaluation-detail",a),_e(a),X.value=null,H.value=!0}(W.value));if("teaching"===$("clinical-thinking-case-mode")&&Boolean(we(!1)))return void(await async function(){const e=we(),a=function(){const e=$("clinical-thinking-teaching-evaluation");return e&&"object"==typeof e?e:null}();a&&pe(a);const t=await O(e);k("clinical-thinking-evaluation-detail",t),_e(t),H.value=!0}());const e=R();I.no=`SID-${e}`;const a=await async function(e,a="percentage"){const t=await fetch(`${A}/sessions/${e}/evaluation`,{method:"POST",headers:L(),body:JSON.stringify({score_type:a})});if(!t.ok)throw new Error(await S(t));const l=await t.json();if("OK"!==l.code||!l.data)throw new Error(l.message||"评价生成失败");return l.data}(e,"percentage");k("clinical-thinking-evaluation",a),pe(a);const t=await O(a.evaluation_id);k("clinical-thinking-evaluation-detail",t),_e(t),H.value=!0}catch(e){J.value=!0,X.value=null,V.value=null,q.value=null,I.date="--",I.no="--",I.caseTitle="",I.score=0,I.scoreText="--",I.level="生成失败",I.overallComment="评价生成失败,请稍后重试。",ue(e instanceof Error?e.message:"评价生成失败")}finally{Y.value=!1,C((()=>{setTimeout((()=>{Y.value=!0}),120)}))}}function we(e=!0){const a=$("clinical-thinking-teaching-evaluation-id"),t=Number(a);if(Number.isInteger(t)&&t>0)return t;if(e)throw new Error("未找到教学评价,请先完成教学题目");return 0}async function be(){if(q.value&&!z.value){z.value=!0;try{const e=await B(q.value);k("clinical-thinking-evaluation-pdf",{fileName:e.fileName,filePath:e.filePath||""}),await async function(e){if(e.blob){if("undefined"==typeof window||"undefined"==typeof document)return;const a=window.URL.createObjectURL(e.blob);return ge(a,e.fileName),void window.setTimeout((()=>{window.URL.revokeObjectURL(a)}),1e3)}if(!e.filePath)throw new Error("PDF 下载地址为空");const a=function(e){const a=e.trim();return/^https?:\/\//i.test(a)||a.startsWith("/")?a:`/${a}`}(e.filePath),t=e.fileName;if("undefined"==typeof window||"undefined"==typeof document)return void x({url:a,fail:()=>ue("PDF 下载失败")});try{const e=await fetch(a,{method:"GET",credentials:"include"});if(!e.ok)throw new Error(`PDF 下载失败(${e.status})`);const l=await e.blob(),s=window.URL.createObjectURL(l);ge(s,t),window.setTimeout((()=>{window.URL.revokeObjectURL(s)}),1e3)}catch(l){ge(a,t)}}(e),ue("PDF 已生成")}catch(e){ue(e instanceof Error?e.message:"PDF 下载失败")}finally{z.value=!1}}}function ge(e,a){const t=document.createElement("a");t.href=e,t.download=a,t.rel="noopener",t.style.display="none",document.body.appendChild(t),t.click(),document.body.removeChild(t)}return M((e=>{W.value=function(e){const a=Number(e);return Number.isInteger(a)&&a>0?a:null}((null==e?void 0:e.evaluation_id)||(null==e?void 0:e.id))})),s((()=>{ye()})),n((()=>{oe&&clearTimeout(oe)})),(e,a)=>{const t=N,l=T,s=j,n=E,y=D;return o(),r(t,{class:"assessment-page"},{default:i((()=>[c(t,{class:"top-app-bar"},{default:i((()=>[c(l,{class:"icon-button","aria-label":"返回",onClick:re},{default:i((()=>[c(t,{class:"back-icon"})])),_:1}),c(s,{class:"app-title"},{default:i((()=>[u("AI 学习助手")])),_:1})])),_:1}),c(y,{class:"report-content","scroll-y":""},{default:i((()=>[c(t,{class:"report-head"},{default:i((()=>[c(s,{class:"report-title"},{default:i((()=>[u("训练总结与 AI 评估报告")])),_:1}),c(t,{class:"report-meta"},{default:i((()=>[c(s,null,{default:i((()=>[u("评估日期:"+d(I.date),1)])),_:1}),c(s,null,{default:i((()=>[u("模拟编号:"+d(I.no),1)])),_:1}),I.caseTitle?(o(),r(s,{key:0},{default:i((()=>[u("病例:"+d(I.caseTitle),1)])),_:1})):f("",!0)])),_:1})])),_:1}),c(t,{class:"content-stack"},{default:i((()=>[c(t,{class:"overall-card"},{default:i((()=>[c(t,{class:"score-ring"},{default:i((()=>[(o(),m("svg",{class:"ring-svg",viewBox:"0 0 100 100"},[v("circle",{class:"ring-track",cx:"50",cy:"50",fill:"transparent",r:"42","stroke-width":"10"}),v("circle",{class:"ring-value",cx:"50",cy:"50",fill:"transparent",r:"42","stroke-dasharray":"264","stroke-dashoffset":Q.value,"stroke-linecap":"round","stroke-width":"10"},null,8,["stroke-dashoffset"])])),c(t,{class:"score-center"},{default:i((()=>[c(s,{class:"score-value"},{default:i((()=>[u(d(I.scoreText),1)])),_:1}),c(s,{class:"score-total"},{default:i((()=>[u("/100")])),_:1})])),_:1})])),_:1}),c(t,{class:"overall-copy"},{default:i((()=>[c(s,{class:"overall-title"},{default:i((()=>[u("本次考核评价:"),c(s,{class:"primary-text"},{default:i((()=>[u(d(I.level),1)])),_:1})])),_:1}),c(s,{class:"overall-desc"},{default:i((()=>[u(d(I.overallComment),1)])),_:1})])),_:1})])),_:1}),c(t,{class:"report-card"},{default:i((()=>[c(t,{class:"section-heading"},{default:i((()=>[c(t,{class:"hub-icon"}),c(s,null,{default:i((()=>[u("临床胜任力雷达图")])),_:1})])),_:1}),c(t,{class:"radar-wrap"},{default:i((()=>[se.value.length>=3?(o(),r(t,{key:0,class:"radar-stage"},{default:i((()=>[(o(),m("svg",{class:"radar-svg",viewBox:"0 0 400 400"},[v("circle",{class:"radar-grid",cx:"200",cy:"200",r:"160"}),v("circle",{class:"radar-grid",cx:"200",cy:"200",r:"120"}),v("circle",{class:"radar-grid",cx:"200",cy:"200",r:"80"}),v("circle",{class:"radar-grid",cx:"200",cy:"200",r:"40"}),(o(!0),m(p,null,_(se.value,(e=>(o(),m("line",{key:`axis-${e.label}`,class:"radar-grid",x1:"200",x2:e.axisX,y1:"200",y2:e.axisY},null,8,["x2","y2"])))),128)),v("polygon",{class:"radar-area",points:ne.value},null,8,["points"])])),(o(!0),m(p,null,_(se.value,(e=>(o(),r(t,{key:`label-${e.label}`,class:h(["radar-label",`anchor-${e.anchor}`]),style:P({left:e.labelLeft,top:e.labelTop})},{default:i((()=>[c(s,{class:"radar-label-name"},{default:i((()=>[u(d(e.label),1)])),_:2},1024),c(s,{class:"radar-value"},{default:i((()=>[u(d(e.displayScore),1)])),_:2},1024)])),_:2},1032,["class","style"])))),128))])),_:1})):(o(),r(t,{key:1,class:"empty-data radar-empty"},{default:i((()=>[c(s,null,{default:i((()=>[u(d(te.value),1)])),_:1})])),_:1}))])),_:1})])),_:1}),c(t,{class:"report-card"},{default:i((()=>[c(t,{class:"section-heading breakdown-title"},{default:i((()=>[c(t,{class:"analytics-icon"}),c(s,null,{default:i((()=>[u("分项得分与解析")])),_:1})])),_:1}),c(t,{class:"breakdown-list"},{default:i((()=>[0===le.value.length?(o(),r(t,{key:0,class:"empty-data"},{default:i((()=>[c(s,null,{default:i((()=>[u(d(ae.value),1)])),_:1})])),_:1})):(o(!0),m(p,{key:1},_(le.value,((e,a)=>(o(),r(t,{key:`${e.label}-${a}`,class:"breakdown-item"},{default:i((()=>[c(t,{class:"breakdown-head"},{default:i((()=>[c(s,null,{default:i((()=>[u(d(e.label),1)])),_:2},1024),c(s,{class:"breakdown-score"},{default:i((()=>[u(d(e.displayScore),1)])),_:2},1024)])),_:2},1024),c(t,{class:"progress-track"},{default:i((()=>[c(t,{class:"progress-fill",style:P({width:Y.value?`${e.percent}%`:"0%"})},null,8,["style"])])),_:2},1024),c(t,{class:"analysis-box"},{default:i((()=>[c(s,null,{default:i((()=>[u(d(e.analysis),1)])),_:2},1024)])),_:2},1024)])),_:2},1024)))),128))])),_:1})])),_:1}),c(t,{class:"mentor-section"},{default:i((()=>[c(t,{class:"mentor-head"},{default:i((()=>[c(n,{class:"mentor-avatar",src:F,mode:"aspectFill"}),c(t,{class:"mentor-title-group"},{default:i((()=>[c(s,{class:"mentor-title"},{default:i((()=>[u("王主任点评")])),_:1}),c(s,{class:"mentor-subtitle"},{default:i((()=>[u("Director's Mentorship")])),_:1})])),_:1})])),_:1}),c(t,{class:"mentor-bubble"},{default:i((()=>[c(t,{class:"mentor-tail"}),c(s,{class:"mentor-copy"},{default:i((()=>[u(d(Z.value),1)])),_:1}),c(t,{class:"mentor-action-row"},{default:i((()=>[c(l,{class:"read-button",onClick:ce},{default:i((()=>[c(s,null,{default:i((()=>[u("去查阅")])),_:1}),c(t,{class:"arrow-forward-icon"})])),_:1})])),_:1})])),_:1})])),_:1})])),_:1})])),_:1}),c(t,{class:"footer-actions"},{default:i((()=>[c(l,{class:h(["download-button",{disabled:!q.value||z.value}]),disabled:!q.value||z.value,onClick:be},{default:i((()=>[u(d(z.value?"PDF 生成中...":"下载完整 PDF 报告"),1)])),_:1},8,["class","disabled"]),c(l,{class:"next-button",onClick:ie},{default:i((()=>[u(" 开始下一轮强化训练 ")])),_:1})])),_:1}),c(t,{class:h(["toast",{visible:K.value}])},{default:i((()=>[u(d(G.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-57d23c00"]]);export{G as default}; +import{d as e,a,r as t,c as l,o as s,b as n,e as o,f as r,w as i,i as c,j as u,t as d,g as f,l as m,K as v,F as p,m as _,n as h,L as y,M as w,q as b,G as g,s as k,D as $,R as x,z as N,A as T,y as j,x as E,S as D,H as P,u as C}from"./index-8wOL_3gR.js";import{_ as F}from"./config-doctor.TgARj_nM.js";import{o as M}from"./uni-app.es.25qqJrzj.js";import{F as A,a as L,r as S,f as R}from"./session.LaNXUMh-.js";import{b as U}from"./profile.COAzSw-i.js";import{_ as I}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.B66V4Y6g.js";async function O(e){const a=await fetch(`${A}/evaluations/${e}`,{method:"GET",headers:L()});if(!a.ok)throw new Error(await S(a));const t=await a.json();if("OK"!==t.code||!t.data)throw new Error(t.message||"评价详情加载失败");return t.data}async function B(e){var a;const t=await fetch(`${A}/evaluations/${e}/download-pdf`,{method:"GET",headers:L("application/pdf")});if(!t.ok)throw new Error(await S(t));const l=t.headers.get("Content-Type")||"",s=function(e,a){var t,l;const s=null==(t=e.match(/filename\*=UTF-8''([^;]+)/i))?void 0:t[1];if(s)return decodeURIComponent(s);const n=null==(l=e.match(/filename="?([^"]+)"?/i))?void 0:l[1];return n||`training_record_${a}.pdf`}(t.headers.get("Content-Disposition")||"",e);if(l.includes("application/json")){const e=await t.json();if("OK"!==e.code||!(null==(a=e.data)?void 0:a.file_path))throw new Error(e.message||"PDF 下载失败");return{filePath:e.data.file_path,fileName:Y(e.data.file_path,s)}}return{blob:await t.blob(),fileName:s}}function Y(e,a){return e.split("?")[0].split("#")[0].split("/").filter(Boolean).pop()||a}const G=I(e({__name:"assessment",setup(e){const I=a({date:"生成中",no:"生成中",caseTitle:"",score:0,scoreText:"--",level:"生成中",overallComment:"评价生成中,请稍候。"}),Y=t(!1),G=t(""),K=t(!1),X=t(null),V=t(null),q=t(null),z=t(!1),H=t(!1),J=t(!1),W=t(null),Q=l((()=>264-264*I.score/100)),Z=l((()=>I.overallComment||ee.value)),ee=l((()=>J.value?"评价生成失败,请稍后重试。":H.value?"本次评价暂无详细点评。":"评价生成中,请稍候。")),ae=l((()=>J.value?"评价生成失败,请稍后重试。":H.value?"暂无分项评分。":"分项评分生成中。")),te=l((()=>J.value?"评价生成失败,暂无雷达图。":H.value?"暂无足够分项数据生成雷达图。":"雷达图生成中。")),le=l((()=>{var e,a;const t=V.value||X.value;return t?Array.isArray(t.dimension_scores)&&t.dimension_scores.length>0?t.dimension_scores.map((e=>{const a=e.max_score>0?fe(Number(e.score)/Number(e.max_score)*100):fe(Number(e.score)),t=[e.comment,e.improvement?`改进建议:${e.improvement}`:""].filter(Boolean).join(" ");return{label:e.dimension,percent:a,displayScore:e.max_score>0?`${e.score}/${e.max_score}`:`${e.score}%`,analysis:t||"暂无分项解析。"}})):Array.isArray(t.score_details)&&t.score_details.length>0?t.score_details.map((e=>({label:e.dimension,percent:fe(Number(e.score)),displayScore:`${e.score}%`,analysis:e.comment||e.deducted_reason||"暂无分项解析。"}))):V.value&&Array.isArray(null==(e=X.value)?void 0:e.dimension_scores)&&X.value.dimension_scores.length>0?X.value.dimension_scores.map((e=>{const a=Number(e.score),t=Number(e.max_score),l=fe(t>0?a/t*100:a),s=[e.comment,e.improvement?`改进建议:${e.improvement}`:""].filter(Boolean).join(" ");return{label:e.dimension,percent:l,displayScore:t>0?`${e.score}/${e.max_score}`:`${e.score}%`,analysis:s||"暂无分项解析。"}})):V.value&&Array.isArray(null==(a=X.value)?void 0:a.score_details)&&X.value.score_details.length>0?X.value.score_details.map((e=>({label:e.dimension,percent:fe(Number(e.score)),displayScore:`${e.score}%`,analysis:e.comment||e.deducted_reason||"暂无分项解析。"}))):[]:[]})),se=l((()=>{const e=le.value.slice(0,6),a=e.length;return a<3?[]:e.map(((e,t)=>{const l=-Math.PI/2+2*Math.PI*t/a,s=e.percent/100*160,n=200+154*Math.cos(l),o=200+154*Math.sin(l);return{...e,axisX:me(200+160*Math.cos(l)),axisY:me(200+160*Math.sin(l)),labelLeft:`${me(n/400*100)}%`,labelTop:`${me(o/400*100)}%`,pointX:me(200+Math.cos(l)*s),pointY:me(200+Math.sin(l)*s),anchor:n<170?"end":n>230?"start":"middle"}}))})),ne=l((()=>se.value.map((e=>`${e.pointX},${e.pointY}`)).join(" ")));let oe=null;function re(){"function"==typeof y&&y().length>1?w():ie()}function ie(){b({url:"/pages/home/home"})}function ce(){g({url:"/pages/learning-assistant/learning-assistant"})}function ue(e){oe&&clearTimeout(oe),G.value=e,K.value=!0,oe=setTimeout((()=>{K.value=!1}),2200)}function de(e){return`${e.getFullYear()}年${e.getMonth()+1}月${e.getDate()}日`}function fe(e){return Number.isFinite(e)?Math.max(0,Math.min(100,Math.round(e))):0}function me(e){return Math.round(100*e)/100}function ve(e){return e>=90?"优秀":e>=80?"优良":e>=70?"良好":e>=60?"合格":"待加强"}function pe(e){X.value=e,q.value=e.evaluation_id,I.no=`EV-${e.evaluation_id}`,he(e.total_score),I.level=ve(I.score),I.date=de(new Date),I.overallComment=e.overall_comment||"本次评价暂无详细点评。"}function _e(e){var a;V.value=e,q.value=e.evaluation_id,I.no=`EV-${e.evaluation_id}`,I.caseTitle=e.case_title||"",I.date=function(e){if(!e)return de(new Date);const a=new Date(e);return Number.isNaN(a.getTime())?e:de(a)}(e.created_at),he(e.total_score),I.level=ve(I.score),I.overallComment=e.overall_comment||(null==(a=X.value)?void 0:a.overall_comment)||"本次评价暂无详细点评。"}function he(e){I.score=fe(Number(e)),I.scoreText=Number.isFinite(Number(e))?String(I.score):"--"}async function ye(){H.value=!1,J.value=!1;try{if(W.value)return void(await async function(e){const a=await U(e);k("clinical-thinking-evaluation-detail",a),_e(a),X.value=null,H.value=!0}(W.value));if("teaching"===$("clinical-thinking-case-mode")&&Boolean(we(!1)))return void(await async function(){const e=we(),a=function(){const e=$("clinical-thinking-teaching-evaluation");return e&&"object"==typeof e?e:null}();a&&pe(a);const t=await O(e);k("clinical-thinking-evaluation-detail",t),_e(t),H.value=!0}());const e=R();I.no=`SID-${e}`;const a=await async function(e,a="percentage"){const t=await fetch(`${A}/sessions/${e}/evaluation`,{method:"POST",headers:L(),body:JSON.stringify({score_type:a})});if(!t.ok)throw new Error(await S(t));const l=await t.json();if("OK"!==l.code||!l.data)throw new Error(l.message||"评价生成失败");return l.data}(e,"percentage");k("clinical-thinking-evaluation",a),pe(a);const t=await O(a.evaluation_id);k("clinical-thinking-evaluation-detail",t),_e(t),H.value=!0}catch(e){J.value=!0,X.value=null,V.value=null,q.value=null,I.date="--",I.no="--",I.caseTitle="",I.score=0,I.scoreText="--",I.level="生成失败",I.overallComment="评价生成失败,请稍后重试。",ue(e instanceof Error?e.message:"评价生成失败")}finally{Y.value=!1,C((()=>{setTimeout((()=>{Y.value=!0}),120)}))}}function we(e=!0){const a=$("clinical-thinking-teaching-evaluation-id"),t=Number(a);if(Number.isInteger(t)&&t>0)return t;if(e)throw new Error("未找到教学评价,请先完成教学题目");return 0}async function be(){if(q.value&&!z.value){z.value=!0;try{const e=await B(q.value);k("clinical-thinking-evaluation-pdf",{fileName:e.fileName,filePath:e.filePath||""}),await async function(e){if(e.blob){if("undefined"==typeof window||"undefined"==typeof document)return;const a=window.URL.createObjectURL(e.blob);return ge(a,e.fileName),void window.setTimeout((()=>{window.URL.revokeObjectURL(a)}),1e3)}if(!e.filePath)throw new Error("PDF 下载地址为空");const a=function(e){const a=e.trim();return/^https?:\/\//i.test(a)||a.startsWith("/")?a:`/${a}`}(e.filePath),t=e.fileName;if("undefined"==typeof window||"undefined"==typeof document)return void x({url:a,fail:()=>ue("PDF 下载失败")});try{const e=await fetch(a,{method:"GET",credentials:"include"});if(!e.ok)throw new Error(`PDF 下载失败(${e.status})`);const l=await e.blob(),s=window.URL.createObjectURL(l);ge(s,t),window.setTimeout((()=>{window.URL.revokeObjectURL(s)}),1e3)}catch(l){ge(a,t)}}(e),ue("PDF 已生成")}catch(e){ue(e instanceof Error?e.message:"PDF 下载失败")}finally{z.value=!1}}}function ge(e,a){const t=document.createElement("a");t.href=e,t.download=a,t.rel="noopener",t.style.display="none",document.body.appendChild(t),t.click(),document.body.removeChild(t)}return M((e=>{W.value=function(e){const a=Number(e);return Number.isInteger(a)&&a>0?a:null}((null==e?void 0:e.evaluation_id)||(null==e?void 0:e.id))})),s((()=>{ye()})),n((()=>{oe&&clearTimeout(oe)})),(e,a)=>{const t=N,l=T,s=j,n=E,y=D;return o(),r(t,{class:"assessment-page"},{default:i((()=>[c(t,{class:"top-app-bar"},{default:i((()=>[c(l,{class:"icon-button","aria-label":"返回",onClick:re},{default:i((()=>[c(t,{class:"back-icon"})])),_:1}),c(s,{class:"app-title"},{default:i((()=>[u("AI 学习助手")])),_:1})])),_:1}),c(y,{class:"report-content","scroll-y":""},{default:i((()=>[c(t,{class:"report-head"},{default:i((()=>[c(s,{class:"report-title"},{default:i((()=>[u("训练总结与 AI 评估报告")])),_:1}),c(t,{class:"report-meta"},{default:i((()=>[c(s,null,{default:i((()=>[u("评估日期:"+d(I.date),1)])),_:1}),c(s,null,{default:i((()=>[u("模拟编号:"+d(I.no),1)])),_:1}),I.caseTitle?(o(),r(s,{key:0},{default:i((()=>[u("病例:"+d(I.caseTitle),1)])),_:1})):f("",!0)])),_:1})])),_:1}),c(t,{class:"content-stack"},{default:i((()=>[c(t,{class:"overall-card"},{default:i((()=>[c(t,{class:"score-ring"},{default:i((()=>[(o(),m("svg",{class:"ring-svg",viewBox:"0 0 100 100"},[v("circle",{class:"ring-track",cx:"50",cy:"50",fill:"transparent",r:"42","stroke-width":"10"}),v("circle",{class:"ring-value",cx:"50",cy:"50",fill:"transparent",r:"42","stroke-dasharray":"264","stroke-dashoffset":Q.value,"stroke-linecap":"round","stroke-width":"10"},null,8,["stroke-dashoffset"])])),c(t,{class:"score-center"},{default:i((()=>[c(s,{class:"score-value"},{default:i((()=>[u(d(I.scoreText),1)])),_:1}),c(s,{class:"score-total"},{default:i((()=>[u("/100")])),_:1})])),_:1})])),_:1}),c(t,{class:"overall-copy"},{default:i((()=>[c(s,{class:"overall-title"},{default:i((()=>[u("本次考核评价:"),c(s,{class:"primary-text"},{default:i((()=>[u(d(I.level),1)])),_:1})])),_:1}),c(s,{class:"overall-desc"},{default:i((()=>[u(d(I.overallComment),1)])),_:1})])),_:1})])),_:1}),c(t,{class:"report-card"},{default:i((()=>[c(t,{class:"section-heading"},{default:i((()=>[c(t,{class:"hub-icon"}),c(s,null,{default:i((()=>[u("临床胜任力雷达图")])),_:1})])),_:1}),c(t,{class:"radar-wrap"},{default:i((()=>[se.value.length>=3?(o(),r(t,{key:0,class:"radar-stage"},{default:i((()=>[(o(),m("svg",{class:"radar-svg",viewBox:"0 0 400 400"},[v("circle",{class:"radar-grid",cx:"200",cy:"200",r:"160"}),v("circle",{class:"radar-grid",cx:"200",cy:"200",r:"120"}),v("circle",{class:"radar-grid",cx:"200",cy:"200",r:"80"}),v("circle",{class:"radar-grid",cx:"200",cy:"200",r:"40"}),(o(!0),m(p,null,_(se.value,(e=>(o(),m("line",{key:`axis-${e.label}`,class:"radar-grid",x1:"200",x2:e.axisX,y1:"200",y2:e.axisY},null,8,["x2","y2"])))),128)),v("polygon",{class:"radar-area",points:ne.value},null,8,["points"])])),(o(!0),m(p,null,_(se.value,(e=>(o(),r(t,{key:`label-${e.label}`,class:h(["radar-label",`anchor-${e.anchor}`]),style:P({left:e.labelLeft,top:e.labelTop})},{default:i((()=>[c(s,{class:"radar-label-name"},{default:i((()=>[u(d(e.label),1)])),_:2},1024),c(s,{class:"radar-value"},{default:i((()=>[u(d(e.displayScore),1)])),_:2},1024)])),_:2},1032,["class","style"])))),128))])),_:1})):(o(),r(t,{key:1,class:"empty-data radar-empty"},{default:i((()=>[c(s,null,{default:i((()=>[u(d(te.value),1)])),_:1})])),_:1}))])),_:1})])),_:1}),c(t,{class:"report-card"},{default:i((()=>[c(t,{class:"section-heading breakdown-title"},{default:i((()=>[c(t,{class:"analytics-icon"}),c(s,null,{default:i((()=>[u("分项得分与解析")])),_:1})])),_:1}),c(t,{class:"breakdown-list"},{default:i((()=>[0===le.value.length?(o(),r(t,{key:0,class:"empty-data"},{default:i((()=>[c(s,null,{default:i((()=>[u(d(ae.value),1)])),_:1})])),_:1})):(o(!0),m(p,{key:1},_(le.value,((e,a)=>(o(),r(t,{key:`${e.label}-${a}`,class:"breakdown-item"},{default:i((()=>[c(t,{class:"breakdown-head"},{default:i((()=>[c(s,null,{default:i((()=>[u(d(e.label),1)])),_:2},1024),c(s,{class:"breakdown-score"},{default:i((()=>[u(d(e.displayScore),1)])),_:2},1024)])),_:2},1024),c(t,{class:"progress-track"},{default:i((()=>[c(t,{class:"progress-fill",style:P({width:Y.value?`${e.percent}%`:"0%"})},null,8,["style"])])),_:2},1024),c(t,{class:"analysis-box"},{default:i((()=>[c(s,null,{default:i((()=>[u(d(e.analysis),1)])),_:2},1024)])),_:2},1024)])),_:2},1024)))),128))])),_:1})])),_:1}),c(t,{class:"mentor-section"},{default:i((()=>[c(t,{class:"mentor-head"},{default:i((()=>[c(n,{class:"mentor-avatar",src:F,mode:"aspectFill"}),c(t,{class:"mentor-title-group"},{default:i((()=>[c(s,{class:"mentor-title"},{default:i((()=>[u("王主任点评")])),_:1}),c(s,{class:"mentor-subtitle"},{default:i((()=>[u("Director's Mentorship")])),_:1})])),_:1})])),_:1}),c(t,{class:"mentor-bubble"},{default:i((()=>[c(t,{class:"mentor-tail"}),c(s,{class:"mentor-copy"},{default:i((()=>[u(d(Z.value),1)])),_:1}),c(t,{class:"mentor-action-row"},{default:i((()=>[c(l,{class:"read-button",onClick:ce},{default:i((()=>[c(s,null,{default:i((()=>[u("去查阅")])),_:1}),c(t,{class:"arrow-forward-icon"})])),_:1})])),_:1})])),_:1})])),_:1})])),_:1})])),_:1}),c(t,{class:"footer-actions"},{default:i((()=>[c(l,{class:h(["download-button",{disabled:!q.value||z.value}]),disabled:!q.value||z.value,onClick:be},{default:i((()=>[u(d(z.value?"PDF 生成中...":"下载完整 PDF 报告"),1)])),_:1},8,["class","disabled"]),c(l,{class:"next-button",onClick:ie},{default:i((()=>[u(" 开始下一轮强化训练 ")])),_:1})])),_:1}),c(t,{class:h(["toast",{visible:K.value}])},{default:i((()=>[u(d(G.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-57d23c00"]]);export{G as default}; diff --git a/dist/assets/pages-cases-cases.DMWiFIat.js b/dist/assets/pages-cases-cases.HRYBKfRi.js similarity index 97% rename from dist/assets/pages-cases-cases.DMWiFIat.js rename to dist/assets/pages-cases-cases.HRYBKfRi.js index 91c65a6..d3eb67d 100644 --- a/dist/assets/pages-cases-cases.DMWiFIat.js +++ b/dist/assets/pages-cases-cases.HRYBKfRi.js @@ -1 +1 @@ -import{d as e,r as a,a as l,c as t,J as s,o as u,b as c,e as i,f as n,w as o,i as r,E as d,j as v,t as f,l as m,m as p,F as _,g as y,n as h,z as g,A as k,y as b,I as C,S as T,s as w,G as j}from"./index-DfCP9RI3.js";import{o as $}from"./uni-app.es.DDI13Fy0.js";import{t as S,f as x}from"./cases.Q7p7j9rz.js";import{c as N,a as z,b as B}from"./navigation.Bg2Ef9wA.js";import{_ as I}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.BCdV446X.js";const V=I(e({__name:"cases",emits:["open-settings","open-profile","go-home"],setup(e,{emit:I}){const V=I,E=N(V),M=z(V),A=B(V),D=a([]),F=a(""),G=a(!1),J=a(!1),U=a(!1),q=a(""),H=a(0),K=a(1),L=a(10),O=a("recommended"),P=a(""),Q=a(""),R=a(""),W=a(!1),X=l({case_type:"",difficulty:""});let Y=null,Z=null,ee=0;const ae={recommended:{title:"开始训练",subtitle:"基于您的训练画像智能推荐病例",placeholder:"搜索病例标题、科室、主诉"},specialty:{title:"专项强化",subtitle:"按配置科室聚焦专项病例",placeholder:"搜索专项病例"},weak:{title:"薄弱环节",subtitle:"优先呈现训练分数低于 70 分的病例",placeholder:"搜索待补强病例"},teaching:{title:"教学互动",subtitle:"练习模式与教学互动模式病例",placeholder:"搜索教学互动病例"},"teacher-task":{title:"教师任务",subtitle:"老师配置的针对性任务训练",placeholder:"搜索教师任务病例"}},le=t((()=>"teaching"===O.value||"teacher-task"===O.value?[]:[{label:"全部类型",value:""},{label:"练习模式",value:"practice"},{label:"教学互动",value:"teaching"}])),te=[{label:"全部难度",value:""},{label:"简单",value:"easy"},{label:"中等",value:"medium"},{label:"困难",value:"hard"}],se=t((()=>ae[O.value])),ue=t((()=>D.value.lengthe.department)))?void 0:a.department)||Q.value:""}catch(u){if(t!==ee)return;U.value=l,q.value=u instanceof Error?u.message:"病例列表加载失败",function(e){Y&&clearTimeout(Y);R.value=e,W.value=!0,Y=setTimeout((()=>{W.value=!1}),2200)}(q.value)}finally{t===ee&&(G.value=!1,J.value=!1)}}function oe(){K.value=1,D.value=[],H.value=0,ne(1)}function re(){G.value||J.value||!ue.value||ne(K.value+1)}return s(F,(()=>{Z&&clearTimeout(Z),Z=setTimeout((()=>{oe()}),500)})),$((e=>{const a=null==e?void 0:e.source,l=null==e?void 0:e.mode,t=null==e?void 0:e.department,s=Number(null==e?void 0:e.page_size);var u;"recommended"===(u=a)||"specialty"===u||"weak"===u||"teaching"===u||"teacher-task"===u?O.value=a:"teaching"===l&&(O.value="teaching"),"string"==typeof t&&t.trim()&&(P.value=t),Number.isInteger(s)&&s>0&&(L.value=s)})),u(ne),c((()=>{Y&&clearTimeout(Y),Z&&clearTimeout(Z)})),(e,a)=>{const l=g,t=k,s=b,u=C,c=T;return i(),n(l,{class:"cases-page"},{default:o((()=>[r(l,{class:"case-shell"},{default:o((()=>[r(l,{class:"case-header"},{default:o((()=>[r(t,{class:"icon-button","aria-label":"设置",onClick:d(M)},{default:o((()=>[r(l,{class:"settings-icon"})])),_:1},8,["onClick"]),r(t,{class:"icon-button home-button","aria-label":"首页",onClick:d(A)},{default:o((()=>[r(l,{class:"home-icon"})])),_:1},8,["onClick"]),r(l,{class:"header-spacer"}),r(t,{class:"icon-button","aria-label":"个人中心",onClick:d(E)},{default:o((()=>[r(l,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),r(c,{class:"case-content","scroll-y":"",onScrolltolower:re},{default:o((()=>[r(l,{class:"list-hero"},{default:o((()=>[r(s,{class:"list-title"},{default:o((()=>[v(f(se.value.title),1)])),_:1}),r(s,{class:"list-subtitle"},{default:o((()=>[v(f(se.value.subtitle),1)])),_:1})])),_:1}),r(l,{class:"search-row"},{default:o((()=>[r(l,{class:"search-box"},{default:o((()=>[r(l,{class:"search-icon"}),r(u,{class:"search-input",modelValue:F.value,"onUpdate:modelValue":a[0]||(a[0]=e=>F.value=e),type:"text",placeholder:se.value.placeholder,"placeholder-class":"search-placeholder","confirm-type":"search",onConfirm:ie},null,8,["modelValue","placeholder"])])),_:1}),r(t,{class:"search-button",disabled:G.value,onClick:ie},{default:o((()=>[v("搜索")])),_:1},8,["disabled"])])),_:1}),le.value.length?(i(),n(l,{key:0,class:"filter-row"},{default:o((()=>[(i(!0),m(_,null,p(le.value,(e=>(i(),n(t,{key:e.value,class:h(["filter-chip",{active:X.case_type===e.value}]),onClick:a=>{return l=e.value,void(X.case_type!==l&&(X.case_type=l,oe()));var l}},{default:o((()=>[v(f(e.label),1)])),_:2},1032,["class","onClick"])))),128))])),_:1})):y("",!0),r(l,{class:"filter-row compact"},{default:o((()=>[(i(),m(_,null,p(te,(e=>r(t,{key:e.value,class:h(["filter-chip",{active:X.difficulty===e.value}]),onClick:a=>{return l=e.value,void(X.difficulty!==l&&(X.difficulty=l,oe()));var l}},{default:o((()=>[v(f(e.label),1)])),_:2},1032,["class","onClick"]))),64))])),_:1}),r(l,{class:"summary-row"},{default:o((()=>[r(s,null,{default:o((()=>[v(f(G.value&&0===D.value.length?"病例加载中...":`共 ${H.value} 个病例`),1)])),_:1}),Q.value?(i(),n(s,{key:0},{default:o((()=>[v("科室:"+f(Q.value),1)])),_:1})):y("",!0)])),_:1}),r(l,{class:"case-list"},{default:o((()=>[(i(!0),m(_,null,p(D.value,(e=>(i(),n(l,{key:e.id,class:h(["case-card",`mode-${e.mode}`]),onClick:a=>function(e){w("clinical-thinking-selected-case",e),w("clinical-thinking-case-mode",e.mode),j({url:"teaching"===e.mode?"/pages/teaching/teaching":"/pages/scenario/scenario"})}(e)},{default:o((()=>[r(l,{class:"case-main"},{default:o((()=>[r(l,{class:h(["patient-avatar",`avatar-${e.tone}`])},{default:o((()=>[r(s,null,{default:o((()=>[v(f(e.patientName.slice(0,1)),1)])),_:2},1024)])),_:2},1032,["class"]),r(l,{class:"case-info"},{default:o((()=>{var a;return[r(s,{class:"case-title"},{default:o((()=>[v(f(e.title),1)])),_:2},1024),r(s,{class:"case-meta"},{default:o((()=>[v(f(e.gender)+","+f(e.age||"-")+"岁,"+f(e.department)+","+f(e.caseTypeDisplay||e.scene),1)])),_:2},1024),e.description?(i(),n(s,{key:0,class:"case-desc"},{default:o((()=>[v(f(e.description),1)])),_:2},1024)):y("",!0),(null==(a=e.competencyTags)?void 0:a.length)?(i(),n(l,{key:1,class:"tag-row"},{default:o((()=>[(i(!0),m(_,null,p(e.competencyTags.slice(0,3),(e=>(i(),n(s,{key:e,class:"case-tag"},{default:o((()=>[v(f(e),1)])),_:2},1024)))),128))])),_:2},1024)):y("",!0)]})),_:2},1024)])),_:2},1024),r(l,{class:"case-footer"},{default:o((()=>[r(s,{class:"case-no"},{default:o((()=>[v("病例编号: "+f(e.caseNo),1)])),_:2},1024),r(l,{class:h(["mode-badge",`mode-badge-${e.mode}`])},{default:o((()=>[r(l,{class:h(["mode-icon",`mode-icon-${e.mode}`])},null,8,["class"]),r(s,null,{default:o((()=>{return[v(f((a=e.mode,"teaching"===a?"教学模式":"训练模式")),1)];var a})),_:2},1024)])),_:2},1032,["class"])])),_:2},1024),r(l,{class:"stat-row"},{default:o((()=>[r(s,null,{default:o((()=>[v(f(ce(e.difficulty,e.difficultyScore)),1)])),_:2},1024),e.estimatedMinutes?(i(),n(s,{key:0},{default:o((()=>[v(f(e.estimatedMinutes)+"分钟",1)])),_:2},1024)):y("",!0),null!==e.myBestScore&&void 0!==e.myBestScore?(i(),n(s,{key:1},{default:o((()=>[v("最高分 "+f(e.myBestScore),1)])),_:2},1024)):y("",!0),null!==e.myTrainCount&&void 0!==e.myTrainCount?(i(),n(s,{key:2},{default:o((()=>[v("已练 "+f(e.myTrainCount)+" 次",1)])),_:2},1024)):y("",!0)])),_:2},1024)])),_:2},1032,["class","onClick"])))),128)),G.value&&0===D.value.length?(i(),n(l,{key:0,class:"empty-state"},{default:o((()=>[r(l,{class:"spinner"}),r(s,null,{default:o((()=>[v("正在获取病例列表...")])),_:1})])),_:1})):U.value?(i(),n(l,{key:1,class:"empty-state"},{default:o((()=>[r(s,null,{default:o((()=>[v(f(q.value||"病例列表加载失败"),1)])),_:1}),r(t,{class:"retry-button",onClick:oe},{default:o((()=>[v("重新加载")])),_:1})])),_:1})):0===D.value.length?(i(),n(l,{key:2,class:"empty-state"},{default:o((()=>[r(s,null,{default:o((()=>[v("暂无匹配病例")])),_:1})])),_:1})):J.value?(i(),n(l,{key:3,class:"load-more-state"},{default:o((()=>[r(s,null,{default:o((()=>[v("继续加载中...")])),_:1})])),_:1})):ue.value?y("",!0):(i(),n(l,{key:4,class:"load-more-state"},{default:o((()=>[r(s,null,{default:o((()=>[v("已显示全部病例")])),_:1})])),_:1}))])),_:1})])),_:1})])),_:1}),r(l,{class:h(["toast",{visible:W.value}])},{default:o((()=>[v(f(R.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-956f1559"]]);export{V as default}; +import{d as e,r as a,a as l,c as t,J as s,o as u,b as c,e as i,f as n,w as o,i as r,E as d,j as v,t as f,l as m,m as p,F as _,g as y,n as h,z as g,A as k,y as b,I as C,S as T,s as w,G as j}from"./index-8wOL_3gR.js";import{o as $}from"./uni-app.es.25qqJrzj.js";import{t as S,f as x}from"./cases.DMDn0OYL.js";import{c as N,a as z,b as B}from"./navigation.Blicf8xr.js";import{_ as I}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.B66V4Y6g.js";const V=I(e({__name:"cases",emits:["open-settings","open-profile","go-home"],setup(e,{emit:I}){const V=I,E=N(V),M=z(V),A=B(V),D=a([]),F=a(""),G=a(!1),J=a(!1),U=a(!1),q=a(""),H=a(0),K=a(1),L=a(10),O=a("recommended"),P=a(""),Q=a(""),R=a(""),W=a(!1),X=l({case_type:"",difficulty:""});let Y=null,Z=null,ee=0;const ae={recommended:{title:"开始训练",subtitle:"基于您的训练画像智能推荐病例",placeholder:"搜索病例标题、科室、主诉"},specialty:{title:"专项强化",subtitle:"按配置科室聚焦专项病例",placeholder:"搜索专项病例"},weak:{title:"薄弱环节",subtitle:"优先呈现训练分数低于 70 分的病例",placeholder:"搜索待补强病例"},teaching:{title:"教学互动",subtitle:"练习模式与教学互动模式病例",placeholder:"搜索教学互动病例"},"teacher-task":{title:"教师任务",subtitle:"老师配置的针对性任务训练",placeholder:"搜索教师任务病例"}},le=t((()=>"teaching"===O.value||"teacher-task"===O.value?[]:[{label:"全部类型",value:""},{label:"练习模式",value:"practice"},{label:"教学互动",value:"teaching"}])),te=[{label:"全部难度",value:""},{label:"简单",value:"easy"},{label:"中等",value:"medium"},{label:"困难",value:"hard"}],se=t((()=>ae[O.value])),ue=t((()=>D.value.lengthe.department)))?void 0:a.department)||Q.value:""}catch(u){if(t!==ee)return;U.value=l,q.value=u instanceof Error?u.message:"病例列表加载失败",function(e){Y&&clearTimeout(Y);R.value=e,W.value=!0,Y=setTimeout((()=>{W.value=!1}),2200)}(q.value)}finally{t===ee&&(G.value=!1,J.value=!1)}}function oe(){K.value=1,D.value=[],H.value=0,ne(1)}function re(){G.value||J.value||!ue.value||ne(K.value+1)}return s(F,(()=>{Z&&clearTimeout(Z),Z=setTimeout((()=>{oe()}),500)})),$((e=>{const a=null==e?void 0:e.source,l=null==e?void 0:e.mode,t=null==e?void 0:e.department,s=Number(null==e?void 0:e.page_size);var u;"recommended"===(u=a)||"specialty"===u||"weak"===u||"teaching"===u||"teacher-task"===u?O.value=a:"teaching"===l&&(O.value="teaching"),"string"==typeof t&&t.trim()&&(P.value=t),Number.isInteger(s)&&s>0&&(L.value=s)})),u(ne),c((()=>{Y&&clearTimeout(Y),Z&&clearTimeout(Z)})),(e,a)=>{const l=g,t=k,s=b,u=C,c=T;return i(),n(l,{class:"cases-page"},{default:o((()=>[r(l,{class:"case-shell"},{default:o((()=>[r(l,{class:"case-header"},{default:o((()=>[r(t,{class:"icon-button","aria-label":"设置",onClick:d(M)},{default:o((()=>[r(l,{class:"settings-icon"})])),_:1},8,["onClick"]),r(t,{class:"icon-button home-button","aria-label":"首页",onClick:d(A)},{default:o((()=>[r(l,{class:"home-icon"})])),_:1},8,["onClick"]),r(l,{class:"header-spacer"}),r(t,{class:"icon-button","aria-label":"个人中心",onClick:d(E)},{default:o((()=>[r(l,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),r(c,{class:"case-content","scroll-y":"",onScrolltolower:re},{default:o((()=>[r(l,{class:"list-hero"},{default:o((()=>[r(s,{class:"list-title"},{default:o((()=>[v(f(se.value.title),1)])),_:1}),r(s,{class:"list-subtitle"},{default:o((()=>[v(f(se.value.subtitle),1)])),_:1})])),_:1}),r(l,{class:"search-row"},{default:o((()=>[r(l,{class:"search-box"},{default:o((()=>[r(l,{class:"search-icon"}),r(u,{class:"search-input",modelValue:F.value,"onUpdate:modelValue":a[0]||(a[0]=e=>F.value=e),type:"text",placeholder:se.value.placeholder,"placeholder-class":"search-placeholder","confirm-type":"search",onConfirm:ie},null,8,["modelValue","placeholder"])])),_:1}),r(t,{class:"search-button",disabled:G.value,onClick:ie},{default:o((()=>[v("搜索")])),_:1},8,["disabled"])])),_:1}),le.value.length?(i(),n(l,{key:0,class:"filter-row"},{default:o((()=>[(i(!0),m(_,null,p(le.value,(e=>(i(),n(t,{key:e.value,class:h(["filter-chip",{active:X.case_type===e.value}]),onClick:a=>{return l=e.value,void(X.case_type!==l&&(X.case_type=l,oe()));var l}},{default:o((()=>[v(f(e.label),1)])),_:2},1032,["class","onClick"])))),128))])),_:1})):y("",!0),r(l,{class:"filter-row compact"},{default:o((()=>[(i(),m(_,null,p(te,(e=>r(t,{key:e.value,class:h(["filter-chip",{active:X.difficulty===e.value}]),onClick:a=>{return l=e.value,void(X.difficulty!==l&&(X.difficulty=l,oe()));var l}},{default:o((()=>[v(f(e.label),1)])),_:2},1032,["class","onClick"]))),64))])),_:1}),r(l,{class:"summary-row"},{default:o((()=>[r(s,null,{default:o((()=>[v(f(G.value&&0===D.value.length?"病例加载中...":`共 ${H.value} 个病例`),1)])),_:1}),Q.value?(i(),n(s,{key:0},{default:o((()=>[v("科室:"+f(Q.value),1)])),_:1})):y("",!0)])),_:1}),r(l,{class:"case-list"},{default:o((()=>[(i(!0),m(_,null,p(D.value,(e=>(i(),n(l,{key:e.id,class:h(["case-card",`mode-${e.mode}`]),onClick:a=>function(e){w("clinical-thinking-selected-case",e),w("clinical-thinking-case-mode",e.mode),j({url:"teaching"===e.mode?"/pages/teaching/teaching":"/pages/scenario/scenario"})}(e)},{default:o((()=>[r(l,{class:"case-main"},{default:o((()=>[r(l,{class:h(["patient-avatar",`avatar-${e.tone}`])},{default:o((()=>[r(s,null,{default:o((()=>[v(f(e.patientName.slice(0,1)),1)])),_:2},1024)])),_:2},1032,["class"]),r(l,{class:"case-info"},{default:o((()=>{var a;return[r(s,{class:"case-title"},{default:o((()=>[v(f(e.title),1)])),_:2},1024),r(s,{class:"case-meta"},{default:o((()=>[v(f(e.gender)+","+f(e.age||"-")+"岁,"+f(e.department)+","+f(e.caseTypeDisplay||e.scene),1)])),_:2},1024),e.description?(i(),n(s,{key:0,class:"case-desc"},{default:o((()=>[v(f(e.description),1)])),_:2},1024)):y("",!0),(null==(a=e.competencyTags)?void 0:a.length)?(i(),n(l,{key:1,class:"tag-row"},{default:o((()=>[(i(!0),m(_,null,p(e.competencyTags.slice(0,3),(e=>(i(),n(s,{key:e,class:"case-tag"},{default:o((()=>[v(f(e),1)])),_:2},1024)))),128))])),_:2},1024)):y("",!0)]})),_:2},1024)])),_:2},1024),r(l,{class:"case-footer"},{default:o((()=>[r(s,{class:"case-no"},{default:o((()=>[v("病例编号: "+f(e.caseNo),1)])),_:2},1024),r(l,{class:h(["mode-badge",`mode-badge-${e.mode}`])},{default:o((()=>[r(l,{class:h(["mode-icon",`mode-icon-${e.mode}`])},null,8,["class"]),r(s,null,{default:o((()=>{return[v(f((a=e.mode,"teaching"===a?"教学模式":"训练模式")),1)];var a})),_:2},1024)])),_:2},1032,["class"])])),_:2},1024),r(l,{class:"stat-row"},{default:o((()=>[r(s,null,{default:o((()=>[v(f(ce(e.difficulty,e.difficultyScore)),1)])),_:2},1024),e.estimatedMinutes?(i(),n(s,{key:0},{default:o((()=>[v(f(e.estimatedMinutes)+"分钟",1)])),_:2},1024)):y("",!0),null!==e.myBestScore&&void 0!==e.myBestScore?(i(),n(s,{key:1},{default:o((()=>[v("最高分 "+f(e.myBestScore),1)])),_:2},1024)):y("",!0),null!==e.myTrainCount&&void 0!==e.myTrainCount?(i(),n(s,{key:2},{default:o((()=>[v("已练 "+f(e.myTrainCount)+" 次",1)])),_:2},1024)):y("",!0)])),_:2},1024)])),_:2},1032,["class","onClick"])))),128)),G.value&&0===D.value.length?(i(),n(l,{key:0,class:"empty-state"},{default:o((()=>[r(l,{class:"spinner"}),r(s,null,{default:o((()=>[v("正在获取病例列表...")])),_:1})])),_:1})):U.value?(i(),n(l,{key:1,class:"empty-state"},{default:o((()=>[r(s,null,{default:o((()=>[v(f(q.value||"病例列表加载失败"),1)])),_:1}),r(t,{class:"retry-button",onClick:oe},{default:o((()=>[v("重新加载")])),_:1})])),_:1})):0===D.value.length?(i(),n(l,{key:2,class:"empty-state"},{default:o((()=>[r(s,null,{default:o((()=>[v("暂无匹配病例")])),_:1})])),_:1})):J.value?(i(),n(l,{key:3,class:"load-more-state"},{default:o((()=>[r(s,null,{default:o((()=>[v("继续加载中...")])),_:1})])),_:1})):ue.value?y("",!0):(i(),n(l,{key:4,class:"load-more-state"},{default:o((()=>[r(s,null,{default:o((()=>[v("已显示全部病例")])),_:1})])),_:1}))])),_:1})])),_:1})])),_:1}),r(l,{class:h(["toast",{visible:W.value}])},{default:o((()=>[v(f(R.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-956f1559"]]);export{V as default}; diff --git a/dist/assets/pages-chat-chat.Cgzg1tzh.js b/dist/assets/pages-chat-chat.OpBAkaAZ.js similarity index 97% rename from dist/assets/pages-chat-chat.Cgzg1tzh.js rename to dist/assets/pages-chat-chat.OpBAkaAZ.js index 8157f49..f5c8dc0 100644 --- a/dist/assets/pages-chat-chat.Cgzg1tzh.js +++ b/dist/assets/pages-chat-chat.OpBAkaAZ.js @@ -1 +1 @@ -import{d as e,a,r as t,c as s,o as l,b as n,e as o,f as i,w as c,i as u,E as r,j as d,t as m,l as f,m as v,F as p,n as _,k as g,g as h,G as y,z as b,A as k,y as w,S as x,x as C,I as $}from"./index-DfCP9RI3.js";import{_ as E}from"./config-doctor.TgARj_nM.js";import{r as j}from"./cases.Q7p7j9rz.js";import{F as D,a as A,r as I,b as T,d as O,u as N,s as q,e as P}from"./session.D2K7L0GR.js";import{c as S,a as F,b as V}from"./navigation.Bg2Ef9wA.js";import{_ as G}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.BCdV446X.js";const K={id:"case-1006004",title:"持续胸痛3小时",patientName:"陈先生",gender:"男",age:60,department:"心血管内科",scene:"住院部",caseNo:"1006004",tone:"orange",mode:"training"};function M(e){if(!Number.isInteger(e)||e<=0)throw new Error("未找到当前会话,请先生成模拟场景")}async function R(e,a){var t;M(e);const s=await fetch(`${D}/sessions/${e}/${a}`,{method:"GET",headers:A()});if(!s.ok)throw new Error(await I(s));const l=await s.json();if("OK"!==l.code||!Array.isArray(null==(t=l.data)?void 0:t.items))throw new Error(l.message||"检查列表加载失败");return l.data.items}async function U(e,a,t){var s;M(e);const l=await fetch(`${D}/sessions/${e}/${a}/${encodeURIComponent(t)}`,{method:"POST",headers:A()});if(!l.ok)throw new Error(await I(l));const n=await l.json();if("OK"!==n.code||!(null==(s=n.data)?void 0:s.item_code))throw new Error(n.message||"检查结果获取失败");return n.data}const z=G(e({__name:"chat",props:{caseItem:{}},emits:["open-settings","open-profile","go-home"],setup(e,{emit:D}){const A=e,I=D,G=S(I),M=F(I),z=V(I),B=a({patient:{name:"陈先生",gender:"男",age:60,department:"心血管内科",chiefComplaint:"持续胸痛3小时"},stages:[{key:"history",label:"病史采集",active:!0},{key:"diagnosis",label:"初步诊断",active:!1},{key:"treatment",label:"治疗方案",active:!1}],messages:[]}),Q=t(""),H=t(!1),J=t(!1),L=t(!1),W=t(0),X=t(""),Y=t(!1),Z=t(!1),ee=t(!1),ae=t(null),te=t(null),se=t([]),le=t([]),ne=t(!1),oe=t(!1),ie=t(!1);let ce=null,ue=null,re=null;const de=s((()=>A.caseItem||te.value)),me=s((()=>B.patient.chiefComplaint.includes("胸痛")?"胸痛":B.patient.chiefComplaint.slice(0,6)));function fe(){(function(e){const a=e||K,t="毕波涛"===a.patientName?"陈先生":a.patientName;return Promise.resolve({patient:{name:t,gender:a.gender,age:a.age,department:a.department,chiefComplaint:a.title},stages:[{key:"history",label:"病史采集",active:!0},{key:"diagnosis",label:"初步诊断",active:!1},{key:"treatment",label:"治疗方案",active:!1}],messages:[{id:"patient-initial",role:"patient",content:"心血管内科"===a.department?"医生,我心口这儿针扎一样疼了两个小时了,现在感觉喘气都费劲。":`医生,我这次主要是${a.title},有点担心。`,label:"患者"},{id:"mentor-initial",role:"mentor",content:"观察患者的面部表情和生命体征。你的第一个问题应该如何询问,以明确疼痛的性质?",label:"王主任"}]})})(de.value).then((e=>{var a;Object.assign(B.patient,e.patient),B.stages=e.stages;const t=T();if(null==(a=null==t?void 0:t.session)?void 0:a.session_id)return ae.value=t.session.session_id,B.messages=t.session.patient_opening?[{id:`patient-opening-${t.session.session_id}`,role:"patient",content:t.session.patient_opening,label:"患者"}]:[],Ce(),void we("开始问诊");B.messages=e.messages,Ce()}))}async function ve(){if(L.value)return;if(H.value||J.value)return void $e("请等待当前回复完成");const e=ae.value;if(e){L.value=!0;try{const a=await O(e);N(a.status),y({url:"/pages/diagnosis/diagnosis"})}catch(a){$e(a instanceof Error?a.message:"完成采集失败")}finally{L.value=!1}}else $e("未找到当前会话,请先生成模拟场景")}async function pe(){const e=ae.value;if(e){if(ee.value=!1,Z.value=!0,!(le.value.length>0||oe.value)){oe.value=!0;try{le.value=await function(e){return R(e,"auxiliary-exams")}(e)}catch(a){$e(a instanceof Error?a.message:"辅助检查列表加载失败")}finally{oe.value=!1}}}else $e("未找到当前会话,请先生成模拟场景")}async function _e(){const e=ae.value;if(e){if(Z.value=!1,ee.value=!0,!(se.value.length>0||ne.value)){ne.value=!0;try{se.value=await function(e){return R(e,"physical-exams")}(e)}catch(a){$e(a instanceof Error?a.message:"体格检查列表加载失败")}finally{ne.value=!1}}}else $e("未找到当前会话,请先生成模拟场景")}async function ge(e){const a=ae.value;if(a&&!ie.value){ie.value=!0;try{const t=await function(e,a){return U(e,"physical-exams",a)}(a,e.item_code);ee.value=!1,ye("体格检查",t)}catch(t){$e(t instanceof Error?t.message:"体格检查结果获取失败")}finally{ie.value=!1}}}async function he(e){const a=ae.value;if(a&&!ie.value){ie.value=!0;try{const t=await function(e,a){return U(e,"auxiliary-exams",a)}(a,e.item_code);Z.value=!1,ye("辅助检查",t)}catch(t){$e(t instanceof Error?t.message:"辅助检查结果获取失败")}finally{ie.value=!1}}}function ye(e,a){const t=Date.now(),s=[{id:`doctor-exam-${t}`,role:"doctor",content:`选择${e}:${a.item_name}`,label:"我"},{id:`mentor-exam-${t+1}`,role:"mentor",content:be(a),label:"AI助手"}];B.messages.push(...s),Ce()}function be(e){const a=[e.is_abnormal?"异常":"",e.is_key?"关键检查":"",e.already_ordered?"已检查过":""].filter(Boolean),t=a.length?`(${a.join(",")})`:"";return`${e.item_name}${t}:${e.result_text||"暂无结果。"}`}function ke(){const e=Q.value.trim();if(e&&!H.value){if(Q.value="",ae.value)return B.messages.push({id:`doctor-${Date.now()}`,role:"doctor",content:e,label:"我"}),Ce(),void we(e);H.value=!0,function(e){const a=e.trim(),t=a.includes("出冷汗")||a.includes("恶心")?"有,刚才疼得厉害的时候出了一身冷汗,还有点恶心,但没有吐。":a.includes("体格检查")?"患者面色苍白,额部出汗,心率偏快,血压较入院时略低。":a.includes("辅助检查")?"心电图提示下壁导联 ST 段抬高,肌钙蛋白待回报。":"疼痛主要在胸骨后,像压榨一样,休息后也没有明显缓解。";return Promise.resolve([{id:`doctor-${Date.now()}`,role:"doctor",content:a,label:"我"},{id:`patient-${Date.now()+1}`,role:"patient",content:t,label:"患者"},{id:`mentor-${Date.now()+2}`,role:"mentor",content:"很好,继续围绕 OPQRST 思路追问疼痛诱因、部位、性质、放射、持续时间和缓解因素,同时关注危险信号。",label:"王主任"}])}(e).then((e=>{B.messages.push(...e),Ce()})).finally((()=>{H.value=!1}))}}async function we(e){const a=ae.value;if(!a)return;H.value=!0,null==ue||ue.abort(),ue=new AbortController;const t=B.messages.length;B.messages.push({id:`patient-stream-${Date.now()}`,role:"patient",content:"",label:"患者"}),Ce();try{await q(a,e,{onDelta(e){B.messages[t].content+=e,Ce()}},ue.signal)}catch(s){if(s instanceof DOMException&&"AbortError"===s.name)return;B.messages[t].content.trim()||(B.messages[t].content="AI 病人回复失败,请重试。"),$e(s instanceof Error?s.message:"AI 流式回复异常")}finally{H.value=!1,ue=null,Ce()}}async function xe(){const e=ae.value;if(!e)return void $e("请先生成模拟场景");if(J.value)return;J.value=!0,null==re||re.abort(),re=new AbortController;const a=B.messages.length;B.messages.push({id:`mentor-hint-${Date.now()}`,role:"mentor",content:"王主任正在生成提示...",label:"王主任"}),Ce();try{let t=!1;await P(e,function(){const e=[...B.messages].reverse().find((e=>"doctor"===e.role));return(null==e?void 0:e.content)||"开始问诊"}(),{onDelta(e){t||(B.messages[a].content="",t=!0),B.messages[a].content+=e,Ce()}},re.signal)}catch(t){if(t instanceof DOMException&&"AbortError"===t.name)return;B.messages[a].content.trim()&&"王主任正在生成提示..."!==B.messages[a].content||(B.messages[a].content="练习提示生成失败,请稍后重试。"),$e(t instanceof Error?t.message:"练习提示生成失败,请稍后重试")}finally{J.value=!1,re=null,Ce()}}function Ce(){setTimeout((()=>{W.value+=1e3}),60)}function $e(e){ce&&clearTimeout(ce),X.value=e,Y.value=!0,ce=setTimeout((()=>{Y.value=!1}),2200)}return l((()=>{te.value=j(),fe()})),n((()=>{null==ue||ue.abort(),null==re||re.abort(),ce&&clearTimeout(ce)})),(e,a)=>{const t=b,s=k,l=w,n=x,y=C,j=$;return o(),i(t,{class:"chat-page"},{default:c((()=>[u(t,{class:"chat-shell"},{default:c((()=>[u(t,{class:"top-nav"},{default:c((()=>[u(s,{class:"icon-button","aria-label":"设置",onClick:r(M)},{default:c((()=>[u(t,{class:"settings-icon"})])),_:1},8,["onClick"]),u(s,{class:"icon-button home-button","aria-label":"首页",onClick:r(z)},{default:c((()=>[u(t,{class:"home-icon"})])),_:1},8,["onClick"]),u(t,{class:"nav-spacer"}),u(s,{class:"icon-button","aria-label":"个人中心",onClick:r(G)},{default:c((()=>[u(t,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),u(t,{class:"case-header"},{default:c((()=>[u(t,{class:"case-title-row"},{default:c((()=>[u(l,{class:"case-heading"},{default:c((()=>[d("患者:"+m(B.patient.name)+" ("+m(me.value)+")",1)])),_:1}),u(s,{class:"finish-button",disabled:L.value,onClick:ve},{default:c((()=>[u(t,{class:"check-icon"}),u(l,null,{default:c((()=>[d(m(L.value?"提交中":"完成采集"),1)])),_:1})])),_:1},8,["disabled"])])),_:1}),u(t,{class:"patient-meta"},{default:c((()=>[u(l,null,{default:c((()=>[d("姓名:"+m(B.patient.name),1)])),_:1}),u(l,null,{default:c((()=>[d("性别:"+m(B.patient.gender),1)])),_:1}),u(l,null,{default:c((()=>[d("年龄:"+m(B.patient.age)+"岁",1)])),_:1}),u(l,null,{default:c((()=>[d("科室:"+m(B.patient.department),1)])),_:1})])),_:1})])),_:1}),u(t,{class:"stage-bar"},{default:c((()=>[u(t,{class:"stage-line"}),u(t,{class:"stage-line-active"}),(o(!0),f(p,null,v(B.stages,(e=>(o(),i(t,{key:e.key,class:_(["stage-item",{active:e.active}])},{default:c((()=>[u(t,{class:"stage-dot"},{default:c((()=>[u(t,{class:_(["stage-icon",`stage-icon-${e.key}`])},null,8,["class"])])),_:2},1024),u(l,null,{default:c((()=>[d(m(e.label),1)])),_:2},1024)])),_:2},1032,["class"])))),128))])),_:1}),u(n,{class:"chat-body","scroll-y":"","scroll-top":W.value},{default:c((()=>[u(t,{class:"message-list"},{default:c((()=>[(o(!0),f(p,null,v(B.messages,(e=>(o(),i(t,{key:e.id,class:_(["message-row",[`role-${e.role}`]])},{default:c((()=>["patient"===e.role?(o(),i(t,{key:0,class:"avatar patient-avatar"},{default:c((()=>[u(l,null,{default:c((()=>[d(m(B.patient.name.slice(0,1)),1)])),_:1})])),_:1})):h("",!0),u(t,{class:_(["message-bubble",`${e.role}-bubble`])},{default:c((()=>[u(l,{class:"message-content"},{default:c((()=>[d('"'+m(e.content)+'"',1)])),_:2},1024),u(t,{class:_(["message-label",{mentor:"mentor"===e.role}])},{default:c((()=>["mentor"===e.role?(o(),i(t,{key:0,class:"star-icon"})):h("",!0),u(l,null,{default:c((()=>[d(m(e.label),1)])),_:2},1024)])),_:2},1032,["class"])])),_:2},1032,["class"]),"doctor"===e.role?(o(),i(t,{key:1,class:"avatar doctor-avatar"},{default:c((()=>[u(t,{class:"person-icon"})])),_:1})):h("",!0)])),_:2},1032,["class"])))),128))])),_:1})])),_:1},8,["scroll-top"]),u(t,{class:_(["mentor-float",{loading:J.value}]),onClick:[g(xe,["stop"]),g(xe,["stop"])]},{default:c((()=>[u(l,{class:"mentor-badge"},{default:c((()=>[d("王主任")])),_:1}),u(t,{class:"mentor-avatar",onClick:[g(xe,["stop"]),g(xe,["stop"])]},{default:c((()=>[u(y,{src:E,mode:"aspectFill"})])),_:1})])),_:1},8,["class"]),u(t,{class:"input-panel"},{default:c((()=>[u(n,{class:"quick-actions","scroll-x":""},{default:c((()=>[u(t,{class:"quick-row"},{default:c((()=>[u(s,{class:"quick-chip",onClick:_e},{default:c((()=>[d("体格检查")])),_:1}),u(s,{class:"quick-chip",onClick:pe},{default:c((()=>[d("辅助检查")])),_:1})])),_:1})])),_:1}),u(t,{class:"input-row"},{default:c((()=>[u(j,{class:"chat-input",modelValue:Q.value,"onUpdate:modelValue":a[0]||(a[0]=e=>Q.value=e),type:"text",placeholder:"输入你对患者的提问...","placeholder-class":"input-placeholder",onConfirm:ke},null,8,["modelValue"]),u(s,{class:"send-button",disabled:H.value,onClick:ke},{default:c((()=>[u(t,{class:"send-icon"})])),_:1},8,["disabled"])])),_:1})])),_:1})])),_:1}),ee.value?(o(),i(t,{key:0,class:"exam-mask",onClick:a[3]||(a[3]=e=>ee.value=!1)},{default:c((()=>[u(t,{class:"physical-panel",onClick:a[2]||(a[2]=g((()=>{}),["stop"]))},{default:c((()=>[u(t,{class:"exam-header"},{default:c((()=>[u(l,{class:"exam-title"},{default:c((()=>[d("选择体格检查")])),_:1}),u(s,{class:"exam-close","aria-label":"关闭",onClick:a[1]||(a[1]=e=>ee.value=!1)},{default:c((()=>[u(t,{class:"close-icon"})])),_:1})])),_:1}),u(t,{class:"exam-list"},{default:c((()=>[ne.value?(o(),i(t,{key:0,class:"exam-empty"},{default:c((()=>[u(l,null,{default:c((()=>[d("体格检查加载中...")])),_:1})])),_:1})):0===se.value.length?(o(),i(t,{key:1,class:"exam-empty"},{default:c((()=>[u(l,null,{default:c((()=>[d("暂无可选体格检查")])),_:1})])),_:1})):(o(!0),f(p,{key:2},v(se.value,(e=>(o(),i(s,{key:e.item_code,class:"exam-item",disabled:ie.value,onClick:a=>ge(e)},{default:c((()=>[u(l,{class:"exam-name"},{default:c((()=>[d(m(e.item_name),1)])),_:2},1024),u(t,{class:"chevron-icon"})])),_:2},1032,["disabled","onClick"])))),128))])),_:1})])),_:1})])),_:1})):h("",!0),Z.value?(o(),i(t,{key:1,class:"exam-mask",onClick:a[6]||(a[6]=e=>Z.value=!1)},{default:c((()=>[u(t,{class:"exam-panel",onClick:a[5]||(a[5]=g((()=>{}),["stop"]))},{default:c((()=>[u(t,{class:"exam-header"},{default:c((()=>[u(l,{class:"exam-title"},{default:c((()=>[d("选择辅助检查")])),_:1}),u(s,{class:"exam-close","aria-label":"关闭",onClick:a[4]||(a[4]=e=>Z.value=!1)},{default:c((()=>[u(t,{class:"close-icon"})])),_:1})])),_:1}),u(t,{class:"exam-list"},{default:c((()=>[oe.value?(o(),i(t,{key:0,class:"exam-empty"},{default:c((()=>[u(l,null,{default:c((()=>[d("辅助检查加载中...")])),_:1})])),_:1})):0===le.value.length?(o(),i(t,{key:1,class:"exam-empty"},{default:c((()=>[u(l,null,{default:c((()=>[d("暂无可选辅助检查")])),_:1})])),_:1})):(o(!0),f(p,{key:2},v(le.value,(e=>(o(),i(s,{key:e.item_code,class:"exam-item",disabled:ie.value,onClick:a=>he(e)},{default:c((()=>[u(l,{class:"exam-name"},{default:c((()=>[d(m(e.item_name),1)])),_:2},1024),u(t,{class:"chevron-icon"})])),_:2},1032,["disabled","onClick"])))),128))])),_:1})])),_:1})])),_:1})):h("",!0),u(t,{class:_(["toast",{visible:Y.value}])},{default:c((()=>[d(m(X.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-c81fb762"]]);export{z as default}; +import{d as e,a,r as t,c as s,o as l,b as n,e as o,f as i,w as c,i as u,E as r,j as d,t as m,l as f,m as v,F as p,n as _,k as g,g as h,G as y,z as b,A as k,y as w,S as x,x as C,I as $}from"./index-8wOL_3gR.js";import{_ as E}from"./config-doctor.TgARj_nM.js";import{r as j}from"./cases.DMDn0OYL.js";import{F as D,a as A,r as I,b as T,d as O,u as N,s as q,e as P}from"./session.LaNXUMh-.js";import{c as S,a as F,b as V}from"./navigation.Blicf8xr.js";import{_ as G}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.B66V4Y6g.js";const K={id:"case-1006004",title:"持续胸痛3小时",patientName:"陈先生",gender:"男",age:60,department:"心血管内科",scene:"住院部",caseNo:"1006004",tone:"orange",mode:"training"};function M(e){if(!Number.isInteger(e)||e<=0)throw new Error("未找到当前会话,请先生成模拟场景")}async function R(e,a){var t;M(e);const s=await fetch(`${D}/sessions/${e}/${a}`,{method:"GET",headers:A()});if(!s.ok)throw new Error(await I(s));const l=await s.json();if("OK"!==l.code||!Array.isArray(null==(t=l.data)?void 0:t.items))throw new Error(l.message||"检查列表加载失败");return l.data.items}async function U(e,a,t){var s;M(e);const l=await fetch(`${D}/sessions/${e}/${a}/${encodeURIComponent(t)}`,{method:"POST",headers:A()});if(!l.ok)throw new Error(await I(l));const n=await l.json();if("OK"!==n.code||!(null==(s=n.data)?void 0:s.item_code))throw new Error(n.message||"检查结果获取失败");return n.data}const z=G(e({__name:"chat",props:{caseItem:{}},emits:["open-settings","open-profile","go-home"],setup(e,{emit:D}){const A=e,I=D,G=S(I),M=F(I),z=V(I),B=a({patient:{name:"陈先生",gender:"男",age:60,department:"心血管内科",chiefComplaint:"持续胸痛3小时"},stages:[{key:"history",label:"病史采集",active:!0},{key:"diagnosis",label:"初步诊断",active:!1},{key:"treatment",label:"治疗方案",active:!1}],messages:[]}),Q=t(""),H=t(!1),J=t(!1),L=t(!1),W=t(0),X=t(""),Y=t(!1),Z=t(!1),ee=t(!1),ae=t(null),te=t(null),se=t([]),le=t([]),ne=t(!1),oe=t(!1),ie=t(!1);let ce=null,ue=null,re=null;const de=s((()=>A.caseItem||te.value)),me=s((()=>B.patient.chiefComplaint.includes("胸痛")?"胸痛":B.patient.chiefComplaint.slice(0,6)));function fe(){(function(e){const a=e||K,t="毕波涛"===a.patientName?"陈先生":a.patientName;return Promise.resolve({patient:{name:t,gender:a.gender,age:a.age,department:a.department,chiefComplaint:a.title},stages:[{key:"history",label:"病史采集",active:!0},{key:"diagnosis",label:"初步诊断",active:!1},{key:"treatment",label:"治疗方案",active:!1}],messages:[{id:"patient-initial",role:"patient",content:"心血管内科"===a.department?"医生,我心口这儿针扎一样疼了两个小时了,现在感觉喘气都费劲。":`医生,我这次主要是${a.title},有点担心。`,label:"患者"},{id:"mentor-initial",role:"mentor",content:"观察患者的面部表情和生命体征。你的第一个问题应该如何询问,以明确疼痛的性质?",label:"王主任"}]})})(de.value).then((e=>{var a;Object.assign(B.patient,e.patient),B.stages=e.stages;const t=T();if(null==(a=null==t?void 0:t.session)?void 0:a.session_id)return ae.value=t.session.session_id,B.messages=t.session.patient_opening?[{id:`patient-opening-${t.session.session_id}`,role:"patient",content:t.session.patient_opening,label:"患者"}]:[],Ce(),void we("开始问诊");B.messages=e.messages,Ce()}))}async function ve(){if(L.value)return;if(H.value||J.value)return void $e("请等待当前回复完成");const e=ae.value;if(e){L.value=!0;try{const a=await O(e);N(a.status),y({url:"/pages/diagnosis/diagnosis"})}catch(a){$e(a instanceof Error?a.message:"完成采集失败")}finally{L.value=!1}}else $e("未找到当前会话,请先生成模拟场景")}async function pe(){const e=ae.value;if(e){if(ee.value=!1,Z.value=!0,!(le.value.length>0||oe.value)){oe.value=!0;try{le.value=await function(e){return R(e,"auxiliary-exams")}(e)}catch(a){$e(a instanceof Error?a.message:"辅助检查列表加载失败")}finally{oe.value=!1}}}else $e("未找到当前会话,请先生成模拟场景")}async function _e(){const e=ae.value;if(e){if(Z.value=!1,ee.value=!0,!(se.value.length>0||ne.value)){ne.value=!0;try{se.value=await function(e){return R(e,"physical-exams")}(e)}catch(a){$e(a instanceof Error?a.message:"体格检查列表加载失败")}finally{ne.value=!1}}}else $e("未找到当前会话,请先生成模拟场景")}async function ge(e){const a=ae.value;if(a&&!ie.value){ie.value=!0;try{const t=await function(e,a){return U(e,"physical-exams",a)}(a,e.item_code);ee.value=!1,ye("体格检查",t)}catch(t){$e(t instanceof Error?t.message:"体格检查结果获取失败")}finally{ie.value=!1}}}async function he(e){const a=ae.value;if(a&&!ie.value){ie.value=!0;try{const t=await function(e,a){return U(e,"auxiliary-exams",a)}(a,e.item_code);Z.value=!1,ye("辅助检查",t)}catch(t){$e(t instanceof Error?t.message:"辅助检查结果获取失败")}finally{ie.value=!1}}}function ye(e,a){const t=Date.now(),s=[{id:`doctor-exam-${t}`,role:"doctor",content:`选择${e}:${a.item_name}`,label:"我"},{id:`mentor-exam-${t+1}`,role:"mentor",content:be(a),label:"AI助手"}];B.messages.push(...s),Ce()}function be(e){const a=[e.is_abnormal?"异常":"",e.is_key?"关键检查":"",e.already_ordered?"已检查过":""].filter(Boolean),t=a.length?`(${a.join(",")})`:"";return`${e.item_name}${t}:${e.result_text||"暂无结果。"}`}function ke(){const e=Q.value.trim();if(e&&!H.value){if(Q.value="",ae.value)return B.messages.push({id:`doctor-${Date.now()}`,role:"doctor",content:e,label:"我"}),Ce(),void we(e);H.value=!0,function(e){const a=e.trim(),t=a.includes("出冷汗")||a.includes("恶心")?"有,刚才疼得厉害的时候出了一身冷汗,还有点恶心,但没有吐。":a.includes("体格检查")?"患者面色苍白,额部出汗,心率偏快,血压较入院时略低。":a.includes("辅助检查")?"心电图提示下壁导联 ST 段抬高,肌钙蛋白待回报。":"疼痛主要在胸骨后,像压榨一样,休息后也没有明显缓解。";return Promise.resolve([{id:`doctor-${Date.now()}`,role:"doctor",content:a,label:"我"},{id:`patient-${Date.now()+1}`,role:"patient",content:t,label:"患者"},{id:`mentor-${Date.now()+2}`,role:"mentor",content:"很好,继续围绕 OPQRST 思路追问疼痛诱因、部位、性质、放射、持续时间和缓解因素,同时关注危险信号。",label:"王主任"}])}(e).then((e=>{B.messages.push(...e),Ce()})).finally((()=>{H.value=!1}))}}async function we(e){const a=ae.value;if(!a)return;H.value=!0,null==ue||ue.abort(),ue=new AbortController;const t=B.messages.length;B.messages.push({id:`patient-stream-${Date.now()}`,role:"patient",content:"",label:"患者"}),Ce();try{await q(a,e,{onDelta(e){B.messages[t].content+=e,Ce()}},ue.signal)}catch(s){if(s instanceof DOMException&&"AbortError"===s.name)return;B.messages[t].content.trim()||(B.messages[t].content="AI 病人回复失败,请重试。"),$e(s instanceof Error?s.message:"AI 流式回复异常")}finally{H.value=!1,ue=null,Ce()}}async function xe(){const e=ae.value;if(!e)return void $e("请先生成模拟场景");if(J.value)return;J.value=!0,null==re||re.abort(),re=new AbortController;const a=B.messages.length;B.messages.push({id:`mentor-hint-${Date.now()}`,role:"mentor",content:"王主任正在生成提示...",label:"王主任"}),Ce();try{let t=!1;await P(e,function(){const e=[...B.messages].reverse().find((e=>"doctor"===e.role));return(null==e?void 0:e.content)||"开始问诊"}(),{onDelta(e){t||(B.messages[a].content="",t=!0),B.messages[a].content+=e,Ce()}},re.signal)}catch(t){if(t instanceof DOMException&&"AbortError"===t.name)return;B.messages[a].content.trim()&&"王主任正在生成提示..."!==B.messages[a].content||(B.messages[a].content="练习提示生成失败,请稍后重试。"),$e(t instanceof Error?t.message:"练习提示生成失败,请稍后重试")}finally{J.value=!1,re=null,Ce()}}function Ce(){setTimeout((()=>{W.value+=1e3}),60)}function $e(e){ce&&clearTimeout(ce),X.value=e,Y.value=!0,ce=setTimeout((()=>{Y.value=!1}),2200)}return l((()=>{te.value=j(),fe()})),n((()=>{null==ue||ue.abort(),null==re||re.abort(),ce&&clearTimeout(ce)})),(e,a)=>{const t=b,s=k,l=w,n=x,y=C,j=$;return o(),i(t,{class:"chat-page"},{default:c((()=>[u(t,{class:"chat-shell"},{default:c((()=>[u(t,{class:"top-nav"},{default:c((()=>[u(s,{class:"icon-button","aria-label":"设置",onClick:r(M)},{default:c((()=>[u(t,{class:"settings-icon"})])),_:1},8,["onClick"]),u(s,{class:"icon-button home-button","aria-label":"首页",onClick:r(z)},{default:c((()=>[u(t,{class:"home-icon"})])),_:1},8,["onClick"]),u(t,{class:"nav-spacer"}),u(s,{class:"icon-button","aria-label":"个人中心",onClick:r(G)},{default:c((()=>[u(t,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),u(t,{class:"case-header"},{default:c((()=>[u(t,{class:"case-title-row"},{default:c((()=>[u(l,{class:"case-heading"},{default:c((()=>[d("患者:"+m(B.patient.name)+" ("+m(me.value)+")",1)])),_:1}),u(s,{class:"finish-button",disabled:L.value,onClick:ve},{default:c((()=>[u(t,{class:"check-icon"}),u(l,null,{default:c((()=>[d(m(L.value?"提交中":"完成采集"),1)])),_:1})])),_:1},8,["disabled"])])),_:1}),u(t,{class:"patient-meta"},{default:c((()=>[u(l,null,{default:c((()=>[d("姓名:"+m(B.patient.name),1)])),_:1}),u(l,null,{default:c((()=>[d("性别:"+m(B.patient.gender),1)])),_:1}),u(l,null,{default:c((()=>[d("年龄:"+m(B.patient.age)+"岁",1)])),_:1}),u(l,null,{default:c((()=>[d("科室:"+m(B.patient.department),1)])),_:1})])),_:1})])),_:1}),u(t,{class:"stage-bar"},{default:c((()=>[u(t,{class:"stage-line"}),u(t,{class:"stage-line-active"}),(o(!0),f(p,null,v(B.stages,(e=>(o(),i(t,{key:e.key,class:_(["stage-item",{active:e.active}])},{default:c((()=>[u(t,{class:"stage-dot"},{default:c((()=>[u(t,{class:_(["stage-icon",`stage-icon-${e.key}`])},null,8,["class"])])),_:2},1024),u(l,null,{default:c((()=>[d(m(e.label),1)])),_:2},1024)])),_:2},1032,["class"])))),128))])),_:1}),u(n,{class:"chat-body","scroll-y":"","scroll-top":W.value},{default:c((()=>[u(t,{class:"message-list"},{default:c((()=>[(o(!0),f(p,null,v(B.messages,(e=>(o(),i(t,{key:e.id,class:_(["message-row",[`role-${e.role}`]])},{default:c((()=>["patient"===e.role?(o(),i(t,{key:0,class:"avatar patient-avatar"},{default:c((()=>[u(l,null,{default:c((()=>[d(m(B.patient.name.slice(0,1)),1)])),_:1})])),_:1})):h("",!0),u(t,{class:_(["message-bubble",`${e.role}-bubble`])},{default:c((()=>[u(l,{class:"message-content"},{default:c((()=>[d('"'+m(e.content)+'"',1)])),_:2},1024),u(t,{class:_(["message-label",{mentor:"mentor"===e.role}])},{default:c((()=>["mentor"===e.role?(o(),i(t,{key:0,class:"star-icon"})):h("",!0),u(l,null,{default:c((()=>[d(m(e.label),1)])),_:2},1024)])),_:2},1032,["class"])])),_:2},1032,["class"]),"doctor"===e.role?(o(),i(t,{key:1,class:"avatar doctor-avatar"},{default:c((()=>[u(t,{class:"person-icon"})])),_:1})):h("",!0)])),_:2},1032,["class"])))),128))])),_:1})])),_:1},8,["scroll-top"]),u(t,{class:_(["mentor-float",{loading:J.value}]),onClick:[g(xe,["stop"]),g(xe,["stop"])]},{default:c((()=>[u(l,{class:"mentor-badge"},{default:c((()=>[d("王主任")])),_:1}),u(t,{class:"mentor-avatar",onClick:[g(xe,["stop"]),g(xe,["stop"])]},{default:c((()=>[u(y,{src:E,mode:"aspectFill"})])),_:1})])),_:1},8,["class"]),u(t,{class:"input-panel"},{default:c((()=>[u(n,{class:"quick-actions","scroll-x":""},{default:c((()=>[u(t,{class:"quick-row"},{default:c((()=>[u(s,{class:"quick-chip",onClick:_e},{default:c((()=>[d("体格检查")])),_:1}),u(s,{class:"quick-chip",onClick:pe},{default:c((()=>[d("辅助检查")])),_:1})])),_:1})])),_:1}),u(t,{class:"input-row"},{default:c((()=>[u(j,{class:"chat-input",modelValue:Q.value,"onUpdate:modelValue":a[0]||(a[0]=e=>Q.value=e),type:"text",placeholder:"输入你对患者的提问...","placeholder-class":"input-placeholder",onConfirm:ke},null,8,["modelValue"]),u(s,{class:"send-button",disabled:H.value,onClick:ke},{default:c((()=>[u(t,{class:"send-icon"})])),_:1},8,["disabled"])])),_:1})])),_:1})])),_:1}),ee.value?(o(),i(t,{key:0,class:"exam-mask",onClick:a[3]||(a[3]=e=>ee.value=!1)},{default:c((()=>[u(t,{class:"physical-panel",onClick:a[2]||(a[2]=g((()=>{}),["stop"]))},{default:c((()=>[u(t,{class:"exam-header"},{default:c((()=>[u(l,{class:"exam-title"},{default:c((()=>[d("选择体格检查")])),_:1}),u(s,{class:"exam-close","aria-label":"关闭",onClick:a[1]||(a[1]=e=>ee.value=!1)},{default:c((()=>[u(t,{class:"close-icon"})])),_:1})])),_:1}),u(t,{class:"exam-list"},{default:c((()=>[ne.value?(o(),i(t,{key:0,class:"exam-empty"},{default:c((()=>[u(l,null,{default:c((()=>[d("体格检查加载中...")])),_:1})])),_:1})):0===se.value.length?(o(),i(t,{key:1,class:"exam-empty"},{default:c((()=>[u(l,null,{default:c((()=>[d("暂无可选体格检查")])),_:1})])),_:1})):(o(!0),f(p,{key:2},v(se.value,(e=>(o(),i(s,{key:e.item_code,class:"exam-item",disabled:ie.value,onClick:a=>ge(e)},{default:c((()=>[u(l,{class:"exam-name"},{default:c((()=>[d(m(e.item_name),1)])),_:2},1024),u(t,{class:"chevron-icon"})])),_:2},1032,["disabled","onClick"])))),128))])),_:1})])),_:1})])),_:1})):h("",!0),Z.value?(o(),i(t,{key:1,class:"exam-mask",onClick:a[6]||(a[6]=e=>Z.value=!1)},{default:c((()=>[u(t,{class:"exam-panel",onClick:a[5]||(a[5]=g((()=>{}),["stop"]))},{default:c((()=>[u(t,{class:"exam-header"},{default:c((()=>[u(l,{class:"exam-title"},{default:c((()=>[d("选择辅助检查")])),_:1}),u(s,{class:"exam-close","aria-label":"关闭",onClick:a[4]||(a[4]=e=>Z.value=!1)},{default:c((()=>[u(t,{class:"close-icon"})])),_:1})])),_:1}),u(t,{class:"exam-list"},{default:c((()=>[oe.value?(o(),i(t,{key:0,class:"exam-empty"},{default:c((()=>[u(l,null,{default:c((()=>[d("辅助检查加载中...")])),_:1})])),_:1})):0===le.value.length?(o(),i(t,{key:1,class:"exam-empty"},{default:c((()=>[u(l,null,{default:c((()=>[d("暂无可选辅助检查")])),_:1})])),_:1})):(o(!0),f(p,{key:2},v(le.value,(e=>(o(),i(s,{key:e.item_code,class:"exam-item",disabled:ie.value,onClick:a=>he(e)},{default:c((()=>[u(l,{class:"exam-name"},{default:c((()=>[d(m(e.item_name),1)])),_:2},1024),u(t,{class:"chevron-icon"})])),_:2},1032,["disabled","onClick"])))),128))])),_:1})])),_:1})])),_:1})):h("",!0),u(t,{class:_(["toast",{visible:Y.value}])},{default:c((()=>[d(m(X.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-c81fb762"]]);export{z as default}; diff --git a/dist/assets/pages-config-config.h5bc7jDo.js b/dist/assets/pages-config-config.2lX4qMcJ.js similarity index 97% rename from dist/assets/pages-config-config.h5bc7jDo.js rename to dist/assets/pages-config-config.2lX4qMcJ.js index 06bc7a3..4f0e43a 100644 --- a/dist/assets/pages-config-config.h5bc7jDo.js +++ b/dist/assets/pages-config-config.2lX4qMcJ.js @@ -1 +1 @@ -import{C as e,D as a,d as l,a as s,r as t,c,o as n,b as u,e as i,f as o,w as r,i as d,n as f,j as v,t as p,l as m,m as b,F as _,k as g,g as h,s as k,q as y,x as C,z as x,y as j,A as w,S as T}from"./index-DfCP9RI3.js";import{_ as A}from"./config-doctor.TgARj_nM.js";import{c as F}from"./navigation.Bg2Ef9wA.js";import{a as M,A as P,b as S,c as $}from"./auth.BCdV446X.js";import{_ as z}from"./_plugin-vue_export-helper.BCo6x5W8.js";const E={departments:[{value:"im",label:"内科",desc:"心内、呼吸、消化、肾内等临床场景"},{value:"sur",label:"外科",desc:"普外、骨科、神外、胸外等临床场景"},{value:"ped",label:"儿科",desc:"儿童常见病、急重症与沟通训练"},{value:"obg",label:"妇产科",desc:"围产、妇科、产科急症训练"},{value:"er",label:"急诊科",desc:"分诊、抢救、危急值处置训练"},{value:"icu",label:"重症医学科",desc:"危重症评估与多学科决策训练"}],titles:[{value:"resident",label:"住院医师",desc:"强化基础诊疗路径与病历思维"},{value:"attending",label:"主治医师",desc:"提升独立诊疗和带教表达"},{value:"associate_chief",label:"副主任医师",desc:"复杂病例决策与团队协作"},{value:"chief",label:"主任医师",desc:"疑难病例、质控和教学管理"}],experiences:[{value:"1-3",label:"1-3年",desc:"基础病例训练优先"},{value:"3-5",label:"3-5年",desc:"进阶诊疗路径优先"},{value:"5-10",label:"5-10年",desc:"复杂病例推演优先"},{value:"10+",label:"10年以上",desc:"疑难病例与带教模拟优先"}]};function I(l){return new Promise(((s,t)=>{const c=function(){try{return a("clinical-thinking-access-token")||""}catch{return""}}(),n={"Content-Type":"application/json"};c&&(n.Authorization=`Bearer ${c}`),e({url:`${M}/user/profile/config/`,method:"POST",timeout:1e4,header:n,data:l,success:e=>{if(e.statusCode>=200&&e.statusCode<300)return void s(e.data);const a=e.data,l="string"==typeof(null==a?void 0:a.code)?a.code:void 0;t(new P(function(e,a){if(e&&"object"==typeof e){const a=e,l=a.message||a.detail||a.error;if("string"==typeof l&&l.trim())return l}return a}(e.data,`保存失败(${e.statusCode})`),l,e.statusCode))},fail:e=>{t(new P(e.errMsg||"无法连接服务"))}})}))}const N=z(l({__name:"config",emits:["open-profile"],setup(e,{emit:a}){const l=s({department:"im",title:"resident",experience:"1-3"}),M=t(E),P=t("欢迎回来!请配置执业信息,开始精准带教模拟。"),z=t(""),N=t(!1),O=t(""),q=t(!1),B=t(!1),D=t("idle"),G=t(""),H=t(!1),J=t("");F(a);let K=null,L=null;const Q=c((()=>ee("departments",l.department))),R=c((()=>ee("titles",l.title))),U=c((()=>ee("experiences",l.experience))),V=c((()=>{const e={department:M.value.departments,title:M.value.titles,experience:M.value.experiences},a=O.value;return a?e[a]:[]})),W=c((()=>{const e=O.value;return e?{department:"选择执业科室",title:"选择专业职称",experience:"选择执业年限"}[e]:"请选择"})),X=c((()=>B.value?"正在保存...":"saved"===D.value?"已就绪":"确认并继续"));function Y(){Promise.resolve({options:E,defaults:{department:"im",title:"resident",experience:"1-3"},mentor:{name:"王主任",message:"欢迎回来!请配置执业信息,开始精准带教模拟。"}}).then((({options:e,defaults:a,mentor:s})=>{M.value=e,Object.assign(l,a),P.value=s.message,function(){K&&clearTimeout(K);z.value="",N.value=!0;let e=0;const a=()=>{ee.value===a))||l[0]||{label:"请选择",value:""}}function ae(e){O.value=e,q.value=!0}function le(){q.value=!1,O.value=""}function se(){const e=Number(l.department);if(!Number.isInteger(e)||e<=0)return void ce("请先选择有效执业科室");const a={department:e,title_name:R.value.label,practice_years:U.value.label};B.value=!0,D.value="idle",I(a).then((e=>{k("clinical-thinking-config",e),B.value=!1,D.value="saved",ce("配置已保存"),setTimeout((()=>{y({url:"/pages/home/home"})}),500)})).catch((e=>{B.value=!1,ce(e instanceof Error?e.message:"保存失败,请稍后重试")}))}function te(){"/static/config-hospital.png"!==J.value&&(J.value="/static/config-hospital.png")}function ce(e){L&&clearTimeout(L),G.value=e,H.value=!0,L=setTimeout((()=>{H.value=!1}),2200)}return n((()=>{Y(),async function(){try{const e=await S();if(0===e.length)return;const a=e.map(Z);M.value={...M.value,departments:a},l.department=a[0].value}catch{}}(),async function(){try{const e=await $();J.value=e.banner_url||"/static/config-hospital.png"}catch{J.value="/static/config-hospital.png"}}()})),u((()=>{K&&clearTimeout(K),L&&clearTimeout(L)})),(e,a)=>{const s=C,t=x,c=j,n=w,u=T;return i(),o(t,{class:"config-page"},{default:r((()=>[d(t,{class:"phone-frame"},{default:r((()=>[d(t,{class:"hero-section"},{default:r((()=>[d(s,{class:"hospital-image",src:J.value,mode:"aspectFit",onError:te},null,8,["src"]),d(t,{class:"hero-overlay"})])),_:1}),d(t,{class:"profile-section"},{default:r((()=>[d(t,{class:"section-glow"}),d(t,{class:"profile-content"},{default:r((()=>[d(t,{class:"intro-row"},{default:r((()=>[d(t,{class:"doctor-card"},{default:r((()=>[d(s,{class:"doctor-image",src:A,mode:"aspectFit"})])),_:1}),d(t,{class:"bubble"},{default:r((()=>[d(c,{class:f(["bubble-text",{typing:N.value}])},{default:r((()=>[v(p(z.value),1)])),_:1},8,["class"]),d(t,{class:"bubble-arrow"})])),_:1})])),_:1}),d(t,{class:"form-area"},{default:r((()=>[d(t,{class:"field-block"},{default:r((()=>[d(c,{class:"field-label"},{default:r((()=>[v("执业科室")])),_:1}),d(t,{class:"glass-select",onClick:a[0]||(a[0]=e=>ae("department"))},{default:r((()=>[d(c,{class:"select-value"},{default:r((()=>[v(p(Q.value.label),1)])),_:1}),d(t,{class:"chevron"})])),_:1})])),_:1}),d(t,{class:"field-grid"},{default:r((()=>[d(t,{class:"field-block"},{default:r((()=>[d(c,{class:"field-label"},{default:r((()=>[v("专业职称")])),_:1}),d(t,{class:"glass-select",onClick:a[1]||(a[1]=e=>ae("title"))},{default:r((()=>[d(c,{class:"select-value"},{default:r((()=>[v(p(R.value.label),1)])),_:1}),d(t,{class:"chevron"})])),_:1})])),_:1}),d(t,{class:"field-block"},{default:r((()=>[d(c,{class:"field-label"},{default:r((()=>[v("执业年限")])),_:1}),d(t,{class:"glass-select",onClick:a[2]||(a[2]=e=>ae("experience"))},{default:r((()=>[d(c,{class:"select-value"},{default:r((()=>[v(p(U.value.label),1)])),_:1}),d(t,{class:"chevron"})])),_:1})])),_:1})])),_:1})])),_:1})])),_:1})])),_:1}),d(t,{class:"action-section"},{default:r((()=>[d(n,{class:f(["submit-button",{saved:"saved"===D.value}]),disabled:B.value,onClick:se},{default:r((()=>[B.value?(i(),o(t,{key:0,class:"spinner"})):"saved"===D.value?(i(),o(t,{key:1,class:"check-icon"})):(i(),o(t,{key:2,class:"check-icon"})),d(c,null,{default:r((()=>[v(p(X.value),1)])),_:1})])),_:1},8,["class","disabled"]),d(t,{class:"secure-tip"},{default:r((()=>[d(t,{class:"lock-icon"}),d(c,null,{default:r((()=>[v("数据已进行安全加密处理")])),_:1})])),_:1})])),_:1}),d(t,{class:"home-indicator"})])),_:1}),d(t,{class:f(["toast",{visible:H.value}])},{default:r((()=>[v(p(G.value),1)])),_:1},8,["class"]),q.value?(i(),o(t,{key:0,class:"picker-mask",onClick:le},{default:r((()=>[d(t,{class:"picker-panel",onClick:a[3]||(a[3]=g((()=>{}),["stop"]))},{default:r((()=>[d(t,{class:"picker-header"},{default:r((()=>[d(c,{class:"picker-title"},{default:r((()=>[v(p(W.value),1)])),_:1}),d(c,{class:"picker-close",onClick:le},{default:r((()=>[v("关闭")])),_:1})])),_:1}),d(u,{class:"option-list","scroll-y":""},{default:r((()=>[(i(!0),m(_,null,b(V.value,(e=>(i(),o(t,{key:e.value,class:f(["option-item",{active:e.value===l[O.value]}]),onClick:a=>function(e){const a=O.value;a&&(l[a]=e.value,le())}(e)},{default:r((()=>[d(t,{class:"option-copy"},{default:r((()=>[d(c,{class:"option-label"},{default:r((()=>[v(p(e.label),1)])),_:2},1024),e.desc?(i(),o(c,{key:0,class:"option-desc"},{default:r((()=>[v(p(e.desc),1)])),_:2},1024)):h("",!0)])),_:2},1024),e.value===l[O.value]?(i(),o(t,{key:0,class:"selected-mark"})):h("",!0)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1})])),_:1})):h("",!0)])),_:1})}}}),[["__scopeId","data-v-ca1264e5"]]);export{N as default}; +import{C as e,D as a,d as l,a as s,r as t,c,o as n,b as u,e as i,f as o,w as r,i as d,n as f,j as v,t as p,l as m,m as b,F as _,k as g,g as h,s as k,q as y,x as C,z as x,y as j,A as w,S as T}from"./index-8wOL_3gR.js";import{_ as A}from"./config-doctor.TgARj_nM.js";import{c as F}from"./navigation.Blicf8xr.js";import{a as M,A as P,b as S,c as $}from"./auth.B66V4Y6g.js";import{_ as z}from"./_plugin-vue_export-helper.BCo6x5W8.js";const E={departments:[{value:"im",label:"内科",desc:"心内、呼吸、消化、肾内等临床场景"},{value:"sur",label:"外科",desc:"普外、骨科、神外、胸外等临床场景"},{value:"ped",label:"儿科",desc:"儿童常见病、急重症与沟通训练"},{value:"obg",label:"妇产科",desc:"围产、妇科、产科急症训练"},{value:"er",label:"急诊科",desc:"分诊、抢救、危急值处置训练"},{value:"icu",label:"重症医学科",desc:"危重症评估与多学科决策训练"}],titles:[{value:"resident",label:"住院医师",desc:"强化基础诊疗路径与病历思维"},{value:"attending",label:"主治医师",desc:"提升独立诊疗和带教表达"},{value:"associate_chief",label:"副主任医师",desc:"复杂病例决策与团队协作"},{value:"chief",label:"主任医师",desc:"疑难病例、质控和教学管理"}],experiences:[{value:"1-3",label:"1-3年",desc:"基础病例训练优先"},{value:"3-5",label:"3-5年",desc:"进阶诊疗路径优先"},{value:"5-10",label:"5-10年",desc:"复杂病例推演优先"},{value:"10+",label:"10年以上",desc:"疑难病例与带教模拟优先"}]};function I(l){return new Promise(((s,t)=>{const c=function(){try{return a("clinical-thinking-access-token")||""}catch{return""}}(),n={"Content-Type":"application/json"};c&&(n.Authorization=`Bearer ${c}`),e({url:`${M}/user/profile/config/`,method:"POST",timeout:1e4,header:n,data:l,success:e=>{if(e.statusCode>=200&&e.statusCode<300)return void s(e.data);const a=e.data,l="string"==typeof(null==a?void 0:a.code)?a.code:void 0;t(new P(function(e,a){if(e&&"object"==typeof e){const a=e,l=a.message||a.detail||a.error;if("string"==typeof l&&l.trim())return l}return a}(e.data,`保存失败(${e.statusCode})`),l,e.statusCode))},fail:e=>{t(new P(e.errMsg||"无法连接服务"))}})}))}const N=z(l({__name:"config",emits:["open-profile"],setup(e,{emit:a}){const l=s({department:"im",title:"resident",experience:"1-3"}),M=t(E),P=t("欢迎回来!请配置执业信息,开始精准带教模拟。"),z=t(""),N=t(!1),O=t(""),q=t(!1),B=t(!1),D=t("idle"),G=t(""),H=t(!1),J=t("");F(a);let K=null,L=null;const Q=c((()=>ee("departments",l.department))),R=c((()=>ee("titles",l.title))),U=c((()=>ee("experiences",l.experience))),V=c((()=>{const e={department:M.value.departments,title:M.value.titles,experience:M.value.experiences},a=O.value;return a?e[a]:[]})),W=c((()=>{const e=O.value;return e?{department:"选择执业科室",title:"选择专业职称",experience:"选择执业年限"}[e]:"请选择"})),X=c((()=>B.value?"正在保存...":"saved"===D.value?"已就绪":"确认并继续"));function Y(){Promise.resolve({options:E,defaults:{department:"im",title:"resident",experience:"1-3"},mentor:{name:"王主任",message:"欢迎回来!请配置执业信息,开始精准带教模拟。"}}).then((({options:e,defaults:a,mentor:s})=>{M.value=e,Object.assign(l,a),P.value=s.message,function(){K&&clearTimeout(K);z.value="",N.value=!0;let e=0;const a=()=>{ee.value===a))||l[0]||{label:"请选择",value:""}}function ae(e){O.value=e,q.value=!0}function le(){q.value=!1,O.value=""}function se(){const e=Number(l.department);if(!Number.isInteger(e)||e<=0)return void ce("请先选择有效执业科室");const a={department:e,title_name:R.value.label,practice_years:U.value.label};B.value=!0,D.value="idle",I(a).then((e=>{k("clinical-thinking-config",e),B.value=!1,D.value="saved",ce("配置已保存"),setTimeout((()=>{y({url:"/pages/home/home"})}),500)})).catch((e=>{B.value=!1,ce(e instanceof Error?e.message:"保存失败,请稍后重试")}))}function te(){"/static/config-hospital.png"!==J.value&&(J.value="/static/config-hospital.png")}function ce(e){L&&clearTimeout(L),G.value=e,H.value=!0,L=setTimeout((()=>{H.value=!1}),2200)}return n((()=>{Y(),async function(){try{const e=await S();if(0===e.length)return;const a=e.map(Z);M.value={...M.value,departments:a},l.department=a[0].value}catch{}}(),async function(){try{const e=await $();J.value=e.banner_url||"/static/config-hospital.png"}catch{J.value="/static/config-hospital.png"}}()})),u((()=>{K&&clearTimeout(K),L&&clearTimeout(L)})),(e,a)=>{const s=C,t=x,c=j,n=w,u=T;return i(),o(t,{class:"config-page"},{default:r((()=>[d(t,{class:"phone-frame"},{default:r((()=>[d(t,{class:"hero-section"},{default:r((()=>[d(s,{class:"hospital-image",src:J.value,mode:"aspectFit",onError:te},null,8,["src"]),d(t,{class:"hero-overlay"})])),_:1}),d(t,{class:"profile-section"},{default:r((()=>[d(t,{class:"section-glow"}),d(t,{class:"profile-content"},{default:r((()=>[d(t,{class:"intro-row"},{default:r((()=>[d(t,{class:"doctor-card"},{default:r((()=>[d(s,{class:"doctor-image",src:A,mode:"aspectFit"})])),_:1}),d(t,{class:"bubble"},{default:r((()=>[d(c,{class:f(["bubble-text",{typing:N.value}])},{default:r((()=>[v(p(z.value),1)])),_:1},8,["class"]),d(t,{class:"bubble-arrow"})])),_:1})])),_:1}),d(t,{class:"form-area"},{default:r((()=>[d(t,{class:"field-block"},{default:r((()=>[d(c,{class:"field-label"},{default:r((()=>[v("执业科室")])),_:1}),d(t,{class:"glass-select",onClick:a[0]||(a[0]=e=>ae("department"))},{default:r((()=>[d(c,{class:"select-value"},{default:r((()=>[v(p(Q.value.label),1)])),_:1}),d(t,{class:"chevron"})])),_:1})])),_:1}),d(t,{class:"field-grid"},{default:r((()=>[d(t,{class:"field-block"},{default:r((()=>[d(c,{class:"field-label"},{default:r((()=>[v("专业职称")])),_:1}),d(t,{class:"glass-select",onClick:a[1]||(a[1]=e=>ae("title"))},{default:r((()=>[d(c,{class:"select-value"},{default:r((()=>[v(p(R.value.label),1)])),_:1}),d(t,{class:"chevron"})])),_:1})])),_:1}),d(t,{class:"field-block"},{default:r((()=>[d(c,{class:"field-label"},{default:r((()=>[v("执业年限")])),_:1}),d(t,{class:"glass-select",onClick:a[2]||(a[2]=e=>ae("experience"))},{default:r((()=>[d(c,{class:"select-value"},{default:r((()=>[v(p(U.value.label),1)])),_:1}),d(t,{class:"chevron"})])),_:1})])),_:1})])),_:1})])),_:1})])),_:1})])),_:1}),d(t,{class:"action-section"},{default:r((()=>[d(n,{class:f(["submit-button",{saved:"saved"===D.value}]),disabled:B.value,onClick:se},{default:r((()=>[B.value?(i(),o(t,{key:0,class:"spinner"})):"saved"===D.value?(i(),o(t,{key:1,class:"check-icon"})):(i(),o(t,{key:2,class:"check-icon"})),d(c,null,{default:r((()=>[v(p(X.value),1)])),_:1})])),_:1},8,["class","disabled"]),d(t,{class:"secure-tip"},{default:r((()=>[d(t,{class:"lock-icon"}),d(c,null,{default:r((()=>[v("数据已进行安全加密处理")])),_:1})])),_:1})])),_:1}),d(t,{class:"home-indicator"})])),_:1}),d(t,{class:f(["toast",{visible:H.value}])},{default:r((()=>[v(p(G.value),1)])),_:1},8,["class"]),q.value?(i(),o(t,{key:0,class:"picker-mask",onClick:le},{default:r((()=>[d(t,{class:"picker-panel",onClick:a[3]||(a[3]=g((()=>{}),["stop"]))},{default:r((()=>[d(t,{class:"picker-header"},{default:r((()=>[d(c,{class:"picker-title"},{default:r((()=>[v(p(W.value),1)])),_:1}),d(c,{class:"picker-close",onClick:le},{default:r((()=>[v("关闭")])),_:1})])),_:1}),d(u,{class:"option-list","scroll-y":""},{default:r((()=>[(i(!0),m(_,null,b(V.value,(e=>(i(),o(t,{key:e.value,class:f(["option-item",{active:e.value===l[O.value]}]),onClick:a=>function(e){const a=O.value;a&&(l[a]=e.value,le())}(e)},{default:r((()=>[d(t,{class:"option-copy"},{default:r((()=>[d(c,{class:"option-label"},{default:r((()=>[v(p(e.label),1)])),_:2},1024),e.desc?(i(),o(c,{key:0,class:"option-desc"},{default:r((()=>[v(p(e.desc),1)])),_:2},1024)):h("",!0)])),_:2},1024),e.value===l[O.value]?(i(),o(t,{key:0,class:"selected-mark"})):h("",!0)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1})])),_:1})):h("",!0)])),_:1})}}}),[["__scopeId","data-v-ca1264e5"]]);export{N as default}; diff --git a/dist/assets/pages-diagnosis-diagnosis.DRtwnust.js b/dist/assets/pages-diagnosis-diagnosis.Wb08TNeY.js similarity index 94% rename from dist/assets/pages-diagnosis-diagnosis.DRtwnust.js rename to dist/assets/pages-diagnosis-diagnosis.Wb08TNeY.js index 6584847..126b12b 100644 --- a/dist/assets/pages-diagnosis-diagnosis.DRtwnust.js +++ b/dist/assets/pages-diagnosis-diagnosis.Wb08TNeY.js @@ -1 +1 @@ -import{d as e,a,r as l,c as s,o as i,b as t,e as n,f as o,w as u,i as c,E as d,j as r,t as f,l as p,m,F as v,n as _,g,s as b,p as h,z as y,A as k,y as D,x as w,I as j,N as V}from"./index-DfCP9RI3.js";import{_ as x}from"./config-doctor.TgARj_nM.js";import{r as C}from"./cases.Q7p7j9rz.js";import{F as E,a as I,r as T,f as U}from"./session.D2K7L0GR.js";import{c as A,a as F,b as N}from"./navigation.Bg2Ef9wA.js";import{_ as O}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.BCdV446X.js";const $=O(e({__name:"diagnosis",props:{caseItem:{}},emits:["open-settings","open-profile","go-home"],setup(e,{emit:O}){const $=e,P=O,S=A(P),z=F(P),B=N(P),J=a({primaryDiagnosis:"",differentialDiagnosis:["",""],evidence:""}),K=l("王主任建议:请结合患者主诉和问诊信息,完成主要诊断、鉴别诊断和诊断依据。"),q=l(!1),G=l("idle"),H=l(""),L=l(!1),M=l(null);let Q=null;const R=s((()=>$.caseItem||M.value)),W=s((()=>{var e;return(null==(e=R.value)?void 0:e.patientName)||"陈先生"})),X=s((()=>{var e;return(null==(e=R.value)?void 0:e.gender)||"男"})),Y=s((()=>{var e;return(null==(e=R.value)?void 0:e.age)||60})),Z=s((()=>{var e;return(null==(e=R.value)?void 0:e.department)||"心血管内科"})),ee=s((()=>{var e;const a=(null==(e=R.value)?void 0:e.title)||"持续胸痛3小时";return a.includes("胸痛")?"胸痛":a.slice(0,6)})),ae=s((()=>q.value?"提交中...":"submitted"===G.value?"已提交":"下一步"));function le(){(function(e){const a=(null==e?void 0:e.title.includes("胸痛"))||"心血管内科"===(null==e?void 0:e.department);return Promise.resolve({mentorAdvice:a?"王主任建议:请结合患者既往高血压史及突发性胸痛的性质,进行准确诊断。注意鉴别心梗与主动脉夹层。":"王主任建议:请基于主诉、阳性症状和危险信号提出主要诊断,并列出需要排除的鉴别诊断。",defaultDraft:{primaryDiagnosis:"",differentialDiagnosis:["",""],evidence:""}})})(R.value).then((e=>{K.value=e.mentorAdvice,J.primaryDiagnosis="",J.differentialDiagnosis=["",""],J.evidence=""}))}async function se(){if(!q.value)if(J.primaryDiagnosis.trim())if(J.evidence.trim()){q.value=!0;try{const e=U(),a=await async function(e,a){const l={primary_diagnosis:a.primaryDiagnosis.trim(),differential_diagnoses:a.differentialDiagnosis.map((e=>e.trim())).filter(Boolean),diagnosis_basis:a.evidence.trim()},s=await fetch(`${E}/sessions/${e}/diagnosis`,{method:"POST",headers:I(),body:JSON.stringify(l)});if(!s.ok)throw new Error(await T(s));const i=await s.json();if("OK"!==i.code)throw new Error(i.message||"诊断提交失败");return i.data||l}(e,{primaryDiagnosis:J.primaryDiagnosis,differentialDiagnosis:J.differentialDiagnosis.filter((e=>e.trim())),evidence:J.evidence});b("clinical-thinking-diagnosis",a),G.value="submitted",h({url:"/pages/treatment/treatment",fail(){G.value="idle",ie("进入治疗计划失败,请重试")}})}catch(e){ie(e instanceof Error?e.message:"诊断提交失败")}finally{q.value=!1}}else ie("请输入诊断依据");else ie("请输入主要诊断")}function ie(e){Q&&clearTimeout(Q),H.value=e,L.value=!0,Q=setTimeout((()=>{L.value=!1}),2200)}return i((()=>{M.value=C(),le()})),t((()=>{Q&&clearTimeout(Q)})),(e,a)=>{const l=y,s=k,i=D,t=w,b=j,h=V;return n(),o(l,{class:"diagnosis-page"},{default:u((()=>[c(l,{class:"diagnosis-shell"},{default:u((()=>[c(l,{class:"top-nav"},{default:u((()=>[c(s,{class:"icon-button","aria-label":"设置",onClick:d(z)},{default:u((()=>[c(l,{class:"settings-icon"})])),_:1},8,["onClick"]),c(s,{class:"icon-button home-button","aria-label":"首页",onClick:d(B)},{default:u((()=>[c(l,{class:"home-icon"})])),_:1},8,["onClick"]),c(l,{class:"nav-spacer"}),c(s,{class:"icon-button","aria-label":"个人中心",onClick:d(S)},{default:u((()=>[c(l,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),c(l,{class:"case-header"},{default:u((()=>[c(i,{class:"case-heading"},{default:u((()=>[r("患者:"+f(W.value)+" ("+f(ee.value)+")",1)])),_:1}),c(l,{class:"patient-meta"},{default:u((()=>[c(i,null,{default:u((()=>[r("姓名:"+f(W.value),1)])),_:1}),c(i,null,{default:u((()=>[r("性别:"+f(X.value),1)])),_:1}),c(i,null,{default:u((()=>[r("年龄:"+f(Y.value)+"岁",1)])),_:1}),c(i,null,{default:u((()=>[r("科室:"+f(Z.value),1)])),_:1})])),_:1})])),_:1}),c(l,{class:"diagnosis-content"},{default:u((()=>[c(l,{class:"stepper"},{default:u((()=>[c(l,{class:"step-line"},{default:u((()=>[c(l,{class:"step-line-active"})])),_:1}),c(l,{class:"step done"},{default:u((()=>[c(l,{class:"step-dot"},{default:u((()=>[c(l,{class:"check-icon"})])),_:1}),c(i,null,{default:u((()=>[r("问诊")])),_:1})])),_:1}),c(l,{class:"step active"},{default:u((()=>[c(l,{class:"step-dot"},{default:u((()=>[c(l,{class:"stethoscope-icon"})])),_:1}),c(i,null,{default:u((()=>[r("临床诊断")])),_:1})])),_:1}),c(l,{class:"step"},{default:u((()=>[c(l,{class:"step-dot"},{default:u((()=>[c(l,{class:"pill-icon"})])),_:1}),c(i,null,{default:u((()=>[r("治疗计划")])),_:1})])),_:1})])),_:1}),c(l,{class:"mentor-card"},{default:u((()=>[c(l,{class:"mentor-avatar"},{default:u((()=>[c(t,{src:x,mode:"aspectFill"})])),_:1}),c(l,{class:"mentor-bubble"},{default:u((()=>[c(i,null,{default:u((()=>[r(f(K.value),1)])),_:1})])),_:1})])),_:1}),c(l,{class:"form-area"},{default:u((()=>[c(l,{class:"field-block"},{default:u((()=>[c(l,{class:"field-label primary"},{default:u((()=>[c(l,{class:"priority-icon"}),c(i,null,{default:u((()=>[r("主要诊断")])),_:1})])),_:1}),c(l,{class:"input-wrap"},{default:u((()=>[c(b,{class:"diagnosis-input",modelValue:J.primaryDiagnosis,"onUpdate:modelValue":a[0]||(a[0]=e=>J.primaryDiagnosis=e),type:"text",placeholder:"请输入初步诊断...","placeholder-class":"input-placeholder"},null,8,["modelValue"])])),_:1})])),_:1}),c(l,{class:"field-block"},{default:u((()=>[c(l,{class:"field-label"},{default:u((()=>[c(l,{class:"checklist-icon"}),c(i,null,{default:u((()=>[r("鉴别诊断")])),_:1})])),_:1}),c(l,{class:"diff-list"},{default:u((()=>[(n(!0),p(v,null,m(J.differentialDiagnosis,((e,a)=>(n(),o(l,{key:a,class:"diff-row"},{default:u((()=>[c(i,{class:"diff-index"},{default:u((()=>[r(f(a+1),1)])),_:2},1024),c(b,{class:"diff-input",modelValue:J.differentialDiagnosis[a],"onUpdate:modelValue":e=>J.differentialDiagnosis[a]=e,type:"text",placeholder:`备选诊断 ${a+1}`,"placeholder-class":"input-placeholder"},null,8,["modelValue","onUpdate:modelValue","placeholder"])])),_:2},1024)))),128))])),_:1})])),_:1}),c(l,{class:"field-block"},{default:u((()=>[c(l,{class:"field-label"},{default:u((()=>[c(l,{class:"description-icon"}),c(i,null,{default:u((()=>[r("诊断依据")])),_:1})])),_:1}),c(h,{class:"evidence-input",modelValue:J.evidence,"onUpdate:modelValue":a[1]||(a[1]=e=>J.evidence=e),placeholder:"请简述诊断依据,如:患者高龄、剧烈撕裂样胸痛、血压双侧不对称等...","placeholder-class":"input-placeholder"},null,8,["modelValue"])])),_:1})])),_:1}),c(s,{class:_(["next-button",{submitted:"submitted"===G.value}]),disabled:q.value,onClick:se},{default:u((()=>[q.value?(n(),o(l,{key:0,class:"spinner"})):g("",!0),c(i,null,{default:u((()=>[r(f(ae.value),1)])),_:1}),q.value||"submitted"===G.value?g("",!0):(n(),o(l,{key:1,class:"arrow-icon"})),"submitted"===G.value?(n(),o(l,{key:2,class:"check-small-icon"})):g("",!0)])),_:1},8,["class","disabled"])])),_:1})])),_:1}),c(l,{class:_(["toast",{visible:L.value}])},{default:u((()=>[r(f(H.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-0102c95b"]]);export{$ as default}; +import{d as e,a,r as l,c as s,o as i,b as t,e as n,f as o,w as u,i as c,E as d,j as r,t as f,l as p,m,F as v,n as _,g,s as b,p as h,z as y,A as k,y as D,x as w,I as j,N as V}from"./index-8wOL_3gR.js";import{_ as x}from"./config-doctor.TgARj_nM.js";import{r as C}from"./cases.DMDn0OYL.js";import{F as E,a as I,r as T,f as U}from"./session.LaNXUMh-.js";import{c as A,a as F,b as N}from"./navigation.Blicf8xr.js";import{_ as O}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.B66V4Y6g.js";const $=O(e({__name:"diagnosis",props:{caseItem:{}},emits:["open-settings","open-profile","go-home"],setup(e,{emit:O}){const $=e,P=O,S=A(P),z=F(P),B=N(P),J=a({primaryDiagnosis:"",differentialDiagnosis:["",""],evidence:""}),K=l("王主任建议:请结合患者主诉和问诊信息,完成主要诊断、鉴别诊断和诊断依据。"),q=l(!1),G=l("idle"),H=l(""),L=l(!1),M=l(null);let Q=null;const R=s((()=>$.caseItem||M.value)),W=s((()=>{var e;return(null==(e=R.value)?void 0:e.patientName)||"陈先生"})),X=s((()=>{var e;return(null==(e=R.value)?void 0:e.gender)||"男"})),Y=s((()=>{var e;return(null==(e=R.value)?void 0:e.age)||60})),Z=s((()=>{var e;return(null==(e=R.value)?void 0:e.department)||"心血管内科"})),ee=s((()=>{var e;const a=(null==(e=R.value)?void 0:e.title)||"持续胸痛3小时";return a.includes("胸痛")?"胸痛":a.slice(0,6)})),ae=s((()=>q.value?"提交中...":"submitted"===G.value?"已提交":"下一步"));function le(){(function(e){const a=(null==e?void 0:e.title.includes("胸痛"))||"心血管内科"===(null==e?void 0:e.department);return Promise.resolve({mentorAdvice:a?"王主任建议:请结合患者既往高血压史及突发性胸痛的性质,进行准确诊断。注意鉴别心梗与主动脉夹层。":"王主任建议:请基于主诉、阳性症状和危险信号提出主要诊断,并列出需要排除的鉴别诊断。",defaultDraft:{primaryDiagnosis:"",differentialDiagnosis:["",""],evidence:""}})})(R.value).then((e=>{K.value=e.mentorAdvice,J.primaryDiagnosis="",J.differentialDiagnosis=["",""],J.evidence=""}))}async function se(){if(!q.value)if(J.primaryDiagnosis.trim())if(J.evidence.trim()){q.value=!0;try{const e=U(),a=await async function(e,a){const l={primary_diagnosis:a.primaryDiagnosis.trim(),differential_diagnoses:a.differentialDiagnosis.map((e=>e.trim())).filter(Boolean),diagnosis_basis:a.evidence.trim()},s=await fetch(`${E}/sessions/${e}/diagnosis`,{method:"POST",headers:I(),body:JSON.stringify(l)});if(!s.ok)throw new Error(await T(s));const i=await s.json();if("OK"!==i.code)throw new Error(i.message||"诊断提交失败");return i.data||l}(e,{primaryDiagnosis:J.primaryDiagnosis,differentialDiagnosis:J.differentialDiagnosis.filter((e=>e.trim())),evidence:J.evidence});b("clinical-thinking-diagnosis",a),G.value="submitted",h({url:"/pages/treatment/treatment",fail(){G.value="idle",ie("进入治疗计划失败,请重试")}})}catch(e){ie(e instanceof Error?e.message:"诊断提交失败")}finally{q.value=!1}}else ie("请输入诊断依据");else ie("请输入主要诊断")}function ie(e){Q&&clearTimeout(Q),H.value=e,L.value=!0,Q=setTimeout((()=>{L.value=!1}),2200)}return i((()=>{M.value=C(),le()})),t((()=>{Q&&clearTimeout(Q)})),(e,a)=>{const l=y,s=k,i=D,t=w,b=j,h=V;return n(),o(l,{class:"diagnosis-page"},{default:u((()=>[c(l,{class:"diagnosis-shell"},{default:u((()=>[c(l,{class:"top-nav"},{default:u((()=>[c(s,{class:"icon-button","aria-label":"设置",onClick:d(z)},{default:u((()=>[c(l,{class:"settings-icon"})])),_:1},8,["onClick"]),c(s,{class:"icon-button home-button","aria-label":"首页",onClick:d(B)},{default:u((()=>[c(l,{class:"home-icon"})])),_:1},8,["onClick"]),c(l,{class:"nav-spacer"}),c(s,{class:"icon-button","aria-label":"个人中心",onClick:d(S)},{default:u((()=>[c(l,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),c(l,{class:"case-header"},{default:u((()=>[c(i,{class:"case-heading"},{default:u((()=>[r("患者:"+f(W.value)+" ("+f(ee.value)+")",1)])),_:1}),c(l,{class:"patient-meta"},{default:u((()=>[c(i,null,{default:u((()=>[r("姓名:"+f(W.value),1)])),_:1}),c(i,null,{default:u((()=>[r("性别:"+f(X.value),1)])),_:1}),c(i,null,{default:u((()=>[r("年龄:"+f(Y.value)+"岁",1)])),_:1}),c(i,null,{default:u((()=>[r("科室:"+f(Z.value),1)])),_:1})])),_:1})])),_:1}),c(l,{class:"diagnosis-content"},{default:u((()=>[c(l,{class:"stepper"},{default:u((()=>[c(l,{class:"step-line"},{default:u((()=>[c(l,{class:"step-line-active"})])),_:1}),c(l,{class:"step done"},{default:u((()=>[c(l,{class:"step-dot"},{default:u((()=>[c(l,{class:"check-icon"})])),_:1}),c(i,null,{default:u((()=>[r("问诊")])),_:1})])),_:1}),c(l,{class:"step active"},{default:u((()=>[c(l,{class:"step-dot"},{default:u((()=>[c(l,{class:"stethoscope-icon"})])),_:1}),c(i,null,{default:u((()=>[r("临床诊断")])),_:1})])),_:1}),c(l,{class:"step"},{default:u((()=>[c(l,{class:"step-dot"},{default:u((()=>[c(l,{class:"pill-icon"})])),_:1}),c(i,null,{default:u((()=>[r("治疗计划")])),_:1})])),_:1})])),_:1}),c(l,{class:"mentor-card"},{default:u((()=>[c(l,{class:"mentor-avatar"},{default:u((()=>[c(t,{src:x,mode:"aspectFill"})])),_:1}),c(l,{class:"mentor-bubble"},{default:u((()=>[c(i,null,{default:u((()=>[r(f(K.value),1)])),_:1})])),_:1})])),_:1}),c(l,{class:"form-area"},{default:u((()=>[c(l,{class:"field-block"},{default:u((()=>[c(l,{class:"field-label primary"},{default:u((()=>[c(l,{class:"priority-icon"}),c(i,null,{default:u((()=>[r("主要诊断")])),_:1})])),_:1}),c(l,{class:"input-wrap"},{default:u((()=>[c(b,{class:"diagnosis-input",modelValue:J.primaryDiagnosis,"onUpdate:modelValue":a[0]||(a[0]=e=>J.primaryDiagnosis=e),type:"text",placeholder:"请输入初步诊断...","placeholder-class":"input-placeholder"},null,8,["modelValue"])])),_:1})])),_:1}),c(l,{class:"field-block"},{default:u((()=>[c(l,{class:"field-label"},{default:u((()=>[c(l,{class:"checklist-icon"}),c(i,null,{default:u((()=>[r("鉴别诊断")])),_:1})])),_:1}),c(l,{class:"diff-list"},{default:u((()=>[(n(!0),p(v,null,m(J.differentialDiagnosis,((e,a)=>(n(),o(l,{key:a,class:"diff-row"},{default:u((()=>[c(i,{class:"diff-index"},{default:u((()=>[r(f(a+1),1)])),_:2},1024),c(b,{class:"diff-input",modelValue:J.differentialDiagnosis[a],"onUpdate:modelValue":e=>J.differentialDiagnosis[a]=e,type:"text",placeholder:`备选诊断 ${a+1}`,"placeholder-class":"input-placeholder"},null,8,["modelValue","onUpdate:modelValue","placeholder"])])),_:2},1024)))),128))])),_:1})])),_:1}),c(l,{class:"field-block"},{default:u((()=>[c(l,{class:"field-label"},{default:u((()=>[c(l,{class:"description-icon"}),c(i,null,{default:u((()=>[r("诊断依据")])),_:1})])),_:1}),c(h,{class:"evidence-input",modelValue:J.evidence,"onUpdate:modelValue":a[1]||(a[1]=e=>J.evidence=e),placeholder:"请简述诊断依据,如:患者高龄、剧烈撕裂样胸痛、血压双侧不对称等...","placeholder-class":"input-placeholder"},null,8,["modelValue"])])),_:1})])),_:1}),c(s,{class:_(["next-button",{submitted:"submitted"===G.value}]),disabled:q.value,onClick:se},{default:u((()=>[q.value?(n(),o(l,{key:0,class:"spinner"})):g("",!0),c(i,null,{default:u((()=>[r(f(ae.value),1)])),_:1}),q.value||"submitted"===G.value?g("",!0):(n(),o(l,{key:1,class:"arrow-icon"})),"submitted"===G.value?(n(),o(l,{key:2,class:"check-small-icon"})):g("",!0)])),_:1},8,["class","disabled"])])),_:1})])),_:1}),c(l,{class:_(["toast",{visible:L.value}])},{default:u((()=>[r(f(H.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-0102c95b"]]);export{$ as default}; diff --git a/dist/assets/pages-home-home.Dlkj-jIS.js b/dist/assets/pages-home-home.BRlMILRW.js similarity index 96% rename from dist/assets/pages-home-home.Dlkj-jIS.js rename to dist/assets/pages-home-home.BRlMILRW.js index 63d6110..23e5fc9 100644 --- a/dist/assets/pages-home-home.Dlkj-jIS.js +++ b/dist/assets/pages-home-home.BRlMILRW.js @@ -1 +1 @@ -import{d as s,a,r as e,o as l,b as t,e as o,f as i,w as c,i as n,E as u,j as r,g as d,t as m,l as f,m as g,F as _,n as b,s as p,G as h,z as v,A as k,y,x as C}from"./index-DfCP9RI3.js";import{_ as j}from"./config-doctor.TgARj_nM.js";import{c as w,a as I}from"./navigation.Bg2Ef9wA.js";import{_ as x}from"./_plugin-vue_export-helper.BCo6x5W8.js";const T=x(s({__name:"home",emits:["open-settings","open-profile"],setup(s,{emit:x}){const T=x,A=w(T),M=I(T),D=a({greeting:"下午好,医生。",highlight:"让我们继续提升您的临床思维能力吧。",remainingModules:3,doctorName:"王主任"}),E=[{title:"精准补强·薄弱环节训练",icon:"trend-icon",source:"weak"},{title:"实战进阶·科室专项训练",icon:"notes-icon",source:"specialty"},{title:"新手入门·教学互动模式训练",icon:"school-icon",source:"teaching"},{title:"精益管理·老师针对性任务训练",icon:"admin-icon",source:"teacher-task"}],F=e(!1),N=e(""),O=e(!1);let P=null;function S(){F.value||(F.value=!0,Promise.resolve({sessionId:`mock-session-${Date.now()}`,startedAt:(new Date).toISOString()}).then((s=>{p("clinical-thinking-session",s),h({url:"/pages/matching/matching?source=recommended"})})).catch((s=>{!function(s){P&&clearTimeout(P);N.value=s,O.value=!0,P=setTimeout((()=>{O.value=!1}),2200)}(s instanceof Error?s.message:"进入训练失败")})).finally((()=>{setTimeout((()=>{F.value=!1}),300)})))}function $(){h({url:"/pages/learning-assistant/learning-assistant"})}return l((function(){Promise.resolve({greeting:"下午好,医生。",highlight:"让我们继续提升您的临床思维能力吧。",remainingModules:3,doctorName:"王主任"}).then((s=>{Object.assign(D,s)}))})),t((()=>{P&&clearTimeout(P)})),(s,a)=>{const e=v,l=k,t=y,p=C;return o(),i(e,{class:"home-page"},{default:c((()=>[n(e,{class:"home-shell"},{default:c((()=>[n(e,{class:"top-bar"},{default:c((()=>[n(l,{class:"icon-button","aria-label":"配置",onClick:u(M)},{default:c((()=>[n(e,{class:"settings-icon"})])),_:1},8,["onClick"]),n(e,{class:"top-spacer"}),n(l,{class:"icon-button","aria-label":"个人中心",onClick:u(A)},{default:c((()=>[n(e,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),n(e,{class:"home-main"},{default:c((()=>[n(e,{class:"speech-bubble"},{default:c((()=>[n(t,{class:"bubble-copy"},{default:c((()=>[r("下午好,医生。准备好开始今天的")])),_:1}),n(t,{class:"bubble-strong"},{default:c((()=>[r("带教模拟")])),_:1}),n(t,{class:"bubble-copy"},{default:c((()=>[r(",精进")])),_:1}),n(t,{class:"bubble-highlight"},{default:c((()=>[r("临床思维")])),_:1}),n(t,{class:"bubble-copy"},{default:c((()=>[r("了吗?")])),_:1})])),_:1}),n(e,{class:"doctor-stage"},{default:c((()=>[n(e,{class:"doctor-shadow"}),n(p,{class:"director-image",src:j,mode:"aspectFit"})])),_:1}),n(e,{class:"training-panel"},{default:c((()=>[n(e,{class:"primary-action"},{default:c((()=>[n(l,{class:"start-button",disabled:F.value,onClick:S},{default:c((()=>[F.value?(o(),i(e,{key:0,class:"spinner"})):d("",!0),n(t,null,{default:c((()=>[r(m(F.value?"正在进入...":"开始训练"),1)])),_:1})])),_:1},8,["disabled"]),n(t,{class:"remaining"},{default:c((()=>[r("今日剩余:"+m(D.remainingModules)+"个模块",1)])),_:1})])),_:1}),n(e,{class:"module-grid"},{default:c((()=>[(o(),f(_,null,g(E,(s=>n(l,{key:s.title,class:"module-card",onClick:a=>{return e=s.source,void h({url:`/pages/cases/cases?source=${encodeURIComponent(e)}`});var e}},{default:c((()=>[n(e,{class:b(["module-icon",s.icon])},null,8,["class"]),n(t,{class:"module-title"},{default:c((()=>[r(m(s.title),1)])),_:2},1024)])),_:2},1032,["onClick"]))),64))])),_:1}),n(e,{class:"assistant-actions"},{default:c((()=>[n(l,{class:"assistant-button",onClick:$},{default:c((()=>[n(e,{class:"assistant-icon chat-icon"}),n(t,null,{default:c((()=>[r("AI 学习助手(医院知识库)")])),_:1})])),_:1})])),_:1})])),_:1})])),_:1})])),_:1}),n(e,{class:b(["toast",{visible:O.value}])},{default:c((()=>[r(m(N.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-f45eae37"]]);export{T as default}; +import{d as s,a,r as e,o as l,b as t,e as o,f as i,w as c,i as n,E as u,j as r,g as d,t as m,l as f,m as g,F as _,n as b,s as p,G as h,z as v,A as k,y,x as C}from"./index-8wOL_3gR.js";import{_ as j}from"./config-doctor.TgARj_nM.js";import{c as w,a as I}from"./navigation.Blicf8xr.js";import{_ as x}from"./_plugin-vue_export-helper.BCo6x5W8.js";const T=x(s({__name:"home",emits:["open-settings","open-profile"],setup(s,{emit:x}){const T=x,A=w(T),M=I(T),D=a({greeting:"下午好,医生。",highlight:"让我们继续提升您的临床思维能力吧。",remainingModules:3,doctorName:"王主任"}),E=[{title:"精准补强·薄弱环节训练",icon:"trend-icon",source:"weak"},{title:"实战进阶·科室专项训练",icon:"notes-icon",source:"specialty"},{title:"新手入门·教学互动模式训练",icon:"school-icon",source:"teaching"},{title:"精益管理·老师针对性任务训练",icon:"admin-icon",source:"teacher-task"}],F=e(!1),N=e(""),O=e(!1);let P=null;function S(){F.value||(F.value=!0,Promise.resolve({sessionId:`mock-session-${Date.now()}`,startedAt:(new Date).toISOString()}).then((s=>{p("clinical-thinking-session",s),h({url:"/pages/matching/matching?source=recommended"})})).catch((s=>{!function(s){P&&clearTimeout(P);N.value=s,O.value=!0,P=setTimeout((()=>{O.value=!1}),2200)}(s instanceof Error?s.message:"进入训练失败")})).finally((()=>{setTimeout((()=>{F.value=!1}),300)})))}function $(){h({url:"/pages/learning-assistant/learning-assistant"})}return l((function(){Promise.resolve({greeting:"下午好,医生。",highlight:"让我们继续提升您的临床思维能力吧。",remainingModules:3,doctorName:"王主任"}).then((s=>{Object.assign(D,s)}))})),t((()=>{P&&clearTimeout(P)})),(s,a)=>{const e=v,l=k,t=y,p=C;return o(),i(e,{class:"home-page"},{default:c((()=>[n(e,{class:"home-shell"},{default:c((()=>[n(e,{class:"top-bar"},{default:c((()=>[n(l,{class:"icon-button","aria-label":"配置",onClick:u(M)},{default:c((()=>[n(e,{class:"settings-icon"})])),_:1},8,["onClick"]),n(e,{class:"top-spacer"}),n(l,{class:"icon-button","aria-label":"个人中心",onClick:u(A)},{default:c((()=>[n(e,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),n(e,{class:"home-main"},{default:c((()=>[n(e,{class:"speech-bubble"},{default:c((()=>[n(t,{class:"bubble-copy"},{default:c((()=>[r("下午好,医生。准备好开始今天的")])),_:1}),n(t,{class:"bubble-strong"},{default:c((()=>[r("带教模拟")])),_:1}),n(t,{class:"bubble-copy"},{default:c((()=>[r(",精进")])),_:1}),n(t,{class:"bubble-highlight"},{default:c((()=>[r("临床思维")])),_:1}),n(t,{class:"bubble-copy"},{default:c((()=>[r("了吗?")])),_:1})])),_:1}),n(e,{class:"doctor-stage"},{default:c((()=>[n(e,{class:"doctor-shadow"}),n(p,{class:"director-image",src:j,mode:"aspectFit"})])),_:1}),n(e,{class:"training-panel"},{default:c((()=>[n(e,{class:"primary-action"},{default:c((()=>[n(l,{class:"start-button",disabled:F.value,onClick:S},{default:c((()=>[F.value?(o(),i(e,{key:0,class:"spinner"})):d("",!0),n(t,null,{default:c((()=>[r(m(F.value?"正在进入...":"开始训练"),1)])),_:1})])),_:1},8,["disabled"]),n(t,{class:"remaining"},{default:c((()=>[r("今日剩余:"+m(D.remainingModules)+"个模块",1)])),_:1})])),_:1}),n(e,{class:"module-grid"},{default:c((()=>[(o(),f(_,null,g(E,(s=>n(l,{key:s.title,class:"module-card",onClick:a=>{return e=s.source,void h({url:`/pages/cases/cases?source=${encodeURIComponent(e)}`});var e}},{default:c((()=>[n(e,{class:b(["module-icon",s.icon])},null,8,["class"]),n(t,{class:"module-title"},{default:c((()=>[r(m(s.title),1)])),_:2},1024)])),_:2},1032,["onClick"]))),64))])),_:1}),n(e,{class:"assistant-actions"},{default:c((()=>[n(l,{class:"assistant-button",onClick:$},{default:c((()=>[n(e,{class:"assistant-icon chat-icon"}),n(t,null,{default:c((()=>[r("AI 学习助手(医院知识库)")])),_:1})])),_:1})])),_:1})])),_:1})])),_:1})])),_:1}),n(e,{class:b(["toast",{visible:O.value}])},{default:c((()=>[r(m(N.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-f45eae37"]]);export{T as default}; diff --git a/dist/assets/pages-index-index.CtHWSJz4.js b/dist/assets/pages-index-index.CbcBwpWF.js similarity index 97% rename from dist/assets/pages-index-index.CtHWSJz4.js rename to dist/assets/pages-index-index.CbcBwpWF.js index 4e889db..1776146 100644 --- a/dist/assets/pages-index-index.CtHWSJz4.js +++ b/dist/assets/pages-index-index.CbcBwpWF.js @@ -1 +1 @@ -import{d as e,r as a,a as l,c as s,o as t,b as n,e as c,f as i,w as o,g as u,h as d,v as A,i as r,j as m,n as v,t as p,k as f,l as g,m as h,F as I,s as y,p as b,q as k,u as C,x as R,y as Q,z as E,I as z,A as Z,S as j,B as V}from"./index-DfCP9RI3.js";import{f as B,s as G,A as w,l as N}from"./auth.BCdV446X.js";import O from"./pages-config-config.h5bc7jDo.js";import Y from"./pages-profile-profile.Q0dqF9dr.js";import{_ as D}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./config-doctor.TgARj_nM.js";import"./navigation.Bg2Ef9wA.js";import"./profile.CDLVfXPi.js";import"./session.D2K7L0GR.js";const J=D(e({__name:"index",setup(e){const D=a([]),J=l({phone:"",code:"",institutionId:""}),F=a(""),L=a(!1),S=a(!1),T=a(!1),U=a(!1),W=a(0),x=a(""),M=a(!1),H=a(!1),P=a(!1),X=a(!1),q=a(!1),K=a(!1);let _=null,$=null;const ee=s((()=>D.value.find((e=>e.id===J.institutionId)))),ae=s((()=>W.value>0)),le=s((()=>T.value?"发送中...":ae.value?`${W.value}s`:"获取验证码"));function se(e){const a=[e.province,e.city].filter(Boolean).join(" · ");return{id:String(e.id),code:e.code,name:e.name,city:a||"其他",typeName:{hospital:"医院",college:"医学院校",school:"学校",clinic:"诊所"}[e.type]||"机构"}}function te(){L.value=!L.value}async function ne(){if(!T.value&&!ae.value&&ie()){T.value=!0;try{let a;try{a=await G(J.phone)}catch(e){if(!(e instanceof w&&"AUTH_PHONE_NOT_FOUND"===e.code))throw e;a=await G(J.phone,"register")}de(a.message||"验证码已发送"),W.value=60,Ae(),_=setInterval((()=>{W.value-=1,W.value<=0&&Ae()}),1e3)}catch(e){de(e instanceof Error?e.message:"验证码发送失败")}finally{T.value=!1}}}function ce(){if(!U.value&&ie())if(J.code.trim())if(ee.value){if(!L.value)return de("请阅读并勾选用户协议"),S.value=!1,void C((()=>{S.value=!0,setTimeout((()=>{S.value=!1}),500)}));U.value=!0,N({phone:J.phone,code:J.code,institution_code:ee.value.code,institution_name:ee.value.name}).then((e=>{var a,l,s;const t=e.user||{},n={...t,id:t.id?String(t.id):"",phone:t.phone||J.phone,institutionId:(null==(a=ee.value)?void 0:a.code)||"",institutionCode:(null==(l=ee.value)?void 0:l.code)||"",institutionName:(null==(s=ee.value)?void 0:s.name)||""};var c;(y("clinical-thinking-user",n),y("clinical-thinking-tokens",e.tokens),y("clinical-thinking-access-token",e.tokens.access),y("clinical-thinking-refresh-token",e.tokens.refresh),de(e.message||"正在进入系统..."),null!=(c=t.department)&&("string"==typeof c?""!==c.trim():Array.isArray(c)?0!==c.length:"object"!=typeof c||0!==Object.keys(c).length))?k({url:"/pages/home/home"}):b({url:"/pages/config/config"})})).catch((e=>{de(e instanceof Error?e.message:"登录失败,请稍后重试")})).finally((()=>{U.value=!1}))}else de("请选择所属机构");else de("请输入短信验证码")}function ie(){return!!/^1[3-9]\d{9}$/.test(J.phone)||(de("请输入正确的手机号"),!1)}function oe(e){V({title:"service"===e?"用户服务协议":"隐私保护政策",content:"这里是前端模拟协议内容,后续可替换为正式协议页面或富文本接口。",showCancel:!1,confirmColor:"#00478d"})}function ue(){P.value=!1,H.value=!0}function de(e){$&&clearTimeout($),x.value=e,M.value=!0,$=setTimeout((()=>{M.value=!1}),2500)}function Ae(){_&&(clearInterval(_),_=null)}return t((()=>{!async function(){q.value=!0;try{const e=await B();D.value=e.map(se)}catch(e){de(e instanceof Error?e.message:"机构列表加载失败"),D.value=[]}finally{q.value=!1,K.value=!0}}()})),n((()=>{Ae(),$&&clearTimeout($)})),(e,a)=>{const l=R,s=Q,t=E,n=z,y=Z,b=j;return c(),i(t,{class:"page-root"},{default:o((()=>[P.value?(c(),i(Y,{key:0,onOpenSettings:ue,onGoHome:a[0]||(a[0]=e=>P.value=!1)})):u("",!0),H.value?d((c(),i(O,{key:1,onOpenProfile:a[1]||(a[1]=e=>P.value=!0)},null,512)),[[A,!P.value]]):u("",!0),H.value||P.value?u("",!0):(c(),i(t,{key:2,class:"auth-page"},{default:o((()=>[r(t,{class:"auth-container"},{default:o((()=>[r(t,{class:"header"},{default:o((()=>[r(l,{class:"logo",mode:"aspectFit",src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAAEi6oPRAAAKQ2lDQ1BJQ0MgcHJvZmlsZQAAeNqdU3dYk/cWPt/3ZQ9WQtjwsZdsgQAiI6wIyBBZohCSAGGEEBJAxYWIClYUFRGcSFXEgtUKSJ2I4qAouGdBiohai1VcOO4f3Ke1fXrv7e371/u855zn/M55zw+AERImkeaiagA5UoU8Otgfj09IxMm9gAIVSOAEIBDmy8JnBcUAAPADeXh+dLA//AGvbwACAHDVLiQSx+H/g7pQJlcAIJEA4CIS5wsBkFIAyC5UyBQAyBgAsFOzZAoAlAAAbHl8QiIAqg0A7PRJPgUA2KmT3BcA2KIcqQgAjQEAmShHJAJAuwBgVYFSLALAwgCgrEAiLgTArgGAWbYyRwKAvQUAdo5YkA9AYACAmUIszAAgOAIAQx4TzQMgTAOgMNK/4KlfcIW4SAEAwMuVzZdL0jMUuJXQGnfy8ODiIeLCbLFCYRcpEGYJ5CKcl5sjE0jnA0zODAAAGvnRwf44P5Dn5uTh5mbnbO/0xaL+a/BvIj4h8d/+vIwCBAAQTs/v2l/l5dYDcMcBsHW/a6lbANpWAGjf+V0z2wmgWgrQevmLeTj8QB6eoVDIPB0cCgsL7SViob0w44s+/zPhb+CLfvb8QB7+23rwAHGaQJmtwKOD/XFhbnauUo7nywRCMW735yP+x4V//Y4p0eI0sVwsFYrxWIm4UCJNx3m5UpFEIcmV4hLpfzLxH5b9CZN3DQCshk/ATrYHtctswH7uAQKLDljSdgBAfvMtjBoLkQAQZzQyefcAAJO/+Y9AKwEAzZek4wAAvOgYXKiUF0zGCAAARKCBKrBBBwzBFKzADpzBHbzAFwJhBkRADCTAPBBCBuSAHAqhGJZBGVTAOtgEtbADGqARmuEQtMExOA3n4BJcgetwFwZgGJ7CGLyGCQRByAgTYSE6iBFijtgizggXmY4EImFINJKApCDpiBRRIsXIcqQCqUJqkV1II/ItchQ5jVxA+pDbyCAyivyKvEcxlIGyUQPUAnVAuagfGorGoHPRdDQPXYCWomvRGrQePYC2oqfRS+h1dAB9io5jgNExDmaM2WFcjIdFYIlYGibHFmPlWDVWjzVjHVg3dhUbwJ5h7wgkAouAE+wIXoQQwmyCkJBHWExYQ6gl7CO0EroIVwmDhDHCJyKTqE+0JXoS+cR4YjqxkFhGrCbuIR4hniVeJw4TX5NIJA7JkuROCiElkDJJC0lrSNtILaRTpD7SEGmcTCbrkG3J3uQIsoCsIJeRt5APkE+S+8nD5LcUOsWI4kwJoiRSpJQSSjVlP+UEpZ8yQpmgqlHNqZ7UCKqIOp9aSW2gdlAvU4epEzR1miXNmxZDy6Qto9XQmmlnafdoL+l0ugndgx5Fl9CX0mvoB+nn6YP0dwwNhg2Dx0hiKBlrGXsZpxi3GS+ZTKYF05eZyFQw1zIbmWeYD5hvVVgq9ip8FZHKEpU6lVaVfpXnqlRVc1U/1XmqC1SrVQ+rXlZ9pkZVs1DjqQnUFqvVqR1Vu6k2rs5Sd1KPUM9RX6O+X/2C+mMNsoaFRqCGSKNUY7fGGY0hFsYyZfFYQtZyVgPrLGuYTWJbsvnsTHYF+xt2L3tMU0NzqmasZpFmneZxzQEOxrHg8DnZnErOIc4NznstAy0/LbHWaq1mrX6tN9p62r7aYu1y7Rbt69rvdXCdQJ0snfU6bTr3dQm6NrpRuoW623XP6j7TY+t56Qn1yvUO6d3RR/Vt9KP1F+rv1u/RHzcwNAg2kBlsMThj8MyQY+hrmGm40fCE4agRy2i6kcRoo9FJoye4Ju6HZ+M1eBc+ZqxvHGKsNN5l3Gs8YWJpMtukxKTF5L4pzZRrmma60bTTdMzMyCzcrNisyeyOOdWca55hvtm82/yNhaVFnMVKizaLx5balnzLBZZNlvesmFY+VnlW9VbXrEnWXOss623WV2xQG1ebDJs6m8u2qK2brcR2m23fFOIUjynSKfVTbtox7PzsCuya7AbtOfZh9iX2bfbPHcwcEh3WO3Q7fHJ0dcx2bHC866ThNMOpxKnD6VdnG2ehc53zNRemS5DLEpd2lxdTbaeKp26fesuV5RruutK10/Wjm7ub3K3ZbdTdzD3Ffav7TS6bG8ldwz3vQfTw91jicczjnaebp8LzkOcvXnZeWV77vR5Ps5wmntYwbcjbxFvgvct7YDo+PWX6zukDPsY+Ap96n4e+pr4i3z2+I37Wfpl+B/ye+zv6y/2P+L/hefIW8U4FYAHBAeUBvYEagbMDawMfBJkEpQc1BY0FuwYvDD4VQgwJDVkfcpNvwBfyG/ljM9xnLJrRFcoInRVaG/owzCZMHtYRjobPCN8Qfm+m+UzpzLYIiOBHbIi4H2kZmRf5fRQpKjKqLupRtFN0cXT3LNas5Fn7Z72O8Y+pjLk722q2cnZnrGpsUmxj7Ju4gLiquIF4h/hF8ZcSdBMkCe2J5MTYxD2J43MC52yaM5zkmlSWdGOu5dyiuRfm6c7Lnnc8WTVZkHw4hZgSl7I/5YMgQlAvGE/lp25NHRPyhJuFT0W+oo2iUbG3uEo8kuadVpX2ON07fUP6aIZPRnXGMwlPUit5kRmSuSPzTVZE1t6sz9lx2S05lJyUnKNSDWmWtCvXMLcot09mKyuTDeR55m3KG5OHyvfkI/lz89sVbIVM0aO0Uq5QDhZML6greFsYW3i4SL1IWtQz32b+6vkjC4IWfL2QsFC4sLPYuHhZ8eAiv0W7FiOLUxd3LjFdUrpkeGnw0n3LaMuylv1Q4lhSVfJqedzyjlKD0qWlQyuCVzSVqZTJy26u9Fq5YxVhlWRV72qX1VtWfyoXlV+scKyorviwRrjm4ldOX9V89Xlt2treSrfK7etI66Trbqz3Wb+vSr1qQdXQhvANrRvxjeUbX21K3nShemr1js20zcrNAzVhNe1bzLas2/KhNqP2ep1/XctW/a2rt77ZJtrWv913e/MOgx0VO97vlOy8tSt4V2u9RX31btLugt2PGmIbur/mft24R3dPxZ6Pe6V7B/ZF7+tqdG9s3K+/v7IJbVI2jR5IOnDlm4Bv2pvtmne1cFoqDsJB5cEn36Z8e+NQ6KHOw9zDzd+Zf7f1COtIeSvSOr91rC2jbaA9ob3v6IyjnR1eHUe+t/9+7zHjY3XHNY9XnqCdKD3x+eSCk+OnZKeenU4/PdSZ3Hn3TPyZa11RXb1nQ8+ePxd07ky3X/fJ897nj13wvHD0Ivdi2yW3S609rj1HfnD94UivW2/rZffL7Vc8rnT0Tes70e/Tf/pqwNVz1/jXLl2feb3vxuwbt24m3Ry4Jbr1+Hb27Rd3Cu5M3F16j3iv/L7a/eoH+g/qf7T+sWXAbeD4YMBgz8NZD+8OCYee/pT/04fh0kfMR9UjRiONj50fHxsNGr3yZM6T4aeypxPPyn5W/3nrc6vn3/3i+0vPWPzY8Av5i8+/rnmp83Lvq6mvOscjxx+8znk98ab8rc7bfe+477rfx70fmSj8QP5Q89H6Y8en0E/3Pud8/vwv94Tz+4A5JREAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADKmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzIgNzkuMTU5Mjg0LCAyMDE2LzA0LzE5LTEzOjEzOjQwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpGRkE0MjcxNTdEQzYxMUU4QkZBOERDOEVCQ0U0NTBGMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpGRkE0MjcxNDdEQzYxMUU4QkZBOERDOEVCQ0U0NTBGMSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxNS41IChNYWNpbnRvc2gpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QkE4RkFCN0M3REM1MTFFOEJGQThEQzhFQkNFNDUwRjEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QkE4RkFCN0Q3REM1MTFFOEJGQThEQzhFQkNFNDUwRjEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5BZZ+3AAAB1ElEQVR42mJkAALtmZb/GfAAJkIKwIoYiAA4FV1JO0Ylk0hWxILLHTgV6cyywqoIIIAYiQinb8S4iYs036E7esgEJq6ABAGAACImMBmo5m6yDcLlR5gcNnnaumhADWIhJoOTbRC+9ILPa9+o4TWAAAIlyDVAOphCc1SYqGAICNwZxumIidi8NILz2qhBdCyPaOcicgq1wRnYAAFErRKSgZo+GzSOoWpQD1sHsRCjCDnzkpp90DM+If2jUTbqoFEHjZZDpJYroyFESeNmNFHTykEqg8g9bwACCNRiVAYyLgEx1wA7Zu3V9OMhVBt1opajBlsaCh7NZaMOGnXQgFeupHZjKO1CjUbZqINGHTTqoFEHjTpo1EGjDhqMgw342kejUTaahggpoOdg1WiUjTpoODoIvL7tzSBykB5AgPbtGIdBGIYCaBR16swROEQvzT06cxjm1lRFDC0LcpXC+xJzpIdJhOW8e4z359MVWSde1C32xRYasC0mCmascDZzrQz+7NgABAgQINnRY/iUrb5D9v9l9toqCBAgQIAAAQIESAABAgQIEKCD5ZK9QPaMigoCdIJP7NdjOyoIECBAgGQBGjB8zVDjam153T0OqInJbBAWfdg8AExKZVcA71uIAAAAAElFTkSuQmCC"}),r(s,{class:"title"},{default:o((()=>[m("临床思维训练")])),_:1}),r(s,{class:"subtitle"},{default:o((()=>[m("提升临床决策能力的高效平台")])),_:1})])),_:1}),r(t,{class:"form"},{default:o((()=>[r(t,{class:"form-group"},{default:o((()=>[r(s,{class:"label"},{default:o((()=>[m("手机号码")])),_:1}),r(t,{class:v(["input-wrap",{focused:"phone"===F.value}])},{default:o((()=>[r(s,{class:"country-code"},{default:o((()=>[m("+86")])),_:1}),r(t,{class:"separator"}),r(n,{class:"input",type:"number",maxlength:"11",modelValue:J.phone,"onUpdate:modelValue":a[2]||(a[2]=e=>J.phone=e),placeholder:"请输入手机号","placeholder-class":"placeholder",onFocus:a[3]||(a[3]=e=>F.value="phone"),onBlur:a[4]||(a[4]=e=>F.value=""),onConfirm:ce},null,8,["modelValue"])])),_:1},8,["class"])])),_:1}),r(t,{class:"form-group"},{default:o((()=>[r(s,{class:"label"},{default:o((()=>[m("验证码")])),_:1}),r(t,{class:"code-row"},{default:o((()=>[r(t,{class:v(["input-wrap code-input-wrap",{focused:"code"===F.value}])},{default:o((()=>[r(t,{class:"verified-icon","aria-hidden":"true"}),r(n,{class:"input",type:"number",maxlength:"6",modelValue:J.code,"onUpdate:modelValue":a[5]||(a[5]=e=>J.code=e),placeholder:"短信验证码","placeholder-class":"placeholder",onFocus:a[6]||(a[6]=e=>F.value="code"),onBlur:a[7]||(a[7]=e=>F.value=""),onConfirm:ce},null,8,["modelValue"])])),_:1},8,["class"]),r(y,{class:v(["code-button",{disabled:ae.value||T.value}]),disabled:ae.value||T.value,onClick:ne},{default:o((()=>[m(p(le.value),1)])),_:1},8,["class","disabled"])])),_:1})])),_:1}),r(t,{class:"form-group"},{default:o((()=>[r(s,{class:"label"},{default:o((()=>[m("所属机构")])),_:1}),r(t,{class:"select-wrap",onClick:a[8]||(a[8]=e=>X.value=!0)},{default:o((()=>[r(s,{class:v(["select-text",{muted:!ee.value}])},{default:o((()=>[m(p(ee.value?ee.value.name:"选择医院或医学院校"),1)])),_:1},8,["class"]),r(t,{class:"select-arrow","aria-hidden":"true"})])),_:1})])),_:1}),r(s,{class:"hint"},{default:o((()=>[m("* 未注册手机号登录时将自动创建账号")])),_:1}),r(t,{class:"login-area"},{default:o((()=>[r(y,{class:v(["login-button",{loading:U.value}]),disabled:U.value,onClick:ce},{default:o((()=>[U.value?(c(),i(t,{key:0,class:"loading-spinner"})):(c(),i(s,{key:1},{default:o((()=>[m("登录 / 注册")])),_:1}))])),_:1},8,["class","disabled"])])),_:1})])),_:1}),r(t,{class:"footer"},{default:o((()=>[r(t,{class:v(["agreement",{shake:S.value}]),onClick:te},{default:o((()=>[r(t,{class:v(["checkbox",{checked:L.value}])},null,8,["class"]),r(t,{class:"agreement-copy"},{default:o((()=>[r(s,{class:"agreement-text"},{default:o((()=>[m("我已阅读并同意 ")])),_:1}),r(s,{class:"agreement-link",onClick:a[9]||(a[9]=f((e=>oe("service")),["stop"]))},{default:o((()=>[m("《用户服务协议》")])),_:1}),r(s,{class:"agreement-text"},{default:o((()=>[m(" 与 ")])),_:1}),r(s,{class:"agreement-link",onClick:a[10]||(a[10]=f((e=>oe("privacy")),["stop"]))},{default:o((()=>[m("《隐私保护政策》")])),_:1})])),_:1})])),_:1},8,["class"])])),_:1})])),_:1}),r(t,{class:v(["toast",{visible:M.value}])},{default:o((()=>[m(p(x.value),1)])),_:1},8,["class"]),X.value?(c(),i(t,{key:0,class:"picker-mask",onClick:a[13]||(a[13]=e=>X.value=!1)},{default:o((()=>[r(t,{class:"picker-panel",onClick:a[12]||(a[12]=f((()=>{}),["stop"]))},{default:o((()=>[r(t,{class:"picker-header"},{default:o((()=>[r(s,{class:"picker-title"},{default:o((()=>[m("选择所属机构")])),_:1}),r(s,{class:"picker-close",onClick:a[11]||(a[11]=e=>X.value=!1)},{default:o((()=>[m("关闭")])),_:1})])),_:1}),r(b,{class:"institution-list","scroll-y":""},{default:o((()=>[q.value?(c(),i(t,{key:0,class:"institution-empty"},{default:o((()=>[m("机构列表加载中...")])),_:1})):0===D.value.length?(c(),i(t,{key:1,class:"institution-empty"},{default:o((()=>[m("暂无可选机构")])),_:1})):(c(!0),g(I,{key:2},h(D.value,(e=>(c(),i(t,{key:e.id,class:v(["institution-item",{active:J.institutionId===e.id}]),onClick:a=>function(e){J.institutionId=e.id,X.value=!1}(e)},{default:o((()=>[r(t,{class:"institution-copy"},{default:o((()=>[r(s,{class:"institution-name"},{default:o((()=>[m(p(e.name),1)])),_:2},1024),r(s,{class:"institution-meta"},{default:o((()=>[m(p(e.city)+" · "+p(e.typeName),1)])),_:2},1024)])),_:2},1024),J.institutionId===e.id?(c(),i(t,{key:0,class:"selected-mark"})):u("",!0)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1})])),_:1})):u("",!0)])),_:1}))])),_:1})}}}),[["__scopeId","data-v-0db0c021"]]);export{J as default}; +import{d as e,r as a,a as l,c as s,o as t,b as n,e as c,f as i,w as o,g as u,h as d,v as A,i as r,j as m,n as v,t as p,k as f,l as g,m as h,F as I,s as y,p as b,q as k,u as C,x as R,y as Q,z as E,I as z,A as Z,S as j,B as V}from"./index-8wOL_3gR.js";import{f as B,s as G,A as w,l as N}from"./auth.B66V4Y6g.js";import O from"./pages-config-config.2lX4qMcJ.js";import Y from"./pages-profile-profile.D4u8tO5s.js";import{_ as D}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./config-doctor.TgARj_nM.js";import"./navigation.Blicf8xr.js";import"./profile.COAzSw-i.js";import"./session.LaNXUMh-.js";const J=D(e({__name:"index",setup(e){const D=a([]),J=l({phone:"",code:"",institutionId:""}),F=a(""),L=a(!1),S=a(!1),T=a(!1),U=a(!1),W=a(0),x=a(""),M=a(!1),H=a(!1),P=a(!1),X=a(!1),q=a(!1),K=a(!1);let _=null,$=null;const ee=s((()=>D.value.find((e=>e.id===J.institutionId)))),ae=s((()=>W.value>0)),le=s((()=>T.value?"发送中...":ae.value?`${W.value}s`:"获取验证码"));function se(e){const a=[e.province,e.city].filter(Boolean).join(" · ");return{id:String(e.id),code:e.code,name:e.name,city:a||"其他",typeName:{hospital:"医院",college:"医学院校",school:"学校",clinic:"诊所"}[e.type]||"机构"}}function te(){L.value=!L.value}async function ne(){if(!T.value&&!ae.value&&ie()){T.value=!0;try{let a;try{a=await G(J.phone)}catch(e){if(!(e instanceof w&&"AUTH_PHONE_NOT_FOUND"===e.code))throw e;a=await G(J.phone,"register")}de(a.message||"验证码已发送"),W.value=60,Ae(),_=setInterval((()=>{W.value-=1,W.value<=0&&Ae()}),1e3)}catch(e){de(e instanceof Error?e.message:"验证码发送失败")}finally{T.value=!1}}}function ce(){if(!U.value&&ie())if(J.code.trim())if(ee.value){if(!L.value)return de("请阅读并勾选用户协议"),S.value=!1,void C((()=>{S.value=!0,setTimeout((()=>{S.value=!1}),500)}));U.value=!0,N({phone:J.phone,code:J.code,institution_code:ee.value.code,institution_name:ee.value.name}).then((e=>{var a,l,s;const t=e.user||{},n={...t,id:t.id?String(t.id):"",phone:t.phone||J.phone,institutionId:(null==(a=ee.value)?void 0:a.code)||"",institutionCode:(null==(l=ee.value)?void 0:l.code)||"",institutionName:(null==(s=ee.value)?void 0:s.name)||""};var c;(y("clinical-thinking-user",n),y("clinical-thinking-tokens",e.tokens),y("clinical-thinking-access-token",e.tokens.access),y("clinical-thinking-refresh-token",e.tokens.refresh),de(e.message||"正在进入系统..."),null!=(c=t.department)&&("string"==typeof c?""!==c.trim():Array.isArray(c)?0!==c.length:"object"!=typeof c||0!==Object.keys(c).length))?k({url:"/pages/home/home"}):b({url:"/pages/config/config"})})).catch((e=>{de(e instanceof Error?e.message:"登录失败,请稍后重试")})).finally((()=>{U.value=!1}))}else de("请选择所属机构");else de("请输入短信验证码")}function ie(){return!!/^1[3-9]\d{9}$/.test(J.phone)||(de("请输入正确的手机号"),!1)}function oe(e){V({title:"service"===e?"用户服务协议":"隐私保护政策",content:"这里是前端模拟协议内容,后续可替换为正式协议页面或富文本接口。",showCancel:!1,confirmColor:"#00478d"})}function ue(){P.value=!1,H.value=!0}function de(e){$&&clearTimeout($),x.value=e,M.value=!0,$=setTimeout((()=>{M.value=!1}),2500)}function Ae(){_&&(clearInterval(_),_=null)}return t((()=>{!async function(){q.value=!0;try{const e=await B();D.value=e.map(se)}catch(e){de(e instanceof Error?e.message:"机构列表加载失败"),D.value=[]}finally{q.value=!1,K.value=!0}}()})),n((()=>{Ae(),$&&clearTimeout($)})),(e,a)=>{const l=R,s=Q,t=E,n=z,y=Z,b=j;return c(),i(t,{class:"page-root"},{default:o((()=>[P.value?(c(),i(Y,{key:0,onOpenSettings:ue,onGoHome:a[0]||(a[0]=e=>P.value=!1)})):u("",!0),H.value?d((c(),i(O,{key:1,onOpenProfile:a[1]||(a[1]=e=>P.value=!0)},null,512)),[[A,!P.value]]):u("",!0),H.value||P.value?u("",!0):(c(),i(t,{key:2,class:"auth-page"},{default:o((()=>[r(t,{class:"auth-container"},{default:o((()=>[r(t,{class:"header"},{default:o((()=>[r(l,{class:"logo",mode:"aspectFit",src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAAEi6oPRAAAKQ2lDQ1BJQ0MgcHJvZmlsZQAAeNqdU3dYk/cWPt/3ZQ9WQtjwsZdsgQAiI6wIyBBZohCSAGGEEBJAxYWIClYUFRGcSFXEgtUKSJ2I4qAouGdBiohai1VcOO4f3Ke1fXrv7e371/u855zn/M55zw+AERImkeaiagA5UoU8Otgfj09IxMm9gAIVSOAEIBDmy8JnBcUAAPADeXh+dLA//AGvbwACAHDVLiQSx+H/g7pQJlcAIJEA4CIS5wsBkFIAyC5UyBQAyBgAsFOzZAoAlAAAbHl8QiIAqg0A7PRJPgUA2KmT3BcA2KIcqQgAjQEAmShHJAJAuwBgVYFSLALAwgCgrEAiLgTArgGAWbYyRwKAvQUAdo5YkA9AYACAmUIszAAgOAIAQx4TzQMgTAOgMNK/4KlfcIW4SAEAwMuVzZdL0jMUuJXQGnfy8ODiIeLCbLFCYRcpEGYJ5CKcl5sjE0jnA0zODAAAGvnRwf44P5Dn5uTh5mbnbO/0xaL+a/BvIj4h8d/+vIwCBAAQTs/v2l/l5dYDcMcBsHW/a6lbANpWAGjf+V0z2wmgWgrQevmLeTj8QB6eoVDIPB0cCgsL7SViob0w44s+/zPhb+CLfvb8QB7+23rwAHGaQJmtwKOD/XFhbnauUo7nywRCMW735yP+x4V//Y4p0eI0sVwsFYrxWIm4UCJNx3m5UpFEIcmV4hLpfzLxH5b9CZN3DQCshk/ATrYHtctswH7uAQKLDljSdgBAfvMtjBoLkQAQZzQyefcAAJO/+Y9AKwEAzZek4wAAvOgYXKiUF0zGCAAARKCBKrBBBwzBFKzADpzBHbzAFwJhBkRADCTAPBBCBuSAHAqhGJZBGVTAOtgEtbADGqARmuEQtMExOA3n4BJcgetwFwZgGJ7CGLyGCQRByAgTYSE6iBFijtgizggXmY4EImFINJKApCDpiBRRIsXIcqQCqUJqkV1II/ItchQ5jVxA+pDbyCAyivyKvEcxlIGyUQPUAnVAuagfGorGoHPRdDQPXYCWomvRGrQePYC2oqfRS+h1dAB9io5jgNExDmaM2WFcjIdFYIlYGibHFmPlWDVWjzVjHVg3dhUbwJ5h7wgkAouAE+wIXoQQwmyCkJBHWExYQ6gl7CO0EroIVwmDhDHCJyKTqE+0JXoS+cR4YjqxkFhGrCbuIR4hniVeJw4TX5NIJA7JkuROCiElkDJJC0lrSNtILaRTpD7SEGmcTCbrkG3J3uQIsoCsIJeRt5APkE+S+8nD5LcUOsWI4kwJoiRSpJQSSjVlP+UEpZ8yQpmgqlHNqZ7UCKqIOp9aSW2gdlAvU4epEzR1miXNmxZDy6Qto9XQmmlnafdoL+l0ugndgx5Fl9CX0mvoB+nn6YP0dwwNhg2Dx0hiKBlrGXsZpxi3GS+ZTKYF05eZyFQw1zIbmWeYD5hvVVgq9ip8FZHKEpU6lVaVfpXnqlRVc1U/1XmqC1SrVQ+rXlZ9pkZVs1DjqQnUFqvVqR1Vu6k2rs5Sd1KPUM9RX6O+X/2C+mMNsoaFRqCGSKNUY7fGGY0hFsYyZfFYQtZyVgPrLGuYTWJbsvnsTHYF+xt2L3tMU0NzqmasZpFmneZxzQEOxrHg8DnZnErOIc4NznstAy0/LbHWaq1mrX6tN9p62r7aYu1y7Rbt69rvdXCdQJ0snfU6bTr3dQm6NrpRuoW623XP6j7TY+t56Qn1yvUO6d3RR/Vt9KP1F+rv1u/RHzcwNAg2kBlsMThj8MyQY+hrmGm40fCE4agRy2i6kcRoo9FJoye4Ju6HZ+M1eBc+ZqxvHGKsNN5l3Gs8YWJpMtukxKTF5L4pzZRrmma60bTTdMzMyCzcrNisyeyOOdWca55hvtm82/yNhaVFnMVKizaLx5balnzLBZZNlvesmFY+VnlW9VbXrEnWXOss623WV2xQG1ebDJs6m8u2qK2brcR2m23fFOIUjynSKfVTbtox7PzsCuya7AbtOfZh9iX2bfbPHcwcEh3WO3Q7fHJ0dcx2bHC866ThNMOpxKnD6VdnG2ehc53zNRemS5DLEpd2lxdTbaeKp26fesuV5RruutK10/Wjm7ub3K3ZbdTdzD3Ffav7TS6bG8ldwz3vQfTw91jicczjnaebp8LzkOcvXnZeWV77vR5Ps5wmntYwbcjbxFvgvct7YDo+PWX6zukDPsY+Ap96n4e+pr4i3z2+I37Wfpl+B/ye+zv6y/2P+L/hefIW8U4FYAHBAeUBvYEagbMDawMfBJkEpQc1BY0FuwYvDD4VQgwJDVkfcpNvwBfyG/ljM9xnLJrRFcoInRVaG/owzCZMHtYRjobPCN8Qfm+m+UzpzLYIiOBHbIi4H2kZmRf5fRQpKjKqLupRtFN0cXT3LNas5Fn7Z72O8Y+pjLk722q2cnZnrGpsUmxj7Ju4gLiquIF4h/hF8ZcSdBMkCe2J5MTYxD2J43MC52yaM5zkmlSWdGOu5dyiuRfm6c7Lnnc8WTVZkHw4hZgSl7I/5YMgQlAvGE/lp25NHRPyhJuFT0W+oo2iUbG3uEo8kuadVpX2ON07fUP6aIZPRnXGMwlPUit5kRmSuSPzTVZE1t6sz9lx2S05lJyUnKNSDWmWtCvXMLcot09mKyuTDeR55m3KG5OHyvfkI/lz89sVbIVM0aO0Uq5QDhZML6greFsYW3i4SL1IWtQz32b+6vkjC4IWfL2QsFC4sLPYuHhZ8eAiv0W7FiOLUxd3LjFdUrpkeGnw0n3LaMuylv1Q4lhSVfJqedzyjlKD0qWlQyuCVzSVqZTJy26u9Fq5YxVhlWRV72qX1VtWfyoXlV+scKyorviwRrjm4ldOX9V89Xlt2treSrfK7etI66Trbqz3Wb+vSr1qQdXQhvANrRvxjeUbX21K3nShemr1js20zcrNAzVhNe1bzLas2/KhNqP2ep1/XctW/a2rt77ZJtrWv913e/MOgx0VO97vlOy8tSt4V2u9RX31btLugt2PGmIbur/mft24R3dPxZ6Pe6V7B/ZF7+tqdG9s3K+/v7IJbVI2jR5IOnDlm4Bv2pvtmne1cFoqDsJB5cEn36Z8e+NQ6KHOw9zDzd+Zf7f1COtIeSvSOr91rC2jbaA9ob3v6IyjnR1eHUe+t/9+7zHjY3XHNY9XnqCdKD3x+eSCk+OnZKeenU4/PdSZ3Hn3TPyZa11RXb1nQ8+ePxd07ky3X/fJ897nj13wvHD0Ivdi2yW3S609rj1HfnD94UivW2/rZffL7Vc8rnT0Tes70e/Tf/pqwNVz1/jXLl2feb3vxuwbt24m3Ry4Jbr1+Hb27Rd3Cu5M3F16j3iv/L7a/eoH+g/qf7T+sWXAbeD4YMBgz8NZD+8OCYee/pT/04fh0kfMR9UjRiONj50fHxsNGr3yZM6T4aeypxPPyn5W/3nrc6vn3/3i+0vPWPzY8Av5i8+/rnmp83Lvq6mvOscjxx+8znk98ab8rc7bfe+477rfx70fmSj8QP5Q89H6Y8en0E/3Pud8/vwv94Tz+4A5JREAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADKmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzIgNzkuMTU5Mjg0LCAyMDE2LzA0LzE5LTEzOjEzOjQwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpGRkE0MjcxNTdEQzYxMUU4QkZBOERDOEVCQ0U0NTBGMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpGRkE0MjcxNDdEQzYxMUU4QkZBOERDOEVCQ0U0NTBGMSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxNS41IChNYWNpbnRvc2gpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QkE4RkFCN0M3REM1MTFFOEJGQThEQzhFQkNFNDUwRjEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QkE4RkFCN0Q3REM1MTFFOEJGQThEQzhFQkNFNDUwRjEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5BZZ+3AAAB1ElEQVR42mJkAALtmZb/GfAAJkIKwIoYiAA4FV1JO0Ylk0hWxILLHTgV6cyywqoIIIAYiQinb8S4iYs036E7esgEJq6ABAGAACImMBmo5m6yDcLlR5gcNnnaumhADWIhJoOTbRC+9ILPa9+o4TWAAAIlyDVAOphCc1SYqGAICNwZxumIidi8NILz2qhBdCyPaOcicgq1wRnYAAFErRKSgZo+GzSOoWpQD1sHsRCjCDnzkpp90DM+If2jUTbqoFEHjZZDpJYroyFESeNmNFHTykEqg8g9bwACCNRiVAYyLgEx1wA7Zu3V9OMhVBt1opajBlsaCh7NZaMOGnXQgFeupHZjKO1CjUbZqINGHTTqoFEHjTpo1EGjDhqMgw342kejUTaahggpoOdg1WiUjTpoODoIvL7tzSBykB5AgPbtGIdBGIYCaBR16swROEQvzT06cxjm1lRFDC0LcpXC+xJzpIdJhOW8e4z359MVWSde1C32xRYasC0mCmascDZzrQz+7NgABAgQINnRY/iUrb5D9v9l9toqCBAgQIAAAQIESAABAgQIEKCD5ZK9QPaMigoCdIJP7NdjOyoIECBAgGQBGjB8zVDjam153T0OqInJbBAWfdg8AExKZVcA71uIAAAAAElFTkSuQmCC"}),r(s,{class:"title"},{default:o((()=>[m("临床思维训练")])),_:1}),r(s,{class:"subtitle"},{default:o((()=>[m("提升临床决策能力的高效平台")])),_:1})])),_:1}),r(t,{class:"form"},{default:o((()=>[r(t,{class:"form-group"},{default:o((()=>[r(s,{class:"label"},{default:o((()=>[m("手机号码")])),_:1}),r(t,{class:v(["input-wrap",{focused:"phone"===F.value}])},{default:o((()=>[r(s,{class:"country-code"},{default:o((()=>[m("+86")])),_:1}),r(t,{class:"separator"}),r(n,{class:"input",type:"number",maxlength:"11",modelValue:J.phone,"onUpdate:modelValue":a[2]||(a[2]=e=>J.phone=e),placeholder:"请输入手机号","placeholder-class":"placeholder",onFocus:a[3]||(a[3]=e=>F.value="phone"),onBlur:a[4]||(a[4]=e=>F.value=""),onConfirm:ce},null,8,["modelValue"])])),_:1},8,["class"])])),_:1}),r(t,{class:"form-group"},{default:o((()=>[r(s,{class:"label"},{default:o((()=>[m("验证码")])),_:1}),r(t,{class:"code-row"},{default:o((()=>[r(t,{class:v(["input-wrap code-input-wrap",{focused:"code"===F.value}])},{default:o((()=>[r(t,{class:"verified-icon","aria-hidden":"true"}),r(n,{class:"input",type:"number",maxlength:"6",modelValue:J.code,"onUpdate:modelValue":a[5]||(a[5]=e=>J.code=e),placeholder:"短信验证码","placeholder-class":"placeholder",onFocus:a[6]||(a[6]=e=>F.value="code"),onBlur:a[7]||(a[7]=e=>F.value=""),onConfirm:ce},null,8,["modelValue"])])),_:1},8,["class"]),r(y,{class:v(["code-button",{disabled:ae.value||T.value}]),disabled:ae.value||T.value,onClick:ne},{default:o((()=>[m(p(le.value),1)])),_:1},8,["class","disabled"])])),_:1})])),_:1}),r(t,{class:"form-group"},{default:o((()=>[r(s,{class:"label"},{default:o((()=>[m("所属机构")])),_:1}),r(t,{class:"select-wrap",onClick:a[8]||(a[8]=e=>X.value=!0)},{default:o((()=>[r(s,{class:v(["select-text",{muted:!ee.value}])},{default:o((()=>[m(p(ee.value?ee.value.name:"选择医院或医学院校"),1)])),_:1},8,["class"]),r(t,{class:"select-arrow","aria-hidden":"true"})])),_:1})])),_:1}),r(s,{class:"hint"},{default:o((()=>[m("* 未注册手机号登录时将自动创建账号")])),_:1}),r(t,{class:"login-area"},{default:o((()=>[r(y,{class:v(["login-button",{loading:U.value}]),disabled:U.value,onClick:ce},{default:o((()=>[U.value?(c(),i(t,{key:0,class:"loading-spinner"})):(c(),i(s,{key:1},{default:o((()=>[m("登录 / 注册")])),_:1}))])),_:1},8,["class","disabled"])])),_:1})])),_:1}),r(t,{class:"footer"},{default:o((()=>[r(t,{class:v(["agreement",{shake:S.value}]),onClick:te},{default:o((()=>[r(t,{class:v(["checkbox",{checked:L.value}])},null,8,["class"]),r(t,{class:"agreement-copy"},{default:o((()=>[r(s,{class:"agreement-text"},{default:o((()=>[m("我已阅读并同意 ")])),_:1}),r(s,{class:"agreement-link",onClick:a[9]||(a[9]=f((e=>oe("service")),["stop"]))},{default:o((()=>[m("《用户服务协议》")])),_:1}),r(s,{class:"agreement-text"},{default:o((()=>[m(" 与 ")])),_:1}),r(s,{class:"agreement-link",onClick:a[10]||(a[10]=f((e=>oe("privacy")),["stop"]))},{default:o((()=>[m("《隐私保护政策》")])),_:1})])),_:1})])),_:1},8,["class"])])),_:1})])),_:1}),r(t,{class:v(["toast",{visible:M.value}])},{default:o((()=>[m(p(x.value),1)])),_:1},8,["class"]),X.value?(c(),i(t,{key:0,class:"picker-mask",onClick:a[13]||(a[13]=e=>X.value=!1)},{default:o((()=>[r(t,{class:"picker-panel",onClick:a[12]||(a[12]=f((()=>{}),["stop"]))},{default:o((()=>[r(t,{class:"picker-header"},{default:o((()=>[r(s,{class:"picker-title"},{default:o((()=>[m("选择所属机构")])),_:1}),r(s,{class:"picker-close",onClick:a[11]||(a[11]=e=>X.value=!1)},{default:o((()=>[m("关闭")])),_:1})])),_:1}),r(b,{class:"institution-list","scroll-y":""},{default:o((()=>[q.value?(c(),i(t,{key:0,class:"institution-empty"},{default:o((()=>[m("机构列表加载中...")])),_:1})):0===D.value.length?(c(),i(t,{key:1,class:"institution-empty"},{default:o((()=>[m("暂无可选机构")])),_:1})):(c(!0),g(I,{key:2},h(D.value,(e=>(c(),i(t,{key:e.id,class:v(["institution-item",{active:J.institutionId===e.id}]),onClick:a=>function(e){J.institutionId=e.id,X.value=!1}(e)},{default:o((()=>[r(t,{class:"institution-copy"},{default:o((()=>[r(s,{class:"institution-name"},{default:o((()=>[m(p(e.name),1)])),_:2},1024),r(s,{class:"institution-meta"},{default:o((()=>[m(p(e.city)+" · "+p(e.typeName),1)])),_:2},1024)])),_:2},1024),J.institutionId===e.id?(c(),i(t,{key:0,class:"selected-mark"})):u("",!0)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1})])),_:1})):u("",!0)])),_:1}))])),_:1})}}}),[["__scopeId","data-v-0db0c021"]]);export{J as default}; diff --git a/dist/assets/pages-learning-assistant-learning-assistant.CCQRDo6G.js b/dist/assets/pages-learning-assistant-learning-assistant.CCQRDo6G.js deleted file mode 100644 index 00fb8bd..0000000 --- a/dist/assets/pages-learning-assistant-learning-assistant.CCQRDo6G.js +++ /dev/null @@ -1 +0,0 @@ -import{D as t,s as a,d as e,r as s,o as l,b as n,e as o,f as i,w as c,i as r,E as u,j as d,l as f,m as p,F as m,n as _,k as v,g as h,t as g,u as b,z as w,A as y,y as k,x as C,S as j,N as x}from"./index-DfCP9RI3.js";import{_ as A}from"./config-doctor.TgARj_nM.js";import{F as S,a as E,r as $}from"./session.D2K7L0GR.js";import{b as O}from"./navigation.Bg2Ef9wA.js";import{_ as D}from"./_plugin-vue_export-helper.BCo6x5W8.js";async function I(t){const a=(null==t?void 0:t.trim())?{title:t.trim().slice(0,100)}:{},e=await fetch(`${S}/learning-assistant/sessions`,{method:"POST",headers:E(),body:JSON.stringify(a)});if(!e.ok)throw new Error(await $(e));const s=await e.json();if("OK"!==s.code||!s.data)throw new Error(s.message||"新建会话失败");const l=function(t){const a=t.assistant_session_id||t.session_id||t.id;return"number"==typeof a||"string"==typeof a?a:""}(s.data);if(!l)throw new Error("新建会话返回缺少 assistant_session_id");return{...s.data,assistant_session_id:l}}async function T(t,a){var e;const s=await fetch("http://8.160.178.88:8088/v1/workflows/run",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Bearer app-9BapxGXgF2qQi9HHkq4R95Y7"},body:JSON.stringify({inputs:{input:t},response_mode:"blocking",user:q()}),signal:a});if(!s.ok)throw new Error(await async function(t){const a=await t.text().catch((()=>""));if(!a)return`临床思维训练书籍请求失败(${t.status})`;try{const t=JSON.parse(a),e=t.message||t.detail||t.error;if("string"==typeof e&&e.trim())return e}catch{}return a}(s));const l=await s.json();if((null==(e=l.data)?void 0:e.status)&&"succeeded"!==l.data.status)throw new Error(l.data.error||"临床思维训练书籍生成失败");const n=function(t){const a=t.data;if(a&&"object"==typeof a){const t=N(a.outputs)||N(a.output)||N(a.answer)||N(a.text)||N(a.result);if(t)return t}return N(t.output)||N(t.answer)||N(t.text)||N(t.result)}(l);if(!n)throw new Error("临床思维训练书籍内容为空,请稍后重试");return n}function q(){const e="clinical-thinking-workflow-user-id",s=t(e);if("string"==typeof s&&s.trim())return s;const l=`clinical-thinking-${Date.now()}-${Math.random().toString(36).slice(2,8)}`;return a(e,l),l}function N(t){if("string"==typeof t)return t.trim();if(Array.isArray(t))return t.map(N).filter(Boolean).join("\n");if(!t||"object"!=typeof t)return"";const a=t,e=["answer","text","result","output","content","markdown","data"];for(const s of e){const t=N(a[s]);if(t)return t}return Object.entries(a).map((([t,a])=>{const e=N(a);return e?`${t}:${e}`:""})).filter(Boolean).join("\n")}function F(t,a){var e,s,l;const n=(null==(e=t.match(/^event:\s*(.+)$/m))?void 0:e[1])||"",o=t.split("\n").filter((t=>t.startsWith("data:"))).map((t=>t.replace(/^data:\s?/,"")));if(0===o.length)return;const i=o.join("\n");if("[DONE]"===i)return void(null==(s=a.onDone)||s.call(a,{}));let c=i;try{c=JSON.parse(i)}catch{}if("error"===n){const t="object"==typeof c&&c?c.message:c;throw new Error("string"==typeof t?t:"AI 学习助手回复失败")}const r=function(t){if("string"==typeof t)return t;if(!t||"object"!=typeof t)return"";const a=t,e=a.delta||a.content||a.answer||a.text;if("string"==typeof e)return e;const s=a.data;if(s&&"object"==typeof s){const t=s,a=t.delta||t.content||t.answer||t.text;if("string"==typeof a)return a}return""}(c);r&&a.onDelta(r),"done"!==n&&"message_done"!==n||null==(l=a.onDone)||l.call(a,"object"==typeof c&&c?c:{})}const J=D(e({__name:"learning-assistant",emits:["go-home","open-settings","open-profile"],setup(e,{emit:D}){const q=O(D),N=[{index:"1",title:"早期识别",description:"10分钟内完成12导联心电图。"},{index:"2",title:"药物干预",description:"阿司匹林、氯吡格雷。"},{index:"3",title:"再灌注策略",description:"STEMI需紧急PCI。"}],J=s([]),B=s(""),P=s(!1),H=s(!1),M=s(""),V=s(!1),z=s(0),R=s(null),G=s(!1),K=s("");let Q=null,U=null,W=null;function X(){G.value||(K.value="clinical-books"===K.value?"":"clinical-books")}async function Y(){const t=B.value.trim();if(!t)return void Z("请输入问题");if(G.value)return;J.value.push({id:`user-${Date.now()}`,role:"user",content:t}),B.value="",H.value=!0,G.value=!0,L();const e=J.value.length;J.value.push({id:`assistant-${Date.now()}`,role:"assistant",variant:"simple",content:""});try{if("clinical-books"===K.value){null==W||W.abort(),W=new AbortController;const a=await T(t,W.signal);J.value[e].content=a}else{const s=await async function(t){if(R.value)return R.value;const e=await I(t);return R.value=e,a("clinical-thinking-learning-assistant-session",e),e}(t);null==U||U.abort(),U=new AbortController,await async function(t,a,e,s){const l=await fetch(`${S}/learning-assistant/sessions/${t}/chat/stream`,{method:"POST",headers:E("text/event-stream"),body:JSON.stringify(a),signal:s});if(!l.ok||!l.body)throw new Error(await $(l));const n=l.body.getReader(),o=new TextDecoder;let i="";for(;;){const{value:t,done:a}=await n.read();if(a)break;i+=o.decode(t,{stream:!0});const s=i.split("\n\n");i=s.pop()||"";for(const l of s)F(l,e)}i.trim()&&F(i,e)}(s.assistant_session_id,{question:t},{onDelta:t=>{J.value[e].content+=t,L()}},U.signal),J.value[e].content.trim()||(J.value[e].content="暂未生成回复,请稍后重试。")}}catch(s){const t="clinical-books"===K.value?"临床思维训练书籍生成失败":"AI 学习助手回复失败";J.value[e].content=s instanceof Error?s.message:t,Z(J.value[e].content)}finally{H.value=!1,G.value=!1,L()}}function L(){b((()=>{z.value+=1e3}))}function Z(t){Q&&clearTimeout(Q),M.value=t,V.value=!0,Q=setTimeout((()=>{V.value=!1}),1800)}return l((()=>{!async function(){try{const e=t("clinical-thinking-learning-assistant-session");if(e&&"object"==typeof e)return void(R.value=e);R.value=await I("AI 学习助手"),a("clinical-thinking-learning-assistant-session",R.value)}catch(e){Z(e instanceof Error?e.message:"新建会话失败")}}()})),n((()=>{null==U||U.abort(),null==W||W.abort(),Q&&clearTimeout(Q)})),(t,a)=>{const e=w,s=y,l=k,n=C,b=j,S=x;return o(),i(e,{class:"learning-page"},{default:c((()=>[r(e,{class:"learning-shell"},{default:c((()=>[r(e,{class:"assistant-header"},{default:c((()=>[r(e,{class:"header-left"},{default:c((()=>[r(s,{class:"icon-button","aria-label":"返回",onClick:u(q)},{default:c((()=>[r(e,{class:"history-icon"})])),_:1},8,["onClick"]),r(l,{class:"page-title"},{default:c((()=>[d("AI 学习助手")])),_:1})])),_:1}),r(e,{class:"header-actions"},{default:c((()=>[r(s,{class:"director-chip",onClick:a[0]||(a[0]=t=>P.value=!0)},{default:c((()=>[r(n,{class:"director-thumb",src:A,mode:"aspectFill"}),r(l,null,{default:c((()=>[d("咨询王主任")])),_:1})])),_:1}),r(s,{class:"icon-button muted","aria-label":"更多",onClick:a[1]||(a[1]=t=>Z("更多功能即将开放"))},{default:c((()=>[r(e,{class:"more-icon"})])),_:1})])),_:1})])),_:1}),r(b,{class:"chat-canvas","scroll-y":"","scroll-top":z.value},{default:c((()=>[r(e,{class:"time-row"},{default:c((()=>[r(l,null,{default:c((()=>[d("今天 10:42 AM")])),_:1})])),_:1}),(o(!0),f(m,null,p(J.value,(t=>(o(),i(e,{key:t.id,class:_(["message-block",`message-${t.role}`])},{default:c((()=>["user"===t.role?(o(),i(e,{key:0,class:"user-bubble"},{default:c((()=>[r(l,null,{default:c((()=>[d(g(t.content),1)])),_:2},1024)])),_:2},1024)):(o(),i(e,{key:1,class:"assistant-message"},{default:c((()=>[r(e,{class:"assistant-meta"},{default:c((()=>[r(e,{class:"robot-badge"},{default:c((()=>[r(e,{class:"robot-icon"})])),_:1}),r(l,null,{default:c((()=>[d("AI 临床助理")])),_:1})])),_:1}),"acs-pathway"===t.variant?(o(),i(e,{key:0,class:"assistant-card"},{default:c((()=>[r(l,{class:"response-intro"},{default:c((()=>[d("急性冠脉综合征(ACS)临床路径:")])),_:1}),r(e,{class:"pathway-card"},{default:c((()=>[(o(),f(m,null,p(N,(t=>r(e,{key:t.title,class:"pathway-step"},{default:c((()=>[r(l,{class:"step-index"},{default:c((()=>[d(g(t.index),1)])),_:2},1024),r(e,{class:"step-copy"},{default:c((()=>[r(l,{class:"step-title"},{default:c((()=>[d(g(t.title),1)])),_:2},1024),r(l,{class:"step-desc"},{default:c((()=>[d(g(t.description),1)])),_:2},1024)])),_:2},1024)])),_:2},1024))),64))])),_:1}),r(e,{class:"evidence-box"},{default:c((()=>[r(e,{class:"evidence-heading"},{default:c((()=>[r(e,{class:"verified-icon"}),r(l,null,{default:c((()=>[d("循证来源")])),_:1})])),_:1}),r(l,{class:"evidence-item"},{default:c((()=>[d("[1] 2023 AHA/ACC ACS 管理指南")])),_:1}),r(l,{class:"evidence-item"},{default:c((()=>[d("[2] 《临床诊疗常规:心血管分册》")])),_:1})])),_:1})])),_:1})):(o(),i(e,{key:1,class:"assistant-card simple-card"},{default:c((()=>[r(l,null,{default:c((()=>[d(g(t.content),1)])),_:2},1024)])),_:2},1024))])),_:2},1024))])),_:2},1032,["class"])))),128)),r(e,{class:_(["typing-row",{visible:H.value}])},{default:c((()=>[r(e,{class:"typing-dots"},{default:c((()=>[r(e,{class:"dot dot-one"}),r(e,{class:"dot dot-two"}),r(e,{class:"dot dot-three"})])),_:1}),r(l,null,{default:c((()=>[d("正在思考中...")])),_:1})])),_:1},8,["class"])])),_:1},8,["scroll-top"]),r(e,{class:"input-panel"},{default:c((()=>[r(b,{class:"quick-actions","scroll-x":""},{default:c((()=>[r(e,{class:"quick-row"},{default:c((()=>[r(s,{class:_(["quick-chip",{active:"clinical-books"===K.value,disabled:G.value}]),disabled:G.value,onClick:X},{default:c((()=>[d(" 临床思维训练书籍 ")])),_:1},8,["class","disabled"])])),_:1})])),_:1}),r(e,{class:"composer"},{default:c((()=>[r(S,{class:"message-input",modelValue:B.value,"onUpdate:modelValue":a[2]||(a[2]=t=>B.value=t),"auto-height":"",maxlength:"1000",placeholder:"请输入您的问题...","placeholder-class":"input-placeholder",onConfirm:Y},null,8,["modelValue"]),r(e,{class:"composer-actions"},{default:c((()=>[r(s,{class:"attach-button","aria-label":"附件",onClick:a[3]||(a[3]=t=>Z("附件上传即将开放"))},{default:c((()=>[r(e,{class:"attach-icon"})])),_:1}),r(s,{class:_(["send-button",{disabled:G.value}]),disabled:G.value,"aria-label":"发送",onClick:Y},{default:c((()=>[r(e,{class:"send-icon"})])),_:1},8,["class","disabled"])])),_:1})])),_:1}),r(l,{class:"disclaimer"},{default:c((()=>[d("AI 生成内容仅供临床参考,最终医疗决策请咨询资深医师。")])),_:1})])),_:1}),P.value?(o(),i(e,{key:0,class:"modal-mask",onClick:a[9]||(a[9]=t=>P.value=!1)},{default:c((()=>[r(e,{class:"wang-modal",onClick:a[8]||(a[8]=v((()=>{}),["stop"]))},{default:c((()=>[r(e,{class:"modal-header"},{default:c((()=>[r(e,{class:"modal-doctor"},{default:c((()=>[r(n,{class:"modal-avatar",src:A,mode:"aspectFill"}),r(e,{class:"modal-title-group"},{default:c((()=>[r(l,{class:"modal-title"},{default:c((()=>[d("王主任")])),_:1}),r(l,{class:"modal-subtitle"},{default:c((()=>[d("临床教育首席专家")])),_:1})])),_:1})])),_:1}),r(s,{class:"icon-button muted","aria-label":"关闭",onClick:a[4]||(a[4]=t=>P.value=!1)},{default:c((()=>[r(e,{class:"close-icon"})])),_:1})])),_:1}),r(e,{class:"modal-body"},{default:c((()=>[r(e,{class:"quote-card"},{default:c((()=>[r(l,null,{default:c((()=>[d("“对于 ACS 患者,请务必牢记:时间就是心肌。虽然 AI 提供了标准的临床路径,但结合患者个体化风险特征的临床判断仍是您最关键的工具。”")])),_:1})])),_:1}),r(e,{class:"mentor-grid"},{default:c((()=>[r(s,{class:"mentor-card",onClick:a[5]||(a[5]=t=>Z("已选择查房带教"))},{default:c((()=>[r(e,{class:"school-small-icon"}),r(l,null,{default:c((()=>[d("查房带教")])),_:1})])),_:1}),r(s,{class:"mentor-card",onClick:a[6]||(a[6]=t=>Z("已选择疑难会诊"))},{default:c((()=>[r(e,{class:"notes-small-icon"}),r(l,null,{default:c((()=>[d("疑难会诊")])),_:1})])),_:1})])),_:1}),r(s,{class:"guidance-button",onClick:a[7]||(a[7]=t=>Z("一对一指导即将开始"))},{default:c((()=>[d(" 开始一对一指导 ")])),_:1})])),_:1})])),_:1})])),_:1})):h("",!0),r(e,{class:_(["toast",{visible:V.value}])},{default:c((()=>[d(g(M.value),1)])),_:1},8,["class"])])),_:1})])),_:1})}}}),[["__scopeId","data-v-18a2f742"]]);export{J as default}; diff --git a/dist/assets/pages-learning-assistant-learning-assistant.J4N36eXO.js b/dist/assets/pages-learning-assistant-learning-assistant.J4N36eXO.js new file mode 100644 index 0000000..cb74d08 --- /dev/null +++ b/dist/assets/pages-learning-assistant-learning-assistant.J4N36eXO.js @@ -0,0 +1 @@ +import{D as t,s as a,d as e,r as s,b as l,e as n,f as o,w as i,i as c,E as r,j as u,l as d,m as f,F as p,n as m,k as _,g as v,t as h,u as b,z as g,A as w,y,x as k,S as C,N as j}from"./index-8wOL_3gR.js";import{_ as x}from"./config-doctor.TgARj_nM.js";import{a as A}from"./uni-app.es.25qqJrzj.js";import{F as S,a as E,r as $}from"./session.LaNXUMh-.js";import{b as O}from"./navigation.Blicf8xr.js";import{_ as D}from"./_plugin-vue_export-helper.BCo6x5W8.js";async function I(t,a){var e;const s=await fetch("http://8.160.178.88:8088/v1/workflows/run",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Bearer app-9BapxGXgF2qQi9HHkq4R95Y7"},body:JSON.stringify({inputs:{input:t},response_mode:"blocking",user:T()}),signal:a});if(!s.ok)throw new Error(await async function(t){const a=await t.text().catch((()=>""));if(!a)return`临床思维训练书籍请求失败(${t.status})`;try{const t=JSON.parse(a),e=t.message||t.detail||t.error;if("string"==typeof e&&e.trim())return e}catch{}return a}(s));const l=await s.json();if((null==(e=l.data)?void 0:e.status)&&"succeeded"!==l.data.status)throw new Error(l.data.error||"临床思维训练书籍生成失败");const n=function(t){const a=t.data;if(a&&"object"==typeof a){const t=q(a.outputs)||q(a.output)||q(a.answer)||q(a.text)||q(a.result);if(t)return t}return q(t.output)||q(t.answer)||q(t.text)||q(t.result)}(l);if(!n)throw new Error("临床思维训练书籍内容为空,请稍后重试");return n}function T(){const e="clinical-thinking-workflow-user-id",s=t(e);if("string"==typeof s&&s.trim())return s;const l=`clinical-thinking-${Date.now()}-${Math.random().toString(36).slice(2,8)}`;return a(e,l),l}function q(t){if("string"==typeof t)return t.trim();if(Array.isArray(t))return t.map(q).filter(Boolean).join("\n");if(!t||"object"!=typeof t)return"";const a=t,e=["answer","text","result","output","content","markdown","data"];for(const s of e){const t=q(a[s]);if(t)return t}return Object.entries(a).map((([t,a])=>{const e=q(a);return e?`${t}:${e}`:""})).filter(Boolean).join("\n")}function N(t,a){var e,s,l;const n=(null==(e=t.match(/^event:\s*(.+)$/m))?void 0:e[1])||"",o=t.split("\n").filter((t=>t.startsWith("data:"))).map((t=>t.replace(/^data:\s?/,"")));if(0===o.length)return;const i=o.join("\n");if("[DONE]"===i)return void(null==(s=a.onDone)||s.call(a,{}));let c=i;try{c=JSON.parse(i)}catch{}if("error"===n){const t="object"==typeof c&&c?c.message:c;throw new Error("string"==typeof t?t:"AI 学习助手回复失败")}const r=function(t){if("string"==typeof t)return t;if(!t||"object"!=typeof t)return"";const a=t,e=a.delta||a.content||a.answer||a.text;if("string"==typeof e)return e;const s=a.data;if(s&&"object"==typeof s){const t=s,a=t.delta||t.content||t.answer||t.text;if("string"==typeof a)return a}return""}(c);r&&a.onDelta(r),"done"!==n&&"message_done"!==n||null==(l=a.onDone)||l.call(a,"object"==typeof c&&c?c:{})}const F=D(e({__name:"learning-assistant",emits:["go-home","open-settings","open-profile"],setup(t,{emit:a}){const e=O(a),D=[{index:"1",title:"早期识别",description:"10分钟内完成12导联心电图。"},{index:"2",title:"药物干预",description:"阿司匹林、氯吡格雷。"},{index:"3",title:"再灌注策略",description:"STEMI需紧急PCI。"}],T=s([]),q=s(""),F=s(!1),J=s(!1),B=s(""),P=s(!1),H=s(0),M=s(null),V=s(!1),z=s("");let R=null,G=null,K=null,Q=null;function U(){V.value||(z.value="clinical-books"===z.value?"":"clinical-books")}async function W(){const t=q.value.trim();if(!t)return void L("请输入问题");if(V.value)return;T.value.push({id:`user-${Date.now()}`,role:"user",content:t}),q.value="",J.value=!0,V.value=!0,Y();const a=T.value.length;T.value.push({id:`assistant-${Date.now()}`,role:"assistant",variant:"simple",content:""});try{if("clinical-books"===z.value){null==K||K.abort(),K=new AbortController;const e=await I(t,K.signal);T.value[a].content=e}else{const e=await async function(t){return M.value?M.value:Q||X(t)}(t);null==G||G.abort(),G=new AbortController,await async function(t,a,e,s){const l=await fetch(`${S}/learning-assistant/sessions/${t}/chat/stream`,{method:"POST",headers:E("text/event-stream"),body:JSON.stringify(a),signal:s});if(!l.ok||!l.body)throw new Error(await $(l));const n=l.body.getReader(),o=new TextDecoder;let i="";for(;;){const{value:t,done:a}=await n.read();if(a)break;i+=o.decode(t,{stream:!0});const s=i.split("\n\n");i=s.pop()||"";for(const l of s)N(l,e)}i.trim()&&N(i,e)}(e.assistant_session_id,{question:t},{onDelta:t=>{T.value[a].content+=t,Y()}},G.signal),T.value[a].content.trim()||(T.value[a].content="暂未生成回复,请稍后重试。")}}catch(e){const t="clinical-books"===z.value?"临床思维训练书籍生成失败":"AI 学习助手回复失败";T.value[a].content=e instanceof Error?e.message:t,L(T.value[a].content)}finally{J.value=!1,V.value=!1,Y()}}function X(t){const a=async function(t){const a=(null==t?void 0:t.trim())?{title:t.trim().slice(0,100)}:{},e=await fetch(`${S}/learning-assistant/sessions`,{method:"POST",headers:E(),body:JSON.stringify(a)});if(!e.ok)throw new Error(await $(e));const s=await e.json();if("OK"!==s.code||!s.data)throw new Error(s.message||"新建会话失败");const l=function(t){const a=t.assistant_session_id||t.session_id||t.id;return"number"==typeof a||"string"==typeof a?a:""}(s.data);if(!l)throw new Error("新建会话返回缺少 assistant_session_id");return{...s.data,assistant_session_id:l}}(t);return Q=a,a.then((t=>(Q===a&&(M.value=t),t))).catch((t=>{throw Q===a&&(Q=null),t}))}function Y(){b((()=>{H.value+=1e3}))}function L(t){R&&clearTimeout(R),B.value=t,P.value=!0,R=setTimeout((()=>{P.value=!1}),1800)}return A((()=>{!async function(){try{M.value=null,await X("AI 学习助手")}catch(t){L(t instanceof Error?t.message:"新建会话失败")}}()})),l((()=>{null==G||G.abort(),null==K||K.abort(),R&&clearTimeout(R)})),(t,a)=>{const s=g,l=w,b=y,A=k,S=C,E=j;return n(),o(s,{class:"learning-page"},{default:i((()=>[c(s,{class:"learning-shell"},{default:i((()=>[c(s,{class:"assistant-header"},{default:i((()=>[c(s,{class:"header-left"},{default:i((()=>[c(l,{class:"icon-button","aria-label":"返回",onClick:r(e)},{default:i((()=>[c(s,{class:"history-icon"})])),_:1},8,["onClick"]),c(b,{class:"page-title"},{default:i((()=>[u("AI 学习助手")])),_:1})])),_:1}),c(s,{class:"header-actions"},{default:i((()=>[c(l,{class:"director-chip",onClick:a[0]||(a[0]=t=>F.value=!0)},{default:i((()=>[c(A,{class:"director-thumb",src:x,mode:"aspectFill"}),c(b,null,{default:i((()=>[u("咨询王主任")])),_:1})])),_:1}),c(l,{class:"icon-button muted","aria-label":"更多",onClick:a[1]||(a[1]=t=>L("更多功能即将开放"))},{default:i((()=>[c(s,{class:"more-icon"})])),_:1})])),_:1})])),_:1}),c(S,{class:"chat-canvas","scroll-y":"","scroll-top":H.value},{default:i((()=>[c(s,{class:"time-row"},{default:i((()=>[c(b,null,{default:i((()=>[u("今天 10:42 AM")])),_:1})])),_:1}),(n(!0),d(p,null,f(T.value,(t=>(n(),o(s,{key:t.id,class:m(["message-block",`message-${t.role}`])},{default:i((()=>["user"===t.role?(n(),o(s,{key:0,class:"user-bubble"},{default:i((()=>[c(b,null,{default:i((()=>[u(h(t.content),1)])),_:2},1024)])),_:2},1024)):(n(),o(s,{key:1,class:"assistant-message"},{default:i((()=>[c(s,{class:"assistant-meta"},{default:i((()=>[c(s,{class:"robot-badge"},{default:i((()=>[c(s,{class:"robot-icon"})])),_:1}),c(b,null,{default:i((()=>[u("AI 临床助理")])),_:1})])),_:1}),"acs-pathway"===t.variant?(n(),o(s,{key:0,class:"assistant-card"},{default:i((()=>[c(b,{class:"response-intro"},{default:i((()=>[u("急性冠脉综合征(ACS)临床路径:")])),_:1}),c(s,{class:"pathway-card"},{default:i((()=>[(n(),d(p,null,f(D,(t=>c(s,{key:t.title,class:"pathway-step"},{default:i((()=>[c(b,{class:"step-index"},{default:i((()=>[u(h(t.index),1)])),_:2},1024),c(s,{class:"step-copy"},{default:i((()=>[c(b,{class:"step-title"},{default:i((()=>[u(h(t.title),1)])),_:2},1024),c(b,{class:"step-desc"},{default:i((()=>[u(h(t.description),1)])),_:2},1024)])),_:2},1024)])),_:2},1024))),64))])),_:1}),c(s,{class:"evidence-box"},{default:i((()=>[c(s,{class:"evidence-heading"},{default:i((()=>[c(s,{class:"verified-icon"}),c(b,null,{default:i((()=>[u("循证来源")])),_:1})])),_:1}),c(b,{class:"evidence-item"},{default:i((()=>[u("[1] 2023 AHA/ACC ACS 管理指南")])),_:1}),c(b,{class:"evidence-item"},{default:i((()=>[u("[2] 《临床诊疗常规:心血管分册》")])),_:1})])),_:1})])),_:1})):(n(),o(s,{key:1,class:"assistant-card simple-card"},{default:i((()=>[c(b,null,{default:i((()=>[u(h(t.content),1)])),_:2},1024)])),_:2},1024))])),_:2},1024))])),_:2},1032,["class"])))),128)),c(s,{class:m(["typing-row",{visible:J.value}])},{default:i((()=>[c(s,{class:"typing-dots"},{default:i((()=>[c(s,{class:"dot dot-one"}),c(s,{class:"dot dot-two"}),c(s,{class:"dot dot-three"})])),_:1}),c(b,null,{default:i((()=>[u("正在思考中...")])),_:1})])),_:1},8,["class"])])),_:1},8,["scroll-top"]),c(s,{class:"input-panel"},{default:i((()=>[c(S,{class:"quick-actions","scroll-x":""},{default:i((()=>[c(s,{class:"quick-row"},{default:i((()=>[c(l,{class:m(["quick-chip",{active:"clinical-books"===z.value,disabled:V.value}]),disabled:V.value,onClick:U},{default:i((()=>[u(" 临床思维训练书籍 ")])),_:1},8,["class","disabled"])])),_:1})])),_:1}),c(s,{class:"composer"},{default:i((()=>[c(E,{class:"message-input",modelValue:q.value,"onUpdate:modelValue":a[2]||(a[2]=t=>q.value=t),"auto-height":"",maxlength:"1000",placeholder:"请输入您的问题...","placeholder-class":"input-placeholder",onConfirm:W},null,8,["modelValue"]),c(s,{class:"composer-actions"},{default:i((()=>[c(l,{class:"attach-button","aria-label":"附件",onClick:a[3]||(a[3]=t=>L("附件上传即将开放"))},{default:i((()=>[c(s,{class:"attach-icon"})])),_:1}),c(l,{class:m(["send-button",{disabled:V.value}]),disabled:V.value,"aria-label":"发送",onClick:W},{default:i((()=>[c(s,{class:"send-icon"})])),_:1},8,["class","disabled"])])),_:1})])),_:1}),c(b,{class:"disclaimer"},{default:i((()=>[u("AI 生成内容仅供临床参考,最终医疗决策请咨询资深医师。")])),_:1})])),_:1}),F.value?(n(),o(s,{key:0,class:"modal-mask",onClick:a[9]||(a[9]=t=>F.value=!1)},{default:i((()=>[c(s,{class:"wang-modal",onClick:a[8]||(a[8]=_((()=>{}),["stop"]))},{default:i((()=>[c(s,{class:"modal-header"},{default:i((()=>[c(s,{class:"modal-doctor"},{default:i((()=>[c(A,{class:"modal-avatar",src:x,mode:"aspectFill"}),c(s,{class:"modal-title-group"},{default:i((()=>[c(b,{class:"modal-title"},{default:i((()=>[u("王主任")])),_:1}),c(b,{class:"modal-subtitle"},{default:i((()=>[u("临床教育首席专家")])),_:1})])),_:1})])),_:1}),c(l,{class:"icon-button muted","aria-label":"关闭",onClick:a[4]||(a[4]=t=>F.value=!1)},{default:i((()=>[c(s,{class:"close-icon"})])),_:1})])),_:1}),c(s,{class:"modal-body"},{default:i((()=>[c(s,{class:"quote-card"},{default:i((()=>[c(b,null,{default:i((()=>[u("“对于 ACS 患者,请务必牢记:时间就是心肌。虽然 AI 提供了标准的临床路径,但结合患者个体化风险特征的临床判断仍是您最关键的工具。”")])),_:1})])),_:1}),c(s,{class:"mentor-grid"},{default:i((()=>[c(l,{class:"mentor-card",onClick:a[5]||(a[5]=t=>L("已选择查房带教"))},{default:i((()=>[c(s,{class:"school-small-icon"}),c(b,null,{default:i((()=>[u("查房带教")])),_:1})])),_:1}),c(l,{class:"mentor-card",onClick:a[6]||(a[6]=t=>L("已选择疑难会诊"))},{default:i((()=>[c(s,{class:"notes-small-icon"}),c(b,null,{default:i((()=>[u("疑难会诊")])),_:1})])),_:1})])),_:1}),c(l,{class:"guidance-button",onClick:a[7]||(a[7]=t=>L("一对一指导即将开始"))},{default:i((()=>[u(" 开始一对一指导 ")])),_:1})])),_:1})])),_:1})])),_:1})):v("",!0),c(s,{class:m(["toast",{visible:P.value}])},{default:i((()=>[u(h(B.value),1)])),_:1},8,["class"])])),_:1})])),_:1})}}}),[["__scopeId","data-v-1230b6c9"]]);export{F as default}; diff --git a/dist/assets/pages-matching-matching.DEEqkPi2.js b/dist/assets/pages-matching-matching.0jzQ00td.js similarity index 93% rename from dist/assets/pages-matching-matching.DEEqkPi2.js rename to dist/assets/pages-matching-matching.0jzQ00td.js index 7eec7ec..17259a5 100644 --- a/dist/assets/pages-matching-matching.DEEqkPi2.js +++ b/dist/assets/pages-matching-matching.0jzQ00td.js @@ -1 +1 @@ -import{d as a,a as e,r as s,o as l,b as t,e as n,f as r,w as o,i as c,l as i,m as u,F as d,j as m,t as g,H as p,p as f,z as h,y as v,x as _,n as b}from"./index-DfCP9RI3.js";import{_ as y}from"./config-doctor.TgARj_nM.js";import{o as w}from"./uni-app.es.DDI13Fy0.js";import{c as M,f as j,s as x}from"./cases.Q7p7j9rz.js";import{_ as $}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.BCdV446X.js";const I=$(a({__name:"matching",setup(a){const $=e({message:"王主任正在为您智能匹配病例",subtitle:"正在通过大模型计算最适合您的临床案例库...",progressTarget:92,tags:[]}),I=s([]),T=s(0),k=s("recommended");let D=0,z=null,F=null,P=null,q=!1,A=!1,C=!1,H=!1;const O={page:1,page_size:10};function R(){Promise.resolve({message:"王主任正在为您智能匹配病例",subtitle:"正在通过大模型计算最适合您的临床案例库...",progressTarget:92,tags:[{label:"薄弱环节",tone:"secondary"},{label:"主治医级别",tone:"primary"},{label:"高匹配度",tone:"tertiary"},{label:"基于历史偏好",tone:"neutral"}]}).then((a=>{Object.assign($,a)}))}function U(){const a=D++,e=256*Math.random(),s=256*Math.random(),l=150*(Math.random()-.5),t=150*(Math.random()-.5),n=2+3*Math.random();I.value.push({id:a,style:{left:`${e}px`,top:`${s}px`,"--particle-x":`${l}px`,"--particle-y":`${t}px`,animationDuration:`${n}s`}}),setTimeout((()=>{I.value=I.value.filter((e=>e.id!==a))}),1e3*n)}async function B(){var a;M(),q=!1,A=!1,C=!1,function(){F&&clearInterval(F),T.value=0;const a=Date.now();F=setInterval((()=>{const e=Date.now()-a,s=Math.min(1,e/3e3),l=e>3e3?Math.min(7,Math.floor((e-3e3)/1e3)):0;T.value=Math.min(99,Math.round($.progressTarget*s+l))}),100)}(),(a=3e3,new Promise((e=>{setTimeout(e,a)}))).then((()=>{q=!0,E()}));try{const a=await j(k.value,O);if(!H)return;x({source:k.value,query:O,page:a,cachedAt:Date.now()})}catch{}finally{A=!0,E()}}function E(){H&&!C&&q&&A&&(C=!0,T.value=100,F&&clearInterval(F),F=null,P=setTimeout((()=>{f({url:`/pages/cases/cases?source=${encodeURIComponent(k.value)}`})}),120))}return w((a=>{const e=null==a?void 0:a.source;var s;("recommended"===(s=e)||"specialty"===s||"weak"===s||"teaching"===s||"teacher-task"===s)&&(k.value=e)})),l((()=>{H=!0,R(),function(){for(let a=0;a<12;a+=1)U();z=setInterval(U,300)}(),B()})),t((()=>{H=!1,z&&clearInterval(z),F&&clearInterval(F),P&&clearTimeout(P)})),(a,e)=>{const s=h,l=v,t=_;return n(),r(s,{class:"matching-page"},{default:o((()=>[c(s,{class:"matching-shell"},{default:o((()=>[c(s,{class:"top-visual"},{default:o((()=>[c(s,{class:"network"},{default:o((()=>[c(s,{class:"ring ring-large"}),c(s,{class:"ring ring-middle"}),c(s,{class:"ring ring-small"}),c(s,{class:"node node-top"}),c(s,{class:"node node-left"}),c(s,{class:"node node-right"}),(n(!0),i(d,null,u(I.value,(a=>(n(),r(s,{key:a.id,class:"particle",style:p(a.style)},null,8,["style"])))),128))])),_:1})])),_:1}),c(s,{class:"middle-visual"},{default:o((()=>[c(s,{class:"match-bubble"},{default:o((()=>[c(l,null,{default:o((()=>[m(g($.message),1)])),_:1}),c(l,{class:"typing-dots"}),c(s,{class:"bubble-tail"})])),_:1}),c(s,{class:"director-card"},{default:o((()=>[c(t,{class:"director-image",src:y,mode:"aspectFit"})])),_:1}),c(s,{class:"intelligence-area"},{default:o((()=>[c(s,{class:"scan-circle"},{default:o((()=>[c(s,{class:"pulse-ring ring-one"}),c(s,{class:"pulse-ring ring-two"}),c(s,{class:"brain-core"},{default:o((()=>[c(s,{class:"scan-bar"}),c(s,{class:"brain-icon"})])),_:1})])),_:1}),(n(!0),i(d,null,u($.tags,((a,e)=>(n(),r(s,{key:a.label,class:b(["float-tag",[`tag-${a.tone}`,`tag-pos-${e}`]])},{default:o((()=>[c(l,null,{default:o((()=>[m(g(a.label),1)])),_:2},1024)])),_:2},1032,["class"])))),128))])),_:1})])),_:1}),c(s,{class:"bottom-progress"},{default:o((()=>[c(s,{class:"progress-track"},{default:o((()=>[c(s,{class:"progress-fill",style:p({width:`${T.value}%`})},null,8,["style"])])),_:1}),c(l,{class:"progress-subtitle"},{default:o((()=>[m(g($.subtitle),1)])),_:1}),c(s,{class:"security-icon"})])),_:1})])),_:1})])),_:1})}}}),[["__scopeId","data-v-c9c34e1f"]]);export{I as default}; +import{d as a,a as e,r as s,o as l,b as t,e as n,f as r,w as o,i as c,l as i,m as u,F as d,j as m,t as g,H as p,p as f,z as h,y as v,x as _,n as b}from"./index-8wOL_3gR.js";import{_ as y}from"./config-doctor.TgARj_nM.js";import{o as w}from"./uni-app.es.25qqJrzj.js";import{c as M,f as j,s as x}from"./cases.DMDn0OYL.js";import{_ as $}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.B66V4Y6g.js";const I=$(a({__name:"matching",setup(a){const $=e({message:"王主任正在为您智能匹配病例",subtitle:"正在通过大模型计算最适合您的临床案例库...",progressTarget:92,tags:[]}),I=s([]),T=s(0),k=s("recommended");let D=0,z=null,F=null,P=null,q=!1,A=!1,C=!1,H=!1;const O={page:1,page_size:10};function R(){Promise.resolve({message:"王主任正在为您智能匹配病例",subtitle:"正在通过大模型计算最适合您的临床案例库...",progressTarget:92,tags:[{label:"薄弱环节",tone:"secondary"},{label:"主治医级别",tone:"primary"},{label:"高匹配度",tone:"tertiary"},{label:"基于历史偏好",tone:"neutral"}]}).then((a=>{Object.assign($,a)}))}function U(){const a=D++,e=256*Math.random(),s=256*Math.random(),l=150*(Math.random()-.5),t=150*(Math.random()-.5),n=2+3*Math.random();I.value.push({id:a,style:{left:`${e}px`,top:`${s}px`,"--particle-x":`${l}px`,"--particle-y":`${t}px`,animationDuration:`${n}s`}}),setTimeout((()=>{I.value=I.value.filter((e=>e.id!==a))}),1e3*n)}async function B(){var a;M(),q=!1,A=!1,C=!1,function(){F&&clearInterval(F),T.value=0;const a=Date.now();F=setInterval((()=>{const e=Date.now()-a,s=Math.min(1,e/3e3),l=e>3e3?Math.min(7,Math.floor((e-3e3)/1e3)):0;T.value=Math.min(99,Math.round($.progressTarget*s+l))}),100)}(),(a=3e3,new Promise((e=>{setTimeout(e,a)}))).then((()=>{q=!0,E()}));try{const a=await j(k.value,O);if(!H)return;x({source:k.value,query:O,page:a,cachedAt:Date.now()})}catch{}finally{A=!0,E()}}function E(){H&&!C&&q&&A&&(C=!0,T.value=100,F&&clearInterval(F),F=null,P=setTimeout((()=>{f({url:`/pages/cases/cases?source=${encodeURIComponent(k.value)}`})}),120))}return w((a=>{const e=null==a?void 0:a.source;var s;("recommended"===(s=e)||"specialty"===s||"weak"===s||"teaching"===s||"teacher-task"===s)&&(k.value=e)})),l((()=>{H=!0,R(),function(){for(let a=0;a<12;a+=1)U();z=setInterval(U,300)}(),B()})),t((()=>{H=!1,z&&clearInterval(z),F&&clearInterval(F),P&&clearTimeout(P)})),(a,e)=>{const s=h,l=v,t=_;return n(),r(s,{class:"matching-page"},{default:o((()=>[c(s,{class:"matching-shell"},{default:o((()=>[c(s,{class:"top-visual"},{default:o((()=>[c(s,{class:"network"},{default:o((()=>[c(s,{class:"ring ring-large"}),c(s,{class:"ring ring-middle"}),c(s,{class:"ring ring-small"}),c(s,{class:"node node-top"}),c(s,{class:"node node-left"}),c(s,{class:"node node-right"}),(n(!0),i(d,null,u(I.value,(a=>(n(),r(s,{key:a.id,class:"particle",style:p(a.style)},null,8,["style"])))),128))])),_:1})])),_:1}),c(s,{class:"middle-visual"},{default:o((()=>[c(s,{class:"match-bubble"},{default:o((()=>[c(l,null,{default:o((()=>[m(g($.message),1)])),_:1}),c(l,{class:"typing-dots"}),c(s,{class:"bubble-tail"})])),_:1}),c(s,{class:"director-card"},{default:o((()=>[c(t,{class:"director-image",src:y,mode:"aspectFit"})])),_:1}),c(s,{class:"intelligence-area"},{default:o((()=>[c(s,{class:"scan-circle"},{default:o((()=>[c(s,{class:"pulse-ring ring-one"}),c(s,{class:"pulse-ring ring-two"}),c(s,{class:"brain-core"},{default:o((()=>[c(s,{class:"scan-bar"}),c(s,{class:"brain-icon"})])),_:1})])),_:1}),(n(!0),i(d,null,u($.tags,((a,e)=>(n(),r(s,{key:a.label,class:b(["float-tag",[`tag-${a.tone}`,`tag-pos-${e}`]])},{default:o((()=>[c(l,null,{default:o((()=>[m(g(a.label),1)])),_:2},1024)])),_:2},1032,["class"])))),128))])),_:1})])),_:1}),c(s,{class:"bottom-progress"},{default:o((()=>[c(s,{class:"progress-track"},{default:o((()=>[c(s,{class:"progress-fill",style:p({width:`${T.value}%`})},null,8,["style"])])),_:1}),c(l,{class:"progress-subtitle"},{default:o((()=>[m(g($.subtitle),1)])),_:1}),c(s,{class:"security-icon"})])),_:1})])),_:1})])),_:1})}}}),[["__scopeId","data-v-c9c34e1f"]]);export{I as default}; diff --git a/dist/assets/pages-profile-profile-analysis.DXSDR32A.js b/dist/assets/pages-profile-profile-analysis.CWRfwO-9.js similarity index 97% rename from dist/assets/pages-profile-profile-analysis.DXSDR32A.js rename to dist/assets/pages-profile-profile-analysis.CWRfwO-9.js index 54bf2e5..e88e692 100644 --- a/dist/assets/pages-profile-profile-analysis.DXSDR32A.js +++ b/dist/assets/pages-profile-profile-analysis.CWRfwO-9.js @@ -1 +1 @@ -import{d as a,r as s,c as l,o as e,b as t,e as n,f as r,w as u,i as c,K as i,j as o,n as d,t as f,g as v,l as _,m,F as g,L as p,M as h,q as b,z as y,A as x,y as M,x as k,S as $,H as w}from"./index-DfCP9RI3.js";import{_ as j}from"./config-doctor.TgARj_nM.js";import{f as F}from"./profile.CDLVfXPi.js";import{_ as N}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.BCdV446X.js";import"./session.D2K7L0GR.js";const T=N(a({__name:"profile-analysis",setup(a){const N=s(!1),T=s(""),I=s(!1),S=s(null),C=s(!1),L=s(!1),X=s(!1);let Y=null,P=null;const q=l((()=>{var a;const s=null==(a=S.value)?void 0:a.current_score;return"number"==typeof s&&Number.isFinite(s)?Number.isInteger(s)?String(s):s.toFixed(1):"--"})),z=l((()=>{var a;const s=null==(a=S.value)?void 0:a.score_delta_pct;if("number"!=typeof s||!Number.isFinite(s))return"";return`${s>0?"+":""}${s}%`})),A=l((()=>{var a;const s=null==(a=S.value)?void 0:a.score_delta_pct;return"number"==typeof s&&s<0})),B=l((()=>{var a;if(X.value)return"智能分析加载失败,请稍后重试";if(!L.value)return"正在加载您的临床能力分析";const s=null==(a=S.value)?void 0:a.score_delta_pct;if("number"==typeof s&&Number.isFinite(s)){if(s>0)return"相较于近期表现,您的临床能力评分有所提升";if(s<0)return"相较于近期表现,当前评分略有回落,建议继续专项练习"}return"当前已生成您的临床能力评分"})),D=l((()=>{var a;const s=(null==(a=S.value)?void 0:a.recent_trend)||[],l=s.length-1;return s.map(((a,s)=>({label:a.label,score:a.score,height:`${V(a.score)}%`,highlight:s===l})))})),E=l((()=>{var a;const s=((null==(a=S.value)?void 0:a.radar)||[]).slice(0,6),l=s.length;return l<3?[]:s.map(((a,s)=>{const e=-Math.PI/2+2*Math.PI*s/l,t=V(a.score)/100*35,n=50+47*Math.cos(e),r=50+47*Math.sin(e),u=aa(n,14,86),c=aa(r,6,94);return{dimension:a.dimension,displayScore:W(a.score),pointX:Z(50+Math.cos(e)*t),pointY:Z(50+Math.sin(e)*t),labelLeft:`${u}%`,labelTop:`${c}%`}}))})),H=l((()=>E.value.map((a=>`${a.pointX},${a.pointY}`)).join(" "))),K=l((()=>C.value?"分析数据加载中...":X.value?"分析数据加载失败":"暂无趋势数据")),G=l((()=>{var a;return(null==(a=S.value)?void 0:a.comment)||K.value})),J=l((()=>{var a,s;return(null==(s=null==(a=S.value)?void 0:a.weak_dimensions)?void 0:s[0])||"病史采集"})),O=l((()=>{var a;const s=(null==(a=S.value)?void 0:a.current_score)||0;return s>=85?"高级":s>=70?"中级":"基础"})),Q=l((()=>{var a;return(null==(a=S.value)?void 0:a.comment)?`“${S.value.comment}”`:X.value?"“分析数据暂时未能加载,请稍后再试。”":"“正在读取你的训练表现,稍后给出更具体的强化建议。”"}));function R(){"function"==typeof p&&p().length>1?h():b({url:"/pages/profile/profile"})}function U(a){P&&clearTimeout(P),T.value=a,I.value=!0,P=setTimeout((()=>{I.value=!1}),2200)}function V(a){return Number.isFinite(a)?Math.max(0,Math.min(100,Math.round(a))):0}function W(a){return Number.isFinite(a)?Number.isInteger(a)?String(a):a.toFixed(1):"--"}function Z(a){return Math.round(100*a)/100}function aa(a,s,l){return Math.max(s,Math.min(l,Math.round(100*a)/100))}return e((()=>{Y=setTimeout((()=>{N.value=!0}),60),async function(){C.value=!0,X.value=!1;try{S.value=await F(),L.value=!0}catch(a){X.value=!0,U(a instanceof Error?a.message:"智能分析加载失败")}finally{C.value=!1}}()})),t((()=>{Y&&clearTimeout(Y),P&&clearTimeout(P)})),(a,s)=>{const l=y,e=x,t=M,p=k,h=$;return n(),r(l,{class:"analysis-page"},{default:u((()=>[c(l,{class:"analysis-shell"},{default:u((()=>[i("header",{class:"top-bar"},[c(e,{class:"icon-button","aria-label":"返回",onClick:R},{default:u((()=>[c(l,{class:"back-icon"})])),_:1}),c(t,{class:"page-title"},{default:u((()=>[o("智能分析")])),_:1})]),c(h,{class:"analysis-scroll","scroll-y":""},{default:u((()=>[c(l,{class:"analysis-main"},{default:u((()=>[c(l,{class:d(["fade-section",{visible:N.value}])},{default:u((()=>[c(l,{class:"summary-card"},{default:u((()=>[c(l,{class:"summary-copy"},{default:u((()=>[c(l,{class:"summary-head"},{default:u((()=>[c(t,{class:"summary-label"},{default:u((()=>[o("当前能力评分")])),_:1}),z.value?(n(),r(l,{key:0,class:d(["trend-chip",{down:A.value}])},{default:u((()=>[c(l,{class:"trend-icon"}),c(t,null,{default:u((()=>[o(f(z.value),1)])),_:1})])),_:1},8,["class"])):v("",!0)])),_:1}),c(t,{class:"summary-score"},{default:u((()=>[o(f(q.value),1)])),_:1}),c(t,{class:"summary-desc"},{default:u((()=>[o(f(B.value),1)])),_:1})])),_:1})])),_:1})])),_:1},8,["class"]),c(l,{class:d(["fade-section",{visible:N.value}])},{default:u((()=>[c(l,{class:"chart-card"},{default:u((()=>[c(l,{class:"section-head"},{default:u((()=>[c(t,{class:"section-title"},{default:u((()=>[o("近期分数趋势")])),_:1}),c(l,{class:"section-icon"},{default:u((()=>[c(l,{class:"chart-icon"})])),_:1})])),_:1}),c(l,{class:"bar-chart"},{default:u((()=>[(n(!0),_(g,null,m(D.value,(a=>(n(),r(l,{key:`${a.label}-${a.score}`,class:"bar-column"},{default:u((()=>[c(l,{class:"bar-track"},{default:u((()=>[c(l,{class:d(["bar-fill",{highlighted:a.highlight}]),style:w({height:a.height})},null,8,["class","style"])])),_:2},1024),c(t,{class:d(["bar-label",{active:a.highlight}])},{default:u((()=>[o(f(a.label),1)])),_:2},1032,["class"])])),_:2},1024)))),128))])),_:1}),0===D.value.length?(n(),r(l,{key:0,class:"empty-card-text"},{default:u((()=>[o(f(K.value),1)])),_:1})):v("",!0)])),_:1})])),_:1},8,["class"]),c(l,{class:d(["fade-section",{visible:N.value}])},{default:u((()=>[c(l,{class:"chart-card"},{default:u((()=>[c(l,{class:"section-head"},{default:u((()=>[c(t,{class:"section-title"},{default:u((()=>[o("临床胜任力雷达图")])),_:1}),c(l,{class:"section-icon"},{default:u((()=>[c(l,{class:"radar-icon"})])),_:1})])),_:1}),c(l,{class:"radar-wrap"},{default:u((()=>[c(l,{class:"radar-background"},{default:u((()=>[c(l,{class:"radar-ring ring-one"}),c(l,{class:"radar-ring ring-two"}),c(l,{class:"radar-ring ring-three"}),c(l,{class:"radar-ring ring-four"}),c(l,{class:"radar-axis axis-vertical"}),c(l,{class:"radar-axis axis-diagonal-one"}),c(l,{class:"radar-axis axis-diagonal-two"}),c(l,{class:"radar-axis axis-diagonal-three"}),c(l,{class:"radar-axis axis-diagonal-four"})])),_:1}),(n(!0),_(g,null,m(E.value,(a=>(n(),r(l,{key:a.dimension,class:"radar-label dynamic-label",style:w({left:a.labelLeft,top:a.labelTop})},{default:u((()=>[c(t,{class:"radar-label-name"},{default:u((()=>[o(f(a.dimension),1)])),_:2},1024),c(t,{class:"radar-label-score"},{default:u((()=>[o(f(a.displayScore),1)])),_:2},1024)])),_:2},1032,["style"])))),128)),(n(),_("svg",{class:"radar-svg",viewBox:"0 0 100 100"},[H.value?(n(),_("polygon",{key:0,class:"radar-polygon",points:H.value},null,8,["points"])):v("",!0),(n(!0),_(g,null,m(E.value,(a=>(n(),_("circle",{key:`${a.dimension}-point`,cx:a.pointX,cy:a.pointY,r:"3"},null,8,["cx","cy"])))),128))]))])),_:1}),c(l,{class:"analysis-note"},{default:u((()=>[c(t,null,{default:u((()=>[o(f(G.value),1)])),_:1})])),_:1})])),_:1})])),_:1},8,["class"]),c(l,{class:d(["fade-section",{visible:N.value}])},{default:u((()=>[c(t,{class:"mini-title"},{default:u((()=>[o("分项提升建议")])),_:1}),c(l,{class:"suggestion-list"},{default:u((()=>[c(l,{class:"suggestion-card",onClick:s[0]||(s[0]=a=>U("重点回顾内容即将开放"))},{default:u((()=>[c(l,{class:"suggestion-icon-wrap secondary-tone"},{default:u((()=>[c(l,{class:"book-icon"})])),_:1}),c(l,{class:"suggestion-copy"},{default:u((()=>[c(t,{class:"suggestion-title"},{default:u((()=>[o("重点回顾:"+f(J.value),1)])),_:1}),c(t,{class:"suggestion-desc"},{default:u((()=>[o("基于当前能力雷达图的薄弱项推荐")])),_:1})])),_:1}),c(l,{class:"chevron-icon"})])),_:1}),c(l,{class:"suggestion-card",onClick:s[1]||(s[1]=a=>U("专项挑战即将开放"))},{default:u((()=>[c(l,{class:"suggestion-icon-wrap tertiary-tone"},{default:u((()=>[c(l,{class:"brain-icon"})])),_:1}),c(l,{class:"suggestion-copy"},{default:u((()=>[c(t,{class:"suggestion-title"},{default:u((()=>[o("临床思维专项挑战")])),_:1}),c(t,{class:"suggestion-desc"},{default:u((()=>[o("推荐参与难度等级:"+f(O.value),1)])),_:1})])),_:1}),c(l,{class:"chevron-icon"})])),_:1})])),_:1})])),_:1},8,["class"]),c(l,{class:d(["fade-section mentor-section",{visible:N.value}])},{default:u((()=>[c(l,{class:"mentor-card"},{default:u((()=>[c(l,{class:"mentor-head"},{default:u((()=>[c(p,{class:"mentor-avatar",src:j,mode:"aspectFill"}),c(l,null,{default:u((()=>[c(t,{class:"mentor-name"},{default:u((()=>[o("王主任的建议")])),_:1}),c(t,{class:"mentor-role"},{default:u((()=>[o("Director's Mentorship")])),_:1})])),_:1})])),_:1}),c(l,{class:"mentor-bubble"},{default:u((()=>[c(t,null,{default:u((()=>[o(f(Q.value),1)])),_:1})])),_:1})])),_:1})])),_:1},8,["class"])])),_:1})])),_:1}),c(l,{class:d(["toast",{visible:I.value}])},{default:u((()=>[o(f(T.value),1)])),_:1},8,["class"])])),_:1})])),_:1})}}}),[["__scopeId","data-v-f3dc2c7e"]]);export{T as default}; +import{d as a,r as s,c as l,o as e,b as t,e as n,f as r,w as u,i as c,K as i,j as o,n as d,t as f,g as v,l as _,m,F as g,L as p,M as h,q as b,z as y,A as x,y as M,x as k,S as $,H as w}from"./index-8wOL_3gR.js";import{_ as j}from"./config-doctor.TgARj_nM.js";import{f as F}from"./profile.COAzSw-i.js";import{_ as N}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.B66V4Y6g.js";import"./session.LaNXUMh-.js";const T=N(a({__name:"profile-analysis",setup(a){const N=s(!1),T=s(""),I=s(!1),S=s(null),C=s(!1),L=s(!1),X=s(!1);let Y=null,P=null;const q=l((()=>{var a;const s=null==(a=S.value)?void 0:a.current_score;return"number"==typeof s&&Number.isFinite(s)?Number.isInteger(s)?String(s):s.toFixed(1):"--"})),z=l((()=>{var a;const s=null==(a=S.value)?void 0:a.score_delta_pct;if("number"!=typeof s||!Number.isFinite(s))return"";return`${s>0?"+":""}${s}%`})),A=l((()=>{var a;const s=null==(a=S.value)?void 0:a.score_delta_pct;return"number"==typeof s&&s<0})),B=l((()=>{var a;if(X.value)return"智能分析加载失败,请稍后重试";if(!L.value)return"正在加载您的临床能力分析";const s=null==(a=S.value)?void 0:a.score_delta_pct;if("number"==typeof s&&Number.isFinite(s)){if(s>0)return"相较于近期表现,您的临床能力评分有所提升";if(s<0)return"相较于近期表现,当前评分略有回落,建议继续专项练习"}return"当前已生成您的临床能力评分"})),D=l((()=>{var a;const s=(null==(a=S.value)?void 0:a.recent_trend)||[],l=s.length-1;return s.map(((a,s)=>({label:a.label,score:a.score,height:`${V(a.score)}%`,highlight:s===l})))})),E=l((()=>{var a;const s=((null==(a=S.value)?void 0:a.radar)||[]).slice(0,6),l=s.length;return l<3?[]:s.map(((a,s)=>{const e=-Math.PI/2+2*Math.PI*s/l,t=V(a.score)/100*35,n=50+47*Math.cos(e),r=50+47*Math.sin(e),u=aa(n,14,86),c=aa(r,6,94);return{dimension:a.dimension,displayScore:W(a.score),pointX:Z(50+Math.cos(e)*t),pointY:Z(50+Math.sin(e)*t),labelLeft:`${u}%`,labelTop:`${c}%`}}))})),H=l((()=>E.value.map((a=>`${a.pointX},${a.pointY}`)).join(" "))),K=l((()=>C.value?"分析数据加载中...":X.value?"分析数据加载失败":"暂无趋势数据")),G=l((()=>{var a;return(null==(a=S.value)?void 0:a.comment)||K.value})),J=l((()=>{var a,s;return(null==(s=null==(a=S.value)?void 0:a.weak_dimensions)?void 0:s[0])||"病史采集"})),O=l((()=>{var a;const s=(null==(a=S.value)?void 0:a.current_score)||0;return s>=85?"高级":s>=70?"中级":"基础"})),Q=l((()=>{var a;return(null==(a=S.value)?void 0:a.comment)?`“${S.value.comment}”`:X.value?"“分析数据暂时未能加载,请稍后再试。”":"“正在读取你的训练表现,稍后给出更具体的强化建议。”"}));function R(){"function"==typeof p&&p().length>1?h():b({url:"/pages/profile/profile"})}function U(a){P&&clearTimeout(P),T.value=a,I.value=!0,P=setTimeout((()=>{I.value=!1}),2200)}function V(a){return Number.isFinite(a)?Math.max(0,Math.min(100,Math.round(a))):0}function W(a){return Number.isFinite(a)?Number.isInteger(a)?String(a):a.toFixed(1):"--"}function Z(a){return Math.round(100*a)/100}function aa(a,s,l){return Math.max(s,Math.min(l,Math.round(100*a)/100))}return e((()=>{Y=setTimeout((()=>{N.value=!0}),60),async function(){C.value=!0,X.value=!1;try{S.value=await F(),L.value=!0}catch(a){X.value=!0,U(a instanceof Error?a.message:"智能分析加载失败")}finally{C.value=!1}}()})),t((()=>{Y&&clearTimeout(Y),P&&clearTimeout(P)})),(a,s)=>{const l=y,e=x,t=M,p=k,h=$;return n(),r(l,{class:"analysis-page"},{default:u((()=>[c(l,{class:"analysis-shell"},{default:u((()=>[i("header",{class:"top-bar"},[c(e,{class:"icon-button","aria-label":"返回",onClick:R},{default:u((()=>[c(l,{class:"back-icon"})])),_:1}),c(t,{class:"page-title"},{default:u((()=>[o("智能分析")])),_:1})]),c(h,{class:"analysis-scroll","scroll-y":""},{default:u((()=>[c(l,{class:"analysis-main"},{default:u((()=>[c(l,{class:d(["fade-section",{visible:N.value}])},{default:u((()=>[c(l,{class:"summary-card"},{default:u((()=>[c(l,{class:"summary-copy"},{default:u((()=>[c(l,{class:"summary-head"},{default:u((()=>[c(t,{class:"summary-label"},{default:u((()=>[o("当前能力评分")])),_:1}),z.value?(n(),r(l,{key:0,class:d(["trend-chip",{down:A.value}])},{default:u((()=>[c(l,{class:"trend-icon"}),c(t,null,{default:u((()=>[o(f(z.value),1)])),_:1})])),_:1},8,["class"])):v("",!0)])),_:1}),c(t,{class:"summary-score"},{default:u((()=>[o(f(q.value),1)])),_:1}),c(t,{class:"summary-desc"},{default:u((()=>[o(f(B.value),1)])),_:1})])),_:1})])),_:1})])),_:1},8,["class"]),c(l,{class:d(["fade-section",{visible:N.value}])},{default:u((()=>[c(l,{class:"chart-card"},{default:u((()=>[c(l,{class:"section-head"},{default:u((()=>[c(t,{class:"section-title"},{default:u((()=>[o("近期分数趋势")])),_:1}),c(l,{class:"section-icon"},{default:u((()=>[c(l,{class:"chart-icon"})])),_:1})])),_:1}),c(l,{class:"bar-chart"},{default:u((()=>[(n(!0),_(g,null,m(D.value,(a=>(n(),r(l,{key:`${a.label}-${a.score}`,class:"bar-column"},{default:u((()=>[c(l,{class:"bar-track"},{default:u((()=>[c(l,{class:d(["bar-fill",{highlighted:a.highlight}]),style:w({height:a.height})},null,8,["class","style"])])),_:2},1024),c(t,{class:d(["bar-label",{active:a.highlight}])},{default:u((()=>[o(f(a.label),1)])),_:2},1032,["class"])])),_:2},1024)))),128))])),_:1}),0===D.value.length?(n(),r(l,{key:0,class:"empty-card-text"},{default:u((()=>[o(f(K.value),1)])),_:1})):v("",!0)])),_:1})])),_:1},8,["class"]),c(l,{class:d(["fade-section",{visible:N.value}])},{default:u((()=>[c(l,{class:"chart-card"},{default:u((()=>[c(l,{class:"section-head"},{default:u((()=>[c(t,{class:"section-title"},{default:u((()=>[o("临床胜任力雷达图")])),_:1}),c(l,{class:"section-icon"},{default:u((()=>[c(l,{class:"radar-icon"})])),_:1})])),_:1}),c(l,{class:"radar-wrap"},{default:u((()=>[c(l,{class:"radar-background"},{default:u((()=>[c(l,{class:"radar-ring ring-one"}),c(l,{class:"radar-ring ring-two"}),c(l,{class:"radar-ring ring-three"}),c(l,{class:"radar-ring ring-four"}),c(l,{class:"radar-axis axis-vertical"}),c(l,{class:"radar-axis axis-diagonal-one"}),c(l,{class:"radar-axis axis-diagonal-two"}),c(l,{class:"radar-axis axis-diagonal-three"}),c(l,{class:"radar-axis axis-diagonal-four"})])),_:1}),(n(!0),_(g,null,m(E.value,(a=>(n(),r(l,{key:a.dimension,class:"radar-label dynamic-label",style:w({left:a.labelLeft,top:a.labelTop})},{default:u((()=>[c(t,{class:"radar-label-name"},{default:u((()=>[o(f(a.dimension),1)])),_:2},1024),c(t,{class:"radar-label-score"},{default:u((()=>[o(f(a.displayScore),1)])),_:2},1024)])),_:2},1032,["style"])))),128)),(n(),_("svg",{class:"radar-svg",viewBox:"0 0 100 100"},[H.value?(n(),_("polygon",{key:0,class:"radar-polygon",points:H.value},null,8,["points"])):v("",!0),(n(!0),_(g,null,m(E.value,(a=>(n(),_("circle",{key:`${a.dimension}-point`,cx:a.pointX,cy:a.pointY,r:"3"},null,8,["cx","cy"])))),128))]))])),_:1}),c(l,{class:"analysis-note"},{default:u((()=>[c(t,null,{default:u((()=>[o(f(G.value),1)])),_:1})])),_:1})])),_:1})])),_:1},8,["class"]),c(l,{class:d(["fade-section",{visible:N.value}])},{default:u((()=>[c(t,{class:"mini-title"},{default:u((()=>[o("分项提升建议")])),_:1}),c(l,{class:"suggestion-list"},{default:u((()=>[c(l,{class:"suggestion-card",onClick:s[0]||(s[0]=a=>U("重点回顾内容即将开放"))},{default:u((()=>[c(l,{class:"suggestion-icon-wrap secondary-tone"},{default:u((()=>[c(l,{class:"book-icon"})])),_:1}),c(l,{class:"suggestion-copy"},{default:u((()=>[c(t,{class:"suggestion-title"},{default:u((()=>[o("重点回顾:"+f(J.value),1)])),_:1}),c(t,{class:"suggestion-desc"},{default:u((()=>[o("基于当前能力雷达图的薄弱项推荐")])),_:1})])),_:1}),c(l,{class:"chevron-icon"})])),_:1}),c(l,{class:"suggestion-card",onClick:s[1]||(s[1]=a=>U("专项挑战即将开放"))},{default:u((()=>[c(l,{class:"suggestion-icon-wrap tertiary-tone"},{default:u((()=>[c(l,{class:"brain-icon"})])),_:1}),c(l,{class:"suggestion-copy"},{default:u((()=>[c(t,{class:"suggestion-title"},{default:u((()=>[o("临床思维专项挑战")])),_:1}),c(t,{class:"suggestion-desc"},{default:u((()=>[o("推荐参与难度等级:"+f(O.value),1)])),_:1})])),_:1}),c(l,{class:"chevron-icon"})])),_:1})])),_:1})])),_:1},8,["class"]),c(l,{class:d(["fade-section mentor-section",{visible:N.value}])},{default:u((()=>[c(l,{class:"mentor-card"},{default:u((()=>[c(l,{class:"mentor-head"},{default:u((()=>[c(p,{class:"mentor-avatar",src:j,mode:"aspectFill"}),c(l,null,{default:u((()=>[c(t,{class:"mentor-name"},{default:u((()=>[o("王主任的建议")])),_:1}),c(t,{class:"mentor-role"},{default:u((()=>[o("Director's Mentorship")])),_:1})])),_:1})])),_:1}),c(l,{class:"mentor-bubble"},{default:u((()=>[c(t,null,{default:u((()=>[o(f(Q.value),1)])),_:1})])),_:1})])),_:1})])),_:1},8,["class"])])),_:1})])),_:1}),c(l,{class:d(["toast",{visible:I.value}])},{default:u((()=>[o(f(T.value),1)])),_:1},8,["class"])])),_:1})])),_:1})}}}),[["__scopeId","data-v-f3dc2c7e"]]);export{T as default}; diff --git a/dist/assets/pages-profile-profile-records.BLbtOxS8.js b/dist/assets/pages-profile-profile-records.C64CKJK3.js similarity index 95% rename from dist/assets/pages-profile-profile-records.BLbtOxS8.js rename to dist/assets/pages-profile-profile-records.C64CKJK3.js index 37bb0c5..f58b5ce 100644 --- a/dist/assets/pages-profile-profile-records.BLbtOxS8.js +++ b/dist/assets/pages-profile-profile-records.C64CKJK3.js @@ -1 +1 @@ -import{d as e,r as a,c as l,J as s,o as t,b as u,e as c,f as r,w as o,i as n,K as i,j as d,l as v,m as f,F as m,t as _,g as p,n as h,L as g,M as b,q as y,z as k,A as $,y as x,I as T,S as j,k as w,s as C,G as S}from"./index-DfCP9RI3.js";import{a as I}from"./profile.CDLVfXPi.js";import{_ as N}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.BCdV446X.js";import"./session.D2K7L0GR.js";const F=N(e({__name:"profile-records",setup(e){const N=a(""),F=a(""),D=a(!1),V=a([]),M=a({total_cases:0,total_hours:0,avg_accuracy:0}),U=a(1),q=a(0),z=a(!1),A=a(!1),B=a(!1),E=a(!1);let G=null,J=null,K=0;const L=l((()=>[{label:"总病例",value:ee(M.value.total_cases)},{label:"总时长",value:`${ee(M.value.total_hours)}h`},{label:"平均正确率",value:`${ee(M.value.avg_accuracy)}%`,secondary:!0}])),R=l((()=>V.value.map(((e,a)=>({id:e.record_id,title:e.case_title||"未命名病例",department:e.department||"未标注科室",date:Z(e.trained_at),score:ee(e.score),abbr:ae(e),tone:le(a),dimmed:a>2}))))),Y=l((()=>A.value&&!B.value?"训练记录加载中...":E.value?"训练记录加载失败,请稍后重试":N.value.trim()?"没有找到匹配的训练记录":"暂无训练记录")),H=l((()=>A.value&&B.value?"加载更多...":z.value?"上拉加载更多":V.value.length>0?"已经到底啦":""));function O(){"function"==typeof g&&g().length>1?b():y({url:"/pages/profile/profile"})}function P(e){e?(C("clinical-thinking-current-evaluation-id",e),S({url:`/pages/assessment/assessment?evaluation_id=${encodeURIComponent(String(e))}`})):X("未找到报告 ID")}async function Q(e=1,a=!1){const l=++K;A.value=!0,a||(E.value=!1,z.value=!1);try{const s=await I({search:N.value.trim(),page:e});if(l!==K)return;V.value=a?V.value.concat(s.results||[]):s.results||[],M.value=s.summary||M.value,q.value=s.count||V.value.length,U.value=e,z.value=Boolean(s.next)||V.value.length{D.value=!1}),2200)}function Z(e){if(!e)return"--";const a=new Date(e);if(Number.isNaN(a.getTime()))return e;const l=`${a.getMonth()+1}`.padStart(2,"0"),s=`${a.getDate()}`.padStart(2,"0");return`${a.getFullYear()}-${l}-${s}`}function ee(e){return Number.isFinite(e)?Number.isInteger(e)?String(e):e.toFixed(1):"0"}function ae(e){return(e.department||e.case_title||"训").trim().slice(0,1)||"训"}function le(e){const a=["primary","secondary","tertiary"];return a[e%a.length]}return s(N,(()=>{J&&clearTimeout(J),J=setTimeout((()=>{Q(1)}),350)})),t((()=>{Q(1)})),u((()=>{G&&clearTimeout(G),J&&clearTimeout(J)})),(e,a)=>{const l=k,s=$,t=x,u=T,g=j;return c(),r(l,{class:"records-page"},{default:o((()=>[n(l,{class:"records-shell"},{default:o((()=>[i("header",{class:"top-bar"},[n(s,{class:"icon-button","aria-label":"返回",onClick:O},{default:o((()=>[n(l,{class:"back-icon"})])),_:1}),n(t,{class:"page-title"},{default:o((()=>[d("学习记录")])),_:1})]),n(g,{class:"records-scroll","scroll-y":"",onScrolltolower:W},{default:o((()=>[i("main",{class:"records-main"},[i("section",{class:"stats-grid"},[(c(!0),v(m,null,f(L.value,(e=>(c(),r(l,{key:e.label,class:"stat-card"},{default:o((()=>[n(t,{class:"stat-label"},{default:o((()=>[d(_(e.label),1)])),_:2},1024),n(t,{class:h(["stat-value",{secondary:e.secondary}])},{default:o((()=>[d(_(e.value),1)])),_:2},1032,["class"])])),_:2},1024)))),128))]),i("section",{class:"search-section"},[n(l,{class:"search-field"},{default:o((()=>[n(l,{class:"search-icon"}),n(u,{modelValue:N.value,"onUpdate:modelValue":a[0]||(a[0]=e=>N.value=e),class:"search-input",placeholder:"搜索病例标题或科室...","placeholder-class":"search-placeholder",type:"text"},null,8,["modelValue"])])),_:1})]),i("section",{class:"history-section"},[n(t,{class:"section-title"},{default:o((()=>[d("最近训练")])),_:1}),n(l,{class:"record-list"},{default:o((()=>[(c(!0),v(m,null,f(R.value,(e=>(c(),r(l,{key:e.id,class:h(["record-card",{dimmed:e.dimmed}]),onClick:a=>P(e.id)},{default:o((()=>[n(l,{class:h(["case-icon-wrap",e.tone])},{default:o((()=>[n(t,{class:"case-icon-text"},{default:o((()=>[d(_(e.abbr),1)])),_:2},1024)])),_:2},1032,["class"]),n(l,{class:"case-copy"},{default:o((()=>[n(t,{class:"case-title"},{default:o((()=>[d(_(e.title),1)])),_:2},1024),n(l,{class:"case-meta"},{default:o((()=>[n(t,null,{default:o((()=>[d(_(e.department),1)])),_:2},1024),n(t,{class:"dot"},{default:o((()=>[d("•")])),_:1}),n(t,null,{default:o((()=>[d(_(e.date),1)])),_:2},1024)])),_:2},1024)])),_:2},1024),n(l,{class:"score-block"},{default:o((()=>[n(l,{class:"score-row"},{default:o((()=>[n(t,{class:"score-value"},{default:o((()=>[d(_(e.score),1)])),_:2},1024),n(t,{class:"score-unit"},{default:o((()=>[d("分")])),_:1})])),_:2},1024),n(s,{class:"report-button",onClick:w((a=>P(e.id)),["stop"])},{default:o((()=>[n(t,null,{default:o((()=>[d("查看报告")])),_:1}),n(l,{class:"small-chevron"})])),_:2},1032,["onClick"])])),_:2},1024)])),_:2},1032,["class","onClick"])))),128)),0===R.value.length?(c(),r(l,{key:0,class:"empty-state"},{default:o((()=>[n(t,null,{default:o((()=>[d(_(Y.value),1)])),_:1})])),_:1})):p("",!0)])),_:1})]),n(l,{class:"bottom-hint"},{default:o((()=>[n(t,null,{default:o((()=>[d(_(H.value),1)])),_:1})])),_:1})])])),_:1}),n(l,{class:h(["toast",{visible:D.value}])},{default:o((()=>[d(_(F.value),1)])),_:1},8,["class"])])),_:1})])),_:1})}}}),[["__scopeId","data-v-fee61cbe"]]);export{F as default}; +import{d as e,r as a,c as l,J as s,o as t,b as u,e as c,f as r,w as o,i as n,K as i,j as d,l as v,m as f,F as m,t as _,g as p,n as h,L as g,M as b,q as y,z as k,A as $,y as x,I as T,S as j,k as w,s as C,G as S}from"./index-8wOL_3gR.js";import{a as I}from"./profile.COAzSw-i.js";import{_ as N}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.B66V4Y6g.js";import"./session.LaNXUMh-.js";const F=N(e({__name:"profile-records",setup(e){const N=a(""),F=a(""),D=a(!1),V=a([]),M=a({total_cases:0,total_hours:0,avg_accuracy:0}),U=a(1),q=a(0),z=a(!1),A=a(!1),B=a(!1),E=a(!1);let G=null,J=null,K=0;const L=l((()=>[{label:"总病例",value:ee(M.value.total_cases)},{label:"总时长",value:`${ee(M.value.total_hours)}h`},{label:"平均正确率",value:`${ee(M.value.avg_accuracy)}%`,secondary:!0}])),R=l((()=>V.value.map(((e,a)=>({id:e.record_id,title:e.case_title||"未命名病例",department:e.department||"未标注科室",date:Z(e.trained_at),score:ee(e.score),abbr:ae(e),tone:le(a),dimmed:a>2}))))),Y=l((()=>A.value&&!B.value?"训练记录加载中...":E.value?"训练记录加载失败,请稍后重试":N.value.trim()?"没有找到匹配的训练记录":"暂无训练记录")),H=l((()=>A.value&&B.value?"加载更多...":z.value?"上拉加载更多":V.value.length>0?"已经到底啦":""));function O(){"function"==typeof g&&g().length>1?b():y({url:"/pages/profile/profile"})}function P(e){e?(C("clinical-thinking-current-evaluation-id",e),S({url:`/pages/assessment/assessment?evaluation_id=${encodeURIComponent(String(e))}`})):X("未找到报告 ID")}async function Q(e=1,a=!1){const l=++K;A.value=!0,a||(E.value=!1,z.value=!1);try{const s=await I({search:N.value.trim(),page:e});if(l!==K)return;V.value=a?V.value.concat(s.results||[]):s.results||[],M.value=s.summary||M.value,q.value=s.count||V.value.length,U.value=e,z.value=Boolean(s.next)||V.value.length{D.value=!1}),2200)}function Z(e){if(!e)return"--";const a=new Date(e);if(Number.isNaN(a.getTime()))return e;const l=`${a.getMonth()+1}`.padStart(2,"0"),s=`${a.getDate()}`.padStart(2,"0");return`${a.getFullYear()}-${l}-${s}`}function ee(e){return Number.isFinite(e)?Number.isInteger(e)?String(e):e.toFixed(1):"0"}function ae(e){return(e.department||e.case_title||"训").trim().slice(0,1)||"训"}function le(e){const a=["primary","secondary","tertiary"];return a[e%a.length]}return s(N,(()=>{J&&clearTimeout(J),J=setTimeout((()=>{Q(1)}),350)})),t((()=>{Q(1)})),u((()=>{G&&clearTimeout(G),J&&clearTimeout(J)})),(e,a)=>{const l=k,s=$,t=x,u=T,g=j;return c(),r(l,{class:"records-page"},{default:o((()=>[n(l,{class:"records-shell"},{default:o((()=>[i("header",{class:"top-bar"},[n(s,{class:"icon-button","aria-label":"返回",onClick:O},{default:o((()=>[n(l,{class:"back-icon"})])),_:1}),n(t,{class:"page-title"},{default:o((()=>[d("学习记录")])),_:1})]),n(g,{class:"records-scroll","scroll-y":"",onScrolltolower:W},{default:o((()=>[i("main",{class:"records-main"},[i("section",{class:"stats-grid"},[(c(!0),v(m,null,f(L.value,(e=>(c(),r(l,{key:e.label,class:"stat-card"},{default:o((()=>[n(t,{class:"stat-label"},{default:o((()=>[d(_(e.label),1)])),_:2},1024),n(t,{class:h(["stat-value",{secondary:e.secondary}])},{default:o((()=>[d(_(e.value),1)])),_:2},1032,["class"])])),_:2},1024)))),128))]),i("section",{class:"search-section"},[n(l,{class:"search-field"},{default:o((()=>[n(l,{class:"search-icon"}),n(u,{modelValue:N.value,"onUpdate:modelValue":a[0]||(a[0]=e=>N.value=e),class:"search-input",placeholder:"搜索病例标题或科室...","placeholder-class":"search-placeholder",type:"text"},null,8,["modelValue"])])),_:1})]),i("section",{class:"history-section"},[n(t,{class:"section-title"},{default:o((()=>[d("最近训练")])),_:1}),n(l,{class:"record-list"},{default:o((()=>[(c(!0),v(m,null,f(R.value,(e=>(c(),r(l,{key:e.id,class:h(["record-card",{dimmed:e.dimmed}]),onClick:a=>P(e.id)},{default:o((()=>[n(l,{class:h(["case-icon-wrap",e.tone])},{default:o((()=>[n(t,{class:"case-icon-text"},{default:o((()=>[d(_(e.abbr),1)])),_:2},1024)])),_:2},1032,["class"]),n(l,{class:"case-copy"},{default:o((()=>[n(t,{class:"case-title"},{default:o((()=>[d(_(e.title),1)])),_:2},1024),n(l,{class:"case-meta"},{default:o((()=>[n(t,null,{default:o((()=>[d(_(e.department),1)])),_:2},1024),n(t,{class:"dot"},{default:o((()=>[d("•")])),_:1}),n(t,null,{default:o((()=>[d(_(e.date),1)])),_:2},1024)])),_:2},1024)])),_:2},1024),n(l,{class:"score-block"},{default:o((()=>[n(l,{class:"score-row"},{default:o((()=>[n(t,{class:"score-value"},{default:o((()=>[d(_(e.score),1)])),_:2},1024),n(t,{class:"score-unit"},{default:o((()=>[d("分")])),_:1})])),_:2},1024),n(s,{class:"report-button",onClick:w((a=>P(e.id)),["stop"])},{default:o((()=>[n(t,null,{default:o((()=>[d("查看报告")])),_:1}),n(l,{class:"small-chevron"})])),_:2},1032,["onClick"])])),_:2},1024)])),_:2},1032,["class","onClick"])))),128)),0===R.value.length?(c(),r(l,{key:0,class:"empty-state"},{default:o((()=>[n(t,null,{default:o((()=>[d(_(Y.value),1)])),_:1})])),_:1})):p("",!0)])),_:1})]),n(l,{class:"bottom-hint"},{default:o((()=>[n(t,null,{default:o((()=>[d(_(H.value),1)])),_:1})])),_:1})])])),_:1}),n(l,{class:h(["toast",{visible:D.value}])},{default:o((()=>[d(_(F.value),1)])),_:1},8,["class"])])),_:1})])),_:1})}}}),[["__scopeId","data-v-fee61cbe"]]);export{F as default}; diff --git a/dist/assets/pages-profile-profile.Q0dqF9dr.js b/dist/assets/pages-profile-profile.D4u8tO5s.js similarity index 97% rename from dist/assets/pages-profile-profile.Q0dqF9dr.js rename to dist/assets/pages-profile-profile.D4u8tO5s.js index d53ec60..ce2e72c 100644 --- a/dist/assets/pages-profile-profile.Q0dqF9dr.js +++ b/dist/assets/pages-profile-profile.D4u8tO5s.js @@ -1 +1 @@ -import{d as l,r as a,c as e,o as s,b as t,e as n,f as i,w as o,i as c,j as u,t as r,l as d,m as f,F as v,n as _,Q as m,s as p,q as b,G as g,z as y,A as h,y as k,x as w,S as x,g as j,H as C}from"./index-DfCP9RI3.js";import{c as F,d as $}from"./profile.CDLVfXPi.js";import{_ as N}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.BCdV446X.js";import"./session.D2K7L0GR.js";const I=N(l({__name:"profile",emits:["open-settings","go-home"],setup(l,{emit:N}){var I,S;const M=N,T=a("focused"),A=a(""),B=a(!1),G=a(null),H=a(null),O=a(!1);let P=null;const q=m(),z=Boolean(null==(I=null==q?void 0:q.vnode.props)?void 0:I.onGoHome),E=Boolean(null==(S=null==q?void 0:q.vnode.props)?void 0:S.onOpenSettings),Q=[{id:"steady",label:"平稳专注",icon:"satisfied-icon"},{id:"focused",label:"专注度极高",icon:"bolt-icon"},{id:"mindful",label:"沉浸复盘",icon:"self-icon"}],R=[{label:"首席诊断师",icon:"premium-icon",tone:"tertiary"},{label:"极速响应者",icon:"medical-icon",tone:"secondary"},{label:"病例专家",icon:"history-icon",tone:"primary"}],W=[{title:"我的训练记录",desc:"临床实战数据详细分析",icon:"analytics-icon",tone:"record",route:"/pages/profile/profile-records"},{title:"智能分析",desc:"基于AI的临床能力深度洞察",icon:"insights-icon",tone:"analysis",route:"/pages/profile/profile-analysis"}],D=e((()=>{const l=G.value,a=(null==l?void 0:l.real_name)||(null==l?void 0:l.username)||(null==l?void 0:l.phone);return a?`${a} 医生`:O.value?"加载中...":"未登录医生"})),J=e((()=>{var l;return{student:"学员",teacher:"教师",admin:"管理"}[(null==(l=G.value)?void 0:l.role_type)||""]||"PRO"})),K=e((()=>{var l,a;return(a=null==(l=G.value)?void 0:l.avatar)?/^https?:\/\//i.test(a)||a.startsWith("/")?a:`/${a}`:"/static/config-doctor.png"})),L=e((()=>{var l,a,e;return(null==(l=G.value)?void 0:l.training_stage)||(null==(a=G.value)?void 0:a.current_level)||(null==(e=G.value)?void 0:e.title_name)||"未配置阶段"})),U=e((()=>{var l,a;return(null==(l=G.value)?void 0:l.department_name)||(null==(a=G.value)?void 0:a.major)||"未配置科室"})),V=e((()=>{const l=G.value;return[{label:(null==l?void 0:l.institution_name)||"未绑定机构",icon:"school-icon"},{label:(null==l?void 0:l.department_name)||"未配置科室",icon:"location-icon"},{label:(null==l?void 0:l.title_name)||"未配置职称",icon:"calendar-icon"},{label:ll(null==l?void 0:l.practice_years),icon:"timer-icon"}]})),X=e((()=>{var l,a;const e=H.value,s=(null==e?void 0:e.completed_cases)??(null==(l=G.value)?void 0:l.total_case_count)??(null==(a=G.value)?void 0:a.total_training_count)??0,t=(null==e?void 0:e.completed_cases_week)??0,n=(null==e?void 0:e.total_hours)??0,i=(null==e?void 0:e.avg_score)??0,o=(null==e?void 0:e.diagnosis_accuracy)??0;return[{label:"已完成病例",value:al(s),badge:`本周 +${al(t)}`},{label:"累计训练时长",value:al(n),unit:"小时"},{label:"平均分",value:el(i),progress:`${sl(i)}%`},{label:"诊断准确率",value:`${al(o)}%`,trending:!0}]})),Y=e((()=>{var l;return(null==(l=Q.find((l=>l.id===T.value)))?void 0:l.label)||"专注度极高"}));function Z(l){P&&clearTimeout(P),A.value=l,B.value=!0,P=setTimeout((()=>{B.value=!1}),2200)}function ll(l){return l?l.includes("年")?l:`${l}年经验`:"未配置年限"}function al(l){return Number.isFinite(l)?Number.isInteger(l)?String(l):l.toFixed(1):"0"}function el(l){return Number.isFinite(l)?Number.isInteger(l)?String(l):l.toFixed(1):"0"}function sl(l){return Number.isFinite(l)?Math.max(0,Math.min(100,Math.round(l))):0}function tl(){z?M("go-home"):b({url:"/pages/home/home"})}function nl(){E?M("open-settings"):g({url:"/pages/config/config"})}return s((()=>{!async function(){O.value=!0;try{const[l,a]=await Promise.all([F(),$()]);G.value=l,H.value=a,p("clinical-thinking-user-profile",l)}catch(l){Z(l instanceof Error?l.message:"个人信息加载失败")}finally{O.value=!1}}()})),t((()=>{P&&clearTimeout(P)})),(l,a)=>{const e=y,s=h,t=k,m=w,p=x;return n(),i(e,{class:"profile-page"},{default:o((()=>[c(e,{class:"profile-shell"},{default:o((()=>[c(e,{class:"top-app-bar"},{default:o((()=>[c(s,{class:"top-button nav-left","aria-label":"首页",onClick:tl},{default:o((()=>[c(e,{class:"home-icon"})])),_:1}),c(t,{class:"page-title"},{default:o((()=>[u("个人中心")])),_:1}),c(s,{class:"top-button nav-right","aria-label":"配置",onClick:nl},{default:o((()=>[c(e,{class:"settings-icon"})])),_:1})])),_:1}),c(p,{class:"profile-scroll","scroll-y":""},{default:o((()=>[c(e,{class:"profile-content"},{default:o((()=>[c(e,{class:"user-card"},{default:o((()=>[c(e,{class:"avatar-wrap"},{default:o((()=>[c(m,{class:"avatar-image",src:K.value,mode:"aspectFill"},null,8,["src"]),c(t,{class:"pro-badge"},{default:o((()=>[u(r(J.value),1)])),_:1})])),_:1}),c(e,{class:"user-copy"},{default:o((()=>[c(t,{class:"doctor-name"},{default:o((()=>[u(r(D.value),1)])),_:1}),c(e,{class:"tag-row"},{default:o((()=>[c(t,{class:"tag primary-tag"},{default:o((()=>[u(r(L.value),1)])),_:1}),c(t,{class:"tag secondary-tag"},{default:o((()=>[u(r(U.value),1)])),_:1})])),_:1}),c(e,{class:"meta-grid"},{default:o((()=>[(n(!0),d(v,null,f(V.value,(l=>(n(),i(e,{key:l.label,class:"meta-item"},{default:o((()=>[c(e,{class:_(["meta-icon",l.icon])},null,8,["class"]),c(t,null,{default:o((()=>[u(r(l.label),1)])),_:2},1024)])),_:2},1024)))),128))])),_:1})])),_:1})])),_:1}),c(e,{class:"section-block"},{default:o((()=>[c(e,{class:"section-title-row"},{default:o((()=>[c(t,{class:"section-title"},{default:o((()=>[u("专注状态与荣誉墙")])),_:1})])),_:1}),c(e,{class:"mood-card"},{default:o((()=>[c(e,null,{default:o((()=>[c(t,{class:"sub-label"},{default:o((()=>[u("今日学习状态")])),_:1}),c(t,{class:"mood-title"},{default:o((()=>[u(r(Y.value),1)])),_:1})])),_:1}),c(e,{class:"mood-actions"},{default:o((()=>[(n(),d(v,null,f(Q,(l=>c(s,{key:l.id,class:_(["mood-button",{active:T.value===l.id}]),"aria-label":l.label,onClick:a=>T.value=l.id},{default:o((()=>[c(e,{class:_(["mood-icon",l.icon])},null,8,["class"])])),_:2},1032,["class","aria-label","onClick"]))),64))])),_:1})])),_:1}),c(e,{class:"medal-card"},{default:o((()=>[c(e,{class:"medal-head"},{default:o((()=>[c(t,{class:"sub-label"},{default:o((()=>[u("勋章墙")])),_:1}),c(s,{class:"text-link",onClick:a[0]||(a[0]=l=>Z("勋章墙详情即将开放"))},{default:o((()=>[u("查看全部 (12)")])),_:1})])),_:1}),c(e,{class:"medal-list"},{default:o((()=>[(n(),d(v,null,f(R,(l=>c(e,{key:l.label,class:"medal-item"},{default:o((()=>[c(e,{class:_(["medal-circle",l.tone])},{default:o((()=>[c(e,{class:_(["medal-icon",l.icon])},null,8,["class"])])),_:2},1032,["class"]),c(t,null,{default:o((()=>[u(r(l.label),1)])),_:2},1024)])),_:2},1024))),64))])),_:1})])),_:1})])),_:1}),c(e,{class:"action-stack"},{default:o((()=>[(n(),d(v,null,f(W,(l=>c(s,{key:l.title,class:_(["entry-card",l.tone]),onClick:a=>function(l){l.route?g({url:l.route}):Z(l.toast||"功能即将开放")}(l)},{default:o((()=>[c(e,{class:"entry-main"},{default:o((()=>[c(e,{class:"entry-icon-wrap"},{default:o((()=>[c(e,{class:_(["entry-icon",l.icon])},null,8,["class"])])),_:2},1024),c(e,{class:"entry-copy"},{default:o((()=>[c(t,{class:"entry-title"},{default:o((()=>[u(r(l.title),1)])),_:2},1024),c(t,{class:"entry-desc"},{default:o((()=>[u(r(l.desc),1)])),_:2},1024)])),_:2},1024)])),_:2},1024),c(e,{class:"chevron-icon"})])),_:2},1032,["class","onClick"]))),64))])),_:1}),c(e,{class:"section-block"},{default:o((()=>[c(t,{class:"section-title"},{default:o((()=>[u("临床核心能力指标")])),_:1}),c(e,{class:"metric-grid"},{default:o((()=>[(n(!0),d(v,null,f(X.value,(l=>(n(),i(e,{key:l.label,class:"metric-card"},{default:o((()=>[c(t,{class:"sub-label"},{default:o((()=>[u(r(l.label),1)])),_:2},1024),c(e,{class:"metric-value-row"},{default:o((()=>[c(t,{class:"metric-value"},{default:o((()=>[u(r(l.value),1)])),_:2},1024),l.badge?(n(),i(t,{key:0,class:"metric-badge"},{default:o((()=>[u(r(l.badge),1)])),_:2},1024)):j("",!0),l.unit?(n(),i(t,{key:1,class:"metric-unit"},{default:o((()=>[u(r(l.unit),1)])),_:2},1024)):j("",!0),l.progress?(n(),i(e,{key:2,class:"mini-progress"},{default:o((()=>[c(e,{class:"mini-progress-fill",style:C({width:l.progress})},null,8,["style"])])),_:2},1024)):j("",!0),l.trending?(n(),i(e,{key:3,class:"trend-icon"})):j("",!0)])),_:2},1024)])),_:2},1024)))),128))])),_:1})])),_:1})])),_:1})])),_:1}),c(e,{class:_(["toast",{visible:B.value}])},{default:o((()=>[u(r(A.value),1)])),_:1},8,["class"])])),_:1})])),_:1})}}}),[["__scopeId","data-v-b88301c5"]]);export{I as default}; +import{d as l,r as a,c as e,o as s,b as t,e as n,f as i,w as o,i as c,j as u,t as r,l as d,m as f,F as v,n as _,Q as m,s as p,q as b,G as g,z as y,A as h,y as k,x as w,S as x,g as j,H as C}from"./index-8wOL_3gR.js";import{c as F,d as $}from"./profile.COAzSw-i.js";import{_ as N}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.B66V4Y6g.js";import"./session.LaNXUMh-.js";const I=N(l({__name:"profile",emits:["open-settings","go-home"],setup(l,{emit:N}){var I,S;const M=N,T=a("focused"),A=a(""),B=a(!1),G=a(null),H=a(null),O=a(!1);let P=null;const q=m(),z=Boolean(null==(I=null==q?void 0:q.vnode.props)?void 0:I.onGoHome),E=Boolean(null==(S=null==q?void 0:q.vnode.props)?void 0:S.onOpenSettings),Q=[{id:"steady",label:"平稳专注",icon:"satisfied-icon"},{id:"focused",label:"专注度极高",icon:"bolt-icon"},{id:"mindful",label:"沉浸复盘",icon:"self-icon"}],R=[{label:"首席诊断师",icon:"premium-icon",tone:"tertiary"},{label:"极速响应者",icon:"medical-icon",tone:"secondary"},{label:"病例专家",icon:"history-icon",tone:"primary"}],W=[{title:"我的训练记录",desc:"临床实战数据详细分析",icon:"analytics-icon",tone:"record",route:"/pages/profile/profile-records"},{title:"智能分析",desc:"基于AI的临床能力深度洞察",icon:"insights-icon",tone:"analysis",route:"/pages/profile/profile-analysis"}],D=e((()=>{const l=G.value,a=(null==l?void 0:l.real_name)||(null==l?void 0:l.username)||(null==l?void 0:l.phone);return a?`${a} 医生`:O.value?"加载中...":"未登录医生"})),J=e((()=>{var l;return{student:"学员",teacher:"教师",admin:"管理"}[(null==(l=G.value)?void 0:l.role_type)||""]||"PRO"})),K=e((()=>{var l,a;return(a=null==(l=G.value)?void 0:l.avatar)?/^https?:\/\//i.test(a)||a.startsWith("/")?a:`/${a}`:"/static/config-doctor.png"})),L=e((()=>{var l,a,e;return(null==(l=G.value)?void 0:l.training_stage)||(null==(a=G.value)?void 0:a.current_level)||(null==(e=G.value)?void 0:e.title_name)||"未配置阶段"})),U=e((()=>{var l,a;return(null==(l=G.value)?void 0:l.department_name)||(null==(a=G.value)?void 0:a.major)||"未配置科室"})),V=e((()=>{const l=G.value;return[{label:(null==l?void 0:l.institution_name)||"未绑定机构",icon:"school-icon"},{label:(null==l?void 0:l.department_name)||"未配置科室",icon:"location-icon"},{label:(null==l?void 0:l.title_name)||"未配置职称",icon:"calendar-icon"},{label:ll(null==l?void 0:l.practice_years),icon:"timer-icon"}]})),X=e((()=>{var l,a;const e=H.value,s=(null==e?void 0:e.completed_cases)??(null==(l=G.value)?void 0:l.total_case_count)??(null==(a=G.value)?void 0:a.total_training_count)??0,t=(null==e?void 0:e.completed_cases_week)??0,n=(null==e?void 0:e.total_hours)??0,i=(null==e?void 0:e.avg_score)??0,o=(null==e?void 0:e.diagnosis_accuracy)??0;return[{label:"已完成病例",value:al(s),badge:`本周 +${al(t)}`},{label:"累计训练时长",value:al(n),unit:"小时"},{label:"平均分",value:el(i),progress:`${sl(i)}%`},{label:"诊断准确率",value:`${al(o)}%`,trending:!0}]})),Y=e((()=>{var l;return(null==(l=Q.find((l=>l.id===T.value)))?void 0:l.label)||"专注度极高"}));function Z(l){P&&clearTimeout(P),A.value=l,B.value=!0,P=setTimeout((()=>{B.value=!1}),2200)}function ll(l){return l?l.includes("年")?l:`${l}年经验`:"未配置年限"}function al(l){return Number.isFinite(l)?Number.isInteger(l)?String(l):l.toFixed(1):"0"}function el(l){return Number.isFinite(l)?Number.isInteger(l)?String(l):l.toFixed(1):"0"}function sl(l){return Number.isFinite(l)?Math.max(0,Math.min(100,Math.round(l))):0}function tl(){z?M("go-home"):b({url:"/pages/home/home"})}function nl(){E?M("open-settings"):g({url:"/pages/config/config"})}return s((()=>{!async function(){O.value=!0;try{const[l,a]=await Promise.all([F(),$()]);G.value=l,H.value=a,p("clinical-thinking-user-profile",l)}catch(l){Z(l instanceof Error?l.message:"个人信息加载失败")}finally{O.value=!1}}()})),t((()=>{P&&clearTimeout(P)})),(l,a)=>{const e=y,s=h,t=k,m=w,p=x;return n(),i(e,{class:"profile-page"},{default:o((()=>[c(e,{class:"profile-shell"},{default:o((()=>[c(e,{class:"top-app-bar"},{default:o((()=>[c(s,{class:"top-button nav-left","aria-label":"首页",onClick:tl},{default:o((()=>[c(e,{class:"home-icon"})])),_:1}),c(t,{class:"page-title"},{default:o((()=>[u("个人中心")])),_:1}),c(s,{class:"top-button nav-right","aria-label":"配置",onClick:nl},{default:o((()=>[c(e,{class:"settings-icon"})])),_:1})])),_:1}),c(p,{class:"profile-scroll","scroll-y":""},{default:o((()=>[c(e,{class:"profile-content"},{default:o((()=>[c(e,{class:"user-card"},{default:o((()=>[c(e,{class:"avatar-wrap"},{default:o((()=>[c(m,{class:"avatar-image",src:K.value,mode:"aspectFill"},null,8,["src"]),c(t,{class:"pro-badge"},{default:o((()=>[u(r(J.value),1)])),_:1})])),_:1}),c(e,{class:"user-copy"},{default:o((()=>[c(t,{class:"doctor-name"},{default:o((()=>[u(r(D.value),1)])),_:1}),c(e,{class:"tag-row"},{default:o((()=>[c(t,{class:"tag primary-tag"},{default:o((()=>[u(r(L.value),1)])),_:1}),c(t,{class:"tag secondary-tag"},{default:o((()=>[u(r(U.value),1)])),_:1})])),_:1}),c(e,{class:"meta-grid"},{default:o((()=>[(n(!0),d(v,null,f(V.value,(l=>(n(),i(e,{key:l.label,class:"meta-item"},{default:o((()=>[c(e,{class:_(["meta-icon",l.icon])},null,8,["class"]),c(t,null,{default:o((()=>[u(r(l.label),1)])),_:2},1024)])),_:2},1024)))),128))])),_:1})])),_:1})])),_:1}),c(e,{class:"section-block"},{default:o((()=>[c(e,{class:"section-title-row"},{default:o((()=>[c(t,{class:"section-title"},{default:o((()=>[u("专注状态与荣誉墙")])),_:1})])),_:1}),c(e,{class:"mood-card"},{default:o((()=>[c(e,null,{default:o((()=>[c(t,{class:"sub-label"},{default:o((()=>[u("今日学习状态")])),_:1}),c(t,{class:"mood-title"},{default:o((()=>[u(r(Y.value),1)])),_:1})])),_:1}),c(e,{class:"mood-actions"},{default:o((()=>[(n(),d(v,null,f(Q,(l=>c(s,{key:l.id,class:_(["mood-button",{active:T.value===l.id}]),"aria-label":l.label,onClick:a=>T.value=l.id},{default:o((()=>[c(e,{class:_(["mood-icon",l.icon])},null,8,["class"])])),_:2},1032,["class","aria-label","onClick"]))),64))])),_:1})])),_:1}),c(e,{class:"medal-card"},{default:o((()=>[c(e,{class:"medal-head"},{default:o((()=>[c(t,{class:"sub-label"},{default:o((()=>[u("勋章墙")])),_:1}),c(s,{class:"text-link",onClick:a[0]||(a[0]=l=>Z("勋章墙详情即将开放"))},{default:o((()=>[u("查看全部 (12)")])),_:1})])),_:1}),c(e,{class:"medal-list"},{default:o((()=>[(n(),d(v,null,f(R,(l=>c(e,{key:l.label,class:"medal-item"},{default:o((()=>[c(e,{class:_(["medal-circle",l.tone])},{default:o((()=>[c(e,{class:_(["medal-icon",l.icon])},null,8,["class"])])),_:2},1032,["class"]),c(t,null,{default:o((()=>[u(r(l.label),1)])),_:2},1024)])),_:2},1024))),64))])),_:1})])),_:1})])),_:1}),c(e,{class:"action-stack"},{default:o((()=>[(n(),d(v,null,f(W,(l=>c(s,{key:l.title,class:_(["entry-card",l.tone]),onClick:a=>function(l){l.route?g({url:l.route}):Z(l.toast||"功能即将开放")}(l)},{default:o((()=>[c(e,{class:"entry-main"},{default:o((()=>[c(e,{class:"entry-icon-wrap"},{default:o((()=>[c(e,{class:_(["entry-icon",l.icon])},null,8,["class"])])),_:2},1024),c(e,{class:"entry-copy"},{default:o((()=>[c(t,{class:"entry-title"},{default:o((()=>[u(r(l.title),1)])),_:2},1024),c(t,{class:"entry-desc"},{default:o((()=>[u(r(l.desc),1)])),_:2},1024)])),_:2},1024)])),_:2},1024),c(e,{class:"chevron-icon"})])),_:2},1032,["class","onClick"]))),64))])),_:1}),c(e,{class:"section-block"},{default:o((()=>[c(t,{class:"section-title"},{default:o((()=>[u("临床核心能力指标")])),_:1}),c(e,{class:"metric-grid"},{default:o((()=>[(n(!0),d(v,null,f(X.value,(l=>(n(),i(e,{key:l.label,class:"metric-card"},{default:o((()=>[c(t,{class:"sub-label"},{default:o((()=>[u(r(l.label),1)])),_:2},1024),c(e,{class:"metric-value-row"},{default:o((()=>[c(t,{class:"metric-value"},{default:o((()=>[u(r(l.value),1)])),_:2},1024),l.badge?(n(),i(t,{key:0,class:"metric-badge"},{default:o((()=>[u(r(l.badge),1)])),_:2},1024)):j("",!0),l.unit?(n(),i(t,{key:1,class:"metric-unit"},{default:o((()=>[u(r(l.unit),1)])),_:2},1024)):j("",!0),l.progress?(n(),i(e,{key:2,class:"mini-progress"},{default:o((()=>[c(e,{class:"mini-progress-fill",style:C({width:l.progress})},null,8,["style"])])),_:2},1024)):j("",!0),l.trending?(n(),i(e,{key:3,class:"trend-icon"})):j("",!0)])),_:2},1024)])),_:2},1024)))),128))])),_:1})])),_:1})])),_:1})])),_:1}),c(e,{class:_(["toast",{visible:B.value}])},{default:o((()=>[u(r(A.value),1)])),_:1},8,["class"])])),_:1})])),_:1})}}}),[["__scopeId","data-v-b88301c5"]]);export{I as default}; diff --git a/dist/assets/pages-scenario-scenario.LpxrrFKu.js b/dist/assets/pages-scenario-scenario.Ihs6KhW1.js similarity index 97% rename from dist/assets/pages-scenario-scenario.LpxrrFKu.js rename to dist/assets/pages-scenario-scenario.Ihs6KhW1.js index 88709bc..fd46fdb 100644 --- a/dist/assets/pages-scenario-scenario.LpxrrFKu.js +++ b/dist/assets/pages-scenario-scenario.Ihs6KhW1.js @@ -1 +1 @@ -import{d as e,a,r as l,c as s,o as t,b as o,e as n,f as c,w as i,i as u,j as r,t as d,l as m,m as v,F as p,n as f,s as _,G as g,x as b,z as h,y,A as k,S as w}from"./index-DfCP9RI3.js";import{_ as C}from"./config-doctor.TgARj_nM.js";import{r as G,a as j}from"./cases.Q7p7j9rz.js";import{F as I,a as N,r as x,c as E}from"./session.D2K7L0GR.js";import{_ as T}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.BCdV446X.js";const O=""+new URL("config-hospital-BKoUC35q.png",import.meta.url).href,A={environments:[{value:"outpatient",label:"门诊"},{value:"emergency",label:"急诊"},{value:"ward",label:"病房"}],ageGroups:[{value:"child",label:"儿童"},{value:"youth",label:"青年"},{value:"middle_aged",label:"中年"},{value:"elderly",label:"老年"}],educations:[{value:"primary_or_below",label:"小学及以下"},{value:"secondary",label:"中等教育"},{value:"higher",label:"高等教育"}],personalities:[{value:"calm",label:"平和"},{value:"anxious",label:"焦虑"},{value:"impatient",label:"急躁"},{value:"cooperative",label:"配合"},{value:"suspicious",label:"多疑"}]};function F(e,a,l){const s=null==e?void 0:e[a];return Array.isArray(s)?s:s&&"object"==typeof s?Object.entries(s).map((([e,a])=>({value:e,label:String(a)}))):l}async function S(e){var a;const l=await fetch(`${I}/training-config/options?case_id=${encodeURIComponent(e)}`,{method:"GET",headers:N()});if(!l.ok)throw new Error(await x(l));const s=await l.json();if("OK"!==s.code||!(null==(a=s.data)?void 0:a.recommended))throw new Error(s.message||"推荐配置加载失败");return{recommended:{environment:(t=s.data).recommended.visit_environment,ageGroup:t.recommended.age_group,education:t.recommended.education_level,personality:t.recommended.personality},recommendedLabels:{environment:t.recommended_labels.visit_environment,ageGroup:t.recommended_labels.age_group,education:t.recommended_labels.education_level,personality:t.recommended_labels.personality},options:{environments:F(t.options,"visit_environment",A.environments),ageGroups:F(t.options,"age_group",A.ageGroups),educations:F(t.options,"education_level",A.educations),personalities:F(t.options,"personality",A.personalities)}};var t}function $(e){const a=Number(e.caseId);if(Number.isInteger(a)&&a>0)return a;const l=Number(e.caseNo);if(Number.isInteger(l)&&l>0)return l;const s=e.caseId.match(/\d+/),t=s?Number(s[0]):0;if(Number.isInteger(t)&&t>0)return t;throw new Error("病例 ID 无效,无法新建会话")}const U=T(e({__name:"scenario",props:{caseItem:{}},setup(e){const I=e,N=a({environment:"outpatient",ageGroup:"youth",education:"higher",personality:"calm"}),x=l([]),T=l(A),F=l(""),U=l(!1),D=l(""),K=l(!1),L=l(!1),R=l(null);let q=null;const z=s((()=>I.caseItem||R.value)),B=s((()=>z.value?`${z.value.title}(${z.value.caseNo})`:"未选择病例"));async function P(){const e=await Promise.resolve({recommendations:[{id:"typical-outpatient",title:"典型门诊病例",desc:"门诊常规病例:针对初学者设计的标准化沟通流程。",tags:["中年","配合"],defaults:{environment:"outpatient",ageGroup:"middle_aged",education:"higher",personality:"calm"}},{id:"emergency-crisis",title:"急诊重症危机",desc:"急诊危重:急性心梗紧急入院。",tags:["老年","急躁"],defaults:{environment:"emergency",ageGroup:"elderly",education:"secondary",personality:"impatient"}}],options:A});x.value=e.recommendations,T.value=e.options;try{const e=j(z.value);if(!e)return;const a=await S(e);T.value=a.options,Object.assign(N,a.recommended)}catch(a){Q(a instanceof Error?a.message:"推荐配置加载失败")}}function H(e,a){N[e]=a,F.value=""}function J(){L.value=!L.value}function M(){var e;z.value?(U.value=!0,(e={...N,caseId:z.value.id,caseNo:z.value.caseNo,mode:"teaching"===z.value.mode?"teaching":"practice",recommendationId:F.value||void 0},E({case_id:$(e),training_type:"diagnosis_treatment",mode:e.mode,score_type:"percentage",patient_config:{visit_environment:e.environment,age_group:e.ageGroup,education_level:e.education,personality:e.personality}}).then((a=>({id:a.session_code,...e,session:a,createdAt:(new Date).toISOString()})))).then((e=>{_("clinical-thinking-scenario",e),Q("模拟场景已生成"),setTimeout((()=>{g({url:"/pages/chat/chat"})}),450)})).catch((e=>{Q(e instanceof Error?e.message:"模拟场景生成失败")})).finally((()=>{setTimeout((()=>{U.value=!1}),600)}))):Q("请先选择病例")}function Q(e){q&&clearTimeout(q),D.value=e,K.value=!0,q=setTimeout((()=>{K.value=!1}),2200)}return t((()=>{R.value=G(),P()})),o((()=>{q&&clearTimeout(q)})),(e,a)=>{const l=b,s=h,t=y,o=k,_=w;return n(),c(s,{class:"scenario-page"},{default:i((()=>[u(s,{class:"scenario-shell"},{default:i((()=>[u(s,{class:"hero"},{default:i((()=>[u(l,{class:"hero-image",src:O,mode:"aspectFill"}),u(s,{class:"hero-fade"})])),_:1}),u(s,{class:"director-row"},{default:i((()=>[u(s,{class:"director-avatar"},{default:i((()=>[u(l,{class:"director-image",src:C,mode:"aspectFit"})])),_:1}),u(s,{class:"speech-bubble"},{default:i((()=>[u(t,null,{default:i((()=>[r("欢迎回来!请根据您的教学目标配置临床场景。")])),_:1})])),_:1})])),_:1}),u(_,{class:"config-scroll","scroll-y":""},{default:i((()=>[u(s,{class:"selected-case"},{default:i((()=>[u(t,{class:"case-label"},{default:i((()=>[r("当前病例")])),_:1}),u(t,{class:"case-title"},{default:i((()=>[r(d(B.value),1)])),_:1})])),_:1}),u(s,{class:"section"},{default:i((()=>[u(s,{class:"section-title"},{default:i((()=>[u(s,{class:"star-icon"}),u(t,null,{default:i((()=>[r("王主任推荐")])),_:1})])),_:1}),u(s,{class:"recommend-list"},{default:i((()=>[(n(!0),m(p,null,v(x.value,(e=>(n(),c(o,{key:e.id,class:f(["recommend-card",{active:F.value===e.id}]),onClick:a=>function(e){F.value=e.id,Object.assign(N,e.defaults)}(e)},{default:i((()=>[u(s,{class:"recommend-head"},{default:i((()=>[u(t,{class:"recommend-icon"},{default:i((()=>[r(d(e.tags[0]),1)])),_:2},1024),u(t,{class:"recommend-title"},{default:i((()=>[r(d(e.title),1)])),_:2},1024)])),_:2},1024),u(t,{class:"recommend-desc"},{default:i((()=>[r(d(e.desc),1)])),_:2},1024),u(s,{class:"tag-row"},{default:i((()=>[(n(!0),m(p,null,v(e.tags,(e=>(n(),c(t,{key:e,class:f(["tag",{danger:"急躁"===e}])},{default:i((()=>[r(d(e),1)])),_:2},1032,["class"])))),128))])),_:2},1024)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1}),u(s,{class:f(["section custom-section",{expanded:L.value}])},{default:i((()=>[u(o,{class:f(["section-title custom-config-toggle",{expanded:L.value}]),"aria-label":L.value?"收起自定义配置":"展开自定义配置",onClick:J},{default:i((()=>[u(s,{class:"tune-icon"}),u(t,null,{default:i((()=>[r("自定义配置")])),_:1}),u(s,{class:"custom-toggle-spacer"}),u(s,{class:"toggle-chevron"})])),_:1},8,["class","aria-label"]),u(s,{class:f(["custom-options",{expanded:L.value}])},{default:i((()=>[u(s,{class:"option-block"},{default:i((()=>[u(s,{class:"option-label"},{default:i((()=>[u(s,{class:"location-icon"}),u(t,null,{default:i((()=>[r("就诊环境")])),_:1})])),_:1}),u(s,{class:"option-grid grid-3"},{default:i((()=>[(n(!0),m(p,null,v(T.value.environments,(e=>(n(),c(o,{key:e.value,class:f(["choice",{selected:N.environment===e.value}]),onClick:a=>H("environment",e.value)},{default:i((()=>[r(d(e.label),1)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1}),u(s,{class:"option-block"},{default:i((()=>[u(s,{class:"option-label"},{default:i((()=>[u(s,{class:"cake-icon"}),u(t,null,{default:i((()=>[r("年龄段")])),_:1})])),_:1}),u(s,{class:"option-grid grid-4"},{default:i((()=>[(n(!0),m(p,null,v(T.value.ageGroups,(e=>(n(),c(o,{key:e.value,class:f(["choice small",{selected:N.ageGroup===e.value}]),onClick:a=>H("ageGroup",e.value)},{default:i((()=>[r(d(e.label),1)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1}),u(s,{class:"option-block"},{default:i((()=>[u(s,{class:"option-label"},{default:i((()=>[u(s,{class:"school-icon"}),u(t,null,{default:i((()=>[r("文化程度")])),_:1})])),_:1}),u(s,{class:"option-grid grid-3"},{default:i((()=>[(n(!0),m(p,null,v(T.value.educations,(e=>(n(),c(o,{key:e.value,class:f(["choice mini",{selected:N.education===e.value}]),onClick:a=>H("education",e.value)},{default:i((()=>[r(d(e.label),1)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1}),u(s,{class:"option-block personality-block"},{default:i((()=>[u(s,{class:"option-label"},{default:i((()=>[u(s,{class:"mind-icon"}),u(t,null,{default:i((()=>[r("性格")])),_:1})])),_:1}),u(s,{class:"option-grid grid-3"},{default:i((()=>[(n(!0),m(p,null,v(T.value.personalities,(e=>(n(),c(o,{key:e.value,class:f(["choice",{selected:N.personality===e.value}]),onClick:a=>H("personality",e.value)},{default:i((()=>[r(d(e.label),1)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1})])),_:1},8,["class"])])),_:1},8,["class"])])),_:1}),u(s,{class:"bottom-action"},{default:i((()=>[u(o,{class:"generate-button",disabled:U.value,onClick:M},{default:i((()=>[u(t,null,{default:i((()=>[r(d(U.value?"正在生成...":"生成模拟场景"),1)])),_:1}),u(s,{class:"arrow-icon"})])),_:1},8,["disabled"])])),_:1})])),_:1}),u(s,{class:f(["toast",{visible:K.value}])},{default:i((()=>[r(d(D.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-18785eb2"]]);export{U as default}; +import{d as e,a,r as l,c as s,o as t,b as o,e as n,f as c,w as i,i as u,j as r,t as d,l as m,m as v,F as p,n as f,s as _,G as g,x as b,z as h,y,A as k,S as w}from"./index-8wOL_3gR.js";import{_ as C}from"./config-doctor.TgARj_nM.js";import{r as G,a as j}from"./cases.DMDn0OYL.js";import{F as I,a as N,r as x,c as E}from"./session.LaNXUMh-.js";import{_ as T}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.B66V4Y6g.js";const O=""+new URL("config-hospital-BKoUC35q.png",import.meta.url).href,A={environments:[{value:"outpatient",label:"门诊"},{value:"emergency",label:"急诊"},{value:"ward",label:"病房"}],ageGroups:[{value:"child",label:"儿童"},{value:"youth",label:"青年"},{value:"middle_aged",label:"中年"},{value:"elderly",label:"老年"}],educations:[{value:"primary_or_below",label:"小学及以下"},{value:"secondary",label:"中等教育"},{value:"higher",label:"高等教育"}],personalities:[{value:"calm",label:"平和"},{value:"anxious",label:"焦虑"},{value:"impatient",label:"急躁"},{value:"cooperative",label:"配合"},{value:"suspicious",label:"多疑"}]};function F(e,a,l){const s=null==e?void 0:e[a];return Array.isArray(s)?s:s&&"object"==typeof s?Object.entries(s).map((([e,a])=>({value:e,label:String(a)}))):l}async function S(e){var a;const l=await fetch(`${I}/training-config/options?case_id=${encodeURIComponent(e)}`,{method:"GET",headers:N()});if(!l.ok)throw new Error(await x(l));const s=await l.json();if("OK"!==s.code||!(null==(a=s.data)?void 0:a.recommended))throw new Error(s.message||"推荐配置加载失败");return{recommended:{environment:(t=s.data).recommended.visit_environment,ageGroup:t.recommended.age_group,education:t.recommended.education_level,personality:t.recommended.personality},recommendedLabels:{environment:t.recommended_labels.visit_environment,ageGroup:t.recommended_labels.age_group,education:t.recommended_labels.education_level,personality:t.recommended_labels.personality},options:{environments:F(t.options,"visit_environment",A.environments),ageGroups:F(t.options,"age_group",A.ageGroups),educations:F(t.options,"education_level",A.educations),personalities:F(t.options,"personality",A.personalities)}};var t}function $(e){const a=Number(e.caseId);if(Number.isInteger(a)&&a>0)return a;const l=Number(e.caseNo);if(Number.isInteger(l)&&l>0)return l;const s=e.caseId.match(/\d+/),t=s?Number(s[0]):0;if(Number.isInteger(t)&&t>0)return t;throw new Error("病例 ID 无效,无法新建会话")}const U=T(e({__name:"scenario",props:{caseItem:{}},setup(e){const I=e,N=a({environment:"outpatient",ageGroup:"youth",education:"higher",personality:"calm"}),x=l([]),T=l(A),F=l(""),U=l(!1),D=l(""),K=l(!1),L=l(!1),R=l(null);let q=null;const z=s((()=>I.caseItem||R.value)),B=s((()=>z.value?`${z.value.title}(${z.value.caseNo})`:"未选择病例"));async function P(){const e=await Promise.resolve({recommendations:[{id:"typical-outpatient",title:"典型门诊病例",desc:"门诊常规病例:针对初学者设计的标准化沟通流程。",tags:["中年","配合"],defaults:{environment:"outpatient",ageGroup:"middle_aged",education:"higher",personality:"calm"}},{id:"emergency-crisis",title:"急诊重症危机",desc:"急诊危重:急性心梗紧急入院。",tags:["老年","急躁"],defaults:{environment:"emergency",ageGroup:"elderly",education:"secondary",personality:"impatient"}}],options:A});x.value=e.recommendations,T.value=e.options;try{const e=j(z.value);if(!e)return;const a=await S(e);T.value=a.options,Object.assign(N,a.recommended)}catch(a){Q(a instanceof Error?a.message:"推荐配置加载失败")}}function H(e,a){N[e]=a,F.value=""}function J(){L.value=!L.value}function M(){var e;z.value?(U.value=!0,(e={...N,caseId:z.value.id,caseNo:z.value.caseNo,mode:"teaching"===z.value.mode?"teaching":"practice",recommendationId:F.value||void 0},E({case_id:$(e),training_type:"diagnosis_treatment",mode:e.mode,score_type:"percentage",patient_config:{visit_environment:e.environment,age_group:e.ageGroup,education_level:e.education,personality:e.personality}}).then((a=>({id:a.session_code,...e,session:a,createdAt:(new Date).toISOString()})))).then((e=>{_("clinical-thinking-scenario",e),Q("模拟场景已生成"),setTimeout((()=>{g({url:"/pages/chat/chat"})}),450)})).catch((e=>{Q(e instanceof Error?e.message:"模拟场景生成失败")})).finally((()=>{setTimeout((()=>{U.value=!1}),600)}))):Q("请先选择病例")}function Q(e){q&&clearTimeout(q),D.value=e,K.value=!0,q=setTimeout((()=>{K.value=!1}),2200)}return t((()=>{R.value=G(),P()})),o((()=>{q&&clearTimeout(q)})),(e,a)=>{const l=b,s=h,t=y,o=k,_=w;return n(),c(s,{class:"scenario-page"},{default:i((()=>[u(s,{class:"scenario-shell"},{default:i((()=>[u(s,{class:"hero"},{default:i((()=>[u(l,{class:"hero-image",src:O,mode:"aspectFill"}),u(s,{class:"hero-fade"})])),_:1}),u(s,{class:"director-row"},{default:i((()=>[u(s,{class:"director-avatar"},{default:i((()=>[u(l,{class:"director-image",src:C,mode:"aspectFit"})])),_:1}),u(s,{class:"speech-bubble"},{default:i((()=>[u(t,null,{default:i((()=>[r("欢迎回来!请根据您的教学目标配置临床场景。")])),_:1})])),_:1})])),_:1}),u(_,{class:"config-scroll","scroll-y":""},{default:i((()=>[u(s,{class:"selected-case"},{default:i((()=>[u(t,{class:"case-label"},{default:i((()=>[r("当前病例")])),_:1}),u(t,{class:"case-title"},{default:i((()=>[r(d(B.value),1)])),_:1})])),_:1}),u(s,{class:"section"},{default:i((()=>[u(s,{class:"section-title"},{default:i((()=>[u(s,{class:"star-icon"}),u(t,null,{default:i((()=>[r("王主任推荐")])),_:1})])),_:1}),u(s,{class:"recommend-list"},{default:i((()=>[(n(!0),m(p,null,v(x.value,(e=>(n(),c(o,{key:e.id,class:f(["recommend-card",{active:F.value===e.id}]),onClick:a=>function(e){F.value=e.id,Object.assign(N,e.defaults)}(e)},{default:i((()=>[u(s,{class:"recommend-head"},{default:i((()=>[u(t,{class:"recommend-icon"},{default:i((()=>[r(d(e.tags[0]),1)])),_:2},1024),u(t,{class:"recommend-title"},{default:i((()=>[r(d(e.title),1)])),_:2},1024)])),_:2},1024),u(t,{class:"recommend-desc"},{default:i((()=>[r(d(e.desc),1)])),_:2},1024),u(s,{class:"tag-row"},{default:i((()=>[(n(!0),m(p,null,v(e.tags,(e=>(n(),c(t,{key:e,class:f(["tag",{danger:"急躁"===e}])},{default:i((()=>[r(d(e),1)])),_:2},1032,["class"])))),128))])),_:2},1024)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1}),u(s,{class:f(["section custom-section",{expanded:L.value}])},{default:i((()=>[u(o,{class:f(["section-title custom-config-toggle",{expanded:L.value}]),"aria-label":L.value?"收起自定义配置":"展开自定义配置",onClick:J},{default:i((()=>[u(s,{class:"tune-icon"}),u(t,null,{default:i((()=>[r("自定义配置")])),_:1}),u(s,{class:"custom-toggle-spacer"}),u(s,{class:"toggle-chevron"})])),_:1},8,["class","aria-label"]),u(s,{class:f(["custom-options",{expanded:L.value}])},{default:i((()=>[u(s,{class:"option-block"},{default:i((()=>[u(s,{class:"option-label"},{default:i((()=>[u(s,{class:"location-icon"}),u(t,null,{default:i((()=>[r("就诊环境")])),_:1})])),_:1}),u(s,{class:"option-grid grid-3"},{default:i((()=>[(n(!0),m(p,null,v(T.value.environments,(e=>(n(),c(o,{key:e.value,class:f(["choice",{selected:N.environment===e.value}]),onClick:a=>H("environment",e.value)},{default:i((()=>[r(d(e.label),1)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1}),u(s,{class:"option-block"},{default:i((()=>[u(s,{class:"option-label"},{default:i((()=>[u(s,{class:"cake-icon"}),u(t,null,{default:i((()=>[r("年龄段")])),_:1})])),_:1}),u(s,{class:"option-grid grid-4"},{default:i((()=>[(n(!0),m(p,null,v(T.value.ageGroups,(e=>(n(),c(o,{key:e.value,class:f(["choice small",{selected:N.ageGroup===e.value}]),onClick:a=>H("ageGroup",e.value)},{default:i((()=>[r(d(e.label),1)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1}),u(s,{class:"option-block"},{default:i((()=>[u(s,{class:"option-label"},{default:i((()=>[u(s,{class:"school-icon"}),u(t,null,{default:i((()=>[r("文化程度")])),_:1})])),_:1}),u(s,{class:"option-grid grid-3"},{default:i((()=>[(n(!0),m(p,null,v(T.value.educations,(e=>(n(),c(o,{key:e.value,class:f(["choice mini",{selected:N.education===e.value}]),onClick:a=>H("education",e.value)},{default:i((()=>[r(d(e.label),1)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1}),u(s,{class:"option-block personality-block"},{default:i((()=>[u(s,{class:"option-label"},{default:i((()=>[u(s,{class:"mind-icon"}),u(t,null,{default:i((()=>[r("性格")])),_:1})])),_:1}),u(s,{class:"option-grid grid-3"},{default:i((()=>[(n(!0),m(p,null,v(T.value.personalities,(e=>(n(),c(o,{key:e.value,class:f(["choice",{selected:N.personality===e.value}]),onClick:a=>H("personality",e.value)},{default:i((()=>[r(d(e.label),1)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1})])),_:1},8,["class"])])),_:1},8,["class"])])),_:1}),u(s,{class:"bottom-action"},{default:i((()=>[u(o,{class:"generate-button",disabled:U.value,onClick:M},{default:i((()=>[u(t,null,{default:i((()=>[r(d(U.value?"正在生成...":"生成模拟场景"),1)])),_:1}),u(s,{class:"arrow-icon"})])),_:1},8,["disabled"])])),_:1})])),_:1}),u(s,{class:f(["toast",{visible:K.value}])},{default:i((()=>[r(d(D.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-18785eb2"]]);export{U as default}; diff --git a/dist/assets/pages-teaching-teaching.C2yN6RJA.js b/dist/assets/pages-teaching-teaching.DzNuOlIL.js similarity index 97% rename from dist/assets/pages-teaching-teaching.C2yN6RJA.js rename to dist/assets/pages-teaching-teaching.DzNuOlIL.js index 4f907e2..e9468f0 100644 --- a/dist/assets/pages-teaching-teaching.C2yN6RJA.js +++ b/dist/assets/pages-teaching-teaching.DzNuOlIL.js @@ -1 +1 @@ -import{d as e,r as a,c as l,o as t,b as s,e as n,f as u,w as o,i,E as r,j as c,t as v,n as d,H as f,g as p,l as y,m as _,F as m,s as g,G as h,z as k,A as w,y as b,x,O as j,S as C}from"./index-DfCP9RI3.js";import{_ as A}from"./config-doctor.TgARj_nM.js";import{r as E,a as q}from"./cases.Q7p7j9rz.js";import{c as S,a as T,b as O}from"./navigation.Bg2Ef9wA.js";import{F as U,a as B,r as I}from"./session.D2K7L0GR.js";import{_ as D}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.BCdV446X.js";function F(e){if(!e||"object"!=typeof e)return null;const a=e,l=(t=a.video)&&"object"==typeof t&&!Array.isArray(t)?t:{};var t;const s=function(e){const a=e.question_id||e.id||e.item_id;return"number"==typeof a||"string"==typeof a?a:""}(a),n=P(a,["question","title","stem","content","text"]),u=function(e){if(Array.isArray(e))return e.map(((e,a)=>function(e,a){const l=String.fromCharCode(65+a);if("string"==typeof e)return{key:l,value:l,text:e};if(!e||"object"!=typeof e)return null;const t=e,s=P(t,["value","key","option","option_key","id"])||l,n=P(t,["key","option","option_key"])||s,u=P(t,["label","text","content","option_text","name"])||s;return{key:n,value:s,text:u}}(e,a))).filter((e=>Boolean(e)));if(e&&"object"==typeof e)return Object.entries(e).map((([e,a])=>({key:e,value:e,text:"string"==typeof a?a:String(a||"")}))).filter((e=>e.text));return[]}(a.options||a.choices||a.answers);return s&&n&&0!==u.length?{id:s,question:n,options:u,correctAnswer:P(a,["correct_answer","correctAnswer","answer","right_answer"]),analysis:P(a,["analysis","explanation","解析"]),note:P(a,["note","hint","comment"]),videoTitle:P(l,["title","name"])||P(a,["video_title","videoTitle"]),videoDesc:P(l,["description","desc"])||P(a,["video_desc","videoDesc","video_description"]),videoUrl:P(l,["url"])||P(a,["video_url","videoUrl"])}:null}function P(e,a){for(const l of a){const a=e[l];if("string"==typeof a&&a.trim())return a;if("number"==typeof a)return String(a)}return""}const $=D(e({__name:"teaching",props:{caseItem:{}},emits:["open-settings","open-profile","go-home"],setup(e,{emit:D}){const P=e,$=D,G=S($),K=T($),N=O($),z=a(0),H=a(""),J=a(!1),L=a(!1),M=a(null),Q=a([]),R=a({}),V=a(!1),W=a(!1),X=a(!1),Y=a(""),Z=a(!1);let ee=null;const ae=l((()=>P.caseItem||M.value)),le=l((()=>q(ae.value))),te=l((()=>{var e,a,l,t,s;return{name:(null==(e=ae.value)?void 0:e.patientName)||"未选择病例",gender:(null==(a=ae.value)?void 0:a.gender)||"-",age:(null==(l=ae.value)?void 0:l.age)||"-",department:(null==(t=ae.value)?void 0:t.department)||"-",chiefComplaint:(null==(s=ae.value)?void 0:s.title)||"暂无病例信息"}})),se=l((()=>te.value.chiefComplaint.includes("胸痛")?"胸痛":te.value.chiefComplaint.slice(0,6))),ne=l((()=>Q.value[z.value]||null)),ue=l((()=>{var e;return Boolean(null==(e=ne.value)?void 0:e.correctAnswer)})),oe=l((()=>{var e,a;return Boolean((null==(e=ne.value)?void 0:e.analysis)||(null==(a=ne.value)?void 0:a.note))})),ie=l((()=>{var e;return Boolean(null==(e=ne.value)?void 0:e.videoUrl)})),re=l((()=>z.value>=Q.value.length-1)),ce=l((()=>W.value?"提交中...":re.value?"提交评价":"下一题")),ve=l((()=>V.value?"题目加载中...":X.value?"题目加载失败,请稍后重试。":"暂无教学题目"));function de(){var e;(null==(e=ne.value)?void 0:e.videoUrl)?(J.value=!0,L.value=!1):me("当前题目暂无讲解视频")}async function fe(){if(!ne.value||W.value||V.value)return;if(!H.value)return void me("请先选择答案");if(re.value)return void(await async function(){if(!le.value)return void me("未找到当前教学病例");const e=Q.value.map((e=>({question_id:e.id,selected_answer:R.value[String(e.id)]||""}))).filter((e=>e.selected_answer));if(e.length!==Q.value.length)return void me("请完成全部题目后再提交");W.value=!0;try{const a=await async function(e){var a;const l=await fetch(`${U}/teaching/evaluation`,{method:"POST",headers:B(),body:JSON.stringify(e)});if(!l.ok)throw new Error(await I(l));const t=await l.json();if("OK"!==t.code||!(null==(a=t.data)?void 0:a.evaluation_id))throw new Error(t.message||"教学评价生成失败");return t.data}({case_id:le.value,answers:e});g("clinical-thinking-case-mode","teaching"),g("clinical-thinking-teaching-evaluation",a),g("clinical-thinking-teaching-evaluation-id",a.evaluation_id),h({url:"/pages/assessment/assessment"})}catch(a){me(a instanceof Error?a.message:"教学评价生成失败")}finally{W.value=!1}}());const e=z.value+1;z.value=e,H.value=R.value[String(Q.value[e].id)]||"",J.value=!1,L.value=!1,g("clinical-thinking-teaching-question",{caseId:le.value,questionId:Q.value[e].id,index:e})}function pe(){L.value=!L.value}function ye(){me("讲解视频加载失败")}async function _e(){if(!le.value)return X.value=!0,void me("未找到当前教学病例");V.value=!0,X.value=!1;try{const e=await async function(e){const a=await fetch(`${U}/teaching/cases/${e}/items`,{method:"GET",headers:B()});if(!a.ok)throw new Error(await I(a));const l=await a.json();if("OK"!==l.code||!l.data)throw new Error(l.message||"题目列表加载失败");return(Array.isArray(l.data)?l.data:l.data.items||l.data.questions||l.data.results||l.data.list||[]).map(F).filter((e=>Boolean(e)))}(le.value);Q.value=e,z.value=0,H.value="",R.value={},J.value=!1,L.value=!1,0===e.length&&(X.value=!0,me("暂无教学题目"))}catch(e){X.value=!0,me(e instanceof Error?e.message:"题目列表加载失败")}finally{V.value=!1}}function me(e){ee&&clearTimeout(ee),Y.value=e,Z.value=!0,ee=setTimeout((()=>{Z.value=!1}),2200)}return t((()=>{M.value=E(),_e()})),s((()=>{ee&&clearTimeout(ee)})),(e,a)=>{const l=k,t=w,s=b,g=x,h=j,E=C;return n(),u(l,{class:"teaching-page"},{default:o((()=>[i(l,{class:"teaching-shell"},{default:o((()=>[i(l,{class:"top-nav"},{default:o((()=>[i(t,{class:"icon-button","aria-label":"设置",onClick:r(K)},{default:o((()=>[i(l,{class:"settings-icon"})])),_:1},8,["onClick"]),i(t,{class:"icon-button home-button","aria-label":"首页",onClick:r(N)},{default:o((()=>[i(l,{class:"home-icon"})])),_:1},8,["onClick"]),i(l,{class:"nav-spacer"}),i(t,{class:"icon-button","aria-label":"个人中心",onClick:r(G)},{default:o((()=>[i(l,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),i(l,{class:"patient-header"},{default:o((()=>[i(s,{class:"case-heading"},{default:o((()=>[c("患者:"+v(te.value.name)+" ("+v(se.value)+")",1)])),_:1}),i(l,{class:"patient-meta"},{default:o((()=>[i(s,null,{default:o((()=>[c("姓名:"+v(te.value.name),1)])),_:1}),i(s,null,{default:o((()=>[c("性别:"+v(te.value.gender),1)])),_:1}),i(s,null,{default:o((()=>[c("年龄:"+v(te.value.age)+"岁",1)])),_:1}),i(s,null,{default:o((()=>[c("科室:"+v(te.value.department),1)])),_:1})])),_:1})])),_:1}),i(E,{class:"teaching-body","scroll-y":""},{default:o((()=>[i(l,{class:"mentor-section"},{default:o((()=>[i(l,{class:"mentor-profile"},{default:o((()=>[i(l,{class:"mentor-avatar"},{default:o((()=>[i(g,{src:A,mode:"aspectFill"})])),_:1}),i(l,{class:"online-dot"}),i(s,{class:"mentor-name"},{default:o((()=>[c("王主任")])),_:1})])),_:1}),i(l,{class:"question-bubble"},{default:o((()=>[i(s,null,{default:o((()=>{var e;return[c(v((null==(e=ne.value)?void 0:e.question)||ve.value),1)]})),_:1})])),_:1})])),_:1}),J.value&&ne.value?(n(),u(l,{key:0,class:"video-section"},{default:o((()=>[ne.value.videoUrl?(n(),u(h,{key:0,class:"video-player real-video",src:ne.value.videoUrl,controls:"",autoplay:"",onPlay:a[0]||(a[0]=e=>L.value=!0),onPause:a[1]||(a[1]=e=>L.value=!1),onEnded:a[2]||(a[2]=e=>L.value=!1),onError:ye},null,8,["src"])):(n(),u(l,{key:1,class:"video-player",onClick:pe},{default:o((()=>[i(l,{class:d(["video-poster",{playing:L.value}])},{default:o((()=>[i(l,{class:"heart-visual"},{default:o((()=>[i(l,{class:"heart-core"}),i(l,{class:"heart-pulse pulse-one"}),i(l,{class:"heart-pulse pulse-two"})])),_:1})])),_:1},8,["class"]),i(l,{class:"video-overlay"},{default:o((()=>[i(l,{class:d(["play-button",{playing:L.value}])},{default:o((()=>[i(l,{class:"play-icon"})])),_:1},8,["class"])])),_:1}),i(l,{class:"video-progress"},{default:o((()=>[i(l,{class:"video-progress-fill",style:f({width:L.value?"62%":"33%"})},null,8,["style"])])),_:1})])),_:1})),i(l,{class:"video-copy"},{default:o((()=>[i(s,{class:"video-title"},{default:o((()=>[c(v(ne.value.videoTitle||"讲解视频"),1)])),_:1}),ne.value.videoDesc?(n(),u(s,{key:0,class:"video-desc"},{default:o((()=>[c(v(ne.value.videoDesc),1)])),_:1})):p("",!0)])),_:1})])),_:1})):ne.value?(n(),u(l,{key:1,class:"option-list"},{default:o((()=>[(n(!0),y(m,null,_(ne.value.options,(e=>{return n(),u(t,{key:e.value,class:d(["option-card",(a=e.value,H.value!==a?"":(null==(r=ne.value)?void 0:r.correctAnswer)?a===ne.value.correctAnswer?"selected-correct":"selected-wrong":"selected-correct")]),onClick:a=>function(e){H.value=e,ne.value&&(R.value[String(ne.value.id)]=e)}(e.value)},{default:o((()=>[i(s,{class:"option-key"},{default:o((()=>[c(v(e.key),1)])),_:2},1024),i(s,{class:"option-text"},{default:o((()=>[c(v(e.text),1)])),_:2},1024),ue.value&&H.value===e.value&&e.value!==ne.value.correctAnswer?(n(),u(l,{key:0,class:"wrong-icon"})):p("",!0),ue.value&&H.value===e.value&&e.value===ne.value.correctAnswer?(n(),u(l,{key:1,class:"right-icon"})):p("",!0)])),_:2},1032,["class","onClick"]);var a,r})),128))])),_:1})):(n(),u(l,{key:2,class:"empty-state"},{default:o((()=>[i(s,null,{default:o((()=>[c(v(ve.value),1)])),_:1})])),_:1})),!J.value&&H.value&&oe.value?(n(),u(l,{key:3,class:"analysis-card"},{default:o((()=>[i(l,{class:"analysis-title"},{default:o((()=>[i(l,{class:"bulb-icon"}),i(s,null,{default:o((()=>[c("答案解析")])),_:1})])),_:1}),i(l,{class:"analysis-content"},{default:o((()=>{var e,a,t,i;return[(null==(e=ne.value)?void 0:e.analysis)?(n(),u(s,{key:0,class:"analysis-main"},{default:o((()=>[c(v(ne.value.analysis),1)])),_:1})):p("",!0),(null==(a=ne.value)?void 0:a.analysis)&&(null==(t=ne.value)?void 0:t.note)?(n(),u(l,{key:1,class:"analysis-divider"})):p("",!0),(null==(i=ne.value)?void 0:i.note)?(n(),u(s,{key:2,class:"analysis-note"},{default:o((()=>[c(v(ne.value.note),1)])),_:1})):p("",!0)]})),_:1})])),_:1})):p("",!0),i(l,{class:"bottom-actions"},{default:o((()=>[!J.value&&ie.value?(n(),u(t,{key:0,class:"video-button",onClick:de},{default:o((()=>[i(l,{class:"video-icon"}),i(s,null,{default:o((()=>[c("查看知识点视频")])),_:1})])),_:1})):p("",!0),i(t,{class:d(["next-button",{disabled:!ne.value||W.value||V.value}]),disabled:!ne.value||W.value||V.value,onClick:fe},{default:o((()=>[i(s,null,{default:o((()=>[c(v(ce.value),1)])),_:1}),i(l,{class:"next-icon"})])),_:1},8,["class","disabled"])])),_:1})])),_:1})])),_:1}),i(l,{class:d(["toast",{visible:Z.value}])},{default:o((()=>[c(v(Y.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-c2d0b6fa"]]);export{$ as default}; +import{d as e,r as a,c as l,o as t,b as s,e as n,f as u,w as o,i,E as r,j as c,t as v,n as d,H as f,g as p,l as y,m as _,F as m,s as g,G as h,z as k,A as w,y as b,x,O as j,S as C}from"./index-8wOL_3gR.js";import{_ as A}from"./config-doctor.TgARj_nM.js";import{r as E,a as q}from"./cases.DMDn0OYL.js";import{c as S,a as T,b as O}from"./navigation.Blicf8xr.js";import{F as U,a as B,r as I}from"./session.LaNXUMh-.js";import{_ as D}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.B66V4Y6g.js";function F(e){if(!e||"object"!=typeof e)return null;const a=e,l=(t=a.video)&&"object"==typeof t&&!Array.isArray(t)?t:{};var t;const s=function(e){const a=e.question_id||e.id||e.item_id;return"number"==typeof a||"string"==typeof a?a:""}(a),n=P(a,["question","title","stem","content","text"]),u=function(e){if(Array.isArray(e))return e.map(((e,a)=>function(e,a){const l=String.fromCharCode(65+a);if("string"==typeof e)return{key:l,value:l,text:e};if(!e||"object"!=typeof e)return null;const t=e,s=P(t,["value","key","option","option_key","id"])||l,n=P(t,["key","option","option_key"])||s,u=P(t,["label","text","content","option_text","name"])||s;return{key:n,value:s,text:u}}(e,a))).filter((e=>Boolean(e)));if(e&&"object"==typeof e)return Object.entries(e).map((([e,a])=>({key:e,value:e,text:"string"==typeof a?a:String(a||"")}))).filter((e=>e.text));return[]}(a.options||a.choices||a.answers);return s&&n&&0!==u.length?{id:s,question:n,options:u,correctAnswer:P(a,["correct_answer","correctAnswer","answer","right_answer"]),analysis:P(a,["analysis","explanation","解析"]),note:P(a,["note","hint","comment"]),videoTitle:P(l,["title","name"])||P(a,["video_title","videoTitle"]),videoDesc:P(l,["description","desc"])||P(a,["video_desc","videoDesc","video_description"]),videoUrl:P(l,["url"])||P(a,["video_url","videoUrl"])}:null}function P(e,a){for(const l of a){const a=e[l];if("string"==typeof a&&a.trim())return a;if("number"==typeof a)return String(a)}return""}const $=D(e({__name:"teaching",props:{caseItem:{}},emits:["open-settings","open-profile","go-home"],setup(e,{emit:D}){const P=e,$=D,G=S($),K=T($),N=O($),z=a(0),H=a(""),J=a(!1),L=a(!1),M=a(null),Q=a([]),R=a({}),V=a(!1),W=a(!1),X=a(!1),Y=a(""),Z=a(!1);let ee=null;const ae=l((()=>P.caseItem||M.value)),le=l((()=>q(ae.value))),te=l((()=>{var e,a,l,t,s;return{name:(null==(e=ae.value)?void 0:e.patientName)||"未选择病例",gender:(null==(a=ae.value)?void 0:a.gender)||"-",age:(null==(l=ae.value)?void 0:l.age)||"-",department:(null==(t=ae.value)?void 0:t.department)||"-",chiefComplaint:(null==(s=ae.value)?void 0:s.title)||"暂无病例信息"}})),se=l((()=>te.value.chiefComplaint.includes("胸痛")?"胸痛":te.value.chiefComplaint.slice(0,6))),ne=l((()=>Q.value[z.value]||null)),ue=l((()=>{var e;return Boolean(null==(e=ne.value)?void 0:e.correctAnswer)})),oe=l((()=>{var e,a;return Boolean((null==(e=ne.value)?void 0:e.analysis)||(null==(a=ne.value)?void 0:a.note))})),ie=l((()=>{var e;return Boolean(null==(e=ne.value)?void 0:e.videoUrl)})),re=l((()=>z.value>=Q.value.length-1)),ce=l((()=>W.value?"提交中...":re.value?"提交评价":"下一题")),ve=l((()=>V.value?"题目加载中...":X.value?"题目加载失败,请稍后重试。":"暂无教学题目"));function de(){var e;(null==(e=ne.value)?void 0:e.videoUrl)?(J.value=!0,L.value=!1):me("当前题目暂无讲解视频")}async function fe(){if(!ne.value||W.value||V.value)return;if(!H.value)return void me("请先选择答案");if(re.value)return void(await async function(){if(!le.value)return void me("未找到当前教学病例");const e=Q.value.map((e=>({question_id:e.id,selected_answer:R.value[String(e.id)]||""}))).filter((e=>e.selected_answer));if(e.length!==Q.value.length)return void me("请完成全部题目后再提交");W.value=!0;try{const a=await async function(e){var a;const l=await fetch(`${U}/teaching/evaluation`,{method:"POST",headers:B(),body:JSON.stringify(e)});if(!l.ok)throw new Error(await I(l));const t=await l.json();if("OK"!==t.code||!(null==(a=t.data)?void 0:a.evaluation_id))throw new Error(t.message||"教学评价生成失败");return t.data}({case_id:le.value,answers:e});g("clinical-thinking-case-mode","teaching"),g("clinical-thinking-teaching-evaluation",a),g("clinical-thinking-teaching-evaluation-id",a.evaluation_id),h({url:"/pages/assessment/assessment"})}catch(a){me(a instanceof Error?a.message:"教学评价生成失败")}finally{W.value=!1}}());const e=z.value+1;z.value=e,H.value=R.value[String(Q.value[e].id)]||"",J.value=!1,L.value=!1,g("clinical-thinking-teaching-question",{caseId:le.value,questionId:Q.value[e].id,index:e})}function pe(){L.value=!L.value}function ye(){me("讲解视频加载失败")}async function _e(){if(!le.value)return X.value=!0,void me("未找到当前教学病例");V.value=!0,X.value=!1;try{const e=await async function(e){const a=await fetch(`${U}/teaching/cases/${e}/items`,{method:"GET",headers:B()});if(!a.ok)throw new Error(await I(a));const l=await a.json();if("OK"!==l.code||!l.data)throw new Error(l.message||"题目列表加载失败");return(Array.isArray(l.data)?l.data:l.data.items||l.data.questions||l.data.results||l.data.list||[]).map(F).filter((e=>Boolean(e)))}(le.value);Q.value=e,z.value=0,H.value="",R.value={},J.value=!1,L.value=!1,0===e.length&&(X.value=!0,me("暂无教学题目"))}catch(e){X.value=!0,me(e instanceof Error?e.message:"题目列表加载失败")}finally{V.value=!1}}function me(e){ee&&clearTimeout(ee),Y.value=e,Z.value=!0,ee=setTimeout((()=>{Z.value=!1}),2200)}return t((()=>{M.value=E(),_e()})),s((()=>{ee&&clearTimeout(ee)})),(e,a)=>{const l=k,t=w,s=b,g=x,h=j,E=C;return n(),u(l,{class:"teaching-page"},{default:o((()=>[i(l,{class:"teaching-shell"},{default:o((()=>[i(l,{class:"top-nav"},{default:o((()=>[i(t,{class:"icon-button","aria-label":"设置",onClick:r(K)},{default:o((()=>[i(l,{class:"settings-icon"})])),_:1},8,["onClick"]),i(t,{class:"icon-button home-button","aria-label":"首页",onClick:r(N)},{default:o((()=>[i(l,{class:"home-icon"})])),_:1},8,["onClick"]),i(l,{class:"nav-spacer"}),i(t,{class:"icon-button","aria-label":"个人中心",onClick:r(G)},{default:o((()=>[i(l,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),i(l,{class:"patient-header"},{default:o((()=>[i(s,{class:"case-heading"},{default:o((()=>[c("患者:"+v(te.value.name)+" ("+v(se.value)+")",1)])),_:1}),i(l,{class:"patient-meta"},{default:o((()=>[i(s,null,{default:o((()=>[c("姓名:"+v(te.value.name),1)])),_:1}),i(s,null,{default:o((()=>[c("性别:"+v(te.value.gender),1)])),_:1}),i(s,null,{default:o((()=>[c("年龄:"+v(te.value.age)+"岁",1)])),_:1}),i(s,null,{default:o((()=>[c("科室:"+v(te.value.department),1)])),_:1})])),_:1})])),_:1}),i(E,{class:"teaching-body","scroll-y":""},{default:o((()=>[i(l,{class:"mentor-section"},{default:o((()=>[i(l,{class:"mentor-profile"},{default:o((()=>[i(l,{class:"mentor-avatar"},{default:o((()=>[i(g,{src:A,mode:"aspectFill"})])),_:1}),i(l,{class:"online-dot"}),i(s,{class:"mentor-name"},{default:o((()=>[c("王主任")])),_:1})])),_:1}),i(l,{class:"question-bubble"},{default:o((()=>[i(s,null,{default:o((()=>{var e;return[c(v((null==(e=ne.value)?void 0:e.question)||ve.value),1)]})),_:1})])),_:1})])),_:1}),J.value&&ne.value?(n(),u(l,{key:0,class:"video-section"},{default:o((()=>[ne.value.videoUrl?(n(),u(h,{key:0,class:"video-player real-video",src:ne.value.videoUrl,controls:"",autoplay:"",onPlay:a[0]||(a[0]=e=>L.value=!0),onPause:a[1]||(a[1]=e=>L.value=!1),onEnded:a[2]||(a[2]=e=>L.value=!1),onError:ye},null,8,["src"])):(n(),u(l,{key:1,class:"video-player",onClick:pe},{default:o((()=>[i(l,{class:d(["video-poster",{playing:L.value}])},{default:o((()=>[i(l,{class:"heart-visual"},{default:o((()=>[i(l,{class:"heart-core"}),i(l,{class:"heart-pulse pulse-one"}),i(l,{class:"heart-pulse pulse-two"})])),_:1})])),_:1},8,["class"]),i(l,{class:"video-overlay"},{default:o((()=>[i(l,{class:d(["play-button",{playing:L.value}])},{default:o((()=>[i(l,{class:"play-icon"})])),_:1},8,["class"])])),_:1}),i(l,{class:"video-progress"},{default:o((()=>[i(l,{class:"video-progress-fill",style:f({width:L.value?"62%":"33%"})},null,8,["style"])])),_:1})])),_:1})),i(l,{class:"video-copy"},{default:o((()=>[i(s,{class:"video-title"},{default:o((()=>[c(v(ne.value.videoTitle||"讲解视频"),1)])),_:1}),ne.value.videoDesc?(n(),u(s,{key:0,class:"video-desc"},{default:o((()=>[c(v(ne.value.videoDesc),1)])),_:1})):p("",!0)])),_:1})])),_:1})):ne.value?(n(),u(l,{key:1,class:"option-list"},{default:o((()=>[(n(!0),y(m,null,_(ne.value.options,(e=>{return n(),u(t,{key:e.value,class:d(["option-card",(a=e.value,H.value!==a?"":(null==(r=ne.value)?void 0:r.correctAnswer)?a===ne.value.correctAnswer?"selected-correct":"selected-wrong":"selected-correct")]),onClick:a=>function(e){H.value=e,ne.value&&(R.value[String(ne.value.id)]=e)}(e.value)},{default:o((()=>[i(s,{class:"option-key"},{default:o((()=>[c(v(e.key),1)])),_:2},1024),i(s,{class:"option-text"},{default:o((()=>[c(v(e.text),1)])),_:2},1024),ue.value&&H.value===e.value&&e.value!==ne.value.correctAnswer?(n(),u(l,{key:0,class:"wrong-icon"})):p("",!0),ue.value&&H.value===e.value&&e.value===ne.value.correctAnswer?(n(),u(l,{key:1,class:"right-icon"})):p("",!0)])),_:2},1032,["class","onClick"]);var a,r})),128))])),_:1})):(n(),u(l,{key:2,class:"empty-state"},{default:o((()=>[i(s,null,{default:o((()=>[c(v(ve.value),1)])),_:1})])),_:1})),!J.value&&H.value&&oe.value?(n(),u(l,{key:3,class:"analysis-card"},{default:o((()=>[i(l,{class:"analysis-title"},{default:o((()=>[i(l,{class:"bulb-icon"}),i(s,null,{default:o((()=>[c("答案解析")])),_:1})])),_:1}),i(l,{class:"analysis-content"},{default:o((()=>{var e,a,t,i;return[(null==(e=ne.value)?void 0:e.analysis)?(n(),u(s,{key:0,class:"analysis-main"},{default:o((()=>[c(v(ne.value.analysis),1)])),_:1})):p("",!0),(null==(a=ne.value)?void 0:a.analysis)&&(null==(t=ne.value)?void 0:t.note)?(n(),u(l,{key:1,class:"analysis-divider"})):p("",!0),(null==(i=ne.value)?void 0:i.note)?(n(),u(s,{key:2,class:"analysis-note"},{default:o((()=>[c(v(ne.value.note),1)])),_:1})):p("",!0)]})),_:1})])),_:1})):p("",!0),i(l,{class:"bottom-actions"},{default:o((()=>[!J.value&&ie.value?(n(),u(t,{key:0,class:"video-button",onClick:de},{default:o((()=>[i(l,{class:"video-icon"}),i(s,null,{default:o((()=>[c("查看知识点视频")])),_:1})])),_:1})):p("",!0),i(t,{class:d(["next-button",{disabled:!ne.value||W.value||V.value}]),disabled:!ne.value||W.value||V.value,onClick:fe},{default:o((()=>[i(s,null,{default:o((()=>[c(v(ce.value),1)])),_:1}),i(l,{class:"next-icon"})])),_:1},8,["class","disabled"])])),_:1})])),_:1})])),_:1}),i(l,{class:d(["toast",{visible:Z.value}])},{default:o((()=>[c(v(Y.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-c2d0b6fa"]]);export{$ as default}; diff --git a/dist/assets/pages-treatment-treatment.DmWM0nMA.js b/dist/assets/pages-treatment-treatment.CEAKOxru.js similarity index 95% rename from dist/assets/pages-treatment-treatment.DmWM0nMA.js rename to dist/assets/pages-treatment-treatment.CEAKOxru.js index 7ce328e..85d838d 100644 --- a/dist/assets/pages-treatment-treatment.DmWM0nMA.js +++ b/dist/assets/pages-treatment-treatment.CEAKOxru.js @@ -1 +1 @@ -import{d as e,a,r as l,c as s,o as t,b as n,e as u,f as c,w as o,i as r,E as i,j as d,t as m,l as p,m as f,F as _,n as v,g as h,s as b,p as k,z as g,A as w,y,x as j,I as V,N as x}from"./index-DfCP9RI3.js";import{_ as C}from"./config-doctor.TgARj_nM.js";import{r as U}from"./cases.Q7p7j9rz.js";import{c as P,a as E,b as I}from"./navigation.Bg2Ef9wA.js";import{F as T,a as F,r as N,f as O}from"./session.D2K7L0GR.js";import{_ as $}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.BCdV446X.js";const M=$(e({__name:"treatment",props:{caseItem:{}},emits:["open-settings","open-profile","go-home"],setup(e,{emit:$}){const M=e,S=$,z=P(S),A=E(S),B=I(S),J=a({principle:"",measures:["",""],orders:""}),K=l(!1),q=l(!1),D=l(""),G=l(!1),H=l(null);let L=null;const Q=s((()=>M.caseItem||H.value)),R=s((()=>{var e;return(null==(e=Q.value)?void 0:e.patientName)||"陈先生"})),W=s((()=>{var e;return(null==(e=Q.value)?void 0:e.gender)||"男"})),X=s((()=>{var e;return(null==(e=Q.value)?void 0:e.age)||60})),Y=s((()=>{var e;return(null==(e=Q.value)?void 0:e.department)||"心血管内科"})),Z=s((()=>{var e;const a=(null==(e=Q.value)?void 0:e.title)||"持续胸痛3小时";return a.includes("胸痛")?"胸痛":a.slice(0,6)})),ee=s((()=>K.value?"提交中...":q.value?"已提交":"下一步"));async function ae(){if(!K.value){K.value=!0;try{const e=O(),a=J.orders.trim(),l={treatmentPrinciple:J.principle,treatmentMeasures:J.measures.map((e=>e.trim())).filter(Boolean).join(";"),riskPlan:a,communication:a,followUp:a},s=await async function(e,a){const l={treatment_principle:a.treatmentPrinciple.trim(),treatment_measures:a.treatmentMeasures.trim(),risk_plan:a.riskPlan.trim(),communication:a.communication.trim(),follow_up:a.followUp.trim()},s=await fetch(`${T}/sessions/${e}/treatment`,{method:"POST",headers:F(),body:JSON.stringify(l)});if(!s.ok)throw new Error(await N(s));const t=await s.json();if("OK"!==t.code)throw new Error(t.message||"治疗方案提交失败");return t.data||l}(e,l);b("clinical-thinking-treatment",s),q.value=!0,k({url:"/pages/assessment/assessment",fail(){q.value=!1,le("进入评价页失败,请重试")}})}catch(e){le(e instanceof Error?e.message:"治疗方案提交失败")}finally{K.value=!1}}}function le(e){L&&clearTimeout(L),D.value=e,G.value=!0,L=setTimeout((()=>{G.value=!1}),2200)}return t((()=>{H.value=U()})),n((()=>{L&&clearTimeout(L)})),(e,a)=>{const l=g,s=w,t=y,n=j,b=V,k=x;return u(),c(l,{class:"treatment-page"},{default:o((()=>[r(l,{class:"treatment-shell"},{default:o((()=>[r(l,{class:"top-nav"},{default:o((()=>[r(s,{class:"icon-button","aria-label":"设置",onClick:i(A)},{default:o((()=>[r(l,{class:"settings-icon"})])),_:1},8,["onClick"]),r(s,{class:"icon-button home-button","aria-label":"首页",onClick:i(B)},{default:o((()=>[r(l,{class:"home-icon"})])),_:1},8,["onClick"]),r(l,{class:"nav-spacer"}),r(s,{class:"icon-button","aria-label":"个人中心",onClick:i(z)},{default:o((()=>[r(l,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),r(l,{class:"case-header"},{default:o((()=>[r(t,{class:"case-heading"},{default:o((()=>[d("患者:"+m(R.value)+" ("+m(Z.value)+")",1)])),_:1}),r(l,{class:"patient-meta"},{default:o((()=>[r(t,null,{default:o((()=>[d("姓名:"+m(R.value),1)])),_:1}),r(t,null,{default:o((()=>[d("性别:"+m(W.value),1)])),_:1}),r(t,null,{default:o((()=>[d("年龄:"+m(X.value)+"岁",1)])),_:1}),r(t,null,{default:o((()=>[d("科室:"+m(Y.value),1)])),_:1})])),_:1})])),_:1}),r(l,{class:"treatment-content"},{default:o((()=>[r(l,{class:"stepper"},{default:o((()=>[r(l,{class:"step-line"},{default:o((()=>[r(l,{class:"step-line-active"})])),_:1}),r(l,{class:"step done"},{default:o((()=>[r(l,{class:"step-dot"},{default:o((()=>[r(l,{class:"check-icon"})])),_:1}),r(t,null,{default:o((()=>[d("问诊")])),_:1})])),_:1}),r(l,{class:"step done"},{default:o((()=>[r(l,{class:"step-dot"},{default:o((()=>[r(l,{class:"check-icon"})])),_:1}),r(t,null,{default:o((()=>[d("临床诊断")])),_:1})])),_:1}),r(l,{class:"step active"},{default:o((()=>[r(l,{class:"step-dot"},{default:o((()=>[r(l,{class:"pill-icon"})])),_:1}),r(t,null,{default:o((()=>[d("治疗计划")])),_:1})])),_:1})])),_:1}),r(l,{class:"mentor-card"},{default:o((()=>[r(l,{class:"mentor-avatar"},{default:o((()=>[r(n,{src:C,mode:"aspectFill"})])),_:1}),r(l,{class:"mentor-bubble"},{default:o((()=>[r(t,null,{default:o((()=>[d("王主任建议:请结合患者既往高血压史及突发性胸痛的性质,进行准确诊断。注意鉴别心梗与主动脉夹层。")])),_:1})])),_:1})])),_:1}),r(l,{class:"form-area"},{default:o((()=>[r(l,{class:"field-block"},{default:o((()=>[r(l,{class:"field-label primary"},{default:o((()=>[r(l,{class:"priority-icon"}),r(t,null,{default:o((()=>[d("治疗原则")])),_:1})])),_:1}),r(l,{class:"input-wrap"},{default:o((()=>[r(b,{class:"treatment-input",modelValue:J.principle,"onUpdate:modelValue":a[0]||(a[0]=e=>J.principle=e),type:"text",placeholder:"请输入治疗原则...","placeholder-class":"input-placeholder"},null,8,["modelValue"])])),_:1})])),_:1}),r(l,{class:"field-block"},{default:o((()=>[r(l,{class:"field-label"},{default:o((()=>[r(l,{class:"checklist-icon"}),r(t,null,{default:o((()=>[d("具体治疗措施")])),_:1})])),_:1}),r(l,{class:"measure-list"},{default:o((()=>[(u(!0),p(_,null,f(J.measures,((e,a)=>(u(),c(l,{key:a,class:"measure-row"},{default:o((()=>[r(t,{class:"measure-index"},{default:o((()=>[d(m(a+1),1)])),_:2},1024),r(b,{class:"measure-input",modelValue:J.measures[a],"onUpdate:modelValue":e=>J.measures[a]=e,type:"text",placeholder:`措施 ${a+1}`,"placeholder-class":"input-placeholder"},null,8,["modelValue","onUpdate:modelValue","placeholder"])])),_:2},1024)))),128))])),_:1})])),_:1}),r(l,{class:"field-block"},{default:o((()=>[r(l,{class:"field-label"},{default:o((()=>[r(l,{class:"description-icon"}),r(t,null,{default:o((()=>[d("医嘱")])),_:1})])),_:1}),r(k,{class:"order-input",modelValue:J.orders,"onUpdate:modelValue":a[1]||(a[1]=e=>J.orders=e),placeholder:"请输入医嘱建议...","placeholder-class":"input-placeholder"},null,8,["modelValue"])])),_:1})])),_:1}),r(s,{class:v(["next-button",{submitted:q.value}]),disabled:K.value,onClick:ae},{default:o((()=>[K.value?(u(),c(l,{key:0,class:"spinner"})):h("",!0),r(t,null,{default:o((()=>[d(m(ee.value),1)])),_:1}),K.value||q.value?h("",!0):(u(),c(l,{key:1,class:"arrow-icon"})),q.value?(u(),c(l,{key:2,class:"check-small-icon"})):h("",!0)])),_:1},8,["class","disabled"])])),_:1})])),_:1}),r(l,{class:v(["toast",{visible:G.value}])},{default:o((()=>[d(m(D.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-e1486ff5"]]);export{M as default}; +import{d as e,a,r as l,c as s,o as t,b as n,e as u,f as c,w as o,i as r,E as i,j as d,t as m,l as p,m as f,F as _,n as v,g as h,s as b,p as k,z as g,A as w,y,x as j,I as V,N as x}from"./index-8wOL_3gR.js";import{_ as C}from"./config-doctor.TgARj_nM.js";import{r as U}from"./cases.DMDn0OYL.js";import{c as P,a as E,b as I}from"./navigation.Blicf8xr.js";import{F as T,a as F,r as N,f as O}from"./session.LaNXUMh-.js";import{_ as $}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./auth.B66V4Y6g.js";const M=$(e({__name:"treatment",props:{caseItem:{}},emits:["open-settings","open-profile","go-home"],setup(e,{emit:$}){const M=e,S=$,z=P(S),A=E(S),B=I(S),J=a({principle:"",measures:["",""],orders:""}),K=l(!1),q=l(!1),D=l(""),G=l(!1),H=l(null);let L=null;const Q=s((()=>M.caseItem||H.value)),R=s((()=>{var e;return(null==(e=Q.value)?void 0:e.patientName)||"陈先生"})),W=s((()=>{var e;return(null==(e=Q.value)?void 0:e.gender)||"男"})),X=s((()=>{var e;return(null==(e=Q.value)?void 0:e.age)||60})),Y=s((()=>{var e;return(null==(e=Q.value)?void 0:e.department)||"心血管内科"})),Z=s((()=>{var e;const a=(null==(e=Q.value)?void 0:e.title)||"持续胸痛3小时";return a.includes("胸痛")?"胸痛":a.slice(0,6)})),ee=s((()=>K.value?"提交中...":q.value?"已提交":"下一步"));async function ae(){if(!K.value){K.value=!0;try{const e=O(),a=J.orders.trim(),l={treatmentPrinciple:J.principle,treatmentMeasures:J.measures.map((e=>e.trim())).filter(Boolean).join(";"),riskPlan:a,communication:a,followUp:a},s=await async function(e,a){const l={treatment_principle:a.treatmentPrinciple.trim(),treatment_measures:a.treatmentMeasures.trim(),risk_plan:a.riskPlan.trim(),communication:a.communication.trim(),follow_up:a.followUp.trim()},s=await fetch(`${T}/sessions/${e}/treatment`,{method:"POST",headers:F(),body:JSON.stringify(l)});if(!s.ok)throw new Error(await N(s));const t=await s.json();if("OK"!==t.code)throw new Error(t.message||"治疗方案提交失败");return t.data||l}(e,l);b("clinical-thinking-treatment",s),q.value=!0,k({url:"/pages/assessment/assessment",fail(){q.value=!1,le("进入评价页失败,请重试")}})}catch(e){le(e instanceof Error?e.message:"治疗方案提交失败")}finally{K.value=!1}}}function le(e){L&&clearTimeout(L),D.value=e,G.value=!0,L=setTimeout((()=>{G.value=!1}),2200)}return t((()=>{H.value=U()})),n((()=>{L&&clearTimeout(L)})),(e,a)=>{const l=g,s=w,t=y,n=j,b=V,k=x;return u(),c(l,{class:"treatment-page"},{default:o((()=>[r(l,{class:"treatment-shell"},{default:o((()=>[r(l,{class:"top-nav"},{default:o((()=>[r(s,{class:"icon-button","aria-label":"设置",onClick:i(A)},{default:o((()=>[r(l,{class:"settings-icon"})])),_:1},8,["onClick"]),r(s,{class:"icon-button home-button","aria-label":"首页",onClick:i(B)},{default:o((()=>[r(l,{class:"home-icon"})])),_:1},8,["onClick"]),r(l,{class:"nav-spacer"}),r(s,{class:"icon-button","aria-label":"个人中心",onClick:i(z)},{default:o((()=>[r(l,{class:"account-icon"})])),_:1},8,["onClick"])])),_:1}),r(l,{class:"case-header"},{default:o((()=>[r(t,{class:"case-heading"},{default:o((()=>[d("患者:"+m(R.value)+" ("+m(Z.value)+")",1)])),_:1}),r(l,{class:"patient-meta"},{default:o((()=>[r(t,null,{default:o((()=>[d("姓名:"+m(R.value),1)])),_:1}),r(t,null,{default:o((()=>[d("性别:"+m(W.value),1)])),_:1}),r(t,null,{default:o((()=>[d("年龄:"+m(X.value)+"岁",1)])),_:1}),r(t,null,{default:o((()=>[d("科室:"+m(Y.value),1)])),_:1})])),_:1})])),_:1}),r(l,{class:"treatment-content"},{default:o((()=>[r(l,{class:"stepper"},{default:o((()=>[r(l,{class:"step-line"},{default:o((()=>[r(l,{class:"step-line-active"})])),_:1}),r(l,{class:"step done"},{default:o((()=>[r(l,{class:"step-dot"},{default:o((()=>[r(l,{class:"check-icon"})])),_:1}),r(t,null,{default:o((()=>[d("问诊")])),_:1})])),_:1}),r(l,{class:"step done"},{default:o((()=>[r(l,{class:"step-dot"},{default:o((()=>[r(l,{class:"check-icon"})])),_:1}),r(t,null,{default:o((()=>[d("临床诊断")])),_:1})])),_:1}),r(l,{class:"step active"},{default:o((()=>[r(l,{class:"step-dot"},{default:o((()=>[r(l,{class:"pill-icon"})])),_:1}),r(t,null,{default:o((()=>[d("治疗计划")])),_:1})])),_:1})])),_:1}),r(l,{class:"mentor-card"},{default:o((()=>[r(l,{class:"mentor-avatar"},{default:o((()=>[r(n,{src:C,mode:"aspectFill"})])),_:1}),r(l,{class:"mentor-bubble"},{default:o((()=>[r(t,null,{default:o((()=>[d("王主任建议:请结合患者既往高血压史及突发性胸痛的性质,进行准确诊断。注意鉴别心梗与主动脉夹层。")])),_:1})])),_:1})])),_:1}),r(l,{class:"form-area"},{default:o((()=>[r(l,{class:"field-block"},{default:o((()=>[r(l,{class:"field-label primary"},{default:o((()=>[r(l,{class:"priority-icon"}),r(t,null,{default:o((()=>[d("治疗原则")])),_:1})])),_:1}),r(l,{class:"input-wrap"},{default:o((()=>[r(b,{class:"treatment-input",modelValue:J.principle,"onUpdate:modelValue":a[0]||(a[0]=e=>J.principle=e),type:"text",placeholder:"请输入治疗原则...","placeholder-class":"input-placeholder"},null,8,["modelValue"])])),_:1})])),_:1}),r(l,{class:"field-block"},{default:o((()=>[r(l,{class:"field-label"},{default:o((()=>[r(l,{class:"checklist-icon"}),r(t,null,{default:o((()=>[d("具体治疗措施")])),_:1})])),_:1}),r(l,{class:"measure-list"},{default:o((()=>[(u(!0),p(_,null,f(J.measures,((e,a)=>(u(),c(l,{key:a,class:"measure-row"},{default:o((()=>[r(t,{class:"measure-index"},{default:o((()=>[d(m(a+1),1)])),_:2},1024),r(b,{class:"measure-input",modelValue:J.measures[a],"onUpdate:modelValue":e=>J.measures[a]=e,type:"text",placeholder:`措施 ${a+1}`,"placeholder-class":"input-placeholder"},null,8,["modelValue","onUpdate:modelValue","placeholder"])])),_:2},1024)))),128))])),_:1})])),_:1}),r(l,{class:"field-block"},{default:o((()=>[r(l,{class:"field-label"},{default:o((()=>[r(l,{class:"description-icon"}),r(t,null,{default:o((()=>[d("医嘱")])),_:1})])),_:1}),r(k,{class:"order-input",modelValue:J.orders,"onUpdate:modelValue":a[1]||(a[1]=e=>J.orders=e),placeholder:"请输入医嘱建议...","placeholder-class":"input-placeholder"},null,8,["modelValue"])])),_:1})])),_:1}),r(s,{class:v(["next-button",{submitted:q.value}]),disabled:K.value,onClick:ae},{default:o((()=>[K.value?(u(),c(l,{key:0,class:"spinner"})):h("",!0),r(t,null,{default:o((()=>[d(m(ee.value),1)])),_:1}),K.value||q.value?h("",!0):(u(),c(l,{key:1,class:"arrow-icon"})),q.value?(u(),c(l,{key:2,class:"check-small-icon"})):h("",!0)])),_:1},8,["class","disabled"])])),_:1})])),_:1}),r(l,{class:v(["toast",{visible:G.value}])},{default:o((()=>[d(m(D.value),1)])),_:1},8,["class"])])),_:1})}}}),[["__scopeId","data-v-e1486ff5"]]);export{M as default}; diff --git a/dist/assets/profile.CDLVfXPi.js b/dist/assets/profile.COAzSw-i.js similarity index 94% rename from dist/assets/profile.CDLVfXPi.js rename to dist/assets/profile.COAzSw-i.js index 9e260db..f511f91 100644 --- a/dist/assets/profile.CDLVfXPi.js +++ b/dist/assets/profile.COAzSw-i.js @@ -1 +1 @@ -import{C as e,D as t}from"./index-DfCP9RI3.js";import{a as n,A as o}from"./auth.BCdV446X.js";import{F as r}from"./session.D2K7L0GR.js";function i(){return u("/user/profile/")}function s(e={}){return u("/user/training-records/",{search:e.search,page:e.page})}function a(){return u("/user/analysis/")}function c(){return u("/user/competency-metrics/")}async function d(t){var n,i;const s=function(e){if(e&&"object"==typeof e&&"data"in e){const t=e;if(t.code&&"OK"!==t.code&&"ok"!==t.code)throw new o(t.message||"请求失败",t.code);if(void 0!==t.data)return t.data}return e}(await(n=`/evaluations/${encodeURIComponent(String(t))}`,new Promise(((t,s)=>{e({url:`${r}${f(n,i)}`,method:"GET",timeout:1e4,header:m(),success:e=>{if(e.statusCode>=200&&e.statusCode<300)return void t(e.data);const n=e.data,r="string"==typeof(null==n?void 0:n.code)?n.code:void 0;s(new o(p(e.data,`请求失败(${e.statusCode})`),r,e.statusCode))},fail:e=>{s(new o(e.errMsg||"无法连接服务"))}})}))));return function(e,t){const n=A(e.case)?e.case:{},o=v(e.total_score??e.score??e.current_score,0);return{evaluation_id:v(e.evaluation_id??e.id??e.record_id,t),session_id:v(e.session_id,0),case_id:v(e.case_id??n.id,0),case_title:g(e.case_title??e.caseTitle??n.title,"未命名病例"),score_type:y(e.score_type),total_score:o,dimension_scores:l(e.dimension_scores??e.radar),score_details:_(e.score_details),overall_comment:g(e.overall_comment??e.comment,"本次评价暂无详细点评。"),pdf_file_path:h(e.pdf_file_path??e.pdfFilePath),created_at:h(e.created_at??e.trained_at)}}(s,t)}function u(t,r){return new Promise(((i,s)=>{e({url:`${n}${f(t,r)}`,method:"GET",timeout:1e4,header:m(),success:e=>{if(e.statusCode>=200&&e.statusCode<300)return void i(e.data);const t=e.data,n="string"==typeof(null==t?void 0:t.code)?t.code:void 0;s(new o(p(e.data,`请求失败(${e.statusCode})`),n,e.statusCode))},fail:e=>{s(new o(e.errMsg||"无法连接服务"))}})}))}function m(){const e={"Content-Type":"application/json",Accept:"application/json"},n=function(){try{const e=t("clinical-thinking-access-token");return"string"==typeof e?e.trim():""}catch{return""}}();return n&&(e.Authorization=`Bearer ${n}`),e}function f(e,t){if(!t)return e;const n=Object.entries(t).filter((([,e])=>null!=e&&""!==e)).map((([e,t])=>`${encodeURIComponent(e)}=${encodeURIComponent(String(t))}`)).join("&");return n?`${e}?${n}`:e}function p(e,t){if(e&&"object"==typeof e){const t=e,n=t.message||t.detail||t.error;if("string"==typeof n&&n.trim())return n}return t}function l(e){return Array.isArray(e)?e.map((e=>{const t=A(e)?e:{};return{dimension:g(t.dimension??t.label,"未命名维度"),score:v(t.score,0),max_score:v(t.max_score,100),comment:h(t.comment),evidence:Array.isArray(t.evidence)?t.evidence.map(String):void 0,deductions:Array.isArray(t.deductions)?t.deductions.map(String):void 0,improvement:h(t.improvement)}})):[]}function _(e){return Array.isArray(e)?e.map((e=>{const t=A(e)?e:{};return{dimension:g(t.dimension,"未命名维度"),score:v(t.score,0),deducted_reason:h(t.deducted_reason),ai_confidence:void 0===t.ai_confidence?void 0:v(t.ai_confidence,0),comment:h(t.comment)}})):[]}function y(e){return"five_point"===e?"five_point":"percentage"}function v(e,t=0){const n=Number(e);return Number.isFinite(n)?n:t}function g(e,t=""){return"string"==typeof e?e.trim()||t:"number"==typeof e?String(e):t}function h(e){return g(e)||void 0}function A(e){return Boolean(e&&"object"==typeof e&&!Array.isArray(e))}export{s as a,d as b,i as c,c as d,a as f}; +import{C as e,D as t}from"./index-8wOL_3gR.js";import{a as n,A as o}from"./auth.B66V4Y6g.js";import{F as r}from"./session.LaNXUMh-.js";function i(){return u("/user/profile/")}function s(e={}){return u("/user/training-records/",{search:e.search,page:e.page})}function a(){return u("/user/analysis/")}function c(){return u("/user/competency-metrics/")}async function d(t){var n,i;const s=function(e){if(e&&"object"==typeof e&&"data"in e){const t=e;if(t.code&&"OK"!==t.code&&"ok"!==t.code)throw new o(t.message||"请求失败",t.code);if(void 0!==t.data)return t.data}return e}(await(n=`/evaluations/${encodeURIComponent(String(t))}`,new Promise(((t,s)=>{e({url:`${r}${f(n,i)}`,method:"GET",timeout:1e4,header:m(),success:e=>{if(e.statusCode>=200&&e.statusCode<300)return void t(e.data);const n=e.data,r="string"==typeof(null==n?void 0:n.code)?n.code:void 0;s(new o(p(e.data,`请求失败(${e.statusCode})`),r,e.statusCode))},fail:e=>{s(new o(e.errMsg||"无法连接服务"))}})}))));return function(e,t){const n=A(e.case)?e.case:{},o=v(e.total_score??e.score??e.current_score,0);return{evaluation_id:v(e.evaluation_id??e.id??e.record_id,t),session_id:v(e.session_id,0),case_id:v(e.case_id??n.id,0),case_title:g(e.case_title??e.caseTitle??n.title,"未命名病例"),score_type:y(e.score_type),total_score:o,dimension_scores:l(e.dimension_scores??e.radar),score_details:_(e.score_details),overall_comment:g(e.overall_comment??e.comment,"本次评价暂无详细点评。"),pdf_file_path:h(e.pdf_file_path??e.pdfFilePath),created_at:h(e.created_at??e.trained_at)}}(s,t)}function u(t,r){return new Promise(((i,s)=>{e({url:`${n}${f(t,r)}`,method:"GET",timeout:1e4,header:m(),success:e=>{if(e.statusCode>=200&&e.statusCode<300)return void i(e.data);const t=e.data,n="string"==typeof(null==t?void 0:t.code)?t.code:void 0;s(new o(p(e.data,`请求失败(${e.statusCode})`),n,e.statusCode))},fail:e=>{s(new o(e.errMsg||"无法连接服务"))}})}))}function m(){const e={"Content-Type":"application/json",Accept:"application/json"},n=function(){try{const e=t("clinical-thinking-access-token");return"string"==typeof e?e.trim():""}catch{return""}}();return n&&(e.Authorization=`Bearer ${n}`),e}function f(e,t){if(!t)return e;const n=Object.entries(t).filter((([,e])=>null!=e&&""!==e)).map((([e,t])=>`${encodeURIComponent(e)}=${encodeURIComponent(String(t))}`)).join("&");return n?`${e}?${n}`:e}function p(e,t){if(e&&"object"==typeof e){const t=e,n=t.message||t.detail||t.error;if("string"==typeof n&&n.trim())return n}return t}function l(e){return Array.isArray(e)?e.map((e=>{const t=A(e)?e:{};return{dimension:g(t.dimension??t.label,"未命名维度"),score:v(t.score,0),max_score:v(t.max_score,100),comment:h(t.comment),evidence:Array.isArray(t.evidence)?t.evidence.map(String):void 0,deductions:Array.isArray(t.deductions)?t.deductions.map(String):void 0,improvement:h(t.improvement)}})):[]}function _(e){return Array.isArray(e)?e.map((e=>{const t=A(e)?e:{};return{dimension:g(t.dimension,"未命名维度"),score:v(t.score,0),deducted_reason:h(t.deducted_reason),ai_confidence:void 0===t.ai_confidence?void 0:v(t.ai_confidence,0),comment:h(t.comment)}})):[]}function y(e){return"five_point"===e?"five_point":"percentage"}function v(e,t=0){const n=Number(e);return Number.isFinite(n)?n:t}function g(e,t=""){return"string"==typeof e?e.trim()||t:"number"==typeof e?String(e):t}function h(e){return g(e)||void 0}function A(e){return Boolean(e&&"object"==typeof e&&!Array.isArray(e))}export{s as a,d as b,i as c,c as d,a as f}; diff --git a/dist/assets/session.D2K7L0GR.js b/dist/assets/session.LaNXUMh-.js similarity index 98% rename from dist/assets/session.D2K7L0GR.js rename to dist/assets/session.LaNXUMh-.js index a1cc0cd..ebb1a04 100644 --- a/dist/assets/session.D2K7L0GR.js +++ b/dist/assets/session.LaNXUMh-.js @@ -1 +1 @@ -import{D as e,s as t}from"./index-DfCP9RI3.js";const n="/fastapi/api/v1";function s(){const t=e("clinical-thinking-access-token");if("string"!=typeof t||!t.trim())throw new Error("登录已过期,请重新登录");return t}function o(e="application/json"){return{"Content-Type":"application/json",Accept:e,Authorization:`Bearer ${s()}`,"X-Entry-Scene":"vue_frontend"}}async function a(e){const t=await e.text().catch((()=>""));if(!t)return`请求失败(${e.status})`;try{const e=JSON.parse(t),n=e.message||e.detail||e.error;if("string"==typeof n&&n.trim())return n}catch{}return t}function r(){const t=e("clinical-thinking-scenario");return t&&"object"==typeof t?t:null}function i(){var e,t;const n=null==(t=null==(e=r())?void 0:e.session)?void 0:t.session_id;if("number"==typeof n&&Number.isInteger(n)&&n>0)return n;throw new Error("未找到当前会话,请先生成模拟场景")}function c(e){const n=r();(null==n?void 0:n.session)&&t("clinical-thinking-scenario",{...n,session:{...n.session,status:e}})}async function f(e){var t;const n=await fetch("/fastapi/api/v1/sessions",{method:"POST",headers:o(),body:JSON.stringify(e)});if(!n.ok)throw new Error(await a(n));const s=await n.json();if("OK"!==s.code||!(null==(t=s.data)?void 0:t.session_id))throw new Error(s.message||"新建会话失败");return s.data}async function d(e){var t;const n=await fetch(`/fastapi/api/v1/sessions/${e}/complete-inquiry`,{method:"POST",headers:o()});if(!n.ok)throw new Error(await a(n));const s=await n.json();if("OK"!==s.code||!(null==(t=s.data)?void 0:t.session_id))throw new Error(s.message||"完成采集失败");return s.data}async function l(e,t,n,s){var r,i,c;const f=await fetch(`/fastapi/api/v1/sessions/${e}/chat/stream`,{method:"POST",headers:o("text/event-stream"),body:JSON.stringify({message:t}),signal:s});if(!f.ok||!f.body)throw new Error(await a(f));const d=f.body.getReader(),l=new TextDecoder;let u="",w=!1;for(;;){const{value:e,done:t}=await d.read();if(t)break;u+=l.decode(e,{stream:!0});const s=u.split("\n\n");u=s.pop()||"";for(const o of s){const e=null==(r=o.match(/^event:\s*(.+)$/m))?void 0:r[1],t=null==(i=o.match(/^data:\s*(.+)$/m))?void 0:i[1];if(!e||!t)continue;const s=JSON.parse(t);if("message_delta"===e){const e=s.delta;"string"==typeof e&&n.onDelta(e)}else if("message_done"===e)w=!0,null==(c=n.onDone)||c.call(n,s);else if("error"===e)throw new Error("string"==typeof s.message?s.message:"AI 流式回复异常")}}if(!w)throw new Error("AI 流式回复未正常结束,请重试")}async function u(e,t,n,s){var r,i,c;const f={last_user_message:t,scope:"current_conversation"},d=await fetch(`/fastapi/api/v1/sessions/${e}/hints/stream`,{method:"POST",headers:o("text/event-stream"),body:JSON.stringify(f),signal:s});if(!d.ok||!d.body)throw new Error(await a(d));const l=d.body.getReader(),u=new TextDecoder;let w="",h=!1;for(;;){const{value:e,done:t}=await l.read();if(t)break;w+=u.decode(e,{stream:!0});const s=w.split("\n\n");w=s.pop()||"";for(const o of s){const e=null==(r=o.match(/^event:\s*(.+)$/m))?void 0:r[1],t=null==(i=o.match(/^data:\s*(.+)$/m))?void 0:i[1];if(!e||!t)continue;const s=JSON.parse(t);if("hint_delta"===e){const e=s.delta;"string"==typeof e&&n.onDelta(e)}else if("hint_done"===e)h=!0,null==(c=n.onDone)||c.call(n,s);else if("error"===e)throw new Error("string"==typeof s.message?s.message:"练习提示生成失败,请稍后重试")}}if(!h)throw new Error("练习提示未正常结束,请重试")}export{n as F,o as a,r as b,f as c,d,u as e,i as f,a as r,l as s,c as u}; +import{D as e,s as t}from"./index-8wOL_3gR.js";const n="/fastapi/api/v1";function s(){const t=e("clinical-thinking-access-token");if("string"!=typeof t||!t.trim())throw new Error("登录已过期,请重新登录");return t}function o(e="application/json"){return{"Content-Type":"application/json",Accept:e,Authorization:`Bearer ${s()}`,"X-Entry-Scene":"vue_frontend"}}async function a(e){const t=await e.text().catch((()=>""));if(!t)return`请求失败(${e.status})`;try{const e=JSON.parse(t),n=e.message||e.detail||e.error;if("string"==typeof n&&n.trim())return n}catch{}return t}function r(){const t=e("clinical-thinking-scenario");return t&&"object"==typeof t?t:null}function i(){var e,t;const n=null==(t=null==(e=r())?void 0:e.session)?void 0:t.session_id;if("number"==typeof n&&Number.isInteger(n)&&n>0)return n;throw new Error("未找到当前会话,请先生成模拟场景")}function c(e){const n=r();(null==n?void 0:n.session)&&t("clinical-thinking-scenario",{...n,session:{...n.session,status:e}})}async function f(e){var t;const n=await fetch("/fastapi/api/v1/sessions",{method:"POST",headers:o(),body:JSON.stringify(e)});if(!n.ok)throw new Error(await a(n));const s=await n.json();if("OK"!==s.code||!(null==(t=s.data)?void 0:t.session_id))throw new Error(s.message||"新建会话失败");return s.data}async function d(e){var t;const n=await fetch(`/fastapi/api/v1/sessions/${e}/complete-inquiry`,{method:"POST",headers:o()});if(!n.ok)throw new Error(await a(n));const s=await n.json();if("OK"!==s.code||!(null==(t=s.data)?void 0:t.session_id))throw new Error(s.message||"完成采集失败");return s.data}async function l(e,t,n,s){var r,i,c;const f=await fetch(`/fastapi/api/v1/sessions/${e}/chat/stream`,{method:"POST",headers:o("text/event-stream"),body:JSON.stringify({message:t}),signal:s});if(!f.ok||!f.body)throw new Error(await a(f));const d=f.body.getReader(),l=new TextDecoder;let u="",w=!1;for(;;){const{value:e,done:t}=await d.read();if(t)break;u+=l.decode(e,{stream:!0});const s=u.split("\n\n");u=s.pop()||"";for(const o of s){const e=null==(r=o.match(/^event:\s*(.+)$/m))?void 0:r[1],t=null==(i=o.match(/^data:\s*(.+)$/m))?void 0:i[1];if(!e||!t)continue;const s=JSON.parse(t);if("message_delta"===e){const e=s.delta;"string"==typeof e&&n.onDelta(e)}else if("message_done"===e)w=!0,null==(c=n.onDone)||c.call(n,s);else if("error"===e)throw new Error("string"==typeof s.message?s.message:"AI 流式回复异常")}}if(!w)throw new Error("AI 流式回复未正常结束,请重试")}async function u(e,t,n,s){var r,i,c;const f={last_user_message:t,scope:"current_conversation"},d=await fetch(`/fastapi/api/v1/sessions/${e}/hints/stream`,{method:"POST",headers:o("text/event-stream"),body:JSON.stringify(f),signal:s});if(!d.ok||!d.body)throw new Error(await a(d));const l=d.body.getReader(),u=new TextDecoder;let w="",h=!1;for(;;){const{value:e,done:t}=await l.read();if(t)break;w+=u.decode(e,{stream:!0});const s=w.split("\n\n");w=s.pop()||"";for(const o of s){const e=null==(r=o.match(/^event:\s*(.+)$/m))?void 0:r[1],t=null==(i=o.match(/^data:\s*(.+)$/m))?void 0:i[1];if(!e||!t)continue;const s=JSON.parse(t);if("hint_delta"===e){const e=s.delta;"string"==typeof e&&n.onDelta(e)}else if("hint_done"===e)h=!0,null==(c=n.onDone)||c.call(n,s);else if("error"===e)throw new Error("string"==typeof s.message?s.message:"练习提示生成失败,请稍后重试")}}if(!h)throw new Error("练习提示未正常结束,请重试")}export{n as F,o as a,r as b,f as c,d,u as e,i as f,a as r,l as s,c as u}; diff --git a/dist/assets/uni-app.es.25qqJrzj.js b/dist/assets/uni-app.es.25qqJrzj.js new file mode 100644 index 0000000..50dd6e4 --- /dev/null +++ b/dist/assets/uni-app.es.25qqJrzj.js @@ -0,0 +1 @@ +import{T as s,U as a,Q as o,V as r,W as t}from"./index-8wOL_3gR.js";const e=(r,t=0)=>(t,e=o())=>{!s&&a(r,t,e)},i=e(r,3),m=e(t,2);export{i as a,m as o}; diff --git a/dist/assets/uni-app.es.DDI13Fy0.js b/dist/assets/uni-app.es.DDI13Fy0.js deleted file mode 100644 index 0edfc90..0000000 --- a/dist/assets/uni-app.es.DDI13Fy0.js +++ /dev/null @@ -1 +0,0 @@ -import{T as s,U as a,Q as o,V as r}from"./index-DfCP9RI3.js";const t=((r,t=0)=>(t,e=o())=>{!s&&a(r,t,e)})(r,2);export{t as o}; diff --git a/dist/index.html b/dist/index.html index cbb726f..f2d1096 100644 --- a/dist/index.html +++ b/dist/index.html @@ -14,7 +14,7 @@ AI思维临床训练 - + diff --git a/pages/learning-assistant/learning-assistant.vue b/pages/learning-assistant/learning-assistant.vue index 3098215..fad70df 100644 --- a/pages/learning-assistant/learning-assistant.vue +++ b/pages/learning-assistant/learning-assistant.vue @@ -172,7 +172,8 @@